/* ============================================================
   MISSION MARRIAGE — RESPONSIVE.CSS v3.1
   Single source of truth. Loaded last.
============================================================ */
*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: hidden; max-width: 100%; }
img, video, iframe, embed, object, svg { max-width: 100%; height: auto; display: block; }
table { width: 100%; display: block; overflow-x: auto; }

@media (max-width: 1024px) {
  .container { padding-inline: 1.5rem; }
  .mm-main   { padding-top: 68px; }
  .mm-nav { display: none !important; }
  .mm-header__burger { display: flex !important; }
  .mm-hero { min-height: auto; padding: 5rem 0 3rem; }
  .mm-hero__container { grid-template-columns: 1fr !important; gap: 2rem; }
  .mm-hero__visual { display: none !important; }
  .mm-hero__heading { font-size: clamp(2rem, 5vw, 3.2rem); }
  .mm-cards-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 1.25rem; }
  .mm-sc-card--featured { transform: none !important; }
  .mm-sc-hub-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 1.25rem; }
  .mm-sc-hub-grid > div:last-child { grid-column: 1 / -1; max-width: 440px; margin-inline: auto; width: 100%; }
  .mm-sc-hub-card--featured { transform: none !important; }
  .mm-optin__inner { grid-template-columns: 1fr !important; gap: 2.5rem; }
  .mm-about__inner { grid-template-columns: 1fr !important; max-width: 580px; margin-inline: auto; }
  .mm-testimonial-card { flex: 0 0 calc(50% - .75rem) !important; }
  .mm-stats-row { grid-template-columns: repeat(2, 1fr); }
  .mm-webinar__inner { grid-template-columns: 1fr !important; }
  .mm-webinar__visual { display: none !important; }
  .mm-resources__grid { grid-template-columns: 1fr !important; }
  .mm-footer__grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .mm-footer__cta-inner { grid-template-columns: 1fr !important; gap: 1.5rem; }
  .mm-results-grid { grid-template-columns: 1fr !important; }
  .mm-results-sidebar { position: static !important; }
  .mm-results-top-row { grid-template-columns: 1fr !important; }
  .mm-scl-hero__inner { grid-template-columns: 1fr !important; gap: 2rem; }
  .mm-scl-dims-grid { grid-template-columns: repeat(3, 1fr) !important; }
  .mm-scl-for__inner { grid-template-columns: 1fr 1fr !important; }
  .mm-final-cta { padding: 4rem 0; }
  .mm-final-cta__actions .btn { flex: 0 1 auto; max-width: 280px; justify-content: center; }
}

@media (max-width: 768px) {
  .mm-section  { padding-block: 3.5rem; }
  .section-pad { padding-block: 3rem; }
  h1 { font-size: clamp(1.8rem, 7vw, 2.8rem) !important; }
  h2 { font-size: clamp(1.4rem, 5vw, 2rem) !important; }
  h3 { font-size: clamp(1.15rem, 4vw, 1.5rem) !important; }
  .mm-about__creds { grid-template-columns: 1fr; gap: .5rem; }
  .mm-optin__row { grid-template-columns: 1fr !important; }
  .mm-scl-dims-grid { grid-template-columns: 1fr 1fr !important; }
  .mm-scl-for__inner { grid-template-columns: 1fr !important; }
  .mm-scl-btn { justify-content: center; width: 100%; }
  .mm-scl-hero__actions { align-items: stretch; }
  .mm-sc-optin__fields { grid-template-columns: 1fr !important; gap: 1rem; }
  .mm-blog-grid, .mm-grid { grid-template-columns: 1fr !important; }
  .js-ready [data-reveal] { opacity: 1 !important; transform: none !important; transition: none !important; }
}

