/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

.banner.full-height{
    height:100vh;
}
.banner .splide__track,
.banner .splide__track > ul,
.banner .splide__track > ul > li .columns-container-box,
.banner .splide__track > ul > li .columns-container
{
    height:100%;
}

.banner .splide__track > ul > li .column{
    display:flex;
    flex-direction:column;
    align-items:center;
    flex-wrap:wrap;
    justify-content:center;
}

.slide{
    background-size:cover;
    background-position:center;
    padding:1px 0;
}

.slide > a{
    display:block;
}

.splide{
    padding-bottom:60px;
    margin-bottom:50px;
    margin:0;
}

.splide__pagination{
    bottom:0;
    gap:10px;
}

ul.splide__pagination li button.splide__pagination__page{
    padding:0;
    border:none;
    width:10px;
    height:10px;
    background-color:#a0a0a0;
    opacity:0.5;
    transform:none;
}

ul.splide__pagination li button.splide__pagination__page::after{
    content:none;
}
button.splide__pagination__page:before{
    content:none !important;
}

ul.splide__pagination li button.splide__pagination__page.is-active{
    opacity:1;
    transform:none;
}

.progress-bar-block{
    width:100%;
    border-top:2px solid #909090;
    opacity:0.5;
    position:relative;
}

.splide .splide__arrow{
    opacity:1;
    padding:0;
}
.splide .splide__arrow svg{
    fill:#FFFFFF;
}

.splide.arrows-top-center .splide__arrows,
.splide.arrows-top-right .splide__arrows,
.splide.arrows-top-left .splide__arrows,
.splide.arrows-bottom-center .splide__arrows,
.splide.arrows-bottom-right .splide__arrows,
.splide.arrows-bottom-left .splide__arrows{
    position:relative;
    bottom:0;
    margin:0 auto;
    display:flex;
    gap:20px;
    height:auto;
    width:100%;
    justify-content:center;
    top:0;
    padding-top:max(20px,4%);
}

.splide.arrows-top-center .splide__arrows,
.splide.arrows-top-right .splide__arrows,
.splide.arrows-top-left .splide__arrows{
    padding-top:0;
    padding-bottom:max(20px,4%);
}

.splide.arrows-bottom-right .splide__arrows,
.splide.arrows-top-right .splide__arrows{
    justify-content:flex-end;
}

.splide.arrows-bottom-left .splide__arrows,
.splide.arrows-top-left .splide__arrows{
    justify-content:flex-start;
}

.splide.arrows-top-right.nav-no-bg .splide__arrows{
    margin-right:-11px;
}
.splide.arrows-top-left.nav-no-bg .splide__arrows{
    margin-right:11px;
}
.splide.arrows-bottom-right.nav-no-bg .splide__arrows{
    margin-right:-11px;
}
.splide.arrows-bottom-left.nav-no-bg .splide__arrows{
    margin-right:11px;
}

.splide.arrows-top-center .splide__arrows,
.splide.arrows-top-right .splide__arrows,
.splide.arrows-top-left .splide__arrows{
    position:relative;
    right:0;
    display:flex;
    gap:20px;
    height:1px;
}
.splide.arrows-top-right .splide__arrows{
    margin-right:-11px;
    justify-content:flex-end;
}
.splide.arrows-top-left .splide__arrows{
    margin-left:-11px;
    justify-content:flex-start;
}
.splide.arrows-top-right.nav-has-bg .splide__arrows{
    margin-right:0;
}
.splide.arrows-top-left.nav-has-bg .splide__arrows{
    margin-left:0;
}

.splide.arrows-top-center .splide__arrows button.splide__arrow,
.splide.arrows-top-right .splide__arrows button.splide__arrow,
.splide.arrows-top-left .splide__arrows button.splide__arrow{
    position:static;
    display:inline-block;
    transform:none;
}

