/* ─────────────────────────────────────
   TABLET  ≤ 1024px
───────────────────────────────────── */
@media (max-width: 1024px) {
  /* nav */
  nav { padding: 0 32px; }
  .nav-center { gap: 24px; }

  /* hero */
  .hero-body {
    grid-template-columns: 1fr 1fr;
    padding: 40px 32px 32px;
  }

  .code-panel { width: 300px; }
  .hero-left { padding-right: 48px; }
  .stat { padding: 16px 32px; }
  .stat-num { font-size: 22px; }

  /* problem */
  #problem { padding: 60px 32px; }

  /* features */
  .solution-intro { padding: 56px 32px 48px; }
  .feature-card { padding: 32px; }

  /* security */
  .security-intro { padding: 56px 32px 48px; }
  .layer-row { padding: 20px 32px; gap: 24px; }
  .sec-stat { padding: 20px 32px; }

  /* cost */
  #cost { padding: 60px 32px; }

  /* cta */
  .cta-topbar { padding: 0 32px; }
  .cta-left  { padding: 56px 48px 56px 32px; }
  .cta-right { padding: 56px 32px 56px 48px; }
  .footer-cell { padding: 16px 32px; }
}

/* ─────────────────────────────────────
   MOBILE  ≤ 768px
───────────────────────────────────── */
@media (max-width: 768px) {

  /* ── nav ── */
  nav { padding: 0 20px; }
  .nav-center { display: none; }

  /* ── hero ── */
  #hero { height: auto; }

  .hero-body {
    grid-template-columns: 1fr;
    padding: 40px 20px 32px;
    gap: 32px;
    align-items: start;
  }

  .hero-left { padding-right: 0; }

  .hero-ctas { flex-direction: column; }
  .btn-primary, .btn-ghost { width: 100%; justify-content: center; text-align: center; }

  .code-panel { display: block; width: 100%; justify-self: stretch; }
  .code-body { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .code-pre { font-size: 10.5px; }

  .stats-bar { grid-template-columns: 1fr 1fr; }

  .stat { padding: 16px 20px; }
  .stat-num { font-size: 22px; }

  .stat:nth-child(2) { border-right: none; }
  .stat:nth-child(3) { border-top: 1px solid var(--border); }
  .stat:nth-child(4) {
    border-top: 1px solid var(--border);
    border-right: none;
  }

  /* ── problem ── */
  #problem { padding: 60px 20px; align-items: flex-start; }

  .problem-grid { grid-template-columns: 1fr; }

  .or-divider {
    flex-direction: row;
    height: 48px;
  }

  .or-divider::before,
  .or-divider::after {
    width: auto;
    height: 1px;
    flex: 1;
  }

  .verdict {
    flex-direction: column;
    gap: 20px;
  }

  .verdict-stat { text-align: left; }

  /* ── features ── */
  .solution-intro {
    flex-direction: column;
    align-items: flex-start;
    padding: 48px 20px 40px;
    gap: 20px;
  }

  .solution-intro .section-sub { max-width: 100%; }

  .features-grid { grid-template-columns: 1fr; }

  .feature-card {
    padding: 28px 20px;
    border-right: none;
    border-bottom: 1px solid var(--border);
  }

  .feature-card:nth-child(3n)  { border-right: none; }
  .feature-card:nth-child(n+4) { border-bottom: 1px solid var(--border); }
  .feature-card:last-child      { border-bottom: none; }

  /* ── security ── */
  .security-intro {
    grid-template-columns: 1fr;
    padding: 48px 20px 40px;
    gap: 20px;
  }

  .layer-row {
    grid-template-columns: 36px 1fr;
    padding: 18px 20px;
    gap: 8px 12px;
  }

  .layer-name { grid-column: 2; }

  .layer-desc {
    grid-column: 1 / -1;
    padding-left: 48px;
  }

  .security-callout { grid-template-columns: 1fr; }

  .sec-stat {
    border-right: none;
    border-bottom: 1px solid var(--border);
    padding: 18px 20px;
  }

  .sec-stat:last-child { border-bottom: none; }

  /* ── cost ── */
  #cost { padding: 60px 20px; align-items: flex-start; }

  .cost-table {
    overflow-x: auto;
    display: block;
    -webkit-overflow-scrolling: touch;
  }

  .table-head,
  .table-row { min-width: 640px; }

  .cost-footer { grid-template-columns: 1fr; }

  .cost-stat {
    border-right: none;
    border-bottom: 1px solid var(--border);
    padding: 20px 20px;
  }

  .cost-stat:last-child { border-bottom: none; }

  /* ── cta ── */
  .cta-topbar { padding: 0 20px; }

  .cta-main { grid-template-columns: 1fr; }

  .cta-left {
    padding: 48px 20px 40px;
    border-right: none;
    border-bottom: 1px solid var(--border);
    justify-content: flex-start;
  }

  .cta-right { padding: 40px 20px 48px; }

  .cta-footer-bar { grid-template-columns: 1fr; }

  .footer-cell {
    border-right: none;
    border-bottom: 1px solid var(--border);
    padding: 16px 20px;
  }

  .footer-cell:last-child { border-bottom: none; }
}
