
.page-template .main-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1010;
}

@media (max-width: 992px) {
    .page-template .main-header {
        position: fixed;
    }
}

.page-template .main-navigation > li > a {
    margin: 0;
    color: #32317c;
    font-size: 1.5em;
    font-weight: 600;
}

.top-menu-container {
    position: relative;
}

.main-navigation {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 3em;
    background-color: #fff;
}

.main-navigation > li {
    position: relative;
}

.main-navigation > li > a {
    display: block;
    padding: 12px 20px;
    text-decoration: none;
    color: #333;
    background: none;
}

.main-navigation > li:hover > a {
    background-color: #ddd;
}

.main-navigation .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9000;
    border: 1px solid #ccc;
    min-width: 155px;
    padding: .5em 0;
    list-style: none;
    background: #fff;
    box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.main-navigation .sub-menu .sub-menu {
    top: -20%;
    left: 95%
}

.main-navigation .sub-menu li {
    position: relative;
}

.top-menu-container .sub-menu a {
    margin: 0;
    display: block;
    padding: .5em 1em;
    text-decoration: none;
    /*color: #333;*/
    background: none;
    white-space: nowrap;
    /*color: #32317c;*/
    font-size: 1.3em;
    font-weight: 600;
}

nav.top-menu-container .sub-menu a,
nav.top-menu-container .sub-menu a:visited, a:link {
    color: #32317c;
    /*color: #32394d;*/
}

.top-menu-container .sub-menu a:hover {
    background: #dedce6;
    border-radius: 0;
}

.main-navigation > li > button::before,
.main-navigation > li.menu-item-has-children > a::before {
    content: "▼ ";
    font-size: 12px;
    margin-right: 5px;
}

.main-navigation li .sub-menu li.menu-item-has-children > a::after {
    content: " ▶";
    float: right;
    font-size: 8px;
    margin-left: 5px;
    display: block;
}

.main-header-container {
    position: relative;
}

.page-template .main-header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    position: relative;
    flex-wrap: wrap; /* дозволяє переходити на новий ряд при потребі */
}

.logo {
    flex-shrink: 0;
    font-weight: bold;
    font-size: 18px;
    text-decoration: none;
    color: #000;
}

.top-menu-container {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap; /* не переносити пункти меню */
}

.loginbtn-response {
    flex-shrink: 0;
    font-size: 16px;
}

@media (max-width: 1350px) {
    .main-navigation .sub-menu {
        min-width: 150px;
    }

    .sub-menu a {
        font-size: 1.2em;
        white-space: break-spaces;
    }
}

@media (max-width: 1150px) {
    .main-navigation .sub-menu {
        min-width: 135px;
    }

    .sub-menu a {
        font-size: 1.1em;
    }
}

@media (max-width: 768px) {
    .page-template .main-header-container {
        flex-direction: column;
        align-items: center;
        padding: 10px;
    }

    .top-menu-container {
        position: static;
        transform: none;
        margin: 10px 0;
    }

    .top-menu-container .sub-menu {
        line-height: 1;
        font-size: 11px;
    }

    .top-menu-container .sub-menu a {
        padding-left: 16px;
    }

    .main-navigation li .sub-menu li.menu-item-has-children > a:after {
        font-size: 10px;
        padding-top: 2px;
    }

    .logo,
    .loginbtn-response {
        margin: 5px 0;
    }
}

.page-template .main-navigation > li > button,
.page-template .main-navigation > li > a {
    font-size: 1.4em;
    padding: 12px 8px;
}

.page-template .main-navigation > li > button {
    background: none;
    text-decoration: none;
    border: none;
    font-weight: 600;
    color: #32317c;
}

@media (max-width: 1200px) {
    .layout .heading-courses-list span {
        font-size: 1.77em;
    }

    .page-template .main-navigation {
        gap: 1em;
    }

    .page-template div#collapseHeader {
        padding-right: 1em;
        margin-left: 1em;
    }
}

@media (min-width: 992px) {
    .main-navigation > li:hover > .sub-menu {
        display: block;
    }

    .page-template .top-menu-container .menu-item-has-children:hover .sub-menu .sub-menu {
        display: none;
    }

    .page-template .top-menu-container .menu-item-has-children .sub-menu > li:hover > .sub-menu {
        display: block;
    }
}

@media (max-width: 992px) {
    .page-template div#collapseHeader {
        position: absolute;
        display: flex;
        align-items: center;
    }

    .page-template .main-navigation {
        gap: .2em;
        background-color: unset;
    }

    .page-template .top-menu-container {
        position: relative;
        left: 0;
        transform: unset;
        order: 3;
        margin: 5px 0 0;
    }

    .page-template .top-menu-container .main-navigation > li > a,
    .page-template .top-menu-container .main-navigation > li > button {
        color: #fff;
    }

    .main-navigation .sub-menu li .sub-menu.active .sub-menu,
    .main-navigation .sub-menu li .sub-menu.active {
        top: 100%;
        left: 20%;
    }

    .page-template .top-menu-container .menu-item-has-children:hover .sub-menu {
        display: none;
    }

    .page-template .top-menu-container .menu-item-has-children:hover .sub-menu.active {
        display: block;
    }

    .main-navigation .sub-menu {
        min-width: 100%;
    }
}

@media (max-width: 650px) {
    .page-template .top-menu-container {
        margin: 5px auto 0 1.4em;
    }

    .page-template .top-menu-container .main-navigation {
        display: block;
    }

    .main-navigation .sub-menu {
        min-width: 110%;
    }

    .main-navigation .sub-menu li .sub-menu.active .sub-menu,
    .main-navigation .sub-menu li .sub-menu.active {
        left: 5%;
    }
}

@media (max-width: 425px) {
    .layout .heading-courses-list {
        gap: .3em;
    }

    .layout .heading-courses-list span {
        font-size: 1.60em;
        padding: .6em .5em;
        margin-bottom: .5em;
        font-weight: 600;
    }

    .top-menu-container .sub-menu a {
        font-size: 1.2em;
    }

}

@media (max-width: 400px) {
    .top-menu-container .sub-menu a {
        white-space: wrap;
    }
}

/*.page-template .main-header .sub-menu {*/
/*    display: none;*/
/*}*/
.page-template .main-header .sub-menu.active {
    display: block;
}

.page-template .test-prep-section .course h3 a,
.page-template .test-prep-section .course h3 a:link {
    color: #32394d;
}
