#loader{
    position: fixed;
    z-index: 9999999;
    width: 100%;
    height: 100%;
    background: rgba(250, 250, 250, 0.6) url(/images/common/ring.svg) no-repeat 50% 45%;
}
.ft_logo {
    width: 198px;
    height: auto;
}
/* alerts */
#alert__msg{
    padding: 30px 40px 30px 40px;
    background: #fefefe;
    color: #324554;
    border: 1px solid #efefef;
    font-family: inherit;
    font-size: 18px;

    position: fixed;
    z-index: 999999;
    top: 120px;
    width: 450px;
    box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
    display: none;
}
@media (max-width: 750px) {
    .promo_block_cookie {
        width: 90% !important;
    }
}

@media (max-width: 420px) {
    .promo_block_cookie_wrapper {
        flex-direction: column !important;
    }
    .promo_block_cookie_wrapper_btntrue{
        width: 100% !important;
    }
}

.promo_block_cookie {
    left: 0;
    width: 100%;
    height: fit-content;
    position: fixed;
    bottom: 0;
    background-color: rgb(51, 51, 51);
    padding: 15px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.promo_block_cookie_wrapper {
    display: flex;
    justify-content: center;
    flex-direction: row;
    gap: 10px;
}

.promo_block_cookie_wrapper_text {
    font-family: Roboto, sans-serif !important;
    font-size: 14px;
    color: white;
    line-height: 1.5;
    align-content: center;
}

.promo_block_cookie_wrapper_btntrue {
    font-family: Roboto, sans-serif !important;
    width: 60px;
    height: 38px;
    background-color: #EC671A;
    border: none;
    border-radius: 5px;
    padding: 10px 10px;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.alert__title{
    font-weight: bold;
    text-align: center;
}

.alert_message{
    line-height: 1.2;
    padding-top: 10px;
    font-size: 16px;
}

.alert__ok{
    width: 95px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 700;

    background: silver;
    border: 0;
    border-radius: 3px;
    text-align: center;

    padding: 3px 0px 3px 0px;
    margin-top: 20px;
    cursor: pointer;
    font-size: 14px;
    margin-left: auto;
    margin-right: auto;
}

/* loader cover */
.local-cover{
    position: absolute;
    z-index: 99999;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(255,255,255,0.75) url(/images/common/loader.svg) no-repeat 50% 50%;
}
body{
    overflow-x: hidden;
}
h4{
    font-weight: 600;
    font-size: 40px;
    line-height: 32px;
    color: #000;
}
header .btn-account{
    box-shadow: 0px 2px 13px rgba(0, 0, 0, 0.18);

}
.col-card.main a{height: 100% !important}


/* SLIDER */
.carousel {
    margin-top: 0px;
    margin-bottom: 50px;
}
.carousel-control-prev {
    left: 0;
}
.container.under{
    display: none;
}
.carousel-control-next {
    right: 0;
}
.carousel-caption h4, .carousel-caption-content h4 {
    margin-bottom: 40px;
}

.control {
    width: 95%; /* Занимает почти всю ширину экрана */
    max-width: 100%; /* Ограничиваем ширину */
    position: absolute;
    height: 100%;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.cont-c {
    position: absolute;
    top: 40%;
    left: 0;
    width: 100%;
    height: 50px;
    z-index: 10;
    display: flex;
    justify-content: center; /* Центрируем содержимое внутри контейнера */
    margin: 0 auto; /* Центрируем сам контейнер */
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .control {
        max-width: 540px;
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .control {
        max-width: 720px;
        width: 100%;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .control {
        max-width: 960px;
        width: 100%;
    }
}
@media (max-width: 1199.9px) and (min-width: 1000px) {
    .control {
        max-width: 95%;
        width: 100%;
    }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .control {
        max-width: 1140px;
        width: 100%;
    }
}

@media (min-width: 1400px) {
    .control {
        max-width: 1320px;
        width: 100%;
    }
}
@media (max-width: 1568px) {
    .col-card2{
        width: calc(34.6% - 40px) !important;
        flex: none!important;
    }
    .adv-block2 {
        display: flex
    ;
        width: calc(50% - 12.5px) !important;

    }
    .advantages2 {
        display: flex
    ;
        flex-wrap: wrap;
        row-gap: 30px!important;
        column-gap: 25px!important;
    }

}

@media (min-width: 1600px) and (max-width: 1749.98px) {
    .control {
        max-width: 1400px;
        width: 100%;
    }

}

@media (min-width: 1750px) {
    .control {
        max-width: 1500px;
        width: 100%;
    }
}

@media (max-width: 1750px) {
    .logo-col {
        width: 45% !important;
    }
}

@media (max-width: 1599px) {
    .logo-col {
        width: 43.7% !important;
    }
}

/* Контейнер для изображения */
.carousel-image-container {
    position: relative;
    width: 100%;
    height: 100%;
}

/* Изображение в слайдере */
.carousel-item img {
    width: 100%;
    max-height: 838px;
    min-height: 450px;
    height: 100%;
    object-fit: cover; /* Заполнение изображения с сохранением пропорций */
}
#secondCarousel .carousel-item img {

    min-height: 500px;
}

/* Градиент поверх изображения */
.carousel-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
            to right,
            rgba(2, 2, 3, 1) 0%,        /* #020203 с непрозрачностью 100% */
            rgba(2, 2, 3, 0.62) 45%,   /* #020203 с непрозрачностью 62% */
            rgba(161, 49, 57, 0.30) 100%, /* #A13139 с непрозрачностью 18% */
            rgba(2, 2, 3, 0.18) 100%   /* #020203 с непрозрачностью 18% */
    );
    pointer-events: none; /* Позволяет кликам проходить через градиент */
    z-index: 1; /* Расположение поверх изображения */
}
.container.adv-cont{
    padding: 100px 0;
}
.container.form-cont{
    padding: 100px 0;
}
.container.top{
    padding:50px 0;
}
/* Стили для текста и кнопки */
.carousel-caption {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); /* Центрирование по вертикали */
    color: white; /* Цвет текста */
    padding: 20px;
    padding-left: 0!important;
    text-align: left;
    z-index: 2;
}
#secondCarousel .carousel-caption{
    margin-left: 80px;
}
.carousel-caption h5, .carousel-caption-content h5 {
    font-size: 48px; /* Размер заголовка */
    margin-bottom: 10px; /* Отступ между заголовком и текстом */
    font-weight: bold;
}
.carousel-caption h6, .carousel-caption-content h6 {
    font-size: 28px;
    margin-bottom: 10px;
    font-weight: normal;
}

