/* USER VARIABLES SECTION */

:root {
    --white: #fff;
    --gray: #f3f3f3;
    --black: #000;
    --text: #000;
    --regular-text: 16px;
    --lineheight: 1.65;
    --font-family: "Montserrat", sans-serif;
    --second-family: "Raleway", sans-serif;
    --systemfont: -apple-system, BlinkMacSystemFont, Arial, sans-serif;
}

/* BOOTSTRAP SETTINGS SECTION */

/* gutter 20px (10px + 10px). Comment this code for default gutter start at 1.5rem (24px) wide. */
.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    --bs-gutter-x: 0.938rem;
}

.row,
.row > * {
    --bs-gutter-x: 1.875rem;
}

@media (min-width: 1200px) {
    .container-fluid {
        max-width: 100%;
        padding: 0 20px;
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1350px;
    }
}

@media (max-width: 991px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 100%;
    }
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    margin: 0;
}

input[type="checkbox"],
input[type="radio"],
input[type="file"] {
    position: absolute;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    z-index: 1;
    visibility: hidden;
    position: absolute;
    width: 0;
    height: 0;
}

/* GENERAL CSS SETTINGS */
body.no-scroll {
    overflow: hidden;
}

.body-overlay{
    position: relative;
}

.body-overlay::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .3;
    z-index: 10;
}

.svg-block {
    position: absolute;
    bottom: -9999px;
    left: -9999px;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    height: 0;
}

.img-right,
.img-left {
    float: none;
    width: 100%;
    display: block;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .img-right {
        float: right;
        margin-left: 55px;
        width: auto;
    }

    .img-left {
        float: left;
        margin-right: 55px;
        width: auto;
    }
}

::placeholder {
    color: #000;
    opacity: 1;
}

input,
textarea {
    outline: none;
}

input:focus:required:invalid,
textarea:focus:required:invalid {
    border-color: #14295e;
}

input:required:valid,
textarea:required:valid {
    border-color: green;
}

* {
    padding: 0;
    margin: 0;
}

body {
    font-family: var(--font-family);
    font-size: var(--regular-text);
    line-height: var(--lineheight);
    color: var(--text);
    font-weight: 400;
    min-width: 320px;
    position: relative;
    overflow-x: hidden;
    background: #fff;
}

/* common */
.btn {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    transition: 0.2s ease;
    padding: 0;
    margin: 0;
}

.btn--home {
    height: 70px;
    background: #fff;
    border-radius: 50px;
    gap: 0 0;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #000;
}

@media (min-width: 1024px) {
    .btn--home {
        gap: 0 15px;
        font-size: 22px;
        line-height: 1;
        max-width: 522px;
        height: 85px;
        margin: 0 auto;
    }
}

.btn--home svg {
    display: none;
    transition: 0.2s ease;
}

@media (min-width: 1024px) {
    .btn--home svg {
        display: block;
        stroke: #000;
        width: 15px;
        height: 15px;
    }
}

.btn--home:hover {
    background: #a8cc38;
    color: #fff;
}

.btn--home:hover svg {
    stroke: #fff;
}

.logo {
    display: block;
}

.logo img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.phone {
    display: flex;
    align-items: center;
    text-decoration: none;
    gap: 0 2px;
    position: relative;
}

@media (min-width: 1200px) {
    .phone {
        gap: 0 7px;
    }
}

.phone svg {
    width: 24px;
    height: 24px;
    fill: #000;
    transition: 0.3s;
}

@keyframes shake {
    10%,
    90% {
        transform: translate3d(-0.5px, 0, 0);
    }

    20%,
    80% {
        transform: translate3d(0.5px, 0, 0);
    }

    30%,
    50%,
    70% {
        transform: translate3d(-1px, 0, 0);
    }

    40%,
    60% {
        transform: translate3d(1px, 0, 0);
    }
}


.phone:hover svg {
    animation: shake 0.5s;
}

.phone span {
    display: none;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 20px;
    line-height: 1;
    color: #000;
}

@media (min-width: 1750px) {
    .phone span {
        display: block;
    }
}

.phone::before{
    position: absolute;
    content: '';
    display: none;
    height: 1px;
    width: 100%;
    background: #000;
    bottom: -2px;
    transform: scale(0, 1);
    transition: transform 0.3s;
    transform-origin: right top;
}

@media(min-width: 1024px){
    .phone::before{
        display: block;
    }
}

.phone:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
}

.lang-list {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0 5px;
}

.lang-list li {
    list-style-type: none;
}

.lang-list li a {
    width: 53px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s ease;
}

.lang-list li a.active,
.lang-list li a:hover {
    border: 1px solid #000;
    border-radius: 10px;
}

.social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 15px;
    padding: 0;
    margin: 0;
}

.social li {
    list-style-type: none;
}

.social li a {
    text-decoration: none;
    display: block;
}

.social li a svg {
    width: 28px;
    height: 28px;
}

.menu {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0;
    gap: 0 20px;
}

@media (min-width: 1650px) {
    .menu {
        gap: 0 40px;
    }
}

.menu li {
    list-style-type: none;
    position: relative;
}

.menu > li > a {
    text-decoration: none;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 4px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    color: #000;
}

.menu > li > a::before {
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #000;
    position: absolute;
    bottom: -2px;
    transform: scale(0, 1);
    transition: transform 0.3s;
    transform-origin: right top;
}

.menu > li > a:hover::before,
.menu > li.active > a::before {
    transform-origin: left top;
    transform: scale(1, 1);
}

.menu li a svg {
    fill: none;
    stroke: #000;
    width: 14px;
    height: 9px;
    transition: 0.2s ease;
}

.menu li.show a svg {
    transform: scale(-1);
}

.submenu {
    padding: 6px 38px 18px 43px;
    margin: 28px 0 0 -34px;
    background: #fff;
    border-radius: 0 0 10px 10px;
    position: absolute;
    width: 350px;
    visibility: hidden;
    opacity: 0;
    transition: 0.2s ease;
}

.submenu.open {
    visibility: visible;
    opacity: 1;
}

.submenu li {
    list-style-type: none;
}

.submenu li a {
    display: block;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 36px;
    color: #000;
    text-decoration: none;
    position: relative;
}

.submenu li a::before {
    content: "";
    display: block;
    transition: 0.2s ease;
    width: 6px;
    height: 6px;
    border-radius: 100%;
    left: -11px;
    background: #a8cc38;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    visibility: hidden;
    opacity: 0;
}

.submenu li a:hover::before,
.submenu li.active a::before {
    opacity: 1;
    visibility: visible;
}

.title-h1 {
    padding: 0;
    margin: 0;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
}

@media (min-width: 1024px) {
    .title-h1 {
        font-size: 45px;
        line-height: 54px;
    }
}

/* end common */

/* header */
.header {
    position: fixed;
    width: 100%;
    margin: 0 auto;
    padding: 9px 0 0 0;
    top: 0;
    z-index: 100;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .header {
        padding: 26px 15px 0 15px;
    }
}

.header.scrolled{
    padding-top: 10px;
}

.header__container {
    width: 100%;
    max-width: calc(100% - 20px);
    border-radius: 34px;
    background: #fff;
    padding: 16px 32px 16px 21px;
    margin: 0 auto;
    transition: .2s ease;
}

@media (min-width: 1200px) {
    .header__container {
        max-width: 1820px;
        position: relative;
    }
}

.header.scrolled .header__container {
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.15);
}

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

@media (min-width: 1200px) {
    .header__flex {
        justify-content: normal;
    }
}

.header__logo {
    width: 144px;
    height: 30px;
}

@media (min-width: 1024px) {
    .header__logo {
        margin: 0 30px 0 0;
    }
}

@media (min-width: 1200px) {
    .header__logo {
        width: 183px;
        height: 39px;
        margin: 0 40px 0 0;
    }
}

@media (min-width: 1680px) {
    .header__logo {
        margin: 0 90px 0 0;
    }
}

.header__nav {
    display: none;
}

@media (min-width: 1024px) {
    .header__nav {
        display: block;
    }
}

@media (min-width: 1200px) {
    .header__nav {
        margin: 0 30px 0 0;
    }
}

.header__btn-callback {
    display: none;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 16px;
    line-height: 1;
    color: #fff;
    padding: 0;
    margin: 0;
    background: #a8cc38;
    height: 41px;
    border-radius: 70px;
    max-width: 237px;
    border: 1px solid #a8cc38;
    transition: 0.2s ease;
}

@media (min-width: 1450px) {
    .header__btn-callback {
        display: flex;
    }
}

.header__btn-callback:hover {
    color: #000;
    background: #fff;
    border: 1px solid #a8cc38;
}

.header__info-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0 0 0 auto;
}

.header__phone {
    margin: 0;
}

@media (min-width: 1024px) {
    .header__phone {
        margin: 0 15px 0 0;
    }
}

@media (min-width: 1200px) {
    .header__phone {
        margin: 0 25px 0 0;
    }
}

.header__info-right-social {
    display: none;
}

@media (min-width: 1400px) {
    .header__info-right-social {
        display: flex;
        margin: 0 20px 0 0;
    }
}

@media (min-width: 1650px) {
    .header__info-right-social {
        display: flex;
        margin: 0 48px 0 0;
    }
}

.header__btn-search {
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    border: none;
    background: none;
}

@media (min-width: 1024px) {
    .header__btn-search {
        display: flex;
        margin: 0 15px 0 0;
    }
}

@media (min-width: 1200px) {
    .header__btn-search {
        margin: 0 30px 0 0;
    }
}

.header__btn-search svg {
    width: 24px;
    height: 24px;
    fill: #000;
}

.header__lang {
    position: relative;
    display: none;
}

@media (min-width: 1024px) {
    .header__lang {
        display: block;
    }
}

.header__lang-current {
    padding: 0;
    margin: 0;
    border: none;
    background: none;
    align-items: center;
    gap: 0 8px;
    display: flex;
}

.header__lang-current svg {
    fill: none;
    stroke: #000;
    width: 14px;
    height: 9px;
    transition: 0.2s ease;
}

.header__lang-current.active svg {
    transform: scale(-1);
}

.header__lang-list {
    flex-direction: column;
    position: absolute;
    background: #fff;
    margin: 20px 0 0 -16px;
    border-radius: 0 0 10px 10px;
    padding: 12px 6px;
    display: none;
}

.header__lang-list.show {
    display: block;
}

.header__menu-btn {
    padding: 0;
    margin: 0 0 0 20px;
    display: block;
    position: relative;
    border: none;
    background: none;
    width: 25px;
    height: 24px;
}

@media (min-width: 1024px) {
    .header__menu-btn {
        display: none;
    }
}

.header__menu-btn span {
    border-radius: 20px;
    background: #000;
    width: 25px;
    display: block;
    height: 2px;
    position: absolute;
}

.header__menu-btn span:first-child {
    width: 25px;
    top: 2px;
}

.header__menu-btn span:nth-child(2) {
    width: 19px;
    top: 11px;
    right: 0;
}

.header__menu-btn span:last-child {
    width: 25px;
    top: 20px;
}

.header::before {
    content: "";
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 90;
    opacity: 0.3;
    height: 100vh;
    width: 100%;
    display: none;
}

.overlay .header::before {
    display: block;
}

.header__mobile-block {
    background: #fff;
    position: absolute;
    top: 0;
    left: 0; /* всегда 0 */
    width: 100%;
    max-width: 410px;
    z-index: 99;
    border-bottom-right-radius: 40px;
    padding: 0 0 27px 0;
    overflow-y: auto;
    height: calc(100vh - 40px);
    opacity: 0;
    transform: translateX(-100%);
    visibility: hidden;
    transition:
            opacity 0.3s ease,
            transform 0.3s ease,
            visibility 0s linear 0.3s; /* задержка скрытия */
}

.header__mobile-block.show {
    opacity: 1;
    transform: translateX(0);
    visibility: visible;
    transition:
            opacity 0.3s ease,
            transform 0.3s ease,
            visibility 0s; /* без задержки */
}


.header__mobile-block-wrapper {
    padding: 0 14px 0 0;
}

.header__mobile-block-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 0 13px 10px;
    border-bottom: 1px solid #6b6969;
}

.header__mobile-block-head-btn {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header__mobile-block-head-btn svg {
    stroke: #000;
    width: 21px;
    height: 21px;
}

.header__mobile-block-btn-callback {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 16px;
    line-height: 1;
    color: #fff;
    background: #a8cc38;
    height: 58px;
    margin: 24px 0 32px auto;
    max-width: calc(100% - 10px);
    border-radius: 70px;
}

.header__mobile-block-search {
    margin: 12px 0 0 0;
}

.header__mobile-block-search-form {
    position: relative;
    width: 100%;
    max-width: calc(100% - 10px);
    margin: 0 0 0 auto;
    display: block;
}

.header__mobile-block-search-form-input {
    border-radius: 10px;
    height: 48px;
    width: 100%;
    display: flex;
    align-items: center;
    background: #ebecf0;
    padding: 0 138px 0 19px;
    border: none;
    font-size: 18px;
    line-height: 1;
}

.header__mobile-block-search-form-btn {
    position: absolute;
    right: 4px;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    width: 115px;
    height: 39px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    top: 4px;
    background: #a8cc38;
    gap: 0 7px;
    border-radius: 10px;
}

.header__mobile-block-search-form-btn svg {
    width: 19px;
    height: 19px;
    fill: #fff;
}

.header__mobile-block-phone {
    justify-content: center;
}

.header__mobile-block-phone span {
    display: block;
}

.header__mobile-block-social {
    margin: 30px 0 0 0;
}

.header__mobile-block-menu {
    padding: 0 0 0 30px;
    margin: 0 0 64px 0;
}

.header__mobile-block-menu > li {
    list-style-type: none;
    position: relative;
    padding: 14px 0;
    border-bottom: 1px solid #000;
}

.header__mobile-block-menu > li:first-child {
    padding-top: 0;
}

.header__mobile-block-menu > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 18px;
    text-transform: uppercase;
    color: #000;
}

