@font-face {
    font-family: 'Rubik';
    src: url('../fonts/Rubik-Variable/Rubik-Variable.woff2') format('woff2');
    font-weight: 100 1000;
    font-optical-sizing: auto;
    font-stretch: 0% 200%;
    font-style: normal;
    font-display: swap;
}

/* ! дополнительные сервисы начало */

.extra-services__container-wrapper * {
    box-sizing: border-box;
}

.extra-services__container-wrapper {
    --extra-services__container--max-width: 1350px;

    /* семейства шрифтов начало */
    --font-family-rubik: "Rubik";
    /* семейства шрифтов конец */

    /* цвета начало */

    /* цвета шрифтов начало */
    --font-color-black: #000000;
    --font-color-gray-6: #cccccc;
    --font-color-blue-2: #008cff;
    --font-color-blue-4: #43aaff;
    /* цвета шрифтов конец */

    /* цвета фонов начало */
    --background-color-white: #ffffff;
    --background-color-blue-1: #e8f3fa;
    --background-color-blue-2: #b5e2fd;
    --background-color-blue-3: #008cff;
    /* цвета фонов конец */

    /* цвета конец */

    margin: 0 auto;
    max-width: 100%;
    width: 100%;
    margin-bottom: 63px;
}

.extra-services__background-color-blue-1 {
    background-color: var(--background-color-blue-1);
}

.extra-services__background-color-blue-2 {
    background-color: var(--background-color-blue-2);
}

.extra-services__font-color-blue-2 {
    color: var(--font-color-blue-2);
}

.extra-services__mb-35px {
    margin-bottom: 35px !important;
}

.extra-services__title {
    text-align: center;
    padding: 1rem;
    font-family: var(--font-family-rubik);
    font-size: 35px;
    font-weight: 500;
    line-height: 1.18em;
    letter-spacing: 0px;
    padding: 0;
    margin-bottom: 14px;
    color: var(--font-color-black);
}

.extra-services__title-blue {
    color: var(--font-color-blue-4);
}

.extra-services__item {
    position: relative;
    font-family: var(--font-family-rubik);
    margin: 0 auto;
    max-width: var(--extra-services__container--max-width);
    max-width: 680px;
    min-height: 225px;
    width: 100%;
    padding: 1rem;
    padding-top: 35px;
    padding-left: 30px;
    border-radius: 45px;
}

.extra-services__item-box-shadow {
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.3);
}

.extra-services__item-title {
    color: var(--font-color-black);
    font-family: var(--font-family-rubik);
    font-size: 30px;
    font-weight: 400;
    line-height: 40px;
    letter-spacing: -2px;
    text-align: left;
    padding: 0;
    margin-bottom: 16px;
    /* max-width: 478px; */
    max-width: 500px;
    width: 100%;
}

.extra-services__item-details {
    color: var(--font-color-black);
    font-family: var(--font-family-rubik);
    font-size: 18px;
    font-weight: 300;
    line-height: 21px;
    letter-spacing: 0px;
    text-align: left;
    padding: 0;
    margin-bottom: 55px;
    /* max-width: 478px; */
    /* max-width: 485px; */
    max-width: 500px;
    width: 100%;
}

.extra-services__item-button {
    display: block;
    position: absolute;
    bottom: 23px;
    max-width: 144px;
    max-height: 39px;
    width: 100%;
    height: 100%;
    font-family: var(--font-family-rubik);
    color: var(--background-color-white);
    background-color: var(--background-color-blue-3);
    font-size: 18px;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: 0px;
    text-align: center;
    padding: 0;
    border-radius: 10px;
    outline: none;
    border: none;
    transition: 0.3s all ease-out;
    cursor: pointer;
    z-index: 100;
}

.extra-services__item-button:hover {
    font-weight: 600;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.3);
}

.extra-services__item-button:hover~.extra-services__item-banner {
    transform: scale(1.1);
}

.extra-services__item-banner {
    position: absolute;
    max-width: 212px;
    z-index: 100;
    right: -10%;

    /* top: 7%; */

    --height: height;

    /* 
    * выравнивание по вертикали (по-центру)
    * отступ_сверху = 50% - текущая_высота / 2
    */
    top: calc(50% - 197px / 2);

    transition: 0.5s all ease-out;
}

.extra-services__item-banner img {
    all: initial;
}

.extra-services__item-banner img {
    width: 100%;
    height: auto;
    object-fit: contain !important;
}

