body[data-page=work] #wash{background:rgba(250,250,246,.86)!important}body[data-page=work] .hero{min-height:75vh;padding-top:90px;padding-bottom:70px}body[data-page=work] .hero-copy{max-width:1300px}body[data-page=work] h1{font-size:clamp(60px,7vw,150px)}body[data-page=work] .section-1{padding-top:30px}body[data-page=work] .section-heading{max-width:1100px}.portfolio-filters{display:flex;gap:12px 28px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #c5d6d1;padding:18px 0;margin-bottom:40px}.portfolio-filters button{border:0;border-bottom:2px solid transparent;background:none;font-size:17px;padding:12px 0}.portfolio-filters button[aria-pressed=true]{border-color:#356776;color:#356776}.portfolio-filters .result-count{margin-left:auto;font-size:14px;color:#52717a}.portfolio-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}.portfolio-card{background:var(--paper);border:1px solid #d1ddda;border-radius:28px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .45s,border-color .45s}.portfolio-card:hover{box-shadow:0 18px 50px #294e5a12;border-color:#98b6ba}.project-shot{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;position:relative;background:#e7eeed;overflow:hidden;padding:22px;border-bottom:1px solid #d1ddda}.project-shot img{width:100%;height:100%;object-fit:contain;border-radius:12px;transition:transform .7s}.project-shot:hover img{transform:scale(1.025)}.project-shot>span{position:absolute;right:20px;bottom:20px;background:#fafaf6ed;border:1px solid #bacdcb;padding:10px 16px;border-radius:25px;font-size:14px;opacity:0;transition:opacity .3s}.project-shot:hover>span,.project-shot:focus-visible>span{opacity:1}.portfolio-card-body{padding:30px;display:flex;flex-direction:column;flex:1}.project-meta{display:flex;gap:20px;justify-content:space-between;font-size:14px;color:#496b75;line-height:1.4}.project-meta>span:last-child{text-align:right;max-width:55%}.portfolio-card h3{font-size:clamp(30px,2.8vw,54px);margin:22px 0 17px;max-width:650px}.portfolio-card-body>p{font-size:18px;line-height:1.6;max-width:660px}.project-scope{display:flex;gap:20px;border-top:1px solid #d5dfdb;padding-top:22px;margin-top:auto}.project-scope>span{font-size:13px;color:#547982;padding-top:6px}.project-scope ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 15px;padding:0;margin:0}.project-scope li{font-size:14px;line-height:1.55}.card-bottom{display:flex;gap:30px;align-items:end;justify-content:space-between;padding-top:22px}.scope-diagram{max-width:370px;flex:1}.scope-diagram svg{width:180px;max-width:100%;height:45px}.scope-diagram>div{display:flex;gap:12px;font-size:11px;color:#55787f;line-height:1.4}.scope-diagram>div>span{flex:1;max-width:120px}.case-open{width:48px;height:48px;border:1px solid #9cb7b9;border-radius:50%;display:grid;place-items:center;font-size:23px;flex-shrink:0}.case-open:hover{background:#284f5b;color:white}.portfolio-source-link{margin-top:40px}.portfolio-card .scope-diagram path{transition:transform .5s}.portfolio-card:hover .scope-diagram svg{transform:translateY(-3px);transition:transform .5s}.case-main{background:var(--paper)}.case-intro{padding:70px var(--gutter) 60px;max-width:3000px;margin:auto}.case-intro h1{font-size:clamp(56px,6.4vw,155px);max-width:1800px}.case-standfirst{max-width:900px;margin:35px 0;font-size:clamp(19px,1.5vw,30px)}.case-facts{display:grid;grid-template-columns:1fr 1fr 1fr 1.6fr;gap:30px;border-top:1px solid #bfcec8;padding:30px 0;margin:0 0 30px}.case-facts dt{font-size:14px;color:#557680;margin-bottom:15px}.case-facts dd{margin:0;font-size:17px;line-height:1.65}.intro-shot{position:relative;border-radius:28px;overflow:hidden;background:#e5edeb;padding:35px}.intro-graphic{position:absolute;bottom:45px;right:45px;border-radius:18px;border:1px solid #d0dbd7;background:#fafaf6f5;padding:20px;width:340px;box-shadow:0 5px 30px #244b5812}.case-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:35px}.case-media-grid.single{grid-template-columns:1fr}.case-media-grid figure{margin:0;background:#edf1ed;border:1px solid #d3dfda;border-radius:22px;overflow:hidden;align-self:start}.case-media-grid img{width:100%;height:auto;max-height:800px;object-fit:contain;display:block}.image-zoom{border:0;background:none;display:block;padding:12px;width:100%;position:relative}.image-zoom>span{position:absolute;bottom:20px;right:20px;border-radius:22px;padding:8px 15px;background:#fafaf6e8;border:1px solid #bed0ca;font-size:13px;opacity:0;transition:opacity .3s}.image-zoom:hover>span,.image-zoom:focus-visible>span{opacity:1}.intro-shot .case-media-grid{margin:0}.intro-shot figure{border:0;background:transparent}.intro-shot img{max-height:850px}.case-story-layout{padding:40px var(--gutter);max-width:3000px;margin:auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:6vw}.case-contents{align-self:start;position:sticky;top:115px;display:grid;gap:0;max-height:75vh;overflow:auto}.case-contents>span{font-size:14px;color:#537780;margin-bottom:20px}.case-contents a{font-size:15px;line-height:1.45;padding:13px 0;border-bottom:1px solid #d6dfda}.case-contents a:hover{color:#356776}.case-chapter{padding:10px 0 90px;scroll-margin-top:100px}.case-chapter h2{font-size:clamp(38px,4vw,100px);max-width:1150px;margin-bottom:30px}.case-copy{max-width:960px}.case-copy p{font-size:clamp(18px,1.25vw,26px);line-height:1.75}.case-next{padding:80px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:7vw;border-top:1px solid #cbd8d3;max-width:3000px;margin:auto}.case-next>div>span{font-size:15px;color:#557982}.case-next h2{font-size:clamp(40px,4.3vw,110px);margin:25px 0}.case-next .portfolio-card h3{font-size:38px}.case-contact{padding:80px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:40px;background:#e8efec}.case-contact h2{font-size:clamp(40px,5vw,110px)}.image-dialog{max-width:95vw;width:95vw;padding:40px 20px 20px;max-height:95vh;border-radius:20px}.image-dialog img{display:block;max-width:100%;max-height:83vh;margin:auto;object-fit:contain}.image-close{position:absolute;right:14px;top:2px;font-size:35px;background:var(--paper);border:0}.case-chapter{opacity:1}.case-chapter.entered h2{animation:case-in .8s both}@keyframes case-in{from{opacity:.2;filter:blur(6px)}to{opacity:1;filter:none}}@media(min-width:2200px){.portfolio-card-body{padding:45px}.project-shot{padding:35px}.portfolio-card-body>p,.case-facts dd{font-size:25px}.project-meta{font-size:20px}.project-scope li,.portfolio-filters button{font-size:20px}.scope-diagram>div{font-size:14px}.case-story-layout{grid-template-columns:300px 1fr}.case-contents a{font-size:20px}}@media(max-width:1000px){.case-story-layout{grid-template-columns:1fr}.case-contents{position:relative;top:0;display:flex;gap:20px;overflow:auto;padding-bottom:15px;max-height:none}.case-contents a{flex:0 0 190px}.case-contents>span{display:none}.case-facts{grid-template-columns:1fr 1fr}.intro-graphic{position:relative;right:auto;bottom:auto;width:100%;margin-top:20px;max-width:380px}.portfolio-card-body{padding:24px}.portfolio-card h3{font-size:33px}.project-shot{padding:15px}.project-meta{font-size:12px}.project-scope li{font-size:13px}.scope-diagram>div{font-size:10px}}@media(max-width:700px){body[data-page=work] .hero{padding-top:60px;padding-bottom:50px;min-height:auto}.portfolio-collection{grid-template-columns:1fr;gap:28px}.portfolio-filters{gap:5px 20px}.portfolio-filters button{font-size:14px}.result-count{width:100%;margin:12px 0 0!important}.project-meta{font-size:13px}.portfolio-card-body>p{font-size:17px}.project-shot{aspect-ratio:16/10}.project-shot>span{opacity:1;font-size:12px;right:12px;bottom:12px;padding:7px 12px}.portfolio-card h3{font-size:34px}.scope-diagram>div{font-size:11px}.case-intro{padding:50px 24px 30px}.case-intro h1{font-size:52px}.case-facts{gap:22px}.case-facts dd{font-size:15px}.intro-shot{padding:15px;border-radius:22px}.intro-graphic{padding:15px}.case-story-layout{padding:25px 24px;gap:20px}.case-media-grid{grid-template-columns:1fr;gap:16px}.case-chapter{padding-bottom:55px}.case-chapter h2{font-size:38px}.case-copy p{font-size:17px}.case-next{padding:50px 24px;grid-template-columns:1fr;gap:30px}.case-contact{padding:50px 24px;flex-direction:column;align-items:start}.case-contact h2{font-size:42px}.case-next .portfolio-card h3{font-size:32px}}@media(prefers-reduced-motion:reduce){.case-chapter.entered h2{animation:none}.portfolio-card:hover .scope-diagram svg,.project-shot:hover img{transform:none}}
/* The Entrance: tighter editorial collection, full-bleed project imagery. */
.portfolio-collection{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 26px}.project-shot{padding:0;background:transparent;aspect-ratio:16/10}.project-shot img{border-radius:0;object-fit:cover}.portfolio-card h3{font-size:clamp(28px,2.15vw,48px)}.portfolio-card-body{padding:25px}.portfolio-card-body>p{font-size:17px}.portfolio-card .project-meta{font-size:12px}.project-scope{padding-top:20px;margin-top:15px}.portfolio-card .scope-diagram>div{font-size:10px}.portfolio-card .card-bottom{margin-top:auto;padding-top:25px}.portfolio-card .project-scope li{font-size:12px}.portfolio-card .project-scope{gap:12px}.portfolio-card .case-open{width:42px;height:42px}.portfolio-card .card-bottom{gap:15px}.portfolio-card .scope-diagram{max-width:280px}.portfolio-card{border-radius:25px}.portfolio-card .project-shot>span{font-size:13px}.work-concept-link{display:inline-flex;margin-top:24px;border-bottom:1px solid #668993;padding-bottom:8px;font-size:18px}@media(min-width:2200px){.portfolio-card-body{padding:36px}.portfolio-card-body>p{font-size:24px}.portfolio-card .project-meta,.portfolio-card .project-scope li{font-size:18px}.portfolio-card .scope-diagram>div{font-size:13px}}@media(max-width:1100px){.portfolio-collection{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.portfolio-collection{grid-template-columns:1fr}.portfolio-card h3{font-size:34px}.portfolio-card .project-meta{font-size:13px}}
/* Use the card width for the approach diagram and keep labels under their nodes. */
.portfolio-card .scope-diagram{max-width:none;min-width:0;width:100%;flex:1}
.portfolio-card .scope-diagram svg{display:block;width:100%;height:clamp(60px,4vw,115px);max-width:none}
.portfolio-card .scope-diagram>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1vw,24px);font-size:clamp(12px,.8vw,20px);line-height:1.45}
.portfolio-card .scope-diagram>div>span{max-width:none;text-align:center;overflow-wrap:anywhere}
.portfolio-card .card-bottom{align-items:flex-end;gap:20px;padding-top:28px}
.portfolio-card .case-open{flex-shrink:0}
.portfolio-card .scope-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.portfolio-card .scope-steps>.scope-step{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;font-size:clamp(12px,.8vw,20px)}
.portfolio-card .scope-steps>.scope-step:not(:last-child):after{content:'';position:absolute;left:calc(50% + 20px);width:calc(100% - 24px);height:2px;top:clamp(20px,1.45vw,36px);background:#c4ccd1;z-index:0}
.portfolio-card .scope-steps svg{width:clamp(40px,2.9vw,72px);height:clamp(40px,2.9vw,72px);position:relative;z-index:1;transform:none}
.portfolio-card .scope-steps span{text-align:center;max-width:none}

/* Compact supporting process bars beneath project cards. */
.portfolio-card .scope-diagram{flex:0 1 78%;width:78%;max-width:660px}
.portfolio-card .scope-steps{gap:10px}
.portfolio-card .scope-steps>.scope-step{gap:8px;font-size:clamp(11px,.65vw,16px)}
.portfolio-card .scope-steps svg{width:clamp(26px,1.9vw,48px);height:clamp(26px,1.9vw,48px)}
.portfolio-card .scope-steps>.scope-step:not(:last-child):after{left:50%;width:calc(100% + 10px);top:clamp(13px,.95vw,24px);height:1px}
.portfolio-card .card-bottom{padding-top:20px}
@media(max-width:700px){.portfolio-card .scope-diagram{flex-basis:82%;width:82%}}
