/**
 * Adaptive Header Experience v20.4.2
 * Stable Flatsome geometry, direct basket link and controlled desktop navigation.
 */

body.ref-adaptive-header-active{
  --ref-header-surface:#fff;
  --ref-header-soft:color-mix(in srgb,var(--ref-header-accent) 7%,#fff);
  --ref-header-line:color-mix(in srgb,var(--ref-header-dark) 12%,transparent);
  --ref-header-muted:color-mix(in srgb,var(--ref-header-dark) 68%,#fff);
  --ref-header-shadow:0 10px 28px color-mix(in srgb,var(--ref-header-dark) 9%,transparent);
}

body.ref-adaptive-header-active #header,
body.ref-adaptive-header-active .header-wrapper{
  position:relative;
  z-index:1005;
  width:100%;
  background:#fff!important;
  color:var(--ref-header-dark)!important;
  box-shadow:none!important;
}

body.ref-adaptive-header-active #header .container,
body.ref-adaptive-header-active #header .flex-row.container{
  width:min(100% - 40px,1380px)!important;
  max-width:1380px!important;
  margin-inline:auto!important;
}

/* Announcement strip */
body.ref-adaptive-header-active #top-bar{
  min-height:30px!important;
  height:30px!important;
  border:0!important;
  background:var(--ref-header-gradient)!important;
  color:#fff!important;
}

body.ref-adaptive-header-active #top-bar .flex-row{
  min-height:30px!important;
  height:30px!important;
  justify-content:center!important;
  padding:0!important;
}

body.ref-adaptive-header-active #top-bar .nav,
body.ref-adaptive-header-active #top-bar .nav>li,
body.ref-adaptive-header-active #top-bar .nav>li>a,
body.ref-adaptive-header-active #top-bar .html{
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:#fff!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  text-align:center!important;
  text-transform:uppercase!important;
}

body.ref-adaptive-header-active #top-bar .ref-header-announcement{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#fff!important;
  text-decoration:none!important;
}

body.ref-adaptive-header-active #top-bar .ref-header-announcement-dot{
  width:5px;
  height:5px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.14);
}

body.ref-adaptive-header-active.ref-header-announcement-hidden #top-bar{display:none!important}

/* Main row */
body.ref-adaptive-header-active #masthead.header-main{
  min-height:var(--ref-header-main-height)!important;
  height:var(--ref-header-main-height)!important;
  border:0!important;
  border-bottom:1px solid var(--ref-header-line)!important;
  background:#fff!important;
  box-shadow:0 5px 18px color-mix(in srgb,var(--ref-header-dark) 5%,transparent)!important;
}

body.ref-adaptive-header-active #masthead .header-inner{
  display:grid!important;
  grid-template-columns:minmax(190px,1fr) minmax(280px,var(--ref-header-logo-width)) minmax(250px,1fr)!important;
  align-items:center!important;
  gap:clamp(20px,3vw,52px)!important;
  min-height:var(--ref-header-main-height)!important;
  height:var(--ref-header-main-height)!important;
  padding:0!important;
}

body.ref-adaptive-header-active #masthead #logo{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:center!important;
  width:min(100%,var(--ref-header-logo-width))!important;
  max-width:var(--ref-header-logo-width)!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}

body.ref-adaptive-header-active #masthead #logo a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:calc(var(--ref-header-main-height) - 18px)!important;
}

body.ref-adaptive-header-active #masthead #logo img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:calc(var(--ref-header-main-height) - 22px)!important;
  margin:0 auto!important;
  object-fit:contain!important;
}

body.ref-adaptive-header-active #masthead .hide-for-medium.flex-left{
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
  min-width:0!important;
}

body.ref-adaptive-header-active #masthead .hide-for-medium.flex-right{
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  min-width:0!important;
}

body.ref-adaptive-header-active #masthead .header-nav{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  margin:0!important;
}

body.ref-adaptive-header-active #masthead .header-nav>li{
  margin:0!important;
}

