/*
Theme Name: Agelytix
Theme URI: https://agelytix.com
Author: Agelytix
Author URI: https://agelytix.com
Description: High end supplement and skincare theme for WooCommerce. Tan paper stock, claret ink, oxblood ground, with a label plate device running through the product cards and section headers. Hero, banner, collection and press images are all set from the Customizer.
Version: 1.12.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: agelytix
Tags: e-commerce, one-column, custom-colors, custom-logo, custom-menu, featured-images, translation-ready, threaded-comments
WC requires at least: 7.0
WC tested up to: 9.9
*/

/* ============================================================
   1. TOKENS
   ============================================================ */
:root{
  --tan:#E5D7BF; --tan-deep:#D8C6A6; --tan-rule:#C0A87F;
  --claret:#6B1F2A; --claret-lo:#8A2C38; --oxblood:#2B0E13;
  --ink:#3A2A21; --gilt:#A8823C; --gilt-deep:#8F6B2D; --muted:#6E5A47;
  --display:"Bodoni Moda","Didot",Georgia,serif;
  --body:"Archivo","Helvetica Neue",Arial,sans-serif;
  --util:"Archivo Narrow","Archivo",Arial,sans-serif;
  --pad:clamp(20px,5vw,64px); --max:1220px;
}

/* ============================================================
   2. BASE
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--tan);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;height:auto;display:block}
a{color:var(--claret);text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--claret);outline-offset:3px}
h1,h2,h3,h4,h5,h6{font-family:var(--display);font-weight:500;letter-spacing:-.015em;color:var(--claret);line-height:1.08}
.wrap,.ax-wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--pad)}
.util{font-family:var(--util);font-weight:600;text-transform:uppercase;letter-spacing:.22em;font-size:11px;line-height:1.4}
.emboss{text-shadow:0 1px 0 rgba(255,255,255,.45),0 -1px 0 rgba(0,0,0,.10)}
.rule{height:1px;background:var(--tan-rule);border:0;margin:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;top:10px;left:10px;z-index:10000;background:var(--claret);color:var(--tan);padding:10px 16px}

/* ============================================================
   3. BUTTONS  (theme + every WooCommerce button selector)
   ============================================================ */
.btn,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--util);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600;
  padding:15px 30px;border:1px solid var(--claret);border-radius:0;cursor:pointer;transition:.2s ease;
  background:var(--claret);color:var(--tan);line-height:1
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{background:var(--claret-lo);color:var(--tan)}
.btn--solid{background:var(--claret);color:var(--tan)}
.btn--solid:hover{background:var(--claret-lo);color:var(--tan)}
.btn--ghost{background:transparent;color:var(--claret)}
.btn--ghost:hover{background:var(--claret);color:var(--tan)}
.btn--light{border-color:var(--tan);color:var(--tan);background:transparent}
.btn--light:hover{background:var(--tan);color:var(--claret)}
.btn--block{width:100%}
.woocommerce ul.products li.product a.button{width:100%;background:transparent;color:var(--claret);margin-top:14px}
.woocommerce ul.products li.product a.button:hover{background:var(--claret);color:var(--tan)}

/* ============================================================
   4. HEADER
   ============================================================ */
.ax-announce{background:var(--claret);color:#EFE3CE;text-align:center;padding:9px 16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;column-gap:0;row-gap:2px}
.ax-announce span{margin:0 10px;white-space:nowrap}
@media (max-width:480px){.ax-announce{padding-inline:10px}.ax-announce span{margin:0 6px;letter-spacing:.14em}.ax-announce span:nth-child(n+4){display:none}}
.site-head{background:var(--tan);border-bottom:1px solid var(--tan-rule);position:relative;z-index:150;transition:box-shadow .25s ease}
body[data-pinned="true"] .site-head{
  position:fixed;top:0;left:0;right:0;
  box-shadow:0 10px 26px -20px rgba(20,5,8,.5);
  animation:axDrop .28s cubic-bezier(.2,.7,.3,1);
}
body[data-pinned="true"] .site-head .head-inner{padding-block:12px}
body[data-pinned="true"] .site-head .wordmark small{display:none}
body[data-pinned="true"] .site-head .wordmark b,
body[data-pinned="true"] .site-head .wordmark .name{font-size:clamp(18px,2.4vw,26px)}
@keyframes axDrop{from{transform:translateY(-100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){body[data-pinned="true"] .site-head{animation:none}}
.site-head .ax-wrap{max-width:1400px}
.head-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;padding-block:22px}
.head-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:clamp(9px,1vw,15px);flex-wrap:nowrap}
.head-nav a{position:relative;padding-bottom:3px;white-space:nowrap;color:var(--ink);font-family:var(--util);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:600}
.head-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--claret);transition:right .28s ease}
.head-nav a:hover::after{right:0}
.head-nav .sub-menu{display:none;position:absolute;background:var(--tan);border:1px solid var(--tan-rule);padding:12px 18px;flex-direction:column;gap:10px;min-width:190px;z-index:120}
.head-nav li{position:relative}
.head-nav li:hover>.sub-menu,.head-nav li:focus-within>.sub-menu{display:flex}
.head-tools{display:flex;gap:clamp(12px,1.2vw,20px);white-space:nowrap;justify-content:flex-end;align-items:center;min-width:0}
.head-tools a{color:var(--ink);font-family:var(--util);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:600}
.cart-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--claret);color:var(--claret)!important;border-radius:100px;padding:5px 12px}
.cart-pill i{font-style:normal;background:var(--claret);color:var(--tan);border-radius:100px;min-width:17px;height:17px;display:grid;place-items:center;font-size:10px;letter-spacing:0}
.wordmark{text-align:center;line-height:1;min-width:0}
.wordmark b,.wordmark .name{display:block;font-family:var(--display);font-weight:600;font-size:clamp(19px,3.8vw,36px);letter-spacing:.18em;text-indent:.18em;color:var(--claret);word-break:break-word}
.wordmark small{display:block;margin-top:6px;color:var(--ink);opacity:.65;letter-spacing:.14em;font-size:10px}
.wordmark img{margin:0 auto;max-height:52px;width:auto}
.burger{display:none;background:none;border:0;cursor:pointer;color:var(--claret);padding:6px}
.mobile-nav{display:none;background:var(--tan);border-bottom:1px solid var(--tan-rule)}
.mobile-nav[data-open="true"]{display:block}
.mobile-nav ul{list-style:none;margin:0;padding:10px 0 18px}
.mobile-nav a{display:block;padding:11px 0;color:var(--ink);font-family:var(--util);text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600;border-bottom:1px solid var(--tan-rule)}

/* ============================================================
   5. HERO
   ============================================================ */
