/* ==========================================================================
   RepWatch China — "The Ledger"
   Luxury auction-catalogue system: ivory paper, bench ink, brass rules.
   ========================================================================== */

/* ---------- tokens ---------- */
:root{
  --paper:#F4F1EA; --paper-2:#EDE9E0; --paper-3:#E4DFD4;
  --ink:#0D0E10; --ink-2:#3A3B3E; --ink-3:#6E7075;
  --brass:#A98A4F; --steel:#8A8F94; --oxblood:#5B1E22;
  --line:rgba(13,14,16,.14); --line-soft:rgba(13,14,16,.07); --line-dark:rgba(244,241,234,.16);
  --f-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --f-body:"Jost","Helvetica Neue",Arial,sans-serif;
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s5:48px; --s6:64px; --s7:96px; --s8:128px; --s9:160px;
  --maxw:1400px; --gut:clamp(16px,4vw,56px);
  --dur:.7s; --ease:cubic-bezier(.22,.61,.36,1);
}

/* ---------- base ---------- */
html{scroll-behavior:smooth}
body,body.ast-separate-container,body.ast-page-builder-template,body.ast-plain-container{
  background-color:var(--paper)!important;color:var(--ink);
  font-family:var(--f-body);font-size:16px;line-height:1.65;font-weight:400;
  -webkit-font-smoothing:antialiased;overflow-x:clip}
.rwc-wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut);width:100%}
.rwc-section{padding:var(--s8) 0}
@media(max-width:900px){.rwc-section{padding:var(--s6) 0}}
h1,h2,h3,h4,.rwc-logo,.rwc-num{font-family:var(--f-display);font-weight:500;letter-spacing:-.01em;color:var(--ink)}
h1{font-size:clamp(40px,6.4vw,104px);line-height:.98}
h2{font-size:clamp(28px,3.6vw,56px);line-height:1.04}
h3{font-size:clamp(20px,2vw,28px);line-height:1.2}
p{color:var(--ink-2)}
a{color:inherit;text-decoration:none}
::selection{background:var(--brass);color:#fff}

.rwc-eyebrow{font-family:var(--f-body);font-size:10px;letter-spacing:.32em;text-transform:uppercase;
  color:var(--ink-3);margin:0 0 var(--s3);display:flex;align-items:center;gap:12px}
.rwc-eyebrow::before{content:"";width:28px;height:1px;background:var(--brass);display:inline-block}
.rwc-lede{font-size:clamp(16px,1.4vw,19px);line-height:1.7;color:var(--ink-2);max-width:58ch;margin:0}
.rwc-rule{height:1px;background:var(--line);border:0;margin:0}
.rwc-num{font-variant-numeric:tabular-nums}

/* ---------- header ---------- */
.rwc-announce{background:var(--ink);color:rgba(244,241,234,.72);font-family:var(--f-body);font-size:9.5px;
  letter-spacing:.26em;text-transform:uppercase;text-align:center;padding:9px 16px;line-height:1.4}
.site-header,.ast-primary-header-bar{background:var(--paper)!important;border-bottom:1px solid var(--line)!important}
.site-header{position:relative;z-index:20}
.main-header-menu > .menu-item > .menu-link,.ast-builder-menu-1 .menu-item > .menu-link{
  font-family:var(--f-body)!important;font-size:10.5px!important;letter-spacing:.24em!important;
  text-transform:uppercase;color:var(--ink)!important;font-weight:400!important;padding:0 16px!important}
.main-header-menu > .menu-item > .menu-link:hover{color:var(--brass)!important}
.site-title,.site-title a,.ast-site-title-wrap a{font-family:var(--f-display)!important;font-size:23px!important;
  letter-spacing:.12em!important;font-weight:500!important;color:var(--ink)!important;text-transform:uppercase}
.site-description{font-family:var(--f-body)!important;font-size:9px!important;letter-spacing:.3em!important;
  text-transform:uppercase;color:var(--ink-3)!important;margin-top:2px}
.ast-header-break-point .main-header-bar,.ast-mobile-header-content{background:var(--paper)!important}
.sub-menu,.main-header-menu .sub-menu{background:var(--paper)!important;border:1px solid var(--line)!important;
  box-shadow:0 24px 48px rgba(13,14,16,.08)!important;border-radius:0!important;padding:10px 0!important}
.sub-menu li a{font-size:10.5px!important;letter-spacing:.18em!important;text-transform:uppercase;color:var(--ink-2)!important;padding:9px 22px!important}
.sub-menu li a:hover{color:var(--brass)!important}

/* ---------- hero ---------- */
.rwc-hero2{position:relative;background:var(--ink);color:var(--paper);overflow:hidden;isolation:isolate}
.rwc-hero2__track{display:grid;min-height:min(86vh,820px)}
.rwc-hero2__slide{grid-area:1/1;position:relative;opacity:0;transition:opacity 1.2s var(--ease);pointer-events:none}
.rwc-hero2__slide.is-active{opacity:1;pointer-events:auto}
.rwc-hero2__slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.rwc-hero2__slide::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(13,14,16,.62) 0%,rgba(13,14,16,.28) 38%,rgba(13,14,16,.82) 100%)}
.rwc-hero2__inner{position:relative;z-index:2;min-height:min(86vh,820px);display:flex;flex-direction:column;
  justify-content:flex-end;padding:var(--s7) var(--gut) var(--s5);max-width:var(--maxw);margin:0 auto;width:100%}
