﻿.sitemap ul {
    list-style: none;
}

.sitemap ul.grandchildren {
    list-style: inside disc;
    margin-left: 40px;
}

.sitemap ul.great-grandchildren {
    list-style: none;
    margin-left: 40px;
}

.sitemap h2 {
    color: #03336c;
    font-size: 28px;
    font-weight: 900;
    margin: 0;
}

.sitemap h3 {
    color: #2b2b2b;
    font-size: 22px;
    font-weight: bold;
    margin: 0;
}

.sitemap h4 {
    color: #2b2b2b;
    font-size: 22px;
    font-weight: normal;
    margin: 0;
    display: inline;
}

svg {
    pointer-events: none;
}

@media (max-width: 575px) {
    .sitemap h2 {
        font-size: 20px;
    }

    .sitemap h3,
    .sitemap h4 {
        font-size: 16px;
    }
}

.sitemap button {
    background: none;
    border: none;
    cursor: pointer;
}

.sitemap .display-none {
    display: none;
}

.sitemap .top-heading {
    border-bottom: 2px solid #a9a9a9;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px;
    transition: border-bottom-color 200ms;
}
.sitemap li.open .top-heading {
    border-bottom-color: var(--blue);
}

.sitemap .sub-heading {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    padding: 30px;
    border-bottom: 2px solid #f4f4f4;
}
.sitemap li:last-child > .sub-heading {
    border-bottom-color: #a9a9a9;
}

.sitemap .flex-clear {
    flex: 1 1 100%;
}

.sitemap .bi {
    transition: transform 200ms;
    fill: #2b2b2b;
}

.sitemap button.blue .bi {
    fill: var(--blue);
}

.sitemap button.open .bi {
    transform: rotateZ(90deg);
}

.sitemap .stretch-container {
    position: relative;
}

.sitemap .stretch-container .stretched::after {
    content: '';
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 1;
}

.sitemap .above-stretched {
    z-index: 2;
}
