/* Scoped long-form comparison components; publication tokens stay authoritative. */
.case-study{max-width:1240px;overflow-wrap:anywhere}
.case-study-index{overflow-wrap:anywhere}
.case-heading{max-width:76ch;padding:1.5rem 0 2rem}
.case-heading h1{font:600 clamp(2.15rem,6vw,4.25rem)/1.1 var(--font-heading);letter-spacing:-.035em;max-width:21ch;overflow-wrap:anywhere;margin:.75rem 0 1.25rem}
.case-heading p{line-height:1.8;max-width:72ch}
.case-subtitle{font-size:1.25rem;color:var(--muted)}
.case-date{font-size:.875rem;color:var(--muted)}
.case-pdf{display:inline-block;padding:.7rem 0;text-underline-offset:.3em}
.case-quick{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.7rem 0 2rem;margin-bottom:2rem}
.case-quick h2{font:500 1.65rem/1.3 var(--font-heading);margin:0 0 1.4rem}
.case-quick>div{display:grid;gap:1.6rem}
.case-quick article{min-width:0}
.case-quick h3{font:500 1.05rem/1.45 var(--font-heading);margin:0 0 .5rem}
.case-quick p{font-size:.95rem;line-height:1.7;margin:.5rem 0}
.case-quick a{display:inline-block;padding:.4rem 0}
.case-reading{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem}
.case-body{min-width:0;max-width:900px}
.case-contents{min-width:0}
.case-contents details{border:1px solid var(--line);border-radius:10px;padding:1rem;background:var(--surface)}
.case-contents summary{cursor:pointer;font:500 1rem/1.5 var(--font-heading)}
.case-contents ol{padding-left:1.3rem;margin:1rem 0 .25rem}
.case-contents li{margin:.65rem 0;font-size:.9rem;line-height:1.55}
.case-section{scroll-margin-top:1.5rem;margin:0 0 3.5rem}
.case-section h2,.case-related h2{font:500 clamp(1.5rem,3.5vw,2rem)/1.3 var(--font-heading);letter-spacing:-.015em;margin:0 0 1.2rem;overflow-wrap:anywhere}
.case-body p{line-height:1.85;margin:1.2rem 0;max-width:74ch}
.case-cite{font-size:.8em;white-space:nowrap;text-underline-offset:.15em}
.case-figure{margin:2rem 0;padding:1.1rem;border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0}
.case-figure>h3{font:500 1.2rem/1.4 var(--font-heading);margin:0 0 1.3rem}
.case-figure h3{overflow-wrap:anywhere}
.case-figure figcaption,.case-chart-note{font-size:.85rem;line-height:1.7;color:var(--muted)}
.case-figure figcaption{border-top:1px solid var(--line);padding-top:1rem;margin-top:1.3rem}
.case-provider-grid,.case-context-grid{display:grid;gap:1rem}
.case-provider,.case-context-grid>div{padding:1rem;border:1px solid var(--line);border-radius:8px;min-width:0}
.case-provider h4,.case-context-grid h4{font:500 1rem/1.5 var(--font-heading);margin:0}
.case-provider dl{margin:.8rem 0 0}
.case-provider dt{color:var(--muted);font-size:.8rem;margin-top:.5rem}
.case-provider dd{margin:0;line-height:1.65;overflow-wrap:anywhere}
.case-finance-grid{display:grid;gap:2rem}
.case-finance-panel h4{font:500 1rem/1.5 var(--font-heading);margin:0}
.case-finance-panel>p{font-size:.8rem;color:var(--muted);margin:.4rem 0}
.case-bars{list-style:none;padding:0;margin:1rem 0;display:grid;gap:1.15rem}
.case-bar-label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.35rem .8rem;line-height:1.5;font-size:.95rem}
.case-bar-label strong{font-weight:500;overflow-wrap:anywhere}
.case-bar-label span{font-variant-numeric:tabular-nums}
.case-bar-track{height:.5rem;background:var(--line);border-radius:3px;margin-top:.45rem;overflow:hidden}
.case-bar-track>span{display:block;height:100%;background:var(--accent);border-radius:3px;min-width:2px}
.case-context-value{font:500 1.6rem/1.3 var(--font-heading);color:var(--accent);margin:.65rem 0!important}
.case-context-grid>div>p:last-child{font-size:.85rem;color:var(--muted);margin:.4rem 0}
.case-token-steps{padding-left:1.5rem;display:grid;gap:1.2rem}
.case-token-steps li::marker{color:var(--accent);font-weight:600}
.case-token-steps h4{font:500 1rem/1.5 var(--font-heading);margin:0}
.case-token-steps p{font-size:.9rem;margin:.35rem 0}
.case-original{margin-top:1rem;border-top:1px solid var(--line);padding-top:.8rem}
.case-original summary{cursor:pointer;font-size:.85rem;line-height:1.6;padding:.3rem 0}
.case-original p{font-size:.9rem}
.case-original img{width:100%;height:auto;display:block;border-radius:6px}
.case-table-scroll{max-width:100%;overflow:auto;overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:8px;margin:1.7rem 0}
.case-table-scroll table{border-collapse:collapse;width:100%;min-width:660px;font-size:.9rem;line-height:1.65}
.case-table-scroll caption{text-align:left;caption-side:bottom;padding:1rem;color:var(--muted);font-size:.85rem}
.case-table-scroll th,.case-table-scroll td{padding:.9rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.case-table-scroll thead{background:var(--surface)}
.case-table-scroll tbody th{font-weight:500;min-width:145px}
.case-callout{margin:1.5rem 0;padding:1.2rem;border-left:3px solid var(--accent);background:var(--surface);line-height:1.8}
.case-sources{padding-left:1.5rem;display:grid;gap:.9rem}
.case-sources li{font-size:.9rem;line-height:1.65;overflow-wrap:anywhere;scroll-margin-top:2rem}
.case-related{padding:1.8rem 0;border-top:1px solid var(--line)}
.case-related li{margin:.8rem 0;line-height:1.6}
.case-home-feature{max-width:76ch;padding:2rem;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.case-home-feature h2{font:500 clamp(1.5rem,3vw,2rem)/1.3 var(--font-heading);margin:.6rem 0}
.case-home-feature p:not(.home-kicker){line-height:1.75;color:var(--muted)}
.case-study a:focus-visible,.case-study summary:focus-visible,.case-study [tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.case-figure{scroll-margin-top:1.5rem}
@media(min-width:650px){.case-quick>div{grid-template-columns:repeat(3,minmax(0,1fr))}.case-provider-grid,.case-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.case-reading{grid-template-columns:230px minmax(0,1fr);gap:3rem}.case-contents{align-self:start}.case-contents details{background:transparent}}
@media(max-width:600px){.case-figure{padding:.9rem}.case-context-grid>div{padding:12px}.case-context-value{font-size:1.1rem}.case-home-feature{padding:1.2rem}.case-original{overflow-x:auto}.case-original img{min-width:1000px}}
@media print{.case-reading{display:block}.case-contents,.case-original,.case-pdf{display:none}.case-figure,.case-callout,.case-provider,.case-context-grid>div{background:white;color:#14232b;break-inside:avoid}.case-table-scroll{overflow:visible}.case-table-scroll table{min-width:0;font-size:9pt}.case-chart-note,.case-figure figcaption{color:#394c56}.case-bar-track>span{background:#138567}.case-context-value{color:#116b53}}
