:root{--paper:#f5f1e8;--card:#fffdf8;--ink:#1d1c1a;--soft:#55524b;--rule:#d9d2c3;--brick:#a8401e;--ok:#2f5d3a}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 "IBM Plex Sans",Arial,sans-serif}
a{color:var(--ink);text-underline-offset:2px}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--brick);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:var(--card);padding:6px 10px;z-index:9}
.bar{display:flex;justify-content:space-between;align-items:center;gap:16px;max-width:1120px;margin:0 auto;padding:18px 20px}
.mark{font:600 19px/1 "Source Serif 4",Georgia,serif;text-decoration:none;letter-spacing:-.01em}
.mark::before{content:"";display:inline-block;width:10px;height:10px;background:var(--brick);border-radius:50%;margin-right:8px;vertical-align:1px}
.bar nav a{margin-left:18px;font-size:15px}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start;padding:40px 0 56px}
h1{font:600 clamp(34px,4.6vw,52px)/1.08 "Source Serif 4",Georgia,serif;letter-spacing:-.02em;margin:0 0 20px}
h2{font:600 clamp(26px,3vw,34px)/1.15 "Source Serif 4",Georgia,serif;letter-spacing:-.01em;margin:0 0 14px}
h3{font:600 18px/1.3 "IBM Plex Sans",Arial,sans-serif;margin:0 0 6px}
.lede{font-size:19px;color:var(--soft);margin:0 0 26px;max-width:34em}
.btn{display:inline-block;background:var(--ink);color:#fff;font:600 17px/1 "IBM Plex Sans",Arial,sans-serif;padding:16px 22px;border-radius:4px;text-decoration:none;border:0;cursor:pointer}
.btn:hover{background:#000}
.note{font-size:14px;color:var(--soft);margin:10px 0 0}
.mono{font-family:"IBM Plex Mono",Consolas,monospace}
.sheet{background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:22px 22px 8px;box-shadow:0 1px 0 var(--rule)}
.sheet .top{display:flex;justify-content:space-between;gap:12px;font:13px/1.4 "IBM Plex Mono",Consolas,monospace;color:var(--soft);border-bottom:1px solid var(--rule);padding-bottom:10px;margin-bottom:4px}
.item{padding:14px 0;border-bottom:1px solid var(--rule);font-size:15px}
.item:last-child{border-bottom:0}
.item .tag{font:600 11px/1 "IBM Plex Mono",Consolas,monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--brick)}
.item .who{font-weight:600;margin:6px 0 2px}
.item .said{font-family:"Source Serif 4",Georgia,serif;font-style:italic;margin:6px 0 4px}
.item .meta{font:13px/1.4 "IBM Plex Mono",Consolas,monospace;color:var(--soft)}
.redact{background:var(--ink);color:transparent;border-radius:2px;user-select:none}
section{padding:56px 0;border-top:1px solid var(--rule)}
.two{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px}
.week{width:100%;border-collapse:collapse;font-size:16px}
.week td{padding:12px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.week td.n{font:600 26px/1 "IBM Plex Mono",Consolas,monospace;width:88px;padding-top:14px}
.price{font:600 56px/1 "IBM Plex Mono",Consolas,monospace;margin:0 0 6px}
.price small{font-size:18px;font-weight:400;color:var(--soft)}
details{border-bottom:1px solid var(--rule);padding:14px 0}
summary{cursor:pointer;font-weight:600}
details p{margin:10px 0 0;color:var(--soft)}
form.join{display:grid;gap:14px;max-width:560px}
form.join label{font-weight:600;font-size:15px}
form.join input[type=text],form.join input[type=email]{width:100%;font:17px "IBM Plex Sans",Arial,sans-serif;padding:12px;border:1px solid #b9b1a0;border-radius:4px;background:#fff;margin-top:4px}
fieldset{border:0;padding:0;margin:0}
legend{font-weight:600;font-size:15px;margin-bottom:6px}
.checks{display:flex;flex-wrap:wrap;gap:8px 18px}
.checks label{font-weight:400}
.hp{position:absolute;left:-5000px}
.msg{padding:12px 14px;border-radius:4px;margin:0 0 16px}
.msg.ok{background:#e4efe3;color:var(--ok)}.msg.err{background:#f6e2da;color:var(--brick)}
.foot{max-width:1120px;margin:0 auto;padding:28px 20px 48px;font-size:14px;color:var(--soft);border-top:1px solid var(--rule)}
body.doc main{max-width:720px;margin:0 auto;padding:10px 20px 40px}
body.doc h2{font-size:22px;margin-top:32px}
body.doc .meta{color:var(--soft);font-size:14px}
@media (max-width:860px){.hero,.two{grid-template-columns:1fr;gap:28px}.hero{padding-top:18px}.bar nav a{margin-left:12px}}
@media (max-width:420px){.bar nav a:first-child{display:none}.price{font-size:44px}}
