/* =====================================================================
   IZH Coffee — commerce engine styles (cart drawer, modal, toast, forms)
   Palette tuned to the storefront: warm cream + ink + teal/blue accent.
   ===================================================================== */
:root{
  --izh-cream:#FAF6EE; --izh-cream2:#F2EADA; --izh-ink:#211d18; --izh-ink2:#5c554b;
  --izh-line:#e7ddc9; --izh-accent:#0d6e7a; --izh-accent2:#d9ece7; --izh-gold:#c79a3b;
  --izh-maroon:#5b2233; --izh-accent2-hover:#c3e0d8;
  --izh-ok:#1f8a52; --izh-bad:#c0392b; --izh-shadow:0 24px 60px rgba(40,30,15,.22);
  --izh-r:14px;
  /* ---- PRODUCT CARD tokens — SINGLE control point for every card on the site
     (DB .izh-card, home strip, static-page legacy cards). Change a value here and
     every product card everywhere updates together. ---- */
  --card-bg:#fff;
  --card-line:#e7ddc9;
  --card-line-hover:#dcd0b8;
  --card-radius:16px;
  --card-img-ratio:3/3.9;            /* portrait product shots (900x1200) fill edge-to-edge */
  --card-img-bg:#f5efe3;             /* only visible for the rare non-portrait image */
  --card-title-fg:#211d18;
  --card-add-bg:#0d6e7a;             /* "+ Add" pill */
  --card-add-fg:#fff;
  --card-add-hover-bg:#0a5560;
  --card-buy-fg:#211d18;             /* "Buy it now" outline button */
  --card-buy-border:#211d18;
  --card-buy-hover-bg:#211d18;
  --card-buy-hover-fg:#fff;
  /* ONE font across the whole site: Brandon Grotesque (bold everywhere; weight 800+
     = Black face). Sabbir Sorolota carries only Bengali digits + ৳ via unicode-range.
     --izh-serif keeps its NAME so ~25 consumers auto-switch to Brandon. */
  --izh-f:'Sabbir Sorolota','Brandon Grotesque',-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  --izh-fb:'Sabbir Sorolota','Brandon Grotesque',-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  --izh-fm:'Sabbir Sorolota','Brandon Grotesque',-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  --izh-serif:'Sabbir Sorolota','Brandon Grotesque',sans-serif;
}
.izh-noscroll{overflow:hidden !important;}

/* ---------- buttons ---------- */
.izh-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;cursor:pointer;
  font-family:var(--izh-f);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:13px;
  padding:14px 22px;border-radius:8px;border:1px solid transparent;background:var(--izh-accent2);color:var(--izh-ink);
  text-decoration:none;transition:transform .12s ease,box-shadow .18s ease,background .18s ease,opacity .15s;line-height:1;}
.izh-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(40,30,15,.16);}
/* re-assert text colors on hover: theme.css `a:hover{color:var(--colorTextBody)}` (0,1,1)
   out-specifies single-class buttons and was painting anchor-buttons black-on-black */
