.elementor-275 .elementor-element.elementor-element-8867066{--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;}.elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-mega-menu{--n-menu-divider-color:var( --e-global-color-text );}.elementor-275 .elementor-element.elementor-element-162e5be{--display:flex;}.elementor-275 .elementor-element.elementor-element-525936f{--display:flex;}.elementor-275 .elementor-element.elementor-element-39ad667{--display:flex;}.elementor-275 .elementor-element.elementor-element-7c11113{--n-menu-dropdown-content-max-width:initial;--n-menu-title-distance-from-content:0px;--n-menu-toggle-align:flex-start;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-color-normal:#603E73;--n-menu-title-transition:300ms;--n-menu-icon-size:40px;--n-menu-icon-color:#C1C1C1;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-color:#C1C1C1;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;--n-menu-title-normal-color-dropdown:#36013F;}.elementor-275 .elementor-element.elementor-element-7c11113 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title:not( .e-current ):not( :hover ){background-color:transparent;text-shadow:10px 0px 26px #303030;background-image:radial-gradient(at center center, #C1C1C1 0%, #848482 100%);}.elementor-275 .elementor-element.elementor-element-7c11113 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title.e-current{background-color:#C1C1C1;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}:where( .elementor-275 .elementor-element.elementor-element-7c11113 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-content ) > .e-con{background-color:transparent;background-image:radial-gradient(at center center, #C1C1C1 0%, #848482 100%);}.elementor-275 .elementor-element.elementor-element-7c11113 > .e-n-menu[data-layout='dropdown'] > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title:not( .e-current ){background:#C1C1C1;background-color:transparent;background-image:linear-gradient(180deg, #C1C1C1 38%, #A6A6A6 100%);}.elementor-275 .elementor-element.elementor-element-7c11113 {--n-menu-title-color-active:#303030;}.elementor-275 .elementor-element.elementor-element-7c11113 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title{border-radius:5px 5px 5px 5px;}.elementor-275 .elementor-element.elementor-element-7c11113 > .e-n-menu > .e-n-menu-toggle[aria-expanded="false"]:not( :hover ) > .e-n-menu-toggle-icon{box-shadow:0px 0px 25px 1px #36013F;}.elementor-275 .elementor-element.elementor-element-1862644{--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;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-275 .elementor-element.elementor-element-21fe1fa{border-style:solid;border-color:#303030;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);text-align:center;}.elementor-275 .elementor-element.elementor-element-21fe1fa .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:45px;font-weight:700;text-shadow:2px 1px 6px #A6A6A6;color:#603E73;}.elementor-275 .elementor-element.elementor-element-54e95ba{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-275 .elementor-element.elementor-element-7ece9ee{padding:0px 65px 0px 65px;border-style:solid;border-width:2px 2px 2px 2px;border-color:#848482;border-radius:35px 35px 35px 35px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);text-align:center;font-family:"Roboto", Sans-serif;font-weight:400;text-shadow:1px 1px 15px #36013F;color:#C1C1C1;}.elementor-275 .elementor-element.elementor-element-7ece9ee p{margin-block-end:42px;}.elementor-275 .elementor-element.elementor-element-0177ed6{--e-image-carousel-slides-to-show:1;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-275 .elementor-element.elementor-element-0177ed6.elementor-element{--align-self:center;}.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-swiper-button.elementor-swiper-button-prev, .elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-swiper-button.elementor-swiper-button-next{font-size:61px;color:#A6A6A6;}.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-swiper-button.elementor-swiper-button-next svg{fill:#A6A6A6;}.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-radius:0px 0px 0px 0px;}.elementor-275 .elementor-element.elementor-element-745079a{padding:0px 65px 0px 65px;border-style:solid;border-width:2px 2px 2px 2px;border-color:#848482;border-radius:35px 35px 35px 35px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);text-align:center;font-family:"Roboto", Sans-serif;font-weight:400;text-shadow:1px 1px 15px #36013F;color:#303030;}.elementor-275 .elementor-element.elementor-element-745079a p{margin-block-end:42px;}.elementor-275 .elementor-element.elementor-element-e2ac69a{--e-image-carousel-slides-to-show:1;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-element{--align-self:center;}.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-swiper-button.elementor-swiper-button-prev, .elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-swiper-button.elementor-swiper-button-next{font-size:61px;color:#A6A6A6;}.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-swiper-button.elementor-swiper-button-next svg{fill:#A6A6A6;}.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-radius:0px 0px 0px 0px;}body.elementor-page-275:not(.elementor-motion-effects-element-type-background), body.elementor-page-275 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #373737 0%, #DDDDDDDD 100%);}@media(max-width:767px){.elementor-275 .elementor-element.elementor-element-21fe1fa{border-width:2px 2px 2px 2px;text-align:center;}.elementor-275 .elementor-element.elementor-element-7ece9ee.elementor-element{--order:1;}.elementor-275 .elementor-element.elementor-element-7ece9ee{border-radius:35px 35px 35px 35px;text-align:start;}.elementor-275 .elementor-element.elementor-element-7ece9ee p{margin-block-end:20px;}.elementor-275 .elementor-element.elementor-element-0177ed6.elementor-element{--order:2;}.elementor-275 .elementor-element.elementor-element-745079a.elementor-element{--order:3;}.elementor-275 .elementor-element.elementor-element-745079a{border-radius:35px 35px 35px 35px;text-align:start;}.elementor-275 .elementor-element.elementor-element-745079a p{margin-block-end:20px;}.elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-element{--order:4;}}/* Start custom CSS for image-carousel, class: .elementor-element-0177ed6 *//* Centers each image container slide vertically and horizontally */
.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel .swiper-slide-inner {
    display: flex;
    flex-direction: column; /* Forces caption to the bottom */
    justify-content: center;
    align-items: center;
}

/* Ensures the individual image aligns directly inside its slide boundaries */
.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel .swiper-slide-image {
    margin: 0 auto;
    display: block;
}

/* Centers the text of the caption underneath the image */
.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel .elementor-image-carousel-caption {
    text-align: center;
    width: 100%;
    margin-top: 10px; /* Adds space between image and text */
}
/* --- Desktop & General Styling --- */
.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel .swiper-slide-inner {
    display: flex;
    flex-direction: column; 
    justify-content: center;
    align-items: center;
}

.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel .swiper-slide-image {
    margin: 0 auto;
    display: block;
}

.elementor-275 .elementor-element.elementor-element-0177ed6 .elementor-image-carousel .elementor-image-carousel-caption {
    text-align: center;
    width: 100%;
    margin-top: 10px; 
}

/* --- Mobile View Layout (Under 767px) --- */
@media (max-width: 767px) {
    /* Targets the sliding track itself to allow full height centering */
    .elementor-275 .elementor-element.elementor-element-0177ed6.elementor-widget-image-carousel .swiper-wrapper {
        display: flex;
        align-items: center; 
    }

    /* Expands the individual slide space vertically */
    .elementor-275 .elementor-element.elementor-element-0177ed6.elementor-widget-image-carousel .swiper-slide {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    /* Grabs the image container and perfectly locks it on the horizontal & vertical axis */
    .elementor-275 .elementor-element.elementor-element-0177ed6.elementor-widget-image-carousel .elementor-carousel-image-wrapper {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-grow: 1;
        width: 100%;
    }

    /* Safeguards standard proportions for landscape orientations */
    .elementor-275 .elementor-element.elementor-element-0177ed6.elementor-widget-image-carousel .swiper-slide-image {
        display: block;
        max-width: 100%;
        height: auto;
        margin: auto;
    }

    /* Places text caption flat at the absolute bottom */
    .elementor-275 .elementor-element.elementor-element-0177ed6.elementor-widget-image-carousel .elementor-image-carousel-caption {
        text-align: center;
        width: 100%;
        margin-top: 10px;
    }
}/* End custom CSS */
/* Start custom CSS for image-carousel, class: .elementor-element-e2ac69a *//* Centers each image container slide vertically and horizontally */
.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel .swiper-slide-inner {
    display: flex;
    flex-direction: column; /* Forces caption to the bottom */
    justify-content: center;
    align-items: center;
}

/* Ensures the individual image aligns directly inside its slide boundaries */
.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel .swiper-slide-image {
    margin: 0 auto;
    display: block;
}

/* Centers the text of the caption underneath the image */
.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel .elementor-image-carousel-caption {
    text-align: center;
    width: 100%;
    margin-top: 10px; /* Adds space between image and text */
}
/* --- Desktop & General Styling --- */
.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel .swiper-slide-inner {
    display: flex;
    flex-direction: column; 
    justify-content: center;
    align-items: center;
}

.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel .swiper-slide-image {
    margin: 0 auto;
    display: block;
}

.elementor-275 .elementor-element.elementor-element-e2ac69a .elementor-image-carousel .elementor-image-carousel-caption {
    text-align: center;
    width: 100%;
    margin-top: 10px; 
}

/* --- Mobile View Layout (Under 767px) --- */
@media (max-width: 767px) {
    /* Targets the sliding track itself to allow full height centering */
    .elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-widget-image-carousel .swiper-wrapper {
        display: flex;
        align-items: center; 
    }

    /* Expands the individual slide space vertically */
    .elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-widget-image-carousel .swiper-slide {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    /* Grabs the image container and perfectly locks it on the horizontal & vertical axis */
    .elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-widget-image-carousel .elementor-carousel-image-wrapper {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-grow: 1;
        width: 100%;
    }

    /* Safeguards standard proportions for landscape orientations */
    .elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-widget-image-carousel .swiper-slide-image {
        display: block;
        max-width: 100%;
        height: auto;
        margin: auto;
    }

    /* Places text caption flat at the absolute bottom */
    .elementor-275 .elementor-element.elementor-element-e2ac69a.elementor-widget-image-carousel .elementor-image-carousel-caption {
        text-align: center;
        width: 100%;
        margin-top: 10px;
    }
}/* End custom CSS */