@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-Regular.woff2') format('woff2'),
        url('../fonts/Exo2-Regular.woff') format('woff'),
        url('../fonts/Exo2.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-Black.woff2') format('woff2'),
        url('../fonts/Exo2-Black.woff') format('woff'),
        url('../fonts/exo2-0-black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-BlackItalic.woff2') format('woff2'),
        url('../fonts/Exo2-BlackItalic.woff') format('woff'),
        url('../fonts/exo2-0-blackitalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-Light.woff2') format('woff2'),
        url('../fonts/Exo2-Light.woff') format('woff'),
        url('../fonts/exo2-0-light.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-LightItalic.woff2') format('woff2'),
        url('../fonts/Exo2-LightItalic.woff') format('woff'),
        url('../fonts/Exo2-LightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-MediumItalic.woff2') format('woff2'),
        url('../fonts/Exo2-MediumItalic.woff') format('woff'),
        url('../fonts/exo2-0-mediumitalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-Medium.woff2') format('woff2'),
        url('../fonts/Exo2-Medium.woff') format('woff'),
        url('../fonts/Exo2-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-Bold.woff2') format('woff2'),
        url('../fonts/Exo2-Bold.woff') format('woff'),
        url('../fonts/Exo2-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Exo2';
    src: url('../fonts/Exo2-SemiBold.woff2') format('woff2'),
        url('../fonts/Exo2-SemiBold.woff') format('woff'),
        url('../fonts/exo2-0-semibold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../fonts/OpenSans-Regular.woff2') format('woff2'),
        url('../fonts/OpenSans-Regular.woff') format('woff'),
        url('../fonts/OpenSans-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../fonts/OpenSans-Bold.woff2') format('woff2'),
        url('../fonts/OpenSans-Bold.woff') format('woff'),
        url('../fonts/OpenSans-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

:root {
    --blue-color: #4682b4;
    --blue-second-color: #0280b6;
    --blue-third-color: #066b9d;
    --blue-fourth-color: #daeef6;
    --blue-fifth-color: #056ea0;
    --blue-sixth-color: #3872a3;
    --blue-seventh-color: #066c9e;
    --blue-bg-color: #003651;
    --blue-light-color: #cfe1ed;
    --blue-gray-color: #edf2f5;
    --white-color: #fff;
    --orange-color: rgba(255, 140, 0, 0.25);
    --orange-link-color: #ff8c00;
    --orange-color-second: #ef8c2a;
    --orange-color-third: #ff991c;
    --black-color: #212121;
    --black-text-color: #000;
    --gray-color: #999999;
    --gray-light-color: #e3e3e3;
    --anthracite-color: #282243;
    --swiper-navigation-size: 19px;
    --swiper-theme-color: rgba(0, 0, 0, 0.25);
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Exo2', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: normal;
    color: #818181;
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1;
}

.container {
    max-width: 1132px;
    padding: 0 11px;
    margin: 0 auto;
}

.link,
.link:link {
    text-decoration: none;
}

.link-hover {
    transition: all 0.3s ease;
}

.link-hover:hover {
    text-decoration: underline;
    color: var(--orange-link-color);
    text-underline-offset: 4px;
}

.heavy-content {
    content-visibility: auto;
}

.hidden-title {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}


.header {
    margin-top: 11px;
    margin-bottom: 10px;
}

.header__fixed {
    position: fixed;
    top: 11px;
    z-index: 1000;
    display: flex;
    align-items: center;
}

.header__fixed.scrolled {
    padding: 6px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 15%;
}

.logo {
    padding-left: 60px;
}

.logo__main {
    transition: transform 0.3s ease;
}

.header__fixed.scrolled .logo__main {
    transform: scale(0.7);
}

.logo__mob {
    display: none;
}

.header__bottom {
    margin-top: 67px;
    display: flex;
    justify-content: space-between;
    gap: 26px;
}

.menu {
    padding-left: 91px;
    margin-top: -5px;
}

.menu__list {
    display: flex;
    gap: 26px;
}

.menu__link {
    font-size: 16px;
    font-weight: 500;
    color: var(--blue-third-color);
}

.main-descr {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
}

.main-descr span {
    font-weight: bold;
}

.mail {
    font-size: 16px;
    color: var(--blue-color);
    padding-left: 157px;
}

.mail::before {
    content: '';
    display: inline-block;
    width: 34px;
    height: 34px;
    background: url('/images/icon-mail.png') no-repeat center center;
    background-size: contain;
    margin-right: 10px;
    vertical-align: middle;
}

.button {
    min-width: 210px;
    max-height: 54px;
    display: flex;
    flex-direction: column;
    background: radial-gradient(circle, #007db4, #006da2);
    clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
    font-size: 12px;
    text-transform: uppercase;
    text-align: center;
    color: var(--white-color);
    padding: 10px;
    position: relative;
    overflow: hidden;
    transition: background-color 0.3s;
    margin-top: -10px;
    margin-left: 5vw;
}

.button::after {
    content: '';
    display: block;
    height: 2px;
    background-color: #ff9e00;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    transform: scaleX(1);
    transition: transform 0.3s;
}

.button:hover::after {
    transform: scaleX(1.2);
}

.button:hover {
    background: radial-gradient(circle, #006da2, #007db4);
}

.bold-text {
    font-size: 18px;
    font-weight: 500;
}


/* Модальное окно */
.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal__content {
    background-color: var(--white-color);
    margin: 10% auto;
    padding: 20px;
    width: 50%;
    background-color: var(--blue-bg-color);
    border-radius: 10px;
}

.modal__body {
    padding: 30px;
}

.modal__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 30px;
}

.modal__img {
    max-width: 120px;
    height: 100%;
}

.modal__description {
    max-width: 600px;
    font-size: 20px;
    color: var(--white-color);
}

.modal__fields {
    display: flex;
    gap: 20px;
    margin-bottom: 26px;
}

.modal__input {
    background-color: var(--white-color);
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
    border: 1px solid var(--blue-color);
    padding: 18px 10px;
    color: #808080;
    font-size: 16px;
    width: 100%;
}

.modal-message {
    margin-bottom: 30px;
}

.modal__captcha {
    margin: 0 auto;
    max-width: 180px;
    margin-bottom: 30px;
}

.modal__task {
    color: var(--blue-gray-color);
    font-size: 16px;
    text-align: center;
    margin-bottom: 10px;
}

.modal__submit {
    width: 100%;
    background-color: var(--orange-link-color);
    clip-path: polygon(0% 36%, 4% 0.00%, 100% 0%, 100% 100%, 0% 100%);
    padding: 20px;
    font-size: 16px;
    font-weight: 200;
    color: var(--black-text-color);
    margin-bottom: 26px;
    transition: background-color 0.3s ease;
}

.modal__submit:hover {
    background-color: var(--blue-color);
}

.modal__agreement {
    display: flex;
    gap: 12px;
    font-size: 15px;
    font-weight: 200;
    line-height: 1;
    color: var(--white-color);
}

.modal__checkbox {
    appearance: none;
    width: 18px;
    height: 16px;
    background-color: var(--white-color);
    border: 1px solid #124a7b;
    position: relative;
    cursor: pointer;
}

.modal__checkbox:checked::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 5px;
    width: 5px;
    height: 10px;
    border: solid #129b12;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.modal__link {
    color: var(--white-color);
    text-underline-offset: 3px;
    transition: color 0.3s ease;
}

.modal__link:hover {
    color: var(--orange-link-color);
}

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

.close-button {
    color: var(--orange-link-color);
    float: right;
    font-size: 26px;
    font-weight: bold;
    cursor: pointer;
    line-height: 1;
    transition: color 0.3s ease;
}

.close-button:hover,
.close-button:focus {
    color: var(--blue-gray-color);
    text-decoration: none;
}

/* Модальное окно "Спасибо" */

.thank-you-modal {
    margin: 0 auto;
    max-width: 380px;
}

.modal__title {
    font-size: 22px;
    color: var(--blue-fourth-color);
    margin-bottom: 16px;
}

.modal__time {
    display: block;
}


.modal {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.modal[style*="display: block"] {
    opacity: 1;
    visibility: visible;
}

/* Footer */
.footer {
    margin-top: 66px;
    background-color: rgba(211, 225, 232, 0.2);
    position: relative;
    padding-top: 12px;
    padding-bottom: 16px;
}

.footer::after {
    content: '';
    background-image: url('../images/background-blur.png');
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0;
    right: 18%;
    width: 545px;
    height: 71px;
    z-index: -1;
}

.footer__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-menu {
    margin-bottom: 12px;
}

.footer-menu__list {
    display: flex;
    gap: 32px;
}

.footer-menu__link {
    color: var(--blue-color);
    font-size: 12px;
    font-weight: 500;
}

.policy {
    margin-bottom: 10px;
}

.policy__list {
    display: flex;
    gap: 32px;
}

.policy__link {
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    color: #0687bf;
    text-decoration: underline;
    text-underline-offset: 2px;
}

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

.copyright__year {
    font-size: 12px;
    font-weight: bold;
    color: var(--blue-second-color);
}

.copyright__text {
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    line-height: normal;
    margin-top: 1px;
}

.footer__right {
    display: flex;
    flex-direction: column;
    position: relative;
}

.phone {
    font-size: 18px;
    font-weight: 600;
    color: #232323;
}

.phone::before {
    content: '';
    display: inline-block;
    width: 34px;
    height: 34px;
    background: url('/images/icon-call.png') no-repeat center center;
    background-size: contain;
    margin-right: 5px;
    vertical-align: middle;
}

.contacts {
    color: var(--blue-color);
    position: absolute;
    left: 45px;
    bottom: -10px;
}

.scroll-top-btn {
    position: fixed;
    bottom: 156px;
    left: calc(5% + 10px);
    color: var(--blue-second-color);
    font-size: 12px;
    display: none;
    transition: opacity 0.3s;
}

.scroll-top-btn::before {
    content: '';
    display: block;
    background: url('../images/icon-up.png') no-repeat center center;
    width: 56px;
    height: 55px;
    margin: 0 auto;
}

.hero {
    background: url(../images/background-hero.png) no-repeat center center;
    background-size: cover;
}

.swiper-heroslide {
    max-height: 560px;
}

.hero__slide {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 9px;
    padding-top: 57px;
    padding-bottom: 65px;
}

.hero__content {
    width: 44%;
}

.hero__img {
    max-height: 438px;
}

.hero__title {
    max-width: 380px;
    font-size: 40px;
    font-weight: 500;
    margin-bottom: 40px;
    color: var(--black-color);
    line-height: 1.40;
}

.hero__list {
    font-size: 40px;
    font-weight: 200;
    line-height: 1.30;
    text-transform: uppercase;
    color: var(--black-color);
    margin-bottom: 32px;
}

.hero__item {
    position: relative;
    padding-left: 46px;
}

.hero__item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-35%);
    width: 32px;
    height: 32px;
    background-size: contain;
    background-repeat: no-repeat;
}

.hero__item:nth-child(1)::before {
    background-image: url('../images/icon-fill-arrow-right.png');
}

.hero__item:nth-child(2)::before {
    background-image: url('../images/icon-fill-security.png');
}

.hero__item:nth-child(3)::before {
    background-image: url('../images/icon-fill-cogwheel.png');
}

.hero__text {
    max-width: 500px;
    font-size: 30px;
    font-weight: 200;
    font-style: italic;
    color: var(--blue-color);
}

.hero__slide-backup {
    padding-top: 70px;
    padding-bottom: 66px;
}

.hero__term {
    background-color: #0083b7;
    clip-path: polygon(1% 0%, 100% 0%, 99% 100%, 0% 100%);
    color: #ecf6ff;
    text-align: center;
    font-size: 36px;
    padding-bottom: 9px;
    margin-bottom: 30px;
}

.hero__inner {
    display: flex;
    justify-content: space-between;
    padding-right: 30px;
}

.hero__content-backup {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: 20px;
}

.hero__definition {
    font-size: 46px;
    font-weight: 500;
    text-transform: uppercase;
    color: var(--orange-color-second);
}

.hero__link {
    font-size: 18px;
    color: var(--orange-link-color);
    text-underline-offset: 3px;
    transition: color 0.3s ease, opacity 0.3s ease;
}

.hero__link:hover {
    color: rgba(255, 165, 0, 0.7);
    opacity: 0.8;
}

.hero__slide-audit {
    position: relative;
}

.position-title {
    position: absolute;
    top: 42px;
    max-width: 900px;
    font-size: 48px;

}

.hero__inner-audit {
    padding-top: 135px;
    display: flex;
}

.hero__content-audit {
    display: flex;
    flex-direction: column;
    gap: 52px;
    padding-top: 75px;
}

.hero__slide-smooth {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding-top: 55px;
    padding-bottom: 41px;
    background: url(../images/background-smooth.png) no-repeat center right;
}

.hero__title-smooth {
    position: absolute;
    top: 110px;
    font-size: 43px;
    font-weight: 500;
    color: var(--blue-color);
    display: flex;
    flex-direction: column;
}

.hero__title-smooth span {
    color: var(--orange-link-color);
}

.hero__content-smooth {
    padding-top: 190px;
}

.hero__content-smooth .hero__text {
    margin-bottom: 41px;
}

.swiper-button-next,
.swiper-button-prev {
    width: 38px;
    height: 38px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--swiper-theme-color);
    border-radius: 50%;
    position: absolute;
    z-index: 10;
    color: var(--swiper-theme-color);
    user-select: none;
    transition: all 0.3s;
}

