/* Promerly Luxe v2 — storefront layer: typography, header, homepage, cards, shop filters, product page.
   Loaded after theme.css; colours come from the mode tokens defined there. */

:root{
  --serif:"Fraunces",Georgia,serif;
  --sans:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:16px; --r-lg:24px;
}

/* ---------- Typography ---------- */
body.pl{font-size:15px;line-height:1.6;letter-spacing:-.003em}
.pl h1,.pl h2,.pl h3,.pl h4{font-family:var(--serif);font-weight:500;font-optical-sizing:auto;letter-spacing:-.02em}
.pl h1 i,.pl h2 i,.pl h3 i,.pl h1 em,.pl h2 em{font-style:italic;font-weight:400;color:var(--or)}
.pl-eyebrow{font-size:11.5px;letter-spacing:.18em;color:var(--or);font-weight:800}
.pl-eyebrow b{color:var(--tx-3)}
.pl-sh{align-items:flex-end;margin-bottom:28px;gap:20px}
.pl-sh h2,.pl-h2,.pl-deals h2{font-size:clamp(28px,2.8vw,40px)!important;line-height:1.1!important;letter-spacing:-.02em;margin-top:6px}
.pl-sec{padding-top:88px}
.pl-sec-tight{padding-top:64px}
.pl-lead{color:var(--tx-2);font-size:17px;line-height:1.6;max-width:520px}
.pl-ulink{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:var(--tx);border-bottom:1.5px solid currentColor;padding-bottom:2px;transition:color .2s,gap .2s}
.pl-ulink svg{width:15px;height:15px}
.pl-ulink:hover{color:var(--or);gap:10px}
.pl-btn{padding:14px 24px;font-size:14px;border-radius:12px}
.pl .button,.pl button.button,.pl a.button,.pl .single_add_to_cart_button{border-radius:12px!important}

/* ---------- Announcement bar ---------- */
.pl-bar{padding:0;font-size:12.5px}
.pl-bar-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:38px;gap:16px}
.pl-bar-side{display:flex;align-items:center;gap:6px;color:var(--bar-tx);opacity:.85;font-weight:600;white-space:nowrap}
.pl-bar-side svg{width:14px;height:14px}
.pl-bar-side:hover{opacity:1}
.pl-bar-r{justify-content:flex-end;gap:18px}
.pl-ticker{position:relative;height:38px;min-width:340px;text-align:center;overflow:hidden}
.pl-ticker span{position:absolute;inset:0;display:grid;place-items:center;white-space:nowrap;opacity:0;transform:translateY(100%);transition:opacity .5s,transform .6s var(--ease)}
.pl-ticker span.on{opacity:1;transform:none}
.pl-ticker span.out{opacity:0;transform:translateY(-100%)}

