@font-face{font-family:"ZT Nature";src:url("/assets/fonts/ZTNature-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("/assets/fonts/Inter-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --ink:#0e0e0e;
  --paper:#f2f0eb;
  --white:#fff;
  --navy:#020215;
  --zt:"ZT Nature",ui-sans-serif,system-ui,sans-serif;
  --inter:"Inter",ui-sans-serif,system-ui,sans-serif;
  --margin:2rem;
  --gap:1rem;
  --ease:cubic-bezier(.22,1,.36,1);
  --ease-io:cubic-bezier(.76,0,.24,1);
}

*,*::before,*::after{box-sizing:border-box}
html{background:var(--ink);color:var(--paper);-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:auto}
body{margin:0;background:var(--ink);font-family:var(--inter);font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,svg,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit;color:inherit}
h1,h2,h3,p,ul,ol,figure,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
::selection{background:var(--paper);color:var(--ink)}
.theme-light ::selection{background:var(--ink);color:var(--paper)}
:focus-visible{outline:1px solid currentColor;outline-offset:4px}

.theme-dark{background:var(--ink);color:var(--paper);--fg:var(--paper);--muted:rgba(242,240,235,.55);--line:rgba(242,240,235,.16);--field:rgba(242,240,235,.28)}
.theme-light{background:var(--paper);color:var(--ink);--fg:var(--ink);--muted:rgba(14,14,14,.55);--line:rgba(14,14,14,.14);--field:rgba(14,14,14,.28)}

.wrap{width:100%;max-width:100rem;margin-inline:auto;padding-inline:var(--margin)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.is-muted{color:var(--muted)}
.nw{white-space:nowrap}

.label{font:400 .75rem/1.2 var(--inter);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.body{font:400 1.0625rem/1.5 var(--inter);color:var(--muted)}
.d-hero,.d-96,.d-96n,.d-80,.d-80c,.d-64,.d-112,.d-40,.d-150{font-family:var(--zt);font-weight:500}
.d-hero{font-size:clamp(2.75rem,6.6667vw,6rem);line-height:1.05;letter-spacing:-.03em}
.d-96{font-size:clamp(2.75rem,6.6667vw,6rem);line-height:1;letter-spacing:-.04em}
.d-96n{font-size:clamp(3.5rem,6.6667vw,6rem);line-height:1.05;letter-spacing:-.03em}
.d-80{font-size:clamp(2.5rem,5.5556vw,5rem);line-height:1;letter-spacing:-.04em}
.d-80c{font-size:clamp(2.25rem,5.5556vw,5rem);line-height:1.025;letter-spacing:-.035em}
.d-64{font-size:clamp(2.25rem,4.4444vw,4rem);line-height:1.02;letter-spacing:-.035em}
.d-112{font-size:clamp(2.75rem,7.7778vw,7rem);line-height:1.018;letter-spacing:-.03em}
.d-40{font-size:clamp(1.5rem,2.7778vw,2.5rem);line-height:1.1;letter-spacing:-.03em}
.d-150{font-size:clamp(3.25rem,10.4167vw,9.375rem);line-height:.95;letter-spacing:-.05em}
.d-48{font-family:var(--zt);font-weight:700;font-size:clamp(1.75rem,3.3333vw,3rem);line-height:1.15;letter-spacing:-.02em}
.d-36{font-family:var(--zt);font-weight:300;font-size:clamp(1.375rem,2.5vw,2.25rem);line-height:1.22;letter-spacing:-.02em}

.link{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--ease)}
.arrow{display:inline-block;transition:transform .5s var(--ease)}
@media (hover:hover){
  .link:hover{background-size:100% 1px}
  a:hover .arrow{transform:translate(.15em,-.15em)}
}
.link[aria-current="page"]{background-size:100% 1px}

.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;border:0;border-radius:999px;background:var(--paper);color:var(--ink);font:400 .875rem/1.21 var(--inter);cursor:pointer;white-space:nowrap;transition:transform .5s var(--ease),background-color .4s ease,color .4s ease,opacity .3s ease}
.btn--lg{padding:1rem 1.75rem;font-size:1rem}
.btn__label{position:relative;display:block;overflow:hidden}
.btn__label>span{display:block;transition:transform .55s var(--ease) .05s}
.btn__label::after{content:attr(data-text);position:absolute;left:0;top:100%;transition:transform .55s var(--ease) .05s}
@media (hover:hover){
  .btn:hover{transform:scale(1.02)}
  .btn:hover .btn__label>span,.btn:hover .btn__label::after{transform:translateY(-100%)}
}
.btn:active{transform:scale(.97)}
.btn[disabled]{cursor:default;opacity:.6;transform:none}

.site-header{position:fixed;inset:0 0 auto;z-index:50;--hfg:var(--paper);--hlogo:var(--white);--hbg:var(--ink);color:var(--hfg);background-color:rgba(14,14,14,0);transition:transform .7s var(--ease),color .45s ease,background-color .45s ease}
.site-header.is-light{--hfg:var(--ink);--hlogo:var(--ink);--hbg:var(--paper);background-color:rgba(242,240,235,0)}
.site-header.is-solid{background-color:var(--hbg)}
.site-header.is-hidden{transform:translateY(-100%)}
.site-header__inner{display:flex;justify-content:space-between;align-items:flex-start;padding-block:1.25rem}
.site-header__logo{display:block;color:var(--hlogo);transition:color .45s ease}
.site-header__logo svg{width:10.3125rem;height:auto;fill:currentColor}
.site-header__nav{display:flex;align-items:center;gap:2rem}
.nav-link{font:400 .875rem/1.21 var(--inter)}
.btn--header{background:var(--hfg);color:var(--hbg)}

.preloader{display:none;position:fixed;inset:0;z-index:100;align-items:center;justify-content:center;color:var(--white);pointer-events:none}
.preloader__bg{position:absolute;inset:0;background:var(--ink)}
.is-preloading body{overflow:hidden}
.is-preloading .preloader{display:flex}
.preloader__logo{position:relative;width:min(25.75rem,62vw);height:auto;fill:currentColor;overflow:visible;transform-origin:50% 50%}
.is-preloading .site-header__logo{visibility:hidden}
.curtain{position:fixed;inset:0;z-index:95;background:var(--ink);transform:translateY(100%);pointer-events:none}
.is-curtained .curtain{transform:none}
.no-anim .preloader{display:none}
.no-anim .curtain{transform:translateY(100%)}
.no-anim .site-header__logo{visibility:visible}

.anim:not(.no-anim) [data-reveal]{opacity:0}
.anim:not(.no-anim) [data-split]{visibility:hidden}
.anim:not(.no-anim) [data-media]{opacity:0}

.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100svh;padding:3.1875rem var(--margin) 0;text-align:center}
.hero__title{max-width:none}
.hero__sub{margin-top:2.5625rem;max-width:30rem;font:400 .875rem/1.21 var(--inter);color:var(--muted)}

