/* Fonts are served from this site: visitors' browsers contact no other company. */
@font-face { font-family: Figtree; font-weight: 400; font-display: swap; src: url(/fonts/figtree-latin-400-normal.woff2) format("woff2"); }
@font-face { font-family: Figtree; font-weight: 600; font-display: swap; src: url(/fonts/figtree-latin-600-normal.woff2) format("woff2"); }
@font-face { font-family: Figtree; font-weight: 700; font-display: swap; src: url(/fonts/figtree-latin-700-normal.woff2) format("woff2"); }
@font-face { font-family: Fraunces; font-weight: 600; font-display: swap; src: url(/fonts/fraunces-latin-600-normal.woff2) format("woff2"); }

:root { --bg: #FDFBF8; --ink: #231E19; --muted: #6E655D; --accent: #B4532F; --line: #E8E0D5; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; display: flex; flex-direction: column; background: var(--bg); color: var(--ink); font-family: Figtree, Helvetica, Arial, sans-serif; }
a { color: inherit; }
header { display: flex; align-items: center; justify-content: space-between; padding: 16px; }
.logo { font-family: Fraunces, Georgia, serif; font-weight: 600; font-size: 28px; text-decoration: none; letter-spacing: -0.01em; }
.logo span, .dot { color: var(--accent); }
.button { display: inline-block; background: var(--accent); color: var(--bg); text-decoration: none; font-weight: 600; padding: 12px 20px; border-radius: 8px; }
main { flex: 1; width: 100%; max-width: 896px; margin: 0 auto; padding: 48px 16px; display: flex; flex-direction: column; justify-content: center; gap: 40px; }
h1 { max-width: 672px; margin: 0; font-size: 30px; font-weight: 600; line-height: 1.2; }
.intro { max-width: 672px; margin: 16px 0 24px; font-size: 18px; line-height: 1.5; color: var(--muted); }
ul.points { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
ul.points li { border-top: 2px solid var(--accent); padding-top: 12px; }
ul.points h2 { margin: 0 0 8px; font-size: 16px; font-weight: 600; }
ul.points p { margin: 0; color: var(--muted); line-height: 1.5; }
footer { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; padding: 24px 16px; font-size: 14px; color: var(--muted); }
.legal { max-width: 720px; justify-content: flex-start; line-height: 1.6; }
.legal h1 { font-size: 26px; }
.legal h2 { font-size: 18px; margin: 24px 0 4px; }
.legal p { margin: 0 0 8px; }
@media (min-width: 768px) {
  header { padding: 16px 40px; }
  h1 { font-size: 48px; }
  ul.points { grid-template-columns: repeat(3, 1fr); }
}
