/* =========================================================
   Air-Soft — Responsive
   File: airsoft-responsive.css
   ========================================================= */

@media (max-width: 1100px) {
  :root {
    --as-container: min(100% - 32px, 920px);
    --as-container-wide: min(100% - 32px, 1040px);
  }

  .as-grid-4,
  .as-shop-categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .as-grid-3,
  .as-feature-band__inner,
  .as-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .as-content-split,
  .as-contact-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  :root {
    --as-container: min(100% - 24px, 520px);
    --as-container-wide: min(100% - 24px, 520px);
  }

  .as-section {
    padding: 66px 0;
  }

  .as-section--compact {
    padding: 48px 0;
  }

  .as-title {
    font-size: clamp(32px, 12vw, 52px);
  }

  .as-lead {
    font-size: 17px;
  }

  .as-actions,
  .as-actions--center {
    align-items: stretch;
    justify-content: stretch;
  }

  .as-btn,
  a.as-btn {
    width: 100%;
    min-height: 52px;
  }

  .as-hero {
    min-height: 640px;
  }

  .as-hero__inner {
    padding: 70px 0;
  }

  .as-hero__title {
    font-size: clamp(44px, 17vw, 74px);
  }

  .as-hero__text {
    font-size: 18px;
  }

  .as-hero__stats,
  .as-grid-2,
  .as-grid-3,
  .as-grid-4,
  .as-feature-band__inner,
  .as-shop-categories,
  .as-gallery-grid {
    grid-template-columns: 1fr;
  }

  .as-intro-strip__text {
    font-size: 18px;
    letter-spacing: 0.05em;
  }

  .as-game-card {
    padding: 28px 22px;
  }

  .as-game-card__image {
    width: 116px;
    height: 116px;
  }

  .as-tab-buttons {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 8px;
    -webkit-overflow-scrolling: touch;
  }

  .as-tab-button {
    flex: 0 0 auto;
  }

  .as-page-hero {
    min-height: 420px;
  }

  .as-page-hero__inner {
    padding: 90px 0 52px;
  }

  .as-content-box,
  .as-contact-panel__info,
  .as-contact-panel__form {
    padding: 28px 22px;
  }

  .as-media-card {
    min-height: 300px;
    border-radius: var(--as-radius-lg);
  }
}
