
:root{
  /* Old Glory Red PMS 193C #B31942 · white · Old Glory Blue PMS 282C #0A3161 */
  --ground:#F3F4F6; --surface:#FFFFFF; --surface-2:#E6E9EF; --sunk:#DDE1E9;
  --ink:#0E1729; --ink-2:#3F4A61; --ink-3:#6C7688;
  --rule:#D2D7E0; --rule-hard:#A2AABB;
  --ochre:#A93venue; --ochre:#B31942; --ochre-soft:#C6theme; --ochre-soft:#8C1435;
  --verd:#0A3161; --verd-ink:#0A3161;
  --m-hi:#0A3161; --m-mid:#5386BE; --m-lo:#C2D3E9; --m-none:#D8DDE6;
  --shadow:0 1px 0 rgba(255,255,255,.6), 0 2px 10px rgba(10,49,97,.08);
  --maxw:68ch;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#0A1120; --surface:#121B2E; --surface-2:#1B2740; --sunk:#060B16;
    --ink:#EDF0F6; --ink-2:#AEB7C8; --ink-3:#7A8499;
    --rule:#23304A; --rule-hard:#3A4A6B;
    --ochre:#F26279; --ochre-soft:#D84A64;
    --verd:#A8C6EE; --verd-ink:#A8C6EE;
    --m-hi:#A8C6EE; --m-mid:#4E86C6; --m-lo:#1E3A63; --m-none:#1A2338;
    --shadow:0 1px 0 rgba(255,255,255,.03), 0 2px 12px rgba(0,0,0,.35);
  }
}
:root[data-theme="dark"]{
  --ground:#0A1120; --surface:#121B2E; --surface-2:#1B2740; --sunk:#060B16;
  --ink:#EDF0F6; --ink-2:#AEB7C8; --ink-3:#7A8499;
  --rule:#23304A; --rule-hard:#3A4A6B;
  --ochre:#F26279; --ochre-soft:#D84A64;
  --verd:#A8C6EE; --verd-ink:#A8C6EE;
  --m-hi:#A8C6EE; --m-mid:#4E86C6; --m-lo:#1E3A63; --m-none:#1A2338;
  --shadow:0 1px 0 rgba(255,255,255,.03), 0 2px 12px rgba(0,0,0,.35);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--ground); color:var(--ink);
  font-family:'Public Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  font-size:17px; line-height:1.62; letter-spacing:-.003em;
  overflow-x:hidden;
}
h1,h2,h3{text-wrap:balance; margin:0; line-height:1.06; letter-spacing:-.03em}
p{margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--ochre); outline-offset:3px; border-radius:2px}
.mono{font-family:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace; font-variant-numeric:tabular-nums}
.wrap{width:min(100% - 2.4rem, 1120px); margin-inline:auto}
.col{width:min(100%, var(--maxw)); margin-inline:0}
section{padding-block:clamp(3.5rem,7vw,6.5rem); border-top:1px solid var(--rule)}
.eyebrow{
  font-family:'IBM Plex Mono',monospace; font-size:.72rem; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase; color:var(--ink-3);
  display:flex; align-items:center; gap:.85rem; margin-bottom:1.6rem;
}
.eyebrow::after{content:""; flex:1; height:1px; background:var(--rule)}
.num{color:var(--ochre); font-weight:600}
.lede{font-size:clamp(1.06rem,2.1vw,1.24rem); color:var(--ink-2); line-height:1.58}
.stack{display:flex; flex-direction:column; gap:1.15rem}
.stack-lg{display:flex; flex-direction:column; gap:2.2rem}

/* ---------- masthead ---------- */
header.mast{padding-block:1.1rem 0}
.mast-row{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-bottom:1rem; position:relative}
.mast-row::after{content:""; position:absolute; left:0; right:0; bottom:0; height:3px;
  background:linear-gradient(90deg, var(--ochre) 0 34%, var(--ground) 34% 35.2%, var(--verd) 35.2% 100%)}
