:root { --ink:#1d2a35; --slate:#53616b; --line:#dbe0e3; --mist:#f5f7f7; --accent:#2e6d72; --serif:'Newsreader', Georgia, serif; --sans:'DM Sans', Arial, sans-serif; } * { box-sizing:border-box; } body { margin:0; color:var(--ink); font-family:var(--sans); } header, footer { max-width:1050px; margin:auto; padding:24px 28px; display:flex; gap:24px; border-bottom:1px solid var(--line); font-size:14px; } header .brand { margin-right:auto; font-weight:700; text-decoration:none; } header a, footer a { color:inherit; } main { max-width:850px; margin:auto; padding:88px 28px; }.eyebrow { color:var(--accent); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.archive h1, .article h1 { max-width:720px; margin:13px 0; font:600 clamp(42px,6vw,70px)/1 var(--serif); letter-spacing:-.04em; }.lede, .article-excerpt { max-width:630px; color:var(--slate); font-size:18px; line-height:1.65; }.post-list { margin-top:55px; border-top:1px solid var(--line); }.post-card { display:block; padding:27px 0; border-bottom:1px solid var(--line); color:inherit; text-decoration:none; }.post-card p { margin:0; color:var(--accent); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }.post-card h2 { max-width:620px; margin:11px 0 8px; font:600 31px/1.12 var(--serif); letter-spacing:-.035em; }.post-card span { color:var(--slate); line-height:1.55; }.post-card b { display:block; margin-top:17px; font-size:14px; }.back { color:var(--accent); font-size:14px; font-weight:600; }.article-body { max-width:670px; margin-top:45px; font-size:18px; line-height:1.76; }.article-body h2 { margin-top:45px; font:600 34px/1.1 var(--serif); }.article-body h3 { margin-top:30px; font-size:20px; }.article-body a { color:var(--accent); }.article-body blockquote { margin:28px 0; padding-left:22px; border-left:3px solid var(--accent); color:var(--slate); font:500 23px/1.45 var(--serif); }.article-body code { padding:2px 4px; background:var(--mist); font-size:.85em; }.article-body li { margin:7px 0; } footer { justify-content:center; border-top:1px solid var(--line); border-bottom:0; color:var(--slate); font-size:12px; } @media(max-width:600px) { header { padding:19px 20px; } main { padding:60px 20px; }.post-card h2 { font-size:27px; }.article-body { font-size:17px; } }
