/* =========================================================
   Ardentis Compounds — Design Tokens (single source of truth)
   Same token names as base-theme tokens.css; values carry the
   Ardentis brand sheet. Edit these to reskin.
   ========================================================= */
:root{
    /* Brand sheet palette */
    --ap-midnight:  #0B0F14;
    --ap-charcoal:  #1A1F24;
    --ap-teal:      #0E4D4F;
    --ap-copper:    #B87333;
    --ap-sand:      #E7E1D6;
    --ap-ivory:     #FAF8F5;

    /* Surfaces */
    --ap-bg:        #0B0F14;  /* page — midnight        */
    --ap-bg2:       #1A1F24;  /* card — charcoal        */
    --ap-bg3:       #222932;  /* lightest / hover       */
    --ap-bg-card:   #1A1F24;

    /* Ink / text */
    --ap-ink:       #FAF8F5;  /* primary text — ivory   */
    --ap-ink2:      #E7E1D6;  /* sand                   */
    --ap-muted:     #A7ADB5;  /* secondary text         */
    --ap-muted2:    #7E868F;

    /* Primary accent — copper */
    --ap-olive:     #B87333;  /* primary buttons        */
    --ap-olive-h:   #9A5F28;  /* button hover           */
    --ap-dark:      #070A0E;  /* dark section bg        */
    --ap-dark2:     #06080B;  /* footer / darkest       */
    --ap-taupe:     #C98F4F;  /* italic serif accents   */

    /* On-dark text */
    --ap-cream:     #FAF8F5;
    --ap-cream2:    #E7E1D6;
    --ap-cream3:    #8A939C;

    /* Lines */
    --ap-border:    rgba(250,248,245,.12);
    --ap-border2:   rgba(250,248,245,.32);
    --ap-border-l:  rgba(11,15,20,.14);   /* borders on light bands */

    /* Accents */
    --ap-blue:      #B87333;  /* buy-it-now / checkout  */
    --ap-blue-h:    #9A5F28;
    --ap-rust:      #0E4D4F;  /* sale badge — deep teal */
    --ap-gold:      #C98F4F;  /* star ratings           */
    --ap-green-ok:  #0E4D4F;  /* in-stock dot           */

    /* Button ink */
    --ap-btn-ink:   #FAF8F5;

    /* Radii — squared-off per brand sheet */
    --ap-r:    14px;
    --ap-rs:   10px;
    --ap-rx:   6px;
    --ap-pill: 6px;

    /* Type */
    --ap-serif: 'DM Serif Display', Georgia, 'Times New Roman', serif;
    --ap-sans:  'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;

    /* Layout */
    --ap-maxw: 1280px;
}

/* =========================================================
   Base theme — main stylesheet (mirrors assets/css/main.css)
   ========================================================= */

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:92px} /* keep anchor targets clear of the sticky nav */
:focus-visible{outline:2px solid var(--ap-copper);outline-offset:3px;border-radius:2px}
body{
    font-family:var(--ap-sans);
    background:var(--ap-bg);
    color:var(--ap-ink);
    -webkit-font-smoothing:antialiased;
    line-height:1.55;
    overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--ap-copper);color:var(--ap-ivory)}

.ap-container{max-width:var(--ap-maxw);margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.ap-serif{font-family:var(--ap-serif)}
.ap-eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ap-copper);font-weight:600}

/* ── Buttons — squared, uppercase, letterspaced ── */
.ap-btn,.ap-btn-outline,.ap-btn-blue,.ap-btn-dark{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-family:var(--ap-sans);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;
    border:none;border-radius:var(--ap-rx);padding:15px 28px;cursor:pointer;
    transition:transform .15s,background .2s,box-shadow .2s;text-align:center;
}
.ap-btn{background:var(--ap-copper);color:var(--ap-btn-ink);box-shadow:0 8px 24px rgba(184,115,51,.28)}
.ap-btn:hover{background:var(--ap-olive-h);transform:translateY(-1px)}
.ap-btn-outline{background:transparent;color:var(--ap-ink);border:1px solid var(--ap-border2)}
.ap-btn-outline:hover{background:var(--ap-bg2)}
.ap-btn-blue{background:var(--ap-blue);color:var(--ap-btn-ink)}
.ap-btn-blue:hover{background:var(--ap-blue-h)}
.ap-btn-dark{background:var(--ap-midnight);color:var(--ap-ivory)}
.ap-btn-dark:hover{background:#000;transform:translateY(-1px)}
.ap-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

/* ── Announcement marquee ── */
.ap-announce{background:var(--ap-dark);color:var(--ap-cream2);overflow:hidden;white-space:nowrap;border-bottom:1px solid var(--ap-border)}
.ap-announce-track{display:inline-flex;gap:0;animation:ap-marquee 38s linear infinite;will-change:transform}
.ap-announce:hover .ap-announce-track{animation-play-state:paused}
.ap-announce-item{display:inline-flex;align-items:center;gap:14px;padding:10px 0;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.ap-announce-item::after{content:'◆';margin:0 22px;color:var(--ap-copper);opacity:.6;font-size:8px}
@keyframes ap-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── Header / nav ── */
.ap-nav{position:sticky;top:0;z-index:60;background:rgba(11,15,20,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--ap-border)}
.ap-nav-i{max-width:var(--ap-maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px;padding:0 clamp(16px,4vw,40px)}
.ap-logo{display:flex;align-items:center;gap:12px}
.ap-logo-word{display:flex;flex-direction:column;line-height:1}
.ap-logo-word b{font-family:var(--ap-sans);font-weight:600;font-size:17px;letter-spacing:.32em;color:var(--ap-ink)}
.ap-logo-word small{font-size:8px;font-weight:600;letter-spacing:.42em;color:var(--ap-copper);margin-top:5px;display:flex;align-items:center;gap:7px}
.ap-logo-word small::before,.ap-logo-word small::after{content:'';height:1px;flex:1;background:var(--ap-copper);opacity:.6}
.ap-nav-links{display:flex;align-items:center;gap:30px}
.ap-nav-links a{position:relative;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ap-ink2);transition:color .2s;padding:4px 0}
.ap-nav-links a::after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--ap-copper);transition:right .25s ease}
.ap-nav-links a:hover::after{right:0}
.ap-nav-links a:hover,.ap-nav-links a.active{color:var(--ap-copper)}
.ap-nav-links.open{display:flex;position:absolute;top:76px;left:0;right:0;background:rgba(11,15,20,.98);backdrop-filter:blur(10px);flex-direction:column;align-items:flex-start;padding:20px clamp(16px,4vw,40px) 24px;gap:18px;border-bottom:1px solid var(--ap-border);box-shadow:0 24px 40px rgba(0,0,0,.5)}
.ap-nav-right{display:flex;align-items:center;gap:20px}
.ap-nav-right a{color:var(--ap-ink);display:flex;align-items:center;transition:opacity .2s}
.ap-nav-right a:hover{opacity:.65}
.ap-cart{position:relative}
.ap-cart-count{position:absolute;top:-8px;right:-9px;background:var(--ap-copper);color:var(--ap-ivory);font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 4px}
.ap-burger{display:none;background:none;border:none;flex-direction:column;gap:4px;width:30px;padding:6px;cursor:pointer}
.ap-burger span{height:2px;background:var(--ap-ink);border-radius:2px}

/* ── Hero ── */
.ap-hero-wrap{position:relative;overflow:hidden}
.ap-hero-wrap::before{content:'';position:absolute;inset:0;pointer-events:none;background:
    radial-gradient(720px 420px at 78% 30%,rgba(184,115,51,.10),transparent 65%),
    radial-gradient(560px 380px at 8% 90%,rgba(14,77,79,.16),transparent 65%)}
