:root {
    --dark-sky-blue: #46baef;
    --royal: #11379d;
    --flat-blue: #3d7cad;
    --light-green-blue: #5dfdb9;
    --very-light-blue: #d5f3ff;
    --ice-blue: #f4fcff;
    --white: #fff;
    --black: #000;
}

.text-footer,
.text-footer a {
    line-height: 20px;
    color: var(--very-light-blue) !important;
}

.ml-6 {
    margin-left: 5rem;
}

#sp-header {
    border: none;
    box-shadow: none;
}

.sp-megamenu-parent>li.sp-has-child {
    width: 120px;
}

body.ltr .sp-megamenu-parent .sp-dropdown.sp-dropdown-main.sp-menu-right {
    top: 0;
}

ul.sp-megamenu-parent.menu-animation-fade-up.d-none.d-lg-block {
    display: flex !important;
}

.sp-megamenu-parent>li.active>a,
.sp-megamenu-parent>li.active>a, .sp-megamenu-parent>li.active:hover>a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a,
li.sp-menu-item.sp-has-child.active {
    color: var(--dark-sky-blue);
    font-weight: 500;
}

.sp-megamenu-parent>li>a.btnaec.gel.border-royal {
    line-height: 40px !important;
    display: flex !important;
    align-items: center;
    margin: 20px 0 0 10px !important;
}

.sp-menu-item:last-child a {
    padding-right: 15px !important;
}

.offcanvas-overlay {
    visibility: hidden !important;
    opacity: 0 !important;
}

#sp-menu>.sp-column {
    height: auto;
}

.btnaec {
    font-size: 15px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.4;
    letter-spacing: normal;
    transition: 0.3s;
    display: flex;
    width: max-content;
    justify-content: center;
}

.gel {
    border-radius: 30px;
    padding: 12px 23px;
    text-decoration: none;
    text-align: center;
}

.br-13 {
    border-radius: 13px;
}

.royal,
.royal-footer {
    background-color: var(--royal);
}

.royal span {
    color: var(--light-green-blue);
}

.royal-footer span {
    color: var(--light-green-blue);
}

.royal-footer .text-footer {
    color: var(--white);
}

.border-royal {
    border: 2px solid var(--royal);
    color: var(--royal) !important;
}

.white {
    background-color: var(--white);
    color: var(--dark-sky-blue) !important;
}

.bg-dark-sky-blue {
    background-color: var(--dark-sky-blue);
}

.bg-very-light-blue {
    background-color: var(--very-light-blue);
}

.bg-white {
    background-color: var(--white);
}

.bg-petits-plus {
    background-image: url(/images/hp/acc-bg-plus-feuillex.svg), url(/images/hp/acc-bg-plus-soleil.svg);
    background-size: 17% auto, 4% auto;
    background-position: left  30% bottom, right bottom;
    background-repeat: no-repeat
}

.bg-contact-acc {
    background-image: url(/images/hp/acc-bg-espace-client-gch3x.png), url(/images/hp/acc-bg-espace-client-drt.svg), url(/images/hp/acc-bg-devis3x.png);
    background-size: 30% auto, 15% auto, 55% auto;
    background-position: left top, right top, right bottom;
    background-repeat: no-repeat
}

.bg-header {
    background-image: url(/images/hp/acc-bg-header-gch.svg), url(/images/hp/mis-ec-bg-header-drt.svg);
    background-size: 20% auto, 8% auto;
    background-position: left top, right bottom 15%;
    background-repeat: no-repeat
}

.bg-montagne {
    background-image: url(/images/hp/acc-photo-reunion.webp);
    background-size: 22% auto;
    background-position: left top;
    background-repeat: no-repeat;
}

.text-black {
    color: var(--black);
}

.text-blue-light {
    color: var(--dark-sky-blue);
}

.text-blue-royal {
    color: var(--royal);
    font-weight: 700;
}

.text-blue-flat {
    color: var(--flat-blue);
}

img.logo-image {
    height: 60px;
}

#sp-footer .sp-module,
#sp-footer .container {
    max-width: 100%;
}

#sp-footer,
#sp-footer1 {
    padding: 0;
}

.p-footer {
    padding: 50px 130px;
    font-weight: 400;
    justify-content: space-between;
}

