/* ==========================================================================
   HS Kids - Header
   Announcement bar, sticky header, logo, navigation, header icons and the
   mobile menu drawer. Uses the tokens from root.css.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Announcement bar
   -------------------------------------------------------------------------- */
.topbar {
  padding-block: .6rem;
  text-align: center;
}

.topbar__text {
  padding: 0;
  color: #fff;
  font-size: .78rem;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1.4;
}

/* --------------------------------------------------------------------------
   Sticky header
   -------------------------------------------------------------------------- */
.main-header {
  z-index: 1030;
  background: var(--hs-header);
  border-bottom: 1px solid var(--hs-border-soft);
  transition: box-shadow var(--hs-t), background-color var(--hs-t);
}

.main-header.scrolled {
  box-shadow: 0 6px 22px rgba(var(--hs-ink-rgb), .08);
}

.main-header__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  min-height: 76px;
}

.main-header__actions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: .25rem;
}

/* --------------------------------------------------------------------------
   Logo
   -------------------------------------------------------------------------- */
.brand-logo {
  display: inline-flex;
  align-items: center;
  gap: .8rem;
  flex-shrink: 1;
  min-width: 0;
  color: var(--hs-gold);
  line-height: 1;
}

.brand-logo:hover { color: var(--hs-gold); }

/* Wide logo image: cap both sides so it never pushes the header icons off-screen */
.brand-logo__img {
  display: block;
  width: auto;
  height: auto;
  max-width: 220px;
  max-height: 52px;
  object-fit: contain;
}

.brand-logo__mark {
  flex-shrink: 0;
  transition: transform var(--hs-t);
}

.brand-logo:hover .brand-logo__mark { transform: rotate(-7deg) scale(1.06); }

.brand-logo__text {
  display: flex;
  flex-direction: column;
  gap: .32rem;
}

.brand-logo__name {
  font-family: var(--hs-font-heading);
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.brand-logo__tag {
  font-family: var(--hs-font-heading);
  font-size: .5rem;
  font-weight: 500;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.brand-logo--light,
.brand-logo--light:hover { color: #fff; }

/* --------------------------------------------------------------------------
   Desktop navigation
   -------------------------------------------------------------------------- */
.hs-nav__list {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hs-nav__list a {
  position: relative;
  display: inline-block;
  padding-block: .5rem;
  font-family: var(--hs-font-heading);
  font-size: 1rem;
  font-weight: 500;
  color: var(--hs-text);
}

.hs-nav__list a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: var(--hs-gold);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--hs-t);
}

.hs-nav__list a:hover,
.hs-nav__list .current-menu-item > a,
.hs-nav__list .current_page_item > a {
  color: var(--hs-gold-dark);
}

.hs-nav__list a:hover::after,
.hs-nav__list .current-menu-item > a::after,
.hs-nav__list .current_page_item > a::after {
  transform: scaleX(1);
}

/* --------------------------------------------------------------------------
   Header icons & Search Trigger
   -------------------------------------------------------------------------- */
/* .main-header prefix outranks the Elementor kit `button` style (gold square) */
.main-header .header-action-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  min-width: 0;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  color: var(--hs-ink);
  cursor: pointer;
  transition: color var(--hs-t-fast), background-color var(--hs-t-fast), transform var(--hs-t-fast);
}

.main-header .header-action-btn:hover,
.main-header .header-action-btn:focus {
  color: var(--hs-gold-dark);
  background: var(--hs-sand);
  transform: translateY(-1px);
}

.main-header .hs-search-trigger.is-active {
  background: var(--hs-sand);
  color: var(--hs-gold-dark);
}

.hs-search-trigger.is-active .hs-search-trigger__icon--search {
  display: none !important;
}

.hs-search-trigger.is-active .hs-search-trigger__icon--close {
  display: inline-flex !important;
}

.header-badge {
  position: absolute;
  top: 2px;
  right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 999px;
  background: var(--hs-gold);
  color: #fff;
  font-family: var(--hs-font-heading);
  font-size: .62rem;
  font-weight: 700;
  line-height: 1;
}

/* --------------------------------------------------------------------------
   Slide-Down Live Search Bar (Floats above page content - zero layout shift)
   -------------------------------------------------------------------------- */
.hs-search-bar {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1025;
  background: #FFFFFF;
  border-top: 1px solid var(--hs-border-soft);
  border-bottom: 2px solid var(--hs-gold);
  box-shadow: 0 20px 45px rgba(74, 54, 38, 0.16);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-8px);
  padding-block: 0;
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0.28s;
}

