/* SECOND CHANCE — one doorway mark, one header and one CMS entry for every public page. */
:root{--forest:#1d3a2d;--forest-2:#29503e;--apricot:#f3b26a;--sc-paper:#f7f3ec;--sc-paper-2:#efe8dd;--sc-ink:#171311;--sc-muted:#5a524b;--sc-line:#d8d0c5;--sc-clay:#9c3416}
/* Side padding uses each page's own --gutter so the header aligns with the content below. */
.sc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Demo boundary: always present, never louder than the brand. */
.sc-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;height:34px;padding:0 var(--gutter,20px);background:var(--forest);color:#e6ede4;font-size:11px;line-height:1.3;letter-spacing:.01em}
.sc-notice>span{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.sc-notice>span::before{content:'';display:inline-block;width:6px;height:6px;margin-right:9px;border-radius:50%;background:var(--apricot);vertical-align:1px}
.sc-notice>a{flex:none;color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#ffffff70}

.sc-header{position:relative;z-index:40;display:flex;align-items:center;gap:clamp(16px,2.4vw,40px);height:76px;padding:0 var(--gutter,20px);background:var(--sc-paper);border-bottom:1px solid var(--sc-line);color:var(--sc-ink)}
.sc-brand{display:flex;align-items:center;gap:12px;flex:none;color:inherit;text-decoration:none}
/* The arch: a doorway into a home. Reused by the hero frame, portraits and the CMS. */
.sc-brand-mark{position:relative;flex:none;width:24px;height:30px;border:2px solid currentColor;border-radius:13px 13px 3px 3px}
.sc-brand-mark::after{content:'';position:absolute;left:50%;bottom:4px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--sc-clay)}
.sc-brand-word{display:block;font-size:21px;font-weight:850;letter-spacing:-.055em;line-height:1;white-space:nowrap}
.sc-brand-word small{display:block;margin-top:6px;font-size:9px;font-weight:650;letter-spacing:.22em;color:var(--sc-muted)}
.sc-nav{display:flex;gap:clamp(14px,1.6vw,28px);margin-left:auto;font-size:13px;font-weight:650}
.sc-nav a{position:relative;padding:12px 0;white-space:nowrap;color:inherit;text-decoration:none}
.sc-nav a::after{content:'';position:absolute;left:0;right:0;bottom:5px;height:2px;border-radius:2px;background:var(--sc-clay);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.sc-nav a:hover::after,.sc-nav a[aria-current]::after{transform:scaleX(1)}
.sc-nav a[aria-current]{color:var(--sc-clay)}
.sc-tools{display:flex;align-items:center;gap:10px;margin-left:clamp(8px,1.4vw,24px)}
.sc-nav+.sc-tools{margin-left:clamp(8px,1.4vw,24px)}
.sc-lang{min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--sc-line);border-radius:999px;background:transparent;color:inherit;font-size:12px;font-weight:750;letter-spacing:.04em;cursor:pointer}
.sc-lang:hover{background:var(--sc-paper-2)}

/* The CMS entry is a real button, not a footnote. */
.sc-cms{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 6px 0 17px;border-radius:999px;background:var(--forest);color:#fff;font-size:13px;font-weight:750;line-height:1;white-space:nowrap;text-decoration:none;box-shadow:0 8px 20px -10px #1d3a2dcc;transition:background .2s ease,transform .2s ease}
.sc-cms-arrow{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--apricot);color:var(--forest);font-size:14px;font-weight:800;transition:transform .25s ease}
.sc-cms:hover{background:var(--forest-2);transform:translateY(-1px)}
.sc-cms:hover .sc-cms-arrow{transform:rotate(45deg)}
.sc-cms:focus-visible,.sc-lang:focus-visible,.sc-menu>summary:focus-visible,.sc-nav a:focus-visible,.sc-brand:focus-visible{outline:2px solid var(--sc-clay);outline-offset:4px}

.sc-menu{display:none}
.sc-menu>summary{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--sc-line);border-radius:50%;list-style:none;cursor:pointer}
.sc-menu>summary::-webkit-details-marker{display:none}
.sc-menu-icon{position:relative;display:block;width:16px;height:2px;border-radius:2px;background:currentColor;transition:background .2s}
.sc-menu-icon::before,.sc-menu-icon::after{content:'';position:absolute;left:0;width:16px;height:2px;border-radius:2px;background:currentColor;transition:transform .22s ease}
.sc-menu-icon::before{top:-5px}.sc-menu-icon::after{top:5px}
.sc-menu[open]>summary{background:var(--sc-ink);border-color:var(--sc-ink);color:var(--sc-paper)}
.sc-menu[open] .sc-menu-icon{background:transparent}
.sc-menu[open] .sc-menu-icon::before{transform:translateY(5px) rotate(45deg)}
.sc-menu[open] .sc-menu-icon::after{transform:translateY(-5px) rotate(-45deg)}
.sc-menu-panel{position:absolute;z-index:50;top:100%;left:0;right:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 26px;padding:16px var(--gutter,20px) 24px;background:var(--sc-paper);border-bottom:1px solid var(--sc-line);box-shadow:0 22px 30px -22px #17131140}
.sc-menu-panel a{padding:15px 0;border-bottom:1px solid var(--sc-line);font-size:15px;font-weight:650;color:inherit;text-decoration:none}
.sc-menu-panel a[aria-current]{color:var(--sc-clay)}
.sc-menu-panel .sc-menu-cms{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:16px 18px;border:0;border-radius:16px;background:var(--forest);color:#fff}
.sc-menu-panel .sc-menu-cms small{display:block;margin-top:4px;font-size:11px;font-weight:500;color:#cdd8cf}

@media(max-width:1180px){.sc-nav{display:none}.sc-tools{margin-left:auto}.sc-menu{display:block}}
@media(max-width:640px){
 .sc-notice{height:30px;gap:12px;font-size:10px}
 .sc-header{height:64px;gap:10px}
 .sc-brand{gap:9px}
 .sc-brand-mark{width:20px;height:26px;border-radius:11px 11px 3px 3px}
 .sc-brand-word{font-size:16px;line-height:.92}
 .sc-brand-word>span{display:block}
 .sc-brand-word small{display:none}
 .sc-tools{gap:6px}
 .sc-lang{min-width:42px;padding:0 8px}
 .sc-cms{gap:7px;padding:0 5px 0 13px;font-size:12px}
 .sc-cms-arrow{width:30px;height:30px}
 .sc-menu-panel{grid-template-columns:1fr 1fr;max-height:calc(100svh - 94px);overflow:auto}
}
@media(max-width:359px){.sc-brand-mark{display:none}.sc-cms{padding:0 13px}.sc-cms-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.sc-nav a::after,.sc-cms,.sc-cms-arrow,.sc-menu-icon::before,.sc-menu-icon::after{transition:none}}
@media(forced-colors:active){.sc-cms,.sc-menu-panel .sc-menu-cms{border:1px solid ButtonText}.sc-brand-mark::after,.sc-notice>span::before{background:CanvasText}}
