/* Custom Styles */
body{
    width: 100vw;
    overflow-x: hidden;
}
.elementor-widget-container{
    width: 100%;
}
.btn-lvl1, .btn-lvl2, .btn-lvl3{
    width: fit-content;
}
.elementor-widget-text-editor ul{
    padding-left: 25px;
}
.elementor-widget-text-editor ul li{
    position: relative;
    list-style: none;
}
.elementor-widget-text-editor ul li::before{
    content: "";
    position: absolute;
    left: -20px;
    top: 10px;
    width: 10px;
    height: 10px;
    background: #07B3FF;
    border-radius: 50%;
}
.elementor-widget-text-editor.rse ul li::before{
    background: #48C500;
}
.elementor-widget-slides .elementor-widget-container{
    width: 100%;
}
.elementor-widget-loop-grid .elementor-widget-container{
    width: 100%;
}

.elementor-skin-slideshow .elementor-thumbnails-swiper .swiper-slide{
    width: 90px !important;
    height: 60px !important;
    border-radius: 15px !important;
    margin-right: 30px !important;
}
.elementor-skin-slideshow .elementor-thumbnails-swiper .swiper-slide .elementor-carousel-image{
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}
.elementor-thumbnails-swiper .swiper-slide{
    cursor: default !important;
}

.elementor-thumbnails-swiper .swiper-slide-active{
    border: solid 2px #FFB300 !important;
}
.elementor-thumbnails-swiper .swiper-slide-active::after{
    content: "";
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
    background: rgb(18, 37, 75, 0.4) !important;
}
.elementor-skin-slideshow .elementor-thumbnails-swiper .swiper-slide:not(.swiper-slide-active):after{
    background: none !important;;
}

.elementor-thumbnails-swiper .swiper-wrapper{
    justify-content: center;
}

.elementor-swiper .elementor-swiper-button-prev{
    width: fit-content !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -8vw !important;
    cursor: pointer;
    transition: .2s;
    z-index: 1;
}
.elementor-swiper .elementor-swiper-button-prev:hover{
    scale: 1.1;
}
.elementor-swiper .elementor-swiper-button-next{
    width: fit-content !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -8vw !important;
    cursor: pointer;
    z-index: 1;
    transition: .2s;
}
.elementor-swiper .elementor-swiper-button-next:hover{
    scale: 1.1;
}
.elementor-swiper .swiper-button-disabled{
    opacity: 0.5;
    scale: 1 !important;
    cursor: auto;
}



@media screen and (max-width: 768px){
    .elementor-kit-6 h1, h1{
        font-size: 37px !important;
    }
    h2{
        font-size: 31px !important;
        line-height: 37px !important;
    }
    .elementor-thumbnails-swiper .swiper-wrapper{
        justify-content: left;
    }
    .elementor-swiper .elementor-swiper-button-prev{
        top: 100%;
        left: 35% !important;
        transform: translateY(85px);
    }
    .elementor-swiper .elementor-swiper-button-next{
        top: 100%;
        right: 35% !important;
        transform: translateY(85px);
    }
    .elementor-swiper .elementor-swiper-button-next:hover{
    scale: 1;
    }
}


