.landing-body{overflow:hidden;height:100vh;width:100vw;background:#000}.landing-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--bg-hero) center top /cover no-repeat;opacity:.6;animation:landingBgReveal 1.2s var(--ease-out,cubic-bezier(0,0,.2,1)) both}@media (max-width:768px){.landing-bg{background-image:var(--bg-hero-mobile);background-position:50%;background-size:cover}}.landing-overlay{position:fixed;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.2) 0,rgba(0,0,0,.05) 35%,rgba(0,0,0,.3) 65%,rgba(0,0,0,.72))}.landing-main{position:relative;z-index:2;width:100%;height:100vh;display:flex;align-items:flex-end;justify-content:center;padding-bottom:14vh}.landing-content{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center;padding:0 24px;animation:fadeUp .7s .15s var(--ease-snap,cubic-bezier(.2,0,0,1)) both}.landing-title{font-family:var(--font-display);font-size:clamp(72px,12vw,144px);letter-spacing:14px;line-height:1;color:#fff;margin:0 0 20px;text-shadow:0 0 10px rgba(255,255,255,.65),0 0 30px rgba(255,255,255,.45),0 0 70px rgba(168,120,255,.38),0 0 130px rgba(168,120,255,.22);animation:titleGlowPulse 4s ease-in-out infinite}.landing-taglines{display:flex;flex-direction:column;gap:5px;margin-bottom:36px;animation:fadeUp .7s .28s var(--ease-snap,cubic-bezier(.2,0,0,1)) both}.landing-tagline{font-family:var(--font-sans);font-size:15px;font-weight:400;color:rgba(255,255,255,.72);margin:0;line-height:1.5}.landing-tagline-sub{font-size:14px;color:rgba(255,255,255,.5)}.landing-cta{animation:fadeUp .7s .42s var(--ease-snap,cubic-bezier(.2,0,0,1)) both}.landing-exit{animation:landingFadeOut .38s var(--ease-out,cubic-bezier(0,0,.2,1)) both}@keyframes landingBgReveal{0%{opacity:0;transform:scale(1.03)}to{opacity:.6;transform:scale(1)}}@keyframes landingFadeOut{0%{opacity:1}to{opacity:0}}@media (max-width:760px){.landing-main{padding-bottom:12vh}.landing-title{font-size:clamp(60px,18vw,100px);letter-spacing:8px;margin-bottom:16px}.landing-tagline{font-size:14px}.landing-tagline-sub{font-size:13px}.landing-taglines{margin-bottom:30px}}@media (max-width:400px){.landing-title{font-size:54px;letter-spacing:6px}}@media (prefers-reduced-motion:reduce){.landing-bg,.landing-content,.landing-cta,.landing-taglines,.landing-title{animation:none}.landing-exit{opacity:0;transition:opacity .2s}}