/* ==========================================================================
   SST — responsive.css
   Breakpoints: 1440 / 1280 / 1024 / 992 / 768 / 576 / 480 / 360
   ========================================================================== */

@media (max-width: 1440px) {
  :root { --container: 1160px; --section-gap: 88px; }
}

@media (max-width: 1280px) {
  :root { --pad: 28px; }
  .production__inner,
  .contact-block__inner,
  .contacts-grid,
  .product-detail { gap: 2.5rem; }
  .gridder-content { gap: 2rem; padding: 2rem; }
}

/* Tablet landscape */
@media (max-width: 1024px) {
  :root { --section-gap: 76px; }

  .main-nav,
  .header-phone { display: none; }
  .burger { display: flex; }

  .advantages__grid,
  .products__grid,
  .steps__grid,
  .numbers__grid { grid-template-columns: repeat(2, 1fr); }

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

  .production__inner,
  .contact-block__inner,
  .contacts-grid,
  .product-detail,
  .about-intro__inner { grid-template-columns: 1fr; }

  .production__media,
  .about-intro__inner img { max-width: 640px; }

  .faq__inner { grid-template-columns: 1fr; }
  .faq__head { position: static; }

  .projects__grid { grid-auto-rows: 200px; }

  .number-card { border-right: none; border-bottom: 1px solid var(--border); padding-block: 1.2rem; }
  .number-card:last-child { border-bottom: none; }

  .site-footer__top { grid-template-columns: 1fr 1fr; }
  .site-footer__col--brand { grid-column: 1 / -1; }
}

@media (max-width: 992px) {
  .certificates__grid { grid-template-columns: repeat(2, 1fr); }
  .catalog__toolbar { flex-direction: column; align-items: stretch; }
}

/* Tablet portrait / large phones */
@media (max-width: 768px) {
  :root { --section-gap: 60px; --pad: 22px; }
  body { font-size: 16px; }

  .topbar { display: none; }
  .section__head { margin-bottom: 2.2rem; }
  .section__head--split { flex-direction: column; align-items: flex-start; gap: 1rem; }

  .hero { min-height: auto; }
  .hero__inner { padding-block: 3.5rem; }
  .hero__stats { gap: 1.6rem; flex-wrap: wrap; }

  .products__grid,
  .steps__grid { grid-template-columns: 1fr; }

  .projects__grid { grid-template-columns: 1fr; grid-auto-rows: 220px; }
  .project-tile--lg { grid-column: auto; grid-row: auto; }

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

  .gridder-content { grid-template-columns: 1fr; }

  .about-intro__facts,
  .contacts-cards { grid-template-columns: 1fr 1fr; }

  .site-footer__top { grid-template-columns: 1fr; }
  .site-footer__bottom { flex-direction: column; gap: 0.6rem; text-align: center; }
}

/* Phones */
@media (max-width: 576px) {
  :root { --section-gap: 52px; }

  .advantages__grid,
  .numbers__grid,
  .gridder,
  .certificates__grid { grid-template-columns: 1fr; }

  .hero__actions { flex-direction: column; }
  .hero__actions .btn { width: 100%; }

  .catalog__filters,
  .contacts-cards { grid-template-columns: 1fr; }

  .filter,
  .filter__select { width: 100%; }

  .product-tabs__nav { gap: 0; }
  .product-tabs__btn { padding: 0.8rem 1rem; font-size: 0.92rem; }

  .modal__dialog { padding: 1.8rem 1.4rem; }
  .lead-form--card { padding: 1.6rem; }

  .lightbox__dialog { gap: 0.4rem; }
  .lightbox__nav { width: 42px; height: 42px; font-size: 1.5rem; }
  .lightbox__figure { max-width: 78vw; }
  .lightbox__close { top: -3rem; }
}

@media (max-width: 480px) {
  :root { --pad: 18px; }
  .about-intro__facts { grid-template-columns: 1fr; }
  .hero__stats { gap: 1.2rem; }
  .hero__stats strong { font-size: 1.7rem; }
}

@media (max-width: 360px) {
  .logo__mark { font-size: 1.45rem; }
  .adv-card,
  .step-card { padding: 1.6rem 1.3rem; }
}