a.izh-btn:hover,.izh-btn:hover{color:var(--izh-ink);}
.izh-btn:active{transform:translateY(0);}
.izh-btn--dark{background:var(--izh-ink);color:#fff;}
.izh-btn--dark:hover,a.izh-btn--dark:hover{background:#000;color:#fff;}
.izh-btn--teal{background:var(--izh-accent);color:#fff;}
.izh-btn--teal:hover,a.izh-btn--teal:hover{color:#fff;}
.izh-btn--ghost{background:transparent;border-color:var(--izh-ink);}
.izh-btn--ghost:hover,a.izh-btn--ghost:hover{background:var(--izh-ink);color:#fff;}
.izh-btn--block{display:flex;width:100%;}
.izh-btn[disabled]{opacity:.5;pointer-events:none;}

/* ---------- header cart badge ---------- */
.izh-badge{position:absolute;top:-6px;right:-8px;min-width:18px;height:18px;padding:0 4px;border-radius:10px;
  background:var(--izh-accent);color:#fff;font:700 11px/18px var(--izh-f);text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.25);}

/* ---------- toast ---------- */
.izh-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(10px);z-index:2147483600;
  background:var(--izh-ink);color:#fff;padding:13px 22px;border-radius:10px;font:700 14px/1.4 var(--izh-f);
  box-shadow:var(--izh-shadow);opacity:0;pointer-events:none;transition:opacity .22s,transform .22s;max-width:90vw;text-align:center;}
.izh-toast.is-on{opacity:1;transform:translateX(-50%) translateY(0);}
.izh-toast--bad{background:var(--izh-bad);} .izh-toast--ok{background:var(--izh-ok);}

/* ---------- drawer ---------- */
.izh-drawer{position:fixed;inset:0;z-index:2147483500;visibility:hidden;}
.izh-drawer.is-on{visibility:visible;}
.izh-drawer__backdrop{position:absolute;inset:0;background:rgba(30,22,10,.42);opacity:0;transition:opacity .3s;}
.izh-drawer.is-on .izh-drawer__backdrop{opacity:1;}
.izh-drawer__panel{position:absolute;top:0;right:0;height:100%;width:420px;max-width:92vw;background:var(--izh-cream);
  display:flex;flex-direction:column;box-shadow:var(--izh-shadow);transform:translateX(100%);transition:transform .34s cubic-bezier(.4,0,.1,1);
  font-family:var(--izh-f);color:var(--izh-ink);}
.izh-drawer.is-on .izh-drawer__panel{transform:translateX(0);}
.izh-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 14px;border-bottom:1px solid var(--izh-line);}
.izh-drawer__title{font-weight:700;letter-spacing:.12em;font-size:15px;}
.izh-drawer__x{background:none;border:none;font-size:30px;line-height:1;cursor:pointer;color:var(--izh-ink);padding:0 4px;}
.izh-drawer__scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px 22px 10px;}
.izh-drawer__foot{border-top:1px solid var(--izh-line);padding:16px 22px 20px;background:var(--izh-cream2);}
.izh-foot-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px;font-size:15px;}
.izh-foot-row .izh-sub{font-size:20px;font-weight:700;}
.izh-cart-link{display:block;text-align:center;margin-top:10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--izh-ink2);cursor:pointer;text-decoration:underline;}

/* ship progress */
.izh-ship{padding:0 22px;}
.izh-ship__msg{font-size:13px;padding:12px 0 8px;color:var(--izh-ink2);} .izh-ship__msg b{color:var(--izh-ink);}
.izh-ship__msg--win{color:var(--izh-ok);font-weight:700;}
.izh-ship__bar{height:6px;border-radius:6px;background:var(--izh-line);overflow:hidden;margin-bottom:6px;}
.izh-ship__bar i{display:block;height:100%;background:linear-gradient(90deg,var(--izh-accent),var(--izh-gold));transition:width .4s ease;}

/* lines */
.izh-empty{text-align:center;padding:48px 10px;color:var(--izh-ink2);}
.izh-empty p{margin-bottom:18px;font-size:15px;}
.izh-line{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--izh-line);position:relative;}
.izh-line__img{width:72px;height:84px;border-radius:8px;overflow:hidden;background:#fff;display:block;}
.izh-line__img img{width:100%;height:100%;object-fit:cover;}
.izh-line__title{font-weight:700;font-size:14px;color:var(--izh-ink);text-decoration:none;display:block;line-height:1.3;padding-right:18px;}
.izh-line__var{font-size:12px;color:var(--izh-ink2);margin-top:3px;}
.izh-line__props{font-size:11px;color:var(--izh-ink2);margin-top:3px;display:flex;flex-direction:column;gap:1px;}
.izh-line__bot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;}
.izh-line__price{font-weight:700;font-size:14px;}
.izh-line__rm{position:absolute;top:14px;right:0;background:none;border:none;font-size:20px;line-height:1;cursor:pointer;color:var(--izh-ink2);}
.izh-line__rm:hover{color:var(--izh-bad);}
.izh-qty{display:inline-flex;align-items:center;border:1px solid var(--izh-line);border-radius:8px;overflow:hidden;background:#fff;}
.izh-qty__b{width:30px;height:30px;border:none;background:none;font-size:17px;cursor:pointer;color:var(--izh-ink);}
.izh-qty__b:hover{background:var(--izh-cream2);}
.izh-qty__n{min-width:30px;text-align:center;font-weight:700;font-size:14px;}

/* recommendations */
.izh-reco{margin:22px 0 6px;}
.izh-reco h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--izh-ink2);margin:0 0 12px;font-weight:700;}
.izh-reco__row{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;}
.izh-reco__row::-webkit-scrollbar{display:none;}
.izh-reco__card{min-width:124px;width:124px;background:#fff;border:1px solid var(--izh-line);border-radius:10px;padding:8px;text-align:center;}
.izh-reco__card img{width:100%;height:96px;object-fit:cover;border-radius:6px;}
.izh-reco__t{display:block;font-size:11.5px;color:var(--izh-ink);text-decoration:none;margin:6px 0 2px;line-height:1.25;height:29px;overflow:hidden;}
.izh-reco__p{font-weight:700;font-size:12.5px;margin-bottom:6px;}
.izh-reco__add{width:100%;border:1px solid var(--izh-ink);background:#fff;color:var(--izh-ink);border-radius:6px;padding:6px;
  font:700 11px var(--izh-f);letter-spacing:.06em;cursor:pointer;transition:.15s;}
.izh-reco__add:hover{background:var(--izh-ink);color:#fff;}

/* ---------- modal ---------- */
.izh-modal{position:fixed;inset:0;z-index:2147483550;display:flex;align-items:center;justify-content:center;padding:20px;visibility:hidden;}
.izh-modal.is-on{visibility:visible;}
.izh-modal__backdrop{position:absolute;inset:0;background:rgba(30,22,10,.5);opacity:0;transition:opacity .25s;}
.izh-modal.is-on .izh-modal__backdrop{opacity:1;}
.izh-modal__panel{position:relative;background:var(--izh-cream);border-radius:var(--izh-r);max-width:520px;width:100%;max-height:88vh;
  overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-shadow:var(--izh-shadow);
  transform:translateY(16px) scale(.98);opacity:0;transition:transform .26s,opacity .26s;font-family:var(--izh-f);color:var(--izh-ink);}
.izh-modal.is-on .izh-modal__panel{transform:none;opacity:1;}
.izh-modal__x{position:absolute;top:12px;right:14px;background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:var(--izh-ink2);z-index:2;}
.izh-modal__body{padding:30px 30px 32px;}

/* ---------- shared form bits (login/checkout/admin) ---------- */
.izh-field{margin-bottom:16px;}
.izh-field label{display:block;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--izh-ink2);margin-bottom:6px;}
.izh-input,.izh-select,.izh-textarea{width:100%;padding:13px 14px;border:1px solid var(--izh-line);border-radius:8px;background:#fff;
  font:700 15px var(--izh-f);color:var(--izh-ink);}
.izh-input:focus,.izh-select:focus,.izh-textarea:focus{outline:none;border-color:var(--izh-accent);box-shadow:0 0 0 3px rgba(13,110,122,.12);}

/* ---------- auth pages (login / register / forgot) ---------- */
.izh-auth-wrap{background:var(--izh-cream);padding:70px 20px 40px;min-height:54vh;display:flex;justify-content:center;}
.izh-auth-card{width:100%;max-width:540px;text-align:center;}
.izh-auth-h{font-family:var(--izh-serif);font-weight:800;font-size:clamp(40px,6vw,72px);line-height:1.05;margin:0 0 34px;color:var(--izh-ink);letter-spacing:.5px;}
.izh-auth-form{display:flex;flex-direction:column;gap:16px;text-align:left;}
.izh-auth-in{width:100%;padding:17px 18px;border:1px solid #cbb9a0;border-radius:2px;background:#fff;font:700 14px/1 var(--izh-f);
  letter-spacing:.08em;color:var(--izh-ink);text-transform:uppercase;}
.izh-auth-in::placeholder{color:#9b8e7a;letter-spacing:.1em;}
.izh-auth-in:focus{outline:none;border-color:var(--izh-accent);box-shadow:0 0 0 3px rgba(13,110,122,.12);}
.izh-auth-btn{align-self:center;margin-top:8px;min-width:180px;padding:15px 34px;border:none;cursor:pointer;background:var(--izh-accent2);
  color:var(--izh-ink);font:700 13px var(--izh-f);letter-spacing:.14em;text-transform:uppercase;border-radius:2px;transition:.18s;}
.izh-auth-btn:hover{background:var(--izh-accent2-hover);transform:translateY(-1px);}
.izh-auth-links{margin:26px 0 6px;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:15px;}
.izh-auth-links a{color:var(--izh-ink);text-decoration:none;border-bottom:1px solid transparent;transition:.15s;}
.izh-auth-links a:hover{border-color:var(--izh-ink);}
.izh-auth-links span{color:#b8a98f;}
.izh-auth-note{margin-top:34px;font-size:14px;color:var(--izh-ink2);}
.izh-auth-err{display:none;background:#fdecea;border:1px solid #f1b0a8;color:var(--izh-bad);padding:11px 14px;border-radius:6px;font-size:13.5px;text-transform:none;letter-spacing:0;}
.izh-auth-msg{display:none;background:#eafaf0;border:1px solid #aee0c2;color:var(--izh-ok);padding:11px 14px;border-radius:6px;font-size:13.5px;}
.izh-auth-hills{position:relative;width:100%;line-height:0;background:var(--izh-cream);}
.izh-hills-svg{width:100%;height:clamp(160px,22vw,300px);display:block;}

/* ---------- standalone commerce pages ---------- */
.izh-pg{max-width:1180px;margin:0 auto;padding:48px 22px 70px;font-family:var(--izh-f);color:var(--izh-ink);}
.izh-pg__h{font-family:var(--izh-serif);font-weight:800;font-size:clamp(30px,4.4vw,52px);margin:0 0 26px;}
.izh-muted{color:var(--izh-ink2);} .izh-pos{color:var(--izh-ok);font-weight:700;} .izh-neg{color:var(--izh-bad);font-weight:700;}
.izh-link{background:none;border:none;color:var(--izh-accent);cursor:pointer;font:inherit;text-decoration:underline;padding:0;}

/* cart page */
.izh-cartpg__grid{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start;}
.izh-crow{display:grid;grid-template-columns:84px 1fr auto auto auto;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--izh-line);}
.izh-crow__img{width:84px;height:96px;border-radius:8px;overflow:hidden;background:#fff;}
.izh-crow__img img{width:100%;height:100%;object-fit:cover;}
.izh-crow__imgph{width:84px;height:96px;border-radius:8px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(150deg,#fdfaf2,#f1e4c8);border:1px solid #e8dcbf;color:var(--izh-accent);
  font-family:var(--izh-fb);font-weight:800;font-size:11px;letter-spacing:.18em;}
.izh-crow__t{font-weight:700;color:var(--izh-ink);text-decoration:none;}
.izh-crow__v{font-size:12.5px;color:var(--izh-ink2);margin-top:2px;}
.izh-crow__price-m{font-size:12.5px;color:var(--izh-ink2);margin-top:4px;}
.izh-crow__lp{font-weight:700;}
.izh-crow__rm{background:none;border:none;font-size:22px;color:var(--izh-ink2);cursor:pointer;}
.izh-crow__rm:hover{color:var(--izh-bad);}
.izh-cartpg__side,.izh-checkout__side{background:var(--izh-cream2);border:1px solid var(--izh-line);border-radius:var(--izh-r);padding:22px;}
.izh-cartpg__side h3,.izh-checkout__side h3,.izh-acc__body h3{font-family:var(--izh-serif);font-weight:800;font-size:22px;margin:0 0 16px;}

/* summary + promo */
.izh-sum{margin:14px 0 18px;}
.izh-sum__row{display:flex;justify-content:space-between;padding:7px 0;font-size:14.5px;}
.izh-sum__row--disc{color:var(--izh-ok);}
.izh-sum__total{border-top:1px solid var(--izh-line);margin-top:6px;padding-top:12px;font-size:18px;font-weight:700;}
.izh-promo{margin-bottom:10px;}
.izh-promo__row{display:flex;gap:8px;margin-bottom:10px;}
.izh-promo__row .izh-input{flex:1;padding:10px 12px;}
.izh-promo__row .izh-btn{padding:10px 16px;font-size:12px;}
.izh-promo__pts{display:flex;gap:8px;align-items:center;font-size:13.5px;color:var(--izh-ink2);cursor:pointer;}
.izh-promo__msg{color:var(--izh-bad);font-size:12.5px;margin-top:4px;}

/* checkout */
.izh-checkout__grid{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start;}
.izh-checkout__form h3,.izh-checkout__side h3{font-family:var(--izh-serif);font-weight:800;font-size:22px;margin:8px 0 16px;}
.izh-guestbar{background:var(--izh-accent2);border-radius:8px;padding:12px 16px;margin-bottom:22px;font-size:14px;}
.izh-guestbar a{color:var(--izh-accent);font-weight:700;}
.izh-2col{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.izh-pms{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;}
.izh-pm{display:flex;align-items:center;gap:12px;border:1px solid var(--izh-line);border-radius:10px;padding:14px 16px;cursor:pointer;background:#fff;transition:.15s;}
.izh-pm:hover{border-color:var(--izh-accent);}
.izh-pm input{accent-color:var(--izh-accent);width:18px;height:18px;}
.izh-pm__b{display:flex;flex-direction:column;} .izh-pm__b small{color:var(--izh-ink2);font-size:12.5px;margin-top:2px;}
.izh-pm-extra{margin-bottom:8px;} .izh-bankbox{background:var(--izh-cream2);border-radius:8px;padding:12px 14px;font-size:13.5px;}
.izh-place{margin-top:8px;}
.izh-co-items{margin-bottom:14px;}
.izh-co-item{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--izh-line);font-size:13.5px;}
.izh-co-item img{width:46px;height:54px;object-fit:cover;border-radius:6px;background:#fff;}
.izh-co-item div{flex:1;display:flex;flex-direction:column;} .izh-co-item small{color:var(--izh-ink2);}

/* confirmation */
.izh-conf{max-width:760px;text-align:center;}
.izh-conf__tick{width:64px;height:64px;border-radius:50%;background:var(--izh-ok);color:#fff;font-size:34px;line-height:64px;margin:0 auto 18px;}
.izh-conf__sub{font-size:16px;color:var(--izh-ink2);margin-bottom:26px;}
.izh-conf__card{text-align:left;background:var(--izh-cream2);border:1px solid var(--izh-line);border-radius:var(--izh-r);padding:24px;}
.izh-conf__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:18px;}
.izh-conf__cols h4{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--izh-ink2);margin:0 0 6px;}
.izh-conf__cols p{font-size:14px;line-height:1.5;}
.izh-conf__actions{display:flex;gap:12px;justify-content:center;margin-top:26px;flex-wrap:wrap;}

/* account dashboard */
.izh-acc__top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.izh-acc__nav{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--izh-line);margin:18px 0 28px;}
.izh-acc__tab{padding:11px 18px;text-decoration:none;color:var(--izh-ink2);font-weight:700;font-size:14px;border-bottom:2px solid transparent;margin-bottom:-1px;}
.izh-acc__tab.is-on{color:var(--izh-ink);border-color:var(--izh-accent);}
.izh-acc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;}
.izh-acc-card{background:var(--izh-cream2);border:1px solid var(--izh-line);border-radius:var(--izh-r);padding:20px;display:flex;flex-direction:column;gap:4px;}
.izh-acc-card span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--izh-ink2);}
.izh-acc-card b{font-size:30px;font-family:var(--izh-serif);font-weight:800;}
.izh-acc-card small{color:var(--izh-ink2);} .izh-acc-card--wide{margin-bottom:24px;}
.izh-tbl{width:100%;border-collapse:collapse;font-size:14px;}
.izh-tbl th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--izh-ink2);padding:10px 12px;border-bottom:1px solid var(--izh-line);}
.izh-tbl td{padding:12px;border-bottom:1px solid var(--izh-line);vertical-align:middle;}
.izh-tbl code{background:var(--izh-cream2);padding:2px 6px;border-radius:4px;font-size:12.5px;}
.izh-status{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11.5px;font-weight:700;background:#eee;}
.izh-status--pending{background:#fdf0d5;color:#9a6b00;} .izh-status--processing{background:#dbeafe;color:#1d4ed8;}
.izh-status--shipped{background:#e0e7ff;color:#4338ca;} .izh-status--delivered{background:#dcfce7;color:#15803d;} .izh-status--cancelled{background:#fee2e2;color:#b91c1c;}
.izh-acc-filter{margin-bottom:16px;} .izh-acc-filter select{padding:8px 12px;border:1px solid var(--izh-line);border-radius:8px;background:#fff;}
.izh-ref-hero{background:linear-gradient(120deg,var(--izh-accent2),#e7f5ee);border-radius:var(--izh-r);padding:24px;margin-bottom:24px;}
.izh-ref-code{display:flex;gap:12px;align-items:center;margin-top:14px;flex-wrap:wrap;}
.izh-ref-code span{font-size:22px;font-weight:700;letter-spacing:.1em;background:#fff;padding:10px 20px;border-radius:8px;border:1px dashed var(--izh-accent);}
.izh-addr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-bottom:24px;}
.izh-addr{background:var(--izh-cream2);border:1px solid var(--izh-line);border-radius:10px;padding:16px;display:flex;justify-content:space-between;gap:10px;}
.izh-addr p{font-size:13.5px;color:var(--izh-ink2);margin-top:6px;line-height:1.5;}
.izh-tag{background:var(--izh-accent);color:#fff;font-size:10px;padding:2px 7px;border-radius:10px;vertical-align:middle;}

/* product traceability */
.izh-trace{background:var(--izh-cream2);border:1px solid var(--izh-line);border-radius:var(--izh-r);padding:20px 22px;margin:22px 0;}
.izh-trace__h{font-family:var(--izh-serif);font-weight:800;font-size:20px;margin:0 0 14px;}
.izh-trace__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;}
.izh-trace__cell{display:flex;flex-direction:column;gap:3px;}
.izh-trace__cell span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--izh-ink2);}
.izh-trace__cell b{font-size:14px;font-weight:700;}
.izh-trace__fresh{grid-column:1/-1;border-top:1px solid var(--izh-line);padding-top:12px;}

@media(max-width:880px){
  .izh-cartpg__grid,.izh-checkout__grid{grid-template-columns:1fr;}
  .izh-conf__cols{grid-template-columns:1fr;}
  .izh-acc-cards{grid-template-columns:1fr;}
}
@media(max-width:480px){
  .izh-drawer__panel{width:100%;}
  .izh-modal__body{padding:26px 20px 28px;}
  .izh-auth-wrap{padding:48px 18px 30px;}
  .izh-2col{grid-template-columns:1fr;}
  .izh-crow{grid-template-columns:64px 1fr auto;grid-template-areas:'img main lp' 'img qty rm';row-gap:8px;}
  .izh-crow__img{grid-area:img;width:64px;height:74px;} .izh-crow__main{grid-area:main;} .izh-qty{grid-area:qty;} .izh-crow__lp{grid-area:lp;} .izh-crow__rm{grid-area:rm;}
  .izh-tbl--orders thead{display:none;}
  .izh-tbl--orders tr{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:10px 0;border-bottom:1px solid var(--izh-line);}
  .izh-tbl--orders td{border:none;padding:3px 6px;}
}

/* ===== typography correction — align to storefront theme (Brandon Grotesque weights + Cormorant) =====
   Brandon Grotesque ships as separate @font-face families per weight, so faux font-weight
   bolding is avoided by pointing bold/medium elements at the real weight families. */
.izh-btn,.izh-auth-btn,.izh-badge,.izh-drawer__title,.izh-sum__total,.izh-sum__total span,
.izh-line__price,.izh-crow__lp,.izh-crow__t,.izh-reco__add,.izh-reco__p,.izh-tbl th,.izh-status,
.izh-acc__tab,.izh-foot-row .izh-sub,.izh-pm__b b,.izh-tag,.izh-co-item b,.izh-ref-code span,
.izh-line__title,.izh-crow__lp,.izh-place,.izh-checkout-btn{font-family:var(--izh-fb);}
.izh-acc-card span,.izh-field label,.izh-trace__cell span,.izh-reco h3,.izh-drawer__title,
.izh-promo__pts,.izh-ship__msg b,.izh-auth-in,.izh-co-item small{font-family:var(--izh-fm);}
/* headings use Cormorant (theme serif); a touch smaller so they sit in the theme's scale */
.izh-auth-h{font-size:clamp(38px,5vw,60px);font-weight:800;}
.izh-pg__h{font-weight:800;}
.izh-acc-card b,.izh-trace__h,.izh-cartpg__side h3,.izh-checkout__side h3,.izh-acc__body h3,
.izh-checkout__form h3{font-family:var(--izh-serif);font-weight:800;}

/* ----- checkout payment-method logos (real brand assets) ----- */
.izh-pm__b{flex:1;}
.izh-pm__logo{display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.izh-pm__logo img{height:24px;width:auto;max-width:62px;object-fit:contain;display:block;}
.izh-pm__logo img[alt="bKash"]{height:26px;} .izh-pm__logo img[alt="Nagad"]{height:24px;}
.izh-pm__logo img[alt="Visa"]{height:15px;} .izh-pm__logo img[alt="Mastercard"]{height:26px;}
.izh-pm__logo svg{flex:0 0 auto;}

/* ===================== Laravel storefront styles =====================
   NOTE: the static home sections carry class="izh-section" (renamed legacy
   wrappers) — so the centered-content utility is named .izh-wrap to never
   collide with them (the old .izh-section rule squeezed the whole home page). */
.izh-wrap{max-width:1280px;margin:0 auto;padding:46px 22px;}
.izh-wrap--alt{background:var(--izh-cream);}
.izh-wrap__h{font-family:var(--izh-serif);font-weight:800;font-size:clamp(26px,3.5vw,40px);text-align:center;margin:0 0 28px;color:var(--izh-ink);}
.izh-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
/* (v1 duplicate .izh-card rules removed — the single canonical card block lives below,
   marked "PRODUCT CARD — SINGLE SOURCE OF TRUTH") */
.izh-pager{margin-top:30px;}
.izh-coll{display:grid;grid-template-columns:230px 1fr;gap:30px;align-items:start;}
.izh-coll__bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-family:var(--izh-fb);font-size:14px;}
.izh-coll .collection-sidebar__group{margin-bottom:20px;}
.izh-coll .tag-list__header{font-family:var(--izh-fb);text-transform:uppercase;letter-spacing:.06em;font-size:13px;margin-bottom:10px;}
.izh-coll .tag__checkbox-wrapper{display:flex;align-items:center;gap:8px;padding:5px 0;cursor:pointer;font-size:14px;}
.izh-product__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,4vw,52px);align-items:start;}
.izh-product__desc{color:var(--izh-ink2);font-size:15px;line-height:1.6;margin:14px 0 20px;}
.izh-product__buy{display:flex;gap:10px;align-items:stretch;margin-top:14px;}
.izh-qtyinput{width:74px;min-width:0;text-align:center;}
.izh-eyebrow{font-family:var(--izh-fb);letter-spacing:.12em;text-transform:uppercase;font-size:12px;color:var(--izh-accent);}
.izh-gc__grid,.izh-box__grid{display:grid;grid-template-columns:1fr 400px;gap:clamp(22px,3.4vw,40px);align-items:start;}
.izh-box__grid{grid-template-columns:1fr 320px;}
.izh-gc__head{text-align:center;margin-bottom:clamp(18px,2.6vw,30px);}
.izh-gc__amts{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap;}
.izh-gc__amt{padding:9px 16px;border:1px solid var(--izh-line);background:#fff;border-radius:8px;font-family:var(--izh-fb);cursor:pointer;transition:border-color .15s,background .15s;}
.izh-gc__amt:hover{border-color:var(--izh-accent);}
.izh-gc__amt.is-on{border-color:var(--izh-accent);background:var(--izh-accent2);}
.izh-gc__note{font-size:12.5px;color:var(--izh-ink2);line-height:1.55;margin:12px 0 0;}
/* premium LIGHT gift card: cream base, gold foil edge, brand logo, low-key motif */
.izh-gc__card{position:relative;overflow:hidden;aspect-ratio:1.586;background:linear-gradient(150deg,#fdfaf2 0%,#f7eeda 58%,#f1e4c8 100%);
  color:var(--izh-ink);border-radius:18px;padding:22px 24px;display:flex;flex-direction:column;justify-content:space-between;
  border:1px solid #e8dcbf;box-shadow:0 18px 40px rgba(64,48,22,.16),0 2px 6px rgba(64,48,22,.08);}
.izh-gc__foil{position:absolute;inset:auto 0 0 0;height:5px;background:linear-gradient(90deg,#a97e2f,#e6c274 30%,#c79a3b 55%,#f0d391 80%,#a97e2f);}
.izh-gc__row{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:1;}
.izh-gc__row--bot{align-items:flex-end;}
.izh-gc__logo{height:44px;width:auto;flex:0 0 auto;}
.izh-gc__tag{font-family:var(--izh-fb);font-weight:800;font-size:11px;letter-spacing:.26em;color:var(--izh-accent);
  border:1.5px solid var(--izh-accent);border-radius:20px;padding:6px 12px 5px;white-space:nowrap;}
.izh-gc__val{position:relative;z-index:1;font-family:var(--izh-fb);letter-spacing:.18em;font-size:11px;color:var(--izh-ink2);}
.izh-gc__val b{display:block;font-family:var(--izh-fb);font-weight:800;font-size:clamp(30px,3vw,40px);letter-spacing:.01em;color:var(--izh-ink);margin-top:2px;}
.izh-gc__code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;letter-spacing:.14em;color:var(--izh-ink2);}
.izh-gc__to{font-family:var(--izh-fb);font-size:12.5px;color:var(--izh-accent);max-width:46%;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.izh-gc__art{position:absolute;right:-26px;bottom:-20px;width:150px;height:150px;opacity:.12;pointer-events:none;}
.izh-gc__points{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:9px;}
.izh-gc__points li{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--izh-ink2);}
.izh-gc__points svg{flex:0 0 auto;color:var(--izh-accent);}
.izh-gc__insp{margin-top:clamp(30px,4.5vw,52px);text-align:center;}
.izh-gc__insp-sub{margin:-16px 0 20px;}
.izh-gc__insp-sub a{color:var(--izh-accent);}
.izh-gc__insp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;}
.izh-gc__insp-tile{display:block;border-radius:12px;overflow:hidden;background:var(--card-img-bg);aspect-ratio:3/4;}
.izh-gc__insp-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.izh-gc__insp-tile:hover img{transform:scale(1.05);}
@media(max-width:900px){.izh-gc__insp-grid{grid-template-columns:repeat(3,1fr);gap:9px;}}
.izh-gc-success{background:#eafaf0;border:1px solid #aee0c2;color:var(--izh-ok);padding:12px 16px;border-radius:8px;margin-bottom:18px;}
/* 404 (renders inside the full layout so shoppers keep the navbar + footer) */
.izh-nf{text-align:center;padding:clamp(40px,8vh,90px) 22px;}
.izh-nf__code{display:block;font-family:var(--izh-fb);font-weight:800;font-size:clamp(64px,10vw,96px);letter-spacing:.04em;color:var(--izh-accent);line-height:1;}
.izh-nf__h{font-family:var(--izh-fb);font-weight:800;font-size:clamp(20px,3vw,28px);margin:12px 0 6px;}
.izh-nf__p{color:var(--izh-ink2);font-size:14px;margin:0 0 22px;}
.izh-nf__cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.izh-box__hero{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:clamp(18px,2.6vw,28px);}
.izh-box__hero-tile{border-radius:12px;overflow:hidden;background:var(--card-img-bg);aspect-ratio:16/9;}
.izh-box__hero-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.izh-box__hero-tile:hover img{transform:scale(1.05);}
@media(max-width:900px){.izh-box__hero{grid-template-columns:repeat(2,1fr);gap:9px;}}
.izh-box-row{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--izh-line);font-size:13.5px;}
.izh-box-row .izh-qty{border:1px solid var(--izh-line);border-radius:6px;}.izh-box-row .izh-qty button{width:24px;border:none;background:none;cursor:pointer;font-size:15px;}
.izh-box__side,.izh-gc__preview{position:sticky;top:20px;}
@media(max-width:900px){.izh-grid{grid-template-columns:repeat(2,1fr);}.izh-product__grid{grid-template-columns:1fr;}.izh-gc__grid,.izh-box__grid{grid-template-columns:1fr;}}

/* ===================== FAQ chatbot widget ===================== */
.izh-chat{position:fixed;right:20px;bottom:20px;z-index:2147483300;font-family:var(--izh-f);color:var(--izh-ink);}
.izh-chat__launch{width:58px;height:58px;border-radius:50%;border:none;cursor:pointer;background:var(--izh-accent);color:#fff;
  box-shadow:0 10px 26px rgba(13,110,122,.4);display:flex;align-items:center;justify-content:center;transition:transform .18s,box-shadow .2s;position:relative;}
.izh-chat__launch:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 14px 32px rgba(13,110,122,.5);}
.izh-chat__launch svg{width:26px;height:26px;position:absolute;transition:opacity .2s,transform .25s;}
.izh-chat__ic-x{opacity:0;transform:rotate(-90deg) scale(.6);}
.izh-chat.is-open .izh-chat__ic-chat{opacity:0;transform:rotate(90deg) scale(.6);}
.izh-chat.is-open .izh-chat__ic-x{opacity:1;transform:none;}
.izh-chat__panel{position:absolute;right:0;bottom:74px;width:360px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 120px);
  background:var(--izh-cream);border-radius:18px;box-shadow:var(--izh-shadow);display:flex;flex-direction:column;overflow:hidden;
  opacity:0;visibility:hidden;transform:translateY(16px) scale(.96);transform-origin:bottom right;transition:opacity .24s,transform .24s,visibility .24s;}
.izh-chat.is-open .izh-chat__panel{opacity:1;visibility:visible;transform:none;}
.izh-chat__head{display:flex;align-items:center;gap:12px;padding:16px 18px;background:linear-gradient(135deg,var(--izh-accent),#0a5560);color:#fff;}
.izh-chat__avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;
  font-family:var(--izh-serif);font-size:17px;font-weight:700;letter-spacing:.04em;flex:0 0 auto;}
.izh-chat__id{flex:1;display:flex;flex-direction:column;line-height:1.25;}
.izh-chat__id strong{font-family:var(--izh-fb);font-size:14.5px;}
.izh-chat__id small{font-size:11.5px;opacity:.85;}
.izh-chat__close{background:none;border:none;color:#fff;font-size:26px;line-height:1;cursor:pointer;opacity:.85;padding:0 2px;}
.izh-chat__close:hover{opacity:1;}
.izh-chat__body{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:18px 16px 8px;display:flex;flex-direction:column;gap:10px;}
.izh-chat__msg{max-width:84%;padding:11px 14px;border-radius:14px;font-size:13.8px;line-height:1.5;}
.izh-chat__msg a{color:var(--izh-accent);font-weight:700;}
.izh-chat__msg--bot{align-self:flex-start;background:#fff;border:1px solid var(--izh-line);border-bottom-left-radius:4px;}
.izh-chat__msg--user{align-self:flex-end;background:var(--izh-accent);color:#fff;border-bottom-right-radius:4px;}
.izh-chat__msg--user a{color:#fff;}
.izh-chat__typing{display:inline-flex;gap:4px;padding:2px 0;}
.izh-chat__typing i{width:7px;height:7px;border-radius:50%;background:#b9ad97;animation:izhBlink 1.1s infinite both;}
.izh-chat__typing i:nth-child(2){animation-delay:.18s;} .izh-chat__typing i:nth-child(3){animation-delay:.36s;}
@keyframes izhBlink{0%,80%,100%{opacity:.3;transform:translateY(0);}40%{opacity:1;transform:translateY(-3px);}}
.izh-chat__chips{display:flex;flex-wrap:wrap;gap:7px;padding:6px 16px 10px;}
.izh-chat__chip{background:var(--izh-accent2);border:none;border-radius:16px;padding:7px 12px;font-family:var(--izh-fm);font-size:12px;
  color:var(--izh-ink);cursor:pointer;transition:.15s;}
.izh-chat__chip:hover{background:var(--izh-accent2-hover);}
.izh-chat__form{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--izh-line);background:var(--izh-cream2);}
.izh-chat__input{flex:1;min-width:0;border:1px solid var(--izh-line);border-radius:22px;padding:11px 16px;font:700 14px var(--izh-f);background:#fff;color:var(--izh-ink);}
.izh-chat__input:focus{outline:none;border-color:var(--izh-accent);box-shadow:0 0 0 3px rgba(13,110,122,.12);}
.izh-chat__send{position:relative;width:42px;height:42px;flex:0 0 auto;border:none;border-radius:50%;background:var(--izh-accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;}
.izh-chat__send:hover{background:#0a5560;}
.izh-chat__send svg{width:19px;height:19px;transition:opacity .15s;}
/* "thinking" state: while the bot is working the paper-plane fades out and a ring spins */
.izh-chat__send.is-thinking{background:var(--izh-accent);cursor:default;}
.izh-chat__send.is-thinking:hover{background:var(--izh-accent);}
.izh-chat__send.is-thinking svg{opacity:0;}
.izh-chat__send.is-thinking::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;
  border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:izhSpin .62s linear infinite;}
@keyframes izhSpin{to{transform:rotate(360deg);}}
@media(max-width:480px){
  .izh-chat{right:14px;bottom:14px;}
  .izh-chat__panel{width:calc(100vw - 28px);height:min(72vh,520px);bottom:70px;}
}

/* hide removed Package-3 product cards still hard-coded in static storefront pages
   (capsules + capsule machine, workshops/tastings, producer-series event, sharing-room bookings) */
.grid-product[data-product-handle*="capsule"],
.grid-product[data-product-handle*="sharing-room"],
.grid-product[data-product-handle*="workshop"],
.grid-product[data-product-handle*="coffee-tasting-11"],
.grid-product[data-product-handle*="manual-brew-fundamentals"],
.grid-product[data-product-handle*="producer-series-26"],
.grid-product[data-product-handle="maven-capsule-machine"]{display:none !important;}

/* ===================== collection page (DB-driven, AJAX filters) ===================== */
.izh-coll-pg{max-width:1280px;padding-top:30px;}
.izh-crumb{display:flex;gap:8px;align-items:center;font-family:var(--izh-fm);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;color:var(--izh-ink2);margin-bottom:10px;}
.izh-crumb a{color:var(--izh-ink2);text-decoration:none;}
.izh-crumb a:hover{color:var(--izh-accent);}
.izh-coll-pg .izh-pg__h{margin-bottom:20px;}

.izh-coll{display:grid;grid-template-columns:248px 1fr;gap:34px;align-items:start;}
.izh-coll--nofilter{grid-template-columns:1fr;}

/* sidebar (the "left navbar" filter). On desktop it PINS while it fits the viewport,
   but a tall filter list (roast+flavour+processing+price+availability all open can run
   ~1200px, well past the viewport) must never be clipped: so we cap the pinned height to
   the viewport and let the panel's OWN smooth scroll reveal every group + the Apply row —
   nothing is ever cut off, and it never pushes past the screen edge on first paint. */
.izh-coll__side{position:sticky;top:90px;align-self:start;max-height:calc(100vh - 108px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  background:#fff;border:1px solid var(--izh-line);border-radius:16px;padding:4px 16px 14px;
  box-shadow:0 6px 22px rgba(40,30,15,.06);scrollbar-width:thin;scrollbar-color:#d9cdb6 transparent;
  scroll-behavior:smooth;}
.izh-coll__side::-webkit-scrollbar{width:9px;}
.izh-coll__side::-webkit-scrollbar-track{background:transparent;margin:8px 0;}
.izh-coll__side::-webkit-scrollbar-thumb{background:#ddd2bd;border-radius:20px;border:2.5px solid #fff;}
.izh-coll__side:hover::-webkit-scrollbar-thumb{background:#c6b89c;}
.izh-coll__side::-webkit-scrollbar-thumb:hover{background:var(--izh-accent);}
/* sticky in-panel header so the user always sees "Filters" while scrolling (desktop) */
.izh-side__head{display:flex;align-items:center;gap:8px;position:sticky;top:0;z-index:2;background:#fff;
  margin:0 -16px 4px;padding:14px 16px 12px;border-bottom:1px solid var(--izh-line);}
.izh-side__head svg{width:16px;height:16px;flex:0 0 auto;color:var(--izh-accent);}
.izh-side__head strong{font-family:var(--izh-fb);text-transform:uppercase;letter-spacing:.1em;font-size:12.5px;color:var(--izh-ink);}
.izh-side__count{margin-left:auto;font-family:var(--izh-fm);font-size:11px;color:#fff;background:var(--izh-accent);border-radius:20px;padding:2px 9px;min-width:20px;text-align:center;}
.izh-side__count[data-n="0"]{display:none;}
.izh-side__top{display:none;align-items:center;justify-content:space-between;margin-bottom:14px;}
.izh-side__title{font-family:var(--izh-serif);font-weight:800;font-size:24px;}
.izh-side__close{background:none;border:none;font-size:30px;line-height:1;cursor:pointer;color:var(--izh-ink);}
.izh-filter-form{display:flex;flex-direction:column;}
.izh-side__apply{display:none;margin-top:14px;}

.izh-fgroup{border-bottom:1px solid var(--izh-line);}
.izh-fgroup__head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:none;border:none;cursor:pointer;
  padding:14px 2px;font-family:var(--izh-fb);text-transform:uppercase;letter-spacing:.06em;font-size:12.5px;color:var(--izh-ink);}
.izh-fgroup__chev{width:14px;height:10px;flex:0 0 auto;transition:transform .25s;color:var(--izh-ink2);}
.izh-fgroup.is-open .izh-fgroup__chev{transform:rotate(180deg);}
.izh-fgroup__body{overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .2s;padding:0 2px;}
.izh-fgroup.is-open .izh-fgroup__body{max-height:700px;opacity:1;padding-bottom:12px;}

.izh-flt-row{position:relative;display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer;font-size:14px;color:var(--izh-ink2);user-select:none;}
.izh-flt-row:hover{color:var(--izh-ink);}
.izh-flt-row input{position:absolute;opacity:0;width:0;height:0;}
.izh-flt-box{width:18px;height:18px;border:1.5px solid #c3b69c;border-radius:4px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;transition:.15s;background:#fff;}
.izh-flt-box::after{content:"";width:10px;height:10px;border-radius:2px;background:var(--izh-accent);transform:scale(0);transition:transform .15s;}
.izh-flt-row input:checked+.izh-flt-box{border-color:var(--izh-accent);}
.izh-flt-row input:checked+.izh-flt-box::after{transform:scale(1);}
.izh-flt-row input:focus-visible+.izh-flt-box{box-shadow:0 0 0 3px rgba(13,110,122,.2);}
.izh-flt-label{line-height:1.25;}

.izh-price{display:flex;align-items:center;gap:8px;margin:4px 0 12px;}
.izh-price .izh-input{padding:9px 10px;font-size:14px;}
.izh-price__dash{color:var(--izh-ink2);}
.izh-price-go{padding:8px 16px;font-size:11px;}

/* main column */
.izh-coll__bar{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--izh-line);}
.izh-coll__filterbtn{display:none;align-items:center;gap:8px;background:#fff;border:1px solid var(--izh-ink);border-radius:8px;padding:9px 16px;
  font-family:var(--izh-fb);text-transform:uppercase;letter-spacing:.05em;font-size:12px;cursor:pointer;color:var(--izh-ink);margin-right:auto;}
.izh-coll__filterbtn svg{width:18px;height:18px;flex:0 0 auto;}
.izh-coll__sort{display:flex;align-items:center;gap:10px;font-family:var(--izh-fm);font-size:13px;color:var(--izh-ink2);}
.izh-coll__sort label{text-transform:uppercase;letter-spacing:.06em;font-size:11.5px;}
.izh-coll__sort .izh-select{width:auto;min-width:182px;padding:9px 30px 9px 12px;font-size:14px;}

.izh-coll__results{transition:opacity .18s;min-height:200px;}
.izh-coll__results.is-loading{opacity:.45;pointer-events:none;}
.izh-coll__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.izh-coll__count{font-family:var(--izh-fm);font-size:14px;color:var(--izh-ink2);margin:0;}

.izh-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.izh-chip{display:inline-flex;align-items:center;gap:6px;background:var(--izh-accent2);border:none;border-radius:20px;padding:6px 12px;
  font-family:var(--izh-fm);font-size:12.5px;color:var(--izh-ink);cursor:pointer;transition:.15s;}
.izh-chip:hover{background:var(--izh-accent2-hover);}
.izh-chip svg{width:12px;height:12px;flex:0 0 auto;}
.izh-chip--clear{background:transparent;color:var(--izh-accent);text-decoration:underline;padding:6px 4px;}
.izh-chip--clear:hover{background:transparent;color:var(--izh-ink);}

.izh-coll__grid{grid-template-columns:repeat(3,1fr);}
.izh-coll__empty{grid-column:1/-1;text-align:center;padding:54px 10px;display:flex;flex-direction:column;align-items:center;gap:16px;}

.izh-pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:36px;}
.izh-pager__btn{font-family:var(--izh-fb);text-transform:uppercase;letter-spacing:.05em;font-size:12px;color:var(--izh-ink);text-decoration:none;
  border:1px solid var(--izh-ink);border-radius:8px;padding:10px 18px;transition:.15s;cursor:pointer;}
.izh-pager__btn:hover{background:var(--izh-ink);color:#fff;}
.izh-pager__btn.is-off{opacity:.35;border-color:var(--izh-line);color:var(--izh-ink2);pointer-events:none;}
.izh-pager__info{font-family:var(--izh-fm);font-size:13px;color:var(--izh-ink2);}

@media(max-width:980px){
  .izh-coll{grid-template-columns:1fr;gap:0;}
  .izh-coll__filterbtn{display:inline-flex;}
  .izh-coll__bar{justify-content:space-between;}
  .izh-coll__overlay{position:fixed;inset:0;background:rgba(30,22,10,.42);z-index:2147483400;}
  .izh-coll__side{position:fixed;top:0;left:0;height:100%;max-height:none;width:330px;max-width:88vw;background:var(--izh-cream);z-index:2147483401;border:none;border-radius:0;
    transform:translateX(-100%);transition:transform .32s cubic-bezier(.4,0,.1,1);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:20px 22px 36px;box-shadow:var(--izh-shadow);}
  .izh-coll.is-filtering .izh-coll__side{transform:translateX(0);}
  .izh-side__head{display:none;}            /* mobile uses the .izh-side__top close-header instead */
  .izh-side__top{display:flex;}
  .izh-side__apply{display:flex;}
}
@media(max-width:720px){.izh-coll__grid{grid-template-columns:repeat(2,1fr);gap:14px;}}
@media(max-width:560px){.izh-coll__sort .izh-select{min-width:0;}.izh-coll__sort label{display:none;}}

/* =====================================================================
   v2 — UNIFIED PREMIUM PRODUCT CARD + cart polish + branded ship bar
   (later in the cascade, so these intentionally override the v1 rules)
   ===================================================================== */

/* ---------- hero: kill the black slideshow backdrop (warm cream instead) ---------- */
.hero--natural{background-color:var(--izh-cream)!important;}

/* ---------- branded "unlock free shipping" progress bar ---------- */
.izh-ship{padding:14px 22px 2px;}
.izh-ship__msg{font-size:12.5px;color:var(--izh-ink2);padding:0 0 9px;display:flex;align-items:center;gap:7px;line-height:1.35;}
.izh-ship__msg svg{width:16px;height:16px;flex:0 0 auto;color:var(--izh-accent);}
.izh-ship__msg b{color:var(--izh-ink);font-family:var(--izh-fb);}
.izh-ship__msg--win{color:var(--izh-ok);font-family:var(--izh-fb);}
.izh-ship__msg--win svg{color:var(--izh-ok);}
.izh-ship__bar{position:relative;height:9px;border-radius:20px;background:#ece2cd;overflow:hidden;margin-bottom:4px;
  box-shadow:inset 0 1px 2px rgba(40,30,15,.14);}
.izh-ship__bar i{position:relative;display:block;height:100%;border-radius:20px;min-width:9px;
  background:linear-gradient(90deg,var(--izh-accent) 0%,#159aa6 52%,var(--izh-gold) 100%);
  box-shadow:0 0 10px rgba(13,110,122,.45);transition:width .55s cubic-bezier(.2,.7,.2,1);}
.izh-ship__bar i::after{content:"";position:absolute;inset:0;border-radius:20px;
  background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.55) 50%,transparent 80%);
  background-size:220% 100%;animation:izhShine 1.9s linear infinite;}
.izh-ship__msg--win + .izh-ship__bar i{background:linear-gradient(90deg,var(--izh-ok),#27b66a);box-shadow:0 0 12px rgba(31,138,82,.5);}
@keyframes izhShine{0%{background-position:220% 0;}100%{background-position:-220% 0;}}

/* ---------- quick-add micro-feedback (no drawer yank) ---------- */
.izh-card__add,.quick-product__btn{position:relative;}
.izh-card__add.izh-adding,.quick-product__btn.izh-adding{opacity:.75;pointer-events:none;}
.izh-card__add.izh-added,.quick-product__btn.izh-added{background:var(--izh-ok)!important;color:#fff!important;}
.izh-card__add.izh-added::after,.quick-product__btn.izh-added::after{content:"✓";position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;background:var(--izh-ok);border-radius:inherit;
  color:#fff;font-family:var(--izh-fb);font-size:15px;animation:izhPop .22s ease;}
@keyframes izhPop{0%{transform:scale(.6);opacity:0;}100%{transform:scale(1);opacity:1;}}

/* =====================================================================
   PRODUCT CARD — SINGLE SOURCE OF TRUTH
   One blade partial (partials/product-card.blade.php) + this block owns
   every product card on the site. All colors/sizes come from the
   --card-* tokens in :root — change them there, every card follows.
   ===================================================================== */
.izh-card{background:var(--card-bg);border:1px solid var(--card-line);border-radius:var(--card-radius);overflow:hidden;
  display:flex;flex-direction:column;transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .26s,border-color .2s;}
.izh-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(40,30,15,.14);border-color:var(--card-line-hover);}
/* neutralise legacy theme .grid__item margins/padding (esp. padding-left:50px in
   product-recommendations / recently-viewed) that pushed the card image sideways —
   the .izh-grid gap owns all spacing now, so the card must sit flush in its cell. */
.izh-card.grid__item{margin:0!important;padding:0!important;}
/* image fills the frame edge-to-edge — no letterbox background, no padding */
.izh-card__img{position:relative;display:block;aspect-ratio:var(--card-img-ratio);overflow:hidden;background:var(--card-img-bg);}
.izh-card__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .35s ease;}
.izh-card:hover .izh-card__img img{transform:scale(1.045);}
/* hover swap: second product image fades in over the first */
.izh-card__img .izh-card__img2{opacity:0;z-index:1;}
.izh-card:hover .izh-card__img .izh-card__img2{opacity:1;}
.izh-card__roast{position:absolute;top:10px;left:10px;z-index:2;background:rgba(255,255,255,.94);
  color:var(--izh-accent);font-family:var(--izh-fb);font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;
  padding:5px 11px;border-radius:20px;box-shadow:0 2px 8px rgba(40,30,15,.1);}
.izh-card__sold{position:absolute;top:10px;left:10px;z-index:3;background:var(--izh-ink);color:#fff;
  font:700 9.5px var(--izh-fb);padding:5px 11px;border-radius:20px;text-transform:uppercase;letter-spacing:.06em;}
.izh-card__fav{position:absolute;top:8px;right:8px;z-index:2;width:34px;height:34px;border-radius:50%;border:none;
  background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 3px 10px rgba(40,30,15,.13);transition:opacity .2s,transform .2s,background .18s;opacity:0;transform:translateY(-5px);}
.izh-card:hover .izh-card__fav{opacity:1;transform:none;}
.izh-card__fav svg{width:17px;height:17px;stroke:var(--izh-ink);fill:none;stroke-width:1.7;transition:.15s;}
.izh-card__fav:hover{background:#fff;} .izh-card__fav.is-on{background:var(--izh-accent);}
.izh-card__fav.is-on svg{fill:#fff;stroke:#fff;}
.izh-card__body{padding:14px 15px 15px;display:flex;flex-direction:column;gap:6px;flex:1;}
.izh-card__title{font-family:var(--izh-fb);font-size:16px;line-height:1.32;letter-spacing:.1px;color:var(--izh-ink);text-decoration:none;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;transition:color .15s;}
.izh-card__title:hover{color:var(--izh-accent);}
.izh-card__notes{font-size:12.5px;color:var(--izh-ink2);line-height:1.4;letter-spacing:.1px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;}
.izh-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:8px;}
.izh-card__price{font-family:var(--izh-fb);font-size:16px;color:var(--izh-ink);}
.izh-card__price s{color:#b3a48c;font-size:12px;margin-left:5px;font-family:var(--izh-fm);}
.izh-card__add{display:inline-flex;align-items:center;gap:5px;border:none;cursor:pointer;width:auto;height:auto;border-radius:30px;
  background:var(--card-add-bg);color:var(--card-add-fg);font-family:var(--izh-fb);font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  padding:10px 15px;line-height:1;transition:background .16s,transform .14s,box-shadow .2s;white-space:nowrap;box-shadow:0 5px 14px rgba(13,110,122,.24);}
.izh-card__add::before{content:"+";font-size:14px;margin-right:1px;}
.izh-card__add:hover{background:var(--card-add-hover-bg);transform:translateY(-1px);box-shadow:0 8px 18px rgba(13,110,122,.32);}
.izh-card__buy{margin-top:10px;width:100%;border:1px solid var(--card-buy-border);background:transparent;color:var(--card-buy-fg);cursor:pointer;
  font-family:var(--izh-fb);font-size:11px;letter-spacing:.07em;text-transform:uppercase;padding:10px;border-radius:9px;
  transition:.16s;display:flex;align-items:center;justify-content:center;gap:6px;}
.izh-card__buy:hover{background:var(--card-buy-hover-bg);color:var(--card-buy-hover-fg);}
.izh-card__buy.is-loading{opacity:.6;pointer-events:none;}

/* ======================= static legacy .grid-product → same card, same tokens =======================
   Static pages (gifting, summer-sale, brew guides…) still carry the old theme card markup.
   This compat block skins them with the SAME --card-* tokens as .izh-card, so every card
   on the site is controlled from the one token set above. */
.grid-product__content{background:var(--card-bg);border:1px solid var(--card-line);border-radius:var(--card-radius);overflow:hidden;height:100%;
  display:flex;flex-direction:column;transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .26s,border-color .2s;}
.grid-product:hover .grid-product__content{transform:translateY(-4px);box-shadow:0 18px 40px rgba(40,30,15,.14);border-color:var(--card-line-hover);}
.grid-product .grid__item-image-wrapper,.grid-product__image-mask,.grid-product .grid__image-ratio{
  background:var(--card-img-bg)!important;}
.grid-product .grid__image-contain,.grid-product__image-mask img{object-fit:cover!important;filter:none;}
/* clean body BELOW the image (title pulled out of the image by unifyStaticCards) */
.grid-product .izh-sbody{padding:13px 15px 0;}
.grid-product__meta{padding:0;}
.grid-product .grid-product__link{text-decoration:none;display:block;}
.grid-product__title,.grid-product .deskgtitle,.grid-product .mobgtitle{font-family:var(--izh-fb)!important;font-size:16px!important;font-weight:700!important;
  letter-spacing:.1px!important;line-height:1.32!important;color:var(--izh-ink)!important;text-transform:none!important;white-space:normal!important;text-overflow:clip!important;min-height:2.6em;}
/* show ONLY one title (same text in both) — kills the duplicate line */
.grid-product .deskgtitle{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.grid-product .mobgtitle{display:none!important;}
.grid-product .customvariants{font-family:var(--izh-fm)!important;font-size:12.5px!important;font-weight:700!important;
  color:var(--izh-ink2)!important;letter-spacing:.1px!important;line-height:1.35!important;margin-top:5px!important;text-transform:none!important;}
/* price now lives in the foot row (moved beside the Add pill by unifyStaticCards) */
.grid-product__price{font-family:var(--izh-fb)!important;color:var(--izh-ink)!important;font-size:16px!important;
  position:static!important;background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important;}
.grid-product__price .rupsymbal,.grid-product__price .change-price{font-family:var(--izh-fb)!important;color:var(--izh-ink)!important;}
.grid-product__price--original,.grid-product__price--savings{font-family:var(--izh-fm)!important;color:#b3a48c!important;font-size:12px!important;}
/* button column: [price · Add pill] row, then full-width Buy it now (matches izh-card) */
.grid-product .addbtn-flex{background:transparent!important;padding:0 14px 14px;display:flex!important;flex-direction:column;gap:10px;margin-top:auto;}
.grid-product .desktop-plus-btn{display:flex!important;}
.grid-product .mobile-plus-btn{display:none!important;}
.grid-product .izh-sfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;}
.grid-product .quick-product__btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;width:auto;height:auto;border:none;cursor:pointer;
  border-radius:30px;background:var(--card-add-bg);color:var(--card-add-fg);font-family:var(--izh-fb);font-size:0;line-height:1;
  padding:10px 15px;box-shadow:0 5px 14px rgba(13,110,122,.24);transition:background .16s,transform .14s;}
.grid-product .quick-product__btn::before{content:"+";font-size:14px;}
/* :not(.izh-added) so the "✓ added" state (defined earlier) is never overridden here */
.grid-product .quick-product__btn:not(.izh-added)::after{content:"Add";font-size:11px;letter-spacing:.06em;text-transform:uppercase;}
.grid-product .quick-product__btn:hover{background:var(--card-add-hover-bg);transform:translateY(-1px);}
.grid-product .buynowbtn{order:2;width:100%;display:flex;align-items:center;justify-content:center;border:1px solid var(--card-buy-border);
  border-radius:9px;padding:11px 10px;font-family:var(--izh-fb);font-size:0;letter-spacing:.07em;text-transform:uppercase;
  color:var(--card-buy-fg);text-decoration:none;transition:.16s;}
.grid-product .buynowbtn:not(:hover){background:transparent;}
.grid-product .buynowbtn::after{content:"Buy it now";font-size:11px;}
.grid-product .buynowbtn:hover{background:var(--card-buy-hover-bg)!important;color:var(--card-buy-hover-fg)!important;}
@media(max-width:600px){
  .grid-product .izh-sfoot{gap:7px;}
  .grid-product__price{font-size:14px!important;}
  .grid-product .quick-product__btn{width:36px;height:36px;padding:0;border-radius:50%;justify-content:center;}
  .grid-product .quick-product__btn::after{content:""!important;}
  .grid-product .quick-product__btn::before{font-size:19px;}
}

/* hide the legacy delivery-PIN checker on product pages (not used in Bangladesh) */
.pincodeinnertext,#pincodeservicablebody,#servicalble_pincode,.pincode-input-field{display:none!important;}

/* =====================================================================
   global typography refinement — tighter tracking + more substantial,
   readable body. Headings (Cormorant) keep their scale; only the airy,
   thin, over-tracked UI/body text is corrected. Hierarchy preserved.
   ===================================================================== */
/* the theme over-tracks uppercase labels (nav 3.2px!, btn 1.5px) — pull it in so text reads solid, not thin */
.site-nav__link{letter-spacing:1.3px!important;font-size:16px!important;}
.btn,.add-to-cart,.izh-btn,.buynowbtn,.quick-product__btn{letter-spacing:.7px!important;}
.announcement-bar,.announcement-bar__message,.announcement-bar a{letter-spacing:.4px!important;}
.collection-item__title,.collection-item__title span{letter-spacing:.5px!important;}
/* body copy: bigger + comfortable leading so it never reads thin or cramped */
.rte,.rte p,.rte li,.rte ul,.product-block p,.page-content p,.page-content li,
.product-single__description,.product-single__description p,.coffee-about-right p,
.coffee-about p,.product-section .rte{font-size:16.5px!important;line-height:1.7!important;letter-spacing:.1px!important;}
/* heavier, tighter small UI labels (eyebrows / spec labels) so they don't look faint */
.product-single__meta .product-single__title{letter-spacing:.2px!important;}
table th,.cupping-section th,.spec-label,.product__spec-title{font-family:var(--izh-fb)!important;letter-spacing:.4px!important;}

/* ===================== product page (PDP) — professional redesign ===================== */
.izh-product .izh-crumb{margin-bottom:22px;}
/* media column: vertical thumbnail rail LEFT of the stage, gallery
   sticks while the info column scrolls; thumbs revert to a horizontal row under the
   stage on mobile */
.izh-product__media{display:flex;gap:14px;align-items:flex-start;position:sticky;top:96px;}
.izh-product__stage{position:relative;border-radius:var(--card-radius);overflow:hidden;background:var(--card-img-bg);aspect-ratio:3/3.6;flex:1;min-width:0;order:2;}
.izh-product__hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .2s ease;}
.izh-product__hero.is-fading{opacity:0;}
.izh-product__flag{position:absolute;top:14px;left:14px;z-index:2;background:var(--izh-gold);color:#fff;
  font-family:var(--izh-fb);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:6px 13px;border-radius:20px;box-shadow:0 3px 10px rgba(40,30,15,.18);}
.izh-product__flag--sold{background:var(--izh-ink);}
.izh-product__thumbs{display:flex;flex-direction:column;gap:10px;order:1;flex:0 0 68px;max-height:min(72vh,560px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;}
.izh-product__thumbs::-webkit-scrollbar{display:none;}
.izh-product__thumb{width:68px;height:68px;flex:0 0 auto;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:var(--card-img-bg);transition:border-color .15s,opacity .15s;opacity:.85;}
.izh-product__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.izh-product__thumb.is-on,.izh-product__thumb:hover{border-color:var(--izh-accent);opacity:1;}
@media(max-width:900px){
  .izh-product__media{position:static;flex-direction:column;gap:12px;}
  .izh-product__stage{order:1;width:100%;}
  .izh-product__thumbs{order:2;flex-direction:row;flex:0 0 auto;max-height:none;overflow-x:auto;overflow-y:hidden;width:100%;}
}
.izh-qty--pdp{border:1.5px solid var(--izh-line);border-radius:11px;background:#fff;}
.izh-qty--pdp .izh-qty__b{width:40px;height:48px;font-size:19px;}
.izh-qty--pdp .izh-qtyinput{width:52px;border:none;text-align:center;font-family:var(--izh-fb);font-size:15px;background:transparent;padding:0;}
.izh-qty--pdp .izh-qtyinput::-webkit-outer-spin-button,.izh-qty--pdp .izh-qtyinput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.izh-qty--pdp .izh-qtyinput{-moz-appearance:textfield;appearance:textfield;}
.izh-pdp-atc{flex:1;font-size:14px;padding:15px 22px;box-shadow:0 7px 18px rgba(13,110,122,.24);}
.izh-pdp-buynow{width:100%;margin-top:10px;border:none;cursor:pointer;background:var(--izh-ink);color:#fff;font-family:var(--izh-fb);
  font-size:13px;letter-spacing:.07em;text-transform:uppercase;padding:16px;border-radius:9px;transition:background .16s,transform .14s;}
.izh-pdp-buynow:hover{background:#000;transform:translateY(-1px);}
.izh-pdp-buynow.is-loading{opacity:.6;pointer-events:none;}
.izh-pdp-deliver{display:flex;align-items:center;gap:10px;margin-top:18px;font-family:var(--izh-fm);font-size:13.5px;color:var(--izh-ink2);line-height:1.4;}
.izh-pdp-deliver b{font-family:var(--izh-fb);color:var(--izh-ink);}
.izh-pdp-deliver svg{width:19px;height:19px;color:var(--izh-accent);flex:0 0 auto;}
.izh-pdp-usps{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:20px 0 0;padding:20px 0 4px;border-top:1px solid var(--izh-line);}
.izh-pdp-usps li{display:flex;align-items:center;gap:11px;font-family:var(--izh-fm);font-size:13px;color:var(--izh-ink);line-height:1.3;}
.izh-pdp-usps svg{width:21px;height:21px;color:var(--izh-accent);flex:0 0 auto;}
/* tasting-note chips inside the trace box */
.izh-trace__cell--wide{grid-column:1/-1;}
.izh-trace__chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:2px;}
.izh-trace__chips i{font-style:normal;font-family:var(--izh-fm);font-size:12px;background:#fff;border:1px solid var(--izh-line);
  color:var(--izh-ink);padding:5px 12px;border-radius:20px;}
/* accordions */
.izh-pdp-acc{margin-top:22px;border-top:1px solid var(--izh-line);}
.izh-acc{border-bottom:1px solid var(--izh-line);}
.izh-acc summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;
  font-family:var(--izh-fb);font-size:14px;color:var(--izh-ink);padding:16px 2px;user-select:none;}
.izh-acc summary::-webkit-details-marker{display:none;}
.izh-acc summary::after{content:"+";font-size:20px;color:var(--izh-ink2);transition:transform .2s;line-height:1;}
.izh-acc[open] summary::after{transform:rotate(45deg);}
.izh-acc__body{padding:0 2px 18px;font-size:14.5px;line-height:1.65;color:var(--izh-ink2);}
.izh-acc__body a{color:var(--izh-accent);font-weight:700;}
/* mobile sticky add-to-cart bar */
.izh-pdp-bar{position:fixed;left:0;right:0;bottom:0;z-index:900;display:flex;align-items:center;gap:14px;
  background:#fff;border-top:1px solid var(--izh-line);box-shadow:0 -6px 22px rgba(40,30,15,.14);
  padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));transform:translateY(105%);transition:transform .28s cubic-bezier(.2,.7,.2,1);}
.izh-pdp-bar.is-on{transform:none;}
.izh-pdp-bar__info{flex:1;display:flex;flex-direction:column;line-height:1.3;min-width:0;font-family:var(--izh-f);}
.izh-pdp-bar__info strong{font-family:var(--izh-fb);font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.izh-pdp-bar__info span{font-size:13px;color:var(--izh-ink2);}
.izh-pdp-bar__btn{flex:0 0 auto;padding:12px 22px;font-size:12px;}
body.izh-atc-on .izh-chat{bottom:calc(84px + env(safe-area-inset-bottom,0px));}
/* desktop: same sticky buy bar, slimmer inline layout */
@media(min-width:769px){
  .izh-pdp-bar{padding:10px clamp(22px,5vw,60px) calc(10px + env(safe-area-inset-bottom,0px));}
  .izh-pdp-bar__info{flex-direction:row;align-items:baseline;gap:16px;}
  .izh-pdp-bar__info strong{font-size:14.5px;}
  .izh-pdp-bar__info span{font-size:14px;}
  .izh-pdp-bar__btn{padding:13px 38px;}
}

/* card grids: comfortable gaps + never a lonely single column on phones */
@media(max-width:600px){
  .izh-grid{grid-template-columns:repeat(2,1fr);gap:11px;}
  .izh-card__body{padding:11px 11px 12px;}
  .izh-card__foot{gap:7px;flex-wrap:wrap;}
  .izh-card__price{font-size:14px;}.izh-card__price s{font-size:10.5px;margin-left:3px;}
  /* compact "+" circle on narrow cards so the action never overflows a 2-col cell */
  .izh-card__add{flex:0 0 auto;width:36px;height:36px;padding:0;border-radius:50%;font-size:0;justify-content:center;}
  .izh-card__add::before{content:"+";font-size:19px;margin:0;}
  .izh-card__buy{margin-top:9px;padding:10px;font-size:10.5px;}
}

/* ===================== Careers page ===================== */
.izh-car{font-family:var(--izh-f);color:var(--izh-ink);}
.izh-car__hero{background:radial-gradient(125% 130% at 82% -12%,#e6f4f0 0%,var(--izh-cream) 48%,var(--izh-cream) 100%);
  padding:clamp(56px,9vw,108px) 22px clamp(42px,6vw,74px);}
.izh-car__hero-in{max-width:880px;margin:0 auto;text-align:center;}
.izh-car__hero .izh-eyebrow{display:block;margin-bottom:6px;}
.izh-car__hero h1{font-family:var(--izh-serif);font-weight:800;font-size:clamp(33px,6vw,68px);line-height:1.04;margin:10px 0 0;letter-spacing:.4px;}
.izh-car__lede{font-size:clamp(15px,2.2vw,19px);color:var(--izh-ink2);line-height:1.6;max-width:680px;margin:18px auto 0;}
.izh-car__hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px;}

.izh-car__stats{background:var(--izh-ink);color:#fff;}
.izh-car__stats-in{max-width:1100px;margin:0 auto;padding:clamp(26px,4vw,40px) 22px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;}
.izh-car__stat b{display:block;font-family:var(--izh-serif);font-weight:800;font-size:clamp(28px,4vw,46px);line-height:1;color:var(--izh-gold);}
.izh-car__stat span{display:block;margin-top:8px;font-family:var(--izh-fm);font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#d9d2c6;}

.izh-car__sec{max-width:1140px;margin:0 auto;padding:clamp(48px,7vw,84px) 22px;}
.izh-car__sec--alt{max-width:none;background:var(--izh-cream);}
.izh-car__sec--alt > *{max-width:1140px;margin-left:auto;margin-right:auto;}
.izh-car__head{max-width:680px;margin:0 auto clamp(30px,4vw,48px);text-align:center;}
.izh-car__head h2{font-family:var(--izh-serif);font-weight:800;font-size:clamp(27px,4vw,44px);margin:0 0 12px;}
.izh-car__head p{color:var(--izh-ink2);font-size:15.5px;line-height:1.6;}

.izh-car__values{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.izh-car__value{background:#fff;border:1px solid var(--izh-line);border-radius:16px;padding:26px 22px;transition:transform .2s,box-shadow .24s;}
.izh-car__value:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(40,30,15,.1);}
.izh-car__vic{width:46px;height:46px;border-radius:12px;background:var(--izh-accent2);color:var(--izh-accent);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.izh-car__vic svg{width:24px;height:24px;flex:0 0 auto;}
.izh-car__value h3{font-family:var(--izh-fb);font-size:16px;margin:0 0 8px;}
.izh-car__value p{color:var(--izh-ink2);font-size:13.8px;line-height:1.55;}

.izh-car__perks{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.izh-car__perk{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--izh-line);border-radius:12px;padding:15px 16px;}
.izh-car__pic{width:38px;height:38px;flex:0 0 auto;border-radius:50%;background:var(--izh-accent2);color:var(--izh-accent);display:flex;align-items:center;justify-content:center;}
.izh-car__pic svg{width:19px;height:19px;flex:0 0 auto;}
.izh-car__perk span:last-child{font-family:var(--izh-fm);font-size:13.4px;line-height:1.35;}

.izh-car__roles{display:flex;flex-direction:column;gap:14px;}
.izh-car__role{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid var(--izh-line);border-radius:16px;padding:22px 24px;transition:border-color .2s,box-shadow .24s,transform .2s;}
.izh-car__role:hover{border-color:#cfe3e6;box-shadow:0 14px 32px rgba(40,30,15,.09);transform:translateY(-2px);}
.izh-car__role-main{flex:1;min-width:0;}
.izh-car__role h3{font-family:var(--izh-serif);font-weight:800;font-size:21px;margin:0 0 6px;}
.izh-car__role-desc{color:var(--izh-ink2);font-size:14px;line-height:1.55;margin:0 0 12px;max-width:64ch;}
.izh-car__tags{display:flex;flex-wrap:wrap;gap:8px;}
.izh-car__tag{font-family:var(--izh-fm);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--izh-ink2);background:var(--izh-cream2);border:1px solid var(--izh-line);padding:5px 11px;border-radius:20px;}
.izh-car__tag--type{background:var(--izh-accent2);border-color:transparent;color:var(--izh-accent);}
.izh-car__apply{flex:0 0 auto;}
.izh-car__apply svg{width:16px;height:16px;flex:0 0 auto;}

.izh-car__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.izh-car__step-n{font-family:var(--izh-serif);font-weight:800;font-size:34px;color:#9fcdd4;line-height:1;display:block;margin-bottom:10px;}
.izh-car__step h3{font-family:var(--izh-fb);font-size:16px;margin:0 0 7px;}
.izh-car__step p{color:var(--izh-ink2);font-size:13.6px;line-height:1.55;}

.izh-car__cta{background:linear-gradient(135deg,var(--izh-accent),#0a5560);color:#fff;}
.izh-car__cta-in{max-width:720px;margin:0 auto;padding:clamp(48px,7vw,82px) 22px;text-align:center;}
.izh-car__cta h2{font-family:var(--izh-serif);font-weight:800;font-size:clamp(26px,4vw,42px);margin:0 0 12px;color:#fff;}
.izh-car__cta p{color:rgba(255,255,255,.88);font-size:16px;line-height:1.6;margin:0 0 26px;}
.izh-car__cta .izh-btn--dark{background:#fff;color:var(--izh-ink);}
.izh-car__cta .izh-btn--dark:hover,.izh-car__cta a.izh-btn--dark:hover{background:var(--izh-cream);color:var(--izh-ink);}

@media(max-width:900px){
  .izh-car__values,.izh-car__perks{grid-template-columns:repeat(2,1fr);}
  .izh-car__steps{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:620px){
  .izh-car__stats-in{grid-template-columns:repeat(2,1fr);gap:24px 14px;}
  .izh-car__role{flex-direction:column;align-items:flex-start;gap:14px;}
  .izh-car__apply{width:100%;}
}

/* ============================================================
   IZH brand art
   (loads after theme.css).
   ============================================================ */

/* Footer bird: IZH original coffee songbird */
footer.site-footer {
  background-image: url("/media/izh/izh-bird.svg") !important;
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: 260px auto !important;
}
@media (max-width: 600px) {
  footer.site-footer { background-size: 168px auto !important; }
}

/* ---- Real IZH product detail page (PDF catalogue) ---- */
.izh-product__crumb{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--izh-accent);text-decoration:none;margin-bottom:8px;}
.izh-product__crumb:hover{color:var(--izh-accent);}
.izh-product__pack{font-size:13px;color:var(--izh-ink2);margin:2px 0 10px;letter-spacing:.02em;}
.izh-product__notesline{display:flex;align-items:center;gap:7px;font-family:var(--izh-fb);font-size:13.5px;letter-spacing:.03em;color:var(--izh-accent);margin:0 0 10px;}
.izh-product__notesline svg{flex:0 0 auto;}
.product-single__title{font-family:var(--izh-serif);font-weight:800;font-size:clamp(28px,3.4vw,40px);line-height:1.08;margin:0 0 6px;color:var(--izh-ink);}
.izh-pdp{background:var(--izh-cream);border-radius:var(--izh-r);margin-top:8px;}
.izh-pdp__content{display:grid;grid-template-columns:1.3fr 1fr;gap:26px 40px;align-items:start;}
.izh-pdp__about{grid-column:1/-1;max-width:820px;}
.izh-pdp__h{font-family:var(--izh-serif);font-weight:800;font-size:24px;margin:0 0 14px;color:var(--izh-ink);position:relative;padding-bottom:10px;}
.izh-pdp__h:after{content:"";position:absolute;left:0;bottom:0;width:44px;height:2px;background:linear-gradient(90deg,var(--izh-accent),var(--izh-gold));}
.izh-pdp__about p{color:var(--izh-ink2);font-size:16px;line-height:1.7;margin:0;}
.izh-pdp__features{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;}
.izh-pdp__features li{position:relative;padding-left:24px;font-size:14.5px;color:var(--izh-ink);line-height:1.45;}
.izh-pdp__features li:before{content:"";position:absolute;left:0;top:7px;width:9px;height:9px;border-radius:50%;background:var(--izh-accent);box-shadow:0 0 0 3px var(--izh-accent2);}
.izh-pdp__specs{width:100%;border-collapse:collapse;font-size:14.5px;border:1px solid var(--izh-line);border-radius:10px;overflow:hidden;}
.izh-pdp__specs th,.izh-pdp__specs td{text-align:left;padding:11px 16px;border-bottom:1px solid var(--izh-line);vertical-align:top;}
.izh-pdp__specs tr:last-child th,.izh-pdp__specs tr:last-child td{border-bottom:0;}
.izh-pdp__specs th{width:44%;background:var(--izh-cream2);color:var(--izh-ink2);font-weight:700;letter-spacing:.02em;}
.izh-pdp__specs td{color:var(--izh-ink);font-weight:700;background:#fff;}
@media(max-width:900px){.izh-pdp__content{grid-template-columns:1fr;gap:24px;}.izh-pdp__features{grid-template-columns:1fr;}}

/* ---- Fix: theme's AOS "image-fade-in" leaves images at opacity:0 when its scroll JS
   doesn't fire in this Laravel port (below-the-fold cards stayed invisible). Force the
   completed/visible state so every product & card image reliably shows. ---- */
[data-aos]{opacity:1 !important;transform:none !important;}
img.image-element,.image-element,image-element,image-element img,.grid-product__image,.grid__image-ratio img{opacity:1 !important;}

/* ---- IZH hero slider (replaces the theme's slick hero; 3 client slides, responsive) ---- */
.mainsliders{background:var(--izh-cream2);}
.izh-hero{position:relative;width:100%;overflow:hidden;background:var(--izh-cream2);line-height:0;}
.izh-hero__slide{display:block;position:absolute;inset:0;opacity:0;transition:opacity .8s ease;pointer-events:none;}
.izh-hero__slide.is-active{position:relative;opacity:1;pointer-events:auto;}
.izh-hero__slide img{display:block;width:100%;height:auto;}
.izh-hero__dots{position:absolute;left:0;right:0;bottom:14px;display:flex;gap:9px;justify-content:center;z-index:3;line-height:1;}
.izh-hero__dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 1px 3px rgba(0,0,0,.28);cursor:pointer;transition:background .2s,transform .2s;}
.izh-hero__dot.is-active{background:#fff;transform:scale(1.3);}
@media(max-width:767px){.izh-hero__dots{bottom:10px;}}

/* ---- IZH Coffee Journal (slim blog) ---- */
.izh-blog__head{text-align:center;max-width:640px;margin:0 auto 40px;}
.izh-blog__title{font-family:var(--izh-serif);font-weight:800;font-size:clamp(30px,4vw,46px);margin:0 0 10px;color:var(--izh-ink);}
.izh-blog__sub{color:var(--izh-ink2);font-size:16px;line-height:1.6;margin:0;}
.izh-blog__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:920px;margin:0 auto;}
.izh-blog__card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--izh-line);border-radius:var(--izh-r);overflow:hidden;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s;}
.izh-blog__card:hover{transform:translateY(-4px);box-shadow:var(--izh-shadow);}
.izh-blog__thumb{aspect-ratio:16/10;overflow:hidden;background:var(--izh-cream2);}
.izh-blog__thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.izh-blog__card:hover .izh-blog__thumb img{transform:scale(1.05);}
.izh-blog__body{padding:22px 24px 26px;}
.izh-blog__h{font-family:var(--izh-serif);font-weight:800;font-size:23px;margin:0 0 10px;color:var(--izh-ink);}
.izh-blog__ex{color:var(--izh-ink2);font-size:14.5px;line-height:1.6;margin:0 0 16px;}
.izh-blog__more{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--izh-accent);font-weight:700;}
.izh-blog__card:hover .izh-blog__more{color:var(--izh-accent);}
@media(max-width:700px){.izh-blog__grid{grid-template-columns:1fr;gap:20px;}}

/* ===================== home: bestseller strip (server-rendered unified cards) ===================== */
.izh-best{padding:clamp(34px,5vw,60px) 0 clamp(40px,5vw,64px);}
.izh-best__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px;}
.izh-best__head .section-header__title{margin:0;}
.izh-best__all{font-family:var(--izh-fb);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--izh-accent);
  text-decoration:none;border-bottom:2px solid var(--izh-accent2);padding-bottom:3px;transition:.15s;white-space:nowrap;}
.izh-best__all:hover{color:var(--izh-accent);border-color:var(--izh-accent);}
.izh-strip{position:relative;}
.izh-strip__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*18px)/4);gap:18px;
  overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 18px;
  scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;}
.izh-strip__track::-webkit-scrollbar{display:none;}
.izh-strip__cell{scroll-snap-align:start;min-width:0;}
.izh-strip__cell .izh-card{height:100%;}
.izh-strip__nav{position:absolute;top:34%;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid var(--izh-line);
  background:#fff;color:var(--izh-ink);cursor:pointer;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(40,30,15,.16);transition:background .15s,transform .15s,opacity .2s;}
.izh-strip__nav:hover{background:var(--izh-ink);color:#fff;transform:scale(1.06);}
.izh-strip__nav svg{width:18px;height:18px;flex:0 0 auto;}
.izh-strip__nav--prev{left:-14px;}
.izh-strip__nav--next{right:-14px;}
.izh-strip__nav[hidden]{display:none;}
@media(max-width:1024px){.izh-strip__track{grid-auto-columns:calc((100% - 2*16px)/3);gap:16px;}}
@media(max-width:720px){.izh-strip__track{grid-auto-columns:calc((100% - 12px)/2);gap:12px;}
  .izh-strip__nav{display:none;}}

/* ===================== home: The IZH Promise ===================== */
.izh-why{background:var(--izh-cream);padding:clamp(36px,5.5vw,68px) 0;}
.izh-why__head{text-align:center;max-width:640px;margin:0 auto clamp(24px,3.5vw,40px);}
.izh-why__title{font-family:var(--izh-serif);font-weight:800;font-size:clamp(27px,3.6vw,42px);margin:0 0 10px;color:var(--izh-ink);}
.izh-why__sub{font-family:var(--izh-fm);font-size:15.5px;color:var(--izh-ink2);line-height:1.55;margin:0;}
.izh-why__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.izh-why__card{background:#fff;border:1px solid var(--izh-line);border-radius:16px;padding:24px 20px;
  transition:transform .2s,box-shadow .24s;}
.izh-why__card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(40,30,15,.1);}
.izh-why__ic{display:flex;width:46px;height:46px;border-radius:12px;background:var(--izh-accent2);color:var(--izh-accent);
  align-items:center;justify-content:center;margin-bottom:14px;}
.izh-why__ic svg{width:23px;height:23px;flex:0 0 auto;}
.izh-why__card h3{font-family:var(--izh-fb);font-size:15.5px;margin:0 0 7px;color:var(--izh-ink);letter-spacing:.2px;}
.izh-why__card p{font-family:var(--izh-fm);font-size:13.3px;line-height:1.55;color:var(--izh-ink2);margin:0;}
@media(max-width:900px){.izh-why__grid{grid-template-columns:repeat(2,1fr);gap:12px;}
  .izh-why__card{padding:18px 15px;}}

/* ---------- home: bean-to-cup journey SLIDER (MOBILE ONLY) ----------
   Desktop keeps the wide izh-farms-art.svg banner; on phones that art is unreadable,
   so this is a swipeable slider of designed IZH slide IMAGES (SVG),
   one per journey step. Fully CMS-editable (swap the slide images from admin). */
.izh-section--journey{display:none;}                 /* desktop: nothing (farms banner covers it) */
@media(max-width:767px){
  .izh-section--journey{display:block;padding:8px 0 16px;}
  .izh-jslider{max-width:430px;margin:0 auto;visibility:hidden;}       /* hidden until slick lays it out (no FOUC stack) */
  .izh-jslider.slick-initialized{visibility:visible;}
  .izh-jslide{padding:0 5px;}
  .izh-jslide img{width:100%;height:auto;display:block;border-radius:16px;}
  /* dots — IZH palette */
  .izh-section--journey .slick-dots{position:static;margin:16px 0 0;padding:0;display:flex!important;justify-content:center;}
  .izh-section--journey .slick-dots li{margin:0 5px;width:auto;height:auto;}
  .izh-section--journey .slick-dots li button{width:9px;height:9px;padding:0;border-radius:50%;background:#d8cdb6;transition:background .2s,transform .2s;}
  .izh-section--journey .slick-dots li button:before{display:none;}
  .izh-section--journey .slick-dots li.slick-active button{background:var(--izh-accent);transform:scale(1.15);}
  /* arrows — subtle, inset */
  .izh-section--journey .slick-prev,.izh-section--journey .slick-next{width:36px;height:36px;z-index:2;}
  .izh-section--journey .slick-prev{left:-2px;} .izh-section--journey .slick-next{right:-2px;}
  .izh-section--journey .slick-prev:before,.izh-section--journey .slick-next:before{color:var(--izh-ink);font-size:24px;opacity:.6;}
}
@media(min-width:768px){ .izh-section--journey{display:none!important;} }

/* ---------- header live-search suggestions ---------- */
.izh-sug{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:600;background:#fff;border:1px solid var(--izh-line);
  border-radius:12px;box-shadow:0 18px 44px rgba(40,30,15,.18);overflow:hidden;font-family:var(--izh-f);}
.izh-sug__row{display:flex;align-items:center;gap:12px;padding:10px 14px;text-decoration:none;color:var(--izh-ink);transition:background .12s;}
.izh-sug__row:hover{background:var(--izh-cream);}
.izh-sug__row img{width:40px;height:48px;object-fit:cover;border-radius:6px;background:var(--izh-cream2);flex:0 0 auto;}
.izh-sug__t{flex:1;font-size:13.5px;line-height:1.3;font-family:var(--izh-fm);}
.izh-sug__p{font-family:var(--izh-fb);font-size:13px;color:var(--izh-ink);}
.izh-sug__all{display:block;text-align:center;padding:11px;font-family:var(--izh-fb);font-size:12px;letter-spacing:.05em;
  text-transform:uppercase;color:var(--izh-accent);text-decoration:none;border-top:1px solid var(--izh-line);background:var(--izh-cream);}
.izh-sug__all:hover{background:var(--izh-cream2);}

/* ---------- chat: header reset button + product cards ---------- */
.izh-chat__reset{background:none;border:none;color:#fff;cursor:pointer;opacity:.8;padding:2px;display:flex;}
.izh-chat__reset:hover{opacity:1;}
.izh-chat__reset svg{width:17px;height:17px;}
.izh-chat__cards{display:flex;flex-direction:column;gap:8px;align-self:flex-start;max-width:88%;}
.izh-chat__card{display:flex;gap:10px;background:#fff;border:1px solid var(--izh-line);border-radius:12px;padding:8px;align-items:center;}
.izh-chat__card>a img{width:52px;height:62px;object-fit:cover;border-radius:8px;background:var(--izh-cream2);display:block;}
.izh-chat__card-b{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;}
.izh-chat__card-t{font-family:var(--izh-fm);font-size:12.8px;line-height:1.3;color:var(--izh-ink);text-decoration:none;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.izh-chat__card-p{font-family:var(--izh-fb);font-size:13px;color:var(--izh-ink);}
.izh-chat__card-add{align-self:flex-start;padding:7px 12px!important;font-size:10px!important;}
.izh-chat__card-view{align-self:flex-start;font-family:var(--izh-fb);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--izh-accent);text-decoration:none;}
/* split option selectors on long variant matrices */
.izh-optrow{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:560px){.izh-optrow{grid-template-columns:1fr;gap:4px;}}

/* ---------- PDP upgrades: availability, farm story, lightbox, recently viewed ---------- */
.izh-pdp-avail{margin:9px 0 0;font-family:var(--izh-fm);font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--izh-accent);}
.izh-pdp-avail.is-off{color:#b0483a;}
.izh-trace__story{margin:13px 0 0;padding-top:12px;border-top:1px solid var(--izh-line);font-size:13.5px;line-height:1.65;color:var(--izh-ink2);}
/* gallery lightbox / zoom */
.izh-product__hero{cursor:zoom-in;}
.izh-lb{position:fixed;inset:0;z-index:1300;display:none;align-items:center;justify-content:center;overflow:hidden;
  background:rgba(26,19,11,.86);padding:clamp(12px,3vw,36px);}
.izh-lb.is-on{display:flex;}
.izh-lb__img{max-width:100%;max-height:100%;object-fit:contain;border-radius:10px;background:var(--card-img-bg);
  cursor:zoom-in;transition:transform .25s ease;}
.izh-lb.is-zoom .izh-lb__img{cursor:zoom-out;}
.izh-lb__x{position:absolute;top:14px;right:16px;z-index:2;width:42px;height:42px;border:none;border-radius:50%;
  background:rgba(255,255,255,.14);color:#fff;font-size:26px;line-height:1;cursor:pointer;transition:background .15s;}
.izh-lb__x:hover{background:rgba(255,255,255,.28);}
.izh-lb__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;display:flex;
  align-items:center;justify-content:center;border:none;border-radius:50%;background:rgba(255,255,255,.14);
  color:#fff;cursor:pointer;transition:background .15s;}
.izh-lb__nav:hover{background:rgba(255,255,255,.28);}
.izh-lb__nav--prev{left:14px;}
.izh-lb__nav--next{right:14px;}
.izh-lb__nav svg{width:22px;height:22px;flex:0 0 auto;}
/* recently viewed strip: compact rhythm right under "You may also like" */
#izhRecentWrap{padding-top:0;}
