@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--black:#000;--ink:#0b0b0b;--white:#fff;--grey:#8a8a8a;--line:#0000002e;--gutter:clamp(16px, 2.6vw, 32px);--radius:clamp(10px, 1.2vw, 16px);--header-h:46px;--space:clamp(72px, 10vw, 144px);--space-half:calc(var(--space) / 2);--space-top:calc(var(--header-h) + var(--space));--ease:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--font:"Inter", system-ui, -apple-system, sans-serif;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--white);color:var(--black);font-family:var(--font);font-optical-sizing:auto;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.35;overflow-x:clip}img,video{max-width:100%;display:block}video{backface-visibility:hidden;transform:translateZ(0)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}h1,h2,h3,p,ul,ol,figure{margin:0;padding:0}ul,ol{list-style:none}::selection{background:var(--black);color:var(--white)}.wrap{padding-inline:var(--gutter)}.label{text-transform:uppercase;letter-spacing:.02em;color:var(--grey);margin-bottom:10px;font-size:13px;font-weight:500}.display-2{letter-spacing:-.035em;font-size:clamp(30px,4.4vw,64px);font-weight:600;line-height:1.02}.display-3{letter-spacing:-.03em;margin-bottom:24px;font-size:clamp(26px,3vw,44px);font-weight:600}.link{border-bottom:1px solid;padding-bottom:1px}.badge{text-transform:uppercase;color:#000;vertical-align:middle;letter-spacing:.04em;background:#ffd84d;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:11px;font-style:normal}.grain{z-index:90;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:1.2s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}.cursor{z-index:100;pointer-events:none;background:var(--white);mix-blend-mode:difference;width:10px;height:10px;transition:width .45s var(--ease), height .45s var(--ease), margin .45s var(--ease), opacity .3s;opacity:0;border-radius:50%;place-items:center;margin:-5px 0 0 -5px;display:grid;position:fixed;top:0;left:0}.cursor.is-visible{opacity:1}.cursor.is-hover{width:44px;height:44px;margin:-22px 0 0 -22px}.cursor.is-label{mix-blend-mode:normal;background:var(--accent,#fff);width:92px;height:92px;margin:-46px 0 0 -46px}.cursor__label{color:#fff;opacity:0;text-transform:uppercase;letter-spacing:.02em;font-size:13px;font-weight:600;transition:opacity .2s}.cursor.is-label .cursor__label{opacity:1}@media (hover:none){.cursor{display:none}}.curtain{z-index:95;background:var(--black);pointer-events:none;position:fixed;inset:0;transform:translateY(100%)}html.is-loading .curtain{transform:translateY(0)}html.is-intro .curtain{transition:transform 1s var(--ease-in-out);transform:translateY(-100%)}::view-transition-old(root),::view-transition-new(root){animation-duration:.6s;animation-timing-function:var(--ease-in-out)}::view-transition-old(root){animation-name:vt-out}::view-transition-new(root){animation-name:vt-in}@keyframes vt-out{to{opacity:0;transform:translateY(-40px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(60px)}}.roll{vertical-align:top;height:1.2em;line-height:1.2;display:inline-block;overflow:hidden}.roll__in{text-shadow:0 1.2em;transition:transform .55s var(--ease);display:block}a:hover .roll__in,button:hover .roll__in{transform:translateY(-1.2em)}.header{z-index:80;height:var(--header-h);padding-inline:var(--gutter);color:var(--white);mix-blend-mode:difference;transition:background .4s, transform .6s var(--ease);justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.header.is-solid{background:var(--black);mix-blend-mode:normal}.header__logo{letter-spacing:-.04em;font-size:18px;font-style:italic;font-weight:700;display:inline-block}.header__nav{align-items:center;gap:22px;font-size:13px;font-weight:500;display:flex}.header__link{position:relative}.header__link:after{content:"";transform-origin:100%;height:1px;transition:transform .5s var(--ease);background:currentColor;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.header__link:hover:after,.header__link.is-active:after{transform-origin:0;transform:scaleX(1)}.header__toggle{font-size:13px;font-weight:500;display:none}.mobile-menu{display:none}@media (width<=760px){.header__nav{display:none}.header__toggle{display:block}.mobile-menu{z-index:-1;background:var(--black);color:var(--white);padding:var(--gutter);clip-path:inset(0 0 100%);transition:clip-path .8s var(--ease-in-out);flex-direction:column;justify-content:flex-end;gap:6px;padding-bottom:15vh;display:flex;position:fixed;inset:0}.mobile-menu a{letter-spacing:-.05em;opacity:0;transition:transform .8s var(--ease), opacity .6s;transition-delay:calc(var(--i) * 60ms + .2s);font-size:15vw;font-weight:700;line-height:.95;transform:translateY(40px)}.header.is-open{mix-blend-mode:normal}.header.is-open .mobile-menu{clip-path:inset(0)}.header.is-open .mobile-menu a{opacity:1;transform:none}}.hero{height:100svh;min-height:560px;color:var(--white);background:#111;position:relative;overflow:hidden}.hero__video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__slides{z-index:0;isolation:isolate;position:absolute;inset:0;overflow:hidden}.hero__shade,.hero__content,.hero__scroll,.hero__dots{z-index:1}.hero__slide{object-fit:cover;opacity:0;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.04)}.hero__slide.is-active{opacity:1;z-index:1}.hero__slide.is-leaving{opacity:1;z-index:0}[data-effect=fade] .hero__slide{transition:opacity 1.4s var(--ease-in-out), transform 7s linear}[data-effect=fade] .hero__slide.is-active{transform:scale(1.12)}[data-effect=fade] .hero__slide.is-leaving{opacity:0;transform:scale(1.12)}[data-effect=wipe] .hero__slide{clip-path:inset(0 0 0 100%);transition:clip-path 1.3s var(--ease-in-out), transform 2.2s var(--ease);transform:scale(1.08)}[data-effect=wipe] .hero__slide.is-active,[data-effect=wipe] .hero__slide.is-leaving{clip-path:inset(0);transform:scale(1)}[data-effect=zoom] .hero__slide{transition:opacity 1.2s var(--ease-in-out), transform 2.4s var(--ease);transform:scale(1.3)}[data-effect=zoom] .hero__slide.is-active{transform:scale(1.02)}[data-effect=zoom] .hero__slide.is-leaving{opacity:0;transform:scale(.96)}.hero__dots{z-index:3;right:var(--gutter);gap:6px;display:flex;position:absolute;bottom:clamp(16px,3vh,40px)}.hero__dots span{background:#ffffff4d;width:28px;height:2px;position:relative;overflow:hidden}.hero__dots span:after{content:"";transform-origin:0;background:#fff;position:absolute;inset:0;transform:scaleX(0)}.hero__dots span.is-active:after{animation:herodot var(--t,5s) linear forwards}@keyframes herodot{to{transform:scaleX(1)}}@media (width<=760px){.hero__dots{display:none}}@media (prefers-reduced-motion:reduce){.hero__slide{clip-path:none!important;transition:opacity .6s!important;transform:none!important}}.hero__shade{background:linear-gradient(#fffffff5 0%,#ffffff8c 24%,#00000040 55%,#000000eb 100%);position:absolute;inset:0}.hero__content{padding-bottom:clamp(16px,3vh,40px);position:absolute;inset:auto 0 0}.hero__disciplines{margin-bottom:20px;font-size:clamp(15px,1.4vw,20px);font-weight:600;line-height:1.12}.hero__lead{max-width:30ch;font-size:clamp(15px,1.4vw,20px);line-height:1.15;display:grid}.hero__lead strong{font-weight:600}.hero__lead span{opacity:.9;font-weight:400}.hero__title{letter-spacing:-.055em;row-gap:.06em;margin-top:clamp(20px,5vh,56px);font-size:clamp(56px,11.2vw,190px);font-weight:700;line-height:.86;display:grid}.hero__line{white-space:nowrap}.hero__line--right{justify-self:end}.hero__scroll{right:var(--gutter);background:#ffffff40;width:1px;height:64px;position:absolute;top:50%;overflow:hidden}.hero__scroll span{animation:scrollhint 2s var(--ease-in-out) infinite;background:#fff;position:absolute;inset:0}@keyframes scrollhint{0%{transform:translateY(-100%)}60%,to{transform:translateY(100%)}}.section{padding-block:var(--space-half)}.section--dark{padding-block:var(--space)}.section--tight{padding-top:0}.section--dark{background:var(--black);color:var(--white);--line:#fff3}.works{gap:clamp(40px, 5vw, 64px) var(--gutter);grid-template-columns:repeat(3,1fr);display:grid}.works--two{grid-template-columns:repeat(2,1fr)}@media (width<=900px){.works{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.works,.works--two{grid-template-columns:1fr}}.work-card{background:var(--white);border-radius:calc(var(--radius) + 8px);transition:transform .6s var(--ease), box-shadow .6s var(--ease), border-color .6s;border:1px solid #0000000f;flex-direction:column;gap:14px;padding:10px 10px 18px;display:flex;box-shadow:0 1px 2px #0000000a,0 4px 12px -4px #0000000f,0 16px 32px -16px #0000001a}.work-card:hover{border-color:#00000017;transform:translateY(-6px);box-shadow:0 2px 4px #0000000a,0 12px 24px -8px #0000001a,0 36px 64px -24px #00000038}.work-card__media{border-radius:var(--radius);aspect-ratio:4/3;background:#eee;position:relative;overflow:hidden}.work-card__inner{position:absolute;inset:-8% 0}.work-card__inner>*{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease)}.work-card:hover .work-card__inner>*{transform:scale(1.04)}.work-card__media:after{content:"";background:var(--accent);mix-blend-mode:color;opacity:0;transition:opacity .6s;position:absolute;inset:0}.work-card:hover .work-card__media:after{opacity:.2}.work-card__meta{justify-content:space-between;align-items:center;padding-inline:8px;display:flex}.work-card__title{letter-spacing:-.03em;font-size:clamp(17px,1.4vw,21px);font-weight:600}.work-card__arrow{width:32px;height:32px;color:var(--black);transition:background .4s, color .4s, transform .6s var(--ease);background:#f2f2f0;border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;display:grid}.work-card:hover .work-card__arrow{background:var(--black);color:var(--white);transform:rotate(45deg)}.work-card__tags{color:var(--grey);letter-spacing:0;flex-wrap:wrap;margin-top:-8px;padding-inline:8px;font-size:12px;display:flex}.work-card__tags li+li:before{content:"·";opacity:.7;padding-inline:6px}.about-teaser__grid{grid-template-columns:5fr 6fr;align-items:center;gap:clamp(24px,5vw,96px);max-width:1320px;margin-inline:auto;display:grid}.about-teaser__img{border-radius:var(--radius);aspect-ratio:4/5;overflow:hidden}.about-teaser__img img{object-fit:cover;object-position:100% 30%;width:100%;height:115%;display:block}.about-teaser__text{justify-items:start;gap:28px;display:grid}.about-teaser__text p{color:#333;max-width:56ch;font-size:clamp(16px,1.3vw,19px)}@media (width<=760px){.about-teaser__grid{grid-template-columns:1fr}}.btn{background:var(--black);width:max-content;color:var(--white);letter-spacing:0;border-radius:999px;justify-self:start;align-items:center;gap:10px;padding:14px 22px;font-size:14px;font-weight:600;transition:background .3s,color .3s;display:inline-flex}.btn--light{background:var(--white);color:var(--black)}.btn__arrow{transition:transform .5s var(--ease)}.btn:hover .btn__arrow{transform:translate(4px)rotate(-45deg)}.expertise__title{max-width:22ch;margin-bottom:clamp(32px,5vw,64px)}.bento{grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:var(--gutter);display:grid}.bento__item{border-radius:calc(var(--radius) + 8px);transition:transform .6s var(--ease), border-color .6s, background .6s;background:#121212;border:1px solid #ffffff14;flex-direction:column;grid-column:span 7;display:flex;overflow:hidden}.bento__item:nth-child(3n+1){grid-area:span 2/span 5}.bento__item:hover{background:#161616;border-color:#ffffff2e;transform:translateY(-4px)}.bento__img{aspect-ratio:16/9;border-radius:var(--radius);margin:8px 8px 0;position:relative;overflow:hidden}.bento__item:nth-child(3n+1) .bento__img{aspect-ratio:4/5;flex:1;min-height:320px}.bento__img img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease);position:absolute;inset:0}.bento__item:hover .bento__img img{transform:scale(1.05)}.bento__body{gap:10px;padding:clamp(20px,2.2vw,30px);display:grid}.bento__title{letter-spacing:-.03em;font-size:clamp(21px,1.9vw,30px);font-weight:600;line-height:1.05}.bento__body p{color:#bdbdbd;max-width:52ch;font-size:clamp(14px,1.05vw,16px);line-height:1.5}.bento__item:nth-child(3n+1) .bento__title{font-size:clamp(24px,2.4vw,36px)}@media (width>=1001px){.bento__item:not(:nth-child(3n+1)){flex-direction:row}.bento__item:not(:nth-child(3n+1)) .bento__img{aspect-ratio:auto;flex:0 0 42%;min-height:260px;margin:8px 0 8px 8px}.bento__item:not(:nth-child(3n+1)) .bento__body{align-content:center}}@media (width<=1000px){.bento__item{grid-column:span 6}.bento__item:nth-child(3n+1){flex-direction:row;grid-area:auto/span 12}.bento__item:nth-child(3n+1) .bento__img{aspect-ratio:4/5;flex:0 0 46%;min-height:0;margin:8px 0 8px 8px}.bento__item:nth-child(3n+1) .bento__body{align-content:center}.bento__img{aspect-ratio:4/3}}@media (width<=620px){.bento__item,.bento__item:nth-child(3n+1){flex-direction:column;grid-column:span 12}.bento__item:nth-child(3n+1) .bento__img{flex:none;width:auto;margin:8px 8px 0}}.stats{gap:clamp(40px, 6vw, 80px) var(--gutter);grid-template-columns:repeat(2,1fr);display:grid}.stat__value{letter-spacing:-.06em;font-variant-numeric:tabular-nums;font-size:clamp(64px,9vw,140px);font-weight:600;line-height:.9}.stat__label{letter-spacing:-.02em;margin:18px 0 8px;font-size:clamp(18px,1.6vw,24px);font-weight:600}.stat p{color:#555;max-width:40ch}@media (width<=560px){.stats{grid-template-columns:1fr}}.post-list{border-top:1px solid var(--line);margin-bottom:40px}.post-row{gap:var(--gutter);border-bottom:1px solid var(--line);grid-template-columns:1fr 4fr auto;align-items:baseline;padding:22px 0;display:grid;position:relative}.post-row__date{color:var(--grey);font-size:13px}.post-row__title{letter-spacing:-.03em;transition:transform .6s var(--ease);font-size:clamp(20px,2.4vw,34px);font-weight:600}.post-row:hover .post-row__title{transform:translate(16px)}.post-row__arrow{transition:transform .5s var(--ease)}.post-row:hover .post-row__arrow{transform:rotate(-45deg)}.post-row__preview{aspect-ratio:4/3;object-fit:cover;pointer-events:none;opacity:0;width:220px;transition:opacity .4s, transform .6s var(--ease);z-index:2;border-radius:10px;position:absolute;top:50%;right:10%;transform:translateY(-50%)scale(.9)rotate(-3deg)}.post-row:hover .post-row__preview{opacity:1;transform:translateY(-50%)scale(1)rotate(0)}.cta{height:clamp(480px,90vh,900px);color:var(--white);align-items:end;display:grid;position:relative;overflow:hidden}.cta__video{object-fit:cover;width:100%;height:120%;position:absolute;inset:-10% 0}.cta__media{background:#000;position:absolute;inset:-10% 0}.cta__media .cta__video{height:100%;inset:0}.cta__video--fill{display:none}@media (aspect-ratio>=1){.cta__media.is-portrait .cta__video--fill{filter:blur(48px)brightness(.6)saturate(1.2);display:block;transform:scale(1.25)}.cta__media.is-portrait .cta__video--main{object-fit:contain}}.cta:before{content:"";z-index:1;background:linear-gradient(#0000 30%,#0009);position:absolute;inset:0}.cta__content{z-index:2;gap:28px;padding-bottom:clamp(32px,6vw,80px);display:grid;position:relative}.cta__title{letter-spacing:-.055em;font-size:clamp(40px,7.6vw,130px);font-weight:700;line-height:.88;display:grid}.marquee{background:var(--black);color:var(--white);padding-block:18px;overflow:hidden}.marquee__track{width:max-content;animation:28s linear infinite marquee;display:flex}.marquee__group{align-items:center;gap:var(--mq-gap);padding-right:var(--mq-gap);letter-spacing:-.03em;white-space:nowrap;--mq-gap:.55em;font-size:clamp(20px,2.6vw,38px);font-weight:600;display:flex}.marquee__group b{font-weight:inherit}.marquee__group i{font-size:.45em;font-style:normal;line-height:1}.marquee:hover .marquee__track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}.footer{padding:clamp(48px, 6vw, 88px) var(--gutter) 22px;flex-direction:column;gap:clamp(36px,5vw,64px);display:flex}.footer__top{align-items:end;gap:var(--gutter);grid-template-columns:1fr auto;display:grid}.footer__mark{letter-spacing:-.06em;font-size:clamp(56px,8vw,128px);font-style:italic;font-weight:800;line-height:.8}.footer__links{flex-wrap:wrap;justify-content:flex-end;gap:6px 28px;font-size:15px;font-weight:500;display:flex}.footer__bottom{border-top:1px solid #0000001a;grid-template-columns:1fr auto auto auto;gap:24px;padding-top:18px;font-size:13px;font-weight:500;display:grid}@media (width<=620px){.footer__top{grid-template-columns:1fr;align-items:start}.footer__links{justify-content:flex-start;gap:6px 22px}.footer__bottom{grid-template-columns:1fr 1fr;gap:10px 24px}}.footer__bottom a:hover{text-decoration:underline}.work__head{padding-top:var(--space-top);padding-bottom:clamp(24px,3vw,40px)}.work__title{letter-spacing:-.055em;font-size:clamp(48px,9vw,160px);font-weight:700;line-height:.88}.work__cover-inner{border-radius:var(--radius);overflow:hidden}.work__cover-inner>*{width:100%;height:auto}.work__info{gap:var(--gutter);grid-template-columns:1fr 1fr;display:grid}.work__info .label:not(:first-child){margin-top:28px}.work__services{text-transform:uppercase;font-size:clamp(15px,1.3vw,19px);font-weight:600;line-height:1.25}.work__year{font-size:clamp(15px,1.3vw,19px);font-weight:600}.work__lead{letter-spacing:-.025em;max-width:34ch;font-size:clamp(19px,2vw,30px);font-weight:500;line-height:1.15}.work__text{gap:var(--gutter);grid-template-columns:1fr 1fr;display:grid}.work__info,.work>.gallery,.work__text,.work>.next-project{margin-top:var(--space)}.work>.gallery:empty{display:none}.work__text .label,.work__text .work__lead{grid-column:2}@media (width<=760px){.work__info,.work__text{grid-template-columns:1fr}.work__text .label,.work__text .work__lead{grid-column:1}}.gallery{gap:var(--gutter);grid-template-columns:1fr 1fr;align-items:start;display:grid}.gallery__item{border-radius:var(--radius);overflow:hidden}.gallery__item--full{grid-column:1/-1}.gallery__item img{width:100%;height:auto}@media (width<=560px){.gallery{grid-template-columns:1fr}}.next-project{padding:var(--space) var(--gutter);background:var(--black);color:var(--white);gap:8px;display:grid;position:relative;overflow:hidden}.next-project__title{letter-spacing:-.055em;transition:transform .8s var(--ease);font-size:clamp(48px,10vw,170px);font-weight:700;line-height:.9}.next-project__title--sm{font-size:clamp(32px,6vw,90px)}.next-project:hover .next-project__title{transform:translate(2vw)}.next-project:before{content:"";background:var(--accent,#333);transform-origin:bottom;transition:transform .8s var(--ease-in-out);position:absolute;inset:0;transform:scaleY(0)}.next-project:hover:before{transform:scaleY(1)}.next-project>*{position:relative}.next-project .label{color:#fff9}.post .next-project{margin-inline:calc(var(--gutter) * -1)}.about-hero{min-height:100svh;color:var(--white);background:#1c2a30;align-items:center;display:grid;position:relative;overflow:hidden}.about-hero__img{object-fit:cover;object-position:center top;width:70%;height:100%;position:absolute;bottom:0;right:0}.about-hero__shade{background:linear-gradient(90deg,#1c2a30 25%,#1c2a3066 55%,#1c2a3000 80%);position:absolute;inset:0}.about-hero__content{padding-top:var(--header-h);position:relative}.about-hero__content h1{max-width:24ch;padding-left:4vw;font-size:clamp(28px,3.4vw,54px)}@media (width<=1024px){.about-hero{align-items:end}.about-hero__img{object-position:80% top;width:100%;height:70%;top:0}.about-hero__shade{background:linear-gradient(#1c2a3000 20%,#1c2a30 62%)}.about-hero__content{padding-block:40px}.about-hero__content h1{padding-left:0}}.about-split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,80px);display:grid}.about-split__img{border-radius:var(--radius);aspect-ratio:4/5;overflow:hidden}.about-split__img img{object-fit:cover;width:100%;height:115%}.about-split .label{margin-top:40px}.about-split p:last-child{color:#444;max-width:50ch}@media (width<=760px){.about-split{grid-template-columns:1fr}}.strip{padding-block:var(--space-half);overflow:hidden}.strip__track{width:max-content;animation:45s linear infinite marquee;display:flex}.strip:hover .strip__track{animation-play-state:paused}.strip__track img{border-radius:var(--radius);width:auto;height:clamp(260px,42vw,560px);margin-right:var(--gutter);user-select:none}.logos{overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.logos__track{align-items:center;gap:clamp(40px,6vw,96px);width:max-content;animation:40s linear infinite marquee;display:flex}.logos__track img{height:calc(clamp(28px, 3.4vw, 48px) * var(--s,1));filter:grayscale();opacity:.75;width:auto;max-width:none;transition:opacity .3s,filter .3s}.logos__track img:hover{opacity:1;filter:none}.contact{padding-top:var(--space-top);padding-bottom:var(--space)}.contact__title,.page-head__title{letter-spacing:-.06em;margin-bottom:clamp(40px,6vw,80px);font-size:clamp(56px,12vw,200px);font-weight:700;line-height:.85}.contact__grid{grid-template-columns:1fr 2fr;gap:clamp(32px,6vw,96px);display:grid}.contact__aside{align-content:start;gap:20px;display:grid}.contact__aside p{color:#444;max-width:32ch;font-size:17px}.contact__email{letter-spacing:-.02em;word-break:break-all;font-size:clamp(18px,1.8vw,26px);font-weight:600}.form{gap:28px var(--gutter);grid-template-columns:1fr 1fr;display:grid}.field{display:block;position:relative}.field--full{grid-column:1/-1}.field input,.field textarea{width:100%;font:inherit;border:0;border-bottom:1px solid var(--line);resize:vertical;background:0 0;border-radius:0;outline:none;padding:26px 0 10px;font-size:20px}.field span{color:var(--grey);transition:transform .4s var(--ease), color .3s;transform-origin:0;pointer-events:none;font-size:13px;font-weight:500;position:absolute;top:26px;left:0}.field input:focus+span,.field input:not(:placeholder-shown)+span,.field textarea:focus+span,.field textarea:not(:placeholder-shown)+span{color:var(--black);transform:translateY(-24px)scale(.9)}.field:after{content:"";background:var(--black);transform-origin:0;height:2px;transition:transform .6s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.field:focus-within:after{transform:scaleX(1)}.form__status{grid-column:1/-1;min-height:1.4em;font-size:14px}@media (width<=760px){.contact__grid,.form{grid-template-columns:1fr}}.page-head{padding-top:var(--space-top);padding-bottom:var(--space-half)}.page-head__title{margin-bottom:20px}.page-head p{color:#555;max-width:46ch;font-size:18px}.empty{color:var(--grey);font-size:18px}.post-grid{gap:clamp(40px, 5vw, 64px) var(--gutter);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.post-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.post-grid{grid-template-columns:1fr}}.post-card{gap:12px;display:grid}.post-card__media{border-radius:var(--radius);aspect-ratio:4/3;background:#f0f0f0;place-items:center;display:grid;overflow:hidden}.post-card__media img{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease)}.post-card:hover .post-card__media img{transform:scale(1.05)}.post-card__ph{color:#ddd;letter-spacing:-.06em;font-size:120px;font-style:italic;font-weight:800}.post-card__meta{color:var(--grey);align-items:center;gap:12px;font-size:13px;display:flex}.post-card__title{letter-spacing:-.03em;font-size:clamp(20px,1.9vw,28px);font-weight:600;line-height:1.1}.post-card__excerpt{color:#555}.progress{top:var(--header-h);background:var(--black);transform-origin:0;z-index:79;height:2px;position:fixed;left:0;right:0;transform:scaleX(0)}.post{max-width:860px;padding-top:var(--space-top);padding-bottom:var(--space);margin-inline:auto}.post__head{justify-items:start;gap:18px;margin-bottom:40px;display:grid}.post__meta{color:var(--grey);font-size:13px}.post__title{letter-spacing:-.05em;font-size:clamp(38px,6vw,84px);font-weight:700;line-height:.95}.post__excerpt{color:#444;font-size:clamp(18px,1.7vw,23px)}.post__cover{border-radius:var(--radius);margin-bottom:48px;overflow:hidden}.post__cover img{width:100%}.prose{letter-spacing:-.005em;font-size:19px;line-height:1.6}.prose>*+*{margin-top:1.1em}.prose h2{letter-spacing:-.03em;margin-top:1.8em;font-size:1.6em;line-height:1.15}.prose h3{margin-top:1.5em;font-size:1.25em}.prose a{text-underline-offset:3px;text-decoration:underline}.prose ul,.prose ol{padding-left:1.2em}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose blockquote{border-left:3px solid var(--black);margin:1.5em 0;padding-left:1em;font-size:1.15em;font-weight:500}.prose img{border-radius:var(--radius);margin-block:1.5em}.prose code{background:#f2f2f2;border-radius:4px;padding:2px 6px;font-size:.88em}.prose pre{color:#eee;background:#111;border-radius:12px;padding:20px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.5em}.js [data-reveal]{opacity:0;transition:opacity 1s var(--ease), transform 1.2s var(--ease);transition-delay:var(--d,0s);transform:translateY(36px)}.js [data-reveal].is-in{opacity:1;transform:none}.js [data-clip-reveal]{clip-path:inset(18% 6% 0 6% round var(--radius));transition:clip-path 1.4s var(--ease)}.js [data-clip-reveal]>*{transform-origin:50%}.js [data-clip-reveal].is-in{clip-path:inset(0 0 0 0 round var(--radius))}.js [data-stagger]>*,.js [data-stagger] strong,.js [data-stagger] span{opacity:0;transition:opacity .9s var(--ease), transform 1s var(--ease);transform:translateY(18px)}.js [data-stagger].is-in>*,.js [data-stagger].is-in strong,.js [data-stagger].is-in span{opacity:1;transform:none}.split-line{vertical-align:top;margin:-.12em -.02em -.1em;padding:.12em .02em .1em;display:inline-block;overflow:hidden}.split-char,.split-word{will-change:transform;display:inline-block}.js [data-split-chars] .split-char{transition:transform 1.1s var(--ease);transition-delay:calc(var(--ci) * 25ms);transform:translateY(105%)}.js [data-split-chars].is-in .split-char{transform:none}.js [data-split-words] .split-word{opacity:.12;transition:opacity .6s;transition-delay:calc(var(--wi) * 18ms)}.js [data-split-words].is-in .split-word{opacity:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important}.grain{display:none}}.form__honey{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.post--plain{padding-top:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.logo{white-space:nowrap}.logo__rest{white-space:pre;vertical-align:bottom;max-width:var(--w,none);display:inline-block;overflow:hidden}.js .logo.is-ready .logo__rest{animation:logo-morph 9s var(--ease-in-out) infinite}.logo:hover .logo__rest{animation-play-state:paused}@keyframes logo-morph{0%,38%{max-width:var(--w);opacity:1}48%,86%{opacity:0;max-width:0}96%,to{max-width:var(--w);opacity:1}}@media (prefers-reduced-motion:reduce){.js .logo.is-ready .logo__rest{animation:none}}[data-focus-outlines=on] :focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid}[data-motion=reduced] *,[data-motion=reduced] :before,[data-motion=reduced] :after{transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important}.lang-switch{letter-spacing:.04em;align-items:center;margin-left:10px;font-size:11px;font-weight:500;display:inline-flex}.lang-switch a{opacity:.45;transition:opacity .3s}.lang-switch a+a:before{content:"/";opacity:.6;margin-inline:5px;display:inline-block}.lang-switch a:hover,.lang-switch a.is-current{opacity:1}.lang-switch--mobile{letter-spacing:0;opacity:0;transition:transform .8s var(--ease), opacity .6s;transition-delay:calc(var(--i) * 60ms + .2s);border:0;gap:16px;margin:24px 0 0;padding:0;font-size:16px;font-weight:500;display:flex;transform:translateY(40px)}.lang-switch--mobile a{opacity:.5;border-radius:0;padding:0;font-size:16px!important;transform:none!important}.lang-switch--mobile a.is-current{color:var(--white);opacity:1;text-underline-offset:4px;background:0 0;text-decoration:underline}.header.is-open .lang-switch--mobile{opacity:1;transform:none}.header .lang-switch--mobile a:not(.is-current){opacity:.5!important}:lang(es) .hero__title,:lang(es) .cta__title,:lang(es) .work__title,:lang(es) .contact__title,:lang(es) .page-head__title{line-height:.95}.slider__bar{justify-content:flex-end;align-items:center;gap:16px;margin-bottom:16px;display:flex}[data-slider]:not(.is-scrollable) .slider__bar{display:none}.slider__nav{gap:8px;display:flex}.slider__btn{border:1px solid var(--line);background:var(--white);border-radius:50%;place-items:center;width:44px;height:44px;font-size:16px;transition:background .3s,color .3s,opacity .3s,border-color .3s;display:grid}.slider__btn:hover:not(:disabled){background:var(--black);color:var(--white);border-color:var(--black)}.slider__btn:disabled{opacity:.3;cursor:default}.slider__track{grid-auto-flow:column;grid-auto-columns:calc((100% - 2 * var(--gutter)) / 3);column-gap:var(--gutter);scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);padding:8px var(--gutter) 40px;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain;display:grid;overflow-x:auto}.slider__track::-webkit-scrollbar{display:none}.slider__track>*{scroll-snap-align:start}.slider__track.is-dragging{cursor:grabbing;scroll-snap-type:none}.slider__track.is-dragging *{pointer-events:none}@media (width<=900px){.slider__track{grid-auto-columns:calc((100% - var(--gutter)) / 2)}}@media (width<=560px){.slider__track{grid-auto-columns:82%}}.filters{flex-wrap:wrap;gap:8px;margin-bottom:clamp(28px,4vw,48px);display:flex}.filter{border:1px solid var(--line);background:var(--white);border-radius:999px;padding:9px 16px;font-size:13px;font-weight:500;transition:background .3s,color .3s,border-color .3s}.filter span{color:var(--grey);font-variant-numeric:tabular-nums;margin-left:4px;transition:color .3s}.filter:hover{border-color:var(--black)}.filter.is-active{background:var(--black);color:var(--white);border-color:var(--black)}.filter.is-active span{color:#fff9}.filters__empty{color:var(--grey);padding-block:40px}.works--grid .work-card[hidden]{display:none}.work-card.is-filtered-in{animation:card-in .6s var(--ease) both}@keyframes card-in{0%{opacity:0;transform:translateY(16px)}}.lang-switch--mobile a+a:before{content:none}.slider__more{justify-content:center;padding-top:8px;display:flex}.text-link{color:var(--grey);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding-bottom:4px;font-size:14px;font-weight:500;transition:color .3s,border-color .3s;display:inline-flex}.text-link:hover{color:var(--black);border-color:var(--black)}.text-link__arrow{transition:transform .5s var(--ease)}.text-link:hover .text-link__arrow{transform:translate(4px)}@media (width>=1001px){.stats{grid-template-columns:repeat(4,1fr)}.stat__value{font-size:clamp(56px,6.4vw,112px)}}.theme-toggle{width:26px;height:14px;color:inherit;cursor:pointer;opacity:.7;background:0 0;border:1px solid;border-radius:999px;margin-left:14px;padding:0;transition:opacity .3s;position:relative}.theme-toggle:hover{opacity:1}.theme-toggle__dot{width:8px;height:8px;transition:transform .5s var(--ease);background:currentColor;border-radius:50%;position:absolute;top:2px;left:2px}[data-theme=dark] .theme-toggle__dot{transform:translate(12px)}.theme-toggle--mobile{display:none}@media (width<=760px){.header__nav .theme-toggle{display:none}.theme-toggle--mobile{opacity:0;width:auto;height:auto;transition:transform .8s var(--ease), opacity .6s;transition-delay:calc(var(--i) * 60ms + .2s);border:0;align-items:center;gap:12px;margin:20px 0 0;font-size:16px;font-weight:500;display:inline-flex;transform:translateY(40px)}.theme-toggle--mobile .theme-toggle__dot{background:0 0;border:1px solid;width:26px;height:14px;position:relative;top:0;left:0}.theme-toggle--mobile .theme-toggle__dot:after{content:"";width:8px;height:8px;transition:transform .5s var(--ease);background:currentColor;border-radius:50%;position:absolute;top:2px;left:2px}[data-theme=dark] .theme-toggle--mobile .theme-toggle__dot{transform:none}[data-theme=dark] .theme-toggle--mobile .theme-toggle__dot:after{transform:translate(12px)}.header.is-open .theme-toggle--mobile{opacity:1;transform:none}}html[data-theme=dark]{--line:#ffffff29;--grey:#8f8f8f;color-scheme:dark}html[data-theme=dark] body{color:#f2f2f2;background:#0a0a0a}html{transition:none}html[data-theme=dark] ::selection{color:#0a0a0a;background:#f2f2f2}[data-theme=dark] .hero{background:#0a0a0a}[data-theme=dark] .hero__shade{background:linear-gradient(#0a0a0ae6 0%,#0a0a0a59 26%,#00000040 55%,#0a0a0af2 100%)}[data-theme=dark] .section--dark{background:#131313}[data-theme=dark] .bento__item{background:#1a1a1a}[data-theme=dark] .bento__item:hover{background:#1f1f1f}[data-theme=dark] .work-card{background:#151515;border-color:#ffffff12;box-shadow:0 1px 2px #00000080,0 16px 32px -16px #000c}[data-theme=dark] .work-card:hover{border-color:#ffffff24;box-shadow:0 2px 4px #00000080,0 36px 64px -24px #000000e6}[data-theme=dark] .work-card__media{background:#222}[data-theme=dark] .work-card__arrow{color:#f2f2f2;background:#262626}[data-theme=dark] .work-card:hover .work-card__arrow{color:#0a0a0a;background:#f2f2f2}[data-theme=dark] :is(.about-teaser__text p,.stat p,.about-split p:last-child,.contact__aside p,.page-head p,.post-card__excerpt,.post__excerpt){color:#a8a8a8}[data-theme=dark] .btn,[data-theme=dark] .marquee{color:#0a0a0a;background:#f2f2f2}[data-theme=dark] .next-project{background:#131313}[data-theme=dark] .logos__track img{filter:grayscale()invert();opacity:.7}[data-theme=dark] .logos__track img:hover{filter:grayscale()invert();opacity:1}[data-theme=dark] .footer__bottom{border-top-color:#ffffff1a}[data-theme=dark] :is(.field input:focus+span,.field input:not(:placeholder-shown)+span,.field textarea:focus+span,.field textarea:not(:placeholder-shown)+span){color:#f2f2f2}[data-theme=dark] .field:after,[data-theme=dark] .progress{background:#f2f2f2}[data-theme=dark] .prose blockquote{border-left-color:#f2f2f2}[data-theme=dark] :is(.slider__btn,.filter){color:#f2f2f2;background:#151515}[data-theme=dark] :is(.slider__btn:hover:not(:disabled),.filter.is-active){color:#0a0a0a;background:#f2f2f2;border-color:#f2f2f2}[data-theme=dark] .filter:hover{border-color:#f2f2f2}[data-theme=dark] .text-link:hover{color:#f2f2f2;border-color:#f2f2f2}
