@charset "utf-8";
/* ==========================================================================
   The Compound Journal — editorial design system
   Print-derived: warm paper, ink, one red-oxide accent, one data teal.
   Rules and hairlines, never boxes. No shadows anywhere.
   Fraunces (display / numerals) · Public Sans (text / UI) · Spline Sans Mono (data)
   ========================================================================== */

:root{
  /* ---- paper & ink ---- */
  --paper:#FBF8F3;
  --paper-2:#F4EFE7;
  --paper-3:#EBE3D5;
  --paper-4:#E2D8C6;
  --ink:#191713;
  --ink-2:#423B32;
  --ink-3:#6E6558;
  --ink-4:#8E8677;
  --rule:#DCD4C6;
  --rule-2:#C9BFAD;
  --rule-hair:#E8E1D4;

  /* ---- editorial accent: red oxide ---- */
  --oxide:#A63D2F;
  --oxide-dk:#7C2A20;
  --oxide-lt:#C4604F;
  --oxide-wash:#F7E9E5;

  /* ---- data / figures: muted teal ---- */
  --teal:#2C6B69;
  --teal-dk:#1E4E4C;
  --teal-lt:#8FB6B3;
  --teal-wash:#E7EFEE;

  /* ---- semantic ---- */
  --warn:#8A5A16;
  --warn-wash:#F7EEDC;
  --good:#2F6B45;
  --good-wash:#E8F0E9;

  /* department hue — overridden per page via [data-dept] */
  --dept:#A63D2F;
  --dept-wash:#F7E9E5;

  /* ---- type ---- */
  --serif:'Fraunces',ui-serif,Georgia,'Times New Roman',serif;
  --sans:'Public Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --mono:'Spline Sans Mono',ui-monospace,'SF Mono',Consolas,'Liberation Mono',monospace;

  /* ---- measure & rhythm ---- */
  --frame:1240px;
  --measure:68ch;
  --lh:1.66;
  --step:1.4rem;
}

/* Fraunces optical-size registers. Display sizes want high opsz + low SOFT. */
.f-display{font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;font-weight:600}
.f-head{font-family:var(--serif);font-variation-settings:'SOFT' 12,'WONK' 0,'opsz' 60;font-weight:600}
.f-small{font-family:var(--serif);font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 14;font-weight:500}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:var(--lh);
  font-weight:380;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

img,svg{max-width:100%;height:auto}
a{color:var(--oxide-dk);text-decoration:none;text-underline-offset:.18em}
a:hover{text-decoration:underline;text-decoration-thickness:1px}
hr{border:0;border-top:1px solid var(--rule);margin:var(--step) 0}
p{margin:0 0 1.05em}
ul,ol{margin:0 0 1.15em;padding-left:1.3em}
li{margin-bottom:.42em}
strong,b{font-weight:640}
em,i{font-style:italic}
code,kbd,samp{font-family:var(--mono);font-size:.86em;background:var(--paper-2);padding:.08em .3em;border-radius:2px}
sup{font-size:.7em;line-height:0}
::selection{background:var(--oxide-wash)}

.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:10px 16px;z-index:99}
.skip:focus{left:0}
:focus-visible{outline:2px solid var(--oxide);outline-offset:2px}

/* ---------- layout frame ---------- */
.frame{max-width:var(--frame);margin:0 auto;padding:0 26px}
@media(max-width:760px){.frame{padding:0 18px}}
@media(max-width:400px){.frame{padding:0 14px}}