.swiper-button-next {
    transform: translateY(60%);
}

.swiper-button-prev {
    transform: translateY(60%);
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
    border: 1px solid var(--orange-color);
    color: var(--orange-color);
}

.menu-scroll {
    background-color: var(--blue-fourth-color);
}

.menu-service-scroll {
    background: transparent;
}

.menu-scroll__list {
    display: flex;
    justify-content: center;
}

.menu-scroll__link {
    font-weight: 600;
    color: var(--anthracite-color);
    display: inline-block;
    padding: 20px 15px;
    transition: all 0.3s ease;
}

.menu-scroll__link:hover {
    background-color: #ecf7fb;
    color: var(--blue-color);
}

.services {
    margin-top: 53px;
    margin-bottom: 58px;
}

.title {
    font-size: 36px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.4px;
    margin-bottom: 36px;
    color: var(--black-color);
}

.services__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 38px;
}

.services__link {
    height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    background-color: #fafafa;
    box-shadow: 2px 1.37px 2px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--blue-light-color);
    padding: 19px 12px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.services__link:hover {
    background-color: #007fb3;
}

.services__link:hover .services__name {
    color: #fffefe;
}

.services__img {
    height: 80%;
    position: relative;
}

.hover-img {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.services__item:hover .hover-img {
    opacity: 1;
}

.services__item:hover .service-img:not(.hover-img) {
    opacity: 0;
}

.services__name {
    height: 20%;
    text-transform: uppercase;
    color: var(--black-text-color);
    font-weight: 600;
}

.services__link-all {
    font-size: 16px;
    font-weight: 600;
    color: var(--blue-third-color);
    transition: color 0.3s ease;
}

.services__link-all:hover {
    color: var(--orange-link-color);
}

.contact {
    position: relative;
    background-color: #003959;
}

.contact__inner {
    background: url(../images/background-contact.png) no-repeat center center;
    background-size: cover;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    padding: 40px 45px 29px 45px;
}

.contact__img {
    position: absolute;
    left: 13vw;
    top: 30px;
}

.contact__content {
    position: relative;
    top: -80px;
    left: 11vw;
    color: var(--white-color);
}

.contact__title {
    max-width: 430px;
    font-size: 59px;
    font-weight: 600;
    margin-bottom: 24px;
}

.contact__title span {
    display: block;
    font-size: 37px;
    color: #5aceff;
}

.contact__text {
    position: absolute;
    right: -68px;
    max-width: 370px;
    font-size: 24px;
    line-height: 1.4;
}

.contact__form {
    width: 285px;
    display: flex;
    flex-direction: column;
}

.contact__item {
    background-color: var(--white-color);
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
    border: 1px solid var(--blue-color);
    padding: 18px 10px;
    color: #808080;
    font-size: 16px;
    margin-bottom: 14px;
}

.contact-btn {
    background-color: var(--orange-link-color);
    clip-path: polygon(0.00% 18%, 4% 0.00%, 100% 0%, 100.00% 100%, 0% 100%);
    padding: 18px;
    font-size: 16px;
    font-weight: 200;
    color: var(--black-text-color);
    margin-bottom: 26px;
    transition: background-color 0.3s ease;
}

.contact-btn:hover {
    background-color: var(--blue-color);
}

.privacy-policy {
    display: flex;
    gap: 12px;
    font-size: 15px;
    font-weight: 200;
    line-height: 1;
    color: var(--white-color);
}

.agreement-box {
    appearance: none;
    width: 24px;
    height: 16px;
    background-color: var(--white-color);
    border: 1px solid #124a7b;
    position: relative;
    cursor: pointer;
}

.agreement-box:checked {
    background-color: var(--white-color);
}

.agreement-box:checked::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 5px;
    width: 5px;
    height: 10px;
    border: solid #129b12;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.agreement-link {
    color: var(--white-color);
    text-underline-offset: 3px;
    transition: color 0.3s ease;
}

