/* ---------- Mobile nav (hidden above the breakpoint) ---------- */
.mobile-menu-toggle {
  display: none;
  width: 40px;
  height: 40px;
  border-radius: 7px;
  border: 1px solid var(--border-light-strong);
  background: var(--paper);
  color: var(--ink);
  font-size: 16px;
  cursor: pointer;
  flex-shrink: 0;
}
.mobile-nav-panel {
  display: none;
  flex-basis: 100%;
  width: 100%;
  position: sticky;
  top: 65px;
  z-index: 49;
  background: var(--paper);
  border-bottom: 1px solid var(--border-light);
  padding: 18px 24px;
  margin: 16px calc(-1 * var(--section-pad-x)) -22px;
  flex-direction: column;
  gap: 18px;
}
.mobile-nav-panel a { font-size: 15px; font-weight: 600; color: var(--ink); }
.mobile-nav-panel a.is-active { color: var(--green); }
.mobile-nav-panel:not([hidden]) { display: flex; }

@media (max-width: 900px) {
  .hero,
  .readiness-grid { grid-template-columns: 1fr; }
  .hero > *,
  .readiness-grid > * { min-width: 0; }
  .calc-card { position: static; }
  .product-grid { grid-template-columns: 1fr !important; }
  .how-grid { grid-template-columns: repeat(2, 1fr); row-gap: 32px; }
  .how-grid::before { display: none; }
  .industry-grid,
  .plans-grid,
  .compare-grid { grid-template-columns: 1fr; }
  .compare-grid { display: flex; flex-direction: column; gap: 12px; }
  .price-bar-row { grid-template-columns: 110px 1fr 80px; gap: 10px; }
  .hero-tool-panel { grid-template-columns: 1fr; text-align: left; }
  .hero-tool-figure { text-align: left; }
  .qualify-grid { grid-template-columns: 1fr; }
  .qualify-field--wide { grid-column: span 1; }
  .readiness-form-row { flex-direction: column; }

  .site-nav,
  .site-header-right .faq-link { display: none; }
  .mobile-menu-toggle { display: inline-flex; align-items: center; justify-content: center; }
}

@media (max-width: 620px) {
  :root { --section-pad-x: 24px; }
  .hero-headline,
  .hero-headline--long { font-size: 38px; }
  .final-cta-title { font-size: 30px; }
  .site-footer { flex-direction: column; gap: 16px; text-align: center; }
  .footer-links { flex-wrap: wrap; justify-content: center; }
}
