@media (max-width: 1080px) {
  .split-layout,
  .contact-layout,
  .grid--2,
  .grid--3,
  .grid--4,
  .card-grid,
  .testimonial-grid,
  .planner-note-grid,
  .site-footer__grid,
  .cta-banner__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .quick-grid,
  .hero__highlights,
  .hero-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .testimonial-grid .card--testimonial,
  .testimonial-carousel .card--testimonial {
    width: min(100%, 320px);
  }

  .hero__layout {
    gap: var(--space-24);
  }

  .brand__tag {
    display: none;
  }

  .section-text--inline-desktop {
    white-space: normal;
  }

  .page-title--single {
    white-space: normal;
  }
}

@media (max-width: 980px) {
  .hero__layout {
    flex-direction: column;
  }

  .hero__content,
  .hero__visual {
    width: 100%;
  }

  .hero__image-canvas {
    min-height: 320px;
    height: clamp(320px, 56vw, 500px);
  }
}

@media (max-width: 1200px) and (min-width: 821px) {
  .site-nav__list {
    gap: 14px;
  }

  .site-nav__link {
    font-size: 0.84rem;
  }
}

@media (max-width: 820px) {
  .site-nav__desktop {
    display: none;
  }

  .site-nav__toggle {
    display: inline-flex;
  }

  .brand__title,
  .brand__tag {
    display: none;
  }

  .split-layout,
  .contact-layout,
  .grid--2,
  .grid--3,
  .grid--4,
  .card-grid,
  .testimonial-grid,
  .planner-note-grid,
  .site-footer__grid,
  .cta-banner__inner {
    grid-template-columns: 1fr;
  }

  .trust-badge-row {
    gap: 6px;
  }

  .hero__highlights,
  .quick-grid {
    grid-template-columns: 1fr;
  }

  .hero__actions {
    gap: var(--space-16);
  }

  .hero-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .testimonial-grid .card--testimonial,
  .testimonial-carousel .card--testimonial,
  .resource-grid .resource-card,
  .grid--4 .card--destination {
    width: min(100%, 100%);
    max-width: 100%;
  }

  .hero__image-canvas {
    min-height: 300px;
    height: clamp(300px, 64vw, 460px);
  }

  .hero-stat {
    padding: 14px;
    gap: 16px;
  }

  .hero-stat__logo {
    width: 48px;
    height: 48px;
  }

  .cta-banner__actions,
  .site-footer__meta {
    justify-content: flex-start;
    flex-direction: column;
    align-items: flex-start;
  }

  .contact-info__row {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .contact-info__row .button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .contact-layout__left,
  .contact-layout__right {
    height: auto;
  }
}

@media (max-width: 640px) {
  .section {
    padding: var(--space-40) 0;
  }

  .hero {
    min-height: auto;
    padding-top: var(--space-24);
  }

  .hero__actions {
    width: 100%;
  }

  .hero__actions .button {
    flex: 1 1 auto;
  }

  .hero-stats {
    grid-template-columns: 1fr;
  }

  .hero-stat {
    padding: var(--space-16);
    gap: 14px;
  }

  .panel,
  .card,
  .detail-panel__button,
  .detail-panel__content,
  .faq-item__button,
  .faq-item__panel,
  .cta-banner__inner {
    padding-left: var(--space-24);
    padding-right: var(--space-24);
  }

  .container,
  .container--narrow {
    width: min(calc(100% - 20px), var(--container-width));
  }

  .testimonial-carousel {
    grid-auto-columns: minmax(270px, 1fr);
  }
}