/* ================================================================ masthead */
.flag{border-bottom:1px solid var(--ink)}
.flag-strip{
  border-bottom:1px solid var(--rule);
  font-family:var(--mono);font-size:11px;letter-spacing:.05em;
  color:var(--ink-3);text-transform:uppercase;
}
.flag-strip .frame{display:flex;gap:14px;align-items:center;justify-content:space-between;min-height:34px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.flag-strip a{color:var(--ink-3)}
.flag-strip a:hover{color:var(--oxide-dk)}
.flag-strip-l{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.flag-strip-r{display:flex;gap:14px;align-items:center;flex-wrap:wrap}

.flag-main{padding:22px 0 16px;display:flex;align-items:flex-end;gap:26px;justify-content:space-between;flex-wrap:wrap}
.flag-title{display:block;color:var(--ink)}
.flag-title:hover{text-decoration:none}
.flag-title h1,.flag-title .brand{
  margin:0;font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;
  font-weight:600;font-size:clamp(30px,6.4vw,58px);line-height:.94;letter-spacing:-.018em;
}
.flag-title h1 .the,.flag-title .brand .the{display:block;font-size:.29em;letter-spacing:.3em;text-transform:uppercase;font-variation-settings:'SOFT' 30,'opsz' 14;font-weight:500;color:var(--oxide);margin-bottom:.38em}
.flag-sub{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:10px 0 0}
.flag-aside{font-family:var(--mono);font-size:11.5px;line-height:1.7;color:var(--ink-3);text-align:right;max-width:290px}
.flag-aside b{color:var(--ink);font-weight:600}
@media(max-width:820px){.flag-aside{text-align:left;max-width:none}}

/* nav */
.mainnav{border-top:3px double var(--ink);border-bottom:1px solid var(--ink);background:var(--paper)}
.mainnav .frame{display:flex;align-items:center;gap:0;overflow-x:auto;scrollbar-width:none}
.mainnav .frame::-webkit-scrollbar{display:none}
.mainnav ul{display:flex;list-style:none;margin:0;padding:0;gap:0;flex:1;min-width:0}
.mainnav li{flex:0 0 auto}
.mainnav a{
  display:block;padding:11px 15px;font-family:var(--sans);font-size:12.5px;font-weight:620;
  letter-spacing:.085em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;
  border-right:1px solid var(--rule-hair);
}
.mainnav li:first-child a{padding-left:0;border-left:0}
.mainnav a:hover{color:var(--oxide-dk);background:var(--paper-2);text-decoration:none}
.mainnav a.on{color:var(--oxide-dk);box-shadow:inset 0 -3px 0 var(--oxide)}
.navsearch{flex:0 0 auto;padding:6px 0 6px 14px;display:flex;align-items:center;gap:6px;border-left:1px solid var(--rule-hair)}
.navsearch input{
  font-family:var(--mono);font-size:12px;border:0;border-bottom:1px solid var(--rule-2);
  background:transparent;padding:4px 2px;width:150px;color:var(--ink);
}
.navsearch input::placeholder{color:var(--ink-4)}
.navsearch input:focus{outline:0;border-bottom-color:var(--oxide)}
@media(max-width:900px){.navsearch{display:none}}

/* ================================================================ shared bits */
.kicker{
  font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.15em;
  text-transform:uppercase;color:var(--dept);margin:0 0 .5em;display:block;
}
.kicker a{color:inherit}
.meta{font-family:var(--mono);font-size:11.5px;letter-spacing:.02em;color:var(--ink-3);line-height:1.6}
.meta a{color:var(--ink-2);border-bottom:1px solid var(--rule-2)}
.meta a:hover{color:var(--oxide-dk);text-decoration:none;border-bottom-color:var(--oxide)}
.meta .dot{color:var(--rule-2);margin:0 .5em}

.secrule{
  display:flex;align-items:baseline;gap:14px;margin:0 0 18px;
  border-bottom:2px solid var(--ink);padding-bottom:7px;
}
.secrule h2{
  margin:0;font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 60;font-weight:600;
  font-size:22px;letter-spacing:-.01em;line-height:1.1;
}
.secrule .more{margin-left:auto;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.secrule.thin{border-bottom-width:1px;border-bottom-color:var(--rule-2)}
.secrule.tealed{border-bottom-color:var(--teal)}
.secrule.tealed h2{color:var(--teal-dk)}

.crumbs{font-family:var(--mono);font-size:11px;color:var(--ink-3);padding:14px 0 0;letter-spacing:.02em}
.crumbs a{color:var(--ink-3)}
.crumbs a:hover{color:var(--oxide-dk)}
.crumbs .sep{color:var(--rule-2);margin:0 .45em}

.tagrow{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}
.tag{
  display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;
  text-transform:uppercase;padding:3px 9px;border:1px solid var(--rule-2);color:var(--ink-2);
  background:var(--paper);border-radius:1px;
}
.tag:hover{border-color:var(--oxide);color:var(--oxide-dk);text-decoration:none}
.tag.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}

.pill{
  display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.09em;text-transform:uppercase;
  padding:2px 7px;border:1px solid currentColor;color:var(--dept);border-radius:1px;font-weight:500;
}
.pill.teal{color:var(--teal)}
.pill.warn{color:var(--warn)}
.pill.good{color:var(--good)}
.pill.solid{background:var(--ink);border-color:var(--ink);color:var(--paper)}

/* ================================================================ front page */
main{display:block;min-height:40vh}
.lede{padding:30px 0 0}
.lede-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:0}
.lede-main{padding-right:34px;border-right:1px solid var(--rule)}
.lede-side{padding-left:30px}
@media(max-width:980px){
  .lede-grid{grid-template-columns:1fr}
  .lede-main{padding-right:0;border-right:0;border-bottom:1px solid var(--rule);padding-bottom:26px}
  .lede-side{padding-left:0;padding-top:26px}
}

.hero-art{display:block;width:100%;border:1px solid var(--rule);background:var(--paper-2);margin-bottom:18px}

h1.headline,.headline{
  font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;font-weight:600;
  letter-spacing:-.02em;line-height:1.02;color:var(--ink);margin:0 0 .34em;
}
.lede-main .headline{font-size:clamp(30px,5vw,50px)}
.lede-main .headline a{color:inherit}
.deck{
  font-family:var(--serif);font-variation-settings:'SOFT' 26,'opsz' 32;font-weight:400;
  font-size:clamp(17px,2.2vw,21.5px);line-height:1.42;color:var(--ink-2);margin:0 0 14px;
}

.stack{display:flex;flex-direction:column}
.stack > *{padding:20px 0;border-bottom:1px solid var(--rule-hair)}
.stack > *:first-child{padding-top:0}
.stack > *:last-child{border-bottom:0;padding-bottom:0}

.item h3,.item .h{
  font-family:var(--serif);font-variation-settings:'SOFT' 6,'opsz' 60;font-weight:600;
  font-size:20px;line-height:1.14;letter-spacing:-.012em;margin:0 0 .35em;
}
.item h3 a,.item .h a{color:var(--ink)}
.item h3 a:hover,.item .h a:hover{color:var(--oxide-dk);text-decoration:none}
.item p.sum{font-size:15.5px;color:var(--ink-2);margin:0 0 .5em;line-height:1.55}
.item.sm h3,.item.sm .h{font-size:16.5px}
.item.sm p.sum{font-size:14.5px}
.item.lg h3,.item.lg .h{font-size:27px}

.secondaries{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin-top:26px;padding-top:24px;border-top:1px solid var(--rule)}
.secondaries > *:first-child{padding-right:30px;border-right:1px solid var(--rule-hair)}
@media(max-width:640px){
  .secondaries{grid-template-columns:1fr;gap:0}
  .secondaries > *:first-child{padding-right:0;border-right:0;padding-bottom:20px;border-bottom:1px solid var(--rule-hair);margin-bottom:20px}
}

.band{border-top:3px double var(--ink);margin-top:40px;padding-top:26px}
.band.plain{border-top:1px solid var(--rule)}

.river{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:0 34px}
.river-side{padding-left:30px;border-left:1px solid var(--rule)}
@media(max-width:980px){
  .river{grid-template-columns:1fr}
  .river-side{padding-left:0;border-left:0;border-top:1px solid var(--rule);margin-top:30px;padding-top:26px}
}

.deptstrip{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:1px;background:var(--rule)}
.deptcard{background:var(--paper);padding:16px 18px;display:block;color:var(--ink)}
.deptcard:hover{background:var(--paper-2);text-decoration:none}
.deptcard .dn{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 40;font-weight:600;font-size:17px;line-height:1.15;margin:0 0 6px;color:var(--ink)}
.deptcard .dd{font-size:13.5px;color:var(--ink-3);line-height:1.5;margin:0}
.deptcard .dc{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;margin-top:9px;color:var(--dc,var(--oxide))}

.numlist{list-style:none;margin:0;padding:0;counter-reset:nl}
.numlist li{counter-increment:nl;display:flex;gap:13px;padding:12px 0;border-bottom:1px solid var(--rule-hair)}
.numlist li:last-child{border-bottom:0}
.numlist li::before{
  content:counter(nl,decimal-leading-zero);font-family:var(--serif);font-variation-settings:'opsz' 40;
  font-weight:600;font-size:19px;color:var(--rule-2);line-height:1;flex:0 0 auto;min-width:1.6em;
}
.numlist .h{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 40;font-weight:600;font-size:15.5px;line-height:1.22;margin:0 0 3px}
.numlist .h a{color:var(--ink)}
.numlist .h a:hover{color:var(--oxide-dk);text-decoration:none}

/* in-this-issue module */
.issuemod{background:var(--paper-2);border-top:3px double var(--ink);border-bottom:1px solid var(--rule-2);padding:24px 0 26px;margin:40px 0 0}
.issuemod-grid{display:grid;grid-template-columns:190px minmax(0,1fr);gap:30px;align-items:start}
@media(max-width:760px){.issuemod-grid{grid-template-columns:1fr}}
.coverframe{border:1px solid var(--rule-2);background:var(--paper);display:block;line-height:0}
.toclist{list-style:none;margin:0;padding:0;columns:2;column-gap:32px;column-rule:1px solid var(--rule)}
@media(max-width:700px){.toclist{columns:1}}
.toclist li{break-inside:avoid;padding:7px 0;border-bottom:1px dotted var(--rule-2)}
.toclist .dp{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);display:block;margin-bottom:2px}
.toclist a{font-family:var(--serif);font-variation-settings:'SOFT' 16,'opsz' 24;font-weight:500;font-size:14.5px;line-height:1.25;color:var(--ink)}
.toclist a:hover{color:var(--oxide-dk);text-decoration:none}

