:root {
    --sd-yellow: #fdf251;
    --sd-dark: #222222;
    --sd-gray: #e7e7e7;
    --sd-light: #f7f7f7;
    --sd-text: rgba(34, 34, 34, 0.8);
}


/* ========================================
   BASE
======================================== */

.main-redesign {
    width: 100%;
    font-family: 'Exo 2', sans-serif;
    color: var(--sd-dark);
    background: var(--sd-light);
}

.main-redesign *,
.main-redesign *::before,
.main-redesign *::after {
    box-sizing: border-box;
}

.main-container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}


/* ========================================
   BUTTONS
======================================== */

.main-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 50px;
    padding: 12px 20px;

    border: 0;
    border-radius: 2px;

    font-family: 'Exo 2', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

.main-btn:hover,
.main-btn:focus {
    text-decoration: none;
}

.main-btn--dark {
    color: #fff;
    background: var(--sd-dark);
}

.main-btn--dark {
    color: #fff;
    background: #222222;
}

/* ========================================
   HOVER: СЕРАЯ КАРТОЧКА
======================================== */

.main-hero-card--location .main-btn--dark:hover,
.main-hero-card--location .main-btn--dark:focus {
    color: #fdf251;
    background: #222;
}


/* ========================================
   HOVER: ЖЕЛТАЯ КАРТОЧКА
======================================== */

.main-hero-card--rent .main-btn--dark:hover,
.main-hero-card--rent .main-btn--dark:focus {
    color: #222;
    background: #e7e7e7;
}


/* ========================================
   MAIN HERO
======================================== */

.main-hero {
    position: relative;
    overflow: hidden;
    padding: 50px 0 100px;
    background: var(--sd-light);
}

.main-hero__inner {
    display: flex;
    align-items: center;
    gap: 70px;
}


/* Intro */

.main-hero__intro {
    flex: 0 1 540px;
    min-width: 0;
}

.main-hero__title {
    max-width: 430px;
    margin: 0 0 12px;

    font-size: 49px;
    font-weight: 700;
    line-height: 1.08;
    text-transform: uppercase;

    color: var(--sd-dark);
}

.main-hero__description {
    max-width: 500px;
    margin-bottom: 18px;

    font-size: 18px;
    font-weight: 400;
    line-height: 1.3;

    color: var(--sd-text);
}

.main-hero__uptime {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.3;

    color: #000;
}

.main-hero__uptime strong {
    font-weight: 700;
}


/* Cards */

.main-hero__cards {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    gap: 20px;
}

.main-hero-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    flex: 1 1 0;
    min-width: 0;

    padding: 20px 46px 42px;

    border-radius: 20px;
}

.main-hero-card--location {
    background: var(--sd-gray);
}

.main-hero-card--rent {
    background: var(--sd-yellow);
}

.main-hero-card__image {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;

    min-height: 200px;
}

