:root{color-scheme:dark;--color-bg:#000;--color-heading:#f5f5f5;--color-body:#b0b0b0;--color-muted:#a0a0a0;--color-rule:#121212;--font-heading:"Inter", Arial, sans-serif;--font-body:"Work Sans", Arial, sans-serif;--page-gutter:clamp(1rem, 1.736vw, 2rem);--media-max:90rem;--about-max:70.625rem;--grid-gap:clamp(.625rem, 1.111vw, 1rem);--header-height:4.6875rem;--logo-width:7.75rem;--nav-gap:2rem;--text-body:clamp(.9375rem, .875rem + .25vw, 1rem);--text-title:clamp(1.25rem, 1rem + .5vw, 1.5rem);--space-section:clamp(3rem, 4.45vw, 4rem);--space-footer:clamp(4rem, 6.667vw, 6rem);--duration-hover:.16s;--duration-image:.25s;--duration-slide:.9s}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/inter-latin-500-normal.Cerq10X2.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_astro/inter-latin-600-normal.LgqL8muc.woff2)format("woff2")}@font-face{font-family:Work Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/work-sans-latin-400-normal.jUejSri3.woff2)format("woff2")}@font-face{font-family:Work Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/work-sans-latin-500-normal.BKGnScDy.woff2)format("woff2")}@font-face{font-family:Work Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_astro/work-sans-latin-700-normal.CEeo_t6l.woff2)format("woff2")}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-body);font:var(--text-body)/1.85 var(--font-body);margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.3em}button{color:inherit;font:inherit;cursor:pointer}:focus-visible{outline-offset:5px;outline:2px solid #fff;box-shadow:0 0 0 7px #000}[hidden]{display:none!important}main:focus{outline:none}h1,h2,h3{font-family:var(--font-heading);color:var(--color-heading);text-transform:uppercase;letter-spacing:.08em;font-weight:600;line-height:1.4}h1{font-size:var(--text-title);margin:0 0 .5rem}h2,h3{margin:0 0 .5rem;font-size:.9375rem}p{margin:0 0 1rem}figure{min-width:0;margin:0}figcaption{padding-top:.75rem;font-size:.875rem}.container-media{width:min(calc(100% - 2 * var(--page-gutter)), var(--media-max));margin-inline:auto}.container-about{width:min(calc(100% - 2 * var(--page-gutter)), var(--about-max));margin-inline:auto}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;left:var(--page-gutter);color:#000;background:#fff;padding:.5rem 1rem;position:absolute;top:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:1rem;display:flex}.home-link{width:var(--logo-width);flex-shrink:0;text-decoration:none;display:block}.site-header nav{gap:var(--nav-gap);display:flex}.site-header nav a{color:var(--color-heading);text-transform:uppercase;font:600 1rem/1.25 var(--font-heading);letter-spacing:.07em;padding-block:.75rem;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{text-underline-offset:.4em;text-decoration:underline 1px}.header-navigation{justify-content:flex-end;align-items:center;gap:clamp(1.25rem,3vw,2.5rem);display:flex}.site-header .language-switch{color:var(--color-muted);align-items:center;gap:.4rem}.site-header .language-switch a{color:var(--color-muted);letter-spacing:.03em;font-size:.6875rem;font-weight:400}.site-header .language-switch a[aria-current]{color:var(--color-heading)}@media (width<=39.999rem){.site-header{flex-wrap:wrap;padding-block:.75rem}.header-navigation{justify-content:space-between;gap:.75rem;width:100%}.site-header nav{gap:clamp(.75rem,4vw,1.25rem)}.site-header nav a{letter-spacing:.04em;font-size:.8125rem}}.media{width:100%;position:relative}.media-framed{aspect-ratio:var(--media-ratio)}.media picture{display:block}.media img{width:100%;height:auto}.media-framed picture,.media-framed img{width:100%;height:100%}.media-framed img{object-fit:var(--media-fit);object-position:var(--media-position)}.media-progressive{aspect-ratio:var(--media-ratio);overflow:hidden}.media-progressive>picture{z-index:1;transition:opacity var(--duration-image) ease;position:absolute;inset:0}.media-progressive>picture,.media-progressive img{width:100%;height:100%}.media-progressive img{object-fit:var(--media-fit);object-position:var(--media-position);color:#0000;font-size:0}.media-progressive img:focus-visible{outline-offset:-5px;box-shadow:none}.image-preview{background-size:var(--media-fit);background-position:var(--media-position);filter:blur(8px);background-repeat:no-repeat;position:absolute;inset:0;transform:scale(1.04)}.media-progressive[data-image-state=loading]>picture,.media-progressive[data-image-state=error]>picture{opacity:0;transition:none}.image-error{z-index:2;background:#000c;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1rem;padding:.5rem .75rem;font-size:.875rem;display:flex;position:absolute;inset:auto 0 0}.image-error p,.carousel-feedback p{margin:0}.image-retry{min-height:2.75rem;color:var(--color-heading);text-underline-offset:.3em;background:0 0;border:0;padding:.5rem .25rem;font-size:.875rem;text-decoration:underline}.image-retry[aria-disabled=true]{cursor:wait}.project-grid{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr);margin-block:0;padding:0;list-style:none;display:grid}.project-grid li{min-width:0}.project-card{text-decoration:none;display:block;position:relative}.project-card-title{text-align:center;text-transform:uppercase;color:#fff;font:500 1rem/1.5 var(--font-heading);opacity:0;transition:opacity var(--duration-hover);background:#00000080;place-content:center;padding:1rem;display:grid;position:absolute;inset:0}.project-card:hover .project-card-title,.project-card:focus-visible .project-card-title{opacity:1}.project-card-lock{width:1.5rem;height:1.5rem;margin:0 auto .5rem;display:block}.project-unlock{max-width:30rem;margin-top:clamp(3rem,11.389vw,10.25rem)}.project-feedback{overflow-wrap:anywhere;min-height:1.85em}.project-unlock-back{margin-top:2rem}.site-footer{margin-top:var(--space-footer);border-top:1px solid var(--color-rule);text-align:center;padding:1rem 0 clamp(4rem,6.667vw,6rem)}.footer-identity{color:var(--color-heading);text-transform:uppercase;font:500 .875rem/1.3 var(--font-heading)}.footer-identity p{margin:0}.footer-identity p+p{margin-top:6px}.footer-links{flex-wrap:wrap;justify-content:center;gap:1rem 2rem;margin-top:1.25rem;display:flex}.footer-contact-icons{justify-content:center;gap:1.25rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.footer-contact-icon{width:2.25rem;height:2.25rem;color:var(--color-heading);background:#000;border:1px solid;border-radius:50%;place-items:center;text-decoration:none;display:grid}.footer-contact-icon svg{width:1.25rem;height:1.25rem}.copyright,.footer-links{font-size:.75rem}.copyright{margin:2.25rem 0 0}.project-intro{margin-top:clamp(1.5rem,3.125vw,2.8125rem);padding-inline:clamp(0rem,4.45vw,4rem)}.project-intro .prose{max-width:85ch;margin-top:1.5rem}.project-metadata{grid-template-columns:max-content minmax(0,1fr);gap:.25rem 1rem;margin:1.5rem 0 0;font-size:.875rem;display:grid}.project-metadata dt{font-weight:700}.project-metadata dd{margin:0}.project-blocks{gap:var(--grid-gap);margin-top:clamp(2.5rem,5.556vw,5rem);display:grid}.project-navigation{margin-top:var(--space-section);flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;display:flex}.project-navigation a{min-height:2.75rem;color:var(--color-heading);font:500 .875rem/1.4 var(--font-heading);text-transform:uppercase;letter-spacing:.07em;align-items:center;padding-block:.75rem;display:inline-flex}.image-pair{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.text-block{margin-block:var(--space-section);max-width:90ch;padding-inline:clamp(0rem,4.45vw,4rem)}video{width:100%;height:auto;display:block}.about-profile{grid-template-columns:minmax(0,1fr);gap:2rem;margin-top:clamp(3rem,11.389vw,10.25rem);display:grid}.about-portrait{width:min(100%,20.9375rem)}.about-copy{min-width:0}.profile-role{color:var(--color-heading);font:600 .9375rem/1.4 var(--font-heading);text-transform:uppercase;letter-spacing:.06em;margin-bottom:0}.profile-subline{color:#c4c4c4;font:normal 400 .875em/1.4 var(--font-body);text-transform:none;letter-spacing:normal;margin:6px 0 0}.about-intro{margin-top:22px}.about-personal{margin-top:1.5rem}.about-section{margin-top:var(--space-section)}.about-education{margin-top:2rem}.career-list{margin:0;padding:0;list-style:none}.career-list li+li{margin-top:2rem}.career-list p{margin:0}.client-name{display:inline-block}.client-separator{margin-inline:.3em}.page-about{--space-footer:clamp(5rem, 10vw, 9rem)}.text-page{max-width:70.625rem;min-height:20rem;margin-top:clamp(3rem,11.389vw,10.25rem);padding-inline:clamp(0rem,4.45vw,4rem)}.text-page .prose{max-width:65ch;margin-top:2rem}.contact-page-links{flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:2rem;display:flex}.contact-page-links a{padding-block:.5rem}.contact-address,.legal-address{margin-bottom:1rem;font-style:normal}.contact-legal,.privacy-policy{margin-top:var(--space-section)}.contact-legal>section+section,.privacy-policy>section{margin-top:2rem}.privacy-policy>h2{font-size:var(--text-title)}.contact-legal ul,.privacy-policy ul{margin:0 0 1rem;padding-left:1.25rem}.page-contact .prose{overflow-wrap:anywhere}.contact-privacy-note{font-size:.875rem}.contact-form{gap:1.25rem;margin-top:2rem;display:grid}.contact-form p{margin:0}.contact-field{gap:.375rem;min-width:0;display:grid}.contact-field label{color:var(--color-heading);font-weight:500}.contact-field input,.contact-field textarea{width:100%;min-width:0;color:var(--color-heading);font:inherit;background:#0a0a0a;border:1px solid #606060;border-radius:0;padding:.625rem .75rem}.contact-field textarea{resize:vertical}.contact-submit{border:1px solid var(--color-heading);min-height:2.75rem;color:var(--color-heading);background:0 0;border-radius:0;justify-self:start;padding:.625rem 1.25rem}.contact-submit:hover{background:var(--color-heading);color:#000}.contact-submit:disabled{opacity:.6;cursor:wait}.contact-trap{display:none}.contact-status{overflow-wrap:anywhere;min-height:1.85em}.contact-sent{display:none}.contact-sent:target{color:var(--color-heading);margin-top:1rem;display:block}.carousel-stage{width:100%;aspect-ratio:var(--carousel-ratio);position:relative}.carousel-slide{position:absolute;inset:0}.carousel-slide>a{height:100%;display:block}.carousel-slide .media{aspect-ratio:auto;height:100%}.carousel-slide img{color:#0000;font-size:0}.carousel-controls{justify-content:center;align-items:center;gap:.25rem;min-height:2.75rem;display:flex}.carousel-controls button{color:#d6d6d6;background:0 0;border:0;place-items:center;width:2.75rem;height:2.75rem;padding:0;display:grid}.carousel-selectors{flex-wrap:wrap;justify-content:center;display:flex}.carousel-selectors button{width:calc(1rem + 10px)}.carousel-selectors button:after{content:"";background:#606060;width:1rem;height:2px}.carousel-selectors button[aria-pressed=true]:after,.carousel-selectors button:hover:after{background:#d6d6d6}.carousel-fallback{max-width:45rem;margin:1.5rem auto 0;font-size:.875rem}.carousel-feedback{flex-wrap:wrap;justify-content:center;align-items:center;gap:0 .75rem;min-height:2.75rem;font-size:.875rem;display:flex}.carousel-fallback ul{flex-wrap:wrap;gap:1rem 2rem;padding:0;list-style:none;display:flex}@media (width>=40rem){.project-grid,.image-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=56.25rem){.about-profile{grid-template-columns:minmax(15rem,20.9375rem) minmax(0,1fr);gap:1.875rem}.about-career{margin-top:calc(var(--space-section) + 30px)}}@media (width>=64rem){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=39.999rem){body{font-size:1rem}.site-header{--logo-width:6.625rem;--nav-gap:1rem;flex-wrap:wrap;row-gap:1rem;padding-block:1.25rem}.site-header nav a{font-size:.8125rem}.footer-identity{font-size:.75rem;line-height:1.6}.project-intro,.text-page,.text-block{padding-inline:0}.project-card-title{opacity:1;background:#000;padding:.5rem 0 .75rem;display:block;position:static}}@media (hover:none){.project-card-title{opacity:1;background:#000;padding:.5rem 0 .75rem;display:block;position:static}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
