/* Mobile layout: content-driven hero and compact, readable discovery cards. */
#cinema-skip .icon{display:block;width:18px;height:18px;flex:0 0 18px;stroke-width:1.8}
@media(max-width:760px){
 html{scroll-padding-top:100px}
 .container{width:calc(100% - 36px)}
 .cinema-hero{height:auto;max-height:none;min-height:0}
 .cinema-content{height:auto;min-height:0;padding-top:52px;padding-bottom:25px}
 .cinema-copy{width:100%;min-width:0}
 .cinema-copy h1{font-size:clamp(48px,13vw,76px);line-height:1.05;letter-spacing:-.035em;margin-bottom:22px}
 .cinema-copy>p{font-size:16px;line-height:1.75;margin-bottom:24px;max-width:38em}
 .cinema-copy>p br{display:none}
 .cinema-kicker{font-size:11px;letter-spacing:.12em;margin-bottom:20px}
 .cinema-actions{flex-direction:column;align-items:stretch;gap:10px}
 .cinema-actions .button{justify-content:space-between;width:100%;font-size:15px;min-height:52px;padding:14px 18px}
 .cinema-service-link{align-self:flex-start;min-height:48px;font-size:15px;gap:12px}
 .cinema-bottom{position:relative;inset:auto;padding-bottom:28px;margin-top:0;gap:0}
 .cinema-bottom a{font-size:13px;min-height:44px;gap:12px}
 .cinema-intro-ui{padding: max(20px,env(safe-area-inset-top)) 20px max(28px,env(safe-area-inset-bottom));height:100svh;gap:24px}
 .cinema-intro-top button{min-height:44px;white-space:nowrap}
 .cinema-intro-bottom h2{font-size:clamp(34px,9vw,48px)}
 .cinema-intro-bottom{gap:18px}
 .cinema-progress{width:210px;max-width:100%}
 .service-grid,.blog-page .blog-grid,.article-page .blog-grid,.related-blog .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .service-grid .service-card{min-width:0;min-height:0;padding:18px 14px;display:flex;flex-direction:column;border-radius:9px}
 .service-card .service-top>.icon{width:32px;height:32px}
 .service-card .service-top>span{font-size:11px}
 .service-card .service-content{margin-top:20px;display:flex;flex-direction:column;flex:1;min-width:0}
 .service-card .service-content h3{font-family:var(--sans);font-size:16px;line-height:1.45;font-weight:600;letter-spacing:-.25px;margin-bottom:10px;overflow-wrap:anywhere}
 .service-card .service-content p{font-size:13px;line-height:1.7;margin-bottom:15px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
 .service-card .service-link{font-size:12px;line-height:1.5;min-height:36px;margin-top:auto;gap:8px}
 .service-card .service-link .icon{width:17px;height:17px;flex-shrink:0}
 .blog-grid .blog-card{min-width:0;display:flex;flex-direction:column;border-radius:9px}
 .blog-grid .blog-card-art{height:110px;gap:8px;flex-direction:column}
 .blog-grid .blog-card-art>.icon{width:36px;height:36px}
 .blog-grid .blog-card-art>span{font-size:17px;line-height:1.2;text-align:center}
 .blog-grid .blog-card-copy{padding:15px 13px;display:flex;flex-direction:column;flex:1}
 .blog-grid .article-meta{font-size:10px;line-height:1.6;gap:4px 6px;flex-wrap:wrap;margin-bottom:10px}
 .blog-grid .blog-card h3{font-family:var(--sans);font-size:15px;font-weight:600;line-height:1.5;letter-spacing:-.2px;margin-bottom:10px;overflow-wrap:anywhere}
 .blog-grid .blog-card p{font-size:13px;line-height:1.7;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .blog-grid .blog-card .text-link{font-size:12px;min-height:40px;gap:7px;margin-top:auto}
 .blog-grid .blog-card .text-link .icon{width:16px;height:16px;flex-shrink:0}
 .blog-page .blog-categories{gap:4px}
 .blog-page .blog-categories a{font-size:12px;padding-inline:10px}
 .blog-page .blog-list-heading{flex-wrap:wrap;gap:8px}
 .section-heading{gap:20px}
 .section-heading h2{font-size:clamp(36px,10vw,48px);line-height:1.12}
 .editorial-heading h1{font-size:clamp(34px,9.5vw,48px);line-height:1.14;letter-spacing:-1px}
 .brand-strip .container{height:auto;min-height:90px;padding-block:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
 .brand-strip .icon{display:none}
 .brand-strip span{font-size:12px;line-height:1.6}
 .field input,.field select,.field textarea{font-size:16px}
 .appointment-card{min-width:0;padding:25px 18px}
 .form-row>*{min-width:0}
 .booking-service-title{overflow-wrap:anywhere}
 .consent{font-size:13px;line-height:1.75}
 .form-note summary{flex-wrap:wrap;gap:6px}
 .booking-calendar-close,.booking-calendar-nav>button{min-width:40px;min-height:40px}
 .mobile-booking{padding:10px 18px calc(10px + env(safe-area-inset-bottom));gap:12px}
 .mobile-booking>a{min-height:44px;font-size:13px}
 .site-footer{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
 .footer-signature .copyright,.footer-signature .design-credit{white-space:normal}
 .footer-contact address,.legal-links a{overflow-wrap:anywhere}
 .legal-links a{display:inline-flex;align-items:center;min-height:44px}
 .breadcrumb{flex-wrap:wrap;gap:7px 10px;line-height:1.7}
 .menu-toggle{flex-shrink:0;touch-action:manipulation}
 .main-nav{padding-bottom:calc(25px + env(safe-area-inset-bottom))}
 .main-nav a,.main-nav button{touch-action:manipulation}
 .page-cta .button{max-width:100%;white-space:normal}
 .reveal.ready{transform:translateY(12px)}
}
@media(max-width:360px){
 .service-grid,.blog-page .blog-grid,.article-page .blog-grid,.related-blog .blog-grid{gap:10px}
 .service-grid .service-card{padding:16px 11px}
 .blog-grid .blog-card-copy{padding:13px 10px}
 .service-card .service-content h3,.blog-grid .blog-card h3{font-size:14px}
 .booking-calendar-nav>button{min-width:34px}
}
@media(max-height:500px) and (orientation:landscape){
 .cinema-intro-ui{padding:15px 24px}
 .cinema-intro-bottom{flex-direction:row;align-items:flex-end}
 .cinema-intro-bottom h2{font-size:30px}
 .cinema-intro-bottom .cinema-kicker{margin-bottom:8px}
}
@media(prefers-reduced-motion:reduce){.reveal.ready{transform:none}}
@media(max-width:760px){
 .service-filters{margin-inline:0;padding-inline:0;display:flex;flex-wrap:wrap;overflow:visible;gap:6px;padding-bottom:18px}
 .service-filters button{font-size:12px;min-height:44px;padding:9px 11px}
}
/* Keep mobile content immediately visible during fast scrolling and anchor jumps. */
@media(max-width:760px){.reveal.ready{opacity:1;transform:none;transition:none}}
@media(max-width:760px){
 .footer-main.expanded-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}
 .expanded-footer>.footer-brand,.expanded-footer>.footer-contact{grid-column:1/-1}
 .footer-main>div:not(.footer-brand)>a{font-size:13px;line-height:1.7;min-height:38px;display:flex;align-items:center}
 .footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}
 .legal-links{justify-content:flex-start;gap:4px 16px}
}
@media(max-width:760px){.error-page{padding-block:65px}.error-page h1{font-size:clamp(38px,10vw,56px);line-height:1.15;letter-spacing:-1px;overflow-wrap:anywhere}}

/* Direct WhatsApp link; no third-party widget or tracking script. */
.whatsapp-float{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:28px;z-index:44;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#128c4a;color:#fff;border:2px solid #fff;box-shadow:0 5px 20px #143c2433;transition:transform .18s,background .18s;touch-action:manipulation}
.whatsapp-float svg{display:block;flex-shrink:0}
.whatsapp-float:focus-visible{outline:3px solid var(--purple);outline-offset:4px}
body.menu-open .whatsapp-float,body.cinema-intro-active .whatsapp-float,body.cinema-revealing .whatsapp-float{visibility:hidden;pointer-events:none}
@media(hover:hover){.whatsapp-float:hover{background:#0b733c;transform:translateY(-3px)}}
@media(max-width:760px){.whatsapp-float{width:52px;height:52px;right:max(16px,env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}
