/* One header per page - responsive without waiting for JavaScript. */
.htnav-full-header, .htnav-full-header * { box-sizing: border-box; }
.htnav-full-header { --hth-red: #ed1c24; --hth-green: #17392f; font-family: inherit; position: relative; z-index: 11000; width: 100%; isolation: isolate; }
.htnav-full-header .htnav-full-container { max-width: 1520px; margin: 0 auto; padding: 0 22px; }
.htnav-full-header .htnav-full-desktop { display: block; }
.htnav-full-header .htnav-full-compact-space { display: none; }
.htnav-full-topline { background: var(--hth-red); color: #fff; min-height: 32px; }
.htnav-full-info { min-height: 32px; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 18px; align-items: center; font-size: 12px; line-height: 1.35; }
.htnav-full-info > :nth-child(2) { text-align: center; }
.htnav-full-info > :last-child { text-align: right; }
.htnav-full-info a, .htnav-full-info span { color: #fff; text-decoration: none; }
.htnav-full-middle { background: #fff; position: relative; box-shadow: 0 1px 0 #ececec; }
.htnav-full-main { min-height: 96px; display: grid; grid-template-columns: minmax(235px,1.15fr) minmax(115px,.65fr) minmax(225px,1.4fr) auto; gap: clamp(12px, 2vw, 35px); align-items: center; }
.htnav-full-logo { display: flex; align-items: center; justify-content: flex-start; min-width: 0; text-decoration: none; }
.htnav-full-logo img { display: block; width: min(100%,330px) !important; max-width: 330px !important; min-width: 0; height: auto !important; max-height: 67px !important; object-fit: contain; object-position: left center; }
.htnav-full-trust { min-width: 0; display:flex; align-items:center; justify-content:center; }
.htnav-full-trust > * { max-width: 100%; }
.htnav-full-trust img { max-width: 100%; height: auto; }
.htnav-full-placeholder { display:inline-block; padding: 9px 12px; border: 1px dashed #cbd5d0; border-radius: 6px; color:#687970; font-size: 11px; }
.htnav-full-controls { display: flex; align-items: center; gap: 13px; justify-content: flex-end; }
.htnav-full-icon { position:relative; color:var(--hth-green); display:inline-flex; justify-content:center; align-items:center; background:transparent; border:0; width:48px; height:48px; padding: 10px; border-radius: 12px; cursor:pointer; text-decoration:none; }
.htnav-full-icon:hover,.htnav-full-icon:focus-visible { background: #f1f6f3; color: var(--hth-green); }
.htnav-full-icon svg { width:27px; height:27px; display:block; }
.htnav-full-count { position:absolute; right:0; top:0; background:#ed1c24; color:#fff; font:700 11px/19px Arial,sans-serif; min-width:20px; height:20px; border-radius:50%; text-align:center; }
.htnav-full-count[hidden], .htnav-full-search-panel[hidden], .htnav-full-cart-overlay[hidden] { display:none!important; }
.htnav-full-search-panel { position:absolute; top:calc(100% - 8px); right:max(18px, calc((100vw - 1520px) / 2 + 20px)); z-index:12050; width:min(440px, calc(100vw - 40px)); background:#fff; padding:12px; border:1px solid #dfe7e2; border-radius: 14px; box-shadow: 0 12px 35px rgba(14,34,22,.17); }
.htnav-full-search-panel form { margin:0; display:flex; height:46px; border:1px solid #cddbd1; border-radius:10px; overflow:hidden; }
.htnav-full-search-panel input { flex:1; min-width:0; border:0!important; outline:0!important; padding: 10px 12px!important; margin:0!important; box-shadow:none!important; background:#fff!important; font-size:14px; }
.htnav-full-search-panel form button { border:0; color:#fff; background:#193c2f; padding:0 18px; cursor:pointer; font-size:14px; }
.htnav-full-nav { width:100%; background:var(--hth-red); position:relative; z-index:11010; }
.htnav-full-nav .htnav-shell { --htnav-bg: var(--hth-red); --htnav-text: #fff; --htnav-content-width: 1520px; --htnav-item-padding:14px; }
.htnav-full-nav .htnav-desktop { display:block; }
.htnav-full-nav .htnav-mobile { display:none !important; }
.htnav-full-nav .htnav-desktop__list { max-width:1520px; min-height:50px; }
.htnav-full-nav .htnav-link { padding-left:clamp(8px,1vw,19px); padding-right:clamp(8px,1vw,19px); }
/* Desktop cart drawer, same WooCommerce cart data as mobile. */
.htnav-full-cart-overlay { position:fixed; inset:0; z-index:2147483001; }
.htnav-full-cart-backdrop { position:absolute; inset:0; background:rgba(13,28,20,.5); border:0; width:100%; height:100%; cursor:pointer; }
.htnav-full-cart-panel { position:absolute; right:0; top:0; bottom:0; width:min(92vw,420px); display:flex; flex-direction:column; overflow:hidden; background:#fff; box-shadow:-10px 0 45px rgba(0,0,0,.16); }
.htnav-full-cart-title { display:flex; justify-content:space-between; align-items:center; padding:18px 22px; border-bottom:1px solid #e9ede9; }
.htnav-full-cart-title h2 { margin:0; font-size:23px; line-height:1.3; color:#1b3d30; }
.htnav-full-cart-content { flex:1; overflow:auto; padding:18px 22px; }
.htnav-full-cart-content .woocommerce-mini-cart { list-style:none; margin:0; padding:0; }
.htnav-full-cart-content .woocommerce-mini-cart-item { position:relative; min-height:80px; padding:10px 26px 10px 0; border-bottom:1px solid #e9eee9; }
.htnav-full-cart-content .woocommerce-mini-cart-item img { width:65px!important; height:65px!important; margin:0 10px 0 0!important; float:left!important; object-fit:contain; }
.htnav-full-cart-content .woocommerce-mini-cart-item .remove { position:absolute; right:0; top:4px; }
.htnav-full-cart-content .woocommerce-mini-cart__buttons { display:none!important; }
.htnav-full-cart-actions { padding:18px 22px 26px; display:grid; gap:9px; border-top:1px solid #e9eee9; }
.htnav-full-cart-actions a { padding:12px; border:1px solid #2c503e; border-radius:8px; font-weight:600; text-decoration:none; text-align:center; color:#1c4031; }
.htnav-full-cart-actions a.htnav-full-checkout { background:#1c4031; color:#fff; }
body.htnav-full-cart-open { overflow:hidden!important; }
/* Intentionally no body padding in this design: space is present in the shortcode HTML before first paint. */
@media(max-width:1279px) {
 .htnav-full-header .htnav-full-compact-space { display:block; height:64px; }
 .htnav-full-header .htnav-full-desktop { display:none; }
}
@media (prefers-reduced-motion:reduce) { .htnav-full-search-panel { transition:none; } }

/* Hide legacy default modern header on wide devices; unified uses its own breakpoint. */
.htmh-root.htmh-unified { visibility:visible; }
.htmh-root.htmh-unified .htmh-spacer {display:none!important}
.htmh-root.htmh-unified .htmh-fixed {position:fixed!important;inset:0 0 auto!important;width:100%!important;z-index:2147482900!important}
body.admin-bar .htmh-root.htmh-unified .htmh-fixed {top:46px!important}
@media(min-width:783px){body.admin-bar .htmh-root.htmh-unified .htmh-fixed {top:32px!important}}
