.landing{--ease-out:cubic-bezier(.2,.8,.2,1)}
.map-live{position:absolute;left:24px;top:24px;z-index:3;display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:100px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.9);box-shadow:0 8px 24px rgba(26,85,61,.12);backdrop-filter:blur(10px);color:var(--deep);font-size:11px;font-weight:800}
.map-live>span{width:8px;height:8px;border-radius:50%;background:#35b878;box-shadow:0 0 0 0 rgba(53,184,120,.5);animation:livePulse 1.8s infinite}
.map-orbit{position:absolute;border:1px dashed rgba(39,119,86,.22);border-radius:50%;pointer-events:none}.orbit-one{width:62%;height:62%;left:18%;top:18%;animation:orbitSpin 18s linear infinite}.orbit-two{width:38%;height:38%;left:31%;top:31%;animation:orbitSpin 13s linear infinite reverse}
.motion-ready .landing-copy>*{opacity:0;transform:translateY(24px)}.motion-ready .landing-visual{opacity:0;transform:translateX(35px) scale(.96)}.motion-start .landing-copy>*{animation:heroEnter .75s var(--ease-out) forwards}.motion-start .landing-copy h1{animation-delay:.1s}.motion-start .landing-copy>p{animation-delay:.2s}.motion-start .landing-actions{animation-delay:.3s}.motion-start .landing-proof{animation-delay:.4s}.motion-start .landing-visual{animation:visualEnter .95s .18s var(--ease-out) forwards}
.motion-start .visual-map{animation:mapFloat 6s 1.2s ease-in-out infinite;transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translate(var(--shift-x,0),var(--shift-y,0));transition:transform .2s ease-out}.motion-start .map-lines{animation:routeDrift 14s linear infinite}.motion-start .visual-pin:after{content:"";position:absolute;inset:-11px;border:2px solid currentColor;border-radius:50%;opacity:0;animation:pinSignal 2.4s infinite}.motion-start .pin-b:after{animation-delay:.7s}.motion-start .pin-c:after{animation-delay:1.4s}.motion-start .floating-trip{animation:cardBob 4.8s ease-in-out infinite}.motion-start .floating-security{animation:cardBob 4.8s 1.1s ease-in-out infinite}.motion-start .landing-badge i{animation:sparkle 1.7s ease-in-out infinite}.motion-start .landing-actions .primary i{animation:arrowNudge 1.6s ease-in-out infinite}
.landing-copy h1 em{display:inline-block;transform-origin:left center;transition:opacity .3s,transform .3s,filter .3s}.landing-copy h1 em.word-out{opacity:0;transform:translateY(-12px) rotateX(20deg);filter:blur(5px)}.landing-copy h1 em.word-in{animation:wordEnter .5s var(--ease-out)}
.scroll-reveal{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .7s var(--ease-out) var(--reveal-delay,0ms),transform .7s var(--ease-out) var(--reveal-delay,0ms)}.scroll-reveal.revealed{opacity:1;transform:none}.feature-grid article{transition:opacity .7s var(--ease-out) var(--reveal-delay,0ms),transform .7s var(--ease-out) var(--reveal-delay,0ms),box-shadow .25s,border-color .25s}.feature-grid article.revealed:hover{transform:translateY(-8px);box-shadow:0 28px 65px rgba(31,91,65,.17);border-color:#bfe5d1}.feature-grid article:hover .feature-icon{transform:rotate(-6deg) scale(1.08)}.feature-icon{transition:transform .25s var(--ease-out)}.benefit-strip>div.revealed b{animation:metricPop .55s var(--ease-out)}.landing-cta:before{content:"";position:absolute;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.08);right:12%;top:-150px;animation:ctaGlow 5s ease-in-out infinite}.landing-cta>*{position:relative;z-index:1}
@keyframes heroEnter{to{opacity:1;transform:none}}@keyframes visualEnter{to{opacity:1;transform:none}}@keyframes mapFloat{0%,100%{translate:0 0}50%{translate:0 -10px}}@keyframes routeDrift{to{transform:translate3d(100px,80px,0)}}@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes pinSignal{0%{transform:scale(.4);opacity:.55}75%,100%{transform:scale(1.5);opacity:0}}@keyframes cardBob{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes livePulse{70%{box-shadow:0 0 0 9px rgba(53,184,120,0)}100%{box-shadow:0 0 0 0 rgba(53,184,120,0)}}@keyframes sparkle{50%{transform:rotate(12deg) scale(1.25);filter:drop-shadow(0 0 5px #6fbd91)}}@keyframes arrowNudge{50%{transform:translateX(5px)}}@keyframes wordEnter{from{opacity:0;transform:translateY(14px) rotateX(-20deg);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}@keyframes metricPop{0%{transform:scale(.8);opacity:.2}100%{transform:none;opacity:1}}@keyframes ctaGlow{50%{transform:translate(-30px,45px) scale(1.35)}}
@media(max-width:700px){.map-live{left:14px;top:14px}.map-orbit{display:none}.motion-start .visual-map{animation-duration:7s}.landing-copy h1 em{display:inline}}
@media(prefers-reduced-motion:reduce){.landing *,.landing *:before,.landing *:after{animation:none!important;transition:none!important}.scroll-reveal,.motion-ready .landing-copy>*,.motion-ready .landing-visual{opacity:1!important;transform:none!important}}
