:root{
  --paper:#F7F5F0;--paper-warm:#EFEBE3;--ink:#1A1C1E;--ink-soft:#4A4F55;
  --navy:#17293F;--sage:#7C8B7A;--bronze:#9A7548;--rule:#DCD6CA;
  --serif:"Newsreader",Georgia,serif;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --gutter:clamp(1.25rem,5vw,4.5rem);--band:clamp(3.5rem,7vw,6.5rem);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.015em;margin:0}
p{margin:0}
a{color:inherit}
.skip{position:absolute;left:-9999px}
.skip:focus{left:var(--gutter);top:1rem;z-index:99;background:var(--navy);color:var(--paper);padding:.6rem 1rem}
:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}
.wrap{max-width:1140px;margin:0 auto;padding-inline:var(--gutter)}
.band{padding-block:var(--band)}
.eyebrow{font-size:.6875rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-bottom:1.25rem;display:block}
.masthead{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;padding-block:1.75rem;border-bottom:1px solid var(--rule)}
.mark{font-family:var(--serif);font-size:1.25rem;text-decoration:none}
.mark span{color:var(--ink-soft);font-family:var(--sans);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;margin-left:.75rem}
.masthead nav{display:flex;gap:2rem;flex-wrap:wrap}
.masthead nav a{font-size:.875rem;text-decoration:none;color:var(--ink-soft);padding-bottom:2px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.masthead nav a:hover,.masthead nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--bronze)}
@media (max-width:640px){.masthead nav{gap:1.25rem}}
.crumb{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding-top:2.5rem}
.crumb a{text-decoration:none;border-bottom:1px solid var(--rule)}
.crumb a:hover{border-bottom-color:var(--bronze)}
.crumb span{margin-inline:.6rem;color:var(--rule)}
.intro{padding-block:clamp(2.5rem,6vw,4.5rem) clamp(2rem,4vw,3rem)}
.intro h1{font-size:clamp(2rem,4.6vw,3.25rem);line-height:1.12;max-width:20ch;font-weight:300}
.intro .lede{margin-top:1.75rem;max-width:58ch;font-size:1.125rem;color:var(--ink-soft)}
.hubs{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:3rem}
.hub{background:var(--paper);padding:2.25rem 1.75rem;text-decoration:none;display:block;transition:background .2s}
.hub:hover{background:var(--paper-warm)}
.hub .tick{width:1.75rem;height:2px;background:var(--sage);display:block;margin-bottom:1.5rem}
.hub h2{font-size:1.1875rem;margin-bottom:.85rem;line-height:1.3}
.hub p{font-size:.9375rem;color:var(--ink-soft)}
.hub .count{display:block;margin-top:1.5rem;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze)}
.entries{border-top:1px solid var(--rule);margin-top:3rem}
.entry{display:block;text-decoration:none;padding:2rem 0;border-bottom:1px solid var(--rule);transition:padding-left .25s}
.entry:hover{padding-left:.75rem}
.entry h3{font-size:clamp(1.25rem,2.4vw,1.625rem);line-height:1.25;max-width:32ch;margin-bottom:.65rem}
.entry p{font-size:.9375rem;color:var(--ink-soft);max-width:62ch}
.entry .meta{display:block;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze);margin-bottom:1rem}
.article{max-width:38rem;margin:0 auto;padding-block:clamp(2rem,5vw,3rem) var(--band)}
.article h1{font-size:clamp(1.9rem,4.2vw,2.75rem);line-height:1.15;font-weight:300;margin-bottom:1.5rem}
.article .standfirst{font-size:1.1875rem;color:var(--ink-soft);margin-bottom:2rem}
.article p{margin-bottom:1.35rem}
.article h2{font-size:1.375rem;margin-top:3rem;margin-bottom:1rem;line-height:1.3}
.article ul{margin:0 0 1.35rem;padding-left:1.1rem}
.article li{margin-bottom:.5rem;color:var(--ink-soft)}
.article .beat{font-family:var(--serif);font-size:1.375rem;line-height:1.4;color:var(--navy);margin-block:2.25rem;max-width:28ch}
.byline{display:flex;align-items:center;gap:.9rem;padding-block:1.5rem;border-block:1px solid var(--rule);margin-bottom:2.5rem}
.byline .initials{width:2.75rem;height:2.75rem;flex:none;border-radius:50%;background:var(--navy);color:var(--paper);font-family:var(--serif);font-size:1rem;display:flex;align-items:center;justify-content:center;letter-spacing:.02em}
.byline .who{font-size:.9375rem;font-weight:500}
.byline .who a{text-decoration:none;border-bottom:1px solid var(--rule)}
.byline .who a:hover{border-bottom-color:var(--bronze)}
.byline .role{font-size:.8125rem;color:var(--ink-soft)}
.authorbox{margin-top:3.5rem;padding:2rem;background:var(--paper-warm);border:1px solid var(--rule)}
.authorbox .eyebrow{margin-bottom:1rem}
.authorbox h3{font-size:1.125rem;margin-bottom:.75rem}
.authorbox p{font-size:.9375rem;color:var(--ink-soft);margin-bottom:1rem}
.authorbox a{font-size:.875rem;text-decoration:none;border-bottom:1px solid var(--rule)}
.authorbox a:hover{border-bottom-color:var(--bronze)}
.disclaimer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--rule);font-size:.8125rem;color:var(--ink-soft)}
.disclaimer strong,.refs strong{display:block;font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze);font-weight:600;margin-bottom:.85rem}
.refs{margin-top:2.5rem;font-size:.8125rem;color:var(--ink-soft)}
.refs ol{padding-left:1.2rem;margin:0}
.refs li{margin-bottom:.6rem}
.refs a{word-break:break-word}
.updated{font-size:.75rem;color:var(--ink-soft);margin-top:2rem;letter-spacing:.04em}
footer{padding-block:3.5rem;border-top:1px solid var(--rule);font-size:.8125rem;color:var(--ink-soft)}
footer p{max-width:78ch;margin-bottom:1rem}
footer .credential{font-family:var(--serif);font-size:1rem;color:var(--ink);margin-bottom:1.5rem}
.band--tint{background:var(--paper-warm)}
.band--ink{background:var(--navy);color:#EDE9E1}
.band--ink .eyebrow{color:#B99A6E}
.band--ink h2{color:#F2EEE6}
.band--ink p{color:#C3CCD7}
.hero{padding-block:clamp(4rem,11vw,9rem) clamp(3.5rem,8vw,7rem)}
.hero h1{font-size:clamp(2.1rem,5.4vw,4rem);line-height:1.1;max-width:19ch;font-weight:300}
.hero h1 em{font-style:normal;display:block;color:var(--navy);font-weight:400}
.hero .lede{margin-top:2.25rem;max-width:56ch;font-size:1.125rem;color:var(--ink-soft)}
.hero .sub{margin-top:1.25rem;max-width:52ch;color:var(--ink-soft)}
.hero-actions{margin-top:3rem;display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.btn{display:inline-block;background:var(--navy);color:var(--paper);text-decoration:none;font-size:.875rem;font-weight:500;padding:.95rem 1.9rem;border:1px solid var(--navy);transition:background .2s,color .2s;cursor:pointer;font-family:var(--sans)}
.btn:hover{background:transparent;color:var(--navy)}
.btn--light{background:transparent;color:#EDE9E1;border-color:#5A6B80}
.btn--light:hover{background:#EDE9E1;color:var(--navy);border-color:#EDE9E1}
.quiet-link{font-size:.875rem;color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:2px}
.quiet-link:hover{border-bottom-color:var(--bronze);color:var(--ink)}
.status{margin-top:3.5rem;padding-top:1.25rem;border-top:1px solid var(--rule);font-size:.8125rem;color:var(--ink-soft);max-width:60ch}
.cols{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:clamp(2rem,6vw,5rem)}
@media (max-width:820px){.cols{grid-template-columns:1fr;gap:2rem}}
.cols h2{font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.2;max-width:22ch}
.recognition{max-width:60ch}
.recognition ul{margin:0;padding:0}
.recognition li{list-style:none;padding:1.25rem 0;border-bottom:1px solid var(--rule);color:var(--ink-soft)}
.recognition li:first-child{padding-top:0}
.recognition strong{color:var(--ink);font-weight:500}
.pullquote{margin-top:2.75rem;font-family:var(--serif);font-size:clamp(1.5rem,3.2vw,2.1rem);line-height:1.3;color:var(--navy);max-width:16ch}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1px;background:var(--rule);margin-top:3rem;border:1px solid var(--rule)}
.card{background:var(--paper-warm);padding:2.25rem 1.75rem;display:block;text-decoration:none;color:inherit;transition:background .2s}
a.card:hover{background:var(--paper)}
.card h3{font-size:1.1875rem;margin-bottom:1rem;line-height:1.3}
.card .tick{width:1.75rem;height:2px;background:var(--sage);display:block;margin-bottom:1.5rem}
.card p{font-size:.9375rem;color:var(--ink-soft)}
.card .more{display:block;margin-top:1.5rem;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze)}
.path{margin-top:3rem;position:relative;padding-left:2rem}
.path::before{content:"";position:absolute;left:5px;top:.6rem;bottom:.6rem;width:1px;background:#3E5164}
.path li{list-style:none;position:relative;padding:.85rem 0}
.path li::before{content:"";position:absolute;left:-2rem;top:1.35rem;width:11px;height:11px;border-radius:50%;background:var(--navy);border:1px solid #5A6B80}
.path li:last-child::before{background:#B99A6E;border-color:#B99A6E}
.path .role{font-family:var(--serif);font-size:1.25rem;color:#F2EEE6}
.path .place{display:block;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;color:#93A3B5;margin-top:.3rem}
.contrast{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:clamp(2rem,5vw,4rem);margin-top:3rem}
.contrast ul{margin:0;padding:0}
.contrast li{list-style:none;padding:.7rem 0;font-size:.9875rem;border-bottom:1px solid var(--rule)}
.contrast .head{font-size:.6875rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem;display:block}
.contrast .no .head{color:var(--ink-soft)}
.contrast .no li{color:var(--ink-soft)}
.contrast .yes .head{color:var(--bronze)}
.contrast .yes li{color:var(--ink);font-weight:500}
.steps{margin-top:3rem}
.step{display:grid;grid-template-columns:4rem minmax(0,1fr);gap:1.5rem;padding:1.75rem 0;border-top:1px solid var(--rule)}
.step:last-child{border-bottom:1px solid var(--rule)}
.step .num{font-family:var(--serif);font-size:1.5rem;color:var(--bronze);line-height:1.2}
.step h3{font-size:1.125rem;margin-bottom:.5rem}
.step p{font-size:.9375rem;color:var(--ink-soft);max-width:62ch}
@media (max-width:560px){.step{grid-template-columns:2.5rem 1fr;gap:1rem}}
.signup{max-width:36rem}
.field{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}
.field label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#93A3B5;font-weight:600}
.field input{background:transparent;border:0;border-bottom:1px solid #3E5164;color:#F2EEE6;font-family:var(--sans);font-size:1rem;padding:.6rem 0}
.field input:focus{border-bottom-color:#B99A6E;outline:none}
.form-note{font-size:.8125rem;color:#93A3B5;margin-top:1.5rem;max-width:52ch}
.hp{position:absolute;left:-9999px}
.recognition li a{display:block;text-decoration:none;color:inherit;position:relative;transition:padding-left .25s}
.recognition li a:hover{padding-left:.6rem}
.recognition li a .go{display:block;margin-top:.6rem;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze);opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s}
.recognition li a:hover .go,.recognition li a:focus-visible .go{opacity:1;transform:none}
@media (hover:none){.recognition li a .go{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.recognition li a,.recognition li a .go{transition:none}.recognition li a .go{opacity:1;transform:none}}
.signpost{display:flex;align-items:center;justify-content:space-between;gap:clamp(1.5rem,4vw,3rem);flex-wrap:wrap;margin-top:2.5rem;padding:2rem 1.75rem;border:1px solid var(--rule);background:var(--paper)}
.signpost h3{font-size:1.1875rem;margin-bottom:.65rem}
.signpost p{font-size:.9375rem;color:var(--ink-soft);max-width:56ch}
.signpost .btn{flex:none}
@media (max-width:640px){.signpost{padding:1.75rem 1.5rem}.signpost .btn{width:100%;text-align:center}}
.form-status{font-size:.875rem;margin-top:1.25rem;min-height:1px}
.form-status.is-ok{color:#B99A6E}
.form-status.is-err{color:#E8A9A0}
#signup-btn[disabled]{opacity:.6;cursor:default}
