* { box-sizing: border-box; }
body { margin: 0; background: #0d1420; color: #eaf0f6; font: 17px/1.6 system-ui, sans-serif; }
main { max-width: 780px; margin: auto; padding: 32px 22px 64px; }
h1 { font-size: clamp(1.8rem, 5vw, 2.6rem); line-height: 1.18; }
h2 { font-size: 1.25rem; margin-top: 1.8rem; }
a { color: #a4d9ee; overflow-wrap: anywhere; }
.brand { color: #dcc591; letter-spacing: .1em; font-size: .82rem; }
.notice { border: 1px solid #dcc591; padding: 16px; border-radius: 8px; background: #272b30; }
button { font: inherit; cursor: pointer; padding: 12px 18px; border-radius: 6px; border: 1px solid #9fc7d9; background: #d5edf8; color: #122334; }
button:disabled { opacity: .6; cursor: wait; }
button.danger { background: #9f2f35; border-color: #e4a1a4; color: white; }
label { display: block; margin: 14px 0 6px; }
input[type="text"] { display: block; width: min(100%, 320px); padding: 10px; font: inherit; }
input[type="checkbox"] { width: 20px; height: 20px; vertical-align: middle; margin-right: 8px; }
.ack { padding: 14px; border: 1px solid #8b99a6; border-radius: 6px; }
form { border-top: 1px solid #596877; margin-top: 24px; }
.small { font-size: .9rem; color: #c1cbd7; }
.session { margin-top: 24px; }
:focus-visible { outline: 3px solid #f5d176; outline-offset: 4px; }
[hidden] { display: none !important; }

:root { color-scheme: dark; }
nav {display:flex;gap:12px 22px;flex-wrap:wrap;margin-bottom:36px;font-size:.94rem;}
nav a {text-decoration:none;}
nav a[aria-current="page"] {color:#f2d88c;text-decoration:underline;text-underline-offset:5px;}
.brand a {color:inherit;text-decoration:none;}
.hero {padding:20px 0 32px;}
.eyebrow {color:#dcc591;letter-spacing:.13em;text-transform:uppercase;font-size:.78rem;}
h1 {max-width:21ch;}
.lead {font-size:1.2rem;color:#d3deea;max-width:56ch;}
.button {display:inline-block;background:#dcc591;border:1px solid #f2deac;border-radius:6px;padding:12px 18px;color:#172130;font-weight:650;text-decoration:none;}
.cards {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:18px;margin:26px 0;}
.card {border:1px solid #4b5a6b;border-radius:10px;padding:20px;background:#151f2d;}
.card h2 {margin-top:0;}
.card p:last-child {margin-bottom:0;}
.section {border-top:1px solid #4b5a6b;margin-top:32px;padding-top:6px;}
footer {border-top:1px solid #4b5a6b;margin-top:36px;padding-top:20px;color:#c1cbd7;font-size:.88rem;}
footer p {margin:8px 0;}
ul,ol {padding-left:24px;}
li {margin:8px 0;}
section {scroll-margin-top:18px;}
@media (max-width:460px) {main {padding:24px 18px 44px;}nav {gap:10px 17px;margin-bottom:24px;}.hero {padding-top:8px;}.lead {font-size:1.08rem;}.card {padding:17px;}}
