@media (max-width: 1024px) {
    .matches-grid { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
    .lineups-container { grid-template-columns: 1fr; }
    .content-area { flex-direction: column; }
    .site-sidebar { width: 100%; }
}

@media (max-width: 768px) {
    :root { --mm-header-h: var(--mm-header-h-mobile); }
    .main-nav { display: none; }
    .main-nav.open { display: flex; flex-direction: column; position: absolute; top: var(--mm-header-h-mobile); left: 0; right: 0; background: var(--mm-bg-nav); border-bottom: 1px solid var(--mm-border); padding: 15px 20px; gap: 0; z-index: 999; }
    .main-nav.open > li > a { padding: 12px 16px; }
    .main-nav .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: none; padding-left: 15px; display: none; }
    .main-nav .sub-menu.open { display: block; }
    .mobile-menu-toggle { display: flex; }
    .header-search { display: none; }
    .header-search.mobile-open { display: block; position: absolute; top: var(--mm-header-h-mobile); left: 0; right: 0; padding: 10px 20px; background: var(--mm-bg-nav); border-bottom: 1px solid var(--mm-border); z-index: 999; }
    .header-search.mobile-open input { width: 100%; }
    .matches-grid { grid-template-columns: 1fr; }
    .posts-grid { grid-template-columns: 1fr; }
    .match-hero { padding: 25px 15px; }
    .match-hero-score { gap: 15px; }
    .match-hero-score-display { font-size: 32px; }
    .match-hero-team .team-logo { width: 55px; height: 55px; font-size: 24px; }
    .match-hero-team .team-name { font-size: 14px; }
    .section-header { flex-direction: column; align-items: flex-start; }
    .date-nav { width: 100%; overflow-x: auto; }
    .mobile-bottom-nav { display: flex; }
    .site-footer { padding-bottom: 70px; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; gap: 10px; text-align: center; }
    .entry-title { font-size: 22px; }
    .match-hero-score-display .separator { font-size: 24px; }
    .match-info-grid { grid-template-columns: repeat(2, 1fr); }
    .mm-ad-popup { padding: 20px; max-width: 95%; }
}

@media (max-width: 480px) {
    .match-team-logo { width: 40px; height: 40px; }
    .match-team-name { font-size: 12px; }
    .match-score-numbers { font-size: 22px; }
    .match-hero-score-display { font-size: 26px; }
    .stream-buttons { flex-wrap: wrap; }
    .stream-player { aspect-ratio: 4 / 3; }
    .match-tabs { gap: 2px; }
    .match-tab { padding: 8px 12px; font-size: 12px; }
    .mm-countdown-timer { gap: 10px; }
    .mm-countdown-value { font-size: 24px; min-width: 35px; }
}
