.promo {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #fff;
}

/* BACKGROUND */
.promo__bg {
    position: absolute;
    inset: 0;
    background-color: #ffffff;
    z-index: 0;
}

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

.promo__bg img.mob {
    display: none;
}

.promo-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 78px;
    /* background-color: #ffffff; */
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 30px;

    z-index: 5;
    /* transition: transform 0.3s ease, opacity 0.3s ease;
    will-change: transform; */
}
/* .promo-header.is-hidden {
    transform: translate(-50%, -100%);
    opacity: 0;
} */

/* TITLE */
.promo__container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 900px;
    text-align: center;
    z-index: 2;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.promo__title {
    color: #fff;
    font-family: "Livret_Subhead_Light", sans-serif;
    transition: 1s;
}

.promo__title.play {
    color: #1B1B1B;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
}

.promo__title.play-back {
    color: #ffffff;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
}

.promo__title-italic {
    font-style: italic;
    font-family: "Livret_Subhead_Light_Italic", sans-serif;

}

.promo__subtitle {
    margin-top: 42px;
    color: #1B1B1B;
    font-family: "TT Hoves Pro", sans-serif;
    opacity: 0;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
    max-width: 680px;
    line-height: 120%;
}

.promo__subtitle.play {
    opacity: 1;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
}

.promo__subtitle.play-back {
    opacity: 0;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
}

/* CONTACTS */
.promo__contacts {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    font-family: "TT Hoves Pro", sans-serif;
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-align: center;
    color: #fff;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
}

.promo.play .promo__contacts {
    z-index: -1;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
}

.promo.play-back .promo__contacts {
    z-index: 0;
    transition: 1s
}

.promo__contact a {
    color: #fff;
    text-decoration: none;
    position: relative;
}

.promo__contact a:after {
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #ffffff;
}

/* MENU */
.promo-menu {
    position: absolute;
    top: 0;
    left: 0;

    width: 1168px;
    height: 794px;

    background: #EEF0F8;
    border-radius: 8px;

    opacity: 0;
    pointer-events: none;
}

.promo-menu__list {
    position: absolute;
    top: 40px;
    left: 139px;

    display: flex;
    flex-direction: column;
    gap: 16px;
}

.promo-menu__item {
    font-size: 38px;
    font-family: "TT Livret Subhead", sans-serif;
    font-weight: 300;
    color: rgba(0, 0, 0, 0.3);
}

.promo-menu__item--small {
    font-size: 20px;
    line-height: 1.2;
}

.promo-menu__item--multiline {
    line-height: 1.1;
}

.hero {
    position: relative;
    width: 100%;
    background: linear-gradient(360deg, #ffffff 0%, #EEF0F8 98%);
}

.hero__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 120px 30px;

    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.hero__title {
    color: #1B1B1B;
    font-family: "Livret_Subhead_Light", sans-serif;
    width: 50%;
}

.hero__content {
    display: flex;
    flex-direction: column;
    gap: 60px;
    padding-top: 20px;
    width: 50%;
}

.hero__text {
    font-weight: 400;
    color: #000;
    font-family: "TT Hoves Pro", sans-serif;
    line-height: 120%;
}

.hero__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: fit-content;



    color: #1B1B1B;

    text-decoration: none;
    transition: .2s;
}

.hero__button:hover {
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
}

/* ПРАКТИКИ */
.practices {
    padding-bottom: 180px;
    padding-top: 380px;
}

.practices__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    flex-direction: column;
    gap: 91px;
}