.agreement-link:hover {
    color: var(--orange-link-color);
}

.principles {
    position: relative;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 49px;
}

.principles__list {
    min-height: 540px;
}

.principles__item {
    width: 257px;
    height: 286px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 10px 25px;
    font-weight: 600;
    line-height: 1.6;
    color: var(--black-text-color);
    text-transform: uppercase;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
}

.honeycomb {
    background-image: url(../images/honeycomb-0.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.honeycomb-1 {
    background-image: url(../images/honeycomb-1.png);
    top: 124px;
    left: 620px;
}

.honeycomb-2 {
    background-image: url(../images/honeycomb-2.png);
    top: 124px;
    left: 900px;
}

.honeycomb-3 {
    background-image: url(../images/honeycomb-3.png);
    top: 124px;
    left: 1180px;
}

.honeycomb-4 {
    background-image: url(../images/honeycomb-4.png);
    top: 360px;
    left: 480px;
}

.honeycomb-5 {
    background-image: url(../images/honeycomb-5.png);
    top: 360px;
    left: 760px;
}

.honeycomb-6 {
    background-image: url(../images/honeycomb-6.png);
    top: 360px;
    left: 1044px;
}

.honeycomb-7 {
    top: -124px;
    left: 760px;
}

.honeycomb-8 {
    top: -124px;
    left: 1040px;
}

.honeycomb-9 {
    top: 124px;
    left: 340px;
}

.honeycomb-10 {
    top: 360px;
    left: 200px;
}

.honeycomb-11 {
    top: 600px;
    left: 345px;
}

.honeycomb-12 {
    top: 124px;
    left: 1458px;
}

.honeycomb-13 {
    top: 360px;
    left: 1318px;
}

.honeycomb-14 {
    top: 360px;
    left: 1590px;
}

.honeycomb-15 {
    top: 600px;
    left: 1450px;
}

.button-link {
    margin: 0 auto;
    margin-top: 10px;
    min-width: 210px;
    max-height: 54px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: radial-gradient(circle, #007db4, #006da2);
    clip-path: polygon(2% 0%, 100% 0%, 98% 100%, 0% 100%);
    font-size: 12px;
    text-transform: uppercase;
    text-align: center;
    color: var(--white-color);
    padding: 10px;
    position: relative;
    overflow: hidden;
    transition: background-color 0.3s;
}

.button-link::after {
    content: '';
    display: block;
    height: 2px;
    background-color: #ff9e00;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    transform: scaleX(1);
    transition: transform 0.3s;
}

.button-link:hover::after {
    transform: scaleX(1.2);
}

.button-link:hover {
    background: radial-gradient(circle, #006da2, #007db4);
}

.button-link span {
    font-family: Helvetica, sans-serif;
    font-size: 17px;
    font-weight: 600;
}

.render {
    margin-bottom: 56px;
    background-color: var(--blue-bg-color);
}

.render__content {
    font-weight: bold;
    text-align: center;
    padding: 38px 0 30px;
}

.render-title {
    font-size: 30px;
    color: #d7f3ff;
    text-shadow: 0 0 20px rgba(196, 237, 255, 0.85);
    margin-bottom: 5px;
}

.render-text {
    font-size: 41px;
    color: #24aae3;
    text-shadow: 0 0 20px rgba(196, 237, 255, 0.55);
}

.render-container {
    max-width: 1220px;
    margin: 0 auto;
}

.render-service__title {
    font-size: 24px;
    margin-bottom: 28px;
}

.render-service__content {
    padding: 20px 0 10px;
}

.service-contact-btn {
    min-width: 284px;
}

.achievements {
    padding-bottom: 69px;
}

.achievements__list {
    position: relative;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    color: #003751;
}

.achievements__item:not(:last-child) {
    margin-bottom: 20px;
}

.achievements__item {
    display: flex;
    align-items: center;
    max-width: 490px;
    width: 100%;
}

.achievements__item::before {
    content: '';
    display: flex;
    justify-content: center;
    align-items: center;
    width: 114px;
    height: 114px;
    background-color: var(--orange-link-color);
    border-radius: 50%;
    margin-right: 20px;
    flex-shrink: 0;
    background-repeat: no-repeat;
    background-position: center;
}

.achievement-team::before {
    background-image: url(../images/achievement-team.png);
    background-size: 71px 52px;
}

.achievement-web::before {
    background-image: url(../images/achievement-web.png);
    background-size: 61px 59px;
}

.achievement-system::before {
    background-image: url(../images/achievement-system.png);
    background-size: 61px 62px;
}

.achievement-security::before {
    background-image: url(../images/achievement-security.png);
    background-size: 59px 60px;
}

.achievements__button {
    position: absolute;
    left: 56.3vw;
    top: 126px;
    font-size: 18px;
    font-weight: 600;
    padding: 14px 18px 23px;
}

.achievements__img {
    position: absolute;
    bottom: 20px;
    left: 45vw;
    z-index: -1;
}

.factors {
    min-height: 726px;
    margin-top: -20px;
    background-color: #fff7ed;
    padding-top: 46px;
    padding-bottom: 45px;
}

.factors__title {
    margin-bottom: 53px;
}

.factors__list {
    position: relative;
    color: var(--white-color);
    text-transform: uppercase;
    left: 50%;
    transform: translateX(-53%);
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.factors__item:not(:last-child) {
    margin-bottom: 22px;
}

.factors__item {
    max-width: 580px;
    height: 95px;
    display: flex;
    align-items: center;
    background-color: #003652;
    clip-path: polygon(2% 0%, 100% 0%, 98% 100%, 0% 100%);
    padding: 10px 30px;
    padding-left: 110px;
    position: relative;
}

.factors__item::before {
    content: '';
    position: absolute;
    background-size: contain;
    left: 21px;
    top: 50%;
    transform: translateY(-50%);
}

.factors-saving::before {
    background-image: url('../images/factors-saving.png');
    width: 69px;
    height: 62px;
}

.factors-ruling {
    margin-left: 80px;
}

.factors-ruling::before {
    background-image: url('../images/factors-ruling.png');
    width: 65px;
    height: 61px;
}

.factors-teaching {
    margin-left: 150px;
}

.factors-teaching::before {
    background-image: url('../images/factors-teaching.png');
    width: 62px;
    height: 58px;
}

.factors-forecasting {
    margin-left: 190px;
}

.factors-forecasting::before {
    background-image: url('../images/factors-forecasting.png');
    width: 63px;
    height: 61px;
}

.factors__button {
    position: absolute;
    left: 53.5vw;
    bottom: 45px;
    font-size: 18px;
    font-weight: 600;
    padding: 15px 18px 23px;
}

.factors__img {
    position: absolute;
    bottom: 0;
    left: 21vw;
    z-index: -1;
}

.reviews {
    background-color: #f2f6fa;
    padding: 50px 0 38px;
    margin-bottom: 50px;
}

.reviews__title {
    margin-bottom: 53px;
}

.reviews__container {
    position: relative;
    max-width: 920px;
    margin: 0 auto;
}

.reviewsSwiper {
    width: 100%;
}

.swiper-reviewsslide {
    border: 1px solid #d6d6d6;
    cursor: pointer;
    transition: all 0.3s;
    margin-bottom: 39px;
    max-width: 160px;
    height: 226px;
    margin-right: 25px;
}

.swiper-reviewsslide:hover {
    border: 1px solid var(--orange-link-color);
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
}

.reviews-button-next,
.reviews-button-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-95%);
    z-index: 10;
    cursor: pointer;
}

.reviews-button-next {
    right: -60px;
}

.reviews-button-prev {
    left: -64px;
}

.modal-review {
    display: none;
    position: fixed;
    z-index: 2000;
    left: 0;
    top: 3vh;
    width: 100%;
    height: 100%;
    overflow: auto;
}

.modal-review-content {
    margin: auto;
    display: block;
    max-width: 95%;
    max-height: 95%;
}

.reviews__link {
    display: block;
    text-align: center;
    text-transform: uppercase;
    color: var(--blue-color);
    transition: color 0.3s ease;
}

.reviews__link:hover {
    color: var(--orange-link-color);
}

.faq {
    margin-bottom: 90px;
}

.faq__title {
    margin-bottom: 54px;
}

.faq__issue {
    border: 1px solid var(--gray-light-color);
    border-radius: 6px;
    padding: 18px 19px 23px;
    color: #252525;
    background: linear-gradient(to bottom, #fcfcfb, #f6f7f6, #f2f2f1);
    transition: border 0.3s ease;
}

.faq__issue[open] {
    border: 1px solid var(--orange-link-color);
}

.faq__issue:not(:last-child) {
    margin-bottom: 16px;
}

.faq__question {
    position: relative;
    cursor: pointer;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.2px;
}

.faq__question:before {
    content: '';
    position: absolute;
    right: -7px;
    top: 50%;
    transform: translateY(-48%);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    box-shadow: 0 0 0 1px #c3c4c3;
    transition: all 0.3s ease;
}

.faq__question:after {
    content: '';
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 12px;
    height: 12px;
    border-right: 1px solid #302f30;
    border-bottom: 1px solid #302f30;
    transition: all 0.3s ease;
}

.faq__issue[open] .faq__question:after {
    transform: translateY(-50%) rotate(-135deg);
    top: 70%;
    border-right: 1px solid var(--white-color);
    border-bottom: 1px solid var(--white-color);
}

.faq__issue[open] .faq__question:before {
    background-color: var(--orange-link-color);
    box-shadow: none;
}

.faq__answer {
    margin-top: 20px;
}

.faq__title-mob {
    display: none;
}

.clients__title {
    margin-bottom: 50px;
}

.clients__list {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 13px;
    height: 90px;
    padding: 0 8px 20px;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;

}

.clients__item {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 143px;
    height: 60px;
    box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.13);
    border-radius: 6px;
    flex-shrink: 0;
    padding: 4px;
}

/*Меню на странице Услуга */
.menu-service {
    background-color: var(--blue-fourth-color);
    margin-bottom: 27px;
}

.menu-service__inner {
    padding-top: 4px;
    padding-left: 10px;
    padding-right: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.hamburger-toggle {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    margin-bottom: 3px;
}

.hamburger-service {
    width: 40px;
    height: 40px;
    border: 2px solid #292444;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.lines-service {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.line-service {
    width: 19px;
    height: 2px;
    background-color: #292444;
    transition: all 0.3s ease;
}

.service-link {
    text-transform: uppercase;
    color: var(--anthracite-color);
    font-weight: 600;
}

.menu-service__inner {
    position: relative;
}

.menu-service-list {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 68px;
    max-width: 260px;
    background-color: var(--blue-color);
    list-style: none;
    z-index: 1000;
    animation: slide-down 0.3s ease;
    z-index: 1;
}

.menu-service-list.show {
    display: block;
}

.menu-service-item {
    min-height: 40px;
}

.menu-service-link {
    display: block;
    color: var(--white-color);
    font-weight: bold;
    text-decoration: none;
    padding: 12px;
    transition: background-color 0.3s ease;
}

.menu-service-link:hover {
    background-color: #5f93bf;
}

@keyframes slide-down {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hamburger-toggle {
    position: relative;
    z-index: 20;
}

.hamburger-toggle.active .hamburger-service {
    border: 2px solid var(--white-color);
}

.hamburger-toggle.active .line-service {
    background-color: var(--white-color);
}

.hamburger-toggle.active .line-service-1 {
    transform: rotate(45deg) translate(4px, 4px);
}

.hamburger-toggle.active .line-service-2 {
    opacity: 0;
}

.hamburger-toggle.active .line-service-3 {
    transform: rotate(-45deg) translate(2.5px, -4px);
}

.hamburger-toggle.active .service-link {
    color: var(--white-color);
}

/* Подробное описание услуги */
.introduction {
    margin-bottom: 50px;
}

.introduction__intro {
    position: relative;
    display: flex;
}

.introduction__container {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 40px;
}

.introduction__icon {
    max-width: 68px;
}

.introduction__title {
    max-width: 700px;
    font-size: 36px;
    color: var(--black-color);
    font-weight: bold;
    line-height: 1;
}

.introduction__introduce {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 650px;
    min-height: 470px;
}

.introduction__description {
    max-width: 610px;
}

.introduction__lead {
    font-size: 21px;
    font-weight: 600;
    color: var(--black-color);
    margin-bottom: 30px;
}

.introduction-last {
    margin-bottom: 0;
}

.introduction__text {
    font-size: 21px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--blue-sixth-color);
    margin-bottom: 35px;
}

.introduction__note {
    font-size: 18px;
    font-style: italic;
    line-height: 1.5;
    color: var(--black-color);
    margin-bottom: 23px;
}

.color-text {
    color: var(--orange-color-third);
}

.introduction__more {
    max-width: 240px;
    position: relative;
    cursor: pointer;
    font-size: 18px;
    color: var(--orange-color-third);
    margin-left: 10px;
    display: inline-block;
    margin-top: auto;
}

.introduction__more span {
    transition: border-bottom 0.3s ease;
    border-bottom: 1px solid transparent;
}

.introduction__more:hover span {
    border-bottom: 1px solid var(--orange-color-third);
}

.introduction__more::after {
    content: "›";
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-45%) rotate(90deg);
    font-size: 24px;
    transition: all 0.3s ease;
    transform-origin: center center;
}

.introduction__more.active::after {
    right: -10px;
    transform: translateY(-45%) rotate(-90deg);
}

.introduction__img {
    position: absolute;
    right: 0;
    z-index: -1;
    padding-top: 50px;
}

.summary {
    margin-bottom: 16px;
}

/* Скрытое содержимое */
.introduction-summary {
    display: none;
    border-top: 2px solid var(--orange-link-color);
    margin-top: 19px;
}

.introduction-summary.active {
    display: block;
    padding-top: 34px;
}

.title-container {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 35px;
}

.title-service {
    font-size: 30px;
    color: var(--black-color);
}

.problems {
    margin-bottom: 82px;
}

.problems__heading {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    color: var(--black-color);
    margin-bottom: 49px;
}

.problems__list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 7px;
    margin-bottom: 60px;
}

.problems__wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fbfbfb;
    height: 150px;
    border: 1px solid var(--blue-light-color);
    margin-bottom: 21px;
}

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

.excerpt {
    border-left: 4px solid var(--orange-link-color);
    padding-left: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 51px;
}

.excerpt__blockquote {
    padding: 10px 0;
}

.excerpt__top {
    font-size: 24px;
    color: var(--orange-color-second);
    font-weight: 200;
    font-style: italic;
    margin-bottom: 25px;
}

.excerpt__bottom {
    font-size: 25px;
    color: var(--blue-fifth-color);
    font-weight: 500;
    font-style: italic;
    word-break: break-word;
}

.concept {
    margin-bottom: 77px;
}

.concept__list {
    counter-reset: concept-counter;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.concept__item {
    counter-increment: concept-counter;
    display: flex;
    align-items: center;
    gap: 30px;
    font-size: 15px;
    font-weight: 500;
    font-style: italic;
    color: var(--blue-fifth-color);
    background-color: var(--blue-gray-color);
    padding: 12px 30px;
}

.concept__item::before {
    content: counter(concept-counter);
    font-size: 60px;
    font-weight: 900;
    font-style: italic;
    color: var(--orange-link-color);
    flex-shrink: 0;
}

.offers__wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background-color: #f1f1f1;
    align-items: stretch;
    min-height: 180px;
}

.offers__section {
    display: flex;
    align-items: center;
    padding-top: 12px;
    padding-bottom: 17px;
    color: var(--white-color);
    font-size: 18px;
    font-weight: 200;
    clip-path: polygon(0% 0%, 94% 0%, 94% 26%, 98% 50%, 94% 74%, 94% 100%, 37% 100.00%, 0% 100%);
    height: 100%;
}

.offer-color {
    background-color: var(--blue-seventh-color);
    line-height: 1.4;
    z-index: 2;
    padding-left: 26px;
    padding-right: 26px;
    width: 440px;
}

.offer-color-dark {
    background-color: #0887be;
    margin-left: -30px;
    padding-left: 48px;
    width: 440px;
    padding-right: 70px;
}

.offers__button {
    margin-top: 0;
    align-self: center;
}

.accent {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 46px;
}

.accent__text {
    font-size: 24px;
    font-weight: 200;
    color: var(--orange-color-second);
}

.accent__slogan {
    font-size: 36px;
    font-weight: 200;
    color: var(--black-color);
    line-height: 1.3;
}

.emphasis {
    background-color: var(--blue-gray-color);
    padding: 28px 22px;
    margin-bottom: 40px;
}

.emphasis__content {
    font-size: 18px;
    color: var(--black-color);
    margin-bottom: 30px;
}

.emphasis__example {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-weight: bold;
    margin-bottom: 40px;
}

.emphasis__example span {
    font-size: 24px;
    color: var(--gray-color);
}

.emphasis__example p {
    font-size: 18px;
    color: var(--black-color);
}

.emphasis__list {
    display: flex;
    justify-content: space-around;
    gap: 26px;
}

.emphasis__item {
    display: flex;
    gap: 16px;
}

.emphasis__text {
    font-size: 15px;
    color: var(--blue-sixth-color);
    font-weight: 500;
    font-style: italic;
}

.organization {
    margin-bottom: 71px;
}

.organization__title {
    max-width: 900px;
    margin: 0 auto;
    font-size: 30px;
    font-weight: 200;
    text-align: center;
    color: var(--black-color);
    margin-bottom: 60px;
}

.organization__heading {
    font-size: 30px;
    font-weight: 200;
    color: var(--black-color);
    margin-bottom: 74px;
}

.organization__wrapper {
    min-width: 90px;
    display: flex;
    justify-content: center;
}

.organization__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 34px 29px
}

