/* Self-hosted fonts — GDPR-clean, zero external requests. Sources: Google Fonts Helper. */

@font-face {
  font-family: 'Inter';
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url('/assets/fonts/inter-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url('/assets/fonts/inter-500.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: url('/assets/fonts/inter-600.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-600.woff2') format('woff2');
}

/* Shared CSS tokens. Safe/hot variant overrides live in tokens-safe.css / tokens-hot.css. */
:root {
  /* Typography */
  --font-serif: 'Cormorant Garamond', Georgia, serif;
  --font-sans: 'Inter', system-ui, sans-serif;

  /* Type scale */
  --fs-h1: clamp(1.8rem, 4.5vw, 2.6rem);
  --fs-h2: 1.4rem;
  --fs-h3: 1.15rem;
  --fs-body: 0.95rem;
  --fs-small: 0.78rem;
  --fs-label: 0.68rem;

  /* Line height */
  --lh-tight: 1.15;
  --lh-normal: 1.55;
  --lh-body: 1.6;

  /* Spacing */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;

  /* Radius */
  --r-sm: 6px;
  --r-md: 12px;
  --r-lg: 18px;
  --r-pill: 50px;

  /* Base palette (dark) — WCAG AA contrast on #06060f bg */
  --bg-0: #06060f;
  --bg-1: #0a0a1a;
  --bg-2: rgba(30, 15, 60, 0.4);
  --text-0: #f5efff;
  --text-1: rgba(220, 200, 255, 0.85);
  --text-muted: rgba(220, 200, 255, 0.7);
  --link-color: #d8c4ff;

  /* Interactive */
  --focus-ring: 2px solid #d0b8ff;
}
