.case-hero{padding:42px 0 76px;background:var(--color-background)}
.case-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:58px;align-items:center;margin-top:34px}
.case-hero-copy h1{max-width:760px;margin:10px 0 24px;font-size:clamp(54px,6vw,92px);line-height:.88;letter-spacing:-.045em}
.case-hero-copy .case-lead{max-width:670px;font-size:18px;line-height:1.65;color:var(--color-muted)}
.case-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.case-badges span{padding:9px 14px;border:1px solid rgba(60,42,29,.2);border-radius:999px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.case-hero-photo{position:relative;margin:0;overflow:hidden;border-radius:4px;background:#ded5c8}
.case-hero-photo img{display:block;width:100%;height:auto}
.case-hero-photo figcaption,.case-photo figcaption{position:absolute;left:18px;bottom:16px;padding:8px 11px;background:rgba(24,19,15,.78);color:#fff;font-size:11px;letter-spacing:.04em}
.case-visual-note{margin-top:12px;color:var(--color-muted);font-size:12px;line-height:1.55}
.case-comparison{background:var(--color-surface)}
.case-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px;align-items:start}
.case-comparison figure{margin:0}
.case-comparison-frame{position:relative;display:flex;align-items:center;justify-content:center;height:430px;overflow:hidden;border-radius:4px;background:#e6ded2}
.case-comparison-frame img{display:block;max-width:100%;max-height:100%;width:auto;height:auto}
.case-comparison figcaption{padding:14px 2px 0;color:var(--color-muted);font-size:13px;line-height:1.55}
.case-comparison figcaption strong{display:block;margin-bottom:4px;color:var(--color-text);font-family:var(--font-display);font-size:25px;font-weight:500}
.case-facts{background:#eee6da;border-block:1px solid rgba(60,42,29,.08)}
.case-facts-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.case-fact{padding:34px 26px;border-right:1px solid rgba(60,42,29,.12)}
.case-fact:last-child{border-right:0}
.case-fact small{display:block;margin-bottom:9px;color:#775f4d;font-size:10px;text-transform:uppercase;letter-spacing:.13em}
.case-fact strong{font-family:var(--font-display);font-size:25px;font-weight:500;line-height:1.1}
.case-story{background:var(--color-surface)}
.case-story-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.case-story h2,.case-section-heading h2{max-width:760px;font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.035em}
.case-story-text{font-size:17px;line-height:1.75;color:var(--color-muted)}
.case-story-text p+p{margin-top:20px}
.case-story-note{margin-top:30px;padding:22px 24px;border-left:3px solid var(--color-accent);background:#f6f0e7;color:#44352a}
.case-inline-cta{padding:34px 0;background:var(--color-green);color:#fff}
.case-inline-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:42px}
.case-inline-cta .eyebrow{margin-bottom:8px;color:#d8cbb9}
.case-inline-cta h2{margin:0 0 8px;font-size:clamp(34px,4vw,54px);line-height:1}
.case-inline-cta p{max-width:760px;margin:0;color:rgba(255,255,255,.78);line-height:1.6}
.case-inline-cta .button{flex:0 0 auto}
.case-gallery{background:var(--color-background)}
.case-section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}
.case-section-heading>p{max-width:430px;margin:0;color:var(--color-muted);line-height:1.65}
.case-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.case-photo{position:relative;display:flex;align-items:center;justify-content:center;height:520px;margin:0;overflow:hidden;border-radius:4px;background:#e6ded2}
.case-photo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto}
.case-photo.wide,.case-photo.narrow{grid-column:span 1}
.case-photo.full{grid-column:1/-1}
.case-process{background:#ece3d7}
.case-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.case-process-card{background:#f8f3eb}
.case-process-card img{display:block;max-width:100%;width:auto;height:430px;margin:0 auto;object-fit:contain}
.case-hero-photo img,.case-comparison-frame img,.case-photo img,.case-process-card img{cursor:zoom-in}
.image-lightbox{width:min(96vw,1500px);height:min(94vh,1100px);max-width:none;max-height:none;padding:0;border:0;background:transparent;overflow:visible}
.image-lightbox::backdrop{background:rgba(15,12,10,.92);backdrop-filter:blur(5px)}
.image-lightbox-inner{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.image-lightbox img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 20px 80px rgba(0,0,0,.38)}
.image-lightbox-close{position:absolute;z-index:2;top:10px;right:10px;width:46px;height:46px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(20,16,13,.7);color:#fff;font-size:27px;line-height:1;cursor:pointer}
.case-process-card div{padding:24px}
.case-process-card span{font-size:11px;letter-spacing:.12em;color:#765941}
.case-process-card h3{margin:9px 0 8px;font-family:var(--font-display);font-size:29px;font-weight:500}
.case-process-card p{margin:0;color:var(--color-muted);font-size:14px;line-height:1.6}
.case-details{background:var(--color-surface)}
.case-details-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:74px}
.case-details-list{margin:0;padding:0;list-style:none;border-top:1px solid rgba(60,42,29,.18)}
.case-details-list li{display:grid;grid-template-columns:180px 1fr;gap:22px;padding:20px 0;border-bottom:1px solid rgba(60,42,29,.18)}
.case-details-list strong{font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.case-details-list span{color:var(--color-muted);line-height:1.55}
.case-related{background:var(--color-background)}
.case-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:36px}
.case-related-grid a{padding:28px;border:1px solid rgba(60,42,29,.18);transition:.25s ease}
.case-related-grid a:hover{background:#eee4d6;transform:translateY(-3px)}
.case-related-grid strong{display:block;margin-bottom:9px;font-family:var(--font-display);font-size:28px;font-weight:500}
.case-related-grid span{color:var(--color-muted);font-size:13px;line-height:1.5}
@media(max-width:980px){.case-hero-grid,.case-story-grid,.case-details-grid{grid-template-columns:1fr}.case-facts-grid{grid-template-columns:repeat(2,1fr)}.case-fact:nth-child(2){border-right:0}.case-process-grid{grid-template-columns:1fr 1fr}.case-process-card:last-child{grid-column:1/-1}.case-related-grid{grid-template-columns:1fr}}
@media(max-width:680px){.case-hero{padding-top:24px}.case-hero-grid{gap:32px;margin-top:22px}.case-hero-copy h1{font-size:49px}.case-facts-grid{grid-template-columns:1fr}.case-fact{border-right:0;border-bottom:1px solid rgba(60,42,29,.12)}.case-section-heading{display:block}.case-section-heading>p{margin-top:18px}.case-comparison-grid,.case-gallery-grid{grid-template-columns:1fr}.case-comparison-frame{height:360px}.case-photo{height:440px}.case-photo.wide,.case-photo.narrow,.case-photo.full{grid-column:1/-1}.case-process-grid{grid-template-columns:1fr}.case-process-card:last-child{grid-column:auto}.case-process-card img{height:430px}.case-details-list li{grid-template-columns:1fr;gap:7px}.case-inline-cta-inner{align-items:flex-start;flex-direction:column}.image-lightbox{width:96vw;height:90vh}}
