/* The Existentialist Republic: site prototype styles. Soft secession greens on white, Vox-scale type. */
:root{
  color-scheme:light;
  --paper:#ffffff;
  --ink:#1a1918;
  --ink-2:#4a4b4a;
  --steel:#6c6e6c;
  --rule:#e2e5e3;
  --mint:#5fa183;
  --mint-2:#96c9ad;
  --mint-3:#b7dcc8;
  --mint-4:#f1f7f3;
  --mark:"Big Shoulders","Arial Narrow",Arial,sans-serif;
  --sans:"Familjen Grotesk","Helvetica Neue",Arial,sans-serif;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --mono:"Martian Mono",ui-monospace,Menlo,Consolas,monospace;
  --gut:clamp(16px,4vw,40px);
  --max:1180px;
  --mini:56px;
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--paper);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.lock{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,ol,ul,figure{margin:0}
ol,ul{list-style:none;padding:0}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
::selection{background:var(--mint-3);color:var(--ink)}
[hidden]{display:none!important}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 14px;background:var(--ink);color:#fff;font:700 14px/1 var(--sans)}
.skip:focus{top:12px}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.t:hover,.t:focus-visible{text-decoration:underline;text-decoration-thickness:3px;text-decoration-color:var(--mint);text-underline-offset:.14em}

/* Small type */
.kicker{display:inline-block;font:600 10.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
a.kicker:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.25em}
.hot{display:flex;align-items:center;gap:8px;color:var(--ink)}
.hot::before{content:"";flex:none;width:8px;height:8px;background:var(--mint)}
.date{font:400 10.5px/1.3 var(--mono);letter-spacing:.06em;color:var(--steel)}
.lbl{font:600 9.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--steel)}
.fine{margin-top:12px;font:400 10px/1.5 var(--mono);letter-spacing:.04em;color:var(--steel)}
.due{display:inline-block;padding:3px 6px;background:var(--mint);color:var(--ink);font:600 9.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.cd{font:600 10.5px/1.2 var(--mono);letter-spacing:.04em;color:var(--ink)}
.past .due{background:var(--rule);color:var(--steel)}
.flag{display:inline-flex;align-items:center;gap:7px;font:600 10px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.flag::before{content:"";flex:none;width:7px;height:7px;background:var(--mint)}
a.flag:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.25em}
.more{display:inline-block;font:700 14px/1 var(--sans);border-bottom:3px solid var(--mint);padding-bottom:3px}
.more:hover{border-color:var(--ink)}

/* Masthead band */
.band{background:var(--mint);color:var(--ink)}
.band-in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 20px;padding-block:22px 0}
.wordmark{font:900 clamp(1.9rem,4.4vw,3rem)/.9 var(--mark);letter-spacing:.01em;text-transform:uppercase;white-space:nowrap}
.wordmark span{display:inline}
.acts{display:flex;align-items:center;gap:6px}
.ib{display:inline-flex;align-items:center;gap:8px;padding:9px 10px;background:none;border:0;font:600 14px/1 var(--sans);color:var(--ink)}
.ib svg{width:18px;height:18px;flex:none}
.ib:hover span{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.3em}
.sub{margin-inline:4px;padding:10px 16px;background:var(--ink);color:#fff;font:700 14px/1 var(--sans);white-space:nowrap;transition:background .2s,color .2s}
.sub:hover{background:#fff;color:var(--ink)}
.sections{grid-column:1/-1;display:flex;gap:6px 24px;margin-top:18px;padding-block:13px 14px;border-top:1px solid rgba(26,25,24,.22);overflow-x:auto;scrollbar-width:none}
.sections::-webkit-scrollbar{display:none}
.sections a{font:600 15px/1 var(--sans);white-space:nowrap;padding-block:2px}
.sections a:hover,.sections a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35em}
.sections a.cta-nav{font-weight:700}

/* Compact header that appears once the band scrolls away */
.mini{position:fixed;inset:0 0 auto;z-index:50;height:var(--mini);background:var(--mint);box-shadow:0 1px 0 rgba(26,25,24,.2);transform:translateY(-100%);visibility:hidden;transition:transform .22s ease,visibility 0s linear .22s}
.mini.on{transform:none;visibility:visible;transition:transform .22s ease}
.mini-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:100%}
.mini-wm{font:900 1.35rem/1 var(--mark);text-transform:uppercase;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini .sub{padding:8px 13px}

/* Campaign line */
.topics{display:flex;align-items:baseline;gap:22px;padding-block:13px;border-bottom:1px solid var(--rule);font:400 12px/1.4 var(--mono);white-space:nowrap;overflow-x:auto;scrollbar-width:none}
.topics::-webkit-scrollbar{display:none}
.topics b{font-weight:700}
.topics a:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.3em}

