/* Inner case-study hierarchy only. Home, About and global navigation are untouched. */
.case-atlas { margin:0 0 36px; }
.case-atlas>.eyebrow { color:#666; font-size:10px; margin-bottom:16px; }
.case-atlas-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.case-atlas-items button { font:inherit; text-align:left; border:0; border-top:1px solid #bbb; padding:18px 0 10px; color:#222; background:none; display:grid; grid-template-columns:24px 1fr; gap:10px; align-content:start; transition:transform .18s; }
.atlas-number { grid-row:1/4; font-size:10px; color:#777; padding-top:4px; }
.case-atlas-items strong { font-size:20px; font-weight:300; letter-spacing:-.03em; }
.case-atlas-items button>span:not(.atlas-number) { font-size:12px; line-height:1.8; max-width:40ch; }
.case-atlas-items small { font-size:10px; color:#666; }
.readable-case .case-section { border-top:1px solid #d7d7d2; padding-top:26px; margin-top:60px; }
.readable-case .narrative-section:not(.case-spread)>.case-copy { max-width:none; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); column-gap:70px; }
.readable-case .narrative-section:not(.case-spread)>.case-copy>.eyebrow { grid-column:1/-1; }
.readable-case .narrative-section:not(.case-spread)>.case-copy>h2 { grid-column:1; grid-row:2/5; }
.readable-case .narrative-section:not(.case-spread)>.case-copy>p:not(.eyebrow),.readable-case .narrative-section:not(.case-spread)>.case-copy>details { grid-column:2; }
.readable-case .case-copy h2 { font-size:clamp(25px,2.65vw,34px); line-height:1.2; margin-bottom:16px; }
.readable-case .case-copy>p:not(.eyebrow) { font-size:14px; line-height:1.85; max-width:60ch; margin-top:14px; }
.case-copy-more { margin-top:18px; border-top:1px solid #ddd; max-width:65ch; }
.case-copy-more summary { display:flex; justify-content:space-between; gap:18px; padding:13px 0; cursor:pointer; list-style:none; font-size:11px; }
.case-copy-more summary::-webkit-details-marker { display:none; }
.case-copy-more summary span { transition:transform .18s; }
.case-copy-more[open] summary span { transform:rotate(45deg); }
.case-copy-more p { font-size:13px; line-height:1.9; margin:0 0 17px; }
.readable-case .case-spread { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.65fr); gap:0 42px; align-items:start; }
.readable-case .case-spread .case-images { margin:0; gap:20px; }
.readable-case .case-spread>.case-note,.readable-case .case-spread>.case-links { grid-column:2; }
.readable-case .case-images figcaption { font-size:10px; line-height:1.7; }
.readable-case .case-flow { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:0; margin:28px 0 12px; }
.readable-case .case-flow li { border:0; border-top:1px solid #999; padding:20px 12px 16px 0; }
.readable-case .case-stats { border-bottom:1px solid #ccc; padding-bottom:26px; }
.readable-case .case-note { font-size:11px!important; max-width:85ch; }
.readable-case .case-disclosure .case-copy p { max-width:64ch; }
.system-map { display:grid; grid-template-columns:1fr 1fr; gap:40px; padding:35px; background:#f7f7f4; border:1px solid #ddd; }
.system-map h2 { font-weight:300; font-size:31px; line-height:1.2; letter-spacing:-.04em; margin:15px 0; }
.system-map ol { padding:0; margin:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:12px; align-content:start; }
.system-map li { padding:17px; background:white; border:1px solid #ddd; font-size:13px; line-height:1.6; }
.system-map li>span { display:block; color:#777; font-size:9px; margin-bottom:10px; }
.readable-case button:focus-visible,.readable-case summary:focus-visible { outline:2px solid #222; outline-offset:4px; }
.readable-case .case-section:focus-visible { outline:1px dashed #777; outline-offset:8px; }
@media(hover:hover) and (pointer:fine) { .case-atlas-items button:hover { transform:translateY(-3px); } }
@media(max-width:760px) {
  .case-atlas-items { grid-template-columns:1fr; gap:8px; }
  .case-atlas-items button { padding-top:14px; }
  .case-atlas-items strong { font-size:19px; }
  .readable-case .case-section { margin-top:42px; padding-top:22px; }
  .readable-case .narrative-section:not(.case-spread)>.case-copy { display:block; }
  .readable-case .case-spread { grid-template-columns:1fr; gap:22px; }
  .readable-case .case-spread>.case-note,.readable-case .case-spread>.case-links { grid-column:1; }
  .readable-case .case-copy>p:not(.eyebrow) { font-size:13px; }
  .readable-case .case-spread .case-images { grid-template-columns:1fr; }
  .system-map { grid-template-columns:1fr; gap:24px; padding:22px; }
  .system-map h2 { font-size:28px; }
  .system-map ol { grid-template-columns:1fr 1fr; gap:10px; }
  .system-map li { padding:14px; font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .case-atlas-items button,.case-copy-more summary span { transition:none; transform:none!important; } }
.motion-off .case-atlas-items button,.motion-off .case-copy-more summary span { transition:none; transform:none!important; }