/* ---------- Header ---------- */
.pl-hd{background:var(--bg);border-bottom:1px solid var(--line)}
.pl-hd.solid{background:var(--glass)}
.pl-hd-in{display:flex!important;align-items:center;gap:28px;height:76px}
.pl-logo-svg{height:34px}
.pl-sfield{flex:1;max-width:620px;margin:0 auto;display:flex;align-items:center;gap:12px;height:48px;padding:0 10px 0 18px;border-radius:14px;border:1px solid var(--line-2);background:var(--s1);color:var(--tx-3);font-size:14px;cursor:text;text-align:left;transition:border-color .2s,background .2s}
.pl-sfield:hover{border-color:var(--tx-3);background:var(--s2)}
.pl-sfield svg{width:18px;height:18px;flex:none}
.pl-sfield span{flex:1}
.pl-sfield kbd{font-family:inherit;font-size:11px;font-weight:700;border:1px solid var(--line-2);border-radius:6px;padding:3px 7px;color:var(--tx-3)}
.pl-hd-r{gap:2px;margin-left:auto}
.pl-ib-l{width:auto;padding:0 10px;border-radius:12px;gap:10px;display:flex;align-items:center;height:48px}
.pl-ib-l>span:last-child{display:flex;flex-direction:column;line-height:1.15;font-size:13.5px;font-weight:700;color:var(--tx);text-align:left}
.pl-ib-l small{font-size:11px;font-weight:600;color:var(--tx-3)}
.pl-cartlink .pl-cart-count{top:4px;left:24px;right:auto}
.pl-cart-total{font-weight:800}
.pl-cart-total .amount{color:inherit}
.pl-srch-m{display:none}
.pl-catbar{border-top:1px solid var(--line);transition:max-height .35s var(--ease),opacity .25s;max-height:60px}
.pl-hd.solid .pl-catbar{max-height:0;opacity:0;overflow:hidden;border-top-color:transparent}
.pl-hd.solid:hover .pl-catbar,.pl-hd.solid:focus-within .pl-catbar{max-height:60px;opacity:1;overflow:visible}
.pl-catbar-in{display:flex;align-items:center;gap:18px;height:50px}
.pl-allcats{position:relative}
.pl .pl-allcats-btn{display:flex;align-items:center;gap:9px;height:36px;padding:0 14px;border-radius:10px;border:0;background:var(--tx);color:var(--bg);font-weight:700;font-size:13.5px;cursor:pointer}
.pl-allcats-btn svg{width:16px;height:16px}
.pl-allcats-btn svg:last-child{width:14px;height:14px;transition:transform .25s}
.pl-allcats.on .pl-allcats-btn svg:last-child{transform:rotate(180deg)}
.pl-catlinks{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;flex:1}
.pl-catlinks::-webkit-scrollbar{display:none}
.pl-catlinks a{padding:8px 12px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--tx-2);white-space:nowrap;transition:color .2s,background .2s}
.pl-catlinks a:hover{color:var(--tx);background:var(--s1)}
.pl-deal{display:inline-flex;align-items:center;gap:6px;color:var(--or)!important;margin-left:auto}
.pl-deal svg{width:15px;height:15px}
.pl-mega{position:absolute;top:calc(100% + 10px);left:0;width:min(860px,calc(100vw - 64px));display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;padding:14px;border-radius:20px;background:var(--bg-2);border:1px solid var(--line-2);box-shadow:0 40px 80px -30px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .3s var(--ease),visibility .3s;z-index:130}
.pl-allcats.on .pl-mega{opacity:1;visibility:visible;transform:none}
.pl-mega-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.pl-mega-it{display:flex;align-items:center;gap:12px;padding:8px;border-radius:12px;transition:background .15s}
.pl-mega-it:hover{background:var(--s1)}
.pl-mega-it .im{width:46px;height:46px;border-radius:10px;background:var(--plinth);overflow:hidden;flex:none}
.pl-mega-it img{width:100%;height:100%;object-fit:cover}
.pl-mega-it b{display:block;font-size:14px;font-weight:700}
.pl-mega-it small{font-size:12px;color:var(--tx-3)}
.pl-mega-promo{border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:6px;justify-content:flex-end;background:linear-gradient(160deg,var(--or),#b8360a);color:#fff;min-height:200px}
.pl-mega-promo small{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.pl-mega-promo b{font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.1}
.pl-mega-promo span{display:flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;margin-top:8px}
.pl-mega-promo svg{width:15px;height:15px}
.pl-mmenu a{font-family:var(--serif);font-size:30px;display:flex;justify-content:space-between;align-items:baseline}
.pl-mmenu a small{font-family:var(--sans);font-size:13px;color:var(--tx-3)}
.pl-mmenu .pl-deal{margin:0}
.pl-search-pop{width:min(700px,100%);display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;font-size:13px;color:var(--tx-3)}
.pl-search-pop a{padding:6px 12px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line-2);color:var(--tx-2);font-weight:600}
.pl-search-pop a:hover{color:var(--tx);border-color:var(--tx-3)}

/* ---------- Hero (bento) ---------- */
.pl-hero2{padding:24px 0 0}
.pl-bento{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);grid-template-rows:1fr 1fr;gap:16px}
.pl-hb-main{grid-row:1/3;position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:20px;padding:56px 48px;border-radius:var(--r-lg);overflow:hidden;isolation:isolate;background:var(--s1);border:1px solid var(--line);min-height:540px}
.pl-hb-main::before{content:"";position:absolute;right:-10%;top:-20%;width:70%;height:140%;background:radial-gradient(closest-side,var(--glow),transparent);z-index:-1}
.pl-hb-copy h1{font-size:clamp(40px,4.6vw,68px);line-height:1.02;margin:16px 0 18px;letter-spacing:-.03em}
.pl-hb-copy .pl-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.pl-hb-stats{display:flex;gap:28px;list-style:none;padding:0;margin:36px 0 0;border-top:1px solid var(--line);padding-top:22px}
.pl-hb-stats li{font-size:12.5px;color:var(--tx-3);display:flex;flex-direction:column}
.pl-hb-stats b{font-family:var(--serif);font-weight:500;font-size:24px;color:var(--tx);letter-spacing:-.01em}
.pl-hb-art{position:relative;height:100%;min-height:400px}
.pl-hb-p{position:absolute;width:58%;aspect-ratio:1;border-radius:20px;overflow:hidden;background:var(--plinth);box-shadow:0 30px 60px -24px rgba(0,0,0,.55);transition:transform .6s var(--ease)}
.pl-hb-p img{width:100%;height:100%;object-fit:cover}
.pl-hb-p>span{position:absolute;left:10px;bottom:10px;padding:5px 10px;border-radius:999px;background:var(--glass);color:var(--glass-tx);font-size:12.5px;font-weight:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.pl-hb-p.p0{left:30%;top:4%;z-index:3;transform:rotate(3deg)}
.pl-hb-p.p1{left:0;top:38%;z-index:2;transform:rotate(-6deg);width:50%}
.pl-hb-p.p2{left:46%;top:56%;z-index:1;transform:rotate(7deg);width:46%}
.pl-hb-main:hover .pl-hb-p.p0{transform:rotate(0) translateY(-6px)}
.pl-hb-main:hover .pl-hb-p.p1{transform:rotate(-3deg) translateX(-6px)}
.pl-hb-main:hover .pl-hb-p.p2{transform:rotate(4deg) translateX(6px)}
.pl-hb-tile{position:relative;display:flex;align-items:center;gap:12px;padding:26px;border-radius:var(--r-lg);overflow:hidden;background:var(--s1);border:1px solid var(--line);transition:border-color .25s,transform .35s var(--ease)}
.pl-hb-tile:hover{border-color:var(--line-2);transform:translateY(-3px)}
.pl-hb-tile.t1{background:linear-gradient(150deg,var(--warm),var(--s1) 70%)}
.pl-hb-tx{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;max-width:55%}
.pl-hb-tx small{font-size:12px;color:var(--tx-3);font-weight:700}
.pl-hb-tx b{font-family:var(--serif);font-weight:500;font-size:28px;line-height:1.05;letter-spacing:-.02em}
.pl-hb-tx .pl-ulink{align-self:flex-start;margin-top:8px;font-size:13px}
.pl-hb-im{position:absolute;right:18px;top:50%;width:44%;aspect-ratio:1;transform:translateY(-50%) rotate(4deg);border-radius:16px;overflow:hidden;background:var(--plinth);box-shadow:0 20px 40px -18px rgba(0,0,0,.5);transition:transform .5s var(--ease)}
.pl-hb-tile:hover .pl-hb-im{transform:translateY(-50%) rotate(0) scale(1.04)}
.pl-hb-im img{width:100%;height:100%;object-fit:cover}
.pl-trust{margin-top:16px;border:0}
.pl-trust-in{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-2)}

/* ---------- Category tiles ---------- */
.pl-cats{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px}
.pl-cat{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.pl-cat .im{width:100%;aspect-ratio:1;border-radius:20px;overflow:hidden;background:var(--plinth);margin-bottom:8px;border:1px solid var(--line);transition:transform .4s var(--ease),box-shadow .3s}
.pl-cat img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.pl-cat:hover .im{transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(0,0,0,.5)}
.pl-cat:hover img{transform:scale(1.06)}
.pl-cat b{font-size:14px;font-weight:700}
.pl-cat small{font-size:12px;color:var(--tx-3)}

/* ---------- Tabs ---------- */
.pl-tabs{gap:6px;flex-wrap:wrap}
.pl-tab{padding:9px 16px;border-radius:999px;border:1px solid var(--line-2);background:none;color:var(--tx-2);font-weight:700;font-size:13.5px;cursor:pointer;transition:.2s}
.pl-tab:hover{color:var(--tx);border-color:var(--tx-3)}
.pl-tab.on{background:var(--tx);color:var(--bg);border-color:var(--tx)}
.pl-tabpanel{animation:pl-tabin .45s var(--ease)}
@keyframes pl-tabin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.pl-more{display:flex;justify-content:center;margin-top:36px}

/* ---------- Product cards ---------- */
.pl-grid,.pl ul.products{gap:32px 18px}
.pl-card{gap:12px}
.pl-media{position:relative;border-radius:var(--r);overflow:hidden;background:var(--plinth)}
.pl-fr{aspect-ratio:1/1!important;border:0;border-radius:0;background:var(--plinth)}
.pl-fr::before{display:none}
.pl-pl,.pl-card:hover .pl-pl{inset:0!important;border-radius:0;background:none}
.pl-pl img{object-fit:cover!important;padding:0!important;mix-blend-mode:normal!important}
.pl-card:hover .pl-pl img{transform:scale(1.04)}
.pl-badges{position:absolute;top:12px;left:12px;z-index:3;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.pl-tag{position:static;font-size:11.5px;padding:4px 9px;border-radius:8px}
.pl-tag-new{background:var(--tx);color:var(--bg)}
.pl-card-tools{top:12px;right:12px;gap:6px}
.pl-wish,.pl-qv{width:36px;height:36px;background:rgba(255,255,255,.92);color:#17140f;box-shadow:0 4px 14px -4px rgba(0,0,0,.25)}
.pl-wish.on svg{fill:var(--or);stroke:var(--or)}
.pl-add{left:10px!important;right:10px!important;bottom:10px!important;height:42px!important;justify-content:center;border-radius:12px!important;background:var(--tx)!important;color:var(--bg)!important;font-size:13.5px!important;box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}
.pl-add:hover{background:var(--or)!important;color:#fff!important}
.pl-mt{padding:0 2px;display:flex;flex-direction:column;gap:4px}
.pl-mt-cat{font-size:11px!important;font-weight:700;letter-spacing:.14em!important;text-transform:uppercase;color:var(--tx-3)}
.pl-mt h3{font-family:var(--sans)!important;font-size:14.5px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:-.005em!important;margin:0!important;min-height:2.8em}
.pl-mt h3 a:hover{color:var(--or)}
.pl-mt .pl-pr{position:static;font-size:16px;font-weight:800;color:var(--tx);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:2px}
.pl-mt .pl-pr del{order:2;font-size:13px;font-weight:500;color:var(--tx-3);margin:0;display:inline!important}
.pl-mt .pl-pr ins{order:1;color:var(--or);text-decoration:none}
.pl-stars{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--tx-3)}
.pl-stars span{--r:0;position:relative;display:inline-block;font-size:13px;letter-spacing:2px;line-height:1}
.pl-stars span::before{content:"★★★★★";color:var(--line-2)}
.pl-stars span::after{content:"★★★★★";position:absolute;left:0;top:0;width:calc(var(--r) / 5 * 100%);overflow:hidden;color:#f5b301;white-space:nowrap}
.pl-stock{font-size:12px;font-weight:700;color:var(--tx-3)}
.pl-stock.low{color:var(--or)}
.pl-stock.out{color:var(--err)}

/* ---------- Promos / feature / FAQ ---------- */
.pl-promos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pl-promo{position:relative;display:flex;flex-direction:column;gap:8px;padding:40px;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);min-height:260px;justify-content:flex-end}
.pl-promo small{font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.pl-promo>b{font-family:var(--serif);font-weight:500;font-size:clamp(28px,2.6vw,38px);line-height:1.08;letter-spacing:-.02em}
.pl-promo p{margin:0;opacity:.8}
.pl-promo-code{background:linear-gradient(150deg,var(--or),#a7320a);color:#fff;border:0}
.pl-promo-code .pl-code{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.45);align-self:flex-start;margin-top:12px}
.pl-promo-code .pl-code b{color:#fff}
.pl-promo-code .pl-code button{background:#fff;color:#a7320a}
.pl-promo-gift{background:linear-gradient(150deg,var(--warm),var(--s1) 75%)}
.pl-promo-gift small{color:var(--or)}
.pl-promo-gift .pl-ulink{align-self:flex-start;margin-top:12px}
.pl-promo-gift:hover .pl-ulink{color:var(--or)}
.pl-feat{border-radius:var(--r-lg)}
.pl-feat-img{min-height:500px;background:var(--plinth)}
.pl-feat-img img{object-fit:cover;padding:0;mix-blend-mode:normal}
.pl-feat-img .lbl{border-radius:8px;font-size:11px}
.pl-feat-tx{padding:56px 52px;gap:16px}
.pl-feat-tx h3{font-size:clamp(28px,2.8vw,40px);line-height:1.1}
.pl-feat-pr{font-size:26px}
.pl-feat-pr ins{color:var(--or)}
.pl-ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 18px}
.pl-ticks li{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--tx-2)}
.pl-ticks svg{width:16px;height:16px;color:var(--ok);flex:none}
.pl-ticks-col{flex-direction:column;align-items:flex-start;gap:10px;margin:8px 0 18px}
.pl-finder{border-radius:var(--r-lg)}
.pl-fq h3{font-size:clamp(30px,3vw,42px)}
.pl-faq-w{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
.pl-faq-w>div:first-child{display:flex;flex-direction:column;gap:14px;align-items:flex-start;position:sticky;top:120px}
.pl-faq-w .pl-btn svg{width:17px;height:17px}
.pl-faq{border-top:1px solid var(--line)}
.pl-faq details{border-bottom:1px solid var(--line)}
.pl-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 2px;font-weight:700;font-size:16px}
.pl-faq summary::-webkit-details-marker{display:none}
.pl-faq summary::after{content:"+";font-family:var(--sans);font-size:22px;font-weight:400;color:var(--tx-3);transition:transform .3s var(--ease)}
.pl-faq details[open] summary::after{transform:rotate(45deg);color:var(--or)}
.pl-faq p{margin:0 0 22px;color:var(--tx-2);max-width:620px}
.pl-news{border-radius:var(--r-lg)}
.pl-news h2{font-size:clamp(34px,4vw,56px)!important;line-height:1.05!important}

/* ---------- Footer ---------- */
.pl-ft{margin-top:100px;background:var(--bg-2)}
.pl-giant{font-size:clamp(70px,15vw,220px);margin:56px 0 24px}

/* ---------- Shop: layout + filters ---------- */
.pl-wc{padding-top:28px}
.pl-arch-head{margin-bottom:28px}
.pl-arch-head h1{font-size:clamp(34px,3.6vw,52px);line-height:1.05;margin:8px 0 0}
.pl-arch-desc{margin-top:10px;max-width:720px}
.pl-shop{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;align-items:start}
.pl-side{position:sticky;top:110px;display:flex;flex-direction:column;gap:6px;max-height:calc(100vh - 130px);overflow:auto;scrollbar-width:thin;padding-right:6px}
.pl-side-hd{display:none}
.pl-fgroup{padding:16px 0;border-bottom:1px solid var(--line)}
.pl-fgroup:first-of-type{padding-top:0}
.pl-fgroup h4{font-family:var(--sans)!important;font-size:12px!important;font-weight:800!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--tx-3)!important;margin:0 0 10px!important}
.pl-fopt{display:flex;align-items:center;gap:10px;padding:7px 4px;border-radius:8px;font-size:14px;font-weight:600;color:var(--tx-2);transition:color .15s,background .15s}
.pl-fopt:hover{color:var(--tx);background:var(--s1)}
.pl-fopt small{margin-left:auto;font-size:12px;color:var(--tx-3);font-weight:600}
.pl-fopt i{width:18px;height:18px;flex:none;border:1.5px solid var(--line-2);border-radius:50%;display:grid;place-items:center;transition:.15s}
.pl-check i{border-radius:5px}
.pl-check i svg{width:12px;height:12px;opacity:0;color:#fff}
.pl-fopt.on{color:var(--tx)}
.pl-fopt.on i{border-color:var(--or);background:var(--or);box-shadow:inset 0 0 0 3px var(--bg)}
.pl-check.on i{box-shadow:none}
.pl-check.on i svg{opacity:1}
.pl-prange{display:flex;align-items:center;gap:6px;margin-top:10px}
.pl .pl-prange input{width:100%;min-width:0;padding:9px 10px!important;border-radius:9px!important;font-size:13.5px}
.pl-prange span{color:var(--tx-3)}
.pl-prange button{flex:none;width:38px;height:38px;border-radius:9px;border:0;background:var(--tx);color:var(--bg);display:grid;place-items:center;cursor:pointer}
.pl-prange button svg{width:15px;height:15px}
.pl-side-help{display:flex;gap:12px;margin-top:14px;padding:16px;border-radius:14px;background:var(--s1);font-size:12.5px;color:var(--tx-3)}
.pl-side-help svg{width:22px;height:22px;color:var(--ok);flex:none}
.pl-side-help b{display:block;color:var(--tx);font-size:13.5px}
.pl-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.pl-filter-btn{display:none;padding:10px 14px;font-size:13.5px}
.pl-filter-btn svg{width:16px;height:16px}
.pl-filter-btn span{min-width:20px;height:20px;border-radius:999px;background:var(--or);color:#fff;font-size:11px;display:grid;place-items:center}
.pl-count{margin:0;color:var(--tx-3);font-size:14px}
.pl-count b{color:var(--tx)}
.pl-pills{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.pl-pills a{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--s2);font-size:12.5px;font-weight:700;color:var(--tx)}
.pl-pills a svg{width:12px;height:12px}
.pl-pills a:hover{background:var(--s3)}
.pl-pills .pl-pills-x{background:none;color:var(--tx-3);text-decoration:underline}
.pl-tb-r{margin-left:auto;display:flex;align-items:center;gap:10px}
.pl-sort label{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--tx-3)}
.pl .pl-sort select{border-radius:10px;padding:9px 34px 9px 12px}
.pl-dens{display:flex;border:1px solid var(--line-2);border-radius:10px;overflow:hidden}
.pl-dens button{width:38px;height:36px;display:grid;place-items:center;background:none;border:0;color:var(--tx-3);cursor:pointer}
.pl-dens button svg{width:17px;height:17px}
.pl-dens button.on{background:var(--s2);color:var(--tx)}
.pl-shop-main ul.products{grid-template-columns:repeat(var(--cols,4),minmax(0,1fr))!important}
.pl-shop[data-cols="3"] .pl-shop-main ul.products{--cols:3}
.pl-noresults{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 20px;text-align:center;border:1px dashed var(--line-2);border-radius:var(--r-lg)}
.pl-noresults b{font-family:var(--serif);font-weight:500;font-size:26px}
.pl .woocommerce-no-products-found .woocommerce-info{margin:0}
.pl nav.woocommerce-pagination ul li a,.pl nav.woocommerce-pagination ul li span{border-radius:10px!important}

/* ---------- Product page ---------- */
.pl-crumbs{margin-bottom:18px}
.pl-wc-single{padding-top:22px}
.pl div.product{gap:56px}
.pl div.product .woocommerce-product-gallery{top:130px}
.pl div.product .woocommerce-product-gallery__wrapper{border-radius:var(--r-lg);background:var(--plinth);border:1px solid var(--line)}
.pl div.product .woocommerce-product-gallery__image img{padding:0!important;mix-blend-mode:normal;object-fit:contain;max-height:none;aspect-ratio:1;width:100%;background:var(--plinth)}
.pl div.product .flex-control-thumbs{gap:8px;flex-wrap:wrap}
.pl div.product .flex-control-thumbs li{width:68px!important}
.pl div.product .flex-control-thumbs img{padding:0;border-radius:10px;aspect-ratio:1;object-fit:cover}
.pl div.product .woocommerce-product-gallery__trigger{background:rgba(255,255,255,.92)!important;color:#17140f}
.pl div.product .summary{gap:16px}
.pl div.product .product_title{font-size:clamp(28px,2.6vw,38px)!important;line-height:1.12!important;font-weight:500}
.pl div.product .woocommerce-product-rating{display:flex;align-items:center;gap:8px;margin:0;font-size:13px}
.pl div.product .star-rating{color:#f5b301}
.pl div.product p.price{font-size:28px!important;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pl div.product p.price ins{order:1;color:var(--or)}
.pl div.product p.price del{order:2}
.pl-save{align-self:flex-start;margin-top:-8px;padding:4px 10px;border-radius:8px;background:rgba(255,91,31,.14);color:var(--or);font-weight:800;font-size:12.5px}
.pl div.product .woocommerce-product-details__short-description{font-size:15px;line-height:1.7;border-top:1px solid var(--line);padding-top:16px}
.pl div.product form.cart{padding:18px;border-radius:18px;background:var(--bg-2);border:1px solid var(--line)}
.pl div.product form.cart .single_add_to_cart_button{border-radius:12px!important;height:52px;padding:0 26px!important}
.pl div.product form.cart .quantity{display:flex;align-items:center;border:1px solid var(--line-2);border-radius:12px;height:52px;overflow:hidden;background:var(--s1)}
.pl div.product form.cart .quantity .qty{width:46px;border:0!important;background:none!important;border-radius:0!important;padding:0!important;height:100%;-moz-appearance:textfield;font-weight:800}
.pl div.product form.cart .quantity .qty::-webkit-inner-spin-button,.pl div.product form.cart .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pl-qbtn{width:40px;height:100%;border:0;background:none;color:var(--tx-2);cursor:pointer;display:grid;place-items:center}
.pl-qbtn:hover{color:var(--tx);background:var(--s2)}
.pl-qbtn svg{width:15px;height:15px}
.pl div.product .pl-wish-lg{height:52px;width:52px;border-radius:12px}
.pl-perks{border-radius:16px}
.pl-perks>div{background:var(--bg-2)}
.pl-paylist{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;color:var(--tx-3)}
.pl-paylist span{display:inline-flex;align-items:center;gap:6px;font-weight:700;margin-right:4px}
.pl-paylist svg{width:14px;height:14px;color:var(--ok)}
.pl-paylist i{font-style:normal;border:1px solid var(--line-2);border-radius:6px;padding:3px 8px;font-size:10.5px;font-weight:800;letter-spacing:.04em;color:var(--tx-2)}
.pl div.product .woocommerce-tabs{margin-top:64px}
.pl div.product .woocommerce-tabs ul.tabs{gap:4px;border-bottom:1px solid var(--line)!important;margin-bottom:0!important}
.pl div.product .woocommerce-tabs ul.tabs li,.pl div.product .woocommerce-tabs ul.tabs li.active{border:0!important;border-radius:0!important;background:none!important}
.pl div.product .woocommerce-tabs ul.tabs li a{padding:14px 18px!important;color:var(--tx-3)!important;border-bottom:2px solid transparent;margin-bottom:-1px;display:block}
.pl div.product .woocommerce-tabs ul.tabs li.active a{color:var(--tx)!important;border-bottom-color:var(--or)}
.pl div.product .woocommerce-Tabs-panel{border:0;background:none;border-radius:0;padding:30px 0!important;max-width:860px;font-size:15.5px;line-height:1.75}
.pl div.product .woocommerce-Tabs-panel h2{font-size:26px}
.pl div.product .woocommerce-Tabs-panel img{display:block;width:auto!important;max-width:min(100%,560px)!important;height:auto!important;margin:18px 0;border-radius:14px}
.pl div.product .woocommerce-Tabs-panel table{width:100%;border-collapse:collapse}
.pl div.product .woocommerce-Tabs-panel th,.pl div.product .woocommerce-Tabs-panel td{padding:12px 14px!important;border-bottom:1px solid var(--line);text-align:left;background:none}
.pl div.product .related>h2,.pl div.product .upsells>h2,.pl-recent h2{font-size:clamp(26px,2.6vw,36px)!important}

/* ---------- v2 fixes ---------- */
.pl-hb-copy .pl-lead{margin:0}
.pl-hb-copy .pl-cta{justify-content:flex-start}
.pl-mt .pl-pr span,.pl-mt .pl-pr bdi{font-size:inherit!important;letter-spacing:0!important;text-transform:none!important;font-weight:inherit!important;color:inherit!important}
.pl-trust{padding:0 32px}
.pl-trust-in{max-width:1296px;padding:0}
.pl div.product .woocommerce-product-gallery{position:sticky!important;top:130px}
.pl div.product .pl-wish-lg{background:var(--s1);color:var(--tx);border:1px solid var(--line-2);box-shadow:none}
.pl div.product .woocommerce-Tabs-panel img{display:inline-block;vertical-align:top;max-width:min(100%,410px)!important;margin:8px 12px 8px 0}
.pl-hb-p>span .amount{color:inherit}
#cfw-side-cart-floating-button{display:none!important}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .pl-cats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pl-bento{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto}
  .pl-hb-main{grid-row:auto;grid-column:1/-1}
  .pl-shop{grid-template-columns:220px minmax(0,1fr);gap:28px}
  .pl-shop-main ul.products{--cols:3}
  .pl-sfield{max-width:none}
  .pl-catbar{display:none}
  .pl-faq-w{grid-template-columns:minmax(0,1fr);gap:24px}
  .pl-faq-w>div:first-child{position:static}
  .pl div.product .woocommerce-product-gallery{position:static!important;top:auto}
}
@media (max-width:900px){
  .pl-bar-side{display:none}
  .pl-bar-in{grid-template-columns:minmax(0,1fr)}
  .pl-ticker{min-width:0}
  .pl-hd-in{gap:10px;height:64px}
  .pl-sfield{display:none}
  .pl-srch-m{display:grid}
  .pl-ib-l{width:44px;padding:0;justify-content:center}
  .pl-cartlink .pl-cart-count{left:auto;right:3px}
  .pl-hb-main{grid-template-columns:minmax(0,1fr);padding:36px 24px;min-height:0}
  .pl-hb-art{min-height:300px}
  .pl-shop{grid-template-columns:minmax(0,1fr)}
  .pl-filter-btn{display:inline-flex}
  .pl-side{position:fixed;top:0;left:0;bottom:0;width:min(360px,88vw);max-height:none;z-index:130;background:var(--bg-2);padding:0 20px 30px;border-right:1px solid var(--line);transform:translateX(-102%);visibility:hidden;transition:transform .45s var(--ease),visibility .45s}
  .pl-side.on{transform:none;visibility:visible}
  .pl-side-hd{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--bg-2);padding:16px 0;margin-bottom:6px;border-bottom:1px solid var(--line);z-index:2}
  .pl-side-hd b{font-size:18px}
  .pl-dens{display:none}
  .pl-promos{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .pl-logo{margin-right:auto}
  .pl-trust{padding:0 18px}
  .pl-logo-svg{height:28px}
  .pl-hero2{padding-top:12px}
  .pl-bento{grid-template-columns:minmax(0,1fr)}
  .pl-hb-copy h1{font-size:38px}
  .pl-hb-stats{gap:18px}
  .pl-hb-stats b{font-size:19px}
  .pl-hb-tile{min-height:150px;padding:22px}
  .pl-cta{flex-direction:row;padding:0}
  .pl-cats{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:28%;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
  .pl-cats::-webkit-scrollbar{display:none}
  .pl-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:0;width:100%}
  .pl-grid,.pl ul.products,.pl-shop-main ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 12px}
  .pl-fr{aspect-ratio:1/1!important}
  .pl-pl{inset:0!important}
  .pl-mt .pl-pr{font-size:15px}
  .pl-mt .pl-pr del{display:inline!important}
  .pl-add{left:auto!important;right:8px!important;bottom:8px!important;width:38px!important;height:38px!important;padding:0!important;border-radius:10px!important}
  .pl-tag{top:auto;left:auto}
  .pl-badges{top:8px;left:8px}
  .pl-card-tools{top:8px;right:8px}
  .pl-wish,.pl-qv{width:32px;height:32px}
  .pl-mt h3{font-size:13.5px!important}
  .pl-sec{padding-top:64px}
  .pl-promo{padding:28px 22px;min-height:220px}
  .pl-feat-tx{padding:28px 22px}
  .pl-feat-img{min-height:320px}
  .pl-toolbar{gap:10px}
  .pl-sort label span{display:none}
  .pl div.product form.cart{padding:12px}
}

/* ---------- v2.1 options ---------- */
.pl-cmp{width:36px;height:36px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#17140f;cursor:pointer;box-shadow:0 4px 14px -4px rgba(0,0,0,.25);opacity:0;transition:opacity .3s,transform .2s,background .2s}
.pl-cmp svg{width:17px;height:17px}
.pl-cmp:hover{transform:scale(1.1)}
.pl-card:hover .pl-cmp,.pl-card:focus-within .pl-cmp,.pl-cmp.on{opacity:1}
.pl .pl-cmp.on{background:var(--or);color:#fff}
.pl-tag-best{background:#f5b301;color:#1a1300}
.pl div.product .pl-cmp-lg{opacity:1;width:52px;height:52px;border-radius:12px;background:var(--s1);color:var(--tx);border:1px solid var(--line-2);box-shadow:none;flex:none}
.pl div.product .pl-cmp-lg.on{background:var(--or);color:#fff;border-color:var(--or)}
.pl .pl-buynow{flex:1 1 100%;order:10;height:52px;border-radius:12px;border:0;background:var(--tx);color:var(--bg);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .2s,opacity .2s}
.pl-buynow svg{width:17px;height:17px}
.pl-buynow:hover{transform:translateY(-2px)}
.pl-buynow.loading{opacity:.6;pointer-events:none}
.pl div.product form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pl-countdown{display:flex;align-items:center;gap:8px;align-self:flex-start;padding:9px 14px;border-radius:12px;background:rgba(255,91,31,.1);border:1px solid rgba(255,91,31,.3);color:var(--or);font-size:13.5px;font-weight:600}
.pl-countdown svg{width:17px;height:17px}
.pl-countdown b{font-variant-numeric:tabular-nums;font-weight:800}
.pl-askwa{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:var(--bg-2);font-size:13px;color:var(--tx-3);transition:border-color .2s}
.pl-askwa:hover{border-color:#25d366}
.pl-askwa svg{width:22px;height:22px;color:#25d366;flex:none}
.pl-askwa b{display:block;color:var(--tx);font-size:14px}
.pl-cmpbar{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:104;display:flex;align-items:center;gap:14px;padding:10px 12px 10px 14px;border-radius:18px;background:var(--glass-2);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.pl-cmpbar[hidden]{display:none}
.pl-cmpbar-items{display:flex;gap:6px}
.pl-cmpbar-items span{position:relative;width:46px;height:46px;border-radius:10px;background:var(--plinth)}
.pl-cmpbar-items span.empty{background:none;border:1.5px dashed var(--line-2)}
.pl-cmpbar-items img{width:100%;height:100%;object-fit:cover;border-radius:10px}
.pl .pl-cmpbar-items button{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;border:0;background:var(--tx);color:var(--bg);font-size:13px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.pl-cmpbar .pl-btn svg{width:16px;height:16px}
.pl-cmp-box{width:min(1100px,100%);padding:30px}
.pl-cmp-box h3{font-size:30px;margin-bottom:18px}
.pl-cmp-scroll{overflow-x:auto}
.pl-cmp-t{width:100%;border-collapse:collapse;min-width:620px}
.pl-cmp-t th,.pl-cmp-t td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:14px}
.pl-cmp-t th{width:130px;color:var(--tx-3);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.pl-cmp-t thead td{border-bottom:0}
.pl-cmp-im{display:block;aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--plinth);margin-bottom:10px;max-width:200px}
.pl-cmp-im img{width:100%;height:100%;object-fit:cover}
.pl-cmp-n{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:700;margin-bottom:6px}
.pl-cmp-pr{font-size:17px}
.pl-cmp-pr del{color:var(--tx-3);font-weight:500;font-size:13px;margin-right:4px}
.pl-cmp-d{color:var(--tx-2);font-size:13px}
.pl-in{color:var(--ok);font-weight:700}
.pl-cmp-t .added_to_cart{display:none}
.pl-toast{position:fixed;right:20px;top:20px;z-index:200;width:min(340px,calc(100vw - 32px));padding:16px 18px;border-radius:16px;background:var(--bg-2);border:1px solid var(--line-2);box-shadow:0 30px 60px -20px rgba(0,0,0,.6);display:flex;flex-direction:column;gap:4px;font-size:13.5px;color:var(--tx-2);transform:translateY(-20px);opacity:0;visibility:hidden;transition:transform .4s var(--ease),opacity .3s,visibility .4s}
.pl-toast.on{transform:none;opacity:1;visibility:visible}
.pl-toast b{color:var(--tx);font-size:14.5px}
.pl-toast span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-toast div{display:flex;gap:8px;margin-top:10px}
.pl-toast a{flex:1;text-align:center;padding:10px;border-radius:10px;border:1px solid var(--line-2);font-weight:700;color:var(--tx)}
.pl-toast a.go{background:var(--or);border-color:var(--or);color:#fff}
.admin-bar .pl-toast{top:52px}
.pl .pl-totop{position:fixed;right:20px;bottom:96px;z-index:90;width:46px;height:46px;border-radius:50%;border:1px solid var(--line-2);background:var(--glass-2);color:var(--tx);display:grid;place-items:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s var(--ease);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.pl .pl-totop.on{opacity:1;visibility:visible;transform:none}
.pl-totop svg{width:20px;height:20px}
.pl-loadmore{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:48px;color:var(--tx-3);font-size:13.5px}
.pl-loadmore p{margin:0}
.pl-loadmore b{color:var(--tx)}
.pl-lm-bar{width:220px;height:3px;border-radius:3px;background:var(--line-2);overflow:hidden}
.pl-lm-bar i{display:block;height:100%;background:var(--or);transition:width .5s var(--ease)}
.pl-loadmore .pl-btn{min-width:200px}
.pl-df{padding:14px 24px;border-top:1px solid var(--line)}
.pl-df .pl-btn{width:100%}
.pl-df .pl-btn svg{width:16px;height:16px}
.pl-sr-recent{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pl-sr-recent span{width:100%;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.pl .pl-sr-recent button{padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);background:none;color:var(--tx-2);font-weight:600;cursor:pointer}
.pl .pl-sr-recent button:hover{color:var(--tx);border-color:var(--tx-3)}
.pl .pl-sr-recent button.x{border:0;text-decoration:underline;color:var(--tx-3)}
.pl-sr:focus{outline:0;background:var(--s2)}
section[data-pl-recent] .pl-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px) / 4);gap:18px;overflow-x:auto;scrollbar-width:none;padding-bottom:6px}
section[data-pl-recent] .pl-scroller::-webkit-scrollbar{display:none}
section[data-pl-recent][hidden]{display:none}
/* cookie notice from the consent plugin, as a compact card */
.pl .cookie-consent-banner{left:20px!important;right:auto!important;bottom:20px!important;top:auto!important;width:min(380px,calc(100vw - 40px))!important;padding:18px!important;border-radius:16px!important;background:var(--bg-2)!important;border:1px solid var(--line-2)!important;box-shadow:0 30px 60px -20px rgba(0,0,0,.6)!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;color:var(--tx-2)!important;font-family:var(--sans)!important}
.pl .cookie-consent-banner[style*="hidden"]{display:none!important}
.pl .cookie-consent-banner p{margin:0 0 6px!important;font-size:12.5px!important;line-height:1.5!important;color:var(--tx-2)!important;width:100%}
.pl .cookie-consent-banner__message2,.pl .cookie-consent-banner p br{display:none!important}
.pl .cookie-consent-banner__link{color:var(--tx)!important;text-decoration:underline!important}
.pl .cookie-consent-banner__button{flex:1!important;margin:0!important;padding:10px!important;border-radius:10px!important;font-weight:700!important;font-size:13px!important;border:1px solid var(--line-2)!important;background:none!important;color:var(--tx)!important;cursor:pointer}
.pl .cookie-consent-banner__button--accept{background:var(--or)!important;border-color:var(--or)!important;color:#fff!important}
@media (max-width:760px){
  .pl-cmp{opacity:1;width:32px;height:32px}
  .pl-cmpbar{bottom:92px;width:calc(100% - 20px);justify-content:space-between}
  .pl-cmpbar-items span{width:38px;height:38px}
  .pl-cmp-box{padding:22px 16px}
  .pl .pl-totop{bottom:150px;right:14px;width:42px;height:42px}
  .pl-toast{top:auto;bottom:96px;right:16px}
  section[data-pl-recent] .pl-scroller{grid-auto-columns:46%}
  .pl .cookie-consent-banner{bottom:90px!important;left:10px!important}
}

/* ---------- v2.2 cart ---------- */
.pl-wc-page .pl-content{max-width:none;color:var(--tx-2)}
.pl-cart-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.pl-cart-top .pl-page-title{margin:0!important;font-size:clamp(32px,3.4vw,48px)}
.pl-steps{display:flex;gap:6px;list-style:none;margin:0;padding:0;font-size:13px;font-weight:700;color:var(--tx-3)}
.pl-steps li{display:flex;align-items:center;gap:8px}
.pl-steps li+li::before{content:"";width:28px;height:1px;background:var(--line-2);margin-right:6px}
.pl-steps i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px;border:1.5px solid var(--line-2)}
.pl-steps i svg{width:13px;height:13px}
.pl-steps .on{color:var(--tx)}
.pl-steps .on i{background:var(--or);border-color:var(--or);color:#fff}
.pl-steps .done i{background:var(--ok);border-color:var(--ok);color:#fff}
.pl-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.pl-cart-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.pl-freeship{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;background:var(--bg-2);border:1px solid var(--line);margin-bottom:16px}
.pl-freeship>svg{width:24px;height:24px;color:var(--or);flex:none}
.pl-freeship div{flex:1}
.pl-freeship p{margin:0 0 8px;font-size:14px;color:var(--tx-2)}
.pl-freeship b{color:var(--tx)}
.pl-freeship span{display:block;height:6px;border-radius:6px;background:var(--line-2);overflow:hidden}
.pl-freeship i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--or),var(--or-2));transition:width .6s var(--ease)}
.pl-freeship.done>svg,.pl-freeship.done b{color:var(--ok)}
.pl-freeship.done i{background:var(--ok)}
.pl-cart-head{display:flex;justify-content:space-between;align-items:center;padding:0 4px 12px;border-bottom:1px solid var(--line);font-size:14px}
.pl-cart-head b{color:var(--tx);font-size:15px}
.pl-cart-head a{color:var(--tx-2);text-decoration:underline}
.pl-cart-head a:hover{color:var(--or)}
.pl-cart-items{display:flex;flex-direction:column;border:0!important;background:none!important;border-radius:0!important;overflow:visible!important}
.pl-ci{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:18px;padding:20px 4px;border-bottom:1px solid var(--line);align-items:start}
.pl-ci-im{width:110px;height:110px;border-radius:14px;overflow:hidden;background:var(--plinth);display:block}
.pl-ci-im img{width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important;margin:0!important}
.pl-ci-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.pl .pl-ci-name{font-weight:700;font-size:15px;color:var(--tx);text-decoration:none!important;line-height:1.4}
.pl .pl-ci-name:hover{color:var(--or)}
.pl-ci-info dl.variation{display:flex;flex-wrap:wrap;gap:4px 12px;margin:2px 0;font-size:12.5px;color:var(--tx-3)}
.pl-ci-info dl.variation dt{font-weight:600;margin:0}
.pl-ci-info dl.variation dd{margin:0}
.pl-ci-info dl.variation dd p{margin:0}
.pl-ci-unit{font-size:13px;color:var(--tx-3)}
.pl-ci-stock{display:flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--ok)}
.pl-ci-stock svg{width:14px;height:14px}
.pl-ci-act{display:flex;align-items:center;gap:14px;margin-top:10px;flex-wrap:wrap}
.pl-ci .quantity{display:flex;align-items:center;border:1px solid var(--line-2);border-radius:10px;height:40px;overflow:hidden;background:var(--s1)}
.pl .pl-ci .quantity .qty{width:42px;height:100%;border:0!important;background:none!important;border-radius:0!important;padding:0!important;text-align:center;font-weight:800;-moz-appearance:textfield}
.pl-ci .quantity .qty::-webkit-inner-spin-button,.pl-ci .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pl-ci .pl-qbtn{width:34px}
.pl .pl-ci-save,.pl .pl-ci-rm{display:inline-flex!important;align-items:center;gap:6px;background:none!important;border:0;padding:0;font-size:13px!important;font-weight:600;color:var(--tx-3)!important;cursor:pointer;width:auto!important;height:auto!important;line-height:1.4!important;border-radius:0!important;text-decoration:none}
.pl .pl-ci-save:hover{color:var(--or)!important}
.pl .pl-ci-rm:hover{color:var(--err)!important;background:none!important}
.pl-ci-save svg,.pl-ci-rm svg{width:14px;height:14px}
.pl-ci-sub{font-weight:800;font-size:16px;color:var(--tx);text-align:right;white-space:nowrap}
.pl-ci-sub del{display:block;font-size:12.5px;font-weight:500;color:var(--tx-3)}
.pl-cart-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 4px 0}
.pl-coupon{flex:1;max-width:460px}
.pl-coupon label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--tx-2);margin-bottom:8px}
.pl-coupon label svg{width:15px;height:15px;color:var(--or)}
.pl-coupon>div{display:flex;gap:8px}
.pl .pl-coupon input{flex:1;height:46px;border-radius:12px!important;padding:0 14px!important;width:auto!important}
.pl .pl-coupon button{height:46px;padding:0 20px!important}
.pl .pl-update{opacity:.7;padding:12px 18px!important;font-size:13px!important}
body.pl.woocommerce-js .pl-update{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden;clip:rect(0 0 0 0);padding:0!important}
.pl-cart-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:10px}
.pl-cart-trust>div{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-2);font-size:12.5px;color:var(--tx-3)}
.pl-cart-trust svg{width:22px;height:22px;color:var(--or);flex:none}
.pl-cart-trust b{display:block;color:var(--tx);font-size:13.5px}
.pl-cart-trust a{color:var(--tx-2);text-decoration:underline}
.pl-cart-side{position:sticky;top:130px;display:flex;flex-direction:column;gap:12px}
.pl-cart-side .cart-collaterals{width:100%}
.pl .pl-cart-side .cart_totals{width:100%!important;float:none!important;padding:24px;border-radius:20px;background:var(--bg-2);border:1px solid var(--line)}
.pl .pl-cart-side .cart_totals h2{font-family:var(--serif);font-size:24px!important;margin:0 0 14px}
.pl .pl-cart-side table.shop_table{border:0!important;border-radius:0!important;background:none!important;margin:0 0 16px!important}
.pl .pl-cart-side table.shop_table th,.pl .pl-cart-side table.shop_table td{padding:12px 0!important;border:0!important;border-bottom:1px solid var(--line)!important;background:none!important;font-size:14px;color:var(--tx-2)}
.pl .pl-cart-side table.shop_table td{text-align:right}
.pl .pl-cart-side .order-total th,.pl .pl-cart-side .order-total td{border-bottom:0!important;padding-top:16px!important;font-size:17px!important;color:var(--tx)!important;font-weight:800}
.pl .pl-cart-side .order-total .amount{font-size:22px}
.pl .pl-cart-side .woocommerce-shipping-totals td{font-size:13px}
.pl .pl-cart-side .woocommerce-shipping-methods{list-style:none;padding:0;margin:0}
.pl .pl-cart-side .shipping-calculator-button{color:var(--or)!important}
.pl .pl-cart-side .wc-proceed-to-checkout{padding:0!important;display:flex;flex-direction:column;gap:10px}
.pl .pl-cart-side .checkout-button{display:flex!important;align-items:center;justify-content:center;width:100%;height:54px;margin:0!important;font-size:15.5px!important;border-radius:12px!important}
.pl .pl-cart-side .cart-discount td,.pl .pl-cart-side .cart-discount th{color:var(--ok)!important}
.pl .pl-cart-side .woocommerce-remove-coupon{color:var(--tx-3)}
.pl-cart-secure{display:flex;flex-direction:column;align-items:center;gap:10px;padding:6px 0;font-size:12.5px;color:var(--tx-3)}
.pl-cart-secure>span{display:flex;align-items:center;gap:6px;font-weight:700}
.pl-cart-secure svg{width:14px;height:14px;color:var(--ok)}
.pl-cart-secure .pl-paylist{justify-content:center}
.pl-cart-more{margin-top:80px}
.pl-cart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:70px 20px;border:1px dashed var(--line-2);border-radius:24px}
.pl-cart-empty-ic{width:76px;height:76px;border-radius:50%;background:var(--s1);display:grid;place-items:center;color:var(--or);margin-bottom:6px}
.pl-cart-empty-ic svg{width:34px;height:34px}
.pl-cart-empty h2{font-size:32px}
.pl-cart-empty .pl-cta-row{justify-content:center;margin-top:10px}
.pl-cart-empty .pl-btn svg{width:17px;height:17px}
.pl .woocommerce-cart-form .blockUI.blockOverlay,.pl .cart_totals .blockUI.blockOverlay{background:var(--bg)!important;opacity:.5!important}
.pl .woocommerce-notices-wrapper{margin-bottom:12px}

/* ---------- v2.2 product page ---------- */
.pl-avail{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;font-weight:600;color:var(--tx-2)}
.pl-avail span{display:flex;align-items:center;gap:7px}
.pl-avail svg{width:16px;height:16px;color:var(--tx-3)}
.pl-avail .ok,.pl-avail .ok svg{color:var(--ok)}
.pl-fbt{grid-column:1/-1;margin-top:64px;padding:32px;border-radius:24px;background:var(--bg-2);border:1px solid var(--line)}
.pl-fbt-hd h2{font-size:clamp(24px,2.4vw,32px);margin-top:4px}
.pl-fbt-in{display:grid;grid-template-columns:auto minmax(0,1fr);gap:40px;align-items:center;margin-top:22px}
.pl-fbt-imgs{display:flex;align-items:center;gap:10px}
.pl-fbt-imgs a{width:140px;height:140px;border-radius:16px;overflow:hidden;background:var(--plinth);display:block;transition:opacity .25s,filter .25s}
.pl-fbt-imgs a.off{opacity:.3;filter:grayscale(1)}
.pl-fbt-imgs img{width:100%;height:100%;object-fit:cover}
.pl-fbt-imgs .plus{width:28px;height:28px;border-radius:50%;background:var(--s2);display:grid;place-items:center;color:var(--tx-2);flex:none}
.pl-fbt-imgs .plus svg{width:15px;height:15px}
.pl-fbt-list{display:flex;flex-direction:column;gap:2px}
.pl-fbt-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--line);cursor:pointer;font-size:14px;color:var(--tx-2);margin:0}
.pl-fbt-row input{position:absolute;opacity:0;pointer-events:none}
.pl-fbt-row i{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--line-2);display:grid;place-items:center;color:#fff;transition:.15s}
.pl-fbt-row i svg{width:13px;height:13px;opacity:0}
.pl-fbt-row input:checked+i{background:var(--or);border-color:var(--or)}
.pl-fbt-row input:checked+i svg{opacity:1}
.pl-fbt-row input:focus-visible+i{outline:1.5px solid var(--or);outline-offset:2px}
.pl-fbt-row .n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-fbt-row .n b{color:var(--tx)}
.pl-fbt-row .p{font-weight:800;color:var(--tx);white-space:nowrap}
.pl-fbt-row .p del{font-weight:500;color:var(--tx-3);font-size:12.5px;margin-right:4px}
.pl-fbt-row .p ins{text-decoration:none}
.pl-fbt-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;flex-wrap:wrap}
.pl-fbt-foot small{display:block;font-size:12px;color:var(--tx-3)}
.pl-fbt-foot b{font-size:22px;color:var(--tx)}
.pl-fbt-foot .pl-btn svg{width:17px;height:17px}
.pl-fbt-foot .pl-btn:disabled{opacity:.5;cursor:default;transform:none}
.pl div.product #reviews .comment-form-rating .stars a{color:#f5b301}
.pl div.product #reviews ol.commentlist{padding:0;list-style:none}
.pl div.product #reviews .comment_container{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.pl div.product #reviews .comment_container img.avatar{width:44px;height:44px;border-radius:50%;position:static;border:0;padding:0;float:none}
.pl div.product #reviews .comment-text{margin:0!important;border:0!important;padding:0!important}

@media (max-width:1180px){
  .pl-cart{grid-template-columns:minmax(0,1fr)}
  .pl-cart-side{position:static}
  .pl-fbt-in{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .pl-cart-top{flex-direction:column;align-items:flex-start}
  .pl-steps{font-size:11.5px}
  .pl-steps li+li::before{width:12px}
  .pl-ci{grid-template-columns:84px minmax(0,1fr);gap:14px}
  .pl-ci-im{width:84px;height:84px}
  .pl-ci-sub{grid-column:2;text-align:left;font-size:15px}
  .pl-cart-trust{grid-template-columns:minmax(0,1fr)}
  .pl-fbt{padding:22px 16px}
  .pl-fbt-imgs a{width:84px;height:84px}
  .pl-fbt-foot .pl-btn{width:100%}
}

/* ---------- CheckoutWC side cart follows the modes ---------- */
/* CheckoutWC colour settings mapped onto the theme's mode tokens */
html:root{
  --cfw-heading-font-family:var(--serif)!important;
  --cfw-body-font-family:var(--sans)!important;
  --cfw-inter-font-family:var(--sans)!important;
  --cfw-body-background-color:var(--bg)!important;
  --cfw-body-text-color:var(--tx-2)!important;
  --cfw-body-link-color:var(--or)!important;
  --cfw-header-background-color:var(--bg)!important;
  --cfw-header-text-color:var(--tx)!important;
  --cfw-footer-background-color:var(--bg)!important;
  --cfw-footer-text-color:var(--tx-3)!important;
  --cfw-cart-summary-background-color:var(--bg-2)!important;
  --cfw-cart-summary-mobile-background-color:var(--bg-2)!important;
  --cfw-cart-summary-text-color:var(--tx-2)!important;
  --cfw-cart-summary-link-color:var(--or)!important;
  --cfw-cart-summary-item-quantity-background-color:var(--or)!important;
  --cfw-cart-summary-item-quantity-text-color:#fff!important;
  --cfw-cart-summary-order-total-text-color:var(--tx)!important;
  --cfw-cart-summary-component-bg:var(--s1)!important;
  --cfw-cart-summary-border:var(--line)!important;
  --cfw-cart-summary-text-color-contrast:var(--tx)!important;
  --cfw-cart-summary-text-color-default:var(--tx-2)!important;
  --cfw-breadcrumb-completed-text-color:var(--tx-3)!important;
  --cfw-breadcrumb-current-text-color:var(--tx)!important;
  --cfw-breadcrumb-next-text-color:var(--tx-3)!important;
  --cfw-breadcrumb-completed-accent-color:var(--ok)!important;
  --cfw-breadcrumb-current-accent-color:var(--or)!important;
  --cfw-breadcrumb-next-accent-color:var(--line-2)!important;
  --cfw-buttons-primary-background-color:var(--or)!important;
  --cfw-buttons-primary-text-color:#fff!important;
  --cfw-buttons-primary-hover-background-color:var(--or-2)!important;
  --cfw-buttons-primary-hover-text-color:#fff!important;
  --cfw-buttons-primary-disabled-background-color:var(--s3)!important;
  --cfw-buttons-secondary-background-color:var(--tx)!important;
  --cfw-buttons-secondary-text-color:var(--bg)!important;
  --cfw-buttons-secondary-hover-background-color:var(--or)!important;
  --cfw-buttons-secondary-hover-text-color:#fff!important;
  --cfw-horizontal-divider-color:var(--line)!important;
  --cfw-loading-shimmer-primary-color:var(--s2)!important;
  --cfw-side-cart-icon-color:var(--tx)!important;
  --cfw-side-cart-icon-text-color:#fff!important;
  --cfw-side-cart-free-shipping-progress-background:var(--line-2)!important;
  --cfw-side-cart-free-shipping-progress-indicator:var(--or)!important;
}
.pl-fbt-row .n{display:flex;flex-direction:column;gap:2px;white-space:normal;line-height:1.35}
.pl-fbt-row .n small{font-size:12px;color:var(--tx-3)}
.pl-fbt-row .n small a{color:var(--tx-2);text-decoration:underline}
