.sitemap-page { padding-block:3rem; }
.sitemap-intro { max-width:52rem; margin-bottom:2.25rem; font-size:1.08rem; }
.sitemap-page h2 { margin-bottom:1.15rem; }
.sitemap-sections { max-width:52rem; }
.sitemap-sections section + section { margin-top:2.75rem; }
.sitemap-menu,
.sitemap-menu ul { margin:0; padding:0; list-style:none; }
.sitemap-menu > li,
.sitemap-menu ul > li { border-bottom:1px solid #d9dfe4; }
.sitemap-menu > li:last-child,
.sitemap-menu ul > li:last-child { border-bottom:0; }
.sitemap-menu > li:has(ul) { border-bottom:0; }
.sitemap-menu a { display:block; position:relative; padding:.82rem 0 .82rem 1.35rem; color:var(--theme-body); font-weight:400; line-height:1.35; text-decoration:none; transition:color .18s ease; }
.sitemap-menu a:hover,
.sitemap-menu a:focus-visible { color:var(--theme-primary); }
.sitemap-menu a:focus-visible { outline:.15rem solid var(--theme-secondary); outline-offset:.2rem; }
.sitemap-menu a::before { content:'{'; position:absolute; top:50%; left:.1rem; color:var(--theme-secondary); font-size:1.55rem; font-weight:700; line-height:1; opacity:0; transform:translate(-.35rem,-52%); transition:opacity .18s ease, transform .18s ease; }
.sitemap-menu a:hover::before,
.sitemap-menu a:focus-visible::before { opacity:1; transform:translate(0,-52%); }
.sitemap-menu ul { border-top:1px solid #d9dfe4; }
.sitemap-menu ul a { padding-left:2.1rem; }
.sitemap-menu ul a::before { left:.85rem; }
.sitemap-menu-secondary { border-top:1px solid #d9dfe4; }
@media (max-width:575px) { .sitemap-page { padding-block:2rem; } }
@media (prefers-reduced-motion:reduce) { .sitemap-menu a { transition:none; } }
