/******************************************************************************
* 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 400ms ease, -webkit-transform 400ms ease;
    transition: visibility 400ms ease, -webkit-transform 400ms ease;
    transition: transform 400ms ease, visibility 400ms ease;
    transition: transform 400ms ease, visibility 400ms ease, -webkit-transform 400ms ease;
    background: #363636;
    box-shadow: 0 16px 32px -4px rgba(12, 12, 13, 0.10), 0 0 4px -4px rgba(12, 12, 13, 0.05);
}


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


/** Banner slider **/

.banner-inner {
    padding-top: 100px;
}

.banner-slide .banner-slide-item {
    position: relative;
    display: flex;
    align-items: center;
    height: 980px;
    overflow: hidden;
    width: 100%;
}

.banner-slide__content {
    position: relative;
    z-index: 2;
    max-width: 970px;
}

.banner-subtitle {
    margin-bottom: 40px;
}

.banner-subtitle img {
    margin-right: 20px;
}

.banner-slide .swiper-slide-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-title {
    color: #FFF;
    text-shadow: 0px 0px 40px rgba(0, 0, 0, 0.30);
    font-family: "Montserrat", sans-serif;
    font-size: 45px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 0;
}

.banner-slide .banner-title {
    margin-bottom: 40px;
}

.banner-slide .swiper-slide-active .banner-slide-item .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-actions {
    display: flex;
    align-items: center;
    gap: 28px;
}

.banner-slide .swiper-slide-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-actions a {}


/** About us **/

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

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

.about-us-section .sect-title .bloc-title {
    margin-bottom: 37px;
}

.bloc-image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bloc-image figure {
    width: 61%;
    max-width: 330px;
    max-height: 330px;
    height: 61%;
    border-radius: 50%;
    z-index: 2;
    position: relative;
    overflow: hidden;
    position: absolute;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
}

.bloc-image figure img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}


/** Company benefits **/

.company-benefits-section {
    padding: 138px 0 50px;
    position: relative;
    overflow: hidden;
}

.company-benefits-section:before,
.company-benefits-section:after {
    content: '';
    width: 626px;
    height: 626px;
    position: absolute;
    border-radius: 626px;
    background: radial-gradient(50% 50% at 50% 50%, rgba(164, 223, 125, 0.20) 0%, rgba(166, 231, 231, 0.00) 100%);
    background-blend-mode: lighten;
    z-index: 2;
}

.company-benefits-section:before {
    top: -145px;
    right: -359px;
}

.company-benefits-section:after {
    bottom: -316px;
    left: -296px;
}

.company-benefits-section .sect-title .bloc-title {
    margin-bottom: 52px;
}

.company-benefits__inner {
    padding: 106px 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    border-radius: 30px;
    background: #616161;
    gap: 50px;
}

.company-benefits__inner:before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 15px;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(15%, rgba(138, 215, 225, 0)), to(rgba(164, 223, 125, 0.8)));
    background: -o-linear-gradient(0deg, rgba(138, 215, 225, 0) 12%, rgba(138, 215, 225, 0.4) 73%, rgba(164, 223, 125, 0.8) 100%);
    background: linear-gradient(0deg, rgba(138, 215, 225, 0) 12%, rgba(138, 215, 225, 0.4) 73%, rgba(164, 223, 125, 0.8) 100%);
    border-radius: inherit;
    --m: conic-gradient(#616161 0 0);
    -webkit-mask: var(--m) content-box, var(--m);
    -webkit-mask-composite: xor;
    mask: var(--m) content-box exclude, var(--m);
    z-index: -1;
}

.benefits-txt {
    position: relative;
    max-width: 505px;
}

.benefits-txt p {
    color: #FFF;
    font-family: "Montserrat", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.063em;
}