.ap-hero{position:relative;max-width:var(--ap-maxw);margin:0 auto;padding:clamp(32px,6vw,70px) clamp(16px,4vw,40px) clamp(40px,6vw,80px);display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,56px);align-items:center}
/* page-load choreography — one staggered fade-up, guarded for reduced motion */
@keyframes ap-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.ap-hero-c > *,.ap-hero-media{animation:ap-rise .7s cubic-bezier(.22,.8,.36,1) backwards}
.ap-hero-c .ap-eyebrow{animation-delay:.05s}
.ap-hero-c h1{animation-delay:.14s}
.ap-hero-c .ap-hero-sub{animation-delay:.26s}
.ap-hero-c .ap-hero-btns{animation-delay:.36s}
.ap-hero-c .ap-hero-stats{animation-delay:.46s}
.ap-hero-media{animation-delay:.3s}
.ap-hero-c{flex:1;min-width:320px}
.ap-hero h1{font-family:var(--ap-serif);font-weight:400;font-size:clamp(44px,7vw,82px);line-height:1.02;letter-spacing:-.5px;color:var(--ap-ink);margin:16px 0 20px}
.ap-hero h1 em{font-style:italic;color:var(--ap-taupe)}
.ap-hero-sub{font-size:15.5px;color:var(--ap-muted);max-width:420px;margin-bottom:30px;line-height:1.7}
.ap-hero-btns{display:flex;gap:14px;flex-wrap:wrap}
.ap-hero-media{flex:1;min-width:300px;display:flex;justify-content:center;position:relative}
.ap-hero-media img,.ap-hero-media svg{max-height:460px;width:auto;filter:drop-shadow(0 24px 44px rgba(0,0,0,.5))}
.ap-hero-media .ap-hero-vials{display:block;width:100%;max-width:560px;height:auto;margin-inline:auto}
.ap-hero-badge{position:absolute;right:4%;bottom:7%;background:var(--ap-charcoal);border:1px solid var(--ap-border);border-radius:8px;padding:10px 14px;font-size:12px;display:flex;align-items:center;gap:9px;box-shadow:0 12px 26px rgba(0,0,0,.4)}
.ap-hero-stats{display:inline-flex;margin-top:36px;background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;overflow:hidden}
.ap-hero-stat{padding:16px clamp(16px,2.4vw,28px);text-align:center}
.ap-hero-stat + .ap-hero-stat{border-left:1px solid var(--ap-border)}
.ap-hero-stat b{font-family:var(--ap-serif);font-weight:400;font-size:28px;display:block;line-height:1;color:var(--ap-ink)}
.ap-hero-stat span{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ap-muted);font-weight:600}

/* ── Trust bar — light ivory band per brand sheet ── */
.ap-trust{background:var(--ap-ivory);color:var(--ap-midnight);border-bottom:1px solid var(--ap-border-l)}
.ap-trust-i{max-width:var(--ap-maxw);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:22px clamp(16px,4vw,40px)}
.ap-trust-item{display:flex;align-items:center;gap:13px;font-size:13px}
.ap-trust-item + .ap-trust-item{border-left:1px solid var(--ap-border-l);padding-left:18px}
.ap-trust-item b{color:var(--ap-midnight);font-weight:700;display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.ap-trust-item small{color:#6B675F;font-size:11.5px;line-height:1.45;display:block;margin-top:2px}
.ap-trust-item svg{width:24px;height:24px;flex:none;stroke:var(--ap-copper)}

/* ── Generic section ── */
.ap-section{max-width:var(--ap-maxw);margin:0 auto;padding:clamp(40px,6vw,72px) clamp(16px,4vw,40px)}
.ap-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.ap-section-head h2{font-family:var(--ap-serif);font-weight:400;font-size:clamp(26px,3.4vw,40px);line-height:1.05;color:var(--ap-ink)}
.ap-section-head h2 em{font-style:italic;color:var(--ap-taupe)}
.ap-link{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-copper);display:inline-flex;align-items:center;gap:5px}
.ap-link:hover{gap:9px}

/* ── Category cards (browse by goal) ── */
.ap-cat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.ap-cat-card{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;padding:20px 18px;min-height:132px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s}
.ap-cat-card:hover{background:var(--ap-bg3);border-color:rgba(184,115,51,.5);transform:translateY(-2px)}
.ap-cat-ico{width:26px;height:26px;color:var(--ap-copper)}
.ap-cat-card h3{font-family:var(--ap-sans);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-ink);margin-top:14px}
.ap-cat-card span{font-size:11.5px;color:var(--ap-muted)}

/* ── Product card + grid ── */
.ap-prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ap-prod-card{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s}
.ap-prod-card:hover{transform:translateY(-3px);border-color:rgba(184,115,51,.5);box-shadow:0 14px 30px rgba(0,0,0,.4)}
.ap-prod-thumb{position:relative;aspect-ratio:1/1;background:radial-gradient(120% 100% at 50% 0%,var(--ap-bg3),var(--ap-bg2));display:flex;align-items:center;justify-content:center;padding:22px}
.ap-prod-thumb img,.ap-prod-thumb svg{max-height:80%;width:auto;object-fit:contain;transition:transform .25s ease}
.ap-prod-card:hover .ap-prod-thumb img,.ap-prod-card:hover .ap-prod-thumb svg{transform:translateY(-4px) scale(1.04)}
/* Full-frame studio photos (dark background baked in) fill the tile edge-to-edge */
.ap-prod-thumb img.ap-photo{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover}
.ap-prod-card:hover .ap-prod-thumb img.ap-photo{transform:scale(1.04)}
.ap-prod-badge{position:absolute;top:12px;left:12px;background:var(--ap-copper);color:var(--ap-ivory);font-size:8.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:5px 9px;border-radius:4px}
.ap-prod-badge.sale{background:var(--ap-teal);color:var(--ap-ivory)}
.ap-prod-badge.new{background:var(--ap-sand);color:var(--ap-midnight)}
.ap-prod-fav{position:absolute;top:10px;right:12px;font-size:16px;color:var(--ap-cream3)}
.ap-prod-info{padding:14px 15px 17px;display:flex;flex-direction:column;gap:6px;flex:1}
.ap-prod-cat{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-muted2);font-weight:600}
.ap-prod-name{font-family:var(--ap-serif);font-weight:400;font-size:17px;color:var(--ap-ink);line-height:1.15}
.ap-prod-rating{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ap-muted)}
.ap-stars{color:var(--ap-gold);letter-spacing:1px;font-size:12px}
.ap-prod-foot{margin-top:auto;display:flex;align-items:baseline;gap:8px;padding-top:8px}
.ap-prod-price{font-size:16px;font-weight:700;color:var(--ap-ink)}
.ap-prod-price del{font-size:12px;font-weight:500;color:var(--ap-muted2);margin-left:2px}

/* ── The Difference (statement cards) ── */
/* Bento (desktop) — photographic cards cropped from the COA brand shoot;
   the text is baked into the images, so .ap-diff-grid stays as the
   live-text fallback below 860px where the baked type gets too small. */
