/* ============ Tablet ============ */
@media (max-width: 1024px) {
  .hero-stats { grid-template-columns: repeat(2, 1fr); gap: var(--sp-6); }
  .capability-strip { grid-template-columns: repeat(2, 1fr); }
  .solutions-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-top { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-top .footer-col:last-child { grid-column: span 3; }
  .pillar { grid-template-columns: 1fr; gap: var(--sp-7); padding: var(--sp-8) var(--sp-6); }
  .section-head { grid-template-columns: 1fr; gap: var(--sp-5); }
  .contact-wrap { grid-template-columns: 1fr; gap: var(--sp-7); }
}

/* ============ Mobile ============ */
@media (max-width: 720px) {
  :root {
    --section-pad: clamp(72px, 16vw, 120px);
  }

  .nav-links {
    position: fixed;
    inset: 0 0 0 auto;
    width: min(80vw, 320px);
    background: var(--bg);
    border-left: 1px solid var(--line);
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: var(--sp-6);
    padding: var(--sp-9) var(--sp-7);
    transform: translateX(110%);
    transition: transform var(--dur-base) var(--ease-out);
  }
  .nav-links.is-open { transform: translateX(0); }
  .nav-links a { font-size: var(--fs-md); }
  .nav-toggle { display: inline-flex; }
  .nav-cta { display: none; }

  .brand-domain { display: none; }

  .hero { padding-top: 120px; }
  .hero-meta { flex-direction: column; align-items: flex-start; }
  .hero-stats { grid-template-columns: 1fr 1fr; gap: var(--sp-5); margin-top: var(--sp-8); padding-top: var(--sp-6); }

  .capability-strip { grid-template-columns: 1fr; }
  .solutions-grid { grid-template-columns: 1fr; }
  .why-grid { grid-template-columns: 1fr; }

  .process-row {
    grid-template-columns: 60px 1fr;
    gap: var(--sp-3);
  }
  .process-row p { grid-column: 1 / -1; }
  .process-row .duration { grid-column: 1 / -1; text-align: left; }

  .footer-top { grid-template-columns: 1fr; gap: var(--sp-6); }
  .footer-top .footer-col:last-child { grid-column: auto; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }

  #cursor-glow { display: none; }
  .pillar { padding: var(--sp-7) var(--sp-5); }
  .quote-block blockquote { font-size: var(--fs-lg); }

  .solutions-toolbar { gap: var(--sp-3); }
  .toolbar-group { gap: var(--sp-2); }
}

/* ============ Small mobile ============ */
@media (max-width: 420px) {
  h1 { font-size: clamp(40px, 12vw, 60px); }
  .nav-row { gap: var(--sp-3); }
  .brand-name { font-size: var(--fs-base); }
}

/* ============ Print ============ */
@media print {
  .site-nav, .nav-toggle, #cursor-glow, .ticker { display: none; }
  body { background: #fff; color: #000; }
  .solution-card, .why-card, .pillar { break-inside: avoid; }
}
