:root{--night:#111e32;--ink:#e0ebf3;--soft:#a6bdd1;--copper:#dba77c;--rule:#3f5771;--plate:#182a43}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--night);color:var(--ink);font:1.0625rem/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}
a:hover{color:var(--copper);text-decoration-thickness:2px}
a:focus-visible{outline:2px solid var(--copper);outline-offset:6px}
.skip{position:absolute;top:-6rem;left:1rem;z-index:3;padding:.6rem 1rem;background:var(--ink);color:var(--night)}
.skip:focus{top:1rem}
.atlas{display:grid;grid-template-columns:195px minmax(0,1fr);column-gap:65px;max-width:1240px;margin:auto;padding:0 46px}
.side-index{padding:48px 0 40px;grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:start;border-right:1px solid var(--rule)}
.owner{font-size:1.75rem;line-height:1.1;letter-spacing:-.025em;text-decoration:none}
.place{font-size:.78rem;line-height:1.65;color:var(--soft);margin:23px 0 45px}
nav{display:flex;flex-direction:column;align-items:start;gap:15px;font-size:.9rem}
nav a{position:relative;text-decoration:none;padding:3px 0}
nav a[aria-current="page"]{color:var(--copper);text-decoration:underline;text-decoration-thickness:2px}
nav a[aria-current="page"]:before{content:"";position:absolute;left:-15px;top:12px;width:6px;height:6px;background:var(--copper);transform:rotate(45deg)}
.rail-note{font: .75rem/1.6 ui-monospace,"SFMono-Regular",Consolas,monospace;color:var(--soft);margin:90px 0 0}
main{grid-column:2;grid-row:1;min-width:0;padding:48px 0 64px}
h1,h2,p,figure{margin:0}
h1,h2{text-wrap:balance}
h1{font-size:clamp(2.8rem,5.5vw,4.6rem);line-height:1.04;font-weight:450;letter-spacing:-.035em}
.page-title{margin-bottom:27px}
.intro{max-width:59ch;font-size:1.1rem;color:var(--soft);line-height:1.65}
.sky-plate{margin-top:34px;background:var(--plate)}
.sky-plate img{display:block;width:100%;height:auto}
figcaption{display:flex;justify-content:space-between;gap:1rem;padding:17px 20px 18px;border-top:1px solid var(--rule);font:.7rem/1.6 ui-monospace,"SFMono-Regular",Consolas,monospace;color:var(--soft)}
figcaption span:first-child{color:var(--copper)}
.reading-row{display:grid;grid-template-columns:175px minmax(0,1fr);gap:32px;padding-top:39px}
h2{font-weight:500;line-height:1.3;font-size:1.25rem;letter-spacing:-.015em}
.prose{max-width:70ch}
.prose p+p{margin-top:1.25rem}
.reading-link{display:inline-block;margin-top:1.5rem;font-size:.9rem}
.reading-link span,.bottom-index a span{display:inline-block;margin-left:.4rem}
.bottom-index{margin-top:42px;padding:21px 0 0;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:20px;font-size:.8rem}
.bottom-index>span{color:var(--soft)}
.observations{margin-top:38px}
.observation{display:grid;grid-template-columns:175px minmax(0,1fr);gap:32px;border-top:1px solid var(--rule);padding:29px 0 37px;scroll-margin-top:30px}
.entry-index span{display:block;margin-top:12px;color:var(--copper);font:.7rem/1.7 ui-monospace,"SFMono-Regular",Consolas,monospace}
.kit-index{display:flex;gap:24px;margin:35px 0 4px;padding:22px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.kit-index div{flex:1}
dt{font:.7rem/1.5 ui-monospace,"SFMono-Regular",Consolas,monospace;color:var(--copper);margin-bottom:7px}
dd{margin:0;font-size:.85rem;line-height:1.5;max-width:22ch}
.compact-row{padding-top:34px}
footer{grid-column:1/-1;border-top:1px solid var(--rule);padding:21px 0 30px;display:flex;justify-content:space-between;gap:1rem;font-size:.73rem;color:var(--soft)}
@media(max-width:950px){.atlas{grid-template-columns:155px minmax(0,1fr);gap:0 37px;padding:0 30px}.reading-row,.observation{grid-template-columns:1fr;gap:17px}.entry-index{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.entry-index span{margin:0;flex-shrink:0}.rail-note{margin-top:70px}.kit-index{gap:16px}}
@media(max-width:650px){
  .atlas{display:block;padding:0 24px}
  .side-index{display:grid;grid-template-columns:1fr 1fr;align-items:start;padding:25px 0 22px;border-right:0;border-bottom:1px solid var(--rule);gap:20px 12px}
  .owner{font-size:1.4rem}
  .owner br{display:none}
  .owner br:after{content:" "}
  .place{text-align:right;font-size:.7rem;margin:0}
  nav{grid-column:1/-1;flex-direction:row;gap:27px;font-size:.8rem;flex-wrap:wrap}
  nav a[aria-current="page"]:before{display:none}
  .rail-note{display:none}
  main{padding:32px 0 44px}
  h1{font-size:clamp(2.6rem,10.5vw,4rem)}
  .page-title{margin-bottom:22px}
  .intro{font-size:1.02rem}
  .sky-plate{margin:28px -9px 0}
  figcaption{flex-direction:column;gap:4px;padding:12px 13px;font-size:.66rem}
  .reading-row{padding-top:29px;gap:14px}
  .bottom-index{flex-direction:column;gap:7px;margin-top:31px}
  .entry-index{display:block}
  .entry-index span{margin-top:8px}
  .observation{padding:24px 0 29px;gap:17px}
  .kit-index{display:block;margin-top:29px;padding:19px 0}
  .kit-index div{display:grid;grid-template-columns:85px 1fr;gap:16px}
  .kit-index div+div{margin-top:12px}
  dt{margin:0}
  dd{max-width:none}
  footer{flex-direction:column;gap:8px;padding-bottom:24px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
