/* Twin Horizon — Design Tokens
   High-end light-neutral system. No framework dependencies. */

@font-face {
  font-family: 'SangBleu Sunrise';
  src: url('../fonts/SangBleuSunrise-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  /* —— Layout —— */
  --container-max: 1600px;
  --container-pad-x: clamp(1.25rem, 3vw, 4rem);
  --section-pad-y: clamp(2rem, 4.2vh, 3.25rem);

  /* —— Surfaces —— */
  --bg-primary: #fbfbfa;
  --bg-surface: #ffffff;
  --bg-subtle: #f3f3f0;

  /* —— Text —— */
  --text-primary: #18181b;
  --text-secondary: #52525b;
  --text-muted: #8e8e93;

  /* —— Accent —— */
  --accent-champagne: #c5a880;
  --accent-champagne-dark: #a68a60;
  --accent-champagne-bright: #dbbf96;

  /* —— Borders —— */
  --border-light: rgba(0, 0, 0, 0.08);
  --border-subtle: rgba(0, 0, 0, 0.04);

  /* —— Typography —— */
  --font-display: 'SangBleu Sunrise', 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-hero: 'SangBleu Sunrise', 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-body: 'Manrope', 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-ui: 'Manrope', 'Outfit', 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: clamp(1.25rem, 1rem + 0.8vw, 1.5rem);
  --fs-xl: clamp(1.75rem, 1.2rem + 1.6vw, 2.5rem);
  --fs-display: clamp(2.25rem, 1.4rem + 3vw, 4rem);

  --lh-tight: 1.1;
  --lh-snug: 1.35;
  --lh-body: 1.65;

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  --tracking-wide: 0.12em;
  --tracking-label: 0.16em;

  /* —— Motion —— */
  --ease-smooth: cubic-bezier(0.16, 1, 0.3, 1);
  --transition-smooth: 0.6s var(--ease-smooth);
  --transition-fast: 0.28s var(--ease-smooth);

  /* —— Elevation / radius —— */
  --radius-sm: 4px;
  --radius-md: 8px;
  --shadow-soft: 0 12px 40px rgba(24, 24, 27, 0.06);

  /* —— Focus —— */
  --focus-ring: 0 0 0 3px rgba(197, 168, 128, 0.45);

  /* —— Z-index scale —— */
  --z-header: 1000;
  --z-floating: 1100;
  --z-modal: 1200;
  --z-toast: 1300;

  /* —— Theme hooks (dynamic-engine may override) —— */
  --theme-accent: var(--accent-champagne);
  --theme-accent-dark: var(--accent-champagne-dark);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --transition-smooth: 0.01ms linear;
    --transition-fast: 0.01ms linear;
  }
}
