:root{
  --ink:#1B2A4A; --paper:#EFE6D8; --paper-light:#F7F2E8;
  --stamp:#B2402E; --olive:#6B7355; --text:#22201C;
  --line: rgba(34,32,28,0.18); --shadow: 0 20px 40px -20px rgba(27,42,74,0.35);
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper-light);color:var(--text);font-family:'Source Serif 4', serif;line-height:1.6;}
h1,h2,h3{font-family:'Fraunces', serif;font-weight:600;color:var(--ink);margin:0 0 .4em;}
.mono{font-family:'IBM Plex Mono', monospace;letter-spacing:.02em;}
a{color:var(--ink);}
.wrap{max-width:760px;margin:0 auto;padding:0 24px;}
header{position:sticky;top:0;z-index:50;background:rgba(247,242,232,0.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1120px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;font-family:'Fraunces',serif;font-weight:700;font-size:1.2rem;color:var(--ink);text-decoration:none;}
.stampmark{width:28px;height:28px;border-radius:50%;border:2px solid var(--stamp);display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:.6rem;font-weight:600;color:var(--stamp);transform:rotate(-8deg);}
nav.links{display:flex;gap:24px;font-family:'IBM Plex Mono',monospace;font-size:.8rem;}
nav.links a{text-decoration:none;color:var(--text);opacity:.75;}
.btn{font-family:'IBM Plex Mono',monospace;font-size:.8rem;padding:10px 18px;border-radius:3px;border:1px solid var(--ink);background:var(--ink);color:var(--paper-light);text-decoration:none;display:inline-block;}
.btn.ghost{background:transparent;color:var(--ink);}
.breadcrumb{font-family:'IBM Plex Mono',monospace;font-size:.72rem;opacity:.6;padding:22px 0 0;}
.breadcrumb a{text-decoration:none;color:var(--text);}
.tag{font-family:'IBM Plex Mono',monospace;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--stamp);}
article h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.15;margin-top:8px;}
.excerpt-lede{font-size:1.08rem;color:#3a362f;max-width:64ch;}
.summary-box{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:18px 22px;margin:26px 0;}
.summary-box .mono{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--olive);display:block;margin-bottom:8px;}
.summary-box ul{margin:0;padding-left:20px;}
.summary-box li{margin-bottom:4px;font-size:.95rem;}
article h2{font-size:1.25rem;margin-top:34px;}
article p{font-size:1rem;color:#2c2a25;}
.keypoints{background:var(--ink);color:var(--paper-light);border-radius:4px;padding:22px 24px;margin:34px 0;}
.keypoints h2{color:var(--paper-light);font-size:1.1rem;margin-top:0;}
.keypoints p{color:var(--paper-light);opacity:.9;font-size:.95rem;}
.cta-box{border:1px dashed var(--stamp);border-radius:4px;padding:20px 22px;margin:30px 0;text-align:center;}
.cta-box p{margin:0 0 12px;font-size:.95rem;}
.related{margin:34px 0 10px;}
.related h2{font-size:1.05rem;}
.related ul{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:8px;}
.related a{font-size:.92rem;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:6px;display:block;}
.disclaimer{font-family:'IBM Plex Mono',monospace;font-size:.72rem;opacity:.55;margin-top:40px;padding-top:16px;border-top:1px solid var(--line);}
footer{background:var(--ink);color:var(--paper-light);padding:40px 0 26px;margin-top:50px;}
footer .wrap{font-family:'IBM Plex Mono',monospace;font-size:.75rem;opacity:.7;}
footer a{color:var(--paper-light);}
@media (max-width:600px){ nav.links{display:none;} }
.search-box{margin:26px 0 6px;position:relative;}
.search-box input{width:100%;font-family:'Source Serif 4',serif;font-size:1rem;padding:14px 16px;border:1px solid var(--line);border-radius:4px;background:var(--paper-light);color:var(--text);}
.search-box input:focus{outline:2px solid var(--stamp);outline-offset:2px;}
.search-results{margin-top:10px;display:flex;flex-direction:column;gap:8px;}
.search-results a{display:block;text-decoration:none;border:1px solid var(--line);background:var(--paper);border-radius:4px;padding:12px 14px;}
.search-results .sr-section{font-family:'IBM Plex Mono',monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--stamp);}
.search-results .sr-title{display:block;font-family:'Fraunces',serif;font-weight:600;font-size:.95rem;color:var(--ink);margin-top:2px;}
.search-results .sr-excerpt{display:block;font-size:.82rem;color:#4a463e;margin-top:4px;}
.search-hint{font-family:'IBM Plex Mono',monospace;font-size:.72rem;opacity:.55;margin:6px 0 0;}
.search-empty{font-family:'IBM Plex Mono',monospace;font-size:.8rem;opacity:.6;padding:10px 2px;}