.hero{position:relative;isolation:isolate;background:linear-gradient(150deg,#3D1219,#2B0E13 62%,#4A141C)}
.hero-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--hero-focal,center center);z-index:-2}
.hero-veil{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:var(--hero-veil,.8);background:
  linear-gradient(96deg,rgba(43,14,19,.95) 0%,rgba(43,14,19,.66) 42%,rgba(43,14,19,.20) 78%,rgba(43,14,19,.38) 100%),
  linear-gradient(0deg,rgba(107,31,42,.28),rgba(107,31,42,.28))}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);gap:clamp(24px,4vw,56px);align-items:center;min-height:var(--hero-min,calc(var(--hero-vh,100) * 1vh - var(--ax-head,0px)));padding-block:clamp(40px,6vw,72px)}
@supports (height:1svh){
  .hero-inner{min-height:var(--hero-min,calc(var(--hero-vh,100) * 1svh - var(--ax-head,0px)))}
}
.hero-card{position:relative;background:var(--tan);padding:clamp(26px,3.2vw,42px);box-shadow:0 34px 70px -34px rgba(20,5,8,.75)}
.hero-card::before{content:"";position:absolute;inset:9px;border:1px solid var(--claret);opacity:.5;pointer-events:none}
.hero-bottle{justify-self:center;width:min(240px,26vw)}
.hero-inner--bare{display:block;grid-template-columns:none;padding:0}
.hero h1{font-size:clamp(34px,5vw,60px);line-height:1;letter-spacing:-.02em;margin:14px 0 0}
.hero h1 em{font-style:italic;font-weight:400}
.hero p.lede{font-size:clamp(15.5px,1.5vw,17.5px);max-width:44ch;margin:18px 0 0;color:#4A362B}
.hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.hero-cta .btn{padding:14px 22px}
.eyebrow-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;color:var(--claret)}
.eyebrow-row span{white-space:nowrap}
.eyebrow-row .dot{width:6px;height:6px;background:var(--gilt);transform:rotate(45deg)}

/* ============================================================
   6. LABEL PLATE ARTWORK (fallback when a product has no image)
   ============================================================ */
