:root {
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #172033;
  background: #f7f9fc;
}

* { box-sizing: border-box; }
body { margin: 0; }
a { color: #2457d6; }
.shell { width: min(960px, calc(100% - 40px)); margin: 0 auto; }
.site-header, .site-footer { padding: 20px 0; }
.site-header .shell, .site-footer .shell, .nav { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }
.brand { color: #172033; font-weight: 750; text-decoration: none; margin-right: auto; }
.nav a, .site-footer a { font-size: 14px; }
main { padding: 56px 0 72px; }
.hero, .panel { background: #fff; border: 1px solid #dbe3ef; border-radius: 16px; padding: 32px; }
.hero { padding: 48px; }
h1 { margin: 0 0 16px; font-size: clamp(36px, 7vw, 64px); line-height: 1.05; letter-spacing: -0.04em; }
h2 { margin: 36px 0 12px; font-size: 24px; }
p, li { font-size: 16px; line-height: 1.7; }
.lede { max-width: 720px; color: #53627a; font-size: 19px; }
.eyebrow { color: #2457d6; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; margin-top: 28px; }
.price { font-size: 42px; font-weight: 800; letter-spacing: -0.03em; }
.button { display: inline-block; border-radius: 10px; padding: 12px 18px; background: #2457d6; color: #fff; font-weight: 700; text-decoration: none; }
.muted { color: #66758b; }
.notice { border-left: 4px solid #2457d6; padding: 12px 16px; background: #eef4ff; }
.site-footer { border-top: 1px solid #dbe3ef; }
@media (max-width: 560px) { .hero, .panel { padding: 24px; } main { padding-top: 28px; } }