.carousel-caption p, .carousel-caption-content p {
    font-size: 20px; /* Размер текста */
    font-weight: normal;
}
.carousel-caption p.slider-2, .carousel-caption-content p.slider-2{
    font-size: 16px; /* Размер текста */
    font-weight: normal;
    overflow: hidden; /* Hide overflowed content */
    text-overflow: ellipsis; /* Display ellipsis */
    display: -webkit-box;
    -webkit-line-clamp: 10; /* Limits to 10 lines */
    -webkit-box-orient: vertical;
}
.carousel-caption .btn {
    margin-top: 50px; /* Отступ между текстом и кнопкой */
}


.vector {
    cursor: pointer;
}

/* Стили для кнопки */
.btn-primary {
    background-color: #A13139;
    border-color: #A13139;
    color: white;
    padding: 10px 20px;
    border-radius: 18px;
}

.btn-primary:hover {
    background-color: #A13139;
    border-color: #A13139;
    opacity: 0.8;
}
.fixed_header {
    position: fixed;
    top: 0;
    box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.1);

    width: 100%;
    z-index: 10000;
    background-color: #fff;
}
/* CARD SERVICE */
.row.card-row{
    display: flex;
    flex-wrap: wrap; /* Позволяем карточкам переноситься на следующую строку */
    gap: 40px; /* Отступы между карточками */
    justify-content: center; /* Центрируем карточки по горизонтали */
}

.col-card {
    width:  calc(33.333% - 40px); /* Карточки занимают треть ширины строки с учетом gap */
    display: flex;
    justify-content: center;
    align-items: stretch; /* Все карточки растягиваются по высоте */
    padding-bottom: 0; /* Убираем лишние отступы */
}

.col-card2 {
    width: calc(25% - 40px); /* Карточки занимают треть ширины строки с учетом gap */
    display: flex;
    justify-content: center;
    align-items: stretch; /* Все карточки растягиваются по высоте */
    padding-bottom: 0; /* Убираем лишние отступы */
}

.my-card {
    height: 100%;
    border-radius: 20px;
    box-shadow: 0px 10px 50px rgba(26, 54, 236, 0.08);
    padding: 20px;
    width: 100%; /* Карточка занимает всю доступную ширину */
    display: flex;
    flex-direction: column; /* Расположение содержимого вертикально */
    justify-content: space-between; /* Распределяем пространство равномерно */
    align-items: center; /* Центрируем содержимое по горизонтали */
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.my-card2 {
    height: 100%;

    border-radius: 20px;
    box-shadow: 0px 10px 50px rgba(26, 54, 236, 0.08);
    padding: 20px;
    width: 100%; /* Карточка занимает всю доступную ширину */
    display: flex;
    flex-direction: column; /* Расположение содержимого вертикально */
    justify-content: space-between; /* Распределяем пространство равномерно */
    align-items: center; /* Центрируем содержимое по горизонтали */
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.my-card:hover {
    box-shadow: 0px 10px 50px rgba(26, 54, 236, 0.2);
    transform: translateY(-3px);
}
.card-text {
    color: #020203;
    font-size: 20px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    width: 67%;
    min-height: 90px; /* Минимальная высота для выравнивания текста */
}

.card-text2 {
    color: #020203;
    font-size: 20px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    width: 67%;
    min-height: 90px; /* Минимальная высота для выравнивания текста */
    margin: 0;
}

.card-text3 {
    color: #020203;
    font-size: 20px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    width: 99%;
    min-height: 90px; /* Минимальная высота для выравнивания текста */
    margin: 0;
}

.back {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; /* Ограничиваем ширину изображения */
    height: 160px;
}

.back2 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; /* Ограничиваем ширину изображения */
    height: 110px;
}

.ser-button {
    width: 215px;
    height: 58px;
    font-family: Montserrat, sans-serif;
    font-size: 16px;
    font-weight: 500;
    border: none;
    border-radius: 18px;
    background-color: #ffffff;
    margin-bottom: 10px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
}
.ser-button:hover {
color: #EC671A!important;
}
#secondCarousel{
    margin: 50px 0;
}
.col-card-adv{
    padding-bottom: 0;
    width: calc(50% - 20px);
}
.col-card-adv .my-card .back{
    height: 108.5px!important;
}
.col-card-adv .my-card .card-text{
    width: 90%!important;
}
.btns-adv{
    display: flex;
    padding-top: 50px
}

