.elementor-769 .elementor-element.elementor-element-3c121d9a{--display:flex;--min-height:0px;--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;--overflow:auto;border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1000;}.elementor-769 .elementor-element.elementor-element-297d78e{--display:flex;}.elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-mega-menu{--n-menu-title-font-size:var( --e-global-typography-accent-font-size );--n-menu-divider-color:var( --e-global-color-text );}.elementor-769 .elementor-element.elementor-element-255e1e4{--display:flex;}.elementor-769 .elementor-element.elementor-element-95a0c4e{--display:flex;}.elementor-769 .elementor-element.elementor-element-c691288{--n-menu-dropdown-content-max-width:fit-content;--n-menu-title-distance-from-content:0px;--n-menu-open-animation-duration:500ms;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-color-normal:#000000;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-color-active:#010101;--n-menu-toggle-icon-distance-from-dropdown:0px;--n-menu-title-normal-color-dropdown:#000000;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-769 .elementor-element.elementor-element-469779e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 20px 20px 20px;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon-wrapper{text-align:center;}.elementor-769 .elementor-element.elementor-element-469779e.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-769 .elementor-element.elementor-element-469779e.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-469779e.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-769 .elementor-element.elementor-element-469779e.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-469779e.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon{font-size:25px;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon svg{height:25px;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon-wrapper svg{width:auto;}.elementor-769 .elementor-element.elementor-element-b7c1787{--display:flex;}.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-769 .elementor-element.elementor-element-09f631b.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-769 .elementor-element.elementor-element-09f631b img{width:100%;max-width:100%;height:80px;}.elementor-769 .elementor-element.elementor-element-38f5951{--display:flex;--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:flex-end;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:020px;}.elementor-769 .elementor-element.elementor-element-d022d81{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 20px 20px 20px;}.elementor-769 .elementor-element.elementor-element-d022d81.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-d022d81.elementor-view-stacked .elementor-icon{background-color:#000000;}.elementor-769 .elementor-element.elementor-element-d022d81.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-d022d81.elementor-view-default .elementor-icon{color:#000000;border-color:#000000;}.elementor-769 .elementor-element.elementor-element-d022d81.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-d022d81.elementor-view-default .elementor-icon svg{fill:#000000;}.elementor-769 .elementor-element.elementor-element-d022d81 .elementor-icon{font-size:25px;}.elementor-769 .elementor-element.elementor-element-d022d81 .elementor-icon svg{height:25px;}.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-769 .elementor-element.elementor-element-1535e64 .elementor-menu-cart__close-button, .elementor-769 .elementor-element.elementor-element-1535e64 .elementor-menu-cart__close-button-custom{display:none;}.elementor-769 .elementor-element.elementor-element-1535e64{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--main-alignment:center;--side-cart-alignment-transform:translateX(100%);--side-cart-alignment-left:auto;--side-cart-alignment-right:0;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#000000;--toggle-button-border-width:0px;--toggle-button-border-radius:0px;--toggle-icon-size:25px;--toggle-icon-padding:20px 20px 25px 20px;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-769 .elementor-element.elementor-element-1535e64.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-1535e64 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-769 .elementor-element.elementor-element-24945da{--display:flex;--min-height:0px;--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;--overflow:auto;border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1000;}.elementor-769 .elementor-element.elementor-element-d31ca6e{--display:flex;}.elementor-769 .elementor-element.elementor-element-396fc50{--display:flex;}.elementor-769 .elementor-element.elementor-element-75fd1c4{--display:flex;}.elementor-769 .elementor-element.elementor-element-6ed9881{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-justify-content:initial;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;padding:0px 0px 0px 020px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-769 .elementor-element.elementor-element-2028875.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-769 .elementor-element.elementor-element-2028875 img{width:100%;max-width:100%;height:80px;}.elementor-769 .elementor-element.elementor-element-ea93fe6{--display:flex;--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:flex-end;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:020px;}.elementor-769 .elementor-element.elementor-element-6b1b878{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 20px 20px 20px;}.elementor-769 .elementor-element.elementor-element-6b1b878 .elementor-icon-wrapper{text-align:center;}.elementor-769 .elementor-element.elementor-element-6b1b878.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-769 .elementor-element.elementor-element-6b1b878.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-6b1b878.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-769 .elementor-element.elementor-element-6b1b878.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-6b1b878.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-769 .elementor-element.elementor-element-6b1b878 .elementor-icon{font-size:25px;}.elementor-769 .elementor-element.elementor-element-6b1b878 .elementor-icon svg{height:25px;}.elementor-769 .elementor-element.elementor-element-0daf5a4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 20px 20px 20px;}.elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-view-stacked .elementor-icon{background-color:#000000;}.elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-view-default .elementor-icon{color:#000000;border-color:#000000;}.elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-view-framed .elementor-icon, .elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-view-default .elementor-icon svg{fill:#000000;}.elementor-769 .elementor-element.elementor-element-0daf5a4 .elementor-icon{font-size:25px;}.elementor-769 .elementor-element.elementor-element-0daf5a4 .elementor-icon svg{height:25px;}.elementor-769 .elementor-element.elementor-element-167e04e .elementor-menu-cart__close-button, .elementor-769 .elementor-element.elementor-element-167e04e .elementor-menu-cart__close-button-custom{display:none;}.elementor-769 .elementor-element.elementor-element-167e04e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--main-alignment:center;--side-cart-alignment-transform:translateX(100%);--side-cart-alignment-left:auto;--side-cart-alignment-right:0;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#000000;--toggle-button-border-width:0px;--toggle-button-border-radius:0px;--toggle-icon-size:25px;--toggle-icon-padding:20px 20px 25px 20px;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-769 .elementor-element.elementor-element-167e04e.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-167e04e .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-769 .elementor-element.elementor-element-3c121d9a{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:14px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-769 .elementor-element.elementor-element-297d78e{--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;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-mega-menu{--n-menu-title-font-size:var( --e-global-typography-accent-font-size );}.elementor-769 .elementor-element.elementor-element-c691288{--n-menu-title-distance-from-content:16px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 016px;padding:0px 0px 0px 0px;--n-menu-title-justify-content:center;--n-menu-title-justify-content-mobile:center;--n-menu-toggle-align:flex-start;--n-menu-title-space-between:56px;--n-menu-icon-size:0px;--n-menu-dropdown-indicator-size:0px;--n-menu-toggle-icon-size:44px;--n-menu-toggle-icon-border-radius:0% 0% 0% 0%;--n-menu-toggle-icon-padding:0% 0% 0% 0%;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-769 .elementor-element.elementor-element-469779e{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-769 .elementor-element.elementor-element-469779e.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon-wrapper{text-align:left;}.elementor-769 .elementor-element.elementor-element-b7c1787{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-769 .elementor-element.elementor-element-09f631b.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-09f631b img{object-fit:fill;}.elementor-769 .elementor-element.elementor-element-24945da{--padding-top:14px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-769 .elementor-element.elementor-element-3c121d9a{--justify-content:space-between;--flex-wrap:nowrap;--padding-top:14px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-mega-menu{--n-menu-title-font-size:var( --e-global-typography-accent-font-size );}.elementor-769 .elementor-element.elementor-element-c691288{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--n-menu-toggle-icon-size:28px;}.elementor-769 .elementor-element.elementor-element-c691288.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-469779e{padding:6px 0px 0px 0px;}.elementor-769 .elementor-element.elementor-element-469779e.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon-wrapper{text-align:left;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon{font-size:18px;}.elementor-769 .elementor-element.elementor-element-469779e .elementor-icon svg{height:18px;}.elementor-769 .elementor-element.elementor-element-38f5951{--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:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:-10px;--margin-right:010px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:10;}.elementor-769 .elementor-element.elementor-element-e257ad9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-769 .elementor-element.elementor-element-e257ad9.elementor-element{--flex-grow:0;--flex-shrink:1;}.elementor-769 .elementor-element.elementor-element-d022d81{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 20px;padding:0px 0px 0px 0px;}.elementor-769 .elementor-element.elementor-element-d022d81.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-d022d81 .elementor-icon{font-size:18px;}.elementor-769 .elementor-element.elementor-element-d022d81 .elementor-icon svg{height:18px;}.elementor-769 .elementor-element.elementor-element-1535e64{--main-alignment:center;--space-between-buttons:14px;}.elementor-769 .elementor-element.elementor-element-24945da{--justify-content:space-between;--flex-wrap:nowrap;--padding-top:14px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-769 .elementor-element.elementor-element-d31ca6e{--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:flex-end;--align-items:center;}.elementor-769 .elementor-element.elementor-element-ea93fe6{--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:flex-end;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--z-index:200;}.elementor-769 .elementor-element.elementor-element-0daf5a4{padding:0px 0px 0px 0px;}.elementor-769 .elementor-element.elementor-element-0daf5a4.elementor-element{--align-self:center;}.elementor-769 .elementor-element.elementor-element-167e04e{--main-alignment:center;}}/* Start custom CSS for mega-menu, class: .elementor-element-c691288 *//* ===== YFEOS — Mobile off-canvas (portal-safe, no header tint) ===== */

/* Stacking just above your transparent header (z:4096) */
:root{
  --z-menu-overlay: 4098; /* under toggle, over header */
  --z-menu-panel:   4100; /* over header */
  --z-menu-toggle:  4101; /* topmost */
  --header-h: 80px;       /* fallback; JS updates this dynamically */
}

/* Panel layout & skin — applies both under #y-mobilemenu and after moving to <body> */
#y-mobilemenu .e-n-menu-wrapper[id^="menubar-"],
.y-mobilemenu-panel{
  position: fixed !important;
  inset: 0 auto 0 0;                 /* left sheet */
  width: 50vw !important;
  max-width: 480px;
  height: 100dvh !important;
  transform: translateX(-100%);      /* hidden off-canvas by default */
  transition: transform 240ms ease;
  z-index: var(--z-menu-panel) !important;

  /* layout & rhythm */
  background: var(--e-global-color-background, #fff);
  padding: 64px 32px 48px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;

  /* iOS smooth scroll & perf hints */
  -webkit-overflow-scrolling: touch;
  will-change: transform;

  /* neutralize Elementor inline stretch vars */
  --stretch-width: 100% !important;
  --stretch-left: 0px !important;
  --n-menu-dropdown-content-box-height: auto !important;
}

/* Open state (while panel is still under #y-mobilemenu) */
#y-mobilemenu:has([id^="menu-toggle-"][aria-expanded="true"])
  .e-n-menu-wrapper[id^="menubar-"]{
  transform: translateX(0);
}

/* Open state (after the panel is moved to <body>) */
.y-mobilemenu-panel.is-open{
  transform: translateX(0) !important;
}

/* REAL overlay element — never covers header area */
.y-menu-overlay{
  position: fixed;
  left: 0; right: 0;
  top: calc(var(--header-h) + env(safe-area-inset-top, 0px));
  bottom: 0;
  background: transparent;
  z-index: var(--z-menu-overlay);
  pointer-events: auto; /* click to close */
}

/* Toggle (burger/close) */
#y-mobilemenu [id^="menu-toggle-"]{
  position: relative;
  z-index: var(--z-menu-toggle) !important;
  width: 40px; height: 40px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 9999px;
  background: transparent;
  box-shadow: none;
  outline: none;
}

/* When OPEN: pin the toggle inside the sheet */
#y-mobilemenu:has([id^="menu-toggle-"][aria-expanded="true"]) [id^="menu-toggle-"]{
  position: relative;
  pointer-events: auto;
}

