/* F&F Perfume 3.0 – iOS 26 "Liquid Glass" storefront. One stylesheet for the whole theme. */

html{direction:rtl}
/* Layout: iOS 26 app shell. Grouped content scrolls under floating Liquid Glass chrome;
   tab bar floats at the bottom on phones and moves to the top on wide screens (iPadOS);
   product grid runs 2 → 3 → 4 → 5 columns as width grows. */
:root{
  --bg:#f2f2f7;            /* systemGroupedBackground */
  --surface:#ffffff;       /* secondarySystemGroupedBackground */
  --surface2:#f7f7f9;
  --fill:rgba(118,118,128,.12);
  --fill2:rgba(118,118,128,.22);
  --label:#0b0b0d;
  --label2:rgba(60,60,67,.66);
  --label3:rgba(60,60,67,.34);
  --sep:rgba(60,60,67,.17);
  --tint:#94702f;          /* F&F gold, deepened for contrast on white */
  --tint-soft:rgba(176,138,72,.13);
  --ink:#0b0b0d; --ink-fg:#ffffff;
  --thumb:#ffffff;
  --tile:#f4f4f6;
  --ok:#248a3d; --bad:#d70015;
  --on-img:#ffffff;
  --glass:rgba(255,255,255,.56);
  --glass-hi:rgba(255,255,255,.80);
  --sheet:rgba(250,250,252,.86);
  --rim-a:rgba(255,255,255,.95); --rim-b:rgba(255,255,255,.18); --rim-c:rgba(255,255,255,.70);
  --glass-shadow:0 10px 30px rgba(15,15,25,.12),0 1px 3px rgba(15,15,25,.08),inset 0 0 0 .5px rgba(0,0,0,.05);
  --card-shadow:0 1px 2px rgba(15,15,25,.04);
  --scrim:rgba(10,10,14,.32);
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Arabic","IBM Plex Sans Arabic","Segoe UI",Roboto,system-ui,sans-serif;
  --font-d:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Arabic","IBM Plex Sans Arabic","Segoe UI",Roboto,system-ui,sans-serif;
  --g:16px; --cols:2; --r-card:22px; --r-big:28px;
  --spring:cubic-bezier(.2,.9,.25,1.12); --ease:cubic-bezier(.2,.85,.25,1);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#000000; --surface:#1c1c1e; --surface2:#242426;
  --fill:rgba(118,118,128,.24); --fill2:rgba(118,118,128,.36);
  --label:#ffffff; --label2:rgba(235,235,245,.64); --label3:rgba(235,235,245,.30); --sep:rgba(84,84,88,.55);
  --tint:#d8b46e; --tint-soft:rgba(216,180,110,.15);
  --ink:#f5f5f7; --ink-fg:#000000; --thumb:#636366; --tile:#d6d6db;
  --ok:#30d158; --bad:#ff453a;
  --glass:rgba(40,40,44,.52); --glass-hi:rgba(70,70,76,.62); --sheet:rgba(28,28,30,.88);
  --rim-a:rgba(255,255,255,.34); --rim-b:rgba(255,255,255,.04); --rim-c:rgba(255,255,255,.16);
  --glass-shadow:0 10px 30px rgba(0,0,0,.5),0 1px 3px rgba(0,0,0,.4),inset 0 0 0 .5px rgba(255,255,255,.07);
  --card-shadow:none; --scrim:rgba(0,0,0,.5);
  color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#000000; --surface:#1c1c1e; --surface2:#242426;
  --fill:rgba(118,118,128,.24); --fill2:rgba(118,118,128,.36);
  --label:#ffffff; --label2:rgba(235,235,245,.64); --label3:rgba(235,235,245,.30); --sep:rgba(84,84,88,.55);
  --tint:#d8b46e; --tint-soft:rgba(216,180,110,.15);
  --ink:#f5f5f7; --ink-fg:#000000; --thumb:#636366; --tile:#d6d6db;
  --ok:#30d158; --bad:#ff453a;
  --glass:rgba(40,40,44,.52); --glass-hi:rgba(70,70,76,.62); --sheet:rgba(28,28,30,.88);
  --rim-a:rgba(255,255,255,.34); --rim-b:rgba(255,255,255,.04); --rim-c:rgba(255,255,255,.16);
  --glass-shadow:0 10px 30px rgba(0,0,0,.5),0 1px 3px rgba(0,0,0,.4),inset 0 0 0 .5px rgba(255,255,255,.07);
  --card-shadow:none; --scrim:rgba(0,0,0,.5);
  color-scheme:dark}
@media (min-width:600px){:root{--cols:3;--g:24px}}
@media (min-width:900px){:root{--cols:4;--g:32px}}
@media (min-width:1220px){:root{--cols:5}}

*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--label);font:400 17px/1.5 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;min-height:100vh;overflow-x:hidden;text-rendering:optimizeLegibility}
button,input,textarea,select{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4,p{margin:0}
[tabindex="-1"]:focus{outline:none}
:focus-visible{outline:3px solid color-mix(in srgb,var(--tint) 70%,transparent);outline-offset:2px;border-radius:12px}
.i{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.latin{font-family:var(--font-d);letter-spacing:.14em;font-size:11.5px;font-weight:600;text-transform:uppercase;direction:ltr;unicode-bidi:isolate}
bdi.pr{font-variant-numeric:tabular-nums;white-space:nowrap}
bdi.pr small{font-size:.72em;font-weight:600;color:var(--label2)}

/* ── Liquid Glass ─────────────────────────────────────────── */
.lg{position:relative;background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(190%);backdrop-filter:blur(22px) saturate(190%);box-shadow:var(--glass-shadow);isolation:isolate}
.lg::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(155deg,var(--rim-a),var(--rim-b) 36%,var(--rim-b) 64%,var(--rim-c));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.ib{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--label);transition:transform .25s var(--spring),background .2s}
.ib:active,.lgb:active{transform:scale(1.08);background:var(--glass-hi)}
.ib .i{width:21px;height:21px}
.bag{position:relative}
.badge{position:absolute;top:-3px;left:-3px;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--tint);color:#fff;font-size:12px;font-weight:700;line-height:20px;text-align:center;font-variant-numeric:tabular-nums;transform:scale(0);transition:transform .35s var(--spring)}
.badge.on{transform:scale(1)}
.bump{animation:bump .5s var(--spring)}
@keyframes bump{40%{transform:scale(1.18)}}

/* ── Buttons ─────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 22px;border-radius:999px;font-size:17px;font-weight:600;white-space:nowrap;transition:transform .2s var(--spring),opacity .2s,background .2s}
.btn:active{transform:scale(.97)}
.btn .i{width:20px;height:20px}
.btn-ink{background:var(--ink);color:var(--ink-fg)}
.btn-tint{background:var(--tint-soft);color:var(--tint)}
.btn-fill{background:var(--fill);color:var(--label)}
.btn-sm{min-height:36px;padding:0 15px;font-size:15px}
.btn-block{width:100%}
.btn[disabled]{opacity:.4;pointer-events:none}
.lnk{color:var(--tint);font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:2px}
.lnk .i{width:16px;height:16px;stroke-width:2.2}

/* ── App shell ───────────────────────────────────────────── */
.wrap{max-width:1240px;margin-inline:auto;padding-left:max(var(--g),env(safe-area-inset-left,0px));padding-right:max(var(--g),env(safe-area-inset-right,0px));padding-bottom:calc(env(safe-area-inset-bottom,0px) + 120px)}

/* nav bar with scroll-edge effect */
.bar{position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px)}
.bar::before{content:"";position:absolute;inset:0 0 -22px;pointer-events:none;opacity:0;transition:opacity .25s;
  background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 92%,transparent),color-mix(in srgb,var(--bg) 55%,transparent) 62%,transparent);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  -webkit-mask:linear-gradient(to bottom,#000 55%,transparent);mask:linear-gradient(to bottom,#000 55%,transparent)}
body.scrolled .bar::before{opacity:1}
.bar-in{position:relative;max-width:1240px;margin-inline:auto;height:58px;display:flex;align-items:center;gap:10px;padding-left:max(var(--g),env(safe-area-inset-left,0px));padding-right:max(var(--g),env(safe-area-inset-right,0px))}
.bar-t{position:absolute;inset-inline:64px;text-align:center;font-size:17px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .25s var(--ease);pointer-events:none}
body.titled .bar-t{opacity:1;transform:none}
.bar-s{flex:1}
.bar .grp{display:flex;gap:2px;border-radius:999px;padding:0 2px}
.logo{display:block;width:62px;height:40px;background:var(--label);-webkit-mask:url(../img/ff-logo.webp) center/contain no-repeat;mask:url(../img/ff-logo.webp) center/contain no-repeat}
.logo.lg-l{width:86px;height:56px}

/* large title */
.lt{font:700 34px/1.2 var(--font-d);padding-top:4px;text-wrap:balance}
.lt-sub{color:var(--label2);font-size:16px;margin-top:6px;max-width:60ch}
.eyebrow{color:var(--tint)}
.sec{margin-top:36px}
.sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.sec-h h2{font:700 22px/1.3 var(--font-d);text-wrap:balance}
.sec-h p{color:var(--label2);font-size:15px;margin-top:2px}
.sec-h>div{min-width:0}

/* ── Dock (tab bar + bag) ───────────────────────────────── */
.dock{position:fixed;z-index:40;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;gap:10px;pointer-events:none;
  padding-left:max(var(--g),env(safe-area-inset-left,0px));padding-right:max(var(--g),env(safe-area-inset-right,0px));padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px);
  transition:transform .4s var(--ease),opacity .3s}