.header__mobile-block-menu > li > a > svg {
    stroke: #000;
    width: 14px;
    height: 9px;
    fill: none;
    transition: 0.2s ease;
}

.header__mobile-block-menu > li a.active svg {
    transform: scale(-1);
}

.header__mobile-block-menu-submenu {
    padding: 10px 0 0 27px;
    margin: 0;
    display: none;
}

.header__mobile-block-menu-submenu.open {
    display: block;
}

.header__mobile-block-menu-submenu li {
    list-style-type: none;
}

.header__mobile-block-menu-submenu li a {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 38px;
    color: #000;
    text-decoration: none;
}

.header__search {
    position: absolute;
    top: 9px;
    right: 109px;
    margin: 0;
    width: 100%;
    /* max-width: 1454px; */
    max-width: calc(100% - 349px);
    display: flex;
    align-items: center;
    gap: 0 18px;
    height: 55px;
    padding: 0 20px;
    background: #ebecf0;
    border-radius: 10px;
    visibility: hidden;
    opacity: 0;
    transform: scaleX(0);
    transform-origin: right;
    transition:
        transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
        opacity 0.4s ease,
        visibility 0.4s ease;
}

.header__search.show {
    transform: scaleX(1);
    opacity: 1;
    visibility: visible;
}


.header__search-btn-close {
    padding: 0;
    margin: 0;
    border: none;
    background: none;
}

.header__search-btn-close svg {
    width: 17px;
    height: 17px;
    stroke: #000;
}

.form-search {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 0 20px;
}

.form-search__input {
    width: 100%;
    max-width: calc(100% - 130px - 20px);
    border: none;
    background: transparent;
    font-size: 20px;
    line-height: 1;
    color: #000;
}

.form-search__btn {
    display: flex;
    padding: 0;
    margin: 0;
    border: none;
    background: #a8cc38;
    border-radius: 10px;
    height: 45px;
    max-width: 130px;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 0 9px;
}

.form-search__btn svg {
    width: 22px;
    fill: #fff;
    height: 22px;
}

.form-search__btn span {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
}
/* end header */

/* footer */
.footer {
    padding: 0;
}

@media (min-width: 1024px) {
    .footer {
        padding: 0 15px 17px 15px;
    }
}

.footer__container {
    background: #6b6969;
    border-radius: 40px 40px 0 0;
    padding: 52px 0 27px 0;
}

@media (min-width: 1024px) {
    .footer__container {
        border-radius: 40px;
        padding: 77px 0 40px 0;
    }
}

.footer__top {
    padding: 0 0 52px 0;
}

@media (min-width: 1024px) {
    .footer__top {
        padding: 0 0 62px 0;
    }
}

.footer__top-logo {
    display: block;
    width: 174px;
    height: 38px;
    margin: 0 0 20px 24px;
}

@media (min-width: 1024px) {
    .footer__top-logo {
        margin: 0 0 20px 0;
    }
}

.footer__top-logo img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.footer__top-text {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: rgba(255, 255, 255, 0.7);
    max-width: 315px;
    margin: 0 0 0 24px;
}

@media (min-width: 1024px) {
    .footer__top-text {
        margin: 0;
    }
}

.footer__top-row {
    flex-direction: column-reverse;
}

@media (min-width: 1024px) {
    .footer__top-row {
        flex-direction: row;
    }
}

.footer__top-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    margin: 0 0 0 24px;
    padding: 0;
}

@media (min-width: 1024px) {
    .footer__top-title {
        margin: 0 0 30px 0;
    }
}

.footer__top-menu {
    padding: 0;
    margin: 30px 0 52px 24px;
    display: flex;
    flex-direction: column;
    gap: 20px 0;
}

@media (min-width: 1024px) {
    .footer__top-menu {
        margin: 0;
        flex-wrap: wrap;
        flex-direction: row;
    }
}

.footer__top-menu li {
    list-style-type: none;
}

@media (min-width: 1024px) {
    .footer__top-menu li {
        flex: 1 0 50%;
        max-width: 32.333%;
    }
}

@media (min-width: 1200px) {
    .footer__top-menu li {
        flex: 1 0 33.333%;
    }
}

.footer__top-menu li a {
    display: block;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 20px;
    color: #fff;
    text-decoration: none;
}

.footer__top-line {
    margin: 56px 0 0 0;
    background: #a8cc38;
    height: 2px;
}

@media (min-width: 1024px) {
    .footer__top-line {
        margin: 45px 0 0 0;
    }
}

.footer__center-phones {
    display: flex;
    flex-direction: column;
    gap: 20px 0;
    padding: 0 0 0 24px;
}

@media (min-width: 1024px) {
    .footer__center-phones {
        padding: 0;
        flex-direction: row;
        gap: 0 40px;
    }
}

.footer__center-phone {
    text-decoration: none;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 30px;
    line-height: 36px;
    color: #fff;
}

@media (min-width: 1024px) {
    .footer__center-phone {
    }
}

.footer__center-phone:hover{
    color: #fff;
    text-decoration: underline;
}

.footer__center-address {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: #fff;
    margin: 20px 0 63px 0;
    max-width: 330px;
    padding: 0 0 0 24px;
}

@media (min-width: 1024px) {
    .footer__center-address {
        padding: 0;
        margin: 45px 0 0 0;
    }
}

.footer__center-social-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    margin: 0 0 20px 0;
    padding: 0 0 0 24px;
}

@media (min-width: 1024px) {
    .footer__center-social-title {
        padding: 0;
    }
}

.footer__bottom-row {
    flex-direction: column-reverse;
    align-items: center;
    gap: 7px 0;
}

@media (min-width: 1024px) {
    .footer__bottom-row {
        flex-direction: row;
        gap: 0;
    }
}

.footer__center-social-list {
    padding: 0 0 0 24px;
    margin: 0;
    display: flex;
    gap: 0 20px;
}

@media (min-width: 1024px) {
    .footer__center-social-list {
        padding: 0;
    }
}

.footer__center-social-list li {
    list-style-type: none;
}

.footer__center-social-list li a {
    text-decoration: none;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 20px;
    color: #fff;
}

.footer__center-social-list li a:hover{
    text-decoration: underline;
}

.footer__bottom {
    padding: 50px 0 0 0;
}

@media (min-width: 1024px) {
    .footer__bottom {
        padding: 30px 0 0 0;
    }
}

.footer__bottom-copy {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: rgba(255, 255, 255, 0.7);
    text-align: center;
}

@media (min-width: 1024px) {
    .footer__bottom-copy {
        text-align: left;
    }
}

.footer__bottom-develop {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 10px;
    text-decoration: none;
}

@media (min-width: 1024px) {
    .footer__bottom-develop {
        justify-content: end;
    }
}

.footer__bottom-develop span {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: rgba(255, 255, 255, 0.7);
}

.footer__bottom-develop svg {
    width: 40px;
    height: 38px;
}
/* end footer */

/* main */
.main {
    padding: 0;
}

.main--inner {
}

@media (min-width: 1024px) {
}
/* end main */

/* infopage */
.infopage {
}

@media (min-width: 1024px) {
    .infopage {
        padding: 11px 15px 70px 15px;
    }
}

.infopage__wrapper {
    background: #ebecf0;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    padding: 120px 0 40px 0;
    margin: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .infopage__wrapper {
        border-radius: 40px;
        padding: 150px 0 50px 0;
    }
}

.infopage__wrapper--error {
    background: #cde28d;
    margin: 0 0 60px 0;
    padding: 155px 0 60px 0;
}

@media (min-width: 1024px) {
    .infopage__wrapper--error {
        margin: 0 0 12px 0;
        padding: 214px 0 83px 0;
    }
}

.infopage__wrapper--success {
    padding: 146px 0 46px 0;
}

@media (min-width: 1024px) {
    .infopage__wrapper--success {
        padding: 195px 0 103px 0;
    }
}
/* end infopage */

/* content-cms */
.content-cms {
    padding: 28px 0 0 0;
}

@media (min-width: 1024px) {
    .content-cms {
        padding: 17px 0 0 0;
    }
}

.content-cms h2 {
    margin: 40px 0 20px 0;
    padding: 0;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 26px;
    color: #000;
}

.content-cms p {
    margin: 0 0 20px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
}

.content-cms p:last-child {
    margin: 0;
}
/* end content-cms */

/* error-content */
.error-content__img {
    max-width: 410px;
    height: 161px;
    margin: 0 auto;
}

@media (min-width: 1024px) {
    .error-content__img {
        max-width: 904px;
        height: 356px;
    }
}

.error-content__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.error-content__info {
    margin: 40px 0 28px 0;
}

@media (min-width: 1024px) {
    .error-content__info {
        max-width: 868px;
        margin: 93px auto 39px auto;
    }
}

.error-content__info h1 {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 22px;
    line-height: 24px;
    text-align: center;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .error-content__info h1 {
    }
}

.error-content__info p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #6b6969;
    margin: 0;
    padding: 0;
}

/* end error-content */

/* success-content */
.success-content {
    max-width: 618px;
    margin: 0 auto;
}

.success-content__img {
    width: 185px;
    height: 185px;
    margin: 0 auto 35px auto;
}

@media (min-width: 1024px) {
    .success-content__img {
        margin: 0 auto 70px auto;
    }
}

.success-content__img img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.success-content__info h1 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 35px;
    text-align: center;
    color: #000;
    margin: 0 0 10px 0;
    padding: 0;
}

.success-content__info p {
    margin: 0;
    padding: 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #4c4c4c;
}

@media (min-width: 1024px) {
    .success-content__info p {
        font-size: 22px;
        line-height: 26px;
    }
}

.success-content__info-link {
    max-width: 344px;
    margin: 47px auto 0 auto;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 22px;
    line-height: 1;
    color: #fff;
    border-radius: 50px;
    height: 85px;
    background: #a8cc38;
    border: 1px solid #a8cc38;
}

.success-content__info-link:hover {
    background: #fff;
    color: #000;
}
/* end success-content */

/* contact-page */
.contact-page {
    padding: 120px 0 0 0;
}

@media (min-width: 1024px) {
    .contact-page {
        padding: 142px 0 0 0;
    }
}

.contact-row {
    margin-top: 35px;
    gap: 20px 0;
}
/* end contact-page */

/* contact-item */
.contact-item {
    background: #cde28d;
    border-radius: 25px;
    height: 254px;
    padding: 0 25px 20px 30px;
    position: relative;
    display: flex;
    align-items: end;
}

@media (min-width: 1024px) {
    .contact-item {
        height: 294px;
        padding: 0 45px 29px 45px;
    }
}

.contact-item__icon {
    position: absolute;
    top: 20px;
}

.contact-item__icon svg {
    width: 28px;
    height: 28px;
    fill: #000;
    transition: .2s ease;
}

.contact-item:hover .contact-item__icon svg{
    animation: shake 0.5s;
}

.contact-item__icon--address svg {
    height: 36px;
}

.contact-item__info h3 {
    margin: 0 0 20px 0;
    padding: 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 22px;
    line-height: 1;
    color: #4c4c4c;
}

@media (min-width: 1024px) {
    .contact-item__info h3 {
        margin: 0 0 26px 0;
    }
}

.contact-item__info-link-route {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 28px;
    color: #000;
    text-decoration: none;
    transition: .2s ease;
}

.contact-item__info-link-route:hover{
    color: #000;
    text-decoration: underline;
}

.contact-item__info-list {
    padding: 0;
    margin: 0;
}

.contact-item__info-list li {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 34px;
    color: #000;
    list-style-type: none;
}

.contact-item__info-list li a {
    text-decoration: none;
    display: inline-block;
    font-weight: inherit;
    color: inherit;
    font-size: inherit;
    position: relative;
}

.contact-item__info-list li a::before{
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #000;
    position: absolute;
    bottom: 0px;
    transform: scale(0, 1);
    transition: transform 0.3s;
    transform-origin: right top;
}

.contact-item__info-list li a:hover::before{
    transform-origin: left top;
    transform: scale(1, 1);
}


/* end contact-item */

/* contact-map */
.contact-map {
    margin: 60px 0;
    overflow: hidden;
}

.contact-map__inner {
    border-radius: 25px;
    height: 100%;
    overflow: hidden;
}

.contact-map__inner iframe {
    pointer-events: none;
    height: 369px;
}

@media (min-width: 1024px) {
    .contact-map__inner iframe {
        height: 544px;
    }
}
/* end contact-map */

/* blog */
.blog {
    padding: 104px 0 60px 0;
}

@media (min-width: 1024px) {
    .blog {
        padding: 143px 0 70px 0;
    }
}

.blog__subtitle {
    margin: 7px 0 0 0;
    padding: 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    color: #000;
}

.blog__wrapper {
    margin: 18px 0 0 0;
}

@media (min-width: 1024px) {
    .blog__wrapper {
        margin: 44px 0 0 0;
    }
}

.blog__row {
    gap: 20px 0;
}

@media (min-width: 1024px) {
    .blog__row {
        gap: 30px 0;
    }
}

.blog-item {
    overflow: hidden;
    background: #ebecf0;
    border-radius: 25px;
    display: block;
    text-decoration: none;
    transition: .2s ease;
    height: 100%;
}

.blog-item:hover{
    background: #6B6969;
}

.blog-item__info {
    padding: 26px 7px 15px 19px;
}

@media (min-width: 1024px) {
    .blog-item__info {
        padding: 37px 10px 29px 27px;
    }
}

.blog-item__img {
    overflow: hidden;
    border-radius: 25px;
    height: 318px;
}

