/* Keep newer footer markup within its column, even without a brand-logo class. */
.analysis-page .footer-brand img { width:52px; height:54px; max-width:100%; object-fit:contain; }
@media (max-width:620px) {
 .analysis-page .site-footer { grid-template-columns:minmax(0,1fr); }
 .analysis-page .site-footer > div { min-width:0; }
 .analysis-page .site-header .brand-lockup { min-width:0; flex-direction:column; align-items:flex-start; white-space:normal; }
}
.analysis-heading { max-width:1280px; margin:auto; padding:3rem 5vw 2.5rem; }
.atlas-back { display:inline-block; margin-bottom:2rem; color:var(--green); font-size:1rem; text-underline-offset:.25em; }
.analysis-heading .eyebrow { font-size:.875rem; margin-bottom:1rem; }
.analysis-heading h1 { max-width:1000px; font-size:clamp(2.5rem,6vw,5rem); line-height:1.05; margin-bottom:1rem; overflow-wrap:break-word; }
.analysis-deck { font:400 clamp(1.5rem,3vw,2.3rem)/1.2 var(--serif); color:var(--green); margin:0 0 1rem; }
.analysis-byline { font-size:.875rem; color:#52645e; }
.analysis-layout { max-width:1280px; margin:0 auto; display:grid; grid-template-columns:240px minmax(0,760px); gap:4rem; padding:0 5vw 5rem; align-items:start; }
.analysis-sidebar nav { display:flex; flex-direction:column; gap:0; border-top:2px solid var(--green); padding-top:.8rem; }
.analysis-sidebar nav a { display:block; font-size:1rem; padding:.4rem 0; color:var(--forest); text-decoration:underline; text-underline-offset:.25em; }
.analysis-figure { display:block; margin-top:2rem; font-size:.875rem; text-underline-offset:.2em; }
.analysis-figure img { width:100%; height:auto; display:block; margin-bottom:.7rem; }
.figure-note { font-size:.875rem; color:#52645e; line-height:1.5; }
.analysis-body { min-width:0; }
.analysis-body p { font-size:1rem; line-height:1.8; margin:0 0 1.3rem; }
.analysis-body .analysis-disclosure { border-left:3px solid var(--green); padding:1rem 1.25rem; background:#e5efdf; font-size:.875rem; line-height:1.6; }
.analysis-body section { margin-top:3rem; }
.analysis-body h2 { font-size:clamp(1.9rem,3.2vw,2.5rem); line-height:1.13; margin-bottom:1.2rem; }
.analysis-body h3 { font-family:var(--sans); font-weight:600; font-size:1.1rem; line-height:1.4; margin:0 0 .5rem; }
.analysis-body .eyebrow { font-size:.875rem; margin-bottom:.6rem; }
.analysis-moves { padding-left:1.6rem; }
.analysis-moves li { padding-left:.5rem; margin:0 0 1.5rem; }
.analysis-moves li::marker { color:var(--green); font-weight:600; }
.citation { color:var(--green); font-size:.9em; font-weight:600; text-underline-offset:.2em; white-space:nowrap; }
.reference-list { padding-left:1.5rem; }
.reference-list li { padding-left:.3rem; margin:0 0 1.2rem; }
.reference-list a { color:var(--forest); line-height:1.5; text-underline-offset:.25em; overflow-wrap:anywhere; }
.reference-list p, .analysis-body .source-note { font-size:.875rem; line-height:1.6; color:#52645e; }
.reference-list p { margin:.4rem 0 0; }
.paper-request { background:var(--navy); color:white; padding:2.2rem; border-top:5px solid var(--bright); }
.paper-request .eyebrow { color:var(--bright); }
.paper-request .button { white-space:normal; height:auto; max-width:100%; text-align:left; font-size:1rem; line-height:1.5; }
.paper-request .request-note { margin:1rem 0 0; font-size:.875rem; color:#dcefdc; }
.request-questions { margin:0 0 1.5rem; padding-left:1.4rem; }
.request-questions li { margin:.55rem 0; padding-left:.2rem; line-height:1.55; }
.request-questions li::marker { color:var(--bright); }
.analysis-page a:focus-visible { outline:3px solid var(--green); outline-offset:4px; }
.skip-link { position:fixed; top:-10rem; left:1rem; padding:1rem; background:white; z-index:100; }
.skip-link:focus { top:1rem; }
@media(max-width:900px) {
 .analysis-layout { grid-template-columns:1fr; gap:1rem; }
 .analysis-sidebar nav { flex-direction:row; flex-wrap:wrap; column-gap:1.2rem; }
 .analysis-sidebar nav a { min-height:44px; display:inline-flex; align-items:center; }
 .analysis-figure { max-width:200px; }
 .figure-note { max-width:360px; }
 .analysis-heading { padding-top:2rem; }
 .paper-request { padding:1.5rem; }
}
@media print {
 .site-header,.site-footer,.analysis-sidebar,.skip-link,.atlas-back { display:none; }
 .analysis-layout { display:block; padding:0; max-width:none; }
 .analysis-heading { padding:1rem 0; }
 .analysis-body section { break-inside:auto; }
 .analysis-body h2,.analysis-body h3 { break-after:avoid; }
 .paper-request { background:white; color:black; border:1px solid black; }
 .paper-request .eyebrow,.paper-request .request-note { color:black; }
}

.conversion-actions { display:flex; align-items:center; gap:1.3rem; flex-wrap:wrap; margin-top:1.5rem; }
.conversion-actions .button,.project-next .button { white-space:normal; font-size:1rem; line-height:1.5; min-height:48px; text-align:left; }
.project-next { border-top:4px solid var(--green); background:#e4f0e0; padding:2rem; }
.project-next .next-note { font-size:.875rem; margin-top:1.2rem; }
.decision-focus { border-top:4px solid var(--green); padding-top:1.5rem; }
.table-scroll { overflow-x:auto; margin:1.5rem 0; }
.table-scroll table { border-collapse:collapse; width:100%; min-width:580px; font-size:1rem; }
.table-scroll th { background:var(--navy); color:white; text-align:left; }
.table-scroll th,.table-scroll td { padding:.9rem; border-bottom:1px solid var(--line); vertical-align:top; line-height:1.55; }
.table-scroll caption { text-align:left; margin-bottom:.8rem; font-size:.875rem; }
.analysis-sidebar nav a[href="#decision"] { font-weight:600; }
@media(max-width:620px) { .project-next { padding:1.4rem; } }
