/******************************************************************************
* 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(-100px);
    transform: translateY(-100px);
    -webkit-transition: visibility 700ms ease, -webkit-transform 500ms ease;
    transition: visibility 700ms ease, -webkit-transform 500ms ease;
    transition: transform 700ms ease, visibility 500ms ease;
    transition: transform 700ms ease, visibility 500ms ease, -webkit-transform 500ms ease;
    border: 1px solid #757376;
    background: #F8F8F8;
}


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


/** Banner slider **/

.banner-content {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.banner-subtitle {
    color: #757376;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.5em;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.banner-title {
    color: #2C2C2C;
    font-family: "Fraunces", serif;
    font-size: clamp(38px, 1rem + 2.5vw, 56px);
    font-style: normal;
    font-weight: 700;
    line-height: 1.142857em;
    text-transform: uppercase;
    margin-bottom: clamp(35px, 1rem + 2.8vw, 60px);
}

.banner-action {
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: center;
}


/** social-networks__inner **/

.page .social-networks-section {
    padding: 20px 0;
}

.social-networks__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
}

.social-networks__inner a {
    color: #2C2C2C;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    background-image: linear-gradient(to left, #2C2C2C, #2C2C2C);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 0 100%;
    display: flex;
    align-items: center;
    gap: 12px;
}

