/* Left navigation: named groups and one persistent current location. */
body .left-sidebar .mactak-site-menu { height: auto; padding: 8px 10px; }
body .mactak-site-menu .mactak-nav-group { margin-bottom: 18px; }
/* Keep the original separators between services, buyer information and company links. */
body .mactak-site-menu .mactak-nav-group:not(:last-child) {
    padding-bottom: 4px;
    border-bottom: 1px solid #ff0000;
}
body .mactak-site-menu ul { height: auto; }
body .left-sidebar .mactak-site-menu li {
    height: auto;
    margin: 0 0 3px;
    text-align: left;
    border: 0;
    border-right: 5px solid #4573b1;
}
body .left-sidebar .mactak-site-menu li a {
    display: block;
    width: 100%;
    height: auto;
    padding: 8px 10px;
    font-size: 13px;
    line-height: 1.4;
    box-sizing: border-box;
    border: 0;
}
body .left-sidebar .mactak-site-menu li:hover { background: #f3f6fa; }
body .left-sidebar .mactak-site-menu li.active {
    background: #eaf0f8;
    border-right-color: #ff0000;
}
body .left-sidebar .mactak-site-menu li:hover { border-right-color: #ff0000; }
body .left-sidebar .mactak-site-menu li.active a { color: #294e80; }

/* Right navigation: reveal ancestors of the current page and selected branches. */
body #left_menu li.mactak-menu-open > ul { display: block !important; }
body #left_menu li:not(.mactak-menu-open) > ul { display: none !important; }
body #left_menu li { position: relative; }
body #left_menu a.mactak-menu-parent,
body #left_menu a.mactak-menu-current { font-weight: 600; }
body #left_menu a.mactak-menu-current { box-shadow: inset 3px 0 #eb1c2a; }
/* The open or selected item keeps the same blue/white palette as hover. */
body #left_menu li:hover > a,
body #left_menu li.mactak-menu-open > a,
body #left_menu a.mactak-menu-current,
body #left_menu a.mactak-menu-parent {
    background: #4573b1 !important;
    color: #fff;
}
body #left_menu li:hover > a .text,
body #left_menu li.mactak-menu-open > a .text,
body #left_menu a.mactak-menu-current .text,
body #left_menu a.mactak-menu-parent .text { color: #fff; }
body #left_menu li:hover > a .cat-icon span,
body #left_menu li.mactak-menu-open > a .cat-icon span,
body #left_menu a.mactak-menu-current .cat-icon span,
body #left_menu a.mactak-menu-parent .cat-icon span { background-position: 100%; }
body #left_menu li:has(> .mactak-menu-toggle) > a { padding-right: 32px; }
body #left_menu .mactak-menu-toggle {
    position: absolute;
    right: 2px;
    top: 0;
    width: 28px;
    height: 30px;
    padding: 0;
    background: transparent;
    color: #4573b1;
    border: 0;
    cursor: pointer;
    font: 20px/1 Arial, sans-serif;
}
body #left_menu .mactak-menu-toggle:focus-visible { outline: 2px solid #4573b1; }
body #left_menu li:hover > .mactak-menu-toggle,
body #left_menu li.mactak-menu-open > .mactak-menu-toggle,
body #left_menu li:has(> a.mactak-menu-current) > .mactak-menu-toggle,
body #left_menu li:has(> a.mactak-menu-parent) > .mactak-menu-toggle { color: #fff; }

/* Root catalog alignment only. Product counts remain visible. */
body .group-container-sect.mactak-main-catalog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 28px 24px;
    align-items: start;
    margin: 0 auto;
    padding-bottom: 24px;
}
body .mactak-main-catalog-grid > .group-block {
    float: none;
    display: flex;
    flex-direction: column;
    width: auto;
    height: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
}
body .mactak-main-catalog-grid > .group-block .group-img {
    height: 180px;
    flex-shrink: 0;
    margin-bottom: 8px;
}
body .mactak-main-catalog-grid .group-img a {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
}
body .mactak-main-catalog-grid .group-img img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    margin: 0;
    object-fit: contain;
}
body .mactak-main-catalog-grid > .group-block .group-link {
    width: 100%;
    height: auto;
    min-height: 72px;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    line-height: 1.35;
}
@media (max-width: 600px) {
    body .group-container-sect.mactak-main-catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 12px;
    }
    body .mactak-main-catalog-grid > .group-block .group-img { height: 130px; }
    body .mactak-main-catalog-grid > .group-block .group-link { min-height: 88px; }
}

/* Keep the login panel opaque and above the page header and search layers. */
body .login-form.show {
    background: #fff;
    opacity: 1;
    z-index: 3000;
}

/* Preserve the site's dark footer against the later framework defaults. */
body footer.footer {
    background-color: #626262;
    color: #fff;
}
body footer.footer .foot-text p,
body footer.footer .copyright,
body footer.footer a,
body footer.footer a:hover,
body footer.footer a:focus { color: #fff; }
body footer.footer .menu a:hover,
body footer.footer .menu a:focus-visible { background-color: #4573b1; }
body footer.footer .menu a:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -3px;
}
body footer.footer .copyright a { text-decoration: underline; }
