/*
 * Typography – headings in Gelica, everything else in Archivo. Sizes step
 * up at 1100px. <em> in a heading is the Gelica italic, in cedar (oak on
 * dark grounds) – the theme's one flourish.
 */

/*
 * Gelica arrives from Adobe Fonts after the first paint (inc/load-assets.php).
 * Until then headings are in Georgia, scaled to Gelica's width and line
 * metrics, so the swap doesn't move anything on the page.
 */
@font-face {
    font-family: gelica-fallback;
    src: local("Georgia");
    size-adjust: 104.3%;
    ascent-override: 89.2%;
    descent-override: 24%;
    line-gap-override: 0%;
}

@font-face {
    font-family: gelica-fallback;
    font-style: italic;
    src: local("Georgia Italic"), local("Georgia-Italic");
    size-adjust: 97.6%;
    ascent-override: 95.2%;
    descent-override: 25.6%;
    line-gap-override: 0%;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    color: var(--color-graphite);
    text-wrap: balance;
}

h1 {
    font: var(--text-48gm);

    @media (min-width: 1100px) { font: var(--text-64gm); letter-spacing: -0.01em; }
}

h2 {
    font: var(--text-36gm);

    @media (min-width: 1100px) { font: var(--text-48gm); }
}

h3 {
    font: var(--text-24gm);

    @media (min-width: 1100px) { font: var(--text-28gm); }
}

h4 { font: var(--text-20gm); }

h5,
h6 {
    font: var(--text-15as);
    letter-spacing: 0.04em;
}

:is(h1, h2, h3, h4) em {
    font-style: italic;
    font-weight: 500;
    color: var(--color-cedar);
}

p { margin: 0; text-wrap: pretty; }

strong, b { font-weight: 600; }

small { font: var(--text-14ar); }

hr {
    height: 1px;
    margin: 0;
    background: var(--color-putty);
    border: 0;
}

blockquote { margin: 0; }

/* Font-size presets from theme.json – Gelica from Heading – small up. */
.has-x-large-font-size,
.has-xx-large-font-size,
.has-display-font-size {
    font-family: var(--font-gelica) !important;
    font-weight: 500;
    line-height: 1.1 !important;
}

.has-large-font-size { line-height: 1.6 !important; }
.has-small-font-size { line-height: 1.6 !important; }
