@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Black.woff2) format("woff2");font-weight:900;font-display:swap}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:Satoshi,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}

/* premium glide-in: fade + soft rise + focus-pull blur */
:root{--ease:cubic-bezier(.33,0,.1,1)}
.rv{opacity:0;transform:translateY(28px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease);transition-delay:var(--d,0s)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* option switcher (prototype only) */
.switch{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:100;display:flex;gap:4px;padding:4px;border-radius:99px;background:rgba(20,20,20,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font:600 12px/1 Satoshi,sans-serif}
.switch a{padding:8px 12px;border-radius:99px;color:#bbb;white-space:nowrap}
.switch a.on{background:#fff;color:#000}