.slide-head {
    font-family: Montserrat, sans-serif;
    font-size: 24px;
    font-weight: 400;
}
/* STEPS */
.step-box {
    display: flex;
    align-items: flex-start; /* Выравнивание по верхнему краю */
    gap: 50px; /* Промежуток между номером и текстом */
    width: 100%; /* На случай, если flexbox используется в колонке */
    color: #000000;
}

/* Карточка номера */
.card-step-number {
    border-radius: 12px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    padding: 22px 36.84px;
    line-height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    font-size: 20px;
    min-width: 50px;
    width: auto;
}
.step-box-extra-margin{
    margin-left: 90px; /* Добавляем отступ только для второго шага */
}
/* Карточка текста */
.card-step-text {
    border-radius: 12px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    padding: 25px 30px;
    flex-grow: 1; /* Текст растягивается, занимая оставшееся пространство */
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.card-step-text p{
    line-height: normal!important;
}
.card-step-text:hover {
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.2);
    transform: translateY(-3px);
}

    @media (max-width:850px) {

        .ser-button {
            width: 85%;
            max-width:215px ;
        }
        p.card-text3 {
            font-size: 17px!important;
        }
    }

.col-steps{
    width: calc(50% - 50px);
    margin-top: 50px;
    flex: 0 0 auto;
}
/*FORM*/
.form-card{
    border-radius:20px;
    box-shadow: 0 8px 30px rgba(26, 54, 236, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.13);
    padding: 33px 10px;

}
.col-form{
    width: 62%;
    margin-right: 4%;

}
.col-form-img{
    width: 34%;

}
.col-form-img img{
    width: 100%;
    border-radius: 20px;
}
/* Убираем стандартный бордер при фокусе */
.select-wrapper select:focus {
    outline: none;  /* Убираем стандартное выделение */
    border: none;  /* Можно задать свой бордер */
}

/* Стили для самого селекта */
.select-wrapper select {

    appearance: none; /* Убирает стандартный стиль селекта в некоторых браузерах */
    -webkit-appearance: none; /* Для Safari */
    -moz-appearance: none; /* Для Firefox */

    transition: all 0.3s ease;
}



/* Добавляем кастомный стрелочный значок */
.select-wrapper {
    position: relative;
}



/* Сделать выпадающий список более красивым */
.select-wrapper select option {
    padding: 10px;
    font-size: 16px;
}

/* Цвет при наведении на элементы выпадающего списка */
.select-wrapper select option:hover {
    background-color: #ddd;
    color: #333;
}

input.form-contr:focus,
select.form-contr:focus {
    border: 1px solid #000000; /* Черная граница */
    outline: none; /* Убираем стандартное выделение */
}


input.form-contr, select.form-contr{
    position: relative;
    font-size: 16px;
    font-weight: normal;
    height: 70px;
    background-color: rgba(2, 2, 3, 0.08);
    width: 100%;
    color: #000000;
    padding-left: 20px;
    border: none;
    border-radius: 18px;
}
select.form-contr{
    color: #747474;
    appearance: none;
    background-image: url('/images/select.svg');
    background-repeat: no-repeat;
    background-position: right 15px center;
}

.form-input{
    position: relative;
    padding: 15px 15px;
}
/*FOOTER*/
.footer {
    background-color: #020203;
    color: #fff;
    padding: 50px 0 0 0 ;
}
.footer .logo-text p {
    margin-top: 10px;
    font-size: 15px;
}
.contacts p{
    font-size: 15px;
    font-weight: normal;
    font-size: 15px;
    padding: 5px 0;
    text-decoration: none;
    margin: 0;
    padding: 0;
}
.footer .contact a {
    color: #fff;
    text-decoration: none;
}
.logo-col p{
    max-width: 403px;
}
.footer .bottom-bar {
    background-color: #EC671A;
    color: #fff;
    padding: 20.5px 0;
    display: flex;
    font-size: 15px;
    font-weight: normal;

}
.footer .bottom-bar .links a {
    text-decoration: none;
}
.footer .social-icons a {
    color: #fff;
    margin: 0 3px;
}
.social-icons{padding-top: 20px}
.footer h5{
    font-weight: 600!important;
}
.footer a{
    text-decoration: none!important;
}
.footer ul,.list{
    padding-top: 10px;
}
.footer li{
    font-weight: normal;
    font-size: 15px;
    padding: 5px 0;
    text-decoration: none;
}
a{
    color: #fff;
}
.col-footer{
    width: 17%;
}
.logo-col {
    width: 46.8%;
}
@media (max-width: 1200px) {
    .col-footer{width: 23%!important;margin-right: 1%!important;}
}
.mobile-menu{
    width: auto;
    margin-left: 20px;
    display: none;
}

.mobile-menu img{
    max-width: 30px;
}
/* Скрытый сайдбар для мобильного меню */
.mobile-sidebar {
    position: fixed;
    top: 0;
    left: -65%;
    width: 65%;
    height: 100%;
    background-color: #19191af2;
    color: white;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.5);
    transition: left 0.3s ease;
    z-index: 999;
    overflow-y: auto;
}

/* Активное состояние */
.mobile-sidebar.active {
    left: 0;
}

/* Список навигации */
.mobile-nav {
    list-style: none;
    padding: 50px 20px;
    margin: 0;
}

.mobile-nav .nav-item {
    margin-bottom: 15px;
}

.mobile-nav .nav-link {
    color: white;
    text-decoration: none;
    font-size: 18px;
}

.mobile-nav .nav-link:hover {
    text-decoration: underline;
}

