/* =========================================================================
   RESPONSIVE — mobile 320-767 / tablet 768-1023 / desktop 1024-1439 / large 1440+
   ========================================================================= */

/* ----- Large desktop polish ----- */
@media (min-width: 1440px) {
  .container { max-width: 1320px; }
}

/* ----- Tablet & below (<=1023px) ----- */
@media (max-width: 1023px) {
  .main-nav { display: none; }
  .hamburger { display: flex; }
  .header-actions .lang-switch { display: none; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-visual { max-width: 420px; margin: 40px auto 0; }
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .product-grid .product-card:nth-child(4),
  .product-grid .product-card:nth-child(5) { grid-column: span 1; }
  .value-grid { grid-template-columns: repeat(3, 1fr); }
  .news-grid { grid-template-columns: repeat(2, 1fr); }
  .event-grid { grid-template-columns: repeat(2, 1fr); }
  .gallery-grid { grid-template-columns: repeat(3, 1fr); }
  .split { grid-template-columns: 1fr; gap: 34px; }
  .split .media { order: -1; }
  .product-detail { grid-template-columns: 1fr; gap: 30px; }
  .product-detail .thumb { position: static; max-width: 420px; margin: 0 auto; }
  .article-layout { grid-template-columns: 1fr; }
  .contact-layout { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px 24px; }
}

/* ----- Mobile (<=767px) ----- */
@media (max-width: 767px) {
  :root { --header-h: 72px; }
  .section-pad { padding: 48px 0; }
  .hero { padding: 34px 0 56px; text-align: left; }
  .hero-cta { flex-direction: column; align-items: stretch; }
  .hero-cta .btn { width: 100%; }
  .hero-stats { gap: 24px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-meta-grid { grid-template-columns: 1fr; }
  .value-grid { grid-template-columns: 1fr 1fr; }
  .news-grid { grid-template-columns: 1fr; }
  .event-grid { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .stat-row { gap: 26px; justify-content: space-between; }
  .footer-grid { grid-template-columns: 1fr; gap: 30px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .timeline-cta { padding: 36px 24px; flex-direction: column; text-align: left; align-items: flex-start; }
  .form-grid { grid-template-columns: 1fr; }
  .events-tabs { overflow-x: auto; }
  .wa-float { width: 54px; height: 54px; right: 16px; bottom: 16px; }
  .wa-tooltip { display: none; }
  .brand-text span { display: none; }
  .brand img { height: 38px; }
}

@media (max-width: 400px) {
  .value-grid { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
}
