/******************************************************************************
* 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(-140px);
    transform: translateY(-140px);
    -webkit-transition: visibility 500ms ease, -webkit-transform 500ms ease;
    transition: visibility 500ms ease, -webkit-transform 500ms ease;
    transition: transform 500ms ease, visibility 500ms ease;
    transition: transform 500ms ease, visibility 500ms ease, -webkit-transform 500ms ease;
    border-radius: 0 0 12px 12px;
    background: #FFF;
    box-shadow: 179px 135px 63px 0 rgba(0, 0, 0, 0.00), 115px 86px 57px 0 rgba(0, 0, 0, 0.02), 65px 48px 48px 0 rgba(0, 0, 0, 0.08), 29px 22px 36px 0 rgba(0, 0, 0, 0.13), 7px 5px 20px 0 rgba(0, 0, 0, 0.15);
}

.sticked-menu .site-navigation .site-branding .logo-img {
    display: none !important;
}

.main-header .sticked-menu .other-links a.menu__contact-phone-link,
.sticked-menu .site-navigation .site-branding .logo-img-2 {
    display: flex !important;
}

.sticked-menu .site-navigation .site-branding {
    width: 155px;
}

.sticked-menu .site-navigation .menu>ul>li>a {
    color: #333A4F;
}

.sticked-menu .site-navigation .menu>ul>li.active>a,
.sticked-menu .site-navigation .menu>ul>li:hover>a,
.sticked-menu .site-navigation .menu>ul>li.hover>a {
    color: #89BB48;
}

.main-header .sticked-menu .other-links {
    margin-left: 30px;
}

.sticked-menu .site-navigation .menu>ul>li:not(:last-child)>:before {
    border-right: 1px solid rgba(104, 104, 104, 0.3);
}

.sticked-menu .site-navigation .menu>ul>li:not(:last-child)>a {
    padding-right: 30px;
    margin-right: 30px;

}

.sticked-menu .site-navigation .menu ul ul {
    border-radius: 0 0 12px 12px;
}

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

/** Banner slider **/

.banner-section {
    position: relative;
}

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

.banner-slide__content {
    position: relative;
    padding-top: 40px;
}

.banner-subtitle {
    color: #F1D421;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.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;
    font-size: clamp(36px, 1rem + 2.3vw, 52px);
    font-style: normal;
    font-weight: 500;
    line-height: 1.23077em;
    margin-bottom: 0;
}

.banner-slide__item .banner-title {
    margin-bottom: clamp(30px, 1rem + 2.8vw, 60px);
}

.banner-slide .swiper-slide-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: 600ms;
}

.banner-slide__content .banner-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 13px;
}

.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: 700ms;
}

.banner-slide__pagination.slide-control-dots {
    flex-direction: column;
    position: absolute;
    z-index: 3;
    right: 30px;
    display: inline-flex;
    top: 50%;
    transform: translateY(-50%);
    left: unset;
    width: 22px;
    bottom: unset;
}


/** About us **/

.about-us-section {
    padding: 90px 0 60px;
}

.about-us__content .bloc-content .layer-logo {
    margin: 0 -23px 18px 0;
    width: 45%;
    max-width: 283px;
}

.bloc-image.image-1 {
    position: relative;
    width: 565px;
    height: 434px;
}


/** Company benefits **/

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

.company-benefits__inner {
    display: flex;
    gap: clamp(30px, 1rem + 2.8vw, 60px);
    padding: 80px 30px 160px 30px;
    border-radius: 12px;
    overflow: hidden;
}

.company-benefits__content {
    max-width: 348px;
    padding-top: 70px;
}

.company-benefits__items {
    flex: 1;
}

.company-benefits__items>.row {
    margin: 0 -17px;
}

.company-benefits__items>.row>div {
    padding-left: 17px;
    padding-right: 17px;
}

.company-benefits__items>.row>div:first-child {
    margin-top: 70px;
}

