/* BE26 v5.4.4 — existing Woo/Smartic and Elementor nested product carousels.
 * Applies only when TEST/LIVE is active, only on mobile <=767 px.
 * No global img, menu or Elementor rules. Smart Slider 3 is untouched. */
@media screen and (max-width:767px) {
  /* Elementor Popup 27006 sometimes renders after the footer without fixed-overlay styles.
     DO NOT change display: the popup must remain hidden until Elementor opens it. */
  body.be26v5-active #elementor-popup-modal-27006.dialog-widget {
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    z-index:999990!important;
    background:rgba(0,0,0,.42)!important;
    overflow:hidden!important;
  }
  body.be26v5-active #elementor-popup-modal-27006 .dialog-widget-content {
    box-sizing:border-box!important;
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    margin:0!important;
    transform:none!important;
    width:min(100vw,420px)!important;
    max-width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    background:#fff!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    border:0!important;
    border-radius:0!important;
  }
  body.be26v5-active #elementor-popup-modal-27006 .dialog-message {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    padding:54px 18px 24px!important;
    overflow:visible!important;
  }
  body.be26v5-active #elementor-popup-modal-27006 .dialog-close-button {
    position:absolute!important;z-index:30!important;top:12px!important;
    right:16px!important;left:auto!important;
    width:38px!important;height:38px!important;display:grid!important;
    place-items:center!important;color:#111!important;
    opacity:1!important;
  }
  body.be26v5-active #elementor-popup-modal-27006 nav.plus-navigation-wrap,
  body.be26v5-active #elementor-popup-modal-27006 .plus-navigation-menu,
  body.be26v5-active #elementor-popup-modal-27006 #menu-mega-menu {
    box-sizing:border-box; width:100%!important;max-width:100%!important;
    margin:0!important;padding:0!important;
  }
  body.be26v5-active #elementor-popup-modal-27006 #menu-mega-menu > li {
    position:relative!important;float:none!important;display:flex!important;
    flex-wrap:wrap!important;align-items:center!important;
    width:100%!important;min-width:0!important;margin:0!important;
    border-bottom:1px solid #f1f1f1;
  }
  body.be26v5-active #elementor-popup-modal-27006 #menu-mega-menu > li > a {
    flex:1 1 0;min-width:0;display:block!important;text-align:left!important;
    padding:13px 6px!important;font-size:15px!important;
    line-height:1.4!important;color:#222!important;text-decoration:none!important;
    white-space:normal!important;overflow-wrap:break-word;
  }
  body.be26v5-active #elementor-popup-modal-27006 .be26v5-toggle {
    position:relative;display:grid;place-items:center;flex:0 0 44px;
    width:44px;height:44px;padding:0;margin:0;border:0;
    background:transparent;color:#222;font-size:19px;font-weight:400;
    cursor:pointer;box-shadow:none;line-height:1;
  }
  body.be26v5-active #elementor-popup-modal-27006 .be26v5-toggle[aria-expanded="true"] span {transform:rotate(180deg);}
  body.be26v5-active #elementor-popup-modal-27006 ul.be26v5-subnav {
    display:none!important;flex:0 0 100%;width:100%;max-width:100%;
    list-style:none!important;margin:0 0 8px!important;
    padding:4px 0 6px 10px!important;border-left:2px solid #e8eef2;
  }
  body.be26v5-active #elementor-popup-modal-27006 li.be26v5-expanded > ul.be26v5-subnav {display:block!important;}
  body.be26v5-active #elementor-popup-modal-27006 ul.be26v5-subnav > li {
    float:none!important;display:block!important;position:static!important;
    width:100%!important;margin:0!important;padding:0!important;
    background:transparent!important;
  }
  body.be26v5-active #elementor-popup-modal-27006 ul.be26v5-subnav a {
    display:block!important;text-align:left!important;padding:10px 12px!important;
    font-size:14px!important;line-height:1.38!important;color:#333!important;
    text-decoration:none!important;white-space:normal!important;overflow-wrap:break-word;
  }
  body.be26v5-active #elementor-popup-modal-27006 .be26v5-subnav a:focus-visible,
  body.be26v5-active #elementor-popup-modal-27006 .be26v5-toggle:focus-visible {
    outline:2px solid #2278ac;outline-offset:2px;
  }
  /* Scoped product/series carousels on Home and 11 Skin Needs pages only.
     Keep Elementor/Swiper in control of slide width/transform and swipe handling. */
  body.be26v5-carousel-page .elementor-widget-n-carousel.be26v5-nested-target {
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-top:8px!important;
    margin-bottom:20px!important;
    padding:0 8px!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target > .elementor-widget-container {
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    position:relative!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .e-n-carousel {
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    margin-inline:auto!important;
    padding:0!important;
  }
  /* Prevent the first 1-up frame from flashing: the PHP marker exists
     before rendering. JS releases it when geometry is ready, with fallback. */
  body.be26v5-carousel-page .be26v5-nested-target:not(.be26v5-nested-ready) .e-n-carousel {
    visibility:hidden!important;
  }
  /* Swiper not yet initialized: natural two-card placeholder without extra copies. */
  body.be26v5-carousel-page .be26v5-nested-target .e-n-carousel:not(.swiper-initialized) .swiper-wrapper {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    transform:none!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .e-n-carousel:not(.swiper-initialized) .swiper-slide {
    width:auto!important;
    margin:0!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .e-n-carousel:not(.swiper-initialized) .swiper-slide:nth-child(n+3) {
    display:none!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide {
    min-width:0!important;
    max-width:none!important; /* preserve legitimate Swiper inline px width */
    box-sizing:border-box!important;
    height:auto!important;
    align-self:stretch!important;
  }
  /* CRITICAL upper homepage carousel fix:
     previously an Elementor flex child retained its original 345px width even
     when its slide was 172.5px, so an enormous image filled the screen. */
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide > .e-con,
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide > .e-con > .e-con-inner,
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image,
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image > .elementor-widget-container {
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    flex-basis:auto!important;
    margin-inline:auto!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image {
    display:block!important;
    padding:0!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide figure.wp-caption {
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide figure.wp-caption > a {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    aspect-ratio:1 / 1!important;
    min-height:0!important;
    max-height:none!important;
    padding:7px!important;
    margin:0!important;
    background:#f5f5f5!important;
    overflow:hidden!important;
    border:0!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide figure.wp-caption > a > img,
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide figure.wp-caption img {
    display:block!important;
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:auto!important;
    padding:0!important;
    transform:none!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide figcaption.widget-image-caption {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:10px auto 0!important;
    padding:0 3px!important;
    font-size:clamp(11.5px,3.2vw,13px)!important;
    line-height:1.35!important;
    font-weight:400!important;
    text-align:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  /* Content columns should never force horizontal scrolling on the target slides. */
  body.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image .wp-caption-text {
    box-sizing:border-box!important;
    max-width:100%!important;
  }
  /* Consistent white circular controls matching approved Related Products.
     Place at image tile mid-height (not over multiline captions). */
  body.be26v5-carousel-page .be26v5-nested-target .elementor-swiper-button {
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    position:absolute!important;
    top:clamp(54px,calc((100vw - 42px) / 4),100px)!important;
    transform:translateY(-50%)!important;
    width:31px!important;
    height:31px!important;
    padding:0!important;
    border:1px solid #e5e5e5!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(0,0,0,.12)!important;
    opacity:1!important;
    color:#333!important;
    z-index:5!important;
    cursor:pointer!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .elementor-swiper-button-prev {
    left:-5px!important;right:auto!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .elementor-swiper-button-next {
    right:-5px!important;left:auto!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .elementor-swiper-button svg {
    display:block!important;
    width:12px!important;
    height:12px!important;
    fill:#333!important;
    color:#333!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .elementor-swiper-button svg path {
    fill:#333!important;
    stroke:none!important;
  }
  body.be26v5-carousel-page .be26v5-nested-target .elementor-swiper-button:focus-visible {
    outline:2px solid #2278ac!important;
    outline-offset:2px!important;
  }
  /* Smartic Slick product carousels on allowlisted pages only.
     Never touch related carousels on single products or Store/category pages. */
  body.be26v5-carousel-page .woocommerce-carousel ul.products.slick-initialized,
  body.be26v5-carousel-page .woocommerce-carousel ul.products.slick-slider {
    box-sizing:border-box;min-width:0;max-width:100%;width:100%;
  }
  body.be26v5-carousel-page .woocommerce-carousel .slick-list,
  body.be26v5-carousel-page .woocommerce-carousel .slick-track {min-width:0;}
  body.be26v5-carousel-page .woocommerce-carousel .slick-slide,
  body.be26v5-carousel-page .woocommerce-carousel .slick-slide .product-block {
    min-width:0!important;box-sizing:border-box!important;
  }
  body.be26v5-carousel-page .woocommerce-carousel ul.products .product-image img,
  body.be26v5-carousel-page .woocommerce-carousel ul.products img.attachment-woocommerce_thumbnail {
    display:block;max-width:100%!important;height:auto!important;
    object-fit:contain!important;object-position:center!important;margin-inline:auto!important;
  }
  body.be26v5-carousel-page .woocommerce-carousel ul.products .product-caption {
    white-space:normal;overflow-wrap:break-word;text-align:center;
    font-size:clamp(11.5px,3.2vw,13px);line-height:1.35;
  }
  body.be26v5-carousel-page .woocommerce-carousel .slick-arrow {
    display:grid!important;place-items:center!important;
    z-index:3!important;top:32%!important;
    transform:translateY(-50%)!important;
    width:31px!important;height:31px!important;
    border:1px solid #e5e5e5!important;
    border-radius:50%!important;background:#fff!important;
    box-shadow:0 2px 8px rgba(0,0,0,.12)!important;
    color:#333!important;
  }
  body.be26v5-carousel-page .woocommerce-carousel .slick-prev {left:0!important;right:auto!important;}
  body.be26v5-carousel-page .woocommerce-carousel .slick-next {right:0!important;left:auto!important;}

  /* This patch deliberately does not style the Smart Slider 3 banner. */
}

/* v5.4.4: No mobile hero-banner overrides. Keep the source 1920x440
   Elementor image at its natural responsive aspect ratio and original height. */

/* 5.4.1 — explicit descendant containment for Elementor's nested Swiper.
   The 2-up Swiper width alone DOES NOT shrink the inner Elementor flex/image. */
@media (max-width:767px) {
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide > .elementor-element,
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide > .elementor-element > .e-con-inner,
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image,
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image .elementor-widget-container,
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image figure {
   box-sizing:border-box!important; width:100%!important;
   min-width:0!important; max-width:100%!important;
 }
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image figure > a {
   display:flex!important;align-items:center!important;justify-content:center!important;
   aspect-ratio:1 / 1!important;box-sizing:border-box!important;
   width:100%!important;max-width:100%!important;min-width:0!important;
   padding:7px!important; background:#f5f5f5!important;overflow:hidden!important;
 }
 body.be26v5-active.be26v5-carousel-page .be26v5-nested-target .swiper-slide .elementor-widget-image figure > a > img {
   display:block!important; width:100%!important;max-width:100%!important;
   height:100%!important;max-height:100%!important;
   object-fit:contain!important;object-position:center!important;
   position:static!important;transform:none!important;
 }
}

/* v5.4.2: HOMEPAGE UPPER (4-slide) nested-carousel ONLY.
   Important: actual image proportions, no 1:1 square artboard, no fixed height.
   Elementor's resized .swiper-slide must constrain EVERY inner flex layer.
   Direct CSS :has fallback applies at first paint even before JS adds its marker.
   No changes to Home Product Series, Skin Needs, Store, single products, archives,
   Smart Slider 3, desktop or tablet. */
@media screen and (max-width:767px) {
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide {
    box-sizing:border-box!important;
    min-width:0!important;
    padding:0!important;
  }
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide .e-con,
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide .e-con-inner,
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide .elementor-widget-image,
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide .elementor-widget-image .elementor-widget-container,
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide figure.wp-caption,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide .e-con,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide .e-con-inner,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide .elementor-widget-image,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide .elementor-widget-image .elementor-widget-container,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide figure.wp-caption {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex-basis:auto!important;
    --width:100%!important;
    --content-width:100%!important;
    --container-widget-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide figure.wp-caption,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide figure.wp-caption {
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    overflow:visible!important;
  }
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide figure.wp-caption > a,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide figure.wp-caption > a {
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    padding:0!important;
    margin:0 auto!important;
    background:transparent!important;
    overflow:visible!important;
    border:none!important;
  }
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide figure.wp-caption > a img,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide figure.wp-caption > a img {
    display:block!important;
    position:static!important;
    box-sizing:border-box!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    max-width:100%!important;
    /* Maximum display height is a CAP, NOT a forced image or artboard height. */
    max-height:175px!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0 auto!important;
    padding:0!important;
    transform:none!important;
    border-radius:0!important;
  }
  body.home.be26v5-carousel-page .be26v5-first-home-slider .swiper-slide figure.wp-caption > figcaption,
  body.home.be26v5-carousel-page .elementor-widget-n-carousel:has(.elementor-element-8905a89) .swiper-slide figure.wp-caption > figcaption {
    box-sizing:border-box!important;
    margin:9px 0 0!important;
    padding:0 2px!important;
    width:100%!important;
    height:auto!important;
    min-width:0!important;
    max-width:100%!important;
    font-size:12px!important;
    line-height:1.4!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    text-align:center!important;
  }
  body.home.be26v5-carousel-page .be26v5-first-home-slider .elementor-swiper-button {
    top:86px!important;
  }
}

/* BE26 v5.4.4 — HOMEPAGE BESTSELLERS (first 4-product Nested Carousel) ONLY.
   Unlike a Swiper breakpoint hack, native horizontal scrolling cannot leave a
   one-item frame behind when Elementor later overwrites JS params, slide width
   or transform. CSS is layout-safe BEFORE JS. Other carousels are untouched.
   Source images retain aspect ratio: NO height / aspect ratio enforced. */
@media screen and (max-width:767px) {
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89),
  body.home .be26v5-first-home-slider {
    --be26-first-gap:10px;
    width:100%!important; max-width:100%!important; min-width:0!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel,
  body.home .be26v5-first-home-slider .e-n-carousel,
  body.home.be26v5-carousel-page .be26v5-first-home-slider:not(.be26v5-nested-ready) .e-n-carousel {
    visibility:visible!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-inline:contain!important;
    scroll-snap-type:x mandatory!important;
    touch-action:pan-x pan-y!important;
    scrollbar-width:none!important;
    padding:0!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel::-webkit-scrollbar,
  body.home .be26v5-first-home-slider .e-n-carousel::-webkit-scrollbar {display:none!important;}
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel .swiper-wrapper,
  body.home .be26v5-first-home-slider .e-n-carousel .swiper-wrapper,
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel:not(.swiper-initialized) .swiper-wrapper {
    display:flex!important; flex-direction:row!important;
    flex-wrap:nowrap!important; gap:var(--be26-first-gap)!important;
    align-items:stretch!important; width:100%!important; height:auto!important;
    transform:none!important; transition:none!important;
    margin:0!important; padding:0!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel .swiper-slide,
  body.home .be26v5-first-home-slider .e-n-carousel .swiper-slide,
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel:not(.swiper-initialized) .swiper-slide {
    display:block!important;
    flex:0 0 calc((100% - var(--be26-first-gap)) / 2)!important;
    flex-shrink:0!important;
    flex-grow:0!important;
    flex-basis:calc((100% - var(--be26-first-gap)) / 2)!important;
    width:calc((100% - var(--be26-first-gap)) / 2)!important;
    max-width:calc((100% - var(--be26-first-gap)) / 2)!important;
    min-width:0!important; margin:0!important; padding:0!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:normal!important;
    transform:none!important;
    overflow:visible!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel .swiper-slide .elementor-widget-image figure.wp-caption > a,
  body.home .be26v5-first-home-slider .e-n-carousel .swiper-slide .elementor-widget-image figure.wp-caption > a {
    height:auto!important;max-height:none!important;min-height:0!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    width:100%!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel .swiper-slide figure.wp-caption img,
  body.home .be26v5-first-home-slider .e-n-carousel .swiper-slide figure.wp-caption img {
    width:auto!important;height:auto!important;
    max-width:100%!important;max-height:175px!important;
    aspect-ratio:auto!important;object-fit:contain!important;
    margin:0 auto!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) .e-n-carousel .swiper-slide figure.wp-caption figcaption,
  body.home .be26v5-first-home-slider .e-n-carousel .swiper-slide figure.wp-caption figcaption {
    width:100%!important;box-sizing:border-box!important;
    font-size:12px!important;line-height:1.35!important;
    text-align:center!important;white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body.home .elementor-widget-n-carousel:has(.elementor-element-8905a89) > .elementor-widget-container,
  body.home .be26v5-first-home-slider > .elementor-widget-container {
    position:relative!important;
  }
}


/* v5.4.4 - HOME / BESTSELLERS first carousel ONLY: COLLAPSE EMPTY SPACE.
   Real-device QA found an Elementor figure.wp-caption reporting 460px tall
   although the mobile image itself is capped at 175px. That oversized figure
   determines its Swiper row height, leaving a ~300px white hole before the
   next Product Series heading. Do not modify images, sources, slide count,
   arrow functionality, desktop, Store, category pages or single products.
   Scoped :has() fallback works before the JS marker is added. */
@media only screen and (max-width:767px) {
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .e-n-carousel,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .e-n-carousel .swiper-wrapper {
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
  }
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .e-n-carousel .swiper-wrapper {
    align-items:flex-start!important;
    align-content:flex-start!important;
  }
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide > .e-con,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide > .e-con > .e-con-inner,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide .elementor-widget-image,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide .elementor-widget-image > .elementor-widget-container,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide figure.wp-caption {
    --min-height:0px!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
  }
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide > .e-con,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide > .e-con > .e-con-inner,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide .elementor-widget-image,
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide figure.wp-caption {
    flex-grow:0!important;
    align-self:flex-start!important;
    align-content:flex-start!important;
  }
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide figure.wp-caption {
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  body.home.be26v5-carousel-page :is(.be26v5-first-home-slider, .elementor-widget-n-carousel:has(.elementor-element-8905a89)) .swiper-slide figure.wp-caption > figcaption {
    align-self:stretch!important;
    flex:0 0 auto!important;
  }
}
