:root { --ink:#14233b; --blue:#146c94; --paper:#f7fafc; --line:#d8e1e8; }
* { box-sizing: border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:#075c82; }
.site-header, main, footer { max-width:960px; margin:auto; padding-left:24px; padding-right:24px; }
.site-header { padding-top:28px; display:flex; justify-content:space-between; gap:18px; align-items:center; }
.brand { font-weight:750; color:var(--ink); text-decoration:none; letter-spacing:.04em; }
nav { display:flex; flex-wrap:wrap; gap:16px; }
nav a { text-decoration:none; font-weight:600; }
.hero { padding-top:76px; padding-bottom:70px; }
h1 { font-size:clamp(2.35rem,7vw,4.9rem); line-height:1; letter-spacing:-.045em; margin:0 0 20px; max-width:760px; }
.lead { font-size:1.25rem; max-width:700px; margin:0; }
.grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding-bottom:72px; }
.card { background:#fff; border:1px solid var(--line); padding:27px; border-radius:14px; }
h2 { line-height:1.16; margin-top:0; }
.site-footer { border-top:1px solid var(--line); padding-top:22px; padding-bottom:32px; font-size:.93rem; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.article { max-width:760px; padding-top:58px; padding-bottom:60px; }
@media (max-width:620px) { .site-header { align-items:flex-start; flex-direction:column; } .grid { grid-template-columns:1fr; } }
