/* Jithmi Coaching tokens, from the design system's tokens.json. Edit values here, never in components. */
:root {
  --bg: #fdf8f9;
  --surface: #ffffff;
  --surface-rose: #fbeef2;
  --rose-tint: #f3d3de;
  --ink: #2a1a20;
  --ink-muted: #78606a;
  --line: #ebdadf;
  --border-control: #9c8089;
  --rose: #9c4b63;
  --on-rose: #ffffff;
  --rose-mid: #c97b93;
  --gold: #8a6238;
  --danger: #b3261e;

  --font-display: "Playfair Display", Georgia, serif;
  --display-weight: 500;
  --font-body: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 72px;

  --radius-sm: 12px;
  --radius-lg: 24px;
  --radius-pill: 999px;

  --container: 1120px;
  --form-width: 720px;
  --portrait-width: 460px;

  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-hover: 150ms;
  --dur-step: 280ms;

  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #170f13;
    --surface: #21161b;
    --surface-rose: #2b1b22;
    --rose-tint: #5a3345;
    --ink: #f7ebef;
    --ink-muted: #bea3ac;
    --line: #3a2830;
    --border-control: #8a6f7a;
    --rose: #e7a1b7;
    --on-rose: #2a1119;
    --rose-mid: #c97b93;
    --gold: #d4ae80;
    --danger: #ff9c94;
    color-scheme: dark;
  }
}

:root[data-theme="dark"] {
  --bg: #170f13;
  --surface: #21161b;
  --surface-rose: #2b1b22;
  --rose-tint: #5a3345;
  --ink: #f7ebef;
  --ink-muted: #bea3ac;
  --line: #3a2830;
  --border-control: #8a6f7a;
  --rose: #e7a1b7;
  --on-rose: #2a1119;
  --rose-mid: #c97b93;
  --gold: #d4ae80;
  --danger: #ff9c94;
  color-scheme: dark;
}

/* Type styles */
.display-xl, .display-italic, .display-lg, .display-md, .price, .wordmark { font-family: var(--font-display); font-weight: var(--display-weight); font-optical-sizing: auto; }
.display-xl { font-size: clamp(44px, 7vw, 76px); line-height: 1.02; letter-spacing: -0.01em; }
.display-italic { font-style: italic; font-size: inherit; line-height: inherit; letter-spacing: -0.01em; }
.display-lg { font-size: clamp(34px, 4.6vw, 48px); line-height: 1.08; letter-spacing: -0.005em; }
.display-md { font-size: clamp(26px, 3vw, 32px); line-height: 1.15; }
.price { font-size: 40px; line-height: 1; font-variant-numeric: lining-nums tabular-nums; }
.wordmark { font-size: 24px; line-height: 1.2; }

.lead { font-family: var(--font-body); font-size: clamp(17px, 1.6vw, 18px); line-height: 1.55; font-weight: 400; }
.title { font-family: var(--font-body); font-size: 20px; line-height: 1.3; font-weight: 600; }
.body { font-family: var(--font-body); font-size: 16px; line-height: 1.6; font-weight: 400; }
.body-sm { font-family: var(--font-body); font-size: 15px; line-height: 1.5; font-weight: 400; }
.label { font-family: var(--font-body); font-size: 16px; line-height: 1.4; font-weight: 500; }
.caption { font-family: var(--font-body); font-size: 13px; line-height: 1.4; font-weight: 400; }
.eyebrow { font-family: var(--font-body); font-size: 13px; line-height: 1.2; font-weight: 600; letter-spacing: 0.16em; }
