/* Keep text and section edges aligned on small screens. */
@media (max-width: 768px) {
    .site-shell .media-filters {
        flex-wrap: nowrap;
        gap: 6px;
        max-width: 100%;
        overflow-x: auto;
        padding-block: 4px 8px;
        margin-bottom: 24px;
    }

    .site-shell .media-filters button {
        flex: 0 0 auto;
        padding: 7px 10px;
        min-height: 36px;
        font-size: .75rem;
        line-height: 1.4;
        white-space: nowrap;
    }

    body:not(.site-shell) .hero-content,
    body:not(.site-shell) .features-section,
    body:not(.site-shell) .about,
    body:not(.site-shell) .services,
    body:not(.site-shell) .home-portfolio,
    body:not(.site-shell) .idea-section {
        padding-inline: 24px;
    }

    body:not(.site-shell) .about .about-text h2 {
        width: 100%;
        margin-inline: auto;
        text-align: center;
    }

    body:not(.site-shell) .features-section h2.section-title,
    body:not(.site-shell) .about .about-text h2,
    body:not(.site-shell) .services h2.services-title,
    body:not(.site-shell) .home-portfolio h2.section-title,
    body:not(.site-shell) .partners-showcase h2.section-title,
    body:not(.site-shell) .idea-section h2.idea-title {
        font-size: 1.75rem;
        line-height: 1.4;
    }

    body:not(.site-shell) .about .enmar-section-kicker-start {
        margin-inline: auto;
        justify-content: center;
        text-align: center;
    }

    body:not(.site-shell) .partners-showcase .section-header {
        padding-inline: 24px;
    }

    body.site-shell .page-hero,
    body.site-shell:not(.portfolio-page):not(.media-page) .page-hero,
    body.site-shell .content,
    body.site-shell .portfolio-hero,
    body.site-shell .portfolio-showcase,
    body.site-shell .media-hero,
    body.site-shell .media-content {
        width: min(calc(100% - 48px), 1180px);
        margin-inline: auto;
        padding-inline: 0;
    }

    body.site-shell .article-detail {
        width: min(calc(100% - 48px), 800px);
        margin-inline: auto;
        padding-inline: 0;
    }
}
