@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,400;8..60,600&display=swap');
:root{--bj-bg:#fafafa;--bj-ink:#111;--bj-line:#ccc;--bj-soft:#f0f0f0;--bj-accent:#222}
*{box-sizing:border-box}body.bj-body{margin:0;font-family:"Source Serif 4",Georgia,serif;background:var(--bj-bg);color:var(--bj-ink);line-height:1.65;position:relative}
.bj-glow{pointer-events:none;position:fixed;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.06),transparent 70%);transform:translate(-50%,-50%);z-index:5;mix-blend-mode:multiply}
.bj-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 4vw;border-bottom:1px solid var(--bj-line);position:sticky;top:0;background:rgba(250,250,250,.95);z-index:40}
.bj-brand{font-family:"IBM Plex Mono",monospace;font-weight:600;text-decoration:none;color:var(--bj-ink);cursor:pointer}
.bj-nav{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;flex:1;font-family:"IBM Plex Mono",monospace;font-size:.78rem}
.bj-nav a{color:var(--bj-ink);text-decoration:none}
.bj-cta{font-family:"IBM Plex Mono",monospace;font-size:.75rem;background:var(--bj-ink);color:#fff;text-decoration:none;padding:.55rem .8rem}
.bj-hold{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s;z-index:55}
.bj-hold[data-open="true"]{opacity:1;pointer-events:auto}
.bj-hold nav{display:flex;flex-direction:column;gap:1rem;font-family:"IBM Plex Mono",monospace;font-size:1.2rem;text-align:center}
.bj-hold a{color:var(--bj-ink);text-decoration:none}
.bj-board{padding:2rem 4vw;border-bottom:1px solid var(--bj-line);background:var(--bj-soft)}
.bj-board h1{font-family:"IBM Plex Mono",monospace;font-size:clamp(1.4rem,3vw,2rem);margin:0 0 1rem}
.bj-board ul{list-style:none;padding:0;margin:0;columns:2;gap:2rem;font-family:"IBM Plex Mono",monospace;font-size:.9rem}
.bj-board li{padding:.45rem 0;border-bottom:1px dotted var(--bj-line);break-inside:avoid}
.bj-hero{min-height:42vh;display:flex;align-items:flex-end;justify-content:flex-end;padding:2rem 4vw;background:linear-gradient(135deg,#e8e8e8,var(--bj-bg));clip-path:polygon(0 8%,100% 0,100% 100%,0 92%);margin:1rem 0}
.bj-hero-inner{max-width:28rem;text-align:right}
.bj-hero h2{font-family:"IBM Plex Mono",monospace;font-size:1rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .5rem}
.bj-chapters{width:min(800px,92vw);margin:0 auto;padding:2rem 0 3rem}
.bj-chapters section{padding:1.5rem 0 1.5rem 4.5rem;position:relative;border-top:1px solid var(--bj-line)}
.bj-chapters .num{position:absolute;left:0;top:1.2rem;font-family:"IBM Plex Mono",monospace;font-size:2.4rem;font-weight:600}
.bj-diag{clip-path:polygon(0 0,100% 3%,100% 100%,0 97%);background:var(--bj-soft);padding:2rem 4vw;margin:1.5rem 0}
.bj-footer{padding:1rem 4vw;border-top:1px solid var(--bj-line);display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;font-family:"IBM Plex Mono",monospace;font-size:.72rem}
.bj-footer a{color:var(--bj-ink);text-decoration:none;margin-right:.5rem}
.bj-main{width:min(720px,92vw);margin:0 auto;padding:2rem 0 4rem}
.bj-form{display:grid;gap:.65rem}.bj-form input,.bj-form textarea{font:inherit;padding:.65rem;border:1px solid var(--bj-line)}
.bj-form button{font-family:"IBM Plex Mono",monospace;background:var(--bj-ink);color:#fff;border:0;padding:.75rem;cursor:pointer}
.bj-ok{background:#e8f0e8;padding:.6rem}
.bj-cookie{position:fixed;bottom:1rem;right:1rem;width:min(340px,92vw);background:#fff;border:1px solid var(--bj-ink);padding:1rem;z-index:70;font-family:"IBM Plex Mono",monospace;font-size:.75rem;clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%)}
.bj-cookie-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.bj-cookie button{border:1px solid var(--bj-ink);background:#fff;padding:.4rem .55rem;cursor:pointer;font:inherit}
@media(max-width:700px){.bj-board ul{columns:1}.bj-nav{display:none}}
@media(prefers-reduced-motion:reduce){.bj-glow{display:none}}
