:root { color-scheme: dark; --bg:#101923; --panel:#1c2a37; --text:#f0f6f7; --muted:#bac9d5; --accent:#77ddc8; --border:#314150; }
* { box-sizing:border-box; }
html { min-height:100%; }
body { margin:0; min-height:100vh; background:var(--bg); color:var(--text); font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.page { max-width:850px; margin:auto; min-height:100vh; padding:34px clamp(20px,5vw,52px) 24px; display:flex; flex-direction:column; }
.brand { display:flex; align-items:center; gap:12px; font-size:1.65rem; font-weight:750; letter-spacing:-.045em; }
.mark { display:grid; place-items:center; border-radius:9px; width:42px; height:42px; background:#285a5e; color:var(--accent); font:700 18px/1 ui-monospace,monospace; letter-spacing:0; }
.accent,.eyebrow { color:var(--accent); }
main { flex:1; padding:clamp(64px,11vw,116px) 0 70px; }
.eyebrow { font-size:.8rem; font-weight:700; letter-spacing:.13em; }
h1 { font-size:clamp(2.15rem,6vw,3.7rem); line-height:1.1; letter-spacing:-.04em; margin:12px 0 12px; }
.motto { color:var(--muted); font-size:clamp(1.15rem,3vw,1.65rem); margin:0; }
.intro { color:var(--muted); max-width:600px; font-size:1.08rem; margin:22px 0 54px; }
h2 { margin:0 0 14px; font-size:.85rem; letter-spacing:.09em; text-transform:uppercase; }
.contact,.tile { background:var(--panel); color:var(--text); border:1px solid var(--border); border-radius:11px; text-decoration:none; }
.contact { display:flex; justify-content:space-between; gap:12px; padding:15px 20px; width:fit-content; max-width:100%; overflow-wrap:anywhere; align-items:center; }
.contact span:first-child { color:var(--accent); }
.contact span:last-child { color:var(--accent); padding-left:20px; }
nav { margin-top:48px; }
.links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.tile { padding:22px 20px; display:flex; flex-direction:column; min-height:110px; justify-content:space-between; }
.tile-label { font-size:1.05rem; font-weight:700; }
.tile-url { color:var(--muted); font-size:.87rem; overflow-wrap:anywhere; }
a:hover { border-color:var(--accent); }
a:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
footer { border-top:1px solid var(--border); padding-top:18px; display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; color:var(--muted); font-size:.82rem; }
footer div { display:flex; gap:18px; }
footer a { color:inherit; }
@media (max-width:550px) { .links { grid-template-columns:1fr; } .page { padding-top:22px; } .intro { margin-bottom:40px; } }

/* Shared layout for local legal pages */
.brand-link { color:var(--text); text-decoration:none; }
.brand-link:hover { color:var(--accent); }
.legal { padding-top:clamp(38px,7vw,72px); }
.legal .back { color:var(--muted); display:inline-block; margin-bottom:28px; }
.legal section { margin-top:38px; }
.legal h2 { margin-bottom:12px; }
.legal p, .legal address { color:var(--muted); margin:0 0 16px; max-width:72ch; line-height:1.75; overflow-wrap:anywhere; }
.legal address { font-style:normal; }
.legal a:not(.back) { color:var(--accent); }