/* ================================================================ sponsor units */
.adlabel{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-4);border-bottom:1px solid var(--rule);padding-bottom:4px;margin-bottom:12px;display:block;
}
.ad{margin:30px 0;padding:0}
.ad-in{border:1px solid var(--rule-2);background:var(--paper-2);padding:18px 20px;display:flex;gap:16px;align-items:flex-start}
.ad-mark{
  flex:0 0 auto;width:42px;height:42px;border:1px solid var(--rule-2);background:var(--paper);
  display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:600;
  font-size:17px;color:var(--ink-2);font-variation-settings:'opsz' 40;
}
.ad-b h4{font-family:var(--sans);font-size:14.5px;font-weight:660;margin:0 0 5px;letter-spacing:-.005em;color:var(--ink)}
.ad-b p{font-size:13.5px;color:var(--ink-2);margin:0 0 8px;line-height:1.5}
.ad-cta{font-family:var(--mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--oxide-dk);border-bottom:1px solid var(--oxide-lt)}
.ad-cta:hover{text-decoration:none;border-bottom-width:2px}
.ad.paired{margin-top:-18px}
.ad.paired .adlabel{border-bottom-style:dotted}
@media(max-width:520px){.ad-in{flex-direction:column;gap:11px}}

/* ================================================================ article page */
.artwrap{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:0 44px;padding:0 0 40px}
.artside{padding-left:32px;border-left:1px solid var(--rule);padding-top:8px}
@media(max-width:1040px){
  .artwrap{grid-template-columns:1fr}
  .artside{padding-left:0;border-left:0;border-top:3px double var(--ink);margin-top:38px;padding-top:24px}
}

.arthead{padding:26px 0 0;border-bottom:1px solid var(--rule);margin-bottom:24px}
.arthead h1{font-size:clamp(28px,4.6vw,46px);margin-bottom:.3em}
.arthead .deck{max-width:34em}
.byline{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 0 18px;border-top:1px solid var(--rule-hair);margin-top:16px}
.byline .av{flex:0 0 auto;line-height:0}
.byline-t{min-width:0}
.byline-t .by{font-family:var(--sans);font-size:13.5px;font-weight:600;color:var(--ink);margin:0 0 2px}
.byline-t .by a{color:var(--ink)}
.byline-t .by a:hover{color:var(--oxide-dk)}
.byline-t .by .role{font-weight:400;color:var(--ink-3);font-size:12.5px}
.byline-r{margin-left:auto;text-align:right}
@media(max-width:600px){.byline-r{margin-left:0;text-align:left;width:100%}}

