.case-content{padding:32px 0;scroll-behavior:smooth}
.case-inner{position:relative;width:min(1022px,calc(100% - 64px));margin:0 auto}
.case-narrow{width:min(496px,100%);margin-inline:auto}
.case-back{position:fixed;top:40px;left:378px;display:grid;place-items:center;width:52px;height:52px;border:1px solid #080808;border-radius:50%;background:#fff;text-decoration:none;z-index:1}
.case-back:hover{background:#f7f7f5}
.case-story h1,.case-story h2,.case-story h3{font-family:Roslindale,Georgia,serif;font-weight:400;letter-spacing:0}
.case-story h1,.case-story h2{font-size:44px;line-height:46px}
.case-story p,.case-story li,.case-story dd{letter-spacing:0}
.case-intro{display:flex;flex-direction:column;gap:40px}
.case-title-block{display:flex;flex-direction:column;gap:16px}
.case-meta{display:flex;gap:16px;color:#777;font-size:20px;line-height:22px}
.case-facts{display:flex;flex-direction:column;gap:20px;margin-block:0;font-size:18px;line-height:22px}
.case-facts dt{margin-bottom:8px;color:#777;font-size:16px;line-height:18px}
.case-facts dd{margin:0}
.case-hero{display:block;width:100%;aspect-ratio:1022/733;overflow:hidden;border-radius:32px;background:#d9d9d9}
.case-hero img{width:100%;height:100%;object-fit:cover}
.case-copy-block h2{margin-bottom:12px}
.case-copy-block p,.case-section-heading p,.case-section-heading li{font-size:18px;line-height:22px;color:#555}
.case-copy-block p+p{margin-top:20px}
.case-section{margin-top:120px}
.case-section-heading h2{margin-bottom:12px}
.case-section-heading p+p{margin-top:20px}
.case-section-heading ul{margin:0;padding-left:27px;color:#555}
.case-problems{display:grid;gap:10px;margin-top:24px}
.case-problems>div{padding:20px;border-radius:20px;background:#f7f7f5}
.case-problems h3{font-size:24px;line-height:26px;margin:0 0 10px}
.case-problems p{font-size:16px;line-height:20px;color:#555}
.case-gallery{overflow:hidden;margin-top:40px;padding:41px 39px;border-radius:32px;background:#e3e4e6}
.case-gallery__tag{display:table;margin:0 auto;padding:12px;border-radius:12px;background:#050505;color:#fff;font:20px/22px Roslindale,Georgia,serif;white-space:nowrap}
.case-gallery__track{display:flex;align-items:center;justify-content:center;gap:20px}
.case-gallery--old .case-gallery__track{margin-top:20px}
.case-gallery__slide{min-width:0;flex-shrink:1;overflow:hidden;border-radius:22px;scroll-snap-align:start}
.case-gallery__slide img{display:block;width:100%;height:auto}
.case-gallery--old .case-gallery__slide{width:301px}
.case-gallery--flow .case-gallery__slide{width:225px}
.case-gallery--result .case-gallery__slide{width:300px}
.case-gallery__dots{display:none}
.case-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px}
.case-compare__panel{height:500px;padding:24px 12px;border-radius:32px;background:#e3e4e6;overflow:hidden}
.case-compare__old{height:calc(100% - 46px);display:flex;align-items:center;justify-content:center;gap:12px}
.case-compare__old img{width:min(132px,46%);height:auto}
.case-compare__new{height:calc(100% - 46px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}
.case-compare__new img{width:min(345px,100%);height:auto}
.case-outcome__image{display:block;width:min(496px,100%);height:auto;aspect-ratio:496/400;object-fit:cover;margin:40px auto 0;border-radius:32px}
.case-next>h2{margin-bottom:24px}
.case-next__project{width:min(486px,100%);margin-inline:auto}
.case-next .project h2{font:28px/30px Roslindale,Georgia,serif;letter-spacing:0;margin:12px 0 0}
.case-next .project p{opacity:.7}
@media(max-width:900px){
  .case-page{padding:0 20px 40px}
  .case-page .profile{display:none}
  .case-content{position:static;width:100%;max-width:none;margin:0;padding:24px 0 40px;overflow:visible;border-radius:0}
  .case-inner{width:100%}
  .case-back{display:none}
  .case-story h1{font-size:40px;line-height:42px}
  .case-story h2{font-size:36px;line-height:38px}
  .case-intro{gap:40px}
  .case-meta{font-size:18px;line-height:18px}
  .case-hero,.case-copy-block{margin-top:20px}
  .case-hero{aspect-ratio:362/400;border-radius:20px}
  .case-gallery,.case-compare{margin-top:24px}
  .case-gallery{padding:24px 20px;border-radius:20px}
  .case-gallery__track{justify-content:flex-start;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .case-gallery--old .case-gallery__track,.case-gallery--flow .case-gallery__track,.case-gallery--result .case-gallery__track{width:calc(100% + 20px)}
  .case-gallery__track::after{content:"";flex:0 0 41px;align-self:stretch}
  .case-gallery__track::-webkit-scrollbar{display:none}
  .case-gallery__slide,.case-gallery--old .case-gallery__slide,.case-gallery--flow .case-gallery__slide,.case-gallery--result .case-gallery__slide{flex:0 0 281px;width:281px;max-width:calc(100% - 41px);border-radius:20px}
  .case-gallery__dots{display:flex;align-items:center;justify-content:center;gap:0;margin-top:20px;height:8px}
  .case-gallery__dots button{display:grid;place-items:center;width:12px;height:20px;padding:0;border:0;background:transparent;cursor:pointer}
  .case-gallery__dots button::before{content:"";display:block;width:8px;height:8px;border-radius:50%;background:#aaa}
  .case-gallery__dots button[aria-current="true"]::before{background:#050505}
  .case-gallery__dots button:focus-visible{outline:2px solid #050505;outline-offset:2px}
  .case-problems>div{padding:16px}
  .case-compare{grid-template-columns:1fr;gap:12px}
  .case-compare__panel{height:450px;padding:24px 8px;border-radius:20px}
  .case-compare__old{gap:12px}
  .case-compare__new img{max-width:100%}
  .case-outcome__image{width:100%;height:320px;margin-top:24px;border-radius:32px}
}
@media(max-width:370px){
  .case-story h1{font-size:clamp(34px,10vw,40px);line-height:1.05}
  .case-story h2{font-size:clamp(32px,9vw,36px);line-height:1.06}
  .case-gallery__slide,.case-gallery--old .case-gallery__slide,.case-gallery--flow .case-gallery__slide,.case-gallery--result .case-gallery__slide{flex-basis:calc(100% - 30px);width:calc(100% - 30px);max-width:none}
  .case-gallery__track::after{flex-basis:30px}
}