.work{padding-block:8.75rem}
.work__top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.work__all{color:var(--fg)}
.work.theme-dark{--fg:var(--white);--muted:rgba(255,255,255,.55)}
.work--flush{padding-block:0}
.work__title{margin-top:1.3125rem}
.projects{margin-top:4.0625rem;row-gap:1.4375rem;align-items:start}
.work--page{padding:7.5rem 0 8.75rem}
.work--page .projects{margin-top:0}
.project{position:relative;display:block;grid-column:span 7;color:var(--fg)}
.project--tall{grid-column:span 5}
.project__media{position:relative;overflow:hidden;aspect-ratio:796/600;background:#d9d6cf}
.theme-dark .project__media{background:#1a1a1a}
.project--tall .project__media{aspect-ratio:564/725}
.project__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.6s var(--ease)}
.project--tall .project__media::after{content:"";position:absolute;inset:auto 0 0;height:30.35%;background:linear-gradient(to bottom,rgba(14,14,14,0),rgba(14,14,14,.72));pointer-events:none}
.project__caption{margin-top:1.25rem}
.project--tall .project__caption{position:absolute;left:1.25rem;right:1.25rem;bottom:1.3125rem;margin:0;color:var(--paper);--muted:rgba(242,240,235,.55)}
.project__meta{margin-bottom:.6875rem}
.project__row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.project__name{font:700 1.25rem/1.2 var(--inter)}
.project__arrow{font:700 1.25rem/1.2 var(--inter);transition:transform .55s var(--ease) .08s}
.project__text{margin-top:.5rem;font:400 1rem/1.2 var(--inter);color:var(--muted)}
.work--page .project--tall .project__text{max-width:28.75rem}
@media (hover:hover){
  .project:hover .project__media img{transform:scale(1.02)}
  .project:hover .project__arrow{transform:translate(.2em,-.2em)}
}

.services{padding:8.75rem 0 9.25rem}
.services__text{grid-column:1/7}
.services__title{margin-top:1.5625rem;max-width:36.8125rem}
.services__lead{margin-top:1.25rem;max-width:35.25rem}
.dots{grid-column:8/13;position:relative}
.dots canvas{position:absolute;top:2.875rem;left:.25rem;width:calc(100% - .25rem);max-width:34.375rem;height:21.25rem}
.svc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:9.3125rem}
.svc__col{position:relative;display:flex;flex-direction:column;height:38.75rem;padding:2rem;overflow:hidden;isolation:isolate}
.svc__img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.svc__col::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(14,14,14,.68)}
.svc__col+.svc__col::before{content:"";position:absolute;top:0;bottom:0;left:0;width:1px;background:var(--line)}
.svc__body{margin-top:auto;min-height:10.5rem}
.svc__name{font:500 clamp(2.25rem,3.8889vw,3.5rem)/1.05 var(--zt);letter-spacing:-.04em}
.svc__desc{margin-top:1.3125rem;max-width:18.5rem;font:400 .9375rem/1.5 var(--inter);color:var(--muted)}
.also-card{display:grid;grid-template-columns:1fr auto;column-gap:2rem;align-content:start;min-height:12.5rem;margin-top:2rem;padding:2.5rem;background:rgba(242,240,235,.06)}
.also-card__label{grid-column:1/-1}
.also-card__name{margin-top:1.8125rem;font:300 clamp(1.75rem,3.3333vw,3rem)/1.05 var(--zt);letter-spacing:-.035em}
.also-card__desc{align-self:end;max-width:22.375rem;margin-bottom:.5625rem;text-align:right;font:400 1.0625rem/1.5 var(--inter);color:var(--muted)}

