.th-catnav{--th-primary:#2f6b4f;--th-primary-dark:#214c38;--th-primary-soft:#e9f2ed;--th-text:#1f2d27;--th-text-2:#3c4d45;--th-border:#dce5df;--th-border-strong:#c9d8cf;width:100%;min-width:0;font-family:Inter,system-ui,sans-serif;color:var(--th-text)}
.th-catnav *{box-sizing:border-box}
.th-catnav__desktop,.th-catnav__panel,.th-catnav__list,.th-catnav__group{width:100%;min-width:0}
.th-catnav__panel{overflow:hidden;border:1px solid var(--th-border-strong);border-radius:16px;background:#fff;box-shadow:0 3px 10px rgba(31,45,39,.045)}
.th-catnav__head{position:static!important;height:auto!important;min-height:0!important;padding:18px 17px 17px!important;border-bottom:1px solid var(--th-border-strong);background:#fffdfa}
.th-catnav__eyebrow{position:static!important;height:auto!important;min-height:0!important;margin:0 0 6px!important;padding:0!important;color:var(--th-primary)!important;font-size:11px!important;line-height:1.25!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.th-catnav__title{position:static!important;height:auto!important;min-height:0!important;margin:0 0 8px!important;padding:0!important;color:var(--th-primary-dark)!important;font-size:20px!important;line-height:1.16!important;letter-spacing:-.025em!important;font-weight:850!important}
.th-catnav__intro{position:static!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;color:var(--th-text-2)!important;font-size:13px!important;line-height:1.46!important;font-weight:400!important}
.th-catnav__list{display:flex;flex-direction:column;background:#fff}
.th-catnav__all{min-height:54px;padding:9px 14px 9px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px solid #edf1ee;color:var(--th-text);font-size:14.5px;line-height:1.28;font-weight:850!important;text-decoration:none;background:#fbfdfc;transition:background-color .16s ease,color .16s ease}
.th-catnav__all:hover{background:var(--th-primary-soft);color:var(--th-primary-dark);font-weight:850!important}
.th-catnav__all.is-current{background:#e3efe8;color:var(--th-primary-dark);font-weight:850!important;box-shadow:inset 3px 0 0 var(--th-primary)}
.th-catnav__arrow{color:var(--th-primary);font-size:17px;font-weight:900}
.th-catnav__group{position:relative;isolation:isolate;border-bottom:1px solid #edf1ee;background:#fff}
.th-catnav__group:last-child{border-bottom:0}
.th-catnav__row{position:relative!important;width:100%!important;min-width:0!important;height:auto!important;min-height:52px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 48px!important;grid-auto-rows:minmax(52px,auto)!important;align-items:stretch!important;overflow:visible!important}
.th-catnav__row.is-active{background:#f7faf8;color:var(--th-primary-dark)}
.th-catnav__parent{position:relative!important;z-index:1!important;width:100%!important;min-width:0!important;height:auto!important;min-height:52px!important;margin:0!important;padding:9px 6px 9px 14px!important;display:flex!important;align-items:center!important;white-space:normal!important;overflow:visible!important;overflow-wrap:break-word!important;word-break:normal!important;color:inherit!important;font-size:14px!important;line-height:1.28!important;font-weight:720!important;text-decoration:none!important}
.th-catnav__parent:hover{text-decoration:underline!important;text-underline-offset:3px;color:var(--th-primary-dark)!important}
.th-catnav__parent.is-current{font-weight:800!important}
.th-catnav__toggle{position:static!important;z-index:2!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;align-self:center!important;justify-self:center!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;border:1px solid #c9ded2!important;border-radius:10px!important;background:#edf5f1!important;color:var(--th-primary-dark)!important;font:850 17px/1 Inter,system-ui,sans-serif!important;cursor:pointer!important;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important}
.th-catnav__toggle:hover{border-color:var(--th-primary)!important;background:var(--th-primary)!important;color:#fff!important;box-shadow:0 3px 8px rgba(33,76,56,.16)!important}.th-catnav__group.is-open .th-catnav__toggle{border-color:var(--th-primary)!important;background:var(--th-primary)!important;color:#fff!important}.th-catnav__group.is-open .th-catnav__toggle:hover{background:var(--th-primary-dark)!important;color:#fff!important}
.th-catnav__group:not(.is-open) .th-catnav__row:hover{background:#fbfdfc}
.th-catnav__group:not(.is-open) .th-catnav__row:hover .th-catnav__parent{color:var(--th-primary-dark)!important}

.th-catnav__toggle:focus-visible,.th-catnav__parent:focus-visible,.th-catnav__child:focus-visible,.th-catnav__all:focus-visible{outline:3px solid rgba(47,107,79,.22);outline-offset:2px}
.th-catnav__children{position:relative!important;z-index:1!important;width:100%!important;height:auto!important;padding:3px 10px 10px 14px!important;background:#fafcfb!important}
.th-catnav__children[hidden]{display:none!important}
.th-catnav__child{position:relative!important;display:block!important;width:100%!important;height:auto!important;margin:0!important;padding:7px 6px 7px 13px!important;border-radius:8px!important;white-space:normal!important;overflow-wrap:break-word!important;color:var(--th-text-2)!important;font-size:12.5px!important;line-height:1.32!important;font-weight:650!important;text-decoration:none!important}
.th-catnav__child:not(.th-catnav__child--all)::before{content:"";position:absolute;left:2px;top:14px;width:5px;height:1px;background:#9bb0a5}
.th-catnav__child--all{color:var(--th-primary-dark)!important;font-weight:800!important}
.th-catnav__child:hover,.th-catnav__child.is-current{background:var(--th-primary-soft)!important;color:var(--th-primary-dark)!important}
.th-catnav__child.is-current{font-weight:800!important}
.th-catnav__mobile{display:none;overflow:hidden;border:1px solid var(--th-border);border-radius:14px;background:#fff}
.th-catnav__mobile-summary{min-height:58px;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}
.th-catnav__mobile-summary::-webkit-details-marker{display:none}
.th-catnav__mobile-summary span:first-child{display:flex;flex-direction:column;gap:2px}
.th-catnav__mobile-summary small{color:var(--th-primary);font-size:10.5px;line-height:1.2;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.th-catnav__mobile-summary strong{font-size:17px;line-height:1.3}
.th-catnav__mobile-mark::before{content:"+";color:var(--th-primary);font-size:23px;line-height:1;font-weight:800}
.th-catnav__mobile[open] .th-catnav__mobile-mark::before{content:"−"}
.th-catnav__mobile-body{border-top:1px solid var(--th-border)}
@media(max-width:1024px){.th-catnav__desktop{display:none}.th-catnav__mobile{display:block}}


/* Archive heading rendered through [th_product_archive_title]. */
.th-archive-title{margin:0!important;padding:0!important;color:#1f2d27!important;font-family:Inter,system-ui,sans-serif!important;font-size:34px!important;line-height:1.14!important;letter-spacing:-.035em!important;font-weight:750!important}
@media(max-width:1024px){.th-archive-title{font-size:31px!important}}
@media(max-width:767px){.th-archive-title{font-size:29px!important}}


/* =========================================================
   V1.5 — archive search, toolbar and product-card hover repair
   ========================================================= */

.th-archive-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 14px;font-family:Inter,system-ui,sans-serif}
.th-archive-toolbar__count{margin:0!important;color:#4F6057!important;font-size:14px!important;line-height:1.3!important;font-weight:700!important;white-space:nowrap}
.th-archive-toolbar__sort{margin:0!important}
.th-archive-toolbar__sort select{min-height:44px;margin:0!important;padding:0 38px 0 13px!important;border:1px solid #c9d8cf!important;border-radius:11px!important;background:#fff!important;color:#1f2d27!important;font:700 14px/1.2 Inter,system-ui,sans-serif!important;cursor:pointer!important}
.th-archive-toolbar__sort select:hover{border-color:#2f6b4f!important}
.th-archive-toolbar__sort select:focus-visible{outline:3px solid rgba(47,107,79,.18)!important;outline-offset:2px!important;border-color:#2f6b4f!important}

/* The classic Woo Product Stock widget has its own !important color rule.
   Use a stronger archive-scoped selector so the stock state stays readable on the dark card hover. */
body .g-5a48c8b:hover .elementor-widget-woocommerce-product-stock .stock,
body .g-5a48c8b:hover .woocommerce-product-stock .stock,
body .g-5a48c8b:hover .stock,
body .g-5a48c8b:focus-within .elementor-widget-woocommerce-product-stock .stock,
body .g-5a48c8b:focus-within .stock{color:#fff!important}
body .g-5a48c8b:hover .elementor-widget-woocommerce-product-stock .stock::before,
body .g-5a48c8b:hover .stock::before,
body .g-5a48c8b:focus-within .stock::before{background:#fff!important;color:#fff!important}

@media(max-width:767px){
  .th-archive-toolbar__sort{flex:1;display:flex;justify-content:flex-end}
  .th-archive-toolbar__sort select{max-width:100%;min-width:0}
}
