:root{--ease-out-elastic:linear(0, .5737 7.6%, .8382 11.87%, .9463 14.19%, 1.0292 16.54%, 1.0886 18.97%, 1.1258 21.53%, 1.137 22.97%, 1.1424 24.48%, 1.1423 26.1%, 1.1366 27.86%, 1.1165 31.01%, 1.0507 38.62%, 1.0219 42.57%, .9995 46.99%, .9872 51.63%, .9842 58.77%, 1.0011 81.26%, 1);--font-family-headline:"Barlow Condensed", sans-serif;--font-family-body:"Inter", sans-serif;--font-family-display:"Newsreader", "Times New Roman", serif;--color-home-accent:#6b4f8a;--padding:1rem;--max-width:860px;--shadow:0px 9px 21px #0000001a, 0px 38px 38px #00000017, 0px 85px 51px #0000000d;--color-white:#fff;--color-black:#2c2c2c;--color-grey:#cbcbcb;--color-primary:#f6f1e8;--color-onPrimary:#363636;--color-secondary:#d4cfc5;--color-onSecondary:#2c2c2c;--color-accent:#2f6bff;--font-h1:6.25rem / .82 var(--font-family-headline);--font-h2:4rem / .82 var(--font-family-headline);--font-h4:.875rem / 1 var(--font-family-headline);--font-h6:500 .5625rem / 1 var(--font-family-body);--font-body:500 1rem / 1.3 var(--font-family-body)}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}body{background:var(--color-primary);min-height:100dvh;color:var(--color-onPrimary);font-family:var(--font-family-headline);margin:0;transition:background-color .45s,color .45s}a{color:inherit;text-decoration:none}img,svg,video{max-width:100%;display:block}h1,h2,h3,h4,p{text-wrap:balance;margin:0}button,input{font:inherit;color:inherit}.container,main{z-index:1;background:var(--color-primary);transition:background-color .45s;position:relative}.button{background:var(--color-secondary);width:fit-content;color:var(--color-onPrimary);font:500 1rem / 1 var(--font-family-headline);text-transform:uppercase;cursor:pointer;transition:.8s scale var(--ease-out-elastic), .8s box-shadow var(--ease-out-elastic), background-color .45s ease, color .45s ease;border:none;border-radius:50rem;justify-content:center;align-items:center;padding:1rem 2rem;display:inline-flex}@media (any-hover:hover){.button:hover{box-shadow:var(--shadow);scale:1.05}}.button:active{scale:.95!important}.header{z-index:30;padding:var(--padding);padding-top:max(var(--padding), env(safe-area-inset-top));pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:start;gap:1rem;display:grid;position:fixed;inset:0 0 auto}.header:before{content:"";background:linear-gradient(to bottom, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 92%, transparent) 42%, color-mix(in srgb, var(--color-primary) 55%, transparent) 72%, transparent 100%);pointer-events:none;z-index:0;height:clamp(5.5rem,14vh,8rem);position:absolute;top:0;left:0;right:0}.header__cats,.header__nav,.header__socials{z-index:1;position:relative}.header__cats{pointer-events:auto;flex-wrap:wrap;justify-self:start;align-items:center;gap:.35rem .75rem;max-width:min(40vw,36rem);padding-top:.2rem;display:flex}.header__cat{font:500 .95rem / 1 var(--font-family-headline);letter-spacing:.04em;text-transform:uppercase;color:var(--color-onPrimary);opacity:.45;padding:.35rem .15rem;transition:opacity .25s,color .25s}.header__cat:hover,.header__cat.is-active{opacity:1}.header__cat .header__cat-short{display:none}.header__cat .header__cat-full{display:inline}.header__nav{--look-rot:0;pointer-events:auto;width:56px;height:56px;box-shadow:none;background:0 0;border-radius:50%;flex-shrink:0;justify-self:center;padding:0;font-size:1.8rem;overflow:hidden;scale:1}.header__nav:hover{background:var(--color-secondary);box-shadow:var(--shadow);scale:1}.header__nav:active{scale:1!important}.head{border-radius:50%;place-items:center;width:100%;height:100%;display:grid}.face-icon{width:48px;height:48px;color:var(--color-onPrimary);transform:rotate(calc(var(--look-rot) * 1deg));transform-origin:50% 55%;transition:transform .2s ease-out}.header__nav:hover .face-icon{transform:rotate(calc(var(--look-rot) * 1deg - 6deg)) scale(1.06)}.header__socials{pointer-events:auto;justify-self:end;align-items:center;gap:.55rem;padding-top:.15rem;display:flex}.header__social{width:36px;height:36px;color:var(--color-onPrimary);opacity:.72;transition:.25s opacity ease, .8s scale var(--ease-out-elastic);place-items:center;display:grid}@media (any-hover:hover){.header__social:hover{opacity:1;scale:1.06}}.header__social:active{scale:.95}.header__social.is-active{opacity:1}.portfolio-page{min-height:100dvh;padding-top:clamp(4.25rem,9vh,5.75rem)}.portfolio-page__frame{background:var(--color-primary);border:0;width:100%;height:calc(100dvh - clamp(4.25rem,9vh,5.75rem));display:block}@media (width<=640px){.portfolio-page{padding-top:clamp(6.5rem,16vh,8.5rem)}.portfolio-page__frame{height:calc(100dvh - clamp(6.5rem,16vh,8.5rem))}}.hero{min-height:100dvh;padding:var(--padding);text-align:center;place-items:center;padding-top:clamp(5.5rem,12vh,8rem);display:grid;position:relative}.hero__mid{flex-direction:column;align-items:center;gap:clamp(1.5rem,4vw,3rem);width:min(100%,101rem);display:flex}.hero__name{font:700 clamp(3.5rem, 10vw, 8.4rem) / 1 var(--font-family-headline);letter-spacing:-.02em;text-transform:uppercase;color:var(--color-onPrimary);cursor:default;padding:.08em .04em .12em}.hero__name .word{animation:rise .9s var(--ease-out-elastic) both;animation-delay:calc(var(--delay,0) * 80ms);display:inline-block}.ink-fill{--fx:50%;--fy:100%;--fr:0px;--ink-fill:var(--color-onPrimary);place-items:center;display:grid;position:relative}.ink-fill__layer{white-space:nowrap;grid-area:1/1}.ink-fill__layer--ink{color:var(--ink-fill);clip-path:circle(var(--fr) at var(--fx) var(--fy));will-change:clip-path;pointer-events:none}.hero h2{z-index:0;font:500 clamp(2.4rem, 8vw, 8.4rem) / .82 var(--font-family-headline);letter-spacing:-.02em;text-transform:uppercase;color:var(--color-secondary);max-width:100%;margin-top:clamp(-1.5rem,-2vw,-.5rem);position:relative}.index-page .hero h2{font:italic 500 clamp(2.1rem, 6.5vw, 5.5rem) / 1.1 var(--font-family-display);font-optical-sizing:auto;letter-spacing:-.01em;text-transform:none;color:var(--color-secondary)}.hero__role-line{display:block}.hero__images{--card-size:clamp(7.5rem, 14.5vw, 12.5rem);z-index:2;width:min(100%,56rem);height:calc(var(--card-size) + 3rem);justify-content:center;align-items:center;margin-inline:auto;padding-inline:.5rem;display:flex;position:relative}.hero__images.is-cursoring,.hero__images.is-cursoring *{cursor:none}.hero__image{--offsetX:0;--offsetY:0;--velocity:0;--base-rotate:0deg;--translateY:0%;--z:1;z-index:var(--z);flex:0 0 var(--card-size);width:var(--card-size);height:var(--card-size);aspect-ratio:1;margin-right:calc(var(--card-size) * -.14);animation:card-in .95s var(--ease-out-elastic) both;animation-delay:calc(.15s + var(--delay,0) * 70ms);color:inherit;border-radius:1.15rem;display:grid;position:relative}.hero__image:last-child{margin-right:0}.hero__image>*{border-radius:inherit;width:100%;height:100%;translate:calc(var(--offsetX) * 1px) calc(var(--offsetY) * 1px + var(--translateY));rotate:calc(var(--base-rotate) - var(--velocity) * .25deg);will-change:translate, rotate;grid-area:1/1}.hero__image .shadow{box-shadow:var(--shadow);pointer-events:none}.hero__image img{object-fit:cover;object-position:center;border-radius:inherit;background:var(--color-secondary);-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block;overflow:hidden}.figma-cursor{z-index:50;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.figma-cursor__arrow{filter:drop-shadow(0 1px 2px #00000040);display:block}.figma-cursor__bubble{background:var(--color-accent);color:#fff;font:500 .8rem / 1.2 var(--font-family-body);letter-spacing:.01em;white-space:nowrap;border-radius:.45rem;padding:.35rem .65rem;animation:.22s ease-out both figma-bubble-in;position:absolute;top:14px;left:12px;box-shadow:0 6px 18px #0000002e}@keyframes figma-bubble-in{0%{opacity:0;transform:translate(-4px,-4px)scale(.92)}to{opacity:1;transform:none}}@media (width<=900px){.hero__images{--card-size:clamp(5.75rem, 18vw, 9rem)}}@media (width<=640px){.hero__images{--card-size:clamp(4.5rem, 17vw, 6.5rem);height:calc(var(--card-size) + 2rem)}.hero__image{margin-right:calc(var(--card-size) * -.12);border-radius:.9rem}}@media (pointer:coarse){.figma-cursor{display:none}.hero__images.is-cursoring,.hero__images.is-cursoring *{cursor:auto}}@keyframes rise{0%{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:translateY(0)}}@keyframes card-in{0%{opacity:0;transform:translateY(40px)scale(.9)}to{opacity:1;transform:none}}.index-page__project{flex-direction:column;align-items:center;gap:7rem;padding-top:4rem;display:flex;overflow:visible}.text-block{padding:0 var(--padding);text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.text-block h4{font:700 clamp(2.5rem, 6vw, 4rem) / .82 var(--font-family-headline);letter-spacing:-.02em;text-transform:uppercase;color:var(--color-onPrimary)}.text-block p{font:var(--font-body);color:var(--color-onPrimary)}.index-page .text-block{gap:.75rem}.index-page .text-block h4{font:500 clamp(2.75rem, 6.5vw, 4.5rem) / 1.1 var(--font-family-display);font-optical-sizing:auto;letter-spacing:-.015em;text-transform:none;color:var(--color-black)}.index-page .text-block p{font:400 1.05rem / 1.5 var(--font-family-body);color:color-mix(in srgb, var(--color-onPrimary) 72%, transparent);max-width:28rem}.index-page .text-block:before{content:attr(data-eyebrow);font:500 .7rem / 1 var(--font-family-body);letter-spacing:.14em;text-transform:uppercase;color:var(--color-home-accent);display:block}.index-page .text-block:not([data-eyebrow]):before{display:none}.carousel{--card-w:clamp(16rem, 28vw, 21rem);--card-h:calc(var(--card-w) * 4 / 3);--offset:0;--gap:88;--slide-width:336;--center-padding:0;--pointerXOffset:0;--pointerOffset:calc(var(--pointerXOffset) * 50);--offset-centered:(var(--offset) + var(--pointerOffset)) - var(--center-padding);width:100%;height:calc(var(--card-h) + 9.25rem);cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;outline:none;overflow:clip visible}.carousel:active{cursor:grabbing}.carousel__track{align-items:flex-end;gap:calc(var(--gap) * 1px);width:fit-content;height:100%;translate:calc((var(--offset) + var(--pointerOffset)) * -1px) 0;padding-bottom:4.5rem;display:flex}.carousel__slide{--slide-idx:0;--slide-offset:0;--slide-pos:calc((var(--slide-width) + var(--gap)) * var(--slide-idx) + var(--slide-offset));--transform:calc(var(--slide-pos) - var(--offset-centered));z-index:1;flex-direction:column;flex:0 0 var(--card-w);width:var(--card-w);height:auto;translate:calc(var(--slide-offset) * 1px);justify-content:flex-end;align-items:center;gap:.75rem;display:flex;position:relative}.carousel.curve .carousel__slide{rotate:calc(var(--transform) * .03deg);transform-origin:50% max(70vw,52rem);translate:calc(var(--slide-offset) * 1px) calc(cos(var(--transform) * .00314) * -2.5rem + 2.5rem)}.carousel__media{width:var(--card-w);height:var(--card-h);aspect-ratio:3/4;box-shadow:var(--shadow);transition:1.1s translate var(--ease-out-elastic), 1.1s scale var(--ease-out-elastic);transition-delay:calc(sin(var(--slide-idx) * 1.57) * .12s);border-radius:1.15rem;flex:none;display:block;position:relative;overflow:clip}.carousel:not(.is-inview) .carousel__media{translate:0 14%;scale:.9}.carousel__media img,.carousel__media video{object-fit:cover;object-position:center;border-radius:inherit;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.carousel__award-overlay{z-index:2;pointer-events:none;opacity:0;background:#0a0a0a94;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1.25rem 1rem;transition:opacity .35s;display:flex;position:absolute;inset:0}.carousel__media:hover .carousel__award-overlay,.carousel__media:focus-visible .carousel__award-overlay{opacity:1}.carousel__award-label{color:#fff;letter-spacing:.08em;text-transform:uppercase;text-align:center;margin:0;font-family:Barlow Condensed,sans-serif;font-size:clamp(1.35rem,3.2vw,1.75rem);font-weight:600;line-height:1}.carousel__awards{justify-content:center;align-items:center;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.carousel__award{flex:none;height:clamp(5.5rem,14vw,7.5rem);display:flex}.carousel__award img{object-fit:contain;object-position:center;background:0 0;border-radius:.2rem;width:auto;height:100%;display:block;box-shadow:0 6px 18px #00000059}.carousel__slide .button{z-index:2;opacity:1;white-space:nowrap;pointer-events:auto;padding:.7rem 1.15rem;font-size:.85rem;position:relative}.more-work{padding-bottom:2rem}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(2rem,6vw,8rem);width:min(100%,1200px);margin:0 auto;padding:2rem clamp(1rem,4vw,4rem) 10rem;display:grid}.grid--more{align-items:stretch;gap:clamp(1.25rem,3vw,2rem);padding-bottom:6rem}.project{aspect-ratio:1;rotate:var(--tilt,0deg);transition:.8s scale var(--ease-out-elastic), .8s rotate var(--ease-out-elastic);border-radius:1rem;position:relative}.more-work .project--more,.more-work .project--more:hover{aspect-ratio:3/4;transition:none;rotate:0deg;scale:1}.more-work .project--more img{transition:none}.project img,.project__video{object-fit:cover;width:100%;height:100%;box-shadow:var(--shadow);z-index:2;border-radius:1rem;position:relative}.project__video{background:var(--color-secondary);display:block}.grid--motion{--motion-gap:clamp(1.5rem, 4vw, 2.75rem);gap:var(--motion-gap);column-gap:var(--motion-gap);row-gap:var(--motion-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;max-width:min(100%,52rem);padding-bottom:6rem}.motion-col{gap:var(--motion-gap);flex-direction:column;min-width:0;display:flex}.category-page--motion .project,.category-page--motion .project:hover{aspect-ratio:auto;cursor:default;width:100%;height:auto;rotate:0deg;scale:1}.category-page--motion .project--playground,.category-page--motion .project--tile{cursor:pointer}.category-page--motion .project:hover{scale:1}.category-page--motion a.project--playground:hover,.category-page--motion a.project--tile:hover{scale:1.02}.category-page--motion .project__video{aspect-ratio:auto;object-fit:contain;width:100%;height:auto;display:block}.category-page--motion .project--square,.category-page--motion .project--square:hover{aspect-ratio:1}.category-page--motion .project--square .project__video,.category-page--motion .project--square img{aspect-ratio:1;object-fit:cover;width:100%;height:100%}.category-page--motion .project--gallery img{aspect-ratio:auto;object-fit:contain;width:100%;height:auto;display:block}.gallery-stack__back{align-self:flex-start;margin:0 clamp(1rem,4vw,4rem)}.project__sound{z-index:4;background:color-mix(in srgb, var(--color-onPrimary) 88%, transparent);width:2.4rem;height:2.4rem;color:var(--color-primary);cursor:pointer;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:0;border-radius:50%;place-items:center;padding:0;transition:background .2s,color .2s,transform .2s;display:grid;position:absolute;bottom:.75rem;right:.75rem}.project__sound:hover{transform:scale(1.06)}.project__sound.is-on{background:var(--color-accent);color:#fff}.project--sound .project__label{left:50%;translate:-50%}@media (any-hover:hover){.project:hover{rotate:0deg;scale:1.04}}.project.stack .project__layer{box-shadow:var(--shadow);border-radius:1rem;position:absolute;inset:0}.project.stack .project__layer--back{z-index:0;background:#3a3a3a;transform:translate(10px,12px)rotate(4deg)}.project.stack .project__layer--mid{z-index:1;background:#c8ff3d;transform:translate(5px,6px)rotate(2deg)}.intersection-phantom{pointer-events:none;height:100dvh}.footer{z-index:0;background:var(--color-secondary);color:var(--color-onPrimary);flex-direction:column;justify-content:flex-end;align-items:center;gap:2rem;padding:4rem 1rem;transition:background-color .45s;display:flex;position:fixed;inset:0}.footer__title{font:700 clamp(3.4rem, 12.5vw, 10rem) / 1 var(--font-family-headline);letter-spacing:-.04em;text-transform:uppercase;color:var(--color-primary);cursor:pointer;margin-left:-.05em;padding:.12em .06em .18em;line-height:1;overflow:visible}.footer__layer{justify-content:center;align-items:baseline;display:flex}.footer__letter{opacity:0;will-change:translate, opacity;display:inline-block;translate:0 1.1em}.footer.is-active .footer__letter{animation:.7s cubic-bezier(.22,1,.36,1) both footer-letter-rise;animation-delay:calc(var(--i) * 35ms)}@keyframes footer-letter-rise{0%{opacity:0;translate:0 1.1em}to{opacity:1;translate:0}}@media (prefers-reduced-motion:reduce){.footer__letter{opacity:1;translate:none}.footer.is-active .footer__letter{animation:none}}.footer__links{flex-wrap:wrap;justify-content:center;gap:1.5rem 3rem;display:flex}.footer__links__list{font:var(--font-body);text-transform:uppercase;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.footer__subtitle{font:var(--font-h6);letter-spacing:.08em;text-transform:uppercase;opacity:.7}.color-picker{z-index:31;justify-items:center;gap:.55rem;display:grid;position:fixed;bottom:1rem;right:1rem}.color-picker__toggle{width:48px;height:48px;box-shadow:var(--shadow);border-radius:50%;padding:0}.color-picker__swatch,.color-picker__reset{cursor:pointer;opacity:0;pointer-events:none;width:36px;height:36px;transition:.55s opacity ease, .55s transform var(--ease-out-elastic);border:none;border-radius:50%;transform:translateY(12px)scale(.7)}.color-picker.is-open .color-picker__swatch,.color-picker.is-open .color-picker__reset{opacity:1;pointer-events:auto;transition-delay:calc(var(--idx,4) * 40ms);transform:none}.color-picker__swatch{order:-1;place-items:center;display:grid;position:relative}.color-picker__swatch input{opacity:0;cursor:pointer;position:absolute;inset:0}.color-picker__dot{background:linear-gradient(135deg, var(--swatch) 50%, var(--swatch-secondary) 50%);width:100%;height:100%;box-shadow:var(--shadow);border-radius:50%}.color-picker__reset{background:var(--color-secondary);color:var(--color-onPrimary);box-shadow:var(--shadow);font-size:1.25rem;line-height:1}.about-page{text-align:center;flex-direction:column;align-items:center;gap:2.5rem;min-height:100dvh;padding:7rem 1.25rem 8rem;display:flex}.about-page h1{font:500 clamp(1.75rem, 3.5vw, 2.25rem) / 1.2 var(--font-family-body);letter-spacing:-.02em;text-transform:none}.about__paras{flex-direction:column;gap:1.5rem;width:min(100%,40rem);display:flex}.about__para{font:400 clamp(1.15rem, 2.4vw, 1.45rem) / 1.55 var(--font-family-body);letter-spacing:-.01em;text-transform:none;color:var(--color-secondary);transition:color .45s}.about__para.is-active{color:var(--color-onPrimary)}.about__projects{flex-direction:column;align-items:center;gap:1rem;margin-top:3rem;display:flex}.about__projects h2{font:500 .95rem / 1.2 var(--font-family-body);letter-spacing:.02em;text-transform:none}.about__projects ul{flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.about__projects a{font:500 .95rem / 1.2 var(--font-family-body);text-transform:none;border-bottom:1px solid}.case-study{min-height:100dvh;color:var(--color-onPrimary);padding:7.5rem clamp(1rem,3vw,2rem) 4rem}.case-study__shell{flex-direction:column;gap:2.25rem;max-width:72rem;margin:0 auto;display:flex}.case-study__back{font:500 .9rem / 1.2 var(--font-family-body);color:color-mix(in srgb, var(--color-onPrimary) 55%, transparent);width:fit-content;transition:color .2s}.case-study__back:hover{color:var(--color-onPrimary)}.case-study__header{flex-direction:column;gap:1.1rem;max-width:46rem;margin-left:calc(14rem + clamp(1.5rem,4vw,3.5rem));display:flex}.case-study__layout{grid-template-columns:14rem minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.case-study__nav{flex-direction:column;gap:1.5rem;display:flex;position:sticky;top:6rem}.case-study__nav-eyebrow{font:500 .7rem / 1 var(--font-family-body);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-onPrimary) 45%, transparent);margin-bottom:.4rem}.case-study__nav-title{font:600 1.05rem / 1.2 var(--font-family-body);color:var(--color-onPrimary)}.case-study__toc{border-left:1px solid color-mix(in srgb, var(--color-onPrimary) 14%, transparent);flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.case-study__toc-link{width:100%;color:color-mix(in srgb, var(--color-onPrimary) 42%, transparent);font:500 .78rem / 1.2 var(--font-family-body);letter-spacing:.04em;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;padding:.45rem 0 .45rem .85rem;transition:color .2s;display:flex}.case-study__toc-dot{background:color-mix(in srgb, var(--color-onPrimary) 28%, transparent);border-radius:50%;flex:none;width:.4rem;height:.4rem;margin-left:-1.05rem;transition:background .2s,transform .2s}.case-study__toc-link:hover,.case-study__toc-link.is-active{color:var(--color-onPrimary)}.case-study__toc-link.is-active .case-study__toc-dot{background:var(--color-onPrimary);transform:scale(1.25)}.case-study__main{flex-direction:column;gap:3rem;min-width:0;padding-bottom:2rem;display:flex}.case-study__title-row{flex-wrap:wrap;align-items:baseline;gap:.85rem 1.25rem;display:flex}.case-study__header h1{font:700 clamp(2.4rem, 6vw, 4.25rem) / .95 var(--font-family-headline);letter-spacing:-.02em;text-transform:uppercase}.case-study__tags{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.case-study__tags li{border:1px solid color-mix(in srgb, var(--color-onPrimary) 18%, transparent);font:500 .72rem / 1 var(--font-family-body);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--color-onPrimary) 65%, transparent);border-radius:.35rem;padding:.35rem .65rem}.case-study__lede{max-width:40rem;font:400 1.05rem / 1.55 var(--font-family-body);color:color-mix(in srgb, var(--color-onPrimary) 72%, transparent)}.case-study__hero{background:var(--color-secondary);width:100%;box-shadow:var(--shadow);border-radius:1.25rem;position:relative;overflow:hidden}.case-study__hero img,.case-study__hero video{aspect-ratio:auto;object-fit:contain;object-position:top center;background:#111;width:100%;height:auto;display:block}.case-study__section{flex-direction:column;gap:.85rem;width:100%;max-width:none;scroll-margin-top:6rem;display:flex}.case-study__section-label{font:500 .72rem / 1 var(--font-family-body);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-onPrimary) 45%, transparent)}.case-study__section-index{color:color-mix(in srgb, var(--color-onPrimary) 55%, transparent)}.case-study__section h2{font:600 clamp(1.35rem, 2.5vw, 1.75rem) / 1.25 var(--font-family-body);letter-spacing:-.01em}.case-study__section p{font:400 1rem / 1.65 var(--font-family-body);color:color-mix(in srgb, var(--color-onPrimary) 78%, transparent)}.case-study__figures{flex-direction:column;gap:1.5rem;width:100%;margin:.75rem 0 .25rem;display:flex}.case-study__figure{width:100%;margin:0}.case-study__figure img{background:var(--color-secondary);width:100%;height:auto;box-shadow:var(--shadow);border-radius:1.25rem;display:block}.case-study__figure figcaption{font:400 .88rem / 1.45 var(--font-family-body);color:color-mix(in srgb, var(--color-onPrimary) 55%, transparent);margin-top:.65rem}.case-study__facts{border-top:1px solid color-mix(in srgb, var(--color-onPrimary) 12%, transparent);gap:1.1rem;margin:1.25rem 0 0;padding:1.35rem 0 0;display:grid}.case-study__fact{gap:.35rem;display:grid}.case-study__fact dt{font:500 .72rem / 1 var(--font-family-body);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-onPrimary) 45%, transparent)}.case-study__fact dd{font:400 1rem / 1.45 var(--font-family-body);color:var(--color-onPrimary);margin:0}.case-study__steps{flex-direction:column;gap:2rem;margin-top:.5rem;display:flex}.case-study__step{flex-direction:column;gap:.75rem;display:flex}.case-study__step-label{font:600 .95rem / 1.3 var(--font-family-body);letter-spacing:.02em;text-transform:none;color:var(--color-onPrimary)}.case-study__bullets{flex-direction:column;gap:.4rem;margin:0;padding-left:1.15rem;display:flex}.case-study__bullets li{font:400 1rem / 1.55 var(--font-family-body);color:color-mix(in srgb, var(--color-onPrimary) 78%, transparent)}.case-study__facts--nested{margin-top:.35rem;padding-top:1rem}.case-study__block{border-top:1px solid color-mix(in srgb, var(--color-onPrimary) 12%, transparent);flex-direction:column;gap:.85rem;margin-top:2rem;padding-top:2rem;display:flex}.case-study__block h3{font:600 clamp(1.2rem, 2.2vw, 1.45rem) / 1.3 var(--font-family-body);letter-spacing:-.01em}.case-study__footer{border-top:1px solid color-mix(in srgb, var(--color-onPrimary) 12%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding-top:1rem;display:flex}.case-study__next{text-align:right;flex-direction:column;gap:.25rem;margin-left:auto;display:flex}.case-study__next span{font:500 .75rem / 1 var(--font-family-body);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--color-onPrimary) 45%, transparent)}.case-study__next strong{font:600 1.15rem / 1.2 var(--font-family-body)}@media (width<=860px){.case-study__header{max-width:none;margin-left:0}.case-study__layout{grid-template-columns:1fr}.case-study__nav{gap:1rem;position:static}.case-study__toc{border-left:0;border-bottom:1px solid color-mix(in srgb, var(--color-onPrimary) 12%, transparent);-webkit-overflow-scrolling:touch;flex-flow:row;gap:.15rem;padding-bottom:.35rem;overflow-x:auto}.case-study__toc-link{flex:none;padding:.55rem .7rem}.case-study__toc-dot{display:none}}.category-page{flex-direction:column;align-items:center;gap:2.5rem;min-height:100dvh;padding:7rem 0 2rem;display:flex}.project__label{z-index:3;background:var(--color-secondary);color:var(--color-onPrimary);font:500 .85rem / 1 var(--font-family-headline);text-transform:uppercase;box-shadow:var(--shadow);white-space:nowrap;border-radius:50rem;padding:.65rem 1.1rem;position:absolute;bottom:.85rem;left:50%;translate:-50%}@media (width<=900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}.grid--motion{grid-template-columns:repeat(2,minmax(0,1fr));max-width:min(100%,52rem)}.header__cat .header__cat-full{display:none}.header__cat .header__cat-short{display:inline}}@media (width<=640px){.grid{grid-template-columns:1fr;max-width:22rem}.grid--motion{grid-template-columns:1fr;max-width:min(100%,22rem)}.carousel{--card-w:clamp(14rem, 58vw, 20rem);height:calc(var(--card-h) + 5.5rem)}.footer__title{font-size:clamp(2.8rem,14vw,6rem)}.header{grid-template-columns:1fr auto;grid-template-areas:"cats socials""face face";row-gap:.65rem}.header__cats{grid-area:cats;gap:.25rem .55rem;max-width:none}.header__nav{grid-area:face}.header__socials{grid-area:socials}.header__cat{font-size:.8rem}.header__social{width:36px;height:36px}}
