/* Phase 1: final responsive artwork, real HTML copy and CTAs. Hero only. */
.hero-static{position:relative;isolation:isolate;overflow:hidden;padding:0!important;min-height:max(720px,100svh)!important;height:auto;background:#03101d;border:0}.hero-static:before{display:none}.hero-background{position:absolute;inset:0;display:block;z-index:-3;overflow:hidden;animation:hero-background-in 1s ease-out both}.hero-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:100% 50%;filter:none;transform:none}.hero-readability{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#02091640,transparent 47%);pointer-events:none}.hero-static:after{content:'';position:absolute;inset:auto 0 0;height:90px;background:linear-gradient(transparent,#06121e);z-index:1;pointer-events:none}.hero-static-content{position:relative;z-index:3;padding-top:126px;padding-bottom:100px}.hero-static .hero-copy{width:44%;max-width:610px;padding:0;transform:none;opacity:1}.hero-static .hero-copy .eyebrow{margin-bottom:22px;font-size:9px;letter-spacing:.15em}.hero-static h1{font-size:clamp(52px,4.8vw,76px);font-weight:800;line-height:1.04;letter-spacing:-.055em;color:#fff;transform:none}.hero-static h1 em{background:linear-gradient(95deg,#25dded,#0087ff);background-clip:text;color:transparent;filter:drop-shadow(0 0 6px #12baff20)}.hero-static .hero-sub{font-size:18px;line-height:1.45;margin:22px 0 16px;color:white}.hero-static .hero-copy>p:not(.eyebrow){max-width:475px;font-size:12px;line-height:1.65;color:#b6c7d9}.hero-static .hero-copy .manifesto{font-size:11px;line-height:1.65;margin-top:14px}.hero-static .manifesto strong{color:#e3edf8}.hero-static .actions{gap:17px;margin-top:26px;flex-wrap:wrap}.hero-static .actions .button{min-height:49px;padding-inline:21px;gap:14px;font-size:8px;box-shadow:inset 0 1px 0 #c4fcff55,0 0 13px #09c6f028,0 0 35px #056fff22}.hero-static .actions .button:hover{box-shadow:inset 0 1px 0 #e4fcff77,0 0 16px #09c6f050,0 0 38px #068aff45;transform:translateY(-2px)}.hero-static .text-link{background:#03142260;border:1px solid #55cef675;padding:10px 19px;border-radius:28px;min-height:49px;font-size:8px;gap:15px}.hero-static .text-link:hover{background:#0734506b;border-color:#67e4ff}.hero-static .hero-arrow{display:block;width:19px;height:19px;flex-shrink:0}.hero-static .hero-bottom{position:absolute;z-index:4;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;margin:0 auto;padding:20px 0 24px;font-size:8px}.hero-static .hero-bottom a{display:flex;align-items:center;gap:15px}.hero-static .hero-bottom .hero-arrow{width:14px;height:14px;transform:rotate(90deg)}
@keyframes hero-background-in{from{opacity:0}to{opacity:1}}
@media(min-width:1600px){.hero-static-content{padding-top:145px}.hero-static .hero-copy .eyebrow{margin-bottom:28px}.hero-static .hero-sub{font-size:22px;margin-top:26px}.hero-static .hero-copy>p:not(.eyebrow){font-size:14px;max-width:540px}.hero-static .hero-copy .manifesto{font-size:12px}.hero-static .actions .button{font-size:9px;min-height:53px}}
@media(min-width:1101px) and (max-height:780px){.hero-static{min-height:max(700px,100svh)!important}.hero-static-content{padding-top:105px;padding-bottom:78px}.hero-static h1{font-size:clamp(50px,4.6vw,65px)}.hero-static .hero-sub{font-size:17px;margin:17px 0 12px}.hero-static .hero-copy .eyebrow{margin-bottom:19px}.hero-static .hero-copy>p:not(.eyebrow){font-size:11px;line-height:1.55}.hero-static .hero-copy .manifesto{font-size:10px}.hero-static .actions{margin-top:22px}}
@media(min-width:768px) and (max-width:1100px) and (orientation:landscape){.hero-static{min-height:max(690px,100svh)!important}.hero-static-content{padding-top:110px;padding-bottom:80px}.hero-static .hero-copy{width:48%;max-width:500px}.hero-static h1{font-size:50px}.hero-static .hero-sub{font-size:16px;margin:17px 0 12px}.hero-static .hero-copy>p:not(.eyebrow){font-size:11px}.hero-static .hero-copy .eyebrow{font-size:8px}.hero-background img{object-position:96% 50%}.hero-readability{background:linear-gradient(90deg,#02091670,transparent 57%)}.hero-static .actions{gap:12px}}
/* The complete vertical artwork is anchored below the text. Extra dark sky absorbs
   the copy height; neither the skyline nor the dashboard sits under the CTAs. */
@media(max-width:767px),(max-width:1366px) and (max-aspect-ratio:4/3){.hero-static{min-height:100svh!important;overflow:hidden}.hero-static-content{padding-top:108px;padding-bottom:calc(100vw * 1.20);width:calc(100% - 40px)}.hero-static .hero-copy{width:100%;max-width:640px}.hero-background{top:auto;bottom:0;left:0;right:0;aspect-ratio:9/16;height:auto;overflow:hidden}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:50% 100%}.hero-readability{background:linear-gradient(0deg,transparent 0 55%,#03101d20 70%,#03101d33);inset:0}.hero-static:after{height:70px}.hero-static .hero-copy .eyebrow{font-size:8px;margin-bottom:23px}.hero-static h1{font-size:clamp(46px,12vw,74px);line-height:1.06;letter-spacing:-.05em}.hero-static .hero-sub{font-size:17px;line-height:1.5;margin:23px 0 16px}.hero-static .hero-copy>p:not(.eyebrow){font-size:12px;line-height:1.7;max-width:600px}.hero-static .hero-copy .manifesto{font-size:11px;margin-top:15px}.hero-static .actions{margin-top:25px;gap:12px}.hero-static .actions .button{min-height:47px;padding-inline:19px;font-size:8px}.hero-static .text-link{min-height:44px;padding:8px 16px;font-size:8px}.hero-static .hero-bottom{font-size:7px;padding:12px 0 19px}.hero-static .hero-bottom>span{max-width:170px;line-height:1.7}.hero-static .hero-bottom a{gap:10px}.hero-static .hero-bottom .hero-arrow{width:12px}.hero-static .hero-copy .eyebrow,.hero-static .headline-line,.hero-static .hero-sub,.hero-static .hero-copy>p:not(.eyebrow),.hero-static .actions{animation-name:mobile-reveal}}
@media(min-width:768px) and (max-width:1366px) and (max-aspect-ratio:4/3){.hero-static-content{padding-top:135px;padding-bottom:calc(100vw * 1.20);width:calc(100% - 80px)}.hero-static h1{font-size:68px}.hero-static .hero-sub{font-size:21px}.hero-static .hero-copy>p:not(.eyebrow){font-size:14px}.hero-static .hero-copy .manifesto{font-size:12px}}
@media(max-width:360px){.hero-static-content{width:calc(100% - 30px)}.hero-static h1{font-size:43px}.hero-static .actions .button{font-size:7px}}
@media(prefers-reduced-motion:reduce){.hero-static .hero-background,.hero-static .hero-copy .eyebrow,.hero-static .headline-line,.hero-static .hero-sub,.hero-static .hero-copy>p:not(.eyebrow),.hero-static .actions{animation:none!important;opacity:1;translate:none;transform:none;filter:none}.hero-static .actions .button:hover{transform:none}}

/* Illustration disclosure stays on the water, clear of the artwork and copy. */
.hero-static .hero-artwork-note{position:absolute;z-index:4;bottom:57px;left:0;right:0;margin:0 auto;font-size:11px;line-height:1.5;color:#b6c7d9;text-shadow:0 1px 5px #020916}
@media(max-width:767px),(max-width:1366px) and (max-aspect-ratio:4/3){.hero-static .hero-artwork-note{bottom:58px;width:calc(100% - 40px);font-size:10px;max-width:640px}}

/* Hero typography refinement. Every rule is scoped to the existing hero. */
.hero-static h1{font-size:clamp(64px,5.85vw,96px);line-height:1.01;font-weight:800;letter-spacing:-.058em;margin:0;color:#fff}
.hero-static h1 em,.hero-static .hero-accent{background:linear-gradient(105deg,#46edff 0%,#00c9f5 45%,#1689ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px #03c8f02b)}
.hero-static .hero-sub{font-size:clamp(23px,1.85vw,30px);font-weight:700;line-height:1.28;letter-spacing:-.025em;max-width:540px;margin:24px 0 17px;color:#f7fbff}
.hero-static .hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.65;max-width:480px;color:#c3d0de}
.hero-static .hero-copy .manifesto{font-size:12px;margin-top:15px;line-height:1.65}
.hero-static .hero-copy .eyebrow{font-size:10px;letter-spacing:.16em;margin-bottom:25px}
.hero-static .actions{gap:13px;margin-top:25px}
.hero-static .actions .button{font-size:10px;min-height:54px;padding-inline:22px;background:linear-gradient(105deg,#0870ff,#00d4e9);box-shadow:inset 0 1px 0 #dcffff70,0 0 18px #07c9f033,0 0 44px #087cff22}
.hero-static .actions .button:hover{box-shadow:inset 0 1px 0 #efffff88,0 0 24px #07c9f052,0 0 50px #087cff30}
.hero-static .text-link{font-size:10px;min-height:54px;padding-inline:20px;border-color:#55d9fb85}
.hero-static-content{padding-bottom:115px}
@media(min-width:1101px) and (max-height:780px){.hero-static-content{padding-top:110px}.hero-static h1{font-size:clamp(64px,5.5vw,84px)}.hero-static .hero-sub{font-size:23px;margin-top:21px}.hero-static .hero-copy>p:not(.eyebrow){font-size:13px}.hero-static .hero-copy .manifesto{font-size:12px}}
@media(min-width:768px) and (max-width:1100px) and (orientation:landscape){.hero-static h1{font-size:clamp(52px,5.6vw,62px)}.hero-static .hero-sub{font-size:22px}.hero-static .hero-copy>p:not(.eyebrow){font-size:13px}.hero-static .actions .button,.hero-static .text-link{font-size:9px;padding-inline:17px}}
@media(max-width:767px),(max-width:1366px) and (max-aspect-ratio:4/3){
.hero-static-content{padding-bottom:calc(100vw * 1.24)}
.hero-static h1{font-size:clamp(48px,13.4vw,78px);line-height:1.035;letter-spacing:-.055em}
.hero-static .hero-sub{font-size:clamp(28px,7.5vw,38px);font-weight:800;line-height:1.19;letter-spacing:-.035em;max-width:600px;margin:25px 0 21px;text-wrap:balance}
.hero-static .hero-copy .eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:25px}
.hero-static .hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.65}
.hero-static .hero-copy .manifesto{font-size:12px;line-height:1.65;margin-top:16px}
.hero-static .actions{gap:12px;margin-top:26px;align-items:stretch}
.hero-static .actions .button,.hero-static .text-link{font-size:10px;min-height:51px;padding-inline:20px}
}
@media(min-width:768px) and (max-width:1366px) and (max-aspect-ratio:4/3){.hero-static h1{font-size:86px}.hero-static .hero-sub{font-size:38px;max-width:640px}.hero-static .hero-copy>p:not(.eyebrow){font-size:16px}.hero-static .hero-copy .manifesto{font-size:14px}}
@media(max-width:360px){.hero-static h1{font-size:46px}.hero-static .hero-sub{font-size:27px}.hero-static .actions .button,.hero-static .text-link{font-size:9px;padding-inline:17px}}
@media(prefers-reduced-motion:reduce){.hero-static h1 em,.hero-static .hero-accent{filter:none}}
