@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500&family=Manrope:wght@300;400;500&display=swap";:root{font-family:DM Sans,sans-serif;color:#111;background:#f7f7f7;font-synthesis:none;--black: #111;--stone: #6e6e6e;--mist: #e9e9e9;--pearl: #f7f7f7;--line: #d7d7d7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--pearl);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid currentColor;outline-offset:3px}.scroll-progress{position:fixed;z-index:40;top:0;left:0;width:100%;height:2px;background:var(--black);transform:scaleX(0);transform-origin:left;will-change:transform}.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;height:88px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;background:#f7f7f7e6;border-bottom:1px solid rgba(17,17,17,.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:height .35s ease,background .35s ease,box-shadow .35s ease}.site-header.scrolled{height:74px;background:#f7f7f7f5;box-shadow:0 8px 35px #1111110a}.wordmark{font-family:Manrope,sans-serif;font-size:23px;font-weight:400;letter-spacing:-.045em}.wordmark span{font-weight:300}.nav{display:flex;align-items:center;gap:clamp(14px,1.7vw,30px);font-size:13px}.nav a{position:relative;transition:opacity .2s ease}.nav a:not(.nav-cta):after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.nav a:hover{opacity:.58}.nav a:hover:after,.nav a[aria-current=page]:after{transform:scaleX(1);transform-origin:left}.nav-cta{padding:12px 20px;color:var(--pearl);background:var(--black);border-radius:999px}.menu-button{display:none;padding:0;color:var(--black);background:none;border:0}.language-switcher{display:flex;align-items:center;padding:3px;border:1px solid var(--line);border-radius:999px}.language-switcher button{min-width:32px;padding:6px 8px;color:var(--stone);background:transparent;border:0;border-radius:999px;font-size:10px;letter-spacing:.08em;cursor:pointer}.language-switcher button[aria-pressed=true]{color:var(--pearl);background:var(--black)}.section{padding:130px 6.5vw}.section[id]{scroll-margin-top:88px}.hero{min-height:100svh;padding-top:145px;display:flex;flex-direction:column;justify-content:space-between}.hero-kicker,.project-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.hero h1{max-width:1100px;margin:70px 0;font-family:Manrope,sans-serif;font-size:clamp(64px,8.3vw,128px);line-height:.96;font-weight:300;letter-spacing:-.06em}.hero-line{display:block;width:fit-content;padding-bottom:.22em;margin-bottom:-.22em;overflow:hidden}.hero-line>span{display:block;width:fit-content;white-space:nowrap}.hero-line:last-child>span{color:var(--stone)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding-top:26px}.hero-bottom p{max-width:510px;margin:0;font-size:18px;line-height:1.5;color:#444}.text-link{border-bottom:1px solid;padding-bottom:5px;font-size:13px}.reveal{opacity:0;transform:translateY(30px);filter:blur(12px)}.reveal.in{opacity:1;transform:none;filter:none;transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1),filter 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--d,0s)}.section-dark{color:var(--pearl);background:var(--black)}.statement{min-height:75vh;display:flex;flex-direction:column;justify-content:space-between}.eyebrow{margin:0;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.statement-copy{max-width:1150px;margin:90px 0 0;font-family:Manrope,sans-serif;font-size:clamp(42px,6.2vw,92px);line-height:1.04;font-weight:300;letter-spacing:-.05em}.statement-copy span{color:#777}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:start;margin-bottom:80px}.section-heading h2,.about h2,.contact h2{max-width:880px;margin:0;font-family:Manrope,sans-serif;font-size:clamp(42px,5.3vw,78px);line-height:1.04;font-weight:300;letter-spacing:-.055em}.services .section-heading,.process .section-heading{flex-direction:column}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line)}.service-card{position:relative;padding:0 0 32px;transition:transform .3s ease}.service-card:hover{transform:translateY(-8px)}.service-card:not(:last-child):after{content:"";position:absolute;top:0;right:-15px;bottom:0;width:1px;background:var(--line)}.service-visual{position:relative;aspect-ratio:4/3;margin:0 0 28px;overflow:hidden;background:#0b0b0b}.service-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(255,255,255,.12);pointer-events:none}.service-visual img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);animation:service-drift 12s ease-in-out infinite alternate;transition:transform 1.1s cubic-bezier(.2,.75,.2,1),filter .8s ease}.service-card:nth-child(2) .service-visual img{animation-delay:-4s}.service-card:nth-child(3) .service-visual img{animation-delay:-8s}.service-glint{position:absolute;inset:-60% auto -60% -35%;width:18%;background:#ffffff29;filter:blur(18px);transform:rotate(14deg);animation:service-glint 8s ease-in-out infinite;pointer-events:none}.service-card:hover .service-visual img{transform:scale(1.09);filter:contrast(1.06)}.service-copy{min-height:190px;display:flex;flex-direction:column;justify-content:space-between}.service-number,.process-list>li>span{color:var(--stone);font-size:12px}.service-card h3,.process-list h3{margin:0 0 18px;font-family:Manrope,sans-serif;font-size:28px;font-weight:400;letter-spacing:-.035em}.service-card p,.process-list p{max-width:340px;margin:0;color:var(--stone);font-size:15px;line-height:1.65}@keyframes service-drift{0%{transform:scale(1.04) translate3d(-1.2%,0,0)}to{transform:scale(1.09) translate3d(1.2%,-1%,0)}}@keyframes service-glint{0%,18%{left:-35%;opacity:0}35%{opacity:.7}58%,to{left:125%;opacity:0}}.pricing{padding-top:70px;background:var(--mist)}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.plan-card{min-height:650px;padding:30px;display:flex;flex-direction:column;background:var(--pearl);border:1px solid #dedede;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.plan-card:hover{z-index:1;transform:translateY(-8px);border-color:#bdbdbd;box-shadow:0 22px 55px #11111114}.plan-card.recommended{color:var(--pearl);background:var(--black);border-color:var(--black)}.plan-label{min-height:36px;display:flex;align-items:start;justify-content:space-between;gap:15px;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.plan-label span:last-child{padding:6px 9px;color:var(--black);background:var(--pearl);border-radius:999px;letter-spacing:.08em}.plan-from{margin:48px 0 5px;color:var(--stone);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.plan-card h3{margin:0;font-family:Manrope,sans-serif;font-size:clamp(44px,4vw,64px);font-weight:300;letter-spacing:-.06em}.plan-tagline{margin:12px 0 38px;color:var(--stone)}.recommended .plan-tagline{color:#aaa}.plan-card ul{margin:0 0 45px;padding:0;list-style:none}.plan-card li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.recommended li{border-color:#333}.plan-card button{width:100%;margin-top:auto;padding:15px 20px;color:var(--pearl);background:var(--black);border:1px solid var(--black);border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.plan-card button:active,.button:active{transform:scale(.98)}.plan-card button:hover{color:var(--black);background:transparent}.recommended button{color:var(--black);background:var(--pearl);border-color:var(--pearl)}.recommended button:hover{color:var(--pearl)}.maintenance{margin-top:12px;padding:35px 30px;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px;background:var(--pearl)}.maintenance .eyebrow{margin-bottom:20px}.maintenance h3{margin:0;font-family:Manrope,sans-serif;font-size:clamp(28px,3vw,44px);font-weight:300;letter-spacing:-.045em}.maintenance>p{max-width:500px;margin:0;color:var(--stone);line-height:1.6}.pricing-note{max-width:900px;margin:26px 0 0;color:var(--stone);font-size:11px;line-height:1.6}.projects{padding-top:60px}.split-heading>p{max-width:350px;margin:42px 0 0;color:var(--stone);line-height:1.6}.split-heading .eyebrow{margin-bottom:32px}.project-list{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:repeat(2,400px);gap:12px}.project-card{position:relative;isolation:isolate;padding:30px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .45s cubic-bezier(.2,.75,.2,1),box-shadow .45s ease}.project-card:before{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000004d,#0000000d 38%,#000000c7)}.project-card:hover{z-index:1;transform:translateY(-7px);box-shadow:0 28px 70px #11111129}.project-card:first-child{grid-row:1/3}.project-card.dark,.project-card.stone{color:var(--pearl);background:var(--black)}.project-card.mist{color:var(--black);background:var(--mist)}.project-card.mist:before{background:linear-gradient(180deg,#f7f7f78c,#f7f7f708 42%,#f7f7f7eb)}.project-media{position:absolute;z-index:-2;top:-2%;right:-2%;bottom:-2%;left:-2%;width:104%;height:104%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.75,.2,1),filter .8s ease}.project-card:hover .project-media{transform:scale(1.055);filter:contrast(1.04)}.project-top,.project-copy,.project-action{position:relative;z-index:1}.project-copy h3{margin:0;font-family:Manrope,sans-serif;font-size:clamp(40px,5vw,76px);line-height:1;font-weight:300;letter-spacing:-.055em}.project-copy p{max-width:400px;margin:18px 0 0;line-height:1.5;opacity:.72}.project-action{width:fit-content;padding-bottom:3px;font-size:12px;border-bottom:1px solid currentColor;transform:translateY(8px);opacity:0;transition:transform .35s ease,opacity .35s ease}.project-card:hover .project-action{transform:translateY(0);opacity:1}.process{padding-top:80px}.process-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:90px 1fr 1fr;align-items:start;gap:30px;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .35s ease,background .35s ease}.process-list li:hover{padding-right:22px;padding-left:22px;background:#11111109}.process-list li h3{transition:transform .35s ease}.process-list li:hover h3{transform:translate(8px)}.process-list h3{margin:0}.process-list p{max-width:430px}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;align-items:center;background:var(--mist)}.about-mark{min-height:540px;display:grid;place-items:center;color:var(--pearl);background:var(--black);font-family:Manrope,sans-serif;font-size:clamp(80px,11vw,170px);font-weight:300;letter-spacing:-.09em}.about-copy .eyebrow{margin-bottom:34px}.about-copy h2{font-size:clamp(42px,4.4vw,68px)}.about-copy>p:not(.eyebrow){max-width:610px;margin:32px 0 0;color:var(--stone);font-size:17px;line-height:1.7}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-heading .eyebrow{margin-bottom:35px}.contact-heading h2{font-size:clamp(46px,5.5vw,84px)}.contact-heading>a{display:inline-block;margin-top:55px;padding-bottom:5px;border-bottom:1px solid #666;font-size:15px}.contact-form{align-self:end}.form-honeypot{position:absolute;left:-9999px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-form label{display:block;margin-bottom:28px;color:#aaa;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.contact-form input,.contact-form textarea,.contact-form select{width:100%;margin-top:12px;padding:15px 0;color:var(--pearl);background:transparent;border:0;border-bottom:1px solid #444;border-radius:0;outline:none;font-size:16px;letter-spacing:0;text-transform:none;resize:vertical;transition:border-color .2s ease}.contact-form select{color-scheme:dark}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--pearl)}.form-footer{display:flex;gap:22px;align-items:center}.button{padding:14px 23px;border:1px solid transparent;border-radius:999px;cursor:pointer}.button-light{color:var(--black);background:var(--pearl);transition:transform .2s ease,box-shadow .3s ease}.button-light:hover{box-shadow:0 10px 35px #ffffff29;transform:translateY(-2px)}.button:disabled{cursor:wait;opacity:.65}.form-note{max-width:310px;margin:0;color:#888;font-size:12px;line-height:1.5}.form-note.form-error{color:#e2a6a6}footer{padding:32px 4.5vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.1em}footer .wordmark{font-size:19px;text-transform:none;letter-spacing:-.045em}.motion-ready .scroll-reveal{opacity:0;translate:0 34px;transition:opacity .8s ease var(--reveal-delay,0ms),translate .8s cubic-bezier(.2,.75,.2,1) var(--reveal-delay,0ms)}.motion-ready .scroll-reveal.is-visible{opacity:1;translate:0 0}@media(max-width:900px){.site-header{height:74px}.section[id]{scroll-margin-top:74px}.menu-button{display:block}.nav{position:fixed;inset:74px 0 auto;padding:30px 6vw 45px;flex-direction:column;align-items:stretch;gap:0;background:var(--pearl);border-bottom:1px solid var(--line);transform:translateY(-120%);opacity:0;transition:transform .3s ease,opacity .3s ease}.nav.open{transform:translateY(0);opacity:1}.nav a{padding:16px 0;font-size:24px;border-bottom:1px solid var(--line)}.nav a:not(.nav-cta):after{display:none}.nav .language-switcher{width:fit-content;margin:20px 0 2px}.nav .language-switcher button{min-width:48px;padding:10px 12px;font-size:12px}.nav .nav-cta{margin-top:18px;padding:15px 20px;color:var(--pearl);text-align:center;border:0}.hero{padding-top:120px}.statement{min-height:auto;justify-content:flex-start;gap:clamp(110px,16vw,155px)}.statement-copy{margin-top:0}.service-grid{grid-template-columns:1fr;gap:0}.service-card,.service-card+.service-card{padding:0 0 34px;margin-bottom:34px;border-right:0;border-bottom:1px solid var(--line)}.service-card:not(:last-child):after{display:none}.service-copy{min-height:175px}.plans-grid{grid-template-columns:1fr}.plan-card{min-height:auto}.plan-card button{margin-top:10px}.project-list{grid-template-columns:1fr;grid-template-rows:repeat(3,430px)}.project-card:first-child{grid-row:auto}.about,.contact{grid-template-columns:1fr}.about-mark{min-height:420px}}@media(max-width:620px){.section{padding:90px 6vw}.hero{min-height:700px;padding-top:110px;padding-bottom:70px;justify-content:flex-start}.hero-kicker span:last-child{display:none}.hero h1{margin:78px 0 62px;font-size:clamp(38px,11.8vw,58px);line-height:1;letter-spacing:-.055em}.hero-line,.hero-line>span{width:auto}.hero-line>span{white-space:normal}.hero-bottom{align-items:start;flex-direction:column;gap:30px}.hero-bottom p{font-size:16px}.statement{gap:100px}.section-heading{margin-bottom:55px}.split-heading{flex-direction:column}.split-heading>p{margin-top:0}.project-list{grid-template-rows:repeat(3,390px)}.project-card{padding:24px}.project-action{transform:none;opacity:1}.process-list li{grid-template-columns:45px 1fr;gap:16px}.process-list p{grid-column:2}.maintenance{grid-template-columns:1fr;align-items:start;gap:25px}.about-mark{min-height:330px}.field-row{grid-template-columns:1fr;gap:0}.form-footer{align-items:start;flex-direction:column}footer{align-items:start;flex-direction:column;gap:18px}}@media(hover:none){.service-card:hover,.plan-card:hover,.project-card:hover{transform:none}.process-list li:hover{padding-right:0;padding-left:0;background:transparent}.process-list li:hover h3{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none;filter:none}.motion-ready .scroll-reveal{opacity:1;translate:none}}
