@import url('https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap');
/* Refined review design - visual changes only. */
:root{--ink:#25233a;--paper:#fff;--violet:#715bea;--blue:#5e9bd5;--coral:#e66a91;--mint:#267e75;--lavender:#f2efff;--line:#e7e4ee;--muted:#69677a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.shell{width:min(calc(100% - 3rem),1240px);margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;padding:0 max(1.5rem,calc((100vw - 1240px)/2));position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.wordmark{font-size:1.55rem;font-weight:900;letter-spacing:-.08em}nav{display:flex;align-items:center;gap:2rem;font-size:.9rem;font-weight:700}.nav-cta{padding:.72rem 1rem;color:#fff}.menu-button{display:none;width:46px;height:46px;padding:0;border:1px solid var(--ink);background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.menu-button span{display:block;width:20px;height:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease}.menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.eyebrow,.section-index{font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.hero h1,.page-intro h1{margin:1.3rem 0 2rem;font-size:clamp(3.5rem,8vw,7.8rem);letter-spacing:-.075em;position:relative;z-index:1}.hero h1 span{display:block}.hero-foot{display:flex;justify-content:space-between;position:relative;z-index:1}.hero-foot p{margin:0}.button{display:inline-flex;align-items:center;font-weight:900;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease}.section{padding-block:7rem}.section h2{margin:1.5rem 0 4rem;font-size:clamp(3rem,6vw,6rem);line-height:.92;letter-spacing:-.065em}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr)}.expertise-card h3{font-size:1.7rem;letter-spacing:-.03em}.expertise-card p,.lede,.project p{margin:0}.home-feature{display:grid;grid-template-columns:.8fr 1.2fr}.home-feature .links{display:grid}.text-link{display:flex;justify-content:space-between;font-weight:800}.page-intro h1{font-size:clamp(4rem,10vw,9rem)}.page-intro .lede{max-width:760px;font-size:clamp(1.2rem,2vw,1.55rem)}.project{display:grid;grid-template-columns:120px 1fr 1fr;gap:2rem}.project h2{font-size:clamp(2rem,4vw,4rem);line-height:.98;letter-spacing:-.05em;margin:0}.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.tag{padding:.35rem .6rem;font-size:.78rem;font-weight:800}.project-detail{margin-top:2rem;display:grid;gap:1rem}.project-detail dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.project-detail dd{margin:0}.insight-grid{display:grid;grid-template-columns:repeat(2,1fr)}.insight-card{display:flex;flex-direction:column;justify-content:space-between}.insight-card h2{font-size:clamp(2rem,4vw,3.8rem);line-height:.98;letter-spacing:-.05em;margin:.5rem 0}.article-layout{display:grid;grid-template-columns:220px minmax(0,760px);padding-block:5rem}.article-aside{font-size:.82rem;font-weight:800}.article-body h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.92;letter-spacing:-.06em;margin:0 0 2rem}.article-body h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.05;letter-spacing:-.035em;margin:3.5rem 0 1rem}.article-body p,.article-body li{font-size:1.08rem}.article-body .standfirst{font-size:1.4rem;color:var(--muted)}.article-body blockquote{margin:3rem 0;padding:1.5rem 0;border-block:1px solid var(--ink);font-size:1.5rem;font-weight:800}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:start}.portrait-wrap{position:relative}.portrait-wrap:before{content:"";position:absolute;inset:18px -18px -18px 18px;z-index:-1}.portrait{width:100%;aspect-ratio:1;object-fit:cover;display:block}.bio p{font-size:clamp(1.15rem,2vw,1.5rem);margin:0 0 1.5rem}.principles{margin-top:4rem;border-top:1px solid var(--ink)}.principles>h2{margin:1.5rem 0 1rem;font-size:1.8rem;letter-spacing:-.03em}.principle{display:grid;grid-template-columns:100px 1fr;padding:1.5rem 0;border-bottom:1px solid var(--line)}.principle h3{margin:0;font-size:1.15rem}.principle p{margin:.35rem 0 0;font-size:1rem;color:var(--muted)}.contact-block{min-height:calc(100vh - 182px);display:flex;flex-direction:column;justify-content:center;padding-block:5rem}.contact-block h1{font-size:clamp(4rem,11vw,10rem);line-height:.86;letter-spacing:-.08em;margin:0}.contact-block p{max-width:650px;font-size:1.35rem;margin:2rem 0}.email-link{font-size:clamp(1.35rem,4vw,3.5rem);font-weight:900;border-bottom:5px solid var(--coral);width:fit-content}.site-footer{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.88rem;font-weight:700}.linkedin{display:inline-grid;place-items:center;width:26px;height:26px;color:#fff;font-size:.8rem;font-weight:900;margin-right:.4rem}.privacy-copy{max-width:760px;padding-bottom:7rem}.privacy-copy h2{margin-top:2.5rem}.consent{position:fixed;z-index:50;left:1rem;right:1rem;bottom:1rem;max-width:760px;margin:auto;padding:1.2rem;color:#fff;display:none}.consent.show{display:flex;gap:1rem;align-items:center;justify-content:space-between}.consent p{margin:0;font-size:.9rem}.consent-actions{display:flex;gap:.5rem}.consent button{border:1px solid #fff;padding:.65rem .9rem;font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.decline{background:transparent;color:#fff}.skip-link{position:absolute;left:-999px;top:0}.skip-link:focus{left:1rem;top:1rem;z-index:100;background:#fff;padding:.8rem}
body{font-family:"DM Sans",Arial,sans-serif;background:#fff;color:var(--ink)}
.site-header{min-height:78px;border-bottom:0;background:rgb(255 255 255/.94);box-shadow:0 6px 18px rgb(64 49 115/.06)}
.wordmark{display:inline-block;padding-right:.16em;font-family:"DM Sans",Arial,sans-serif;font-size:1.7rem;font-weight:700;letter-spacing:-.06em;line-height:1;background:linear-gradient(135deg,#8063c7 10%,#e9a0ba 50%,#8bcdb8 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.wordmark span{display:none}
nav a:not(.nav-cta):hover,nav a[aria-current=page]{color:var(--violet)}.nav-cta{background:var(--violet);border-radius:8px}
.hero{min-height:600px;padding-block:6.5rem;background:linear-gradient(118deg,#f2efff 0%,#fbf7ff 38%,#fff2f6 67%,#fff8fb 100%)}
.hero h1,.page-intro h1,.section h2,.project h2,.insight-card h2,.article-body h1,.article-body h2,.contact-block h1,.principles>h2{font-family:"DM Sans",Arial,sans-serif;font-weight:700}
.hero h1{max-width:68%;line-height:.91;color:var(--ink)}.hero h1 span{color:var(--violet)}.hero h1 span:last-child{color:var(--coral)}
.page-intro h1 .by-doing{color:var(--violet)}
.hero-foot{align-items:flex-start;flex-direction:column;gap:1.45rem;max-width:60%}.hero-foot p{font-size:1.15rem;line-height:1.55;color:#56546a}
.button{gap:.65rem;padding:.85rem 1.15rem;background:var(--violet);color:#fff;border-radius:10px;box-shadow:0 8px 18px rgb(113 91 234/.2)}.button:hover{background:#5e48d7;box-shadow:0 12px 24px rgb(113 91 234/.22)}.button.dark{background:var(--ink)}
.orbit{display:none}.section{border-top:0;padding-block:5rem}.section h2{color:var(--ink)}
.expertise-grid{gap:1.3rem;border:0}.expertise-card,.expertise-card+.expertise-card{min-height:260px;padding:2rem;border:0;border-radius:22px;background:#f3f0ff}.expertise-card+.expertise-card{background:#ecfbf9}.expertise-card:last-child{background:#fff0f4}.expertise-card>span,.number{color:var(--violet)}.expertise-card h3{margin-top:1.6rem}.expertise-card p,.lede,.project p{color:var(--muted)}
.home-feature{gap:4rem;align-items:center}.text-link{padding:1.25rem 1.3rem;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 4px 14px rgb(37 35 58/.035)}.text-link+.text-link{margin-top:.8rem}.text-link:hover{color:var(--violet);border-color:var(--violet);background:#faf9ff}
.page-intro{padding-block:6rem 4.5rem;background:linear-gradient(135deg,#f6f4ff 0%,#fff 70%)}.page-intro h1{color:var(--ink)}.page-intro .lede{color:var(--muted)}
.project-list{border-top:0}.project{margin-bottom:1rem;padding:2.6rem;border:1px solid var(--line);border-radius:20px;background:#fff}.project:nth-child(even){background:#fbfdff}.project-detail dt{color:var(--violet)}.tag{background:var(--lavender);color:#4a3bc2;border-radius:99px}
.insight-grid{gap:1.4rem}.insight-card{min-height:330px;border:0;border-radius:22px;box-shadow:none}.insight-card:first-child{background:linear-gradient(145deg,#6c5be4,#8d78ff)}.insight-card:nth-child(2){background:#ffe8ee}.insight-card:nth-child(3){background:#dff5ff}.insight-card:nth-child(4){background:#edf9f7}.insight-card:hover{transform:translateY(-5px);box-shadow:0 14px 28px rgb(48 36 112/.12)}
.article-layout{gap:4rem}.article-body h1,.article-body h2{color:var(--ink)}.article-body blockquote{border-color:var(--violet)}
.portrait-wrap:before{background:var(--lavender)}.principles{border-color:var(--ink)}.principle{border-color:var(--line)}
.contact-block{background:linear-gradient(135deg,#f3f0ff 0%,#fff 58%,#ffe9ef 100%)}.contact-block h1{color:var(--ink)}.email-link{border-color:var(--coral)}.email-link:hover{color:var(--violet)}
.site-footer{border-color:var(--line)}.site-footer a:hover{color:var(--violet)}.linkedin{background:var(--violet)}
.consent{background:var(--ink);box-shadow:10px 10px 0 var(--coral)}.accept{background:var(--coral)}
@media(max-width:760px){.hero{min-height:620px;padding-block:4.8rem 3rem}.hero h1{max-width:100%}.hero-foot{max-width:86%}.expertise-grid{grid-template-columns:1fr}.expertise-card,.expertise-card+.expertise-card{border-radius:16px}.home-feature{grid-template-columns:1fr;gap:2.2rem}.project{grid-template-columns:1fr;padding:1.7rem;border-radius:16px}.insight-grid{grid-template-columns:1fr}.page-intro{padding-block:4.2rem 3rem}.article-layout,.about-grid{grid-template-columns:1fr;gap:2.4rem}.contact-block{padding-block:4rem}}
@media(max-width:780px){.shell{width:min(calc(100% - 2rem),var(--max))}.site-header{padding:0 1rem;min-height:70px}.menu-button{display:flex}nav{display:none;position:absolute;top:70px;left:0;right:0;padding:1rem;flex-direction:column;align-items:stretch;background:#fff;border-bottom:1px solid var(--ink)}nav.open{display:flex}.nav-cta{text-align:center}.hero{min-height:calc(100svh - 70px);padding-block:3rem}.hero h1{font-size:clamp(3.1rem,16vw,5rem)}.hero-foot{align-items:flex-start;flex-direction:column}.section{padding-block:5rem}.expertise-grid,.insight-grid,.about-grid,.home-feature{grid-template-columns:1fr}.expertise-card,.expertise-card+.expertise-card{padding:1.5rem 0 2.2rem;border-right:0;border-bottom:1px solid var(--line)}.expertise-card h3{margin-top:1.5rem}.project{grid-template-columns:60px 1fr;gap:1rem}.project>div:last-child{grid-column:2}.page-intro{padding-block:5rem 3rem}.article-layout{grid-template-columns:1fr;gap:2rem;padding-block:3rem}.article-aside{display:flex;justify-content:space-between}.about-grid{gap:3rem}.site-footer{padding-block:2rem;align-items:flex-start;flex-direction:column}.consent.show{align-items:flex-start;flex-direction:column}}
.insight-card:nth-child(3){background:var(--blue);color:#fff}.hero h1 .acquisition{color:var(--violet)}.hero h1 .automation{color:#c7256d}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.tag-b2b{background:#4b20bf;color:#fff;border:1px solid #4b20bf;font-weight:900;letter-spacing:.06em;box-shadow:3px 3px 0 #d7cbff}.tag-b2c{background:#ffe1e7;color:#9f1747}.article-original p{margin:0 0 1.35rem;white-space:normal}.article-original p:empty{display:none}
.article-original{padding-bottom:1.5rem}.article-original p{max-width:68ch}.article-original p strong{font-weight:900;color:var(--ink)}.article-original p>strong:only-child{display:block;padding:.85rem 0 .85rem 1.05rem;border-left:3px solid var(--coral);font-size:1.25rem;line-height:1.35;letter-spacing:-.02em}.article-original ul{max-width:68ch;margin:0 0 1.8rem;padding:1.15rem 1.25rem 1.15rem 2.5rem;border-left:3px solid var(--coral);background:#faf8ff}.article-original li{margin:.35rem 0}.article-original h2+ p{margin-top:0}

.contact-form{width:min(100%,680px);margin-top:2.5rem;display:grid;gap:1.15rem}.form-row{display:grid;gap:.45rem}.form-row label{font-size:.82rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.form-row input,.form-row textarea{width:100%;border:1px solid var(--ink);background:#fff;padding:.85rem 1rem;color:var(--ink);font:inherit;font-size:1rem;border-radius:0}.form-row textarea{resize:vertical;min-height:9rem}.form-row input:focus,.form-row textarea:focus{outline:3px solid rgb(113 55 255/.25);outline-offset:2px}.contact-form .button{align-self:start;border:0;cursor:pointer;margin-top:.5rem}.contact-form .button:disabled{cursor:wait;opacity:.65}.form-status{min-height:1.6em;margin:0!important;font-size:1rem!important;color:var(--muted)}

.privacy-check{display:flex;align-items:flex-start;gap:.65rem;max-width:590px;font-size:.9rem;line-height:1.45;color:var(--muted);cursor:pointer}.privacy-check input{width:1.1rem;height:1.1rem;margin:.1rem 0 0;accent-color:var(--violet);flex:0 0 auto}.privacy-check a{text-decoration:underline;text-underline-offset:2px;color:var(--ink);font-weight:800}.contact-form .button{width:auto;min-width:0;padding:.7rem .9rem;gap:.6rem;font-size:.9rem}

.home-introduction .button{margin-top:1.5rem}.contact-form .button{justify-self:start}

.home-introduction{display:grid;grid-template-columns:160px minmax(0,720px);gap:2.5rem;align-items:start;padding:4.5rem 0 5rem;border-top:1px solid var(--line)}.home-introduction img{width:160px;height:160px;object-fit:cover;border-radius:50%;border:1px solid var(--ink);filter:contrast(1.04) saturate(.82)}.home-introduction h2{margin:.6rem 0 1rem;font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.055em;line-height:.96}.home-introduction p:not(.section-index){max-width:650px;margin:0;color:var(--muted);font-size:1.12rem}@media(max-width:780px){.home-introduction{grid-template-columns:1fr;gap:1.5rem;padding:3rem 0}.home-introduction img{width:104px;height:104px}}

/* Full-width colour field and the three-part section marker. */
.hero{background:none;isolation:isolate}.hero:before{content:"";position:absolute;z-index:-1;inset:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(100deg,#f1edff 0%,#faf7ff 34%,#fff3f7 66%,#fff9fb 100%)}
.home-feature{position:relative;padding-top:6.25rem}.home-feature:before{content:"";position:absolute;top:0;left:0;width:156px;height:9px;border-radius:8px;background:linear-gradient(90deg,var(--violet) 0 34%,var(--coral) 34% 67%,var(--mint) 67%)}
.page-intro h1{font-size:clamp(3.1rem,6vw,5.65rem);line-height:.94}
.hero h1{font-size:clamp(3.2rem,6.7vw,6.25rem)}
.page-intro h1{font-size:clamp(2.85rem,5.2vw,4.8rem)}
.insight-card{min-height:340px;padding:1.85rem;overflow:hidden}.insight-card h2{font-size:clamp(1.55rem,2.35vw,2.45rem);line-height:1.03;overflow-wrap:anywhere}
.insight-card:first-child,.insight-card:nth-child(3){color:#fff}
.about-grid .portrait-wrap{width:min(100%,390px)}.about-grid .portrait{width:100%;height:auto}@media(max-width:780px){.about-grid .portrait-wrap{width:100%;max-width:420px}}
.insight-grid .insight-card:first-child,.insight-grid .insight-card:nth-child(3),.insight-grid .insight-card:first-child h2,.insight-grid .insight-card:nth-child(3) h2,.insight-grid .insight-card:first-child .eyebrow,.insight-grid .insight-card:nth-child(3) .eyebrow,.insight-grid .insight-card:first-child strong,.insight-grid .insight-card:nth-child(3) strong{color:#fff!important}
.working-as-one{color:var(--violet)}.project:nth-child(1){border-left:6px solid var(--violet);background:#faf9ff}.project:nth-child(2){border-left:6px solid var(--blue);background:#f6fbff}.project:nth-child(3){border-left:6px solid var(--coral);background:#fff7fa}.project:nth-child(2) .tag{background:#e5f2ff;color:#286a93}.project:nth-child(3) .tag{background:#fcedf2;color:#a94064}
.experience-lede{white-space:nowrap}@media(max-width:780px){.experience-lede{white-space:normal}}
.page-intro + .project-list{margin-top:2.5rem}
.contact-form{gap:1.25rem}.form-row input,.form-row textarea{border:1px solid #ddd8ea;border-radius:10px;background:#fff;box-shadow:0 2px 10px rgb(57 43 119/.035);transition:border-color .18s ease,box-shadow .18s ease}.form-row input:focus,.form-row textarea:focus{outline:0;border-color:var(--violet);box-shadow:0 0 0 4px rgb(113 91 234/.12)}.privacy-check{padding:.15rem 0}.contact-form .button{border-radius:9px}
.contact-block h1{font-size:clamp(3.2rem,7vw,6rem)}.nav-cta[aria-current=page]{color:#fff}
.project h2{font-size:clamp(1.75rem,3vw,3rem)}
.project .tag.tag-b2b{background:#4b20bf;color:#fff;border:1px solid #4b20bf;font-weight:900;letter-spacing:.06em;box-shadow:3px 3px 0 #d7cbff}.project .tag.tag-b2c{background:#ffe1e7;color:#9f1747;border:1px solid #f5a9bc;font-weight:900;letter-spacing:.06em}
.page-intro{position:relative;isolation:isolate;background:none}.page-intro:before{content:"";position:absolute;z-index:-1;inset:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(105deg,#f6f4ff 0%,#fff 70%,#fff4f7 100%)}
.principles{border-top:0}
.project{position:relative;border-left:0}.project:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(180deg,var(--violet) 0 34%,var(--coral) 34% 67%,var(--mint) 67%)}.project:nth-child(2):before{background:linear-gradient(180deg,var(--blue) 0 34%,var(--violet) 34% 67%,var(--mint) 67%)}.project:nth-child(3):before{background:linear-gradient(180deg,var(--coral) 0 34%,var(--violet) 34% 67%,var(--blue) 67%)}
.project{border:0}
.project:nth-child(1),.project:nth-child(2),.project:nth-child(3){border-left:0}
.project{border:1px solid var(--line);border-left:1px solid var(--line)}.project:nth-child(1),.project:nth-child(2),.project:nth-child(3){border-left:1px solid var(--line)}.project:before,.project:nth-child(2):before,.project:nth-child(3):before{border-radius:20px 0 0 20px}@media(max-width:780px){.project:before,.project:nth-child(2):before,.project:nth-child(3):before{border-radius:16px 0 0 16px}}
.blog-lede{white-space:nowrap}.about-performance{color:var(--violet)}.linkedin-cta{display:inline-flex;align-items:center;gap:.65rem;margin:.2rem 0 1.5rem;color:var(--ink);font-weight:800}.linkedin-cta span{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:var(--violet);color:#fff;font-size:.85rem}.principles>h2:before{content:"";display:block;width:108px;height:8px;margin-bottom:1.15rem;border-radius:8px;background:linear-gradient(90deg,var(--violet) 0 34%,var(--coral) 34% 67%,var(--mint) 67%)}@media(max-width:780px){.shell{width:min(calc(100% - 3rem),1240px)}.blog-lede{white-space:normal}}