.mark{display:flex; align-items:center; gap:.6rem; font-weight:900; letter-spacing:-.045em; font-size:1.24rem}
.mark svg{width:22px; height:22px; display:block}
.mast-note{font-family:'IBM Plex Mono',monospace; font-size:.68rem; letter-spacing:.13em; text-transform:uppercase; color:var(--ink-3); text-align:right}
.themebtn{
  background:none; border:1px solid var(--rule-hard); color:var(--ink-2); cursor:pointer;
  font-family:'IBM Plex Mono',monospace; font-size:.64rem; letter-spacing:.14em; text-transform:uppercase;
  padding:.42rem .6rem; border-radius:2px;
}
.themebtn:hover{color:var(--ink); border-color:var(--ink)}

/* ---------- hero ---------- */
.hero{padding-block:clamp(3rem,8vw,6rem) clamp(3rem,6vw,5rem); border-top:none}
.hero h1{
  font-size:clamp(2.5rem,7.4vw,5.4rem); font-weight:900; letter-spacing:-.045em;
}
.hero h1 em{font-style:normal; color:var(--ochre)}
.hero .sub{margin-top:1.8rem; max-width:56ch; font-size:clamp(1.06rem,2.2vw,1.3rem); color:var(--ink-2)}
.hero .sub strong{color:var(--ink); font-weight:700}
.jump{display:flex; flex-wrap:wrap; gap:.6rem; margin-top:2.4rem}
.jump a{
  font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase;
  text-decoration:none; padding:.6rem .85rem; border:1px solid var(--rule-hard); border-radius:2px; color:var(--ink-2);
}
.jump a:hover{border-color:var(--ink); color:var(--ink)}
.jump a.primary{background:var(--ink); color:var(--ground); border-color:var(--ink)}
.jump a.primary:hover{background:var(--ochre); border-color:var(--ochre); color:#fff}

/* ---------- inscription plates ---------- */
.plates{display:grid; gap:1.2rem; grid-template-columns:1fr}
@media(min-width:820px){ .plates{grid-template-columns:1fr 1fr} .plate.wide{grid-column:1 / -1} }
.plate{
  background:var(--surface); border:1px solid var(--rule); border-radius:3px;
  padding:clamp(1.4rem,3vw,2rem); box-shadow:var(--shadow); position:relative;
}
.plate .term{
  font-family:'Cinzel',Georgia,serif; font-weight:700; letter-spacing:.04em;
  font-size:clamp(1.55rem,4vw,2.25rem); line-height:1.08;
  color:var(--ink-3);
  transition:color .9s ease, text-shadow .9s ease;
}
.plate.lit .term{ color:var(--ochre); text-shadow:0 1px 0 rgba(0,0,0,.14) }
.plate .root{font-family:'IBM Plex Mono',monospace; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); margin-top:.5rem}
.plate .root .gk{text-transform:none; letter-spacing:.02em; font-size:.86rem}
.plate .gloss{margin-top:1.1rem; color:var(--ink-2)}
.plate .gloss b{color:var(--ink)}
.plate .kicker{margin-top:1.1rem; padding-top:1.1rem; border-top:1px solid var(--rule); font-weight:700; letter-spacing:-.015em}
@media(prefers-reduced-motion:reduce){ .plate .term{transition:none} .plate{opacity:1 !important} }

.pullquote{
  margin-top:2.4rem; padding:1.5rem 0 1.5rem 1.5rem; border-left:3px solid var(--ochre);
  font-size:clamp(1.16rem,2.6vw,1.5rem); font-weight:700; letter-spacing:-.02em; line-height:1.35;
}
.attrib{font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3); font-weight:400; margin-top:.7rem}

