/* =====================================================
   SPARX SERVICES — RESPONSIVE
   Mobile-first breakpoints
   ===================================================== */

/* ── TABLET (≤ 1023px) ────────────────────────────── */
@media (max-width: 1023px) {
  h1, .h1 { font-size: 38px; }
  h2, .h2 { font-size: 28px; }
  .sparx-hero-home__grid { grid-template-columns: 1fr; }
  .sparx-hero-home__diagram { display: none; }
  .sparx-hero-inner__h1 { font-size: 34px; }
  .sparx-problem-strip__grid { grid-template-columns: 1fr 1fr; }
  .sparx-offering-cards__grid { grid-template-columns: 1fr 1fr; }
  .sparx-proof-strip__grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .sparx-tiers__grid { grid-template-columns: 1fr; }
  .sparx-process__steps { grid-template-columns: 1fr 1fr; }
  .sparx-footer__grid { grid-template-columns: 1fr 1fr; }
  .sparx-legal__layout { grid-template-columns: 1fr; }
  .sparx-legal__toc { position: static; }
  .insights-grid { grid-template-columns: 1fr 1fr; }
  .insight-related__grid { grid-template-columns: 1fr; }
  .sparx-nav__links { display: none; }
  .sparx-nav__hamburger { display: flex; }
  /* Post hero: stack on tablet */
  .insight-post-hero__grid { grid-template-columns: 1fr; gap: 32px; }
  .insight-post-hero--with-image .container { max-width: 760px; }
  .insight-post-hero__thumb { max-width: 560px; }
  .insight-post-hero__content { max-width: 100%; }
}

/* ── MOBILE (≤ 640px) ─────────────────────────────── */
@media (max-width: 640px) {
  :root { --section-pad: 52px 0; --container-pad: 0 16px; }
  h1, .h1 { font-size: 30px; letter-spacing: -0.5px; }
  h2, .h2 { font-size: 24px; }
  h3, .h3 { font-size: 19px; }
  .sparx-hero-home { padding: 72px 0 56px; }
  .sparx-hero-home__h1 { font-size: 30px; }
  .sparx-hero-home__lead { font-size: 16px; }
  .sparx-hero-inner { padding: 60px 0 48px; }
  .sparx-hero-inner__h1 { font-size: 26px; }
  .sparx-problem-strip__grid { grid-template-columns: 1fr; }
  .sparx-offering-cards__grid { grid-template-columns: 1fr; }
  .sparx-proof-strip__grid { grid-template-columns: 1fr 1fr; }
  .sparx-proof-strip__stat-number { font-size: 34px; }
  .sparx-process__steps { grid-template-columns: 1fr; }
  .sparx-footer__grid { grid-template-columns: 1fr; }
  .insights-grid { grid-template-columns: 1fr; }
  .sparx-cta-band h2 { font-size: 26px; }
  .sparx-tiers__grid { grid-template-columns: 1fr; }
  .sparx-nav { height: 60px; }
}