.ap-bento{display:grid;grid-template-columns:960fr 836fr;gap:clamp(12px,1.4vw,18px)}
.ap-bento img{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block;border:1px solid var(--ap-border);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.ap-bento img:hover{transform:translateY(-3px);border-color:rgba(184,115,51,.5);box-shadow:0 14px 30px rgba(0,0,0,.4)}
.ap-bento-l img{aspect-ratio:960/701}
.ap-bento-r{display:grid;grid-template-rows:1fr 1fr;gap:clamp(12px,1.4vw,18px);min-height:0}
.ap-diff-grid{display:none;grid-template-columns:repeat(3,1fr);gap:16px}
.ap-diff-card{background:var(--ap-dark);border:1px solid var(--ap-border);border-radius:12px;padding:clamp(20px,2.4vw,30px);min-height:210px;display:flex;flex-direction:column;justify-content:flex-end}
.ap-diff-card::before{content:'';width:26px;height:2px;background:var(--ap-copper);margin-bottom:14px}
.ap-diff-card p{font-family:var(--ap-serif);font-weight:400;font-size:clamp(16px,1.7vw,21px);line-height:1.32;color:var(--ap-cream)}

/* ── Story / light bands ── */
.ap-band-dark{background:var(--ap-dark);color:var(--ap-cream2)}
.ap-band-light{background:var(--ap-ivory);color:var(--ap-midnight)}
.ap-band-inner{max-width:880px;margin:0 auto;padding:clamp(48px,7vw,96px) clamp(20px,4vw,40px);text-align:center}
.ap-band-inner h2{font-family:var(--ap-serif);font-weight:400;font-size:clamp(28px,4.4vw,52px);line-height:1.1;margin:10px 0 30px;letter-spacing:-.3px}
.ap-band-light .ap-band-inner p{font-size:clamp(15px,1.5vw,17px);line-height:1.75;color:#575349;margin:0 auto 22px;max-width:720px}
.ap-band-sign{font-family:var(--ap-serif);font-style:italic;font-size:clamp(16px,1.8vw,21px);color:var(--ap-copper);margin-top:26px}
.ap-band-rule{width:56px;height:1.5px;background:rgba(11,15,20,.25);margin:38px auto 0}

/* ── Stats / standard ── */
.ap-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:8px}
.ap-stat{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;padding:22px 20px}
.ap-stat b{font-family:var(--ap-serif);font-weight:400;font-size:32px;display:block;line-height:1;color:var(--ap-copper)}
.ap-stat strong{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-ink);margin-top:10px}
.ap-stat span{font-size:12px;color:var(--ap-muted);display:block;margin-top:4px;line-height:1.45}

/* ── Education & Resources — light ivory band per brand sheet ── */
.ap-edu{background:var(--ap-ivory);color:var(--ap-midnight)}
.ap-edu .ap-eyebrow{color:var(--ap-copper)}
.ap-edu h2{font-family:var(--ap-serif);font-weight:400;font-size:clamp(28px,3.6vw,42px);line-height:1.05;color:var(--ap-midnight)}
.ap-edu-lead{font-size:14.5px;line-height:1.7;color:#575349;max-width:420px}
.ap-res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ap-res-card{background:#fff;border:1px solid var(--ap-border-l);border-radius:10px;padding:32px 26px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.ap-res-card h3{font-family:var(--ap-sans);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-midnight);margin-top:4px}
.ap-res-card p{font-size:13px;color:#6B675F;line-height:1.6;flex:1}
.ap-res-ico{width:52px;height:52px;color:var(--ap-copper);display:flex;align-items:center;justify-content:center}
.ap-res-ico svg{width:44px;height:44px;stroke:var(--ap-copper)}

/* ── Reviews ── */
.ap-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
.ap-review{background:rgba(250,248,245,.03);border:1px solid rgba(250,248,245,.1);border-radius:10px;padding:24px 22px}
.ap-review p{font-size:14px;color:var(--ap-cream2);margin:12px 0 16px;line-height:1.65}
.ap-review-who{display:flex;align-items:center;gap:10px}
.ap-review-av{width:32px;height:32px;border-radius:50%;background:var(--ap-copper);color:var(--ap-ivory);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:none}
.ap-review b{font-size:12px;color:var(--ap-cream);display:block}
.ap-review small{display:block;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ap-muted2)}

/* ── Newsletter ── */
.ap-news{text-align:center;max-width:760px;margin:0 auto;padding:clamp(48px,7vw,90px) clamp(16px,4vw,40px)}
.ap-news h2{font-family:var(--ap-serif);font-weight:400;font-size:clamp(26px,3.4vw,40px);margin-bottom:12px}
.ap-news p{color:var(--ap-muted);margin-bottom:26px}
.ap-news-form{display:flex;gap:10px;max-width:460px;margin:0 auto;flex-wrap:wrap}
.ap-news-form input{flex:1;min-width:200px;padding:14px 18px;border:1px solid var(--ap-border2);border-radius:var(--ap-rx);background:var(--ap-bg2);font-size:14px;font-family:var(--ap-sans);color:var(--ap-ink)}
.ap-news-form input::placeholder{color:var(--ap-muted2)}
.ap-news-form input:focus{outline:none;border-color:var(--ap-copper);box-shadow:0 0 0 3px rgba(184,115,51,.18)}
.ap-news-ok{display:none;color:var(--ap-copper);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-top:18px}

/* ── Values band (brand pillars, pre-footer) ── */
.ap-values{background:var(--ap-dark);border-top:1px solid var(--ap-border)}
.ap-values-i{max-width:var(--ap-maxw);margin:0 auto;padding:clamp(30px,4vw,46px) clamp(16px,4vw,40px);display:grid;grid-template-columns:repeat(5,1fr);gap:22px}
.ap-value{display:flex;align-items:flex-start;gap:12px}
.ap-value svg{width:24px;height:24px;flex:none;stroke:var(--ap-copper);margin-top:2px}
.ap-value b{display:block;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-copper);margin-bottom:4px}
.ap-value span{font-size:11.5px;color:var(--ap-muted);line-height:1.5;display:block}

/* ── Footer ── */
.ap-footer{background:var(--ap-dark2);color:var(--ap-muted)}
.ap-footer-i{max-width:var(--ap-maxw);margin:0 auto;padding:clamp(40px,5vw,64px) clamp(16px,4vw,40px) 40px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
.ap-footer-brand p{font-size:12.5px;color:var(--ap-muted2);max-width:280px;margin:14px 0;line-height:1.6}
.ap-footer-brand small{font-size:11px;color:var(--ap-muted);line-height:1.6;display:block}
.ap-footer h4{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ap-cream2);margin-bottom:14px;font-weight:700}
.ap-footer ul{list-style:none}
.ap-footer li{margin-bottom:10px}
.ap-footer li a{font-size:13px;color:var(--ap-muted2);transition:color .2s}
.ap-footer li a:hover{color:var(--ap-copper)}
.ap-footer-bottom{border-top:1px solid var(--ap-border)}
.ap-footer-bottom-i{max-width:var(--ap-maxw);margin:0 auto;padding:16px clamp(16px,4vw,40px);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.ap-footer-tag{font-size:10px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ap-muted)}
.ap-footer-ruo{background:var(--ap-copper);color:var(--ap-ivory);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:9px 18px;border-radius:3px}

/* ── Scroll reveal (class applied by JS — no-JS visitors see everything) ── */
.ap-rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.8,.36,1)}
.ap-rv.ap-in{opacity:1;transform:none}

/* ── Reduced motion — stop marquee, reveals and load choreography ── */
@media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    .ap-announce-track{animation:none}
    .ap-hero-c > *,.ap-hero-media{animation:none}
    .ap-rv{opacity:1;transform:none;transition:none}
}

/* ── Responsive ── */
@media(max-width:1024px){
    .ap-cat-grid{grid-template-columns:repeat(3,1fr)}
    .ap-prod-grid{grid-template-columns:repeat(3,1fr)}
    .ap-trust-i{grid-template-columns:repeat(2,1fr)}
    .ap-trust-item + .ap-trust-item{border-left:none;padding-left:0}
    .ap-res-grid,.ap-reviews,.ap-stats{grid-template-columns:repeat(2,1fr)}
    .ap-diff-grid{grid-template-columns:1fr 1fr}
    .ap-values-i{grid-template-columns:repeat(3,1fr)}
    .ap-footer-i{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
    .ap-nav-links{display:none}
    .ap-burger{display:flex}
    .ap-bento{display:none}
    .ap-diff-grid{display:grid}
}
@media(max-width:640px){
    .ap-cat-grid,.ap-prod-grid{grid-template-columns:repeat(2,1fr)}
    .ap-res-grid,.ap-reviews,.ap-stats,.ap-footer-i,.ap-diff-grid{grid-template-columns:1fr}
    .ap-values-i{grid-template-columns:1fr 1fr}
    .ap-hero h1{font-size:clamp(38px,11vw,54px)}
}

/* =========================================================
   Multi-page additions — catalog, product, quality, learn,
   support, contact, cart, account
   ========================================================= */

/* ── Toast ── */
.ap-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,80px);background:var(--ap-charcoal);border:1px solid var(--ap-border);color:var(--ap-cream);font-size:13px;font-weight:600;padding:13px 22px;border-radius:var(--ap-rx);box-shadow:0 14px 34px rgba(0,0,0,.5);display:flex;align-items:center;gap:9px;opacity:0;pointer-events:none;transition:transform .3s,opacity .3s;z-index:100}
.ap-toast.show{transform:translate(-50%,0);opacity:1}
.ap-toast svg{stroke:var(--ap-copper)}