/* Кнопка закрытия */
.close-btn {
    position: absolute;
    right: 15px;
    background: none;
    border: none;
    color: white;
    font-size: 40px;
    cursor: pointer;
}

.div-container-acc {
    display:flex;
    justify-content: center;
    width: 100%;
}

.container-acc {
    width: 1520px;
}

.container-vac {
    width: 1520px;
}

.container-serv {
    width: 1560px;
    padding-left: 20px;
    padding-right: 20px;
}

.profile {
    margin-top: 320px;
    font-family: Montserrat, sans-serif;
    font-size: 48px;
    font-weight: bold;
    margin-bottom: 60px;
}

.form-cont-flex {
    display: flex;
    gap: 40px;
}

.personal-data {
    width: 740px;
    /*height: 530px;*/
    padding: 30px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.form-data {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.form-div {
    position: relative;
}

.form-div input {
    width: 100%;
    height: 70px;
    background-color:  rgb(2, 2, 3, 0.08);
    border-radius: 18px;
    border: none !important;
    padding-left: 24px;
}

.pass-label {
    font-size: 24px;
    font-weight: 400;
    margin-top: 55px;
    margin-bottom: 21px;
}

.personal-data2 {
    width: 740px;
    height: 418px;
    padding: 30px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.icon-form {
    position: absolute;
    left: 632px;
    top: 22px;
}

.change-button {
    width: 185px;
    height: 58px;
    background-color: #000000;
    color: white;
    border: none;
    border-radius: 18px;
}

/* Кнопка дропдауна */
.custom-dropdown .dropdown-btn {
    width: 100%;
    height: 40px;
    padding: 0 10px;
    border: none;
    background-color: #f0f0f0;
    border-radius: 12px;
    font-size: 14px;
    text-align: center;
    cursor: pointer;
    position: relative;
}

/* Стиль для выпадающего списка */
.custom-dropdown .dropdown-content {
    display: none;               /* По умолчанию скрыто */
    position: absolute;
    background-color: #fff;
    overflow: hidden;
    min-width: 100%;
    z-index: 100;
    border-radius: 12px;
}

/* Элементы в выпадающем списке */
.custom-dropdown .dropdown-content .dropdown-item {
    color: black;
    padding: 9px 16px;
    text-decoration: none;
    display: block;
    font-size: 14px;
    cursor: pointer;
}

/* Изменения при наведении на элемент */
.custom-dropdown .dropdown-content .dropdown-item:hover {
    background-color: #ddd;
}

/* Показываем выпадающий список при клике на кнопку */
.custom-dropdown.open .dropdown-content {
    display: block;
}

/* Изменения при наведении на кнопку */
.custom-dropdown .dropdown-btn:hover {
    background-color: #ddd;
}
.download-img {
    width: 24px;
    height: 24px;
    background-image: url('/images/download.svg');
    background-size: cover;
    transition: background-image 0.3s ease;
}

.download-img:hover {
    background-image: url('/images/download-hover.svg');
}


.command-hist {
    margin-top: 140px;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 37px;
}

.table-history {
    width: 100%;
    box-shadow: 0 8px 30px rgba(26, 54, 236, 0.08);
    margin-bottom: 150px;
    border: white 1px;
    border-radius: 20px;
}

.table-history thead {
    height: 70px;
    background-color: black;
    color: white;
    font-weight: bold;
    font-size: 16px;
}

.table-history th:first-child,
.table-history th:last-child,
.table-history td:first-child,
.table-history td:last-child {
    text-align: center;
}

.table-history th:first-child {
    border-top-left-radius: 20px;
    width: 160px;
}


.table-history th:nth-child(2) {
    width: 219px !important;
}

.table-history th:nth-child(3) {
    width: 367px !important;
}

.table-history th:nth-child(4) {
    width: 290px !important;
}

.table-history th:last-child {
    border-top-right-radius: 20px;
}

.table-history tbody tr {
    height: 176px;
}

.table-history td:first-child {
    font-weight: bold;
}

.td-img {
    text-align: center;
    align-content: center;
    width: 76px;
    height: 76px;
    border-radius: 10px;
    border: none;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
}

.td-img img {
    margin: auto;
    width: 100%;
}

.div-vacancies {
    display: flex;
    flex-direction: row;
    gap: 100px;
    margin-bottom: 150px;
}

.section {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.section button{
    width: 245px;
    height: 58px;
    border: none;
    background-color: white;
    border-radius: 18px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    font-weight: 500;
    font-size: 16px;
}

.section button.active {
    color: #EC671A;
}

.section-vac {
    display: flex;
    flex-direction: column;
    align-items: center !important;
    width: 100%;
    /*margin-bottom: 182px;*/
    gap: 30px;
}

.div-section-info {
    display: flex;
    width: 100%;
    height: fit-content;
}

.section-info {
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    border: none;
    background-color: white;
    border-radius: 18px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    padding-left: 50px;
    padding-right: 40px;
    padding-top: 17.25px;
    padding-bottom: 17.25px;
}

.vector {
    display: block;
    position: absolute;
    right: 40px;
    height: 91px;
    align-content: center;
    margin-top: -17px;
    transition: transform 0.3s ease; /* Плавный поворот стрелки */

}

.section-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}

.section-subtitle {
    font-size: 15px;
    font-weight: 500;
}
.section-text {
    font-size: 13px;
    font-weight: 500;
    padding: 10px 0;

}

.profile2 {
    display: flex;
    margin-top: 320px;
    font-family: Montserrat, sans-serif;
    font-size: 48px;
    font-weight: bold;
    margin-bottom: 100px;
    gap: 50px;
}

.detail-main-img {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 161px;
    height: 161px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.detail-services {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 60px;
}

.service-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    row-gap: 60px;
    column-gap: 100px;
    margin-bottom: 100px;
}

.service-info {
    display: flex;
    gap: 40px;
}

.list-vector {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 76px;
    height: 76px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.list-vector2 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    width: 76px;
    height: 76px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.list-text {
    width: 324px;
    min-height: 147px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
    padding: 37px 28px 0 28px;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
}

.list-text2 {
    width: 324px;
    min-height: 93px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
    padding: 28px 28px 0 28px;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
}

.detail-services2 {
    margin-top: 150px;
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 60px;
}

.advantages {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.adv-block {
    width: 350px;
    min-height: 277px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.darkside {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 91px;
    background-color: black;
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
}

.darkside-vector {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 76px;
    height: 76px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
    background-color: white;
    margin-top: auto;
}
.darkside-vector2{
    width: 100%;
    text-align: center;
}

.white-side {
    width: 100%;
    height: 100%;
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
}

.text-side {
    margin-top: 55px;
    text-align: center;
    font-weight: 500;
    font-size: 20px;
}

.advantages2 {
    display: flex;
    flex-wrap: wrap;
    row-gap: 40px;
    column-gap: 130px;
}

.adv-block2 {
    display: flex;
    width: calc(50% - 65px);
    min-height: 120px;
    box-shadow: 0px 8px 30px rgba(26, 54, 236, 0.08);
    border-radius: 18px;
}

.darkside2 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 76px;
    min-height: 120px;
    background-color: black;
    border-top-left-radius: 18px;
    border-bottom-left-radius: 18px;
}

.darkside-vector {
    width: 42px;
    height: 42px;
    border-radius: 18px;
    background-color: white;
}

.white-side2 {
    width: 100%;
    height: 100%;
    padding: 20px 20px 20px;
}

.text-side2 {
    width: 100%;
    font-weight: 400;
    font-size: 16px;
}

.check-text {
    font-weight: 400;
    font-size: 16px;
    padding: 15px;
}

.cont-text {
    color: #000;
    max-width: 609px;
}

@media (max-width: 1400px) {

    /*body > footer > div.container.mb-3 > div > div.col.contacts > div > div.d-flex.align-items-start.mb-3{*/
    /*    display: block!important;*/
    /*}*/
    .numbers{
        padding-left: 10px;
    }
    .logo-col {
        width: 43% !important;
    }
    .div-serv {
        margin-top: 70px!important;
    }
    .cont-text {
        color: #000;
        max-width: 550px;
    }
}

@media (max-width: 1399px) {
    .logo-col {
        width: 39% !important;
    }
}

.back img, .back2 img{
    max-width: 100%;
}
.back2 img{
    max-height: 70px;
}

@media (max-width: 450px) {
    input.form-contr, select.form-contr {

        height: 55px;}
    .container.py-5{
        padding: 0!important;
    }
    .mobile-sidebar{
        width: 100%;
        left: -100%;
    }
    h4{
        font-size: 20px!important;
    }
    .card-step-number {

        padding: 22px 32.2px;}
    .card-step-text p {
        font-size: 14px !important;
    }
    .card-text{
        font-size: 15px!important;
        line-height: 25px!important;
    }
    header .btn-get-service, header .btn-account{
        font-size: 12px!important;
        padding: 13px 10px!important;
        width: auto!important;
        height: auto!important;
    }
    .col-6{
        width: 100%!important;
        margin-bottom: 30px;
    }
}
.mobile-nav .btn-get-service,.mobile-nav .btn-account{
    display:none}
@media (max-width: 516px) {
    header .btn-get-service, header .btn-account{
        display: none;
    }
    .mobile-nav .btn-get-service,.mobile-nav .btn-account{
        display: block;
        width: 100%!important;
    }


}
/* SLIDER MEDIA */
@media (max-width: 1600px) and(min-width:767px ){
    .carousel-caption{
        top: 60%!important;
    }
    #secondCarousel .carousel-caption{
        top: 50%!important;
    }
    .carousel-caption .btn {
        padding: 0;
    }
}
@media (max-width: 1400px) {

    .carousel-caption h5, .carousel-caption-content h5 {
        font-size: 40px!important;
        margin-bottom: 8px!important;
    }
    .carousel-caption h6, .carousel-caption-content h6 {
        font-size: 20px!important;
        margin-bottom: 8px!important;
    }
    .carousel-caption p, .carousel-caption-content p {
        font-size: 18px!important;
    }
    .carousel-caption .btn {
        margin-top: 30px!important;
    }.carousel-caption h4, .carousel-caption-content p {
         margin-bottom: 20px;
     }

    #secondCarousel .carousel-caption .btn {
        margin-top: 20px !important;

    }
}
@media (max-width: 600px) {
    .adv-cont{
        text-align: center;
    }
    .slider-2{
        margin: auto;
    }
    .btns-adv .btn-get-service, .btns-adv .btn-account{
        margin-left: auto!important;
        margin-right: auto!important;
    }
    .btns-adv {
        display: block;
    }

}
@media (max-width: 1200px) {
    header .col-md-2{
        width: 15%;
    }
    /*.dropdown-menu.active {*/

    /*    top: 80px!important;*/

    /*}*/

    header .col-9{
        width: 85% !important;
    }
    header .nav-link{
        padding: .5rem .5rem;
    }
    .carousel-caption h5, .carousel-caption-content h5 {
        font-size: 35px!important;
        margin-bottom: 5px!important;
    }
    .carousel-caption h6, .carousel-caption-content h6 {
        font-size: 17px!important;
        margin-bottom: 8px!important;
    }
    .carousel-caption p, .carousel-caption-content p {
        font-size: 15px!important;
    }

    .carousel-caption .btn {
        margin-top: 20px!important;
    }
    .logo-col {
        width: 45%!important;
    }
    .footer > .container > .row {
        display: flex;
        justify-content: space-between !important;
    }
    .col-footer {
        width: 350px!important;
    }
    .col {
        flex: 0 !important;
        min-width: 350px !important;
    }
    .cont-text {
        max-width: 450px;
    }
}

@media (max-width: 1200px) and (min-width: 451px){
    .col-footer {
        margin-right: 0 !important;
    }
}

@media (max-width: 1100px) {
    .nav {
        width: 525px !important;
    }
    .logo {
        width: 120px !important;
    }
    .logo img {
        width: 80% !important;
    }
}

@media (max-width: 1000px) and (min-width: 766px){
    body > footer > div.container.mb-3 > div > div.col.contacts > div > div.d-flex.align-items-start.mb-3{
        display: flex!important;

    }
    .numbers{
        padding-left: 0;
    }
}

@media (max-width: 1000px) {
    /*.logo-col {*/
    /*    display: flex;*/
    /*    justify-content: center;*/
    /*    width: 100% !important;*/
    /*}*/
    /*.logo-text {*/
    /*    max-width: 217px;*/
    /*}*/

    /*.logo-text p {*/
    /*    text-align: center;*/
    /*}*/

    h5 {
        font-size: 20px !important;
    }

    .mobile-menu {

        display: block;
    }
}

@media (max-width: 992px) {
    .container.adv-cont{
        padding: 50px 0;
    }
    .container.form-cont{
        padding: 50px 0;
    }
    .container.top{
        padding-top:30px;
        padding: 0;
    }
    .col-card{
        width: calc(50% - 40px)!important; /* Карточки занимают треть ширины строки с учетом gap */
        flex: none;
    }
    .adv-cont .col-6{
        width: 100%;
    }
    .col-steps{
        width: calc(100% - 50px) !important;
    }
    .step-box-extra-margin{
        margin-left: 0!important;
    }
    .div-serv {
        margin-top: 140px!important;
    }
    .btns-adv{
        display: flex;
        padding: 30px 0;
    }
    .btns-adv .btn-get-service{
        margin-bottom: 20px;
    }
    .col-form {
        width: 100%!important;
        margin-right: 0!important;
        margin-bottom: 50px;
    }
    .col-form-img {
        max-width: 540px!important;
        width: 100%!important;
        margin: auto;
    }
    .col-steps{
        margin-top: 30px!important;
    }
    .step-box {
        gap: 30px;
        flex-direction: column; /* Переключаемся на вертикальное расположение */
        align-items: stretch; /* Растягиваем блоки на всю ширину */
    }
    .card-step-number {
        align-self: flex-start; /* Выравниваем номер по левому краю */
    }
    .col-footer {
        width: 26% !important;
    }
    .cont-text {
        max-width: 720px !important;
    }
    .col-footer {
        width: 285px!important;
    }
    .col {
        min-width: 285px !important;
    }
}


@media (max-width: 900px) {
    .carousel-caption h5, .carousel-caption-content h5 {
        font-size: 30px!important;
        margin-bottom: 5px!important;
    }
    .carousel-caption h6, .carousel-caption-content h6 {
        font-size: 15px!important;
        margin-bottom: 8px!important;
    }
    .carousel-caption p, .carousel-caption-content p {
        font-size: 13px!important;
    }
    .carousel-caption .btn {
        margin-top: 20px!important;
    }
}

@media (max-width: 767px) {

    .col-card2 {
        width: calc(50% - 10px) !important;
        flex: none !important;
    }
    .carousel-caption h5, .carousel-caption-content h5 {
        font-size: 25px !important;
        margin-bottom: 5px !important;
    }
    .carousel-caption h6{
        font-size:20px!important;
        margin-bottom: 5px!important;
    }
    .slide-head {
        font-family: Montserrat, sans-serif;
        font-size: 20px;
        font-weight: 400;
    }
    .carousel-caption .btn {
        margin-top: 15px !important;
    }

    .carousel-caption{
        position: absolute;
        top: 49% !important;
        transform: translateY(-50%);
        color: black;
        padding: 20px;
        padding-left: 20px!important;
        background-color: white;
        text-align: left;
        z-index: 2;
        width: 80%;
        max-width:450px ;
    }
    #secondCarousel h4{
        color: black!important;
        font-size: 20px;
        margin-bottom: 5px!important;
    }
     .carousel-caption {
        width: 80% !important;
        margin-left: 0!important;
    }
    .cont-c{
        display: none;
    }
    .carousel-caption-content p {
        margin-bottom: 15px!important;
    }
    .container.under{
        display: block;
    }#secondCarousel .carousel-caption .btn {
         margin-top: 15px !important;
     }
    .carousel {
        margin-top: 0;
    }
    .row.card-row {
        display: flex
    ;
        flex-wrap: wrap;
        gap: 20px;
        justify-content: center;
    }
    .ser-button {
        width: 100%;
        height: 50px;}
    .card-text2, .card-text3 {
        margin-bottom: 10px;
        line-height: 1.6; /* Adjust line height as needed */
        min-height: auto;
        font-size: 15px;
        max-height: 3.2em;
        width: 100%;
        overflow: hidden; /* Hide overflowed content */
        text-overflow: ellipsis; /* Display ellipsis */
        display: -webkit-box;
        -webkit-line-clamp: 2; /* Limits to 10 lines */
        -webkit-box-orient: vertical;
    }
    .col-card{
        width: calc(50% - 20px) !important;
        flex: none;
    }
    .card-text, .card-text2, .card-text3{
        min-height: auto!important;
        width: 100%!important;
        font-size: 15px;
    }
    .back, .back2{
        height: auto;
        padding: 10px 0;
    }
    .carousel-caption-under {
        background-color: #00000047;
        padding: 20px;
        color: white;
    }
    .carousel-caption-under h4 {

        color: white;
    }
    .carousel-caption-slide{
        display: none;
    }
    .carousel-caption-slide.active{
        display: block;
    }
    header .btn-get-service, header .btn-account{
        font-size: 12px!important;
        padding: 13px 10px!important;
        width: auto!important;
        height: auto!important;
    }
    .logo img {
        width: 80%;
    }
    .fixed_header {
        position: static;
    }
    .div-serv {
        margin-top: 10px!important;
    }
    .logo {
        width: 80px !important;
    }
    .logo img {
        width: 100% !important;
    }
    .col-footer {
        max-width: 250px;
    }
    .col {
        max-width: 250px !important;
        min-width: 250px !important;
    }
}

@media (max-width: 564px) {
    .col-footer {
        max-width: 100%!important;
        width: 100% !important;
        text-align: center;
    }
    .logo-col {
        width: 100% !important;
        display: flex;
        justify-content: center;
    }
    .logo-text {
        text-align: center;
    }
    .col {
        flex: 1 0 0% !important;
        width: 100% !important;
        text-align: center;
        max-width: 100% !important;
        min-width: 100% !important;
    }

    .contacts{
        text-align: center;
    }
    .contacts > div > div.d-flex.align-items-start.mb-3{
        justify-content: center;
    }
    footer .container p {
        text-align: center;
    }
}

@media (max-width: 550px) {
    footer .container {
        display: block!important;
    }
    footer .links{
        margin-top: 20px;
        text-align: center;
    }
    .bascket_form_line_placeholder {
        position: absolute;
        top: 31px!important;
    }
    .logo {
        width: 50px !important;
    }
}

.scroll_to_top {
    width: 41px;
    aspect-ratio: 1 / 1;
    position: fixed;
    bottom: 80px;
    right: 30px;
    z-index: 100;
    background-color: #EC671A;
    text-align: center;
    display: flex
;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.bascket_form_line_placeholder {
    position: absolute;
    top: 38px;
    font-family: Montserrat, sans-serif;

    left: 35px;
    font-weight: normal;
    font-size: 16px;
    color: #747474;
    z-index: 0;
}
.bascket_form_line_placeholder span {
    color: #BA0713;
}
select.form-contr {
    width: 100%; /* Ширина на всю доступную область */
    padding-right: 40px; /* Оставляем место для стрелочки */
    white-space: nowrap; /* Запрещаем перенос строки */
    overflow: hidden; /* Обрезаем лишний текст */
    text-overflow: ellipsis; /* Добавляем "..." если текст не помещается */
}
.dropdown-menu.active {
    opacity: 1;
    transform: translateY(0);
    /*top: 90px;*/
    display: block;
}

.menu-arrow.rotate {
    transform: rotate(180deg);
    padding-left: .7rem;
    padding-right: 0!important;
}
#arrowToggle2.rotate .menu-arrow {
    transform: rotate(180deg);
    padding-left: .7rem;
    padding-right: 0!important;
}
#mobileSidebar > ul > div.dropdown-menu2> li a{

    font-size: 16px;
}
.serv{
    color:#020203 ;
    text-decoration: none;
    font-size: 16px;
    padding: 7px 20px;
    text-align: left;
    max-width: 300px;
}
.dropdown-menu2 {
    padding-left:20px ;
    top: 100%;
    display: none;

}
.dropdown-menu {
    min-width: 300px;
    top: 100%;
}
.nav-item.catalog {
    position: relative;
}
.dropdown-menu2.active{
    display: block;
}
.serv a{
    color:#020203;
    text-decoration: none;
}
.serv a:hover{
    color: #EC671A;
    text-decoration: none;
}
.dropdown-menu {
    padding: .7rem 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
}
.nav-item.catalog{
    display: flex;

}

