/* Stable, shared navigation. Content and reading-page typography stay local. */
html{scrollbar-gutter:stable}
.site-header.shared-header{display:grid;grid-template-columns:max-content minmax(0,1fr) 144px;align-items:center;gap:24px;height:98px;min-height:98px;padding:16px 56px;box-sizing:border-box}
.site-header.shared-header>.brand{min-width:0;white-space:nowrap;gap:17px;font-size:16px}
.site-header.shared-header .brand-mark{font-size:52px}
.site-header.shared-header .brand-sub{font-size:12px;letter-spacing:3.5px}
.site-header.shared-header>.menu-toggle{display:none}
.site-header.shared-header #main-nav{display:flex;position:static;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:28px;width:auto;min-width:0;margin:0;padding:0;border:0;box-shadow:none;background:transparent;order:initial}
.site-header.shared-header #main-nav>a,.site-header.shared-header #main-nav>details{flex:0 0 auto;min-height:44px;box-sizing:border-box;font-size:14px;line-height:1.8;white-space:nowrap}
.site-header.shared-header #main-nav>a{display:inline-flex;align-items:center}
.site-header.shared-header #main-nav>details{display:block;position:relative;align-self:center;padding:9px 0}
.site-header.shared-header #main-nav summary{font-size:14px;cursor:pointer;list-style:none}
.site-header.shared-header #main-nav>.nav-group{padding:0}
.site-header.shared-header #main-nav>.nav-group>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;font-weight:500}
.site-header.shared-header #main-nav summary::-webkit-details-marker{display:none}
.site-header.shared-header #main-nav>.nav-group>summary:after{content:"＋";font-size:12px;color:var(--muted)}
.site-header.shared-header #main-nav>.nav-group[open]>summary:after{content:"−"}
.site-header.shared-header #main-nav>.nav-group[data-active=true]>summary,.site-header.shared-header #main-nav>a[aria-current=page]{color:#526843}
.site-header.shared-header #main-nav .nav-panel{position:absolute;top:calc(100% + 10px);right:0;width:310px;max-width:calc(100vw - 44px);margin:0;padding:12px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 20px #0001;z-index:20}
.site-header.shared-header #main-nav .nav-panel a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 10px;white-space:normal;line-height:1.6;box-sizing:border-box}
.site-header.shared-header #main-nav .nav-panel a:hover,.site-header.shared-header #main-nav .nav-panel a[aria-current=page]{background:#e9ede2}
.site-header.shared-header #main-nav .nav-panel a:after{content:none}
.site-header.shared-header #main-nav .nav-panel-label{display:block;padding:14px 10px 6px;border-top:1px solid var(--line);margin-top:8px;font-size:11px;letter-spacing:1px;color:var(--muted)}
.site-header.shared-header #main-nav .nav-panel .category-nav-list{display:block;position:static;width:auto;max-width:none;margin:0;padding:0;border:0;box-shadow:none;background:transparent}
.site-header.shared-header #main-nav .category-nav-list a>span:last-child{flex:0 0 auto;font-size:11px;color:var(--muted)}
.site-header.shared-header #main-nav summary:focus-visible{outline:3px solid #8aa43e;outline-offset:4px}
.site-header.shared-header>.language-switch{display:grid!important;grid-template-columns:1fr 1fr;width:144px!important;box-sizing:border-box;position:static!important;margin:0;gap:3px!important;order:initial;padding:2px!important;border:1px solid #bcc4b7!important;border-radius:3px;background:transparent!important}
.site-header.shared-header>.language-switch a,.site-header.shared-header>.language-switch>span{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:7px 8px!important;font:12px/1.25 Arial,sans-serif;letter-spacing:0;white-space:nowrap;box-sizing:border-box}
.site-header.shared-header>.language-switch a[aria-current=page]{background:var(--lime);color:var(--ink)}
.site-header.shared-header>.language-switch>span[aria-disabled=true]{color:#747a70;background:#eff0ea;cursor:default}
.english-page .site-header.shared-header #main-nav>a,.english-page .site-header.shared-header #main-nav summary{font-size:12px}
@media(max-width:1199px){
 .site-header.shared-header{grid-template-columns:minmax(0,1fr) 144px 44px;padding-inline:36px;gap:16px}
 .site-header.shared-header>.language-switch{grid-column:2;grid-row:1}
 .site-header.shared-header>.menu-toggle{grid-column:3;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;margin:0;padding:8px;width:44px;height:44px;border:0;background:transparent;order:initial}
 .site-header.shared-header>.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink)}
 .site-header.shared-header #main-nav{display:none;position:absolute;top:100%;left:0;right:0;justify-content:flex-start;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:0;max-height:calc(100dvh - 98px);overflow-y:auto;width:auto;margin:0;padding:18px 22px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 20px #0001}
 .site-header.shared-header #main-nav.open{display:flex}
 .site-header.shared-header #main-nav>a,.site-header.shared-header #main-nav>.nav-group{width:100%;border-bottom:1px solid var(--line)}
 .site-header.shared-header #main-nav>a{padding:9px 0}
 .site-header.shared-header #main-nav>.nav-group>summary{justify-content:space-between;padding:9px 0}
 .site-header.shared-header #main-nav .nav-panel{position:static;width:100%;max-width:100%;box-shadow:none;margin:0 0 12px;padding:6px 10px;border:0;border-left:2px solid #c8d0bb}
}
@media(max-width:600px){
 .site-header.shared-header{grid-template-columns:minmax(0,1fr) 44px;grid-template-rows:44px 50px;gap:8px 16px;height:135px;min-height:135px;padding:16px 22px}
 .site-header.shared-header>.brand{font-size:14px;gap:14px}
 .site-header.shared-header .brand-mark{font-size:47px}
 .site-header.shared-header .brand-sub{font-size:10px;letter-spacing:2.5px}
 .site-header.shared-header>.menu-toggle{grid-column:2}
 .site-header.shared-header>.language-switch{grid-column:1/-1;grid-row:2;justify-self:end}
 .site-header.shared-header #main-nav>a,.site-header.shared-header #main-nav summary{font-size:13px}
}
@media print{.site-header.shared-header{display:none}}
/* No empty language column/row while the English edition is below its threshold. */
.site-header.shared-header.language-pending{grid-template-columns:max-content minmax(0,1fr)}
@media(max-width:1199px){.site-header.shared-header.language-pending{grid-template-columns:minmax(0,1fr) 44px}.site-header.shared-header.language-pending>.menu-toggle{grid-column:2}}
@media(max-width:600px){.site-header.shared-header.language-pending{grid-template-rows:44px;height:77px;min-height:77px}.site-header.shared-header.language-pending #main-nav{max-height:calc(100dvh - 77px)}}
.home-return{position:fixed;right:24px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:30;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 18px;max-width:calc(100vw - 32px);box-sizing:border-box;border:1px solid #526843;border-radius:3px;background:var(--ink);color:var(--paper);box-shadow:0 3px 12px #17201622;font:500 14px/1.5 var(--sans);text-decoration:none;white-space:nowrap}
.home-return[hidden]{display:none}
.home-return:hover{background:#33452d;color:#fff}
.home-return:focus-visible,.about-email:focus-visible{outline:3px solid #809653;outline-offset:4px}
body:has(dialog[open]) .home-return,body:has(.toast.visible) .home-return{visibility:hidden}
.about-label>.about-email{display:inline-flex;align-items:center;gap:9px;min-height:44px;max-width:100%;margin-top:8px;border-bottom:1px solid #8c9c75;font-size:13px;line-height:1.8;color:var(--ink)}
.about-email svg{flex:0 0 18px}
.about-email span{min-width:0;overflow-wrap:anywhere}
@media(max-width:600px){.home-return{right:16px;padding-inline:15px}.about-label>.about-email{grid-column:1/-1;grid-row:4;justify-self:start}.about-label:has(>.about-email)>.about-role{grid-row:5}}
@media print{.home-return{display:none}}
