.elementor-2397 .elementor-element.elementor-element-c47490e{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2397 .elementor-element.elementor-element-c47490e:not(.elementor-motion-effects-element-type-background), .elementor-2397 .elementor-element.elementor-element-c47490e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#07111C;}.elementor-2397 .elementor-element.elementor-element-c47490e.she-header{backdrop-filter:blur(15px) saturate(1.8) !important;-webkit-backdrop-filter:blur(15px) saturate(1.8) !important;}.elementor-2397 .elementor-element.elementor-element-14e7077{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2397 .elementor-element.elementor-element-43e1d5e{text-align:start;}.elementor-2397 .elementor-element.elementor-element-43e1d5e img{width:22%;max-width:21%;}.elementor-2397 .elementor-element.elementor-element-929c464{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-menu-toggle{margin-left:auto;background-color:#E2E2E200;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu .elementor-item{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:300;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item{color:#B7B9BB;fill:#B7B9BB;padding-left:0px;padding-right:0px;padding-top:3px;padding-bottom:3px;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item:focus{color:#B8965A;fill:#B8965A;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#B8965A;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed .elementor-item:before,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed .elementor-item:after{border-color:#B8965A;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#B8965A;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#B8965A;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#B8965A;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed .elementor-item:before{border-width:1px;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 1px 1px;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:1px 1px 0 0;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:1px 0 0 1px;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 1px 1px 0;}.elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-underline .elementor-item:after,
					 .elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-overline .elementor-item:before,
					 .elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-double-line .elementor-item:before,
					 .elementor-2397 .elementor-element.elementor-element-dca8652 .e--pointer-double-line .elementor-item:after{height:1px;}.elementor-2397 .elementor-element.elementor-element-dca8652{--e-nav-menu-horizontal-menu-item-margin:calc( 55px / 2 );}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:55px;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a, .elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-menu-toggle{color:#FFFFFF;fill:#FFFFFF;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown{background-color:#0201018F;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a:hover,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a:focus,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-menu-toggle:hover,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-menu-toggle:focus{color:#FFFFFF;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a:hover,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a:focus,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown a.highlighted{background-color:#0201018F;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown .elementor-item, .elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;}.elementor-2397 .elementor-element.elementor-element-dca8652 div.elementor-menu-toggle{color:#D1D1D1;}.elementor-2397 .elementor-element.elementor-element-dca8652 div.elementor-menu-toggle svg{fill:#D1D1D1;}.elementor-2397 .elementor-element.elementor-element-ffcdb19{--display:flex;--min-height:0px;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2397 .elementor-element.elementor-element-b1c006e .elementor-button{background-color:#B8965A;font-family:"AR One Sans", Sans-serif;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#B8955A;padding:15px 30px 15px 30px;}.elementor-2397 .elementor-element.elementor-element-b1c006e .elementor-button:hover, .elementor-2397 .elementor-element.elementor-element-b1c006e .elementor-button:focus{background-color:#FFFFFF;color:#505050;border-color:#FFFFFF;}.elementor-2397 .elementor-element.elementor-element-b1c006e{padding:0px 0px 0px 0px;}.elementor-2397 .elementor-element.elementor-element-b1c006e .elementor-button:hover svg, .elementor-2397 .elementor-element.elementor-element-b1c006e .elementor-button:focus svg{fill:#505050;}.elementor-2397 .elementor-element.elementor-element-76475fe{--display:flex;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-2397 .elementor-element.elementor-element-3df2d51{--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-2397 .elementor-element.elementor-element-3df2d51 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-2397 .elementor-element.elementor-element-43e1d5e img{width:28%;}}@media(min-width:768px){.elementor-2397 .elementor-element.elementor-element-c47490e{--width:84%;}.elementor-2397 .elementor-element.elementor-element-14e7077{--width:28%;}.elementor-2397 .elementor-element.elementor-element-929c464{--width:86%;}.elementor-2397 .elementor-element.elementor-element-ffcdb19{--width:19%;}.elementor-2397 .elementor-element.elementor-element-76475fe{--width:19%;}}@media(max-width:767px){.elementor-2397 .elementor-element.elementor-element-c47490e{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:stretch;--z-index:999;}.elementor-2397 .elementor-element.elementor-element-14e7077{--width:21%;}.elementor-2397 .elementor-element.elementor-element-43e1d5e img{width:60%;}.elementor-2397 .elementor-element.elementor-element-929c464{--width:20%;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main .elementor-item{padding-left:9px;padding-right:9px;padding-top:0px;padding-bottom:0px;}.elementor-2397 .elementor-element.elementor-element-dca8652{--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-2397 .elementor-element.elementor-element-dca8652 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:20px !important;}.elementor-2397 .elementor-element.elementor-element-ffcdb19{--width:46%;}.elementor-2397 .elementor-element.elementor-element-b1c006e .elementor-button{font-size:15px;padding:10px 15px 10px 15px;}}/* Start custom CSS for container, class: .elementor-element-c47490e *//* ═══════════════════════════════════════════════════════════
   DRAGON NOIR — Header FIXED v3
   Fixes: noir bg · cart button isolation · bigger fonts
          scroll shrink · animated dropdown
   ═══════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Montserrat:wght@200;300;400;500;600&display=swap');

:root {
  --gold:       #c9a96e;
  --gold-light: #e2c88a;
  --gold-dim:   #8a6f45;
  --noir:       #060606;
  --noir-card:  #0d0d0d;
  --ivory:      #f0e8d8;
  --ivory-dim:  #b8a88a;
  --t-fast:     0.28s ease;
  --t-med:      0.45s cubic-bezier(0.25,0.46,0.45,0.94);
  --t-slow:     0.7s cubic-bezier(0.25,0.46,0.45,0.94);
}

/* ═══════════════════════════════════════════════════════════
   1. FORCE TRUE NOIR — kills that dark-navy theme color
   ═══════════════════════════════════════════════════════════ */
.elementor-location-header,
.elementor-location-header *:not(.sub-menu):not(.sub-menu *) {
  background-color: transparent !important;
}

/* Prevent layout breaking & overflow issues across all screens */
.elementor-location-header,
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-row,
.elementor-location-header .elementor-column,
.elementor-location-header .e-con,
.elementor-location-header .e-con-inner {
  overflow: visible !important;
}

/* Force compact header heights globally on desktop */
.elementor-location-header,
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header > .e-con,
.elementor-location-header .e-con-inner {
  height:          72px !important;
  min-height:      72px !important;
  max-height:      72px !important;
  padding-top:     0 !important;
  padding-bottom:  0 !important;
  box-sizing:      border-box !important;
}

.elementor-location-header .elementor-container,
.elementor-location-header .e-con-inner {
  display:         flex !important;
  flex-flow:       row nowrap !important;
  justify-content: space-between !important;
  align-items:     center !important;
}

.elementor-location-header {
  background:      #060606 !important;
  background-color:#060606 !important;
  border-bottom:   1px solid rgba(201,169,110,0.12) !important;
  position:        sticky !important;
  top:             0 !important;
  left:            0 !important;
  right:           0 !important;
  width:           100% !important;
  z-index:         9999 !important;
  transition:      background 0.4s ease, box-shadow 0.4s ease, height 0.3s ease, min-height 0.3s ease, max-height 0.3s ease !important;
}

/* Every section/container inside header → transparent so noir shows through */
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-row,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-widget-wrap,
.elementor-location-header .elementor-widget-container,
.elementor-location-header .e-con,
.elementor-location-header .e-con-inner,
.elementor-location-header .e-flex {
  background:       transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Scrolled state */
.dn-scrolled .elementor-location-header {
  background:  rgba(6,6,6,0.97) !important;
  box-shadow:  0 2px 40px rgba(0,0,0,0.7) !important;
  border-color:rgba(201,169,110,0.20) !important;
}

/* ═══════════════════════════════════════════════════════════
   2. NAV LINKS — bigger, luxury
   ═══════════════════════════════════════════════════════════ */

/* Force desktop main menu to lay out in a single horizontal row (no wrapping) */
.elementor-location-header .elementor-nav-menu:not(.elementor-nav-menu--dropdown) {
  display:         flex !important;
  flex-flow:       row nowrap !important;
  align-items:     center !important;
  justify-content: center !important;
}

.elementor-location-header .elementor-nav-menu:not(.elementor-nav-menu--dropdown) > li {
  display:         inline-block !important;
  white-space:     nowrap !important;
  flex:            0 0 auto !important;
}

.elementor-location-header .elementor-nav-menu li a,
.elementor-location-header .elementor-widget-nav-menu ul li a {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       10px !important;           /* ← bigger */
  font-weight:     300 !important;
  letter-spacing:  0.26em !important;
  text-transform:  uppercase !important;
  color:           var(--ivory-dim) !important;
  text-decoration: none !important;
  padding:         8px 2px !important;
  display:         inline-block !important;
  position:        relative !important;
  transition:      color var(--t-fast) !important;
  white-space:     nowrap !important;
  background:      transparent !important;
}

/* Gold underline sweep on hover */
.elementor-location-header .elementor-nav-menu > li > a::after {
  content:          '' !important;
  position:         absolute !important;
  bottom:           -2px !important;
  left:             0 !important;
  width:            100% !important;
  height:           1px !important;
  background:       linear-gradient(90deg, var(--gold-dim), var(--gold)) !important;
  transform:        scaleX(0) !important;
  transform-origin: left !important;
  transition:       transform 0.36s cubic-bezier(0.25,0.46,0.45,0.94) !important;
}
.elementor-location-header .elementor-nav-menu > li:hover > a,
.elementor-location-header .elementor-nav-menu > li.current-menu-item > a {
  color: var(--ivory) !important;
}
.elementor-location-header .elementor-nav-menu > li:hover > a::after,
.elementor-location-header .elementor-nav-menu > li.current-menu-item > a::after {
  transform: scaleX(1) !important;
}

/* Dropdown arrow */
.elementor-location-header .elementor-nav-menu li.menu-item-has-children > a {
  padding-right: 16px !important;
}
.elementor-location-header .elementor-nav-menu li.menu-item-has-children > a::before {
  content:       '' !important;
  position:      absolute !important;
  right:         0 !important;
  top:           50% !important;
  width:         5px !important;
  height:        5px !important;
  border-right:  1px solid var(--gold-dim) !important;
  border-bottom: 1px solid var(--gold-dim) !important;
  transform:     translateY(-65%) rotate(45deg) !important;
  transition:    transform var(--t-fast), border-color var(--t-fast) !important;
}
.elementor-location-header .elementor-nav-menu li.menu-item-has-children:hover > a::before {
  transform:    translateY(-35%) rotate(-135deg) !important;
  border-color: var(--gold) !important;
}

/* ═══════════════════════════════════════════════════════════
   3. DROPDOWN PANEL — animated luxury reveal
   ═══════════════════════════════════════════════════════════ */
.elementor-location-header .elementor-nav-menu .sub-menu {
  position:        absolute !important;
  /* KEY FIX: top:100% with padding-top as invisible hover bridge
     No gap means mouse never loses li:hover state */
  top:             100% !important;
  left:            50% !important;
  transform:       translateX(-50%) translateY(-6px) !important;
  min-width:       200px !important;

  /* padding-top = invisible hover bridge — mouse stays inside li */
  padding:         14px 0 10px !important;
  list-style:      none !important;
  margin:          0 !important;
  z-index:         99999 !important;

  background:      rgba(6,6,6,0.98) !important;
  border:          1px solid rgba(201,169,110,0.16) !important;
  border-top:      2px solid var(--gold) !important;
  border-radius:   0 0 6px 6px !important;
  box-shadow:      0 20px 60px rgba(0,0,0,0.85) !important;

  opacity:         0 !important;
  visibility:      hidden !important;
  pointer-events:  none !important;
  transition:
    opacity    0.28s ease,
    transform  0.28s cubic-bezier(0.25,0.46,0.45,0.94),
    visibility 0.28s !important;
}

.elementor-location-header .elementor-nav-menu li.menu-item-has-children {
  position: relative !important;
}

.elementor-location-header .elementor-nav-menu li.menu-item-has-children:hover > .sub-menu {
  opacity:        1 !important;
  visibility:     visible !important;
  pointer-events: auto !important;
  transform:      translateX(-50%) translateY(0) !important;
}

/* Sub-menu items */
.elementor-location-header .elementor-nav-menu .sub-menu li {
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
}
.elementor-location-header .elementor-nav-menu .sub-menu li:last-child {
  border-bottom: none !important;
}

.elementor-location-header .elementor-nav-menu .sub-menu li a {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       9px !important;            /* ← bigger than before */
  font-weight:     300 !important;
  letter-spacing:  0.20em !important;
  text-transform:  uppercase !important;
  color:           var(--ivory-dim) !important;
  text-decoration: none !important;
  padding:         12px 22px !important;
  display:         block !important;
  white-space:     nowrap !important;
  position:        relative !important;
  background:      transparent !important;
  transition:      color var(--t-fast), padding-left var(--t-fast), background var(--t-fast) !important;
}

/* Left gold bar accent */
.elementor-location-header .elementor-nav-menu .sub-menu li a::before {
  content:       '' !important;
  position:      absolute !important;
  left:          0 !important;
  top:           18% !important;
  height:        64% !important;
  width:         2px !important;
  background:    var(--gold) !important;
  transform:     scaleY(0) !important;
  transform-origin: center !important;
  transition:    transform 0.22s ease !important;
  border-radius: 0 2px 2px 0 !important;
}
/* Prevent the gold underline sweep on sub-menu items */
.elementor-location-header .elementor-nav-menu .sub-menu li a::after {
  display: none !important;
  content: none !important;
}

.elementor-location-header .elementor-nav-menu .sub-menu li a:hover {
  color:        var(--ivory) !important;
  background:   rgba(201,169,110,0.06) !important;
  padding-left: 30px !important;
}
.elementor-location-header .elementor-nav-menu .sub-menu li a:hover::before {
  transform: scaleY(1) !important;
}

/* ═══════════════════════════════════════════════════════════
   4. CTA BUTTON — ONLY targets non-cart buttons
   Key: exclude .elementor-widget-woocommerce-menu-cart buttons
   ═══════════════════════════════════════════════════════════ */
.elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart) .elementor-button-wrapper .elementor-button,
.elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart) a.elementor-button {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       9px !important;            /* ← bigger */
  font-weight:     500 !important;
  letter-spacing:  0.28em !important;
  text-transform:  uppercase !important;
  color:           #060606 !important;
  background:      var(--gold) !important;
  background-color:var(--gold) !important;
  border:          1px solid var(--gold) !important;
  border-radius:   3px !important;
  padding:         11px 24px !important;
  text-decoration: none !important;
  display:         inline-block !important;
  transition:      background var(--t-fast), border-color var(--t-fast) !important;
  box-shadow:      none !important;
  text-shadow:     none !important;
}
.elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart) .elementor-button-wrapper .elementor-button:hover {
  background:       var(--gold-light) !important;
  background-color: var(--gold-light) !important;
  border-color:     var(--gold-light) !important;
  color:            #060606 !important;
}

