/* ════════════════════════════════════════════
   TYPOGRAPHY — échelle, italiques, drop caps, mono
   ════════════════════════════════════════════ */

body {
    font-family: var(--font-body);
    font-feature-settings: var(--onum);
    font-size: var(--fs-body);
    line-height: 1.62;
    color: var(--ink-2);
    background: var(--paper);
    letter-spacing: 0.003em;
}

/* ─── Italiques sur tous les termes italiens ─── */
em, i {
    font-style: italic;
    font-family: var(--font-display);
}

strong, b { font-weight: 600; color: var(--ink); }

/* ─── Titres : Cormorant ─── */
h1, h2, h3, h4 {
    font-family: var(--font-display);
    color: var(--ink);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.012em;
}
h1 em, h2 em, h3 em { font-weight: 500; }

/* ─── Mono labels / foliotage ─── */
.mono-spaced {
    font-family: var(--font-mono);
    font-size: var(--fs-sm);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    color: var(--ink-mute);
    display: inline-block;
}

/* chiffres tabulaires (prix) */
.tnum {
    font-feature-settings: var(--tnum);
    font-variant-numeric: tabular-nums lining-nums;
}

/* ─── Drop cap italique en sangue di bue ─── */
.drop-cap::first-letter {
    font-family: var(--font-display);
    font-style: italic;
    font-weight: 600;
    color: var(--terra);
    float: left;
    font-size: 3.95em;
    line-height: 0.72;
    padding: 0.06em 0.12em 0 0;
    margin: 0.02em 0.04em 0 0;
}

/* ─── Liens texte : underline draw gauche→droite ─── */
.link-draw,
.contatti__coords a,
.footer__col a {
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0 1px;
    transition: background-size var(--dur) var(--ease-out), color var(--dur-fast) ease;
    padding-bottom: 1px;
}
.link-draw:hover,
.contatti__coords a:hover,
.footer__col a:hover {
    background-size: 100% 1px;
    color: var(--terra);
}

/* ─── Petites capitales pour labels divers ─── */
.smallcaps {
    font-variant: small-caps;
    letter-spacing: 0.05em;
}

/* paragraphes confortables */
p { max-width: 68ch; }
