.elementor-578 .elementor-element.elementor-element-da3d72e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-578 .elementor-element.elementor-element-9d795f6{width:100%;max-width:100%;top:0px;}.elementor-578 .elementor-element.elementor-element-9d795f6 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}body:not(.rtl) .elementor-578 .elementor-element.elementor-element-9d795f6{left:0px;}body.rtl .elementor-578 .elementor-element.elementor-element-9d795f6{right:0px;}.elementor-578 .elementor-element.elementor-element-4148777{--display:flex;--min-height:119px;--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;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:57px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-578 .elementor-element.elementor-element-4148777.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-578 .elementor-element.elementor-element-371df3f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:20px;--margin-right:0px;}.elementor-578 .elementor-element.elementor-element-371df3f.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-578 .elementor-element.elementor-element-5587c06 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-578 .elementor-element.elementor-element-b7451fb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;left:83px;--margin-top:0px;--margin-bottom:0px;--margin-left:24px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-578 .elementor-element.elementor-element-b7451fb.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-578 .elementor-element.elementor-element-1a36f56 > .elementor-widget-container{margin:0px 0px 0px -14px;padding:0px 0px 0px 0px;}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu .elementor-item{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:500;word-spacing:0px;}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main .elementor-item{color:#000000;fill:#000000;}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main .elementor-item:focus{color:#FF7F2A;fill:#FF7F2A;}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#1E40AF00;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed .elementor-item:before,
					.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed .elementor-item:after{border-color:#1E40AF00;}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--dropdown .elementor-item, .elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:400;}.elementor-578 .elementor-element.elementor-element-0ed1dde{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:-227px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-578 .elementor-element.elementor-element-6bc57f6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-578 .elementor-element.elementor-element-6bc57f6{right:-34px;}.elementor-578 .elementor-element.elementor-element-64509b6{--display:flex;}.elementor-578 .elementor-element.elementor-element-26e51f0{width:var( --container-widget-width, 21% );max-width:21%;--container-widget-width:21%;--container-widget-flex-grow:0;left:-120px;right:-21px;}.elementor-578 .elementor-element.elementor-element-26e51f0 > .elementor-widget-container{margin:0px 0px 0px 19px;padding:0px 0px 0px 0px;}.elementor-578 .elementor-element.elementor-element-187efe5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-578 .elementor-element.elementor-element-da3d72e{--content-width:1600px;}.elementor-578 .elementor-element.elementor-element-4148777{--width:98.246%;}.elementor-578 .elementor-element.elementor-element-371df3f{--width:19%;}.elementor-578 .elementor-element.elementor-element-b7451fb{--width:68%;}.elementor-578 .elementor-element.elementor-element-0ed1dde{--width:25%;}}@media(max-width:1024px) and (min-width:768px){.elementor-578 .elementor-element.elementor-element-371df3f{--width:231.969px;}.elementor-578 .elementor-element.elementor-element-b7451fb{--width:439.125px;}}@media(max-width:1024px){.elementor-578 .elementor-element.elementor-element-4148777{--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-578 .elementor-element.elementor-element-5587c06 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-578 .elementor-element.elementor-element-b7451fb{--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-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu .elementor-item{font-size:18px;}.elementor-578 .elementor-element.elementor-element-6bc57f6 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-578 .elementor-element.elementor-element-4148777{--width:377px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-578 .elementor-element.elementor-element-5587c06 > .elementor-widget-container{margin:0px 0px 0px -41px;}.elementor-578 .elementor-element.elementor-element-5587c06{text-align:left;}.elementor-578 .elementor-element.elementor-element-5587c06 img{width:41%;max-width:69%;height:50px;}.elementor-578 .elementor-element.elementor-element-b7451fb{--width:897px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-578 .elementor-element.elementor-element-1a36f56.elementor-element{--align-self:flex-start;}.elementor-578 .elementor-element.elementor-element-1a36f56 .elementor-nav-menu .elementor-item{font-size:18px;line-height:1.2em;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed .elementor-item:before{border-width:0px;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 0px 0px;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:0px 0px 0 0;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:0px 0 0 0px;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 0px 0px 0;}.elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-underline .elementor-item:after,
					 .elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-overline .elementor-item:before,
					 .elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-double-line .elementor-item:before,
					 .elementor-578 .elementor-element.elementor-element-1a36f56 .e--pointer-double-line .elementor-item:after{height:0px;}}/* Start custom CSS for html, class: .elementor-element-9d795f6 *//* Bar */
.top-bar{
  background:#2E5BD6;             /* BeingSelf blue */
  color:#fff;
  width:100vw;
  margin:0;
  position:relative;
  z-index:1000;
  font-weight:600;
  font-size:14px;
}

/* Content wrapper */
.tb-wrap{
  max-width:1200px;                /* match your site/container width */
  margin:0 auto;
  padding:8px 14px;
  display:grid;
  grid-template-columns:auto 1fr auto; /* left spacer | center msg | right icons */
  align-items:center;
  gap:12px;
}

/* Centered message */
.tb-center{
  text-align:center;
  line-height:1.3;
  word-break:break-word;
}

/* Right icon group */
.tb-right{
  display:flex;
  align-items:center;
  gap:10px;
}

/* Icon button */
.tb-icon{
  position:relative;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:36px; height:36px;
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);
  text-decoration:none;
  transition:background .2s ease, transform .2s ease;
}
.tb-icon:hover{ background:rgba(255,255,255,.2); transform:translateY(-1px); }

