.nalgene-header, .nalgene-header * { box-sizing:border-box; }
.nalgene-header { --htw-header-bg:#fff; --htw-header-fg:#171717; position:sticky; top:0; z-index:100; background:#fff; color:#171717; font-family:"Open Sans",Arial,sans-serif; }
.nalgene-header__wrap { max-width:1372px; padding:0 36px; margin:0 auto; }
.nalgene-header .htw-site-header__announcement { min-height:47px; display:flex; justify-content:center; align-items:center; padding:8px 46px; background:#8948ea; color:#fff; font-size:16px; line-height:1.45; }
.nalgene-header .nalgene-header__main { display:flex; gap:24px; min-height:0; padding:24px 0 12px; align-items:center; }
.nalgene-header .htw-site-header__logo { width:178px; flex:0 0 178px; line-height:1; }
.nalgene-header .htw-site-header__logo img { display:block; width:100%; height:auto; }
.nalgene-header__desktop-search,.nalgene-header__drawer-search { position:relative; display:flex; flex:1; min-width:0; margin:0; background:#f4f4f4; border-radius:4px; }
.nalgene-header__desktop-search input[type=search],.nalgene-header__drawer-search input[type=search] { display:block; flex:1; width:100%; min-width:0; height:44px; margin:0; padding:0 48px 0 16px; border:0; background:transparent; box-shadow:none; font:400 14px/1.3 "Open Sans",Arial,sans-serif; color:#171717; }
.nalgene-header__desktop-search button,.nalgene-header__drawer-search button { position:absolute; inset:0 0 0 auto; display:flex; align-items:center; justify-content:center; width:44px; min-width:44px; height:44px; margin:0; padding:0; border:0; background:transparent; color:#171717; box-shadow:none; }
.nalgene-header__desktop-search .htw-site-header__icon,.nalgene-header__drawer-search .htw-site-header__icon { width:20px; height:20px; }
.nalgene-header .htw-site-header__actions { display:flex; flex:0 0 auto; align-items:center; gap:24px; }
.nalgene-header .htw-site-header__actions a,.nalgene-header .htw-site-header__actions button { font-size:14px; font-weight:600; text-transform:none; }
.nalgene-header .htw-site-header__cart-link { font-size:0!important; gap:0; }
.nalgene-header .htw-site-header__cart-count { font-size:10px; }
.nalgene-header .htw-site-header__cart-toggle .htw-site-header__icon,.nalgene-header .htw-site-header__cart-link .htw-site-header__icon { width:27px; height:27px; }
.nalgene-header.is-ready .htw-site-header__cart:has(.htw-site-header__cart-toggle:not([hidden])) .htw-site-header__cart-link .htw-site-header__icon { display:none; }
.nalgene-header .htw-site-header__desktop-nav { display:block; padding:0; margin:0; border:0; }
.nalgene-header .htw-site-header__primary-list { min-height:62px; justify-content:space-between; gap:20px; }
.nalgene-header .htw-site-header__primary-list > li > a { font-size:16px; font-weight:700; min-height:62px; }
.nalgene-header .htw-site-header__desktop-nav .sub-menu li > a { font-size:15px; }
.nalgene-header .htw-site-header__mobile-toggle { display:none; }
.nalgene-header__mobile-search-fallback { display:none; }
.nalgene-header.is-ready .nalgene-header__fallback-search { display:none; }
.nalgene-header .htw-site-header__mini-cart { top:100%; right:max(18px,calc((100vw - 1300px)/2)); max-height:min(80vh,720px); overflow:auto; }
@media (min-width:783px) { body.admin-bar .nalgene-header { top:32px; } }
@media (min-width:601px) and (max-width:782px) { body.admin-bar .nalgene-header { top:46px; } }
@media (max-width:1100px) {
 .nalgene-header__wrap { padding:0 18px; }
 .nalgene-header .nalgene-header__main { display:grid; grid-template-columns:1fr auto 1fr; grid-template-rows:60px; gap:0; padding:0; }
 .nalgene-header .htw-site-header__logo { grid-column:2; grid-row:1; justify-self:center; width:178px; max-width:55vw; }
 .nalgene-header .htw-site-header__mobile-toggle { grid-column:3; grid-row:1; justify-self:end; display:inline-flex; width:44px; min-height:44px; }
 .nalgene-header .htw-site-header__actions { grid-column:1; grid-row:1; justify-self:start; gap:0; }
 .nalgene-header .htw-site-header__account,.nalgene-header .nalgene-header__desktop-search,.nalgene-header .htw-site-header__desktop-nav { display:none; }
 .nalgene-header__mobile-search-fallback { display:block; padding:0 18px 12px; }
 .nalgene-header .htw-site-header__announcement { min-height:0; padding:14px 40px; font-size:16px; }
 .nalgene-header.is-ready .htw-site-header__mobile-nav { inset:0; width:100%; max-width:none; max-height:100dvh; box-shadow:none; }
 .nalgene-header .htw-site-header__drawer-bar { min-height:92px; padding:14px 18px; gap:12px; }
 .nalgene-header .nalgene-header__drawer-search { flex:1; }
 .nalgene-header .nalgene-header__drawer-search input[type=search] { height:64px; }
 .nalgene-header .nalgene-header__drawer-search button { height:64px; }
 .nalgene-header .htw-site-header__drawer-title { display:none; }
 .nalgene-header .htw-site-header__drawer-bar:has(.htw-site-header__drawer-back:not([hidden])) .nalgene-header__drawer-search { display:none; }
 .nalgene-header .htw-site-header__drawer-bar:has(.htw-site-header__drawer-back:not([hidden])) .htw-site-header__drawer-title { display:block; }
 .nalgene-header .htw-site-header__drawer-viewport { padding:18px 26px 30px; }
 .nalgene-header .htw-site-header__mobile-nav .htw-site-header__drawer-viewport li > a { min-height:58px; font-size:17px; font-weight:700; }
 .nalgene-header .htw-site-header__submenu-toggle { font-size:24px; }
 .nalgene-header .htw-site-header__mini-cart { right:0; width:min(390px,100vw); }
}
/* Target-native WooCommerce search panel: existing form and slot, presentation only. */
.nalgene-header .nalgene-search-toggle { display:inline-flex; align-items:center; justify-content:center; width:42px; height:44px; padding:0; border:0; background:transparent; color:#171717; cursor:pointer; }
.nalgene-header .nalgene-search-toggle[hidden], .nalgene-header .nalgene-search-drawer[hidden], .nalgene-header .nalgene-search-backdrop[hidden] { display:none !important; }
.nalgene-header .nalgene-search-backdrop { position:fixed; inset:0; z-index:1000; background:rgba(0,0,0,.45); }
.nalgene-header .nalgene-search-drawer { position:fixed; inset:0 0 0 auto; z-index:1001; width:min(480px,100vw); max-height:100dvh; overflow:auto; padding:28px; border:0; background:#fff; box-shadow:-8px 0 28px rgba(0,0,0,.18); font-family:"Open Sans",Arial,sans-serif; }
.nalgene-header .nalgene-search-drawer__top { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 24px; }
.nalgene-header .nalgene-search-drawer__top h2 { margin:0; font-size:22px; line-height:1.3; font-weight:700; color:#171717; }
.nalgene-header .nalgene-search-drawer__close { min-width:44px; min-height:44px; margin:0; padding:0; border:0; background:transparent; color:#171717; font-size:30px; line-height:1; cursor:pointer; }
.nalgene-header .nalgene-search-drawer form { display:flex; flex-wrap:wrap; gap:10px; margin:0; }
.nalgene-header .nalgene-search-drawer input[type=search] { flex:1 1 220px; min-width:0; min-height:48px; margin:0; padding:10px 14px; border:1px solid #b5b5b5; background:#fff; color:#171717; box-shadow:none; font:400 16px/1.4 "Open Sans",Arial,sans-serif; }
.nalgene-header .nalgene-search-drawer input[type=submit], .nalgene-header .nalgene-search-drawer button[type=submit] { min-height:48px; margin:0; padding:10px 20px; border:0; border-radius:3px; background:#006ab2; color:#fff; font-weight:700; }
.nalgene-header .nalgene-search-drawer :focus-visible, .nalgene-header .nalgene-search-toggle:focus-visible { outline:3px solid #006ab2; outline-offset:3px; }
@media (max-width:1100px) { .nalgene-header .nalgene-search-drawer { width:min(420px,100vw); padding:20px; } .nalgene-header .htw-site-header__actions { gap:4px; } }

/* The native storefront controller adds its own accessible drawer heading.
   Keep the original heading as fallback only if that controller is absent. */
.nalgene-header .nalgene-search-drawer:has(> .storefront-drawer-heading) > .nalgene-search-drawer__top { display:none; }
