:root { --ink:#162334; --muted:#657487; --line:#d9e2e9; --paper:#fff; --blue:#276a8d; --dark:#174862; --gold:#e7a94b; font-family:Inter,ui-sans-serif,system-ui,sans-serif; color:var(--ink); }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 8% 5%,#dcecf1,transparent 30rem),radial-gradient(circle at 91% 96%,#f6e6c9,transparent 26rem),#f5f8fb; }
a { color:var(--blue); text-decoration:none; } a:hover { color:var(--dark); text-decoration:underline; }
.shell { width:min(100% - 32px,1050px); margin:0 auto; }.topbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:24px 0; }
.brand { color:var(--ink); font-weight:800; font-size:1.22rem; letter-spacing:.08em; }.brand span { color:var(--gold); }.nav { display:flex; gap:18px; align-items:center; font-size:.94rem; }.nav form { margin:0; }.link-button { border:0; background:none; color:var(--blue); cursor:pointer; font:inherit; padding:0; }
.page { padding:56px 0 72px; }.hero { max-width:700px; padding:45px 0; }.eyebrow { margin:0 0 14px; color:var(--blue); font-size:.78rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; } h1 { margin:0; font-size:clamp(2.3rem,6vw,4.7rem); letter-spacing:-.065em; line-height:.98; }.lead { max-width:580px; margin:24px 0 30px; color:var(--muted); line-height:1.65; font-size:1.12rem; }
.actions { display:flex; flex-wrap:wrap; gap:12px; }.button { display:inline-flex; min-height:44px; align-items:center; justify-content:center; border:1px solid var(--blue); border-radius:9px; padding:0 18px; background:var(--blue); color:#fff; font-weight:700; cursor:pointer; }.button:hover { background:var(--dark); color:#fff; text-decoration:none; }.button.secondary { background:transparent; color:var(--blue); }.button.secondary:hover { background:#eaf2f5; color:var(--dark); }
.card,.dashboard { background:var(--paper); border:1px solid var(--line); border-radius:14px; box-shadow:0 18px 55px rgb(27 51 70 / 9%); }.card { width:min(100%,460px); margin:26px auto; padding:32px; }.dashboard { max-width:680px; padding:38px; }.card h1 { font-size:2.1rem; }.dashboard h1 { font-size:2.7rem; }.card-header { margin-bottom:26px; }.card-header p,.muted { color:var(--muted); line-height:1.55; }.field { margin:16px 0; } label { display:grid; gap:7px; color:#3e4c5a; font-size:.9rem; font-weight:700; } input { width:100%; padding:12px 13px; border:1px solid #bcc9d3; border-radius:8px; color:var(--ink); font:inherit; } input:focus { outline:3px solid #cce0e9; border-color:var(--blue); }.notice { margin:0 0 20px; padding:11px 13px; border-radius:8px; line-height:1.45; }.notice.error { background:#fff0f0; color:#a63333; }.notice.success { background:#e9f6ef; color:#27704c; }.account { display:grid; gap:4px; max-width:550px; margin-top:28px; padding:20px; background:#eef6f8; border-left:4px solid var(--blue); }.account strong { font-size:1.05rem; }
@media (max-width:560px) { .topbar { padding:18px 0; }.nav { gap:12px; font-size:.87rem; }.page { padding-top:28px; }.card,.dashboard { padding:24px; } }
