/* =============================================
   TYPOGRAPHY — Editorial System
   ============================================= */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Inter:wght@300;400;500;600&display=swap');

/* === Display Titles === */
.title-display {
  font-family: var(--font-serif);
  font-size: var(--fs-display);
  font-weight: var(--fw-regular);
  line-height: 0.95;
  letter-spacing: -0.02em;
}

.title-h1 {
  font-family: var(--font-serif);
  font-size: var(--fs-h1);
  font-weight: var(--fw-regular);
  line-height: 1.0;
  letter-spacing: -0.01em;
}

.title-h2 {
  font-family: var(--font-serif);
  font-size: var(--fs-h2);
  font-weight: var(--fw-regular);
  line-height: 1.05;
}

.title-h3 {
  font-family: var(--font-serif);
  font-size: var(--fs-h3);
  font-weight: var(--fw-medium);
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* === Editorial Italic === */
.italic-accent {
  font-style: italic;
  font-weight: var(--fw-regular);
}

/* === Body Text === */
.text-body {
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: 1.8;
  max-width: 540px;
}

.text-small {
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  line-height: 1.7;
  letter-spacing: 0.02em;
}

.text-tiny {
  font-family: var(--font-sans);
  font-size: var(--fs-tiny);
  font-weight: var(--fw-regular);
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* === Label / Overline === */
.label {
  font-family: var(--font-sans);
  font-size: var(--fs-tiny);
  font-weight: var(--fw-medium);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  line-height: 1;
}

/* === Color Variants === */
.text-cream { color: var(--color-cream); }
.text-wine { color: var(--color-wine); }
.text-wine-deep { color: var(--color-wine-deep); }
.text-black { color: var(--color-black); }
.text-beige { color: var(--color-beige-aged); }
.text-white { color: var(--color-white); }
