/* Shared grouped navigation. */
/* Guide library and in-page navigation. */
.guide-wayfinding{padding-top:24px;padding-bottom:20px;display:flex;align-items:flex-start;gap:24px;color:#082330}
.guide-wayfinding>a{min-height:44px;padding:12px 0;font-weight:700;white-space:nowrap}
.guide-index{flex:1;max-width:850px;border:1px solid #dfd1b9;border-radius:12px;background:#f7f3e8}
.guide-index summary{min-height:44px;padding:12px 18px;font-weight:700;cursor:pointer}
.guide-index nav{display:block;position:static;inset:auto;width:auto;padding:0 20px 16px;background:transparent;border-radius:0;box-shadow:none}
.guide-index ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 28px}
.guide-index a{display:block;padding:9px 0;line-height:1.45;white-space:normal;overflow-wrap:anywhere;color:#082330}
.guide-index a:focus-visible,.library-categories a:focus-visible,.library-card a:focus-visible{outline:3px solid var(--color-secondary);outline-offset:3px}
main h2[id],.library-topic{scroll-margin-top:110px}
.guide-library{padding-bottom:64px;color:#082330}
.library-intro{padding-top:54px;padding-bottom:28px}
.library-intro h1{max-width:820px;margin:16px 0 24px}
.library-intro>p{max-width:720px;line-height:1.65}
.library-categories{display:flex;position:static;inset:auto;flex-direction:row;flex-wrap:wrap;gap:12px;margin-top:26px;padding:0;background:transparent;border-radius:0;box-shadow:none}
.library-categories a{display:block;padding:12px 18px;background:var(--color-primary);border:1px solid var(--color-action-border);border-radius:8px;font-weight:700;color:var(--color-text);text-decoration:none;transition:border-color .15s ease}.library-categories a:hover{border-color:var(--color-secondary)}
.library-start{padding:24px;background:#efe5cf;border-radius:14px;margin-top:8px;margin-bottom:38px}
.library-start h2{margin:8px 0}
.library-start p{line-height:1.7}
.library-start a{font-weight:700;color:#082330}
.library-topic{padding-top:20px;padding-bottom:24px}
.library-topic>h2{margin:0 0 8px}
.library-topic>p{line-height:1.65;margin:0 0 22px}
.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.library-card{padding:24px;border:1px solid #dfd1b9;border-top:4px solid #cc8a00;border-radius:14px;background:#fffdf7;display:flex;flex-direction:column}
.library-card h3{margin:0 0 14px}
.library-card h3 a{color:#082330;text-decoration:none}
.library-card p{line-height:1.65;margin:0 0 20px}
.library-card .library-read{margin-top:auto;min-height:44px;padding:12px 0;font-weight:700;color:#a56c00}
@media(max-width:850px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.guide-wayfinding{display:block;padding-top:16px}.guide-wayfinding>a{display:inline-block;margin-bottom:8px}.guide-index ol{grid-template-columns:1fr}.library-intro{padding-top:30px}.library-intro>p{}.library-grid{grid-template-columns:1fr}.library-start{width:calc(100% - 28px)}.library-topic>h2{}}
#mainNav{display:flex;position:static;align-items:center;gap:12px;width:auto;padding:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible}
#mainNav>a,#mainNav summary{font:inherit;font-weight:700;line-height:1.4;color:#5a4a37;min-height:44px;padding:10px 8px;white-space:nowrap;text-decoration:none;cursor:pointer}
.nav-group{position:relative}
#mainNav summary{list-style:none;display:flex;align-items:center;gap:8px}
#mainNav summary::-webkit-details-marker{display:none}
#mainNav summary::after{content:"⌄";}
#mainNav details[open]>summary{color:var(--accent-strong);background:var(--surface-2);border-radius:10px}
#mainNav details[open]>summary::after{transform:rotate(180deg)}
#mainNav .nav-submenu{position:absolute;top:calc(100% + 8px);right:0;min-width:260px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 35px #0002}
#mainNav .nav-submenu a{display:block;line-height:1.4;min-height:44px;padding:11px 12px;white-space:normal;border-radius:8px}
#mainNav a:hover,#mainNav a[aria-current="page"]{background:var(--surface-2);color:var(--accent-strong)}
#mainNav details:has(a[aria-current="page"])>summary{color:var(--accent-strong)}
#mainNav a:focus-visible,#mainNav summary:focus-visible,.menu-btn:focus-visible{outline:3px solid var(--accent-strong);outline-offset:3px}
.site-header .menu-btn{display:none}
footer .footer-nav{display:grid;grid-template-columns:.8fr 1fr 1.2fr 1.2fr 1.2fr;gap:24px;align-items:start;padding:30px 0}
footer .footer-group h2{margin:0 0 10px;color:var(--brown)}
footer .footer-nav a{display:block;min-height:44px;padding:9px 0;white-space:normal}
@media(max-width:1000px){
.site-header .menu-btn{display:block;min-width:44px;min-height:44px;cursor:pointer}
#mainNav{display:none;position:absolute;top:100%;left:14px;right:14px;width:auto;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 35px #0002;flex-direction:column;align-items:stretch;gap:4px;max-height:calc(100dvh - 90px);overflow-y:auto}
#mainNav.open{display:flex}
#mainNav>a,#mainNav summary{padding:12px;white-space:normal}
#mainNav summary{justify-content:space-between}
#mainNav .nav-submenu{position:static;min-width:0;border:0;border-left:2px solid var(--line);margin:4px 12px 8px;padding:0 0 0 8px;border-radius:0;box-shadow:none}
footer .footer-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){footer .footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}}

/* Compact footer: useful links, identity and one contact block. */
.article-byline{line-height:1.6;color:var(--muted);margin:12px 0 20px}
.article-byline a{color:inherit;text-decoration:underline;text-underline-offset:3px}
footer.compact-footer{padding:32px 0 12px}
.compact-footer .footer-wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:36px;align-items:start;padding:0}
.compact-footer .footer-brand{width:120px;height:auto;margin-bottom:12px}
.compact-footer .footer-tagline,.compact-footer .footer-credit{margin:6px 0}
footer.compact-footer .footer-nav{display:grid;grid-template-columns:1fr;gap:0;align-items:start;margin:0;padding:0;border:0}
.compact-footer h2{margin:0 0 8px}
footer.compact-footer .footer-nav a,.compact-footer .footer-contact>a{display:block;min-height:44px;padding:9px 0;}
.compact-footer .footer-contact .footer-email{padding:9px 0;}
.compact-footer .footer-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:22px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted)}
.compact-footer .footer-bottom>a,.compact-footer .analytics-settings{min-height:44px;margin:0;padding:10px 0}
@media(max-width:700px){.compact-footer .footer-wrap{grid-template-columns:1fr 1fr;gap:24px}.compact-footer .footer-identity{grid-column:1/-1}}
@media(max-width:400px){.compact-footer .footer-wrap{grid-template-columns:1fr}.compact-footer .footer-identity{grid-column:auto}}