/* Front page top */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1.04fr);padding-block:28px 44px}
.h-left{padding-right:24px}
.h-lead{padding-inline:24px;border-left:1px solid var(--rule);border-right:1px solid var(--rule)}
.h-right{padding-left:24px}
.briefs{display:grid;margin-top:12px}
.brief{display:grid;gap:6px;padding-block:14px;border-top:1px solid var(--rule)}
.brief:first-child{border-top:0;padding-top:4px}
.brief .date{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.bw{font:700 15px/1.3 var(--sans);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--mint-2);text-underline-offset:.18em}
.bw:hover{text-decoration-color:var(--ink)}
.bask{font:400 15px/1.4 var(--serif);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.h-left .more{margin-top:14px}
.h-lead .img{display:block;overflow:hidden;background:#eef1ef}
.h-lead .img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.credit{margin-top:6px;font:400 10px/1.4 var(--mono);color:var(--steel)}
.h-lead-t{display:grid;gap:10px;margin-top:16px}
.h-lead.noimg .h-lead-t{margin-top:0}
.lead-h{font:700 clamp(1.75rem,2.9vw,2.4rem)/1.04 var(--sans);letter-spacing:-.022em;text-wrap:balance}
.h-lead.noimg .lead-h{font-size:clamp(2rem,3.6vw,3rem)}
.lead-dek{font:400 clamp(1.08rem,1.4vw,1.25rem)/1.35 var(--serif);color:var(--ink-2)}
.byline{font:600 11px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.byline span{color:var(--steel);font-weight:500}
.rail{display:grid;margin-top:12px}
.rail li{display:grid;gap:6px;padding-block:14px;border-top:1px solid var(--rule)}
.rail li:first-child{border-top:0;padding-top:4px}
.rail h3{font:700 16px/1.2 var(--sans);letter-spacing:-.005em;text-wrap:balance}
.letter{margin-top:18px;padding:18px;background:var(--mint-3)}
.letter h2{font:700 17px/1.2 var(--sans)}
.letter p{margin-top:6px;font:400 15px/1.4 var(--serif)}
.btn{display:inline-block;padding:11px 16px;background:var(--ink);color:#fff;font:700 14px/1 var(--sans);border:0;transition:background .2s,color .2s}
.btn:hover{background:var(--mint);color:var(--ink)}
.letter .btn{margin-top:14px}

/* Section titles */
.sec-s{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid var(--ink);font:700 24px/1.1 var(--sans);letter-spacing:-.01em}
.sec-s a{font:700 14px/1 var(--sans);color:var(--ink-2);white-space:nowrap}
.sec-s a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--mint)}
.sec-xl{font:700 clamp(2.6rem,5.2vw,4.375rem)/.95 var(--sans);letter-spacing:-.035em;text-wrap:balance}
.lbl-h{padding-top:14px;border-top:1px solid var(--ink);font:700 16px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase}

/* More reporting with a sticky right column */
.split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:0 44px;padding-block:8px 56px}
.srows{margin-top:6px}
.srow{display:grid;grid-template-columns:200px minmax(0,1fr);grid-template-areas:"img text" "img cta";gap:12px 24px;align-items:start;padding-block:22px;border-top:1px solid var(--rule)}
.srow:first-child{border-top:0}
.srow.noimg{grid-template-columns:minmax(0,1fr);grid-template-areas:"text" "cta"}
.srow .img{grid-area:img}
.srow .stext{grid-area:text}
.srow .ctaline{grid-area:cta}
.img{display:block;overflow:hidden;background:#eef1ef}
.srow .img img{width:100%;aspect-ratio:3/2;object-fit:cover}
.stext{display:grid;gap:8px;min-width:0}
.meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.stext h3{font:700 21px/1.18 var(--sans);letter-spacing:-.012em;text-wrap:balance}
.sdek{max-width:44rem;font:400 16px/1.45 var(--serif);color:var(--ink-2)}
.ctaline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 12px;background:var(--mint-4);border-left:3px solid var(--mint)}
.ctaline .cl-who{font:700 14px/1.3 var(--sans)}
.ctaline:hover .cl-who{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.2em}
.side-in{position:sticky;top:calc(var(--mini) + 20px);display:grid;gap:36px}
.pop{counter-reset:pop;margin-top:6px}
.pop li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:14px;padding-block:14px;border-top:1px solid var(--rule)}
.pop li:first-child{border-top:0}
.pop .n{display:grid;place-items:center;width:30px;height:30px;background:var(--mint);font:700 13px/1 var(--mono)}
.pop h3{font:700 16px/1.22 var(--sans);text-wrap:balance}
.pop .date{display:block;margin-top:6px}
.dls-box{padding:0}
.dls{margin-top:10px;display:grid;gap:10px}
.dl{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;padding:14px;background:var(--mint-4);border-top:3px solid var(--mint)}
.dl:hover .dl-who{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.2em}
.dl-when{display:grid;align-content:start;gap:4px}
.dl-when b{font:700 30px/1 var(--sans);letter-spacing:-.02em}
.dl-when b.mo{font-size:19px;line-height:1.1}
.dl-u{font:600 9.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.dl-what{display:grid;gap:6px;min-width:0}
.dl-who{font:700 15px/1.25 var(--sans)}
.dl-ask{font:400 14px/1.4 var(--serif);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}

/* Calls to action on the front page */
.calls{padding-block:8px 16px}
.calls-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:10px 32px;padding-top:40px;border-top:1px solid var(--rule)}
.calls-note{max-width:34rem;font:400 16px/1.45 var(--serif);color:var(--ink-2)}
.ask{font:400 16px/1.45 var(--serif)}
.asklist{display:grid;gap:6px;font:400 15.5px/1.45 var(--serif)}
.asklist.num{list-style:decimal;padding-left:1.3em}
.asklist.num li::marker{font:600 12px var(--mono)}
.how{font:400 10px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.src{font:600 13.5px/1.3 var(--sans)}
.src:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px}
.due-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.pair{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);margin-top:26px;border-top:1px solid var(--ink)}
.cta{display:grid;align-content:start;gap:8px;min-width:0}
.cta h3 a:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:.14em}
.cta-big{padding:22px 28px 26px 0;border-right:1px solid var(--rule)}
.cta-big h3{font:700 clamp(1.7rem,2.6vw,2.2rem)/1.05 var(--sans);letter-spacing:-.02em}
.cta-big .ask{font-size:18px;line-height:1.45;max-width:40rem}
.cta-side{padding:22px 0 26px 28px}
.cta-side h3{font:700 22px/1.12 var(--sans);letter-spacing:-.012em}
.twos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px;border-top:1px solid var(--rule)}
.twos .cta{padding-block:24px 28px;border-bottom:1px solid var(--rule)}
.twos h3{font:700 20px/1.15 var(--sans);letter-spacing:-.012em;text-wrap:balance}
.older{margin-top:30px;border-top:1px solid var(--ink)}
.older li{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:baseline;gap:6px 24px;padding-block:14px;border-bottom:1px solid var(--rule)}
.older h3{font:700 16px/1.25 var(--sans);text-wrap:balance}
.older h3 a:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px}
.older .src{white-space:nowrap}
.all{display:inline-block;margin-top:20px;font:700 15px/1 var(--sans);border-bottom:3px solid var(--mint);padding-bottom:4px}

