/* Research styles are isolated from the portfolio; the teaser uses its own class. */
body:has(main > .intro), body:has(main.manuscript) {margin:0;background:#142e21;color:#e1e5d4;font-family:'Space Grotesk',system-ui,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}
body:has(main > .intro) *, body:has(main.manuscript) * {box-sizing:border-box}
body:has(main > .intro) a, body:has(main.manuscript) a {color:inherit;text-underline-offset:4px}
body:has(main > .intro) a:focus-visible, body:has(main.manuscript) a:focus-visible, .research-spotlight a:focus-visible {outline:3px solid #8bc6b5;outline-offset:5px}
body:has(main > .intro) header, body:has(main.manuscript) header {max-width:1200px;margin:auto;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #47604c;font:12px/1.6 'DM Mono',monospace}
:where(body:has(main > .intro), body:has(main.manuscript)) .brand {text-decoration:none;font-weight:500;letter-spacing:.08em}
:where(body:has(main > .intro), body:has(main.manuscript)) .brand span {color:#a5b79f}
body:has(main > .intro) main, main.manuscript {max-width:960px;margin:0 auto;padding:32px 32px 70px}
:where(body:has(main > .intro), body:has(main.manuscript)) .crumb {font:12px/1.6 'DM Mono',monospace;color:#b4c7ae;margin:0 0 64px}
:where(body:has(main > .intro), body:has(main.manuscript)) .crumb a {text-decoration:none}
:where(body:has(main > .intro), body:has(main.manuscript)) .intro {padding:0 0 56px}
:where(body:has(main > .intro), body:has(main.manuscript)) .eyebrow {font:11px/1.8 'DM Mono',monospace;letter-spacing:.14em;color:#b7c6a5;margin:0 0 18px}
body:has(main > .intro) h1 {font-size:clamp(36px,5.4vw,62px);line-height:1.1;letter-spacing:-.045em;max-width:850px;margin:0 0 26px;font-weight:500}
:where(body:has(main > .intro), body:has(main.manuscript)) .lead {font-size:clamp(19px,2.4vw,24px);line-height:1.55;max-width:730px;color:#c2ceb9;margin-bottom:28px}
:where(body:has(main > .intro), body:has(main.manuscript)) .meta {display:flex;gap:12px 22px;flex-wrap:wrap;font:12px/1.7 'DM Mono',monospace;color:#bdceb5}
:where(body:has(main > .intro), body:has(main.manuscript)) .status {color:#e4d5a6}
:where(body:has(main > .intro), body:has(main.manuscript)) .byline {font-size:13px;line-height:1.8;color:#aebfa7;margin-top:25px;max-width:650px}
body:has(main > .intro) section:not(.intro) {padding:44px 0;border-top:1px solid #47604c}
body:has(main > .intro) h2 {font-size:clamp(26px,3.2vw,36px);letter-spacing:-.025em;line-height:1.2;font-weight:500;margin:0 0 22px}
body:has(main > .intro) h3 {font-size:18px;font-weight:500;line-height:1.4;margin-bottom:12px}
body:has(main > .intro) p {max-width:790px}
body:has(main > .intro) section>p:not(.eyebrow) {color:#cbd5c1}
:where(body:has(main > .intro), body:has(main.manuscript)) .finding {background:linear-gradient(90deg,#1d3d2c,transparent);padding-left:24px!important;padding-right:24px!important}
:where(body:has(main > .intro), body:has(main.manuscript)) .numbers {display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:30px 0 0}
:where(body:has(main > .intro), body:has(main.manuscript)) .numbers dt {font-size:32px;letter-spacing:-.03em;line-height:1.2}
:where(body:has(main > .intro), body:has(main.manuscript)) .numbers dd {margin:8px 0 0;font:11px/1.7 'DM Mono',monospace;color:#b4c4ac}
:where(body:has(main > .intro), body:has(main.manuscript)) .table-scroll {overflow-x:auto;margin:24px 0;max-width:100%}
body:has(main > .intro) table, main.manuscript table {width:100%;border-collapse:collapse;font-size:14px;line-height:1.5;min-width:530px}
:where(body:has(main > .intro), body:has(main.manuscript)) table caption {text-align:left;font-size:12px;line-height:1.7;padding-bottom:14px;color:#bac9b2}
body:has(main > .intro) td, body:has(main > .intro) th, main.manuscript td, main.manuscript th {padding:17px 15px;border-bottom:1px solid #47604c;text-align:left;font-weight:400}
body:has(main > .intro) thead th {font:11px/1.8 'DM Mono',monospace;background:#1d3d2c;color:#c7d9bc}
body:has(main > .intro) td {font-variant-numeric:tabular-nums;font-weight:500}
:where(body:has(main > .intro), body:has(main.manuscript)) td small {display:block;font-size:11px;font-weight:400;color:#aabc9f;margin-top:4px}
:where(body:has(main > .intro), body:has(main.manuscript)) .primary {background:#224836}
:where(body:has(main > .intro), body:has(main.manuscript)) .primary th {font-weight:600!important}
:where(body:has(main > .intro), body:has(main.manuscript)) figure {margin:30px 0}
:where(body:has(main > .intro), body:has(main.manuscript)) figure img {display:block;width:100%;height:auto;background:white}
:where(body:has(main > .intro), body:has(main.manuscript)) figcaption {font-size:12px;line-height:1.7;color:#aebfa7;margin-top:14px}
:where(body:has(main > .intro), body:has(main.manuscript)) .split-grid {display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:26px 0}
:where(body:has(main > .intro), body:has(main.manuscript)) .split-grid p {font-size:15px;color:#bacbb2}
:where(body:has(main > .intro), body:has(main.manuscript)) .actions {display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
:where(body:has(main > .intro), body:has(main.manuscript)) .button {display:inline-flex;align-items:center;gap:20px;background:#dce5ce;color:#142e21!important;padding:12px 18px;font-size:13px;font-weight:500;text-decoration:none;border:1px solid #dce5ce;min-height:48px}
:where(body:has(main > .intro), body:has(main.manuscript)) .button:hover {background:#b7c6a5}
:where(body:has(main > .intro), body:has(main.manuscript)) .button.secondary {background:transparent;color:#e1e5d4!important;border-color:#6c8766}
:where(body:has(main > .intro), body:has(main.manuscript)) .button.secondary:hover {background:#264633}
:where(body:has(main > .intro), body:has(main.manuscript)) .text-links {display:flex;gap:14px 24px;flex-wrap:wrap;font-size:13px;margin-bottom:25px}
:where(body:has(main > .intro), body:has(main.manuscript)) .note {font-size:12px;line-height:1.8;color:#aebfa7!important}
:where(body:has(main > .intro), body:has(main.manuscript)) .sources {padding-left:20px;font-size:14px}
:where(body:has(main > .intro), body:has(main.manuscript)) .sources li {padding:8px 0}
:where(body:has(main > .intro), body:has(main.manuscript)) .citation {font-size:14px}
body:has(main > .intro) footer, body:has(main.manuscript) footer {max-width:1100px;margin:0 auto;padding:28px 32px 40px;border-top:1px solid #47604c;font-size:11px;color:#aebfa7}
body:has(main > .intro) footer p, body:has(main.manuscript) footer p {max-width:830px}
body:has(main > .intro) footer>a, body:has(main.manuscript) footer>a {margin-right:25px}
:where(body:has(main > .intro), body:has(main.manuscript)) .skip {position:absolute;left:12px;top:-100px;padding:12px;background:#dce5ce;color:#142e21!important}
:where(body:has(main > .intro), body:has(main.manuscript)) .skip:focus {top:10px}
main.manuscript {max-width:900px;font-size:16px}
main.manuscript h1 {font-size:38px;line-height:1.15;margin:0 0 26px;letter-spacing:-.03em}
main.manuscript h2 {font-size:28px;line-height:1.2;margin:46px 0 22px}
main.manuscript h3 {font-size:21px;line-height:1.3;margin:28px 0 16px}
main.manuscript p {overflow-wrap:anywhere}
main.manuscript table {font-size:12px}
main.manuscript .table-scroll {padding-bottom:8px}
main.manuscript th {background:#1d3d2c}
main.manuscript .crumb {margin-bottom:45px}
.research-spotlight {display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center;padding:32px;border:1px solid #6f8b58;background:#1d3d2c;margin:0 0 72px}
.research-spotlight h3 {font-size:clamp(22px,2.7vw,32px);font-weight:500;letter-spacing:-.025em;line-height:1.25;margin:0 0 14px}
.research-spotlight p {font-size:15px;line-height:1.7;margin:0 0 12px;max-width:760px}
.research-spotlight .section-kicker {font:11px/1.8 'DM Mono',monospace;letter-spacing:.1em;color:#b7c6a5}
.research-spotlight__status {font-size:12px!important;color:#b7c6a5}
.research-spotlight>a {border-bottom:1px solid #8bc6b5;white-space:nowrap;padding:12px 0;font:13px/1.7 'DM Mono',monospace;color:#dfe7d2}
.research-spotlight>a:hover {color:#8bc6b5}
@media(max-width:640px) {
body:has(main > .intro) header, body:has(main.manuscript) header {padding:20px;gap:14px;font-size:10px}
:where(body:has(main > .intro), body:has(main.manuscript)) .brand span {display:none}
body:has(main > .intro) main, main.manuscript {padding:26px 20px 48px}
:where(body:has(main > .intro), body:has(main.manuscript)) .crumb {margin-bottom:42px}
:where(body:has(main > .intro), body:has(main.manuscript)) .intro {padding-bottom:36px}
:where(body:has(main > .intro), body:has(main.manuscript)) .finding {padding:30px 16px!important}
:where(body:has(main > .intro), body:has(main.manuscript)) .numbers {grid-template-columns:1fr 1fr;gap:24px}
:where(body:has(main > .intro), body:has(main.manuscript)) .split-grid {grid-template-columns:1fr;gap:15px}
:where(body:has(main > .intro), body:has(main.manuscript)) .actions {flex-direction:column}
:where(body:has(main > .intro), body:has(main.manuscript)) .button {justify-content:space-between}
:where(body:has(main > .intro), body:has(main.manuscript)) .table-scroll {margin-right:-4px}
.research-spotlight {grid-template-columns:1fr;padding:24px;gap:16px;margin-bottom:45px}
.research-spotlight>a {justify-self:start}
main.manuscript h1 {font-size:30px}
body:has(main > .intro) footer, body:has(main.manuscript) footer {padding:25px 20px}

}
@media print {
body:has(main > .intro), body:has(main.manuscript) {background:white;color:black}
:where(body:has(main > .intro), body:has(main.manuscript)) header, :where(body:has(main > .intro), body:has(main.manuscript)) .crumb, :where(body:has(main > .intro), body:has(main.manuscript)) .actions, :where(body:has(main > .intro), body:has(main.manuscript)) .skip, :where(body:has(main > .intro), body:has(main.manuscript)) footer {display:none!important}
main.manuscript, body:has(main > .intro) main {max-width:none;padding:0}
:where(body:has(main > .intro), body:has(main.manuscript)) .table-scroll {overflow:visible}
:where(body:has(main > .intro), body:has(main.manuscript)) .intro, :where(body:has(main > .intro), body:has(main.manuscript)) .finding, :where(body:has(main > .intro), body:has(main.manuscript)) section {background:none!important;color:black!important}
:where(body:has(main > .intro), body:has(main.manuscript)) p, :where(body:has(main > .intro), body:has(main.manuscript)) small, :where(body:has(main > .intro), body:has(main.manuscript)) figcaption, :where(body:has(main > .intro), body:has(main.manuscript)) th, :where(body:has(main > .intro), body:has(main.manuscript)) td {color:black!important}
:where(body:has(main > .intro), body:has(main.manuscript)) a {color:black!important}
:where(body:has(main > .intro), body:has(main.manuscript)) table {min-width:0!important}
:where(body:has(main > .intro), body:has(main.manuscript)) h2, :where(body:has(main > .intro), body:has(main.manuscript)) h3 {break-after:avoid}
:where(body:has(main > .intro), body:has(main.manuscript)) tr, :where(body:has(main > .intro), body:has(main.manuscript)) figure {break-inside:avoid}

}