.body{max-width:var(--measure);font-size:17.5px;line-height:1.72}
.body > p:first-of-type::first-letter{
  float:left;font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;
  font-weight:600;font-size:4.05em;line-height:.79;margin:.04em .09em 0 0;color:var(--oxide);
}
.body h2{
  font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 60;font-weight:600;
  font-size:25px;line-height:1.16;letter-spacing:-.012em;margin:2em 0 .55em;color:var(--ink);
}
.body h3{
  font-family:var(--sans);font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--dept);margin:2em 0 .6em;
}
.body h2:first-child,.body h3:first-child{margin-top:0}
.body ul,.body ol{padding-left:1.35em}
.body ul li::marker{color:var(--oxide-lt)}
.body ol li::marker{font-family:var(--mono);font-size:.85em;color:var(--ink-3)}
.body blockquote{
  margin:1.6em 0;padding:0 0 0 20px;border-left:2px solid var(--dept);
  font-family:var(--serif);font-variation-settings:'SOFT' 22,'opsz' 32;font-weight:400;
  font-size:18.5px;line-height:1.5;color:var(--ink-2);
}
.body blockquote p:last-child{margin-bottom:0}
.body a{border-bottom:1px solid var(--oxide-lt)}
.body a:hover{text-decoration:none;background:var(--oxide-wash)}

.pull{
  margin:2em 0;padding:18px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--rule);
}
.pull p{
  font-family:var(--serif);font-variation-settings:'SOFT' 6,'WONK' 1,'opsz' 72;font-weight:500;
  font-size:clamp(20px,3vw,25.5px);line-height:1.24;letter-spacing:-.014em;color:var(--ink);margin:0;
}
.pull cite{display:block;font-family:var(--mono);font-size:11px;font-style:normal;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin-top:11px}
@media(min-width:1180px){
  .pull{margin-left:-88px;padding-left:88px;position:relative}
}

.sidebar-box{
  margin:2.1em 0;background:var(--paper-2);border-top:3px double var(--ink);border-bottom:1px solid var(--rule-2);
  padding:18px 20px 16px;
}
.sidebar-box .sbk{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px}
.sidebar-box h4{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 40;font-weight:600;font-size:19px;line-height:1.16;margin:0 0 .5em;color:var(--ink)}
.sidebar-box p,.sidebar-box li{font-size:15.5px;line-height:1.6;color:var(--ink-2)}
.sidebar-box > :last-child{margin-bottom:0}

.notebox{margin:1.9em 0;padding:14px 18px;border-left:3px solid var(--warn);background:var(--warn-wash);font-size:15.5px;line-height:1.58}
.notebox .nb-t{font-family:var(--sans);font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--warn);display:block;margin-bottom:5px}
.notebox p:last-child{margin-bottom:0}
.notebox.correction{border-left-color:var(--oxide);background:var(--oxide-wash)}
.notebox.correction .nb-t{color:var(--oxide-dk)}
.notebox.ednote{border-left-color:var(--teal);background:var(--teal-wash)}
.notebox.ednote .nb-t{color:var(--teal-dk)}

figure{margin:2.1em 0}
figure svg{display:block;width:100%;border:1px solid var(--rule);background:var(--paper)}
figcaption{
  font-family:var(--mono);font-size:11.5px;line-height:1.6;color:var(--ink-3);
  border-top:1px solid var(--rule);padding-top:7px;margin-top:9px;
}
figcaption b{color:var(--ink-2);font-weight:600}

.tablewrap{margin:2.1em 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
table.data{border-collapse:collapse;width:100%;min-width:440px;font-family:var(--mono);font-size:12.5px}
table.data caption{
  caption-side:top;text-align:left;font-family:var(--sans);font-size:11.5px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dk);padding-bottom:8px;
}
table.data th,table.data td{padding:7px 11px;text-align:left;border-bottom:1px solid var(--rule-hair);vertical-align:top}
table.data thead th{border-bottom:1.5px solid var(--ink);font-weight:600;color:var(--ink);white-space:nowrap;font-size:11.5px;letter-spacing:.03em;text-transform:uppercase}
table.data tbody tr:nth-child(even){background:var(--paper-2)}
table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}
table.data tfoot td{border-bottom:0;border-top:1px solid var(--rule-2);color:var(--ink-3);font-size:11px}
.tablenote{font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-top:-1.4em;margin-bottom:2.1em;line-height:1.6}

/* footnotes + references */
.body a.fn{border-bottom:0;font-family:var(--mono);color:var(--oxide);padding:0 .08em}
.body a.fn:hover{background:var(--oxide-wash)}
.refs{margin:2.6em 0 0;padding-top:20px;border-top:3px double var(--ink)}
.refs h3{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin:0 0 12px}
.refs ol{list-style:none;margin:0;padding:0;counter-reset:rf}
.refs li{
  counter-increment:rf;font-size:14px;line-height:1.55;color:var(--ink-2);
  padding-left:2.1em;text-indent:-2.1em;margin-bottom:.72em;
}
.refs li::before{content:counter(rf) '. ';font-family:var(--mono);font-size:.86em;color:var(--oxide)}
.refs li em{color:var(--ink)}

/* series nav */
.seriesnav{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:15px 0;margin:0 0 26px;background:var(--paper-2)}
.seriesnav .sk{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);display:block;margin-bottom:4px}
.seriesnav .st{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 40;font-weight:600;font-size:17px;margin:0 0 6px}
.seriesnav ol{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px}
.seriesnav li{font-family:var(--mono);font-size:11.5px;margin:0;color:var(--ink-3)}
.seriesnav li.here{color:var(--ink);font-weight:600}
.seriesnav li .n{color:var(--oxide);margin-right:.35em}