.dock>*{pointer-events:auto}
.dock.hide{transform:translateY(130%);opacity:0}
.dock.hide>*{pointer-events:none}
.tabbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(100% - 74px,372px);height:64px;padding:4px;border-radius:32px}
.tab{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:28px;font-size:10.5px;font-weight:600;color:var(--label);transition:color .2s}
.tab .i{width:25px;height:25px}
.tab .f{display:none}
.tab[aria-current="page"]{color:var(--tint)}
.tab[aria-current="page"] .o{display:none}
.tab[aria-current="page"] .f{display:block}
.tabpill{position:absolute;z-index:0;top:4px;bottom:4px;right:4px;width:calc((100% - 8px)/4);border-radius:28px;background:var(--fill);transform:translateX(calc(var(--ti,0) * -100%));transition:transform .5s var(--spring)}
.dock .bagbtn{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:var(--label);transition:transform .25s var(--spring)}
.dock .bagbtn .i{width:25px;height:25px}
.dock .bagbtn .badge{top:4px;left:4px}
@media (min-width:820px){
  .dock{bottom:auto;top:0;padding-bottom:0;padding-top:calc(env(safe-area-inset-top,0px) + 7px)}
  .dock.hide{transform:translateY(-130%)}
  .tabbar{height:46px;width:auto;grid-template-columns:repeat(4,auto);border-radius:23px}
  .tab{flex-direction:row;gap:7px;font-size:14.5px;padding:0 18px;border-radius:20px}
  .tab .i{width:20px;height:20px}
  .tabpill{display:none}
  .tab[aria-current="page"]{background:var(--fill)}
  .dock .bagbtn{width:46px;height:46px}
  .dock .bagbtn .i{width:21px;height:21px}
  .dock .bagbtn .badge{top:-4px;left:-4px}
  .bar .bar-t{display:none}
}

/* ── Segmented control & chips ───────────────────────────── */
.seg{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);padding:3px;border-radius:999px;background:var(--fill);isolation:isolate}
.seg button{position:relative;z-index:1;height:34px;padding:0 10px;border-radius:999px;font-size:14px;font-weight:600;white-space:nowrap;color:var(--label);transition:color .2s}
.seg .thumb{position:absolute;z-index:0;top:3px;bottom:3px;right:0;width:var(--w,0);border-radius:999px;background:var(--thumb);box-shadow:0 3px 8px rgba(0,0,0,.12),0 0 0 .5px rgba(0,0,0,.04);transform:translateX(var(--x,0));transition:transform .45s var(--spring),width .3s var(--ease)}
.seg.init .thumb{transition:none}
@media (max-width:370px){.seg button{padding:0 4px;font-size:13px}}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--g));padding:2px var(--g);scroll-padding-inline:var(--g)}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 15px;border-radius:999px;background:var(--fill);font-size:14.5px;font-weight:600;white-space:nowrap;transition:background .2s,color .2s,transform .2s var(--spring)}
.chip:active{transform:scale(.95)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--ink-fg)}
.chip .n{font-weight:500;opacity:.6;font-variant-numeric:tabular-nums}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:999px;background:var(--fill);font-size:13px;font-weight:600;color:var(--label)}
.tag.t{background:var(--tint-soft);color:var(--tint)}

