@font-face{font-family:geist;src:url(../media/geist_latin_wght_normal-s.p.175rzww1hghhr.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:geist Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}._6EEuva_className{font-family:geist,geist Fallback}._6EEuva_variable{--font-geist:"geist", "geist Fallback"}
:root{--ink:#0a0a09;--ink-raised:#121211;--paper:#f3f1ea;--olive:#778a1f;--olive-soft:#a7b364;--olive-deep:#55651a;--bg:var(--ink);--fg:var(--paper);--fg-dim:#a3a29a;--fg-faint:#75746d;--rule:#f3f1ea1f;--rule-strong:#f3f1ea4d;--accent:var(--olive-soft);--font-sans:var(--font-geist), "Helvetica Neue", Helvetica, Arial, sans-serif;--gutter:clamp(20px, 5vw, 64px);--header-h:76px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--fg-dim);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:1.0625rem;line-height:1.65;overflow-x:clip}h1,h2,h3,p,ul,ol,dl,dd,fieldset{margin:0;padding:0}ul,ol{list-style:none}fieldset{border:0;min-width:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--olive);color:var(--paper)}h1,h2,h3{color:var(--fg);text-wrap:balance;font-weight:300}h1{letter-spacing:-.04em;font-size:clamp(2.5rem,1.3rem + 5vw,5.25rem);line-height:1.04}h1 em{color:var(--olive-soft);font-style:normal}h2{letter-spacing:-.035em;font-size:clamp(1.9rem,1.3rem + 2.5vw,3.25rem);line-height:1.1}p{text-wrap:pretty}.wrap{width:min(100% - 2 * var(--gutter), 1240px);margin-inline:auto}.skip{z-index:100;background:var(--paper);color:var(--ink);border-radius:3px;padding:10px 16px;font-weight:500;position:absolute;top:-80px;left:12px}.skip:focus{top:12px}.label{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.78rem;font-weight:500}.btn{letter-spacing:-.005em;white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;min-height:54px;padding:0 30px;font-size:1rem;font-weight:500;transition:background-color .25s,border-color .25s,color .25s;display:inline-flex}.btn--solid{background:var(--paper);color:var(--ink)}.btn--solid:hover{background:#fff}.btn--line{border-color:var(--rule-strong);color:var(--fg)}.btn--line:hover{border-color:var(--paper);background:var(--paper);color:var(--ink)}.btn--small{min-height:44px;padding:0 22px;font-size:.9375rem}.btn--large{gap:12px;min-height:62px;padding:0 34px;font-size:1.0625rem}.textlink{color:var(--fg);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:4px;font-weight:500;transition:color .25s;display:inline-block}.textlink:hover{color:var(--accent)}.header{z-index:50;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--rule);background:#0a0a09e6;position:sticky;top:0}.header__row{height:var(--header-h);align-items:center;gap:32px;display:flex}.brand{color:var(--fg);align-items:center;gap:14px;margin-right:auto;display:inline-flex}.brand__mark{width:auto;height:34px}.brand__name{letter-spacing:-.015em;white-space:nowrap;font-size:1.3125rem;font-weight:300}.brand__name span{color:var(--olive-soft)}.nav ul{gap:clamp(20px,2.8vw,40px);display:flex}.nav a:not(.btn){color:var(--fg-dim);padding:8px 0;font-size:.9375rem;transition:color .25s}.nav a:not(.btn):hover{color:var(--fg)}.nav__cta{display:none}.header__actions{align-items:center;gap:12px;display:flex}.menu-toggle{border:1px solid var(--rule-strong);cursor:pointer;background:0 0;border-radius:3px;width:44px;height:44px;padding:0;display:none;position:relative}.menu-toggle span{background:var(--fg);height:1px;transition:transform .25s,top .25s;position:absolute;left:12px;right:12px}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:25px}.header[data-open=true] .menu-toggle span:first-child{top:21px;transform:rotate(45deg)}.header[data-open=true] .menu-toggle span:last-child{top:21px;transform:rotate(-45deg)}@media (max-width:900px){:root{--header-h:66px}.menu-toggle{display:block}.nav{height:calc(100dvh - var(--header-h));padding:16px var(--gutter) 40px;background:var(--ink);border-top:1px solid var(--rule);display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.header[data-open=true] .nav{display:block}.nav ul{flex-direction:column;gap:0}.nav a:not(.btn){border-bottom:1px solid var(--rule);letter-spacing:-.03em;color:var(--fg);padding:20px 0;font-size:1.75rem;font-weight:300;display:block}.nav__cta{margin-top:32px;display:flex}}@media (max-width:560px){.header__actions .btn{display:none}.brand__name{font-size:1.1875rem}.brand__mark{height:30px}}.hero{--px:0;--py:0;min-height:min(calc(100svh - var(--header-h)), 940px);background:radial-gradient(58% 72% at 80% 46%, #f3f1ea0b, #f3f1ea00 70%), var(--ink);flex-direction:column;display:flex;position:relative;overflow:clip}.hero__grid{flex:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(32px,6vw,104px);padding-block:clamp(36px,7vh,88px);display:grid}.hero__copy{z-index:1;max-width:50rem;position:relative}.hero__copy h1{text-wrap:balance;margin-top:26px;font-size:clamp(2.4rem,min(1.1rem + 4.4vw,4.2svh + 2.2rem),4.75rem)}.hero__last{white-space:nowrap;display:block}.word{vertical-align:top;margin-bottom:-.16em;padding-bottom:.16em;display:inline-block;overflow:hidden}.word>span,.rotator__in{animation:.95s cubic-bezier(.2,.75,.2,1) both rise;animation-delay:calc(var(--i) * 45ms + .12s);display:inline-block}@keyframes rise{0%{transform:translateY(110%)}}.rotator{vertical-align:top;height:1.2em;color:var(--olive-soft);margin-bottom:-.16em;display:inline-block;overflow:hidden}.rotator__in,.rotator__track,.rotator__track span{display:block}.rotator__track{animation:10s cubic-bezier(.75,0,.2,1) 3s infinite rotate-values}.rotator__track span{height:1.2em;line-height:1.04em}@keyframes rotate-values{0%,24%{transform:translateY(0)}33%,57%{transform:translateY(-25%)}66%,90%{transform:translateY(-50%)}99%,to{transform:translateY(-75%)}}.hero__in{animation:1s cubic-bezier(.2,.75,.2,1) both hero-in;animation-delay:var(--d,0s)}@keyframes hero-in{0%{opacity:0;transform:translateY(14px)}}.lede{max-width:35rem;margin-top:30px;font-size:clamp(1.0625rem,1rem + .4vw,1.25rem);line-height:1.6}.actions{flex-wrap:wrap;align-items:center;gap:20px 36px;margin-top:40px;display:flex}.hero__art{width:clamp(260px,29vw,420px);margin-right:clamp(0px,2vw,28px);position:relative}.mark{width:100%;height:auto;display:block;overflow:visible}.mark__stroke{stroke-width:47.5px;stroke-dasharray:1 1;animation:1.5s cubic-bezier(.65,0,.2,1) both draw}.mark__stroke--d{stroke:var(--olive);animation-duration:1.7s;animation-delay:.35s}.mark__stroke--b1{stroke:#fff;animation-delay:.6s}.mark__stroke--b2{stroke:#fff;animation-duration:1s;animation-delay:1.45s}@keyframes draw{0%{stroke-dashoffset:1px}}.mark__letter--b{transform:translate(calc(var(--px) * 5px), calc(var(--py) * 4px))}.mark__letter--d{transform:translate(calc(var(--px) * -6px), calc(var(--py) * -5px))}.mark__guides{stroke-width:1px;animation:1.6s ease-out .1s both guides-in}.mark__guides path{vector-effect:non-scaling-stroke}.mark__guides--b{color:#f3f1ea1a}.mark__guides--d{color:#778a1f5c}@keyframes guides-in{0%{opacity:0}}.hero__tag{letter-spacing:.34em;text-transform:uppercase;color:var(--fg);justify-content:space-between;align-items:center;margin-top:clamp(28px,3.4vw,48px);padding-inline:5.8% 5.6%;font-size:.75rem;font-weight:400;animation:1s cubic-bezier(.2,.75,.2,1) 2.1s both hero-in;display:flex}.hero__tag i{background:var(--olive);border-radius:50%;width:5px;height:5px}.index{border-top:1px solid var(--rule);color:var(--fg-dim);grid-template-columns:repeat(4,auto);justify-content:space-between;gap:12px 24px;padding-block:26px;font-size:.9375rem;display:grid}@media (max-width:900px){.hero{min-height:0}.hero__grid{grid-template-columns:minmax(0,1fr);padding-top:clamp(56px,12vw,96px)}.hero__art{z-index:0;opacity:.15;width:min(74vw,420px);margin:0;position:absolute;top:28px;right:-14vw}.hero__tag{display:none}}@media (max-width:640px){.index{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.actions .btn{flex:100%}}@media (prefers-reduced-motion:reduce){.rotator__track,.word>span,.rotator__in,.hero__in,.mark__stroke,.mark__guides,.hero__tag{animation:none}}.section{padding-block:clamp(80px,11vw,160px)}.section--ruled{border-top:1px solid var(--rule)}.section--paper{--bg:var(--paper);--fg:#121210;--fg-dim:#53524b;--fg-faint:#6e6d65;--rule:#12121029;--rule-strong:#12121080;--accent:var(--olive-deep);background:var(--bg);color:var(--fg-dim)}.head{max-width:52rem;margin-bottom:clamp(48px,6vw,88px)}.head h2,.about h2,.contact h2{margin-top:22px}.head--split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:24px clamp(32px,6vw,96px);max-width:none;display:grid}.head--split>p{max-width:28rem;padding-bottom:6px}@media (max-width:900px){.head--split{grid-template-columns:minmax(0,1fr)}}.cases{gap:clamp(72px,10vw,144px);display:grid}.case__shot{aspect-ratio:16/10;border:1px solid var(--rule);background:var(--ink-raised);border-radius:6px;display:block;overflow:hidden;container-type:size}.case__shot img{width:100%;height:auto;transition:transform 1.4s cubic-bezier(.3,0,.2,1)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.case__shot:hover img,.case__shot:focus-visible img{transition-duration:14s;transition-timing-function:cubic-bezier(.4,0,.3,1);transform:translateY(calc(100cqh - 100%))}}.case__info{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px clamp(32px,6vw,96px);margin-top:clamp(28px,3.4vw,44px);display:grid}.case__info h3{letter-spacing:-.035em;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.4rem);line-height:1.12}.case__meta{color:var(--fg-faint);margin-top:10px;font-size:.9375rem}.case__info .textlink{margin-top:26px;font-size:.9375rem}.case__list{color:var(--fg);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;margin-top:28px;font-size:.9375rem;line-height:1.45;display:grid}.case__list li{border-top:1px solid var(--rule);padding-block:14px}@media (max-width:900px){.case__info{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.case__list{grid-template-columns:minmax(0,1fr)}}.services{border-bottom:1px solid var(--rule)}.service{border-top:1px solid var(--rule);grid-template-columns:minmax(0,5fr) minmax(0,5fr) minmax(0,3fr);align-items:baseline;gap:12px clamp(24px,4vw,64px);padding-block:clamp(26px,3.2vw,40px);display:grid}.service h3{letter-spacing:-.03em;font-size:clamp(1.45rem,1.1rem + 1.3vw,2rem);line-height:1.15}.service__fit{color:var(--fg);font-size:.9375rem;line-height:1.5}.service__fit span{color:var(--fg-faint);margin-bottom:4px;font-size:.8125rem;display:block}@media (max-width:900px){.service{grid-template-columns:minmax(0,1fr)}.service__fit{margin-top:8px}}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3.4vw,48px);display:grid}.step{border-top:1px solid var(--fg);padding-top:26px}.step__n{letter-spacing:-.04em;color:var(--accent);font-size:clamp(2.5rem,2rem + 1.6vw,3.5rem);font-weight:200;line-height:1;display:block}.step h3{letter-spacing:-.02em;margin-top:clamp(24px,3.4vw,48px);font-size:1.25rem;font-weight:500;line-height:1.25}.step p{margin-top:12px;font-size:1rem}@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}}@media (max-width:560px){.steps{grid-template-columns:minmax(0,1fr);row-gap:36px}.step h3{margin-top:18px}}.about{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(36px,7vw,112px);display:grid}.about__text{color:var(--fg);font-size:clamp(1.125rem,1rem + .6vw,1.375rem);font-weight:300;line-height:1.55}.principles{border-bottom:1px solid var(--rule);margin-top:clamp(36px,5vw,60px)}.principles li{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:6px 28px;padding-block:22px;display:grid}.principles h3{letter-spacing:-.01em;font-size:1.0625rem;font-weight:500;line-height:1.4}.principles p{font-size:1rem}@media (max-width:900px){.about{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.principles li{grid-template-columns:minmax(0,1fr)}}.contact{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:clamp(32px,6vw,96px);display:grid}.contact h2{max-width:14em;font-size:clamp(2.1rem,1.3rem + 3.4vw,4rem);line-height:1.06}.contact__side p{max-width:28rem;font-size:1.125rem}.contact__side .btn{margin-top:32px}@media (max-width:900px){.contact{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.contact__side .btn{width:100%}}.footer{border-top:1px solid var(--rule);padding-top:clamp(56px,7vw,96px);font-size:.9375rem}.footer__grid{grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) minmax(0,1fr);gap:40px clamp(24px,5vw,72px);display:grid}.footer__brand img{width:min(100%,240px);margin-left:-12px}.footer__brand p{max-width:21rem;margin-top:14px}.footer h2{letter-spacing:0;color:var(--fg);font-size:.9375rem;font-weight:500;line-height:1.6}.footer ul{gap:10px;margin-top:16px;display:grid}.footer a{transition:color .25s}.footer a:hover{color:var(--fg)}.footer__base{border-top:1px solid var(--rule);color:var(--fg-faint);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:clamp(48px,6vw,88px);padding-block:26px;font-size:.875rem;display:flex}@media (max-width:720px){.footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer__brand{grid-column:1/-1}}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transform:translateY(16px)}.js [data-reveal].is-in{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
