/* ==========================================================================
   FettyAdult — Design Tokens
   Theme: Luxury / Modern / Minimal / Premium / Discreet
   Palette: Ink black + deep red, with dark gray, white and soft silver.
   ========================================================================== */

:root {
  /* ---- Color: surfaces ---- */
  --c-bg:            #0b0a0b;   /* page background, near-black */
  --c-surface:       #151215;   /* cards, panels */
  --c-surface-alt:   #1d1a1c;   /* raised panels, inputs */
  --c-surface-hover: #241f22;

  /* ---- Color: ink / text ---- */
  --c-ink:           #f4f1ee;   /* primary text on dark */
  --c-ink-muted:     #c9c2bf;   /* secondary text */
  --c-ink-faint:     #8a8286;   /* tertiary / captions */

  /* ---- Color: red (primary brand accent) ---- */
  --c-red:           #7a1220;
  --c-red-hover:     #98182a;
  --c-red-soft:      #2a1114;   /* red-tinted surface, for badges/washes */
  --c-red-line:      #4a1620;

  /* ---- Color: silver / gray (secondary accent) ---- */
  --c-silver:        #c9cdd3;
  --c-silver-dim:     #8d9096;
  --c-gray:          #3a373a;

  /* ---- Lines & dividers ---- */
  --c-line:          rgba(244, 241, 238, 0.10);
  --c-line-strong:   rgba(244, 241, 238, 0.18);

  /* ---- Status ---- */
  --c-success:       #4f8f6a;
  --c-warning:       #b98a3b;
  --c-error:         #c94b4b;

  /* ---- Typography ---- */
  --font-display: "Fraunces", "Iowan Old Style", Georgia, serif;
  --font-body:    "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono:    "IBM Plex Mono", "SFMono-Regular", Menlo, monospace;

  --fs-xs:   0.75rem;
  --fs-sm:   0.875rem;
  --fs-base: 1rem;
  --fs-md:   1.125rem;
  --fs-lg:   1.375rem;
  --fs-xl:   1.875rem;
  --fs-2xl:  2.5rem;
  --fs-3xl:  3.5rem;
  --fs-4xl:  4.75rem;

  --lh-tight: 1.1;
  --lh-snug:  1.35;
  --lh-normal: 1.6;

  --ls-wide: 0.08em;
  --ls-wider: 0.16em;

  /* ---- Spacing scale ---- */
  --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: 4.5rem;
  --sp-9: 6.5rem;

  /* ---- Layout ---- */
  --container-max: 1280px;
  --container-pad: clamp(1.25rem, 4vw, 3rem);
  --radius-sm: 3px;
  --radius-md: 6px;
  --radius-lg: 14px;

  /* ---- Motion ---- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 160ms;
  --dur-med: 320ms;
  --dur-slow: 620ms;

  /* ---- Elevation ---- */
  --shadow-sm: 0 2px 10px rgba(0,0,0,0.35);
  --shadow-md: 0 10px 30px rgba(0,0,0,0.45);
  --shadow-red: 0 8px 24px rgba(122,18,32,0.35);

  --z-header: 100;
  --z-modal: 500;
  --z-toast: 600;
}

/* Respect reduced-motion preference globally */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