/* Custom forms */
.politique-conf label a{
    text-decoration: underline;
    color: #12254B;
    font-weight: 700;
}
.politique-conf label span{
    margin-bottom: 1px;
}
.wpcf7-form{
    color: #12254b;
    font-weight: bold;
}
.wpcf7-form label{
    width: 100%;
}
.wpcf7-form .col-2 > p{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
}
.wpcf7-form input, .wpcf7-form textarea{
    border-radius: 25px !important;
    border: none !important;
    color: #12254b;
    outline: none;
    margin-top: 7px !important;
    &::placeholder{
        font-style: italic;
    }
}
.wpcf7-checkbox > span, .wpcf7-list-item{
    margin-left: 0px;
}
.wpcf7-form input[type='checkbox']{
    display: none;
    position: relative;
}
.wpcf7-checkbox .wpcf7-list-item-label::before{
        content: '';
        position: absolute;
        left: 0px;
        top: 3px;
        width: 16px;
        height: 16px;
        background: transparent;
        border: solid 2px #ffb300;
        border-radius: 5px;
}
.wpcf7-checkbox .wpcf7-list-item-label::after{
        content: '';
        position: absolute;
        left: 3px;
        top: 6px;
        width: 10px;
        height: 10px;
        border-radius: 3px;
        background: #ffb300;
         scale: 0;
        transition: .3s;
}
.wpcf7-form input[type='checkbox']:checked + .wpcf7-list-item-label::after{
    scale: 1;
}
.wpcf7-checkbox .wpcf7-list-item-label{
    padding-left: 25px;
    width: 100%;
display: inline-block;
}
.wpcf7-form .row-center{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.wpcf7-form .row-center > p{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.wpcf7-form .row-center > p > i{
    color: #8c8ca2;
}
.wpcf7-form input[type="submit"]{
    padding: 10px 25px !important;
    color: #234281;
}
.wpcf7-form input[type="submit"]:hover{
    padding: 10px 35px !important;
}
.wpcf7-response-output{
    margin: 0px !important;
    transform: translateY(-25px);
}
@media screen and (max-width: 768px){
    .wpcf7-form .col-2 > p{
        flex-direction: column;
        gap: 15px;
    }
    .wpcf7-form .col-2 br{
        display: none;
    }
    .wpcf7-form textarea{
        height: 125px;
    }
    .wpcf7-form label, .wpcf7-form .row-center{
        font-size: 14px;
    }
    .wpcf7-form .row-center > p{
        margin: 0px;
    }
    .wpcf7-form .col-1 > p{
        margin-bottom: 0px;
    }
}

.post-card .post-img{
height: 200px;
background-size: cover;
transition: .2s;
    }
    .post-card:hover .post-img-div .post-img{
            scale: 1.1;
    }
    .post-card:hover ~ .post-url .elementor-button-icon{
            padding-left: 10px !important;
    }

.post-card .post-img{
height: 300px;
background-size: cover;
transition: .2s;
}
.post-card:hover .post-img-div .post-img{
        scale: 1.1;
}
.post-card:hover ~ .post-url .elementor-button-icon{
        padding-left: 10px !important;
}
.post-card.min-width{
        min-width: calc(250px + 15vw);
}
@media screen and (max-width: 900px){
        .post-card.min-width{
                min-width: calc(250px + 5vw);
        }
}

.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer{
    display: none;
}


/* Styles boutons */
.custom-button .elementor-button-text::after{
    content: "";
    position: absolute;
    width: 25px;
    height: 25px;
    background: white;
    top: 49%;
    transform: translateY(-50%);
    border-radius: 50%;
    right: 10px;
}

.custom-button.level-2 .elementor-button-text::after{
		background-color: #FFB300;
}
	
.custom-button .elementor-button-text::before{
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    background: white;
    top: 40%;
    right: 20px;
    z-index: 1;
    border-bottom: solid 2px #FFB300;
    border-right: solid 2px #FFB300;
    transform: rotate(-45deg)
}
.custom-button.level-2 .elementor-button-text::before{
		border-color: white;
		background: #FFB300;
}
	
	
.custom-button .elementor-button{
    position: relative;
}
/* .custom-button, .elementor-widget-container{
		width: fit-content;
		height: fit-content;
} */
.custom-button .elementor-widget-container:hover .elementor-button{
    padding-right: 50px;
}
.custom-button .elementor-button-text{
		white-space: nowrap;
}








/* Counter */
.elementor-counter .elementor-counter-number-wrapper span{
    color: #07B3FF;
    margin-bottom: 15px;
    font-family: 'Karla';
    font-size: 59px;
    white-space: nowrap;
}
.elementor-counter{
    min-width: 170px;
}
.elementor-counter .elementor-counter-title{
    line-height: 29px !important;
}



/* Logo SVG Animation */
.logo-n-contours path{
    stroke-dasharray: 4000;
    stroke-dashoffset: 4000;
}
.logo-n-contours.active path{
    animation: dash 1s cubic-bezier(.25,.77,.67,.29) forwards;
}

.logo-n-plein path {
  stroke-dasharray: 4000;
    stroke-dashoffset: 4000;
}
.logo-n-plein.active path{
    animation: dash 2s cubic-bezier(.25,.77,.67,.29) forwards;
}

@keyframes dash {
  to {
    stroke-dashoffset: 0;
    }
}





/* Animation des titres */
h1, h2{
    opacity: 1;
}
h1.active, h2.active{
    opacity: 1;
}
.elementor-editor-active h1, .elementor-editor-active h2, .elementor-editor-preview h1, .elementor-editor-preview h2{
    opacity: 1;
}


h1 .text-overflow, h2 .text-overflow{
    line-height: 100%;
overflow: hidden;
display: inline-block;
}
h1 .text-overflow span, h2 .text-overflow span{
    position: relative;
display: inline-block;
    transform: translateY(100%);
    transition: transform 0.5s cubic-bezier(.3,.75,.59,1.33);
}
h1 .text-overflow.active span, h2 .text-overflow.active span{
    transform: translateY(0%);
}









/* Slider des cards */
.home .slides{
    padding-right: 26vw !important;
}
.slides{
        overflow-x: scroll !important;
      position: relative;
      z-index: 0;
      scroll-behavior: smooth;
  }
  .slides::-webkit-scrollbar {
       display: none;
  }
      .elementor-editor-active .slides::-webkit-scrollbar{
          display: block;
      }
  
  .slides .elementor-element{
      width: fit-content !important;
      min-width: fit-content !important;
  }
  .home .navList{
    right: 10vw;
  }
  .navList{
      position: absolute;
      z-index: 10;
      right: 33px;
      top: -80px;
      display: flex;
      align-items: center;
      gap: 20px;
  }
  .navList > img{
      cursor: pointer;
      transition: .2s;
  }
  .navList > img:hover{
      scale: 1.1;
  }
  .navList > img.inactive{
      opacity: 0.4;
      cursor: not-allowed;;
  }
      .navList > img.inactive:hover{
          scale: 1;
      }
      
  @media screen and (max-width: 1024px){
      .navList{
          top: -50px;
          right: 10px;
      }
  }
  @media screen and (max-width: 768px){
    .navList{
        top: auto;
        bottom: -65px;
        left: 50%;
        right: auto;
        transform: translate(-50%, 0);
    }
}




/* Pagination */
.elementor-pagination{
    margin-top: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.elementor-pagination .page-numbers{
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    color: #12254B;
    box-shadow: 0px 0px 19px #2967C71A;
    font-size: 20px;
    font-weight: bold;
    transition: .2s;
}
.elementor-pagination .page-numbers:hover{
            box-shadow: 0px 0px 19px #2967C733;
}
.elementor-pagination .page-numbers.current{
    background: #12254B;
    color: white;
    box-shadow: none;
}
.elementor-pagination .page-numbers.prev, .elementor-pagination .page-numbers.next{
    position: relative;
}
.elementor-pagination .page-numbers.prev::after, .elementor-pagination .page-numbers.next::after{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    scale: 0.9;
    opacity: 0.5;
    transition: .2s;
}
.elementor-pagination .page-numbers.prev[href]::after, .elementor-pagination .page-numbers.next[href]::after{
    opacity: 1;
}
.elementor-pagination .page-numbers.prev{
    margin-right: 20px !important;
    box-shadow: none;
}
.elementor-pagination .page-numbers.prev::after{
    content: url(https://nemea-groupe.definima.net/wp-content/uploads/2023/12/arrow-before.png);
}
.elementor-pagination .page-numbers.next{
    margin-left: 20px !important;
    box-shadow: none;
}
.elementor-pagination .page-numbers.next::after{
    content: url(https://nemea-groupe.definima.net/wp-content/uploads/2023/12/arrow-after.png);
}
.elementor-pagination .page-numbers.prev[href]:hover::after, .elementor-pagination .page-numbers.next[href]:hover::after{
    scale: 1;
}





/* Style de la plaquette */
.elementor-element-9e04718.plaquette-div{
    display: none;
    .plaquette{
        display: none;
        width: fit-content;
        input[type=submit]{
            padding: 15px 50px !important;
            &:hover{
                padding: 15px 60px !important;
            }
        }
    }
    .plaquette-background{
        display: none;
        cursor: pointer;
    }
    .plaquette-div{
        display: none;
    }
    .close-plaquette{
        cursor:pointer;
        transition: 0.3s;
    }
    .close-plaquette:hover{
        scale: 1.1;
    }
}
.plaquette.active{
    display: block !important;
}
.plaquette-background.active{
    display: block !important;
}
.plaquette-div.active{
    display: flex !important;
    justify-content: center;
    align-items: center;
}
@media (max-width: 768px){
    .plaquette > .e-con-inner > .elementor-element{
        max-height: 95vh;
        flex-wrap: nowrap;
        overflow-y: scroll;
    }
}


.elementor-element-3466623 .elementor-widget-ekit_wb_470 .elementor-widget-container{

        max-width: 100% !important;

}



/* Footer */
.menu-footer-1{
    .sub-menu{
        position: static !important;
        margin-left: 0px !important;
        margin-top: 0px !important;
        li a{
            background: #234281;
            color: white;
            border: none;
            font-weight: 400 !important;
            &:hover{
                border: none;
            }
        }
    }
}
.elementor-nav-menu .sub-arrow .fas.fa-chevron-down{
    font-size: 1rem !important;
}
@media (min-width: 768px){
    .menu-footer-1{
        .sub-menu{
            display: block !important;
            width: fit-content !important;
        }
        .sub-arrow{
            display: none !important;
        }
    }
}
@media (max-width: 768px){
    .menu-footer-1 .has-submenu{
        width: 100%;
        display: flex;
        justify-content: space-between;
    }
}

.pagination{
    margin-top: 50px !important;
}

.who-we-are-number .elementor-counter-title{
	text-align: center;
}

body .e-con-inner .elementor-element .elementor-widget-container .elementor-swiper-button svg{
	font-size: 52px;
	fill: rgb(255, 179, 0);
}