.elementor-1288 .elementor-element.elementor-element-2c4fd508{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:120px;--padding-bottom:80px;--padding-left:40px;--padding-right:40px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-1751f643 .elementor-button{background-color:#FFFFFF00;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );border-radius:90px 90px 90px 90px;}.elementor-1288 .elementor-element.elementor-element-1751f643 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1288 .elementor-element.elementor-element-570eb4c1{--swiper-slides-to-display:8;--swiper-slides-gap:10px;}@media(max-width:1366px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-1751f643 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-570eb4c1{--swiper-slides-to-display:6;}}@media(max-width:1024px){.elementor-1288 .elementor-element.elementor-element-2c4fd508{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-1751f643.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-1288 .elementor-element.elementor-element-1751f643 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-570eb4c1{--swiper-slides-to-display:5;}}@media(max-width:767px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-1751f643 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1288 .elementor-element.elementor-element-570eb4c1{--swiper-slides-to-display:3;}}/* Start custom CSS *//* 1. Parent Context: Force relative position on the active slide's content */
.swiper-slide-active > div:first-child {
    position: relative !important; 
    overflow: hidden !important; 
    flex-wrap: nowrap !important; 
}

/* 2. The Video Animation State */
.video_bg.animating-entrance {
    /* Float and Layering */
    position: absolute !important; 
    top: 0;
    left: 0;
    height: 100%;
    z-index: 999 !important; 
    
    /* Ensure immediate start width is 100% and animation runs */
    width: 100%; 
    
    /* Animation: Name | Duration | Easing | Delay (1s) | Fill Mode */
    animation: slideBackVideo 1.2s cubic-bezier(0.22, 1, 0.36, 1) 1s forwards;
}

/* 3. The Text Container (Sibling) Lock */
.video_bg.animating-entrance + .e-con,
.video_bg.animating-entrance + .elementor-element {
    margin-left: auto !important;
    width: 60% !important; 
    flex-shrink: 0 !important;

    z-index: 1 !important; 
    position: relative;
    
    /* Text Fade In */
    opacity: 0; 
    animation: fadeInText 0.3s ease 1.8s forwards;
}


.video-text{
  flex-shrink: 0!important;
  opacity: 1; 
}

/* 4. The Keyframes */
@keyframes slideBackVideo {
    0% {
        width: 100%; 
    }
    100% {
        /* Uses the pixel width measured by JS */
        width: var(--target-width, 60%); 
    }
}

/* Text Fade In Animation */
@keyframes fadeInText {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Styling for custom text bullets */
.swiper-pagination-bullet {
    width: auto !important;
    height: auto !important;
    padding: 8px 15px; 
    margin: 0 10px !important;
    background: transparent !important;
    border-radius: 0;
    
    color: var( --e-global-color-secondary );
    font-size: 20px;
    font-family: var( --e-global-typography-text-font-family ), Sans-serif;
    line-height: 1;
    opacity: 0.6;
    transition: opacity 0.3s, border-color 0.3s;
    cursor: pointer;
}

/* Style for Active/Hover state */
.swiper-pagination-bullet-active {
    opacity: 1 !important;
    border-bottom: 2px solid var( --e-global-color-secondary ) !important;
}

.swiper-pagination-bullet:hover {
    border-bottom: 2px solid var( --e-global-color-secondary ) !important;
}

.swiper-pagination-bullet:hover:not(.swiper-pagination-bullet-active) {
    opacity: 0.8;
}/* End custom CSS */