/* ==================================================
   SISTEMA TIPOGRAFICO
   ================================================== */

html {
  font-size: 100%;
}

body {
  font-family: var(--font-body);
  color: var(--text);
  background: var(--background);
  font-size: 1rem;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.section-label {
  display: inline-block;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 0.75rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin: 0 0 var(--space-sm);
}

/* DISPLAY / HERO — grande serif editoriale */
.display-title {
  font-family: var(--font-display);
  font-weight: 480;
  line-height: 0.98;
  letter-spacing: -0.01em;
  font-size: clamp(2.75rem, calc(6 * var(--vw)) + 1.5rem, 7.25rem);
  margin: 0 0 var(--space-md);
}

/* HEADINGS — serif elegante */
.editorial-title {
  font-family: var(--font-display);
  font-weight: 480;
  line-height: 1.08;
  letter-spacing: -0.005em;
  font-size: clamp(2rem, calc(3 * var(--vw)) + 1rem, 3.75rem);
  margin: 0 0 var(--space-sm);
}

/* BODY */
.body-large {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: clamp(1.05rem, calc(0.4 * var(--vw)) + 0.95rem, 1.3rem);
  line-height: 1.65;
  color: var(--text);
  max-width: 34rem;
  margin: 0 0 var(--space-md);
}

.body-small {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-muted);
  max-width: 28rem;
}

/* MICROCOPY / LABEL */
.microcopy {
  font-family: var(--font-body);
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  color: var(--text-muted);
}

.quote-text {
  font-family: var(--font-display);
  font-weight: 400;
  font-style: italic;
  line-height: 1.25;
  letter-spacing: -0.005em;
  font-size: clamp(1.75rem, calc(2.5 * var(--vw)) + 1rem, 3rem);
  /* V3.5 — piu' respiro dopo Instagram/Facebook (unico punto in cui
     .quote-text e' usata nel sito, vedi index.html #scene-03: margine
     mirato qui, nessuna regola generica toccata) per dare piu' risalto
     alla citazione finale, su richiesta esplicita. */
  margin: clamp(2.75rem, calc(9 * var(--vw)), 4.75rem) 0 0;
}

p {
  margin: 0 0 var(--space-sm);
}
