/* Responsive breakpoints */

@media (max-width: 960px) {
  .nav-links { display: none; }
  .nav-toggle { display: flex; }

  .home-link-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .hero-funnel,
  .truth-grid,
  .home-prove-layout,
  .home-cases-grid,
  .method-layers,
  .track-matrix-grid,
  .company-culture-grid {
    grid-template-columns: 1fr;
  }

  .solution-roi-grid {
    grid-template-columns: 1fr;
  }

  .back-to-top {
    right: 16px;
    bottom: 16px;
    width: 42px;
    height: 42px;
  }

  .footer-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 24px;
  }

  .footer-bottom-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .footer-bottom-links {
    justify-content: flex-start;
    width: auto;
    max-width: 100%;
  }

  .hero-carousel-seg {
    width: 28px;
  }

  .hero-carousel-pill {
    gap: 8px;
    padding: 10px 14px;
  }
  .stat:nth-child(2n) { border-right: none; }
  .stat:nth-child(1),
  .stat:nth-child(2) { border-bottom: 1px solid var(--border); }

  .product-card,
  .product-card.reverse {
    grid-template-columns: 1fr;
    direction: ltr;
  }

  .product-visual { min-height: 240px; }

  .standards-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .standard-item:nth-child(4n) { border-right: 1px solid var(--border); }
  .standard-item:nth-child(2n) { border-right: none; }
  .standard-item:nth-child(3),
  .standard-item:nth-child(4) { border-top: 1px solid var(--border); }

  .loop-flow {
    flex-direction: column;
    gap: 0;
  }

  .loop-step {
    border-right: none;
    border-bottom: 1px solid var(--border);
  }

  .loop-step:last-child { border-bottom: none; }

  .loop-step:not(:last-child)::after { display: none; }

  .loop-step p { max-width: none; }

  .prove-steps {
    grid-template-columns: 1fr 1fr;
  }

  .prove-step:nth-child(2n) { border-right: none; }
  .prove-step:nth-child(n + 3) { border-top: 1px solid var(--border); }
  .prove-step:not(:last-child)::after { display: none; }

  .prove-why-grid {
    grid-template-columns: 1fr;
  }

  .prove-why-item {
    border-right: 1px solid var(--border);
  }

  .prove-note-pair {
    grid-template-columns: 1fr;
  }

  .prove-note-col {
    border-right: 1px solid var(--border);
  }

  .prove-alias-item {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .cta-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .info-card-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .nav-logo-img {
    height: 18px;
    max-width: min(160px, 48vw);
  }

  .home-link-grid {
    grid-template-columns: 1fr;
  }

  .hero h1 { max-width: none; }

  .stats-grid { grid-template-columns: 1fr; }
  .stat {
    border-right: none;
    border-bottom: 1px solid var(--border);
  }
  .stat:last-child { border-bottom: none; }

  .standards-list {
    grid-template-columns: 1fr;
  }

  .prove-steps {
    grid-template-columns: 1fr;
  }

  .prove-step {
    border-right: none;
    border-bottom: 1px solid var(--border);
  }

  .prove-step:last-child { border-bottom: none; }
  .prove-step:nth-child(n + 3) { border-top: none; }

  .standard-item,
  .standard-item:nth-child(2n),
  .standard-item:nth-child(4n) {
    border-right: none;
    border-bottom: 1px solid var(--border);
  }

  .standard-item:last-child { border-bottom: none; }
  .standard-item:nth-child(3),
  .standard-item:nth-child(4) { border-top: none; }

  .tracks-grid {
    grid-template-columns: 1fr;
  }

  .track-item,
  .track-item:nth-child(2n) {
    padding-left: clamp(24px, 3vw, 36px);
  }

  .contrast-grid {
    grid-template-columns: 1fr;
  }

  .contrast-col.is-left {
    border-right: 1px solid var(--border);
  }

  .contrast-col.is-right {
    box-shadow: inset 0 3px 0 var(--accent);
  }

  .footer-cols {
    grid-template-columns: 1fr 1fr;
    gap: 24px 20px;
  }

  .footer-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .footer-bottom {
    gap: 10px;
  }

  .footer-bottom-bar {
    flex-direction: column;
    gap: 10px;
  }

  .footer-bottom-links {
    justify-content: flex-start;
    width: auto;
    max-width: 100%;
    padding-top: 0;
  }

  .footer-contact {
    white-space: normal;
  }

  .hero-actions {
    width: 100%;
  }

  .hero-actions .btn {
    flex: 1;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cap-visual--grid .cap-grid-scan { animation: none; }
  .loop-step { opacity: 1; transform: none; transition: none; }
}
