/* Homepage film composition. Scoped to keep other pages on the shared identity. */
.studio-hero--film{width:min(1536px,calc(100% - 48px));margin:22px auto 0;padding:0;border:1px solid #143b43;border-radius:28px;background:radial-gradient(ellipse at 87% 24%,#16494b 0,transparent 50%),#091d25;color:#f4faf9;overflow:hidden}
.studio-hero--film>.container{width:calc(100% - 88px)}
.studio-hero--film .hero-layout{grid-template-columns:1.22fr .78fr;gap:0;min-height:520px}
.studio-hero--film .hero-statement{padding:48px 0 38px}
.studio-hero--film .studio-kicker{color:#a8c5c6;font-size:11px;letter-spacing:.14em;margin-bottom:34px}
.studio-hero--film .hero-statement h1{font-size:clamp(52px,6.3vw,94px);line-height:1.06;letter-spacing:-.065em;margin-bottom:28px}
.studio-hero--film .hero-line--second{color:#87e4ce}
.studio-hero--film .hero-dot{color:#27d2b0}
.studio-hero--film .hero-summary{font-size:16px;line-height:1.8;color:#aac1c7;max-width:460px}
.studio-hero--film .studio-actions{flex-direction:row;align-items:center;gap:26px;margin-top:34px}
.studio-hero--film .studio-actions .btn{background:#98efda;border-color:#98efda;color:#082b2b;border-radius:8px;box-shadow:none}
.studio-hero--film .studio-actions .btn:hover{background:#c0f9e9;border-color:#c0f9e9}
.studio-hero--film .studio-actions .text-link{color:#e0eeef}
.studio-hero--film .hero-scene{height:470px;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none;margin:0;align-self:center}
.studio-hero--film .model-stage{width:130%;margin-left:-15%}
.studio-hero--film .hero-atmosphere{inset:-7% -10%;opacity:.8}
.studio-hero--film .hero-halo{background:radial-gradient(ellipse,#45e2be17,transparent 65%)}
.studio-hero--film .hero-orbit{inset:15% -12%;border-color:#7bd8ce24;transform:rotate(-35deg) scaleY(.8)}

.hero-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff20;padding:22px 0}
.hero-footer>p{font-size:12px;color:#90afb6;line-height:1.7;letter-spacing:.02em}
.hero-footer>p span{padding:0 12px;color:#45656e}
.hero-film-button{display:flex;gap:15px;align-items:center;padding:7px 0 7px 8px;border:0;background:none;color:#f4faf9;text-align:left;cursor:pointer}
.film-play{display:grid;place-items:center;width:46px;height:46px;flex-shrink:0;border:1px solid #76999e;border-radius:50%;transition:background .2s,border-color .2s}
.film-play svg{width:17px;height:17px;fill:currentColor;transform:translateX(-1px)}
.hero-film-button:hover .film-play{background:#87e4ce;color:#092c30;border-color:#87e4ce}
.hero-film-button strong{display:block;font-size:14px;font-weight:500;line-height:1.5}
.hero-film-button small{display:block;font-size:11px;color:#90afb6;line-height:1.7}
.film-button-arrow{font-size:23px;color:#91b7bc;margin-left:26px}
.studio-hero--film :focus-visible{outline:2px solid #98efda;outline-offset:6px}
.company-film-dialog{width:min(1040px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:0;background:#0b2028;border:1px solid #36585e;border-radius:18px;color:#eff9f6;overflow:auto;overscroll-behavior:contain}
.company-film-dialog::backdrop{background:#041116db;backdrop-filter:blur(12px)}
.company-film-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px}
.film-eyebrow{color:#8ab8bb;font-size:10px;letter-spacing:.13em;margin:0 0 8px}
.company-film-header h2{font-size:27px;line-height:1.2;margin:0}
.company-film-header .dialog-close{position:static;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;background:#ffffff0a;color:#d9eeea;border:1px solid #416069;border-radius:50%}
.company-film-dialog video{display:block;width:100%;aspect-ratio:16/9;max-height:65dvh;background:#091d25;object-fit:contain}
.company-film-footer{padding:20px 28px 24px}
.company-film-footer p{font-size:13px;line-height:1.7;color:#a9c3c7;margin:0}
.company-film-footer details{margin-top:12px;color:#d7ecea;font-size:13px}
.company-film-footer summary{cursor:pointer;width:fit-content;padding:4px 0;min-height:28px}
.company-film-footer details p{margin-top:12px;max-width:820px}
.company-film-footer a{color:#98efda;text-decoration:underline}
.company-film-footer #company-film-error{margin-top:12px;color:#f0c8a5}
@media(min-width:1650px){.studio-hero--film .hero-layout{min-height:590px}.studio-hero--film .hero-scene{height:520px}}
@media(max-width:1100px){.studio-hero--film>.container{width:calc(100% - 64px)}.studio-hero--film .hero-layout{min-height:490px}.studio-hero--film .hero-scene{height:410px}.studio-hero--film .hero-summary{font-size:15px}.studio-hero--film .studio-actions{gap:22px}.studio-hero--film .studio-actions .text-link{font-size:13px}}
@media(max-width:900px) and (min-width:721px){.studio-hero--film .hero-layout{grid-template-columns:1.4fr .6fr}.studio-hero--film .hero-statement h1{font-size:6.6vw}.studio-hero--film .hero-scene{height:340px}.studio-hero--film .model-stage{width:160%;margin-left:-28%}.hero-footer>p{max-width:250px}.hero-footer>p span{padding-inline:6px}.film-button-arrow{margin-left:10px}}
@media(max-width:720px){.studio-hero--film{width:calc(100% - 24px);margin-top:8px;border-radius:20px}.studio-hero--film>.container{width:calc(100% - 40px)}.studio-hero--film .hero-layout{display:flex;gap:0;min-height:0}.studio-hero--film .hero-statement{padding:38px 0 12px}.studio-hero--film .studio-kicker{font-size:9px;letter-spacing:.1em;margin-bottom:25px;gap:10px}.studio-hero--film .studio-kicker:before{width:18px}.studio-hero--film .hero-statement h1{font-size:clamp(33px,8.7vw,61px);line-height:1.09;margin-bottom:23px;letter-spacing:-.06em}.studio-hero--film .hero-summary{font-size:14px;line-height:1.8;max-width:420px}.studio-hero--film .studio-actions{margin-top:25px;flex-wrap:wrap;gap:18px}.studio-hero--film .studio-actions .btn{font-size:12px;padding:14px 15px;min-height:46px;gap:10px}.studio-hero--film .studio-actions .text-link{font-size:12px;gap:8px}.studio-hero--film .hero-scene{height:275px;max-width:400px;align-self:center;width:100%;margin:0}.studio-hero--film .model-stage{width:100%;margin-left:0}.hero-footer{padding:15px 0 20px;flex-direction:column-reverse;align-items:stretch;gap:18px}.hero-film-button{padding:0;gap:13px}.film-button-arrow{margin-left:auto}.hero-footer>p{font-size:10px;text-align:center}.hero-footer>p span{padding-inline:7px}.company-film-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:13px}.company-film-header{padding:19px 17px;gap:10px}.company-film-header h2{font-size:21px}.film-eyebrow{font-size:8px}.company-film-footer{padding:18px}.company-film-header .dialog-close{width:40px;height:40px}.company-film-dialog video{max-height:none}}
@media(max-width:360px){.studio-hero--film>.container{width:calc(100% - 32px)}.studio-hero--film .studio-actions{gap:15px}.studio-hero--film .studio-actions .btn{font-size:11px;padding-inline:12px}.studio-hero--film .studio-actions .text-link{font-size:11px}.studio-hero--film .hero-scene{height:240px}}
@media(min-width:361px) and (max-width:420px){.studio-hero--film .studio-actions{gap:14px}.studio-hero--film .studio-actions .btn{font-size:11px;padding-inline:13px}.studio-hero--film .studio-actions .text-link{font-size:11px;gap:6px}.studio-hero--film .studio-actions .icon{width:17px;height:17px}}
@media(prefers-reduced-motion:reduce){.film-play{transition:none}}