/* Topic sections with Vox-size titles */
.tsec{padding-block:56px 8px}
.tsec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;padding-top:16px;border-top:1px solid var(--ink)}
.tsec-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:0 40px;margin-top:26px}
.t-lead{display:grid;align-content:start;gap:10px;min-width:0}
.t-lead .img img{width:100%;aspect-ratio:3/2;object-fit:cover}
.t-lead h3{margin-top:4px;font:700 clamp(1.5rem,2.3vw,1.9rem)/1.08 var(--sans);letter-spacing:-.02em;text-wrap:balance}
.t-list{border-top:1px solid var(--rule)}
.t-list li{display:grid;gap:6px;padding-block:16px;border-bottom:1px solid var(--rule)}
.t-list h3{font:700 18px/1.2 var(--sans);letter-spacing:-.008em;text-wrap:balance}
.in-topic .t-list .kicker,.in-topic .ri-t>.kicker{display:none}

/* Chronological lists */
.news{padding-block:56px 16px}
.river{margin-top:8px}
.ri{display:grid;grid-template-columns:96px minmax(0,1fr) 160px;gap:24px;align-items:start;padding-block:20px;border-bottom:1px solid var(--rule)}
.ri.noimg{grid-template-columns:96px minmax(0,1fr)}
.ri .date{padding-top:3px}
.ri-t{display:grid;gap:7px;min-width:0}
.ri h3{font:700 19px/1.2 var(--sans);letter-spacing:-.01em;text-wrap:balance}
.ri .sdek{font-size:15.5px}
.ri-img img{width:100%;aspect-ratio:3/2;object-fit:cover}
.btn-more{display:block;width:100%;max-width:340px;margin:28px auto 0;padding:14px 18px;background:var(--paper);border:2px solid var(--ink);font:700 15px/1 var(--sans);text-align:center}
.btn-more:hover{background:var(--ink);color:#fff}
.btn-more[disabled]{opacity:.6;cursor:progress}

/* Store and footer */
.store{padding-block:56px 64px}
.books{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:22px}
.books a{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px}
.books img{width:72px;aspect-ratio:384/621;object-fit:cover;background:#eef1ef;box-shadow:0 0 0 1px var(--rule)}
.bt{display:block;font:700 16px/1.2 var(--sans)}
.bp{display:block;margin-top:5px;font:400 11px/1 var(--mono);color:var(--steel)}
.books a:hover .bt{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px}
.foot{background:var(--mint);color:var(--ink)}
.foot-in{display:grid;gap:18px;padding-block:40px 64px}
.foot .wm{font:900 1.6rem/.9 var(--mark);text-transform:uppercase;letter-spacing:.01em}
.about{max-width:40rem;font:400 16px/1.45 var(--serif)}
.foot-links{display:flex;flex-wrap:wrap;gap:10px 26px}
.foot-links a{font:700 14px/1 var(--sans)}
.foot-links a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.25em}
.foot-topics{display:flex;flex-wrap:wrap;gap:8px 20px;padding-top:16px;border-top:1px solid rgba(26,25,24,.22)}
.foot-topics a{font:600 13px/1.2 var(--sans)}
.foot-topics a:hover{text-decoration:underline}
.copy-line{font:400 10px/1.4 var(--mono);letter-spacing:.1em}

/* Inner page heads */
.page-head{display:grid;gap:14px;padding-block:36px 26px}
.page-head .calls-note a{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.18em}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;padding-block:22px 0;font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.crumbs a{color:var(--ink-2)}
.crumbs a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px}