.rwc-hero2 h1,.rwc-hero2 .rwc-hero2__inner h1{color:#fff!important;max-width:17ch;margin:0 0 var(--s4);
  font-family:var(--f-display)!important;font-size:clamp(40px,6.4vw,104px)!important;line-height:.96!important;
  font-weight:500!important;letter-spacing:-.015em!important;text-wrap:balance}
.rwc-hero2 .rwc-lede{color:rgba(244,241,234,.78);max-width:44ch}
.rwc-hero2__eyebrow{font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--brass);margin:0 0 var(--s4)}
.rwc-hero2__cta{display:flex;gap:var(--s3);align-items:center;margin-top:var(--s5);flex-wrap:wrap}
.rwc-btn{display:inline-flex;align-items:center;gap:12px;font-family:var(--f-body);font-size:10.5px;
  letter-spacing:.24em;text-transform:uppercase;padding:16px 30px;border:1px solid rgba(244,241,234,.4);
  color:#fff;background:transparent;transition:all var(--dur) var(--ease);border-radius:0}
.rwc-btn:hover{background:#fff;color:var(--ink);border-color:#fff}
.rwc-btn--dark{border-color:var(--ink);color:var(--ink)}
.rwc-btn--dark:hover{background:var(--ink);color:var(--paper)}
.rwc-btn--brass{background:var(--brass);border-color:var(--brass);color:#fff}
.rwc-btn--brass:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.rwc-hero2__meta{position:absolute;right:var(--gut);bottom:var(--s5);z-index:3;display:flex;align-items:center;gap:18px}
.rwc-hero2__count{font-family:var(--f-display);font-size:13px;letter-spacing:.18em;color:rgba(244,241,234,.72)}
.rwc-hero2__bar{width:120px;height:1px;background:rgba(244,241,234,.22);position:relative;overflow:hidden}
.rwc-hero2__bar span{position:absolute;inset:0;background:var(--brass);transform-origin:left;animation:rwcbar 7s linear infinite}
@keyframes rwcbar{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}

/* ---------- numeric strip ---------- */
.rwc-stats{display:grid;grid-template-columns:1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(min-width:768px){.rwc-stats{grid-template-columns:repeat(4,1fr)}}
.rwc-stats > div{padding:var(--s5) var(--s3);border-bottom:1px solid var(--line-soft)}
@media(min-width:768px){.rwc-stats > div{border-bottom:0;border-right:1px solid var(--line-soft)}.rwc-stats > div:last-child{border-right:0}}
.rwc-stats b{display:block;font-family:var(--f-display);font-size:clamp(34px,3.6vw,54px);font-weight:500;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.rwc-stats small{display:block;margin-top:10px;font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-3)}

/* ---------- section head ---------- */
.rwc-head{display:grid;grid-template-columns:1fr;gap:var(--s3);align-items:end;margin-bottom:var(--s6)}
@media(min-width:900px){.rwc-head{grid-template-columns:1.1fr .9fr}}
.rwc-head__right{justify-self:start}
@media(min-width:900px){.rwc-head__right{justify-self:end;text-align:right}}
.rwc-head h2{margin:0;font-size:clamp(28px,3.6vw,56px)!important;line-height:1.04!important;color:var(--ink)!important}
.rwc-section h2{font-family:var(--f-display)!important}
.rwc-link{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--brass);padding-bottom:4px}
.rwc-link:hover{color:var(--brass)}

/* ---------- product grid ---------- */
ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:var(--s6) var(--s3)!important;margin:0!important;padding:0!important;list-style:none!important;counter-reset:lot}
@media(min-width:900px){ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:var(--s7) var(--s4)!important}}
ul.products::before,ul.products::after{display:none!important}
ul.products li.product{width:auto!important;margin:0!important;float:none!important;text-align:left!important;
  position:relative;counter-increment:lot;display:flex;flex-direction:column}
ul.products li.product::before{content:"N° " counter(lot,decimal-leading-zero);display:block;
  font-family:var(--f-body);font-size:9px;letter-spacing:.28em;color:var(--ink-3);margin-bottom:10px}
ul.products li.product a.woocommerce-LoopProduct-link{display:block;overflow:hidden;background:var(--paper-2)}
ul.products li.product a img{width:100%!important;aspect-ratio:4/5!important;object-fit:cover!important;
  border-radius:0!important;margin:0!important;transition:transform 1.1s var(--ease);display:block}
ul.products li.product:hover a img{transform:scale(1.045)}
ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-body)!important;
  font-size:13.5px!important;line-height:1.45!important;font-weight:400!important;color:var(--ink)!important;
  letter-spacing:.01em;padding:14px 0 6px!important;margin:0!important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:52px}
