/* Responsive — mobile-first refinements */
@media (max-width: 1199px) {
  .cats-grid { grid-template-columns: repeat(3, 1fr); }
  .hero-content h1 { font-size: 38px; }
  .mega-panel { min-width: 600px; grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 991px) {
  .header-search { order: 5; flex-basis: 100%; margin-top: 12px; }
  .header-inner { flex-wrap: wrap; padding: 14px 0; }
  .header-actions { margin-left: auto; }
  .ha-item span { display: none; }
  .hero-slide { height: 380px; padding: 0 30px; }
  .hero-content h1 { font-size: 30px; }
  .hero-benefits { grid-template-columns: repeat(2, 1fr); margin: 16px 0 0; }
  .cats-grid { grid-template-columns: repeat(2, 1fr); }
  .why-grid, .counters, .stats-grid, .profile-stats { grid-template-columns: repeat(2, 1fr); }
  .profile-page { grid-template-columns: 1fr; }
  .pf-gallery { position: static; }
  .nl-inner { flex-direction: column; text-align: center; }
  .nl-form { width: 100%; min-width: 0; }
  body { padding-bottom: 70px; }
}
@media (max-width: 575px) {
  .topbar-info span:not(:first-child) { display: none; }
  .header-inner { gap: 12px; }
  .logo-text { font-size: 16px; }
  .logo-mark { width: 38px; height: 38px; font-size: 18px; }
  .hero-slide { height: 320px; padding: 0 20px; }
  .hero-content h1 { font-size: 24px; }
  .hero-content p { font-size: 14px; }
  .cats-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .cat-card { padding: 16px 14px; }
  .products-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .pc-body { padding: 10px; }
  .pc-title { font-size: 13px; }
  .pc-new { font-size: 16px; }
  .block-title { font-size: 20px; }
  .pf-title { font-size: 22px; }
  .pf-price { font-size: 28px; }
  .floating-support { right: 12px; bottom: 80px; }
  .fs-btn { width: 44px; height: 44px; font-size: 18px; }
  .footer-bottom { flex-direction: column; text-align: center; }
}

/* Mobile menu styling */
.mobile-menu .offcanvas-body { padding: 0; }
.mobile-menu .categories-tree .cm-link { padding: 14px 20px; border-bottom: 1px solid var(--c-border); border-radius: 0; }

/* Mobile search */
.mobile-search { height: auto; }
.ms-input-wrap { display: flex; align-items: center; gap: 10px; padding: 14px; background: var(--c-bg); border-radius: var(--radius); }
.ms-input-wrap input { flex: 1; background: transparent; border: 0; outline: none; font-size: 16px; }
.ms-input-wrap button { background: none; border: 0; font-size: 24px; }