.nav-item.catalog a{
    padding-right: .5rem;
}
#arrowToggle{
    padding-right:.7rem;
}


.register-modal {
    max-height: calc(100vh - 40px); /* Ограничиваем высоту до высоты экрана минус 40px (20px сверху и 20px снизу padding) */
    overflow-x: auto;
}

.hamburger-search {
    margin-top: 10px;
    margin-bottom: 10px;
}

.hamburger-links .h-upper-buttons-container {
    flex-direction: column;
    align-items: flex-start;
}

.register-modal-overlay {
    width: 100%;
    height: 100%;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    display: none;
}

.auth-modal-overlay,
.popup-modal-overlay{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* полупрозрачный фон */
    z-index: 9999; /* поверх всего */
    opacity: 0;
    transition: opacity 0.3s ease; /* добавляем переход для свойства opacity */
}


/* Popup container */


/* Close button */
.popup-close {
    position: absolute;
    top: 10px;
    right: 20px;
    cursor: pointer;
    font-size: 20px; /* Increased font size */
}

.auth-modal,
.register-modal,
.popup-modal,.forgot-password-modal{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    border-radius: 5px;
    z-index: 10000; /* поверх оверлея */
    max-width: 400px;
    width: 85%;
    /*opacity: 0; !* начальное значение непрозрачности *!*/
    transition: opacity 0.3s ease; /* добавляем переход для свойства opacity */
}

