/* ===========================================================================
   Cafardini — Design Tokens (3-layer). HEX LIVES ONLY IN THIS FILE.
   Layer A: palette · Layer B: semantic · Layer C: component
   Quiet-luxury, fashion-film. No accent colour — colour comes from imagery.
   =========================================================================== */
:root {
  /* ---- Layer A · palette --------------------------------------------- */
  --c-ink:        #14110E;  /* warm near-black */
  --c-ink-2:      #211C17;  /* raised dark surface */
  --c-espresso:   #3A322A;  /* warm brown-black */
  --c-graphite:   #5A524A;  /* secondary text on light */
  --c-stone:      #766B5E;  /* muted / labels — darkened for AA contrast on ivory */
  --c-greige:     #C8BCA8;  /* warm neutral line/detail */
  --c-cream:      #EFE7D9;  /* warm tint surface */
  --c-ivory:      #F7F2EA;  /* page background */
  --c-white:      #FFFFFF;

  /* alpha ramps (built on ink / ivory) */
  --a-ink-06: rgba(20,17,14,.06);
  --a-ink-10: rgba(20,17,14,.10);
  --a-ink-14: rgba(20,17,14,.14);
  --a-ink-55: rgba(20,17,14,.55);
  --a-ink-72: rgba(20,17,14,.72);
  --a-ivory-08: rgba(247,242,234,.08);
  --a-ivory-16: rgba(247,242,234,.16);
  --a-ivory-40: rgba(247,242,234,.40);
  --a-ivory-66: rgba(247,242,234,.66);
  --a-ivory-88: rgba(247,242,234,.88);

  /* ---- Layer B · semantic -------------------------------------------- */
  --bg:           var(--c-ivory);
  --bg-alt:       var(--c-cream);
  --bg-dark:      var(--c-ink);
  --bg-dark-2:    var(--c-ink-2);

  --text:         var(--c-ink);
  --text-soft:    var(--c-graphite);
  --text-muted:   var(--c-stone);

  --on-dark:      var(--c-ivory);
  --on-dark-soft: var(--a-ivory-66);
  --on-dark-mute: var(--a-ivory-40);

  --hairline:       var(--a-ink-14);
  --hairline-soft:  var(--a-ink-10);
  --hairline-dark:  var(--a-ivory-16);

  --scrim-dark:   linear-gradient(180deg, rgba(20,17,14,.10) 0%, rgba(20,17,14,.30) 42%, rgba(20,17,14,.74) 100%);
  --scrim-side:   linear-gradient(90deg, rgba(20,17,14,.66) 0%, rgba(20,17,14,.30) 46%, rgba(20,17,14,0) 78%);

  /* ---- Layer C · component ------------------------------------------- */
  --font-display: 'Cormorant Garamond', 'Times New Roman', Georgia, serif;
  --font-sans:    'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

  --header-h:     84px;
  --radius:       2px;      /* couture = almost square */
  --radius-pill:  999px;
  --shadow-soft:  0 24px 60px -30px rgba(20,17,14,.45);

  --gutter:       clamp(20px, 5vw, 88px);
  --maxw:         1320px;
  --maxw-text:    68ch;

  --track-label:  .26em;    /* letter-spacing for small caps labels */
  --track-tight:  -.015em;  /* display headings */

  --ease:         cubic-bezier(.22,.61,.36,1);
  --dur:          .5s;
}
