/* ============================================================
   PT Template 3 — "Modern Momentum" Design Tokens
   ONE-VARIABLE REBRAND: swap --accent-h/s/l to re-skin the site.
   ============================================================ */

:root {
  /* --- Accent system (client-configurable) ---
     Planet Sensory brand orange #f97d11 = hsl(28 95% 52%). */
  --accent-h: 28;
  --accent-s: 95%;
  --accent-l: 52%;
  --accent: hsl(var(--accent-h) var(--accent-s) var(--accent-l));
  /* Text-safe brand orange: vivid (not brown), 5.6:1 on white, 4.7:1 on --accent-soft. */
  --accent-strong: hsl(20 100% 36%);
  /* Display-size orange for headings and big accent words, matching the original
     site's #f54f00 feel (3.6:1 on white, which clears AA for large text). */
  --accent-vivid: hsl(22 100% 46%);
  --accent-soft: hsl(var(--accent-h) 60% 92%);
  --accent-glow: hsl(var(--accent-h) 80% 45% / 0.18);
  /* Dark ink, not white. A bright orange fill only reaches 2.6:1 against white
     text; against --ink it clears 7:1. --accent is fill-only in this template
     (text always uses --accent-strong at L 27%), so this is the one flip needed
     to keep the real brand orange without failing contrast. */
  --accent-on: #20160e;

  /* --- Neutrals --- */
  --ink: #20160e;
  --ink-2: #2e2015;
  --ink-3: #3c2a1b;
  /* Light surfaces. Were warm beige (#f6f3ec / #efeae0), which read muted; now a
     near-white with a whisper of the brand lavender, like the original site's
     white + soft-tint section bands. */
  --bone: #f7f8fd;
  --bone-2: #eef1fb;
  --white: #ffffff;
  --line-ink: hsl(28 20% 90%);
  --line-bone: hsl(230 25% 87%);

  /* --- Text on dark / light --- */
  --text-on-ink: #f2f5f4;
  --text-on-ink-dim: hsl(28 15% 72%);
  --text-on-bone: #1f1d2a;
  --text-on-bone-dim: hsl(240 7% 36%);

  /* --- Highlight (stars, tiny sparks ONLY) --- */
  --ember: #f2a33c;

  /* --- Secondary palette (decorative accents only — never body text) ---
     Pulled from the client's live-site branding: a rotating pastel set used
     as small accent tabs/rings on condition and treatment photos so the
     whole site isn't carrying the orange accent alone. */
  --color-green: #97db73;
  --color-pink: #fe81c9;
  --color-lavender: #a5b6fd;
  --color-yellow: #ffd875;

  /* --- Typography --- */
  --font-display: "Bricolage Grotesque", sans-serif;
  --font-body: "Instrument Sans", sans-serif;
  --font-quote: "Instrument Serif", serif;

  /* Fluid type scale */
  --fs-hero: clamp(2.75rem, 1.2rem + 6.5vw, 6rem);
  --fs-h2: clamp(2rem, 1rem + 3.6vw, 3.6rem);
  --fs-h3: clamp(1.35rem, 1.05rem + 1.2vw, 2rem);
  --fs-h4: clamp(1.1rem, 1rem + 0.5vw, 1.3rem);
  --fs-body: clamp(1rem, 0.95rem + 0.2vw, 1.125rem);
  --fs-small: 0.875rem;
  --fs-ghost: clamp(8rem, 20vw, 22rem); /* giant ghost numerals */

  /* --- Space & shape --- */
  --sp-section: clamp(4.5rem, 3rem + 6vw, 8.5rem);
  --sp-gap: clamp(1.25rem, 1rem + 1vw, 2rem);
  --radius-card: 20px;
  --radius-lg: 32px;
  --radius-pill: 999px;

  /* --- Elevation --- */
  --shadow-soft: 0 6px 24px hsl(28 30% 10% / 0.08), 0 2px 8px hsl(28 30% 10% / 0.05);
  --shadow-lift: 0 18px 50px hsl(28 35% 10% / 0.16), 0 6px 16px hsl(28 35% 10% / 0.08);
  --shadow-glow: 0 0 60px var(--accent-glow);

  /* --- Motion --- */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --dur-reveal: 700ms;

  /* --- Layout --- */
  --container: 1200px;
  --nav-h: 76px;
}
