.portrait-section{padding:85px 10vw 95px;background:#fff}.portrait-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.portrait-heading h2,.client-intro h2{font-size:clamp(38px,5.5vw,76px);line-height:.98;letter-spacing:-.07em;font-weight:500;margin:20px 0}.portrait-section img{width:100%;height:auto;display:block}.portrait-caption{font:11px 'DM Mono',monospace;color:#77766f;letter-spacing:.02em;margin-top:18px}.client-section{padding:100px 10vw;background:#fff}.client-intro{max-width:740px;margin-bottom:50px}.client-intro p:last-child{font-size:14px;color:#666;line-height:1.7;max-width:550px}.client-section img{display:block;width:100%;height:auto;object-fit:contain;max-width:1100px;margin:0 auto}@media(max-width:700px){.portrait-section,.client-section{padding:65px 7vw}.portrait-heading{display:block}.portrait-heading h2,.client-intro h2{font-size:clamp(40px,9vw,65px)}}
/* Hero image appears first, full-width, without cropping the photograph */
main>.portrait-section:first-child{padding:0;background:#fff}main>.portrait-section:first-child .portrait-heading{display:none}main>.portrait-section:first-child img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}main>.portrait-section:first-child .portrait-caption{margin:0;padding:12px 5vw 18px;text-align:right}main>.portrait-section:first-child+.hero{min-height:0;padding-top:85px;padding-bottom:110px}@media(max-width:700px){main>.portrait-section:first-child{padding:0}main>.portrait-section:first-child .portrait-caption{padding:12px 7vw 18px;font-size:9px}main>.portrait-section:first-child+.hero{padding-top:65px}}
/* Enlarged uncommon perspective caption */
.portrait-caption,main>.portrait-section:first-child .portrait-caption{font-family:Manrope,Arial,sans-serif;font-size:clamp(24px,3.2vw,48px);font-weight:600;letter-spacing:-.045em;line-height:1.18;color:#111;max-width:950px;text-align:left;margin:0;padding:32px 5vw 48px;}@media(max-width:700px){.portrait-caption,main>.portrait-section:first-child .portrait-caption{font-size:clamp(24px,6vw,34px);padding:24px 7vw 38px;text-align:left;}}
/* Transformation statement typography */
.statement h2 em{font-style:normal}.statement p{max-width:850px}.statement .transformation-close{font-size:clamp(23px,3vw,42px);font-weight:700;letter-spacing:-.04em;line-height:1.18;margin-top:38px}.statement strong{font-weight:750}
/* CEO-level transformation visual hierarchy */
.statement{padding:clamp(90px,12vw,180px) 10vw clamp(95px,11vw,155px);background:#101010;color:#f5f4f0}.statement .eyebrow{font-size:clamp(14px,1.2vw,17px);letter-spacing:.12em;color:#eee}.statement h2{font-size:clamp(52px,8.4vw,128px);line-height:.99;letter-spacing:-.075em;font-weight:700;max-width:1400px;margin:38px 0 58px}.statement h2 .transformation-lead{color:#f5f4f0}.statement h2 em{display:inline-block;color:#f17b62;font-style:normal}.statement>p:not(.eyebrow):not(.transformation-close){font-size:clamp(18px,1.65vw,23px);line-height:1.6;max-width:850px;color:#e0dfd9;margin:0 0 25px}.statement>p strong{color:#fff;font-weight:800}.statement .transformation-close{font-size:clamp(32px,4.4vw,64px);line-height:1.08;color:#fff;margin:58px 0 12px;max-width:900px}.transformation-cta{display:inline-flex;gap:35px;align-items:center;margin-top:30px;padding:15px 0;border-bottom:2px solid #f17b62;color:#fff;font-size:clamp(16px,1.3vw,19px);font-weight:700}.transformation-cta span{color:#f17b62;font-size:24px}.statement+.hero{min-height:0;padding-top:90px;padding-bottom:130px}.statement+.hero h1{font-size:clamp(68px,10vw,150px)}@media(max-width:700px){.statement{padding:75px 7vw 90px}.statement h2{font-size:clamp(46px,10vw,72px);margin:30px 0 42px;letter-spacing:-.07em}.statement>p:not(.eyebrow):not(.transformation-close){font-size:18px}.statement .transformation-close{font-size:clamp(32px,8vw,48px)}.statement+.hero{padding-top:75px;padding-bottom:125px}}
/* Cascading section reveal animations */
@media(prefers-reduced-motion:no-preference){.cascade-reveal{opacity:0;transform:translate3d(0,18px,0);transition:opacity 950ms cubic-bezier(.2,.75,.25,1),transform 850ms cubic-bezier(.2,.75,.25,1);transition-delay:var(--cascade-delay,0ms);will-change:opacity,transform}.cascade-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}.cascade-reveal[data-cascade="image"]{transform:translate3d(0,12px,0) scale(1.008)}.cascade-reveal[data-cascade="image"].is-visible{transform:translate3d(0,0,0) scale(1)}}@media(prefers-reduced-motion:reduce){.cascade-reveal{opacity:1!important;transform:none!important;transition:none!important}}

/* Keep the closing thought together in the top-panel caption */
.no-orphan{white-space:nowrap}

/* Direct-client experience: stronger editorial presentation */
.client-intro{max-width:950px}.client-intro h2{font-size:clamp(49px,6.5vw,94px);font-weight:700;line-height:1.02;letter-spacing:-.075em}.client-intro p:not(.eyebrow){max-width:800px;font-size:clamp(18px,1.7vw,24px);line-height:1.55;color:#333;margin:22px 0}.client-intro .text-link{font-size:clamp(16px,1.3vw,19px);margin:18px 0 12px}

/* Make the business-become question a defining moment, not a passing line. */
.statement .business-become-moment{margin:clamp(110px,16vw,240px) 0 clamp(100px,14vw,205px);padding:clamp(70px,10vw,145px) 0 clamp(85px,11vw,155px);border-top:1px solid rgba(255,255,255,.32);border-bottom:1px solid rgba(255,255,255,.32);max-width:1300px}
.statement .business-become-intro{font-size:clamp(13px,1.1vw,16px);font-weight:750;letter-spacing:.17em;color:#bbb;margin:0 0 clamp(42px,7vw,100px)}
.statement .business-become-moment h3{font-size:clamp(64px,10.2vw,162px);font-weight:750;line-height:1.04;letter-spacing:-.082em;color:#fff;margin:0 0 clamp(55px,8vw,110px);max-width:1250px}
.statement .business-become-moment h3 em{font-style:normal;color:#f17b62}
.statement .business-become-support{font-size:clamp(20px,2.15vw,32px);line-height:1.45;max-width:720px;color:#eee;margin:0}
@media(max-width:700px){.statement .business-become-moment{margin:95px 0 100px;padding:65px 0 80px}.statement .business-become-intro{margin-bottom:48px}.statement .business-become-moment h3{font-size:clamp(48px,11vw,78px);letter-spacing:-.075em;margin-bottom:65px}.statement .business-become-support{font-size:20px}}

/* Keep the change manifesto together; the business-become question follows as its own chapter. */
.statement .transformation-close{margin:clamp(45px,6vw,88px) 0 clamp(30px,4vw,56px);max-width:1000px}.statement .business-become-moment{margin-top:clamp(85px,11vw,165px)}

/* Connect personal promise directly to the transformation headline. */
.statement .statement-lead{font-size:clamp(24px,2.6vw,38px)!important;line-height:1.38!important;font-weight:600;color:#fff!important;max-width:1040px!important;margin:0 0 clamp(75px,9vw,135px)!important;letter-spacing:-.025em}
@media(max-width:700px){.statement .statement-lead{font-size:clamp(22px,5vw,28px)!important;margin-bottom:78px!important}}

/* Cohesive transformation manifesto: keep the headline, promise, AI context and close together. */
.statement h2{margin-bottom:clamp(24px,3.2vw,46px)}
.statement .statement-lead{margin-bottom:clamp(26px,3.4vw,48px)!important}
.statement>p:not(.eyebrow):not(.transformation-close):not(.statement-lead){margin-bottom:clamp(12px,1.7vw,23px)}
.statement .transformation-close{margin:clamp(25px,3.4vw,48px) 0 clamp(20px,2.6vw,38px)}
.statement .business-become-moment{margin-top:clamp(95px,12vw,175px)}
@media(max-width:700px){.statement h2{margin-bottom:28px}.statement .statement-lead{margin-bottom:28px!important}.statement .transformation-close{margin:30px 0 25px}.statement .business-become-moment{margin-top:90px}}

/* Harmonised supporting copy: See what could be / Bring the best of humanity forward */
main>.hero .hero-copy,main>.split>p{font-size:clamp(21px,2vw,28px);line-height:1.55;letter-spacing:-.015em;color:#393934}
main>.hero .hero-copy{max-width:760px}
main>.split>p{max-width:780px}
@media(max-width:700px){main>.hero .hero-copy,main>.split>p{font-size:20px;line-height:1.6}}

/* Editorial, authoritative scroll motion: especially restrained on mobile. */
@media(prefers-reduced-motion:no-preference){.cascade-reveal{transition-timing-function:cubic-bezier(.22,.7,.24,1);will-change:auto}.cascade-reveal[data-cascade="image"]{transition-duration:1100ms}}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){.cascade-reveal{transform:translate3d(0,10px,0);transition-duration:650ms;transition-delay:0ms!important}.cascade-reveal[data-cascade="image"]{transform:translate3d(0,8px,0);transition-duration:750ms}}

/* Ambition headline matches the bold editorial type of other transformation headlines. */
main>.split h2{font-size:clamp(52px,6.8vw,105px);font-weight:700;line-height:1.02;letter-spacing:-.075em;max-width:100%;text-wrap:balance}
@media(max-width:700px){main>.split h2{font-size:clamp(43px,10vw,70px);line-height:1.04;letter-spacing:-.065em}}

/* Consistent transformation editorial hierarchy: strong weight, proportional sizes. */
.hero h1,.page-hero h1,.case-hero h1{font-weight:700;line-height:.98;letter-spacing:-.075em;text-wrap:balance}
.statement h2,main>.split h2,.cta h2,.portrait-heading h2,.client-intro h2,.case-home-feature h2,.case-next h2{font-weight:700;letter-spacing:-.075em;line-height:1.04;text-wrap:balance}
.statement h2{font-size:clamp(52px,8.4vw,128px)}
main>.split h2{font-size:clamp(52px,6.8vw,105px)}
.case-home-feature h2,.client-intro h2,.cta h2{font-size:clamp(43px,6.3vw,92px)}
.case-tile h2,.case-story h2,.key-film h2,.archive-document h2,.case-next h2,.services-wrap .service-row h2{font-weight:700;letter-spacing:-.065em;text-wrap:balance}
@media(max-width:700px){.statement h2{font-size:clamp(46px,10vw,72px)}main>.split h2{font-size:clamp(43px,10vw,70px)}.case-home-feature h2,.client-intro h2,.cta h2{font-size:clamp(40px,9vw,65px)}}

/* Three-part positioning line: confident editorial supporting type. */
.hero-index{font-family:Manrope,Arial,sans-serif;font-weight:700;font-size:clamp(12px,1.05vw,15px);letter-spacing:.055em;line-height:1.5}
@media(max-width:700px){.hero-index{font-size:clamp(10px,2.5vw,13px);letter-spacing:.025em}}

/* Brand stories: clear destinations instead of an unlinked client list. */
.brand-story-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:28px 0 34px}.brand-story-links a{display:flex;flex-direction:column;gap:7px;padding:19px 0;border-top:1px solid #bcb9b3;touch-action:manipulation}.brand-story-links strong{font-size:clamp(19px,2vw,27px);font-weight:750;letter-spacing:-.045em}.brand-story-links span{font-size:clamp(12px,1.1vw,15px);font-weight:600;color:#555}.brand-story-links a:hover span{color:#b44832}@media(max-width:700px){.brand-story-links{grid-template-columns:1fr;gap:0}.brand-story-links a{padding:15px 0}}

/* Uncommon perspective portrait statement uses the same headline weight. */
.portrait-caption,main>.portrait-section:first-child .portrait-caption{font-weight:700;letter-spacing:-.065em;line-height:1.1;text-wrap:balance}

/* Connect the invitation to the question directly above it. */
.statement .business-become-moment{margin-bottom:clamp(35px,5vw,70px);padding-bottom:clamp(42px,5vw,72px)}
.statement .business-become-moment .business-become-support{margin-bottom:0}
.statement .business-become-moment .transformation-cta{display:inline-flex;margin-top:clamp(22px,3vw,42px);font-size:clamp(18px,1.75vw,25px);font-weight:700;line-height:1.3;padding:14px 0 16px;max-width:100%;border-bottom:2px solid #f17b62}
@media(max-width:700px){.statement .business-become-moment{margin-bottom:35px;padding-bottom:45px}.statement .business-become-moment .transformation-cta{margin-top:24px;font-size:clamp(17px,4.4vw,21px);gap:14px}}

/* The question and invitation are one uninterrupted thought, without grey divider rules. */
.statement .business-become-moment{border-top:0;border-bottom:0;padding-top:clamp(20px,3vw,42px);padding-bottom:clamp(25px,3vw,45px);margin-top:clamp(50px,6vw,85px);margin-bottom:0}
.statement .business-become-moment h3{margin-bottom:clamp(26px,4vw,52px)}
.statement .business-become-moment .transformation-cta{margin-top:clamp(12px,1.7vw,23px)}
@media(max-width:700px){.statement .business-become-moment{margin-top:48px;padding-top:20px;padding-bottom:25px}.statement .business-become-moment h3{margin-bottom:30px}.statement .business-become-moment .transformation-cta{margin-top:12px}}
