/* ========================================
   BMW USA — Responsive Overrides
   Source: BUILD_PLAN §6, §12
   ======================================== */

/* ===== < 480px ===== */
@media (max-width: 479px) {
  .container { padding: 0 12px; }

  .hero__headline { font-size: 1.5rem; }
  .hero__actions .cmp-button--box { width: 100%; justify-content: center; }

  .teaser-section__content { padding: 24px 16px; }
  .teaser-section__title { font-size: 1.25rem; }

  .cmp-modelnavigationcard { min-width: 90px; padding: 6px 8px; }
  .cmp-modelnavigationcard__image { width: 80px; height: 60px; }
}

/* ===== 480 - 719px ===== */
@media (min-width: 480px) and (max-width: 719px) {
  .hero__headline { font-size: 2rem; }

  .offers-grid { grid-template-columns: 1fr; }
  .vehicle-teaser-row { grid-template-columns: 1fr; }
}

/* ===== 720 - 959px ===== */
@media (min-width: 720px) and (max-width: 959px) {
  .offers-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-legal-links { grid-template-columns: repeat(2, 1fr); }
  .cmp-modelnavigation { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
}

/* ===== Navigation switch at 890px ===== */
@media (max-width: 890px) {
  .cmp-globalnavigation__primary { display: none; }
  .cmp-globalnavigation__item--tablet-down { display: flex; }

  .cmp-globalnavigation__flyout { display: none; }

  .cmp-globalnavigation__container { padding: 0 16px; }
  .cmp-globalnavigation { height: var(--nav-height-mobile); }
  .cmp-globalnavigation__logo img { width: 44px; height: 44px; }
}

/* ===== 960 - 1199px ===== */
@media (min-width: 960px) and (max-width: 1199px) {
  .teaser-section { grid-template-columns: 1fr 1fr; }
  .offers-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-legal-links { grid-template-columns: repeat(3, 1fr); }
  .cmp-modelnavigation { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); }
}

/* ===== 1200 - 1439px ===== */
@media (min-width: 1200px) and (max-width: 1439px) {
  .offers-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-legal-links { grid-template-columns: repeat(4, 1fr); }
  .cmp-modelnavigation { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
  .container { padding: 0 32px; }
}

/* ===== 1440px+ ===== */
@media (min-width: 1440px) {
  .footer-legal-links { grid-template-columns: repeat(4, 1fr); }
  .cmp-modelnavigation { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
  .container { padding: 0 40px; }
  .hero__headline { font-size: var(--headline-1-size); }
}

/* ===== 2000px+ (Ultra-wide) ===== */
@media (min-width: 2000px) {
  .container { max-width: 2000px; }
  .hero__headline { font-size: 4.5rem; }
  .cmp-globalnavigation__container { max-width: 2000px; }
}