#sp-footer .text-black {
    padding: 15px 100px;
    font-weight: 500;
}

#sp-footer .text-black a {
    color: var(--royal);
}

#sp-footer .item-133 {
    display: none !important;
}

#sp-footer ul.menu {
    display: flex;
    flex-direction: column;
    color: var(--very-light-blue);
}

#sp-footer ul.menu a,
.p-footer .col-lg-3 .d-flex span,
.p-footer .col-lg-3 .d-flex span a {
    color: var(--very-light-blue) !important;
}

#sp-footer .sp-module .menu li:first-child:after {
    display: none;
}

#sp-footer ul.menu li {
    display: flex;
    flex-direction: column;
}

.logo-footer {
    background-image: url("/images/hp/logo-aec-footer3x.webp");
    background-position: center right;
    background-size: 100%;
    background-repeat: no-repeat;
}

.logo-esa-footer {
    height: 25px;
    margin-left: 1rem;
}

.fade-in-div, 
.fade-in-header {
    opacity: 0;
    transition: opacity 1s ease;
}

.flip-box {
    width: 100%;
    height: 280px;
}

.inner-flip-box {
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: transform 0.5s;
}

.flip-box-img {
    position: absolute;
    top: 0;
    right: 0;
    width: 180px;
}
  
.front-content,
.back-content {
    width: 100%;
    height: 100%;
    position: absolute;
    backface-visibility: hidden;
    display: flex;
    align-items: end;
    padding: 40px;
    border-radius: 18px;
}
  
.front-content {
    background-color: var(--very-light-blue);
}
  
.back-content {
    background-color: var(--very-light-blue);
    transform: rotateY(180deg);
}

.sppb-row-column {
    padding-left: 0;
    padding-right: 0;
}

.menu-item-count {
    display: none;
}

.fade-in-div.fade-in,
.initial-fade {
    opacity: 1;
}

.mr-6 {
    margin-right: 5rem;
}

.mt-6 {
    margin-top: 5rem;
}

.mb-7 {
    margin-bottom: 6rem;
}

.w-70 {
    width: 70%;
}

.sp-megamenu-parent .sp-has-child:hover>.sp-dropdown .sp-dropdown-inner {
    height: auto !important;
    background-color: var(--ice-blue);
    border-radius: 8px;
    box-shadow: none;
}

.sp-megamenu-parent .sp-has-child:hover>.sp-dropdown {
    padding-top: 0;
}

.sp-megamenu-parent>li:hover>a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item:hover>a {
    color: var(--royal);
}

ul.sp-megamenu-parent li.active a.btnaec.gel.border-royal {
    background-color: var(--royal) !important;
    color: var(--white) !important;
}

.royal:hover {
    background-color: var(--dark-sky-blue);
    color: var(--white);
}

.royal:hover span {
    color: var(--royal);
}

.royal-footer:hover {
    background-color: var(--white);
}

.royal-footer:hover span {
    color: var(--royal);
}

.royal-footer:hover .text-footer {
    color: var(--dark-sky-blue);
}

.border-royal:hover {
    background-color: var(--royal);
    border: 2px solid var(--royal);
    color: var(--white) !important;
}

.white:hover {
    background-color: var(--royal);
    color: var(--white) !important;
}

.bg-ice-blue {
    background-color: var(--ice-blue);
}

.acc-img-reunion {
    width: 100%;
}

.acc-img-uni {
    width: 37%;
    height: 100%;
}

.bg-cac-missions {
    background-image: url(/images/hp/mis-cac-bg-missions-gch3x.png), url(/images/hp/mis-cac-bg-missions-drt.svg);
    background-size: 30% auto, 45% auto;
    background-position: left top, right top;
    background-repeat: no-repeat
}

.bg-cac-chiffres {
    background-image: url(/images/hp/mis-cac-bg-devis-gch.svg), url(/images/hp/mis-cac-bg-devis-drt.svg);
    background-size: 22% auto, 50% auto;
    background-position: left top, right bottom;
    background-repeat: no-repeat
}

.bg-recrutement {
    background-image: url(/images/hp/recrut-illu-form.svg), url(/images/hp/recrut-bg-form.svg);
    background-size: 30% auto, 30% auto;
    background-position: left 10% bottom 10%, right top;
    background-repeat: no-repeat
}

