/* ============================================================

   TOP BRAND BAR

============================================================ */


.card-badge {
  position: absolute;
  width: 64px;          /* 根据实际图片尺寸调整 */
  height: 64px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 20;
  pointer-events: none;
}

/* HOT —— 右上角，翻转并超出去 */
.card-badge--hot {
  top: -3px;
  right: -3px;
  background-image: url(../img/hot.png?v=1);
  /* transform: scaleX(-1);    水平翻转 */
}

/* NEW —— 左上角，超出去 */
.card-badge--new {
     top: 7px;
    left: -12px;
  background-image: url(../img/NEW.png); 
}

.site-bar {

  position: sticky;

  top: 0;

  z-index: 60;

  background: rgba(20, 16, 15, 0.96);

  backdrop-filter: saturate(140%) blur(8px);

  border-bottom: 1px solid rgba(255, 255, 255, 0.07);

}

.site-bar-inner {

  display: flex;

  align-items: center;

  justify-content: space-between;

  height: 70px;

}

.brand {

  display: flex;

  align-items: center;

  gap: 11px;

  color: #fff;

}

.brand-mark {

  width: 34px;

  height: 34px;

  border-radius: 8px;

  background: var(--c1);

  display: grid;

  place-items: center;

  font-size: 1.15rem;

  box-shadow: 0 6px 16px var(--red-glow);

}

.brand-name {

  font-family: var(--f-display);

  font-size: 1.25rem;

  font-weight: 700;

  letter-spacing: 0.01em;

}

.brand-name span {

  color: var(--c2);

}

.brand-tag {

  display: block;

  font-family: var(--f-body);

  font-size: 0.6rem;

  letter-spacing: 0.34em;

  text-transform: uppercase;

  color: rgba(255, 255, 255, 0.45);

  margin-top: 1px;

}

.site-nav {

  display: flex;

  align-items: center;

  gap: 34px;

}

.site-nav a {

  font-size: 0.82rem;

  font-weight: 500;

  letter-spacing: 0.04em;

  color: rgba(255, 255, 255, 0.7);

  transition: color 0.3s var(--ease);

  position: relative;

  padding: 4px 0;

}

.site-nav a::after {

  content: '';

  position: absolute;

  left: 0;

  bottom: -2px;

  width: 0;

  height: 1.5px;

  background: var(--c2);

  transition: width 0.3s var(--ease);

}

.site-nav a:hover,

.site-nav a.current {

  color: #fff;

}

.site-nav a:hover::after,

.site-nav a.current::after {

  width: 100%;

}

.bar-cta {

  display: inline-flex;

  align-items: center;

  gap: 7px;

  padding: 10px 20px;

  border-radius: 4px;

  background: var(--c1);

  color: #fff;

  font-size: 0.76rem;

  font-weight: 600;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  transition: all 0.3s var(--ease);

}

.bar-cta:hover {

  background: var(--red-dark);

  transform: translateY(-1px);

  box-shadow: 0 8px 22px var(--red-glow);

}

.nav-toggle {

  display: none;

  color: #fff;

  font-size: 1.5rem;

}



/* ============================================================

   PAGE LAYOUT

============================================================ */

.page-shell {

}

.page-container {

  width: 100%;

  max-width: var(--max);

  margin: 0 auto;

  padding: 52px 0;

  display: flex;

  gap: 40px;

  align-items: flex-start;

}



/* ============================================================

   SIDEBAR

============================================================ */

.sidebar {

  width: 400px;

  /* flex-shrink: 0;

  position: sticky;

  top: 118px; */

}



.s-border {

  border: 1px solid var(--line);

}



.category-panel {

  background: var(--white);

  overflow: hidden;

  box-shadow: var(--shadow-sm);

}



.sidebar-header {

  border-bottom: 1px solid var(--line-soft);

  width: 100%;

  background-color: var(--c1);

  border-radius: 0px 30px 0px 0px;

  color: #fff;

}

.sidebar-header h2 {

  line-height: normal;

  font-size: 30px;

  color: rgba(255, 255, 255, 1);

  padding-top: 30px;

  padding-bottom: 30px;

  padding-left: 30px;

  font-weight: bold;

}

.sidebar-header .eyebrow {

  font-size: 0.62rem;

  letter-spacing: 0.2em;

  margin-bottom: 9px;

}

