html{scroll-behavior:smooth}
body{font-family:'DM Sans',system-ui,sans-serif;background:#05081a;color:#e6ebff;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.font-display{font-family:'Sora','DM Sans',sans-serif;letter-spacing:-.02em}
.font-script{font-family:'Caveat',cursive}
.grad{background:linear-gradient(100deg,#60a5fa,#22d3ee 45%,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}
.glass{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.aurora{position:absolute;inset:0;pointer-events:none;background:radial-gradient(600px 400px at 85% 15%,rgba(59,107,255,.35),transparent 70%),radial-gradient(500px 380px at 5% 40%,rgba(139,92,246,.22),transparent 70%),radial-gradient(500px 300px at 60% 95%,rgba(34,211,238,.14),transparent 70%)}
.grid-bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000,transparent 70%);mask-image:radial-gradient(ellipse at 50% 30%,#000,transparent 70%)}
.spot{position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .3s}
.spot::before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .3s;background:radial-gradient(320px circle at var(--x,50%) var(--y,50%),rgba(96,165,250,.22),transparent 70%);pointer-events:none}
.spot:hover{transform:translateY(-6px);border-color:rgba(96,165,250,.5)}.spot:hover::before{opacity:1}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;border-radius:999px;padding:.95rem 1.7rem;transition:transform .3s,box-shadow .3s;font-family:'Sora',sans-serif;font-size:.95rem}
.btn:hover{transform:translateY(-3px)}
.btn-p{background:linear-gradient(120deg,#3b6bff,#7c5cff);box-shadow:0 12px 40px -8px rgba(59,107,255,.7);color:#fff}
.btn-g{border:1px solid rgba(255,255,255,.2);color:#fff;background:rgba(255,255,255,.05)}.btn-g:hover{background:rgba(255,255,255,.12)}
[data-r]{opacity:0;transform:translateY(34px);filter:blur(6px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),filter .9s}
[data-r=l]{transform:translateX(-44px)}[data-r=rt]{transform:translateX(44px)}[data-r=z]{transform:scale(.9)}
[data-r].in{opacity:1;transform:none;filter:none}
.float{animation:fl 6s ease-in-out infinite}.float2{animation:fl 7s ease-in-out -2s infinite}
@keyframes fl{50%{transform:translateY(-14px)}}
.spin{animation:sp 28s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}
.mq{display:flex;gap:3rem;width:max-content;animation:mq 30s linear infinite}@keyframes mq{to{transform:translateX(-50%)}}
details>summary{list-style:none;cursor:pointer}details>summary::-webkit-details-marker{display:none}
details[open] .pl{transform:rotate(45deg)}.pl{transition:transform .3s}
#pg{position:fixed;top:0;left:0;height:3px;width:0;z-index:70;background:linear-gradient(90deg,#3b6bff,#22d3ee,#a78bfa)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}[data-r]{opacity:1;transform:none;filter:none}}
