/* NextQ site tokens: generated from replica/design/tokens.json (roles stay, values come from the NextQ kit). */
:root {
  --bg: #0B1619;
  --surface: #112227;
  --surface-2: #173037;
  --border: #22404A;
  --border-input: #6C8A93;
  --text: #F2F0EA;
  --text-muted: #A7B5B9;
  --text-subtle: #83979C;
  --light: #F2F0EA;
  --on-light: #16292F;
  --on-accent: #16292F;
  --danger: #E8685C;
  --success: #4DB87F;
  --warning: #EE8A35;

  /* accent is per page: master by default */
  --accent: #4DB87F;
  --accent-glow: rgba(77, 184, 127, .35);

  --font-sans: 'IBM Plex Sans Arabic', Tajawal, system-ui, -apple-system, 'Segoe UI', sans-serif;

  --fs-xs: 12px; --fs-sm: 14px; --fs-base: 16px; --fs-lg: 20px; --fs-xl: 25px;
  --fs-2xl: 32px; --fs-3xl: 41px; --fs-4xl: 52px; --fs-display: 64px;
  --track-display: -0.035em; --track-h2: -0.02em;
  --lh-display: 1.08; --lh-heading: 1.15;

  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px;
  --s-7: 48px; --s-8: 64px; --s-9: 96px; --s-10: 128px; --s-11: 160px;

  --r-sm: 8px; --r-md: 16px; --r-lg: 24px; --r-xl: 32px; --r-pill: 999px;

  --shadow-card: 0 1px 0 rgba(255,255,255,.04) inset, 0 20px 40px rgba(0,0,0,.35);
  --shadow-pop: 0 30px 80px rgba(0,0,0,.55);

  --t-fast: 150ms; --t-base: 250ms; --t-slow: 700ms; --ease: cubic-bezier(.2,.8,.2,1);

  --w-content: 1200px; --w-wide: 1360px; --w-text: 640px; --h-header: 68px; --gutter: 24px;
}
[data-brand="cafe"]   { --accent: #F6C755; --accent-glow: rgba(246, 199, 85, .30); }
[data-brand="clinic"] { --accent: #4BA3E3; --accent-glow: rgba(75, 163, 227, .32); }

/* Arabic: no tracking (it breaks letter joining), taller lines */
:root:lang(ar) { --track-display: 0; --track-h2: 0; --lh-display: 1.3; --lh-heading: 1.35; }

@media (max-width: 640px) {
  :root { --fs-display: 41px; --fs-4xl: 36px; --fs-3xl: 30px; --fs-2xl: 26px; --gutter: 16px; }
}
