@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-italic-Bxi8ein9.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/ibm-plex-sans-latin-300-normal-b4i7YzLG.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-300-normal-C9Of02-5.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}.vp{--white:#f7f6f2;--paper:#efede6;--black:#161616;--grey:#6f6f6a;--sage:#8a8f84;--line:#d8d5cc;--serif:"Newsreader Variable", "Newsreader", Georgia, serif;--sans:"IBM Plex Sans", system-ui, sans-serif;background:var(--white);color:var(--black);font-family:var(--sans);min-height:100vh;font-size:16px;font-weight:300;line-height:1.75;overflow-x:clip}.vp ::selection{background:var(--sage);color:#fff}.vp :focus-visible{outline:1px solid var(--black);outline-offset:4px}.vp a{text-decoration:none}.vp em{font-family:var(--serif);font-style:italic;font-weight:300}.vp-wrap{width:min(1440px,100% - 10vw);margin-inline-start:auto;margin-inline-end:auto}.vp-page{padding-bottom:clamp(80px,10vw,160px)}.vp-caption{letter-spacing:.18em;text-transform:uppercase;color:var(--grey);font-size:11px;font-weight:400}.vp-caption--light{color:#fffc}.vp-h1{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(44px,6.4vw,104px);font-weight:250;line-height:1.02}.vp-h1 em{color:var(--sage)}.vp-h2{font-family:var(--serif);letter-spacing:-.015em;font-size:clamp(30px,3.4vw,50px);font-weight:300;line-height:1.1}.vp-lede{font-family:var(--serif);max-width:720px;margin-top:24px;font-size:clamp(20px,1.8vw,26px);font-weight:300;line-height:1.45}.vp-small{color:var(--grey);font-size:13px}.vp-small a,.vp-lede a{border-bottom:1px solid}.vp-center{text-align:center;justify-items:center;gap:24px;margin-top:60px;display:grid}.vp [data-reveal]{opacity:0;transition:opacity 1.6s,transform 1.6s;transform:translateY(14px)}.vp [data-reveal][data-visible]{opacity:1;transform:none}.vp-btn{background:var(--black);color:var(--white);border:1px solid var(--black);letter-spacing:.08em;align-items:center;gap:14px;padding:15px 28px;font-size:13px;font-weight:400;transition:background .5s,color .5s;display:inline-flex}.vp-btn:hover{color:var(--black);background:0 0}.vp-btn:disabled{opacity:.5;cursor:progress}.vp-link{letter-spacing:.08em;color:var(--black);background:0 0;border:0;padding-bottom:4px;font-size:13px;display:inline-block;position:relative}.vp-link:after{content:"";transform-origin:100%;background:currentColor;width:100%;height:1px;transition:transform .6s;position:absolute;bottom:0;left:0}.vp-link:hover:after{transform:scaleX(.3)}.vp-link--back{margin-right:auto}.vp-header{z-index:40;justify-content:space-between;align-items:center;height:76px;padding:0 5vw;display:flex;position:sticky;top:0}.vp-header:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(12px);background:#f7f6f2e0;position:absolute;top:0;bottom:0;left:0;right:0}.vp-logo{color:var(--black);font-family:var(--serif);letter-spacing:-.01em;align-items:center;gap:14px;font-size:22px;font-weight:350;display:inline-flex}.vp-logo em{color:var(--sage)}.vp-logo__mark{border:1px solid var(--black);grid-template-columns:1fr 1fr;width:24px;height:24px;display:grid}.vp-logo__mark i:last-child{background:var(--black)}.vp-nav{align-items:center;gap:34px;display:flex}.vp-nav ul{gap:26px;display:flex}.vp-nav ul a{letter-spacing:.04em;color:var(--grey);font-size:13px;transition:color .3s;position:relative}.vp-nav ul a:hover,.vp-nav ul a.active{color:var(--black)}.vp-nav ul a.active:before{content:"";background:var(--sage);border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:-12px;transform:translateY(-50%)}.vp-nav__quote{border:1px solid var(--black);color:var(--black);padding:8px 16px;font-size:13px;transition:background .4s,color .4s}.vp-nav__quote:hover{background:var(--black);color:var(--white)}.vp-back{color:var(--sage);border-left:1px solid var(--line);padding-left:22px;font-size:12px}.vp-back:hover{color:var(--black)}.vp-burger{letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;padding:10px 0;font-size:13px;display:none}.vp-header__actions{align-items:center;gap:22px;display:none}.vp-header__quote{letter-spacing:.12em;text-transform:uppercase;color:var(--black);border:1px solid var(--black);padding:7px 12px;font-size:12px}.vp-hero{background:#2a2a28;height:min(100vh - 76px,980px);min-height:520px;position:relative;overflow:hidden}.vp-hero__slide{opacity:0;transition:opacity 2s;position:absolute;top:0;bottom:0;left:0;right:0}.vp-hero__slide.is-active{opacity:1}.vp-hero__slide img,.vp-hero__slide .img-fallback{object-fit:cover;width:100%;height:100%;transition:transform 8s ease-out;transform:scale(1.06)}.vp-hero__slide.is-active img{transform:scale(1)}.vp-hero__veil{background:linear-gradient(#0000000d 40%,#00000080);position:absolute;top:0;bottom:0;left:0;right:0}.vp-hero__content{color:#fff;grid-template-columns:1fr auto;align-items:end;gap:30px;display:grid;position:absolute;top:auto;bottom:5vh;left:5vw;right:5vw}.vp-hero__title{font-family:var(--serif);letter-spacing:-.03em;grid-column:1/-1;font-size:clamp(56px,9vw,150px);font-weight:250;line-height:.95}.vp-hero__title em{color:#e9e7df}.vp-hero__project{color:#fff;font-family:var(--serif);border-bottom:1px solid #ffffff80;font-size:21px}.vp-hero__controls{gap:8px;display:flex}.vp-hero__controls button{color:#fff;background:0 0;border:1px solid #fff9;border-radius:50%;width:46px;height:46px;font-size:15px;transition:background .3s,color .3s}.vp-hero__controls button:hover{color:var(--black);background:#fff}.vp-intro{grid-template-columns:1fr 2.4fr;gap:30px 60px;padding:clamp(100px,14vw,220px) 0 clamp(80px,10vw,140px);display:grid}.vp-intro__text{font-family:var(--serif);letter-spacing:-.01em;font-size:clamp(26px,3vw,44px);font-weight:300;line-height:1.3}.vp-intro .vp-link{grid-column:2;justify-self:start}.vp-index__head{border-bottom:1px solid var(--black);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:24px;display:flex}.vp-index__list li{border-bottom:1px solid var(--line)}.vp-index__list a{color:var(--black);grid-template-columns:60px 1fr 1fr 80px;align-items:baseline;gap:20px;padding:26px 0;transition:padding .6s,color .4s;display:grid;position:relative}.vp-index__list a:hover{padding-left:20px}.vp-index__n{color:var(--grey);font-size:12px}.vp-index__title{font-family:var(--serif);font-size:clamp(24px,2.6vw,38px);font-weight:300}.vp-index__place,.vp-index__year{color:var(--grey);font-size:14px}.vp-index__year{text-align:right}.vp-index__thumb{opacity:0;pointer-events:none;z-index:2;width:240px;transition:opacity .5s,transform .6s;position:absolute;top:50%;right:18%;transform:translateY(-50%)scale(.92)}.vp-index__thumb img{aspect-ratio:10/7;object-fit:cover;width:100%}.vp-index__list a:hover .vp-index__thumb{opacity:1;transform:translateY(-50%)scale(1)}.vp-index__list a:focus-visible .vp-index__thumb{opacity:1;transform:translateY(-50%)scale(1)}.vp-duo{grid-template-columns:1.3fr 1fr;align-items:center;gap:clamp(40px,7vw,120px);padding:clamp(80px,11vw,170px) 0;display:grid}.vp-duo img,.vp-duo .img-fallback{aspect-ratio:4/3;object-fit:cover;width:100%}.vp-duo__text{justify-items:start;gap:20px;display:grid}.vp-duo__text p{color:var(--grey);max-width:420px}.vp-list li{border-bottom:1px solid var(--line);padding:10px 0}.vp-callout{background:var(--black);color:var(--white);padding:clamp(80px,10vw,150px) 0}.vp-callout .vp-wrap{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.vp-callout__text{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(34px,4.6vw,70px);font-weight:250;line-height:1.08}.vp-callout__text em{color:var(--sage)}.vp-callout .vp-btn{background:var(--white);color:var(--black);border-color:var(--white)}.vp-callout .vp-btn:hover{color:var(--white);background:0 0}.vp-pagehead{max-width:1100px;margin-left:5vw;padding:clamp(70px,10vw,150px) 0 clamp(50px,6vw,90px)}.vp-pagehead .vp-caption{margin-bottom:22px}.vp-atelier{grid-template-columns:1.2fr 1fr;align-items:start;gap:clamp(40px,8vw,140px);display:grid}.vp-atelier__text .vp-lede{margin:0 0 30px}.vp-atelier__text p+p{color:#3e3e3a;margin-top:16px}.vp-atelier__fig img,.vp-atelier__fig .img-fallback{aspect-ratio:10/13;object-fit:cover;width:100%}.vp-principles{border-top:1px solid var(--black);grid-template-columns:repeat(3,1fr);gap:50px;margin-top:clamp(80px,10vw,150px);padding-top:50px;display:grid}.vp-principles h2{font-family:var(--serif);margin:14px 0 10px;font-size:30px;font-weight:300}.vp-principles p{color:var(--grey)}.vp-figures{margin-top:100px}.vp-figures dl{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.vp-figures dd{font-family:var(--serif);margin:0;font-size:clamp(64px,8vw,130px);font-weight:250;line-height:1}.vp-figures dt{letter-spacing:.14em;text-transform:uppercase;color:var(--grey);font-size:12px}.vp-figures div{border-top:1px solid var(--line);flex-direction:column-reverse;padding-top:16px;display:flex}.vp-filter{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:28px;margin-bottom:50px;padding-bottom:20px;display:flex}.vp-filter button{color:var(--grey);background:0 0;border:0;padding:4px 0;font-size:14px;font-weight:300;position:relative}.vp-filter button sup{margin-left:2px;font-size:10px}.vp-filter button[aria-pressed=true]{color:var(--black)}.vp-filter button[aria-pressed=true]:after{content:"";background:var(--black);height:1px;position:absolute;bottom:-21px;left:0;right:0}.vp-filter button:hover{color:var(--black)}.vp-filter button:disabled{opacity:.4;cursor:not-allowed}.vp-projects{grid-template-columns:1fr 1fr;gap:clamp(60px,7vw,110px) clamp(30px,4vw,60px);display:grid}.vp-projectcard.is-large{grid-column:1/-1}.vp-projectcard:not(.is-large):nth-child(3n){margin-top:120px}.vp-projectcard a{color:var(--black);display:block}.vp-projectcard__img{background:var(--paper);overflow:hidden}.vp-projectcard__img img,.vp-projectcard__img .img-fallback{aspect-ratio:5/4;object-fit:cover;filter:saturate(.85);width:100%;transition:transform 2s cubic-bezier(.2,.7,.2,1),filter 1s}.vp-projectcard.is-large .vp-projectcard__img img,.vp-projectcard.is-large .vp-projectcard__img .img-fallback{aspect-ratio:16/9}.vp-projectcard a:hover img{filter:saturate();transform:scale(1.03)}.vp-projectcard__meta{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;padding-top:18px;display:flex}.vp-projectcard__meta h2{font-family:var(--serif);font-size:clamp(24px,2.2vw,34px);font-weight:300}.vp-projectcard__meta p{color:var(--grey);font-size:13px}.vp-status{border:1px solid var(--sage);color:var(--sage);letter-spacing:.08em;text-transform:uppercase;margin-left:10px;padding:2px 8px;font-size:11px}.vp-project__hero{height:min(82vh,860px);min-height:420px;overflow:hidden}.vp-project__hero img,.vp-project__hero .img-fallback{object-fit:cover;width:100%;height:100%;animation:2.4s cubic-bezier(.2,.7,.2,1) both vp-settle}@keyframes vp-settle{0%{opacity:.4;transform:scale(1.08)}}.vp-project__head{grid-template-columns:1.4fr 1fr;gap:clamp(40px,7vw,120px);padding:clamp(60px,8vw,120px) 0;display:grid}.vp-project__head .vp-caption{margin-bottom:18px}.vp-sheet{border-top:1px solid var(--black)}.vp-sheet div{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;gap:16px;padding:12px 0;font-size:14px;display:grid}.vp-sheet dt{color:var(--grey);letter-spacing:.1em;text-transform:uppercase;padding-top:2px;font-size:12px}.vp-sheet dd{margin:0}.vp-chapters{grid-template-columns:repeat(3,1fr);gap:50px;padding-bottom:clamp(60px,8vw,120px);display:grid}.vp-chapter h2{font-family:var(--serif);margin:10px 0 12px;font-size:30px;font-weight:300}.vp-chapter p:not(.vp-caption){color:#3e3e3a}.vp-project__gallery{grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px);display:grid}.vp-project__gallery figure.is-wide{grid-column:1/-1}.vp-project__gallery button{background:var(--paper);cursor:zoom-in;border:0;width:100%;padding:0;display:block;overflow:hidden}.vp-project__gallery img,.vp-project__gallery .img-fallback{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform 1.6s}.vp-project__gallery .is-wide img,.vp-project__gallery .is-wide .img-fallback{aspect-ratio:16/8}.vp-project__gallery button:hover img{transform:scale(1.02)}.vp-project__gallery figcaption{color:var(--grey);font-size:13px;font-family:var(--serif);margin-top:10px;font-size:16px;font-style:italic}.vp-project__cta{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(70px,9vw,120px);padding:34px 0;display:flex}.vp-project__cta p{font-family:var(--serif);font-size:clamp(26px,3vw,40px);font-weight:300;line-height:1.15}.vp-project__cta em{color:var(--sage)}.vp-project__cta+.vp-project__nav{margin-top:0}.vp-project__nav{border-top:1px solid var(--black);grid-template-columns:1fr auto 1fr;align-items:end;gap:20px;margin-top:clamp(80px,10vw,140px);padding-top:30px;display:grid}.vp-project__nav a{color:var(--black);font-family:var(--serif);gap:4px;font-size:clamp(22px,2.4vw,34px);font-weight:300;display:grid}.vp-project__nav a.is-next{text-align:right}.vp-project__all{border-bottom:1px solid var(--line);font-family:var(--sans)!important;color:var(--grey)!important;font-size:13px!important}.vp-masonry{columns:3;column-gap:24px}.vp-masonry li{break-inside:avoid;margin-bottom:24px}.vp-masonry button{background:var(--paper);cursor:zoom-in;text-align:left;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.vp-masonry img,.vp-masonry .img-fallback{width:100%;height:auto;min-height:120px;transition:transform 1.4s,filter .8s}.vp-masonry li:nth-child(3n+1) img{aspect-ratio:4/5;object-fit:cover}.vp-masonry li:nth-child(3n+2) img{aspect-ratio:4/3;object-fit:cover}.vp-masonry li:nth-child(3n) img{aspect-ratio:1;object-fit:cover}.vp-masonry button:hover img{filter:brightness(.7);transform:scale(1.03)}.vp-masonry button:focus-visible img{filter:brightness(.7);transform:scale(1.03)}.vp-masonry__cap{color:#fff;font-family:var(--serif);opacity:0;font-size:22px;line-height:1.2;transition:opacity .5s,transform .5s;position:absolute;bottom:16px;left:18px;right:18px;transform:translateY(8px)}.vp-masonry__cap small{font-family:var(--sans);opacity:.85;font-size:12px;display:block}.vp-masonry button:hover .vp-masonry__cap{opacity:1;transform:none}.vp-masonry button:focus-visible .vp-masonry__cap{opacity:1;transform:none}.vp-lightbox{z-index:100;background:#f7f6f2fa;grid-template-rows:auto 1fr;padding:20px 5vw 30px;animation:.6s vp-fade;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes vp-fade{0%{opacity:0}}.vp-lightbox__top{justify-content:space-between;align-items:center;display:flex}.vp-lightbox__close{letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;padding:10px 0;font-size:13px}.vp-lightbox__fig{grid-template-rows:1fr auto;min-height:0;padding:10px 60px 0;display:grid}.vp-lightbox__fig img,.vp-lightbox__fig .img-fallback{object-fit:contain;width:100%;height:100%;min-height:0;max-height:calc(100vh - 160px);animation:.8s vp-fade}.vp-lightbox__fig figcaption{font-family:var(--serif);flex-wrap:wrap;justify-content:space-between;gap:20px;padding-top:14px;font-size:18px;font-style:italic;display:flex}.vp-lightbox__fig figcaption a{font-family:var(--sans);color:var(--black);border-bottom:1px solid var(--black);font-size:13px;font-style:normal}.vp-lightbox__nav{border:1px solid var(--black);background:var(--white);border-radius:50%;width:50px;height:50px;font-size:16px;transition:background .3s,color .3s;position:absolute;top:50%;transform:translateY(-50%)}.vp-lightbox__nav:hover{background:var(--black);color:var(--white)}.vp-lightbox__nav.is-prev{left:2vw}.vp-lightbox__nav.is-next{right:2vw}.vp-method{grid-template-columns:1fr 1.6fr;align-items:start;gap:clamp(40px,7vw,120px);display:grid}.vp-method__tabs{border-top:1px solid var(--black);padding:0;list-style:none}.vp-method__tabs button{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;font-family:var(--serif);color:var(--grey);background:0 0;align-items:baseline;gap:18px;padding:18px 0;font-size:24px;font-weight:300;transition:color .4s,padding .4s;display:flex}.vp-method__tabs button span{font-family:var(--sans);letter-spacing:.14em;width:36px;font-size:11px}.vp-method__tabs button[aria-selected=true]{color:var(--black);padding-left:14px}.vp-method__tabs button:hover{color:var(--black)}.vp-method__panel{animation:.8s vp-fade;position:sticky;top:120px}.vp-method__big{font-family:var(--serif);color:var(--line);font-size:clamp(120px,16vw,240px);font-weight:200;line-height:.8}.vp-method__panel h2{font-family:var(--serif);margin:10px 0;font-size:clamp(34px,4vw,56px);font-weight:300}.vp-method__panel p:not(.vp-caption):not(.vp-method__big){max-width:520px;margin-top:16px;font-size:18px}.vp-method__progress{background:var(--line);height:1px;margin-top:40px}.vp-method__progress i{background:var(--black);height:100%;transition:width .8s;display:block}.vp-services>li{border-top:1px solid var(--line);grid-template-columns:90px 1.6fr 1fr;gap:30px;padding:44px 0;display:grid}.vp-services>li:last-child{border-bottom:1px solid var(--line)}.vp-services__n{font-family:var(--serif);color:var(--sage);font-size:26px}.vp-services h2{font-family:var(--serif);margin-bottom:10px;font-size:clamp(30px,3vw,44px);font-weight:300}.vp-services li p{color:#3e3e3a;max-width:560px}.vp-services li ul{color:var(--grey);flex-wrap:wrap;gap:8px 20px;margin-top:14px;font-size:13px;display:flex}.vp-services li li:before{content:"— "}.vp-services__price{font-family:var(--serif);align-content:start;gap:6px;font-size:22px;display:grid}.vp-quote{grid-template-columns:300px 1fr;align-items:start;gap:clamp(40px,7vw,120px);display:grid}.vp-quote__steps{border-top:1px solid var(--black);padding:0;list-style:none;position:sticky;top:120px}.vp-quote__steps li{border-bottom:1px solid var(--line);color:var(--grey);font-family:var(--serif);align-items:center;gap:14px;padding:16px 0;font-size:20px;display:flex}.vp-quote__steps span{width:28px;height:28px;font-family:var(--sans);border:1px solid;border-radius:50%;place-items:center;font-size:12px;display:grid}.vp-quote__steps li[aria-current]{color:var(--black)}.vp-quote__steps li[aria-current] span{background:var(--black);color:var(--white);border-color:var(--black)}.vp-quote__steps li.is-done span{background:var(--sage);border-color:var(--sage);color:#fff}.vp-quote__form{gap:26px;max-width:760px;display:grid}.vp-quote__form fieldset{border:0;gap:26px;min-width:0;margin:0;padding:0;animation:.6s vp-fade;display:grid}.vp-quote__form fieldset[hidden]{display:none}.vp-quote__actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:26px;padding-top:10px;display:flex}.vp-choice{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.vp-choice label{text-transform:none;letter-spacing:0;color:var(--black);position:relative}.vp-choice input{opacity:0;cursor:pointer;position:absolute;top:0;bottom:0;left:0;right:0}.vp-choice span{border:1px solid var(--line);font-family:var(--serif);padding:18px;font-size:19px;transition:border-color .3s,background .3s;display:block}.vp-choice input:checked+span{border-color:var(--black);background:var(--paper)}.vp-choice input:focus-visible+span{outline:1px solid var(--black);outline-offset:3px}.vp-quote-done{padding-top:clamp(80px,12vw,180px)}.vp-quote-done .vp-lede{margin-bottom:40px}.vp-form{gap:26px;display:grid}.vp-form__row{grid-template-columns:1fr 1fr;gap:26px;display:grid}.vp-field{gap:8px;display:grid}.vp-field label,.vp-field__label{letter-spacing:.12em;text-transform:uppercase;color:var(--grey);font-size:12px;font-weight:400}.vp-field input,.vp-field select,.vp-field textarea{border:0;border-bottom:1px solid var(--black);width:100%;font-size:18px;font-weight:300;font-family:var(--serif);background:0 0;border-radius:0;padding:10px 0}.vp-field textarea{border:1px solid var(--line);resize:vertical;padding:14px}.vp-field select{-webkit-appearance:none;appearance:none}.vp-field input:focus,.vp-field select:focus,.vp-field textarea:focus{border-color:var(--sage);outline:none}.vp-field [aria-invalid=true]{border-color:#a33a2c}.vp-field__error{color:#a33a2c;font-size:13px}.vp-form__server{color:#7d2a20;background:#f3e1dc;padding:12px 14px;font-size:14px}.vp-check{color:var(--grey);align-items:flex-start;gap:12px;font-size:13px;display:flex}.vp-check input{width:16px;height:16px;accent-color:var(--black);flex:none;margin-top:3px}.vp-form .vp-btn{justify-self:start}.vp-form--done{border:1px solid var(--line);background:var(--paper);padding:30px}.vp-form__done-title{font-family:var(--serif);font-size:30px;font-weight:300}.vp-contact{grid-template-columns:1fr 1.3fr;gap:clamp(40px,8vw,140px);display:grid}.vp-contact .vp-small{margin-top:24px}.vp-404{padding-top:clamp(100px,14vw,200px)}.vp-404 .vp-lede{margin-bottom:40px}.vp-404__links{flex-wrap:wrap;align-items:center;gap:30px;display:flex}.vp-footer{border-top:1px solid var(--line);padding:80px 5vw 30px}.vp-footer__grid{grid-template-columns:2fr 1fr 1fr;gap:40px;display:grid}.vp-footer__statement{font-family:var(--serif);font-size:clamp(32px,3.6vw,56px);font-weight:250;line-height:1.1}.vp-footer__statement em{color:var(--sage)}.vp-footer .vp-caption{margin-bottom:14px}.vp-footer li{padding:2px 0}.vp-footer a{color:var(--black)}.vp-footer a:hover{color:var(--sage)}.vp-footer__legal{color:var(--grey);margin-top:70px;font-size:12px}@media (max-width:1180px){.vp-nav{background:var(--white);opacity:0;visibility:hidden;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:30px;padding:40px 5vw;transition:opacity .6s,visibility .6s;position:fixed;top:76px;bottom:0;left:0;right:0}.vp-nav.is-open{opacity:1;visibility:visible}.vp-nav ul{flex-direction:column;gap:4px}.vp-nav ul a{font-family:var(--serif);color:var(--black);font-size:40px;font-weight:250}.vp-nav ul a.active{color:var(--sage)}.vp-nav ul a.active:before{display:none}.vp-back{border:0;padding:0}.vp-burger{display:block}.vp-header__actions{display:flex}}@media (max-width:900px){.vp-wrap{width:calc(100% - 40px)}.vp-header{padding:0 20px}.vp-pagehead{margin-left:20px;margin-right:20px}.vp-intro{grid-template-columns:1fr}.vp-intro .vp-link{grid-column:1}.vp-index__list a{grid-template-columns:40px 1fr auto}.vp-index__place,.vp-index__thumb{display:none}.vp-duo,.vp-atelier,.vp-project__head,.vp-method,.vp-quote,.vp-contact{grid-template-columns:1fr}.vp-principles,.vp-chapters{grid-template-columns:1fr;gap:40px}.vp-projects{grid-template-columns:1fr}.vp-projectcard:not(.is-large):nth-child(3n){margin-top:0}.vp-masonry{columns:2}.vp-method__panel,.vp-quote__steps{position:static}.vp-services>li{grid-template-columns:50px 1fr}.vp-services__price{grid-column:2}.vp-footer__grid{grid-template-columns:1fr 1fr}.vp-footer__statement{grid-column:1/-1}.vp-hero__content{grid-template-columns:1fr}.vp-lightbox__fig{padding:10px 0 0}.vp-lightbox__nav{top:auto;bottom:20px;transform:none}.vp-lightbox__nav.is-prev{left:calc(50% - 60px)}.vp-lightbox__nav.is-next{right:calc(50% - 60px)}.vp-lightbox{padding-bottom:90px}}@media (max-width:600px){.vp-masonry{columns:1}.vp-form__row,.vp-figures dl{grid-template-columns:1fr}.vp-project__nav{grid-template-columns:1fr 1fr}.vp-project__all{display:none!important}.vp-sheet div{grid-template-columns:110px 1fr}.vp-project__gallery{grid-template-columns:1fr}.vp-filter{gap:18px}}.vp{--mono:"IBM Plex Mono", ui-monospace, monospace;--grid:#1616160d;isolation:isolate;position:relative}.vp:before{content:"";z-index:-1;pointer-events:none;background-image:repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px calc(100% / 12));border-right:1px solid var(--grid);position:fixed;top:0;bottom:0;left:5vw;right:5vw}.vp-caption{font-family:var(--mono);letter-spacing:.02em;text-transform:none;color:var(--grey);font-size:11.5px}.vp-caption:before{content:"[ ";color:var(--sage)}.vp-caption:after{content:" ]";color:var(--sage)}.vp-caption--light:before,.vp-caption--light:after{color:#fff9}.vp-index__n,.vp-index__year,.vp-filter button sup,.vp-method__tabs button span,.vp-services__n,.vp-sheet dt,.vp-quote__steps span{font-family:var(--mono)}.vp-sheet dt{text-transform:none;letter-spacing:0;font-size:11.5px}.vp-services__n{color:var(--sage);padding-top:12px;font-size:14px}.vp [data-reveal]{transition:opacity 1.8s;transform:none}.vp-hero__marks{z-index:2;pointer-events:none;color:#ffffffd9;font-family:var(--mono);font-size:11px;position:absolute;top:28px;bottom:28px;left:5vw;right:5vw}.vp-mark{border:0 solid #ffffffbf;width:26px;height:26px;position:absolute}.vp-mark--tl{border-top-width:1px;border-left-width:1px;top:0;left:0}.vp-mark--tr{border-top-width:1px;border-right-width:1px;top:0;right:0}.vp-hero__coords{letter-spacing:.04em;position:absolute;top:6px;left:40px}.vp-hero__scale{grid-template-columns:repeat(3,60px);width:120px;display:grid;position:absolute;top:40px;right:0}.vp-hero__scale b{background:linear-gradient(90deg,#ffffffd9 50%,#0000 50%);border:1px solid #ffffffd9;grid-column:1/-1;width:120px;height:6px;margin-bottom:4px}.vp-hero__scale span:nth-of-type(2){text-align:center}.vp-hero__scale span:nth-of-type(3){text-align:right;margin-right:-60px}.vp-drawn{position:relative;opacity:1!important;border-bottom-color:#0000!important}.vp-drawn:after{content:"";background:var(--black);transform-origin:0;height:1px;transition:transform 1.6s cubic-bezier(.6,0,.2,1);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.vp-drawn[data-visible]:after{transform:scaleX(1)}.vp-index__list li,.vp-projectcard a{position:relative}.vp-dim{font-family:var(--mono);color:var(--grey);align-items:center;gap:10px;margin-top:14px;font-size:11px;display:flex}.vp-dim:before,.vp-dim:after{content:"";border-top:1px solid var(--line);border-left:1px solid var(--grey);flex:1;height:7px}.vp-dim:after{border-left:0;border-right:1px solid var(--grey)}.vp-projectcard__meta{padding-top:8px}.vp-projectcard__img{position:relative}.vp-projectcard__img:after{content:"";pointer-events:none;border:1px solid #fff0;transition:border-color .8s,top .8s,bottom .8s,left .8s,right .8s;position:absolute;top:10px;bottom:10px;left:10px;right:10px}.vp-projectcard a:hover .vp-projectcard__img:after{border-color:#ffffffb3;top:18px;bottom:18px;left:18px;right:18px}.vp-sheet{border:1px solid var(--black);border-bottom:0}.vp-sheet div{padding:12px 16px}.vp-chapter{border-top:1px solid var(--line);padding-top:18px}.vp-callout{background-image:repeating-linear-gradient(90deg,#ffffff0d 0 1px,#0000 1px 8.33333%)}@media (max-width:900px){.vp:before{background-image:repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px calc(100% / 4));top:0;bottom:0;left:20px;right:20px}.vp-hero__marks{top:16px;bottom:16px;left:20px;right:20px}.vp-hero__scale{display:none}}@media (prefers-reduced-motion:reduce){.vp-drawn:after{transform:scaleX(1)}}
