/******************************************************************************
* Header
*******************************************************************************/

.sticked-menu.sticky-header {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    visibility: visible;
}

.sticked-menu {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 23;
    visibility: hidden;
    -webkit-transform: translateY(-85px);
    transform: translateY(-85px);
    -webkit-transition: visibility 300ms ease, -webkit-transform 300ms ease;
    transition: visibility 300ms ease, -webkit-transform 300ms ease;
    transition: transform 300ms ease, visibility 300ms ease;
    transition: transform 300ms ease, visibility 300ms ease, -webkit-transform 300ms ease;
    background: #B7C1D1;
    box-shadow: 0 3px 25px 0 rgba(0, 0, 0, 0.35);
}


/******************************************************************************
* Content
*******************************************************************************/


/** Banner slider **/

.banner-section {
    position: relative;
}

.banner-slide .banner-slide__item {
    position: relative;
    display: flex;
    align-items: center;
    height: 810px;
    width: 100%;
}

.banner-slide__content {
    position: relative;
}

.banner-slide__content .banner-subtitle {
    color: #0C1D3B;
    text-align: right;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625em;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.banner-slide .owl-item.active .banner-subtitle {
    visibility: visible;
    animation: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 500ms;
}

.banner-slide__content .banner-line {
    margin: 55px 0;
    overflow: hidden;
    display: inline-flex;
}

.banner-slide__content .banner-line span {
    background: linear-gradient(90deg, #1D3358 10%, #0D4E25 35%, #F7AC29 65%, #E9592F 90%);
    width: 300px;
    height: 5px;
    margin-left: auto;
    display: inline-block;
}

.banner-slide .owl-item.active .banner-line span {
    visibility: visible;
    animation: fadeInRight;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 800ms;
}

.banner-title {
    color: #0C1D3B;
    -webkit-text-stroke-width: 1.5px;
    -webkit-text-stroke-color: #0C1D3B;
    font-family: "IM FELL French Canon", serif;
    font-size: clamp(32px, 1rem + 3.2vw, 65px);
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 0;
}

.banner-slide .owl-item.active .banner-title {
    text-align: right;
}

.banner-slide .owl-item.active .banner-title {
    visibility: visible;
    animation: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 700ms;
}

.banner-slide__content p {
    color: #FFF;
    font-size: clamp(21px, 1rem + 0.6vw, 24px);
    font-style: italic;
    font-weight: 400;
    line-height: 1.166666em;
    margin-bottom: 20px;
}

.banner-slide .owl-item.active .banner-slide__content p {
    visibility: visible;
    animation: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 800ms;
}

.banner-slide__content .banner-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px 20px;
    justify-content: end;
}

.banner-slide .owl-item.active .banner-actions {
    visibility: visible;
    animation: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 900ms;
}

.banner-slide.owl-carousel .owl-stage {
    display: flex;
}

.banner-slide.owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
}

.banner-slide__navigation.slide-controls-nav {
    position: absolute;
    bottom: 40px;
    left: 15px;
    z-index: 4;
    padding-left: 100px;
}


/** About us **/

.about-us-section {
    padding: 30px 0 100px;
}

.intern .about-us-section .bloc-content .sect-title h1,
.bloc-content .sect-title .bloc-title {
    margin-bottom: 35px;
}

.about-us-section .separation-line {
    margin-top: 70px;
}

.intern .about-us-section .separation-line {
    margin-top: 30px;
    margin-bottom: 50px;
}

.bloc-image.image-1 {
    position: absolute;
    top: 0;
    left: 0;
    height: 670px;
    min-width: 540px;
    margin-top: -95px;
}


/** Company benefits **/

.company-benefits-section {
    padding: 100px 0;
}

.company-benefits-section .sect-title {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: end;
    height: 100%;
    padding: 0 30px 10px 0;
}

.company-benefits-section .sect-title .sub-title {
    margin: -17px 0 0;
}

