/* Editorial rhythm for services and approach only. */
.visual-page{--soft:#eeeee6;--accent:#b5c4a9;--muted:#53665e}.visual-container{max-width:1400px;margin:0 auto;padding-left:48px;padding-right:48px}.visual-page figure{margin:0}.visual-page img{display:block;width:100%;height:auto;object-fit:cover;background:#e5e5dc}.visual-page h1,.visual-page h2,.visual-page h3{font-weight:400}.visual-page h1{font-size:clamp(38px,4.5vw,65px);line-height:1.06;letter-spacing:-2.5px;margin:0 0 24px;text-wrap:balance}.visual-page h2{font-size:clamp(30px,3.2vw,43px);line-height:1.13;letter-spacing:-1.3px;margin:0 0 20px;text-wrap:balance}.visual-page p{line-height:1.7}.visual-page .eyebrow{line-height:1.4;font-size:11px;letter-spacing:1.7px;margin:0 0 20px}.visual-lead{font-size:18px;color:var(--muted);max-width:440px;margin:0 0 26px}.visual-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center;padding-top:46px;padding-bottom:54px}.visual-hero-copy{padding:14px 0}.hero-still{position:relative}.hero-still img{aspect-ratio:1.35;object-fit:cover}.hero-still figcaption{font-size:11px;letter-spacing:.6px;margin-top:12px;color:var(--muted)}.text-link{display:inline-block;font-size:14px;line-height:1.5;border-bottom:1px solid #8ca08e;padding:9px 0}.text-link:hover{border-color:var(--ink)}.expertise-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:40px;padding-bottom:44px;border-top:1px solid var(--line)}.expertise-intro>div>p:not(.eyebrow){font-size:17px;line-height:1.75;color:var(--muted);margin:0 0 20px;max-width:540px}.expertise-intro h2{font-size:35px}.role-jumps{gap:12px;flex-wrap:wrap;font-size:12px}.role-jumps a{padding:10px 14px;border:1px solid #b8c4b8;transition:background .15s}.role-jumps a:hover{background:#e6eadf}.role-stories{padding-bottom:20px}.role-story{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;padding:48px 0;border-top:1px solid var(--line);scroll-margin-top:28px}.role-story.reverse figure{order:2}.role-story.reverse .role-copy{order:1}.role-story img{aspect-ratio:1.28;object-fit:cover}.role-story figcaption{font-size:11px;letter-spacing:.7px;color:var(--muted);margin-top:12px}.role-copy{padding-top:8px}.role-copy h2{max-width:470px}.role-copy .visual-lead{font-size:17px;max-width:490px;margin-bottom:20px}.service-tags{display:flex;list-style:none;flex-wrap:wrap;gap:8px 15px;padding:0;margin:0 0 23px}.service-tags li{font-size:12px;color:var(--muted);padding-bottom:4px}.service-tags li:not(:last-child):after{content:'·';padding-left:15px;color:#889787}.editorial-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}.editorial-details summary{padding:16px 0;font-size:14px;line-height:1.5;gap:20px;justify-content:space-between;min-height:56px}.editorial-details summary:after{flex-shrink:0;font-size:20px;font-weight:400}.scope-content{padding:2px 0 18px;max-width:540px}.scope-content h4{font-size:15px;font-weight:500;margin:15px 0 4px}.scope-content p{font-size:14px;line-height:1.75;color:var(--muted);margin:0 0 13px}.scope-content p:last-child{margin-bottom:0}.scope-specialism{padding-top:15px;border-top:1px solid var(--line);margin-top:20px!important}.role-copy>.text-link{margin-top:17px}.execution-link{margin-top:14px;padding-top:40px;padding-bottom:42px;background:var(--soft)}.execution-link h2{font-size:36px}.execution-link>p:not(.eyebrow){max-width:760px;font-size:17px;color:var(--muted);margin:0 0 15px}.visual-page .image-note{font-size:11px;color:var(--muted);padding-top:25px;padding-bottom:25px;margin:0 auto}.visual-cta{background:var(--ink);color:var(--paper)}.visual-cta>.visual-container{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:45px;padding-bottom:45px}.visual-cta h2{font-size:34px;margin:0 0 8px}.visual-cta p{font-size:15px;color:#d1dbd0;margin:0}.visual-cta .contact-button{background:var(--paper);color:var(--ink);flex-shrink:0}.experience-section{border-top:1px solid var(--line);padding-top:45px;padding-bottom:52px}.experience-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:end;margin-bottom:30px}.experience-heading .eyebrow{grid-column:1/-1}.experience-heading h2{margin-bottom:0}.experience-heading>p:last-child{font-size:17px;color:var(--muted);max-width:440px;margin:0}.experience-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px}.experience-pair img{aspect-ratio:1.75}.experience-pair figcaption{padding:20px 0 0;max-width:500px}.experience-pair h3{font-size:24px;letter-spacing:-.5px;line-height:1.2;margin:0 0 10px}.experience-pair p{font-size:15px;color:var(--muted);margin:0}.execution-band{background:var(--ink);color:var(--paper);scroll-margin-top:20px}.execution-band>.visual-container{padding-top:50px;padding-bottom:48px}.execution-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;margin-bottom:34px;align-items:end}.execution-heading h2{margin-bottom:0}.execution-band .eyebrow{color:#b9c9b4}.execution-heading>p{font-size:16px;color:#d1dbd0;margin:0;max-width:450px}.execution-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.execution-grid article{border-top:1px solid #638079;padding-top:22px}.execution-number{display:block;font-size:13px;letter-spacing:1px;color:#b9c9b4;margin-bottom:25px}.execution-grid h3{font-size:22px;line-height:1.25;margin:0 0 14px;letter-spacing:-.4px}.execution-grid article>p{font-size:14px;color:#d1dbd0;margin:0 0 18px;min-height:72px}.execution-band .editorial-details{border-color:#638079}.execution-band .scope-content p{color:#d1dbd0}.execution-band .editorial-details summary{font-size:13px}.decisions-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-top:55px;padding-bottom:50px}.decisions-section>div>p:not(.eyebrow){font-size:17px;color:var(--muted);max-width:290px}.decision-list .editorial-details:not(:first-child){border-top:0}.decision-list summary{font-size:20px;padding:22px 0;justify-content:flex-start;letter-spacing:-.3px}.decision-number{font-size:12px;color:var(--muted);min-width:25px;letter-spacing:0}.decision-list summary:after{margin-left:auto}.decision-list .scope-content{padding:0 15px 22px 45px}.principles-strip{padding-top:30px;padding-bottom:34px;border-top:1px solid var(--line)}.principles-strip h2{font-size:26px;margin-bottom:12px}.principles-strip p{font-size:15px;color:var(--muted);margin:0}.visual-page .principles-strip+.image-note{padding-top:0}
@media(min-width:1400px){.visual-hero{padding-top:50px;padding-bottom:58px}.hero-still img{max-height:470px}.role-story img{max-height:445px}}
@media(max-width:1050px){.visual-container{padding-left:30px;padding-right:30px}.visual-hero{gap:30px}.visual-page h1{font-size:48px}.visual-lead{font-size:17px}.role-story,.expertise-intro,.experience-heading,.execution-heading{gap:35px}.execution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.execution-grid article>p{min-height:0}.decisions-section{gap:40px}.role-jumps{gap:8px}.role-jumps a{padding:8px 10px}}
@media(max-width:760px){.visual-container{padding-left:22px;padding-right:22px}.visual-hero{grid-template-columns:1fr;gap:28px;padding-top:30px;padding-bottom:34px}.visual-hero-copy{padding:0}.visual-page h1{font-size:clamp(35px,8.5vw,49px);letter-spacing:-1.5px;line-height:1.1;margin-bottom:18px;text-wrap:initial}.visual-page .eyebrow{margin-bottom:15px}.visual-lead{font-size:16px;margin-bottom:16px;max-width:540px}.hero-still img{aspect-ratio:1.5}.hero-still figcaption{font-size:10px}.expertise-intro{grid-template-columns:1fr;gap:5px;padding-top:30px;padding-bottom:30px}.expertise-intro h2{font-size:30px}.expertise-intro>div>p:not(.eyebrow){font-size:16px}.role-jumps{gap:8px}.role-jumps a{font-size:12px;padding:10px}.role-story{grid-template-columns:1fr;gap:24px;padding:32px 0}.role-story.reverse figure,.role-story.reverse .role-copy{order:initial}.role-story img{aspect-ratio:1.5}.role-story figcaption{font-size:10px}.role-copy{padding:0}.visual-page h2{font-size:31px;letter-spacing:-.8px;line-height:1.17}.role-copy .visual-lead{font-size:16px}.role-copy>.text-link{margin-top:12px}.service-tags{gap:6px 10px;margin-bottom:16px}.service-tags li{font-size:11px}.service-tags li:not(:last-child):after{padding-left:10px}.execution-link{margin-top:0;padding-top:32px;padding-bottom:32px}.execution-link>p:not(.eyebrow){font-size:16px}.visual-cta>.visual-container{display:block;padding-top:34px;padding-bottom:34px}.visual-cta h2{font-size:29px}.visual-cta .contact-button{margin-top:23px}.experience-section{padding-top:32px;padding-bottom:32px}.experience-heading{display:block;margin-bottom:26px}.experience-heading h2{margin-bottom:18px}.experience-heading>p:last-child{font-size:16px}.experience-pair{grid-template-columns:1fr;gap:30px}.experience-pair img{aspect-ratio:1.6}.experience-pair figcaption{padding-top:15px}.experience-pair h3{font-size:23px}.execution-band>.visual-container{padding-top:34px;padding-bottom:34px}.execution-heading{display:block;margin-bottom:28px}.execution-heading h2{margin-bottom:20px}.execution-heading>p{font-size:15px}.execution-grid{gap:24px 20px}.execution-grid h3{font-size:20px}.execution-grid article>p{font-size:14px}.execution-number{margin-bottom:17px}.decisions-section{grid-template-columns:1fr;gap:15px;padding-top:35px;padding-bottom:35px}.decisions-section h2 br{display:none}.decisions-section>div>p:not(.eyebrow){max-width:100%;font-size:16px}.decision-list summary{font-size:18px;gap:14px;padding:20px 0}.decision-list .scope-content{padding-left:0}.principles-strip{padding-top:26px;padding-bottom:26px}.principles-strip h2{font-size:24px}.visual-page .image-note{font-size:10px;padding-top:20px;padding-bottom:20px}}
@media(max-width:380px){.execution-grid{grid-template-columns:1fr}.visual-page h1{font-size:35px}.role-jumps{gap:6px}.role-jumps a{font-size:11px;padding:9px}.execution-grid article>p{margin-bottom:10px}.execution-number{margin-bottom:12px}}

.execution-photo{margin:0 0 32px!important}.execution-photo img{aspect-ratio:2.65;object-fit:cover;object-position:50% 58%}.execution-photo figcaption{font-size:11px;color:#c8d5c4;padding-top:12px;line-height:1.5}@media(max-width:760px){.execution-photo img{aspect-ratio:1.5;object-position:22% 50%}.execution-photo figcaption{font-size:10px}.execution-photo{margin-bottom:26px!important}}