.sidebar-header .eyebrow-line {

  width: 22px;

}



.hot-tags {

  display: flex;

  flex-wrap: wrap;

  gap: 7px;

  padding: 16px 16px 4px;

}



.hot-tags a:nth-child(2) {

  background: linear-gradient(135deg, rgba(201, 149, 42, 0.15), rgba(201, 149, 42, 0.08));

  color: #c9952a;

}



.hot-tag {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  padding: 7px 13px;

  color: var(--c1);

  background: var(--red-soft);

  border-radius: 999px;

  font-size: 0.74rem;

  font-weight: 600;

  letter-spacing: 0.02em;

  transition: all 0.25s var(--ease);

}

.hot-tag i {

  font-size: 0.85rem;

}

.hot-tag:hover {

  color: #fff;

  background: var(--c1);

  transform: translateY(-1px);

  box-shadow: 0 6px 14px rgb(135 134 133 / 35%);

}



.product-categories-link {

  position: relative;

  display: flex;

  align-items: center;

  justify-content: space-between;

  min-height: 62px;

  padding: 0 20px 0 24px;

  overflow: hidden;

  background: #fff;

  border: 1px solid #e8dddd;

  border-left: 6px solid var(--c1);

  color: #222;

  font-size: 17px;

  font-weight: 800;

  letter-spacing: 0;

  line-height: 1;

  text-decoration: none;

  box-shadow: 0 8px 20px rgba(80, 15, 15, 0.08);

  transition: transform 0.25s ease, box-shadow 0.25s ease, color 0.25s ease;

}



.product-categories-link::before {

  content: '';

  position: absolute;

  top: 0;

  right: -48px;

  width: 120px;

  height: 100%;

  background: var(--c1);

  transform: skewX(-24deg);

  transition: right 0.3s ease;

}



.product-categories-link::after {

  content: '→';

  position: relative;

  z-index: 1;

  display: grid;

  width: 34px;

  height: 34px;

  place-items: center;

  border-radius: 50%;

  background: var(--c1);

  color: #fff;

  font-size: 21px;

  font-weight: 400;

  transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;

}



.product-categories-link span {

  position: relative;

  z-index: 1;

}



.product-categories-link:hover {

  color: var(--c2);

  transform: translateY(-3px);

  box-shadow: 0 14px 28px rgba(146, 8, 11, 0.2);

  padding-left: 10px;

}



.product-categories-link:hover::before {

  right: -20px;

}



.product-categories-link:hover::after {

  background: #fff;

  color: var(--c1);

  transform: translateX(3px);

}



.product-categories-link i {

  display: block;

  z-index: 999;

  position: relative;

  width: 80%;

}



.product-categories-link:focus-visible {

  outline: 3px solid rgba(146, 8, 11, 0.28);

  outline-offset: 3px;

}



/* Category nav — always fully expanded */

.category-nav {

  padding: 12px 12px 16px;

}

.category-group {

  margin-bottom: 2px;

}

.cat-item {

  width: 100%;

  display: flex;

  align-items: center;

  gap: 11px;

  padding: 11px 12px;

  border-radius: var(--r-sm);

  font-size: 0.88rem;

  font-weight: 500;

  color: var(--ink-3);

  text-align: left;

  transition: all 0.25s var(--ease);

}

.cat-item:hover {

  background: var(--sand);

  color: var(--ink);

}

.cat-item.active {

  background: var(--c1);

  color: #fff;

  box-shadow: var(--shadow-sm);

}

.cat-icon {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: var(--muted-2);

  flex-shrink: 0;

  transition: all 0.25s var(--ease);

}

.cat-item:hover .cat-icon {

  background: var(--c1);

}

.cat-item.active .cat-icon {

  background: var(--c2);

}

.cat-name {

  flex: 1;

}

.cat-item .count {

  font-size: 0.72rem;

  padding: 1px 9px;

  background: var(--sand-2);

  border-radius: 999px;

  color: var(--muted);

  font-weight: 600;

  margin-left: auto;

}

.cat-item:hover .count {

  background: var(--white);

}

.cat-item.active .count {

  background: rgba(255, 255, 255, 0.18);

  color: #fff;

}



/* Sub categories — always visible */

.sub-categories {

  display: block;

  padding: 2px 0 6px 22px;

}

