.landing-page{--bg-base:#050505;--bg-surface:#0d0d0d;--bg-elev:#161616;--text-primary:#fff;--text-secondary:#a3a3a3;--text-tertiary:#737373;--amber:#f97316;--amber-light:#fb923c;--amber-dark:#ea580c;--border-soft:#ffffff14;--border-mid:#ffffff24;cursor:none;background:var(--bg-base);color:var(--text-primary);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.landing-page a,.landing-page button,.landing-page [role=button]{cursor:none}.landing-page .font-display{letter-spacing:-.03em;font-family:Outfit,sans-serif}.landing-page .font-mono{font-family:JetBrains Mono,monospace}.landing-page ::selection{background:var(--amber);color:#000}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.landing-page .grain{pointer-events:none;z-index:100;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");position:fixed;inset:0}.landing-page .vignette{pointer-events:none;background:radial-gradient(#0000 0% 40%,#000000d9 100%);position:absolute;inset:0}.landing-page .cursor-dot{background:var(--amber);pointer-events:none;z-index:9999;mix-blend-mode:difference;border-radius:50%;width:8px;height:8px;transition:width .25s,height .25s,background .25s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.landing-page .cursor-ring{pointer-events:none;z-index:9999;border:1px solid #f59e0b99;border-radius:50%;width:36px;height:36px;transition:width .3s cubic-bezier(.2,.8,.2,1),height .3s cubic-bezier(.2,.8,.2,1),border-color .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.landing-page .cursor-grow .cursor-dot{width:0;height:0}.landing-page .cursor-grow .cursor-ring{border-color:var(--amber);background:#f59e0b14;width:60px;height:60px}.landing-page .amber-glow{text-shadow:0 0 40px #f59e0b66}.landing-page .scene-img{object-fit:cover;will-change:transform, opacity;width:100%;height:100%;position:absolute;inset:0}.landing-page .door-light{background:radial-gradient(60% 80%,#f59e0be6 0%,#d9770699 20%,#78350f4d 45%,#0000 70%)}.landing-page .bento-card{border:1px solid var(--border-soft);background:linear-gradient(#161616e6,#0d0d0de6);border-radius:18px;transition:border-color .4s,transform .4s;position:relative;overflow:hidden}.landing-page .bento-card:before{content:"";-webkit-mask-composite:xor;opacity:0;pointer-events:none;background:linear-gradient(135deg,#0000 30%,#f59e0b66,#0000 70%);border-radius:18px;padding:1px;transition:opacity .4s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.landing-page .bento-card:hover{border-color:var(--border-mid);transform:translateY(-2px)}.landing-page .bento-card:hover:before{opacity:1}.landing-page .btn-primary{background:var(--amber);color:#0a0a0a;letter-spacing:-.01em;border:none;border-radius:999px;align-items:center;gap:12px;padding:18px 36px;font-family:Outfit,sans-serif;font-size:16px;font-weight:700;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 10px 40px #f9731640}.landing-page .btn-primary:hover{background:var(--amber-light);transform:translateY(-2px);box-shadow:0 16px 60px #f9731673}.landing-page .btn-ghost{color:var(--text-primary);border:1px solid var(--border-mid);background:0 0;border-radius:999px;align-items:center;gap:10px;padding:14px 24px;font-family:Outfit,sans-serif;font-size:14px;font-weight:500;transition:border-color .3s,background .3s;display:inline-flex}.landing-page .btn-ghost:hover{border-color:var(--amber);background:#f59e0b0f}@keyframes pulse-dot{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.landing-page .pulse-dot{animation:2s ease-in-out infinite pulse-dot}@media (hover:none) and (pointer:coarse){.landing-page{cursor:auto}.landing-page .cursor-dot,.landing-page .cursor-ring{display:none}}
