
:root{--ink:#0a0a0a;--paper:#f2f1ed;--white:#fff;--soft:#e7e5df;--muted:#6e6d68;--line:rgba(10,10,10,.14);--line-dark:rgba(255,255,255,.16);--max:1540px;--g:clamp(20px,4vw,64px);--ease:cubic-bezier(.2,.75,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button,input,textarea,select{font:inherit}.shell{width:min(var(--max),100%);margin:auto;padding-inline:var(--g)}.skip{position:fixed;z-index:300;left:12px;top:10px;background:#fff;color:#000;padding:10px 14px;transform:translateY(-150%);transition:.2s}.skip:focus{transform:none}.micro{font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.15em;font-weight:600}.micro.light{color:#a8a8a8}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:600;color:var(--muted)}.display{font-size:clamp(58px,8.8vw,144px);line-height:.86;letter-spacing:-.07em;font-weight:560;margin:0}.h1{font-size:clamp(54px,7vw,112px);line-height:.9;letter-spacing:-.065em;font-weight:560;margin:0}.h2{font-size:clamp(42px,5.7vw,88px);line-height:.93;letter-spacing:-.06em;font-weight:550;margin:0}.h3{font-size:clamp(28px,3vw,48px);line-height:1;letter-spacing:-.045em;font-weight:550;margin:0}.lead{font-size:clamp(18px,1.8vw,28px);line-height:1.35;letter-spacing:-.02em}.body-lg{font-size:clamp(17px,1.3vw,21px);line-height:1.58}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:52px;padding:0 22px;border:1px solid var(--ink);font-size:13px;font-weight:600;transition:.25s var(--ease)}.button.black{background:var(--ink);color:#fff}.button.black:hover{background:#262626}.button.white{background:#fff;color:#000;border-color:#fff}.button.ghost-light{border-color:#777;color:#fff}.button.ghost-light:hover{background:#fff;color:#000}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link.light{color:#fff}.section-pad{padding-block:clamp(90px,10vw,170px)}.section-rule{border-top:1px solid var(--line)}
/* nav */
.site-nav{position:fixed;inset:0 0 auto;z-index:110;color:#fff;transition:background .35s,color .35s,border .35s}.site-nav.scrolled,.site-nav.on-light{background:rgba(242,241,237,.93);backdrop-filter:blur(14px);color:var(--ink);border-bottom:1px solid var(--line)}.nav-row{height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{width:138px;display:block}.site-nav:not(.scrolled):not(.on-light) .brand img{filter:invert(1)}.primary-nav{display:flex;gap:32px;align-items:center;font-size:13px}.primary-nav a{position:relative;padding:8px 0}.primary-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:currentColor;transition:right .25s}.primary-nav a:hover:after,.primary-nav a[aria-current="page"]:after{right:0}.nav-end{justify-self:end;display:flex;align-items:center;gap:18px}.nav-contact{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;display:flex;gap:12px}.menu-toggle{width:42px;height:42px;border:1px solid currentColor;background:transparent;color:inherit;display:none;place-content:center;gap:6px;cursor:pointer}.menu-toggle i{display:block;width:17px;height:1px;background:currentColor;transition:.25s}.menu-toggle[aria-expanded="true"] i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.menu-drawer{position:fixed;z-index:100;inset:0;background:var(--ink);color:#fff;opacity:0;visibility:hidden;transition:opacity .35s var(--ease),visibility .35s}.menu-drawer.open{opacity:1;visibility:visible}.menu-top-spacer{height:88px}.menu-layout{min-height:calc(100vh - 88px);padding-block:clamp(50px,7vh,90px);display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:clamp(30px,5vw,90px);align-items:start}.menu-main{display:grid}.menu-main a{font-size:clamp(44px,5vw,82px);line-height:1.05;letter-spacing:-.055em;color:#fff;transition:.2s}.menu-main:hover a:not(:hover){color:#555}.menu-label{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#777;margin-bottom:22px}.menu-services,.menu-info{display:flex;flex-direction:column;gap:13px;font-size:14px}.menu-services a,.menu-info a{color:#c6c6c6}.menu-services a:hover,.menu-info a:hover{color:#fff}.menu-info p{color:#999;font-size:13px;line-height:1.6;margin:0}.menu-info>div{margin-bottom:34px}.menu-cta{margin-top:auto;border-top:1px solid #333;padding-top:20px!important;display:flex;justify-content:space-between;color:#fff!important}
/* home hero */
.home-hero{min-height:100svh;background:var(--ink);color:#fff;position:relative;overflow:hidden;padding-top:88px}.hero-grid-lines{position:absolute;inset:88px 0 0;opacity:.11;background-image:linear-gradient(to right,transparent calc(100% - 1px),#fff 1px);background-size:8.3333% 100%;pointer-events:none}.home-hero .shell{min-height:calc(100svh - 88px);display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,5vw,90px);align-items:center;padding-block:60px}.hero-copy{position:relative;z-index:2}.hero-copy .micro{color:#858585;margin-bottom:28px}.hero-copy .display span{display:block}.hero-copy .display .dim{color:#777}.hero-sub{max-width:680px;font-size:clamp(18px,1.5vw,24px);line-height:1.45;color:#b5b5b5;margin:34px 0 0}.hero-actions{display:flex;gap:22px;align-items:center;margin-top:36px}.hero-visual{height:min(72vh,820px);position:relative;z-index:2}.hero-main-image{position:absolute;inset:0 14% 7% 0;overflow:hidden;background:#222}.hero-main-image img{height:100%;object-fit:cover;filter:saturate(.82);transform:scale(1.01);transition:transform .9s var(--ease)}.hero-visual:hover .hero-main-image img{transform:scale(1.035)}.hero-float{position:absolute;right:0;bottom:0;width:42%;background:#fff;color:#000;padding:18px}.hero-float img{aspect-ratio:4/3;object-fit:cover}.hero-float .micro{margin-top:14px;color:#777}.hero-index{position:absolute;right:0;top:0;writing-mode:vertical-rl;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#666}.hero-bottom{position:absolute;bottom:22px;left:var(--g);right:var(--g);display:flex;justify-content:space-between;gap:20px;z-index:3;color:#7e7e7e;font-size:10px;text-transform:uppercase;letter-spacing:.16em}.hero-bottom strong{color:#fff;font-weight:500}
/* confidence strip */
.confidence{background:#fff}.confidence-row{display:grid;grid-template-columns:1.1fr repeat(3,1fr);border-bottom:1px solid var(--line)}.confidence-row>div{padding:22px 24px 22px 0;min-height:98px;display:flex;flex-direction:column;justify-content:space-between}.confidence-row>div+div{border-left:1px solid var(--line);padding-left:24px}.confidence-row strong{font-size:14px;letter-spacing:-.015em}.confidence-row span{font-size:11px;color:var(--muted);line-height:1.4}.confidence-intro{background:var(--paper)!important}
/* work home */
.home-work{background:var(--paper)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:clamp(40px,6vw,82px)}.section-head .h2{max-width:900px}.project-stack{display:grid;gap:14px}.project-row{display:grid;grid-template-columns:1.45fr .55fr;min-height:min(68vh,720px);background:#fff;overflow:hidden;position:relative}.project-row:nth-child(even){grid-template-columns:.55fr 1.45fr}.project-row:nth-child(even) .project-media{order:2}.project-media{overflow:hidden;min-height:500px}.project-media img{height:100%;object-fit:cover;transition:transform .8s var(--ease)}.project-row:hover .project-media img{transform:scale(1.025)}.project-info{padding:clamp(28px,4vw,58px);display:flex;flex-direction:column;justify-content:space-between}.project-no{font-size:10px;letter-spacing:.16em;color:#999}.project-info h3{font-size:clamp(36px,4vw,68px);line-height:.95;letter-spacing:-.055em;margin:0 0 14px}.project-info p{font-size:14px;line-height:1.55;color:var(--muted);max-width:430px}.project-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.project-meta span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;border:1px solid #d7d5cf;padding:7px 9px}.project-row>a.stretch{position:absolute;inset:0;z-index:2}.project-arrow{font-size:34px;align-self:flex-end}
/* home services */
.home-services{background:#0c0c0c;color:#fff}.services-intro{display:grid;grid-template-columns:.65fr 1.35fr;gap:50px;margin-bottom:70px}.services-intro .eyebrow{color:#777}.services-intro p{max-width:730px;color:#aaa}.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.pillar{padding:34px 32px 40px 0;min-height:520px;display:flex;flex-direction:column}.pillar+.pillar{border-left:1px solid var(--line-dark);padding-left:32px}.pillar-no{font-size:10px;color:#696969;letter-spacing:.16em}.pillar h3{font-size:clamp(42px,4.6vw,70px);letter-spacing:-.06em;font-weight:520;margin:70px 0 26px}.pillar>p{font-size:14px;line-height:1.6;color:#999;max-width:350px}.pillar-links{margin-top:auto;display:grid}.pillar-links a{padding:11px 0;border-top:1px solid #2b2b2b;display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#d0d0d0}.pillar-links a:hover{color:#fff}.pillar-links a span{color:#626262}
/* process teaser */
.process-teaser{background:#fff}.process-layout{display:grid;grid-template-columns:.62fr 1.38fr;gap:60px}.process-sticky{align-self:start;position:sticky;top:130px}.process-sticky .h2{margin-top:25px}.process-list{border-top:1px solid var(--line)}.process-item{display:grid;grid-template-columns:70px .6fr 1fr;gap:22px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}.process-item .num{font-size:11px;color:#999}.process-item h3{font-size:clamp(28px,2.7vw,44px);letter-spacing:-.04em;margin:0}.process-item p{font-size:14px;line-height:1.6;color:var(--muted);margin:0;max-width:500px}
/* brand statement */
.brand-statement{background:var(--ink);color:#fff;min-height:80vh;display:flex;align-items:center;position:relative;overflow:hidden}.brand-statement:after{content:"W";position:absolute;right:-3vw;bottom:-12vw;font-size:52vw;line-height:.7;font-weight:700;color:#111;letter-spacing:-.1em}.brand-statement .shell{position:relative;z-index:2}.brand-statement .h2{max-width:1160px}.brand-statement .h2 .dim{color:#525252}.brand-statement .lead{max-width:760px;color:#9f9f9f;margin-top:38px}
/* people */
.people-split{display:grid;grid-template-columns:1.25fr .75fr;min-height:700px}.people-image{overflow:hidden}.people-image img{height:100%;object-fit:cover;filter:grayscale(1)}.people-copy{padding:clamp(50px,7vw,110px);display:flex;flex-direction:column;justify-content:space-between;background:var(--paper)}.people-copy p{max-width:450px}
/* insight home */
.home-insights{background:#fff}.insight-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.insight-card{border-top:1px solid var(--line);padding-top:12px}.insight-card .media{aspect-ratio:16/10;overflow:hidden;background:#ddd}.insight-card img{height:100%;object-fit:cover;transition:.6s var(--ease)}.insight-card:hover img{transform:scale(1.02)}.insight-card .micro{color:#888;margin:14px 0}.insight-card h3{font-size:clamp(24px,2.2vw,34px);line-height:1.05;letter-spacing:-.04em;margin:0}.insight-card p{font-size:13px;line-height:1.55;color:var(--muted)}
/* page hero */
.page-hero{background:var(--ink);color:#fff;padding:170px 0 95px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;inset:88px 0 0;background-image:linear-gradient(to right,transparent calc(100% - 1px),rgba(255,255,255,.08) 1px);background-size:8.3333% 100%;pointer-events:none}.page-hero .shell{position:relative;z-index:2}.page-hero-grid{display:grid;grid-template-columns:.42fr 1.58fr;gap:40px}.page-hero .eyebrow{color:#747474}.page-hero .lead{color:#aaa;max-width:860px;margin:34px 0 0}.page-hero-actions{margin-top:34px;display:flex;gap:16px;flex-wrap:wrap}
/* service hub */
.service-hub{background:var(--paper)}.service-pillar{display:grid;grid-template-columns:.45fr 1.55fr;border-top:1px solid var(--line);padding:48px 0 80px}.service-pillar-head{padding-right:30px}.service-pillar-head h2{font-size:clamp(44px,5vw,76px);letter-spacing:-.055em;margin:22px 0 0}.service-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-card{background:#fff;min-height:260px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:.25s}.service-card:hover{background:var(--ink);color:#fff}.service-card .service-no{font-size:10px;color:#999}.service-card h3{font-size:clamp(26px,2.3vw,38px);line-height:1;letter-spacing:-.04em;margin:0}.service-card p{font-size:13px;line-height:1.55;color:var(--muted);max-width:380px}.service-card:hover p{color:#aaa}.service-card .arr{font-size:24px;align-self:flex-end}.service-card>a{position:absolute;inset:0}
/* service detail */
.service-detail-hero{padding-bottom:115px}.service-detail-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#333;margin-top:70px}.service-detail-meta div{background:#111;padding:20px}.service-detail-meta span{font-size:10px;color:#666;text-transform:uppercase;letter-spacing:.14em;display:block;margin-bottom:8px}.service-detail-meta strong{font-size:14px;font-weight:500}.service-overview{background:#fff}.service-overview-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:60px}.service-overview-copy{max-width:900px}.service-overview-copy .h2{margin-bottom:34px}.service-what{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);margin-top:70px}.what-card{background:#fff;padding:30px;min-height:260px}.what-card .micro{color:#999}.what-card h3{font-size:clamp(26px,2.5vw,40px);letter-spacing:-.04em;margin:42px 0 14px}.what-card p{font-size:14px;line-height:1.55;color:var(--muted)}.service-capabilities{background:var(--paper)}.cap-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:60px}.cap-list{border-top:1px solid var(--line)}.cap-row{display:grid;grid-template-columns:70px 1fr auto;gap:22px;padding:23px 0;border-bottom:1px solid var(--line);align-items:center}.cap-row span:first-child{font-size:10px;color:#999}.cap-row strong{font-size:clamp(22px,2vw,32px);letter-spacing:-.03em}.cap-row em{font-style:normal;font-size:11px;color:var(--muted)}
.service-process{background:#0b0b0b;color:#fff}.service-process .eyebrow{color:#666}.service-process-grid{display:grid;grid-template-columns:.52fr 1.48fr;gap:60px}.process-detail{border-top:1px solid #2a2a2a}.process-detail-row{display:grid;grid-template-columns:65px .55fr 1fr;gap:22px;padding:28px 0;border-bottom:1px solid #2a2a2a}.process-detail-row .n{font-size:10px;color:#666}.process-detail-row h3{font-size:clamp(26px,2.5vw,40px);margin:0;letter-spacing:-.04em}.process-detail-row p{margin:0;color:#9e9e9e;font-size:14px;line-height:1.6}.process-detail-row ul{margin:14px 0 0;padding:0;list-style:none;display:flex;gap:8px;flex-wrap:wrap}.process-detail-row li{font-size:10px;color:#bbb;border:1px solid #3b3b3b;padding:7px 8px}.related-work{background:#fff}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.related-card{position:relative;overflow:hidden;background:#eee}.related-card img{aspect-ratio:16/11;object-fit:cover;transition:.6s}.related-card:hover img{transform:scale(1.02)}.related-card div{padding:18px 0}.related-card h3{font-size:clamp(26px,2.6vw,42px);letter-spacing:-.04em;margin:0 0 8px}.related-card p{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.related-card>a{position:absolute;inset:0}
/* process full */
.process-page{background:#fff}.process-intro{display:grid;grid-template-columns:.55fr 1.45fr;gap:60px}.process-intro .lead{max-width:850px}.process-phase{border-top:1px solid var(--line);padding:70px 0}.phase-grid{display:grid;grid-template-columns:100px .6fr 1fr;gap:30px}.phase-no{font-size:11px;color:#999;letter-spacing:.13em}.phase-title h2{font-size:clamp(42px,5vw,78px);letter-spacing:-.055em;line-height:.95;margin:0}.phase-title p{font-size:13px;color:var(--muted);line-height:1.55;margin:20px 0 0;max-width:380px}.phase-detail{display:grid;grid-template-columns:1fr 1fr;gap:40px}.phase-detail h3{font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 16px}.phase-detail p,.phase-detail li{font-size:14px;line-height:1.6;color:var(--muted)}.phase-detail ul{padding-left:18px}.phase-gate{margin-top:26px;padding:18px;border:1px solid var(--line);font-size:12px;line-height:1.55}.phase-gate strong{display:block;margin-bottom:5px}
/* work page */
.work-page{background:var(--paper)}.work-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:34px}.filter-btn{border:1px solid #cfcac1;background:transparent;padding:9px 12px;font-size:11px;cursor:pointer}.filter-btn.active{background:#000;color:#fff;border-color:#000}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.work-card{position:relative;background:#fff}.work-card-media{aspect-ratio:16/11;overflow:hidden}.work-card-media img{height:100%;object-fit:cover;transition:.6s}.work-card:hover img{transform:scale(1.02)}.work-card-copy{padding:22px}.work-card-copy h2{font-size:clamp(28px,3vw,44px);letter-spacing:-.04em;margin:0 0 8px}.work-card-copy p{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0}.work-card>a{position:absolute;inset:0}
/* case */
.case-hero{background:#0b0b0b;color:#fff;padding:170px 0 0}.case-head{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;padding-bottom:50px}.case-head .eyebrow{color:#777}.case-head .lead{color:#aaa;margin-top:24px}.case-media{height:min(78vh,850px);overflow:hidden}.case-media img{height:100%;object-fit:cover}.case-body{background:#fff}.case-body-grid{display:grid;grid-template-columns:.45fr 1.55fr;gap:60px}.case-copy{max-width:900px}.case-facts{margin-top:52px;border-top:1px solid var(--line)}.case-fact{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.case-fact span{color:var(--muted)}.delivered{display:flex;flex-wrap:wrap;gap:8px}.delivered span{font-size:11px;border:1px solid var(--line);padding:7px 8px}.case-gallery{background:var(--paper)}.case-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.case-gallery-grid img{height:100%;min-height:470px;object-fit:cover}.case-gallery-grid img:only-child{grid-column:1/-1;max-height:820px}.next-case{background:#111;color:#fff}.next-case a{display:flex;justify-content:space-between;gap:20px;align-items:end}.next-case .h2{max-width:1000px}
/* company / industries / insights */
.story{background:#fff}.story-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,7vw,110px);align-items:start}.story-image{height:min(80vh,840px);overflow:hidden}.story-image img{height:100%;object-fit:cover}.story-copy .h2{margin-bottom:30px}.story-copy p{font-size:16px;line-height:1.65;color:var(--muted)}.principles{background:var(--paper)}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.principle{background:var(--paper);min-height:360px;padding:28px;display:flex;flex-direction:column;justify-content:space-between}.principle h3{font-size:clamp(32px,3.3vw,52px);letter-spacing:-.05em;margin:0}.principle p{font-size:14px;line-height:1.55;color:var(--muted)}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.industry-card{background:var(--paper);min-height:360px;padding:28px;display:flex;flex-direction:column;justify-content:space-between}.industry-card h2{font-size:clamp(30px,3.2vw,48px);letter-spacing:-.05em;margin:0}.industry-card p{font-size:14px;line-height:1.55;color:var(--muted);max-width:360px}.insight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.insight-feature{background:#fff;border-top:1px solid var(--line);padding-top:12px}.insight-feature img{aspect-ratio:16/10;object-fit:cover}.insight-feature h2{font-size:clamp(30px,3.3vw,52px);letter-spacing:-.05em;line-height:1;margin:16px 0 12px}.insight-feature p{font-size:14px;line-height:1.55;color:var(--muted)}
/* contact + form */
.contact-page{background:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,120px)}.contact-image{height:580px;overflow:hidden;margin-top:38px}.contact-image img{height:100%;object-fit:cover}.contact-rows{border-top:1px solid var(--line);margin-top:46px}.contact-row{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.contact-row span:first-child{font-size:11px;color:var(--muted)}.contact-row a,.contact-row span:last-child{font-size:16px}.project-form-page{background:#fff;min-height:100vh;padding:150px 0 110px}.project-form-wrap{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(50px,9vw,140px)}.form-intro{position:sticky;top:125px;align-self:start}.form-progress{margin-top:38px;display:grid;gap:9px}.form-progress-item{font-size:11px;color:#aaa;display:flex;align-items:center;gap:10px}.form-progress-item i{width:16px;height:1px;background:currentColor}.form-progress-item.active{color:#000}.form-step{display:none}.form-step.active{display:block;animation:rise .35s var(--ease)}@keyframes rise{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}.form-step h2{font-size:clamp(34px,4.4vw,68px);letter-spacing:-.055em;line-height:.95;margin:0 0 38px}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.option{position:relative}.option input{position:absolute;opacity:0}.option label{border:1px solid var(--line);min-height:112px;padding:18px;display:flex;align-items:flex-end;font-size:17px;cursor:pointer}.option input:checked+label{background:#000;color:#fff;border-color:#000}.field{margin-bottom:24px}.field label{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px}.field input,.field textarea,.field select{width:100%;border:0;border-bottom:1px solid #aaa;padding:13px 0;background:transparent;font-size:18px;border-radius:0;outline:0}.field textarea{min-height:130px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#000}.form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:34px}.form-actions button{background:transparent;cursor:pointer}.form-actions .primary{background:#000;color:#fff}.form-error{font-size:12px;color:#9a2525;margin-top:12px;min-height:17px}.summary-box{border-top:1px solid var(--line)}.summary-row{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.summary-row span:first-child{color:var(--muted)}.thanks{min-height:100vh;background:#0a0a0a;color:#fff;display:flex;align-items:center;padding-top:88px}.thanks .lead{color:#aaa;max-width:720px}
/* footer */
.site-footer{background:#0a0a0a;color:#fff;padding:clamp(80px,9vw,150px) 0 28px}.footer-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:50px}.footer-lead h2{font-size:clamp(48px,6.8vw,106px);line-height:.88;letter-spacing:-.065em;font-weight:540;margin:26px 0 36px}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-top:28px}.footer-links>div{display:flex;flex-direction:column;gap:10px}.footer-links span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#5f5f5f;margin-bottom:11px}.footer-links a{font-size:13px;color:#b8b8b8}.footer-links a:hover{color:#fff}.footer-bottom{margin-top:80px;padding-top:18px;border-top:1px solid #272727;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#686868}
/* reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(max-width:1100px){.primary-nav{display:none}.menu-toggle{display:grid}.nav-row{grid-template-columns:1fr auto}.nav-end{grid-column:2}.menu-layout{grid-template-columns:1fr 1fr}.menu-main{grid-row:1/3}.menu-info{grid-column:2}.home-hero .shell{grid-template-columns:1fr}.home-hero{min-height:auto}.hero-visual{height:58vh}.hero-bottom{display:none}.confidence-row{grid-template-columns:1fr 1fr}.confidence-row>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.project-row,.project-row:nth-child(even){grid-template-columns:1.1fr .9fr}.services-intro,.process-layout,.service-pillar,.service-overview-grid,.cap-grid,.service-process-grid,.process-intro,.case-body-grid{grid-template-columns:.4fr 1.6fr}.pillar-grid{grid-template-columns:1fr}.pillar{min-height:auto;padding:35px 0}.pillar+.pillar{border-left:0;border-top:1px solid var(--line-dark);padding-left:0}.pillar h3{margin-top:40px}.pillar-links{margin-top:50px}.phase-grid{grid-template-columns:70px .7fr 1fr}.footer-grid{grid-template-columns:1fr}.footer-links{max-width:700px}}
@media(max-width:760px){:root{--g:20px}.nav-row{height:70px}.brand{width:115px}.nav-contact{display:none}.menu-top-spacer{height:70px}.menu-layout{min-height:calc(100vh - 70px);grid-template-columns:1fr;gap:36px;padding-block:34px}.menu-main{grid-row:auto}.menu-main a{font-size:clamp(40px,12vw,60px)}.menu-services,.menu-info{grid-column:auto}.menu-services{display:none}.home-hero{padding-top:70px}.home-hero .shell{min-height:auto;padding-top:58px;padding-bottom:90px}.display{font-size:clamp(52px,15.8vw,78px);line-height:.88}.hero-sub{font-size:17px}.hero-actions{flex-wrap:wrap}.hero-visual{height:54vh;margin-top:28px}.hero-main-image{inset:0 8% 8% 0}.hero-float{width:46%;padding:9px}.hero-float .micro{display:none}.confidence-row{grid-template-columns:1fr}.confidence-row>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.confidence-row>div{min-height:80px;padding-block:16px}.section-head{align-items:flex-start;flex-direction:column}.project-row,.project-row:nth-child(even){grid-template-columns:1fr}.project-row:nth-child(even) .project-media{order:0}.project-media{min-height:55vh}.project-info{min-height:330px}.services-intro,.process-layout,.page-hero-grid,.service-pillar,.service-overview-grid,.cap-grid,.service-process-grid,.process-intro,.case-body-grid{grid-template-columns:1fr}.services-intro{margin-bottom:50px}.process-sticky{position:static}.process-item{grid-template-columns:42px 1fr}.process-item p{grid-column:2}.brand-statement{min-height:70vh}.people-split{grid-template-columns:1fr}.people-image{height:56vh}.people-copy{min-height:460px}.insight-row{grid-template-columns:1fr}.page-hero{padding:130px 0 72px}.service-cards{grid-template-columns:1fr}.service-pillar{padding:36px 0 55px}.service-pillar-head{padding-bottom:28px}.service-detail-meta{grid-template-columns:1fr}.service-what{grid-template-columns:1fr}.cap-row{grid-template-columns:42px 1fr}.cap-row em{grid-column:2}.process-detail-row{grid-template-columns:42px 1fr}.process-detail-row>div:last-child{grid-column:2}.phase-grid{grid-template-columns:1fr;gap:22px}.phase-detail{grid-template-columns:1fr}.related-grid,.work-grid,.case-gallery-grid,.principle-grid,.industry-grid,.insight-grid{grid-template-columns:1fr}.case-head{grid-template-columns:1fr}.case-media{height:58vh}.case-gallery-grid img{min-height:380px}.story-grid{grid-template-columns:1fr}.story-image{height:58vh}.project-form-wrap{grid-template-columns:1fr}.form-intro{position:static}.form-progress{grid-template-columns:1fr 1fr}.option-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}.contact-grid{grid-template-columns:1fr}.contact-image{height:420px}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}.service-detail-hero{padding-bottom:72px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project-media img,.insight-card img,.related-card img,.work-card-media img,.hero-main-image img{transition:none}}

/* home case-study carousel */
.case-carousel{position:relative}.case-carousel-viewport{overflow:hidden;outline:0;touch-action:pan-y;cursor:grab;background:#fff}.case-carousel-viewport.dragging{cursor:grabbing}.case-carousel-viewport:focus-visible{outline:2px solid var(--ink);outline-offset:6px}.case-carousel-track{display:flex;will-change:transform;transition:transform .78s var(--ease)}.case-slide{flex:0 0 100%;display:grid;grid-template-columns:minmax(0,1.48fr) minmax(340px,.52fr);min-height:min(72vh,760px);background:#fff}.case-slide[aria-hidden="true"]{pointer-events:none}.case-slide-media{display:block;min-height:560px;overflow:hidden;background:#ddd}.case-slide-media img{height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .9s var(--ease);filter:saturate(.92)}.case-slide[aria-hidden="false"] .case-slide-media:hover img{transform:scale(1.025);filter:saturate(1)}.case-slide-copy{padding:clamp(30px,4.2vw,64px);display:flex;flex-direction:column;justify-content:space-between;gap:50px}.case-kicker{font-size:10px;letter-spacing:.16em;color:#999}.case-slide-copy h3{font-size:clamp(40px,4.6vw,76px);line-height:.92;letter-spacing:-.06em;font-weight:550;margin:26px 0 18px;max-width:620px}.case-slide-copy p{font-size:14px;line-height:1.62;color:var(--muted);max-width:450px}.case-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.case-tags span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;border:1px solid #d7d5cf;padding:7px 9px}.case-slide-link{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:18px;font-size:13px;font-weight:600}.case-slide-link span{font-size:23px;font-weight:400}.case-carousel-ui{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;margin-top:18px}.case-carousel-progress{display:grid;grid-template-columns:auto minmax(120px,420px);align-items:center;gap:18px}.case-carousel-count{display:flex;align-items:center;gap:8px;min-width:64px;font-size:11px;letter-spacing:.08em}.case-carousel-count strong{font-weight:650}.case-carousel-count i{font-style:normal;color:#aaa}.case-progress-line{height:1px;background:#cbc8c0;position:relative;overflow:hidden}.case-progress-line i{display:block;height:100%;width:20%;background:var(--ink);transition:width .65s var(--ease)}.case-carousel-controls{display:flex;gap:8px}.case-carousel-controls button{width:52px;height:52px;border:1px solid #c9c6be;background:transparent;color:var(--ink);display:grid;place-items:center;font-size:19px;cursor:pointer;transition:background .25s,color .25s,border .25s}.case-carousel-controls button:hover,.case-carousel-controls button:focus-visible{background:var(--ink);color:#fff;border-color:var(--ink);outline:0}
@media(max-width:1100px){.case-slide{grid-template-columns:1.05fr .95fr}.case-slide-media{min-height:500px}}
@media(max-width:760px){.case-slide{grid-template-columns:1fr;min-height:auto}.case-slide-media{min-height:0;height:56svh}.case-slide-copy{min-height:340px;padding:28px 22px 24px}.case-slide-copy h3{font-size:clamp(38px,12vw,58px);margin-top:22px}.case-carousel-ui{grid-template-columns:1fr auto;gap:18px}.case-carousel-progress{grid-template-columns:auto minmax(70px,1fr);gap:12px}.case-carousel-controls button{width:46px;height:46px}.case-tags{margin-top:22px}}
@media(prefers-reduced-motion:reduce){.case-carousel-track,.case-progress-line i,.case-slide-media img{transition:none}}