.extra-services__item-logo {
    position: absolute;
    content: '';

    right: 0;
    max-width: 212px;
    max-height: 197px;
    /* max-width: 266px;
    max-height: 248px; */

    min-width: 100px;

    width: 100%;
    height: 100%;

    top: calc(50% - 197px / 2);

    /* height: 100px; */

    background-color: var(--font-color-gray-6);
    z-index: 100;
}

/* ! дополнительные сервисы конец */

/* ! медиа-запросы начало */

@media screen and (max-width: 830px) {
    .extra-services__item {
        margin-left: 20px;
    }
}

@media screen and (max-width: 780px) {
    .extra-services__item {
        margin: 0 auto;
        max-width: 580px;
        min-height: 300px;
    }

    .extra-services__item-title {
        font-size: 25px;
        line-height: 30px;
        max-width: 378px;
    }

    .extra-services__item-details {
        max-width: 378px;
    }

    .extra-services__item-banner {
        max-width: 212px;
        right: -10%;
        bottom: 12%;
    }
}

@media screen and (max-width: 720px) {
    .extra-services__item {
        margin-left: 20px;
        margin-right: 20px;
    }
}

@media screen and (max-width: 670px) {
    .extra-services__item {
        margin: 0 auto;
        max-width: 550px;
        min-height: 250px;
    }

    .extra-services__item-title {
        font-size: 25px;
        line-height: 30px;
        max-width: 378px;
    }

    .extra-services__item-details {
        max-width: 378px;
    }

    .extra-services__item-banner {
        max-width: 120px;
        right: 3%;
        top: 4%;
    }
}


@media screen and (max-width: 574px) {
    .extra-services__item {
        margin: 0 auto;
        max-width: 500px;
        min-height: 250px;
        padding-top: 30px;
        padding-left: 20px;
    }

    .extra-services__item-title {
        font-size: 25px;
        line-height: 25px;
        max-width: 330px;
    }

    .extra-services__item-details {
        max-width: 330px;
    }

    .extra-services__item-banner {
        max-width: 120px;
        right: 3%;
        top: 4%;
    }
}

@media screen and (max-width: 520px) {
    .extra-services__item {
        margin: 0 auto;
        max-width: 460px;
        min-height: 250px;
        padding-top: 30px;
        padding-left: 20px;
    }

    .extra-services__item-title {
        font-size: 25px;
        line-height: 25px;
        max-width: 300px;
    }

    .extra-services__item-details {
        max-width: 300px;
    }

    .extra-services__item-banner {
        max-width: 120px;
        right: 3%;
        top: 4%;
    }
}

@media screen and (max-width: 480px) {
    .extra-services__item {
        max-width: 420px;
        min-height: 250px;
        padding-top: 30px;
        padding-left: 20px;
    }

    .extra-services__item-title {
        font-size: 25px;
        line-height: 25px;
        max-width: 260px;
        letter-spacing: normal;
    }

    .extra-services__item-details {
        max-width: 260px;
    }

    .extra-services__item-banner {
        max-width: 120px;
        right: 3%;
        top: 4%;
    }
}

@media screen and (max-width: 430px) {
    .extra-services__item {
        max-width: 370px;
        min-height: 250px;
        padding-top: 30px;
        padding-left: 10px;
    }

    .extra-services__item-title {
        font-size: 20px;
        line-height: 20px;
        max-width: 220px;
    }

    .extra-services__item-details {
        font-size: 16px;
        line-height: 16px;
        max-width: 220px;
    }

    .extra-services__item-banner {
        max-width: 120px;
        right: 3%;
        top: 4%;
    }
}

@media screen and (max-width: 380px) {
    .extra-services__item {
        max-width: 350px;
        min-height: 250px;
        padding-top: 30px;
        padding-left: 10px;
    }

    .extra-services__item-title {
        font-size: 20px;
        line-height: 20px;
        max-width: 200px;
    }

    .extra-services__item-details {
        font-size: 16px;
        line-height: 16px;
        max-width: 200px;
    }

    .extra-services__item-banner {
        max-width: 120px;
        right: 3%;
        top: 4%;
    }
}

@media screen and (max-width: 360px) {
    .extra-services__item {
        max-width: 90%;
        min-height: 250px;
        padding-top: 60px;
        padding-left: 10px;
    }

    .extra-services__item-title {
        font-size: 20px;
        line-height: 20px;
        max-width: 100%;
    }

    .extra-services__item-details {
        font-size: 16px;
        line-height: 16px;
        max-width: 100%;
    }

    .extra-services__item-banner {
        max-width: 70px;
        right: 3%;
        top: -10px;
    }
}


/* ! медиа-запросы конец */