.main-hero-card__image img {
    display: block;
    max-width: 100%;
    max-height: 190px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.main-hero-card__content {
    margin-top: auto;
}

.main-hero-card__title {
    max-width: 330px;
    margin: 0 0 26px;

    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
    text-transform: uppercase;

    color: var(--sd-dark);
}

.main-hero-card .main-btn {
    width: 100%;
}



/* ========================================
   TABLET
======================================== */



@media (max-width: 991.98px) {

    .main-container {
        padding-left: 40px;
        padding-right: 40px;
    }

    .main-hero {
        padding-top: 36px;
        padding-bottom: 60px;
    }

    .main-hero__inner {
        display: block;
    }


    /* На 768 заголовок + текст в две колонки */

    .main-hero__intro {
        display: flex;
        align-items: flex-start;
        gap: 20px;

        max-width: none;
        margin-bottom: 40px;
    }

    .main-hero__title {
        flex: 1 1 50%;
        max-width: none;
        margin-bottom: 0;

        font-size: 40px;
    }

    .main-hero__description {
        margin-bottom: 10px;
    }

    .main-hero__intro > .main-hero__description,
    .main-hero__uptime {
        flex: 1 1 50%;
    }

    /*
     * У description и uptime должен быть один правый столбец.
     * Поэтому на следующем шаге при необходимости
     * обернем их в main-hero__info.
     */

    .main-hero__cards {
        flex-direction: column;
        gap: 10px;
    }

    .main-hero-card {
        flex-direction: row;
        align-items: center;

        padding: 25px 40px;
    }

    .main-hero-card__content {
        flex: 0 1 48%;
        order: 1;
        margin-top: 0;
    }

    .main-hero-card__image {
        flex: 1 1 auto;
        order: 2;

        min-height: 250px;
        align-items: center;
        justify-content: flex-end;
    }

    .main-hero-card__image img {
        max-height: 245px;
    }

    .main-hero-card__title {
        margin-bottom: 30px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 575.98px) {

    .main-container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .main-hero {
        padding-top: 26px;
        padding-bottom: 40px;
    }

    .main-hero__intro {
        display: block;
        margin-bottom: 30px;
    }

    .main-hero__title {
        margin-bottom: 10px;

        font-size: 30px;
        line-height: 1.15;
    }

    .main-hero__description {
        max-width: none;
        margin-bottom: 10px;
    }

    .main-hero__cards {
        gap: 10px;
    }

    .main-hero-card {
        display: flex;
        flex-direction: column;

        padding: 20px 30px 30px;
    }

    .main-hero-card__image {
        order: 1;

        width: 100%;
        min-height: 160px;

        align-items: flex-start;
        justify-content: flex-end;
    }

    .main-hero-card__image img {
        max-height: 165px;
    }

    .main-hero-card__content {
        order: 2;
        width: 100%;
    }

    .main-hero-card__title {
        max-width: 300px;
        margin-bottom: 30px;
    }
}















/* =================================================================================================
   2 - EXCURSIONS
==================================================================================================== */

.main-excursions {
    padding: 0 0 50px;
    background: var(--sd-light);
}

.main-excursions__slider {
    width: 100%;
}

.main-excursions__slide {
    position: relative;
    display: flex;
    align-items: center;

    min-height: 285px;
    padding: 45px 120px;

    overflow: hidden;
    border-radius: 20px;
}


/* Background */

.main-excursions__slide-bg {
    position: absolute;
    inset: 0;

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.main-excursions__slide-bg::after {
    content: "";
    position: absolute;
    inset: 0;

    background: rgba(0, 0, 0, 0.25);
}


/* Content */

.main-excursions__content {
    position: relative;
    z-index: 2;

    max-width: 500px;
    margin-left: auto;
    margin-right: auto;

    color: #fff;
}

.main-excursions__title {
    margin: 0 0 20px;

    font-size: 22px;
    font-weight: 600;
    line-height: 1.25;

    text-transform: uppercase;
    color: #fff;
}

.main-excursions__text {
    margin-bottom: 20px;

    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;

    color: rgba(255, 255, 255, 0.8);
}


/* Button */

.main-excursions__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 42px;
    padding: 10px 18px;

    background: #e7e7e7;

    font-family: 'Exo 2', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;

    color: #222;
    text-transform: uppercase;
    text-decoration: none;

    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

.main-excursions__btn:hover,
.main-excursions__btn:focus {
    background: transparent;
    color: var(--sd-yellow);
    text-decoration: none;
}


/* Arrows */

.main-excursions__arrow {
    position: absolute;
    z-index: 3;
    top: 50%;

    width: 34px;
    height: 34px;

    padding: 0;
    border: 0;

    background: rgba(255, 255, 255, 0.1);

    cursor: pointer;

    transform: translateY(-50%);
}

.main-excursions__arrow--prev {
    left: 40px;
}

.main-excursions__arrow--next {
    right: 40px;
}


/* Arrow line */

.main-excursions__arrow::before {
    content: "";

    position: absolute;
    top: 50%;

    width: 9px;
    height: 9px;

    border-top: 1px solid rgba(255, 255, 255, 0.8);
    border-right: 1px solid rgba(255, 255, 255, 0.8);
}

.main-excursions__arrow--prev::before {
    left: 14px;
    transform: translateY(-50%) rotate(-135deg);
}

.main-excursions__arrow--next::before {
    right: 14px;
    transform: translateY(-50%) rotate(45deg);
}

/* ========================================
   EXCURSIONS - TABLET
======================================== */

@media (max-width: 991.98px) {

    .main-excursions {
        padding-bottom: 40px;
    }

    .main-excursions__slide {
        min-height: 270px;
        padding: 35px 80px;
    }

    .main-excursions__content {
        max-width: 430px;
    }

    .main-excursions__arrow--prev {
        left: 25px;
    }

    .main-excursions__arrow--next {
        right: 25px;
    }
}


/* ========================================
   EXCURSIONS - MOBILE
======================================== */

@media (max-width: 575.98px) {

    .main-excursions {
        padding-bottom: 30px;
    }

    .main-excursions__slide {
        min-height: 355px;
        padding: 45px 57px 30px;

        align-items: flex-start;
        border-radius: 20px;
    }

    .main-excursions__content {
        width: 100%;
        max-width: 290px;
        margin: 0 auto;
    }

    .main-excursions__title {
        margin: 0 0 10px;

        font-size: 24px;
        font-weight: 600;
        line-height: 1.3;
    }

    .main-excursions__text {
        margin-bottom: 20px;

        font-size: 18px;
        line-height: 1.3;
    }

    .main-excursions__btn {
        min-height: 50px;
        padding: 12px 20px;

        font-size: 16px;
    }

    .main-excursions__arrow {
        width: 43px;
        height: 43px;
    }

    .main-excursions__arrow--prev {
        left: 10px;
    }

    .main-excursions__arrow--next {
        right: 10px;
    }
}

















/* =============================================================================================================
   EXTRA SERVICES
================================================================================================================ */

.main-services-extra {
    padding: 0 0 50px;
    background: var(--sd-light);
}

.main-services-extra__inner {
    display: flex;
    align-items: flex-start;
    gap: 60px;

    padding: 40px;

    background: #fff;
    border-radius: 20px;
}


/* Left */

.main-services-extra__heading {
    flex: 1 1 40%;
    min-width: 0;
}

.main-services-extra__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.05;

    text-transform: uppercase;
    color: var(--sd-dark);
}


/* Right */

.main-services-extra__accordion {
    flex: 1 1 60%;
    min-width: 0;
}


/* Item */

.extra-service {
    margin-bottom: 2px;
}

.extra-service:last-child {
    margin-bottom: 0;
}


/* Header */

.extra-service__header {
    display: flex;
    align-items: stretch;

    background: #e7e7e7;
    border-radius: 20px;

    transition: background-color 0.2s ease;
}

.extra-service__toggle {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    gap: 28px;

    min-width: 0;
    padding: 20px 15px 20px 35px;

    border: 0;
    outline: 0;
    background: transparent;

    font-family: 'Exo 2', sans-serif;
    text-align: left;

    color: var(--sd-dark);
    cursor: pointer;
}

.extra-service__toggle:focus {
    outline: 0;
}


/* Plus / minus */

.extra-service__icon {
    position: relative;

    flex: 0 0 16px;
    width: 16px;
    height: 16px;
}

.extra-service__icon::before,
.extra-service__icon::after {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: 12px;
    height: 2px;

    background: var(--sd-dark);

    transform: translate(-50%, -50%);
}

.extra-service__icon::after {
    transform: translate(-50%, -50%) rotate(90deg);

    transition: transform 0.2s ease;
}

.extra-service__toggle[aria-expanded="true"]
.extra-service__icon::after {
    transform: translate(-50%, -50%) rotate(0deg);
}


/* Name */

.extra-service__name {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.25;

    text-transform: uppercase;
}


/* Price */

.extra-service__price {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    margin: 19px 20px 19px 0;
    padding: 10px 18px;

    background: var(--sd-dark);

    font-family: 'Exo 2', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;

    color: #fff;
    text-transform: uppercase;
    text-decoration: none;

    transition: color 0.2s ease;
}

.extra-service__price:hover,
.extra-service__price:focus {
    color: var(--sd-yellow);
    text-decoration: none;
}


/* ========================================
   ROW HOVER
======================================== */

.extra-service__header:hover {
    background: var(--sd-yellow);
}


/*
 * Раскрытый пункт в макете снова серый,
 * даже если мышь находится внутри блока.
 */
.extra-service__header:has(
    .extra-service__toggle[aria-expanded="true"]
) {
    background: #e7e7e7;
}


/* ========================================
   COLLAPSE CONTENT
======================================== */

.extra-service__body {
    margin-top: 2px;
    padding: 20px 35px 25px;

    background: #f4f4f4;
    border-radius: 20px;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.55;

    color: rgba(34, 34, 34, 0.75);
}

.extra-service__body p {
    margin: 0 0 18px;
}

.extra-service__body p:last-child {
    margin-bottom: 0;
}

.extra-service__body a {
    color: rgba(34, 34, 34, 0.75);
    text-decoration: underline;
}

.extra-service__body a:hover {
    color: var(--sd-dark);
}


@media (max-width: 991.98px) {

    .main-services-extra {
        padding-bottom: 40px;
    }

    .main-services-extra__inner {
        display: block;
        padding: 30px;
    }

    .main-services-extra__heading {
        margin-bottom: 30px;
    }

    .main-services-extra__title {
        font-size: 28px;
    }
}


@media (max-width: 575.98px) {

    .main-services-extra {
        padding-bottom: 30px;
    }

    .main-services-extra__inner {
        padding: 25px 20px;

        border-radius: 15px;
    }

    .main-services-extra__heading {
        margin-bottom: 20px;
    }

    .main-services-extra__title {
        font-size: 26px;
    }

    .extra-service__header {
        flex-wrap: wrap;

        padding-bottom: 15px;
        border-radius: 15px;
    }

    .extra-service__toggle {
        flex-basis: 100%;

        gap: 15px;
        padding: 18px 20px 10px;
    }

    .extra-service__name {
        font-size: 16px;
    }

    .extra-service__price {
        margin: 0 20px 0 51px;
        padding: 9px 14px;

        font-size: 13px;
    }

    .extra-service__body {
        padding: 20px;

        border-radius: 15px;

        font-size: 14px;
    }
}























/* ========================================================================================================
   BENEFITS
=========================================================================================================== */

.main-benefits {
    padding: 0 0 50px;
    background: var(--sd-light);
}

.main-benefits__box {
    overflow: hidden;
    background: #fff;
    border-radius: 20px;
}

.main-benefits__head {
    padding: 38px 40px 28px;
    border-bottom: 1px solid #f0f0f0;
}

.main-benefits__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* Cards */

.main-benefits__list {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;

    padding: 30px 40px 40px;
}

.main-benefit {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    flex: 1 1 calc(33.333% - 12px);
    min-width: 0;

    padding: 18px 28px 24px;

    background: #f4f4f4;
    border-radius: 15px;
}

.main-benefit--accent {
    background: var(--sd-yellow);
}


/* Top area */

.main-benefit__top {
    display: flex;
    justify-content: flex-end;

    min-height: 30px;
    margin-bottom: 20px;
}


/* Badge */

.main-benefit__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 22px;
    padding: 3px 10px;

    border-radius: 20px;
    background: rgba(255, 255, 255, 0.55);

    font-size: 11px;
    font-weight: 500;
    line-height: 1;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* Text */

.main-benefit__text {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;

    color: var(--sd-dark);
}

.main-benefit__text strong {
    display: inline;
    font-weight: 600;
}


/* Icons */

.main-benefit__icon {
    display: block;

    width: 24px;
    height: 24px;

    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}


.main-benefit__icon--service {
    background-image: url('/images/redesign/icon-service.svg');
}

.main-benefit__icon--traffic {
    background-image: url('/images/redesign/icon-traffic.svg');
}

.main-benefit__icon--rent {
    background-image: url('/images/redesign/icon-rent.svg');
}

.main-benefit__icon--power {
    background-image: url('/images/redesign/icon-power.svg');
}

.main-benefit__icon--config {
    background-image: url('/images/redesign/icon-config.svg');
}



@media (max-width: 991.98px) {

    .main-benefits {
        padding-bottom: 40px;
    }

    .main-benefits__head {
        padding: 30px;
    }

    .main-benefits__title {
        font-size: 28px;
    }

    .main-benefits__list {
        gap: 14px;
        padding: 25px 30px 30px;
    }

    .main-benefit {
        flex-basis: calc(50% - 7px);
    }
}


@media (max-width: 575.98px) {

    .main-benefits {
        padding-bottom: 30px;
    }

    .main-benefits__box {
        border-radius: 15px;
    }

    .main-benefits__head {
        padding: 25px 20px 20px;
    }

    .main-benefits__title {
        font-size: 24px;
    }

    .main-benefits__list {
        gap: 10px;
        padding: 20px;
    }

    .main-benefit {
        flex-basis: 100%;
        padding: 18px 20px 22px;
    }

    .main-benefit__top {
        margin-bottom: 15px;
    }

    .main-benefit__text {
        font-size: 15px;
    }
}
















/* ===============================================================================================================
   DATA CENTERS
================================================================================================================== */

.main-datacenters {
    padding: 40px 0 60px;
    background: #2c2a31;
}

.main-datacenters__title {
    margin: 0 0 35px;

    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;

    color: #fff;
    text-transform: uppercase;
}

.main-datacenters__list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}


/* Card */

.main-datacenter {
    display: flex;
    align-items: stretch;
    gap: 35px;

    padding: 15px;

    background: #fff;
    border-radius: 20px;
}


/* Left content */

.main-datacenter__info {
    display: flex;
    flex-direction: column;
    justify-content: center;

    flex: 0 1 48%;
    min-width: 0;

    padding: 35px 40px;

    background: #f5f5f5;
    border-radius: 15px;
}

.main-datacenter__title {
    margin: 0 0 20px;

    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;

    color: var(--sd-dark);
    text-transform: uppercase;
}

.main-datacenter__text {
    margin-bottom: 25px;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;

    color: rgba(34, 34, 34, 0.75);
}

.main-datacenter__certificates {
    display: flex;
    align-items: center;
    gap: 15px;
}

.main-datacenter__certificates img {
    display: block;
    max-height: 35px;
    width: auto;
}


/* Scheme */

.main-datacenter__scheme {
    display: flex;
    align-items: center;
    justify-content: center;

    flex: 1 1 52%;
    min-width: 0;

    padding: 20px;
}

.main-datacenter__scheme a {
    display: block;
    max-width: 100%;
}

.main-datacenter__scheme img {
    display: block;

    max-width: 100%;
    max-height: 230px;
    width: auto;
    height: auto;

    margin: 0 auto;

    filter: grayscale(1);

    transition:
        filter 0.25s ease,
        transform 0.25s ease;

    cursor: zoom-in;
}


/* Hover */

.main-datacenter__scheme a:hover img,
.main-datacenter__scheme a:focus img {
    filter: grayscale(0);
}


@media (max-width: 991.98px) {

    .main-datacenters {
        padding-top: 35px;
        padding-bottom: 45px;
    }

    .main-datacenters__title {
        margin-bottom: 25px;
        font-size: 28px;
    }

    .main-datacenter {
        gap: 20px;
    }

    .main-datacenter__info {
        padding: 25px;
    }

    .main-datacenter__scheme {
        padding: 15px;
    }

    .main-datacenter__scheme img {
        max-height: 190px;
    }
}


@media (max-width: 575.98px) {

    .main-datacenters {
        padding-top: 30px;
        padding-bottom: 35px;
    }

    .main-datacenters__title {
        font-size: 24px;
    }

    .main-datacenter {
        flex-direction: column;
        gap: 10px;

        padding: 10px;

        border-radius: 15px;
    }

    .main-datacenter__info {
        flex-basis: auto;
        padding: 25px 20px;

        border-radius: 12px;
    }

    .main-datacenter__title {
        font-size: 20px;
    }

    .main-datacenter__scheme {
        flex-basis: auto;
        padding: 20px;
    }

    .main-datacenter__scheme img {
        max-height: 200px;
    }

    .main-datacenter__certificates {
        flex-wrap: wrap;
    }
}


















/* ===============================================================================================================
   EQUIPMENT
================================================================================================================== */

.main-equipment {
    padding: 50px 0;
    background: var(--sd-light);
}

.main-equipment__inner {
    display: flex;
    align-items: flex-start;
    gap: 70px;

    padding: 40px;

    background: #fff;
    border-radius: 20px;
}


/* Left */

.main-equipment__heading {
    flex: 1 1 45%;
    min-width: 0;
}

.main-equipment__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    text-transform: uppercase;
    color: var(--sd-dark);
}


