/* One editorial heading system for the homepage. The hero, AI workspace,
 * contact banner, card headings and footer retain their own compositions. */
body.homepage-refresh-page {
    --homepage-heading-ink: #3b4173;
    --homepage-heading-accent: #c1492e;
    --homepage-heading-size: 44px;
    --homepage-heading-shell: min(1268px, calc(100vw - 24px));
    --homepage-heading-gap: 32px;
}

body.homepage-refresh-page :is(
    #main-content #voices-title,
    #main-content #services-title,
    .homepage-portfolio-showcase #portfolio-title,
    #about #about-title,
    #voice-categories #voice-categories-title,
    #calc #calculator-title,
    #advantages .headers__title,
    #guarantees #guarantees-title,
    #stages #homepage-process-title,
    .homepage-trust-blocks #reviews h2,
    .homepage-trust-blocks #clients h2,
    #recording-guide #recording-guide-title
) {
    margin: 0;
    padding: 0;
    max-width: none;
    color: var(--homepage-heading-ink) !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: var(--homepage-heading-size) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: -.035em !important;
    text-align: left !important;
    text-transform: none;
    text-wrap: pretty;
}

body.homepage-refresh-page #about #about-title span { color: inherit !important; }

/* Remove the old centred divider treatment rather than leaving an orphaned
 * line in the middle after moving its heading to the left. */
body.homepage-refresh-page :is(
    #main-content #voices-title,
    #main-content #services-title,
    .homepage-portfolio-showcase #portfolio-title,
    #about #about-title,
    #voice-categories #voice-categories-title,
    #calc #calculator-title,
    #advantages .headers__title,
    #guarantees #guarantees-title,
    #stages #homepage-process-title,
    .homepage-trust-blocks #reviews h2,
    .homepage-trust-blocks #clients h2,
    #recording-guide #recording-guide-title
)::after { display: none !important; }

body.homepage-refresh-page :is(
    #main-content .section-heading,
    #about .s-about__headers,
    #calc .s-calc-cost__headers,
    #advantages .s-advantages__headers,
    #guarantees .kg-guarantees-documents__intro,
    #voice-categories .homepage-voice-categories__heading
) { text-align: left; }

body.homepage-refresh-page :is(
    #main-content .section-heading .kicker,
    #about .headers__pretitle,
    #calc .headers__pretitle,
    #advantages .headers__pretitle,
    #voice-categories .homepage-voice-categories__heading .homepage-voice-categories__kicker,
    .homepage-trust-blocks #reviews .kg-kicker,
    .homepage-trust-blocks #clients .kg-kicker
) {
    margin-top: 0;
    margin-bottom: 12px !important;
    padding: 0;
    color: var(--homepage-heading-accent) !important;
    font: 700 12px/1.4 Roboto, Arial, sans-serif !important;
    letter-spacing: .16em !important;
    text-align: left;
    text-transform: uppercase;
}
body.homepage-refresh-page :is(#about, #calc, #advantages) .headers__pretitle::after { display: none !important; }

/* The speaker eyebrow is generated by the original component, not an HTML
 * paragraph. Give it the same role without replacing its existing wording. */
body.homepage-refresh-page #main-content #voices-title { row-gap: 12px; }
body.homepage-refresh-page #main-content #voices-title::before {
    color: var(--homepage-heading-accent) !important;
    font: 700 12px/1.4 Roboto, Arial, sans-serif !important;
    letter-spacing: .16em !important;
    text-align: left;
}

/* Sentence case is presentation only; the original heading text stays intact. */
body.homepage-refresh-page #main-content #services-title { text-transform: lowercase; }
body.homepage-refresh-page #main-content #services-title::first-letter { text-transform: uppercase; }

body.homepage-refresh-page #main-content .section-heading,
body.homepage-refresh-page #voice-categories .homepage-voice-categories__heading {
    margin-bottom: var(--homepage-heading-gap);
}
body.homepage-refresh-page #about .homepage-about__scene { row-gap: var(--homepage-heading-gap); }
body.homepage-refresh-page .homepage-trust-blocks #reviews .kg-review-grid { margin-top: var(--homepage-heading-gap); }

/* The papers stay centred in their existing scene. Only the heading uses
 * the full page column, independent of that narrower illustration wrapper. */
body.homepage-refresh-page #guarantees .kg-guarantees-documents__intro {
    box-sizing: border-box;
    width: var(--homepage-heading-shell);
    margin-inline: calc((100% - var(--homepage-heading-shell)) / 2);
    margin-bottom: var(--homepage-heading-gap);
}
body.homepage-refresh-page #guarantees .kg-guarantees-documents__intro > p {
    margin: 16px 0 0;
    text-align: left;
    text-wrap: pretty;
}
body.homepage-refresh-page #advantages .s-advantages__headers { margin-bottom: var(--homepage-heading-gap); }
body.homepage-refresh-page #advantages .headers__subtitle {
    margin: 16px 0 0;
    text-align: left;
}
body.homepage-refresh-page #calc .headers__subtitle { margin-top: 18px; }
body.homepage-refresh-page #stages #homepage-process-title { margin-bottom: var(--homepage-heading-gap); }
body.homepage-refresh-page #recording-guide #recording-guide-title { margin-bottom: var(--homepage-heading-gap); }

body.homepage-refresh-page .homepage-portfolio-showcase .kg-portfolio-showcase__tabs {
    justify-content: flex-start;
    margin-top: var(--homepage-heading-gap);
}
body.homepage-refresh-page .homepage-trust-blocks #reviews .kg-intro { margin: 16px 0 0; text-align: left; }
body.homepage-refresh-page .homepage-trust-blocks #clients .kg-intro { margin-top: 16px !important; text-align: left; }

/* Existing two-column blocks keep their internal layout; use the same outer
 * shell so their headings begin on the same page axis. */
@media (min-width: 901px) {
    body.homepage-refresh-page .homepage-trust-blocks .kg-wrap {
        width: var(--homepage-heading-shell);
        max-width: none;
    }
    body.homepage-refresh-page .homepage-portfolio-showcase .kg-portfolio-showcase__inner {
        width: var(--homepage-heading-shell);
        max-width: none;
        margin-inline: calc((100% - var(--homepage-heading-shell)) / 2);
    }
}

@media (max-width: 900px) {
    body.homepage-refresh-page { --homepage-heading-shell: calc(100vw - 48px); }
    body.homepage-refresh-page :is(
        #about .s-about__container,
        #calc .s-calc-cost__container,
        #advantages .s-advantages__container,
        #stages .s-stages__container,
        .homepage-trust-blocks .kg-wrap
    ) {
        box-sizing: border-box;
        width: var(--homepage-heading-shell);
        max-width: none;
        margin-inline: auto;
        padding-inline: 0;
    }
}
@media (max-width: 700px) {
    body.homepage-refresh-page {
        --homepage-heading-shell: calc(100vw - 32px);
        --homepage-heading-size: 32px;
    }
    body.homepage-refresh-page #voice-categories .homepage-voice-categories__inner { width: var(--homepage-heading-shell); }
    body.homepage-refresh-page #main-content :is(#voices, #services, #ai-services) > .shell { width: var(--homepage-heading-shell); padding-inline: 0; }
    body.homepage-refresh-page .homepage-portfolio-showcase .kg-portfolio-showcase {
        padding-inline: 16px;
    }
}
