.hero{position:relative;height:100vh;min-height:700px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;z-index:1}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 50% 42%,rgba(13,58,92,.5) 0%,transparent 72%),linear-gradient(180deg,transparent 55%,var(--deep) 100%);z-index:1;pointer-events:none}
.light-ray{position:absolute;top:-5%;width:2px;height:110%;background:linear-gradient(180deg,transparent 0%,rgba(0,212,232,.13) 40%,rgba(0,212,232,.05) 70%,transparent 100%);transform-origin:top center;pointer-events:none;z-index:2}
.hero-content{position:relative;z-index:5;max-width:920px;padding:2rem}
.eyebrow{font-family:var(--font);font-size:.75rem;letter-spacing:.4em;color:var(--aqua);text-transform:uppercase;margin-bottom:2rem;display:block;clip-path:inset(0 100% 0 0)}
.hero-title{font-family:var(--font);font-size:clamp(3rem,8.5vw,6.8rem);font-weight:200;line-height:1.05;color:var(--white);overflow:hidden;margin-bottom:.25rem}
.hero-title-em{font-family:var(--font);font-size:clamp(3rem,8.5vw,6.8rem);font-weight:200;line-height:1.05;color:var(--aqua);overflow:hidden;margin-bottom:2rem}
.char{display:inline-block;will-change:transform}
.hero-sub{font-family:var(--font);font-size:1rem;font-weight:300;color:rgba(200,234,245,.78);margin:0 auto 3rem;line-height:1.95;max-width:560px;opacity:0}
.hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;opacity:0}
.btn-primary{padding:.9rem 2.5rem;border-radius:50px;background:var(--aqua);color:var(--deep);font-family:var(--font);font-weight:700;font-size:.85rem;letter-spacing:.1em;border:none;cursor:none;transition:transform .25s,box-shadow .35s;box-shadow:0 0 28px rgba(0,212,232,.3)}
.btn-primary:hover{transform:scale(1.05);box-shadow:0 0 48px rgba(0,212,232,.55)}
.btn-outline{padding:.9rem 2.5rem;border-radius:50px;background:transparent;color:var(--pearl);font-family:var(--font);font-weight:300;font-size:.85rem;letter-spacing:.1em;border:1px solid rgba(200,234,245,.3);cursor:none;transition:border-color .3s,color .3s}
.btn-outline:hover{border-color:var(--aqua);color:var(--aqua)}
.scroll-cue{position:absolute;bottom:2.8rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:rgba(200,234,245,.35);font-size:.68rem;letter-spacing:.22em;z-index:5;opacity:0;font-family:var(--font)}
.scroll-line{width:1px;height:52px;background:linear-gradient(var(--aqua),transparent)}