/* ── Page hero strip (interior pages) ── */
.ap-page-hero{border-bottom:1px solid var(--ap-border);background:
    radial-gradient(680px 300px at 82% 100%,rgba(184,115,51,.10),transparent 65%)}
.ap-page-hero-i{max-width:var(--ap-maxw);margin:0 auto;padding:clamp(36px,5vw,60px) clamp(16px,4vw,40px)}
.ap-page-hero h1{font-family:var(--ap-serif);font-weight:400;font-size:clamp(34px,4.6vw,54px);line-height:1.05;color:var(--ap-ink);margin-top:12px}
.ap-page-hero h1 em{font-style:italic;color:var(--ap-taupe)}
.ap-page-hero p.ap-page-sub{font-size:15px;color:var(--ap-muted);max-width:560px;margin-top:14px;line-height:1.7}

/* ── Breadcrumb ── */
.ap-crumb{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted2);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ap-crumb a{color:var(--ap-muted);transition:color .2s}
.ap-crumb a:hover{color:var(--ap-copper)}
.ap-crumb span.sep{color:var(--ap-copper);opacity:.6}

/* ── Catalog filters ── */
.ap-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.ap-filter button{border:1px solid var(--ap-border2);background:transparent;color:var(--ap-ink2);font-family:var(--ap-sans);font-weight:600;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;border-radius:var(--ap-rx);padding:10px 16px;cursor:pointer;transition:all .15s}
.ap-filter button:hover{border-color:var(--ap-copper);color:var(--ap-copper)}
.ap-filter button.active{background:var(--ap-copper);border-color:var(--ap-copper);color:var(--ap-ivory)}
.ap-prod-name{transition:color .2s}
.ap-prod-name:hover{color:var(--ap-copper)}
.ap-add{background:transparent;color:var(--ap-copper);border:1px solid rgba(184,115,51,.55);border-radius:var(--ap-rx);font-family:var(--ap-sans);font-weight:700;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;cursor:pointer;transition:all .15s;margin-left:auto}
.ap-add:hover{background:var(--ap-copper);color:var(--ap-ivory)}
.ap-prod-foot{align-items:center}

/* ── Product detail ── */
.ap-pd{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(26px,4vw,56px);align-items:start}
.ap-pd-visual{background:radial-gradient(120% 100% at 50% 0%,var(--ap-bg3),var(--ap-bg2));border:1px solid var(--ap-border);border-radius:14px;display:flex;align-items:center;justify-content:center;padding:clamp(30px,4vw,60px);position:sticky;top:100px}
.ap-pd-visual svg{max-height:340px}
.ap-pd h1{font-family:var(--ap-serif);font-weight:400;font-size:clamp(32px,4vw,46px);line-height:1.05;color:var(--ap-ink);margin:10px 0 6px}
.ap-pd-spec{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-muted);font-weight:600}
.ap-pd-price{font-family:var(--ap-serif);font-size:32px;color:var(--ap-copper);margin:18px 0 4px}
.ap-pd-price del{font-size:18px;color:var(--ap-muted2);margin-left:10px}
.ap-pd-desc{font-size:14.5px;color:var(--ap-muted);line-height:1.75;margin:14px 0 22px;max-width:520px}
.ap-pd-buy{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}
.ap-qty{display:inline-flex;align-items:center;border:1px solid var(--ap-border2);border-radius:var(--ap-rx);overflow:hidden}
.ap-qty button{background:transparent;border:none;color:var(--ap-ink);width:38px;height:46px;font-size:17px;cursor:pointer;transition:background .15s}
.ap-qty button:hover{background:var(--ap-bg2)}
.ap-qty output{min-width:40px;text-align:center;font-weight:700;font-size:14px}
.ap-pd-meta{list-style:none;border-top:1px solid var(--ap-border);margin-top:6px}
.ap-pd-meta li{display:flex;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--ap-border);font-size:13px;color:var(--ap-muted)}
.ap-pd-meta li svg{width:17px;height:17px;flex:none;stroke:var(--ap-copper)}
.ap-pd-meta li a{color:var(--ap-copper)}

/* ── Accordion (product tabs / FAQ) ── */
.ap-acc{border:1px solid var(--ap-border);border-radius:10px;overflow:hidden;background:var(--ap-bg2)}
.ap-acc + .ap-acc{margin-top:10px}
.ap-acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-ink)}
.ap-acc summary::-webkit-details-marker{display:none}
.ap-acc summary::after{content:'+';font-family:var(--ap-serif);font-size:20px;color:var(--ap-copper);line-height:1;transition:transform .2s}
.ap-acc[open] summary::after{transform:rotate(45deg)}
.ap-acc-body{padding:0 20px 18px;font-size:14px;color:var(--ap-muted);line-height:1.75}
.ap-acc-body a{color:var(--ap-copper)}

/* ── Forms ── */
.ap-form{display:grid;gap:16px;max-width:560px}
.ap-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ap-field label{display:block;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted);margin-bottom:7px}
.ap-field input,.ap-field textarea,.ap-field select{width:100%;padding:13px 15px;border:1px solid var(--ap-border2);border-radius:var(--ap-rx);background:var(--ap-bg2);font-size:14px;font-family:var(--ap-sans);color:var(--ap-ink)}
.ap-field input:focus,.ap-field textarea:focus,.ap-field select:focus{outline:none;border-color:var(--ap-copper);box-shadow:0 0 0 3px rgba(184,115,51,.18)}
.ap-field textarea{min-height:130px;resize:vertical}
.ap-form-ok{display:none;color:var(--ap-copper);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}

/* ── Cart ── */
.ap-cart-wrap{display:grid;grid-template-columns:1.7fr 1fr;gap:clamp(22px,3vw,40px);align-items:start}
.ap-cart-line{display:grid;grid-template-columns:76px 1fr auto auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--ap-border)}
.ap-cart-line .thumb{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:8px;display:flex;align-items:center;justify-content:center;padding:8px}
.ap-cart-line b{font-family:var(--ap-serif);font-weight:400;font-size:17px;display:block}
.ap-cart-line small{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ap-muted2)}
.ap-cart-line .rm{background:none;border:none;color:var(--ap-muted2);font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:4px 0;text-align:left}
.ap-cart-line .rm:hover{color:var(--ap-copper)}
.ap-cart-sum{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:12px;padding:24px;position:sticky;top:100px}
.ap-cart-sum h3{font-family:var(--ap-serif);font-weight:400;font-size:22px;margin-bottom:16px}
.ap-cart-sum .row{display:flex;justify-content:space-between;font-size:13.5px;color:var(--ap-muted);padding:7px 0}
.ap-cart-sum .row.total{border-top:1px solid var(--ap-border);margin-top:8px;padding-top:14px;color:var(--ap-ink);font-weight:700;font-size:15px}
.ap-ship-note{font-size:12px;color:var(--ap-muted2);margin-top:12px;line-height:1.6}
.ap-empty{text-align:center;padding:clamp(40px,7vw,80px) 20px;border:1px dashed var(--ap-border2);border-radius:12px}
.ap-empty h3{font-family:var(--ap-serif);font-weight:400;font-size:24px;margin-bottom:8px}
.ap-empty p{color:var(--ap-muted);font-size:14px;margin-bottom:20px}

