/* Additions for the audience paths. Loaded after site.css. */
.path-label { display: inline-block; margin-bottom: .4rem; padding: .3rem .6rem; background: var(--navy); color: var(--gold-light); font: 600 .68rem/1 var(--font-caps); letter-spacing: .12em; text-transform: uppercase; }
.hero h1.wide { max-width: 22ch; }
.read-time { color: var(--muted); font: .78rem/1.4 var(--font-caps); letter-spacing: .05em; }
.toc { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; margin: 1.6rem 0 0; padding: 0; list-style: none; font: .8rem/1.4 var(--font-caps); letter-spacing: .05em; }
.toc a { color: var(--navy); }
.otis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 1.6rem 0; background: var(--line); border: 1px solid var(--line); }
.otis div { background: #fff; padding: 1rem 1.1rem; }
.otis b { display: block; color: var(--navy); font: 600 1.02rem/1.3 var(--font-display); margin-bottom: .3rem; }
.otis span { display: block; font-size: .95rem; line-height: 1.55; }
.duty { border-top-color: var(--navy); }
.duty .source { display: block; margin-top: .6rem; color: var(--muted); font: .72rem/1.4 var(--font-caps); letter-spacing: .05em; }
.contrast .card:first-child { border-top-color: var(--line); }
.contrast .card h3 { font-style: italic; }
.plain { margin-top: .7rem; padding-top: .7rem; border-top: 1px solid var(--line-light); font-size: .98rem; }
.plain b { font: 600 .7rem/1.2 var(--font-caps); letter-spacing: .1em; text-transform: uppercase; color: var(--gold); display: block; margin-bottom: .2rem; }
.act-name { display: block; color: var(--muted); font: .74rem/1.4 var(--font-caps); letter-spacing: .05em; margin-bottom: .2rem; }
.options { counter-reset: opt; }
.options .card { position: relative; }
.options .card:before { counter-increment: opt; content: counter(opt); position: absolute; top: 1rem; right: 1.2rem; color: var(--gold); font: 600 1.6rem/1 var(--font-display); }
.options .card.recommended { border-top-color: var(--navy); background: #fbfaf7; }
.brief-list { list-style: none; padding: 0; margin: 1.2rem 0 0; border-top: 1px solid var(--line); }
.brief-list li { display: grid; grid-template-columns: 16rem minmax(0, 1fr); gap: 1.2rem; padding: .9rem 0; border-bottom: 1px solid var(--line); }
.brief-list li > a, .brief-list li > strong { font: 600 1.02rem/1.35 var(--font-display); color: var(--navy); }
.papers { list-style: none; padding: 0; margin: 1rem 0 0; counter-reset: paper; }
.papers li { counter-increment: paper; position: relative; padding: .8rem 0 .8rem 2.6rem; border-bottom: 1px solid var(--line); }
.papers li:before { content: counter(paper); position: absolute; left: 0; top: .75rem; color: var(--gold); font: 600 1.25rem/1 var(--font-display); }
.papers .meta { display: block; color: var(--muted); font-size: .95rem; }
.callout { margin: 1.8rem 0; padding: 1.2rem 1.4rem; background: #fff; border: 1px solid var(--line-light); border-left: 4px solid var(--gold); }
.callout p:last-child { margin-bottom: 0; }
.next-door { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.4rem 0; }
@media (max-width: 980px) { .otis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .otis { grid-template-columns: 1fr; } .brief-list li { grid-template-columns: 1fr; gap: .3rem; } }
/* Layout helpers (no inline styles: the site CSP blocks them) */
.spaced-top { margin-top: 1.4rem; }
.spaced-top-lg { margin-top: 1.8rem; }
.flush { margin: 0; }
.single-layout { padding-top: 2.5rem; padding-bottom: 4rem; }
.prose h2:first-child { margin-top: 0; }
.prose .grid { margin: 1.2rem 0; }
.prose table { margin: 1.2rem 0; }
.prev-next { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 3rem; padding-top: 1.4rem; border-top: 1px solid var(--line); }
.prev-next a { display: block; padding: .9rem 1rem; border: 1px solid var(--line-light); background: #fff; text-decoration: none; font: 600 1.02rem/1.3 var(--font-display); color: var(--navy); }
.prev-next a:hover { border-color: var(--gold); }
.prev-next span { display: block; margin-bottom: .25rem; color: var(--muted); font: .7rem/1.2 var(--font-caps); letter-spacing: .1em; text-transform: uppercase; }
.prev-next .pn-next { grid-column: 2; text-align: right; }
.case { margin: 1.6rem 0; padding: 1.3rem 1.4rem; background: #fff; border: 1px solid var(--line-light); border-top: 3px solid var(--gold); }
.case h3 { margin-top: 0; }
.case dl { margin: 0; display: grid; grid-template-columns: 9.5rem minmax(0, 1fr); gap: .5rem 1rem; }
.case dt { font: 600 .74rem/1.6 var(--font-caps); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); padding-top: .2rem; }
.case dd { margin: 0; }
.downloads { list-style: none; padding: 0; margin: 1rem 0; border-top: 1px solid var(--line); }
.downloads li { padding: .75rem 0; border-bottom: 1px solid var(--line); display: flex; flex-wrap: wrap; justify-content: space-between; gap: .4rem 1rem; }
.downloads .fmt { display: flex; gap: .8rem; font: 600 .74rem/1.6 var(--font-caps); letter-spacing: .08em; }
.letter { padding: 1.4rem 1.6rem; background: #fff; border: 1px solid var(--line); font-size: 1.02rem; white-space: pre-wrap; }
.key-points { padding-left: 1.2rem; }
.key-points li { margin: .35rem 0; }
.prop-index { list-style: none; padding: 0; margin: 1.4rem 0; counter-reset: prop; }
.prop-index li { counter-increment: prop; display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: .2rem 1rem; padding: 1.1rem 0; border-bottom: 1px solid var(--line); }
.prop-index li:before { content: counter(prop); grid-row: span 2; color: var(--gold); font: 600 1.8rem/1 var(--font-display); }
.prop-index a { font: 600 1.2rem/1.3 var(--font-display); color: var(--navy); }
.prop-index .src { color: var(--muted); font-size: .95rem; }
.version-note { display: inline-block; margin: .2rem 0 1rem; padding: .3rem .6rem; background: var(--pale); border: 1px solid var(--line); font: 600 .7rem/1.3 var(--font-caps); letter-spacing: .08em; text-transform: uppercase; color: var(--navy); }
@media (max-width: 620px) { .case dl { grid-template-columns: 1fr; } .prev-next { grid-template-columns: 1fr; } .prev-next .pn-next { grid-column: 1; text-align: left; } }
.content-layout > *, .single-layout > * { min-width: 0; }
.prose { overflow-wrap: break-word; }
.callout { overflow-wrap: anywhere; }
@media (max-width: 980px) { .content-layout { grid-template-columns: minmax(0, 1fr); } }
.local-nav a[aria-current="page"] { color: var(--navy); font-weight: 600; border-left: 3px solid var(--gold); padding-left: .6rem; }
/* Plain-language revision, 2026-10-26 */
.hero h1.statement { max-width: 30ch; font-size: clamp(2.2rem, 4.6vw, 3.5rem); }
.hero .lede + .lede { margin-top: 0; }
.prop-index li > a, .prop-index li > .src { grid-column: 2; }
.prop-index .plain-line { color: var(--ink); font-size: 1.02rem; font-style: italic; }
.compare { margin: 1.6rem 0; }
.compare table { background: #fff; font-size: .95rem; }
.compare td:first-child { color: var(--navy); font-weight: 500; }
.footnote-ref { font-size: .7em; line-height: 0; }
.footnote-ref a { text-decoration: none; }
.footnotes { margin-top: 2rem; padding-top: .8rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .85rem; line-height: 1.55; }
.footnotes p { margin: .3rem 0; }
.duty-origin { border: 1px solid var(--line-light); background: #fff; padding: 0 1.2rem; }
.duty-origin summary { cursor: pointer; padding: .8rem 0; color: var(--navy); font: 600 .8rem/1.3 var(--font-caps); letter-spacing: .08em; text-transform: uppercase; }
.duty-origin summary:hover { color: var(--gold); }
.duty-origin[open] summary { border-bottom: 1px solid var(--line-light); }
.duty-origin p { margin: .8rem 0 1rem; }
.key-terms { list-style: none; padding: 0; margin: 1.2rem 0; border-top: 1px solid var(--line); }
.key-terms li { padding: .6rem 0; border-bottom: 1px solid var(--line); }
.key-terms strong { color: var(--navy); }
.ask-list { margin: .5rem 0 0; padding-left: 1.2rem; }
.ask-list li { margin: .2rem 0; }
.stack .ask-list { list-style: disc; }
.stack .ask-list li { counter-increment: none; padding: .15rem 0; border: 0; position: static; }
.stack .ask-list li:before { content: none; }