.sub-cat {

  width: 100%;

  display: flex;

  align-items: center;

  gap: 8px;

  padding: 8px 12px;

  border-radius: var(--r-sm);

  font-size: 0.82rem;

  color: var(--muted);

  text-align: left;

  transition: all 0.25s var(--ease);

  position: relative;

}

.sub-cat::before {

  content: '';

  position: absolute;

  left: 2px;

  top: 50%;

  transform: translateY(-50%);

  width: 5px;

  height: 1.5px;

  background: var(--muted-2);

  transition: all 0.25s var(--ease);

}

.sub-cat:hover {

  color: var(--ink);

  padding-left: 20px;

}

.sub-cat:hover::before {

  background: var(--c1);

  width: 9px;

}

.sub-cat.active {

  color: var(--c1);

  font-weight: 600;

  background: var(--red-soft);

  padding-left: 20px;

}

.sub-cat.active::before {

  background: var(--c1);

  width: 9px;

}

.sub-cat.active .count {

  color: var(--c1);

}

.sub-name {

  flex: 1;

}

.sub-cat .count {

  font-size: 0.7rem;

  color: var(--muted-2);

  font-weight: 600;

  margin-left: auto;

}



/* Sidebar quote card */

.sidebar-banner {

  margin-top: 20px;

  padding: 26px 24px;

  background: linear-gradient(155deg, var(--ink-2) 0%, #3a1112 100%);

  border-radius: var(--r-md);

  text-align: left;

  color: #fff;

  position: relative;

  overflow: hidden;

}

.sidebar-banner::before {

  content: '';

  position: absolute;

  top: -50px;

  right: -50px;

  width: 150px;

  height: 150px;

  background: radial-gradient(circle, var(--accent-glow), transparent 70%);

}

.banner-content {

  position: relative;

  z-index: 1;

}

.banner-content > i {

  font-size: 1.6rem;

  color: var(--c2);

  margin-bottom: 14px;

  display: block;

}

.banner-content h4 {

  font-family: var(--f-display);

  font-size: 1.3rem;

  font-weight: 700;

  margin-bottom: 8px;

}

.banner-content p {

  font-size: 0.82rem;

  color: rgba(255, 255, 255, 0.62);

  line-height: 1.6;

  margin-bottom: 18px;

}

.contact-btn {

  display: inline-flex;

  width: auto;

  min-height: 38px;

  align-items: center;

  justify-content: center;

  gap: 7px;

  padding: 0 15px;

  background: var(--c2);

  color: var(--ink);

  border-radius: 6px;

  font-size: 0.72rem;

  font-weight: 700;

  line-height: 1;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  transition: all 0.3s var(--ease);

}

.contact-btn i {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  margin-bottom: 0;

  color: currentColor;

  font-size: 0.95rem;

  line-height: 1;

}

.contact-btn:hover {

  background: #ffae33;

  transform: translateY(-2px);

  box-shadow: 0 10px 24px var(--accent-glow);

}



/* ============================================================

   MAIN CONTENT

============================================================ */

.main-content {

  width: 100%;

}



/* Toolbar */

.catalog-toolbar {

  display: flex;

  align-items: flex-end;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 16px;

  padding-bottom: 18px;

  margin-bottom: 26px;

  border-bottom: 1px solid var(--line);

}

.toolbar-info h2 {

  font-family: var(--f-display);

  font-size: 1.5rem;

  margin-bottom: 3px;

}

.toolbar-info p {

  font-size: 0.82rem;

  color: var(--muted);

}

.toolbar-info p strong {

  color: var(--c1);

  font-weight: 700;

}



/* ============================================================

   PRODUCTS GRID — 4 per row

============================================================ */

.products-grid {

  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 20px;

  align-items: start;

}



/* Product card */

.product-card {

  min-width: 0;

  background: var(--white);

  border: 1px solid var(--line);

  border-radius: var(--r-md);

  position: relative;

  display: flex;

  flex-direction: column;

  transition: border-color 0.4s var(--ease), box-shadow 0.4s var(--ease), transform 0.4s var(--ease);

}



.product-card::after {

  content: '';

  position: absolute;

  bottom: -21px;

  left: 0;

  background: url(../img/1_15.png);

  background-repeat: no-repeat;

  width: 100%;

  height: 20px;

  z-index: 0;

  opacity: 0.3;

  background-size: 100%;

}



.product-card:hover {

  border-color: transparent;

  box-shadow: var(--shadow-lg);

  transform: translateY(-6px);

}



/* Card image */

.card-image {

  position: relative;

  aspect-ratio: 1 / 1;

  overflow: hidden;

  background: var(--sand);

  border-radius: var(--r-md) var(--r-md) 0 0;

}

.card-image img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.8s var(--ease);

}