@media (min-width: 1024px) {
    .blog-item__img {
        height: 333px;
    }
}

.blog-item__img img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.blog-item__info-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 1;
    color: #000;
    margin: 0 0 10px 0;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .blog-item__info-title {
        margin: 0 0 12px 0;
    }
}

.blog-item__info-bottom {
    display: flex;
    gap: 0 26px;
}

.blog-item__info-bottom-text {
    width: calc(100% - 61px - 26px);
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #6b6969;
    transition: .2s ease;
}

.blog-item__info-bottom-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #a8cc38;
    border-radius: 100%;
    width: 50px;
    height: 50px;
}

@media(min-width: 1024px){
    .blog-item__info-bottom-icon {
        width: 61px;
        height: 61px;
    }
}

.blog-item__info-bottom-icon svg {
    stroke: #fff;
    width: 15px;
    height: 15px;
}


.blog-item:hover .blog-item__info-title{
    color: #fff;
}

.blog-item:hover .blog-item__info-bottom-text{
    color: #fff;
}
/* end blog */

/* page-pagination */
.page-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 38px 0 0 0;
}

@media (min-width: 1024px) {
    .page-pagination {
        gap: 0 57px;
        justify-content: end;
        margin: 72px 0 0 0;
    }
}

.page-pagination__row {
    display: flex;
    padding: 0;
    margin: 0;
    align-items: center;
    gap: 0 15px;
    flex-wrap: wrap;
}

.page-pagination__item {
    list-style-type: none;
}
.page-pagination__item a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 63px;
    height: 63px;
    border: 1px solid #6b6969;
    border-radius: 100%;
    background: #fff;
    transition: 0.2s ease;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 30px;
    line-height: 1;
    color: #6b6969;
}

.page-pagination__item.active a,
.page-pagination__item:hover a {
    color: #000;
    background: #ebecf0;
    border-color: #a8cc38;
}

.page-pagination__link {
    display: none;
    align-items: center;
    justify-content: center;
    border: 1px solid #6b6969;
    width: 72px;
    height: 40px;
    border-radius: 70px;
    text-decoration: none;
    transition: .2s ease;
}

@media (min-width: 1200px) {
    .page-pagination__link {
        display: flex;
    }
}

.page-pagination__link:hover{
    background: #a8cc38;
    border-color: #a8cc38;
}

.page-pagination__link svg {
    width: 34px;
    height: 18px;
    stroke: #6b6969;
}
.page-pagination__link--next svg {
    transform: scale(-1);
}

.page-pagination__link:hover svg{
    stroke: #fff;
}
/* end page-pagination */

/* search-page */
.search-page {
    padding: 102px 0 60px 0;
}

@media (min-width: 1024px) {
    .search-page {
        padding: 142px 0 70px 0;
    }
}

.search-page--title-h1 {
    text-align: center;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .search-page--title-h1 {
        text-align: left;
        margin: 0 0 40px 0;
    }
}

.search-page__article-row {
    gap: 20px 0;
}

@media (min-width: 1024px) {
    .search-page__article-row {
        gap: 30px 0;
    }
}

.search-page__services-row {
    gap: 10px 0;
}

@media (min-width: 1024px) {
    .search-page__services-row {
        gap: 25px 0;
    }
}

.search-page__services {
    margin: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .search-page__services {
        margin: 0 0 70px 0;
    }
}
/* end search-page */

/* services-item */
.services-item {
    background: #6b6969;
    border-radius: 25px;
    overflow: hidden;
    padding: 18px 16px 17px 16px;
    display: block;
    text-decoration: none;
    height: 100%;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .services-item {
        padding: 36px 29px 33px 29px;
        height: 100%;
    }
}

.services-item__icon {
    margin: 0 0 30px 0;
}

@media (min-width: 1024px) {
    .services-item__icon {
        margin: 0 0 33px 0;
    }
}

.services-item__icon svg {
    height: 40px;
    width: 40px;
    fill: #a8cc38;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .services-item__icon svg {
        width: 48px;
        height: 52px;
    }
}

.services-item:hover .services-item__icon svg{
    fill: #4c4c4c;
}

.services-item__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    padding: 0;
    margin: 0 0 13px 0;
}

@media (min-width: 1024px) {
    .services-item__title {
        font-size: 22px;
    }
}

.services-item__desc {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: #fff;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    line-clamp: 3;
    text-overflow: ellipsis;
    display: -webkit-box;
    overflow: hidden;
}

@media (min-width: 1024px) {
    .services-item__desc {
        line-clamp: unset;
        display: block;
    }
}

.services-item:hover{
    background: #A8CC38;
}

.services-item__icon img {
    transition: filter 0.3s ease;
}

.services-item:hover .services-item__icon img {
    filter: invert(24%) sepia(0%) saturate(0%) hue-rotate(201deg) brightness(100%) contrast(0);
}

/* end services-item */

/* article-page */
.article-page {
    padding: 0 0 60px 0;
}

@media (min-width: 1200px) {
    .article-page {
        padding: 0 0 70px 0;
    }
}
.article-page__head {
    padding: 100px 0 52px 0;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    background: #ebecf0;
}

@media (min-width: 1200px) {
    .article-page__head {
        padding: 134px 0 60px 0;
        margin: 9px 15px 0 15px;
        border-radius: 40px;
    }
}

.article-page__head-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.article-page__head-text-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    color: #000;
    margin: 0;
    padding: 0;
}

@media (min-width: 1024px) {
    .article-page__head-text-title {
        font-size: 40px;
    }
}

.article-page__head-desc {
    margin: 36px 0 0 0;
    max-width: 367px;
}

@media (min-width: 1200px) {
    .article-page__head-desc {
        max-width: 482px;
        margin: 24px 0 0 0;
    }
}

.article-page__head-desc p {
    margin: 0 0 15px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    color: #000;
}

@media(min-width: 1024px){
    .article-page__head-desc p{
        font-size: 22px;
        line-height: 28px;
    }
}

.article-page__head-desc p:last-child {
    margin: 0;
}

.article-page__head-img {
    margin: 45px 0 0 0;
    overflow: hidden;
    border-radius: 25px;
}

@media (min-width: 1024px) {
    .article-page__head-img {
        margin: 0;
    }
}

.article-page__head-img img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.article-page__content {
    padding: 54px 0 70px 0;
}

@media (min-width: 1024px) {
    .article-page__content {
        padding: 70px 0 120px 0;
    }
}

.article-page__content-cms h2 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 15px 0;
}

@media (min-width: 1024px) {
    .article-page__content-cms h2 {
        margin: 0 0 35px 0;
        font-size: 40px;
    }
}

.article-page__content-cms p {
    margin: 0 0 15px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
}

@media (min-width: 1024px) {
    .article-page__content-cms p {
        font-size: 22px;
        line-height: 28px;
        margin: 0 0 20px 0;
    }
}

.article-page__content-cms p:last-child {
    margin: 0;
}

.article-page__photos-row {
    gap: 15px 0;
}

@media (min-width: 1024px) {
    .article-page__photos-row {
        gap: 30px 0;
    }
}

.article-page__photo-item {
    overflow: hidden;
    border-radius: 25px;
}

@media(min-width: 1024px){
    .article-page__photo-item{
        border-radius: 40px;
    }
}

.article-page__photo-item img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}
/* end article-page */

/* works-page */
.works-page {
    padding: 116px 0 60px 0;
}

@media (min-width: 1200px) {
    .works-page {
        padding: 142px 0 70px 0;
    }
}

.works-page__subtitle {
    width: 100%;
    max-width: 800px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #6b6969;
    margin: 17px auto 0 auto;
}

@media (min-width: 1024px) {
    .works-page__subtitle {
        font-size: 22px;
        line-height: 26px;
    }
}

.works-page__wrapper {
    margin: 20px 0 0 0;
}

@media (min-width: 1024px) {
    .works-page__wrapper {
        margin: 45px 0 0 0;
    }
}

.work-item {
    background: #ebecf0;
    border-radius: 25px;
    overflow: hidden;
}

.work-item__after-before {
    margin: 9px 0 0 0;
    display: flex;
    align-items: center;
}

@media (min-width: 1024px) {
    .work-item__after-before {
        margin: 11px 0 0 0;
    }
}

.work-item__after-before-item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
}

.work-item__after-before-item span {
    width: 100%;
    max-width: 110px;
    height: 29px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    text-transform: uppercase;
    color: #000;
    background: #fff;
    border-radius: 40px;
}

.work-item__info {
    margin: 27px 0 0 0;
    padding: 0 24px 25px 34px;
}

.work-item__info h3 {
    margin: 0 0 20px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    color: #6b6969;
}

@media (min-width: 1024px) {
    .work-item__info h3 {
        font-size: 22px;
        line-height: 24px;
    }
}

.work-item__info p {
    margin: 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    color: #000;
}

@media (min-width: 1024px) {
    .work-item__info p {
        font-size: 22px;
        line-height: 26px;
    }
}

.works-page__btn {
    max-width: 332px;
    margin: 41px auto 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    color: #000;
    border: 1px solid #6b6969;
    border-radius: 50px;
    height: 55px;
    background: #fff;
    transition: 0.2s ease;
}

.works-page__btn:hover {
    background: #a8cc38;
    color: #fff;
    border-color: #a8cc38;
}

@media(min-width: 1024px){
    .works-page__btn{
        margin: 60px auto 0 auto;
    }
}

.works-page__row {
    gap: 20px 0;
}

@media (min-width: 1024px) {
    .works-page__row {
        gap: 30px 0;
    }
}

.work-item__slider {
}

.before-after-slider {
    width: 100%;
    max-width: 100%;
    position: relative;
    overflow: hidden;
    /*height: 345px;*/
    border-radius: 25px;
    height: auto;
}

@media (min-width: 1024px) {
    .before-after-slider {
        /*height: 556px;*/
        height: auto;
    }
}

.after-image {
    display: block;
}

.after-image img{
    /*height: 345px;*/
    width: 100%;
}

@media(min-width: 1024px){
    .after-image img{
        /*height: auto;*/
    }
}

.before-image {
    position: absolute;
    height: 100%;
    width: 50%;
    top: 0;
    left: 0;
    overflow: hidden;
    z-index: 2;
}

.before-image img{
    /*height: 345px;*/
    height: 100%;
}

@media(min-width: 1024px){
    .before-image img{
        /*height: auto;*/
    }
}

.resizer {
    position: absolute;
    display: flex;
    align-items: center;
    z-index: 5;
    top: 0;
    left: 50%;
    height: 100%;
    width: 1px;
    background: white;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
}

.resizer::after {
    background-image: url("../images/ab.svg");
    width: 52px;
    height: 45px;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: -26px;
    transform: translateY(-50%);
}

/* end works-page */

/* online-callback */
.online-callback {
    padding: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .online-callback {
        padding: 9px 15px 70px 15px;
    }
}
.online-callback__wrapper {
    padding: 122px 0 50px 0;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    background: #ebecf0;
}

@media (min-width: 1200px) {
    .online-callback__wrapper {
        padding: 157px 0 70px 0;
        border-radius: 40px;
    }
}

.online-callback__head {
    margin: 32px auto 51px auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
    max-width: 697px;
    width: 100%;
}

@media (min-width: 1024px) {
    .online-callback__head {
        margin: 40px auto 53px auto;
    }
}

.online-callback__head-item {
    height: 81px;
    width: 81px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 35px;
    line-height: 1;
    color: #000;
    text-decoration: none;
    background: #fff;
    transition: 0.2s ease;
    position: relative;
    pointer-events: none;
}

.online-callback__head-item::before {
    content: "";
    height: 2px;
    width: 230px;
    display: block;
    position: absolute;
    top: 50%;
    left: 100%;
    background: #fff;
}

.online-callback__head-item:last-child::before {
    display: none;
}

.online-callback__head-item:hover,
.online-callback__head-item.active {
    background: #a8cc38;
    color: #fff;
}

.online-callback__head-item.active::before {
    background: #a8cc38;
}

.online-callback__step {
    display: none;
}
.online-callback__step.active {
    display: block;
}

.online-callback__step-subtitle {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 20px;
    line-height: 24px;
    text-align: center;
    color: #000;
    margin: 0 0 31px 0;
}

.online-callback__step-img {
    text-align: center;
}

.online-callback__step-input-list {
    display: flex;
    flex-direction: column;
    gap: 20px 0;
    width: 100%;
    max-width: 363px;
    margin: 0 auto;
}

@media (min-width: 1024px) {
    .online-callback__step-input-list {
        gap: 29px 0;
        max-width: 569px;
    }
}

.online-callback__step-input {
    display: flex;
    align-items: center;
    height: 81px;
    width: 100%;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 20px;
    color: rgba(0, 0, 0, 0.7);
    background: #fff;
    border: 1px solid #a8cc38;
    border-radius: 60px;
    padding: 0 24px;
}

.online-callback__step-input::placeholder {
    color: rgba(0, 0, 0, 0.7);
}

.online-callback__step-btn-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    margin: 40px 0 0 0;
    gap: 20px 10px;
}

@media (min-width: 1024px) {
    .online-callback__step-btn-wrap {
        gap: 0 41px;
        justify-content: end;
        flex-direction: row;
    }
}

.online-callback__step-btn-prev {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #6b6969;
    border-radius: 50px;
    height: 66px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 22px;
    line-height: 1;
    color: #4c4c4c;
    gap: 0 47px;
    width: 100%;
    max-width: 100%;
}

@media (min-width: 1024px) {
    .online-callback__step-btn-prev {
        max-width: 250px;
        gap: 0 75px;
    }
}

.online-callback__step-btn-prev svg {
    width: 18px;
    height: 17px;
    stroke: #6b6969;
    transform: rotate(-90deg);
}

