:root{--black-100:#1e1e1e;--black-50:#5d5d5d;--black-25:#828282;--white-100:#fff;--img-placeholder:#565656;--brand-font:"Scenik SemiBold Retalic", "Inter", sans-serif;--text-font:"Inter", sans-serif;--fs-1:clamp(41px, calc(41px + (76 - 41) * (100vw - 375px) / (1440 - 375)), 76px);--fs-5:clamp(25px, calc(25px + (31 - 25) * (100vw - 375px) / (1440 - 375)), 31px);--fs-base:1.25rem;--fs-sm:1rem;--fs-xs:.813rem;--base-spacing:4px;--space-3xs:calc(var(--base-spacing) * 1);--space-2xs:calc(var(--base-spacing) * 2);--space-xs:calc(var(--base-spacing) * 3);--space-sm:calc(var(--base-spacing) * 4);--space-md:calc(var(--base-spacing) * 5);--space-lg:calc(var(--base-spacing) * 8);--space-xl:calc(var(--base-spacing) * 10);--space-2xl:calc(var(--base-spacing) * 16);--space-fluid-md:clamp(20px, calc(20px + (64 - 20) * (100vw - 375px) / (1440 - 375)), 64px);--space-fluid-lg:clamp(64px, calc(64px + (120 - 64) * (100vw - 375px) / (1440 - 375)), 120px);--space-fluid-xl:clamp(120px, calc(120px + (360 - 120) * (100vw - 375px) / (1440 - 375)), 360px)}@font-face{font-family:Scenik SemiBold Retalic;src:url(/fonts/FTScenik-BoldRetalic.woff2)format("woff2"),url(/fonts/FTScenik-BoldRetalic.woff)format("woff");font-weight:400 600;font-style:normal;font-display:swap}body{font-family:var(--text-font);font-size:var(--fs-base);color:var(--black-100);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.5}.hero__title{font-family:var(--brand-font);font-weight:500;font-size:var(--fs-1);letter-spacing:-.03em;color:var(--black-50);line-height:1}.hero__title-brand{color:var(--black-100)}.skills__title{font-family:var(--brand-font);font-weight:500;font-size:var(--fs-base);color:var(--black-100);line-height:1.2}.skills__list{font-family:var(--text-font);font-weight:400;font-size:var(--fs-base);color:var(--black-50);line-height:1.5}.work-item__name{font-family:var(--brand-font);font-weight:500;font-size:var(--fs-5);color:var(--black-100);line-height:1.15}.work-item__subtitle{font-family:var(--brand-font);font-weight:500;font-size:var(--fs-sm);color:var(--black-50)}.work-item__desc{font-family:var(--text-font);font-weight:400;font-size:var(--fs-base);color:var(--black-50);line-height:1.5}.work-item__cta,.footer__link{font-family:var(--brand-font);font-weight:500;font-size:var(--fs-base);color:var(--black-100)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overscroll-behavior-x:none}body{background:var(--white-100);overscroll-behavior-x:none;margin:0}a{color:inherit;text-decoration:none}a:hover{color:inherit;cursor:pointer;text-decoration:none}h1,h2,p,ul,figure{margin:0}ul{padding:0;list-style:none}img{max-width:100%;display:block}.page{max-width:1728px;margin-inline:auto}.break-desktop{display:none}.hero{min-height:100dvh;padding-top:var(--space-fluid-md);padding-left:var(--space-fluid-md);padding-right:var(--space-fluid-md);flex-direction:column;padding-bottom:0;display:flex;position:relative}.hero__ascii{pointer-events:none;z-index:0;color:var(--black-25);position:absolute;overflow:hidden}.hero__inner{z-index:1;justify-content:space-between;align-items:flex-start;gap:var(--space-fluid-md);flex:1;display:flex;position:relative}.hero-transition{height:0}.js .hero__ascii{opacity:0}.js .hero__ascii.is-ready{opacity:1;transition:opacity .9s ease-out .65s}.skills{--skills-col:216px;--skills-offset:150px;width:calc(var(--skills-col) + var(--skills-offset));align-items:flex-end;gap:var(--space-fluid-md);flex-direction:column;flex-shrink:0;display:flex}.skills__item{width:var(--skills-col);gap:var(--space-md);flex-direction:column;display:flex}.skills__item:nth-child(odd){align-self:flex-start}.skills__list{white-space:nowrap}.works{gap:var(--space-fluid-xl);flex-direction:column;display:flex}.work-item{justify-content:space-between;align-items:flex-end;gap:var(--space-fluid-md);padding-inline:var(--space-fluid-md);display:flex}.work-item:nth-child(2n){flex-direction:row-reverse}.work-item__content{gap:var(--space-md);flex-direction:column;flex:0 618px;display:flex}.work-item__heading{gap:var(--space-3xs);flex-direction:column;display:flex}.work-item__cta{align-self:flex-start;text-decoration:none}.work-item__media{aspect-ratio:var(--card-ratio,3/2);background:var(--white-100);color:var(--black-50);flex:0 909px;position:relative;overflow:hidden}.work-item__media--landscape{--card-ratio:3 / 2}.work-item__media--square{--card-ratio:1 / 1}.work-item__media--portrait{--card-ratio:3 / 4}.work-item__media--wide{--card-ratio:16 / 9}.work-item__media>img:not(.work-item__logo){object-fit:cover;object-position:var(--image-x,50%) var(--image-y,50%);width:100%;height:100%;position:absolute;inset:0}.work-item__media>img:not(.work-item__logo):not(:first-of-type){display:none}.work-item__ascii{z-index:1;color:var(--black-50);pointer-events:none;margin:0;position:absolute;inset:0;overflow:hidden}.work-item__ascii>div{width:100%;height:100%}.work-item__logo{width:13.2%;min-width:72px;max-width:120px;height:auto;transition:opacity .35s ease-out;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.js .work-item__logo{opacity:0}.js .work-item__media.is-revealed .work-item__logo{opacity:1}.js .work-item__media.is-framed .work-item__logo{opacity:0}.js .work-item__media>img:not(.work-item__logo){opacity:0;display:block}.js .work-item__media>img.is-shown{opacity:1}.js .work-item__media.is-revealed>.work-item__ascii-preview{z-index:2;opacity:1}.js .work-item__media.is-framed>.work-item__ascii-preview{opacity:0}.js .work-item__media.is-ascii-previewed>.work-item__ascii-preview{z-index:2;opacity:1}@media (hover:hover){.js .work-item__media[data-ascii-hover-preview]:hover:not(.is-framed)>.work-item__ascii-preview{z-index:2;opacity:1}}.js .work-item__media.is-framed>img.is-shown{z-index:2;opacity:1}.js .work-item__media{clip-path:inset(0 0 0 100%);will-change:clip-path;transition:clip-path .8s cubic-bezier(.22,1,.36,1)}.js .work-item:nth-child(2n) .work-item__media{clip-path:inset(0 100% 0 0)}.js .work-item__media.in-view,.js .work-item:nth-child(2n) .work-item__media.in-view{clip-path:inset(0)}.js .work-item__content{opacity:0}.js .work-item__content.is-revealing{opacity:1}.work-item__reveal-mask{margin-block:-.12em;padding-block:.12em;display:block;overflow:hidden}.work-item__reveal-mask--cta{align-self:flex-start}.work-item__cta:focus,.work-item__cta:focus-visible,.footer__link:focus,.footer__link:focus-visible{outline:none}.work-item__reveal{display:block}.work-item__reveal--line{display:inline-block}.work-item__line-word{white-space:nowrap}.work-item__cta.work-item__reveal{display:inline-block}.js .work-item__content.is-revealing .work-item__reveal{will-change:transform;transform:translateY(115%)}.js .work-item__content.is-revealing.is-revealed .work-item__reveal{transition:transform .6s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s);transform:translateY(0)}.link-scroll{vertical-align:top;height:1.25em;line-height:1.25;display:inline-block;overflow:hidden}.link-scroll__track{will-change:transform;display:block;transform:translateY(0)}.link-scroll__label{white-space:nowrap;height:1.25em;display:block}.link-scroll.is-hovered .link-scroll__track,.work-item__cta:focus-visible .link-scroll__track,.footer__link:focus-visible .link-scroll__track{transition:transform .22s ease-out;transform:translateY(-33.333%)}.link-scroll.is-leaving .link-scroll__track{transition:transform .22s ease-out;transform:translateY(-66.667%)}.link-scroll.is-resetting .link-scroll__track{transition:none;transform:translateY(0)}.footer{padding:0 var(--space-fluid-md);margin-top:var(--space-fluid-md);justify-content:space-between;align-items:center;display:flex;position:relative}.footer__reveal-mask{top:var(--space-fluid-md);z-index:1;margin-block:-.12em;padding-block:.12em;position:absolute;overflow:hidden}.footer__reveal-mask--contact{left:var(--space-fluid-md)}.footer__reveal-mask--call{right:var(--space-fluid-md)}.footer__link{text-decoration:none;display:block}.footer__ascii{pointer-events:none;width:100vw;height:clamp(120px,16vw,200px);color:var(--black-25);margin-inline:calc(50% - 50vw);overflow:hidden}.js .footer.is-revealing .footer__link{transform:translateY(120%)}.js .footer.is-revealing.is-revealed .footer__link{transition:transform .6s cubic-bezier(.22, 1, .36, 1) var(--footer-reveal-delay,0s);transform:translateY(0)}.footer__reveal-mask--call .footer__link{--footer-reveal-delay:.1s}.js .footer__ascii{opacity:0;transition:opacity .9s ease-out}.js .footer.is-visible .footer__ascii.is-ready{opacity:1}.js .hero__title{opacity:0}.js .hero__title.is-revealing{opacity:1}.reveal-mask{vertical-align:top;padding-bottom:.18em;margin-bottom:-.18em;margin-inline:-.16em;padding-inline:.16em;display:inline-block;overflow:hidden}.reveal-word{display:inline-block}.reveal-nobreak{white-space:nowrap}.hero__title.is-revealing .reveal-word{will-change:transform;transform:translateY(120%)}.hero__title.is-revealing.is-revealed .reveal-word{transition:transform .56s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s);transform:translateY(0)}.js .skills{opacity:0}.js .skills.is-revealing{opacity:1}.js .skills__item{margin-block:-.15em;padding-block:.15em;overflow:hidden}.skills__reveal{gap:var(--space-sm);flex-direction:column;display:flex}.skills.is-revealing .skills__reveal{will-change:transform;transform:translateY(120%)}.skills.is-revealing.is-revealed .skills__reveal{transition:transform .6s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s);transform:translateY(0)}@media (width>=768px){.break-desktop{display:block}.hero__title{min-width:640px}}@media (width<=1199px){.hero__inner{flex-direction:column}.hero{--compact-ascii-space:clamp(260px, calc(30dvh + 40px), 440px);padding-top:var(--space-fluid-md);padding-left:var(--space-fluid-md);padding-right:var(--space-fluid-md);padding-bottom:var(--compact-ascii-space)}}@media (width>=768px) and (width<=1199px){.skills{flex-direction:row;justify-content:space-between;align-items:flex-start;width:100%;height:210px}.skills__item:nth-child(2){align-self:flex-end}}@media (width<=767px){.skills{width:100%}}@media (width<=1199px){.work-item,.work-item:nth-child(2n){gap:var(--space-xl);flex-direction:column-reverse!important}.work-item__content,.work-item__media{flex-basis:auto;width:100%}}@media (prefers-reduced-motion:reduce){.js .hero__title,.js .skills{opacity:1!important}.js .hero__ascii,.js .footer.is-visible .footer__ascii{opacity:1!important;transition:none!important}.reveal-word,.skills__reveal{transition:none!important;transform:none!important}.js .work-item__media{will-change:auto;clip-path:none!important}.js .work-item__logo{transition:none!important}.js .work-item__content{will-change:auto;opacity:1!important;transform:none!important}.js .work-item__content.is-revealing .work-item__reveal{transition:none!important;transform:none!important}}
