@font-face{font-family:Archivo;src:url('assets/archivo-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Archivo;src:url('assets/archivo-bold.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
:root{--bg:#f5f7f6;--surface:#e5ece9;--ink:#102b33;--muted:#3f5b61;--accent:#dfef64;--accent-ink:#102b33;--field:#102b33;--field-ink:#f5f7f6;--teal:#78a6ad;--space:clamp(20px,3vw,48px);--small:14px;--body:clamp(16px,1.24vw,19px);--lead:clamp(21px,2.1vw,30px);--heading:clamp(34px,4.4vw,64px);--display:clamp(48px,8.8vw,140px);--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Archivo,Arial,sans-serif;font-size:var(--body);line-height:1.55}button,input,select{font:inherit}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,a,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--teal);outline-offset:6px}h1,h2,h3,p,figure{margin:0}p{text-wrap:pretty}h1,h2,h3{font-weight:700;letter-spacing:-.045em;line-height:1.05;text-wrap:balance}h2{font-size:var(--heading);max-width:19ch}h3{font-size:var(--lead);letter-spacing:-.035em}img{display:block;max-width:100%;height:auto}p+p{margin-top:20px}.wrap{max-width:1680px;padding-inline:var(--space);margin-inline:auto}.skip{position:absolute;top:10px;left:20px;transform:translateY(-200%);z-index:10;background:var(--accent);padding:12px}.skip:focus{transform:translateY(0)}.navigation{height:112px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-size:25px;letter-spacing:-1px;white-space:nowrap;font-weight:700}.brand img{height:30px;width:34px}.navigation nav{display:flex;align-items:center;gap:clamp(22px,3vw,48px)}nav a{font-size:16px;text-decoration:none}.nav-contact{background:var(--ink);color:var(--bg);padding:12px 22px}.menu-toggle{display:none}.hero{padding-top:48px;position:relative;min-height:calc(100svh - 112px);padding-bottom:70px;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:var(--display);line-height:.96;letter-spacing:-.065em;position:relative;z-index:1;width:100%;pointer-events:none}.hero h1 span{display:block}.hero h1 span+span{margin-left:30%}.hero-window{width:27%;aspect-ratio:1.52;position:absolute;right:var(--space);top:60px;overflow:clip}.hero-window img{width:100%;height:100%;object-fit:cover}.hero-bottom{margin-top:64px;display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:48px;align-items:start}.hero-description{font-size:var(--lead);max-width:34ch;line-height:1.4}.hero-action{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--accent);color:var(--accent-ink);padding:18px 24px;font-size:16px;text-decoration:none;font-weight:700;min-height:56px;transition:transform .18s ease,background .18s ease}.button:hover{background:var(--teal);transform:translateY(-3px)}.button:active{transform:translateY(1px)}.text-link{display:inline-block;font-size:16px;min-height:36px}.hero-note{font-size:16px;color:var(--muted)}.intro{padding-block:100px 120px;background:var(--surface)}.intro h2{font-size:var(--lead);letter-spacing:-.02em;margin-bottom:36px}.statement{font-size:clamp(25px,2.5vw,36px);line-height:1.32;letter-spacing:-.025em;max-width:46ch}.intro .statement{max-width:50ch}.proof-line{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:60px}.proof-line p{margin:0}.proof-line strong,.proof-line span{display:block}.proof-line strong{font-size:var(--lead);letter-spacing:-.03em}.proof-line span{font-size:16px;margin-top:8px}.solutions,.work,.about,.insights{padding-top:140px;padding-bottom:140px}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:start;margin-bottom:80px}.section-heading p{max-width:42ch}.solution-layout{display:grid;grid-template-columns:27% 1fr;gap:7%}.solution-aside{position:sticky;top:50px;height:fit-content}.solution-aside p{font-size:var(--lead);line-height:1.2;margin-bottom:25px}.solution-row{display:grid;grid-template-columns:1.3fr .75fr;gap:7%;align-items:start;margin-bottom:100px}.solution-row:last-child{margin-bottom:0}.solution-row h3{margin-bottom:22px}.solution-row p{max-width:40ch}.solution-row img{aspect-ratio:4/5;object-fit:cover;width:100%}.solution-row:nth-child(2) img{aspect-ratio:1}.solution-row:nth-child(3) img{aspect-ratio:3/4}.deliverable{font-size:16px;color:var(--muted)}.large-fact{font-size:var(--lead);line-height:1.4;color:var(--muted)}.selector-field{background:var(--field);color:var(--field-ink);padding-block:100px}.selector-grid{display:grid;grid-template-columns:1fr 1fr;gap:14%}.selector-grid h2{margin-bottom:30px}.selector-grid>div>p{max-width:32ch}.selector-controls label{display:block;font-size:16px;margin-bottom:12px}.selector-controls select{display:block;width:100%;background:var(--bg);color:var(--ink);padding:18px 42px 18px 16px;border:0;border-radius:0;font-size:16px;min-height:60px;cursor:pointer}.selector-controls h3{margin-top:40px;margin-bottom:20px}.selector-controls .button{margin-top:30px}.result-output{font-size:16px}#recommendation{min-height:275px}.work-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.work-index{position:sticky;top:60px;height:fit-content;display:flex;flex-direction:column;gap:16px}.work-index a{font-size:clamp(28px,3.9vw,56px);line-height:1.16;letter-spacing:-.045em;font-weight:700;text-decoration:none;color:var(--muted);transition:color .2s,transform .3s}.work-index a:hover,.work-index a.active{color:var(--ink);transform:translateX(8px)}.work-details article{padding-bottom:70px;scroll-margin-top:55px}.work-details article:last-child{padding-bottom:0}.work-details h3{margin-bottom:22px}.work-details p{max-width:46ch}.privacy-field{background:var(--surface);padding-block:110px}.privacy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.privacy-grid h2{margin-bottom:36px}.privacy-grid .statement{margin-bottom:28px}.privacy-grid .text-link{margin-top:28px}.privacy-grid figure{background:white;padding:30px}.privacy-grid figure img{width:100%;height:auto;max-height:430px;object-fit:contain}.privacy-grid figcaption{font-size:14px;margin-top:20px;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1.4fr;gap:12%}.about-meta h2{margin-bottom:36px}.about-meta p{font-size:16px}.biography .statement{margin-bottom:30px}.biography>p:not(.statement){max-width:52ch}.credentials{display:grid;gap:10px;margin-top:35px;margin-bottom:30px}.credentials p{margin:0;font-size:16px}.insights{padding-top:30px}.insights-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}.insights-layout figure{overflow:clip}.insights-layout img{aspect-ratio:4/5;object-fit:cover}.article-list{display:flex;flex-direction:column;gap:50px}.article-list a{text-decoration:none;display:block}.article-list a h3{transition:transform .25s}.article-list a:hover h3{transform:translateX(6px)}.article-list p{margin-top:14px;max-width:42ch}.article-list span{display:inline-block;text-decoration:underline;font-size:14px;margin-top:18px}.contact-field{background:var(--accent);padding-block:85px 55px}.contact-top{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.contact-top p{max-width:35ch}.contact-email{display:block;font-size:clamp(42px,6.5vw,102px);font-weight:700;letter-spacing:-.06em;line-height:1.05;text-decoration:none;margin-block:65px}.contact-email span{display:block}.contact-email:hover{text-decoration:underline;text-decoration-thickness:3px}.contact-bottom{display:flex;justify-content:space-between;gap:25px;align-items:end;font-size:16px}.contact-bottom p{font-size:16px}.footer{display:grid;grid-template-columns:1fr 2fr auto;gap:30px;align-items:start;padding-block:35px;font-size:14px}.footer p{margin:0}.simple-page{max-width:880px;padding-block:70px 120px}.simple-page h1{font-size:var(--heading);margin-bottom:40px}.simple-page h2{font-size:var(--lead);margin-block:35px 18px}.simple-page p,.simple-page li{font-size:var(--body)}.simple-page ul{padding-left:24px}
@media(min-width:1100px){.hero-window{top:50px}.hero h1{padding-top:25px}.hero h1 span:first-child{max-width:70%}.hero h1 span+span{margin-top:22px}}
@media(max-width:1099px){.navigation{height:100px}.navigation nav{gap:22px}.hero{padding-top:55px;min-height:auto}.hero h1{font-size:clamp(66px,9.6vw,110px)}.hero-window{top:20px;width:24%;aspect-ratio:2.1}.hero h1 span+span{margin-top:18px;margin-left:18%}.hero-bottom{grid-template-columns:1.4fr 1fr;gap:40px}.hero-note{grid-column:2}.section-heading{gap:7%}.solution-layout{grid-template-columns:23% 1fr;gap:6%}.solution-row{grid-template-columns:1.4fr .7fr}.selector-grid{gap:8%}.work-layout{gap:6%}.work-index a{font-size:34px}.privacy-grid{gap:6%}.about{gap:8%}}
@media(max-width:700px){:root{--heading:36px;--lead:24px;--space:20px}.navigation{height:86px;position:relative;z-index:5}.brand{font-size:22px}.brand img{width:28px;height:26px}.menu-toggle{display:block;border:0;background:var(--surface);color:var(--ink);padding:10px 14px;font-size:16px;min-height:44px}.navigation nav{display:none;position:absolute;top:76px;left:20px;right:20px;background:var(--ink);color:var(--bg);padding:20px;flex-direction:column;gap:10px;align-items:stretch}.navigation nav.open{display:flex}.navigation nav a{padding:10px}.navigation .nav-contact{background:var(--accent);color:var(--ink)}.hero{padding-top:32px;padding-bottom:55px;display:flex}.hero h1{font-size:clamp(38px,10vw,69px);line-height:1.05;letter-spacing:-.055em}.hero h1 span:first-child{max-width:none}.hero h1 span+span{margin:0}.hero-window{position:static;width:100%;aspect-ratio:1.9;margin-top:28px;order:0}.hero-window img{object-position:center 65%}.hero-bottom{margin-top:28px;display:flex;flex-direction:column;gap:24px}.hero-description{font-size:21px;max-width:32ch}.hero-action{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap}.hero-action .button{font-size:15px;padding:15px 18px;gap:20px}.hero-note{font-size:14px}.intro{padding-block:60px}.intro h2{font-size:24px;margin-bottom:25px}.statement{font-size:24px}.proof-line{grid-template-columns:1fr;gap:28px;margin-top:35px}.proof-line p{display:grid;grid-template-columns:1fr 1.3fr;gap:18px;align-items:center}.proof-line strong{font-size:22px}.proof-line span{font-size:14px;margin:0}.solutions,.work,.about,.insights{padding-block:70px}.section-heading{display:block;margin-bottom:40px}.section-heading p{margin-top:24px}.solution-layout{display:block}.solution-aside{position:static;margin-bottom:36px;display:flex;justify-content:space-between;gap:30px;align-items:start}.solution-aside p{font-size:18px;margin:0}.solution-aside a{font-size:14px;max-width:15ch}.solution-row{grid-template-columns:1fr 28%;gap:18px;margin-bottom:48px}.solution-row h3{font-size:24px;margin-bottom:18px}.solution-row img{aspect-ratio:3/5!important}.solution-row p{font-size:16px}.solution-row .deliverable{font-size:14px}.text-only{grid-template-columns:1fr}.large-fact{display:none}.selector-field{padding-block:60px}.selector-grid{display:block}.selector-grid>div>p{max-width:40ch}.selector-controls{margin-top:35px}.selector-controls select{font-size:15px;padding-left:12px}#recommendation{min-height:290px}.selector-controls h3{font-size:26px}.work-layout{display:block}.work-index{position:static;flex-direction:row;flex-wrap:wrap;gap:12px 22px;margin-bottom:40px}.work-index a{font-size:18px;text-decoration:underline;font-weight:400;min-height:32px}.work-details article{padding-bottom:45px}.privacy-field{padding-block:65px}.privacy-grid{display:block}.privacy-grid figure{margin-top:35px;padding:20px}.about{display:block}.about-meta p{margin-bottom:35px}.about-meta h2{margin-bottom:20px}.biography .statement{font-size:24px}.insights{padding-top:0}.insights-layout{display:block}.insights-layout figure{margin-bottom:35px}.insights-layout img{aspect-ratio:1.8;object-position:center 35%}.article-list{gap:35px}.contact-field{padding-block:60px 35px}.contact-top{display:block}.contact-top p{margin-top:25px}.contact-email{font-size:clamp(32px,7.9vw,54px);margin-block:45px;overflow-wrap:anywhere}.contact-bottom{display:grid;grid-template-columns:1fr auto;font-size:14px}.contact-bottom p{grid-column:1/-1;font-size:14px}.footer{display:block;font-size:13px;padding-block:25px}.footer p{margin-bottom:14px}.simple-page{padding-block:40px 70px}.simple-page h1{font-size:36px}}
@media(prefers-reduced-motion:no-preference){.hero h1 span{animation:rise .9s var(--ease) both}.hero h1 span+span{animation-delay:.1s}.hero-window img{animation:settle 1.2s var(--ease) both}.hero-bottom{animation:rise .9s .15s var(--ease) both}.arrive{animation:rise .8s var(--ease)}.solution-row.arrive img,.insights-layout figure.arrive img{animation:settle 1.1s var(--ease)}@keyframes rise{from{transform:translateY(24px);opacity:.5}to{transform:translateY(0);opacity:1}}@keyframes settle{from{transform:scale(1.08)}to{transform:scale(1)}}@supports(animation-timeline:view()){.hero-window img{animation:drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes drift{from{transform:scale(1.08) translateY(-2%)}to{transform:scale(1.02) translateY(2%)}}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Compact headline and persistent navigation. */
html{scroll-padding-top:140px}
.navigation{position:sticky;top:0;z-index:100;background:var(--bg);max-width:none;border-bottom:1px solid var(--surface);box-shadow:0 3px 12px #102b3308}
.hero h1{font-size:clamp(30px,4.2vw,68px);line-height:1.1;letter-spacing:-.045em;white-space:nowrap;text-wrap:nowrap;width:70%;padding-top:0}
.solution-aside,.work-index{top:140px}
.work-details article{scroll-margin-top:0}
@media(max-width:1099px){html{scroll-padding-top:124px}.solution-aside,.work-index{top:124px}}
@media(max-width:700px){html{scroll-padding-top:110px}.navigation{position:sticky;z-index:100}.hero h1{font-size:clamp(27px,7.6vw,51px);width:100%;line-height:1.1;letter-spacing:-.045em}}