.bottle-shell{position:relative;width:min(300px,78vw)}
.cap{width:74%;height:42px;margin:0 auto;border-radius:5px 5px 3px 3px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 2px,transparent 2px 5px),linear-gradient(100deg,#25090C,#4A1219 40%,#1A0709);box-shadow:0 3px 0 rgba(0,0,0,.25)}
.bottle{position:relative;aspect-ratio:26/37;border-radius:16px 16px 11px 11px;margin-top:-2px;background:linear-gradient(102deg,#3D1219 0%,#6B1F2A 34%,#4A141C 62%,#25090C 100%);box-shadow:0 34px 60px -24px rgba(43,14,19,.65),inset 0 0 44px rgba(0,0,0,.42);overflow:hidden}
.bottle::after{content:"";position:absolute;top:0;bottom:0;left:14%;width:13%;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,0));filter:blur(3px)}
.bottle-label{position:absolute;left:9%;right:9%;top:15%;padding:20px 16px 18px;text-align:center;background:var(--tan-deep);color:var(--claret);box-shadow:0 2px 10px rgba(0,0,0,.35)}
.bottle-label .frame{border:1px solid var(--claret);padding:16px 10px 14px;box-shadow:inset 0 0 0 3px var(--tan-deep),inset 0 0 0 4px var(--claret)}
.bottle-label h3{font-family:var(--display);font-weight:600;font-size:clamp(16px,3.3vw,21px);letter-spacing:.16em;text-indent:.16em;margin:0}
.bottle-label .sub{margin-top:9px;color:#5C1A24}
.seal{width:52px;height:52px;border-radius:50%;margin:14px auto 0;display:grid;place-items:center;background:radial-gradient(circle at 34% 30%,#8A2C38,#54141E 70%);border:1.5px solid var(--gilt);color:var(--tan);font-family:var(--display);font-size:20px;font-weight:600;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.bottle-foot{margin-top:14px;color:#5C1A24}
.shadow-pool{width:70%;height:16px;margin:22px auto 0;border-radius:50%;background:radial-gradient(ellipse,rgba(43,14,19,.32),transparent 70%)}
.mini-label{background:var(--tan-deep);color:var(--claret);text-align:center;padding:9px;width:76%;position:relative;z-index:1;box-shadow:0 4px 14px rgba(0,0,0,.34)}
.mini-label .frame{border:1px solid var(--claret);padding:15px 10px 13px;box-shadow:inset 0 0 0 3px var(--tan-deep),inset 0 0 0 4px var(--claret)}
.mini-label b{display:block;font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.13em;text-indent:.13em}
.mini-label span{display:block;margin-top:7px;font-size:10px}
.mini-label .seal{width:30px;height:30px;font-size:13px;margin-top:10px;border-width:1px}

/* ============================================================
   7. SECTIONS
   ============================================================ */
/* ---------- the line under the hero ---------- */
.ax-caption{background:var(--tan);border-bottom:1px solid var(--tan-rule)}
.ax-caption-inner{
  display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,34px);
  padding-block:clamp(20px,2.6vw,30px);text-align:center;flex-wrap:wrap;
}
.ax-caption p{
  margin:0;max-width:52ch;color:var(--claret);
  font-family:var(--display);font-size:clamp(17px,1.7vw,22px);line-height:1.3;text-wrap:balance;
}
.ax-caption .btn{flex:0 0 auto;padding:13px 26px}

/* ---------- how it works ---------- */
.ax-how-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;background:var(--tan-rule);border:1px solid var(--tan-rule);
}
.ax-how-item{background:var(--tan);padding:clamp(24px,3vw,38px)}
.ax-how-n{font-family:var(--display);font-size:clamp(30px,3.2vw,42px);line-height:1;color:var(--gilt-deep)}
.ax-how-item h3{
  font-family:var(--util);font-weight:600;text-transform:uppercase;letter-spacing:.2em;
  font-size:12.5px;color:var(--claret);margin:18px 0 10px;
}
.ax-how-item p{margin:0;color:#4A362B;font-size:14.5px;line-height:1.68}

/* ---------- sign up ---------- */
.ax-signup .sec-head{margin-bottom:clamp(24px,3vw,34px)}
.ax-signup-form{max-width:520px;margin-inline:auto}
.ax-signup-form input[type=email],.ax-signup-form input[type=text]{
  width:100%;min-width:0;background:transparent;border:1px solid rgba(216,198,166,.4);
  color:var(--tan);padding:14px 16px;border-radius:0;font-size:15px;
}
.ax-signup-form input::placeholder{color:rgba(216,198,166,.5)}
.ax-signup-form button,.ax-signup-form input[type=submit]{
  background:var(--claret);border:1px solid var(--claret);color:var(--tan);
  padding:14px 28px;cursor:pointer;border-radius:0;white-space:nowrap;
  font-family:var(--util);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600;
}
.ax-signup-empty{color:var(--gilt);opacity:.9;text-align:center;border:1px dashed rgba(216,198,166,.35);padding:18px;margin:0}

.trustbar{background:var(--oxblood);color:var(--tan-deep)}
.trustbar .ax-wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(216,198,166,.18);padding:0}
.trustbar div{background:var(--oxblood);padding:18px 20px;text-align:center}
.trustbar div:nth-child(even){color:var(--gilt)}
.section{padding-block:clamp(48px,7vw,92px)}
.section--ox{background:var(--oxblood);color:var(--tan-deep)}
.sec-head{text-align:center;margin-bottom:clamp(30px,4vw,52px)}
.sec-head .util{color:var(--claret)}
.section--ox .sec-head .util{color:var(--gilt)}
.sec-head h2{font-size:clamp(30px,4.4vw,50px);margin:12px 0 0}
.sec-head h2 em{font-style:italic}
.section--ox .sec-head h2{color:var(--tan)}
.sec-head p{max-width:58ch;margin:14px auto 0;opacity:.82}

.band-section{padding-block:clamp(48px,7vw,92px)}
.band{
  position:relative;isolation:isolate;overflow:hidden;
  width:100%;max-width:660px;margin:0 auto;aspect-ratio:4/5;
  background:linear-gradient(150deg,#3D1219,#2B0E13);
  box-shadow:0 40px 80px -46px rgba(20,5,8,.6);
}
.band>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--band-focal,center center);z-index:-2}
.band-overlay{
  position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:var(--band-veil,.7);
  background:linear-gradient(0deg,rgba(43,14,19,.88) 0%,rgba(43,14,19,.62) 14%,rgba(43,14,19,.24) 32%,rgba(43,14,19,0) 52%);
}
.band-copy{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:clamp(22px,3.4vw,40px) clamp(18px,3vw,36px);
  display:flex;flex-direction:column;align-items:center;gap:clamp(12px,1.6vw,18px);text-align:center;
}
.band-eyebrow{color:var(--tan-deep);opacity:.9;text-shadow:0 1px 14px rgba(20,5,8,.6)}
.band-copy h2{
  font-family:var(--display);font-weight:500;color:var(--tan);margin:0;
  font-size:clamp(21px,3vw,36px);line-height:1.08;letter-spacing:.05em;text-transform:uppercase;
  text-shadow:0 2px 20px rgba(20,5,8,.6);text-wrap:balance;
}
.band-copy p{margin:0;color:var(--tan-deep);font-size:clamp(14px,1.2vw,15.5px);max-width:42ch;text-shadow:0 1px 12px rgba(20,5,8,.5)}
.btn--glass{
  background:rgba(229,215,191,.16);border-color:rgba(229,215,191,.55);color:var(--tan);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:14px 34px;
}
.btn--glass:hover{background:var(--tan);border-color:var(--tan);color:var(--claret)}

.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:stretch}
.split-media{position:relative;isolation:isolate;min-height:260px;background:linear-gradient(150deg,#3D1219,#2B0E13);overflow:hidden}
.split-media-link{position:absolute;inset:0;display:block;overflow:hidden;z-index:0}
.split-media-link img{transition:transform .7s cubic-bezier(.2,.7,.3,1)}
.split-media-link:hover img,.split-media-link:focus-visible img{transform:scale(1.035)}
.media-scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;opacity:var(--coll-veil,.65);
  background:linear-gradient(0deg,rgba(43,14,19,.90) 0%,rgba(43,14,19,.62) 16%,rgba(43,14,19,.22) 36%,rgba(43,14,19,0) 56%);
}
.media-copy{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:clamp(18px,2.2vw,30px);
  display:flex;flex-direction:column;align-items:flex-start;gap:clamp(9px,1vw,13px);
}
.media-copy .lbl{color:var(--tan-deep);text-shadow:0 1px 14px rgba(20,5,8,.7)}
.media-copy h3{
  font-family:var(--display);font-weight:500;color:var(--tan);margin:0;
  font-size:clamp(18px,2.1vw,27px);line-height:1.08;letter-spacing:.045em;text-transform:uppercase;
  text-shadow:0 2px 18px rgba(20,5,8,.6);text-wrap:balance;
}
.media-copy .btn{padding:12px 24px}
.split-body{display:flex;flex-direction:column;justify-content:center;min-width:0}
.split-eyebrow{color:var(--claret);margin-bottom:12px}
.split-media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--coll-focal,center center)}
.split-title{font-size:clamp(28px,3.6vw,44px);margin:0 0 8px;line-height:1.04}
.split-title em{font-style:italic}
.collections{--coll-num:26px;--coll-gap:clamp(12px,1.8vw,22px);margin-top:clamp(20px,2.6vw,32px);border-top:1px solid var(--tan-rule)}
.collection{border-bottom:1px solid var(--tan-rule)}
.collection-head{
  width:100%;background:none;border:0;cursor:pointer;text-align:left;
  padding:clamp(16px,1.9vw,24px) 0;
  display:grid;grid-template-columns:var(--coll-num) minmax(0,1fr) auto;
  align-items:center;column-gap:var(--coll-gap);
}
.collection .n{
  font-family:var(--util);font-weight:600;font-size:12px;letter-spacing:.14em;
  color:var(--muted);font-variant-numeric:tabular-nums;
}
.collection h3{
  font-family:var(--display);font-weight:500;margin:0;color:var(--claret);
  font-size:clamp(16px,1.85vw,23px);line-height:1.14;letter-spacing:.04em;text-transform:uppercase;
  text-wrap:balance;
}
.collection-arrow{
  width:clamp(36px,3vw,44px);aspect-ratio:1;flex:0 0 auto;
  border:1px solid var(--tan-rule);border-radius:50%;
  display:grid;place-items:center;color:var(--claret);
  transition:transform .3s cubic-bezier(.2,.7,.3,1),background .25s ease,border-color .25s ease,color .25s ease;
}
.collection-head:hover .collection-arrow{border-color:var(--claret)}
.collection[data-open="true"] .collection-arrow{
  transform:rotate(90deg);background:var(--claret);border-color:var(--claret);color:var(--tan);
}
.collection-panel{padding:0 0 clamp(18px,2.2vw,26px) calc(var(--coll-num) + var(--coll-gap));max-width:54ch}
.collection-panel[hidden]{display:none}
.collection .feat{font-family:var(--display);font-style:italic;font-size:clamp(15px,1.3vw,17px);color:var(--claret);margin:0 0 12px;line-height:1.35}
.collection-panel p{margin:0;font-size:14.5px;line-height:1.65;color:#4A362B}
.collection-link{display:inline-block;margin-top:14px;color:var(--claret);border-bottom:1px solid var(--tan-rule);padding-bottom:2px;font-family:var(--util);text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:600}
.collection-link:hover{border-bottom-color:var(--claret)}

.press{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,26px)}
.press-item{display:flex;flex-direction:column;gap:16px}
.press-item p{font-family:var(--display);font-size:16.5px;line-height:1.45;color:var(--tan);margin:0;flex:1}
.press-logo{height:34px;display:flex;align-items:center}
.press-logo img{height:100%;width:auto;max-width:190px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);opacity:.72}
.press-logo .fallback{font-family:var(--util);text-transform:uppercase;letter-spacing:.2em;font-size:12px;color:var(--gilt)}

.reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px)}
.review{background:var(--tan-deep);border:1px solid var(--tan-rule);padding:26px 24px;display:flex;flex-direction:column}
.review p{font-family:var(--display);font-size:18px;line-height:1.45;margin:14px 0 0;color:var(--claret);flex:1}
.review .who{margin-top:18px;color:#5A4436}
.review .prod{margin-top:6px;color:var(--claret);opacity:.8}
.stars{color:var(--claret);letter-spacing:.14em;font-size:12px}

.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,4vw,64px);align-items:start}
.faq-media{position:relative;aspect-ratio:1/1.15;background:linear-gradient(150deg,#3D1219,#2B0E13);overflow:hidden}
.faq-media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--faq-focal,center center)}
.faq-grid h2{font-size:clamp(28px,3.6vw,42px);margin:12px 0 8px}
.faq-item{border-bottom:1px solid var(--tan-rule)}
.faq-item button{width:100%;background:none;border:0;text-align:left;padding:20px 0;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;font-family:var(--display);font-size:19px;color:var(--claret)}
.faq-item button span{font-family:var(--util);font-size:20px;line-height:1}
.faq-item .a{padding:0 0 20px;margin:0;max-width:60ch;color:#4A362B;font-size:15px}
.faq-item .a[hidden]{display:none}

/* ============================================================
   8. WOOCOMMERCE  ·  LOOP
   ============================================================ */
.woocommerce .woocommerce-breadcrumb{padding-block:20px;color:#5A4436;border-bottom:1px solid var(--tan-rule);font-family:var(--util);text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:600;margin:0}
.woocommerce ul.products{list-style:none;margin:0;padding:0;display:grid;gap:clamp(14px,1.8vw,24px)}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;clear:none!important;position:relative;text-align:left;display:flex;min-width:0}
.woocommerce ul.products li.product>.ax-card{width:100%;min-width:0}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;width:100%}
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce .products ul::before,
.woocommerce .products ul::after,
.woocommerce ul.products li.product::before,
.woocommerce ul.products li.product::after{content:none;display:none}
.ax-card{flex:1;height:100%;display:flex;flex-direction:column;background:var(--tan-deep);border:1px solid var(--tan-rule);transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s ease}
.woocommerce ul.products li.product .card-foot{margin-top:auto}
.woocommerce ul.products li.product:hover .ax-card{transform:translateY(-5px);box-shadow:0 22px 34px -22px rgba(43,14,19,.55)}
.card-glass{aspect-ratio:1/.94;display:grid;place-items:center;padding:18px;background:linear-gradient(155deg,#3D1219,#6B1F2A 45%,#28090D);position:relative;overflow:hidden}
.card-glass::after{content:"";position:absolute;top:-30%;left:-10%;width:45%;height:160%;transform:rotate(14deg);pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.13),transparent)}
.card-glass img{position:relative;z-index:2;width:100%;height:100%;margin:0;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(0,0,0,.45))}
.card-body{padding:18px 18px 8px;display:flex;flex-direction:column;flex:1}
.card-foot{padding:0 18px 20px}
.woocommerce ul.products li.product .card-foot a.button{margin-top:6px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--display);font-weight:500;font-size:17.5px;line-height:1.22;padding:0;margin:9px 0 0;color:var(--claret);text-wrap:balance}
.ax-excerpt{margin-top:8px;font-size:13px;color:#5A4436;flex:1}
.woocommerce ul.products li.product .price{font-family:var(--util);font-weight:600;font-size:16px;letter-spacing:.05em;color:var(--claret);margin-top:14px;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.woocommerce ul.products li.product .price del{opacity:.45;font-size:13px}
.woocommerce ul.products li.product .price ins{text-decoration:none;background:none;color:var(--claret)}
.woocommerce span.onsale{position:absolute;top:12px;left:12px;right:auto;z-index:3;pointer-events:none;background:var(--gilt);color:#2B0E13;border-radius:0;padding:6px 10px;margin:0;min-height:0;min-width:0;line-height:1;font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600}
.woocommerce .star-rating{color:var(--claret);font-size:.9em;margin:0}
.woocommerce ul.products li.product .star-rating{margin:0 0 2px}
.ax-count{font-family:var(--util);letter-spacing:.1em;color:var(--muted);font-size:11px;margin-left:8px}

.shop-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-block:20px}
.woocommerce .woocommerce-result-count{margin:0;color:#5A4436;font-size:14px;float:none}
.woocommerce .woocommerce-ordering{margin:0;float:none}
.woocommerce .woocommerce-ordering select{background:transparent;border:1px solid var(--tan-rule);padding:9px 14px;font-family:var(--util);text-transform:uppercase;letter-spacing:.12em;font-size:11px;border-radius:0}
.woocommerce nav.woocommerce-pagination ul{border:0;margin-top:34px}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{border:1px solid var(--tan-rule);padding:10px 15px;font-family:var(--util);letter-spacing:.1em;color:var(--claret)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--claret);color:var(--tan);border-color:var(--claret)}

/* ============================================================
   9. WOOCOMMERCE  ·  SINGLE PRODUCT
   ============================================================ */
.single-product .ax-wrap{max-width:1400px}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4.5vw,66px);padding-block:clamp(30px,4vw,54px)}
.woocommerce div.product .woocommerce-product-gallery{width:100%;float:none;margin:0;position:sticky;top:24px;align-self:start}
.woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{background:linear-gradient(155deg,#3D1219,#6B1F2A 45%,#28090D);padding:6%}
.woocommerce div.product .woocommerce-product-gallery img{width:100%;height:auto;object-fit:contain}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1;object-fit:contain;padding:8%}
.woocommerce div.product div.summary{width:100%;float:none;margin:0}
.woocommerce div.product .product_title{font-size:clamp(28px,3.6vw,42px);line-height:1.04;letter-spacing:-.02em;margin:12px 0 0}
.woocommerce div.product p.price,
.woocommerce div.product span.price{font-family:var(--display);font-size:32px;color:var(--claret);margin-top:16px}
.woocommerce div.product p.price del{opacity:.45;font-size:22px}
.woocommerce div.product p.price ins{text-decoration:none;background:none}
.woocommerce div.product .woocommerce-product-details__short-description{margin-top:16px;max-width:48ch;color:#4A362B}
.woocommerce div.product form.cart{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}
.woocommerce div.product form.cart.variations_form{display:block}
.woocommerce .quantity{display:flex;align-items:center;border:1px solid var(--claret)}
.woocommerce .quantity .qty{width:74px;text-align:center;border:0;background:transparent;padding:14px 0;font-family:var(--util);font-size:15px}
.woocommerce div.product form.cart .button{flex:1;min-width:200px}
.woocommerce table.variations{width:100%;margin-bottom:16px}
.woocommerce table.variations td{padding:8px 0}
.woocommerce table.variations label{font-family:var(--util);text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:600;color:var(--claret)}
.woocommerce table.variations select{border:1px solid var(--tan-rule);background:transparent;padding:11px 14px;width:100%;border-radius:0}
.ax-assurance{display:grid;gap:9px;margin-top:24px;padding-top:20px;border-top:1px solid var(--tan-rule)}
.ax-assurance div{display:flex;gap:11px;align-items:center;color:#4A362B;font-size:14px}
.ax-assurance .mark{color:var(--claret);font-size:12px}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;padding-block:clamp(34px,4vw,58px) 0;border-top:1px solid var(--tan-rule)}

/* A single tab is a label floating over the only thing it could label, so
   the row is hidden and the content stands on its own. */
.woocommerce div.product .woocommerce-tabs:has(ul.tabs li:only-child) ul.tabs,
.woocommerce div.product .woocommerce-tabs.ax-one-tab ul.tabs{display:none}
.woocommerce div.product .woocommerce-tabs:has(ul.tabs li:only-child) .panel,
.woocommerce div.product .woocommerce-tabs.ax-one-tab .panel{padding-top:0}

.woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:0 clamp(22px,3vw,44px);
  padding:0;margin:0 auto;list-style:none;overflow:visible;
  border-bottom:1px solid var(--tan-rule);
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after{content:none;display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:none!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;margin:0!important;padding:0!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{content:none!important;display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block;padding:0 0 13px;text-shadow:none;
  font-family:var(--util);text-transform:uppercase;letter-spacing:.2em;
  font-size:11.5px;font-weight:600;color:var(--muted);
  border-bottom:1px solid transparent;margin-bottom:-1px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--claret)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--claret);border-bottom-color:var(--claret)}
.woocommerce div.product .woocommerce-tabs .panel{padding-top:clamp(30px,3.4vw,44px);max-width:70ch}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:26px;margin-top:0}
.woocommerce table.shop_attributes{border:1px solid var(--claret);background:var(--tan-deep);max-width:460px}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:10px 16px;border-bottom:1px solid var(--tan-rule);font-size:14px;font-style:normal}
.woocommerce .related,.woocommerce .upsells{grid-column:1/-1;padding-top:clamp(34px,4vw,58px)}
.woocommerce .related h2,.woocommerce .upsells h2{text-align:center;font-size:clamp(26px,3.4vw,40px);margin-bottom:clamp(24px,3vw,40px)}