/* ── Numbered process steps (quality page) ── */
.ap-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:step}
.ap-step{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;padding:24px 20px;counter-increment:step}
.ap-step::before{content:'0' counter(step);font-family:var(--ap-serif);font-size:30px;color:var(--ap-copper);display:block;line-height:1;margin-bottom:14px}
.ap-step b{display:block;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-ink);margin-bottom:7px}
.ap-step span{font-size:13px;color:var(--ap-muted);line-height:1.6;display:block}

/* ── COA lookup ── */
.ap-lot{display:flex;gap:10px;max-width:460px;flex-wrap:wrap}
.ap-lot input{flex:1;min-width:200px;padding:14px 16px;border:1px solid var(--ap-border2);border-radius:var(--ap-rx);background:var(--ap-bg2);font-size:14px;font-family:var(--ap-sans);color:var(--ap-ink);letter-spacing:.06em}
.ap-lot input:focus{outline:none;border-color:var(--ap-copper);box-shadow:0 0 0 3px rgba(184,115,51,.18)}
.ap-lot-card{display:none;margin-top:22px;background:var(--ap-bg2);border:1px solid rgba(184,115,51,.4);border-radius:12px;padding:24px;max-width:560px}
.ap-lot-card.show{display:block;animation:ap-rise .4s ease}
.ap-lot-card h3{font-family:var(--ap-serif);font-weight:400;font-size:22px;margin-bottom:4px}
.ap-lot-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 20px;margin-top:14px}
.ap-lot-grid dt{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted2);font-weight:700;margin-top:10px}
.ap-lot-grid dd{font-size:14px;color:var(--ap-ink)}
.ap-lot-grid dd.pass{color:var(--ap-copper);font-weight:700}

/* ── Learn: article cards & calculator ── */
.ap-art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ap-art{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;padding:24px;display:flex;flex-direction:column;gap:10px;transition:transform .15s,border-color .15s}
.ap-art:hover{transform:translateY(-2px);border-color:rgba(184,115,51,.5)}
.ap-art small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted2);font-weight:700}
.ap-art h3{font-family:var(--ap-serif);font-weight:400;font-size:19px;line-height:1.25;color:var(--ap-ink)}
.ap-art p{font-size:13px;color:var(--ap-muted);line-height:1.6;flex:1}
.ap-calc{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:12px;padding:clamp(22px,3vw,34px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px)}
.ap-calc-out{background:var(--ap-dark);border:1px solid var(--ap-border);border-radius:10px;padding:24px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.ap-calc-out .big{font-family:var(--ap-serif);font-size:34px;color:var(--ap-copper);line-height:1}
.ap-calc-out .lbl{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ap-muted);font-weight:700}

/* ── Ivory band variants for interior pages ── */
.ap-band-light .ap-field input,.ap-band-light .ap-field textarea{background:#fff;border-color:var(--ap-border-l);color:var(--ap-midnight)}
.ap-band-light .ap-field label{color:#6B675F}

/* ── Not found ── */
.ap-nf{text-align:center;padding:clamp(50px,8vw,110px) 20px}
.ap-nf h1{font-family:var(--ap-serif);font-weight:400;font-size:clamp(34px,5vw,54px);margin-bottom:10px;color:var(--ap-ink)}
.ap-nf p{color:var(--ap-muted);margin-bottom:24px}

/* ── Responsive (page additions) ── */
@media(max-width:1024px){
    .ap-steps{grid-template-columns:repeat(2,1fr)}
    .ap-art-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:860px){
    .ap-pd{grid-template-columns:1fr}
    .ap-pd-visual{position:static}
    .ap-cart-wrap{grid-template-columns:1fr}
    .ap-cart-sum{position:static}
    .ap-calc{grid-template-columns:1fr}
}
@media(max-width:640px){
    .ap-steps,.ap-art-grid,.ap-form-row{grid-template-columns:1fr}
    .ap-cart-line{grid-template-columns:60px 1fr auto}
    .ap-cart-line .price-col{grid-column:2/4;justify-self:end}
}

/* =========================================================
   WooCommerce bridge — themes WooCommerce's default markup
   (shop, single product, cart, checkout, account) with the
   Ardentis tokens. Loaded only by the WP plugin.
   ========================================================= */

/* Shop container + heading */
.ap-shop-main{max-width:var(--ap-maxw);margin:0 auto}
.woocommerce-products-header,.woocommerce-breadcrumb{max-width:var(--ap-maxw);margin:0 auto;padding:8px clamp(16px,4vw,40px);color:var(--ap-muted);font-size:12px;letter-spacing:.04em}
.woocommerce-breadcrumb a{color:var(--ap-copper)}
.woocommerce-products-header__title,.woocommerce h1.entry-title,.woocommerce-page h1{font-family:var(--ap-serif);font-weight:400;color:var(--ap-ink);font-size:clamp(28px,4vw,44px);text-transform:none}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{color:var(--ap-muted);font-size:12.5px}
.woocommerce .woocommerce-ordering select{
    appearance:none;-webkit-appearance:none;-moz-appearance:none;
    background:var(--ap-bg2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23A7ADB5' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;
    border:1px solid var(--ap-border2);color:var(--ap-ink);border-radius:var(--ap-rx);padding:8px 36px 8px 12px;font-family:var(--ap-sans)}

/* Shop / category product grid → Ardentis grid. Uses !important + the
   .ap-shop-main ancestor so it also wins under block/FSE themes, whose
   WooCommerce grid CSS otherwise overrides ours (same fix as LeaneX v1.0.1). */
.ap-shop-main ul.products,.woocommerce ul.products,.woocommerce-page ul.products{
    list-style:none!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:18px!important;margin:0 0 30px!important;padding:0!important;width:auto!important}
.ap-shop-main ul.products::before,.ap-shop-main ul.products::after,.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
.ap-shop-main ul.products li.product,.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;max-width:none!important;margin:0!important;float:none!important;padding:0!important;clear:none!important}
.ap-shop-main ul.products li.product::before,.woocommerce ul.products li.product::before{content:none!important}
.ap-shop-main .ap-prod-thumb img:not(.ap-photo),.ap-shop-main .ap-prod-thumb svg,.woocommerce .ap-prod-thumb img:not(.ap-photo),.woocommerce .ap-prod-thumb svg{max-height:200px!important;width:auto!important}
/* Full-frame studio photos fill the square thumb edge-to-edge on the shop grid too */
.ap-shop-main .ap-prod-thumb img.ap-photo,.woocommerce .ap-prod-thumb img.ap-photo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important}
@media(max-width:1024px){.ap-shop-main ul.products,.woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:640px){.ap-shop-main ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}}

/* Shop pagination → copper brand accent (Woo defaults to plain white numbers).
   Scoped with .ap-shop-main + !important so it wins under block/FSE themes. */
.ap-shop-main .woocommerce-pagination ul,.woocommerce nav.woocommerce-pagination ul{border:0!important;display:inline-flex!important;gap:8px!important;margin:10px 0 0!important}
.ap-shop-main .woocommerce-pagination ul li,.woocommerce nav.woocommerce-pagination ul li{border:0!important;margin:0!important;overflow:visible!important}
.ap-shop-main .woocommerce-pagination ul li a.page-numbers,.ap-shop-main .woocommerce-pagination ul li span.page-numbers,.woocommerce nav.woocommerce-pagination ul li a.page-numbers,.woocommerce nav.woocommerce-pagination ul li span.page-numbers{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:40px!important;height:40px!important;padding:0 10px!important;
    background:transparent!important;border:1px solid var(--ap-border2)!important;border-radius:var(--ap-rx)!important;
    color:var(--ap-copper)!important;font-family:var(--ap-sans)!important;font-weight:600!important;font-size:14px!important;transition:all .15s!important}
.ap-shop-main .woocommerce-pagination ul li a.page-numbers:hover,.woocommerce nav.woocommerce-pagination ul li a.page-numbers:hover{background:var(--ap-copper)!important;border-color:var(--ap-copper)!important;color:var(--ap-ivory)!important}
.ap-shop-main .woocommerce-pagination ul li span.page-numbers.current,.woocommerce nav.woocommerce-pagination ul li span.page-numbers.current{background:var(--ap-copper)!important;border-color:var(--ap-copper)!important;color:var(--ap-ivory)!important}

