/**
 * IB Editorial Theme 1.0.48
 * Editorial Single Typography Bridge.
 *
 * Loaded after article, interview and expert layout styles so the Global
 * Design System is the real typography source for single-material pages.
 */

/* --------------------------------------------------------------------------
   Material titles — one global H1 role across ordinary articles, INT and EXP.
   Layout-specific variables remain as safe maximums so a format cannot break
   when a very large global size is selected.
   -------------------------------------------------------------------------- */
body.ib-et .ib-single-template .ib-article-hero-copy > h1,
body.ib-et .ib-interview-system .ib-int-title,
body.ib-et .ib-expert-system .ib-exp-title {
    font-family: var(--ib-display, var(--ib-serif, Georgia, serif)) !important;
    font-weight: var(--ib-h1-weight, 400) !important;
    line-height: var(--ib-h1-line-height, .95) !important;
    letter-spacing: var(--ib-heading-letter-spacing, -.02em) !important;
    text-transform: var(--ib-heading-transform, none) !important;
    color: var(--ib-h1-color, var(--ib-text, #050505)) !important;
}

body.ib-et .ib-single-template .ib-article-hero-copy > h1 {
    font-size: var(--ib-h1-size, 92px) !important;
}

body.ib-et .ib-interview-system .ib-int-title {
    font-size: clamp(42px, 5.6vw, min(var(--ib-h1-size, 92px), var(--ib-int-title-size, 78px))) !important;
}

body.ib-et .ib-interview-system.ib-interview-layout--int-03 .ib-int-title {
    font-size: clamp(42px, 5.2vw, min(var(--ib-h1-size, 92px), var(--ib-int-title-size, 78px), 76px)) !important;
}

body.ib-et .ib-expert-system .ib-exp-title {
    font-size: clamp(42px, 5vw, min(var(--ib-h1-size, 92px), var(--ib-exp-title-size, 76px))) !important;
}

/* --------------------------------------------------------------------------
   Deck / preview — one editable role for article previews and format decks.
   Alignment, maximum width and composition remain controlled by each layout.
   -------------------------------------------------------------------------- */
body.ib-et :is(
    .ib-single-template .ib-article-deck,
    .ib-interview-system .ib-int-deck,
    .ib-expert-system .ib-exp-deck
) {
    font-family: var(--ib-deck-font, var(--ib-sans, Arial, sans-serif)) !important;
    font-size: var(--ib-deck-size, 22px) !important;
    font-weight: var(--ib-deck-weight, 600) !important;
    line-height: var(--ib-deck-line-height, 1.45) !important;
    letter-spacing: var(--ib-deck-letter-spacing, 0em) !important;
    color: var(--ib-deck-color, var(--ib-muted, #5f5f5f)) !important;
}

/* --------------------------------------------------------------------------
   Quotes — standard article blockquotes, interview featured/inline quotes and
   expert pull quotes now share the same global role.
   -------------------------------------------------------------------------- */
body.ib-et :is(
    .ib-single-template .ib-article-content blockquote,
    .ib-interview-system .ib-int-story blockquote,
    .ib-interview-system .ib-int-featured-quote p,
    .ib-interview-system .ib-interview-inline-quote,
    .ib-expert-system .ib-exp-story blockquote,
    .ib-expert-system .ib-exp-block-pullquote p
) {
    font-family: var(--ib-quote-font, var(--ib-serif, Georgia, serif)) !important;
    font-size: var(--ib-quote-size, 36px) !important;
    font-weight: var(--ib-quote-weight, 400) !important;
    line-height: var(--ib-quote-line-height, 1.20) !important;
    letter-spacing: var(--ib-quote-letter-spacing, -.01em) !important;
    color: var(--ib-quote-color, var(--ib-text, #050505)) !important;
}

/* Quote wrappers inherit the selected color so borders stay coordinated. */
body.ib-et :is(
    .ib-interview-system .ib-int-featured-quote,
    .ib-interview-system .ib-interview-inline-quote,
    .ib-expert-system .ib-exp-block-pullquote
) {
    color: var(--ib-quote-color, var(--ib-text, #050505)) !important;
}

@media (max-width: 900px) {
    body.ib-et .ib-single-template .ib-article-hero-copy > h1 {
        font-size: var(--ib-h1-mobile-size, 46px) !important;
    }

    body.ib-et .ib-interview-system .ib-int-title,
    body.ib-et .ib-interview-system.ib-interview-layout--int-03 .ib-int-title {
        font-size: min(var(--ib-h1-mobile-size, 46px), var(--ib-int-title-mobile, 42px)) !important;
    }

    body.ib-et .ib-expert-system .ib-exp-title {
        font-size: min(var(--ib-h1-mobile-size, 46px), var(--ib-exp-title-mobile, 40px)) !important;
    }

    body.ib-et :is(
        .ib-single-template .ib-article-deck,
        .ib-interview-system .ib-int-deck,
        .ib-expert-system .ib-exp-deck
    ) {
        font-size: var(--ib-deck-mobile-size, 18px) !important;
    }

    body.ib-et :is(
        .ib-single-template .ib-article-content blockquote,
        .ib-interview-system .ib-int-story blockquote,
        .ib-interview-system .ib-int-featured-quote p,
        .ib-interview-system .ib-interview-inline-quote,
        .ib-expert-system .ib-exp-story blockquote,
        .ib-expert-system .ib-exp-block-pullquote p
    ) {
        font-size: var(--ib-quote-mobile-size, 27px) !important;
    }
}
