.elementor-kit-30611{--e-global-color-primary:#C1AB94;--e-global-color-secondary:#13182F;--e-global-color-text:#333333;--e-global-color-accent:#D9992D;--e-global-color-58680dc:#F0ECE1;--e-global-color-84700a4:#70624E;--e-global-color-ded1fbe:#DDE3D9;--e-global-color-162fb9e:#FBFAF7;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-30611 e-page-transition{background-color:#FFBC7D;}body.e-wc-error-notice .woocommerce-error, body.e-wc-error-notice .wc-block-components-notice-banner.is-error{background-color:#876D55;}body.e-wc-message-notice .woocommerce-message, body.e-wc-message-notice .wc-block-components-notice-banner.is-success{background-color:#EFECE0;}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{background-color:#AC8E6B;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{--error-message-text-color:#FFFFFF;}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{--message-message-text-color:#BFAB94;}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{--info-message-text-color:#FFFFFF;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================
   2-SLIDE HERO (Video + Image) — Fade + Dots/Arrows + Swipe
   Elementor classes to assign:
   - Outer wrapper:  hero-2slides
   - Each slide wrapper: hero-slide
   - (Optional) image slide wrapper: hero-slide--image
   Per-slide timing:
   - Add data-duration="33000" to the VIDEO slide wrapper (or any element inside it)
   - Add data-duration="8000"  to the IMAGE slide wrapper (or any element inside it)
   ========================================================== */
/* Arrows: no background, 70% opacity */
.hero-2slides .hero-arrow{
  background: transparent !important;
  opacity: .7;
  transition: opacity .2s ease;
}
.hero-2slides .hero-slide[data-href],
.hero-2slides .hero-slide [data-href]{
  cursor: pointer;
}


/* Optional: slightly stronger on hover/focus */
.hero-2slides .hero-arrow:hover,
.hero-2slides .hero-arrow:focus{
  opacity: 1;
}

/* Wrapper */
.hero-2slides{
  position: relative;
  width: 100%;
  overflow: hidden;
  touch-action: pan-y; /* allow vertical scroll; enables horizontal swipe handling */
}

/* Slides stack + fade */
.hero-2slides .hero-slide{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .6s ease;
  z-index: 1;
}

.hero-2slides .hero-slide.is-active{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
}

/* Ensure Elementor inner wrappers can stretch */
.hero-2slides .hero-slide > .e-con,
.hero-2slides .hero-slide > .elementor-container,
.hero-2slides .hero-slide > .elementor-column,
.hero-2slides .hero-slide > .elementor-widget-wrap{
  height: 100%;
}

/* Video fill (for HTML <video>) */
.hero-2slides video{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* If video is an iframe (YouTube/Vimeo) and you want it full size */
.hero-2slides iframe{
  width: 100%;
  height: 100%;
  display: block;
}

/* Image slide background: cover + centered */
.hero-2slides .hero-slide--image{
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Dots (added by JS) */
.hero-2slides .hero-dots{
  position: absolute;
  left: 50%;
  bottom: 18px;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
  z-index: 50;
}
.hero-2slides .hero-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  border: 0;
  padding: 0;
  cursor: pointer;
  background: rgba(255,255,255,.55);
  transition: transform .2s ease, background .2s ease;
}
.hero-2slides .hero-dot.is-active{
  background: rgba(255,255,255,.95);
  transform: scale(1.15);
}

/* Arrows (added by JS) */
.hero-2slides .hero-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 50;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.35);
  color: #fff;
  font-size: 26px;
  line-height: 1;
  transition: background .2s ease;
}
.hero-2slides .hero-arrow--prev{ left: 14px; }
.hero-2slides .hero-arrow--next{ right: 14px; }
.hero-2slides .hero-arrow:hover{ background: rgba(0,0,0,.5); }

@media (max-width: 767px){
  .hero-2slides .hero-arrow{ display:none; }
  .hero-2slides .hero-dots{ bottom: 12px; }
}

/* Optional: hide native HTML5 video controls (best-effort) */
.hero-2slides video::-webkit-media-controls{ display:none !important; }
.hero-2slides video::-webkit-media-controls-enclosure{ display:none !important; }/* End custom CSS */