@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-Thin.woff2) format("woff2");font-display:swap;font-weight:100;font-style:normal}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-ThinItalic.woff2) format("woff2");font-display:swap;font-weight:100;font-style:italic}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-Light.woff2) format("woff2");font-display:swap;font-weight:300;font-style:normal}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-LightItalic.woff2) format("woff2");font-display:swap;font-weight:300;font-style:italic}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-Regular.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-Italic.woff2) format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-Bold.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-BoldItalic.woff2) format("woff2");font-display:swap;font-weight:700;font-style:italic}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-Black.woff2) format("woff2");font-display:swap;font-weight:900;font-style:normal}@font-face{font-family:Akkurat;src:url(/fonts/AkkuratLLTT-BlackItalic.woff2) format("woff2");font-display:swap;font-weight:900;font-style:italic}:root{--color-bg: #faf9f6;--color-text: #1a1a1a;--color-text-muted: rgba(26, 26, 26, .65);--color-overlay: rgba(26, 26, 26, .4);--color-backdrop: rgba(250, 249, 246, .97);--color-project-page-bg: #faf9f6;--color-project-page-text: #1a1a1a;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--transition-fast: .2s;--transition-modal: .35s;--transition-slide: .7s;--easing-smooth: cubic-bezier(.4, 0, .2, 1);--font-stack: "Akkurat", Arial, sans-serif;--col1-width: 30vw;--col-empty-width: 31.8vw;--col-contact-width: 12.5vw;--col4-width: 20vw;--col4-gap: 5.7vw;--contact-left: 61.8vw;--contact-right: 74.3vw;--project-left-width: 44.3vw;--project-right-width: 18.2vw;--slide-offset: 44.3vw;--slide-right-offset: 18.2vw}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body.profile{font-family:var(--font-stack);font-weight:300;color:var(--color-text);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased}.profile a{color:inherit;text-decoration:none}.profile a:focus-visible{outline:1px dotted var(--color-text);outline-offset:4px}.profile img{display:block;max-width:100%}.profile img[data-thumbhash]{background-size:cover;background-repeat:no-repeat}.profile ul{list-style:none}.profile__main{padding:var(--spacing-xl) var(--spacing-md);padding-top:calc(var(--spacing-xl) + env(safe-area-inset-top,0px));padding-bottom:calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:2.5rem}.profile__rule,.profile__sidebar{display:none}.profile__header{display:flex;flex-direction:column;gap:var(--spacing-lg)}.profile__portrait{width:55%;max-width:16rem;height:auto;aspect-ratio:1;object-fit:cover;background:#d9d8d4;filter:grayscale(1)}.profile__name{font-size:clamp(2.25rem,11vw,2.75rem);font-weight:700;line-height:.95;letter-spacing:-.02em;text-transform:uppercase}.profile__role{margin-top:var(--spacing-md)}.profile__contact{margin-top:var(--spacing-sm);display:flex;flex-wrap:wrap;column-gap:var(--spacing-lg);row-gap:.25rem;color:var(--color-text-muted)}.profile__contact a{border-bottom:1px dotted transparent;transition:border-color var(--transition-fast) ease,color var(--transition-fast) ease}.profile__contact a:hover{color:var(--color-text);border-bottom-color:var(--color-text)}.profile__bio{max-width:34rem;font-size:1.0625rem}.profile__bio p+p{margin-top:var(--spacing-md)}.studio-link{display:flex;flex-direction:column;gap:var(--spacing-md)}.studio-link__frame{display:block;overflow:hidden;border:1px solid rgba(26,26,26,.1)}.studio-link__image{width:100%;height:auto;transition:transform .6s var(--easing-smooth)}.studio-link__label{display:flex;flex-direction:column}.studio-link__kicker{font-size:.75rem;font-weight:400;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:.25rem}.studio-link__name{font-size:1.75rem;font-weight:700;line-height:1.05;letter-spacing:-.01em}.studio-link__tagline{font-size:.875rem;color:var(--color-text-muted)}.studio-link__url{margin-top:var(--spacing-sm);font-size:.875rem;border-bottom:1px dotted var(--color-text);align-self:flex-start}.studio-link__arrow{display:inline-block;transition:transform var(--transition-fast) var(--easing-smooth)}.studio-link:hover .studio-link__image{transform:scale(1.03)}.studio-link:hover .studio-link__arrow,.studio-link:focus-visible .studio-link__arrow{transform:translate(4px)}.studio-link--text-only{border-top:1px dotted var(--color-text);border-bottom:1px dotted var(--color-text);padding:var(--spacing-lg) 0}.profile__cv{display:flex;flex-direction:column;gap:var(--spacing-xl)}.cv-section__heading{font-size:.75rem;font-weight:400;text-transform:uppercase;letter-spacing:.08em;padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm);border-bottom:1px dotted var(--color-text)}.cv-entry{display:grid;grid-template-columns:6.25rem 1fr;column-gap:var(--spacing-md);padding:.3rem 0;font-size:.9375rem;line-height:1.4}.cv-entry__years{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.cv-entry__title{grid-column:2}.cv-entry__detail{grid-column:2;font-size:.875rem;color:var(--color-text-muted)}.profile__footer{font-size:.75rem;color:var(--color-text-muted)}@keyframes profile-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes profile-fade{0%{opacity:0}to{opacity:1}}.profile__header,.profile__bio,.studio-link,.profile__cv{animation:profile-rise .7s var(--easing-smooth) both}.profile__bio{animation-delay:80ms}.studio-link{animation-delay:.16s}.profile__cv{animation-delay:.24s}@media(prefers-reduced-motion:reduce){.profile *,.profile *:before,.profile *:after{animation:none!important;transition:none!important}}@media(min-width:768px){.profile__main{width:var(--contact-left);padding:4rem 4vw 3rem;gap:4rem;min-height:100vh}.profile__rule{display:block;position:fixed;top:0;width:0;height:100%;border-left:1px dotted var(--color-text);pointer-events:none}.profile__rule--left{left:var(--contact-left)}.profile__rule--right{left:var(--contact-right)}.profile__sidebar{display:flex;align-items:center;justify-content:center;position:fixed;top:0;left:var(--contact-left);width:var(--col-contact-width);height:100vh;overflow:hidden;container-type:size}.profile__sidebar-title{font-size:min(calc(85cqh / (var(--chars) * .6)),75cqw);font-weight:700;line-height:.85;letter-spacing:-.02em;white-space:nowrap;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);animation:profile-fade .8s ease both}.profile__header{flex-direction:row;align-items:flex-end;gap:2.5vw}.profile__portrait{flex:0 0 auto;width:16vw;max-width:18rem}.profile__name{font-size:clamp(2.75rem,4.6vw,5rem)}.profile__bio{font-size:1.1875rem;line-height:1.45}.studio-link{position:fixed;top:50%;left:calc(var(--contact-right) + var(--col4-gap));width:calc(var(--col4-width) - 2vw);transform:translateY(-50%);animation-name:profile-fade}.studio-link__image{max-height:55vh;object-fit:cover}.profile__cv{max-width:40rem}.cv-entry{grid-template-columns:9rem 1fr}}@media print{@page{margin:18mm 16mm}body.profile{background:#fff;font-size:10pt}.profile__rule,.profile__sidebar,.studio-link__frame,.profile__portrait,.studio-link__kicker,.studio-link__arrow,.profile__footer{display:none!important}.profile__main{width:auto;min-height:0;padding:0;gap:8mm}.profile__header,.profile__bio,.studio-link,.profile__cv{animation:none}.profile__name{font-size:26pt}.profile__bio{font-size:10.5pt;max-width:none}.studio-link{position:static;transform:none;width:auto;flex-direction:row;gap:0}.studio-link__label{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:3mm}.studio-link__name{font-size:11pt}.studio-link__url{margin:0;border:none}.cv-section{break-inside:avoid}.cv-section__heading{border-bottom:.5pt solid var(--color-text)}.cv-entry{grid-template-columns:32mm 1fr;font-size:10pt}}
