.elementor-widget-humble_hopes_header { width: 100%; }
.elementor-widget-humble_hopes_header > .elementor-widget-container { overflow: visible; }
.hh-header { position: relative; z-index: 100; width: 100%; box-sizing: border-box; border-top-style: solid; border-top-width: 2px; border-bottom: 1px solid #e8e1d7; background: #fdfbf7; }
.hh-header * { box-sizing: border-box; }
.hh-header__inner { display: grid; grid-template-columns: minmax(180px, 1fr) auto minmax(245px, 1fr); align-items: center; width: 100%; margin: 0 auto; min-height: 76px; padding: 0 40px; }
.hh-header__logo-wrap { min-width: 0; justify-self: start; }
.hh-header__logo { display: inline-flex; align-items: center; text-decoration: none; line-height: 1; }
.hh-header__logo img { display: block; width: 230px; max-width: 100%; max-height: 55px; object-fit: contain; object-position: left center; }
.hh-header__brand { display: inline-flex; align-items: center; gap: 12px; color: #332f2c; font-family: Georgia, 'Times New Roman', serif; font-size: 28px; font-weight: 600; white-space: nowrap; }
.hh-header__sprig { color: #baa98f; font-size: 40px; font-weight: 400; transform: rotate(-20deg); }
.hh-header__nav { justify-self: center; }
.hh-header__nav-list,
.hh-header__mobile-list { list-style: none; margin: 0; padding: 0; }
.hh-header__nav-list { display: flex; align-items: center; justify-content: center; gap: 34px; }
.hh-header__nav-item { position: relative; margin: 0; padding: 0; }
.hh-header__nav-link,
.hh-header__nav-list a { display: inline-flex; align-items: center; color: #2f2b28; font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: 500; line-height: 1.25; text-decoration: none; white-space: nowrap; transition: color .2s ease; }
.hh-header__nav-link:hover,
.hh-header__nav-link:focus,
.hh-header__nav-list a:hover,
.hh-header__nav-list a:focus { color: #b84827; }
.hh-header__nav-list .sub-menu { position: absolute; top: calc(100% + 18px); left: 50%; z-index: 10; display: none; min-width: 210px; margin: 0; padding: 10px; list-style: none; transform: translateX(-50%); border: 1px solid #e8e1d7; border-radius: 4px; background: #fdfbf7; box-shadow: 0 12px 30px rgba(50, 40, 30, .10); }
.hh-header__nav-list li:hover > .sub-menu,
.hh-header__nav-list li:focus-within > .sub-menu { display: grid; gap: 4px; }
.hh-header__nav-list .sub-menu a { display: block; padding: 10px 12px; }
.hh-header__actions { display: flex; align-items: center; justify-self: end; gap: 20px; }
.hh-header__icon { position: relative; display: inline-flex; align-items: center; justify-content: center; padding: 2px; color: #3b3734; text-decoration: none; transition: color .2s ease, transform .2s ease; }
.hh-header__icon:hover,
.hh-header__icon:focus { color: #b84827; transform: translateY(-1px); }
.hh-header__icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.hh-header__cart-count { position: absolute; top: -7px; right: -9px; display: grid; place-items: center; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 99px; background: #b84827; color: #fff; font: 600 9px/1 Arial, sans-serif; }
.hh-header__cart-count.is-empty { display: none; }
.hh-header__cta { display: inline-flex; align-items: center; justify-content: center; padding: 13px 22px; border-radius: 4px; background: #b84827; color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 12px; font-weight: 700; line-height: 1; letter-spacing: .02em; text-decoration: none; white-space: nowrap; transition: background-color .2s ease, color .2s ease, transform .2s ease; }
.hh-header__cta:hover,
.hh-header__cta:focus { background: #96391f; color: #fff; transform: translateY(-1px); }
.hh-header__toggle { display: none; align-items: center; gap: 9px; padding: 8px 0 8px 8px; border: 0; background: transparent; color: #332f2c; cursor: pointer; font: inherit; }
.hh-header__toggle-label { font: 600 11px/1 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.hh-header__hamburger { display: grid; gap: 4px; width: 23px; }
.hh-header__hamburger i { display: block; width: 100%; height: 1.5px; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
.hh-header__toggle[aria-expanded='true'] .hh-header__hamburger i:nth-child(1) { transform: translateY(5.5px) rotate(45deg); }
.hh-header__toggle[aria-expanded='true'] .hh-header__hamburger i:nth-child(2) { opacity: 0; }
.hh-header__toggle[aria-expanded='true'] .hh-header__hamburger i:nth-child(3) { transform: translateY(-5.5px) rotate(-45deg); }
.hh-header__mobile-panel { display: none; }
.hh-header-sticky-yes { position: sticky; z-index: 999; }
.hh-header__shop-bar { position: relative; z-index: 1; width: 100%; overflow: hidden; background: #a94327; box-shadow: 0 5px 18px rgba(70, 34, 20, .12); }
.hh-header__shop-bar::before { position: absolute; inset: 0; background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.08) 42%, transparent 68%); content: ''; pointer-events: none; }
.hh-header__shop-bar-inner { position: relative; display: flex; align-items: center; justify-content: center; gap: 38px; width: 100%; max-width: 1440px; min-height: 66px; margin: 0 auto; padding: 9px 40px; }
.hh-header__shop-message { display: flex; align-items: center; gap: 15px; min-width: 0; }
.hh-header__shop-icon { display: inline-flex; flex: 0 0 auto; color: #e6c99c; }
.hh-header__shop-icon svg { width: 38px; height: 38px; fill: none; stroke: currentColor; stroke-width: 1.15; stroke-linecap: round; stroke-linejoin: round; }
.hh-header__shop-copy { display: flex; align-items: center; gap: 18px; min-width: 0; }
.hh-header__shop-kicker { color: #e6c99c; font: 700 12px/1.25 Arial, Helvetica, sans-serif; letter-spacing: .12em; white-space: nowrap; }
.hh-header__shop-divider { display: block; flex: 0 0 auto; width: 1px; height: 25px; background: #e6c99c; opacity: .48; }
.hh-header__shop-text { color: #fff8ef; font: 400 15px/1.35 Georgia, 'Times New Roman', serif; white-space: nowrap; }
.hh-header__shop-button { display: inline-flex; align-items: center; justify-content: center; gap: 11px; flex: 0 0 auto; min-height: 39px; padding: 10px 19px; border: 1px solid #e6c99c; border-radius: 3px; background: #f8e8d1; color: #412d24; font: 700 11px/1 Arial, Helvetica, sans-serif; letter-spacing: .08em; text-decoration: none; white-space: nowrap; transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.hh-header__shop-button:hover,
.hh-header__shop-button:focus { background: #fff; color: #412d24; transform: translateY(-1px); box-shadow: 0 6px 18px rgba(54, 27, 17, .18); }
.hh-header__shop-arrow { color: #e6c99c; font-size: 17px; line-height: .7; transition: transform .2s ease; }
.hh-header__shop-button:hover .hh-header__shop-arrow,
.hh-header__shop-button:focus .hh-header__shop-arrow { transform: translateX(3px); }

@media (max-width: 1100px) {
  .hh-header__inner { grid-template-columns: minmax(150px, 1fr) auto; }
  .hh-header__nav { display: none; }
  .hh-header__toggle { display: inline-flex; }
  .hh-header__mobile-panel { position: absolute; top: 100%; left: 0; right: 0; display: block; padding: 16px 24px 24px; border-top: 1px solid #e8e1d7; border-bottom: 1px solid #e8e1d7; background: #fdfbf7; box-shadow: 0 18px 30px rgba(45, 35, 25, .10); }
  .hh-header__mobile-panel[hidden] { display: none !important; }
  .hh-header__mobile-list { display: grid; }
  .hh-header__mobile-list li { border-bottom: 1px solid rgba(100, 85, 70, .12); }
  .hh-header__mobile-list a { display: flex; width: 100%; padding: 15px 2px; color: #2f2b28; font: 500 15px/1.25 Arial, sans-serif; text-decoration: none; }
  .hh-header__mobile-list .sub-menu { position: static; display: grid; margin: -4px 0 8px; padding: 0 0 0 16px; list-style: none; }
  .hh-header__mobile-cta { width: 100%; margin-top: 18px; padding-top: 15px; padding-bottom: 15px; }
  .hh-header__shop-bar-inner { gap: 22px; padding-right: 24px; padding-left: 24px; }
  .hh-header__shop-copy { display: grid; gap: 3px; }
  .hh-header__shop-divider { display: none; }
  .hh-header__shop-text { white-space: normal; }
}

@media (max-width: 767px) {
  .hh-header__inner { min-height: 64px; padding-left: 18px; padding-right: 18px; }
  .hh-header__logo img { width: 160px; max-height: 45px; }
  .hh-header__brand { max-width: 160px; font-size: 22px; }
  .hh-header__sprig { font-size: 30px; }
  .hh-header__actions { gap: 13px; }
  .hh-header__actions > .hh-header__cta { display: none; }
  .hh-header__toggle-label { display: none; }
  .hh-header__mobile-panel { padding-left: 18px; padding-right: 18px; }
  .hh-header__shop-bar-inner { justify-content: space-between; gap: 12px; min-height: 74px; padding: 10px 16px; }
  .hh-header__shop-message { gap: 10px; }
  .hh-header__shop-icon svg { width: 31px; height: 31px; }
  .hh-header__shop-kicker { font-size: 9px; letter-spacing: .08em; }
  .hh-header__shop-text { display: block; max-width: 230px; font-size: 12px; line-height: 1.25; }
  .hh-header__shop-button { min-height: 37px; padding: 9px 12px; font-size: 9px; letter-spacing: .05em; }
}

@media (max-width: 420px) {
  .hh-header__search { display: none; }
  .hh-header__actions { gap: 11px; }
  .hh-header__shop-icon { display: none; }
  .hh-header__shop-text { max-width: 190px; }
  .hh-header__shop-button { max-width: 105px; white-space: normal; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .hh-header *, .hh-header *::before, .hh-header *::after { scroll-behavior: auto !important; transition: none !important; }
}
