/* =====================================================================
   Hau & Miau - CHROME stream: header, hierarchical menu, search overlay,
   drawer cart, cart / checkout / my account pages, 404, footer, empty
   states, loading states. Overrides main.css (loaded before) with
   equal-or-higher specificity. Spec: 10.1, 12.1, 12.2, 12.3, 12.4.
   ===================================================================== */
:root{--hm-focus:0 0 0 3px #fff,0 0 0 6px var(--hm-olive);--hm-err:#B3261E;--hm-err-bg:#FDECEC;--hm-err-line:#F3C4C4;--hm-ok-bg:#E9F1DD}
[hidden]{display:none!important}
.hm-ltr,input.hm-ltr,.woocommerce form .form-row input.hm-ltr{direction:ltr;text-align:left;unicode-bidi:isolate}
.hm-ltr::placeholder,input.hm-ltr::placeholder{direction:rtl;text-align:right}
body.hm-lock{overflow:hidden;touch-action:none}
/* focus rings (visible, on all interactive chrome) */
.hm-topbar a:focus-visible,.hm-header a:focus-visible,.hm-header button:focus-visible,.hm-nav a:focus-visible,.hm-nav button:focus-visible,
.hm-drawer a:focus-visible,.hm-drawer button:focus-visible,.hm-footer a:focus-visible,.hm-footer button:focus-visible,.hm-footer input:focus-visible,
.hm-search-ov a:focus-visible,.hm-search-ov button:focus-visible,.hm-search-ov input:focus-visible,.hm-404 a:focus-visible,.hm-404 button:focus-visible,.hm-404 input:focus-visible,
.woocommerce-cart a:focus-visible,.woocommerce-cart button:focus-visible,.woocommerce-cart input:focus-visible,
.woocommerce-checkout a:focus-visible,.woocommerce-checkout button:focus-visible,.woocommerce-checkout input:focus-visible,.woocommerce-checkout select:focus-visible,.woocommerce-checkout textarea:focus-visible,
.woocommerce-account a:focus-visible,.woocommerce-account button:focus-visible,.woocommerce-account input:focus-visible,.woocommerce-account select:focus-visible{outline:none;box-shadow:var(--hm-focus)}
.hm-header .hm-search input:focus-visible,.hm-search-ov .hm-search input:focus-visible,.hm-404 .hm-search input:focus-visible{box-shadow:none}
.hm-search:focus-within{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft)}
/* buttons: loading (spinner inside, label stays), disabled */
.hm-btn{position:relative}
.hm-btn.is-loading{pointer-events:none;cursor:progress}
.hm-btn.is-loading::before{content:"";width:18px;height:18px;flex:none;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:hm-spin .7s linear infinite}
.hm-btn--ghost.is-loading::before,.hm-btn--light.is-loading::before{border-color:rgba(94,143,46,.3);border-top-color:var(--hm-olive)}
.hm-btn.is-loading svg{display:none}
.hm-btn:active{transform:translateY(0)}
.hm-btn[disabled],.hm-btn[aria-disabled="true"]{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
.hm-btn--primary:focus-visible,.hm-btn--buy:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
.hm-btn--lg{min-height:52px;font-size:17px}
@keyframes hm-spin{to{transform:rotate(360deg)}}
.hm-spinner{display:inline-block;width:28px;height:28px;border-radius:50%;border:3px solid var(--hm-olive-soft);border-top-color:var(--hm-olive);animation:hm-spin .7s linear infinite}
.hm-form-msg{margin:6px 0 10px;font-size:14px;color:var(--hm-err);background:var(--hm-err-bg);border:1px solid var(--hm-err-line);border-radius:12px;padding:8px 12px}
.hm-form-msg:empty{display:none}
.hm-linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--hm-olive-dark);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.hm-linkbtn:hover{color:var(--hm-olive)}
/* toast (feedback after AJAX errors when the drawer is closed) */
.hm-toast{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);z-index:130;background:var(--hm-ink);color:#fff;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:600;box-shadow:var(--hm-shadow-hover);opacity:0;transition:opacity .2s,transform .2s;max-width:calc(100vw - 32px);text-align:center}
.hm-toast.is-on{opacity:1;transform:translate(-50%,0)}
.hm-toast.is-error{background:var(--hm-err)}

/* ---------- Empty states (spec 12.3) ---------- */
.hm-empty{text-align:center;padding:36px 16px;color:var(--hm-text)}
.hm-empty__icon{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);margin-bottom:14px}
.hm-empty__icon svg{width:36px;height:36px}
.hm-empty__title{font-size:22px;margin:0 0 8px;color:var(--hm-ink)}
.hm-empty__text{max-width:36ch;margin:0 auto 18px;font-size:15px;line-height:1.6}
.hm-empty .hm-btn{width:auto;min-width:200px}
.hm-empty .hm-btn+.hm-btn{margin-top:8px}
.hm-empty--page{background:#fff;border:1px solid var(--hm-line);border-radius:var(--hm-radius-xl);padding:56px 24px;max-width:720px;margin:24px auto 40px}
.hm-empty--page .hm-empty__title{font-size:clamp(26px,3vw,34px)}
.hm-empty--page .hm-empty__text{font-size:17px}
.hm-empty__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:22px}
.hm-empty__actions .hm-btn+.hm-btn{margin-top:0}
.hm-empty__links{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.hm-empty__links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--hm-line);background:#fff;color:var(--hm-text);font-size:14px;font-weight:600}
.hm-empty__links a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}

/* ---------- Topbar ---------- */
.hm-topbar .hm-container{min-height:36px}
.hm-topbar__account{min-height:36px;padding:0 4px}
.hm-topbar__account svg,.hm-topbar__ship svg{width:16px;height:16px;flex:none}
.hm-topbar__ship{color:var(--hm-olive-dark);font-weight:600}
.hm-topbar__ship bdi{font-weight:700}
@media (max-width:900px){
  .hm-topbar .hm-container{justify-content:center;min-height:32px}
  .hm-topbar__account{display:none}
  .hm-topbar__ship{font-size:12px}
  .hm-topbar__sep,.hm-topbar__more{display:none}
}