.organization__item {
    background-color: var(--blue-gray-color);
    padding: 69px 19px 20px;
    position: relative;
    min-height: 140px;
}

.organization__container {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 87px;
    position: absolute;
    top: -30px;
    left: 10px;
}

.organization__subtitle {
    font-size: 24px;
    font-weight: 900;
    color: var(--orange-color-second);
    padding-top: 12px;
}

.organization__text {
    color: var(--black-color);
    font-weight: bold;
    margin-bottom: 3px;
}

.organization__note {
    color: var(--gray-color);
    font-weight: 500;
    margin-bottom: 5px;
}


.reasons__column {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 30px;
}

.reasons-title {
    font-size: 30px;
    font-weight: 200;
    color: var(--black-color);
    text-align: left;
    padding-left: 30px;
}

.reasons-item {
    padding: 38px 30px;
    background-color: var(--blue-gray-color);
    display: flex;
    align-items: center;
    color: var(--black-color);
    font-size: 21px;
    font-weight: 200;
    clip-path: polygon(0% 0%, 96% 0%, 100% 50%, 96% 100%, 0% 100%);
    border-radius: 3px;
}

.reasons-item-color {
    background-color: var(--blue-seventh-color);
    color: var(--white-color);
    font-size: 18px;
    max-width: 540px;
    padding: 20px 40px;
    clip-path: polygon(0% 0%, 100% 0%, 100% 50%, 100% 100%, 0% 100%, 0% 80%, 2% 50%, 0% 20%);
}

