/* demo-mobile.css - generated mobile overrides for the 15 imported demos.
   Only active under 840px; desktop rendering is untouched. */
@media (max-width: 840px) {
  /* stack 2-3 track grids (split heroes, card rows, small footers) */
  [style*="grid-template-columns: 1.05fr 1fr"],
  [style*="grid-template-columns: 1.1fr 1fr"],
  [style*="grid-template-columns: 1.2fr 1fr"],
  [style*="grid-template-columns: 1.4fr 1fr 1fr"],
  [style*="grid-template-columns: 1.5fr 1fr 1fr"],
  [style*="grid-template-columns: 1fr 1.02fr"],
  [style*="grid-template-columns: 1fr 1.05fr"],
  [style*="grid-template-columns: 1fr 1fr"],
  [style*="grid-template-columns: 1fr 1fr auto"],
  [style*="grid-template-columns: 1fr 2fr 1fr"],
  [style*="grid-template-columns: 1fr auto"],
  [style*="grid-template-columns: 2fr 1fr 1fr"],
  [style*="grid-template-columns: auto 1fr"],
  [style*="grid-template-columns: auto 1fr auto"],
  [style*="grid-template-columns: repeat(3, 1fr)"] {
    grid-template-columns: 1fr !important;
  }
  /* 4+ track grids become 2-up (stats, products, coaches, categories) */
  [style*="grid-template-columns: 1.4fr 1fr 1fr 1.2fr"],
  [style*="grid-template-columns: 1.4fr 1fr 1fr 1fr auto"],
  [style*="grid-template-columns: 1.5fr 1fr 1fr 1.2fr"],
  [style*="grid-template-columns: 1.6fr 1fr 1fr 1fr"],
  [style*="grid-template-columns: repeat(4, 1fr)"],
  [style*="grid-template-columns: repeat(5, 1fr)"],
  [style*="grid-template-columns: repeat(6, 1fr)"] {
    grid-template-columns: 1fr 1fr !important;
  }
  /* center-logo navs stack */
  [style*="grid-template-columns: 1fr auto 1fr"] {
    display: flex !important; flex-direction: column !important;
    gap: 10px !important; text-align: center !important; padding: 12px 16px !important;
  }
  [style*="grid-template-columns: 1fr auto 1fr"] > div { justify-content: center !important; }
  /* HEZ class schedule: compress columns, keep all data */
  [style*="grid-template-columns: 120px 1fr 1fr 1fr 130px"] {
    grid-template-columns: 52px 1fr 1fr 1fr 64px !important;
  }
  [style*="grid-template-columns: 120px 1fr 1fr 1fr 130px"] > div {
    padding: 12px 6px !important; font-size: 11px !important; letter-spacing: 0 !important;
  }
  /* nav/link rows: wrap instead of overflowing */
  [style*="display: flex"][style*="gap: 24px"] { flex-wrap: wrap; row-gap: 10px; }
  [style*="display: flex"][style*="gap: 26px"] { flex-wrap: wrap; row-gap: 10px; }
  [style*="display: flex"][style*="gap: 28px"] { flex-wrap: wrap; row-gap: 10px; }
  [style*="display: flex"][style*="gap: 30px"] { flex-wrap: wrap; row-gap: 10px; }
  [style*="display: flex"][style*="gap: 32px"] { flex-wrap: wrap; row-gap: 10px; }
  [style*="display: flex"][style*="gap: 34px"] { flex-wrap: wrap; row-gap: 10px; }
  [style*="position: sticky"] [style*="display: flex"] { flex-wrap: wrap; justify-content: center; row-gap: 8px; }
  /* desktop paddings -> phone paddings */
  [style*="padding: 0px 40px 100px"] { padding: 0px 20px 56px 20px !important; }
  [style*="padding: 0px 44px 40px"] { padding: 0px 20px 40px 20px !important; }
  [style*="padding: 0px 46px"] { padding: 0px 20px 0px 20px !important; }
  [style*="padding: 100px 44px"] { padding: 56px 20px 56px 20px !important; }
  [style*="padding: 100px 44px 40px"] { padding: 56px 20px 40px 20px !important; }
  [style*="padding: 100px 46px"] { padding: 56px 20px 56px 20px !important; }
  [style*="padding: 110px 40px 90px"] { padding: 56px 20px 48px 20px !important; }
  [style*="padding: 110px 44px"] { padding: 56px 20px 56px 20px !important; }
  [style*="padding: 110px 46px"] { padding: 56px 20px 56px 20px !important; }
  [style*="padding: 110px 46px 40px"] { padding: 56px 20px 40px 20px !important; }
  [style*="padding: 110px 46px 70px"] { padding: 56px 20px 48px 20px !important; }
  [style*="padding: 110px 46px 90px"] { padding: 56px 20px 48px 20px !important; }
  [style*="padding: 120px 46px"] { padding: 56px 20px 56px 20px !important; }
  [style*="padding: 120px 46px 90px"] { padding: 56px 20px 48px 20px !important; }
  [style*="padding: 14px 44px"] { padding: 14px 20px 14px 20px !important; }
  [style*="padding: 15px 46px"] { padding: 15px 20px 15px 20px !important; }
  [style*="padding: 16px 40px"] { padding: 16px 20px 16px 20px !important; }
  [style*="padding: 16px 44px"] { padding: 16px 20px 16px 20px !important; }
  [style*="padding: 16px 46px"] { padding: 16px 20px 16px 20px !important; }
  [style*="padding: 18px 44px"] { padding: 18px 20px 18px 20px !important; }
  [style*="padding: 18px 46px"] { padding: 18px 20px 18px 20px !important; }
  [style*="padding: 20px 40px"] { padding: 20px 20px 20px 20px !important; }
  [style*="padding: 20px 44px"] { padding: 20px 20px 20px 20px !important; }
  [style*="padding: 20px 44px 100px"] { padding: 20px 20px 56px 20px !important; }
  [style*="padding: 20px 46px"] { padding: 20px 20px 20px 20px !important; }
  [style*="padding: 22px 44px"] { padding: 22px 20px 22px 20px !important; }
  [style*="padding: 26px 46px"] { padding: 26px 20px 26px 20px !important; }
  [style*="padding: 28px 40px"] { padding: 28px 20px 28px 20px !important; }
  [style*="padding: 40px 44px"] { padding: 40px 20px 40px 20px !important; }
  [style*="padding: 40px 46px 110px"] { padding: 40px 20px 56px 20px !important; }
  [style*="padding: 44px"] { padding: 32px 20px 32px 20px !important; }
  [style*="padding: 44px 46px"] { padding: 32px 20px 32px 20px !important; }
  [style*="padding: 50px 44px 100px"] { padding: 32px 20px 56px 20px !important; }
  [style*="padding: 60px 44px 36px"] { padding: 32px 20px 36px 20px !important; }
  [style*="padding: 60px 46px 0px"] { padding: 32px 20px 0px 20px !important; }
  [style*="padding: 60px 46px 36px"] { padding: 32px 20px 36px 20px !important; }
  [style*="padding: 64px 44px 36px"] { padding: 32px 20px 36px 20px !important; }
  [style*="padding: 64px 46px 0px"] { padding: 32px 20px 0px 20px !important; }
  [style*="padding: 64px 46px 36px"] { padding: 32px 20px 36px 20px !important; }
  [style*="padding: 64px 46px 40px"] { padding: 32px 20px 40px 20px !important; }
  [style*="padding: 64px 60px"] { padding: 32px 20px 32px 20px !important; }
  [style*="padding: 70px 40px 40px"] { padding: 48px 20px 40px 20px !important; }
  [style*="padding: 70px 44px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 70px 44px 110px"] { padding: 48px 20px 56px 20px !important; }
  [style*="padding: 70px 46px 0px"] { padding: 48px 20px 0px 20px !important; }
  [style*="padding: 70px 46px 110px"] { padding: 48px 20px 56px 20px !important; }
  [style*="padding: 70px 46px 40px"] { padding: 48px 20px 40px 20px !important; }
  [style*="padding: 70px 60px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 80px 40px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 80px 44px 90px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 80px 46px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 80px 46px 110px"] { padding: 48px 20px 56px 20px !important; }
  [style*="padding: 90px 40px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 90px 40px 110px"] { padding: 48px 20px 56px 20px !important; }
  [style*="padding: 90px 40px 30px"] { padding: 48px 20px 30px 20px !important; }
  [style*="padding: 90px 44px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 90px 44px 40px"] { padding: 48px 20px 40px 20px !important; }
  [style*="padding: 90px 46px"] { padding: 48px 20px 48px 20px !important; }
  [style*="padding: 9px 46px"] { padding: 9px 20px 9px 20px !important; }
  /* tall fixed media panels shrink when stacked */
  [style*="height: 400px"] { height: 300px !important; }
  [style*="height: 420px"] { height: 300px !important; }
  [style*="height: 460px"] { height: 300px !important; }
  [style*="height: 480px"] { height: 300px !important; }
  [style*="height: 500px"] { height: 340px !important; }
  [style*="height: 520px"] { height: 340px !important; }
  [style*="height: 540px"] { height: 340px !important; }
  [style*="height: 560px"] { height: 340px !important; }
  [style*="height: 600px"] { height: 340px !important; }
  [style*="height: 620px"] { height: 340px !important; }
  [style*="height: 640px"] { height: 340px !important; }
  /* floating cards: never hang off-screen */
  [style*="left: -18px"] { left: 12px !important; }
  [style*="left: -24px"] { left: 12px !important; }
  [style*="left: -28px"] { left: 12px !important; }
  [style*="left: 46px"][style*="position: absolute"], [style*="position: absolute"][style*="left: 46px"] { left: 20px !important; right: 20px; }
  [style*="position: absolute"][style*="right: 46px"] { right: 16px !important; }
  /* split heroes lose their fixed viewport height when stacked */
  [style*="min-height: calc(100vh"] { min-height: auto !important; }
  /* big serif/display headlines already clamp(); tighten letter-spacing on huge logos */
  [style*="letter-spacing: .28em"] { letter-spacing: .18em !important; }
  /* ivory footer mini-squares stay 3-up (tiny gap identifies them) */
  [style*="grid-template-columns: repeat(3, 1fr); gap: 6px"] { grid-template-columns: repeat(3, 1fr) !important; }
  /* nujen category/brand titles fit 2-up tiles */
  [style*="font: 800 26px / 1 Syne"] { font-size: 15px !important; letter-spacing: 0 !important; }
}