/* Hide burger icon while open; draw an "X" */
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="true"] svg,
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="true"] img,
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="true"] i,
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="true"] .eicon,
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="true"] .elementor-icon{
  display: none !important;
}
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="true"]::after{
  content: "×";
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial;
  font-size: 28px; line-height: 1;
  color: inherit;
}

/* Keep a small inset for the toggle when closed (optional) */
#y-mobilemenu [id^="menu-toggle-"][aria-expanded="false"]{
  padding-left: 16px;
}

/* Typography/spacing inside the panel (works in both locations) */
#y-mobilemenu .e-n-menu-wrapper .e-n-menu-heading,
.y-mobilemenu-panel .e-n-menu-heading{
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-direction: column; align-items: center;
  gap: 32px; /* 4-pt rhythm */
}

#y-mobilemenu .e-n-menu-wrapper .e-n-menu-title-container,
#y-mobilemenu .e-n-menu-wrapper .e-n-menu-title .e-link,
.y-mobilemenu-panel .e-n-menu-title-container,
.y-mobilemenu-panel .e-n-menu-title .e-link{
  display: inline-block;
  padding: 8px 0;
  text-decoration: none;
  color: inherit;
  background: transparent;
  text-align: center;
  width: 100%;
}

/* Lock body scroll while sheet is open */
body.y-lock{
  position: fixed;
  width: 100%;
  overflow: hidden;
}