/* Right */

.main-equipment__accordion {
    flex: 1 1 55%;
    min-width: 0;
}

.equipment-item {
    margin-bottom: 8px;
}

.equipment-item:last-child {
    margin-bottom: 0;
}


/* Header */

.equipment-item__header {
    display: flex;
    align-items: center;
    gap: 22px;

    width: 100%;
    min-height: 70px;

    padding: 18px 20px;

    border: 0;
    border-radius: 16px;

    background: #e7e7e7;

    font-family: 'Exo 2', sans-serif;
    text-align: left;

    color: var(--sd-dark);

    cursor: pointer;

    transition: background-color 0.2s ease;
}

.equipment-item__header:focus {
    outline: 0;
}


/* Plus / minus */

.equipment-item__icon {
    position: relative;

    flex: 0 0 16px;
    width: 16px;
    height: 16px;
}

.equipment-item__icon::before,
.equipment-item__icon::after {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: 11px;
    height: 2px;

    background: var(--sd-dark);

    transform: translate(-50%, -50%);
}

.equipment-item__icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform 0.2s ease;
}

.equipment-item__header[aria-expanded="true"]
.equipment-item__icon::after {
    transform: translate(-50%, -50%) rotate(0);
}


/* Name */

.equipment-item__name {
    flex: 1 1 auto;
    min-width: 0;

    font-size: 17px;
    font-weight: 600;
    line-height: 1.25;

    text-transform: uppercase;
}


/* Check */

.equipment-item__check {
    position: relative;

    flex: 0 0 28px;
    width: 28px;
    height: 28px;

    border-radius: 50%;
    background: #fff;

    transition: background-color 0.2s ease;
}

.equipment-item__check::before {
    content: "";

    position: absolute;
    top: 8px;
    left: 8px;

    width: 11px;
    height: 6px;

    border-left: 1.5px solid #aaa;
    border-bottom: 1.5px solid #aaa;

    transform: rotate(-45deg);
}


/* Open state */

.equipment-item__header[aria-expanded="true"] {
    border-radius: 16px 16px 0 0;
    background: #f1f1f1;
}

.equipment-item__header[aria-expanded="true"]
.equipment-item__check {
    background: var(--sd-yellow);
}


/* Body */

.equipment-item__body {
    padding: 0 52px 25px;

    border-radius: 0 0 16px 16px;

    background: #f1f1f1;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.55;

    color: rgba(34, 34, 34, 0.75);
}


/* ========================================
   HOVER
======================================== */

.equipment-item__header[aria-expanded="false"]:hover {
    background: var(--sd-yellow);
}


@media (max-width: 991.98px) {

    .main-equipment {
        padding: 40px 0;
    }

    .main-equipment__inner {
        display: block;
        padding: 30px;
    }

    .main-equipment__heading {
        margin-bottom: 30px;
    }

    .main-equipment__title {
        font-size: 28px;
    }
}


@media (max-width: 575.98px) {

    .main-equipment {
        padding: 30px 0;
    }

    .main-equipment__inner {
        padding: 25px 20px;
        border-radius: 15px;
    }

    .main-equipment__heading {
        margin-bottom: 20px;
    }

    .main-equipment__title {
        font-size: 24px;
    }

    .equipment-item__header {
        gap: 14px;
        min-height: 62px;

        padding: 16px;

        border-radius: 14px;
    }

    .equipment-item__name {
        font-size: 15px;
    }

    .equipment-item__check {
        flex-basis: 24px;
        width: 24px;
        height: 24px;
    }

    .equipment-item__check::before {
        top: 7px;
        left: 7px;

        width: 9px;
        height: 5px;
    }

    .equipment-item__header[aria-expanded="true"] {
        border-radius: 14px 14px 0 0;
    }

    .equipment-item__body {
        padding: 0 46px 20px;

        border-radius: 0 0 14px 14px;

        font-size: 14px;
    }
}


















/* =================================================================================================================
   SUPPORT
==================================================================================================================== */

.main-support {
    padding: 50px 0;
    background: var(--sd-light);
}

.main-support__box {
    overflow: hidden;

    background: #fff;
    border-radius: 20px;
}


/* ========================================
   HEADING
======================================== */

.main-support__head {
    padding: 40px;

    border-bottom: 1px solid #f0f0f0;
}

.main-support__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    text-transform: uppercase;
    color: var(--sd-dark);
}


/* ========================================
   CONTENT
======================================== */

.main-support__content {
    padding: 40px;
}


/* ========================================
   TARIFF TABS
======================================== */

