/* MaxiMoney LF — responsive overrides.
   The pages are inline-styled, so these rules use attribute selectors
   and !important to collapse fixed grids on narrow screens. */

@media (max-width: 900px) {
  /* major two-column page layouts */
  [style*="grid-template-columns:1.04fr .96fr"],
  [style*="grid-template-columns:.9fr 1.1fr"],
  [style*="grid-template-columns:.78fr 1.22fr"],
  [style*="grid-template-columns:1.3fr 1fr 1fr"],
  [style*="grid-template-columns:240px 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  /* card grids */
  [style*="grid-template-columns:repeat(3,1fr)"],
  [style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: 1fr 1fr !important;
  }

  /* side-by-side card pairs (excludes the bar chart, which stays 2-up) */
  [style*="grid-template-columns:1fr 1fr"]:not([style*="align-items:end"]):not([style*="padding-top:11px"]) {
    grid-template-columns: 1fr !important;
  }

  /* definition rows: label above value */
  [style*="grid-template-columns:190px 1fr"],
  [style*="grid-template-columns:210px 1fr"],
  [style*="grid-template-columns:130px 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  /* hero phone mock */
  [style*="width:340px"] {
    width: 100% !important;
    max-width: 340px !important;
    justify-self: start !important;
  }

  /* section rhythm */
  [style*="padding:96px 0"] { padding: 62px 0 !important; }
  [style*="padding:104px 0 96px"] { padding: 56px 0 62px !important; }
  [style*="padding:96px 0 104px"] { padding: 62px 0 68px !important; }
  [style*="padding:76px 26px 96px"] { padding: 52px 22px 68px !important; }
}

@media (max-width: 760px) {
  /* header: drop in-page section links, keep logo, Team and the CTA */
  header a[href^="#"]:not([href="#top"]) { display: none !important; }
  header nav { gap: 14px !important; }

  /* numbered legal sections: number above heading */
  [style*="grid-template-columns:52px 1fr"],
  [style*="grid-template-columns:56px 1fr"],
  [style*="grid-template-columns:64px 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  [style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
  }
}

@media (max-width: 640px) {
  [style*="font-size:66px"] { font-size: 40px !important; }
  [style*="font-size:60px"] { font-size: 36px !important; }
  [style*="font-size:56px"] { font-size: 37px !important; }
  [style*="font-size:52px"] { font-size: 34px !important; }
  [style*="font-size:48px"] { font-size: 32px !important; }
  [style*="font-size:44px"] { font-size: 30px !important; }
  [style*="font-size:42px"] { font-size: 29px !important; }
  [style*="font-size:40px"] { font-size: 30px !important; }
  [style*="font-size:38px"] { font-size: 28px !important; }
  [style*="font-size:34px"] { font-size: 26px !important; }
  [style*="font-size:30px"] { font-size: 25px !important; }

  [style*="grid-template-columns:repeat(3,1fr)"],
  [style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: 1fr !important;
  }

  main { padding-left: 20px !important; padding-right: 20px !important; }
  footer > div { padding-left: 20px !important; padding-right: 20px !important; }
  nav { padding-left: 20px !important; padding-right: 20px !important; }
}