.bg-acces-formulaire {
    background-image: url(/images/hp/acces-bg-form-gch.svg), url(/images/hp/acces-bg-form-drt.svg);
    background-size: 25% auto, 6% auto;
    background-position: left bottom 10%, right bottom 6%;
    background-repeat: no-repeat
}

.bg-devis {
    background-image: url(/images/hp/dev-bg-header-gch.svg), url(/images/hp/dev-bg-header-drt.svg);
    background-size: 30% auto, 8% auto;
    background-position: left top, right top 29%;
    background-repeat: no-repeat
}

.bg-contact {
    background-image: url(/images/hp/cont-illu-form.svg), url(/images/hp/cont-bg-form-drt.svg);
    background-size: 30% auto, 30% auto;
    background-position: left 10% bottom 10%, right top;
    background-repeat: no-repeat
}

.text-white {
    color: var(--white);
}

.text-green-light {
    color: var(--light-green-blue);
}
  
.flip-box:hover .inner-flip-box {
    transform: rotateY(180deg);
}

.container-exp-uni .sppb-row-container {
    max-width: 100% !important;
    padding: 0;
}

.container-exp-uni .sppb-row-container .col-lg-7 {
    padding-left: 35px;
    margin: 0 auto;
}

.img-recrutement-form,
.img-contact-form {
    display: none;
}

.nav.nav-pills,
.nav-pills-cac {
    background-color: var(--white);
    border-radius: 40px;
    display: flex;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
}

.nav.nav-pills .nav-link,
.nav-pills-cac .nav-link-cac {
    padding: 20px 30px;
    border-radius: 40px;
    color: var(--black);
    border: 0;
    background-color: var(--white);
    width: 100%;
    position: relative;
    overflow: hidden;
}

select#pills-dropdown {
    background-color: var(--royal);
    color: var(--white);
    padding: 20px 30px;
    height: auto;
    border: 0;
    border-radius: 35px !important;
    margin-bottom: 1rem;
    background-image: url(/images/hp/icon-plus.svg) !important;
    background-repeat: no-repeat;
    background-position: right 4% center;
    -webkit-appearance: none;
}

.img-mis-ong {
    width: 40%;
}

.tab-pane {
    display: flex !important;
    border-radius: 25px;
    justify-content: space-between;
    background-color: var(--white);
}

#result {
    background-color: var(--white);
    border-radius: 18px;
}

.nav.nav-pills .nav-link.active .text-blue-light,
.nav-pills-cac .nav-link-cac.active .text-blue-light {
    color: var(--light-green-blue) !important;
}

.fade:not(.show) {
    display: none !important;
}

.nav-item-cac {
    width: 50%;
}

.slide-ex {
    position: absolute;
    height: 100%;
    background-color: var(--royal);
    border-radius: 50px;
    transition: transform 0.5s ease-in-out;
    z-index: 1;
}

.slide-cac {
    position: absolute;
    height: 100%;
    background-color: var(--royal);
    border-radius: 50px;
    transition: transform 0.5s ease-in-out;
    z-index: 1;
    width: 50%;
}

.tab-text,
.tab-text-cac {
    position: absolute;
    height: 100%;
    transition: transform 0.5s ease-in-out;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
}

.carousel-indicators [data-bs-target] {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    opacity: 1;
    background-color: var(--very-light-blue);
    border: 0;
}

.carousel {
    height: 70%;
}

.carousel-indicators .active {
    background-color: var(--royal);
}

.carousel-indicators {
    margin-left: 90px;
    right: auto;
    margin-bottom: 0.6rem;
}

.carousel-control-prev-icon {
    background-image: url("/images/hp/caroussel-prev.svg");
}

.carousel-control-next-icon {
    background-image: url("/images/hp/caroussel-next.svg");
}

.carousel-control-next, 
.carousel-control-prev,
.carousel-control-next:hover, 
.carousel-control-prev:hover {
    width: auto;
    top: auto;
    opacity: 1;
}

.carousel {
    height: 200px;
}

.carousel-control-next {
    margin-left: 2.5rem;
    right: auto;
}

.mx-md-auto {
    margin: 0 !important;
}

.container-exp-uni .sppb-row {
    margin: 0;
}

