@media (max-width: 12.5em) {
    section h1.breadcrumbs,
    section h1.breadcrumbs .anchor {
        font-size: medium;
    }
}

section .breadcrumbs-bar {
    --breadcrumbs-link-horizontal-padding: 0.2em;
    display: flex;
    flex-flow: row;
    align-items: flex-start;
    font-size: x-large;
    text-align: initial;
    padding: 0.4em 0.5em 0.4em 0;
    border: solid thin gray;
    margin: 0 0 1em 0;
    background-color: #ECECEC;
}

@media (max-width: 24em) {
    section .breadcrumbs-bar {
        font-size: large;
    }
}

section .breadcrumbs-bar.centered {
    justify-content: center;
    max-width: max-content;
    padding-right: 0.6em;
    margin-left: auto;
    margin-right: auto;
}

section .breadcrumbs-bar .breadcrumbs {
    --breadcrumbs-continuation-lines-indentation: 1.2em;
    padding-left: var(--breadcrumbs-continuation-lines-indentation);
}

section .breadcrumbs-bar .breadcrumbs > a:first-child {
    margin-left: calc(var(--breadcrumbs-link-horizontal-padding) - var(--breadcrumbs-continuation-lines-indentation));
}

section .breadcrumbs-bar .breadcrumbs > .crumb > .s {
    padding-left: 0.1em;
    padding-right: 0.1em;
    border: thin solid transparent;
    margin-top: -1px;
}

section .breadcrumbs-bar a,
section .breadcrumbs-bar .breadcrumbs > .crumbs .s,
section .breadcrumbs-bar .breadcrumbs > .crumb > .helper {
    padding: var(--breadcrumbs-link-vertical-padding) var(--breadcrumbs-link-horizontal-padding);
    border: thin solid transparent;
}

section .breadcrumbs-bar a {
    opacity: 0.5;
}

section .breadcrumbs-bar .breadcrumbs .here {
    opacity: revert;
}

section .breadcrumbs-bar .breadcrumbs .ellipsis {
    position: relative;
}

section .breadcrumbs-bar .breadcrumbs .ellipsis sub {
    position: absolute;
    font-size: medium;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    margin-top: 0.25em;
}

@media (max-width: 24em) {
    section .breadcrumbs-bar .breadcrumbs .ellipsis sub {
        font-size: small;
    }
}

section .breadcrumbs-bar .breadcrumbs .here .hoisted {
    position: absolute;
    font-size: 1rem;
    bottom: 100%;
    padding: 0.1em 0.3em 0;
    margin-left: -0.3em;
    border: thin solid gray;
    border-bottom: thin solid #ECECEC;
    background-color: #ECECEC;
}

section .breadcrumbs-bar .breadcrumbs .here .hoisted :is(.prefix, .suffix) {
    display: none;
}

section .breadcrumbs-bar .section-relative-nav:has(.prev.downwards) + .breadcrumbs .here .hoisted {
    transform: translate(2em);
}

section:has(> .breadcrumbs-bar .breadcrumbs .hoisted) {
    padding-top: 1.5em;
}

section .breadcrumbs-bar a[href]:is(:hover, :focus) {
    background-color: var(--nav-background-color);
    border: thin solid black;
    opacity: revert;
}


section .breadcrumbs-bar .section-relative-nav {
    position: relative;
    margin-left: 0.5em;
    text-align: center;
}

section .breadcrumbs-bar .section-relative-nav > * {
    width: 1.2em;
    z-index: 1;
}

section .breadcrumbs-bar .section-relative-nav > .anchor {
    display: block;
    font-size: inherit;
    padding-left: 0;
    padding-right: 0;
}

section .breadcrumbs-bar .section-relative-nav > :not(.anchor) {
    position: absolute;
    padding: 0;
    left: 50%;
    top: 50%;
    width: 1em;
    height: 1em;
    margin-top: -0.5em;
    margin-left: -0.5em;
    line-height: 1;
    text-decoration: none;
    opacity: 0.25;
}

section .breadcrumbs-bar .section-relative-nav > .prev.upwards {
    transform: translate(-1.15em, -1.3em);
}

section .breadcrumbs-bar .section-relative-nav > .prev {
    transform: translate(0, -1.3em);
}

section .breadcrumbs-bar .section-relative-nav > .prev.downwards {
    transform: translate(1.15em, -1.3em);
}

section .breadcrumbs-bar .section-relative-nav > .next.upwards {
    transform: translate(-1.15em, 1.15em);
}

section .breadcrumbs-bar .section-relative-nav > .next {
    transform: translate(0, 1.25em);
}

section .breadcrumbs-bar .section-relative-nav > .next.downwards {
    transform: translate(1.15em, 1.15em);
}


section .breadcrumbs-bar .breadcrumbs .related-group {
    display: flex;
    flex-flow: row wrap;
    padding: 0 0.3em;
    border: none;
}

section .breadcrumbs-bar .breadcrumbs .related-group > a {
    border: thin solid;
    padding: 0.2em 0.3em;
}

section .breadcrumbs-bar .breadcrumbs .related-group > a + a {
    margin-left: 0.3em;
}



section.item-section h1 {
    border: dashed thin gray;
}

section .breadcrumbs-bar .section-relative-nav .of {
    position: absolute;
    left: auto;
    right: 100%;
    top: 50%;
    font-size: medium;
    padding: 0.1em 0.2em;
    margin-top: -0.7em;
    margin-right: 0.4em;
    color: black;
    opacity: 0.25;
}

section .breadcrumbs-bar .section-relative-nav .of.tight {
    margin-right: 0.1em;
}

section .breadcrumbs-bar .section-relative-nav .of:hover {
    opacity: revert;
}

section .description-and-last-updated {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    margin-top: -1.2em;
}

section .description-and-last-updated .last-updated {
    margin-top: 0.25em;
    margin-left: auto;
    margin-bottom: -0.5em;
}

section > h1 +                               .description,
section > h1 + .description-and-last-updated .description {
    flex: 0 1 auto;
    display: table;
    margin: -1.2em 0 0 2.2em;
    padding: 0.2em;
    padding-top: 0.25em;
    opacity: 0.6;
}

section > h1 + .description-and-last-updated .description {
    margin-top: 0;
}


section > header {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin: 0 auto 1em;
}

section > header > .breadcrumbs-bar {
    margin-top: 0;
    margin-bottom: 0;
}

section > header > a {
    margin: 0.75em;
    text-decoration: none;
}

section > :first-child a.direct-link {
    font-size: medium;
    padding: 0.2em 0.3em;
    border: thin solid;
    opacity: 0.5;
    align-self: center;
}

@media (max-width: 24em) {
    section > :first-child a.direct-link {
        font-size: small;
    }
}

section > :first-child .breadcrumbs a.direct-link {
    margin-left: 0.25em;
}

section > :first-child a.direct-link:hover {
    opacity: revert;
    background-color: var(--nav-background-color);
    border-color: black;
}

section > header > a.details-link {
    padding: 0.5em;
    border: thin solid green;
    color: green;
}

section > header > a.details-link:hover {
    background-color: green;
    color: white;
}

.end-of-section-indicator {
    display: table;
    font-size: smaller;
    color: black;
    border-top: thin solid gray;
    border-bottom: thin solid gray;
    margin: 1em auto;
}

.end-of-section-indicator:where(:not(:hover)) {
    opacity: 0.25;
}

.end-of-section-indicator a {
    color: black;
    padding: 0 1em;
    text-decoration: none;
}