/* ---------- map ---------- */
.mapwrap{margin-top:2rem; overflow-x:auto}
.mapwrap svg{width:100%; height:auto; min-width:520px; display:block}
.st{stroke:var(--ground); stroke-width:.8; cursor:pointer; transition:opacity .15s}
.st:hover{opacity:.72}
.st.sel{stroke:var(--ochre); stroke-width:2.4}
.legend{display:flex; flex-wrap:wrap; gap:1.1rem; margin-top:1.2rem; align-items:center}
.lg{display:flex; align-items:center; gap:.5rem; font-size:.84rem; color:var(--ink-2)}
.lg i{width:26px; height:13px; display:block; border-radius:2px; border:1px solid rgba(0,0,0,.16)}
.mapnote{margin-top:1rem; font-size:.86rem; color:var(--ink-3)}
.readout{
  margin-top:1.4rem; background:var(--surface); border:1px solid var(--rule); border-radius:3px; padding:1.2rem 1.3rem; min-height:118px;
}
.readout h3{font-size:1.18rem; margin-bottom:.35rem}
.readout .cite{font-family:'IBM Plex Mono',monospace; font-size:.78rem; color:var(--ink-3); margin-bottom:.8rem}
.verdict{display:inline-flex; align-items:center; gap:.5rem; font-weight:700; font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; padding:.34rem .7rem; border-radius:2px; border:1px solid currentColor}
.v2{color:var(--verd-ink)} .v1{color:var(--ochre-soft)} .v0{color:var(--ochre)}
details.table{margin-top:1.4rem; border:1px solid var(--rule); border-radius:3px; background:var(--surface)}
details.table>summary{cursor:pointer; padding:.85rem 1.1rem; font-family:'IBM Plex Mono',monospace; font-size:.76rem; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-2)}
details.table>summary:hover{color:var(--ink)}
.tablescroll{overflow-x:auto; border-top:1px solid var(--rule)}
table{border-collapse:collapse; width:100%; font-size:.86rem}
th,td{text-align:left; padding:.55rem .8rem; border-bottom:1px solid var(--rule); vertical-align:top}
th{font-family:'IBM Plex Mono',monospace; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3); font-weight:600; white-space:nowrap}
td.n{font-family:'IBM Plex Mono',monospace; font-variant-numeric:tabular-nums; white-space:nowrap}
tr.here td{background:color-mix(in srgb, var(--ochre) 10%, transparent)}