.heading {
    font-size: 30px;
    font-weight: 200;
    color: var(--black-color);
    margin-bottom: 35px;
}

.advantages__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 27px;
}

.advantages__item {
    display: flex;
    align-items: center;
    gap: 16px;
    background-color: #f6ede3;
    border-radius: 64px;
    padding: 0 50px 0 0;
}

.advantages__icon {
    background-color: var(--white-color);
    border-radius: 50%;
    border: 4px solid var(--orange-link-color);
    width: 136px;
    height: 136px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.advantages__text {
    max-width: 245px;
    font-size: 20px;
    font-weight: 200;
    color: var(--black-color);
}

.advantages-text {
    max-width: 150px;
}

.integration__steps {
    display: flex;
    justify-content: center;
}

.integration__steps:not(:last-child) {
    border-bottom: 1px solid var(--gray-light-color);
    padding-bottom: 27px;
    margin-bottom: 34px;
}

.integration__items {
    display: flex;
    gap: 18px;
    margin-right: 18px;
}

.integration__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.integration__wrapper {
    width: 270px;
    height: 270px;
    background: radial-gradient(circle, #fff 0%, #fbfbfb 100%);
    border-radius: 50%;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.integration__text {
    max-width: 240px;
    text-align: center;
    font-size: 24px;
    font-weight: 200;
    color: var(--orange-link-color);
}

.integration__plus {
    font-size: 72px;
    font-weight: 200;
    color: var(--orange-link-color);
    padding-top: 82px;
}

.boost__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 62px;
    position: relative;
}

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

.boost__item:nth-child(even) {
    flex-direction: row-reverse;
    margin: 100px 0;
}

.boost__item:nth-child(even) .boost__img {
    position: absolute;
    z-index: -1;
}

.boost__item:nth-child(even) .boost__text {
    width: 50%;
    right: 30%;
    position: absolute;
    text-align: right;
}

.boost__text {
    font-size: 18px;
    font-weight: 500;
    color: var(--black-color);
}

.attention {
    margin: 0 auto;
    max-width: 768px;
    background: linear-gradient(90deg, rgba(4, 61, 91, 1) 1%, rgba(12, 76, 109, 1) 35%, rgba(3, 60, 89, 1) 100%);
    padding: 29px 30px 37px;
    text-align: center;
    font-size: 24px;
}

.attention__title {
    font-weight: bold;
    color: var(--orange-link-color);
    margin-bottom: 8px;
}

.attention__text {
    font-weight: 200;
    color: var(--white-color);
}

.suggestion__list {
    display: grid;
    grid-template-columns: 38% 38% 24%;
}

.suggestion__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 22px 27px;
    min-height: 180px;
    font-size: 18px;
    color: var(--white-color);
}

.suggestion-1 {
    background-color: var(--blue-seventh-color);
}

.suggestion-2 {
    background: linear-gradient(to right, #1397cf 0%, #0280b6 100%);
}

.suggestion-3 {
    background: linear-gradient(to right, #f8f8f8 0%, #f1f1f1 100%);
    line-height: 1.4;
}

.suggestion__subtitle {
    font-weight: bold;
    margin-bottom: 10px;
}

.suggestion__text {
    font-weight: 200;
}

.suggestion__heading {
    font-size: 24px;
    font-weight: 500;
    font-style: italic;
    color: #202020;
}

.services-all {
    margin-top: 30px;
}

.services-all__title {
    margin-bottom: 54px;
}

.services-all__issue {
    font-size: 24px;
    color: var(--blue-second-color);
}

.services-all__issue:not(:last-child) {
    margin-bottom: 16px;
}

.services-all__name {
    border: 4px solid var(--blue-second-color);
    padding: 18px 19px 23px;
    position: relative;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: 0.2px;
    transition: all 0.3s ease;
}

.services-all__name:hover,
.services-all__issue[open] .services-all__name {
    background-color: var(--blue-second-color);
    color: var(--white-color);
}

.services-all__list {
    padding: 20px;
    margin-top: 10px;
}

.services-all__link {
    display: flex;
    align-items: center;
    gap: 20px;
    color: var(--blue-second-color);
    margin-bottom: 20px;
    transition: color ease 0.3s;
}

.services-all__link:hover {
    color: var(--orange-link-color);
}


.services-all__img {
    width: 5%;
}

.services-all__subname {
    width: 95%;
}

.communicate {
    margin-top: 30px;
    margin-bottom: 60px;
}

.communicate__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 60px;
}

.contacts-page {
    order: 2;
    width: 40%;
}

.contacts-page__title {
    margin-bottom: 16px;
}

.contact-item {
    display: flex;
    gap: 10px;
}

.contact-item:not(:last-child) {
    margin-bottom: 50px;
}

.contact-item::before {
    content: '';
    display: inline-block;
    width: 34px;
    height: 34px;
}

.telephone-item::before {
    background: url('/images/icon-call.png') no-repeat center;
    background-size: contain;
}

.mail-item::before {
    background: url('/images/icon-mail.png') no-repeat center;
    background-size: contain;
}

.schedule-item::before {
    background: url('/images/factors-saving.png') no-repeat center;
    background-size: contain;
}

.address-item::before {
    background: url('/images/factors-forecasting.png') no-repeat center;
    background-size: contain;
}

.contacts-page__subtitle,
.direction__subtitle {
    font-size: 16px;
    margin-bottom: 6px;
}

.contacts-page__name,
.direction__name {
    font-size: 20px;
    color: var(--black-color);
    font-weight: 500;
}

.feedback {
    order: 1;
    width: 60%;
    box-shadow: 2px 4px 20px rgba(0, 0, 0, 0.15);
    padding: 20px;
}

.feedback__title {
    font-size: 30px;
    color: var(--black-color);
    margin-bottom: 10px;
    font-weight: 500;
}

.feedback__description {
    font-size: 16px;
    margin-bottom: 20px;
}

.feedback__fields {
    display: flex;
    gap: 16px;
    margin-bottom: 18px;
}

.feedback__input {
    background-color: var(--white-color);
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
    border: 1px solid var(--blue-color);
    padding: 10px;
    color: #808080;
    font-size: 16px;
    width: 100%;
}

.feedback__task {
    margin-top: 10px;
    margin-bottom: 10px;
}

.feedback__submit {
    margin-top: 16px;
    width: 100%;
}

.feedback__agreement {
    color: var(--black-color);
    font-size: 12px;
    position: relative;
}

.feedback__checkbox {
    width: 16px;
    position: absolute;
    left: 0;
}

.feedback__label {
    padding-left: 20px;
}

.feedback__link {
    color: var(--black-color);
    font-size: 12px;
}

.direction__title {
    font-size: 28px;
    color: var(--black-color);
    font-weight: 600;
    text-align: center;
    margin-bottom: 30px;
}

.direction__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 60px;
}

.direction__map {
    width: 60%;
}

.direction__list {
    width: 40%;
}

/* Cookie */
.cookie-notice {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #f8f9fa;
    padding: 15px 20px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    z-index: 9999;
    display: none;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.cookie-notice__content {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
}

.cookie-notice__text {
    margin: 0;
    flex: 1;
    min-width: 250px;
}

.cookie-notice__link {
    color: var(--blue-second-color);
    transition: color 0.3s ease;
}

.cookie-notice__link:hover {
    color: var(--orange-link-color);
}

.cookie-notice__btn {
    background-color: var(--blue-second-color);
    color: white;
    border: none;
    padding: 8px 20px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    transition: background-color 0.3s ease-in;
}

.cookie-notice__btn:hover {
    background-color: var(--blue-bg-color);
}

.projects {
    margin-top: 30px;
}

.tabs__header {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--gray-light-color);
    margin-bottom: 20px;
    font-size: 16px;
}

.tabs__item {
    padding: 10px 20px;
    cursor: pointer;
    position: relative;
    color: var(--black-color);
    transition: color 0.3 ease;
}

.tabs__item:hover {
    color: var(--blue-bg-color);
}

.tabs__item.active {
    color: var(--blue-bg-color);
    font-weight: bold;
}

.tabs__item.active:after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--blue-bg-color);
}

