/* Shared header and footer. Uses each page's colour tokens, with fallbacks. */
.sk-skip{position:absolute;left:-9999px;top:.5rem;z-index:10;background:var(--surface,#fff);color:var(--ink,#14212b);padding:.6rem 1rem;border:2px solid var(--accent,#0d5c4b);border-radius:6px;font-weight:700}
.sk-skip:focus{left:1rem}
main:focus{outline:none}
.sk-header{padding:1.1rem 0;display:flex;justify-content:space-between;align-items:center;gap:.6rem 1.5rem;flex-wrap:wrap;position:relative;z-index:1}
.sk-header .logo{font:800 1.15rem var(--head,Archivo,Arial,sans-serif);text-decoration:none;color:inherit}
.sk-header .sect{font:600 .8rem var(--head,Archivo,Arial,sans-serif);color:var(--muted,#566573);text-transform:uppercase;letter-spacing:.08em;margin-left:.3rem}
.sk-header .zero{color:var(--accent,#0d5c4b)}
.sk-header nav{display:flex;gap:.4rem 1.2rem;flex-wrap:wrap}
.sk-header nav a{font:600 .98rem var(--body,system-ui,sans-serif);text-decoration:none;color:inherit;padding:.25rem 0;border-bottom:2px solid transparent}
.sk-header nav a:hover,.sk-header nav a[aria-current="page"]{border-bottom-color:var(--accent,#0d5c4b)}
.sk-header nav a.signin{border:2px solid var(--accent,#0d5c4b);border-radius:6px;padding:.2rem .75rem;color:var(--accent,#0d5c4b)}
.sk-header nav a.signin:hover,.sk-header nav a.signin[aria-current="page"]{background:var(--accent,#0d5c4b);color:var(--accent-ink,#fff)}
footer.sk-footer{position:relative;z-index:1;margin-top:3rem;padding:2.4rem 0 2.6rem;border-top:1px solid var(--line,#d5dadd);color:var(--muted,#566573);font:400 .92rem/1.55 var(--body,system-ui,sans-serif);background:transparent}
.sk-fwrap{max-width:68rem;margin:0 auto;padding-left:max(1.25rem,env(safe-area-inset-left,0px));padding-right:max(1.25rem,env(safe-area-inset-right,0px))}
.sk-cols{display:grid;gap:1.6rem 2rem;grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr))}
.sk-cols h2{font:800 .8rem var(--head,Archivo,Arial,sans-serif);letter-spacing:.1em;text-transform:uppercase;color:var(--ink,#14212b);margin:0 0 .6rem}
.sk-cols ul{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
footer.sk-footer a{color:var(--muted,#566573);text-decoration:none;border-bottom:1px solid transparent}
footer.sk-footer a:hover{color:var(--ink,#14212b);border-bottom-color:var(--accent,#0d5c4b)}
.sk-base{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;justify-content:space-between;align-items:flex-start;margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--line,#d5dadd)}
.sk-base p{margin:0 0 .5rem;max-width:62ch}
.sk-base .copy{margin:0}
.sk-social{display:flex;gap:.55rem;flex-wrap:wrap}
.soc{display:inline-flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:50%;border:1.5px solid var(--line,#d5dadd);color:var(--ink,#14212b);background:var(--surface,#fff)}
footer.sk-footer a.soc{color:var(--ink,#14212b);border-bottom:1.5px solid var(--line,#d5dadd)}
footer.sk-footer a.soc:hover{border-color:var(--accent,#0d5c4b);color:var(--accent-ink,#fff);background:var(--accent,#0d5c4b)}
.soc.soon{opacity:.6;cursor:default}
.sk-cols li:has(> a[hidden]){display:none}
.sk-page-note{max-width:70ch;color:var(--muted,#566573);font-size:.92rem;padding:1.6rem 0 0}
@media (max-width:40rem){.sk-header nav{gap:.3rem 1rem}.sk-cols{grid-template-columns:1fr 1fr;gap:1.4rem 1rem}.sk-cols>div:last-child{grid-column:1/-1}.sk-cols>div:last-child ul{grid-template-columns:1fr 1fr;column-gap:1rem}}