/* letters column */
.letters{border-top:3px double var(--ink);margin-top:44px;padding-top:24px}
.letters-h{display:flex;align-items:baseline;gap:12px;margin-bottom:6px}
.letters-h h2{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 60;font-weight:600;font-size:24px;margin:0}
.letters-note{font-family:var(--mono);font-size:11px;color:var(--ink-3);margin:0 0 20px;line-height:1.6}
.letter{padding:20px 0;border-bottom:1px solid var(--rule-hair);max-width:var(--measure)}
.letter:last-child{border-bottom:0}
.letter .lbody{font-size:16.5px;line-height:1.66;color:var(--ink)}
.letter .lbody p:last-child{margin-bottom:0}
.letter .lsig{font-family:var(--mono);font-size:11.5px;letter-spacing:.03em;color:var(--ink-3);margin-top:9px}
.letter .lsig b{color:var(--ink);font-weight:600;font-style:normal}
.letter .lreply{margin:14px 0 0 0;padding:12px 0 0 18px;border-left:2px solid var(--teal-lt);font-size:15.5px;line-height:1.6;color:var(--ink-2)}
.letter .lreply .rt{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-dk);display:block;margin-bottom:5px}
.letter .lreply p:last-child{margin-bottom:0}

/* article sidebar rail */
.rail{margin-bottom:30px}
.rail-h{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);border-bottom:2px solid var(--ink);padding-bottom:6px;margin:0 0 12px}
.rail ul{list-style:none;margin:0;padding:0}
.rail li{padding:9px 0;border-bottom:1px solid var(--rule-hair);font-size:14.5px;line-height:1.34}
.rail li:last-child{border-bottom:0}
.rail li a{font-family:var(--serif);font-variation-settings:'SOFT' 14,'opsz' 24;font-weight:500;color:var(--ink)}
.rail li a:hover{color:var(--oxide-dk);text-decoration:none}
.rail .rm{font-family:var(--mono);font-size:10.5px;color:var(--ink-4);display:block;margin-top:3px;letter-spacing:.03em}
.factbox{border-top:2px solid var(--teal);background:var(--teal-wash);padding:14px 15px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.factbox dt{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dk);margin-top:9px}
.factbox dt:first-child{margin-top:0}
.factbox dd{margin:1px 0 0;font-weight:500;color:var(--ink)}

/* ================================================================ index pages */
.pagehead{padding:28px 0 22px;border-bottom:3px double var(--ink);margin-bottom:28px}
.pagehead h1{font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;font-weight:600;font-size:clamp(30px,5.4vw,50px);line-height:1;letter-spacing:-.02em;margin:0 0 .32em}
.pagehead .intro{font-family:var(--serif);font-variation-settings:'SOFT' 26,'opsz' 32;font-weight:400;font-size:clamp(16.5px,2vw,20px);line-height:1.45;color:var(--ink-2);max-width:44em;margin:0}
.pagehead .meta{margin-top:14px}

.cols2{columns:2;column-gap:38px;column-rule:1px solid var(--rule-hair)}
@media(max-width:900px){.cols2{columns:1}}
.cols2 > *{break-inside:avoid}

.grid3{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0 34px}
.grid3 > *{padding:20px 0;border-bottom:1px solid var(--rule-hair)}
.grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:0 40px}
.grid2 > *{padding:22px 0;border-bottom:1px solid var(--rule-hair)}

.pager{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin:38px 0 10px;padding-top:22px;border-top:1px solid var(--rule)}
.pager a,.pager span{
  font-family:var(--mono);font-size:12px;padding:6px 11px;border:1px solid var(--rule-2);color:var(--ink-2);min-width:34px;text-align:center;
}
.pager a:hover{border-color:var(--oxide);color:var(--oxide-dk);text-decoration:none}
.pager .cur{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pager .gap{border:0}

/* issues */
.issuegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:26px}
.issuetile{display:block;color:var(--ink)}
.issuetile:hover{text-decoration:none}
.issuetile svg{border:1px solid var(--rule-2);display:block}
.issuetile:hover svg{border-color:var(--oxide)}
.issuetile .it-n{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:9px}
.issuetile .it-t{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 32;font-weight:600;font-size:15.5px;line-height:1.2;margin-top:3px}

.issuehead{display:grid;grid-template-columns:250px minmax(0,1fr);gap:38px;align-items:start;padding:30px 0 28px;border-bottom:3px double var(--ink);margin-bottom:30px}
@media(max-width:820px){.issuehead{grid-template-columns:1fr;gap:24px}}
.edletter{max-width:var(--measure);font-size:17px;line-height:1.7}
.edletter > p:first-of-type::first-letter{
  float:left;font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;
  font-weight:600;font-size:3.6em;line-height:.8;margin:.05em .09em 0 0;color:var(--oxide);
}
.tocsec{margin:34px 0 0}
.tocsec .th{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--ink);padding-bottom:6px;margin-bottom:4px}
.tocsec .th h3{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin:0;color:var(--dc,var(--oxide))}
.tocsec .th .tn{margin-left:auto;font-family:var(--mono);font-size:10.5px;color:var(--ink-4)}
.tocrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline;padding:11px 0;border-bottom:1px dotted var(--rule-2)}
.tocrow:last-child{border-bottom:0}
.tocrow .tt{font-family:var(--serif);font-variation-settings:'SOFT' 10,'opsz' 32;font-weight:600;font-size:17px;line-height:1.22;margin:0 0 3px}
.tocrow .tt a{color:var(--ink)}
.tocrow .tt a:hover{color:var(--oxide-dk);text-decoration:none}
.tocrow .td{font-size:14.5px;color:var(--ink-3);line-height:1.5;margin:0}
.tocrow .tp{font-family:var(--mono);font-size:11px;color:var(--ink-4);white-space:nowrap;text-align:right}
@media(max-width:560px){.tocrow{grid-template-columns:1fr}.tocrow .tp{text-align:left}}

