/* Shared editorial structure; each site keeps its own fonts and color tokens. */
.publication-page{--article-width:680px}.publication-page .site-header{z-index:30}.publication-page .desktop-nav a[aria-current=page]{color:var(--accent)}.publication-page .desktop-nav a[aria-current=page]::after{transform:scaleX(1)}.draft-bar{border-bottom:1px solid var(--border);background:var(--surface);font:11px/1.6 var(--sans)}.draft-bar>.container{display:flex;justify-content:space-between;gap:20px;padding-block:11px}.draft-bar a{text-decoration:none}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:48px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.publication-masthead{padding-block:35px 55px;border-bottom:1px solid var(--border)}.publication-masthead>.eyebrow{color:var(--muted);margin-bottom:25px}.publication-masthead h1{font:clamp(52px,6.7vw,96px)/1.05 var(--serif);letter-spacing:-.035em;max-width:15ch}.publication-intro{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-top:32px}.publication-intro>p{font:18px/1.75 var(--sans);max-width:54ch}.publication-intro>span{font:48px/1 var(--serif);color:var(--accent);white-space:nowrap}.publication-list{padding-bottom:30px}.publication-item{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center;border-bottom:1px solid var(--border);padding-block:55px}.publication-photo{display:block;overflow:hidden;background:var(--surface)}.publication-photo img{aspect-ratio:3/2;object-fit:cover;transition:transform .6s ease}.publication-description>.eyebrow{color:var(--muted);margin-bottom:18px}.publication-description h2{font:40px/1.15 var(--serif);letter-spacing:-.025em;max-width:24ch}.publication-description h2 a{text-decoration:none}.publication-description h2 a:hover{color:var(--accent)}.publication-description>p:not(.eyebrow){font:16px/1.8 var(--sans);max-width:48ch;margin-top:20px}.item-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding-top:20px;border-top:1px solid var(--border);font:12px/1.5 var(--sans)}.item-foot>span{color:var(--muted)}.item-foot>a{text-decoration:none;padding-block:8px}.item-foot>a>span{margin-left:15px;font-size:20px}.archive-note{display:grid;grid-template-columns:.7fr 1.5fr 1fr;gap:35px;align-items:start;padding-block:35px 80px}.archive-note>p:not(.eyebrow){font:14px/1.8 var(--sans);color:var(--muted);max-width:53ch}.archive-note .text-link{justify-self:end;font-size:12px}
.article-heading{padding-block:35px 55px;border-bottom:1px solid var(--border)}.article-title-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:70px;align-items:center}.article-title-grid .eyebrow{color:var(--accent);margin-bottom:23px}.article-title-grid h1{font:clamp(42px,4.7vw,66px)/1.1 var(--serif);letter-spacing:-.025em;max-width:19ch}.article-deck{font:18px/1.7 var(--sans);margin-top:25px;max-width:55ch}.article-byline{border-top:1px solid var(--border);padding-top:22px;margin-top:28px;font:12px/1.7 var(--sans)}.article-byline>a{display:block;text-decoration:none}.article-byline>a:hover{text-decoration:underline}.article-byline>span{display:block;color:var(--muted);font-size:11px;margin-top:5px}.article-title-grid figure{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.article-title-grid img{aspect-ratio:4/4.8;object-fit:cover}.article-title-grid figcaption{font:10px/1.6 var(--sans);color:var(--muted);padding-top:8px;margin:0}.article-layout{display:grid;grid-template-columns:240px minmax(0,var(--article-width));gap:90px;justify-content:start;align-items:start;padding-block:65px}.article-sidebar{position:sticky;top:calc(var(--nav-height) + 30px)}.article-sidebar>.eyebrow{margin-bottom:24px;color:var(--muted)}.article-toc{display:grid;border-top:1px solid var(--border)}.article-toc a{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:baseline;border-bottom:1px solid var(--border);padding-block:16px;text-decoration:none;font:13px/1.6 var(--sans);color:var(--muted)}.article-toc a>span{font-size:10px;letter-spacing:.04em}.article-toc a:hover,.article-toc a[aria-current=location]{color:var(--accent)}.article-toc a[aria-current=location]{border-left:2px solid var(--accent);padding-left:12px}.article-body{min-width:0;font:17px/1.9 var(--reading);color:var(--ink)}.article-section{padding:0 0 38px;scroll-margin-top:calc(var(--nav-height) + 26px)}.article-section h2{font:32px/1.2 var(--serif);letter-spacing:-.015em;margin-bottom:23px}.article-section p{margin-bottom:23px;overflow-wrap:break-word}.article-section p:last-child{margin-bottom:0}.article-pullquote{border-block:1px solid var(--border);padding:35px 0;margin:0 0 42px}.article-pullquote blockquote{font:36px/1.25 var(--serif);color:var(--accent);letter-spacing:-.015em;max-width:25ch}.article-pullquote figcaption{font:11px/1.7 var(--sans);margin-top:20px;color:var(--muted);max-width:50ch}.article-sources{scroll-margin-top:calc(var(--nav-height) + 26px);border-top:1px solid var(--border);padding-top:30px;font:14px/1.8 var(--sans)}.article-sources h2{font:28px/1.2 var(--serif);margin-bottom:20px}.article-sources>p{color:var(--muted)}.article-sources ol{margin:25px 0;padding-left:22px}.article-sources li{padding-left:5px;margin-bottom:24px}.article-sources li strong{font-weight:500;color:var(--ink)}.article-sources li p{margin-top:7px;color:var(--muted)}.article-sources li a{display:inline-block;margin-top:8px;font-size:12px}.review-notes{border:1px solid var(--border);padding:18px 22px;background:var(--surface);margin-top:30px}.review-notes summary{cursor:pointer;font:13px/1.6 var(--sans)}.review-notes p{font:13px/1.8 var(--sans);margin-top:17px}.article-contact{margin-top:40px;padding-top:25px;border-top:1px solid var(--border);display:flex;gap:25px;justify-content:space-between;align-items:center;font:13px/1.6 var(--sans)}.article-contact .text-link{font-size:13px}.article-next{padding-block:40px 75px;border-top:1px solid var(--border)}.article-next>.eyebrow{color:var(--muted);margin-bottom:22px}.article-next>a:not(.back-to-index){display:flex;justify-content:space-between;gap:30px;font:36px/1.25 var(--serif);text-decoration:none;max-width:950px}.article-next>a:hover{color:var(--accent)}.article-next .back-to-index{display:inline-block;font:13px/1.6 var(--sans);margin-top:30px}.jmw .publication-masthead h1,.jmw .article-title-grid h1{font-weight:600}.jmw .publication-description h2,.jmw .article-section h2,.jmw .article-next>a:not(.back-to-index){font-weight:600}.jmw .publication-masthead{border-bottom:3px solid var(--ink)}.jmw .publication-photo img{object-position:58% center}.jmw .article-title-grid img{aspect-ratio:4/4;object-position:58% center}.las .publication-item:nth-child(2) .publication-photo img{object-position:70% center}.las .article-title-grid img{object-position:70% center}.publication-page .mobile-menu nav a[aria-current=page]{color:var(--accent);text-decoration:underline}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.publication-photo:hover img{transform:scale(1.035)}}
@media(max-width:1100px){.article-layout{grid-template-columns:200px minmax(0,1fr);gap:50px}.article-title-grid{gap:40px;grid-template-columns:1.5fr 1fr}.publication-item{gap:40px}.archive-note{grid-template-columns:.7fr 1.5fr}.archive-note .text-link{grid-column:2;justify-self:start}}
@media(max-width:700px){.draft-bar>.container{font-size:10px;padding-block:9px}.draft-bar a{display:none}.publication-masthead,.article-heading{padding-block:25px 35px}.breadcrumbs{font-size:11px;gap:9px;margin-bottom:32px}.publication-masthead>.eyebrow{font-size:9px;max-width:35ch;margin-bottom:18px}.publication-masthead h1{font-size:clamp(43px,12vw,62px)}.publication-intro{gap:20px;margin-top:25px;align-items:start}.publication-intro>p{font-size:15px;line-height:1.75}.publication-intro>span{font-size:23px;padding-top:4px}.publication-item{grid-template-columns:1fr;gap:25px;padding-block:35px}.publication-photo img{aspect-ratio:3/2}.publication-description>.eyebrow{font-size:9px;margin-bottom:14px}.publication-description h2{font-size:34px;max-width:23ch}.publication-description>p:not(.eyebrow){font-size:15px;margin-top:18px}.item-foot{font-size:11px;margin-top:22px;padding-top:14px}.archive-note{grid-template-columns:1fr;gap:18px;padding-block:25px 55px}.archive-note .text-link{grid-column:1}.archive-note>p:not(.eyebrow){font-size:13px}.article-title-grid{grid-template-columns:1fr;gap:28px}.article-title-grid .eyebrow{font-size:10px;margin-bottom:17px}.article-title-grid h1{font-size:clamp(37px,10.2vw,52px);max-width:19ch}.article-deck{font-size:16px;margin-top:22px;line-height:1.75}.article-byline{font-size:11px;padding-top:18px;margin-top:25px}.article-byline>span{font-size:10px}.article-title-grid img,.jmw .article-title-grid img{aspect-ratio:16/10;max-height:260px;object-position:center 40%}.las .article-title-grid img{object-position:70% center}.article-layout{grid-template-columns:1fr;gap:35px;padding-block:30px 45px}.article-sidebar{position:static}.article-sidebar>.eyebrow{font-size:10px;margin-bottom:15px}.article-toc a{font-size:12px;padding-block:13px}.article-body{font-size:15px;line-height:1.9}.article-section{padding-bottom:32px}.article-section h2{font-size:28px;margin-bottom:20px}.article-section p{margin-bottom:20px}.article-pullquote{padding-block:28px;margin-bottom:35px}.article-pullquote blockquote{font-size:31px}.article-pullquote figcaption{font-size:10px}.article-sources{font-size:13px}.article-sources h2{font-size:27px}.review-notes{padding:17px}.article-contact{display:block}.article-contact .text-link{margin-top:12px}.article-next{padding-block:32px 50px}.article-next>a:not(.back-to-index){font-size:29px;gap:20px}.article-next>.eyebrow{font-size:10px}.publication-page .footer-bottom{margin-top:35px}}
@media print{.draft-bar{display:block}.article-sidebar,.article-next,.article-contact,.review-notes{display:none}.article-layout{display:block}.article-title-grid{display:block}.article-title-grid figure{max-width:250px;margin-top:20px}.article-body{max-width:none}.publication-item{break-inside:avoid}}

/* The article scroll margin already accounts for the sticky navigation. */
html:has(.publication-page){scroll-padding-top:0}
