/* Reverie Bridal Outlet — Typography tokens
   Primary (display/headings): Hatton Semibold in the guidelines.
   Hatton is a commercial licence (not on Google Fonts) — substituted with
   Playfair Display, the closest freely-hosted high-contrast luxury serif.
   *** FLAGGED: swap in real Hatton web-font files when licensed. ***
   Secondary (body/UI): Montserrat — exact match, Google-hosted. */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,600&family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap');

:root {
  /* ---- Families ---- */
  --font-display: 'Playfair Display', 'Hatton', Georgia, 'Times New Roman', serif;
  --font-body:    'Montserrat', 'Helvetica Neue', Arial, sans-serif;
  /* semantic aliases */
  --font-heading: var(--font-display);
  --font-ui:      var(--font-body);

  /* ---- Weights ---- */
  --fw-light:    300; /* @kind font */
  --fw-regular:  400; /* @kind font */
  --fw-medium:   500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold:     700; /* @kind font */

  /* ---- Type scale (1.250 major-third, 16px base) ---- */
  --fs-display:  clamp(3rem, 6vw, 4.75rem); /* @kind font */
  --fs-h1:       3.05rem;   /* 48.8px @kind font */
  --fs-h2:       2.44rem;   /* 39px @kind font */
  --fs-h3:       1.95rem;   /* 31.25px @kind font */
  --fs-h4:       1.56rem;   /* 25px @kind font */
  --fs-h5:       1.25rem;   /* 20px @kind font */
  --fs-lead:     1.25rem;   /* intro paragraph @kind font */
  --fs-body:     1rem;      /* 16px @kind font */
  --fs-sm:       0.875rem;  /* 14px @kind font */
  --fs-xs:       0.75rem;   /* 12px @kind font */
  --fs-eyebrow:  0.8125rem; /* 13px small-caps label @kind font */

  /* ---- Line heights ---- */
  --lh-tight:   1.08;  /* @kind font */
  --lh-heading: 1.18; /* @kind font */
  --lh-snug:    1.4; /* @kind font */
  --lh-body:    1.65; /* @kind font */

  /* ---- Letter spacing ---- */
  --ls-display:  -0.01em; /* @kind font */
  --ls-tight:   -0.005em; /* @kind font */
  --ls-normal:   0; /* @kind font */
  --ls-wide:     0.08em;   /* buttons / labels @kind font */
  --ls-eyebrow:  0.22em;   /* the signature widely-tracked caps @kind font */
}