.online-callback__step-btn-next {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #a8cc38;
    border: none;
    border-radius: 50px;
    height: 66px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 22px;
    line-height: 1;
    color: #fff;
    gap: 0 47px;
    width: 100%;
        max-width: 100%;
}

.online-callback__step-btn-next svg {
    width: 18px;
    height: 17px;
    stroke: #fff;
}

@media (min-width: 1024px) {
    .online-callback__step-btn-next {
        max-width: 250px;
        /* gap: 0 75px; */
    }
}

.online-callback__step-btn-next {
  background-color: grey;
  cursor: not-allowed;
  pointer-events: none;
}

.online-callback__step-btn-next.active {
  background-color: #a8cc38;
  cursor: pointer;
  pointer-events: auto;
}

.online-callback__step-checkbox-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 0;
}

@media (min-width: 1024px) {
    .online-callback__step-checkbox-list {
        display: flex;
        flex-wrap: wrap;
        gap: 30px;
    }
}

.online-callback__step-checkbox-item {
    width: 100%;
}

@media (min-width: 1024px) {
    .online-callback__step-checkbox-item {
        width: calc(100% / 2 - 15px);
    }
}

.online-callback__step-checkbox-item-control {
    background: #fff;
    border-radius: 25px;
    opacity: 0.7;
    height: 168px;
    display: flex;
    align-items: end;
    justify-content: space-between;
    padding: 0 27px 18px 19px;
    cursor: pointer;
    transition: 0.2s ease;
}

@media (min-width: 1024px) {
    .online-callback__step-checkbox-item-control {
        height: 271px;
        padding: 0 35px 11px 57px;
    }
}

.online-callback__step-checkbox-item-control span {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 26px;
    line-height: 1;
    text-transform: uppercase;
    color: #000;
    padding: 0 0 28px 0;
}

@media (min-width: 1024px) {
    .online-callback__step-checkbox-item-control span {
        padding: 0 0 41px 0;
    }
}

.online-callback__step-checkbox-item-control img {
    width: 136px;
    display: block;
}

.online-callback__step-checkbox-item
    input:checked
    + .online-callback__step-checkbox-item-control {
    border: 4px solid #a8cc38;
}
/* end online-callback */

/* reviews-header */
.reviews-header {
    padding: 0;
}

@media (min-width: 1024px) {
    .reviews-header {
        padding: 9px 15px 0 15px;
    }
}

.reviews-header__wrapper {
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    padding: 117px 0 50px 0;
    background: #ebecf0;
}

@media (min-width: 1024px) {
    .reviews-header__wrapper {
        border-radius: 40px;
        padding: 171px 0 74px 0;
    }
}

.reviews-header__info {
}

@media (min-width: 1024px) {
    .reviews-header__info {
        padding: 0 43px 0 0;
    }
}

.reviews-header__info h1 {
    margin: 0 0 18px 0;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    color: #000;
}

@media (min-width: 1024px) {
    .reviews-header__info h1 {
        margin: 0 0 38px 0;
        font-size: 40px;
    }
}

.reviews-header__info p {
    margin: 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    color: #000;
}

@media (min-width: 1024px) {
    .reviews-header__info p {
        font-size: 22px;
        line-height: 26px;
    }
}

.reviews-header__img {
    margin: 27px 0 39px 0;
}

@media (min-width: 1024px) {
    .reviews-header__img {
        margin: 0;
    }
}

.reviews-header__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.reviews-header__right {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 32px 0;
}

.reviews-header__right-item {
    width: 100%;
    max-width: 316px;
    height: 150px;
    display: flex;
    align-items: center;
    flex-direction: column;
    border: 1px solid #6b6969;
    border-radius: 76px;
    background: #fff;
    justify-content: center;
}

.reviews-header__right-item-name {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 22px;
    line-height: 26px;
    text-align: center;
    color: #000;
}

.reviews-header__right-item-info {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 40px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 10px 0 0 0;
}

.reviews-header__right-item-info svg {
    fill: #ffbc20;
    width: 34px;
    height: 34px;
}
/* end reviews-header */

/* reviews-list */
.reviews-list {
    padding: 60px 0;
}

@media (min-width: 1024px) {
    .reviews-list {
        padding: 70px 0;
    }
}
/* end reviews-list */

/* reviews-callback */
.reviews-callback {
    overflow: hidden;
    padding: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .reviews-callback {
        padding: 0 15px 70px 15px;
    }
}

.reviews-callback__wrapper {
    background: #ebecf0;
    padding: 39px 0 60px 0;
    border-radius: 40px;
}

@media (min-width: 1024px) {
    .reviews-callback__wrapper {
        padding: 70px 0;
    }
}

.reviews-callback__row {
    flex-direction: column-reverse;
}

@media (min-width: 1024px) {
    .reviews-callback__row {
        flex-direction: row;
    }
}

.reviews-callback__info {
    width: 100%;
    max-width: 100%;
}

@media (min-width: 1024px) {
    .reviews-callback__info {
        max-width: 569px;
        padding: 74px 0 0 0;
    }
}

.reviews-callback__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    text-align: center;
    color: #000;
    margin: 0 0 30px 0;
}

@media (min-width: 1024px) {
    .reviews-callback__title {
        font-size: 45px;
        margin: 0 0 40px 0;
    }
}

.reviews-callback__img {
    margin: 0 0 46px 0;
}

@media (min-width: 1024px) {
    .reviews-callback__img {
        margin: 0;
    }
}

.reviews-callback__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.reviews-callback__btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 50px;
    height: 70px;
    background: #a8cc38;
    margin: 52px auto 0 auto;
    width: 100%;
    max-width: 377px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 22px;
    line-height: 1;
    color: #fff;
    border: none;
    padding: 0 40px;
}

.reviews-callback__btn svg {
    stroke: #fff;
    width: 16px;
    height: 15px;
}

.reviews-callback__form-input {
    display: flex;
    align-items: center;
    height: 81px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 20px;
    color: rgba(0, 0, 0, 0.7);
    border: 1px solid #a8cc38;
    border-radius: 61px;
    background: #fff;
    padding: 0 40px;
    width: 100%;
}

.reviews-callback__form-input::placeholder,
.reviews-callback__form-textarea::placeholder {
    color: rgba(0, 0, 0, 0.7);
}

.reviews-callback__form-textarea {
    display: block;
    height: 190px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 20px;
    color: rgba(0, 0, 0, 0.7);
    border: 1px solid #a8cc38;
    border-radius: 61px;
    background: #fff;
    padding: 28px 40px 28px 40px;
    width: 100%;
    resize: none;
    margin: 18px 0 0 0;
}

.reviews-callback__form-control-star {
    margin: 63px 0 0 0;
}

@media (min-width: 1024px) {
    .reviews-callback__form-control-star {
        margin: 18px 0 0 0;
        padding: 0 0 0 61px;
    }
}

.reviews-callback__form-control-star span {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 20px;
    color: rgba(0, 0, 0, 0.7);
    display: block;
    margin: 0 0 12px 0;
}
/* end reviews-callback */

/* star */
.star-list {
    display: flex;
    align-items: center;
    gap: 0 22px;
    padding: 0;
    margin: 0;
}

.star-list li {
    cursor: pointer;
    list-style-type: none;
}

.star-list svg {
    width: 39px;
    height: 39px;
    fill: #6b6969;
    transition: fill 0.2s;
}

.star-list li.active svg {
    fill: #ffbc20;
}
/* end star */

/* reviews-list */
.reviews-list__row {
    gap: 15px 0;
}

@media (min-width: 1024px) {
    .reviews-list__row {
        gap: 30px 0;
    }
}
/* end reviews-list__row */

/* reviews-item */
.reviews-item {
    border: 1px solid #6b6969;
    border-radius: 25px;
    padding: 25px 22px 30px 22px;
    height: 100%;
}

.reviews-item__head {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.reviews-item__head-name {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 24px;
    line-height: 120%;
    color: #000;
}

.reviews-item__head-star span {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    color: #4c4c4c;
    display: block;
}

.reviews-item__head-star-list {
    display: flex;
    align-items: center;
    gap: 0 3px;
    padding: 0;
    margin: 0;
}

.reviews-item__head-star-list li {
    list-style-type: none;
}

.reviews-item__head-star-list li svg {
    width: 23px;
    height: 23px;
    fill: #a8cc38;
}

.reviews-item__content {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
    color: #000;
    margin: 23px 0 19px 0;
}

.reviews-item__bottom {
    display: flex;
    align-items: center;
    gap: 0 20px;
}

.reviews-item__bottom-btn {
    width: calc(50% - 10px);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 69px;
    border-radius: 20px;
    border: none;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 20px;
    padding: 0 17px;
    text-align: left;
    text-decoration: none;
}

.reviews-item__bottom-btn:hover{
    color: #fff;
    background: #6b6969;
}

.reviews-item__video-btn {
    border: 1px solid #4c4c4c;
    background: #fff;
    gap: 0 10px;
    text-decoration: none;
    color: #6B6969;
    transition: .2s ease;
}

.reviews-item__video-btn svg {
    width: 19px;
    height: 19px;
    fill: #6b6969;
    transition: .2s ease;
}

.reviews-item__video-btn:hover{
    background: #6B6969;
    color: #fff;
}

.reviews-item__video-btn:hover svg{
    fill: #fff;
}

.reviews-item__more-btn {
    background: #a8cc38;
    color: #fff;
}
/* end reviews-item */

/* sign-callback */
.sign-callback {
    padding: 60px 0 60px 0;
}

@media (min-width: 1024px) {
    .sign-callback {
        padding: 70px 15px 70px 15px;
    }
}

.sign-callback__wrapper {
    background: #eff0f2;
    position: relative;
    border-radius: 40px;
    padding: 48px 34px 250px 34px;
    overflow: hidden;
}

@media (min-width: 1024px) {
    .sign-callback__wrapper {
        padding: 59px 0 70px 0;
    }
}

.sign-callback__wrapper::before {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-image: url("../images/sign-callback.png");
    position: absolute;
    left: 0;
    top: 0;
    transform: rotate(90deg);
    width: 600px;
    height: 600px;
    background-size: contain;
    display: none;
}

@media (min-width: 1200px) {
    .sign-callback__wrapper::before {
        display: block;
    }
}

.sign-callback__wrapper::after {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-position: -60px 0;
    background-image: url("../images/sign-callback.png");
    position: absolute;
    right: 0;
    bottom: 0;
    width: 430px;
    height: 430px;
    transform: rotate(-90deg);
    background-size: contain;
}

@media (min-width: 1200px) {
    .sign-callback__wrapper::after {
        width: 600px;
        height: 600px;
        top: 0;
        transform: none;
        background-position: 0 0;
    }
}

.sign-callback__container {
    position: relative;
    z-index: 9;
}

.sign-callback__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
}

@media (min-width: 1024px) {
    .sign-callback__title {
        font-size: 55px;
    }
}

.sign-callback__subtitle {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #4c4c4c;
    margin: 13px 0 0 0;
}

@media (min-width: 1024px) {
    .sign-callback__subtitle {
        font-size: 22px;
    }
}

.input-control {
    border: 1px solid #a8cc38;
    border-radius: 61px;
    background: #fff;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 20px;
    color: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    padding: 0 24px;
    height: 81px;
    width: 100%;
}

.input-control::placeholder {
    color: rgba(0, 0, 0, 0.7);
}

.sign-callback__form {
    display: block;
    width: 100%;
    max-width: 598px;
    margin: 45px auto 0 auto;
}

@media (min-width: 1024px) {
    .sign-callback__form {
        margin: 55px auto 0 auto;
    }
}

.sign-callback__form-input-text {
}

.sign-callback__form-input-phone {
    margin: 20px 0 0 0;
}

@media (min-width: 1024px) {
    .sign-callback__form-input-phone {
        margin: 30px 0 0 0;
    }
}

.sign-callback__form-btn {
    display: flex;
    align-items: center;
    padding: 0 34px;
    border-radius: 50px;
    height: 70px;
    background: #a8cc38;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    border: none;
    width: 100%;
    max-width: 345px;
    margin: 31px auto 0 auto;
    justify-content: space-between;
    transition: .2s ease;
    border: 1px solid transparent;
}

@media (min-width: 1024px) {
    .sign-callback__form-btn {
        max-width: 429px;
        height: 85px;
        padding: 0 46px;
        font-size: 22px;
        margin: 50px auto 0 auto;
    }
}

.sign-callback__form-btn:hover{
    background: transparent;
    border-color: #4c4c4c;
    color: #4c4c4c;
}

.sign-callback__form-btn svg {
    stroke: #fff;
    width: 17px;
    height: 17px;
}

.sign-callback__form-btn:hover svg{
     stroke: #4c4c4c;
}

/* end sign-callback */

/* patient-reviews */
.patient-reviews {
    padding: 60px 0 0 0;
}

@media (min-width: 1024px) {
    .patient-reviews {
        padding: 70px 0 0 0;
    }
}

.patient-reviews__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 15px 0;
}

@media (min-width: 1024px) {
    .patient-reviews__title {
        font-size: 45px;
        margin: 0 0 17px 0;
    }
}

.patient-reviews__subtitle {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    color: #4c4c4c;
}

@media (min-width: 1024px) {
    .patient-reviews__subtitle {
        font-size: 22px;
        line-height: 26px;
    }
}

.patient-reviews__row {
    margin-top: 27px;
}

@media (min-width: 1024px) {
    .patient-reviews__row {
        margin-top: 45px;
    }
}

.patient-reviews__link-page {
    margin: 42px auto 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 361px;
    height: 70px;
    border-radius: 50px;
    background: #6b6969;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    text-align: center;
    color: #fff;
    text-decoration: none;
    transition: 0.2s ease;
}

