:root{--bg: #121315;--ink: #ececea;--mute: #9a9da2;--line: #2c2e32;--ph: #26292d;--tile: #26231f;--land: #2f3135;--sphere: #1a1b1e;--grat: #2c2e32;--body2: #c9cbce;--dash: #3d4046;--gold: #c9a43a;--gold-ink: #d9bb5e;--scrim: rgba(18, 19, 21, .85);--scrim0: rgba(18, 19, 21, 0);--c-mail: #f0675d;--c-in: #4a9eed;--c-gh: #a98af0;--c-cv: #4fc080;color-scheme:dark;--pad: clamp(16px, 2.2vw, 32px);--display: clamp(64px, 14.5vw, 232px)}*{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:Inter Tight,Inter,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.45;letter-spacing:-.005em;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}img,svg{display:block;max-width:100%}.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 12px;z-index:100}.skip:focus{left:8px}.nav{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;align-items:flex-start;padding:var(--pad);font-size:13px}.nav .mark{font-weight:600;letter-spacing:0}.nav ul{list-style:none;display:flex;gap:20px}.nav a{color:var(--mute);padding:4px 0}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.nav a[aria-current=page]{text-decoration:none}.display{font-weight:600;text-transform:lowercase;letter-spacing:-.055em;line-height:.84;font-size:var(--display)}.small{font-size:13px;color:var(--mute)}.label{font-size:12px;color:var(--mute);text-transform:lowercase;letter-spacing:.01em}.ph{background:var(--ph);position:relative;display:grid;place-items:end start;color:var(--mute);font-size:12px;padding:10px 12px}.ph:before{content:attr(data-label);border:1px solid currentColor;padding:2px 6px}.hero{position:relative;min-height:100svh;overflow:hidden;display:grid;grid-template-rows:1fr auto;padding:0 var(--pad) var(--pad)}.hero-img{position:absolute;top:0;right:0;width:min(78vw,1100px);height:62svh}.hero-img .ph{width:100%;height:100%;border-bottom-left-radius:0}.hero-img .blob{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ph);clip-path:ellipse(70% 62% at 62% 30%)}.hero-img .tag{position:absolute;left:22%;bottom:22%;font-size:12px;color:var(--mute);border:1px solid currentColor;padding:2px 6px}.hero-text{grid-row:2;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);align-items:end;gap:var(--pad);position:relative;z-index:2}.hero h1{margin-left:-.04em;font-size:clamp(48px,8vw,128px)}.hero p.intro{max-width:30ch;font-size:15px;margin-bottom:.4em}.scroll-cue{position:absolute;left:var(--pad);top:52svh;z-index:2;font-size:12px;color:var(--mute);writing-mode:vertical-rl}section{padding:calc(var(--pad) * 3) var(--pad)}.sec-head{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:12px;margin-bottom:calc(var(--pad) * 1.5)}.mosaic{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;align-items:end}.mosaic a{display:block;position:relative}.mosaic .ph{aspect-ratio:4/3}.mosaic .m1{grid-column:3 / span 6}.mosaic .m2{grid-column:10 / span 3}.mosaic .m2 .ph{aspect-ratio:3/4}.mosaic .cap{padding:8px 0 0;display:flex;justify-content:space-between;font-size:13px}.mosaic a:hover .ph,.mosaic a:focus-visible .ph{filter:brightness(.96)}.mosaic .ph{transition:filter .3s}.big-link{font-size:var(--display)}.page-head{min-height:62svh;display:grid;align-items:end;padding:0 var(--pad) var(--pad)}.page-head h1{margin-left:-.04em}.about-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--pad)}.about-grid .lede{grid-column:5 / span 7;font-size:clamp(20px,2.4vw,34px);line-height:1.2;letter-spacing:-.02em}.about-grid .side{grid-column:1 / span 3}.about-grid .body{grid-column:5 / span 4;margin-top:var(--pad)}.about-grid .pic{grid-column:9 / span 4;margin-top:var(--pad)}.pic .ph{aspect-ratio:3/4}dl.facts{display:grid;gap:14px}dl.facts dt{font-size:12px;color:var(--mute)}details{border-top:1px solid var(--line);padding:12px 0}details:last-of-type{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:500;list-style:none;display:flex;justify-content:space-between}summary:after{content:"+"}details[open] summary:after{content:"–"}details p{margin-top:10px;max-width:60ch;color:var(--body2)}.travel{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--pad)}.travel .controls{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}.seg{display:inline-flex;border:1px solid var(--ink)}.seg button{font:inherit;font-size:13px;background:none;border:0;padding:6px 14px;cursor:pointer;color:var(--ink)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.legend{display:flex;gap:20px;font-size:13px}.legend span{display:inline-flex;align-items:center;gap:8px}.map-wrap{grid-column:1 / span 8;position:relative;border:1px solid var(--line)}.map-wrap svg{width:100%;height:auto;touch-action:pan-y pinch-zoom}.country{fill:var(--land);stroke:var(--bg);stroke-width:.6}.zoom{position:absolute;right:8px;bottom:8px;display:flex;flex-direction:column;border:1px solid var(--ink);background:var(--bg)}.zoom button{font:inherit;width:32px;height:32px;border:0;background:none;cursor:pointer}.zoom button+button{border-top:1px solid var(--ink)}.mk{cursor:pointer}.mk:focus-visible{outline:none}.mk:focus-visible .ring-focus,.mk[aria-pressed=true] .ring-focus{stroke:var(--ink);stroke-width:1.5;fill:none}.mk .ring-focus{fill:none}.side-panel{grid-column:9 / -1;display:flex;flex-direction:column;gap:var(--pad)}.dest-list{list-style:none;border-top:1px solid var(--line);max-height:320px;overflow:auto}.dest-list li{border-bottom:1px solid var(--line)}.dest-list button{width:100%;font:inherit;text-align:left;background:none;border:0;padding:10px 0;cursor:pointer;display:flex;justify-content:space-between;gap:8px;color:var(--ink)}.dest-list button[aria-pressed=true]{font-weight:600}.dest-list .st{color:var(--mute);font-size:12px;display:inline-flex;align-items:center;gap:6px}.detail h3{font-size:22px;font-weight:600;letter-spacing:-.02em}.detail .ph{aspect-ratio:4/3;margin-top:10px}.detail img,.detail video{width:100%;margin-top:10px}.empty{color:var(--mute)}.proj-strip{display:flex;gap:6px;overflow-x:auto;padding:0 var(--pad);scroll-snap-type:x proximity;scrollbar-width:thin}.proj-strip .ph{flex:0 0 auto;height:40svh;scroll-snap-align:start}.proj-strip .w1{width:46vw}.proj-strip .w2{width:26vw}.proj-strip .w3{width:33vw}.proj-meta{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--pad);padding:var(--pad)}.proj-meta .b{grid-column:5 / span 5}.proj-meta h2{font-size:22px;font-weight:600;letter-spacing:-.02em}.case{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--pad);padding:calc(var(--pad) * 2) var(--pad)}.case h3{grid-column:1 / span 3;font-size:13px;font-weight:400;color:var(--mute);padding-top:3px}.case .txt{grid-column:5 / span 6;max-width:62ch}.case .txt p+p,.case .txt ul{margin-top:10px}.case ul{padding-left:18px}.case-row{display:contents}.proj-nav{display:flex;justify-content:space-between;padding:var(--pad);border-top:1px solid var(--line)}.links{display:flex;flex-wrap:wrap;gap:20px;margin-top:12px}.links a{border-bottom:1px solid var(--ink)}.contact-list{list-style:none;border-top:1px solid var(--line)}.contact-list li{border-bottom:1px solid var(--line)}.contact-list a{display:flex;justify-content:space-between;padding:18px 0;font-size:clamp(22px,3.4vw,48px);letter-spacing:-.03em;font-weight:500}.contact-list a:hover{text-decoration:none;padding-left:8px}.contact-list a{transition:padding .25s}.pending{color:var(--mute)}footer{padding:var(--pad);display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:12px;color:var(--mute)}@media (prefers-reduced-motion: reduce){*{transition:none!important;scroll-behavior:auto!important}}@media (max-width: 860px){.hero-img{width:100%;height:54svh}.hero-text{grid-template-columns:1fr;gap:20px}.hero h1{font-size:clamp(40px,14vw,100px)}.scroll-cue{display:none}.mosaic .m1{grid-column:1 / -1}.mosaic .m2{grid-column:1 / span 6;margin-top:6px}.about-grid .lede,.about-grid .side,.about-grid .body,.about-grid .pic{grid-column:1 / -1}.about-grid .pic{max-width:320px}.map-wrap,.side-panel,.proj-meta .a,.proj-meta .b,.proj-meta .c,.case h3,.case .txt{grid-column:1 / -1}.proj-strip .w1{width:66vw}.proj-strip .w2{width:44vw}.proj-strip .w3{width:52vw}.proj-strip .ph{height:32svh}.nav ul{gap:14px}}.icon-links{list-style:none;display:flex;flex-wrap:wrap;gap:clamp(24px,5vw,64px)}.icon-links a{display:inline-flex;flex-direction:column;align-items:flex-start;gap:10px;padding:8px 0;font-size:13px;color:var(--ink)}.icon-links a:hover{text-decoration:none}.icon-links a:hover span,.icon-links a:focus-visible span{text-decoration:underline;text-underline-offset:3px}.icon-links svg{transition:transform .25s}.icon-links a:hover svg{transform:translateY(-3px)}.about-head{grid-template-columns:1fr auto;gap:var(--pad);align-items:end;padding-top:calc(var(--pad) * 3)}.about-head .portrait{width:min(26vw,340px);justify-self:end}.about-head .portrait .ph{aspect-ratio:3/4}@media (max-width: 860px){.about-head{grid-template-columns:1fr;align-items:end;padding-top:80px}.about-head .portrait{width:min(56vw,240px);justify-self:start}}.hl{stroke:var(--bg);stroke-width:.5;transition:opacity .2s}.hl-visited{fill:var(--ink)}.hl:hover{opacity:.75}.hl{cursor:pointer}.hl.sel,.hl-want.sel{stroke:var(--ink)}.tip{position:absolute;z-index:5;pointer-events:none;background:var(--ink);color:var(--bg);font-size:12px;padding:4px 8px;white-space:nowrap}.teaser{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--pad);align-items:end}.teaser-text{grid-column:1 / span 4}#travel-teaser{grid-column:6 / -1}#travel-teaser a{display:block;border:1px solid var(--line);position:relative}#travel-teaser a:hover{text-decoration:none;border-color:var(--ink)}#travel-teaser svg{width:100%;height:auto}.teaser-cap{position:absolute;left:10px;bottom:8px}.links-line{border-bottom:1px solid var(--ink)}@media (max-width: 860px){.teaser-text,#travel-teaser{grid-column:1 / -1}}.logo-tile{background:var(--tile);position:relative;overflow:hidden;aspect-ratio:4/3}.logo-tile img{position:absolute;left:50%;bottom:-12%;width:min(60%,420px);height:auto;transform:translate(-50%)}.proj-strip .logo-tile{flex:0 0 auto;height:56svh;aspect-ratio:auto;scroll-snap-align:start}.proj-strip .logo-tile img{width:min(70%,470px);bottom:-12%}@media (max-width: 860px){.proj-strip .logo-tile{height:44svh}}.logo-tile{display:grid;place-items:center}.logo-tile img{position:static;transform:none;width:auto;height:72%;max-height:360px}.title-logo{display:inline-block;height:.78em;width:auto;margin-left:.14em;vertical-align:baseline;transform:translateY(.02em)}.map-wrap{grid-column:1 / -1}.map-wrap .detail{position:absolute;left:12px;bottom:12px;z-index:4;width:min(300px,calc(100% - 70px));background:var(--bg);border:1px solid var(--ink);padding:14px 16px 16px}.map-wrap .detail img:not(.detail-flag),.map-wrap .detail video{max-height:180px;object-fit:cover}.detail img.detail-flag{width:36px;height:auto;border:1px solid var(--ink);margin:0 0 10px}.detail-close{position:absolute;top:6px;right:8px;font:inherit;font-size:20px;line-height:1;background:none;border:0;cursor:pointer;padding:4px;color:var(--ink)}.tip{display:flex;align-items:center;gap:6px}.tip-flag{width:16px;height:12px;object-fit:cover}@media (max-width: 860px){.map-wrap .detail{position:static;width:auto;border-width:1px 0 0}}.sphere{fill:var(--sphere);stroke:var(--ink);stroke-width:1}.grat{fill:none;stroke:var(--grat);stroke-width:.6}.country{stroke-width:.6}.map-wrap{border:0;display:grid;justify-items:center}.map-wrap>svg{width:min(100%,78svh);height:auto;touch-action:pan-y pinch-zoom;cursor:grab}.map-wrap>svg:active{cursor:grabbing}.map-wrap{position:relative}.stepper{display:inline-flex;align-items:center;gap:12px;font-size:13px}.stepper button{font:inherit;font-size:18px;width:32px;height:32px;border:1px solid var(--ink);background:none;cursor:pointer;color:var(--ink)}.stepper .cur{min-width:11ch;text-align:center}#travel-teaser a{border:0}#travel-teaser svg{width:min(100%,460px);margin-left:auto}.hl{stroke:var(--bg)}.hl.sel{stroke:var(--ink)}.contact-inline{margin-top:var(--pad)}.contact-inline .icon-links{gap:28px;margin-top:10px}.contact-inline .icon-links svg{width:28px;height:28px}.contact-inline .icon-links a{gap:6px}.travel-side{grid-column:1 / span 4;display:flex;flex-direction:column;gap:20px;align-items:flex-start}.travel-side .detail{position:relative;width:100%;max-width:340px;background:var(--bg);border:1px solid var(--ink);padding:14px 16px 16px}.travel-side .detail img:not(.detail-flag),.travel-side .detail video{max-height:180px;object-fit:cover}.travel .map-wrap{grid-column:6 / -1;justify-items:end}.map-wrap>svg{width:min(100%,560px)}@media (max-width: 860px){.travel-side{grid-column:1 / -1}.travel .map-wrap{grid-column:1 / -1;justify-items:center}.map-wrap>svg{width:min(100%,420px)}}.map-wrap>svg,.map-wrap>svg *{outline:none;-webkit-tap-highlight-color:transparent}.map-wrap>svg:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.about-grid .side .contact-inline{margin:0 0 calc(var(--pad) * 1.5)}.about-head .portrait{width:min(21vw,270px)}.about-head+section{padding-top:calc(var(--pad) * 1.25)}.about-grid .side .contact-inline{margin-bottom:var(--pad)}@media (max-width: 860px){.about-head .portrait{width:min(46vw,200px)}}.works-stage{min-height:100svh;display:grid;grid-template-columns:1fr auto;align-items:end;gap:var(--pad);padding:0 var(--pad) var(--pad)}.works-title{font-size:clamp(64px,11.5vw,190px);margin-left:-.04em}.works-list{list-style:none;display:flex;flex-direction:row-reverse;flex-wrap:wrap-reverse;gap:3px;width:min(40vw,560px)}.works-list li{flex:0 0 calc((100% - 6px) / 3)}.works-list a,.works-list .item{display:block;position:relative;overflow:hidden;aspect-ratio:1;color:inherit}.works-list a:hover{text-decoration:none}.works-list .media{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.works-list .media img{width:62%;height:62%;object-fit:contain}.works-list .media img[src*=verity]{width:80%;height:80%}.works-list .media.code{background:transparent}.works-list .media.ph{background:var(--ph);place-items:end start}.works-list .ph:before{font-size:10px}.works-list .cap{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;background:#16171a9e;color:#fff;font-size:12px;opacity:0;transition:opacity .25s}.works-list .cap .s{display:none}.works-list .cap .d{color:#d4d6d8;display:block}.works-list li:hover .cap,.works-list a:focus-visible .cap{opacity:1}@media (hover: none){.works-list .cap{opacity:1}}@media (max-width: 860px){.works-stage{grid-template-columns:1fr;padding-top:80px}.works-title{font-size:clamp(56px,20vw,120px)}.works-list{width:100%}}.about-head h1{font-size:clamp(48px,8vw,128px);margin-left:-.04em}@media (max-width: 860px){.about-head h1{font-size:clamp(40px,14vw,100px)}}.school{display:flex;align-items:center;gap:12px}.school img{width:40px;height:auto;flex:none}.icon-links a[href^=mailto] svg{color:var(--c-mail)}.icon-links a[href*=linkedin] svg{color:var(--c-in)}.icon-links a[href*=github] svg{color:var(--c-gh)}.icon-links a[href$=".pdf"] svg{color:var(--c-cv)}section.work-sec{padding-top:calc(var(--pad) * 1.5);padding-bottom:calc(var(--pad) * 2)}.work-sec .sec-head{margin-bottom:var(--pad)}.work-feature{display:flex;align-items:center;gap:calc(var(--pad) * 1.5)}.wf-tile{flex:none;display:block;width:clamp(104px,9vw,160px)}.wf-tile:hover{text-decoration:none}.wf-tile img{width:100%;height:auto;transition:transform .5s}.wf-tile:hover img,.wf-tile:focus-visible img{transform:translateY(-5px)}.wf-win{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--gold-ink);border:1px solid var(--gold);padding:4px 10px 4px 8px;margin-bottom:14px}.wf-win svg{color:var(--gold);flex:none}.wf-win strong{font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:12px}.wf-title{font-size:clamp(26px,2.6vw,40px);font-weight:600;letter-spacing:-.03em;line-height:1}.wf-kind{font-size:13px;margin:6px 0 12px}.wf-desc{font-size:clamp(15px,1.15vw,18px);line-height:1.4;max-width:42ch}.wf-stack{font-size:13px;margin:10px 0 16px}.wf-text .links-line{font-size:14px}@media (max-width: 860px){.work-feature{flex-direction:column;align-items:flex-start}.wf-tile{width:120px}}@media (prefers-reduced-motion: reduce){.wf-tile img{transition:none}}section.work-sec{padding-bottom:calc(var(--pad) * .5)}.work-sec+section{padding-top:calc(var(--pad) * 1.5)}.duo{display:grid;grid-template-columns:7fr 5fr;gap:calc(var(--pad) * 2.5);padding:calc(var(--pad) * 1.5) var(--pad) calc(var(--pad) * 2);align-items:start}.duo>section,.duo>section.work-sec,.work-sec+section{padding:0;min-width:0}.duo .sec-head{margin-bottom:var(--pad)}.duo .wf-tile{width:clamp(90px,7.5vw,130px)}.duo .wf-desc{max-width:36ch}.duo .teaser{display:flex;align-items:center;gap:var(--pad)}.duo .teaser-text{flex:1;min-width:0}.duo .teaser-text p{font-size:15px;max-width:28ch}.duo #travel-teaser{flex:none;width:clamp(130px,11vw,200px)}.duo #travel-teaser svg{width:100%;margin:0}@media (max-width: 860px){.duo{grid-template-columns:1fr;gap:calc(var(--pad) * 2)}.duo #travel-teaser{width:clamp(120px,36vw,180px)}}.duo{grid-template-columns:1fr 1fr;gap:0}.duo>section+section{border-left:1px solid var(--line);padding-left:calc(var(--pad) * 2.5)}.duo>section:first-child{padding-right:calc(var(--pad) * 2.5)}.duo .teaser{display:flex;align-items:center;gap:calc(var(--pad) * 1.5)}.duo #travel-teaser{flex:none;width:clamp(120px,9vw,170px)}.duo #travel-teaser a{display:block;border:0}.duo .teaser-text p.wf-desc{font-size:clamp(15px,1.15vw,18px);max-width:36ch}.duo .teaser-text p.wf-kind{font-size:13px}@media (max-width: 860px){.duo{grid-template-columns:1fr}.duo>section+section{border-left:0;padding-left:0;margin-top:calc(var(--pad) * 2)}.duo>section:first-child{padding-right:0}}.map-wrap>svg{width:min(100%,380px)}#travel{padding-top:calc(var(--pad) * 1.5);padding-bottom:calc(var(--pad) * 2)}#travel .sec-head{margin-bottom:var(--pad)}@media (max-width: 860px){.map-wrap>svg{width:min(100%,300px)}}.duo>#travel{padding:0}.duo .travel{display:flex;align-items:center;gap:calc(var(--pad) * 1.5)}.duo .travel-side{flex:1;min-width:0}.duo .travel .map-wrap{flex:none;width:clamp(190px,18vw,300px);display:block}.duo .travel .map-wrap>svg{width:100%}.duo .travel-side .detail{max-width:none}.duo>#experience details:first-of-type{border-top:0}@media (max-width: 860px){.duo .travel{flex-direction:column;align-items:flex-start}}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}.proj-strip{scrollbar-width:thin;scrollbar-color:var(--ink) var(--line);padding-bottom:14px;overflow-y:hidden}.proj-strip::-webkit-scrollbar{height:4px}.proj-strip::-webkit-scrollbar-track{background:var(--line)}.proj-strip::-webkit-scrollbar-thumb{background:var(--ink)}.proj-strip.marquee{overflow:hidden;padding:0;cursor:grab;touch-action:pan-y;scroll-snap-type:none}.proj-strip.marquee:active{cursor:grabbing}.strip-track{display:flex;gap:6px;padding-left:var(--pad);width:max-content;will-change:transform}.strip-track>*{flex:0 0 auto}.proj-strip .proj-screenshot{display:block;flex:0 0 auto;height:100%;width:auto;max-width:none;object-fit:contain;scroll-snap-align:start;-webkit-user-select:none;user-select:none}.strip-bar{position:relative;height:2px;margin:6px 0 0;background:var(--line);cursor:pointer;transition:height .2s}.strip-bar:before{content:"";position:absolute;left:0;right:0;top:-10px;bottom:-10px}.strip-bar:hover{height:4px}.strip-thumb{position:absolute;top:0;bottom:0;background:var(--ink)}.proj-meta{padding-top:calc(var(--pad) * 2);padding-bottom:calc(var(--pad) * 2);align-items:start}.proj-meta .b{grid-column:4 / span 6}.proj-meta .c{grid-column:10 / span 3}.proj-meta .facts dd{font-size:15px}.proj-meta .facts .links{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.proj-meta .facts .links a{border-bottom:1px solid var(--ink)}.proj-lede{font-size:clamp(24px,2.4vw,38px);font-weight:400;letter-spacing:-.025em;line-height:1.15;max-width:26ch}.proj-meta .wf-win{margin-bottom:20px}.stack-list{list-style:none;margin-top:10px;font-size:15px}.stack-list li{padding:6px 0;border-bottom:1px solid var(--line)}.stack-list li:first-child{border-top:1px solid var(--line)}.case{padding-top:calc(var(--pad) * 1.25);padding-bottom:calc(var(--pad) * 1.25);border-top:1px solid var(--line);margin:0 var(--pad);padding-left:0;padding-right:0}.case h3{font-size:13px}.case .txt{font-size:18px;line-height:1.5;max-width:58ch}.case .txt ul{list-style:none;padding:0;margin-top:0}.case .txt li{padding:10px 0;border-bottom:1px solid var(--line)}.case .txt li:first-child{padding-top:0}.case .txt li:last-child{border-bottom:0}@media (max-width: 860px){.proj-meta .a,.proj-meta .b,.proj-meta .c{grid-column:1 / -1}}.proj-head{min-height:0;padding-top:calc(var(--pad) + 60px);padding-bottom:20px}.proj-head h1{font-size:clamp(40px,5.25vw,84px)}.proj-head .title-logo{height:.68em;margin-left:.18em}.proj-strip .ph{height:clamp(170px,30svh,320px)}.proj-meta{padding-top:calc(var(--pad) * .9);padding-bottom:calc(var(--pad) * 1.25);gap:calc(var(--pad) * 1.5)}.proj-meta .a{grid-column:1 / span 3}.proj-meta .facts{gap:10px}.proj-meta .facts .links{flex-direction:row;flex-wrap:wrap;gap:4px 16px}.proj-meta .wf-win{margin-bottom:12px}.proj-lede{font-size:clamp(20px,1.9vw,30px);max-width:30ch}.stack-list{display:flex;flex-wrap:wrap;gap:6px 8px;margin-top:8px;font-size:14px}.stack-list li,.stack-list li:first-child{padding:3px 10px;border:1px solid var(--line);border-radius:0}@media (max-width: 860px){.proj-meta .a,.proj-meta .b,.proj-meta .c{grid-column:1 / -1}.proj-strip .ph{height:clamp(150px,26svh,260px)}}.proj-page main{min-height:100svh;display:flex;flex-direction:column}.proj-page .proj-head{flex:none}.proj-page .proj-strip{flex:none;height:clamp(220px,42svh,460px);min-height:110px}.proj-page .proj-strip .ph,.proj-page .strip-track{height:100%}.proj-page .strip-bar{flex:none}.proj-page .proj-meta{flex:none;padding-top:calc(var(--pad) * .9);padding-bottom:0}.proj-page .proj-nav{flex:none;padding-top:12px;padding-bottom:14px;border-top:0}.proj-desc{font-size:15px;line-height:1.45;max-width:52ch;margin-top:14px;color:var(--body2)}.proj-lede{font-size:clamp(20px,1.8vw,28px)}.proj-meta .b{grid-column:4 / span 5}.proj-meta .c{grid-column:9 / span 4}.stats{display:flex;gap:calc(var(--pad) * 1.5);margin-bottom:14px}.stats div{display:flex;flex-direction:column-reverse}.stats dd{font-size:clamp(36px,4vw,64px);font-weight:600;letter-spacing:-.04em;line-height:1}.stats dt{font-size:12px;color:var(--mute);margin-top:6px;max-width:16ch}.proj-page .stack-list{margin-top:0}@media (max-width: 860px){.proj-page main{height:auto;min-height:100svh;overflow:visible}.proj-page .proj-strip{flex:none;height:180px}}.proj-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--pad)}.proj-head .wf-win{margin:0 0 clamp(8px,1.2vw,18px);flex:none}@media (max-width: 860px){.proj-head{flex-direction:column;align-items:flex-start}}.wf-win{display:inline-flex;align-items:center;gap:12px;color:var(--ink);background:none;border:1px solid var(--gold);padding:8px 18px 8px 12px}.wf-win svg{width:28px;height:28px;color:var(--gold);flex:none}.win-text{display:flex;flex-direction:column;gap:1px;line-height:1.15}.win-text strong{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}.win-text em{font-style:normal;font-size:17px;font-weight:500;letter-spacing:-.01em}.proj-head .wf-win{margin:0 0 clamp(6px,.7vw,11px)}.proj-page .proj-meta{padding-bottom:var(--pad)}.about-stage{min-height:100svh;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:1fr auto;column-gap:var(--pad);align-items:end;padding:0 var(--pad) var(--pad)}.about-portrait{grid-column:10 / -1;grid-row:1;align-self:start;margin-top:72px}.about-title{grid-column:1 / span 4;grid-row:2;font-size:clamp(48px,8vw,128px);margin-left:-.04em}.about-stage .lede{grid-column:5 / span 5;grid-row:2;font-size:clamp(18px,1.7vw,26px);line-height:1.25;letter-spacing:-.015em;margin-bottom:.2em}.about-side{grid-column:10 / -1;grid-row:2}.about-side .contact-inline{margin:0 0 calc(var(--pad) * 1)}.bio{font-size:15px;max-width:40ch;margin-bottom:var(--pad)}@media (max-width: 860px){.about-stage{grid-template-rows:auto;row-gap:var(--pad);padding-top:72px}.about-portrait,.about-title,.about-stage .lede,.about-side{grid-column:1 / -1;grid-row:auto}.about-portrait{margin-top:0;width:min(56vw,240px)}.about-title{font-size:clamp(40px,14vw,100px)}}.about-portrait{width:min(15vw,240px)}.about-portrait .ph{aspect-ratio:3 / 4}.about-stage{row-gap:var(--pad)}.about-portrait{width:min(18vw,300px)}.about-stage{grid-template-rows:1fr auto;row-gap:var(--pad)}.about-portrait{grid-column:6 / -1;grid-row:1;width:auto;align-self:stretch;margin:0 calc(var(--pad) * -1) 0 0}.about-portrait .ph{height:100%;min-height:38svh;aspect-ratio:auto}.about-stage .lede{grid-column:1 / span 4;grid-row:1;align-self:start;margin:112px 0 0;font-size:clamp(22px,2.3vw,36px);line-height:1.2;letter-spacing:-.02em}.about-title{grid-column:1 / span 5;grid-row:2;font-size:clamp(64px,11.5vw,190px)}.about-side{display:contents}.about-side .facts{grid-column:6 / span 4;grid-row:2;align-self:end;margin-bottom:.3em}.about-side .contact-inline{grid-column:10 / span 3;grid-row:2;align-self:end;margin:0 0 .3em}.about-side .facts dd{font-size:15px}@media (max-width: 860px){.about-stage{grid-template-rows:auto;padding-top:72px}.about-portrait{grid-column:1 / -1;grid-row:auto;margin:0}.about-portrait .ph{height:auto;aspect-ratio:4 / 3;min-height:0}.about-stage .lede,.about-title,.about-side .facts,.about-side .contact-inline{grid-column:1 / -1;grid-row:auto;margin-left:0}.about-stage .lede{margin-top:0}.about-title{font-size:clamp(56px,20vw,120px)}}.about-side{display:block;grid-column:1 / span 5;grid-row:1;align-self:start;margin-top:104px}.about-side .lede{margin:0 0 calc(var(--pad) * 1.25);font-size:clamp(22px,2.3vw,36px);line-height:1.2;letter-spacing:-.02em;max-width:24ch}.about-side .contact-inline{margin:0 0 var(--pad)}.about-side .facts{margin:0;max-width:40ch}.about-portrait{grid-column:9 / -1;grid-row:1 / span 2;align-self:end;justify-self:end;margin:0;width:min(24vw,400px)}.about-portrait .ph{height:auto;min-height:0;aspect-ratio:4 / 5}.about-title{grid-column:1 / span 6;grid-row:2}@media (max-width: 860px){.about-side{grid-column:1 / -1;grid-row:auto;margin-top:0}.about-portrait{grid-column:1 / -1;grid-row:auto;justify-self:start;width:min(60vw,280px)}.about-portrait .ph{aspect-ratio:4 / 5}}.about-images{grid-column:7 / -1;grid-row:1 / span 2;align-self:stretch;display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(8,1fr);gap:12px;padding-top:72px}.about-images figure{margin:0;min-height:0}.about-images .ph,.about-images img{display:block;width:100%;height:100%;object-fit:cover}.about-images .im-a{grid-column:4 / span 3;grid-row:3 / span 6}.about-images .im-b{grid-column:1 / span 3;grid-row:6 / span 3}.about-images .im-c{grid-column:5 / span 2;grid-row:1 / span 2}.about-images .ph:before{font-size:9px}@media (max-width: 860px){.about-images{grid-column:1 / -1;grid-row:auto;padding-top:0;grid-template-rows:none;grid-template-columns:2fr 1fr;grid-auto-rows:auto}.about-images .im-a{grid-column:1;grid-row:1 / span 2;aspect-ratio:4 / 5}.about-images .im-b{grid-column:2;grid-row:1;aspect-ratio:1}.about-images .im-c{grid-column:2;grid-row:2;aspect-ratio:1}}.about-images .im-a{grid-column:4 / span 3;grid-row:4 / span 5}.about-images .im-b{grid-column:1 / span 3;grid-row:7 / span 2}.about-images .im-c{grid-column:5 / span 2;grid-row:2 / span 2}.nav .mark{display:inline-block;line-height:0}.nav .mark img{height:28px;width:auto;display:block}.hero-facts{margin-bottom:.4em;max-width:34ch}.hero-facts dd{font-size:15px}.hero-facts .school img{width:48px}@media (max-width: 860px){.hero-facts{max-width:none}}.hero-text{grid-template-columns:auto minmax(0,1fr);justify-content:start;column-gap:calc(var(--pad) * 2.5)}.hero-facts{align-self:end;margin:0 0 .9vw;max-width:30ch}.hero-facts dt{margin-bottom:8px}.hero-facts dd{font-size:17px;line-height:1.3}.hero-facts .school{gap:16px;align-items:center}.hero-facts .school img{width:60px}@media (max-width: 860px){.hero-text{grid-template-columns:1fr;row-gap:20px}.hero-facts{margin:0}}.hero-facts{max-width:46ch}.hero-text{grid-template-columns:minmax(0,6fr) minmax(0,5fr);column-gap:calc(var(--pad) * 2);justify-content:stretch}.hero-facts{max-width:none;margin:0 0 .9vw;padding-left:calc(var(--pad) * 2)}.hero-facts .school{flex-direction:column;align-items:flex-start;gap:18px}.hero-facts .school img{width:clamp(72px,7vw,120px)}.hero-facts dd{font-size:clamp(18px,1.8vw,28px);line-height:1.2;letter-spacing:-.015em}.hero-facts .school span{max-width:22ch}@media (max-width: 860px){.hero-text{grid-template-columns:1fr}.hero-facts{padding-left:0}.hero-facts .school img{width:72px}}.hero-facts .school{flex-direction:row;align-items:center;gap:clamp(16px,1.6vw,28px)}.hero-facts .school img{width:clamp(72px,7vw,120px);flex:none}.hero-facts .school-text{display:flex;flex-direction:column;gap:2px;max-width:none}.hero-facts .school-text strong{font-size:clamp(20px,2vw,32px);font-weight:600;letter-spacing:-.025em;line-height:1.1}.hero-facts .school-text span{font-size:clamp(18px,1.7vw,27px);letter-spacing:-.02em;line-height:1.15}.hero-facts .school-text em{font-style:normal;font-size:14px;color:var(--mute);margin-top:8px;letter-spacing:0}.hero-text{align-items:last baseline;grid-template-columns:max(34vw,calc(100vw - min(78vw,1100px) - var(--pad))) minmax(0,1fr);column-gap:0}.hero-facts{align-self:last baseline;margin:0;padding-left:0}.hero-facts .school{align-items:stretch}.hero-facts .school img{align-self:stretch;width:auto;height:auto;max-height:112px;object-fit:contain}.hero-facts .school-text{justify-content:center}.hero-facts .school-text em{margin-top:6px}@media (max-width: 860px){.hero-text{grid-template-columns:1fr;align-items:start}.hero-facts .school img{max-height:84px}}.hero-text{align-items:end}.hero-facts{align-self:center;margin-bottom:0}@media (max-width: 860px){.hero-text{align-items:start}.hero-facts{margin-bottom:0}}.hero-text{grid-template-columns:minmax(0,1fr) auto}.hero-facts{justify-self:end}@media (max-width: 860px){.hero-text{grid-template-columns:1fr}.hero-facts{justify-self:start}}.hero-facts{margin-right:7vw}@media (max-width: 860px){.hero-facts{margin-right:0}}.hero-facts .school-text{gap:0}.hero-facts .school-text strong,.hero-facts .school-text span{font-size:clamp(20px,1.9vw,30px);line-height:1.12;letter-spacing:-.035em}.hero-facts .school-text strong{font-weight:600}.hero-facts .school-text span{font-weight:400}.hero-facts .school-text em{font-size:13px;line-height:1;letter-spacing:.01em;color:var(--mute);margin-top:12px;text-transform:lowercase}.hero-img{top:0;right:0;width:min(74vw,1300px);height:66svh}.hero-img img{display:block;width:100%;height:100%;object-fit:contain;object-position:right top;mix-blend-mode:multiply}.hero-ph{width:100%;height:100%;background:var(--ph);display:grid;place-items:end start;padding:12px;font-size:12px;color:var(--mute)}.hero-ph:before{content:attr(aria-label);display:none}.hero-img{width:min(96vw,1800px);height:68svh}@media (max-width: 860px){.hero-img{width:100%;height:56svh}}.hero-img{left:0;right:0;width:100%}.hero-img img.hero-photo{object-fit:cover;object-position:50% 30%;mix-blend-mode:normal}.hero-img img.hero-photo{object-position:50% 17%}.hero-img:after{content:"";position:absolute;left:0;right:0;top:0;height:110px;background:linear-gradient(var(--scrim),var(--scrim0));pointer-events:none}.hero-img{left:-1px;right:-1px;width:auto}.hero-img img.hero-photo{width:100%}@media (max-width: 860px){.about-title{order:1}.about-side{order:2}.about-images{order:3;grid-column:1 / -1;grid-row:auto;padding-top:0;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;gap:6px;margin-top:var(--pad)}.about-images .im-a{grid-column:1;grid-row:1 / span 2;aspect-ratio:4 / 5}.about-images .im-b{grid-column:2;grid-row:1;aspect-ratio:1}.about-images .im-c{grid-column:2;grid-row:2;aspect-ratio:1}.about-images figure .ph{height:100%}}@media (max-width: 860px){.about-title{grid-row:auto}}@media (max-width: 860px){.duo .travel .map-wrap{width:min(100%,320px)}}@media (max-width: 860px){.works-list li{flex:0 0 calc((100% - 3px)/2)}.works-list .cap{padding:8px 10px;font-size:12px}.works-list .ph:before{font-size:9px}}@media (max-width: 860px){.proj-meta .a,.proj-meta .b,.proj-meta .c{grid-column:1 / -1}.proj-meta{gap:var(--pad)}.proj-lede,.proj-desc{max-width:none}.proj-lede{font-size:24px}}@media (max-width: 860px){.hero{min-height:0;grid-template-rows:auto;padding-top:0;row-gap:calc(var(--pad) * 1.5)}.hero-img{position:relative;left:auto;right:auto;width:auto;height:62.7vw;overflow:hidden;margin:0 calc(var(--pad) * -1)}.hero-img img.hero-photo{position:absolute;max-width:none;width:200vw;height:auto;left:-32vw;top:-12vw;object-fit:fill}}.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 6px;margin-top:var(--pad)}.more-grid figure{margin:0}.more-grid .more-photo{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 32%}.more-grid .more-featured{grid-column:1 / -1;grid-row:span 2;min-height:360px}.more-grid .ph{aspect-ratio:4 / 3}.more-grid figcaption{font-size:13px;color:var(--mute);padding-top:8px}.mf{position:relative;display:block;width:100%;height:auto;padding:0;border:0;background:var(--ph);cursor:pointer;overflow:hidden}.mf:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}.fr-media,.fr-ph{display:block;width:100%;height:100%;object-fit:cover}.fr-ph{background:var(--ph)}.mf-cap{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;background:#16171a9e;color:#fff;font-size:12px;text-align:left;opacity:0;transition:opacity .25s;display:flex;flex-direction:column;gap:2px}.mf-meta{color:#d4d6d8}.mf:hover .mf-cap,.mf:focus-visible .mf-cap{opacity:1}@media (hover: none){.mf-cap{opacity:1}}.lb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#16171af0;display:grid;place-items:center;padding:56px 64px}.lb-stage{display:grid;gap:12px;max-width:min(1200px,100%);max-height:100%;justify-items:center}.lb-media,.lb-ph{max-width:100%;max-height:74vh;width:auto;height:auto;display:block}.lb-ph{width:min(900px,80vw);aspect-ratio:3 / 2;background:var(--ph);display:grid;place-items:end start;padding:12px;color:var(--mute);font-size:12px}.lb-ph:before{content:attr(data-label);border:1px solid currentColor;padding:2px 6px}.lb-cap{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;color:#e9eaec;font-size:14px;width:100%}.lb-num{color:#9a9da2;letter-spacing:.12em;font-size:12px}.lb-meta{color:#9a9da2}.lb-close{position:absolute;top:16px;right:20px;background:none;border:0;color:#e9eaec;font:inherit;font-size:14px;cursor:pointer;padding:8px}.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:none;border:0;color:#e9eaec;font-size:44px;line-height:1;cursor:pointer;padding:12px 16px}.lb-prev{left:6px}.lb-next{right:6px}.lb-close:focus-visible,.lb-nav:focus-visible{outline:2px solid #e9eaec;outline-offset:2px}@media (max-width: 860px){.lb{padding:56px 12px}.lb-nav{top:auto;bottom:10px;transform:none;font-size:36px}}.fr-ph:before{content:none}.more-grid{grid-template-columns:repeat(4,1fr)}.more-grid .ph{aspect-ratio:3 / 4}.more-grid .ph:before{font-size:9px}@media (max-width: 860px){.more-grid{grid-template-columns:1fr 1fr}}section.frames-mosaic{padding:calc(var(--pad) * 1.5) var(--pad) calc(var(--pad) * 3)}.frames-mosaic .sec-head{margin-bottom:var(--pad)}.about-portrait-only{grid-column:9 / -1;grid-row:1 / span 2;align-self:end;justify-self:end;width:min(24vw,380px)}.about-portrait-only .ph{aspect-ratio:4 / 5}@media (max-width: 860px){.about-portrait-only{grid-column:1 / -1;grid-row:auto;order:3;justify-self:start;width:min(64vw,300px)}}.gear-field{grid-column:7 / -1;grid-row:1 / span 2;align-self:stretch;margin-top:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px 0}.gear{flex:none}.gear img,.gear-ph{display:block;width:100%;height:auto}.gear-ph{aspect-ratio:4 / 3;border:1px dashed var(--dash);display:grid;place-items:center;color:var(--mute);font-size:11px}.gear-ph:before{content:attr(data-label)}.gear.g1{width:min(68%,500px,52svh);order:2;transform:translate(16%);margin-top:-2%}.gear.g3{width:min(46%,340px,36svh);order:1;transform:translate(calc(-34% - 100px))}@media (max-width: 860px){.gear-field{grid-column:1 / -1;grid-row:auto;order:3;margin-top:var(--pad)}.gear.g1{width:min(62%,276px)}.gear.g3{width:min(52%,230px)}}.duo.panel,section.frames-mosaic.panel{min-height:100svh;align-content:center}.panel.will-reveal>*{opacity:0;transform:translateY(32px);transition:opacity .9s cubic-bezier(.2,.6,.2,1),transform .9s cubic-bezier(.2,.6,.2,1)}.panel.will-reveal.in-view>*{opacity:1;transform:none}.panel.will-reveal.in-view>*:nth-child(2){transition-delay:.08s}.panel.will-reveal.in-view>*:nth-child(3){transition-delay:.16s}.panel.will-reveal.in-view>*:nth-child(4){transition-delay:.24s}@media (prefers-reduced-motion: reduce){.panel.will-reveal>*{opacity:1;transform:none;transition:none}}@media (min-width: 861px){.duo.panel{padding-top:88px;padding-bottom:48px;align-content:stretch;align-items:stretch}.duo.panel>section{display:flex;flex-direction:column;justify-content:center}.duo .travel{flex:0 1 auto}.duo .travel .map-wrap{width:min(54%,calc(100svh - 280px))}.more-grid{grid-template-columns:1fr 1fr;grid-auto-rows:calc((100svh - 400px)/2)}.more-grid figure{display:flex;flex-direction:column;min-height:0}.more-grid .ph{aspect-ratio:auto;flex:1;min-height:0}.bio{font-size:clamp(15px,1.3vw,20px);max-width:44ch}.duo .wf-tile{width:clamp(120px,12vw,230px)}.duo .wf-title{font-size:clamp(30px,3.6vw,60px)}.duo .wf-desc{font-size:clamp(16px,1.4vw,22px)}.duo #travel-teaser{width:clamp(180px,20vw,380px)}}@media (min-width: 861px){.duo.panel>section{justify-content:flex-start}.duo .travel,.duo .work-feature,.duo .teaser{flex:1;align-items:center}.duo #experience,.duo #more{justify-content:flex-start}}.sec-head{border-top:0;padding-top:0}.duo>section+section{border-left:0}html:has(.panel){scroll-behavior:smooth}.panel.will-reveal>*{opacity:0;transform:translateY(22px);transition:opacity 1.2s cubic-bezier(.22,.61,.36,1),transform 1.2s cubic-bezier(.22,.61,.36,1)}.panel.will-reveal.in-view>*:nth-child(2){transition-delay:.06s}.panel.will-reveal.in-view>*:nth-child(3){transition-delay:.12s}.panel.will-reveal.in-view>*:nth-child(4){transition-delay:.18s}@media (prefers-reduced-motion: reduce){html:has(.panel){scroll-behavior:auto}}.duo.panel{column-gap:calc(var(--pad) * 2.5);row-gap:calc(var(--pad) * 2)}.duo.panel>section,.duo.panel>section+section{background:none;padding:0;border-left:0}@media (min-width: 861px){.more-grid{grid-auto-rows:calc((100svh - 450px)/2)}.duo .travel .map-wrap{width:min(54%,calc(100svh - 320px))}}.hero-img img.hero-photo{object-fit:cover;object-position:50% 42%}@media (max-width: 860px){.hero-img img.hero-photo{position:static;width:100%;height:100%;max-width:100%;left:auto;top:auto}.hero-img{height:62vw}}.hero-img img.hero-photo{object-position:50% 40%}.hero-img img.hero-photo{object-position:50% 24%}.hero-img img.hero-photo{image-rendering:auto}.school img,.hero-facts img{filter:drop-shadow(0 0 1px rgba(255,255,255,.55))}.hero-img img.hero-photo{filter:brightness(.9)}body,.nav a,.sec-head{transition:background-color .25s,color .25s}.nav ul{align-items:center}.nav li{display:flex;align-items:center}.frames-gear-list{width:100%;max-width:440px;margin-top:32px}.frames-gear-list>div{padding:18px 0;border-top:1px solid var(--line)}.frames-gear-list dt{margin-bottom:10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}.frames-gear-list ul{list-style:none;display:grid;gap:8px}.frames-gear-list li{font-size:clamp(15px,1.15vw,18px);line-height:1.45;letter-spacing:-.015em}.nav a{display:inline-flex;align-items:center;height:21px;padding:0}.nav a.mark{height:auto;display:inline-block}.gear img{mix-blend-mode:normal}@media (min-width: 861px){.more-grid{grid-template-columns:repeat(6,1fr)}.more-grid figure{grid-column:span 2}.more-grid .more-featured{grid-column:1 / -1;grid-row:span 1;min-height:0}.more-grid .more-photo{object-position:center 35%}}.more-grid .more-featured{overflow:hidden}.more-grid .more-photo{transform:scale(1.3);transform-origin:50% 10%}@media (min-width: 861px){.more-grid{grid-template-rows:calc((100svh - 450px)*.73) calc((100svh - 450px)*.27);grid-auto-rows:auto}.more-grid .more-photo{transform:none;width:120%;max-width:none;margin-left:-10%;height:100%;object-position:50% 38%}}.more-grid .more-featured{grid-column:1 / -1;grid-row:auto;aspect-ratio:506 / 287;height:auto;min-height:0;overflow:hidden}.more-grid .more-photo{display:block;position:static;width:148.8%;max-width:none;height:auto;margin:-60.9% 0 0 -24%;object-fit:fill;object-position:0 0;transform:none}@media (min-width: 861px){.more-grid{grid-template-rows:auto 110px;grid-auto-rows:auto}}.more-grid .more-featured{display:block}.more-grid .more-photo{flex:none;min-height:auto}.gear img.flip{transform:scaleX(-1)}.frames-gear-list>div:first-child{border-top:0;padding-top:0}.recent{flex:1;display:flex;flex-direction:column;gap:14px;min-height:0}.recent-text .wf-title{font-size:clamp(28px,3vw,48px)}.slides-wrap{position:relative;flex:none;aspect-ratio:3 / 2;display:flex}.slides{position:relative;flex:1;min-height:0;display:block;overflow:hidden;background:var(--ph)}.slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .8s ease}.slide.on{opacity:1}.slide .fr-media,.slide .fr-ph{width:100%;height:100%;object-fit:contain}.slide-cap{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;font-size:14px;min-height:22px}.slide-num{color:var(--mute);letter-spacing:.12em;font-size:12px}.slide-title{font-weight:500}.slide-meta{color:var(--mute)}.slide-controls{display:flex;align-items:center;gap:10px}.slide-nav{position:absolute;top:50%;transform:translateY(-50%);font:inherit;font-size:18px;width:36px;height:36px;border:1px solid var(--ink);background:var(--bg);color:var(--ink);cursor:pointer;line-height:1}.slide-nav{opacity:0;transition:opacity .25s}.slides-wrap:hover .slide-nav,.slides-wrap:focus-within .slide-nav,.slides-wrap.show .slide-nav{opacity:1}@media (prefers-reduced-motion: reduce){.slide-nav{transition:none}}.slide-prev{left:10px}.slide-next{right:10px}.slide-controls .links-line{margin-left:0;font-size:14px}.slide-nav:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion: reduce){.slide{transition:none}}.more-grid{max-width:min(100%,520px,60svh)}@media (max-width: 860px){.nav{align-items:center;padding-top:10px;padding-bottom:0}.nav ul{gap:2px}.nav a:not(.mark){height:auto;padding:11px 7px}.hero-img{height:82vw}.slide-nav{width:44px;height:44px}.slide-controls .links-line{padding:12px 0}.works-list li:only-child{flex:0 0 min(100%,280px)}.works-list a,.works-list .item{aspect-ratio:auto;overflow:visible}.works-list .media{position:relative;aspect-ratio:1}.works-list .cap{position:static;background:none;color:var(--ink);padding:10px 0 0;opacity:1;font-size:14px}.works-list .cap .d{color:var(--mute)}.proj-page .proj-strip{height:62vw}.gear.g3{transform:translate(-6%)}.gear.g1{transform:translate(8%);margin-top:-4%}.mf-meta{display:none}.mf-cap{padding:6px 8px;font-size:11px}}@media (max-width: 860px){.works-list{justify-content:flex-end}}@media (max-width: 860px){.hero{display:flex;flex-direction:column;min-height:100svh;padding-bottom:calc(var(--pad) * 1.5);row-gap:0}.hero-img{position:relative;flex:1 1 auto;height:auto;min-height:70vw;margin-bottom:var(--pad)}.hero-img img.hero-photo{position:absolute;right:0;bottom:0;width:100%;height:100%;max-width:100%;left:auto;top:auto;object-fit:cover;object-position:50% 30%}.hero-text{flex:none}}@media (max-width: 860px){.hero .hero-text{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;column-gap:14px;row-gap:0}.hero h1{font-size:clamp(34px,10.5vw,70px)}.hero-facts{margin:0 0 4px;padding:0;max-width:none}.hero-facts .school{flex-direction:column;align-items:flex-start;gap:8px}.hero-facts .school img{width:46px;height:auto;max-height:none;align-self:flex-start}.hero-facts .school-text strong{font-size:14px;line-height:1.15;letter-spacing:-.02em}.hero-facts .school-text span{font-size:13px;line-height:1.2;letter-spacing:-.015em}.hero-facts .school-text em{font-size:11px;margin-top:4px}}@media (max-width: 860px){.gear-field{gap:36px;padding:24px 0}.gear.g3{transform:translate(-9vw)}.gear.g1{transform:translate(9vw);margin-top:0}}@media (max-width: 860px){.gear-field{gap:22px;padding:8px 0 12px;margin-top:8px}.gear.g3{width:min(52%,230px,19svh)}.gear.g1{width:min(62%,276px,23svh)}}@media (max-width: 860px){.mf-cap{display:none}}.proj-media{flex:none;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:6px}.proj-media .strip-bar{grid-column:1 / -1}.proj-media .proj-video{flex:none;height:clamp(220px,42svh,460px);aspect-ratio:16 / 9;border:0;background:var(--ph)}@media (max-width: 860px){.proj-media{grid-template-columns:minmax(0,1fr);row-gap:6px}.proj-media .proj-video{width:100%;height:auto}}.proj-head .title-logo[src*=verity]{height:.7em;margin-left:.3em;transform:none}.proj-strip .proj-screenshot{cursor:zoom-in}.duo .travel{flex-direction:column;align-items:flex-start;gap:14px}.duo .travel .map-wrap{width:min(100%,calc(100svh - 370px));min-width:220px}.duo .travel-side{flex:none;width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}.duo .travel-side .detail{flex:0 0 100%}.duo .travel .map-wrap{margin-left:auto;margin-right:auto}.duo .work-feature{justify-content:center}@media (max-width: 860px){.about-portrait-only{justify-self:stretch;width:100%}.about-portrait-only .ph{aspect-ratio:1 / 1}.more-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:auto;grid-auto-rows:auto;gap:14px 6px}.more-grid figure{grid-column:auto;display:block}.more-grid .more-featured{grid-column:1 / -1}.more-grid figure:not(.more-featured) .ph{aspect-ratio:3 / 4;flex:none}.more-grid figcaption{font-size:12px}.stepper button{width:44px;height:44px}.travel-side{gap:8px 24px}}@media (max-width: 860px){.works-stage{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;gap:var(--pad);padding-top:78px}.works-title{margin-left:0;font-size:clamp(56px,20vw,120px)}.works-list{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;width:100%;justify-content:stretch}.works-list li,.works-list li:only-child{flex:none;min-width:0}.works-list .media{overflow:hidden}.works-list .media img{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto}.works-list .cap{padding:8px 0 0}}.more-slides{display:none}.more-slides .slide .fr-media{object-fit:cover}@media (max-width: 860px){.about-title{order:1}.about-portrait-only{order:2}.about-side{order:3}.about-portrait-only .ph{aspect-ratio:4 / 3}.more-grid{display:none}.more-slides{display:flex;margin-top:var(--pad);flex:none}}@media (max-width: 860px){#more{order:-1}}.masonry{display:flex;gap:3px;align-items:flex-start}.masonry-col{list-style:none;flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.progress{display:block;width:min(100%,120px);height:2px;background:var(--line);align-self:center}.progress i{display:block;height:100%;background:var(--ink);transition:width .35s ease}.lb .progress{background:#ffffff38}.lb .progress i{background:#e9eaec}@media (prefers-reduced-motion: reduce){.progress i{transition:none}}.mf .fr-media,.mf .fr-ph{position:absolute;top:0;right:0;bottom:0;left:0}@media (max-width: 860px){.duo .work-feature{align-items:center;text-align:center;gap:0}.duo .wf-text{display:contents}.duo .wf-win{order:-1;margin:0 0 16px;flex-direction:column;justify-content:center;gap:6px;padding:12px 22px 10px;width:fit-content}.duo .wf-win svg{width:22px;height:22px}.duo .wf-tile{margin-bottom:18px}.duo .wf-desc{max-width:30ch}}@media (min-width: 861px){.about-portrait-only{grid-column:8 / -1;grid-row:1 / span 2;align-self:center;justify-self:center;width:min(32vw,500px,calc((100svh - 190px)*.8));margin-top:40px}}.panel.will-reveal.in-view:not(.focus)>*{opacity:.4}.works-list li{position:relative}.works-list .octo{position:relative;display:block;width:62%;height:62%;animation:octo-roam 18s ease-in-out infinite}.octo-body{position:relative;display:block;width:100%;height:100%}.works-list .media .octo img{position:static;inset:auto;margin:0;width:100%;height:100%}.works-list li:hover .octo-body,.works-list a:focus-visible .octo-body{animation:octo-wiggle .7s ease-in-out infinite}.octo .lid{position:absolute;top:41.9%;width:13.3%;height:13.1%;margin:-6.55% 0 0 -6.65%;border-radius:50%;background:#fd8901;transform:scaleY(0);transform-origin:50% 0;animation:octo-blink 5.2s infinite;pointer-events:none}.octo .lid.l{left:29.1%}.octo .lid.r{left:70.7%}@keyframes octo-roam{0%,to{transform:translate(0) rotate(0)}16%{transform:translate(16%,-14%) rotate(5deg)}34%{transform:translate(6%,10%) rotate(-3deg)}52%{transform:translate(-18%,4%) rotate(-6deg)}70%{transform:translate(-8%,-12%) rotate(4deg)}86%{transform:translate(10%,6%) rotate(-2deg)}}@keyframes octo-wiggle{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-6deg) scale(1.04)}75%{transform:rotate(6deg) scale(1.04)}}@keyframes octo-blink{0%,93%,to{transform:scaleY(0)}96%{transform:scaleY(1.25)}}.works-list .bubble{position:absolute;left:50%;bottom:calc(100% - 10px);z-index:3;padding:6px 10px;background:var(--bg);border:1px solid var(--ink);font-size:12px;white-space:nowrap;opacity:0;transform:translate(-50%,4px);transition:opacity .2s,transform .2s;pointer-events:none}.works-list .bubble:after{content:"";position:absolute;left:calc(50% - 4px);bottom:-5px;width:8px;height:8px;background:var(--bg);border:solid var(--ink);border-width:0 1px 1px 0;transform:rotate(45deg)}.works-list li:hover .bubble,.works-list li:focus-within .bubble{opacity:1;transform:translate(-50%)}@media (hover: none){.works-list .bubble{display:none}}@media (max-width: 860px){.works-list .media .octo{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto}}@media (prefers-reduced-motion: reduce){.works-list .octo,.octo .lid,.works-list li:hover .octo-body{animation:none}.works-list .bubble{transition:none}}@media (min-width: 861px){.works-list a,.works-list .item{overflow:visible}.works-list .media img[src*=verity]{width:72%;height:72%}.works-list .cap{top:calc(88% + 2px);bottom:auto;display:flex;flex-direction:column;align-items:center;gap:1px;padding:0;background:none;color:var(--ink);font-size:13px;line-height:1.2;text-align:center;white-space:nowrap}.works-list .cap .t{font-weight:600}.works-list .cap .d,.works-list .cap .s{display:block;color:var(--mute);font-size:12px}.works-list li:focus-within .cap{opacity:1}}.works-stage{position:relative}.works-title,.works-list{position:relative;z-index:2}.works-list .slot .slot-box{aspect-ratio:1}.roam-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.roamer{position:absolute;left:0;top:0;width:clamp(84px,8.2vw,120px);aspect-ratio:394 / 397;display:block;pointer-events:auto;will-change:transform}.roamer .octo{display:block;width:100%;height:100%;animation:none;transform:rotate(var(--lean, 0deg)) scale(var(--sx, 1),var(--sy, 1));transform-origin:50% 40%}.roamer .octo-body{width:100%;height:100%}.roamer .octo-body img{width:100%;height:100%;display:block}.roamer:hover .octo-body,.roamer:focus-visible .octo-body{animation:octo-wiggle .7s ease-in-out infinite}.roam-cap{position:absolute;left:50%;top:calc(100% + 4px);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;text-align:center;gap:1px;font-size:13px;white-space:nowrap;opacity:0;transition:opacity .25s;pointer-events:none}.roam-cap .t{font-weight:600}.roam-cap .d,.roam-cap .s{color:var(--mute);font-size:12px}.roamer:hover .roam-cap,.roamer:focus-visible .roam-cap{opacity:1}@media (prefers-reduced-motion: reduce){.roam-cap{transition:none}}.ink-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.ink{position:absolute;width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);border-radius:46% 54% 52% 48%/55% 45%;background:#2b3045;filter:blur(1.5px);opacity:0;animation:ink-puff var(--d, 4s) ease-out forwards}@keyframes ink-puff{0%{opacity:0;transform:translate(0) scale(.25)}10%{opacity:.9;transform:translate(calc(var(--dx) * .3),calc(var(--dy) * .3)) scale(1)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.9)}}
