
/* Responsive containment: content stays in flow; do not hide horizontal overflow. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-width:0}
header.wrap,main,.wrap,.cinema-content,.product,.product-copy,.package,.studio-grid,.studio-card,.footer-links{min-width:0}
.wrap{width:100%}
header.wrap{gap:20px}
header.wrap>a{min-width:0;flex-shrink:1}
header .logo{max-width:100%;height:auto}
header nav{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.cinema-hero{height:auto;min-height:100svh;max-height:none;display:flex;flex-direction:column;overflow:visible}
.hero-media{overflow:hidden}
.cinema-content{width:100%;padding:clamp(150px,19vh,210px) 8vw 54px;flex:1}
.cinema-content #hero-title{font-size:clamp(72px,8.4vw,120px);overflow-wrap:break-word}
.cinema-content>p:not(.eyebrow){max-width:600px}
.cinema-content .actions{min-width:0;flex-wrap:wrap;gap:20px 32px}
.cinema-bottom{position:relative;inset:auto;width:100%;padding:0 8vw max(28px,env(safe-area-inset-bottom));justify-content:flex-start;flex-wrap:wrap;gap:12px}
.motion-controls{min-width:0;flex-wrap:wrap;gap:10px}
#motion-toggle{min-height:44px;white-space:normal}
#video-status{letter-spacing:0;font-size:12px;max-width:32ch}
.nic-hero-launch{max-width:100%}
.nic-hero-launch>span{white-space:normal;min-width:0}
.package-row>div{min-width:0}
.package-row b{flex-shrink:0}
.legal-footer{flex-wrap:wrap}
.legal-footer .footer-links{flex-wrap:wrap;overflow-wrap:anywhere}
.footer-motion{position:static;min-height:44px;font-size:12px;padding:9px 16px;color:#dce9f7;background:transparent;border:1px solid #52677f;border-radius:22px}
@media(max-width:760px){
 header.wrap{height:auto;min-height:88px;padding:18px 22px;gap:12px;align-items:center}
 header.wrap>a{flex:0 1 170px}
 header .logo{width:170px}
 header nav{gap:8px;flex:0 1 auto}
 header nav>a:not(.nav-contact){display:none}
 header .nav-contact{font-size:11px;padding:8px 10px;min-height:44px}
 .wrap{padding-left:22px;padding-right:22px}
 .cinema-hero{min-height:100svh}
 .cinema-content{padding:145px 22px 36px}
 .cinema-content #hero-title{font-size:clamp(48px,13vw,76px);line-height:1.04;letter-spacing:-2.5px;margin-bottom:24px}
 .cinema-content .eyebrow{margin-bottom:24px}
 .cinema-content>p:not(.eyebrow){font-size:16px;line-height:1.55;max-width:32ch;margin-bottom:20px}
 .cinema-content p.hero-tagline{font-size:20px}
 .cinema-content .actions{gap:18px;align-items:flex-start}
 .cinema-content .text-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
 .cinema-bottom{padding:0 22px max(26px,env(safe-area-inset-bottom))}
 .vision-section h2,.product-copy h2,.studio-heading h2,.faq h2{font-size:clamp(34px,9vw,48px);letter-spacing:-1.5px;overflow-wrap:break-word}
 .contact h2{font-size:clamp(40px,11vw,64px);letter-spacing:-2px}
 .product{gap:32px}
 .package-title{flex-wrap:wrap}
 .studio-card{min-width:0}
 .studio-card-copy h3{font-size:28px;overflow-wrap:break-word}
 .contact{width:auto;margin:0 12px}
 footer .logo{max-width:190px}
}
@media(max-width:400px){
 header.wrap>a{flex-basis:145px}header .logo{width:145px}
 header .nav-contact{font-size:10px;padding:8px}
 .cinema-content .actions{flex-direction:column;align-items:flex-start;gap:12px}
 .cinema-content .nic-hero-launch{min-height:56px}
 .nic-hero-launch>img{width:56px;height:56px;flex-basis:56px}
}

/* Company overview: distinct purpose for each section. */
.company-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;text-align:left;margin:44px 0 0}
.company-principles article{min-width:0;padding:26px;border:1px solid #7da8be40;border-radius:16px;background:#091a2a8c}
.company-principles .principle-number{font-size:11px;letter-spacing:1px;color:#7de4df}
.company-principles h3{font-size:23px;line-height:1.2;margin:22px 0 12px;letter-spacing:-.6px;overflow-wrap:break-word}
.company-principles p{font-size:15px;line-height:1.65;color:#c2cfdd;margin:0}
.vision-copy{margin-left:auto;margin-right:auto;max-width:720px}
.studio-section{padding-bottom:90px}
.product,.studio-grid,.faq{grid-template-columns:repeat(2,minmax(0,1fr))}
.product>* , .studio-grid>* , .faq>*{min-width:0}
@media(max-width:760px){.company-principles{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:30px}.company-principles article{padding:22px}.company-principles h3{font-size:22px;margin-top:14px}.studio-section{padding-bottom:65px}.product,.studio-grid,.faq{grid-template-columns:minmax(0,1fr)}}

/* Mobile uses the same full-hero video model as desktop, with a legible overlay. */
@media(max-width:760px){
 .hero-media{inset:0;width:100%;height:100%;aspect-ratio:auto}
 .hero-media video{width:100%;height:100%;object-fit:cover;object-position:center}
 .cinema-shade{inset:0;width:100%;height:100%;background:linear-gradient(90deg,rgba(5,12,25,.86),rgba(5,12,25,.48)),linear-gradient(0deg,#080f1d,transparent 70%)}
 .cinema-content .hero-brand{font-size:11px;letter-spacing:.18em;margin-bottom:24px}
 .motion-controls{justify-content:flex-start}
}
