/* Easy Slides for Elementor */
.es-slider{position:relative;width:100%;overflow:hidden;touch-action:pan-y;--es-speed:600ms;--es-anim-duration:800ms}
.es-track{display:flex;height:100%;transition:transform var(--es-speed) cubic-bezier(.65,0,.35,1);will-change:transform}
.es-slide{position:relative;flex:0 0 100%;width:100%;height:100%;overflow:hidden}
.es-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;transform-origin:center}
.es-overlay{position:absolute;inset:0;pointer-events:none}

/* Fade effect */
.es-effect-fade .es-track{display:block;transform:none!important}
.es-effect-fade .es-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity var(--es-speed) ease}
.es-effect-fade .es-slide.is-active{opacity:1;pointer-events:auto;z-index:2}
.es-effect-fade .es-slide.is-leaving{z-index:1}

/* Ken Burns */
.es-kenburns .es-slide.is-active .es-bg,
.es-kenburns .es-slide.is-leaving .es-bg{animation:es-kenburns var(--es-kb,8000ms) ease-out both}

/* Content */
.es-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;height:100%;padding:40px 80px;box-sizing:border-box}
.es-inner{text-align:center}
.es-content{width:100%;max-width:700px}
.es-content>*{margin:0}
.es-content>*+*{margin-top:16px}

.es-subtitle{font-size:14px;letter-spacing:.15em;text-transform:uppercase;color:#fff;opacity:.9}
.es-heading{font-size:clamp(28px,5vw,56px);line-height:1.15;color:#fff;font-weight:700}
.es-desc{font-size:clamp(15px,1.6vw,18px);line-height:1.6;color:#fff}
.es-btn{display:inline-block;padding:14px 32px;border-radius:50px;background:#fff;color:#111;font-weight:600;text-decoration:none;line-height:1.2;transition:background-color .25s,color .25s,transform .25s}
.es-btn:hover{transform:translateY(-2px)}
.es-btn-wrap{z-index:3;display:flex;flex-wrap:wrap;gap:12px;justify-content:var(--es-jc,center)}
/* Second button: outline style by default (colors/border can be changed in Elementor) */
.es-slide .es-btn.es-btn--2{background:transparent;color:#fff;border:2px solid #fff}
.es-slide .es-btn.es-btn--2:hover{background:#fff;color:#111}

/* Whole-slide link: sits above the background, below text/buttons */
.es-slide-link{position:absolute;inset:0;z-index:1;display:block}
.es-slide.has-link .es-inner{pointer-events:none}
.es-slide.has-link .es-inner a{pointer-events:auto}
.es-slide.has-link{cursor:pointer}

/* Arrows */
.es-arrow{position:absolute;top:50%;z-index:5;display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin-top:-23px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.35);color:#fff;cursor:pointer;transition:background-color .25s}
.es-arrow:hover{background:rgba(0,0,0,.6)}
.es-arrow svg{width:50%;height:50%;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.es-prev{left:18px}
.es-next{right:18px}

/* Dots */
.es-dots{position:absolute;left:0;right:0;bottom:18px;z-index:5;display:flex;justify-content:center;gap:8px}
.es-dot{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:transform .25s,background-color .25s}
.es-dot.is-active{background:#fff;transform:scale(1.3)}

/* Entrance animations */
.es-slide .es-anim{opacity:0}
.es-slide .es-anim--none{opacity:1}
.es-slide.is-leaving .es-anim{opacity:1;animation:none!important}
.es-slide.is-active .es-anim:not(.es-anim--none){animation-duration:var(--es-anim-duration);animation-delay:var(--es-delay,0ms);animation-fill-mode:both;animation-timing-function:cubic-bezier(.22,.8,.3,1)}
.es-slide.is-active .es-anim--fadeIn{animation-name:es-fadeIn}
.es-slide.is-active .es-anim--fadeInUp{animation-name:es-fadeInUp}
.es-slide.is-active .es-anim--fadeInDown{animation-name:es-fadeInDown}
.es-slide.is-active .es-anim--fadeInLeft{animation-name:es-fadeInLeft}
.es-slide.is-active .es-anim--fadeInRight{animation-name:es-fadeInRight}
.es-slide.is-active .es-anim--zoomIn{animation-name:es-zoomIn}
.es-slide.is-active .es-anim--bounceIn{animation-name:es-bounceIn}
.es-slide.is-active .es-anim--flipInX{animation-name:es-flipInX}
.es-slide.is-active .es-anim--blurIn{animation-name:es-blurIn}
.es-slide.is-active .es-anim--slideInLeft{animation-name:es-slideInLeft}
.es-slide.is-active .es-anim--slideInRight{animation-name:es-slideInRight}

@keyframes es-fadeIn{from{opacity:0}to{opacity:1}}
@keyframes es-fadeInUp{from{opacity:0;transform:translate3d(0,40px,0)}to{opacity:1;transform:none}}
@keyframes es-fadeInDown{from{opacity:0;transform:translate3d(0,-40px,0)}to{opacity:1;transform:none}}
@keyframes es-fadeInLeft{from{opacity:0;transform:translate3d(-50px,0,0)}to{opacity:1;transform:none}}
@keyframes es-fadeInRight{from{opacity:0;transform:translate3d(50px,0,0)}to{opacity:1;transform:none}}
@keyframes es-zoomIn{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@keyframes es-bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.08)}70%{transform:scale(.95)}100%{opacity:1;transform:scale(1)}}
@keyframes es-flipInX{from{opacity:0;transform:perspective(600px) rotateX(90deg)}to{opacity:1;transform:perspective(600px) rotateX(0)}}
@keyframes es-blurIn{from{opacity:0;filter:blur(14px)}to{opacity:1;filter:blur(0)}}
@keyframes es-slideInLeft{from{opacity:0;transform:translate3d(-140px,0,0)}to{opacity:1;transform:none}}
@keyframes es-slideInRight{from{opacity:0;transform:translate3d(140px,0,0)}to{opacity:1;transform:none}}
@keyframes es-kenburns{from{transform:scale(1)}to{transform:scale(1.15)}}

@media (max-width:767px){
	.es-inner{padding:30px 54px}
	.es-arrow{width:36px;height:36px;margin-top:-18px}
	.es-prev{left:8px}
	.es-next{right:8px}
}

@media (prefers-reduced-motion:reduce){
	.es-slide .es-anim{opacity:1;animation:none!important}
	.es-track{transition-duration:.01ms}
	.es-kenburns .es-bg{animation:none!important}
}