/* ═══════════════════════════════════════════════════════════
   5. CART BUTTON — clean, isolated, NOT affected by CTA rules
   ═══════════════════════════════════════════════════════════ */

/* Reset — remove any accidental styling on the cart widget wrapper */
.elementor-location-header .elementor-widget-woocommerce-menu-cart,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-widget-container,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper {
  background:       transparent !important;
  background-color: transparent !important;
  border:           none !important;
  padding:          0 !important;
  margin:           0 !important;
  box-shadow:       none !important;
}

/* The actual cart toggle button container */
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle a,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button {
  background:       transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow:       none !important;
  text-shadow:      none !important;
  text-decoration:  none !important;
  display:          inline-flex !important;
  align-items:      center !important;
  justify-content:  center !important;
  vertical-align:   middle !important;
}

.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button {
  border:           1px solid rgba(201,169,110,0.3) !important;
  border-radius:    3px !important;
  padding:          8px 14px !important;
  color:            var(--gold) !important;
  font-family:      'Montserrat', sans-serif !important;
  font-size:        9px !important;
  font-weight:      400 !important;
  letter-spacing:   0.22em !important;
  text-transform:   uppercase !important;
  gap:              8px !important;
  cursor:           pointer !important;
  transition:       border-color var(--t-fast), background var(--t-fast), color var(--t-fast) !important;
  position:         relative !important;
}

