@media (max-width: 1024px) {
  .site-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }

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

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

  .hero__grid,
  .grid-2 {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .hero__image-wrap {
    order: -1;
    max-width: 480px;
    margin-inline: auto;
  }

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

  .specs-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .section {
    padding-block: 3rem;
  }

  .site-nav,
  .site-header__actions .btn--primary {
    display: none;
  }

  .menu-toggle {
    display: flex;
  }

  .grid-3,
  .grid-4 {
    grid-template-columns: 1fr;
  }

  .site-footer__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .hero {
    padding-block: 2.5rem 3rem;
  }

  .hero__actions {
    flex-direction: column;
  }

  .hero__actions .btn {
    width: 100%;
  }

  .cta-section__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .cta-section__actions .btn {
    width: 100%;
  }

  .comparison-table-wrap {
    display: none;
  }

  .comparison-cards {
    display: grid;
  }

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

  .gallery__main {
    grid-column: 1 / -1;
  }

  .floating-contact {
    bottom: 1rem;
    left: 1rem;
    right: 1rem;
  }

  .floating-contact__btn {
    width: 100%;
    justify-content: center;
    border-radius: var(--radius-sm);
  }

  .floating-contact__text {
    display: inline;
  }
}

@media (max-width: 430px) {
  .container {
    padding-inline: 1rem;
  }

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

  .product-card__body {
    padding: 1.25rem;
  }

  .feature-card {
    padding: 1.5rem 1.25rem;
  }
}

@media (min-width: 769px) {
  .floating-contact__text {
    display: inline;
  }
}