/* authors */
.authorgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:1px;background:var(--rule)}
.authorcard{background:var(--paper);padding:18px;display:flex;gap:14px;align-items:flex-start}
.authorcard .av{flex:0 0 auto;line-height:0}
.authorcard .an{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 40;font-weight:600;font-size:17px;line-height:1.15;margin:0 0 3px}
.authorcard .an a{color:var(--ink)}
.authorcard .ar{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--oxide);margin:0 0 6px}
.authorcard .ab{font-size:13.5px;color:var(--ink-2);line-height:1.5;margin:0}

.authorhead{display:grid;grid-template-columns:auto minmax(0,1fr);gap:26px;align-items:start;padding:30px 0 26px;border-bottom:3px double var(--ink);margin-bottom:28px}
@media(max-width:620px){.authorhead{grid-template-columns:1fr;gap:18px}}
.authorhead h1{font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 144;font-weight:600;font-size:clamp(28px,4.6vw,44px);line-height:1.02;margin:0 0 .2em;letter-spacing:-.02em}
.authorhead .role{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--oxide);margin:0 0 12px}
.authorhead .bio{font-size:16.5px;line-height:1.62;color:var(--ink-2);max-width:48em}
.authorhead .bio p:last-child{margin-bottom:0}
.credrow{display:flex;flex-wrap:wrap;gap:0;margin-top:16px;border-top:1px solid var(--rule);padding-top:12px}
.credrow div{padding-right:26px;margin-right:26px;border-right:1px solid var(--rule-hair)}
.credrow div:last-child{border-right:0;margin-right:0;padding-right:0}
.credrow dt{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-4)}
.credrow dd{margin:2px 0 0;font-family:var(--serif);font-variation-settings:'opsz' 32;font-weight:600;font-size:17px}

/* dossiers */
.dosstable{width:100%;border-collapse:collapse;font-size:14.5px}
.dosstable th,.dosstable td{padding:11px 12px;border-bottom:1px solid var(--rule-hair);text-align:left;vertical-align:top}
.dosstable thead th{border-bottom:1.5px solid var(--ink);font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap}
.dosstable tbody tr:hover{background:var(--paper-2)}
.dosstable .vn{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 32;font-weight:600;font-size:16px;line-height:1.2}
.dosstable .vd{font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-top:2px}
.dosstable .sc{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500;white-space:nowrap}
.dosstable td.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}
@media(max-width:760px){
  .dosswrap{overflow-x:auto}
  .dosstable{min-width:600px}
}
.stars{color:var(--oxide);letter-spacing:.06em;font-size:13px}
.stars .off{color:var(--rule-2)}

.doshead{padding:28px 0 24px;border-bottom:3px double var(--ink);margin-bottom:28px}
.doshead-grid{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:34px;align-items:start}
@media(max-width:760px){.doshead-grid{grid-template-columns:1fr;gap:22px}}
.scorebox{border:1px solid var(--ink);padding:16px;text-align:center}
.scorebox .sn{font-family:var(--serif);font-variation-settings:'SOFT' 0,'opsz' 144;font-weight:600;font-size:52px;line-height:.9;letter-spacing:-.03em}
.scorebox .sl{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-top:6px}
.scorebox .stars{display:block;margin:8px 0 4px;font-size:15px}
.scorebox .sc2{font-family:var(--mono);font-size:11px;color:var(--ink-3)}

.verifygrid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:3px double var(--ink);border-bottom:1px solid var(--rule-2);margin:2.2em 0}
.verifygrid > div{padding:18px 20px}
.verifygrid > div:first-child{border-right:1px solid var(--rule);background:var(--good-wash)}
.verifygrid > div:last-child{background:var(--warn-wash)}
.verifygrid h4{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px}
.verifygrid > div:first-child h4{color:var(--good)}
.verifygrid > div:last-child h4{color:var(--warn)}
.verifygrid ul{margin:0;padding-left:1.15em;font-size:14.5px;line-height:1.55}
@media(max-width:680px){
  .verifygrid{grid-template-columns:1fr}
  .verifygrid > div:first-child{border-right:0;border-bottom:1px solid var(--rule)}
}