.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button:hover {
  background:       rgba(201,169,110,0.06) !important;
  border-color:     var(--gold) !important;
  color:            var(--gold-light) !important;
}

/* Force inner contents to follow layout rules */
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button * {
  color:            inherit !important;
  font-family:      inherit !important;
  font-size:        inherit !important;
  font-weight:      inherit !important;
  letter-spacing:   inherit !important;
  text-transform:   inherit !important;
  line-height:      1 !important;
}

/* Cart icon styling */
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon svg,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon i,
.elementor-location-header .elementor-menu-cart__toggle .e-font-icon-svg {
  fill:   var(--gold) !important;
  color:  var(--gold) !important;
  stroke: none !important;
  width:  16px !important;
  height: 16px !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

/* Explicitly style the counter badge to override inheritance */
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button [data-counter],
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button .e-toggle-button__counter,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button .elementor-button-icon [data-counter] {
  background:      var(--gold) !important;
  color:           #060606 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       8px !important;
  font-weight:     600 !important;
  width:           16px !important;
  height:          16px !important;
  border-radius:   50% !important;
  display:         inline-flex !important;
  align-items:     center !important;
  justify-content: center !important;
  border:          none !important;
  padding:         0 !important;
  margin-left:     6px !important;
  letter-spacing:  0 !important;
  vertical-align:  middle !important;
}

/* ═══════════════════════════════════════════════════════════
   6. SCROLL SHRINK — body.dn-scrolled class (set via JS)
   ═══════════════════════════════════════════════════════════ */
.elementor-location-header,
.elementor-location-header .elementor-container,
.elementor-location-header .e-con-inner,
.elementor-location-header .e-con {
  transition: padding 0.3s ease, min-height 0.3s ease, background 0.3s ease, box-shadow 0.3s ease, height 0.3s ease, max-height 0.3s ease !important;
}

.dn-scrolled .elementor-location-header {
  box-shadow:  0 4px 32px rgba(0,0,0,0.75) !important;
}

/* Shrink header height on scroll */
.dn-scrolled .elementor-location-header,
.dn-scrolled .elementor-location-header .elementor-section,
.dn-scrolled .elementor-location-header .elementor-container,
.dn-scrolled .elementor-location-header > .e-con,
.dn-scrolled .elementor-location-header .e-con-inner {
  height:          56px !important;
  min-height:      56px !important;
  max-height:      56px !important;
}

/* Shrink nav text when scrolled */
.dn-scrolled .elementor-location-header .elementor-nav-menu > li > a {
  font-size: 8.5px !important;
}

/* Shrink CTA when scrolled */
.dn-scrolled .elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart) .elementor-button-wrapper .elementor-button {
  padding:   8px 16px !important;
  font-size: 7.5px !important;
}

