@media (max-width: 1080px) {
  .plan-layout,
  .quote-layout,
  .map-layout {
    grid-template-columns: 1fr;
  }

  .quote-copy {
    position: static;
  }

  .recommended-grid,
  .services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .trust-strip {
    justify-content: flex-start;
    gap: 16px;
    overflow-x: auto;
    white-space: nowrap;
  }

  .menu-toggle {
    display: inline-grid;
  }

  .nav-links {
    position: fixed;
    inset: 119px 18px auto 18px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 10px;
    background: rgba(3, 17, 31, 0.97);
    box-shadow: var(--shadow-lg);
  }

  .nav-links.open {
    display: flex;
  }

  .nav-links a {
    padding: 14px 12px;
  }

  .nav-action {
    text-align: center;
  }

  .hero-section {
    min-height: auto;
  }

  .hero-content {
    padding-top: 74px;
  }

  .brief-input-row {
    grid-template-columns: 1fr;
  }

  .brief-input-row .btn-primary {
    width: 100%;
  }

  .hero-intelligence,
  .workflow,
  .region-card,
  .about-band,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .region-card {
    min-height: auto;
  }

  .region-visual {
    min-height: 280px;
  }

  .footer-bottom {
    flex-direction: column;
  }
}

@media (max-width: 680px) {
  .container,
  .nav-wrap {
    width: min(100% - 28px, var(--max-width));
  }

  .hero-content {
    padding-bottom: 30px;
  }

  .plan-band,
  .quote-section,
  .map-section,
  .services-section,
  .proof-section {
    padding: 70px 0;
  }

  .recommended-grid,
  .services-grid,
  .proof-grid,
  .form-grid,
  .quote-metrics {
    grid-template-columns: 1fr;
  }

  .console-topline,
  .recommendation-head,
  .form-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .score-ring {
    width: 86px;
    height: 86px;
  }

  .service-card {
    min-height: auto;
  }

  .service-card h3 {
    min-height: 0;
  }

  .upload-zone {
    align-items: flex-start;
  }

  .modal {
    padding: 14px;
  }

  .modal-card {
    padding: 24px 18px;
  }
}

@media (max-width: 440px) {
  h1 {
    font-size: 2.65rem;
  }

  h2 {
    font-size: 2rem;
  }

  .brand > span {
    font-size: 1.42rem;
  }

  .brand small {
    font-size: 0.46rem;
  }

  .prompt-chips button,
  .service-filters button,
  .map-actions button {
    width: 100%;
  }
}