/* ---------- instrument ---------- */
.instrument{background:var(--surface); border:1px solid var(--rule-hard); border-radius:3px; box-shadow:var(--shadow); overflow:hidden}
.inst-head{padding:1.1rem 1.3rem; border-bottom:1px solid var(--rule); display:flex; flex-wrap:wrap; gap:.6rem; align-items:baseline; justify-content:space-between}
.inst-head .t{font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3)}
.inst-body{padding:1.3rem}
.field{display:flex; gap:.6rem; flex-wrap:wrap}
input[type=text],select{
  font-family:'Public Sans',sans-serif; font-size:1rem; color:var(--ink);
  background:var(--ground); border:1px solid var(--rule-hard); border-radius:2px; padding:.75rem .85rem; min-width:0;
}
input[type=text]{flex:1 1 260px}
select{flex:1 1 160px}
button.go{
  font-family:'IBM Plex Mono',monospace; font-size:.76rem; letter-spacing:.14em; text-transform:uppercase; font-weight:600;
  background:var(--ink); color:var(--ground); border:1px solid var(--ink); border-radius:2px; padding:.75rem 1.2rem; cursor:pointer;
}
button.go:hover{background:var(--ochre); border-color:var(--ochre); color:#fff}
button.go[disabled]{opacity:.55; cursor:progress}
.orline{display:flex; align-items:center; gap:.8rem; margin:1.1rem 0 .9rem; color:var(--ink-3); font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase}
.orline::before,.orline::after{content:""; flex:1; height:1px; background:var(--rule)}
.status{margin-top:1rem; font-size:.9rem; color:var(--ink-2)}
.status.err{color:var(--ochre)}
.cards{display:grid; gap:1rem; grid-template-columns:1fr; margin-top:1.4rem}
@media(min-width:760px){ .cards{grid-template-columns:1fr 1fr} }
.card{border:1px solid var(--rule); border-radius:3px; padding:1.1rem 1.2rem; background:var(--ground)}
.card h4{margin:0 0 .2rem; font-size:.72rem; font-family:'IBM Plex Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); font-weight:600}
.card .big{font-size:1.5rem; font-weight:900; letter-spacing:-.03em; line-height:1.15; margin-top:.35rem}
.card p{margin-top:.5rem; font-size:.9rem; color:var(--ink-2)}
.card a.out{color:var(--ochre); font-weight:700; text-decoration:none; border-bottom:1px solid currentColor}
.card a.out:hover{color:var(--ink)}
.people{margin-top:1.4rem; border:1px solid var(--rule); border-radius:3px; overflow:hidden}
.prow{display:flex; flex-wrap:wrap; gap:.4rem 1rem; align-items:baseline; padding:.7rem 1.1rem; border-bottom:1px solid var(--rule); background:var(--ground)}
.prow:last-child{border-bottom:none}
.prow .role{font-family:'IBM Plex Mono',monospace; font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-3); flex:0 0 8.5rem}
.prow .nm{font-weight:700; flex:1 1 auto}
.prow .ph{font-family:'IBM Plex Mono',monospace; font-size:.86rem; color:var(--ochre); text-decoration:none}
.prow .ph:hover{color:var(--ink)}
.gaps{margin-top:1.2rem; font-size:.86rem; color:var(--ink-3); border-top:1px dashed var(--rule); padding-top:.9rem}

/* ---------- test ---------- */
.q{border:1px solid var(--rule); border-radius:3px; background:var(--surface); padding:1.1rem 1.2rem}
.q + .q{margin-top:.85rem}
.q .qh{display:flex; gap:.8rem; align-items:baseline}
.q .qn{font-family:'IBM Plex Mono',monospace; font-size:.76rem; color:var(--ink-3); flex:0 0 auto}
.q .qt{font-weight:700; letter-spacing:-.015em}
.opts{display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.85rem}
.opt{
  font-family:'IBM Plex Mono',monospace; font-size:.8rem; padding:.5rem .8rem; border:1px solid var(--rule-hard);
  background:var(--ground); color:var(--ink-2); border-radius:2px; cursor:pointer;
}
.opt:hover{border-color:var(--ink); color:var(--ink)}
.opt[aria-pressed="true"]{background:var(--ink); color:var(--ground); border-color:var(--ink)}
.q input[type=text]{width:100%; margin-top:.85rem}
.mark-row{margin-top:.8rem; font-size:.88rem; display:none}
.mark-row.show{display:block}
.ok{color:var(--verd-ink); font-weight:700}
.no{color:var(--ochre); font-weight:700}
.score{
  margin-top:1.6rem; border:2px solid var(--verd); border-radius:3px; padding:1.4rem; background:var(--surface); display:none;
}
.score.show{display:block}
.score .band{font-family:'Cinzel',serif; font-weight:700; font-size:clamp(1.8rem,5vw,2.8rem); letter-spacing:.04em; color:var(--ochre)}
.score .frac{font-family:'IBM Plex Mono',monospace; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3)}
.copybox{margin-top:1.1rem; background:var(--ground); border:1px solid var(--rule); border-radius:2px; padding:.9rem 1rem; font-size:.92rem; color:var(--ink-2)}
.copyrow{display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.8rem}

