/* ==========================================================================
   SEO heading-level preservation
   --------------------------------------------------------------------------
   The Astra theme sizes headings BY TAG, and h1-h3 (Cinzel serif, 400) differ
   from h4-h6 (Montserrat sans-serif, 600). Re-tagging elements to produce a
   valid document outline would therefore change their appearance.

   Each element that was re-tagged for outline correctness carries a
   .seo-as-hN class restoring the metrics of its ORIGINAL tag.

   Class is doubled (.seo-as-hN.seo-as-hN => specificity 0,2,0) so it beats
   the theme's `.entry-content :where(hN)` selector (0,1,0) regardless of
   stylesheet order, without resorting to !important.

   Per-block Spectra rules (.wp-block-uagb-advanced-heading.uagb-block-XXX
   .uagb-heading-text, 0,3,0) intentionally still win over these.

   Breakpoints mirror the theme's own: base / max-width:921px / max-width:544px.
   Margins are deliberately NOT set here - .uagb-heading-text{margin:0} (0,2,0)
   and the per-block margin rules already cover the re-tagged elements.
   ========================================================================== */

/* --- was <h2> : Cinzel 400, 40px --------------------------------------- */
.seo-as-h2.seo-as-h2 {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 400;
    font-family: 'Cinzel', serif;
    line-height: 1.3em;
    text-transform: uppercase;
}

/* --- was <h3> : Cinzel 400, 32px --------------------------------------- */
.seo-as-h3.seo-as-h3 {
    font-size: 32px;
    font-size: 2rem;
    font-weight: 400;
    font-family: 'Cinzel', serif;
    line-height: 1.3em;
    text-transform: uppercase;
}

/* --- was <h4> : Montserrat 600, 22px ----------------------------------- */
.seo-as-h4.seo-as-h4 {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.2em;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
}

/* --- was <h5> : Montserrat 600, 18px ----------------------------------- */
.seo-as-h5.seo-as-h5 {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.2em;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
}

@media (max-width: 921px) {
    .seo-as-h2.seo-as-h2 { font-size: 36px; }
    .seo-as-h3.seo-as-h3 { font-size: 30px; }
    .seo-as-h4.seo-as-h4 { font-size: 20px; font-size: 1.25rem; }
    .seo-as-h5.seo-as-h5 { font-size: 16px; font-size: 1rem; }
}

@media (max-width: 544px) {
    .seo-as-h2.seo-as-h2 { font-size: 32px; }
    .seo-as-h3.seo-as-h3 { font-size: 24px; }
    .seo-as-h4.seo-as-h4 { font-size: 18px; font-size: 1.125rem; }
    .seo-as-h5.seo-as-h5 { font-size: 14px; font-size: 0.875rem; }
}
