.case-project{max-width:1240px;margin:48px auto 90px;padding:0 24px;scroll-margin-top:110px}.case-project-heading{margin-bottom:30px}.case-project-heading h1{font-size:34px;color:#77503b;margin:0 0 12px}.case-project-heading p{font-size:15px;color:#766767}.case-project-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:38px}.case-project-tabs a{padding:7px 13px;border:1px solid #d4baba;color:#77503b;text-decoration:none;font-size:14px}.case-project-tabs a[aria-current=page]{background:#895c65;color:white;border-color:#895c65}.case-project-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:42px;align-items:start}.case-project-layout[hidden]{display:none}.case-project-label{font-size:13px;color:#a35665;margin:0 0 12px}.case-project-copy h2{font-size:26px;line-height:1.5;margin:0 0 25px;color:#69464e}.case-project-copy ol{padding-left:24px;margin:0}.case-project-copy li{padding-left:6px;margin-bottom:25px;color:#956471}.case-project-copy h3{font-size:16px;margin:0 0 8px;color:#69464e}.case-project-copy li p{font-size:14px;line-height:1.9;color:#625b59;margin:0}.case-project-note{font-size:12px;line-height:1.8;color:#93817e;margin-top:30px}.case-project-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px}.case-project-photos figure{margin:0}.case-project-photos figcaption{display:flex;align-items:center;justify-content:space-between;padding:0 0 12px;font-size:13px;color:#77503b}.case-project-photos figcaption b{font-size:12px;letter-spacing:.12em}.case-project-photo-empty{aspect-ratio:3/4;background:#f7f2f0;border:1px solid #e4d7d2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;color:#9a827e}.case-project-photo-empty>span{font-size:30px;font-weight:300}.case-project-photo-empty p{font-size:14px;margin:15px 0 8px}.case-project-photo-empty small{font-size:11px}@media(max-width:760px){.case-project{margin-top:30px;padding:0 20px}.case-project-layout{grid-template-columns:1fr;gap:28px}.case-project-copy h2{font-size:24px}.case-project-tabs{gap:7px;margin-bottom:26px}.case-project-tabs a{font-size:13px;padding:6px 10px}.case-project-photo-empty{padding:8px}}
/* Structured work reports: factual records, distinct from customer letters. */
.case-project-layout{gap:32px}
.case-report{background:#fff;border:1px solid #d9d6d4;border-top:3px solid #6d585e;padding:22px 24px;color:#484344}
.report-kicker{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.08em;color:#817175;margin-bottom:14px}
.case-report .case-report-header h2{font-size:23px;line-height:1.4;color:#453c3f;margin:0 0 18px}
.report-meta{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;border-top:1px solid #dedbd9;border-bottom:1px solid #dedbd9;padding:8px 0}
.report-meta>div{display:flex;gap:12px;font-size:11px;line-height:2.2}.report-meta dt{color:#82767a;min-width:64px}.report-meta dd{margin:0;color:#51484c}
.report-change{margin-top:20px}.case-report .report-change h3{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.02em;color:#57464d;margin:0 0 8px;font-weight:600}.report-change h3>span{font-size:11px;border:1px solid #d5c5ca;padding:3px 5px;color:#7c535f}.report-change h3 i{flex:1;border-bottom:1px solid #d5cfcd;height:14px}
.report-change dl{margin:0}.report-change dl>div{display:grid;grid-template-columns:86px 1fr;min-height:31px;align-items:center;border-bottom:1px solid #edeae9}.report-change dt{font-size:11px;color:#777071;background:#faf9f8;padding:8px 7px}.report-change dd{margin:0;padding:0 10px}.report-write-line{display:block;min-height:23px}
.case-report .report-footnote{font-size:10px;color:#92888a;margin:18px 0 0;line-height:1.7}
.case-project-photos{position:sticky;top:116px}.case-project-photo-empty{background:#f7f6f5;border-color:#dedbd9}.case-project-photos figcaption{border-bottom:1px solid #d9d6d4;margin-bottom:12px;color:#68575d}
@media(max-width:760px){.case-report{padding:20px 18px}.case-project-photos{position:static}.report-meta>div{gap:6px}.report-meta dt{min-width:60px}.case-project-layout{gap:26px}}