.close-button,
#close-reg-modal {
    font-size: 30px;
}

.close-button:hover,
#close-reg-modal:hover {
    cursor: pointer;
}

/* -------------------------------------- */
.register-modal .btn-account, .auth-modal .btn-account, .forgot-password-modal .btn-account{
    display: block;!important;
}
.login-container-wrapper {
    width: 100%;

    display: flex;
    justify-content: space-between;
    align-items: center;
}
.login-container-popup {
    width: 100%;
    max-width: 310px;

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

.registration-link {
    cursor: pointer;
}
.authorization-header {
    text-align: center;
    margin-top: 5px;
    margin-bottom: 5px;
}

#select2-data-institutii {
    height: 10px;
}

.remember-and-recover {
    margin-bottom: 20px !important;
}
.authorization-header-popup {
    text-align: center;
    margin-top: 5px;
    margin-bottom: 5px;
}
.email-input,
.name-input,
.surname-input,
.password-input,
.prof-input,
.inst-input,
.tel-input,
.password-repeat-input{
    width: 100%;
    padding: 10px;
    margin: 10px 0;
    box-sizing: border-box;
}
.remember-me-checkbox {
    display: inline-block;
    margin-right: 5px;
}
.forgot-password-link {
    float: right;
}

.login-button {
    border-radius: 4px;
    background: #007fbf;
    border: none;
    width: 100%;
    height: 41px;
    font-weight: 500;
    color: white;
    transition: background 0.3s ease;
    font-size: 16px;
}

