/* A more compact hero and staggered entrance language for layout 2. */
.hero h1{font-size:clamp(48px,5.7vw,88px);line-height:.91}

.hero-content .kicker,.hero h1,.hero-content>p:not(.kicker),.hero-content>.solid-button,.scroll-cue,.video-control{opacity:0;transform:translateX(-30px) scale(1.035);animation:hero-enter .9s cubic-bezier(.22,1,.36,1) forwards}
.hero-content .kicker{animation-delay:.2s}.hero h1{animation-delay:.34s}.hero-content>p:not(.kicker){animation-delay:.5s}.hero-content>.solid-button{animation-delay:.64s}.scroll-cue{animation-delay:.8s}.video-control{animation-delay:.85s}
.hero-media{animation:hero-media 1.6s cubic-bezier(.22,1,.36,1) both}

[data-reveal]{opacity:0;transform:translateX(-32px) scale(1.035);transition:opacity .8s ease var(--reveal-delay,0ms),transform 1s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms)}
[data-reveal].is-revealed{opacity:1;transform:translateX(0) scale(1)}
[data-reveal="numbers"]{transform:translateY(25px) scale(1.02)}
[data-reveal="numbers"].is-revealed{transform:translateY(0) scale(1)}
.feature-tabs button{transition:color .25s,box-shadow .25s,background .25s,transform .25s}.feature-tabs button:hover{transform:translateX(4px)}
.feature-image,.service-visual{transition:transform .9s cubic-bezier(.22,1,.36,1),filter .5s ease}.feature-grid:hover .feature-image,.service-card:hover .service-visual{transform:scale(1.035);filter:brightness(1.08)}
.numbers div{transition:transform .35s ease}.numbers div:hover{transform:translateY(-5px)}
.solid-button{position:relative;overflow:hidden}.solid-button:before{content:'';position:absolute;inset:0;background:var(--light);transform:translateX(-105%);transition:transform .35s cubic-bezier(.65,0,.35,1)}.solid-button:hover:before,.solid-button:focus-visible:before{transform:translateX(0)}.solid-button>*{position:relative}.solid-button{isolation:isolate}.solid-button:after{content:'';position:absolute;z-index:-1;inset:0;background:var(--green)}
@keyframes hero-enter{to{opacity:1;transform:translateX(0) scale(1)}}
@keyframes hero-media{from{opacity:0;transform:scale(1.075)}to{opacity:1;transform:scale(1)}}
@media(max-width:560px){.hero h1{font-size:clamp(46px,13vw,66px)}}
@media(prefers-reduced-motion:reduce){.hero-content .kicker,.hero h1,.hero-content>p:not(.kicker),.hero-content>.solid-button,.scroll-cue,.video-control{opacity:1;transform:none;animation:none}[data-reveal]{opacity:1;transform:none;transition:none}.hero-media{animation:none}}