.benefits-txt .opening-times {
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    background: linear-gradient(270deg, rgb(138, 215, 225) 0%, #8cdede 26.44%, #A4DF7D 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    display: inline-block;
    margin-bottom: 16px;
}

.benefits-list {
    display: flex;
    flex-direction: column;
    gap: 49px;
}

.benefits-list li {
    color: #FFF;
    font-family: "Montserrat", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.063em;
    padding-left: 45px;
    position: relative;
}

.benefits-list li:before {
    content: '';
    background: url('../images/icons/ico-logo-sm.svg') no-repeat top left;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 5px;
}


/** Intervention area **/


/** Our services **/

.our-services-section {
    padding: 94px 0 104px;
}

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

.our-services-item {
    position: relative;
    overflow: hidden;
    padding: 56px 42px;
    display: block;
    border-radius: 50px;
    background: #2D2D2D;
    min-height: 273px;
    z-index: 1;
}

.swiper-slide:nth-child(even) .our-services-item {
    margin-top: 56px;
}

.our-services-item:before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, rgba(174, 255, 53, 0)), to(rgba(164, 223, 125, 0.8)));
    background: -o-linear-gradient(bottom, rgba(174, 255, 53, 0) 50%, rgba(164, 223, 125, 0.8) 100%);
    background: linear-gradient(0deg, rgba(174, 255, 53, 0) 50%, rgba(164, 223, 125, 0.8) 100%);
    border-radius: inherit;
    --m: conic-gradient(#2D2D2D 0 0);
    -webkit-mask: var(--m) content-box, var(--m);
    -webkit-mask-composite: xor;
    mask: var(--m) content-box exclude, var(--m);
    z-index: -1;
}

.swiper-slide:nth-child(even) .our-services-item:before {
    background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, rgba(174, 255, 53, 0)), to(rgba(164, 223, 125, 0.8)));
    background: -o-linear-gradient(top, rgba(174, 255, 53, 0) 50%, rgba(164, 223, 125, 0.8) 100%);
    background: linear-gradient(180deg, rgba(174, 255, 53, 0) 50%, rgba(164, 223, 125, 0.8) 100%);
}