.hs-search-bar.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  padding-block: 1rem 1.25rem;
}

.hs-search-bar__inner {
  max-width: min(100%, 780px);
  margin: 0 auto;
}

.hs-search-bar__form {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  margin: 0;
  padding: 0;
}

.hs-search-bar__input-box {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--hs-cream, #FAF5EE);
  border: 1.5px solid var(--hs-border, #E6DACB);
  border-radius: var(--hs-radius, 8px);
  padding: 0.35rem 0.85rem;
  transition: border-color var(--hs-t-fast), box-shadow var(--hs-t-fast), background var(--hs-t-fast);
}

.hs-search-bar__input-box:focus-within {
  border-color: var(--hs-gold, #C1A172);
  box-shadow: 0 0 0 3px rgba(193, 161, 114, 0.18);
  background: #FFFFFF;
}

.hs-search-bar__icon,
.hs-search-bar__icon-leading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--hs-gold, #C1A172);
  margin-right: 0.65rem;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}
.hs-search-bar__icon svg,
.hs-search-bar__icon-leading svg,
.hs-search-bar__icon i,
.hs-search-bar__icon-leading i {
  color: var(--hs-gold, #C1A172);
  stroke: var(--hs-gold, #C1A172);
}

.hs-search-bar__input,
input.hs-search-bar__input,
.hs-search-bar input[type="search"] {
  border: none !important;
  outline: none !important;
  outline-width: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  width: 100% !important;
  font-family: var(--hs-font-body) !important;
  font-size: 1rem !important;
  color: var(--hs-ink, #4A3626) !important;
  padding: 0.45rem 0 !important;
  margin: 0 !important;
  min-height: auto !important;
  height: auto !important;
}

.hs-search-bar__input:focus,
.hs-search-bar__input:focus-visible,
.hs-search-bar__input:active,
input.hs-search-bar__input:focus,
input.hs-search-bar__input:focus-visible,
.hs-search-bar input[type="search"]:focus,
.hs-search-bar input[type="search"]:focus-visible {
  border: none !important;
  outline: none !important;
  outline-width: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.hs-search-bar__input::placeholder {
  color: var(--hs-muted, #9A8672);
}

/* Remove WebKit native search cancel button and decorations to avoid double 'x' */
.hs-search-bar__input::-webkit-search-decoration,
.hs-search-bar__input::-webkit-search-cancel-button,
.hs-search-bar__input::-webkit-search-results-button,
.hs-search-bar__input::-webkit-search-results-decoration {
  -webkit-appearance: none !important;
  appearance: none !important;
  display: none !important;
}

/* Ensure search bar action buttons stay clean, transparent & circular across all kit styles */
.hs-search-bar button,
.elementor-kit-22 .hs-search-bar button,
.elementor-kit-22 button.hs-search-bar__btn-clear,
.elementor-kit-22 button.hs-search-bar__btn-close,
.hs-search-bar__btn-clear,
.hs-search-bar__btn-close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--hs-muted, #9A8672) !important;
  cursor: pointer !important;
  padding: 0 !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  border-radius: 50% !important;
  margin-left: 0.25rem !important;
  line-height: 1 !important;
  transition: color var(--hs-t-fast), background-color var(--hs-t-fast);
}

.hs-search-bar__btn-clear i,
.hs-search-bar__btn-clear svg,
.hs-search-bar__btn-close i,
.hs-search-bar__btn-close svg {
  color: inherit !important;
  font-size: 1rem !important;
}

.hs-search-bar__btn-clear:hover,
.elementor-kit-22 button.hs-search-bar__btn-clear:hover {
  background-color: rgba(181, 83, 60, 0.12) !important;
  color: var(--hs-sale, #B5533C) !important;
}

.hs-search-bar__btn-close:hover,
.elementor-kit-22 button.hs-search-bar__btn-close:hover {
  background-color: rgba(193, 161, 114, 0.16) !important;
  color: var(--hs-gold-dark, #A98856) !important;
}

/* --------------------------------------------------------------------------
   Live Search Results Container & Infinite Scroll
   -------------------------------------------------------------------------- */
.hs-search-bar__results {
  margin-top: 0.85rem;
  max-height: min(60vh, 460px);
  overflow-y: auto;
  background: #FFFFFF;
  border: 1px solid var(--hs-border);
  border-radius: var(--hs-radius, 8px);
  box-shadow: 0 12px 28px rgba(74, 54, 38, 0.08);
  padding: 1.15rem 1.25rem;
}

.hs-search-bar__results::-webkit-scrollbar {
  width: 6px;
}
.hs-search-bar__results::-webkit-scrollbar-track {
  background: var(--hs-sand);
  border-radius: 999px;
}
.hs-search-bar__results::-webkit-scrollbar-thumb {
  background: var(--hs-gold);
  border-radius: 999px;
}

.fl-ls-status {
  padding: 1.25rem;
  text-align: center;
  color: var(--hs-text);
  font-size: 0.95rem;
  margin: 0;
}

.fl-ls-status.is-empty {
  color: var(--hs-muted);
}

.fl-ls-section {
  margin-bottom: 1.25rem;
}
.fl-ls-section:last-of-type {
  margin-bottom: 0.5rem;
}

.fl-ls-heading {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-family: var(--hs-font-heading);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--hs-gold-dark);
  margin-bottom: 0.65rem;
  padding-bottom: 0.35rem;
  border-bottom: 1.5px solid var(--hs-border-soft);
}

.fl-ls-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

/* Category items in search */
.fl-ls-item--cat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.55rem 0.85rem;
  border-radius: 6px;
  background: var(--hs-cream);
  color: var(--hs-ink);
  font-weight: 500;
  font-size: 0.88rem;
  text-decoration: none;
  transition: background var(--hs-t-fast), color var(--hs-t-fast), transform var(--hs-t-fast);
}

.fl-ls-item--cat:hover,
.fl-ls-item--cat:focus {
  background: var(--hs-sand);
  color: var(--hs-gold-dark);
  transform: translateX(4px);
}

.fl-ls-item--cat .fl-ls-icon {
  color: var(--hs-gold);
  margin-right: 0.6rem;
  font-size: 0.9rem;
}

.fl-ls-item--cat .fl-ls-meta {
  font-size: 0.75rem;
  color: var(--hs-muted);
  margin-left: 0.5rem;
}

.fl-ls-item--cat .fl-ls-go {
  font-size: 0.75rem;
  color: var(--hs-muted);
  transition: transform var(--hs-t-fast), color var(--hs-t-fast);
}

.fl-ls-item--cat:hover .fl-ls-go {
  transform: translateX(3px);
  color: var(--hs-gold-dark);
}

/* Product items in search */
.fl-ls-products {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.fl-ls-item {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.55rem 0.75rem;
  border-radius: 6px;
  text-decoration: none;
  color: var(--hs-ink);
  border-bottom: 1px solid var(--hs-border-soft);
  transition: background var(--hs-t-fast), transform var(--hs-t-fast);
}

.fl-ls-item:hover,
.fl-ls-item:focus {
  background: var(--hs-cream);
  transform: translateX(3px);
}

.fl-ls-thumb {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--hs-sand);
}

.fl-ls-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fl-ls-info {
  flex-grow: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.fl-ls-name {
  font-family: var(--hs-font-heading);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--hs-ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fl-ls-name mark,
.fl-ls-name .kw-highlight {
  background: rgba(193, 161, 114, 0.25);
  color: var(--hs-gold-dark);
  padding: 0 2px;
  border-radius: 2px;
}

.fl-ls-meta {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 0.15rem;
}

.fl-ls-off {
  font-size: 0.68rem;
  font-weight: 700;
  color: #fff;
  background: var(--hs-sale);
  padding: 1px 5px;
  border-radius: 999px;
}

.fl-ls-out {
  font-size: 0.7rem;
  color: var(--hs-muted);
}

.fl-ls-price {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--hs-gold-dark);
  white-space: nowrap;
}

.fl-ls-price del {
  color: var(--hs-muted);
  font-size: 0.75rem;
  margin-right: 4px;
}

.fl-ls-price ins {
  text-decoration: none;
  color: var(--hs-sale);
}

/* Loader & Spinner for Infinite Scroll */
.fl-ls-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  padding: 0.9rem 0;
  font-size: 0.85rem;
  color: var(--hs-gold-dark);
  font-weight: 500;
}

.fl-ls-spinner {
  width: 18px;
  height: 18px;
  border: 2px solid var(--hs-sand);
  border-top-color: var(--hs-gold);
  border-radius: 50%;
  animation: flLsSpin 0.65s linear infinite;
}

@keyframes flLsSpin {
  to { transform: rotate(360deg); }
}

.fl-ls-all {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 0.85rem;
  padding: 0.65rem 1rem;
  border-radius: 6px;
  background: var(--hs-gold);
  color: #fff !important;
  font-family: var(--hs-font-heading);
  font-size: 0.82rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  text-decoration: none;
  transition: background var(--hs-t-fast), transform var(--hs-t-fast);
}

.fl-ls-all:hover {
  background: var(--hs-gold-dark);
  color: #fff !important;
  transform: translateY(-1px);
}

/* --------------------------------------------------------------------------
   Mobile menu drawer (80vw width from left + backdrop blur)
   -------------------------------------------------------------------------- */
#mobileNavOffcanvas.hs-drawer {
  --bs-offcanvas-width: 80vw;
  max-width: 80% !important;
  border-right: 1px solid var(--hs-border);
  border-left: 0 !important;
}

.offcanvas-backdrop.show {
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  background-color: rgba(35, 25, 15, 0.45) !important;
}

.hs-drawer {
  --bs-offcanvas-bg: var(--hs-cream);
}

.hs-drawer .offcanvas-header {
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid var(--hs-border-soft);
}

.hs-drawer .offcanvas-title {
  font-family: var(--hs-font-heading);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--hs-ink);
  margin: 0;
  padding: 0;
}

.hs-drawer .offcanvas-body { padding: 1.5rem; }

.hs-drawer__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hs-drawer__item {
  border-bottom: 1px solid var(--hs-border-soft);
}

.hs-drawer__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#mobileNavOffcanvas .hs-drawer__link,
.hs-drawer .hs-drawer__link,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__link,
.elementor-kit-22 .hs-drawer .hs-drawer__link,
.elementor-kit-22 a.hs-drawer__link,
a.hs-drawer__link {
  display: flex;
  align-items: center;
  flex-grow: 1;
  padding: 0.95rem 0;
  font-family: var(--hs-font-heading);
  font-size: 1rem;
  font-weight: 500;
  color: var(--hs-ink, #4A3626) !important;
  text-decoration: none;
  transition: color var(--hs-t-fast), padding-left var(--hs-t-fast);
}

#mobileNavOffcanvas .hs-drawer__link:hover,
#mobileNavOffcanvas .hs-drawer__link:focus,
#mobileNavOffcanvas .hs-drawer__link.is-active,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__link:hover,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__link:focus,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__link.is-active,
.elementor-kit-22 a.hs-drawer__link:hover,
.elementor-kit-22 a.hs-drawer__link:focus,
.elementor-kit-22 a.hs-drawer__link.is-active {
  color: var(--hs-gold-dark, #A98856) !important;
  padding-left: 0.35rem;
}

/* Mobile drawer arrow toggle: clean transparent chevron with NO background box */
#mobileNavOffcanvas .hs-drawer__arrow-toggle,
.hs-drawer .hs-drawer__arrow-toggle,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__arrow-toggle,
.elementor-kit-22 .hs-drawer .hs-drawer__arrow-toggle,
.elementor-kit-22 button.hs-drawer__arrow-toggle,
button.hs-drawer__arrow-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  padding: 0 0.5rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--hs-gold, #C1A172) !important;
  font-size: 0.95rem !important;
  cursor: pointer !important;
  line-height: 1 !important;
  transition: transform var(--hs-t), color var(--hs-t-fast);
}

#mobileNavOffcanvas .hs-drawer__arrow-toggle[aria-expanded="true"],
.elementor-kit-22 button.hs-drawer__arrow-toggle[aria-expanded="true"] {
  transform: rotate(180deg);
  color: var(--hs-gold-dark, #A98856) !important;
}

#mobileNavOffcanvas .hs-drawer__arrow-toggle:hover,
#mobileNavOffcanvas .hs-drawer__arrow-toggle:focus,
.elementor-kit-22 button.hs-drawer__arrow-toggle:hover,
.elementor-kit-22 button.hs-drawer__arrow-toggle:focus {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--hs-gold-dark, #A98856) !important;
  box-shadow: none !important;
}

#mobileNavOffcanvas .hs-drawer__arrow-toggle i,
#mobileNavOffcanvas .hs-drawer__arrow-toggle svg,
.elementor-kit-22 button.hs-drawer__arrow-toggle i,
.elementor-kit-22 button.hs-drawer__arrow-toggle svg {
  color: var(--hs-gold, #C1A172) !important;
  background: transparent !important;
}

/* Ensure offcanvas drawer close button is transparent */
#mobileNavOffcanvas .btn-close,
.elementor-kit-22 #mobileNavOffcanvas .btn-close,
.elementor-kit-22 button.btn-close {
  background-color: transparent !important;
  box-shadow: none !important;
}

.hs-drawer__sub {
  padding: 0.5rem 0 0.85rem 0.75rem;
  background: rgba(193, 161, 114, 0.04);
  border-radius: 6px;
  margin: 0.25rem 0 0.65rem;
}

.hs-drawer__sub-list,
.hs-drawer__col-items {
  list-style: none;
  margin: 0;
  padding: 0;
}

.hs-drawer__col-title {
  margin-top: 0.65rem;
  margin-bottom: 0.35rem;
}
.hs-drawer__col-title:first-child {
  margin-top: 0;
}

#mobileNavOffcanvas .hs-drawer__sub-link,
.hs-drawer .hs-drawer__sub-link,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__sub-link,
.elementor-kit-22 .hs-drawer .hs-drawer__sub-link,
.elementor-kit-22 a.hs-drawer__sub-link,
a.hs-drawer__sub-link {
  display: flex;
  align-items: center;
  padding: 0.42rem 0;
  font-size: 0.92rem;
  color: var(--hs-text, #6E5E4F) !important;
  text-decoration: none;
  transition: color var(--hs-t-fast), transform var(--hs-t-fast);
}

#mobileNavOffcanvas .hs-drawer__sub-link:hover,
#mobileNavOffcanvas .hs-drawer__sub-link:focus,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__sub-link:hover,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__sub-link:focus,
.elementor-kit-22 a.hs-drawer__sub-link:hover,
.elementor-kit-22 a.hs-drawer__sub-link:focus {
  color: var(--hs-gold-dark, #A98856) !important;
  transform: translateX(4px);
}

.hs-drawer__sub-icon {
  color: var(--hs-gold);
  width: 16px;
  text-align: center;
}

.hs-drawer__item-img {
  width: 24px;
  height: 24px;
  border-radius: 4px;
  object-fit: cover;
  flex-shrink: 0;
}

.hs-drawer__badge {
  font-size: 0.7rem;
  padding: 1px 6px;
  border-radius: 999px;
  background: var(--hs-sand);
  color: var(--hs-gold-dark);
  font-weight: 600;
}

.hs-drawer__contact { margin-top: auto; padding-top: 2rem; }
.hs-drawer__contact p { display: flex; gap: .6rem; padding: .3rem 0; font-size: .85rem; color: var(--hs-text); }
.hs-drawer__contact p a,
#mobileNavOffcanvas .hs-drawer__contact p a,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact p a,
.elementor-kit-22 .hs-drawer__contact p a {
  color: var(--hs-text, #6E5E4F) !important;
  text-decoration: none;
}
.hs-drawer__contact p a:hover,
#mobileNavOffcanvas .hs-drawer__contact p a:hover,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact p a:hover {
  color: var(--hs-gold-dark, #A98856) !important;
}
.hs-drawer__contact i { width: 16px; margin-top: .25rem; color: var(--hs-gold); }

/* Force crisp white text on the WhatsApp order button in the mobile drawer */
#mobileNavOffcanvas .hs-drawer__contact .btn-primary,
#mobileNavOffcanvas .hs-drawer__contact a.btn,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact .btn-primary,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact a.btn,
.elementor-kit-22 a.btn-primary,
.elementor-kit-22 .btn-primary {
  color: #FFFFFF !important;
  background-color: var(--hs-gold, #C1A172) !important;
  border-color: var(--hs-gold, #C1A172) !important;
}

#mobileNavOffcanvas .hs-drawer__contact .btn-primary *,
#mobileNavOffcanvas .hs-drawer__contact a.btn *,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact .btn-primary *,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact a.btn *,
.elementor-kit-22 a.btn-primary *,
.elementor-kit-22 .btn-primary * {
  color: #FFFFFF !important;
}

#mobileNavOffcanvas .hs-drawer__contact .btn-primary:hover,
#mobileNavOffcanvas .hs-drawer__contact a.btn:hover,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact .btn-primary:hover,
.elementor-kit-22 #mobileNavOffcanvas .hs-drawer__contact a.btn:hover,
.elementor-kit-22 a.btn-primary:hover,
.elementor-kit-22 .btn-primary:hover {
  color: #FFFFFF !important;
  background-color: var(--hs-gold-dark, #A98856) !important;
  border-color: var(--hs-gold-dark, #A98856) !important;
}

/* --------------------------------------------------------------------------
   Desktop Navigation & Multi-Column Mega Menu
   -------------------------------------------------------------------------- */
.hs-nav { align-self: stretch; }
.hs-nav__list { height: 100%; }
.hs-nav__list > li { display: flex; align-items: center; height: 100%; position: relative; }

.hs-nav__mega { position: static !important; }
.hs-nav__trigger { display: inline-flex !important; align-items: center; gap: .3rem; }
.hs-nav__chev { transition: transform var(--hs-t); }

.hs-mega {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1031;
  padding-top: 1px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity var(--hs-t), transform var(--hs-t), visibility var(--hs-t);
}

.hs-mega__inner {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 2.25rem;
  max-width: var(--hs-container, 1320px);
  margin: 0 auto;
  padding: 2.25rem 2.5rem;
  border: 1px solid var(--hs-border-soft);
  border-top: 0;
  border-radius: 0 0 var(--hs-radius-lg) var(--hs-radius-lg);
  background: #fff;
  box-shadow: 0 24px 48px rgba(var(--hs-ink-rgb), .12);
}

.hs-nav__mega:hover .hs-mega,
.hs-nav__mega:focus-within .hs-mega,
.hs-nav__mega.is-open .hs-mega { opacity: 1; visibility: visible; transform: none; }

.hs-nav__mega:hover .hs-nav__chev,
.hs-nav__mega.is-open .hs-nav__chev { transform: rotate(180deg); }

.hs-nav__mega.is-closed .hs-mega { opacity: 0; visibility: hidden; transform: translateY(8px); }
.hs-nav__mega.is-closed .hs-nav__chev { transform: none; }

/* Top heading for every column in mega menu */
.hs-mega__col .hs-mega__title {
  display: block;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1.5px solid var(--hs-border-soft);
  font-family: var(--hs-font-heading);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hs-gold-dark);
}

.hs-mega__col .hs-mega__title a {
  color: var(--hs-gold-dark);
  text-decoration: none;
  font-weight: 500;
  transition: color var(--hs-t-fast);
}

.hs-mega__col .hs-mega__title a:hover {
  color: var(--hs-gold);
}

.hs-mega__col-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.hs-mega__link {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.45rem 0.6rem;
  border-radius: 6px;
  font-family: var(--hs-font-body);
  font-size: 1rem;
  font-weight: 500;
  color: var(--hs-ink);
  text-decoration: none;
  transition: color var(--hs-t-fast), background-color var(--hs-t-fast), transform var(--hs-t-fast);
}

.hs-mega__link:hover {
  background-color: var(--hs-cream);
  color: var(--hs-gold-dark);
  transform: translateX(4px);
}

.hs-mega__item-icon {
  color: var(--hs-gold);
  font-size: 1rem;
  width: 20px;
  text-align: center;
  flex-shrink: 0;
  transition: transform var(--hs-t-fast);
}

.hs-mega__link:hover .hs-mega__item-icon {
  transform: scale(1.15);
}

.hs-mega__item-img {
  width: 28px;
  height: 28px;
  border-radius: 4px;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid var(--hs-border-soft);
}

.hs-mega__item-title {
  font-weight: 500;
  font-size: 1rem;
  color: inherit;
}

.hs-mega__item-sub {
  display: inline-block;
  font-size: 1rem;
  color: var(--hs-muted);
  font-weight: 400;
  margin-left: 0.35rem;
}

/* Classic clean dropdown for non-mega menus */
.has-dropdown { position: relative; }
.hs-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  margin: 0;
  padding: 0.5rem 0;
  list-style: none;
  background: #fff;
  border: 1px solid var(--hs-border-soft);
  border-radius: 0 0 var(--hs-radius) var(--hs-radius);
  box-shadow: 0 16px 32px rgba(var(--hs-ink-rgb), .1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity var(--hs-t), transform var(--hs-t), visibility var(--hs-t);
  z-index: 1031;
}

.has-dropdown:hover .hs-dropdown,
.has-dropdown:focus-within .hs-dropdown {
  opacity: 1;
  visibility: visible;
  transform: none;
}

.hs-dropdown li a {
  display: block;
  padding: 0.55rem 1.25rem;
  color: var(--hs-ink);
  font-size: 0.9rem;
  text-decoration: none;
  transition: background var(--hs-t-fast), color var(--hs-t-fast);
}

.hs-dropdown li a:hover {
  background: var(--hs-cream);
  color: var(--hs-gold-dark);
  padding-left: 1.5rem;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 991.98px) {
  .main-header__row { min-height: 68px; gap: .75rem; }
  .brand-logo__img { max-width: 190px; max-height: 46px; }
  .brand-logo__mark { width: 38px; height: 38px; }
  .brand-logo__name { font-size: 1.15rem; }
  .brand-logo__tag { font-size: .46rem; }
}

@media (max-width: 575.98px) {
  .main-header__row { min-height: 62px; gap: .5rem; }
  .brand-logo__img { max-width: min(165px, 44vw); max-height: 40px; }
  .main-header .header-action-btn { width: 38px; height: 38px; }
}

@media (max-width: 380px) {
  .brand-logo__tag { display: none; }
}