@media (max-width: 992px) {
    .ml-6 {
        margin-left: 0;
    }

    .p-footer .moduletable h3 {
        text-align: center;
    }

    .w-70 {
        width: 70%;
        height: 70%;
    }

    .formContainer .row .col-md-6 {
        width: 100%;
        flex: 0 0 auto;
    }

    .p-footer .moduletable .menu {
        align-items: center;
    }

    .p-footer .moduletable .menu .menu-deeper .menu-child{
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .p-footer .moduletable .menu .menu-deeper .nav-header{
        display: none;
    }

    .img-recrutement-form,
    .img-contact-form {
        display: flex;
        width: 70%;
        margin: 0 auto;
    }

    .carousel {
        height: 250px;
    }

    .acc-img-uni {
        width: 75%;
        height: 100%;
    }

    .btnaec {
        width: 100%;
    }

    .bg-petits-plus {
        background-position: left 50% bottom, center right;
        background-size: 33% auto, 6% auto;
    }

    .bg-contact-acc {
        background-size: 60% auto, 0% auto, 80% auto;
    }

    .bg-cac-missions {
        background-size: 30% auto, 30% auto;
    }

    .bg-cac-chiffres {
        background-size: 30% auto, 88% auto;
    }

    .bg-header {
        background-size: 40% auto, 11% auto;
        background-position: left top, right bottom 45%;
    }

    .bg-recrutement {
        background-image: url(/images/hp/recrut-bg-form.svg);
        background-size: 50% auto;
        background-position: right top;
        background-repeat: no-repeat
    }

    .bg-devis {
        background-image: url(/images/hp/dev-bg-header-gch.svg), url(/images/hp/dev-bg-header-drt.svg);
        background-size: 34% auto, 11% auto;
        background-position: left top, right top 27%;
        background-repeat: no-repeat
    }

    .bg-acces-formulaire {
        background-image: none;
    }

    .bg-contact {
        background-image: url(/images/hp/cont-bg-form-drt.svg);
        background-size: 50% auto;
        background-position: right top;
        background-repeat: no-repeat
    }

    .flip-box-img {
        width: 40%;
    }

    .flip-box {
        width: 100%;
        height: 200px;
    }

    .w-ulg-100 {
        width: 100%;
    }

    .logo-footer {
        background-image: url("/images/hp/m-logo-aec-footer3x.jpg");
        background-position: bottom;
        background-size: cover;
        background-repeat: no-repeat;
        min-height: 250px;
    }

    ul.sp-megamenu-parent.menu-animation-fade-up.d-none.d-lg-block {
        display: none !important;
    }

    .offcanvas-menu {
        height: calc(100% - 100px);
        top: 90px !important;
    }

    .offcanvas-menu {
        background-color: var(--very-light-blue);
        width: 100%;
    }

    body.ltr.offcanvs-position-right .offcanvas-menu {
        right: -100%;
    }

    body.ltr .offcanvas-menu .offcanvas-inner ul.menu>li ul {
        width: 100%;
        margin-left: 0;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li.active a {
        color: var(--dark-sky-blue) !important;
        border-radius: 8px;
        display: flex;
        justify-content: center;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li.active .menu-child .current a {
        color: var(--dark-sky-blue) !important;
        border-radius: 8px;
        display: flex;
        justify-content: center;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li.active .menu-child a {
        color: var(--black) !important;
        border-radius: 8px;
        display: flex;
        justify-content: center;
    }

    .offcanvas-menu .offcanvas-inner ul.menu>li {
        display: flex;
        width: 100%;
    }

    .offcanvas-menu .offcanvas-inner ul.menu>li>span {
        padding: 25px 0 0 0;
        opacity: 1;
        font-size: 15px;
    }

    .offcanvas-menu .offcanvas-inner ul.menu>li>ul li a {
        color: var(--black);
        padding: 15px 0;
        font-weight: 600;
        text-align: center;
        font-size: 15px;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li:not(:last-child) a {
        background-color: var(--white);
        width: 100%;
        display: flex;
        border-radius: 8px;
        justify-content: center;
        padding: 15px 0;
        margin-top: 12px;
        font-size: 15px;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li.item-133 a {
        width: 100%;
        display: flex;
        border-radius: 30px;
        justify-content: center;
        padding: 15px 0;
        margin-top: 12px;
        font-size: 15px;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li.item-133 {
        margin-top: 90px;
    }

    .offcanvas-menu .offcanvas-inner ul.menu>li>a {
        opacity: 1;
    }

    .offcanvas-menu .offcanvas-inner ul.menu>li ul.menu-child {
        display: flex !important;
    }

    a#offcanvas-toggler {
        background-color: var(--royal);
        border-radius: 50%;
        padding: 13px 15px;
        justify-content: center;
    }

    li.item-127.menu-deeper.menu-parent {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    body.ltr .offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>.nav-header>.menu-toggler {
        display: none;
    }

    .offcanvas-menu .offcanvas-inner ul.menu li.item-133.active a {
        background-color: var(--royal) !important;
        color: var(--white) !important;
    }

    #offcanvas-toggler {
        width: 60px !important;
    }


    #offcanvas-toggler .burger-icon>span {
        height: 1px;
    }

    #offcanvas-toggler .burger-icon>span:nth-child(1),
    #offcanvas-toggler .burger-icon>span:nth-child(2),
    #offcanvas-toggler .burger-icon>span:nth-child(3) {
        transform: none !important;
        opacity: 1 !important;
        width: 100% !important;
    }

    #offcanvas-toggler .burger-icon>span:nth-child(1),
    #offcanvas-toggler .burger-icon>span:nth-child(3) {
        background-color: var(--white);
    }

    #offcanvas-toggler .burger-icon>span:nth-child(2) {
        background-color: var(--light-green-blue);
    }

    header#sp-header {
        padding: 15px 0;
        height: 90px;
    }

    .bg-montagne {
        background-attachment: initial !important;
        background-position: 50% 50% !important;
    }
}

@media (max-width: 425px) {
    .w-70 {
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    .flip-box-img {
        width: 50% !important;
    }

    .flip-box {
        width: 100%;
        height: 250px !important;
    }

    .acc-img-uni {
        width: 95%;
        height: 100%;
    }
    
    .carousel {
        height: 250px;
    }

    .bg-cac-missions {
        background-image: none;
    }

    .bg-cac-chiffres {
        background-image:url(/images/hp/mis-cac-bg-devis-drt.svg) !important;
        background-size: 88% auto !important;
        background-position: right bottom !important;
        background-repeat: no-repeat !important;    
    }

    .bg-recrutement {
        background-image: url(/images/hp/recrut-bg-form.svg);
        background-size: 55% auto;
        background-position: right top;
        background-repeat: no-repeat
    }

    .bg-devis {
        background-image: url(/images/hp/dev-bg-header-gch.svg), url(/images/hp/dev-bg-header-drt.svg);
        background-size: 50% auto, 18% auto;
        background-position: left top, right top 33%;
        background-repeat: no-repeat
    }

    .bg-header {
        background-size: 55% auto, 22% auto !important;
        background-position: left top 45%, right bottom 7% !important;
    }

    .mx-md-auto {
        margin: 0 auto !important;
    }

    .img-recrutement-form,
    .img-contact-form {
        display: flex;
        width: 100% !important;
    }
}

@media (max-width: 1200px) {
    .w-70 {
        width: 70%;
        height: 64%;
    }

    .p-footer {
        padding: 40px;
    }
}

@media (max-width: 1400px) {
    .nav.nav-pills .nav-link,
    .nav-pills-cac .nav-link-cac {
        padding: 20px 14px;
    }
}

@media (min-width: 576px) {
    .container-exp-uni .sppb-row-container .col-lg-7 {
        max-width: 540px;
        padding-left: 35px;
        margin: 0 auto;
    }
}

@media (min-width: 768px) {
    .container-exp-uni .sppb-row-container .col-lg-7 {
        max-width: 720px;
        padding-left: 80px;
        margin: 0 auto;
    }
}

@media (min-width: 992px) {
    .container-exp-uni .sppb-row-container .col-lg-7 {
        max-width: 960px;
        padding-left: 50px;
        margin: 0 auto;
    }
}

@media (min-width: 1200px) {
    .container-exp-uni .sppb-row-container .col-lg-7 {
        max-width: 1140px;
        padding-left: 50px;
        margin: 0 auto;
    }
}

@media (min-width: 1900px) {
    .bg-cac-chiffres {
        background-size: 30% auto, contain;
    }
}