:root{--page-inset:clamp(20px,6vw,96px);--grid-gap:8px;--header-height:64px;--color-bg:#f0f0f0;--color-fg:#000;--color-muted:#6b6b6b;--color-rule:#0000002e;--font-sans:"Geist","Helvetica Neue",Helvetica,Arial,sans-serif;--fs-small:11px;--lh-small:15px;--fw-regular:417;--fw-medium:499;--fw-light:280}*{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f0f0;background-color:var(--color-bg);color:#000;color:var(--color-fg);font-family:Geist,Helvetica Neue,Helvetica,Arial,sans-serif;font-family:var(--font-sans);margin:0;padding:0}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{color:var(--color-fg);text-align:left}.App,.homepage{background-color:var(--color-bg);min-height:100vh}.homepage__main{padding:var(--header-height) var(--page-inset) 80px}.homepage__layout{grid-gap:clamp(24px,4vw,64px);align-items:start;display:grid;gap:clamp(24px,4vw,64px);grid-template-columns:minmax(228px,304px) minmax(0,1fr);margin:0 auto;max-width:1700px;padding-top:28px}.homepage__work{min-width:0}@media (max-width:900px){.homepage__layout{gap:32px;grid-template-columns:1fr}}.site-header{background-color:var(--color-bg);left:0;position:fixed;top:0;width:100%;z-index:100}.site-header__inner{align-items:center;display:flex;height:var(--header-height);justify-content:space-between;padding:0 var(--page-inset)}.site-header__brand{color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);letter-spacing:normal;line-height:var(--lh-small);transition:opacity .2s ease}.site-header__brand:hover{opacity:.4}.site-header__nav{align-items:center;display:flex;gap:clamp(18px,3vw,44px)}.site-header__link{color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);letter-spacing:normal;line-height:var(--lh-small);opacity:1;transition:opacity .2s ease}.site-header__link.is-active,.site-header__link:hover{opacity:.4}@media (max-width:600px){.site-header__nav{gap:14px}}.home-intro{align-self:start;gap:28px;position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + 8px)}.home-intro,.home-intro__block{display:flex;flex-direction:column}.home-intro__block{gap:12px}.home-intro__name{font-weight:var(--fw-medium);letter-spacing:normal}.home-intro__about,.home-intro__meta,.home-intro__name{font-size:var(--fs-small);line-height:var(--lh-small);margin:0}.home-intro__about,.home-intro__meta{color:var(--color-fg);font-weight:var(--fw-regular)}.home-intro__role{align-items:center;display:inline-flex;gap:4px}.home-intro__meta-icon{font-size:var(--fs-small);font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20;height:1em;line-height:1;width:1em}.pill{border:1px solid var(--color-fg);border-radius:999px;color:var(--color-fg);display:inline-block;font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);padding:4px 12px;white-space:nowrap}.pill--label{align-self:flex-start}.home-intro__label{border-bottom:1px solid var(--color-fg);color:var(--color-fg);display:block;font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);padding-bottom:8px}.pill--link{transition:background-color .2s ease,color .2s ease,border-color .2s ease}.pill--link:hover{background-color:var(--color-fg);border-color:var(--color-fg);color:var(--color-bg)}.home-intro__tags{display:flex;flex-wrap:wrap;gap:6px}@media (max-width:900px){.home-intro{position:static;top:auto}}.portfolio-grid{column-count:2;column-gap:10px;margin:0 auto;max-width:1700px}.portfolio-item{break-inside:avoid;display:block;margin-bottom:10px;page-break-inside:avoid;width:100%}.portfolio-item.is-hidden{opacity:0;transform:translateY(40px)}.portfolio-item.is-anim{opacity:1;transform:translateY(0);transition:transform 1s ease-in-out,opacity .8s ease-in-out;will-change:transform,opacity}.portfolio-item.is-instant{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.portfolio-item.is-anim,.portfolio-item.is-hidden{opacity:1;transform:none;transition:none}}.portfolio-item__media{background-color:#e2e2e2;border-radius:12px;overflow:hidden;position:relative}.portfolio-item__image{display:block;height:auto;width:100%}@media (max-width:768px){.portfolio-grid{column-count:1}}.contact-footer{bottom:22px;color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);letter-spacing:normal;line-height:var(--lh-small);opacity:1;position:fixed;right:var(--page-inset);transition:opacity .2s ease;z-index:100}.contact-footer:hover{opacity:.4}@media (max-width:600px){.contact-footer{bottom:16px}}.project{background-color:var(--color-bg);min-height:100vh}.project__main{margin:0 auto;max-width:1700px;padding:var(--header-height) var(--page-inset) 100px}.project__layout{grid-gap:clamp(24px,4vw,64px);align-items:start;display:grid;gap:clamp(24px,4vw,64px);grid-template-columns:minmax(240px,320px) minmax(0,1fr);padding-top:28px}.project__sidebar{align-self:start;display:flex;flex-direction:column;gap:24px;position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + 8px)}.project__content{min-width:0}.project__title{font-size:33px;font-weight:var(--fw-medium);letter-spacing:normal;line-height:1.1;margin:0}.project__description{max-width:46ch}.project__description p{color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);margin:0 0 14px}.project__description p:last-child{margin-bottom:0}.project__description a{text-decoration:underline;text-underline-offset:2px}.project__credits-head{border-bottom:1px solid var(--color-rule);font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);padding-bottom:8px}.project__credits-body{display:flex;flex-wrap:wrap;gap:6px;padding-top:10px}.project__credits-body span{border:1px solid var(--color-fg);border-radius:999px;color:var(--color-fg);display:inline-block;font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);padding:4px 12px;white-space:nowrap}.project__media{display:flex;flex-direction:column;gap:var(--grid-gap)}.pm-video{background-color:#000;border-radius:12px;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.pm-video iframe,.pm-video video{border:0;height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.pm-full{border-radius:12px;display:block;height:auto;width:100%}.pm-row{grid-gap:var(--grid-gap);display:grid;gap:var(--grid-gap);grid-template-columns:1fr 1fr}.pm-row img,.pm-row video{border-radius:12px;display:block;height:100%;object-fit:cover;width:100%}.pm-section{margin-top:40px}.project__media>.pm-section:first-child,.project__media>.pm-section:first-child .pm-section__title{margin-top:0}.pm-section__title{font-size:20px;font-weight:var(--fw-medium);letter-spacing:normal;line-height:1.2;margin:32px 0 0}.pm-section__rule{border:none;border-top:1px solid var(--color-rule);margin:14px 0 16px}.pm-section__copy{color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);max-width:60ch}@media (max-width:900px){.project__layout{gap:32px;grid-template-columns:1fr}.project__sidebar{position:static;top:auto}}@media (max-width:768px){.pm-row{grid-template-columns:1fr}}.photo-container{background-color:var(--color-bg);min-height:100vh}.photo-main{margin:0 auto;max-width:1700px;padding:calc(var(--header-height) + 28px) var(--page-inset) 100px}.photo-title{font-size:33px;font-weight:var(--fw-medium);letter-spacing:normal;line-height:1.1;margin:0 0 20px}.photo-rule{border:none;border-top:1px solid var(--color-rule);margin:0 0 24px}.photo-main p{color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small)}.showreel-page{background-color:var(--color-bg);min-height:100vh}.showreel-main{margin:0 auto;max-width:1700px;padding:var(--header-height) var(--page-inset) 100px}.showreel-layout{grid-gap:clamp(24px,4vw,64px);align-items:start;display:grid;gap:clamp(24px,4vw,64px);grid-template-columns:minmax(240px,320px) minmax(0,1fr);padding-top:28px}.showreel-sidebar{align-self:start;display:flex;flex-direction:column;gap:12px;position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + 8px)}.showreel-content{min-width:0}.showreel-title{font-size:33px;font-weight:var(--fw-medium);letter-spacing:normal;line-height:1.1;margin:0}.showreel-meta{color:var(--color-fg);margin:0 0 12px}.showreel-info__head,.showreel-meta{font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small)}.showreel-info__head{border-bottom:1px solid var(--color-rule);padding-bottom:8px}.showreel-info__copy{color:var(--color-fg);font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small);margin:0;max-width:46ch;padding-top:8px}.showreel-video-container{width:100%}.showreel-video{aspect-ratio:16/9;background-color:#000;border:none;border-radius:12px;display:block;height:auto;width:100%}@media (max-width:900px){.showreel-layout{gap:32px;grid-template-columns:1fr}.showreel-sidebar{position:static;top:auto}}.contact-container{background-color:var(--color-bg);min-height:100vh;overflow:visible;padding:calc(var(--header-height) + 28px) var(--page-inset) 80px}.iframe-container{margin:0 auto;max-width:1100px;position:relative;width:100%}.cv-iframe{background-color:initial;border:none;display:block;height:1800px;min-height:0;width:100%}.index-page{background-color:var(--color-bg);min-height:100vh}.index-main{padding:calc(var(--header-height) + 20px) var(--page-inset) 100px;position:relative}.index-list{list-style:none;margin:0;padding:0;position:relative;z-index:2}.index-item{color:var(--color-fg);display:inline-block;font-size:38px;font-weight:var(--fw-medium);letter-spacing:normal;line-height:1.1;text-transform:uppercase;transition:opacity .2s ease}.index-list:hover .index-item{opacity:.35}.index-list .index-item:hover{opacity:1}.index-preview{opacity:0;pointer-events:none;position:fixed;right:var(--page-inset);top:50%;transform:translateY(-50%);transition:opacity .25s ease;width:min(46vw,620px);z-index:1}.index-preview.is-visible{opacity:1}.index-preview img{display:block;height:auto;width:100%}@media (max-width:768px){.index-item{text-transform:uppercase}.index-preview{display:none}.index-list:hover .index-item{opacity:1}}
/*# sourceMappingURL=main.d4b66047.css.map*/