.login-button:hover {
    background: #0694db;
    cursor: pointer;
}

.login-button-popup{
    border-radius: 4px;
    background: #007fbf;
    border: none;
    width: 100%;
    height: 41px;
    font-weight: 500;
    color: white;
    transition: background 0.3s ease;
    font-size: 16px;
}

.login-button-popup:hover {
    background: #0694db;
    cursor: pointer;
}

.forgot-password-link,
.remember-me-label {
    font-size: 13px;

}

.remember-me-label {
    /* Уменьшаем line-height для всех дочерних элементов */
    line-height: 1.5;
}

.remember-me-label a {
    /* Устанавливаем line-height для ссылок внутри лейбла */
    line-height: 1.5;
}

.registration-link {
    font-size: 16px;
}

.forgot-password-link,
.registration-link,
.reg-accept {
    text-decoration: underline;
    color: #007fbf;
}

.forgot-password-link:hover {
    cursor: pointer;
}

.remember-me-label,
.close-button {
    color: #1a1a1a;
}
input[type="checkbox"], input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
}
#auth-password,
#auth-email,
#reg-surname,
#reg-name,
#reg-password,
#reg-email,
#reg-prof,
#reg-inst,
#reg-tel,
#reg-other,
#reg-password-repeat,
#reg-repassword-repeat,
#sex-select,
#user-surname,
#user-name,
#user-prof,
#user-email,
#user-sex,
#user-inst,
#user-tel,
#user-other,
#user-password,
#reg-comp,
#reg-address,
#forgot-password-email {
    border-radius: 6px;
    height: 40px;
}

