@font-face{font-family:"Atkinson Hyperlegible";font-weight:400;font-style:normal;font-display:swap;src:url("/fonts/atkinson/atkinson-hyperlegible-regular.woff2") format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible";font-weight:700;font-style:normal;font-display:swap;src:url("/fonts/atkinson/atkinson-hyperlegible-bold.woff2") format("woff2")}
:root{--ink:#1f2937;--muted:#4b5563;--bg:#ffffff;--accent:#0f766e;--accent-ink:#ffffff;--line:#6b7280;--ok-bg:#ecfdf5;--ok-line:#047857;--err-bg:#fef2f2;--err-line:#b91c1c}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Atkinson Hyperlegible",Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:1.0625rem;line-height:1.6}
.skip-link{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.5rem 1rem;z-index:10}
.skip-link:focus{left:0}
.site-head{background:var(--accent);color:var(--accent-ink);padding:.75rem 1rem}
.site-name{margin:0;font-weight:700;max-width:40rem;margin-inline:auto;padding-inline:1rem}
.lang-switch{max-width:40rem;margin:.4rem auto 0;padding-inline:1rem;font-size:.9rem}
.lang-switch a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:.2em}
.lang-switch a:hover,.lang-switch a:focus{text-decoration-thickness:2px}
.wrap{max-width:40rem;margin:0 auto;padding:1.5rem 1rem 3rem}
h1{font-size:1.75rem;line-height:1.25;margin:.5rem 0 1rem}
.lead{margin:0 0 1.5rem}
.note{margin:0 0 1.25rem;color:var(--muted)}
.field{margin-bottom:1.25rem}
label{display:block;font-weight:700;margin-bottom:.35rem}
.req{font-weight:400;color:var(--muted)}
input[type=text],input[type=email],select,textarea{display:block;width:100%;font:inherit;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:4px;padding:.55rem .65rem}
textarea{resize:vertical;min-height:7rem}
.help{margin:.35rem 0 0;color:var(--muted);font-size:.95rem}
:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px}
button{font:inherit;font-weight:700;background:var(--accent);color:var(--accent-ink);border:2px solid var(--accent);border-radius:4px;padding:.7rem 1.4rem;cursor:pointer;min-height:44px}
button:disabled{opacity:.6;cursor:wait}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.status{margin:0 0 1.25rem}
.status:empty{display:none}
.status.ok{background:var(--ok-bg);border:2px solid var(--ok-line);border-radius:4px;padding:1rem}
.status.err{background:var(--err-bg);border:2px solid var(--err-line);border-radius:4px;padding:1rem}
.status p{margin:0}
.status p+p{margin-top:.5rem}