/* ---------- practice ---------- */
.steps{counter-reset:s; display:grid; gap:.9rem; margin-top:1.6rem}
.step{display:flex; gap:1rem; align-items:flex-start; border-top:1px solid var(--rule); padding-top:.9rem}
.step .k{font-family:'IBM Plex Mono',monospace; font-size:.76rem; color:var(--ochre); flex:0 0 2.2rem; padding-top:.18rem}
.step .b b{display:block; letter-spacing:-.015em}
.step .b span{color:var(--ink-2); font-size:.94rem}
.refuse{margin-top:2rem; border:1px dashed var(--rule-hard); border-radius:3px; padding:1.2rem 1.3rem; background:transparent}
.refuse h4{margin:0 0 .7rem; font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3)}
.refuse ul{margin:0; padding-left:1.1rem; color:var(--ink-2); font-size:.94rem}
.refuse li{margin-bottom:.35rem}

/* ---------- sources ---------- */
.srcgrid{display:grid; gap:.7rem 1.7rem; grid-template-columns:1fr; margin-top:1rem}
@media(min-width:700px){ .srcgrid{grid-template-columns:1fr 1fr} }
@media(min-width:1000px){ .srcgrid{grid-template-columns:1fr 1fr 1fr} }
.src{border-top:1px solid var(--rule); padding-top:.5rem; font-size:.715rem; line-height:1.5; color:var(--ink-3)}
.src b{color:var(--ink-2); font-weight:700}
.src b::after{content:' \2014 '; color:var(--ink-3); font-weight:400}
.src a{color:var(--ochre); text-decoration:none; word-break:break-word}
.src a:hover{color:var(--ink)}
section.fine{padding-block:2.4rem 1.6rem}
section.fine .eyebrow{margin-bottom:.8rem}
.finenote{font-size:.715rem; line-height:1.5; color:var(--ink-3); max-width:76ch}
footer{padding-block:2rem 3rem; font-size:.85rem; color:var(--ink-3); position:relative}
footer::before{content:""; position:absolute; left:0; right:0; top:0; height:3px;
  background:linear-gradient(90deg, var(--ochre) 0 34%, var(--ground) 34% 35.2%, var(--verd) 35.2% 100%)}
.fin{font-family:'Cinzel',serif; font-size:1.05rem; letter-spacing:.06em; color:var(--ink-2)}

.strap{
  margin-top:1.6rem; padding-top:1.1rem; border-top:1px solid var(--rule);
  max-width:60ch; font-size:.98rem; line-height:1.6; color:var(--ink-2);
}
.strap b{color:var(--ink); font-weight:900; letter-spacing:-.02em}
.strap a{color:var(--ochre); font-weight:700; text-decoration:none; white-space:nowrap; border-bottom:1px solid currentColor}
.strap a:hover{color:var(--ink)}
.shifts{display:grid; gap:0; margin-top:1.8rem}
.shift{display:flex; gap:1.2rem; align-items:flex-start; border-top:1px solid var(--rule); padding:1.05rem 0}
.shift .k{font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.1em; color:var(--ochre); flex:0 0 5.6rem; padding-top:.28rem; text-transform:uppercase}
.shift .b b{display:block; letter-spacing:-.015em; margin-bottom:.15rem}
.shift .b span{color:var(--ink-2); font-size:.95rem}
.does{display:grid; gap:1rem; grid-template-columns:1fr; margin-top:1.6rem}
@media(min-width:820px){ .does{grid-template-columns:repeat(3,1fr)} }
.does a{
  display:block; text-decoration:none; color:inherit; background:var(--surface);
  border:1px solid var(--rule); border-radius:3px; padding:1.1rem 1.2rem; transition:border-color .18s ease, transform .18s ease;
}
.does a:hover{border-color:var(--ochre); transform:translateY(-2px)}
.does h4{margin:0; font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); font-weight:600}
.does b{display:block; margin-top:.4rem; font-size:1.05rem; letter-spacing:-.02em}
.does span{display:block; margin-top:.45rem; font-size:.9rem; color:var(--ink-2)}
.does em{font-style:normal; color:var(--ochre); font-weight:700}
@media(prefers-reduced-motion:reduce){ .does a:hover{transform:none} }