body.ref-adaptive-header-active #masthead .header-divider{display:none!important}

/* Clean utility controls. Search/account are quiet, basket is the clear action. */
body.ref-adaptive-header-active #masthead .header-search>a,
body.ref-adaptive-header-active #masthead .account-item>a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--ref-header-dark)!important;
  font-size:12px!important;
  font-weight:760!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  box-shadow:none!important;
}

body.ref-adaptive-header-active #masthead .hide-for-medium.flex-right .account-item{
  position:relative;
}

body.ref-adaptive-header-active #masthead .hide-for-medium.flex-right .account-item:after{
  content:"";
  position:absolute;
  top:13px;
  right:0;
  width:1px;
  height:18px;
  background:var(--ref-header-line);
}

body.ref-adaptive-header-active #masthead .header-search>a:hover,
body.ref-adaptive-header-active #masthead .account-item>a:hover,
body.ref-adaptive-header-active #masthead .header-search>a:focus-visible,
body.ref-adaptive-header-active #masthead .account-item>a:focus-visible{
  color:var(--ref-header-accent)!important;
  background:transparent!important;
  transform:none!important;
}

body.ref-adaptive-header-active #masthead .cart-item>a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-height:44px!important;
  margin-left:12px!important;
  padding:0 16px!important;
  border:1px solid color-mix(in srgb,var(--ref-header-primary) 18%,transparent)!important;
  border-radius:12px!important;
  background:var(--ref-header-gradient)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
  text-transform:none!important;
  box-shadow:0 9px 22px color-mix(in srgb,var(--ref-header-primary) 20%,transparent)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}

body.ref-adaptive-header-active #masthead .cart-item>a:hover,
body.ref-adaptive-header-active #masthead .cart-item>a:focus-visible{
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 13px 30px color-mix(in srgb,var(--ref-header-primary) 26%,transparent)!important;
}

body.ref-adaptive-header-active #masthead .header-search>a i,
body.ref-adaptive-header-active #masthead .account-item>a i,
body.ref-adaptive-header-active #masthead .cart-item>a i{
  color:currentColor!important;
  font-size:17px!important;
}

body.ref-adaptive-header-active #masthead .ref-header-action-label,
body.ref-adaptive-header-active #masthead .account-item .header-account-title,
body.ref-adaptive-header-active #masthead .cart-item .header-cart-title{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  color:inherit!important;
  font-size:12px!important;
  font-weight:760!important;
  line-height:1!important;
  white-space:nowrap!important;
}

body.ref-adaptive-header-active #masthead .cart-item .cart-price,
body.ref-adaptive-header-active #masthead .cart-item .amount{
  color:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
}

body.ref-adaptive-header-active.ref-header-hide-cart-total #masthead .cart-item .cart-price{display:none!important}

body.ref-adaptive-header-active #masthead .cart-icon.image-icon{
  position:relative!important;
  display:grid!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
  place-items:center!important;
  border:1.5px solid currentColor!important;
  border-radius:7px 7px 9px 9px!important;
  background:transparent!important;
  color:inherit!important;
}

body.ref-adaptive-header-active #masthead .cart-icon.image-icon:before{
  content:"";
  position:absolute;
  top:-5px;
  left:50%;
  width:9px;
  height:6px;
  border:1.5px solid currentColor;
  border-bottom:0;
  border-radius:7px 7px 0 0;
  transform:translateX(-50%);
}

body.ref-adaptive-header-active #masthead .cart-icon.image-icon strong{
  display:grid!important;
  min-width:16px!important;
  height:16px!important;
  margin:0!important;
  padding:0 3px!important;
  place-items:center!important;
  border:2px solid #fff!important;
  border-radius:999px!important;
  background:var(--ref-header-accent)!important;
  color:#fff!important;
  font-size:8px!important;
  line-height:1!important;
}

