/* Rez Goodies — storefront presentation layer.
   Loaded as a real stylesheet, never inline in page content: the content filter
   strips inline style attributes and inline SVG even after wpautop is disabled. */

:root{
  --rz-ink:#2A342C;
  --rz-ink-soft:#4A574C;
  --rz-muted:#6B7A6E;
  --rz-cream:#F7F3EC;
  --rz-sand:#EFE8DC;
  --rz-paper:#FFFFFF;
  --rz-clay:#B8735A;
  --rz-clay-dark:#9C5F49;
  --rz-sage:#8A9A82;
  --rz-line:#E3DCD1;
  --rz-serif:'Fraunces',Cambria,Georgia,serif;
  --rz-sans:'Inter','Segoe UI',Helvetica,Arial,sans-serif;
  --rz-wide:1240px;
}

/* ── base ─────────────────────────────────────────────── */
body{background:var(--rz-paper);color:var(--rz-ink);font-family:var(--rz-sans);
     font-size:16.5px;line-height:1.72;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.rz-serif{font-family:var(--rz-serif);color:var(--rz-ink);
     font-weight:400;letter-spacing:-.01em;line-height:1.18}
a{color:var(--rz-ink)}
a:hover{color:var(--rz-clay)}
.rz-wrap{max-width:var(--rz-wide);margin:0 auto;padding:0 24px}
.rz-eyebrow{font-family:var(--rz-sans);font-size:12px;letter-spacing:.28em;
     text-transform:uppercase;color:var(--rz-muted);margin:0 0 14px}
.rz-lead{font-size:18px;color:var(--rz-ink-soft);max-width:62ch}

/* ── header / nav ─────────────────────────────────────── */
.ast-primary-header-bar,.site-header{background:var(--rz-cream)!important;
     border-bottom:1px solid var(--rz-line)!important}
.main-header-menu a{font-family:var(--rz-sans);font-size:14px;letter-spacing:.06em;
     text-transform:uppercase;color:var(--rz-ink)!important}
.main-header-menu a:hover{color:var(--rz-clay)!important}
.custom-logo-link img{max-height:56px;width:auto}

/* ── hero ─────────────────────────────────────────────── */
.rz-hero{background:var(--rz-cream);border-bottom:1px solid var(--rz-line);
     padding:88px 0 96px;margin-bottom:0}
.rz-hero-inner{max-width:var(--rz-wide);margin:0 auto;padding:0 24px;
     display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.rz-hero h1{font-size:clamp(38px,5vw,60px);margin:0 0 20px}
.rz-hero p{font-size:18.5px;color:var(--rz-ink-soft);margin:0 0 32px;max-width:52ch}
.rz-hero-art{aspect-ratio:4/3;border-radius:3px;overflow:hidden;background:var(--rz-sand)}
.rz-hero-art img{width:100%;height:100%;object-fit:cover;display:block}

/* ── buttons ──────────────────────────────────────────── */
.rz-btn,.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt{
  display:inline-block;background:var(--rz-ink);color:var(--rz-cream)!important;
  font-family:var(--rz-sans);font-size:13.5px;letter-spacing:.13em;text-transform:uppercase;
  padding:15px 30px;border-radius:2px;border:0;line-height:1;text-decoration:none;
  transition:background .18s ease}
.rz-btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
  background:var(--rz-clay);color:#fff!important}
.rz-btn-ghost{background:transparent;color:var(--rz-ink)!important;
  border:1px solid var(--rz-ink);margin-left:12px}
.rz-btn-ghost:hover{background:var(--rz-ink);color:var(--rz-cream)!important}

/* ── section furniture ────────────────────────────────── */
.rz-section{padding:84px 0}
.rz-section-alt{background:var(--rz-cream)}
.rz-head{text-align:center;max-width:640px;margin:0 auto 52px}
.rz-head h2{font-size:clamp(28px,3.4vw,40px);margin:0 0 14px}
.rz-head p{color:var(--rz-muted);margin:0}

/* ── category tiles ───────────────────────────────────── */
.rz-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.rz-cat{position:relative;display:block;border:1px solid var(--rz-line);
     border-radius:3px;overflow:hidden;background:var(--rz-paper);
     text-decoration:none;transition:border-color .18s ease,transform .18s ease}
.rz-cat:hover{border-color:var(--rz-sage);transform:translateY(-3px)}
.rz-cat-img{aspect-ratio:1/1;background:var(--rz-sand);overflow:hidden}
.rz-cat-img img{width:100%;height:100%;object-fit:cover;display:block}
.rz-cat-body{padding:20px 22px 24px}
.rz-cat-body .rz-cat-sub{font-size:13px;color:var(--rz-muted);letter-spacing:.04em}

/* ── trust strip ──────────────────────────────────────── */
.rz-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;
     border-top:1px solid var(--rz-line);border-bottom:1px solid var(--rz-line);
     padding:40px 0;margin:0}
.rz-trust div{text-align:center;padding:0 8px}
.rz-trust strong{display:block;font-family:var(--rz-serif);font-size:17px;
     font-weight:400;margin-bottom:5px}
.rz-trust span{font-size:13.5px;color:var(--rz-muted)}

/* ── story ────────────────────────────────────────────── */
.rz-story{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.rz-story-art{aspect-ratio:1/1;border-radius:3px;overflow:hidden;background:var(--rz-sand)}
.rz-story-art img{width:100%;height:100%;object-fit:cover;display:block}
.rz-story h2{font-size:clamp(26px,3vw,36px);margin:0 0 18px}
.rz-story p{color:var(--rz-ink-soft);margin:0 0 16px}

/* ── woocommerce loop ─────────────────────────────────── */
.woocommerce ul.products{display:grid!important;
     grid-template-columns:repeat(4,1fr)!important;gap:30px!important;margin:0!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:100%!important;margin:0!important;float:none!important;
     display:flex!important;flex-direction:column!important;
     border:1px solid var(--rz-line);border-radius:3px;overflow:hidden;
     background:var(--rz-paper);transition:border-color .18s ease}
.woocommerce ul.products li.product:hover{border-color:var(--rz-sage)}
.woocommerce ul.products li.product a img{margin:0!important;aspect-ratio:1/1;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
     font-family:var(--rz-serif)!important;font-size:17px!important;font-weight:400!important;
     padding:16px 18px 4px!important;margin:0!important;line-height:1.32}
.woocommerce ul.products li.product .price{padding:0 18px 4px!important;margin:0!important;
     color:var(--rz-ink)!important;font-size:15.5px!important;font-family:var(--rz-sans)}
.woocommerce ul.products li.product .button{margin:12px 18px 18px!important;
     text-align:center;align-self:stretch}
/* the theme absolutely-positions the add-to-cart control; keep it in flow */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
     position:static!important;float:none!important;transform:none!important}
.ast-on-card-button,.ast-card-action-tooltip,.ast-select-options-trigger{display:none!important}
/* script deferral otherwise leaves the single-product gallery at zero opacity */
.woocommerce-product-gallery{opacity:1!important}
.woocommerce div.product .product_title{font-size:34px}
.woocommerce div.product p.price{color:var(--rz-ink);font-size:22px}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{
     color:var(--rz-muted);font-size:14px}

/* ── identity pages ───────────────────────────────────── */
.rz-page{max-width:800px;margin:0 auto;padding:64px 24px 84px}
.rz-page h1{font-size:clamp(32px,4vw,46px);margin:0 0 10px}
.rz-page h2{font-size:24px;margin:38px 0 12px}
.rz-page p,.rz-page li{color:var(--rz-ink-soft)}
.rz-page ul{padding-left:20px}
.rz-meta{border:1px solid var(--rz-line);border-radius:3px;background:var(--rz-cream);
     padding:26px 28px;margin:28px 0}
.rz-meta p{margin:0 0 6px}
.rz-meta p:last-child{margin:0}

/* ── footer ───────────────────────────────────────────── */
.site-footer,.ast-small-footer{background:var(--rz-ink)!important;color:#C3CCC4!important;
     border:0!important}
.site-footer a,.ast-small-footer a{color:#C3CCC4!important}
.site-footer a:hover,.ast-small-footer a:hover{color:#fff!important}

/* ── responsive ───────────────────────────────────────── */
@media(max-width:1024px){
  .woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}
  .rz-cats{grid-template-columns:repeat(2,1fr)}
  .rz-trust{grid-template-columns:repeat(2,1fr);gap:26px}
}
@media(max-width:860px){
  .rz-hero-inner,.rz-story{grid-template-columns:1fr;gap:36px}
  .rz-hero{padding:60px 0 64px}
  .rz-section{padding:60px 0}
}
@media(max-width:600px){
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:18px!important}
  .rz-cats{grid-template-columns:1fr}
  .rz-btn-ghost{margin-left:0;margin-top:12px}
}

.rz-center{text-align:center;margin-top:44px}
.rz-hero-copy p:last-child{margin-bottom:0}

/* category tiles: all-span markup, blocks forced in CSS */
.rz-cat-img,.rz-cat-body,.rz-cat-title,.rz-cat-sub{display:block}
.rz-cat-title{font-family:var(--rz-serif);font-size:21px;color:var(--rz-ink);
  margin:0 0 5px;line-height:1.25}
.rz-cat-sub{font-size:13px;color:var(--rz-muted);letter-spacing:.03em;line-height:1.5}
.rz-cat:hover .rz-cat-title{color:var(--rz-clay)}
/* the front page carries its own hero - the theme's page title is noise there */
body.home .entry-title,body.home .ast-archive-title,
body.home header.entry-header,body.home .ast-single-post-title{display:none!important}
body.home .site-content .ast-container{padding-top:0}
/* footer */
.ast-small-footer{padding:26px 0;font-size:13.5px}
.ast-small-footer .ast-small-footer-section{color:#B9C4B8}

/* text-decoration propagates from the anchor and cannot be undone on a child */
a.rz-cat,a.rz-cat:hover,.entry-content a.rz-cat{text-decoration:none!important}