/* ---------- Header ---------- */
.hm-header{box-shadow:0 1px 0 #EFE7DA}
.hm-header.is-scrolled{box-shadow:0 6px 24px rgba(60,50,20,.08)}
.hm-header .hm-container{min-height:96px}
.hm-header__logo{display:inline-flex;align-items:center;justify-self:center}
.hm-header__logo img{height:72px;width:auto;aspect-ratio:280/104}
.hm-header__start{gap:4px}
.hm-header__end{gap:6px}
.hm-burger,.hm-search-toggle,.hm-header__account,.hm-cart-btn{width:44px;height:44px;border-radius:50%;display:inline-grid;place-items:center;border:0;background:transparent;color:var(--hm-ink);cursor:pointer;transition:background .15s}
.hm-burger:hover,.hm-search-toggle:hover,.hm-header__account:hover,.hm-cart-btn:hover{background:#fff;color:var(--hm-olive-dark)}
.hm-search-toggle svg,.hm-header__account svg{width:24px;height:24px}
.hm-burger{display:none;flex-direction:column;justify-content:center;gap:5px;padding:10px}
.hm-burger span{display:block;width:22px;height:2.5px;background:currentColor;border-radius:3px;transition:transform .2s,opacity .2s}
.hm-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.hm-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hm-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.hm-search-toggle{display:none}
.hm-header .hm-search{min-width:240px;height:44px}
.hm-header .hm-search input{min-width:0;font-size:15px}
.hm-header .hm-search button{width:36px;height:36px;border-radius:50%}
.hm-header .hm-search button:hover{background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.hm-cart-btn__count{top:0;left:0;min-width:20px;height:20px;line-height:1;background:var(--hm-orange);color:#fff;font-size:12px;font-weight:800;box-shadow:0 0 0 2px var(--hm-cream);transition:transform .2s}
.hm-cart-btn__count.is-bump{animation:hm-bump .3s ease}
@keyframes hm-bump{50%{transform:scale(1.35)}}
@media (max-width:900px){
  .hm-header .hm-container{grid-template-columns:1fr auto 1fr;min-height:72px;gap:8px}
  .hm-header__logo img{height:52px}
  .hm-burger{display:inline-flex}
  .hm-search-toggle{display:inline-grid}
  .hm-header .hm-search,.hm-header__account{display:none}
}

/* ---------- Desktop nav / hierarchical menu (spec 10.1) ---------- */
.hm-nav{border-bottom:1px solid #EFE7DA}
.hm-nav__top{display:none}
.hm-nav__foot{display:none}
.hm-menu{gap:2px}
.hm-menu__top{min-height:44px;font-size:15px;transition:background .15s,color .15s}
.hm-menu__top svg{width:14px;height:14px;transition:transform .2s;opacity:.7}
.hm-menu__item.is-open>.hm-menu__top svg{transform:rotate(180deg)}
.hm-menu__item.is-current>.hm-menu__top{color:var(--hm-olive-dark);box-shadow:inset 0 -3px 0 var(--hm-olive)}
.hm-menu .is-cta.is-current>.hm-menu__top{color:var(--hm-orange);box-shadow:inset 0 -3px 0 var(--hm-orange)}
.hm-menu .is-cta>.hm-menu__top:hover{background:#FDEBDD;color:var(--hm-orange-dark)}
.hm-menu .is-pets>.hm-menu__top svg{display:none}
.hm-sub{min-width:260px;padding:8px}
.hm-sub a{min-height:44px;display:flex;align-items:center;transition:background .15s}
.hm-sub a[aria-current="page"]{color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
.hm-nav .hm-menu .hm-sub{display:none}
.hm-nav .hm-menu .hm-menu__item.is-open>.hm-sub{display:flex;animation:hm-fade .18s ease}
@keyframes hm-fade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (min-width:901px){
  .hm-nav__close{display:none}
}

/* ---------- Mobile fullscreen menu ---------- */
@media (max-width:900px){
  .hm-nav{display:block;position:fixed;inset:0;z-index:120;background:var(--hm-cream);padding:0;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;opacity:0;transform:translateX(24px);transition:opacity .22s ease,transform .22s ease,visibility 0s .22s;border:0}
  .hm-nav.is-open{visibility:visible;opacity:1;transform:none;transition:opacity .22s ease,transform .22s ease}
  .hm-nav__top{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 12px 12px;border-bottom:1px solid #EFE7DA;position:sticky;top:0;background:var(--hm-cream);z-index:2}
  .hm-nav__title{font-weight:800;font-size:18px;color:var(--hm-ink)}
  .hm-nav__close{position:static;width:44px;height:44px;border:0;background:#fff;border-radius:50%;box-shadow:var(--hm-shadow);display:grid;place-items:center;color:var(--hm-ink);cursor:pointer}
  .hm-nav__close svg{width:20px;height:20px}
  .hm-nav .hm-menu{flex-direction:column;align-items:stretch;gap:0;padding:8px 12px 16px}
  .hm-menu__item{border-bottom:1px solid #EFE7DA}
  .hm-menu__item:last-child{border-bottom:0}
  .hm-menu__top{width:100%;justify-content:space-between;font-size:17px;min-height:52px;padding:12px 8px;border-radius:12px}
  .hm-menu__top:hover{background:transparent}
  .hm-menu__item.is-current>.hm-menu__top{box-shadow:none;background:var(--hm-olive-soft)}
  .hm-menu__top svg{width:18px;height:18px}
  .hm-menu .is-cta>.hm-menu__top{color:var(--hm-orange)}
  .hm-nav .hm-menu .hm-sub{position:static;box-shadow:none;border:0;background:#fff;border-radius:12px;margin:0 0 10px;padding:6px;animation:none}
  .hm-sub a{font-size:16px;min-height:48px;padding:10px 12px}
  .hm-nav__foot{display:flex;flex-direction:column;gap:6px;padding:8px 12px calc(24px + env(safe-area-inset-bottom));border-top:1px solid #EFE7DA;margin:0 12px}
  .hm-nav__acct{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px;color:var(--hm-ink);font-weight:600;border-radius:12px}
  .hm-nav__acct svg{width:20px;height:20px;color:var(--hm-olive-dark)}
}

/* ---------- Search overlay (mobile) ---------- */
.hm-search-ov{position:fixed;inset:0;z-index:125;background:rgba(30,30,25,.45);display:flex;align-items:flex-start;justify-content:center;padding:12px}
.hm-search-ov__panel{position:relative;width:100%;max-width:560px;background:var(--hm-cream);border-radius:20px;padding:16px 16px 18px;box-shadow:var(--hm-shadow-hover);animation:hm-fade .18s ease}
.hm-search-ov .hm-search{display:flex;height:52px;padding-inline-end:56px;min-width:0;width:100%;border-radius:999px;background:#fff;border:1px solid #E6DFD1}
.hm-search-ov .hm-search input{font-size:16px;flex:1;min-width:0}
.hm-search-ov .hm-search button{width:40px;height:40px;border-radius:50%;color:var(--hm-olive-dark)}
.hm-search-ov__close{position:absolute;top:20px;left:22px;width:44px;height:44px;border:0;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--hm-ink);cursor:pointer}
.hm-search-ov__close:hover{background:#fff}
.hm-search-ov__close svg{width:20px;height:20px}
.hm-search-ov__hint{margin:16px 0 8px;font-size:13px;color:var(--hm-muted);font-weight:700}
.hm-search-ov__links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.hm-search-ov__links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid #E6DFD1;color:var(--hm-text);font-weight:600;font-size:14px}
.hm-search-ov__links a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark)}

/* ---------- Drawer cart (spec 12.1) ---------- */
.hm-drawer{z-index:140}
.hm-drawer__panel{width:min(440px,100%);background:#FBF8F2;transition:transform .25s ease}
.hm-drawer__panel:focus{outline:none}
.hm-drawer__head{padding:16px 20px;background:#fff}
.hm-drawer__head h3{font-size:20px}
.hm-drawer__close{width:44px;height:44px;display:grid;place-items:center;background:var(--hm-cream);box-shadow:none;border:1px solid var(--hm-line);color:var(--hm-ink);transition:background .15s}
.hm-drawer__close:hover{background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.hm-drawer__close svg{width:20px;height:20px}
.hm-drawer__body{padding:8px 20px 16px;position:relative}
.hm-drawer__loading{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:rgba(251,248,242,.6);z-index:3;backdrop-filter:blur(1px)}
.hm-drawer.is-busy .hm-drawer__loading{display:flex}
.hm-drawer.is-busy .hm-drawer__body{opacity:.55}
.hm-drawer.is-busy .hm-drawer__body .hm-mini-item{position:relative;overflow:hidden}
.hm-drawer.is-busy .hm-drawer__body .hm-mini-item::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);transform:translateX(-100%);animation:hm-shimmer 1s infinite}
@keyframes hm-shimmer{to{transform:translateX(100%)}}
.hm-drawer__error{margin:0 20px 10px;font-size:14px;color:var(--hm-err);background:var(--hm-err-bg);border:1px solid var(--hm-err-line);border-radius:12px;padding:8px 12px}
.hm-mini-list{list-style:none;margin:0;padding:0}
.hm-mini-item{grid-template-columns:72px 1fr auto;gap:12px;padding:12px 0;align-items:start;border-bottom:1px solid #EFE7DA}
.hm-mini-item__thumb{width:72px;height:72px;border-radius:12px;background:#fff;overflow:hidden;border:1px solid #EFE7DA}
.hm-mini-item__thumb img{width:100%;height:100%;object-fit:cover;border-radius:0}
.hm-mini-item__main{min-width:0}
.hm-mini-item__name{font-size:15px;line-height:1.35;margin:0 0 2px}
.hm-mini-item__name a{color:var(--hm-ink)}
.hm-mini-item__name a:hover{color:var(--hm-olive-dark)}
.hm-mini-item__meta{font-size:12px;color:var(--hm-muted);margin:0}
.hm-mini-item__unit{font-size:13px;color:var(--hm-muted);margin:0 0 6px}
.hm-mini-item__gift{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--hm-olive-dark);font-weight:700;margin:0}
.hm-mini-item__gift svg{width:16px;height:16px}
.hm-mini-item__ctl{display:inline-flex;align-items:center;gap:0;border:1px solid var(--hm-line);border-radius:999px;background:#fff;height:44px;margin-top:0}
.hm-mini-item__ctl .hm-qty{width:44px;height:42px;border:0;border-radius:999px;background:transparent;display:grid;place-items:center;color:var(--hm-olive-dark);cursor:pointer;transition:background .15s}
.hm-mini-item__ctl .hm-qty:hover{background:var(--hm-olive-soft)}
.hm-mini-item__ctl .hm-qty[disabled]{opacity:.35;cursor:not-allowed}
.hm-mini-item__ctl .hm-qty svg{width:16px;height:16px}
.hm-mini-item__n{min-width:28px;text-align:center;font-weight:800;font-size:15px}
.hm-mini-item__side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px;min-height:72px}
.hm-mini-item__price{font-size:16px;color:var(--hm-ink)}
.hm-mini-item__price--gift{color:var(--hm-olive-dark)}
.hm-mini-item__remove{width:44px;height:44px;margin:-6px -12px -8px 0;border:0;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--hm-muted);cursor:pointer;transition:background .15s,color .15s}
.hm-mini-item__remove:hover{background:var(--hm-err-bg);color:var(--hm-err)}
.hm-mini-item__remove svg{width:18px;height:18px}
.hm-mini-item--gift{background:var(--hm-olive-soft);border-radius:14px;padding:10px;border:0;margin-top:8px}
.hm-mini-item--gift .hm-mini-item__side{min-height:0}
.hm-mini-item--upsell{border-bottom:0;align-items:center}
.hm-mini-item--upsell .hm-mini-item__side{min-height:0;justify-content:center}
.hm-mini-item--upsell .hm-btn{min-height:40px;padding:0 14px}
.hm-drawer__upsell{margin-top:14px;background:#fff;border:1px solid #EFE7DA;border-radius:16px;padding:6px 12px 2px}
.hm-drawer__upsell h4{font-size:14px;color:var(--hm-olive-dark);margin:8px 0 0}
.hm-drawer__empty{padding:32px 8px}
.hm-drawer__foot{padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #EFE7DA}
.hm-drawer__foot[data-empty="1"]{padding-top:10px}
.hm-drawer .hm-giftbar{margin-bottom:10px;display:flex;flex-direction:column;gap:2px}
.hm-giftbar__now{display:inline-flex;align-items:center;gap:6px}
.hm-giftbar__now svg{width:16px;height:16px;flex:none}
.hm-shipbar{margin-bottom:12px;font-size:14px;color:var(--hm-text)}
.hm-shipbar__text{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.hm-shipbar__text svg{width:16px;height:16px;color:var(--hm-olive-dark);flex:none}
.hm-shipbar.is-done .hm-shipbar__text{color:var(--hm-olive-dark)}
.hm-shipbar__track{height:8px;background:#EFE7DA;border-radius:4px;overflow:hidden;margin-top:6px}
.hm-shipbar__fill{width:100%!important;height:100%;background:var(--hm-olive);border-radius:4px;transform-origin:right center;transition:transform .3s ease}
.hm-shipbar.is-done .hm-shipbar__fill{background:var(--hm-olive-dark)}
.hm-drawer__total{font-size:18px;margin-bottom:4px}
.hm-drawer__note{font-size:12px;color:var(--hm-muted);margin:0 0 10px}
.hm-drawer .hm-btn{width:100%}
.hm-drawer .hm-btn+.hm-btn{margin-top:8px}
.hm-express{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.hm-express__label{grid-column:1/-1;font-size:12px;color:var(--hm-muted);text-align:center;margin:0}
.hm-express__btn{height:40px;border-radius:12px;border:1px solid #D9D2C4;background:#f2efe8;color:#8A8A84;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;font-size:14px;direction:ltr;user-select:none}
.hm-express__btn.bit{font-style:italic;letter-spacing:.02em}
.hm-express--drawer{margin-top:14px;padding-top:12px;border-top:1px dashed #EFE7DA}
.hm-express--checkout{margin:0 auto 6px;max-width:520px}
.hm-express--checkout .hm-express__btn{height:44px}
.hm-express__or{text-align:center;font-size:13px;color:var(--hm-muted);margin:0 0 20px}
.hm-express button{display:none}
@media (max-width:520px){.hm-drawer__panel{width:100%}}

/* ---------- Woo shared: forms, notices, tables ---------- */
.woocommerce form .form-row{margin-bottom:16px}
.woocommerce form .form-row label{font-size:14px}
.woocommerce form .form-row .optional{color:var(--hm-muted);font-weight:400;font-size:12px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single{border-color:#DCD4C4;transition:border-color .15s,box-shadow .15s;color:var(--hm-ink)}
.woocommerce form .form-row input.input-text::placeholder,.woocommerce form .form-row textarea::placeholder{color:#A8A69E}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft);outline:none}
.woocommerce form .form-row.woocommerce-invalid input.input-text,.woocommerce form .form-row.woocommerce-invalid select,.woocommerce form .form-row.woocommerce-invalid textarea{border-color:var(--hm-err);box-shadow:0 0 0 3px var(--hm-err-bg)}
.woocommerce form .form-row.woocommerce-validated input.input-text{border-color:var(--hm-olive)}
.woocommerce form .form-row .required{color:var(--hm-orange);text-decoration:none}
.woocommerce form .form-row .description,.woocommerce form .form-row .hm-field__desc{display:block;font-size:12px;color:var(--hm-muted);margin-top:6px}
.woocommerce form .form-row .hm-field__error,.woocommerce form .form-row .checkout-inline-error-message{display:block;font-size:13px;color:var(--hm-err);margin-top:6px;font-weight:600}
.woocommerce form .form-row .hm-field__error::before,.woocommerce form .form-row .checkout-inline-error-message::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--hm-err);margin-inline-end:6px;vertical-align:middle}
.woocommerce form .form-row .woocommerce-input-wrapper{position:relative}
.woocommerce form .form-row .woocommerce-input-wrapper .hm-country-static,.woocommerce form .form-row .woocommerce-input-wrapper strong{display:flex;align-items:center;height:48px;padding:0 14px;border:1px solid #EAE3D5;border-radius:var(--hm-radius-md);background:#F7F3EA;color:var(--hm-text);font-weight:600}
.woocommerce form .form-row .woocommerce-input-wrapper input[type="hidden"]+strong{margin:0}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:calc(50% - 8px)}
.woocommerce form .form-row-first{float:right}
.woocommerce form .form-row-last{float:left}
.woocommerce form .form-row-wide{clear:both}
@media (max-width:640px){.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;float:none}}
.hm-check{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;color:var(--hm-text)}
.hm-check input,.woocommerce-form__input-checkbox,.woocommerce form .form-row input[type="checkbox"]{width:20px;height:20px;accent-color:var(--hm-olive);margin:0;flex:none;cursor:pointer}
.woocommerce-form__label-for-checkbox{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer}
.woocommerce-form__label-for-checkbox span{font-weight:600;color:var(--hm-text)}
/* notices */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{list-style:none;margin:0 0 20px;padding:14px 16px 14px 18px;border-radius:14px;border:1px solid var(--hm-line);border-inline-start:5px solid var(--hm-olive);background:#fff;color:var(--hm-text);font-size:15px;line-height:1.5;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;justify-content:space-between}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}
.woocommerce-error{border-inline-start-color:var(--hm-err);background:var(--hm-err-bg);color:var(--hm-err);flex-direction:column;align-items:flex-start;gap:6px}
.woocommerce-error li{font-weight:600}
.woocommerce-error a{color:var(--hm-err);text-decoration:underline}
.woocommerce-info{border-inline-start-color:var(--hm-orange)}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button,.woocommerce-message .restore-item{order:2;padding:8px 16px!important;min-height:40px;font-size:14px!important;display:inline-flex;align-items:center}
.woocommerce-message .button.wc-forward{margin-inline-start:auto}
.woocommerce-message .restore-item{background:transparent!important;color:var(--hm-olive-dark)!important;text-decoration:underline;padding:0!important}
/* generic Woo buttons on our pages */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1!important;transition:background .15s,transform .15s}
.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--hm-olive-dark)!important;color:#fff!important}
.woocommerce .hm-btn--ghost.button,.woocommerce button.hm-btn--ghost.button{background:transparent!important;color:var(--hm-olive-dark)!important;border:2px solid var(--hm-olive)!important}
.woocommerce .hm-btn--ghost.button:hover,.woocommerce button.hm-btn--ghost.button:hover{background:var(--hm-olive-soft)!important;color:var(--hm-olive-dark)!important}
.woocommerce .button.alt:hover,.woocommerce #place_order:hover{background:var(--hm-orange-dark)!important}
.woocommerce .button.is-loading,.woocommerce button.button.is-loading{pointer-events:none;cursor:progress}
.woocommerce .button.is-loading::before{content:"";width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:hm-spin .7s linear infinite;flex:none}
.woocommerce .hm-btn--ghost.button.is-loading::before{border-color:rgba(94,143,46,.3);border-top-color:var(--hm-olive)}
.woocommerce .button:disabled,.woocommerce button.button:disabled,.woocommerce .button[disabled]{opacity:.5!important;cursor:not-allowed}
/* prices */
.woocommerce .price del,.woocommerce del .amount{color:var(--hm-muted);font-weight:400}
.woocommerce .amount{unicode-bidi:isolate;white-space:nowrap}
/* blockUI overlays (Woo) */
.blockUI.blockOverlay{background:rgba(251,248,242,.6)!important;backdrop-filter:blur(1px)}
.blockUI.blockOverlay::before{content:"";position:absolute;top:50%;left:50%;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;border:3px solid var(--hm-olive-soft);border-top-color:var(--hm-olive);animation:hm-spin .7s linear infinite}
/* password toggle */
.hm-pass{position:relative;display:block}
.hm-pass input.input-text{padding-inline-end:52px!important}
.hm-pass__toggle{position:absolute;top:2px;left:2px;width:44px;height:44px;border:0;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--hm-muted);cursor:pointer}
.hm-pass__toggle:hover,.hm-pass__toggle[aria-pressed="true"]{color:var(--hm-olive-dark)}
.hm-pass__toggle svg{width:20px;height:20px}
.woocommerce form .show-password-input{display:none}
.woocommerce-password-strength{font-size:13px;font-weight:700;padding:6px 10px;border-radius:8px;margin-top:6px;text-align:right}
.woocommerce-password-strength.short,.woocommerce-password-strength.bad{background:var(--hm-err-bg);color:var(--hm-err)}
.woocommerce-password-strength.good{background:#FCEFD9;color:#8A5A00}
.woocommerce-password-strength.strong{background:var(--hm-ok-bg);color:var(--hm-olive-dark)}
.woocommerce-password-hint{font-size:12px;color:var(--hm-muted);display:block;margin-top:4px}

/* ---------- Cart page (spec 12.1: table -> cards on mobile) ---------- */
.woocommerce-cart .woocommerce>.woocommerce-notices-wrapper{margin-top:16px}
.hm-cartpage{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start;margin-top:8px}
.hm-cartpage__title{font-size:clamp(24px,3vw,32px);margin:8px 0 14px;display:flex;align-items:baseline;gap:10px}
.hm-cartpage__count{font-size:14px;font-weight:600;color:var(--hm-muted)}
.hm-giftbar--page{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;margin:16px 0 0;font-size:15px}
.hm-giftbar--page:empty{display:none}
.woocommerce table.shop_table.hm-cart-table{width:100%;border:1px solid #EFE7DA;border-radius:18px;background:#fff;box-shadow:var(--hm-shadow);overflow:visible;margin:0}
.woocommerce table.shop_table.hm-cart-table th{font-size:13px;font-weight:700;color:var(--hm-muted);padding:14px 12px 10px;border-bottom:1px solid #EFE7DA;text-align:right;background:transparent}
.woocommerce table.shop_table.hm-cart-table td{padding:16px 12px;vertical-align:middle;border-bottom:1px solid #EFE7DA;text-align:right}
.woocommerce table.shop_table.hm-cart-table th:first-child,.woocommerce table.shop_table.hm-cart-table td:first-child{padding-inline-start:18px}
.woocommerce table.shop_table.hm-cart-table th:last-child,.woocommerce table.shop_table.hm-cart-table td:last-child{padding-inline-end:12px}
.woocommerce table.shop_table.hm-cart-table td.product-thumbnail{width:96px}
.woocommerce table.shop_table.hm-cart-table{table-layout:fixed}
.woocommerce table.shop_table.hm-cart-table th.product-thumbnail{width:104px}
.woocommerce table.shop_table.hm-cart-table th.product-price{width:90px}
.woocommerce table.shop_table.hm-cart-table th.product-quantity{width:172px}
.woocommerce table.shop_table.hm-cart-table th.product-subtotal{width:100px}
.woocommerce table.shop_table.hm-cart-table th.product-remove{width:56px}
.woocommerce table.shop_table.hm-cart-table td.product-price,.woocommerce table.shop_table.hm-cart-table td.product-subtotal{white-space:nowrap}
.woocommerce table.shop_table.hm-cart-table td.product-quantity{padding-inline:12px}
.woocommerce table.shop_table.hm-cart-table td.product-thumbnail a{display:block;width:76px}
.woocommerce table.shop_table.hm-cart-table td.product-thumbnail img{width:76px;height:76px;object-fit:cover;border-radius:14px;border:1px solid #EFE7DA;background:#fff}
.hm-cart-item__name{font-weight:700;color:var(--hm-ink);font-size:16px;line-height:1.35}
a.hm-cart-item__name:hover{color:var(--hm-olive-dark)}
.hm-cart-item__gift{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--hm-olive-dark);font-weight:700;margin-top:4px}
.hm-cart-item__gift svg{width:16px;height:16px}
.hm-cart-item__unit-mobile{display:none}
.woocommerce table.shop_table.hm-cart-table .variation{margin:4px 0 0;font-size:13px;color:var(--hm-muted);display:flex;flex-wrap:wrap;gap:2px 6px}
.woocommerce table.shop_table.hm-cart-table .variation dt,.woocommerce table.shop_table.hm-cart-table .variation dd{margin:0;display:inline}
.woocommerce table.shop_table.hm-cart-table td.product-price{color:var(--hm-text);white-space:nowrap}
.woocommerce table.shop_table.hm-cart-table td.product-subtotal{font-weight:800;color:var(--hm-ink);white-space:nowrap;font-size:16px}
.hm-gift-price{color:var(--hm-olive-dark);font-weight:700}
.hm-gift-qty{color:var(--hm-olive-dark);font-weight:700;font-size:14px}
.hm-cart-item--gift td{background:var(--hm-olive-soft)}
/* quantity control 44px */
.woocommerce .hm-cart-table .quantity{display:inline-flex;align-items:center;border:1px solid var(--hm-line);border-radius:999px;background:#fff;height:44px;overflow:hidden}
.woocommerce .hm-cart-table .quantity .qty{width:48px;height:42px;border:0;border-radius:0;text-align:center;font:inherit;font-weight:800;font-size:15px;-moz-appearance:textfield;background:transparent;color:var(--hm-ink);padding:0}
.woocommerce .hm-cart-table .quantity .qty::-webkit-inner-spin-button,.woocommerce .hm-cart-table .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.woocommerce .hm-cart-table .quantity .qty:focus{outline:none;box-shadow:none;background:var(--hm-olive-soft)}
.woocommerce .hm-cart-table .qty-btn{width:44px;height:42px;border:0;background:transparent;font-size:20px;line-height:1;cursor:pointer;color:var(--hm-olive-dark);display:grid;place-items:center;transition:background .15s}
.woocommerce .hm-cart-table .qty-btn:hover{background:var(--hm-olive-soft)}
.woocommerce .hm-cart-table .qty-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--hm-olive);border-radius:999px}
.woocommerce .hm-cart-table .quantity label{display:none}
/* remove */
.woocommerce .hm-cart-table td.product-remove{width:60px;text-align:left}
.woocommerce .hm-cart-table a.remove.hm-cart-remove{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:44px;height:44px;border-radius:50%;color:var(--hm-muted)!important;font-size:0;transition:background .15s,color .15s;margin-inline-start:auto}
.woocommerce .hm-cart-table a.remove.hm-cart-remove svg{width:18px;height:18px}
.woocommerce .hm-cart-table a.remove.hm-cart-remove span{display:none}
.woocommerce .hm-cart-table a.remove.hm-cart-remove:hover{background:var(--hm-err-bg);color:var(--hm-err)!important}
/* actions row: coupon + update */
.woocommerce .hm-cart-table tr.hm-cart-actions-row td.actions{display:table-cell;padding:16px 18px;border-bottom:0;background:#FBF8F2;border-radius:0 0 18px 18px}
.woocommerce-cart .hm-cart-table .hm-cart-actions{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px}
.woocommerce-cart .hm-cart-table .coupon{display:flex;flex-direction:column;gap:6px;align-items:flex-start;flex:1;min-width:260px;max-width:420px}
.hm-coupon__label{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--hm-ink)}
.hm-coupon__label svg{width:16px;height:16px;color:var(--hm-orange)}
.hm-coupon__row{display:flex;gap:8px;width:100%}
.woocommerce-cart .hm-cart-table .coupon input.input-text{flex:1;min-width:0;height:44px;border:1px solid #DCD4C4;border-radius:999px;padding:0 16px;font:inherit;font-size:15px;background:#fff;text-transform:uppercase;letter-spacing:.04em}
.woocommerce-cart .hm-cart-table .coupon input.input-text::placeholder{text-transform:none;letter-spacing:0}
.woocommerce-cart .hm-cart-table .coupon input.input-text:focus{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft);outline:none}
.woocommerce-cart .hm-cart-table .coupon .coupon-error-notice{color:var(--hm-err);font-size:13px;font-weight:600}
.woocommerce-cart .hm-cart-table .coupon input.input-text.has-error{border-color:var(--hm-err)}
.woocommerce-cart .hm-cart-table .coupon .button,.woocommerce-cart .hm-cart-table .hm-cart-update{padding:0 18px!important;min-height:44px}
.woocommerce-cart .hm-cart-table .hm-cart-update:disabled{opacity:.45!important}
.hm-cartpage__continue{display:inline-flex;align-items:center;gap:4px;margin-top:14px;font-weight:700;color:var(--hm-olive-dark);min-height:44px}
.hm-cartpage__continue svg{width:16px;height:16px}
/* totals card */
.woocommerce .cart-collaterals.hm-cartpage__side{margin:0;position:sticky;top:calc(84px + 62px + 16px)}
.woocommerce .cart-collaterals .cart_totals{max-width:none;margin:0;background:#fff;border:1px solid #EFE7DA;border-radius:18px;padding:20px;box-shadow:var(--hm-shadow)}
.woocommerce .cart_totals h2{font-size:20px;margin:0 0 12px}
.woocommerce .cart_totals table.shop_table{border:0;background:transparent;box-shadow:none;border-radius:0;width:100%;overflow:visible;margin:0}
.woocommerce .cart_totals table.shop_table th,.woocommerce .cart_totals table.shop_table td{padding:10px 0;border-bottom:1px solid #EFE7DA;text-align:right;vertical-align:top;font-size:15px}
.woocommerce .cart_totals table.shop_table th{font-weight:600;color:var(--hm-text);width:40%}
.woocommerce .cart_totals table.shop_table td{text-align:left;color:var(--hm-ink);font-weight:700}
.woocommerce .cart_totals table.shop_table tr.order-total th,.woocommerce .cart_totals table.shop_table tr.order-total td{border-bottom:0;padding-top:14px;font-size:18px;font-weight:800;color:var(--hm-ink)}
.woocommerce .cart_totals table.shop_table tr.order-total td .amount{color:var(--hm-olive-dark)}
.woocommerce .cart_totals table.shop_table tr.cart-discount td{color:var(--hm-olive-dark)}
.woocommerce .cart_totals table.shop_table tr.cart-discount .woocommerce-remove-coupon{font-size:13px;color:var(--hm-muted);margin-inline-start:6px;text-decoration:underline}
.woocommerce .cart_totals .woocommerce-shipping-totals td{font-weight:400;text-align:right}
.woocommerce .cart_totals .woocommerce-shipping-methods,.woocommerce-checkout .woocommerce-shipping-methods{list-style:none;padding:0;margin:0}
.woocommerce .cart_totals .woocommerce-shipping-methods li,.woocommerce-checkout .woocommerce-shipping-methods li{padding:0;margin:0;display:flex;align-items:center;gap:8px}
.woocommerce .cart_totals .woocommerce-shipping-methods label,.woocommerce-checkout .woocommerce-shipping-methods label{display:flex;flex:1;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--hm-text);cursor:pointer;font-size:14px;margin:0}
.woocommerce .cart_totals .woocommerce-shipping-methods input[type=radio],.woocommerce-checkout .woocommerce-shipping-methods input[type=radio]{width:20px;height:20px;accent-color:var(--hm-olive);margin:0;flex:none}
.woocommerce .cart_totals .woocommerce-shipping-methods label .amount,.woocommerce-checkout .woocommerce-shipping-methods label .amount{margin-inline-start:auto;font-weight:700;color:var(--hm-ink)}
.woocommerce .cart_totals .woocommerce-shipping-destination,.woocommerce-checkout .woocommerce-shipping-destination{font-size:13px;color:var(--hm-muted);margin:6px 0 0}
.woocommerce .cart_totals .shipping-calculator-button{font-size:13px;color:var(--hm-olive-dark);text-decoration:underline;display:inline-block;margin-top:4px}
.woocommerce .cart_totals .shipping-calculator-form{margin-top:10px}
.woocommerce .cart_totals .wc-proceed-to-checkout{padding:16px 0 0}
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button{width:100%;min-height:52px;font-size:17px!important;display:flex;margin:0}
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button:hover{background:var(--hm-orange-dark)!important}
.hm-cart-trust{list-style:none;margin:14px 0 0;padding:14px 0 0;border-top:1px dashed #EFE7DA;display:grid;gap:8px;font-size:13px;color:var(--hm-text)}
.hm-cart-trust li{display:flex;align-items:center;gap:8px}
.hm-cart-trust__ship{display:block}
.hm-cart-trust__ship .hm-shipbar{width:100%}
.hm-cart-trust svg{width:16px;height:16px;color:var(--hm-olive-dark);flex:none}
.hm-cart-trust .hm-shipbar{margin:0 0 4px}
/* cross-sells */
.woocommerce-cart .cross-sells{margin:36px 0 12px}
.woocommerce-cart .cross-sells>h2{font-size:clamp(20px,2.2vw,26px);margin:0 0 16px}
.woocommerce-cart .cross-sells .hm-products{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:1100px){.woocommerce-cart .cross-sells .hm-products{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.woocommerce-cart .cross-sells .hm-products{grid-template-columns:repeat(2,1fr);gap:10px}}
@media (max-width:1000px){
  .hm-cartpage{grid-template-columns:1fr}
  .woocommerce .cart-collaterals.hm-cartpage__side{position:static}
}
@media (max-width:760px){
  .woocommerce table.shop_table.hm-cart-table,.woocommerce table.shop_table.hm-cart-table tbody,.woocommerce table.shop_table.hm-cart-table tr,.woocommerce table.shop_table.hm-cart-table td{display:block}
  .woocommerce table.shop_table.hm-cart-table thead{display:none}
  .woocommerce table.shop_table.hm-cart-table{background:transparent;border:0;box-shadow:none;table-layout:auto}
  .woocommerce table.shop_table.hm-cart-table tr.cart_item{position:relative;background:#fff;border:1px solid #EFE7DA;border-radius:16px;box-shadow:var(--hm-shadow);margin-bottom:12px;padding:14px 14px 14px 14px;display:grid;grid-template-columns:76px 1fr;grid-template-areas:"thumb name" "thumb qty" "sub sub";gap:6px 12px}
  .woocommerce table.shop_table.hm-cart-table tr.cart_item td{padding:0;border:0;text-align:right;width:auto;white-space:normal}
  .woocommerce table.shop_table.hm-cart-table td.product-thumbnail{grid-area:thumb;width:auto}
  .woocommerce table.shop_table.hm-cart-table td.product-thumbnail img{width:76px;height:76px}
  .woocommerce table.shop_table.hm-cart-table td.product-name{grid-area:name;padding-inline-end:44px}
  .hm-cart-item__unit-mobile{display:block;font-size:13px;color:var(--hm-muted);margin-top:2px}
  .woocommerce table.shop_table.hm-cart-table td.product-price{display:none}
  .woocommerce table.shop_table.hm-cart-table td.product-quantity{grid-area:qty}
  .woocommerce table.shop_table.hm-cart-table td.product-subtotal{grid-area:sub;display:flex;justify-content:space-between;align-items:center;border-top:1px dashed #EFE7DA;padding-top:10px;margin-top:4px;font-size:16px}
  .woocommerce table.shop_table.hm-cart-table td.product-subtotal::before{content:attr(data-title);font-size:13px;font-weight:600;color:var(--hm-muted)}
  .woocommerce table.shop_table.hm-cart-table td.product-remove{position:absolute;top:8px;left:8px;width:auto}
  .woocommerce table.shop_table.hm-cart-table tr.hm-cart-actions-row{background:#fff;border:1px solid #EFE7DA;border-radius:16px}
  .woocommerce .hm-cart-table tr.hm-cart-actions-row td.actions{display:block;border-radius:16px;padding:14px}
  .woocommerce-cart .hm-cart-table .hm-cart-actions{flex-direction:column;align-items:stretch}
  .woocommerce-cart .hm-cart-table .coupon{max-width:none;min-width:0}
  .woocommerce-cart .hm-cart-table .hm-cart-update{width:100%}
  .hm-cart-item--gift{background:var(--hm-olive-soft)!important}
  .hm-cart-item--gift td{background:transparent}
  .hm-cartpage__title{font-size:24px}
}

/* ---------- Checkout ---------- */
.woocommerce-checkout .woocommerce>.woocommerce-notices-wrapper{margin-top:16px}
.woocommerce-checkout .woocommerce-form-login-toggle,.woocommerce-checkout .woocommerce-form-coupon-toggle{margin:0 0 12px}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{background:#fff;border:1px dashed #DCD4C4;border-inline-start:1px dashed #DCD4C4;border-radius:14px;padding:12px 16px;font-size:14px;color:var(--hm-text)}
.woocommerce-checkout .woocommerce-form-login-toggle a,.woocommerce-checkout .woocommerce-form-coupon-toggle a{color:var(--hm-olive-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.woocommerce-checkout form.woocommerce-form-login,.woocommerce-checkout form.checkout_coupon{background:#fff;border:1px solid #EFE7DA;border-radius:16px;padding:20px;margin:0 0 16px;max-width:none}
.woocommerce-checkout form.checkout_coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.woocommerce-checkout form.checkout_coupon p{margin:0;flex:1 1 100%}
.woocommerce-checkout form.checkout_coupon .form-row-first{flex:1 1 220px;width:auto;float:none}
.woocommerce-checkout form.checkout_coupon .form-row-last{flex:0 0 auto;width:auto;float:none}
.woocommerce-checkout form.checkout_coupon input#coupon_code{height:48px;border-radius:999px;text-transform:uppercase}
.hm-checkout__grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start}
.hm-checkout__main{min-width:0}
.woocommerce-checkout #customer_details{background:#fff;border:1px solid #EFE7DA;border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:var(--hm-shadow)}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{width:100%;float:none}
.woocommerce-checkout #customer_details .col-2{margin-top:6px}
.woocommerce-checkout h3{font-size:20px;margin:0 0 16px;display:flex;align-items:center;gap:8px}
.woocommerce-checkout h3#ship-to-different-address{font-size:16px;margin:8px 0 12px}
.woocommerce-checkout h3#ship-to-different-address label{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-weight:700}
.woocommerce-checkout h3#ship-to-different-address input{width:20px;height:20px;accent-color:var(--hm-olive);margin:0}
.woocommerce-checkout .woocommerce-account-fields{margin:8px 0}
.woocommerce-checkout .woocommerce-account-fields .create-account{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-weight:600}
.woocommerce-checkout .woocommerce-account-fields .create-account input{width:20px;height:20px;accent-color:var(--hm-olive);margin:0}
.woocommerce-checkout .woocommerce-additional-fields h3{margin-top:12px}
.woocommerce-checkout .form-row.notes textarea{min-height:88px}
/* order card */
.hm-checkout__side{position:sticky;top:calc(84px + 62px + 16px)}
.hm-checkout__card{background:#fff;border:1px solid #EFE7DA;border-radius:18px;padding:20px;box-shadow:var(--hm-shadow)}
.hm-checkout__toggle{display:none}
.woocommerce-checkout h3#order_review_heading{margin:0 0 12px}
.woocommerce-checkout .woocommerce-checkout-review-order-table{border:0;background:transparent;box-shadow:none;border-radius:0;width:100%;margin:0}
.woocommerce-checkout .woocommerce-checkout-review-order-table thead{display:none}
.woocommerce-checkout .woocommerce-checkout-review-order-table td,.woocommerce-checkout .woocommerce-checkout-review-order-table th{padding:10px 0;border-bottom:1px solid #EFE7DA;text-align:right;font-size:14px;vertical-align:top}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{color:var(--hm-text);font-weight:600;line-height:1.4;width:100%}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{width:1%}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .product-quantity{color:var(--hm-muted);font-weight:600;white-space:nowrap;unicode-bidi:isolate}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total,.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{text-align:left;font-weight:700;color:var(--hm-ink);white-space:nowrap}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{font-weight:600;color:var(--hm-text)}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th,.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td{border-bottom:0;padding-top:14px;font-size:18px;font-weight:800;color:var(--hm-ink)}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td .amount{color:var(--hm-olive-dark)}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td{font-weight:400}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.hm-cart-item--gift td.product-name{color:var(--hm-olive-dark)}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart-discount td{color:var(--hm-olive-dark)}
/* payment */
.woocommerce-checkout #payment{background:transparent;border-radius:0;margin-top:14px}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;padding:0 0 12px;margin:0;border-bottom:1px solid #EFE7DA}
.woocommerce-checkout #payment ul.payment_methods li{margin:0 0 8px}
.woocommerce-checkout #payment ul.payment_methods li>label{display:flex;align-items:center;gap:10px;min-height:48px;width:100%;box-sizing:border-box;justify-content:flex-start;padding:0 14px;border:1px solid #DCD4C4;border-radius:12px;font-weight:700;color:var(--hm-ink);cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
.woocommerce-checkout #payment ul.payment_methods li>input[type=radio]{position:absolute;opacity:0;width:1px;height:1px}
.woocommerce-checkout #payment ul.payment_methods li>input[type=radio]:checked+label{border-color:#C9C1B0;background:#fff}
.woocommerce-checkout #payment ul.payment_methods li>input[type=radio]:focus-visible+label{box-shadow:var(--hm-focus)}
.woocommerce-checkout #payment ul.payment_methods li>label::before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid #C9C1B0;flex:none;transition:border .15s,box-shadow .15s}
.woocommerce-checkout #payment ul.payment_methods li>input[type=radio]:checked+label::before{border-color:#4A4A46;box-shadow:inset 0 0 0 4px #fff;background:#4A4A46}
.woocommerce-checkout #payment ul.payment_methods li>label img{max-height:22px;margin-inline-start:auto}
.woocommerce-checkout #payment div.payment_box{background:#FBF8F2;border-radius:12px;padding:10px 14px;margin:6px 0 0;font-size:13px;color:var(--hm-text);position:relative}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.payment_box p:last-child{margin:0}
.woocommerce-checkout #payment .woocommerce-notice--info,.woocommerce-checkout #payment ul.payment_methods li.woocommerce-notice{border:0;background:transparent;padding:0;font-size:14px;color:var(--hm-text)}
.woocommerce-checkout .place-order{padding:14px 0 0}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin:0 0 12px}
.woocommerce-checkout .woocommerce-privacy-policy-text p{font-size:12px;color:var(--hm-muted);line-height:1.5}
.woocommerce-checkout .woocommerce-privacy-policy-text a,.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a{color:var(--hm-olive-dark);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row{margin:0}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox{align-items:flex-start;padding-top:2px}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox input{margin-top:12px}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox span{font-weight:600;font-size:14px;line-height:1.5}
.woocommerce-checkout .woocommerce-terms-and-conditions{background:#FBF8F2;border-radius:12px;padding:12px 14px;font-size:13px;max-height:200px;overflow:auto;margin:0 0 12px}
.woocommerce-checkout #place_order{width:100%;min-height:54px;font-size:17px!important;display:flex;margin:0}
.woocommerce-checkout .place-order .form-row.place-order{margin:0}
.hm-checkout__trust{list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px dashed #EFE7DA;display:grid;gap:8px;font-size:13px;color:var(--hm-text)}
.hm-checkout__trust li{display:flex;align-items:center;gap:8px}
.hm-checkout__trust svg{width:16px;height:16px;color:var(--hm-olive-dark);flex:none}
.woocommerce-checkout .checkout_coupon .button,.woocommerce-checkout .woocommerce-form-login .button{min-height:48px}
.woocommerce-checkout .woocommerce-form-login .form-row.form-row-first,.woocommerce-checkout .woocommerce-form-login .form-row.form-row-last{width:calc(50% - 8px)}
.woocommerce-checkout .woocommerce-form-login .lost_password{font-size:13px}
.woocommerce-checkout .woocommerce-form-login .lost_password a{color:var(--hm-olive-dark);text-decoration:underline}
.woocommerce-checkout .woocommerce-form-login .form-row:has(.woocommerce-form-login__submit){display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.woocommerce-checkout .hm-checkout__grid .woocommerce-NoticeGroup{grid-column:1/-1}
.woocommerce-checkout .woocommerce-NoticeGroup-checkout{margin-bottom:12px}
@media (max-width:1000px){
  .hm-checkout__grid{grid-template-columns:1fr;gap:16px}
  .hm-checkout__side{position:static;order:2}
  .hm-checkout__main{order:1}
  .woocommerce-checkout #customer_details{padding:18px 16px}
  .hm-checkout__card{padding:16px}
  .hm-checkout__toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;min-height:44px;border:0;background:transparent;font:inherit;font-weight:800;font-size:18px;color:var(--hm-ink);cursor:pointer;padding:0;text-align:right}
  .hm-checkout__toggle svg{width:20px;height:20px;transition:transform .2s;color:var(--hm-olive-dark)}
  .hm-checkout__toggle[aria-expanded="false"] svg{transform:rotate(180deg)}
  .hm-checkout__n{font-size:14px;font-weight:600;color:var(--hm-muted)}
  .woocommerce-checkout h3#order_review_heading{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0}
  .hm-checkout__card.is-collapsed .woocommerce-checkout-review-order-table tbody{display:none}
  .hm-checkout__card.is-collapsed .woocommerce-checkout-review-order-table tfoot tr:not(.order-total):not(.woocommerce-shipping-totals):not(.hm-dz-why){display:none}/*HM 2026-10-08 shipping choice stays visible when the summary is collapsed*/
  .hm-checkout__card.is-collapsed .woocommerce-checkout-review-order-table tr.order-total th,.hm-checkout__card.is-collapsed .woocommerce-checkout-review-order-table tr.order-total td{padding-top:8px}
  .hm-checkout__card .woocommerce-checkout-review-order-table{margin-top:8px}
  .hm-express__or{font-size:12px}
}

/* ---------- Order received / thank you ---------- */
.woocommerce-order{background:#fff;border:1px solid #EFE7DA;border-radius:18px;padding:24px;margin:16px 0}
.woocommerce-order .woocommerce-thankyou-order-received{font-size:clamp(20px,2.4vw,26px);font-weight:800;color:var(--hm-olive-dark);margin-bottom:16px}
.woocommerce-order ul.woocommerce-order-overview{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.woocommerce-order ul.woocommerce-order-overview li{background:#FBF8F2;border-radius:12px;padding:10px 12px;font-size:13px;color:var(--hm-muted)}
.woocommerce-order ul.woocommerce-order-overview li strong{display:block;color:var(--hm-ink);font-size:16px;margin-top:2px}

/* ---------- My account ---------- */
.woocommerce-account .woocommerce{gap:24px}
.woocommerce-account.logged-in .woocommerce{grid-template-columns:240px minmax(0,1fr)}
.woocommerce-MyAccount-navigation.hm-acct-nav ul{background:#fff;border:1px solid #EFE7DA;border-radius:18px;padding:8px;box-shadow:var(--hm-shadow)}
.woocommerce-MyAccount-navigation.hm-acct-nav li a{display:flex;align-items:center;gap:10px;min-height:46px;padding:8px 12px;border:0;border-radius:12px;color:var(--hm-text);font-weight:600;transition:background .15s,color .15s}
.woocommerce-MyAccount-navigation.hm-acct-nav li a svg{width:20px;height:20px;color:var(--hm-olive-dark);flex:none}
.woocommerce-MyAccount-navigation.hm-acct-nav li a:hover{background:#FBF8F2;color:var(--hm-ink)}
.woocommerce-MyAccount-navigation.hm-acct-nav li.is-active a{background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.woocommerce-MyAccount-navigation.hm-acct-nav li.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--hm-muted)}
.woocommerce-MyAccount-navigation.hm-acct-nav li.woocommerce-MyAccount-navigation-link--customer-logout a svg{color:var(--hm-muted)}
.woocommerce-MyAccount-content{border-radius:18px;border-color:#EFE7DA;padding:24px;box-shadow:var(--hm-shadow)}
.woocommerce-MyAccount-content>h2,.woocommerce-MyAccount-content h2{font-size:22px;margin:0 0 12px}
.woocommerce-MyAccount-content>p{color:var(--hm-text)}
.hm-dash__hello h2{font-size:clamp(22px,2.6vw,28px);margin:0 0 4px}
.hm-dash__hello p{margin:0 0 18px;color:var(--hm-text)}
.hm-dash__logout{color:var(--hm-muted);font-size:14px}
.hm-dash__logout a{text-decoration:underline;text-underline-offset:3px}
.hm-tiles{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.hm-tile{display:flex;flex-direction:column;gap:6px;min-height:132px;padding:16px;border:1px solid #EFE7DA;border-radius:16px;background:#FBF8F2;color:var(--hm-text);transition:transform .15s,box-shadow .15s,border-color .15s}
.hm-tile:hover{transform:translateY(-2px);box-shadow:var(--hm-shadow-hover);border-color:var(--hm-olive);color:var(--hm-text)}
.hm-tile__icon{width:40px;height:40px;border-radius:12px;background:#fff;display:grid;place-items:center;color:var(--hm-olive-dark);border:1px solid #EFE7DA}
.hm-tile__icon svg{width:22px;height:22px}
.hm-tile__title{font-weight:800;color:var(--hm-ink);font-size:16px}
.hm-tile__desc{font-size:13px;line-height:1.45;color:var(--hm-text)}
.hm-tiles li:first-child .hm-tile{background:var(--hm-olive-soft);border-color:#D6E4C2}
.hm-dash__cta{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff;border:1px dashed #DCD4C4;border-radius:16px;padding:16px 18px}
.hm-dash__cta strong{display:block;color:var(--hm-ink)}
.hm-dash__cta span{font-size:14px;color:var(--hm-text)}
/* orders table -> cards */
.woocommerce-account table.shop_table.my_account_orders,.woocommerce-account table.shop_table.woocommerce-orders-table{width:100%;border:0;background:transparent;border-radius:0;box-shadow:none;margin:0}
.woocommerce-account table.woocommerce-orders-table th{font-size:13px;color:var(--hm-muted);border-bottom:1px solid #EFE7DA;padding:8px 10px;text-align:right}
.woocommerce-account table.woocommerce-orders-table td{padding:14px 10px;border-bottom:1px solid #EFE7DA;vertical-align:middle;text-align:right;font-size:15px}
.woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-number a{font-weight:800;color:var(--hm-olive-dark)}
.woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-status{font-weight:700;color:var(--hm-ink)}
.woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{text-align:left}
.woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button{min-height:40px;padding:0 14px!important;font-size:14px!important;margin-inline-start:6px}
.woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button.cancel{background:transparent!important;color:var(--hm-muted)!important;border:1px solid var(--hm-line)!important}
.woocommerce-account .woocommerce-pagination{display:flex;gap:8px;justify-content:center;margin-top:16px}
.woocommerce-account .woocommerce-pagination .button{min-height:44px}
@media (max-width:760px){
  .woocommerce-account table.woocommerce-orders-table,.woocommerce-account table.woocommerce-orders-table tbody,.woocommerce-account table.woocommerce-orders-table tr,.woocommerce-account table.woocommerce-orders-table td{display:block}
  .woocommerce-account table.woocommerce-orders-table thead{display:none}
  .woocommerce-account table.woocommerce-orders-table tr{background:#FBF8F2;border:1px solid #EFE7DA;border-radius:14px;padding:12px 14px;margin-bottom:10px;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
  .woocommerce-account table.woocommerce-orders-table td{padding:0;border:0;font-size:14px}
  .woocommerce-account table.woocommerce-orders-table td::before{content:attr(data-title);display:block;font-size:12px;color:var(--hm-muted);font-weight:600}
  .woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{grid-column:1/-1;text-align:right;padding-top:8px;border-top:1px dashed #EFE7DA;margin-top:4px}
  .woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions::before{display:none}
  .woocommerce-account table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button{margin:0 0 0 6px}
}
/* addresses */
.woocommerce-account .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.woocommerce-account .woocommerce-Addresses .col-1,.woocommerce-account .woocommerce-Addresses .col-2{width:100%;float:none}
.woocommerce-account .woocommerce-Address{background:#FBF8F2;border:1px solid #EFE7DA;border-radius:14px;padding:16px}
.woocommerce-account .woocommerce-Address-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.woocommerce-account .woocommerce-Address-title h2,.woocommerce-account .woocommerce-Address-title h3{font-size:17px;margin:0}
.woocommerce-account .woocommerce-Address-title a.edit{font-size:14px;font-weight:700;color:var(--hm-olive-dark);text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
.woocommerce-account .woocommerce-Address address{font-style:normal;line-height:1.7;color:var(--hm-text)}
@media (max-width:640px){.woocommerce-account .woocommerce-Addresses{grid-template-columns:1fr}}
/* edit account / address forms */
.woocommerce-account .woocommerce-EditAccountForm fieldset{border:1px solid #EFE7DA;border-radius:14px;padding:12px 16px 4px;margin:8px 0 16px}
.woocommerce-account .woocommerce-EditAccountForm legend{font-weight:800;color:var(--hm-ink);padding:0 6px}
.woocommerce-account .woocommerce-EditAccountForm .button,.woocommerce-account .woocommerce-address-fields .button{min-height:48px}
/* view order */
.woocommerce-account .woocommerce-order-details,.woocommerce-account .woocommerce-customer-details{margin-top:20px}
.woocommerce-account table.woocommerce-table--order-details{width:100%;border:0;background:transparent;box-shadow:none;border-radius:0}
.woocommerce-account table.woocommerce-table--order-details th,.woocommerce-account table.woocommerce-table--order-details td{padding:10px 0;border-bottom:1px solid #EFE7DA;text-align:right;font-size:15px}
.woocommerce-account table.woocommerce-table--order-details td.woocommerce-table__product-total,.woocommerce-account table.woocommerce-table--order-details tfoot td{text-align:left;font-weight:700}
.woocommerce-account .woocommerce-customer-details address{font-style:normal;background:#FBF8F2;border-radius:14px;padding:14px 16px;line-height:1.7}
/* mobile: navigation as scrollable tabs */
@media (max-width:820px){
  .woocommerce-account.logged-in .woocommerce{grid-template-columns:1fr;gap:14px}
  .woocommerce-MyAccount-navigation.hm-acct-nav{margin:0 calc(-1 * var(--hm-gutter));padding:0 var(--hm-gutter);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .woocommerce-MyAccount-navigation.hm-acct-nav::-webkit-scrollbar{display:none}
  .woocommerce-MyAccount-navigation.hm-acct-nav ul{display:flex;gap:6px;padding:6px;border-radius:999px;width:max-content;min-width:100%}
  .woocommerce-MyAccount-navigation.hm-acct-nav li a{min-height:44px;padding:0 14px;border-radius:999px;white-space:nowrap;font-size:14px}
  .woocommerce-MyAccount-navigation.hm-acct-nav li a svg{width:18px;height:18px}
  .woocommerce-MyAccount-content{padding:18px 16px}
  .hm-tiles{grid-template-columns:1fr 1fr;gap:10px}
  .hm-tile{min-height:120px;padding:14px}
  .hm-dash__cta .hm-btn{width:100%}
}
@media (max-width:340px){.hm-tiles{grid-template-columns:1fr}}
/* login / register */
.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.hm-auth{max-width:980px;margin:16px auto 32px}
.hm-auth__intro{text-align:center;max-width:56ch;margin:0 auto 22px}
.hm-auth__intro h1{font-size:clamp(26px,3.4vw,38px);margin:0 0 6px}
.hm-auth__intro p{color:var(--hm-text);margin:0}
.hm-auth__tabs{display:none}
.hm-auth__cols{display:grid;grid-template-columns:1fr;gap:20px}
.hm-auth--two .hm-auth__cols{grid-template-columns:1fr 1fr}
.hm-auth:not(.hm-auth--two) .hm-auth__cols{max-width:480px;margin:0 auto}
.hm-auth__col{width:100%;float:none}
.hm-auth__card{background:#fff;border:1px solid #EFE7DA;border-radius:20px;padding:26px 24px;box-shadow:var(--hm-shadow);height:100%;max-width:none}
.hm-auth__card h2{font-size:22px;margin:0 0 4px}
.hm-auth__sub{color:var(--hm-text);font-size:14px;margin:0 0 18px}
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register{background:transparent;border:0;padding:0;max-width:none;border-radius:0}
.hm-auth__row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:-4px 0 12px}
.hm-auth__lost{font-size:14px;font-weight:700;color:var(--hm-olive-dark);text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
.hm-auth .woocommerce-form-login__submit,.hm-auth .woocommerce-form-register__submit{width:100%;min-height:52px;font-size:17px!important}
.hm-auth__switch{margin:14px 0 0;font-size:14px;color:var(--hm-text);text-align:center}
.hm-auth__note{font-size:13px;color:var(--hm-muted)}
.hm-auth .woocommerce-privacy-policy-text p{font-size:12px;color:var(--hm-muted);line-height:1.5}
.hm-auth .woocommerce-privacy-policy-text a{color:var(--hm-olive-dark);text-decoration:underline}
@media (max-width:820px){
  .hm-auth--two .hm-auth__cols{grid-template-columns:1fr}
  .hm-auth--two .hm-auth__tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#fff;border:1px solid #EFE7DA;border-radius:999px;padding:4px;margin:0 0 14px}
  .hm-auth__tabs button{min-height:44px;border:0;border-radius:999px;background:transparent;font:inherit;font-weight:700;color:var(--hm-text);cursor:pointer;transition:background .15s,color .15s}
  .hm-auth__tabs button[aria-selected="true"]{background:var(--hm-olive);color:#fff}
  .hm-auth--two:not(.hm-auth--reg) #hm-panel-reg,.hm-auth--two.hm-auth--reg #hm-panel-login{display:none}
  .hm-auth__card{padding:20px 16px}
}
/* lost password */
.woocommerce-account .woocommerce-ResetPassword,.woocommerce-account .woocommerce-lost-password .woocommerce-form{background:#fff;border:1px solid #EFE7DA;border-radius:20px;padding:26px 24px;max-width:480px;margin:16px auto 32px;box-shadow:var(--hm-shadow)}
.woocommerce-account .woocommerce-ResetPassword .button{width:100%;min-height:50px}
.woocommerce-account .woocommerce-ResetPassword .form-row-first{width:100%;float:none}

/* ---------- 404 ---------- */
.hm-404{padding:24px 0 48px}
.hm-404__card{background:#fff;border:1px solid #EFE7DA;border-radius:var(--hm-radius-xl);padding:clamp(32px,5vw,64px) clamp(20px,4vw,48px);text-align:center;max-width:760px;margin:0 auto;box-shadow:var(--hm-shadow)}
.hm-404__icon{display:inline-grid;place-items:center;width:88px;height:88px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.hm-404__icon svg{width:44px;height:44px}
.hm-404__code{font-size:14px;font-weight:800;color:var(--hm-orange);letter-spacing:.2em;margin:12px 0 4px}
.hm-404 h1{font-size:clamp(28px,4vw,44px);margin:0 0 10px}
.hm-404 .hm-lead{max-width:44ch;margin:0 auto 22px}
.hm-404__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:22px}
.hm-404 .hm-search--404{display:flex;max-width:460px;margin:0 auto 20px;height:50px;background:#fff;border:1px solid #DCD4C4}
.hm-404 .hm-search--404 input{font-size:15px}
.hm-404 .hm-search--404 button{width:40px;height:40px;border-radius:50%;color:var(--hm-olive-dark)}
.hm-404__links{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.hm-404__links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--hm-line);background:#fff;color:var(--hm-text);font-size:14px;font-weight:600}
.hm-404__links a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
@media (max-width:520px){.hm-404__actions .hm-btn{width:100%}}

/* ---------- Footer (fix: main.css late 4-col rule broke phones) ---------- */
.hm-footer{background:#F1EBDF;border-top:1px solid #EAE2D3;margin-top:56px}
.hm-footer .hm-footer__grid{grid-template-columns:1.3fr 1fr 1fr 1.4fr;gap:32px;padding:44px 0 28px}
.hm-footer__col h4,.hm-footer__col .hm-footer__h{font-size:16px;margin:0 0 12px}
.hm-footer__col ul{list-style:none;margin:0;padding:0}
.hm-footer__col li{margin:0}
.hm-footer__col a{display:inline-flex;align-items:center;min-height:36px;color:var(--hm-text);transition:color .15s}
.hm-footer__col a:hover{color:var(--hm-olive-dark)}
.hm-footer__brand{padding-inline-end:16px}
.hm-footer__brand img{height:52px;width:auto;margin-bottom:12px}
.hm-footer__brand p{font-size:14px;line-height:1.7;margin:0 0 10px}
.hm-footer__biz{font-style:normal;font-size:14px;line-height:1.7;display:flex;flex-direction:column;color:var(--hm-text)}
.hm-footer__biz a{color:var(--hm-text);min-height:32px;display:inline-flex;align-items:center;gap:4px;align-self:flex-start}
.hm-footer__biz a:hover{color:var(--hm-olive-dark)}
.hm-footer__leaf{position:absolute;bottom:0;left:0;color:var(--hm-olive);opacity:.7;pointer-events:none}
.hm-footer__news p{font-size:14px;margin:0 0 12px}
.hm-news{display:flex;flex-direction:column;gap:10px}
.hm-news input{height:48px;border-radius:12px;border:1px solid #DCD4C4;background:#fff;padding:0 14px;font:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}
.hm-news input:focus{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft);outline:none}
.hm-news.is-invalid input{border-color:var(--hm-err);box-shadow:0 0 0 3px var(--hm-err-bg)}
.hm-news .hm-btn{width:100%;height:48px;border-radius:12px}
.hm-news__msg{margin:0;font-size:13px;line-height:1.5;color:var(--hm-olive-dark);font-weight:600}
.hm-news__msg:empty{display:none}
.hm-news.is-invalid .hm-news__msg{color:var(--hm-err)}
.hm-footer__bottom{border-top:1px solid #E6DDCB;padding:16px 0;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--hm-muted);gap:12px;flex-wrap:wrap}
.hm-footer__bottom .hm-built{color:var(--hm-muted);unicode-bidi:isolate}
.hm-footer__bottom .hm-built b{color:var(--hm-orange)}
.hm-social{display:flex;gap:8px}
.hm-social a{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #E6DFD1;display:grid;place-items:center;color:var(--hm-ink);transition:background .15s,color .15s,border-color .15s}
.hm-social a:hover{background:var(--hm-olive-soft);color:var(--hm-olive-dark);border-color:var(--hm-olive)}
.hm-social svg{width:18px;height:18px}
@media (max-width:900px){
  .hm-footer .hm-footer__grid{grid-template-columns:1fr 1fr;gap:28px 24px;padding:36px 0 24px}
  .hm-footer__brand{grid-column:1/-1;padding:0}
  .hm-footer__news{grid-column:1/-1}
}
@media (max-width:520px){
  .hm-footer .hm-footer__grid{grid-template-columns:1fr;gap:24px}
  .hm-footer__brand,.hm-footer__news{grid-column:auto}
  .hm-footer__bottom{flex-direction:column;align-items:flex-start;gap:14px}
  .hm-footer__bottom .hm-built{order:3}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .hm-nav,.hm-drawer__panel,.hm-drawer__bg,.hm-toast,.hm-shipbar__fill,.hm-burger span,.hm-menu__top svg,.hm-tile,.hm-btn,.hm-cart-btn__count{transition:none!important;animation:none!important}
  .hm-nav .hm-menu .hm-menu__item.is-open>.hm-sub,.hm-search-ov__panel{animation:none}
  .hm-drawer.is-busy .hm-drawer__body .hm-mini-item::after{animation:none;display:none}
  .hm-btn.is-loading::before,.woocommerce .button.is-loading::before,.hm-spinner,.blockUI.blockOverlay::before{animation:none;border-top-color:transparent}
}

/* QA fix: checkout order summary - shipping options no longer force a wide 2nd column (product names were squeezed to ~70px).
   Items stay a 2-col table; totals become flex rows so the shipping list can use the full width. */
.woocommerce-checkout .woocommerce-checkout-review-order-table{display:block}
.woocommerce-checkout .woocommerce-checkout-review-order-table tbody{display:table;width:100%;table-layout:auto}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{width:auto}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{width:1%;white-space:nowrap}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot{display:block}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #EFE7DA}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{display:block;border-bottom:0}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals{flex-direction:column;align-items:stretch;gap:0}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals th{padding-bottom:2px}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals td{padding-top:0;text-align:right;white-space:normal}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total{border-bottom:0}

/* QA fix: 44px touch targets for footer links and footer phone/WhatsApp on touch screens (were 36px / 32px) */
@media (max-width:900px){
  .hm-footer__col a{min-height:44px}
  .hm-footer__biz a{min-height:44px}
}
/* QA fix: stronger keyboard focus on the 404 search box (was a very light ring only) and the cart quantity field (was background-only) */
.hm-404 .hm-search.hm-search--404:focus-within{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft)}
.woocommerce .hm-cart-table .quantity .qty:focus-visible{box-shadow:inset 0 -3px 0 0 var(--hm-olive)}
/* cookie consent (opt-in) */
.hm-consent{position:fixed;inset-inline:0;bottom:0;z-index:120;padding:12px;pointer-events:none}
.hm-consent[hidden]{display:none}
.hm-consent__box{pointer-events:auto;max-width:640px;margin:0 auto;background:#fff;border:1px solid #EFE7DA;border-radius:18px;box-shadow:0 18px 48px rgba(60,50,20,.18);padding:18px 20px}
.hm-consent__title{font-size:18px;margin:0 0 6px;color:var(--hm-ink)}
.hm-consent__desc{font-size:14px;color:var(--hm-text);margin:0 0 12px;line-height:1.55}
.hm-consent__desc a{color:var(--hm-olive-dark);font-weight:700;text-decoration:underline}
.hm-consent__form{display:grid;gap:8px}
.hm-consent__opt{display:grid;grid-template-columns:22px auto 1fr;align-items:center;gap:8px;font-size:14px;padding:6px 8px;border-radius:10px;background:#FBF8F2;min-height:44px;cursor:pointer}
.hm-consent__opt input{width:20px;height:20px;accent-color:var(--hm-olive)}
.hm-consent__opt span{font-weight:700;color:var(--hm-ink)}
.hm-consent__opt small{color:var(--hm-muted);font-size:12.5px}
.hm-consent__opt.is-locked{cursor:default;opacity:.85}
.hm-consent__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.hm-consent__actions .hm-btn{min-height:44px}
@media (max-width:640px){.hm-consent{padding:8px}.hm-consent__box{padding:14px}.hm-consent__opt{grid-template-columns:22px 1fr}.hm-consent__opt small{grid-column:2}.hm-consent__actions .hm-btn{flex:1 1 100%}}
.hm-consent-row .hm-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;cursor:pointer;min-height:44px}
.hm-consent-row .hm-check input{width:20px;height:20px;flex:none;margin-top:3px;accent-color:var(--hm-olive)}
.hm-consent-row .hm-check a{color:var(--hm-olive-dark);font-weight:700;text-decoration:underline}
.hm-consent-row .hm-check b{color:#B00020}
/* David 2026-08-19: header typography not bold */
.hm-topbar,.hm-topbar a,.hm-topbar__ship,.hm-topbar__account{font-weight:400}
.hm-menu__top,.hm-nav .hm-menu__top,.hm-sub a{font-weight:500}
.hm-menu .is-cta>.hm-menu__top{font-weight:500}
.hm-menu__item.is-current>.hm-menu__top{font-weight:500}
.hm-sub__all a{font-weight:500}
.hm-topbar__ship bdi{font-weight:500}
.hm-nav__title{font-weight:600}

/* Menu size boost (David, Aug 19: reference screenshot of a big prominent menu). Size up, weight 600 (semi, not full bold). */
.hm-menu__top,.hm-nav .hm-menu .hm-menu__top{font-size:18px;font-weight:600}
.hm-menu .is-cta>.hm-menu__top,.hm-menu__item.is-current>.hm-menu__top,.hm-sub__all a{font-weight:600}
.hm-sub a{font-size:16px}
@media (max-width:1279px) and (min-width:1025px){.hm-menu__top,.hm-nav .hm-menu .hm-menu__top{font-size:16.5px}}
@media (max-width:900px){.hm-menu__top,.hm-nav .hm-menu .hm-menu__top{font-size:19px}}
/* Top bar: account link removed (duplicate of the header account icon); keep the shipping line centered */
.hm-topbar .hm-container{justify-content:center}

/* Cart drawer on short screens (customer report 2026-08-22: with a full cart only one item was
   visible on a laptop and the list needed its own scrolling). The list of products is the point of
   the drawer, so it keeps a guaranteed share of the panel; the summary block compacts instead of
   pushing the items out of view, and the express-checkout placeholder (inactive until Grow goes
   live) is the first thing to go when height is tight. */
.hm-drawer__body{flex:1 1 auto;min-height:38vh;overscroll-behavior:contain}
.hm-drawer__foot{flex:0 0 auto;max-height:56vh;overflow-y:auto}
@media (max-height:900px){
  .hm-drawer__head{padding:10px 20px}
  .hm-drawer__head h3{font-size:18px}
  .hm-drawer__body{padding:4px 20px 10px}
  .hm-mini-item{grid-template-columns:56px 1fr auto;gap:10px;padding:9px 0}
  .hm-mini-item__thumb{width:56px;height:56px}
  .hm-mini-item__side{min-height:56px;gap:4px}
  .hm-mini-item__unit{margin-bottom:4px}
  .hm-mini-item__ctl{height:38px}
  .hm-mini-item__ctl .hm-qty{width:38px;height:36px}
  .hm-drawer__foot{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
  .hm-drawer .hm-giftbar{margin-bottom:6px}
  .hm-drawer__total{margin-bottom:2px}
  .hm-drawer__note{margin:0 0 8px;font-size:11.5px}
  .hm-drawer__foot .hm-btn{padding-top:11px;padding-bottom:11px}
  .hm-drawer .hm-btn+.hm-btn{margin-top:6px}
  .hm-drawer__upsell{margin-top:10px}
}
@media (max-height:820px){
  .hm-express--drawer{display:none}
  .hm-drawer__note{display:none}
}

/* hm-pay-align */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label{display:flex !important;align-items:center !important;justify-content:center !important;gap:0;width:100% !important;box-sizing:border-box;flex-wrap:nowrap;vertical-align:middle !important;text-align:center;padding-inline-start:1rem !important;padding-inline-end:1rem !important}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label img{margin:0 auto !important;max-width:200px;height:auto;display:block;float:none;flex:0 0 auto}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label::before,.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label::after{display:none !important;content:none !important}
.woocommerce-checkout #payment ul.payment_methods li>input[type=radio]:checked+label{border-color:#C9C1B0;background:#fff}
.woocommerce-checkout #payment ul.payment_methods .payment_box.hide_box{display:none !important;padding:0 !important;margin:0 !important;border:0 !important}

/* hm-fly */
.hm-fly{position:fixed;z-index:9999;width:64px;height:64px;border-radius:50%;object-fit:cover;box-shadow:0 10px 28px rgba(0,0,0,.28);border:3px solid #fff;pointer-events:none;will-change:transform,opacity}
.hm-cart-btn.is-bump{animation:hm-bump .55s cubic-bezier(.2,.8,.2,1)}
.hm-cart-btn.is-bump .hm-cart-btn__count{animation:hm-bump-badge .55s cubic-bezier(.2,.8,.2,1)}
@keyframes hm-bump{0%{transform:scale(1)}30%{transform:scale(1.3) rotate(-10deg)}60%{transform:scale(.94)}100%{transform:scale(1)}}
@keyframes hm-bump-badge{0%{transform:scale(1);background:var(--hm-orange)}40%{transform:scale(1.5);background:var(--hm-olive)}100%{transform:scale(1);background:var(--hm-orange)}}
@media (prefers-reduced-motion:reduce){.hm-fly{display:none}.hm-cart-btn.is-bump,.hm-cart-btn.is-bump .hm-cart-btn__count{animation:none}}

/* footer v2: three columns, lower */
.hm-footer{margin-top:48px}
.hm-footer .hm-footer__grid{grid-template-columns:1.05fr 1.6fr 1.15fr;gap:40px;padding:32px 0 22px;align-items:start}
.hm-footer__links{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px}
.hm-footer h4,.hm-footer .hm-footer__h{font-size:15px;margin-bottom:8px}
.hm-footer li{margin-bottom:5px;font-size:14px;line-height:1.45}
.hm-footer__brand img{height:44px;margin-bottom:8px}
.hm-footer__brand p{font-size:13px;line-height:1.5;margin:0 0 8px}
.hm-footer__biz{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;font-style:normal;line-height:1.5}
.hm-footer__leaf{display:none}
.hm-news{gap:8px}
.hm-news__row{display:flex;gap:8px}
.hm-news .hm-news__row input{height:42px;flex:1 1 140px;min-width:0;width:auto}
.hm-news .hm-news__row .hm-btn--primary{min-height:42px;padding:0 18px;flex:0 0 auto;width:auto}
.hm-news__consent,.hm-news__legal{font-size:12px;line-height:1.4;margin:0;color:var(--hm-muted)}
.hm-news__consent .hm-check{align-items:flex-start;gap:8px}
.hm-footer__bottom{padding:12px 0}
@media (max-width:900px){.hm-footer .hm-footer__grid{grid-template-columns:1fr 1fr;gap:28px;padding:30px 0 20px}.hm-footer__news{grid-column:1/-1}}
@media (max-width:600px){.hm-footer .hm-footer__grid{grid-template-columns:1fr;padding-top:26px}.hm-footer__links{grid-template-columns:1fr 1fr}}
/* sticky header: stay below the WP admin bar, and get shorter once the page scrolls */
.admin-bar .hm-header{top:32px}
@media (max-width:782px){.admin-bar .hm-header{top:46px}}
.hm-header .hm-container{transition:min-height .25s ease}
.hm-header__logo img{transition:height .25s ease}
.hm-header.is-scrolled .hm-container{min-height:68px}
.hm-header.is-scrolled .hm-header__logo img{height:50px}
@media (prefers-reduced-motion:reduce){.hm-header .hm-container,.hm-header__logo img{transition:none}}
.hm-footer__links li{margin-bottom:1px}
.hm-footer .hm-footer__links a{min-height:28px}
@media (pointer:coarse){.hm-footer .hm-footer__links a{min-height:36px}}

/* wishlist: header heart, account page, guest filter note */
.hm-wish-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--hm-ink);transition:background .15s,color .15s}
.hm-wish-btn:hover{background:var(--hm-cream-2);color:#c4581a}
.hm-wish-btn svg{width:22px;height:22px}
.hm-wish-btn__count{position:absolute;top:2px;left:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#c4581a;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}
.hm-wishpage__title{margin:0 0 4px}
.hm-wishpage__hint{color:var(--hm-muted);font-size:14px;margin:0 0 16px}
.hm-wishpage__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
@media (max-width:900px){.hm-wishpage__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.hm-wishpage__grid{grid-template-columns:1fr}}
.hm-wishpage__empty{text-align:center;padding:32px 16px}
.hm-wish-note{grid-column:1/-1;background:var(--hm-cream-2);border:1px solid var(--hm-line);border-radius:12px;padding:12px 16px;margin:0 0 16px;font-size:14px}
.hm-card__wish.is-on{color:#c4581a;border-color:#c4581a}
.hm-card__wish.is-on svg{fill:currentColor}
.hm-wish-btn.is-on{color:#c4581a}

/* pet card fixes */
.hm-pet .hm-pet__head .hm-pet__active{color:#fff !important;font-weight:700;padding:5px 12px;letter-spacing:.01em}
.hm-pet .hm-pet__head .hm-pet__active svg{stroke:#fff;color:#fff}
.hm-pet__meta span b{font-weight:700;color:var(--hm-ink)}

/* 29.9.2026 mobile: the consent banner covered 38% of the first screen; tighter type, the two secondary buttons share one row */
@media (max-width:640px){
.hm-consent__box{padding:12px 14px}
.hm-consent__title{font-size:16px;margin-bottom:4px}
.hm-consent__desc{font-size:13px;line-height:1.4;margin-bottom:10px}
.hm-consent__actions{gap:6px}
.hm-consent__actions .hm-btn{min-height:42px;font-size:14px}
.hm-consent__actions .hm-btn--ghost{flex:1 1 calc(50% - 3px)}
}

/* 29.9.2026 express-checkout placeholders shown as payment badges (a row of small pills), not as dead buttons */
.hm-drawer .hm-express,.hm-express--checkout{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 8px}
.hm-express__label{flex:1 1 100%;grid-column:auto;margin:0 0 2px}
.hm-express__btn,.hm-express--checkout .hm-express__btn{height:26px;padding:0 10px;border-radius:999px;font-size:12.5px;background:#fff;border:1px solid #D9D2C4;color:#6F6F69;flex:0 0 auto;display:inline-flex;pointer-events:none}

/* 29.9.2026 mobile: no customer-facing text under 13.5px */
@media (max-width:640px){
html .hm-story__tag,html .hm-home .hm-story__tag,html .hm-trust__item span,html .hm-home .hm-trust__item span,html .hm-qq__g,html .hm-drawer__note,html .hm-express__label{font-size:13.5px}
}

/* 29.9.2026 the mix builder is closed (every line says בקרוב): hide its menu entries until it opens. Remove this block on the day it opens. */
.hm-menu li:has(> a[href*="/build-a-box/"]),.hm-nav li:has(> a[href*="/build-a-box/"]){display:none}

/* =====================================================================
   Hau & Miau - HOME PAGE part (front-page.php). Loaded after main.css.
   Scope: everything lives under .hm-home so nothing leaks to other pages.
   Tokens: cream page #F6F1E8, white cards r18, green #5E8F2E, orange #E8742C.
   Contrast notes (AA): orange TEXT uses #CF6220 (3.9:1 on white, large text
   only), orange BUTTON fills use #D9661F, small green text on cream uses
   #3F6A1C (5.5:1), muted text uses #66665F (5.1:1 on cream).
   ===================================================================== */
.hm-home{
  --hm-rhythm:clamp(48px,6vw,80px);      /* vertical distance between sections */
  --hm-h2:clamp(24px,2.4vw,30px);        /* one h2 size for every section */
  --hm-orange-text:#CF6220;
  --hm-orange-btn:#D9661F;
  --hm-orange-btn-hover:#C4581A;
  --hm-green-text:#3F6A1C;
  --hm-muted-aa:#66665F;
  --hm-card-line:#EFE7DA;
  --hm-focus:0 0 0 3px #fff,0 0 0 6px var(--hm-olive);
  overflow-x:clip;
}
/* ---- rhythm: each section = half rhythm top + half bottom (no double gaps) ---- */
.hm-home .hm-hs{padding-block:calc(var(--hm-rhythm) / 2)}
.hm-home .hm-hs--hero{padding-top:clamp(16px,2vw,24px);padding-bottom:0}
.hm-home .hm-hs--trust{padding-top:clamp(12px,2vw,20px);padding-bottom:calc(var(--hm-rhythm) / 3)}
.hm-home .hm-hs--cats{padding-top:0;padding-bottom:calc(var(--hm-rhythm) / 3)}
.hm-home .hm-hs--banners{padding-top:0}
.hm-home .hm-hs--faq{padding-bottom:calc(var(--hm-rhythm) / 2)}
.hm-home .hm-section__head{margin-bottom:clamp(18px,2.4vw,28px);align-items:flex-end}
.hm-home .hm-section__head h2{margin:0;font-size:var(--hm-h2);line-height:1.2}
.hm-home .hm-section__head--plain h2{font-size:var(--hm-h2)}
.hm-home .hm-section__head--center{justify-content:center;text-align:center}
.hm-home h2{font-size:var(--hm-h2);line-height:1.2;text-wrap:balance}
.hm-home .hm-eyebrow{color:var(--hm-green-text);font-size:14px;letter-spacing:.02em;margin-bottom:6px}
.hm-home .hm-eyebrow--light{color:#fff;opacity:1}
.hm-home .hm-link{display:inline-flex;align-items:center;gap:4px;color:var(--hm-green-text);font-weight:700;font-size:15px;white-space:nowrap;min-height:44px;padding-inline:4px;border-radius:8px}
.hm-home .hm-link svg{width:16px;height:16px;transition:transform .2s ease}
.hm-home .hm-link:hover{color:var(--hm-olive-dark)}
.hm-home .hm-link:hover svg{transform:translateX(-3px)}

/* ---- buttons: AA fills, visible focus, tap size ---- */
.hm-home .hm-btn{min-height:48px;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease,color .15s ease}
.hm-home .hm-btn--lg{min-height:54px;padding:0 28px;font-size:17px}
.hm-home .hm-btn--sm{min-height:44px;padding:0 20px;font-size:15px}
.hm-home .hm-btn--primary{background:var(--hm-olive-dark);color:#fff}
.hm-home .hm-btn--primary:hover{background:#3F6A1C;color:#fff}
.hm-home .hm-btn--buy{background:var(--hm-orange-btn);color:#fff}
.hm-home .hm-btn--buy:hover{background:var(--hm-orange-btn-hover);color:#fff}
.hm-home .hm-btn--ghost{background:#fff;border-color:var(--hm-olive);color:var(--hm-green-text)}
.hm-home .hm-btn--ghost:hover{background:var(--hm-olive-soft);color:var(--hm-green-text)}
.hm-home .hm-btn--light{background:#fff;color:var(--hm-green-text)}
.hm-home .hm-btn--light:hover{background:var(--hm-olive-soft)}
.hm-home .hm-btn:active{transform:translateY(0) scale(.98)}
.hm-home .hm-btn.is-disabled,.hm-home .hm-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.hm-home .hm-btn svg{flex:none}
.hm-home a:focus-visible,.hm-home button:focus-visible,.hm-home summary:focus-visible{outline:none;box-shadow:var(--hm-focus)}
.hm-home .hm-cat:focus-visible,.hm-home .hm-step:focus-visible{box-shadow:var(--hm-focus),var(--hm-shadow-hover)}

/* =====================================================================
   HERO
   ===================================================================== */
.hm-home .hm-hero__box--mock{grid-template-columns:1fr 1fr;min-height:480px;border-radius:var(--hm-radius-xl);box-shadow:var(--hm-shadow);background:radial-gradient(120% 90% at 85% 20%,#EEF3E4 0%,#F7F3EA 45%,#FBF8F2 100%)}
.hm-home .hm-hero__media{order:-1;min-height:480px;position:relative}
.hm-home .hm-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
/* soft blend between photo and text panel */
.hm-home .hm-hero__media::after{content:"";position:absolute;top:0;bottom:0;left:0;width:18%;background:linear-gradient(90deg,#F7F3EA 0%,rgba(247,243,234,0) 100%);pointer-events:none}
.hm-home .hm-hero__content{padding:clamp(28px,4vw,56px) clamp(24px,4vw,56px);position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;max-width:600px;margin-inline-start:auto}
.hm-home .hm-hero__content h1{font-size:clamp(36px,4.6vw,62px);line-height:1.05;letter-spacing:-.01em;margin:0 0 18px}
.hm-home .hm-hero__content h1 .hm-accent{color:var(--hm-orange-text)}
.hm-home .hm-hero__content p{font-size:clamp(17px,1.5vw,20px);line-height:1.6;max-width:32ch;margin:0 0 28px;color:var(--hm-text)}
.hm-home .hm-hero__actions{display:flex;gap:12px;flex-wrap:wrap}
.hm-home .hm-hero__doodle{position:absolute;color:var(--hm-olive);opacity:.9;pointer-events:none}
.hm-home .hm-hero__doodle--hearts{top:26px;right:32px;left:auto;width:44px;height:44px}
.hm-home .hm-hero__doodle--spark{top:34px;left:auto;right:-4px;width:36px;height:36px}
@media (max-width:820px){
  .hm-home .hm-hero__box--mock{grid-template-columns:1fr;min-height:0;border-radius:24px}
  .hm-home .hm-hero__media{min-height:0;height:clamp(220px,62vw,300px)}
  .hm-home .hm-hero__media img{object-position:center 40%}
  .hm-home .hm-hero__doodle--hearts{top:14px;right:16px;width:36px;height:36px}
  .hm-home .hm-hero__doodle--spark{display:none}
  .hm-home .hm-hero__media::after{top:auto;left:0;right:0;width:auto;height:40px;background:linear-gradient(180deg,rgba(247,243,234,0) 0%,#F7F3EA 100%)}
  .hm-home .hm-hero__content{padding:24px 20px 26px;max-width:none}
  .hm-home .hm-hero__content h1{font-size:clamp(34px,9.5vw,38px);margin-bottom:12px}
  .hm-home .hm-hero__content p{font-size:16px;margin-bottom:20px;max-width:none}
  .hm-home .hm-hero__actions{flex-direction:column;gap:10px}
  .hm-home .hm-hero__actions .hm-btn{width:100%;min-height:52px;font-size:16px}
}

/* =====================================================================
   USP bar
   ===================================================================== */
.hm-home .hm-trust{list-style:none;margin:0;padding:18px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;border:0}
.hm-home .hm-trust__item{display:flex;align-items:center;gap:12px;padding:8px 16px;border-inline-start:1px solid var(--hm-line);background:transparent;min-height:56px}
.hm-home .hm-trust__item:first-child{border-inline-start:0}
.hm-home .hm-trust__item svg{width:34px;height:34px;color:var(--hm-olive);flex:none;stroke-width:1.6}
.hm-home .hm-trust__item strong{display:block;color:var(--hm-ink);font-size:15px;line-height:1.3}
.hm-home .hm-trust__item span{display:block;font-size:13px;line-height:1.4;color:var(--hm-muted-aa);margin-top:2px}
@media (max-width:640px){
  .hm-home .hm-section__head{gap:10px}
  .hm-home .hm-section__head--plain h2{font-size:clamp(19px,5.4vw,22px);text-wrap:nowrap}
  .hm-home .hm-section__head--plain .hm-link{flex:none;font-size:14px;min-height:44px;padding-inline:0}
}
@media (max-width:820px){
  .hm-home .hm-trust{grid-template-columns:1fr 1fr;gap:10px 8px;padding-top:12px}
  .hm-home .hm-trust__item{border:0;padding:8px 6px;gap:10px;align-items:flex-start;min-height:0}
  .hm-home .hm-trust__item svg{width:28px;height:28px;margin-top:1px}
  .hm-home .hm-trust__item strong{font-size:14px}
  .hm-home .hm-trust__item span{font-size:12px}
}

/* =====================================================================
   Category tiles
   ===================================================================== */
.hm-home .hm-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.hm-home .hm-cat{display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 4px 18px rgba(60,50,20,.08);color:var(--hm-ink);transition:transform .2s ease,box-shadow .2s ease}
.hm-home .hm-cat:hover{transform:translateY(-4px);box-shadow:var(--hm-shadow-hover);color:var(--hm-ink)}
.hm-home .hm-cat__img{aspect-ratio:1/1;background:#fff;display:grid;place-items:center;overflow:hidden}
.hm-home .hm-cat__img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.hm-home .hm-cat:hover .hm-cat__img img{transform:scale(1.04)}
.hm-home .hm-cat__img svg{width:46%;height:46%;color:var(--hm-olive)}
.hm-home .hm-cat__title{display:block;text-align:center;font-weight:700;font-size:15px;line-height:1.3;padding:12px 8px 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:1000px){.hm-home .hm-cats{grid-template-columns:repeat(3,1fr);gap:14px}}
@media (max-width:640px){
  .hm-home .hm-cats{grid-template-columns:repeat(3,1fr);gap:10px}
  .hm-home .hm-cat{border-radius:14px}
  .hm-home .hm-cat__title{font-size:13px;padding:9px 6px 11px}
}
@media (max-width:340px){.hm-home .hm-cats{grid-template-columns:repeat(2,1fr)}}

/* =====================================================================
   Two banners
   ===================================================================== */
.hm-home .hm-banners{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.hm-home .hm-banner--mock{background:#fff;border:1px solid var(--hm-card-line);box-shadow:var(--hm-shadow);border-radius:24px;min-height:240px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;overflow:hidden}
.hm-home .hm-banner__content{padding:28px 30px 28px 20px;display:flex;flex-direction:column;align-items:flex-start}
.hm-home .hm-banner__content h3{color:var(--hm-orange-text);font-size:clamp(24px,2.3vw,30px);line-height:1.15;margin:0 0 10px}
.hm-home .hm-banner__content p{font-size:16px;line-height:1.55;color:var(--hm-text);margin:0 0 18px;max-width:28ch}
.hm-home .hm-banner__media{position:relative;height:100%;min-height:240px;background:radial-gradient(90% 90% at 50% 60%,#F5F0E4 0%,#fff 100%)}
.hm-home .hm-banner__media img{position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);object-fit:contain;mix-blend-mode:multiply}
@media (max-width:820px){
  .hm-home .hm-banners{grid-template-columns:1fr;gap:16px}
  .hm-home .hm-banner--mock{grid-template-columns:1fr;min-height:0;border-radius:20px}
  .hm-home .hm-banner__media{order:-1;min-height:0;height:200px}
  .hm-home .hm-banner__media img{inset:12px;width:calc(100% - 24px);height:calc(100% - 24px)}
  .hm-home .hm-banner__content{padding:18px 20px 22px}
  .hm-home .hm-banner__content h3{font-size:24px}
  .hm-home .hm-banner__content p{font-size:15px;max-width:none;margin-bottom:14px}
}

/* =====================================================================
   Product cards + best sellers carousel
   ===================================================================== */
.hm-home .hm-card{border-radius:18px;border-color:var(--hm-card-line);background:#fff;padding:14px;gap:6px;min-width:0;height:100%;transition:box-shadow .2s ease,transform .2s ease}
.hm-home .hm-card:hover{box-shadow:var(--hm-shadow-hover);transform:translateY(-3px)}
.hm-home .hm-card__wish{width:36px;height:36px;top:10px;right:10px;color:var(--hm-muted-aa);transition:color .15s ease,border-color .15s ease}
.hm-home .hm-card__wish::after{content:"";position:absolute;inset:-6px}/* 48px touch target */
.hm-home .hm-card__wish:hover{color:var(--hm-orange-text);border-color:var(--hm-orange-text)}
.hm-home .hm-card__badge{top:12px;left:12px;font-size:12px}
.hm-home .hm-card__title{font-size:15px;line-height:1.3;min-height:calc(2 * 1.3em);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:6px 0 0}
.hm-home .hm-card__meta{font-size:12px;line-height:1.4;min-height:calc(2 * 1.4em);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--hm-muted-aa)}
.hm-home .hm-carousel .hm-card__meta{display:none}
.hm-home .hm-card__price{margin-top:auto;padding-top:4px;font-size:20px;line-height:1.2;color:var(--hm-olive-dark)}
.hm-home .hm-card__perkg{color:var(--hm-muted-aa);font-size:12px;margin-top:2px}
.hm-home .hm-card__actions{margin-top:8px;padding-top:0}
.hm-home .hm-card__actions .hm-btn{width:100%;border-radius:12px;min-height:44px;font-size:15px;padding:0 12px}
.hm-home .hm-card__actions .hm-btn--oos{background:var(--hm-line);color:var(--hm-muted-aa)}
.hm-home .hm-carousel{position:relative}
.hm-home .hm-carousel__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4 * 16px) / 5);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:12px 2px 18px;margin:-12px -2px -18px;scroll-padding-inline:2px}
.hm-home .hm-carousel__track::-webkit-scrollbar{display:none}
.hm-home .hm-carousel__track>*{scroll-snap-align:start}
.hm-home .hm-carousel__nav{position:absolute;top:calc(50% - 40px);width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--hm-card-line);box-shadow:var(--hm-shadow);color:var(--hm-green-text);display:grid;place-items:center;cursor:pointer;z-index:2;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}
.hm-home .hm-carousel__nav svg{width:20px;height:20px}
.hm-home .hm-carousel__nav:hover{transform:scale(1.06);box-shadow:var(--hm-shadow-hover)}
.hm-home .hm-carousel__nav--prev{right:-22px}
.hm-home .hm-carousel__nav--next{left:-22px}
.hm-home .hm-carousel__nav.is-disabled{opacity:.35;cursor:default;transform:none}
.hm-home .hm-carousel.is-static .hm-carousel__nav{display:none}
@media (max-width:1100px){.hm-home .hm-carousel__track{grid-auto-columns:calc((100% - 2 * 16px) / 3)}.hm-home .hm-carousel__nav{display:none}}
@media (max-width:640px){
  .hm-home .hm-carousel__track{grid-auto-columns:46%;gap:12px;padding-inline:0;margin-inline:0;scroll-padding-inline:0}
  .hm-home .hm-card{padding:10px;border-radius:16px}
  .hm-home .hm-card__wish{width:36px;height:36px;top:8px;right:8px}
  .hm-home .hm-card__title{font-size:14px}
  .hm-home .hm-card__price{font-size:18px}
  .hm-home .hm-card__actions .hm-btn{font-size:14px;padding:0 8px;gap:6px}
}

/* =====================================================================
   Trial packs block
   ===================================================================== */
.hm-home .hm-trial{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:clamp(20px,3vw,40px);align-items:center;background:linear-gradient(135deg,#FCEBDD,#F7EFE0);border-radius:var(--hm-radius-xl);padding:clamp(20px,3vw,36px);margin:0}
.hm-home .hm-trial__text h2{margin-bottom:10px}
.hm-home .hm-trial__text p{margin:0;font-size:16px;line-height:1.6}
.hm-home .hm-trial__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;min-width:0}
@media (max-width:1000px){.hm-home .hm-trial{grid-template-columns:1fr}.hm-home .hm-trial__text{max-width:56ch}}
@media (max-width:640px){
  .hm-home .hm-trial{padding:20px 16px 16px;border-radius:22px;gap:16px}
  .hm-home .hm-trial__cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px;margin:0 -16px;padding:6px 16px 8px}
  .hm-home .hm-trial__cards::-webkit-scrollbar{display:none}
  .hm-home .hm-trial__cards .hm-card{flex:0 0 68%;scroll-snap-align:start;height:auto}
}

/* =====================================================================
   How it works: steps + calculator teaser
   ===================================================================== */
.hm-home .hm-steps{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.hm-home .hm-steps>li{display:flex;min-width:0}
.hm-home .hm-step{flex:1;background:#fff;border:1px solid var(--hm-card-line);border-radius:18px;padding:22px 22px 24px;display:flex;flex-direction:column;gap:6px;color:var(--hm-text);box-shadow:var(--hm-shadow);transition:transform .2s ease,box-shadow .2s ease}
.hm-home .hm-step:hover{transform:translateY(-3px);box-shadow:var(--hm-shadow-hover);color:var(--hm-text)}
.hm-home .hm-step__n{width:36px;height:36px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-green-text);display:grid;place-items:center;font-weight:800;font-size:16px;margin-bottom:6px;flex:none}
.hm-home .hm-step strong{color:var(--hm-ink);font-size:17px;line-height:1.3}
.hm-home .hm-step span:last-child{font-size:15px;line-height:1.55}
.hm-home .hm-calc-teaser{background:linear-gradient(135deg,#537F27,#3F6A1C);color:#fff;border-radius:var(--hm-radius-xl);padding:clamp(24px,4vw,48px);display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(20px,3vw,40px);align-items:center;overflow:hidden;position:relative}
.hm-home .hm-calc-teaser h2{color:#fff;margin-bottom:12px}
.hm-home .hm-calc-teaser p{color:#fff;font-size:17px;line-height:1.6;margin:0 0 22px;max-width:52ch}
.hm-home .hm-calc-teaser__card{background:#fff;color:var(--hm-ink);border-radius:20px;padding:18px 22px;box-shadow:var(--hm-shadow)}
.hm-home .hm-calc-teaser__card .row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px dashed var(--hm-line);font-size:15px}
.hm-home .hm-calc-teaser__card .row:last-child{border:0}
.hm-home .hm-calc-teaser__card strong{color:var(--hm-green-text)}
.hm-home .hm-calc-teaser__card .big{font-size:30px;line-height:1.1;font-weight:800;color:var(--hm-orange-text)}
@media (max-width:900px){
  .hm-home .hm-steps{grid-template-columns:1fr;gap:10px;margin-bottom:16px}
  .hm-home .hm-step{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:14px 16px}
  .hm-home .hm-step__n{margin:0}
  .hm-home .hm-step strong{flex:1;font-size:16px}
  .hm-home .hm-step span:last-child{flex-basis:100%;padding-inline-start:50px;font-size:14px}
  .hm-home .hm-calc-teaser{grid-template-columns:1fr;padding:24px 20px;border-radius:22px}
  .hm-home .hm-calc-teaser p{font-size:16px;margin-bottom:18px}
  .hm-home .hm-calc-teaser .hm-btn{width:100%}
  .hm-home .hm-calc-teaser__card{padding:6px 18px}
  .hm-home .hm-calc-teaser__card .big{font-size:26px}
}

/* =====================================================================
   Founder
   ===================================================================== */
.hm-home .hm-founder{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,48px);align-items:center}
.hm-home .hm-founder__media{border-radius:var(--hm-radius-xl);box-shadow:var(--hm-shadow);background:#fff;aspect-ratio:4/3}
/* radius on the img itself (no overflow:hidden): Chromium drops clipped images in very tall 2x captures */
.hm-home .hm-founder__media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;border-radius:inherit}
.hm-home .hm-founder__text h2{margin-bottom:14px}
.hm-home .hm-founder__text p{font-size:17px;line-height:1.65}
.hm-home .hm-founder__punch{font-size:clamp(20px,2vw,24px);font-weight:800;color:var(--hm-ink);margin:14px 0 16px}
.hm-home .hm-founder__sign{display:flex;align-items:flex-start;gap:10px;margin-top:14px;color:var(--hm-muted-aa);font-size:14px;line-height:1.5}
.hm-home .hm-founder__sign svg{width:20px;height:20px;flex:none;color:var(--hm-olive);margin-top:2px}
@media (max-width:820px){
  .hm-home .hm-founder{grid-template-columns:1fr;gap:20px}
  .hm-home .hm-founder__media{border-radius:22px}
  .hm-home .hm-founder__text p{font-size:16px}
  .hm-home .hm-founder__text .hm-btn{width:100%}
}

/* =====================================================================
   Stories
   ===================================================================== */
.hm-home .hm-stories{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.hm-home .hm-story{margin:0;background:#fff;border-radius:18px;padding:22px 22px 20px;box-shadow:var(--hm-shadow);display:flex;flex-direction:column;gap:12px;height:100%}
.hm-home .hm-story__quote{font-size:16px;line-height:1.65;color:var(--hm-text);flex:1;margin:0}
.hm-home .hm-story__who{display:flex;align-items:center;gap:12px;padding-top:4px}
.hm-home .hm-story__avatar{width:46px;height:46px;border-radius:50%;background:var(--hm-olive-soft);display:grid;place-items:center;color:var(--hm-green-text);font-weight:800;flex:none}
.hm-home .hm-story__who strong{display:block;color:var(--hm-ink);line-height:1.3}
.hm-home .hm-story__who span{font-size:13px;line-height:1.4;color:var(--hm-muted-aa)}
.hm-home .hm-story__tag{align-self:flex-start;background:var(--hm-cream-accent);border:1px solid var(--hm-card-line);border-radius:var(--hm-radius-pill);padding:4px 12px;font-size:12px;color:var(--hm-green-text);font-weight:700}
.hm-home .hm-stories__more{text-align:center;margin:22px 0 0}
@media (max-width:820px){
  .hm-home .hm-stories{grid-template-columns:1fr;gap:12px}
  .hm-home .hm-story{padding:18px 18px 16px}
  .hm-home .hm-stories__more{margin-top:16px}
  .hm-home .hm-stories__more .hm-btn{width:100%}
}

/* =====================================================================
   Mini FAQ
   ===================================================================== */
.hm-home .hm-faq{max-width:820px;margin-inline:auto}
.hm-home .hm-faq details{background:#fff;border:1px solid var(--hm-card-line);border-radius:14px;padding:0 18px;margin-bottom:10px;transition:box-shadow .2s ease}
.hm-home .hm-faq details:hover,.hm-home .hm-faq details[open]{box-shadow:var(--hm-shadow)}
.hm-home .hm-faq summary{position:relative;cursor:pointer;font-weight:700;font-size:16px;line-height:1.4;color:var(--hm-ink);padding:16px 0 16px 40px;list-style:none;display:block;min-height:56px;border-radius:10px}
.hm-home .hm-faq summary::-webkit-details-marker{display:none}
.hm-home .hm-faq summary::before,.hm-home .hm-faq summary::after{content:"";position:absolute;left:6px;top:50%;width:16px;height:2px;margin-top:-1px;border-radius:2px;background:var(--hm-olive);transition:transform .25s ease;font-size:0}
.hm-home .hm-faq summary::after{transform:rotate(90deg)}
.hm-home .hm-faq details[open] summary::after{transform:rotate(0deg)}
.hm-home .hm-faq details[open] summary::before{transform:rotate(180deg)}
.hm-home .hm-faq details p{padding:0 0 18px;margin:0;font-size:16px;line-height:1.65;color:var(--hm-text)}
.hm-home .hm-faq details[open] p{animation:hm-faq-in .25s ease both}
@keyframes hm-faq-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.hm-home .hm-faq__more{text-align:center;margin:14px 0 0}
@media (max-width:640px){
  .hm-home .hm-faq summary{font-size:15px;padding:14px 0 14px 36px;min-height:52px}
  .hm-home .hm-faq details{padding:0 14px}
  .hm-home .hm-faq details p{font-size:15px}
}

/* =====================================================================
   Reduced motion: no movement anywhere on the home page
   ===================================================================== */
@media (prefers-reduced-motion:reduce){
  .hm-home *,.hm-home *::before,.hm-home *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
  .hm-home .hm-cat:hover,.hm-home .hm-card:hover,.hm-home .hm-step:hover,.hm-home .hm-btn:hover,.hm-home .hm-carousel__nav:hover{transform:none}
  .hm-home .hm-cat:hover .hm-cat__img img{transform:none}
  .hm-home .hm-carousel__track,.hm-home .hm-trial__cards{scroll-behavior:auto}
}

/* PM fix H-01 */
@media (max-width:820px){.hm-home .hm-hero__box--mock .hm-hero__media img{object-position:center 35%}.hm-home .hm-hero__box--mock .hm-hero__media{min-height:300px}}

/* Google reviews (verbatim) */
.hm-grev-wrap{margin-top:36px}
.hm-grev-wrap--page{margin:48px 0 8px}
.hm-grev__title{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:600;margin:0 0 6px}
.hm-grev__title .hm-grev__g{display:inline-flex}
.hm-grev__link{font-size:.9rem;font-weight:500;color:var(--hm-green,#4A7423);margin-inline-start:auto;text-decoration:underline;text-underline-offset:3px}
.hm-grev__note{margin:0 0 18px;color:#6B6257;font-size:.95rem}
.hm-grev{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.hm-grev--full{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.hm-grev__card{background:#fff;border-radius:18px;padding:22px 22px 18px;box-shadow:0 6px 24px rgba(60,40,20,.06);display:flex;flex-direction:column;gap:12px;transition:transform .25s ease,box-shadow .25s ease}
.hm-grev__card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(60,40,20,.10)}
.hm-grev__head{display:flex;align-items:center;gap:8px}
.hm-grev__stars{display:inline-flex;gap:1px}
.hm-grev__when{margin-inline-start:auto;font-size:.82rem;color:#8A8074}
.hm-grev__q{margin:0;flex:1}
.hm-grev__q p{margin:0;font-size:1rem;line-height:1.65;color:#2B2520}
.hm-grev--full .hm-grev__q p{font-size:.98rem}
.hm-grev__more a{color:var(--hm-orange,#C4581A);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.hm-grev__who{display:flex;align-items:center;gap:10px;border-top:1px solid #F0EAE0;padding-top:12px}
.hm-grev__who div{display:flex;flex-direction:column;line-height:1.3}
.hm-grev__who strong{font-weight:600;font-size:.95rem}
.hm-grev__who span{font-size:.82rem;color:#8A8074}
.hm-grev__avatar{width:36px;height:36px;border-radius:50%;background:#EAF3DD;color:#4A7423;display:inline-flex;align-items:center;justify-content:center;font-weight:700}
@media (max-width:640px){.hm-grev__title{flex-wrap:wrap}.hm-grev__link{margin-inline-start:0}}
.hm-grev--excerpt{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
@media (min-width:1100px){.hm-grev--excerpt{grid-template-columns:repeat(3,1fr)}}
.hm-grev__when{white-space:nowrap}

/* Podcast links under the founder block */
.hm-pod-inline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px;font-size:.95rem}
.hm-pod-inline__lbl{display:inline-flex;align-items:center;gap:6px;color:#6B6257}
.hm-pod-inline__lbl .hm-pod__ic{color:#C4581A}
.hm-pod-inline__a{display:inline-flex;align-items:center;min-height:32px;padding:4px 12px;border-radius:999px;background:#fff;border:1px solid #E3DCCF;color:#2B2520;text-decoration:none;font-weight:600;transition:border-color .2s,transform .2s}
.hm-pod-inline__a:hover,.hm-pod-inline__a:focus-visible{border-color:#C4581A;transform:translateY(-1px)}

/* Hero: first line in brand green, second stays terracotta */
.hm-home .hm-hero__green{color:var(--hm-olive)}

/* Social proof: stories and Google reviews reuse the shared carousel (promoted in parts/home.js) */
.hm-home .hm-carousel--stories,.hm-home .hm-carousel--grev{margin-top:16px}
.hm-home .hm-carousel--stories .hm-carousel__track,.hm-home .hm-carousel--grev .hm-carousel__track{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 2 * 18px) / 3);gap:18px;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 12px;margin-inline:-2px;align-items:stretch}
.hm-home .hm-carousel--stories .hm-carousel__track::-webkit-scrollbar,.hm-home .hm-carousel--grev .hm-carousel__track::-webkit-scrollbar{display:none}
.hm-home .hm-carousel--stories .hm-carousel__track>*,.hm-home .hm-carousel--grev .hm-carousel__track>*{scroll-snap-align:start}
@media (max-width:1100px){.hm-home .hm-carousel--stories .hm-carousel__track,.hm-home .hm-carousel--grev .hm-carousel__track{grid-auto-columns:calc((100% - 16px) / 2);gap:16px}}
@media (max-width:640px){.hm-home .hm-carousel--stories .hm-carousel__track,.hm-home .hm-carousel--grev .hm-carousel__track{grid-auto-columns:86%;gap:12px}}

/* Spacing rhythm after the section reorder: hero and the badge strip now open new blocks */
.hm-home .hm-hs--hero{padding-bottom:40px}
.hm-home .hm-hs--trust{padding-top:40px}
@media (max-width:640px){.hm-home .hm-hs--hero{padding-bottom:24px}.hm-home .hm-hs--trust{padding-top:24px}}

/* Aggregate proof: one Google rating line above the review cards */
.hm-home .hm-grating{display:inline-flex;align-items:center;gap:8px;margin:14px 0 0;padding:8px 14px;border:1px solid var(--hm-c-line,#EFE7DA);border-radius:var(--hm-radius-pill,999px);background:var(--hm-white,#fff);color:var(--hm-ink,#2E2E2C);text-decoration:none;box-shadow:var(--hm-shadow)}
.hm-home .hm-grating:hover,.hm-home .hm-grating:focus-visible{border-color:var(--hm-olive,#4E7A26)}
.hm-home .hm-grating__n{font-size:20px;font-weight:800;line-height:1}
.hm-home .hm-grating__t{font-size:13px;color:var(--hm-muted,#69695F)}

/* What happens after the order: the accompaniment block */
.hm-home .hm-care{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:18px 0 0;padding:0;list-style:none}
.hm-home .hm-care__item{display:flex;flex-direction:column;gap:8px;background:var(--hm-white,#fff);border:1px solid var(--hm-c-line,#EFE7DA);border-radius:var(--hm-radius-lg,20px);padding:22px;box-shadow:var(--hm-shadow)}
.hm-home .hm-care__item svg{width:24px;height:24px;color:var(--hm-olive,#4E7A26)}
.hm-home .hm-care__item strong{color:var(--hm-ink,#2E2E2C);font-size:17px;line-height:1.35}
.hm-home .hm-care__item span{color:var(--hm-text,#4A4A46);font-size:15px;line-height:1.6}
.hm-home .hm-care__cta{margin:22px 0 0;text-align:center}
@media (max-width:900px){.hm-home .hm-care{grid-template-columns:1fr;gap:12px}.hm-home .hm-care__item{padding:18px}}

/* 2.10.2026 mobile home (David approved the mockup): dog/cat tiles under the H1, a short lead, and shorter sections. Phone only. */
.hm-home .hm-hero__tiles,.hm-home .hm-hero__content p.hm-hero__lead--m{display:none}
@media (max-width:640px){
.hm-home .hm-hero__content > p:not(.hm-hero__lead--m){display:none}
.hm-home .hm-hero__content p.hm-hero__lead--m{display:block;font-size:16px;line-height:1.45;margin:0 0 22px}
.hm-home .hm-hero__tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 14px}
.hm-home .hm-hero__tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 12px 10px;background:#fff;border:1.5px solid var(--hm-line,#E9E1D3);border-radius:16px;text-decoration:none;color:var(--hm-ink,#2E2E2C);box-shadow:0 6px 18px rgba(60,50,20,.06)}
.hm-home .hm-hero__tile svg{width:24px;height:24px;color:var(--hm-olive,#4E7A26);margin-bottom:2px}
.hm-home .hm-hero__tile b{font-size:18px;line-height:1.1}
.hm-home .hm-hero__tile small{font-size:13.5px;color:var(--hm-muted,#6F6F69);line-height:1.3}
.hm-hs--promise p:nth-of-type(3),.hm-hs--why .hm-founder__text > p:nth-of-type(2),.hm-hs--pain .hm-care > li:nth-child(n+4),.hm-hs--founder .hm-founder__text > p:nth-of-type(3),.hm-hs--steps .hm-calc-teaser__card{display:none}
}

/* =====================================================================
   Shop / category / product search archive (shop stream)
   Overrides main.css with .hm-shop scoping. Spec 10.2 + 12.
   ===================================================================== */
.hm-shop{--shop-gap:16px;--shop-stick:0px;padding-bottom:24px}
.hm-shop *:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
:is(.hm-shop,.hm-wishpage) .hm-card__title a:focus-visible{outline:none}
:is(.hm-shop,.hm-wishpage) .hm-card:has(.hm-card__title a:focus-visible){outline:3px solid var(--hm-olive);outline-offset:2px}

/* ---------- Breadcrumb ---------- */
.hm-shop .hm-crumbs{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;scrollbar-width:none;font-size:13px;color:var(--hm-muted);padding:16px 0 0;line-height:1.4}
.hm-shop .hm-crumbs::-webkit-scrollbar{display:none}
.hm-shop .hm-crumbs a{color:var(--hm-muted);padding:6px 0;display:inline-block;min-height:32px;line-height:20px;transition:color .15s}
.hm-shop .hm-crumbs a:hover{color:var(--hm-olive-dark);text-decoration:underline}
.hm-shop .hm-crumbs a:focus-visible{outline-offset:0}
.hm-shop .hm-crumbs span[aria-hidden]{color:#C9C2B4}
.hm-shop .hm-crumbs a + span + *:last-child,.hm-shop .hm-crumbs > :last-child{color:var(--hm-ink);font-weight:600}

/* ---------- Header ---------- */
.hm-shop .hm-shop-head{padding:14px 0 6px}
.hm-shop .hm-shop-head h1{font-size:clamp(28px,3.4vw,42px);line-height:1.15;margin:0 0 8px}
.hm-shop .hm-shop-head__q{color:var(--hm-olive-dark)}
.hm-shop .hm-shop-head__desc{max-width:68ch;color:var(--hm-text);font-size:clamp(15px,1.25vw,17px);line-height:1.6;margin:0}
.hm-shop .hm-shop-head__text{margin-bottom:6px}
.hm-shop .hm-shop-chips{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 4px}
.hm-shop .hm-chip{min-height:40px;padding:0 16px;font-size:14px;font-weight:600;background:#fff;color:var(--hm-ink);border:1px solid var(--hm-line);transition:background .15s,color .15s,border-color .15s,transform .15s}
.hm-shop .hm-chip:hover{background:var(--hm-olive-soft);border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-shop .hm-chip.is-active,.hm-shop .hm-chip.is-active:hover{background:var(--hm-olive);border-color:var(--hm-olive);color:#fff}
@media (max-width:640px){
  .hm-shop .hm-shop-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--hm-gutter));padding-inline:var(--hm-gutter);padding-bottom:6px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .hm-shop .hm-shop-chips::-webkit-scrollbar{display:none}
  .hm-shop .hm-chip{flex:none;scroll-snap-align:start;min-height:44px}
}

/* ---------- Sticky filter bar ---------- */
.hm-shop .hm-shop-sentinel{height:1px;margin-top:-1px}
.hm-shop .hm-shop-bar{position:sticky;top:var(--shop-stick);z-index:30;margin:12px 0 14px;background:var(--hm-cream);padding:8px 0;transition:box-shadow .2s}
.hm-shop .hm-shop-bar.is-stuck{box-shadow:0 12px 20px -14px rgba(60,50,20,.28)}
.hm-shop .hm-shop-mbar{display:none}
.hm-shop .hm-shop-sheet__bg{display:none}

/* Filter form: inline bar (desktop) */
.hm-shop .hm-filters{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;margin:0;padding:10px 16px;background:#fff;border:1px solid var(--hm-line);border-radius:18px;box-shadow:0 2px 10px rgba(60,50,20,.04)}
.hm-shop .hm-filters__head{display:none}
.hm-shop .hm-filters__body{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;flex:1;min-width:0}
.hm-shop .hm-filters__group{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border:0;padding:0;margin:0;min-width:0}
.hm-shop .hm-filters__group--sort{margin-inline-start:auto}
.hm-shop .hm-filters__label{font-size:13px;color:var(--hm-muted);font-weight:700;margin-inline-end:4px;padding:0;float:none}
.hm-shop .hm-filters__foot{display:none}
.hm-shop .hm-filters__apply-desktop{display:inline-flex}

/* Chip-style radios/checkbox */
.hm-shop .hm-fchip{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 13px;border:1px solid var(--hm-line);border-radius:999px;background:#fff;color:var(--hm-text);font-size:13px;font-weight:600;cursor:pointer;user-select:none;transition:background .15s,color .15s,border-color .15s}
.hm-shop .hm-fchip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;appearance:none;-webkit-appearance:none}
.hm-shop .hm-fchip > span{display:inline-flex;align-items:center;gap:5px;pointer-events:none}
.hm-shop .hm-fchip:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
.hm-shop .hm-fchip.is-active,.hm-shop .hm-fchip:has(input:checked){background:var(--hm-olive);border-color:var(--hm-olive);color:#fff}
.hm-shop .hm-fchip:has(input:focus-visible),.hm-shop .hm-fprice__field:has(input:focus-visible){outline:3px solid var(--hm-olive);outline-offset:2px}
.hm-shop .hm-fchip__n{font-size:11px;font-weight:700;color:var(--hm-muted);background:var(--hm-cream-2);border-radius:999px;padding:1px 6px;line-height:1.3}
.hm-shop .hm-fchip.is-active .hm-fchip__n,.hm-shop .hm-fchip:has(input:checked) .hm-fchip__n{background:rgba(255,255,255,.22);color:#fff}
.hm-shop .hm-fchip__check{width:14px;height:14px;opacity:0;transition:opacity .15s;margin-inline-end:-2px}
.hm-shop .hm-fchip:has(input:checked) .hm-fchip__check{opacity:1}
.hm-shop .hm-fchip--check{padding-inline-start:10px}

/* Price inputs */
.hm-shop .hm-fprice{display:inline-flex;align-items:center;gap:6px}
.hm-shop .hm-fprice__field{display:inline-flex;align-items:center;gap:6px;height:36px;border:1px solid var(--hm-line);border-radius:999px;background:#fff;padding:0 6px 0 4px;color:var(--hm-muted);font-size:13px;font-weight:600;transition:border-color .15s}
.hm-shop .hm-fprice__field:hover,.hm-shop .hm-fprice__field:focus-within{border-color:var(--hm-olive)}
.hm-shop .hm-fprice__pre{padding-inline-start:6px}
.hm-shop .hm-fprice__field input{width:58px;height:32px;border:0;background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--hm-ink);text-align:center;outline:none;-moz-appearance:textfield;padding:0}
.hm-shop .hm-fprice__field input::-webkit-inner-spin-button,.hm-shop .hm-fprice__field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.hm-shop .hm-fprice__field input::placeholder{color:#B5AFA3;font-weight:600}
.hm-shop .hm-fprice__go{display:inline-flex;align-items:center;justify-content:center;line-height:1;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--hm-olive);background:#fff;color:var(--hm-olive-dark);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s,color .15s}
.hm-shop .hm-fprice__go:hover{background:var(--hm-olive);color:#fff}

/* Sort select */
.hm-shop .hm-fselect{height:36px;min-width:150px;border:1px solid var(--hm-line);border-radius:999px;padding:0 14px 0 32px;font:inherit;font-size:13px;font-weight:600;color:var(--hm-ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235E8F2E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat left 12px center/14px;appearance:none;-webkit-appearance:none;cursor:pointer;transition:border-color .15s}
.hm-shop .hm-fselect:hover{border-color:var(--hm-olive)}

/* ---------- Toolbar: count + active pills ---------- */
.hm-shop .hm-shop-toolbar{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;margin:0 0 16px;font-size:14px;color:var(--hm-muted)}
.hm-shop .hm-shop-count{margin:0;font-weight:600;color:var(--hm-text)}
.hm-shop .hm-shop-active{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.hm-shop .hm-shop-pill{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 6px 0 12px;border-radius:999px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);font-size:13px;font-weight:700;border:1px solid transparent;transition:background .15s,border-color .15s}
.hm-shop .hm-shop-pill:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-shop .hm-shop-pill__x{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;color:var(--hm-olive-dark);font-size:15px;line-height:1}
.hm-shop .hm-shop-clear{font-size:13px;font-weight:700;color:var(--hm-muted);text-decoration:underline;text-underline-offset:3px;padding:6px 4px;min-height:32px;display:inline-flex;align-items:center}
.hm-shop .hm-shop-clear:hover{color:var(--hm-olive-dark)}

/* ---------- Grid ---------- */
.hm-shop .hm-products,.hm-shop .hm-products--4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--shop-gap);align-items:stretch;list-style:none;margin:0;padding:0}
@media (max-width:1000px){.hm-shop .hm-products,.hm-shop .hm-products--4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.hm-shop{--shop-gap:12px}.hm-shop .hm-products,.hm-shop .hm-products--4{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Card ---------- */
:is(.hm-shop,.hm-wishpage) .hm-card{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;padding:12px;background:#fff;border:1px solid var(--hm-line);border-radius:var(--hm-radius-lg);box-shadow:none;transition:transform .2s ease,box-shadow .2s ease;min-width:0}
@media (hover:hover){:is(.hm-shop,.hm-wishpage) .hm-card:hover{transform:translateY(-4px);box-shadow:var(--hm-shadow-hover)}}
:is(.hm-shop,.hm-wishpage) .hm-card:focus-within{box-shadow:var(--hm-shadow-hover)}
:is(.hm-shop,.hm-wishpage) .hm-card__img{display:block;position:relative;aspect-ratio:1/1;width:100%;border-radius:var(--hm-radius-md);overflow:hidden;background:var(--hm-cream-2)}
:is(.hm-shop,.hm-wishpage) .hm-card__img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
@media (hover:hover){:is(.hm-shop,.hm-wishpage) .hm-card:hover .hm-card__img img{transform:scale(1.03)}}
:is(.hm-shop,.hm-wishpage) .hm-card__ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--hm-olive);opacity:.45}
:is(.hm-shop,.hm-wishpage) .hm-card__ph svg{width:44%;height:44%}
:is(.hm-shop,.hm-wishpage) .hm-card__wish{position:absolute;top:8px;right:8px;width:44px;height:44px;border-radius:50%;border:0;background:transparent;display:grid;place-items:center;color:var(--hm-muted);cursor:pointer;z-index:2;padding:0;transition:color .15s,transform .15s}
:is(.hm-shop,.hm-wishpage) .hm-card__wish::before{content:"";position:absolute;inset:5px;border-radius:50%;background:#fff;border:1px solid var(--hm-line);box-shadow:0 1px 4px rgba(60,50,20,.08);transition:border-color .15s,background .15s}
:is(.hm-shop,.hm-wishpage) .hm-card__wish svg{position:relative;width:18px;height:18px;transition:transform .2s ease}
:is(.hm-shop,.hm-wishpage) .hm-card__wish:hover{color:var(--hm-orange)}
:is(.hm-shop,.hm-wishpage) .hm-card__wish:hover::before{border-color:var(--hm-orange)}
:is(.hm-shop,.hm-wishpage) .hm-card__wish:active svg{transform:scale(.85)}
:is(.hm-shop,.hm-wishpage) .hm-card__wish.is-on{color:var(--hm-orange)}
:is(.hm-shop,.hm-wishpage) .hm-card__wish.is-on svg{fill:currentColor}
:is(.hm-shop,.hm-wishpage) .hm-card__wish.is-on::before{border-color:var(--hm-orange)}
:is(.hm-shop,.hm-wishpage) .hm-card__badge{position:absolute;top:14px;left:14px;z-index:2;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;background:var(--hm-lavender);color:#fff;line-height:1.3;max-width:calc(100% - 80px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:is(.hm-shop,.hm-wishpage) .hm-card__badge--green{background:var(--hm-olive)}
:is(.hm-shop,.hm-wishpage) .hm-card__badge--orange{background:var(--hm-orange)}
:is(.hm-shop,.hm-wishpage) .hm-card__title{margin:6px 0 0;font-size:15px;line-height:1.3;font-weight:700;color:var(--hm-ink);text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.3em)}
:is(.hm-shop,.hm-wishpage) .hm-card__title a{color:inherit;display:block}
:is(.hm-shop,.hm-wishpage) .hm-card__title a:hover{color:var(--hm-olive-dark)}
:is(.hm-shop,.hm-wishpage) .hm-card__title a::after{content:"";position:absolute;inset:0;z-index:1}
:is(.hm-shop,.hm-wishpage) .hm-card__meta{margin:0;font-size:12px;line-height:1.4;color:var(--hm-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.4em}
:is(.hm-shop,.hm-wishpage) .hm-card__pricing{display:flex;flex-direction:column;align-items:center;gap:0;margin-top:2px}
:is(.hm-shop,.hm-wishpage) .hm-card__price{margin:0;font-size:19px;line-height:1.3;font-weight:800;color:var(--hm-olive-dark);text-align:center;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;justify-content:center}
:is(.hm-shop,.hm-wishpage) .hm-card__price del{color:var(--hm-muted);font-weight:500;font-size:14px;margin:0}
:is(.hm-shop,.hm-wishpage) .hm-card__price ins{text-decoration:none;color:var(--hm-orange)}
:is(.hm-shop,.hm-wishpage) .hm-card__perkg{display:block;margin:0;font-size:12px;line-height:1.4;font-weight:500;color:var(--hm-muted);text-align:center;min-height:1.4em}
:is(.hm-shop,.hm-wishpage) .hm-card__actions{margin-top:auto;padding-top:8px;position:relative;z-index:2}
:is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn{width:100%;min-height:46px;font-size:15px;padding:0 12px}
:is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn svg{width:18px;height:18px;flex:none}
:is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn--buy:hover{transform:translateY(-1px)}
:is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn--buy:active{transform:translateY(0)}
:is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn--oos{background:var(--hm-cream-2);color:var(--hm-muted);cursor:not-allowed;border-color:var(--hm-line)}
:is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn.is-disabled{opacity:.7;pointer-events:none}
:is(.hm-shop,.hm-wishpage) .hm-card.is-oos .hm-card__img img{opacity:.6;filter:grayscale(.3)}
:is(.hm-shop,.hm-wishpage) .hm-card__wish{z-index:3}
@media (max-width:640px){
  :is(.hm-shop,.hm-wishpage) .hm-card{padding:10px;border-radius:16px;gap:4px}
  :is(.hm-shop,.hm-wishpage) .hm-card__title{font-size:14px}
  :is(.hm-shop,.hm-wishpage) .hm-card__price{font-size:17px}
  :is(.hm-shop,.hm-wishpage) .hm-card__meta{font-size:11px}
  :is(.hm-shop,.hm-wishpage) .hm-card__actions .hm-btn{min-height:44px;font-size:14px;gap:6px}
  :is(.hm-shop,.hm-wishpage) .hm-card__badge{top:10px;left:10px;font-size:11px;padding:4px 8px}
  :is(.hm-shop,.hm-wishpage) .hm-card__wish{top:4px;right:4px}
}

/* ---------- Pagination ---------- */
.hm-shop .woocommerce-pagination{margin:32px 0 8px}
.hm-shop .woocommerce-pagination ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0;margin:0}
.hm-shop .woocommerce-pagination li{margin:0;padding:0}
.hm-shop .woocommerce-pagination a,.hm-shop .woocommerce-pagination span{display:grid;place-items:center;min-width:44px;height:44px;padding:0 6px;border-radius:50%;background:#fff;border:1px solid var(--hm-line);color:var(--hm-ink);font-weight:700;font-size:15px;transition:background .15s,color .15s,border-color .15s}
.hm-shop .woocommerce-pagination a:hover{background:var(--hm-olive-soft);border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-shop .woocommerce-pagination span.current{background:var(--hm-olive);color:#fff;border-color:var(--hm-olive)}
.hm-shop .woocommerce-pagination span.dots{border-color:transparent;background:transparent;color:var(--hm-muted)}
.hm-shop .woocommerce-pagination a svg{width:18px;height:18px}
.hm-shop .woocommerce-pagination .prev,.hm-shop .woocommerce-pagination .next{color:var(--hm-olive-dark)}

/* ---------- Empty state ---------- */
.hm-shop .hm-shop-empty{max-width:520px;margin:24px auto 40px;padding:clamp(28px,4vw,44px) clamp(20px,3vw,36px);text-align:center;background:#fff;border:1px dashed var(--hm-line);border-radius:var(--hm-radius-xl)}
.hm-shop .hm-shop-empty__icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 14px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive)}
.hm-shop .hm-shop-empty__icon svg{width:36px;height:36px}
.hm-shop .hm-shop-empty h2{font-size:24px;margin:0 0 8px}
.hm-shop .hm-shop-empty p{margin:0 0 20px;color:var(--hm-text);font-size:15px;line-height:1.6}
.hm-shop .hm-shop-empty__actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hm-shop .hm-shop-empty__actions .hm-btn svg{width:18px;height:18px}
@media (max-width:640px){.hm-shop .hm-shop-empty__actions .hm-btn{width:100%}}

/* ---------- Mobile: compact bar + bottom sheet ---------- */
@media (max-width:820px){
  .hm-shop .hm-shop-bar{margin:10px 0 12px;padding:8px 0}
  .hm-shop .hm-shop-mbar{display:flex;gap:8px;align-items:center}
  .hm-shop .hm-shop-mbar__btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--hm-line);background:#fff;color:var(--hm-ink);font:inherit;font-size:14px;font-weight:700;cursor:pointer;flex:none;transition:border-color .15s,background .15s}
  .hm-shop .hm-shop-mbar__btn:hover{border-color:var(--hm-olive)}
  .hm-shop .hm-shop-mbar__btn svg{width:18px;height:18px;color:var(--hm-olive)}
  .hm-shop .hm-shop-mbar__n{display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--hm-olive);color:#fff;font-size:12px}
  .hm-shop .hm-shop-msort{flex:1;min-width:0;margin:0}
  .hm-shop .hm-shop-msort .hm-fselect{width:100%;min-width:0;height:44px;font-size:14px}
  /* Sheet */
  .hm-shop .hm-shop-sheet__bg{display:block;position:fixed;inset:0;z-index:90;background:rgba(30,30,25,.45);opacity:0;transition:opacity .2s;pointer-events:none}
  .hm-shop .hm-shop-sheet__bg[hidden]{display:block}
  .hm-shop .hm-shop-sheet__bg.is-open{opacity:1;pointer-events:auto}
  .hm-shop .hm-filters{position:fixed;left:0;right:0;bottom:0;z-index:91;display:flex;flex-direction:column;max-height:min(88vh,88dvh);margin:0;padding:0;border:0;border-radius:24px 24px 0 0;box-shadow:0 -12px 40px rgba(30,30,25,.18);transform:translateY(105%);transition:transform .25s ease,visibility 0s linear .25s;visibility:hidden;gap:0;align-items:stretch;background:#fff}
  .hm-shop .hm-filters.is-open{transform:none;visibility:visible;transition:transform .25s ease}
  .hm-shop .hm-filters__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 10px;border-bottom:1px solid var(--hm-line);flex:none;position:relative}
  .hm-shop .hm-filters__head::before{content:"";position:absolute;top:8px;left:50%;width:44px;height:4px;margin-left:-22px;border-radius:2px;background:var(--hm-line)}
  .hm-shop .hm-filters__head h2{margin:0;font-size:18px}
  .hm-shop .hm-filters__close{width:44px;height:44px;border:0;border-radius:50%;background:var(--hm-cream-2);font-size:24px;line-height:1;color:var(--hm-ink);cursor:pointer;display:grid;place-items:center}
  .hm-shop .hm-filters__body{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:18px 20px;overflow-y:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch}
  .hm-shop .hm-filters__group{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
  .hm-shop .hm-filters__group--protein{flex-direction:row;flex-wrap:wrap;gap:8px}
  .hm-shop .hm-filters__label{width:100%;font-size:14px;color:var(--hm-ink);margin:0 0 2px}
  .hm-shop .hm-filters__group--sort{display:none}
  .hm-shop .hm-fchip{min-height:44px;padding:0 16px;font-size:14px}
  .hm-shop .hm-fprice{display:flex;width:100%;gap:8px}
  .hm-shop .hm-fprice__field{flex:1;height:44px;justify-content:center}
  .hm-shop .hm-fprice__field input{width:100%;height:40px;font-size:16px}
  .hm-shop .hm-fprice__go{display:none}
  .hm-shop .hm-filters__foot{display:grid;grid-template-columns:1fr 2fr;gap:10px;padding:12px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--hm-line);flex:none;background:#fff}
  .hm-shop .hm-filters__foot .hm-btn{width:100%;min-height:48px}
  .hm-shop .hm-shop-toolbar{margin-bottom:12px}
}

/* ---------- Motion ---------- */
@media (prefers-reduced-motion:reduce){
  .hm-shop *,.hm-shop *::before,.hm-shop *::after{transition-duration:.01ms !important;animation-duration:.01ms !important}
  :is(.hm-shop,.hm-wishpage) .hm-card:hover{transform:none}
  :is(.hm-shop,.hm-wishpage) .hm-card:hover .hm-card__img img{transform:none}
}

/* QA fix: mobile category chip row snapped the first chip flush to the screen edge (lost gutter) */
@media (max-width:640px){
  .hm-shop .hm-shop-chips{scroll-padding-inline:var(--hm-gutter)}
}

/* =====================================================================
   Round 2: animal pages (dogs / cats) - hero band, "סוג מוצר" chips,
   pack-size / sub-type chips, type group inside the mobile filter sheet
   ===================================================================== */
.hm-shop .hm-shop-head--animal{padding:14px 0 4px}
.hm-shop .hm-animal{display:flex;align-items:center;justify-content:space-between;gap:20px 28px;padding:20px 24px;background:#fff;border:1px solid var(--hm-line);border-radius:var(--hm-radius-lg,18px);box-shadow:0 2px 10px rgba(60,50,20,.04)}
.hm-shop .hm-animal__text{min-width:0;flex:1}
.hm-shop .hm-animal__text h1{margin:0 0 6px}
.hm-shop .hm-animal__text .hm-shop-head__desc{margin:0 0 12px}
.hm-shop .hm-animal__calc{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border-radius:999px;border:1px solid var(--hm-olive);background:var(--hm-olive-soft);color:var(--hm-olive-dark);font-size:15px;font-weight:700;transition:background .15s,color .15s,transform .15s}
.hm-shop .hm-animal__calc svg{width:18px;height:18px;flex:none}
.hm-shop .hm-animal__calc svg:last-child{width:16px;height:16px;transition:transform .2s}
.hm-shop .hm-animal__calc:hover{background:var(--hm-olive);color:#fff}
.hm-shop .hm-animal__calc:hover svg:last-child{transform:translateX(-3px)}
.hm-shop .hm-animal__media{flex:none;width:136px;height:136px;border-radius:24px;overflow:hidden;background:var(--hm-cream-2);display:grid;place-items:center;color:var(--hm-olive)}
.hm-shop .hm-animal__media img{display:block;width:100%;height:100%;object-fit:cover}
.hm-shop .hm-animal__media svg{width:56px;height:56px;opacity:.6}

/* Type / size rows */
.hm-shop .hm-shop-types{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:14px 0 0}
.hm-shop .hm-shop-types--sub{margin-top:8px}
.hm-shop .hm-shop-types__label{flex:none;font-size:13px;font-weight:700;color:var(--hm-muted);min-width:64px}
.hm-shop .hm-shop-types .hm-shop-chips{margin:0;flex:1;min-width:0}
.hm-shop .hm-chip__n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--hm-cream-2);color:var(--hm-muted);font-size:11px;font-weight:700;line-height:1;margin-inline-start:2px;transition:background .15s,color .15s}
.hm-shop .hm-chip.is-active .hm-chip__n{background:rgba(255,255,255,.22);color:#fff}
.hm-shop .hm-chip:hover .hm-chip__n{background:#fff}
.hm-shop .hm-chip.is-active:hover .hm-chip__n{background:rgba(255,255,255,.22)}
.hm-shop .hm-chip--sub{min-height:36px;padding:0 13px;font-size:13px;font-weight:600;background:var(--hm-cream);}
.hm-shop .hm-chip--sub.is-active,.hm-shop .hm-chip--sub.is-active:hover{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark)}
.hm-shop .hm-shop-head--animal + .hm-shop-sentinel + .hm-shop-bar{margin-top:14px}

/* Type group lives in the filter form for the mobile sheet only; desktop shows the header chips instead */
.hm-shop .hm-filters__group--type{display:none}
.hm-shop .hm-fchip__sub{font-size:11px;font-weight:600;opacity:.85}

@media (max-width:820px){
  .hm-shop .hm-filters__group--type{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}
}
@media (max-width:640px){
  .hm-shop .hm-shop-head--animal{padding-top:10px}
  .hm-shop .hm-animal{gap:14px;padding:14px 16px;align-items:flex-start}
  .hm-shop .hm-animal__text h1{font-size:26px;margin-bottom:4px}
  .hm-shop .hm-animal__text .hm-shop-head__desc{font-size:14px;line-height:1.5;margin-bottom:10px}
  .hm-shop .hm-animal__calc{min-height:44px;font-size:14px;padding:0 14px 0 10px}
  .hm-shop .hm-animal__media{width:84px;height:84px;border-radius:18px;margin-top:2px}
  .hm-shop .hm-animal__media svg{width:38px;height:38px}
  .hm-shop .hm-shop-types{display:block;margin-top:12px}
  .hm-shop .hm-shop-types--sub{margin-top:8px}
  .hm-shop .hm-shop-types__label{display:block;font-size:12px;min-width:0;margin-bottom:6px}
  .hm-shop .hm-shop-types .hm-shop-chips{display:flex;margin:0 calc(-1 * var(--hm-gutter));width:auto}
  .hm-shop .hm-chip--sub{min-height:40px}
}

/* hm-buy */
.hm-buy{display:flex;gap:8px;align-items:stretch;width:100%}
.hm-card__actions .hm-buy .hm-btn{flex:1;width:auto;min-width:0;position:relative;overflow:hidden}
.hm-stepper{display:inline-flex;align-items:center;flex:0 0 auto;height:46px;border:1.5px solid var(--hm-line);border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s}
.hm-stepper:focus-within{border-color:var(--hm-olive);box-shadow:0 0 0 3px rgba(90,107,59,.15)}
.hm-stepper__btn{width:32px;height:100%;border:0;background:none;font-size:20px;line-height:1;color:var(--hm-ink);cursor:pointer;border-radius:10px;transition:background .15s,transform .1s;padding:0}
.hm-stepper__btn:hover{background:var(--hm-cream-2)}
.hm-stepper__btn:active{transform:scale(.88)}
.hm-stepper__in{width:30px;height:100%;border:0;background:none;text-align:center;font-weight:700;font-size:15px;font-family:inherit;color:var(--hm-ink);padding:0;-moz-appearance:textfield;appearance:textfield}
.hm-stepper__in::-webkit-outer-spin-button,.hm-stepper__in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.hm-stepper__in:focus{outline:none}
/* added state */
.hm-btn--buy .hm-btn__done{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--hm-olive);color:#fff;font-weight:700;transform:translateY(102%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.hm-btn--buy.is-added .hm-btn__done{transform:translateY(0)}
.hm-btn--buy.is-added{animation:hm-buy-bounce .5s cubic-bezier(.2,.8,.2,1)}
@keyframes hm-buy-bounce{0%{transform:scale(1)}35%{transform:scale(1.06)}70%{transform:scale(.97)}100%{transform:scale(1)}}
.hm-card.is-added{animation:hm-card-flash .8s ease}
@keyframes hm-card-flash{0%{box-shadow:0 0 0 0 rgba(90,107,59,.6)}100%{box-shadow:0 0 0 22px rgba(90,107,59,0)}}
@media (prefers-reduced-motion:reduce){.hm-btn--buy.is-added,.hm-card.is-added{animation:none}}
@media (max-width:480px){.hm-stepper__btn{width:30px}.hm-stepper__in{width:26px}}

/* card tighten: no reserved blank lines, empty meta hidden, price right under the title */
.hm-card .hm-card__title{min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:8px;line-height:1.3}
.hm-card .hm-card__meta:empty{display:none}
.hm-card .hm-card__pricing{margin-top:6px}
.hm-card .hm-card__actions{margin-top:auto;padding-top:8px}
.hm-products{align-items:stretch}

/* wishlist grid: same card system as the shop */
.hm-wishpage .hm-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
@media (max-width:900px){.hm-wishpage .hm-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.hm-wishpage .hm-products{grid-template-columns:1fr}}

/* 29.9.2026 mobile: stepper on its own row above a full-width buy button (the button was clipped to 55px in the 2-column grid) */
@media (max-width:640px){
.hm-shop .hm-card--shop .hm-buy{flex-wrap:wrap}
.hm-shop .hm-card--shop .hm-buy .hm-stepper{flex:1 1 100%;width:100%;justify-content:space-between}
.hm-shop .hm-card--shop .hm-buy .hm-stepper__in{flex:1 1 auto;width:auto}
.hm-shop .hm-card__actions .hm-buy .hm-btn{flex:1 1 100%;width:100%}
}

/* =====================================================================
   Hau & Miau - product page part (single product). Loaded after main.css.
   Scope: .single-product / .hm-pp. Overrides main.css with >= specificity.
   ===================================================================== */

/* ---------- Hero grid ---------- */
.single-product .hm-product{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);padding-top:8px}
.single-product .hm-product__gallery{position:sticky;top:96px}
.single-product .hm-product__summary{min-width:0}
.single-product .hm-product__summary h1{font-size:clamp(26px,3vw,38px);line-height:1.15;margin-bottom:8px}
.single-product .hm-product__sub{font-size:17px;color:var(--hm-text);margin:0 0 12px}

/* Main image: fixed 1:1 box (no CLS), photo fully visible */
.single-product .hm-product__main-img{position:relative;margin:0;background:#fff;border:1px solid #EFE7DA;border-radius:24px;overflow:hidden;aspect-ratio:1/1;display:grid;place-items:center;box-shadow:var(--hm-shadow)}
.single-product .hm-product__main-img img{width:100%;height:100%;object-fit:contain;background:#fff}
.single-product .hm-product__main-img .hm-card__ph{width:100%;height:100%;display:grid;place-items:center;color:#CFE0B8}
.single-product .hm-product__main-img .hm-card__ph svg{width:38%;height:38%}
.hm-product__flag{position:absolute;top:16px;right:16px;background:var(--hm-olive);color:#fff;font-size:13px;font-weight:700;padding:6px 12px;border-radius:999px;line-height:1.2;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.hm-product__flag--sale{background:var(--hm-orange)}
.hm-product__flag--oos{background:#6B6B66}

/* Thumbs: real buttons, 76px targets */
.single-product .hm-product__thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.hm-product__thumb{width:76px;height:76px;padding:0;border:2px solid transparent;border-radius:14px;background:#fff;cursor:pointer;overflow:hidden;display:block;transition:border-color .15s,transform .15s}
.hm-product__thumb img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;border:0}
.hm-product__thumb:hover{border-color:#CFE0B8;transform:translateY(-1px)}
.hm-product__thumb.is-active,.hm-product__thumb[aria-pressed="true"]{border-color:var(--hm-olive)}
.hm-product__thumb:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}

/* Percent line */
.single-product .hm-product__mix{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:14px;color:var(--hm-ink);background:#FBF8F2;border:1px solid #EFE7DA;border-radius:12px;padding:9px 12px;margin:0 0 12px;line-height:1.5}
.single-product .hm-product__mix a{color:var(--hm-olive-dark);font-weight:700;margin:0;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#B7CF97}
.single-product .hm-product__mix a:hover{text-decoration-color:currentColor}

/* Info pills */
.single-product .hm-badges{margin:0 0 14px}
.single-product .hm-badge{min-height:32px}

/* ---------- Price ---------- */
.hm-price-box{margin:2px 0 14px}
.single-product .hm-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:34px;font-weight:800;color:var(--hm-olive-dark);margin:0;line-height:1.1}
.single-product .hm-price .price{display:contents}
.single-product .hm-price del{font-size:18px;color:var(--hm-muted);font-weight:500;margin:0;text-decoration:line-through;order:2}
.single-product .hm-price ins{text-decoration:none;font-weight:800;color:var(--hm-orange-dark);order:1}
.single-product .hm-price .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.single-product .hm-price__unit{display:block;font-size:14px;color:#6E6E68;font-weight:600;margin:4px 0 0;letter-spacing:.01em}

/* ---------- Pack-size switcher ---------- */
.hm-variants{margin:0 0 14px}
.hm-variants__label{display:block;font-size:13px;font-weight:700;color:var(--hm-muted);margin-bottom:6px}
.hm-variants__list{display:flex;flex-wrap:wrap;gap:8px}
.hm-variants__opt{display:flex;flex-direction:column;gap:1px;min-width:120px;min-height:52px;padding:8px 14px;border:1.5px solid #E6DFD1;border-radius:14px;background:#fff;color:var(--hm-text);text-decoration:none;line-height:1.25;transition:border-color .15s,transform .15s,box-shadow .15s}
.hm-variants__opt strong{font-size:15px;color:var(--hm-ink)}
.hm-variants__opt small{font-size:12px;color:var(--hm-muted)}
.hm-variants__opt em{font-style:normal;font-size:13px;font-weight:700;color:var(--hm-olive-dark)}
.hm-variants__opt:hover{border-color:var(--hm-olive);color:var(--hm-text);transform:translateY(-1px);box-shadow:var(--hm-shadow)}
.hm-variants__opt.is-current{border-color:var(--hm-olive);background:var(--hm-olive-soft);box-shadow:inset 0 0 0 1px var(--hm-olive)}
.hm-variants__opt.is-oos{opacity:.65}
.hm-variants__oos{color:#A14A2A!important}
.hm-variants__opt:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}

/* Supply line */
.single-product .hm-supply{margin:0 0 16px;font-size:14px;line-height:1.5}
.single-product .hm-supply svg{width:20px;height:20px}

/* ---------- Add-to-cart form ---------- */
.single-product form.cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:6px 0 12px}
.single-product form.cart .quantity{display:inline-flex;align-items:center;border:1px solid #E6DFD1;border-radius:999px;background:#fff;height:52px;overflow:hidden;flex:none}
.single-product form.cart .quantity input.qty{width:56px;height:50px;border:0;text-align:center;font:inherit;font-weight:800;font-size:17px;color:var(--hm-ink);background:transparent;-moz-appearance:textfield;appearance:textfield;padding:0}
.single-product form.cart .quantity input.qty:focus{outline:none;box-shadow:inset 0 -3px 0 var(--hm-olive)}
.single-product form.cart .qty-btn{width:46px;height:50px;border:0;background:transparent;font-size:22px;line-height:1;cursor:pointer;color:var(--hm-olive-dark);display:grid;place-items:center;transition:background .15s}
.single-product form.cart .qty-btn:hover{background:var(--hm-olive-soft)}
.single-product form.cart .qty-btn:focus-visible{outline:3px solid var(--hm-olive);outline-offset:-3px;border-radius:999px}
.single-product form.cart .qty-btn[disabled],.single-product form.cart .qty-btn[aria-disabled="true"]{color:#C9C9C2;cursor:default;background:transparent}
.single-product form.cart .single_add_to_cart_button{flex:1 1 200px;min-width:0;height:52px;font-size:17px;border-radius:999px;background:var(--hm-orange);color:#fff;border:0;font-weight:800;box-shadow:0 8px 20px rgba(232,116,44,.25);transition:transform .15s,background .15s,box-shadow .15s}
.single-product form.cart .single_add_to_cart_button:hover{background:var(--hm-orange-dark);transform:translateY(-1px)}
.single-product form.cart .single_add_to_cart_button:active{transform:translateY(0);box-shadow:0 3px 10px rgba(232,116,44,.25)}
.single-product form.cart .single_add_to_cart_button:focus-visible{outline:3px solid var(--hm-ink);outline-offset:3px}
.single-product form.cart .single_add_to_cart_button[disabled],.single-product form.cart .single_add_to_cart_button.disabled,.single-product form.cart .single_add_to_cart_button.wc-variation-selection-needed{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
/* Loading: spinner inside the button, label stays (spec 12.3) */
.single-product form.cart .single_add_to_cart_button{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:inherit;cursor:pointer}
.hm-btn.is-loading,.single_add_to_cart_button.is-loading{position:relative;pointer-events:none;cursor:progress}
.hm-btn.is-loading::before,.single_add_to_cart_button.is-loading::before{content:"";width:18px;height:18px;flex:none;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:hm-spin .7s linear infinite}
.hm-btn.is-loading svg{display:none}
@keyframes hm-spin{to{transform:rotate(360deg)}}
.hm-btn.is-added,.single-product form.cart .single_add_to_cart_button.is-added{background:var(--hm-olive)!important;box-shadow:none}
.hm-form-msg{margin:-4px 0 10px;font-size:14px;color:#A32D2D;background:#FDECEC;border:1px solid #F3C4C4;border-radius:12px;padding:8px 12px}
.hm-form-msg:empty{display:none}
/* Stock line from Woo */
.single-product .stock{font-size:14px;margin:0 0 8px;font-weight:600}
.single-product .stock.in-stock{color:var(--hm-olive-dark)}
.single-product .stock.out-of-stock{display:none}
.single-product .stock.available-on-backorder{color:#A14A2A}

/* Variable products (gift card) */
.single-product table.variations{width:100%;border-collapse:collapse;margin:0 0 6px}
.single-product table.variations th,.single-product table.variations td{padding:0 0 8px;text-align:right;vertical-align:middle}
.single-product table.variations th.label{width:1%;white-space:nowrap;padding-inline-end:12px;font-size:14px;color:var(--hm-text)}
.single-product table.variations select{width:100%;min-width:200px;height:48px;border:1px solid #E6DFD1;border-radius:14px;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235E8F2E' stroke-width='2.5'><path d='M6 9l6 6 6-6'/></svg>") no-repeat left 14px center/16px;padding:0 14px 0 40px;font:inherit;font-weight:700;color:var(--hm-ink);appearance:none;-webkit-appearance:none}
.single-product table.variations select:focus-visible{outline:3px solid var(--hm-olive);outline-offset:1px}
.single-product .reset_variations{display:inline-block;margin-top:6px;font-size:13px;color:var(--hm-muted);text-decoration:underline}
.single-product .single_variation_wrap{width:100%}
.single-product .woocommerce-variation-price{font-size:22px;font-weight:800;color:var(--hm-olive-dark);margin-bottom:8px}
.single-product .woocommerce-variation-add-to-cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:1 1 200px}

/* Trust badges + calc CTA + ship notes */
.single-product .hm-trustline{margin:2px 0 6px;gap:6px 14px}
.single-product .hm-trustline li{font-weight:600;color:var(--hm-text)}
.single-product .hm-calc-cta{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;font-weight:700;color:var(--hm-olive-dark);margin:0 0 4px;text-decoration:underline;text-decoration-color:#B7CF97;text-underline-offset:4px;border-radius:8px}
.single-product .hm-calc-cta:hover{text-decoration-color:currentColor;color:var(--hm-olive)}
.single-product .hm-calc-cta:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
.single-product .hm-shipnote{display:grid;gap:6px;margin-top:6px;font-size:14px;color:#6E6E68}
.single-product .hm-shipnote span{display:flex;align-items:flex-start;gap:8px;line-height:1.45}
.single-product .hm-shipnote svg{flex:none;margin-top:3px}

/* Description */
.single-product .hm-product__desc{margin-top:22px;padding-top:18px;border-top:1px solid #EFE7DA}
.hm-product__desc-title{font-size:18px;margin-bottom:8px}
.single-product .hm-product__desc p{font-size:15px;line-height:1.7}
.single-product .hm-product__desc p:last-child{margin-bottom:0}

/* ---------- Out of stock ---------- */
.hm-oos{background:#fff;border:1px solid #EFE7DA;border-radius:18px;padding:16px;margin:8px 0 14px}
.hm-oos__head{display:flex;gap:12px;align-items:flex-start}
.hm-oos__head svg{width:26px;height:26px;color:#6B6B66;flex:none;margin-top:2px}
.hm-oos__head strong{display:block;font-size:17px;color:var(--hm-ink);margin-bottom:2px}
.hm-oos__head p{margin:0;font-size:14px;color:var(--hm-text)}
.hm-oos__head a{font-weight:700;text-decoration:underline}
.hm-oos__alts{margin-top:14px}
.hm-products--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hm-oos__alts .hm-card{min-width:0}
.hm-oos__alts .hm-card__wish{display:none}
.hm-oos__alts .hm-card__meta{display:none}
@media (max-width:640px){.hm-products--3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hm-oos__alts .hm-card:nth-child(3){display:none}}

/* ---------- What's inside ---------- */
.single-product .hm-ingr__arrow{transform:rotate(-90deg)} /* the glyph is bidi-mirrored in RTL: closed = down */
.single-product .hm-ingr__group.is-open .hm-ingr__arrow{transform:rotate(90deg)}
.single-product .hm-inside{scroll-margin-top:110px}
.single-product .hm-ingr__group{overflow:visible;background:#FBF8F2}
.single-product .hm-ingr__head{min-height:56px;border-radius:14px}
.single-product .hm-ingr__head:hover{background:rgba(94,143,46,.05)}
.single-product .hm-ingr__head:focus-visible{outline:3px solid var(--hm-olive);outline-offset:-3px}
.single-product .hm-ingr__panel{padding:0 14px 14px}
.single-product .hm-ingr__chip{min-height:38px;padding:6px 14px;font-size:14px;transition:border-color .15s,background .15s,color .15s}
.single-product .hm-ingr__chip--link:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
.single-product .hm-ing-bar{height:14px}
/* Popover: fixed positioned by product.js so it never clips or overflows */
.single-product .hm-tip{width:min(340px,calc(100vw - 24px));z-index:120;padding:14px 16px 12px;font-size:13.5px;border-radius:16px}
.single-product .hm-tip.is-fixed{position:fixed;bottom:auto;right:auto}
.single-product .hm-tip.is-fixed::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px} /* hover bridge to the chip below */
.single-product .hm-tip.is-below::after{top:auto;bottom:100%}
.single-product .hm-tip strong{font-size:15px;margin-bottom:6px;padding-inline-start:0}
.single-product .hm-tip ul{margin:0 0 10px;padding-inline-start:18px}
.single-product .hm-tip li{margin-bottom:5px;line-height:1.5}
.single-product .hm-tip__more{display:inline-flex;align-items:center;min-height:32px;font-weight:700;color:var(--hm-olive-dark);text-decoration:underline;text-underline-offset:3px}
.hm-tip__close{display:none;position:absolute;top:8px;left:8px;width:44px;height:44px;border:0;border-radius:50%;background:#F3EEE3;color:var(--hm-ink);font-size:24px;line-height:1;cursor:pointer}
.hm-tip__close:focus-visible{outline:3px solid var(--hm-olive)}
.hm-tip-bg{position:fixed;inset:0;background:rgba(30,30,25,.4);z-index:110;opacity:0;transition:opacity .2s;pointer-events:none}
.hm-tip-bg.is-on{opacity:1;pointer-events:auto}
@media (max-width:640px){body.hm-tip-open{overflow:hidden}}
@media (max-width:640px){
  .single-product .hm-ingr__chip{min-height:44px;padding:8px 14px}
  .single-product .hm-tip,.single-product .hm-tip.is-fixed{position:fixed;left:0;right:0;bottom:0;top:auto!important;width:auto;max-height:72vh;overflow:auto;border-radius:20px 20px 0 0;padding:18px 20px calc(18px + env(safe-area-inset-bottom));font-size:15px;box-shadow:0 -12px 40px rgba(0,0,0,.18);transform:translateY(8px);opacity:0;transition:transform .22s ease,opacity .22s ease}
  .single-product .hm-ingr__pop.is-open .hm-tip{transform:none;opacity:1}
  .single-product .hm-tip.is-fixed::after{display:none}
  .single-product .hm-tip strong{font-size:18px;padding-inline-start:0;padding-inline-end:0;margin-bottom:8px;padding-left:44px}
  .hm-tip__close{display:grid;place-items:center}
  .single-product .hm-tip__more{min-height:44px;font-size:15px}
}
/* Nutrition only (supplements without a recipe) */
.single-product .hm-inside--nutri-only .hm-inside__grid{grid-template-columns:minmax(0,560px)}
.single-product .hm-inside__plain{font-size:15px;line-height:1.7;background:#FBF8F2;border:1px solid #EFE7DA;border-radius:14px;padding:14px 16px;margin:0}
/* Nutrition tabs */
.single-product .hm-ntabs__bar{gap:4px;border-bottom:1px solid #EFE7DA;margin-bottom:12px}
.single-product .hm-ntabs__tab{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 14px;border-radius:10px 10px 0 0;font-size:15px;transition:color .15s,background .15s}
.single-product .hm-ntabs__tab svg{width:16px;height:16px}
.single-product .hm-ntabs__tab:hover{color:var(--hm-olive-dark);background:#FBF8F2}
.single-product .hm-ntabs__tab:focus-visible{outline:3px solid var(--hm-olive);outline-offset:-3px}
.single-product .hm-ntabs__panel[hidden]{display:none}
.single-product .hm-ntabs__panel--cta{display:none;background:linear-gradient(180deg,#F5F8EE 0%,#FBF8F2 100%);border:1px solid #E1EAD2;border-radius:16px;padding:22px 18px 20px;text-align:center}
.single-product .hm-ntabs__panel--cta.is-active{display:block}
.hm-ntabs__cta-ico{width:52px;height:52px;border-radius:50%;background:#fff;color:var(--hm-olive);display:inline-grid;place-items:center;box-shadow:var(--hm-shadow);margin-bottom:10px}
.hm-ntabs__cta-ico svg{width:26px;height:26px}
.single-product .hm-ntabs__panel--cta h4{font-size:18px;margin:0 0 6px;color:var(--hm-ink)}
.single-product .hm-ntabs__panel--cta p{font-size:14px;color:var(--hm-text);margin:0 auto 14px;max-width:38ch}
.single-product .hm-ntabs__panel--cta .hm-btn{min-height:44px;width:100%;max-width:340px}
.single-product .hm-ntabs__panel--cta .hm-link{display:inline-block;margin-top:10px;min-height:32px}
.single-product .hm-nutri table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.single-product .hm-nutri td{font-variant-numeric:tabular-nums}
.single-product .hm-nutri__pet th,.single-product .hm-nutri__pet td{text-align:right}
.single-product .hm-nutri__pet tr:first-child th{font-size:13px;color:var(--hm-muted)}
.single-product .hm-nutri tr:nth-child(even) th,.single-product .hm-nutri tr:nth-child(even) td{background:#FBF8F2}
.single-product .hm-nutri th:first-child{border-radius:0 8px 8px 0}
.single-product .hm-nutri td:last-child{border-radius:8px 0 0 8px}

/* ---------- Embedded calculator ---------- */
.single-product .hm-calc-embed{margin-top:clamp(36px,5vw,64px);scroll-margin-top:110px}
.single-product .hm-calc-embed .hm-inside__head{margin-bottom:16px}
.single-product .hm-calc-embed .hm-calc,.single-product .hm-calc-embed #hm-calc{margin-top:0;margin-bottom:0;scroll-margin-top:110px}
.single-product .hm-calc-embed .hm-section,.single-product .hm-calc-embed .hm-container{padding-block:0;padding-inline:0;max-width:none}

/* ---------- Usage + transition ---------- */
.single-product .hm-usage{margin-top:clamp(36px,5vw,64px)}
.single-product .hm-usage__grid{list-style:none;margin:0 0 18px;padding:0;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:none}
.single-product .hm-usage__card{position:relative;padding:18px 16px 16px;border-radius:16px;box-shadow:var(--hm-shadow)}
.hm-usage__n{position:absolute;top:14px;left:14px;width:28px;height:28px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);font-size:13px;font-weight:800;display:grid;place-items:center}
.single-product .hm-usage__card h3{font-size:16px;margin:0 0 6px;padding-inline-end:36px}
.single-product .hm-usage__card p{font-size:14px;line-height:1.6;margin:0}
.single-product .hm-transition{padding:20px;box-shadow:var(--hm-shadow)}
.single-product .hm-transition h3{font-size:18px}
.single-product .hm-transition p{font-size:14px;color:var(--hm-text)}
.hm-transition__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.single-product .hm-transition table{width:100%;max-width:560px;min-width:300px;font-size:15px}
.single-product .hm-transition th,.single-product .hm-transition td{padding:10px 12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.single-product .hm-transition thead th{font-size:13px;color:var(--hm-muted);font-weight:700}
.single-product .hm-transition tbody th{font-weight:700;color:var(--hm-ink)}
.single-product .hm-transition tbody td:nth-child(2){font-weight:800;color:var(--hm-olive-dark)}
.hm-transition__bar{display:inline-block;width:56px;height:8px;border-radius:4px;background:#EFE7DA;margin-inline-end:8px;vertical-align:middle;position:relative;overflow:hidden}
.hm-transition__bar::after{content:"";position:absolute;inset:0;background:var(--hm-olive);transform-origin:right center;transform:scaleX(var(--p,0))}
.single-product .hm-suit{margin-top:14px;font-size:15px}
.single-product .hm-suit a{display:inline-block;min-height:32px;text-decoration:underline;text-decoration-color:#B7CF97;text-underline-offset:3px}
@media (max-width:1000px){.single-product .hm-usage__grid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.single-product .hm-usage__grid{grid-template-columns:1fr}.hm-transition__bar{width:36px}}

/* ---------- Sticky bottom bar (mobile) ---------- */
.single-product .hm-sticky{z-index:70;transform:translateY(110%);transition:transform .25s ease;display:none;padding:10px var(--hm-gutter) calc(10px + env(safe-area-inset-bottom))}
.single-product .hm-sticky.is-visible{transform:none}
.single-product .hm-sticky.is-hidden{transform:translateY(110%)}
.single-product .hm-sticky__name{font-size:12px}
.single-product .hm-sticky__price{font-size:18px}
.single-product .hm-sticky__qty{color:var(--hm-muted);font-weight:600;font-size:14px}
.single-product .hm-sticky .hm-btn{min-height:48px;padding:0 20px;flex:none;box-shadow:0 6px 16px rgba(232,116,44,.25)}
.single-product .hm-sticky .hm-btn--oos{background:#E6DFD1;color:#6B6B66;box-shadow:none}
@media (max-width:820px){
  .single-product .hm-sticky{display:flex}
  .single-product .hm-product{grid-template-columns:1fr;gap:18px}
  .single-product .hm-product__gallery{position:static}
  .single-product .hm-product__main-img{border-radius:20px}
  .single-product .hm-product__summary h1{margin-top:4px}
  .single-product .hm-price{font-size:30px}
  .single-product form.cart .single_add_to_cart_button{flex-basis:100%}
  .single-product form.cart .quantity{margin-inline-start:auto}
  .single-product .hm-shipnote{font-size:14px}
  .single-product .hm-inside{padding:20px 16px}
  .single-product .hm-inside__grid{gap:22px}
  .single-product .hm-transition{padding:16px}
  body.has-sticky.single-product{padding-bottom:0} /* the bar hides itself before the footer scrolls in */
}
@media (max-width:420px){
  .hm-variants__opt{flex:1 1 calc(33.33% - 6px);min-width:0;padding:8px 10px}
  .hm-variants__opt small{font-size:11.5px}
  .single-product form.cart{gap:10px}
  .single-product form.cart .quantity{width:100%;justify-content:space-between}
  .single-product form.cart .quantity input.qty{flex:1}
}

/* Inline links: bigger touch targets without changing the visual layout */
.single-product .hm-product__mix a,.single-product .hm-supply a,.single-product .hm-suit a,.single-product .hm-nutri__note a,.single-product .hm-oos__head a,.single-product .hm-crumbs a{display:inline-block;padding-block:11px;margin-block:-11px}
.single-product .hm-crumbs{padding-block:4px}

/* ---------- Motion / focus ---------- */
.single-product a:focus-visible,.single-product button:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  .single-product *,.single-product *::before,.single-product *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  .hm-btn.is-loading::before,.single_add_to_cart_button.is-loading::before{animation:none;border-top-color:rgba(255,255,255,.9);border-right-color:rgba(255,255,255,.9)}
  .single-product .hm-sticky{transition:none}
}

/* PM fix P-03 */
.hm-inside--nutri-only .hm-inside__grid{grid-template-columns:1fr}.hm-inside--nutri-only .hm-nutri{max-width:640px;margin:0 auto}
.hm-ing__pct--joint{background:var(--hm-cream-2,#F1EADF);color:var(--hm-olive-dark,#4A7423);font-size:13.5px;white-space:nowrap}
.hm-ingr__note{margin:12px 2px 0;font-size:15px;color:var(--hm-text);background:var(--hm-cream-2,#F1EADF);border-radius:12px;padding:10px 14px;line-height:1.5}

/* transition routing note (David 2026-08-22: two paths, one block) */
.hm-transition__route{background:#F3F7EC;border:1px solid #D8E6C6;border-radius:16px;padding:14px 16px;margin:0 0 18px;font-size:.97rem;line-height:1.75;color:#4A5442}
.hm-transition__route strong{display:block;margin-bottom:2px;color:#2F3A25}
.hm-transition__route a{color:#456B21;font-weight:700}
/* Mobile fixes 11.9.2026: on phones the ingredients accordion forced the single 1fr column to its min-content width and
   pushed the whole page 28px off-screen (horizontal scroll); the nutrition tabs bar overflows once a customer has 3+ pets. */
@media (max-width:820px){
  .hm-inside__grid{grid-template-columns:minmax(0,1fr)}
  .hm-inside__grid>*{min-width:0}
  .single-product .hm-ntabs__bar{flex-wrap:wrap}
}

/* ==========================================================================
   Calculator + My Pets (calc work stream). Loaded after main.css.
   ========================================================================== */
.hm-calc,.hm-pets-wrap,.hm-club{--calc-focus:0 0 0 3px #fff,0 0 0 6px var(--hm-olive);--calc-muted:#6B6B66;--calc-warn:#9E4A16}
.hm-calc{position:relative}
.hm-calc *,.hm-pets-wrap *{box-sizing:border-box}
.hm-calc [hidden],.hm-pets-wrap [hidden]{display:none!important}

/* progress */
.hm-calc__head{margin-bottom:6px}
.hm-calc__progress{height:8px;background:var(--hm-cream-2);border-radius:4px;overflow:hidden;margin-bottom:14px}
.hm-calc__progress span{display:block;width:100%;height:100%;background:var(--hm-olive);transform-origin:right center;transform:scaleX(.143);transition:transform .3s ease}
.hm-calc__stepnum{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--calc-muted);margin:0 0 4px}
.hm-calc__stepnum b{color:var(--hm-ink)}
.hm-calc__stepname{color:var(--hm-olive-dark);font-weight:700}
.hm-calc__stepname::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--hm-line);margin-inline-end:8px;vertical-align:middle}

/* steps: fixed-height stage, slide on transform/opacity only */
.hm-calc__steps{position:relative;min-height:380px}
.hm-calc__step{display:none;border:0;padding:0;margin:0;min-width:0}
.hm-calc__step.is-active{display:block}
.hm-calc__step.is-measure{display:block;position:absolute;inset:0 0 auto 0;visibility:hidden;pointer-events:none}
.hm-calc__step.is-enter-next{animation:hm-slide-next .26s ease both}
.hm-calc__step.is-enter-back{animation:hm-slide-back .26s ease both}
@keyframes hm-slide-next{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
@keyframes hm-slide-back{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.hm-calc__q{display:block;float:none;width:100%;padding:0;font-size:clamp(20px,2.2vw,24px);font-weight:800;color:var(--hm-ink);line-height:1.25;margin:0 0 6px;outline:none}
.hm-calc__q:focus-visible{outline:none;box-shadow:none;text-decoration:underline;text-decoration-color:var(--hm-olive);text-underline-offset:6px}
.hm-calc__hint{color:var(--calc-muted);font-size:14px;margin:0 0 16px}
.hm-calc__opt{font-weight:500;color:var(--calc-muted);font-size:13px}
.hm-calc__help{display:block;font-size:12.5px;color:var(--calc-muted);margin-top:6px}
.hm-calc__prefill{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--hm-olive-soft);border-radius:var(--hm-radius-md);padding:10px 14px;margin:0 0 16px;font-size:14px;color:var(--hm-ink)}

/* option cards (radios stay focusable for keyboard / arrow keys) */
.hm-calc__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.hm-calc__cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hm-calc__cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hm-calc__card,.hm-body-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;border:2px solid var(--hm-line);border-radius:var(--hm-radius-lg);padding:18px 14px;text-align:center;cursor:pointer;background:var(--hm-cream-accent);transition:border-color .15s,background .15s,transform .15s,box-shadow .15s;user-select:none;-webkit-tap-highlight-color:transparent}
.hm-calc__card:hover,.hm-body-card:hover{border-color:var(--hm-olive);transform:translateY(-1px)}
.hm-calc__card input,.hm-body-card input,.hm-calc__chip input,.hm-calc__check input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.hm-calc__card.is-selected,.hm-body-card.is-selected,.hm-calc__card:has(input:checked),.hm-body-card:has(input:checked){border-color:var(--hm-olive);background:var(--hm-olive-soft);box-shadow:var(--hm-shadow)}
.hm-calc__card:focus-within,.hm-body-card:focus-within,.hm-calc__chip:focus-within,.hm-calc__check:focus-within{box-shadow:var(--calc-focus)}
.hm-calc__card:has(input:focus:not(:focus-visible)),.hm-body-card:has(input:focus:not(:focus-visible)),.hm-calc__chip:has(input:focus:not(:focus-visible)),.hm-calc__check:has(input:focus:not(:focus-visible)){box-shadow:none}
.hm-calc__card:has(input:checked:focus:not(:focus-visible)),.hm-body-card:has(input:checked:focus:not(:focus-visible)){box-shadow:var(--hm-shadow)}
.hm-calc__card:has(input:focus-visible),.hm-body-card:has(input:focus-visible),.hm-calc__chip:has(input:focus-visible),.hm-calc__check:has(input:focus-visible){box-shadow:var(--calc-focus)}
.hm-calc__card:has(input:checked:focus-visible),.hm-body-card:has(input:checked:focus-visible){box-shadow:var(--calc-focus),var(--hm-shadow)}
.hm-calc__card svg{width:44px;height:44px;color:var(--hm-olive);margin:0 auto 8px}
.hm-calc__card strong{display:block;color:var(--hm-ink);font-size:17px}
.hm-calc__card small{color:var(--calc-muted);font-size:12.5px;line-height:1.35;margin-top:2px}
.hm-calc__card--photo{padding:0;overflow:hidden;justify-content:flex-start}
.hm-calc__card-art{display:grid;place-items:center;width:100%;aspect-ratio:1/1;max-height:220px;background:var(--hm-cream-2);border-radius:calc(var(--hm-radius-lg) - 2px) calc(var(--hm-radius-lg) - 2px) 0 0;overflow:hidden}
.hm-calc__card-art img{width:100%;height:100%;object-fit:cover;display:block}
.hm-calc__card-art svg{width:56px;height:56px;margin:0}
.hm-calc__card--photo strong{padding:12px 12px 14px}
.hm-calc__card--photo.is-selected .hm-calc__card-art,.hm-calc__card--photo:has(input:checked) .hm-calc__card-art{background:#fff}

/* body condition: original illustration when in the media library, inline drawing otherwise */
.hm-body-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hm-body-card{padding:14px 12px 16px}
.hm-body-card__art{display:block;width:100%;height:96px}
.hm-body-card__pic{display:grid;place-items:center;width:100%;height:100%}
.hm-body-card__pic img{width:100%;height:100%;object-fit:contain;display:block}
.hm-body-card__pic svg{width:100%;height:100%;max-width:200px;color:var(--hm-ink)}
.hm-body-card strong{display:block;margin-top:8px;color:var(--hm-ink);font-size:16px}
.hm-body-card small{color:var(--calc-muted);font-size:12.5px;display:block;line-height:1.35}

/* chips + checks */
.hm-calc__chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.hm-calc__chip{position:relative;display:inline-flex;align-items:center;min-height:44px;border:2px solid var(--hm-line);border-radius:var(--hm-radius-pill);padding:8px 18px;cursor:pointer;background:var(--hm-cream-accent);font-size:15px;font-weight:600;color:var(--hm-ink);transition:background .15s,border-color .15s,color .15s;-webkit-tap-highlight-color:transparent}
.hm-calc__chip.is-selected,.hm-calc__chip:has(input:checked){background:var(--hm-olive);color:#fff;border-color:var(--hm-olive)}
.hm-calc__chip:hover{border-color:var(--hm-olive)}
.hm-calc__check{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:12px 14px;border:2px solid var(--hm-line);border-radius:var(--hm-radius-md);background:var(--hm-cream-accent);cursor:pointer;max-width:520px}
.hm-calc__check::before{content:"";flex:none;width:22px;height:22px;border-radius:6px;border:2px solid var(--hm-olive);background:#fff;display:grid;place-items:center;transition:background .15s}
.hm-calc__check.is-selected::before,.hm-calc__check:has(input:checked)::before{background:var(--hm-olive) 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 4 4L19 6'/%3E%3C/svg%3E") center/16px no-repeat}
.hm-calc__check strong{display:block;color:var(--hm-ink);font-size:15px}
.hm-calc__check small{display:block;color:var(--calc-muted);font-size:12.5px}

/* fields */
.hm-calc__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hm-calc__row--age{margin-top:14px}
.hm-calc__field{margin-bottom:0}
.hm-calc__field label{display:block;font-weight:700;color:var(--hm-ink);margin-bottom:6px}
.hm-calc__field input{width:100%;height:52px;border:2px solid var(--hm-line);border-radius:var(--hm-radius-md);padding:0 14px;font:inherit;font-size:17px;background:#fff;color:var(--hm-ink);transition:border-color .15s,box-shadow .15s}
.hm-calc__field input:hover{border-color:#cfc6b4}
.hm-calc__field input:focus{outline:none;border-color:var(--hm-olive)}
.hm-calc__field input:focus-visible{outline:none;box-shadow:var(--calc-focus)}
.hm-calc__field input::placeholder{color:#B5B0A5}
.hm-calc__unit{position:relative;display:flex;align-items:center;direction:ltr}
.hm-calc__unit input{direction:ltr;text-align:left;padding-left:16px;padding-right:72px;font-variant-numeric:tabular-nums}
.hm-calc__unit span{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:14px;font-weight:700;color:var(--calc-muted);pointer-events:none;direction:rtl}
.hm-calc__unit--big{max-width:280px}
.hm-calc__unit--big input{height:60px;font-size:24px;font-weight:700}
.hm-calc__field--weight,.hm-calc__field--name{max-width:420px}
.hm-calc__unit input::-webkit-outer-spin-button,.hm-calc__unit input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.hm-calc__unit input[type=number]{-moz-appearance:textfield;appearance:textfield}
.hm-calc__step.has-error .hm-calc__field input,.hm-calc__step.has-error .hm-calc__unit input{border-color:var(--hm-err,#B3261E)}
.hm-calc__err{margin:10px 0 0;font-size:14px;font-weight:600;color:var(--hm-err,#B3261E);background:var(--hm-err-bg,#FDECEC);border:1px solid var(--hm-err-line,#F3C4C4);border-radius:var(--hm-radius-md);padding:8px 12px}
.hm-calc__note{display:block;font-size:13.5px;color:var(--hm-text);background:var(--hm-cream-2);border-radius:var(--hm-radius-md);padding:10px 12px;margin:14px 0 0;line-height:1.5}
.hm-calc__note svg{width:18px;height:18px;color:var(--hm-olive);vertical-align:-4px;margin-inline-end:6px}
.hm-calc__note--soft{background:var(--hm-olive-soft)}
.hm-calc__note--warn{background:#FCEBDD;color:var(--calc-warn)}
.hm-calc__track{font-size:13.5px;color:var(--calc-muted);margin:-6px 0 12px;text-align:center}

/* nav */
.hm-calc__nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid var(--hm-line);background:#fff}
.hm-calc__nav .hm-btn{min-width:130px}
.hm-calc__nav .hm-btn:focus-visible{outline:none;box-shadow:var(--calc-focus)}
.hm-calc__nav .hm-btn--buy:focus-visible,.hm-calc__nav .hm-btn--primary:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
.hm-calc__nav-spacer{flex:1}

/* result */
.hm-calc__result[aria-live]{outline:none}
.hm-calc__result-hero{position:relative;background:linear-gradient(135deg,#537F28,#456B21);color:#fff;border-radius:var(--hm-radius-lg);padding:26px 24px 22px;text-align:center;margin-bottom:14px;outline:none}
.hm-calc__result-hero small{display:block;opacity:.95;font-size:15px}
.hm-calc__result-hero .big{font-size:clamp(48px,6vw,64px);font-weight:800;line-height:1.05;margin:4px 0 6px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.hm-calc__result-hero #hm-r-cost-sub{font-size:13.5px;opacity:.9;max-width:52ch;margin-inline:auto;line-height:1.45}
.hm-calc__result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.hm-calc__result-box{background:var(--hm-cream-accent);border:1px solid var(--hm-line);border-radius:var(--hm-radius-md);padding:14px 12px;text-align:center}
.hm-calc__result-box strong{display:block;font-size:26px;color:var(--hm-olive-dark);line-height:1.15;font-variant-numeric:tabular-nums}
.hm-calc__result-box span{font-size:14.5px;line-height:1.35;color:var(--calc-muted);display:block;margin-top:3px}
.hm-calc__result-box--pack{background:#fff;border-color:var(--hm-olive)}
.hm-calc__result-box--pack strong{color:var(--hm-orange-dark)}
#hm-r-pack.hm-lead{font-size:17px;line-height:1.6;margin:0 0 6px;color:var(--hm-ink)}
#hm-r-pack.hm-lead strong{color:var(--hm-olive);font-weight:700}
#hm-r-context{margin-top:10px}
#hm-r-allergy{margin-top:10px}

/* pick tiles */
.hm-cost{margin-top:18px}
.hm-cost h3{font-size:18px;margin:0 0 4px}
.hm-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;max-height:none;overflow:visible;padding:0}
.hm-pick__item{position:relative;min-height:44px;background:#fff;border:2px solid var(--hm-line);border-radius:var(--hm-radius-md);padding:12px 10px 10px;text-align:center;cursor:pointer;font:inherit;color:var(--hm-ink);display:flex;flex-direction:column;gap:3px;align-items:center;transition:border-color .15s,box-shadow .15s,transform .15s;-webkit-tap-highlight-color:transparent}
.hm-pick__item:hover{border-color:var(--hm-olive);transform:translateY(-1px)}
.hm-pick__item:focus-visible{outline:none;box-shadow:var(--calc-focus)}
.hm-pick__item.is-on{border-color:var(--hm-olive);background:var(--hm-olive-soft);box-shadow:var(--hm-shadow)}
.hm-pick__item.is-on::after{content:"\2713";position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:50%;background:var(--hm-olive);color:#fff;font-size:14px;display:grid;place-items:center}
.hm-pick__item img,.hm-pick__ph{width:72px;height:72px;object-fit:cover;border-radius:10px;background:var(--hm-cream-2);display:block}
.hm-pick__name{font-weight:700;font-size:13.5px;color:var(--hm-ink);line-height:1.25;min-height:2.5em;display:flex;align-items:center}
.hm-pick__sub{font-size:11.5px;color:var(--calc-muted)}
.hm-pick__day{font-weight:800;color:var(--hm-olive-dark);font-size:16px;margin-top:2px}
.hm-pick__day2{font-size:11.5px;color:var(--calc-muted)}
.hm-pick__rec{position:absolute;top:8px;right:8px;background:var(--hm-olive);color:#fff;font-size:10.5px;font-weight:700;border-radius:999px;padding:3px 8px;max-width:calc(100% - 44px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hm-pick__more{border-style:dashed;justify-content:center;color:var(--hm-olive-dark);background:var(--hm-cream-accent)}
.hm-sum{margin-top:14px;background:#fff;border:1px solid var(--hm-line);border-radius:var(--hm-radius-md);overflow:hidden}
.hm-sum__scroll{overflow-x:auto}
.hm-sum table{width:100%;border-collapse:collapse;font-size:14px}
.hm-sum th{font-size:12px;color:var(--calc-muted);font-weight:600;text-align:right;padding:10px;border-bottom:1px solid var(--hm-line);white-space:nowrap}
.hm-sum td{padding:10px;border-bottom:1px solid var(--hm-line);vertical-align:middle;white-space:nowrap;font-variant-numeric:tabular-nums}
.hm-sum td:first-child{white-space:normal;min-width:160px}
.hm-sum td small{display:block;color:var(--calc-muted);font-size:11.5px;font-weight:400}
.hm-sum td b{color:var(--hm-olive-dark);font-size:16px}
.hm-sum tr.is-avg td{background:var(--hm-olive-soft);font-weight:700}
.hm-sum__foot{padding:10px 12px;font-size:12.5px;color:var(--calc-muted)}

/* CTAs */
.hm-calc__ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--hm-line)}
.hm-calc__ctas .hm-btn{flex:1 1 220px;min-height:52px}
.hm-calc__ctas .hm-btn:focus-visible{outline:none;box-shadow:var(--calc-focus)}
.hm-calc__ctas .hm-btn--buy:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
.hm-calc__save-msg{margin:12px 0 0;font-size:14px;font-weight:600;border-radius:var(--hm-radius-md);padding:10px 12px;background:var(--hm-cream-2);color:var(--hm-ink)}
.hm-calc__save-msg.is-ok{background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.hm-calc__save-msg.is-err{background:var(--hm-err-bg,#FDECEC);color:var(--hm-err,#B3261E)}
.hm-calc__save-msg a{font-weight:700;text-decoration:underline}
.hm-trial--calc{margin-top:22px;min-width:0}
.hm-trial--calc>*{min-width:0}
.hm-trial--calc .hm-trial__cards{min-width:0}
.hm-trial--calc .hm-card{min-width:0}
.hm-trial--calc .hm-card__actions .hm-btn{white-space:normal;line-height:1.2}
.hm-calc__again{margin:18px 0 0;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.hm-calc__again-link{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.hm-calc .hm-btn:disabled,.hm-calc .hm-btn.is-disabled{opacity:.55;cursor:not-allowed;transform:none}

/* embedded on a product page: tighter top spacing */
.hm-calc--embedded{margin-top:0}

/* ---- My Pets ---- */
.hm-pets-page__intro{margin-bottom:16px}
.hm-pets__lead{font-size:14px;color:var(--calc-muted);margin:0 0 14px}
.hm-pets__demo{display:inline-block;font-size:13px;font-weight:700;color:var(--calc-warn);background:#FCEBDD;border-radius:var(--hm-radius-pill);padding:6px 12px;margin-bottom:14px}
.hm-pets__unsaved{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:var(--hm-olive-soft);border-radius:var(--hm-radius-md);padding:12px 14px;margin-bottom:16px;font-size:14px;color:var(--hm-ink)}
.hm-pets{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.hm-pet{position:relative;background:var(--hm-cream-accent);border:2px solid var(--hm-line);border-radius:var(--hm-radius-lg);padding:18px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s,box-shadow .15s}
.hm-pet.is-active{border-color:var(--hm-olive);box-shadow:var(--hm-shadow)}
.hm-pet__head{display:flex;align-items:center;gap:12px}
.hm-pet__who{flex:1;min-width:0}
.hm-pet__who strong{font-size:18px;color:var(--hm-ink);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hm-pet__who span{font-size:13px;color:var(--calc-muted)}
.hm-pet__avatar{width:52px;height:52px;flex:none;border-radius:50%;background:var(--hm-olive-soft);display:grid;place-items:center;color:var(--hm-olive-dark)}
.hm-pet__active{display:none;align-items:center;gap:4px;font-size:12px;font-weight:700;color:#fff;background:var(--hm-olive);border-radius:999px;padding:4px 10px}
.hm-pet__active svg{width:14px;height:14px}
.hm-pet.is-active .hm-pet__active{display:inline-flex}
.hm-pet__stats{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:13px;color:var(--calc-muted)}
.hm-pet__stats div{background:#fff;border-radius:var(--hm-radius-md);padding:8px 10px}
.hm-pet__stats b{display:block;color:var(--hm-olive-dark);font-size:15px;line-height:1.3}
.hm-pet__meta{display:flex;flex-wrap:wrap;gap:6px}
.hm-pet__meta span{font-size:12px;background:#fff;border:1px solid var(--hm-line);border-radius:999px;padding:3px 10px;color:var(--hm-text)}
.hm-pet__meta .hm-pet__allergy{background:#FCEBDD;border-color:#F3D3BC;color:var(--calc-warn)}
.hm-pet__actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}
.hm-pet__actions .hm-btn{min-height:44px}
.hm-pet__actions .hm-btn:focus-visible{outline:none;box-shadow:var(--calc-focus)}
.hm-pet__remove:hover{border-color:var(--hm-err,#B3261E);color:var(--hm-err,#B3261E);background:var(--hm-err-bg,#FDECEC)}
.hm-pet__msg{margin:0;font-size:13px;color:var(--hm-olive-dark)}
.hm-pet__msg.is-err{color:var(--hm-err,#B3261E)}
.hm-pet.is-busy{opacity:.6;pointer-events:none}
.hm-pet.is-leaving{opacity:0;transform:scale(.97);transition:opacity .2s,transform .2s}
.hm-pet--add{align-items:center;justify-content:center;text-align:center;border-style:dashed;color:var(--calc-muted);min-height:180px;text-decoration:none}
.hm-pet--add:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-pet--add:focus-visible{outline:none;box-shadow:var(--calc-focus)}
.hm-pet--add svg{width:40px;height:40px;color:var(--hm-olive)}
.hm-pet--add strong{color:var(--hm-ink);font-size:16px}
.hm-pet--add small{font-size:13px}
.hm-pets__empty{text-align:center;background:var(--hm-cream-accent);border:1px dashed var(--hm-line);border-radius:var(--hm-radius-lg);padding:36px 20px;max-width:560px;margin-inline:auto}
.hm-pets__empty-ico{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);margin:0 auto 12px}
.hm-pets__empty-ico svg{width:32px;height:32px}
.hm-pets__empty h3{font-size:20px;margin-bottom:6px}
.hm-pets__empty p{color:var(--hm-text);font-size:15px;margin:0 auto 16px;max-width:44ch}
.hm-club__box{background:var(--hm-cream-accent);border:1px dashed var(--hm-line);border-radius:var(--hm-radius-lg);padding:32px 20px;text-align:center;max-width:560px}
.hm-club__ico{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);margin:0 auto 12px}
.hm-club__ico svg{width:30px;height:30px}
.hm-club__box h3{font-size:20px;margin-bottom:6px}
.hm-club__box p{color:var(--hm-text);font-size:15px}

/* ---- responsive ---- */
@media (max-width:820px){
  .hm-calc__cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-calc__result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-pick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-sum{overflow-x:auto}
  .hm-sum th:nth-child(4),.hm-sum td:nth-child(4){display:none}
}
@media (max-width:640px){
  .hm-calc{padding:18px 14px 14px;border-radius:var(--hm-radius-lg)}
  .hm-calc__steps{min-height:360px}
  .hm-calc__cards--2{gap:10px}
  .hm-calc__card{padding:16px 10px}
  .hm-calc__card-art{max-height:150px}
  .hm-body-cards{grid-template-columns:1fr;gap:10px}
  .hm-body-card{flex-direction:row;text-align:right;gap:12px;padding:10px 12px;align-items:center}
  .hm-body-card__art{width:118px;height:64px;flex:none}
  .hm-body-card strong{margin-top:0}
  .hm-body-card .hm-body-card__art+strong{flex:1}
  .hm-body-card small{flex-basis:100%;display:none}
  .hm-body-card__text{flex:1}
  .hm-calc__row{grid-template-columns:1fr}
  .hm-calc__unit--big{max-width:none}
  .hm-calc__nav{position:sticky;bottom:0;z-index:5;margin:18px 0 0;padding:12px 0 calc(12px + env(safe-area-inset-bottom));box-shadow:0 -10px 16px -6px rgba(60,50,20,.08)}
  .hm-calc__nav .hm-btn{min-width:0;flex:1}
  .hm-calc__nav .hm-btn--ghost{flex:0 0 auto;min-width:96px}
  .hm-calc__result-hero{padding:22px 16px 18px}
  .hm-calc__result-hero .big{font-size:52px}
  .hm-calc__result-box strong{font-size:22px}
  .hm-pick__item img,.hm-pick__ph{width:64px;height:64px}
  .hm-sum td:first-child{min-width:120px}
  .hm-sum th,.hm-sum td{padding:8px 6px;font-size:13px}
  .hm-sum td:last-child{white-space:normal;min-width:70px}
  .hm-calc__ctas .hm-btn{flex:1 1 100%}
  .hm-pets{grid-template-columns:1fr}
  .hm-trial--calc .hm-trial__cards{grid-template-columns:1fr}
  .hm-trial--calc{padding:16px 14px}
  .hm-pets__unsaved .hm-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .hm-calc *,.hm-pets-wrap *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .hm-calc__card:hover,.hm-body-card:hover,.hm-pick__item:hover{transform:none}
}

/* PM fix K-02 */
@media (max-width:640px){.hm-calc__result .hm-calc__stats,.hm-calc__result-grid{align-items:stretch}.hm-calc__result-box{height:100%}}
/* PM fix: real body-condition images keep to the 96px art box */
.hm-calc .hm-body-card__pic{overflow:hidden}
.hm-calc .hm-body-card__pic img{width:auto;max-width:100%;height:96px;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
@media (max-width:640px){.hm-calc .hm-body-card__pic img{height:64px}}

/* Typography boost (David, Aug 19): the calculator text was too small; the instruction line is now the loudest element after the question */
.hm-calc__stepnum{font-size:15px}
.hm-calc__q{font-size:clamp(24px,2.6vw,30px)}
.hm-calc__hint{font-size:clamp(16px,1.6vw,18px);color:var(--hm-text);margin:0 0 18px;line-height:1.55}
.hm-calc__opt{font-size:14.5px}
.hm-calc__help{font-size:14.5px}
.hm-calc__card strong{font-size:19px}
.hm-calc__card small{font-size:14.5px;line-height:1.4}
.hm-body-card strong{font-size:17.5px}
.hm-body-card small{font-size:14px}
.hm-calc__chip{font-size:16.5px}
.hm-calc__check strong{font-size:16.5px}
.hm-calc__check small{font-size:14px}
.hm-calc__unit span{font-size:15px}
.hm-calc__err{font-size:15.5px}
.hm-calc__note{font-size:15.5px}
.hm-calc__track{font-size:15px}
.hm-calc__prefill{font-size:15.5px}
.hm-calc__result-hero small{font-size:16.5px}
.hm-calc__result-hero #hm-r-cost-sub{font-size:15px}
.hm-calc__result-box span{font-size:16px}
#hm-r-pack.hm-lead{font-size:19px}
.hm-pick__name{font-size:15px}
.hm-pick__sub,.hm-pick__day2{font-size:13px}
.hm-sum table{font-size:15px}
.hm-sum th{font-size:13px}
.hm-sum td small{font-size:13px}
.hm-sum__foot{font-size:14px}
.hm-pets__lead{font-size:15.5px}
.hm-calc__save-msg{font-size:15px}
.hm-calc__card--photo strong{padding:12px 12px 2px}
.hm-calc__card--photo small{padding:0 12px 14px;margin-top:0}

/* step 7: current diet + freezer sub-question */
.hm-calc__sub{margin-top:18px;padding-top:14px;border-top:1px dashed var(--hm-line)}
.hm-calc__hint--q{margin:0 0 10px}
.hm-calc__hint--q strong{color:var(--hm-ink,inherit)}
#hm-pick-note{margin:0 0 12px}
@media (max-width:640px){.hm-calc__cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* step 4: activity clip (real video, loaded only on step 4) */
.hm-act-stage{position:relative;margin-top:14px;aspect-ratio:16/7;overflow:hidden;border-radius:14px;background:#e9e4d8}
@media (max-width:640px){.hm-act-stage{aspect-ratio:16/9}}
.hm-act-stage__poster,.hm-act-stage__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hm-act-stage__video{opacity:0;transition:opacity .45s}
.hm-act-stage.is-playing .hm-act-stage__video{opacity:1}
.hm-act-stage.is-still .hm-act-stage__poster{animation:hm-kb 14s ease-in-out infinite alternate}
@keyframes hm-kb{from{transform:scale(1)}to{transform:scale(1.08)}}
@media (prefers-reduced-motion:reduce){.hm-act-stage.is-still .hm-act-stage__poster{animation:none}}

/* compact */
.hm-calc{padding:clamp(16px,2.4vw,26px)}
.hm-calc__progress{margin-bottom:12px;height:6px}
.hm-calc__stepnum{margin-bottom:2px}
.hm-calc__q{font-size:clamp(20px,2.4vw,26px);margin-bottom:4px}
.hm-calc__hint{margin-bottom:10px;font-size:13px}
.hm-calc__steps{min-height:0}
.hm-calc__cards{gap:10px}
.hm-calc__card{padding:12px 10px}
.hm-calc__card small{font-size:11.5px}
.hm-body-card{padding:10px}
.hm-calc__field{margin-bottom:10px}
.hm-calc__nav{margin-top:14px;padding-top:12px}
.hm-act-stage{aspect-ratio:16/6;margin-top:12px}
.hm-calc__sub{margin-top:12px;padding-top:10px}

/* product page: collapsed calculator for a customer with a saved pet */
.hm-calc-saved{display:flex;align-items:center;justify-content:space-between;gap:12px 18px;flex-wrap:wrap;background:#fff;border:1px solid var(--hm-line);border-radius:var(--hm-radius-xl);padding:14px 20px;max-width:900px;margin:0 auto}
.hm-calc-saved__text{margin:0;font-size:15px;color:var(--hm-ink)}
.hm-calc-saved__text b{color:var(--hm-olive)}
/* 11.9.2026 David from his phone: the small helper text under the fields reads too light on iPhone. Darker and one size up. */
.hm-calc__help{color:#55554F;font-size:15px}
/* 11.9.2026 desktop: the step slides in with a transform animation (fill-mode both), which leaves the step as its own stacking context,
   so the breed suggestion list (z-index 30 inside the step) was painted UNDER the "חזרה" button that comes later in the DOM.
   Lifting the active step above the nav fixes the overlap without touching the animation. */
.hm-calc__step.is-active{position:relative;z-index:2}
/* 11.9.2026 evening: no-freeze packs shown to a dog that has a freezer carry a small tag */
.hm-pick__tag{display:block;margin-top:4px;font-size:.8em;font-weight:600;color:#4F4F48}
/* 12.9.2026 David: out-of-stock packs stay visible in the calculator list, greyed, not selectable */
.hm-pick__item.is-oos{opacity:.6;cursor:default;filter:grayscale(.35)}
.hm-pick__item.is-oos:hover{transform:none;box-shadow:none}
.hm-pick__oos{display:block;margin-top:6px;font-size:.8em;font-weight:700;color:#8A4A1F}

/* HM-STEP1-COMPACT 2026-09-27 */
.hm-calc__card-art{display:flex;align-items:center;justify-content:center;aspect-ratio:auto;width:auto;max-width:100%;height:150px;max-height:150px;margin-inline:auto;background:transparent;border-radius:calc(var(--hm-radius-lg) - 2px)}
.hm-calc__card-art img{width:auto;max-width:100%;height:100%;object-fit:contain}
.hm-calc__field--sex{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;margin-top:10px}
.hm-calc__field--sex>label{margin:0}
.hm-calc__field--sex .hm-calc__chips{margin:0}
.hm-calc__field--sex .hm-calc__help{margin:0;font-size:12.5px;flex:1 1 240px;min-width:0}
.hm-calc__step .hm-calc__hint{margin-bottom:10px}
@media (max-width:640px){.hm-calc__card-art{height:118px;max-height:118px}}
@media (max-width:560px){.hm-calc__field--sex .hm-calc__help{flex:1 1 100%}}

/* HM-AGE-ROW 2026-09-27 */
#hm-age-years-wrap{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}
#hm-age-years-wrap>label{grid-column:1 / -1;margin-bottom:0}
#hm-age-years-wrap .hm-calc__unit{margin-top:0 !important}

/* HM-CARD-TEXT 2026-09-27 */
.hm-calc__card strong{font-size:17px;line-height:1.35;margin-top:8px}
.hm-calc__card small{font-size:14px;line-height:1.4;display:block;margin-top:2px}

/* HM-ACT-STAGE-169 2026-09-27 */
.hm-act-stage{aspect-ratio:16 / 9;max-width:564px;margin-inline:auto}
.hm-act-stage__poster,.hm-act-stage__video{object-fit:contain}

/* HM-CARD-PROPORTION 2026-09-27 */
.hm-calc__cards{grid-template-columns:repeat(2,minmax(0,220px));justify-content:center;gap:16px}
.hm-calc__card--photo{padding:14px}
.hm-calc__card-art{height:168px;max-height:168px}
@media (max-width:640px){.hm-calc__cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hm-calc__card-art{height:130px;max-height:130px}}

/* HM-ART-RATIO 2026-09-27 */
.hm-calc__card-art{width:76%;height:auto;aspect-ratio:1 / 1;max-height:168px}
@media (max-width:640px){.hm-calc__card-art{height:auto;max-height:150px}}

/* =====================================================================
   Hau & Miau - CONTENT stream: pages (about, FAQ, contact, legal,
   success stories, build-a-box), single articles, blog index, search.
   Loaded after main.css. Spec 12 (mobile first, RTL, states, a11y AA)
   and 13 (schema). Only transform/opacity animations, 150-300ms.
   ===================================================================== */
:root{--hm-c-focus:0 0 0 3px #fff,0 0 0 6px var(--hm-olive);--hm-c-line:#EFE7DA;--hm-c-soft:#FBF8F2;--hm-c-muted:#6B6B66;--hm-c-measure:760px}

/* skip link becomes visible on keyboard focus (WCAG 2.4.1) */
.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;position:fixed!important;top:12px;right:12px;z-index:200;background:var(--hm-ink);color:#fff;padding:12px 18px;border-radius:999px;font-weight:700;box-shadow:var(--hm-c-focus);text-decoration:none}

/* ---------- reading page frame ---------- */
.hm-page--content{max-width:var(--hm-c-measure);padding-top:8px;padding-bottom:24px}
.hm-page--content.hm-page--wide{max-width:var(--hm-max)}
.hm-page--content .hm-crumbs{padding:6px 0 0}
.hm-page--content .hm-crumbs{font-size:13px;color:var(--hm-c-muted);line-height:1.4}
.hm-page--content .hm-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px}
.hm-page--content .hm-crumbs li{display:inline-flex;align-items:center;gap:6px}
.hm-page--content .hm-crumbs li+li::before{content:"";width:5px;height:5px;border-right:1.5px solid #C9C2B4;border-bottom:1.5px solid #C9C2B4;transform:rotate(135deg);margin-inline-end:2px}
.hm-page--content .hm-crumbs a{color:var(--hm-c-muted);display:inline-flex;align-items:center;padding:0 2px;min-height:44px;line-height:16px;transition:color .15s}
.hm-page--content .hm-crumbs a:hover{color:var(--hm-olive-dark);text-decoration:underline}
.hm-page--content .hm-crumbs a:focus-visible{outline:none;box-shadow:var(--hm-c-focus);border-radius:6px}
.hm-page--content .hm-crumbs [aria-current]{color:var(--hm-ink);font-weight:600;padding:0 2px;min-height:44px;line-height:16px;display:inline-flex;align-items:center;max-width:52vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* hero title area */
.hm-phero{padding:6px 0 22px;border-bottom:1px solid var(--hm-c-line);margin-bottom:28px}
.hm-phero .hm-eyebrow{margin-bottom:6px}
.hm-page--content .hm-phero h1{font-size:clamp(30px,4.2vw,46px);line-height:1.15;margin:0 0 10px;letter-spacing:-.01em;overflow-wrap:anywhere}
.hm-phero__lead{font-size:clamp(17px,1.5vw,19px);line-height:1.6;color:var(--hm-text);margin:0;max-width:60ch}
.hm-phero__meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--hm-c-muted);margin-top:14px;align-items:center}
.hm-phero__meta span{display:inline-flex;align-items:center;gap:6px}
.hm-phero__meta svg{width:16px;height:16px;color:var(--hm-olive)}
.hm-phero__meta a{color:var(--hm-olive-dark);font-weight:700}
.hm-phero__meta a:hover{text-decoration:underline}
.hm-phero--wide{max-width:none}
.hm-phero--center{text-align:center}
.hm-phero--center .hm-phero__lead{margin-inline:auto}
.hm-phero--center .hm-phero__meta{justify-content:center}

/* ---------- article typography (entry-content) ---------- */
.hm-prose{font-size:17px;line-height:1.75;color:var(--hm-text)}
.hm-prose>*:first-child{margin-top:0}
.hm-prose p{margin:0 0 1.1em;font-size:17px}
.hm-prose p.hm-lead,.hm-prose .hm-lead{font-size:clamp(18px,1.6vw,20px);line-height:1.6;color:var(--hm-text)}
.hm-prose h2{font-size:clamp(23px,2.6vw,30px);line-height:1.25;margin:2em 0 .6em;color:var(--hm-ink);scroll-margin-top:96px}
.hm-prose h3{font-size:clamp(19px,2vw,22px);line-height:1.3;margin:1.6em 0 .5em;color:var(--hm-ink);scroll-margin-top:96px}
.hm-prose h4{font-size:17px;margin:1.4em 0 .4em;color:var(--hm-ink)}
.hm-prose h2+h3{margin-top:.8em}
.hm-prose ul,.hm-prose ol{margin:0 0 1.2em;padding-inline-start:1.4em}
.hm-prose li{margin-bottom:.45em;padding-inline-start:4px}
.hm-prose li::marker{color:var(--hm-olive-dark);font-weight:700}
.hm-prose ul li::marker{color:var(--hm-olive)}
.hm-prose li>ul,.hm-prose li>ol{margin-top:.45em;margin-bottom:.2em}
.hm-prose a:not(.hm-btn){color:var(--hm-olive-dark);font-weight:600;text-decoration:underline;text-decoration-color:rgba(94,143,46,.45);text-underline-offset:3px;text-decoration-thickness:1.5px;transition:color .15s}
.hm-prose a:not(.hm-btn):hover{color:var(--hm-olive);text-decoration-color:currentColor}
.hm-prose a:focus-visible{outline:none;box-shadow:var(--hm-c-focus);border-radius:4px}
.hm-prose strong{color:var(--hm-ink)}
.hm-prose blockquote{margin:1.6em 0;padding:16px 20px;border-inline-start:4px solid var(--hm-olive);background:var(--hm-c-soft);border-radius:0 14px 14px 0;font-size:17px;color:var(--hm-ink)}
.hm-prose blockquote p:last-child{margin:0}
.hm-prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;background:var(--hm-c-soft);border:1px solid var(--hm-c-line);border-radius:6px;padding:2px 6px;color:var(--hm-ink);direction:ltr;unicode-bidi:isolate;display:inline-block}
.hm-prose p>code:only-child{display:block;padding:12px 16px;direction:rtl;text-align:right;overflow-x:auto}
.hm-prose pre{background:var(--hm-c-soft);border:1px solid var(--hm-c-line);border-radius:14px;padding:16px;overflow-x:auto;direction:ltr;text-align:left;font-size:14px}
.hm-prose hr{border:0;border-top:1px solid var(--hm-c-line);margin:2em 0}
.hm-prose img{border-radius:18px;margin:1.4em auto;height:auto}
.hm-prose figure{margin:1.6em 0}
.hm-prose figcaption{font-size:13px;color:var(--hm-c-muted);text-align:center;margin-top:8px}
.hm-prose iframe,.hm-prose video{max-width:100%;border-radius:14px}
.hm-prose [dir="rtl"]{direction:rtl}
.hm-prose bdi,.hm-prose .hm-ltr{unicode-bidi:isolate}
.hm-prose .hm-ltr{direction:ltr;display:inline-block}
/* tables: scroll on small screens, zebra rows, sticky-ish head */
.hm-prose .hm-table{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.4em 0;border:1px solid var(--hm-c-line);border-radius:14px;background:#fff}
/* scroll shadows on the edges while there is more table to see (RTL: content starts on the right, so the left edge gets the cue) */
.hm-prose .hm-table{background:linear-gradient(to left,#fff 30%,rgba(255,255,255,0)),linear-gradient(to right,#fff 30%,rgba(255,255,255,0)) 0 0,radial-gradient(farthest-side at 100% 50%,rgba(60,50,20,.16),rgba(0,0,0,0)),radial-gradient(farthest-side at 0 50%,rgba(60,50,20,.16),rgba(0,0,0,0)) 0 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-position:right,left,right,left;background-attachment:local,local,scroll,scroll}
.hm-prose .hm-table table{background:transparent}
.hm-prose .hm-table:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5;margin:0;min-width:420px}
.hm-prose .hm-table--narrow table{min-width:0}
.hm-prose th,.hm-prose td{padding:10px 14px;text-align:right;vertical-align:top;border-bottom:1px solid var(--hm-c-line)}
.hm-prose thead th{background:var(--hm-olive-soft);color:var(--hm-ink);font-weight:700;font-size:14px;white-space:nowrap}
.hm-prose tbody tr:nth-child(even) td{background:rgba(251,248,242,.85)}
.hm-prose tbody tr:last-child td{border-bottom:0}
.hm-prose tbody th{font-weight:700;color:var(--hm-ink)}
.hm-prose td,.hm-prose th{white-space:normal}
.hm-prose td.hm-nw,.hm-prose th.hm-nw{white-space:nowrap}
.hm-prose td bdi,.hm-prose th bdi{white-space:nowrap}
/* legacy inline styles from imports */
.hm-prose [style*="text-align: left"],.hm-prose [style*="text-align:left"]{text-align:right!important}
.hm-prose div[dir="rtl"]>p:last-child{margin-bottom:0}

/* ---------- section box used by several templates ---------- */
.hm-box{background:#fff;border:1px solid var(--hm-c-line);border-radius:18px;padding:22px 22px 24px;box-shadow:var(--hm-shadow)}
.hm-box h2,.hm-box h3{margin-top:0}
.hm-note{display:flex;gap:12px;align-items:flex-start;background:var(--hm-c-soft);border:1px solid var(--hm-c-line);border-radius:14px;padding:14px 16px;font-size:15px;color:var(--hm-text);margin:20px 0}
.hm-note svg{width:20px;height:20px;flex:none;color:var(--hm-olive);margin-top:2px}
.hm-note p{margin:0}
.hm-note--warn{border-color:#F1D3B8;background:#FFF6EE}
.hm-note--warn svg{color:var(--hm-orange-dark)}

/* buttons/links states in content scope */
.hm-page--content .hm-btn:focus-visible,.hm-search-page .hm-btn:focus-visible,.hm-blog .hm-btn:focus-visible,.hm-article .hm-btn:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-page--content .hm-btn--primary:focus-visible,.hm-page--content .hm-btn--buy:focus-visible,.hm-article .hm-btn--primary:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
/* WhatsApp green darkened for AA (white text 5.1:1); primary/olive buttons in content scope use olive-dark (5.5:1) - main.css olive is 3.9:1 */
.hm-btn--wa{background:#1B7F34;color:#fff}
.hm-btn--wa:hover{background:#166D2D;color:#fff}
.hm-page--content .hm-btn--primary,.hm-article-cta .hm-btn--primary{background:var(--hm-olive-dark);color:#fff}
.hm-page--content .hm-btn--primary:hover,.hm-article-cta .hm-btn--primary:hover{background:#3F6A1C;color:#fff}

/* ---------- ABOUT ---------- */
.hm-about .hm-phero{border-bottom:0;margin-bottom:6px;padding-bottom:6px}
.hm-founder--v2{display:grid;grid-template-columns:1fr;gap:22px;align-items:center;margin:8px 0 34px}
.hm-founder--v2 .hm-founder__media{border-radius:24px;overflow:hidden;box-shadow:var(--hm-shadow);background:#fff}
.hm-founder--v2 .hm-founder__media img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 30%}
.hm-founder--v2 .hm-founder__text{display:flex;flex-direction:column;justify-content:center}
.hm-founder--v2 .hm-founder__text p{font-size:18px;line-height:1.7;margin:0 0 .8em;color:var(--hm-text)}
.hm-founder--v2 .hm-founder__punch{font-size:clamp(22px,2.4vw,30px);font-weight:800;line-height:1.25;color:var(--hm-ink);margin:0 0 .6em}
.hm-founder--v2 .hm-founder__punch:last-child{margin-bottom:0}
.hm-founder__cap{font-size:13px;color:var(--hm-c-muted);margin:8px 2px 0}
.hm-about .hm-prose{max-width:var(--hm-c-measure);margin-inline:auto}
.hm-about .hm-prose p{font-size:18px;line-height:1.8}
.hm-about-facts{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.hm-about-facts li{background:#fff;border:1px solid var(--hm-c-line);border-radius:14px;padding:12px 14px;display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--hm-text);line-height:1.45}
.hm-about-facts svg{width:20px;height:20px;flex:none;color:var(--hm-olive);margin-top:1px}
.hm-about-facts strong{display:block;color:var(--hm-ink);font-size:15px}
.hm-about-facts a{display:inline-flex;align-items:center;min-height:44px;color:var(--hm-olive-dark);font-weight:700}
.hm-about-cta{margin:36px 0 10px;background:var(--hm-olive-soft);border-radius:20px;padding:24px 22px;text-align:center}
.hm-about-cta h2{font-size:clamp(20px,2.2vw,26px);margin:0 0 6px}
.hm-about-cta p{margin:0 0 16px;font-size:16px}
.hm-about-cta__row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hm-about-cta .hm-btn{min-width:200px}
.hm-about-cta .hm-btn--ghost{background:#fff}
@media (min-width:821px){
  .hm-page--about{max-width:1040px}
  .hm-founder--v2{grid-template-columns:1.05fr 1fr;gap:40px;margin:14px 0 44px}
  .hm-about-facts{grid-template-columns:repeat(4,1fr);margin:0 0 40px}
}
@media (max-width:480px){.hm-about-facts{grid-template-columns:1fr}}

/* ---------- SUCCESS STORIES ---------- */
.hm-page--stories{max-width:1040px}
.hm-page--stories .hm-stories{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:1fr;gap:16px}
.hm-story-card{background:#fff;border:1px solid var(--hm-c-line);border-radius:20px;padding:24px 22px 22px;box-shadow:var(--hm-shadow);display:flex;flex-direction:column;gap:12px;position:relative;transition:transform .2s ease,box-shadow .2s ease}
.hm-story-card:hover{transform:translateY(-2px);box-shadow:var(--hm-shadow-hover)}
.hm-story-card__quote{width:38px;height:38px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);display:grid;place-items:center;font-size:26px;font-weight:800;line-height:1;font-family:Georgia,serif}
.hm-story-card blockquote{margin:0;font-size:17px;line-height:1.7;color:var(--hm-text)}
.hm-story-card blockquote p{margin:0}
.hm-story-card__who{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:8px;border-top:1px solid var(--hm-c-line)}
.hm-story-card__avatar{width:40px;height:40px;border-radius:50%;background:var(--hm-olive-dark);color:#fff;display:grid;place-items:center;font-weight:800;font-size:16px;flex:none}
.hm-story-card__who h2{font-size:16px;margin:0;color:var(--hm-ink)}
.hm-story-card__who small{display:block;font-size:13px;color:var(--hm-c-muted)}
.hm-story-card--first{background:var(--hm-olive-soft);border-color:#DCE9C8}
.hm-story-card--first .hm-story-card__quote{background:#fff}
.hm-stories-cta{text-align:center;background:#fff;border:1px dashed #D5CCBA;border-radius:20px;padding:26px 20px}
.hm-stories-cta h2{font-size:clamp(20px,2.2vw,24px);margin:0 0 6px}
.hm-stories-cta p{margin:0 0 14px;color:var(--hm-text)}
.hm-stories-cta .hm-btn{min-width:220px}
@media (min-width:700px){.hm-page--stories .hm-stories{grid-template-columns:repeat(2,1fr);gap:18px}}
@media (min-width:1000px){.hm-page--stories .hm-stories{grid-template-columns:repeat(3,1fr)}}

/* ---------- FAQ ---------- */
.hm-page--faq{max-width:820px}
.hm-faq-search{position:relative;margin:0 0 18px}
.hm-faq-search label{display:block;font-size:14px;font-weight:700;color:var(--hm-ink);margin-bottom:6px}
.hm-faq-search__field{position:relative;display:flex;align-items:center}
.hm-faq-search input{width:100%;height:50px;border:1px solid #DCD4C4;border-radius:999px;padding:0 44px 0 44px;font:inherit;font-size:16px;color:var(--hm-ink);background:#fff;transition:border-color .15s,box-shadow .15s}
.hm-faq-search input::placeholder{color:#6B6B66}
.hm-faq-search input:focus{outline:none;border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-faq-search input:focus-visible{box-shadow:var(--hm-c-focus)}
.hm-faq-search__icon{position:absolute;right:16px;width:18px;height:18px;color:var(--hm-c-muted);pointer-events:none}
.hm-faq-search__clear{position:absolute;left:4px;width:42px;height:42px;border-radius:50%;border:0;background:transparent;color:var(--hm-c-muted);font-size:20px;line-height:1;cursor:pointer;display:none;place-items:center}
.hm-faq-search__clear:hover{background:var(--hm-c-soft);color:var(--hm-ink)}
.hm-faq-search__clear:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-faq-search.has-value .hm-faq-search__clear{display:grid}
.hm-faq-search__count{font-size:13px;color:var(--hm-c-muted);margin:8px 4px 0;min-height:18px}
.hm-faq-list{margin:0 0 28px}
.hm-faq-list details{background:#fff;border:1px solid var(--hm-c-line);border-radius:14px;margin-bottom:10px;padding:0 18px;transition:border-color .15s,box-shadow .15s}
.hm-faq-list details[open]{border-color:#D5E3C1;box-shadow:var(--hm-shadow)}
.hm-faq-list details:target{border-color:var(--hm-olive)}
.hm-faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;min-height:56px;font-weight:700;color:var(--hm-ink);font-size:17px;line-height:1.35;border-radius:10px;scroll-margin-top:96px}
.hm-faq-list summary::-webkit-details-marker{display:none}
.hm-faq-list summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--hm-olive-soft) center/14px no-repeat;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234A7423' stroke-width='2.4' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>");transition:transform .2s ease}
.hm-faq-list details[open] summary::after{transform:rotate(45deg)}
.hm-faq-list summary:hover{color:var(--hm-olive-dark)}
.hm-faq-list summary:focus{outline:none}
.hm-faq-list summary:focus-visible{box-shadow:var(--hm-c-focus)}
.hm-faq-list summary h2{font:inherit;margin:0;color:inherit}
.hm-faq-list .hm-faq__a{padding:0 0 18px;font-size:16px;line-height:1.7;color:var(--hm-text)}
.hm-faq-list .hm-faq__a p{margin:0 0 .8em;font-size:16px}
.hm-faq-list .hm-faq__a p:last-child{margin-bottom:0}
.hm-faq-list .hm-faq__a a{color:var(--hm-olive-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.hm-faq-list mark{background:#FDEBB6;color:inherit;border-radius:3px;padding:0 2px}
.hm-faq-list details.is-hidden{display:none}
.hm-faq-empty{display:none;text-align:center;padding:30px 16px;background:var(--hm-c-soft);border:1px dashed #D5CCBA;border-radius:16px;color:var(--hm-text)}
.hm-faq-empty.is-on{display:block}
.hm-faq-empty p{margin:0 0 12px}
.hm-faq-cta{background:var(--hm-olive-soft);border-radius:20px;padding:24px 20px;text-align:center}
.hm-faq-cta h2{font-size:clamp(20px,2.2vw,24px);margin:0 0 6px}
.hm-faq-cta p{margin:0 0 14px}
.hm-faq-cta__row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hm-faq-cta .hm-btn--ghost{background:#fff}

/* ---------- CONTACT ---------- */
.hm-page--contact{max-width:1040px}
.hm-contact{display:grid;grid-template-columns:1fr;gap:22px;align-items:start}
.hm-contact__cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:12px}
.hm-ccard{background:#fff;border:1px solid var(--hm-c-line);border-radius:18px;padding:16px 16px 16px 18px;display:flex;align-items:center;gap:14px;color:var(--hm-text);box-shadow:var(--hm-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .15s;min-height:76px}
a.hm-ccard:hover{transform:translateY(-2px);box-shadow:var(--hm-shadow-hover);border-color:#DCE9C8;color:var(--hm-text)}
a.hm-ccard:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-ccard__icon{width:46px;height:46px;border-radius:14px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);display:grid;place-items:center;flex:none}
.hm-ccard__icon svg{width:22px;height:22px}
.hm-ccard--wa .hm-ccard__icon{background:#E3F6E8;color:#166D2D}
.hm-ccard__body{flex:1;min-width:0}
.hm-ccard__label{display:block;font-size:13px;color:var(--hm-c-muted);margin-bottom:2px}
.hm-ccard__value{display:block;font-size:17px;font-weight:700;color:var(--hm-ink);overflow-wrap:anywhere}
.hm-ccard__value bdi{unicode-bidi:isolate}
@media (max-width:430px){.hm-ccard__value{font-size:15px}}
.hm-ccard__hint{display:block;font-size:13px;color:var(--hm-c-muted);margin-top:2px}
.hm-ccard__arrow{width:18px;height:18px;color:#C9C2B4;flex:none;transition:transform .2s ease}
a.hm-ccard:hover .hm-ccard__arrow{transform:translateX(-3px);color:var(--hm-olive)}
.hm-contact__form{background:#fff;border:1px solid var(--hm-c-line);border-radius:20px;padding:22px 20px 20px;box-shadow:var(--hm-shadow)}
.hm-contact__form h2{font-size:20px;margin:0 0 4px}
.hm-contact__form>p{font-size:15px;color:var(--hm-text);margin:0 0 14px}
.hm-cform{display:grid;gap:12px}
.hm-cform fieldset{border:0;padding:0;margin:0;display:grid;gap:12px;min-width:0}
.hm-cform label{display:block;font-size:14px;font-weight:700;color:var(--hm-ink);margin-bottom:6px}
.hm-cform input,.hm-cform textarea{width:100%;border:1px solid #DCD4C4;border-radius:12px;padding:12px 14px;font:inherit;font-size:16px;color:var(--hm-ink);background:#fff;min-height:48px;transition:border-color .15s,box-shadow .15s}
.hm-cform textarea{min-height:120px;resize:vertical}
.hm-cform input:focus,.hm-cform textarea:focus{outline:none;border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-cform input:focus-visible,.hm-cform textarea:focus-visible{box-shadow:var(--hm-c-focus)}
.hm-cform input[type="tel"],.hm-cform input[type="email"]{direction:ltr;text-align:left}
.hm-cform input[type="tel"]::placeholder,.hm-cform input[type="email"]::placeholder{direction:rtl;text-align:right}
.hm-cform fieldset:disabled input,.hm-cform fieldset:disabled textarea{background:var(--hm-c-soft);color:#8A8A84;cursor:not-allowed}
.hm-cform__row{display:grid;gap:12px}
.hm-cform__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:4px}
.hm-cform__actions .hm-btn{min-width:180px}
.hm-cform__hint{font-size:13px;color:var(--hm-c-muted);margin:0}
.hm-contact__note{margin:0 0 16px}
.hm-contact__note strong{color:var(--hm-ink)}
.hm-contact__extra{margin-top:22px;font-size:15px;color:var(--hm-text)}
.hm-contact__extra h2{font-size:18px;margin:0 0 8px}
.hm-contact__extra ul{margin:0;padding-inline-start:1.2em}
.hm-contact__extra li{margin-bottom:6px}
.hm-contact__extra a{color:var(--hm-olive-dark);font-weight:700}
@media (min-width:821px){
  .hm-contact{grid-template-columns:1fr 1.15fr;gap:32px}
  .hm-cform__row{grid-template-columns:1fr 1fr}
}

/* ---------- LEGAL ---------- */
.hm-legal{counter-reset:hm-sec}
.hm-legal .hm-phero__meta{margin-top:10px}
.hm-legal .hm-prose h2{counter-increment:hm-sec;counter-reset:hm-item;display:flex;gap:10px;align-items:baseline;font-size:clamp(20px,2.3vw,26px);margin-top:1.8em;padding-top:1.2em;border-top:1px solid var(--hm-c-line)}
.hm-legal .hm-prose h2:first-of-type{border-top:0;padding-top:0}
.hm-legal .hm-prose h2::before{content:counter(hm-sec) ".";color:var(--hm-olive-dark);font-weight:800;flex:none;min-width:1.5em;direction:ltr;unicode-bidi:isolate}
.hm-legal .hm-prose ol{list-style:none;padding-inline-start:0;margin-bottom:1.2em}
.hm-legal .hm-prose ol>li{counter-increment:hm-item;position:relative;padding-inline-start:3.2em;margin-bottom:.7em}
.hm-legal .hm-prose ol>li::before{content:counter(hm-sec) "." counter(hm-item);position:absolute;right:0;top:0;color:var(--hm-olive-dark);font-weight:700;font-size:15px;direction:ltr;unicode-bidi:isolate;background:var(--hm-olive-soft);border-radius:8px;padding:1px 7px;line-height:1.5}
.hm-legal--flat .hm-prose ol>li::before{content:counter(hm-item) "."}
.hm-legal .hm-prose ol ol>li{counter-increment:none;padding-inline-start:1.4em}
.hm-legal .hm-prose ol ol>li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--hm-olive);top:.6em;padding:0}
.hm-legal .hm-prose ul{padding-inline-start:1.4em}
.hm-legal .hm-prose p,.hm-legal .hm-prose li{font-size:16px;line-height:1.75}
.hm-legal .hm-prose h3{font-size:18px}
.hm-toc{background:var(--hm-c-soft);border:1px solid var(--hm-c-line);border-radius:16px;padding:14px 18px 8px;margin:0 0 30px}
.hm-toc summary{cursor:pointer;font-weight:800;color:var(--hm-ink);font-size:16px;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:44px;border-radius:8px}
.hm-toc summary::-webkit-details-marker{display:none}
.hm-toc summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--hm-olive-dark);border-bottom:2px solid var(--hm-olive-dark);transform:rotate(45deg);transition:transform .2s ease;margin-inline-end:6px}
.hm-toc[open] summary::after{transform:rotate(225deg)}
.hm-toc summary:focus{outline:none}
.hm-toc summary:focus-visible{box-shadow:var(--hm-c-focus)}
.hm-toc ol{list-style:none;margin:10px 0 6px;padding:0;counter-reset:hm-toc}
.hm-toc li{counter-increment:hm-toc;margin:0}
.hm-toc a{display:flex;gap:10px;align-items:baseline;padding:10px 4px;min-height:44px;box-sizing:border-box;color:var(--hm-text);font-size:15px;font-weight:600;border-radius:8px;transition:color .15s,background .15s}
.hm-toc a::before{content:counter(hm-toc);color:var(--hm-olive-dark);font-weight:800;min-width:1.4em;direction:ltr;unicode-bidi:isolate}
.hm-toc a:hover{color:var(--hm-olive-dark);background:#fff}
.hm-toc a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-legal-foot{margin-top:36px;padding-top:18px;border-top:1px solid var(--hm-c-line);font-size:14px;color:var(--hm-c-muted)}
.hm-legal-foot ul{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.hm-legal-foot a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--hm-c-line);border-radius:999px;background:#fff;color:var(--hm-text);font-weight:600;font-size:14px;transition:border-color .15s,color .15s}
.hm-legal-foot a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-legal-foot a[aria-current]{background:var(--hm-olive-soft);border-color:#D5E3C1;color:var(--hm-olive-dark)}
.hm-legal-foot a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-legal-contact{margin-top:26px}
.hm-legal-contact h2{font-size:18px;margin:0 0 8px}
.hm-legal-contact ul{list-style:none;padding:0;margin:0;display:grid;gap:8px 20px;grid-template-columns:1fr}
.hm-legal-contact li{font-size:15px;display:flex;gap:8px;align-items:center;min-height:44px}
.hm-legal-contact a{display:inline-flex;align-items:center;min-height:44px}
.hm-legal-contact svg{width:18px;height:18px;color:var(--hm-olive);flex:none}
.hm-legal-contact a{color:var(--hm-olive-dark);font-weight:700}
@media (min-width:600px){.hm-legal-contact ul{grid-template-columns:1fr 1fr}}

/* ---------- BUILD A BOX (placeholder) ---------- */
.hm-page--bab{max-width:900px}
.hm-bab-steps{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:1fr;gap:12px;counter-reset:bab}
.hm-bab-steps li{counter-increment:bab;background:#fff;border:1px solid var(--hm-c-line);border-radius:16px;padding:16px 16px 16px 18px;display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.55;color:var(--hm-text)}
.hm-bab-steps li::before{content:counter(bab);width:34px;height:34px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);display:grid;place-items:center;font-weight:800;flex:none}
.hm-bab-steps strong{display:block;color:var(--hm-ink);font-size:16px}
.hm-bab-cta{display:flex;flex-wrap:wrap;gap:10px}
@media (min-width:700px){.hm-bab-steps{grid-template-columns:repeat(3,1fr)}}

/* ---------- SINGLE ARTICLE ---------- */
.hm-article{padding-top:8px}
.hm-article .hm-phero{border-bottom:0;margin-bottom:18px;padding-bottom:0}
.hm-article__hero{margin:0 0 28px}
.hm-article__hero img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:22px;background:var(--hm-olive-soft)}
.hm-article__hero figcaption{font-size:13px;color:var(--hm-c-muted);margin-top:8px}
.hm-article__body{position:relative}
.hm-article .hm-toc{margin-bottom:26px}
.hm-article__foot{margin-top:36px;padding-top:20px;border-top:1px solid var(--hm-c-line)}
.hm-article__tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 20px}
.hm-article__tags a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:999px;background:var(--hm-c-soft);border:1px solid var(--hm-c-line);color:var(--hm-text);font-size:13px;font-weight:600;transition:border-color .15s,color .15s}
.hm-article__tags a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-article__tags a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-article__author{display:flex;gap:14px;align-items:center;background:var(--hm-c-soft);border:1px solid var(--hm-c-line);border-radius:18px;padding:16px 18px}
.hm-article__author-logo{width:52px;height:52px;border-radius:50%;background:#fff;border:1px solid var(--hm-c-line);display:grid;place-items:center;color:var(--hm-olive);flex:none}
.hm-article__author-logo svg{width:26px;height:26px}
.hm-article__author strong{display:block;color:var(--hm-ink);font-size:16px}
.hm-article__author p{margin:2px 0 0;font-size:14px;color:var(--hm-text)}
.hm-article__author a{color:var(--hm-olive-dark);font-weight:700}
.hm-article__disclaimer{font-size:13px;color:var(--hm-c-muted);margin:16px 0 0}
/* prev / next */
.hm-pn{display:grid;grid-template-columns:1fr;gap:12px;margin:28px 0 8px;list-style:none;padding:0}
.hm-pn a{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--hm-c-line);border-radius:16px;padding:14px 16px;min-height:76px;color:var(--hm-text);transition:transform .2s ease,box-shadow .2s ease,border-color .15s}
.hm-pn a:hover{transform:translateY(-2px);box-shadow:var(--hm-shadow-hover);border-color:#DCE9C8;color:var(--hm-text)}
.hm-pn a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-pn__label{font-size:12px;color:var(--hm-c-muted);font-weight:700;display:inline-flex;align-items:center;gap:4px}
.hm-pn__label svg{width:14px;height:14px}
.hm-pn__title{font-weight:700;color:var(--hm-ink);font-size:15px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hm-pn--next a{text-align:left;align-items:flex-end}
@media (min-width:600px){.hm-pn{grid-template-columns:1fr 1fr}}
/* related */
.hm-related--posts{margin-top:44px}
.hm-related--posts .hm-section__head{margin-bottom:16px}
.hm-related--posts .hm-section__head h2{font-size:clamp(20px,2.2vw,26px)}
.hm-article-wrap{max-width:var(--hm-c-measure);margin-inline:auto}
/* floating back-to-product button (product-spec.php) must stay visible above content */
.hm-backbtn{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));right:18px;left:auto;z-index:90;min-height:48px;padding:0 18px;display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#fff;font-size:15px;line-height:1;transition:transform .15s ease,background .15s ease}
.hm-backbtn{background:var(--hm-olive-dark)}
.hm-backbtn:hover{background:#3F6A1C;color:#fff;transform:translateY(-1px)}
.hm-backbtn:focus-visible{outline:none;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
.single-post .hm-article__foot,.single-post .hm-related{padding-bottom:0}
body.single-post.has-backbtn .hm-footer{padding-bottom:64px}
@media (max-width:640px){.hm-backbtn{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));font-size:14px}}

/* ---------- BLOG INDEX / ARCHIVES ---------- */
.hm-blog .hm-phero{border-bottom:0;margin-bottom:12px;padding-bottom:6px}
.hm-blog__tools{display:flex;flex-direction:column;gap:12px;margin:0 0 22px}
.hm-blog__search{position:relative}
.hm-blog__search label{display:block;font-size:14px;font-weight:700;color:var(--hm-ink);margin-bottom:6px}
.hm-blog__search .hm-search{width:100%;max-width:520px;height:48px;border-color:#DCD4C4;min-width:0}
.hm-blog__search .hm-search input{min-width:0;font-size:16px;height:44px}
.hm-blog__search .hm-search:focus-within{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-blog__search .hm-search button{width:44px;height:44px;border-radius:50%;color:var(--hm-olive-dark)}
.hm-blog__search .hm-search button:hover{background:var(--hm-olive-soft)}
.hm-blog__search .hm-search button:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-blog__search .hm-search input:focus-visible{outline:none}
.hm-blog__chips{margin:0;padding:0;list-style:none;display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;-webkit-overflow-scrolling:touch}
.hm-blog__chips::-webkit-scrollbar{display:none}
.hm-blog__chips li{flex:none}
.hm-blog__chips a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid #DCD4C4;color:var(--hm-ink);font-size:14px;font-weight:600;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.hm-blog__chips a small{font-size:12px;color:var(--hm-c-muted);font-weight:600}
.hm-blog__chips a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
.hm-blog__chips a[aria-current]{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff}
.hm-blog__chips a[aria-current] small{color:rgba(255,255,255,.85)}
.hm-blog__chips a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-blog__count{font-size:14px;color:var(--hm-c-muted);margin:0 0 14px}
@media (min-width:821px){.hm-blog__tools{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:20px}.hm-blog__search{flex:0 1 420px}.hm-blog__chips{flex-wrap:wrap;overflow:visible}}
/* post cards */
.hm-posts{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:600px){.hm-posts{grid-template-columns:repeat(2,1fr);gap:18px}}
@media (min-width:1000px){.hm-posts{grid-template-columns:repeat(3,1fr);gap:22px}}
.hm-post{position:relative;background:#fff;border:1px solid var(--hm-c-line);border-radius:20px;overflow:hidden;box-shadow:var(--hm-shadow);display:flex;flex-direction:column;color:var(--hm-text);transition:transform .2s ease,box-shadow .2s ease}
.hm-post:hover{transform:translateY(-3px);box-shadow:var(--hm-shadow-hover);color:var(--hm-text)}
.hm-post:focus-within{box-shadow:var(--hm-c-focus)}
.hm-post__img{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,var(--hm-olive-soft),#F3EDE1);color:var(--hm-olive);position:relative;overflow:hidden}
.hm-post__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.hm-post:hover .hm-post__img img{transform:scale(1.03)}
.hm-post__img svg{position:absolute;inset:0;margin:auto;width:56px;height:56px;opacity:.9}
.hm-post--noimg .hm-post__img{aspect-ratio:auto;height:112px;background:linear-gradient(120deg,var(--hm-olive-soft) 0%,#F3EDE1 100%)}
.hm-post--noimg .hm-post__img svg{width:44px;height:44px;opacity:.85}
.hm-post--noimg .hm-post__img::after{content:"";position:absolute;inset:auto -20px -40px auto;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.55)}
.hm-post__cat{position:absolute;top:12px;right:12px;background:#fff;color:var(--hm-olive-dark);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700;line-height:1.2;box-shadow:0 2px 8px rgba(60,50,20,.08)}
.hm-post__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.hm-post__body h2,.hm-post__body h3{font-size:17px;line-height:1.35;margin:0}
.hm-post__body h2 a,.hm-post__body h3 a{color:var(--hm-ink);text-decoration:none}
.hm-post__body h2 a::after,.hm-post__body h3 a::after{content:"";position:absolute;inset:0;border-radius:20px}
.hm-post__body h2 a:focus-visible,.hm-post__body h3 a:focus-visible{outline:none}
.hm-post__body p{font-size:14px;line-height:1.6;color:var(--hm-c-muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hm-post__meta{margin-top:auto;padding-top:10px;font-size:13px;color:var(--hm-c-muted);display:flex;gap:6px 14px;flex-wrap:wrap}
.hm-post__meta span{display:inline-flex;align-items:center;gap:5px}
.hm-post__meta svg{width:14px;height:14px;color:var(--hm-olive)}
.hm-post__more{margin-top:8px;font-size:14px;font-weight:700;color:var(--hm-olive-dark);display:inline-flex;align-items:center;gap:4px}
.hm-post__more svg{width:14px;height:14px;transition:transform .2s ease}
.hm-post:hover .hm-post__more svg{transform:translateX(-3px)}
/* pagination (posts) */
.hm-pagination{margin:32px 0 8px}
.hm-pagination .nav-links{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}
.hm-pagination .page-numbers{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 10px;border-radius:999px;background:#fff;border:1px solid #DCD4C4;color:var(--hm-ink);font-weight:700;font-size:15px;transition:background .15s,border-color .15s,color .15s}
.hm-pagination a.page-numbers:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
.hm-pagination .page-numbers.current{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff}
.hm-pagination .page-numbers.dots{border-color:transparent;background:transparent;color:var(--hm-c-muted)}
.hm-pagination a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-pagination .prev,.hm-pagination .next{padding:0 16px}
.hm-pagination .screen-reader-text{position:absolute!important}
/* empty state (blog / search) */
.hm-cempty{text-align:center;background:#fff;border:1px solid var(--hm-c-line);border-radius:24px;padding:44px 20px;max-width:640px;margin:20px auto 40px}
.hm-cempty__icon{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);margin-bottom:14px}
.hm-cempty__icon svg{width:36px;height:36px}
.hm-cempty h2{font-size:clamp(22px,2.6vw,28px);margin:0 0 8px}
.hm-cempty p{margin:0 auto 18px;max-width:40ch;color:var(--hm-text)}
.hm-cempty__row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hm-cempty__row .hm-btn{min-width:180px}
.hm-cempty__links{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.hm-cempty__links a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--hm-c-line);background:#fff;color:var(--hm-text);font-size:14px;font-weight:600}
.hm-cempty__links a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
.hm-cempty__links a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}

/* ---------- SEARCH (mixed) ---------- */
.hm-search-page .hm-phero{border-bottom:0;margin-bottom:10px}
.hm-search-page .hm-phero h1 bdi{unicode-bidi:isolate}
.hm-search-page__form{margin:0 0 26px}
.hm-search-page__form .hm-search{width:100%;max-width:560px;height:50px;border-color:#DCD4C4;min-width:0}
.hm-search-page__form .hm-search input{min-width:0;font-size:16px;height:44px}
.hm-search-page__form .hm-search:focus-within{border-color:var(--hm-olive);box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-search-page__form .hm-search button{width:44px;height:44px;border-radius:50%;color:var(--hm-olive-dark)}
.hm-search-page__form .hm-search button:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-search-page__form .hm-search input:focus-visible{outline:none}
.hm-sres{margin-bottom:38px}
.hm-sres .hm-section__head{margin-bottom:14px;align-items:baseline}
.hm-sres .hm-section__head h2{font-size:clamp(20px,2.2vw,26px);margin:0}
.hm-sres .hm-section__head h2 small{font-size:14px;color:var(--hm-c-muted);font-weight:600;margin-inline-start:6px}
.hm-sres__nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px;padding:0;list-style:none}
.hm-sres__nav a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid #DCD4C4;color:var(--hm-ink);font-size:14px;font-weight:600}
.hm-sres__nav a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark)}
.hm-sres__nav a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-sres__nav a[aria-current]{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff}
.hm-sres--products .hm-products{gap:14px}
.hm-sres--products .hm-card:focus-within{box-shadow:var(--hm-c-focus)}
.hm-sres--products .hm-card a:focus-visible,.hm-sres--products .hm-card button:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-sres--products .hm-card .hm-btn--buy:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
.hm-sres__more{margin-top:14px}
.hm-sres__miss{background:var(--hm-c-soft);border:1px dashed #D5CCBA;border-radius:16px;padding:16px 18px;font-size:15px;color:var(--hm-text)}
.hm-sres__miss a{color:var(--hm-olive-dark);font-weight:700}


/* ---------- global a11y fallbacks (main.css has no focus ring; low specificity so other parts win) ---------- */
:where(a,button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
:where(.hm-btn):focus-visible{outline:none;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-olive)}
:where(h2,h3,[id]){scroll-margin-top:96px}
.hm-page--content .hm-link,.hm-related--posts .hm-link{font-weight:700;color:var(--hm-olive-dark);display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
.hm-page--content .hm-link:hover,.hm-related--posts .hm-link:hover{text-decoration:underline}
.hm-btn.is-loading{position:relative;pointer-events:none;opacity:.85}
.hm-btn.is-loading::after{content:"";width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-inline-end-color:transparent;animation:hm-c-spin .7s linear infinite;flex:none}
@keyframes hm-c-spin{to{transform:rotate(360deg)}}

/* ---------- FAQ groups / topics ---------- */
.hm-faq-topics{margin:0 0 20px}
.hm-faq-topics ul{list-style:none;padding:0 0 4px;margin:0;display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.hm-faq-topics ul::-webkit-scrollbar{display:none}
.hm-faq-topics li{flex:none}
.hm-faq-topics a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid #DCD4C4;color:var(--hm-ink);font-size:14px;font-weight:600;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.hm-faq-topics a small{font-size:12px;color:var(--hm-c-muted)}
.hm-faq-topics a:hover{border-color:var(--hm-olive);color:var(--hm-olive-dark);background:var(--hm-olive-soft)}
.hm-faq-topics a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
@media (min-width:821px){.hm-faq-topics ul{flex-wrap:wrap;overflow:visible}}
.hm-faq-group{margin:0 0 26px;scroll-margin-top:96px}
.hm-faq-group.is-hidden{display:none}
.hm-faq-group__title{font-size:clamp(19px,2vw,22px);margin:0 0 10px;padding:0 2px;color:var(--hm-ink);display:flex;align-items:center;gap:10px}
.hm-faq-group__title::before{content:"";width:6px;height:22px;border-radius:4px;background:var(--hm-olive);flex:none}
.hm-faq-list summary h3{font:inherit;margin:0;color:inherit}
.hm-faq-search__clear svg{width:18px;height:18px}
.hm-faq-list details:target summary{color:var(--hm-olive-dark)}
.hm-faq-list details:target{box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-faq-list summary:focus-visible{outline:none}
.hm-faq-search input:focus-visible{outline:none}
.hm-faq-search input:focus{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-olive)}
.hm-faq-search input:focus:not(:focus-visible){box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-faq-list summary:focus-visible{box-shadow:var(--hm-c-focus)}

/* ---------- Share row (articles) ---------- */
.hm-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 20px}
.hm-share__label{font-size:14px;font-weight:700;color:var(--hm-ink)}
.hm-share__list{list-style:none;padding:0;margin:0;display:flex;gap:8px}
.hm-share__list a,.hm-share__list button{width:44px;height:44px;border-radius:50%;border:1px solid #DCD4C4;background:#fff;color:var(--hm-olive-dark);display:grid;place-items:center;cursor:pointer;font:inherit;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s}
.hm-share__list svg{width:20px;height:20px}
.hm-share__list a:hover,.hm-share__list button:hover{background:var(--hm-olive-soft);border-color:var(--hm-olive);color:var(--hm-olive-dark);transform:translateY(-1px)}
.hm-share__list a:focus-visible,.hm-share__list button:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-share__list button.is-done{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff}
.hm-share__msg{font-size:13px;color:var(--hm-olive-dark);font-weight:700;min-height:18px}
.hm-article__cat{text-decoration:none;display:inline-flex;align-items:center;min-height:44px;margin-bottom:0}
.hm-article__cat:hover{text-decoration:underline}
.hm-article .hm-phero__meta a{display:inline-flex;align-items:center;gap:4px;min-height:32px}
.hm-article .hm-phero__meta a svg{width:14px;height:14px}
.hm-article .hm-prose h2{font-size:clamp(22px,2.4vw,28px)}
.hm-article .hm-prose h3{font-size:clamp(18px,1.9vw,21px)}
.hm-article .hm-prose>p:first-of-type{font-size:18px}
.hm-article-cta{margin:36px auto 10px}
.hm-article-cta__box{background:var(--hm-olive-soft);border-radius:24px;padding:26px 22px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;max-width:var(--hm-c-measure);margin-inline:auto}
.hm-article-cta__box h2{font-size:clamp(20px,2.2vw,26px);margin:0 0 6px}
.hm-article-cta__box p{margin:0;font-size:16px;color:var(--hm-text);max-width:52ch}
.hm-article-cta__row{display:flex;gap:10px;flex-wrap:wrap}
.hm-article-cta__row .hm-btn--ghost{background:#fff}
.hm-related--posts{max-width:var(--hm-max);margin-top:44px}
.hm-related--posts .hm-section__head{max-width:none}
@media (min-width:821px){.hm-article-cta__box{flex-direction:row;align-items:center;justify-content:space-between;padding:30px 34px;max-width:var(--hm-max)}}
.hm-article .hm-toc{background:#fff}

/* ---------- Contact extras ---------- */
.hm-contact__biz{font-size:13px;color:var(--hm-c-muted);margin:12px 4px 0}
.hm-cform__field{min-width:0}
.hm-cform__err{display:block;font-size:13px;color:#B42318;margin:6px 0 0;font-weight:600}
.hm-cform__field.has-error input,.hm-cform__field.has-error textarea{border-color:#B42318;box-shadow:0 0 0 3px #FBE9E7}
.hm-cform input::placeholder,.hm-cform textarea::placeholder{color:#6B6B66}
.hm-cform__status{font-size:14px;color:var(--hm-olive-dark);font-weight:700;margin:6px 0 0;min-height:20px}
.hm-cform__hint a{color:var(--hm-olive-dark);font-weight:700}
.hm-contact__closing{margin:18px 0 0;font-size:17px;font-weight:700;color:var(--hm-ink)}
.hm-btn--wa:focus-visible{outline:none;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-ink)}
.hm-btn--wa svg{width:20px;height:20px}
.hm-cform .hm-btn svg{width:18px;height:18px}
.hm-cform__actions .hm-btn--ghost{background:#fff}

/* ---------- Stories extras ---------- */
.hm-story-card__quote svg{width:20px;height:20px}
.hm-stories-next{margin-top:26px;text-align:center}
.hm-stories-next h2{font-size:clamp(20px,2.2vw,24px);margin:0 0 12px}
.hm-page--stories .hm-about-cta__row .hm-btn{min-width:220px}

/* ---------- Build a box extras ---------- */
.hm-bab-foot{margin:22px 0 0;font-size:15px;color:var(--hm-text)}
.hm-bab-foot a{color:var(--hm-olive-dark);font-weight:700}
.hm-bab-cta .hm-btn--ghost{background:#fff}

/* ---------- Blog / search extras ---------- */
.hm-blog__search .hm-search,.hm-search-page__form .hm-search{display:flex}
.hm-blog__search .hm-search input,.hm-search-page__form .hm-search input{background:transparent}
.hm-page--content .hm-search input::placeholder{color:#6B6B66}
.hm-blog__search .hm-search:focus-within,.hm-search-page__form .hm-search:focus-within{box-shadow:0 0 0 3px var(--hm-olive-soft)}
.hm-blog__search .hm-search input:focus-visible,.hm-search-page__form .hm-search input:focus-visible{outline:none;box-shadow:none}
.hm-blog__search .hm-search:has(input:focus-visible),.hm-search-page__form .hm-search:has(input:focus-visible){box-shadow:0 0 0 3px #fff,0 0 0 6px var(--hm-olive);border-color:var(--hm-olive)}
.hm-blog .hm-section__head,.hm-search-page .hm-section__head{max-width:none}
.hm-post__body h2{font-size:17px}
.hm-pagination .page-numbers svg{width:16px;height:16px}
.hm-pagination .prev,.hm-pagination .next{gap:4px;display:inline-flex;align-items:center}
.hm-pagination .prev svg,.hm-pagination .next svg{margin:0}
.hm-pagination h2.screen-reader-text{position:absolute!important}
.hm-sres__pages{list-style:none;padding:0;margin:0;display:grid;gap:10px;grid-template-columns:1fr}
.hm-sres__pages a{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--hm-c-line);border-radius:16px;padding:14px 16px;min-height:64px;color:var(--hm-text);transition:transform .2s ease,box-shadow .2s ease,border-color .15s}
.hm-sres__pages a:hover{transform:translateY(-2px);box-shadow:var(--hm-shadow-hover);border-color:#DCE9C8;color:var(--hm-text)}
.hm-sres__pages a:focus-visible{outline:none;box-shadow:var(--hm-c-focus)}
.hm-sres__pages a>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.hm-sres__pages strong{color:var(--hm-ink);font-size:16px}
.hm-sres__pages small{font-size:13px;color:var(--hm-c-muted);line-height:1.5}
.hm-sres__pages-icon{width:40px;height:40px;border-radius:12px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);display:grid;place-items:center;flex:none}
.hm-sres__pages-icon svg{width:20px;height:20px}
.hm-sres__pages a>svg{width:18px;height:18px;color:#C9C2B4;flex:none}
@media (min-width:700px){.hm-sres__pages{grid-template-columns:1fr 1fr}}
.hm-search-page .hm-cempty{margin-top:10px}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .hm-post,.hm-post__img img,.hm-story-card,.hm-ccard,.hm-pn a,.hm-backbtn,.hm-faq-list summary::after,.hm-toc summary::after,.hm-ccard__arrow,.hm-post__more svg{transition:none!important}
  .hm-post:hover,.hm-story-card:hover,a.hm-ccard:hover,.hm-pn a:hover,.hm-backbtn:hover{transform:none!important}
  .hm-post:hover .hm-post__img img{transform:none!important}
  .hm-share__list a,.hm-share__list button,.hm-sres__pages a,.hm-faq-topics a,.hm-blog__chips a{transition:none!important;transform:none!important}
  html:focus-within{scroll-behavior:auto}
}
/* print: legal pages readable */
@media print{.hm-toc,.hm-legal-foot,.hm-backbtn{display:none}}

/* Podcast appearances (about page) */
.hm-pod-wrap{margin:40px 0 8px}
.hm-pod-wrap h2{font-size:1.5rem;font-weight:700;margin:0 0 6px}
.hm-pod-wrap>p{margin:0 0 18px;color:#6B6257}
.hm-pod{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.hm-pod__link{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:18px;padding:20px;box-shadow:0 6px 24px rgba(60,40,20,.06);color:inherit;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease;height:100%}
.hm-pod__link:hover,.hm-pod__link:focus-visible{transform:translateY(-3px);box-shadow:0 12px 30px rgba(60,40,20,.10)}
.hm-pod__badge{flex:none;width:48px;height:48px;border-radius:50%;background:#FDE9DB;color:#C4581A;display:grid;place-items:center}
.hm-pod__body{display:flex;flex-direction:column;gap:4px}
.hm-pod__show{font-weight:700;font-size:1.05rem}
.hm-pod__show small{font-weight:400;color:#6B6257;font-size:.88rem}
.hm-pod__ep{color:#2B2520;line-height:1.5}
.hm-pod__meta{font-size:.85rem;color:#4A7423;font-weight:600}
.hm-pod__card{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:18px;padding:20px;box-shadow:0 6px 24px rgba(60,40,20,.06)}
.hm-pod__links{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.hm-pod__btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px;border-radius:999px;border:1px solid #E3DCCF;background:#fff;color:#2B2520;text-decoration:none;font-weight:600;font-size:.9rem;transition:border-color .2s,transform .2s}
.hm-pod__btn:hover,.hm-pod__btn:focus-visible{border-color:#C4581A;transform:translateY(-1px)}
.hm-pod__btn--yt{border-color:#E8B7A2}

/* "הסיפור שלנו": one long personal story on a flat cream page was tiring to read (David 2026-08-22).
   The story now sits on its own white reading surface, with the line length pulled back into the
   comfortable range and a calmer paragraph rhythm, so the eye has an edge to hold on to. */
.hm-about .hm-prose{
  background:#fff;
  border:1px solid #EFE7DA;
  border-radius:24px;
  padding:clamp(24px,3vw,44px) clamp(18px,3.2vw,44px);
  box-shadow:0 12px 34px rgba(74,116,35,.06);
}
.hm-about .hm-prose>*{max-width:62ch;margin-inline:auto}
.hm-about .hm-prose p{font-size:18px;line-height:1.95;margin:0 0 1em;color:#3F3F3A}
.hm-about .hm-prose p:first-of-type{font-size:20px;line-height:1.75;color:var(--hm-olive-dark);font-weight:600}
.hm-about .hm-prose h2{margin:1.5em auto .5em;padding-top:1.1em;border-top:1px solid #F1EADF}
.hm-about .hm-prose h2:first-of-type{border-top:0;padding-top:0}
.hm-about .hm-prose blockquote{background:var(--hm-cream,#F6F1E8)}
.hm-about .hm-prose img{border-radius:16px}
@media (max-width:720px){.hm-about .hm-prose{border-radius:18px}.hm-about .hm-prose p{font-size:17.5px;line-height:1.9}}

/* =====================================================================
   Box builder (spec ch. 9) - BUILDER stream. Mobile-first, RTL.
   ===================================================================== */
.hm-page--builder{--hm-b-line:#EFE7DA;--hm-b-soft:#F7F3EA;--hm-b-focus:0 0 0 3px #fff,0 0 0 6px var(--hm-olive);--hm-b-err:#B3261E;--hm-b-err-soft:#FDECEA;padding-bottom:40px}
.hm-page--builder .hm-builder__hero{margin-bottom:22px}
.hm-page--builder .hm-phero__lead{max-width:70ch}

/* line tabs */
.hm-builder__lines{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px}
.hm-builder__line{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:64px;padding:10px 16px;background:#fff;border:2px solid var(--hm-b-line);border-radius:16px;font:inherit;color:var(--hm-text);text-align:right;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
.hm-builder__line:hover{border-color:var(--hm-olive);transform:translateY(-1px)}
.hm-builder__line:focus-visible{outline:none;box-shadow:var(--hm-b-focus)}
.hm-builder__line[aria-selected="true"]{border-color:var(--hm-olive-dark);background:var(--hm-olive-soft);color:var(--hm-ink)}
.hm-builder__line-name{font-weight:700;font-size:15px;line-height:1.3}
.hm-builder__line-sub{font-size:13px;color:var(--hm-muted)}
.hm-builder__line[aria-selected="true"] .hm-builder__line-sub{color:var(--hm-olive-dark)}

/* "coming soon" line */
.hm-builder__soon{background:#fff;border:1px solid var(--hm-b-line);border-radius:20px;padding:32px 20px;text-align:center;box-shadow:var(--hm-shadow);max-width:640px;margin:0 auto}
.hm-builder__soon-icon{display:inline-flex;width:64px;height:64px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);align-items:center;justify-content:center;margin-bottom:12px}
.hm-builder__soon-icon svg{width:30px;height:30px}
.hm-builder__soon h2{font-size:clamp(22px,2.6vw,28px);margin:0 0 8px}
.hm-builder__soon p{margin:0 auto 18px;max-width:52ch;color:var(--hm-text)}
.hm-builder__soon-cta{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}

/* grid */
.hm-builder__grid{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}
.hm-builder__legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;color:var(--hm-muted);margin:0 0 12px}
.hm-builder__legend-note{flex-basis:100%}
.hm-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.5;white-space:nowrap}
.hm-tag svg{width:12px;height:12px}
.hm-tag--complete{background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.hm-tag--supp{background:#FFF1E4;color:#A94A15}

/* recipe cards */
.hm-recipes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:12px}
.hm-recipe{display:grid;grid-template-columns:84px 1fr;grid-template-areas:"media body" "media ctl";gap:4px 14px;background:#fff;border:2px solid var(--hm-b-line);border-radius:18px;padding:12px;box-shadow:var(--hm-shadow);transition:border-color .2s,box-shadow .2s;position:relative}
.hm-recipe.is-picked{border-color:var(--hm-olive)}
.hm-recipe.is-oos{opacity:.7}
.hm-recipe__media{grid-area:media;position:relative;width:84px;height:84px;border-radius:14px;overflow:hidden;background:var(--hm-b-soft)}
.hm-recipe__media img{width:100%;height:100%;object-fit:cover;display:block}
.hm-recipe__ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--hm-olive)}
.hm-recipe__ph svg{width:32px;height:32px}
.hm-recipe__count{position:absolute;top:6px;inset-inline-start:6px;min-width:26px;height:26px;padding:0 7px;border-radius:999px;background:var(--hm-olive-dark);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.18)}
.hm-recipe__count[hidden]{display:none}
.hm-recipe__body{grid-area:body;min-width:0}
.hm-recipe__name{font-size:16px;line-height:1.3;margin:0 0 4px;font-weight:800}
.hm-recipe__name a{color:var(--hm-ink)}
.hm-recipe__name a:hover{color:var(--hm-olive-dark);text-decoration:underline}
.hm-recipe__name a:focus-visible{outline:none;box-shadow:var(--hm-b-focus);border-radius:6px}
.hm-recipe__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 4px;font-size:13px;color:var(--hm-muted)}
.hm-recipe__protein{font-weight:600;color:var(--hm-text)}
.hm-recipe__price{margin:0;font-size:15px;color:var(--hm-ink)}
.hm-recipe__price bdi{font-weight:800;color:var(--hm-olive-dark);font-size:17px}
.hm-recipe__price span{font-size:13px;color:var(--hm-muted)}
.hm-recipe__ctl{grid-area:ctl;display:inline-flex;align-items:center;gap:6px;justify-self:start;margin-top:4px}
.hm-recipe__btn{width:44px;height:44px;border-radius:50%;border:2px solid var(--hm-olive);background:#fff;color:var(--hm-olive-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .15s,transform .15s,opacity .15s}
.hm-recipe__btn svg{width:18px;height:18px}
.hm-recipe__btn:hover{background:var(--hm-olive-soft)}
.hm-recipe__btn:active{transform:scale(.94)}
.hm-recipe__btn:focus-visible{outline:none;box-shadow:var(--hm-b-focus)}
.hm-recipe__btn[disabled]{opacity:.35;cursor:not-allowed;transform:none;background:#fff}
.hm-recipe__btn--plus{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff}
.hm-recipe__btn--plus:hover{background:var(--hm-olive)}
.hm-recipe__btn--plus[disabled]{background:var(--hm-olive-dark)}
.hm-recipe__qty{width:52px;height:44px;border:1px solid var(--hm-b-line);border-radius:12px;text-align:center;font:inherit;font-weight:800;font-size:18px;color:var(--hm-ink);background:#fff;-moz-appearance:textfield;appearance:textfield;direction:ltr}
.hm-recipe__qty::-webkit-outer-spin-button,.hm-recipe__qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.hm-recipe__qty:focus-visible{outline:none;box-shadow:var(--hm-b-focus);border-color:var(--hm-olive)}
.hm-recipe__oos{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:999px;background:var(--hm-b-soft);color:var(--hm-muted);font-size:13px;font-weight:700}
.hm-recipe.is-bump .hm-recipe__count{animation:hm-b-bump .25s ease}
@keyframes hm-b-bump{0%{transform:scale(1)}50%{transform:scale(1.25)}100%{transform:scale(1)}}

/* summary */
.hm-summary{background:#fff;border:1px solid var(--hm-b-line);border-radius:20px;padding:20px;box-shadow:var(--hm-shadow)}
.hm-summary__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.hm-summary__title{font-size:20px;margin:0}
.hm-summary__size{font-size:13px;color:var(--hm-muted);white-space:nowrap}
.hm-summary__count{margin:0 0 8px;font-size:15px;color:var(--hm-text)}
.hm-summary__count strong{font-size:22px;color:var(--hm-ink);font-weight:800}
.hm-summary__track{position:relative;height:12px;border-radius:999px;background:var(--hm-b-soft);overflow:hidden;border:1px solid var(--hm-b-line)}
.hm-summary__fill{position:absolute;inset:0;background:var(--hm-olive);transform-origin:right center;transition:transform .25s ease,background .25s ease}
.hm-summary.is-full .hm-summary__fill{background:var(--hm-olive-dark)}
.hm-summary.is-over .hm-summary__fill{background:var(--hm-b-err)}
.hm-summary__ticks{position:absolute;inset:0;display:flex;justify-content:space-evenly;pointer-events:none}
.hm-summary__ticks i{width:1px;background:rgba(255,255,255,.7)}
.hm-summary__hint{margin:8px 0 0;font-size:13px;color:var(--hm-muted);min-height:38px}
.hm-summary.is-full .hm-summary__hint{color:var(--hm-olive-dark);font-weight:700}
.hm-summary.is-over .hm-summary__hint{color:var(--hm-b-err);font-weight:700}
.hm-summary__list{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px dashed var(--hm-b-line);display:grid;gap:6px}
.hm-summary__list:empty{display:none}
.hm-summary__list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:14px;color:var(--hm-text)}
.hm-summary__list li .n{min-width:24px;height:24px;border-radius:999px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);font-weight:800;font-size:13px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.hm-summary__list li .p{color:var(--hm-ink);font-weight:700;white-space:nowrap}
.hm-summary__list li .t{display:inline-block;margin-inline-start:6px;font-size:11px;color:var(--hm-muted);font-weight:600}
.hm-summary__empty{margin:14px 0 0;padding:12px 0 0;border-top:1px dashed var(--hm-b-line);font-size:14px;color:var(--hm-muted)}
.hm-summary__totals{margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--hm-b-line);display:grid;gap:6px}
.hm-summary__totals div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.hm-summary__totals dt{font-size:14px;color:var(--hm-muted);margin:0}
.hm-summary__totals dd{margin:0;font-size:15px;color:var(--hm-ink);font-weight:700}
.hm-summary__total{margin-top:4px;padding-top:8px;border-top:1px solid var(--hm-b-line)}
.hm-summary__total dt{font-size:16px;color:var(--hm-ink);font-weight:800}
.hm-summary__total dd{font-size:26px;font-weight:800;color:var(--hm-olive-dark)}
.hm-summary__msg{margin:12px 0 0;padding:10px 12px;border-radius:12px;font-size:14px;font-weight:600;background:var(--hm-b-err-soft);color:var(--hm-b-err)}
.hm-summary__msg.is-ok{background:var(--hm-olive-soft);color:var(--hm-olive-dark)}
.hm-summary__msg[hidden]{display:none}
.hm-summary__add{width:100%;margin-top:16px}
.hm-summary__add[disabled]{opacity:.5}
.hm-summary__add.is-loading .hm-btn__label{visibility:hidden}
.hm-summary__add.is-loading::after{content:"";position:absolute;width:20px;height:20px;border:3px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:hm-b-spin .7s linear infinite}
.hm-summary__add{position:relative}
@keyframes hm-b-spin{to{transform:rotate(360deg)}}
.hm-summary__help{margin:8px 0 0;font-size:13px;color:var(--hm-muted);text-align:center}
.hm-summary__save{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:14px;padding-top:14px;border-top:1px dashed var(--hm-b-line)}
.hm-summary__name{min-height:44px;border:1px solid var(--hm-b-line);border-radius:12px;padding:0 12px;font:inherit;font-size:14px;color:var(--hm-ink);background:#fff;min-width:0}
.hm-summary__name:focus-visible{outline:none;box-shadow:var(--hm-b-focus);border-color:var(--hm-olive)}
.hm-summary__save .hm-btn{min-height:44px;padding:0 14px;font-size:14px}
.hm-summary__saved{margin-top:14px;padding-top:12px;border-top:1px dashed var(--hm-b-line)}
.hm-summary__saved-title{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--hm-text)}
.hm-summary__chips{display:flex;flex-wrap:wrap;gap:6px}
.hm-chip{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--hm-olive);background:#fff;color:var(--hm-olive-dark);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s}
.hm-chip:hover{background:var(--hm-olive-soft)}
.hm-chip:focus-visible{outline:none;box-shadow:var(--hm-b-focus)}
.hm-chip.is-active{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff}
.hm-summary__saved-link{display:inline-block;margin-top:8px;font-size:13px;font-weight:700}
.hm-summary__auth{margin-top:14px;padding:14px;border-radius:14px;background:var(--hm-b-soft);border:1px solid var(--hm-b-line)}
.hm-summary__auth[hidden]{display:none}
.hm-summary__auth p{margin:0 0 12px;font-size:14px;color:var(--hm-text);display:flex;gap:8px;align-items:flex-start}
.hm-summary__auth p svg{width:18px;height:18px;flex:none;color:var(--hm-olive-dark);margin-top:3px}
.hm-summary__auth-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.hm-summary__auth-btns .hm-btn{min-height:44px;padding:0 12px;font-size:14px}
.hm-summary__ship{margin:12px 0 0;font-size:12px;color:var(--hm-muted);text-align:center}
.hm-page--builder .hm-btn:focus-visible{outline:none;box-shadow:var(--hm-b-focus)}
.hm-builder__foot{margin:28px 0 0;font-size:15px;color:var(--hm-text)}
.hm-builder__foot a{font-weight:700}

/* mobile sticky bar */
.hm-builder__bar{position:fixed;inset-inline:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--hm-b-line);box-shadow:0 -6px 24px rgba(60,50,20,.08);padding:8px var(--hm-gutter) calc(10px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .25s ease}
.hm-builder__bar.is-on{transform:translateY(0)}
.hm-builder__bar-track{height:6px;border-radius:999px;background:var(--hm-b-soft);overflow:hidden;margin-bottom:8px}
.hm-builder__bar-fill{height:100%;background:var(--hm-olive);transform-origin:right center;transition:transform .25s ease}
.hm-builder__bar.is-full .hm-builder__bar-fill{background:var(--hm-olive-dark)}
.hm-builder__bar.is-over .hm-builder__bar-fill{background:var(--hm-b-err)}
.hm-builder__bar-row{display:flex;align-items:center;gap:12px}
.hm-builder__bar-count{font-size:14px;color:var(--hm-text)}
.hm-builder__bar-count strong{font-size:18px;color:var(--hm-ink)}
.hm-builder__bar-total{margin-inline-start:auto;font-weight:800;font-size:18px;color:var(--hm-olive-dark)}
.hm-builder__bar-btn{min-height:44px;padding:0 18px;font-size:15px}
.hm-page--builder.has-bar{padding-bottom:110px}

/* saved boxes (account) */
.hm-boxes-page h2{font-size:clamp(22px,2.4vw,28px);margin:0 0 6px}
.hm-boxes-page__intro{color:var(--hm-text);margin:0 0 18px;font-size:15px}
.hm-boxes-list{display:grid;gap:14px}
.hm-boxes-empty{background:#fff;border:1px solid var(--hm-b-line);border-radius:18px;padding:32px 20px;text-align:center;box-shadow:var(--hm-shadow)}
.hm-boxes-empty__icon{display:inline-flex;width:56px;height:56px;border-radius:50%;background:var(--hm-olive-soft);color:var(--hm-olive-dark);align-items:center;justify-content:center;margin-bottom:10px}
.hm-boxes-empty__icon svg{width:26px;height:26px}
.hm-boxes-empty h3{margin:0 0 6px;font-size:20px}
.hm-boxes-empty p{margin:0 auto 16px;max-width:46ch;color:var(--hm-text)}
.hm-saved-box{background:#fff;border:1px solid var(--hm-b-line);border-radius:18px;padding:16px;box-shadow:var(--hm-shadow);transition:opacity .2s}
.hm-saved-box.is-unavailable{background:var(--hm-b-soft)}
.hm-saved-box.is-removing{opacity:.4;pointer-events:none}
.hm-saved-box__head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:10px}
.hm-saved-box__icon{width:44px;height:44px;border-radius:12px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);display:inline-flex;align-items:center;justify-content:center}
.hm-saved-box__icon svg{width:22px;height:22px}
.hm-saved-box__name{margin:0;font-size:18px;line-height:1.3;overflow-wrap:anywhere}
.hm-saved-box__sub{margin:0;font-size:13px;color:var(--hm-muted)}
.hm-saved-box__price{font-size:20px;font-weight:800;color:var(--hm-olive-dark);white-space:nowrap}
.hm-saved-box__items{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px;font-size:14px;color:var(--hm-text)}
.hm-saved-box__items li{display:flex;align-items:center;gap:8px}
.hm-saved-box__items em{color:var(--hm-b-err);font-style:normal;font-weight:700}
.hm-saved-box__qty{min-width:24px;height:24px;border-radius:999px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);font-weight:800;font-size:13px;display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0 6px}
.hm-saved-box__warn{margin:0 0 12px;padding:8px 12px;border-radius:10px;background:#FFF6EE;border:1px solid #F1D3B8;color:#8A3E0F;font-size:13px}
.hm-saved-box__actions{display:flex;flex-wrap:wrap;gap:8px}
.hm-saved-box__actions .hm-btn{min-height:44px;padding:0 16px;font-size:14px}
.hm-saved-box__actions .hm-btn.is-loading{opacity:.6;pointer-events:none}
.hm-boxes-page__more{margin:16px 0 0}
.hm-box-msg{margin:12px 0 0;padding:10px 12px;border-radius:12px;background:var(--hm-olive-soft);color:var(--hm-olive-dark);font-size:14px;font-weight:600}
.hm-box-msg.is-error{background:var(--hm-b-err-soft);color:var(--hm-b-err)}
.hm-box-msg[hidden]{display:none}
/* cart page: edit link under the box line */
.woocommerce table.shop_table.hm-cart-table .hm-box-row .variation{display:block;font-size:13px;line-height:1.5;color:var(--hm-muted);margin-top:6px}
.woocommerce table.shop_table.hm-cart-table .hm-box-row .variation dt{font-weight:700;color:var(--hm-text)}
.woocommerce table.shop_table.hm-cart-table .hm-box-row .variation dd,.woocommerce table.shop_table.hm-cart-table .hm-box-row .variation dd p{display:inline;font-size:13px;margin:0;line-height:1.5}
.hm-box-cart-edit{display:inline-block;margin-top:4px;font-size:13px;font-weight:700;color:var(--hm-olive-dark);text-decoration:underline}
.hm-box-cart-edit:hover{color:var(--hm-olive)}
.hm-mini-item__thumb .hm-box-thumb,.product-thumbnail .hm-box-thumb{width:100%;height:100%;object-fit:cover}

/* toast (own, small) */
.hm-box-toast{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);z-index:130;background:var(--hm-ink);color:#fff;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:600;box-shadow:var(--hm-shadow-hover);opacity:0;transition:opacity .2s,transform .2s;max-width:calc(100vw - 32px);text-align:center;pointer-events:none}
.hm-box-toast.is-on{opacity:1;transform:translate(-50%,0)}
.hm-box-toast.is-error{background:var(--hm-b-err)}

@media (min-width:700px){
  .hm-recipes{grid-template-columns:1fr 1fr}
  .hm-builder__lines{max-width:640px}
}
@media (min-width:1024px){
  .hm-builder__grid{grid-template-columns:minmax(0,1fr) 360px;gap:28px}
  .hm-builder__summary{position:sticky;top:104px}
  .hm-builder__bar{display:none}
  .hm-page--builder.has-bar{padding-bottom:40px}
  .hm-recipe{grid-template-columns:96px 1fr auto;grid-template-areas:"media body ctl";align-items:center}
  .hm-recipe__media{width:96px;height:96px}
  .hm-recipe__ctl{margin-top:0;justify-self:end}
}
@media (min-width:1240px){
  .hm-recipes{grid-template-columns:1fr}
  .hm-builder__grid{grid-template-columns:minmax(0,1fr) 380px}
}
@media (max-width:1023px){
  .hm-builder__summary{order:2}
}
@media (prefers-reduced-motion:reduce){
  .hm-builder *,.hm-boxes-page *{transition:none!important;animation:none!important}
}

/* =====================================================================
   Hau & Miau - delight layer (micro-animations, spec 12.4)
   Rules: transform/opacity only, 150-300ms for UI transitions, slow and
   subtle ambient loops for decor, everything off under reduced motion,
   no layout shift, nothing here is required for the page to work.
   The html.hm-dl class is set by delight.js: without JS nothing is hidden.
   ===================================================================== */

/* ---- 1. Reveal on scroll (fade + 8px rise, once, staggered) ---------- */
.hm-dl .hm-dl-reveal{opacity:0;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease;transition-delay:var(--dl-delay,0ms);will-change:opacity,transform}
.hm-dl .hm-dl-reveal.is-in{opacity:1;transform:none;will-change:auto}
/* revealed elements must not keep a transform (position:fixed children, sticky bars) */
.hm-dl .hm-dl-reveal.is-in{transform:none!important}

/* ---- 2. Buttons: lift + soft shadow on hover, press on active -------- */
@media (hover:hover){
  .hm-dl .hm-btn:not(:disabled):not(.is-disabled):not(.is-loading):not([aria-disabled="true"]):hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(60,50,20,.14)}
  .hm-dl .hm-btn--ghost:not(:disabled):not(.is-disabled):hover{box-shadow:0 8px 18px rgba(60,50,20,.08)}
}
.hm-dl .hm-btn:not(:disabled):not(.is-disabled):not(.is-loading):not([aria-disabled="true"]):active{transform:scale(.98);box-shadow:none;transition-duration:.1s}

/* ---- 3. Product cards: gentle image zoom, wish heart pop -------------- */
.hm-dl .hm-card__img img,.hm-dl .hm-cat__img img{transition:transform .3s ease}
@media (hover:hover){
  .hm-dl .hm-card:hover .hm-card__img img{transform:scale(1.03)}
}
.hm-dl .hm-card__wish svg{transition:transform .2s ease,fill .2s ease}
.hm-dl .hm-card__wish.is-on svg{fill:currentColor}
.hm-dl .hm-card__wish.hm-dl-beat svg{animation:hm-dl-heart .3s cubic-bezier(.34,1.56,.64,1)}
@keyframes hm-dl-heart{0%{transform:scale(.7)}55%{transform:scale(1.25)}100%{transform:scale(1)}}

/* ---- 4. Hero decor: hearts float, spark strokes draw in --------------- */
.hm-dl .hm-hero__doodle--hearts{animation:hm-dl-float 4.5s ease-in-out infinite;transform-origin:center}
.hm-dl .hm-hero__doodle--hearts path:nth-child(2){animation:hm-dl-float 4.5s ease-in-out infinite;animation-delay:-1.6s;transform-origin:center;transform-box:fill-box}
@keyframes hm-dl-float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.04)}}
.hm-dl .hm-hero__doodle--spark path{stroke-dasharray:16;stroke-dashoffset:16;animation:hm-dl-draw .3s ease-out forwards}
.hm-dl .hm-hero__doodle--spark path:nth-child(2){animation-delay:.12s}
.hm-dl .hm-hero__doodle--spark path:nth-child(3){animation-delay:.24s}
@keyframes hm-dl-draw{to{stroke-dashoffset:0}}

/* Paw trail near the hero CTA (injected by delight.js, home page, desktop only) */
.hm-dl-paws{position:absolute;left:14px;bottom:10px;width:64px;height:56px;pointer-events:none;color:var(--hm-olive);z-index:1}
.hm-dl-paws svg{position:absolute;width:14px;height:14px;opacity:0;transform:rotate(-24deg) scale(.6);animation:hm-dl-paw .3s ease-out forwards}
.hm-dl-paws svg:nth-child(1){left:46px;bottom:0;animation-delay:.5s}
.hm-dl-paws svg:nth-child(2){left:32px;bottom:13px;animation-delay:.8s}
.hm-dl-paws svg:nth-child(3){left:20px;bottom:26px;animation-delay:1.1s}
.hm-dl-paws svg:nth-child(4){left:6px;bottom:39px;animation-delay:1.4s}
@keyframes hm-dl-paw{to{opacity:.38;transform:rotate(-24deg) scale(1)}}
@media (max-width:820px){.hm-dl-paws{display:none}}

/* ---- 5. Add-to-cart pop (heart rising from the button, 300ms) -------- */
.hm-dl-pop{position:fixed;z-index:1200;width:26px;height:26px;margin:-13px 0 0 -13px;pointer-events:none;color:var(--hm-orange);opacity:0;animation:hm-dl-rise .3s ease-out forwards}
.hm-dl-pop svg{width:100%;height:100%;fill:currentColor;stroke:none}
.hm-dl-pop--2{animation-delay:.08s;color:var(--hm-olive)}
.hm-dl-pop--3{animation-delay:.14s}
@keyframes hm-dl-rise{0%{opacity:0;transform:translate(0,0) scale(.5)}30%{opacity:1}100%{opacity:0;transform:translate(var(--dl-x,0),-34px) scale(1.05)}}

/* ---- 6. Calculator: result numbers count up (overlay, a11y-safe) ------ */
.hm-dl .hm-dl-count{position:relative;color:transparent!important}
.hm-dl .hm-dl-count__num{position:absolute;inset:0;display:block;color:var(--dl-color,inherit);font-variant-numeric:tabular-nums}
.hm-dl .hm-calc__result-hero .big{transition:transform .3s ease,opacity .3s ease}

/* ---- 7. Empty states: line-art pets (dog for empty cart, cat for 404 / no results) ---- */
.hm-dl-pet{display:block;width:100%;height:100%;color:inherit;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none;overflow:visible}
.hm-dl-pet .hm-dl-pet__eye{fill:currentColor;stroke:none;transform-box:fill-box;transform-origin:center;animation:hm-dl-blink 4.2s ease-in-out infinite}
.hm-dl-pet--cat .hm-dl-pet__eye{animation-delay:1.3s}
.hm-dl-pet .hm-dl-pet__tail{transform-box:fill-box;transform-origin:left bottom;animation:hm-dl-wag 1.4s ease-in-out infinite}
.hm-dl-pet--cat .hm-dl-pet__tail{transform-origin:right bottom;animation-duration:2.6s}
.hm-dl-pet .hm-dl-pet__ear{transform-box:fill-box;transform-origin:top center}
.hm-dl-pet--dog .hm-dl-pet__ear{animation:hm-dl-ear 4.2s ease-in-out infinite}
@keyframes hm-dl-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes hm-dl-wag{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(10deg)}}
@keyframes hm-dl-ear{0%,88%,100%{transform:rotate(0)}91%{transform:rotate(-6deg)}94%{transform:rotate(4deg)}}
/* fit inside the existing round icon wells */
.hm-empty__icon .hm-dl-pet,.hm-404__icon .hm-dl-pet,.hm-cempty__icon .hm-dl-pet,.hm-shop-empty__icon .hm-dl-pet{width:70%;height:70%}

/* ---- 8. Footer leaf sway ------------------------------------------- */
.hm-dl .hm-footer__leaf{transition:transform .3s ease;transform-origin:bottom left}
@media (hover:hover){.hm-dl .hm-footer__brand:hover .hm-footer__leaf,.hm-dl .hm-footer__col:first-child:hover .hm-footer__leaf,.hm-dl .hm-footer__leaf:hover{transform:rotate(-8deg)}}

/* ---- 9. Small touches ---------------------------------------------- */
.hm-dl .hm-trust__item svg,.hm-dl .hm-step__n{transition:transform .2s ease}
@media (hover:hover){
  .hm-dl .hm-trust__item:hover svg{transform:translateY(-2px)}
  .hm-dl details summary{transition:color .15s ease}
}

/* ---- Reduced motion: everything in this file is off ------------------ */
@media (prefers-reduced-motion:reduce){
  .hm-dl .hm-dl-reveal{opacity:1!important;transform:none!important;transition:none!important}
  .hm-dl .hm-btn:hover,.hm-dl .hm-btn:active{transform:none!important;box-shadow:none}
  .hm-dl .hm-card:hover .hm-card__img img{transform:none!important}
  .hm-dl .hm-card__img img,.hm-dl .hm-cat__img img,.hm-dl .hm-card__wish svg,.hm-dl .hm-footer__leaf,.hm-dl .hm-trust__item svg,.hm-dl .hm-step__n{transition:none!important}
  .hm-dl .hm-hero__doodle--hearts,.hm-dl .hm-hero__doodle--hearts path,.hm-dl .hm-hero__doodle--spark path,.hm-dl-paws svg,.hm-dl-pop,.hm-dl .hm-card__wish.hm-dl-beat svg,.hm-dl-pet .hm-dl-pet__eye,.hm-dl-pet .hm-dl-pet__tail,.hm-dl-pet .hm-dl-pet__ear{animation:none!important}
  .hm-dl .hm-hero__doodle--spark path{stroke-dashoffset:0}
  .hm-dl-paws svg{opacity:.38;transform:rotate(-24deg)}
  .hm-dl-pop{display:none}
  .hm-dl .hm-footer__brand:hover .hm-footer__leaf,.hm-dl .hm-footer__leaf:hover{transform:none}
}

/* =====================================================================
   Hau & Miau - accessibility toolbar (spec 12.5, Israeli standard 5568 practice)
   Owned by the a11y stream. Two halves:
   1. the floating button + dialog (.hm-a11y-btn / .hm-a11y)
   2. site-wide adaptation classes applied to <html> (data-hm-text, hm-a11y-*, hm-reduce-motion)
   ===================================================================== */

/* ---- 1a. Floating button (bottom-left in RTL: the article "back to product" pill and
          product sticky bar live on the right / bottom, see JS lift logic) ---------- */
.hm-a11y-btn{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));left:18px;right:auto;z-index:115;width:48px;height:48px;border-radius:50%;border:2px solid #fff;background:var(--hm-olive-dark);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 8px 24px rgba(60,50,20,.22);transition:transform .15s ease,background .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}
.hm-a11y-btn svg{width:26px;height:26px;display:block}
@media (hover:hover){.hm-a11y-btn:hover{background:var(--hm-olive);transform:translateY(-2px);box-shadow:0 12px 28px rgba(60,50,20,.26)}}
.hm-a11y-btn:active{transform:scale(.96)}
.hm-a11y-btn:focus-visible{outline:3px solid var(--hm-orange);outline-offset:3px}
.hm-a11y-btn[aria-expanded="true"]{background:var(--hm-ink)}
.hm-a11y-btn.is-lifted{bottom:var(--hm-a11y-lift,18px)}
@media (max-width:820px){.hm-a11y-btn{left:12px;bottom:calc(14px + env(safe-area-inset-bottom))}}

/* ---- 1b. Dialog ------------------------------------------------------- */
.hm-a11y{position:fixed;left:18px;right:auto;bottom:calc(76px + env(safe-area-inset-bottom));z-index:121;width:min(340px,calc(100vw - 24px));max-height:min(78vh,640px,var(--hm-a11y-room,640px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--hm-line);border-radius:var(--hm-radius-lg);box-shadow:0 18px 48px rgba(60,50,20,.22);direction:rtl;text-align:right;color:var(--hm-text);font-family:var(--hm-font);opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.hm-a11y[hidden]{display:none}
.hm-a11y.is-open{opacity:1;transform:none;pointer-events:auto}
.hm-a11y.is-lifted{bottom:calc(var(--hm-a11y-lift,18px) + 58px)}
@media (max-width:820px){.hm-a11y{left:12px;bottom:calc(72px + env(safe-area-inset-bottom));width:min(340px,calc(100vw - 24px))}}
.hm-a11y__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 12px;border-bottom:1px solid var(--hm-line);flex:none}
.hm-a11y__title{margin:0;font-size:18px;font-weight:800;color:var(--hm-ink);display:flex;align-items:center;gap:8px}
.hm-a11y__title::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--hm-olive);flex:none}
.hm-a11y__close{width:44px;height:44px;margin:-6px -8px -6px 0;border:0;border-radius:50%;background:transparent;color:var(--hm-ink);display:grid;place-items:center;cursor:pointer;transition:background .15s ease}
.hm-a11y__close:hover{background:var(--hm-cream-2)}
.hm-a11y__close:focus-visible{outline:3px solid var(--hm-olive);outline-offset:-2px}
.hm-a11y__body{padding:12px 14px 14px;overflow:auto;overscroll-behavior:contain;display:grid;gap:12px}
.hm-a11y__row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--hm-cream-accent);border:1px solid var(--hm-line);border-radius:var(--hm-radius-md);padding:8px 10px 8px 8px;min-height:56px}
.hm-a11y__label{font-weight:700;color:var(--hm-ink);font-size:15px}
.hm-a11y__stepper{display:flex;align-items:center;gap:4px}
.hm-a11y__step{width:44px;height:44px;border-radius:50%;border:2px solid var(--hm-olive);background:#fff;color:var(--hm-olive-dark);display:grid;place-items:center;cursor:pointer;padding:0;transition:background .15s ease,transform .15s ease}
.hm-a11y__step:hover{background:var(--hm-olive-soft)}
.hm-a11y__step:active{transform:scale(.95)}
.hm-a11y__step:focus-visible{outline:3px solid var(--hm-orange);outline-offset:2px}
.hm-a11y__step:disabled{opacity:.4;cursor:not-allowed;background:#fff;transform:none}
.hm-a11y__level{min-width:64px;text-align:center;font-weight:700;font-size:14px;color:var(--hm-ink)}
.hm-a11y__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.hm-a11y__opt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:76px;padding:10px 6px;border-radius:var(--hm-radius-md);border:2px solid var(--hm-line);background:#fff;color:var(--hm-ink);font:inherit;font-size:13.5px;font-weight:600;line-height:1.25;text-align:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}
.hm-a11y__opt svg{color:var(--hm-olive-dark);flex:none}
@media (hover:hover){.hm-a11y__opt:hover{border-color:var(--hm-olive);background:var(--hm-cream-accent)}}
.hm-a11y__opt:active{transform:scale(.98)}
.hm-a11y__opt:focus-visible{outline:3px solid var(--hm-orange);outline-offset:2px}
.hm-a11y__opt[aria-pressed="true"]{background:var(--hm-olive-dark);border-color:var(--hm-olive-dark);color:#fff;box-shadow:inset 0 0 0 2px #fff}
.hm-a11y__opt[aria-pressed="true"] svg{color:#fff}
.hm-a11y__opt[aria-pressed="true"] span::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--hm-orange);margin-inline-end:6px;vertical-align:middle}
.hm-a11y__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--hm-line);margin-top:2px}
.hm-a11y__reset{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border:0;border-radius:var(--hm-radius-pill);background:transparent;color:var(--hm-ink);font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease}
.hm-a11y__reset:hover{background:var(--hm-cream-2)}
.hm-a11y__reset:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
.hm-a11y__link{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:var(--hm-olive-dark);font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px;border-radius:6px}
.hm-a11y__link:hover{color:var(--hm-olive)}
.hm-a11y__link:focus-visible{outline:3px solid var(--hm-olive);outline-offset:2px}
@media print{.hm-a11y-btn,.hm-a11y{display:none!important}}
@media (prefers-reduced-motion:reduce){.hm-a11y-btn,.hm-a11y,.hm-a11y__opt,.hm-a11y__step{transition:none!important}}

/* ---- 2a. Text size (3 steps). The theme sizes everything in px, so a root font-size change
          would not reach the copy; body zoom behaves like the browser's own text zoom and
          reflows the layout (supported in Chrome, Edge, Safari and Firefox 126+). ---------- */
html[data-hm-text="1"] body{zoom:1.1}
html[data-hm-text="2"] body{zoom:1.2}
html[data-hm-text="3"] body{zoom:1.32}

/* ---- 2b. High contrast: brand-safe darker tokens on white, underlined links -------- */
html.hm-a11y-contrast{--hm-cream:#FFFFFF;--hm-cream-2:#FFFFFF;--hm-cream-accent:#FFFFFF;--hm-olive:#3E6C12;--hm-olive-dark:#2E520C;--hm-olive-soft:#E3F0D0;--hm-orange:#A9430A;--hm-orange-dark:#8F3806;--hm-lavender:#6B4FC7;--hm-ink:#000000;--hm-text:#111111;--hm-muted:#3A3A38;--hm-line:#6B6B66;--hm-shadow:0 0 0 1px #6B6B66;--hm-shadow-hover:0 0 0 2px #2E520C}
html.hm-a11y-contrast body{background:#fff;color:#111}
html.hm-a11y-contrast a:not(.hm-btn){text-decoration:underline;text-underline-offset:2px}
html.hm-a11y-contrast .hm-btn--buy{background:#8F3806;color:#fff}
html.hm-a11y-contrast .hm-btn--buy:hover{background:#6E2A03}
html.hm-a11y-contrast .hm-btn--primary{background:#2E520C;color:#fff}
html.hm-a11y-contrast .hm-btn--ghost{border-color:#2E520C;color:#2E520C}
html.hm-a11y-contrast .hm-btn--light{color:#000;box-shadow:0 0 0 2px #000 inset}
html.hm-a11y-contrast ::placeholder{color:#3A3A38;opacity:1}
html.hm-a11y-contrast input,html.hm-a11y-contrast select,html.hm-a11y-contrast textarea{border-color:#3A3A38!important;color:#000}
html.hm-a11y-contrast :focus-visible{outline:3px solid #000!important;outline-offset:2px}
html.hm-a11y-contrast .hm-a11y-btn{background:#000;border-color:#fff}
html.hm-a11y-contrast .hm-a11y__opt[aria-pressed="true"]{background:#000;border-color:#000}

/* ---- 2c. Grayscale (filter on the root element does not break position:fixed children) ---- */
html.hm-a11y-gray{filter:grayscale(1)}

/* ---- 2d. Highlight links ---------------------------------------------------------- */
html.hm-a11y-links a:not(.hm-btn):not(.hm-a11y__link){text-decoration:underline!important;text-decoration-thickness:2px;text-underline-offset:3px;font-weight:700;background:rgba(255,220,64,.35);box-shadow:0 0 0 2px rgba(255,220,64,.35);border-radius:3px}
html.hm-a11y-links a.hm-btn,html.hm-a11y-links button{outline:2px solid currentColor;outline-offset:2px}

/* ---- 2e. Readable font (system sans) --------------------------------------------- */
html.hm-a11y-font,html.hm-a11y-font body,html.hm-a11y-font *:not(svg):not(svg *):not(code):not(pre){font-family:Arial,Helvetica,"Segoe UI",system-ui,sans-serif!important;letter-spacing:0}

/* ---- 2f. Stop animations: class-based twin of prefers-reduced-motion for the whole site.
          Durations are near-zero rather than "none" so transitionend/animationend still fire. ---- */
html.hm-reduce-motion *,html.hm-reduce-motion *::before,html.hm-reduce-motion *::after{animation-duration:.001ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
html.hm-reduce-motion{scroll-behavior:auto!important}
html.hm-reduce-motion .hm-dl .hm-dl-reveal{opacity:1!important;transform:none!important}
html.hm-reduce-motion .hm-dl .hm-btn:hover,html.hm-reduce-motion .hm-dl .hm-btn:active{transform:none!important}
html.hm-reduce-motion .hm-dl .hm-card:hover .hm-card__img img{transform:none!important}
html.hm-reduce-motion .hm-dl .hm-hero__doodle--spark path{stroke-dashoffset:0;animation:none!important}
html.hm-reduce-motion .hm-dl .hm-hero__doodle--hearts,html.hm-reduce-motion .hm-dl .hm-hero__doodle--hearts path,html.hm-reduce-motion .hm-dl-pet .hm-dl-pet__eye,html.hm-reduce-motion .hm-dl-pet .hm-dl-pet__tail,html.hm-reduce-motion .hm-dl-pet .hm-dl-pet__ear,html.hm-reduce-motion .hm-dl .hm-card__wish.hm-dl-beat svg{animation:none!important}
html.hm-reduce-motion .hm-dl-paws svg{opacity:.38;transform:rotate(-24deg);animation:none!important}
html.hm-reduce-motion .hm-dl-pop{display:none!important}
html.hm-reduce-motion .hm-dl .hm-footer__brand:hover .hm-footer__leaf,html.hm-reduce-motion .hm-dl .hm-footer__leaf:hover{transform:none!important}
html.hm-reduce-motion img,html.hm-reduce-motion video{animation:none!important}
html.hm-reduce-motion video[autoplay]{display:none}

/* ---- 2g. Line spacing (WCAG 1.4.12 text spacing) --------------------------------- */
html.hm-a11y-spacing body{line-height:1.9;letter-spacing:.04em;word-spacing:.12em}
html.hm-a11y-spacing p,html.hm-a11y-spacing li,html.hm-a11y-spacing dd,html.hm-a11y-spacing td,html.hm-a11y-spacing label{line-height:2!important}
html.hm-a11y-spacing p{margin-bottom:1.6em}
html.hm-a11y-spacing h1,html.hm-a11y-spacing h2,html.hm-a11y-spacing h3,html.hm-a11y-spacing h4{line-height:1.5}

/* ---- 2h. Big cursor ------------------------------------------------------------- */
html.hm-a11y-cursor,html.hm-a11y-cursor *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24'><path d='M5 3l14 9.5-6 1 3.4 6.4-2.6 1.3-3.4-6.4L5 19z' fill='%23fff' stroke='%23000' stroke-width='1.4' stroke-linejoin='round'/></svg>") 9 5,auto!important}
html.hm-a11y-cursor a,html.hm-a11y-cursor button,html.hm-a11y-cursor [role="button"],html.hm-a11y-cursor label,html.hm-a11y-cursor summary,html.hm-a11y-cursor select,html.hm-a11y-cursor input[type="checkbox"],html.hm-a11y-cursor input[type="radio"],html.hm-a11y-cursor a *,html.hm-a11y-cursor button *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24'><path d='M9 3.5v9L6.5 10a1.6 1.6 0 0 0-2.3 2.2l4.3 6.3A4 4 0 0 0 11.8 20H15a4 4 0 0 0 4-4v-4.5a1.5 1.5 0 0 0-3 0V11a1.5 1.5 0 0 0-3 0v-.5a1.5 1.5 0 0 0-3 0v-7a1.5 1.5 0 0 0-3 0z' fill='%23fff' stroke='%23000' stroke-width='1.4' stroke-linejoin='round'/></svg>") 16 4,pointer!important}
html.hm-a11y-cursor input[type="text"],html.hm-a11y-cursor input[type="email"],html.hm-a11y-cursor input[type="tel"],html.hm-a11y-cursor input[type="search"],html.hm-a11y-cursor input[type="number"],html.hm-a11y-cursor input[type="password"],html.hm-a11y-cursor textarea{cursor:text!important}
/* the toolbar itself keeps its own styling under "highlight links" (focus rings still apply) */
html.hm-a11y-links .hm-a11y button:not(:focus-visible),html.hm-a11y-links .hm-a11y-btn:not(:focus-visible){outline:0}
html.hm-a11y-links .hm-a11y a.hm-a11y__link{background:none;box-shadow:none}

/* ---------------------------------------------------------------------------
   Colour contrast, WCAG 2.1 AA / Israeli standard 5568 (audit 2026-08-22).
   Measured on the live site: the muted grey (#8A8A84 and #8A8074) came out at
   2.9 to 3.9:1 on our backgrounds and the brand orange (#E8742C) at 2.5 to 3.0:1,
   both under the 4.5:1 that body text needs. The values below are the corrected
   ones; the orange stays orange, only deeper (4.65:1 on cream, 5.23:1 on white),
   and the olive gets its darker shade wherever small white text sits on it.
   This block lives in a11y.css because it is the last stylesheet the theme loads,
   so it wins over the per-area parts without needing specificity tricks.
   --------------------------------------------------------------------------- */
:root{
  --hm-muted:#69695F;
  --hm-orange:#B34E12;
  --hm-orange-dark:#9E4409;
  --hm-orange-btn:#B34E12;
  --hm-orange-btn-hover:#9E4409;
}
.hm-grev__when,.hm-grev__who span{color:#6E665C}
.hm-card__badge:not(.hm-card__badge--orange){background:var(--hm-olive-dark,#4A7423)}
.hm-badge--olive,.hm-chip--olive{background:var(--hm-olive-dark,#4A7423)}
.hm-express__btn{color:var(--hm-muted)}
/* The buy button keeps its own hardcoded fills in main.css and a scoped token block in home.css,
   so both are restated here at 5.2:1 for white text. */
.hm-btn--buy{background:#B34E12;color:#fff}
.hm-btn--buy:hover{background:#9E4409;color:#fff}
.hm-home{--hm-orange-btn:#B34E12;--hm-orange-btn-hover:#9E4409;--hm-orange-text:#B34E12}
/* The primary green failed AA in both directions at small sizes (3.86:1 as text on white and with
   white text on top). #4E7A26 is the same green a shade deeper: 5.08:1 with white, 4.51:1 on cream. */
:root{--hm-olive:#4E7A26}
.hm-crumbs span{color:var(--hm-muted)}
.qty-btn{color:#69695F}

/* ---------------------------------------------------------------------------
   Muted text pass (David, 11.9.2026, from his phone: the small grey text reads too
   light). The AA greys above (#69695F / #66665F / #6B6B66 / #6E665C, 4.7 to 5.8:1)
   are fine on paper but thin at 12-14px on iPhone. One deeper grey for every muted
   token: #4F4F48 = 8.6:1 on white, 7.6:1 on cream, still clearly secondary next to
   the ink #2E2E2C. Plugins that print var(--hm-muted, fallback) pick it up too.
   --------------------------------------------------------------------------- */
:root{--hm-muted:#4F4F48;--hm-c-muted:#4F4F48}
.hm-home{--hm-muted-aa:#4F4F48}
.hm-calc,.hm-pets-wrap,.hm-club{--calc-muted:#4F4F48}
.hm-calc__help{color:#4F4F48}
.hm-grev__when,.hm-grev__who span{color:#4F4F48}
.hm-card__perkg,.hm-crumbs span,.qty-btn{color:#4F4F48}
.hm-news__consent,.hm-news__legal,.hm-footer__bottom,.hm-built{color:#4F4F48}
.hm-faq-search input::placeholder,.hm-cform input::placeholder,.hm-cform textarea::placeholder,.hm-page--content .hm-search input::placeholder{color:#5F5F58}
.single-product .hm-price__unit,.single-product .hm-shipnote{color:#4F4F48}