.process{padding:10rem 0 8.5rem}
.process__head{margin-top:1.5625rem;align-items:start}
.process__title{grid-column:1/9;max-width:57rem}
.process__lead{grid-column:9/13;margin-top:1rem;max-width:28rem;font:400 1.125rem/1.5 var(--inter);color:var(--muted)}
.gantt{position:relative;margin-top:5.5rem}
.gantt__weeks>li{display:flex;flex-direction:column;gap:.5625rem}
.gantt__weeks .label{display:block;height:.9375rem;white-space:nowrap}
.gantt__weeks i{display:block;width:1px;height:32.5rem;background:var(--line);transform-origin:top}
.gantt__steps{position:absolute;inset:4rem 0 auto;grid-auto-rows:4rem;row-gap:1.75rem}
.step{display:contents}
.bar{display:flex;align-items:flex-start;margin-right:calc(var(--gap) * -1);padding:1.125rem 1rem;background:var(--ink);color:var(--paper);font:300 1.5rem/1.1 var(--zt);letter-spacing:-.02em;white-space:nowrap;transform-origin:left center}
.step__desc{align-self:start;justify-self:start;width:20.75rem;margin:.375rem 0 0 1rem;font:400 .875rem/1.45 var(--inter);color:var(--muted)}
.step__desc .label{display:block;font-weight:700}
.step--1 .bar{grid-area:1/1/2/3}.step--1 .step__desc{grid-area:1/3/2/6}
.step--2 .bar{grid-area:2/3/3/5}.step--2 .step__desc{grid-area:2/5/3/8}
.step--3 .bar{grid-area:3/5/4/8}.step--3 .step__desc{grid-area:3/8/4/11;margin-top:.1875rem}
.step--4 .bar{grid-area:4/8/5/9}.step--4 .step__desc{grid-area:4/9/5/12;width:auto;margin-top:.8125rem}
.step--5 .bar{grid-area:5/9/6/13;margin-right:0}.step--5 .step__desc{grid-area:5/6/6/9;justify-self:end;margin-left:0;text-align:right}