ul.products li.product .price{font-family:var(--f-body)!important;font-size:12px!important;letter-spacing:.06em;
  color:var(--ink-2)!important;font-variant-numeric:tabular-nums;margin:0!important;padding-top:2px;
  border-top:1px solid var(--line-soft)}
ul.products li.product .price del{opacity:.5;margin-right:8px}
ul.products li.product .button{display:none!important}
ul.products li.product .onsale{background:var(--oxblood)!important;color:#fff!important;border-radius:0!important;
  font-size:9px!important;letter-spacing:.2em;text-transform:uppercase;min-height:auto!important;line-height:1!important;
  padding:7px 10px!important;top:10px!important;left:10px!important;right:auto!important}
.rwc-grid--flush{gap:0}
.woocommerce-result-count,.woocommerce-ordering select{font-size:10.5px!important;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)!important;border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important;padding:6px 0!important;border-radius:0!important}
.woocommerce-ordering{margin:0 0 var(--s5)!important}

/* ---------- maison tiles ---------- */
.rwc-mansions{display:grid;grid-template-columns:1fr;border-top:1px solid var(--line)}
@media(min-width:700px){.rwc-mansions{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.rwc-mansions{grid-template-columns:repeat(3,1fr)}}
.rwc-mansion{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding:var(--s4) 0;border-bottom:1px solid var(--line);transition:padding-left .5s var(--ease),color .4s}
.rwc-mansion:hover{padding-left:12px;color:var(--brass)}
.rwc-mansion span{font-family:var(--f-display);font-size:clamp(22px,2.2vw,32px);letter-spacing:.01em}
.rwc-mansion em{font-family:var(--f-body);font-style:normal;font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3)}

/* ---------- split / bench ---------- */
.rwc-split{display:grid;grid-template-columns:1fr;gap:var(--s5);align-items:center}
@media(min-width:900px){.rwc-split{grid-template-columns:1.05fr .95fr;gap:var(--s8)}}
.rwc-split img{width:100%;height:auto;display:block;aspect-ratio:5/4;object-fit:cover}
.rwc-quote{font-family:var(--f-display);font-size:clamp(22px,2.4vw,32px);line-height:1.34;color:var(--ink);
  margin:var(--s5) 0;padding-left:var(--s3);border-left:1px solid var(--brass)}
.rwc-list{list-style:none;padding:0;margin:var(--s4) 0 0}
.rwc-list li{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--line-soft);font-size:14px;color:var(--ink-2)}
.rwc-list li::before{content:"";width:6px;height:6px;background:var(--brass);flex:0 0 6px;margin-top:9px}

/* ---------- journal ---------- */
.rwc-journal{display:grid;grid-template-columns:1fr;gap:var(--s5)}
@media(min-width:800px){.rwc-journal{grid-template-columns:repeat(3,1fr);gap:var(--s4)}}
.rwc-card{border-top:1px solid var(--ink);padding-top:var(--s3);transition:opacity .5s}
.rwc-card:hover{opacity:.78}
.rwc-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:var(--s3)}
.rwc-card time{font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3)}
.rwc-card h3{font-family:var(--f-display);font-size:clamp(19px,1.8vw,24px);line-height:1.24;margin:10px 0}
.rwc-card p{font-size:13.5px;line-height:1.6;margin:0}

