/* Core subpage hero balance — scoped corrections for verified first-screen issues. */

html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero .blog-hero-copy > .section-desc {
    width: 100% !important;
    max-width: 700px !important;
    margin: 4px 0 0 !important;
    padding: 20px 0 0 !important;
    border-top: 1px solid #dededb !important;
    text-align: left !important;
    text-wrap: pretty !important;
}

@media (min-width: 901px) {
    html.white-apple-theme:not(.page-home) body.page-services main#main-content > section.page-hero {
        min-height: 0 !important;
        padding: 92px 40px 72px !important;
    }

    html.white-apple-theme:not(.page-home) body.page-services main#main-content > section.page-hero > .section-container {
        grid-template-columns: minmax(0, 1.05fr) minmax(520px, .95fr) !important;
        column-gap: clamp(48px, 5vw, 64px) !important;
        align-items: start !important;
    }

    html.white-apple-theme:not(.page-home) body.page-services main#main-content > section.page-hero h1 {
        max-width: none !important;
        margin-top: 0 !important;
        font-size: clamp(54px, 4.5vw, 60px) !important;
        font-weight: 600 !important;
        line-height: .98 !important;
        letter-spacing: -.052em !important;
        text-wrap: balance !important;
    }

    html.white-apple-theme:not(.page-home) body.page-capabilities main#main-content > section.page-hero {
        min-height: 0 !important;
        padding: 88px 40px 72px !important;
    }

    html.white-apple-theme:not(.page-home) body.page-capabilities main#main-content > section.page-hero > .hero-grid {
        grid-template-columns: minmax(0, 1fr) minmax(520px, 1fr) !important;
        gap: clamp(48px, 5vw, 64px) !important;
        width: min(calc(100% - 80px), 1200px) !important;
        align-items: center !important;
    }

    html.white-apple-theme:not(.page-home) body.page-capabilities main#main-content > section.page-hero h1 {
        max-width: none !important;
        margin: 0 0 24px !important;
        font-size: clamp(55px, 4.55vw, 60px) !important;
        font-weight: 600 !important;
        line-height: .98 !important;
        letter-spacing: -.05em !important;
        text-wrap: balance !important;
    }
}

@media (max-width: 768px) {
    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero {
        min-height: 0 !important;
        padding: 48px 20px 52px !important;
        text-align: left !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero > .section-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        width: min(100%, 720px) !important;
        margin-inline: auto !important;
        text-align: left !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero .blog-hero-copy {
        order: 1 !important;
        width: 100% !important;
        gap: 16px !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero h1.section-title {
        max-width: 700px !important;
        margin: 0 !important;
        font-size: clamp(42px, 7.5vw, 54px) !important;
        font-weight: 600 !important;
        line-height: 1 !important;
        letter-spacing: -.05em !important;
        text-align: left !important;
        text-wrap: balance !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero .blog-hero-media {
        order: 2 !important;
        width: 100% !important;
        max-height: 320px !important;
        margin: 30px 0 0 !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 20px !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero .blog-hero-media img {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: 16 / 9 !important;
        object-fit: cover !important;
    }
}

@media (max-width: 480px) {
    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero {
        padding: 42px 20px 46px !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero h1.section-title {
        font-size: clamp(40px, 11.5vw, 48px) !important;
        line-height: 1.01 !important;
    }

    html.white-apple-theme:not(.page-home) body.page-blog main#main-content > section.blog-page-hero .blog-hero-media {
        max-height: 230px !important;
        margin-top: 26px !important;
        border-radius: 18px !important;
    }
}