/* Calls to action index */
.ctl-wrap{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--rule)}
.js .ctl-wrap{top:var(--mini)}
.ctl{display:grid;gap:12px;padding-block:14px}
.ctl-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.field{flex:1 1 260px;display:flex;align-items:center;gap:8px;min-width:0;padding:0 12px;border:2px solid var(--ink);background:var(--paper)}
.field svg{width:16px;height:16px;flex:none;color:var(--steel)}
.field input{width:100%;min-width:0;padding:10px 0;border:0;background:none;font:500 15px/1.2 var(--sans);outline:0}
.field:focus-within{outline:2px solid var(--mint);outline-offset:2px}
.sel{display:flex;align-items:center;gap:8px}
.sel select{padding:10px 30px 10px 10px;border:2px solid var(--ink);background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231a1918' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 10px center;appearance:none;font:600 14px/1.2 var(--sans)}
.seg{display:inline-flex;border:2px solid var(--ink)}
.seg a{padding:9px 12px;font:600 14px/1.2 var(--sans)}
.seg a[aria-current=true]{background:var(--ink);color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:baseline;gap:6px;padding:7px 11px;border:1px solid rgba(26,25,24,.35);font:600 13.5px/1.2 var(--sans);transition:border-color .15s,background .15s}
.chip small{font:500 10px/1 var(--mono);color:var(--steel)}
.chip:hover{border-color:var(--ink)}
.chip[aria-current=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.chip[aria-current=true] small{color:var(--mint-3)}
.count{padding-block:14px 0;font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.cta-list{margin-top:4px}
.cta-row{display:grid;grid-template-columns:110px minmax(0,1fr) 210px;gap:28px;padding-block:26px;border-bottom:1px solid var(--rule)}
.cr-meta{display:grid;align-content:start;gap:8px}
.cr-main{display:grid;align-content:start;gap:8px;min-width:0}
.cr-who{font:700 clamp(1.25rem,1.9vw,1.5rem)/1.12 var(--sans);letter-spacing:-.015em;text-wrap:balance}
.cr-who a:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:.14em}
.cr-main .ask{max-width:46rem;font-size:17px}
.cr-extra{display:flex;flex-wrap:wrap;gap:6px 16px}
.cr-side{display:grid;align-content:start;justify-items:start;gap:10px}
.cr-side .btn{width:100%;text-align:center}
.ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:9px 12px;background:var(--paper);border:1px solid rgba(26,25,24,.35);font:600 14px/1.2 var(--sans)}
.ghost svg{width:15px;height:15px}
.ghost:hover{border-color:var(--ink)}
.empty{padding-block:40px;font:400 18px/1.5 var(--serif)}
.empty .ghost{width:auto;margin-top:14px}

/* A single call to action */
.cta-page{padding-bottom:24px}
.cp-head{display:grid;gap:12px;padding-block:18px 34px;border-bottom:1px solid var(--rule)}
.cp-who{font:700 clamp(2rem,4.6vw,3.5rem)/1.02 var(--sans);letter-spacing:-.03em;max-width:24ch;text-wrap:balance}
.cp-ask{max-width:42rem;font:400 clamp(1.2rem,1.9vw,1.5rem)/1.42 var(--serif)}
.cp-head .asklist{max-width:42rem;font-size:clamp(1.05rem,1.6vw,1.2rem)}
.cp-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:6px}
.cp-status .cd{font-size:12px}
.pill{display:inline-block;padding:3px 6px;border:1px solid var(--ink);font:600 9.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.cp-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-template-areas:"body contacts" "body rail";grid-template-rows:auto 1fr;align-items:start;gap:18px 48px;padding-block:30px 40px}
.cp-grid.noc{grid-template-areas:"body rail";grid-template-rows:auto}
.cp-contacts{grid-area:contacts}
.cp-body{grid-area:body;min-width:0}
.cp-rail{grid-area:rail}
.prose{max-width:42rem;margin-top:10px}
.prose p,.prose li{font:400 18px/1.6 var(--serif)}
.prose>p+p,.prose>p+ul,.prose>p+ol,.prose>ul+p,.prose>ol+p{margin-top:1em}
.prose ul,.prose ol{display:grid;gap:.5em;margin-top:.8em;padding-left:1.4em}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose li::marker{color:var(--mint)}
.prose li p{margin:0}
.prose strong{font-weight:650}
.prose a{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.15em;overflow-wrap:anywhere}
.prose a:hover{text-decoration-color:var(--ink)}
.cp-body .src{display:inline-block;margin-top:26px}
.cp-rail{display:grid;align-content:start;gap:18px}
.box{padding:18px;background:var(--mint-4);border-top:3px solid var(--mint)}
.box-h{font:700 16px/1.2 var(--sans)}
.box p{margin-top:8px;font:400 15px/1.45 var(--serif)}
.contacts{margin-top:8px}
.contacts li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding-block:11px;border-top:1px solid var(--rule)}
.contacts li:first-child{border-top:0}
.cv{display:grid;gap:3px;min-width:0}
.cv b{font:600 9.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--steel)}
.cv span{font:500 14.5px/1.35 var(--sans);overflow-wrap:anywhere}
.cv a{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.15em}
.cp{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;background:var(--paper);border:1px solid rgba(26,25,24,.35);font:600 12.5px/1 var(--sans)}
.cp svg{width:13px;height:13px}
.cp:hover{border-color:var(--ink)}
.cp.ok{background:var(--ink);color:#fff;border-color:var(--ink)}
.share{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.srccard{display:grid;gap:10px}
.srccard img{width:100%;aspect-ratio:3/2;object-fit:cover}
.srccard span{font:700 16px/1.25 var(--sans);text-wrap:balance}
.srccard:hover span{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px}
.related{padding-block:10px 56px}

/* Notes */
.notes{max-width:44rem;padding-bottom:64px}
.notes p,.notes li{font:400 17.5px/1.6 var(--serif)}
.notes p+p,.notes p+ol,.notes ol+p{margin-top:1em}
.notes ol{display:grid;gap:.6em;margin-top:.8em;padding-left:1.4em;list-style:decimal}
.notes li::marker{font:600 13px var(--mono);color:var(--steel)}
.notes a{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.15em}
.notes .rule{margin-top:34px;padding-top:24px;border-top:1px solid var(--ink)}

/* Search page and overlays */
.dlg{position:fixed;inset:0;z-index:90;overflow:auto;background:rgba(26,25,24,.5);overscroll-behavior:contain}
.dlg-menu{background:var(--paper)}
.dlg-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:18px;border-bottom:1px solid var(--rule)}
.dlg-top .wordmark{font-size:1.6rem}
.menu-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 40px;padding-block:28px 48px}
.menu-cols ul{display:grid;gap:4px;margin-top:10px}
.menu-cols a{display:inline-block;padding-block:6px;font:700 clamp(1.25rem,2.4vw,1.6rem)/1.15 var(--sans);letter-spacing:-.01em}
.menu-cols a:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:.14em}
.sp{background:var(--paper);padding-block:18px 26px;box-shadow:0 16px 48px rgba(0,0,0,.2)}
.sf{display:flex;align-items:center;gap:10px}
.sf .field{border-width:2px}
.sf .field input{padding:14px 0;font-size:clamp(1.05rem,2vw,1.35rem)}
.sstat{min-height:1.3em;margin-top:14px}
.results{display:grid;margin-top:4px;max-height:min(62vh,640px);overflow:auto}
.res{display:grid;gap:5px;padding:13px 10px;border-bottom:1px solid var(--rule)}
.res:hover,.res:focus-visible{background:var(--mint-4);outline:0}
.res-k{font:600 10px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.res-k.c{color:var(--ink)}
.res-k.c::before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;background:var(--mint)}
.res-t{font:700 17px/1.25 var(--sans)}
.hint{margin-top:12px;font:400 10px/1.5 var(--mono);color:var(--steel)}
.hint kbd{padding:1px 5px;border:1px solid var(--rule);font:inherit}