/* ---------- reviews ---------- */
.ax-rating-summary{
  display:grid;grid-template-columns:auto minmax(0,1fr);
  gap:clamp(20px,4vw,54px);align-items:center;
  padding:clamp(20px,2.6vw,30px);margin:0 0 clamp(26px,3vw,38px);
  background:var(--tan-deep);border:1px solid var(--tan-rule);
}
.ax-rating-score{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}
.ax-rating-number{font-family:var(--display);font-size:clamp(38px,4.6vw,56px);line-height:1;color:var(--claret)}
.ax-rating-count{color:var(--muted)}
.ax-rating-bars{display:grid;gap:7px;min-width:0}
.ax-rating-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.ax-rating-label,.ax-rating-n{color:var(--muted);font-size:10.5px}
.ax-rating-n{min-width:2.5ch;text-align:right}
.ax-rating-track{height:4px;background:var(--tan);border:1px solid var(--tan-rule);overflow:hidden}
.ax-rating-track span{display:block;height:100%;background:var(--claret)}

.woocommerce #reviews h2,
.woocommerce #reviews h3{font-family:var(--display);font-weight:500;color:var(--claret);font-size:clamp(20px,2.2vw,26px);margin:0 0 .8em}
.woocommerce #reviews #comments ol.commentlist{list-style:none;margin:0;padding:0}
.woocommerce #reviews #comments ol.commentlist li{margin:0;padding:clamp(20px,2.4vw,26px) 0;border-bottom:1px solid var(--tan-rule);background:none}
.woocommerce #reviews #comments ol.commentlist li:first-child{border-top:1px solid var(--tan-rule)}
.woocommerce #reviews #comments ol.commentlist li img.avatar{
  width:42px;height:42px;border:1px solid var(--tan-rule);border-radius:50%;
  background:var(--tan-deep);padding:0;position:absolute;top:clamp(20px,2.4vw,26px);left:0;
}
.woocommerce #reviews #comments ol.commentlist li .comment_container{display:block;position:relative;padding-left:60px;background:none;border:0}
.woocommerce #reviews #comments ol.commentlist li .comment-text{
  margin:0;padding:0;border:0;border-radius:0;background:none;
}
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta{
  font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;font-size:11px;
  color:var(--muted);margin:0 0 8px;
}
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta strong{color:var(--claret);font-weight:600}
.woocommerce #reviews #comments ol.commentlist li .comment-text .star-rating{float:none;margin:0 0 9px;color:var(--claret)}
.woocommerce #reviews #comments ol.commentlist li .comment-text .description{max-width:68ch}
.woocommerce #reviews #comments ol.commentlist li .comment-text .description p{margin:0 0 .8em;color:#4A362B;line-height:1.7;font-size:15px}
.woocommerce #reviews #comments ol.commentlist li .comment-text .description p:last-child{margin-bottom:0}
.woocommerce #reviews #comments .woocommerce-noreviews{
  border:1px dashed var(--tan-rule);padding:22px;text-align:center;color:var(--muted);
  font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;font-size:11.5px;
}
.woocommerce #review_form_wrapper{margin-top:clamp(26px,3vw,40px);padding-top:clamp(24px,3vw,34px);border-top:1px solid var(--tan-rule)}
.woocommerce #review_form #respond{margin:0}
.woocommerce #review_form #respond p{margin:0 0 16px}
.woocommerce #review_form #respond label{
  display:block;font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;
  font-size:11px;font-weight:600;color:var(--claret);margin-bottom:7px;
}
.woocommerce #review_form #respond input[type=text],
.woocommerce #review_form #respond input[type=email],
.woocommerce #review_form #respond textarea{
  width:100%;max-width:640px;border:1px solid var(--tan-rule);background:var(--tan);padding:12px 14px;border-radius:0;font-size:15px;
}
.woocommerce #review_form #respond textarea{min-height:130px;resize:vertical}
.woocommerce #review_form #respond .comment-form-rating{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.woocommerce #review_form #respond .comment-form-rating label{margin:0}
.woocommerce p.stars a{color:var(--claret)}
.woocommerce p.stars:hover a::before,.woocommerce p.stars.selected a::before{color:var(--claret)}
.woocommerce #review_form #respond .form-submit{margin-bottom:0}
.woocommerce .comment-reply-title{
  display:block;font-family:var(--display);font-size:20px;color:var(--claret);margin-bottom:14px;
}