.splide.arrows-bottom-center .splide__arrows button.splide__arrow,
.splide.arrows-bottom-left .splide__arrows button.splide__arrow,
.splide.arrows-bottom-right .splide__arrows button.splide__arrow{
    position:relative;
    display:inline-block;
    left:auto;
    right:auto;
    transform:none;
}

.splide.arrows-bottom-center, .splide.arrows-bottom-left, .splide.arrows-bottom-right {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}


@media screen and (min-width:768px){
    .image-parralax-shadow-wrapper.align-left{
        max-width:75%;
        margin:0 auto 0 0;
    }
    .image-parralax-shadow-wrapper.align-right{
        max-width:75%;
        margin:0 0 0 auto;
    }
}

.image-parralax-shadow-wrapper .shadow{
    position:absolute;
    z-index:1;
    width:100%;
    height:100%;
    background-color:#AAAAAA;
    top:0;
    left:0;
}
.elementor .image-parralax-shadow-wrapper img{
    position:relative;
    z-index:2;
    box-shadow:60px 50px 90px -20px rgba(0,0,0,0.15);
}

/* SLIDER PARTNERS */

.splide{
    padding-left:40px;
    padding-right:40px;
    padding-bottom:0;
}
.splide.no-arrows{
    padding-left:0;
    padding-right:0;
}

.splide.no-arrows .splide__arrows{
    display:none !important
}


.splide__arrow--prev{
    left:0;
}
.splide__arrow--next{
    right:0;
}

.splide__arrows button.splide__arrow{
    width:40px;
    height:40px;
}

@media screen and (min-width:768px){
    .splide{
        padding-left:clamp(40px,5vw,80px);
        padding-right:clamp(40px,5vw,80px);
    }
    .splide__arrow--prev{
        left:10px;
    }
    .splide__arrow--next{
        right:10px;
    }
    
}

.splide.caroussel-partners .splide__slide{
    display:flex;
    align-items:center;
}

.splide__track{
    clear:both;
}

.splide.arrows-top-right,
.splide.arrows-top-left,
.splide.arrows-top-center{
    padding-left:0;
    padding-right:0;
}

.pager-bottom .progress-bar-block{
    margin-top:40px;
}
.pager-top.progress-pager{
    padding-top:50px
}
.pager-top .progress-bar-block{
    top:0;
}
.progress-bar-marker{
    position:absolute;
    border-top:4px solid #909090;
    transition:right 0.3s ease;
}

.splide__arrows button.splide__arrow{
    position:absolute;
}

.splide.arrows-top-right .splide__arrows,
.splide.arrows-top-left .splide__arrows,
.splide.arrows-top-center .splide__arrows{
    position:relative;
    right:0;
    display:flex;
    gap:20px;
    height:auto;
    float:right;
    margin:0;
}

.splide__arrow svg{
    width:100%;
    height:100%;
}

.splide .splide__arrows button.splide__arrow{
    display:inline-block;
    border:1px solid transparent;
    background-color:transparent;
    opacity:1;
    transition:opacity 0.3s ease;
}

.splide .splide__arrows button.splide__arrow[disabled]{
    opacity:0;
    cursor:default;
}

.splide.arrows-top-right .splide__arrows button.splide__arrow{
    position:static;
}

.splide.nav-no-bg .splide__arrows button.splide__arrow{
    border:none;
    background:transparent;
}

.splide .splide__pagination{
    display:none;
}

.splide.with-pager .splide__pagination{
    display:flex;
    margin:auto;
}

.splide.with-pager.pager-bottom,.splide.progress-pager.pager-bottom{
    padding-bottom:50px;
}
.splide.with-pager.pager-top{
    padding-top:40px;
}
@media screen and (min-width:768px){
    .splide.with-pager.pager-top{
        padding-top:80px;
    }
}
.splide.with-pager.pager-bottom .splide__pagination{
    inset:auto 0 0 0;
}
.splide.with-pager.pager-top .splide__pagination{
    position: static;
    float: left;
    width: 100%;
    clear: both;
    margin: -45px 0 0 0;
}
@media screen and (min-width:768px){
    .splide.with-pager.pager-top .splide__pagination{
        margin: -55px 0 0 0;
    }
}