/* ---------- CTA band ---------- */
.rwc-cta{background:var(--ink);color:var(--paper);padding:var(--s8) 0;position:relative;overflow:hidden}
.rwc-cta h2{color:#fff!important;max-width:20ch;font-size:clamp(28px,3.6vw,56px)!important;line-height:1.04!important}
.rwc-cta p{color:rgba(244,241,234,.66)}
.rwc-cta .rwc-eyebrow{color:var(--brass)}
.rwc-cta__row{display:flex;gap:var(--s5);align-items:flex-end;justify-content:space-between;flex-wrap:wrap}

/* ---------- footer ---------- */
.rwc-footer{background:var(--ink);color:rgba(244,241,234,.62);padding:var(--s7) 0 var(--s6)}
.rwc-footer__grid{display:grid;gap:var(--s5);grid-template-columns:1fr}
@media(min-width:768px){.rwc-footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}
.rwc-footer h3{font-family:var(--f-body);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:#fff;margin:0 0 var(--s3);font-weight:400}
.rwc-footer p{font-size:13.5px;line-height:1.7;color:rgba(244,241,234,.6)}
.rwc-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.rwc-footer a{color:rgba(244,241,234,.78);font-size:13.5px}
.rwc-footer a:hover{color:var(--brass)}
.rwc-footer .rwc-mark{font-family:var(--f-display);font-size:clamp(30px,3vw,42px);letter-spacing:.06em;color:#fff;margin-bottom:var(--s4);line-height:1}
.rwc-footer__base{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid var(--line-dark);
  display:flex;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;font-size:11px;letter-spacing:.1em;color:rgba(244,241,234,.44)}
.site-footer .ast-row,.site-footer .site-primary-footer-wrap{background:transparent!important}
.site-below-footer-wrap,.ast-small-footer{border-top:1px solid var(--line-dark)!important;background:var(--ink)!important}
.ast-small-footer,.ast-small-footer a,.ast-footer-copyright{color:rgba(244,241,234,.44)!important;font-size:10.5px!important;letter-spacing:.08em}

/* ---------- floating whatsapp ---------- */
.rwc-wa{position:fixed;right:22px;bottom:22px;z-index:9999;display:flex;align-items:center;justify-content:center;
  width:54px;height:54px;border-radius:50%;background:var(--ink);color:var(--paper);
  box-shadow:0 16px 40px rgba(13,14,16,.28);transition:transform .5s var(--ease),background .4s}
.rwc-wa:hover{background:var(--brass);transform:translateY(-3px)}
@media(max-width:600px){.rwc-wa{width:48px;height:48px;right:14px;bottom:14px}}

/* ---------- page / article ---------- */
.rwc-page-head{padding:var(--s7) 0 var(--s5);border-bottom:1px solid var(--line)}
.rwc-page-head h1{font-size:clamp(34px,5vw,72px);line-height:1.02;margin:0 0 var(--s4)}
.entry-content{font-size:16.5px;line-height:1.75;color:var(--ink-2)}
.entry-content h2{font-size:clamp(24px,2.6vw,34px);margin:var(--s7) 0 var(--s3);color:var(--ink)}
.entry-content h3{font-size:clamp(19px,2vw,24px);margin:var(--s5) 0 var(--s2)}
.entry-content a{color:var(--ink);border-bottom:1px solid var(--brass)}
.entry-content p{margin:0 0 var(--s3)}
.entry-content ul,.entry-content ol{padding-left:20px;margin:0 0 var(--s3)}
.entry-content li{margin-bottom:9px}
.entry-content table{width:100%;border-collapse:collapse;font-size:14px;margin:var(--s4) 0}
.entry-content th,.entry-content td{border-bottom:1px solid var(--line);padding:11px 4px;text-align:left;vertical-align:top}
.entry-content th{font-family:var(--f-body);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-3);font-weight:400;width:34%}
.single-post .entry-title{font-size:clamp(30px,4.4vw,60px)!important;line-height:1.03;margin-bottom:var(--s4)}
.woocommerce-breadcrumb{font-size:9.5px!important;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3)!important;margin-bottom:var(--s4)!important}
.woocommerce-breadcrumb a{color:var(--ink-3)!important}

/* ---------- single product ---------- */
.single-product div.product{display:block}
.single-product div.product .product_title,.single-product h1.entry-title{
  font-family:var(--f-display)!important;font-size:clamp(24px,2.8vw,38px)!important;line-height:1.16!important;
  font-weight:500!important;letter-spacing:-.01em;margin:0 0 var(--s3)!important}
.single-product div.product p.price,.single-product div.product span.price{
  font-family:var(--f-body)!important;font-size:17px!important;letter-spacing:.08em;color:var(--ink)!important;
  font-variant-numeric:tabular-nums;margin:0 0 var(--s4)!important;padding-bottom:var(--s3)!important;
  border-bottom:1px solid var(--line)}
.single-product div.product .woocommerce-product-details__short-description{font-size:14.5px;color:var(--ink-2);margin-bottom:var(--s4)}
.single-product div.product form.cart{margin:0 0 var(--s5);display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.single-product div.product form.cart .quantity input.qty{width:70px;height:48px;border:1px solid var(--line);border-radius:0;text-align:center;font-size:14px;background:#fff}
.single-product div.product form.cart button.button,.single_add_to_cart_button{
  background:var(--ink)!important;color:var(--paper)!important;border:1px solid var(--ink)!important;border-radius:0!important;
  padding:16px 40px!important;font-size:10px!important;letter-spacing:.26em;text-transform:uppercase;font-weight:400!important;transition:all var(--dur) var(--ease)}
.single-product div.product form.cart button.button:hover{background:var(--brass)!important;border-color:var(--brass)!important;color:#fff!important}
.single-product div.product .woocommerce-product-gallery{opacity:1!important}
.single-product div.product .woocommerce-product-gallery img{border-radius:0}
.single-product div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 var(--s4)!important;border-bottom:1px solid var(--line);display:flex;gap:var(--s4);flex-wrap:wrap}
.single-product div.product .woocommerce-tabs ul.tabs::before{display:none!important}
.single-product div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}
.single-product div.product .woocommerce-tabs ul.tabs li a{padding:0 0 12px!important;font-size:10px!important;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-3)!important;font-weight:400!important}
.single-product div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)!important;box-shadow:inset 0 -1px 0 var(--brass)}
.single-product table.woocommerce-product-attributes th,.single-product table.woocommerce-product-attributes td{border:0;border-bottom:1px solid var(--line)!important;padding:11px 4px!important;font-size:13.5px;background:none!important;vertical-align:top}
.single-product table.woocommerce-product-attributes th{color:var(--ink-3);font-weight:400;width:38%;font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.single-product .related.products > h2,.single-product .upsells.products > h2{font-size:clamp(22px,2.4vw,32px);margin:var(--s8) 0 var(--s5)}
.rwc-spec{width:100%;border-collapse:collapse;font-size:14px}
.rwc-spec th{width:36%;text-align:left;font-family:var(--f-body);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);font-weight:400;padding:10px 0;border-bottom:1px solid var(--line);vertical-align:top}
.rwc-spec td{padding:10px 0;border-bottom:1px solid var(--line);color:var(--ink-2)}