.practices__list .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.practices__list.swiper {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* ITEM */

.practices__item {
    background: #f6f8ff;
    padding: 24px 28px 32px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

/* BODY */

.practices__body {
    flex: 1;

    min-height: 228px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* TEXT */

.practices__text {
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
}

/* TITLE */


.practices__title {
    font-family: "Livret_Subhead_Light", sans-serif;
    color: #1b1b1b;
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
    position: absolute;
    left: 0;
    top: 0;
}



.practices__title.h1 {
    text-align: center;
    position: inherit;
}

.practices__title--italic {
    font-family: "Livret_Subhead_Light_Italic", sans-serif;
}

/* DESCRIPTION */

.practices__description {
    font-family: "TT Hoves Pro", sans-serif;
    font-weight: 400;
    color: #1b1b1b;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 20px;
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
    line-height: 120%;
}

.practices__item:hover .practices__title {
    top: 20px;
    opacity: 0;
}

.practices__item:hover .practices__description {
    top: 0;
    opacity: 1;
}

/* LINK */

.practices__link {
    font-family: "TT Hoves Pro", sans-serif;
}

/* NUMBER */

.practices__num {
    font-size: 24px;
    font-family: "Livret_Subhead_Light", sans-serif;
    color: #1b1b1b;

    padding-top: 5px;
}


.practices__pagination {
    margin-top: 15px;
    display: none !important;
}

.vector_bg_mob,
.vector_bg_3_mob {
    display: none;
}

/* ADAPTIVE */
@media(max-width: 1040px) {
    .section__content {
        padding: 0;
    }
}

@media (max-width: 955px) {
    .practices__list .swiper-wrapper {
        grid-template-columns: 1fr;
    }

    .practices__item {
        padding: 24px 32px 32px 32px;
    }

    .practices__description {
        opacity: 1;
        position: inherit;
    }

    .practices__title {
        position: inherit;
    }

    .practices__body {
        gap: 48px;
    }

    .practices__container {
        padding: 40px 40px 140px 40px;
        padding-bottom: 0;
    }

    .practices__container {
        gap: 40px;
    }

    .practices {
        padding-bottom: 180px;
        padding-top: 184px;
    }

    .practices__pagination {}

    .hero__container {
        flex-direction: column;
        gap: 40px;
        padding: 100px 40px 69px 40px;
    }

    .hero__content {
        width: 100%;
        gap: 40px;
    }

    .hero__title {
        width: 100%;
    }
}

@media(max-width: 769px) {
    .promo__bg img {
        display: none;
    }

    .promo__bg img.mob {
        display: block;
    }
}

@media(max-width: 760px) {
    .practices {
        padding-bottom: 120px;
        padding-top: 179px;
    }
}

@media(max-width: 500px) {

    .practices__list .swiper-wrapper {
        display: flex;
        gap: 0;
        max-height: 360px;
    }

    .practices__item {
        flex-direction: column;
        gap: 24px;
    }

    .practices__body {
        order: 2;
        gap: 40px;
    }

    .practices__container {
        padding: 40px 20px 120px 20px;
        padding-bottom: 0;
    }

    .practices__item {
        padding: 16px 16px 32px 16px;
    }

    .practices__pagination {
        display: flex !important;
    }

    .vector_bg,
    .vector_bg_3 {
        display: none;
    }

    .vector_bg_mob,
    .vector_bg_3_mob {
        display: block;
    }

}

/* НОВОСТИ */
.news {
    padding: 120px 30px;
    background: #eef0f8;
}

.news__container {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 80px;
}

/* HEADER */

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

.news__title {
    flex: 1;
    text-align: center;
    color: #1b1b1b;
    font-family: "Livret_Subhead_Light", sans-serif;
}

.news__all-link {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #1b1b1b;
    font-family: "TT Hoves Pro", sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    right: 0;
    transform: translateY(-4px);
    -webkit-transform: translateY(-4px);
    -moz-transform: translateY(-4px);
    -ms-transform: translateY(-4px);
    -o-transform: translateY(-4px);
}

/* CONTENT */

.news__content {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.news__content.swiper {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.news__list {
    display: flex;
    /* flex-direction: column; */
}

.news__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
    padding-bottom: 100px;
}

.news__item a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
}

.news__item:last-child {
    padding: 60px 0 100px 0;
    border: none;
}

.news__date {
    color: #1b1b1b;
    font-family: "TT Hoves Pro", sans-serif;
}

.news__item-title {
    max-width: 800px;
    min-height: 140px;
    text-align: center;

    color: #1b1b1b;
    font-family: "Livret_Subhead_Light", sans-serif;
}

.swiper-slide .line {
    width: 100%;
    height: 1px;
    background-color: #1b1b1b;
}

.swiper-slide .line {
    transition:
        opacity .35s ease,
        background-color .35s ease;
}

.swiper-slide.is-changing .line {
    opacity: .7;
}

/* PAGINATION */

.news__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 32px;
}

.news__pagination-button {
    width: 42px;
    height: 42px;

    border-radius: 8px;

    cursor: pointer;

    color: #1b1b1b;
    font-size: 20px;

    transition:
        opacity 0.2s ease,
        border-color 0.2s ease;
}

.news__pagination-button img {
    width: 22.5px;
}

.news__pagination-button:hover svg {
    fill: #ffffff;
}

.news__pagination-button--disabled {
    cursor: default;
}

.news__pagination-count {
    color: #1b1b1b;
    font-size: 32px;
    font-family: "Livret_Subhead_Light", sans-serif;
    font-weight: 300;
    line-height: 1.1;
}

/* ADAPTIVE */
.news__content {
    overflow: hidden;
}

@media (max-width: 1024px) {
    .news__title {
        font-size: 56px;
    }

    .news__item-title {
        font-size: 28px;
    }
}

@media (max-width: 767px) {
    .news {
        padding: 80px 20px;
    }

    .news__header {
        flex-direction: column;
        gap: 24px;
    }

    .news__title {
        font-size: 40px;
    }

    .news__item-title {
        font-size: 22px;
    }

    .news__pagination {
        gap: 20px;
    }

    .news__pagination-count {
        font-size: 24px;
    }
}

/* ФОРМА */
.contact-us {
    padding-top: 430px;
    padding-bottom: 180px;
}

.contact-us__container {
    max-width: 1440px;
    margin: 0 auto;

    display: flex;
    flex-direction: column;
    align-items: center;
}

.contact-us__button img {
    max-width: 32px;
}

@media(max-width: 1040px) {

    .contact-us__button img {
        max-width: 28px;
    }
}

@media(max-width: 767px) {

    .contact-us__button img {
        max-width: 20px;
    }
}

/* FORM */

.contact-us__form-wrapper {
    width: 100%;
    max-width: 1380px;
    display: flex;
    justify-content: center;
}

.contact-us__form {
    width: 680px;

    display: flex;
    flex-direction: column;
    gap: 60px;
}

.contact-us__fields {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-us__field {
    border-bottom: 1px solid #1b1b1b;
}

.contact-us__input,
.contact-us__textarea {
    width: 100%;
    border: none;
    outline: none;
    background: transparent;
    padding: 0 0 5px;
    color: #1b1b1b;
    font-family: "TT Hoves Pro", sans-serif;
}

.contact-us__input::placeholder,
.contact-us__textarea::placeholder {
    color: #1b1b1b !important;
    font-family: "TT Hoves Pro", sans-serif !important;
    opacity: 1;
}

.contact-us__textarea {
    resize: none;
    height: 28.5px;
}


/* BOTTOM */

.contact-us__bottom {
    display: flex;
    align-items: center;
    gap: 60px;
}

.contact-us__policy {
    max-width: 403px;
    font-family: "TT Hoves Pro", sans-serif;
    color: #1b1b1b;
    line-height: 120%;
}

.contact-us__policy a {
    font-family: "TT Hoves Pro", sans-serif;
    color: #234134;
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: .5px;
}

.contact-us__policy a:hover {
    transition: .2s;
    opacity: .8;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
}

/* TITLE */

.contact-us__title {
    max-width: 1385px;
    margin-bottom: 100px;
    font-family: "Livret_Subhead_Light", sans-serif;
    text-align: center;
    color: #1b1b1b;
}

.contact-us__title-italic {
    font-family: "Livret_Subhead_Light_Italic", sans-serif;
}

.vector_bg_3,
.vector_bg_1 {
    left: 0;
    top: 0;
    width: 100%;
    z-index: -1;
}

@media (max-width: 955px) {
    .contact-us__title {
        margin-bottom: 80px;
    }

    .contact-us__bottom {
        justify-content: space-between;
    }

    .contact-us {
        padding-top: 230px;
        padding-bottom: 140px;
    }

    .news {
        padding: 100px 40px;
    }

    .news__container {
        gap: 60px;
    }

    /* .news__item:first-child {
        padding-bottom: 60px;
    } */
    .news__item {
        min-height: 156px;
    }

    .news__item {
        padding-bottom: 20px;
    }

    .news__item:last-child {
        padding-top: 40px;
        padding-bottom: 0;
    }

    .news__content {
        gap: 0;
    }

    .news__item {
        gap: 28px;
    }

    .news__pagination {
        gap: 16px;
    }

    .news__all-link {
        transform: translateX(1px);
        -webkit-transform: translateX(1px);
        -moz-transform: translateX(1px);
        -ms-transform: translateX(1px);
        -o-transform: translateX(1px);
    }

    .hero__content {
        padding-top: 0;
    }


}

@media (max-width: 767px) {
    .contact-us__container {
        padding: 0 40px;
    }

    .news {
        padding: 64px 20px;
    }

    .news__container {
        gap: 48px;
    }

    .news__all-link {
        position: inherit !important;
    }

    .news__header {
        gap: 16px;
    }

    .news__item {
        border: none;
    }

    .news__item,
    .news__item:last-child,
    .news__item:first-child {
        padding: 0 0 0 0;
    }

    .news__item:last-child {
        padding-top: 0;
        padding-bottom: 20px;
    }

    .news__item:nth-child(2) {
        display: none;
    }

    .news__pagination-button {
        width: 32px;
        height: 32px;
    }

    .news__pagination-button svg {
        width: 16px;
    }

    .promo__container {
        max-width: calc(100% - 40px);
    }

}

@media (max-width: 611px) {
    .contact-us__bottom {
        flex-direction: column;
        gap: 24px;
        justify-content: flex-start;
    }

    .contact-us__bottom button {
        width: 100%;
        justify-content: center;
    }

    .contact-us__bottom p {
        max-width: inherit;
    }
}

@media(max-width: 464px) {
    .contact-us__container {
        padding: 0 20px;
    }

    .contact-us__form {
        gap: 40px;
    }

    .contact-us__title {
        margin-bottom: 48px;
    }

    .contact-us {
        padding-top: 161px;
        padding-bottom: 142px;
    }

    .hero__container {
        padding: 80px 22.5px;
        gap: 28px;
    }

    .promo {
        /* max-height: 640px; */
    }

    .promo__contacts {
        width: 100%;
    }

    .promo__container {
        top: 50%;
    }
}


.breadcrumbs {
    display: inline-flex;
    align-items: center;
    gap: 16px;
}

.breadcrumbs__link,
.breadcrumbs__current {
    display: flex;
    align-items: center;
    font-family: "TT Hoves Pro", sans-serif;
}

.breadcrumbs__link {
    color: #1B1B1B;
    text-decoration: none;
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
}

.breadcrumbs__current {
    color: #60896F;
}

.breadcrumbs__link:hover {
    color: #60896F;
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
}

@media(max-width: 767px) {
    .breadcrumbs {
        display: none;
    }
}

.article-preview {
    width: 100%;
}
.map-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
}

.left-column-map {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.right-column-map {
    display: flex;
    flex-direction: column;
}
.right-column-map a,
.right-column-map ul {
    margin-bottom: 24px;
}
.right-column-map a.h3 {
    font-family: "TT Hoves Pro", sans-serif;

}
.right-column-map ul {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

@media(max-width: 600px) {
    .map-content {
        display: flex;
        flex-direction: column;
        gap: 32px;
    }
    .left-column-map {
        gap: 32px;
    }
    .right-column-map ul {
        margin-bottom: 32px;
    }
    .link-section,
    .right-column-map ul {
        position: relative;
    }
    .link-section:after,
    .right-column-map ul:after {
        position: absolute;
        content: '';
        width: 100%;
        height: 1px;
        background-color: #C9C9CF;
        bottom: -16px;
        left: 0;
    }
}