/* Tablet */
@media (max-width:1000px){
  .hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"lead lead" "left right"}
  .h-lead{grid-area:lead;padding:0 0 28px;border:0;border-bottom:1px solid var(--rule);margin-bottom:24px}
  .h-lead .img img{aspect-ratio:16/10}
  .h-left{grid-area:left}
  .h-right{grid-area:right;padding-left:24px;border-left:1px solid var(--rule)}
  .split{grid-template-columns:minmax(0,1fr)}
  .side-in{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:28px}
  .srow{grid-template-columns:160px minmax(0,1fr)}
  .calls-head{grid-template-columns:minmax(0,1fr) auto}
  .calls-head .calls-note{grid-column:1/-1;grid-row:2}
  .books{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cta-row{grid-template-columns:minmax(0,1fr) 200px;grid-template-areas:"meta meta" "main side"}
  .cr-meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
  .cr-main{grid-area:main}
  .cr-side{grid-area:side}
  .cp-grid{grid-template-columns:minmax(0,1fr) 280px;gap:18px 32px}
  .menu-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Phone */
@media (max-width:700px){
  body{font-size:15.5px}
  .band-in{padding-top:14px;gap:0 8px}
  .wordmark{font-size:clamp(1.3rem,6.2vw,1.9rem);line-height:.92;white-space:normal}
  .wordmark span{display:block;white-space:nowrap}
  .acts{gap:0}
  .acts .ib span,.mini .ib span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .ib{padding:8px 6px}
  .ib svg{width:20px;height:20px}
  .sub{margin-inline:2px;padding:8px 10px;font-size:13px}
  .sections{margin-top:12px;gap:6px 20px}
  .sections a{font-size:14.5px}
  .mini-wm{font-size:1rem}
  .hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"lead" "left" "right";padding-top:20px}
  .h-left{padding:0 0 22px;border-bottom:1px solid var(--rule);margin-bottom:20px}
  .h-right{padding:0;border:0}
  .lead-h{font-size:1.72rem}
  .srow{grid-template-columns:minmax(0,1fr) 92px;grid-template-areas:"text img" "cta cta";gap:12px 14px;padding-block:18px}
  .srow.noimg{grid-template-areas:"text" "cta"}
  .srow .img img{aspect-ratio:1/1}
  .stext h3{font-size:18px}
  .sdek{font-size:15px}
  .side-in{grid-template-columns:minmax(0,1fr)}
  .calls-head{grid-template-columns:minmax(0,1fr)}
  .calls-head .more{justify-self:start}
  .pair{grid-template-columns:minmax(0,1fr)}
  .cta-big{padding:20px 0 22px;border-right:0;border-bottom:1px solid var(--rule)}
  .cta-side{padding:20px 0 24px}
  .twos{grid-template-columns:minmax(0,1fr)}
  .older li{grid-template-columns:minmax(0,1fr)}
  .tsec{padding-top:44px}
  .tsec-grid{grid-template-columns:minmax(0,1fr);gap:22px}
  .ri{grid-template-columns:minmax(0,1fr) 88px;grid-template-areas:"date date" "text img";gap:8px 14px;padding-block:18px}
  .ri.noimg{grid-template-columns:minmax(0,1fr);grid-template-areas:"date" "text"}
  .ri .date{grid-area:date;padding:0}
  .ri-t{grid-area:text}
  .ri-img{grid-area:img}
  .ri-img img{aspect-ratio:1/1}
  .ri h3{font-size:17px}
  .ri .sdek{display:none}
  .books{gap:18px}
  .books a{grid-template-columns:56px minmax(0,1fr);gap:12px}
  .books img{width:56px}
  .ctl-row{gap:8px}
  .sel,.seg{flex:1 1 auto}
  .sel select{width:100%}
  .seg a{flex:1;text-align:center}
  .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut)}
  .chips::-webkit-scrollbar{display:none}
  .chip{flex:none}
  .cta-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"meta" "main" "side";gap:14px;padding-block:22px}
  .cr-side{grid-template-columns:1fr 1fr;justify-items:stretch;align-items:center}
  .cr-side .due-row,.cr-side .src{grid-column:1/-1}
  .cp-grid,.cp-grid.noc{grid-template-columns:minmax(0,1fr);grid-template-areas:"contacts" "body" "rail";grid-template-rows:auto;gap:24px;padding-top:22px}
  .cp-grid.noc{grid-template-areas:"body" "rail"}
  .js .ctl-wrap,.ctl-wrap{position:static}
  .prose p,.prose li{font-size:17px}
  .menu-cols{grid-template-columns:minmax(0,1fr);gap:22px}
  .sf .ib span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
}
@media (max-width:380px){.band .acts [data-open=search]{display:none}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.band,.mini,.foot,.ctl-wrap,.dlg{display:none!important}}