/* The desktop basket is a direct link. Never allow the Flatsome hover card over the page. */
@media (min-width:850px){
  body.ref-adaptive-header-active.ref-header-cart-direct #masthead .cart-item>.nav-dropdown,
  body.ref-adaptive-header-active.ref-header-cart-direct #masthead .cart-item>ul.nav-dropdown,
  body.ref-adaptive-header-active.ref-header-cart-direct #masthead .cart-item .widget_shopping_cart{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.ref-adaptive-header-active.ref-header-cart-direct #masthead .cart-item{
    position:static!important;
  }
}

/* Navigation */
body.ref-adaptive-header-active #wide-nav{
  min-height:var(--ref-header-nav-height)!important;
  height:var(--ref-header-nav-height)!important;
  border:0!important;
  border-bottom:1px solid var(--ref-header-line)!important;
  background:#fff!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--ref-header-dark) 5%,transparent)!important;
}

body.ref-adaptive-header-active #wide-nav>.flex-row{
  min-height:var(--ref-header-nav-height)!important;
  height:var(--ref-header-nav-height)!important;
  align-items:center!important;
  justify-content:center!important;
}

body.ref-adaptive-header-active #wide-nav .flex-center{width:100%!important;min-width:0!important}

body.ref-adaptive-header-active #wide-nav .header-nav{
  display:flex!important;
  width:100%!important;
  min-width:0!important;
  min-height:var(--ref-header-nav-height)!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(8px,1.25vw,20px)!important;
  margin:0!important;
  overflow:visible!important;
}

body.ref-adaptive-header-active #wide-nav .header-nav>li{margin:0!important;flex:0 0 auto!important}
body.ref-adaptive-header-active #wide-nav .header-nav>li.ref-imenu-fit-hidden{display:none!important}

body.ref-adaptive-header-active #wide-nav .header-nav>li>a{
  position:relative!important;
  display:inline-flex!important;
  min-height:42px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 3px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--ref-header-dark)!important;
  font-size:clamp(12px,.78vw,14px)!important;
  font-weight:760!important;
  line-height:1.1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}

body.ref-adaptive-header-active #wide-nav .header-nav>li>a:after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  bottom:2px!important;
  left:0!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--ref-header-primary),var(--ref-header-accent))!important;
  opacity:0!important;
  transform:scaleX(.25)!important;
  transition:opacity .18s ease,transform .2s ease!important;
}

body.ref-adaptive-header-active #wide-nav .header-nav>li:hover>a,
body.ref-adaptive-header-active #wide-nav .header-nav>li:focus-within>a,
body.ref-adaptive-header-active #wide-nav .header-nav>li.current-menu-item>a,
body.ref-adaptive-header-active #wide-nav .header-nav>li.current-menu-ancestor>a{
  color:var(--ref-header-primary)!important;
  background:transparent!important;
  transform:none!important;
}

body.ref-adaptive-header-active #wide-nav .header-nav>li:hover>a:after,
body.ref-adaptive-header-active #wide-nav .header-nav>li:focus-within>a:after,
body.ref-adaptive-header-active #wide-nav .header-nav>li.current-menu-item>a:after,
body.ref-adaptive-header-active #wide-nav .header-nav>li.current-menu-ancestor>a:after{
  opacity:1!important;
  transform:scaleX(1)!important;
}

body.ref-adaptive-header-active #wide-nav .icon-angle-down{
  margin-left:5px!important;
  color:var(--ref-header-muted)!important;
  font-size:8px!important;
}

/* Keep search dropdown compact; mega-menu rules remain owned by the intelligent menu module. */
body.ref-adaptive-header-active #masthead .header-search>.nav-dropdown{
  width:min(420px,calc(100vw - 40px))!important;
  max-width:420px!important;
  margin-top:8px!important;
  padding:16px!important;
  overflow:visible!important;
  border:1px solid var(--ref-header-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 22px 54px color-mix(in srgb,var(--ref-header-dark) 16%,transparent)!important;
}

