:root {
  --paper: #f6f1e7;
  --ink: #23201b;
  --soft: #6a6357;
  --line: #ddd4c3;
  --card: #fbf8f1;
  --leaf: #2f6b4f;
}
@media (prefers-color-scheme: dark) {
  :root { --paper: #1b1a17; --ink: #ece6d9; --soft: #a39c8d; --line: #35322c; --card: #23211d; --leaf: #7fbf9c; }
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--paper); color: var(--ink);
  font: 18px/1.6 Georgia, "Iowan Old Style", "Times New Roman", serif;
}
.wrap { max-width: 680px; margin: 0 auto; padding: 0 20px; }
header.top { display: flex; justify-content: space-between; align-items: baseline; padding: 28px 0 0; font-family: system-ui, "Segoe UI", sans-serif; font-size: 15px; }
header.top .name { font-weight: 600; letter-spacing: .01em; color: var(--ink); text-decoration: none; }
header.top nav a { color: var(--soft); text-decoration: none; margin-left: 18px; }
header.top nav a:hover { color: var(--ink); }
h1 { font-size: clamp(34px, 7vw, 52px); line-height: 1.12; font-weight: 400; margin: 72px 0 20px; letter-spacing: -.01em; }
h1 s { color: var(--soft); text-decoration-thickness: 2px; text-decoration-color: var(--leaf); }
.lead { font-size: 21px; color: var(--soft); margin: 0 0 32px; max-width: 34em; }
.cta { display: inline-block; font-family: system-ui, "Segoe UI", sans-serif; font-size: 16px; padding: 12px 20px; border: 1.5px solid var(--ink); border-radius: 4px; color: var(--ink); text-decoration: none; }
.cta.soon { border-style: dashed; color: var(--soft); border-color: var(--soft); }
.note { font-family: system-ui, "Segoe UI", sans-serif; font-size: 14px; color: var(--soft); margin: 12px 0 0; }
h2 { font-size: 26px; font-weight: 400; margin: 80px 0 16px; }
.cols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 560px) { .cols { grid-template-columns: 1fr; } }
.box { background: var(--card); border: 1px solid var(--line); border-radius: 6px; padding: 18px 20px; }
.box h3 { font-family: system-ui, "Segoe UI", sans-serif; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--soft); margin: 0 0 10px; font-weight: 600; }
.box ul { margin: 0; padding: 0; list-style: none; }
.box li { padding: 5px 0; border-top: 1px solid var(--line); }
.box li:first-child { border-top: 0; }
.gone li { text-decoration: line-through; text-decoration-color: var(--leaf); text-decoration-thickness: 1.5px; color: var(--soft); }
.stay li::before { content: "\2713\00a0"; color: var(--leaf); }
p { margin: 0 0 16px; }
.plain { padding-left: 20px; }
.plain li { margin: 6px 0; }
a { color: var(--leaf); }
footer { margin: 96px 0 40px; padding-top: 20px; border-top: 1px solid var(--line); font-family: system-ui, "Segoe UI", sans-serif; font-size: 14px; color: var(--soft); }
footer a { color: var(--soft); }
article h1 { font-size: 34px; margin-top: 56px; }
article h2 { font-size: 22px; margin: 40px 0 10px; }
article code { font-size: .85em; background: var(--card); border: 1px solid var(--line); border-radius: 3px; padding: 1px 5px; }
.guides li { margin: 8px 0; }
.guide h1 { font-size: clamp(30px, 6vw, 42px); margin: 56px 0 6px; }
.guide .updated { font-family: system-ui, "Segoe UI", sans-serif; font-size: 13px; color: var(--soft); margin: 0 0 24px; }
.guide h2 { font-size: 24px; margin: 48px 0 12px; }
.guide code { font-size: .85em; background: var(--card); border: 1px solid var(--line); border-radius: 3px; padding: 1px 5px; word-break: break-word; }
.callout { background: var(--card); border-left: 3px solid var(--leaf); padding: 12px 16px; font-size: 16px; color: var(--soft); }
.getit { margin-top: 64px; padding-top: 8px; border-top: 1px solid var(--line); }
.getit h2 { margin-top: 32px; }
