/* Shared Basement L3 visual system */
.bsr { --bsrcopper:#B96B4D; --bsrblue:#7C9292; --bsrmoss:#7D8468; }
.bsr a { color: inherit; }
.bsr-hero { position:relative; min-height:760px; height:92vh; margin:0 24px; overflow:hidden; border-radius:4px; isolation:isolate; background:#0f100d; }
.bsr-hero .img { position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.02); animation:bsrhero 28s ease-in-out infinite alternate; filter:saturate(.82) contrast(1.08); }
@keyframes bsrhero { to { transform:scale(1.1) translate(-1.5%,-1%); } }
.bsr-hero:after { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(12,13,10,.68),rgba(12,13,10,.14) 34%,rgba(12,13,10,.96)); }
.bsr-mast { position:absolute; z-index:3; inset:0 0 auto; display:flex; justify-content:space-between; gap:24px; padding:22px 36px 16px; border-bottom:1px solid rgba(239,229,207,.18); color:rgba(239,229,207,.86); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.24em; text-transform:uppercase; }
.bsr-mast a { text-decoration:none; border-bottom:1px dotted rgba(239,229,207,.42); }
.bsr-mast .ctr { color:var(--bsrcopper); }
.bsr-cover { position:absolute; z-index:3; left:0; right:0; bottom:0; display:grid; grid-template-columns:1.36fr 1fr; gap:60px; align-items:end; padding:56px 56px 64px; color:#fff7e5; }
.bsr-cover .eyebrow { display:flex; align-items:center; gap:14px; margin-bottom:24px; color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:11px; letter-spacing:.32em; text-transform:uppercase; }
.bsr-cover .eyebrow:before { content:""; width:28px; height:1px; background:currentColor; }
.bsr-cover h1 { max-width:12ch; margin:0; color:#fff7e5; font-family:"Playfair Display",serif; font-weight:400; font-size:clamp(64px,8vw,126px); line-height:.9; letter-spacing:-.025em; text-shadow:0 2px 30px rgba(0,0,0,.38); text-wrap:balance; }
.bsr-cover .deck { max-width:39ch; margin:0; padding-left:18px; border-left:2px solid rgba(185,107,77,.64); color:rgba(239,229,207,.92); font-family:"Playfair Display",serif; font-style:italic; font-size:clamp(20px,1.5vw,24px); line-height:1.5; }
.bsr-cover .meta { display:grid; grid-template-columns:repeat(4,1fr); gap:12px 24px; margin-top:28px; padding-top:22px; border-top:1px solid rgba(239,229,207,.18); color:rgba(239,229,207,.7); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.bsr-cover .meta .k { display:block; margin-bottom:5px; color:rgba(239,229,207,.45); font-size:9px; }
.bsr-cover .meta .v { display:block; color:#fff7e5; font-family:"Playfair Display",serif; font-style:italic; font-size:16px; letter-spacing:.02em; text-transform:none; }
.bsr-top5,.bsr-tools,.bsr-matrix,.bsr-mistakes { padding:110px 0 100px; background:#13140f; border-bottom:1px solid var(--rule); }
.bsr-photo-spread,.bsr-related { padding:100px 0; background:var(--bg); border-bottom:1px solid var(--rule); }
.bsr-wrap { max-width:1400px; margin:0 auto; padding:0 56px; }
.section-folio { display:flex; justify-content:space-between; gap:20px; padding-bottom:14px; border-bottom:1px solid var(--rule); color:var(--ink-mute); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.24em; text-transform:uppercase; }
.section-folio .pg { color:var(--bsrcopper); }
.bsr-head,.bsr-tools-head,.bsr-matrix-head { display:grid; grid-template-columns:1fr auto; gap:32px; align-items:end; margin:36px 0 56px; padding-bottom:28px; border-bottom:1px solid var(--rule); }
.bsr-head h2,.bsr-tools-head h2,.bsr-matrix-head h2,.bsr-mistakes-head h2 { max-width:18ch; margin:0 0 14px; color:var(--ink); font-family:"Playfair Display",serif; font-weight:400; font-size:clamp(46px,5.2vw,82px); line-height:.95; letter-spacing:-.02em; text-wrap:balance; }
.bsr-head .deck,.bsr-tools-head p,.bsr-matrix-head p { max-width:44ch; margin:0; color:var(--ink-soft); font-family:"Playfair Display",serif; font-style:italic; font-size:18px; line-height:1.5; }
.legend { display:flex; flex-direction:column; gap:10px; color:var(--ink-mute); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.24em; text-transform:uppercase; }
.legend span { display:inline-flex; align-items:center; gap:10px; }
.legend i { width:10px; height:10px; border-radius:50%; }
.bsr-top-list { border-top:1px solid var(--rule); }
.bsr-top-row { display:grid; grid-template-columns:86px 250px 1.22fr 1fr; gap:38px; align-items:start; padding:36px 0; border-bottom:1px solid var(--rule); }
.bsr-top-row .rank { color:var(--bsrcopper); font-family:"Playfair Display",serif; font-style:italic; font-size:48px; line-height:1; }
.bsr-top-photo { display:block; min-height:158px; background-size:cover; background-position:center; filter:saturate(.86) contrast(1.06); position:relative; overflow:hidden; }
.bsr-top-photo:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(18,15,11,.04),rgba(18,15,11,.38)); }
.bsr-top-row .query h3 { margin:0 0 12px; color:var(--ink); font-family:"Playfair Display",serif; font-weight:400; font-size:clamp(28px,3.2vw,48px); line-height:1; letter-spacing:-.015em; }
.bsr-top-row .query p { max-width:58ch; margin:0 0 16px; color:var(--ink-soft); font-size:15px; line-height:1.7; }
.bsr-top-row .read { color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.22em; text-transform:uppercase; text-decoration:none; }
.bsr-top-row .stats { display:grid; gap:12px; padding-left:26px; border-left:1px solid var(--rule); }
.bsr-top-row .stat { display:grid; grid-template-columns:1fr auto; gap:18px; align-items:baseline; padding-bottom:10px; border-bottom:1px dotted rgba(239,229,207,.16); }
.bsr-top-row .stat .k { color:var(--ink-mute); font-family:"JetBrains Mono",monospace; font-size:9px; letter-spacing:.2em; text-transform:uppercase; }
.bsr-top-row .stat .v { color:var(--ink); font-family:"Playfair Display",serif; font-style:italic; font-size:18px; text-align:right; }
.bsr-photo-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:28px; margin-top:44px; }
.bsr-photo-card { min-height:520px; display:grid; grid-template-rows:1fr auto; background:#171410; border:1px solid var(--rule); }
.bsr-photo-card.c2,.bsr-photo-card.c3 { min-height:420px; }
.bsr-photo-card .photo { display:block; min-height:290px; background-size:cover; background-position:center; filter:saturate(.84) contrast(1.06); }
.bsr-photo-card .copy { padding:24px; }
.bsr-photo-card .copy span { color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.22em; text-transform:uppercase; }
.bsr-photo-card h3 { margin:12px 0 8px; color:var(--ink); font-family:"Playfair Display",serif; font-size:30px; font-weight:400; line-height:1.05; }
.bsr-photo-card p { margin:0; color:var(--ink-soft); font-size:14px; line-height:1.65; }
.bsr-essay { padding:120px 0; background:#0f100d; border-bottom:1px solid var(--rule); }
.bsr-essay-wrap { max-width:1280px; margin:0 auto; padding:0 56px; }
.bsr-essay-grid { display:grid; grid-template-columns:.9fr 1.35fr; gap:72px; margin-top:48px; }
.bsr-essay-side { position:sticky; top:110px; align-self:start; }
.bsr-essay-side h2 { margin:0 0 18px; color:var(--ink); font-family:"Playfair Display",serif; font-weight:400; font-size:clamp(42px,4.6vw,72px); line-height:.96; letter-spacing:-.02em; }
.bsr-essay-side .by { margin-bottom:28px; color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.22em; text-transform:uppercase; }
.stat-list { border-top:1px solid var(--rule); }
.stat-list .row { display:grid; grid-template-columns:1fr auto; gap:24px; padding:16px 0; border-bottom:1px solid var(--rule); color:var(--ink-soft); }
.stat-list strong { color:var(--bsrblue); font-family:"Playfair Display",serif; font-style:italic; font-weight:400; text-align:right; }
.bsr-essay-body { color:var(--ink-soft); font-family:"Playfair Display",serif; font-size:clamp(22px,2.2vw,34px); line-height:1.48; }
.bsr-essay-body p { margin:0 0 32px; }
.bsr-essay-body .dropcap:first-letter { float:left; padding:8px 10px 0 0; color:var(--bsrcopper); font-size:4.2em; line-height:.72; }
.bsr-essay-body .pull { margin:44px 0; padding:28px 0 28px 34px; border-left:2px solid var(--bsrcopper); color:var(--ink); font-style:italic; font-size:clamp(30px,3vw,48px); line-height:1.08; }
.bsr-tools-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--rule); border-left:1px solid var(--rule); }
.bsr-tool { min-height:230px; padding:24px; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); background:rgba(255,247,229,.02); }
.bsr-tool span { color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.22em; }
.bsr-tool h3 { margin:46px 0 10px; color:var(--ink); font-family:"Playfair Display",serif; font-size:28px; font-weight:400; line-height:1.05; }
.bsr-tool p { margin:0; color:var(--ink-soft); font-size:14px; line-height:1.65; }
.bsr-matrix-table { border-top:1px solid var(--rule); }
.bsr-matrix-row { display:grid; grid-template-columns:1.55fr .7fr .7fr .7fr .35fr; gap:24px; align-items:center; padding:18px 0; border-bottom:1px solid var(--rule); color:var(--ink-soft); font-size:14px; }
.bsr-matrix-row.head { color:var(--ink-mute); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.22em; text-transform:uppercase; }
.bsr-matrix-row .proj { color:var(--ink); font-family:"Playfair Display",serif; font-size:24px; }
.bsr-matrix-row .proj b { display:inline-block; min-width:42px; color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; font-weight:400; letter-spacing:.2em; }
.bsr-matrix-row a { color:var(--bsrcopper); text-decoration:none; font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.18em; text-transform:uppercase; }
.dots { display:flex; gap:5px; }
.dots i { width:8px; height:8px; border-radius:50%; background:var(--bsrcopper); }
.dots i.off { opacity:.18; }
.bsr-mistakes-head { display:grid; grid-template-columns:1fr auto; align-items:end; gap:32px; margin:36px 0 46px; }
.bsr-mistakes-head span { color:var(--bsrcopper); font-family:"Playfair Display",serif; font-size:92px; font-style:italic; line-height:.8; }
.bsr-mistakes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--rule); border:1px solid var(--rule); }
.bsr-mistake { min-height:240px; padding:28px; background:#13140f; }
.bsr-mistake .n { color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.22em; }
.bsr-mistake h3 { margin:44px 0 12px; color:var(--ink); font-family:"Playfair Display",serif; font-size:28px; font-weight:400; line-height:1.05; }
.bsr-mistake p { margin:0; color:var(--ink-soft); font-size:14px; line-height:1.65; }
.bsr-related-wrap { max-width:1280px; margin:0 auto; padding:0 56px; display:grid; grid-template-columns:1fr 1fr; gap:72px; }
.bsr-related-col h3 { margin:0 0 24px; color:var(--ink); font-family:"Playfair Display",serif; font-size:44px; font-weight:400; line-height:1; }
.bsr-related-list { border-top:1px solid var(--rule); }
.bsr-related-list .row { display:grid; grid-template-columns:46px 1fr auto; gap:18px; padding:18px 0; border-bottom:1px solid var(--rule); color:var(--ink-soft); text-decoration:none; transition:padding-left .2s ease; }
.bsr-related-list .row:hover { padding-left:8px; }
.bsr-related-list .n { color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.2em; }
.bsr-related-list .t { color:var(--ink); font-family:"Playfair Display",serif; font-size:22px; text-transform:capitalize; }
.bsr-related-list .ct { color:var(--ink-mute); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.18em; text-transform:uppercase; text-align:right; }
.bsr-related-list .current .t,.bsr-related-list .current .ct { color:var(--bsrcopper); font-style:italic; }
.bsr-colophon { padding:96px 24px 120px; background:#0f100d; text-align:center; border-bottom:1px solid var(--rule); }
.bsr-colophon span { color:var(--bsrcopper); font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.26em; text-transform:uppercase; }
.bsr-colophon h2 { max-width:860px; margin:18px auto; color:var(--ink); font-family:"Playfair Display",serif; font-weight:400; font-size:clamp(44px,5vw,84px); line-height:.96; letter-spacing:-.02em; }
.bsr-colophon p { max-width:560px; margin:0 auto 30px; color:var(--ink-soft); line-height:1.7; }
.bsr-colophon .go { display:inline-flex; padding:14px 18px; border:1px solid var(--bsrcopper); color:var(--bsrcopper); text-decoration:none; font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.2em; text-transform:uppercase; }
@media (max-width:1100px) {
  .bsr-cover,.bsr-head,.bsr-tools-head,.bsr-matrix-head,.bsr-essay-grid,.bsr-related-wrap { grid-template-columns:1fr; }
  .bsr-cover .meta { grid-template-columns:repeat(2,1fr); }
  .bsr-top-row { grid-template-columns:70px 1fr; }
  .bsr-top-photo { grid-column:2; }
  .bsr-top-row .stats { grid-column:1/-1; padding-left:0; border-left:0; border-top:1px solid var(--rule); padding-top:16px; }
  .bsr-tools-grid { grid-template-columns:repeat(2,1fr); }
  .bsr-mistakes-grid { grid-template-columns:1fr 1fr; }
  .bsr-matrix-row { grid-template-columns:1fr; gap:6px; }
  .bsr-matrix-row.head { display:none; }
}
@media (max-width:720px) {
  .bsr-hero { margin:0; min-height:720px; }
  .bsr-mast { padding:16px 20px 12px; }
  .bsr-mast .right,.bsr-mast .ctr { display:none; }
  .bsr-cover { padding:28px 24px 42px; }
  .bsr-cover .meta,.bsr-photo-grid,.bsr-tools-grid,.bsr-mistakes-grid { grid-template-columns:1fr; }
  .bsr-wrap,.bsr-essay-wrap,.bsr-related-wrap { padding:0 24px; }
  .bsr-top-row { grid-template-columns:1fr; gap:20px; }
  .bsr-top-photo { grid-column:auto; }
}
