:root{--wc-cloud:#eef0f2;--wc-contact-field:#d5dbe2;--wc-ticket-stage:#e9edf0;--wc-white:#fff;--wc-ink:#111317;--wc-film-surface:#111317;--wc-film-muted:#b4bac2;--wc-film-line:#393d43;--wc-duration-film:1s;--wc-film-chapter-height:150svh;--wc-film-laurel-feature:7.25rem;--wc-film-laurel-support:4.5rem;--wc-film-sequence-gap:clamp(2.5rem, 5vw, 5rem);--wc-film-text-shadow:0 1px 6px var(--wc-ink);--wc-slate:#5f6670;--wc-hairline:#c9ced4;--wc-blue:#2d29f4;--wc-vermilion:#d9362b;--wc-pricing-prop-gold:#9a762b;--wc-duration-scene:4s;--wc-duration-pricing-scene:5.5s;--wc-duration-shuffle:1.1s;--wc-duration-photo-compose:1.4s;--wc-duration-photo-stretch:.68s;--wc-duration-reveal:.64s;--wc-duration-fold:.56s;--wc-ease-settle:cubic-bezier(.22, 1, .36, 1);--wc-font-display:"Unbounded", "Arial Black", sans-serif;--wc-font-sans:"Funnel Sans", Arial, sans-serif;--wc-font-min:.875rem;--wc-font-small:.9375rem;--wc-space-1:.25rem;--wc-space-2:.5rem;--wc-space-3:.75rem;--wc-space-4:1rem;--wc-space-6:1.5rem;--wc-space-8:2rem;--wc-space-12:3rem;--wc-space-16:4rem;--wc-space-24:6rem;--wc-gutter-desktop:1rem;--wc-gutter-mobile:.75rem;--wc-panel-height:36vh;--wc-panel-radius:.875rem;--wc-signature-border:3px dashed var(--wc-vermilion);--wc-duration-interface:.16s;--wc-duration-image:.36s;--wc-duration-layout:.7s;--wc-ease-out:cubic-bezier(.2, .8, .2, 1)}@media (prefers-reduced-motion:reduce){:root{--wc-duration-photo-compose:0s;--wc-duration-photo-stretch:0s;--wc-duration-interface:0s;--wc-duration-image:0s;--wc-duration-layout:0s;--wc-duration-reveal:0s;--wc-duration-fold:0s}}:root{--wc-duration-show-hop:780;--wc-project-medterms-paper:#f0eee6;--wc-project-medterms-ink:#423e37;--wc-project-splice:#5b9bd5;--wc-project-one:#e66e5d;--wc-project-medsup:#6bb896;--wc-project-cipher:#1f1c19;--wc-project-ideosis:#e8a84c;--wc-project-twk:#4a3f6b;--wc-project-typing-font:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--wc-project-typing-untyped:#979078;--wc-project-typing-button:#d9d9d9;--wc-project-searing-rust:#2a0a00;--wc-project-sea-night:#131720;--wc-project-sea-panel:#202126;--wc-project-tachyboard-ink:#000;--wc-project-tachyboard-red:#b42421;--wc-project-searing-issue:#782600;--wc-project-conspirasea-control:#713735}@font-face{font-family:Funnel Sans;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/funnel-sans-latin.woff2)format("woff2")}@font-face{font-family:Unbounded;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/unbounded-latin.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{color:var(--wc-ink);background:var(--wc-cloud);font-family:var(--wc-font-sans);scroll-behavior:smooth;font-size:100%}body{background:var(--wc-cloud);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;min-width:20rem;margin:0;font-size:1.0625rem;line-height:1.5}body,button,input,textarea,select{font-family:var(--wc-font-sans)}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1.5px}img{max-width:100%;display:block}button,a{transition:color var(--wc-duration-interface) var(--wc-ease-out), background-color var(--wc-duration-interface) var(--wc-ease-out), opacity var(--wc-duration-interface) var(--wc-ease-out), transform var(--wc-duration-interface) var(--wc-ease-out)}:focus-visible{outline:2px solid var(--wc-blue);outline-offset:3px}.skipLink{z-index:100;top:var(--wc-space-4);left:var(--wc-space-4);color:var(--wc-white);background:var(--wc-ink);padding:.7rem 1rem;position:fixed;transform:translateY(-180%)}.skipLink:focus{transform:translateY(0)}.pageShell{width:min(100%,96rem);min-height:100svh;padding:var(--wc-gutter-desktop);margin:0 auto}.siteHeader{z-index:10;align-items:center;gap:var(--wc-space-6);min-height:4.75rem;padding:var(--wc-space-3) var(--wc-space-4);background:var(--wc-white);grid-template-columns:minmax(12rem,1fr) auto minmax(8rem,1fr);display:grid;position:relative}.siteHeaderCompact{grid-template-columns:minmax(12rem,1fr) auto}.siteBrand{align-items:center;gap:var(--wc-space-3);width:fit-content;font-size:1.125rem;font-weight:600;text-decoration:none;display:inline-flex}.siteBrand img{width:2.625rem;height:2.625rem}.siteNav{font-size:var(--wc-font-small);justify-content:center;align-items:center;gap:clamp(1rem,2.5vw,2rem);font-weight:500;display:flex}.siteNav a,.headerContact{text-decoration:none;position:relative}.siteNav a:after{content:"";opacity:0;background:currentColor;height:2px;position:absolute;bottom:-.4rem;left:0;right:0;transform:scaleX(.5)}.siteNav a:hover:after,.siteNav a:focus-visible:after,.siteNav a[aria-current=page]:after{opacity:1;transform:scaleX(1)}.siteNav a[aria-current=page]{color:var(--wc-blue)}.headerContact{color:var(--wc-blue);font-size:var(--wc-font-small);justify-self:end;font-weight:600}.pageMain{background:var(--wc-white)}.pageHero,.indexHero{border-bottom:1px solid var(--wc-hairline);grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);min-height:min(38rem,72svh);display:grid}.pageHeroCopy,.indexHeroCopy{justify-content:space-between;gap:var(--wc-space-12);flex-direction:column;padding:clamp(3rem,7vw,7rem) clamp(2rem,6vw,6rem);display:flex}.sectionMarker,.workMeta,.detailMetaLabel,.resumeDate,.photoCaption,.eyebrow{color:var(--wc-slate);font-size:var(--wc-font-small);letter-spacing:.035em;margin:0;font-weight:500}.pageTitle,.indexTitle,.detailTitle,.notFoundTitle{max-width:13ch;font-family:var(--wc-font-display);letter-spacing:-.045em;overflow-wrap:anywhere;margin:0;font-size:clamp(2.65rem,7vw,7rem);font-weight:400;line-height:.96}.pageLead,.indexLead{max-width:36rem;margin:0;font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.35}.heroAside,.indexAside{justify-content:flex-end;gap:var(--wc-space-6);color:var(--wc-white);background:var(--wc-blue);flex-direction:column;padding:clamp(2rem,5vw,4rem);display:flex}.heroAside p,.indexAside p{max-width:30rem;margin:0}.heroAside a,.indexAside a{width:fit-content;font-weight:600}.section{padding:clamp(3rem,8vw,7rem) clamp(1.5rem,6vw,6rem)}.sectionHeader{align-items:start;gap:var(--wc-space-8);grid-template-columns:minmax(12rem,.65fr) minmax(18rem,1.35fr);margin-bottom:clamp(2rem,5vw,4rem);display:grid}.sectionHeader h2,.storyBlock h2,.resumeSection h3,.contactEnding h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.8rem,4vw,3.6rem);font-weight:500;line-height:1.05}.sectionHeader p{max-width:42rem;margin:0;font-size:clamp(1.0625rem,1.5vw,1.3rem)}.collectionGrid{gap:var(--wc-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workCard{min-height:35rem;color:var(--wc-ink);background:var(--wc-cloud);grid-template-rows:minmax(16rem,1fr) auto;text-decoration:none;display:grid}.workCardMedia{background:var(--wc-ink);min-height:18rem;position:relative;overflow:hidden}.workCardMedia img{object-fit:cover;width:100%;height:100%;transition:transform var(--wc-duration-image) var(--wc-ease-out)}.workCardMedia img.posterImage{padding:var(--wc-space-8);object-fit:contain}.workCard:hover .workCardMedia img,.workCard:focus-visible .workCardMedia img{transform:scale(1.025)}.workCardCopy{gap:var(--wc-space-3) var(--wc-space-6);padding:var(--wc-space-8);grid-template-columns:minmax(0,1fr) auto;display:grid}.workCardCopy h3{font-family:var(--wc-font-display);letter-spacing:-.04em;grid-column:1/-1;margin:0;font-size:clamp(1.75rem,3vw,3rem);font-weight:400;line-height:1}.workCardCopy>p:not(.workMeta){max-width:36rem;margin:0}.textLink{color:var(--wc-blue);font-size:var(--wc-font-small);white-space:nowrap;align-self:end;font-weight:600}.detailHero{border-bottom:1px solid var(--wc-hairline);grid-template-columns:minmax(0,1fr) minmax(20rem,42%);min-height:min(48rem,84svh);display:grid}.detailHeroCopy{justify-content:space-between;gap:var(--wc-space-12);flex-direction:column;padding:clamp(3rem,7vw,7rem) clamp(2rem,6vw,6rem);display:flex}.detailIntro{max-width:42rem;margin:0;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.38}.detailMeta{gap:var(--wc-space-6);padding-top:var(--wc-space-8);border-top:1px solid var(--wc-hairline);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.detailMeta div{gap:var(--wc-space-1);display:grid}.detailMeta dt{font-size:1rem;font-weight:500}.detailMeta dd{margin:0}.detailHeroMedia{background:var(--wc-ink);place-items:center;min-height:30rem;display:grid;position:relative;overflow:hidden}.detailHeroMedia img{object-fit:cover;width:100%;height:100%}.detailHeroMedia img.detailPoster{object-fit:contain;width:min(72%,24rem);height:auto;max-height:82%}.detailBody{grid-template-columns:minmax(13rem,.35fr) minmax(0,1fr);gap:clamp(2rem,7vw,7rem);padding:clamp(3rem,8vw,8rem) clamp(1.5rem,6vw,6rem);display:grid}.detailRail{top:var(--wc-space-6);align-self:start;position:sticky}.detailRail nav{gap:var(--wc-space-3);font-size:var(--wc-font-small);font-weight:500;display:grid}.detailRail a{width:fit-content;color:var(--wc-slate);text-decoration:none}.detailRail a:hover,.detailRail a:focus-visible{color:var(--wc-blue)}.detailStory{gap:clamp(4rem,8vw,7rem);display:grid}.storyBlock{grid-template-columns:minmax(10rem,.42fr) minmax(18rem,1fr);gap:clamp(2rem,5vw,5rem);scroll-margin-top:2rem;display:grid}.storyCopy{max-width:43rem}.storyCopy p{margin:0 0 1.25rem}.storyCopy p:last-child{margin-bottom:0}.factList,.creditList,.recognitionList{margin:0;padding:0;list-style:none;display:grid}.factList div,.creditList div,.recognitionList li{gap:var(--wc-space-6);padding:var(--wc-space-4) 0;border-top:1px solid var(--wc-hairline);grid-template-columns:minmax(8rem,.34fr) minmax(0,1fr);display:grid}.factList dt,.creditList dt{font-weight:500}.factList dd,.creditList dd{margin:0}.recognitionList li{grid-template-columns:1fr}.mediaFigure{margin:0}.mediaFigure img{background:var(--wc-cloud);width:100%;height:auto}.mediaFigure figcaption{max-width:56rem;padding-top:var(--wc-space-3);color:var(--wc-slate);font-size:var(--wc-font-small)}.actionRow{gap:var(--wc-space-3);margin-top:var(--wc-space-8);flex-wrap:wrap;display:flex}.primaryAction,.secondaryAction,.resumeAction,.notFoundAction{border:2px solid var(--wc-ink);min-height:3.25rem;font-size:var(--wc-font-small);justify-content:center;align-items:center;padding:.8rem 1.25rem;font-weight:600;text-decoration:none;display:inline-flex}.primaryAction,.resumeActionPrimary,.notFoundAction{color:var(--wc-white);background:var(--wc-blue);border-color:var(--wc-blue)}.secondaryAction,.resumeAction{background:var(--wc-white)}.photographyHero{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);min-height:min(50rem,88svh);display:grid}.photographyHeroCopy{justify-content:space-between;gap:var(--wc-space-12);flex-direction:column;padding:clamp(3rem,6vw,6rem);display:flex}.photographyHeroMedia{background:var(--wc-ink);min-height:32rem;overflow:hidden}.photographyHeroMedia img{object-fit:cover;width:100%;height:100%}.photoMosaic{gap:var(--wc-space-4);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.photoMosaic figure{grid-column:span 4;margin:0}.photoMosaic figure:nth-child(6n+1),.photoMosaic figure:nth-child(6n+4){grid-column:span 7}.photoMosaic figure:nth-child(6n+2),.photoMosaic figure:nth-child(6n+3){grid-column:span 5}.photoMosaic img{aspect-ratio:4/3;object-fit:cover;background:var(--wc-cloud);width:100%}.photoMosaic figure:nth-child(4n+1) img{aspect-ratio:5/6}.photoCaption{padding-top:var(--wc-space-2)}.serviceNotes{background:var(--wc-hairline);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.serviceNote{background:var(--wc-white);min-height:18rem;padding:clamp(1.5rem,4vw,3rem)}.serviceNote h3{margin:0 0 var(--wc-space-4);font-family:var(--wc-font-display);letter-spacing:-.035em;font-size:clamp(1.4rem,2.4vw,2.3rem);font-weight:400;line-height:1.05}.serviceNote p{max-width:32rem;margin:0}.contactEnding{align-items:end;gap:var(--wc-space-8);color:var(--wc-white);background:var(--wc-blue);grid-template-columns:minmax(0,1fr) auto;padding:clamp(3rem,8vw,7rem) clamp(1.5rem,6vw,6rem);display:grid}.contactEndingPhotography{color:var(--wc-ink);background:var(--wc-cloud);border:var(--wc-signature-border);border-radius:var(--wc-panel-radius)}.contactEnding>div{max-width:49rem}.contactEnding p{max-width:44rem;margin:var(--wc-space-4) 0 0}.contactAction{min-height:3.4rem;color:var(--wc-ink);background:var(--wc-white);font-size:var(--wc-font-small);justify-content:center;align-items:center;padding:.85rem 1.25rem;font-weight:600;text-decoration:none;display:inline-flex}.contactEndingPhotography .contactAction{color:var(--wc-white);background:var(--wc-blue)}.siteFooter{justify-content:space-between;gap:var(--wc-space-6);padding:var(--wc-space-6) var(--wc-space-4);color:var(--wc-slate);font-size:var(--wc-font-small);display:flex}.resumeIntro{align-items:end;gap:var(--wc-space-8);border-bottom:1px solid var(--wc-hairline);grid-template-columns:minmax(0,1fr) auto;padding:clamp(3rem,7vw,7rem) clamp(2rem,6vw,6rem);display:grid}.resumeIntroCopy{max-width:52rem}.resumeIntroCopy p{max-width:42rem;margin:var(--wc-space-6) 0 0;font-size:clamp(1.125rem,1.8vw,1.4rem)}.resumeActions{justify-content:flex-end;gap:var(--wc-space-3);flex-wrap:wrap;display:flex}.resumePreview{gap:var(--wc-space-6);background:var(--wc-blue);color:var(--wc-white);padding:clamp(2rem,5vw,5rem) clamp(1.5rem,5vw,5rem);display:grid}.resumePreviewHeader{justify-content:space-between;align-items:end;gap:var(--wc-space-6);display:flex}.resumePreviewHeader h2,.resumePreviewHeader p{margin:0}.resumePreviewHeader h2{font-family:var(--wc-font-display);letter-spacing:-.04em;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:400}.resumePreview iframe{border-radius:var(--wc-panel-radius);background:var(--wc-white);border:1px solid #ffffff59;width:100%;min-height:min(78svh,58rem)}.resumeDocument{width:min(100%,68rem);margin:0 auto;padding:clamp(3rem,8vw,8rem) clamp(1.5rem,5vw,5rem)}.resumeHeader{gap:var(--wc-space-8);padding-bottom:var(--wc-space-8);border-bottom:3px solid var(--wc-ink);grid-template-columns:minmax(0,1fr) auto;display:grid}.resumeHeader h2{font-family:var(--wc-font-display);letter-spacing:-.05em;margin:0;font-size:clamp(2.4rem,6vw,5.5rem);font-weight:400;line-height:.95}.resumeHeader p{max-width:37rem;margin:var(--wc-space-4) 0 0}.resumeContact{align-content:start;gap:var(--wc-space-2);font-size:var(--wc-font-small);text-align:right;display:grid}.resumeSection{padding:var(--wc-space-12) 0;border-bottom:1px solid var(--wc-hairline);grid-template-columns:minmax(10rem,.34fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);display:grid}.resumeSection h3{font-size:clamp(1.4rem,2.5vw,2.2rem)}.resumeList{gap:var(--wc-space-8);display:grid}.resumeItem{gap:var(--wc-space-2) var(--wc-space-6);grid-template-columns:minmax(0,1fr) minmax(8rem,auto);display:grid}.resumeItem h3{margin:0;font-size:1.2rem;font-weight:600;line-height:1.25}.resumeRole{color:var(--wc-slate);grid-column:1;margin:0}.resumeDate{text-align:right;grid-area:1/2/span 2}.resumeItem>p:last-child{max-width:44rem;margin:var(--wc-space-2) 0 0;grid-column:1/-1}.resumeSource{padding-top:var(--wc-space-8);color:var(--wc-slate);font-size:var(--wc-font-small)}.notFound{background:var(--wc-white);grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr);min-height:calc(100svh - 7rem);display:grid}.notFoundCopy{justify-content:center;gap:var(--wc-space-8);flex-direction:column;padding:clamp(3rem,8vw,8rem);display:flex}.notFoundCopy p{max-width:36rem;margin:0;font-size:clamp(1.125rem,1.8vw,1.4rem)}.notFoundMark{background:var(--wc-blue);place-items:center;display:grid}.notFoundMark img{width:min(48%,15rem);height:auto}.projectsOpening{min-height:min(32rem,64svh)}.projectsOpening .indexHeroCopy{gap:var(--wc-space-8);padding-block:clamp(3rem,6vw,5rem)}.projectsGrid .workCard--medterms{grid-column:1/-1;grid-template-rows:1fr;grid-template-columns:minmax(0,1.35fr) minmax(19rem,.65fr);min-height:32rem}.projectsGrid .workCard--medterms .workCardMedia{min-height:32rem}.projectsGrid .workCard--medterms .workCardCopy{align-content:end}.projectsGrid .workCard--tachyboard .workCardMedia img{object-fit:cover}@media (width<=62rem){.siteHeader{grid-template-columns:minmax(0,1fr) auto}.siteNav{padding-bottom:var(--wc-space-2);grid-area:2/1/auto/-1;justify-content:flex-start;overflow-x:auto}.pageHero,.indexHero,.detailHero,.photographyHero{grid-template-columns:1fr}.heroAside,.indexAside{min-height:18rem}.detailHeroMedia{min-height:32rem}.detailBody{grid-template-columns:1fr}.detailRail{position:static}.detailRail nav{justify-content:start;gap:var(--wc-space-4);grid-template-columns:repeat(3,auto)}.storyBlock,.resumeSection{grid-template-columns:1fr}}@media (width<=46rem){.pageShell{padding:var(--wc-gutter-mobile)}.siteHeader{min-height:4.25rem;padding:var(--wc-space-3)}.siteBrand{font-size:1.0625rem}.headerContact{font-size:.875rem}.siteNav{gap:var(--wc-space-6)}.pageHero,.indexHero{min-height:auto}.pageHeroCopy,.indexHeroCopy,.detailHeroCopy,.photographyHeroCopy{min-height:31rem;padding:var(--wc-space-12) var(--wc-space-6)}.pageTitle,.indexTitle,.detailTitle,.notFoundTitle{font-size:clamp(2.4rem,12vw,4rem)}.sectionHeader,.resumeIntro,.contactEnding,.notFound,.collectionGrid,.serviceNotes{grid-template-columns:1fr}.workCard{min-height:31rem}.projectsOpening .indexHeroCopy{min-height:27rem}.projectsGrid .workCard--medterms{grid-template-rows:minmax(18rem,1fr) auto;grid-template-columns:1fr;min-height:31rem}.projectsGrid .workCard--medterms .workCardMedia{min-height:18rem}.workCardCopy{grid-template-columns:1fr}.textLink{margin-top:var(--wc-space-3)}.factList div,.creditList div,.recognitionList li{gap:var(--wc-space-2);grid-template-columns:1fr}.photoMosaic{grid-template-columns:1fr}.photoMosaic figure,.photoMosaic figure:nth-child(n){grid-column:1}.resumeActions{justify-content:flex-start}.resumePreviewHeader{flex-direction:column;align-items:flex-start}.resumePreview iframe{min-height:34rem}.resumeHeader,.resumeItem{grid-template-columns:1fr}.resumeContact{text-align:left}.resumeDate{text-align:left;grid-area:auto/1}.resumeRole,.resumeItem>p:last-child{grid-column:1}.notFoundMark{min-height:18rem}.siteFooter{flex-direction:column;align-items:flex-start}}@media print{.siteHeader,.resumeIntro,.resumePreview,.contactEnding,.siteFooter,.skipLink{display:none}.pageShell,.resumeDocument{width:100%;padding:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}
