/* =================================================================
 * АДАПТИВНЫЕ СТИЛИ (MEDIA QUERIES)
 * ================================================================= */

/* Глобальный сброс для предотвращения горизонтальной прокрутки */
body,
html {
    overflow-x: hidden;
}

/* Утилиты видимости по умолчанию (Mobile First) */
.mob_block {
    display: none;
}

/* =================================================================
 * 1. Адаптивная Типографика (Корректировка Font-Size на широких экранах)
 *
 * Это позволяет масштабировать все rem-размеры на основе ширины экрана.
 * ================================================================= */

 @media screen and (min-width: 1600px) {
    html {
        font-size: 16px;
    }

    .plane-absolute {
        position: absolute;
        z-index: 0;
        top: 140rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
        height: auto;
        opacity: 1;
        pointer-events: none;
    }

    .about-page .plane-absolute {
        top: 75rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
    }

    .about-us-fleet {
        padding-bottom: 6rem;
    }

    .about-page .about-us-fleet {
        padding-bottom: 10.5rem;
    }
 }

/* Экраны > 1400px: Стандартный размер (16px) */
@media screen and (min-width: 1400px) and (max-width: 1599.98px) {
    html {
        font-size: 16px;
    }

    .plane-absolute {
        position: absolute;
        z-index: 0;
        top: 140rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
        height: auto;
        opacity: 1;
        pointer-events: none;
    }

    .about-page .plane-absolute {
        top: 78rem;
        left: 0rem;
    }

    .about-us-fleet {
        padding-bottom: 0rem;
    }

    .about-page .about-us-fleet {
        padding-bottom: 6rem;
    }
}

/* Экраны 1300px < X < 1400px: Уменьшенный размер (15px) */
@media screen and (max-width: 1399.98px) and (min-width: 1300px) {
    html {
        font-size: 15px;
    }

    /* --- Стили для самолета с position absolute --- */
    .about-page .plane-absolute {
        top: 85rem;
        left: 0rem;
    }

    .plane-absolute {
        position: absolute;
        z-index: 0;
        top: 140rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
        height: auto;
        opacity: 1;
        pointer-events: none;
    }

    .about-us-fleet {
        padding-bottom: 0rem;
    }

    .about-page .about-us-fleet {
        padding-bottom: 5rem;
    }
}

/* Экраны 1200px < X < 1300px: Уменьшенный размер (14px) */
@media screen and (max-width: 1299.98px) and (min-width: 1200px) {
    html {
        font-size: 14px;
    }

    /* --- Стили для самолета с position absolute --- */
    .plane-absolute {
        position: absolute;
        z-index: 100;
        top: 142rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
        height: auto;
        opacity: 1;
        pointer-events: none;
    }

    .about-page .plane-absolute {
        top: 80rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
    }

    .about-us-fleet {
        padding-bottom: 0rem;
    }

    .about-page .about-us-fleet {
        padding-bottom: 5rem;
    }
}

/* Экраны 1100px < X < 1200px: Уменьшенный размер (13px) */
@media screen and (max-width: 1199.98px) and (min-width: 1100px) {
    html {
        font-size: 13px;
    }

    .plane-absolute {
        top: 145rem;
        left: 0rem;
        max-width: 50% !important;
    }

    .about-page .plane-absolute {
        top: 90rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
    }
}

/* Экраны 1050px < X < 1100px: Уменьшенный размер (12px) */
@media screen and (max-width: 1099.98px) and (min-width: 1050px) {
    html {
        font-size: 12px;
    }

    .plane-absolute {
        top: 145rem;
        left: 0rem;
        max-width: 50% !important;
    }

    .about-page .plane-absolute {
        top: 90rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
    }
}

/* Экраны 992px < X < 1050px: Уменьшенный размер (11px) */
@media screen and (max-width: 1049.98px) and (min-width: 992px) {
    html {
        font-size: 11px;
    }

    .news .news-prev-slide-btn {
        display: flex;
        left: -1.5rem;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-start;
    }

    .news .news-next-slide-btn {
        display: flex;
        right: -1.5rem;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-end;
    }

    .plane-absolute {
        top: 150rem;
        left: 0rem;
        max-width: 50% !important;
    }

    .about-page .plane-absolute {
        top: 90rem;
        left: 0rem;
        max-width: 50% !important;
        min-width: 50% !important;
    }
}

