/* YNS brand tokens – generated from tokens/brand.tokens.json (1.0.0 · 2026-10-15). Do not edit. */
:root {
  --yns-black: #050505;
  --yns-ink: #0A0A0A;
  --yns-muted: #6B6B6B;
  --yns-subtle: #A3A3A3;
  --yns-background: #FAFAFA;
  --yns-surface: #FFFFFF;
  --yns-surface-muted: #F3F3F3;
  --yns-surface-strong: #E9E9EA;
  --yns-border: #E5E5E5;
  --yns-violet: #8D22FD;
  --yns-violet-soft: #F3E8FF;
  --yns-pink: #FD477B;
  --yns-rose: #F4A0A6;
  --yns-magenta: #B234F9;
  --yns-purple: #9529F6;
  --yns-gradient-yns: linear-gradient(100deg, #FD477B 0%, #B234F9 55%, #8D22FD 100%);
  --yns-gradient-aura: radial-gradient(60% 50% at 75% 60%, rgba(178,52,249,.35) 0%, rgba(244,160,166,.25) 45%, rgba(250,250,250,0) 75%);
  --yns-font-sans: Geist, Helvetica, Arial, sans-serif;
  --yns-font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --yns-text-display: 600 82px/1 var(--yns-font-sans);
  --yns-text-display-tracking: -0.03em;
  --yns-text-h1: 600 56px/1.05 var(--yns-font-sans);
  --yns-text-h1-tracking: -0.03em;
  --yns-text-h2: 400 40px/1.25 var(--yns-font-sans);
  --yns-text-h2-tracking: -0.01em;
  --yns-text-h3: 500 20px/1.4 var(--yns-font-sans);
  --yns-text-h3-tracking: 0;
  --yns-text-lead: 400 18px/1.55 var(--yns-font-sans);
  --yns-text-lead-tracking: 0;
  --yns-text-body: 400 16px/1.5 var(--yns-font-sans);
  --yns-text-body-tracking: 0;
  --yns-text-ui: 500 14px/1.7 var(--yns-font-sans);
  --yns-text-ui-tracking: 0;
  --yns-text-caption: 400 13px/1.5 var(--yns-font-sans);
  --yns-text-caption-tracking: 0;
  --yns-text-eyebrow: 500 12px/1.4 var(--yns-font-mono);
  --yns-text-eyebrow-tracking: 0.08em;
  --yns-radius-sm: 10px;
  --yns-radius-md: 14px;
  --yns-radius-lg: 22px;
  --yns-radius-xl: 32px;
  --yns-radius-pill: 9999px;
  --yns-space-1: 4px;
  --yns-space-2: 8px;
  --yns-space-3: 12px;
  --yns-space-4: 16px;
  --yns-space-5: 24px;
  --yns-space-6: 32px;
  --yns-space-7: 48px;
  --yns-space-8: 64px;
  --yns-space-9: 96px;
  --yns-space-10: 128px;
  --yns-shadow-button: 0 40px 24px rgba(0,0,0,.02), 0 23px 14px rgba(0,0,0,.02), 0 10px 10px rgba(0,0,0,.03), 0 2px 4px rgba(0,0,0,.03), 0 0 0 1px rgba(0,0,0,.05);
  --yns-shadow-glass: 0 18px 50px rgba(36,26,77,.12), 0 3px 10px rgba(0,0,0,.05), inset 0 1.5px 0 #fff;
  --yns-shadow-card: 0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.04);
  --yns-duration-fast: 150ms;
  --yns-duration-base: 250ms;
  --yns-duration-slow: 600ms;
  --yns-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --yns-comet-line-width: 1.6px;
  --yns-comet-line-opacity: 0.85;
  --yns-comet-glow-width: 5px;
  --yns-comet-glow-blur: 6px;
  --yns-comet-glow-opacity: 0.3;
  --yns-comet-haze-width: 20px;
  --yns-comet-haze-blur: 26px;
  --yns-comet-haze-opacity: 0.07;
  --yns-container: 1208px;
}

.yns-gradient-text {
  background-image: var(--yns-gradient-yns);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
/* Geist + Geist Mono (OFL 1.1), self-hosted. Paths relative to this file's folder. */
@font-face { font-family: "Geist"; src: url("assets/fonts/geist-latin.woff2") format("woff2"); font-weight: 100 900; font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Geist"; src: url("assets/fonts/geist-latin-ext.woff2") format("woff2"); font-weight: 100 900; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Geist Mono"; src: url("assets/fonts/geist-mono-latin.woff2") format("woff2"); font-weight: 100 900; font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Geist Mono"; src: url("assets/fonts/geist-mono-latin-ext.woff2") format("woff2"); font-weight: 100 900; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
