.project-body{flex-direction:column;gap:clamp(24px,3vw,52px);margin-top:clamp(24px,3vw,48px);display:flex}.case-text-block{grid-template-columns:1fr 1.3fr;gap:36px;padding:32px 16px;display:grid}.case-text-block h2{font-size:clamp(24px,2.2vw,36px);font-weight:500;line-height:1.25}.case-text-block p{white-space:pre-line;word-break:keep-all;overflow-wrap:anywhere;max-width:66ch;font-size:clamp(16px,1.3vw,21px);line-height:1.75}.case-text-block:not(:has(h2)) p{grid-column:1/-1}.case-link-block{margin:0 16px}.case-link-block a{border-bottom:1px solid;padding:12px 0;display:inline-block}.case-single-image,.case-video-block{min-width:0;margin:0}.project-body>.case-video-block{margin-inline:16px}.case-video-block .viewport-video{background:#111;max-width:1280px;margin-inline:auto}.case-video-block video{object-fit:contain;width:100%;height:auto;max-height:88svh}.case-video-block figcaption{color:var(--muted);margin-top:12px;font-size:14px;line-height:1.5}.case-single-image.layout-contained{align-self:center;width:100%;max-width:960px}.case-block-media.block-pair .case-gallery{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.case-block-media.block-pair .case-gallery .case-media-item[class*=media-layout]{grid-column:auto}.case-block-media.block-carousel .case-gallery{scroll-snap-type:x mandatory;flex-wrap:nowrap;gap:20px;padding-block:4px 18px;display:flex;overflow-x:auto}.case-block-media.block-carousel .case-gallery .case-media-item{scroll-snap-align:start;flex:0 0 min(64vw,480px);min-width:0}.case-block-media.block-carousel .gallery-trigger img{aspect-ratio:auto;object-fit:contain;width:100%;height:auto}.case-block-media .case-guideline-intro{margin:0 16px 24px}.preview-banner{z-index:100;color:#183500;background:#eff9d1;justify-content:space-between;gap:20px;padding:12px 24px;font-size:14px;display:flex;position:sticky;top:0}.preview-banner a{text-decoration:underline}@media (max-width:540px){.case-text-block{grid-template-columns:1fr;gap:16px;padding:16px 10px}.case-link-block,.project-body>.case-video-block,.case-block-media .case-guideline-intro{margin-inline:10px}.case-block-media.block-pair .case-gallery{grid-template-columns:1fr}.case-block-media.block-carousel .case-gallery .case-media-item{flex-basis:82vw}.preview-banner{flex-wrap:wrap;gap:10px;padding:12px 20px}}