.logtable{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:12.5px}
.logtable th,.logtable td{padding:8px 10px;border-bottom:1px solid var(--rule-hair);text-align:left;vertical-align:top}
.logtable thead th{border-bottom:1.5px solid var(--ink);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.logtable td:first-child{white-space:nowrap;color:var(--ink-3)}

.reviewlist{margin:2.2em 0 0}
.review{padding:18px 0;border-bottom:1px solid var(--rule-hair)}
.review:last-child{border-bottom:0}
.review-h{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;margin-bottom:7px}
.review-h .rn{font-family:var(--sans);font-size:14px;font-weight:640}
.review-h .rd{font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-left:auto}
.review p{font-size:15.5px;line-height:1.62;color:var(--ink-2);margin:0;max-width:var(--measure)}

/* reference / calculators */
.calc{border-top:3px double var(--ink);border-bottom:1px solid var(--rule-2);background:var(--paper-2);padding:22px 24px;margin:2.2em 0}
.calc h3{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 40;font-weight:600;font-size:20px;margin:0 0 4px}
.calc .ch{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);margin:0 0 18px;line-height:1.6}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px 20px}
.field label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:5px}
.field input,.field select{
  width:100%;font-family:var(--mono);font-size:15px;padding:8px 10px;background:var(--paper);
  border:1px solid var(--rule-2);color:var(--ink);border-radius:0;
}
.field input:focus,.field select:focus{outline:0;border-color:var(--oxide)}
.field .hint{font-family:var(--mono);font-size:10.5px;color:var(--ink-4);margin-top:4px;line-height:1.5}
.calcout{margin-top:20px;border-top:1px solid var(--rule-2);padding-top:16px}
.readout{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--rule)}
.readout > div{background:var(--paper);padding:13px 14px}
.readout dt{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.readout dd{margin:4px 0 0;font-family:var(--serif);font-variation-settings:'opsz' 60;font-weight:600;font-size:26px;line-height:1;letter-spacing:-.02em;color:var(--teal-dk);font-variant-numeric:tabular-nums}
.readout dd .u{font-family:var(--mono);font-size:11px;font-weight:400;color:var(--ink-3);letter-spacing:0;margin-left:.28em}
.calcnote{font-family:var(--mono);font-size:11.5px;line-height:1.65;color:var(--ink-3);margin-top:14px;padding-top:12px;border-top:1px dotted var(--rule-2)}
.btn{
  display:inline-block;font-family:var(--sans);font-size:12px;font-weight:660;letter-spacing:.1em;
  text-transform:uppercase;padding:9px 18px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);
  cursor:pointer;border-radius:0;
}
.btn:hover{background:var(--oxide-dk);border-color:var(--oxide-dk);color:var(--paper);text-decoration:none}
.btn.ghost{background:transparent;color:var(--ink);}
.btn.ghost:hover{background:var(--ink);color:var(--paper)}

/* annotated COA walkthrough */
.annot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;border-top:3px double var(--ink);margin:2.2em 0}
@media(max-width:840px){.annot{grid-template-columns:1fr}}
.annot-doc{border-right:1px solid var(--rule);padding:18px 22px 22px;background:var(--paper-2)}
@media(max-width:840px){.annot-doc{border-right:0;border-bottom:1px solid var(--rule)}}
.annot-notes{padding:18px 22px 22px}
.coa{font-family:var(--mono);font-size:12px;line-height:1.75;color:var(--ink)}
.coa .cline{display:block;padding:1px 0}
.coa .mk{background:var(--oxide-wash);border-bottom:1px dashed var(--oxide);cursor:help;padding:0 2px}
.coa .cr{border-top:1px solid var(--rule-2);margin:8px 0;display:block}
.annot-notes ol{list-style:none;margin:0;padding:0;counter-reset:an}
.annot-notes li{counter-increment:an;padding:11px 0 11px 2.3em;text-indent:-2.3em;border-bottom:1px solid var(--rule-hair);font-size:14.5px;line-height:1.55}
.annot-notes li:last-child{border-bottom:0}
.annot-notes li::before{content:'❬' counter(an) '❭\00a0';font-family:var(--mono);font-size:11px;color:var(--oxide);font-weight:600}
.annot-notes li b{display:block;font-family:var(--sans);font-size:13px;font-weight:700;color:var(--ink);text-indent:0;margin-bottom:2px}

/* search */
.searchbar{display:flex;gap:0;margin:0 0 26px;border-bottom:2px solid var(--ink)}
.searchbar input{flex:1;min-width:0;font-family:var(--serif);font-variation-settings:'opsz' 60;font-weight:500;font-size:24px;border:0;background:transparent;padding:8px 0;color:var(--ink)}
.searchbar input:focus{outline:0}
.searchbar input::placeholder{color:var(--rule-2)}
.searchbar button{flex:0 0 auto;background:transparent;border:0;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--oxide-dk);cursor:pointer;padding:0 4px}
.sresult{padding:16px 0;border-bottom:1px solid var(--rule-hair)}
.sresult .sh{font-family:var(--serif);font-variation-settings:'SOFT' 10,'opsz' 40;font-weight:600;font-size:18px;line-height:1.2;margin:0 0 4px}
.sresult .sh a{color:var(--ink)}
.sresult p{font-size:14.5px;color:var(--ink-2);margin:0 0 4px;line-height:1.5}

/* letters archive rows */
.letterrow{padding:18px 0;border-bottom:1px solid var(--rule-hair)}
.letterrow .lr-c{font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-bottom:6px}
.letterrow .lr-b{font-size:16px;line-height:1.62;color:var(--ink);max-width:var(--measure)}
.letterrow .lr-b p:last-child{margin-bottom:0}
.letterrow .lr-re{font-family:var(--mono);font-size:11px;margin-top:8px;color:var(--ink-3)}

/* correction log */
.corrlog{list-style:none;margin:0;padding:0}
.corrlog li{padding:16px 0;border-bottom:1px solid var(--rule-hair);display:grid;grid-template-columns:105px minmax(0,1fr);gap:18px}
.corrlog .cd{font-family:var(--mono);font-size:11.5px;color:var(--oxide);letter-spacing:.02em}
.corrlog .cb{font-size:15.5px;line-height:1.6;color:var(--ink-2)}
.corrlog .cb .ct{font-family:var(--serif);font-variation-settings:'SOFT' 12,'opsz' 32;font-weight:600;font-size:16.5px;display:block;margin-bottom:4px}
.corrlog .cb .ct a{color:var(--ink)}
@media(max-width:560px){.corrlog li{grid-template-columns:1fr;gap:5px}}