.founder{position:relative;min-height:38.75rem}
.founder__inner{max-width:100rem;margin-inline:auto;padding:6rem 0 1.75rem}
.founder__media{position:absolute;top:0;bottom:0;left:0;width:calc(30rem + max(0px, (100% - 100rem) / 2));overflow:hidden}
.founder__media img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:grayscale(1)}
.founder__content{grid-column:6/13;display:grid;grid-template-columns:subgrid}
.founder__content>*{grid-column:1/-1}
.founder__title{margin-top:1.5625rem;max-width:49.75rem}
.founder__lead{margin-top:2.0625rem;max-width:35.25rem}
.facts{display:grid;grid-template-columns:subgrid;margin-top:4.4375rem}
.fact{grid-column:span 3;padding:.9375rem 0;border-top:1px solid var(--line)}
.fact--wide{grid-column:span 4}
.fact--full{grid-column:1/-1}
.fact dd,.case-fact dd{margin-top:.4375rem;font:400 1rem/1.21 var(--inter);color:var(--fg)}

.manifesto{padding:8.75rem 0 13.75rem}
.manifesto__title{margin-top:1.5625rem}
.manifesto__body{grid-column:5/13;margin-top:6.0625rem}

.footer{padding:7.5rem 0 2.5rem}
.footer .label{display:block;margin-bottom:1.3125rem}
.footer__contact{grid-column:1/7}
.footer__col--sitemap{grid-column:7/9}
.footer__col--work{grid-column:9/11}
.footer__col--legal{grid-column:11/13}
.footer__big{display:table;font:300 clamp(1.5rem,3.3333vw,3rem)/1.1 var(--zt);letter-spacing:-.03em}
.footer__phone{margin-top:.25rem;color:var(--muted)}
.footer__btn{margin-top:2.25rem}
.footer__links{display:flex;flex-direction:column;gap:.625rem;font:400 1rem/1.5 var(--inter)}
.footer__links a{display:inline}
.footer__wordmark{margin-top:9.5625rem;color:var(--white)}
.footer__wordmark svg{width:100%;height:auto;fill:currentColor;overflow:visible}
.footer__bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;font:400 .875rem/1.21 var(--inter);color:var(--muted)}

.page-hero{padding:22.5rem 0 8.75rem}
.page-hero__grid{margin-top:1.3125rem;align-items:end}
.page-hero__title{grid-column:1/9}
.page-hero__sub{grid-column:9/13;max-width:28rem;margin-bottom:.375rem}
.page-hero--short{padding:12.5rem 0 7.5rem}
.page-hero--short .page-hero__title{margin-top:1.3125rem}

