@font-face{font-family:"Fraunces";src:url(fonts/fraunces-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(fonts/fraunces-latin-wght-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(fonts/inter-tight-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --bg:#faf7f0; --card:#fff; --ink2:#4b4034; --on-ink:#fff; --ok-bar:#d3e8d9; --ok-line:#cfe3d2; --leaf-t:#1f7a3e; --ok-ink:#14502a; --ok-bg:#e9f6ec; --bad-ink:#8a1c14; --bad-bg:#fdecea; --warn-ink:#6b4a06; --warn-bg:#fff6df; --warn-line:#f1d28a; --info-bg:#e9eef0; --info-box:#eaf3fb; --info-line:#bcd7ee; --info-ink:#0f4670; color-scheme:light; --ink:#1d1914; --muted:#675c4f; --line:#e6dccb; --sand:#f3ead8;
  --brand:#c0281c; --sun:#f2a413; --leaf:#1f7a3e; --leaf-d:#17612f; --night:#14100d; --cream:#f6ecdb;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Inter Tight",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --gut:clamp(1rem,3vw,2rem); --r:1rem;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:9rem}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.02em;margin:0;text-wrap:balance}
em{font-style:italic;font-weight:500;color:var(--brand)}
ul,ol{list-style:none;margin:0;padding:0}
p{margin:0}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--sun);outline-offset:2px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:absolute;left:1rem;top:-4rem;background:var(--sun);color:var(--ink);padding:.7rem 1rem;border-radius:.5rem;z-index:200;font-weight:700}
.skip:focus{top:1rem}
.wrap{max-width:1320px;margin-inline:auto;padding-inline:max(var(--gut),env(safe-area-inset-left,0px)) }
@view-transition{navigation:auto}

/* topbar */
.topbar{background:var(--night);color:rgba(246,236,219,.9);font-size:.82rem}
.topbar .wrap{display:flex;justify-content:space-between;gap:1rem;padding-block:.45rem}
.tb-r{display:flex;gap:1rem}
.tb-r a{text-decoration:none;opacity:.8}.tb-r a:hover{opacity:1;text-decoration:underline}
@media (max-width:640px){.tb-r{display:none}.topbar .wrap{justify-content:center;text-align:center}}

/* header */
header.site{position:sticky;top:0;z-index:60;background:var(--card);border-bottom:1px solid var(--line)}
.hrow{display:flex;align-items:center;gap:clamp(.75rem,2vw,1.75rem);padding-block:.75rem}
.brand{font:700 1.85rem/1 var(--serif);font-style:italic;letter-spacing:-.04em;text-decoration:none;color:var(--ink)}
.brand i{color:var(--brand);font-style:normal}
.search{flex:1;display:flex;align-items:center;background:var(--bg);border:2px solid var(--line);border-radius:999px;padding:.1rem .25rem .1rem 1.1rem;max-width:46rem;margin-inline:auto;transition:border-color .2s,background .2s}
.search:focus-within{border-color:var(--ink);background:var(--card)}
.search input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:.97rem;padding:.65rem 0;outline:0;color:var(--ink)}
.search input::placeholder{color:#8b7f70}
.search button{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:var(--ink);color:var(--on-ink);cursor:pointer}
.search button:hover{background:var(--brand)}
.acts{display:flex;align-items:center;gap:.4rem}
.act{display:flex;align-items:center;gap:.5rem;padding:.5rem .7rem;border-radius:.8rem;text-decoration:none;font-weight:600;font-size:.92rem;position:relative}
.act:hover{background:var(--sand)}
.cart .cnt{position:absolute;top:.1rem;left:1.45rem;background:var(--brand);color:#fff;border-radius:999px;font-size:.7rem;min-width:1.15rem;height:1.15rem;display:grid;place-items:center;padding-inline:.25rem}
.burger{display:none;border:0;background:none;padding:.4rem;border-radius:.6rem;cursor:pointer}
.dnav{border-top:1px solid var(--line);background:var(--card);position:relative}
.dn{display:flex;align-items:center;gap:.15rem;overflow-x:auto;scrollbar-width:none}
.dn::-webkit-scrollbar{display:none}
.dn>a{flex:none;text-decoration:none;font-weight:600;font-size:.93rem;padding:.7rem .8rem;white-space:nowrap;border-bottom:3px solid transparent}
.dn>a:hover{border-bottom-color:var(--sun)}
.dn>a.hot{color:var(--brand)}
.mega-wrap{flex:none}
.allbtn{display:flex;align-items:center;gap:.5rem;background:var(--sun);color:var(--ink);border:0;font-weight:700;font-size:.93rem;padding:.7rem 1.1rem;border-radius:.7rem;cursor:pointer;margin-right:.6rem}
.allbtn:hover{background:#ffb830}
.mega{display:none;position:absolute;left:max(var(--gut),calc((100vw - 1320px)/2 + var(--gut)));right:max(var(--gut),calc((100vw - 1320px)/2 + var(--gut)));top:100%;background:var(--card);border:1px solid var(--line);border-radius:0 0 1.2rem 1.2rem;box-shadow:0 30px 50px -20px rgba(40,25,5,.35);padding:1.4rem;grid-template-columns:1fr 17rem;gap:1.6rem;z-index:70}
.mega-wrap.open .mega,.mega-wrap:hover .mega,.mega-wrap:focus-within .mega{display:grid}
.mcols{display:grid;grid-template-columns:repeat(3,1fr);gap:.2rem 1.2rem}
.mcols a{display:flex;flex-direction:column;padding:.65rem .8rem;border-radius:.7rem;text-decoration:none}
.mcols a:hover{background:var(--sand)}
.mcols b{font-weight:650}
.mcols span{font-size:.82rem;color:var(--muted)}
.mpromo{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:.15rem;min-height:12rem;padding:1.2rem;border-radius:1rem;background:linear-gradient(160deg,#f6b52c,#e07b0b);color:#1b1208;text-decoration:none}
.mp-t{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.mpromo strong{font:650 1.7rem/1 var(--serif)}
.mpromo small{font-size:.85rem;max-width:11rem}
.mpromo img{position:absolute;right:-.5rem;top:.5rem;width:6.5rem;rotate:8deg;mix-blend-mode:multiply}
@media (max-width:900px){
  .burger{display:block}
  .hrow{flex-wrap:wrap}
  .brand{font-size:1.6rem}
  .search{order:5;flex:0 0 100%;max-width:none;margin:0}
  .act span:not(.sum){display:none}
  .acts{margin-left:auto}
  .cart .sum{display:none}
  .cart .cnt{left:1.1rem}
  .dnav{display:none}
}
.drawer{position:fixed;inset:0;z-index:100;background:rgba(20,16,13,.55);opacity:0;pointer-events:none;transition:opacity .25s}
.drawer .dr-in{position:absolute;left:0;top:0;bottom:0;width:min(21rem,88vw);background:var(--card);padding:1rem 1rem 2rem;overflow:auto;translate:-100% 0;transition:translate .3s cubic-bezier(.2,.8,.2,1)}
.menu-open .drawer{opacity:1;pointer-events:auto}
.menu-open .drawer .dr-in{translate:0 0}
.dr-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}
.dr-x{border:0;background:var(--sand);width:2.4rem;height:2.4rem;border-radius:50%;cursor:pointer}
.drawer li a{display:block;padding:.85rem .4rem;border-bottom:1px solid var(--line);text-decoration:none;font-weight:600}
.drawer li a.hot{color:var(--brand)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.8rem 1.4rem;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:var(--sans);font-size:1rem;transition:transform .15s,background .2s,color .2s,border-color .2s}
.btn:hover{transform:translateY(-1px)}
.btn-sun{background:var(--sun);color:#1b1208}.btn-sun:hover{background:#ffb830}
.btn-line{border-color:rgba(246,236,219,.45);color:var(--cream)}.btn-line:hover{border-color:var(--cream)}
.btn-dark{background:var(--ink);color:var(--on-ink)}.btn-dark:hover{background:#3a2f25}
.btn-leaf{background:var(--leaf);color:#fff}.btn-leaf:hover{background:var(--leaf-d)}
.btn-line-d{border-color:var(--ink);background:none;color:var(--ink)}.btn-line-d:hover{background:var(--ink);color:var(--on-ink)}
.btn-xl{padding:1rem 1.6rem;font-size:1.08rem}
.block{display:flex;width:100%}

/* plates */
.disc{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fffdf6,#f8eed9 58%,#e8d6b4);box-shadow:0 24px 40px -16px rgba(0,0,0,.5),inset 0 0 0 .4em rgba(255,255,255,.4);display:grid;place-items:center;isolation:isolate;overflow:hidden}
.disc img{width:68%;height:68%;object-fit:contain;mix-blend-mode:multiply}
.plate{position:absolute;left:var(--x);top:var(--y);width:var(--s);aspect-ratio:1;rotate:var(--r)}
.plate .disc img{rotate:calc(var(--r) * -1)}

/* promo band */
.sec{padding-block:clamp(1.6rem,3.5vw,2.6rem) 0}
.promo{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:1rem;margin-top:1rem}
.pb{position:relative;overflow:hidden;border-radius:1.2rem;text-decoration:none;color:#fff}
.pb-main{grid-row:1/3;background:radial-gradient(60% 70% at 78% 40%,rgba(242,164,19,.35),transparent 70%),linear-gradient(135deg,#1b1511,#2b1e14);color:var(--cream);display:grid;grid-template-columns:1.1fr 1fr;align-items:center;min-height:25rem;padding:clamp(1.4rem,3vw,2.6rem)}
.kicker{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sun)}
.pb-main h1{font-size:clamp(2.2rem,4.2vw,3.9rem);margin:.7rem 0 .9rem;color:#fff6e6}
.pb-main h1 em{color:var(--sun)}
.pb-main p:not(.kicker):not(.pb-cta){opacity:.85;max-width:26rem}
.pb-cta{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.pb-plates{position:relative;align-self:stretch;min-height:16rem}
.pb-fish{background:linear-gradient(135deg,#17306b,#2a5aa8);display:flex;flex-direction:column;justify-content:flex-end;gap:.2rem;padding:1.3rem;min-height:12rem}
.pb-mango{background:linear-gradient(135deg,#2b5a3a,#d9801a);display:flex;flex-direction:column;justify-content:flex-end;gap:.2rem;padding:1.3rem;min-height:12rem}
.pb strong{font:650 1.6rem/1.05 var(--serif);max-width:12rem}
.pb .kicker{color:#ffe29a}
.more{font-weight:700;font-size:.9rem;margin-top:.4rem}
.pb:hover .more{text-decoration:underline}
.mini-plate{position:absolute;right:1rem;top:1rem;width:5.5rem;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fffdf6,#f1e3c4);display:grid;place-items:center;box-shadow:0 12px 20px -8px rgba(0,0,0,.5);rotate:6deg}
.mini-plate img{width:70%;mix-blend-mode:multiply}
.plate .disc{animation:float 9s ease-in-out infinite}
.plate:nth-child(2) .disc{animation-delay:-3s}.plate:nth-child(3) .disc{animation-delay:-6s}
@keyframes float{50%{transform:translateY(-8px)}}
@media (max-width:900px){
  .promo{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .pb-main{grid-column:1/3;grid-row:auto;grid-template-columns:1fr;min-height:0}
  .pb-plates{display:none}
  .pb-fish,.pb-mango{min-height:9rem}
}

/* trust */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.2rem 0 0}
.trust li{display:flex;align-items:center;gap:.8rem;font-size:.9rem}
.trust svg{flex:none;color:var(--leaf-t)}
.trust b{display:block;font-weight:700}
.trust small{color:var(--muted);font-size:.8rem}
@media (max-width:900px){.trust{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.trust{grid-template-columns:1fr}}

/* departments row */
.deps{padding-top:clamp(1.4rem,3vw,2.2rem)}
.deps ul{display:flex;gap:1.1rem;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:.6rem;scrollbar-width:none}
.deps ul::-webkit-scrollbar{display:none}
.deps li{flex:none;scroll-snap-align:start}
.deps a{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:6.6rem;text-decoration:none;font-weight:600;font-size:.88rem;text-align:center;line-height:1.2}
.deps .disc{width:5.6rem;height:5.6rem;box-shadow:0 8px 16px -8px rgba(60,35,5,.45),inset 0 0 0 .3em rgba(255,255,255,.5);transition:transform .25s}
.deps a:hover .disc{transform:translateY(-4px) rotate(-3deg)}

/* section heads + rails */
.sh{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.sh h2{font-size:clamp(1.55rem,2.6vw,2.2rem)}
.sa{font-weight:700;font-size:.92rem;text-decoration:none;color:var(--brand);white-space:nowrap}
.sa:hover{text-decoration:underline}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 5rem)/6);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.3rem .3rem 1.1rem;margin:-.3rem -.3rem 0;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.rs{scroll-snap-align:start;display:flex}
.rs>.pc{flex:1}
@media (max-width:1100px){.rail{grid-auto-columns:calc((100% - 3rem)/4)}}
@media (max-width:760px){.rail{grid-auto-columns:calc((100% - 1rem)/2.25)}}

/* product card */
.pc{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:box-shadow .25s,transform .25s,border-color .25s;min-width:0}
.pc:hover{box-shadow:0 18px 30px -18px rgba(60,35,5,.45);transform:translateY(-3px);border-color:#d9cbb2}
.bdg{position:absolute;top:.6rem;left:.6rem;z-index:2;background:var(--brand);color:#fff;font-weight:800;font-size:.78rem;padding:.2rem .55rem;border-radius:999px}
.bdg.inline{position:static;display:inline-block;vertical-align:middle}
.pimg{position:relative;display:block;aspect-ratio:1;background:var(--card)}
.pimg img{position:absolute;inset:.9rem;width:calc(100% - 1.8rem);height:calc(100% - 1.8rem);object-fit:contain;mix-blend-mode:multiply;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.pc:hover .pimg img{transform:scale(1.05)}
.pbody{display:flex;flex-direction:column;gap:.15rem;padding:.2rem .9rem .9rem;flex:1}
.pname{font:600 .98rem/1.25 var(--sans);letter-spacing:0;min-height:2.45em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pname a{text-decoration:none}.pname a:hover{text-decoration:underline}
.pmeta{font-size:.82rem;color:var(--muted)}
.pstock{font-size:.78rem;font-weight:600;color:var(--leaf-t);display:flex;align-items:center;gap:.35rem;margin-top:.15rem}
.pstock::before,.stock .dot{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--leaf);display:inline-block}
.pprice{display:flex;align-items:baseline;gap:.5rem;margin-top:.35rem}
.pprice strong{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.pprice s{font-size:.82rem;color:#8b7f70}
.ppu{font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums}
.padd{margin-top:.65rem;display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;background:var(--leaf);color:#fff;border:0;border-radius:.7rem;padding:.65rem .8rem;font-weight:700;cursor:pointer;font-size:.92rem;transition:background .2s,transform .1s}
.padd:hover{background:var(--leaf-d)}
.padd:active{transform:scale(.98)}
.padd.done{background:var(--ink)}
.padd.btn{width:auto;margin-top:0}

/* grid */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media (max-width:1150px){.pgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.pgrid{grid-template-columns:repeat(2,1fr);gap:.7rem}.pbody{padding:.2rem .7rem .75rem}.pprice strong{font-size:1.15rem}}

/* bands */
.band{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;border-radius:1.4rem;padding:clamp(1.5rem,4vw,3rem);margin-top:clamp(1.8rem,3.5vw,2.8rem)}
.band-mode{background:linear-gradient(135deg,#27305f,#3a2f6e);color:#f3ead8}
.band h2{font-size:clamp(1.9rem,3.6vw,3rem);margin:.4rem 0 .7rem;color:#fff}
.band p:not(.kicker){opacity:.88;max-width:28rem;margin-bottom:1.2rem}
.band-plates{display:flex;gap:1rem;justify-content:center}
.band-plates .disc{width:clamp(5.5rem,13vw,10rem);height:auto;aspect-ratio:1;flex:none}
.band-plates .disc:nth-child(2){margin-top:2rem}
@media (max-width:760px){.band{grid-template-columns:1fr}.band-plates{display:none}}

/* newsletter + faq */
.news{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;background:var(--sun);color:#1b1208;border-radius:1.4rem;padding:clamp(1.5rem,4vw,3rem);margin-top:clamp(2rem,4vw,3.4rem)}
.news h2{font-size:clamp(1.6rem,3vw,2.4rem)}
.news h2 em{color:#7a1c0c}
.news p{margin-top:.6rem;font-size:.92rem}
.nl{display:grid;grid-template-columns:1fr auto;gap:.6rem}
.nl input[type=email]{font:inherit;padding:.85rem 1.2rem;border-radius:999px;border:2px solid #1b1208;background:#fff7e6;min-width:0}
.consent{grid-column:1/-1;display:flex;gap:.6rem;font-size:.82rem;line-height:1.4;align-items:flex-start}
.consent input{margin-top:.15rem;accent-color:#1b1208}
@media (max-width:760px){.news{grid-template-columns:1fr}.nl{grid-template-columns:1fr}}
.faq{padding-bottom:clamp(2.5rem,5vw,4rem)}
.faq h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin-bottom:1rem}
.faq-l{max-width:52rem}
details{border-top:1px solid var(--line)}
details:last-child{border-bottom:1px solid var(--line)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;padding:1.05rem 0;font-weight:650;font-size:1.05rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--brand);transition:rotate .2s}
details[open]>summary::after{rotate:45deg}
details p{padding:0 0 1.1rem;color:var(--ink2);max-width:44rem}

/* footer */
footer.site{background:var(--night);color:rgba(246,236,219,.82);margin-top:clamp(2rem,4vw,3rem);padding-top:clamp(2rem,4vw,3rem)}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2rem}
footer .brand{color:#fff6e6;display:inline-block;margin-bottom:.6rem}
footer .brand i{color:var(--sun)}
.fbrand p:last-child{max-width:22rem;font-size:.92rem}
.fcol h2{font:700 .8rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sun);margin-bottom:.9rem}
.fcol li{margin-bottom:.45rem}
.fcol a{text-decoration:none;font-size:.93rem}.fcol a:hover{text-decoration:underline;color:#fff}
.fbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem 1.5rem;border-top:1px solid rgba(246,236,219,.14);margin-top:2rem;padding-block:1.1rem;font-size:.82rem;opacity:.85}
@media (max-width:760px){.fgrid{grid-template-columns:1fr 1fr}.fbrand{grid-column:1/-1}}

/* breadcrumbs, page heads */
.crumbs{padding:1rem 0 .4rem;font-size:.85rem;color:var(--muted)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.2rem .5rem}
.crumbs li+li::before{content:"›";margin-right:.5rem;opacity:.6}
.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.cat-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;flex-wrap:wrap;margin-bottom:1.2rem}
.cat-head h1,.pg-h{font-size:clamp(2rem,4vw,3.2rem)}
.cat-head p{color:var(--muted);max-width:34rem}
.cat-head b{white-space:nowrap;color:var(--ink)}
.pg-h{padding-top:1.4rem;margin-bottom:.4rem}
.pg-h small{font:500 1rem var(--sans);color:var(--muted);letter-spacing:0;margin-left:.4rem}
.note{font-size:.82rem;color:var(--muted);margin-bottom:1.1rem}

/* category */
.cat{display:grid;grid-template-columns:16.5rem 1fr;gap:2rem;align-items:start}
.filters{position:sticky;top:9.5rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.1rem}
.f-h,.filter-btn{display:none}
.fb{padding:.9rem 0;border-bottom:1px solid var(--line)}
.fb:first-of-type{padding-top:0}
.fb h2{font:700 .78rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem}
.deplist a{display:flex;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;border-radius:.5rem;text-decoration:none;font-size:.93rem}
.deplist a:hover{background:var(--sand)}
.deplist a[aria-current]{background:var(--sand);font-weight:700}
.deplist i{font-style:normal;color:var(--muted);font-size:.8rem}
.range{display:flex;align-items:center;gap:.5rem}
.range input{width:100%;min-width:0;border:1px solid var(--line);border-radius:.6rem;padding:.55rem .6rem;font:inherit;background:var(--bg)}
.chk{display:flex;align-items:center;gap:.55rem;padding:.25rem 0;font-size:.93rem;cursor:pointer}
.chk input{width:1.05rem;height:1.05rem;accent-color:var(--leaf)}
.f-apply{margin-top:1rem;display:none}
.tools{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}
.count{color:var(--muted);font-size:.92rem}
.sort{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:var(--muted)}
.sort select{font:inherit;color:var(--ink);padding:.5rem .8rem;border:1px solid var(--line);border-radius:.7rem;background:var(--card)}
.chips{display:flex;gap:.5rem;margin-bottom:1rem}
.chips button{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:.3rem .8rem;font-size:.85rem;cursor:pointer}
.cat .pgrid{grid-template-columns:repeat(3,1fr)}
@media (max-width:1150px){.cat .pgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.cat .pgrid{gap:.7rem}}
.pager{display:flex;gap:.4rem;justify-content:center;margin:2rem 0;flex-wrap:wrap}
.pager a,.pager span{min-width:2.5rem;height:2.5rem;padding-inline:.8rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:.7rem;text-decoration:none;font-weight:600;background:var(--card)}
.pager a[aria-current]{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}
.pager span{border:0;background:none}
.seo{max-width:46rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.seo h2{font-size:1.6rem;margin-bottom:.6rem}
.seo h3{font:700 1.05rem/1.2 var(--sans);letter-spacing:0;margin:1.1rem 0 .3rem}
.seo p{color:var(--ink2)}
@media (max-width:900px){
  .cat{grid-template-columns:1fr}
  .filter-btn{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--ink);background:var(--card);border-radius:999px;padding:.6rem 1.1rem;font-weight:700;cursor:pointer;width:max-content}
  .filters{position:fixed;inset:auto 0 0 0;top:auto;max-height:86vh;overflow:auto;z-index:110;border-radius:1.4rem 1.4rem 0 0;translate:0 105%;transition:translate .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 -20px 40px rgba(0,0,0,.3);padding:1rem 1.2rem 1.4rem}
  .filters.open{translate:0 0}
  .f-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}
  .f-x{border:0;background:var(--sand);width:2.3rem;height:2.3rem;border-radius:50%;cursor:pointer}
  .f-apply{display:flex;width:100%}
}

/* product page */
.pdp{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);padding:.6rem 0 1.5rem;align-items:start}
.gal{position:sticky;top:9.5rem}
.gal-main{position:relative;background:var(--card);border:1px solid var(--line);border-radius:1.2rem;display:grid;place-items:center;aspect-ratio:1;padding:2rem;overflow:hidden}
.gal-main img{width:auto;height:auto;max-width:min(100%,340px);max-height:min(100%,440px);object-fit:contain;mix-blend-mode:multiply}
.gal-main .bdg{font-size:.9rem;padding:.3rem .7rem}
.gal-trust{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:.9rem;font-size:.85rem;color:var(--muted)}
.gal-trust li::before{content:"✓";color:var(--leaf-t);font-weight:800;margin-right:.4rem}
.brandline{font-size:.9rem;color:var(--muted);margin-bottom:.5rem}
.brandline a{font-weight:700;color:var(--ink)}
.buybox h1{font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.12}
.pp{display:flex;align-items:baseline;gap:.9rem;margin-top:1.1rem;flex-wrap:wrap}
.pp-now{font-size:clamp(2.2rem,4vw,3rem);font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.pp-old{color:#8b7f70}
.pp-unit{color:var(--muted);font-size:.9rem;margin-top:.1rem}
.stock{display:flex;align-items:center;gap:.5rem;margin:.9rem 0 1.1rem;font-weight:650;color:var(--leaf-t);font-size:.93rem}
.buyrow{display:flex;gap:.8rem;flex-wrap:wrap}
.buyrow .padd{flex:1;min-width:12rem}
.qty{display:inline-flex;align-items:center;border:2px solid var(--line);border-radius:.9rem;background:var(--card);overflow:hidden}
.qty button{width:2.7rem;height:2.9rem;border:0;background:none;font-size:1.3rem;cursor:pointer}
.qty button:hover{background:var(--sand)}
.qty input{width:2.8rem;text-align:center;border:0;font:700 1rem var(--sans);background:none;-moz-appearance:textfield;appearance:textfield;padding:0}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ship-meter,.meter{margin-top:1.2rem;background:var(--ok-bg);border:1px solid var(--ok-line);border-radius:.9rem;padding:.8rem 1rem;font-size:.9rem}
.bar{height:.5rem;background:var(--ok-bar);border-radius:99px;margin-top:.55rem;overflow:hidden}
.bar i{display:block;height:100%;background:var(--leaf);border-radius:99px;transition:width .4s}
.perks{display:grid;gap:.6rem;margin-top:1.3rem;font-size:.92rem}
.perks li{display:flex;gap:.7rem;align-items:center}
.perks svg{color:var(--leaf-t);flex:none}
.bundle{background:var(--card);border:1px solid var(--line);border-radius:1.2rem;padding:1.3rem;margin-top:1rem}
.bundle h2{font-size:1.5rem;margin-bottom:1rem}
.bun-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.bun-i{display:flex;align-items:center;gap:.7rem;font-size:.88rem;max-width:13rem}
.bun-i img{width:4.2rem;height:4.2rem;object-fit:contain;mix-blend-mode:multiply;flex:none}
.bun-i b{display:block}
.plus{font-size:1.6rem;color:var(--muted)}
.bun-t{margin-left:auto;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.tabs{margin-top:1.4rem;max-width:56rem}
.tb{padding:0 0 1.2rem;color:var(--ink2)}
.spec{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.5rem 2rem;margin:0}
.spec div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px dashed var(--line);padding:.35rem 0}
.spec dt{color:var(--muted)}.spec dd{margin:0;font-weight:650}
.sticky-buy{display:none}
@media (max-width:900px){
  .pdp{grid-template-columns:1fr}
  .gal{position:static}
  .sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:55;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--card);border-top:1px solid var(--line);padding:.7rem max(var(--gut),env(safe-area-inset-left,0px)) calc(.7rem + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 24px rgba(40,25,5,.12)}
  .sticky-buy b{font-size:1.3rem;display:block;line-height:1.1}
  .sticky-buy small{color:var(--muted);font-size:.78rem}
  .sticky-buy .btn{flex:1;max-width:15rem}
  body:has(.sticky-buy){padding-bottom:5rem}
}

/* cart */
.cartgrid{display:grid;grid-template-columns:minmax(0,1fr) 22rem;gap:2rem;align-items:start}
.meter{margin:0 0 1rem}
.lines{background:var(--card);border:1px solid var(--line);border-radius:1.2rem;overflow:hidden}
.ln{display:grid;grid-template-columns:5.2rem minmax(0,1fr) auto 5.5rem 2rem;gap:1rem;align-items:center;padding:1rem 1.1rem;border-bottom:1px solid var(--line)}
.ln:last-child{border-bottom:0}
.li-img{background:var(--card);border-radius:.7rem;display:grid;place-items:center;aspect-ratio:1}
.li-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:.3rem}
.li-t{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.li-t a{font-weight:650;text-decoration:none}.li-t a:hover{text-decoration:underline}
.li-t small{color:var(--muted);font-size:.82rem}
.li-t .stock{margin:.2rem 0 0;font-size:.8rem}
.li-p{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.li-p b{font-size:1.1rem}
.rm{border:0;background:none;color:var(--muted);cursor:pointer;width:2rem;height:2rem;border-radius:50%}
.rm:hover{background:var(--sand);color:var(--brand)}
.cont{margin-top:1rem}.cont a{font-weight:650;text-decoration:none;color:var(--brand)}
.empty{padding:2rem;text-align:center;background:var(--card);border-radius:1rem;border:1px solid var(--line)}
.summary,.cos{position:sticky;top:9.5rem;background:var(--card);border:1px solid var(--line);border-radius:1.2rem;padding:1.3rem}
.summary h2,.cos h2{font-size:1.4rem;margin-bottom:1rem}
.sum{display:grid;gap:.5rem;margin:0}
.sum div{display:flex;justify-content:space-between;gap:1rem}
.sum dt{color:var(--muted)}.sum dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums}
.sum .tot{border-top:1px solid var(--line);padding-top:.7rem;margin-top:.3rem;font-size:1.25rem}
.sum .tot dt{color:var(--ink);font-weight:700}.sum .tot dd{font-weight:800}
.vat{font-size:.8rem;color:var(--muted);text-align:right;margin:.2rem 0 1rem}
.coupon{margin-bottom:1rem}
.coupon label{display:block;font-size:.82rem;font-weight:650;margin-bottom:.35rem}
.coupon div{display:flex;gap:.5rem}
.coupon input{flex:1;min-width:0;font:inherit;border:2px solid var(--line);border-radius:.8rem;padding:.6rem .8rem;background:var(--bg)}
.coupon .btn{padding:.55rem 1rem}
.pay{font-size:.8rem;color:var(--muted);margin-top:.8rem;text-align:center}
@media (max-width:900px){.cartgrid,.cogrid{grid-template-columns:minmax(0,1fr)}.summary,.cos{position:static}
  .ln{grid-template-columns:4.2rem minmax(0,1fr) auto;grid-template-areas:"i t r" "i q p";row-gap:.6rem;column-gap:.8rem}
  .li-img{grid-area:i}.li-t{grid-area:t}.rm{grid-area:r}.ln .qty{grid-area:q;justify-self:start}.li-p{grid-area:p}}

/* checkout */
.checkout header.site{position:static}
header.min .hrow{justify-content:space-between}
.steps{display:flex;gap:.4rem;font-size:.88rem;color:var(--muted)}
.steps li+li::before{content:"›";margin-right:.4rem}
.steps .on{color:var(--ink);font-weight:800}
.steps a{text-decoration:none}
.secure{display:flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:650;color:var(--leaf-t)}
@media (max-width:640px){.steps{display:none}}
.cogrid{display:grid;grid-template-columns:minmax(0,1fr) 24rem;gap:2rem;align-items:start;padding-bottom:2rem}
.cof{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.cbox{background:var(--card);border:1px solid var(--line);border-radius:1.2rem;padding:1.3rem}
.cbox h2{font:700 1.2rem/1.2 var(--sans);letter-spacing:0;display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.n{display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--ink);color:var(--on-ink);font-size:.9rem}
.fld{display:grid;gap:.3rem;margin-bottom:.8rem}
.fld label{font-size:.85rem;font-weight:650}
.fld small{font-weight:400;color:var(--muted)}
.fld input,.fld select{font:inherit;padding:.8rem .9rem;border:2px solid var(--line);border-radius:.8rem;background:var(--bg);color:var(--ink);min-width:0;width:100%}
.fld input:focus,.fld select:focus{outline:0;border-color:var(--ink);background:var(--card)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.two.zip{grid-template-columns:8rem 1fr}
@media (max-width:560px){.two,.two.zip{grid-template-columns:1fr;gap:0}}
.hint{font-size:.83rem;color:var(--muted);margin-top:.4rem}
.hint.ok{color:var(--leaf-t);font-weight:600}
.hint.c{text-align:center}
.opts{display:grid;gap:.6rem}
.opt{display:flex;align-items:center;gap:.9rem;border:2px solid var(--line);border-radius:.9rem;padding:.9rem 1rem;cursor:pointer;background:var(--card);transition:border-color .15s,background .15s}
.opt:hover{border-color:#cdbb9b}
.opt.sel,.opt:has(input:checked){border-color:var(--leaf);background:var(--ok-bg)}
.opt input{accent-color:var(--leaf);width:1.15rem;height:1.15rem;flex:none}
.o-t{display:flex;flex-direction:column;flex:1;min-width:0}
.o-t small{color:var(--muted);font-size:.8rem}
.o-p{font-weight:800}
.cards{display:flex;gap:.3rem}
.cards i{font:800 .62rem/1 var(--sans);font-style:normal;border:1px solid var(--line);border-radius:.3rem;padding:.3rem .4rem;color:#335}
.legal .chk{align-items:flex-start;font-size:.88rem;margin-bottom:1rem;line-height:1.4}
.legal .chk input{margin-top:.15rem}
.ol{display:grid;gap:.8rem;margin-bottom:1rem}
.ol li{display:grid;grid-template-columns:3.6rem 1fr auto;gap:.8rem;align-items:center;font-size:.9rem}
.th{position:relative;background:var(--card);border:1px solid var(--line);border-radius:.7rem;aspect-ratio:1;display:grid;place-items:center}
.th img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:.25rem}
.th i{position:absolute;top:-.45rem;right:-.45rem;background:var(--ink);color:var(--on-ink);font-style:normal;font-size:.72rem;min-width:1.2rem;height:1.2rem;border-radius:99px;display:grid;place-items:center}
.nm small{display:block;color:var(--muted)}
.back{margin-top:.8rem;font-size:.88rem}.back a{text-decoration:none;color:var(--brand);font-weight:650}
.min-foot{margin-top:0;padding-top:0}
.min-foot .fbot{margin-top:0;border-top:0}
@media (max-width:900px){.cogrid{grid-template-columns:minmax(0,1fr)}.cos{order:-1}}

.toast{position:fixed;left:50%;bottom:1.4rem;translate:-50% 0;z-index:300;background:var(--ink);color:var(--on-ink);padding:.8rem 1.2rem;border-radius:999px;font-weight:650;font-size:.93rem;box-shadow:0 14px 30px rgba(0,0,0,.35);max-width:calc(100vw - 2rem)}
.toast[hidden]{display:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

.osum>summary{display:flex;justify-content:space-between;align-items:center;padding:0 0 .9rem;font:700 1.3rem/1.2 var(--serif);border-top:0}
.osum>summary b{font:800 1.1rem var(--sans)}
.osum>summary::after{display:none}
.osum:not([open])>summary{padding-bottom:0}
@media (min-width:901px){.osum>summary{pointer-events:none}.osum>summary b{display:none}}
@media (max-width:900px){.osum>summary{cursor:pointer}.osum>summary::after{display:inline;content:"▾";font-size:1rem;color:var(--muted);margin-left:.5rem}.osum[open]>summary::after{rotate:180deg}}
@media (max-width:480px){.pb strong{font-size:1.25rem}.mini-plate{width:3.8rem}.pb-main h1{font-size:2.1rem}}

/* ---------- language switch ---------- */
.langs{display:inline-flex;gap:.2rem}
.lang{text-decoration:none;opacity:.7;padding:.05rem .4rem;border-radius:.4rem}
.lang:hover{opacity:1}
html[lang=de] .lang[data-lang=de],html[lang=en] .lang[data-lang=en]{opacity:1;background:rgba(246,236,219,.16);font-weight:700}

/* ---------- search suggestions ---------- */
.search{position:relative}
.sugg{position:absolute;left:0;right:0;top:calc(100% + .4rem);z-index:80;background:var(--card);border:1px solid var(--line);border-radius:1rem;box-shadow:0 24px 40px -18px rgba(40,25,5,.4);overflow:hidden}
.sugg[hidden]{display:none}
.sugg a{display:flex;align-items:center;gap:.8rem;padding:.55rem .9rem;text-decoration:none}
.sugg a:hover,.sugg a.on{background:var(--sand)}
.sugg img{width:2.5rem;height:2.5rem;object-fit:contain;mix-blend-mode:multiply;flex:none}
.sugg span{display:flex;flex-direction:column;line-height:1.25;font-weight:600;font-size:.93rem}
.sugg small{font-weight:400;color:var(--muted);font-size:.8rem}
.sugg .all{justify-content:center;font-weight:700;color:var(--brand);border-top:1px solid var(--line)}

/* ---------- mobile tab bar ---------- */
.tabbar{display:none}
@media (max-width:900px){
  .tabbar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:repeat(5,1fr);background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -8px 22px rgba(40,25,5,.1)}
  .tabbar a,.tabbar button{position:relative;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.55rem .2rem .45rem;border:0;background:none;color:var(--muted);text-decoration:none;font-size:.68rem;font-weight:650;cursor:pointer}
  .tabbar a:hover,.tabbar button:hover{color:var(--ink)}
  .tabbar .cnt{position:absolute;top:.25rem;left:calc(50% + .35rem);background:var(--brand);color:#fff;border-radius:99px;font-size:.62rem;min-width:1.05rem;height:1.05rem;display:grid;place-items:center;padding-inline:.2rem}
  body{padding-bottom:3.8rem}
  body:has(.sticky-buy){padding-bottom:8.4rem}
  .sticky-buy{bottom:3.6rem}
  .toast{bottom:4.6rem}
}
.checkout .tabbar{display:none}
@media (max-width:900px){.checkout{padding-bottom:0}}

/* ---------- consent banner ---------- */
.consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:250;padding:.8rem max(var(--gut),env(safe-area-inset-left,0px)) calc(.8rem + env(safe-area-inset-bottom,0px));background:var(--card);border-top:1px solid var(--line);box-shadow:0 -16px 40px rgba(40,25,5,.22)}
.cb-in{max-width:1320px;margin-inline:auto;display:flex;gap:1rem 2rem;align-items:flex-end;flex-wrap:wrap}
.cb-t{flex:1 1 28rem;min-width:0}

.cb-t p{font-size:.88rem;color:var(--ink2);margin-top:.2rem}
.cb-t a{color:var(--brand)}
.cb-opts{display:grid;gap:.5rem;margin-top:.7rem}
.cb-opts label{display:flex;gap:.6rem;align-items:flex-start;font-size:.88rem}
.cb-opts small{display:block;color:var(--muted)}
.cb-opts input{margin-top:.2rem;accent-color:var(--leaf)}
.cb-b{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.cb-b .btn{padding:.65rem 1.1rem;font-size:.93rem}
.cb-link{border:0;background:none;text-decoration:underline;font-weight:650;cursor:pointer;padding:.5rem}
@media (max-width:900px){.consent-banner{bottom:3.6rem;max-height:70vh;overflow:auto}}

/* ---------- feed / load more ---------- */
.lazy-sec{content-visibility:auto;contain-intrinsic-size:auto 560px}
.loadmore{text-align:center;margin:1.6rem 0 .4rem}
.feed-end{text-align:center;color:var(--muted);padding:1.2rem 0;font-size:.93rem}
.feed-end a{color:var(--brand);font-weight:650}
.feed .sh{align-items:center}
.feed-end[hidden],.loadmore[hidden]{display:none}

/* ---------- search page ---------- */
.sform{display:flex;gap:.6rem;max-width:40rem;margin-bottom:.8rem}
.sform input{flex:1;min-width:0;font:inherit;padding:.8rem 1.1rem;border:2px solid var(--line);border-radius:999px;background:var(--card)}
.sform input:focus{outline:0;border-color:var(--ink)}
.try{font-size:.9rem;color:var(--muted);margin-bottom:1.4rem;display:flex;flex-wrap:wrap;gap:.4rem .7rem;align-items:center}
.try a{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:.25rem .8rem;text-decoration:none;color:var(--ink);font-weight:600}
.try a:hover{border-color:var(--ink)}
.empty h2{font-size:1.6rem;margin-bottom:.4rem}
.empty .btn{margin-top:.8rem}

/* ---------- account ---------- */
.authgrid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;align-items:start;padding-bottom:2rem}
@media (max-width:760px){.authgrid{grid-template-columns:minmax(0,1fr)}}
.authgrid h2{font:700 1.3rem/1.2 var(--serif);margin-bottom:1rem}
.perks.big{margin:0 0 1.2rem}
.perks.big li::before{content:"✓";color:var(--leaf-t);font-weight:800;margin-right:.4rem}
.authgrid .chk{margin-bottom:1rem}

/* ---------- confirmation ---------- */
.thanks{text-align:center;padding:2.4rem 0 1.4rem}
.tick{width:4.4rem;height:4.4rem;border-radius:50%;background:var(--leaf);color:#fff;display:grid;place-items:center;margin:0 auto 1rem}
.thanks h1{font-size:clamp(2rem,4.4vw,3.4rem)}
.thanks .lead{margin-top:.7rem;font-size:1.1rem}
.thgrid{display:grid;grid-template-columns:minmax(0,1fr) 24rem;gap:1.4rem;align-items:start}
@media (max-width:900px){.thgrid{grid-template-columns:minmax(0,1fr)}}
.cbox h2{font:700 1.3rem/1.2 var(--serif)}
.next{counter-reset:s;display:grid;gap:1rem;margin:1rem 0 1.4rem}
.next li{counter-increment:s;display:grid;grid-template-columns:2rem 1fr;gap:.2rem .8rem}
.next li::before{content:counter(s);grid-row:1/3;width:2rem;height:2rem;border-radius:50%;background:var(--sand);display:grid;place-items:center;font-weight:800}
.next span{color:var(--muted);font-size:.92rem}
.acct{border-top:1px solid var(--line);padding-top:1.1rem}
.acct h3{font:700 1.1rem/1.2 var(--serif);margin-bottom:.3rem}
.acct p{color:var(--muted);margin-bottom:.8rem;font-size:.93rem}

/* ---------- docs page ---------- */
.docs{max-width:60rem;padding-bottom:3rem}
.lead2{font-size:1.1rem;color:var(--ink2);max-width:44rem;margin-bottom:1.6rem}
.dsec{background:var(--card);border:1px solid var(--line);border-radius:1.2rem;padding:1.3rem 1.4rem;margin-bottom:1rem}
.dsec h2{font:700 1.35rem/1.2 var(--serif);margin-bottom:.7rem}
.dsec p{color:var(--ink2);margin-top:.7rem}
.dl{display:grid;gap:.55rem;color:var(--ink2)}
.dl li{padding-left:1.1rem;position:relative}
.dl li::before{content:"";position:absolute;left:0;top:.65em;width:.4rem;height:.4rem;border-radius:50%;background:var(--sun)}
.dl.files{display:flex;flex-wrap:wrap;gap:.5rem 1rem}
.dl.files li{padding-left:0}.dl.files li::before{display:none}
.dl.files a{color:var(--brand);font-weight:650}
code{font:600 .85em ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--sand);padding:.1rem .35rem;border-radius:.35rem;overflow-wrap:anywhere}
.dsec li,.dsec p,.lead2{overflow-wrap:anywhere}
.tbl{overflow-x:auto;margin-top:.4rem;border:1px solid var(--line);border-radius:.8rem}
.tbl table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.9rem}
.tbl th,.tbl td{padding:.6rem .8rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl th{background:var(--sand);font-weight:700;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}
.tbl tr:last-child td{border-bottom:0}
.evl{display:grid;gap:.4rem;max-height:26rem;overflow:auto;margin-top:.6rem}
.evl li{display:grid;grid-template-columns:auto auto 1fr;gap:.2rem .7rem;align-items:baseline;border:1px solid var(--line);border-radius:.7rem;padding:.5rem .7rem;font-size:.88rem}
.evl i{font-style:normal;font-size:.75rem;font-weight:700;padding:.1rem .5rem;border-radius:99px}
.evl i.ok{background:#e1f2e5;color:var(--leaf-t)}.evl i.hold{background:var(--sand);color:var(--muted)}
.evl time{justify-self:end;color:var(--muted);font-size:.78rem}
.evl pre{grid-column:1/-1;margin:0;white-space:pre-wrap;word-break:break-word;font:.75rem/1.35 ui-monospace,Menlo,monospace;color:var(--ink2);max-height:6rem;overflow:hidden}
.consent-state{font-size:.88rem;color:var(--muted);margin:.6rem 0}

/* ---------- debug panel ---------- */
.dbg{position:fixed;right:.8rem;bottom:.8rem;z-index:400;width:min(26rem,calc(100vw - 1.6rem));max-height:60vh;display:flex;flex-direction:column;background:#14100d;color:#f6ecdb;border-radius:1rem;box-shadow:0 20px 50px rgba(0,0,0,.5);font-size:.8rem}
.dbg header{display:flex;gap:.6rem;align-items:center;padding:.6rem .8rem;border-bottom:1px solid rgba(246,236,219,.15);position:static}
.dbg header span{margin-left:auto;opacity:.7}
.dbg header button{border:0;background:rgba(246,236,219,.15);color:inherit;border-radius:50%;width:1.6rem;height:1.6rem;cursor:pointer}
.dbg ol{overflow:auto;padding:.5rem .8rem}
.dbg li{padding:.3rem 0;border-bottom:1px solid rgba(246,236,219,.1)}
.dbg i{font-style:normal;opacity:.7;margin-left:.4rem}
.dbg pre{margin:.2rem 0 0;white-space:pre-wrap;word-break:break-word;font:.72rem/1.3 ui-monospace,Menlo,monospace;opacity:.85;max-height:5rem;overflow:hidden}
@media (max-width:900px){.dbg{bottom:4.4rem}}
.cb-t>b{font-family:var(--serif);font-size:1.15rem}
.cb-opts b{font:700 .9rem var(--sans)}
@media (max-width:480px){.mini-plate{display:none}}

/* ---------- design overview ---------- */
.gal-page{padding-bottom:3rem}
.jump{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}
.jump a{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:.35rem .9rem;text-decoration:none;font-weight:650;font-size:.9rem}
.jump a:hover{border-color:var(--ink)}.jump .go{background:var(--leaf);color:#fff;border-color:var(--leaf)}
.gh{font-size:clamp(1.6rem,3vw,2.3rem);margin:2.2rem 0 1rem}
.shots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}
.shots figure{margin:0}
.shots img{width:100%;height:auto;border:1px solid var(--line);border-radius:.8rem;box-shadow:0 18px 34px -22px rgba(40,25,5,.5);background:var(--card)}
.shots figcaption,.phones figcaption{font-size:.88rem;color:var(--ink2);margin-top:.5rem}
@media (max-width:760px){.shots{grid-template-columns:minmax(0,1fr)}}
.phones{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:1.4rem 1.1rem;margin-top:1.2rem}
.phones figure{margin:0;text-align:center}
.ph{border:.55rem solid #1d1914;border-radius:1.9rem;overflow:hidden;background:#1d1914;box-shadow:0 22px 36px -20px rgba(40,25,5,.6)}
.ph img{width:100%;height:auto;display:block;border-radius:1.2rem}
.tb-r .proto{color:#ffd27a;opacity:1;font-weight:650}

/* ======== brand: real logo + colours taken from it ======== */
:root{--brand:#d71920;--sun:#f6a30f}
.logo{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit}
.lg-mark{height:46px;width:auto}
.lg-word{height:23px;width:auto}
@media (max-width:900px){.lg-mark{height:38px}.lg-word{height:19px}}
.logo-badge{display:inline-block;background:var(--card);border-radius:1rem;padding:.55rem .9rem;margin:0 0 .9rem}
.logo-badge img{height:96px;width:auto}
.dr-h .logo{gap:.4rem}
.min .logo .lg-mark{height:40px}

/* ======== promo carousel ======== */
.pb-slider{display:block;padding:0;position:relative;grid-template-columns:none;min-height:25rem;background:none}
.slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;height:100%}
.slides::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:start;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:1rem;min-height:25rem;padding:clamp(1.4rem,3vw,2.6rem) clamp(1.4rem,3vw,2.6rem) 3.6rem;color:var(--cream)}
.s1{background:radial-gradient(60% 70% at 78% 40%,rgba(242,164,19,.35),transparent 70%),linear-gradient(135deg,#1b1511,#2b1e14)}
.s2{background:radial-gradient(55% 80% at 82% 45%,rgba(254,202,44,.55),transparent 70%),linear-gradient(135deg,#a50f16,#d71920 55%,#f6730a)}
.s3{background:radial-gradient(55% 80% at 82% 45%,rgba(255,255,255,.18),transparent 70%),linear-gradient(135deg,#124d27,#1f7a3e 60%,#2f9a52)}
.slide h1,.slide h2{font-size:clamp(2.1rem,4vw,3.7rem);margin:.7rem 0 .9rem;color:#fff6e6}
.slide h1 em{color:var(--sun)}
.slide p:not(.kicker):not(.pb-cta){opacity:.92;max-width:26rem}
.s2 .kicker,.s3 .kicker{color:#ffe29a}
.code{background:rgba(255,255,255,.2);padding:.05rem .55rem;border-radius:.4rem;font:700 .95em ui-monospace,Menlo,monospace;letter-spacing:.04em}
.sl-art{display:grid;place-items:center}
.sl-art img{width:min(62%,15rem);height:auto;filter:drop-shadow(0 18px 24px rgba(0,0,0,.35));border-radius:50%}
.sl-art.truck{color:rgba(255,255,255,.9)}
.sl-art.truck svg{width:min(62%,12rem);height:auto}
.sl-ctrl{position:absolute;left:clamp(1.4rem,3vw,2.6rem);bottom:1rem;display:flex;align-items:center;gap:.6rem}
.sl-btn{width:2.2rem;height:2.2rem;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.25);color:#fff;font-size:1.3rem;line-height:1;cursor:pointer}
.sl-btn:hover{background:rgba(255,255,255,.25)}
.dots{display:flex;gap:.45rem}
.dots button{width:.6rem;height:.6rem;border-radius:50%;border:0;background:rgba(255,255,255,.4);padding:0;cursor:pointer;transition:width .25s,background .25s}
.dots button[aria-current=true]{width:1.6rem;border-radius:99px;background:var(--sun)}
.pb-main .pb-plates{align-self:stretch;min-height:16rem}
@media (max-width:900px){.slide{grid-template-columns:1fr;min-height:0}.sl-art{display:none}.pb-slider{min-height:0}}

/* ======== collections ======== */
.cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.col{display:flex;flex-direction:column;justify-content:space-between;gap:1.2rem;min-height:12.5rem;padding:1.15rem;border-radius:1.2rem;text-decoration:none;color:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s}
.col:hover{transform:translateY(-4px);box-shadow:0 22px 34px -18px rgba(40,25,5,.6)}
.col-t b{display:block;font:650 1.45rem/1.1 var(--serif);letter-spacing:-.01em}
.col-t small{display:block;margin-top:.3rem;opacity:.9;font-size:.9rem}
.col-p{display:flex}
.col-p .disc{width:4.8rem;height:4.8rem;flex:none;margin-right:-1rem;box-shadow:0 8px 14px -6px rgba(0,0,0,.5),inset 0 0 0 .25em rgba(255,255,255,.5);transition:transform .25s}
.col:hover .col-p .disc:nth-child(2){transform:translateY(-6px)}
.c1{background:linear-gradient(135deg,#a50f16,#e31e24)}
.c2{background:linear-gradient(135deg,#2a1c10,#5a3a1d)}
.c3{background:linear-gradient(135deg,#124d27,#1f7a3e)}
.c4{background:linear-gradient(135deg,#27305f,#4a3a8a)}
@media (max-width:1000px){.cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.cols{gap:.7rem}.col{min-height:10.5rem;padding:.9rem}.col-t b{font-size:1.15rem}.col-p .disc{width:3.6rem;height:3.6rem}}

/* ======== card stepper + mini cart ======== */
.qs{display:flex;align-items:center;justify-content:space-between;margin-top:.65rem;background:var(--leaf);color:#fff;border-radius:.7rem;overflow:hidden}
.qs[hidden],.padd[hidden]{display:none}
.qs button{width:2.8rem;height:2.45rem;border:0;background:none;color:#fff;font-size:1.25rem;cursor:pointer}
.qs button:hover{background:rgba(0,0,0,.18)}
.qs span{font-weight:800;font-variant-numeric:tabular-nums}
.mini{position:fixed;top:5.6rem;right:max(var(--gut),calc((100vw - 1320px)/2 + var(--gut)));width:min(24rem,calc(100vw - 2rem));background:var(--card);border:1px solid var(--line);border-radius:1.2rem;box-shadow:0 30px 60px -20px rgba(40,25,5,.5);z-index:120;padding:1rem;opacity:0;translate:0 -10px;pointer-events:none;transition:opacity .2s,translate .25s}
.mini.open{opacity:1;translate:0 0;pointer-events:auto}
.mi-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem;color:var(--leaf-t)}
.mi-x{border:0;background:var(--sand);width:1.9rem;height:1.9rem;border-radius:50%;cursor:pointer;color:var(--ink)}
.mi-l{display:grid;gap:.5rem;margin-bottom:.8rem}
.mi-l li{display:grid;grid-template-columns:2.75rem 1fr auto;gap:.7rem;align-items:center;padding:.3rem;border-radius:.7rem;font-size:.9rem}
.mi-l li.new{background:var(--ok-bg)}
.mi-l img{width:2.75rem;height:2.75rem;object-fit:contain;mix-blend-mode:multiply;background:var(--card);border-radius:.5rem}
.mi-l small{display:block;color:var(--muted)}
.mini .meter{margin:0 0 .8rem}
.mi-b{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.mi-b .btn{padding:.7rem .6rem;font-size:.92rem}

/* ======== server-rendered shop additions ======== */
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.flash{margin:1rem 0;padding:.8rem 1rem;border-radius:.7rem;font-weight:600;border:1px solid var(--line);background:var(--card)}
.flash-ok{background:var(--ok-bg);border-color:#b6dfc0;color:var(--ok-ink)}
.flash-err,.err{background:var(--bad-bg);border-color:#f3b9b3;color:var(--bad-ink)}
.flash-info{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-ink)}
.ferr{display:block;color:#b3261e;font-size:.85rem;margin-top:.25rem}
.fld.bad input,.fld.bad select,.chk.bad{outline:2px solid #d9534f;outline-offset:1px;border-radius:.5rem}
.linkbtn{background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;color:inherit;font:inherit}
.ghost{background:transparent;border:1px solid var(--line)}
.muted{color:var(--muted)}
.narrow{max-width:640px}
.center{text-align:center}
.pg-h{font-size:clamp(1.9rem,4vw,3rem);margin:1.6rem 0 1rem}
.note{color:var(--muted);margin:0 0 1.2rem;max-width:62ch}
.hint.c{text-align:center;margin-top:.8rem}
.hint.ok{color:var(--leaf-d)}
.noimg{display:grid;place-items:center;aspect-ratio:1;background:var(--sand);color:var(--muted);border-radius:.8rem;font-size:.8rem}
.noimg.big{min-height:22rem}
.subcats{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 1.2rem}
.subcats a{padding:.4rem .9rem;border:1px solid var(--line);border-radius:99px;background:var(--card);text-decoration:none;font-size:.92rem}
.subcats a:hover{border-color:var(--leaf)}
.f-reset{display:inline-block;margin-top:.6rem;color:var(--muted)}
.loadmore{text-align:center;margin:1.4rem 0}
.loadmore .busy,.btn.busy{opacity:.6;pointer-events:none}
.low,.pstock.low{color:#b45309}
.out,.pstock.out{color:var(--bad-ink)}
.mkt{background:var(--warn-bg);color:var(--warn-ink)}
.perish{margin:.6rem 0;padding:.6rem .8rem;background:var(--info-box);border:1px solid var(--info-line);border-radius:.6rem;color:var(--info-ink);font-size:.92rem}
.marketbox{padding:1rem;border:1px dashed var(--line);border-radius:.8rem;background:var(--card)}
.vbadge{font-size:.75rem;color:var(--leaf-d);font-weight:700;margin-left:.4rem}
.subtitle{color:var(--muted);margin:.2rem 0 .8rem}
.thumbs{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}
.thumb{width:64px;height:64px;padding:2px;background:var(--card);border:2px solid var(--line);border-radius:.6rem;cursor:pointer;overflow:hidden}
.thumb[aria-current=true]{border-color:var(--leaf)}
.thumb img{width:100%;height:100%;object-fit:cover}
.share{display:inline-block;margin-top:.8rem;color:var(--muted);font-size:.9rem}
.notify{margin-top:.8rem;display:grid;gap:.5rem}
.stars{color:var(--sun);letter-spacing:.1em;white-space:nowrap}
.reviews{margin:2.4rem 0}
.revlist{display:grid;gap:1rem;margin:1rem 0}
.revlist li{background:var(--card);border:1px solid var(--line);border-radius:.8rem;padding:1rem}
.rh{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.revform{margin-top:1.2rem;background:var(--card);border:1px solid var(--line);border-radius:.8rem;padding:1rem;display:grid;gap:.8rem;max-width:640px}
.rating{border:0;padding:0;margin:0;display:flex;gap:.8rem;flex-wrap:wrap}
.rating legend{font-weight:600;margin-bottom:.3rem}
.prose-wrap{max-width:860px;margin-inline:auto;padding-block:1rem 3rem}
.prose{line-height:1.7}
.prose h2,.prose h3{margin:1.6rem 0 .6rem}
.prose p,.prose ul,.prose ol{margin:.7rem 0}
.prose ul{list-style:disc;padding-left:1.3rem}
.prose ol{list-style:decimal;padding-left:1.3rem}
.prose a{color:var(--leaf-d);text-decoration:underline}
.lead2{color:var(--muted);margin-bottom:1.2rem}
.faqcta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.6rem}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--brand);font-weight:700}
.errlinks{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.2rem}
.cat-main{min-width:0}
.faddr{font-style:normal}
.billbox{margin-top:.8rem}
.applied{background:var(--ok-bg);border-radius:.6rem;padding:.5rem .8rem}
.clist .ln+.ln{border-top:1px solid var(--line)}
.warn{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:.6rem;padding:.6rem .8rem;color:var(--warn-ink);margin:.6rem 0}
.disabled{opacity:.55;pointer-events:none}
.poll{margin-top:1rem;padding:.8rem 1rem;border-radius:.6rem;background:var(--warn-bg)}
.bank{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;background:var(--sand);padding:1rem;border-radius:.7rem;margin:.8rem 0}
.bank dt{color:var(--muted)}.bank dd{margin:0;font-weight:600;word-break:break-all}
.shipto{font-style:normal}
.track a{color:var(--leaf-d)}
/* account */
.accgrid{display:grid;grid-template-columns:220px 1fr;gap:1.6rem;align-items:start;margin-bottom:3rem}
.accnav{position:sticky;top:7rem;background:var(--card);border:1px solid var(--line);border-radius:.9rem;padding:.5rem}
.accnav a,.accnav .linkbtn{display:block;padding:.6rem .8rem;border-radius:.6rem;text-decoration:none}
.accnav a[aria-current=page]{background:var(--sand);font-weight:700}
.accnav a:hover{background:var(--cream)}
.accmain{display:grid;gap:1.2rem;min-width:0}
.accmain .cbox.two,.cbox.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.authgrid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:3rem}
.otable{width:100%;border-collapse:collapse}
.otable th,.otable td{padding:.6rem .5rem;border-bottom:1px solid var(--line);text-align:left}
.otable .r,.r{text-align:right}
.st{display:inline-block;padding:.15rem .6rem;border-radius:99px;font-size:.8rem;font-weight:700;background:var(--sand)}
.st-processing,.st-shipped,.st-completed{background:var(--ok-bg);color:var(--ok-ink)}
.st-pending,.st-on_hold{background:var(--warn-bg);color:var(--warn-ink)}
.st-cancelled,.st-refunded,.st-failed{background:var(--bad-bg);color:var(--bad-ink)}
.timeline{display:grid;gap:.4rem}
.timeline time{color:var(--muted);margin-right:.5rem;font-size:.9rem}
.news-page .cbox{padding:2rem}
.tick{width:3.4rem;height:3.4rem;margin:0 auto 1rem;border-radius:50%;background:var(--leaf);color:#fff;display:grid;place-items:center;font-size:1.7rem}
details>summary{cursor:pointer}
@media (max-width:820px){.accgrid,.authgrid,.cbox.two{grid-template-columns:1fr}.accnav{position:static}.accnav ul{display:flex;flex-wrap:wrap}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.pb-side{display:flex;flex-direction:column;justify-content:flex-end;gap:.2rem;padding:1.3rem;min-height:12rem}
.pb-side.t-blue{background:linear-gradient(135deg,#17306b,#2a5aa8)}
.pb-side.t-green{background:linear-gradient(135deg,#2b5a3a,#d9801a)}
.pb-side.t-red{background:linear-gradient(135deg,#7a1410,#d71920)}
.cb-opts[hidden],.mini[aria-hidden=true]:not(.open){display:none}

/* ======== cart drawer ======== */
.cd-ov{position:fixed;inset:0;background:rgba(20,16,13,.5);z-index:300;backdrop-filter:blur(2px)}
.cd-ov[hidden]{display:none}
.cd{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--card);z-index:301;display:flex;flex-direction:column;box-shadow:-18px 0 50px -20px rgba(0,0,0,.45);transform:translateX(105%);visibility:hidden;transition:transform .28s cubic-bezier(.2,.8,.2,1),visibility 0s .28s}
.cd.open{transform:none;visibility:visible;transition:transform .28s cubic-bezier(.2,.8,.2,1)}
body.cd-lock{overflow:hidden}
.cd-h{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;border-bottom:1px solid var(--line)}
.cd-h h2{font-size:1.35rem}.cd-h small{font:500 .85rem var(--sans);color:var(--muted);margin-left:.4rem}
.cd-x{background:var(--sand);border:0;border-radius:50%;width:2.2rem;height:2.2rem;cursor:pointer;font-size:1rem}
.cd-e .cd-x{width:auto;border-radius:99px;height:auto}
.cd-m{margin:.8rem 1.2rem 0;padding:.7rem .9rem;background:var(--ok-bg);border-radius:.8rem;font-size:.9rem}
.cd-m .bar{height:6px;background:var(--ok-bar);border-radius:99px;margin-top:.45rem;overflow:hidden}.cd-m .bar i{display:block;height:100%;background:var(--leaf);border-radius:99px;transition:width .3s}
.cd-l{flex:1;overflow-y:auto;padding:.4rem 1.2rem;overscroll-behavior:contain}
.cd-i{display:grid;grid-template-columns:72px 1fr auto;gap:.8rem;padding:.9rem 0;border-bottom:1px solid var(--line);align-items:start}
.cd-i.new{animation:cdflash 1.4s ease}
@keyframes cdflash{0%{background:#fff4d6}100%{background:transparent}}
.cd-img{width:72px;height:72px;background:var(--sand);border-radius:.7rem;overflow:hidden;display:block}.cd-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.cd-t a{font-weight:600;text-decoration:none;line-height:1.25;display:block}.cd-t small{color:var(--muted);display:block;margin:.1rem 0 .5rem}
.cd-q{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:99px;overflow:hidden}
.cd-q button{width:2rem;height:2rem;border:0;background:var(--card);cursor:pointer;font-size:1.1rem}.cd-q button:hover:not(:disabled){background:var(--sand)}.cd-q button:disabled{opacity:.35;cursor:not-allowed}
.cd-q span{min-width:2rem;text-align:center;font-weight:700}
.cd-p{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.cd-rm{background:none;border:0;color:var(--muted);cursor:pointer;font-size:.9rem}.cd-rm:hover{color:var(--brand)}
.cd-f{padding:1rem 1.2rem calc(1rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);display:grid;gap:.6rem;background:var(--card)}
.cd-f dl{margin:0}.cd-f dl div{display:flex;justify-content:space-between;font-size:1.1rem;font-weight:700}.cd-f dt,.cd-f dd{margin:0}
.cd-n{font-size:.82rem;color:var(--muted)}
.cd-e{padding:3rem 1.4rem;text-align:center;display:grid;gap:1rem;justify-items:center}
@media (prefers-reduced-motion:reduce){.cd,.cd.open{transition:none}.cd-i.new{animation:none}}

/* ======== quick view, order steps, vacation notice ======== */
.pc{position:relative}
.pquick{position:absolute;top:.6rem;right:.6rem;z-index:2;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:99px;padding:.3rem .75rem;font:600 .78rem var(--sans);cursor:pointer;opacity:0;transform:translateY(-4px);transition:opacity .15s,transform .15s}
.pc:hover .pquick,.pquick:focus-visible{opacity:1;transform:none}
@media (hover:none){.pquick{opacity:1;transform:none;padding:.35rem .7rem}}
dialog.qv{border:0;border-radius:1.2rem;padding:0;width:min(860px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;background:var(--card);color:var(--ink);box-shadow:0 30px 80px -20px rgba(0,0,0,.5)}
dialog.qv::backdrop{background:rgba(20,16,13,.55);backdrop-filter:blur(2px)}
.qv-x{position:absolute;top:.8rem;right:.8rem;z-index:3;background:var(--sand);border:0;border-radius:50%;width:2.3rem;height:2.3rem;cursor:pointer}
.qv-load{padding:4rem;text-align:center;color:var(--muted)}
.qv-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.6rem;padding:1.6rem}
.qv-img{background:var(--sand);border-radius:1rem;display:grid;place-items:center;padding:1rem;aspect-ratio:1}.qv-img img{max-height:100%;width:auto;mix-blend-mode:multiply}
.qv-info{display:grid;gap:.5rem;align-content:start}.qv-info h2{font-size:1.5rem;padding-right:2.4rem}
.qv-desc{color:var(--muted);font-size:.95rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.qv-buy{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin-top:.6rem}.qv-buy .padd{flex:1 1 160px}
.qv-more{color:var(--leaf-d);font-weight:600}
.bdg-i{background:var(--brand);color:#fff;border-radius:99px;padding:.05rem .5rem;font-size:.8rem;font-weight:700}
@media (max-width:640px){.qv-body{grid-template-columns:1fr;padding:1.1rem}.qv-img{aspect-ratio:4/3}}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:1.4rem 0;counter-reset:none;list-style:none;padding:0}
.steps li{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--muted);padding:.6rem .7rem;border-radius:.8rem;background:var(--sand)}
.steps li span{display:grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--card);font-size:.8rem}
.steps li.done{background:#e4f3e8;color:var(--ok-ink)}.steps li.done span{background:var(--leaf);color:#fff}
@media (max-width:640px){.steps{grid-template-columns:1fr 1fr}}
.vac{background:#fff1cf;color:var(--warn-ink);padding:.7rem var(--gut);text-align:center;border-bottom:1px solid var(--warn-line)}

/* ======== picture slider (full-width banners) ======== */
.hero-img{position:relative;margin-top:1rem;border-radius:1.2rem;overflow:hidden;background:var(--info-bg);box-shadow:0 18px 40px -26px rgba(0,0,0,.45);min-height:0;display:block}
.hero-img .slides{height:auto}
.hero-img .slide{display:block;position:relative;padding:0;min-height:0;gap:0;color:inherit;background:var(--info-bg);overflow:hidden}
.islide-bg{position:absolute;inset:-12%;background-size:cover;background-position:center;filter:blur(26px) saturate(1.15);transform:scale(1.05)}
.islide img,.islide-a{position:absolute;inset:0;width:100%;height:100%;display:block}
.islide img{object-fit:contain}
.hero-img .sl-ctrl{position:static}
.hero-img .sl-btn{position:absolute;top:50%;transform:translateY(-50%);width:2.8rem;height:2.8rem;background:rgba(255,255,255,.92);border:0;color:#1d1914;font-size:1.7rem;box-shadow:0 6px 18px -6px rgba(0,0,0,.4);z-index:3}
.hero-img .sl-btn:hover{background:var(--card)}
.hero-img .sl-prev{left:.9rem}.hero-img .sl-next{right:.9rem}
.hero-img .dots{position:absolute;left:50%;bottom:.7rem;transform:translateX(-50%);z-index:3;background:rgba(0,0,0,.28);padding:.35rem .6rem;border-radius:99px;backdrop-filter:blur(4px)}
@media (max-width:900px){.hero-img .sl-btn{width:2.2rem;height:2.2rem;font-size:1.3rem}.hero-img .dots{bottom:.4rem}}

/* ======== product cards: softer, livelier ======== */
.pc{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.pc:hover{transform:translateY(-3px);box-shadow:0 18px 34px -22px rgba(40,25,10,.55);border-color:#d8cdb8}
.pimg{background:var(--card);border-radius:.9rem .9rem 0 0}
.pc .pprice strong{font-size:1.28rem;letter-spacing:-.01em}
.pc .padd{box-shadow:0 8px 16px -10px rgba(31,122,62,.8);transition:transform .12s,box-shadow .12s}
.pc .padd:active{transform:scale(.97)}
@media (prefers-reduced-motion:reduce){.pc,.pc:hover{transition:none;transform:none}}
.hero-img .islide{aspect-ratio:1260/400;flex:0 0 100%}
@media (max-width:700px){.hero-img .islide{aspect-ratio:2.1/1}}

/* ======== wishlist / compare tools on cards ======== */
.ptools{position:absolute;top:.6rem;left:.6rem;z-index:2;display:flex;flex-direction:column;gap:.35rem}
.pt{width:2rem;height:2rem;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.94);cursor:pointer;font-size:1rem;line-height:1;color:var(--muted);opacity:0;transform:translateX(-4px);transition:opacity .15s,transform .15s,color .15s}
.pc:hover .pt,.pt:focus-visible,.pt.on{opacity:1;transform:none}
.pt.on{color:var(--brand);border-color:var(--brand)}
.pt[data-compare].on{color:var(--leaf-d);border-color:var(--leaf)}
@media (hover:none){.pt{opacity:1;transform:none}}
.pc .bdg{left:auto;right:.6rem;top:3rem}
.cmp{margin:1rem 0 3rem}.cmp table{min-width:680px}.cmp th,.cmp td{vertical-align:top;padding:.8rem;border-bottom:1px solid var(--line);text-align:left;min-width:150px}
.cmp tbody th{font-weight:600;color:var(--muted);width:130px}
.cmp thead th{position:relative;background:var(--card)}.cmp-img{display:block;aspect-ratio:1;background:var(--card);margin-bottom:.5rem}.cmp-img img{width:100%;height:100%;object-fit:contain}
.cmp-n{font-weight:600;text-decoration:none}.cmp-x{position:absolute;top:.4rem;right:.4rem;border:0;background:var(--sand);width:1.8rem;height:1.8rem;border-radius:50%;cursor:pointer}

.bdg-promo{background:var(--leaf);top:auto;bottom:.6rem;right:.6rem;left:auto}
.pc .bdg-promo{top:5.2rem;bottom:auto}
.promo-note{display:block;color:var(--leaf-d);font-weight:600;font-size:.88rem;margin-top:.2rem}.promo-note:empty{display:none}
.promo-box{background:#e8f5ec;border:1px solid #b8dcc3;color:var(--ok-ink);border-radius:.6rem;padding:.5rem .75rem;font-size:.92rem;font-weight:600;margin:.4rem 0}

@media (max-width:900px){.act.lst{display:none}.acts{gap:.1rem}}
.heavy-note{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-ink);border-radius:.6rem;padding:.5rem .75rem;font-size:.92rem;margin:.4rem 0}

/* ======== sign-in and account entry pages ======== */
.auth{padding-block:1.6rem 3.5rem}
.auth-card{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);max-width:1000px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:1.5rem;overflow:hidden;box-shadow:0 36px 70px -44px rgba(40,25,10,.65)}
.auth-side{position:relative;display:flex;flex-direction:column;gap:1.1rem;padding:2.2rem clamp(1.4rem,3vw,2.4rem);color:var(--cream);background:radial-gradient(70% 60% at 85% 12%,rgba(242,164,19,.38),transparent 70%),radial-gradient(60% 50% at 8% 100%,rgba(215,25,32,.28),transparent 70%),linear-gradient(160deg,#1b1511,#2b1e14)}
.auth-badge{align-self:flex-start;background:var(--card);border-radius:1.1rem;padding:.55rem .85rem}.auth-badge img{height:84px;width:auto;display:block}
.auth-side h2{font-size:clamp(1.5rem,2.4vw,2rem);color:#fff6e6;line-height:1.12}
.auth-perks{display:grid;gap:.65rem;margin:.2rem 0 0;padding:0;list-style:none}.auth-perks li{position:relative;padding-left:1.7rem;opacity:.92;font-size:.98rem}
.auth-perks li::before{content:"";position:absolute;left:0;top:.28rem;width:1.05rem;height:1.05rem;border-radius:50%;background:var(--sun) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 8.5 2.5 2.5L12 5.500' fill='none' stroke='%231d1914' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/70% no-repeat}
.auth-foot{margin-top:auto;font-size:.85rem;opacity:.7}
.auth-main{padding:2.4rem clamp(1.3rem,4vw,3rem);display:flex;flex-direction:column;justify-content:center}
.auth-main h1{font-size:clamp(1.8rem,3vw,2.3rem);margin:0 0 .35rem}
.auth-main .sub{color:var(--muted);margin:0 0 1.2rem}
.auth-main .fld{margin-bottom:1rem}.lbl-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.lbl-row a{font-size:.88rem;color:var(--leaf-d)}
.pw{position:relative}.pw input{width:100%;padding-right:4.8rem}
.pw-t{position:absolute;right:.45rem;top:50%;transform:translateY(-50%);border:0;background:var(--sand);border-radius:.6rem;padding:.3rem .65rem;font:600 .8rem var(--sans);cursor:pointer;color:var(--ink)}
.pw-t:hover{background:var(--cream)}
.auth-or{display:flex;align-items:center;gap:.8rem;margin:1.2rem 0;color:var(--muted);font-size:.88rem}.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:var(--line)}
.auth-alt{display:grid;gap:.8rem;justify-items:center}.auth-alt .btn{width:100%;text-align:center}.auth-guest{font-size:.92rem}
.auth-note{margin-top:1.3rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.84rem;color:var(--muted)}
.auth-switch{margin-top:1rem;text-align:center;color:var(--muted)}
.auth-main .flash{margin:0 0 1rem}
@media (max-width:820px){.auth{padding-block:.8rem 2.5rem}.auth-card{grid-template-columns:1fr;border-radius:1.2rem}.auth-side{padding:1.2rem 1.3rem;gap:.5rem}.auth-badge img{height:52px}.auth-side h2{font-size:1.15rem}.auth-perks,.auth-foot{display:none}.auth-main{padding:1.5rem 1.3rem 1.8rem}}

.social{display:grid;gap:.6rem}.sbtn{display:flex;align-items:center;justify-content:center;gap:.7rem;padding:.8rem 1rem;border:1.5px solid var(--line);border-radius:99px;background:var(--card);color:var(--ink);font-weight:600;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.sbtn:hover{border-color:#b9ad97;box-shadow:0 6px 16px -10px rgba(0,0,0,.4)}
.auth-fine{font-size:.78rem;color:var(--muted);text-align:center;margin:.8rem 0 0}
.chk.keep{margin:.2rem 0 1rem}

/* ---- accessibility pass: contrast and touch targets ---- */
.search input::placeholder{color:#756a5b}
.pprice s,.pp-old{color:#6f6455}
.dots button{position:relative}
.dots{gap:.9rem}
.dots button::after{content:"";position:absolute;inset:-.8rem -.45rem}
.sa,.crumbs a,.pcat a{display:inline-block;padding-block:.35rem}
.crumbs a{display:inline-block;padding:.35rem 0}
.qty input{height:2.9rem}
.lang{display:inline-block;padding:.35rem .55rem}
.pw-t{min-height:2.5rem}
.auth-guest,.auth-alt a,.auth-foot a{display:inline-block;padding:.4rem 0}
@media (pointer:coarse){
  .pt{width:2.4rem;height:2.4rem;font-size:.95rem}
  .pquick{padding:.5rem .75rem;font-size:.74rem}
  .ptools{gap:.3rem}
  .sl-btn{width:2.75rem;height:2.75rem}
  .rm{width:2.75rem;height:2.75rem}
  .sa{display:inline-block;padding:.7rem 0}
}

/* ---- dark theme: follows the system unless the visitor chose one with the toggle ---- */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#16120e; --card:#211b15; --ink:#f1eadb; --ink2:#d8ccb8; --muted:#b9ac98; --line:#3b3126; --sand:#2c241b; --night:#0b0806; --brand:#ff6a58; --sun:#f6ac2a; --leaf-d:#6fd197; --leaf-t:#6fd197;
  --ok-bar:#2a4a35; --ok-line:#265a37; --ok-ink:#8fe0ae; --ok-bg:#16301f; --bad-ink:#ffb3a8; --bad-bg:#3a1a16; --warn-ink:#f4d58a; --warn-bg:#33270f; --warn-line:#5d4818; --info-bg:#1d2a31; --info-box:#1b2833; --info-line:#2f4a60; --info-ink:#a9cdee; color-scheme:dark;}}
:root[data-theme="dark"]{--bg:#16120e; --card:#211b15; --ink:#f1eadb; --ink2:#d8ccb8; --muted:#b9ac98; --line:#3b3126; --sand:#2c241b; --night:#0b0806; --brand:#ff6a58; --sun:#f6ac2a; --leaf-d:#6fd197;
  --ok-bar:#2a4a35; --ok-line:#265a37; --ok-ink:#8fe0ae; --ok-bg:#16301f; --bad-ink:#ffb3a8; --bad-bg:#3a1a16; --warn-ink:#f4d58a; --warn-bg:#33270f; --warn-line:#5d4818; --info-bg:#1d2a31; color-scheme:dark;}
.theme-t{border:0;background:none;color:inherit;opacity:.75;cursor:pointer;padding:.35rem .55rem;border-radius:.4rem;font-size:1rem;line-height:1}
.theme-t:hover{opacity:1}
.theme-t .ic-dark{display:none}
:root[data-theme="dark"] .theme-t .ic-light{display:none}:root[data-theme="dark"] .theme-t .ic-dark{display:inline}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .theme-t .ic-light{display:none}:root:not([data-theme="light"]) .theme-t .ic-dark{display:inline}}
/* product photos, logos and thumbnails stay on white so cut-out pack shots remain legible */
:root[data-theme="dark"] :is(.pimg,.gal-main,.li-img,.th,.logo-badge,.mi-l img,.thumb,.cmp-img,.auth-badge){background:#fff}
:root[data-theme="dark"] :is(.pquick,.pt){background:rgba(255,255,255,.94);color:#1d1914}
:root[data-theme="dark"] img{filter:brightness(.94)}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) :is(.pimg,.gal-main,.li-img,.th,.logo-badge,.mi-l img,.thumb,.cmp-img,.auth-badge){background:#fff}
  :root:not([data-theme="light"]) :is(.pquick,.pt){background:rgba(255,255,255,.94);color:#1d1914}
  :root:not([data-theme="light"]) img{filter:brightness(.94)}
}

/* dark theme: elements whose background is the ink colour or a fixed accent keep readable text */
:root[data-theme="dark"] .skip,:root[data-theme="dark"] .allbtn,:root[data-theme="dark"] .btn-sun{color:#1b1208}
:root[data-theme="dark"] .btn-dark,:root[data-theme="dark"] .btn-dark:hover{background:var(--ink);color:#16120e}
:root[data-theme="dark"] .bdg{background:#c0281c;color:#fff}
:root[data-theme="dark"] .pstock{color:#6fd197}
:root[data-theme="dark"] .pstock.low{color:#f0a35a}
:root[data-theme="dark"] .pprice s,:root[data-theme="dark"] .pp-old,:root[data-theme="dark"] .ppu{color:#a89b88}
@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]) .skip,:root:not([data-theme="light"]) .allbtn,:root:not([data-theme="light"]) .btn-sun{color:#1b1208}
:root:not([data-theme="light"]) .btn-dark,:root:not([data-theme="light"]) .btn-dark:hover{background:var(--ink);color:#16120e}
:root:not([data-theme="light"]) .bdg{background:#c0281c;color:#fff}
:root:not([data-theme="light"]) .pstock{color:#6fd197}
:root:not([data-theme="light"]) .pstock.low{color:#f0a35a}
:root:not([data-theme="light"]) .pprice s,:root:not([data-theme="light"]) .pp-old,:root:not([data-theme="light"]) .ppu{color:#a89b88}
}

:root[data-theme="dark"] .stock.low{color:#f0a35a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .stock.low{color:#f0a35a}}

/* shipping hints under prices, order-again strip */
.pship{font-size:.76rem;color:var(--ok-ink);font-weight:600;margin-top:.1rem}
.ship-hint{font-size:.9rem;font-weight:600;color:var(--ink2);margin:.15rem 0 .5rem}
.ship-est{font-size:.86rem;color:var(--muted);margin:-.2rem 0 .8rem}
.again .sh form{margin:0}
.notify .hint{display:block}
.fhours{margin-top:.8rem;font-size:.9rem}
.notify input[type=email]{font:inherit;padding:.8rem 1rem;border:2px solid var(--line);border-radius:.9rem;background:var(--card);color:var(--ink);width:100%;min-height:2.9rem}
.notify input[type=email]:focus{outline:0;border-color:var(--ink)}
.notify .btn{justify-self:stretch}

/* dark theme: the logo files have a white background, so give them a tidy white plate */
:root[data-theme="dark"] header.site .logo,:root[data-theme="dark"] .dr-h .logo{background:#fff;border-radius:.8rem;padding:.25rem .6rem}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) header.site .logo,:root:not([data-theme="light"]) .dr-h .logo{background:#fff;border-radius:.8rem;padding:.25rem .6rem}}

/* dark theme: pictures blended with "multiply" need a light backdrop or they turn black */
:root[data-theme="dark"] :is(.qv-img,.cd-img,.sugg img,.bun-i img,.mini-plate,.mpromo img){background:#fff}
:root[data-theme="dark"] :is(.sugg img,.bun-i img){border-radius:.4rem}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) :is(.qv-img,.cd-img,.sugg img,.bun-i img,.mini-plate,.mpromo img){background:#fff}
:root:not([data-theme="light"]) :is(.sugg img,.bun-i img){border-radius:.4rem}}

/* dark theme: images that blend themselves ("multiply") get a plain white background instead */
:root[data-theme="dark"] :is(.sugg img,.bun-i img,.mi-l img){mix-blend-mode:normal;background:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) :is(.sugg img,.bun-i img,.mi-l img){mix-blend-mode:normal;background:#fff}}

/* ---- admin bar (staff only), like WordPress ---- */
:root{--barh:0px}
body.has-bar{--barh:38px;padding-top:var(--barh)}
body.has-bar header.site{top:var(--barh)}
body.has-bar{scroll-padding-top:calc(9rem + var(--barh))}
#abar{position:fixed;top:0;left:0;right:0;height:38px;z-index:250;display:flex;align-items:center;gap:.15rem;padding:0 .6rem;background:#1d2327;color:#dcdcde;font:600 13px/1 "Inter Tight",system-ui,sans-serif;box-shadow:0 1px 0 rgba(255,255,255,.06)}
#abar a,#abar summary,#abar button{display:inline-flex;align-items:center;gap:.4rem;height:38px;padding:0 .7rem;color:#dcdcde;text-decoration:none;background:none;border:0;cursor:pointer;font:inherit;list-style:none;white-space:nowrap}
#abar summary::-webkit-details-marker{display:none}
#abar a:hover,#abar summary:hover,#abar button:hover,#abar details[open]>summary{background:#2c3338;color:#72aee6}
#abar .ab-edit{color:#ffc65c}#abar .ab-edit:hover{color:#ffd88a}
#abar em{font-style:normal;background:#d63638;color:#fff;border-radius:99px;padding:.05rem .4rem;font-size:.7rem}
#abar .ab-grow{flex:1}
#abar details{position:relative}
@media (max-width:760px){#abar .ab-hide-s,#abar .ab-home span{display:none}#abar .ab-edit span{max-width:9.5rem;overflow:hidden;text-overflow:ellipsis}}
@media print{#abar{display:none}body.has-bar{padding-top:0}}
.checkout.has-bar header.site,body.has-bar.checkout header.site{top:0}
#abar summary::after,#abar summary::before{content:none!important;display:none!important}

/* =====================================================================================================
   Home page rhythm: every section has its own shape and colour
   ===================================================================================================== */
.a0{--ac:#e0661a;--ai:#8a3a06}.a1{--ac:#2f9e5b;--ai:#14502a}.a2{--ac:#2b78c9;--ai:#124a86}.a3{--ac:#e0a21a;--ai:#6b4a06}.a4{--ac:#9b51c9;--ai:#5a2380}.a5{--ac:#d6406a;--ai:#85132f}

/* offers: a full-width warm band with deal cards */
.deals{margin-top:clamp(1.8rem,3.5vw,2.8rem);margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:clamp(1.3rem,3vw,2.2rem) 0 clamp(1.4rem,3vw,2.2rem);background:linear-gradient(115deg,#a8141c 0%,#d9431a 55%,#f08a14 110%);color:#fff;position:relative;overflow:hidden}
.deals::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 90% at 90% 0,rgba(255,255,255,.18),transparent 70%),radial-gradient(30% 60% at 0 100%,rgba(0,0,0,.2),transparent 70%);pointer-events:none}
.deals .wrap{position:relative}
.deals h2{color:#fff}.deals h2 em{color:#ffe29a}.deals .sa{color:#fff;text-decoration:underline}
.pc-deal{position:relative;background:var(--card);color:var(--ink);border-radius:1.1rem;padding:.7rem .7rem 1rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 18px 30px -20px rgba(60,10,0,.7);border:0}
.pc-deal .pimg{border-radius:.8rem}
.deal-off{position:absolute;z-index:3;left:-.35rem;top:-.55rem;width:3.4rem;height:3.4rem;border-radius:50%;background:#ffd23f;color:#7a1007;font:800 1.15rem/1 var(--sans);display:grid;place-content:center;text-align:center;rotate:-10deg;box-shadow:0 6px 12px -6px rgba(0,0,0,.5)}
.deal-off small{font-size:.65rem;margin-top:-.1rem}
.pc-deal .pname{font-size:.95rem}
.pc-deal .pprice strong{font-size:1.4rem;color:#c0281c}
.pc-deal .psave{display:inline-block;align-self:flex-start;background:var(--ok-bg);color:var(--ok-ink);font-weight:700;font-size:.78rem;border-radius:99px;padding:.15rem .6rem}
.pc-deal .padd{margin-top:auto}

/* best sellers: a ranked list */
.top{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem 1.2rem;counter-reset:rk}
.top li{display:flex;align-items:center;gap:.7rem;min-width:0}
.rk{flex:none;width:2.2rem;text-align:center;font:600 2.6rem/1 var(--serif);color:transparent;-webkit-text-stroke:1.5px var(--brand);letter-spacing:-.04em}
.top .pc-list{flex:1;min-width:0}
.pc-list{display:grid;grid-template-columns:4.6rem minmax(0,1fr) auto;align-items:center;gap:.8rem;background:var(--card);border:1px solid var(--line);border-radius:1.1rem;padding:.6rem .8rem .6rem .6rem;box-shadow:none}
.pc-list .pimg{aspect-ratio:1;width:4.6rem;border-radius:.8rem;background:#fff}
.pc-list .pimg img{inset:.3rem;width:calc(100% - .6rem);height:calc(100% - .6rem)}
.pc-list .pbody{min-width:0;padding:0;display:block}
.pc-list .pname{font-size:.95rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pc-list .pmeta{font-size:.76rem;color:var(--muted);margin:.1rem 0}
.pc-list .pprice{margin:.1rem 0 0}.pc-list .pprice strong{font-size:1.05rem}
.pc-list .lbuy .padd{width:auto;padding:.55rem .9rem;font-size:.82rem;white-space:nowrap}
.pc-list .lbuy .qs{margin:0}

/* department showcases */
.showcase{--ac:#e0661a;--ai:#8a3a06}
.sc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3.6fr);gap:1.1rem;align-items:stretch}
.sc-tile{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.55rem;padding:1.5rem 1.4rem;border-radius:1.5rem;text-decoration:none;color:var(--ink);background:linear-gradient(160deg,color-mix(in srgb,var(--ac) 30%,var(--card)),color-mix(in srgb,var(--ac) 12%,var(--card)));border:1px solid color-mix(in srgb,var(--ac) 28%,var(--line));min-height:100%}
.sc-tile::after{content:"";position:absolute;right:-30%;top:-20%;width:90%;aspect-ratio:1;border-radius:50%;background:color-mix(in srgb,var(--ac) 25%,transparent);filter:blur(2px)}
.sc-tile>*{position:relative;z-index:1}
.sc-k{font:700 .72rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ai)}
:root[data-theme="dark"] .sc-k{color:var(--ac)}
.sc-tile h2{font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.02}
.sc-tile p{font-size:.9rem;color:var(--ink2);max-width:22ch}
.sc-imgs{display:flex;margin-top:auto;padding-top:.6rem}
.sc-imgs i{width:4.4rem;height:4.4rem;border-radius:50%;background:#fff;border:3px solid var(--card);display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 16px -10px rgba(0,0,0,.5)}
.sc-imgs i+i{margin-left:-1.1rem}.sc-imgs img{width:78%;height:78%;object-fit:contain;mix-blend-mode:multiply}
.sc-cta{font-weight:800;color:var(--ai);font-size:.92rem}
:root[data-theme="dark"] .sc-cta{color:var(--ac)}
.sc-tile:hover .sc-cta{text-decoration:underline}
.sc-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.dp-tile-r .sc-grid,.dp-tile-r .sc-grid{direction:rtl}
.dp-tile-r .sc-grid>*{direction:ltr}
.sc-band{border-radius:1.6rem;padding:clamp(1rem,2.4vw,1.6rem);background:color-mix(in srgb,var(--ac) 11%,var(--card));border:1px solid color-mix(in srgb,var(--ac) 22%,var(--line))}
.sc-band .sh h2{color:var(--ai)}
:root[data-theme="dark"] .sc-band .sh h2{color:var(--ink)}
.sc-band-solid{background:linear-gradient(135deg,color-mix(in srgb,var(--ac) 26%,var(--card)),color-mix(in srgb,var(--ac) 8%,var(--card)))}
.sc-pills{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1rem}
.sc-pills a{display:inline-flex;gap:.4rem;align-items:center;padding:.4rem .85rem;border-radius:99px;background:var(--card);border:1px solid color-mix(in srgb,var(--ac) 35%,var(--line));text-decoration:none;font-weight:650;font-size:.88rem}
.sc-pills a:hover{background:var(--ac);color:#fff;border-color:var(--ac)}.sc-pills small{color:var(--muted);font-weight:600}.sc-pills a:hover small{color:#fff}
.sc-mosaic{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:1rem;align-items:stretch}
.sc-big .pc{height:100%;border:2px solid color-mix(in srgb,var(--ac) 40%,var(--line))}
.sc-big .pimg{aspect-ratio:1.15}
.sc-big .pname{font-size:1.15rem}.sc-big .pprice strong{font-size:1.5rem}
.sc-small{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.sc-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.1rem}
.dp-list .sh h2{color:var(--ink)}
.showcase.a0 .sh h2,.showcase.a1 .sh h2,.showcase.a2 .sh h2,.showcase.a3 .sh h2,.showcase.a4 .sh h2,.showcase.a5 .sh h2{text-decoration:underline;text-decoration-color:var(--ac);text-decoration-thickness:.35rem;text-underline-offset:.35rem;text-decoration-skip-ink:none}
.sc-band .sh h2{text-decoration:none!important}
.showcase .sa{color:var(--ai)}:root[data-theme="dark"] .showcase .sa{color:var(--ac)}

/* a cool-chain service band between the showcases */
.cold{display:flex;align-items:center;gap:1.1rem;padding:1.1rem 1.5rem;border-radius:1.4rem;text-decoration:none;color:#0c2b4a;background:linear-gradient(110deg,#d6ecff,#eaf6ff 55%,#cfe6fb);border:1px solid #b6d6f3}
.cold-ic{font-size:2.2rem;line-height:1;color:#2b78c9}
.cold-t{flex:1;display:flex;flex-direction:column;gap:.15rem}.cold-t b{font:600 1.35rem/1.15 var(--serif)}.cold-t small{font-size:.9rem;color:#244a6e;max-width:60ch}
.cold-go{font-weight:800;white-space:nowrap}
:root[data-theme="dark"] .cold{background:linear-gradient(110deg,#14293d,#183049 55%,#112334);border-color:#27506f;color:#d8ecff}
:root[data-theme="dark"] .cold-t small{color:#a9c6df}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .cold{background:linear-gradient(110deg,#14293d,#183049 55%,#112334);border-color:#27506f;color:#d8ecff}:root:not([data-theme="light"]) .cold-t small{color:#a9c6df}}

/* just arrived: cards carry a "new" ribbon */
.fresh .pc{position:relative}
.fresh .pc::before{content:"NEU";position:absolute;z-index:3;left:.6rem;top:.6rem;background:#1f7a3e;color:#fff;font:800 .68rem var(--sans);letter-spacing:.1em;padding:.2rem .5rem;border-radius:.4rem}
:root[lang="en"] .fresh .pc::before,html[lang="en"] .fresh .pc::before{content:"NEW"}
.fresh .ptools{top:2.4rem}

@media (max-width:1100px){.top{grid-template-columns:repeat(2,minmax(0,1fr))}.sc-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.sc-cards .pc:nth-child(n+4){display:none}}
@media (max-width:820px){
  .sc-grid,.sc-mosaic{grid-template-columns:1fr}
  .dp-tile-r .sc-grid{direction:ltr}
  .sc-tile{min-height:0;flex-direction:row;align-items:center;flex-wrap:wrap;padding:1.1rem}.sc-tile p{display:none}.sc-imgs{margin:0 0 0 auto;padding:0}
  .sc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sc-cards .pc:nth-child(n+3){display:none}
  .sc-list,.top{grid-template-columns:1fr}
  .sc-small{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cold{flex-wrap:wrap}.cold-go{width:100%}
  .deal-off{width:3rem;height:3rem;font-size:1rem}
}
.sc-big .pc{display:flex;flex-direction:column}.sc-big .pimg{flex:1;min-height:15rem;aspect-ratio:auto}.sc-big .pbody{flex:none}
@media (max-width:820px){.sc-big .pimg{min-height:12rem}}
:root[data-theme="dark"] .sc-k,:root[data-theme="dark"] .sc-cta,:root[data-theme="dark"] .showcase .sa{color:color-mix(in srgb,var(--ac) 55%,#fff)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .sc-k,:root:not([data-theme="light"]) .sc-cta,:root:not([data-theme="light"]) .showcase .sa{color:color-mix(in srgb,var(--ac) 55%,#fff)}}

/* =====================================================================================================
   Sign-in: a warmer, livelier page
   ===================================================================================================== */
.auth{position:relative;padding-block:clamp(1.4rem,4vw,3.2rem) 4rem}
.auth::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(520px 340px at 12% 8%,rgba(246,163,15,.18),transparent 70%),radial-gradient(480px 320px at 92% 70%,rgba(214,64,106,.12),transparent 70%),radial-gradient(420px 300px at 60% 0,rgba(43,120,201,.08),transparent 70%)}
.auth-card{max-width:1080px;border-radius:1.9rem;box-shadow:0 40px 80px -48px rgba(60,30,5,.55),0 2px 0 rgba(255,255,255,.5) inset;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);overflow:hidden}
.auth-side{position:relative;overflow:hidden;gap:1.2rem;padding:2.2rem clamp(1.4rem,3vw,2.5rem) 1.8rem;background:radial-gradient(70% 55% at 90% 8%,rgba(255,200,80,.45),transparent 70%),radial-gradient(60% 50% at 0 100%,rgba(214,32,50,.45),transparent 70%),linear-gradient(155deg,#9b2a14 0%,#3b1a0e 60%,#1d100a 100%)}
.auth-side::after{content:"";position:absolute;right:-18%;bottom:-14%;width:70%;aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(255,240,210,.12);box-shadow:0 0 0 2.2rem rgba(255,240,210,.04),0 0 0 4.4rem rgba(255,240,210,.03);pointer-events:none}
.auth-side>*{position:relative;z-index:1}
.auth-badge{padding:.4rem .7rem;border-radius:1rem;box-shadow:0 10px 24px -14px rgba(0,0,0,.7)}.auth-badge img{height:64px}
.auth-pics{position:relative;height:11.5rem;margin:.2rem 0 .1rem}
.ap{position:absolute;display:grid;place-items:center;border-radius:50%;background:#fff;border:4px solid rgba(255,248,235,.95);box-shadow:0 18px 30px -16px rgba(0,0,0,.75);overflow:hidden;animation:apfloat 7s ease-in-out infinite}
.ap img{width:76%;height:76%;object-fit:contain;mix-blend-mode:multiply}
.ap0{width:8.6rem;height:8.6rem;left:2%;top:1.6rem}
.ap1{width:6.2rem;height:6.2rem;left:30%;top:0;animation-delay:-2s}
.ap2{width:7.2rem;height:7.2rem;left:46%;top:3.4rem;animation-delay:-4s}
.ap3{width:5rem;height:5rem;left:72%;top:.4rem;animation-delay:-1s}
.ap4{width:5.4rem;height:5.4rem;left:78%;top:5.4rem;animation-delay:-3s}
.ap5{display:none}
@keyframes apfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media (prefers-reduced-motion:reduce){.ap{animation:none}}
.auth-side h2{font-size:clamp(1.7rem,2.8vw,2.35rem);line-height:1.08;color:#fff6e6;text-wrap:balance}
.auth-side h2 em{color:#ffc65c;font-style:italic;font-weight:500}
.auth-perks{gap:.8rem}.auth-perks li{display:flex;align-items:flex-start;gap:.7rem;padding-left:0;opacity:.95;font-size:.94rem}
.auth-perks li::before{display:none}
.auth-perks svg{flex:none;width:1.9rem;height:1.9rem;padding:.4rem;border-radius:.6rem;background:rgba(255,198,92,.16);stroke:#ffc65c;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:auto;padding-top:.4rem}
.auth-chips span{font-size:.76rem;font-weight:650;padding:.28rem .65rem;border-radius:99px;background:rgba(255,248,235,.12);border:1px solid rgba(255,248,235,.2);color:#fff1d6}
.auth-foot{display:none}
.auth-main{padding:clamp(1.6rem,3.5vw,2.6rem) clamp(1.3rem,4vw,3.2rem);justify-content:flex-start}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;padding:.25rem;margin:0 0 1.4rem;background:var(--sand);border-radius:99px}
.auth-tabs a{text-align:center;padding:.6rem .8rem;border-radius:99px;font-weight:700;text-decoration:none;color:var(--muted);font-size:.94rem}
.auth-tabs a[aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:0 2px 6px -2px rgba(0,0,0,.25)}
.auth-tabs a:not([aria-selected=true]):hover{color:var(--ink)}
.auth-main h1{font-size:clamp(1.9rem,3.2vw,2.5rem);letter-spacing:-.025em}
.auth-main .social{gap:.65rem;margin-bottom:0}
.auth-main .sbtn{padding:.85rem 1rem;border-radius:.95rem;font-weight:700;background:var(--card);box-shadow:0 1px 0 rgba(0,0,0,.04)}
.auth-main .sbtn:hover{transform:translateY(-1px)}
.auth-main .fld input{border-radius:.95rem;padding:.9rem 1rem;border:1.5px solid var(--line);background:var(--bg)}
.auth-main .fld input:focus{border-color:var(--sun);box-shadow:0 0 0 4px rgba(242,164,19,.2);outline:0;background:var(--card)}
.auth-main .btn-xl{border-radius:.95rem;padding:1rem;font-size:1.05rem;box-shadow:0 14px 24px -14px rgba(31,122,62,.8)}
.auth-guest-row{text-align:center;margin:1rem 0 0}
@media (max-width:860px){
  .auth-card{grid-template-columns:1fr;border-radius:1.4rem}
  .auth-side{flex-direction:row;flex-wrap:wrap;align-items:center;padding:1.2rem;gap:.8rem}
  .auth-badge img{height:44px}
  .auth-pics{order:3;flex:1 1 100%;height:5rem;margin:0}
  .ap0{width:4.4rem;height:4.4rem;left:0;top:.2rem}.ap1{width:3.4rem;height:3.4rem;left:22%;top:0}.ap2{width:4rem;height:4rem;left:38%;top:.6rem}.ap3{width:3rem;height:3rem;left:58%;top:.2rem}.ap4{width:3.4rem;height:3.4rem;left:72%;top:.8rem}
  .auth-side h2{flex:1 1 60%;font-size:1.35rem;margin:0}
  .auth-perks,.auth-chips{display:none}
}

/* =====================================================================================================
   Dark theme, second pass: lighter warm charcoal with real depth (the first version was one flat near-black)
   ===================================================================================================== */
:root[data-theme="dark"]{--bg:#2c261f;--card:#383026;--sand:#443b30;--line:#5a4e40;--muted:#cdc0aa;--night:#1f1a15;--ink:#f6efe1;--ink2:#e3d8c4}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#2c261f;--card:#383026;--sand:#443b30;--line:#5a4e40;--muted:#cdc0aa;--night:#1f1a15;--ink:#f6efe1;--ink2:#e3d8c4}}
:root[data-theme="dark"] body{background:radial-gradient(900px 420px at 88% -80px,rgba(246,163,15,.08),transparent 70%),radial-gradient(700px 380px at -5% 30%,rgba(192,40,28,.06),transparent 70%),var(--bg)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body{background:radial-gradient(900px 420px at 88% -80px,rgba(246,163,15,.08),transparent 70%),radial-gradient(700px 380px at -5% 30%,rgba(192,40,28,.06),transparent 70%),var(--bg)}}
/* surfaces: a little lift and a soft edge light instead of a hard black box */
:root[data-theme="dark"] :is(.pc,.sc-tile,.pc-list,.auth-card,.cd,.qv,.revlist li,.accnav,.marketbox,.opt,.cbox,.faq-i){box-shadow:0 1px 0 rgba(255,255,255,.045) inset,0 12px 26px -18px rgba(0,0,0,.7)}
:root[data-theme="dark"] header.site{background:#3b3228;border-bottom-color:#54483a}
:root[data-theme="dark"] :is(input,select,textarea){background-color:#463d31;border-color:#6a5c4b;color:var(--ink)}
:root[data-theme="dark"] :is(input,textarea)::placeholder{color:#a89c88}
:root[data-theme="dark"] .search{background:#463d31;border-color:#6a5c4b}
:root[data-theme="dark"] .search input{background:transparent}
:root[data-theme="dark"] .auth-main .fld input{background:#463d31;border-color:#6a5c4b}
:root[data-theme="dark"] .auth-main .fld input:focus{background:#50463a}
:root[data-theme="dark"] .auth-tabs{background:#2a241d}
:root[data-theme="dark"] .auth-tabs a[aria-selected=true]{background:#4d4336;color:var(--ink)}
:root[data-theme="dark"] .auth-main .sbtn{background:#463d31}
:root[data-theme="dark"] .auth-card{border-color:#54483a}
/* product picture wells: a soft warm white, not a glaring #fff slab */
:root[data-theme="dark"] :is(.pimg,.gal-main,.li-img,.th,.mi-l img,.thumb,.cmp-img,.qv-img,.cd-img,.sugg img,.bun-i img,.mini-plate,.pc-list .pimg,.sc-imgs i,.ap){background:#f5f0e6}
:root[data-theme="dark"] .gal-main{border-color:#6a5c4b}
@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]) :is(.pc,.sc-tile,.pc-list,.auth-card,.cd,.qv,.revlist li,.accnav,.marketbox,.opt,.cbox,.faq-i){box-shadow:0 1px 0 rgba(255,255,255,.045) inset,0 12px 26px -18px rgba(0,0,0,.7)}
:root:not([data-theme="light"]) header.site{background:#3b3228;border-bottom-color:#54483a}
:root:not([data-theme="light"]) :is(input,select,textarea){background-color:#463d31;border-color:#6a5c4b;color:var(--ink)}
:root:not([data-theme="light"]) :is(input,textarea)::placeholder{color:#a89c88}
:root:not([data-theme="light"]) .search{background:#463d31;border-color:#6a5c4b}
:root:not([data-theme="light"]) .search input{background:transparent}
:root:not([data-theme="light"]) .auth-main .fld input{background:#463d31;border-color:#6a5c4b}
:root:not([data-theme="light"]) .auth-tabs{background:#2a241d}
:root:not([data-theme="light"]) .auth-tabs a[aria-selected=true]{background:#4d4336;color:var(--ink)}
:root:not([data-theme="light"]) .auth-main .sbtn{background:#463d31}
:root:not([data-theme="light"]) :is(.pimg,.gal-main,.li-img,.th,.mi-l img,.thumb,.cmp-img,.qv-img,.cd-img,.sugg img,.bun-i img,.mini-plate,.pc-list .pimg,.sc-imgs i,.ap){background:#f5f0e6}
}

/* =====================================================================================================
   Sign-in, third pass: a calm focused header, a vivid welcome panel, a roomy form
   ===================================================================================================== */
.auth{padding-block:.4rem 4.5rem}
.auth::before{background:radial-gradient(620px 420px at 8% 0,rgba(246,163,15,.26),transparent 70%),radial-gradient(520px 380px at 96% 60%,rgba(214,64,106,.15),transparent 70%),radial-gradient(520px 340px at 55% -10%,rgba(43,120,201,.10),transparent 70%)}
.auth-card{max-width:1120px;grid-template-columns:minmax(0,5.2fr) minmax(0,5fr);border-radius:2rem;box-shadow:0 50px 90px -50px rgba(90,40,5,.6),0 0 0 1px rgba(0,0,0,.03)}
.auth-side{background:
  radial-gradient(circle at 18% 12%,rgba(255,255,255,.22) 0 2px,transparent 2.5px) 0 0/26px 26px,
  radial-gradient(80% 60% at 100% 0,rgba(255,226,140,.65),transparent 65%),
  radial-gradient(70% 55% at 0 100%,rgba(120,10,30,.7),transparent 70%),
  linear-gradient(160deg,#f2a413 0%,#e5681a 34%,#c1281c 68%,#6b1712 100%);
  color:#fff;padding:2.4rem clamp(1.5rem,3vw,2.6rem) 2rem}
.auth-side::after{border-color:rgba(255,255,255,.2);box-shadow:0 0 0 2.4rem rgba(255,255,255,.05),0 0 0 4.8rem rgba(255,255,255,.035)}
.auth-badge{background:#fff;box-shadow:0 14px 28px -14px rgba(60,5,0,.7)}
.auth-pics{height:13rem;margin:.4rem 0 .2rem}
.ap{border-color:#fff;box-shadow:0 22px 34px -18px rgba(60,5,0,.8)}
.ap0{width:9.6rem;height:9.6rem;left:0;top:2rem}.ap1{width:6.8rem;height:6.8rem;left:31%;top:.2rem}.ap2{width:8rem;height:8rem;left:45%;top:4rem}.ap3{width:5.4rem;height:5.4rem;left:73%;top:0}.ap4{width:5.8rem;height:5.8rem;left:80%;top:6rem}
.auth-side h2{font-size:clamp(1.9rem,3.2vw,2.7rem);color:#fff;text-shadow:0 2px 18px rgba(80,10,0,.35);letter-spacing:-.02em}
.auth-side h2 em{color:#fff2c4}
.auth-perks li{color:#fff;opacity:1;font-weight:500}
.auth-perks svg{background:rgba(255,255,255,.22);stroke:#fff}
.auth-visit{display:flex;gap:.75rem;align-items:flex-start;margin-top:auto;padding:.85rem 1rem;border-radius:1.1rem;background:rgba(40,5,0,.28);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(6px)}
.auth-visit svg{flex:none;width:1.5rem;height:1.5rem;stroke:#ffe29a;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:.1rem}
.auth-visit div{display:flex;flex-direction:column;font-size:.86rem;line-height:1.4}.auth-visit b{font-size:.92rem}.auth-visit span{opacity:.92}
.auth-chips{margin-top:.2rem}.auth-chips span{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.3);color:#fff}
.auth-main{padding:clamp(1.8rem,3.6vw,3rem) clamp(1.4rem,4vw,3.4rem);gap:0}
.auth-main h1{font-size:clamp(2rem,3.4vw,2.7rem)}
.auth-main .sub{font-size:1.02rem;margin-bottom:1.5rem}
.auth-main .fld{margin-bottom:1.1rem}
.auth-main .fld>label,.auth-main .lbl-row label{font-weight:700;font-size:.86rem;margin-bottom:.35rem}
.auth-main #lg-mail,.auth-main #fg-mail,.auth-main input[type=email],.auth-main .pw input{padding-left:2.9rem;background-repeat:no-repeat;background-position:1rem 50%;background-size:1.15rem}
.auth-main #lg-mail,.auth-main #fg-mail,.auth-main input[type=email]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a7d6a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E")}
.auth-main .pw input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a7d6a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 018 0v4'/%3E%3C/svg%3E")}
.auth-main .btn-xl::after{content:"→";margin-left:.6rem;transition:transform .15s}.auth-main .btn-xl:hover::after{transform:translateX(4px)}
.auth-main .sbtn{font-size:.98rem}
.auth-guest-row{margin-top:1.1rem}
.auth-guest-row .auth-guest{display:block;text-align:center;padding:.8rem 1rem;border-radius:.95rem;border:1.5px dashed var(--line);font-weight:650;text-decoration:none;color:var(--ink2)}
.auth-guest-row .auth-guest:hover{border-color:var(--sun);color:var(--ink);background:color-mix(in srgb,var(--sun) 10%,transparent)}
.auth-note{border-top:0;background:var(--sand);border-radius:.9rem;padding:.8rem 1rem;margin-top:1.1rem}
:root[data-theme="dark"] .auth-visit{background:rgba(0,0,0,.25)}
@media (max-width:860px){
  .auth-side{padding:1.1rem 1.2rem 1.2rem;background-size:26px 26px,auto,auto,auto}
  .auth-visit,.auth-chips{display:none}
  .auth-pics{height:4.8rem}
  .auth-main{padding:1.4rem 1.2rem 1.8rem}
}

/* top bar: tagline and social links on the left (as on the old shop), shipping note in the middle, account and language on the right */
.topbar .wrap{align-items:center}
.tb-l{display:flex;align-items:center;gap:.55rem;margin:0}.tb-pin{color:#ffc65c;flex:none}.tb-tag{font-weight:650;letter-spacing:.01em}
.tb-soc{display:inline-flex;gap:.1rem;margin-left:.35rem}.tb-soc a{display:inline-grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;color:rgba(246,236,219,.85);text-decoration:none}.tb-soc a:hover{background:rgba(255,255,255,.14);color:#fff}
.tb-m{margin:0;opacity:.92}
.tb-r a:not(.lang){text-decoration:none}.tb-r a:not(.lang):hover{text-decoration:underline}
@media (max-width:1000px){.tb-m{display:none}}
@media (max-width:640px){.tb-l{justify-content:center;width:100%}.tb-soc{display:none}.tb-m{display:block}.tb-tag{display:none}.tb-l .tb-pin{display:none}.tb-r{display:none}.topbar .wrap{justify-content:center}.tb-l{width:auto}}

/* WhatsApp group invitation */
.wa-join{display:flex;align-items:center;gap:1.1rem;padding:1.1rem 1.4rem;border-radius:1.4rem;color:#fff;background:linear-gradient(110deg,#128c4a,#25d366 70%,#4fe08a);box-shadow:0 20px 34px -22px rgba(18,140,74,.8)}
.wa-ic{flex:none;width:3.4rem;height:3.4rem;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2)}
.wa-t{flex:1;display:flex;flex-direction:column;gap:.1rem;min-width:0}.wa-t b{font:600 1.35rem/1.15 var(--serif)}.wa-t span{opacity:.95}.wa-t small{opacity:.8;font-size:.76rem}
.wa-btn{flex:none;background:#fff;color:#0b6b36;font-weight:800;text-decoration:none;padding:.8rem 1.3rem;border-radius:99px;box-shadow:0 8px 16px -10px rgba(0,0,0,.5);white-space:nowrap}
.wa-btn:hover{transform:translateY(-1px)}
.fwa{padding-bottom:1.4rem}.fwa:empty{display:none}.wa-wrap{margin:1.2rem 0}.wa-wrap:empty{display:none}
@media (max-width:700px){.wa-join{flex-wrap:wrap}.wa-btn{width:100%;text-align:center}}

/* phones: the sign-in card is ONE column (this must come after the desktop card rules above) */
@media (max-width:860px){
  .auth-card{grid-template-columns:minmax(0,1fr);border-radius:1.4rem;max-width:560px}
  .auth-side{padding:1.1rem 1.2rem 1.2rem}
  .auth-side h2{font-size:1.45rem;flex:1 1 55%}
  .auth-pics{height:4.6rem}
  .auth-perks,.auth-chips,.auth-visit{display:none}
  .auth-main{padding:1.3rem 1.1rem 1.8rem}
  .auth-main h1{font-size:1.8rem}
  .lbl-row{flex-wrap:wrap}
}
@media (max-width:420px){.auth{padding-inline:0}.wrap.auth{padding-inline:.6rem}.auth-card{border-radius:1.2rem}.auth-badge img{height:38px}}

/* arrows on sideways product rows */
.rail-wrap{position:relative}
.rail-btn{position:absolute;top:42%;z-index:6;width:2.9rem;height:2.9rem;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 10px 22px -10px rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:opacity .15s,transform .15s}
.rail-prev{left:.4rem}.rail-next{right:.4rem}
.rail-wrap.can-scroll .rail-btn{opacity:1;pointer-events:auto}
.rail-btn:hover:not(:disabled){background:var(--ink);color:var(--card);transform:scale(1.06)}
.rail-btn:disabled{opacity:.0!important;pointer-events:none}
.rail-wrap.can-scroll:not(:hover):not(:focus-within) .rail-btn:not(:disabled){opacity:.92}
@media (hover:none) and (pointer:coarse){.rail-btn{display:none}}
.deals .rail-btn{border-color:transparent}

:root[data-theme="dark"] .pc-deal .pprice strong{color:#ff8f7e}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pc-deal .pprice strong{color:#ff8f7e}}

/* order summary rows: discounts in green (the row class used to be "disc", which is the round department picture) */
.sum .drow dt,.sum .drow dd{color:var(--ok-ink)}
.ol a{text-decoration:none;font-weight:650;color:var(--ink)}.ol a:hover{text-decoration:underline}
.ol li{padding-bottom:.8rem;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.ol li:last-child{border-bottom:0}
.oactions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.2rem 0 .4rem}.oactions form{margin:0}.oactions .btn{min-height:2.9rem;padding-inline:1.3rem;display:inline-flex;align-items:center}
.accmain .cbox>p{margin:.4rem 0}
.accmain .track a,.accmain .cbox p a{font-weight:650}

/* dark theme, part three: "ink" is light in dark mode, so what sits on an ink-coloured surface must be dark; and every toggle-dark rule needs its system-dark twin */
:root[data-theme="dark"]{--on-ink:#1d1914}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){--on-ink:#1d1914}
  :root:not([data-theme="light"]) .auth-card{border-color:#54483a}
  :root:not([data-theme="light"]) .auth-main .fld input:focus{background:#50463a}
  :root:not([data-theme="light"]) .auth-visit{background:rgba(0,0,0,.25)}
  :root:not([data-theme="light"]) .gal-main{border-color:#6a5c4b}
  :root:not([data-theme="light"]) .sc-band .sh h2{color:var(--ink)}
}
/* the search button: a light disc in dark mode needs a dark magnifier */
:root[data-theme="dark"] .search button,:root[data-theme="dark"] .pager a[aria-current]{color:var(--on-ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .search button,:root:not([data-theme="light"]) .pager a[aria-current]{color:var(--on-ink)}}
/* language switch with flags (SVG, so they also show on Windows where flag emoji do not) */
.lang{display:inline-flex;align-items:center;gap:.35rem}
.lang::before{content:"";width:1.15rem;height:.8rem;border-radius:2px;background:center/cover no-repeat;box-shadow:0 0 0 1px rgba(0,0,0,.25);flex:none}
.lang[data-lang=de]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 3'%3E%3Crect width='5' height='3' fill='%23ffce00'/%3E%3Crect width='5' height='2' fill='%23d00'/%3E%3Crect width='5' height='1'/%3E%3C/svg%3E")}
.lang[data-lang=en]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3CclipPath id='c'%3E%3Cpath d='M30 15h30v15zv15H0zH0V0zV0h30z'/%3E%3C/clipPath%3E%3Cpath d='M0 0v30h60V0z' fill='%23012169'/%3E%3Cpath d='M0 0l60 30m0-30L0 30' stroke='%23fff' stroke-width='6'/%3E%3Cpath d='M0 0l60 30m0-30L0 30' clip-path='url(%23c)' stroke='%23C8102E' stroke-width='4'/%3E%3Cpath d='M30 0v30M0 15h60' stroke='%23fff' stroke-width='10'/%3E%3Cpath d='M30 0v30M0 15h60' stroke='%23C8102E' stroke-width='6'/%3E%3C/svg%3E")}
.padd.wa-order,a.btn.wa-order{background:#1f7a3e;color:#fff;border-color:#1f7a3e;text-align:center;text-decoration:none;display:block}

/* food information */
.food h3{margin:1rem 0 .3rem;font-size:1rem}.food .al{margin:.3rem 0}
.nut{border-collapse:collapse;max-width:420px;width:100%}.nut th,.nut td{padding:.3rem .5rem;border-bottom:1px solid var(--line,#ddd);text-align:left;font-weight:500}.nut td{text-align:right;font-variant-numeric:tabular-nums}.nut .sub th{padding-left:1.4rem;font-weight:400;opacity:.85}
.ns{display:inline-grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:.4rem;color:#fff;font-weight:800;margin-left:.4rem}
.ns-A{background:#038141}.ns-B{background:#85bb2f}.ns-C{background:#c9a200;color:#1d1914}.ns-D{background:#e67e22}.ns-E{background:#e63e11}

/* departments menu: grouped, with icons, without counts */
.mgroups{display:grid;gap:1rem;max-height:min(70vh,640px);overflow:auto;padding-right:.4rem}
.mgroup h3{margin:0 0 .3rem;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mgroup .mcols{grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0;gap:.1rem 1rem}
.mcols li{display:flex;flex-direction:column;padding:.35rem .5rem;border-radius:.7rem}
.mcols li:hover{background:var(--sand)}
.mcols a.mdept{flex-direction:row;align-items:center;gap:.6rem;padding:.2rem 0}.mcols a.mdept:hover{background:none}
.mi{width:1.5rem;height:1.5rem;flex:none;fill:none;stroke:var(--leaf,#1f7a3e);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mn{font-weight:650}
.msubs{display:flex;flex-wrap:wrap;gap:.1rem .7rem;padding-left:2.1rem}.msubs a{padding:0;font-size:.82rem;color:var(--muted);text-decoration:none;display:inline}.msubs a:hover{color:var(--ink);text-decoration:underline;background:none}
.drawer .mi{width:1.3rem;height:1.3rem;margin-right:.6rem;vertical-align:-.3rem}
.drawer .dr-gt{margin:.9rem 0 .2rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:0}
@media (max-width:1100px){.mgroup .mcols{grid-template-columns:repeat(2,1fr)}}

/* ===================================================================================================================
   Design system v2: one set of sizes, radii and weights for every control and surface (it overrides the older rules above).
   Controls: radius 12px; heights 36 / 44 / 52. Surfaces (cards, panels): radius 16px, 1px line, no heavy shadow. Pills are for
   chips and badges only. Section titles use the serif, everything else the sans.
   =================================================================================================================== */
:root{--r-ctl:12px;--r-card:16px;--h-sm:36px;--h-md:44px;--h-lg:52px;--bw:1.5px}
/* buttons */
.btn{min-height:var(--h-lg);padding:0 1.4rem;border-radius:var(--r-ctl);border-width:var(--bw);font-size:.95rem;font-weight:700;line-height:1;letter-spacing:0}
.btn-xl{min-height:var(--h-lg);padding:0 1.6rem;font-size:1rem}
.btn-s,.btn.sm{min-height:var(--h-sm);padding:0 .9rem;font-size:.85rem}
.btn-line-d,.btn-dark{border-width:var(--bw)}
.padd{min-height:var(--h-md);padding:0 .9rem;border-radius:var(--r-ctl);font-size:.92rem;line-height:1}
.padd.ghost{background:none;color:var(--ink);border:var(--bw) solid var(--line)}
.padd.ghost:hover{border-color:var(--ink)}
/* pagination, load more, quantity */
.pager a,.pager span{min-width:var(--h-md);height:var(--h-md);border-radius:var(--r-ctl);border-width:var(--bw)}
.pager a.next,.pager a.prev{padding-inline:1rem}
.loadmore{margin:1.6rem 0 .6rem;text-align:center}
.qty{border-radius:var(--r-ctl);border-width:var(--bw);min-height:var(--h-lg)}
.qty button{height:calc(var(--h-lg) - 3px)}
/* form fields */
.fld input,.fld select,.fld textarea,.filters input,.filters select,.osearch input,.sorter select,.search input{border-radius:var(--r-ctl);border-width:var(--bw);min-height:var(--h-md)}
.fld input,.fld select{min-height:var(--h-lg)}
.fld textarea{padding:.8rem .9rem;border:var(--bw) solid var(--line);background:var(--bg);color:var(--ink);font:inherit;width:100%}
.fld textarea:focus{outline:0;border-color:var(--ink);background:var(--card)}
/* surfaces */
.pc,.cbox,.bundle,.filters,.gal-main,.marketbox,.revform,.reviews .revlist li,.cta-card,.auth-card{border-radius:var(--r-card)}
.cbox{padding:1.4rem}
.filters{border-radius:var(--r-card)}
/* chips and badges stay pills */
.chips a,.chip,.pill,.bdg{border-radius:999px}
/* headings */
h1,.pg-h{font-family:var(--serif);font-weight:600;letter-spacing:-.02em}
.sh h2,.sec>h2,.reviews h2{font-family:var(--serif);font-weight:600;letter-spacing:-.015em}
h3,h4{font-family:var(--sans);font-weight:700}
/* section links ("All offers →") look like links everywhere */
.sa{font-weight:700;font-size:.92rem;text-decoration:none;color:var(--ink)}
.sa:hover{text-decoration:underline}
/* round icon buttons: one size */
.rail-btn,.sl-btn{width:44px;height:44px}

/* ===== Product page v2: one calm buy box, then readable sections ===== */
.pdp{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1.5rem,4vw,3.5rem)}
.buybox{display:flex;flex-direction:column;gap:.75rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:clamp(1.1rem,2.2vw,1.8rem)}
.buybox .brandline{margin:0;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.buybox .brandline a{color:var(--muted);font-weight:700}
.buybox h1{font-size:clamp(1.55rem,2.3vw,2.1rem);line-height:1.15;margin:0}
.buybox .subtitle{margin:0;color:var(--muted);font-size:.95rem}
.buybox .rate{margin:0}
.pd-price{display:flex;align-items:baseline;gap:.9rem;flex-wrap:wrap;margin-top:.4rem}
.pd-now{font-size:clamp(2.1rem,3.6vw,2.7rem);font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;margin:0}
.pd-was{display:flex;align-items:center;gap:.6rem;margin:0;color:var(--muted)}
.pd-was s{font-size:1.05rem}
.pd-save{background:var(--bad-bg);color:var(--bad-ink);font-weight:700;font-size:.82rem;padding:.2rem .6rem;border-radius:999px}
.pd-unit{margin:-.35rem 0 0;color:var(--muted);font-size:.88rem}
.pd-ref{margin:-.4rem 0 0;color:var(--muted);font-size:.8rem}
.pd-avail{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.2rem 0 0;font-size:.95rem;color:var(--ink2,var(--ink))}
.pd-avail b{color:var(--leaf-t)}.pd-avail.low b{color:#b45309}.pd-avail.out b{color:var(--bad-ink)}
.pd-avail .dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--leaf)}.pd-avail.low .dot{background:#d97706}.pd-avail.out .dot{background:var(--red,#c0281c)}
.pd-avail span:not(.dot){color:var(--muted)}.pd-avail span:not(.dot)::before{content:"·";margin-right:.5rem}
.buybox .buyrow{display:flex;gap:.7rem;margin:0}
.buybox .buyrow .padd{flex:1;margin:0;min-height:var(--h-lg);width:auto;font-size:1rem}
.pd-ship{border:1px solid var(--line);border-radius:var(--r-ctl);padding:.2rem 1rem;background:var(--bg)}
.pd-ship ul{display:grid;gap:0}
.pd-ship li{display:flex;gap:.7rem;align-items:flex-start;padding:.7rem 0;font-size:.9rem;border-bottom:1px solid var(--line)}
.pd-ship li:last-child{border-bottom:0}
.pd-ship li.warn{color:#92400e}
.pd-ship .meter{margin:0;border:0;background:none;padding:.2rem 0 .8rem;font-size:.88rem}
.pd-ship ul:empty{display:none}
.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:.1rem}
.pd-perks{display:flex;flex-wrap:wrap;gap:.5rem 1.3rem;font-size:.86rem;color:var(--muted)}
.pd-perks li{display:flex;gap:.45rem;align-items:center}.pd-perks .ic{width:18px;height:18px;margin:0;color:var(--leaf-t)}
.pd-tools{display:flex;gap:.4rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:.8rem}
.pd-tool{display:inline-flex;align-items:center;gap:.4rem;min-height:var(--h-sm);padding:0 .8rem;border:var(--bw) solid var(--line);border-radius:var(--r-ctl);background:none;color:var(--ink);font:600 .85rem var(--sans);text-decoration:none;cursor:pointer}
.pd-tool:hover{border-color:var(--ink)}.pd-tool .ic{width:17px;height:17px;margin:0}
.pd-tool.on{color:var(--red,#c0281c);border-color:currentColor}.pd-tool.on .ic{fill:currentColor}
/* sections */
.pd-nav{position:sticky;top:7.4rem;z-index:20;display:flex;gap:.3rem;overflow-x:auto;background:var(--bg);border-bottom:1px solid var(--line);margin:1.6rem 0 0;padding:.5rem 0;scrollbar-width:none}
.pd-nav a{flex:none;padding:.5rem .95rem;border-radius:999px;color:var(--muted);font-weight:650;font-size:.92rem;text-decoration:none}
.pd-nav a:hover{background:var(--chip);color:var(--ink)}
.pd-body{display:grid;gap:0;max-width:60rem}
.pd-sec{padding:2rem 0;border-bottom:1px solid var(--line);scroll-margin-top:11rem}
.pd-sec:last-child{border-bottom:0}
.pd-sec h2{font-size:1.5rem;margin:0 0 1rem}
.prose{max-width:68ch;font-size:1.02rem;line-height:1.75;color:var(--ink2,var(--ink))}
.prose p{margin:0 0 1.1rem}.prose p.lead{font-size:1.12rem;line-height:1.65;color:var(--ink)}
.prose strong{color:var(--ink)}
.prose ul,.prose ol{padding-left:1.3rem;margin:0 0 1.1rem;list-style:revert}.prose li{margin:.3rem 0}
.pd-sec .spec{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:0 2.5rem}
.pd-sec .spec div{padding:.65rem 0}
.food h3{margin:1.2rem 0 .4rem}.food h3:first-child{margin-top:0}
.reviews{max-width:60rem;padding:2rem 0}
@media (max-width:900px){.pdp{grid-template-columns:1fr}.gal{position:static}.pd-nav{top:3.4rem}.buybox{padding:1.1rem}}
.prose p.lead{font-size:1.06rem;line-height:1.75;color:inherit}
.buybox{position:sticky;top:9.5rem}
@media (max-width:900px){.buybox{position:static}}

/* ===== Departments menu v2: list on the left, the hovered department opens on the right ===== */
.mega{grid-template-columns:19rem 1fr 15rem;gap:0 1.4rem;padding:0;overflow:hidden;position:absolute}
.mnav{grid-column:1;max-height:min(72vh,620px);overflow:auto;padding:1rem .7rem 1rem 1rem;border-right:1px solid var(--line);background:var(--bg)}
.mgt{margin:.9rem .6rem .3rem;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.mgt:first-child{margin-top:0}
.mlist{list-style:none;margin:0;padding:0}
.mlist>li{position:static;padding:0;border-radius:0;display:block}.mlist>li:hover{background:none}
.mdept{display:flex;align-items:center;gap:.7rem;padding:.55rem .6rem;border-radius:10px;text-decoration:none;color:var(--ink)}
.mdept .mn{flex:1;font-weight:650}.mchev{width:16px;height:16px;fill:none;stroke:var(--muted);stroke-width:2;opacity:0;transition:opacity .12s}
.mlist>li:hover>.mdept,.mlist>li:focus-within>.mdept{background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.mlist>li:hover .mchev,.mlist>li:focus-within .mchev{opacity:1}
.mpanel{display:none;position:absolute;left:19rem;top:0;bottom:0;width:calc(100% - 19rem - 16.4rem);padding:1.6rem 1.2rem 1.4rem 1.4rem;overflow:auto}
.mlist>li:hover>.mpanel,.mlist>li:focus-within>.mpanel{display:block}
.mega:not(:has(.mlist>li:hover,.mlist>li:focus-within)) .mnav>.mlist:first-of-type>li:first-child>.mpanel{display:block}
.mph{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.2rem}
.mph h3{font:600 1.5rem var(--serif);margin:0 0 .25rem}.mph p{margin:0;color:var(--muted);font-size:.9rem;max-width:40ch}
.mi.big{width:2.4rem;height:2.4rem;padding:.5rem;background:var(--ok-bg);border-radius:12px;box-sizing:content-box}
.msubs2{list-style:none;margin:0 0 1.2rem;padding:0;columns:2;column-gap:2rem}
.msubs2 li{break-inside:avoid;padding:0}.msubs2 a{display:block;padding:.4rem 0;color:var(--ink);text-decoration:none;font-weight:550;border-bottom:1px solid var(--line)}.msubs2 a:hover{color:var(--leaf-t)}
.mega .mpromo{grid-column:3;margin:1.2rem 1.2rem 1.2rem 0;align-self:stretch}
@media (max-width:1100px){.mega{grid-template-columns:17rem 1fr}.mpanel{left:17rem;width:calc(100% - 17rem)}.mega .mpromo{display:none}}

/* grid density switch (desktop only; phones keep two columns) */
.density{display:none;align-items:center;gap:.3rem;margin-left:auto;margin-right:1rem}
.density span{color:var(--muted);font-size:.9rem;margin-right:.3rem}
.density button{display:inline-flex;align-items:center;gap:.35rem;min-height:var(--h-sm);padding:0 .7rem;border:var(--bw) solid var(--line);border-radius:var(--r-ctl);background:none;color:var(--ink);font:650 .85rem var(--sans);cursor:pointer}
.density button svg{width:18px;height:18px;fill:currentColor;opacity:.75}
.density button[aria-pressed=true]{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}
@media (min-width:1151px){.density{display:flex}.cat .pgrid[data-cols="4"]{grid-template-columns:repeat(4,1fr);gap:.8rem}.cat .pgrid[data-cols="4"] .pbody{padding:.2rem .7rem .8rem}.cat .pgrid[data-cols="4"] .pprice strong{font-size:1.2rem}}
.tools{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 0}
/* every product picture sits the same way: whole picture visible on white, same breathing room */
.pimg{background:#fff}
:root[data-theme="dark"] .pimg{background:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pimg{background:#fff}}
.cat-head h1,.pg-h{font-size:clamp(1.9rem,3vw,2.5rem)}

/* menu: deals under each department, offers column on the right (no empty space) */
.mdh{margin:1.4rem 0 .6rem;font:700 .8rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mdl{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.mdl li{padding:0}.mdl a{display:flex;gap:.7rem;align-items:center;padding:.5rem;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--card);text-decoration:none;color:var(--ink)}
.mdl a:hover{border-color:var(--ink)}
.mdl img,.mdl .noimg{width:56px;height:56px;object-fit:contain;flex:none;background:#fff;border-radius:8px}
.mdi{display:flex;flex-direction:column;gap:.15rem;min-width:0}.mdi b{font-size:.86rem;font-weight:650;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mdp{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.mdp strong{font-size:.95rem}.mdp s{font-size:.78rem;color:var(--muted)}.mdp em{font-style:normal;font-size:.72rem;font-weight:800;color:#fff;background:var(--red,#c0281c);padding:.05rem .4rem;border-radius:99px}
.mega .mpromo{display:flex;flex-direction:column;gap:.5rem;background:linear-gradient(170deg,var(--sun,#f6a30f),#e68a0a);color:#1d1914;border-radius:var(--r-card);padding:1.1rem;margin:1.2rem 1.2rem 1.2rem 0;min-height:0;overflow:auto}
.mega .mpromo .mdl{grid-template-columns:1fr;margin:.3rem 0}.mega .mpromo .mdl a{background:rgba(255,255,255,.92);color:#1d1914}
.mega .mpromo .mp-t{font:800 .75rem var(--sans);letter-spacing:.09em;text-transform:uppercase}
.mega .mpromo strong:first-of-type{font:650 1.5rem/1.1 var(--serif)}
.mega .mpromo .btn{background:#1d1914;border-color:#1d1914;color:#fff;margin-top:auto}
.padd.wa-order,a.btn.wa-order{display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.15;padding-block:.6rem}
.mega .mpromo .mp-h{font:650 1.5rem/1.1 var(--serif)}
.mega .mpromo strong:first-of-type{font:inherit}
.mega .mpromo img{position:static;rotate:none;mix-blend-mode:normal;width:56px;right:auto;top:auto}
