/* Jade catalog and transactional pages, layered over WooCommerce layout contracts. */
body.woocommerce .site-content > .col-full,body.woocommerce-page .site-content > .col-full { padding-top:32px; padding-bottom:75px; max-width:1360px; }
body.woocommerce .woocommerce-breadcrumb { font-size:13px; margin-bottom:28px; }
body.woocommerce .woocommerce-products-header { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:0; min-height:350px; padding:45px 52% 45px 45px; margin-bottom:35px; border:1px solid var(--yw-border); overflow:hidden; background:#eee5d5; }
body.woocommerce .woocommerce-products-header__title { font:400 clamp(34px,3.8vw,55px)/1.5 var(--jade-serif); letter-spacing:.17em; margin:0 0 20px; position:relative; z-index:1; }
body.woocommerce .yw-catalog-intro { display:block; position:relative; z-index:1; }
body.woocommerce .yw-catalog-intro__lead { font:400 20px/1.9 var(--jade-serif); color:#6f5436; max-width:none; }
.yw-catalog-caption { color:#927a58; letter-spacing:.16em; font-size:13px; margin:28px 0 0; }
.yw-catalog-portrait { position:absolute; inset:0 0 0 auto; width:47%; background:#302115; }
.yw-catalog-portrait img { width:100%; height:100%; object-fit:cover; }
body.woocommerce .woocommerce-products-header .term-description { display:none; }
body.search.woocommerce .woocommerce-products-header { min-height:230px; padding:35px; }
body.woocommerce .yw-catalog-search { margin:0; width:100%; }
.yw-catalog-search label { display:block; margin-bottom:8px; font-size:14px; }
.yw-catalog-search > div { display:flex; gap:10px; max-width:650px; }
.yw-catalog-search input { width:100%; min-width:0; }
.yw-catalog-search > a { display:inline-block; margin-top:15px; font-size:14px; }
body.woocommerce .yw-catalog-tools { display:block; border:0; padding:0; margin-bottom:30px; }
body.woocommerce .yw-catalog-tools__filters { display:flex; gap:40px; flex-wrap:wrap; border-bottom:1px solid var(--yw-border); }
body.woocommerce .yw-catalog-tools__filters a { display:inline-flex; align-items:center; min-height:55px; font-size:19px; letter-spacing:.08em; border:0; border-radius:0; padding:12px 0; background:transparent; text-decoration:none; color:var(--yw-text-muted); }
body.woocommerce .yw-catalog-tools__filters a[aria-current] { border-bottom:1px solid #846038; color:#51391d; }
.yw-catalog-tools__natures { display:flex; flex-wrap:wrap; gap:12px 24px; padding:14px 0; }
.yw-catalog-tools__natures a { color:var(--yw-text-muted); font-size:13px; text-decoration:none; }
.yw-catalog-tools__natures a[aria-current] { color:var(--yw-text); text-decoration:underline; text-underline-offset:5px; }
body.woocommerce .yw-catalog-tools__controls { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:14px 0 0; width:100%; }
body.woocommerce .yw-catalog-tools__controls .woocommerce-result-count { float:none; margin:0; font-size:14px; }
body.woocommerce .yw-catalog-tools__controls .woocommerce-ordering { float:none; margin:0; }
body.woocommerce .woocommerce-ordering select { border:0; min-height:44px; background-color:transparent; font-size:15px; padding:8px 40px 8px 10px; }
body.woocommerce .yw-catalog-tools__divider,body.woocommerce .yw-catalog-tools__sort-label { display:none; }
body.woocommerce ul.products,body.woocommerce-page ul.products,.yw-cart-recommendations ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:42px 28px; margin:0; }
body.woocommerce ul.products::before,body.woocommerce ul.products::after,body.woocommerce-page ul.products::before,body.woocommerce-page ul.products::after { content:none; }
body.woocommerce ul.products li.product,body.woocommerce-page ul.products li.product { min-width:0; float:none; width:auto!important; margin:0!important; padding:0 0 22px; border:0; border-bottom:1px solid var(--yw-border); text-align:left; background:transparent; }
body.woocommerce ul.products li.product img,body.woocommerce-page ul.products li.product img { border:0; aspect-ratio:.83; object-fit:cover; margin:0 0 20px; width:100%; transition:filter .35s; }
body.woocommerce ul.products li.product:hover img,body.woocommerce-page ul.products li.product:hover img { transform:none; filter:brightness(1.07); }
body.woocommerce ul.products li.product .woocommerce-loop-product__title,body.woocommerce-page ul.products li.product .woocommerce-loop-product__title { font:400 23px/1.6 var(--jade-serif); letter-spacing:.035em; padding:0; margin:0 0 10px; min-height:0; }
body.woocommerce .yw-product-card__meta,body.woocommerce-page .yw-product-card__meta { justify-content:flex-start; font-size:13px; margin:0 0 12px; padding:0; color:#8a785c; }
.yw-product-card__meta span + span { display:none; }
body.woocommerce ul.products li.product .price,body.woocommerce-page ul.products li.product .price { font:400 17px/1.6 var(--jade-serif); color:#63472c; margin:0; }
body.woocommerce nav.woocommerce-pagination { clear:both; float:none; margin:40px 0; }
body.woocommerce .yw-new-tabs { display:flex; justify-content:center; gap:60px; margin-bottom:20px; border-bottom:1px solid var(--yw-border); }
body.woocommerce .yw-new-tabs a { padding:14px 10px; font:400 24px/1.5 var(--jade-serif); text-decoration:none; }
.yw-new-tabs a[aria-current] { box-shadow:inset 0 -1px #80603c; }
.yw-private-banner { position:relative; min-height:310px; display:flex; align-items:center; margin-top:65px; padding:45px 0; background:linear-gradient(90deg,#160f06a8,transparent 80%),url('../images/jade-home-v1/consultation-v2.webp') center/cover; color:#d8bd90; }
.yw-private-banner h2 { font-size:35px; color:#e1c799; margin:0 0 15px; letter-spacing:.1em; }
.yw-private-banner p { margin:0 0 25px; font-size:18px; }
.yw-private-banner a.yw-outline { color:#e1c799; border-color:#b09467; }
/* A quieter product study with an uninterrupted photograph and a compact purchase column. */
body.single-product .site-main > .product { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:50px 65px; }
body.single-product div.product .woocommerce-product-gallery { float:none; width:auto; margin:0; isolation:isolate; }
body.single-product div.product .woocommerce-product-gallery__trigger { z-index:3; }
body.single-product div.product .summary { float:none; width:auto; min-width:0; margin:0; padding-top:15px; }
body.single-product div.product .product_title { font:400 clamp(29px,2.5vw,39px)/1.6 var(--jade-serif); letter-spacing:.08em; margin:0 0 22px; }
body.single-product div.product .summary > .yw-seal { margin-bottom:15px; }
body.single-product div.product .summary .price { font:400 29px/1.5 var(--jade-serif); color:#96723f; margin:10px 0 26px; }
body.single-product div.product .woocommerce-product-details__short-description { font-size:17px; line-height:2; color:#7d684d; }
body.single-product div.product form.cart { display:flex; flex-wrap:wrap; align-items:center; gap:14px; border-top:1px solid var(--yw-border); padding-top:24px; margin:25px 0 15px; }
body.single-product div.product form.cart .quantity:has(input[type=hidden]) { display:none; }
body.single-product div.product form.cart .single_add_to_cart_button { width:100%; min-height:52px; background:#2b2014; color:#ead5b1; border-color:#2b2014; font:400 19px var(--jade-serif); }
body.single-product .yw-product-consult { width:100%; margin:0 0 25px; min-height:48px; }
.yw-favorite-button { display:block; background:transparent; color:#8a6b43; border:0; padding:10px 0; font:400 15px var(--jade-serif); min-height:44px; margin:0 0 12px; }
.yw-favorite-button:hover { color:#4e351b; background:transparent; }
.yw-favorite-button[aria-pressed=true] { color:#96733f; }
.yw-product-accordions { margin:0 0 24px; }
.yw-product-accordions details { border-bottom:1px solid var(--yw-border); }
.yw-product-accordions summary { cursor:pointer; padding:17px 0; font-size:17px; }
.yw-product-accordions p { font-size:15px; line-height:1.9; }
.yw-product-accordions .yw-dossier { border:0; margin:0 0 16px; }
body.single-product .yw-dossier__item { border:0; padding:7px 0; }
body.single-product .yw-dossier__label,body.single-product .yw-dossier__value { font-size:15px; line-height:1.8; }
body.single-product .yw-private-cta { border-block:1px solid var(--yw-border); padding:25px 0; margin-top:20px; }
body.single-product .yw-private-cta p { font-size:16px; line-height:1.9; }
body.single-product div.product .woocommerce-tabs { grid-column:1/-1; display:block; border-top:1px solid var(--yw-border); padding-top:15px; }
body.single-product div.product .woocommerce-tabs ul.tabs { display:flex; width:100%; float:none; border-bottom:1px solid var(--yw-border); gap:35px; margin-bottom:30px; }
body.single-product div.product .woocommerce-tabs ul.tabs li { border:0; padding:0; }
body.single-product div.product .woocommerce-tabs ul.tabs li::after { display:none; }
body.single-product div.product .woocommerce-tabs ul.tabs li a { font:400 22px/1.5 var(--jade-serif); padding:15px 0; }
body.single-product div.product .woocommerce-tabs ul.tabs li.active { box-shadow:inset 0 -1px #917047; }
body.single-product div.product .woocommerce-tabs .panel { width:100%; float:none; font-size:17px; line-height:2; }
body.single-product div.product .woocommerce-tabs .panel#tab-description { max-width:none; }
.yw-detail-story { display:grid; grid-template-columns:1fr 1fr; gap:65px; }
.yw-detail-story img { width:100%; max-height:470px; object-fit:cover; }
body.single-product div.product .related.products { grid-column:1/-1; padding-top:20px; }
body.single-product .related > h2,.yw-cart-recommendations > h2 { text-align:center; font:400 34px/1.5 var(--jade-serif); letter-spacing:.12em; margin-bottom:35px; }
.yw-purchase-bar { display:none; }
/* Checkout retains live WooCommerce calculations, addresses and error messages. */
body.woocommerce-page .yw-content-page { width:100%; padding:0; margin:0; background:transparent; }
body.woocommerce-page .yw-content-page__shell { display:block; }
body.woocommerce-page .yw-content-page__heading { padding-bottom:28px; margin-bottom:24px; }
body.woocommerce-page .yw-content-page__kicker { color:#96784e; font-size:13px; letter-spacing:.15em; }
body.woocommerce-page .yw-content-page__title { font:400 42px/1.5 var(--jade-serif); letter-spacing:.15em; }
.yw-checkout-steps { display:flex; flex-wrap:wrap; gap:45px; list-style:none; margin:0 0 35px; padding:0; color:#8c7a60; }
.yw-checkout-steps li { display:flex; align-items:center; gap:12px; font-size:15px; }
.yw-checkout-steps li > span { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--yw-border); }
.yw-checkout-steps li[aria-current] { color:#65472c; }
.yw-checkout-steps li[aria-current] > span { background:#44311e; color:#f2dfb9; }
body.woocommerce-page .wc-block-components-button:not(.is-link),body.woocommerce-page .checkout-button { background:#2b2014; color:#ebd6b1; border-color:#2b2014; font:400 18px/1.5 var(--jade-serif); }
body.woocommerce-page .wc-block-components-sidebar { background:#ece3d3; border:0; border-top:1px solid #b59970; }
body.woocommerce-page .wc-block-cart-items,body.woocommerce-page .wc-block-checkout__main { background:transparent; border:0; }
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image { width:22%; padding:24px 20px 24px 0; }
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image img { width:100%; max-width:none; aspect-ratio:.8; object-fit:cover; border:0; }
body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name { font:400 23px/1.6 var(--jade-serif); text-decoration:none; }
body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-price { font-size:17px; margin-block:12px; }
body.woocommerce-cart .wc-block-cart-item__wrap { padding-block:12px; }
.yw-cart-recommendations { margin-top:65px; }
body.woocommerce-checkout .wc-block-components-text-input input,body.woocommerce-checkout .wc-block-components-combobox-control input,body.woocommerce-checkout .wc-block-components-textarea,body.woocommerce-checkout .wc-block-components-select__container { background:#faf7f080!important; border:1px solid var(--yw-border)!important; border-radius:0!important; font-family:var(--yw-font-ui); }
body.woocommerce-checkout .wc-block-components-text-input input { padding:1.5em .8em .5em; }
body.woocommerce-checkout .wc-block-components-combobox-control input { padding:1.5em .8em .5em; }
body.woocommerce-checkout .wc-block-components-checkout-step__title { font:400 26px/1.5 var(--jade-serif); }
body.woocommerce-checkout .wc-block-checkout.is-mobile { display:flex; flex-direction:column; }
body.woocommerce-checkout .wc-block-checkout.is-mobile .wc-block-checkout__sidebar { order:-1; position:static; padding-block:12px; width:100%; }
body.woocommerce-checkout .wc-block-checkout.is-mobile .checkout-order-summary-block-fill-wrapper > .wc-block-components-checkout-step__heading,
body.woocommerce-checkout .wc-block-checkout.is-mobile .checkout-order-summary-block-fill > :is(.wp-block-woocommerce-checkout-order-summary-cart-items-block,.wp-block-woocommerce-checkout-order-summary-coupon-form-block) { display:none; }
/* Membership and saved objects. */
.yw-account-welcome { padding:55px 45px; margin-bottom:35px; color:#d7bc90; background:linear-gradient(90deg,#171006aa,transparent 95%),url('../images/jade-site-v1/private-room.webp') center 64%/cover; }
.yw-account-welcome h1 { color:#edd2a4; font:400 40px/1.6 var(--jade-serif); letter-spacing:.1em; margin:0 0 10px; }
.yw-account-welcome p { margin:0; font-size:19px; }
.yw-search-hub,.yw-wishlist-page { width:calc(100% - 2 * var(--yw-gutter)); max-width:1320px; margin:0 auto; padding:58px 0 90px; }
.yw-search-hub__hero { display:grid; grid-template-columns:minmax(260px,.72fr) minmax(420px,1.28fr); align-items:end; gap:60px; padding:48px; color:#e7d3ad; background:linear-gradient(105deg,#21170d,#382818); }
.yw-search-hub__hero h1,.yw-wishlist-page__hero h1 { margin:0 0 12px; font:400 clamp(38px,4vw,56px)/1.45 var(--jade-serif); letter-spacing:.13em; }
.yw-search-hub__hero p { margin:0; color:#cbb894; line-height:1.9; }
.yw-search-hub__hero .yw-kicker { color:#c2a576; }
.yw-search-hub__form label { display:block; margin-bottom:10px; color:#d6bf98; font-size:14px; }
.yw-search-hub__form > div { display:grid; grid-template-columns:minmax(0,1fr) auto; border-bottom:1px solid #b99b69; }
.yw-search-hub__form > div:focus-within { border-bottom-color:#ebd19e; box-shadow:0 1px 0 #ebd19e; }
.yw-search-hub__form input[type=search] { min-width:0; min-height:58px; padding:13px 8px; border:0!important; color:#f1e2c7; background:transparent!important; box-shadow:none!important; outline:0!important; font-size:19px; }
body.woocommerce .yw-search-hub__form input[type=search]:focus-visible { border:0!important; box-shadow:none!important; outline:0!important; }
.yw-search-hub__form input::placeholder { color:#ad9a7d; }
.yw-search-hub__form button { display:flex; align-items:center; gap:8px; min-width:100px; padding:10px 4px 10px 20px; border:0; color:#ead2a9; background:transparent; font-weight:400; }
.yw-search-hub__form .yw-ui-icon { width:20px; height:20px; }
.yw-search-hub__suggestions { display:flex; align-items:center; flex-wrap:wrap; gap:10px 30px; padding:22px 0; border-bottom:1px solid var(--yw-border); }
.yw-search-hub__suggestions span { color:var(--yw-text-muted); font-size:13px; }
.yw-search-hub__suggestions a { min-height:40px; padding:7px 0; text-decoration:none; }
.yw-search-hub__results { padding-top:45px; }
.yw-search-hub__results > header { display:grid; grid-template-columns:1fr auto; align-items:end; margin-bottom:28px; }
.yw-search-hub__results > header p { grid-column:1/-1; margin:0 0 4px; color:#97784d; font:13px/1.5 var(--jade-latin); letter-spacing:.12em; text-transform:uppercase; }
.yw-search-hub__results > header h2 { margin:0; font:400 32px/1.5 var(--jade-serif); letter-spacing:.08em; }
.yw-search-hub__results > header span { color:var(--yw-text-muted); font-size:14px; }
.yw-search-hub__empty { padding:55px 0; border-block:1px solid var(--yw-border); text-align:center; }
.yw-search-hub__empty h3 { font:400 29px/1.5 var(--jade-serif); }
.yw-search-hub__empty p { color:var(--yw-text-muted); }
.yw-wishlist-page__hero { display:flex; align-items:end; justify-content:space-between; gap:35px; padding:45px 48px; margin-bottom:38px; border:1px solid var(--yw-border); background:linear-gradient(115deg,#f8f2e8,#e7dac5); }
.yw-wishlist-page__hero h1 { color:#5d4328; }
.yw-wishlist-page__hero p { margin:0; color:var(--yw-text-muted); font-size:17px; }
.yw-wishlist-page .yw-favorites { margin-top:0; }
.yw-account-shortcuts { display:flex; gap:35px; border-bottom:1px solid var(--yw-border); margin-bottom:30px; }
.yw-account-shortcuts a { min-height:48px; padding:10px 0; text-decoration:none; }
.yw-account-shortcuts span { font-size:12px; margin-left:6px; color:var(--yw-text-muted); }
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background:#352719; color:#ead4ae; }
body.woocommerce-account.logged-in .woocommerce { grid-template-columns:210px minmax(0,1fr); gap:45px; }
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a { padding:14px 18px!important; font:400 18px/1.5 var(--jade-serif); }
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a::before { display:none; }
body.woocommerce-account .woocommerce-form-login { max-width:700px; border:1px solid var(--yw-border); padding:35px; background:#faf6ee70; }
body.woocommerce-account .woocommerce-form-login__submit { min-width:160px; min-height:48px; font:400 18px/1.5 var(--jade-serif); }
body.woocommerce-account .show-password-input { min-width:44px; min-height:44px; background:transparent; color:#775b37; border:0; box-shadow:none; }
.yw-account-card { padding:30px; border:1px solid var(--yw-border); margin-bottom:25px; }
.yw-account-card h2 { font:400 30px/1.5 var(--jade-serif); }
.yw-member-section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:30px 0 20px; }
.yw-member-section-heading h2 { margin:0; font:400 28px/1.5 var(--jade-serif); }
.yw-member-section-heading a,.yw-member-section-heading small { font-size:13px; }
.yw-member-empty { padding:30px; border:1px solid var(--yw-border); }
.yw-member-orders { overflow-x:auto; }
.yw-favorites { margin-top:45px; }
.yw-favorites-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.yw-favorites-grid article { border-bottom:1px solid var(--yw-border); padding-bottom:15px; }
.yw-favorites-grid a { display:block; text-decoration:none; }
.yw-favorites-grid img { width:100%; aspect-ratio:.9; object-fit:cover; }
.yw-favorites-grid h3 { font:400 23px/1.6 var(--jade-serif); margin:18px 0 5px; }
.yw-favorites-grid span { font-size:13px; }
.yw-favorites-grid button { background:transparent; color:#8b6d43; padding:10px 0; font-size:14px; min-height:44px; font-weight:400; }
.yw-work-nature { display:inline-flex; align-items:center; width:max-content; margin:0 0 12px; padding:4px 10px; border:1px solid #a98b5e; color:#6d4f2c; font-size:12px; line-height:1.5; letter-spacing:.12em; }
.yw-loyalty-summary { padding:34px; border:1px solid var(--yw-border); background:linear-gradient(135deg,#faf6ed,#eee2ce); margin-bottom:32px; }
.yw-loyalty-summary h2 { margin:4px 0 24px; font:400 34px/1.4 var(--jade-serif); }
.yw-loyalty-summary > p:not(.yw-kicker) { margin:22px 0 6px; }
.yw-loyalty-summary > small { display:block; color:var(--yw-text-muted); line-height:1.8; }
.yw-loyalty-balances { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--yw-border); }
.yw-loyalty-balances > div { display:flex; flex-direction:column; gap:3px; padding:20px 24px; border-right:1px solid var(--yw-border); }
.yw-loyalty-balances > div:last-child { border-right:0; }
.yw-loyalty-balances strong { font:400 29px/1.35 var(--jade-serif); }
.yw-loyalty-balances span { color:var(--yw-text-muted); font-size:13px; }
.yw-reward-catalog { margin:30px 0 45px; }
.yw-reward-grid,.yw-recommendation-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.yw-reward-grid article,.yw-recommendation-grid article { padding-bottom:18px; border-bottom:1px solid var(--yw-border); }
.yw-reward-grid article > a { display:block; color:inherit; text-decoration:none; }
.yw-reward-grid img,.yw-recommendation-grid img { display:block; width:100%; aspect-ratio:.88; object-fit:cover; }
.yw-reward-grid h3,.yw-recommendation-grid h3 { margin:15px 0 6px; font:400 21px/1.5 var(--jade-serif); }
.yw-reward-grid p { margin:0 0 12px; color:var(--yw-text-muted); }
.yw-reward-price { color:var(--yw-accent-strong); }
.yw-reward-grid form { margin:0; }
.yw-reward-grid button { width:100%; }
.yw-reward-grid > .yw-member-empty { grid-column:1/-1; }
.yw-member-recommendations { margin-top:42px; }
.yw-recommendation-grid a { display:block; text-decoration:none; }
.yw-recommendation-grid span { color:var(--yw-text-muted); font-size:14px; }
@media(max-width:1000px) {
 body.woocommerce .woocommerce-products-header { min-height:300px; padding-left:30px; }
 body.woocommerce .yw-catalog-tools__filters { gap:28px; }
 body.woocommerce ul.products,body.woocommerce-page ul.products { gap:30px 20px; }
 body.woocommerce ul.products li.product .woocommerce-loop-product__title,body.woocommerce-page ul.products li.product .woocommerce-loop-product__title { font-size:21px; }
 body.single-product .site-main > .product { gap:40px; }
 .yw-detail-story { gap:35px; }
}
@media(max-width:720px) {
 body.woocommerce .site-content > .col-full,body.woocommerce-page .site-content > .col-full { padding-top:22px; padding-bottom:45px; }
 body.woocommerce .woocommerce-breadcrumb { font-size:12px; margin-bottom:22px; }
 body.woocommerce .woocommerce-products-header { min-height:220px; padding:25px 45% 25px 20px; margin-bottom:20px; }
 body.woocommerce .woocommerce-products-header__title { font-size:31px; letter-spacing:.1em; margin-bottom:14px; }
 body.woocommerce .yw-catalog-intro__lead { font-size:16px; line-height:1.9; }
 .yw-catalog-caption { display:none; }
 .yw-catalog-portrait { width:40%; }
 body.woocommerce .yw-catalog-tools__filters { flex-wrap:nowrap; gap:25px; overflow-x:auto; }
 body.woocommerce .yw-catalog-tools__filters a { font-size:17px; white-space:nowrap; flex:none; min-height:48px; }
 body.woocommerce .yw-catalog-tools__controls { gap:5px; }
 body.woocommerce .yw-catalog-tools__controls .woocommerce-result-count { font-size:12px; }
 body.woocommerce .woocommerce-ordering select { font-size:14px; padding-right:20px; }
 body.woocommerce ul.products,body.woocommerce-page ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 16px; }
 body.woocommerce ul.products li.product,body.woocommerce-page ul.products li.product { padding-bottom:17px; }
 body.woocommerce ul.products li.product img,body.woocommerce-page ul.products li.product img { margin-bottom:14px; }
 body.woocommerce ul.products li.product .woocommerce-loop-product__title,body.woocommerce-page ul.products li.product .woocommerce-loop-product__title { font-size:20px; line-height:1.6; letter-spacing:0; margin-bottom:8px; }
 body.woocommerce .yw-product-card__meta,body.woocommerce-page .yw-product-card__meta { font-size:12px; margin-bottom:8px; }
 body.woocommerce ul.products li.product .price,body.woocommerce-page ul.products li.product .price { font-size:16px; }
 body.woocommerce .yw-new-tabs { gap:38px; }
 body.woocommerce .yw-new-tabs a { font-size:21px; }
 .yw-private-banner { min-height:300px; margin-top:40px; background-position:60% center; }
 .yw-private-banner h2 { font-size:29px; }
 .yw-private-banner p { font-size:16px; max-width:65%; }
 body.single-product .site-main > .product { grid-template-columns:1fr; gap:30px; }
 body.single-product div.product .summary { padding:0; }
 body.single-product div.product .product_title { font-size:30px; }
 body.single-product div.product .summary .price { font-size:27px; }
 body.single-product div.product .woocommerce-product-details__short-description { font-size:17px; }
 body.single-product div.product form.cart { position:static; padding:20px 0 0; background:transparent; }
 body.single-product div.product .woocommerce-tabs ul.tabs { gap:25px; overflow-x:auto; }
 body.single-product div.product .woocommerce-tabs ul.tabs li a { font-size:19px; white-space:nowrap; }
 .yw-detail-story { grid-template-columns:1fr; gap:25px; }
 .yw-purchase-bar { display:flex; position:fixed; z-index:68; inset:auto 0 calc(64px + env(safe-area-inset-bottom)); align-items:center; justify-content:space-between; gap:14px; padding:12px 16px; background:#f4eddf; border-top:1px solid #b59a73; box-shadow:0 -4px 25px #22170a10; }
 .yw-purchase-bar__price { font-size:19px; white-space:nowrap; }
 .yw-purchase-bar .yw-primary { font-size:16px; min-height:44px; padding:10px 24px; }
 body:has(.yw-purchase-bar:not([hidden])) .jade-footer { padding-bottom:150px; }
 .yw-checkout-steps { flex-wrap:nowrap; gap:20px; margin-bottom:28px; }
 .yw-checkout-steps li { gap:7px; font-size:13px; }
 .yw-checkout-steps li > span { width:24px; height:24px; }
 body.woocommerce-page .yw-content-page__title { font-size:34px; }
 body.woocommerce-page .wc-block-components-sidebar-layout { grid-template-columns:1fr; gap:30px; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header { display:none; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row { display:grid; grid-template-columns:85px minmax(0,1fr); gap:0 16px; padding:20px 0; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image { grid-column:1; grid-row:1/3; padding:0; width:100%; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__product { grid-column:2; padding:0; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total { grid-column:2; padding:10px 0 0; text-align:left; display:flex; gap:12px; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total::before { content:'小计'; font-size:13px; }
 body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name { font-size:20px; }
 body.woocommerce-cart .wc-block-cart-item__wrap { padding:0; }
 .yw-cart-recommendations { margin-top:40px; }
 body.single-product .related > h2,.yw-cart-recommendations > h2 { font-size:28px; margin-bottom:25px; }
 .yw-account-welcome { padding:32px 24px; margin-bottom:25px; }
 .yw-account-welcome h1 { font-size:30px; }
 .yw-account-welcome p { font-size:16px; }
 .yw-account-shortcuts { gap:25px; font-size:16px; }
 body.woocommerce-account .woocommerce-form-login { padding:24px 18px; }
 .yw-member-section-heading { align-items:baseline; flex-wrap:wrap; gap:10px; }
 .yw-member-section-heading h2 { font-size:25px; }
 .yw-favorites-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; }
 .yw-favorites-grid h3 { font-size:20px; }
	.yw-loyalty-summary { padding:24px 18px; }
	.yw-loyalty-summary h2 { font-size:29px; }
	.yw-loyalty-balances { grid-template-columns:1fr; }
	.yw-loyalty-balances > div { padding:14px 4px; border-right:0; border-bottom:1px solid var(--yw-border); }
	.yw-loyalty-balances > div:last-child { border-bottom:0; }
	.yw-reward-grid,.yw-recommendation-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; }
	.yw-reward-grid h3,.yw-recommendation-grid h3 { font-size:19px; }
 .yw-member-empty,.yw-account-card { padding:22px; }
 body.woocommerce-account.logged-in .woocommerce { grid-template-columns:1fr; }
 body.woocommerce-account .woocommerce-MyAccount-navigation ul { display:flex; overflow-x:auto; gap:8px; }
 body.woocommerce-account .woocommerce-MyAccount-navigation ul li { flex:none; }
 body.woocommerce-account .woocommerce-MyAccount-navigation ul li a { font-size:16px; padding:12px!important; }
 .yw-search-hub,.yw-wishlist-page { width:calc(100% - 32px); padding:28px 0 55px; }
 .yw-search-hub__hero { grid-template-columns:1fr; gap:28px; padding:30px 22px; }
 .yw-search-hub__hero h1,.yw-wishlist-page__hero h1 { font-size:34px; }
 .yw-search-hub__form input[type=search] { font-size:16px; }
 .yw-search-hub__form button { min-width:48px; padding-left:12px; }
 .yw-search-hub__form button span:last-child { position:absolute; clip-path:inset(50%); width:1px; height:1px; overflow:hidden; }
 .yw-search-hub__suggestions { gap:4px 22px; padding-block:16px; }
 .yw-search-hub__results { padding-top:30px; }
 .yw-search-hub__results > header h2 { font-size:26px; }
 .yw-wishlist-page__hero { align-items:flex-start; flex-direction:column; padding:28px 22px; margin-bottom:28px; }
}
@media(max-width:360px) {
 .yw-checkout-steps { gap:12px; }
 .yw-checkout-steps li { font-size:12px; gap:5px; }
 body.woocommerce .woocommerce-products-header__title { font-size:28px; }
 body.woocommerce ul.products li.product .woocommerce-loop-product__title,body.woocommerce-page ul.products li.product .woocommerce-loop-product__title { font-size:19px; }
}
/* Match WooCommerce's empty-cart recommendations to the main catalog. */
body.woocommerce-page .wc-block-grid__products { display:grid; gap:35px 28px; }
body.woocommerce-page .wc-block-grid__product { width:auto; max-width:none; flex:none; border:0; text-align:left; padding:0 0 18px; border-bottom:1px solid var(--yw-border); }
body.woocommerce-page .wc-block-grid__product-image { display:block; width:100%; aspect-ratio:.83; margin-bottom:20px; }
body.woocommerce-page .wc-block-grid__product-image img { width:100%; height:100%; aspect-ratio:auto; object-fit:cover; margin:0; border:0; }
body.woocommerce-page .wc-block-grid__product-title { font:400 23px/1.6 var(--jade-serif); }
body.woocommerce-page .wc-block-grid__product-price { font:400 17px/1.6 var(--jade-serif); margin-top:12px; }
body.woocommerce-page .wc-block-grid__product-add-to-cart .wp-block-button__link { font:400 15px/1.5 var(--jade-serif); background:transparent; color:var(--yw-text); border-block:1px solid var(--yw-border); }
body.woocommerce-page .wp-block-woocommerce-empty-cart-block { padding:55px 0 40px; border:0; }
body.woocommerce nav.woocommerce-pagination .page-numbers.current { background:#45311e; color:#f2dfbf; border-color:#45311e; }
.yw-purchase-bar__label { display:block; font-size:12px; line-height:1.6; color:var(--yw-text-muted); }
.yw-purchase-bar__price { display:block; line-height:1.5; }
@media(max-width:720px) {
 body.woocommerce-page .wc-block-grid__products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 16px; }
 body.woocommerce-page .wc-block-grid__product-title { font-size:20px; }
 body.woocommerce-page .wc-block-grid__product-price { font-size:16px; }
}
@media(max-width:720px) {
 /* Reset WooCommerce mobile grid-area shorthands, including their column ends. */
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > .wc-block-cart-item__image { grid-area:1 / 1 / 3 / 2!important; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > .wc-block-cart-item__product { grid-area:1 / 2 / 2 / 3!important; }
 body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > .wc-block-cart-item__total { grid-area:2 / 2 / 3 / 3!important; justify-content:flex-start; align-items:baseline; }
}
body.woocommerce-checkout .wc-blocks-components-select__container { background:#faf7f080; border:1px solid var(--yw-border); border-radius:0; }
body.woocommerce-checkout select.wc-blocks-components-select__select { padding:24px 44px 6px 14px; min-height:58px; background-color:transparent; border:0; font:400 16px/1.5 var(--jade-serif); }
body.woocommerce-checkout .wc-blocks-components-select__label { left:14px; top:7px; font-size:12px; line-height:1.4; }
body.woocommerce-checkout .wc-blocks-components-select__container > svg { display:none; }