.main-support__tabs {
    display: flex;
    gap: 10px;
}

.support-tariff {
    display: flex;
    flex-direction: column;
    justify-content: center;

    flex: 1 1 0;
    min-width: 0;

    padding: 28px 40px;

    border: 0;
    border-radius: 18px;

    background: #222;

    font-family: 'Exo 2', sans-serif;
    text-align: left;
    color: #fff;

    cursor: pointer;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

.support-tariff:hover,
.support-tariff:focus {
    background: #000;
    color: #fff;

    outline: 0;
}


/* Active tariff */

.support-tariff.active,
.support-tariff.active:hover,
.support-tariff.active:focus {
    background: var(--sd-yellow);
    color: var(--sd-dark);
}

.support-tariff__label {
    margin-bottom: 8px;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
}

.support-tariff__name {
    font-size: 19px;
    font-weight: 600;
    line-height: 1.2;

    text-transform: uppercase;
}


/* ========================================
   PANES
======================================== */

.main-support__panes {
    margin-top: 5px;
}

.support-pane {
    display: none;
}

.support-pane.active {
    display: block;
}


/* ========================================
   PLAN CONTENT
======================================== */

.support-plan {
    display: flex;
    align-items: flex-start;
    gap: 50px;

    padding: 35px 40px;

    background-color: #f5f5f5;
    background-image: url('/images/redesign/support-bg.svg');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: auto 100%;

    border-radius: 18px;
}


/* Features */

.support-plan__features {
    flex: 1 1 58%;
    min-width: 0;
}

.support-plan__list {
    margin: 0;
    padding: 0;

    list-style: none;
}

.support-plan__list li {
    position: relative;

    margin-bottom: 16px;
    padding-left: 18px;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;

    color: var(--sd-dark);
}

.support-plan__list li:last-child {
    margin-bottom: 0;
}

.support-plan__list li::before {
    content: "";

    position: absolute;
    top: 0.55em;
    left: 0;

    width: 5px;
    height: 5px;

    border-radius: 50%;
    background: #d8d200;
}

.support-plan__list strong {
    font-weight: 600;
}


/* ========================================
   PRICE
======================================== */

.support-plan__order {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    flex: 0 1 38%;
    min-width: 0;

    padding-top: 15px;
}

.support-plan__price {
    margin-bottom: 28px;

    font-size: 32px;
    font-weight: 600;
    line-height: 1.1;

    text-transform: uppercase;
    color: #000;
}


/* ========================================
   BUTTON
======================================== */

.support-plan__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 48px;
    padding: 12px 50px;

    border: 0;
    background: var(--sd-yellow);

    font-family: 'Exo 2', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;

    text-transform: uppercase;
    text-decoration: none;

    color: var(--sd-dark);

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

.support-plan__btn:hover,
.support-plan__btn:focus {
    background: #000;
    color: var(--sd-yellow);

    text-decoration: none;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 991.98px) {

    .main-support {
        padding: 40px 0;
    }

    .main-support__head {
        padding: 30px;
    }

    .main-support__title {
        font-size: 28px;
    }

    .main-support__content {
        padding: 30px;
    }

    .main-support__tabs {
        flex-wrap: wrap;
    }

    .support-tariff {
        flex: 1 1 calc(50% - 5px);

        padding: 24px 30px;
    }

    .support-plan {
        gap: 30px;
        padding: 30px;
    }

    .support-plan__price {
        font-size: 28px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 575.98px) {

    .main-support {
        padding: 30px 0;
    }

    .main-support__box {
        border-radius: 15px;
    }

    .main-support__head {
        padding: 25px 20px;
    }

    .main-support__title {
        font-size: 24px;
    }

    .main-support__content {
        padding: 20px;
    }


    /* Horizontal tariffs */

    .main-support__tabs {
        flex-wrap: nowrap;

        margin-right: -20px;
        padding-right: 20px;

        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .main-support__tabs::-webkit-scrollbar {
        display: none;
    }

    .support-tariff {
        flex: 0 0 200px;

        padding: 22px 25px;

        border-radius: 14px;
    }

    .support-tariff__label {
        font-size: 13px;
    }

    .support-tariff__name {
        font-size: 17px;
    }


    /* Content */

    .support-plan {
        flex-direction: column;
        gap: 30px;

        padding: 25px 20px;

        border-radius: 14px;

        background-position: right bottom;
        background-size: auto 60%;
    }

    .support-plan__features,
    .support-plan__order {
        flex-basis: auto;
        width: 100%;
    }

    .support-plan__order {
        padding-top: 0;
    }

    .support-plan__price {
        margin-bottom: 20px;

        font-size: 26px;
    }

    .support-plan__btn {
        width: 100%;
    }
}

















/* ====================================================================================================================
   PROJECTS
======================================================================================================================= */

.main-projects {
    padding: 50px 0;
    background: var(--sd-light);
}

.main-projects__box {
    overflow: hidden;

    background: #fff;
    border-radius: 20px;
}


/* ========================================
   HEADING
======================================== */

.main-projects__head {
    padding: 38px 40px 30px;

    border-bottom: 1px solid #f0f0f0;
}

.main-projects__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* ========================================
   CARDS
======================================== */

.main-projects__list {
    display: flex;
    gap: 20px;

    padding: 40px;
}

.main-project-card {
    display: flex;
    flex-direction: column;

    flex: 1 1 0;
    min-width: 0;

    padding: 20px 38px 34px;

    background: #e7e7e7;
    border-radius: 18px;

    transition: box-shadow 0.25s ease;
}

.main-project-card--accent {
    background: var(--sd-yellow);
}


/* ========================================
   IMAGE
======================================== */

.main-project-card__image {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;

    min-height: 180px;
    margin-bottom: 20px;
}

.main-project-card__image img {
    display: block;

    max-width: 100%;
    max-height: 175px;
    width: auto;
    height: auto;

    object-fit: contain;
}


/* ========================================
   CONTENT
======================================== */

.main-project-card__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    flex: 1 1 auto;
}

.main-project-card__title {
    margin: 0 0 28px;

    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* ========================================
   BUTTON
======================================== */

.main-project-card__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-top: auto;
    min-height: 44px;
    padding: 10px 18px;

    background: var(--sd-dark);

    font-family: 'Exo 2', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.2;

    color: #fff;
    text-transform: uppercase;
    text-decoration: none;

    transition: color 0.2s ease;
}

.main-project-card__btn:hover,
.main-project-card__btn:focus {
    color: var(--sd-yellow);
    text-decoration: none;
}


/* ========================================
   CARD HOVER
======================================== */

.main-project-card:not(.main-project-card--accent):hover {
    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.12);
}


@media (max-width: 991.98px) {

    .main-projects {
        padding: 40px 0;
    }

    .main-projects__head {
        padding: 30px;
    }

    .main-projects__title {
        font-size: 28px;
    }

    .main-projects__list {
        gap: 14px;
        padding: 30px;
    }

    .main-project-card {
        padding: 18px 20px 28px;
    }

    .main-project-card__image {
        min-height: 145px;
    }

    .main-project-card__image img {
        max-height: 140px;
    }

    .main-project-card__title {
        font-size: 17px;
    }
}


@media (max-width: 575.98px) {

    .main-projects {
        padding: 30px 0;
    }

    .main-projects__box {
        border-radius: 15px;
    }

    .main-projects__head {
        padding: 25px 20px 20px;
    }

    .main-projects__title {
        font-size: 24px;
    }

    .main-projects__list {
        flex-direction: column;
        gap: 12px;

        padding: 20px;
    }

    .main-project-card {
        padding: 20px 25px 28px;

        border-radius: 15px;
    }

    .main-project-card__image {
        min-height: 150px;
        margin-bottom: 15px;
    }

    .main-project-card__image img {
        max-height: 145px;
    }

    .main-project-card__title {
        margin-bottom: 24px;

        font-size: 18px;
    }
}


















/* ========================================
   CLIENT REVIEWS
======================================== */

.main-reviews {
    padding: 50px 0;
    background: var(--sd-light);
}

.main-reviews__box {
    overflow: hidden;

    background: #fff;
    border-radius: 20px;
}


/* ========================================
   HEADER
======================================== */

.main-reviews__head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 38px 40px 30px;

    border-bottom: 1px solid #f0f0f0;
}

.main-reviews__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* ========================================
   NAVIGATION
======================================== */

.main-reviews__nav {
    display: flex;
    align-items: center;
    gap: 24px;
}

