.reader-hero .case-title-grid h1 { font-size:clamp(4.6rem,10.8vw,10.8rem); line-height:.8; }
.reader-hero h1 em { color:#8f7cff; font-weight:400; }
.reader-stage { position:relative; min-height:min(76vw,900px); padding:clamp(3rem,7vw,7rem) var(--pad); background:#ded8cd; color:#161513; overflow:hidden; }
.reader-stage::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.025) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.025) 1px,transparent 1px); background-size:4vw 4vw; }
.reader-canvas { position:relative; z-index:2; width:min(1180px,100%); min-height:660px; margin:auto; display:grid; grid-template-columns:120px minmax(0,1fr) 270px; background:#f5f0e7; box-shadow:0 35px 110px rgba(31,25,19,.24); border:1px solid rgba(0,0,0,.12); }
.reader-rail { display:flex; flex-direction:column; align-items:center; gap:1.5rem; padding:1.7rem .8rem; border-right:1px solid rgba(0,0,0,.12); font-family:monospace; color:#777168; font-size:.58rem; }
.reader-rail b { display:grid; place-items:center; width:34px; height:34px; margin-bottom:1.2rem; border-radius:50%; background:#151515; color:#f4eee4; font-family:var(--display); font-size:1rem; }
.reader-rail i { flex:1; width:1px; background:rgba(0,0,0,.12); }
.reader-rail small { writing-mode:vertical-rl; transform:rotate(180deg); text-transform:uppercase; letter-spacing:.14em; }
.reader-sheet { padding:clamp(3rem,7vw,7rem) clamp(2.5rem,7vw,7rem); }
.reader-sheet .micro { font-family:monospace; font-size:.58rem; letter-spacing:.14em; color:#8c857b; }
.reader-sheet h2 { margin:clamp(4rem,9vw,8rem) 0 2.2rem; font-family:var(--display); font-size:clamp(3rem,6vw,6.2rem); line-height:.9; letter-spacing:-.05em; font-weight:400; }
.reader-sheet .lines { max-width:680px; font-family:var(--display); font-size:clamp(1.25rem,2vw,1.8rem); line-height:1.5; color:#4c4843; }
.evidence-link { display:inline-block; margin-top:2rem; border-bottom:1px solid #9e5741; color:#9e5741; font-size:.66rem; text-transform:uppercase; letter-spacing:.1em; }
.reader-meta { padding:1.7rem; background:#161718; color:#d8d3ca; border-left:1px solid rgba(0,0,0,.2); }
.reader-meta > span { font-family:monospace; font-size:.58rem; letter-spacing:.16em; color:#8f7cff; }
.reader-meta p { margin:clamp(5rem,11vw,9rem) 0 2rem; line-height:1.6; color:#aaa49b; }
.reader-meta div { height:1px; background:#3b3b3d; margin-bottom:1rem; }
.reader-meta small { color:#6f6e71; }
.reader-stage .visual-caption { color:rgba(0,0,0,.42); }
.reader-paths { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; padding:clamp(5rem,10vw,10rem) var(--pad); background:#101013; border-block:1px solid var(--line); }
.paths-copy { max-width:700px; }
.paths-copy h2 { margin:0 0 2rem; font-family:var(--display); font-size:clamp(3.2rem,6.7vw,7rem); line-height:.9; letter-spacing:-.05em; font-weight:400; }
.paths-copy > p:last-child { max-width:620px; color:var(--muted); font-size:1.08rem; line-height:1.6; }
.path-stack { display:flex; flex-direction:column; justify-content:center; gap:.85rem; position:relative; }
.path-stack span { display:block; padding:1.5rem 3rem 1.5rem 1.6rem; border:1px solid rgba(255,255,255,.14); background:#17171b; font-family:var(--display); font-size:clamp(1.5rem,2.7vw,2.7rem); line-height:1.08; }
.path-stack span:nth-child(2) { margin-left:7%; border-color:rgba(143,124,255,.42); }
.path-stack span:nth-child(3) { margin-left:14%; }
.path-stack i { align-self:flex-end; margin-top:.6rem; font-family:monospace; font-size:.58rem; color:#68646f; font-style:normal; }
@media(max-width:900px){.reader-canvas{grid-template-columns:70px minmax(0,1fr)}.reader-meta{display:none}.reader-paths{grid-template-columns:1fr;}.path-stack span:nth-child(2),.path-stack span:nth-child(3){margin-left:0}}
@media(max-width:620px){.reader-stage{padding-inline:1rem;min-height:auto}.reader-canvas{min-height:560px;grid-template-columns:48px minmax(0,1fr)}.reader-rail{padding-inline:.35rem}.reader-rail span{display:none}.reader-sheet{padding:2.2rem 1.5rem}.reader-sheet h2{margin-top:5rem}.reader-sheet .lines{font-size:1.15rem}.reader-paths{padding-inline:var(--pad)}.path-stack span{padding:1.15rem;font-size:1.5rem}}