/* Madbekot Kir 2025 — main stylesheet
   Ported 1:1 from home-v7.html and category-ref.html.
   Do NOT edit piecemeal; this file pairs with the template-parts class names. */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Heebo',sans-serif;background:#fff;color:#222;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit} button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
img,svg{max-width:100%;display:block} ul{list-style:none} input,select,textarea{font-family:inherit}
:root{
  --cream:#F7F3EE;--cream2:#EFE9DF;--cream3:#E5DDD0;--warmwh:#FDFAF7;
  --ink:#222;--ink2:#4A4543;--muted:#767676;--lt:#ADADAD;
  --bd:#E3DDD5;--bd2:#D5CEC4;
  --acc:#C46B3E;--accd:#A35129;
  --grn:#2D5E3A;--grns:#DFF0E4;
  --rsm:8px;--rmd:12px;--rlg:20px;--rxl:28px;
  --sh1:0 1px 4px rgba(0,0,0,.08);--sh2:0 4px 16px rgba(0,0,0,.10);--sh3:0 12px 40px rgba(0,0,0,.12);
  --ease:cubic-bezier(.22,.61,.36,1);
}
.w{max-width:1380px;margin:0 auto;padding:0 24px}
@media(max-width:640px){.w{padding:0 16px}}
.serif{font-family:'Frank Ruhl Libre',serif}
/* STRIP */
.strip{background:var(--ink);color:#fff;text-align:center;padding:9px;font-size:12.5px;font-weight:500;letter-spacing:.01em}
/* HEADER */
.hdr{background:#fff;border-bottom:1px solid var(--bd);position:sticky;top:0;z-index:100}
.hdr-r{display:flex;align-items:center;gap:16px;padding:14px 24px;max-width:1380px;margin:0 auto}
.logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.logo-ic{width:44px;height:44px;border-radius:50%;background:var(--cream2);display:grid;place-items:center;border:1px solid var(--bd)}
.logo-t b{font-size:17px;font-weight:800;color:var(--ink);letter-spacing:-.02em;display:block;line-height:1}
.logo-t small{font-size:10px;color:var(--muted);letter-spacing:.04em}
.logo-img{padding:4px 0}
.logo-img img{display:block;height:72px;width:auto;max-width:340px}
@media(max-width:820px){.logo-img img{height:54px;max-width:240px}}
.srch{flex:1;max-width:600px;margin:0 auto;position:relative}
.srch input{width:100%;padding:12px 48px 12px 16px;border-radius:var(--rsm);border:1.5px solid var(--ink);background:var(--cream);font-size:14px;color:var(--ink);outline:none;transition:border-color .2s}
.srch input:focus{border-color:var(--acc)} .srch input::placeholder{color:var(--muted)}
/* Magnifier button — absolutely positioned so it doesn't push itself onto a
 * second line (which made the icon appear at the bottom of the input). The
 * BUTTON is the absolute element (not just the SVG), so the button itself is
 * the clickable target and the SVG stays in normal flow inside it. */
.srch button[type="submit"]{position:absolute;top:50%;inset-inline-end:14px;transform:translateY(-50%);width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;padding:0;color:var(--muted);cursor:pointer;transition:color .15s}
.srch button[type="submit"]:hover{color:var(--ink)}
.srch button[type="submit"] svg{position:static;width:100%;height:100%;display:block}
.hics{display:flex;align-items:center;gap:4px;flex-shrink:0}
.hic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--ink);transition:background .2s;position:relative}
.hic:hover{background:var(--cream)}
.cbadge{position:absolute;top:4px;inset-inline-end:4px;width:17px;height:17px;border-radius:50%;background:var(--acc);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;line-height:1}
.cnav{background:#fff;border-bottom:1px solid var(--bd);overflow-x:auto;scrollbar-width:none}
.cnav::-webkit-scrollbar{display:none}
.cnav-in{display:flex;padding:0 24px;max-width:1380px;margin:0 auto;white-space:nowrap}
.cnav a{display:inline-flex;align-items:center;padding:14px 18px;font-size:13.5px;font-weight:500;color:var(--ink2);border-bottom:2px solid transparent;transition:all .2s}
.cnav a:hover{color:var(--ink);border-bottom-color:var(--ink)} .cnav a.hot{color:var(--acc)}
.mnav{position:fixed;inset:0;background:#fff;z-index:200;transform:translateX(100%);transition:transform .32s var(--ease);overflow-y:auto;padding:20px}
.mnav.open{transform:translateX(0)}
.mnav-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--bd)}
.mnav a{display:block;padding:16px 0;font-size:18px;font-weight:500;border-bottom:1px solid var(--bd)}
.closeX{width:36px;height:36px;border-radius:50%;background:var(--cream);display:grid;place-items:center}
.burger{display:none}
@media(max-width:820px){.burger{display:grid;width:36px;height:36px;border-radius:50%;place-items:center}.burger:hover{background:var(--cream)}.logo-t{display:none}.hdr-r{padding:12px 16px}.cnav-in{padding:0 12px}}
/* HERO */
.hero{background:var(--cream);padding:0}
.hero-g{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
@media(max-width:900px){.hero-g{grid-template-columns:1fr;min-height:0}}
.hero-t{display:flex;flex-direction:column;justify-content:center;padding:60px 56px}
@media(max-width:640px){.hero-t{padding:40px 24px}}
.bp{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--bd);border-radius:980px;padding:6px 14px;font-size:12px;color:var(--muted);margin-bottom:20px;width:fit-content}
.dot-a{width:7px;height:7px;border-radius:50%;background:var(--acc)}
.hero-t h1{font-family:'Frank Ruhl Libre',serif;font-size:clamp(34px,4.2vw,54px);line-height:1.1;font-weight:500;color:var(--ink);margin-bottom:16px;letter-spacing:-.02em}
.hero-t h1 em{font-style:italic;color:var(--acc)}
.hero-t .lead{font-size:16px;color:var(--ink2);line-height:1.6;margin-bottom:28px;max-width:420px}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:13px 24px;border-radius:var(--rsm);font-size:14.5px;font-weight:600;transition:all .25s var(--ease);cursor:pointer;white-space:nowrap}
.btn-f{background:var(--ink);color:#fff}.btn-f:hover{background:#000;box-shadow:var(--sh2)}
.btn-s{background:transparent;border:1.5px solid var(--ink);color:var(--ink)}.btn-s:hover{background:var(--ink);color:#fff}
.btn-a{background:var(--acc);color:#fff}.btn-a:hover{background:var(--accd)}
.btn-w{width:100%}
.tr{display:flex;align-items:center;gap:20px;margin-top:28px;padding-top:24px;border-top:1px solid var(--bd2);font-size:12px;color:var(--muted);flex-wrap:wrap}
.tr span{display:flex;align-items:center;gap:5px;font-weight:500} .tr span b{color:var(--ink)}
.hero-vis{position:relative;overflow:hidden;min-height:420px;background:var(--cream2)}
.hero-vis svg{width:100%;height:100%;position:absolute;inset:0}
@media(max-width:900px){.hero-vis{min-height:300px;aspect-ratio:16/10}}
/* BENS */
.bens{background:#fff;border-bottom:1px solid var(--bd);padding:18px 0}
.ben-r{display:grid;grid-template-columns:repeat(4,1fr)}
@media(max-width:700px){.ben-r{grid-template-columns:repeat(2,1fr)}}
.ben{display:flex;align-items:center;gap:11px;padding:8px 28px;border-left:1px solid var(--bd)}
.ben:last-child{border-left:none}
@media(max-width:700px){.ben:nth-child(2){border-left:none}.ben:last-child{border-left:1px solid var(--bd)}.ben:nth-child(4){border-left:none}}
.ben-ic{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;color:var(--acc)}
.ben b{display:block;font-size:13px;font-weight:700;color:var(--ink);line-height:1.3;margin-bottom:2px}
.ben span{font-size:11.5px;color:var(--muted)}
/* SECTION HEADS */
.sh{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;gap:16px;flex-wrap:wrap}
.sh h2{font-family:'Frank Ruhl Libre',serif;font-size:clamp(24px,2.8vw,34px);font-weight:500;color:var(--ink);letter-spacing:-.01em}
.sh-sub{font-size:13.5px;color:var(--muted);margin-top:4px}
.see-all{font-size:13.5px;font-weight:600;color:var(--acc);transition:color .2s}
.see-all:hover{color:var(--accd);text-decoration:underline}
.shc{text-align:center;max-width:620px;margin:0 auto 32px}
.shc h2{margin-bottom:10px} .shc p{font-size:15px;color:var(--muted)}
.eyeb{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin-bottom:10px;display:block}
section{padding:52px 0} @media(max-width:640px){section{padding:40px 0}}
/* CATS */
.cats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
@media(max-width:1100px){.cats{grid-template-columns:repeat(3,1fr)}} @media(max-width:560px){.cats{grid-template-columns:repeat(2,1fr)}}
.cat{border-radius:var(--rmd);overflow:hidden;background:var(--cream);border:1px solid var(--bd);transition:all .3s var(--ease);display:flex;flex-direction:column}
.cat:hover{box-shadow:var(--sh2);border-color:var(--bd2);transform:translateY(-3px)}
.cat-img{aspect-ratio:1/1;display:grid;place-items:center;overflow:hidden;position:relative}
.cat-img svg{width:85%;height:85%;transition:transform .5s var(--ease)} .cat:hover .cat-img svg{transform:scale(1.04)}
.cat-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}
.cat:hover .cat-img img{transform:scale(1.05)}
.cat-img::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:multiply}
.c1 .cat-img::before{background:rgba(244,234,216,.18)}
.c2 .cat-img::before{background:rgba(223,240,228,.18)}
.c3 .cat-img::before{background:rgba(232,240,248,.18)}
.c4 .cat-img::before{background:rgba(248,234,224,.18)}
.c5 .cat-img::before{background:rgba(234,232,245,.18)}
.c6 .cat-img::before{background:rgba(244,234,216,.18)}
.cat-inf{padding:12px 14px 14px;background:#fff}
.cat-inf b{font-size:14px;font-weight:700;color:var(--ink);display:block;margin-bottom:2px}
.cat-inf span{font-size:11.5px;color:var(--muted)}
.c1 .cat-img{background:#F4EAD8}.c2 .cat-img{background:#DFF0E4}.c3 .cat-img{background:#E8F0F8}
.c4 .cat-img{background:#F8EAE0}.c5 .cat-img{background:#EAE8F5}.c6 .cat-img{background:#F4EAD8}
/* SLIDER */
.slo{position:relative}
.slbtns{position:absolute;top:-50px;inset-inline-end:0;display:flex;gap:6px}
.snav{width:36px;height:36px;border-radius:50%;background:#fff;border:1.5px solid var(--bd);display:grid;place-items:center;color:var(--ink);transition:all .22s var(--ease)}
.snav:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:#fff} .snav:disabled{opacity:.3;cursor:not-allowed}
.psl{overflow:hidden;margin:0 -6px} .ptrack{display:flex;gap:12px;transition:transform .5s var(--ease);padding:4px 6px 8px}
/* PRODUCT CARD */
.pc{flex:0 0 calc(25% - 9px);min-width:200px;background:#fff;border-radius:var(--rmd);overflow:hidden;border:1px solid var(--bd);transition:all .28s var(--ease);display:flex;flex-direction:column}
.pc:hover{box-shadow:var(--sh2);border-color:var(--bd2);transform:translateY(-2px)}
@media(max-width:1100px){.pc{flex-basis:calc(33.3% - 9px)}} @media(max-width:760px){.pc{flex-basis:calc(50% - 7px);min-width:0}} @media(max-width:480px){.pc{flex-basis:80%}}
.pc-img{aspect-ratio:1/1;position:relative;overflow:hidden;display:grid;place-items:center}
.pc-img svg{width:100%;height:100%;transition:transform .6s var(--ease)} .pc:hover .pc-img svg{transform:scale(1.04)}
.pc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.pc:hover .pc-img img{transform:scale(1.05)}
.ptag{position:absolute;top:10px;inset-inline-start:10px;font-size:10px;font-weight:700;padding:4px 9px;border-radius:4px;z-index:1}
.pb{background:#2D5E3A;color:#fff}.pn{background:var(--acc);color:#fff}.ps{background:#C62828;color:#fff}
.pfav{position:absolute;top:10px;inset-inline-end:10px;width:32px;height:32px;border-radius:50%;background:#fff;display:grid;place-items:center;opacity:0;transform:scale(.85);transition:all .22s var(--ease);box-shadow:var(--sh1);z-index:1}
.pc:hover .pfav{opacity:1;transform:scale(1)} .pfav:hover{background:var(--acc);color:#fff}
.pc-b{padding:12px 14px 14px;flex:1;display:flex;flex-direction:column}
.pc-cat{font-size:11px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-weight:500;margin-bottom:4px}
.pc-nm{font-size:14px;font-weight:600;color:var(--ink);margin-bottom:6px;flex:1;line-height:1.35}
.pc-st{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted);margin-bottom:8px}
.pc-st .s{color:#E5A847;letter-spacing:-1px;font-size:13px}
.pc-pr{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:10px}
.pc-pr small{font-size:12px;font-weight:400;color:var(--muted)} .was{font-size:12px;color:var(--lt);text-decoration:line-through;margin-right:5px}
.pc-add{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:13px;font-weight:600;transition:background .2s var(--ease)}
.pc-add:hover{background:var(--acc)}
/* SPLIT BANNERS */
.splg{display:grid;grid-template-columns:1fr 1fr;gap:14px} @media(max-width:760px){.splg{grid-template-columns:1fr}}
.splb{position:relative;border-radius:var(--rlg);overflow:hidden;aspect-ratio:3/2;background:var(--cream)}
.splb svg.sbg{position:absolute;inset:0;width:100%;height:100%}
.splb img.sbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.splb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.45) 100%);pointer-events:none;z-index:0}
.splb .splc{z-index:1}
.splc{position:absolute;inset:0;padding:36px 40px;display:flex;flex-direction:column;justify-content:flex-end}
@media(max-width:500px){.splc{padding:24px}}
.splc .bp2{background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-radius:980px;padding:4px 12px;font-size:11px;font-weight:700;color:var(--ink);width:fit-content;margin-bottom:10px}
.splc h3{font-family:'Frank Ruhl Libre',serif;font-size:clamp(22px,3vw,34px);font-weight:500;color:var(--ink);margin-bottom:8px;line-height:1.15}
.splc p{font-size:13.5px;color:var(--ink2);margin-bottom:16px;max-width:300px;line-height:1.5}
/* GLASS SECTION */
.gls-sec{background:var(--cream)}
.glg{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1100px){.glg{grid-template-columns:repeat(2,1fr)}} @media(max-width:520px){.glg{grid-template-columns:1fr}}
.gc{background:#fff;border-radius:var(--rlg);overflow:hidden;border:1px solid var(--bd);transition:all .3s var(--ease);display:flex;flex-direction:column}
.gc:hover{transform:translateY(-5px);box-shadow:var(--sh3);border-color:transparent}
.gwin{position:relative;aspect-ratio:3/2;overflow:hidden;background:#B4CDD3}
.gwin svg.gs{position:absolute;inset:0;width:100%;height:100%}
.gwin svg.gfr{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}
.gpanel{position:absolute;z-index:3;overflow:hidden}
.gp-fro{backdrop-filter:blur(12px) saturate(.7);-webkit-backdrop-filter:blur(12px) saturate(.7);background:rgba(232,242,240,.32)}
.gp-sun{background:linear-gradient(155deg,rgba(195,115,38,.46) 0%,rgba(235,175,75,.28) 100%)}
.gp-prv{background-image:repeating-linear-gradient(45deg,rgba(28,68,52,.82) 0,rgba(28,68,52,.82) 2.5px,rgba(185,207,198,.52) 2.5px,rgba(185,207,198,.52) 5.5px)}
.gp-saf{background:rgba(235,242,250,.07)}
.glbl{position:absolute;top:12px;inset-inline-start:12px;z-index:6;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);padding:5px 11px;border-radius:4px;font-size:11px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:5px;letter-spacing:.04em}
.ldot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}
.glbadge{position:absolute;bottom:10px;inset-inline-end:12px;z-index:6;background:rgba(0,0,0,.58);color:#fff;padding:4px 10px;border-radius:4px;font-size:10.5px;font-weight:600;letter-spacing:.04em}
.gb{padding:18px 20px 20px;display:flex;flex-direction:column;gap:7px;flex:1}
.gb h4{font-family:'Frank Ruhl Libre',serif;font-size:20px;font-weight:500;color:var(--ink)}
.gb p{font-size:13px;color:var(--muted);line-height:1.55;flex:1}
.gbtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.gtag{font-size:11px;padding:3px 9px;border-radius:980px;background:var(--cream);color:var(--ink2);font-weight:500;border:1px solid var(--bd)}
.gfoot{margin-top:14px;padding-top:14px;border-top:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between}
.gfoot .pr{font-size:14px;font-weight:700;color:var(--ink)} .gfoot .pr small{font-size:12px;font-weight:400;color:var(--muted)}
.gfoot a{font-size:13px;font-weight:600;color:var(--acc);transition:color .2s} .gfoot a:hover{color:var(--accd);text-decoration:underline}
/* CUSTOM */
.custg{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center} @media(max-width:900px){.custg{grid-template-columns:1fr;gap:36px}}
.custvis{aspect-ratio:1/1;border-radius:var(--rlg);overflow:hidden;background:var(--cream)} .custvis svg{width:100%;height:100%}
.csteps{display:flex;flex-direction:column;gap:20px;margin-top:28px}
.cstep{display:flex;align-items:flex-start;gap:16px}
.csnum{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--bd2);display:grid;place-items:center;font-weight:700;font-size:14px;color:var(--ink);flex-shrink:0;background:#fff;font-family:'Frank Ruhl Libre',serif}
.cstxt b{display:block;font-size:14.5px;font-weight:700;color:var(--ink);margin-bottom:3px}
.cstxt span{font-size:13px;color:var(--muted);line-height:1.5}
/* BIZ */
.biz-s{background:var(--cream)} .bizg{display:grid;grid-template-columns:repeat(3,1fr);gap:14px} @media(max-width:900px){.bizg{grid-template-columns:1fr}}
.bizc{border-radius:var(--rlg);overflow:hidden;position:relative;min-height:380px;transition:transform .32s var(--ease);cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;padding:36px 32px}
.bizc:hover{transform:translateY(-4px)} .bizc svg.bzbg,.bizc div.bzbg{position:absolute;inset:0;width:100%;height:100%}
.bizcc{position:relative;z-index:1}
.bz-lbl{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.75;margin-bottom:10px;display:block}
.bizc h3{font-family:'Frank Ruhl Libre',serif;font-size:26px;font-weight:500;margin-bottom:10px;line-height:1.2}
.bizc p{font-size:13.5px;opacity:.85;margin-bottom:18px;max-width:280px;line-height:1.5}
.bz-lnk{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;transition:gap .22s var(--ease)} .bizc:hover .bz-lnk{gap:12px}
/* INQUIRY */
.inq-s{background:var(--cream)} .inqg{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start} @media(max-width:900px){.inqg{grid-template-columns:1fr;gap:36px}}
.inq-s h2{font-family:'Frank Ruhl Libre',serif;font-size:30px;font-weight:500;margin-bottom:14px}
.inq-s .ldesc{color:var(--ink2);font-size:15px;line-height:1.7;margin-bottom:24px}
.inqperks{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}
.inqperk{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink2)}
.inqperk svg{width:16px;height:16px;color:var(--acc);flex-shrink:0}
.fbox{background:#fff;border-radius:var(--rlg);padding:32px;border:1px solid var(--bd)}
.fbox h3{font-family:'Frank Ruhl Libre',serif;font-size:22px;font-weight:500;margin-bottom:4px}
.fsub{font-size:13px;color:var(--muted);margin-bottom:22px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px} @media(max-width:500px){.frow{grid-template-columns:1fr}}
.ff{margin-bottom:12px}
.ff label{display:block;font-size:12px;font-weight:700;color:var(--ink2);margin-bottom:6px}
.ff input,.ff select,.ff textarea{width:100%;padding:11px 14px;border:1px solid var(--bd2);border-radius:var(--rsm);background:var(--cream);font-size:14px;color:var(--ink);outline:none;transition:all .2s}
.ff input:focus,.ff select:focus,.ff textarea:focus{border-color:var(--acc);background:#fff} .ff textarea{min-height:90px;resize:vertical}
.fnote{font-size:11px;color:var(--muted);text-align:center;margin-top:10px}
/* REVIEWS */
.revg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px} @media(max-width:900px){.revg{grid-template-columns:1fr}}
.rcard{background:#fff;border:1px solid var(--bd);border-radius:var(--rmd);padding:24px;display:flex;flex-direction:column;gap:12px}
.r-st{font-size:15px;color:#E5A847;letter-spacing:-1px}
.r-q{font-size:14.5px;color:var(--ink2);line-height:1.65;flex:1;font-family:'Frank Ruhl Libre',serif}
.r-u{display:flex;align-items:center;gap:10px;padding-top:12px;border-top:1px solid var(--bd)}
.r-av{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0}
.r-av svg{width:100%;height:100%}
.r-u b{display:block;font-size:13.5px;font-weight:700} .r-u span{font-size:11.5px;color:var(--muted)}
/* NEWSLETTER */
.nl-s{background:var(--ink);color:#fff;padding:64px 0}
.nlin{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:900px;margin:0 auto} @media(max-width:760px){.nlin{grid-template-columns:1fr;gap:24px}}
.nl-s h2{font-family:'Frank Ruhl Libre',serif;font-size:28px;font-weight:500;color:#fff;margin-bottom:10px}
.nl-s p{color:rgba(255,255,255,.7);font-size:15px;line-height:1.6}
.nlform{display:flex;flex-direction:column;gap:10px}
.nlrow{display:flex;gap:8px}
.nlform input{flex:1;padding:13px 16px;border-radius:var(--rsm);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:14px;outline:none}
.nlform input::placeholder{color:rgba(255,255,255,.5)} .nlform input:focus{background:rgba(255,255,255,.12);border-color:var(--acc)}
.nlform .subb{padding:13px 24px;border-radius:var(--rsm);background:var(--acc);color:#fff;font-size:14px;font-weight:700;transition:background .2s;white-space:nowrap} .nlform .subb:hover{background:var(--accd)}
.nl-note{font-size:11px;color:rgba(255,255,255,.4)}
/* FOOTER */
.ft{background:#f5f0ea;padding:56px 0 24px}
.ftg{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px;padding-bottom:36px;border-bottom:1px solid var(--bd2)} @media(max-width:900px){.ftg{grid-template-columns:1fr 1fr}} @media(max-width:520px){.ftg{grid-template-columns:1fr}}
.ft h5{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:16px;letter-spacing:.06em;text-transform:uppercase}
.ft li{margin-bottom:9px} .ft a{font-size:13.5px;color:var(--ink2);transition:color .2s} .ft a:hover{color:var(--ink)}
.ft-br p{font-size:13px;color:var(--muted);line-height:1.65;margin:12px 0 16px}
.ftsoc{display:flex;gap:8px} .ftsoc a{width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--bd);display:grid;place-items:center;transition:all .2s} .ftsoc a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.ftbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}
.ftpays{display:flex;gap:6px} .pay{padding:3px 8px;border-radius:3px;background:#fff;border:1px solid var(--bd);font-size:10px;font-weight:700;color:var(--ink2)}
.wa{position:fixed;bottom:22px;inset-inline-start:22px;z-index:60;width:54px;height:54px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px -4px rgba(37,211,102,.5);transition:transform .22s var(--ease)} .wa:hover{transform:translateY(-2px) scale(1.06)}
.rv{opacity:0;transform:translateY(20px);transition:all .7s var(--ease)} .rv.in{opacity:1;transform:translateY(0)}

/* ============ PORTRAIT SLIDER ============ */
.prt-sec{background:#fff;padding-top:56px;padding-bottom:56px}
.prt-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.prt-pill{padding:8px 16px;border-radius:980px;font-size:13px;font-weight:500;color:var(--ink2);background:var(--cream);border:1.5px solid transparent;cursor:pointer;transition:all .22s var(--ease)}
.prt-pill:hover{border-color:var(--bd2);color:var(--ink)}
.prt-pill.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.prt-slider{overflow:hidden;margin:0 -6px}
.prt-track{display:flex;gap:14px;transition:transform .5s var(--ease);padding:4px 6px 12px}
.prt-card{flex:0 0 220px;border-radius:var(--rmd);overflow:hidden;background:#fff;border:1px solid var(--bd);transition:all .3s var(--ease);display:flex;flex-direction:column;cursor:pointer}
.prt-card:hover{box-shadow:var(--sh3);transform:translateY(-4px);border-color:transparent}
.prt-img{aspect-ratio:2/3;position:relative;overflow:hidden;display:grid;place-items:center;background:#F0ECE6}
.prt-img svg{width:100%;height:100%;transition:transform .6s var(--ease)} .prt-card:hover .prt-img svg{transform:scale(1.05)}
.prt-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.prt-card:hover .prt-img img{transform:scale(1.05)}
.prt-img .new-dot{position:absolute;top:10px;inset-inline-start:10px;background:var(--acc);color:#fff;font-size:9.5px;font-weight:700;padding:3px 9px;border-radius:3px;letter-spacing:.06em}
.prt-img .hot-dot{position:absolute;top:10px;inset-inline-start:10px;background:var(--grn);color:#fff;font-size:9.5px;font-weight:700;padding:3px 9px;border-radius:3px;letter-spacing:.06em}
.prt-img .qv{position:absolute;bottom:10px;left:50%;transform:translateX(-50%) translateY(8px);background:rgba(255,255,255,.95);backdrop-filter:blur(6px);padding:7px 16px;border-radius:4px;font-size:12px;font-weight:700;color:var(--ink);white-space:nowrap;opacity:0;transition:all .25s var(--ease)}
.prt-card:hover .qv{opacity:1;transform:translateX(-50%) translateY(0)}
.prt-info{padding:12px 12px 14px}
.prt-info .pc-cat{font-size:10.5px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-weight:500;margin-bottom:3px}
.prt-info b{display:block;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:5px;line-height:1.3}
.prt-info .price{font-size:15px;font-weight:700;color:var(--ink)} .prt-info .price small{font-size:12px;font-weight:400;color:var(--muted)}
/* ============ MASONRY INSPIRATION ============ */
.insp-sec{background:var(--cream)}
.masonry{columns:4;column-gap:12px} @media(max-width:900px){.masonry{columns:2}} @media(max-width:480px){.masonry{columns:2}}
.m-item{break-inside:avoid;margin-bottom:12px;border-radius:var(--rmd);overflow:hidden;position:relative;cursor:pointer;display:block}
.m-item img{display:block;width:100%;height:auto;transition:transform .5s var(--ease)}
.m-item:hover img{transform:scale(1.03)}
.m-item svg{width:100%;display:block;transition:transform .5s var(--ease)}
.m-item:hover svg{transform:scale(1.03)}
.m-ovl{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.75) 100%);opacity:0;transition:opacity .3s var(--ease);display:flex;flex-direction:column;justify-content:flex-end;padding:16px}
.m-item:hover .m-ovl{opacity:1}
.m-ovl small{font-size:10px;color:rgba(255,255,255,.8);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}
.m-ovl b{font-size:14px;color:#fff;font-weight:600;font-family:'Frank Ruhl Libre',serif}
/* ============ FAQ ============ */
.faq-sec{background:#fff}
.faq-g{display:grid;grid-template-columns:1fr 1.8fr;gap:64px;align-items:start} @media(max-width:900px){.faq-g{grid-template-columns:1fr;gap:32px}}
.faq-item{border-bottom:1px solid var(--bd2)}
.faq-item:first-child{border-top:1px solid var(--bd2)}
.faq-q{width:100%;padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:15.5px;font-weight:600;color:var(--ink);text-align:start;transition:color .2s var(--ease);cursor:pointer}
.faq-q:hover{color:var(--acc)}
.faq-ico{width:26px;height:26px;display:grid;place-items:center;flex-shrink:0;transition:transform .3s var(--ease);color:var(--ink);border-radius:50%;background:var(--cream)}
.faq-item.open .faq-ico{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq-item.open .faq-a{max-height:300px}
.faq-a p{padding:0 0 20px;color:var(--muted);font-size:14.5px;line-height:1.7}
/* ============ STYLE QUIZ CTA ============ */
.quiz-sec{background:linear-gradient(135deg,var(--cream2) 0%,var(--cream3) 100%);padding:72px 0}
.quiz-in{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:1000px;margin:0 auto} @media(max-width:760px){.quiz-in{grid-template-columns:1fr;gap:28px}}
.quiz-visual{aspect-ratio:4/3;border-radius:var(--rlg);overflow:hidden;background:var(--cream);position:relative}
.quiz-visual svg{width:100%;height:100%}
.style-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.stag{padding:8px 16px;border-radius:980px;font-size:13px;font-weight:500;border:1.5px solid var(--bd2);color:var(--ink2);cursor:pointer;transition:all .22s var(--ease);background:#fff}
.stag:hover,.stag.on{background:var(--ink);color:#fff;border-color:var(--ink)}
/* ============ LIVE TOAST ============ */
.toast{position:fixed;bottom:88px;inset-inline-start:16px;z-index:70;background:#fff;border:1px solid var(--bd);border-radius:var(--rmd);padding:12px 16px;box-shadow:var(--sh3);display:flex;align-items:center;gap:12px;max-width:300px;transform:translateX(-120%);transition:transform .4s var(--ease)}
.toast.show{transform:translateX(0)}
.toast-dot{width:40px;height:40px;border-radius:50%;background:var(--cream2);flex-shrink:0;display:grid;place-items:center;font-size:18px}
.toast-t b{display:block;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:1px}
.toast-t span{font-size:11.5px;color:var(--muted)}
/* ============ TRENDING ROW (Wallism-style) ============ */
.trend-row{background:#fff;padding:0 0 40px}
.trend-chips{display:flex;gap:10px;overflow-x:auto;padding:0 0 4px;scrollbar-width:none}
.trend-chips::-webkit-scrollbar{display:none}
.tchip{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:980px;background:var(--cream);border:1px solid var(--bd);font-size:13px;font-weight:500;color:var(--ink);white-space:nowrap;cursor:pointer;transition:all .22s var(--ease);flex-shrink:0}
.tchip:hover{border-color:var(--ink);background:#fff} .tchip img,.tchip .ti{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0}


/* ================================================================
   MEGA MENU  — CSS-only hover, panels live inside triggers
================================================================ */

/* Trigger wrapper */
.mm { display: flex; align-items: stretch; position: static; }

/* The clickable link inside */
.mm > .mm-a {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 12px 18px; font-size: 13.5px; font-weight: 500;
  color: var(--ink2); border-bottom: 2px solid transparent;
  transition: color .2s, border-color .2s;
  white-space: nowrap;
}
.mm:hover > .mm-a { color: var(--ink); border-bottom-color: var(--acc); }

/* Arrow */
.mm-arr {
  display: inline-block; width: 0; height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  opacity: .4; transition: transform .22s, opacity .22s;
  margin-top: 1px; flex-shrink: 0;
}
.mm:hover .mm-arr { transform: rotate(180deg); opacity: .75; }

/* ── THE PANEL ── */
.mm-panel {
  position: fixed;
  /* top is set by JS once on load */
  top: 96px;
  left: 0; right: 0;
  z-index: 200;
  background: #fff;
  border-top: 2.5px solid var(--acc);
  box-shadow: 0 8px 48px rgba(0,0,0,.13);
  /* Hidden by default */
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .18s, visibility .18s;
  direction: rtl;
}
/* Show on hover — CSS only, works because panel is DOM child of .mm */
.mm:hover .mm-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* ── PANEL INNER LAYOUT ── */
.mm-wrap {
  display: grid;
  grid-template-columns: 230px 1fr;
  max-width: 1380px; margin: 0 auto;
  min-height: 320px;
}

/* Left brand column */
.mm-brand {
  background: #1E3530;
  padding: 30px 26px;
  display: flex; flex-direction: column; gap: 14px;
}
.mm-brand-title {
  font-family: 'Frank Ruhl Libre', serif;
  font-size: 21px; font-weight: 500; color: #fff;
  letter-spacing: -.015em; line-height: 1.2;
}
.mm-brand-sub {
  font-size: 12px; color: rgba(255,255,255,.55); line-height: 1.6;
}
.mm-brand-vis {
  flex: 1; border-radius: 10px; overflow: hidden;
  background: rgba(255,255,255,.08);
  min-height: 110px; max-height: 170px;
  display: grid; place-items: center;
}
.mm-brand-vis svg { width: 100%; height: 100%; }
.mm-brand-cta {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 10px 18px; border-radius: var(--rsm);
  background: var(--acc); color: #fff;
  font-size: 13px; font-weight: 700;
  transition: background .2s; width: fit-content;
}
.mm-brand-cta:hover { background: var(--accd); }
.mm-brand-trust {
  font-size: 11px; color: rgba(255,255,255,.5); line-height: 1.9;
}
.mm-brand-trust span { display: flex; align-items: center; gap: 5px; }
.mm-brand-trust span::before { content: "✓"; color: var(--acc); font-weight: 700; }

/* Right columns */
.mm-cols {
  padding: 26px 36px 22px;
  display: grid; gap: 0 28px;
  overflow-y: auto; max-height: 65vh;
}
.mm-cols.c3 { grid-template-columns: repeat(3, 1fr); }
.mm-cols.c4 { grid-template-columns: repeat(4, 1fr); }
.mm-cols.c2 { grid-template-columns: repeat(2, 1fr); }

/* Column heading */
.mm-head {
  font-size: 9.5px; font-weight: 700; letter-spacing: .13em;
  text-transform: uppercase; color: var(--muted);
  border-bottom: 1px solid var(--bd);
  padding-bottom: 9px; margin-bottom: 9px;
}

/* Column links */
.mm-col ul { list-style: none; }
.mm-col li { margin: 0; }
.mm-col a {
  display: flex; align-items: center; justify-content: space-between;
  padding: 5px 7px; border-radius: 5px; gap: 5px;
  font-size: 13.5px; color: var(--ink2);
  line-height: 1.3; transition: background .12s, color .12s;
}
.mm-col a:hover { background: var(--cream); color: var(--ink); }

/* Link hierarchy */
.mm-col a.l1 { font-size: 14.5px; font-weight: 700; color: var(--ink); }
.mm-col a.l1:hover { color: var(--acc); }
.mm-col a.l2 { font-size: 14px; font-weight: 600; color: var(--ink); }
.mm-col a.l2:hover { color: var(--acc); }

/* Count badge */
.mm-cnt { font-size: 10px; color: var(--lt); font-weight: 400; flex-shrink: 0; }
.l1 .mm-cnt { color: var(--acc); font-weight: 600; }

/* Hot pill */
.mm-hot {
  font-size: 9px; font-weight: 700; padding: 2px 6px; border-radius: 3px;
  background: #FFF0EB; color: var(--acc); flex-shrink: 0;
  letter-spacing: .03em;
}

/* Divider between columns */
.mm-col + .mm-col { border-right: 1px solid var(--bd); padding-right: 20px; }

/* Footer shortcuts */
.mm-footer {
  border-top: 1px solid var(--bd);
  padding-top: 14px; margin-top: 16px;
  display: flex; gap: 7px; flex-wrap: wrap;
}
.mm-footer a {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 6px 13px; border-radius: 980px;
  font-size: 12px; color: var(--ink2);
  background: var(--cream); border: 1px solid var(--bd);
  transition: all .18s; font-weight: 500;
}
.mm-footer a:hover { background: var(--ink); color: #fff; border-color: var(--ink); }

/* Backdrop */
.mm-backdrop {
  position: fixed; inset: 0; z-index: 199;
  background: rgba(0,0,0,.22);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .18s, visibility .18s;
}
/* Show backdrop when any mm is hovered */
.mm:hover ~ .mm-backdrop,
.mm-backdrop:hover { opacity: 1; visibility: visible; }
/* Easier: use JS to toggle backdrop, OR just accept no backdrop */

/* ── MOBILE ACCORDION ── */
.mm-acc { border-bottom: 1px solid var(--bd); }
.mm-acc-btn {
  width: 100%; display: flex; align-items: center;
  justify-content: space-between;
  padding: 15px 0; background: none; border: none;
  font-family: 'Frank Ruhl Libre', serif;
  font-size: 18px; font-weight: 500; color: var(--ink);
  cursor: pointer; text-align: start;
}
.mm-acc-btn .aic {
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--cream); display: grid; place-items: center;
  flex-shrink: 0; transition: transform .28s var(--ease);
}
.mm-acc.open .mm-acc-btn .aic { transform: rotate(45deg); }
.mm-acc-body { max-height: 0; overflow: hidden; transition: max-height .35s var(--ease); }
.mm-acc.open .mm-acc-body { max-height: 1200px; }
.mm-acc-inner { padding: 4px 0 18px; }
.mm-grp { margin-bottom: 14px; }
.mm-grp-t {
  font-size: 9.5px; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: var(--muted);
  margin-bottom: 6px; padding: 0 4px;
}
.mm-grp a {
  display: flex; align-items: center; justify-content: space-between;
  padding: 9px 8px; border-radius: 7px;
  font-size: 14.5px; color: var(--ink2); transition: all .15s;
}
.mm-grp a:hover, .mm-grp a.act { background: var(--cream); color: var(--ink); }
.mm-grp a.l1 { font-size: 16px; font-weight: 700; color: var(--ink); }
.mm-grp a.l1:hover { color: var(--acc); }
.mm-grp .mm-cnt { font-size: 11.5px; color: var(--lt); }



/* ==================== CATEGORY PAGE — from category-ref.html ==================== */
/* ======= BREADCRUMBS ======= */
.bc{background:#fff;border-bottom:1px solid var(--bd);padding:10px 0;font-size:12.5px;color:var(--muted)}
.bc-in{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bc a{color:var(--muted);transition:color .2s} .bc a:hover{color:var(--ink)}
.bc .sep{opacity:.4}
.bc .curr{color:var(--ink);font-weight:600}

/* ======= CATEGORY HERO ======= */
.cat-hero{
  background:linear-gradient(135deg,var(--cream) 0%,var(--cream2) 100%);
  padding:36px 0 28px;border-bottom:1px solid var(--bd);
  position:relative;overflow:hidden;
}
.cat-hero::after{content:"";position:absolute;inset-inline-end:0;top:0;bottom:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5));pointer-events:none}
.cat-hero-in{display:flex;align-items:center;justify-content:space-between;gap:32px}
.cat-hero-txt h1{font-family:'Frank Ruhl Libre',serif;font-size:clamp(28px,4vw,44px);font-weight:500;color:var(--ink);letter-spacing:-.02em;margin-bottom:6px}
.cat-hero-txt p{font-size:14.5px;color:var(--ink2);margin-bottom:14px;max-width:500px;line-height:1.55}
.cat-hero-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.meta-badge{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink2);background:#fff;border:1px solid var(--bd);border-radius:980px;padding:5px 12px;font-weight:500}
.meta-badge svg{width:14px;height:14px;color:var(--acc)}
.cat-hero-vis{flex-shrink:0;width:280px;height:180px;border-radius:var(--rlg);overflow:hidden;background:var(--cream3);position:relative;z-index:1}
.cat-hero-vis svg,.cat-hero-vis img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:768px){.cat-hero-vis{display:none}.cat-hero{padding:24px 0 20px}}

/* ======= SUBCATEGORY CHIPS ======= */
.subcat{background:#fff;border-bottom:1px solid var(--bd);padding:14px 0;overflow-x:auto;scrollbar-width:none}
.subcat::-webkit-scrollbar{display:none}
.subcat-in{display:flex;gap:8px;padding:0 24px;white-space:nowrap;max-width:1380px;margin:0 auto}
@media(max-width:640px){.subcat-in{padding:0 16px}}
.sub-chip{
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 16px;border-radius:980px;
  font-size:13px;font-weight:500;color:var(--ink2);
  background:var(--cream);border:1.5px solid transparent;
  transition:all .22s var(--ease);white-space:nowrap;flex-shrink:0;cursor:pointer;
}
.sub-chip:hover{border-color:var(--bd2);color:var(--ink)}
.sub-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.sub-chip .cnt{font-size:11px;opacity:.75;font-weight:400}
.sub-chip .dot-c{width:18px;height:18px;border-radius:50%;overflow:hidden;display:grid;place-items:center;flex-shrink:0;background:var(--cream2)}
.sub-chip.on .dot-c{background:rgba(255,255,255,.2)}

/* ======= STICKY FILTER BAR (desktop) ======= */
.filter-bar{
  background:#fff;border-bottom:1px solid var(--bd);
  padding:12px 0;position:sticky;top:var(--nav-h);z-index:100;
}
.filter-bar-in{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;gap:10px}
.filter-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.filter-right{display:flex;align-items:center;gap:8px}
.filter-count{font-size:13px;color:var(--muted)}
.filter-count b{color:var(--ink);font-weight:700}

/* Filter buttons */
.f-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:var(--rsm);
  font-size:13px;font-weight:500;color:var(--ink);
  background:var(--cream);border:1.5px solid var(--bd);
  transition:all .22s var(--ease);cursor:pointer;white-space:nowrap;
}
.f-btn:hover{border-color:var(--ink)}
.f-btn.act{background:var(--ink);color:#fff;border-color:var(--ink)}
.f-btn svg{width:14px;height:14px}
.f-btn .f-cnt{background:var(--acc);color:#fff;font-size:10px;font-weight:700;width:18px;height:18px;border-radius:50%;display:grid;place-items:center}

/* Sort select */
.sort-sel{
  padding:8px 32px 8px 14px;border-radius:var(--rsm);
  border:1.5px solid var(--bd);background:var(--cream);
  font-size:13px;color:var(--ink);font-family:inherit;
  cursor:pointer;outline:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23767676' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:left 10px center;
  -webkit-appearance:none;appearance:none;
}

/* Active filter pills */
.active-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.af-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:980px;background:var(--cream2);border:1px solid var(--bd);font-size:12.5px;color:var(--ink);font-weight:500}
.af-pill .rm{width:16px;height:16px;border-radius:50%;background:var(--muted);color:#fff;display:grid;place-items:center;cursor:pointer;flex-shrink:0;transition:background .2s}
.af-pill .rm:hover{background:var(--ink)}
.af-pill .rm svg{width:8px;height:8px}

/* View toggle */
.view-btns{display:flex;border:1px solid var(--bd);border-radius:var(--rsm);overflow:hidden}
.v-btn{width:36px;height:36px;display:grid;place-items:center;color:var(--muted);transition:all .2s;cursor:pointer}
.v-btn.on{background:var(--ink);color:#fff}
.v-btn:hover:not(.on){background:var(--cream)}

@media(max-width:900px){.filter-bar{display:none}} /* Hidden on mobile — use bottom bar instead */

/* ======= MOBILE FILTER TRIGGER BAR ======= */
.m-filter-bar{
  display:none;position:sticky;top:0;z-index:100;
  background:#fff;border-bottom:1px solid var(--bd);padding:10px 16px;
}
@media(max-width:900px){.m-filter-bar{display:flex;align-items:center;gap:10px;justify-content:space-between}}
.m-f-trigger{display:flex;align-items:center;gap:8px;padding:9px 18px;border-radius:var(--rsm);border:1.5px solid var(--bd);font-size:13.5px;font-weight:600;color:var(--ink);background:#fff;cursor:pointer;flex:1;max-width:48%}
.m-f-trigger svg{width:16px;height:16px;color:var(--muted)}
.m-f-trigger .badge{background:var(--acc);color:#fff;font-size:10px;font-weight:700;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;margin-right:auto}
.m-sort{flex:1;max-width:48%;padding:9px 28px 9px 12px;border:1.5px solid var(--bd);border-radius:var(--rsm);font-size:13.5px;font-weight:500;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23767676' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat left 10px center;-webkit-appearance:none;appearance:none;cursor:pointer;outline:none}

/* ======= FILTER DRAWER (bottom sheet mobile) ======= */
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:400;opacity:0;visibility:hidden;transition:all .3s var(--ease)}
.overlay.open{opacity:1;visibility:visible}
.drawer{
  position:fixed;bottom:0;left:0;right:0;z-index:401;
  background:#fff;border-radius:24px 24px 0 0;
  max-height:85vh;overflow-y:auto;
  transform:translateY(100%);transition:transform .38s var(--ease);
  padding:0 0 80px;
}
.drawer.open{transform:translateY(0)}
.drawer-handle{width:40px;height:4px;background:var(--bd2);border-radius:2px;margin:12px auto 0}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 12px;border-bottom:1px solid var(--bd)}
.drawer-head h3{font-size:17px;font-weight:700}
.drawer-body{padding:20px}
.df-section{margin-bottom:24px}
.df-title{font-size:12.5px;font-weight:700;color:var(--ink2);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}
.df-chips{display:flex;flex-wrap:wrap;gap:8px}
.df-chip{padding:9px 16px;border-radius:980px;font-size:14px;font-weight:500;color:var(--ink2);background:var(--cream);border:1.5px solid transparent;cursor:pointer;transition:all .22s var(--ease)}
.df-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.df-chip:hover:not(.on){border-color:var(--bd2)}
.df-range{display:flex;gap:10px;align-items:center}
.df-range input{flex:1;padding:10px 14px;border:1.5px solid var(--bd2);border-radius:var(--rsm);font-size:14px;color:var(--ink);background:var(--cream);outline:none}
.df-range input:focus{border-color:var(--acc)}
.df-range span{color:var(--muted);font-size:14px}
.drawer-footer{position:fixed;bottom:0;left:0;right:0;padding:14px 20px;background:#fff;border-top:1px solid var(--bd);display:flex;gap:10px;z-index:402}
.df-apply{flex:1;padding:14px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .2s}
.df-apply:hover{background:var(--acc)}
.df-clear{padding:14px 20px;border-radius:var(--rsm);border:1.5px solid var(--bd);font-size:15px;font-weight:500;color:var(--muted);cursor:pointer;transition:all .2s}
.df-clear:hover{border-color:var(--ink);color:var(--ink)}
.df-format-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.df-fmt{padding:10px;border-radius:var(--rsm);border:1.5px solid transparent;background:var(--cream);cursor:pointer;text-align:center;transition:all .22s var(--ease)}
.df-fmt.on{background:var(--ink);color:#fff}
.df-fmt svg{width:24px;height:24px;margin:0 auto 4px;display:block}
.df-fmt span{font-size:12px;font-weight:500}

/* ======= LAYOUT: SIDEBAR + PRODUCTS ======= */
.cat-layout{display:grid;grid-template-columns:260px 1fr;gap:28px;padding:28px 0 60px;align-items:start}
@media(max-width:900px){.cat-layout{grid-template-columns:1fr;gap:0;padding:0 0 100px}}
.sidebar{position:sticky;top:120px}
@media(max-width:900px){.sidebar{display:none}}

/* Sidebar styles */
.sb-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--bd)}
.sb-section:last-child{border-bottom:none}
.sb-title{font-size:12px;font-weight:700;color:var(--ink2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
.sb-link{display:flex;align-items:center;justify-content:space-between;padding:8px 0;font-size:14px;color:var(--ink2);border-bottom:1px solid var(--line);transition:color .2s var(--ease);cursor:pointer;border-bottom:none}
.sb-link:hover,.sb-link.on{color:var(--acc)}
.sb-link.on{font-weight:600}
.sb-link .cnt{font-size:12px;color:var(--lt)}
.sb-price{display:flex;gap:10px;align-items:center}
.sb-price input{flex:1;padding:9px 12px;border:1px solid var(--bd2);border-radius:var(--rsm);font-size:13px;color:var(--ink);background:var(--cream);outline:none;width:0;min-width:0}
.sb-price input:focus{border-color:var(--acc)}
.sb-apply{width:100%;margin-top:10px;padding:10px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .2s}
.sb-apply:hover{background:var(--acc)}
.sb-chip-row{display:flex;flex-wrap:wrap;gap:6px}
.sb-chip{padding:6px 13px;border-radius:980px;font-size:13px;color:var(--ink2);background:var(--cream);border:1.5px solid transparent;cursor:pointer;transition:all .22s var(--ease)}
.sb-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.sb-chip:hover:not(.on){border-color:var(--bd2)}

/* ======= PRODUCT GRID ======= */
.prod-area{}
.prod-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:20px 0 0}
@media(max-width:900px){.prod-header{padding:14px 16px 0;margin-bottom:14px}}
.prod-header .count{font-size:13px;color:var(--muted)}
.prod-header .count b{color:var(--ink);font-weight:700}
.prod-progress{width:100%;height:3px;background:var(--cream3);border-radius:2px;margin-top:8px;overflow:hidden}
.prod-progress-bar{height:100%;background:var(--acc);border-radius:2px;width:4.6%;transition:width .3s}

/* Product grid */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1200px){.pgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.pgrid{grid-template-columns:repeat(2,1fr);gap:10px;padding:0 16px}}
@media(max-width:400px){.pgrid{gap:8px}}
/* Intermediate .pg wrapper from WC loop-start becomes transparent inside .pgrid */
.pgrid > .pg,.pgrid > ul.products{display:contents}
.pgrid > ul.products > li.product{list-style:none}
/* Standalone .pg grid (used on homepage slider/grids) */
.pg{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1200px){.pg{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.pg{grid-template-columns:repeat(2,1fr);gap:10px}}
.pgrid > .pg{grid-template-columns:none;gap:0}

.pgrid.list-view{grid-template-columns:1fr}

/* Product card */
.pcard{
  background:#fff;border-radius:var(--rmd);overflow:hidden;
  border:1px solid var(--bd);transition:all .28s var(--ease);
  display:flex;flex-direction:column;position:relative;
}
.pcard:hover{box-shadow:var(--sh2);border-color:var(--bd2);transform:translateY(-2px)}
.pcard-img{aspect-ratio:1/1;position:relative;overflow:hidden;display:grid;place-items:center;background:var(--cream2)}
.pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.pcard:hover .pcard-img img{transform:scale(1.04)}
.pcard-img .no-img{display:grid;place-items:center;width:100%;height:100%;background:var(--cream3)}
.pcard-img .no-img svg{width:60%;height:60%;opacity:.4}

/* Product tags */
.ptag{position:absolute;top:8px;inset-inline-start:8px;font-size:10px;font-weight:700;padding:4px 9px;border-radius:4px;z-index:2;letter-spacing:.04em}
.pt-best{background:#2D5E3A;color:#fff}
.pt-new{background:var(--acc);color:#fff}
.pt-sale{background:#C62828;color:#fff}
.pt-hot{background:#FF6B35;color:#fff}

/* Wishlist + Quick-view */
.p-actions{position:absolute;top:8px;inset-inline-end:8px;display:flex;flex-direction:column;gap:5px;z-index:2;opacity:0;transform:translateX(6px);transition:all .25s var(--ease)}
.pcard:hover .p-actions{opacity:1;transform:translateX(0)}
.p-act-btn{width:32px;height:32px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:var(--sh1);transition:all .2s;cursor:pointer}
.p-act-btn:hover{background:var(--acc);color:#fff}

/* Social proof badge */
.p-proof{position:absolute;bottom:8px;inset-inline-start:8px;background:rgba(0,0,0,.65);color:#fff;font-size:10px;font-weight:600;padding:4px 8px;border-radius:4px;backdrop-filter:blur(4px);opacity:0;transition:opacity .25s var(--ease);z-index:2}
.pcard:hover .p-proof{opacity:1}

/* Card body */
.pcard-body{padding:10px 12px 12px;flex:1;display:flex;flex-direction:column}
.pcard-cat{font-size:10.5px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-weight:500;margin-bottom:3px}
.pcard-name{font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:6px;flex:1;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pcard-stars{display:flex;align-items:center;gap:3px;font-size:11px;color:var(--muted);margin-bottom:6px}
.pcard-stars .s{color:#E5A847;letter-spacing:-1px;font-size:12px}
.pcard-stars .n{color:var(--lt)}
.pcard-price{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}
.pcard-price .now{font-size:16px;font-weight:700;color:var(--ink)}
.pcard-price small{font-size:11px;font-weight:400;color:var(--muted)}
.pcard-price .was{font-size:12px;color:var(--lt);text-decoration:line-through}
.pcard-price .off{font-size:11px;color:#C62828;font-weight:700}

/* Add to cart */
.p-cart{
  display:flex;align-items:center;justify-content:center;gap:6px;
  padding:9px;border-radius:var(--rsm);
  background:var(--ink);color:#fff;
  font-size:12.5px;font-weight:600;
  transition:background .2s var(--ease);cursor:pointer;border:none;width:100%;
}
.p-cart:hover{background:var(--acc)}
.p-cart svg{width:13px;height:13px;flex-shrink:0}

/* Size select quick */
.p-size{
  width:100%;padding:7px 12px;border:1px solid var(--bd2);border-radius:var(--rsm);
  font-size:12.5px;color:var(--ink);background:var(--cream);margin-bottom:6px;
  cursor:pointer;outline:none;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23767676' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:left 8px center;padding-left:26px;
}

/* Urgency/scarcity badge */
.p-urgency{font-size:10.5px;color:#C62828;font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:4px}
.p-urgency::before{content:"";width:6px;height:6px;border-radius:50%;background:#C62828;flex-shrink:0;animation:pulse 1.5s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* LIST VIEW card style */
.pgrid.list-view .pcard{flex-direction:row;height:140px}
.pgrid.list-view .pcard-img{width:140px;height:140px;flex-shrink:0;aspect-ratio:unset}
.pgrid.list-view .pcard-body{padding:14px 16px}
.pgrid.list-view .p-actions{top:50%;transform:translateY(-50%) translateX(6px)}
.pgrid.list-view .pcard:hover .p-actions{transform:translateY(-50%) translateX(0)}
@media(max-width:640px){.pgrid.list-view .pcard{height:120px}.pgrid.list-view .pcard-img{width:120px;height:120px}}

/* ======= SKELETON LOADING ======= */
.sk{animation:shimmer 1.5s infinite linear;background:linear-gradient(90deg,var(--cream2) 25%,var(--cream3) 50%,var(--cream2) 75%);background-size:200% 100%}
@keyframes shimmer{to{background-position:-200% 0}}
.sk-card{background:#fff;border-radius:var(--rmd);border:1px solid var(--bd);overflow:hidden}
.sk-img{aspect-ratio:1/1;background:var(--cream2)} .sk-img.sk{background-size:200% 100%}
.sk-line{height:12px;border-radius:4px;margin:10px 12px 6px} .sk-line.sk{background-size:200% 100%}
.sk-line.short{width:60%}

/* ======= LOAD MORE ======= */
.load-more{text-align:center;padding:40px 0;border-top:1px solid var(--bd);margin-top:8px}
.load-more p{font-size:13px;color:var(--muted);margin-bottom:14px}
.lm-bar{width:180px;height:3px;background:var(--cream3);border-radius:2px;margin:0 auto 16px}
.lm-fill{height:100%;background:var(--acc);border-radius:2px;width:4.6%}
.btn-lm{padding:13px 40px;border-radius:var(--rsm);border:1.5px solid var(--ink);font-size:14.5px;font-weight:600;color:var(--ink);background:#fff;cursor:pointer;transition:all .25s var(--ease)}
.btn-lm:hover{background:var(--ink);color:#fff}

/* ======= RELATED CATEGORIES ======= */
.rel-cats{background:var(--cream);padding:48px 0;border-top:1px solid var(--bd)}
.rel-cats h2{font-family:'Frank Ruhl Libre',serif;font-size:28px;font-weight:500;margin-bottom:22px}
.rel-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
@media(max-width:1100px){.rel-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.rel-grid{grid-template-columns:repeat(2,1fr)}}
.rel-card{background:#fff;border-radius:var(--rmd);overflow:hidden;border:1px solid var(--bd);transition:all .28s var(--ease);display:flex;flex-direction:column}
.rel-card:hover{box-shadow:var(--sh2);transform:translateY(-2px);border-color:transparent}
.rel-img{aspect-ratio:4/3;background:var(--cream2);overflow:hidden;display:grid;place-items:center}
.rel-img svg{width:85%;height:85%;transition:transform .5s var(--ease)} .rel-card:hover .rel-img svg{transform:scale(1.04)}
.rel-info{padding:10px 12px 12px;background:#fff}
.rel-info b{font-size:13.5px;font-weight:700;color:var(--ink);display:block;margin-bottom:2px}
.rel-info span{font-size:11.5px;color:var(--muted)}

/* ======= TRUST STRIP ======= */
.trust-strip{background:#fff;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);padding:20px 0}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
@media(max-width:700px){.trust-row{grid-template-columns:repeat(2,1fr)}}
.trust-item{display:flex;align-items:center;gap:12px;padding:8px 28px;border-left:1px solid var(--bd)}
.trust-item:last-child{border-left:none}
@media(max-width:700px){.trust-item:nth-child(2){border-left:none}.trust-item:last-child{border-left:1px solid var(--bd)}.trust-item:nth-child(4){border-left:none}}
.trust-ic{width:36px;height:36px;flex-shrink:0;color:var(--acc);display:grid;place-items:center}
.trust-ic svg{width:22px;height:22px}
.trust-item b{display:block;font-size:13px;font-weight:700;margin-bottom:1px}
.trust-item span{font-size:11.5px;color:var(--muted)}

/* ======= STICKY BOTTOM BAR (MOBILE) ======= */
.m-sticky-cart{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:150;
  background:#fff;border-top:1px solid var(--bd);padding:10px 16px 14px;
  box-shadow:0 -4px 20px rgba(0,0,0,.08);
}
@media(max-width:900px){.m-sticky-cart{display:block}}

/* ======= FOOTER ======= */
.ft{background:#f5f0ea;padding:48px 0 20px}
.ft-g{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:36px;margin-bottom:36px;padding-bottom:32px;border-bottom:1px solid var(--bd2)}
@media(max-width:900px){.ft-g{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ft-g{grid-template-columns:1fr}}
.ft h5{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:14px;letter-spacing:.06em;text-transform:uppercase}
.ft li{margin-bottom:8px} .ft a{font-size:13px;color:var(--ink2);transition:color .2s} .ft a:hover{color:var(--ink)}
.ft-br p{font-size:13px;color:var(--muted);line-height:1.65;margin:12px 0 14px}
.ftsoc{display:flex;gap:8px} .ftsoc a{width:32px;height:32px;border-radius:50%;background:#fff;border:1px solid var(--bd);display:grid;place-items:center;transition:all .2s} .ftsoc a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.ft-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}
.ft-pays{display:flex;gap:6px} .pay{padding:3px 8px;border-radius:3px;background:#fff;border:1px solid var(--bd);font-size:10px;font-weight:700;color:var(--ink2)}

/* WhatsApp */
.wa{position:fixed;bottom:80px;inset-inline-start:16px;z-index:60;width:50px;height:50px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px -4px rgba(37,211,102,.5);transition:transform .22s var(--ease)}
@media(min-width:901px){.wa{bottom:22px}}
.wa:hover{transform:translateY(-2px) scale(1.06)}

/* Toast */
.toast{position:fixed;bottom:90px;inset-inline-start:16px;z-index:70;background:#fff;border:1px solid var(--bd);border-radius:var(--rmd);padding:12px 16px;box-shadow:var(--sh3);display:flex;align-items:center;gap:12px;max-width:280px;transform:translateX(-120%);transition:transform .4s var(--ease)}
.toast.show{transform:translateX(0)}
@media(min-width:901px){.toast{bottom:24px}}
.toast-dot{width:38px;height:38px;border-radius:50%;background:var(--cream2);flex-shrink:0;display:grid;place-items:center;font-size:16px}
.toast-t b{display:block;font-size:12.5px;font-weight:700;color:var(--ink);margin-bottom:1px}
.toast-t span{font-size:11px;color:var(--muted)}

/* Utils */
.rv{opacity:0;transform:translateY(18px);transition:all .7s var(--ease)} .rv.in{opacity:1;transform:translateY(0)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 22px;border-radius:var(--rsm);font-size:14px;font-weight:600;transition:all .25s var(--ease);cursor:pointer;white-space:nowrap}
.btn-f{background:var(--ink);color:#fff;border:none} .btn-f:hover{background:#000}
.btn-a{background:var(--acc);color:#fff;border:none} .btn-a:hover{background:var(--accd)}
.btn-s{background:transparent;border:1.5px solid var(--ink);color:var(--ink)} .btn-s:hover{background:var(--ink);color:#fff}

/* ===== COLOR SWATCHES ===== */
.p-colors{display:flex;align-items:center;gap:5px;margin-bottom:8px;flex-wrap:nowrap}
.p-colors .clbl{font-size:10.5px;color:var(--muted);font-weight:500;margin-left:4px;white-space:nowrap}
.cswatch{width:16px;height:16px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .18s var(--ease);flex-shrink:0;position:relative}
.cswatch:hover,.cswatch.on{border-color:var(--ink);transform:scale(1.15)}
.cswatch::after{content:attr(data-name);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:rgba(29,29,31,.9);color:#fff;font-size:10px;padding:3px 7px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s;z-index:10}
.cswatch:hover::after{opacity:1}
.cmore{font-size:10.5px;color:var(--muted);font-weight:600;cursor:pointer;white-space:nowrap;transition:color .18s}
.cmore:hover{color:var(--acc)}

/* ===== ENHANCED MOBILE CARD ===== */
@media(max-width:900px){
  .pcard-name{font-size:13px;-webkit-line-clamp:2}
  .p-colors .cswatch{width:14px;height:14px}
  .p-cart{padding:9px 6px;font-size:12px}
  .p-size{font-size:12px;padding:7px 26px 7px 10px}
}

/* ===== WISHLIST COUNT ===== */
.p-saves{font-size:10.5px;color:var(--muted);margin-bottom:5px;display:flex;align-items:center;gap:4px}
.p-saves svg{width:11px;height:11px;color:var(--acc)}

/* ===== FREE SHIPPING BADGE ===== */
.p-ship{font-size:10px;color:var(--grn);font-weight:600;margin-bottom:5px;display:flex;align-items:center;gap:4px}
.p-ship svg{width:11px;height:11px}

/* ===== QUICK VIEW MODAL ===== */
.qv-modal{position:fixed;inset:0;z-index:500;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;opacity:0;transition:opacity .3s}
.qv-modal.open{opacity:1;pointer-events:all}
.qv-modal::before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.4);opacity:0;transition:opacity .3s}
.qv-modal.open::before{opacity:1}
.qv-box{
  position:relative;z-index:1;background:#fff;width:100%;max-width:560px;
  border-radius:20px 20px 0 0;padding:24px;
  transform:translateY(100%);transition:transform .38s var(--ease);
  max-height:90vh;overflow-y:auto;
}
.qv-modal.open .qv-box{transform:translateY(0)}
@media(min-width:640px){.qv-box{border-radius:var(--rlg);max-width:520px;margin-bottom:24px}}
.qv-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
.qv-img{width:100%;aspect-ratio:1/1;border-radius:var(--rmd);overflow:hidden;margin-bottom:16px;background:var(--cream2);display:grid;place-items:center}
.qv-img svg{width:100%;height:100%}
.qv-title{font-family:'Frank Ruhl Libre',serif;font-size:20px;font-weight:500;color:var(--ink);margin-bottom:10px;flex:1;padding-left:12px}
.qv-close{width:36px;height:36px;border-radius:50%;background:var(--cream);display:grid;place-items:center;flex-shrink:0;cursor:pointer}
.qv-price{font-size:22px;font-weight:700;color:var(--ink);margin-bottom:16px}
.qv-section-t{font-size:12px;font-weight:700;color:var(--ink2);letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.qv-sizes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.qv-size-btn{padding:8px 14px;border-radius:var(--rsm);border:1.5px solid var(--bd);font-size:13px;color:var(--ink);cursor:pointer;transition:all .2s}
.qv-size-btn.on,.qv-size-btn:hover{border-color:var(--ink);background:var(--ink);color:#fff}
.qv-colors{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.qv-col-btn{width:28px;height:28px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:all .2s}
.qv-col-btn.on,.qv-col-btn:hover{border-color:var(--ink);transform:scale(1.12)}
.qv-cart-btn{width:100%;padding:14px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .2s;margin-top:4px}
.qv-cart-btn:hover{background:var(--acc)}
.qv-link{display:block;text-align:center;margin-top:12px;font-size:13px;color:var(--acc);font-weight:600}
.qv-link:hover{text-decoration:underline}

/* ===== SEARCH IN CATEGORY ===== */
.cat-search{padding:14px 0 0;display:flex;gap:10px;align-items:center}
@media(max-width:900px){.cat-search{padding:14px 16px 0}}
.cat-search input{flex:1;max-width:320px;padding:10px 16px;border-radius:var(--rsm);border:1.5px solid var(--bd);font-size:14px;color:var(--ink);background:var(--white);outline:none;transition:border-color .2s}
.cat-search input:focus{border-color:var(--acc)} .cat-search input::placeholder{color:var(--muted)}
.cat-search-ic{color:var(--muted);width:18px;height:18px;margin-right:-34px;margin-left:10px;z-index:1}



/* ==================== WP admin bar compensation ==================== */
.admin-bar .hdr { top: 32px; }
@media (max-width: 782px) { .admin-bar .hdr { top: 46px; } }

/* ==================== Single product template ==================== */
.sp-wrap{padding:40px 0 60px}
.sp-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}
@media(max-width:900px){.sp-grid{grid-template-columns:1fr;gap:24px;padding:0 16px}}
.sp-gallery{background:var(--cream);border-radius:var(--rlg);padding:16px;overflow:hidden;position:relative}
.sp-gallery img{width:100%;height:auto;border-radius:var(--rsm);display:block}
.sp-gallery .woocommerce-product-gallery{position:relative}
.sp-gallery .woocommerce-product-gallery__image img{max-width:100%;height:auto}
/* Hide duplicate gallery images when WC JS not active (no-slider mode) */
.sp-gallery .woocommerce-product-gallery:not(.woocommerce-product-gallery--with-images) .woocommerce-product-gallery__image:not(:first-child){display:none}
.sp-gallery .woocommerce-product-gallery--without-images .woocommerce-product-gallery__image:not(:first-child){display:none}
.sp-gallery .flex-control-thumbs{display:flex;gap:8px;margin-top:12px;list-style:none;padding:0;flex-wrap:wrap}
.sp-gallery .flex-control-thumbs li{width:60px;margin:0}
.sp-gallery .flex-control-thumbs img{cursor:pointer;border-radius:var(--rsm);opacity:.6}
.sp-gallery .flex-control-thumbs img.flex-active,.sp-gallery .flex-control-thumbs img:hover{opacity:1}
/* Constrain sp-gallery when flexslider is NOT initialized (fallback): show only first image */
.sp-gallery > .woocommerce-product-gallery > figure > .woocommerce-product-gallery__image:not(:first-child){display:none}
.sp-title{font-size:32px;line-height:1.1;margin:0 0 14px;color:var(--ink)}
.sp-price{font-size:26px;color:var(--acc);font-weight:700;margin:0 0 20px}
.sp-price del{color:var(--muted);font-weight:400;font-size:18px;margin-inline-end:10px}
.sp-short{font-size:15.5px;color:var(--ink2);line-height:1.65;margin-bottom:22px}
.sp-cart{margin-bottom:22px}
.sp-cart .quantity input{padding:10px 12px;border:1.5px solid var(--bd);border-radius:var(--rsm);width:72px;text-align:center}
.sp-cart .button,.sp-cart .single_add_to_cart_button{background:var(--acc);color:#fff;border:0;padding:14px 28px;border-radius:var(--rsm);font-weight:700;cursor:pointer;font-size:15px;font-family:inherit}
.sp-cart .button:hover{filter:brightness(1.05)}
.sp-meta{color:var(--muted);font-size:13px;line-height:1.7;border-top:1px solid var(--bd);padding-top:14px}
.sp-meta .posted_in,.sp-meta .sku_wrapper{display:block;margin-bottom:4px}
.sp-tabs{margin-top:40px;padding:0 16px}
.sp-tabs .wc-tabs{list-style:none;display:flex;gap:4px;margin:0 0 24px;padding:0;border-bottom:2px solid var(--bd);flex-wrap:wrap}
.sp-tabs .wc-tabs li{margin:0}
.sp-tabs .wc-tabs li a{display:block;padding:12px 20px;color:var(--ink2);text-decoration:none;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-2px}
.sp-tabs .wc-tabs li.active a{color:var(--acc);border-bottom-color:var(--acc)}
.sp-tabs .panel{font-size:15px;line-height:1.65;color:var(--ink2)}
.sp-related{margin-top:60px;padding:0 16px}
.sp-related h2{font-family:'Frank Ruhl Libre',serif;font-size:26px;margin:0 0 20px;color:var(--ink)}
.sp-related .products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;padding:0;margin:0}
@media(max-width:900px){.sp-related .products{grid-template-columns:repeat(2,1fr)}}


/* ==================== Phase 3 Polish ==================== */

/* --- P11: section rhythm --- */
section:not(.strip):not(.hdr):not(.bens):not(.trust-strip){padding-block:clamp(48px,8vw,96px)}
#categories,.quiz-sec,.insp-sec,.faq-sec,.nl-s{position:relative}
section + section.rhythm-sep::before{content:"";display:block;width:80px;height:1px;background:var(--bd2);margin:0 auto calc(-1 * clamp(48px,8vw,96px) / 2)}

/* --- P1: category card overlay + portrait rhythm --- */
.cats{gap:16px}
.cat.cat-v2{background:transparent;border:1px solid var(--bd);border-radius:var(--rlg);overflow:hidden;position:relative}
.cat.cat-v2:hover{box-shadow:var(--sh2);border-color:var(--bd2);transform:translateY(-3px)}
.cat.cat-v2 .cat-img{aspect-ratio:4/5;background:var(--cream2);position:relative;overflow:hidden;display:block}
.cat.cat-v2 .cat-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.cat.cat-v2:hover .cat-img img{transform:scale(1.03)}
/* Strip tints on v2 cards so real image shows through. */
.cat.cat-v2.c1 .cat-img,.cat.cat-v2.c2 .cat-img,.cat.cat-v2.c3 .cat-img,
.cat.cat-v2.c4 .cat-img,.cat.cat-v2.c5 .cat-img,.cat.cat-v2.c6 .cat-img{background:var(--cream2)}
.cat.cat-v2.c1 .cat-img::before,.cat.cat-v2.c2 .cat-img::before,.cat.cat-v2.c3 .cat-img::before,
.cat.cat-v2.c4 .cat-img::before,.cat.cat-v2.c5 .cat-img::before,.cat.cat-v2.c6 .cat-img::before{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.55) 100%);z-index:1;pointer-events:none;mix-blend-mode:normal;
}
.cat.cat-v2 .cat-lbl{position:absolute;inset-inline-start:20px;inset-block-end:20px;z-index:2;color:#fff;pointer-events:none;max-width:calc(100% - 40px)}
.cat.cat-v2 .cat-lbl b{font-family:'Frank Ruhl Libre',serif;font-size:19px;font-weight:500;line-height:1.2;display:block;color:#fff;letter-spacing:-.01em;margin-bottom:2px;text-shadow:0 1px 10px rgba(0,0,0,.35)}
.cat.cat-v2 .cat-lbl span{font-family:'Heebo',sans-serif;font-size:12px;color:rgba(255,255,255,.85);letter-spacing:.02em}
@media(max-width:560px){.cat.cat-v2 .cat-lbl b{font-size:16px} .cat.cat-v2 .cat-lbl{inset-inline-start:14px;inset-block-end:14px}}

/* --- P2: bestsellers slider polish --- */
.slo-v2{position:relative}
.slo-v2 .psl{margin:0}
.slo-v2 .ptrack{padding:4px 0 12px}
.slo-v2 .pc{border-radius:var(--rlg)}
.slo-v2 .pc .pc-img{aspect-ratio:1/1;background:var(--cream2)}
.slo-v2 .pc .pc-img img{object-fit:cover}
.slo-v2 .pc:hover{transform:translateY(-2px);box-shadow:var(--sh2)}
.snav-inside{position:absolute;top:40%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--sh2);border:1px solid var(--bd);z-index:3;display:grid;place-items:center;color:var(--ink);transition:all .22s var(--ease)}
.snav-inside:hover:not(:disabled){background:var(--ink);color:#fff;border-color:var(--ink)}
.snav-inside:disabled{opacity:.35;cursor:not-allowed}
.snav-inside.snav-prev{inset-inline-end:10px}
.snav-inside.snav-next{inset-inline-start:10px}
@media(max-width:600px){.snav-inside{width:38px;height:38px}}
/* Hide outer slbtns when inside arrows are used. */
.slo-v2 .slbtns{display:none}
.sl-progress{height:2px;background:var(--bd);border-radius:2px;margin-top:14px;overflow:hidden;max-width:360px;margin-inline:auto}
.sl-progress-bar{display:block;height:100%;background:var(--acc);border-radius:2px;transition:width .35s var(--ease);width:25%}
/* Add-to-cart icon/text swap. */
.pc-add-v2{position:relative;overflow:hidden;min-height:38px}
.pc-add-v2 .pc-add-ic,.pc-add-v2 .pc-add-tx{display:inline-flex;align-items:center;justify-content:center;transition:transform .28s var(--ease),opacity .22s var(--ease)}
.pc-add-v2 .pc-add-tx{position:absolute;inset:0;opacity:0;transform:translateY(100%)}
.pc:hover .pc-add-v2 .pc-add-ic{opacity:0;transform:translateY(-120%)}
.pc:hover .pc-add-v2 .pc-add-tx{opacity:1;transform:translateY(0)}

/* --- P3: single product enrichment --- */
/* Breadcrumb */
.sp-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);margin-bottom:14px}
.sp-crumbs a{color:var(--muted);transition:color .2s} .sp-crumbs a:hover{color:var(--acc)}
.sp-crumb-sep{color:var(--lt);font-size:13px;margin:0 2px}
.sp-crumb-cur{color:var(--ink);font-weight:500}
/* Rating line */
.sp-rating{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:13px;color:var(--muted)}
.sp-stars{letter-spacing:1px;font-size:15px;color:var(--lt)} .sp-stars .sp-star.on{color:#E5A847}
.sp-stars.placeholder{color:#E5A847}
.sp-rc{font-size:12.5px;color:var(--muted)} .sp-rc.muted{color:var(--muted);font-style:italic}
/* Stock badge */
.sp-stock{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:980px;font-size:13px;font-weight:600;margin-bottom:18px}
.sp-stock.ok{background:rgba(45,94,58,.08);color:var(--grn);border:1px solid rgba(45,94,58,.2)}
.sp-stock.out{background:rgba(198,40,40,.08);color:#C62828;border:1px solid rgba(198,40,40,.2)}
.sp-stock-ic{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:currentColor;color:#fff;font-size:11px;line-height:1}
.sp-stock-ic{color:#fff;background:var(--grn)}
.sp-stock.out .sp-stock-ic{background:#C62828}
/* Variations form polish */
.sp-summary table.variations{width:100%;margin-bottom:12px}
.sp-summary table.variations th,.sp-summary table.variations td{padding:6px 0;text-align:start;vertical-align:middle}
.sp-summary table.variations select{width:100%;padding:11px 14px;border:1.5px solid var(--bd2);border-radius:var(--rsm);background:var(--cream);font-size:14px;color:var(--ink);outline:none;transition:all .2s;font-family:inherit}
.sp-summary table.variations select:focus{border-color:var(--acc);background:#fff}
.sp-summary .reset_variations{color:var(--muted);font-size:12px;text-decoration:underline}
.sp-summary .single_variation_wrap{margin-top:10px}
/* Trust row */
.sp-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0 20px;padding:16px;background:var(--cream);border-radius:var(--rlg);border:1px solid var(--bd)}
.sp-trust-i{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink2);font-weight:500}
.sp-trust-e{font-size:18px;flex-shrink:0;line-height:1}
@media(max-width:520px){.sp-trust{grid-template-columns:1fr}}
/* SKU/category chips */
.sp-meta-v2{border-top:1px solid var(--bd);padding-top:16px;display:flex;flex-wrap:wrap;gap:8px;font-size:12px}
.sp-meta-v2 .sku_wrapper,.sp-meta-v2 .posted_in,.sp-meta-v2 .tagged_as{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;background:var(--cream);border:1px solid var(--bd);border-radius:980px;color:var(--ink2);margin:0}
.sp-meta-v2 a{color:var(--acc)} .sp-meta-v2 a:hover{text-decoration:underline}

/* --- P4: tabs + related polish --- */
.sp-tabs-v2{margin-top:56px;padding:0 16px}
.sp-tabs-v2 .wc-tabs{border-bottom:none;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.sp-tabs-v2 .wc-tabs li{margin:0}
.sp-tabs-v2 .wc-tabs li a{display:block;padding:9px 18px;border-radius:980px;background:var(--cream2);color:var(--ink2);font-weight:600;font-size:13.5px;border:none;margin:0;transition:all .22s var(--ease)}
.sp-tabs-v2 .wc-tabs li.active a{background:var(--ink);color:#fff}
.sp-tabs-v2 .wc-tabs li a:hover{background:var(--cream3)}
.sp-tabs-v2 .wc-tabs li.active a:hover{background:var(--ink)}
.sp-tabs-v2 .panel{max-width:760px;line-height:1.75;font-size:15px;color:var(--ink2)}
.sp-tabs-v2 .panel h2,.sp-tabs-v2 .panel h3{font-family:'Frank Ruhl Libre',serif;font-weight:500;color:var(--ink);margin:20px 0 12px;letter-spacing:-.01em}
.sp-tabs-v2 .panel h2{font-size:22px} .sp-tabs-v2 .panel h3{font-size:18px}
.sp-tabs-v2 .panel p{margin-bottom:14px}
.sp-related .products .product{transition:transform .28s var(--ease),box-shadow .28s var(--ease)}
.sp-related .products .product:hover{transform:translateY(-3px);box-shadow:var(--sh2)}

/* --- P5: category sidebar polish --- */
.cat-side-v2{position:sticky;top:120px;align-self:start;max-height:calc(100vh - 140px);transition:padding .2s}
.cat-side-v2 .cat-side-scroll{max-height:calc(100vh - 160px);overflow-y:auto;padding-inline-end:6px;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s}
.cat-side-v2 .cat-side-scroll::-webkit-scrollbar{width:6px}
.cat-side-v2 .cat-side-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:3px;transition:background .3s}
.cat-side-v2:hover .cat-side-scroll::-webkit-scrollbar-thumb{background:var(--bd2)}
.cat-side-v2:hover .cat-side-scroll{scrollbar-color:var(--bd2) transparent}
.cat-side-v2 .sb-title{font-family:'Heebo',sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-bottom:14px}
.cat-side-v2 .sb-range-wrap{margin-top:4px}
.cat-side-v2 .sb-range-labels{display:flex;justify-content:space-between;font-size:12.5px;color:var(--acc);font-weight:600;margin-bottom:8px}
.cat-side-v2 .sb-range{width:100%;-webkit-appearance:none;appearance:none;height:4px;border-radius:4px;background:var(--cream3);outline:none}
.cat-side-v2 .sb-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--acc);cursor:pointer;border:2px solid #fff;box-shadow:var(--sh1)}
.cat-side-v2 .sb-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--acc);cursor:pointer;border:2px solid #fff;box-shadow:var(--sh1)}
.cat-side-v2 .sb-promo{background:var(--cream);border-radius:var(--rlg);padding:20px;text-align:center;border:1px solid var(--bd);margin-top:8px}
.cat-side-v2 .sb-promo-ic{font-size:22px;margin-bottom:8px}
.cat-side-v2 .sb-promo b{font-size:14px;display:block;margin-bottom:6px;color:var(--ink)}
.cat-side-v2 .sb-promo p{font-size:12.5px;color:var(--muted);margin-bottom:14px;line-height:1.5}
.cat-side-v2 .sb-promo .btn{font-size:13px;padding:9px 18px}
/* Custom-styled sort dropdowns. */
.sort-sel,.m-sort{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23C46B3E' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center;padding-inline-start:36px;padding-inline-end:14px}
/* Drawer entrance spring + backdrop fade. */
.drawer{transition:transform .42s cubic-bezier(.16,.84,.35,1.05)}
.overlay{transition:opacity .32s var(--ease)}
/* Color swatch circle */
.p-colors .cswatch{width:32px;height:32px;border-width:2px}
/* Overflow: keep original smaller variant alive for card-context */
.pcard .p-colors .cswatch{width:16px;height:16px;border-width:2px}

/* --- P6: newsletter polish --- */
.nl-s-v2{position:relative;overflow:hidden}
.nl-s-v2 .nl-pattern{position:absolute;inset:0;opacity:.06;background-image:repeating-linear-gradient(45deg,transparent 0 18px,#fff 18px 19px);pointer-events:none}
.nl-s-v2 .w{position:relative;z-index:1}
.nl-s-v2 .nlform input{padding:18px 18px;border-radius:var(--rmd);background:#fff;border:1.5px solid var(--ink);color:var(--ink);font-size:15px}
.nl-s-v2 .nlform input::placeholder{color:var(--muted)}
.nl-s-v2 .nlform input:focus{border-color:var(--acc);background:#fff}
.nl-s-v2 .nlform .subb{padding:18px 28px;border-radius:var(--rmd);background:var(--acc);color:#fff;font-weight:700;box-shadow:0 4px 14px -4px rgba(196,107,62,.55)}
.nl-s-v2 .nlform .subb:hover{background:var(--accd);transform:translateY(-1px)}
.nl-s-v2 .nl-note{color:rgba(255,255,255,.55);margin-top:4px}
@media(max-width:640px){
  .nl-s-v2 .nlrow{flex-direction:column}
  .nl-s-v2 .nlform .subb{width:100%}
}

/* --- P7: footer polish --- */
.ft-v2{background:var(--cream2);border-top:1px solid var(--bd);color:var(--ink2);padding:64px 0 24px}
.ft-v2 .ftg{grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:36px;margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--bd)}
@media(max-width:900px){.ft-v2 .ftg{grid-template-columns:1fr 1fr}} @media(max-width:520px){.ft-v2 .ftg{grid-template-columns:1fr}}
.ft-v2 .ft-brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:700;font-size:16px;margin-bottom:6px;font-family:'Frank Ruhl Libre',serif;letter-spacing:-.01em}
.ft-v2 .ft-brand-ic{width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--bd);display:grid;place-items:center;color:var(--ink)}
.ft-v2 h5{color:var(--ink);margin-bottom:14px;font-size:12px}
.ft-v2 .ft-contact li{color:var(--ink2);font-size:13px}
.ft-v2 .ft-wa-btn{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:10px 16px;border-radius:var(--rsm);background:#25D366;color:#fff;font-size:13px;font-weight:700;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}
.ft-v2 .ft-wa-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px -6px rgba(37,211,102,.6);color:#fff}
.ft-v2 .ftbot{padding-top:4px}
.ft-v2 .ftpays{gap:6px} .ft-v2 .pay{background:#fff}

/* --- P8: toast + WA pulse --- */
.toast{transform:translateY(20px);opacity:0;transition:transform .4s var(--ease),opacity .4s var(--ease);z-index:90}
.toast.show{transform:translateY(0);opacity:1}
@keyframes wa-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}
.wa-pulse{animation:wa-pulse 2.4s var(--ease) infinite;z-index:90}
.wa-pulse:hover{animation-play-state:paused}

/* --- P9: hero mobile tightness --- */
@media(max-width:640px){
  .hero-v2 .hero-g{grid-template-columns:1fr;min-height:0;display:flex;flex-direction:column}
  .hero-v2 .hero-t{order:1;padding:28px 20px 20px}
  .hero-v2 .hero-vis{order:2;aspect-ratio:1/1;min-height:0}
  .hero-v2 .hero-t h1{font-size:clamp(28px,7vw,36px)}
  .hero-v2 .hero-t .lead{font-size:14.5px;margin-bottom:20px}
  .hero-v2 .btns{flex-direction:column;gap:10px}
  .hero-v2 .btns .btn{width:100%}
  .hero-v2 .tr{font-size:11.5px;gap:12px;margin-top:18px;padding-top:16px}
}

/* --- P10: micro interactions --- */
.btn:active,.pc-add:active,.cta:active,.sp-cart .single_add_to_cart_button:active,.btn-lm:active,.subb:active{transform:scale(.98);transition:transform .1s}
.sp-tabs .panel a,.sp-short a,.faq-a a{text-underline-offset:3px;transition:color .22s}
.sp-tabs .panel a:hover,.sp-short a:hover,.faq-a a:hover{color:var(--acc)}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:3px}
button:focus-visible,a:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{transition:none !important;animation:none !important}
  .rv{opacity:1;transform:none !important}
}

/* --- Active-filters pills (P5) visual lift --- */
.af-pill{box-shadow:inset 0 0 0 1px var(--bd)}
.af-pill .rm{background:var(--muted)}

/* --- Alternating section bg (P11) --- */
body.home #categories,body.home #wpl,body.home .inq-s,body.home .biz-s,body.home .faq-sec,body.home .gls-sec,body.home .insp-sec,body.home .quiz-sec{background:var(--warmwh)}
body.home .prt-sec,body.home .trend-row{background:#fff}

/* --- Filters drawer spring --- */
@media(max-width:900px){
  .drawer{border-top-left-radius:20px;border-top-right-radius:20px}
}

/* ==================== PHASE 4 POLISH ==================== */

/* --- P4-1 Hero: Ken Burns zoom + gradient shade + scroll-hint chevrons --- */
.hero-vis-v4{position:relative}
.hero-vis-v4 .hero-vis-img{transform-origin:center center;will-change:transform;animation:mkKenBurns 20s ease-in-out infinite alternate}
@keyframes mkKenBurns{0%{transform:scale(1)}100%{transform:scale(1.06)}}
.hero-vis-shade{position:absolute;inset:0;border-radius:18px;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.08) 100%)}
.hero-scroll-hint{display:none;position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:var(--muted);opacity:.7;pointer-events:none}
.hero-scroll-hint svg{display:block;margin:-3px auto 0}
.hero-scroll-hint svg:first-child{animation:mkChevBounce 1.5s ease-in-out infinite;opacity:.55}
.hero-scroll-hint svg:last-child{animation:mkChevBounce 1.5s ease-in-out .12s infinite}
@keyframes mkChevBounce{0%,100%{transform:translateY(0);opacity:.55}50%{transform:translateY(8px);opacity:1}}
.hero-v2{position:relative}
@media(min-width:900px){.hero-scroll-hint{display:block}}

/* --- P4-2 Bestsellers: category accent strip (inline-start) --- */
.pc-acc{position:relative}
.pc-acc::before{content:"";position:absolute;top:0;bottom:30%;inset-inline-start:0;width:3px;opacity:.85;transition:width .22s var(--ease),opacity .22s var(--ease);z-index:2;pointer-events:none;border-radius:0 0 3px 0}
.pc-acc:hover::before{width:5px;opacity:1}
.pc-acc-0::before{background:#C46B3E}
.pc-acc-1::before{background:#2D5E3A}
.pc-acc-2::before{background:#5A7A8C}
.pc-acc-3::before{background:#C4950A}
.pc-acc-4::before{background:#6B1A2E}

/* --- P4-3 Product gallery: zoom badge + thumb scroll-snap --- */
.sp-gallery-v2{position:relative}
.sp-zoom-hint{
  position:absolute;top:22px;inset-inline-start:22px;z-index:5;
  display:inline-flex;align-items:center;gap:5px;
  padding:6px 10px;border-radius:999px;
  background:rgba(0,0,0,.55);color:#fff;font-size:11px;font-weight:500;
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  pointer-events:none;opacity:0;animation:mkZoomHint 4s ease-out forwards;
}
.sp-zoom-hint svg{width:12px;height:12px;opacity:.95}
@keyframes mkZoomHint{0%{opacity:0;transform:translateY(-4px)}10%{opacity:1;transform:translateY(0)}75%{opacity:1}100%{opacity:0;transform:translateY(-2px);visibility:hidden}}
.sp-gallery-v2 .flex-control-thumbs{
  flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:thin;scrollbar-color:var(--acc) transparent;
  padding-bottom:4px;
}
.sp-gallery-v2 .flex-control-thumbs li{scroll-snap-align:start;flex:0 0 auto}
.sp-gallery-v2 .flex-control-thumbs::-webkit-scrollbar{height:4px}
.sp-gallery-v2 .flex-control-thumbs::-webkit-scrollbar-thumb{background:var(--acc);border-radius:4px}
.sp-gallery-v2 .flex-control-thumbs::-webkit-scrollbar-track{background:transparent}
@media(max-width:640px){
  .sp-zoom-hint{top:16px;inset-inline-start:16px;font-size:10.5px;padding:5px 9px}
}

/* --- P4-4 Product card hover tighten (desktop) --- */
.pc{transition:box-shadow .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}
.pc:hover{box-shadow:0 10px 32px rgba(34,34,34,.09)}
.pc:hover .pc-img img{transform:scale(1.04);transition-duration:.3s;transition-timing-function:cubic-bezier(.2,.8,.2,1)}
.pc-nm{transition:color .2s var(--ease)}
.pc:hover .pc-nm{color:var(--acc)}
@media(min-width:900px){
  .pc-add-v2{opacity:.92;transform:translateY(6px);transition:opacity .25s var(--ease),transform .25s var(--ease),background .2s}
  .pc:hover .pc-add-v2{opacity:1;transform:translateY(0)}
}

/* --- P4-5 Category hero proportion (desktop) --- */
@media(min-width:900px){
  .cat-hero-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:36px}
  .cat-hero-vis{width:auto;height:auto;aspect-ratio:5/4;max-width:100%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04);border-radius:14px}
}

/* --- P4-6 Section rhythm: alternate homepage bg tones
   Matches actual markup: hero, bens, categories, wpl, prt-sec, stk, trend-row,
   gls-sec, insp-sec, cust, biz-s, inq-s, quiz-sec, reviews, faq-sec, nl-s. */
body.home #hero{background:var(--cream)}
body.home .bens{background:#fff}
body.home #categories{background:var(--warmwh)}
body.home #wpl{background:var(--cream)}
body.home .prt-sec{background:var(--warmwh)}
body.home #stk{background:var(--cream)}
body.home .trend-row{background:var(--warmwh)}
body.home .gls-sec{background:var(--cream)}
body.home .insp-sec{background:var(--warmwh)}
body.home #cust{background:var(--cream)}
body.home .biz-s{background:var(--warmwh)}
body.home .inq-s{background:var(--cream)}
body.home .quiz-sec{background:var(--warmwh)}
body.home .faq-sec{background:var(--cream)}
/* leave .nl-s alone — it's a colored CTA section */

/* --- P4-7 Mobile polish --- */
@media(max-width:640px){
  .btn{padding-inline:18px}
  .sp-cart .single_add_to_cart_button{padding:14px 18px!important}
  .toast{bottom:92px!important;left:12px!important;right:auto!important;inset-inline-start:auto!important;inset-inline-end:auto!important;max-width:calc(100vw - 24px)!important}
}
.stky,.stky-bar,.sp-sticky-bar,.m-filter-bar{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.m-filter-bar{background:rgba(255,255,255,.92);border-top:1px solid rgba(227,221,213,.6)}

/* --- P4-8 Footer: divider + newsletter + social hover --- */
.ft-divider{height:1px;margin:18px 0 14px;background:linear-gradient(90deg,transparent,var(--bd),transparent);border:0}
.ftsoc a{transition:transform .2s var(--ease),background .2s var(--ease),color .2s var(--ease)}
.ftsoc a:hover{transform:rotate(-5deg) scale(1.08)}
.ft-newsletter{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0 6px;flex-wrap:wrap;border-top:1px solid var(--bd)}
.ft-nl-t b{display:block;font-size:14.5px;color:var(--ink);font-weight:700;margin-bottom:3px}
.ft-nl-t span{font-size:12.5px;color:var(--muted)}
.ft-nl-f{display:flex;gap:8px;flex-wrap:wrap;align-items:center;min-width:280px}
.ft-nl-f input[type=email]{flex:1;min-width:200px;padding:11px 14px;border:1.5px solid var(--bd);background:#fff;border-radius:var(--rsm);font-size:13.5px;color:var(--ink);outline:none;transition:border-color .2s}
.ft-nl-f input[type=email]:focus{border-color:var(--acc)}
.ft-nl-f button{padding:11px 20px;background:var(--ink);color:#fff;border-radius:var(--rsm);font-size:13.5px;font-weight:600;transition:background .2s}
.ft-nl-f button:hover{background:var(--acc)}
.ft-nl-ok{font-size:12.5px;color:var(--grn);font-weight:600;flex-basis:100%}
@media(max-width:640px){.ft-newsletter{flex-direction:column;align-items:stretch;gap:12px}.ft-nl-f{width:100%}}

/* --- P4-9 Typography micro-polish --- */
h2.serif{text-wrap:balance}
.hero-t h1{letter-spacing:-.02em;font-feature-settings:"kern" 1,"liga" 1}
.pc-pr,.price,.sp-price,.woocommerce-Price-amount{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

/* --- P4-10 Accessibility: skip link + stronger focus --- */
.skip-link{
  position:absolute;top:-40px;inset-inline-start:12px;z-index:9999;
  background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--rsm);
  font-size:13.5px;font-weight:600;
  transition:top .2s var(--ease);
}
.skip-link:focus{top:8px;outline:2px solid var(--acc);outline-offset:2px}
.sh-sub{color:var(--ink2)} /* bumped from muted for WCAG AA on cream/warmwh */
.pc-cat{color:var(--ink2);opacity:.85}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--acc);outline-offset:2px}

/* --- P4-11 Scroll-to-top FAB --- */
.btt{
  position:fixed;inset-inline-end:22px;bottom:88px;z-index:120;
  width:44px;height:44px;border-radius:50%;
  background:#fff;border:1.5px solid var(--bd);
  box-shadow:var(--sh2);color:var(--ink);
  display:grid;place-items:center;
  opacity:0;pointer-events:none;
  transition:opacity .28s var(--ease),transform .28s var(--ease),box-shadow .22s var(--ease);
  transform:translateY(12px);
}
.btt.vis{opacity:1;pointer-events:auto;transform:translateY(0)}
.btt:hover{background:var(--ink);color:#fff;box-shadow:var(--sh3)}
@media(max-width:640px){.btt{inset-inline-end:14px;bottom:76px;width:40px;height:40px}}

/* --- P4-12 Category product card image bg tint by index --- */
.pcard:nth-child(3n+1) .pcard-img{background:#F4EAD8}
.pcard:nth-child(3n+2) .pcard-img{background:#DFF0E4}
.pcard:nth-child(3n+3) .pcard-img{background:#E8F0F8}

/* --- P4-13 Header search focus glow --- */
.srch input:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(196,107,62,.12)}

/* --- P4-14 Cat hero: tighter mobile spacing --- */
@media(max-width:640px){
  .cat-hero{padding:16px 0 0}
  .cat-hero-txt h1{font-size:clamp(22px,7vw,32px)}
  .cat-hero-meta{flex-direction:column;gap:8px}
  .meta-badge{font-size:12px}
}

/* ==================== PHASE 5 — MISSING FEATURES ==================== */

/* --- P5-1 Subcategory chip dot-c image --- */
.dot-c img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}

/* --- P5-2 Load More button --- */
#wcPagination{display:none!important}
.load-more-btn{
  display:flex;flex-direction:column;align-items:center;gap:3px;
  padding:14px 44px;border-radius:var(--rsm);
  background:#fff;border:1.5px solid var(--bd);
  color:var(--ink);font-size:14px;font-weight:600;
  cursor:pointer;
  transition:border-color .22s var(--ease),box-shadow .22s var(--ease),transform .2s var(--ease);
  margin:32px auto 0;width:fit-content;
}
.load-more-btn:hover{border-color:var(--ink);box-shadow:var(--sh2);transform:translateY(-1px)}
.load-more-btn.loading .load-more-ic svg{animation:spin .8s linear infinite}
.load-more-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}
.load-more-sub{font-size:11.5px;color:var(--muted);font-weight:400}
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}

/* --- P5-3 Related categories section --- */
.rel-cats-sec{background:#fff;padding:40px 0 52px;border-top:1px solid var(--bd)}
.rel-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
@media(max-width:1000px){.rel-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.rel-grid{grid-template-columns:repeat(2,1fr)}}
.rel-card{
  display:flex;flex-direction:column;
  border-radius:var(--rmd);overflow:hidden;
  border:1.5px solid var(--bd);
  transition:all .3s var(--ease);
}
.rel-card:hover{border-color:var(--bd2);box-shadow:var(--sh2);transform:translateY(-3px)}
.rel-img{aspect-ratio:4/3;overflow:hidden;background:var(--cream2)}
.rel-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .42s var(--ease)}
.rel-card:hover .rel-img img{transform:scale(1.06)}
.rel-info{padding:10px 12px 13px;background:#fff}
.rel-info b{display:block;font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:2px}
.rel-info span{font-size:11.5px;color:var(--muted)}

/* --- P5-4 Single product mobile sticky bar --- */
.sp-sticky-bar{
  display:none;
  position:fixed;bottom:0;inset-inline-start:0;inset-inline-end:0;z-index:120;
  background:rgba(255,255,255,.97);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border-top:1px solid var(--bd);
  padding:10px 16px;gap:12px;
  align-items:center;justify-content:space-between;
  box-shadow:0 -4px 20px rgba(0,0,0,.10);
  transition:opacity .3s var(--ease),transform .3s var(--ease);
}
.sp-sticky-bar.vis{display:flex}
.sp-sticky-in{flex:1;min-width:0}
.sp-sticky-nm{font-size:12.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}
.sp-sticky-pr .woocommerce-Price-amount,.sp-sticky-pr bdi{font-weight:700;color:var(--acc);font-size:14px}
.sp-sticky-add{padding:10px 20px;font-size:13.5px;flex-shrink:0}
@media(min-width:769px){.sp-sticky-bar{display:none!important}}

/* ═══════════════════════════════════════════════════════════════════════════
   SINGLE PRODUCT — WALLPAPER & STICKER TEMPLATES
   Ported from madbekot-kir-product-wallpaper.html + madbekot-kir-product-sticker.html
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── BREADCRUMB ── */
.bc{background:#fff;border-bottom:1px solid var(--bd);padding:10px 0;font-size:12.5px;color:var(--muted)}
.bc-in{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bc a{color:var(--muted);transition:color .2s}.bc a:hover{color:var(--ink)}
.bc .sep{opacity:.4}.bc .curr{color:var(--ink);font-weight:600}

/* ── PRODUCT PAGE WRAPPER ── */
.prod-page{padding:32px 0 0}

/* ── WALLPAPER GRID ── (55:45 — image gets the larger column) */
.prod-grid{display:grid;grid-template-columns:55fr 45fr;gap:52px;align-items:start}
@media(max-width:900px){
	.prod-grid{grid-template-columns:1fr;gap:24px}
	.prod-grid > .gallery{order:1}
	.prod-grid > .prod-info{order:2}
}

/* ── STICKER GRID ── (scoped to .prod-page so it doesn't break the 4-col category .pgrid) */
.prod-page .pgrid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
@media(max-width:900px){.prod-page .pgrid{grid-template-columns:1fr;gap:24px}}

/* ── GALLERY SHARED ── */
.gallery{position:sticky;top:80px}
.gallery-main{aspect-ratio:1/1;border-radius:var(--rlg);overflow:hidden;background:var(--cream2);position:relative;cursor:zoom-in;border:1px solid var(--bd)}
.gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.gallery-main:hover img{transform:scale(1.05)}
.zoom-hint{position:absolute;bottom:12px;inset-inline-end:12px;background:rgba(255,255,255,.9);backdrop-filter:blur(6px);padding:5px 11px;border-radius:4px;font-size:11px;color:var(--ink);display:flex;align-items:center;gap:5px;font-weight:500;pointer-events:none}
.gallery-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.gallery-thumbs::-webkit-scrollbar{display:none}
.thumb{width:72px;height:72px;border-radius:var(--rsm);overflow:hidden;flex-shrink:0;border:2px solid transparent;cursor:pointer;background:var(--cream2);transition:border-color .2s;display:grid;place-items:center}
.thumb.on{border-color:var(--acc)}
.thumb img{width:100%;height:100%;object-fit:cover}
.gallery-share{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:12.5px;color:var(--muted)}
.share-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:var(--rsm);border:1px solid var(--bd);color:var(--ink2);font-size:12px;font-weight:500;transition:all .2s;cursor:pointer;background:#fff}
.share-btn:hover{border-color:var(--ink);color:var(--ink)}

/* ── STICKER GALLERY SPECIFIC ── */
.gal-main{aspect-ratio:1/1;border-radius:var(--rlg);overflow:hidden;background:var(--cream2);position:relative;border:1px solid var(--bd);cursor:zoom-in;transition:all .3s var(--ease)}
.gal-main:hover .gal-inner{transform:scale(1.04)}
.gal-inner{width:100%;height:100%;transition:transform .5s var(--ease);display:grid;place-items:center}
.gal-bg{position:absolute;inset:0;background:var(--cream2);transition:background .4s}
.gal-sale{position:absolute;top:12px;inset-inline-start:12px;background:#C62828;color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:4px}
.gal-zoom{position:absolute;bottom:12px;inset-inline-end:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(4px);padding:5px 11px;border-radius:4px;font-size:11px;color:var(--ink);display:flex;align-items:center;gap:5px;font-weight:500;pointer-events:none}
.sticker-svg{transition:all .4s var(--ease);filter:drop-shadow(0 8px 24px rgba(0,0,0,.12));position:relative;z-index:1}
.wall-ctx{position:absolute;inset:0;opacity:.22;pointer-events:none;z-index:0}
.gal-thumbs{display:flex;gap:7px;margin-top:9px;overflow-x:auto;scrollbar-width:none}
.gal-thumbs::-webkit-scrollbar{display:none}
.gal-th{width:68px;height:68px;border-radius:var(--rsm);overflow:hidden;flex-shrink:0;border:2px solid transparent;cursor:pointer;background:var(--cream2);display:grid;place-items:center;transition:border-color .2s;position:relative}
.gal-th.on{border-color:var(--acc)}
.gal-th-inner{width:100%;height:100%;display:grid;place-items:center;overflow:hidden}
.th-label{position:absolute;bottom:3px;left:0;right:0;font-size:8px;text-align:center;color:var(--muted);font-weight:500}
.gal-share{display:flex;align-items:center;gap:7px;margin-top:11px;font-size:12px;color:var(--muted)}
.shr{display:flex;align-items:center;gap:4px;padding:5px 11px;border-radius:5px;border:1px solid var(--bd);color:var(--ink2);font-size:11.5px;font-weight:500;cursor:pointer;transition:all .18s;background:#fff}
.shr:hover{border-color:var(--ink)}

/* ── PRODUCT INFO SHARED ── */
.prod-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.badge-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:980px;font-size:11.5px;font-weight:600;border:1px solid}
.badge-cat{background:var(--cream2);border-color:var(--bd);color:var(--ink2)}
.badge-new{background:#FFF0EB;border-color:#F5C4A8;color:var(--acc)}
.badge-fast{background:var(--grn);border-color:transparent;color:#fff}
.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:980px;font-size:11px;font-weight:600;border:1px solid}
.bcat{background:var(--cream2);border-color:var(--bd);color:var(--ink2)}
.bsale{background:#FFF0F0;border-color:#FFB3B3;color:#C62828}
.bfast{background:var(--grn);border-color:transparent;color:#fff}
h1.prod-name{font-family:'Frank Ruhl Libre',serif;font-size:clamp(22px,3vw,34px);font-weight:500;color:var(--ink);margin-bottom:12px;line-height:1.2;letter-spacing:-.015em}
h1.pname{font-family:'Frank Ruhl Libre',serif;font-size:clamp(22px,2.8vw,33px);font-weight:500;color:var(--ink);margin-bottom:10px;line-height:1.2}
.prod-short{font-size:15px;color:var(--ink2);line-height:1.65;margin-bottom:20px}
.pshort{font-size:14.5px;color:var(--ink2);line-height:1.65;margin-bottom:16px}
.prod-meta{font-size:12px;color:var(--muted);margin-bottom:22px;display:flex;gap:16px;flex-wrap:wrap}
.prod-meta b{color:var(--ink2);font-weight:600}
.pmeta{font-size:12px;color:var(--muted);margin-bottom:20px;display:flex;gap:14px;flex-wrap:wrap}
.pmeta b{color:var(--ink2);font-weight:600}

/* ── PRICE BLOCK ── */
.price-block{display:flex;align-items:baseline;gap:10px;margin-bottom:22px}
.price-now{font-family:'Frank Ruhl Libre',serif;font-size:34px;font-weight:500;color:var(--ink);line-height:1}
.price-was{font-size:17px;color:var(--lt);text-decoration:line-through}
.price-off{background:#FFF0F0;color:#C62828;font-size:12px;font-weight:700;padding:3px 9px;border-radius:4px}
.price-note{font-size:12px;color:var(--muted);margin-top:5px}

/* ── DIMENSION INPUTS ── */
.section-lbl{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.dim-sub{font-size:12.5px;color:var(--muted);margin-bottom:12px;line-height:1.5}
.dim-row{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:end;margin-bottom:8px}
.dim-field{display:flex;flex-direction:column;gap:5px}
.dim-field label{font-size:13px;font-weight:600;color:var(--ink2)}
.dim-input-wrap{position:relative}
.dim-input{width:100%;padding:12px 42px 12px 14px;border:2px solid var(--bd2);border-radius:var(--rsm);font-size:20px;font-weight:700;color:var(--ink);background:#fff;outline:none;transition:border-color .2s;text-align:center}
.dim-input:focus{border-color:var(--acc)}.dim-input.valid{border-color:var(--grn)}
.dim-unit{position:absolute;top:50%;inset-inline-start:10px;transform:translateY(-50%);font-size:12px;color:var(--muted);font-weight:500;pointer-events:none}
.dim-x{font-size:22px;color:var(--lt);font-weight:300;text-align:center;padding-bottom:10px}
.dim-hint{font-size:11px;color:var(--lt);margin-top:4px}
.area-strip{background:var(--cream);border-radius:var(--rsm);padding:10px 14px;margin-top:10px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--bd)}
.area-strip.hidden{display:none!important}
.area-strip span{font-size:13px;color:var(--ink2)}
.area-strip b{font-size:17px;font-weight:700;color:var(--ink)}

/* ── SIZE MODE TABS ── */
.size-section{margin-bottom:20px}
.size-mode-tabs{display:flex;border:1.5px solid var(--bd2);border-radius:var(--rsm);overflow:hidden;margin-bottom:16px}
.smt{flex:1;padding:10px;font-size:13.5px;font-weight:600;color:var(--muted);background:#fff;cursor:pointer;transition:all .2s;border:none}
.smt.on{background:var(--ink);color:#fff}
.smt:not(.on):hover{background:var(--cream)}
.std-sizes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.std-size{flex:1;min-width:72px;border:2px solid var(--bd);border-radius:var(--rsm);padding:10px 8px;cursor:pointer;text-align:center;background:#fff;transition:all .22s var(--ease);position:relative}
.std-size:hover{border-color:var(--bd2)}
.std-size.on{border-color:var(--ink);background:var(--cream)}
.ss-dims{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.2}
.ss-unit{font-size:10px;color:var(--muted);margin-bottom:4px}
.ss-price{font-size:13px;font-weight:600;color:var(--acc)}
.std-size.on .ss-price{color:var(--ink)}
.ss-badge{position:absolute;top:-8px;left:50%;transform:translateX(-50%);background:var(--grn);color:#fff;font-size:8.5px;font-weight:700;padding:2px 7px;border-radius:3px;white-space:nowrap}
.std-sel-info{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--ink2);padding:10px 12px;background:var(--cream);border-radius:var(--rsm);margin-bottom:12px}
.custom-link{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;color:var(--acc);font-weight:600;cursor:pointer;background:none;border:none;padding:2px 0;transition:opacity .2s}
.custom-link:hover{opacity:.75}

/* ── COLOR SWATCHES ── */
.sel-name{font-size:13px;color:var(--ink);font-weight:600;letter-spacing:0;text-transform:none}
.color-swatches{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.cswatch{width:36px;height:36px;border-radius:50%;cursor:pointer;border:3px solid transparent;outline:2px solid transparent;transition:all .2s var(--ease);position:relative;flex-shrink:0}
.cswatch:hover{transform:scale(1.12)}
.cswatch.on{border-color:#fff;outline-color:var(--ink);transform:scale(1.12)}
.cswatch-tooltip{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:10.5px;font-weight:500;padding:3px 8px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:10}
.cswatch:hover .cswatch-tooltip{opacity:1}
.cswatch-tooltip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:4px solid transparent;border-top-color:var(--ink)}
.color-selected-strip{display:flex;align-items:center;gap:10px;background:var(--cream);border-radius:var(--rsm);padding:10px 14px;margin-bottom:18px;border:1px solid var(--bd)}
.color-dot-lg{width:28px;height:28px;border-radius:50%;border:2px solid rgba(0,0,0,.08);flex-shrink:0;transition:background .3s}
.color-name-lbl{font-size:14px;font-weight:600;color:var(--ink);flex:1}
.color-sub{font-size:12px;color:var(--muted)}

/* ── SIZE SELECTOR (sticker) ── */
.sizes-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.sz-btn{display:flex;flex-direction:column;align-items:center;padding:11px 16px;border-radius:var(--rsm);border:2px solid var(--bd);background:#fff;cursor:pointer;transition:all .2s var(--ease);min-width:74px;position:relative}
.sz-btn:hover{border-color:var(--bd2)}
.sz-btn.on{border-color:var(--ink);background:#FAFAF8}
.sz-btn.on .sz-cm{color:var(--ink)}
.sz-btn.on .sz-lbl{color:var(--acc)}
.sz-lbl{font-size:16px;font-weight:700;color:var(--ink2);line-height:1}
.sz-cm{font-size:10.5px;color:var(--muted);margin-top:3px}
.sz-price{font-size:11.5px;font-weight:600;color:var(--acc);margin-top:3px}
.sz-pop{position:absolute;top:-8px;inset-inline-end:6px;background:var(--acc);color:#fff;font-size:8.5px;font-weight:700;padding:1.5px 6px;border-radius:3px}
.size-guide-link{font-size:12.5px;color:var(--acc);font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;margin-bottom:18px}

/* ── QUANTITY ── */
.qty-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.qty-ctrl{display:flex;align-items:center;border:2px solid var(--bd2);border-radius:var(--rsm);overflow:hidden}
.qty-btn{width:38px;height:38px;display:grid;place-items:center;font-size:18px;color:var(--ink2);transition:background .18s;cursor:pointer;flex-shrink:0}
.qty-btn:hover{background:var(--cream)}
.qty-val{width:44px;text-align:center;font-size:16px;font-weight:700;color:var(--ink);border:none;border-right:1.5px solid var(--bd);border-left:1.5px solid var(--bd);height:38px;outline:none}
.qty-note{font-size:12px;color:var(--muted)}

/* ── URGENCY STRIP ── */
.urgency-strip{display:flex;gap:14px;align-items:center;padding:10px 14px;background:#FFF8F5;border-radius:var(--rsm);border:1px solid #F5D5C8;margin-bottom:14px;flex-wrap:wrap}
.urg-item{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink2);font-weight:500}
.urg-item svg{color:var(--acc);flex-shrink:0}

/* ── SAMPLE CTA ── */
.sample-cta{margin-bottom:10px}

/* ── METER PRODUCTS UI (per-running-meter products) ── */
.mk-meter-block{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.mk-meter-head{font-size:14px;color:var(--muted);font-weight:600;letter-spacing:.02em}
.mk-meter-info{display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:#F7F3EE;border:1.5px solid #E3DDD5;border-radius:var(--rsm);padding:10px 14px;font-size:13.5px;color:var(--ink)}
.mk-meter-pill{background:var(--ink);color:#fff;font-size:12px;font-weight:700;padding:4px 11px;border-radius:999px;letter-spacing:.02em}
.mk-meter-info b{font-weight:800}
.mk-meter-sep{color:#bbb;margin:0 2px}
.mk-meter-counter{display:grid;grid-template-columns:1fr 1.6fr 1fr;align-items:stretch;border:1.5px solid var(--bd2);border-radius:var(--rsm);overflow:hidden;background:#fff;min-height:90px}
.mk-meter-btn{background:#fff;border:0;border-inline-start:1px solid var(--bd2);font-size:30px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .15s;display:flex;align-items:center;justify-content:center;line-height:1}
.mk-meter-btn:first-child{border-inline-start:0}
.mk-meter-btn:hover{background:var(--cream)}
.mk-meter-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;border-inline-start:1px solid var(--bd2);border-inline-end:1px solid var(--bd2);background:#fff}
.mk-meter-num{border:0;background:transparent;text-align:center;font-size:40px;font-weight:800;color:var(--ink);line-height:1;width:100%;padding:0;margin:0;outline:none;-moz-appearance:textfield}
.mk-meter-num::-webkit-outer-spin-button,.mk-meter-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.mk-meter-unit{font-size:13px;color:var(--muted);margin-top:4px;font-weight:600}
.mk-meter-quick{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted)}
.mk-meter-quick-lbl{font-weight:600}
.mk-meter-quick button{background:#fff;border:1.5px solid var(--bd2);border-radius:8px;padding:7px 13px;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s}
.mk-meter-quick button:hover{border-color:var(--ink);background:var(--cream)}
.mk-meter-summary{display:flex;align-items:center;justify-content:space-between;background:#F7F3EE;border:1.5px solid #E3DDD5;border-radius:var(--rsm);padding:14px 18px;gap:14px}
.mk-meter-sum-r{display:flex;flex-direction:column;gap:3px}
.mk-meter-sum-cap{font-size:13px;color:var(--muted);font-weight:600}
.mk-meter-sum-calc{font-size:13px;color:var(--ink2)}
.mk-meter-sum-l{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.mk-meter-total{font-size:30px;font-weight:800;color:var(--ink);line-height:1}
.mk-meter-rate{font-size:12px;color:var(--muted)}
.mk-meter-cart{margin-top:2px}
@media(max-width:520px){
	.mk-meter-counter{min-height:78px}
	.mk-meter-num{font-size:32px}
	.mk-meter-btn{font-size:26px}
	.mk-meter-total{font-size:24px}
	.mk-meter-info{font-size:12.5px}
}

/* ── CTA BUTTONS ── */
.btn-order{display:flex;align-items:center;justify-content:center;gap:9px;padding:16px 24px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:16px;font-weight:700;width:100%;transition:all .25s var(--ease)}
.btn-order:hover{background:var(--acc);box-shadow:0 8px 28px -6px rgba(196,107,62,.45)}
.btn-order.off{background:var(--lt);cursor:not-allowed;box-shadow:none}
.btn-wl{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 24px;border-radius:var(--rsm);border:1.5px solid var(--bd2);color:var(--ink2);font-size:14px;font-weight:500;width:100%;transition:all .22s var(--ease);margin-top:8px;cursor:pointer;background:#fff}
.btn-wl:hover{border-color:var(--acc);color:var(--acc)}
.btn-cart{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 20px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:15.5px;font-weight:700;width:100%;transition:all .25s var(--ease);margin-bottom:9px;cursor:pointer;border:none}
.btn-cart:hover{background:var(--acc);box-shadow:0 8px 28px -6px rgba(196,107,62,.45)}
.btn-cart.off{background:var(--lt);cursor:not-allowed}
.btn-wish{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 20px;border-radius:var(--rsm);border:1.5px solid var(--bd2);color:var(--ink2);font-size:14px;font-weight:500;width:100%;transition:all .2s;margin-bottom:9px;cursor:pointer;background:#fff}
.btn-wish:hover{border-color:var(--acc);color:var(--acc)}
.btn-custom{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 20px;border-radius:var(--rsm);border:1.5px solid var(--acc);color:var(--acc);font-size:13.5px;font-weight:600;width:100%;transition:all .2s;cursor:pointer;background:#fff}
.btn-custom:hover{background:#FFF0EB}

/* ── TRUST MINI ── */
.trust-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:16px;border:1px solid var(--bd);border-radius:var(--rmd);overflow:hidden}
.tmi{display:flex;align-items:center;gap:7px;padding:11px 12px;background:#fff;font-size:11.5px}
.tmi+.tmi{border-right:1px solid var(--bd)}
.tmi svg{width:15px;height:15px;color:var(--acc);flex-shrink:0}
.tmi b{display:block;font-size:11.5px;font-weight:700;color:var(--ink);line-height:1.2}
.tmi span{font-size:10px;color:var(--muted)}
.tmini{display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px;border:1px solid var(--bd);border-radius:var(--rmd);overflow:hidden}
@media(max-width:500px){.trust-mini{grid-template-columns:1fr}.tmi+.tmi{border-right:none;border-top:1px solid var(--bd)}}
@media(max-width:460px){.tmini{grid-template-columns:1fr}}

/* ── TABS ── */
.prod-tabs{margin-top:36px}
.tabs-nav{display:flex;border-bottom:1px solid var(--bd);overflow-x:auto;scrollbar-width:none}
.tabs-nav::-webkit-scrollbar{display:none}
.tab-btn{padding:12px 20px;font-size:13.5px;font-weight:500;color:var(--muted);border-bottom:2.5px solid transparent;white-space:nowrap;cursor:pointer;transition:all .2s;background:none;border-top:none;border-left:none;border-right:none}
.tab-btn.on{color:var(--ink);border-bottom-color:var(--acc);font-weight:600}
.tab-panel{display:none;padding-top:20px}.tab-panel.on{display:block}
.tab-panel p{font-size:14.5px;line-height:1.75;color:var(--ink2);margin-bottom:12px}
.tab-panel h4{font-family:'Frank Ruhl Libre',serif;font-size:18px;margin-bottom:8px;margin-top:18px}
.tab-panel ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.tab-panel ul li{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--ink2)}
.tab-panel ul li::before{content:"✓";color:var(--acc);font-weight:700;flex-shrink:0}
.spec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}
.spec-item{background:var(--cream);border-radius:var(--rsm);padding:12px 14px}
.spec-item dt{font-size:10.5px;font-weight:700;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}
.spec-item dd{font-size:14px;font-weight:600;color:var(--ink)}
.ptabs{margin-top:28px}
.tabsnav{display:flex;border-bottom:1px solid var(--bd);overflow-x:auto;scrollbar-width:none}
.tabsnav::-webkit-scrollbar{display:none}
.tbtn{padding:11px 18px;font-size:13px;font-weight:500;color:var(--muted);border-bottom:2.5px solid transparent;white-space:nowrap;cursor:pointer;transition:all .18s;background:none;border-top:none;border-left:none;border-right:none}
.tbtn.on{color:var(--ink);border-bottom-color:var(--acc);font-weight:600}
.tpnl{display:none;padding-top:18px}.tpnl.on{display:block}
.tpnl p{font-size:14px;line-height:1.7;color:var(--ink2);margin-bottom:11px}
.tpnl ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.tpnl ul li{display:flex;align-items:flex-start;gap:7px;font-size:13.5px;color:var(--ink2)}
.tpnl ul li::before{content:"✓";color:var(--acc);font-weight:700;flex-shrink:0}
.spec-g{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:10px}
.spec-i{background:var(--cream);border-radius:6px;padding:11px 13px}
.spec-i dt{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}
.spec-i dd{font-size:13.5px;font-weight:600;color:var(--ink)}

/* ── FAQ v2 ── */
.faq-item2{border-bottom:1px solid var(--bd)}
.faq-q2{width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px 0;font-size:15px;font-weight:600;color:var(--ink);text-align:start;cursor:pointer;gap:16px;transition:color .18s;background:none;border:none;font-family:inherit}
.faq-q2:hover{color:var(--acc)}
.faq-ico2{width:26px;height:26px;border-radius:50%;background:var(--cream3);flex-shrink:0;display:grid;place-items:center;transition:all .28s var(--ease)}
.faq-ico2::before{content:"+";font-size:16px;font-weight:400;color:var(--ink2);line-height:1}
.faq-item2.open .faq-ico2{background:var(--ink);transform:rotate(45deg)}
.faq-item2.open .faq-ico2::before{color:#fff}
.faq-a2{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq-item2.open .faq-a2{max-height:400px}
.faq-a2>*{padding-bottom:18px}

/* ── FAQ (sticker style) ── */
.faq-wrap{max-width:700px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--bd2)}
.faq-item:first-child{border-top:1px solid var(--bd2)}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;padding:15px 0;font-size:14.5px;font-weight:600;color:var(--ink);text-align:start;cursor:pointer;gap:16px;transition:color .18s;background:none;border:none;font-family:inherit}
.faq-q:hover{color:var(--acc)}
.faq-ico{width:22px;height:22px;border-radius:50%;background:var(--cream3);display:grid;place-items:center;flex-shrink:0;transition:transform .28s var(--ease)}
.faq-item.open .faq-ico{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .38s var(--ease)}
.faq-item.open .faq-a{max-height:260px}
.faq-a p{padding:0 0 15px;font-size:13.5px;color:var(--muted);line-height:1.7}

/* ── POPUP ── */
.pop-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px);padding:16px}
.pop-overlay.open{display:flex;animation:mk-fadein .22s var(--ease)}
@keyframes mk-fadein{from{opacity:0}to{opacity:1}}
.pop-box{background:#fff;width:100%;max-width:1040px;border-radius:18px;overflow:hidden;max-height:92vh;display:flex;flex-direction:column;animation:mk-popIn .28s var(--ease) both;box-shadow:var(--sh3)}
@keyframes mk-popIn{from{opacity:0;transform:scale(.96) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}
@media(max-width:760px){.pop-box{border-radius:20px 20px 0 0;max-height:95vh;margin-top:auto;width:100%;max-width:100%}}
@media(max-width:760px){.pop-overlay{padding:0;align-items:flex-end}}
.pop-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--bd);flex-shrink:0;background:#fff}
.pop-head h3{font-family:'Frank Ruhl Libre',serif;font-size:20px;font-weight:500}
.pop-close{width:32px;height:32px;border-radius:50%;background:var(--cream);display:grid;place-items:center;cursor:pointer;transition:background .2s}
.pop-close:hover{background:var(--bd)}
.pop-split{display:grid;grid-template-columns:260px 1fr;flex:1;overflow:hidden;min-height:0}
@media(max-width:760px){.pop-split{grid-template-columns:1fr;overflow-y:auto}}
.pop-form{padding:20px 22px 0;overflow-y:auto;border-left:1px solid var(--bd);display:flex;flex-direction:column}
@media(max-width:760px){.pop-form{border-left:none;border-bottom:1px solid var(--bd);overflow-y:visible}}
.pop-sec{margin-bottom:18px}
.pop-sec-t{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-bottom:10px}
.pop-hint{font-size:11.5px;color:var(--muted);margin-bottom:10px;line-height:1.4}
.pop-dim-row{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end}
.pop-dim-fld label{font-size:12.5px;font-weight:600;color:var(--ink2);display:block;margin-bottom:5px}
.pop-dim-inp{width:100%;padding:10px 36px 10px 10px;border:2px solid var(--bd2);border-radius:var(--rsm);font-size:18px;font-weight:700;color:var(--ink);text-align:center;outline:none;transition:border-color .2s;background:#fff}
.pop-dim-inp:focus{border-color:var(--acc)}.pop-dim-inp.valid{border-color:var(--grn)}
.pop-dim-unit{position:absolute;inset-inline-start:8px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--muted);pointer-events:none}
.pop-dim-x{font-size:20px;color:var(--lt);text-align:center;padding-bottom:10px}
.pop-dim-wrap{position:relative}
.pop-flip{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.pop-flip label{font-size:13px;color:var(--ink2);cursor:pointer;display:flex;align-items:center;gap:7px;user-select:none}
.pop-flip input[type=checkbox]{width:15px;height:15px;accent-color:var(--ink);cursor:pointer}
.color-btns{display:flex;gap:6px;flex-wrap:wrap}
.color-btn{padding:6px 13px;border-radius:980px;font-size:12.5px;font-weight:500;color:var(--ink2);border:1.5px solid var(--bd2);cursor:pointer;transition:all .18s;background:#fff}
.color-btn:hover{border-color:var(--ink)}
.color-btn.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pop-mat-list{display:flex;flex-direction:column;gap:7px}
.pop-mat{display:flex;align-items:center;gap:12px;padding:11px 13px;border:2px solid var(--bd);border-radius:var(--rsm);cursor:pointer;transition:all .18s var(--ease);background:#fff}
.pop-mat:hover{border-color:var(--bd2)}
.pop-mat.on{border-color:var(--ink);background:#FAFAF8}
.pop-mat-radio{width:17px;height:17px;border-radius:50%;border:2px solid var(--bd);flex-shrink:0;display:grid;place-items:center;transition:all .18s}
.pop-mat.on .pop-mat-radio{border-color:var(--ink);background:var(--ink)}
.pop-mat.on .pop-mat-radio::after{content:"";width:5px;height:5px;border-radius:50%;background:#fff}
.pop-mat-info{flex:1}
.pop-mat-name{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.2}
.pop-mat-desc{font-size:11px;color:var(--muted);margin-top:1px}
.pop-mat-price{font-size:13px;font-weight:700;color:var(--muted);flex-shrink:0}
.pop-mat.on .pop-mat-price{color:var(--ink)}
.pop-mat-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:3px;background:var(--grn);color:#fff;margin-right:5px}
.pop-noprot{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink2);cursor:pointer;margin-top:2px}
.pop-noprot input{width:15px;height:15px;accent-color:var(--ink);cursor:pointer}
.pop-summary{margin-top:auto;padding-top:16px;border-top:1px solid var(--bd);padding-bottom:18px}
.pop-sum-row{display:flex;justify-content:space-between;font-size:13px;color:var(--ink2);margin-bottom:5px}
.pop-sum-row.total{margin-top:10px;padding-top:10px;border-top:1px dashed var(--bd2);font-size:15px;font-weight:700;color:var(--ink)}
.pop-sum-row.total .big{font-family:'Frank Ruhl Libre',serif;font-size:28px;font-weight:500;color:var(--ink)}
.pop-footer{padding:14px 22px 18px;border-top:1px solid var(--bd);flex-shrink:0;background:#fff}
.pop-cart-btn{width:100%;padding:15px;border-radius:var(--rsm);background:var(--ink);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .25s var(--ease);cursor:pointer;border:none;font-family:inherit}
.pop-cart-btn:hover{background:var(--acc)}
.pop-ship{font-size:12px;color:var(--muted);text-align:center;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:5px}
.pop-wa{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:11px;border-radius:var(--rsm);border:1.5px solid #25D366;color:var(--grn);font-size:13.5px;font-weight:600;margin-top:8px;background:#fff;transition:all .2s;cursor:pointer;font-family:inherit}
.pop-wa:hover{background:#F0FFF4}
.pop-preview{background:#EFECE6;position:relative;overflow:hidden;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center}
@media(max-width:760px){.pop-preview{min-height:260px}}
.preview-stage{position:relative;display:flex;align-items:center;justify-content:center}
.ruler-frame{position:relative;border:1.5px solid rgba(0,0,0,.3);background:#fff;overflow:hidden;cursor:grab;user-select:none}
.ruler-frame:active{cursor:grabbing}
.ruler-w{position:absolute;top:-26px;left:50%;transform:translateX(-50%);background:rgba(30,30,30,.8);color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:4px;white-space:nowrap}
.ruler-h{position:absolute;inset-inline-end:-36px;top:50%;transform:translateY(-50%) rotate(90deg);background:rgba(30,30,30,.8);color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:4px;white-space:nowrap}
.drag-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(30,30,30,.72);color:#fff;font-size:11.5px;font-weight:500;padding:6px 13px;border-radius:6px;backdrop-filter:blur(4px);pointer-events:none;transition:opacity .3s;white-space:nowrap;display:flex;align-items:center;gap:5px}
.drag-hint svg{width:14px;height:14px}
.strips-badge{position:absolute;bottom:10px;inset-inline-start:10px;background:rgba(30,30,30,.72);color:#fff;font-size:10.5px;font-weight:600;padding:4px 10px;border-radius:4px;backdrop-filter:blur(4px)}
.preview-bar{position:absolute;bottom:0;left:0;right:0;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-top:1px solid rgba(0,0,0,.08);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;font-size:12px}
.preview-info{color:var(--ink2);font-weight:500}
.preview-reset{display:flex;align-items:center;gap:5px;color:var(--acc);font-weight:600;cursor:pointer;font-size:12px;transition:opacity .2s}
.preview-reset:hover{opacity:.75}

/* ── ANNOTATION OVERLAY ── */
.annot-ov{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:600;display:none;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(4px)}
.annot-ov.open{display:flex;animation:mk-fadein .2s var(--ease)}
.annot-box{background:#fff;width:100%;max-width:900px;border-radius:16px;overflow:hidden;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 16px 48px rgba(0,0,0,.2)}
.annot-hd{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--bd);gap:12px}
.annot-hd h3{font-family:'Frank Ruhl Libre',serif;font-size:18px;font-weight:500}
.annot-hd p{font-size:12px;color:var(--muted);margin-top:3px}
.annot-body{display:grid;grid-template-columns:1fr 260px;flex:1;overflow:hidden;min-height:0}
@media(max-width:680px){.annot-body{grid-template-columns:1fr;overflow-y:auto}}
.annot-canvas-wrap{background:#f0ece6;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
#annotCanvas{display:block;cursor:crosshair;touch-action:none;max-width:100%;max-height:100%}
.annot-sidebar{padding:14px;border-right:1px solid var(--bd);overflow-y:auto;display:flex;flex-direction:column;gap:12px}
.annot-sec-t{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.tool-btns{display:flex;gap:5px;flex-wrap:wrap}
.tool-btn{padding:7px 10px;border-radius:var(--rsm);border:1.5px solid var(--bd);font-size:12px;font-weight:600;color:var(--ink2);cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:4px;background:#fff}
.tool-btn.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.tool-btn:hover:not(.on){border-color:var(--ink)}
.color-dots{display:flex;gap:5px;flex-wrap:wrap}
.cdot{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2.5px solid transparent;transition:all .15s;flex-shrink:0}
.cdot.on{transform:scale(1.18)}
.afinp{width:100%;padding:8px 10px;border:1.5px solid var(--bd2);border-radius:var(--rsm);font-size:13px;color:var(--ink);background:#fff;outline:none;transition:border-color .2s;font-family:inherit;resize:vertical}
.afinp:focus{border-color:var(--acc)}
.afinp::placeholder{color:var(--muted)}
.annot-actions{display:flex;gap:7px}
.annot-submit{flex:1;padding:10px;border-radius:var(--rsm);background:var(--acc);color:#fff;font-size:13.5px;font-weight:700;cursor:pointer;transition:background .2s;border:none;font-family:inherit}
.annot-submit:hover{background:var(--accd)}
.annot-clear{padding:10px 14px;border-radius:var(--rsm);border:1.5px solid var(--bd);font-size:13.5px;color:var(--muted);cursor:pointer;transition:all .2s;background:#fff;font-family:inherit}
.annot-clear:hover{border-color:var(--ink);color:var(--ink)}
.annot-wa{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;border-radius:var(--rsm);border:1.5px solid #25D366;color:var(--grn);font-size:13px;font-weight:600;background:#fff;cursor:pointer;transition:all .18s;font-family:inherit}
.annot-wa:hover{background:#F0FFF4}

/* ── MATERIAL GUIDE ── */
.mat-guide-sec{background:#fff;padding:52px 0}
.mat-g-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:780px){.mat-g-grid{grid-template-columns:1fr}}
.matg-card{border:2px solid var(--bd);border-radius:var(--rlg);overflow:hidden;cursor:pointer;transition:all .26s var(--ease);background:#fff}
.matg-card:hover{box-shadow:var(--sh2);transform:translateY(-2px);border-color:var(--bd2)}
.matg-card.feat{border-color:var(--acc)}
.matg-img{aspect-ratio:16/9;background:var(--cream2);display:grid;place-items:center;overflow:hidden;position:relative}
.matg-img-in{width:100%;height:100%;display:grid;place-items:center;overflow:hidden}
.matg-img img{width:100%;height:100%;object-fit:cover}
.matg-badge{position:absolute;top:10px;inset-inline-start:10px;background:var(--grn);color:#fff;font-size:10px;font-weight:700;padding:3px 9px;border-radius:4px}
.matg-body{padding:16px 18px}
.matg-name{font-family:'Frank Ruhl Libre',serif;font-size:20px;font-weight:500;margin-bottom:4px}
.matg-pr{font-size:13px;font-weight:700;color:var(--acc);margin-bottom:10px}
.matg-desc{font-size:13px;color:var(--ink2);line-height:1.6;margin-bottom:12px}
.matg-pros{list-style:none;display:flex;flex-direction:column;gap:5px}
.matg-pros li{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink2)}
.matg-pros li::before{content:"✓";color:var(--acc);font-weight:700}
.matg-cta{display:block;width:100%;margin-top:14px;padding:10px;border-radius:var(--rsm);background:var(--cream);border:1.5px solid var(--bd);font-size:13px;font-weight:600;color:var(--ink2);text-align:center;cursor:pointer;transition:all .2s;font-family:inherit}
.matg-card.feat .matg-cta,.matg-cta:hover{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ── VIDEO SECTION ── */
.video-sec{background:#fff;padding:52px 0;border-top:1px solid var(--bd)}
.video-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
@media(max-width:760px){.video-grid{grid-template-columns:1fr;gap:24px}}
.video-wrap{position:relative;aspect-ratio:16/9;border-radius:var(--rlg);overflow:hidden;background:var(--ink);cursor:pointer}
.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:0 4px 24px rgba(0,0,0,.3);transition:transform .22s var(--ease)}
.video-wrap:hover .video-play{transform:translate(-50%,-50%) scale(1.08)}
.video-play svg{width:22px;height:22px;margin-right:-3px;color:var(--ink)}
.video-label{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.65);color:#fff;font-size:11.5px;padding:4px 12px;border-radius:4px;backdrop-filter:blur(4px);white-space:nowrap;font-weight:500}
.video-txt h3{font-family:'Frank Ruhl Libre',serif;font-size:26px;font-weight:500;margin-bottom:12px}
.video-txt p{font-size:14.5px;color:var(--ink2);line-height:1.7;margin-bottom:18px}
.video-steps{list-style:none;display:flex;flex-direction:column;gap:10px}
.video-steps li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--ink2)}
.vstep-num{width:24px;height:24px;border-radius:50%;background:var(--acc);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;flex-shrink:0;margin-top:1px}

/* ── INSTALLATION STEPS ── */
.install-sec{background:#fff;padding:52px 0}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:28px}
@media(max-width:780px){.steps-grid{grid-template-columns:repeat(2,1fr)}}
.step{text-align:center;position:relative}
.step-num{width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;font-size:17px;font-weight:700;display:grid;place-items:center;margin:0 auto 12px;font-family:'Frank Ruhl Libre',serif}
.step:not(:last-child)::after{content:"";position:absolute;top:19px;inset-inline-end:-10px;width:20px;height:2px;background:var(--bd2)}
@media(max-width:780px){.step:nth-child(2)::after,.step:nth-child(4)::after{display:none}}
.step-img{width:100%;aspect-ratio:4/3;border-radius:var(--rmd);overflow:hidden;background:var(--cream2);margin-bottom:12px;border:1px solid var(--bd)}
.step h4{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:5px}
.step p{font-size:12px;color:var(--muted);line-height:1.5}

/* ── HOW-TO-APPLY (sticker) ── */
.sec{padding:48px 0}
.sec-hd{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px}
.sec-hd h2{font-family:'Frank Ruhl Libre',serif;font-size:clamp(20px,2.5vw,28px);font-weight:500}
.sec-hd a{font-size:13px;font-weight:600;color:var(--acc)}
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:780px){.how-grid{grid-template-columns:repeat(2,1fr)}}
.how-step{text-align:center}
.how-num{width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;font-size:16px;font-weight:700;display:grid;place-items:center;margin:0 auto 12px;font-family:'Frank Ruhl Libre',serif}
.how-img{aspect-ratio:1/1;border-radius:var(--rmd);background:var(--cream2);margin-bottom:11px;border:1px solid var(--bd);display:grid;place-items:center;overflow:hidden}
.how-h4{font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:4px}
.how-p{font-size:12px;color:var(--muted);line-height:1.5}

/* ── INSPIRATION SLIDER ── */
.insp-sec{background:var(--cream);padding:52px 0}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px}
.sec-head h2{font-family:'Frank Ruhl Libre',serif;font-size:clamp(22px,3vw,30px);font-weight:500}
.sec-head a{font-size:13.5px;font-weight:600;color:var(--acc)}
.insp-track-wrap{overflow:hidden;margin:0 -4px}
.insp-track{display:flex;gap:12px;padding:4px 4px 12px;transition:transform .5s var(--ease)}
.insp-card{flex:0 0 calc(25% - 9px);border-radius:var(--rmd);overflow:hidden;position:relative;cursor:pointer;background:var(--cream2);border:1px solid var(--bd)}
@media(max-width:900px){.insp-card{flex:0 0 calc(50% - 6px)}}
@media(max-width:500px){.insp-card{flex:0 0 calc(80% - 6px)}}
.insp-img{aspect-ratio:3/4;overflow:hidden;display:grid;place-items:center}
.insp-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.insp-card:hover .insp-img img{transform:scale(1.04)}
.insp-ovl{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.72) 100%);opacity:0;transition:opacity .28s var(--ease);display:flex;flex-direction:column;justify-content:flex-end;padding:16px}
.insp-card:hover .insp-ovl{opacity:1}
.insp-ovl small{font-size:10px;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}
.insp-ovl b{font-size:14px;color:#fff;font-weight:600;font-family:'Frank Ruhl Libre',serif}
.insp-info{padding:10px 12px 12px;background:#fff}
.insp-info small{font-size:10.5px;color:var(--muted)}
.insp-info b{display:block;font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:3px}
.slider-navs{display:flex;gap:8px;margin-top:18px;justify-content:center}
.snav-btn{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--bd);background:#fff;display:grid;place-items:center;cursor:pointer;transition:all .2s}
.snav-btn:hover{border-color:var(--ink);background:var(--ink);color:#fff}

/* ── RELATED PRODUCTS ── */
.related-sec{background:#fff;padding:52px 0}
.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:900px){.rel-grid{grid-template-columns:repeat(2,1fr)}}
.rel-card{background:#fff;border-radius:var(--rmd);overflow:hidden;border:1px solid var(--bd);transition:all .28s var(--ease);display:block}
.rel-card:hover{box-shadow:var(--sh2);transform:translateY(-2px);border-color:transparent}
.rel-img{aspect-ratio:1/1;background:var(--cream2);overflow:hidden;display:grid;place-items:center}
.rel-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.rel-card:hover .rel-img img{transform:scale(1.04)}
.rel-body{padding:10px 12px 13px}
.rel-cat{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.rel-name{font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:6px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rel-price{font-size:15px;font-weight:700;color:var(--ink)}
.rel-price small{font-size:12px;font-weight:400;color:var(--muted)}
.rel-pr{font-size:14px;font-weight:700;color:var(--ink)}
.rel-pr small{font-size:11.5px;font-weight:400;color:var(--muted)}

/* ── UPSELL STRIP ── */
.upsell-sec{background:var(--cream2);padding:40px 0}
.upsell-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:700px){.upsell-grid{grid-template-columns:1fr}}
.upsell-card{background:#fff;border-radius:var(--rmd);padding:20px;border:1px solid var(--bd);display:flex;align-items:flex-start;gap:14px;cursor:pointer;transition:all .22s var(--ease)}
.upsell-card:hover{box-shadow:var(--sh1);border-color:var(--acc)}
.upsell-ic{width:44px;height:44px;border-radius:var(--rsm);background:var(--cream);display:grid;place-items:center;flex-shrink:0}
.upsell-ic svg{width:22px;height:22px;color:var(--acc)}
.upsell-name{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:3px}
.upsell-desc{font-size:12.5px;color:var(--muted);line-height:1.5}
.upsell-price{font-size:12px;color:var(--acc);font-weight:600;margin-top:5px}

/* ── WA BANNER ── */
.wa-banner{background:#1E3530;padding:36px 0}
.wa-ban{background:#1E3530;padding:36px 0}
.wa-ban-in{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.wa-ban-txt h3{font-family:'Frank Ruhl Libre',serif;font-size:24px;font-weight:500;color:#fff;margin-bottom:6px}
.wa-ban-txt p{font-size:14px;color:rgba(255,255,255,.65)}
.wa-ban h3{font-family:'Frank Ruhl Libre',serif;font-size:22px;font-weight:500;color:#fff;margin-bottom:5px}
.wa-ban p{font-size:13.5px;color:rgba(255,255,255,.6)}
.wa-ban-btn{display:flex;align-items:center;gap:7px;padding:13px 26px;border-radius:var(--rsm);background:#25D366;color:#fff;font-size:14.5px;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}
.wa-ban-btn:hover{background:#1DA855}

/* ── SIZE GUIDE POPUP ── */
.sg-ov{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;display:none;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(4px)}
.sg-ov.open{display:flex;animation:mk-fadein .2s}
.sg-box{background:#fff;border-radius:16px;max-width:560px;width:100%;padding:24px;box-shadow:0 16px 48px rgba(0,0,0,.15);position:relative}
.sg-close{position:absolute;top:14px;inset-inline-end:14px;width:30px;height:30px;border-radius:50%;background:var(--cream);display:grid;place-items:center;cursor:pointer;border:none}
.sg-box h3{font-family:'Frank Ruhl Libre',serif;font-size:22px;font-weight:500;margin-bottom:4px}
.sg-box p{font-size:13px;color:var(--muted);margin-bottom:20px}
.sg-table{width:100%;border-collapse:collapse}
.sg-table th{background:var(--cream);padding:9px 14px;font-size:11.5px;font-weight:700;color:var(--ink2);text-align:start;border-bottom:1px solid var(--bd)}
.sg-table td{padding:11px 14px;font-size:13.5px;color:var(--ink2);border-bottom:1px solid var(--bd)}
.sg-table tr:last-child td{border-bottom:none}
.sg-table tr.hl td{background:#FFF7F4;font-weight:600;color:var(--acc)}
.sg-vis{display:flex;align-items:flex-end;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--bd);justify-content:center}
.sz-sil{background:var(--ink);border-radius:3px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}
.sz-sil:hover{background:var(--acc)}
.sz-sil span{color:#fff;font-size:9.5px;font-weight:700;white-space:nowrap}
.human-ref{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 6px}
.human-ref svg{width:22px;height:55px;color:var(--muted)}
.human-ref span{font-size:8.5px;color:var(--muted)}

/* ── TOAST – social-proof notification ── */
.toast{
  /* Override ALL position rules — physical properties win */
  position:fixed!important;
  bottom:28px!important;
  left:150px!important;          /* 150px from physical left edge */
  right:auto!important;
  inset-inline-start:auto!important;
  inset-inline-end:auto!important;
  z-index:9999!important;
  background:#fff;border:1px solid var(--cream3,#E5DDD0);
  border-radius:var(--rmd,12px);padding:11px 14px;
  display:flex;align-items:center;gap:10px;max-width:260px;
  box-shadow:0 4px 18px rgba(0,0,0,.10);
  opacity:0;transform:translateY(14px);
  transition:opacity .35s var(--ease,ease),transform .35s var(--ease,ease);
  pointer-events:none;
}
.toast.show{opacity:1!important;transform:translateY(0)!important;pointer-events:auto}
.toast-dot{width:36px;height:36px;border-radius:50%;background:var(--cream2,#EFE9DF);flex-shrink:0;display:grid;place-items:center;font-size:17px}
.toast-t b{display:block;font-size:12.5px;font-weight:700;color:var(--ink,#222);line-height:1.3}
.toast-t span{font-size:11px;color:var(--muted,#767676);line-height:1.4;display:block;margin-top:1px}

/* ── SCROLL REVEAL ── */
.rv{opacity:0;transform:translateY(18px);transition:all .65s var(--ease)}
.rv.in{opacity:1;transform:translateY(0)}

/* ── Search input RTL + icon centering ── */
.hsr { position: relative; }
.hsr input {
	padding: 10px 44px 10px 16px;
	direction: rtl;
}
.hsr .search-icon,
.hsr .search-ic,
.hsr svg:first-of-type {
	position: absolute;
	top: 50%;
	inset-inline-end: 14px;
	transform: translateY(-50%);
	pointer-events: none;
	color: var(--muted);
	display: flex;
	align-items: center;
	justify-content: center;
}


/* ── 2026-04 audit fixes — additive, do not modify rules above ── */

/* Cart badge — hide when empty (count=0). Both :empty and explicit class. */
.cbadge.is-empty,
.cbadge:empty { display: none; }

/* ── 2026-04 audit fixes v2 — additive, last-wins overrides ── */

/* Issue 1 — Masonry inspiration: hide empty items + tighter mobile gap */
.insp-sec .masonry > .m-item:empty,
.insp-sec .masonry > .m-item:not(:has(img)):not(:has(svg)) { display: none !important; }
@media (max-width: 480px) {
  .insp-sec .masonry { column-gap: 8px; }
  .insp-sec .m-item { margin-bottom: 8px; border-radius: var(--rsm); }
}

/* Issue 2 — Portrait slider: mobile card width + smooth scroll, ensure cover-fit */
.prt-track { -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; }
.prt-card { scroll-snap-align: start; }
.prt-img img { object-fit: cover; }
@media (max-width: 640px) {
  .prt-card { flex: 0 0 62vw; }
  .prt-img { aspect-ratio: 3 / 4; }
}

/* Issue 3 — Bestsellers slider: uniform card height, name 2-line clamp, price pinned */
.ptrack { align-items: stretch; -webkit-overflow-scrolling: touch; }
.psl .pc { height: auto; align-self: stretch; }
.psl .pc .pc-b { display: flex; flex-direction: column; flex: 1; }
.psl .pc .pc-nm {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.7em;
}
.psl .pc .pc-pr { margin-top: auto; }

/* Issue 4 — Glass section: mobile grid breakpoints (4 → 2 at 900px → 2 at 480px) */
@media (max-width: 1100px) and (min-width: 901px) { .glg { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 900px)  { .glg { grid-template-columns: repeat(2, 1fr) !important; gap: 12px; } }
@media (max-width: 480px)  { .glg { grid-template-columns: 1fr 1fr !important; gap: 10px; } }

/* Issue 5 — Business cards: tighter mobile sizing + ensure overlay legibility */
@media (max-width: 900px) {
  .bizc { min-height: 240px; padding: 24px 22px; }
  .bizc h3 { font-size: 22px; margin-bottom: 8px; }
  .bizc p  { font-size: 13px; margin-bottom: 14px; }
}
@media (max-width: 480px) {
  .bizg { gap: 10px; }
}

/* Issue 6 — Header overflow safety (search icon centering already handled above)
 *
 * NOTE: We deliberately do NOT override .w's max-width here. .w has a global
 * max-width:1380px (line 20) that EVERY page expects — overriding it to 100%
 * makes the entire site full-bleed which breaks product / category / cart
 * layouts. Only apply box-sizing safety + overflow guards.
 */
html { overflow-x: hidden; max-width: 100vw; }
body { max-width: 100vw; }
.hdr-r { max-width: 100%; box-sizing: border-box; }
.w     { box-sizing: border-box; }

/* Issue 7 — Trending chips row: nowrap horizontal scroll on mobile */
.trend-chips {
  flex-wrap: nowrap;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
}
.trend-chips .tchip { flex: 0 0 auto; scroll-snap-align: start; }

/* Issue 8 — Toast + WA float clearance over mobile sticky ATC bar */
@media (max-width: 640px) {
  .wa, .wa-pulse { bottom: 86px; }
  .toast { bottom:92px!important;left:12px!important;right:auto!important;inset-inline-start:auto!important;inset-inline-end:auto!important; } /* physical left, above WA */
}

/* Issue 9 — Quiz buttons: squared, grid layout (replaces pill row) */
.style-tags {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 20px;
  flex-wrap: initial;
}
@media (max-width: 640px) {
  .style-tags { grid-template-columns: 1fr 1fr; }
}
.style-tags .stag {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: var(--rmd) !important;
  border: 2px solid var(--bd) !important;
  background: #fff !important;
  color: var(--ink) !important;
  font-size: 14px;
  font-weight: 600;
  padding: 14px 12px;
  min-height: 80px;
  text-align: center;
  text-decoration: none;
  transition: all .22s var(--ease);
}
.style-tags .stag:hover {
  border-color: var(--acc) !important;
  background: #FFF7F4 !important;
  color: var(--acc) !important;
  transform: translateY(-1px);
}
.style-tags .stag.on,
.style-tags .stag.selected,
.style-tags .stag.active {
  border-color: var(--acc) !important;
  background: #FFF7F4 !important;
  color: var(--acc) !important;
}

/* ─── 2026 wallpaper single-product polish ─────────────────────────────── */
/* Page chrome */
body.single-product { background:#FAFAF8 }

/* "Starting from" headline above size selector */
.price-from{
	display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
	margin:14px 0 18px;padding:12px 16px;
	background:var(--cream2,#F5EFE6);border:1px solid var(--bd,#E3DDD5);
	border-radius:var(--rsm,8px);color:var(--ink,#1c1c1c);
}
.price-from .pf-lead{font-size:13.5px;color:var(--muted,#6e6e6e);font-weight:500}
.price-from .pf-amt{font-family:'Frank Ruhl Libre',serif;font-size:24px;font-weight:700;color:var(--acc,#C46B3E)}
.price-from .pf-note{font-size:12px;color:var(--muted,#6e6e6e);margin-inline-start:auto}

/* Magnifier button on gallery hero (separate from configurator click) */
.gallery-main{position:relative}
.img-zoom-btn{
	position:absolute;top:12px;inset-inline-end:12px;z-index:3;
	width:34px;height:34px;border-radius:50%;
	background:rgba(255,255,255,.95);backdrop-filter:blur(6px);
	border:1px solid var(--bd,#E3DDD5);display:grid;place-items:center;
	cursor:pointer;color:var(--ink,#1c1c1c);
	transition:transform .2s var(--ease,ease),background .2s;
}
.img-zoom-btn:hover{transform:scale(1.08);background:#fff}

/* Lightbox overlay */
.img-lightbox{
	position:fixed;inset:0;z-index:9999;
	background:rgba(20,20,22,.78);backdrop-filter:blur(10px);
	display:none;align-items:center;justify-content:center;
	padding:32px;
}
.img-lightbox.open{display:flex;animation:mkLbIn .2s ease both}
.img-lightbox img{
	max-width:min(96vw,1200px);max-height:90vh;
	border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);
	background:#fff;cursor:default;
}
.ilb-close{
	position:absolute;top:18px;inset-inline-end:18px;
	width:40px;height:40px;border-radius:50%;
	background:rgba(255,255,255,.95);color:#1c1c1c;
	border:none;display:grid;place-items:center;cursor:pointer;
	transition:transform .15s ease;
}
.ilb-close:hover{transform:scale(1.08)}
@keyframes mkLbIn{from{opacity:0}to{opacity:1}}

/* ─── Category page parity safeguards ──────────────────────────────────── */
/* Some WooCommerce templates wrap the grid in <ul class="products"> with
   plugin-injected styles. Force the grid layout to match .pgrid even when
   that happens — without touching loop logic or AJAX. */
.woocommerce ul.products,
.cat-layout ul.products{
	display:grid !important;
	grid-template-columns:repeat(4,1fr) !important;
	gap:16px !important;
	margin:0 !important;padding:0 !important;list-style:none !important;
}
@media(max-width:1200px){
	.woocommerce ul.products,
	.cat-layout ul.products{grid-template-columns:repeat(3,1fr) !important}
}
@media(max-width:900px){
	.woocommerce ul.products,
	.cat-layout ul.products{grid-template-columns:repeat(2,1fr) !important;gap:10px !important}
}
.woocommerce ul.products li.product{
	float:none !important;width:auto !important;margin:0 !important;clear:none !important;
}

/* Sidebar visibility on desktop (some plugins inject display:none) */
@media(min-width:901px){
	.cat-layout > .sidebar.cat-side,
	.cat-layout > .cat-side-v2{display:block !important}
}

/* Sub-chip styling — applies to both children and siblings fallback */
.subcat .sub-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:980px;background:var(--cream);border:1px solid var(--bd);font-size:12.5px;color:var(--ink);font-weight:500;white-space:nowrap;transition:all .2s var(--ease)}
.subcat .sub-chip:hover{border-color:var(--ink);transform:translateY(-1px)}
.subcat .sub-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.subcat .sub-chip .cnt{background:rgba(0,0,0,.08);padding:1px 7px;border-radius:980px;font-size:11px;font-weight:600}
.subcat .sub-chip.on .cnt{background:rgba(255,255,255,.18);color:#fff}
