*,*::before,*::after{box-sizing:border-box}
:root{--text:#111;--muted:#555;--line:#e3e3e3;--band:#f0f0f0;--accent:#c62828;--accent-2:#ef6c00;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font:400 18px/1.65 var(--font)}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:.5rem 1rem;z-index:10}
.skip:focus{left:0}
.wrap{width:100%;max-width:1040px;margin-inline:auto;padding-inline:24px}
.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:18px 24px;max-width:1240px;margin-inline:auto}
.logo{text-decoration:none;font-size:18px}
.top ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}
.top li a{text-decoration:none}
.top li a:hover,.top li a[aria-current]{text-decoration:underline;text-underline-offset:4px}
.hero{position:relative;min-height:min(62vh,560px);display:grid;place-items:center;text-align:center;color:#fff;overflow:hidden;background:#222}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55)}
.hero-in{position:relative;z-index:1;padding:64px 24px}
.hero-in p{margin:0}
.hero h1{margin:.25rem 0 .5rem;font-weight:400;font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.1}
.tagline{text-align:center;margin:32px auto 0;padding-inline:24px}
.callout{display:block;max-width:760px;margin:24px auto 0;padding:18px 24px;border-radius:4px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff;font-weight:600;text-align:center}
.band{background:var(--band);padding:48px 0;margin-top:48px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;margin:0;padding:0}
.tiles a{display:flex;align-items:center;justify-content:center;min-height:112px;padding:16px;background:#fff;border:1px solid var(--line);text-align:center;font-weight:600;text-decoration:none;font-size:16px;line-height:1.35}
.tiles a:hover{border-color:var(--accent);color:var(--accent)}
.prose{padding-block:40px 16px}
.prose h1{font-weight:400;font-size:clamp(2rem,4vw,2.75rem);line-height:1.2;margin:32px 0 16px;text-align:center}
.prose h2{font-weight:400;font-size:30px;line-height:1.25;margin:44px 0 14px;text-align:center;scroll-margin-top:16px}
.prose p,.prose ul{margin:0 0 16px}
.prose ul{padding-left:1.25rem}
.prose li{margin-bottom:8px}
.figure{margin:32px 0}
.figure img{width:100%}
.plain{padding-bottom:56px}
.foot{margin-top:48px;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}
.foot .wrap{padding-block:28px}
.foot ul{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;list-style:none;margin:0 0 12px;padding:0}
.foot p{margin:0 0 8px}
.not-found{text-align:center;padding:72px 0}
.not-found .code{font-size:clamp(4rem,12vw,7rem);line-height:1;color:var(--accent)}
.not-found h1{font-weight:400;font-size:32px;margin:12px 0}
.btn{display:inline-block;margin-top:12px;padding:12px 24px;background:var(--accent);color:#fff;text-decoration:none;border-radius:4px;font-weight:600}
@media (max-width:640px){body{font-size:17px}.tiles{grid-template-columns:repeat(2,1fr);gap:12px}.tiles a{min-height:96px;font-size:15px}.prose h2{font-size:25px}.top{padding-inline:16px}.wrap{padding-inline:16px}.top ul{gap:1rem}}
