/* ==========================================================================
   TOKENS — Design System Custom Properties
   Source of truth for Stitch 2.0 visual language
   ========================================================================== */

/* Font Face Declarations */
@font-face {
  font-family: "Adelle Sans";
  src: url("../assets/fonts/TypeTogether - AdelleSans-Regular.otf") format("opentype");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Adelle Sans";
  src: url("../assets/fonts/TypeTogether - AdelleSans-Bold.otf") format("opentype");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Sofia Pro";
  src: url("../assets/fonts/Mostardesign - Sofia Pro Bold.otf") format("opentype");
  font-weight: 700;
  font-display: swap;
}

:root {
  /* Brand Colors */
  --color-orange: #FF7302;
  --color-orange-hover: #FF8A2E;
  --color-orange-active: #E06600;
  --color-orange-text: #B35000;          /* AA on white 5.16:1, offwhite 4.53:1 */
  --color-orange-text-inverse: #FFA048;  /* AA on navy 4.65:1 */
  --color-navy: #394664;
  --color-navy-light: #4a5a7a;
  --color-blue: #3D43B3;
  --color-blue-hover: #4a50c7;
  --color-coral: #FF495C;
  --color-magenta: #DB248C;
  --color-charcoal: #434343;
  --color-offwhite: #F4EFEB;
  --color-white: #ffffff;

  /* Functional Colors */
  --color-text: #434343;
  --color-text-secondary: #6B6B6B;
  --color-text-inverse: #ffffff;
  --color-text-muted-inverse: #b8c4d6;
  --color-surface-dark: #394664;
  --color-surface-mid: #2e3a54;
  --color-surface-darker: #141c2e;
  --color-border: #E5E0DC;
  --color-border-dark: #4a5a7a;

  /* Typography */
  --font-primary: "Adelle Sans", system-ui, -apple-system, sans-serif;
  --font-accent: "Sofia Pro", "Adelle Sans", system-ui, sans-serif;

  /* Type Scale (Fluid) */
  --text-hero: clamp(2.5rem, 5vw, 4.5rem);
  --text-h1: clamp(2rem, 3.5vw, 3.5rem);
  --text-h2: clamp(1.5rem, 2.5vw, 2.5rem);
  --text-h3: clamp(1.25rem, 1.8vw, 1.75rem);
  --text-body-lg: clamp(1.125rem, 1.4vw, 1.375rem);
  --text-body: clamp(1rem, 1.1vw, 1.125rem);
  --text-body-sm: clamp(0.875rem, 1vw, 1rem);
  --text-eyebrow: clamp(0.75rem, 0.9vw, 0.875rem);

  /* Line Heights */
  --leading-hero: 1.05;
  --leading-tight: 1.1;
  --leading-snug: 1.15;
  --leading-heading: 1.2;
  --leading-normal: 1.65;
  --leading-relaxed: 1.8;

  /* Letter Spacing */
  --tracking-hero: -0.03em;
  --tracking-h1: -0.02em;
  --tracking-h2: -0.015em;
  --tracking-h3: -0.01em;
  --tracking-eyebrow: 0.12em;

  /* Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: clamp(2rem, 4vw, 3rem);
  --space-3xl: clamp(3rem, 6vw, 4rem);
  --space-4xl: clamp(4rem, 8vw, 6rem);
  --space-5xl: clamp(5rem, 10vw, 8rem);

  /* Layout */
  --container-max: 1200px;
  --content-max: 680px;
  --container-padding: clamp(1.5rem, 4vw, 3rem);

  /* Components */
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --nav-height: 72px;

  /* Transitions */
  --ease-default: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --duration-fast: 0.2s;
  --duration-normal: 0.3s;
  --duration-slow: 0.6s;

  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.08);
  --shadow-xl: 0 12px 36px rgba(0, 0, 0, 0.12);
}
