html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,main,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block}*[hidden]{display:none}body{line-height:1}menu,ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit;color:inherit}@font-face{font-family:PP Neue Montreal;font-style:normal;font-weight:400;font-display:swap;src:local("PP Neue Montreal"),local("PP Neue Montreal Book"),url(/portfolio/fonts/pp-neue-montreal/ppneuemontreal-book.woff) format("woff")}@font-face{font-family:PP Neue Montreal;font-style:normal;font-weight:500;font-display:swap;src:local("PP Neue Montreal"),local("PP Neue Montreal Medium"),url(/portfolio/fonts/pp-neue-montreal/ppneuemontreal-medium.woff) format("woff")}:root{--color-black: #000;--color-white: #fff;--color-accent: #b9d9f5;--color-accent-dark: #76BAF5;--color-dark: #151515;--color-dark-grey: #d4d5d7;--color-grey: #b4b4b4;--color-light-grey: #edeef0;--color-opacity-20: rgba(15, 15, 15, .2);--color-opacity-30: rgba(15, 15, 15, .3);--color-opacity-60: rgba(0, 0, 0, .6);--color-success: rgb(0, 186, 0);--color-surface: var(--color-light-grey);--color-background: var(--color-white);--color-panel: var(--color-surface);--color-muted: var(--color-opacity-60);--color-text: var(--color-dark);--color-border: var(--color-dark-grey);--font-family-base: "PP Neue Montreal", "Neue Montreal", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-size-caption: 11px;--font-size-ui: 12px;--font-size-label: 13px;--font-size-meta: 14px;--font-size-body: 16px;--font-size-body-lg: 18px;--font-size-lead: 20px;--font-size-subheading: 24px;--font-size-section-title: 40px;--font-size-heading-md: clamp(22px, 3.2vw, 34px);--font-size-heading-lg: clamp(28px, 4.2vw, 48px);--font-size-heading-xl: clamp(34px, 6vw, 64px);--line-height-tight: 1.05;--line-height-display: 1.06;--line-height-heading: 1.1;--line-height-subheading: 1.15;--line-height-copy: 1.3;--line-height-body: 1.45;--line-height-ui: 1.25;--letter-spacing-tight: -.02em;--letter-spacing-ui: .06em;--letter-spacing-brand: .08em;--container-max-width: 1440px;--container-padding: 16px;--width-max: 100%;--section-padding-block: 28px;--header-padding-top: 20px;--header-padding-bottom: 14px;--header-desktop-offset-y: 6px;--header-height: 95px;--space-2xs: 4px;--space-xs: 8px;--space-sm: 10px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 24px;--space-3xl: 28px;--space-4xl: 32px;--space-5xl: 36px;--space-6xl: 40px;--space-7xl: 48px;--space-8xl: 60px;--space-9xl: 72px;--space-10xl: 90px;--space-11xl: 140px;--space-page-gap: var(--space-10xl);--space-page-gap-compact: var(--space-9xl);--space-section-gap: var(--space-8xl);--space-block-gap: var(--space-6xl);--space-card-gap: var(--space-xl);--space-chip-gap: var(--space-xs);--radius-sm: 2px;--card-padding: var(--space-xl);--button-padding-y: 10px;--button-padding-x: 12px;--button-gap: var(--space-xs);--focus-ring: 0 0 0 3px var(--color-opacity-20)}@media(min-width:1440px){:root{--container-padding: 32px;--section-padding-block: 32px;--header-padding-top: 18px;--header-padding-bottom: 12px;--header-desktop-offset-y: 6px}}@media(min-width:1200px)and (max-width:1439px){:root{--container-padding: 28px;--section-padding-block: 32px;--header-padding-top: 18px;--header-padding-bottom: 12px;--header-desktop-offset-y: 6px}}@media(min-width:1024px)and (max-width:1199px){:root{--container-padding: 24px;--section-padding-block: 30px;--header-padding-top: 18px;--header-padding-bottom: 12px;--header-desktop-offset-y: 6px}}@media(min-width:768px)and (max-width:1023px){:root{--container-padding: 20px;--section-padding-block: 28px;--header-padding-top: 16px;--header-padding-bottom: 10px;--header-desktop-offset-y: 0px}}@media(min-width:480px)and (max-width:767px){:root{--container-padding: 20px;--section-padding-block: 24px;--header-padding-top: 14px;--header-padding-bottom: 10px;--header-desktop-offset-y: 0px}}@media(max-width:479px){:root{--container-padding: 20px;--section-padding-block: 22px;--header-padding-top: 12px;--header-padding-bottom: 10px;--header-desktop-offset-y: 0px}}.container{width:100%;max-width:var(--container-max-width);margin-inline:auto;padding-inline:var(--container-padding)}.container--fluid{width:100%;max-width:none;padding:0}@media(max-width:1024px){.container--mobile-fluid{width:100%;max-width:none;padding:0}}.section{padding-block:var(--section-padding-block)}.flow{display:grid;gap:var(--flow-space, var(--space-lg))}.stack-2xs,.stack-xs,.stack-sm,.stack-md,.stack-lg,.stack-xl,.stack-2xl,.stack-page{display:flex;flex-direction:column}.stack-2xs{gap:var(--space-2xs)}.stack-xs{gap:var(--space-xs)}.stack-sm{gap:var(--space-sm)}.stack-md{gap:var(--space-md)}.stack-lg{gap:var(--space-lg)}.stack-xl{gap:var(--space-xl)}.stack-2xl{gap:var(--space-2xl)}.stack-page{gap:var(--space-page-gap)}.cluster-xs,.cluster-sm,.cluster-md,.cluster-lg,.cluster-xl{display:flex;flex-wrap:wrap;align-items:center}.cluster-xs{gap:var(--space-xs)}.cluster-sm{gap:var(--space-sm)}.cluster-md{gap:var(--space-md)}.cluster-lg{gap:var(--space-lg)}.cluster-xl{gap:var(--space-xl)}.text-muted{color:var(--color-muted)}.text-uppercase{text-transform:uppercase}.type-caption{font-size:var(--font-size-caption);line-height:var(--line-height-copy)}.type-label{font-size:var(--font-size-label);line-height:1.2}.type-meta{font-size:var(--font-size-meta);line-height:var(--line-height-copy)}.text-ui,.type-ui{font-size:var(--font-size-ui);line-height:var(--line-height-ui);letter-spacing:var(--letter-spacing-ui)}.text-brand,.type-brand{font-size:var(--font-size-ui);line-height:var(--line-height-ui);letter-spacing:var(--letter-spacing-brand);text-transform:uppercase}.type-copy{font-size:var(--font-size-body);line-height:var(--line-height-copy)}.type-body{font-size:var(--font-size-body);line-height:var(--line-height-body)}.type-lead{font-size:var(--font-size-lead);line-height:var(--line-height-copy)}.type-subheading{font-size:var(--font-size-subheading);line-height:1.2}.section-title{margin:0;font-weight:var(--font-weight-regular);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-section-title)}.heading-xl{margin:0;font-weight:var(--font-weight-regular);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-heading-xl)}.heading-lg{margin:0;font-weight:var(--font-weight-regular);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-heading-lg)}.heading-md{margin:0;font-weight:var(--font-weight-regular);line-height:var(--line-height-subheading);letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-heading-md)}.divider{border-top:1px solid var(--color-border)}.panel{background:var(--color-panel);border:1px solid var(--color-border)}.surface{background:var(--color-background);border:1px solid var(--color-border)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--button-gap);padding:var(--button-padding-y) var(--button-padding-x);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);font-size:var(--font-size-label);line-height:1.2;cursor:pointer}.button:hover{background:#00000005}.button:active{transform:translateY(1px)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}::selection{background:#1111111f}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{font-family:var(--font-family-base);font-size:var(--font-size-body);line-height:var(--line-height-body);font-weight:var(--font-weight-regular);color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.background-dark,.backround-dark{background-color:var(--color-dark)}.grid-layout{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-4xl);width:100%}@media(max-width:1023px){.grid-layout{grid-template-columns:auto}}@media(max-width:1023px){.stack-page{gap:var(--space-page-gap-compact)}}@keyframes figma-drift-a{0%,8%,to{transform:translateZ(0)}20%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.8),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.35),0)}38%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -1),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.55),0)}62%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.35),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.8),0)}78%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.08),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.92),0)}}@keyframes figma-drift-b{0%,10%,to{transform:translateZ(0)}18%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .55),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.2),0)}34%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .95),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.6),0)}56%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .3),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.95),0)}74%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.15),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.5),0)}88%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .1),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.1),0)}}@keyframes figma-drift-c{0%,12%,to{transform:translateZ(0)}22%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.45),calc(var(--cursor-drift-distance, var(--cursor-motion)) * .25),0)}40%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.9),calc(var(--cursor-drift-distance, var(--cursor-motion)) * .08),0)}58%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.55),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.42),0)}76%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .05),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.88),0)}}@keyframes figma-drift-d{0%,6%,to{transform:translateZ(0)}16%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .2),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.55),0)}32%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .75),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.9),0)}52%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * .15),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.25),0)}70%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.35),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.65),0)}86%{transform:translate3d(calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.05),calc(var(--cursor-drift-distance, var(--cursor-motion)) * -.12),0)}}.menu[data-astro-cid-l2koc4mc]{display:flex;align-items:stretch;height:100%;flex-grow:1}.menu__navigation[data-astro-cid-l2koc4mc]{display:flex;align-items:start;gap:var(--space-xs);flex-grow:1;min-height:100%}.menu__navigation-divider[data-astro-cid-l2koc4mc]{font-size:var(--font-size-ui);line-height:var(--line-height-ui);letter-spacing:var(--letter-spacing-ui);color:var(--color-text)}.menu__navigation-link[data-astro-cid-l2koc4mc]{font-size:12px;line-height:1.2;letter-spacing:.06em;text-transform:uppercase;text-decoration:none}.menu__navigation-link[data-astro-cid-l2koc4mc]:hover{color:var(--color-accent-dark)}.menu__location[data-astro-cid-l2koc4mc]{font-size:12px;line-height:1.25;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;min-height:100%}.mobile-menu[data-astro-cid-vu64fxay]{display:none}.mobile-menu__trigger[data-astro-cid-vu64fxay]{padding:0;border:0;background:transparent;color:var(--color-text);cursor:pointer;font-size:13px;line-height:1;letter-spacing:.08em;text-transform:uppercase}.mobile-menu__dialog[data-astro-cid-vu64fxay]{width:100vw;max-width:none;height:100dvh;margin:0;padding:0;border:0;background:var(--color-white);color:var(--color-text);overflow:hidden}.mobile-menu__dialog[data-astro-cid-vu64fxay]::backdrop{background:#fffffff5}.mobile-menu__panel[data-astro-cid-vu64fxay]{position:relative;display:flex;min-height:100dvh;flex-direction:column;align-items:center;justify-content:center;padding:28px 24px calc(45px + env(safe-area-inset-bottom,0px));background:var(--color-white)}.mobile-menu__close[data-astro-cid-vu64fxay]{position:absolute;top:24px;right:24px;display:inline-flex;height:28px;width:28px;align-items:center;justify-content:center;padding:0;border:0;background:transparent;cursor:pointer}.mobile-menu__close-line[data-astro-cid-vu64fxay]{position:absolute;width:20px;height:1.5px;background:var(--color-text)}.mobile-menu__close-line[data-astro-cid-vu64fxay]:first-child{transform:rotate(45deg)}.mobile-menu__close-line[data-astro-cid-vu64fxay]:last-child{transform:rotate(-45deg)}.mobile-menu__nav[data-astro-cid-vu64fxay]{display:flex;flex-direction:column;align-items:center;gap:32px}.mobile-menu__link[data-astro-cid-vu64fxay]{color:var(--color-text);text-decoration:none;text-align:center;font-size:32px;line-height:1.25;letter-spacing:.01em;text-transform:uppercase}.mobile-menu__link[data-astro-cid-vu64fxay]:hover,.mobile-menu__link[data-astro-cid-vu64fxay]:focus-visible{text-decoration:underline}.mobile-menu__location[data-astro-cid-vu64fxay]{position:absolute;bottom:calc(45px + env(safe-area-inset-bottom,0px));font-size:14px;line-height:1;letter-spacing:.01em;text-transform:uppercase}.has-mobile-menu{overflow:hidden}@media(max-width:767px){.mobile-menu[data-astro-cid-vu64fxay]{display:flex;align-items:flex-start;justify-content:flex-end;flex:0 0 auto}}.site-header[data-astro-cid-j2devmb2]{background:var(--color-background);height:var(--header-height)}.site-header__container[data-astro-cid-j2devmb2]{box-sizing:border-box;height:100%;padding-top:var(--header-padding-top);padding-bottom:var(--header-padding-bottom)}.site-header__grid[data-astro-cid-j2devmb2]{display:flex;height:100%;justify-content:space-between;align-items:stretch;gap:12px}.site-header__nav[data-astro-cid-j2devmb2]{display:flex;flex-grow:1;min-height:100%}.site-header__mobile-nav[data-astro-cid-j2devmb2]{display:none}@media(min-width:1024px){.site-header__grid[data-astro-cid-j2devmb2]{gap:24px}.site-header__location[data-astro-cid-j2devmb2]{justify-self:end}}@media(max-width:768px){.site-header[data-astro-cid-j2devmb2]{height:fit-content}.site-header__container[data-astro-cid-j2devmb2],.site-header__grid[data-astro-cid-j2devmb2]{height:auto}.site-header__grid[data-astro-cid-j2devmb2]{align-items:center}}@media(max-width:767px){.site-header__grid[data-astro-cid-j2devmb2]{gap:16px}.site-header__brand[data-astro-cid-j2devmb2]{gap:2px}.site-header__brand-name[data-astro-cid-j2devmb2],.site-header__brand-profession[data-astro-cid-j2devmb2]{padding-left:0}.site-header__nav[data-astro-cid-j2devmb2]{display:none}.site-header__mobile-nav[data-astro-cid-j2devmb2]{display:flex;flex:0 0 auto;align-items:flex-start}}
