/* GOV.UK tokens, matching the app (gotv app/globals.css). */
:root { --ink: #0b0c0c; --secondary: #505a5f; --link: #1d70b8; --brand: #00703c; --lightgrey: #f3f2f1; --focus: #ffdd00; }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--ink); background: #fff; font: 19px/1.47 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
.wrap { max-width: 40rem; margin: 0 auto; padding: 0 20px; }
.band { background: var(--ink); color: #fff; border-bottom: 4px solid var(--brand); }
.band .wrap { padding-top: 14px; padding-bottom: 12px; }
.brand { font-weight: 700; font-size: 1.15rem; letter-spacing: 0.01em; }
main.wrap { padding-top: 32px; padding-bottom: 40px; }
h1 { font-size: 1.9rem; line-height: 1.15; margin: 0 0 20px; }
h2 { font-size: 1.25rem; margin: 32px 0 8px; }
p { margin: 0 0 16px; }
a { color: var(--link); text-decoration: underline; text-underline-offset: 0.15em; }
a:focus { outline: 3px solid transparent; background: var(--focus); color: var(--ink); box-shadow: 0 -2px var(--focus), 0 4px var(--ink); text-decoration: none; }
.foot { background: var(--lightgrey); color: var(--secondary); font-size: 1rem; padding: 20px 0; border-top: 1px solid #b1b4b6; }
@media (max-width: 40em) { body { font-size: 17px; } h1 { font-size: 1.6rem; } }