/* ---------- woocommerce forms / cart ---------- */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.wc-block-components-text-input input,.wc-block-components-select__select{
  border:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;padding:12px 14px!important;
  font-family:var(--f-body)!important;font-size:14px!important;color:var(--ink)!important;min-height:46px}
.woocommerce form .form-row label,.wc-block-components-text-input label{font-size:10px!important;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)!important}
.woocommerce table.shop_table{border:0;border-top:1px solid var(--line);border-radius:0;border-collapse:collapse}
.woocommerce table.shop_table th{font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3);font-weight:400;padding:14px 0}
.woocommerce table.shop_table td{padding:14px 0;font-size:14px;border-top:1px solid var(--line-soft)}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #payment #place_order,.wc-block-components-button:not(.is-link){
  background:var(--ink)!important;color:var(--paper)!important;border:0!important;border-radius:0!important;
  padding:16px 34px!important;font-family:var(--f-body)!important;font-size:10px!important;letter-spacing:.24em;
  text-transform:uppercase;font-weight:400!important;transition:background var(--dur) var(--ease)}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce #payment #place_order:hover,.wc-block-components-button:not(.is-link):hover{background:var(--brass)!important;color:#fff!important}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{
  border-top:1px solid var(--brass)!important;background:var(--paper-2)!important;color:var(--ink)!important;
  border-radius:0!important;font-size:13.5px;padding:14px 18px}
.wc-block-components-title,.wc-block-components-checkout-step__title{font-family:var(--f-display)!important;font-size:20px!important;font-weight:500!important;color:var(--ink)!important}
.wc-block-components-order-summary-item__description,.wc-block-components-product-name{font-family:var(--f-body)!important;font-size:13.5px!important}
.wc-block-components-sidebar-layout .wc-block-components-sidebar{background:var(--paper-2)!important;border:0!important}
.wc-block-cart-items__row,.wc-block-components-order-summary-item{border-color:var(--line)!important}