.social-networks__inner a span {
    background-image: linear-gradient(to left, #2C2C2C, #2C2C2C);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 0 100%;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

.social-networks__inner a:hover span {
    background-size: 100% 1px;
}

.social-networks__inner a:hover span {
    background-size: 100% 1px;
}


/** Image section **/

.image-section .bloc-image {
    height: 100vh;
    position: relative;
    overflow: hidden;
    max-height: 700px;
}

.image-section .bloc-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: none;
}


/** History **/

.history__inner .bloc-content {
    max-width: 740px;
    margin: 0 auto;
}

.history__inner .bloc-content .bloc-image {
    margin-bottom: 30px;
    border-radius: 150px;
    overflow: hidden;
    display: inline-block;
}

.history__inner .bloc-content .sect-title .bloc-title {
    background: linear-gradient(115deg, #7AA391 -2.69%, #86ACC3 48.83%, #C9C5D2 100.35%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: #fff;
    margin-bottom: 20px;
}


/** Our Slogan **/

.slogan-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    text-align: center;
    max-width: 818px;
    margin: 0 auto;
}

.slogan-text p {
    color: #2C2C2C;
    text-align: center;
    font-family: "Dancing Script", cursive;
    font-size: clamp(34px, 1rem + 2.5vw, 40px);
    font-style: normal;
    font-weight: 500;
    line-height: 1.15em;
    margin-bottom: 0;
}


/** Teams **/

.teams-content {
    margin: 50px 0;
}

.team-item {
    position: relative;
    width: 100%;
    height: 372px;
    overflow: hidden;
    border-radius: 20px;
}

.team-item .team-item__image img {
    transition: .5s;
    -webkit-transition: .5s;
}

.team-item:hover .team-item__image img {
    transform: scale(1.1);
}

.team-item__text {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 33px 40px;
    border-radius: 0 0 20px 20px;
    min-height: 90px;
    background: #EAEAEA;
}

.team-item .team-name {
    color: #2C2C2C;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.2em;
    text-transform: uppercase;
}


/** Testimonials **/

.testimonials__content {
    margin-top: 50px;
}

.testimonial-box {
    border-radius: 20px;
    display: flex;
    height: 100%;
    padding: 30px;
    flex-direction: column;
    gap: 20px;
    background: #EAEAEA;
}

.testimonial-box .testimonial-box__title {
    color: #2C2C2C;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
}

.testimonial-box p {
    margin-bottom: 0;
    color: #757376;
}

.testimonial-box .testimonial-box__ico {
    display: flex;
    width: 45px;
    height: 45px;
    justify-content: center;
    align-items: center;
    border-radius: 37.5px;
    background: #2C2C2C;
    margin-left: auto;
}

.testimonial-box .testimonial-box__ico a:hover img {
    transform: rotate(90deg);
}

.testimonial-box__action {
    display: flex;
    justify-content: center;
}


/** About us **/

.page-detail .about-us__content .img-box {
    margin-bottom: 91px;
}

.bloc-image.image-1 {
    width: 360px;
    height: 600px;
    position: relative;
}


/** Company benefits **/

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

.company-benefits__content {
    max-width: 873px;
    border-radius: 20px;
    overflow: hidden;
    margin: 0 auto;
}

.benefit-item {
    position: relative;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 30px;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.benefit-item * {
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.benefit-item .benefit-ico {
    border-radius: 37.5px;
    background: rgba(255, 255, 255, 0.10);
    display: flex;
    width: 75px;
    height: 75px;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

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

.benefit-item p {
    margin-bottom: 0;
    color: #fff;
}


/** Intervention area **/


/** Services diag**/

.services-diag-section {
    padding: 80px 0 110px;
}

.services-slide__wrap {
    border-radius: 20px;
    background: #FFF;
    overflow: hidden;
    margin-top: 57px;
    box-shadow: 186px 220px 81px 0 rgba(0, 0, 0, 0.00), 119px 141px 74px 0 rgba(0, 0, 0, 0.02), 67px 79px 62px 0 rgba(0, 0, 0, 0.07), 30px 35px 46px 0 rgba(0, 0, 0, 0.12), 7px 9px 25px 0 rgba(0, 0, 0, 0.14);
}

.services-slide__navigation.slide-controls-nav {
    display: flex;
    justify-content: end;
}

.service-item {
    position: relative;
}

.service-item * {
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.service-item .service-image {
    height: 550px;
    width: 100%;
    position: relative;
    border-radius: 20px;
}

.service-item .service-image:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #0E5069;
    opacity: 0;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.service-item:hover .service-image:before {
    opacity: 0.5;
}

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

.service-text {
    position: absolute;
    bottom: 26px;
    left: 26px;
    right: 26px;
    z-index: 3;
    transform: translateY(15px);
    opacity: 0;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.service-item:hover .service-text {
    transform: translateY(0);
    opacity: 1;
}

.service-item .service-ico {
    margin-bottom: 30px;
}

.services-slide.owl-carousel .owl-item .service-item .service-ico img {
    width: unset;
}

.service-item .service-cat,
.service-item .service-title {
    color: #FFF;
    font-size: 1.5em;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: capitalize;
}

.service-item .service-title {
    text-transform: uppercase;
}


/** Latest news **/

.latest-news__content {
    max-width: 680px;
    margin-left: auto;
}

.actus-item {
    position: relative;
    border-radius: 20px;
    border: 1px solid #757376;
    min-height: 236px;
    overflow: hidden;
    width: 100%;
    padding: 30px;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
}

.actus-item__inner {
    display: flex;
    gap: 20px;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.actus-item * {
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
}

.actus-item .actus-image .overlay {
    z-index: 1;
    opacity: 1;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
}

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

.actus-text {
    border-radius: 10px;
    border: 1px solid #757376;
    background: #F8F8F8;
    padding: 24px 30px;
    flex: 1;
}

.actus-date {
    color: #2C2C2C;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1em;
    display: flex;
    width: 90px;
    height: 90px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    border: 1px solid #757376;
    background: #F8F8F8;
    text-align: center;
}

.actus-date .day {
    font-size: clamp(28px, 1rem + 1.2vw, 34px);
    line-height: 0.882354em;
}

.actus-title {
    color: #2C2C2C;
    font-size: 1.625rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 16px;
}

.actus-title a {
    background-image: linear-gradient(to left, #2C2C2C, #2C2C2C);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 0 100%;
    -webkit-transition: all 500ms ease;
    transition: all 500ms ease;
}

.actus-title a:hover,
.actus-item:hover .actus-title a {
    background-size: 100% 1px;
}

.actus-item p {
    margin-bottom: 0;
    color: #757376;
}


/** Contact infos **/

.contact-infos-section {
    margin-bottom: 100px;
}

.blk-contact-infos {
    position: relative;
}

.blk-contact-infos .contact-infos-item {
    color: #2C2C2C;
    font-size: 1.25em;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

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

.blk-contact-infos .contact-infos-item a:hover {
    background-size: 100% 1px;
}

.blk-contact-infos .contact-infos-item .contact-title {
    color: #757376;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 30px;
}

.blk-contact-infos .contact-infos-item ul {
    display: flex;
    flex-direction: column;
    gap: 14px;
}


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


/** Footer column **/

.footer-column {
    padding: 50px 0;
}

.footer-column__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
}

.footer-logo {
    padding: 23px 0;
}

.footer-slogan {
    color: #2C2C2C;
    text-align: center;
    font-size: clamp(36px, 1rem + 1.9vw, 46px);
    font-style: normal;
    font-weight: 700;
    line-height: 1.130435em;
    text-transform: uppercase;
}


/** Footer contacts **/

.footer-contacts ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px 25px;
    flex-wrap: wrap;
}

.footer-contacts ul li a {
    color: #FFF;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 14px;
    border-radius: 20px;
}


/** Footer services **/

.footer-services {
    padding: 20px 0;
}

.footer-services ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    gap: 10px 30px;
    flex-wrap: wrap;
}

.footer-services ul li a {
    color: #2C2C2C;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 4px;
}

.footer-services ul li a span {
    background-image: linear-gradient(to left, #2C2C2C, #2C2C2C);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 0 100%;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

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


/** Footer bottom **/

.copyright {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 20px 0;
    color: #FFF;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5em;
    text-transform: uppercase;
}

.copyright ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px 0;
}

.copyright ul li {
    position: relative;
}

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

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

.copyright ul li:not(:last-child):after {
    content: '.';
    position: relative;
    display: inline-block;
    top: -4px;
    margin: 0 3px;
    font-size: 19px;
}


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


/** Banner **/

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


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


/** Contact us **/

.contact-us-section {
    padding: 105px 0 110px;
}

.intern.page-members .banner-title,
.intern.page-about-us .banner-title {
    font-size: clamp(38px, 1rem + 2vw, 42px);
}