.contact{padding:12.5rem 0 10rem}
.contact__title{margin-top:1.3125rem}
.contact__grid{margin-top:7.5rem;align-items:start}
.contact__aside{grid-column:1/5}
.contact__intro{font:400 1.375rem/1.41 var(--inter)}
.contact__rows{margin-top:3.5rem}
.contact__row{padding:.9375rem 0 1.5rem;border-top:1px solid var(--line)}
.contact__value{display:table;margin-top:.4375rem;font:400 1.0625rem/1.5 var(--inter)}
.contact__next{margin-top:.5625rem;font:400 1.0625rem/1.5 var(--inter);color:var(--muted)}
.contact__formwrap{grid-column:6/13;position:relative}
.form{display:flex;flex-direction:column;gap:2.5rem}
.form__row{display:grid;grid-template-columns:1fr 1fr;column-gap:2rem;row-gap:2.5rem}
.field{display:flex;flex-direction:column;gap:.625rem;min-width:0}
.field__label{font:400 .9375rem/1.3334 var(--inter);color:var(--muted)}
.field__control{position:relative;display:block}
.field__control::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--fg);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.field:focus-within .field__control::after{transform:scaleX(1)}
.field.is-invalid .field__control::after{transform:scaleX(1);background:#e5866b}
.field__input{display:block;width:100%;height:2.75rem;padding:0;border:0;border-bottom:1px solid var(--field);border-radius:0;background:transparent;color:var(--fg);font:400 1.0625rem/1.5 var(--inter);outline:none;-webkit-appearance:none;appearance:none}
.field__input--area{height:7rem;min-height:7rem;padding-top:.625rem;resize:none;overflow:hidden}
.field__error{min-height:0;font:400 .8125rem/1.3 var(--inter);color:#e5866b;transition:opacity .3s ease}
.field__error:empty{display:none}
.choice{display:flex;flex-direction:column;gap:1rem}
.pills{display:flex;flex-wrap:wrap;gap:.5rem}
.pill{position:relative;cursor:pointer}
.pill input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.pill span{display:inline-flex;align-items:center;height:2.5rem;padding:0 calc(1.125rem - 1px);border:1px solid var(--field);border-radius:999px;font:400 .9375rem/1.2 var(--inter);white-space:nowrap;transition:background-color .4s var(--ease),color .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease)}
.pill input:checked+span{background:var(--fg);border-color:var(--fg);color:var(--ink)}
.pill input:focus-visible+span{outline:1px solid var(--fg);outline-offset:3px}
.pill:active span{transform:scale(.96)}
@media (hover:hover){.pill:hover span{border-color:var(--fg)}}
.form__hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form__actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem}
.form__status{font:400 .9375rem/1.4 var(--inter);color:var(--muted)}
.form__status.is-error{color:#e5866b}
.form-done{padding-top:.5rem;outline:none}
.form-done__title{font:500 clamp(1.75rem,2.7778vw,2.5rem)/1.1 var(--zt);letter-spacing:-.03em;max-width:36rem}

.faq{padding:8.75rem 0}
.faq__label{grid-column:1/5;padding-top:.25rem}
.faq__list{grid-column:5/13;border-bottom:1px solid var(--line)}
.faq__item{border-top:1px solid var(--line)}
.faq__item h2{font:inherit}
.faq__q{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;padding:1.9375rem 0 2rem;border:0;background:none;color:var(--fg);text-align:left;cursor:pointer;font:400 1.5rem/1.3334 var(--inter)}
.faq__icon{flex:none;font:300 1.75rem/1.1429 var(--inter);transition:transform .6s var(--ease)}
.faq__item.is-open .faq__icon{transform:rotate(45deg)}
@media (hover:hover){.faq__q:hover .faq__icon{transform:rotate(45deg)}}
.faq__a{height:0;overflow:hidden;transition:height .6s var(--ease)}
.faq__a p{max-width:42.5rem;padding-bottom:2rem;font:400 1.0625rem/1.4 var(--inter);color:var(--muted);opacity:0;transform:translateY(.5rem);transition:opacity .45s ease,transform .6s var(--ease)}
.faq__item.is-open .faq__a p{opacity:1;transform:none;transition-delay:.1s}

.case-hero{padding:12.5rem 0 7.5rem}
.case-hero__title{margin-top:1.3125rem}
.case-hero__grid{margin-top:6rem;align-items:start}
.case-facts{grid-column:1/7;display:grid;grid-template-columns:subgrid}
.case-fact{grid-column:span 3;padding:.9375rem 0 1.1875rem;border-top:1px solid var(--line)}
.case-hero__sub{grid-column:7/13;max-width:40rem}
.case-site{padding-bottom:7.5rem}
.case-img{position:relative;overflow:hidden;background:#1d1d1d}
.case-img img{width:100%;height:100%;object-fit:cover}
.case-img--12{aspect-ratio:1376/860}
.case-img--6{aspect-ratio:680/425}
.case-img--3{aspect-ratio:332/208}
.case-img--slide{aspect-ratio:332/415}
.case-story{padding:10rem 0}
.case-story__row{align-items:start}
.case-story__row+.case-story__row{margin-top:6rem}
.case-story__label{grid-column:1/5;padding-top:.5rem}
.case-story__text{grid-column:5/13}
.case-work{padding-bottom:10rem}
.phones{background:var(--navy)}
.phones__track{display:flex;justify-content:center;gap:4rem;padding:4.625rem 0}
.phones img{flex:none;width:20rem;height:auto;aspect-ratio:320/692;border-radius:2.25rem;object-fit:cover}
.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;margin-top:1rem}
.gallery .case-img--12{grid-column:span 12}
.gallery .case-img--6{grid-column:span 6}
.gallery .case-img--3,.gallery .case-img--slide{grid-column:span 3}
.results{padding:10rem 0}
.results__title{margin-top:1.3125rem;max-width:57rem}
.results__figs{margin-top:7.5625rem}
.fig{grid-column:span 4;padding-top:1.9375rem;border-top:1px solid var(--line)}
.fig__num{font-variant-numeric:tabular-nums}
.fig__label{margin-top:1.1875rem}
.results__ai{margin-top:3.5rem;padding-top:1.4375rem;border-top:1px solid var(--line);font:400 1.0625rem/1.5 var(--inter)}
.next{position:relative;display:block;height:45rem;overflow:hidden;color:var(--paper)}
.next img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.next::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(14,14,14,0) 35%,rgba(14,14,14,.75) 100%);pointer-events:none}
.next__inner{position:absolute;left:0;right:0;bottom:5.0625rem;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;margin-inline:auto;gap:1rem}
.next__text{display:block}
.next__label{display:block}
.next__title{display:block;margin-top:.8125rem}
.next__arrow{font:300 clamp(2.5rem,4.4444vw,4rem)/1.21 var(--inter);transition:transform .7s var(--ease)}
@media (hover:hover){
  .next:hover img{transform:scale(1.02)}
  .next:hover .next__arrow{transform:translate(.15em,-.15em)}
}

