@media (max-width: 1020px) {
  .desktop-nav { display: none; }
  .hero-grid { grid-template-columns: 1fr 390px; gap: 1.5rem; }
  .category-card-row { grid-template-columns: repeat(3, 1fr); }
  .product-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .detail-grid { grid-template-columns: 1fr; }
  .detail-card { position: static; }
  .detail-content-grid { grid-template-columns: 1fr; }
  .publish-layout { grid-template-columns: 1fr; }
  .publish-aside { position: static; grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 800px) {
  :root { --header-height: 66px; }
  body { padding-bottom: 76px; }
  .brand-copy small { display: none; }
  .desktop-publish, .header-actions .button--ghost { display: none; }
  .mobile-menu-button { display: inline-grid; }
  .hero { padding-top: 3rem; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { text-align: center; }
  .hero-copy h1, .hero-copy > p { margin-inline: auto; }
  .hero-actions, .hero-trust { justify-content: center; }
  .hero-visual { display: none; }
  .search-grid { grid-template-columns: 1fr 1fr; }
  .search-control:first-child { grid-column: 1 / -1; }
  .search-submit { min-width: 0; }
  .mobile-bottom-nav { position: fixed; left: .7rem; right: .7rem; bottom: .7rem; z-index: 95; display: grid; grid-template-columns: repeat(5,1fr); align-items: end; min-height: 64px; padding: .3rem; border: 1px solid var(--border); border-radius: 22px; background: color-mix(in srgb, var(--surface) 94%, transparent); box-shadow: var(--shadow-lg); backdrop-filter: blur(15px); }
  .mobile-bottom-nav a { display: grid; justify-items: center; gap: .1rem; padding: .35rem; color: var(--text-soft); font-size: 1.15rem; }
  .mobile-bottom-nav a.is-active { color: var(--primary); }
  .mobile-bottom-nav small { font-size: .62rem; font-weight: 750; }
  .mobile-bottom-nav .mobile-publish-fab { width: 58px; height: 58px; align-self: center; justify-self: center; margin-top: -22px; padding: .45rem; border-radius: 50%; background: var(--primary); color: #fff; box-shadow: 0 10px 25px rgba(11,107,83,.28); }
  .toast-region { bottom: 5.6rem; }
  .stat-grid { grid-template-columns: repeat(2,1fr); }
  .dashboard-grid { grid-template-columns: 1fr; }
  .dashboard-sidebar { position: static; display: flex; overflow-x: auto; }
  .dashboard-sidebar button, .dashboard-sidebar a { width: auto; flex: none; }
}

@media (max-width: 620px) {
  .container { width: min(calc(100% - 1.2rem), var(--container)); }
  .brand strong { font-size: .9rem; }
  .brand img { width: 36px; height: 36px; }
  .header-actions { gap: .35rem; }
  .icon-button { width: 38px; height: 38px; }
  .page-section { padding: 2.5rem 0; }
  .hero-copy h1 { font-size: 2.55rem; }
  .hero-actions .button { width: 100%; }
  .search-panel { border-radius: 20px; padding: .6rem; }
  .search-grid { grid-template-columns: 1fr; }
  .search-control:first-child { grid-column: auto; }
  .search-submit { width: 100%; }
  .category-card-row { grid-template-columns: repeat(2, 1fr); }
  .category-card { min-height: 105px; }
  .product-grid { grid-template-columns: 1fr; }
  .catalog-toolbar { align-items: flex-start; flex-direction: column; }
  .steps-grid { grid-template-columns: 1fr; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .form-grid { grid-template-columns: 1fr; }
  .form-group--full { grid-column: auto; }
  .form-actions { flex-direction: column-reverse; }
  .form-actions .button { width: 100%; }
  .publish-aside { grid-template-columns: 1fr; }
  .gallery-thumbs { grid-template-columns: repeat(3, 1fr); }
  .detail-info-list { grid-template-columns: 1fr; }
  .contact-actions { grid-template-columns: 1fr; }
  .secondary-actions { flex-wrap: wrap; }
  .spec-list { grid-template-columns: 1fr; }
  .counteroffer-head { flex-direction: column; }
  .counteroffer-price { text-align: left; }
  .counteroffer-footer { align-items: flex-start; flex-direction: column; }
  .profile-header-card { grid-template-columns: auto 1fr; }
  .profile-header-card > .button { grid-column: 1 / -1; width: 100%; }
  .simple-table { display: block; overflow-x: auto; white-space: nowrap; }
  .compare-strip { bottom: 5.8rem; border-radius: 18px; }
}
