/* ============================================================
   Ride X — design tokens
   Palette: deep navy + one precise red. Nothing else.
   ============================================================ */

:root {
  /* ---- color: dark world ---- */
  --navy-950: #060e1f;   /* near-black, TENSION beats            */
  --navy-900: #0a1730;   /* deep navy base                       */
  --navy-850: #0e1b33;   /* secondary surface                    */
  --navy-800: #101f3c;   /* raised dark surface                  */
  --white:    #f5f7fa;   /* text on dark                         */
  --mist:     #aeb7c6;   /* muted text on dark                   */

  /* ---- color: light world ---- */
  --paper:    #f6f7f9;   /* light base                           */
  --paper-2:  #edeff3;   /* secondary light                      */
  --ink:      #0a1730;   /* text on light                        */
  --slate:    #586173;   /* muted text on light                  */

  /* ---- color: accents ---- */
  --red:      #d3232e;   /* the brand signal — use precisely     */
  --red-deep: #b01d26;   /* hover / pressed                      */
  --gold:     #c9a96a;   /* pickup ring only — motif, never UI   */

  /* ---- hairlines ---- */
  --line-on-dark:  rgba(245, 247, 250, 0.14);
  --line-on-light: rgba(10, 23, 48, 0.12);

  /* ---- type families ---- */
  --font-display: "Space Grotesk", "Inter", system-ui, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, sans-serif;
  --font-ar: "IBM Plex Sans Arabic", "Inter", system-ui, sans-serif;

  /* ---- type scale (fluid) ---- */
  --text-hero: clamp(2.85rem, 1.1rem + 6.8vw, 6rem);       /* H1 hero  */
  --text-breathe: clamp(1.9rem, 1rem + 3.6vw, 3.6rem);     /* BREATHE lines */
  --text-h1: clamp(2.4rem, 1.5rem + 3.6vw, 4.25rem);       /* page H1  */
  --text-h2: clamp(1.9rem, 1.35rem + 2.2vw, 3.1rem);
  --text-h3: clamp(1.2rem, 1.05rem + 0.7vw, 1.55rem);
  --text-lead: clamp(1.0625rem, 1rem + 0.4vw, 1.25rem);
  --text-body: 1.0625rem;                                   /* ~17px    */
  --text-small: 0.9375rem;
  --text-eyebrow: 0.8125rem;                                /* 13px     */

  --leading-display: 1.04;
  --leading-body: 1.7;
  --track-display: -0.02em;
  --track-eyebrow: 0.18em;

  /* ---- space ---- */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4rem;
  --sp-9: 6rem;
  --band-pad: clamp(4.5rem, 3.5rem + 7vw, 9.5rem);
  --band-pad-tight: clamp(3rem, 2.5rem + 4vw, 6rem);

  /* ---- layout ---- */
  /* flat below ~1900px (no change from the old fixed 1184px/1360px caps);
     grows gently past that so windows maximized on large/ultrawide monitors
     keep using more of the screen instead of hitting a hard wall */
  --container: clamp(74rem, 62vw, 92rem);         /* 1184px → up to 1472px */
  --container-wide: clamp(85rem, 78vw, 105rem);   /* 1360px → up to 1680px */
  --container-narrow: 47rem;  /* 752px  */
  --gutter: clamp(1.25rem, 4vw, 2.5rem);
  --topbar-h: 4.5rem;

  /* ---- shape ---- */
  --radius-s: 0.375rem;
  --radius: 0.75rem;
  --radius-l: 1.25rem;

  /* ---- motion ---- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-inout: cubic-bezier(0.65, 0, 0.35, 1);
  --dur: 0.7s;
  --dur-slow: 1.1s;

  /* ---- z ---- */
  /* topbar sits above the open mobile menu so the close toggle stays tappable */
  --z-topbar: 120;
  --z-menu: 110;
  --z-wabar: 90;
}

/* Arabic: swap families, loosen leading, kill latin tracking.
   Arabic is designed, not a fallback. */
html[lang="ar"] {
  --font-display: var(--font-ar);
  --font-body: var(--font-ar);
  --leading-display: 1.3;
  --leading-body: 1.95;
  --track-display: 0;
  --track-eyebrow: 0;
  --text-hero: clamp(2.5rem, 1.1rem + 5.8vw, 5.25rem);
  --text-breathe: clamp(1.75rem, 1rem + 3.2vw, 3.25rem);
}
