:root{--paper:#f1e9d8;--paper-2:#e8dec8;--ink:#201c16;--ink-soft:#4a4438;--teal:#1f4e5f;--green:#4c6b3f;--red:#a63d2f;--rule:#201c162e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(#201c1609 1px,#0000 1px);background-size:3px 3px;margin:0;font-family:"Source Serif 4",serif}a{color:inherit}::selection{background:var(--red);color:var(--paper)}:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.wrap{max-width:920px;margin:0 auto;padding:0 24px}.masthead{text-align:center;padding:36px 0 0}.masthead .kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:11px}.masthead h1{letter-spacing:-.01em;margin:10px 0 6px;font-family:Fraunces,serif;font-size:clamp(44px,9vw,84px);font-weight:700;line-height:.95}.masthead h1 a{text-decoration:none}.masthead h1 .dev{color:var(--red);font-style:italic;font-weight:600}.masthead .tagline{color:var(--ink-soft);margin:0 0 22px;font-size:16px;font-style:italic}.rule{border:none;border-top:2px solid var(--ink);margin:0}.rule-thin{border:none;border-top:1px solid var(--rule);margin:0}.meta-strip{letter-spacing:.04em;color:var(--ink-soft);justify-content:space-between;align-items:center;padding:8px 0;font-family:IBM Plex Mono,monospace;font-size:11px;display:flex}nav.sections{justify-content:center;gap:0;margin:0;display:flex}nav.sections a{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding:14px 22px;font-family:IBM Plex Mono,monospace;font-size:13px;text-decoration:none;display:inline-block;position:relative}nav.sections a:hover{color:var(--ink)}nav.sections a.active{color:var(--ink);font-weight:600}nav.sections a.active:after{content:"";background:var(--red);height:2px;position:absolute;bottom:8px;left:22px;right:22px}nav.sections .divider{background:var(--rule);width:1px;margin:10px 0}main{padding:40px 0 100px}.about-grid{grid-template-columns:200px 1fr;align-items:start;gap:40px;display:grid}.portrait{aspect-ratio:3/4;background:repeating-linear-gradient(135deg, #201c1614 0 2px, transparent 2px 10px), var(--paper-2);border:1px solid var(--rule);letter-spacing:.08em;color:var(--ink-soft);text-align:center;justify-content:center;align-items:center;padding:10px;font-family:IBM Plex Mono,monospace;font-size:10px;display:flex}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin:0 0 10px;font-family:IBM Plex Mono,monospace;font-size:11px}.about-grid h2{margin:0 0 14px;font-family:Fraunces,serif;font-size:30px;font-weight:600;line-height:1.15}.about-grid p{color:var(--ink);margin:0 0 16px;font-size:17px;line-height:1.7}.about-grid p.lede:first-letter{float:left;color:var(--teal);margin:6px 8px 0 0;font-family:Fraunces,serif;font-size:52px;font-weight:700;line-height:.8}.signoff{color:var(--ink-soft);margin-top:8px;font-style:italic}.about-facts{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:14px 24px;margin-top:28px;padding-top:20px;font-family:IBM Plex Mono,monospace;font-size:12px;display:grid}.about-facts dt{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.about-facts dd{margin:2px 0 0;font-family:"Source Serif 4",serif;font-size:14px}.tip-box{border:1px solid var(--ink);background:var(--paper-2);margin-top:32px;padding:18px 20px}.tip-box p{margin:0;font-size:15px;line-height:1.6}.tip-box a{color:var(--teal);text-underline-offset:3px;text-decoration-thickness:1px}.archive-head{justify-content:space-between;align-items:baseline;margin-bottom:22px;display:flex}.archive-head h2{margin:0;font-family:Fraunces,serif;font-size:26px}.archive-head span{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:11px}.ticket{border:1px solid var(--ink);background:var(--paper);color:inherit;grid-template-columns:110px 1fr;margin-bottom:16px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:grid;position:relative}.ticket:hover,.ticket:focus-visible{box-shadow:-3px 0 0 var(--red);transform:translate(3px)}.ticket-stub{background:var(--ink);color:var(--paper);flex-direction:column;justify-content:space-between;padding:16px 12px;font-family:IBM Plex Mono,monospace;display:flex;position:relative}.ticket-stub:after{content:"";background-image:radial-gradient(circle, var(--paper) 3px, transparent 3.5px);background-position:50%;background-size:12px 16px;width:12px;position:absolute;top:0;bottom:0;right:-6px}.ticket-stub .no{letter-spacing:.1em;opacity:.7;font-size:10px}.ticket-stub .issue-num{font-size:22px;font-weight:600;line-height:1}.ticket-stub .date{opacity:.85;font-size:10px}.ticket-body{flex-direction:column;justify-content:center;gap:6px;padding:16px 22px 16px 26px;display:flex}.ticket-body .headline{font-family:Fraunces,serif;font-size:19px;font-weight:600;line-height:1.25}.ticket-body .teaser{color:var(--ink-soft);font-size:14px;line-height:1.5}.ticket-body .tag{letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-top:2px;font-family:IBM Plex Mono,monospace;font-size:10px}.issue-header{margin-bottom:28px}.issue-header .issue-meta{color:var(--ink-soft);letter-spacing:.06em;margin-bottom:10px;font-family:IBM Plex Mono,monospace;font-size:11px}.issue-header h1{margin:0 0 8px;font-family:Fraunces,serif;font-size:clamp(28px,5vw,42px);line-height:1.15}.issue-body p{margin:0 0 20px;font-size:18px;line-height:1.8}.issue-body p:first-of-type:first-letter{float:left;color:var(--teal);margin:6px 8px 0 0;font-family:Fraunces,serif;font-size:52px;font-weight:700;line-height:.8}.back-link{letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase;margin-top:20px;font-family:IBM Plex Mono,monospace;font-size:12px;text-decoration:none;display:inline-block}.back-link:hover{color:var(--ink)}footer{text-align:center;letter-spacing:.06em;color:var(--ink-soft);padding:24px 0 50px;font-family:IBM Plex Mono,monospace;font-size:10px}@media (max-width:560px){.about-grid{grid-template-columns:1fr}.portrait{max-width:160px}.ticket{grid-template-columns:80px 1fr}.ticket-stub .issue-num{font-size:18px}nav.sections a{padding:12px 14px;font-size:12px}}