.product-card:hover .card-image img {

  transform: scale(1.07);

}

.card-image::after {

  content: '';

  position: absolute;

  inset: 0;

  background: linear-gradient(to top, rgba(20, 16, 15, 0.5), transparent 55%);

  opacity: 0;

  transition: opacity 0.4s var(--ease);

}

.product-card:hover .card-image::after {

  opacity: 1;

}



/* Badge */



.card-badge.is-new {

  background: var(--c2);

  color: var(--ink);

}



/* Inquire button (hover reveal) */

.card-inquire {

  position: absolute;

  left: 12px;

  right: 12px;

  bottom: 12px;

  z-index: 2;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  padding: 11px 18px;

  background: rgba(255, 255, 255, 0.96);

  backdrop-filter: blur(4px);

  color: var(--ink);

  border-radius: 6px;

  font-size: 0.74rem;

  font-weight: 600;

  letter-spacing: 0.06em;

  text-transform: uppercase;

  opacity: 0;

  transform: translateY(14px);

  transition: opacity 0.4s var(--ease), transform 0.4s var(--ease), background 0.3s var(--ease), color 0.3s var(--ease);

}

.card-inquire i {

  font-size: 0.95rem;

  transition: transform 0.3s var(--ease);

}

.product-card:hover .card-inquire {

  opacity: 1;

  transform: translateY(0);

}

.card-inquire:hover {

  background: var(--c1);

  color: #fff;

}

.card-inquire:hover i {

  transform: translate(2px, -2px);

}



/* Card body */

.card-body {

  padding: 14px 15px 15px;

  display: flex;

  flex-direction: column;

  flex: 1;

}

.product-name {

  color: var(--ink);

  font-family: var(--f-body);

  font-size: 0.95rem;

  font-weight: 600;

  line-height: 1.35;

  margin-bottom: 10px;

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;

  transition: color 0.3s var(--ease);

}

.product-card:hover .product-name {

  color: var(--c1);

}



/* Card footer — compact, no forced min-height */

.card-footer {

  padding-top: 10px;

  border-top: 1px solid var(--line-soft);

  display: flex;

  align-items: flex-end;

  justify-content: space-between;

  gap: 10px;

}

.price-info {

  display: flex;

  min-width: 0;

  flex-direction: column;

  gap: 2px;

}

.price {

  color: var(--ink);

  font-family: var(--f-display);

  font-size: 1.24rem;

  font-weight: 700;

  line-height: 1.15;

  white-space: nowrap;

}

.price.is-inquiry {

  font-size: 1.02rem;

  color: var(--ink-3);

}

.price.is-empty {

  color: var(--muted-2);

}

.moq {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  color: var(--muted);

  font-size: 0.73rem;

  font-weight: 500;

  white-space: nowrap;

  margin-top: 1px;

}

.moq i {

  font-size: 0.85rem;

  color: var(--muted-2);

}



/* ============================================================

   EMPTY STATE

============================================================ */

.empty-state {

  display: none;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  padding: 90px 20px;

  color: var(--muted-2);

  gap: 14px;

}

.empty-state i {

  font-size: 3.4rem;

  opacity: 0.5;

}

.empty-state p {

  font-size: 1rem;

  color: var(--muted);

}



/* ============================================================

   MOBILE NAVIGATION

============================================================ */

.mobile-nav-bar {

  display: none;

  position: fixed;

  top: 0;

  left: 0;

  right: 0;

  z-index: 1003;

  background: rgba(255, 255, 255, 0.98);

  backdrop-filter: blur(10px);

  border-bottom: 1px solid var(--line);

  padding: 0 16px;

  height: 60px;

  align-items: center;

  justify-content: space-between;

  box-shadow: 0 2px 8px rgba(20, 16, 15, 0.06);

}



.mobile-nav-bar.visible {

  display: flex;

}



.mobile-back-btn,