/* Sticky */
body.ref-adaptive-header-active.ref-header-sticky-enabled .stuck #masthead.header-main,
body.ref-adaptive-header-active.ref-header-sticky-enabled .header-wrapper.stuck #masthead.header-main{
  min-height:70px!important;
  height:70px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:var(--ref-header-shadow)!important;
  backdrop-filter:blur(18px)!important;
}

body.ref-adaptive-header-active.ref-header-sticky-enabled .stuck #masthead .header-inner,
body.ref-adaptive-header-active.ref-header-sticky-enabled .header-wrapper.stuck #masthead .header-inner{
  min-height:70px!important;
  height:70px!important;
}

body.ref-adaptive-header-active.ref-header-sticky-enabled .stuck #masthead #logo a,
body.ref-adaptive-header-active.ref-header-sticky-enabled .header-wrapper.stuck #masthead #logo a{height:58px!important}
body.ref-adaptive-header-active.ref-header-sticky-enabled .stuck #masthead #logo img,
body.ref-adaptive-header-active.ref-header-sticky-enabled .header-wrapper.stuck #masthead #logo img{max-height:50px!important}

/* Mobile / tablet */
@media (max-width:849px){
  body.ref-adaptive-header-active #header .container,
  body.ref-adaptive-header-active #header .flex-row.container{width:min(100% - 20px,760px)!important}
  body.ref-adaptive-header-active #top-bar,
  body.ref-adaptive-header-active #top-bar .flex-row{min-height:28px!important;height:28px!important}
  body.ref-adaptive-header-active #top-bar .nav>li>a,
  body.ref-adaptive-header-active #top-bar .html{font-size:9px!important;letter-spacing:.055em!important}

  body.ref-adaptive-header-active #masthead.header-main{min-height:68px!important;height:68px!important}
  body.ref-adaptive-header-active #masthead .header-inner{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr) 48px!important;
    gap:8px!important;
    min-height:68px!important;
    height:68px!important;
  }
  body.ref-adaptive-header-active #masthead #logo{
    grid-column:2!important;
    width:min(62vw,275px)!important;
    max-width:min(62vw,275px)!important;
  }
  body.ref-adaptive-header-active #masthead #logo a{height:58px!important}
  body.ref-adaptive-header-active #masthead #logo img{max-height:48px!important}
  body.ref-adaptive-header-active #masthead .show-for-medium.flex-left{grid-column:1!important;grid-row:1!important;justify-self:start!important}
  body.ref-adaptive-header-active #masthead .show-for-medium.flex-right{grid-column:3!important;grid-row:1!important;justify-self:end!important}
  body.ref-adaptive-header-active #masthead .mobile-nav{display:flex!important;align-items:center!important;margin:0!important}
  body.ref-adaptive-header-active #masthead .mobile-nav>li>a,
  body.ref-adaptive-header-active #masthead .mobile-nav .header-cart-link{
    display:grid!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center!important;
    border:1px solid var(--ref-header-line)!important;
    border-radius:12px!important;
    background:#fff!important;
    color:var(--ref-header-dark)!important;
    box-shadow:0 6px 16px color-mix(in srgb,var(--ref-header-dark) 8%,transparent)!important;
  }
  body.ref-adaptive-header-active #masthead .mobile-nav .icon-menu{color:var(--ref-header-primary)!important;font-size:21px!important}
  body.ref-adaptive-header-active #masthead .mobile-nav .cart-icon.image-icon{width:23px!important;height:23px!important;color:var(--ref-header-primary)!important}
  body.ref-adaptive-header-active #wide-nav{display:none!important}
}

@media (max-width:549px){
  body.ref-adaptive-header-active #top-bar .ref-header-announcement{
    max-width:calc(100vw - 28px);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.ref-adaptive-header-active #masthead #logo{width:min(57vw,225px)!important;max-width:min(57vw,225px)!important}
}

@media (prefers-reduced-motion:reduce){
  body.ref-adaptive-header-active #header *,
  body.ref-adaptive-header-active #header *:before,
  body.ref-adaptive-header-active #header *:after{transition:none!important;animation:none!important}
}