/* WooCommerce hides the gallery until its flexslider JS runs — that JS never
   fires under block themes, so force it visible (the Ardentis PDP renders its
   own media panel, but keep this as a belt-and-braces rule). */
.single-product .woocommerce-product-gallery{opacity:1!important}

/* Filter pills on the shop archive are links (the static site uses buttons). */
.ap-filter a{display:inline-block;border:1px solid var(--ap-border2);background:transparent;color:var(--ap-ink2);font-family:var(--ap-sans);font-weight:600;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;border-radius:var(--ap-rx);padding:10px 16px;cursor:pointer;transition:all .15s;text-decoration:none}
.ap-filter a:hover{border-color:var(--ap-copper);color:var(--ap-copper)}
.ap-filter a.active{background:var(--ap-copper);border-color:var(--ap-copper);color:var(--ap-ivory)}

/* Cart / checkout / account page titles + generic-page content */
.ap-wc-page-title{font-family:var(--ap-serif);font-weight:400;color:var(--ap-ink);font-size:clamp(28px,4vw,44px);margin-bottom:22px}
.ap-shop-main .woocommerce h2,.ap-shop-main .woocommerce h3{font-family:var(--ap-serif);font-weight:400;color:var(--ap-ink)}
.wc-block-components-notice-banner,.woocommerce .wc-block-components-notice-banner{background:var(--ap-bg2)!important;border:1px solid var(--ap-border)!important;border-left:3px solid var(--ap-copper)!important;color:var(--ap-ink)!important;border-radius:8px}
.wc-block-components-notice-banner svg{fill:var(--ap-copper)!important}
.ap-entry{max-width:760px;color:var(--ap-muted);line-height:1.8;font-size:15px}
.ap-entry h1,.ap-entry h2,.ap-entry h3{font-family:var(--ap-serif);font-weight:400;color:var(--ap-ink);line-height:1.15;margin:1.4em 0 .5em}
.ap-entry h1:first-child,.ap-entry h2:first-child,.ap-entry h3:first-child{margin-top:0}
.ap-entry p{margin:0 0 1em}
.ap-entry a{color:var(--ap-copper)}
.ap-entry ul,.ap-entry ol{margin:0 0 1em 1.2em}
.ap-entry li{margin-bottom:.4em}

/* Generic buttons → copper */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.woocommerce #place_order,.wc-block-components-button,.wp-element-button{
    background:var(--ap-copper)!important;color:var(--ap-ivory)!important;border:none!important;
    border-radius:var(--ap-rx)!important;font-family:var(--ap-sans)!important;font-weight:600!important;
    font-size:12px!important;letter-spacing:.14em!important;text-transform:uppercase!important;
    padding:14px 26px!important;box-shadow:0 8px 24px rgba(184,115,51,.28);transition:background .2s,transform .15s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce #place_order:hover,.wp-element-button:hover{
    background:var(--ap-olive-h)!important;transform:translateY(-1px)}
.woocommerce a.added_to_cart{color:var(--ap-copper)!important;font-weight:600;margin-left:10px}

/* Prices, sale flashes, stars */
.woocommerce .price,.woocommerce span.amount,.woocommerce .woocommerce-Price-amount{color:var(--ap-ink)!important;font-weight:700}
.woocommerce del,.woocommerce del .amount{color:var(--ap-muted2)!important;font-weight:500}
.woocommerce ins,.woocommerce ins .amount{text-decoration:none;color:var(--ap-copper)!important}
.woocommerce span.onsale{background:var(--ap-teal)!important;color:var(--ap-ivory)!important;border-radius:4px;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;min-height:auto;min-width:auto;line-height:1;padding:6px 10px}
.woocommerce .star-rating span::before,.woocommerce .star-rating::before{color:var(--ap-gold)!important}
.woocommerce p.stars a{color:var(--ap-gold)!important}

/* Single product layout */
.single-product div.product{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(26px,4vw,56px);align-items:start;max-width:var(--ap-maxw);margin:0 auto}
.single-product div.product .woocommerce-product-gallery{background:radial-gradient(120% 100% at 50% 0%,var(--ap-bg3),var(--ap-bg2));border:1px solid var(--ap-border);border-radius:14px;padding:clamp(24px,3vw,48px)}
.single-product div.product .product_title{font-family:var(--ap-serif);font-weight:400;font-size:clamp(30px,4vw,46px);color:var(--ap-ink);line-height:1.05}
.single-product .woocommerce-product-details__short-description{color:var(--ap-muted);line-height:1.75;margin:14px 0}
.single-product .woocommerce-product-details__short-description .ap-pd-spec{color:var(--ap-muted2);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}
.single-product div.product p.price,.single-product div.product span.price{font-family:var(--ap-serif);font-size:30px;color:var(--ap-copper)!important;margin:8px 0 18px}
.single-product .quantity input.qty{background:var(--ap-bg2);border:1px solid var(--ap-border2);color:var(--ap-ink);border-radius:var(--ap-rx);padding:12px 8px;width:70px}
.single-product .product_meta{font-size:12.5px;color:var(--ap-muted);border-top:1px solid var(--ap-border);margin-top:22px;padding-top:16px}
.single-product .product_meta a{color:var(--ap-copper)}
.woocommerce-tabs ul.tabs{border:none!important;padding:0!important;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.woocommerce-tabs ul.tabs::before{border:none!important}
.woocommerce-tabs ul.tabs li{background:var(--ap-bg2)!important;border:1px solid var(--ap-border)!important;border-radius:var(--ap-rx)!important;margin:0!important}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{border:none!important;content:none!important;box-shadow:none!important}
.woocommerce-tabs ul.tabs li a{color:var(--ap-ink2)!important;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;padding:11px 18px!important}
.woocommerce-tabs ul.tabs li.active{background:var(--ap-copper)!important;border-color:var(--ap-copper)!important}
.woocommerce-tabs ul.tabs li.active a{color:var(--ap-ivory)!important}
.woocommerce-tabs .panel{color:var(--ap-muted);line-height:1.75}
.woocommerce-tabs .panel h2{font-family:var(--ap-serif);font-weight:400;color:var(--ap-ink);font-size:24px}

/* Related / upsells reuse the grid; heading */
.woocommerce .related > h2,.woocommerce .upsells > h2,.woocommerce .cart_totals h2,.woocommerce-cart-form + * h2{font-family:var(--ap-serif);font-weight:400;color:var(--ap-ink)}

/* Cart + checkout + account tables/forms */
.woocommerce table.shop_table,.woocommerce table.cart,.woocommerce .cart_totals table{background:var(--ap-bg2);border:1px solid var(--ap-border)!important;border-radius:12px;color:var(--ap-ink);border-collapse:separate;overflow:hidden}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--ap-border)!important;color:var(--ap-ink)}
.woocommerce table.shop_table thead th{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-muted)}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #order_review,.woocommerce-checkout #order_review_heading{color:var(--ap-ink)}
.woocommerce form .form-row label,.woocommerce-checkout label,.woocommerce-account label,.woocommerce-EditAccountForm label{color:var(--ap-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce #order_comments,.woocommerce input.input-text,.select2-container--default .select2-selection--single{
    background:var(--ap-bg2)!important;border:1px solid var(--ap-border2)!important;color:var(--ap-ink)!important;
    border-radius:var(--ap-rx)!important;padding:12px 14px!important;font-family:var(--ap-sans)!important}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--ap-ink)!important;line-height:1.6}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:var(--ap-copper)!important;box-shadow:0 0 0 3px rgba(184,115,51,.18)!important;outline:none}
