:root { color-scheme: light; --paper: #f7f5e9; --ink: #273d32; --muted: #69746b; --green: #42664a; --line: #dce2d5; font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font-size: 16px; line-height: 1.8; word-break: keep-all; }
a { color: var(--green); text-underline-offset: .25em; }
a:focus-visible { outline: 3px solid #94ad77; outline-offset: 5px; border-radius: 3px; }
header, main, footer { width: min(1080px, calc(100% - 48px)); margin-inline: auto; }
header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 28px; }
.brand { font-size: 29px; font-weight: 800; letter-spacing: -.06em; text-decoration: none; color: var(--ink); }
nav { display: flex; gap: 26px; font-size: 14px; }
nav a { text-decoration: none; }
.hero { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 60px; padding-block: 70px 80px; }
h1, h2, h3 { line-height: 1.3; letter-spacing: -.045em; }
h1 { font-size: clamp(40px, 5.5vw, 68px); margin: 0 0 28px; }
.lead { max-width: 460px; font-size: 19px; color: var(--muted); }
.hero-art { display: grid; place-items: center; aspect-ratio: 1; background: #e8eddb; border-radius: 50%; }
.hero-art img { display: block; width: 84%; height: auto; }
.actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; align-items: center; }
.button { display: inline-block; padding: 12px 23px; border-radius: 12px; background: var(--green); color: white; font-weight: 600; text-decoration: none; }
.quiet-link { padding: 12px 10px; font-size: 14px; }
.features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 42px; padding-block: 38px 72px; border-top: 1px solid var(--line); }
.features h2 { font-size: 21px; margin: 12px 0; }
.features p { color: var(--muted); font-size: 15px; margin: 0; }
.feature-mark { color: var(--green); font-size: 18px; font-weight: 700; letter-spacing: -.04em; }
footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; border-top: 1px solid var(--line); padding-block: 24px 36px; color: var(--muted); font-size: 13px; }
footer a { margin-left: 18px; }
.document { max-width: 740px; padding-block: 48px 80px; }
.document h1 { font-size: clamp(32px, 5vw, 45px); margin-bottom: 18px; }
.document h2 { font-size: 23px; margin-top: 42px; margin-bottom: 12px; }
.document p, .document li { color: #4e5e52; }
.document ul { padding-left: 22px; }
.date { font-size: 13px; color: var(--muted); }
.intro { font-size: 18px; }
.faq { border-top: 1px solid var(--line); padding-block: 21px; }
.faq h2 { margin: 0 0 10px; font-size: 20px; }
.faq p { margin: 0; }
@media (max-width: 680px) { header, main, footer { width: calc(100% - 36px); } header { padding-block: 19px; } nav { gap: 15px; font-size: 12px; } .hero { grid-template-columns: 1fr; gap: 35px; padding-block: 42px; } .hero-art { width: min(310px, 85%); margin-inline: auto; } .lead { font-size: 17px; } .features { grid-template-columns: 1fr; gap: 28px; padding-bottom: 42px; } .document { padding-top: 30px; } footer a { margin-left: 0; margin-right: 18px; } }