@media (min-width: 1024px) {
    .patient-reviews__link-page {
        margin: 45px auto 0 auto;
        max-width: 433px;
        height: 85px;
        font-size: 22px;
    }
}

.patient-reviews__link-page:hover {
    background: #cde28d;
    color: #4c4c4c;
}
/* end patient-reviews */

/* screen-first-block */
.screen-first-block {
    position: relative;
    padding: 0;
    overflow: hidden;
}

@media (min-width: 1024px) {
    .screen-first-block {
        padding: 9px 15px 0 15px;
    }
}

.screen-first-block__picture {
    display: block;
    width: 100%;
}

.screen-first-block__picture img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.screen-first-block__info {
    position: absolute;
    bottom: 57px;
    width: 100%;
    margin: 0 auto;
}

@media (min-width: 1024px) {
    .screen-first-block__info {
        bottom: 71px;
    }
}

.screen-first-block__info-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    margin: 0;
    color: #fff;
}

@media (min-width: 1024px) {
    .screen-first-block__info-title {
        font-size: 55px;
        line-height: 1;
    }
}

.screen-first-block__info-text {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 137%;
    text-align: center;
    color: #fff;
    margin: 16px auto 0 auto;
    width: 100%;
    max-width: 768px;
}

@media (min-width: 1024px) {
    .screen-first-block__info-text {
        font-size: 30px;
        line-height: 40px;
    }

    .screen-first-block__info-text--specialist {
        font-size: 22px;
        line-height: 26px;
    }
}

.screen-first-block__info-link {
    display: flex;
    align-items: center;
    padding: 0 15px 0 27px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    justify-content: space-between;
    width: 100%;
    max-width: 361px;
    height: 70px;
    border-radius: 50px;
    background: #a8cc38;
    text-decoration: none;
    transition: 0.2s ease;
    margin: 20px auto 0 auto;
    transition: 0.2s ease;
    border: none;
}

@media (min-width: 1024px) {
    .screen-first-block__info-link {
        margin: 57px auto 0 auto;
        height: 85px;
        max-width: 489px;
        justify-content: center;
        gap: 0 18px;
        padding: 0;
        font-size: 22px;
    }
}

.screen-first-block__info-link svg {
    stroke: #fff;
    width: 15px;
    height: 15px;
}

.screen-first-block__info-link:hover {
    background: #fff;
    color: #a8cc38;
}

.screen-first-block__info-link:hover svg {
    stroke: #a8cc38;
}
/* end screen-first-block */

/* patient-complex */
.patient-complex {
    padding: 60px 0 0 0;
}

@media (min-width: 1024px) {
    .patient-complex {
        padding: 71px 0 0 0;
    }
}

.patient-complex__wrapper {
    position: relative;
    overflow: hidden;
    padding: 0 0 66px 0;
    margin: 33px 0 0 0;
}

@media (min-width: 1024px) {
    .patient-complex__wrapper {
        padding: 73px 0 104px 0;
        margin: 38px 0 0 0;
    }
}

.patient-complex__wrapper::before {
    content: "";
    display: block;
    border-radius: 40px 0 0 40px;
    width: calc(100% - 15px);
    right: 0;
    top: 0;
    height: 100%;
    position: absolute;
    background: #ebecf0;
}

@media (min-width: 1024px) {
    .patient-complex__wrapper::before {
        width: calc(100% - 40%);
    }
}

.patient-complex__title {
    margin: 0;
    padding: 0;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    color: #000;
}

@media (min-width: 1024px) {
    .patient-complex__title {
        font-size: 45px;
        line-height: 1;
    }
}

.patient-complex__subtitle {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    text-align: center;
    color: #4c4c4c;
    max-width: 643px;
    margin: 23px auto 0 auto;
}

@media (min-width: 1024px) {
    .patient-complex__subtitle {
        margin: 25px auto 0 auto;
        font-size: 22px;
        line-height: 24px;
    }
}

.patient-complex__list {
    position: relative;
    z-index: 9;
    gap: 0;
    display: flex;
    flex-direction: column;
}

@media (min-width: 1024px) {
    .patient-complex__list {
        gap: 200px 0;
    }
}

.patient-complex__item-number {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 150px;
    line-height: 190px;
    color: #fff;
    text-align: center;
    margin: 0 0 66px 0;
    position: relative;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .patient-complex__item-number {
        margin: 0;
        color: #ebecf0;
    }
}

.patient-complex__item-number::before {
    content: "";
    height: 71px;
    width: 4px;
    background: #fff;
    position: absolute;
    left: 50%;
    bottom: -50px;
}

@media (min-width: 1024px) {
    .patient-complex__item-number::before {
        height: 211px;
        background: #ebecf0;
        bottom: -220px;
    }
}

@media (min-width: 1024px) {
    .patient-complex__item:last-child .patient-complex__item-number::before {
        display: none;
    }
}

.patient-complex__item-info {
    padding: 0 10px 0 22px;
}

@media (min-width: 1024px) {
    .patient-complex__item-info {
        padding: 0 0 0 78px;
    }
}

.patient-complex__item-info h3 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 26px;
    line-height: 1;
    text-transform: uppercase;
    color: #000;
    margin: 0 0 18px 0;
}

@media (min-width: 1024px) {
    .patient-complex__item-info h3 {
        margin: 0 0 35px 0;
    }
}

.patient-complex__item-info p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: #000;
    margin: 0;
}

@media (min-width: 1024px) {
    .patient-complex__item-info p {
        font-size: 22px;
        line-height: 26px;
    }
}

.patient-complex__item-img {
    display: flex;
    align-items: center;
    justify-content: center;
}

.patient-complex__item.active .patient-complex__item-number {
    color: #a8cc38;
}

.patient-complex__item.active .patient-complex__item-number::before {
    background: #a8cc38;
}

.patient-complex__item-img-right {
    float: right;
    margin: 0 0 0 5px;
    width: 120px;
}

@media (min-width: 1024px) {
    .patient-complex__item-img-right {
        display: none;
    }
}
/* end patient-complex */

/* contact-block */
.contact-block {
    padding: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .contact-block {
        padding: 0 0 68px 0;
    }
}

.contact-block__row {
    flex-direction: column-reverse;
}

@media (min-width: 1024px) {
    .contact-block__row {
        flex-direction: row;
    }
}

.contact-block__map {
    overflow: hidden;
    border-radius: 25px;
}

.contact-block__address {
    display: flex;
    align-items: center;
    gap: 0 18px;
}

.contact-block__address svg {
    width: 40px;
    height: 56px;
    fill: #a8cc38;
}

.contact-block__address a{
    text-decoration: none;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    line-height: 22px;
    color: #000;
}

.contact-block__info-row {
    padding: 34px 0 25px 0;
}

@media (min-width: 1024px) {
    .contact-block__info-row {
        padding: 49px 0 0 0;
    }
}

.contact-block__info-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 10px 0;
}

@media (min-width: 1024px) {
    .contact-block__info-title {
        font-size: 55px;
        margin: 0 0 42px 0;
        text-align: left;
    }
}

.contact-block__item {
    padding: 17px 10px 32px 10px;
    height: 213px;
}

@media (min-width: 1024px) {
    .contact-block__item {
        height: 257px;
        padding: 28px 21px 41px 21px;
    }
}

.contact-block__item .contact-item__info-list li {
    font-size: 18px;
    line-height: 24px;
}

.contact-block__item .contact-item__info h3 {
    margin: 0 0 10px 0;
    font-size: 19px;
    line-height: 1;
}

@media (min-width: 1024px) {
    .contact-block__item .contact-item__info h3 {
        margin: 0 0 17px 0;
    }
}

.contact-block__info-gap{
    gap: 20px 0;
}
/* end contact-block */

/* specialist-block */
.specialist-block {
    padding: 60px 0 0 0;
}

@media (min-width: 1024px) {
    .specialist-block {
        padding: 72px 0 0 0;
    }
}

.specialist-block__filter-row {
    align-items: center;
    gap: 10px;
    display: flex;
    flex-wrap: wrap;
}

@media (min-width: 1024px) {
    .specialist-block__filter-row {
        gap: 10px 60px;
        justify-content: center;
    }
}

.specialist-block__filter-item {
    cursor: pointer;
}

.specialist-block__filter-item-span {
    display: flex;
    align-items: center;
    padding: 0 15px;
    height: 44px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    color: #000;
    border: 1px solid #6b6969;
    border-radius: 27px;
    background: #fff;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .specialist-block__filter-item-span {
        padding: 0 41px;
        height: 55px;
        font-size: 24px;
    }
}

.specialist-block__filter-item-input:checked~.specialist-block__filter-item-span{
    background: #ebecf0;
    border-color: #a8cc38;
}

.specialist-block__list {
    margin: 28px 0 0 0;
}

@media (min-width: 1024px) {
    .specialist-block__list {
        margin: 39px 0 0 0;
    }
}

.specialist-block__list {
    display: flex;
    flex-direction: column;
    padding: 0;
}

@media (min-width: 1024px) {
    .specialist-block__list {
        padding: 0 15px;
    }
}

.specialist-block__item {
    border-radius: 40px;
    padding: 40px 0 47px 0;
}

@media (min-width: 1024px) {
    .specialist-block__item {
        padding: 60px 0;
    }
}

.specialist-block__item:last-child {
    padding-bottom: 0;
}

.specialist-block__item:nth-child(odd) {
    background: #ebecf0;
}

.specialist-block__item:nth-child(even) .specialist-block__item-row {
    flex-direction: column-reverse;
}

@media(min-width: 1024px){
    .specialist-block__item:nth-child(even) .specialist-block__item-row{
        flex-direction: row;
    }
}

.specialist-block__item-img {
    overflow: hidden;
}

.specialist-block__item-img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.specialist-block__item-info {
    padding: 50px 0 0 0;
}

.specialist-block__item-name {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0;
    padding: 0 0 0 12px;
}

@media (min-width: 1024px) {
    .specialist-block__item-name {
        padding: 0 0 0 84px;
    }
    .specialist-block__item:nth-child(even) .specialist-block__item-name {
        padding: 0 0 0 12px;
    }
}

.specialist-block__item-subtitle {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 22px;
    line-height: 1;
    color: #6b6969;
    margin: 6px 0 0 0;
    padding: 0 0 0 12px;
}

@media (min-width: 1024px) {
    .specialist-block__item-subtitle {
        padding: 0 0 0 84px;
    }
    .specialist-block__item:nth-child(even) .specialist-block__item-subtitle {
        padding: 0 0 0 12px;
    }
}

.specialist-block__item-text {
    position: relative;
    padding: 92px 11px 0 48px;
}

@media (min-width: 1024px) {
    .specialist-block__item-text {
        padding: 155px 0 0 109px;
    }
    .specialist-block__item:nth-child(even) .specialist-block__item-text {
        padding: 155px 0 0 37px;
    }
}

.specialist-block__item-text p {
    position: relative;
    z-index: 2;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 27px;
    color: #000;
}

.specialist-block__item-text p:last-child {
    margin: 0;
}

.specialist-block__item-text-icon {
    position: absolute;
    top: 50px;
    left: 0;
    width: 84px;
    height: 65px;
    z-index: 1;
}

@media (min-width: 1024px) {
    .specialist-block__item-text-icon {
        top: 110px;
        left: 77px;
    }
    .specialist-block__item:nth-child(even) .specialist-block__item-text-icon {
        left: 6px;
    }
}
/* end specialist-block */

/* seo-block */
.seo-block {
    padding: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .seo-block {
        padding: 0 0 70px 0;
    }
}

.seo-block--inner {
    padding-bottom: 0;
}

.seo-block__content {
    height: 225px;
    overflow: hidden;
    position: relative;
}

@media (min-width: 1024px) {
    .seo-block__content {
        height: 144px;
    }
}

.seo-block__content p {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    color: #000;
    margin: 0 0 20px 0;
}

.seo-block__content p:last-child {
    margin: 0;
}

.seo-block__content::before {
    content: "";
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: 0;
    background: linear-gradient(180deg, rgba(242, 242, 239, 0) 0%, #fff 100%);
}

.seo-block__content.show {
    height: auto;
}

.seo-block__content.show::before {
    display: none;
}

.seo-block__btn {
    padding: 0;
    margin: 0;
    border: none;
    background: none;
    cursor: pointer;
    transition: 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 16px auto 0 auto;
}

.seo-block__btn svg {
    fill: none;
    width: 30px;
    height: 14px;
}

.seo-block__btn.active svg {
    transform: scale(-1);
}

/* end seo-block */

/* about-first-block */
.about-first-block {
    padding: 93px 0 0 0;
}

@media (min-width: 1024px) {
    .about-first-block {
        padding: 128px 0 0 0;
    }
}

.about-first-block__flex {
    display: flex;
    flex-wrap: wrap;
    gap: 30px 0;
}

@media (min-width: 1024px) {
    .about-first-block__flex {
        gap: 0 116px;
        align-items: center;
    }
}

.about-first-block__img {
    max-width: calc(100% - 10px);
    width: 100%;
    border-radius: 0 40px 40px 0;
    overflow: hidden;
}

@media (min-width: 1030px) {
    .about-first-block__img {
        max-width: calc(100% - (146px + 460px));
    }
}


@media (min-width: 1640px) {
    .about-first-block__img {
        max-width: 1060px;
    }
}

.about-first-block__img img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.about-first-block__text {
    padding: 0 0.938rem;
}

@media (min-width: 1030px) {
    .about-first-block__text {
        padding: 0;
        width: 100%;
        max-width: 460px;
    }
}

.about-first-block__text h1 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0 0 12px 0;
}

@media (min-width: 1024px) {
    .about-first-block__text h1 {
        font-size: 55px;
        margin: 0 0 25px 0;
    }
}

