.projects-page{padding:11vh 11vw 120px}.projects-page h1,.case-hero h1{font:500 clamp(58px,8vw,96px)/.94 var(--serif);letter-spacing:-.04em;margin:30px 0;text-wrap:balance}.projects-page h1 em,.case-hero h1 em{font-weight:500}.projects-lead{max-width:570px;font-size:20px;line-height:1.42;margin:0 0 90px;text-wrap:pretty}.projects-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:70px 1.1fr 1fr 48px;gap:22px;align-items:center;border-bottom:1px solid var(--line);padding:22px 0;transition:color .2s}.project-row:hover{color:var(--blue)}.project-row img{width:100%;aspect-ratio:1;object-fit:cover;filter:saturate(.9)}.project-row h2{font:500 clamp(26px,3vw,45px)/1 var(--serif);letter-spacing:-.04em;margin:0}.project-row p{color:#5b5a56;max-width:360px;margin:0}.project-row:hover p{color:inherit}.project-arrow{font-size:24px;text-align:right}.compact-footer{background:var(--ink);color:var(--paper);padding:24px 5.5vw;display:flex;justify-content:space-between;font-size:13px}.compact-footer a{border-bottom:1px solid #666;padding-bottom:3px}.case-hero{padding:10vh 11vw 70px;min-height:58vh;display:flex;flex-direction:column;justify-content:space-between}.case-type{color:var(--blue);font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0}.case-lead{font-size:clamp(19px,2.2vw,29px);max-width:670px;line-height:1.32;margin:10px 0 0;text-wrap:pretty}.case-image{width:100%;max-height:720px;object-fit:cover;display:block}.case-summary{padding:90px 11vw 125px;display:grid;grid-template-columns:1fr 2fr;gap:70px}.case-summary h2{font:500 35px/1 var(--serif);letter-spacing:-.04em;margin:0}.case-summary p{font-size:20px;line-height:1.5;max-width:650px;margin:0;text-wrap:pretty}.case-facts{margin:55px 11vw 0;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.case-facts span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#666;margin-bottom:6px}.case-facts strong{font-weight:500}@media(max-width:720px){.projects-page{padding:70px 24px}.projects-page h1{font-size:16vw}.projects-lead{font-size:18px;margin-bottom:55px}.project-row{grid-template-columns:55px 1fr 24px;gap:15px}.project-row p{display:none}.project-row h2{font-size:29px}.case-hero{padding:70px 24px 45px;min-height:55svh}.case-hero h1{font-size:16vw}.case-lead{font-size:19px}.case-summary{padding:58px 24px 72px;display:block}.case-summary h2{margin-bottom:28px}.case-summary p{font-size:18px}.case-facts{margin:0 24px;padding:24px 0;grid-template-columns:1fr;gap:16px}.compact-footer{padding:20px 24px;gap:20px;font-size:11px}}
.case-details{padding:0 11vw 130px}.case-detail{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:36px 0;border-top:1px solid var(--line)}.case-detail:last-child{border-bottom:1px solid var(--line)}.case-detail h2{font:500 31px/1.05 var(--serif);letter-spacing:-.04em;margin:0;text-wrap:balance}.case-detail p{grid-column:2;font-size:17px;line-height:1.55;max-width:650px;margin:0 0 16px;text-wrap:pretty}@media(max-width:720px){.case-details{padding:0 24px 75px}.case-detail{display:block;padding:29px 0}.case-detail h2{font-size:28px;margin-bottom:18px}.case-detail p{font-size:17px;margin-bottom:14px}}
.case-gallery{padding:0 5.5vw 120px;display:flex;flex-direction:column;align-items:center;gap:0}.case-gallery figure{margin:0;width:100%;background:transparent}.case-gallery img{width:100%;height:auto;display:block;object-fit:contain}.case-gallery--logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:0}.case-gallery--logos figure{width:auto}.case-gallery--logos img{height:100%;object-fit:cover}@media(max-width:720px){.case-gallery{padding:0 24px 70px}.case-gallery--logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.projects-page{background:var(--paper);padding:clamp(90px,12vw,170px) clamp(20px,9vw,130px) 130px}.projects-page .eyebrow{color:var(--blue)}.projects-page h1,.case-hero h1{font:700 clamp(58px,8vw,116px)/.87 var(--sans);letter-spacing:-.08em}.projects-lead{font-size:clamp(20px,2.5vw,32px);font-weight:500;line-height:1.23;max-width:720px;margin-bottom:100px}.projects-list{border-color:var(--ink)}.project-row{grid-template-columns:86px 1.2fr 1fr 48px;gap:32px;padding:18px 0;border-color:var(--line);transition:background .35s,color .35s}.project-row:hover{color:#fff;background:var(--ink);padding-left:16px;padding-right:16px}.project-row img{filter:none;border-radius:0}.project-row h2{font:700 clamp(25px,3vw,46px)/.96 var(--sans);letter-spacing:-.07em}.project-row p{color:#506080;font-size:14px}.project-row:hover p{color:#b9c5fb}.compact-footer{background:var(--ink);color:#fff;padding:25px clamp(20px,4vw,64px);font-weight:600}.case-page{background:#fff}.case-hero{min-height:62svh;padding:clamp(72px,10vw,140px) clamp(20px,9vw,130px) 70px;background:var(--blue);color:#fff}.case-type{color:#c8d2ff;font-weight:700}.case-hero h1{color:#fff;max-width:1100px}.case-lead{font-size:clamp(20px,2.5vw,34px);font-weight:500;line-height:1.22;max-width:820px}.case-image{max-height:none;object-fit:contain;background:#edf0ff}.case-facts{margin:0;padding:30px clamp(20px,9vw,130px);border:0;background:var(--ink);color:#fff;gap:30px}.case-facts span{color:#aebeff}.case-summary{padding:clamp(90px,12vw,180px) clamp(20px,9vw,130px);grid-template-columns:minmax(180px,.75fr) 2fr;gap:80px}.case-summary h2,.case-detail h2{font:700 clamp(30px,3vw,46px)/.98 var(--sans);letter-spacing:-.065em}.case-summary p{font-size:clamp(19px,2vw,27px);line-height:1.35}.case-details{padding:0 clamp(20px,9vw,130px) 150px}.case-detail{grid-template-columns:minmax(180px,.75fr) 2fr;gap:80px;border-color:var(--line);padding:44px 0}.case-detail p{font-size:17px;line-height:1.6;max-width:700px}.case-gallery{padding:0;gap:0;background:#fff}.case-gallery figure{width:min(100%,1500px)}.case-gallery img{width:100%;max-height:none}.case-gallery--logos{width:min(100%,1500px);margin:0 auto;grid-template-columns:repeat(4,1fr)}@media(max-width:720px){.projects-page{padding:78px 20px}.projects-page h1{font-size:17vw}.project-row{grid-template-columns:56px 1fr 24px;gap:15px}.project-row:hover{padding-left:8px;padding-right:8px}.case-hero{min-height:53svh;padding:74px 20px 44px}.case-hero h1{font-size:16vw}.case-facts{padding:28px 20px}.case-summary{padding:80px 20px}.case-details{padding:0 20px 80px}.case-detail{padding:30px 0}.case-gallery--logos{grid-template-columns:repeat(2,1fr)}}
.projects-page{background:var(--paper);padding:clamp(80px,11vw,145px) clamp(20px,8vw,120px) 110px}.projects-page .eyebrow{color:#666}.projects-page h1,.case-hero h1{font-size:clamp(52px,6.2vw,90px);letter-spacing:-.075em}.projects-lead{font-size:clamp(18px,1.9vw,24px);max-width:620px;line-height:1.35;margin-bottom:80px}.projects-list{border-color:var(--ink)}.project-row{grid-template-columns:76px minmax(230px,1.1fr) 1fr 32px;gap:26px;padding:16px 0;background:transparent!important;color:var(--ink)!important}.project-row:hover{padding-left:0;padding-right:0}.project-row img{aspect-ratio:1.25;object-fit:cover}.project-row h2{font-size:clamp(24px,2.6vw,39px);letter-spacing:-.065em}.project-row p{color:#666!important}.project-arrow{font-size:20px}.compact-footer{background:var(--ink);color:#fff}.case-page{background:var(--paper)}.case-hero{min-height:52svh;padding:clamp(70px,10vw,125px) clamp(20px,8vw,120px) 65px;background:var(--paper);color:var(--ink)}.case-type{color:#696965}.case-hero h1{color:var(--ink);max-width:1050px}.case-lead{font-size:clamp(19px,2vw,28px);color:var(--ink)}.case-image{background:#fff}.case-facts{background:#fff;color:var(--ink);padding:25px clamp(20px,8vw,120px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-facts span{color:#70706b}.case-summary{padding:clamp(75px,10vw,135px) clamp(20px,8vw,120px);gap:65px}.case-summary h2,.case-detail h2{font-size:clamp(29px,2.7vw,40px)}.case-summary p{font-size:clamp(18px,1.8vw,24px)}.case-details{padding:0 clamp(20px,8vw,120px) 120px}.case-detail{gap:65px;padding:34px 0}.case-detail p{font-size:16px}.case-gallery{background:#fff}.case-gallery figure{width:min(100%,1420px)}@media(max-width:720px){.projects-page{padding:75px 20px}.projects-page h1{font-size:16vw}.project-row{grid-template-columns:62px 1fr 22px;gap:14px}.case-hero{min-height:46svh;padding:72px 20px 50px}.case-hero h1{font-size:15vw}.case-facts{padding:24px 20px}.case-summary{padding:70px 20px}.case-details{padding:0 20px 70px}.case-detail{padding:28px 0}}

/* Source case-study rhythm: copy introduces its own material, never a trailing gallery. */
.case-story{padding:0 0 clamp(80px,10vw,150px);background:#fff}.case-story-block{padding:clamp(56px,8vw,116px) 0 0}.case-story-copy,.case-story-cards{width:min(100% - 40px,1080px);margin:0 auto}.case-story-copy{display:grid;grid-template-columns:minmax(185px,.78fr) minmax(0,2fr);gap:64px;align-items:start}.case-story-copy h2{font:700 clamp(29px,2.7vw,40px)/1 var(--sans);letter-spacing:-.065em;margin:0}.case-story-copy p{grid-column:2;font-size:clamp(17px,1.45vw,21px);line-height:1.5;max-width:680px;margin:0 0 17px}.case-story-media{width:min(100% - 40px,1420px);margin:clamp(36px,5.5vw,80px) auto 0;display:grid;gap:0}.case-story-media figure{margin:0;min-width:0}.case-story-media img{display:block;width:100%;height:auto}.case-story-media--pair{grid-template-columns:repeat(2,minmax(0,1fr))}.case-story-media--quad{grid-template-columns:repeat(2,minmax(0,1fr))}.case-story-media--stack{grid-template-columns:1fr}.case-story-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-story-cards article{padding:24px 26px 28px;border-right:1px solid var(--line)}.case-story-cards article:last-child{border-right:0}.case-story-cards h3{font:600 15px/1.2 var(--sans);margin:0 0 20px}.case-story-cards p{font-size:15px;line-height:1.48;margin:0;color:#42423f}.case-story-block:has(.case-story-cards) .case-story-cards{margin-top:0}.case-story-block:has(.case-story-cards) .case-story-media{margin-top:0}@media(max-width:720px){.case-story-block{padding-top:68px}.case-story-copy,.case-story-cards,.case-story-media{width:calc(100% - 40px)}.case-story-copy{display:block}.case-story-copy h2{margin-bottom:20px;font-size:29px}.case-story-copy p{font-size:17px;margin-bottom:14px}.case-story-cards{grid-template-columns:1fr}.case-story-cards article{border-right:0;border-bottom:1px solid var(--line);padding:22px 0}.case-story-cards article:last-child{border-bottom:0}.case-story-media--pair,.case-story-media--quad{grid-template-columns:1fr}.case-story-media{margin-top:34px}}

.case-story-media--slider{display:block;overflow:hidden}.case-story-slider{overflow:hidden}.case-story-slider-track{display:flex;will-change:transform}.case-story-slider-track figure{flex:0 0 100%;min-width:100%}.case-story-slider-controls{display:flex;align-items:center;justify-content:center;gap:18px;padding-top:14px}.case-slider-button{appearance:none;border:0;background:transparent;color:var(--ink);font:500 20px/1 var(--sans);padding:5px 8px;cursor:pointer}.case-slider-button:hover,.case-slider-button:focus-visible{color:var(--blue);outline:none}.case-story-slider-dots{display:flex;justify-content:center;gap:8px}.case-story-slider-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#b9b9b4;cursor:pointer}.case-story-slider-dots button.is-active{background:#20201e}.case-story-slider-dots button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

/* Locally hosted PDF guides retain the browser's accessible page controls. */
.case-pdf{width:min(100% - 40px,1420px);margin:0 auto clamp(82px,10vw,150px);padding-top:clamp(56px,8vw,116px)}.case-pdf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:20px;border-bottom:1px solid var(--line)}.case-pdf h2{font:700 clamp(29px,2.7vw,40px)/1 var(--sans);letter-spacing:-.065em;margin:0}.case-pdf-actions{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end}.case-pdf-actions a{font:600 14px/1.2 var(--sans);padding:8px 0;border-bottom:1px solid currentColor;transition:opacity .2s}.case-pdf-actions a:hover,.case-pdf-actions a:focus-visible{opacity:.55;outline:none}.case-pdf-frame{height:clamp(520px,80vh,1000px);background:#e9e9e5}.case-pdf-frame iframe{display:block;width:100%;height:100%;border:0}.case-pdf-frame p{margin:0;padding:28px;font-size:16px}.case-pdf-frame p:not(:only-child){display:none}@media(max-width:720px){.case-pdf{width:calc(100% - 40px);margin-bottom:74px;padding-top:68px}.case-pdf-head{align-items:flex-start;flex-direction:column;gap:20px}.case-pdf-actions{justify-content:flex-start;gap:18px}.case-pdf-frame{height:68svh;min-height:480px}}
.case-pdf-fullscreen{position:fixed;z-index:100;inset:0;background:#f4f4f1;display:grid;grid-template-rows:auto minmax(0,1fr)}.case-pdf-fullscreen-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 24px;border-bottom:1px solid var(--line);background:#f4f4f1}.case-pdf-fullscreen-bar a{font:600 14px/1.2 var(--sans);border-bottom:1px solid currentColor;padding:5px 0}.case-pdf-fullscreen-bar a:hover,.case-pdf-fullscreen-bar a:focus-visible{opacity:.55;outline:none}.case-pdf-fullscreen iframe{display:block;width:100%;height:100%;border:0}@media(max-width:720px){.case-pdf-fullscreen-bar{padding:14px 20px;font-size:13px}.case-pdf-fullscreen-bar a:last-child{display:none}}

/* Ozon Bank is a single visual sequence: cover and gallery share one canvas. */
.case-image--ozon-bank,.case-gallery--ozon-bank{width:min(100%,1920px);margin-inline:auto}.case-gallery--ozon-bank{align-items:stretch;background:#fff}.case-gallery--ozon-bank figure{width:100%;max-width:none}