/* ---------- blog archive ---------- */
.blog .site-main,.archive .site-main{display:grid;gap:var(--s6) var(--s4);grid-template-columns:1fr}
@media(min-width:900px){.blog .site-main,.archive .site-main{grid-template-columns:repeat(3,1fr)}}
.blog article.ast-article-post,.archive article.ast-article-post{border-top:1px solid var(--ink);padding-top:var(--s3);margin:0!important}
.blog .entry-title,.archive .entry-title{font-family:var(--f-display)!important;font-size:clamp(19px,1.9vw,25px)!important;line-height:1.22!important;font-weight:500!important;margin:0 0 10px!important}
.blog .entry-title a{color:var(--ink)}
.blog .entry-title a:hover{color:var(--brass)}
.blog .entry-meta,.archive .entry-meta,.blog .entry-meta *{font-size:9.5px!important;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3)!important}
.blog .entry-content,.archive .entry-content{font-size:13.5px;color:var(--ink-2)}
.blog article .post-thumb img,.archive article .post-thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0;display:block}
.blog article .post-thumb,.archive article .post-thumb{margin-bottom:var(--s3);overflow:hidden}

/* ---------- misc ---------- */
.ast-container,.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{padding:0!important;background:transparent!important;border:0!important}
.ast-separate-container .ast-article-inner{background:transparent!important}
.woocommerce-products-header{padding:var(--s7) 0 var(--s4)}
.woocommerce-products-header .woocommerce-products-header__title{font-size:clamp(36px,5.4vw,80px)!important;line-height:1;margin:0 0 var(--s4)!important}
.woocommerce-products-header .term-description{font-size:15px;line-height:1.7;color:var(--ink-2);max-width:64ch;margin:0}
.woocommerce-pagination{display:flex;justify-content:center;margin-top:var(--s7)}
.woocommerce-pagination a,.woocommerce-pagination span{border:0!important;font-size:11px;letter-spacing:.16em;color:var(--ink-2)!important;padding:8px 12px!important}
.woocommerce-pagination .current{background:var(--ink)!important;color:var(--paper)!important}
@media print{.rwc-wa,.rwc-announce{display:none}}

/* specificity guard against Astra defaults */
h1.entry-title,.entry-content h1{font-family:var(--f-display)!important}
.rwc-hero2 .rwc-btn{font-family:var(--f-body)!important}
ul.products li.product .woocommerce-loop-product__title a{color:inherit!important;font-size:inherit!important}

/* ---------- shop search ---------- */
.rwc-search{display:flex;gap:0;align-items:center;border-bottom:1px solid var(--line);margin:0 0 var(--s5);max-width:640px}
.rwc-search__input{flex:1;border:0!important;background:transparent!important;padding:14px 0!important;font-family:var(--f-body);
  font-size:14px;color:var(--ink);letter-spacing:.02em;min-height:0}
.rwc-search__input::placeholder{color:var(--ink-3);font-size:12.5px;letter-spacing:.06em}
.rwc-search__input:focus{outline:none}
.rwc-search__btn{border:0;background:transparent;font-family:var(--f-body);font-size:10px;letter-spacing:.26em;
  text-transform:uppercase;color:var(--ink);cursor:pointer;padding:0 0 0 18px;border-left:1px solid var(--line)}
.rwc-search__btn:hover{color:var(--brass)}
.woocommerce-notices-wrapper{max-width:100%}

/* ---------- category chips ---------- */
.rwc-chips{display:flex;flex-wrap:wrap;align-items:center;gap:10px 0;margin:var(--s7) 0 0;
  border-top:1px solid var(--line);padding-top:var(--s4)}
.rwc-chips__label{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-3);margin-right:22px}
.rwc-chips a{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);
  padding:7px 14px;border:1px solid var(--line);border-radius:0;transition:all .4s var(--ease);margin-right:8px}
.rwc-chips a em{font-style:normal;color:var(--ink-3);margin-left:6px;font-size:9.5px}
.rwc-chips a:hover{border-color:var(--ink);color:var(--ink);background:var(--paper-2)}

/* ---------- sticky chrome ---------- */
.site-header{position:sticky!important;top:0!important;z-index:50!important;
  backdrop-filter:saturate(140%) blur(6px);background:rgba(244,241,234,.94)!important}
.rwc-announce{position:relative;z-index:51}
@media(max-width:921px){.site-header{position:sticky!important}}