@media (min-width: 992px) {
    .ratio-lg-21x9 {
        --bs-aspect-ratio: 42.857% !important;
    }

}


/* =================================================================
 * 2. Стили для Tablet / Mobile (Max-width: 1024px)
 * ================================================================= */
@media screen and (max-width: 1024px) {

    /* Основное тело страницы: отступ для фиксированного хедера */
    body {
        padding-top: 0rem;
    }

    /* .hero {
        min-height: 80vh;  
    } */
    .hero h1 {
        /* КОНВЕРТАЦИЯ: 48px -> 3rem */
        font-size: 3rem;
        /* КОНВЕРТАЦИЯ: -0.96px -> -0.06rem */
        letter-spacing: -0.06rem;
    }

    .hero-h1-tag {
        /* КОНВЕРТАЦИЯ: 14px -> 0.875rem */
        font-size: 0.875rem;
    }

    .hero-content {
        align-items: flex-start !important;
        /* КОНВЕРТАЦИЯ: 30px -> 1.875rem */
        padding-top: 1.875rem;
    }

    .hero-footer {
        /* КОНВЕРТАЦИЯ: 20px -> 1.25rem */
        margin-bottom: 1.25rem !important;
    }

    /* Утилиты видимости */
    .mob_none {
        display: none !important;
    }

    .mob_block {
        display: block !important;
    }

    /* Утилита для элементов, которые должны стать 100% на мобиле/планшете */
    .mob_full {
        flex: 0 0 100%;
        max-width: 100%;
    }

    /* Мобильный сэндвич-бар (иконка меню) */
    .menu_toggle {
        color: #ff3326;
    }

    /* Мобильное меню (превращение горизонтального в вертикальное) */
    .menu {
        position: absolute;
        display: none;
        /* Управляется JS */
        top: 100%;
        left: 0;
        width: 100%;
        bottom: unset;
        background: #ffffff;
        box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
        padding: 2rem 15px;
        padding-bottom: 1rem;
        border-top: 1px solid #e8e8e8;
        border-bottom: 1px solid #e8e8e8;
        margin: 0;
        text-align: center;
    }

    .menu a {
        display: block;
        margin: 0;
        margin-bottom: 1.5rem;
    }

    .menu a img {
        /* Скрытие иконок/изображений в меню навигации */
        display: none;
    }

    /* Поиск */
    .search--show {
        margin-right: 1.5rem;
    }

    /* Fancybox/Модальные окна (стили для сторонней библиотеки) */
    .fancybox-slide--iframe .fancybox-content {
        width: 95%;
        height: auto;
    }
}

/* =================================================================
 * АДАПТАЦИЯ (RESPONSIVE.CSS)
 * ================================================================= */