.legal{padding:7.5rem 0 10rem}
.legal__date{grid-column:1/5;padding-top:.375rem}
.legal__body{grid-column:5/13;max-width:45rem}
.legal__body h2{margin:3rem 0 1rem;font:500 1.75rem/1.15 var(--zt);letter-spacing:-.02em}
.legal__body p{font:400 1.0625rem/1.6 var(--inter);color:rgba(14,14,14,.72);text-wrap:pretty}
.legal__body p+p{margin-top:1rem}
.legal__body a{color:var(--ink)}


@media (max-width:1100px){
  .site-header__nav{gap:1.5rem}
  .svc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc__col{height:32rem}
  .svc__col:nth-child(3)::before{display:none}
  .step__desc{font-size:.8125rem}
}

@media (max-width:767px){
  :root{--margin:1.25rem}
  .grid{column-gap:.75rem}
  .br-desk{display:none}
  .site-header__inner{padding-block:1rem;align-items:center}
  .site-header__logo svg{width:7.5rem}
  .site-header__nav{gap:1.25rem}
  .hero{padding-top:2rem}
  .hero__sub{margin-top:1.75rem;max-width:18rem;font-size:.875rem}
  .work,.work--page{padding:5rem 0}
  .work--flush{padding:0}
  .projects{margin-top:2.5rem;row-gap:3rem}
  .project,.project--tall{grid-column:1/-1}
  .work--page .project--tall .project__text{max-width:none}
  .services{padding:5rem 0}
  .services__text{grid-column:1/-1}
  .dots{grid-column:1/-1;height:auto;margin-top:2.5rem}
  .dots canvas{position:relative;top:0;left:0;width:100%;height:auto}
  .svc{grid-template-columns:1fr;margin-top:4rem}
  .svc__col{height:24rem;padding:1.25rem}
  .svc__col:nth-child(3)::before{display:block}
  .svc__col+.svc__col::before{top:0;right:0;bottom:auto;width:auto;height:1px}
  .svc__body{min-height:0}
  .also-card{grid-template-columns:1fr;min-height:0;margin-top:1.25rem;padding:1.5rem}
  .also-card__name{margin-top:1rem}
  .also-card__desc{margin:.75rem 0 0;text-align:left;max-width:none}
  .process{padding:5rem 0}
  .process__title,.process__lead{grid-column:1/-1}
  .process__lead{margin-top:1.5rem;font-size:1.0625rem}
  .gantt{margin-top:3rem}
  .gantt__weeks{display:none}
  .gantt__steps{position:static;display:flex;flex-direction:column;gap:1.75rem}
  .step{display:block}
  .step .bar{margin-left:var(--start);margin-right:0;width:var(--span);min-width:max-content;font-size:1.125rem;padding:.875rem .875rem}
  .step .step__desc{width:auto;margin:.5rem 0 0;max-width:none;text-align:left;font-size:.875rem}
  .step--1{--start:0%;--span:16.67%}
  .step--2{--start:16.67%;--span:16.67%}
  .step--3{--start:33.33%;--span:25%}
  .step--4{--start:58.33%;--span:8.33%}
  .step--5{--start:66.67%;--span:33.33%}
  .step--5 .bar{margin-left:auto}
  .founder__inner{padding:0 0 4rem}
  .founder__media{position:relative;width:100%;aspect-ratio:480/560}
  .founder__inner>.wrap{padding-top:3rem}
  .founder__content{grid-column:1/-1;display:block}
  .founder__lead{margin-top:1.5rem}
  .facts{grid-template-columns:1fr 1fr;column-gap:.75rem;margin-top:2.5rem}
  .fact,.fact--wide{grid-column:auto}
  .fact--full{grid-column:1/-1}
  .manifesto{padding:5rem 0 6rem}
  .manifesto__body{grid-column:1/-1;margin-top:2.5rem}
  .footer{padding:5rem 0 2rem}
  .footer__top{row-gap:2.5rem}
  .footer__contact{grid-column:1/-1}
  .footer__col--sitemap,.footer__col--legal{grid-column:1/7}
  .footer__col--work{grid-column:7/13}
  .footer__col--legal{grid-column:1/-1;grid-row:3}
  .footer__wordmark{margin-top:4rem}
  .footer__bottom{margin-top:1.5rem;font-size:.8125rem}
  .page-hero{padding:10rem 0 4rem}
  .page-hero__title,.page-hero__sub{grid-column:1/-1}
  .page-hero__sub{margin-top:1.5rem}
  .page-hero--short{padding:9rem 0 3.5rem}
  .contact{padding:9rem 0 5rem}
  .contact__grid{margin-top:2.5rem;row-gap:3.5rem}
  .contact__aside,.contact__formwrap{grid-column:1/-1}
  .contact__intro{font-size:1.1875rem}
  .contact__rows{margin-top:2rem}
  .form__row{grid-template-columns:1fr}
  .faq{padding:5rem 0}
  .faq__label,.faq__list{grid-column:1/-1}
  .faq__list{margin-top:1.5rem}
  .faq__q{padding:1.375rem 0;font-size:1.1875rem}
  .faq__a p{padding-bottom:1.5rem}
  .case-hero{padding:9rem 0 4rem}
  .case-hero__grid{margin-top:2.5rem;row-gap:2.5rem}
  .case-facts{grid-column:1/-1;grid-template-columns:1fr 1fr;column-gap:.75rem}
  .case-fact{grid-column:auto}
  .case-hero__sub{grid-column:1/-1}
  .case-site{padding-bottom:4rem}
  .case-story{padding:5rem 0}
  .case-story__row+.case-story__row{margin-top:3rem}
  .case-story__label,.case-story__text{grid-column:1/-1}
  .case-story__text{margin-top:.75rem}
  .case-work{padding-bottom:5rem}
  .phones{margin-inline:calc(var(--margin) * -1)}
  .phones__track{justify-content:flex-start;gap:1rem;padding:2.5rem var(--margin);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none}
  .phones__track::-webkit-scrollbar{display:none}
  .phones img{width:68vw;border-radius:1.75rem;scroll-snap-align:center}
  .gallery{gap:.5rem;margin-top:.5rem}
  .gallery .case-img--6,.gallery .case-img--12{grid-column:span 12}
  .gallery .case-img--3,.gallery .case-img--slide{grid-column:span 6}
  .results{padding:5rem 0}
  .results__figs{margin-top:3rem;row-gap:2.5rem}
  .fig{grid-column:1/-1}
  .next{height:28rem}
  .next__inner{bottom:2.5rem}
  .legal{padding:3.5rem 0 5rem}
  .legal__date,.legal__body{grid-column:1/-1}
  .legal__body{margin-top:1.5rem}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
