:root {
    --max-width: 1340px;
    --min-margin: 3rem;
    --dynamic-width: min(var(--max-width), calc(100% -(2* var(--min-margin))));
    --dynamic-margin: max(calc(50% - 0.5* var(--max-width)), var(--min-margin));
} 

/*
 *
 * INITIALISATION 
 *
 */

html, body{
    width : 100%;
    overflow: hidden;
    overflow-y: auto;
}

header .elementor-widget-image a img[src$=".svg"]{
    width: auto;
}

footer .elementor-widget-image a img[src$=".svg"]{
    width: auto;
}


/* DISPLAY NONE */
.d-none{
    display: none!important;
}

@media screen and (min-width:768px){
    .d-sm-only{
        display: none!important;
    }
}

@media screen and (max-width:767px){
    .d-sm-none{
        display: none!important;
    }
}

@media screen and (min-width:1024px){
    .d-md-only{
        display: none!important;
    }
}

@media screen and (max-width:1023px){
    .d-md-none{
        display: none!important;
    }
}

@media screen and (min-width:1200px){
    .d-lg-only{
        display: none!important;
    }
}

@media screen and (max-width:1199px){
    .d-lg-none{
        display: none!important;
    }
}

/* RECAPTCHA */
.grecaptcha-badge{
	display : none!important;
	opacity : 0;
	z-index : -99999;
}

/*
 *
 * GENERAL 
 *
 */


/* Full height */
.full-height{
    height: 100%!important;
}

/* Offset left wrapper */
@media screen and (min-width:768px){
    .offset-left-wrapper{
        position: relative;
        padding-left: var(--dynamic-margin);
    }
}

/* Background image & squared background image */
.background-img, .squared-img{
    /*position: relative;*/
}

.background-img:before, .squared-img:before{
    z-index: 2;
}

.squared-img{
    aspect-ratio: 1 / 1;
}

.squared-img > div, .background-img > div{
    position: static;
}

.squared-img img, .background-img img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    object-position: center;
    min-height: 100%;
}

.squared-img.top img, .background-img.top img{
    object-position: center top;
}

.squared-img.bottom img, .background-img.bottom img{
    object-position: center bottom;
}

@media screen and (max-width:767px){
    .background-img.full-height, .squared-img.full-height{
        height: auto!important;
    }
}

/* Background cards */
.bg-card.light:hover .link-card-button, .bg-card.light:focus .link-card-button{
    background-color : var(--e-global-color-secondary)!important;
}

.bg-card.dark:hover .link-card-button, .bg-card.dark:focus .link-card-button{
    background-color : var(--e-global-color-primary)!important;
}

.bg-card .squared-img img{
    transition: .3s transform ease;
}

.bg-card:hover .squared-img img, .bg-card:focus .squared-img img{
    transform: scale(.95);
}

.bg-card:hover .link-card-button svg, .bg-card:focus .link-card-button svg{
    fill : #ffffff!important;
}

/* Linked cards */
.link-card:hover .link-card-button, .link-card:focus .link-card-button{
    background-color : var(--e-global-color-primary)!important;
}

.link-card:hover .link-card-button svg, .link-card:focus .link-card-button svg{
    fill : #ffffff!important;
}

/* Slider */
.slider .elementor-swiper-button svg{
    width: 1rem!important;
    fill: var(--e-global-color-text)!important;
}

.slider.testimonial .elementor-swiper-button{
    top: auto!important;
}

.slider.testimonial .swiper-slide > .elementor-element > .e-con-inner > .elementor-element{
    height: 100%;
}

.slider .elementor-swiper-button:hover, .slider .elementor-swiper-button:focus{
    background-color: var(--e-global-color-primary)!important;
}

.slider .elementor-swiper-button:hover svg, .slider .elementor-swiper-button:focus svg{
    fill: #ffffff!important;
}


/* Text list */
.elementor-widget-text-editor ul{
    padding: 0;
    margin-bottom: 1rem;
}

.elementor-widget-text-editor ul li{
    position: relative;
    padding-left : 2rem;
    list-style-type: none;
}

.elementor-widget-text-editor ul li:not(:last-of-type){
    margin-bottom: 1rem;
}

.elementor-widget-text-editor ul li:before{
    position: absolute;
    left: 0;
    top: 0.2rem;
    width: 1.1rem;
}

:not(.dark-bg) .elementor-widget-text-editor ul li:before{
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 67.782 67.783"><path d="M64.678,9.367l8.453-.038-31.695,46L23.357,29.09,31.714,29l9.728,14.068Z" transform="translate(-7.421 -2.964)" fill="%231a73e9"/><path d="M33.891,67.783A33.891,33.891,0,0,1,33.891,0,33.563,33.563,0,0,1,48.946,3.52L46.43,8.584A27.951,27.951,0,0,0,33.891,5.655,28.2,28.2,0,1,0,61.429,27.618c2.142-2.674,4.272-5.444,4.272-5.444a33.913,33.913,0,0,1-31.81,45.61" transform="translate(0 0)" fill="%23051b27"/></svg>');
}

.dark-bg .elementor-widget-text-editor ul li:before{
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 67.782 67.783"><path d="M64.678,9.367l8.453-.038-31.695,46L23.357,29.09,31.714,29l9.728,14.068Z" transform="translate(-7.421 -2.964)" fill="%231a73e9"/><path d="M33.891,67.783A33.891,33.891,0,0,1,33.891,0,33.563,33.563,0,0,1,48.946,3.52L46.43,8.584A27.951,27.951,0,0,0,33.891,5.655,28.2,28.2,0,1,0,61.429,27.618c2.142-2.674,4.272-5.444,4.272-5.444a33.913,33.913,0,0,1-31.81,45.61" transform="translate(0 0)" fill="%23ffffff"/></svg>');
}

/* Background-shadow */
.box-shadow{
    box-shadow: 0px 0px 0px 0px var(--e-global-color-primary);
}

.settled-shadow.blue{
    box-shadow: 0px 0px 0px 0px var(--e-global-color-primary);
}

.settled-shadow.green{
    box-shadow: 0px 0px 0px 0px var(--e-global-color-c30dc33);
}

.settled-shadow.red{
    box-shadow: 0px 0px 0px 0px var(--e-global-color-59aa898);
}

.settled-shadow.blue.active{
    box-shadow: -15px 15px 0px 0px var(--e-global-color-primary);
}

.settled-shadow.green.active{
    box-shadow: -15px 15px 0px 0px var(--e-global-color-c30dc33);
}

.settled-shadow.red.active{
    box-shadow: -15px 15px 0px 0px var(--e-global-color-59aa898);
}

@media screen and (min-width:767px) {
    .box-shadow.active{
        box-shadow: -25px -25px 0px 0px var(--e-global-color-primary);
    }
}

@media screen and (max-width:767px) {
    .box-shadow.active{
        box-shadow: -15px -15px 0px 0px var(--e-global-color-primary);
    }
}

/*
 * MAIN MENU
 *
*/

#main-menu .e-n-menu-item:hover > .e-n-menu-title {
    background-color: var(--e-global-color-primary);
}

/*
 *
 * COURSES
 *
 */

.course .first-word{
    font-weight: 700;
}