/* Source-derived Chums header presentation; real menu and WooCommerce remain with the target provider. */
.htw-site-header[data-htw-site-header] {
  position: sticky; top: 0; background: #fff; color: #000;
  box-shadow: 0 0 1px rgba(0,0,0,.2); font-family: Roboto, Arial, sans-serif;
}
.htw-site-header .htw-site-header__announcement {
  min-height: 38px; display: flex; align-items: center; justify-content: center;
  padding: 7px 17px; font-size: 11px; line-height: 1.4; letter-spacing: .09em;
  font-weight: 600; text-transform: uppercase;
}
.htw-site-header .htw-site-header__main {
  display: flex; align-items: center; gap: 0; min-height: 77px; padding: 0 40px;
}
.htw-site-header .htw-site-header__logo {
  width: 140px; max-width: 140px; flex: 0 0 140px; margin: 0 35px 0 0;
}
.htw-site-header .htw-site-header__desktop-nav { flex: 1 1 auto; align-self: stretch; min-width: 0; }
.htw-site-header .htw-site-header__primary-list { height: 100%; justify-content: flex-start; gap: 30px; }
.htw-site-header .htw-site-header__primary-list > li { position: relative; }
.htw-site-header .htw-site-header__primary-list > li > a {
  min-height: 44px; color: #111; font-size: 16px; line-height: 1.2; letter-spacing: .05em;
  font-weight: 700; text-transform: uppercase;
}
.htw-site-header .htw-site-header__primary-list > li > a:hover,
.htw-site-header .htw-site-header__primary-list > li.is-open > a { text-decoration: underline; text-underline-offset: 6px; }
.htw-site-header .htw-site-header__actions { flex: 0 0 auto; justify-content: flex-end; gap: 20px; margin-left: 24px; }
.htw-site-header .htw-site-header__actions a,
.htw-site-header .htw-site-header__actions button { color: #111; min-width: 32px; min-height: 44px; }
.htw-site-header .htw-site-header__account-icon { display: block; }
.htw-site-header .htw-site-header__account-label,
.htw-site-header .htw-site-header__search-toggle > span {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.htw-site-header .htw-site-header__icon { width: 23px; height: 23px; flex: 0 0 auto; }
.htw-site-header .htw-site-header__cart { position: relative; }
.htw-site-header.is-ready .htw-site-header__cart-link {
  position: absolute; top: 0; right: 0; min-width: 0; min-height: 0; width: 0; height: 0;
  overflow: visible; font-size: 0; white-space: nowrap;
}
.htw-site-header.is-ready .htw-site-header__cart-link .htw-site-header__cart-count:not(.is-empty) {
  position: absolute; right: -3px; top: -3px; font-size: 10px;
}
.htw-site-header.is-ready .htw-site-header__cart-link:focus-visible {
  overflow: visible; width: auto; height: auto; top: 100%; z-index: 210;
  padding: 8px 12px; background: #fff; color: #111; font-size: 12px;
}
.htw-site-header .htw-site-header__desktop-nav .sub-menu {
  min-width: 255px; max-height: 70vh; overflow-y: auto; padding: 12px 20px;
  background: #fff; color: #111; box-shadow: 0 5px 18px rgba(0,0,0,.15);
}
.htw-site-header .htw-site-header__desktop-nav .sub-menu li > a {
  min-height: 43px; color: #111; font-size: 16px; font-weight: 300; line-height: 1.3; white-space: normal;
}
@media (min-width: 1101px) and (max-width: 1250px) {
  .htw-site-header .htw-site-header__main { padding-inline: 25px; }
  .htw-site-header .htw-site-header__logo { margin-right: 24px; }
  .htw-site-header .htw-site-header__primary-list { gap: 18px; }
  .htw-site-header .htw-site-header__primary-list > li > a { font-size: 14px; }
}
@media (max-width: 1100px) {
  .htw-site-header .htw-site-header__main { min-height: 94px; padding-inline: 17px; gap: 0; }
  .htw-site-header .htw-site-header__logo { order: 0; width: 110px; max-width: 110px; flex: 0 0 110px; margin: 0 auto 0 0; }
  .htw-site-header .htw-site-header__actions { display: contents; }
  .htw-site-header .htw-site-header__search-toggle { order: 1; flex: 0 0 44px; }
  .htw-site-header .htw-site-header__mobile-toggle { order: 2; flex: 0 0 44px; min-width: 44px; min-height: 44px; }
  .htw-site-header .htw-site-header__cart { order: 3; flex: 0 0 44px; justify-content: center; margin-left: 0; }
  .htw-site-header.is-ready .htw-site-header__actions > .htw-site-header__account { display: none; }
  .htw-site-header .htw-site-header__mobile-toggle > span {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); white-space: nowrap; border: 0;
  }
  .htw-site-header.is-ready .htw-site-header__mobile-nav {
    inset: 0 0 0 auto; width: min(350px, 90vw); box-shadow: -10px 0 30px rgba(0,0,0,.18);
  }
  .htw-site-header .htw-site-header__drawer-bar { min-height: 70px; padding: 10px 20px; border-bottom: 0; }
  .htw-site-header .htw-site-header__drawer-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
  .htw-site-header .htw-site-header__drawer-viewport { padding: 0 20px 24px; }
  .htw-site-header .htw-site-header__mobile-nav .htw-site-header__drawer-viewport li {
    border-top: 1px solid #e9e8e3;
  }
  .htw-site-header .htw-site-header__mobile-nav .htw-site-header__drawer-viewport li > a {
    min-height: 45px; color: #111; font-size: 15px; font-weight: 600; line-height: 1.25;
    letter-spacing: .18em; text-transform: uppercase;
  }
  .htw-site-header .htw-site-header__mobile-nav .htw-site-header__drawer-viewport .sub-menu {
    position: static; flex: 0 0 100%; min-width: 0; width: 100%; padding: 0 0 0 16px; box-shadow: none;
  }
  .htw-site-header .htw-site-header__mobile-nav .htw-site-header__drawer-viewport .sub-menu[hidden] { display: none !important; }
  .htw-site-header .htw-site-header__mobile-nav .htw-site-header__drawer-viewport .sub-menu li > a {
    font-size: 14px; font-weight: 400; letter-spacing: .03em; text-transform: none;
  }
  .htw-site-header .chums-header__mobile-account {
    display: flex; align-items: center; min-height: 52px; border-top: 1px solid #e9e8e3;
    border-bottom: 1px solid #e9e8e3; color: #111; font-size: 14px; font-weight: 600;
    letter-spacing: .18em; text-transform: uppercase; text-decoration: none;
  }
}
@media (max-width: 360px) {
  .htw-site-header .htw-site-header__main { padding-inline: 12px; }
  .htw-site-header .htw-site-header__logo { width: 96px; max-width: 96px; flex-basis: 96px; }
  .htw-site-header .htw-site-header__search-toggle,
  .htw-site-header .htw-site-header__mobile-toggle,
  .htw-site-header .htw-site-header__cart { flex-basis: 40px; }
}
