/* Shared presentation details, preserving existing page layouts. */
.legal-header{height:82px;min-height:82px;padding:0 8vw}.legal-header>a:first-child{display:flex;align-items:center}.legal-header img{display:block;height:64px;width:auto}
.project-story-footer{display:grid;grid-template-columns:minmax(0,1fr) auto}.project-story-footer>*{min-width:0}.project-story-footer .company-disclosure,.project-story-footer .legal-links{grid-column:1/-1;width:100%;min-width:0}.project-story-footer .company-disclosure{flex:none}.project-story-footer .legal-links{display:flex;flex-wrap:wrap}
.legal-layout>*{min-width:0}.legal-page .table-wrap{max-width:100%;overflow-x:auto}
.case-study-link,#portfolio .case-study-link{display:inline-block;margin:18px 0;color:var(--teal);font-family:var(--lead);font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--orange);padding-bottom:7px}
#portfolio .portfolio-code{font-family:var(--lead);font-size:12px;letter-spacing:.14em;background:var(--orange);color:var(--warm);padding:11px 15px}
.project-collection .badge,.portfolio-status strong{font-family:var(--lead);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.project-collection .credit{font-family:var(--lead);font-size:10px;letter-spacing:.08em;line-height:1.5}
.case-index{padding:70px 8vw 85px}.case-index>.eyebrow{color:var(--orange)}.case-index h1{font:400 clamp(42px,5vw,76px)/1.04 var(--lead);letter-spacing:-.045em;color:var(--teal);margin:18px 0 28px}.case-index>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:850px;margin-bottom:36px}.case-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.case-index-card{display:block}.case-index-card figure{margin:0}.case-index-card img{width:100%;aspect-ratio:1.75;object-fit:cover;display:block}.case-index-card figcaption{font:10px/1.5 var(--lead);letter-spacing:.08em;text-transform:uppercase;padding:12px 0;color:var(--charcoal);border-bottom:1px solid var(--line)}.case-index-card h2{font:400 clamp(30px,3vw,44px)/1.15 var(--lead);letter-spacing:-.035em;color:var(--teal);margin:20px 0 16px}.case-index-card p{font-size:16px;line-height:1.75;margin:0}
@media(max-width:800px){.legal-header{height:74px;min-height:74px;padding:0 24px}.legal-header img{height:68px}.project-story-footer{grid-template-columns:minmax(0,1fr)}.case-index{padding:40px 24px 60px}.case-index-grid{grid-template-columns:1fr;gap:36px}}
