@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-weight-light:300;--font-weight-medium:500;--tracking-tight:-.025em;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-family-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.mb-5{margin-bottom:calc(var(--space-4) * 5)}.mb-prose{margin-bottom:var(--prose-paragraph-gap)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.bg-paper{background-color:var(--beige)}.font-sans{font-family:var(--font-family-sans)}.text-body-copy{font-size:var(--text-body)}.text-story{font-size:var(--text-story-heading)}.leading-body-copy{--tw-leading:1.08;line-height:1.08}.leading-none{--tw-leading:1;line-height:1}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-body-copy{--tw-tracking:var(--tracking-body);letter-spacing:var(--tracking-body)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-wrap{text-wrap:wrap}.text-ink{color:var(--black)}.underline{text-decoration-line:underline}.decoration-1{text-decoration-thickness:1px}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.last\:mb-0:last-child{margin-bottom:0}@media (min-width:50.625rem){.tablet\:text-body-compact{font-size:var(--text-body-base)}.tablet\:leading-body-compact{--tw-leading:1.1;line-height:1.1}}}@font-face{font-family:Mabry Pro;src:url(/fonts/MabryPro-Light.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Mabry Pro;src:url(/fonts/MabryPro-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Mabry Pro;src:url(/fonts/MabryPro-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Mabry Pro;src:url(/fonts/MabryPro-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Mabry Pro;src:url(/fonts/MabryPro-Black.ttf)format("truetype");font-weight:900;font-style:normal;font-display:swap}:root{--beige:#f6f3ec;--black:#010103;--white:#fff;--line-dark:#f6f3ec4d;--line-light:#01010326;--field:#f6f3ec14;--input:#f6f3ec1f;--focus-light:#f6f3ec8c;--overlay-dim:#01010329;--lightbox-backdrop:#010103f7;--lightbox-control:#f6f3ecc7;--placeholder-stripe-dark:#eceae4;--placeholder-stripe-light:#f2f0ea;--placeholder-pattern:#01010309;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-28:28px;--space-32:32px;--space-40:40px;--space-48:48px;--space-64:64px;--space-80:80px;--space-88:88px;--text-body-base:16px;--text-body-sm:var(--text-body-base);--text-ui:var(--text-body-base);--text-caption:var(--text-body-base);--text-body:20px;--text-lead:24px;--text-title:48px;--text-section:64px;--text-display:88px;--text-story-heading:32px;--font-family-sans:"Mabry Pro", Arial, sans-serif;--weight-light:300;--weight-regular:400;--weight-medium:500;--tracking-tight:-.03em;--tracking-body:-.01em;--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.23, 1, .32, 1);--duration-fast:.16s;--duration-hover:.18s;--duration-base:.2s;--duration-panel:.24s;--duration-control:.25s;--duration-medium:.3s;--duration-nav:.35s;--duration-media:.45s;--duration-reveal:.6s;--duration-line:.8s;--radius-control:var(--space-8);--radius-pill:999px;--layout-page-top:160px;--layout-section-end:180px;--layout-content-end:120px;--prose-paragraph-gap:18px;--gutter:var(--space-20);--pinned-visual-height:90vh;--z-content:3;--z-overlay:200;--z-nav:210;--z-lightbox:300}*{box-sizing:border-box}html{background:var(--beige);scroll-behavior:smooth}body{font-family:var(--font-family-sans);font-kerning:normal;font-variant-ligatures:common-ligatures contextual;font-feature-settings:"kern" 1, "liga" 1, "clig" 1, "calt" 1;color:var(--black);background:var(--beige);margin:0;font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}img,video{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);line-height:1}.page{min-height:100vh;overflow:clip}.page--pinned{overflow:visible}.page--beige{background:var(--beige);color:var(--black)}.page--black{background:var(--black);color:var(--white)}.cover{z-index:var(--z-content);position:relative}.page--beige>.cover{background:var(--beige)}.page--black>.cover{background:var(--black)}.section,.dark-section{padding-inline:var(--gutter)}.eyebrow{font-size:var(--text-caption);opacity:.6;line-height:1.2}.pill-link{width:fit-content;min-height:var(--space-32);margin-top:var(--space-20);border-radius:var(--radius-pill);padding:var(--space-8) var(--space-12);font-size:var(--text-ui);transition:border-radius var(--duration-control) var(--ease), transform var(--duration-fast) var(--ease);border:1px solid;justify-content:center;align-items:center;line-height:1;display:inline-flex}.pill-link:active{transform:scale(.98)}.pill-link:focus-visible{outline-offset:var(--space-4);outline:2px solid}@media (hover:hover) and (pointer:fine){.pill-link:hover{border-radius:var(--radius-control)}}.site-nav{z-index:var(--z-nav);column-gap:var(--gutter);padding:18px var(--gutter);font-size:var(--text-body-sm);color:var(--black);transition:transform var(--duration-nav) var(--ease), color var(--duration-base) var(--ease);mix-blend-mode:normal;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;line-height:1;display:grid;position:fixed;inset:0 0 auto}.site-nav--specimen{z-index:1;position:relative;inset:auto}.site-nav--dark{color:var(--white)}.site-nav--hidden{transform:translateY(-100%)}.site-nav__name,.site-nav__detail{text-align:left;min-width:0}.site-nav__menu{appearance:none;text-align:right;cursor:pointer;width:100%;min-width:0;transition:transform var(--duration-fast) var(--ease);background:0 0;border:0;padding:0}.site-nav__menu:active{transform:scale(.97)}.menu-overlay{z-index:var(--z-overlay);padding:49px var(--gutter) var(--space-28);color:var(--white);background:var(--black);display:grid;position:fixed;inset:0}.menu-overlay__links{align-self:center;width:100%;display:grid}.menu-overlay__links a{padding-block:var(--space-8) 5px;letter-spacing:-.04em;transition:opacity var(--duration-base) var(--ease);font-size:clamp(48px,7.3vw,88px);line-height:.96;display:block}.menu-overlay__links:hover a{opacity:.25}.menu-overlay__links:hover a:hover,.menu-overlay__links a.is-current{opacity:1}.footer{z-index:var(--z-content);min-height:100vh;padding:var(--space-88) var(--gutter) var(--space-40);background:var(--black);color:var(--white);position:relative}.footer__links{margin-top:18px;display:grid}.footer__links a{min-height:var(--space-80);padding-block:var(--space-16);border-top:1px solid var(--line-dark);grid-template-columns:1fr auto;align-items:center;display:grid}.footer__links a:last-child{border-bottom:1px solid var(--line-dark)}.footer__links span{font-size:var(--text-title);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);line-height:1}.footer__links small{font-size:var(--text-body-sm);font-weight:var(--weight-regular)}.line{width:100%;height:1px;margin-block:var(--space-64) var(--space-20);background:var(--black);transform-origin:0;transition:transform var(--duration-line) var(--ease);display:block;transform:scaleX(0)}.line--visible{transform:scaleX(1)}.line--dark{background:var(--line-dark)}.reveal{opacity:0;transform:translateY(var(--space-24));transition:opacity var(--duration-reveal) var(--ease), transform var(--duration-reveal) var(--ease)}.reveal--quick{transform:translateY(var(--space-8));transition:opacity var(--duration-medium) var(--ease), transform var(--duration-medium) var(--ease)}.reveal--visible{opacity:1;transform:none}.home-intro{z-index:var(--z-content);height:75vh;padding:188px var(--gutter) 0;position:relative}.home-intro h1{font-size:var(--text-display);max-width:550px}.home-intro__caption{z-index:2;left:var(--gutter);right:var(--gutter);bottom:var(--space-40);font-size:var(--text-caption);justify-content:space-between;display:flex;position:absolute}.pinned-visual{z-index:1;height:var(--pinned-visual-height);pointer-events:none;position:sticky;top:0;overflow:clip}.pinned-visual img,.pinned-visual video{object-fit:cover;width:100%;height:100%;display:block}.pinned-visual__gap{pointer-events:none;height:75vh}.home-work{padding-top:var(--space-88);padding-bottom:0}.home-work>.line{margin-block:0 var(--space-20)}.home-work h2,.home-about h2{font-size:var(--text-section)}.project-grid{display:grid}.home-work>.project-grid{margin-top:var(--space-64)}.project-grid--home{gap:var(--space-40) var(--space-20);grid-template-columns:repeat(2,1fr)}.project-grid--all{gap:var(--space-40) var(--space-20);grid-template-columns:repeat(3,1fr)}.project-card-reveal{min-width:0}.project-card-reveal .project-card{height:100%}.project-card{gap:var(--space-8);min-width:0;font-size:var(--text-body-sm);display:grid}.project-card__media{aspect-ratio:.51;background:repeating-linear-gradient(135deg, var(--placeholder-stripe-dark) 0 2px, var(--placeholder-stripe-light) 2px 5px);width:100%;display:block;position:relative;overflow:hidden}.project-grid--all .project-card__media{aspect-ratio:1}.project-grid--home .project-card__media{aspect-ratio:.73}.project-card--compact .project-card__media{aspect-ratio:1.49}.project-grid--home .project-card--compact .project-card__media{aspect-ratio:.73}.project-card__media img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-hover) var(--ease)}.project-card__placeholder{background:repeating-linear-gradient(135deg, var(--placeholder-pattern) 0 2px, transparent 2px 6px);position:absolute;inset:0}.project-card__label{line-height:1;display:grid;overflow:hidden}.project-card__title,.project-card__action{transition:opacity var(--duration-hover) var(--ease), transform var(--duration-hover) var(--ease);grid-area:1/1}.project-card__action{opacity:0;transform:translateY(100%)}.project-card:focus-visible{outline-offset:var(--space-4);outline:2px solid}@media (hover:hover) and (pointer:fine){.project-card:hover .project-card__media img{transform:scale(1.015)}.project-grid--all .project-card:hover .project-card__title{opacity:0;transform:translateY(-100%)}.project-grid--all .project-card:hover .project-card__action{opacity:1;transform:none}}.home-about{padding-top:176px;padding-bottom:var(--space-88)}.home-about>.line{margin-block:0 var(--space-20)}.home-about>.home-about__grid{margin-top:var(--space-64)}.home-about__grid{gap:var(--space-20);grid-template-columns:1.2fr 1fr 1fr;align-items:start;display:grid}.home-about__grid img{aspect-ratio:.94;object-fit:cover;width:100%}.home-about__grid p{font-size:var(--text-body);letter-spacing:var(--tracking-body);line-height:1.05}.home-about__link{margin-left:calc(37.5% + 8px)}.page-title{height:590px;padding:0 var(--gutter) var(--space-80);align-items:flex-end;display:flex}.page-title h1{font-size:var(--text-display)}.case-listing{padding-bottom:var(--layout-section-end)}.profile-intro{padding:var(--layout-page-top) var(--gutter) var(--space-64);flex-direction:column;display:flex}.profile-intro h1{font-size:var(--text-display);max-width:520px}.scroll-more{font-size:var(--text-caption);margin-top:100px}.profile-hero{width:100%;height:var(--pinned-visual-height);overflow:hidden}.profile-hero img{object-fit:cover;width:100%;height:100%}.profile-overview{padding-top:var(--space-80);padding-bottom:var(--space-80)}.split-copy{gap:var(--space-20);grid-template-columns:1fr 1fr;display:grid}.split-copy>p:last-child,.split-copy>div:last-child{font-size:var(--text-lead);font-weight:var(--weight-light);letter-spacing:var(--tracking-body);line-height:1.1}.profile-field{padding-top:var(--space-32);padding-bottom:var(--space-64)}.profile-field h2,.cv-section h2{font-size:var(--text-lead)}.profile-field h2{margin-bottom:var(--space-40)}.cv-section h2{margin-bottom:var(--space-24);font-weight:var(--weight-medium)}.field-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.field-card{background:var(--field);height:280px;overflow:hidden}.field-card img{object-fit:cover;width:100%;height:100%}.cv-section{padding-top:36px;padding-bottom:var(--space-40)}.cv-rows,.cv-entry{display:grid}.cv-rows .line{margin:0}.cv-row{min-height:var(--space-48);padding-block:var(--space-12);gap:var(--space-20);font-size:var(--text-body);font-weight:var(--weight-light);grid-template-columns:1fr 1.5fr 1fr;align-items:center;line-height:1.1;display:grid}.cv-row span:last-child{text-align:right}.contact-information{padding-top:var(--space-64);padding-bottom:var(--layout-section-end)}.contact-information .line{margin-top:0;margin-bottom:var(--space-20)}.contact-information .split-copy{padding-block:0 100px}.social-list{justify-items:start;display:grid}.social-list a{line-height:1.25}.contact-form{gap:var(--space-28);width:100%;display:grid}.contact-form label{gap:var(--space-12);font-size:var(--text-body-sm);display:grid}.contact-form input,.contact-form textarea{width:100%;color:var(--white);background:var(--input);padding:var(--space-12);transition:outline-color var(--duration-base) var(--ease);border:0;border-radius:0;outline:1px solid #0000}.contact-form input{height:44px}.contact-form textarea{resize:vertical;height:140px}.contact-form input:focus,.contact-form textarea:focus{outline-color:var(--focus-light)}.contact-form button{background:var(--beige);color:var(--black);padding:var(--space-12) var(--space-20);cursor:pointer;transition:transform var(--duration-fast) var(--ease);border:0;justify-self:start}.contact-form button:active{transform:scale(.97)}.contact-form__button-labels{place-items:center;display:grid}.contact-form__button-label{transition:opacity var(--duration-base) var(--ease), transform var(--duration-base) var(--ease);grid-area:1/1}.contact-form__button-label--idle{opacity:1;transform:none}.contact-form__button-label--sent{opacity:0;transform:translateY(var(--space-4))}.contact-form button.is-sent .contact-form__button-label--idle{opacity:0;transform:translateY(calc(var(--space-4) * -1))}.contact-form button.is-sent .contact-form__button-label--sent{opacity:1;transform:none}.index-page{isolation:isolate;min-height:100vh;padding:258px var(--gutter) var(--space-80);position:relative}.index-background{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.index-background:after{content:"";background:var(--overlay-dim);position:absolute;inset:0}.index-background__image{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--duration-panel) var(--ease-out);position:absolute;inset:0}.index-background__image.is-active{opacity:1}.index-nav{z-index:1;justify-items:start;display:grid;position:relative}.index-nav a{font-size:var(--text-title);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);transition:opacity var(--duration-fast) var(--ease);line-height:1.22}.index-nav--active a{opacity:.28}.index-nav--active a.is-active{opacity:1}.index-nav a:focus-visible{outline-offset:var(--space-4);outline:2px solid}.detail-heading{min-height:360px;padding:132px var(--gutter) var(--space-40);align-content:end;display:grid}.detail-heading__meta{gap:var(--space-20);font-size:var(--text-caption);grid-template-columns:3fr 1fr;line-height:1.2;display:grid}.detail-heading__meta p:last-child{text-align:right}.detail-heading h1{margin-top:var(--space-40);font-size:var(--text-display)}.detail-hero{width:100%;height:auto}.case-study-gallery-link{cursor:zoom-in;min-width:0;display:block;position:relative;overflow:hidden}.case-study-gallery-link--hero{width:100%}.case-study-gallery-link .case-study-image,.case-study-gallery-link .detail-hero{transition:transform var(--duration-media) var(--ease), filter var(--duration-control) var(--ease)}.case-study-gallery-link:focus-visible{outline:2px solid var(--white);outline-offset:-6px;box-shadow:inset 0 0 0 8px var(--black)}.case-study-intro{gap:var(--space-20);margin:var(--space-88) var(--gutter) 0;padding:0 0 var(--space-88);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.case-study-intro>.eyebrow{grid-column:1/span 3}.case-study-intro__copy{grid-column:5/span 6;max-width:720px}.case-study-intro__copy p{margin-bottom:var(--space-24);font-size:var(--text-lead);letter-spacing:-.015em;line-height:1.15}.case-study-content{gap:var(--space-64);padding:0 var(--gutter) var(--layout-content-end);display:grid}.case-study-image{width:100%;height:auto}.case-study-media{margin:0;overflow:hidden}.case-study-notes{gap:var(--space-20);grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;display:grid}.case-study-notes__copy{padding-top:var(--space-16)}.case-study-notes__copy>.eyebrow{margin-bottom:var(--space-32)}.case-study-media-grid{gap:var(--space-20);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.case-study-story h2{margin-bottom:var(--space-32);font-size:var(--text-title)}.case-study-next{padding:var(--space-88) var(--gutter) var(--layout-content-end)}.case-study-next__meta{justify-content:space-between;gap:var(--space-20);font-size:var(--text-caption);line-height:1.2;display:flex}.case-study-next__title{gap:var(--space-20);padding:var(--space-24) 0 var(--space-64);grid-template-columns:1fr auto;align-items:center;display:grid}.case-study-next__title h2{font-size:var(--text-section)}.case-study-next__title span{font-size:var(--text-title);transition:transform var(--duration-medium) var(--ease);line-height:1}.case-study-next__media{overflow:hidden}.case-study-next__media img{aspect-ratio:1.72;object-fit:cover;width:100%;transition:transform var(--duration-reveal) var(--ease)}@media (hover:hover) and (pointer:fine){.case-study-gallery-link:hover .case-study-image,.case-study-gallery-link:hover .detail-hero{transform:scale(1.008)}.case-study-next a:hover .case-study-next__title span{transform:translateX(var(--space-8))}.case-study-next a:hover .case-study-next__media img{transform:scale(1.01)}}.case-study-lightbox{--yarl__portal_zindex:var(--z-lightbox);--yarl__color_backdrop:var(--lightbox-backdrop);--yarl__color_button:var(--lightbox-control);--yarl__color_button_active:var(--beige);--yarl__button_filter:none;--yarl__counter_filter:none;--yarl__icon_size:28px;--yarl__button_padding:10px;--yarl__toolbar_padding:max(var(--space-12), env(safe-area-inset-top)) max(var(--space-12), env(safe-area-inset-right));--yarl__counter_top:env(safe-area-inset-top);--yarl__counter_left:env(safe-area-inset-left)}.case-study-lightbox .yarl__button{width:var(--space-48);height:var(--space-48);opacity:.78;transition:opacity var(--duration-base) var(--ease), transform var(--duration-fast) var(--ease)}.case-study-lightbox .yarl__button:active{transform:scale(.94)}.case-study-lightbox .yarl__button:focus-visible{outline:2px solid var(--beige);outline-offset:-4px;border-radius:50%}.case-study-lightbox .yarl__counter{font-size:var(--text-caption);font-weight:var(--weight-regular);letter-spacing:.01em}.case-study-lightbox .yarl__slide_image{max-width:100%;max-height:100%}@media (hover:hover) and (pointer:fine){.case-study-lightbox .yarl__button:hover{opacity:1}}.not-found{min-height:100vh;padding:var(--space-80) var(--space-20);text-align:center;background:var(--beige);flex-direction:column;justify-content:center;align-items:center;display:flex}.not-found h1{font-size:var(--text-display)}.not-found a{margin-top:var(--space-28);font-size:var(--text-body-sm)}@media (min-width:810px) and (max-width:1199.98px){.home-intro{padding-top:188px}.project-grid--all{grid-template-columns:repeat(2,1fr)}.project-grid--all .project-card__media{aspect-ratio:1}.home-about__grid{grid-template-columns:1fr 1.4fr}.home-about__grid p:last-child{grid-column:2}.home-about__link{margin-left:calc(41.66% + 8px)}}@media (max-width:809.98px){:root{--gutter:var(--space-16);--text-display:64px;--text-section:56px}.site-nav{grid-template-columns:1fr auto;padding-top:18px}.site-nav__detail{display:none}.site-nav__menu{grid-column:2}.menu-overlay{padding-inline:var(--gutter)}.menu-overlay__links a{font-size:56px}.home-intro{padding-top:74px}.home-intro h1{max-width:360px}.home-intro__caption{display:none}.pinned-visual__gap{height:50vh}.home-work h2,.home-about h2{max-width:250px}.home-work h2,.home-work h2:first-line{line-height:.92}.line{margin-block:42px var(--space-20)}.project-grid--home,.project-grid--all{gap:var(--space-32);grid-template-columns:1fr}.project-card__media,.project-grid--all .project-card__media,.project-grid--home .project-card__media,.project-grid--home .project-card--compact .project-card__media{aspect-ratio:1.49}.project-card{font-size:var(--text-body-sm);gap:var(--space-8)}.home-about{padding-top:280px;padding-bottom:var(--space-88)}.home-about__grid{gap:var(--space-20);grid-template-columns:1fr}.home-about__grid img{aspect-ratio:1.75;object-position:center 24%}.home-about__grid p{font-size:var(--text-body-sm);line-height:1.1}.home-about__link{margin-left:0}.footer{min-height:860px;padding-top:70px}.footer__links{margin-top:26px}.footer__links a{min-height:88px}.footer__links span{font-size:var(--text-title)}.page-title{height:400px;padding-bottom:var(--space-80)}.page-title h1{max-width:300px;line-height:.92}.case-listing{padding-bottom:250px}.profile-intro{padding-top:105px}.scroll-more{margin-top:70px}.profile-hero{height:70vh}.profile-overview{padding-top:88px}.split-copy{grid-template-columns:1fr;gap:30px}.split-copy>p:last-child,.split-copy>div:last-child{font-size:var(--text-body)}.field-grid{grid-template-columns:1fr}.field-card{height:280px}.cv-section{padding-top:56px}.cv-section h2,.profile-field h2{font-size:var(--text-lead)}.cv-section h2{margin-bottom:var(--space-24)}.profile-field h2{margin-bottom:36px}.cv-row{min-height:0;padding-block:var(--space-16);font-size:var(--text-body-sm);grid-template-columns:1fr;gap:2px}.cv-row span:last-child{text-align:left}.contact-information{padding-bottom:var(--layout-section-end)}.contact-information .split-copy{grid-template-columns:1fr 1fr;padding-bottom:110px}.contact-information .split-copy:first-of-type{grid-template-columns:1fr}.contact-form{gap:var(--space-28)}.index-page{padding-top:230px}.index-page nav a{font-size:var(--text-title)}.detail-heading{min-height:0;padding:108px var(--gutter) var(--space-24)}.detail-heading__meta{gap:var(--space-16);grid-template-columns:1fr auto}.detail-heading__meta p{min-width:0}.detail-heading__meta p:first-child{max-width:250px}.detail-heading h1{margin-top:var(--space-40)}.case-study-intro{gap:var(--space-40);margin-top:var(--space-64);padding-bottom:var(--space-80);grid-template-columns:1fr}.case-study-intro>.eyebrow,.case-study-intro__copy{grid-column:auto}.case-study-intro__copy p{margin-bottom:var(--space-20);font-size:var(--text-body);line-height:1.2}.case-study-content{gap:var(--space-40);padding-bottom:var(--space-88)}.case-study-notes{gap:var(--space-24);grid-template-columns:1fr}.case-study-notes__copy{padding-top:var(--space-12)}.case-study-notes__copy>.eyebrow{margin-bottom:var(--space-24)}.case-study-media-grid{gap:var(--space-20);grid-template-columns:1fr}.case-study-next{padding-top:var(--space-64);padding-bottom:var(--space-88)}.case-study-next__title{padding:var(--space-20) 0 var(--space-40)}.case-study-next__title h2{font-size:var(--text-section)}.case-study-next__title span{font-size:var(--space-32)}.case-study-next__media img{aspect-ratio:1.49}.not-found h1{font-size:56px}}.ds{padding:var(--layout-page-top) var(--gutter) var(--layout-content-end)}.ds__intro{max-width:640px}.ds__intro h1{font-size:var(--text-display)}.ds__intro p{margin-top:var(--space-20);font-size:var(--text-body);letter-spacing:var(--tracking-body);line-height:1.15}.ds__section{padding-top:var(--space-88)}.ds__section h2{font-size:var(--text-section)}.ds__note{margin-top:var(--space-12);font-size:var(--text-caption);max-width:560px;line-height:1.3}.ds__grid{gap:var(--space-20);margin-top:var(--space-40);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ds-swatch{gap:var(--space-12);display:grid}.ds-swatch__chip{height:var(--layout-content-end)}.ds-swatch__meta{gap:var(--space-4);font-size:var(--text-caption);line-height:1.3;display:grid}.ds-swatch__meta strong{font-weight:var(--weight-medium)}.ds-type{gap:var(--space-32);margin-top:var(--space-40);display:grid}.ds-type__row{gap:var(--space-8);padding-bottom:var(--space-32);border-bottom:1px solid var(--line-light);display:grid}.ds-type__meta{font-size:var(--text-caption)}.ds-type__display{font-size:var(--text-display);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);line-height:1}.ds-type__section{font-size:var(--text-section);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);line-height:1}.ds-type__title{font-size:var(--text-title);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);line-height:1}.ds-type__lead{font-size:var(--text-lead);font-weight:var(--weight-light);letter-spacing:var(--tracking-body);line-height:1.1}.ds-type__body{font-size:var(--text-body);letter-spacing:var(--tracking-body);line-height:1.15}.ds-type__body-base{font-size:var(--text-body-base);line-height:1.2}.ds-type__ui{font-size:var(--text-ui);line-height:1}.ds-type__caption{font-size:var(--text-caption);line-height:1.2}.ds-space{gap:var(--space-12);margin-top:var(--space-40);display:grid}.ds-space__row{gap:var(--space-16);font-size:var(--text-caption);grid-template-columns:88px 1fr 72px;align-items:center;display:grid}.ds-space__bar{height:var(--space-16);background:var(--black)}.ds-token-groups{gap:var(--space-64);margin-top:var(--space-40);display:grid}.ds-token-list{display:grid}.ds-token-list h3{margin-bottom:var(--space-16);font-size:var(--text-lead)}.ds-token-row{gap:var(--space-20);padding-block:var(--space-12);border-top:1px solid var(--line-light);font-size:var(--text-caption);grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) minmax(180px,1fr);line-height:1.3;display:grid}.ds-token-row:last-child{border-bottom:1px solid var(--line-light)}.ds-token-row span:last-child{text-align:right}.ds-components{gap:var(--space-64);margin-top:var(--space-40);display:grid}.ds-components__block{gap:var(--space-16);display:grid}.ds-components__label{font-size:var(--text-caption)}.ds-components__card{max-width:420px}.ds-panel{padding:var(--space-40) var(--gutter)}.ds-panel--dark{background:var(--black);color:var(--white)}.ds-panel--dark .contact-form{max-width:480px}@media (max-width:809.98px){.ds{padding-top:105px;padding-bottom:var(--space-88)}.ds__grid{grid-template-columns:1fr}.ds-swatch__chip{height:88px}.ds-token-row{gap:var(--space-4);grid-template-columns:1fr}.ds-token-row span:last-child{text-align:left}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.line{transition-delay:0s!important}.page-title .reveal,.reveal--quick{transform:none;transition:opacity var(--duration-base) var(--ease)!important;transition-delay:0s!important}.contact-form__button-label{transition:opacity var(--duration-base) var(--ease)!important;transform:none!important}.project-card__media img{transform:none!important}.project-card__title,.project-card__action{transition:opacity var(--duration-fast) var(--ease)!important;transform:none!important}.site-nav__menu,.contact-form button,.pill-link{transition:opacity var(--duration-fast) var(--ease)!important}.site-nav__menu:active,.contact-form button:active,.pill-link:active{opacity:.7;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