/* Transparent header: avoid accidental stacking contexts */
.header--transparent{
  transform: none !important;
  filter: none !important;
  perspective: none !important;
  isolation: auto !important;
}
/* 1) Tiny z-scale */
:root{
  --z-header: 10;     /* header stacking context */
  --z-logo: 11;       /* logo above panel */
  --z-toggle: 12;     /* X/burger above everything in header */
  --z-panel: 5;       /* sheet below header/logo */
  --z-overlay: 4;     /* overlay below sheet, never over header */
  --header-h: 80px;
  --menu-top-gutter: 24px;
}

/* 2) Make the header a 'ceiling' once, then forget about Elementor's wrappers */
.site-header,
.header-transparent-mobile,
[data-elementor-type="header"]{
  position: relative;
  z-index: var(--z-header);
  isolation: isolate;           /* new, clean stacking context */
  transform: none !important;   /* avoid accidental contexts */
  filter: none !important;
  perspective: none !important;
}

/* 3) Logo just above the sheet */
#y-logo{ position: relative; z-index: var(--z-logo); }
#y-logo a{ position: relative; z-index: inherit; display: block; }
#y-logo img{ display: block; }

/* 4) Off-canvas sheet lives under the header */
#y-mobilemenu .e-n-menu-wrapper[id^="menubar-"],
.y-mobilemenu-panel{
  position: fixed !important;
  inset: 0 auto 0 0;
  width: 50vw; max-width: 480px; height: 100dvh;
  transform: translateX(-100%); transition: transform 240ms ease;
  z-index: var(--z-panel) !important;
  background: var(--e-global-color-background,#fff);
  overflow-y: auto; -webkit-overflow-scrolling: touch;
}
#y-mobilemenu:has([id^="menu-toggle-"][aria-expanded="true"])
  .e-n-menu-wrapper[id^="menubar-"]{ transform: translateX(0); }
.y-mobilemenu-panel.is-open{ transform: translateX(0) !important; }

/* 5) Toggle is fixed and always above */
#y-mobilemenu [id^="menu-toggle-"]{
  position: relative; 
  z-index: var(--z-toggle) !important;
  width: 40px; height: 40px; background: transparent; outline: none;
}