/* ---------- coalition band ---------- */
.coalition{
  background:#0A1120; border-top:1px solid #23304A; border-bottom:1px solid #23304A;
  padding-block:clamp(2.6rem,5.5vw,3.8rem);
}
.coalition .eyebrow{color:#7A8499; margin-bottom:1.1rem}
.coalition .eyebrow::after{background:#23304A}
.co-note{font-size:.86rem; line-height:1.6; color:#AEB7C8; max-width:64ch}
.co-note a{color:#A8C6EE; text-decoration:none; border-bottom:1px solid rgba(168,198,238,.45)}
.co-note a:hover{color:#fff; border-bottom-color:#fff}
.co-grid{display:flex; flex-wrap:wrap; align-items:center; gap:1.5rem 2.6rem; margin-top:1.9rem}
.co-grid a{display:inline-flex; align-items:center; opacity:.7; transition:opacity .2s ease, transform .2s ease; border-radius:2px}
.co-grid a:hover,.co-grid a:focus-visible{opacity:1; transform:translateY(-2px)}
.co-grid img{height:34px; width:auto; display:block}
.co-grid img.tall{height:46px}
.co-grid img.wide-sm{height:40px}
.co-hub{font-family:'Public Sans',sans-serif; font-weight:900; font-size:1.2rem; letter-spacing:-.045em; text-decoration:none; white-space:nowrap}
.co-hub .r{color:#E62020} .co-hub .b{color:#5B8FE8}
@media(max-width:640px){ .co-grid{gap:1.2rem 1.8rem} .co-grid img{height:26px} .co-grid img.tall{height:36px} .co-grid img.wide-sm{height:31px} .co-hub{font-size:1rem} }
@media(prefers-reduced-motion:reduce){ .co-grid a{transition:none} .co-grid a:hover{transform:none} }
.reveal{opacity:0; transform:translateY(10px); transition:opacity .55s ease, transform .55s ease}
.reveal.in{opacity:1; transform:none}
@media(prefers-reduced-motion:reduce){ .reveal{opacity:1; transform:none; transition:none} }

/* ---------- site nav ---------- */
.mast-row{align-items:flex-start}
a.mark{text-decoration:none; color:inherit; flex:0 0 auto}
.mast-nav{display:flex; align-items:center; gap:1.15rem; flex-wrap:wrap; justify-content:flex-end}
.mast-nav a{
  font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-3); text-decoration:none; padding-bottom:2px; border-bottom:1px solid transparent;
}
.mast-nav a:hover{color:var(--ink)}
.mast-nav a[aria-current="page"]{color:var(--ochre); border-bottom-color:var(--ochre)}
@media(max-width:720px){
  .mast-row{flex-direction:column; gap:.85rem}
  .mast-nav{justify-content:flex-start; gap:.9rem; width:100%}
  .mast-nav a{font-size:.64rem}
}

/* ---------- page hero (sub-pages) ---------- */
.phero{padding-block:clamp(2.6rem,6vw,4.4rem) clamp(1.8rem,4vw,2.8rem); border-top:none}
.phero h1{font-size:clamp(2.1rem,5.6vw,3.9rem); font-weight:900; letter-spacing:-.045em; max-width:20ch}
.phero h1 em{font-style:normal; color:var(--ochre)}
.phero .sub{margin-top:1.4rem; max-width:62ch; font-size:clamp(1rem,2vw,1.16rem); color:var(--ink-2); line-height:1.6}
.backhome{
  font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-3); text-decoration:none; display:inline-block; margin-bottom:1.4rem;
}
.backhome:hover{color:var(--ochre)}

/* ---------- hero lookup ---------- */
.hero .instrument{margin-top:2.2rem; max-width:none}
.hero-note{margin-top:.9rem; font-size:.84rem; color:var(--ink-3)}
.morelink{
  display:inline-flex; align-items:center; gap:.4rem; margin-top:1.5rem;
  font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ochre); text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:2px;
}
.morelink:hover{color:var(--ink)}
.tight{padding-block:clamp(2.8rem,5.5vw,4.2rem)}
