.case-page header{position:sticky;top:0;z-index:5;height:72px;border-bottom:1px solid var(--line)}.case-nav{display:flex;align-items:center;gap:40px;font-size:14px}.case-nav>div{display:flex;gap:15px}.case-nav button{background:none;border:0;padding:12px 0;min-height:44px;color:var(--muted)}.case-nav button[aria-pressed=true]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.case-intro{padding:35px 4vw 0}.case-eyebrow{display:flex;justify-content:space-between;gap:15px;font-size:13px;color:var(--muted)}.case-intro h1{font-size:clamp(90px,15vw,210px);font-weight:400;line-height:.95;letter-spacing:-.065em;margin:40px 0 12px}.case-subtitle{font-size:clamp(22px,3vw,40px);letter-spacing:-.03em;margin:0 0 35px}.case-hero{display:block;width:100%;max-height:680px;object-fit:cover;aspect-ratio:16/9}.case-overview{display:grid;grid-template-columns:1.5fr 1fr;gap:9vw;padding:45px 0}.case-overview .case-lead{font-size:clamp(22px,2.4vw,34px);line-height:1.3;letter-spacing:-.025em;margin:0}.case-overview h2{font-size:14px;color:var(--muted);margin-bottom:14px}.case-overview p{font-size:17px;line-height:1.55;margin:0}.case-jump{display:flex;flex-wrap:wrap;gap:12px 30px;padding:20px 0;border-top:1px solid var(--line);font-size:13px}.case-jump a{min-height:40px;align-content:center}.case-section{padding:55px 4vw;border-top:1px solid var(--line);scroll-margin-top:75px}.case-section>h2{font-size:14px;color:var(--muted);margin:0 0 30px;letter-spacing:0}.concept-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:9vw}.concept-copy h3{font-size:clamp(30px,4vw,60px);line-height:1.06;letter-spacing:-.04em;font-weight:400;margin:0}.concept-copy p,.section-description{font-size:18px;line-height:1.55;margin:0;max-width:760px}.section-description{margin-bottom:30px}.room-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:35px}.room-tabs button{padding:22px 12px;text-align:left;color:var(--muted);background:none;border:0;min-height:60px;font-size:15px}.room-tabs button[aria-selected=true]{color:var(--ink);background:#222;text-decoration:underline;text-underline-offset:5px}.room-panel{display:grid;grid-template-columns:1fr 2fr;gap:45px;padding:35px 0 0}.room-panel h3{font-size:38px;font-weight:400;letter-spacing:-.035em;margin:17px 0}.room-panel p{font-size:17px;line-height:1.5;margin:0}.room-panel>div>span{font-size:12px;color:var(--muted)}.image-open{display:block;width:100%;border:0;padding:0;background:#141414;cursor:zoom-in}.image-open img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}.room-panel .image-open img{aspect-ratio:4/3;object-fit:contain}.case-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px}.case-gallery figure{margin:0;min-width:0}.case-gallery .wide{grid-column:1/-1}.case-gallery figcaption{margin-top:12px;font-size:13px;color:var(--muted)}.case-gallery .image-open{height:auto;max-height:500px}.case-gallery .image-open img{height:100%;max-height:500px;aspect-ratio:4/3;object-fit:contain}.case-gallery .wide .image-open img{aspect-ratio:2.2;max-height:500px}.case-end{padding:30px 4vw 60px;border-top:1px solid var(--line)}.case-end p{font-size:14px;line-height:1.5;color:var(--muted);max-width:600px}.case-end>a{display:inline-block;font-size:clamp(25px,3vw,44px);margin-top:35px;letter-spacing:-.035em;min-height:44px}.case-page footer{padding:25px 4vw}.case-page .footer-bottom{border:0}.case-page #image-dialog{width:min(1400px,95vw);max-height:95vh;background:#111;padding:18px}.case-page #image-close{display:block;margin:0 0 15px auto;background:none;border:0;color:var(--ink);min-height:44px}.case-page #lightbox-image{width:100%;max-height:75vh;object-fit:contain}.case-page #lightbox-caption{color:var(--muted);font-size:14px;margin-bottom:0}@media(hover:hover) and (pointer:fine){.case-intro h1:hover{font-family:inherit;font-style:normal}.case-nav a:hover,.case-end>a:hover{text-decoration:underline;text-underline-offset:6px}.room-tabs button:hover{color:var(--ink)}}@media(max-width:760px){.case-page header{padding:12px 16px;min-height:80px;height:auto;gap:0;width:100%}.case-nav{width:100%;gap:20px;justify-content:space-between}.case-nav>a{min-height:44px;align-content:center}.case-intro{padding:25px 16px 0}.case-eyebrow{flex-direction:column;font-size:12px;gap:7px}.case-intro h1{font-size:90px;margin:30px 0 12px}.case-subtitle{font-size:25px}.case-hero{aspect-ratio:4/3;object-fit:contain;background:#191919}.case-overview,.concept-copy{grid-template-columns:1fr;gap:28px}.case-overview{padding:30px 0}.case-overview .case-lead{font-size:23px}.case-jump{gap:0 18px;font-size:14px}.case-section{padding:35px 16px;scroll-margin-top:115px}.case-section>h2{font-size:14px}.concept-copy h3{font-size:36px}.concept-copy p,.section-description{font-size:17px}.room-tabs{grid-template-columns:1fr 1fr}.room-tabs button{font-size:14px;min-height:60px;padding:16px 10px}.room-panel{grid-template-columns:1fr;gap:25px;padding-top:25px}.room-panel h3{font-size:32px}.case-gallery{grid-template-columns:1fr;gap:30px}.case-gallery .wide{grid-column:auto}.case-gallery figcaption{font-size:14px}.case-gallery .wide .image-open img{aspect-ratio:4/3}.case-end{padding:25px 16px 40px}.case-end>a{font-size:27px}.case-page footer{padding:20px 16px}.case-page #image-dialog{padding:12px}}
/* Edge-to-edge imagery; captions retain the text grid. */
.case-hero{width:100vw;max-width:none;margin-left:-4vw;max-height:none;aspect-ratio:auto;height:auto;object-fit:cover}
.case-intro h1{transition:transform .4s ease;transform-origin:left center}
.case-gallery{margin-inline:-4vw;gap:45px 0}.case-gallery figcaption{padding-inline:4vw}.case-gallery .image-open{max-height:none}.case-gallery .image-open img,.case-gallery .wide .image-open img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
.room-panel{grid-template-columns:1fr 2.5fr}.room-panel .image-open{width:calc(100% + 4vw)}.room-panel .image-open img{height:auto;aspect-ratio:auto;max-height:none}
@media(max-width:760px){.case-hero{margin-left:-16px;width:100vw}.case-gallery{margin-inline:-16px;gap:30px}.case-gallery figcaption{padding-inline:16px}.room-panel{grid-template-columns:1fr}.room-panel .image-open{margin-left:-16px;width:100vw}}
@media(prefers-reduced-motion:reduce){.case-intro h1:hover{transform:none}}
.case-page header{border-bottom:0;background:transparent}

.route-gallery{margin-top:35px}.case-gallery .image-open,.case-gallery .image-open img{max-height:none}.case-gallery .image-open img{height:auto;aspect-ratio:auto;object-fit:contain}.case-gallery .wide .image-open img{aspect-ratio:auto;max-height:none}.case-hero{object-position:center}.room-panel .image-open img{aspect-ratio:auto}.case-gallery .wide:has([data-caption="panorama"]) img{width:100%;height:auto}