.main-reviews__arrow {
    position: relative;

    flex: 0 0 28px;
    width: 28px;
    height: 28px;

    padding: 0;
    border: 0;

    background: transparent;

    cursor: pointer;
}

.main-reviews__arrow::before {
    content: "";

    position: absolute;
    top: 50%;

    width: 11px;
    height: 11px;

    border-top: 2px solid #111;
    border-right: 2px solid #111;
}

.main-reviews__arrow--prev::before {
    left: 10px;

    transform:
        translateY(-50%)
        rotate(-135deg);
}

.main-reviews__arrow--next::before {
    right: 10px;

    transform:
        translateY(-50%)
        rotate(45deg);
}

.main-reviews__arrow:focus {
    outline: 0;
}


/* ========================================
   SLIDER
======================================== */

.main-reviews__slider {
    padding: 45px 25px 50px;
}

.main-reviews__slide {
    padding: 0 18px;
}

.main-reviews__logo {
    display: flex;
    align-items: center;
    justify-content: center;

    min-height: 110px;

    text-decoration: none;
}

.main-reviews__logo img {
    display: block;

    max-width: 100%;
    max-height: 62px;
    width: auto;
    height: auto;

    object-fit: contain;

    filter: grayscale(100%);
    transition: filter 0.25s ease;
}

.main-reviews__logo:hover img {
    filter: grayscale(0%);
}

.main-reviews__logo:hover img,
.main-reviews__logo:focus img {
    filter: grayscale(0%);
}


/* Slick fixes */

.main-reviews__slider .slick-track {
    display: flex;
    align-items: center;
}

.main-reviews__slider .slick-slide {
    height: auto;
}

