/* Shared phone and small-tablet finish for every public Zomblers surface. */
@media (max-width: 782px) {
    html {
        overflow-x: clip;
        scroll-padding-top: 78px;
    }

    body.zch-classic-theme {
        overflow-x: clip;
    }

    body.zch-classic-theme :where(*, *::before, *::after) {
        min-width: 0;
    }

    body.zch-classic-theme :where(img, video, canvas, svg, iframe) {
        max-width: 100%;
    }

    body.zch-classic-theme :where(iframe) {
        width: 100%;
    }

    body.zch-classic-theme :where(.site-main, .zw-main, .ztr-main) {
        width: 100%;
        overflow-x: clip;
    }

    body.zch-classic-theme :where(.alignwide) {
        width: min(calc(100% - 32px), 1180px) !important;
        max-width: min(calc(100% - 32px), 1180px) !important;
        margin-inline: auto !important;
    }

    body.zch-classic-theme .site-header__inner {
        width: 100%;
        min-height: 72px;
        padding: 9px 16px !important;
        gap: 10px;
    }

    body.zch-classic-theme .brand-lockup--official {
        max-width: min(58vw, 190px);
    }

    body.zch-classic-theme .brand-lockup--official :where(.custom-logo-link, .custom-logo) {
        max-width: 100% !important;
        max-height: 54px !important;
        object-fit: contain;
    }

    body.zch-classic-theme .zch-menu-toggle {
        display: grid;
        place-items: center;
        width: 46px;
        min-width: 46px;
        height: 46px;
        padding: 0;
        touch-action: manipulation;
    }

    body.zch-classic-theme .primary-nav {
        max-height: calc(100svh - 80px);
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    body.zch-classic-theme .primary-nav a,
    body.zch-classic-theme .header-actions a {
        min-height: 44px;
    }

    body.zch-classic-theme :where(.button, button, input[type="submit"], input[type="button"]) {
        min-height: 44px;
        touch-action: manipulation;
    }

    body.zch-classic-theme :where(h1, h2, h3, p, li, strong, span) {
        max-width: 100%;
    }

    body.zch-classic-theme :where(h1, h2, h3) {
        overflow-wrap: break-word;
        text-wrap: balance;
    }

    body.zch-classic-theme :where(p, li) {
        text-wrap: pretty;
    }

    body.zch-classic-theme :where(.zch-news-hero, .zch-teams-hero, .zch-match-center-hero, .zch-videos-hero, .zch-partners-hero, .zch-about-hero, .zw-hero, .ztr-hero) {
        padding-inline: 18px !important;
    }

    body.zch-classic-theme :where(.zch-news-hero, .zch-teams-hero, .zch-match-center-hero, .zch-videos-hero, .zch-partners-hero, .zch-about-hero, .zw-hero, .ztr-hero) h1 {
        max-width: 11ch;
        font-size: clamp(42px, 12vw, 68px) !important;
        line-height: .92 !important;
        letter-spacing: -.045em !important;
    }

    body.zch-classic-theme :where(.zch-news-lead-section, .zch-news-archive, .zch-newsletter-strip, .zch-teams-feature, .zch-teams-departments, .zch-teams-cta, .zch-match-center-next, .zch-match-history, .zch-videos-index, .zch-videos-feed-section, .zch-videos-closing, .zch-partner-lineup, .zch-partners-directory, .zch-partner-possibilities, .zch-partner-inquiry, .zch-about-snapshot, .zch-about-section, .zch-about-final, .zw-rail, .zw-broadcast, .zw-manifesto, .ztr-stats, .ztr-section, .ztr-honors, .ztr-cta) {
        padding-inline: 18px;
    }

    body.zch-classic-theme :where(.zch-news-lead-section, .zch-news-archive, .zch-teams-feature, .zch-teams-departments, .zch-match-history, .zch-videos-feed-section, .zch-partner-directory, .zch-about-section, .zw-broadcast, .zw-manifesto, .ztr-section, .ztr-honors) {
        padding-top: clamp(46px, 10vw, 72px);
        padding-bottom: clamp(46px, 10vw, 72px);
    }

    body.zch-classic-theme :where(.zch-newsroom, .zch-team-directory, .zch-match-center, .zch-videos, .zch-partner-showcase, .zch-about) :where(article, figure, [class*="card"], [class*="tile"]) {
        max-width: 100%;
    }

    body.zch-classic-theme :where(.zch-newsroom, .zch-team-directory, .zch-match-center, .zch-videos, .zch-partner-showcase, .zch-about) :where(article, [class*="card"]) :where(img, video) {
        width: 100%;
        height: auto;
    }

    body.zch-classic-theme :where(table) {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    body.zch-classic-theme :where(.wp-block-embed, .wp-block-video, .wp-block-image, figure) {
        max-width: 100%;
    }

    body.zch-classic-theme .site-footer__legal {
        row-gap: 10px;
    }

    body.zch-classic-theme .site-footer__legal :where(p, .site-footer__signoff) {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    /* Restore the homepage's compact team-selector treatment on phones. */
    body.home .z-dashboard-panel--teams .zc-team-shelf {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        height: auto !important;
        min-height: 0 !important;
        margin-right: 0 !important;
        padding-bottom: 0 !important;
        gap: 10px !important;
        overflow: visible !important;
        scroll-snap-type: none !important;
    }

    body.home .z-dashboard-panel--teams .zc-team-card {
        display: grid !important;
        grid-template-rows: auto !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 16px !important;
        gap: 4px !important;
        border: 1px solid rgba(140, 150, 179, .23) !important;
        background: linear-gradient(145deg, rgba(255, 255, 255, .025), transparent 55%), #071116 !important;
        scroll-snap-align: none !important;
    }

    body.home .z-dashboard-panel--teams .zc-team-card__media {
        display: none !important;
    }

    body.home .z-dashboard-panel--teams .zc-team-card__body {
        min-height: 0 !important;
        padding: 0 !important;
    }

    body.home .z-dashboard-panel--teams .zc-team-card__game {
        white-space: normal !important;
        font-size: clamp(15px, 4.6vw, 20px) !important;
        line-height: .98 !important;
    }

    body.home .z-dashboard-panel--teams :where(.zc-team-card__name, .zc-team-card__body small) {
        font-size: 9px !important;
        line-height: 1.25 !important;
    }
}

@media (max-width: 480px) {
    body.zch-classic-theme :where(.alignwide) {
        width: min(calc(100% - 24px), 1180px) !important;
        max-width: min(calc(100% - 24px), 1180px) !important;
    }

    body.zch-classic-theme .site-header__inner {
        min-height: 66px;
        padding-inline: 12px !important;
    }

    body.zch-classic-theme :where(.zch-news-hero, .zch-teams-hero, .zch-match-center-hero, .zch-videos-hero, .zch-partners-hero, .zch-about-hero, .zw-hero, .ztr-hero) {
        padding-inline: 14px !important;
    }

    body.zch-classic-theme :where(.zch-news-hero, .zch-teams-hero, .zch-match-center-hero, .zch-videos-hero, .zch-partners-hero, .zch-about-hero, .zw-hero, .ztr-hero) h1 {
        font-size: clamp(38px, 12.5vw, 58px) !important;
    }

    body.zch-classic-theme :where(.zch-news-lead-section, .zch-news-archive, .zch-newsletter-strip, .zch-teams-feature, .zch-teams-departments, .zch-teams-cta, .zch-match-center-next, .zch-match-history, .zch-videos-index, .zch-videos-feed-section, .zch-videos-closing, .zch-partner-lineup, .zch-partners-directory, .zch-partner-possibilities, .zch-partner-inquiry, .zch-about-snapshot, .zch-about-section, .zch-about-final, .zw-rail, .zw-broadcast, .zw-manifesto, .ztr-stats, .ztr-section, .ztr-honors, .ztr-cta) {
        padding-inline: 14px;
    }

    body.zch-classic-theme :where(.button, .wp-element-button) {
        white-space: normal;
        text-align: center;
    }
}

@media (max-width: 360px) {
    body.home .z-dashboard-panel--teams .zc-team-shelf {
        grid-template-columns: 1fr !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.zch-classic-theme *,
    body.zch-classic-theme *::before,
    body.zch-classic-theme *::after {
        scroll-behavior: auto !important;
    }
}