/* ---------- comparison ---------- */
.ax-compare{grid-column:1/-1;padding-block:clamp(40px,5vw,68px) 0}
.ax-compare .sec-head{margin-bottom:clamp(24px,3vw,38px)}
.ax-compare .sec-head h2{font-size:clamp(24px,3vw,36px)}
.ax-compare-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;background:var(--tan-rule);border:1px solid var(--tan-rule);
  max-width:860px;margin-inline:auto;
}
.ax-compare-head{
  background:var(--tan);padding:14px 18px;text-align:center;
  font-family:var(--util);font-weight:600;text-transform:uppercase;letter-spacing:.2em;
  font-size:11px;color:var(--muted);
}
.ax-compare-head--us{background:var(--claret);color:var(--tan)}
.ax-compare-cell{
  background:var(--tan);padding:clamp(14px,1.8vw,20px) clamp(14px,2vw,22px);
  display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.6;color:#5A4436;
}
.ax-compare-cell--us{background:var(--tan-deep);color:var(--ink)}
.ax-compare-cell .mark{color:var(--claret);font-size:9px;line-height:2;flex:0 0 auto}

/* ---------- product questions ---------- */
.ax-pfaq{grid-column:1/-1;padding-block:clamp(40px,5vw,68px) 0}
.ax-pfaq .sec-head{margin-bottom:clamp(18px,2.4vw,28px)}
.ax-pfaq .sec-head h2{font-size:clamp(24px,3vw,36px)}
.ax-pfaq-list{max-width:760px;margin-inline:auto;border-top:1px solid var(--tan-rule)}
.ax-pfaq-list .faq-item button{font-size:17px}
.ax-pfaq-list .faq-item .a{max-width:none}

.ax-rating-jump{display:inline-block;border:0}
.ax-rating-jump:hover{opacity:.75}