@media (max-width: 640px) {
  .container { padding-inline: 1.1rem !important; }
  .mm-main   { padding-top: 64px; }
  .mm-header__actions .btn:first-child { display: none !important; }
  .mm-header__logo-tag  { display: none !important; }
  .mm-header__logo-name { font-size: .9rem !important; max-width: 140px !important; }
  .mm-header__logo-mark { width: 34px !important; height: 34px !important; }
  .mm-hero { padding: 3.5rem 0 2.5rem !important; }
  .mm-hero__heading { font-size: clamp(1.8rem, 8vw, 2.5rem) !important; }
  .mm-hero__actions { flex-direction: column !important; gap: .75rem !important; }
  .mm-hero__actions .btn { width: 100% !important; justify-content: center !important; }
  .mm-section  { padding-block: 3rem !important; }
  .section-pad { padding-block: 2.5rem !important; }
  .mm-cards-grid { grid-template-columns: 1fr !important; max-width: 400px; margin-inline: auto; }
  .mm-sc-hub-grid { grid-template-columns: 1fr !important; gap: 1rem !important; }
  .mm-sc-hub-grid > div { transform: none !important; }
  .mm-sc-hub-grid > div:last-child { grid-column: auto !important; max-width: 100% !important; margin-inline: 0 !important; }
  .mm-stats-row { grid-template-columns: repeat(2, 1fr) !important; gap: .75rem; }
  .mm-testimonial-card { flex: 0 0 100% !important; }
  .mm-final-cta { padding: 3.5rem 0 !important; }
  .mm-final-cta__heading { font-size: clamp(1.5rem, 7vw, 2rem) !important; }
  .mm-final-cta__actions { flex-direction: column !important; align-items: center !important; gap: .75rem !important; }
  .mm-final-cta__actions .btn { width: auto !important; min-width: 200px !important; max-width: 300px !important; justify-content: center !important; white-space: nowrap !important; }
  .mm-footer__grid { grid-template-columns: 1fr !important; gap: 1.5rem !important; }
  .mm-footer__cta-btns { flex-direction: column !important; }
  .mm-footer__cta-btns .btn { width: 100% !important; justify-content: center !important; }
  .mm-footer__bottom-inner { flex-direction: column !important; text-align: center !important; gap: .75rem !important; }
  .mm-footer__subscribe { flex-direction: column !important; }
  .mm-footer__email-input { width: 100% !important; }
  .mm-grid { grid-template-columns: 1fr !important; }
  .mm-sc-options { grid-template-columns: repeat(5, 1fr) !important; }
  .mm-sc-opt { padding: .4rem .15rem !important; }
  .mm-sc-opt__num { width: 28px !important; height: 28px !important; font-size: .85rem !important; }
  .mm-sc-nav { flex-wrap: wrap !important; justify-content: center !important; }
  .mm-sc-optin__fields { grid-template-columns: 1fr !important; }
  .mm-sc-optin__field { width: 100% !important; }
  .mm-results-top-row { grid-template-columns: 1fr !important; gap: 1.25rem; }
  .mm-results-breakdown-card { padding: 1.5rem !important; }
  .mm-results-analysis-panel { padding: 1.5rem !important; }
  .mm-results-hero__inner { flex-direction: column !important; gap: 1.5rem !important; }
  .mm-results-meter svg { width: 150px !important; height: 150px !important; }
  .mm-results-grid { grid-template-columns: 1fr !important; }
  .mm-scl-dims-grid { grid-template-columns: 1fr !important; }
  .mm-scl-hero__title { font-size: clamp(1.5rem, 7vw, 2rem) !important; }
  .mm-scl-hero__visual { padding: 1.25rem !important; }
  .mm-scl-btn--lg { padding: 1rem 1.5rem !important; }
}

@media (max-width: 480px) {
  .container { padding-inline: .9rem !important; }
  .mm-hero { padding: 3rem 0 2rem !important; }
  .mm-hero__heading { font-size: clamp(1.65rem, 9vw, 2.2rem) !important; }
  .btn { font-size: .78rem !important; padding: .8rem 1.2rem !important; }
  .btn--lg { font-size: .82rem !important; padding: .9rem 1.4rem !important; }
  .mm-results-meter svg { width: 130px !important; height: 130px !important; }
}
