/* Homepage Search Form Styles - Только кнопка "Поиск" */

/* ИСПРАВЛЕНИЕ ДЛЯ ELEMENTOR - убираем огромную стрелку */
.acadp-search-form.acadp-form-horizontal {
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
    position: relative !important;
    z-index: 9999 !important;
    /* Приоритет загрузки */
    content-visibility: auto !important;
    contain-intrinsic-size: 0 80px !important;
}

/* УБИРАЕМ ОГРОМНУЮ СТРЕЛКУ В ELEMENTOR */
.acadp-search-form.acadp-form-horizontal::before,
.acadp-search-form.acadp-form-horizontal::after {
    display: none !important;
    content: none !important;
}

/* УБИРАЕМ СТРЕЛКИ И СИМВОЛЫ */
.acadp-search-form .acadp-form-group::before,
.acadp-search-form .acadp-form-group::after,
.acadp-search-form .acadp-form-group > *::before,
.acadp-search-form .acadp-form-group > *::after {
    display: none !important;
    content: none !important;
}

/* ИСПРАВЛЯЕМ ОТОБРАЖЕНИЕ В ELEMENTOR */
.elementor-widget-shortcode .acadp-search-form {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* УБИРАЕМ ПЛЕЙСХОЛДЕРЫ */
.acadp-search-form .acadp-form-group {
    position: relative !important;
}

.acadp-search-form .acadp-form-group::before {
    display: none !important;
    content: none !important;
}

/* ДОПОЛНИТЕЛЬНЫЕ ИСПРАВЛЕНИЯ ДЛЯ ELEMENTOR */
.elementor-widget-shortcode .acadp-search-form .acadp-form-group {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

/* УБИРАЕМ ВСЕ ПСЕВДОЭЛЕМЕНТЫ */
.acadp-search-form *::before,
.acadp-search-form *::after {
    display: none !important;
    content: none !important;
}

/* ИСПРАВЛЯЕМ ОТОБРАЖЕНИЕ ПОЛЕЙ */
.acadp-search-form .acadp-form-group input,
.acadp-search-form .acadp-form-group select {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* УБИРАЕМ СТРЕЛКИ И СИМВОЛЫ */
.acadp-search-form .acadp-form-group::before,
.acadp-search-form .acadp-form-group::after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    border: none !important;
    background: none !important;
}

/* Подключаем шрифт Montserrat */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

/* УБИРАЕМ ТОЛЬКО СЕРЫЙ ФОН У КОНТЕЙНЕРОВ */
.elementor-element-6741b67,
.elementor-element-496bb61,
.elementor-element-dbf4bb7 {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
}

/* УБИРАЕМ ТОЛЬКО СЕРЫЙ ФОН НА ПК */
@media (min-width: 769px) {
    .elementor-element-6741b67,
    .elementor-element-496bb61,
    .elementor-element-dbf4bb7 {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        border: none !important;
        border-radius: 0 !important;
    }
}

/* Мобильная версия - убираем только серый фон */
@media (max-width: 768px) {
    .elementor-element-6741b67,
    .elementor-element-496bb61,
    .elementor-element-dbf4bb7 {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        border: none !important;
        border-radius: 0 !important;
    }
    
    /* ДЕЛАЕМ МОБИЛЬНУЮ ФОРМУ МАКСИМАЛЬНО ШИРОКОЙ */
    .acadp-search-form.acadp-form-horizontal {
        width: 95vw !important;
        max-width: none !important;
        height: auto !important;
        min-height: 270px !important;
        padding: 20px !important;
        margin: 20px 0 !important;
        border-radius: 15px !important;
        position: relative !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-grid {
        flex-direction: column !important;
        gap: 12px !important;
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-form-group {
        width: 100% !important;
        flex: none !important;
        margin-bottom: 12px !important;
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-form-control {
        height: 55px !important;
        padding: 15px 20px !important;
        font-size: 18px !important;
        border-radius: 12px !important;
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-button-primary {
        height: 60px !important;
        padding: 15px 25px !important;
        font-size: 18px !important;
        border-radius: 12px !important;
        gap: 12px !important;
    }
}

/* Убираем отступы между слайдером и формой, так как контейнер больше не нужен */
.ekit-main-swiper {
    margin-bottom: 0 !important;
}

/* Мобильная версия - также убираем отступы */
@media (max-width: 768px) {
    .ekit-main-swiper {
        margin-bottom: 0 !important;
    }
}

/* Устанавливаем размеры формы и центрируем */
.acadp-search-form.acadp-form-horizontal {
    width: 1145px !important;
    height: 80px !important; /* Уменьшаем высоту для горизонтальной раскладки */
    max-width: none !important;
    max-height: 80px !important;
    margin: 0 auto !important;
    padding: 20px !important;
    background: #FFF !important;
    border-radius: 25.019px !important;
    box-shadow: 0 3.127px 11.337px 0 rgba(0, 0, 0, 0.10) !important;
    overflow: hidden !important;
    display: block !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

/* Дополнительное центрирование для родительского контейнера */
.acadp-search-form.acadp-form-horizontal {
    text-align: center !important;
}

/* Центрирование для всех вложенных элементов */
.acadp-search-form.acadp-form-horizontal * {
    text-align: left !important;
}

/* Принудительное центрирование родительского контейнера */
body .acadp-search-form.acadp-form-horizontal,
div .acadp-search-form.acadp-form-horizontal,
section .acadp-search-form.acadp-form-horizontal,
article .acadp-search-form.acadp-form-horizontal {
    margin: 0 auto !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    position: relative !important;
    display: block !important;
}

/* Адаптируем контейнер под размеры формы */
.acadp-search-form.acadp-form-horizontal .acadp-grid {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: row !important; /* Горизонтальная раскладка */
    gap: 15px !important; /* Увеличиваем gap для горизонтальной раскладки */
    align-items: center !important; /* Выравниваем элементы по центру */
}

/* Адаптируем поля формы под размеры */
.acadp-search-form.acadp-form-horizontal .acadp-form-group {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important; /* Позволяет полям сжиматься */
}

.acadp-search-form.acadp-form-horizontal .acadp-form-control {
    width: 100% !important;
    max-width: 100% !important;
    height: 40px !important;
    padding: 10px 14px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
}

/* Универсальные стили для всех input полей в форме */
.acadp-search-form.acadp-form-horizontal input {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    padding: 10px 14px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
}

/* Универсальные стили для всех select полей в форме */
.acadp-search-form.acadp-form-horizontal select {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    padding: 10px 14px !important;
    font-size: 12px !important;
    box-sizing: border-box !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
}

/* Шрифт Montserrat для всего текста в форме - МАКСИМАЛЬНАЯ СПЕЦИФИЧНОСТЬ */
.acadp-search-form.acadp-form-horizontal,
.acadp-search-form.acadp-form-horizontal *,
.acadp-search-form.acadp-form-horizontal input,
.acadp-search-form.acadp-form-horizontal select,
.acadp-search-form.acadp-form-horizontal button,
.acadp-search-form.acadp-form-horizontal .acadp-form-control,
.acadp-search-form.acadp-form-horizontal .acadp-form-select,
.acadp-search-form.acadp-form-horizontal .acadp-button-primary,
.acadp-search-form.acadp-form-horizontal .acadp-form-group:first-child .acadp-form-control,
.acadp-search-form.acadp-form-horizontal .acadp-form-group:first-child .acadp-form-select {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
}

/* ДОПОЛНИТЕЛЬНЫЕ АГРЕССИВНЫЕ СТИЛИ ДЛЯ ШРИФТА */
body .acadp-search-form.acadp-form-horizontal,
body .acadp-search-form.acadp-form-horizontal *,
body .acadp-search-form.acadp-form-horizontal input,
body .acadp-search-form.acadp-form-horizontal select,
body .acadp-search-form.acadp-form-horizontal button,
body .acadp-search-form.acadp-form-horizontal .acadp-form-control,
body .acadp-search-form.acadp-form-horizontal .acadp-form-select,
body .acadp-search-form.acadp-form-horizontal .acadp-button-primary {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
}

/* СТИЛИ ДЛЯ ВСЕХ ВОЗМОЖНЫХ СЕЛЕКТОРОВ */
.acadp-search-form input,
.acadp-search-form select,
.acadp-search-form button,
.acadp-search-form .acadp-form-control,
.acadp-search-form .acadp-form-select,
.acadp-search-form .acadp-button-primary,
.acadp-form-horizontal input,
.acadp-form-horizontal select,
.acadp-form-horizontal button,
.acadp-form-horizontal .acadp-form-control,
.acadp-form-horizontal .acadp-form-select,
.acadp-form-horizontal .acadp-button-primary {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
}

/* Размеры для поля поиска input[type="text"] */
.acadp-search-form.acadp-form-horizontal input[type="text"].acadp-form-input,
.acadp-search-form.acadp-form-horizontal input[type="text"],
.acadp-search-form.acadp-form-horizontal input[name="q"],
.acadp-search-form.acadp-form-horizontal .acadp-form-input {
    width: 100% !important;
    max-width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    padding: 10px 14px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
}

/* Специальные стили для поля категории - уменьшенный шрифт */
.acadp-search-form.acadp-form-horizontal .acadp-category-field,
.acadp-search-form.acadp-form-horizontal select.acadp-category-field,
.acadp-search-form.acadp-form-horizontal .acadp-form-select.acadp-category-field,
.acadp-search-form.acadp-form-horizontal select[name="c"],
.acadp-search-form.acadp-form-horizontal select#c,
.acadp-search-form.acadp-form-horizontal .form-control.acadp-form-control.acadp-form-select.acadp-category-field {
    font-size: 14px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* Стили для option элементов в поле категории */
.acadp-search-form.acadp-form-horizontal .acadp-category-field option,
.acadp-search-form.acadp-form-horizontal select.acadp-category-field option {
    font-size: 14px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Специальные размеры для разных полей */
.acadp-search-form.acadp-form-horizontal .acadp-form-group:first-child {
    flex: 2 !important; /* Категория - шире */
}

.acadp-search-form.acadp-form-horizontal .acadp-form-group:nth-child(2) {
    flex: 1.5 !important; /* Цена от/до - средняя ширина */
}

.acadp-search-form.acadp-form-horizontal .acadp-form-group:last-child {
    flex: 1 !important; /* Кнопка - уже */
}

/* Стили ТОЛЬКО для кнопки поиска */
.acadp-search-form.acadp-form-horizontal .acadp-button-primary {
    border-radius: 9.113px !important;
    background: linear-gradient(90deg, #24BDFF 5.77%, #2155FC 157.69%), #2E6AFA !important;
    border: none !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    height: 45px !important;
    justify-content: center !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 15px !important;
    padding: 10px 18px !important;
    box-sizing: border-box !important;
}

.acadp-search-form.acadp-form-horizontal .acadp-button-primary:hover {
    background: linear-gradient(135deg, #2563eb 0%, #1e40af 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3) !important;
}

.acadp-search-form.acadp-form-horizontal .acadp-button-primary:active {
    transform: translateY(0) !important;
}

/* Мобильные стили для удобства нажатия */
@media (max-width: 768px) {
    .acadp-search-form.acadp-form-horizontal {
        width: 95vw !important;
        max-width: none !important;
        height: auto !important;
        min-height: 270px !important; /* Увеличиваем высоту */
        padding: 20px !important; /* Увеличиваем отступы */
        margin: 20px 0 !important;
        border-radius: 15px !important;
        position: relative !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
    }
    
    /* ВЕРТИКАЛЬНАЯ РАСКЛАДКА ДЛЯ МОБИЛЬНЫХ */
    .acadp-search-form.acadp-form-horizontal .acadp-grid {
        flex-direction: column !important; /* Вертикальная раскладка на мобильных */
        gap: 12px !important; /* Уменьшаем расстояние между элементами */
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-form-group {
        width: 100% !important;
        flex: none !important; /* Убираем flex для мобильных */
        margin-bottom: 12px !important; /* Уменьшаем отступы */
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-form-control {
        height: 55px !important;
        min-height: 55px !important;
        padding: 15px 20px !important;
        font-size: 16px !important;
        border-radius: 12px !important;
        line-height: 1.3 !important;
        vertical-align: middle !important;
        box-sizing: border-box !important;
    }
    
    /* Уменьшенный шрифт для поля категории на мобильных */
    .acadp-search-form.acadp-form-horizontal .acadp-category-field,
    .acadp-search-form.acadp-form-horizontal select.acadp-category-field {
        font-size: 13px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 100% !important;
    }
    
    .acadp-search-form.acadp-form-horizontal .acadp-button-primary {
        height: 60px !important;
        padding: 15px 25px !important;
        font-size: 18px !important;
        border-radius: 12px !important;
        gap: 12px !important;
    }
    
    /* Шрифт Montserrat для мобильной версии - МАКСИМАЛЬНАЯ СПЕЦИФИЧНОСТЬ */
    .acadp-search-form.acadp-form-horizontal,
    .acadp-search-form.acadp-form-horizontal *,
    .acadp-search-form.acadp-form-horizontal input,
    .acadp-search-form.acadp-form-horizontal select,
    .acadp-search-form.acadp-form-horizontal button,
    .acadp-search-form.acadp-form-horizontal .acadp-form-control,
    .acadp-search-form.acadp-form-horizontal .acadp-form-select,
    .acadp-search-form.acadp-form-horizontal .acadp-button-primary {
        font-family: 'Montserrat', sans-serif !important;
        font-weight: 500 !important;
    }
    
    /* ДОПОЛНИТЕЛЬНЫЕ АГРЕССИВНЫЕ СТИЛИ ДЛЯ МОБИЛЬНОЙ ВЕРСИИ */
    body .acadp-search-form.acadp-form-horizontal,
    body .acadp-search-form.acadp-form-horizontal *,
    body .acadp-search-form.acadp-form-horizontal input,
    body .acadp-search-form.acadp-form-horizontal select,
    body .acadp-search-form.acadp-form-horizontal button,
    body .acadp-search-form.acadp-form-horizontal .acadp-form-control,
    body .acadp-search-form.acadp-form-horizontal .acadp-form-select,
    body .acadp-search-form.acadp-form-horizontal .acadp-button-primary {
        font-family: 'Montserrat', sans-serif !important;
        font-weight: 500 !important;
    }
    
    /* Дополнительные стили для input полей на мобильных */
    .acadp-search-form.acadp-form-horizontal input,
    .acadp-search-form.acadp-form-horizontal select,
    .acadp-search-form.acadp-form-horizontal .acadp-form-input,
    .acadp-search-form.acadp-form-horizontal .acadp-form-select {
        height: 55px !important;
        min-height: 55px !important;
        padding: 15px 20px !important;
        font-size: 16px !important;
        line-height: 1.3 !important;
        vertical-align: middle !important;
        box-sizing: border-box !important;
    }
}

/* МАКСИМАЛЬНЫЙ ПРИОРИТЕТ ДЛЯ ШРИФТА MONTSERRAT */
html body .acadp-search-form.acadp-form-horizontal,
html body .acadp-search-form.acadp-form-horizontal *,
html body .acadp-search-form.acadp-form-horizontal input,
html body .acadp-search-form.acadp-form-horizontal select,
html body .acadp-search-form.acadp-form-horizontal button,
html body .acadp-search-form.acadp-form-horizontal .acadp-form-control,
html body .acadp-search-form.acadp-form-horizontal .acadp-form-select,
html body .acadp-search-form.acadp-form-horizontal .acadp-button-primary {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
}

/* УНИВЕРСАЛЬНЫЕ СТИЛИ ДЛЯ ВСЕХ ФОРМ */
.acadp-search-form,
.acadp-search-form *,
.acadp-search-form input,
.acadp-search-form select,
.acadp-search-form button,
.acadp-search-form .acadp-form-control,
.acadp-search-form .acadp-form-select,
.acadp-search-form .acadp-button-primary {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
}

/* Форма всегда видна */
.acadp-search-form.acadp-form-horizontal.loaded {
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
}

/* МАКСИМАЛЬНАЯ СПЕЦИФИЧНОСТЬ для поля категории - принудительно уменьшаем шрифт */
html body .acadp-search-form.acadp-form-horizontal select[name="c"],
html body .acadp-search-form.acadp-form-horizontal select#c,
html body .acadp-search-form.acadp-form-horizontal .form-control.acadp-form-control.acadp-form-select.acadp-category-field,
html body .acadp-search-form.acadp-form-horizontal .acadp-category-field {
    font-size: 14px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 8px 12px !important;
}

/* Стили для option элементов с максимальной специфичностью */
html body .acadp-search-form.acadp-form-horizontal select[name="c"] option,
html body .acadp-search-form.acadp-form-horizontal select#c option {
    font-size: 14px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    padding: 6px 10px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}