/* ============================================
   Responsive Breakpoints — Mobile First
   ============================================ */

/* Small: up to 671px */
@media (max-width: 671px) {
  .nav-toggle { display: flex; }

  .nav-menu {
    display: none;
    position: absolute;
    top: 56px; left: 0; right: 0;
    background: var(--cds-layer);
    flex-direction: column;
    border-bottom: 1px solid var(--cds-border-subtle);
    box-shadow: var(--shadow-md);
    z-index: 999;
  }

  .nav-menu.open { display: flex; }

  .nav-menu a {
    padding: var(--spacing-05) var(--spacing-06);
    border-bottom: 1px solid var(--cds-border-subtle);
    border-left: 3px solid transparent;
  }

  .nav-menu a:hover, .nav-menu a.active {
    border-bottom-color: var(--cds-border-subtle);
    border-left-color: var(--gov-navy);
  }

  .gov-masthead__logos { display: none; }
  .gov-masthead__country { font-size: 0.9375rem; }
  .coat-of-arms svg { width: 40px; height: 40px; }

  .hero { padding: var(--spacing-09) 0; }
  .hero__grid { grid-template-columns: 1fr; }
  .hero__title { font-size: 1.75rem; }
  .hero__description { font-size: 1rem; }
  .hero__aside { display: none; }

  .stats-strip__grid { grid-template-columns: repeat(2, 1fr); }
  .stat-card__number { font-size: 1.75rem; }

  .sdg-grid { grid-template-columns: repeat(3, 1fr); }
  .news-grid { grid-template-columns: 1fr; }

  .about-preview .container { grid-template-columns: 1fr; }
  .about-preview__image { height: 200px; }

  .footer__logos-bar { gap: var(--spacing-06); flex-wrap: wrap; }
  .footer__logo-item span { display: none; }
  .footer__grid { grid-template-columns: 1fr; gap: var(--spacing-09); }
  .footer__bottom { flex-direction: column; gap: var(--spacing-03); text-align: center; }

  .page-hero__title { font-size: 1.625rem; }
  .page-hero__description { font-size: 1rem; }

  .content-grid, .content-grid--3, .content-grid--4 { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .sdg-detail-grid { grid-template-columns: 1fr; }
  .partners__logos { gap: var(--spacing-05); }
  .partner-logo { width: 80px; height: 44px; }

  .filter-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* Medium: 672px to 1055px */
@media (min-width: 672px) and (max-width: 1055px) {
  .nav-toggle { display: flex; }

  .nav-menu {
    display: none;
    position: absolute;
    top: 56px; left: 0; right: 0;
    background: var(--cds-layer);
    flex-direction: column;
    border-bottom: 1px solid var(--cds-border-subtle);
    box-shadow: var(--shadow-md);
    z-index: 999;
  }

  .nav-menu.open { display: flex; }

  .nav-menu a {
    padding: var(--spacing-05) var(--spacing-06);
    border-bottom: 1px solid var(--cds-border-subtle);
    border-left: 3px solid transparent;
  }

  .nav-menu a:hover, .nav-menu a.active {
    border-bottom-color: var(--cds-border-subtle);
    border-left-color: var(--gov-navy);
  }

  .hero__grid { grid-template-columns: 1fr 320px; }
  .hero__title { font-size: 2.25rem; }
  .sdg-grid { grid-template-columns: repeat(4, 1fr); }
  .news-grid { grid-template-columns: repeat(2, 1fr); }
  .content-grid--3 { grid-template-columns: repeat(2, 1fr); }
  .content-grid--4 { grid-template-columns: repeat(2, 1fr); }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .footer__grid { grid-template-columns: repeat(2, 1fr); }
}

/* Large: 1056px+ */
@media (min-width: 1056px) {
  .nav-toggle { display: none; }
  .nav-menu { display: flex !important; }
  .sdg-grid { grid-template-columns: repeat(6, 1fr); }
}

/* XLarge: 1312px+ */
@media (min-width: 1312px) {
  .container { max-width: 1280px; }
}