.select2-container--default .select2-selection--multiple {
    border: 1px solid #97c6ea !important;
    border-radius: 6px !important;

}

#sex-select {
    width: 100%;
    padding-left: 5px;
    margin-top: 27px;
    margin-bottom: 10px;
    color: #828282;
}

#sex-select #sex-select::placeholder,
#auth-password::placeholder,
#auth-email::placeholder {
    font-weight: 400;
    line-height: 1.5;
    color: #828282;
}

.remember-and-recover {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.login-container-wrapper.reg {
    align-items: flex-start !important;
}


.reg-helpers {
    display: flex;
}

.interests-container {
    margin-top: 5px;
    margin-bottom: 10px;
}

.interests-label,
.user-lables {
    color: #828282;
    margin-left: 10px;
}
/* -------Добавленные CSS стили для модального окна "Восстановить пароль"------- */
.forgot-password-modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.forgot-password-modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    border-radius: 5px;
    z-index: 10000;
    width: 85%;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.close-pass-recover-button {
    font-size: 20px;
    position: absolute;
    top: 10px;
    right: 10px;
}

.close-pass-recover-button:hover {
    cursor: pointer;
}

#forgot-password-email {
    margin-bottom: 20px;
}


/* карта-------------------------------------- */
iframe {
    width: 100%;
    height: 320px; /* Высота карты, которую вы указали */
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 60px;
}
@media only screen and (max-width: 600px) {
    iframe {
        height: 240px; /* Измените высоту для мобильных устройств, если это необходимо */
    }
}
.contact-row{
    gap: 30px;
}
.cont{
    width: calc(50% - 20px);
    margin-right: 0!important;
}
.cont a{
    color: #000;
    text-decoration: none;
    font-size: 18px;
}
.cont p{
    font-size: 18px;
}
.cont a:hover{
    color: #EC671A;
}
.cont .list{
    padding: 0 30px;
    text-align: left;
}
.col-form-img.cont{
    max-width: none!important;
}

.div-serv {
    margin-top: 100px
}