.navlists {
    display: flex;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2em;
}

.fit-content:has(.navlists) {
    margin-top: 2em;
}

.fit-content .navlists {
    margin-top: 0;
}

.navlists.column {
    flex-flow: column;
    max-width: max-content;
}

.navlists .navlist:first-child {
    margin-top: 0;
}


.navlist {
    display: flex;
    margin: 1em 0;
    text-decoration: none;
    border: thin solid black;
}

.navlist.rows {
    flex-flow: row wrap;
    align-items: stretch;
    justify-content: center;
}

@media (max-width: 48em) {
    .navlist.rows {
        flex-flow: column;
    }
}

.navlist.column {
    flex-flow: column;
    align-items: stretch;
}

.navlist:has(> h1) {
    border: none;
}

.navlist:has(> h1) > .body {
    border: thin solid black;
}

.navlist * {
    text-decoration: inherit;
}

.navlist ins {
    text-decoration: underline;
}

.navlist del {
    text-decoration: line-through;
}

.navlist section {
    flex: 1 1 auto;
    display: flex;
    flex-flow: row;
    padding: 0;
    margin: 0;
    position: relative;
    background-color: #ECECEC;
    border: thin solid black;
}

.navlist section > a:first-child {
    flex: 1 1 auto;
    display: block;
    padding: 0.5em 1em;
}

.navlist h1,
.navlist a p {
    padding: 0;
    margin: 0;
}

.navlist a p {
    line-height: 1.2;
}

.navlist section:is(:hover, :focus) {
    background-color: #ECE0A5;
    outline-style: none;
}

.navlist + .navlist {
    margin-top: 1em;
}

.navlist h1 {
    font-size: large;
    font-weight: bold;
    letter-spacing: 0.1em;
    word-spacing: 0.06em;
}

.navlist > h1 {
    display: table;
    margin-left: auto;
    margin-right: auto;
    font-size: medium;
    padding: 0.25em 0.5em;
}

.navlist > h1 a[href]:is(:hover, :focus) {
    color: inherit;
}

.navlist > h1 a {
    color: #CCCCCC;
}

.navlist a p {
    margin-top: 0.2em;
    margin-bottom: 0;
    font-size: smaller;
    color: black;
}


.navlist section:has(> .extras) > a:first-child {
    padding-right: 0.5em;
}

.navlist section > .extras {
    flex: 0 1 auto;
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    justify-content: flex-end;
    margin: 0;
}

.navlist section > .extras > li {
    display: flex;
    flex-flow: row wrap;
}

.navlist section > .extras > li + li {
    margin-top: 0;
}

.navlist section > .extras > li > a {
    flex: none;
    display: flex;
    flex-flow: row;
    align-items: center;
    padding: 0.5em;
    margin: 0;
    white-space: nowrap;
    border-left: thin solid transparent;
    border-right: thin solid transparent;
    opacity: 0.4;
}

.navlist section > .extras > li:last-child > a {
    border-right: none;
}

@media (max-width: 34em) {
    .navlist section > .extras > li > a {
        border-top: thin solid transparent;
        border-bottom: thin solid transparent;
    }
    .navlist section > .extras > li:last-child > a {
        border-right: thin solid transparent;
    }
}

.navlist section > .extras > li > a[href]:is(:hover, :focus) {
    background-color: #ECE0A5;
    outline-style: none;
    border-color: black;
    opacity: revert;
}

.navlist section > .extras > li > a.image {
    background-origin: content-box;
    min-height: 2.5em;
    color: transparent;
}