.about-first-block__text p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
    margin: 0 0 10px 0;
}

@media (min-width: 1024px) {
    .about-first-block__text p {
        font-size: 22px;
        line-height: 28px;
        margin: 0 0 20px 0;
    }
}

.about-first-block__text p:last-child {
    margin: 0;
}
/* end about-first-block__flex */

/* advantages */
.advantages {
    padding: 60px 0;
}

@media (min-width: 1024px) {
    .advantages {
        padding: 70px 0;
    }
}

.advantages__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 28px 0;
}

@media (min-width: 1024px) {
    .advantages__title {
        font-size: 55px;
        margin: 0 0 40px 0;
    }
}

.advantages__row {
    flex-direction: column-reverse;
    gap: 20px 0;
}

@media (min-width: 1024px) {
    .advantages__row {
        flex-direction: row;
    }
}

.advantages__img {
    border-radius: 40px;
    overflow: hidden;
}

@media (min-width: 1024px) {
    .advantages__img {
        height: 100%;
    }
}

.advantages__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.advantages__list {
    display: flex;
    flex-direction: column;
    gap: 10px 0;
}

@media (min-width: 1024px) {
    .advantages__list {
        gap: 20px 0;
    }
}

.advantages-item {
    background: #6b6969;
    border-radius: 40px;
    overflow: hidden;
    padding: 43px 40px 0 40px;
    height: 222px;
    position: relative;
}

@media (min-width: 1024px) {
    .advantages-item {
        height: 272px;
        padding: 67px 46px 0 61px;
    }
}

.advantages-item h3 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 26px;
    color: #fff;
    margin: 0 0 17px 0;
}

@media (min-width: 1024px) {
    .advantages-item h3 {
        margin: 0 0 31px 0;
    }
}

.advantages-item p {
    margin: 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #fff;
}

.advantages-item__number {
    position: absolute;
    bottom: 0;
    right: 0;
}
.advantages__btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 70px;
    background: #a8cc38;
    border: 1px solid #a8cc38;
    border-radius: 50px;
    max-width: 345px;
    width: 100%;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    transition: 0.2s ease;
    margin: 40px auto 0 auto;
    padding: 0 32px;
}

@media (min-width: 1024px) {
    .advantages__btn {
        max-width: 429px;
        height: 85px;
        font-size: 22px;
        line-height: 1;
        padding: 0 46px;
    }
}

.advantages__btn svg {
    height: 13px;
    width: 14px;
    stroke: #fff;
    transition: .2s ease;
}

.advantages__btn:hover{
    background: #fff;
    border-color: #4C4C4C;
    color: #4C4C4C;
}

.advantages__btn:hover svg{
    stroke: #4C4C4C;
}

/* end advantages */

/* statistic */
.statistic {
    padding: 0;
}

@media (min-width: 1024px) {
    .statistic {
        padding: 0 15px;
    }
}

.statistic__wrapper {
    border-radius: 40px;
    background: #ebecf0;
    padding: 38px 0 60px 0;
}

@media (min-width: 1024px) {
    .statistic__wrapper {
        padding: 67px 0 70px 0;
    }
}

.statistic__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    margin: 0 0 17px 0;
    color: #000;
}

@media (min-width: 1024px) {
    .statistic__title {
        font-size: 55px;
        margin: 0 0 40px 0;
    }
}

.statistic__img {
    margin: 0 0 45px 0;
}

@media (min-width: 1024px) {
    .statistic__img {
        margin: 0 0 75px 0;
    }
}

.statistic__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.statistic__bottom {
    display: flex;
    flex-direction: column-reverse;
    gap: 20px 0;
}

@media (min-width: 1200px) {
    .statistic__bottom {
        flex-direction: row;
        gap: 0 43px;
    }
}

.statistic__title-mob {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    text-align: center;
    color: #000;
    line-height: 1;
    margin: 0 0 27px 0;
}

@media (min-width: 1024px) {
    .statistic__title-mob {
        display: none;
    }
}

.statistic__bottom-info {
    max-width: 100%;
    width: 100%;
}

@media (min-width: 1200px) {
    .statistic__bottom-info {
        max-width: 502px;
        padding: 15px 0 0 0;
    }
}

.statistic__bottom-info p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    color: #000;
    margin: 0 0 10px 0;
}

@media (min-width: 1024px) {
    .statistic__bottom-info p {
        text-align: left;
        font-size: 22px;
        line-height: 28px;
        margin: 0 0 20px 0;
    }
}

.statistic__bottom-info p:last-child {
    margin: 0;
}

.statistic__bottom-left {
    width: 100%;
    max-width: 100%;
}

@media (min-width: 1200px) {
    .statistic__bottom-left {
        max-width: calc(100% - (502px + 22px));
    }
}

.statistic__bottom-left h3 {
    display: none;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0 0 48px 0;
}

@media (min-width: 1024px) {
    .statistic__bottom-left h3 {
        display: block;
    }
}

.statistic__bottom-left-list {
    display: flex;
    flex-direction: column;
    gap: 10px 0;
    justify-content: center;
    align-items: center;
}

@media (min-width: 1024px) {
    .statistic__bottom-left-list {
        flex-direction: row;
        gap: 0 26px;
        height: 180px;
    }
}

.statistic__bottom-left-item {
    border: 1px solid #a8cc38;
    border-radius: 25px;
    background: #fff;
    height: 100%;
    padding: 26px 24px 26px 24px;
    width: 100%;
    max-width: 251px;
}

@media (min-width: 1024px) {
    .statistic__bottom-left-item {
        padding: 26px 21px 26px 21px;
    }
}

.statistic__bottom-left-item-number {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 1;
    color: #a8cc38;
    margin: 0 0 40px 0;
}

.statistic__bottom-left-item-text {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: #000;
}

/* end statistic */

/* about-specialists */
.about-specialists {
    padding: 49px 0 60px 0;
}

@media (min-width: 1024px) {
    .about-specialists {
        padding: 70px 0;
    }
}

.about-specialists__title {
    font-family: var(--second-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 21px 0;
}

@media (min-width: 1024px) {
    .about-specialists__title {
        font-size: 60px;
        margin: 0 0 50px 0;
    }
}

.about-specialists__row {
    gap: 10px 0;
    margin-top: 20px;
}

@media (min-width: 1024px) {
    .about-specialists__row {
        gap: 30px 0;
        margin-top: 51px;
    }
}

.about-spec-item {
    border: 1px solid #a8cc38;
    border-radius: 25px;
    overflow: hidden;
    position: relative;
}

.about-spec-item__img {
    backdrop-filter: blur(10px);
    opacity: 0.85;
}

.about-spec-item__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.about-spec-item__info {
    position: absolute;
    display: flex;
    align-items: center;
    bottom: 20px;
    border-radius: 25px;
    height: 55px;
    backdrop-filter: blur(10px);
    background: #a8cc38;
    opacity: 0.85;
    padding: 10px 13px 9px 13px;
    width: calc(100% - 18px);
    left: 50%;
    transform: translateX(-50%);
}

@media (min-width: 1024px) {
    .about-spec-item__info {
        padding: 16px 20px 20px 20px;
    }
}

.about-spec-item__info-pos {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #000;
    text-align: center;
    margin: 12px 0 0 0;
}

.about-spec-item__info-name {
    font-family: var(--second-family);
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    color: #fff;
}

@media (min-width: 1024px) {
    .about-spec-item__info-name {
        font-size: 20px;
        line-height: 24px;
    }
}
/* end about-specialists */

/* block-info */
.block-info {
    padding: 0;
    margin: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .block-info {
        padding: 0 15px;
        margin: 0 0 70px 0;
    }
}

.block-info .block-info__wrapper {
    display: flex;
    flex-direction: column;
    gap: 60px 0;
}

.block-info--blue .block-info__wrapper {
}

@media (min-width: 1024px) {
    .block-info--blue .block-info__wrapper {
        border-bottom-left-radius: 40px;
        border-bottom-right-radius: 40px;
        background: #ebecf0;
        padding: 60px 0;
    }
}

.block-info__item:nth-child(odd) .row {
    flex-direction: column-reverse;
}

@media (min-width: 1024px) {
    .block-info__item:nth-child(odd) .row {
        flex-direction: row;
    }
}

.block-info__item-img {
    overflow: hidden;
    border-radius: 25px;
    margin: 0 0 30px 0;
}

@media (min-width: 1024px) {
    .block-info__item-img {
        margin: 0;
    }
}

.block-info__item-img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media (min-width: 1024px) {
    .block-info__item:nth-child(even) .block-info__text {
        padding: 0 0 0 55px;
    }
}

.block-info__text h2 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 26px;
    text-transform: uppercase;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .block-info__text h2 {
        color: #6b6969;
    }
}

.block-info__text p {
    margin: 0 0 10px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
}

.block-info__text p:last-child {
    margin: 0;
}

.block-info__item--services:nth-child(odd) {
}

@media (min-width: 1024px) {
    .block-info__item--services:nth-child(odd) .block-info__text {
        padding: 0 0 0 51px;
    }
    .block-info__item--services:nth-child(even) .block-info__text {
        padding: 0;
    }
}

/* end block-info */

/* history */
.history {
    margin: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .history {
        margin: 0 15px;
    }
}

.history__wrapper {
    padding: 50px 0;
    border-radius: 40px;
    background: #ebecf0;
}

@media (min-width: 1024px) {
    .history__wrapper {
        padding: 75px 0 0 0;
        border-top-left-radius: 40px;
        border-top-right-radius: 40px;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
}

.history__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 40px 0;
}

@media (min-width: 1024px) {
    .history__title {
        font-size: 55px;
        margin: 0 0 45px 0;
    }
}

.history__company-img {
    overflow: hidden;
    border-radius: 25px;
    margin: 40px 0 0 0;
}

@media (min-width: 1024px) {
    .history__company-img {
        margin: 0;
    }
}

.history__company-img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.history__company-text h2 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 26px;
    text-transform: uppercase;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .history__company-text h2 {
        color: #6b6969;
    }
}

.history__company-text p {
    margin: 0 0 10px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
}

.history__company-text p:last-child {
    margin: 0;
}

@media (min-width: 1024px) {
    .history__list {
        margin: 60px 0 0 0;
        padding: 128px 0 0 0;
        position: relative;
    }
    .history__list::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        max-width: 53%;
        height: 100%;
        background: #fff;
        border-radius: 25px 0 0 25px;
    }
}

.history-item {
    padding: 0 0 9px 0;
    position: relative;
    z-index: 2;
}

@media (min-width: 1024px) {
    .history-item {
        padding: 0 0 164px 0;
    }
}

.history-item__number {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 130px;
    line-height: 160px;
    text-align: center;
    color: #fff;
    position: relative;
    padding: 0 0 64px 0;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .history-item__number {
        padding: 0;
        font-size: 150px;
        line-height: 180px;
    }
}

.history-item__number  span{
    transition: .2s ease;
}

/* .history-item__number span.active{
    display: none;
} */

@media(min-width: 1024px){
/*     .history-item__number span {
    color: transparent;
} */

/*     .history-item__number span.active{
    display: inline-block;
    position: absolute;
    color: #A8CC38;
    left: 74px;
} */
}

.history-item__number::before {
    content: "";
    display: block;
    border-radius: 7px;
    width: 4px;
    height: 43px;
    bottom: 25px;
    background: #fff;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .history-item__number::before {
       /*  height: 287px;
       bottom: -150%; */
       height: 200px;
        bottom: -105%;
    }
}

@media (min-width: 1024px) {
    .history-item:last-child .history-item__number::before {
        display: none;
    }
}

.history-item.active .history-item__number{
    color: #a8cc38;
}

.history-item.active .history-item__number::before{
    background: #a8cc38;
}

.history-item__info {
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.history-item__info-text h2 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 26px;
    line-height: 1;
    text-transform: uppercase;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .history-item__info-text h2 {
        margin: 0 0 35px 0;
    }
}

.history-item__info-text p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .history-item__info-text p {
        font-size: 22px;
        line-height: 30px;
        margin: 0 0 25px 0;
    }
}

.history-item__info-text p:last-child {
    margin: 0;
}

.history-item__info-img {
    display: none;
}

@media (min-width: 1024px) {
    .history-item__info-img {
        float: right;
        width: auto;
        margin: 0 0 10px 10px;
        max-width: 300px;
        display: block;
    }
}
/* end history */

/* works-services */
.works-services {
    padding: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .works-services {
        padding: 0 0 70px 0;
    }
}

.works-services__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    color: #000;
    margin: 0;
}

@media (min-width: 1024px) {
    .works-services__title {
        font-size: 60px;
        line-height: 1;
    }
}

.works-services__info {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    text-align: center;
    color: #6b6969;
    margin: 11px 0 18px 0;
}

@media (min-width: 1024px) {
    .works-services__info {
        font-size: 22px;
        line-height: 28px;
        width: 100%;
        max-width: 800px;
        margin: 25px auto 45px auto;
    }
}

.works-services__row {
    gap: 15px 0;
}

@media (min-width: 1024px) {
    .works-services__row {
        gap: 26px 0;
    }
}
/* end works-services */

/* braces */
.braces {
    padding: 66px 0 308px 0;
}

@media (min-width: 1024px) {
    .braces {
        padding: 70px 0 164px 0;
    }
}

.braces__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    color: #000;
}

.braces__wrapper {
    margin: 23px 0 0 0;
}

@media (min-width: 1024px) {
    .braces__wrapper {
        margin: 45px 0 0 0;
    }
}

.braces__row {
    gap: 40px 0;
}

.braces-item {
    background: #fff;
    transition: .2s ease;
    height: 100%;
    overflow: hidden;
    border-radius: 25px;
}

.braces-item:hover{
    background: #ebecf0;
}