.splide.with-pager.pager-bottom.arrows-sides .splide__arrow{
    margin-top:-30px;
}
.splide.with-pager.pager-top.arrows-sides .splide__arrow{
    margin-top:30px;
}

/* SLIDER HERO */

.splide.hero-caroussel{
    width:100%;
    height:100%;
    padding:0;
}

.splide.hero-caroussel .splide__arrows{
    display:none;
}
.splide.hero-caroussel .splide__track,
.splide.hero-caroussel .splide__track ul.splide__list,
.splide.hero-caroussel .splide__track ul.splide__list li,
.splide.hero-caroussel .splide__track ul.splide__list li img{
    width:100%;
    height:100%;
}
.splide.hero-caroussel .splide__track ul.splide__list li img{
    object-fit:cover;
    object-position:center;
}

/* HERO BOX */

body .hero-box{
    min-height:calc(100vh + 1px);
    min-height:calc(100svh + 1px);
    display:flex;
    align-items:stretch;
}

body .hero-box .parallax-box{
    position:absolute;
    overflow:hidden;
    width:100%;
    height:100%;
}

.entry-content .hero-box video{
    display: block;
    height: 100%;
    width: 200vh;
    min-width: 100%;
    min-height: 56.25vw;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    max-width: none;
    object-fit:cover;
    object-position:Center center;
}

.hero-box .parallax-image-box::after{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}

.hero-box .bg-pic,
.hero-box img.bg-pic,
.hero-box .bg-pic img{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:1;
    object-fit:cover;
    object-position:center center;
}

.hero-box .inner{
    position:relative;
    width:100%;
    z-index:10;
    display:flex;
    flex-direction:column;.hero-box.text-alignment-center .inner > .size-limiter
    justify-content:flex-end;
    padding:clamp(40px,6.875vw,110px);
}

.hero-box .inner > .size-limiter{
    margin:0 auto;
    max-width:1090px;
}

@media screen and (max-width:767px){
    .hero-box .inner > .size-limiter{
    max-width:none !important;
    }
}

.hero-box.text-alignment-left .inner > .size-limiter{text-align:left;}
.hero-box.text-alignment-center .inner > .size-limiter{text-align:center;}
.hero-box.text-alignment-right .inner > .size-limiter{text-align:right;}

.hero-box.text-alignment-left .inner > .size-limiter .cta-btns{justify-content:start;}
.hero-box.text-alignment-center .inner > .size-limiter .cta-btns{justify-content:center;}
.hero-box.text-alignment-right .inner > .size-limiter .cta-btns{justify-content:end;}

.hero-box .inner > .size-limiter > *:last-child{
    margin-bottom:0;
}



.hero-box .inner .cta-btns{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
}

.theme-normal.hero-box .inner p.cta-btns,
.theme-inverted.hero-box .inner p.cta-btns{
    margin:0;
}

/* faqs */
.faq-group{
    border-top:1px solid #000;
}

.faq-title{
    list-style:none;
}

.faq-panel{
    transition:height 0.3s ease;
    overflow:hidden;
}
.faq-box{
    border-bottom:1px solid #000;
}

.faq-box .faq-title{
    padding:clamp(20px,2.14285714vw,30px) 50px clamp(20px,2.14285714vw,30px) 0;
    position:relative;
    font-weight:600;
}
.faq-box .faq-panel-inner{
    padding-bottom:clamp(20px,2.14285714vw,30px);
}

.faq-box .faq-title .icon{
    position:absolute;
    top:0;
    right:0;
    width:42px;
    height:100%;
}
.faq-box .faq-title.opened .icon::before{
    transform:rotate(0);
}

