@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#17212b;--muted:#596572;--line:#dce2e6;--accent:#fd006c;--paper:#fff;--soft:#f4f7fa;scroll-behavior:smooth;scroll-padding-top:110px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:1.125rem;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}img{display:block;max-width:100%;height:auto}figure{margin:0}p{margin:0 0 1.35em}strong{font-weight:650}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:650;line-height:1.15;margin:0;letter-spacing:-.045em}h1{font-size:clamp(3rem,5.25vw,5rem);max-width:960px;font-weight:600;line-height:1.09}h1 span{color:var(--accent)}h2{font-size:clamp(2rem,3vw,2.8rem);margin-bottom:30px}h3{font-size:1.25rem;letter-spacing:-.025em}.wrap{max-width:1320px;margin:auto;padding-inline:60px}.topbar{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 60px;max-width:1600px;margin:auto}.wordmark{font-size:1.4rem;font-weight:700;letter-spacing:-.055em}.mark{color:var(--accent);font-size:1.9rem}.topbar nav{display:flex;gap:34px;font-size:.9375rem}.selected{color:var(--accent)}.hero{padding-top:40px}.back{font-size:.875rem;color:var(--muted)}.hero-title{display:grid;grid-template-columns:1fr;align-items:end;gap:50px;margin-top:55px}.eyebrow,.section-label,dt{font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.eyebrow{color:var(--accent);margin-bottom:24px}.metadata{display:grid;grid-template-columns:1.35fr .8fr 1fr;gap:50px;margin:44px 0 44px;padding-top:25px;border-top:1px solid var(--line)}dt{color:var(--muted);margin-bottom:9px}dd{font-size:.9375rem;margin:0;line-height:1.5;max-width:295px}.hero-image{border-radius:10px;overflow:hidden;border:1px solid #e2e9ef}.hero-image img{width:100%}.article-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:80px;padding-top:90px;align-items:start}.toc{position:sticky;top:48px}.article-layout aside{align-self:stretch}.toc .eyebrow{font-size:.75rem;color:var(--muted);margin-bottom:24px}.toc a{display:flex;align-items:baseline;gap:12px;font-size:.875rem;padding:9px 12px;margin-left:-12px;border-left:2px solid transparent;color:var(--muted);line-height:1.45;transition:color .15s,background .15s}.toc a span{font-size:.75rem;color:#89939d;font-variant-numeric:tabular-nums}.toc a.active{border-color:var(--accent);color:var(--accent);background:#fff0f6}.toc a:hover{color:var(--accent)}article{max-width:840px;min-width:0}article section{padding-bottom:74px;margin-bottom:68px;border-bottom:1px solid var(--line);scroll-margin-top:0}article section:last-child{border:0;margin-bottom:0}.section-label{color:var(--accent);margin-bottom:22px;font-size:.75rem}article p{color:#485461}article p strong{color:var(--ink)}.delivery{margin-top:38px;padding:30px 32px;background:var(--soft);border:1px solid #e4e9ef;border-radius:6px}.outcome{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;margin-top:24px}.big-number{font-family:Manrope,sans-serif;font-size:5.5rem;line-height:1;color:var(--accent);letter-spacing:-.08em;font-weight:500}.big-number span{font-size:3rem;letter-spacing:-.04em}.outcome strong{font-size:1.0625rem}.outcome p{font-size:.9375rem;line-height:1.55;margin:7px 0 0}.deliverables{list-style:none;padding:22px 0 0;margin:26px 0 0;border-top:1px solid #d9e1e9;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;font-size:.9375rem;line-height:1.5}.deliverables li{padding-left:17px;position:relative}.deliverables li:before{content:'·';position:absolute;left:0;color:var(--accent);font-weight:700}.findings{padding-left:24px;margin:30px 0 0}.findings li{padding-left:7px;margin:17px 0;color:#485461}.findings li::marker{color:var(--accent)}.lead{font-size:1.375rem;line-height:1.6;color:var(--ink)}blockquote{margin:35px 0;padding:6px 0 6px 25px;border-left:3px solid var(--accent);font-size:1.4rem;line-height:1.55;letter-spacing:-.02em}.video-frame{aspect-ratio:16/9;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#f2f5f8;margin-top:32px}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-link{display:block;width:fit-content;font-size:.8125rem;color:var(--muted);margin:10px 0 26px auto}.tradeoff{padding:22px 25px;border-left:2px solid #fd006c;background:#fff5f9;font-size:1rem;line-height:1.65;color:#485461;margin-top:26px}.tradeoff strong{display:block;color:var(--ink);margin-bottom:6px}.diagram{margin-top:30px;border:1px solid var(--line);border-radius:8px;overflow:hidden}footer{border-top:1px solid var(--line);padding-block:35px;display:flex;justify-content:space-between;align-items:center}footer>a:last-child{font-size:.875rem}.skip{position:fixed;left:15px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:15px}
@media(min-width:1600px){.wrap{max-width:1400px}h1{font-size:5.5rem}.article-layout{gap:110px}}
@media(max-width:1050px){.wrap{padding-inline:35px}.topbar{padding-inline:35px}.hero-title{grid-template-columns:1fr;gap:0}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:40px}.outcome{gap:20px}.big-number{font-size:4.5rem}.delivery{padding:25px}.deliverables{grid-template-columns:1fr}}
@media(max-width:760px){:root{scroll-padding-top:30px}.wrap{padding-inline:22px}.topbar{height:76px;padding-inline:22px}.topbar nav{gap:20px;font-size:.875rem}.wordmark{font-size:1.2rem}.hero{padding-top:26px}.hero-title{margin-top:36px}.eyebrow{font-size:.6875rem;letter-spacing:.06em;margin-bottom:20px}h1{font-size:clamp(2.55rem,8.7vw,4rem);line-height:1.12}.metadata{grid-template-columns:1fr 1fr;gap:22px;margin:30px 0}.metadata>div:first-child{grid-column:1/-1}dd{font-size:.875rem;max-width:none}dt{font-size:.6875rem}.article-layout{display:block;padding-top:35px}.article-layout aside{margin-bottom:44px}.toc{position:static;border-bottom:1px solid var(--line);padding-bottom:22px}.toc .eyebrow{margin-bottom:10px}.toc{display:flex;flex-wrap:wrap;gap:4px 12px}.toc>p{width:100%}.toc a{font-size:.8125rem;padding:5px 0;margin:0;border:0;gap:5px}.toc a.active{background:none}.toc a span{display:none}body{font-size:1.0625rem}h2{font-size:2rem;margin-bottom:24px}article section{padding-bottom:46px;margin-bottom:44px}.section-label{margin-bottom:17px;font-size:.6875rem}.delivery{padding:23px 20px}.outcome{grid-template-columns:1fr;gap:18px}.big-number{font-size:5rem}.deliverables{padding-top:20px;margin-top:22px}.lead{font-size:1.2rem}blockquote{font-size:1.2rem;padding-left:20px;margin-block:28px}.tradeoff{padding:20px;font-size:1rem}footer{padding-block:27px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}
.commerce-number{font-size:4.8rem;white-space:nowrap}.next-case{padding-block:42px 60px;border-top:1px solid var(--line)}.next-case>a{display:block}.next-case .eyebrow{display:block;margin-bottom:16px}.next-case-title{display:flex;gap:40px;justify-content:space-between;align-items:center;font-family:Manrope,sans-serif;font-size:clamp(1.5rem,3vw,2.4rem);font-weight:600;line-height:1.3;letter-spacing:-.04em;max-width:1000px}.next-case-title>span{color:var(--accent);flex-shrink:0}.social-links{display:flex;gap:20px;font-size:.875rem}@media(max-width:760px){.next-case{padding-block:30px 40px}.next-case-title{gap:20px}footer{flex-wrap:wrap;gap:18px}.social-links{order:3;width:100%;gap:24px}}

/* Keep title color phrases together on desktop; balance smaller layouts. */
h1,h2,h3,.next-case-title{text-wrap:balance}
.hero-title{container-type:inline-size}
.hero .hero-title h1{max-width:none;font-size:clamp(2.75rem,5cqi,4.75rem);line-height:1.12}
.hero-title h1>span{display:block;text-wrap:balance}
@media(min-width:1051px){.hero-title h1>span{white-space:nowrap}}
@media(max-width:1050px){.hero .hero-title h1{font-size:clamp(2.4rem,6.5cqi,4rem)}}
@media(max-width:760px){.hero .hero-title h1{font-size:clamp(1.85rem,8.5cqi,3rem)}.hero-title h1>span{white-space:normal}}

/* Allow narrow layouts and enlarged text to reflow without clipping. */
.hero-title,.hero-title>div,.metadata>div{min-width:0}
@media(max-width:400px){.topbar{height:auto;min-height:76px;flex-wrap:wrap;gap:8px 20px;padding-block:14px}.topbar nav{flex-wrap:wrap;gap:12px}.mb-kpi{flex-wrap:wrap}.home-contact,.about-contact{flex-wrap:wrap;gap:20px}.social-links{flex-wrap:wrap}}