/* Model legislation */
.bills{padding-block:8px 48px}
.bill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px;margin-top:26px;border-top:1px solid var(--ink)}
.bill{display:grid;align-content:start;gap:10px;min-width:0;padding-block:22px 26px;border-bottom:1px solid var(--rule)}
.bill h3{font:700 21px/1.12 var(--sans);letter-spacing:-.012em;text-wrap:balance}
.bill-does{font:400 15.5px/1.45 var(--serif);color:var(--ink-2)}
.bill-st{display:grid;gap:4px;padding:10px 12px;background:var(--mint-4);border-left:3px solid var(--mint);font:600 13.5px/1.35 var(--sans);color:var(--ink)}
.bill-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:4px}
.bills-page{padding-top:0}
.bills-page .bill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px;margin-top:8px}
.bills-page .bill h3{font-size:26px}
.rail .date{margin-bottom:-2px}
@media (max-width:1000px){.bill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.bill-grid,.bills-page .bill-grid{grid-template-columns:minmax(0,1fr)}.bills-page .bill h3{font-size:22px}}
/* end model legislation */

/* Store pop-up */
.spop{position:fixed;right:24px;bottom:24px;z-index:60;width:min(380px,calc(100vw - 32px));background:var(--paper);color:var(--ink);border:1px solid var(--ink);box-shadow:8px 8px 0 var(--mint);padding:22px 22px 20px;transform:translateY(calc(100% + 48px));opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s ease}
.spop.on{transform:none;opacity:1}
.spop-x{position:absolute;top:8px;right:8px;width:36px;height:36px;display:grid;place-items:center;background:none;border:0;color:var(--ink-2)}
.spop-x:hover{color:var(--ink);background:var(--mint-4)}
.spop-x svg{width:16px;height:16px}
.spop .kicker{display:flex;align-items:center;gap:8px;color:var(--ink)}
.spop .kicker::before{content:"";width:8px;height:8px;background:var(--mint)}
.spop-h{margin-top:10px;padding-right:24px;font:700 1.35rem/1.15 var(--sans);letter-spacing:-.01em}
.spop-p{margin-top:8px;font:400 15px/1.45 var(--serif);color:var(--ink-2)}
.spop-g{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:16px}
.spop-g a{display:block;aspect-ratio:3/4;background:var(--mint-4);overflow:hidden;border:1px solid var(--rule)}
.spop-g img{width:100%;height:100%;object-fit:contain;padding:6px;transition:transform .25s ease}
.spop-g a:hover img{transform:scale(1.06)}
.spop-b{display:flex;align-items:center;gap:16px;margin-top:18px}
.spop-go{flex:1;display:block;padding:13px 16px;background:var(--ink);color:#fff;text-align:center;font:700 15px/1 var(--sans);transition:background .2s,color .2s}
.spop-go:hover{background:var(--mint);color:var(--ink)}
.spop-no{background:none;border:0;padding:6px 2px;font:600 14px/1 var(--sans);color:var(--ink-2);border-bottom:2px solid var(--rule)}
.spop-no:hover{color:var(--ink);border-color:var(--mint)}
@media (max-width:560px){.spop{right:16px;bottom:16px;padding:18px 18px 16px;box-shadow:6px 6px 0 var(--mint)}.spop-h{font-size:1.2rem}}
@media (prefers-reduced-motion:reduce){.spop{transition:opacity .2s ease;transform:none}.spop-g img{transition:none}}
@media print{.spop{display:none!important}}

/* About page */
.about-page{padding-top:0;padding-bottom:56px}
.about-prose h2{font:700 24px/1.15 var(--sans);letter-spacing:-.01em;margin-top:2.4em;padding-top:1.2em;border-top:1px solid var(--rule)}
.about-prose h2+p,.about-prose h2+ul,.about-prose h2+form{margin-top:.75em}
.about-prose .corr-log{font:400 14px/1.5 var(--mono);color:var(--ink-2)}
.foot .about a{color:inherit;text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.18em}
.topic-def{max-width:42rem;font:400 19px/1.55 var(--serif)}
.topic-src{font:400 11px/1.4 var(--mono);letter-spacing:.04em;color:var(--steel)}
.topic-src a{color:inherit;text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:.18em}
.cform{max-width:42rem;display:grid;gap:16px;margin-top:20px}
.cform label{display:block;margin-bottom:6px;font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.cform input,.cform textarea{display:block;width:100%;padding:12px 14px;border:1px solid var(--ink);border-radius:0;background:var(--paper);color:var(--ink);font:400 17px/1.5 var(--serif)}
.cform input:focus,.cform textarea:focus{outline:3px solid var(--mint);outline-offset:0}
.cform textarea{resize:vertical;min-height:170px}
.cf-btn{justify-self:start;padding:13px 24px;border:0;border-radius:0;background:var(--ink);color:var(--paper);font:700 14px/1 var(--sans);letter-spacing:.02em;cursor:pointer}
.cf-btn:hover,.cf-btn:focus-visible{background:var(--mint);color:var(--ink)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf-sent{max-width:42rem;margin-top:16px;padding:14px 16px;background:var(--mint-4);border-left:3px solid var(--mint);font:400 17px/1.5 var(--serif)}
@media (max-width:700px){.about-prose h2{font-size:21px}.topic-def{font-size:17px}}
