/* ===== Эффект подчёркивания пунктов верхнего меню (как на лендинге ipdirect) =====
   Синяя черта «выезжает» из центра при наведении и у активного пункта.
   Пункт «Еще» (dropdown-toggle) исключён через :not(.dropdown-toggle),
   чтобы не затиралась стрелочка выпадающего списка (каретка Bootstrap). */
#navbarCollapse .navbar-nav .nav-item > .nav-link {
    position: relative;
    transition: color .15s ease;
}
#navbarCollapse .navbar-nav .nav-item > .nav-link:not(.dropdown-toggle):hover { color: #335EEA; }
#navbarCollapse .navbar-nav .nav-item > .nav-link:not(.dropdown-toggle).current { color: #335EEA; font-weight: 600; }
#navbarCollapse .navbar-nav .nav-item > .nav-link:not(.dropdown-toggle)::after {
    content: ""; position: absolute; left: 1rem; right: 1rem; bottom: -2px;
    height: 2px; background: #335EEA; transform: scaleX(0); transform-origin: center;
    transition: transform .2s ease;
}
#navbarCollapse .navbar-nav .nav-item > .nav-link:not(.dropdown-toggle):hover::after,
#navbarCollapse .navbar-nav .nav-item > .nav-link:not(.dropdown-toggle).current::after { transform: scaleX(1); }

/* ===== Адаптация меню (сжатие шрифта и отступов через CSS container queries, как на лендинге) =====
   Чистый CSS: при сужении контейнера #navbarCollapse пункты плавно сжимаются,
   чтобы помещаться в одну строку. Никакого JS. */
#navbarCollapse { container-type: inline-size; flex-wrap: nowrap; }
#navbarCollapse .navbar-nav { flex-wrap: nowrap; flex-shrink: 0; }

#navbarCollapse .navbar-nav .nav-item > .nav-link,
#navbarCollapse .top_buttons .navbar-btn {
    font-size: 1rem;
    padding: 0.5rem 1rem;
    white-space: nowrap;
}
#navbarCollapse .top_buttons .navbar-btn {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

@container (max-width: 1240px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link { padding-left: .8rem; padding-right: .8rem; }
    #navbarCollapse .top_buttons .navbar-btn { padding-left: .65rem; padding-right: .65rem; }
}
@container (max-width: 1180px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link { padding-left: .65rem; padding-right: .65rem; }
    #navbarCollapse .top_buttons .navbar-btn { padding-left: .55rem; padding-right: .55rem; }
}
@container (max-width: 1130px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link { padding-left: .5rem; padding-right: .5rem; }
    #navbarCollapse .top_buttons .navbar-btn { padding-left: .45rem; padding-right: .45rem; }
}
@container (max-width: 1080px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link { padding-left: .35rem; padding-right: .35rem; }
    #navbarCollapse .top_buttons .navbar-btn { padding-left: .35rem; padding-right: .35rem; }
}
@container (max-width: 1040px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link,
    #navbarCollapse .top_buttons .navbar-btn { font-size: .94rem; }
}
@container (max-width: 1000px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link,
    #navbarCollapse .top_buttons .navbar-btn { font-size: .88rem; }
}
@container (max-width: 960px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link,
    #navbarCollapse .top_buttons .navbar-btn { font-size: .82rem; }
}
@container (max-width: 920px) {
    #navbarCollapse .navbar-nav .nav-item > .nav-link,
    #navbarCollapse .top_buttons .navbar-btn { font-size: .76rem; }
}

/* Вертикальное выравнивание лого / меню / кнопки «Скачать» (как на лендинге) */
.navbar-brand { display: inline-flex; align-items: center; }
#navbarCollapse { align-items: center; }
#navbarCollapse .navbar-nav { align-items: center; }
#navbarCollapse .top_buttons { display: flex; align-items: center; }
#navbarCollapse .top_buttons .navbar-btn {
    display: inline-flex; align-items: center; align-self: center;
}

/* Активный подпункт выпадающего «Еще» */
#navbarCollapse .dropdown-menu .dropdown-item.current {
    color: #335EEA;
    font-weight: 600;
    background: transparent;
}

/* Мобильное меню (≤992px): «Еще» как отдельный пункт не нужен — прячем
   переключатель, а его подпункты показываем сразу. Container-сжатие отключаем,
   т.к. в свёрнутом меню пункты идут в столбец с исходными размерами. */
@media (max-width: 991.98px) {
    #navbarCollapse {
        container-type: normal;
        flex-wrap: wrap;
    }
    #navbarCollapse .navbar-nav { flex-wrap: wrap; flex-shrink: 1; }
    #navbarCollapse .navbar-nav .nav-item.dropdown > a.dropdown-toggle { display: none; }
    #navbarCollapse .navbar-nav .nav-item.dropdown .dropdown-menu {
        display: block; position: static; float: none; border: 0;
        background: transparent; padding: 0; margin: 0; box-shadow: none;
    }
    #navbarCollapse .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item {
        padding: .5rem 1rem; color: #333; white-space: nowrap;
    }
    #navbarCollapse .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item:hover {
        background: #eef1f8; color: #335EEA;
    }
}
