/* Homepage-only enhancement: static first, bounded desktop reveal. */
.cinematic-hero{background:#030708;min-height:640px;position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #1ed3c621}
.cinematic-hero>.wrap{min-height:640px;display:flex;align-items:center;position:relative;z-index:2}
.cinematic-visual{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#030708}
.cinematic-visual picture,.cinematic-poster{display:block;position:absolute;inset:0;width:100%;height:100%}
.cinematic-poster{object-fit:cover;object-position:center 53%}
.cinematic-shade{position:absolute;inset:0;background:linear-gradient(90deg,#030708fa 0%,#030708dc 28%,#03070866 46%,transparent 69%),linear-gradient(0deg,#030708e0 0%,transparent 27%,#0307080c 80%)}
.cinematic-veil{position:absolute;inset:0;background:#020506;opacity:0;pointer-events:none}
.contour-sweep{position:absolute;inset:0;background:linear-gradient(112deg,transparent 30%,#1ed3c605 41%,#aefff025 49%,#1ed3c612 53%,transparent 62%);opacity:0;mix-blend-mode:screen;transform:translateX(-85%);pointer-events:none}
.cinematic-hero .hero-copy{max-width:620px;width:100%;padding:70px 0 85px}
.cinematic-hero .eyebrow{display:flex;align-items:center;gap:11px;font-size:9px;font-weight:500;letter-spacing:2.25px;color:#8bcec9;margin-bottom:27px}
.hero-dot{width:4px;height:4px;flex-shrink:0;background:var(--teal);box-shadow:0 0 10px #1ed3c640;border-radius:50%}
.cinematic-hero h1{font-weight:500;font-size:clamp(52px,5.1vw,74px);line-height:1.04;letter-spacing:-2.6px;white-space:normal}
.cinematic-hero h1>span{background:linear-gradient(180deg,#f2f7fa,#c6ced4 65%,#98aeb9);background-clip:text;-webkit-background-clip:text;color:transparent}
.cinematic-hero .hero-sub{font-size:19px;letter-spacing:-.3px;margin:26px 0 14px;color:#e4edef;line-height:1.5}
.cinematic-hero .hero-description{font-size:13px;line-height:1.85;color:#a3b8c1;max-width:390px;margin:0}
.cinematic-hero .actions{margin-top:32px;gap:29px}
.cinematic-hero .btn{padding:16px 22px;gap:32px;font-size:12px;border-radius:3px;min-height:52px}
.cinematic-secondary{font-size:12px;color:#d4e0e5;display:inline-flex;gap:20px;align-items:center;padding:13px 0}
.cinematic-secondary>span{color:var(--teal)}
.cinematic-secondary:hover{color:var(--teal)}
.hero-scroll{position:absolute;left:6%;bottom:26px;display:flex;align-items:center;gap:13px;color:#76969e;font-size:8px;letter-spacing:1.8px;z-index:3}
.hero-scroll>span{height:1px;width:31px;background:#1ed3c677}
@media(min-width:961px) and (prefers-reduced-motion:no-preference){
.hero-intro-ready .cinematic-hero .cinematic-veil{opacity:.985}
.hero-intro-playing .cinematic-hero .cinematic-veil{animation:j2-unveil 2.25s cubic-bezier(.2,.5,.3,1) both}
.hero-intro-playing .cinematic-hero .contour-sweep{animation:j2-contour 2.25s ease-in-out both}
.hero-intro-playing .cinematic-hero .hero-copy{animation:j2-copy-resolve .75s ease-out both}
}
@keyframes j2-unveil{0%{opacity:.985}20%{opacity:.85}58%{opacity:.27}100%{opacity:0}}
@keyframes j2-contour{0%,10%{opacity:0;transform:translateX(-55%)}35%{opacity:.5}74%{opacity:.36}100%{opacity:0;transform:translateX(75%)}}
@keyframes j2-copy-resolve{0%{opacity:.84;transform:translateY(5px)}100%{opacity:1;transform:none}}
@media(min-width:1600px){.cinematic-hero,.cinematic-hero>.wrap{min-height:710px}.cinematic-poster{object-position:center 55%}}
@media(max-width:1150px) and (min-width:651px){.cinematic-hero .hero-copy{max-width:525px}.cinematic-hero h1{font-size:61px}.cinematic-shade{background:linear-gradient(90deg,#030708fa,#030708d5 30%,#03070855 65%,transparent),linear-gradient(0deg,#030708c0,transparent 35%)}}
@media(max-width:960px) and (min-width:651px){.cinematic-hero,.cinematic-hero>.wrap{min-height:580px}.cinematic-hero .hero-copy{padding:60px 0 75px}.cinematic-poster{object-position:65% center}}
@media(max-width:650px){
.cinematic-hero{display:flex;flex-direction:column;min-height:0;background:#030708;border-bottom-color:#1ed3c630}
.cinematic-hero>.wrap{order:0;min-height:0;display:block}
.cinematic-hero .hero-copy{padding:38px 0 10px;max-width:none;width:100%}
.cinematic-hero .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:22px;gap:8px}
.cinematic-hero h1{font-size:44px;line-height:1.05;letter-spacing:-1.5px;font-weight:500}
.cinematic-hero .hero-sub{font-size:16px;line-height:1.5;margin:20px 0 13px;max-width:none;letter-spacing:-.2px}
.cinematic-hero .hero-description{font-size:12px;line-height:1.85}
.cinematic-hero .actions{margin-top:24px;gap:22px;flex-wrap:wrap}
.cinematic-hero .btn{font-size:11px;padding:14px 18px;min-height:48px;gap:20px}
.cinematic-secondary{font-size:11px;gap:11px}
.cinematic-visual{position:relative;inset:auto;height:290px;width:100%;order:1;z-index:0;margin-top:8px;flex-shrink:0}
.cinematic-poster{width:100%;height:100%;object-fit:cover;object-position:82% 56%}
.cinematic-shade{background:linear-gradient(180deg,#030708 0%,#03070850 13%,transparent 28%,transparent 72%,#030708d0 100%)}
.cinematic-hero .cinematic-veil,.cinematic-hero .contour-sweep{display:none!important;animation:none!important}
.hero-scroll{display:none}
}
@media(max-width:360px){.cinematic-hero h1{font-size:39px}.cinematic-hero .eyebrow{font-size:7px;letter-spacing:1.2px}.cinematic-hero .actions{gap:17px}.cinematic-visual{height:265px}.cinematic-hero .hero-sub{font-size:14px}}
@media(prefers-reduced-motion:reduce){.cinematic-hero *{animation:none!important;transition:none!important}.cinematic-hero .cinematic-veil,.cinematic-hero .contour-sweep{opacity:0!important}}
@media(max-width:650px){.cinematic-poster{transform:scale(1.22);transform-origin:85% 58%}}