/* Shrink cart button when scrolled */
.dn-scrolled .elementor-location-header .elementor-menu-cart__toggle .elementor-button {
  padding: 6px 10px !important;
}

/* ═══════════════════════════════════════════════════════════
   7. RESPONSIVE LAYOUTS & MOBILE/TABLET FIXES
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  /* Prevent columns and widgets from being relative positioning anchors on mobile/tablet.
     This anchors the dropdown menu to the main header container, making it span the full screen width. */
  .elementor-location-header .elementor-container,
  .elementor-location-header .elementor-row,
  .elementor-location-header .e-con,
  .elementor-location-header .e-con-inner,
  .elementor-location-header .elementor-column,
  .elementor-location-header .elementor-column-wrap,
  .elementor-location-header .elementor-widget,
  .elementor-location-header .elementor-widget-wrap,
  .elementor-location-header .elementor-widget-container {
    position: static !important;
  }

  /* Force top-level header containers to layout as a single horizontal row and limit height */
  .elementor-location-header > .e-con,
  .elementor-location-header .elementor-container,
  .elementor-location-header .elementor-row,
  .elementor-location-header .e-con-inner {
    display:         flex !important;
    flex-direction:  row !important;
    flex-wrap:       nowrap !important;
    justify-content: space-between !important;
    align-items:     center !important;
    width:           100% !important;
    box-sizing:      border-box !important;
    height:          54px !important;     /* Slim mobile/tablet height! */
    min-height:      54px !important;
    max-height:      54px !important;
    padding-top:     0 !important;
    padding-bottom:  0 !important;
  }

  /* Horizontal paddings on the main header row */
  .elementor-location-header > .e-con,
  .elementor-location-header .elementor-container {
    padding-left:    16px !important;
    padding-right:   16px !important;
  }

  /* Force columns to lay out side-by-side in a row (no wrapping) */
  .elementor-location-header .elementor-column,
  .elementor-location-header .e-con-inner > .e-con,
  .elementor-location-header > .e-con > .e-con {
    width:           auto !important;
    max-width:       max-content !important;
    min-width:       0 !important;
    display:         flex !important;
    flex-direction:  row !important;
    flex-wrap:       nowrap !important;
    align-items:     center !important;
    justify-content: center !important;
    flex:            0 1 auto !important;
    height:          100% !important;
  }

  /* Vertically center all widgets inside header columns */
  .elementor-location-header .elementor-widget-wrap,
  .elementor-location-header .elementor-widget-container {
    display:         flex !important;
    align-items:     center !important;
    justify-content: center !important;
    height:          100% !important;
  }

  /* Distribute columns: Logo left, utility/menu right */
  .elementor-location-header .elementor-container > .elementor-column:first-child,
  .elementor-location-header .e-con-inner > .e-con:first-child,
  .elementor-location-header > .e-con > .e-con:first-child {
    flex:            1 1 auto !important;
    justify-content: flex-start !important;
  }
  
  /* Middle column (menu toggle) margin to space correctly */
  .elementor-location-header .elementor-container > .elementor-column:nth-child(2),
  .elementor-location-header .e-con-inner > .e-con:nth-child(2),
  .elementor-location-header > .e-con > .e-con:nth-child(2) {
    margin-left:     auto !important;
    margin-right:    12px !important;
  }

  /* Force utility/buttons container (music + cart) to lay out horizontally side-by-side */
  .elementor-location-header .elementor-column:last-child .elementor-widget-wrap,
  .elementor-location-header .elementor-column:nth-child(3) .elementor-widget-wrap,
  .elementor-location-header .elementor-widget-wrap:has(.elementor-widget-woocommerce-menu-cart),
  .elementor-location-header > .e-con > .e-con:last-child .elementor-widget-wrap {
    display:         flex !important;
    flex-direction:  row !important;
    flex-wrap:       nowrap !important;
    align-items:     center !important;
    justify-content: flex-end !important;
    gap:             10px !important;
    height:          100% !important;
  }

  /* Scale down logo slightly on tablets */
  .elementor-location-header img {
    max-height: 34px !important;
    height:     auto !important;
    width:      auto !important;
    max-width:  100% !important;
    display:    block !important;
  }

  /* Reset Elementor's default menu toggle styles (remove white box/borders) */
  .elementor-location-header .elementor-menu-toggle,
  .elementor-location-header .elementor-menu-toggle:hover,
  .elementor-location-header .elementor-menu-toggle:focus,
  .elementor-location-header .elementor-menu-toggle:active,
  .elementor-location-header .elementor-menu-toggle.elementor-active,
  .elementor-location-header .elementor-nav-menu__toggle,
  .elementor-location-header .elementor-nav-menu__toggle.elementor-active {
    background:      transparent !important;
    background-color:transparent !important;
    border:          none !important;
    border-color:    transparent !important;
    outline:         none !important;
    box-shadow:      none !important;
    padding:         0 !important;
    margin:          0 !important;
  }

  /* Hamburger/X icon styling */
  .elementor-location-header .elementor-menu-toggle i,
  .elementor-location-header .elementor-menu-toggle svg,
  .elementor-location-header .elementor-menu-toggle span,
  .elementor-location-header .elementor-nav-menu__toggle i,
  .elementor-location-header .elementor-nav-menu__toggle svg {
    color:           var(--gold) !important;
    fill:            var(--gold) !important;
    font-size:       22px !important;
    line-height:     1 !important;
  }
  .elementor-location-header .elementor-menu-toggle .elementor-menu-toggle__line {
    background-color: var(--gold) !important;
    height: 2px !important;
    width: 22px !important;
  }

  /* Force mobile dropdown list to take full width */
  .elementor-location-header .elementor-nav-menu--dropdown ul.elementor-nav-menu {
    width:      100% !important;
    min-width:  100% !important;
    padding:    0 !important;
    margin:     0 !important;
    list-style: none !important;
  }

  /* Mobile slide-down overlay styling - absolute relative to full header width */
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu__container,
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position:     absolute !important;
    top:          100% !important;
    left:         0 !important;
    right:        0 !important;
    width:        100% !important;
    background:   rgba(6,6,6,0.99) !important;
    border-top:   1px solid rgba(201,169,110,0.12) !important;
    box-shadow:   0 15px 40px rgba(0,0,0,0.9) !important;
    display:      block !important;
    max-height:   80vh !important;
    overflow-y:   auto !important;
    z-index:      999999 !important;
  }

  /* Exclude dropdown lists from flex layouts */
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu__container,
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container,
  .elementor-location-header .elementor-nav-menu--dropdown ul.elementor-nav-menu,
  .elementor-location-header .elementor-nav-menu--dropdown ul.elementor-nav-menu * {
    display:         block !important;
    height:          auto !important;
  }

  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu li a {
    font-size:     11px !important;
    padding:       16px 24px !important;
    border-bottom: 1px solid rgba(255,255,255,0.05) !important;
    color:         var(--ivory-dim) !important;
    text-align:    left !important;
    width:         100% !important;
    display:       block !important;
    box-sizing:    border-box !important;
  }

  /* Mobile sub-menu flat layout */
  .elementor-location-header .elementor-nav-menu--dropdown .sub-menu {
    position:   static !important;
    transform:  none !important;
    opacity:    1 !important;
    visibility: visible !important;
    border:     none !important;
    border-top: 1px solid rgba(201,169,110,0.08) !important;
    box-shadow: none !important;
    background: rgba(10,10,10,0.99) !important;
    padding:    0 !important;
    min-width:  unset !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown .sub-menu li a {
    padding-left: 40px !important;
    font-size:    10px !important;
  }

  /* Hide regular buttons (CTA) on tablets/mobile to prevent row clutter */
  .elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart):not(.elementor-widget-theme-site-logo):not(.elementor-widget-nav-menu) .elementor-button {
    display: none !important;
  }

  /* Enforce circular style and size on the music/audio toggle icon */
  .elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart):not(.elementor-widget-theme-site-logo):not(.elementor-widget-nav-menu) a,
  .elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart):not(.elementor-widget-theme-site-logo):not(.elementor-widget-nav-menu) button,
  .elementor-location-header .elementor-widget:not(.elementor-widget-woocommerce-menu-cart):not(.elementor-widget-theme-site-logo):not(.elementor-widget-nav-menu) .elementor-button {
    height:          30px !important;
    width:           30px !important;
    min-width:       30px !important;
    max-height:      30px !important;
    padding:         0 !important;
    display:         inline-flex !important;
    align-items:     center !important;
    justify-content: center !important;
    border:          1px solid rgba(201,169,110,0.3) !important;
    border-radius:   50% !important;
    color:           var(--gold) !important;
    background:      transparent !important;
    font-size:       11px !important;
  }
}

@media (max-width: 768px) {
  /* Make the cart toggle extremely compact on mobile */
  .elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button {
    padding:       4px 8px !important;
    gap:           4px !important;
    height:        30px !important;
    min-height:    30px !important;
    max-height:    30px !important;
  }
  
  /* Hide text "Cart", leaving only icon & counter for premium clean design */
  .elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button .elementor-button-text {
    display: none !important;
  }

  /* Scale logo down further on small mobile screens */
  .elementor-location-header img {
    max-height: 30px !important;
  }
}/* End custom CSS */