/* Scoped feature treatments built on the shared Ledger long-read layout. */
.mohair-article { padding: 24px var(--gutter) 64px; }
.mohair-article .article-wrap { padding: 0; }
.mohair-article .article-hero-figure { width: 100%; margin-inline: auto; }
.mohair-article .article-hero-img { aspect-ratio: auto; height: auto; object-fit: contain; }
.mohair-article figcaption { margin-top: 12px; font: 12px/1.6 'DM Sans', sans-serif; color: var(--ink-muted); }
.mohair-article .article-body { overflow-wrap: break-word; }
.mohair-article .side-card h3, .mohair-article .summary-box h3 { margin-top: 0; }
.mohair-article .the-brief h3 { font: 700 18px/1.4 'DM Sans', sans-serif; }
.mohair-article .the-brief li { font: 14px/1.65 'DM Sans', sans-serif; letter-spacing: 0; }
.mohair-article .brief-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 16px; }
.mohair-article .brief-card { border-top: 3px solid var(--agri); background: var(--paper); padding: 20px; }
.mohair-article .brief-card .value { display: block; font: 700 34px/1.2 'Playfair Display', serif; color: var(--agri); margin-bottom: 12px; }
.mohair-article .brief-card p { margin: 0; font: 14px/1.65 'DM Sans', sans-serif; }
.mohair-article .summary-box, .mohair-article .data-panel, .mohair-article .callout { margin: 32px 0; padding: 24px; background: var(--paper); border-left: 3px solid var(--agri); }
.mohair-article .summary-box ol { padding-left: 22px; }
.mohair-article .summary-box li { margin: 12px 0; }
.mohair-article .data-panel h3 { margin-top: 0; }
.mohair-article .data-panel p:last-child { margin-bottom: 0; }
.mohair-article .callout strong { display: block; margin-bottom: 10px; }
.mohair-article .dropcap:first-letter { float: left; font: 700 64px/.9 'Playfair Display', serif; padding: 9px 10px 0 0; color: var(--agri); }
.mohair-article .pull-quote { border-block: 1px solid var(--rule); padding: 24px 0; margin: 38px 0; }
.mohair-article .pull-quote h3 { margin-top: 0; }
.mohair-article .pull-quote blockquote { font: 26px/1.45 'Playfair Display', serif; }
.mohair-article .chart-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin: 36px 0; }
.mohair-article .chart-card { min-width: 0; border-block: 1px solid var(--rule); padding: 24px 0; }
.mohair-article .chart-card h3 { margin: 0 0 20px; }
.mohair-article .chart-canvas { position: relative; width: 100%; height: 400px; }
.mohair-article .chart-unit { margin-bottom: 12px; font: 12px/1.6 'DM Sans', sans-serif; color: var(--ink-muted); }
.mohair-article .chart-note { margin-top: 18px; font: 14px/1.65 'DM Sans', sans-serif; color: var(--ink-muted); }
.mohair-article .scenario-controls { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; }
.mohair-article .scenario-controls button { min-height: 44px; padding: 12px 18px; font: 600 14px/1.4 'DM Sans', sans-serif; border: 1px solid var(--agri); background: var(--cream); color: var(--agri); cursor: pointer; }
.mohair-article .scenario-controls button.active { color: var(--white); background: var(--agri); }
.mohair-article .table-scroll { max-width: 100%; overflow-x: auto; margin: 24px 0; }
.mohair-article table { min-width: 580px; width: 100%; border-collapse: collapse; font: 14px/1.6 'DM Sans', sans-serif; }
.mohair-article th, .mohair-article td { padding: 12px; border-bottom: 1px solid var(--rule); text-align: left; vertical-align: top; }
.mohair-article th { background: var(--paper); }
.mohair-article details { margin-top: 20px; font: 14px/1.6 'DM Sans', sans-serif; }
.mohair-article summary { cursor: pointer; padding: 10px 0; color: var(--agri); }
.mohair-article .article-end, .mohair-article .mohair-notes { border-top: 2px solid var(--ink); margin-top: 42px; padding-top: 24px; }
.mohair-article .article-end h2 { margin-top: 0; }
.mohair-article .footer-note { font: 14px/1.65 'DM Sans', sans-serif; color: var(--ink-muted); }
.mohair-article .sticky-stack { display: grid; gap: 28px; }
.mohair-article .side-card ul { padding-left: 20px; }
.mohair-article .the-brief ul { padding-left: 0; }
.mohair-article .side-card li { margin-bottom: 10px; }
.mohair-article :is(button, summary, [tabindex]):focus-visible { outline: 2px solid var(--agri); outline-offset: 3px; }
