/* Every rule is confined to the replacement hero, its dialog, or the new partner. */
.hero.cinema-hero{--cinema-progress:0;--cinema-look-x:0;--cinema-look-y:0;padding-top:18px;isolation:isolate;background:radial-gradient(ellipse at 77% 48%,#d8f3f14d,transparent 53%);overflow:hidden}
.cinema-hero .hero-eyebrow{position:relative;z-index:4;padding-top:10px}
.cinema-hero .hero-aside{max-width:245px}
.cinema-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;min-height:650px;position:relative}
.cinema-story{position:relative;z-index:3;padding:42px 0 40px;pointer-events:none}
.cinema-story a,.cinema-story button{pointer-events:auto}
.cinema-hero h1{width:auto;font-size:clamp(72px,6.8vw,104px);line-height:1.04;letter-spacing:-.07em;padding:0;margin:0 0 27px;transform:none!important;opacity:1!important}
.cinema-line{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .08em .2em 0;margin-right:-.08em;margin-bottom:-.2em}
.cinema-line>span{display:block;animation:cinema-type-in 1.15s cubic-bezier(.16,1,.3,1) 2.62s both}
.cinema-line:nth-of-type(2)>span{animation-delay:2.78s}
.cinema-hero h1 em{white-space:nowrap}
.cinema-hero .hero-question{max-width:500px;margin:0 0 24px}
.cinema-hero .hero-question .eyebrow{font-size:9px;letter-spacing:.1em}
.cinema-hero .hero-question p{font-size:13px;line-height:1.75;margin-top:12px}
.cinema-hero .hero-question strong{font-weight:500}
.cinema-hero .hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:0;max-width:400px}
.cinema-hero .hero-actions .button{font-size:12px;min-height:49px;padding:15px 22px;gap:25px}
.cinema-hero .hero-actions .cta-note{font-size:9px;margin-top:9px}
.cinema-hero .hero-actions .underlink{font-size:11px;margin-top:18px}
.cinema-video-trigger{display:flex;gap:12px;align-items:center;font:inherit;font-size:11px;color:var(--ink,#122b36);padding:10px 0;min-height:44px;margin-top:5px;text-align:left}
.cinema-video-trigger>span:last-child{margin-left:10px;color:var(--blue)}
.cinema-play-icon{width:30px;height:30px;border:1px solid #70a7b6;border-radius:50%;display:grid;place-items:center;font-size:16px;color:var(--blue);transition:background .25s,transform .3s}
.cinema-video-trigger:hover .cinema-play-icon{background:#d8f3f4;transform:scale(1.1)}
.hero-network{position:relative;z-index:1;width:128%;margin-left:-14%;aspect-ratio:1000/860;perspective:1000px;touch-action:pan-y;transform:translate3d(0,calc(var(--cinema-progress)*70px),0) scale(calc(1 - var(--cinema-progress)*.08));opacity:calc(1 - var(--cinema-progress)*.58);transform-origin:50% 75%}
#cinema-network-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.cinema-floor{position:absolute;left:11%;right:11%;bottom:10%;height:45%;border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0 43px,#7bb9c324 44px 45px),repeating-linear-gradient(90deg,transparent 0 43px,#7bb9c324 44px 45px);mask-image:radial-gradient(ellipse,black,transparent 67%);transform:rotateX(68deg) rotateZ(-12deg);transform-origin:50% 100%;pointer-events:none}
.cinema-orbit{stroke:#589fb3;stroke-width:.8;fill:none;opacity:.32}
.cinema-mesh{stroke:#247ca4;fill:none;stroke-width:1}
.cinema-route-base{stroke:#75c7d7;stroke-width:4;opacity:.12;fill:none}
.cinema-route{stroke:url(#cinema-wire);stroke-width:2.5;fill:none;stroke-linecap:round;transition:stroke-dashoffset .08s linear,opacity .2s ease}
.cinema-route.is-active{stroke:#0d60a9;stroke-width:3}
.cinema-packet{fill:#2abbd7;stroke:white;stroke-width:1.2}
.cinema-dot{fill:#f5fbfb;stroke:#4f9dbb;stroke-width:1}
.cinema-dot.near{fill:#4cbdd8;stroke:white;stroke-width:1.5}
.cinema-core{transform-origin:500px 430px;transform:translateY(calc(var(--cinema-progress)*12px));filter:drop-shadow(0 10px 20px #18597a1a);transition:opacity .55s cubic-bezier(.16,1,.3,1),filter .55s ease}
.cinema-labels{position:absolute;inset:0;pointer-events:none}
.cinema-area{position:absolute;display:flex;flex-direction:column;align-items:center;gap:6px;max-width:166px;width:24%;padding:8px 10px;text-align:center;transform:translate(-50%,-50%);color:#16415c;font-size:11px;line-height:1.35;pointer-events:auto;transition:background .25s,color .25s;border-radius:12px;background:linear-gradient(#f3f3edcf,#f3f3ed80);backdrop-filter:blur(4px)}
.cinema-area-index{display:grid;place-items:center;width:25px;height:25px;font-size:10px;border:1px solid #75b2c5;border-radius:50%;background:#f8ffffeb;color:#1766a5;box-shadow:0 0 0 6px #6ecad10c}
.cinema-area:is(:hover,:focus-visible),.cinema-area.is-active{background:#faffffe8;color:#005da4;outline-offset:5px}
.cinema-area:is(:hover,:focus-visible) .cinema-area-index{background:#1261a4;color:white}
.cinema-prompts{pointer-events:none;position:absolute;inset:0}
.cinema-hero .question-tag{position:absolute;font-size:9px;padding:9px 12px;gap:8px;z-index:0;opacity:.66;box-shadow:0 8px 20px #2e68850a;background:#f4f8f0c4;border-color:#a2c5ce80;animation:none}
.cinema-hero .tag-one{top:5%;right:15%;transform:rotate(7deg)}
.cinema-hero .tag-two{top:auto;bottom:2%;right:8%;transform:rotate(-6deg)}
.cinema-hero .question-tag span{font-size:15px}
.cinema-motion-toggle{position:absolute;top:0;left:44%;display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;font-size:10px;color:#295b6c;border-radius:24px;z-index:5;pointer-events:auto}
.cinema-motion-toggle:hover{background:#e2f3f3}
.cinema-hero .hero-base{position:relative;z-index:4;margin-top:0;padding-top:18px;padding-bottom:22px;border-top:1px solid #abcbd14a;font-size:8px}
.cinema-handoff{height:140px;position:absolute;bottom:-30px;left:45%;width:45%;pointer-events:none;opacity:calc(.15 + var(--cinema-progress)*.85);transform:translateY(calc((1 - var(--cinema-progress))*36px))}
.cinema-handoff i{position:absolute;width:55%;height:160px;border:1px solid #53bdd194;border-bottom:0;border-radius:60% 70% 0 0;left:0;top:0;transform:rotate(15deg)}
.cinema-handoff i:nth-child(2){left:12%;top:12px;opacity:.5}.cinema-handoff i:nth-child(3){left:25%;top:22px;opacity:.25}
#chp-film-modal{padding:24px;width:min(900px,calc(100% - 32px));max-height:92dvh;border:1px solid #d6e8eb;border-radius:20px;background:#f4f6f0;color:#102e3b;box-shadow:0 40px 140px #0b2e4059}
#chp-film-modal::backdrop{background:#092431bb;backdrop-filter:blur(10px)}
.cinema-modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:15px;border-bottom:1px solid #bdd4da}
.cinema-modal-head h2{font-size:25px;letter-spacing:-.04em;line-height:1.2;margin:0}
#close-chp-film{display:flex;align-items:center;gap:15px;font-size:12px;min-width:90px;min-height:44px;justify-content:center;border:1px solid #9cbbc5;border-radius:30px}
#close-chp-film span{font-size:24px}
.cinema-modal-content{display:flex;align-items:center;justify-content:center;gap:35px;padding-top:20px}
#chp-original-film{height:min(68dvh,680px);max-width:100%;width:auto;aspect-ratio:9/16;object-fit:contain;background:#062b42;border-radius:8px}
.cinema-modal-content>p{max-width:230px;font-size:12px;line-height:1.8;color:#205776}
#cinema-film-status{font-size:12px;margin-top:10px}
#partner-grid .partner-card[data-partner="9"] img{object-fit:contain;width:200px;height:120px;max-width:100%}
@media(min-width:801px){#partner-grid .partner-card[data-partner="9"]{grid-column:2}}
@media(max-width:1000px) and (min-width:801px){.cinema-hero h1{font-size:77px}.cinema-layout{min-height:640px}.cinema-area{font-size:10px}.hero-network{width:140%;margin-left:-23%}}
@media(max-width:800px){.hero.cinema-hero{padding-top:16px}.cinema-layout{display:flex;flex-direction:column;min-height:0}.cinema-story{display:contents}.cinema-hero h1{order:1;width:100%;font-size:clamp(54px,12vw,88px);padding-top:28px;margin-bottom:0}.hero-network{order:2;width:min(114%,650px);margin:-5px -7% 15px;flex-shrink:0}.cinema-area{font-size:10px;line-height:1.3;padding:5px;width:26%;gap:3px;max-width:135px}.cinema-area-index{width:22px;height:22px;font-size:9px}.cinema-hero .hero-question{order:3;width:100%;max-width:none;margin:10px 0 18px}.cinema-hero .hero-question p{font-size:12px}.cinema-hero .hero-actions{order:4;width:100%;max-width:none;align-items:flex-start}.cinema-video-trigger{order:5;align-self:flex-start;margin-bottom:22px;font-size:12px}.cinema-hero .hero-actions .button{min-height:50px;font-size:12px}.cinema-motion-toggle{left:42%;top:auto;bottom:-4px;font-size:9px}.cinema-hero .hero-base{font-size:7px;gap:20px}.cinema-hero .tag-one{font-size:8px;right:9%;top:4%;padding:6px}.cinema-hero .tag-two{font-size:8px;right:3%;bottom:0;padding:6px}.cinema-handoff{left:35%;width:65%}#partner-grid .partner-card[data-partner="9"]{grid-column:1/-1}.cinema-modal-head h2{font-size:20px}.cinema-modal-content{display:block;text-align:center;padding-top:15px}.cinema-modal-content>p{margin:15px auto 0;font-size:10px}#chp-original-film{height:min(61dvh,620px)}#chp-film-modal{padding:18px}}
@media(max-width:400px){.cinema-hero h1{font-size:51px}.cinema-area{font-size:9px}.cinema-hero .question-tag{display:none}}
@keyframes cinema-type-in{from{opacity:0;transform:translate3d(0,110%,0) rotate(3deg);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.cinema-line>span{animation:none}.hero-network,.cinema-core,.cinema-handoff{transform:none;opacity:1}.cinema-area,.cinema-play-icon{transition:none}.cinema-motion-toggle{display:none}}