.tabs__panel {
    display: none;
}

.tabs__panel.active {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.card {
    position: relative;
    border: 2px solid var(--orange-color-second);
    border-radius: 10px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: var(--gray-light-color);
    overflow: hidden;
    color: var(--white-color);
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    transition: all 0.3s ease;
}

.card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(37, 37, 37, 0.7);
    z-index: 1;
    transition: all 0.3s ease;
}

.card:hover::before {
    background: rgba(37, 37, 37, 0.5);
}

.card__content {
    position: relative;
    z-index: 2;
}

.card__wrapper {
    min-height: 200px;
    padding: 50px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.card__direction {
    text-transform: uppercase;
    font-size: 12px;
    color: var(--orange-link-color);
    border: 1px solid var(--orange-link-color);
    border-radius: 5px;
    padding: 5px 10px;
    display: inline-block;
    width: auto;
    margin-right: auto;
}

.card__date {
    text-transform: uppercase;
    font-size: 10px;
    color: var(--gray-light-color);
    font-weight: bold;
}

.card__title {
    font-size: 18px;
    font-weight: 600;
}

.card__link {
    display: block;
    text-transform: uppercase;
    color: var(--white-color);
    border-top: 1px solid var(--orange-link-color);
    padding: 10px 20px;
    transition: all 0.3s ease;
}

.card:hover .card__link {
    background-color: var(--orange-link-color);
    color: var(--black-color);
}

.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 40px;
}

.pagination__arrow,
.pagination__number {
    padding: 10px 15px;
    border: 1px solid var(--gray-light-color);
    border-radius: 6px;
    text-decoration: none;
    color: var(--black-color);
    font-weight: 600;
    font-size: 12px;
}

.pagination__number.active {
    background: var(--orange-link-color);
    border-color: var(--orange-link-color);
}