:root{--midnight:#0A2E3B;--teal:#14B8A6;--slate:#475569;--tint:#E6F4F3;--surface:#F8FAFB;--white:#fff;--line:#dce5e7;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--midnight);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.site-header{height:88px;max-width:var(--max);margin:auto;padding:0 24px;display:flex;align-items:center;gap:34px}.brand img{display:block;width:142px;height:auto}.site-header nav{margin-left:auto;display:flex;gap:28px;font-size:14px}.site-header nav a:hover,.footer-links a:hover{color:var(--teal)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:#062b31;padding:14px 21px;font-weight:700;font-size:14px;border-radius:2px}.button.small{padding:11px 16px}.button.inverted{background:white;color:var(--midnight)}.text-link{font-weight:700;font-size:14px;border-bottom:1px solid var(--teal);padding-bottom:4px}.text-link b{color:var(--teal)}.menu{display:none;background:none;border:0;color:var(--midnight);font-weight:700}.hero{min-height:690px;display:flex;align-items:center;border-top:1px solid var(--line)}.hero-grid,.intro,.expertise,.process,.notes,.why{max-width:var(--max);margin:auto;padding:100px 24px}.hero-grid{padding-top:70px;padding-bottom:90px;width:100%;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:80px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;color:var(--teal);margin:0 0 25px}.eyebrow.light{color:#6ee7d8}.hero h1,.intro h2,.expertise h2,.process h2,.notes h2,.why h2,.contact h2,.work h2,.manifesto h2{font-weight:500;letter-spacing:-.045em;line-height:.98;margin:0}.hero h1{font-size:clamp(62px,8vw,112px)}.hero h1 span{color:var(--teal)}.lead{font-size:23px;max-width:650px;margin:38px 0 12px}.support{color:var(--slate);font-size:17px;max-width:670px}.actions{display:flex;align-items:center;gap:30px;margin-top:36px}.hero-mark{justify-self:end;width:min(340px,30vw);display:flex;flex-direction:column;gap:34px;opacity:.95}.hero-mark i{height:34px;background:var(--teal);display:block}.hero-mark i:nth-child(2){width:72%}.intro h2,.expertise h2,.process h2,.notes h2{font-size:clamp(48px,6vw,78px)}.section-lead{max-width:800px;font-size:20px;color:var(--slate);margin:32px 0 60px}.pillars{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.pillars article{padding:28px 26px 0 0}.pillars span,.steps span,.case-no{font-size:12px;color:var(--teal);font-weight:800}.pillars h3,.expertise-grid h3,.steps h3{font-size:19px;margin:28px 0 10px}.pillars p,.expertise-grid p,.steps p{color:var(--slate);font-size:15px}.manifesto{background:var(--midnight);color:white;padding:110px max(24px,calc((100vw - var(--max))/2 + 24px));display:grid;grid-template-columns:1fr 1fr;gap:90px}.manifesto h2{font-size:clamp(55px,7vw,90px)}.manifesto h2 em{color:var(--teal);font-style:normal}.manifesto-copy{padding-top:50px}.manifesto-copy .big{font-size:28px;line-height:1.35}.manifesto-copy p:not(.big){color:#cbd8dc;max-width:540px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px}.section-heading>p{max-width:420px;color:var(--slate)}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.expertise-grid article{min-height:230px;padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.expertise-grid article:before{content:"";display:block;width:34px;height:4px;background:var(--teal);margin-bottom:30px}.work{background:var(--midnight);color:white;padding:110px max(24px,calc((100vw - var(--max))/2 + 24px))}.section-heading.dark>p{color:#b8c9ce}.cases{border-top:1px solid #31515c}.cases article{display:grid;grid-template-columns:80px 1fr 120px;gap:25px;align-items:center;padding:36px 0;border-bottom:1px solid #31515c}.cases h3{font-size:28px;margin:7px 0}.cases article>div:nth-child(2)>p:last-child{color:#b8c9ce;max-width:720px}.tags{color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.1em}.cases a{font-size:13px;color:var(--teal);text-align:right}.steps{display:grid;grid-template-columns:repeat(5,1fr);margin-top:60px;border-top:1px solid var(--line)}.steps article{padding:28px 25px 0 0}.notes{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;background:var(--tint);max-width:none;padding-left:max(24px,calc((100vw - var(--max))/2 + 24px));padding-right:max(24px,calc((100vw - var(--max))/2 + 24px))}.notes>div:first-child>p:not(.eyebrow){color:var(--slate);max-width:500px;margin:28px 0}.note-list{border-top:1px solid #bcd8d5}.note-list article{padding:28px 0;border-bottom:1px solid #bcd8d5}.note-list p{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);font-weight:800}.note-list h3{font-size:24px;line-height:1.25;margin:7px 0}.why{display:grid;grid-template-columns:.35fr 1fr;gap:80px}.why h2{font-size:clamp(40px,5vw,66px);max-width:850px}.why div p{font-size:19px;color:var(--slate);max-width:750px;margin-top:30px}.contact{background:var(--midnight);color:white;text-align:center;padding:120px 24px}.contact h2{font-size:clamp(50px,7vw,86px)}.contact>p:not(.eyebrow){color:#c4d3d7;max-width:650px;margin:30px auto}.contact .button{margin-top:15px}footer{max-width:var(--max);margin:auto;padding:50px 24px;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:end}footer img{width:120px}footer p{color:var(--slate);font-size:13px}.footer-links{display:flex;gap:22px;font-size:13px}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px}.menu{cursor:pointer}@media(max-width:900px){.site-header nav,.header-cta{display:none}.site-header{justify-content:space-between}.menu{display:block}.site-header.open{height:auto;min-height:88px;flex-wrap:wrap;padding-bottom:20px}.site-header.open nav{display:flex;order:3;width:100%;flex-direction:column;gap:12px}.hero-grid{grid-template-columns:1fr}.hero-mark{display:none}.pillars,.expertise-grid{grid-template-columns:1fr 1fr}.manifesto,.notes,.why{grid-template-columns:1fr;gap:40px}.steps{grid-template-columns:1fr 1fr}.cases article{grid-template-columns:45px 1fr}.cases a{grid-column:2;text-align:left}.section-heading{display:block}.section-heading>p{margin-top:20px}}@media(max-width:580px){.hero{min-height:auto}.hero-grid,.intro,.expertise,.process,.notes,.why{padding-top:75px;padding-bottom:75px}.hero h1{font-size:58px}.pillars,.expertise-grid,.steps{grid-template-columns:1fr}.pillars article,.steps article{padding-bottom:22px}.manifesto,.work,.contact{padding-top:80px;padding-bottom:80px}.manifesto-copy{padding-top:0}.actions{align-items:flex-start;flex-direction:column}.cases article{grid-template-columns:1fr}.cases a{grid-column:1}.case-no{display:none}.footer-links{flex-wrap:wrap}footer{grid-template-columns:1fr}}
.site-header nav a.active{color:var(--teal)}
.page-hero{max-width:var(--max);margin:auto;padding:115px 24px 100px;border-top:1px solid var(--line)}.page-hero h1{font-weight:500;letter-spacing:-.045em;line-height:.98;margin:0;font-size:clamp(58px,7.5vw,102px)}.page-hero h1 span{color:var(--teal)}.page-lead{font-size:21px;color:var(--slate);max-width:800px;margin:38px 0 0}.service-list,.case-detail,.domain-grid,.article-grid,.filters,.contact-layout{max-width:var(--max);margin:auto;padding-left:24px;padding-right:24px}.service-list{padding-bottom:110px}.service-list>article{display:grid;grid-template-columns:100px 1fr;padding:52px 0;border-top:1px solid var(--line)}.service-list>article>span{color:var(--teal);font-size:12px;font-weight:800}.service-list h2,.case-detail h2,.contact-layout h2{font-size:clamp(34px,4vw,54px);letter-spacing:-.035em;line-height:1.05;margin:0 0 18px;font-weight:500}.service-list article>div>p{font-size:18px;color:var(--slate);max-width:750px}.service-list ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 40px;padding:0;margin:30px 0 0;list-style:none;max-width:800px}.service-list li{padding:10px 0;border-top:1px solid var(--line);font-size:14px}.service-list li:before{content:"→";color:var(--teal);margin-right:10px}.contact.compact{padding-top:90px;padding-bottom:90px}.domain-grid{display:grid;grid-template-columns:1fr 1fr;padding-bottom:110px}.domain-grid article{padding:45px;border-top:1px solid var(--line)}.domain-grid article:nth-child(odd){border-right:1px solid var(--line)}.domain-grid h2{font-size:32px;line-height:1.12;letter-spacing:-.025em;margin:12px 0 18px;font-weight:500}.domain-grid p:last-child{color:var(--slate);max-width:470px}.steps.four{grid-template-columns:repeat(4,1fr)}.case-detail{padding-bottom:100px}.case-detail>article{display:grid;grid-template-columns:100px 1fr;padding:65px 0;border-top:1px solid var(--line);scroll-margin-top:30px}.case-index{color:var(--teal);font-weight:800;font-size:12px}.case-detail h2{font-size:clamp(40px,5vw,64px)}.case-intro{font-size:22px;max-width:780px;color:var(--slate)}.case-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:48px}.case-cols h3{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--teal)}.case-cols p{color:var(--slate)}.notes.teaser{display:block}.filters{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:35px}.filters span{font-size:12px;border:1px solid var(--line);padding:8px 12px}.filters span:first-child{background:var(--midnight);color:white;border-color:var(--midnight)}.article-grid{display:grid;grid-template-columns:repeat(2,1fr);padding-bottom:110px}.article-grid article{padding:38px;border-top:1px solid var(--line);min-height:290px}.article-grid article:nth-child(odd){border-right:1px solid var(--line)}.article-grid article.featured{grid-column:1/-1;background:var(--tint);border-right:0;min-height:auto}.article-grid h2{font-size:30px;line-height:1.15;letter-spacing:-.025em;font-weight:500;margin:12px 0 20px;max-width:750px}.article-grid .featured h2{font-size:clamp(36px,4vw,52px)}.article-grid article>p:not(.tags){color:var(--slate);max-width:720px}.article-status{display:block;margin-top:30px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);font-weight:800}.field-note-callout{background:var(--midnight);color:white;padding:100px max(24px,calc((100vw - var(--max))/2 + 24px))}.field-note-callout h2{font-size:clamp(45px,6vw,72px);font-weight:500;line-height:1;letter-spacing:-.04em;margin:0}.field-note-callout>p:last-child{color:#c4d3d7;font-size:18px;max-width:700px;margin-top:28px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;padding-bottom:110px}.contact-layout>div>p:not(.eyebrow){color:var(--slate);font-size:18px;max-width:480px}.direct-contact{margin-top:45px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.direct-contact span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);font-weight:800}.direct-contact a{font-size:20px}.contact-layout form{background:white;padding:38px;border:1px solid var(--line)}.contact-layout label{display:block;font-size:13px;font-weight:700;margin-bottom:22px}.contact-layout label span{font-weight:400;color:var(--slate)}.contact-layout input,.contact-layout textarea{display:block;width:100%;margin-top:8px;border:1px solid #cdd9dc;background:var(--surface);padding:13px;font:inherit;color:var(--midnight);border-radius:0}.contact-layout input:focus,.contact-layout textarea:focus{outline:2px solid var(--teal);outline-offset:1px}.contact-layout textarea{resize:vertical}.form-note{font-size:12px;color:var(--slate);margin:18px 0 0}.contact-hero{padding-bottom:75px}
@media(max-width:900px){.domain-grid,.article-grid,.contact-layout{grid-template-columns:1fr}.domain-grid article:nth-child(odd),.article-grid article:nth-child(odd){border-right:0}.article-grid article.featured{grid-column:auto}.case-cols{grid-template-columns:1fr}.contact-layout{gap:45px}.steps.four{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.page-hero{padding-top:75px;padding-bottom:70px}.page-hero h1{font-size:55px}.service-list>article,.case-detail>article{grid-template-columns:1fr;gap:18px}.service-list ul{grid-template-columns:1fr}.domain-grid article,.article-grid article{padding:30px 0}.contact-layout form{padding:24px}.steps.four{grid-template-columns:1fr}}
