/* =========================================================
   CANGCH — LUXE LAYER
   参考高级时装屋官网的排版语言：大量留白、极细分割线、
   小号大字距标签、衬线标题、黑白灰、全幅影像。
   仅覆盖样式，不动业务逻辑。
   ========================================================= */

:root{
  --ink:#0d0d0d;
  --ink-soft:#3a3a3a;
  --mute:#8a8a8a;
  --line:#e6e3de;
  --paper:#f7f5f1;
  --paper-2:#efece6;
  --wrap:1440px;
  --gutter:48px;
}

html{ -webkit-font-smoothing:antialiased; }
body{
  background:#fff;
  color:var(--ink);
  font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:14px;
  letter-spacing:.02em;
  line-height:1.75;
}
body.template-index{ background:#fff; }

h1,h2,h3,h4{ font-weight:400; color:var(--ink); }
h1{ letter-spacing:.04em; }
a{ color:var(--ink); text-decoration:none; }
a:hover{ color:#000; }
img{ max-width:100%; height:auto; }
hr{ border:0; border-top:1px solid var(--line); margin:0; }
::selection{ background:#111; color:#fff; }

.site-wrapper{ max-width:none !important; padding:0 !important; margin:0 !important; }
.grid{ max-width:var(--wrap); margin:0 auto; padding-left:var(--gutter); padding-right:var(--gutter); }
.main-content{ padding-bottom:0; }
.breadcrumb-nav{
  font-size:11px; letter-spacing:.16em; color:var(--mute);
  padding:22px 0 0; margin:0; text-align:left !important;
}
.breadcrumb-nav a{ color:var(--mute); }
.breadcrumb-nav a:hover{ color:var(--ink); }

/* ---------------- header ---------------- */
.cn-header{
  position:sticky; top:0; z-index:60;
  background:#fff;
  border-bottom:1px solid var(--line);
  margin:0; padding:0;
}
.cn-header .page-border{ display:none; }
.cn-head{
  max-width:var(--wrap); margin:0 auto;
  padding:14px var(--gutter) 0;
}
.cn-topbar{
  height:auto !important; padding:0 !important;
  display:flex; justify-content:flex-end;
  border:0 !important;
}
.cn-actions{ display:flex; align-items:center; gap:22px; }
.cn-icon{ display:inline-flex; align-items:center; justify-content:center; opacity:.75; transition:opacity .25s; }
.cn-icon:hover{ opacity:1; }
.cn-icon svg{ width:17px; height:17px; }
.cn-icon svg path{ fill:#111 !important; }
.cn-badge{
  font-size:10px; letter-spacing:0; top:-6px;
  background:#111 !important; color:#fff !important;
  min-width:15px; height:15px; line-height:15px;
  border-radius:50%; padding:0;
}
.cn-logo{ text-align:center; padding:0 0 12px; }
.cn-logo-img{ max-height:34px; width:auto; }
.cn-nav{ border:0; padding-bottom:14px; }
.cn-nav ul{
  display:flex; justify-content:center; align-items:center;
  gap:44px; margin:0; padding:0; list-style:none;
}
.cn-nav ul li{ position:relative; }
.cn-nav ul li > a{
  font-size:12px; letter-spacing:.26em;
  color:var(--ink); padding:6px 0;
  border-bottom:1px solid transparent;
  transition:border-color .25s,color .25s;
}
.cn-nav ul li > a:hover{ border-bottom-color:#111; }
.cn-nav ul ul{
  position:absolute; top:100%; left:50%; transform:translateX(-50%);
  background:#fff; min-width:170px; padding:16px 0;
  display:none; gap:0; flex-direction:column;
  border:1px solid var(--line); z-index:70;
}
.cn-nav ul li.has-sub:hover ul{ display:flex; }
.cn-nav ul ul li a{
  display:block; padding:8px 22px; font-size:12px;
  letter-spacing:.14em; white-space:nowrap; border:0;
}

/* ---------------- hero ---------------- */
.luxe-hero,.flexslider{
  border:0 !important; margin:0 !important; padding:0 !important;
  background:var(--paper);
  position:relative;
}
.luxe-hero .slides li{ position:relative; overflow:hidden; }
.luxe-hero .slides li::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.16) 40%,rgba(0,0,0,0) 66%,rgba(0,0,0,0) 100%);
}
.luxe-hero__caption{ z-index:4; }
.luxe-hero .slides img{
  width:100%; height:calc(100vh - 170px); min-height:540px; max-height:820px;
  object-fit:cover; object-position:center 30%;
  display:block; transform:scale(1.001); transition:transform 1.2s ease;
}
.luxe-hero .slides li:hover img{ transform:scale(1.03); }
.luxe-hero .flex-control-nav{ bottom:22px; }
.luxe-hero .flex-control-nav li a{ background:transparent; border:1px solid rgba(255,255,255,.7); width:6px; height:6px; }
.luxe-hero .flex-control-nav li a.flex-active{ background:#fff; }
.luxe-hero .flex-direction-nav a{ opacity:.75; }
.luxe-hero__caption{
  position:absolute; left:8%; bottom:16%; max-width:520px;
  color:#fff; z-index:3; text-shadow:0 1px 18px rgba(0,0,0,.32);
}
.luxe-hero__caption .luxe-kicker{
  font-size:11px; letter-spacing:.34em; margin:0 0 14px; opacity:.95;
}
.luxe-hero__caption h1{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:52px; line-height:1.18; letter-spacing:.14em;
  margin:0 0 26px; color:#fff; font-weight:400;
}
.luxe-hero__caption .luxe-btn-ghost{
  display:inline-block; padding:12px 34px; font-size:11px;
  letter-spacing:.24em; color:#fff;
  border:1px solid rgba(255,255,255,.85);
  transition:background .3s,color .3s;
}
.luxe-hero__caption .luxe-btn-ghost:hover{ background:#fff; color:#111; }

/* ---------------- section headings ---------------- */
.index-sections{ padding:0; }
.index-section,.shopify-section{ padding:0; }
.featured-products > h2,
.collection-list > h2,
.index-sections h2.small--text-center,
.index-section h2{
  font-size:12px !important; font-weight:400 !important;
  letter-spacing:.34em !important; text-align:center !important;
  color:var(--ink); margin:74px 0 34px !important;
  text-transform:none;
}
.luxe-section-head{
  display:flex; align-items:flex-end; justify-content:space-between;
  max-width:var(--wrap); margin:0 auto; padding:78px var(--gutter) 26px;
  border-bottom:1px solid var(--line);
}
.luxe-section-head .luxe-eyebrow{
  font-size:11px; letter-spacing:.34em; color:var(--mute); margin:0 0 12px;
}
.luxe-section-head h2{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:30px !important; letter-spacing:.14em !important;
  margin:0 !important; font-weight:400 !important;
  color:var(--ink) !important;
}
.luxe-section-head a.luxe-more{
  font-size:11px; letter-spacing:.2em; color:var(--mute);
  border-bottom:1px solid transparent; padding-bottom:3px;
}
.luxe-section-head a.luxe-more:hover{ color:#111; border-bottom-color:#111; }

/* ---------------- product cards ---------------- */
.featured-products{ padding:0 0 8px; }
.featured-products .grid--uniform{
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:28px 22px; padding:34px var(--gutter) 0;
  max-width:var(--wrap); margin:0 auto;
}
.featured-products .grid__item,
.product.grid__item{
  width:auto !important; float:none !important;
  margin:0 !important; padding:0 !important;
}
.product .product__image-wrapper,
.product .product__image-wrapper--loading{
  padding-top:128% !important; overflow:hidden; background:var(--paper);
  position:relative; display:block;
}
.product .product__image-wrapper img{
  position:absolute; inset:0; width:100%; height:100% !important;
  object-fit:cover; transition:transform .9s ease;
}
.product:hover .product__image-wrapper img{ transform:scale(1.04); }
.product__title--card{ margin-top:16px; text-align:center !important; }
.product__title--card a{
  font-size:12px; letter-spacing:.14em; font-weight:400; color:var(--ink);
}
.product__prices{ margin-top:6px; font-size:12px; color:var(--ink-soft); text-align:center !important; }
.product__price,.product__prices span{ color:var(--ink) !important; font-size:12px !important; letter-spacing:.06em; }
.product__prices s{ color:var(--mute) !important; font-size:11px !important; }
.product .badge--sale{ display:none !important; }
.product__prices s{ color:var(--mute); font-size:11px; margin-left:8px; }
.sold-text,.sold-out-text{ font-size:11px !important; color:var(--mute) !important; letter-spacing:.1em; }

/* ---------------- category tiles ---------------- */
.collection-grid{ padding:0; }
.collection-list .grid--uniform{
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
  padding:0 var(--gutter); max-width:var(--wrap); margin:0 auto;
}
.collection-list .grid__item{ width:auto !important; float:none !important; padding:0 !important; }
.collection-grid-item{ position:relative; overflow:hidden; background:var(--paper); }
.collection-grid-item__link{ display:block; }
.collection-grid-item__overlay{
  padding-top:135%; background-size:cover !important; background-position:center !important;
  transition:transform .9s ease;
}
.collection-grid-item:hover .collection-grid-item__overlay{ transform:scale(1.04); }
.collection-grid-item__title-wrapper{
  position:absolute; inset:auto 0 0 0; padding:26px 18px 22px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.42) 100%);
}
.collection-grid-item__title{
  font-size:12px !important; letter-spacing:.26em !important;
  color:#fff !important; margin:0 !important; text-align:center;
}

/* ---------------- news ---------------- */
.index-news .collection-list{ padding:0; }
.post-cat.cat-btn,.cat-btn{
  background:transparent !important; color:#fff !important;
  border:1px solid rgba(255,255,255,.7) !important;
  font-size:10px !important; letter-spacing:.18em;
  padding:4px 10px !important; border-radius:0 !important;
}
.axil-post-title a,.axil-post-title{
  font-family:"Times New Roman","Songti SC",Georgia,serif !important;
  font-size:22px !important; letter-spacing:.06em; line-height:1.4;
}
.post-metas{ font-size:11px; letter-spacing:.14em; color:rgba(255,255,255,.8); }

/* ---------------- product detail ---------------- */
.main-content{ width:100% !important; max-width:none !important; float:none !important; }
.grid__item.medium-up--four-fifths{ width:100% !important; float:none !important; }
.product-single__price,#ComparePrice,.product-single__price--on-sale{ color:var(--ink) !important; }
.spcs ul{ list-style:none; margin:22px 0 0; padding:0; border-top:1px solid var(--line); }
.spcs ul li{
  display:flex; justify-content:space-between; align-items:center;
  padding:13px 0; border-bottom:1px solid var(--line);
  background:none !important; font-size:12px; letter-spacing:.12em;
}
.spcs ul li span:first-child{ color:var(--ink); }
.spcs ul li span:last-child{ color:var(--mute); }
.selector-wrapper input[type=number]{
  width:96px !important; height:46px;
  border:1px solid var(--line) !important; border-radius:0 !important;
  background:#fff !important; padding:0 10px !important;
}
.template-post .breadcrumb-nav{ padding-top:18px; }
.product-single__meta{ text-align:left !important; }
.product-single__title{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:30px !important; line-height:1.3; letter-spacing:.06em;
  font-weight:400; margin:8px 0 10px;
}
.product-single__prices{ margin:20px 0 6px; }
.product-single__price{ font-size:19px !important; letter-spacing:.04em; }
.product-single__price--compare{ color:var(--mute); font-size:13px; margin-left:10px; }
.template-post .grid__item.medium-up--one-half{ padding:0 14px; }
.product-single__photos,.product-single__photo-wrapper{ background:var(--paper); }
.product-single__photo{ width:100%; height:auto; display:block; }
#ProductThumbs{ display:flex; gap:10px; margin:14px 0 0; padding:0; list-style:none; }
#ProductThumbs li{ margin:0; }
#ProductThumbs .product-single__thumbnail-image{ width:64px; height:80px; object-fit:cover; }
.single_add_to_cart_button,.AddToCarts,
button.product-single__cart-submit{
  width:100%; height:52px; border-radius:0 !important;
  background:#111 !important; color:#fff !important;
  border:1px solid #111 !important;
  font-size:12px !important; letter-spacing:.24em;
  text-transform:none; transition:background .3s,color .3s;
}
.single_add_to_cart_button:hover,.AddToCarts:hover{ background:#000 !important; }
#buy_now_button,.buyjs,.shopify-payment-button__button{
  width:100%; height:52px; border-radius:0 !important;
  background:#fff !important; color:#111 !important;
  border:1px solid #111 !important; box-shadow:none !important;
  font-size:12px !important; letter-spacing:.24em;
}
#buy_now_button:hover{ background:#111 !important; color:#fff !important; }
.quantity-selector,.qty,.product-single__quantity input{
  border:1px solid var(--line) !important; border-radius:0 !important;
  height:52px; text-align:center;
}
.virtual-goods-tag{
  background:transparent !important; border:0 !important;
  border-left:2px solid #111 !important;
  padding:2px 0 2px 14px !important;
  font-size:11px !important; letter-spacing:.12em;
  color:var(--ink-soft) !important; margin:16px 0 6px !important;
}
.template-post hr{ margin:28px 0; }

/* ---------------- forms & buttons (cart / checkout / account) ---------------- */
.template-page input[type=text],.template-page input[type=email],
.template-page input[type=tel],.template-page input[type=password],
.template-page textarea,.template-page select,
.page-payment input,.page-payment textarea,.page-payment select,
#content input[type=text],#content input[type=email],#content input[type=tel]{
  border:0 !important; border-bottom:1px solid #d8d4cd !important;
  background:transparent !important; border-radius:0 !important;
  padding:12px 2px !important; font-size:14px; box-shadow:none !important;
  outline:none; transition:border-color .25s;
}
input:focus,textarea:focus,select:focus{ border-bottom-color:#111 !important; }
.btn,.button,.button.alt{
  border-radius:0 !important;
  background:#111 !important; color:#fff !important; border:1px solid #111 !important;
  font-size:12px !important; letter-spacing:.22em !important;
  padding:14px 30px !important; text-transform:none !important;
}
.btn--secondary{ background:#fff !important; color:#111 !important; border:1px solid #111 !important; }
.btn:hover,.button:hover{ background:#000 !important; }
label{ font-size:11px; letter-spacing:.18em; color:var(--ink-soft); }
table{ border-collapse:collapse; }
th,td{ border-color:var(--line) !important; }
th{ font-size:11px; letter-spacing:.2em; font-weight:400; color:var(--mute); text-align:left; }

/* ---------------- footer ---------------- */
.site-footer{
  border-top:1px solid var(--line);
  background:#faf8f5;
  margin-top:96px; padding:64px 0 30px;
}
.site-footer .grid{ max-width:1180px; margin:0 auto; padding-left:var(--gutter); padding-right:var(--gutter); }
.site-footer__section-title{
  font-size:11px !important; letter-spacing:.3em !important;
  color:var(--ink); margin:0 0 22px;
}
.site-footer__menu{ list-style:none; padding:0; margin:0; }
.site-footer__menu li{ margin:0 0 10px; }
.site-footer__menu li a{ font-size:12px; letter-spacing:.1em; color:var(--ink-soft); }
.site-footer__menu li a:hover{ color:#111; }
.site-footer .rte p{ font-size:12px; color:var(--mute); }
.site-footer .input-group__field{
  border:0 !important; border-bottom:1px solid #cfc9c0 !important;
  background:transparent !important; border-radius:0 !important;
  padding:12px 2px !important;
}
.sub-footer{ margin-top:44px; }
.sub-footer small{ font-size:11px; letter-spacing:.1em; color:var(--mute); }

/* ---------------- journal width ---------------- */
.collection-list:has(.axil-img-container){ max-width:1180px; margin:0 auto; }
.collection-list:has(.axil-img-container) .axil-img-container img{ width:100%; height:auto; }
.collection-list:has(.axil-img-container) .media.post-block img{ width:104px; height:104px; object-fit:cover; }

/* ---------------- journal ---------------- */
.luxe-journal{
  display:grid; grid-template-columns:repeat(3,1fr); gap:26px;
  max-width:var(--wrap); margin:0 auto; padding:36px var(--gutter) 0;
}
.luxe-journal__item{ display:block; }
.luxe-journal__img{ overflow:hidden; background:var(--paper); }
.luxe-journal__img img{
  width:100%; height:auto; aspect-ratio:4/5; object-fit:cover;
  transition:transform .9s ease; display:block;
}
.luxe-journal__item:hover .luxe-journal__img img{ transform:scale(1.04); }
.luxe-journal__cat{
  margin:18px 0 8px; font-size:10px; letter-spacing:.28em;
  color:var(--mute); text-transform:none;
}
.luxe-journal__title{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:19px; line-height:1.55; letter-spacing:.05em;
  margin:0 0 8px; font-weight:400;
}
.luxe-journal__date{ margin:0; font-size:11px; letter-spacing:.16em; color:var(--mute); }

/* ---------------- cart / orders ---------------- */
.luxe-page-head{ max-width:1180px; margin:0 auto; padding:36px var(--gutter) 6px; }
.luxe-page-head .luxe-eyebrow{
  font-size:10px; letter-spacing:.34em; color:var(--mute); margin:0 0 14px;
}
.luxe-page-head h1{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:40px; font-weight:400; letter-spacing:.12em; margin:0;
}

.cart-form, .myorder{ max-width:1180px; margin:0 auto; padding:18px var(--gutter) 72px; font-size:13px; }

.cart-table, .myorder table{
  width:100%; border-collapse:collapse; background:none;
}
.cart-table th, .myorder th{
  font-weight:400; font-size:11px; letter-spacing:.16em; color:var(--mute);
  padding:14px 10px; border-bottom:1px solid var(--line);
  background:none !important; text-align:left;
}
.cart-table td, .myorder td{
  padding:20px 10px; border-bottom:1px solid var(--line);
  background:none !important; vertical-align:middle;
}
.cart__image{ width:92px; height:115px; object-fit:cover; display:block; }
.cart-table .product-remove a{ font-size:11px; letter-spacing:.12em; color:var(--mute); border-bottom:1px solid var(--line); }
.cart-table input.quantity-selector{
  width:64px !important; height:38px; border:1px solid var(--line) !important;
  border-radius:0 !important; background:#fff !important; text-align:center;
}
.cart-table .Price-amount{ font-size:12px; letter-spacing:.06em; }

.cart-collaterals .cart__subtotal-title,
.cart-collaterals .cart__subtotal{ font-size:12px; letter-spacing:.18em; }
.cart-collaterals .cart__policies{ font-size:11px; color:var(--mute); }
.checkout-button{
  display:block; width:100%; max-width:400px; margin:18px 0 0 auto;
  height:54px; background:#111 !important; color:#fff !important;
  border:0 !important; border-radius:0 !important;
  font-size:12px !important; letter-spacing:.22em !important; cursor:pointer;
}
.update-cart, .cart-form .btn--secondary{
  background:none !important; border:1px solid #111 !important; color:#111 !important;
  border-radius:0 !important; height:48px; padding:0 26px !important;
  font-size:11px !important; letter-spacing:.18em !important; margin-right:10px;
}

.myorder .tablebox{ background:#fff !important; }
.myorder tr{ background:#fff !important; }
.myorder .tablebox > table{ background:#fff !important; }
.template-cart .breadcrumb-nav{ display:none; }

.myorder h3{ font-family:"Times New Roman","Songti SC",Georgia,serif; font-size:16px; font-weight:400; letter-spacing:.05em; margin:0 0 6px; }
.myorder h3 a{ color:var(--ink); }
.myorder .oneart{ display:flex; gap:14px; align-items:center; }
.myorder .oneart .thumb img{ width:70px; height:88px; object-fit:cover; }
.myorder .ordern{ font-size:11px; letter-spacing:.12em; color:var(--mute); margin:0; }
.myorder .total{ font-size:13px; letter-spacing:.06em; }
.myorder .nowpay, .myorder .btn, .myorder button{
  display:inline-block; background:#111 !important; color:#fff !important;
  border:0 !important; border-radius:0 !important; padding:12px 26px !important;
  font-size:11px !important; letter-spacing:.2em !important;
}
.myorder p{ margin:0; padding:9px 0; line-height:1.6; border-bottom:1px solid #f1efeb; }
.myorder p label{ display:inline-block; min-width:92px; color:var(--mute); font-size:11px; letter-spacing:.12em; }
.myorder .virtual-deliver-box{ border-radius:0 !important; }
.myorder .tablebox{ margin:14px 0 0; }

/* ---------------- checkout ---------------- */
.order_info{ max-width:1180px; margin:0 auto; padding:40px var(--gutter) 80px; }
.checkout h3{
  font-family:"Times New Roman","Songti SC",Georgia,serif !important;
  font-size:26px !important; font-weight:400 !important;
  letter-spacing:.1em; margin:0 0 26px !important;
  border:0 !important; background:none !important; padding:0 !important;
}
.checkout .col2-set{ display:block !important; }
.checkout .col-1, .checkout .col-2{
  width:100% !important; max-width:none !important; float:none !important; padding:0 !important;
}
.checkout .form-row{ margin:0 0 28px !important; padding:0 !important; display:block !important; }
.checkout label{
  display:block !important; font-size:11px !important; letter-spacing:.16em !important;
  color:var(--mute) !important; margin:0 0 6px !important; line-height:1.4 !important;
}
.checkout .input-wrapper{ display:block !important; }
.checkout input.input-text, .checkout input[type=text], .checkout input[type=tel], .checkout input[type=email], .checkout textarea{
  border:0 !important; border-bottom:1px solid var(--line) !important;
  background:none !important; border-radius:0 !important;
  height:36px !important; padding:4px 0 !important; font-size:14px !important;
  width:100% !important; box-shadow:none !important; color:var(--ink) !important;
}
.checkout input[type=radio]{
  width:auto !important; height:auto !important; border:0 !important;
  margin:0 6px 0 0 !important; padding:0 !important;
}
.checkout .form-row{ margin:0 0 20px !important; }
.checkout textarea{ min-height:110px !important; }
.checkout .shipping-method label{
  display:flex !important; align-items:center; gap:10px;
  font-size:12px !important; letter-spacing:.08em !important; color:var(--ink) !important;
  padding:14px 0 !important; border-bottom:1px solid var(--line);
}
.checkout input[type=radio]{ accent-color:#111; }
.order_info .shop_table th{
  font-weight:400; font-size:11px; letter-spacing:.16em; color:var(--mute);
  border-bottom:1px solid var(--line); padding:12px 8px; background:none;
}
.order_info .shop_table td{
  border-bottom:1px solid var(--line); padding:14px 8px; background:none; font-size:13px;
}
.order_info .cart-subtotal td, .order_info .order-total td{ font-size:14px; letter-spacing:.06em; }
.checkout-payment .submit button, .checkout-payment .submit input, #place_order{
  display:block; width:100%; max-width:420px; height:54px;
  background:#111 !important; color:#fff !important; border:0 !important;
  border-radius:0 !important; font-size:12px !important; letter-spacing:.22em !important;
  margin-top:16px; cursor:pointer;
}

/* ---------------- index shell ---------------- */
.luxe-main{
  display:block; width:100%; max-width:none;
  margin:0; padding:0; float:none; clear:both;
}
.template-index #MainContent{ width:100%; }

/* ---------------- category hero ---------------- */
.cat-hero{
  padding:64px 0 28px;
  border-bottom:1px solid var(--line);
  margin-bottom:0;
}
.cat-hero .luxe-eyebrow{
  font-size:11px; letter-spacing:.34em; color:var(--mute); margin:0 0 18px;
}
.cat-hero__title{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:44px; line-height:1.2; letter-spacing:.16em;
  font-weight:400; margin:0;
}
.cat-hero__intro{
  max-width:640px; margin:18px 0 0;
  font-size:13px; line-height:2; color:var(--mute); letter-spacing:.06em;
}
.cat-toolbar{
  display:flex; align-items:center; justify-content:space-between;
  padding:20px 0 4px;
}
.cat-count{ margin:0; font-size:11px; letter-spacing:.2em; color:var(--mute); }
.collection-sorting__dropdown select{
  border:0; border-bottom:1px solid var(--line);
  background:transparent; font-size:11px; letter-spacing:.14em;
  padding:6px 2px; color:var(--ink-soft); border-radius:0;
}
.luxe-empty{
  padding:80px var(--gutter); text-align:center;
  font-size:12px; letter-spacing:.14em; color:var(--mute);
}

/* ---------------- product detail eyebrow ---------------- */
.product-single__eyebrow{
  font-size:11px !important; letter-spacing:.3em !important;
  color:var(--mute) !important; margin:0 0 12px !important;
}
.product-single__sub{
  font-size:12px !important; letter-spacing:.12em;
  color:var(--mute) !important; margin:0 0 4px;
}
.template-post .product-single__meta .luxe-rule{
  margin:26px 0 22px; border-top:1px solid var(--line);
}

/* ---------------- responsive ---------------- */
@media (max-width:1024px){
  :root{ --gutter:28px; }
  .cn-nav ul{ gap:26px; }
  .featured-products .grid--uniform{ grid-template-columns:repeat(3,1fr); gap:20px 16px; }
  .collection-list .grid--uniform{ grid-template-columns:repeat(2,1fr); gap:14px; }
  .luxe-hero__caption h1{ font-size:36px; }
}
@media (max-width:749px){
  :root{ --gutter:18px; }
  .cat-hero{ padding:36px 0 20px; }
  .cat-hero__title{ font-size:28px; letter-spacing:.1em; }
  .cat-toolbar{ padding:14px 0 0; }
  .cn-head{ padding:10px var(--gutter) 0; }
  .cn-topbar{ justify-content:center; order:2; }
  .cn-actions{ gap:26px; }
  .cn-logo{ padding:6px 0 10px; }
  .cn-logo-img{ max-height:26px; }
  .cn-nav ul{
    gap:0; overflow-x:auto; white-space:nowrap;
    justify-content:flex-start; padding:0 2px 6px;
    -webkit-overflow-scrolling:touch;
  }
  .cn-nav ul li > a{ padding:8px 14px; font-size:11px; letter-spacing:.18em; }
  .cn-nav ul ul{ display:none !important; }
  .luxe-hero .slides img{ height:62vh; min-height:360px; }
  .luxe-hero__caption{ left:24px; right:24px; bottom:16%; max-width:none; }
  .luxe-hero__caption h1{ font-size:28px; letter-spacing:.1em; }
  .luxe-hero__caption .luxe-kicker{ font-size:10px; }
  .featured-products .grid--uniform{ grid-template-columns:repeat(2,1fr); gap:18px 12px; }
  .featured-products > h2,.collection-list > h2{ margin:44px 0 18px !important; }
  .luxe-section-head{ display:block; padding:48px var(--gutter) 16px; }
  .luxe-section-head h2{ font-size:22px !important; }
  .luxe-journal{ grid-template-columns:1fr; gap:26px; padding-top:24px; }
  .product-single__title{ font-size:24px !important; }
  .site-footer{ margin-top:56px; padding-top:42px; }
  .cart-table thead{ display:none; }
  .cart-table tr{ display:block; border-bottom:1px solid var(--line); padding:16px 0; }
  .cart-table td{
    display:flex; justify-content:space-between; align-items:center;
    border:0 !important; padding:8px 0; text-align:right; width:100% !important;
  }
  .cart-table td::before{
    content:attr(data-title); font-size:10px; letter-spacing:.2em; color:var(--mute);
  }
  .cart-table td.cart__table-cell--image,
  .cart-table td.cart__table-cell--meta{ justify-content:center; }
  .cart-table td.cart__table-cell--image::before,
  .cart-table td.cart__table-cell--meta::before{ content:none; }
  .cart-table td.cart__table-cell--meta{ flex-direction:column; gap:8px; }
  .cart-table td.cart__table-cell--meta .product-remove{ margin:0; }
  .update-cart, .cart-form .btn--secondary{ display:block; width:100%; margin:0 0 10px !important; }
  .cart-collaterals{ text-align:left !important; }
  .checkout-button{ max-width:none; margin-left:0; }
}

/* ================= LV style header (2026-11-09) ================= */
.cn-header{
  position:sticky; top:0; left:0; right:0; z-index:120;
  background:#fff; border-bottom:1px solid rgba(17,17,17,.08);
  margin:0; padding:0;
  transition:background .35s ease, border-color .35s ease, color .35s ease;
}
.cn-head{ max-width:var(--wrap); margin:0 auto; padding:0 var(--gutter); }
.cn-bar{
  display:flex; align-items:center; justify-content:space-between;
  height:86px; position:relative;
}
.cn-bar__left, .cn-bar__right{ display:flex; align-items:center; flex:1; }
.cn-bar__left{ gap:34px; justify-content:flex-start; }
.cn-bar__right{ gap:22px; justify-content:flex-end; }
.cn-trigger{
  display:inline-flex; align-items:center; gap:10px;
  background:none; border:0; padding:6px 0; cursor:pointer;
  font-family:inherit; font-size:11px; letter-spacing:.2em; color:var(--ink);
  transition:color .25s ease, opacity .25s ease;
}
.cn-trigger:hover{ color:#8d7550; }
.cn-burger{ display:inline-flex; flex-direction:column; gap:4px; width:18px; }
.cn-burger i{ display:block; height:1px; width:100%; background:currentColor; transition:transform .25s ease, width .25s ease; }
.cn-trigger:hover .cn-burger i:nth-child(2){ width:70%; }
.cn-trigger .icon{ width:16px; height:16px; color:currentColor; }
.cn-brand{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  display:inline-flex; align-items:center; justify-content:center;
}
.cn-brand__img{ max-height:27px; width:auto; display:block; transition:filter .35s ease, opacity .25s ease; }
.cn-brand:hover .cn-brand__img{ opacity:.82; }
.cn-link{
  font-size:11px; letter-spacing:.18em; color:var(--ink);
  position:relative; padding:4px 0; transition:color .25s ease;
}
.cn-link::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:1px;
  background:currentColor; transform:scaleX(0); transform-origin:left;
  transition:transform .3s ease;
}
.cn-link:hover{ color:#8d7550; }
.cn-link:hover::after{ transform:scaleX(1); }
.cn-icn{
  display:inline-flex; align-items:center; justify-content:center;
  position:relative; color:var(--ink); padding:4px;
  transition:color .25s ease, opacity .25s ease;
}
.cn-icn:hover{ color:#8d7550; }
.cn-icn .icon{ width:19px; height:21px; }
.cn-badge{
  position:absolute; top:-2px; right:-3px;
  min-width:15px; height:15px; line-height:15px; padding:0 3px;
  border-radius:50%; background:#111 !important; color:#fff !important;
  font-size:9px; text-align:center; letter-spacing:0;
}
.cn-icn--bag .icon{ width:20px; }

/* 首页：透明压在首屏图片上 */
.template-index .cn-header{
  position:absolute; background:transparent; border-color:transparent; color:#fff;
}
.template-index .cn-header .cn-trigger,
.template-index .cn-header .cn-link,
.template-index .cn-header .cn-icn{ color:#fff; }
.template-index .cn-header .cn-brand__img{ filter:brightness(0) invert(1); }
.template-index .cn-header .cn-badge{ background:#fff !important; color:#111 !important; }
.template-index .cn-header .cn-trigger:hover,
.template-index .cn-header .cn-link:hover,
.template-index .cn-header .cn-icn:hover{ color:rgba(255,255,255,.68); }
.template-index .cn-header.is-solid{
  position:fixed; background:#fff; border-bottom-color:rgba(17,17,17,.08);
  color:var(--ink);
}
.template-index .cn-header.is-solid .cn-trigger,
.template-index .cn-header.is-solid .cn-link,
.template-index .cn-header.is-solid .cn-icn{ color:var(--ink); }
.template-index .cn-header.is-solid .cn-brand__img{ filter:none; }
.template-index .cn-header.is-solid .cn-badge{ background:#111 !important; color:#fff !important; }
.template-index .cn-header.is-solid .cn-link:hover{ color:#8d7550; }
.template-index .cn-header.is-solid .cn-trigger:hover,
.template-index .cn-header.is-solid .cn-icn:hover{ color:#8d7550; }
.template-index .luxe-hero .slides img{ height:100vh; min-height:560px; }

/* 目录抽屉 */
.cn-drawer{ position:fixed; inset:0; z-index:300; pointer-events:none; }
.cn-drawer__mask{
  position:absolute; inset:0; background:rgba(0,0,0,.32);
  opacity:0; transition:opacity .4s ease;
}
.cn-drawer__panel{
  position:absolute; top:0; left:0; bottom:0; width:360px; max-width:88vw;
  background:#fff; display:flex; flex-direction:column;
  transform:translateX(-100%); transition:transform .45s cubic-bezier(.22,.61,.36,1);
  box-shadow:0 0 40px rgba(0,0,0,.08);
}
.cn-drawer.is-open{ pointer-events:auto; }
.cn-drawer.is-open .cn-drawer__mask{ opacity:1; }
.cn-drawer.is-open .cn-drawer__panel{ transform:translateX(0); }
.cn-drawer__head{
  display:flex; align-items:center; justify-content:space-between;
  padding:26px 30px 18px; border-bottom:1px solid rgba(17,17,17,.08);
}
.cn-drawer__title{ font-size:12px; letter-spacing:.34em; }
.cn-drawer__close{
  background:none; border:0; cursor:pointer; font-size:20px; line-height:1;
  color:#111; padding:2px 4px; transition:color .25s ease;
}
.cn-drawer__close:hover{ color:#8d7550; }
.cn-drawer__nav{ flex:1; overflow-y:auto; padding:12px 30px 20px; }
.cn-drawer__nav ul{ list-style:none; margin:0; padding:0; }
.cn-drawer__nav > ul > li{ border-bottom:1px solid rgba(17,17,17,.06); }
.cn-drawer__nav > ul > li > a{
  display:block; padding:16px 0; font-size:14px; letter-spacing:.18em;
  color:var(--ink); transition:color .25s ease, padding-left .25s ease;
}
.cn-drawer__nav > ul > li > a:hover{ color:#8d7550; padding-left:6px; }
.cn-drawer__sub{ padding:0 0 12px 0 !important; }
.cn-drawer__sub li a{
  display:block; padding:8px 0 8px 14px; font-size:11px;
  letter-spacing:.14em; color:#7d7d7d; transition:color .25s ease;
}
.cn-drawer__sub li a:hover{ color:#8d7550; }
.cn-drawer__foot{
  padding:20px 30px 28px; border-top:1px solid rgba(17,17,17,.08);
  display:flex; flex-wrap:wrap; gap:8px 20px;
}
.cn-drawer__foot a{ font-size:11px; letter-spacing:.14em; color:#7d7d7d; transition:color .25s; }
.cn-drawer__foot a:hover{ color:#8d7550; }

/* 搜索浮层：与搜索结果页同一套设计 */
.cn-search{
  position:fixed; inset:0; z-index:320; background:#fff;
  opacity:0; pointer-events:none; transition:opacity .2s ease;
  overflow-y:auto;
}
.cn-search.is-open{ opacity:1; pointer-events:auto; }
.cn-search__top{
  position:relative; display:flex; align-items:center; justify-content:center;
  max-width:1440px; margin:0 auto; padding:0 32px; height:122px;
}
.cn-search__brand{ display:block; line-height:0; }
.cn-search__brand img{ width:210px; height:auto; display:block; }
.cn-search__close{
  position:absolute; right:32px; top:50%; transform:translateY(-50%);
  width:44px; height:44px; display:flex; align-items:center; justify-content:center;
  background:none; border:0; cursor:pointer; color:#111;
  font-family:inherit; font-size:32px; line-height:1; padding:0;
  transition:color .25s ease;
}
.cn-search__close:hover{ color:#8d7550; }
.cn-search__inner{
  max-width:1040px; margin:0 auto; padding:0 32px 56px; position:relative;
}
.cn-search__label{
  position:absolute; width:1px; height:1px; overflow:hidden;
  clip:rect(0 0 0 0); white-space:nowrap;
}
.cn-search__form{ margin:0; }
.cn-search__line{
  display:flex; align-items:center; gap:18px;
  height:76px; padding:0 30px; border:1.5px solid #111;
  border-radius:999px; background:#fff;
}
.cn-search__line input{
  flex:1 1 auto; min-width:0; height:100%; border:0; outline:none;
  background:transparent; color:#111;
  font-family:inherit; font-size:20px; letter-spacing:.02em;
}
.cn-search__line input::placeholder{ color:#9a9a9a; }
.cn-search__line input::-webkit-search-cancel-button{ -webkit-appearance:none; }
.cn-search__clear{
  flex:0 0 auto; display:none; background:none; border:0; padding:0 0 2px;
  color:#111; font-family:inherit; font-size:13px; letter-spacing:.08em;
  border-bottom:1px solid #111; cursor:pointer; white-space:nowrap;
}
.cn-search__submit{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); border:0;
}
.cn-search__hot{ margin-top:34px; display:flex; flex-wrap:wrap; align-items:center; gap:10px 26px; }
.cn-search__hot span{ font-size:10px; letter-spacing:.28em; color:#9a9a9a; }
.cn-search__hot a{
  font-size:12px; letter-spacing:.1em; color:#111; position:relative; padding:3px 0;
  transition:color .25s ease;
}
.cn-search__hot a::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:currentColor; transform:scaleX(0); transition:transform .3s ease; }
.cn-search__hot a:hover{ color:#8d7550; }
.cn-search__hot a:hover::after{ transform:scaleX(1); }
body.cn-locked{ overflow:hidden; }

@media (max-width:767px){
  .cn-search__top{ height:76px; padding:0 18px; }
  .cn-search__brand img{ width:132px; }
  .cn-search__close{ right:18px; width:36px; height:36px; font-size:24px; }
  .cn-search__inner{ padding:0 18px 40px; }
  .cn-search__line{ height:56px; padding:0 18px; gap:12px; }
  .cn-search__line input{ font-size:16px; }
  .cn-search__clear{ font-size:12px; }
}


/* 会员提示条（商品页/文章页） */
.vip-dl{ margin:16px 0 4px; }
.vip-dl .luxe-btn{ display:inline-block; }
.vip-dl__tip{ display:block; font-size:11px; letter-spacing:.06em; color:#8a8578; line-height:1.9; }

@media (max-width:767px){
  .cn-bar{ height:58px; }
  .cn-bar__left{ gap:18px; }
  .cn-bar__right{ gap:12px; }
  .cn-link{ display:none; }
  .cn-trigger{ font-size:10px; letter-spacing:.14em; gap:7px; }
  .cn-burger{ width:15px; gap:3px; }
  .cn-trigger .icon{ width:14px; height:14px; }
  .cn-brand__img{ max-height:20px; }
  .cn-icn .icon{ width:16px; height:18px; }
  .cn-drawer__panel{ width:100%; max-width:100%; }
  .cn-drawer__head{ padding:20px 22px 14px; }
  .cn-drawer__nav{ padding:8px 22px 18px; }
  .cn-drawer__foot{ padding:16px 22px 24px; }

  .template-index .luxe-hero .slides img{ height:86vh; min-height:420px; }
}

.cn-drawer, .cn-drawer__panel, .cn-drawer__title{ color:#111; }
.cn-drawer__title{ font-weight:400; }
.cn-trigger .icon-search{ width:17px; height:17px; }
.cn-trigger .icon-search circle{ stroke-width:1.5; }
.cn-trigger .icon-search path{ stroke-width:1.5; }

/* 图标改用自定义类，避开主题 svg.icon 强制 fill 规则 */
.cn-svg{ display:block; }
.cn-svg--search{ width:17px; height:17px; }
.cn-svg--cart{ width:20px; height:21px; }
.cn-svg--heart{ width:19px; height:19px; }
.cn-svg--user{ width:19px; height:21px; }
.cn-search__line button .cn-svg{ width:22px; height:22px; }
@media (max-width:767px){
  .cn-svg--search{ width:15px; height:15px; }
  .cn-svg--cart{ width:17px; height:19px; }
  .cn-svg--heart{ width:16px; height:16px; }
  .cn-svg--user{ width:16px; height:19px; }
}

/* 首屏顶部压暗，保证白色头部在浅色画面上可读 */
.template-index .luxe-hero .slides li::after{
  background:
    linear-gradient(180deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.10) 11%, rgba(0,0,0,0) 24%),
    linear-gradient(90deg, rgba(0,0,0,.38) 0%, rgba(0,0,0,.16) 40%, rgba(0,0,0,0) 66%, rgba(0,0,0,0) 100%);
}
.template-index .cn-header .cn-trigger,
.template-index .cn-header .cn-link,
.template-index .cn-header .cn-icn{ text-shadow:0 1px 6px rgba(0,0,0,.18); }

/* 图标描边与浮层可读性微调 */
.cn-svg--heart path, .cn-svg--user circle, .cn-svg--user path, .cn-svg--cart path{ stroke-width:1.6; }
.template-index .cn-header:not(.is-solid) .cn-icn .cn-svg{ filter:drop-shadow(0 1px 4px rgba(0,0,0,.34)); }

/* 首屏顶部固定压暗层（保证透明头部在浅色图片上也清晰） */
.template-index .luxe-hero::before{
  content:""; position:absolute; top:0; left:0; right:0; height:150px;
  background:linear-gradient(180deg, rgba(0,0,0,.32) 0%, rgba(0,0,0,.12) 46%, rgba(0,0,0,0) 100%);
  z-index:2; pointer-events:none;
}

/* ---------------- 商品详情：左图右信息（LV 式分栏） ---------------- */
.product-single{
  display:grid !important;
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  column-gap:64px; align-items:start;
}
.product-single > .grid__item{
  width:auto !important; float:none !important;
  padding:0 !important; margin:0 !important; max-width:none !important;
}
.product-single > .grid__item:first-child{ position:sticky; top:104px; }
.product-single__featured-image-wrapper{ background:var(--paper); }
#ProductThumbs{ flex-wrap:wrap; }

.product-detail__extra{ margin-top:6px; }
.product-desc{
  position:relative; margin-top:26px;
  font-size:13px; line-height:2; letter-spacing:.02em;
  color:rgba(17,17,17,.72);
  max-height:250px; overflow:hidden;
  transition:max-height .35s ease;
}
.product-desc.is-open{ max-height:2600px; }
.product-desc:not(.is-open)::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:64px;
  background:linear-gradient(180deg, rgba(255,255,255,0), #fff 88%);
  pointer-events:none;
}
.product-desc__more{
  display:block; margin:10px auto 0; padding:6px 2px;
  background:none; border:0; cursor:pointer;
  font-size:12px; letter-spacing:.08em; color:var(--ink);
  text-decoration:underline; text-underline-offset:4px;
}
.product-accordion{ margin-top:34px; border-top:1px solid var(--line); }
.product-acc{ border-bottom:1px solid var(--line); }
.product-acc summary{
  display:flex; align-items:center; justify-content:space-between;
  padding:17px 0; cursor:pointer; list-style:none;
  font-size:12px; letter-spacing:.12em; color:var(--ink);
}
.product-acc summary::-webkit-details-marker{ display:none; }
.product-acc__sign{
  font-size:16px; color:var(--ink); line-height:1;
  transition:transform .25s ease;
}
.product-acc[open] .product-acc__sign{ transform:rotate(45deg); }
.product-acc__body{
  padding:0 0 20px; margin-top:-4px;
  font-size:12.5px; line-height:2; color:var(--mute);
}
@media (max-width:900px){
  .product-single{ grid-template-columns:1fr; column-gap:0; row-gap:30px; }
  .product-single > .grid__item:first-child{ position:static; }
  .product-desc{ max-height:none; }
  .product-desc:not(.is-open)::after{ display:none; }
  .product-desc__more{ display:none; }
}

/* 左图放大：接近满屏高度 */
.single-product .slider-container{
  height:calc(100vh - 210px) !important;
  min-height:560px; max-height:820px;
}
@media (max-width:900px){
  .single-product .slider-container{
    height:auto !important; min-height:0; max-height:none;
    aspect-ratio:4/5; overflow:hidden;
  }
}

/* 主图完整显示，不裁切头脚 */
.single-product .slide{
  background-size:contain !important;
  background-repeat:no-repeat;
  background-position:center;
  background-color:var(--paper);
}

/* 左栏浅灰底板，填满整列 */
.product-single > .grid__item:first-child{ background:#f5f3f0; }
#ProductThumbs{ padding:12px 12px 0 !important; }

/* 头部悬停强反差：整块反色 */
.cn-bar__left{ gap:44px; }
.cn-bar__right{ gap:30px; }
.cn-trigger,.cn-link{
  padding:8px 12px; margin:-8px -12px;
  transition:color .2s ease, background-color .2s ease;
}
.cn-icn{
  padding:8px; margin:-8px;
  transition:color .2s ease, background-color .2s ease;
}
.cn-trigger:hover,.cn-link:hover,.cn-icn:hover{
  background:#111 !important; color:#fff !important;
}
.cn-link:hover::after{ transform:scaleX(0); }
.cn-icn:hover .cn-badge{ background:#fff !important; color:#111 !important; }
@media (min-width:901px){
  .template-index .cn-header:not(.is-solid) .cn-trigger:hover,
  .template-index .cn-header:not(.is-solid) .cn-link:hover,
  .template-index .cn-header:not(.is-solid) .cn-icn:hover{
    background:#fff !important; color:#111 !important;
  }
  .template-index .cn-header:not(.is-solid) .cn-icn:hover .cn-badge{
    background:#111 !important; color:#fff !important;
  }
}

/* 鼠标进入整个头部区域：透明头部整体变白，形成下拉面板式反差 */
@media (min-width:901px){
  .template-index .cn-header:not(.is-solid):hover{
    background:#fff !important;
    border-bottom-color:rgba(17,17,17,.10) !important;
  }
  .template-index .cn-header:not(.is-solid):hover .cn-trigger,
  .template-index .cn-header:not(.is-solid):hover .cn-link,
  .template-index .cn-header:not(.is-solid):hover .cn-icn{
    color:var(--ink) !important;
  }
  .template-index .cn-header:not(.is-solid):hover .cn-brand__img{
    filter:none !important;
  }
  .template-index .cn-header:not(.is-solid):hover .cn-badge{
    background:#111 !important; color:#fff !important;
  }
  /* 头部变白后，单项悬停改为黑底白字 */
  .template-index .cn-header:not(.is-solid):hover .cn-trigger:hover,
  .template-index .cn-header:not(.is-solid):hover .cn-link:hover,
  .template-index .cn-header:not(.is-solid):hover .cn-icn:hover{
    background:#111 !important; color:#fff !important;
  }
  .template-index .cn-header:not(.is-solid):hover .cn-icn:hover .cn-badge{
    background:#fff !important; color:#111 !important;
  }
}

/* ===== 会员：会员中心 / 资源分级 / 商品提示 ===== */
.vip-page{ max-width:1180px; margin:0 auto; padding:26px var(--gutter) 10px; }
.vip-eyebrow{ font-size:11px; letter-spacing:.24em; color:var(--mute); text-transform:uppercase; margin:0 0 14px; }
.vip-h2{ font-family:"Times New Roman","Songti SC",serif; font-size:40px; font-weight:400; letter-spacing:.12em; margin:0 0 12px; }
.vip-lead{ font-size:14px; line-height:1.9; color:#6d6a64; margin:0 0 20px; }
.vip-status{ font-size:13px; letter-spacing:.06em; padding:12px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin:0 0 34px; }
.vip-status strong{ font-weight:600; }
.vip-plans{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.vip-plan{ border:1px solid var(--line); padding:26px 22px 18px; }
.vip-plan__name{ font-family:"Times New Roman","Songti SC",serif; font-size:24px; letter-spacing:.1em; margin:0 0 8px; text-align:center; }
.vip-plan__desc{ font-size:12px; color:var(--mute); letter-spacing:.08em; text-align:center; margin:0 0 18px; }
.vip-plan__prices{ list-style:none; margin:0; padding:0; border-top:1px solid var(--line); }
.vip-plan__prices li{ border-bottom:1px solid var(--line); }
.vip-plan__prices a{ display:flex; justify-content:space-between; align-items:center; padding:13px 2px; font-size:13px; color:var(--ink); text-decoration:none; letter-spacing:.06em; }
.vip-plan__prices a:hover{ background:#faf8f4; }
.vip-note{ margin-top:32px; font-size:12px; line-height:2; color:var(--mute); border-top:1px solid var(--line); padding-top:16px; }
.vip-res{ margin:40px 0 10px; padding:26px 24px; border:1px solid var(--line); background:#fbf9f5; text-align:center; }
.vip-res__kicker{ font-size:11px; letter-spacing:.24em; color:var(--mute); margin:0 0 10px; }
.vip-res__desc{ font-size:13px; color:#6d6a64; line-height:1.9; margin:0 0 16px; }
.vip-res .luxe-btn{ display:inline-block; min-width:200px; }
.vip-inline{ font-size:12px; line-height:1.9; color:#8a6a3a; border:1px solid #e8ddc9; background:#fbf7ef; padding:10px 8px; margin:12px 0 4px; }
.vip-inline a{ color:var(--ink); text-decoration:underline; }
@media (max-width:749px){
  .vip-page{ padding:18px 20px 6px; }
  .vip-h2{ font-size:26px; }
  .vip-plans{ grid-template-columns:1fr; gap:16px; }
  .vip-plan{ padding:20px 18px 12px; }
  .vip-res{ margin:28px 0 6px; padding:22px 16px; }
}

/* ===== 我的账户 ===== */
.template-author .main-content{ padding:0; }
.template-author main.container{ max-width:1180px; margin:0 auto; padding:0 var(--gutter) 64px; }
.template-author .wrapper{ padding:0; }
.acc-hero{ padding:36px 0 24px; border-bottom:1px solid var(--line); margin:0 0 32px; }
.acc-hero__kicker{ font-size:11px; letter-spacing:.24em; color:var(--mute); text-transform:uppercase; margin:0 0 14px; }
.acc-hero__title{ font-family:"Times New Roman","Songti SC",serif; font-size:38px; font-weight:400; letter-spacing:.12em; margin:0 0 12px; }
.acc-hero__lead{ font-size:13px; line-height:1.9; color:#6d6a64; margin:0; }
.template-author .author_tabs{ margin:0; }
.template-author .author_form h3{ font-family:"Times New Roman","Songti SC",serif; font-size:22px; font-weight:400; letter-spacing:.1em; margin:0 0 22px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.template-author .author_form p{ display:flex; flex-direction:column; align-items:flex-start; gap:7px; margin:0 0 18px; }
.template-author .author_form label{ font-size:11px; letter-spacing:.16em; color:var(--mute); text-transform:uppercase; }
.template-author .author_form abbr.required{ color:#a4442f; text-decoration:none; }
.template-author .author_form input[type="text"],
.template-author .author_form input[type="password"],
.template-author .author_form select,
.template-author .author_form textarea{
  width:100% !important; max-width:560px; box-sizing:border-box;
  padding:12px 14px; font-size:14px; color:var(--ink);
  background:#f7f5f1; border:1px solid transparent; border-bottom:1px solid rgba(17,17,17,.16);
  border-radius:0; outline:none; font-family:inherit;
}
.template-author .author_form input:focus,
.template-author .author_form textarea:focus,
.template-author .author_form select:focus{ background:#fff; border-bottom-color:var(--ink); }
.template-author .author_form textarea{ min-height:110px; resize:vertical; }
.template-author .author_form .help-block{ display:block; font-size:11px; line-height:1.8; color:var(--mute); max-width:560px; }
.template-author .author_form .help-block a{ color:var(--ink); text-decoration:underline; }
.template-author .author_form .submit{ margin-top:8px; background:#111; color:#fff; border:0; padding:14px 34px; font-size:12px; letter-spacing:.18em; cursor:pointer; }
.template-author .author_form .submit:hover{ background:#8d7550; }
@media (max-width:749px){
  .acc-hero{ padding:24px 0 18px; margin-bottom:24px; }
  .acc-hero__title{ font-size:26px; }
  .template-author main.container{ padding:0 20px 40px; }
  .template-author .author_form input[type="text"],
  .template-author .author_form input[type="password"],
  .template-author .author_form select,
  .template-author .author_form textarea{ max-width:none; }
}

/* ===== 账户中心 ===== */
.acc-page{ max-width:1180px; margin:0 auto; padding:0 var(--gutter) 40px; }
.acc-hero{ padding:36px 0 24px; border-bottom:1px solid var(--line); margin:0 0 26px; }
.acc-hero__kicker{ font-size:11px; letter-spacing:.24em; color:var(--mute); text-transform:uppercase; margin:0 0 14px; }
.acc-hero__title{ font-family:"Times New Roman","Songti SC",serif; font-size:38px; font-weight:400; letter-spacing:.1em; margin:0 0 12px; }
.acc-hero__lead{ font-size:13px; line-height:1.9; color:#6d6a64; margin:0; }
.acc-status{ display:flex; align-items:center; gap:40px; padding:18px 0; border-bottom:1px solid var(--line); margin:0 0 30px; flex-wrap:wrap; }
.acc-status__item{ display:flex; flex-direction:column; gap:6px; }
.acc-status__item span{ font-size:10px; letter-spacing:.18em; color:var(--mute); text-transform:uppercase; }
.acc-status__item strong{ font-size:15px; font-weight:500; letter-spacing:.05em; }
.acc-btn{ display:inline-block; padding:12px 26px; border:1px solid rgba(17,17,17,.2); color:var(--ink); text-decoration:none; font-size:12px; letter-spacing:.16em; transition:.2s; }
.acc-btn:hover{ border-color:var(--ink); }
.acc-btn--solid{ background:#111; border-color:#111; color:#fff; }
.acc-btn--solid:hover{ background:#8d7550; border-color:#8d7550; color:#fff; }
.acc-status .acc-btn{ margin-left:auto; }
.acc-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:0 0 34px; }
.acc-card{ position:relative; display:flex; flex-direction:column; gap:8px; padding:22px 20px 24px; border:1px solid var(--line); background:#fff; text-decoration:none; color:var(--ink); transition:background .2s, border-color .2s; }
.acc-card:hover{ background:#faf8f4; border-color:rgba(17,17,17,.22); }
.acc-card__kicker{ font-size:9px; letter-spacing:.2em; color:var(--mute); }
.acc-card strong{ font-family:"Times New Roman","Songti SC",serif; font-size:19px; font-weight:400; letter-spacing:.08em; }
.acc-card__desc{ font-size:11px; line-height:1.8; color:var(--mute); }
.acc-card__arrow{ position:absolute; right:16px; top:18px; font-size:15px; color:var(--mute); }
.acc-panel{ border-top:1px solid var(--line); padding:26px 0 4px; margin:0 0 26px; }
.acc-panel__head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin:0 0 18px; }
.acc-panel__head h2{ font-family:"Times New Roman","Songti SC",serif; font-size:22px; font-weight:400; letter-spacing:.1em; margin:0; }
.acc-panel__head a{ font-size:11px; color:var(--mute); text-decoration:underline; }
.acc-panel__hint{ font-size:11px; color:var(--mute); }
.acc-res{ list-style:none; margin:0; padding:0; }
.acc-res li{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 0; border-bottom:1px solid var(--line); }
.acc-res__main{ display:flex; flex-direction:column; gap:4px; }
.acc-res__title{ font-size:14px; letter-spacing:.04em; }
.acc-res__meta{ font-size:10px; color:var(--mute); letter-spacing:.12em; text-transform:uppercase; }
.acc-res__btn{ flex:0 0 auto; padding:9px 18px; border:1px solid rgba(17,17,17,.22); color:var(--ink); text-decoration:none; font-size:11px; letter-spacing:.14em; }
.acc-res__btn:hover{ background:#111; border-color:#111; color:#fff; }
.acc-empty{ padding:16px 0 8px; }
.acc-empty p{ font-size:12px; line-height:1.9; color:var(--mute); margin:0 0 14px; }
.acc-panel--note p{ font-size:12px; line-height:2; color:var(--mute); margin:0 0 10px; max-width:900px; }
.acc-guest{ padding:60px 0 80px; max-width:560px; }
.acc-guest__actions{ display:flex; gap:12px; margin-top:22px; }
.acc-profile{ border-top:1px solid var(--line); padding:28px 0 0; margin:0 0 10px; }
.acc-profile main.container{ max-width:none !important; padding:0 !important; }
.acc-profile .acc-hero{ display:none; }
@media (max-width:900px){
  .acc-grid{ grid-template-columns:repeat(2,1fr); }
  .acc-status{ gap:20px; }
  .acc-status .acc-btn{ margin-left:0; }
}
@media (max-width:600px){
  .acc-page{ padding:0 20px 30px; }
  .acc-hero{ padding:24px 0 18px; }
  .acc-hero__title{ font-size:26px; }
  .acc-grid{ grid-template-columns:1fr; gap:12px; }
  .acc-res li{ align-items:flex-start; flex-direction:column; gap:10px; }
}

.acc-summary{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding:4px 0 10px; }
.acc-summary > div{ display:flex; flex-direction:column; gap:7px; border-bottom:1px solid var(--line); padding-bottom:12px; }
.acc-summary span{ font-size:10px; letter-spacing:.16em; color:var(--mute); text-transform:uppercase; }
.acc-summary strong{ font-size:14px; font-weight:400; letter-spacing:.03em; word-break:break-all; }
@media (max-width:600px){ .acc-summary{ grid-template-columns:1fr; gap:12px; } }

.acc-panel__head--end{ justify-content:flex-end; }

/* 详情页：左侧图片全部纵向排列（LV 式） */
.product-single > .grid__item:first-child{ position:static !important; }
.product-gallery-stack{ display:flex; flex-direction:column; gap:6px; background:var(--paper); }
.product-gallery__item{ display:block; width:100%; background:#f3f1ee; overflow:hidden; }
.product-gallery__item img,
.product-gallery__item video{ display:block; width:100%; height:auto; }
@media (max-width:900px){
  .product-gallery-stack{ gap:4px; }
}

/* 图片之间零间隙 */
.product-gallery-stack{ gap:0 !important; font-size:0 !important; }
.product-gallery__item{ margin:0 !important; line-height:0; font-size:0; }
.product-gallery__item img,
.product-gallery__item video{ margin:0 !important; vertical-align:top; }

/* 右侧信息栏：随页滚动固定 */
.product-single > .grid__item:nth-child(2){
  position:sticky !important;
  top:104px;
  align-self:start;
  max-height:calc(100vh - 124px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}
@media (max-width:900px){
  .product-single > .grid__item:nth-child(2){
    position:static !important;
    max-height:none;
    overflow:visible;
  }
}

/* sticky 需要祖先不裁切：商品页放开 main 的 overflow */
.template-post .main-content{ overflow:visible !important; }

.template-article .main-content{ overflow:visible !important; }

/* 右侧固定栏隐藏内层滚动条 */
.product-single > .grid__item:nth-child(2){ scrollbar-width:none; -ms-overflow-style:none; }
.product-single > .grid__item:nth-child(2)::-webkit-scrollbar{ width:0; height:0; display:none; }

/* 右侧固定栏不再内部裁切，整栏完整显示 */
.product-single > .grid__item:nth-child(2){ max-height:none !important; overflow:visible !important; }

/* 视口较矮时取消固定，保证整栏内容都能随页读完 */
@media (min-width:901px) and (max-height:1100px){
  .product-single > .grid__item:nth-child(2){ position:static !important; }
}

/* 加购后「查看购物袋」按钮 */
.btn--view-cart{background:#000 !important;color:#fff !important;border:1px solid #000 !important;display:flex !important;align-items:center;justify-content:center;height:46px;line-height:1;margin-top:0 !important;text-decoration:none !important;font-size:14px;letter-spacing:.08em}
.btn--view-cart:hover{background:#333 !important;border-color:#333 !important;color:#fff !important}

/* 品牌资讯/文章列表：杂志式双列卡片，图片在上、文字在下 */
.featured-products .grid--uniform.cat-grid--journal{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:64px 48px !important; padding-top:38px;
}
.cat-grid--journal .news-block-three{
  padding:0 !important; margin:0 !important; border:0 !important; min-height:0 !important;
}
.cat-grid--journal .news-block-three .inner-box{
  position:static !important; padding-left:0 !important; min-height:0 !important;
}
.cat-grid--journal .news-block-three .inner-box .image{
  position:relative !important; left:auto !important; top:auto !important;
  width:100% !important; margin:0 0 22px !important;
  background:#f4f1ec; overflow:hidden;
}
.cat-grid--journal .news-block-three .image img{
  width:100% !important; height:auto !important; aspect-ratio:4/3;
  object-fit:cover; display:block; transform:none !important;
}
.cat-grid--journal .news-block-three .inner-box:hover .image img{
  opacity:1 !important; transform:none !important;
}
.cat-grid--journal .news-block-three .title{
  font-size:10px !important; letter-spacing:.2em !important;
  color:#8d7550 !important; text-transform:none !important;
  margin:0 0 10px;
}
.cat-grid--journal .news-block-three h4{
  margin:0 0 12px !important; font-size:22px !important;
  line-height:1.38 !important; font-weight:500 !important;
}
.cat-grid--journal .news-block-three h4 a{ color:#111 !important; }
.cat-grid--journal .news-block-three p{
  margin:0 0 16px !important; font-size:14px !important;
  line-height:1.9 !important; color:#5a5a5a;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical;
  overflow:hidden;
}
.cat-grid--journal .news-block-three .post-date{
  font-size:12px !important; color:#999 !important; letter-spacing:.04em;
}
@media (max-width:1024px){
  .featured-products .grid--uniform.cat-grid--journal{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:44px 28px !important; padding-top:28px;
  }
  .cat-grid--journal .news-block-three h4{ font-size:20px !important; }
}
@media (max-width:749px){
  .featured-products .grid--uniform.cat-grid--journal{
    grid-template-columns:1fr !important; gap:40px !important;
  }
  .cat-grid--journal .news-block-three .image{ margin-bottom:16px !important; }
  .cat-grid--journal .news-block-three h4{ font-size:22px !important; }
}

/* 头部会员入口：VIP 字标 */
.cn-icn--vip{
  width:auto; min-width:30px; padding:4px 2px;
  font-family:"Times New Roman","Songti SC",serif;
  font-size:13px; font-weight:600; letter-spacing:.1em;
  line-height:1; text-decoration:none;
}

/* ---------------- 搜索页（LV 式结果页） ---------------- */
.cn-search-page{ background:#fff; color:#111; overflow-x:hidden; }
.cn-search-page .cn-sr-shell{
  max-width:1440px; margin:0 auto; padding:0 32px 80px;
}
.cn-sr-top{
  position:relative; display:flex; align-items:center; justify-content:center;
  height:122px;
}
.cn-sr-brand{ display:block; line-height:0; }
.cn-sr-brand img{ width:210px; height:auto; display:block; }
.cn-sr-close{
  position:absolute; right:0; top:50%; transform:translateY(-50%);
  width:44px; height:44px; display:flex; align-items:center; justify-content:center;
  color:#111; font-size:32px; line-height:1; text-decoration:none;
  transition:color .25s ease;
}
.cn-sr-close:hover{ color:#8d7550; }
.cn-sr-form{
  position:relative; display:flex; align-items:center;
  max-width:1040px; height:76px; margin:0 auto; padding:0 30px;
  border:1px solid #111; border-radius:999px; background:#fff;
}
.cn-sr-label{
  position:absolute; width:1px; height:1px; overflow:hidden;
  clip:rect(0 0 0 0); white-space:nowrap;
}
.cn-sr-form input{
  flex:1 1 auto; min-width:0; height:100%; border:0; outline:0;
  background:transparent; color:#111; font-size:20px; letter-spacing:.02em;
  font-family:inherit;
}
.cn-sr-form input::placeholder{ color:#9a9a9a; }
.cn-sr-form input::-webkit-search-cancel-button{ -webkit-appearance:none; }
.cn-sr-clear{
  flex:0 0 auto; margin-left:18px; padding-bottom:2px;
  color:#111; font-size:13px; letter-spacing:.08em;
  border-bottom:1px solid #111; text-decoration:none; white-space:nowrap;
}
.cn-sr-submit{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); border:0;
}
.cn-sr-meta{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:end;
  margin-top:42px; padding-bottom:0; border-bottom:1px solid #e6e3dd;
}
.cn-sr-count{
  margin:0 0 14px; color:#777; font-size:13px; letter-spacing:.04em;
}
.cn-sr-tabs{ display:flex; justify-content:center; gap:38px; }
.cn-sr-tab{
  position:relative; border:0; background:none; padding:0 0 14px;
  color:#666; font-size:14px; letter-spacing:.04em; cursor:pointer;
  font-family:inherit;
}
.cn-sr-tab em{ font-style:normal; color:#999; font-size:12px; margin-left:3px; }
.cn-sr-tab em:before{ content:"("; }
.cn-sr-tab em:after{ content:")"; }
.cn-sr-tab.is-active{ color:#111; }
.cn-sr-tab.is-active:after{
  content:""; position:absolute; left:0; right:0; bottom:-1px;
  height:2px; background:#111;
}
.cn-sr-section{ margin-top:36px; }
.cn-sr-sectionhead{ display:flex; align-items:baseline; justify-content:space-between; margin:0 0 18px; }
.cn-sr-sectionhead h2{
  margin:0; font-size:22px; font-weight:500; letter-spacing:.08em;
}
.cn-sr-sectionhead h2 span{
  margin-left:6px; color:#999; font-size:12px; letter-spacing:.04em; font-weight:400;
}
.cn-sr-grid{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px 22px;
}
.cn-sr-grid .product{ width:auto !important; float:none !important; margin:0 !important; padding:0 !important; }
.cn-sr-grid .product .product__image-wrapper{ background:#f4f1ec; }
.cn-sr-grid .product__title--card{ margin-top:14px; text-align:left !important; }
.cn-sr-grid .product__title--card a{
  font-size:15px !important; letter-spacing:.02em; line-height:1.5;
}
.cn-sr-grid .product__prices{ margin-top:7px; text-align:left !important; }
.cn-sr-grid .product__price,
.cn-sr-grid .product__prices span{ font-size:13px !important; }
.cn-sr-journal{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:56px 44px;
}
.cn-sr-prompt,.cn-sr-empty{
  max-width:1040px; margin:120px auto 0; text-align:center;
}
.cn-sr-eyebrow{
  margin:0 0 18px; color:#8d7550; font-size:11px; letter-spacing:.24em;
}
.cn-sr-prompt h1,.cn-sr-empty h1{
  margin:0 0 16px; font-size:34px; font-weight:400; letter-spacing:.08em;
}
.cn-sr-prompt p,.cn-sr-empty p{
  margin:0; color:#666; font-size:14px; line-height:1.9;
}
.cn-sr-hot{
  display:flex; flex-wrap:wrap; justify-content:center; gap:10px 22px;
  margin-top:30px;
}
.cn-sr-hot a{
  color:#111; font-size:13px; letter-spacing:.08em;
  border-bottom:1px solid #111; padding-bottom:2px;
}
@media (max-width:1024px){
  .cn-search-page .cn-sr-shell{ padding:0 24px 64px; }
  .cn-sr-top{ height:100px; }
  .cn-sr-brand img{ width:170px; }
  .cn-sr-form{ height:64px; padding:0 24px; }
  .cn-sr-form input{ font-size:18px; }
  .cn-sr-meta{ grid-template-columns:1fr; gap:16px; margin-top:30px; }
  .cn-sr-count{ margin:0; }
  .cn-sr-tabs{
    justify-content:flex-start; gap:26px; overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .cn-sr-tabs::-webkit-scrollbar{ display:none; }
  .cn-sr-tab{ white-space:nowrap; }
  .cn-sr-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:749px){
  .cn-search-page .cn-sr-shell{ padding:0 18px 48px; }
  .cn-sr-top{ height:76px; }
  .cn-sr-brand img{ width:132px; }
  .cn-sr-close{ right:0; width:36px; height:36px; font-size:24px; }
  .cn-sr-form{ height:56px; padding:0 18px; }
  .cn-sr-form input{ font-size:16px; }
  .cn-sr-clear{ margin-left:12px; font-size:12px; }
  .cn-sr-meta{ margin-top:26px; }
  .cn-sr-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 12px; }
  .cn-sr-grid .product__title--card{ margin-top:10px; }
  .cn-sr-grid .product__title--card a{ font-size:13px !important; }
  .cn-sr-grid .product__price,
  .cn-sr-grid .product__prices span{ font-size:12px !important; }
  .cn-sr-journal{ grid-template-columns:1fr; gap:38px; }
  .cn-sr-sectionhead h2{ font-size:20px; }
  .cn-sr-prompt,.cn-sr-empty{ margin-top:64px; }
  .cn-sr-prompt h1,.cn-sr-empty h1{ font-size:24px; }
}

/* 搜索框尺寸收敛：不再占满整行 */
.cn-search__inner{ max-width:860px; }
.cn-search__line{ height:64px; padding:0 26px; gap:16px; }
.cn-search__line input{ font-size:18px; }
.cn-search-page .cn-sr-form{ max-width:860px; height:64px; padding:0 26px; }
.cn-sr-form input{ font-size:18px; }
@media (max-width:1024px){
  .cn-search__inner{ max-width:760px; }
  .cn-search-page .cn-sr-form{ max-width:760px; }
}
@media (max-width:767px){
  .cn-search__line{ height:52px; padding:0 18px; gap:12px; }
  .cn-search__line input{ font-size:15px; }
}
@media (max-width:749px){
  .cn-search-page .cn-sr-form{ height:52px; padding:0 18px; }
  .cn-sr-form input{ font-size:15px; }
}

/* ---------------- 分类页：LV 式列表 ---------------- */
.template-category .main-content{
  width:100% !important; max-width:none !important; float:none !important;
}
.template-category .site-wrapper > .grid{ display:block !important; }
.template-category .cat-hero--goods{
  padding:30px 0 22px; border-bottom:0;
}
.template-category .cat-hero--goods .cat-hero__title{
  font-size:30px; letter-spacing:.14em;
}
.cat-banner{
  position:relative; margin:0 calc(-1 * var(--gutter));
  height:clamp(320px,34vw,460px); overflow:hidden; background:#111;
}
.cat-banner__img{ width:100%; height:100%; object-fit:cover; display:block; }
.cat-banner__shade{
  position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.02) 35%,rgba(0,0,0,.58) 100%);
}
.cat-banner__caption{
  position:absolute; left:0; right:0; bottom:38px; color:#fff;
  padding:0 clamp(32px,5vw,80px);
}
.cat-banner__title{
  font-family:"Times New Roman","Songti SC",Georgia,serif;
  font-size:34px; line-height:1.2; letter-spacing:.1em; font-weight:400;
  margin:0 0 12px; color:#fff;
}
.cat-banner__copy{
  max-width:520px; margin:0; font-size:13px; line-height:1.9;
  letter-spacing:.06em; color:rgba(255,255,255,.9);
}
.template-category .cat-toolbar{ padding:26px 0 2px; }
.template-category .featured-products .grid--uniform:not(.cat-grid--journal){
  grid-template-columns:repeat(4,1fr); gap:34px 18px; padding:26px var(--gutter) 0;
}
.template-category .product__title--card{ text-align:left !important; margin-top:12px; }
.template-category .product__title--card a{ font-size:13px; letter-spacing:.06em; }
.template-category .product__prices{ text-align:left !important; margin-top:5px; }
.template-category .product__price,
.template-category .product__prices span{ font-size:12px !important; }
@media (max-width:1024px){
  .template-category .featured-products .grid--uniform:not(.cat-grid--journal){
    grid-template-columns:repeat(4,1fr); gap:28px 14px;
  }
  .cat-banner{ height:380px; }
  .cat-banner__title{ font-size:28px; }
}
@media (max-width:749px){
  .template-category .cat-hero--goods{ padding:24px 0 18px; }
  .template-category .cat-hero--goods .cat-hero__title{ font-size:26px; }
  .cat-banner{ height:300px; }
  .cat-banner__caption{ bottom:24px; }
  .cat-banner__title{ font-size:24px; }
  .cat-banner__copy{ font-size:12px; line-height:1.8; }
  .template-category .cat-toolbar{ padding:18px 0 0; }
  .template-category .featured-products .grid--uniform:not(.cat-grid--journal){
    grid-template-columns:repeat(2,1fr); gap:24px 12px;
  }
}

/* 商品数量少于 4 件时收列，避免右侧空一整列 */
.template-category .featured-products .grid--uniform.cat-grid--cols1:not(.cat-grid--journal){
  grid-template-columns:1fr; max-width:380px; margin-left:0; margin-right:auto;
}
.template-category .featured-products .grid--uniform.cat-grid--cols2:not(.cat-grid--journal){
  grid-template-columns:repeat(2,1fr); max-width:760px; margin-left:0; margin-right:auto;
}
.template-category .featured-products .grid--uniform.cat-grid--cols3:not(.cat-grid--journal){
  grid-template-columns:repeat(3,1fr); max-width:1100px; margin-left:0; margin-right:auto;
}
@media (max-width:749px){
  .template-category .featured-products .grid--uniform.cat-grid--cols1:not(.cat-grid--journal),
  .template-category .featured-products .grid--uniform.cat-grid--cols2:not(.cat-grid--journal),
  .template-category .featured-products .grid--uniform.cat-grid--cols3:not(.cat-grid--journal){
    max-width:none;
  }
  .template-category .featured-products .grid--uniform.cat-grid--cols2:not(.cat-grid--journal),
  .template-category .featured-products .grid--uniform.cat-grid--cols3:not(.cat-grid--journal){
    grid-template-columns:repeat(2,1fr);
  }
}

/* 分类页商品卡图片：1:1 正方形 */
.template-category .product .product__image-wrapper{
  padding-top:100% !important;
}

/* 首页品牌纪事三图：改为 1:1 正方形 */
.luxe-journal__img img{ aspect-ratio:1/1 !important; }


/* 购物袋：勾选结算与数量更新 */
.cart-form .cart__table-cell--select{width:44px;text-align:left;padding-right:0}
.cart-form .cart-select,.cart-form .cart-select-all{width:16px;height:16px;accent-color:#111;cursor:pointer;vertical-align:middle;margin:0}

/* 购物袋：窄屏勾选框贴到卡片右上角 */
@media only screen and (max-width:989px){
  .cart-table tr.cart_item{position:relative;}
  .cart-table td.cart__table-cell--select{position:absolute;right:0;top:14px;width:auto!important;padding:0;justify-content:flex-end;z-index:2;}
  .cart-table td.cart__table-cell--select::before{content:none;}
}

/* 购物袋：选择区与已选状态 */
.cart-form .cart__table-cell--select{width:56px;text-align:left;padding-right:0}
.cart-head-select{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.12em;color:#6f6a63;white-space:nowrap}
.cart-actionbar{display:flex;align-items:center;gap:18px;margin:0 0 18px;font-size:11px;letter-spacing:.1em;color:#6f6a63}
.cart-select-all-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.cart-selected-text b{font-weight:400;color:#111}
.cart-form__cart-item.is-selected{background:#faf8f4}
.cart-update-label{display:inline-block;margin-left:8px;font-size:11px;letter-spacing:.12em;vertical-align:middle}
@media only screen and (max-width:989px){
  .cart-actionbar{margin:0 0 14px;padding:2px 0 10px;border-bottom:1px solid var(--line)}
  .cart-update-label{display:inline-block}
}

.cart-form #cartCheckout:disabled{opacity:.32;cursor:not-allowed}
.cart-form .cart-select,.cart-form .cart-select-all{width:16px;height:16px;accent-color:#111;cursor:pointer}

/* ================= checkout redesign v2 ================= */
.template-pay .breadcrumb-nav{display:none}
.checkout-intro{max-width:1180px;margin:0 auto;padding:58px var(--gutter) 8px}
.checkout-intro .luxe-eyebrow{margin:0 0 10px}
.checkout-intro h1{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:46px;font-weight:400;letter-spacing:.1em;margin:0}
.checkout-steps{display:flex;align-items:center;gap:10px;margin:18px 0 0;font-size:10px;letter-spacing:.16em;color:var(--mute)}
.checkout-steps .is-done{color:var(--ink)}
.checkout-steps .is-current{color:var(--ink)}
.checkout-steps i{display:block;width:28px;height:1px;background:var(--line)}
.order_info{padding-top:20px}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:0 56px;align-items:start}
.checkout-main{min-width:0}
.checkout-summary{background:var(--paper);border:1px solid var(--line);padding:30px 28px 28px;position:sticky;top:96px}
.checkout-summary #order_review_heading{font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC",sans-serif!important;font-size:11px!important;letter-spacing:.18em!important;color:var(--mute)!important;margin:0 0 14px!important}
.checkout-main .billing-fields{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:34px}
.checkout-main .shipping-methods-container{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:34px!important;margin-top:0!important}
.checkout-main .additional-fields{border-bottom:1px solid var(--line);padding-bottom:14px}
.checkout-main h3{font-size:19px!important;letter-spacing:.12em;margin:0 0 22px!important}
.checkout-main .billing-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.checkout-main .additional-fields__field-wrapper .form-row{margin-bottom:20px!important}
.checkout-main .form-row{margin:0 0 22px!important}
.checkout-main label{font-size:10px!important;letter-spacing:.18em!important;color:var(--mute)!important;margin:0 0 7px!important}
.checkout-main input.input-text,.checkout-main input[type=text],.checkout-main input[type=tel],.checkout-main input[type=email],.checkout-main textarea{height:50px!important;border:1px solid var(--line)!important;background:#fff!important;border-radius:0!important;padding:0 14px!important;font-size:14px!important;color:var(--ink)!important}
.checkout-main textarea{min-height:132px!important;padding:14px!important;height:auto!important;line-height:1.8}
.checkout-main .shipping-method label{display:flex!important;align-items:center;gap:10px;font-size:12px!important;letter-spacing:.06em!important;padding:13px 0!important;border-bottom:1px solid rgba(0,0,0,.05)}
.checkout-main .shipping-method label.cur{color:var(--ink)}
.checkout-summary .shop_table{width:100%!important;border-collapse:collapse}
.checkout-summary .shop_table thead{display:none}
.checkout-summary .shop_table .product-name{display:flex!important;gap:14px;align-items:flex-start;padding:14px 0!important;border-bottom:1px solid var(--line);width:auto!important}
.checkout-summary .shop_table .product-name img{float:none!important;width:64px!important;height:82px!important;object-fit:cover;flex:0 0 64px}
.checkout-summary .shop_table .product-name span{font-size:12px;line-height:1.8}
.checkout-summary .shop_table .product-name b{font-weight:400;font-size:12px;letter-spacing:.04em}
.checkout-summary .shop_table .product-total{text-align:right;padding:14px 0!important;border-bottom:1px solid var(--line);font-size:12px;white-space:nowrap;vertical-align:top}
.checkout-summary tfoot th{font-size:10px;letter-spacing:.16em;color:var(--mute);font-weight:400;text-align:left;padding:11px 0;border:0}
.checkout-summary tfoot td{font-size:12px;text-align:right;padding:11px 0;border:0}
.checkout-summary .order-total th,.checkout-summary .order-total td{font-size:13px;color:var(--ink);padding-top:16px}
.checkout-summary .order-total .price{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:22px;letter-spacing:.04em}
.checkout-payment{margin:26px 0 0;padding:24px 0 0;border-top:1px solid var(--line)}
.checkout-payment h3{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;font-size:11px!important;letter-spacing:.18em!important;color:var(--mute)!important;margin:0 0 14px!important}
.paybtn{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px;position:relative}
.paybtn input[type=radio]{position:absolute;opacity:0;pointer-events:none}
.paybtn label{display:flex!important;align-items:center;justify-content:center;gap:9px;min-height:54px;border:1px solid var(--line);background:#fff;font-size:11px!important;letter-spacing:.1em!important;color:var(--ink)!important;padding:8px 10px!important;cursor:pointer;text-align:center}
.paybtn label img{height:18px!important;width:auto!important;max-width:64px;object-fit:contain;float:none!important}
.paybtn label span{display:inline-block}
.paybtn input:checked+label{border-color:#111;box-shadow:inset 0 0 0 1px #111}
.paybtn .virtual-pay{grid-column:1/-1;justify-content:flex-start!important;text-align:left;font-size:12px!important;letter-spacing:.02em!important}
.place-order .submit span{display:block;font-size:10px;letter-spacing:.12em;color:var(--mute);margin:0 0 10px}
.checkout-payment .submit button,.checkout-payment .submit input,#place_order{display:block;width:100%!important;max-width:none!important;height:56px;background:#111!important;color:#fff!important;border:0!important;border-radius:0!important;font-size:12px!important;letter-spacing:.22em!important;margin:0!important;cursor:pointer}
@media only screen and (max-width:1100px){
  .checkout-layout{grid-template-columns:1fr;gap:0}
  .checkout-summary{position:static;margin-top:36px;padding:24px 20px}
  .checkout-main .billing-fields__field-wrapper{grid-template-columns:1fr;gap:0}
}
@media only screen and (max-width:600px){
  .checkout-intro{padding:30px 20px 4px}
  .checkout-intro h1{font-size:36px}
  .order_info{padding-left:20px;padding-right:20px}
  .paybtn{grid-template-columns:1fr}
}

.template-page:has(.checkout-intro) .breadcrumb-nav{display:none}
.checkout-payment .submit{display:block;width:100%}
.paybtn{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}

/* ================= my orders redesign ================= */
.myorder{padding-top:10px}
.myorder .order-card{background:#fff;border:1px solid var(--line);padding:0 28px;margin:0 0 26px;transition:border-color .2s}
.myorder .order-card:hover{border-color:#cfc9be}
.order-card__head{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.order-meta{min-width:0}
.order-date{font-size:10px;letter-spacing:.16em;color:var(--mute);margin:0 0 4px}
.order-no{font-size:11px;letter-spacing:.06em;color:var(--ink-soft);margin:0;word-break:break-all}
.order-status{display:inline-block;font-size:10px;letter-spacing:.14em;padding:5px 10px;border:1px solid var(--line);white-space:nowrap}
.order-status.is-pending{color:#8a5a44;border-color:#e4d5c7;background:#fbf6f1}
.order-status.is-expired{color:#8a8a8a}
.order-status.is-paid{color:#3f6a4a;border-color:#dbe7dd}
.order-status.is-waiting{color:#8a5a44;border-color:#e4d5c7;background:#fbf6f1}
.order-status.is-shipped{color:#3f6a4a;border-color:#dbe7dd}
.order-card__body{padding:6px 0}
.order-line{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:20px;align-items:start;padding:20px 0;border-bottom:1px solid rgba(0,0,0,.05)}
.order-line:last-child{border-bottom:0}
.order-line__thumb img{display:block;width:100%;aspect-ratio:1/1.12;object-fit:cover;background:var(--paper-2)}
.order-line__info h3{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:17px;font-weight:400;letter-spacing:.04em;margin:0 0 8px;line-height:1.5}
.order-line__desc{font-size:11px;color:var(--mute);line-height:1.8;margin:0;max-width:520px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.order-line__price{text-align:right;font-size:13px;white-space:nowrap;padding-top:2px}
.order-line__price small{display:block;font-size:10px;color:var(--mute);margin-top:4px;letter-spacing:.08em}
.order-card__foot{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0 22px;border-top:1px solid var(--line);flex-wrap:wrap}
.order-total{font-size:11px;letter-spacing:.12em;color:var(--mute)}
.order-total strong{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:24px;font-weight:400;color:var(--ink);margin-left:12px;letter-spacing:.03em}
.order-actions{display:flex;align-items:center;gap:18px}
.order-actions a{font-size:11px;letter-spacing:.14em;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}
.order-actions .order-pay{background:#111;color:#fff;border:0;padding:10px 18px;letter-spacing:.16em}
.order-actions .del{color:var(--mute);cursor:pointer;display:inline-flex;align-items:center;padding:6px}
.order-actions .del:hover{color:#a33}
.myorder .order-detail-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:28px 0 24px;border-bottom:1px solid var(--line)}
.order-detail-head__main .order-date{margin-bottom:6px}
.order-detail-head h2{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:34px;font-weight:400;letter-spacing:.08em;margin:0;line-height:1.2}
.order-detail-head h2 span{display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:11px;letter-spacing:.1em;color:var(--mute);margin-top:8px}
.order-detail-head__side{text-align:right;flex:0 0 auto}
.detail-total{display:block;font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:30px;font-weight:400;letter-spacing:.03em;margin-top:12px}
.order-detail-section{padding:30px 0 6px;border-bottom:1px solid var(--line)}
.order-detail-title{font-size:11px!important;letter-spacing:.18em!important;color:var(--mute)!important;font-weight:400;margin:0 0 18px!important}
.order-detail-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.order-detail-panel p{display:flex;gap:12px;margin:0;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.05);font-size:12px;line-height:1.8;word-break:break-word}
.order-detail-panel p label{flex:0 0 86px;font-size:10px;letter-spacing:.12em;color:var(--mute);font-weight:400}
.order-detail-panel p span{font-size:12px}
.order-detail-kicker{font-size:11px;letter-spacing:.12em;color:var(--mute);margin:0 0 10px}
.order-detail-items .tablebox{margin-top:0;border:0}
.order-detail-items table{width:100%}
.myorder .wuliuinfo{margin-bottom:18px;font-size:12px;color:var(--ink-soft)}
.order-detail-back{display:flex;justify-content:center;padding:40px 0 10px}
.order-back-btn{background:#fff;border:1px solid #111;color:#111;height:48px;padding:0 32px;font-size:11px;letter-spacing:.18em;cursor:pointer;border-radius:0}
.order-back-btn:hover{background:#111;color:#fff}
@media only screen and (max-width:760px){
  .myorder .order-card{padding:0 16px}
  .order-line{grid-template-columns:72px minmax(0,1fr);gap:14px}
  .order-line__price{grid-column:2;text-align:left;padding-top:0}
  .order-card__foot{align-items:flex-start}
  .order-total strong{display:block;margin:4px 0 0;font-size:21px}
  .order-actions{gap:12px;flex-wrap:wrap}
  .order-detail-head{display:block;padding-top:20px}
  .order-detail-head__side{text-align:left;margin-top:16px}
  .order-detail-panel{grid-template-columns:1fr;gap:0}
  .order-detail-panel p label{flex-basis:78px}
  .order-detail-head h2{font-size:27px}
}

.order-detail-no{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:19px;letter-spacing:.05em;margin:0;color:var(--ink)}
.order-detail-panel p label::after{content:"：";color:var(--mute)}
.order-detail-head h2{display:none}
@media only screen and (max-width:900px){.order-detail-panel{grid-template-columns:1fr;gap:0}}

/* ================= contact redesign ================= */
.contact-page{max-width:1180px;margin:0 auto;padding:56px var(--gutter) 80px}
.contact-head{max-width:760px}
.contact-eyebrow{font-size:10px;letter-spacing:.22em;color:var(--mute);margin:0 0 12px;text-transform:uppercase}
.contact-head h1{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:46px;font-weight:400;letter-spacing:.1em;margin:0}
.contact-lead{font-size:13px;line-height:1.9;color:var(--ink-soft);max-width:560px;margin:18px 0 0}
.contact-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:64px;margin-top:52px;align-items:start}
.contact-notes{padding-top:4px}
.contact-note{padding:22px 0;border-top:1px solid var(--line)}
.contact-note:last-child{border-bottom:1px solid var(--line)}
.contact-note__no{font-size:10px;letter-spacing:.18em;color:var(--mute);margin:0 0 6px}
.contact-note h3{font-size:15px;font-weight:400;letter-spacing:.08em;margin:0 0 8px}
.contact-note p{font-size:11px;line-height:1.9;color:var(--mute);margin:0}
.contact-form--luxe{background:var(--paper);border:1px solid var(--line);padding:34px 34px 30px}
.contact-form--luxe .contact-form__head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:24px}
.contact-form--luxe .contact-form__head p{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:22px;letter-spacing:.08em;margin:0}
.contact-form--luxe .contact-form__head span{font-size:10px;letter-spacing:.16em;color:var(--mute)}
.contact-field{margin:0 0 18px}
.contact-field label{display:block;font-size:10px;letter-spacing:.16em;color:var(--mute);margin:0 0 7px}
.contact-field input,.contact-field textarea{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:0;font-size:13px;color:var(--ink);padding:0 14px;height:48px;outline:none}
.contact-field textarea{height:auto;min-height:128px;padding:13px 14px;line-height:1.8;resize:vertical}
.contact-field input:focus,.contact-field textarea:focus{border-color:#9a9a9a}
.contact-form--luxe .contact-submit{display:block;width:100%;height:52px;background:#111;color:#fff;border:0;border-radius:0;font-size:11px;letter-spacing:.22em;margin-top:8px;cursor:pointer}
.contact-form--luxe .contact-fine{font-size:10px;color:var(--mute);letter-spacing:.04em;margin:12px 0 0;text-align:center}
@media only screen and (max-width:900px){
  .contact-page{padding:34px 20px 60px}
  .contact-head h1{font-size:36px}
  .contact-grid{grid-template-columns:1fr;gap:34px;margin-top:34px}
  .contact-form--luxe{padding:24px 18px}
}

/* ================= payment result ================= */
.pay-result{max-width:720px;margin:78px auto 40px;padding:0 20px;text-align:center}
.pay-result__mark{width:58px;height:58px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Times New Roman",Georgia,serif;font-size:26px;margin:0 auto 22px;color:var(--ink)}
.pay-result.is-failed .pay-result__mark{border-color:#e4d5c7;color:#8a5a44}
.pay-result.is-success .pay-result__mark{border-color:#dbe7dd;color:#3f6a4a}
.pay-result__eyebrow{font-size:10px;letter-spacing:.2em;color:var(--mute);margin:0 0 10px}
.pay-result h1{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:42px;font-weight:400;letter-spacing:.1em;margin:0}
.pay-result__lead{font-size:13px;color:var(--ink-soft);line-height:1.9;margin:16px 0 0}
.pay-result__actions{display:flex;justify-content:center;align-items:center;gap:18px;margin:30px 0 0;flex-wrap:wrap}
.pay-result__primary{display:inline-flex;align-items:center;justify-content:center;background:#111;color:#fff;height:48px;padding:0 30px;font-size:11px;letter-spacing:.18em}
.pay-result__primary:hover{color:#fff;background:#000}
.pay-result__link{font-size:11px;letter-spacing:.14em;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}
.pay-result__count{font-size:11px;letter-spacing:.08em;color:var(--mute);margin:30px 0 0}
.pay-result__count .t{font-family:"Times New Roman",Georgia,serif;font-size:16px;color:var(--ink);font-weight:400}
@media only screen and (max-width:600px){
  .pay-result{margin-top:48px}
  .pay-result h1{font-size:34px}
}
.waiting-ship{color:#8a5a44;font-weight:400}

/* ================= 404 ================= */
body.template-page:has(.od-Error-subText) .breadcrumb-nav{display:none}
body.template-page:has(.od-Error-subText) .article{padding:70px 0 60px;max-width:820px}
body.template-page:has(.od-Error-subText) .article>header h1{font-size:0!important;line-height:1;margin:0 0 20px;letter-spacing:0}
body.template-page:has(.od-Error-subText) .article>header h1::after{content:"404";font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:92px;font-weight:400;letter-spacing:.14em;color:var(--ink);display:block}
body.template-page:has(.od-Error-subText) .rte p{font-size:14px;line-height:1.9;color:var(--ink-soft);margin:0 0 12px}
body.template-page:has(.od-Error-subText) .rte a{display:inline-flex;align-items:center;height:46px;padding:0 26px;background:#111;color:#fff;font-size:11px;letter-spacing:.18em;margin-top:14px}
body.template-page:has(.od-Error-subText) .od-Error-subText{display:none!important}
@media only screen and (max-width:600px){
  body.template-page:has(.od-Error-subText) .article{padding:44px 20px}
  body.template-page:has(.od-Error-subText) .article>header h1::after{font-size:68px}
}

body.template-page:has(.od-Error-subText) .article>header::after{content:"未找到页面";display:block;font-size:12px;letter-spacing:.18em;color:var(--mute);margin-top:6px}
body.template-page:has(.od-Error-subText) .rte a{font-size:0!important;height:42px;padding:0 22px;margin:0 0 0 10px;background:#111!important;border:0;color:#fff!important;vertical-align:middle}
body.template-page:has(.od-Error-subText) .rte a::after{content:"继续购物";font-size:11px;letter-spacing:.16em;color:#fff}
body.template-page:has(.od-Error-subText) .rte p{display:flex;align-items:center;flex-wrap:wrap;gap:8px}

/* ================= login / register ================= */
body.template-page:has(.loginForm) .contact-form.findpassword{padding:0;background:transparent;border:0}
body.template-page:has(.loginForm) form.contact-form{max-width:420px;margin:56px auto 70px;padding:34px 32px 28px;background:var(--paper);border:1px solid var(--line)}
body.template-page:has(.loginForm) .loginForm{width:100%;max-width:none;margin:0}
body.template-page:has(.loginForm) .loginForm h4{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:30px;font-weight:400;letter-spacing:.1em;margin:0 0 6px;text-align:left}
body.template-page:has(.loginForm) .loginForm input[type=text],
body.template-page:has(.loginForm) .loginForm input[type=password],
body.template-page:has(.loginForm) .loginForm input[type=email]{width:100%;height:48px;border:1px solid var(--line);background:#fff;border-radius:0;padding:0 14px;font-size:13px;margin:0 0 14px}
body.template-page:has(.loginForm) .loginForm input[type=submit]{width:100%;height:50px;background:#111;color:#fff;border:0;border-radius:0;font-size:11px;letter-spacing:.22em;margin:8px 0 16px;cursor:pointer}
body.template-page:has(.loginForm) .loginForm p{font-size:11px;letter-spacing:.06em;color:var(--mute);margin:4px 0 0}
body.template-page:has(.loginForm) .loginForm p a{color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px}
body.template-page:has(.loginForm) .loginForm .xh-input-group{width:100%!important;margin-bottom:14px!important;display:flex;gap:8px;align-items:center}
body.template-page:has(.loginForm) .loginForm .xh-input-group input{margin-bottom:0!important}
body.template-page:has(.loginForm) .loginForm #getting{height:48px;background:#111;color:#fff;border:0;border-radius:0;font-size:11px;letter-spacing:.12em;white-space:nowrap;padding:0 16px}
body.template-page:has(.loginForm) .loginForm .label--required{font-size:10px;letter-spacing:.14em;color:var(--mute)}
@media only screen and (max-width:600px){
  body.template-page:has(.loginForm) form.contact-form{margin:30px 20px 50px;padding:24px 18px}
}

.contact-field input,.contact-field textarea{border:1px solid var(--line)!important;background:#fff!important}
body.template-page:has(.loginForm) .loginForm input[type=text],
body.template-page:has(.loginForm) .loginForm input[type=password],
body.template-page:has(.loginForm) .loginForm input[type=email]{border:1px solid var(--line)!important;background:#fff!important}

.template-page .contact-field input[type=text],
.template-page .contact-field input[type=email],
.template-page .contact-field input[type=tel],
.template-page .contact-field textarea{border:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;padding:0 14px!important;height:48px!important;outline:none}
.template-page .contact-field textarea{height:auto!important;min-height:128px!important;padding:13px 14px!important}

.order-detail-items .tablebox{border:0;background:#fff}
.order-detail-items .tablebox table{width:100%;border-collapse:collapse}
.order-detail-items .tablebox th{font-size:10px;letter-spacing:.14em;color:var(--mute);font-weight:400;padding:12px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}
.order-detail-items .tablebox td{padding:16px 14px;border-bottom:1px solid rgba(0,0,0,.06);font-size:12px;vertical-align:middle}
.order-detail-items .tablebox .oneart img{width:72px;height:90px;object-fit:cover}
.order-detail-items .tablebox .artitle h3{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:16px;font-weight:400;margin:0 0 4px}
.order-detail-items .tablebox .contact a{font-size:11px;color:var(--ink-soft);display:block;margin:3px 0}
.order-empty{max-width:620px;margin:56px auto 30px;text-align:center;border:1px solid var(--line);padding:54px 30px}
.order-empty__eyebrow{font-size:10px;letter-spacing:.2em;color:var(--mute);margin:0 0 12px}
.order-empty h2{font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:30px;font-weight:400;letter-spacing:.08em;margin:0}
.order-empty p{font-size:12px;color:var(--mute);margin:12px 0 22px}
.order-empty a{display:inline-flex;align-items:center;height:46px;padding:0 26px;background:#111;color:#fff;font-size:11px;letter-spacing:.18em}
.template-page .contact-field input[type=text],.template-page .contact-field input[type=email],.template-page .contact-field input[type=tel],.template-page .contact-field textarea{border-color:#d8d4cd!important}
body.template-page:has(.loginForm) .label--required::after{content:" *";color:#8a5a44}

.checkout-payment .paybtn label{justify-content:flex-start!important;padding-left:20px!important}
.checkout-payment .paybtn label input[type=radio]{margin-right:10px!important}
.checkout-summary .cart_item .product-name{font-size:11.5px!important;line-height:1.7}

/* 全站统一：LV 风格不保留面包屑 */
body.template-page .breadcrumb-nav{display:none!important}
/* 购物袋手机端字段中文化 */
@media only screen and (max-width:749px){
  .cart-form .cart_item .product-price::before{content:"单价"!important}
  .cart-form .cart_item .product-quantity::before{content:"数量"!important}
  .cart-form .cart_item .product-subtotal::before{content:"小计"!important}
}
/* 结算摘要商品行：去重复价格，数量单独一行 */
.checkout-summary .product-name a{font-size:12px!important}
.checkout-summary .product-name b{font-weight:400}
.checkout-summary .product-quantity{display:block;margin-top:5px;font-size:11px!important;font-weight:400;color:var(--mute)}
.checkout-summary .product-quantity span{display:none!important}

/* 结算摘要：缩小商品缩略图，保证商品名单行可读 */
.checkout-summary .product-name img{width:68px!important;height:68px!important;object-fit:cover;margin-right:10px!important}
.checkout-summary .product-name a{font-size:11.5px!important}
/* 购物袋手机端：右侧数值留出内边距，避免贴边裁切 */
@media only screen and (max-width:989px){
  .cart-table tr.cart_item{padding-right:12px!important}
}

/* 404 兜底：不依赖 :has()，由脚本给 body 加 .is-404 */
body.is-404 .article{padding:70px 0 60px;max-width:820px}
body.is-404 .article>header h1{font-size:0!important;line-height:1;margin:0 0 20px;letter-spacing:0}
body.is-404 .article>header h1::after{content:"404";font-family:"Times New Roman","Songti SC",Georgia,serif;font-size:92px;font-weight:400;letter-spacing:.14em;color:var(--ink);display:block}
body.is-404 .article>header::after{content:"未找到页面";display:block;font-size:12px;letter-spacing:.18em;color:var(--mute);margin-top:6px}
body.is-404 .rte p{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px;line-height:1.9;color:var(--ink-soft);margin:0 0 12px}
body.is-404 .rte a{display:inline-flex;align-items:center;height:42px;padding:0 22px;background:#111!important;border:0;color:#fff!important;vertical-align:middle;font-size:0!important;margin:0 0 0 10px}
body.is-404 .rte a::after{content:"继续购物";font-size:11px;letter-spacing:.16em;color:#fff}
body.is-404 .od-Error-subText{display:none!important}
@media only screen and (max-width:749px){
  body.is-404 .article{padding:44px 20px}
  body.is-404 .article>header h1::after{font-size:68px}
}

/* 结算摘要：只保留一处价格，商品名不再被挤成两行 */
.checkout-summary .product-total{display:none!important}
.checkout-summary .product-name a{font-size:12px!important}
.checkout-summary .product-quantity span{display:inline!important;margin-right:6px}
.checkout-summary .product-name b{white-space:nowrap}
.checkout-summary .product-quantity{white-space:nowrap}

/* 全站前端面包屑统一隐藏（含商品详情 template-post） */
.breadcrumb-nav{display:none!important}

/* 商品详情：去掉最后一张图下方多余的 30px 外边距 */
.template-post .product-single__featured-image-wrapper{margin-bottom:0 !important;}
.template-post #shopify-section-featured-products{margin-bottom:0 !important;}

/* 商品详情（实际 body 为 template-article）：去掉图片下方多余空白 */
.template-article .product-single__featured-image-wrapper,
.template-post .product-single__featured-image-wrapper{margin-bottom:0 !important;}
.template-article #shopify-section-featured-products,
.template-post #shopify-section-featured-products{margin-bottom:0 !important;}

/* 商品详情：图片与推荐标题之间保留 24px 呼吸，不再有 60px 空档 */
.template-article #shopify-section-product-recommendations{padding-top:24px !important;}

/* 首页：轮播圆点改为叠在图片底部，去掉图片下方 44px 的独立空白条 */
.template-index .luxe-hero .flex-control-nav{
  position:absolute !important;
  left:0 !important; right:0 !important; bottom:22px !important;
  margin:0 !important; padding:0 !important; height:auto !important;
}
/* 首页：首屏与「探索系列」之间收紧为 32px */
.template-index .luxe-section-head{padding-top:32px !important;}