/* ---------- the guarantee ---------- */
.ax-guarantee{grid-column:1/-1;padding-block:clamp(30px,4vw,52px) 0}
.ax-guarantee-plate{
  position:relative;background:var(--tan-deep);border:1px solid var(--claret);
  padding:clamp(26px,3.4vw,44px);text-align:center;max-width:760px;margin-inline:auto;
}
.ax-guarantee-plate::before{content:"";position:absolute;inset:8px;border:1px solid var(--claret);opacity:.4;pointer-events:none}
.ax-guarantee-label{color:var(--gilt-deep);margin-bottom:12px}
.ax-guarantee-plate h2{font-family:var(--display);font-weight:500;color:var(--claret);font-size:clamp(22px,2.6vw,32px);line-height:1.1;margin:0}
.ax-guarantee-plate p{margin:14px auto 0;max-width:52ch;color:#4A362B;line-height:1.7}

/* ---------- free shipping progress ---------- */
.ax-freeship{
  background:var(--tan-deep);border:1px solid var(--tan-rule);
  padding:clamp(14px,2vw,20px) clamp(16px,2.4vw,24px);margin:0 0 26px;text-align:center;
}
.ax-freeship p{margin:0 0 12px;color:var(--claret)}
.ax-freeship .ax-freeship-done{color:var(--gilt-deep)}
.ax-freeship-track{height:3px;background:var(--tan-rule);overflow:hidden}
.ax-freeship-track span{display:block;height:100%;background:var(--claret);transition:width .5s ease}
.ax-freeship .amount{font-weight:600}

/* ---------- sticky buy bar ---------- */
.ax-buybar{
  position:fixed;left:0;right:0;bottom:0;z-index:180;
  background:rgba(229,215,191,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-top:1px solid var(--tan-rule);
  box-shadow:0 -14px 30px -22px rgba(20,5,8,.5);
  transform:translateY(101%);transition:transform .32s cubic-bezier(.2,.7,.3,1);
}
.ax-buybar[data-shown="true"]{transform:none}
.ax-buybar-inner{display:flex;align-items:center;gap:clamp(12px,2vw,26px);padding-block:11px}
.ax-buybar-item{display:flex;align-items:center;gap:13px;flex:1;min-width:0}
.ax-buybar-thumb{width:44px;height:44px;flex:0 0 auto;overflow:hidden;border:1px solid var(--tan-rule);background:var(--tan-deep)}
.ax-buybar-thumb img{width:100%;height:100%;object-fit:cover;margin:0}
.ax-buybar-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.ax-buybar-name{
  font-family:var(--display);font-size:15px;color:var(--claret);line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.ax-buybar-price{font-family:var(--util);font-weight:600;letter-spacing:.08em;font-size:13px;color:var(--claret)}
.ax-buybar-price del{opacity:.45;margin-right:6px}
.ax-buybar-price ins{text-decoration:none;background:none}
.ax-buybar-ship{flex:0 0 auto;color:var(--muted);white-space:nowrap}
.ax-buybar-ship .amount{color:var(--claret);font-weight:600}
.ax-buybar-btn{flex:0 0 auto;padding:13px 30px;white-space:nowrap}
.ax-buybar-btn[disabled]{opacity:.5;cursor:not-allowed}
@media (max-width:860px){
  .ax-buybar-ship{display:none}
}
@media (max-width:560px){
  .ax-buybar-thumb{display:none}
  .ax-buybar-inner{gap:12px}
  .ax-buybar-btn{padding:13px 18px;letter-spacing:.12em;font-size:11.5px}
  .ax-buybar-item{flex:1 1 auto}
  .ax-buybar-name{font-size:14px}
}
@media (max-width:380px){
  .ax-buybar-name{display:none}
}

/* ---------- product copy, in the theme's own voice ----------
   Applied to the imported wrapper and to the description panel itself,
   so a description styles correctly whether it came from the importer,
   was typed by hand, or was edited afterwards. ---------- */
.ax-desc,
.woocommerce-Tabs-panel--description,
.woocommerce div.product .woocommerce-tabs .panel{max-width:70ch}
.woocommerce-Tabs-panel--description:has(.ax-desc--center),
.woocommerce div.product .woocommerce-tabs .panel:has(.ax-desc--center){max-width:none}
.woocommerce-Tabs-panel--description,
.woocommerce div.product .woocommerce-tabs .panel{margin-inline:auto}
.ax-desc>*:first-child,
.woocommerce-Tabs-panel--description>*:first-child{margin-top:0}
.ax-desc>*:last-child,
.woocommerce-Tabs-panel--description>*:last-child{margin-bottom:0}

.ax-desc h1,.ax-desc h2,
.woocommerce-Tabs-panel--description h1,
.woocommerce-Tabs-panel--description h2{
  font-family:var(--display);font-weight:500;color:var(--claret);
  font-size:clamp(20px,2vw,27px);line-height:1.14;letter-spacing:-.01em;margin:1.7em 0 .5em}

.ax-desc h3,.ax-desc h4,.ax-desc h5,.ax-desc h6,
.woocommerce-Tabs-panel--description h3,
.woocommerce-Tabs-panel--description h4,
.woocommerce-Tabs-panel--description h5,
.woocommerce-Tabs-panel--description h6{
  font-family:var(--util);font-weight:600;text-transform:uppercase;letter-spacing:.18em;
  font-size:12.5px;color:var(--claret);margin:1.7em 0 .7em}

.ax-desc p,
.woocommerce-Tabs-panel--description p{margin:0 0 1.05em;color:#4A362B;line-height:1.72}
.ax-desc strong,.ax-desc b,
.woocommerce-Tabs-panel--description strong,
.woocommerce-Tabs-panel--description b{color:var(--claret);font-weight:600}
.ax-desc em,.ax-desc i,
.woocommerce-Tabs-panel--description em,
.woocommerce-Tabs-panel--description i{font-family:var(--display);font-style:italic;font-size:1.06em}
.ax-desc a,
.woocommerce-Tabs-panel--description a{color:var(--claret);border-bottom:1px solid var(--tan-rule)}
.ax-desc a:hover,
.woocommerce-Tabs-panel--description a:hover{border-bottom-color:var(--claret)}

.ax-desc ul,
.woocommerce-Tabs-panel--description ul{list-style:none;margin:0 0 1.2em;padding:0}
.ax-desc ul li,
.woocommerce-Tabs-panel--description ul li{position:relative;padding-left:24px;margin-bottom:.55em;color:#4A362B;line-height:1.65}
.ax-desc ul li::before,
.woocommerce-Tabs-panel--description ul li::before{content:"\25C6";position:absolute;left:0;top:.28em;font-size:10px;color:var(--gilt-deep)}
.ax-desc ol,
.woocommerce-Tabs-panel--description ol{margin:0 0 1.2em;padding-left:1.3em}
.ax-desc ol li,
.woocommerce-Tabs-panel--description ol li{margin-bottom:.55em;color:#4A362B;line-height:1.65}
.ax-desc ol li::marker,
.woocommerce-Tabs-panel--description ol li::marker{font-family:var(--util);color:var(--gilt-deep);font-weight:600}

.ax-desc blockquote,
.woocommerce-Tabs-panel--description blockquote{border-left:2px solid var(--claret);margin:1.6em 0;padding:2px 0 2px 22px;font-family:var(--display);font-size:1.15em;line-height:1.4;color:var(--claret)}
.ax-desc blockquote p,
.woocommerce-Tabs-panel--description blockquote p{color:inherit;font-family:inherit}
.ax-desc hr,
.woocommerce-Tabs-panel--description hr{height:1px;background:var(--tan-rule);border:0;margin:2em 0}
.ax-desc img,
.woocommerce-Tabs-panel--description img{margin:1.5em 0;width:100%;height:auto}

.ax-desc table,
.woocommerce-Tabs-panel--description table{width:100%;border-collapse:collapse;margin:1.4em 0;background:var(--tan-deep);border:1px solid var(--claret)}
.ax-desc th,.ax-desc td,
.woocommerce-Tabs-panel--description th,
.woocommerce-Tabs-panel--description td{padding:10px 14px;border-bottom:1px solid var(--tan-rule);font-size:14px;text-align:left}
.ax-desc th,
.woocommerce-Tabs-panel--description th{font-family:var(--util);text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--claret);font-weight:600}

/* ---------- the centred product description ---------- */
.ax-desc--center{max-width:56ch;margin-inline:auto;text-align:center}
.ax-desc--center .ax-lede{
  font-family:var(--display);font-weight:500;color:var(--claret);
  font-size:clamp(23px,2.6vw,34px);line-height:1.12;letter-spacing:-.01em;
  margin:0 0 .7em;text-wrap:balance;
}
.ax-desc--center p{margin:0 0 1.1em;color:#4A362B;line-height:1.72}
.ax-desc--center .ax-intro{font-size:clamp(15.5px,1.35vw,17px);color:#433126}
.ax-section{margin:clamp(30px,3.4vw,46px) auto 0;text-align:center}
.ax-section h3,.ax-section p{text-align:center}
.ax-section h3{
  font-family:var(--util);font-weight:600;text-transform:uppercase;letter-spacing:.2em;
  font-size:12px;color:var(--claret);margin:0 0 .9em;
}
.ax-section p{margin:0 0 .95em}
.ax-section p:last-child{margin-bottom:0}
.ax-section--use{
  margin-top:clamp(30px,3.4vw,46px);padding-top:clamp(22px,2.6vw,32px);
  border-top:1px solid var(--tan-rule);
}
.ax-desc--center>*:last-child{margin-bottom:0}
.ax-actives{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:8px 0;margin:1.5em 0;padding:16px 0;
  border-top:1px solid var(--tan-rule);border-bottom:1px solid var(--tan-rule);
}
.ax-actives span{
  font-family:var(--util);font-weight:600;text-transform:uppercase;
  letter-spacing:.2em;font-size:11px;color:var(--claret);padding:0 16px;
  position:relative;white-space:nowrap;
}
.ax-actives span+span::before{
  content:"\25C6";position:absolute;left:-4px;top:50%;transform:translateY(-50%);
  font-size:7px;color:var(--gilt-deep);letter-spacing:0;
}
.ax-desc--center .ax-use,
.ax-section .ax-use{
  font-family:var(--util);text-transform:uppercase;letter-spacing:.14em;
  font-size:11.5px;line-height:1.8;color:#5A4436;
  max-width:46ch;margin-left:auto;margin-right:auto;text-align:center;
}
.ax-desc--center ul{display:inline-block;text-align:left}

/* the short description in the buy panel gets the same treatment */
.woocommerce div.product .woocommerce-product-details__short-description p{margin:0 0 .8em;color:#4A362B;line-height:1.66}
.woocommerce div.product .woocommerce-product-details__short-description strong{color:var(--claret);font-weight:600}
.woocommerce div.product .woocommerce-product-details__short-description ul{list-style:none;margin:.6em 0 0;padding:0}
.woocommerce div.product .woocommerce-product-details__short-description li{position:relative;padding-left:20px;margin-bottom:.4em;font-size:14.5px}
.woocommerce div.product .woocommerce-product-details__short-description li::before{content:"\25C6";position:absolute;left:0;top:.3em;font-size:9px;color:var(--gilt-deep)}

.section--ox .ax-desc p,.section--ox .ax-desc li{color:var(--tan-deep)}

/* ============================================================
   10. WOOCOMMERCE  ·  NOTICES, CART, CHECKOUT
   ============================================================ */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  background:var(--claret);color:var(--tan);border:0;border-radius:0;padding:16px 22px;margin:0 0 26px;
  display:flex;align-items:center;gap:14px;font-family:var(--util);text-transform:uppercase;letter-spacing:.14em;font-size:11.5px;font-weight:600;list-style:none}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}
.woocommerce-message .button,.woocommerce-info .button{margin-left:auto;background:transparent;border-color:var(--tan);color:var(--tan)}
.woocommerce-message .button:hover{background:var(--tan);color:var(--claret)}
.woocommerce table.shop_table{border:1px solid var(--tan-rule);border-radius:0;background:var(--tan-deep)}
.woocommerce table.shop_table th{font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--claret)}
.woocommerce table.shop_table td{border-top:1px solid var(--tan-rule)}
.woocommerce-cart table.cart img{width:70px}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single{border:1px solid var(--tan-rule);background:var(--tan);padding:12px 14px;border-radius:0;height:auto}
.woocommerce form .form-row label{font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600;color:var(--claret)}
.woocommerce #payment,.woocommerce-checkout #payment{background:var(--tan-deep);border-radius:0;border:1px solid var(--tan-rule)}
.woocommerce .cart_totals h2,.woocommerce-checkout h3{font-size:24px}

/* ============================================================
   11. CONTENT + FOOTER
   ============================================================ */
.entry-content{max-width:72ch;margin-inline:auto}
.entry-content p{margin:0 0 1.1em}
.entry-content h2{font-size:clamp(26px,3vw,36px);margin-top:1.6em}
.entry-content blockquote{border-left:2px solid var(--claret);margin:1.6em 0;padding-left:24px;font-family:var(--display);font-size:20px;color:var(--claret)}
.post-card{background:var(--tan-deep);border:1px solid var(--tan-rule);padding:26px}
.post-card h2{font-size:24px;margin:0 0 10px}
.site-foot{background:var(--oxblood);color:var(--tan-deep);padding-block:clamp(44px,6vw,76px) 0}
.foot-mark{font-family:var(--display);font-weight:600;color:var(--tan);font-size:clamp(34px,9.4vw,114px);letter-spacing:.14em;text-indent:.14em;line-height:1;text-align:center;border-bottom:1px solid rgba(216,198,166,.2);padding-bottom:26px}
.foot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding-block:44px}
.foot-col h5,.foot-col .widget-title{font-family:var(--util);text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:var(--gilt);margin:0 0 16px}
.foot-col ul{list-style:none;margin:0;padding:0}
.foot-col a{display:block;padding:5px 0;opacity:.78;font-size:14.5px;color:var(--tan-deep)}
.foot-col a:hover{opacity:1;color:var(--tan)}
.signup{display:flex;border:1px solid rgba(216,198,166,.35);margin-top:14px}
.signup{min-width:0}
.signup input{flex:1;min-width:0;width:100%;background:transparent;border:0;padding:12px 14px;font-size:14px;color:var(--tan)}
.signup button{white-space:nowrap}
.signup input::placeholder{color:rgba(216,198,166,.5)}
.signup button{background:var(--claret);border:0;color:var(--tan);padding:0 18px;cursor:pointer;font-family:var(--util);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600}
.fine{border-top:1px solid rgba(216,198,166,.2);padding-block:26px;font-size:12.5px;opacity:.62;line-height:1.6}
.fine .row{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;margin-top:14px}

/* ============================================================
   12. RESPONSIVE
   ============================================================ */
@media (max-width:1259px){
  .head-inner{grid-template-columns:auto minmax(0,1fr) auto;padding-block:15px}
  .head-nav{display:none}
  .burger{display:block}
  .head-tools a:not(.cart-pill){display:none}
}
@media (max-width:1080px){
  .woocommerce ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .press{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:980px){
  .woocommerce div.product,.split,.faq-grid{grid-template-columns:minmax(0,1fr)}
  .woocommerce div.product .woocommerce-product-gallery{position:static}
  .hero-inner{grid-template-columns:minmax(0,1fr)}
  .hero-bottle{display:none}
  .trustbar .ax-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split-media{min-height:0;aspect-ratio:16/10}
  .collections{--coll-num:22px;--coll-gap:12px}
  .band{max-width:none;aspect-ratio:3/4}
  .reviews{grid-template-columns:minmax(0,1fr)}
  .ax-how-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .faq-media{aspect-ratio:16/10}
  .hero-inner{padding-block:clamp(40px,8vw,72px)}
}
@media (max-width:660px){
  .ax-rating-summary{grid-template-columns:minmax(0,1fr);gap:20px}
  .ax-compare-grid{grid-template-columns:minmax(0,1fr)}
  .ax-compare-head{padding:11px 16px}
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-4{grid-template-columns:minmax(0,1fr)}
  .reviews,.press{grid-template-columns:minmax(0,1fr)}
  .ax-how-grid{grid-template-columns:minmax(0,1fr)}
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-col:last-child{grid-column:1/-1}
  .hero-cta .btn{flex:1;padding-inline:16px}
  .hero-img{object-position:var(--hero-focal-m,var(--hero-focal,center center))}
  .split-media{aspect-ratio:1/1}
  .faq-media{aspect-ratio:4/3}
  .ax-actives span{padding:0 12px;font-size:10px;letter-spacing:.16em}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;transition-duration:.001ms!important}
}