.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-noreviews{background:var(--ap-bg2)!important;border-top:3px solid var(--ap-copper)!important;color:var(--ap-ink)!important;border-radius:8px;list-style:none}
.woocommerce-info::before,.woocommerce-message::before{color:var(--ap-copper)!important}
.woocommerce-MyAccount-navigation ul{list-style:none;display:flex;flex-direction:column;gap:4px}
.woocommerce-MyAccount-navigation li{border:1px solid var(--ap-border);border-radius:var(--ap-rx);margin:0}
.woocommerce-MyAccount-navigation li.is-active{background:var(--ap-bg2);border-color:var(--ap-copper)}
.woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;color:var(--ap-ink2);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:600}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--ap-copper)}

/* WooCommerce block cart/checkout text on the dark theme */
.wc-block-components-product-name,.wc-block-components-totals-item__label,.wc-block-cart__sidebar,.wc-block-components-order-summary{color:var(--ap-ink)}

@media(max-width:1024px){
    .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,1fr)}
    .single-product div.product{grid-template-columns:1fr}
}
@media(max-width:640px){
    .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr)}
}

/* =========================================================
   Single product (PDP) — media | summary, then research
   overview with the batch COA certificate beside it.
   ========================================================= */
.ar-single{max-width:var(--ap-maxw);margin:0 auto;padding:clamp(22px,3.5vw,40px) clamp(16px,4vw,40px) clamp(44px,6vw,72px)}
.ar-crumbs{display:flex;gap:9px;flex-wrap:wrap;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted2);margin-bottom:clamp(18px,3vw,30px)}
.ar-crumbs a:hover{color:var(--ap-copper)}
.ar-crumbs b{color:var(--ap-ink2);font-weight:600}
.ar-crumbs span{opacity:.5}

.ar-pdp{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(24px,4vw,56px);align-items:start}
.ar-pdp-media{position:relative;aspect-ratio:1/1;border:1px solid var(--ap-border);border-radius:14px;display:flex;align-items:center;justify-content:center;padding:clamp(28px,4vw,52px);overflow:hidden;
    background:radial-gradient(75% 65% at 50% 38%,rgba(184,115,51,.14),transparent 70%),var(--ap-bg2)}
.ar-pdp-media::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:
    radial-gradient(circle at 14% 18%, rgba(184,115,51,.14) 0 2px, transparent 3px),
    radial-gradient(circle at 86% 74%, rgba(201,143,79,.12) 0 2px, transparent 3px)}
.ar-pdp-media img,.ar-pdp-media svg{position:relative;max-height:72%;width:auto;filter:drop-shadow(0 22px 36px rgba(0,0,0,.45))}
/* Full-frame studio photos fill the media panel; badge + seal stay on top */
.ar-pdp-media img.ap-photo{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;filter:none}
.ar-pdp-badge{position:absolute;top:16px;left:16px;background:var(--ap-copper);color:var(--ap-ivory);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 11px;border-radius:4px;z-index:2}
.ar-pdp-seal{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:9px;background:rgba(11,15,20,.85);border:1px solid var(--ap-border);border-radius:8px;padding:9px 13px;color:var(--ap-copper);backdrop-filter:blur(4px)}
.ar-pdp-seal b{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-ink)}
.ar-pdp-seal small{display:block;font-size:10px;color:var(--ap-muted)}

.ar-pdp-sum .ap-eyebrow{margin-bottom:10px}
.ar-pdp-title{font-family:var(--ap-serif);font-weight:400;font-size:clamp(34px,4.6vw,54px);line-height:1.02;letter-spacing:-.5px;color:var(--ap-ink);margin:0 0 10px}
.ar-pdp-rating{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ap-muted);margin:0 0 14px}
.ar-pdp-rating b{color:var(--ap-ink2)}
.ar-stars{color:var(--ap-gold);letter-spacing:2px;font-size:13px}
.ar-pdp-price{font-family:var(--ap-serif);font-size:30px;color:var(--ap-ink);margin:0 0 14px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ar-pdp-price del{color:var(--ap-muted2);font-size:19px;text-decoration-color:rgba(184,115,51,.7)}
.ar-pdp-price ins{text-decoration:none}
.ar-pdp-price small{font-family:var(--ap-sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ap-muted);font-weight:600}
.ar-pdp-blurb{font-size:14.5px;line-height:1.75;color:var(--ap-muted);max-width:52ch;margin-bottom:18px}
.ar-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.ar-chip{font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-ink2);background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:4px;padding:7px 12px}

.ar-pdp-buy form.cart{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin:0}
.ar-pdp-buy .quantity{display:flex;margin:0;padding:0}
/* WooCommerce prints a .screen-reader-text label before the qty input. This
   plugin strips Woo's default CSS for block themes, so that label can lose its
   visually-hidden rule and sit as a real flex item, shoving the qty box ~20px
   right of the chips above it. Hide it here so the box always sits flush-left. */
.ar-pdp-buy .quantity label,.ar-pdp-buy .quantity .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ar-pdp-buy .quantity .qty{width:74px;background:var(--ap-bg2);border:1px solid var(--ap-border2);border-radius:6px;color:var(--ap-ink);font-family:var(--ap-sans);font-weight:600;font-size:14px;text-align:center;padding:14px 8px;margin:0}
.ar-pdp-buy .single_add_to_cart_button{position:relative;flex:1;min-width:220px;background:var(--ap-copper);color:var(--ap-ivory);border:none;border-radius:6px;padding:16px 28px;font-family:var(--ap-sans);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 24px rgba(184,115,51,.28);transition:background .2s,transform .15s,box-shadow .2s}
.ar-pdp-buy .single_add_to_cart_button:hover{background:var(--ap-olive-h);transform:translateY(-1px)}

