/*------------------------------------------------------------------ 
   1. IMPORT FONTS & LIBRARIES (ВСЕ ОРИГИНАЛЬНЫЕ ПОДКЛЮЧЕНИЯ СОХРАНЕНЫ)
-------------------------------------------------------------------*/ 
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700"); 
@import url("https://fonts.googleapis.com/css?family=Caveat&display=swap"); 
@import url("https://fonts.googleapis.com/icon?family=Material+Icons"); 
@import url("https://use.fontawesome.com/releases/v5.5.0/css/all.css"); 
@import url("https://cdn.linearicons.com/free/1.0.0/icon-font.min.css"); 
@import url("https://code.jquery.com/ui/1.12.1/themes/excite-bike/jquery-ui.css"); 
@import url("https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css"); 
@import url("https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.7.0/font/bootstrap-icons.min.css");
@import url("/css/custom.css");
@import url("/css/animate.min.css");
@import url("/icofont/icofont.min.css");
@import url("/css/select2.css");
@import url("https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.7.0/font/bootstrap-icons.min.css");
/* Дополнительное подключение геометрического шрифта Montserrat под логотип Solvex */
@import url('https://googleapis.com');

/*------------------------------------------------------------------ 
   2. SKELETON & GLOBAL 
-------------------------------------------------------------------*/ 
:root {
    /* Montserrat становится основным, Roboto и sans-serif остаются резервными */
    --font-solvex: 'Montserrat', 'Roboto', -apple-system, BlinkMacSystemFont, Arial, sans-serif;
}

body {
    font-family: var(--font-solvex);
    -webkit-font-smoothing: antialiased;
}

.container { 
    width: 100%; 
    padding-right: 15px; 
    padding-left: 15px; 
    margin-right: auto; 
    margin-left: auto; 
} 
@media (min-width: 576px)  { .container { max-width: 540px; } } 
@media (min-width: 768px)  { .container { max-width: 720px; } } 
@media (min-width: 992px)  { .container { max-width: 960px; } } 
@media (min-width: 1200px) { .container { max-width: 1140px; } } 
@media (min-width: 1500px) { .container { max-width: 1400px; } } 

/*------------------------------------------------------------------ 
   3. COMPONENTS 
-------------------------------------------------------------------*/ 
div.scrollup { 
    position: fixed; 
    right: 20px; 
    bottom: 50px; 
    padding: 4px 10px; 
    font-size: 20px; 
    background-color: #0a659d; 
    color: #fff; 
    border-radius: 4px 4px 0 0; 
    cursor: pointer; 
    display: none; 
    text-align: center; 
    z-index: 1000; 
} 
@media (max-width: 500px) { 
    div.scrollup { bottom: 100px; } 
} 

.header-logo { 
    max-width: 290px; 
    max-height: 75px; 
    width: auto; 
    height: auto; 
    object-fit: contain; 
    display: block; 
} 
@media (max-width: 767px) { 
    .header-logo { 
        max-width: 200px; 
        max-height: 50px; 
        margin: 10px auto; 
    } 
} 

/*------------------------------------------------------------------ 
   4. MAIN NAVIGATION (SOLVEX) - Исправление визуальных огрехов меню
-------------------------------------------------------------------*/ 
.custom-main-nav { 
    background-color: #0d659d; 
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); 
    border-bottom: 2px solid #1e8bc3; 
    position: relative;
    z-index: 1030; /* Меню перекрывает нижележащий контент (слайдеры, баннеры) */
} 

.custom-main-nav .navbar-nav { 
    display: flex; 
    width: 100%; 
    justify-content: space-between; 
    list-style: none;
    padding: 0;
    margin: 0;
} 

.custom-main-nav .nav-item { 
    flex: 1 1 0%; 
    text-align: center; 
    position: relative; 
} 

.custom-main-nav .nav-link { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    color: #fff; 
    text-transform: uppercase; 
    font-size: 0.82rem; /* Небольшое уменьшение убирает случайные переносы слов на новую строку */
    font-weight: 600; 
    letter-spacing: 0.3px;
    padding: 15px 5px; 
    height: 100%; 
    text-decoration: none;
    transition: background 0.2s ease-in-out, color 0.2s ease-in-out; 
} 

.custom-main-nav .nav-item:hover .nav-link { 
    background-color: rgba(255, 255, 255, 0.1); 
} 

/* Buttons Accents */ 
.nav-action-sale .nav-link { background-color: #d9534f; } 
.nav-action-sale:hover .nav-link { background-color: #c9302c; }

.nav-action-tickets .nav-link { background-color: #f0ad4e; } 
.nav-action-tickets:hover .nav-link { background-color: #ec971f; }

.nav-action-online .nav-link { background-color: #5cb85c; } 
.nav-action-online:hover .nav-link { background-color: #449d44; }

/* Корректировка выпадающих окон Bootstrap (dropdown) */
.custom-main-nav .dropdown-menu {
    border: none;
    border-radius: 0 0 4px 4px;
    box-shadow: 0 8px 16px rgba(0,0,0,0.15);
    margin-top: 0;
    padding: 8px 0;
}
.custom-main-nav .dropdown-item {
    font-size: 0.9rem;
    padding: 8px 20px;
    color: #333;
    font-weight: 500;
}
.custom-main-nav .dropdown-item:hover {
    background-color: #0d659d;
    color: #fff;
}

/*------------------------------------------------------------------ 
   5. CONTACTS & FOOTER 
-------------------------------------------------------------------*/ 
.contact-label { 
    font-size: 0.7rem; 
    text-transform: uppercase; 
    color: #718096; 
    font-weight: 600; 
} 

.contact-phone { 
    font-size: 1rem; 
    font-weight: 700; 
    color: #1a202c; 
    text-decoration: none; 
} 

.main-footer { 
    background-color: #1989bb; 
} 

.footer-nav .nav-link { 
    color: rgba(255, 255, 255, 0.9); 
    text-decoration: none;
} 
.footer-nav .nav-link:hover { 
    color: #fff; 
    text-decoration: underline;
} 

.footer-phone { 
    color: #fff; 
    font-size: 1.3rem; 
    font-weight: 700; 
} 

.label-hotline, .phone-hotline { 
    color: #ffbb00; 
}

/* Адаптивный брейкпоинт для главного меню */
@media (max-width: 991px) {
    .custom-main-nav .navbar-nav {
        flex-direction: column;
    }
    .custom-main-nav .nav-item {
        flex: none;
        width: 100%;
        text-align: left;
    }
    .custom-main-nav .nav-link {
        justify-content: flex-start;
        padding: 12px 15px;
        border-bottom: 1px solid rgba(255,255,255,0.05);
    }
}
