.elementor-kit-2015{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-2015 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Глобальные сбросы Elementor */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    width: 100% !important;
    min-height: 100vh !important;
    font-family: 'Open Sans', sans-serif; /* Применяем шрифт глобально */
    line-height: 1.5;
    min-width: 320px; /* Минимальная ширина для предотвращения слишком сильного сжатия */
}

/* Максимально агрессивные сбросы для всех элементов Elementor */
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap,
.elementor-widget-container,
.elementor-widget-html,
.elementor-element {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background: transparent !important; /* Убираем все фоны по умолчанию */
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    transform: none !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    display: block !important; /* Убедимся, что display не сбрасывается на что-то нежелательное */
}

/* Сброс для конкретной секции и колонки, если они используются для хедера */
/* Эти стили должны быть применены к секции и колонке, которые оборачивают ваш виджет Навигационного меню */
.elementor-section[data-id="6f17a0a"] { /* Предполагается, что это ваша секция хедера */
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

.elementor-column[data-id="71d6048"] { /* Предполагается, что это колонка внутри секции хедера */
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

/* Контейнер обертки виджетов в колонке, который должен содержать меню и соц.иконки */
/* Это тот элемент, который должен получить красный фон и основные отступы */
.elementor-column[data-id="71d6048"] > .elementor-widget-wrap.elementor-element-populated {
    width: 100% !important;
    height: calc(80 / var(--design-width) * 100vw) !important;
    background-color: var(--main-red) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important; /* Распределяем меню и соц. иконки */
    padding: 0 calc(296 / var(--design-width) * 100vw) !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    z-index: 99 !important;
}

/* Стили для социальных иконок, если они являются отдельным виджетом в той же колонке */
.social-icons {
    display: flex !important;
    gap: calc(33 / var(--design-width) * 100vw) !important;
    padding: 0 !important;
    margin: 0 !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

.social-icons a {
    width: calc(33 / var(--design-width) * 100vw) !important;
    height: calc(33 / var(--design-width) * 100vw) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--white) !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

.social-icons a:hover {
    color: var(--main-yellow) !important;
}
/* Переменные */
:root {
    --design-width: 2560;
    --main-red: #88012A;
    --main-yellow: #F2E203;
    --white: #FFFFFF;
    --inactive-dot-color: #505050;
    --arrow-bg-light: rgba(227, 227, 227, 0.1);
    --arrow-bg-dark: rgba(215, 206, 206, 0.3);
}

/* ГЛОБАЛЬНЫЕ ПРАВИЛА ДЛЯ РАСТЯГИВАНИЯ НА 100% ШИРИНЫ ЭКРАНА В ELEMENTOR */
/* Эти правила пытаются переопределить стили Elementor, которые могут ограничивать ширину. */
/* Применяйте их в "Дополнительные CSS" вашей темы. */

html, body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important; /* Предотвращаем горизонтальную прокрутку */
    width: 100% !important; /* Убедимся, что html и body занимают всю ширину */
}

/* Сброс для всех секций Elementor */
.elementor-section {
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
}

/* Сброс для контейнеров внутри секций Elementor (как "boxed", так и "full-width") */
.elementor-section.elementor-section-boxed > .elementor-container,
.elementor-section.elementor-section-full-width > .elementor-container,
.elementor-container { /* Общий сброс для всех Elementor контейнеров */
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Сброс для колонок Elementor */
.elementor-column {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important; /* Убираем padding у колонок */
    margin: 0 !important;
}

/* Сброс для оберток колонок (для старых версий Elementor) */
.elementor-column-wrap {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Сброс для контейнеров виджетов */
.elementor-widget-container {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
}

/* --- КОНЕЦ КРАЙНЕ АГРЕССИВНЫХ ГЛОБАЛЬНЫХ ПРАВИЛ ДЛЯ РАСТЯГИВАНИЯ --- */


/* --- СТИЛИ ДЛЯ ГЛАВНОГО ЭКРАНА / СЛАЙДЕРА --- */

/* Основной контейнер главного экрана/слайдера */
.main-hero-slider { /* Используем класс, добавленный к виджету Slides */
    position: relative !important;
    width: 100vw !important; /* Растягиваем на 100% ширины вьюпорта */
    height: calc(693 / var(--design-width) * 100vw) !important; /* Высота по макету */
    overflow: hidden !important; /* Обрезаем все, что выходит за пределы */
    box-sizing: border-box !important;
    font-family: 'Open Sans', sans-serif !important; /* Убедимся, что шрифт применяется */
}

/* Стили для обертки слайдов */
.main-hero-slider .elementor-slides-wrapper {
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
    height: 100% !important;
}

/* Стили для отдельного слайда */
.main-hero-slider .swiper-slide {
    height: 100% !important; /* Слайд занимает всю высоту родителя */
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
    padding: 0 !important;
}

/* Наложение фона на слайд (если не задали в настройках) */
.main-hero-slider .swiper-slide::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(277.76deg, rgba(0, 0, 0, 0) 50.98%, rgba(0, 0, 0, 0.6) 70.28%);
    pointer-events: none;
    z-index: 1;
}

/* Контейнер текста и кнопки */
.main-hero-slider .swiper-slide-inner {
    position: absolute !important;
    left: calc(296 / var(--design-width) * 100vw) !important;
    top: calc(126 / var(--design-width) * 100vw) !important;
    width: auto !important;
    max-width: calc(998 / var(--design-width) * 100vw) !important;
    height: auto !important;
    z-index: 2;
    text-align: left !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    box-sizing: border-box !important;
}

/* Контейнер содержимого слайда (включает заголовок, описание, кнопку) */
.main-hero-slider .swiper-slide-contents {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    text-align: left !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* Заголовок слайда (АРТБУД) */
.main-hero-slider .elementor-slide-heading {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: calc(100 / var(--design-width) * 100vw) !important;
    line-height: 120% !important;
    color: var(--white) !important;
    box-sizing: border-box !important;
}

/* Описание слайда */
.main-hero-slider .elementor-slide-description {
    width: 100% !important;
    max-width: calc(657 / var(--design-width) * 100vw) !important;
    margin: calc(24 / var(--design-width) * 100vw) 0 calc(50 / var(--design-width) * 100vw) 0 !important;
    padding: 0 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 500 !important;
    font-size: calc(30 / var(--design-width) * 100vw) !important;
    line-height: 142% !important;
    color: var(--white) !important;
    box-sizing: border-box !important;
}

/* Кнопка */
.main-hero-slider .elementor-button.elementor-slide-button { /* Добавлена специфичность */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: calc(29 / var(--design-width) * 100vw) calc(77 / var(--design-width) * 100vw) !important;
    gap: calc(10 / var(--design-width) * 100vw) !important;
    width: auto !important; /* Автоматическая ширина по содержимому */
    min-width: calc(371 / var(--design-width) * 100vw) !important; /* Минимальная ширина как в макете */
    height: calc(90 / var(--design-width) * 100vw) !important;
    background: var(--main-red) !important;
    border-radius: calc(5 / var(--design-width) * 100vw) !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: calc(32 / var(--design-width) * 100vw) !important;
    line-height: 100% !important;
    text-transform: capitalize !important;
    color: var(--white) !important;
    text-decoration: none !important;
    border: none !important;
    transition: background-color 0.3s ease !important;
    box-sizing: border-box !important;
}

.main-hero-slider .elementor-button.elementor-slide-button:hover {
    background: var(--main-yellow) !important;
    color: var(--main-red) !important;
}

/* Навигационные стрелки */
.main-hero-slider .elementor-swiper-button {
    width: calc(60 / var(--design-width) * 100vw) !important;
    height: calc(60 / var(--design-width) * 100vw) !important;
    background: rgba(227, 227, 227, 0.1) !important;
    color: var(--white) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    opacity: 1 !important;
    transition: background 0.3s ease !important;
}

.main-hero-slider .elementor-swiper-button-prev {
    left: 0 !important;
    border-radius: 0 calc(40 / var(--design-width) * 100vw) calc(40 / var(--design-width) * 100vw) 0 !important;
}

.main-hero-slider .elementor-swiper-button-next {
    right: 0 !important;
    border-radius: calc(40 / var(--design-width) * 100vw) 0 0 calc(40 / var(--design-width) * 100vw) !important;
}

.main-hero-slider .elementor-swiper-button:hover {
    background: rgba(227, 227, 227, 0.3) !important;
}

/* Стили для иконки в стрелках */
.main-hero-slider .elementor-swiper-button i {
    font-size: calc(24 / var(--design-width) * 100vw) !important;
    line-height: 1 !important;
}

/* Пагинация (точки) */
.main-hero-slider .swiper-pagination {
    position: absolute !important;
    width: auto !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: calc(60 / var(--design-width) * 100vw) !important;
    display: flex !important;
    gap: calc(16 / var(--design-width) * 100vw) !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10;
}

.main-hero-slider .swiper-pagination-bullet {
    width: calc(18 / var(--design-width) * 100vw) !important;
    height: calc(18 / var(--design-width) * 100vw) !important;
    background: #505050 !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    margin: 0 !important;
    transition: background 0.3s ease !important;
}

.main-hero-slider .swiper-pagination-bullet-active {
    background: var(--main-red) !important;
}

/* АДАПТИВНОСТЬ */
@media (max-width: 1200px) {
    :root {
        --design-width: 1920;
    }
}

@media (max-width: 768px) {
    .main-hero-slider .swiper-slide {
        height: 500px !important; /* Уменьшаем высоту на мобильных */
    }
    .main-hero-slider .swiper-slide-inner {
        left: 20px !important;
        top: 20px !important;
        max-width: 90% !important;
    }
    .main-hero-slider .elementor-slide-heading {
        font-size: 32px !important;
    }
    .main-hero-slider .elementor-slide-description {
        font-size: 18px !important;
    }
    .main-hero-slider .elementor-button.elementor-slide-button {
        font-size: 16px !important;
        padding: 15px 30px !important;
    }
    .main-hero-slider .elementor-swiper-button {
        width: 40px !important;
        height: 40px !important;
    }
    .main-hero-slider .swiper-pagination {
        bottom: 20px !important;
    }
    .main-hero-slider .swiper-pagination-bullet {
        width: 12px !important;
        height: 12px !important;
    }
}/* End custom CSS */