.gradient-layer{z-index:0;background:#e8cfc0;position:fixed;inset:0}.gradient-layer canvas{width:100%;height:100%}.grain{z-index:1;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes scrollPulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.4;transform:scaleY(.6)}}.landing-headline{letter-spacing:-.03em;opacity:0;font-size:clamp(4rem,12vw,11rem);line-height:.9;animation:1.4s cubic-bezier(.16,1,.3,1) .2s forwards fadeUp}.landing-sub{letter-spacing:.15em;opacity:0;font-size:clamp(.9rem,2vw,1.3rem);animation:1.2s cubic-bezier(.16,1,.3,1) .7s forwards fadeUp}.landing-top-bar{opacity:0;animation:1s cubic-bezier(.16,1,.3,1) 1.2s forwards fadeUp}.landing-bottom-bar{opacity:0;animation:1s cubic-bezier(.16,1,.3,1) 1.5s forwards fadeUp}.landing-status-dot{width:6px;height:6px;animation:2.5s ease-in-out infinite pulse}.landing-scroll-hint{background:linear-gradient(#11111126,#0000);width:1px;height:40px;animation:2s ease-in-out infinite scrollPulse}
