/* =========================================================
   Sonara Jewelry — 站点补充样式（PHP 站专用）
   仅补齐原主题中没有的组件：分类侧栏、购物车、表单等
   ========================================================= */

:root {
  --brand-gold: #C59D79;
  --brand-gold-dark: #a9825f;
  --brand-ink: #1d1d1d;
  --brand-muted: #6b6b6b;
  --brand-line: #e6e6e6;
  --brand-bg-soft: #faf8f5;
}

body {
  font-family: var(--font-1-family, 'Halant', serif);
  color: var(--brand-ink);
}

.container {
  max-width: 1440px;
}

/* ---------- 面包屑 ---------- */
.breadcrumb { padding: 18px 0 6px; }
.breadcrumb-list {
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: #8a8a8a;
}
.breadcrumb-item + .breadcrumb-item::before { content: "/"; margin-right: 8px; color: #c9c9c9; }
.breadcrumb-item a { color: #8a8a8a; }
.breadcrumb-item a:hover { color: var(--brand-gold); }
.breadcrumb-item [aria-current] { color: var(--brand-ink); }

/* ---------- 分类页布局 ---------- */
.collection-wrap { display: flex; align-items: flex-start; gap: 34px; padding-top: 4px; padding-bottom: 60px; }
.collection-side { flex: 0 0 268px; width: 268px; }
.collection-main { flex: 1 1 auto; min-width: 0; }

.collection-head { padding: 6px 0 22px; }
.collection-title {
  font-size: 34px; line-height: 1.2; font-weight: 400; margin: 0 0 12px;
  letter-spacing: .01em; color: var(--brand-ink);
}
.collection-description {
  font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 14px; line-height: 1.75; color: #5b5b5b; max-width: 820px;
}
.collection-description p { margin: 0 0 10px; }

.collection-toolbar {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  border-top: 1px solid var(--brand-line); border-bottom: 1px solid var(--brand-line);
  padding: 12px 0; margin-bottom: 8px;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12px;
  letter-spacing: .05em; text-transform: uppercase;
}
.collection-sort { display: flex; align-items: center; gap: 10px; }
.collection-sort label { color: #8a8a8a; }
.collection-sort select {
  min-width: 190px; height: 38px; padding: 0 12px; border: 1px solid var(--brand-line);
  background: #fff; font-size: 12px; text-transform: uppercase; letter-spacing: .05em;
}

/* ---------- 侧栏 ---------- */
.side-block { border-bottom: 1px solid var(--brand-line); padding-bottom: 20px; margin-bottom: 22px; }
.side-block:first-child { border-top: 1px solid var(--brand-line); padding-top: 18px; }
.side-block__title {
  font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  margin: 0 0 12px; color: var(--brand-ink);
}
.side-cat, .side-filter, .link-list { list-style: none; margin: 0; padding: 0; }
.side-cat__item { border-bottom: 1px solid #f2f2f2; }
.side-cat__item:last-child { border-bottom: 0; }
.side-cat__row { display: flex; align-items: center; justify-content: space-between; gap: 6px; }
.side-cat__link {
  display: block; padding: 9px 0; flex: 1 1 auto;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px;
  color: #3a3a3a; letter-spacing: .02em;
}
.side-cat__link:hover, .side-cat__link.is-active { color: var(--brand-gold); }
.side-cat__toggle, .mobile-nav__toggle {
  border: 0; background: none; cursor: pointer; width: 26px; height: 26px; position: relative;
  flex: 0 0 26px;
}
.side-cat__toggle .icon-plus, .mobile-nav__toggle .icon-plus {
  position: absolute; inset: 0; margin: auto; width: 11px; height: 11px;
}
.side-cat__toggle .icon-plus::before, .side-cat__toggle .icon-plus::after,
.mobile-nav__toggle .icon-plus::before, .mobile-nav__toggle .icon-plus::after {
  content: ""; position: absolute; background: #1d1d1d; transition: transform .25s ease;
}
.side-cat__toggle .icon-plus::before, .mobile-nav__toggle .icon-plus::before { left: 0; right: 0; top: 5px; height: 1px; }
.side-cat__toggle .icon-plus::after, .mobile-nav__toggle .icon-plus::after { top: 0; bottom: 0; left: 5px; width: 1px; }
.side-cat__item.is-open .side-cat__toggle .icon-plus::after,
.mobile-nav__item.is-open .mobile-nav__toggle .icon-plus::after { transform: scaleY(0); }
.side-cat__sub { list-style: none; margin: 0 0 10px; padding: 0 0 0 14px; display: none; }
.side-cat__item.is-open .side-cat__sub { display: block; }
.side-cat__sub a {
  display: block; padding: 6px 0; font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 12.5px; color: #6d6d6d;
}
.side-cat__sub a:hover, .side-cat__sub a.is-active { color: var(--brand-gold); }

.side-filter li { margin: 0 0 4px; }
.side-filter a {
  display: block; padding: 7px 0; font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 13px; color: #4a4a4a;
}
.side-filter a:hover, .side-filter a.is-active { color: var(--brand-gold); }
.side-filter .count { color: #9a9a9a; font-size: 12px; }
.side-filter__clear { color: var(--brand-gold) !important; text-decoration: underline; }

/* ---------- 商品卡片补充 ---------- */
.products-grid .product { margin-top: 30px; }
.products-grid .product:nth-child(-n+4) { margin-top: 0; }
.card-media { background: #fff; }
.card-media__link { display: block; position: absolute; inset: 0; }
.card-media__link > img { width: 100%; height: 100%; object-fit: cover; display: block; }
.card-media .badge.sale-badge {
  position: absolute; top: 12px; left: 12px; z-index: 3;
  background: #EA1818; color: #fff; font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 10px; letter-spacing: .1em; text-transform: uppercase; padding: 4px 9px;
}
.card-action {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 4;
  display: flex; justify-content: center; padding: 10px;
  opacity: 0; transform: translateY(8px); transition: all .25s ease;
  pointer-events: none;
}
.card:hover .card-action, .card:focus-within .card-action { opacity: 1; transform: none; pointer-events: auto; }
.card-action__btn {
  border: 0; cursor: pointer; width: 100%;
  background: #1d1d1d; color: #fff; font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 11px; letter-spacing: .12em; text-transform: uppercase; padding: 11px 10px;
  transition: background .2s ease;
}
.card-action__btn:hover { background: var(--brand-gold); color: #fff; }
.card-action__btn.is-done { background: #2f7a4f; }

/* ---------- 分页 ---------- */
.pagination { margin: 44px 0 10px; }
.pagination-list { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 6px; }
.pagination-item {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 40px; height: 40px; padding: 0 12px; border: 1px solid var(--brand-line);
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px; color: #3a3a3a;
  background: #fff;
}
a.pagination-item:hover { border-color: var(--brand-gold); color: var(--brand-gold); }
.pagination-item.is-current { background: var(--brand-ink); border-color: var(--brand-ink); color: #fff; }
.pagination-item--gap { border: 0; }

/* ---------- 商品详情补充 ---------- */
.productView { padding-top: 10px; }
.halo-productView-left { width: 54%; }
.halo-productView-right { width: 46%; }
.productView-nav { position: relative; display: block; }
.productView-image { display: none; }
.productView-image.is-active { display: block; }
.productView-image .media { display: block; position: relative; }
.productView-image img { width: 100%; height: auto; display: block; }
.productView-thumbnail-wrapper { margin-top: 12px; }
.productView-for { display: flex; gap: 8px; flex-wrap: wrap; }
.productView-thumbnail {
  width: 74px; height: 74px; border: 1px solid var(--brand-line); cursor: pointer; overflow: hidden;
}
.productView-thumbnail.is-active { border-color: var(--brand-gold); }
.productView-thumbnail img { width: 100%; height: 100%; object-fit: cover; display: block; }
.productView-title {
  font-family: var(--font-1-family, 'Halant', serif);
  font-size: 26px; line-height: 1.35; font-weight: 500; margin: 0 0 14px; color: var(--brand-ink);
}
.productView-info {
  display: flex; flex-wrap: wrap; gap: 6px 24px;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12.5px; color: #6b6b6b;
  padding-bottom: 14px; border-bottom: 1px solid var(--brand-line);
}
.productView-info-name { color: #9a9a9a; margin-right: 6px; text-transform: uppercase; letter-spacing: .06em; }
.productView-price { padding: 18px 0 6px; }
.productView-sale-note {
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12px; color: var(--brand-gold-dark);
  letter-spacing: .03em;
}
.productView-form { margin: 18px 0 0; }
.product-form__controls { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 16px; }
.product-form__input { min-width: 180px; }
.form-label {
  display: block; font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #8a8a8a; margin-bottom: 6px;
}
.form-input {
  width: 100%; height: 44px; padding: 0 12px; border: 1px solid #dcdcdc; background: #fff;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px; color: var(--brand-ink);
}
.form-input:focus { outline: none; border-color: var(--brand-gold); }
textarea.form-input { height: auto; padding: 10px 12px; line-height: 1.6; }
.productView-groupTop { display: flex; align-items: flex-end; gap: 12px; }
.quantity__input {
  width: 86px !important; height: 51px; text-align: center; border: 1px solid #dcdcdc;
  font-family: var(--font-2-family, 'Inter', sans-serif);
}
.productView-action { flex: 1 1 auto; }
.product-form__submit,
.product-form__buttons .button {
  width: 100%; height: 51px; border: 1px solid var(--brand-gold); background: var(--brand-gold);
  color: #fff; font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px;
  letter-spacing: .14em; text-transform: uppercase; cursor: pointer; transition: all .2s ease;
}
.product-form__submit:hover { background: #fff; color: var(--brand-gold); }
.product-form__message {
  margin-top: 12px; font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px; color: #2f7a4f;
}
.product-form__message.is-error { color: #c0392b; }
.productView-extra { margin-top: 22px; }
.productView-quote {
  display: inline-block; font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12.5px;
  letter-spacing: .04em; color: var(--brand-gold-dark); border-bottom: 1px solid var(--brand-gold);
  padding-bottom: 2px;
}
.productView-usps {
  margin: 18px 0 0; padding: 18px 0 0; border-top: 1px solid var(--brand-line);
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12.5px; color: #6b6b6b; line-height: 2;
}
.productView-usps li::before { content: "—"; color: var(--brand-gold); margin-right: 8px; }
.productView-desc { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--brand-line); }
.halo-text-format { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 14px; line-height: 1.8; color: #4a4a4a; }
.halo-text-format ul { padding-left: 18px; }
.halo-text-format li { margin-bottom: 6px; }

/* 各区块留白沿用各 section 自带的内联样式，勿全局覆盖 */
.halo-block-header { margin-bottom: 8px; }
.halo-block-header .title {
  font-family: var(--font-1-family, 'Halant', serif); font-size: 26px; font-weight: 400; margin: 0;
}

/* ---------- 全部分类 ---------- */
.collections-search { display: flex; gap: 10px; max-width: 520px; margin: 18px 0 26px; }
.collections-search .form-input { height: 46px; }
.collections-search .button { height: 46px; min-width: 120px; background: var(--brand-ink); color: #fff; border: 0; }
.collections-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: var(--brand-line); border: 1px solid var(--brand-line); }
.collection-card {
  display: flex; flex-direction: column; justify-content: space-between; gap: 14px;
  background: #fff; padding: 20px 18px; min-height: 104px;
  font-family: var(--font-2-family, 'Inter', sans-serif);
}
.collection-card:hover { background: var(--brand-bg-soft); }
.collection-card__title { font-size: 13.5px; color: var(--brand-ink); letter-spacing: .02em; }
.collection-card__count { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #9a9a9a; }

/* ---------- 购物车 ---------- */
.cart-page { padding-bottom: 70px; }
.cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 40px; align-items: start; }
.cart-table { width: 100%; border-collapse: collapse; font-family: var(--font-2-family, 'Inter', sans-serif); }
.cart-table th {
  text-align: left; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #8a8a8a;
  border-bottom: 1px solid var(--brand-line); padding: 0 0 10px;
}
.cart-table td { padding: 18px 12px 18px 0; border-bottom: 1px solid #f0f0f0; vertical-align: top; }
.cart-cell-img { width: 92px; }
.cart-cell-img img { width: 80px; height: 80px; object-fit: cover; display: block; background: #f7f7f7; }
.cart-item-title { font-size: 13.5px; color: var(--brand-ink); }
.cart-item-option, .cart-item-sku { font-size: 12px; color: #8a8a8a; margin-top: 4px; }
.cart-cell-price, .cart-cell-total { font-size: 13.5px; white-space: nowrap; }
.cart-cell-qty { width: 130px; }
.qty-box { display: inline-flex; align-items: center; border: 1px solid #dcdcdc; }
.qty-box button {
  width: 32px; height: 34px; border: 0; background: #fff; cursor: pointer; font-size: 15px; line-height: 1;
}
.qty-box input {
  width: 44px; height: 34px; border: 0; border-left: 1px solid #ececec; border-right: 1px solid #ececec;
  text-align: center; font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px;
}
.cart-remove { border: 0; background: none; cursor: pointer; font-size: 18px; color: #b5b5b5; line-height: 1; }
.cart-remove:hover { color: #c0392b; }
.cart-summary { border: 1px solid var(--brand-line); padding: 26px 24px; background: var(--brand-bg-soft); }
.cart-summary__title { font-family: var(--font-1-family, 'Halant', serif); font-size: 20px; font-weight: 400; margin: 0 0 14px; }
.cart-summary__row {
  display: flex; justify-content: space-between; gap: 12px; padding: 9px 0;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13.5px;
  border-bottom: 1px solid #eee;
}
.cart-summary__row--muted { color: #8a8a8a; font-size: 12.5px; }
.cart-summary__note { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12px; color: #8a8a8a; line-height: 1.7; margin: 14px 0 18px; }
.cart-form .form-row { margin-bottom: 12px; }
.button, .button--secondary, .button--full { margin-top: 4px; }
.button { background: var(--brand-ink); color: #fff; border: 1px solid var(--brand-ink); height: 48px; }
.button:hover { background: var(--brand-gold); border-color: var(--brand-gold); }
.button--secondary { background: #fff; color: var(--brand-ink); border: 1px solid var(--brand-line); }
.button--secondary:hover { border-color: var(--brand-gold); color: var(--brand-gold); background: #fff; }
.button--full { width: 100%; }
.cart-actions { margin-top: 22px; display: flex; gap: 12px; }
.cart-empty, .cart-success, .collection-empty {
  padding: 60px 0; text-align: center;
  font-family: var(--font-2-family, 'Inter', sans-serif); color: #5b5b5b;
}
.cart-success h2 { font-family: var(--font-1-family, 'Halant', serif); font-weight: 400; font-size: 26px; }
.cart-success .button, .cart-empty .button, .collection-empty .button { display: inline-block; width: auto; padding: 0 26px; }

/* ---------- 购物车抽屉 ---------- */
.cart-drawer-body { padding: 18px 20px; font-family: var(--font-2-family, 'Inter', sans-serif); }
.cart-drawer-list { margin: 0; }
.cart-drawer-item { display: flex; gap: 12px; padding: 14px 0; border-bottom: 1px solid #f0f0f0; position: relative; }
.cart-drawer-item__media img { width: 70px; height: 70px; object-fit: cover; display: block; background: #f7f7f7; }
.cart-drawer-item__info { flex: 1 1 auto; padding-right: 22px; }
.cart-drawer-item__title { font-size: 12.5px; color: var(--brand-ink); display: block; line-height: 1.5; }
.cart-drawer-item__variant { font-size: 11.5px; color: #8a8a8a; margin-top: 3px; }
.cart-drawer-item__qty { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 12px; }
.cart-drawer-item__qty button { width: 22px; height: 22px; border: 1px solid #dcdcdc; background: #fff; cursor: pointer; line-height: 1; }
.cart-drawer-item__price { font-size: 12.5px; white-space: nowrap; }
.cart-drawer-item__remove { position: absolute; right: 0; top: 10px; border: 0; background: none; font-size: 16px; color: #b5b5b5; cursor: pointer; }
.cart-drawer-footer { padding-top: 16px; }
.cart-drawer-total { display: flex; justify-content: space-between; font-size: 14px; padding-bottom: 14px; }
.cart-drawer-continue { display: block; text-align: center; margin-top: 10px; font-size: 12px; color: #8a8a8a; text-decoration: underline; }

/* ---------- 抽屉状态 ---------- */
.halo-sidebar.is-open { transform: translate3d(0, 0, 0) !important; }
body.overlay-open { overflow: hidden; }
.overlay-backdrop {
  position: fixed; inset: 0; background: rgba(0, 0, 0, .45); z-index: 100;
  opacity: 0; transition: opacity .3s ease;
}
.overlay-backdrop.is-visible { opacity: 1; }
.halo-sidebar, .page-sidebar { z-index: 102; }

/* 移动端菜单 */
.mobile-nav { list-style: none; margin: 0; padding: 8px 20px 40px; }
.mobile-nav__item { border-bottom: 1px solid #eee; }
.mobile-nav__row { display: flex; align-items: center; justify-content: space-between; }
.mobile-nav__link {
  flex: 1 1 auto; padding: 14px 0; font-family: var(--font-2-family, 'Inter', sans-serif);
  font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--brand-ink);
}
.mobile-nav__sub { list-style: none; margin: 0; padding: 0 0 12px 12px; display: none; }
.mobile-nav__item.is-open .mobile-nav__sub { display: block; }
.mobile-nav__sub a { display: block; padding: 8px 0; font-size: 13px; color: #6b6b6b; }

/* ---------- 表单 / 页面 ---------- */
.page-search { display: flex; gap: 10px; max-width: 560px; margin: 16px 0 4px; }
.page-search .form-input { height: 46px; }
.page-search .button { height: 46px; min-width: 120px; background: var(--brand-ink); color: #fff; border: 0; }
.search-summary { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px; color: #8a8a8a; }
.nf-wrap { padding: 50px 0 10px; }
.nf-actions { display: flex; justify-content: center; gap: 12px; margin: 22px 0 10px; }
.nf-actions .button { display: inline-block; width: auto; padding: 0 26px; }
.page-body { padding-bottom: 40px; }
.link-list li { padding: 10px 0; border-bottom: 1px solid #f0f0f0; }
.link-list a { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 14px; }
.link-list a:hover { color: var(--brand-gold); }

/* ---------- 搜索抽屉 ---------- */
.halo-sidebar-search .halo-sidebar-wrapper { padding: 16px 20px; }
.sidebar-search-form { display: flex; gap: 8px; }
.sidebar-search-form input { flex: 1 1 auto; }

/* ---------- 响应式 ---------- */
@media (max-width: 1199px) {
  .collection-wrap { gap: 24px; }
  .collection-side { flex: 0 0 230px; width: 230px; }
  .collections-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cart-layout { grid-template-columns: 1fr; }
}
@media (max-width: 989px) {
  .collection-wrap { display: block; }
  .collection-side { width: 100%; flex: none; margin-bottom: 26px; }
  .collection-title { font-size: 26px; }
  .halo-productView-left, .halo-productView-right { width: 100%; }
  .productView-top { display: block; }
  .halo-productView-right { margin-top: 24px; }
  .collections-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .products-grid.column-4 .product { width: 50%; }
  .products-grid.column-4 .product:nth-child(-n+4) { margin-top: 30px; }
  .products-grid.column-4 .product:nth-child(-n+2) { margin-top: 0; }
}
@media (max-width: 599px) {
  .collections-grid { grid-template-columns: 1fr; }
  .collection-toolbar { flex-direction: column; align-items: flex-start; gap: 10px; }
  .cart-table thead { display: none; }
  .cart-table tr { display: grid; grid-template-columns: 80px 1fr; gap: 8px; }
  .cart-table td { padding: 6px 0; border: 0; }
  .cart-cell-img { grid-row: span 4; }
}

/* ---------- 图片灯箱 ---------- */
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;padding:40px;cursor:zoom-out}
.lightbox.is-open{opacity:1}
.lightbox img{max-width:min(1100px,92vw);max-height:90vh;width:auto;height:auto;background:#fff}
.lightbox__close{position:absolute;top:14px;right:22px;border:0;background:none;color:#fff;font-size:34px;line-height:1;cursor:pointer}
.sidebar-search-hint{margin-top:18px;font-family:var(--font-2-family,'Inter',sans-serif);font-size:12.5px;line-height:1.9;color:#8a8a8a}
.sidebar-search-hint a{color:var(--brand-gold-dark);text-decoration:underline}
.nav-account-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-2-family,'Inter',sans-serif);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
/* ---------- 自定义元素兜底（原主题由 JS 注册，PHP 站里统一 block） ---------- */
sticky-header-basic, sticky-header-mobile, details-modal, quick-search, side-drawer,
quantity-input, collapse-button, breadcrumb-component, category-dropdown-list,
product-form, loading-banner, quick-cart-items, cart-notification { display: block; }
quantity-input { display: block; width: auto; }/* 主导航：与原站一致的水平内边距（原站由主题 JS 下发 --spacing-left/right） */
#HeaderNavigation .menu-lv-1__action { padding-left: 12px; padding-right: 12px; font-size: 15px; }
#HeaderNavigation .list-menu--inline > .menu-lv-item:first-child > .menu-lv-1__action { padding-left: 0; }
#HeaderNavigation .list-menu--inline > .menu-lv-toggle { display: none; }
#HeaderNavigation .list-menu--inline { justify-content: center; }
.header-nav-basic .menu-lv-1__action > .text.highlight { display: inline-block; }/* 分类页标题区：居中对齐（对齐原站 header-collection 版式） */
.collection-head--center { text-align: center; padding: 10px 0 26px; }
.collection-head--center .collection-title { font-size: 38px; letter-spacing: .02em; }
.collection-head--center .collection-description { margin: 0 auto; max-width: 900px; }
.collection-head--center .breadcrumb-list { justify-content: center; }/* 侧栏搜索框 */
.side-search { display: flex; border: 1px solid #dddddd; margin: 0 0 22px; }
.side-search .form-input { border: 0; height: 44px; font-size: 13px; }
.side-search__btn { flex: 0 0 46px; border: 0; background: #1d1d1d; color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.side-search__btn:hover { background: var(--brand-gold); }
.side-contact-line { display: flex; flex-direction: column; gap: 2px; margin: 0 0 12px; font-family: var(--font-2-family,'Inter',sans-serif); font-size: 13px; }
.side-contact-line span { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #9a9a9a; }
.side-contact-line a { color: #1d1d1d; }
.side-contact-line a:hover { color: var(--brand-gold); }
/* 商品页两栏 */
.product-wrap .halo-productView-left, .product-wrap .halo-productView-right { width: 50%; }
.product-wrap .productView-title { font-size: 22px; }
@media (max-width: 989px) {
  .product-wrap .halo-productView-left, .product-wrap .halo-productView-right { width: 100%; }
}/* 商品图库：尺寸与裁切规范化 */
.productView-img-container { position: relative !important; overflow: hidden; }
.productView-img-container .media { position: absolute !important; inset: 0; display: block; }
.productView-img-container .media img { width: 100% !important; height: 100% !important; object-fit: contain !important; background: #fff; }
.productView-thumbnail { overflow: hidden; }
.productView-thumbnail img { width: 100% !important; height: 100% !important; object-fit: cover !important; opacity: 1 !important; }
.productView-thumbnail-link { display: block; width: 100%; height: 100%; }
/* 侧栏链接颜色（覆盖主题默认金色链接） */
.side-block a, .side-block a:visited { color: #3a3a3a; }
.side-block .side-cat__link:hover, .side-block .side-cat__sub a:hover,
.side-block .side-filter a:hover { color: var(--brand-gold) !important; }
.side-block .is-active { color: var(--brand-gold) !important; }/* 侧栏分类链接（强制覆盖主题链接色） */
.side-block .side-cat .side-cat__link,
.side-block .side-cat .side-cat__sub a,
.side-block .side-filter a { color: #3a3a3a !important; }
.side-block .side-cat .side-cat__link:hover,
.side-block .side-cat .side-cat__sub a:hover,
.side-block .side-filter a:hover,
.side-cat__sub a.is-active,
.side-cat__link.is-active { color: var(--brand-gold) !important; }/* 排序栏：避免 "Sort by" 换行挤压 */
.collection-sort label { white-space: nowrap; }
.collection-sort select { height: 40px; }
.collection-toolbar { align-items: center; }/* 全部分类页排版修正 */
.collection-head .halo-text-format { text-align: left; }
.collections-search .button, .page-search .button { width: auto; flex: 0 0 auto; min-width: 120px; padding: 0 24px; }
.collections-search .form-input, .page-search .form-input { flex: 1 1 auto; }/* 原主题侧栏折叠块：保持与线上一致（Categories 展开，子分类按 is-clicked 展开） */
.sidebarBlock-contentWrapper.is-expanded { max-height: none; overflow: visible; pointer-events: auto; }
.all-categories-list .dropdown-category-list { display: none; }
.all-categories-list .navPages-item.is-clicked > .dropdown-category-list { display: block; }
.all-categories-list .navPages-item .icon-dropdown { cursor: pointer; }/* 遮罩层：确保可见（部分主题规则会隐藏带 hidden 的元素） */
.overlay-backdrop { display: block; }
.overlay-backdrop[hidden] { display: none !important; }/* 抽屉与遮罩层级修正 */
.overlay-backdrop { z-index: 900 !important; }
.halo-sidebar { z-index: 901 !important; }
.cart-drawer-item__media img { opacity: 1 !important; }/* 移动端：只显示移动版头部（原站由主题 JS 切换，这里用媒体查询） */
@media (max-width: 1024px) {
  .section-header-basic, .section-header-navigation { display: none !important; }
  .shopify-section__header-mobile { display: block !important; }
}
@media (min-width: 1025px) {
  .shopify-section__header-mobile { display: none !important; }
}/* =========================================================
   分类页（Boost 版式：居中 hero + 侧栏 + 5 列商品墙）
   数值取自线上实测：h1 40/500/大写、desc 16、pill 16、侧栏 288、卡片 5 列
   ========================================================= */
.coll-hero { max-width: 1200px; margin: 0 auto; padding: 4px 15px 26px; text-align: center; }
.coll-hero .breadcrumb { padding: 0 0 16px; }
.coll-hero .breadcrumb-list { justify-content: center; }
.coll-hero .collection-title {
  font-family: var(--font-1-family, 'Halant', serif); font-size: 40px; font-weight: 500;
  line-height: 1.2; text-transform: uppercase; letter-spacing: normal; color: #262626; margin: 0 0 16px;
}
.coll-hero .collection-description {
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 16px; line-height: 1.35;
  color: #505050; margin: 0 auto 20px; max-width: 1170px; text-align: center;
}
.coll-pill {
  display: inline-block; border: 1px solid #dcdcdc; border-radius: 40px; padding: 7px 26px;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 16px; letter-spacing: normal;
  text-transform: none; color: #262626; background: #fff; line-height: 1.2;
}
.coll-pill:hover { border-color: var(--brand-gold); color: var(--brand-gold); }

.boost-sd__main-container { display: flex; align-items: flex-start; width: 100%; max-width: none; margin: 0 auto; }
.sidebar-app { flex: 0 0 288px; width: 288px; padding: 0; }
.sidebar-app .sidebar-product { float: none; width: 100%; position: static; }
.boost-product-listing-column { flex: 1 1 auto; min-width: 0; padding: 0 0 40px 30px; }

/* 侧栏：字体与原站一致（Bricolage） */
.sidebar-product .navPages-action,
.sidebar-product .navPage-subMenu-action,
.sidebar-product .sidebarBlock-heading { font-family: var(--font-2-family, 'Inter', sans-serif); }
.sidebar-product .search__input { font-family: var(--font-2-family, 'Inter', sans-serif); }

/* 筛选条 */
.boost-sd__filter-tree-horizontal-option-list {
  display: flex; align-items: center; gap: 26px; flex-wrap: wrap;
  padding: 10px 0 12px; border-bottom: 1px solid #ececec; margin-bottom: 18px; position: relative;
}
.boost-sd__filter-option { position: relative; }
.boost-sd__filter-option-title { display: inline-flex; align-items: center; gap: 7px; background: none; border: 0; padding: 6px 0; cursor: pointer; }
.boost-sd__filter-option-heading {
  margin: 0; font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 14px; font-weight: 700;
  color: #484848; letter-spacing: normal;
}
.boost-sd__filter-option-icon { transition: transform .2s ease; }
.boost-sd__filter-option.is-open .boost-sd__filter-option-icon { transform: rotate(90deg); }
.boost-sd__filter-option-itemwrapper {
  display: none; position: absolute; left: 0; top: 100%; z-index: 60;
  background: #fff; border: 1px solid #e8e8e8; box-shadow: 0 10px 30px rgba(0,0,0,.08);
  min-width: 240px; max-height: 340px; overflow: auto; padding: 10px 0;
}
.boost-sd__filter-option.is-open .boost-sd__filter-option-itemwrapper { display: block; }
.boost-sd__filter-option-listitem { list-style: none; margin: 0; padding: 0; }
.boost-sd__filter-option-item-button {
  display: flex; justify-content: space-between; gap: 14px; width: 100%; padding: 7px 16px;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px; color: #3a3a3a;
}
.boost-sd__filter-option-item-button:hover { background: #faf8f5; color: var(--brand-gold); }
.boost-sd__filter-option-item-button.is-selected { color: var(--brand-gold); font-weight: 600; }
.boost-sd__filter-option-item-amount { color: #b3b3b3; font-size: 12px; }

/* 排序 */
.boost-sd__sorting { margin-left: auto; position: relative; }
.boost-sd__sorting-button {
  display: inline-flex; align-items: center; gap: 6px; background: none; border: 0; cursor: pointer;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 14px; font-weight: 700; color: #484848;
}
.boost-sd__sorting-value { font-weight: 400; color: #262626; }
.boost-sd__sorting-list {
  display: none; position: absolute; right: 0; top: 100%; z-index: 60; min-width: 220px;
  background: #fff; border: 1px solid #e8e8e8; box-shadow: 0 10px 30px rgba(0,0,0,.08); padding: 8px 0; list-style: none; margin: 0;
}
.boost-sd__sorting.is-open .boost-sd__sorting-list { display: block; }
.boost-sd__sorting-option-item { display: block; padding: 8px 16px; font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 13px; color: #3a3a3a; }
.boost-sd__sorting-option-item:hover { background: #faf8f5; color: var(--brand-gold); }
.boost-sd__sorting-option--active .boost-sd__sorting-option-item { color: var(--brand-gold); }
.boost-sd__clear-filters { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 12px; color: #9a9a9a; text-decoration: underline; }

/* 卡片字体统一 */
.boost-sd__product-title, .boost-sd__product-price, .boost-sd__product-price span, .pro-cod,
.boost-sd__button, .boost-sd__pagination-number, .boost-sd__pagination-button { font-family: var(--font-2-family, 'Inter', sans-serif); }

/* 分页 */
.boost-sd__pagination { display: flex; justify-content: center; align-items: center; gap: 8px; padding: 34px 0 10px; }
.boost-sd__pagination-number, .boost-sd__pagination-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 34px; height: 34px; padding: 0 8px; background: none; border: 0;
  font-size: 13px; color: #262626; cursor: pointer;
}
.boost-sd__pagination-number--active { color: #000; font-weight: 700; text-decoration: underline; }
.boost-sd__pagination-number--disabled { color: #b3b3b3; }

/* Boost 列表布局 */
.boost-sd__product-list.boost-sd__product-list-grid--5-col { display: flex; flex-wrap: wrap; }/* =========================================================
   商品详情页（重写：大图 + 规整两栏）
   修复点：容器 175px 内边距、.productView-top 100px 右内边距、
           主题 !important 的 40%/60% 锁死导致宽屏塌陷
   ========================================================= */
.boost-sd__main-container.product-page-wrap { align-items: flex-start; }
.product-page-wrap > .sidebar-app { flex: 0 0 288px; width: 288px; padding: 22px 0 48px; }
.product-page-main { flex: 1 1 auto; min-width: 0; padding: 22px 30px 48px 21px; }
.product-page-main > .breadcrumb { width: 100%; display: block; padding: 0 0 18px; }

.product-page-wrap .productView { padding-top: 0; }
.product-page-wrap .productView-top { display: flex; align-items: flex-start; gap: 0; padding-right: 0 !important; }

/* 左：画廊 —— 占 52%，去掉固定 426 上限，图片随宽度放大 */
.product-page-wrap .productView-top .halo-productView-left {
  width: 52% !important; flex: 0 0 52%; max-width: none;
  padding-right: 34px; margin: 0; position: sticky; top: 20px;
}
.product-page-wrap .productView-image-wrapper { width: 100%; }
.product-page-wrap .productView-nav { width: 100%; }
.product-page-wrap .productView-img-container { width: 100% !important; padding-bottom: 100% !important; }
.product-page-wrap .productView-img-container .media img { width: 100% !important; height: 100% !important; object-fit: contain !important; background: #fff; }

/* 右：信息区 —— 占 48% */
.product-page-wrap .productView-top .halo-productView-right {
  width: 48% !important; flex: 1 1 48%; position: static !important; margin: 0;
}

/* 标题 / 价格 / 表单的纵向节奏 */
.productView-title {
  font-family: var(--font-1-family, 'Halant', serif); font-size: 26px; font-weight: 500;
  line-height: 1.32; color: #262626; margin: 0; padding: 0 0 14px;
}
.productView-info { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 15px; color: #505050; border: 0; padding: 0; }
.productView-info-name { color: #7d7d7d; text-transform: uppercase; letter-spacing: .06em; font-size: 12.5px; margin-right: 6px; }
.productView-info-item { display: flex; align-items: baseline; gap: 4px; }
.productView-price { padding: 16px 0 0; margin: 0; }
.productView-price .price { display: flex; align-items: baseline; gap: 14px; }
.productView-price .price-item { font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 30px; font-weight: 700; line-height: 1; }
.productView-price .price-item--regular { color: #b5b5b5; }
.productView-price .price-item--sale { color: #800080; }
.productView-price .price-item s { text-decoration: line-through; }
.productView-form { margin: 22px 0 0; }
.productView-desc { margin-top: 28px; border-top: 1px solid #ececec; padding-top: 6px; }
.productView-desc__head {
  display: flex; align-items: center; justify-content: space-between; width: 100%;
  background: none; border: 0; padding: 12px 0; cursor: pointer;
  font-family: var(--font-2-family, 'Inter', sans-serif); font-size: 14px; font-weight: 700;
  letter-spacing: .06em; color: #262626;
}
.productView-desc__body { display: block; padding-top: 2px; }
.productView-desc.is-collapsed .productView-desc__body { display: none; }
.productView-desc__body ul { padding-left: 18px; margin: 0 0 10px; }
.productView-desc__body li { margin-bottom: 7px; line-height: 1.7; }

/* 缩略图 */
.productView-thumbnail-wrapper { margin-top: 14px; }
.productView-for { display: flex; gap: 8px; flex-wrap: wrap; }
.productView-thumbnail { width: 92px; height: 92px; padding: 0; border: 1px solid #e6e6e6; cursor: pointer; }
.productView-thumbnail.is-active { border-color: var(--brand-gold); }
.productView-thumbnail img { width: 100% !important; height: 100% !important; object-fit: cover !important; opacity: 1 !important; }

/* 相关商品 */
.product-page-wrap .halo-block.product-recommendations { margin-top: 46px; padding: 0 0 10px; }
.product-recommendations .halo-block-header .title {
  font-family: var(--font-1-family, 'Halant', serif); font-size: 38px; font-weight: 500;
  line-height: 1.2; margin: 0 0 10px; color: #262626;
}

/* 平板 / 手机 */
@media (max-width: 1024px) {
  .product-page-wrap > .sidebar-app { display: none; }
  .product-page-main { padding: 18px 15px 40px; }
  .product-page-wrap .productView-top { display: block; }
  .product-page-wrap .productView-top .halo-productView-left {
    width: 100% !important; flex: none; padding-right: 0; position: static; margin-bottom: 22px;
  }
  .product-page-wrap .productView-top .halo-productView-right { width: 100% !important; }
  .productView-title { font-size: 21px; }
  .productView-price .price-item { font-size: 24px; }
}

/* =========================================================
   询盘表单（替代原加购表单）
   ========================================================= */
.inquiry-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; margin: 4px 0 14px; }
.inquiry-field .form-label { margin-bottom: 5px; }
.inquiry-field--full { margin-bottom: 14px; }
.inquiry-form .form-input { height: 44px; }
.inquiry-form textarea.form-input { height: auto; min-height: 90px; padding: 10px 12px; line-height: 1.6; }
.inquiry-form .productView-groupTop { margin-top: 6px; }
.product-form__message.is-error { color: #c0392b; }
@media (max-width: 749px) { .inquiry-fields { grid-template-columns: 1fr; } }/* =========================================================
   品牌替换后的细节修正
   ========================================================= */
/* 头部信息栏（原电话位）：三列，间距与原电话图标一致 */
.header-customer_service .customer-service--text { display: flex; align-items: flex-start; gap: 30px; }
.header-customer_service .phone-item { display: block; margin: 0; text-decoration: none; }
.header-customer_service .phone-item .text { display: block; line-height: 1.35; }
.header-customer_service .phone-item .label { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #5b5b5b; }
.header-customer_service .phone-item .value { font-size: 14px; color: #1d1d1d; }

/* 询盘图标（信封）不要被主题 fill 成实心 */
.header__icon--cart .icon-cart { fill: none !important; stroke: currentColor !important; }
.header__icon--cart:hover .icon-cart { stroke: var(--brand-gold) !important; }

/* Boost 商品列表的负外边距导致的横向滚动 */
.boost-product-listing-column .boost-sd__product-list,
.product-recommendations .boost-sd__product-list { margin-left: 0 !important; margin-right: 0 !important; }
.product-recommendations .boost-sd__product-item:first-child { margin-left: 0 !important; }

/* 页脚 Wholesale 列文字 */
.footer-block__details.rte a { font-size: 14px; line-height: 2; }/* 商品页右列右边距，对齐原站 1066 内容宽 */
.product-page-main { padding-right: 35px; }
/* 页脚链接颜色统一 */
.footer-block__details.rte a { color: inherit; }/* 首页「图标+文字」区块：去掉电话图标，仅保留文案 */
.halo-icon-with-text .item-content-item.item-content-left { display: none !important; }
.halo-icon-with-text .item-content { justify-content: center !important; gap: 6px; }
.halo-icon-with-text .item-content .sub-title { display: block; font-weight: 600; }/* =========================================================
   头部导航：修掉宽屏下 ul 被压窄导致 NEW 徽章被裁的问题
   ========================================================= */
.header-bottom--wrapper { width: 100% !important; }
#HeaderNavigation { flex: 1 1 auto !important; overflow: visible !important; width: auto !important; }
#HeaderNavigation .header__inline-menu { width: 100%; min-width: max-content; }
#HeaderNavigation .list-menu--inline { width: 100%; justify-content: center; flex-wrap: nowrap; }/* 面包屑：窄屏下末级过长时截断，避免换行撑高 */
.breadcrumb-list { flex-wrap: nowrap; overflow: hidden; }
.breadcrumb-item { white-space: nowrap; }
.breadcrumb-item:last-child { overflow: hidden; text-overflow: ellipsis; min-width: 0; }
@media (max-width: 767px) {
  .breadcrumb-item:last-child { display: none; }
}/* 页脚两列文字对齐统一（与其它列一致居中） */
.footer-block__details.rte { text-align: center; }
.footer-block__details.rte a { display: inline-block; }
/* =========================================================
   Instagram 条（对应线上 elfsight feed 位）
   ========================================================= */
.cjw-ig { padding: 18px 0 24px; text-align: center; }
.cjw-ig__title {
  font-family: var(--font-1-family, 'Halant', serif);
  font-size: 22px; font-weight: 400; letter-spacing: .04em; color: #262626;
  margin: 0 0 18px;
}
.cjw-ig__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; }
.cjw-ig .ig-cell { display: block; position: relative; overflow: hidden; aspect-ratio: 1 / 1; }
.cjw-ig .ig-cell img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.cjw-ig .ig-cell:hover img { transform: scale(1.04); }
@media (max-width: 1024px) { .cjw-ig__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .cjw-ig__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cjw-ig__title { font-size: 18px; } }