@media (max-width: 980px) {
  .hero-wrap,
  .checkout-layout,
  .details-layout,
  .hero-banner {
    grid-template-columns: 1fr;
  }

  .category-grid,
  .product-grid,
  .promo-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .main-toolbar {
    flex-wrap: wrap;
  }
}

@media (max-width: 760px) {
  .hero-slide img {
    object-fit: cover;
  }

  .main-nav {
    display: none;
  }

  .filter-bar,
  .promo-strip,
  .product-grid,
  .stats-grid,
  .inline-fields {
    grid-template-columns: 1fr;
  }

  .category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .category-card > .category-name {
    padding: 12px;
    font-size: 0.95rem;
  }

  .main-toolbar {
    display: block;
    padding-top: 14px;
  }

  .desktop-toolbar {
    display: none;
  }

  .mobile-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 6px;
  }

  .brand-lockup {
    justify-content: flex-start;
    flex: 1;
    min-width: 0;
  }

  .brand-logo {
    width: 110px;
  }

  .mobile-search {
    display: flex;
    width: 100%;
    margin-top: 12px;
  }

  .desktop-search {
    display: none;
  }

  .toolbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-width: 90px;
  }

  .hero-banner {
    min-height: auto;
  }

  .hero-copy {
    padding: 34px 22px 20px;
  }

  .hero-copy h1 {
    margin-top: 72px;
    font-size: 2.5rem;
  }

  .hero-visual {
    padding: 0 18px 18px;
  }

  .promo-strip {
    gap: 12px;
  }

  .promo-card {
    padding-left: 8px;
    padding-right: 8px;
  }

  .nav-wrap,
  .header-actions,
  .footer-wrap,
  .row-space,
  .admin-topbar,
  .panel-header {
    flex-direction: column;
    align-items: stretch;
  }

  .header-actions {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
  }
}

@media (max-width: 980px) {
  .admin-app {
    display: flex;
    min-width: 1100px;
  }

  .admin-sidebar {
    flex: 0 0 290px;
  }

  .admin-content {
    flex: 1 0 810px;
    padding: 28px;
  }

  .admin-body .stats-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-body .inline-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-body .admin-topbar,
  .admin-body .panel-header {
    flex-direction: row;
    align-items: center;
  }
}