/* ── Product cards ───────────────────────────────────────── */
.grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:12px}
@media (min-width:600px){.grid{gap:16px}}
.pc{display:flex;flex-direction:column;min-width:0;background:var(--surface);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--card-shadow);transition:transform .25s var(--spring)}
.pc:has(.pc-img:active){transform:scale(.98)}
.pc-img{position:relative;display:block;aspect-ratio:1;background:var(--tile);overflow:hidden}
.pc-img img,.tl img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pc-b{flex:1;display:flex;flex-direction:column;gap:1px;padding:10px 12px 12px;min-width:0}
.pc-k{font-size:12px;font-weight:500;color:var(--label2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-t{font-size:16px;font-weight:700;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.pc-s{font-size:13px;color:var(--label2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-f{margin-top:auto;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:6px}
.pc-p{font-size:16px;font-weight:700;min-width:0}
.add{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--ink-fg);transition:transform .3s var(--spring),background .2s}
.add .i{width:18px;height:18px;stroke-width:2.4}
.add:active{transform:scale(.88)}
.add.done{background:var(--ok);color:#fff}
.add[disabled]{background:var(--fill);color:var(--label3)}
.flag{position:absolute;top:8px;right:8px;z-index:1;height:24px;padding:0 9px;border-radius:12px;font-size:11.5px;font-weight:700;line-height:24px;background:var(--ink);color:var(--ink-fg)}
.flag.mute{background:rgba(118,118,128,.85);color:#fff}
@media (max-width:359px){.pc-b{padding:9px 10px 10px}.add{width:30px;height:30px}.pc-p{font-size:15px}}
.shelf{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,44%);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(-1 * var(--g));padding:2px var(--g) 4px;scroll-padding-inline:var(--g)}
.shelf::-webkit-scrollbar{display:none}
.shelf>*{scroll-snap-align:start}
@media (min-width:600px){.shelf{grid-auto-columns:minmax(180px,28%)}}
@media (min-width:900px){.shelf{grid-auto-columns:calc((100% - 4 * 16px - 2 * var(--g)) / 5);gap:16px}}

/* ── Grouped lists ───────────────────────────────────────── */
.group{background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
.gh{font-size:13px;font-weight:600;color:var(--label2);padding:0 18px 7px}
.gf{font-size:13px;color:var(--label2);padding:7px 18px 0;line-height:1.6}
.row{position:relative;display:flex;align-items:center;gap:12px;min-height:52px;padding:11px 18px;width:100%;text-align:start}
.row+.row::before,.row+details::before,details+details::before,details+.row::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.row.ic+.row::before,.row+.row.ic::before{right:58px}
.row .ico{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--tint-soft);color:var(--tint)}
.row .ico .i{width:18px;height:18px}
.row .k{flex:none;color:var(--label);font-size:16px}
.row .v{flex:1;min-width:0;text-align:end;color:var(--label2);font-size:15.5px;overflow-wrap:anywhere}
.row .col{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.row .col b{font-weight:600;font-size:16px}
.row .col small{color:var(--label2);font-size:13.5px;line-height:1.5}
.row .chev{color:var(--label3);width:16px;height:16px;stroke-width:2.4}
button.row,a.row{transition:background .15s}
button.row:active,a.row:active{background:var(--fill)}
.meter{display:inline-grid;grid-template-columns:repeat(3,16px);gap:3px;vertical-align:middle;margin-inline-start:8px}
.meter i{height:6px;border-radius:3px;background:var(--fill2)}
.meter i.on{background:var(--tint)}

/* ── Forms ───────────────────────────────────────────────── */
.fld{position:relative;display:flex;align-items:center;gap:12px;min-height:54px;padding:6px 18px}
.fld+.fld::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.fld label{flex:none;width:112px;font-size:16px}
.fld label em{font-style:normal;color:var(--label3);font-size:13px}
.fld input,.fld textarea{width:0}
.fld input,.fld textarea,.search input{flex:1;min-width:0;border:0;background:transparent;outline:0;font-size:16px;padding:8px 0;color:var(--label)}
.fld textarea{resize:none;min-height:64px;line-height:1.6}
.fld input::placeholder,.fld textarea::placeholder,.search input::placeholder{color:var(--label3)}
.fld.err{background:color-mix(in srgb,var(--bad) 7%,transparent)}
.ferr{color:var(--bad);font-size:13.5px;padding:6px 18px 0;line-height:1.5}
.fld .static{flex:1;color:var(--label2)}
@media (max-width:380px){.fld{flex-direction:column;align-items:stretch;gap:0;padding-block:10px}.fld label{width:auto;font-size:13px;color:var(--label2)}}
.search input{width:0}
.search{min-width:0;display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border-radius:22px;background:var(--fill);color:var(--label2)}
.search .i{width:19px;height:19px}
.search input{color:var(--label)}
.search .clr{display:none;width:22px;height:22px;border-radius:50%;background:var(--label3);color:var(--bg);place-items:center}
.search .clr .i{width:12px;height:12px;stroke-width:3}
.search.has .clr{display:grid}

/* ── Sheet, menu, toast ──────────────────────────────────── */
.scrim{position:fixed;inset:0;z-index:60;background:var(--scrim);opacity:0;transition:opacity .3s}
.scrim.on{opacity:1}
.sheet{position:fixed;z-index:61;left:8px;right:8px;bottom:8px;margin-inline:auto;max-width:560px;max-height:calc(100% - env(safe-area-inset-top,0px) - 30px);display:flex;flex-direction:column;border-radius:36px;
  background:var(--sheet);-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);box-shadow:0 20px 60px rgba(0,0,0,.25),inset 0 0 0 .5px var(--rim-c);
  transform:translateY(calc(100% + 20px));transition:transform .5s var(--ease);padding-bottom:env(safe-area-inset-bottom,0px)}
.sheet.on{transform:none}
.sheet.drag{transition:none}
.sh-h{flex:none;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;padding:6px 14px 6px;touch-action:none;cursor:grab}
.grab{grid-column:1/-1;justify-self:center;width:38px;height:5px;border-radius:3px;background:var(--label3);margin-bottom:4px}
.sh-h h2{text-align:center;font-size:17px;font-weight:600}
.sh-h .ib{background:var(--fill)}
.sh-b{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:6px 16px 12px}
.sh-f{flex:none;padding:12px 16px 14px;border-top:.5px solid var(--sep)}
@media (min-width:820px){
  .sheet{left:50%;right:auto;bottom:auto;top:50%;width:540px;max-height:min(780px,88%);transform:translate(-50%,-46%) scale(.97);opacity:0;transition:transform .45s var(--ease),opacity .25s}
  .sheet.on{transform:translate(-50%,-50%);opacity:1}
  .grab{display:none}
}
.menu{position:fixed;z-index:70;min-width:220px;padding:6px;border-radius:22px;transform-origin:top left;transform:scale(.6);opacity:0;transition:transform .35s var(--spring),opacity .2s}
.menu.on{transform:none;opacity:1}
.menu button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 12px;border-radius:14px;font-size:16px;text-align:start}
.menu button:active,.menu button:hover{background:var(--fill)}
.menu button .i{width:18px;height:18px;stroke-width:2.4;color:var(--label)}
.menu button:not([aria-checked="true"]) .i{visibility:hidden}
.toast{position:fixed;z-index:80;bottom:calc(env(safe-area-inset-bottom,0px) + 86px);left:50%;display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);min-height:50px;padding:6px 8px 6px 18px;padding-inline-start:12px;border-radius:25px;
  transform:translate(-50%,40px) scale(.9);opacity:0;transition:transform .5s var(--spring),opacity .25s;font-size:15px;font-weight:600}
.toast.on{transform:translate(-50%,0);opacity:1}
.toast .tico{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ok);color:#fff;flex:none}
.toast .tico .i{width:18px;height:18px;stroke-width:2.6}
.toast span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.toast .btn{min-height:36px;padding:0 14px;font-size:14px}
@media (min-width:820px){.toast{bottom:24px}}

/* ── Home ────────────────────────────────────────────────── */
.intro{display:grid;gap:22px;align-items:center}
.intro h1{font:800 clamp(34px,8.6vw,54px)/1.12 var(--font-d);text-wrap:balance;margin-top:6px}
.intro p{color:var(--label2);font-size:17px;line-height:1.7;max-width:46ch;margin-top:10px}
.intro .cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.hero{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(-1 * var(--g));padding:0 var(--g);scroll-padding-inline:var(--g)}
.hero::-webkit-scrollbar{display:none}
.slide{position:relative;flex:none;width:100%;aspect-ratio:1;max-height:620px;border-radius:var(--r-big);overflow:hidden;scroll-snap-align:start;background:#16161a}
.slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 6s ease-out}
.slide.cur img{transform:scale(1.08)}
.cap{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:12px;padding:12px 12px 12px 12px;padding-inline-start:18px;border-radius:24px;color:var(--label)}
.cap .col{flex:1;min-width:0}
.cap small{display:block;font-size:12.5px;color:var(--label2);font-weight:600}
.cap b{display:block;font-size:18px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dots{position:absolute;top:14px;left:50%;transform:translateX(-50%);display:flex;gap:7px;padding:8px 11px;border-radius:999px}
.dots button{width:7px;height:7px;border-radius:4px;background:var(--label3);transition:width .35s var(--spring),background .2s}
.dots button[aria-current="true"]{width:20px;background:var(--label)}
.hero-w{position:relative}
@media (min-width:900px){
  .intro{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:48px}
  .hero{margin-inline:0;padding:0;scroll-padding-inline:0;border-radius:var(--r-big)}
  .slide{aspect-ratio:1}
}
.trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--sep);border-radius:24px;overflow:hidden;margin-top:28px}
.trust div{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;background:var(--surface);min-width:0}
.trust b{display:block;font-size:15px;font-weight:600}
.trust small{display:block;font-size:13px;color:var(--label2)}
.trust .ico{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--tint-soft);color:var(--tint)}
.trust .ico .i{width:20px;height:20px}
@media (min-width:900px){.trust{grid-template-columns:repeat(4,minmax(0,1fr))}}
.cats{display:grid;grid-auto-flow:column;grid-auto-columns:116px;gap:12px;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--g));padding:2px var(--g);scroll-padding-inline:var(--g);scroll-snap-type:x proximity}
.cats::-webkit-scrollbar{display:none}
.cat{display:flex;flex-direction:column;gap:7px;scroll-snap-align:start;text-align:start}
.cat .tl{aspect-ratio:1;border-radius:26px;background:var(--tile);overflow:hidden;transition:transform .25s var(--spring)}
.cat:active .tl{transform:scale(.95)}
.cat b{font-size:14.5px;font-weight:600;line-height:1.3}
.cat small{font-size:12.5px;color:var(--label2);margin-top:-6px}
@media (min-width:900px){.cats{grid-auto-flow:row;grid-template-columns:repeat(8,minmax(0,1fr));margin-inline:0;padding:0}}
.finder-card{position:relative;overflow:hidden;border-radius:var(--r-big);color:var(--on-img);background:#121214;isolation:isolate}
.finder-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.15);filter:blur(2px) saturate(1.1)}
.finder-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(200deg,rgba(8,8,10,.55),rgba(8,8,10,.86) 65%)}
.finder-card .in{padding:26px 22px 22px;display:grid;gap:12px;max-width:640px}
.finder-card h2{font:700 28px/1.25 var(--font-d);text-wrap:balance}
.finder-card p{color:rgba(255,255,255,.82);line-height:1.7}
.finder-card .eyebrow{color:#e9cf98}
.gchip{--glass:rgba(255,255,255,.16);--rim-a:rgba(255,255,255,.6);--rim-b:rgba(255,255,255,.08);--rim-c:rgba(255,255,255,.35);
  --glass-shadow:0 4px 14px rgba(0,0,0,.18);height:38px;padding:0 15px;border-radius:999px;color:#fff;font-size:14.5px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap}
.finder-card .chips{margin-inline:0;padding-inline:0;flex-wrap:wrap}
.finder-card .btn-ink{background:#fff;color:#000;justify-self:start}
@media (min-width:900px){.finder-card .in{padding:44px 44px 40px}}
.prem{display:grid;gap:14px}
.pcard{display:grid;grid-template-columns:minmax(0,1fr);background:var(--surface);border-radius:var(--r-big);overflow:hidden;box-shadow:var(--card-shadow)}
.pcard .ph{position:relative;aspect-ratio:16/11;overflow:hidden;background:#101012}
.pcard .ph img{width:100%;height:100%;object-fit:cover}
.pcard .ph .flag{top:14px;right:14px}
.pcard .bd{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pcard h3{font:700 21px/1.3 var(--font-d)}
.pcard .meta{font-size:13.5px;color:var(--label2)}
.pcard p{color:var(--label2);font-size:15px;line-height:1.7}
.pcard .ft{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.pcard .ft .pr{font-size:20px;font-weight:700}
@media (min-width:700px){.prem{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
.stories{display:grid;grid-auto-flow:column;grid-auto-columns:min(78%,320px);gap:12px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--g));padding:2px var(--g);scroll-padding-inline:var(--g)}
.stories::-webkit-scrollbar{display:none}
.story{position:relative;aspect-ratio:3/4;border-radius:var(--r-big);overflow:hidden;scroll-snap-align:start;background:#141416;display:block}
.story img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.story:active img{transform:scale(1.04)}
@media (min-width:900px){.stories{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:0;padding:0}}
.seg-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.seg-row .seg{width:min(100%,240px)}
.about{display:grid;gap:14px}
.about .lead{background:var(--surface);border-radius:var(--r-big);padding:22px 20px;box-shadow:var(--card-shadow)}
.about .lead h2{font:700 24px/1.35 var(--font-d);text-wrap:balance;margin-top:6px}
.about .lead p{color:var(--label2);line-height:1.8;margin-top:8px}
@media (min-width:900px){.about{grid-template-columns:1fr 1fr;align-items:start}}
.help{display:grid;gap:14px;align-items:center;background:var(--surface);border-radius:var(--r-big);padding:20px;box-shadow:var(--card-shadow)}
.help h2{font:700 21px/1.35 var(--font-d)}
.help p{color:var(--label2);margin-top:4px;line-height:1.7}
.phone{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.phone bdi{font:600 19px var(--font-d);font-variant-numeric:tabular-nums;user-select:all;direction:ltr}
@media (min-width:700px){.help{grid-template-columns:1fr auto}}
.foot{margin-top:40px;padding-top:24px;border-top:.5px solid var(--sep);display:grid;gap:10px;color:var(--label2);font-size:14px;line-height:1.7}
.foot .logo{background:var(--label2)}

/* ── Shop ────────────────────────────────────────────────── */
.shop-top{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:14px}
.shop-top>*{min-width:0}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 12px}
.toolbar .cnt{font-size:15px;color:var(--label2);font-variant-numeric:tabular-nums}
.toolbar .tb{display:flex;gap:8px}
.toolbar .btn-fill{min-height:36px;padding:0 13px;font-size:14.5px;gap:6px}
.toolbar .btn-fill .i{width:18px;height:18px}
.toolbar .btn-fill.on{background:var(--ink);color:var(--ink-fg)}
.empty{display:grid;justify-items:center;text-align:center;gap:10px;padding:56px 20px;color:var(--label2)}
.empty .i{width:48px;height:48px;stroke-width:1.3;color:var(--label3)}
.empty b{color:var(--label);font-size:19px}
@media (min-width:900px){.shop-top{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center}}

/* ── Product page ────────────────────────────────────────── */
.pd{display:grid;gap:22px;padding-top:4px}
.gal-w{position:relative;border-radius:var(--r-big);overflow:hidden;background:var(--tile)}
.gal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.gal::-webkit-scrollbar{display:none}
.gal>div{flex:none;width:100%;aspect-ratio:1;scroll-snap-align:start;background:var(--tile)}
.gal img{width:100%;height:100%}
.gal .w img{object-fit:contain;mix-blend-mode:multiply}
.gal .s img{object-fit:cover}
.gal-w .dots{top:auto;bottom:14px}
.gal-w .flag{top:14px;right:14px}
.pi{display:flex;flex-direction:column;gap:14px;min-width:0}
.pi-eb{font-size:14px;font-weight:600;color:var(--tint)}
.pi h1{font:700 30px/1.25 var(--font-d);text-wrap:balance}
.pi .meta{color:var(--label2);font-size:15px;margin-top:4px}
.pi .price{font:700 28px/1.2 var(--font-d)}
.pi .desc{font-size:17px;line-height:1.75;color:var(--label)}
.pi .acts{display:none;gap:10px;align-items:center}
.stepper{flex:none;display:inline-grid;grid-template-columns:40px 34px 40px;align-items:center;height:44px;border-radius:22px;background:var(--fill)}
.stepper button{height:44px;display:grid;place-items:center;border-radius:22px}
.stepper button:active{background:var(--fill2)}
.stepper button[disabled]{opacity:.3}
.stepper output{text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.stepper .i{width:18px;height:18px;stroke-width:2.4}
.stepper.sm{grid-template-columns:34px 28px 34px;height:36px}
.stepper.sm button{height:36px}
.stepper.sm .i{width:16px;height:16px}
.buybar{position:fixed;z-index:35;left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 10px);margin-inline:auto;width:calc(100% - 2 * var(--g));max-width:560px;display:flex;align-items:center;gap:10px;padding:8px;border-radius:34px}
.buybar .btn{flex:1;min-width:0}
.buybar .btn bdi{opacity:.75;font-weight:600}
.buybar .stepper{background:var(--fill)}
@media (min-width:900px){
  .pd{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;align-items:start}
  .gal-w{position:sticky;top:calc(env(safe-area-inset-top,0px) + 70px)}
  .pi .acts{display:flex}
  .buybar--pd{display:none}
}
.related{margin-top:40px}

/* ── Finder ──────────────────────────────────────────────── */
.fx{max-width:720px;margin-inline:auto}
.prog{display:flex;gap:5px;margin:16px 0 22px}
.prog i{flex:1;height:4px;border-radius:2px;background:var(--fill2);transition:background .3s}
.prog i.on{background:var(--tint)}
.fq h2{font:700 26px/1.3 var(--font-d);text-wrap:balance}
.fq>p{color:var(--label2);margin:6px 0 18px}
.opt{position:relative;display:flex;align-items:center;gap:14px;width:100%;min-height:60px;padding:12px 18px;text-align:start;transition:background .15s}
.opt+.opt::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.opt:active{background:var(--fill)}
.opt .col{flex:1;min-width:0;display:flex;flex-direction:column}
.opt b{font-size:17px;font-weight:600}
.opt small{font-size:14px;color:var(--label2)}
.ck{flex:none;width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1.6px var(--label3);display:grid;place-items:center;color:transparent;transition:background .2s,box-shadow .2s,color .2s}
.ck .i{width:15px;height:15px;stroke-width:3}
[aria-checked="true"]>.ck{background:var(--tint);box-shadow:none;color:#fff}
.fnav{display:flex;gap:10px;margin-top:18px}
.fnav .btn{flex:1}
.paths{display:grid;gap:12px}
@media (min-width:600px){.paths{grid-template-columns:1fr 1fr}}
.path{position:relative;display:block;border-radius:var(--r-big);overflow:hidden;aspect-ratio:4/3;background:#121214;text-align:start;transition:transform .25s var(--spring)}
.path:active{transform:scale(.98)}
.path img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.path .cap b{font-size:19px}
.res{display:grid;gap:12px}
@media (min-width:760px){.res{grid-template-columns:1fr 1fr}}
.rc{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;align-items:start;padding:12px;background:var(--surface);border-radius:var(--r-card);box-shadow:var(--card-shadow)}
.rc .tl{display:block;aspect-ratio:1;border-radius:16px;background:var(--tile);overflow:hidden}
.rc .col{display:flex;flex-direction:column;gap:4px;min-width:0}
.rc .nm{font-size:16.5px;font-weight:700;line-height:1.35}
.rc .k{font-size:12.5px;color:var(--label2)}
.rc .why{font-size:13.5px;color:var(--label2);line-height:1.6}
.rc .ft{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}
.match{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--tint)}
.match i{display:block;width:52px;height:5px;border-radius:3px;background:var(--fill2);overflow:hidden}
.match i::before{content:"";display:block;height:100%;width:var(--m);background:var(--tint);border-radius:3px}
.best{grid-column:1/-1}
.best.rc{grid-template-columns:minmax(0,150px) minmax(0,1fr);padding:14px;box-shadow:0 0 0 1.5px var(--tint),var(--card-shadow)}
.best .nm{font-size:19px}

/* ── Journal & article ───────────────────────────────────── */
.feat{position:relative;display:block;border-radius:var(--r-big);overflow:hidden;aspect-ratio:4/5;max-height:560px;width:100%;background:#121214}
.feat img{width:100%;height:100%;object-fit:cover}
.feat .cap{display:block;padding:16px 18px}
.feat .cap b{white-space:normal;font-size:20px;line-height:1.35;margin-top:2px}
.feat .cap p{font-size:14px;color:var(--label2);margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (min-width:700px){.feat{aspect-ratio:16/8}}
.alist{display:grid;gap:12px;margin-top:14px}
.ar{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;padding:10px;background:var(--surface);border-radius:var(--r-card);text-align:start;box-shadow:var(--card-shadow);transition:transform .25s var(--spring)}
.ar:active{transform:scale(.98)}
.ar img{width:92px;height:92px;border-radius:15px;object-fit:cover;background:#121214}
.ar .col{display:flex;flex-direction:column;gap:3px;min-width:0}
.ar small{font-size:12.5px;color:var(--label2)}
.ar b{font-size:16px;font-weight:700;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ar p{font-size:13.5px;color:var(--label2);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (min-width:760px){.alist{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.ar p{display:none}}
.art{max-width:720px;margin-inline:auto}
.art .cover{border-radius:var(--r-big);overflow:hidden;aspect-ratio:16/10;background:#121214}
.art .cover img{width:100%;height:100%;object-fit:cover}
.art h1{font:700 clamp(27px,6.4vw,38px)/1.3 var(--font-d);text-wrap:balance;margin-top:18px}
.art .meta{color:var(--label2);font-size:14.5px;margin-top:8px;display:flex;flex-wrap:wrap;gap:6px 12px}
.art .lede{font-size:19px;line-height:1.85;margin-top:18px}
.prose{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:22px}
.prose>*{min-width:0}
.prose h2{font:700 23px/1.4 var(--font-d);margin-top:18px;scroll-margin-top:80px;text-wrap:balance}
.prose p,.prose li{font-size:17.5px;line-height:1.9}
.prose ul,.prose ol{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.prose ul li{position:relative;padding-inline-start:22px}
.prose ul li::before{content:"";position:absolute;right:4px;top:.8em;width:7px;height:7px;border-radius:50%;background:var(--tint)}
.prose ol{counter-reset:n}
.prose ol li{counter-increment:n;position:relative;padding:14px 16px;padding-inline-start:58px;background:var(--surface);border-radius:20px;line-height:1.8}
.prose ol li::before{content:counter(n);position:absolute;right:14px;top:14px;width:30px;height:30px;border-radius:50%;background:var(--tint-soft);color:var(--tint);font-weight:700;font-size:15px;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.tip{display:flex;gap:12px;padding:16px 18px;border-radius:22px;background:var(--tint-soft)}
.tip .i{color:var(--tint);margin-top:4px}
.tip p{font-size:16.5px;line-height:1.85}
.tbl{overflow-x:auto;border-radius:20px;background:var(--surface)}
.tbl table{width:100%;min-width:480px;border-collapse:collapse;font-size:15px;line-height:1.65}
.tbl th,.tbl td{padding:12px 14px;text-align:start;vertical-align:top;border-bottom:.5px solid var(--sep)}
.tbl tr:last-child td{border-bottom:0}
.tbl thead th{font-size:13px;color:var(--label2);font-weight:600;background:var(--surface2)}
.tbl tbody th{font-weight:600;white-space:nowrap}
.picks h3{font:700 18px/1.4 var(--font-d);margin:6px 0 10px}
.picks .grid{--cols:3}
@media (max-width:520px){.picks .grid{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(148px,46%);overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--g));padding:2px var(--g);scroll-snap-type:x mandatory}.picks .grid>*{scroll-snap-align:start}}
details.row{display:block;padding:0}
details summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:54px;padding:12px 18px;cursor:pointer;font-weight:600;font-size:16px}
details summary::-webkit-details-marker{display:none}
details summary .i{margin-inline-start:auto;color:var(--label3);width:16px;height:16px;stroke-width:2.4;transition:transform .25s var(--ease)}
details[open] summary .i{transform:rotate(-90deg)}
details .a{padding:0 18px 16px;color:var(--label2);line-height:1.8}
.toc .row{font-size:15.5px}
.share{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px}

/* ── Cart & checkout ─────────────────────────────────────── */
.ci{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0}
.ci+.ci{border-top:.5px solid var(--sep)}
.ci .tl{display:block;width:68px;height:68px;border-radius:16px;background:var(--tile);overflow:hidden}
.ci .col{display:flex;flex-direction:column;min-width:0}
.ci b{font-size:15.5px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.ci small{font-size:12.5px;color:var(--label2)}
.ci .pr{font-size:14.5px;font-weight:600;margin-top:2px}
.free{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:18px;background:var(--tint-soft);color:var(--tint);font-size:14.5px;font-weight:600;line-height:1.5}
.free .i{width:20px;height:20px}
.sum{display:grid;gap:6px;font-size:15.5px;margin-bottom:12px}
.sum div{display:flex;justify-content:space-between;gap:10px}
.sum .ok{color:var(--ok);font-weight:600}
.sum .tot{font-size:18px;font-weight:700;padding-top:6px;border-top:.5px solid var(--sep);margin-top:2px}
.co{max-width:640px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:26px}
.co>*{min-width:0}
.co-l .ci{padding:10px 18px}
.co-l .ci+.ci{border-top:0}
.co-l .ci{position:relative}
.co-l .ci+.ci::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.co-l .ci .q{font-size:14px;color:var(--label2);font-variant-numeric:tabular-nums}
.paysel{display:flex;align-items:center;gap:14px}
.ff-done{text-align:center;display:grid;justify-items:center;gap:10px;padding-top:20px}
.ff-done svg.big{width:96px;height:96px}
.ff-done .ring{fill:none;stroke:var(--ok);stroke-width:5;stroke-dasharray:290;stroke-dashoffset:290;animation:draw .7s var(--ease) forwards}
.ff-done .tick{fill:none;stroke:var(--ok);stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:70;stroke-dashoffset:70;animation:draw .45s .55s var(--ease) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.ff-done h1{font:700 28px/1.3 var(--font-d)}
.ff-done p{color:var(--label2);line-height:1.8;max-width:46ch}
.ordno{font:600 15px var(--font-d);background:var(--fill);border-radius:999px;padding:6px 14px;direction:ltr;font-variant-numeric:tabular-nums}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}
  .slide img,.slide.cur img{transform:none}
}
@media (prefers-reduced-transparency:reduce){.lg,.sheet{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}
@media (max-width:399px){.buybar [data-tot]{display:none}}
@media (max-width:899px){.gal-w{width:100%;max-width:560px;margin-inline:auto}}
.co 


/* ═════════ WordPress glue ═════════ */
.screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;white-space:nowrap}
.screen-reader-text:focus,.skip-link:focus{position:fixed!important;z-index:100;top:10px;right:10px;width:auto;height:auto;margin:0;padding:10px 16px;clip:auto;clip-path:none;background:var(--ink);color:var(--ink-fg);border-radius:14px;font-weight:600}
body.admin-bar .bar{top:32px}
body.admin-bar .scrim{top:0}
@media (max-width:782px){body.admin-bar .bar{top:46px}}
@media (min-width:820px){body.admin-bar .dock{top:32px}}
html:not(.js) .needs-js{display:none!important}
.alignleft{float:left;margin:0 0 12px 16px}.alignright{float:right;margin:0 16px 12px 0}.aligncenter{display:block;margin-inline:auto}
img.ff-fit{width:100%;height:100%;object-fit:cover}

/* page transitions (progressive enhancement: Chrome / Safari) */
@view-transition{navigation:auto}
.dock{view-transition-name:ffdock}
.bar{view-transition-name:ffbar}
::view-transition-old(root),::view-transition-new(root){animation-duration:.22s;animation-timing-function:var(--ease)}
::view-transition-group(ffdock),::view-transition-group(ffbar){animation-duration:.01ms}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}

/* ═════════ Chrome: bar + dock ═════════ */
a.ib{text-decoration:none}
.bar-in .ib.lg{flex:none}
.bar .bag{display:grid}
@media (min-width:820px){.bar .bag{display:none}}
.bar-in .logo{flex:none}
body.nodock .dock{transform:translateY(130%);opacity:0}
body.nodock .dock>*{pointer-events:none}
@media (min-width:820px){body.nodock .dock{transform:none;opacity:1}body.nodock .dock>*{pointer-events:auto}}
.dock .tab{text-decoration:none}
.tab:focus-visible{outline-offset:-3px}
.main{min-height:60vh}
.logo-img{width:62px;height:40px;object-fit:contain}
html[data-theme="dark"] .logo-img,html:not([data-theme="light"]) .logo-img{filter:none}

/* ═════════ Footer ═════════ */
.foot{display:grid;gap:16px;margin-top:44px;padding-top:26px}
.foot .logo{width:86px;height:56px}
.foot-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;margin-top:6px}
@media (min-width:700px){.foot-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.foot-cols h2{font-size:13px;font-weight:600;color:var(--label2);margin-bottom:8px}
.foot-cols ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.foot-cols a{color:var(--label);font-size:15px}
.foot-cols a:hover{color:var(--tint)}
.foot-cols bdi{direction:ltr}
.foot-bottom{display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:space-between;color:var(--label3);font-size:13px}
.foot-bottom span{color:var(--label2)}

/* ═════════ Cards on the shop grid ═════════ */
.pc[hidden]{display:none}
.pc-img img{transition:transform .5s var(--ease)}
.pc-img.has-alt .alt{position:absolute;inset:0;object-fit:cover;mix-blend-mode:normal;opacity:0;transition:opacity .4s}
@media (hover:hover){.pc:hover .pc-img.has-alt .alt{opacity:1}.pc:hover .pc-img img:not(.alt){transform:scale(1.04)}}
.pc-t a{display:block}
.pc-ph{display:grid;place-items:center;width:100%;height:100%;color:var(--label3)}
.pc-ph .ff-bottle{width:46%;height:auto}
.add.loading{pointer-events:none}
.add.loading .i{animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(-360deg)}}
.added_to_cart,.woocommerce a.added_to_cart{display:none!important}
.pc .add{text-decoration:none}

/* ═════════ Shop ═════════ */
.shop-wrap .lt-sub{max-width:62ch}
.shop-top .search{width:100%}
.search input[type=search]::-webkit-search-decoration,.search input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.search button.go{display:none}
.shop-top form{margin:0}
.toolbar .btn-fill{border:0}
.chips[hidden],.seg[hidden]{display:none}
.shop-end{margin-top:26px;display:flex;justify-content:center}
.pager{margin-top:26px}
.pager ul{list-style:none;margin:0;padding:0}
.pager li{display:contents}
.pager ul{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.pager a.page-numbers,.pager span.page-numbers{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 14px;border-radius:22px;background:var(--surface);font-weight:600;font-variant-numeric:tabular-nums;box-shadow:var(--card-shadow)}
.pager span.page-numbers.current{background:var(--ink);color:var(--ink-fg)}
.pager a.page-numbers:hover{background:var(--fill)}
.pager .dots{background:none;box-shadow:none;position:static;transform:none;padding:0}
.shop-note{margin-top:30px}
.crumbs{display:flex;flex-wrap:wrap;gap:4px 8px;margin:4px 0 8px;font-size:13.5px;color:var(--label2)}
.crumbs a{color:var(--tint);font-weight:600}
.crumbs i{font-style:normal;color:var(--label3)}

/* ═════════ Product page ═════════ */
.pd-wrap{padding-top:2px}
.pd .woocommerce-notices-wrapper{grid-column:1/-1}
.pi form.cart{display:none}
.pi .acts form.cart{display:flex;gap:10px;align-items:center;margin:0}
.pi .acts form.cart .btn{flex:1}
.acts .btn,.buybar .btn{text-decoration:none}
.gal-w .flag{z-index:2}
.pi h1.is-latin,.pc-t.is-latin{font-family:var(--font-d)}
.pi-eb{display:block}
.price-now ins{text-decoration:none}
.price-now del{opacity:.5;font-size:.7em;margin-inline-end:6px}
.pd-note{margin-top:2px}
.pd-more{margin-top:8px}
.pd-more .prose p,.pd-more .prose li{font-size:16px;line-height:1.85}
.stock-out{color:var(--bad);font-weight:600;font-size:15px}
.buybar .stock-out{flex:1;text-align:center}
.pi .row .v .meter{margin-inline-start:10px}
.pi .group a.row{text-decoration:none}
.row .ico svg{width:18px;height:18px}
.single-product .related .shelf{margin-top:2px}

/* ═════════ Forms (shared) ═════════ */
.fld select{flex:1;min-width:0;border:0;background:transparent;font-size:16px;padding:8px 0;color:var(--label);outline:0}

/* ═════════ Additions ═════════ */
html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 76px)}
.tabbar.none .tabpill{opacity:0}
.tabbar.none .tab{color:var(--label2)}
.woocommerce-Price-amount bdi{font-variant-numeric:tabular-nums;white-space:nowrap}
.woocommerce-Price-currencySymbol{font-size:.72em;font-weight:600;color:var(--label2)}
.price-now .woocommerce-Price-currencySymbol{font-size:.5em}
.pc-p .woocommerce-Price-currencySymbol{font-size:.72em}
.price-now del .woocommerce-Price-currencySymbol,.pc-p del .woocommerce-Price-currencySymbol{font-size:.8em}
.buybar form.cart{display:flex;gap:10px;align-items:center;flex:1;min-width:0;margin:0}
.buybar form.cart .btn{flex:1;min-width:0}
.pi .acts form.cart.ffbuy .btn{flex:1}
.cv{display:block;background:var(--tile);overflow:hidden}
.ar .cv{width:92px;height:92px;border-radius:15px}
.feat .cv,.art .cover .cv{width:100%;height:100%}
.ff-cover-product{object-fit:contain!important;background:transparent!important;mix-blend-mode:multiply}
.main.wrap{padding-top:4px}
.ar .ff-cover-product,.feat .ff-cover-product{padding:6px;border-radius:0}
.share{margin-top:22px}
.art .share{margin-top:28px}
.art .sec{margin-top:34px}
.empty .i{width:34px;height:34px}


/* ═════════ Home ═════════ */
a.cat{text-decoration:none;color:inherit}
.cat .tl img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.cat .tl .ff-bottle{width:60%;height:100%;margin-inline:auto}
.hero .slide>a.cap{text-decoration:none}
.hero .slide>a.slide-link{position:absolute;inset:0;z-index:0}
.hero .slide .cap{z-index:1}
.pcard h3 a{color:inherit}
.pcard .ft .btn{text-decoration:none}
.pcard .ph img{transition:transform .6s var(--ease)}
@media (hover:hover){.pcard:hover .ph img{transform:scale(1.03)}}
.pocket-panel[hidden]{display:none}
.story .cap{text-decoration:none}
.about .row.ic{cursor:default}
.finder-card .gchip{text-decoration:none}
.help .phone .btn{text-decoration:none}
.lnk{text-decoration:none}
.intro .cta .btn{text-decoration:none}
.home-journal .alist{margin-top:0}
.sec>.shelf{margin-top:0}

/* ═════════ Journal & article ═════════ */
.jchips{margin-top:16px;margin-bottom:16px}
.chip{text-decoration:none}
.feat{text-decoration:none}
.feat .cap{color:var(--label)}
.ar{text-decoration:none;color:inherit}
.feat-ph,.ar-ph{display:grid;place-items:center;width:100%;height:100%;color:#c9a66b;background:#121214}
.ar .ar-ph{width:92px;height:92px;border-radius:15px}
.ar-ph svg,.feat-ph svg{width:36px;height:36px}
.art .cover img{width:100%;height:100%;object-fit:cover;object-position:50% 38%}
@media (max-width:699px){.art .cover{aspect-ratio:4/3}}
.art .cover{margin-top:4px}
.art .meta .eyebrow{font-weight:600}
.art .meta a{color:var(--tint);font-weight:600}
.art .toc-w{margin-top:20px}
.art .toc a.row{text-decoration:none}
.prose{font-size:17.5px}
.prose>*{margin:0}
.prose h2,.prose h3{font-family:var(--font-d);text-wrap:balance}
.prose h3{font-size:19px;line-height:1.5;font-weight:700;margin-top:6px}
.prose a{color:var(--tint);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.prose strong{font-weight:700}
.prose img{height:auto;border-radius:20px}
.prose figure{margin:0}
.prose figcaption{font-size:13.5px;color:var(--label2);margin-top:6px}
.prose blockquote{margin:0;padding:14px 18px;border-radius:20px;background:var(--surface);border-inline-start:4px solid var(--tint);color:var(--label2)}
.prose hr{border:0;height:.5px;background:var(--sep);width:100%}
.prose .tbl{margin:0}
.prose .tbl table{margin:0}
.prose .tbl th,.prose .tbl td{font-weight:400}
.prose .tbl thead th{font-weight:600}
.prose .tbl tbody th,.prose .tbl td:first-child{font-weight:600}
.prose ul ul,.prose ol ul{margin-top:8px}
.prose .ff-callout,.prose .ff-inpost--cta{display:block;position:relative;padding:16px 18px;padding-inline-start:52px;border-radius:22px;background:var(--tint-soft);color:var(--label);font-size:16.5px;line-height:1.85}
.prose .ff-callout::before{content:"";position:absolute;inset-inline-start:16px;top:18px;width:24px;height:24px;background:var(--tint);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3l1.9 5.6L18.5 10.5 12.9 12.4 11 18l-1.9-5.6L3.5 10.5l5.6-1.9z'/%3E%3Cpath d='M19 15l.7 2 2 .7-2 .7-.7 2-.7-2-2-.7 2-.7z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3l1.9 5.6L18.5 10.5 12.9 12.4 11 18l-1.9-5.6L3.5 10.5l5.6-1.9z'/%3E%3Cpath d='M19 15l.7 2 2 .7-2 .7-.7 2-.7-2-2-.7 2-.7z'/%3E%3C/svg%3E") center/contain no-repeat}
.prose .ff-callout p{font-size:inherit;line-height:inherit;margin:0}
.prose .ff-callout p+p{margin-top:8px}
.prose .ff-inpost--cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-inline-start:18px}
.prose .ff-inpost--cta p{flex:1 1 220px;margin:0;font-size:16.5px;line-height:1.8}
.prose .ff-inpost--cta .btn{text-decoration:none}
.prose .ff-inpost{display:block}
.prose .ff-inpost__title{margin:0 0 10px;font:700 18px/1.4 var(--font-d)}
.prose .ff-inpost .grid{--cols:2}
@media (min-width:600px){.prose .ff-inpost .grid{--cols:3}}
.prose .ff-inpost .pc a{text-decoration:none;font-weight:inherit}
.prose .ff-inpost .pc .pc-t{color:var(--label);text-decoration:none}
.prose .ff-inpost .pc .add{color:var(--ink-fg)}
.prose .wp-block-image,.prose .wp-block-table{margin:0}
.prose .wp-block-table table{width:100%}
.art .share .btn,.art .finder-card .btn{text-decoration:none}
.page-lt{margin-bottom:6px}
.pagebody .prose{margin-top:18px}
.pagelinks{display:flex;gap:8px;flex-wrap:wrap}
.pagelinks a,.pagelinks span{padding:6px 14px;border-radius:999px;background:var(--fill);font-weight:600}
.empty a.btn{text-decoration:none}
.nf{max-width:560px;margin-inline:auto;text-align:center;padding-top:40px}
.nf .big{font:800 64px/1 var(--font-d);color:var(--tint);direction:ltr}
.nf h1{font:700 28px/1.3 var(--font-d);margin-top:10px}
.nf p{color:var(--label2);margin-top:8px;line-height:1.8}
.nf .search{margin-top:20px}
.nf .cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.nf .btn{text-decoration:none}

/* ═════════ Finder ═════════ */
.fx .btn{text-decoration:none}
a.path,button.path{display:block;width:100%;color:inherit;text-decoration:none}
.fx .cap{color:var(--label)}
.fq .group .opt{border:0;background:none}
.fq .opt:hover{background:var(--fill)}
.fx .fsum{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0;list-style:none}
.fx .fsum button{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;background:var(--fill);font-size:13px;font-weight:600}
.fx .fsum button svg{width:13px;height:13px;stroke-width:2.2;color:var(--label2)}
.fx .fnotice{margin-bottom:14px}
.fx .chips{margin-bottom:14px}
.fx .res .rc .add{flex:none}
.fx .rc .ft .pr{font-size:16px;font-weight:700}
.fx .rc .nm{text-decoration:none;color:var(--label)}
.fx .rc .note{font-size:13px;color:var(--label2)}
.fx .rc .acts{display:flex;align-items:center;gap:8px}
.fx .rc .wa{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--fill);color:var(--label);flex:none}
.fx .rc .wa svg{width:18px;height:18px}
.fx .rc .btn.sm{min-height:34px;padding:0 14px;font-size:14px}
.fx .rc .incart{color:var(--ok);font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.fx .rc .incart svg{width:16px;height:16px}
.fx .more{margin-top:14px;display:flex;justify-content:center}
.fx .foot-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.fx .foot-actions .btn{flex:1 1 200px}
.fx .gf{text-align:center;margin-top:14px}
.fx .nojs{padding:20px;text-align:center}
.finder-how{margin-top:34px}
.finder-how .row .col small{line-height:1.7}
.fx-toast{position:fixed;z-index:80}


/* ═════════ WooCommerce: notices ═════════ */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-notices-wrapper{display:grid;gap:10px;margin-bottom:14px}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-NoticeGroup .woocommerce-error{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;padding:13px 16px;list-style:none;border-radius:18px;background:var(--tint-soft);color:var(--tint);font-size:14.5px;font-weight:600;line-height:1.6}
.woocommerce-message{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok)}
.woocommerce-error{display:grid;gap:4px;background:color-mix(in srgb,var(--bad) 10%,transparent);color:var(--bad)}
.woocommerce-error li{margin:0;padding:0}
.woocommerce-notices-wrapper .woocommerce-message,.woocommerce-notices-wrapper .woocommerce-info,.woocommerce-notices-wrapper .woocommerce-error{margin-bottom:0}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-message a.wc-forward{order:2;margin-inline-start:auto;display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:var(--ink);color:var(--ink-fg);font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}
.woocommerce-error a{color:inherit;text-decoration:underline}
.woocommerce-info a:not(.button){color:inherit;text-decoration:underline}
.woocommerce-info.woocommerce-no-products-found{background:var(--fill);color:var(--label2)}

/* ═════════ WooCommerce: shared form rows ═════════ */
.woocommerce-wrap{max-width:680px;margin-inline:auto}
.woocommerce-wrap.wide{max-width:1000px}
.woocommerce form .form-row{margin:0}
.woocommerce form .form-row label{font-size:16px;color:var(--label)}
.woocommerce form .form-row label .required{color:var(--bad);text-decoration:none;border:0}
.woocommerce form .form-row label .optional{font-size:13px;color:var(--label3)}
.woocommerce form .form-row .woocommerce-input-wrapper{display:block;flex:1;min-width:0}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{width:100%;border:0;background:transparent;outline:0;font-size:16px;padding:8px 0;color:var(--label);min-width:0;box-shadow:none}
.woocommerce form .form-row textarea{resize:none;min-height:64px;line-height:1.6}
.woocommerce form .form-row input::placeholder,.woocommerce form .form-row textarea::placeholder{color:var(--label3)}
.woocommerce form .form-row.woocommerce-invalid{background:color-mix(in srgb,var(--bad) 7%,transparent)}
.woocommerce form .form-row.woocommerce-validated .input-text{box-shadow:none}
.woocommerce form .form-row .input-text:focus-visible{outline:0}
.woocommerce form .form-row:focus-within{background:color-mix(in srgb,var(--tint) 5%,transparent)}
.woocommerce form .form-row span.description,.woocommerce form .form-row .description{font-size:13px;color:var(--label2)}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce-page .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border:0;border-radius:999px;background:var(--ink);color:var(--ink-fg);font:600 17px/1 var(--font);cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .2s var(--spring),opacity .2s}
.woocommerce .button:active{transform:scale(.97)}
.woocommerce .button[disabled],.woocommerce .button:disabled,.woocommerce .button.disabled{opacity:.4;pointer-events:none}
.woocommerce .button.alt{background:var(--ink);color:var(--ink-fg)}
.woocommerce .button.btn-fill-s,.woocommerce .coupon .button{background:var(--fill);color:var(--label)}
.select2-container{width:100%!important}
.select2-container--default .select2-selection--single{height:auto;border:0;background:transparent;padding:8px 0}
.select2-container--default .select2-selection--single .select2-selection__rendered{padding:0;line-height:1.5;color:var(--label);font-size:16px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:100%;left:0;right:auto}
.select2-dropdown{border:0;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.18);overflow:hidden;background:var(--surface);color:var(--label)}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--tint);color:#fff}
.select2-search--dropdown .select2-search__field{border-radius:10px;background:var(--fill);border:0;padding:8px 10px;color:var(--label)}

/* ═════════ WooCommerce: cart ═════════ */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{max-width:680px;margin-inline:auto}
.woocommerce-cart .woocommerce{max-width:720px}
.woocommerce-cart-form{margin:0}
table.shop_table{width:100%;border-collapse:collapse;border-spacing:0}
.woocommerce-cart-form__contents{display:block;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
.woocommerce-cart-form__contents thead{display:none}
.woocommerce-cart-form__contents tbody{display:block}
.woocommerce-cart-form__contents tr.cart_item{position:relative;display:grid;grid-template-columns:68px minmax(0,1fr) auto;grid-template-areas:"thumb name remove" "thumb qty sub";gap:4px 12px;align-items:center;padding:12px 18px}
.woocommerce-cart-form__contents tr.cart_item+tr.cart_item::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.woocommerce-cart-form__contents td{display:block;padding:0;border:0;text-align:start}
.woocommerce-cart-form__contents td::before{display:none!important;content:none!important}
.woocommerce-cart-form__contents td.product-thumbnail{grid-area:thumb;width:68px}
.woocommerce-cart-form__contents td.product-thumbnail a{display:block;width:68px;height:68px;border-radius:16px;background:var(--tile);overflow:hidden}
.woocommerce-cart-form__contents td.product-thumbnail img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.woocommerce-cart-form__contents td.product-name{grid-area:name;font-size:15.5px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.woocommerce-cart-form__contents td.product-name a{color:var(--label);text-decoration:none}
.woocommerce-cart-form__contents td.product-name dl.variation{display:none}
.woocommerce-cart-form__contents td.product-remove{grid-area:remove;align-self:start;justify-self:end}
.woocommerce-cart-form__contents td.product-remove a.remove{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--fill);color:var(--label2);font-size:0;text-decoration:none;position:relative}
.woocommerce-cart-form__contents td.product-remove a.remove::before{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center/contain no-repeat}
.woocommerce-cart-form__contents td.product-remove a.remove:hover{background:color-mix(in srgb,var(--bad) 14%,transparent);color:var(--bad)}
.woocommerce-cart-form__contents td.product-price{display:none}
.woocommerce-cart-form__contents td.product-quantity{grid-area:qty}
.woocommerce-cart-form__contents td.product-subtotal{grid-area:sub;justify-self:end;font-weight:700;font-size:15px}
.woocommerce-cart-form__contents tr:not(.cart_item){display:block}
.woocommerce-cart-form__contents td.actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px 18px 16px;border-top:.5px solid var(--sep)}
.woocommerce-cart-form .coupon{display:flex;gap:8px;align-items:center}
.woocommerce-cart-form .coupon label{display:none}
.woocommerce-cart-form .coupon input.input-text{flex:1;min-width:0;height:44px;padding:0 16px;border:0;border-radius:22px;background:var(--fill);font-size:16px;color:var(--label)}
.woocommerce-cart-form .coupon .button{flex:none;white-space:nowrap;min-height:44px;padding:0 18px;font-size:15px}
.woocommerce-cart-form.ff-auto button[name=update_cart]{display:none}
.woocommerce-cart-form td.actions>.button{justify-self:stretch;background:var(--fill);color:var(--label);min-height:46px;font-size:16px}
.woocommerce-cart-form td.actions>.button[disabled]{display:none}
.quantity{display:inline-flex}
.quantity input.qty{width:3ch;min-width:0;border:0;background:transparent;text-align:center;font:700 16px var(--font);color:var(--label);-moz-appearance:textfield;appearance:textfield;padding:0}
.quantity input.qty::-webkit-outer-spin-button,.quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.quantity.ff-step{display:inline-grid;grid-template-columns:34px 30px 34px;align-items:center;height:36px;border-radius:18px;background:var(--fill)}
.quantity.ff-step input.qty{width:100%}
.quantity.ff-step button{height:36px;display:grid;place-items:center;border-radius:18px}
.quantity.ff-step button:active{background:var(--fill2)}
.quantity.ff-step button .i{width:16px;height:16px;stroke-width:2.4}
.quantity label{display:none}
.cart-collaterals{margin-top:18px}
.cart_totals{display:grid;gap:12px}
.cart_totals>h2{font-size:13px;font-weight:600;color:var(--label2);padding:0 18px}
.cart_totals table.shop_table{display:block;background:var(--surface);border-radius:24px;padding:12px 18px;box-shadow:var(--card-shadow)}
.cart_totals table.shop_table tbody{display:grid;gap:8px}
.cart_totals table.shop_table tr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:15.5px}
.cart_totals table.shop_table th{font-weight:400;text-align:start;padding:0;border:0}
.cart_totals table.shop_table td{padding:0;border:0;text-align:end;border-radius:0}
.cart_totals table.shop_table td::before{display:none!important}
.cart_totals tr.order-total{font-size:18px;font-weight:700;padding-top:8px;border-top:.5px solid var(--sep);margin-top:2px}
.cart_totals tr.order-total th{font-weight:700}
.cart_totals ul#shipping_method,.woocommerce-shipping-methods{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.cart_totals .woocommerce-shipping-destination,.cart_totals .shipping-calculator-button,.cart_totals .woocommerce-shipping-calculator{display:none}
.cart_totals .amount{white-space:nowrap}
.wc-proceed-to-checkout{display:grid;gap:12px}
.wc-proceed-to-checkout .checkout-button{display:flex;width:100%;min-height:54px;font-size:17px}
.woocommerce-cart .cart-empty,.woocommerce-cart .cart-empty.woocommerce-info{margin-top:10px}
.return-to-shop{margin-top:6px}
.return-to-shop .button{background:var(--ink);color:var(--ink-fg)}
.wc-empty-cart-message .cart-empty{background:none;color:var(--label2);display:grid;justify-items:center;text-align:center;padding:50px 20px 14px;font-size:19px;color:var(--label)}

/* ═════════ WooCommerce: checkout ═════════ */
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{font-size:14px;font-weight:500;background:var(--fill);color:var(--label2)}
form.checkout{display:grid;grid-template-columns:minmax(0,1fr);gap:26px}
form.checkout .col2-set,form.checkout .col-1,form.checkout .col-2{display:contents;width:100%;float:none}
form.checkout #customer_details{display:grid;gap:26px}
form.checkout #customer_details .col-1,form.checkout #customer_details .col-2{display:grid;gap:26px}
.woocommerce-billing-fields>h3,.woocommerce-shipping-fields>h3,.woocommerce-additional-fields>h3,#order_review_heading,.woocommerce-checkout h3{font:600 13px/1.4 var(--font);color:var(--label2);padding:0 18px 7px;margin:0}
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:block;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
.woocommerce-billing-fields__field-wrapper .form-row,.woocommerce-shipping-fields__field-wrapper .form-row,.woocommerce-additional-fields__field-wrapper .form-row{position:relative;display:flex;align-items:center;gap:12px;min-height:54px;padding:6px 18px;float:none;width:100%}
.woocommerce-billing-fields__field-wrapper .form-row+.form-row::before,.woocommerce-shipping-fields__field-wrapper .form-row+.form-row::before,.woocommerce-additional-fields__field-wrapper .form-row+.form-row::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.woocommerce-billing-fields__field-wrapper .form-row label,.woocommerce-shipping-fields__field-wrapper .form-row label,.woocommerce-additional-fields__field-wrapper .form-row label{flex:none;width:112px;margin:0;line-height:1.4}
.woocommerce-additional-fields__field-wrapper .form-row.notes{align-items:flex-start;padding-top:12px}
@media (max-width:380px){
  .woocommerce-billing-fields__field-wrapper .form-row,.woocommerce-additional-fields__field-wrapper .form-row{flex-direction:column;align-items:stretch;gap:0;padding-block:10px}
  .woocommerce-billing-fields__field-wrapper .form-row label,.woocommerce-additional-fields__field-wrapper .form-row label{width:auto;font-size:13px;color:var(--label2)}
}
form.checkout #billing_country_field:has(.woocommerce-input-wrapper>input[type="hidden"]){display:flex}
form.checkout #billing_country_field strong{font-weight:400;color:var(--label2)}
form.checkout .woocommerce-additional-fields:empty{display:none}
form.checkout #ship-to-different-address{display:none}
#order_review_heading{margin-bottom:-18px}
#order_review{display:contents}
table.woocommerce-checkout-review-order-table{display:block;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
table.woocommerce-checkout-review-order-table thead{display:none}
table.woocommerce-checkout-review-order-table tbody,table.woocommerce-checkout-review-order-table tfoot{display:block}
table.woocommerce-checkout-review-order-table tr.cart_item{position:relative;display:flex;align-items:center;gap:12px;padding:10px 18px}
table.woocommerce-checkout-review-order-table tr.cart_item+tr.cart_item::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
table.woocommerce-checkout-review-order-table td,table.woocommerce-checkout-review-order-table th{padding:0;border:0;text-align:start;font-weight:400}
table.woocommerce-checkout-review-order-table td.product-name{flex:1;min-width:0;display:flex;align-items:center;gap:12px;font-weight:600;font-size:15.5px;line-height:1.4;overflow-wrap:anywhere}
table.woocommerce-checkout-review-order-table td.product-name .ff-rt{flex:none;display:block;width:56px;height:56px;border-radius:14px;background:var(--tile);overflow:hidden}
table.woocommerce-checkout-review-order-table td.product-name .ff-rt img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
table.woocommerce-checkout-review-order-table td.product-name strong.product-quantity{font-weight:400;color:var(--label2);white-space:nowrap}
table.woocommerce-checkout-review-order-table td.product-total{font-weight:700;font-size:15px}
table.woocommerce-checkout-review-order-table tfoot{padding:12px 18px;border-top:.5px solid var(--sep);display:grid;gap:8px}
table.woocommerce-checkout-review-order-table tfoot tr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:15.5px}
table.woocommerce-checkout-review-order-table tfoot td{text-align:end}
table.woocommerce-checkout-review-order-table tfoot tr.order-total{font-size:18px;font-weight:700;padding-top:8px;border-top:.5px solid var(--sep)}
table.woocommerce-checkout-review-order-table tfoot tr.order-total th{font-weight:700}
table.woocommerce-checkout-review-order-table td::before,table.woocommerce-checkout-review-order-table th::before{display:none!important}
#payment{display:contents}
#payment .wc_payment_methods{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
#payment .wc_payment_methods>li{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 26px;gap:4px 14px;align-items:center;padding:14px 18px}
#payment .wc_payment_methods>li+li::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
#payment .wc_payment_methods>li>input[type=radio]{grid-column:2;grid-row:1;appearance:none;-webkit-appearance:none;width:26px;height:26px;margin:0;border-radius:50%;box-shadow:inset 0 0 0 1.6px var(--label3);background:transparent center/15px no-repeat;transition:background .2s,box-shadow .2s}
#payment .wc_payment_methods>li>input[type=radio]:checked{background-color:var(--tint);box-shadow:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
#payment .wc_payment_methods>li>label{grid-column:1;grid-row:1;font-weight:600;font-size:16px;cursor:pointer;display:flex;align-items:center;gap:12px}
#payment .wc_payment_methods>li>label::before{content:"";flex:none;width:30px;height:30px;border-radius:9px;background:var(--tint-soft) center/18px no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394702f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='10' rx='1.5'/%3E%3Ccircle cx='12' cy='12' r='2.4'/%3E%3Cpath d='M6.5 10v4M17.5 10v4'/%3E%3C/svg%3E")}
#payment .wc_payment_methods>li .payment_box{grid-column:1/-1;margin:0;padding:0 0 0 42px;padding-inline-start:42px;color:var(--label2);font-size:14px;line-height:1.7;background:none}
#payment .payment_box p{margin:0}
#payment .payment_box::before{display:none}
#payment .form-row.place-order{display:grid;gap:10px;margin:0;position:sticky;bottom:calc(env(safe-area-inset-bottom,0px) + 10px);z-index:30;padding:8px;border-radius:34px;background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(190%);backdrop-filter:blur(22px) saturate(190%);box-shadow:var(--glass-shadow)}
#payment .woocommerce-terms-and-conditions-wrapper{font-size:12.5px;color:var(--label2);line-height:1.6;padding:6px 12px 0}
#payment .woocommerce-privacy-policy-text p{margin:0}
#payment .woocommerce-privacy-policy-text a{color:var(--tint);text-decoration:underline}
#place_order{display:flex;width:100%;min-height:54px;font-size:17px;float:none}
.woocommerce-form-coupon{display:block;background:var(--surface);border-radius:24px;padding:12px 16px;margin-bottom:14px;box-shadow:var(--card-shadow)}
.woocommerce-form-coupon p{margin:0 0 8px}
.woocommerce-form-coupon .form-row{display:inline-block;width:100%}
.woocommerce-form-coupon .form-row-first{float:none;width:100%}
.woocommerce-form-coupon .form-row-last{float:none;width:100%;margin-top:8px}
.woocommerce-form-coupon .input-text{height:44px;padding:0 16px!important;border-radius:22px!important;background:var(--fill)!important}
.woocommerce-form-coupon .button{width:100%}
.woocommerce-checkout .blockUI.blockOverlay{border-radius:24px;background:color-mix(in srgb,var(--bg) 60%,transparent)!important}
.woocommerce-checkout #payment ul.payment_methods .woocommerce-notice,.woocommerce-checkout #payment .woocommerce-info{background:var(--fill);color:var(--label2)}

/* surprise (free delivery) + cash-on-delivery notes */
.free.ff-surprise-box{margin:0 0 4px}
.free.ff-surprise-box b{display:block;font-size:15px}
.free.ff-surprise-box span{display:block}
.ff-cod{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:18px;background:var(--fill);color:var(--label);font-size:14.5px;line-height:1.6}
.ff-cod .i{margin-top:2px;color:var(--tint)}
.ff-cod p{margin:0}
.ff-cod strong{display:block;font-weight:600}
.ff-cod small{display:block;color:var(--label2);font-size:13.5px}
.wc-proceed-to-checkout .free,.wc-proceed-to-checkout .ff-cod{margin:0}

/* ═════════ Order received ═════════ */
.ff-done{text-align:center;display:grid;justify-items:center;gap:10px;padding:20px 0 6px}
.ff-done svg.big{width:96px;height:96px}
.woocommerce-order{display:grid;gap:22px}
.woocommerce-order>p.woocommerce-notice,.woocommerce-thankyou-order-received{text-align:center;font:700 24px/1.4 var(--font-d);color:var(--label);margin:0;background:none;padding:0;border:0}
.woocommerce-order .woocommerce-notice--error{color:var(--bad)}
ul.woocommerce-order-overview{list-style:none;margin:0;padding:0;display:block;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
ul.woocommerce-order-overview li{position:relative;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:11px 18px;font-size:15px;color:var(--label2);float:none;border:0;margin:0;text-transform:none}
ul.woocommerce-order-overview li+li::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
ul.woocommerce-order-overview li strong{display:block;color:var(--label);font-weight:600;font-size:15.5px;text-align:end}
ul.woocommerce-order-overview li.method{display:none}
.woocommerce-order-details,.woocommerce-customer-details{display:grid;gap:0}
.woocommerce-order-details__title,.woocommerce-column__title,.woocommerce-order-details>h2,.woocommerce-customer-details>h2{font:600 13px/1.4 var(--font);color:var(--label2);padding:0 18px 7px;margin:0}
table.woocommerce-table--order-details{display:block;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
table.woocommerce-table--order-details thead{display:none}
table.woocommerce-table--order-details tbody,table.woocommerce-table--order-details tfoot{display:block}
table.woocommerce-table--order-details tr{position:relative;display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 18px;font-size:15.5px}
table.woocommerce-table--order-details tr+tr::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
table.woocommerce-table--order-details th,table.woocommerce-table--order-details td{padding:0;border:0;text-align:start;font-weight:400}
table.woocommerce-table--order-details td{text-align:end}
table.woocommerce-table--order-details td.woocommerce-table__product-name a{color:var(--label);font-weight:600;text-decoration:none}
table.woocommerce-table--order-details tfoot tr:last-child{font-weight:700}
table.woocommerce-table--order-details .wc-item-meta{display:none}
.woocommerce-customer-details address{display:block;font-style:normal;background:var(--surface);border-radius:24px;padding:14px 18px;line-height:1.8;color:var(--label2);box-shadow:var(--card-shadow)}
.woocommerce-customer-details .col2-set,.woocommerce-customer-details .col-1,.woocommerce-customer-details .col-2{display:block;float:none;width:100%}
.woocommerce-customer-details .woocommerce-columns{display:grid;gap:18px}
.woocommerce-customer-details .woocommerce-customer-details--phone,.woocommerce-customer-details .woocommerce-customer-details--email{margin:8px 0 0;color:var(--label2)}
.woocommerce-order .order-again{display:none}

/* ═════════ My account ═════════ */
.woocommerce-account .woocommerce{display:grid;gap:22px}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow)}
.woocommerce-MyAccount-navigation li{position:relative}
.woocommerce-MyAccount-navigation li+li::before{content:"";position:absolute;top:0;left:0;right:18px;height:.5px;background:var(--sep)}
.woocommerce-MyAccount-navigation a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:11px 18px;font-size:16px;color:var(--label);text-decoration:none}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--tint);font-weight:600}
.woocommerce-MyAccount-content{background:var(--surface);border-radius:24px;padding:18px;line-height:1.8;box-shadow:var(--card-shadow)}
.woocommerce-MyAccount-content a{color:var(--tint);font-weight:600}
.woocommerce-MyAccount-content table.shop_table{display:block;overflow-x:auto}
.woocommerce-MyAccount-content table.shop_table td,.woocommerce-MyAccount-content table.shop_table th{padding:10px 8px;border-bottom:.5px solid var(--sep);text-align:start}
.woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;gap:14px}
.woocommerce-MyAccount-content .woocommerce-Address{float:none;width:100%}
.woocommerce-MyAccount-content .woocommerce-Address-title{display:flex;justify-content:space-between;align-items:center}
.woocommerce-MyAccount-content .woocommerce-Address-title h3{margin:0;padding:0;font-size:17px;color:var(--label)}
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row,.woocommerce-MyAccount-content .woocommerce-address-fields .form-row{margin-bottom:12px;padding:6px 14px;border-radius:16px;background:var(--surface2)}
.woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset{border:0;padding:0;margin:14px 0 0}
.woocommerce-MyAccount-content .woocommerce-EditAccountForm legend{font-weight:600;padding:0;margin-bottom:8px}
.woocommerce-form-login,.woocommerce-form-register,form.lost_reset_password{background:var(--surface);border:0;border-radius:24px;padding:18px;margin:0;display:grid;gap:12px;box-shadow:var(--card-shadow)}
.woocommerce-form-login .form-row,.woocommerce-form-register .form-row,form.lost_reset_password .form-row{display:block;padding:6px 14px;border-radius:16px;background:var(--surface2);margin:0}
.woocommerce-form-login .form-row label,.woocommerce-form-register .form-row label,form.lost_reset_password .form-row label{display:block;font-size:13px;color:var(--label2);margin-bottom:2px}
.woocommerce-form-login .form-row.form-row-wide,.woocommerce-form-register .form-row.form-row-wide{width:100%}
.woocommerce-form-login__rememberme{display:flex!important;align-items:center;gap:8px;background:none!important;padding:0 4px!important}
.woocommerce-form-login .button,.woocommerce-form-register .button,form.lost_reset_password .button{width:100%;min-height:52px}
.woocommerce-LostPassword{text-align:center;margin:4px 0 0}
.woocommerce-LostPassword a{color:var(--tint);font-weight:600}
.woocommerce-account:not(.logged-in) .woocommerce>h2{font:700 24px/1.3 var(--font-d);margin:0}
.woocommerce-account .u-columns{display:grid;gap:22px}
.woocommerce-account .u-columns .u-column1,.woocommerce-account .u-columns .u-column2{float:none;width:100%}

/* ═════════ Mini cart sheet ═════════ */
.sheet .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1;min-height:0}
.sheet .widget_shopping_cart_content .sh-b{flex:1}
.ci a.tl{text-decoration:none}
.ci .pr{display:block}
.ci .stepper.sm output{min-width:0}
.ci.is-busy{opacity:.55;pointer-events:none}
.sheet .sum{margin-bottom:12px}
.sheet .sum .tot{margin-top:2px}
.sheet .sh-f .btn{text-decoration:none}
.sh-f .row2{display:flex;gap:10px}
.sh-f .row2 .btn{flex:1}
.empty .btn{text-decoration:none}
.sheet .free,.sheet .ff-cod{margin-top:12px}
.sheet .free.ff-surprise-box b{display:block}

/* sticky place-order needs a tall containing block on tiny screens */
@media (max-width:360px){#payment .form-row.place-order{border-radius:28px}}