.main-reviews__slider .slick-slide > div {
    height: 100%;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 991.98px) {

    .main-reviews {
        padding: 40px 0;
    }

    .main-reviews__head {
        padding: 30px;
    }

    .main-reviews__title {
        font-size: 28px;
    }

    .main-reviews__slider {
        padding: 35px 20px 40px;
    }

    .main-reviews__slide {
        padding: 0 15px;
    }

    .main-reviews__logo {
        min-height: 90px;
    }

    .main-reviews__logo img {
        max-height: 56px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 575.98px) {

    .main-reviews {
        padding: 30px 0;
    }

    .main-reviews__box {
        border-radius: 15px;
    }

    .main-reviews__head {
        padding: 25px 20px;
    }

    .main-reviews__title {
        font-size: 24px;
    }

    .main-reviews__nav {
        gap: 14px;
    }

    .main-reviews__slider {
        padding: 25px 10px 30px;
    }

    .main-reviews__slide {
        padding: 0 10px;
    }

    .main-reviews__logo {
        min-height: 75px;
    }

    .main-reviews__logo img {
        max-height: 48px;
    }
}




















/* =========================================================================================================
   COMPANY HISTORY
============================================================================================================ */

.main-history {
    padding: 0;

    background-color: #222;
    background-image: url('/images/redesign/history-bg.svg');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: auto 100%;

    color: #fff;
}


/* ========================================
   HEADER
======================================== */

.main-history__head {
    padding: 38px 0 30px;

    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.main-history__title {
    margin: 0;

    font-size: 30px;
    font-weight: 600;
    line-height: 1.15;

    color: #fff;
    text-transform: uppercase;
}


/* ========================================
   CONTENT
======================================== */

.main-history__content {
    padding: 55px 0 70px;
}


/* ========================================
   YEARS LINE
======================================== */

.main-history__years {
    position: relative;

    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 45px;
}


/* Горизонтальная линия */

.main-history__years::after {
    content: "";

    position: absolute;
    z-index: 0;

    left: 0;
    right: 0;
    bottom: 5px;

    height: 1px;

    background: rgba(253, 242, 81, 0.7);
}


/* ========================================
   YEAR ITEM
======================================== */

.main-history__year {
    position: relative;
    z-index: 1;

    display: flex;
    flex-direction: column;
    align-items: center;

    flex: 0 0 auto;

    padding: 0;
    border: 0;

    background: transparent;

    font-family: 'Exo 2', sans-serif;
    color: #fff;

    cursor: pointer;
}

.main-history__year:focus {
    outline: 0;
}

.main-history__year-label {
    margin-bottom: 10px;

    font-size: 18px;
    font-weight: 400;
    line-height: 1;

    color: #fff;
}


/* ========================================
   YEAR DOT
======================================== */

.main-history__year-dot {
    display: block;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: var(--sd-yellow);

    transition:
        width 0.2s ease,
        height 0.2s ease,
        box-shadow 0.2s ease;
}


/* Активная точка */

.main-history__year.active .main-history__year-dot {
    width: 10px;
    height: 10px;

    border: 2px solid #222;

    box-shadow:
        0 0 0 2px var(--sd-yellow),
        0 0 0 7px rgba(253, 242, 81, 0.08);
}


/* ========================================
   SLIDER WRAPPER
======================================== */

.main-history__slider-wrap {
    position: relative;
}

.main-history__slider {
    margin: 0 -8px;
}

.main-history__slide {
    padding: 0 8px;
}


/* ========================================
   CARD
======================================== */

.main-history-card {
    overflow: hidden;

    min-height: 245px;

    background: #fff;
    border-radius: 18px;

    color: var(--sd-dark);
}


/* ========================================
   CARD YEAR
======================================== */

/* Год в карточке — обычное состояние */
.main-history-card__year {
    display: inline-block;

    margin: 22px 22px 12px;
    padding: 0 2px;

    background: var(--sd-yellow);
    color: var(--sd-dark);

    font-size: 30px;
    font-weight: 500;
    line-height: 1;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}


/* Год текущей активной карточки */
.main-history__slider .slick-current .main-history-card__year {
    background: var(--sd-dark) !important;
    color: var(--sd-yellow);
}


/*
 * Желтая подложка только у текущей
 * первой активной карточки Slick
 */

.main-history__slider .slick-current .main-history-card__year {
    background: var(--sd-yellow);
}


/* ========================================
   CARD BODY
======================================== */

.main-history-card__body {
    padding: 20px 22px 28px;

    border-top: 1px solid #f0f0f0;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;

    color: rgba(34, 34, 34, 0.78);
}

.main-history-card__body p {
    margin: 0 0 10px;
}

.main-history-card__body p:last-child {
    margin-bottom: 0;
}


/* ========================================
   SLIDER ARROWS
======================================== */

.main-history__arrow {
    position: absolute;
    z-index: 5;

    top: 50%;

    width: 34px;
    height: 50px;

    padding: 0;
    border: 0;

    background: transparent;

    transform: translateY(-50%);

    cursor: pointer;
}

.main-history__arrow--prev {
    left: -45px;
}

.main-history__arrow--next {
    right: -45px;
}

.main-history__arrow::before {
    content: "";

    position: absolute;
    top: 50%;

    width: 12px;
    height: 12px;

    border-top: 2px solid rgba(255, 255, 255, 0.65);
    border-right: 2px solid rgba(255, 255, 255, 0.65);
}

.main-history__arrow--prev::before {
    left: 12px;

    transform:
        translateY(-50%)
        rotate(-135deg);
}

.main-history__arrow--next::before {
    right: 12px;

    transform:
        translateY(-50%)
        rotate(45deg);
}

.main-history__arrow:hover::before {
    border-color: #fff;
}

.main-history__arrow:focus {
    outline: 0;
}


/* ========================================
   SLICK FIXES
======================================== */

.main-history__slider .slick-track {
    display: flex;
}

.main-history__slider .slick-slide {
    height: auto;
}

.main-history__slider .slick-slide > div {
    height: 100%;
}

.main-history__slider .main-history__slide {
    height: 100%;
}

.main-history__slider .main-history-card {
    height: 100%;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 991.98px) {

    .main-history {
        background-size: auto 100%;
    }

    .main-history__head {
        padding-top: 30px;
        padding-bottom: 25px;
    }

    .main-history__title {
        font-size: 28px;
    }

    .main-history__content {
        padding-top: 40px;
        padding-bottom: 50px;
    }


    /* Горизонтальная прокрутка годов */

    .main-history__years {
        justify-content: flex-start;
        gap: 48px;

        overflow-x: auto;

        padding-bottom: 2px;

        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .main-history__years::-webkit-scrollbar {
        display: none;
    }

    /*
     * Линия должна оставаться длиннее
     * видимой области при прокрутке.
     */

    .main-history__years::after {
        right: auto;
        width: 900px;
    }

    .main-history__year {
        flex: 0 0 auto;
    }


    /* Arrows */

    .main-history__arrow--prev {
        left: -25px;
    }

    .main-history__arrow--next {
        right: -25px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 575.98px) {

    .main-history__head {
        padding-top: 25px;
        padding-bottom: 20px;
    }

    .main-history__title {
        font-size: 24px;
    }

    .main-history__content {
        padding-top: 30px;
        padding-bottom: 40px;
    }


    /* Years */

    .main-history__years {
        gap: 34px;
        margin-bottom: 30px;
    }

    .main-history__year-label {
        margin-bottom: 9px;

        font-size: 16px;
    }


    /* Card */

    .main-history-card {
        min-height: 230px;

        border-radius: 15px;
    }

    .main-history-card__year {
        margin: 20px 20px 10px;

        font-size: 26px;
    }

    .main-history-card__body {
        padding: 18px 20px 24px;

        font-size: 14px;
    }


    /* Arrows */

    .main-history__arrow {
        width: 30px;
        height: 45px;
    }

    .main-history__arrow--prev {
        left: -10px;
    }

    .main-history__arrow--next {
        right: -10px;
    }
}















/* ============================================================================================================
   TEAM
=============================================================================================================== */

.main-team {
    padding: 35px 0 50px;

    background: var(--sd-light);
}


/* ========================================
   BOX
======================================== */

.main-team__box {
    display: flex;
    align-items: flex-start;

    width: 100%;

    padding: 25px;

    background-color: #e7e7e7;
    background-image: url('/images/redesign/team-bg.svg');
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: auto 75%;

    border-radius: 20px;
}


/* ========================================
   LEFT COLUMN
======================================== */

.main-team__heading {
    flex: 0 0 30%;
    min-width: 0;

    padding: 15px 35px 0 5px;
}

.main-team__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* ========================================
   LIST
======================================== */

.main-team__list {
    flex: 1 1 70%;
    min-width: 0;
}


/* ========================================
   TEAM ITEM
======================================== */

.main-team__item {
    display: flex;
    align-items: center;

    width: 100%;

    padding: 28px 30px;

    background: transparent;
    border-radius: 18px;

    transition:
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Центральная строка светлая по умолчанию */

.main-team__item--default {
    background: #f8f8f8;
}


/* Когда курсор заходит в список —
   стандартная подсветка центрального элемента снимается */

.main-team__list:hover .main-team__item--default {
    background: transparent;
}


/* Подсвечивается конкретный наведенный сотрудник */

.main-team__list .main-team__item:hover {
    background: #f8f8f8;
}


/* ========================================
   PERSON
======================================== */

.main-team__person {
    display: flex;
    align-items: center;

    flex: 0 0 47%;
    min-width: 0;

    padding-right: 35px;
}


/* ========================================
   PHOTO
======================================== */

.main-team__photo {
    flex: 0 0 64px;

    width: 64px;
    height: 64px;

    margin-right: 15px;

    overflow: hidden;

    border-radius: 50%;
}

.main-team__photo img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* ========================================
   PERSON INFO
======================================== */

.main-team__person-info {
    min-width: 0;
}

.main-team__name {
    margin-bottom: 7px;

    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;

    color: var(--sd-dark);
    text-transform: uppercase;
}

.main-team__position {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;

    color: rgba(34, 34, 34, 0.7);
}


/* ========================================
   DESCRIPTION
======================================== */

.main-team__description {
    flex: 1 1 53%;
    min-width: 0;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;

    color: rgba(34, 34, 34, 0.75);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 991.98px) {

    .main-team {
        padding: 30px 0 40px;
    }

    .main-team__box {
        display: block;

        padding: 30px;

        background-size: auto 55%;
    }

    .main-team__heading {
        padding: 0 0 25px;
    }

    .main-team__title {
        font-size: 28px;
    }

    .main-team__item {
        padding: 24px 20px;
    }

    .main-team__person {
        flex-basis: 45%;

        padding-right: 20px;
    }

    .main-team__description {
        flex-basis: 55%;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 767.98px) {

    .main-team {
        padding: 25px 0 35px;
    }

    .main-team__box {
        padding: 25px 20px;

        border-radius: 15px;

        background-size: auto 40%;
    }

    .main-team__heading {
        padding-bottom: 20px;
    }

    .main-team__title {
        font-size: 24px;
    }

    .main-team__item {
        display: block;

        padding: 22px 18px;

        border-radius: 14px;
    }

    .main-team__person {
        width: 100%;

        padding: 0 0 18px;
    }

    .main-team__photo {
        flex-basis: 58px;

        width: 58px;
        height: 58px;

        margin-right: 14px;
    }

    .main-team__name {
        font-size: 17px;
    }

    .main-team__description {
        width: 100%;
    }
}


/* ========================================
   SMALL MOBILE
======================================== */

@media (max-width: 479.98px) {

    .main-team__box {
        padding: 22px 15px;
    }

    .main-team__title {
        font-size: 22px;
    }

    .main-team__item {
        padding: 20px 15px;
    }

    .main-team__photo {
        flex-basis: 52px;

        width: 52px;
        height: 52px;
    }

    .main-team__name {
        font-size: 16px;
    }

    .main-team__position,
    .main-team__description {
        font-size: 13px;
    }
}















/* ========================================
   CERTIFICATES
======================================== */

.main-certificates {
    padding: 35px 0 50px;

    background: var(--sd-light);
}


/* ========================================
   BOX
======================================== */

.main-certificates__box {
    overflow: hidden;

    background: #fff;
    border-radius: 20px;
}


/* ========================================
   HEADER
======================================== */

.main-certificates__head {
    padding: 38px 40px 30px;

    border-bottom: 1px solid #f0f0f0;
}

.main-certificates__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* ========================================
   LIST
======================================== */

.main-certificates__list {
    display: flex;
    gap: 20px;

    padding: 40px;
}


/* ========================================
   CARD
======================================== */

.main-certificate {
    flex: 1 1 0;
    min-width: 0;
}

.main-certificate__link {
    display: flex;
    flex-direction: column;

    height: 100%;

    padding: 25px 25px 22px;

    background: #f3f3f3;
    border-radius: 18px;

    color: var(--sd-dark);
    text-decoration: none;

    transition:
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

.main-certificate__link:hover,
.main-certificate__link:focus {
    color: var(--sd-dark);
    text-decoration: none;

    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.12);
}


/* ========================================
   IMAGE
======================================== */

.main-certificate__image {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 1 1 auto;

    min-height: 350px;
    margin-bottom: 20px;
}

.main-certificate__image img {
    display: block;

    max-width: 100%;
    max-height: 345px;
    width: auto;
    height: auto;

    object-fit: contain;
}


/* ========================================
   ZOOM
======================================== */

.main-certificate__zoom {
    position: absolute;

    right: 8px;
    bottom: 8px;

    width: 48px;
    height: 48px;

    border-radius: 50%;

    background: rgba(34, 34, 34, 0.55);

    opacity: 0;
    transform: scale(0.9);

    transition:
        opacity 0.2s ease,
        transform 0.2s ease;
}

.main-certificate__link:hover .main-certificate__zoom,
.main-certificate__link:focus .main-certificate__zoom {
    opacity: 1;
    transform: scale(1);
}


/* Лупа */

.main-certificate__zoom::before {
    content: "";

    position: absolute;

    top: 13px;
    left: 13px;

    width: 15px;
    height: 15px;

    border: 2px solid #fff;
    border-radius: 50%;
}

.main-certificate__zoom::after {
    content: "";

    position: absolute;

    width: 9px;
    height: 2px;

    top: 29px;
    left: 27px;

    background: #fff;

    transform: rotate(45deg);
    transform-origin: left center;
}


/* ========================================
   CAPTION
======================================== */

.main-certificate__caption {
    min-height: 48px;

    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;

    text-align: center;

    color: rgba(34, 34, 34, 0.75);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 991.98px) {

    .main-certificates {
        padding: 30px 0 40px;
    }

    .main-certificates__head {
        padding: 30px;
    }

    .main-certificates__title {
        font-size: 28px;
    }

    .main-certificates__list {
        gap: 14px;

        padding: 30px;
    }

    .main-certificate__link {
        padding: 20px 18px;
    }

    .main-certificate__image {
        min-height: 270px;
    }

    .main-certificate__image img {
        max-height: 265px;
    }

    .main-certificate__caption {
        font-size: 15px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 767.98px) {

    .main-certificates {
        padding: 25px 0 35px;
    }

    .main-certificates__box {
        border-radius: 15px;
    }

    .main-certificates__head {
        padding: 25px 20px;
    }

    .main-certificates__title {
        font-size: 24px;
    }

    .main-certificates__list {
        flex-direction: column;

        gap: 12px;

        padding: 20px;
    }

    .main-certificate__link {
        padding: 20px;

        border-radius: 15px;
    }

    .main-certificate__image {
        min-height: auto;
        margin-bottom: 18px;
    }

    .main-certificate__image img {
        max-height: 320px;
    }

    .main-certificate__caption {
        min-height: 0;

        font-size: 15px;
    }
}














/* ====================================================================================================================
   CERTIFICATES
======================================================================================================================= */

.main-certificates {
    padding: 35px 0 50px;
    background: var(--sd-light);
}


/* =========================================================
   MAIN BOX
========================================================= */

.main-certificates__inner {
    overflow: hidden;

    background: #fff;
    border-radius: 20px;
}


/* =========================================================
   HEADER
========================================================= */

.main-certificates__header {
    padding: 38px 40px 30px;

    border-bottom: 1px solid #eeeeee;
}

.main-certificates__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* =========================================================
   CONTENT
========================================================= */

.main-certificates__content {
    display: flex;
    align-items: stretch;

    gap: 20px;

    padding: 40px;
}


/* =========================================================
   ITEM
========================================================= */

.main-certificates__item {
    display: flex;

    flex: 1 1 0;
    min-width: 0;
}


/* =========================================================
   LINK / CARD
========================================================= */

.main-certificates__link {
    display: flex;
    flex-direction: column;

    width: 100%;

    padding: 25px;

    background: #f3f3f3;
    border-radius: 18px;

    color: var(--sd-dark);
    text-decoration: none;

    transition: box-shadow 0.25s ease;
}

.main-certificates__link:hover,
.main-certificates__link:focus {
    color: var(--sd-dark);
    text-decoration: none;

    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.12);
}


/* =========================================================
   IMAGE AREA
========================================================= */

.main-certificates__image {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 1 1 auto;

    width: 100%;
    min-height: 350px;

    margin-bottom: 20px;
}


/*
 * Одинаковая высота сертификатов.
 * Ширина остается автоматической,
 * поэтому изображения НЕ искажаются.
 */

.main-certificates__image img {
    display: block;

    width: auto;
    height: 345px;

    max-width: 100%;

    object-fit: contain;
}


/* =========================================================
   ZOOM
========================================================= */

.main-certificates__zoom {
    position: absolute;

    right: 10px;
    bottom: 10px;

    width: 48px;
    height: 48px;

    background: rgba(34, 34, 34, 0.55);
    border-radius: 50%;

    opacity: 0;
    visibility: hidden;

    transform: scale(0.9);

    transition:
        opacity 0.2s ease,
        visibility 0.2s ease,
        transform 0.2s ease;
}


/* Показываем лупу только при наведении */

.main-certificates__link:hover .main-certificates__zoom,
.main-certificates__link:focus .main-certificates__zoom {
    opacity: 1;
    visibility: visible;

    transform: scale(1);
}


/* Круг лупы */

.main-certificates__zoom::before {
    content: "";

    position: absolute;

    top: 13px;
    left: 13px;

    width: 15px;
    height: 15px;

    border: 2px solid #fff;
    border-radius: 50%;
}


/* Ручка лупы */

.main-certificates__zoom::after {
    content: "";

    position: absolute;

    top: 29px;
    left: 27px;

    width: 9px;
    height: 2px;

    background: #fff;

    transform: rotate(45deg);
    transform-origin: left center;
}


/* =========================================================
   CAPTION
========================================================= */

.main-certificates__name {
    flex: 0 0 auto;

    min-height: 48px;

    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;

    color: rgba(34, 34, 34, 0.75);
    text-align: center;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    .main-certificates {
        padding: 30px 0 40px;
    }

    .main-certificates__header {
        padding: 30px;
    }

    .main-certificates__title {
        font-size: 27px;
    }

    .main-certificates__content {
        gap: 14px;

        padding: 30px;
    }

    .main-certificates__link {
        padding: 18px;
    }

    .main-certificates__image {
        min-height: 270px;
    }

    .main-certificates__image img {
        height: 265px;
    }

    .main-certificates__name {
        font-size: 14px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

    .main-certificates {
        padding: 25px 0 35px;
    }

    .main-certificates__inner {
        border-radius: 15px;
    }

    .main-certificates__header {
        padding: 25px 20px;
    }

    .main-certificates__title {
        font-size: 24px;
    }

    .main-certificates__content {
        flex-direction: column;

        gap: 15px;

        padding: 20px;
    }

    .main-certificates__link {
        padding: 20px;

        border-radius: 15px;
    }

    .main-certificates__image {
        min-height: auto;

        margin-bottom: 18px;
    }

    .main-certificates__image img {
        width: auto;
        height: auto;

        max-width: 100%;
        max-height: 400px;
    }

    .main-certificates__name {
        min-height: 0;

        font-size: 15px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 479.98px) {

    .main-certificates__header {
        padding: 22px 18px;
    }

    .main-certificates__title {
        font-size: 22px;
    }

    .main-certificates__content {
        padding: 15px;
    }

    .main-certificates__link {
        padding: 18px;
    }

    .main-certificates__image img {
        max-height: 350px;
    }
}



















/* =========================================================
   NEWS + ARTICLES
========================================================= */

.main-publications {
    padding: 35px 0 50px;

    background-color: var(--sd-light);
    background-repeat: no-repeat;
    background-position: right center;
}


/* =========================================================
   ROW
========================================================= */

.main-publications__row {
    display: flex;
    align-items: stretch;

    gap: 20px;
}


/* =========================================================
   CARD
========================================================= */

.main-publications-card {
    display: flex;
    flex-direction: column;

    flex: 1 1 0;
    min-width: 0;

    overflow: hidden;

    background: #e7e7e7;
    border-radius: 18px;
}


/* =========================================================
   HEADER
========================================================= */

.main-publications-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 25px;

    padding: 35px 38px 28px;

    border-bottom: 1px solid rgba(34, 34, 34, 0.08);
}

.main-publications-card__title {
    margin: 0;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* All link */

.main-publications-card__all {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex: 0 0 auto;

    padding-bottom: 2px;

    border-bottom: 1px solid rgba(34, 34, 34, 0.45);

    font-family: 'Exo 2', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.2;

    color: var(--sd-dark);
    text-transform: uppercase;
    text-decoration: none;
}

.main-publications-card__all:hover,
.main-publications-card__all:focus {
    color: var(--sd-dark);
    text-decoration: none;

    border-bottom-color: transparent;
}

.main-publications-card__all-arrow {
    font-size: 16px;
    line-height: 1;
}


/* =========================================================
   LIST
========================================================= */

.main-publications-card__list {
    padding: 18px 38px 32px;
}


/* =========================================================
   ITEM
========================================================= */

.publication-item {
    border-bottom: 1px solid rgba(34, 34, 34, 0.12);
}

.publication-item:last-child {
    border-bottom: 0;
}


/* =========================================================
   NEWS ITEM
========================================================= */

.publication-item--news {
    padding: 23px 0 20px;
}


/* =========================================================
   ARTICLE ITEM
========================================================= */

.publication-item--article {
    display: flex;
    align-items: flex-start;

    gap: 15px;

    padding: 20px 0;
}

.publication-item__content {
    flex: 1 1 auto;
    min-width: 0;
}


/* =========================================================
   ARTICLE IMAGE
========================================================= */

.publication-item__image {
    flex: 0 0 52px;

    width: 52px;
    height: 52px;

    overflow: hidden;

    border-radius: 50%;
}

.publication-item__image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* =========================================================
   ITEM TITLE
========================================================= */

.publication-item__title {
    display: inline;

    font-family: 'Exo 2', sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.3;

    color: var(--sd-dark);
    text-transform: uppercase;
    text-decoration: none;
}


/* Именно такое поведение видно на hover-макете */

.publication-item__title:hover,
.publication-item__title:focus {
    color: var(--sd-dark);
    text-decoration: underline;
}


/* =========================================================
   META
========================================================= */

.publication-item__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    margin-top: 18px;

    font-size: 13px;
    font-weight: 400;
    line-height: 1.3;

    color: rgba(34, 34, 34, 0.65);
}


/* Yellow dot */

.publication-item__separator {
    display: block;

    width: 4px;
    height: 4px;

    border-radius: 50%;
    background: #a6b900;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    .main-publications {
        padding: 30px 0 40px;
    }

    .main-publications-card__head {
        padding: 28px 25px 24px;
    }

    .main-publications-card__title {
        font-size: 27px;
    }

    .main-publications-card__list {
        padding: 15px 25px 25px;
    }

    .publication-item__title {
        font-size: 15px;
    }

    .publication-item__image {
        flex-basis: 46px;

        width: 46px;
        height: 46px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

    .main-publications {
        padding: 25px 0 35px;
    }

    .main-publications__row {
        flex-direction: column;

        gap: 15px;
    }

    .main-publications-card {
        border-radius: 15px;
    }

    .main-publications-card__head {
        padding: 25px 20px 20px;
    }

    .main-publications-card__title {
        font-size: 24px;
    }

    .main-publications-card__all {
        font-size: 12px;
    }

    .main-publications-card__list {
        padding: 10px 20px 22px;
    }

    .publication-item--news {
        padding: 20px 0 17px;
    }

    .publication-item--article {
        padding: 18px 0;
    }

    .publication-item__title {
        font-size: 15px;
    }

    .publication-item__meta {
        margin-top: 13px;

        font-size: 12px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 479.98px) {

    .main-publications-card__head {
        gap: 15px;

        padding: 22px 18px 18px;
    }

    .main-publications-card__title {
        font-size: 22px;
    }

    .main-publications-card__all {
        font-size: 11px;
    }

    .main-publications-card__list {
        padding-left: 18px;
        padding-right: 18px;
    }

    .publication-item--article {
        gap: 12px;
    }

    .publication-item__image {
        flex-basis: 44px;

        width: 44px;
        height: 44px;
    }
}























/* ========================================================================================================================
   CONTACTS
=========================================================================================================================== */

.main-contacts {
    padding: 55px 0 50px;

    background-color: var(--sd-light);
    background-image: url('/images/redesign/contacts-bg.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}


/* =========================================================
   LAYOUT
========================================================= */

.main-contacts__inner {
    display: flex;
    align-items: flex-start;

    gap: 90px;
}


/* =========================================================
   LEFT COLUMN
========================================================= */

.main-contacts__info {
    flex: 1 1 52%;
    min-width: 0;
}

.main-contacts__title {
    margin: 0 0 40px;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* =========================================================
   CONTACTS
========================================================= */

.main-contacts__contacts {
    display: flex;
    gap: 70px;

    margin-bottom: 22px;
}

.main-contacts__contact {
    flex: 1 1 0;
    min-width: 0;
}

.main-contacts__label {
    margin-bottom: 8px;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.3;

    color: rgba(34, 34, 34, 0.65);
}

.main-contacts__value {
    display: inline-block;

    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;

    color: var(--sd-dark);
    text-decoration: none;
}

.main-contacts__value:hover,
.main-contacts__value:focus {
    color: var(--sd-dark);
    text-decoration: underline;
}


/* =========================================================
   MAP PLACEHOLDER
========================================================= */

.main-contacts__map {
    width: 100%;

    margin-bottom: 22px;

    overflow: hidden;

    border-top: 1px solid rgba(34, 34, 34, 0.35);
    border-bottom: 1px solid rgba(34, 34, 34, 0.35);
}

.main-contacts__map-inner {
    width: 100%;
    min-height: 255px;

    background-image: url('/images/redesign/map-placeholder.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}


/* =========================================================
   ADDRESS
========================================================= */

.main-contacts__address-value {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;

    color: var(--sd-dark);
}


/* =========================================================
   RIGHT COLUMN
========================================================= */

.main-contacts__form-wrap {
    flex: 1 1 43%;
    min-width: 0;

    padding-top: 70px;
}

.main-contacts__form-title {
    margin: 0 0 25px;

    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;

    color: var(--sd-dark);
    text-transform: uppercase;
}


/* =========================================================
   FORM
========================================================= */

.main-contacts__field {
    margin-bottom: 16px;
}

.main-contacts__input {
    display: block;

    width: 100%;
    min-height: 48px;

    padding: 12px 15px;

    border: 1px solid transparent;
    border-radius: 0;

    background: #fff;

    font-family: 'Exo 2', sans-serif;
    font-size: 14px;
    font-weight: 400;

    color: var(--sd-dark);

    outline: 0;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease;
}

.main-contacts__input::placeholder {
    color: rgba(34, 34, 34, 0.65);
}

.main-contacts__input:hover {
    border-color: rgba(34, 34, 34, 0.2);
}

.main-contacts__input:focus {
    border-color: rgba(34, 34, 34, 0.45);
    background: #fff;
}


/* =========================================================
   AGREEMENT
========================================================= */

.main-contacts__agreement {
    margin-top: 18px;
}

.main-contacts__agreement .custom-control {
    min-height: 22px;
}

.main-contacts__agreement .custom-control-label {
    padding-left: 8px;

    font-size: 13px;
    font-weight: 400;
    line-height: 1.45;

    color: var(--sd-dark);

    cursor: pointer;
}

.main-contacts__agreement a {
    color: var(--sd-dark);
    text-decoration: underline;
}

.main-contacts__agreement a:hover,
.main-contacts__agreement a:focus {
    color: var(--sd-dark);
    text-decoration: none;
}


/* Checkbox */

.main-contacts__agreement .custom-control-label::before {
    border-radius: 0;
    background: #fff;
}

.main-contacts__agreement
.custom-control-input:checked
~ .custom-control-label::before {
    border-color: var(--sd-dark);
    background-color: #fff;
}

.main-contacts__agreement
.custom-control-input:checked
~ .custom-control-label::after {
    background-image: none;

    width: 7px;
    height: 11px;

    top: 4px;
    left: -18px;

    border-right: 1px solid var(--sd-dark);
    border-bottom: 1px solid var(--sd-dark);

    transform: rotate(45deg);
}


/* =========================================================
   REQUIRED
========================================================= */

.main-contacts__required {
    margin: 15px 0 35px;
    padding-left: 28px;

    font-size: 12px;
    font-weight: 400;
    line-height: 1.3;

    color: var(--sd-dark);
}


/* =========================================================
   SUBMIT
========================================================= */

.main-contacts__submit {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 48px;

    padding: 12px 25px;

    border: 0;

    background: var(--sd-dark);

    font-family: 'Exo 2', sans-serif;
    font-size: 14px;
    font-weight: 400;

    color: #fff;
    text-transform: uppercase;

    cursor: pointer;

    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

.main-contacts__submit:hover,
.main-contacts__submit:focus {
    background: var(--sd-dark);
    color: var(--sd-yellow);

    outline: 0;
}


/* =========================================================
   TECHNICAL FIELDS
========================================================= */

.main-contacts .h_field,
.main-contacts .jobmail-wrap {
    display: none !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    .main-contacts {
        padding: 45px 0;
    }

    .main-contacts__inner {
        gap: 45px;
    }

    .main-contacts__title {
        margin-bottom: 30px;

        font-size: 28px;
    }

    .main-contacts__contacts {
        gap: 30px;
    }

    .main-contacts__value,
    .main-contacts__address-value {
        font-size: 18px;
    }

    .main-contacts__form-wrap {
        padding-top: 55px;
    }

    .main-contacts__map-inner {
        min-height: 230px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

    .main-contacts {
        padding: 35px 0;
    }

    .main-contacts__inner {
        flex-direction: column;
        gap: 45px;
    }

    .main-contacts__info,
    .main-contacts__form-wrap {
        width: 100%;
    }

    .main-contacts__form-wrap {
        padding-top: 0;
    }

    .main-contacts__title {
        margin-bottom: 25px;

        font-size: 24px;
    }

    .main-contacts__contacts {
        gap: 20px;
    }

    .main-contacts__map-inner {
        min-height: 250px;
    }

    .main-contacts__form-title {
        font-size: 20px;
    }

    .main-contacts__required {
        margin-bottom: 25px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 479.98px) {

    .main-contacts__contacts {
        flex-direction: column;

        gap: 15px;
    }

    .main-contacts__value,
    .main-contacts__address-value {
        font-size: 17px;
    }

    .main-contacts__map-inner {
        min-height: 220px;
    }

    .main-contacts__required {
        padding-left: 0;
    }
}