/* ---- АДАПТАЦИЯ ДО 991.98px (ПЛАНШЕТЫ И МОБИЛЬНЫЕ) ---- */
@media (max-width: 991.98px) {

    /* === ТИПОГРАФИКА: ПАРАГРАФЫ === */

    h1 {
        /* ЗАДАЧА: Размер h1 фиксирован - 2.2rem */
        font-size: 2.2rem;
    }

    h2 {
        /* ЗАДАЧА: Размер h2 фиксирован - 1.75rem */
        font-size: 1.75rem;
    }

    h3 {
        /* Мобильный размер (уменьшен): ~1.65rem */
        font-size: 1.65rem;
    }

    h4 {
        /* Мобильный размер (уменьшен): ~1.3rem */
        font-size: 1.3rem;
    }

    h5 {
        /* Мобильный размер (уменьшен): ~1.0rem */
        font-size: 1.0rem;
    }

    h6 {
        /* Мобильный размер (уменьшен): ~0.9rem */
        font-size: 0.9rem;
    }

    p {
        font-size: 0.875rem;
    }

    .content {
        font-size: 0.875rem;
    }

    /* === 1. HERO СЕКЦИЯ === */
    .hero {
        background-image: url(/assets/img/hero-mobile.png);
        padding-bottom: 0;
        min-height: clamp(40.625rem, -37.5568rem + 390.9091vw, 67.5rem);
        /* Адаптивная высота Hero */
        position: relative;
        overflow: initial;
    }

    .hero::before {
        border-bottom-left-radius: var(--btn-border-radius-50);
        border-bottom-right-radius: var(--btn-border-radius-50);
    }

    .hero-content {
        padding-top: 0rem;
        margin-bottom: 0rem;
	z-index: 0;
    }

    /* Заголовок H1 (Уменьшение размера на мобильных) */
    .hero-content .hero-title {
        /* Например, уменьшаем с display-3 до чего-то более подходящего */
        font-size: clamp(1.8rem, 0.6364rem + 5.8182vw, 2.2rem);
        line-height: 1.3;
        margin-bottom: 1rem !important;
        /* Переносим выравнивание влево, если не указано иное */
        justify-content: start !important;
    }

    /* Подпись под заголовком */
    .hero-content .hero-h1-tag {
        font-size: 0.9375rem;
        margin-left: 0.9375rem !important;
        left: clamp(8rem, 2.1818rem + 29.0909vw, 10rem);
        bottom: clamp(0.9rem, 0.6091rem + 1.4545vw, 1rem);
    }

    /* Контейнер заголовка и подписи */
    .hero-content .d-flex.flex-wrap {
        /* На мобильных центрируем или выравниваем влево весь блок, если он занимает всю ширину */
        justify-content: flex-start !important;
        align-items: flex-start !important;
    }

    /* Кнопки в Hero (Теперь вертикально или горизонтально на маленьких экранах) */
    .hero-content .d-flex.gap-3.mt-5 {
        flex-direction: column;
        /* Кнопки вертикально на маленьких экранах */
        gap: 0.9375rem !important;
        margin-top: clamp(10rem, -62.7273rem + 363.6364vw, 35rem) !important;
        margin-bottom: clamp(0rem, -4.3636rem + 21.8182vw, 1.5rem) !important;
    }

    .hero-content .btn-primary-gradient,
    .hero-content .btn-primary-gray {
        width: 100% !important;
        /* Кнопки на всю ширину */
        text-align: center;
    }

    /* === 2. HEADER === */
    .hero-header {
        /* Перенос контейнера хедера с row, чтобы занимал всю ширину */
        padding-left: 0;
        padding-right: 0;
    }

    .hero-header .row {
        /* Убираем лишние отступы, если они есть */
        margin: 0;
    }

    /* Убираем отступ у .col-6 для логотипа, чтобы он был слева */
    .hero-header .col-6:first-child {
        padding-left: 15px;
    }

    /* Добавляем отступ для правой части, где гамбургер и язык */
    .hero-header .col-6:last-child {
        padding-right: 15px;
    }

    /* Стили для кнопки гамбургера */
    .navbar-toggler {
        width: 3.125rem;
        border-radius: var(--btn-border-radius-50) !important;
        color: var(--color-white-base) !important;
        padding: 0 !important;
    }

    .navbar-toggler:hover {
        width: 3.125rem;
        border-radius: var(--btn-border-radius-50) !important;
        padding: 0 !important;
        outline: none !important;
        box-shadow: none !important;
        opacity: 1 !important;
        transform: none !important;
    }

    /* === 3. HERO FOOTER === */
    .hero-footer {
        width: 100% !important;
        position: absolute;
        margin-top: 0rem !important;
        bottom: clamp(-18rem, -12.1818rem + -29.0909vw, -20rem);
        left: 0;
        right: 0;
        margin: 0 auto;
        border-radius: var(--btn-border-radius-50);
    }

    .hero-card {
        border: 1px solid var(--color-red-base) !important;
    }

    /* === HERO ВНУТРЕННИХ СТРАНИЦ === */
    .hero-page {
        background-size: cover;
        background-position: center bottom;
        min-height: 16.25rem;
        padding-bottom: 1.875rem;
        border-bottom-left-radius: var(--btn-border-radius-30);
        border-bottom-right-radius: var(--btn-border-radius-30);
    }

    .hero-page h1 {
        font-size: 1.5rem;
        line-height: inherit;
    }

    .history-company img {
        border-radius: var(--btn-border-radius-30);
    }

    .about-us-fleet {
        padding-top: 3.75rem;
        padding-bottom: 3.75rem;
    }

    .about-us-fleet h2 {
        font-size: 1.75rem;
    }

    .about-page .partnership {
        margin-top: 0rem;
        margin-bottom: 3.75rem;
    }

    .about-page .partners-logos-container {
        padding-bottom: 3.75rem;
    }

    /* === О НАС СЕКЦИЯ === */
    .about-us {
        margin-top: 5rem;
        background-image: none;
    }

    .section-tag-line {
        font-size: 0.875rem;
    }

    .about-us h2 {
        font-size: 1.75rem;
    }

    .about-us .content {
        font-size: 0.875rem;
    }

    .about-us-main-photo .ratio img {
        object-fit: cover;
        aspect-ratio: 1 / 1;
        border-radius: var(--btn-border-radius-30);
    }

    .about-us-photos-mobile .photo-item img {
        aspect-ratio: 1 / 1;
        object-fit: cover;
        border-radius: var(--btn-border-radius-20);
    }

    /* === УСЛУГИ СЕКЦИЯ === */
    .preim-flot {
        background-position: 100%;
        background-size: contain;
        padding-bottom: 3.125rem;
    }

    .service-cards-container {
        padding-top: 3.125rem;
        padding-bottom: 0;
        gap: 1.875rem;
    }

    /* === СОБСТВЕННЫЙ ФЛОТ СЕКЦИЯ === */
    .about-us-fleet .bg-logo {
        background-size: auto;
        background-position: 50% 60%;
    }

    .fleet-plane-image {
        min-height: 100%;
        height: 100%;
        padding-bottom: 15rem;
    }

    .plane-absolute {
        left: 0rem;
        right: 0rem;
        max-width: 100%;
        min-width: 100%;
        top: 220rem;
        overflow: hidden;
    }

    .beige-card {
        border-radius: var(--btn-border-radius-40) !important;
        padding: 1.25rem !important;
    }

    .beige-card .card-image-wrapper {
        width: 100%;
        height: 100%;
        aspect-ratio: 16 / 9;
        object-fit: cover;
        border-radius: var(--btn-border-radius-5);
        margin-right: 0rem;
        margin-bottom: 0rem;
    }

    .beige-card .card-img-left img {
    	width: 100%;
    	min-height: 250px;
    	aspect-ratio: 16 / 9;
    	border-radius: var(--btn-border-radius-30);
   }

    /* === ПАРТНЕРСТВО СЕКЦИЯ === */
    .partnership {
        margin-top: 3.75rem;
        margin-bottom: 2.5rem;
        border-radius: var(--btn-border-radius-40);
    }

    .partnership img {
        width: 100%;
        height: 100%;
        aspect-ratio: 1 / 1;
        object-fit: cover;
        border-radius: var(--btn-border-radius-30);
    }

    /* === НОВОСТИ СЕКЦИЯ === */
    .homepage .news {
        position: relative;
        padding-top: 3.75rem;
        padding-bottom: 3.75rem;
    }

    .scroll-news-wrapper {
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        overflow: hidden;
    }

    .scroll-news {
        width: 100%;
        display: flex;
        justify-content: center;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 1.5rem;
        margin-right: 0;
        gap: 1rem;
    }

    .news .news-item {
        flex: 0 0 100%;
        max-width: 100%;
        margin-right: 0;
        scroll-snap-align: center;
        display: flex;
        justify-content: center;
    }

    .news .card {
        width: 100%;
        margin: 0 auto;
    }

    /* Кнопки навигации теперь под каруселью */
    .news .news-nav-btn {
        position: static;
        display: flex !important;
        background-color: var(--color-grey) !important;
        border: none;
        width: 2.5rem;
        height: 2.5rem;
        padding: 0.5rem;
    }

    /* Контейнер для кнопок под каруселью */
    .news-nav-container {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 1.25rem;
        margin-top: 0.75rem;
    }

    .news .news-prev-slide-btn,
    .news .news-next-slide-btn {
        left: auto;
        right: auto;
        transform: none;
    }

    .news .news-nav-btn img {
        width: 1.25rem;
        height: 1.25rem;
    }

    /* === CTA СЕКЦИЯ === */
    .cta-block {
        padding: 1.875rem 0.8rem 0 0.8rem;
        border-radius: var(--btn-border-radius-30);
    }

    .row-with-background {
        background-position: left bottom;
        background-size: 165%;
        min-height: 40rem;
        border-radius: var(--btn-border-radius-30);
    }

    .cta-block .btn-primary-red {
        margin-bottom: 10rem;
    }

    .cta-block h2 {
        font-size: 1.75rem;
        padding-left: 0;
    }

    .cta-block .content {
        font-size: clamp(0.875rem, 0.5114rem + 1.8182vw, 1rem);
        line-height: 120%;
        padding-left: 0;
        margin-bottom: 1.5rem;
    }

    .contact-form .form-control {
        font-size: clamp(0.875rem, 0.5114rem + 1.8182vw, 1rem);
        padding-left: 3.75rem !important;
    }

    .cta-section {
        margin-bottom: 3.75rem;
    }

    /* === CTA СЕКЦИЯ НА СТРАНИЦЕ ПАРТНЕРЫ === */
    .partners-page .cta-section .row-with-background {
        background-position: 10% bottom;
        background-size: 150%;
        min-height: 40rem;
        border-radius: var(--btn-border-radius-30);
    }

    .partners-page .cta-block .btn-primary-red {
        margin-bottom: 15rem;
    }

    /* === КОНТАКТЫ СЕКЦИЯ === */
    .contacts {
        padding-top: 0rem;
        padding-bottom: 3.75rem;
    }

    .contacts h2 {
        font-size: 1.75rem;
    }

    .contacts .map-wrapper {
        border-radius: var(--btn-border-radius-30);
    }

    .contacts .contact-item .subtitle {
        font-size: 0.875rem;
    }

    .social-icons img {
        width: 1.5rem;
        height: 1.5rem;
    }

    /* === FOOTER СЕКЦИЯ === */
    .footer {
        padding-top: 1.875rem;
        padding-bottom: 1.875rem;
    }

    /* =================================================================
    * СТРАНИЦА О КОМПАНИИ
    * ================================================================= */
    .mission-company {
        padding-top: 0rem;
        padding-bottom: 3.75rem;
    }

    .mission-cards-section {
        padding-top: 3.75rem;
        padding-bottom: 0rem;
    }

    .mission-cards-section img {
        border-radius: var(--btn-border-radius-30);
    }

    /* =================================================================
    * СТРАНИЦА УСЛУГИ
    * ================================================================= */
    .services-content {
        padding-top: 2.5rem;
        padding-bottom: 5rem;
    }

    .services-content .baige-card {
        min-height: auto;
    }

    /* =================================================================
    * ШАБЛОН СТРАНИЦЫ ОДНОЙ УСЛУГИ
    * ================================================================= */
    .cta-section-service-page {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }

    /* .cta-section-header h6 {
        font-size: 1.75rem;
    } */

    .cta-section-service-page-mobile-img img {
        border-radius: var(--btn-border-radius-30);
    }

    /* ПОЧЕМУ НАМ ДОВЕРЯЮТ */
    .trusted-section {
        padding-top: 0rem;
        padding-bottom: 3.75rem;
    }

    .trusted-section h2 {
        font-size: 1.5rem;
    }

    .trusted-card h5 {
        font-size: 0.875rem;
    }

    /* ПРЕИМУЩЕСТВА И ВОЗМОЖНОСТИ */
    .advantages-section {
        padding-top: 0rem;
        padding-bottom: 3.75rem;
    }

    .advantages-section h2 {
        font-size: 1.5rem;
    }

    .advantages-section img {
        width: 100%;
        height: 100%;
        aspect-ratio: 16 / 9;
        object-fit: cover;
    }

    .advantages-section .beige-card {
        padding: 1.25rem !important;
    }

    /* =================================================================
    * СТРАНИЦА ФЛОТ
    * ================================================================= */
    .fleet-section {
        background-image: url(/assets/img/bg-fleet.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        background-attachment: fixed;
        padding-top: 1.25rem;
        padding-bottom: 2.5rem;
    }

    /* --- 1. Контейнер карточки --- */
    .custom-card {
        height: auto !important;
        transition: none;
    }

    /* --- 2. Изображение (Переход в 4:3) --- */
    .card-image-wrapper {
        height: calc(var(--card-width) * 3 / 4) !important;
        transition: none !important;
    }

    /* --- 3. Скрываемый Контент (Всегда раскрыт) --- */
    .card-hover-content {
        opacity: 1 !important;
        max-height: none !important;
        overflow: visible !important;
        transform: translateY(0) !important;
        transition: none !important;
        padding: 0 !important;
        padding-top: 0 !important;
    }

    /* --- 4. Отменяем Hover-эффекты --- */
    .custom-card:hover .card-image-wrapper,
    .custom-card:active .card-image-wrapper {
        height: calc(var(--card-width) * 3 / 4) !important;
    }

    .custom-card .card-image {
        width: 100%;
        height: 100%;
        aspect-ratio: 16 / 9;
        object-fit: cover;
        border-radius: var(--btn-border-radius-30);
    }

    .custom-card:hover .card-hover-content,
    .custom-card:active .card-hover-content {
        opacity: 1 !important;
        max-height: none !important;
        transform: translateY(0) !important;
    }

    /* ------------------------------------- */
    /* СТРАНИЦА ОДНОГО ФЛОТА
    /* ------------------------------------- */
    .fleet-page-section {
        padding-top: 1.25rem;
        padding-bottom: 2.5rem;
    }

    .thumbnails-wrapper {
        min-width: auto;
        max-height: none;
        overflow-x: hidden;
        overflow-y: hidden;
        min-height: 60px;
        padding: 0.25rem;
    }

    .gallery-thumb {
        min-width: 60px;
        aspect-ratio: 1 / 1;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
    }

    .fleet-specs {
        padding-bottom: 2.5rem;
    }

    /* =================================================================
    * СТРАНИЦА ПАРТНЕРЫ
    * ================================================================= */
    .partners-section img {
        aspect-ratio: 16 / 9;
        border-radius: var(--btn-border-radius-40);
    }
    
    .partners-section h1 {
        font-size: 1.875rem;
    }
    
    .partnership-process-info {
        margin-bottom: 3.75rem;
    }
    .chars_row > div{
        margin: 0!important;
    }

    .map {
    	padding-top: 0rem;
    	/* 0px */
    	padding-bottom: 0rem;
    	/* 0px */
    }

}

@media (max-width: 550px) {
    .fleet-plane-image {
        min-height: 100%;
        height: 100%;
        padding-bottom: clamp(10rem, -33.6364rem + 218.1818vw, 25rem);
    }

    .plane-absolute {
        left: 0rem;
        right: 0rem;
        max-width: 100%;
        min-width: 100%;
        top: clamp(205rem, 132.2727rem + 363.6364vw, 230rem);
        overflow: hidden;
    }
}

/* ---- СТИЛИ ДЛЯ OFF-CANVAS (Мобильное меню) ---- */
.offcanvas-header {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.mobile-menu {
    /* Фоновый цвет меню, если он не белый (судя по скриншоту, он белый) */
    background-color: var(--color-white-base);
    width: 95% !important;
    /* Ширина меню */
}

/* Кнопка закрытия по скриншоту ("Закрыть" + иконка) */
.mobile-menu .btn-close-menu {
    /* Градиент */
    background: var(--gradient-primary);
    color: var(--color-white-base) !important;
    width: 3.125rem;
    height: 3.125rem;
    border: none;
    display: flex;
    align-items: center;
    padding: 0;
    cursor: pointer;
}

.mobile-menu .btn-close-menu:hover {
    width: 3.125rem;
    height: 3.125rem;
    color: var(--color-white-base) !important;
    opacity: 1 !important;
    outline: none !important;
    box-shadow: none !important;
    transform: none !important;
}

.mobile-menu .btn-close-menu path {
    stroke: #ffffff !important;
}

/* .mobile-menu .btn-close-menu .close-text {
    font-size: 1rem;
    color: #000;
    margin-right: 5px;
} */

/* Стили основного списка меню */
.mobile-menu .menu-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mobile-menu .menu-list .nav-item:last-child {
    border-bottom: none;
}

.mobile-menu .menu-list .nav-link {
    font-family: var(--font-body);
    font-size: 1rem;
    /* Крупный шрифт для меню */
    font-weight: 400;
    color: var(--color-black-base);
    padding: 1rem 0;
    transition: color 0.3s;
}

.mobile-menu .menu-list .nav-link.active,
.mobile-menu .menu-list .nav-link:hover {
    color: var(--color-red-base);
    /* Активный цвет */
}

/* Футер меню (кнопка и соцсети) */
.mobile-menu .offcanvas-footer .btn-primary-gradient {
    font-size: 1rem;
    font-weight: 700;
}

.mobile-menu .offcanvas-footer .text-dark img {
    /* Стилизация иконок соцсетей */
    filter: invert(0);
    /* Убеждаемся, что иконки темные */
    width: 1.5rem;
    height: 1.5rem;
}