.our-services-item:after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0%;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, #8AD7E1), to(#A4DF7D));
    background: -o-linear-gradient(270deg, #8AD7E1 0%, #8CDFDF 26.44%, #a4df7d 100%);
    background: linear-gradient(270deg, #8AD7E1 0%, #8CDFDF 26.44%, #A4DF7D 100%);
    z-index: -1;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
    transition: all 0.7s;
}

.swiper-slide:nth-child(odd) .our-services-item:after {
    top: 0;
}

.swiper-slide:nth-child(even) .our-services-item:after {
    bottom: 0;
}

.our-services-item:hover:after {
    height: 100%;
}

.our-services-item__ico {
    width: 95px;
    height: 97px;
    border-radius: 25px;
    background: #363636;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 40px;
}

.our-services-item .our-services-item__title {
    color: #FFF;
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    position: relative;
    transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
}


/** Latest news **/

.latest-news-section {
    padding: 96px 0 38px;
}

.latest-news-section .sect-title .bloc-title {
    margin-bottom: 37px;
}

.actus-item {
    position: relative;
    overflow: hidden;
}

.actus-image {
    height: 330px;
    overflow: hidden;
    position: relative;
    width: 100%;
    border-radius: 25px;
}

.actus-image figure {
    position: relative;
    height: 100%;
    width: 100%;
}

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

.actus-date {
    color: #000;
    font-family: "Montserrat", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    border-radius: 25px;
    background: linear-gradient(270deg, #8AD7E1 0%, #8CDFDF 26.44%, #A4DF7D 100%);
    text-align: center;
    padding: 10px 16px;
    position: absolute;
    bottom: 20px;
    right: 20px;
    z-index: 1;
}

.actus-item .actus-txt {
    position: relative;
    padding: 40px 0;
}

.actus-item .actus-title {
    color: #363636;
    font-family: "Montserrat", sans-serif;
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.2em;
}

.actus-item .actus-title a {
    background-image: linear-gradient(to left, #0E7445, #0E7445);
    background-repeat: no-repeat;
    background-position: 0 96%;
    background-size: 0 1px;
}

.actus-item .actus-title a:hover {
    background-size: 100% 1px;
    color: #0E7445;
}


/** Online services **/

.online-services-section {
    padding: 0 0 70px;
}

.intern .online-services-section {
    padding: 98px 0 70px;
}

.online-services-section .sect-title .sub-title {
    margin-bottom: 22px;
}

.online-services-action {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.online-services-content>.row {
    margin: 0 -12px;
}

.online-services-content>.row>div {
    padding-left: 12px;
    padding-right: 12px;
}

.online-services-box {
    position: relative;
    padding: 70px 115px 70px 43px;
    border-radius: 25px;
    overflow: hidden;
    min-height: 474px;
    height: 100%;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 848px;
    margin: 0 auto;
}

.online-services-box:before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0%, rgba(138, 215, 225, 0.00)), to(#A4DF7D));
    background: -o-linear-gradient(0deg, rgba(138, 215, 225, 0.00) 0%, rgba(140, 223, 223, 0.20) 50%, #A4DF7D 100%);
    background: linear-gradient(0deg, rgba(138, 215, 225, 0.00) 0%, rgba(140, 223, 223, 0.20) 50%, #A4DF7D 100%);
    border-radius: inherit;
    --m: conic-gradient(#2D2D2D 0 0);
    -webkit-mask: var(--m) content-box, var(--m);
    -webkit-mask-composite: xor;
    mask: var(--m) content-box exclude, var(--m);
    z-index: 1;
}

.online-services-box .sect-title .sub-title {
    margin-bottom: 41px;
}

.online-services-box .sect-title .bloc-title {
    margin-bottom: 50px;
    font-size: 32px;
    line-height: 1.2em;
}

/** FAQ **/

.faq-section {
    padding: 73px 0 50px;
}

.faq-section .sect-title .bloc-title {
    margin-bottom: 31px;
}

.faq__image {
    position: relative;
    text-align: center;
    top: 160px;
    height: 170px;
}

.accordion-faq-wrap {
    position: relative;
}

.accordion.accordion-faq {
    position: relative;
}

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

.accordion .card-header .accordion-btn {
    font-family: "Karla", sans-serif;
    color: #F4F4F4;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    border: 0;
    padding: 0;
    border-radius: 0;
    margin: 0;
    background: #444444;
    text-transform: none;
    justify-content: space-between;
    display: flex;
    align-items: center;
    text-align: left;
    width: 100%;
    height: 75px;
    padding: 15px 28px 15px 28px;
    box-shadow: none;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    text-shadow: none;
}

.accordion .card-header .accordion-btn span:first-child {
    max-width: 416px;
    margin-right: 15px;
}

.accordion .card-header .accordion-btn:hover {
    color: #fff;
    background: #444444;
}

.accordion-ico {
    min-width: 8px;
}

.accordion-ico img {
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.accordion .card-header .accordion-btn[aria-expanded="true"] .accordion-ico img {
    transform: rotate(90deg);
}

.accordion .card .card-header {
    padding: 0;
    margin: 0;
    border-radius: 0;
    background: #444444;
    border: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    min-height: 75px;
}

.accordion .card .card-body {
    background: #444444;
    padding: 11px 28px 30px;
    width: 100%;
    min-height: 92px;
}

.accordion .card .card-body .bloc-text {
    color: #FFF;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}


/** Newsleter **/

.blk-newsletter {
    position: relative;
    padding: 57px 0 55px;
    min-height: 344px;
}

.blk-newsletter .sect-title .bloc-title {
    margin-bottom: 40px;
}

.blk-newsletter .newsletter-note {
    color: #FFF;
    text-align: center;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-align: center;
    margin-top: 18px;
}

.blk-newsletter .newsletter-form {
    position: relative;
    display: flex;
    justify-content: center;
}

.blk-newsletter .newsletter-form form {
    position: relative;
    max-width: 658px;
    width: 100%;
}

.blk-newsletter .newsletter-form .form-group {
    margin-bottom: 0px;
    width: 100%;
}

.blk-newsletter .newsletter-form .form-group input[type="email"] {
    font-family: "Montserrat", sans-serif;
    color: #fff;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.25em;
    position: relative;
    width: 100%;
    padding: 10px 20px;
    height: 60px;
    border: 0;
    display: inline-block;
    border-radius: 50px;
    border: 2px solid #FFF;
    background-color: transparent;
    -webkit-transition: all 300ms ease;
    transition: all 300ms ease;
    text-transform: none;
}

.blk-newsletter .newsletter-form .form-group button {
    position: absolute;
    top: 4px;
    right: 5px;
    width: 156px;
    height: 51px;
    border: 0;
}

.blk-newsletter .newsletter-form .form-group button:hover {}

.newsletter-form input:focus {
    color: #fff;
    background-color: transparent;
    border: 0;
}

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

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

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


/** Blk contact infos **/

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

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

.blk-contact-infos>.row {
    margin: 0 -12px;
}

.blk-contact-infos>.row>div {
    padding-left: 12px;
    padding-right: 12px;
}

.blk-contact-infos .contact-infos-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #FFF;
    font-family: "Montserrat", sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5em;
    border-radius: 50px;
    background: #363636;
    min-height: 261px;
    height: 100%;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    padding: 30px 15px;
}

.blk-contact-infos .contact-infos-item:hover {
    -webkit-transform: scale(1.03);
    -ms-transform: scale(1.03);
    transform: scale(1.03);
}

.blk-contact-infos .contact-infos-item:before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    padding: 2px;
    background: linear-gradient(270deg, #8AD7E1 0%, #8CDFDF 26.44%, #A4DF7D 100%);
    border-radius: 50px;
    --m: conic-gradient(#000 0 0);
    -webkit-mask: var(--m) content-box, var(--m);
    mask: var(--m) content-box exclude, var(--m);
    opacity: 0;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.blk-contact-infos .contact-infos-item:hover:before {
    opacity: 1;
}

.blk-contact-infos .contact-infos-item .contact-ico {
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.blk-contact-infos .contact-infos-item .contact-title {
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.27em;
    margin-bottom: 10px;
    display: inline-block;
    position: relative;
    transition: background-position 1s ease-in-out;
}

.blk-contact-infos .contact-infos-item:hover .contact-title {
    background: linear-gradient(270deg, #8AD7E1 0%, #8CDFDF 26.44%, #A4DF7D 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}


/** Map **/

.blk-map {
    position: relative;
    overflow: hidden;
    height: 425px;
    width: 100%;
    border-radius: 25px;
}


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


/* Footer column */

.footer-column {
    padding: 36px 0 35px;
}

.footer-column__item {
    position: relative;
}

.footer-logo {
    margin-bottom: 45px;
}

#toTop {
    position: relative;
    width: 60px;
    height: 60px;
    display: block;
    border-radius: 60px;
}


/** Footer contact **/

.footer-contact ul {
    display: flex;
    gap: 32px 0;
    flex-wrap: wrap;
}

.footer-contact ul li {
    color: #FFF;
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25em;
    flex: 0 0 50%;
}

.footer-contact ul li .contact-title {
    margin-bottom: 7px;
}


/** Footer services **/

.footer-services ul li {
    color: #D4D5D9;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.5em;
    position: relative;
    float: left;
}

.footer-services ul li:not(:last-child):after {
    content: '/';
    position: absolute;
    right: 0;
    top: 0;
    color: #D4D5D9;
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.2em;
    opacity: 0.4;
}

.footer-services ul li:not(:last-child) {
    margin-right: 16px;
    padding-right: 16px;
    margin-bottom: 4px;
}

.footer-services ul li a:hover {
    color: #fff;
}


/** Footer certification and insurance **/

.footer-certification-insurance ul {
    display: flex;
    align-items: center;
    gap: 15px 20px;
    flex-wrap: wrap;
}

.footer-certification-insurance__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px 30px;
    flex-wrap: wrap;
}


/** Footer copyright **/

.footer-copyright {
    position: relative;
    margin-top: 40px;
}

.copyright-txt {
    color: #FFF;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5em;
}


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


/** Banner **/

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

.intern .banner-inner .banner-content {
    position: relative;
}


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


/** Contact us **/

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