.faq-box .faq-title .icon::before,.faq-box .faq-title .icon::after{
    content:'';
    width:100%;
    height:1px;
    top:50%;
    left:0;
    background-color:#000;
    transition:transform var(--lpa-trans-time) ease;
    transform-origin:50% 50%;
    transform:rotate(0);
    display:block;
    position:absolute;
}
.faq-box .faq-title .icon::before{
    transform:rotate(-90deg);
}

.faq-panel-inner{
    padding-bottom:clamp(20px,2.14285714vw,30px);
}

/* image sliders */

.force-size.force-size-full-height,
.force-size .splide__track {
  height: 100%;
}

.splide.arrows-center-inside{
    padding:0;
}

.splide.force-size img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
}
.force-size .splide__track{
    height:100%;
}
.force-size .splide__track .splide__slide{
    padding:0;
}
.force-size .splide__track .splide__slide a{
    display:block;
    height:100%;
}
.force-size-square li{
    aspect-ratio:1;
}
.force-size-photo li{
    aspect-ratio:1.33333;
}
.force-size-landscape li{
    aspect-ratio:1.7777;
}
.force-size-full-height{
    height:100%;
}
.splide.force-size.force-size-full-height img{
    position:absolute;
    top:0;
    left:0;
}
.elementor-widget-images_overflow_slider.full-height{
    aspect-ratio:1.33333;
    width:100%;
}
@media screen and (min-width:768px){
    .elementor-widget-images_overflow_slider.full-height{
        aspect-ratio:auto;
        height:100%;
    }
}

/* Marquees */

:root{
    --mldevweb-marquee-anim-speed:10s;
}

.elementor-widget-mldevweb_marquee{
    height:clamp(70px,6.77083vw,130px);
}

.elementor-widget-mldevweb_marquee .marquee-block {
    position: absolute;
    left: 0;
    width: 0.0625rem;
    height: clamp(4.375rem, 6.77083vw, 8.125rem);
    overflow: hidden;
    display: flex;
    flex-direction: row;
    align-items: center;
    font-weight: 600;
    font-size: clamp(3.125rem, 4.947916vw, 5.9375rem);
}

.elementor-widget-mldevweb_marquee .marquee-block.animate{
    width:100vw;
}

.elementor-widget-mldevweb_marquee .marquee-group {
    display: flex;
    flex-direction: row;
    padding-right: 1.25rem;
    gap: 1.25rem;
}

.elementor-widget-mldevweb_marquee .marquee-block.animate .marquee-group{
    animation: marquee var(--mldevweb-marquee-anim-speed) linear 0s infinite forwards running;
}

.elementor-widget-mldevweb_marquee .marquee-block.animate.stop-on-hover:hover > .marquee-group{
    animation-play-state:paused;
}

.elementor-widget-mldevweb_marquee .marquee-phrase {
    display: flex;
    flex-direction: row;
    gap: 1.25rem;
    white-space: nowrap;
}

.elementor-widget-mldevweb_marquee .marquee-phrase::after {
    content: "\2022";
    height: 1.3125rem;
    position: relative;
}

.elementor-widget-mldevweb_marquee span.phrase-block,
.elementor-widget-mldevweb_marquee a.phrase-block{
    text-decoration: none !important;
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

/* Full zone slider */

.elementor-widget-full_zone_slider{
    position:absolute;
    top:0;
    left:0;
}
.elementor-widget-full_zone_slider,
.splide.full-zone-slider{
    width:100%;
    height:100%;
}
.splide.full-zone-slider .splide__track{
    height:100%;
}

@media screen and (max-width:767px){
    .elementor-widget-full_zone_slider{
        aspect-ratio:1;
    }
}

@media screen and (max-width:1024px){
    .elementor-widget-full_zone_slider{
        width:100%;
        height:auto;
        aspect-ratio:1.5;
    }
}