.mobile-category-btn {

  width: 40px;

  height: 40px;

  display: flex;

  align-items: center;

  justify-content: center;

  background: transparent;

  border: none;

  color: var(--ink);

  font-size: 1.4rem;

  cursor: pointer;

  transition: all 0.25s var(--ease);

  border-radius: var(--r-sm);

}



.mobile-back-btn:active,

.mobile-category-btn:active {

  background: var(--sand);

  transform: scale(0.95);

}



.mobile-nav-title {

  flex: 1;

  text-align: center;

  font-size: 1rem;

  font-weight: 700;

  color: var(--ink);

  margin: 0;

}



/* Mobile Category Overlay */

.mobile-category-overlay {

  position: fixed;

  inset: 0;

  z-index: 200;

  background: rgba(20, 16, 15, 0.5);

  backdrop-filter: blur(4px);

  opacity: 0;

  visibility: hidden;

  pointer-events: none;

  transition: opacity 0.3s var(--ease), visibility 0.3s var(--ease);

}



.mobile-category-overlay.active {

  opacity: 1;

  visibility: visible;

  pointer-events: auto;

}



/* Mobile Category Panel */

.mobile-category-panel {

  position: fixed;

  bottom: 0;

  left: 0;

  right: 0;

  z-index: 201;

  background: var(--white);

  border-radius: 20px 20px 0 0;

  max-height: 85vh;

  overflow-y: auto;

  transform: translateY(100%);

  visibility: hidden;

  pointer-events: none;

  transition: transform 0.4s var(--ease), visibility 0.4s var(--ease);

  box-shadow: 0 -4px 24px rgba(20, 16, 15, 0.15);

}



.mobile-category-panel.active {

  transform: translateY(0);

  visibility: visible;

  pointer-events: auto;

}



.mobile-panel-header {

  position: sticky;

  top: 0;

  z-index: 10;

  background: var(--white);

  padding: 20px 20px 16px;

  border-bottom: 1px solid var(--line);

  display: flex;

  align-items: center;

  justify-content: space-between;

}



.mobile-panel-header h3 {

  font-size: 1.15rem;

  font-weight: 700;

  color: var(--ink);

  margin: 0;

}



.mobile-panel-close {

  width: 36px;

  height: 36px;

  display: flex;

  align-items: center;

  justify-content: center;

  background: var(--sand);

  border: none;

  border-radius: 50%;

  color: var(--ink);

  font-size: 1.3rem;

  cursor: pointer;

  transition: all 0.25s var(--ease);

}



.mobile-panel-close:active {

  background: var(--sand-2);

  transform: scale(0.9);

}



/* Mobile Hot Tags */

.mobile-hot-tags {

  display: flex;

  gap: 10px;

  padding: 16px 20px;

  border-bottom: 1px solid var(--line-soft);

}



.mobile-hot-tag {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  padding: 8px 16px;

  background: var(--red-soft);

  color: var(--c1);

  border-radius: 999px;

  font-size: 0.8rem;

  font-weight: 600;

  transition: all 0.25s var(--ease);

}



.mobile-hot-tags a:nth-child(2) {

  background: linear-gradient(135deg, rgba(201, 149, 42, 0.15), rgba(201, 149, 42, 0.08));

  color: #c9952a;

}



.mobile-hot-tag i {

  font-size: 0.9rem;

}



.mobile-hot-tag:active {

  background: var(--c1);

  color: #fff;

  transform: scale(0.95);

}



/* Mobile Categories Grid */

.mobile-categories-grid {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 12px;

  padding: 20px;

}



.mobile-cat-item {

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  padding: 12px 8px;

  background: var(--white);

  border: 1.5px solid var(--line);

  border-radius: var(--r-md);

  transition: all 0.25s var(--ease);

  position: relative;

}



.mobile-cat-item:active {

  transform: scale(0.95);

}



.mobile-cat-item.active {

  border-color: var(--c1);

  background: var(--red-soft);

}



.mobile-cat-image {

  width: 100%;

  aspect-ratio: 1;

  border-radius: var(--r-sm);

  overflow: hidden;

  background: var(--sand);

  margin-bottom: 8px;

  position: relative;

}



.mobile-cat-image::after {

  content: '';

  position: absolute;

  inset: 0;

  background: linear-gradient(to top, rgba(20, 16, 15, 0.3), transparent 60%);

  pointer-events: none;

}



.mobile-cat-image img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.3s var(--ease);

}