.benefit-item {
    position: relative;
    text-align: center;
    border: 1px solid #323232;
    background: #161A1F;
    display: inline-flex;
    padding: 20px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 230px;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.benefit-item:before,
.benefit-item:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-width: 32px 32px 0 0;
    border-color: #A9A321 transparent transparent transparent;
    border-style: solid;
    display: inline-block;
    opacity: 0;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.benefit-item:before {
    top: 20px;
    left: 20px;
}

.benefit-item:hover:before,
.benefit-item:hover:after {
    opacity: 1;
}

.benefit-item:after {
    bottom: 20px;
    right: 20px;
    border-width: 0 0 32px 32px;
    border-color: transparent transparent #A9A321 transparent;
}

.benefit-item:hover {
    border: 1px solid #A9A321;
    background: #161A1F;
}

.benefit-item .benefit-ico {
    margin-bottom: 10px;
}

.benefit-item .benefit-title {
    color: #FFF;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2em;
    text-transform: uppercase;
}

.benefit-item .benefit-desc {
    height: 48px;
    margin-bottom: -48px;
    margin-top: 15px;
    opacity: 0;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.benefit-item:hover .benefit-desc {
    margin-bottom: 0;
    opacity: 1;
}


/** Intervention area **/

.intervention-area-section {
    padding: 96px 0;
}

.intervention-area-section .sect-title .sub-title {
    margin-top: -58px;
    position: relative;
    z-index: 2;
    margin-bottom: 29px;
}

.intervention-area-section .separation-line {
    margin: 0 0 50px;
}

.intervention-area-section .bloc-image {
    margin-top: 32px;
}

.blk-intervention-area {
    position: relative;
    padding: 23px;
    background: rgba(0, 0, 0, 0.50);
    backdrop-filter: blur(25px);
    position: absolute;
    top: -25px;
    right: -15px;
    text-align: left;
    z-index: 2;
}

.blk-intervention-area ul {
    display: flex;
    flex-direction: column;
}

.blk-intervention-area ul li {
    color: #FFF;
    font-family: "IM FELL French Canon", serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 10px 26px;
    border-radius: 40px;
    background-color: transparent;
    display: block;
}


/** Services diag immo **/

.our-services-immo-section {
    padding: 85px 0 100px;
}

.our-services-immo-section .sect-title .sub-title {
    margin-bottom: 38px;
}

.our-services-immo-section .sect-title .bloc-title {
    margin-bottom: 50px;
}

.full-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.service-item {
    position: relative;
    height: 100%;
    overflow: hidden;
    width: 100%;
    z-index: 1;
}

.service-item .service-image {
    position: relative;
    width: 100%;
    height: 350px;
    overflow: hidden;
}

.service-item .service-image:before {
    content: '';
    background: rgba(0, 0, 0, 0.30);
    backdrop-filter: blur(20px);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.owl-carousel.services-slide .owl-item.active.center .service-image:before {
    backdrop-filter: unset;
}

.service-item .service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    -ms-transform: scale(1.5);
    transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -o-transform: scale(1.5);
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.owl-carousel.services-slide .owl-item.active.center .service-image img {
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
}

.service-item .service-text {
    position: absolute;
    bottom: 26px;
    left: 26px;
    right: 26px;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 5px;
    text-align: center;
    z-index: 3;
}

.service-item .service-cat {
    color: #FFF;
    text-align: center;
    font-family: "IM FELL French Canon", serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: uppercase;
    overflow: hidden;
    display: inline-flex;
    justify-content: center;
    text-align: center;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.service-item .service-title {
    color: #FFF;
    font-size: 1.5em;
    font-style: normal;
    font-weight: 700;
    line-height: 1.333333em;
    text-transform: uppercase;
    overflow: hidden;
    display: inline-flex;
    justify-content: center;
    text-align: center;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.service-item .service-title a,
.service-item .service-cat a {
    opacity: 0;
    visibility: hidden;
}

.owl-carousel.services-slide .owl-item.active.center .service-cat a {
    visibility: visible;
    opacity: 1;
    animation: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 600ms;
}

.owl-carousel.services-slide .owl-item.active.center .service-title a {
    visibility: visible;
    opacity: 1;
    animation: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 700ms;
}


/** Multiple bloc **/

.multiple-bloc-section {
    padding: 50px 0 214px;
}

.multiple-bloc__item .sect-title .bloc-title {
    margin-bottom: 20px;
}

.multiple-bloc__item {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 20px;
    position: relative;
    border: 1px solid #323232;
    padding: 50px 90px;
    min-height: 336px;
    height: 100%;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.multiple-bloc__item:hover {
    border-color: #A9A321;
}

.multiple-bloc__item .multiple-bloc__ico {
    position: absolute;
    bottom: 30px;
    right: 30px;
    display: flex;
    align-items: end;
    justify-content: end;
}

.multiple-bloc__item:hover .multiple-bloc__ico svg path {
    fill: #A9A321 !important;
    fill-opacity: 1 !important;
}


/** FAQ **/

.faq-section {
    padding: 47px 0 85px;
}

.faq-section .sect-title .bloc-title {
    padding-top: 20px;
}

.accordion.accordion-faq .card {
    background-color: transparent;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin-bottom: 20px;
    width: 100%;
    min-height: 86px;
    overflow: hidden;
    border-radius: 20px;
    background: none;
    border: 0;
}

.accordion.accordion-faq .card.active {
    background: none;
    box-shadow: 0 3px 20px 0 rgba(0, 0, 0, 0.40);
}

.accordion-faq .card-header .accordion-btn {
    color: #FFF;
    font-family: "IM FELL French Canon", serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin: 0;
    padding: 10px 20px;
    border: 0;
    text-transform: none;
    justify-content: space-between;
    display: flex;
    align-items: center;
    text-align: left;
    width: 100%;
    box-shadow: none;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    text-shadow: none;
    height: auto;
    height: 86px;
    border-radius: 20px;
    border: 1px solid #323232;
    background-color: transparent;
}

.accordion-faq .card-header .accordion-btn .accordion-ico {
    width: 24px;
    height: 24px;
    min-width: 24px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accordion-faq .card-header .accordion-btn .accordion-ico img {
    position: absolute;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
}

.accordion-faq .card-header .accordion-btn[aria-expanded="true"] .accordion-ico img,
.accordion-faq .card-header .accordion-btn .accordion-ico img+img {
    opacity: 0;
}

.accordion-faq .card-header .accordion-btn[aria-expanded="true"] .accordion-ico img+img {
    opacity: 1;
}

.accordion-faq .card-header .accordion-btn[aria-expanded="true"] {
    border-radius: 20px 20px 0 0;
    background-color: #FFF;
    color: #0C1D3B;
}

.accordion-faq .card .card-header {
    margin: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    min-height: 86px;
    padding: 0;
    background: none;
    border: 0;
}

.accordion-faq .card .card-body {
    padding: 20px;
    width: 100%;
    min-height: 86px;
    border-radius: 0 0 20px 20px;
    border: 1px solid #323232;
    background: #161A1F;
}


/** Latest news **/

.latest-news-section {
    padding: 134px 0 74px;
}

.latest-news-section .separation-line {
    margin: 0 0 50px;
}

.latest-news-section .sect-title .sub-title {
    margin-bottom: 30px;
}

.actus-item {
    position: relative;
}

.actus-item .actus-image {
    width: 100%;
    position: relative;
    height: 410px;
    overflow: hidden;
}

.actus-item .overlay-gradient {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.70) 100%);
    backdrop-filter: blur(2px);
}

.actus-item .actus-image:before,
.actus-item .actus-image:after {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    content: '';
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%);
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.actus-item .actus-image:after {
    background: linear-gradient(0deg, rgba(169, 163, 33, 0.35) 0%, rgba(169, 163, 33, 0.35) 100%);
    opacity: 0;
}

.actus-item:hover .actus-image:before {
    opacity: 0;
}

.actus-item:hover .actus-image:after {
    opacity: 1;
}

.actus-item .actus-image>img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.actus-text {
    position: absolute;
    bottom: 30px;
    left: 20px;
    right: 20px;
    overflow: hidden;
}

.actus-item p {
    margin-bottom: 10px;
}

.actus-item .actus-title {
    color: #FFF;
    font-family: "IM FELL French Canon", serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.4em;
    margin-bottom: 20px;
}

.actus-item .actus-more {
    height: 25px;
    margin-bottom: -35px;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.actus-item:hover .actus-more {
    margin-bottom: 0;
}

.actus-item .actus-more a {
    color: #fff;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.5em;
    background-image: linear-gradient(to left, #A9A321, #A9A321);
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
}

.actus-item .actus-more a:hover {
    color: #A9A321;
    background-size: 100% 1px;
}


/** Partners **/

.partners-section {
    padding: 150px 0;
}

.partners-section .separation-line {
    margin-top: 85px;
}

.partners-section .sect-title .bloc-title {
    padding-top: 14px;
}

ul.partners-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

ul.partners-list li {
    border-radius: 15px;
    border: 1px solid #323232;
    background: rgba(0, 0, 0, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 148px;
    height: 80px;
}


/** Map **/

.content-map {
    position: relative;
    width: 100%;
    height: 700px;
    overflow: hidden;
}


/** Contact infos **/

.contact-infos-section {
    padding: 90px 0;
}

.contact-infos-section .layer-bg {
    width: 100%;
    height: 200px;
}

.blk-contact-infos ul {
    display: flex;
    justify-content: center;
    gap: 30px 35px;
}

.blk-contact-infos ul li {
    border-radius: 20px;
    border: 10px solid #0A1222;
    background: #1D3358;
    box-shadow: 5px 5px 25px 0 rgba(0, 0, 0, 0.50);
    position: relative;
    width: 270px;
    min-height: 166px;
    color: #FFF;
    text-align: center;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.4em;
    gap: 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px 10px;
}

.blk-contact-infos ul li .contact-ico {
    height: 66px;
}


/******************************************************************************
* Footer
*******************************************************************************/


/* Footer column */

.footer-column__inner {
    padding: 0 0 85px;
}

.footer-column__right {
    padding-left: 35px;
}

.footer-column__item {
    position: relative;
}

.blk-speed-contact {
    color: #FFF;
    font-size: clamp(18px, 1rem + 0.4vw, 22px);
    font-style: normal;
    font-weight: 400;
    line-height: 1.272725em;
    max-width: 621px;
    margin-bottom: 58px;
}

.blk-speed-contact a {
    background-image: linear-gradient(to left, #fff, #fff);
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 100% 1px;
}


/** Newsletter **/

.blk-newsletter {
    position: relative;
    max-width: 405px;
}

.blk-newsletter .newsletter-form__note {
    color: #FFF;
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.35714em;
}

.blk-newsletter .newsletter-form .form-group {
    margin-bottom: 0;
}

.blk-newsletter .newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.blk-newsletter .newsletter-form form {
    display: flex;
    align-items: center;
    position: relative;
    gap: 20px;
}

.blk-newsletter .newsletter-form .form-group .form-control {
    font-family: "Jost", sans-serif;
    color: #FFF;
    text-align: left;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25em;
    height: 54px;
    padding: 15px 15px 15px 20px;
    border-radius: 50px;
    border: 1px solid #FFF;
    background: rgba(255, 255, 255, 0.10);
    box-shadow: none;
    text-transform: none;
    width: 270px;
    letter-spacing: normal;
}

.blk-newsletter .newsletter-form input:focus {
    border: 1px solid #FFF;
    background: rgba(255, 255, 255, 0.10);
    color: #FFF;
    box-shadow: none;
}

.blk-newsletter .newsletter-form input::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #FFF !important;
}

.blk-newsletter .newsletter-form input::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #FFF !important;
    opacity: 1;
    /* Firefox */
}

.blk-newsletter .newsletter-form input:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #FFF !important;
}


/** Footer services **/

.footer-services ul li {
    color: #FFF;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.75em;
    border-left: 3px solid #FFF;
    padding-left: 20px;
}

.footer-services ul li:nth-child(5),
.footer-services ul li:nth-child(2) {
    padding-top: 5px;
    padding-bottom: 5px;
}

.footer-services ul li a {
    background-image: linear-gradient(to left, #FFF, #FFF);
    background-repeat: no-repeat;
    background-position: 0 93%;
    background-size: 0 1px;
}

.footer-services ul li a:hover {
    background-size: 100% 1px;
}


/** Footer certification insurance and partner **/

.footer-certification-insurance ul {
    display: flex;
    flex-direction: column;
    align-items: end;
}

.footer-certification-insurance ul li {
    color: #FFF;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.75em;
}

.footer-certification-insurance ul li b {
    font-weight: 500;
}


/** Footer bottom **/

.footer-bottom {
    padding: 15px 0;
}

.copyright-text {
    color: #FFF;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.75em;
}

.copyright-text a {
    background-image: linear-gradient(to left, #FFF, #FFF);
    background-repeat: no-repeat;
    background-position: 0 93%;
    background-size: 0 1px;
}

.copyright-text a:hover {
    background-size: 100% 1px;
}

.copyright-text b {
    font-weight: 500;
}


/******************************************************************************
* Intern Page
*******************************************************************************/


/** Banner **/

.intern .banner-inner {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 380px;
}

.intern .banner-image .img-gradient {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.40) 100%);
}

.intern .banner-content {
    position: relative;
    padding-top: 22px;
}

.intern.page-contact .banner-content {
    padding-top: 70px;
}


/******************************************************************************
* Contact Page
*******************************************************************************/


/** Contact us **/

.contact-us-section {
    padding: 60px 0 150px;
}

.contact-us-section .separation-line {
    margin-top: 50px;
    margin-bottom: 50px;
}

.contact-us-section .bloc-content .bloc-image.image-1 {
    height: 696px;
    min-width: 555px;
    margin-top: -17px;
}
.wizard-classic-select option {
    color: #a9a321!important;
}