/* The Bay Playbook — dossier design system. One file, every page. */

:root{--paper:#F7F6F2;--white:#FFFFFF;--ink:#1C2733;--dim:#5A6472;--faint:#8B939E;--rule:#C9CED4;--hair:#E3E5E8;--manila:#F0E7D0;--manila2:#E6D9BA;--stamp:#C0272D;--stint:#FAECEA}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Libre Franklin',sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}
a{color:var(--ink);text-decoration:none}
::selection{background:#F3D5D3}
:focus-visible{outline:2px solid var(--stamp);outline-offset:2px}
button{font-family:'Libre Franklin',sans-serif}
.tw{font-family:'Courier Prime',monospace}
.pen{font-family:'Kalam',cursive;color:var(--stamp)}
.wrap{max-width:1080px;margin:0 auto;padding:0 32px}
.col{max-width:740px;margin:0 auto}
.wide{max-width:980px;margin-left:auto;margin-right:auto}

/* letterhead */
.lh{border-bottom:3px double var(--ink);background:var(--paper);position:sticky;top:0;z-index:50}
.lh-in{max-width:1080px;margin:0 auto;padding:0 32px;height:58px;display:flex;align-items:center;gap:24px}
.lh .mark{font-weight:900;font-size:15px;letter-spacing:0.04em;white-space:nowrap}
.lh .mark b{color:var(--stamp)}
.lh .meta{font-family:'Courier Prime',monospace;font-size:12px;color:var(--dim);white-space:nowrap}
.lh nav{margin-left:auto;display:flex;gap:22px}
.lh nav a{font-size:13px;font-weight:700;letter-spacing:0.02em}
.lh nav a:hover{color:var(--stamp)}

/* crumb */
.crumb{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:28px 0 0;flex-wrap:wrap}
.crumb .c1{font-family:'Courier Prime',monospace;font-size:12.5px;color:var(--dim)}
.crumb .c1 a{color:var(--dim);border-bottom:1px solid var(--rule)}
.crumb .c1 a:hover{color:var(--stamp)}
.crumb .c2{font-family:'Courier Prime',monospace;font-size:12.5px;color:var(--stamp);font-weight:700}

/* article type */
h1{font-size:clamp(38px,4.6vw,60px);font-weight:900;line-height:1.0;letter-spacing:-0.025em;margin:14px 0 20px;max-width:15ch;text-wrap:balance}
.dek{font-size:17.5px;line-height:1.7;color:var(--ink);margin:0 0 8px}
h2{font-size:clamp(24px,2.6vw,30px);font-weight:900;letter-spacing:-0.02em;line-height:1.1;margin:48px 0 14px;scroll-margin-top:84px}
p{font-size:16px;line-height:1.75;color:var(--ink);margin:0 0 16px}
p a{font-weight:700;border-bottom:2px solid var(--stamp)}
p a:hover{color:var(--stamp)}
.small{font-size:13.5px;line-height:1.7;color:var(--dim)}

/* section bar + form box */
.bar{background:var(--ink);color:var(--paper);font-weight:800;font-size:12.5px;letter-spacing:0.14em;padding:9px 15px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.bar .r{font-family:'Courier Prime',monospace;font-size:11.5px;font-weight:400;letter-spacing:0.02em;color:#B9C0C9}
.bar .stamped{font-weight:900;font-size:11px;letter-spacing:0.1em;color:#F3A9A5}
.formbox{background:var(--white);border:1px solid var(--rule)}
.chz-in{padding:16px 18px 18px}
.fine{margin-top:14px;border-top:1px solid var(--hair);padding-top:11px;font-family:'Courier Prime',monospace;font-size:12px;line-height:1.6;color:var(--dim)}

/* toggles (form checkboxes) */
.togs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.togs.free{display:flex;flex-wrap:wrap}
.tog{font-size:13px;font-weight:700;padding:11px 13px;border:1px solid var(--rule);background:var(--white);color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:10px;text-align:left}
.tog:hover{border-color:var(--ink)}
.tog .bx{width:13px;height:13px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:var(--stamp);flex:none}
.tog.on{border-color:var(--ink);background:var(--paper)}
.verdict{margin-top:16px;border-top:1px solid var(--rule);padding-top:14px}
.verdict .vl{font-family:'Courier Prime',monospace;font-size:11px;color:var(--dim);letter-spacing:0.08em;margin-bottom:4px}
.verdict .vh{font-family:'Courier Prime',monospace;font-size:19px;font-weight:700;color:var(--stamp);letter-spacing:0.01em}
.verdict .vn{font-size:14px;line-height:1.7;color:var(--ink);margin-top:6px}
.verdict .vb{font-family:'Courier Prime',monospace;font-size:11px;color:var(--dim);letter-spacing:0.06em;margin-top:10px}
.verdict .pillrow{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.verdict a.pill2{display:inline-block;font-family:'Courier Prime',monospace;font-size:11.5px;padding:6px 12px;border:2px solid var(--stamp);color:var(--stamp);font-weight:700}
.verdict a.pill2:hover{background:var(--stamp);color:#fff}

/* inline examiner's note */
.note{background:var(--manila);border:1px solid var(--manila2);padding:18px 22px;margin:24px 0}
.note .pen{font-size:20px;line-height:1.35;display:inline-block;transform:rotate(-1.2deg);margin-bottom:6px}
.note .nt{font-size:14.5px;line-height:1.75;color:#4A4634}
.note a.pill{display:inline-block;margin-top:12px;font-family:'Courier Prime',monospace;font-size:12px;padding:7px 13px;border:2px solid var(--stamp);color:var(--stamp);font-weight:700;background:transparent}
.note a.pill:hover{background:var(--stamp);color:#fff}

/* data band */
.stats{margin:24px 0;border-top:3px double var(--ink);background:var(--white);border-bottom:1px solid var(--rule)}
.stats .cap{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--rule);font-size:11px;font-weight:900;letter-spacing:0.12em}
.stats .cap .r{font-family:'Courier Prime',monospace;font-size:11px;font-weight:400;color:var(--dim);letter-spacing:0.02em}
.stats .g{display:grid;grid-template-columns:repeat(3,1fr)}
.stats .g.g2{grid-template-columns:repeat(2,1fr)}
.st{padding:14px 16px;border-left:1px solid var(--hair);border-top:1px solid var(--hair)}
.st:first-child{border-left:none}
.st:nth-child(-n+3){border-top:none}
.stats .g .st:nth-child(4){border-left:none}
.stats .g.g2 .st:nth-child(-n+2){border-top:none}
.stats .g.g2 .st:nth-child(3){border-left:none;border-top:1px solid var(--hair)}
.stats .g.g2 .st:nth-child(4){border-left:1px solid var(--hair)}
.st .v{font-family:'Courier Prime',monospace;font-weight:700;font-size:21px;color:var(--ink);font-variant-numeric:tabular-nums}
.st .l{font-size:12px;font-weight:600;color:var(--dim);margin-top:3px;line-height:1.4}
.stats .fine{padding:11px 16px;margin-top:0;border-top:1px solid var(--rule)}

/* X embed (native iframe) */
.xwrap{display:flex;justify-content:center;margin:28px 0}
.xframe{width:100%;max-width:550px;border:0;display:block}
.xframe.xr{height:360px}
.xframe.xd{height:740px}
@media (max-width:600px){.xframe.xr{height:450px}.xframe.xd{height:820px}}

/* comparison table */
.cmp{margin-top:26px;background:var(--white);border:1px solid var(--rule)}
.cmp-h,.cmp-r{display:grid;grid-template-columns:128px 1.3fr 1fr 1fr 1.25fr;gap:0 22px;padding:11px 20px}
.cmp-h{background:var(--ink);padding:10px 20px}
.cmp-h span{font-family:'Courier Prime',monospace;font-size:11px;font-weight:700;letter-spacing:0.1em;color:var(--paper)}
.cmp-r{border-top:1px solid var(--hair);padding:18px 20px;font-size:14px;line-height:1.65;color:var(--ink);align-items:start}
.cmp-r:first-of-type{border-top:none}
.cmp-r.you{background:var(--stint)}
.cmp-r .nm{font-size:17px;font-weight:900;letter-spacing:-0.01em}
.cmp-r .one{display:block;font-size:11.5px;font-weight:600;color:var(--dim);margin-top:4px;line-height:1.45}
.cmp-r .yp{display:block;font-size:10px;font-weight:900;letter-spacing:0.08em;color:var(--stamp);margin-top:5px}
.cmp-r .tr{color:var(--dim)}
@media (min-width:1001px){.cmp.c3 .cmp-h,.cmp.c3 .cmp-r{grid-template-columns:128px 150px 1fr}}

/* folder tabs + itinerary */
.tabs{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--rule);border-bottom:2px solid var(--ink);background:var(--white);width:fit-content;max-width:100%}
.tab{font-size:13px;font-weight:800;letter-spacing:0.03em;padding:10px 18px;background:var(--white);color:var(--dim);border:none;border-right:1px solid var(--rule);cursor:pointer}
.tab:last-child{border-right:none}
.tab:hover{color:var(--ink)}
.tab.on{background:var(--ink);color:var(--paper)}
.tab .rc{font-family:'Courier Prime',monospace;font-size:9.5px;margin-left:7px;color:var(--stamp)}
.tab.on .rc{color:#F3A9A5}
.tl{background:var(--white);border:1px solid var(--rule);border-top:none;padding:6px 0 4px}
.tstep{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px 20px;border-top:1px solid var(--hair)}
.tstep:first-child{border-top:none}
.tstep .tw2{font-family:'Courier Prime',monospace;font-size:11.5px;color:var(--stamp);font-weight:700;padding-top:2px}
.tstep .tt{font-size:15px;font-weight:800;margin-bottom:3px}
.tstep .td{font-size:14px;line-height:1.7;color:var(--ink)}

/* caution box */
.tips{background:var(--white);border:1px solid var(--rule);margin:24px 0}
.tips .tip{display:flex;gap:14px;padding:14px 18px;border-top:1px solid var(--hair);font-size:14.5px;line-height:1.7}
.tips .bar+.tip{border-top:none}
.tips .tip .n{font-family:'Courier Prime',monospace;font-size:11.5px;font-weight:700;color:var(--stamp);padding-top:3px;flex:none}
.caution{border-left:4px solid var(--stamp);border-top:1px solid var(--rule);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);background:#FCF4F3;padding:18px 22px;margin:24px 0;position:relative}
.caution .wh{font-size:11.5px;font-weight:900;letter-spacing:0.14em;color:var(--stamp);margin-bottom:8px}
.caution .wt{font-size:15px;line-height:1.75;color:var(--ink)}

/* tracker box */
.trk{margin:26px 0;background:var(--white);border:1px solid var(--rule)}
.trk-in{padding:15px 18px}
.trk .tc{font-family:'Courier Prime',monospace;font-size:12px;font-weight:700}
.trk-note{margin-top:14px;border-top:1px solid var(--hair);padding-top:12px;font-size:14px;line-height:1.7;color:var(--ink)}

/* simple checklist */
.cl{background:var(--white);border:1px solid var(--rule);margin-top:8px}
.cl-row{display:flex;align-items:flex-start;gap:14px;padding:12px 18px;cursor:pointer;border-top:1px solid var(--hair)}
.cl-row:first-child{border-top:none}
.cl-row:hover{background:#FBFAF6}
.cl-box{width:18px;height:18px;flex:none;margin-top:2px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:var(--stamp)}
.cl-txt{font-size:14.5px;font-weight:500;line-height:1.55}

/* playbook checklist (title + description rows) */
.pli{display:flex;align-items:flex-start;gap:14px;padding:13px 18px;border-top:1px solid var(--hair);cursor:pointer}
.pli:first-child{border-top:none}
.pli:hover{background:#FBFAF6}
.pli .bx{width:18px;height:18px;flex:none;margin-top:2px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:var(--stamp)}
.pli .tt{font-size:15px;font-weight:800;line-height:1.45}
.pli .dd{font-size:13.5px;line-height:1.65;color:var(--dim);margin-top:2px}
.pli .dd a{font-weight:700;border-bottom:1px solid var(--rule)}
.pli .dd a:hover{color:var(--stamp);border-bottom-color:var(--stamp)}

/* numbered findings */
.nb .nb-i{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--rule)}
.nb .n{font-family:'Courier Prime',monospace;font-size:13px;color:var(--stamp);font-weight:700;padding-top:2px}
.nb .t{font-size:15.5px;font-weight:800;margin-bottom:4px}
.nb .d{font-size:14.5px;line-height:1.7;color:var(--ink)}

/* sources */
.src a{display:flex;align-items:baseline;gap:10px;font-family:'Courier Prime',monospace;font-size:13px;color:var(--dim);padding:6px 0}
.src a:hover{color:var(--stamp)}
.src .ld{flex:1;border-bottom:2px dotted var(--hair);transform:translateY(-3px)}

/* door + colophon */
.door{margin:76px 0 0;display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--ink);color:var(--paper);padding:24px 28px}
.door:hover{background:var(--stamp)}
.door .dk{font-family:'Courier Prime',monospace;font-size:11px;letter-spacing:0.08em;color:#B9C0C9;margin-bottom:6px}
.door:hover .dk{color:#F3C4C1}
.door .dt{font-size:22px;font-weight:900;letter-spacing:-0.01em;color:var(--paper)}
.door .ar{font-size:26px;font-weight:900;color:var(--paper)}
.colo{margin-top:44px;border-top:3px double var(--ink);padding:18px 0 46px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:'Courier Prime',monospace;font-size:12px;color:var(--dim)}
.colo a{color:var(--dim);border-bottom:1px solid var(--rule)}
.colo a:hover{color:var(--ink)}

/* ===== hub-only components ===== */
.cover{padding:84px 0 30px;position:relative}
.cover .file{font-family:'Courier Prime',monospace;font-size:13px;color:var(--dim);margin-bottom:18px}
.cover h1{font-size:clamp(42px,6vw,78px);max-width:16ch;margin:0 0 26px}
.cover .dek{max-width:620px;margin:0 0 12px}
.cover .by{font-size:13.5px;line-height:1.7;color:var(--dim);max-width:620px;margin:0}
.cover .by a{font-weight:700;border-bottom:2px solid var(--stamp)}
.stamp{position:absolute;right:16px;top:96px;width:198px;height:104px;border:3px solid var(--stamp);border-radius:50%;transform:rotate(-11deg);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--stamp);opacity:0.9;pointer-events:none}
.stamp::before{content:'';position:absolute;inset:5px;border:1.5px solid var(--stamp);border-radius:50%}
.stamp .s1{font-weight:900;font-size:15px;letter-spacing:0.1em}
.stamp .s2{font-family:'Courier Prime',monospace;font-size:11.5px;margin-top:3px}

.ledger{margin-top:58px;border-top:3px double var(--ink);border-bottom:3px double var(--ink);background:var(--white)}
.ledger .cap{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 18px;border-bottom:1px solid var(--rule)}
.ledger .cap .t{font-weight:900;font-size:13px;letter-spacing:0.12em}
.ledger .cap .s{font-size:12.5px;color:var(--dim)}
.route{padding:6px 0}
.rt-h{font-family:'Courier Prime',monospace;font-size:11.5px;color:var(--dim);letter-spacing:0.06em;padding:12px 18px 4px}
.rt{display:flex;align-items:baseline;gap:14px;width:100%;background:none;border:none;padding:9px 18px;cursor:pointer;text-align:left;font-size:15px}
.rt:hover{background:#FBFAF6}
.rt .no{font-family:'Courier Prime',monospace;font-size:13px;color:var(--dim);width:22px;flex:none}
.rt .nm{font-weight:800;letter-spacing:0.01em;white-space:nowrap}
.rt .wn{font-size:12.5px;color:var(--dim);white-space:nowrap}
.rt .ld{flex:1;border-bottom:2px dotted var(--rule);transform:translateY(-4px);min-width:30px}
.rt .ct{font-family:'Courier Prime',monospace;font-size:13px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.rt .bx{width:15px;height:15px;border:2px solid var(--ink);flex:none;transform:translateY(2px);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;color:var(--stamp)}
.rt .here{font-weight:900;font-size:11px;letter-spacing:0.1em;color:var(--stamp);white-space:nowrap}
.rt.link .nm{font-weight:700}
.rt.link:hover .nm{color:var(--stamp)}
.xref{padding:4px 18px 14px 54px}
.xref .pen{font-size:18.5px;transform:rotate(-1.6deg);display:inline-block}
.ledger .foot{display:flex;justify-content:space-between;gap:16px;align-items:baseline;border-top:1px solid var(--rule);padding:12px 18px}
.ledger .foot .tw{font-size:12.5px;color:var(--dim)}
.ledger .foot a{font-size:13px;font-weight:800;color:var(--stamp)}
.ledger .foot a:hover{color:var(--ink)}

.part{margin-top:64px}
.part .formbox{border-top:none}
.part .blurb{padding:16px 18px 0;font-size:15.5px;line-height:1.65;color:var(--dim);max-width:640px;margin:0}
.reality{margin:16px 18px 4px;border-left:3px solid var(--stamp);background:var(--stint);padding:14px 18px;max-width:640px}
.reality p{font-size:15px;line-height:1.7;margin:0}
.reality a{font-weight:800;color:var(--stamp)}
.filters{display:flex;gap:20px;align-items:baseline;padding:16px 18px 8px}
.filters .fl{font-family:'Courier Prime',monospace;font-size:12px;color:var(--dim)}
.filters button{font-size:12.5px;font-weight:600;color:var(--dim);background:none;border:none;padding:2px 0;cursor:pointer;border-bottom:2px solid transparent}
.filters button.on{color:var(--ink);font-weight:800;border-bottom-color:var(--stamp)}
.fli{display:flex;align-items:flex-start;gap:14px;padding:12px 18px;border-top:1px solid var(--hair);cursor:pointer}
.fli:hover{background:#FBFAF6}
.fli .bx{width:18px;height:18px;flex:none;margin-top:2px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:var(--stamp)}
.fli .tx{font-size:15px;font-weight:500;line-height:1.55}
.fli .tx .dl{font-weight:900;font-size:11px;letter-spacing:0.08em;color:var(--stamp);white-space:nowrap;margin-left:8px}
.fli .mt{display:flex;gap:14px;align-items:baseline;margin-top:3px}
.fli .mt a{font-family:'Courier Prime',monospace;font-size:12.5px;font-weight:700;color:var(--ink);border-bottom:1px solid var(--rule)}
.fli .mt a:hover{color:var(--stamp);border-bottom-color:var(--stamp)}
.fli .mt .nt{font-family:'Courier Prime',monospace;font-size:11px;color:var(--stamp)}
.part .pg{padding:14px 18px;border-top:1px solid var(--rule);font-size:13.5px;color:var(--dim)}
.part .pg a{font-weight:700;border-bottom:1px solid var(--rule);margin-right:14px}
.part .pg a:hover{color:var(--stamp);border-bottom-color:var(--stamp)}

.sig{margin-top:80px}
.sig h2{font-size:clamp(30px,3.6vw,44px);line-height:1.05;margin:0 0 14px;max-width:18ch}
.sig .lead{font-size:16px;line-height:1.75;max-width:640px;color:var(--ink);margin:0 0 34px}
.sig .lead a{font-weight:700;border-bottom:2px solid var(--stamp)}
.sgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;border-top:3px double var(--ink);max-width:920px}
.srow{padding:16px 2px 14px;border-bottom:1px solid var(--rule)}
.srow .pen{font-size:26px;line-height:1;display:block;transform:rotate(-2deg)}
.srow .who{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-top:2px}
.srow .who b{font-size:13.5px;font-weight:800}
.srow .who span{font-family:'Courier Prime',monospace;font-size:11.5px;color:var(--dim)}
.srow .did{font-size:13px;line-height:1.6;color:var(--dim);margin-top:4px}
.attn{margin-top:24px;display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}
.attn .pen{font-size:20px}
.attn .tx{font-size:13.5px;color:var(--dim);max-width:520px;line-height:1.65}

.folder{margin-top:88px;position:relative}
.folder .tab2{display:inline-block;background:var(--manila);border:1px solid var(--manila2);border-bottom:none;padding:9px 26px 7px;font-weight:900;font-size:12.5px;letter-spacing:0.12em;position:relative;top:1px}
.folder .body{background:var(--manila);border:1px solid var(--manila2);padding:44px 48px;display:grid;grid-template-columns:1.25fr 1fr;gap:56px}
.folder h2{font-size:clamp(28px,3.2vw,40px);margin:0 0 12px}
.folder p{font-size:15.5px;line-height:1.7;color:#4A4634;margin:0 0 22px;max-width:46ch}
.folder .cta{display:inline-block;background:var(--ink);color:var(--paper);font-weight:800;font-size:14px;letter-spacing:0.02em;padding:13px 24px}
.folder .cta:hover{background:var(--stamp);color:#fff}
.folder .ev{border-left:1px solid var(--manila2);padding-left:44px}
.folder .ev h3{font-size:19px;font-weight:900;margin:0 0 8px}
.folder .ev a{font-weight:800;font-size:14px;color:var(--stamp)}
.folder .ev a:hover{color:var(--ink)}

.toc{margin-top:88px}
.tocbox{background:var(--white);border:1px solid var(--rule);border-top:none;columns:2;column-gap:0;padding:10px 0}
.ti{display:flex;align-items:baseline;gap:12px;padding:7.5px 18px;break-inside:avoid}
.ti .no{font-family:'Courier Prime',monospace;font-size:12px;color:var(--faint);width:22px;flex:none}
.ti a{font-size:14px;font-weight:600}
.ti a:hover{color:var(--stamp)}
.ti .ld{flex:1;border-bottom:2px dotted var(--hair);transform:translateY(-3px);min-width:24px}
.ti .ty{font-family:'Courier Prime',monospace;font-size:10.5px;color:var(--dim);letter-spacing:0.04em}

.slip{margin-top:88px;border:1px solid var(--rule);background:var(--white);display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px 30px;flex-wrap:wrap}
.slip .sh{font-weight:900;font-size:16.5px;margin-bottom:3px}
.slip .ss{font-size:13px;color:var(--dim)}
.slip form{display:flex;gap:0;align-items:stretch}
.slip input[type=email]{font-family:'Courier Prime',monospace;font-size:13.5px;padding:12px 14px;border:2px solid var(--ink);border-right:none;background:var(--paper);color:var(--ink);width:240px;outline:none}
.slip input::placeholder{color:var(--faint)}
.slip button{font-size:13.5px;font-weight:800;letter-spacing:0.04em;padding:12px 22px;border:2px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer}
.slip button:hover{background:var(--stamp);border-color:var(--stamp)}

/* ===== responsive ===== */
@media (max-width:1000px){
  .cmp-h{display:none}
  .cmp-r{grid-template-columns:1fr;gap:8px;padding:16px 18px}
  .cmp-r > span::before{content:attr(data-l);display:block;font-family:'Courier Prime',monospace;font-size:10px;letter-spacing:0.06em;color:var(--faint);margin-bottom:3px}
  .tstep{grid-template-columns:1fr;gap:4px}
  .togs{grid-template-columns:1fr}
  .stats .g,.stats .g.g2{grid-template-columns:1fr 1fr}
  .st{border-left:none!important;border-top:1px solid var(--hair)!important}
  .st:nth-child(-n+2){border-top:none!important}
  .st:nth-child(2n){border-left:1px solid var(--hair)!important}
}
@media (max-width:860px){
  .wrap{padding:0 18px}
  .lh-in{padding:0 18px;gap:14px}
  .lh .meta{display:none}
  h2{margin-top:56px}
  .tabs{display:grid;grid-template-columns:repeat(4,1fr);width:100%}
  .tab{border-right:1px solid var(--rule);padding:10px 6px;font-size:12px;text-align:center}
  .tab .rc{display:block;margin:2px 0 0}
  .door{flex-direction:column;align-items:flex-start;padding:20px 18px}
  .cover{padding:52px 0 20px}
  .stamp{position:static;transform:rotate(-6deg);margin:26px 0 0;width:180px;height:96px}
  .rt .wn{display:none}
  .rt .nm{white-space:normal}
  .xref{padding-left:18px}
  .sgrid{grid-template-columns:1fr}
  .folder .body{grid-template-columns:1fr;padding:30px 22px;gap:34px}
  .folder .ev{border-left:none;padding-left:0;border-top:1px solid var(--manila2);padding-top:30px}
  .tocbox{columns:1}
  .slip{padding:20px 18px}
  .slip form{width:100%}
  .slip input[type=email]{flex:1;width:auto;min-width:0}
}

/* ===== reference-list components ===== */
.ali{display:grid;grid-template-columns:40px 1fr;gap:14px;padding:14px 18px;border-top:1px solid var(--hair);align-items:start}
.ali:first-child{border-top:none}
.ali .lg{width:36px;height:36px;border:1px solid var(--hair);background:#fff;position:relative;overflow:hidden;display:grid;place-items:center}
.ali .lg .ini{font-family:'Courier Prime',monospace;font-size:15px;font-weight:700;color:var(--faint)}
.ali .top{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ali .nm{font-size:15px;font-weight:800;letter-spacing:-0.01em}
.ali .aka{font-family:'Courier Prime',monospace;font-size:11px;color:var(--stamp)}
.ali .nt{font-size:13.5px;line-height:1.65;color:var(--dim);margin-top:3px}
.ali .lks{display:flex;gap:14px;margin-top:6px}
.ali .lks a{font-family:'Courier Prime',monospace;font-size:11.5px;font-weight:700;color:var(--ink);border-bottom:1px solid var(--rule)}
.ali .lks a:hover{color:var(--stamp);border-bottom-color:var(--stamp)}
.inkbox{background:var(--ink);color:var(--paper);margin:26px 0}
.inkbox .bar{background:var(--stamp);color:#fff}
.inkbox .bar .r{color:#F3C4C1}
.inkbox .lead{padding:16px 18px 4px;font-size:14px;line-height:1.7;color:#B9C0C9;max-width:60ch}
.inkbox .ali{border-top:1px solid #333E4C}
.inkbox .ali .lg{border-color:#333E4C}
.inkbox .ali .nm{color:var(--paper)}
.inkbox .ali .wait{font-family:'Courier Prime',monospace;font-size:10.5px;letter-spacing:0.06em;color:#F3A9A5}
.inkbox .ali .nt{color:#B9C0C9}
.gatefine{display:flex;justify-content:space-between;gap:14px;align-items:baseline;border-top:3px double var(--ink);border-bottom:1px solid var(--rule);padding:11px 2px;margin:20px 0;flex-wrap:wrap}
.gatefine .a{font-size:15px;font-weight:800}
.gatefine .b{font-family:'Courier Prime',monospace;font-size:12px;color:var(--dim)}

/* ===== cover sheet (homepage v6) ===== */
.cov{max-width:820px;margin:0 auto;padding:110px 0 64px;text-align:center;position:relative}
.cov .case{font-family:'Courier Prime',monospace;font-size:12.5px;letter-spacing:0.06em;color:var(--dim)}
.cov h1{font-size:clamp(40px,5.6vw,68px);font-weight:900;line-height:1.02;letter-spacing:-0.025em;margin:20px auto 24px;max-width:15ch}
.cov .dek{font-size:17px;line-height:1.7;color:var(--ink);max-width:56ch;margin:0 auto;text-wrap:balance}
.cov .stamp{position:absolute;right:-30px;top:118px;width:186px;height:98px}
.intake{max-width:760px;margin:56px auto 0;border-top:3px double var(--ink);text-align:left}
.intake .cap{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:14px 4px;border-bottom:1px solid var(--rule)}
.intake .cap .t{font-weight:900;font-size:13px;letter-spacing:0.12em}
.intake .cap .s{font-size:12.5px;color:var(--dim)}
.irow{border-bottom:1px solid var(--rule)}
.irow .head{width:100%;display:flex;align-items:baseline;gap:16px;padding:17px 4px;background:none;border:none;cursor:pointer;text-align:left;font-size:16px}
.irow .head:hover .nm{color:var(--stamp)}
.irow .no{font-family:'Courier Prime',monospace;font-size:13px;color:var(--dim);width:24px;flex:none}
.irow .nm{font-weight:800;letter-spacing:-0.01em}
.irow .wn{font-size:13px;color:var(--dim)}
.irow .ct{font-family:'Courier Prime',monospace;font-size:12px;color:var(--dim);margin-left:auto;white-space:nowrap}
.irow .chev{font-family:'Courier Prime',monospace;font-size:14px;color:var(--dim);width:14px;text-align:right}
.irow.on .chev,.irow.on .no{color:var(--stamp)}
.ibody{padding:2px 4px 20px 44px}
.ibody .bl{font-size:14px;line-height:1.65;color:var(--dim);max-width:54ch;margin:0 0 12px}
.ibody .fl{display:flex;flex-direction:column}
.ibody .fl a{display:flex;align-items:baseline;gap:12px;padding:6.5px 0;font-size:14.5px;font-weight:600;color:var(--ink)}
.ibody .fl a:hover{color:var(--stamp)}
.ibody .fl .fno{font-family:'Courier Prime',monospace;font-size:11.5px;color:var(--dim);width:24px;flex:none}
.ibody .fl .fld{flex:1;border-bottom:2px dotted var(--hair);transform:translateY(-3px);min-width:24px}
.ibody .fl .fty{font-family:'Courier Prime',monospace;font-size:10.5px;color:var(--dim)}
.ibody .ck{display:inline-block;margin-top:12px;font-size:13px;font-weight:800;color:var(--stamp)}
.ibody .ck:hover{color:var(--ink)}
.sigstrip{max-width:760px;margin:72px auto 0;text-align:center}
.sigstrip .row{display:flex;gap:34px;justify-content:center;flex-wrap:wrap;margin-bottom:12px}
.sigstrip .pen{font-size:25px;transform:rotate(-2deg)}
.sigstrip .tx{font-size:13.5px;line-height:1.7;color:var(--dim);max-width:60ch;margin:0 auto}
.sigstrip .tx a{font-weight:700;border-bottom:1px solid var(--rule)}
.sigstrip .tx a:hover{color:var(--stamp);border-bottom-color:var(--stamp)}
.endrows{max-width:760px;margin:72px auto 0;border-top:3px double var(--ink);text-align:left}
.erow{display:flex;align-items:baseline;gap:14px;width:100%;padding:15px 4px;border-bottom:1px solid var(--rule);font-size:15px;font-weight:800;color:var(--ink);background:none;border-left:none;border-right:none;border-top:none;cursor:pointer;text-align:left}
a.erow{cursor:pointer}
.erow:hover{color:var(--stamp)}
.erow .es{font-size:12.5px;font-weight:500;color:var(--dim)}
.erow .ar2{margin-left:auto;font-family:'Courier Prime',monospace;font-size:13px;color:var(--dim)}
.newsrow{display:flex;align-items:center;gap:18px;padding:15px 4px;border-bottom:1px solid var(--rule);flex-wrap:wrap}
.newsrow .nh2{font-size:15px;font-weight:800}
.newsrow form{display:flex;margin-left:auto}
.newsrow input[type=email]{font-family:'Courier Prime',monospace;font-size:12.5px;padding:9px 12px;border:2px solid var(--ink);border-right:none;background:var(--paper);color:var(--ink);width:200px;outline:none}
.newsrow button{font-size:12.5px;font-weight:800;letter-spacing:0.04em;padding:9px 16px;border:2px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer}
.newsrow button:hover{background:var(--stamp);border-color:var(--stamp)}
.cov-colo{max-width:760px;margin:0 auto}
@media (max-width:860px){
  .cov{padding:56px 0 40px}
  .cov .stamp{position:static;transform:rotate(-6deg);margin:22px auto 0;width:172px;height:92px}
  .irow .wn{display:none}
  .ibody{padding-left:4px}
  .newsrow form{width:100%;margin-left:0}
  .newsrow input[type=email]{flex:1;width:auto;min-width:0}
}

/* ===== homepage v7: confrontation opening + folder-tile gallery ===== */
.cov .hi{font-family:'Kalam',cursive;font-size:22px;color:var(--stamp);display:block;margin-bottom:10px;transform:rotate(-1.5deg)}
.cov .fire{font-size:17px;line-height:1.75;color:var(--ink);max-width:62ch;margin:0 auto 18px;text-wrap:balance}
.cov .turn{font-size:14.5px;line-height:1.75;color:var(--dim);max-width:58ch;margin:0 auto;text-wrap:balance}
.cov .turn b{color:var(--ink)}
.gal-cap{max-width:1010px;margin:64px auto 0;display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-top:3px double var(--ink);padding:14px 4px 0;text-align:left}
.gal-cap .t{font-weight:900;font-size:13px;letter-spacing:0.12em}
.gal-cap .s{font-size:12.5px;color:var(--dim)}
.gal{max-width:1010px;margin:26px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:26px 18px;text-align:left}
.tile{position:relative;background:var(--white);border:1px solid var(--rule);padding:20px 20px 14px;display:flex;flex-direction:column}
.tile .tab3{position:absolute;top:-13px;left:14px;background:var(--ink);color:var(--paper);padding:4px 12px;font-weight:800;font-size:10.5px;letter-spacing:0.1em}
.tile.co{background:var(--manila);border-color:var(--manila2)}
.tile.co .tab3{background:var(--stamp)}
.tile .wn2{font-family:'Courier Prime',monospace;font-size:11px;color:var(--dim);margin-bottom:10px}
.tile .needl{font-size:11px;font-weight:900;letter-spacing:0.1em;color:var(--stamp);margin-bottom:6px}
.tile .need{font-size:13.5px;line-height:1.7;color:var(--ink);margin:0 0 14px}
.tile .fls{border-top:1px solid var(--hair);padding-top:10px;display:flex;flex-direction:column}
.tile.co .fls{border-top-color:var(--manila2)}
.tile .fls a{display:flex;align-items:baseline;gap:9px;padding:4px 0;font-size:13px;font-weight:700;color:var(--ink)}
.tile .fls a:hover{color:var(--stamp)}
.tile .fls .fno{font-family:'Courier Prime',monospace;font-size:10.5px;color:var(--dim);width:20px;flex:none}
.tile .foot{margin-top:auto;padding-top:10px;font-family:'Courier Prime',monospace;font-size:11px;color:var(--dim)}
@media (max-width:1000px){.gal{grid-template-columns:1fr 1fr}}
@media (max-width:680px){.gal{grid-template-columns:1fr;gap:28px}}