/* Add-to-cart snackbar (transient toast; replaces WooCommerce's inline notice). */
.ard-toasts{position:fixed;z-index:9999;right:clamp(12px,3vw,28px);bottom:clamp(12px,3vw,28px);display:flex;flex-direction:column;gap:10px;max-width:min(92vw,380px);pointer-events:none}
.ard-toast{pointer-events:auto;display:flex;align-items:center;gap:12px;background:var(--ap-bg2);border:1px solid var(--ap-border);border-left:3px solid var(--ap-copper);border-radius:10px;padding:13px 15px;box-shadow:0 16px 42px rgba(0,0,0,.5);color:var(--ap-ink);font-size:13.5px;transform:translateY(14px);opacity:0;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .28s;cursor:pointer}
.ard-toast.in{transform:translateY(0);opacity:1}
.ard-toast.out{transform:translateY(8px);opacity:0}
.ard-toast-ic{flex:none;width:22px;height:22px;border-radius:50%;background:#2F7D54 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%23FAF8F5' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat center/13px}
.ard-toast-msg{flex:1;line-height:1.35;color:var(--ap-ink2)}
.ard-toast-msg b{font-weight:600;color:var(--ap-ink)}
.ard-toast-link{flex:none;color:var(--ap-copper);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.ard-toast-link:hover{color:var(--ap-taupe)}
@media(prefers-reduced-motion:reduce){.ard-toast{transition:opacity .2s}.ard-toast,.ard-toast.out{transform:none}}
@media(max-width:520px){.ard-toasts{left:12px;right:12px;bottom:12px;max-width:none}}

/* Variable products: the "Amount" selector stacks above the add-to-cart row. */
.ar-pdp-buy form.variations_form{display:flex;flex-direction:column;gap:16px;align-items:stretch}
.ar-pdp-buy .variations{width:100%;margin:0;border:0;border-collapse:collapse}
.ar-pdp-buy .variations tbody,.ar-pdp-buy .variations tr{display:flex;flex-direction:column;gap:8px;width:100%}
.ar-pdp-buy .variations th,.ar-pdp-buy .variations td{display:block;padding:0;border:0;background:none;text-align:left}
.ar-pdp-buy .variations th.label label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted)}
.ar-pdp-buy .variations td.value{position:relative}
.ar-pdp-buy .variations select{-webkit-appearance:none;appearance:none;width:100%;background:var(--ap-bg2);border:1px solid var(--ap-border2);color:var(--ap-ink);border-radius:6px;padding:15px 44px 15px 16px;font-family:var(--ap-sans);font-weight:600;font-size:14px;cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23B87333' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.ar-pdp-buy .variations select:focus{outline:none;border-color:var(--ap-copper)}
.ar-pdp-buy .reset_variations{display:inline-block;margin-top:2px;font-size:11.5px;color:var(--ap-muted);letter-spacing:.02em}
.ar-pdp-buy .reset_variations:hover{color:var(--ap-copper)}
.ar-pdp-buy .single_variation{margin-bottom:2px}
.ar-pdp-buy .single_variation .price{font-family:var(--ap-serif);font-weight:400;font-size:26px;color:var(--ap-ink)}
.ar-pdp-buy .single_variation .price del{font-size:16px;color:var(--ap-muted2);margin-right:8px}
.ar-pdp-buy .single_variation .price ins{text-decoration:none;color:var(--ap-ink)}
.ar-pdp-buy .single_variation .wc-availability,.ar-pdp-buy .single_variation .stock{font-size:12px;color:var(--ap-muted)}
.ar-pdp-buy .woocommerce-variation-add-to-cart{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}
.ar-pdp-buy .woocommerce-variation-add-to-cart.woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button{opacity:.45;cursor:not-allowed;box-shadow:none}

/* Add-to-cart success micro-interaction (driven by ardentis.js). On a confirmed
   add the button briefly swaps to a checkmark + "Added", pops, and glows. */
.ar-pdp-buy .single_add_to_cart_button.is-busy{cursor:progress;opacity:.9}
/* The broad ".woocommerce button.button.alt" rule above paints every Woo button
   copper with !important at specificity (0,3,1). The success state must outrank
   it, so these carry the .woocommerce ancestor (→ 0,4,0) AND !important. */
.woocommerce .ar-pdp-buy .single_add_to_cart_button.is-added{background:#2F7D54!important;box-shadow:0 10px 26px rgba(47,125,84,.34)!important;animation:ar-atc-pop .42s ease}
.woocommerce .ar-pdp-buy .single_add_to_cart_button.is-added:hover{background:#2F7D54!important;transform:none!important}
.ar-pdp-buy .single_add_to_cart_button.is-added::before{content:"";display:inline-block;width:15px;height:15px;margin-right:9px;vertical-align:-2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%23FAF8F5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat center/contain;animation:ar-atc-check .34s ease .04s both}
@keyframes ar-atc-pop{0%{transform:scale(1)}42%{transform:scale(1.035)}100%{transform:scale(1)}}
@keyframes ar-atc-check{from{opacity:0;transform:scale(.35)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){
    .ar-pdp-buy .single_add_to_cart_button.is-added{animation:none}
    .ar-pdp-buy .single_add_to_cart_button.is-added::before{animation:none}
}
.ar-single .price .woocommerce-Price-amount{color:inherit}
.ar-single span.onsale{display:none}

.ar-stockline{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ap-muted);margin:16px 0 0}
.ar-stockline .dot{width:8px;height:8px;border-radius:50%;background:var(--ap-copper);box-shadow:0 0 0 3px rgba(184,115,51,.18)}
.ar-fulfil{background:var(--ap-bg2);border:1px solid var(--ap-border);border-radius:10px;padding:13px 16px;font-size:12.5px;line-height:1.6;color:var(--ap-muted);margin:16px 0 0}
.ar-fulfil b{color:var(--ap-ink2)}
.ar-pdp-meta{display:flex;gap:18px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-muted2);margin:16px 0 0}

/* ── Research overview + COA certificate ── */
.ar-pdp-info{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(24px,4vw,56px);align-items:start;margin-top:clamp(40px,6vw,72px);padding-top:clamp(28px,4vw,44px);border-top:1px solid var(--ap-border)}
.ar-pdp-desc h2{font-family:var(--ap-serif);font-weight:400;font-size:clamp(24px,3vw,34px);color:var(--ap-ink);margin:10px 0 16px}
.ar-pdp-content p{font-size:14.5px;line-height:1.8;color:var(--ap-muted);margin:0 0 14px;max-width:62ch}
.ar-ruo{font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-muted2)!important;border-left:2px solid var(--ap-copper);padding-left:12px;margin-top:20px!important}

/* The certificate — ivory paper against the midnight page. */
.ar-coa{position:relative;background:var(--ap-ivory);color:var(--ap-midnight);border-radius:12px;padding:22px 22px 16px;box-shadow:0 24px 48px rgba(0,0,0,.5);overflow:hidden}
.ar-coa::before{content:'';position:absolute;inset:8px;border:1px solid rgba(184,115,51,.45);border-radius:8px;pointer-events:none}
.ar-coa::after{content:'';position:absolute;right:-34px;bottom:-40px;width:190px;height:190px;pointer-events:none;opacity:.07;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cg fill='%230B0F14'%3E%3Cpath d='M24 4 6 44h9l9-21.5Z'/%3E%3Cpath d='M26.5 9.5 41 44h-9l-8-19Z'/%3E%3Cpath d='M24 26.5l1.9 4.6 4.6 1.9-4.6 1.9-1.9 4.6-1.9-4.6-4.6-1.9 4.6-1.9Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.ar-coa-head{position:relative;display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:6px;border-bottom:1.5px solid rgba(11,15,20,.75)}
.ar-coa-head b{display:block;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.ar-coa-head small{display:block;font-size:10.5px;color:#6B675F;margin-top:2px}
.ar-coa-pass{margin-left:auto;background:var(--ap-teal);color:var(--ap-ivory);font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border-radius:3px}
.ar-coa-rows{position:relative;margin:0}
.ar-coa-rows > div{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:10px 0;border-bottom:1px dashed rgba(11,15,20,.18);font-size:13px}
.ar-coa-rows > div:last-child{border-bottom:none}
.ar-coa-rows dt{color:#6B675F;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.ar-coa-rows dd{margin:0;font-weight:600;text-align:right}
.ar-coa-rows dd.mono{font-family:ui-monospace,'SF Mono',Menlo,monospace;letter-spacing:.06em;font-size:12.5px}
.ar-coa-rows dd.good{color:var(--ap-teal)}
.ar-coa-foot{position:relative;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px;padding-top:12px;border-top:1.5px solid rgba(11,15,20,.75);font-size:10.5px;color:#6B675F}
.ar-coa-foot a{font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ap-copper)}
.ar-coa-foot a:hover{color:#9A5F28}

/* ── Related compounds ── */
.ar-pdp-related{margin-top:clamp(44px,6vw,72px)}
.ar-pdp-related h2{font-family:var(--ap-serif);font-weight:400;font-size:clamp(24px,3vw,34px);color:var(--ap-ink);margin:10px 0 22px}
.ar-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}

@media(max-width:1024px){
    .ar-pdp,.ar-pdp-info{grid-template-columns:1fr}
    .ar-related-grid{grid-template-columns:repeat(2,1fr)}
    .ar-pdp-media{max-width:560px}
}
@media(max-width:640px){
    .ar-related-grid{grid-template-columns:1fr 1fr;gap:12px}
    .ar-pdp-buy .single_add_to_cart_button{min-width:100%}
}

/* Neutralize WooCommerce's floated 48% product layout inside the PDP grid. */
.woocommerce div.product.ar-single div.summary,
div.product.ar-single div.summary{float:none;width:100%;margin:0;padding:0}
.woocommerce div.product.ar-single div.images,
div.product.ar-single div.images{float:none;width:100%;margin:0}
.woocommerce div.product.ar-single form.cart{margin:0}
.woocommerce div.product.ar-single form.cart div.quantity{float:none;margin:0}
.woocommerce div.product.ar-single p.price{margin:0 0 14px;color:var(--ap-ink)}
.woocommerce div.product.ar-single .woocommerce-product-details__short-description p{font-size:14.5px;line-height:1.75;color:var(--ap-muted)}

/* The legacy .single-product div.product grid expected Woo's two default
   children; the ar-single template manages its own layout sections. */
.single-product div.product.ar-single{display:block;grid-template-columns:none}
