:root {
  color-scheme: light;
  font-family: system-ui, sans-serif;
  color: #17212b;
  background: #f3f6f8;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  min-height: 100vh;
  background: radial-gradient(circle at top right, #d9e8f4, transparent 38%), #f3f6f8;
}

main {
  width: min(960px, calc(100% - 40px));
  margin: 0 auto;
  padding: 72px 0 48px;
}

header, section, footer {
  padding: 32px;
  border: 1px solid #dce4e9;
  border-radius: 18px;
  background: rgba(255, 255, 255, .9);
}

header { margin-bottom: 20px; }
.eyebrow { color: #346b8f; font-size: .8rem; font-weight: 700; letter-spacing: .15em; }
h1 { max-width: 640px; margin: 12px 0; font-size: clamp(2.4rem, 8vw, 4.5rem); line-height: 1.05; }
h2 { margin-top: 0; }
p { line-height: 1.6; }
.button { display: inline-block; margin-top: 14px; padding: 12px 18px; border-radius: 8px; background: #145b7a; color: white; text-decoration: none; font-weight: 700; }
nav { display: flex; gap: 18px; margin-top: 24px; }
nav a, .post-list a, .back-link { color: #145b7a; font-weight: 650; }
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; }
.card { display: grid; gap: 8px; padding: 20px; border: 1px solid #dce4e9; border-radius: 12px; color: inherit; text-decoration: none; }
.card:hover { border-color: #145b7a; }
.card span, footer { color: #4a5964; }
.post-list { display: grid; gap: 20px; }
.post { padding-bottom: 18px; border-bottom: 1px solid #dce4e9; }
.post h2 { margin-bottom: 6px; }
.post h2 a { text-decoration: none; }
.post time { color: #64727c; font-size: .9rem; }
.back-link { display: inline-block; margin-bottom: 20px; }
footer { margin-top: 20px; }
footer a { color: #145b7a; }