/* Cart count badge */
.tb-cart .tb-count{
  position:absolute;
  top:-6px; right:-6px;
  min-width:18px; height:18px;
  padding:0 5px;
  border-radius:10px;
  background:#ff3b30;
  color:#fff;
  font-size:11px;
  line-height:18px;
  text-align:center;
  font-weight:700;
}

/* Responsive */
@media (max-width:900px){
  .tb-wrap{ padding:8px 10px; }
  .tb-icon{ width:32px; height:32px; }
  .tb-center{ font-size:13px; }
}
@media (max-width:600px){
  .tb-center{ font-size:12px; }
  .tb-cart .tb-count{ top:-5px; right:-5px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da3d72e */.top-bar {
    background: #2E5BD6; /* Blue background */
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    padding: 6px 0;
}/* End custom CSS */
/* Start custom CSS for theme-site-logo, class: .elementor-element-5587c06 *//* ===== Logo Styling ===== */
.site-header .custom-logo,
.site-header .logo img {
  height: auto;
  max-height: 60px;   /* controls vertical size */
  width: auto;
  object-fit: contain;
  display: block;
}

/* Tablet */
@media (max-width: 1024px) {
  .site-header .custom-logo,
  .site-header .logo img {
    max-height: 50px; /* slightly smaller */
  }
}

/* Mobile */
@media (max-width: 767px) {
  .site-header .custom-logo,
  .site-header .logo img {
    max-height: 42px; /* tighter for mobile */
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-6bc57f6 *//* Default: desktop menu inline */
.main-nav ul {
  display: flex;
  gap: 24px;
}

/* Tablet and below: hide menu, show hamburger */
@media (max-width: 1024px) {
  .main-nav ul {
    display: none;
  }
  .menu-toggle {
    display: block;
    cursor: pointer;
  }
  .main-nav.open ul {
    display: block;
    flex-direction: column;
    gap: 16px;
    background: #fff;
    padding: 20px;
    position: absolute;
    top: 100%; left: 0; right: 0;
    box-shadow: 0 8px 16px rgba(0,0,0,.1);
  }
}


/* ===== Header nav + CTA overlap fix ===== */

/* Let the header use a proper flex row, no wrapping */
.elementor-location-header .elementor-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 16px;
  overflow: visible !important;
}

/* Keep columns from forcing overflow */
.elementor-location-header .elementor-column {
  min-width: 0;                 /* VERY important for flex children */
}

/* Make the middle nav block flex and shrinkable */
.elementor-location-header .elementor-widget-nav-menu {
  flex: 1 1 auto;               /* allow to shrink if needed */
  min-width: 0;
  position: relative;
  z-index: 5;                   /* below the CTAs we set later */
}

/* Horizontal nav: keep items in one row but allow smaller gaps */
.elementor-location-header .elementor-nav-menu--main.elementor-nav-menu__container {
  display: flex;
  justify-content: center;      /* center the list */
}

/* Tighter spacing & font scaling as width reduces (prevents spilling) */
.elementor-location-header .elementor-nav-menu--main .elementor-item {
  padding-inline: clamp(8px, 1vw, 16px);
  white-space: nowrap;
  font-size: clamp(14px, 1.6vw, 18px);
}

/* Right-side CTAs (Profile / Cart / buttons) should always be above nav */
.elementor-location-header .elementor-column:last-child,
.elementor-location-header .elementor-widget-button,
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-widget-woocommerce-menu-cart,
.elementor-location-header .elementor-widget-shortcode,
.elementor-location-header .elementor-widget-html {
  position: relative;
  z-index: 20;                  /* > 5 means clickable over the nav */
  pointer-events: auto;
}

/* Small desktop/tablet: reduce nav spacing further to avoid overlap */
@media (max-width: 1280px) {
  .elementor-location-header .elementor-nav-menu--main .elementor-item {
    padding-inline: clamp(6px, 0.8vw, 12px);
  }
}

/* If it still feels tight, let the nav wrap on very small widths */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--main.elementor-nav-menu__container {
    flex-wrap: wrap;
    row-gap: 6px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4148777 *//********************************************************
 * BeingSelf — Header (scoped to Elementor header only)
 ********************************************************/

/* 1) Sticky header shell */
.elementor-location-header{
  position: sticky;          /* stick (no layout jump) */
  top: 0;                    /* pin to top */
  z-index: 10010;            /* above page content & menus */
  background: #fff;          /* solid background */
}

/* If WP admin bar is visible, offset correctly */
body.admin-bar .elementor-location-header{ top: 32px; }
@media (max-width: 782px){
  body.admin-bar .elementor-location-header{ top: 46px; }
}

/* Optional: subtle shadow once header is “stuck”.
   (If you add a tiny JS to toggle .is-stuck, this will show) */
.elementor-location-header.is-stuck{
  box-shadow: 0 8px 20px rgba(0,0,0,.06);
  backdrop-filter: saturate(1.2) blur(4px); /* harmless on solid bg */
}

/* Ensure dropdowns / mega menus can overflow out of the header row */
.elementor-location-header,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-widget-wrap{
  overflow: visible !important;
}

/* Keep nav dropdowns above other content */
.elementor-location-header *{ z-index: auto; }
.elementor-location-header .elementor-nav-menu--dropdown,
.elementor-location-header .elementor-nav-menu__container{
  z-index: 10020;
}

/* 2) Header layout — scoped! (prevents global flex bugs) */
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-widget-wrap{
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;                 /* one row on wide screens */
  gap: clamp(8px, 2vw, 24px);        /* natural spacing */
}

/* Allow long items to shrink without pushing others off-screen */
.elementor-location-header .elementor-column{ min-width: 0; }
.elementor-location-header .elementor-widget-wrap{ min-width: 0; }
.elementor-location-header .elementor-widget{
  min-width: 0;
  flex: 0 1 auto;
}

/* 3) Logo sizing (scoped) */
.elementor-location-header .custom-logo,
.elementor-location-header .logo img{
  max-height: 50px;
  height: auto;
  width: auto;
  display: block;
}

/* 4) Hamburger (scoped) */
.elementor-location-header .elementor-menu-toggle{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;   /* push to the right in flex row */
  font-size: 26px;
  background: none;
  border: none;
  cursor: pointer;
}

/* 5) Tablet & below tweaks */
@media (max-width: 1024px){
  .elementor-location-header .custom-logo,
  .elementor-location-header .logo img{
    max-height: 42px;
  }
}

/* 6) Helper: if you have a blue promo bar INSIDE the header,
   give it full width and prevent it from squeezing the nav */
.elementor-location-header .promo-bar{
  width: 100%;
  flex: 0 0 auto;
  line-height: 1.35;
  text-align: center;
}

/* 7) Avoid unexpected wrapping for nav/cart/profile cluster */
.elementor-location-header .nav-cluster{
  display: flex;
  align-items: center;
  gap: clamp(8px, 1.2vw, 16px);
  min-width: 0;
  flex: 0 1 auto;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-d220572 *//* Mobile & Tablet Header: logo left, burger right */
.bs-mb-header {
  display: flex;
  align-items: center;
  justify-content: space-between; /* pushes logo left, burger right */
  padding: 10px 16px;
  background: #fff;
}

/* Force logo to stick left */
.bs-mb-header .mb-logo {
  margin: 0;
  padding: 0;
  text-align: left;
  display: flex;
  align-items: center;
}

.bs-mb-header .mb-logo img,
.bs-mb-header .mb-logo .custom-logo {
  max-height: 44px;   /* adjust size */
  width: auto;
  height: auto;
  display: block;
}

/* Burger stays on right */
.bs-mb-header .mb-burger {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  cursor: pointer;
}/* End custom CSS */