/* Video first: original framing, quiet typography and one primary action. */
.hero.hero-cinema{width:100%;max-width:none;padding:16px 0 0;margin:0;background:none}
.hero-cinema .hero-film{width:calc(100% - 32px);max-width:1920px;margin:0 auto;position:relative;left:auto;transform:none;border:0;isolation:isolate}
.hero-cinema .hero-film::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78));pointer-events:none;z-index:1}
.hero-cinema .hero-frame{border-radius:0}
.hero-cinema .hero-intro{position:absolute;bottom:clamp(28px,4vw,64px);left:clamp(28px,4vw,72px);right:clamp(28px,4vw,72px);z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:0}
.hero-cinema h1{font-size:clamp(30px,3.2vw,52px);line-height:1.25;letter-spacing:-.035em;font-weight:550;color:#fff;margin:0;text-wrap:balance}
.hero-cinema h1 em{color:#fff;font-style:normal}
.hero-cinema .hero-ctas{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0;flex-shrink:0}
.hero-cinema .hero-contact{min-height:52px;padding:15px 23px;font-size:14px;gap:36px}
.hero-cinema .deck-hero-link{background:transparent;border:0;padding:10px 3px;min-height:44px;color:#eee;font-size:12px;justify-content:space-between}
.hero-cinema .deck-hero-link:hover{background:transparent;color:#fff;text-decoration:underline}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid #ffffff15}
.hero-bottom .onset-caption{padding:0;gap:20px}
.hero-bottom .onset-caption p>span{display:none}
.hero-bottom .hero-work-link{margin:0}
.hero-bottom .hero-work-link a{font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:20px}
#ai>.wrap{width:calc(100% - 96px);max-width:1600px}
#ai .ai-video-stage{max-width:1600px;margin-inline:auto;border-radius:2px}
@media(max-width:950px){
.hero.hero-cinema{padding-top:0}
.hero-cinema .hero-film{width:100%;max-width:none}
.hero-cinema .hero-film::after{display:none}
.hero-cinema .hero-intro{position:static;display:flex;align-items:center;gap:24px;padding:26px 20px 18px;margin:0}
.hero-cinema h1{font-size:clamp(26px,4vw,38px);text-wrap:initial}
.hero-cinema .hero-ctas{min-width:180px}
.hero-bottom{width:calc(100% - 40px)}
.hero-bottom .onset-caption p{display:none}
#ai>.wrap{width:calc(100% - 40px)}
}
@media(max-width:600px){
.hero-cinema .hero-intro{display:block;padding-top:24px;padding-bottom:8px}
.hero-cinema h1{font-size:clamp(25px,6.8vw,36px);line-height:1.3}
.hero-cinema .hero-ctas{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:22px}
.hero-cinema .hero-contact{font-size:13px;min-height:48px;padding:13px 18px;gap:24px}
.hero-cinema .deck-hero-link{font-size:11px;gap:10px;padding:10px 0}
.hero-bottom{gap:8px;padding:4px 0}
.hero-bottom .onset-caption button{font-size:10px;padding-inline:0;gap:6px}
.hero-bottom .hero-work-link a{font-size:11px;gap:8px}
#ai .section-head{margin-bottom:24px}
}

/* Optical logo sizing: preserve native marks and compensate for source padding. */
.brand-strip.wrap{width:100%;max-width:none;padding-top:20px;padding-bottom:16px}
.brand-strip-heading{width:calc(100% - 80px);max-width:1600px;margin-inline:auto}
.brand-group{gap:48px;padding-inline:24px}
.brand-item{position:relative;width:144px;height:82px}
.brand-item img{max-width:none;opacity:.88}
.brand-logo-2 img{width:125px;height:68px}
.brand-logo-4 img{width:115px;height:48px}
.brand-logo-7 img{width:118px;height:78px}
.brand-logo-10 img{width:115px;height:113px}
.brand-logo-8 img{width:118px;height:25px;filter:none;opacity:1}
.brand-logo-9 img{width:140px;height:78px;filter:none;opacity:1}
.brand-item .brand-wordmark-layer{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);filter:brightness(0) invert(1);clip-path:inset(0 0 0 35%)}
.brand-logo-9 .brand-wordmark-layer{clip-path:inset(0 0 0 28%)}
@media(max-width:700px){.brand-strip-heading{width:calc(100% - 40px)}.brand-group{gap:28px;padding-inline:14px}.brand-item{width:140px;height:78px}}

.brand-logo-4{width:160px}.brand-logo-4 img{width:148px;height:62px}
@media(max-width:390px){.deck-language-link{font-size:11px;gap:4px;padding-inline:6px}.deck-language-link>span:first-child{white-space:nowrap}}

@media(min-width:801px){#ai #open-reel{top:20px;right:24px;bottom:auto;left:auto;transform:none}}

/* Consistent monochrome while retaining icon interior contrast. */
.brand-logo-8 img,.brand-logo-9 img{filter:grayscale(1);opacity:.88}
.brand-logo-8 .brand-wordmark-layer,.brand-logo-9 .brand-wordmark-layer{filter:brightness(0) invert(1)}

/* User-selected restrained purple. */
:root{--accent:#44245e;--cloud-action:#44245e;--accent-hover:#583374;--accent-line:#614375;--accent-surface:#251c2c}
.header-contact,.hero-contact,.floating-contact,.contact-section .solid-button,.full-reel-button{background:#44245e;border-color:#715486}
.header-contact:hover,.hero-contact:hover,.floating-contact:hover,.contact-section .solid-button:hover,.full-reel-button:hover{background:#583374;border-color:#9576aa}