.mobile-cat-item:active .mobile-cat-image img {

  transform: scale(1.1);

}



.mobile-cat-name {

  font-size: 0.8rem;

  font-weight: 600;

  color: var(--ink);

  line-height: 1.3;

  margin-bottom: 4px;

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;

}



.mobile-cat-item.active .mobile-cat-name {

  color: var(--c1);

}



.mobile-cat-item > .mobile-cat-count {

  display: none !important;

}



.mobile-cat-image .mobile-cat-count {

  position: absolute !important;

  top: auto !important;

  left: auto !important;

  right: 6px !important;

  bottom: 6px !important;

  z-index: 3 !important;

  min-width: 18px;

  height: 18px;

  display: inline-flex !important;

  align-items: center;

  justify-content: center;

  margin: 0 !important;

  padding: 0 5px;

  background: rgba(255, 255, 255, 0.86);

  border-radius: 6px;

  color: rgba(20, 16, 15, 0.78);

  font-size: 10px;

  font-weight: 700;

  line-height: 1;

  box-shadow: 0 1px 4px rgba(20, 16, 15, 0.14);

  backdrop-filter: blur(4px);

  transform: none !important;

  pointer-events: none;

}



.mobile-cat-item.active .mobile-cat-image .mobile-cat-count {

  background: rgba(255, 255, 255, 0.82);

  color: rgba(170, 26, 27, 0.78);

}



/* ============================================================

   RESPONSIVE

============================================================ */

@media (max-width: 1200px) {

  .products-grid {

    grid-template-columns: repeat(3, minmax(0, 1fr));

  }

}



@media (max-width: 1024px) {

  .wrap {

    padding: 0 32px;

  }

  .site-nav {

    display: none;

  }

  .page-container {

    padding: 40px 32px 70px;

    gap: 28px;

  }

  .sidebar {

    width: 370px;

    top: 90px;

  }

  .products-grid {

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 16px;

  }

}



@media (max-width: 768px) {

  /* Show mobile navigation */

  .mobile-nav-bar {

    display: none;

  }



  .mobile-nav-bar.visible {

    display: flex;

  }

  /* Hide PC sidebar */

  .sidebar {

    display: none !important;

  }



  .page-container {

    flex-direction: column;

  }

  .page-hero-inner {

    padding-top: 6rem !important;

    padding-bottom: 85px !important;

  }

  .products-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 14px;

  }

}



@media (max-width: 480px) {

  /* Mobile navigation adjustments */

  .mobile-nav-bar {

    height: 60px;

    padding: 0 12px;

  }



  .mobile-nav-title {

    font-size: 0.95rem;

  }



  .mobile-categories-grid {

    gap: 10px;

    padding: 16px;

    padding-bottom: 6rem;

  }



  .mobile-cat-item {

    padding: 10px 6px;

  }



  .mobile-cat-name {

    font-size: 0.75rem;

  }



  .mobile-cat-image .mobile-cat-count {

    font-size: 0.65rem;

    min-width: 17px;

    height: 17px;

    padding: 0 5px;

    line-height: 1;

  }



  .site-bar-inner {

    height: 62px;

  }

  .brand-tag {

    display: none;

  }

  .products-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 11px;

  }

  .card-body {

    padding: 13px 12px 15px;

  }

  .card-inquire {

    display: none;

  }

  .product-name {

    font-size: 14px;

    margin-bottom: 4px;

  }

  .price {

    font-size: 14px !important;

    line-height: normal;

    text-align: left;

    word-break: break-word;

    overflow-wrap: break-word;

    white-space: normal;

  }

  .moq {

    font-size: 11px !important;

  }

  .card-footer {

    flex-direction: column;

    align-items: flex-start;

    gap: 6px;

  }

}



/* 分页 */



@media (max-width: 768px) {

  .m-page {

    display: none !important;

  }



  .load-more-loading {

    display: none;

    justify-content: center;

    align-items: center;

    padding: 20px 0;

  }



  .load-more-loading span {

    width: 28px;

    height: 28px;

    border: 3px solid #ddd;

    border-top-color: #333;

    border-radius: 50%;

    animation: spin 0.8s linear infinite;

  }



  .load-end {

    font-size: 14px;

    color: #999;

    text-align: center;

    padding: 10px 0;

  }



  @keyframes spin {

    to {

      transform: rotate(360deg);

    }

  }

}