/* 6) Overlay stays below header; no tint; no display:none flicker */
.y-menu-overlay{
  position: fixed; left:0; right:0;
  top: calc(var(--header-h) + env(safe-area-inset-top,0px));
  bottom: 0;
  background: transparent;
  z-index: var(--z-overlay);
  opacity: 0; pointer-events: none; transition: opacity 120ms ease;
}
.y-menu-overlay.is-visible{ opacity: 1; pointer-events: auto; }
.y-mobilemenu-panel{
  /* override the earlier top padding */
  padding-top: calc(var(--header-h) + var(--menu-top-gutter)) !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-menu-cart, class: .elementor-element-1535e64 */#elementor-menu-cart__toggle_button svg { pointer-events: none; }
#elementor-menu-cart__toggle_button svg[aria-hidden="true"] {}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-38f5951 *//* Base: keep icons in a neat row */
.header-icons { 
  display: flex; 
  align-items: center; 
  justify-content: flex-end; 
}

/* Normalize individual widgets */
.header-icons .elementor-icon,
.header-icons .elementor-menu-cart__toggle {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

/* Mobile tweaks */
@media (max-width: 767px) {

  /* Optional: reduce size a touch for narrow screens */
  .header-icons .elementor-icon i,
  .header-icons .elementor-menu-cart__toggle i,
  .header-icons svg { font-size: 18px; width: 18px; height: 18px !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3c121d9a *//* Transparent header overlay on the homepage */
body.home .header--transparent {
  position: fixed;
  inset: 0 0 auto 0;
  height:80px;
  background: transparent;
  border: 0;
  box-shadow: none;
  z-index: 1; /* 4-based */
}

/* Turn the header solid after you leave the hero */
body.home.scrolled .header--transparent {
  background: rgba(255,255,255,0.92);
  backdrop-filter: saturate(160%) blur(8px);
  transition: background 200ms ease;
}
:root{
  --header-h: 80px;           /* your script keeps this live */
  --cart-top-gutter: 24px;    /* content sits below header line */
  --z-cart-panel: 6;          /* below header */
  --z-cart-overlay: 4;        /* below panel */
}

/* 1) Right-anchor the sheet even when Elementor adds .elementor-lightbox */
.elementor-menu-cart__container.elementor-lightbox,
.y-cart-panel.elementor-lightbox{
  left: auto !important;
  right: 0 !important;
  margin: 0 !important;
}

/* 2) The cart sheet itself (right, from top, 88vw) */
.y-cart-panel{
  position: fixed;
  top: 0;
  right: 0;
  left: auto !important;
  width: 88vw;                 /* 22×4 */
  max-width: 560px;            /* 140×4 */
  height: 100dvh;
  transform: translateX(100%);
  transition: transform 240ms ease;
  z-index: var(--z-cart-panel);
  background: var(--e-global-color-background,#fff);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  will-change: transform;
}
.y-cart-panel.is-open{ transform: translateX(0) !important; }

/* 3) Push the **content** below the header line (not just the container) */
.y-cart-panel .widget_shopping_cart_content{
  padding-top: calc(var(--header-h) + var(--cart-top-gutter)) !important;
 
}

/* 4) Overlay stays below header; click to close (you already create it in JS) */
.y-cart-overlay{
  position: fixed; left:0; right:0; top: var(--header-h); bottom:0;
  z-index: var(--z-cart-overlay);
  background: transparent;
  opacity: 0; pointer-events: none; transition: opacity 120ms ease;
  transform: translateZ(0); backface-visibility: hidden;
}
.y-cart-overlay.is-visible{ opacity:1; pointer-events:auto; }

/* 5) Use the HEADER cart toggle as the closer; hide any in-panel Xs */
.y-cart-panel .elementor-menu-cart__close-button,
.y-cart-panel .elementor-menu-cart__close,
.y-cart-panel .y-cart-close{ display:none !important; }

.elementor-widget-woocommerce-menu-cart.elementor-menu-cart--shown
  .elementor-menu-cart__toggle_button::after{
  content: "×";
  font: 700 28px/1 Manrope, system-ui, -apple-system, "Segoe UI", Roboto, Arial;
}
.elementor-widget-woocommerce-menu-cart.elementor-menu-cart--shown
  .elementor-menu-cart__toggle_button .eicon,
.elementor-widget-woocommerce-menu-cart.elementor-menu-cart--shown
  .elementor-menu-cart__toggle_button svg,
.elementor-widget-woocommerce-menu-cart.elementor-menu-cart--shown
  .elementor-menu-cart__toggle_button img{
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ea93fe6 *//* Base: keep icons in a neat row */
.header-icons { 
  display: flex; 
  align-items: center; 
  justify-content: flex-end; 
}

/* Normalize individual widgets */
.header-icons .elementor-icon,
.header-icons .elementor-menu-cart__toggle {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

/* Mobile tweaks */
@media (max-width: 767px) {

  /* Optional: reduce size a touch for narrow screens */
  .header-icons .elementor-icon i,
  .header-icons .elementor-menu-cart__toggle i,
  .header-icons svg { font-size: 22px; width: 22px; height: 22px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-24945da *//* Transparent header overlay on the homepage */
body.home .header--transparent {
  position: fixed;
  inset: 0 0 auto 0;
  height:80px;
  background: transparent;
  border: 0;
  box-shadow: none;
  z-index: 4096; /* 4-based */
}

/* Turn the header solid after you leave the hero */
body.home.scrolled .header--transparent {
  background: rgba(255,255,255,0.92);
  backdrop-filter: saturate(160%) blur(8px);
  transition: background 200ms ease;
}/* End custom CSS */
/* Start custom CSS *//* Force swap for WooCommerce's Inter variable */
@font-face{
  font-family: "Inter var";
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 75% 125%;
  font-display: swap; /* <-- the fix */
  src: url("/wp-content/plugins/woocommerce/assets/fonts/Inter-VariableFont_slnt,wght.woff2") format("woff2-variations"),
       url("/wp-content/plugins/woocommerce/assets/fonts/Inter-VariableFont_slnt,wght.woff2") format("woff2");
  /* Optional metrics to reduce CLS (tune if you notice shifts) */
  ascent-override: 90%;
  descent-override: 22%;
  line-gap-override: 0%;
}/* End custom CSS */