.benefit-item {
    position: relative;
    padding: 60px 40px 30px 40px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    height: 100%;
    border-radius: 12px;
    background: #FFF;
    box-shadow: 179px 135px 63px 0 rgba(0, 0, 0, 0.00), 115px 86px 57px 0 rgba(0, 0, 0, 0.02), 65px 48px 48px 0 rgba(0, 0, 0, 0.08), 29px 22px 36px 0 rgba(0, 0, 0, 0.13), 7px 5px 20px 0 rgba(0, 0, 0, 0.15);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

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

.benefit-item:hover {
    background: #21A26F;
}

.benefit-item .benefit-ico {
    opacity: 0.2;
    position: absolute;
    top: 20px;
    right: 30px;
}

.benefit-item:hover .benefit-ico svg path {
    fill: #F1D421 !important
}

.benefit-item .benefit-title {
    color: #21A26F;
    font-size: 1.5em;
    font-style: normal;
    font-weight: 700;
    line-height: 1.416666em;
}

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

.benefit-item:hover .benefit-title {
    color: #F1D421;
}

.benefit-item:hover p {
    color: #fff;
}


/** Testimonials **/

.blk-testimonials {
    position: relative;
    z-index: 2;
    padding: 22px 30px;
    border-radius: 12px;
    max-width: 936px;
    width: calc(100% - 60px);
    margin: -70px auto 0;
    box-shadow: 179px 135px 63px 0 rgba(0, 0, 0, 0.00), 115px 86px 57px 0 rgba(0, 0, 0, 0.02), 65px 48px 48px 0 rgba(0, 0, 0, 0.08), 29px 22px 36px 0 rgba(0, 0, 0, 0.13), 7px 5px 20px 0 rgba(0, 0, 0, 0.15);
}

.testimonials-section .sect-title .bloc-title {
    color: #F1D421;
    font-size: 1.75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1em;
    margin-bottom: 16px;
}

.blk-testimonials .testimonials-btn-link {
    min-height: 52px;
    padding: 10px 24px;
}


/** Intervention area **/

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

.grid-image {
    gap: 24px 0;
    margin: 0 -12px;
}

.grid-image>div {
    padding-left: 12px;
    padding-right: 12px;
}


/** FAQ **/

.faq__inner {
    padding: 40px 30px 50px 30px;
    border-radius: 12px;
    overflow: hidden;
}

.faq__content .row {
    margin: 0 -20px;
}

.faq__content .row>div {
    padding-left: 20px;
    padding-right: 20px;
}

.faq__content .nav {
    display: flex;
    flex-direction: column;
    gap: 24px;
    max-width: 369px;
}

.faq__content .nav .nav-link {
    margin: 0;
    color: #21A26F;
    font-family: "Google Sans", sans-serif;
    font-size: 1.125em;
    font-style: normal;
    font-weight: 700;
    line-height: 1.555555em;
    border-radius: 12px;
    background: #FFF;
    display: flex;
    padding: 12px 24px;
    justify-content: start;
    align-items: center;
    text-align: left;
    gap: 0;
    border: 0;
    box-shadow: none;
    text-transform: none;
    margin: 0;
    position: relative;
}

.faq__content .nav .nav-link.active {
    color: #fff;
    background: #21A26F;
}

.faq__content .nav .nav-link:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 44px;
    background: url('../images/icons/ico-chevron-right.svg') no-repeat top left;
    right: -10px;
    opacity: 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.faq__content .nav .nav-link.active:after {
    opacity: 1;
}

.faq__content .tab-content .bloc-text {
    max-width: 318px;
    color: #686868;
    font-size: clamp(16px, 1rem + 0.4vw, 22px);
    font-style: normal;
    font-weight: 400;
    line-height: 1.81818em;
}

.faq__content .tab-content .bloc-image {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
}

.faq__content .tab-content .bloc-image .layer-logo {
    margin-bottom: 10px;
    width: 52%;
    max-width: 265px;
}


/** Services diag**/

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

.services-diag__inner {
    padding: 70px 30px 60px 30px;
    border-radius: 12px;
}

.service-item {
    position: relative;
    max-width: 300px;
    margin: 0 auto;
}

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

.service-item .service-image:before,
.service-item .service-image:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(51, 58, 79, 0.00) 46.48%, #333A4F 100%);
    pointer-events: none;
    -webkit-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-item .service-image:after {
    background: linear-gradient(180deg, rgba(33, 162, 111, 0.00) 46.48%, #21A26F 100%), rgba(33, 162, 111, 0.6);
    opacity: 0;
}

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

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

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

.service-text {
    position: absolute;
    bottom: 30px;
    right: 30px;
    left: 30px;
    z-index: 2;
}

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

.service-item .service-cat {
    color: #FFF;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.625em;
    text-transform: uppercase;
}

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

.services-slide .swiper-slide {
    width: auto;
}

.services-slide__pagination.slide-control-dots {
    margin: 40px 0 24px;
    height: 22px;
    display: flex;
    justify-content: center;
}

.services-slide__pagination.slide-control-dots .swiper-pagination-bullet {
    background: rgba(255, 255, 255, 0.5);
}

.services-slide__pagination.slide-control-dots .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: rgba(255, 255, 255, 0.7);
}


/** Latest news **/

.latest-news-section {
    padding: 120px 0 70px;
}

.actus-item {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}

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

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

.actus-image a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(33, 162, 111, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    opacity: 0;
}

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

.actus-image a img {
    transform: translateY(20px);
    width: 66%;
    max-width: 283px;
    height: auto;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
}

.actus-item:hover .actus-image a img {
    transform: translateY(0);
}

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

.actus-text {
    position: relative;
    display: flex;
    flex: 1;
    flex-direction: column;
    padding-top: 14px;
    -webkit-transition: all 300ms ease;
    transition: all 300ms ease;
}

.actus-date {
    color: #21A26F;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1em;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.actus-title {
    color: #333A4F;
    font-size: 1.5em;
    font-style: normal;
    font-weight: 700;
    line-height: 1.416666em;
    margin-bottom: 14px;
}

.actus-more {
    border-top: 1px solid rgba(33, 162, 111, 0.3);
    padding-top: 14px;
    margin-top: auto;
    width: 100%;
}

.actus-more a {
    color: #21A26F;
    font-size: 1.125em;
    font-style: normal;
    font-weight: 700;
    line-height: 1em;
    display: flex;
    align-items: center;
    gap: 5px;
    text-transform: uppercase;
}

.actus-item:hover .actus-title a {
    color: #21A26F;
}

.actus-item .actus-more a:hover {
    color: #89BB48;
}

.actus-item .actus-more a:hover svg path {
    fill: #89BB48 !important;
}


/** Newsletter **/

.blk-newsletter {
    position: relative;
    z-index: 3;
    max-width: 1064px;
    margin: 0 auto -74px;
}

.blk-newsletter .newsletter-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.blk-newsletter .newsletter-form form {
    position: relative;
    display: flex;
    justify-content: space-between;
    border-radius: 20px;
    background: #FFF;
    box-shadow: 441px 419px 170px 0 rgba(0, 0, 0, 0.00), 282px 268px 156px 0 rgba(0, 0, 0, 0.01), 159px 151px 131px 0 rgba(0, 0, 0, 0.05), 71px 67px 97px 0 rgba(0, 0, 0, 0.09), 18px 17px 53px 0 rgba(0, 0, 0, 0.10);
    gap: 30px;
    width: 100%;
    padding-left: 35px;
    overflow: hidden;
}

.blk-newsletter .newsletter-form .newsletter-form__inputs {
    display: flex;
    align-items: center;
    gap: 30px;
    flex: 1;
    padding: 17px 0;
}

.blk-newsletter .newsletter-title {
    color: #134672;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2em;
    max-width: 110px;
    padding: 15px 0;
}

.blk-newsletter .newsletter-form__note {
    color: #F8F7F3;
    text-align: center;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5em;
    position: relative;
}

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

.blk-newsletter .newsletter-form .form-group .form-control {
    font-family: "Google Sans", sans-serif;
    color: #333A4F;
    font-size: 1.125em;
    font-style: italic;
    font-weight: 500;
    line-height: 1em;
    width: 100%;
    height: 46px;
    padding: 14px;
    border-radius: 6px;
    border: 1px solid #9A9999;
    background-color: #fff;
    box-shadow: none;
    text-transform: none;
    position: relative;
}

.blk-newsletter .newsletter-form .newsletter-form__submit button {
    font-family: "Google Sans", sans-serif;
    color: #FFF;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.3em;
    text-transform: uppercase;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 0 20px 20px 0;
    padding: 15px 30px;
    border: 0;
}

.blk-newsletter .newsletter-form .newsletter-form__submit button:hover {
    background-color: #89BB48;
    color: #FFF;
}

.blk-newsletter .newsletter-form input:focus {
    border: 1px solid #9A9999;
    background-color: #FFF;
    color: #333A4F;
    box-shadow: none;
}

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

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

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


/** Contact infos **/

.contact-infos__inner .layer-shape {
    margin-top: -80px;
    z-index: 2;
}

.blk-contact-infos {
    position: relative;
    border-radius: 12px;
    background: #FFF;
    box-shadow: 179px 135px 63px 0 rgba(0, 0, 0, 0.00), 115px 86px 57px 0 rgba(0, 0, 0, 0.02), 65px 48px 48px 0 rgba(0, 0, 0, 0.08), 29px 22px 36px 0 rgba(0, 0, 0, 0.13), 7px 5px 20px 0 rgba(0, 0, 0, 0.15);
    overflow: hidden;
    z-index: 3;
    width: 100%;
    max-width: 1077px;
    min-height: 100px;
    padding: 7px 30px;
    margin: -50px auto 0;
}

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

.blk-contact-infos .contact-infos-item:not(:last-child):after {
    position: absolute;
    content: '';
    top: 50%;
    transform: translateY(-50%);
    right: -74px;
    height: 70px;
    width: 1px;
    border-right: 1px solid #D4D4D4;
}

.blk-contact-infos .contact-infos-item__inner {
    color: #484848;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5em;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 0;
    height: 100%;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.blk-contact-infos .contact-infos-item .contact-title {
    color: #21A26F;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.83333em;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    text-transform: uppercase;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.blk-contact-infos .contact-infos-item a:hover {
    color: #21A26F;
}


/** Map **/

.map-section {
    padding: 80px 0;
}

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

/******************************************************************************
* Footer
*******************************************************************************/
/** Footer- oclumn **/

.footer-column {
    padding-top: 104px
}

.footer-column__inner {
    border-top: 1px solid rgba(33, 162, 111, 0.5);
    padding: 30px 0 38px;
}

.footer-column__item {
    position: relative;
}

.footer-column__item:nth-child(2):after,
.footer-column__item:nth-child(2):before {
    content: '';
    height: 100%;
    position: absolute;
    top: 0;
    left: -3%;
    border-right: 1px solid rgba(33, 162, 111, 0.5);
    width: 1px;
}

.footer-column__item:nth-child(2):after {
    left: unset;
    right: -3px;
}


/** Footer contacts **/

.footer-contacts ul {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding-left: 70px;
}

.footer-contacts ul li {
    color: #F8F7F3;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5em;
    position: relative;
    display: flex;
    flex-direction: column;
}

.footer-contacts ul li>span:first-child {
    font-size: 12px;
    line-height: 2em;
    text-transform: uppercase;
}

.footer-contacts ul li a:hover {
    color: #8EBD20;
}


/** Footer services **/

.footer-services .footer-title {
    margin-bottom: 28px;
}

.footer-services ul {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 70px;
}

.footer-services ul li {
    color: #F8F7F3;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 2em;
    text-transform: uppercase;
    position: relative;
}

.footer-services ul li a:after {
    content: '';
    background: url('../images/icons/ico-arow-long-right.svg') no-repeat top left;
    background-size: cover;
    width: 12px;
    height: 6px;
    display: inline-block;
    position: relative;
    margin-left: 5px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

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

.footer-services ul li a:hover:after {
    background: url('../images/icons/ico-arow-long-right-green.svg') no-repeat top left;
    background-size: cover;
    width: 12px;
    height: 6px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}


/** Certification insurance **/

.footer-certification-insurance__inner {
    padding-left: 70px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-certification-insurance ul {
    display: inline-flex;
    align-items: center;
    border-radius: 20px;
    background: #FFF;
    padding: 10px 20px;
    max-width: 420px;
}

.footer-certification-insurance ul li {
    position: relative;
    min-height: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-certification-insurance ul li:first-child {
    border-right: 1px solid rgba(104, 104, 104, 0.5);
    padding-right: 20px;
    margin-right: 20px;
}


/** Footer bottom **/

.copyright {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid rgba(33, 162, 111, 0.5);
    padding: 30px 0;
    color: #F8F7F3;
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.714285em;
}

.copyright-arobiz {
    display: flex;
    align-items: center;
    gap: 4px;
}

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

.copyright ul li {
    position: relative;
}

.copyright ul li a:hover {
    color: #8EBD20;
}

.copyright ul:first-child li:not(:last-child) {
    margin-right: 8px;
    padding-right: 8px;
}

.copyright ul:first-child li:not(:last-child):before {
    content: '.';
    color: #8EBD20;
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 900;
    line-height: 1.714285em;
    position: absolute;
    top: -3px;
    right: -2px;
}

.img-arobiz {
    margin-top: -9px;
}


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

/** Banner **/

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


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


/** Contact us **/

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

.contact-us-section .sect-title h1 {
    margin-bottom: clamp(30px, 1rem + 3.4vw, 70px);
}
.tarteaucitronCTAButton ,#tarteaucitronCloseAlert {
    min-height: 24px;
}
.panel-body {
    background-color: transparent!important;
}

/** SEO keyword links - intervention area page **/

.seo-keywords {
    margin-top: 70px;
    padding: 55px;
    border-radius: 20px;
    background: #F8F7F3;
}

.seo-keywords__heading {
    max-width: 760px;
    margin-bottom: 42px;
}

.seo-keywords__subtitle {
    display: block;
    margin-bottom: 10px;
    color: #21A26F;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.seo-keywords__heading h2 {
    margin-bottom: 12px;
    color: #333A4F;
}

.seo-keywords__heading p {
    margin: 0;
    color: #686868;
}

.seo-keywords__group:not(:last-child) {
    margin-bottom: 38px;
}

.seo-keywords__group h3 {
    margin-bottom: 18px;
    color: #21A26F;
    font-size: 1.5rem;
}

.seo-keywords__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.seo-keywords__list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    min-height: 70px;
    height: 100%;
    padding: 15px 20px;
    border: 1px solid rgba(51, 58, 79, 0.10);
    border-radius: 12px;
    background: #FFF;
    color: #333A4F;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.4;
    box-shadow: 0 8px 24px rgba(51, 58, 79, 0.07);
    transition: transform 250ms ease, box-shadow 250ms ease, background 250ms ease, color 250ms ease;
}

.seo-keywords__list a:hover,
.seo-keywords__list a:focus {
    transform: translateY(-3px);
    background: #21A26F;
    color: #FFF;
    box-shadow: 0 14px 30px rgba(33, 162, 111, 0.20);
}

.seo-keywords__arrow {
    flex: 0 0 auto;
    color: #21A26F;
    font-size: 1.25rem;
    transition: transform 250ms ease, color 250ms ease;
}

.seo-keywords__list a:hover .seo-keywords__arrow,
.seo-keywords__list a:focus .seo-keywords__arrow {
    transform: translateX(4px);
    color: #F1D421;
}

.activity-keywords {
    clear: both;
    margin-top: 60px;
    padding: 42px;
}

.activity-keywords .seo-keywords__heading {
    margin-bottom: 30px;
}

.city-keywords .seo-keywords__list {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.city-keywords .seo-keywords__group h3 span {
    color: #686868;
    font-size: 0.875rem;
    font-weight: 500;
}

@media screen and (max-width: 991px) {
    .seo-keywords {
        padding: 42px 35px;
    }

    .seo-keywords__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 576px) {
    .seo-keywords {
        margin-top: 45px;
        padding: 30px 20px;
        border-radius: 12px;
    }

    .seo-keywords__heading {
        margin-bottom: 30px;
    }

    .seo-keywords__group:not(:last-child) {
        margin-bottom: 30px;
    }

    .seo-keywords__list {
        grid-template-columns: 1fr;
    }

    .seo-keywords__list a {
        min-height: 62px;
        padding: 14px 16px;
        font-size: 0.9375rem;
    }

    .activity-keywords {
        margin-top: 40px;
        padding: 28px 18px;
    }

    .city-keywords .seo-keywords__list {
        grid-template-columns: 1fr;
    }
}