.braces-item__img {
    overflow: hidden;
    border-radius: 25px;
    margin: 0 0 30px 0;
}

@media (min-width: 1024px) {
    .braces-item__img {
        margin: 0 0 32px 0;
    }
}

.braces-item__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.braces-item__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0;
}

.braces-item__text {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    color: #6b6969;
    margin: 10px 0 0 0;
    padding: 0 60px 40px 60px;
}

@media (min-width: 1024px) {
    .braces-item__text {
        margin: 10px 0 0 0;
        padding: 0 65px 40px 60px;
    }
}
/* end braces */

/* appointment */
.appointment {
    padding: 0;
    margin: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .appointment {
        margin: 0 0 70px 0;
    }
}

@media (min-width: 1024px) {
    .appointment {
        padding: 0 15px;
    }
}

.appointment__wrapper {
    border-radius: 40px;
    background: #eaebef;
    position: relative;
    padding: 121px 0 197px 0;
}

@media (min-width: 1024px) {
    .appointment__wrapper {
        padding: 88px 0 106px 0;
    }
}

.appointment__wrapper::before {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-position: -60px 0;
    background-image: url("../images/sign-callback.png");
    position: absolute;
    right: 0;
    bottom: 0;
    width: 430px;
    height: 430px;
    transform: rotate(-90deg);
    background-size: contain;
}

@media (min-width: 1200px) {
    .appointment__wrapper::before {
        width: 600px;
        height: 600px;
        bottom: -100px;
        background-position: 0 0;
    }
}

.appointment__callback-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0;
}

@media (min-width: 1024px) {
    .appointment__callback-title {
        font-size: 45px;
        margin: 0;
    }
}

.appointment__callback-text {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 22px;
    line-height: 1;
    color: #4c4c4c;
    margin: 14px 0 0 0;
}

@media (min-width: 1024px) {
    .appointment__callback-text {
        text-align: center;
    }
}

.appointment__form {
}

.appointment__work {
    border-radius: 25px 0 0 25px;
    background: #4c4c4c;
    padding: 40px 30px 40px 30px;
    position: absolute;
    top: -300px;
    right: 0;
}

@media (min-width: 1024px) {
    .appointment__work {
        position: unset;
        border-radius: 25px;
        padding: 53px 0 54px 0;
        margin: -182px 0 0 0;
    }
}

.appointment__works-title {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 24px;
    line-height: 28px;
    color: #fff;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 17px 0;
    margin: 0 0 15px 0;
}

@media (min-width: 1024px) {
    .appointment__works-title {
        gap: 29px 0;
        margin: 0 0 20px 0;
    }
}

.appointment__works-title::after {
    content: "";
    width: 61px;
    height: 1px;
    background: #a8cc38;
}

@media (min-width: 1024px) {
    .appointment__works-title::after {
        width: 78px;
    }
}

.appointment__work-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px 0;
    margin: 0 0 25px 0;
}

@media (min-width: 1024px) {
    .appointment__work-item {
        margin: 0 0 28px 0;
        gap: 12px 0;
    }
}

.appointment__work-item:last-child {
    margin: 0;
}

.appointment__work-item-day {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 22px;
    line-height: 24px;
    text-align: center;
    color: #fff;
}

@media (min-width: 1024px) {
    .appointment__work-item-day {
        font-size: 24px;
    }
}

.appointment__work-item-time {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #a8cc38;
    border-radius: 76px;
    height: 50px;
    width: 100%;
    max-width: 244px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 24px;
    line-height: 1;
    color: #fff;
}

@media (min-width: 1024px) {
    .appointment__work-item-time {
        height: 64px;
        max-width: 309px;
    }
}
/* end appointment */

/* recommend-appointment */
.recommend-appointment {
    padding: 0;
}

@media (min-width: 1024px) {
    .recommend-appointment {
        padding: 0 15px;
    }
}

.recommend-appointment__wrapper {
    background: #ebecf0;
    border-radius: 40px;
    padding: 50px 0 54px 0;
}

@media (min-width: 1024px) {
    .recommend-appointment__wrapper {
        padding: 70px 0 85px 0;
    }
}

.recommend-appointment__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    color: #000;
    margin: 0 0 38px 0;
}

@media (min-width: 1024px) {
    .recommend-appointment__title {
        margin: 0 0 45px 0;
        font-size: 55px;
        line-height: 70px;
    }
}

.recommend-appointment__row {
    gap: 15px 0;
}

@media (min-width: 1024px) {
    .recommend-appointment__row {
        gap: 30px 0;
    }
}

.recommend-appointment-item {
    border-radius: 25px;
    background: #4c4c4c;
    height: 100%;
    padding: 38px 24px 38px 37px;
    transition: .2s ease;
}

@media (min-width: 1024px) {
    .recommend-appointment-item {
        padding: 38px 24px 38px 39px;
    }
}

.recommend-appointment-item:hover{
    background: #A8CC38;
}

.recommend-appointment-item__number {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 1;
    color: #a8cc38;
    transition: .2s ease;
}

.recommend-appointment-item:hover .recommend-appointment-item__number{
    color: #fff;
}

.recommend-appointment-item__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #fff;
    margin: 27px 0 0 0;
}

@media (min-width: 1024px) {
    .recommend-appointment-item__title {
        margin: 30px 0 0 0;
    }
}

.recommend-appointment-item__desc {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #fff;
    margin: 17px 0 0 0;
}
/* end recommend-appointment */

/* prices */
.prices {
    padding: 30px 0 60px 0;
    border-radius: 40px;
    background: #a8cc38;
    margin: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .prices {
        padding: 0 0 70px 0;
        margin: 0;
        background: #fff;
    }
}

.prices__wrapper {
    display: flex;
    flex-direction: column-reverse;
}

@media (min-width: 1024px) {
    .prices__wrapper {
        justify-content: space-between;
        flex-direction: row;
    }
}

.prices__table {
    background: #fff;
    border-radius: 40px;
    padding: 27px 28px 44px 28px;
}

@media (min-width: 1024px) {
    .prices__table {
        width: 100%;
        max-width: 1182px;
        border-radius: 40px;
        background: #a8cc38;
        padding: 32px 74px 52px 74px;
    }
}

.prices__table table {
    border-collapse: collapse;
    width: 100%;
}

.prices__table table tr {
    border-bottom: 1px solid #6b6969;
}

@media (min-width: 1024px) {
    .prices__table table tr {
        border-color: #fff;
    }
}

.prices__table table tr td {
    padding: 10px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    color: #000;
    width: 50%;
}

@media (min-width: 1024px) {
    .prices__table table tr td {
        padding: 20px 0;
        color: #fff;
        font-size: 20px;
    }
}

.prices__table table tr td:last-child {
    text-align: right;
}

.prices__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #fff;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .prices__title {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 55px;
        text-transform: uppercase;
        text-align: center;
        color: #000;
        transform: rotate(360deg);
        writing-mode: vertical-rl;
        margin: 0;
    }
}
/* end prices */

/* services-first-block */
.services-first-block {
}

@media (min-width: 1024px) {
}

.services-first-block__flex {
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    gap: 33px 0;
}

@media (min-width: 1100px) {
    .services-first-block__flex {
        flex-direction: row;
        justify-content: end;
        gap: 0 50px;
    }
}

@media (min-width: 1640px) {
    .services-first-block__flex {
        flex-direction: row;
        justify-content: end;
        gap: 0 238px;
    }
}

.services-first-block__info {
    padding: 0 10px 0 32px;
}

@media (min-width: 1200px) {
    .services-first-block__info {
        width: 100%;
        max-width: 493px;
        padding: 0 0 0 15px;
    }
}

.services-first-block__info-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1200px) {
    .services-first-block__info-title {
        font-size: 55px;
        margin: 0 0 37px 0;
    }
}

.services-first-block__info-text,
.services-first-block__info-text p{
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #000;
    margin: 0 0 23px 0;
}

@media (min-width: 1200px) {
    .services-first-block__info-text {
        font-size: 22px;
        line-height: 28px;
        margin: 0 0 70px 0;
    }
}

.services-first-block__info-text p:last-child{
    margin: 0;
}

.services-first-block__btn {
    border: none;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 320px;
    height: 70px;
    justify-content: space-between;
    padding: 0 27px;
    gap: 0 0;
    margin: 0 auto;
    border-radius: 50px;
    background: #a8cc38;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    transition: .2s ease;
}

@media (min-width: 1200px) {
    .services-first-block__btn {
        max-width: 429px;
        margin: 0;
        height: 85px;
        padding: 0 46px;
        font-size: 22px;
    }
}

.services-first-block__btn svg {
    width: 14px;
    height: 14px;
    stroke: #fff;
    transition: .2s ease;
}

.services-first-block__btn:hover{
    background: #595959;
    color: #abce1b;
}

.services-first-block__btn:hover svg{
    stroke: #abce1b;
}

.services-first-block__img {
    border-radius: 0 0 0 40px;
    overflow: hidden;
    height: 358px;
    width: 100%;
}

@media(min-width: 1100px){
    .services-first-block__img{
        max-width: 1000px;
        height: auto;
    }
}

@media (min-width: 1640px) {
    .services-first-block__img {
        max-width: 945px;
        height: 789px;
        border-top-left-radius: 40px;
        border-bottom-left-radius: 40px;
        
    }
}

.services-first-block__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
/* end services-first-block */

/* c-btns-slider */
.c-btns-slider {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 0 24px;
    z-index: 99;
}

.c-btn-slider-prev {
    align-items: center;
    justify-content: center;
    border: 1px solid #6b6969;
    width: 72px;
    height: 40px;
    border-radius: 70px;
    text-decoration: none;
    display: flex;
    transition: .2s ease;
}

.c-btn-slider-prev:hover{
    background: #A8CC38;
    border-color: #A8CC38;
}

.c-btn-slider-prev svg {
    width: 34px;
    height: 18px;
    stroke: #6b6969;
}

.c-btn-slider-prev:hover svg{
    stroke: #fff;
}

.c-btn-slider-next {
    align-items: center;
    justify-content: center;
    border: 1px solid #6b6969;
    width: 72px;
    height: 40px;
    border-radius: 70px;
    text-decoration: none;
    display: flex;
    transition: .2s ease;
}

.c-btn-slider-next:hover{
    background: #A8CC38;
    border-color: #A8CC38;
}

.c-btn-slider-next svg {
    width: 34px;
    height: 18px;
    stroke: #6b6969;
    transform: scale(-1);
    transition: .3s ease;
}

.c-btn-slider-next:hover svg{
    stroke: #fff;
}
/* end c-btns-slider */

/* c-pagination */
.c-pagination {
    position: absolute;
    bottom: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 10px;
}

.c-pagination .swiper-pagination-bullet {
    padding: 0 !important;
    margin: 0 !important;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    background: #fff;
    position: relative;
    border: 1px solid #fff;
    opacity: 1 !important;
}

.c-pagination .swiper-pagination-bullet::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    border-radius: 100%;
    width: 14px;
    height: 14px;
    background: #ebecf0;
}

.c-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #fff;
    border-color: #a8cc38;
}

.c-pagination
    .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    background: #a8cc38;
}

/* end c-pagination */

/* slider-works */
.slider-works {
    padding: 60px 0 36px 0;
}

@media (min-width: 1024px) {
    .slider-works {
        padding: 90px 0 50px 0;
    }
}

.slider-works .slider-works__wrapper {
    position: relative;
}

.work-swiper {
    padding: 0 0 42px 0;
}

.work-swiper__wrapper {
    align-items: center;
}

.work-swiper__slide {
    position: relative;
    width: 404px;
    height: 728px;
    transition:
        transform 0.3s ease,
        filter 0.3s ease;
    border-radius: 20px;
    overflow: hidden;
    transition: 0.2s ease;
}

@media (min-width: 1024px) {
    .work-swiper__slide {
        width: 404px;
        height: 718px;
    }
}

.work-swiper__slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background: white;
    opacity: 0.4; /* Светлое «затемнение» */
    transition: opacity 0.3s ease;
    z-index: 1;
    pointer-events: none;
}

.work-swiper__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.work-swiper__slide.swiper-slide-active {
    width: 482px;
    height: 728px;
    filter: brightness(1);
    z-index: 2;
}

@media (min-width: 1024px) {
    .work-swiper__slide.swiper-slide-active {
        width: 482px;
        height: 858px;
    }
}

.work-swiper__slide.swiper-slide-active::before {
    opacity: 0;
}

.play-button {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 86px;
    height: 86px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.play-button svg {
    width: 25px;
    height: 25px;
    fill: #fff;
}

.slider-works__btns {
    position: absolute;
    right: 0;
    top: 0;
    display: none;
}

@media (min-width: 1024px) {
    .slider-works__btns {
        display: flex;
    }
}
/* end slider-works */

/* block-head-section */
.block-head-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 27px 0;
}

@media (min-width: 1024px) {
    .block-head-section {
        margin: 0 0 40px 0;
    }
}

.block-head-section__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0;
    padding: 0;
}

@media (min-width: 1024px) {
    .block-head-section__title {
        font-size: 55px;
    }
}
/* end block-head-section */

/* partners */
.partners {
    padding: 0 0 60px 0;
}

@media (min-width: 1024px) {
    .partners {
        padding: 0 0 66px 0;
    }
}

.partner-swiper {
    padding: 1px 0 36px 0;
}

@media (min-width: 1024px) {
    .partner-swiper {
        padding: 0 0 57px 0;
    }
}

.partners__btns-slider {
    display: none;
}

@media (min-width: 1024px) {
    .partners__btns-slider {
        display: flex;
    }
}

.partner-swiper__slide-img {
    border: 1px solid #a8cc38;
    border-radius: 25px;
    background: #fff;
    padding: 0 15px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 121px;
}

