
/* TOC collapsible (mobile-first) */
    .toc--collapsible > summary.toc-title {
    list-style: none;            
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0;     
    padding: 0.25rem 0;
}

.toc--collapsible > summary.toc-title::-webkit-details-marker {
display: none;           
}

.toc--collapsible > summary.toc-title::after {
content: '+';
font-size: 1.5rem;
line-height: 1;
color: var(--color-primary);
transition: transform var(--transition);
}

.toc--collapsible[open] > summary.toc-title::after {
transform: rotate(45deg);
}

.toc--collapsible[open] .toc-list {
margin-top: 1rem;
}

@media (min-width: 64rem) {
.toc--collapsible > summary.toc-title {
    padding: 0;
}
.toc--collapsible > summary.toc-title::after {
    content: none;
}
}

h1.pageh1 {
    color: var(--color-text);
    margin-bottom: 1.5rem;
    padding-bottom: 0.75rem;
    border-bottom: 3px solid var(--color-primary);
    display: inline-block;
}

.toc--collapsible > summary.toc-title {
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.75rem;
user-select: none;
}

.toc--collapsible > summary.toc-title::-webkit-details-marker { display: none; }
.toc--collapsible > summary.toc-title::marker { content: ""; }

.toc--collapsible > summary.toc-title::after {
content: "+";
font-size: 1.6rem;
line-height: 1;
color: var(--color-primary);
flex: 0 0 auto;
transform-origin: center;
transition: transform var(--transition);
}

.toc--collapsible[open] > summary.toc-title::after {
transform: rotate(45deg);
}

@media (min-width: 64rem) {
.toc--collapsible > summary.toc-title { cursor: default; }
.toc--collapsible > summary.toc-title::after { content: none; }
}

/* === breadcrumbs === */

nav.breadcrumbs ol {
    display: flex;
    font-size: 12px;
    list-style: none;
    justify-content: center;
    padding: 0;
}
nav.breadcrumbs a:hover, nav a:focus {
    color: #111827;
    background: none;
    outline: none;
}

span.breadcrumbs__current {
    color: #0200ff;
}

nav.breadcrumbs {
margin: 0;
padding: 0;
}

li.breadcrumbs__item::after {
content: "/";
margin: 0 4px;
}

img{
    max-width: 100%; 
}

img.hero-image.article-image {
        display: block;
        max-height: 650px;
        width: auto;
        margin: auto;
}
.article-image img,
figure.wp-block-image img {
    display: block;
    max-height: 550px;
    width: auto;
    margin: auto;
}

img.hero-image.article-image {
    object-position: top;
}

details.toc.toc--collapsible {
    background: #f8fafc;
    padding: 15px 30px;
    border-radius: 10px;
    margin-bottom: 30px;
}

summary.toc-title {
    font-weight: bold;
}

li.menu-item.current-menu-item a {
    color: #131bfa;
}

.back-to-top {
    position: fixed;
    inset-block-end: var(--spacing-md);
    inset-inline-end: var(--spacing-md);
    width: 3rem;
    height: 3rem;
    display: grid;
    place-items: center;
    background: var(--color-accent);
    color: var(--color-bg);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 4px 15px var(--color-shadow);
    opacity: 0;
    visibility: hidden;
    transform: translateY(1rem);
    transition: opacity var(--transition-base), transform var(--transition-base), visibility var(--transition-base), background var(--transition-fast);
}

.back-to-top:hover {
    background: var(--color-accent-hover);
    transform: translateY(-2px);
}

.back-to-top.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.back-to-top svg {
    width: 1.25rem;
    height: 1.25rem;
}

:root.header-menu--v1 {
  overflow-x: hidden;
}

:root.header-menu--v1 body {
  overflow-x: hidden;
}

.meta {
    background: #f8fafc;
    padding: 15px 30px;
    border-radius: 10px;
    margin-bottom: 30px;
}

a.toc-link {
    text-decoration: none !important;
}

.site-logo a {
    text-decoration: none;
    font-weight: bold;
    color: #ffffff;
    font-size: 22px;
}

.container {
    max-width: 1270px;
    margin: auto;
    padding: 0 15px;
}

.header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
}

header.site-header {
    -webkit-box-shadow: 0px 8px 8px 0px rgba(34, 60, 80, 0.2);
    -moz-box-shadow: 0px 8px 8px 0px rgba(34, 60, 80, 0.2);
    box-shadow: 0px 8px 8px 0px rgba(34, 60, 80, 0.2);
    background: #2d5a27;
}

ul#primary-menu-desktop ul li::before {
    content: none!important;
    width: 0;
    height: 0;
}

a {
    text-decoration: none !important;
    color: #fff;
}

nav.breadcrumbs ol li::before {
    content: none;
}