/* ================================================================ footer */
.colophon{border-top:3px double var(--ink);margin-top:56px;background:var(--paper-2)}
.colophon-in{padding:34px 0 24px;display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:32px}
@media(max-width:900px){.colophon-in{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.colophon-in{grid-template-columns:1fr;gap:24px}}
.colophon h4{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);margin:0 0 11px}
.colophon ul{list-style:none;margin:0;padding:0}
.colophon li{margin-bottom:7px;font-size:14px}
.colophon a{color:var(--ink-2)}
.colophon a:hover{color:var(--oxide-dk)}
.colophon-brand .cb-t{font-family:var(--serif);font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 72;font-weight:600;font-size:23px;line-height:1;margin:0 0 10px;letter-spacing:-.015em}
.colophon-brand p{font-size:13.5px;color:var(--ink-3);line-height:1.6;margin:0 0 10px;max-width:36em}
.colophon-legal{border-top:1px solid var(--rule);padding:16px 0 30px;font-family:var(--mono);font-size:11px;color:var(--ink-4);line-height:1.75}
.colophon-legal .cl-r{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:10px}
.colophon-legal a{color:var(--ink-3)}
.disclaimer{max-width:70em}

/* ================================================================ department registers */
body[data-dept="pharmacology"]{--dept:#A63D2F;--dept-wash:#F7E9E5}
body[data-dept="the-supply-chain"]{--dept:#7A5320;--dept-wash:#F5EDDF}
body[data-dept="clinical-trials"]{--dept:#2C6B69;--dept-wash:#E7EFEE}
body[data-dept="analytics"]{--dept:#1F5C7A;--dept-wash:#E4EEF3}
body[data-dept="regulation"]{--dept:#4A4A7C;--dept-wash:#EAEAF3}
body[data-dept="dispatches"]{--dept:#7B3B5E;--dept-wash:#F4E8EE}
body[data-dept="patient-notes"]{--dept:#8A5A16;--dept-wash:#F7EEDC}
body[data-dept="the-ledger"]{--dept:#2F6B45;--dept-wash:#E8F0E9}
body[data-dept="laboratory-notebook"]{--dept:#3F5F2E;--dept-wash:#EBF0E6}
body[data-dept="corrections"]{--dept:#96302B;--dept-wash:#F8E7E5}
body[data-dept="obituaries-and-exits"]{--dept:#4A463F;--dept-wash:#EEEBE5}
body[data-dept="letters"]{--dept:#6B4E8A;--dept-wash:#F0EAF5}
body[data-dept="explainers"]{--dept:#1E6A78;--dept-wash:#E5EFF1}
body[data-dept="the-back-page"]{--dept:#5C4632;--dept-wash:#F1EBE3}

/* analytics + laboratory notebook: tighter measure, mono captions carry more weight */
body[data-dept="analytics"] .body,body[data-dept="laboratory-notebook"] .body{--measure:64ch;font-size:17px}
body[data-dept="analytics"] figcaption,body[data-dept="laboratory-notebook"] figcaption{color:var(--ink-2)}
/* the back page: one wide serif column, no rail */
body[data-dept="the-back-page"] .body{--measure:none;max-width:40em;font-size:18.5px;font-family:var(--serif);font-variation-settings:'SOFT' 26,'opsz' 24;font-weight:400}
body[data-dept="the-back-page"] .body h2{font-variation-settings:'SOFT' 0,'WONK' 1,'opsz' 72}
/* dispatches: two columns on very wide viewports */
@media(min-width:1180px){
  body[data-dept="dispatches"] .body{max-width:none;columns:2;column-gap:44px;column-rule:1px solid var(--rule-hair)}
  body[data-dept="dispatches"] .body h2,body[data-dept="dispatches"] .pull,body[data-dept="dispatches"] .tablewrap,body[data-dept="dispatches"] figure,body[data-dept="dispatches"] .sidebar-box{column-span:all}
  body[data-dept="dispatches"] .pull{margin-left:0;padding-left:0}
}
/* letters department: the column itself is the article */
body[data-dept="letters"] .body{--measure:66ch}

/* print */
@media print{
  .mainnav,.navsearch,.flag-strip,.ad,.rail,.pager,.colophon-in{display:none}
  body{background:#fff;font-size:11pt}
  .artwrap{grid-template-columns:1fr}
  .artside{display:none}
  a{color:#000;border:0}
}

/* Storefront CTA — the Journal links each company's own shop, top and end of the
   dossier, marked and disclosed. Deliberately not styled as a button: it is a
   reference, not a call to buy. */
.shopcta{border-left:3px solid var(--ink);padding:11px 0 11px 15px;margin:22px 0;
  font-family:var(--sans);font-size:15px;line-height:1.55;color:var(--ink-2)}
.shopcta-l{display:inline-block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);margin-right:9px;vertical-align:1px}
.shopcta .shoplink{font-weight:600;color:var(--ink);white-space:nowrap}
.scorebox .sn{font-size:46px}
/* The second-tier table carries no grade and no link, which is the point of it. */
.t2table td{font-size:14px}
.t2table .vn{font-weight:600}

/* --- oath-kit clone fix: mobile horizontal overflow -------------------------
   Pre-existing in the source (verified against the untouched pages in
   backups/compoundjournal-text-original.tar.gz, which overflow the same way).

   Wide data tables already sit in .tablewrap{overflow-x:auto}, exactly as the
   .mainnav scroller does. But under the 1040px breakpoint .artwrap switches
   from `minmax(0,1fr) 268px` to a bare `1fr`, which is minmax(auto,1fr): its
   automatic minimum is the column's min-content, and table.data carries
   min-width:440px. The column therefore cannot shrink below the table, the
   grid item is stretched past the viewport, .tablewrap's scroller never
   engages and the whole page scrolls sideways instead of the table.

   Restoring a zero minimum lets the author's existing scroller do its job.
   Desktop (>1040px) is untouched; nothing is hidden or resized. */
@media(max-width:1040px){
  .artwrap{grid-template-columns:minmax(0,1fr)}
  .artwrap > *{min-width:0}
}