@media (min-width: 1024px) {
    .partner-swiper__slide-img {
        height: 167px;
    }
}

.partner-swiper__slide-img img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}
/* end partners */

/* articles-slider */
.articles-slider {
    padding: 60px 0 0 0;
}

@media (min-width: 1024px) {
    .articles-slider {
        padding: 70px 0 0 0;
    }
}

.articles__btns-slider {
    display: none;
}

@media (min-width: 1024px) {
    .articles__btns-slider {
        display: flex;
    }
}

.articles-swiper{
    padding: 0 0 45px 0;
}

@media(min-width: 1024px){
    .articles-swiper{
        padding: 0 0 32px 0;
    }
}

.articles-swiper__slide{
    height: auto;
}

.articles-swiper__slide .blog-item {
    background: #6b6969;
    transition: .2s ease;
}

.articles-swiper__slide .blog-item__info-title {
    color: #fff;
    transition: .2s ease;
}

.articles-swiper__slide .blog-item__info-bottom-text {
    color: #fff;
    transition: .2s ease;
}

.articles-swiper__slide .blog-item:hover{
    background: #ebecf0;
}

.articles-swiper__slide .blog-item:hover .blog-item__info-title,
.articles-swiper__slide .blog-item:hover .blog-item__info-bottom-text{
    color: #000;
}

.articles-swiper__slide .blog-item__info-bottom {
    align-items: end;
}

@media (min-width: 1024px) {
    .articles-swiper__slide .blog-item__info-bottom {
        align-items: center;
    }
}
/* end articles-slider */

/* services-home */

.services-home__head {
    margin: 0 0 33px 0;
}

@media (min-width: 1024px) {
    .services-home__head {
        margin: 0 0 40px 0;
    }
}

.services-home__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #000;
    margin: 0 0 17px 0;
}

@media (min-width: 1024px) {
    .services-home__title {
        font-size: 55px;
        line-height: 60px;
        margin: 0;
    }
}

.services-home__desc {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #4c4c4c;
}

@media (min-width: 1024px) {
    .services-home__desc {
        font-size: 22px;
        line-height: 28px;
    }
}

.services-home__row {
    gap: 10px 0;
}

@media (min-width: 1024px) {
    .services-home__row {
        gap: 25px 0;
    }
}
/* end services-home */

/* tarifs */
.tarifs {
    padding: 90px 0 0 0;
}

@media (min-width: 1024px) {
    .tarifs {
        padding: 70px 15px 0 15px;
    }
}

.tarifs__wrapper {
    background: #a8cc38;
    border-radius: 40px;
    padding: 59px 0 51px 0;
}

@media (min-width: 1024px) {
    .tarifs__wrapper {
        padding: 70px 0;
    }
}

.tarifs__desc {
    margin: 0 0 30px 0;
    position: relative;
}

@media (min-width: 1024px) {
    .tarifs__desc {
        margin: 0;
        height: 100%;
    }
}

.tarifs__desc h2 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 40px;
    color: #fff;
    margin: 0 0 20px 0;
    padding: 0 190px 0 0;
}

@media (min-width: 1024px) {
    .tarifs__desc h2 {
        font-size: 55px;
        line-height: 1;
        margin: 0 0 36px 0;
        padding: 0;
    }
}

.tarifs__desc p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #fff;
    margin: 0;
}

@media (min-width: 1024px) {
    .tarifs__desc p {
        font-size: 22px;
        line-height: 26px;
    }
}

@keyframes float {
    0% {
        transform: translatey(0px);
    }
    50% {
        transform: translatey(-20px);
    }
    100% {
        transform: translatey(0px);
    }
}

.tarifs__img {
    position: absolute;
    top: -120px;
    right: 0;
    transform: translatey(0px);
    animation: float 6s ease-in-out infinite;
    width: 190px;
}

@media (min-width: 1024px) {
    .tarifs__img {
        bottom: -130px;
        top: unset;
        right: unset;
    }
}

.tarifs__img img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

@media (min-width: 1024px) {
    .tarifs__img {
        width: auto;
    }
}

.tarifs__table {
    background: #fff;
    border-radius: 40px;
    padding: 17px 28px 44px 28px;
}

@media (min-width: 1024px) {
    .tarifs__table {
        padding: 33px 48px 52px 48px;
    }
}

.tarifs__table table {
    border-collapse: collapse;
    width: 100%;
}

.tarifs__table table tr {
    border-bottom: 1px solid #6b6969;
}

.tarifs__table table tr td {
    width: 50%;
    padding: 10px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    color: #000;
}

@media (min-width: 1024px) {
    .tarifs__table table tr td {
        padding: 20px 0;
        font-size: 20px;
    }
}

.tarifs__table table tr td:last-child {
    text-align: right;
}
/* end tarifs */

/* slider-home */

.slider-home {
    padding: 0 0 40px 0;
}

@media (min-width: 1024px) {
    .slider-home {
        padding: 11px 15px 44px 15px;
    }
}

.swiper-slider__slide-item {
    overflow: hidden;
    border-radius: 0 0 40px 40px;
    position: relative;
    /* height: 951px; */

}

@media (min-width: 1024px) {
    .swiper-slider__slide-item {
        border-radius: 40px;
        /* height: 778px; */
    }
}

.swiper-slider__slide-item-img{
    height: 100%;
}

.swiper-slider__slide-item-img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.swiper-slider__wrapper {
    padding: 0 0 38px 0;
}

@media (min-width: 1024px) {
    .swiper-slider__wrapper {
        padding: 0 0 46px 0;
    }
}

.swiper-slider__slide-item-info-text h1 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 40px;
    line-height: 50px;
    color: #000;
    margin: 0 0 21px 0;
}

@media (min-width: 1024px) {
    .swiper-slider__slide-item-info-text h1 {
        font-size: 55px;
        line-height: 60px;
        margin: 0 0 37px 0;
    }
}

.swiper-slider__slide-item-info-text p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #4c4c4c;
    margin: 0;
}

@media (min-width: 1024px) {
    .swiper-slider__slide-item-info-text p {
        font-size: 22px;
        line-height: 28px;
    }
}

.swiper-slider__slide-item-info-text-btn {
    margin: 23px 0 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 30px;
    border-radius: 50px;
    background: #a8cc38;
    height: 70px;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    border: none;
    width: 100%;
    max-width: 345px;
    transition: .2s ease;
    border: 1px solid transparent;
}

@media (min-width: 1024px) {
    .swiper-slider__slide-item-info-text-btn {
        margin: 40px 0 0 0;
        max-width: 429px;
        height: 85px;
        padding: 0 46px;
        font-size: 22px;
    }
}

.swiper-slider__slide-item-info-text-btn svg {
    stroke: #fff;
    width: 14px;
    height: 14px;
}

.swiper-slider__slide-item-info-text-btn:hover{
    background: #595959;
    color: #abce1b;
    
}

.swiper-slider__slide-item-info-text-btn:hover svg{
    stroke: #abce1b;
}

.swiper-slider__slide-item-info {
    position: absolute;
    top: 111px;
    margin: 0 auto;
    width: 100%;
}

@media (min-width: 1024px) {
    .swiper-slider__slide-item-info {
        top: 241px;
    }
}

/* end slider-home */

/* our-us */
.our-us {
    padding: 0;
}

@media (min-width: 1024px) {
    .our-us {
        padding: 0 15px;
    }
}

.our-us__wrapper {
    border-radius: 40px;
    background: #ebecf0;
    padding: 47px 0 69px 0;
}

@media (min-width: 1024px) {
    .our-us__wrapper {
        padding: 64px 0 70px 0;
    }
}

.our-us__title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    color: #000;
    margin: 0 0 20px 0;
}

@media (min-width: 1024px) {
    .our-us__title {
        font-size: 55px;
        line-height: 1;
    }
}

.our-us__desc {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #4c4c4c;
    margin: 0 auto;
    width: 100%;
    max-width: 885px;
}

@media (min-width: 1024px) {
    .our-us__desc {
        font-size: 22px;
        line-height: 26px;
    }
}

.our-us__block {
    margin: 20px 0 0 0;
}

@media (min-width: 1024px) {
    .our-us__block {
        margin: 70px 0 0 0;
    }
}

.our-us__grid {
}

.our-us__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px 0;
}

@media (min-width: 1024px) {
    .our-us__grid {
        gap: 24px 30px;
        grid-template-columns: repeat(5, 1fr);
    }
}

.our-us-item {
    grid-column: span 1;
    padding: 27px 26px 39px 22px;
    border-radius: 25px;
}

@media (min-width: 1024px) {
    .our-us-item {
        padding: 36px 35px 55px 29px;
    }
}

.our-us-item:nth-child(4n + 1),
.our-us-item:nth-child(4n + 4) {
    background: #fff;
}

.our-us-item:nth-child(4n + 2),
.our-us-item:nth-child(4n + 3) {
    background: #cde28d;
}

@media (min-width: 1024px) {
    .our-us-item:nth-child(4n + 1),
    .our-us-item:nth-child(4n + 4) {
        grid-column: span 2;
    }

    .our-us-item:nth-child(4n + 2),
    .our-us-item:nth-child(4n + 3) {
        grid-column: span 3;
    }
}

.our-us-item__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 27px 0;
}

@media (min-width: 1024px) {
    .our-us-item__head {
        margin: 0 0 66px 0;
    }
}

.our-us-item__head-number {
    font-family: var(--second-family);
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    color: #a8cc38;
}

.our-us-item:nth-child(4n + 2) .our-us-item__head-number,
.our-us-item:nth-child(4n + 3) .our-us-item__head-number {
    color: #6b6969;
}

.our-us-item__head-icon svg {
    width: 57px;
    height: 60px;
    fill: #a8cc38;
}

@media (min-width: 1024px) {
    .our-us-item__head-icon svg {
        width: 65px;
        height: 70px;
    }
}

.our-us-item:nth-child(4n + 2) .our-us-item__head-icon svg,
.our-us-item:nth-child(4n + 3) .our-us-item__head-icon svg {
    fill: #4c4c4c;
}

@media (min-width: 1024px) {
    .our-us-item__desc {
        max-width: 460px;
    }
}

.our-us-item__desc h2 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 22px;
    line-height: 28px;
    text-transform: uppercase;
    color: #4c4c4c;
    margin: 0 0 12px 0;
}

.our-us-item__desc h4 {
    margin: 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: #6b6969;
}

.our-us-item__desc p {
    margin: 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #6b6969;
}

/* end our-us */

/* animate*/

.scroll-animate {
    opacity: 0;
    transform: translateY(20px); /* Эффект "всплытия" вверх */
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
    will-change: opacity, transform;
}

.scroll-animate.in-view {
    opacity: 1;
    transform: none;
}

/*popup*/

.modal-body {
    padding: 0;
}

.modal-content {
    border: none;
    border-radius: 25px;
}

.popup {
    position: relative;
    padding: 56px 28px 59px 28px;
    width: 100%;
    background: #ebecf0;
    border-radius: 25px;
}

@media(min-width: 1024px){
    .popup{
        padding: 40px 35px;
    }

    .popup--reviews-p{
        padding: 30px 100px 31px 60px;
    }
}

.popup--callback{
    max-width: 1396px;
    /* top: 156px; */
}

@media(min-width: 1024px){
    .popup--callback{
        top: 201px;
    }
}

.popup--reviews{
    max-width: 1112px;
}

.popup__btn-close{
    position: absolute;
    top: 16px;
    right: 21px;
    background: none;
    opacity: unset;
}

.popup__btn-close svg{
    width: 22px;
    height: 22px;
    stroke: #000;
    opacity: unset;
}

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

.popup__img{
    display: none;
    border-radius: 25px;
    overflow: hidden;
    width: 100%;
    max-width: 586px;
}


.popup__img img{
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media(min-width: 1024px){
    .popup__img{
        display: block;
    }
}

.popup__info{
    max-width: 713px;
    width: 100%;
    margin: 0 auto;
}

.popup__info h2{
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    text-align: center;
    color: #000;
    margin: 0 0 13px 0;
}

.popup__info p{
    margin: 0 0 25px 0;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    text-align: center;
    color: #4c4c4c;
}

.popup-reviews__row{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 30px 0;
}

@media(min-width: 1024px){
    .popup-reviews__row{
        flex-direction: row;
    }
}

.popup-reviews__info-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

@media(min-width: 1024px){
    .popup-reviews__info-head{
        flex-direction: column;
        align-items: baseline;
    }
}

.popup-reviews__info-head h2{
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 24px;
    line-height: 120%;
    color: #000;
    margin: 0;
}

@media(min-width: 1024px){
    .popup-reviews__info-head h2{
        margin: 0 0 20px 0;
    }
}

.popup-reviews__info-content{
    margin: 25px 0 0 0;
}

@media(min-width: 1024px){
    .popup-reviews__info-content{
        margin: 65px 0 0 0;
        width: 100%;
        max-width: 387px;
    }
}

.popup-reviews__info-content p{
    margin: 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
    color: #000;
}

@media(min-width: 1024px){
    .popup-reviews__info-content p{
        font-size: 20px;
    }
}

.popup-reviews__video{
    display: flex;
    justify-content: center;
}

.popup-reviews__video iframe{
    width: 346px;
    height: 611px;
    margin: 0 auto;
}

@media(min-width: 1024px){
    .popup-reviews__video iframe{
        width: 441px;
        height: 779px;
        margin: 0;
    }
}



.load {
    position: relative;
}

.load[disabled]::before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -20px;
    left: 10px;
    width: 40px;
    height: 40px;
    background: url(../images/load3.gif) no-repeat 50% 50%;
    background-size: cover;
}

.load[disabled]{
    opacity: .9;
    cursor: not-allowed;
}

