@font-face{font-family:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/archivo-black-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/archivo-black-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Karla;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/karla-var-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Karla;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/karla-var-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-mono-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-mono-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--white:#f7f7f4;--ink:#131313;--surface:#1c1c1c;--line:#2a2a2a;--muted-light:#6b6b66;--muted:#9a9a94;--red:#e8401c;--red-dark:#c4330f;--display:"Archivo Black", "Arial Black", Impact, sans-serif;--body:"Karla", "Helvetica Neue", Arial, sans-serif;--mono:"IBM Plex Mono", "SFMono-Regular", Menlo, monospace;--gutter:64px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=860px){:root{--gutter:24px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ink);color:var(--white);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.5;overflow-x:hidden}h1,h2,h3,p{margin:0}a{color:var(--red)}a:hover{color:var(--red-dark)}img,video{max-width:100%;display:block}button{font:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:3px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.section,.hero{scroll-margin-top:72px}@media (width<=860px){.section,.hero{scroll-margin-top:64px}}[hidden]{display:none!important}.display{font-family:var(--display);letter-spacing:-.01em;color:var(--white);font-weight:400;line-height:.95}.dot-anchor{white-space:nowrap}.dot-period{font-size:0}.dot.white{background:var(--white)}.dot{background:var(--red);vertical-align:.04em;border-radius:50%;width:.22em;height:.22em;margin-left:.14em;display:inline-block}.mono{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.mono.small{font-size:11px}.btn{background:var(--red);height:52px;color:var(--white);font-family:var(--body);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:0 28px;font-size:17px;font-weight:700;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.btn:hover{background:var(--red-dark);color:var(--white)}.btn.outline{border:1px solid var(--white);background:0 0}.btn.outline:hover,.btn.light{background:var(--white);color:var(--ink)}.btn.light:hover{color:var(--ink);background:#e6e6e1}.btn.small{height:44px;padding:0 20px;font-size:15px}.tag{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--muted);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:11px;display:inline-block}.tags{flex-wrap:wrap;gap:8px;display:flex}.link-arrow{color:var(--red);font-size:16px;font-weight:500;text-decoration:none}.link-arrow:hover{color:var(--red-dark)}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px}.chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;flex-direction:column;gap:4px;padding:12px 18px;display:flex}.chip b{color:var(--white);font-size:15px}.chip .mono{font-size:10px}.round{border:1px solid var(--line);background:var(--surface);width:48px;height:48px;color:var(--white);border-radius:50%;flex:none;justify-content:center;align-items:center;text-decoration:none;transition:border-color .2s;display:inline-flex}.round:hover{border-color:var(--muted);color:var(--white)}.round img,.round svg{width:20px;height:20px}.round img{filter:invert()}.deco{pointer-events:none;border-radius:50%;position:absolute}.deco.ring{overflow:visible}.deco.ring circle{fill:none;stroke:var(--red);stroke-width:2px;stroke-dasharray:100 100000}.js .deco.ring circle{stroke-dashoffset:100px;transition:stroke-dashoffset 1.6s cubic-bezier(.4,0,.2,1) .15s}.js .deco.ring.in circle{stroke-dashoffset:0}@media (prefers-reduced-motion:reduce){.js .deco.ring circle{stroke-dashoffset:0;transition:none}}.deco.disc{background:var(--red)}.section{padding:112px var(--gutter);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.section h2.display{font-size:56px}@media (width<=860px){.section{padding:72px var(--gutter)}.section h2.display{font-size:40px}}.site-header{z-index:20;height:72px;padding:0 var(--gutter);background:var(--ink);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:flex;position:sticky;top:0}.site-header.is-hidden{transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.site-header{transition:none}}.brand{letter-spacing:.01em;color:var(--white);font-size:20px;font-weight:700;text-decoration:none}.brand:hover{color:var(--white)}.site-nav{align-items:center;gap:32px;display:flex}.site-nav a{color:var(--white);font-size:16px;text-decoration:none}.site-nav a:hover{color:var(--muted)}.site-nav .btn{margin-left:20px}.menu-button{background:var(--red);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:48px;height:48px;padding:0;transition:background .2s;display:inline-flex}.menu-button:hover{background:var(--red-dark)}.menu-button span{background:linear-gradient(var(--white) 0 2px, transparent 2px 6px, var(--white) 6px 8px, transparent 8px 12px, var(--white) 12px 14px);border-radius:1px;width:20px;height:14px;display:block}.menu-anchor{display:inline-flex;position:relative}.site-header .menu-anchor{display:none}@media (width<=860px){.site-header{height:64px;padding-right:16px}.brand{font-size:17px}.site-nav{display:none}.site-header .menu-anchor{display:inline-flex}.site-header .menu-button{width:38px;height:38px}}.menu-popover{z-index:60;background:var(--ink);border:1px solid var(--line);border-radius:16px;flex-direction:column;min-width:220px;padding:8px;display:flex;position:absolute;top:calc(100% + 10px);right:0}.menu-popover[hidden]{display:none}.menu-popover a{color:var(--white);white-space:nowrap;border-radius:10px;padding:10px 14px;font-size:16px;font-weight:500;text-decoration:none}.menu-popover a:hover{background:var(--surface);color:var(--white)}.menu-popover hr{border:0;border-top:1px solid var(--line);margin:6px}.menu-popover a.quiet{color:var(--muted);font-size:14px}.menu-popover a.quiet:hover{color:var(--white)}.site-footer{padding:40px var(--gutter);color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;font-size:14px;display:grid}.site-footer .legal{justify-self:end}.site-footer .round{width:40px;height:40px}.site-footer .round img,.site-footer .round svg{width:17px;height:17px}.site-footer .socials{gap:10px;display:flex}.site-footer .legal{align-items:center;gap:12px;display:flex}.site-footer .legal a{color:var(--muted);text-decoration:none}.site-footer .legal a:hover{color:var(--white)}@media (width<=860px){.site-footer{text-align:center;padding:32px var(--gutter);flex-direction:column;align-items:center;display:flex}}.js .reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(26px)}.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transition:none;transform:none}}.hero{padding:96px var(--gutter);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"title portrait""text portrait";align-items:center;column-gap:24px;min-height:calc(100dvh - 72px);display:grid;position:relative;overflow:hidden}.hero h1.display{grid-area:title;align-self:end}.hero .portrait{grid-area:portrait}.hero-text{flex-direction:column;grid-area:text;align-self:start;align-items:flex-start;min-width:0;padding-right:48px;display:flex}.hero h1.display{letter-spacing:-.02em;font-size:clamp(48px,7.2vw,104px)}.hero .typed-line{min-height:40px;margin-top:28px;font-size:30px;line-height:1.3}.hero .typed{color:var(--red);font-weight:700}.hero .typed-line .dot{vertical-align:-.04em}.hero .caret{vertical-align:-.12em;background:var(--red);width:3px;height:.9em;margin-left:5px;animation:1s steps(2,start) infinite blink;display:inline-block}@keyframes blink{to{visibility:hidden}}.hero .actions{flex-wrap:wrap;gap:16px;margin-top:40px;display:flex}.hero .socials{flex-wrap:wrap;align-items:center;gap:28px;margin-top:40px;display:flex}.social-link{color:var(--white);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.social-link:hover{color:var(--white)}.social-link .mono{font-size:10px}.social-link b{font-size:15px;display:block}.portrait{aspect-ratio:520/540;justify-self:end;width:min(520px,100%);position:relative}.portrait .disc-back{aspect-ratio:1;background:var(--red);border-radius:50%;width:65.4%;position:absolute;top:7.4%;left:26.9%}.portrait .photo{aspect-ratio:1;border:8px solid var(--ink);background:var(--line);border-radius:50%;width:65.4%;position:absolute;top:14.8%;left:19.2%;overflow:hidden}.portrait .photo img{object-fit:cover;object-position:50% 18%;width:100%;height:100%}.portrait .chip{white-space:nowrap;position:absolute}.portrait .chip-location{top:61%;left:0}.portrait .chip-birthday{top:0;right:0}.portrait .chip-study{bottom:3%;right:7%}.portrait .deco.small-disc{width:38px;height:38px;top:8.7%;left:9%}.portrait .deco.small-ring{width:58px;height:58px;top:71.1%;left:87.3%}.portrait .deco.tiny-disc{width:28px;height:28px;top:84.8%;left:19.8%}.js .portrait .disc-back{transition:transform .9s cubic-bezier(.2,.7,.2,1) .5s;transform:translate(-11.77%,11.75%)scale(.9)}.js .portrait .deco.small-disc,.js .portrait .deco.tiny-disc{transition:transform .45s cubic-bezier(.3,1.6,.5,1) 1.3s;transform:scale(0)}.js .portrait .deco.tiny-disc{transition-delay:2.2s}.js .portrait.in .disc-back,.js .portrait.in .deco.small-disc,.js .portrait.in .deco.tiny-disc{transform:none}.js .portrait:not(.in) .deco.ring.small-ring circle{stroke-dashoffset:100px}.js .portrait .deco.ring.small-ring circle{transition-delay:1.75s;transition-duration:.45s!important}@media (prefers-reduced-motion:reduce){.js .portrait .disc-back,.js .portrait .deco.small-disc,.js .portrait .deco.tiny-disc{transition:none;transform:none}.js .portrait:not(.in) .deco.ring.small-ring circle{stroke-dashoffset:0}}@media (width<=1000px){.hero{padding:56px var(--gutter) 64px;grid-template-columns:1fr;grid-template-areas:"title""portrait""text";min-height:0}.hero-text{padding-right:0}.hero h1.display{font-size:clamp(44px,9vw,88px)}.portrait{justify-self:start;width:min(440px,100%);margin:24px 0 8px}}@media (width<=860px){.hero h1.display{font-size:clamp(44px,12.5vw,88px)}.hero .typed-line{min-height:32px;font-size:24px}.hero .actions{flex-wrap:wrap;gap:12px;margin-top:28px}.hero .actions .btn{flex:auto;justify-content:center;min-width:0;padding-left:16px;padding-right:16px;font-size:15px}.hero .socials{gap:12px;margin-top:32px}.hero .socials .social-link>span:last-child{display:none}}@media (width<=600px){.portrait{aspect-ratio:auto;justify-self:start;width:100%;height:auto;margin:36px 0 8px;padding-top:300px}.portrait .disc-back{width:240px;height:240px;top:0;left:86px}.js .portrait:not(.in) .disc-back{transform:translate(-12.5%,12.5%)scale(.9)}.portrait .photo{border-width:6px;width:240px;height:240px;top:30px;left:56px}.portrait .chip{position:static}.portrait .chips{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex;position:static}.portrait .deco.small-disc{width:30px;height:30px;top:31px;left:21px}.portrait .deco.small-ring{width:42px;height:42px;top:238px;left:283px}.portrait .deco.tiny-disc{width:22px;height:22px;top:248px;left:20px}.hero-order{display:contents}}.section .deco.corner{width:280px;height:280px;top:-90px;right:-90px}@media (width<=860px){.section .deco.corner{width:160px;height:160px;top:-90px;right:-70px}}.section .deco.corner-bottom{width:190px;height:190px;bottom:-60px;right:-60px}.section .deco.corner-left{width:220px;height:220px;top:-110px;left:-70px}@media (width<=860px){.section .deco.corner-left{width:160px;height:160px;top:-80px;left:-70px}}.section.project-section .deco.corner-bottom{width:220px;height:220px;bottom:-70px;right:-70px}.timeline-columns{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;display:grid}.timeline-columns .mono{margin-bottom:32px;display:block}.entry{grid-template-columns:24px minmax(0,1fr);column-gap:24px;padding-bottom:44px;display:grid}.entry:last-child{padding-bottom:0}.entry .rail{border-left:1px solid var(--line);margin-top:10px;margin-left:5px;position:relative}.entry .rail:before{content:"";background:var(--red);border-radius:50%;width:11px;height:11px;position:absolute;top:-5px;left:-6px}.entry .body{flex-direction:column;gap:6px;display:flex}.entry .period{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px}.entry h3{margin-top:4px;font-size:22px;font-weight:700;line-height:1.2}.entry .org{color:var(--muted);font-size:16px}.entry p{margin-top:6px;font-size:16px;line-height:1.55}@media (width<=860px){.timeline-columns{grid-template-columns:1fr;row-gap:56px}.entry{column-gap:20px;padding-bottom:40px}.entry h3{font-size:20px}}.section-head h2.display{margin-bottom:0}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:48px;display:flex;position:relative}.carousel-nav{gap:12px;display:flex}.carousel-nav button{border:1px solid var(--line);background:var(--surface);width:52px;height:52px;color:var(--white);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:20px;transition:background .2s,border-color .2s;display:flex}.carousel-nav button:hover{background:var(--red);border-color:var(--red);color:var(--white)}.cards{--per-view:3;--gap:24px;touch-action:pan-y;margin:-3px;padding:3px;position:relative;overflow:hidden}.cards.dragging,.cards.dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.cards .track{grid-auto-flow:column;grid-auto-columns:calc((100% - var(--gap) * (var(--per-view) - 1)) / var(--per-view));gap:var(--gap);transition:transform .5s cubic-bezier(.4,0,.2,1);display:grid}@media (prefers-reduced-motion:reduce){.cards .track{transition:none}}.cards.probe{grid-template-columns:repeat(var(--per-view), minmax(0, 1fr));gap:var(--gap);visibility:hidden;pointer-events:none;display:grid;position:absolute;top:0;left:0}.project-card{color:var(--white);flex-direction:column;gap:14px;padding:20px 20px 28px;text-decoration:none;transition:border-color .2s;display:flex}.project-card:hover{color:var(--white);border-color:var(--muted)}.project-card .media{background:var(--line);border-radius:12px;height:200px;overflow:hidden}.project-card .media img,.project-card .media video{object-fit:cover;width:100%;height:100%}.project-card .media.pdf{align-items:flex-end;padding:16px;display:flex}.project-card .kicker{margin-top:8px;padding:0 8px;font-size:11px}.project-card h3,.neighbor b{-webkit-hyphens:auto;hyphens:auto}.project-card h3{padding:0 8px;font-size:24px;font-weight:700;line-height:1.15}.project-card p{padding:0 8px;font-size:16px;line-height:1.5}.project-card .tags{margin-top:4px;padding:0 8px}.project-card .link-arrow{margin-top:auto;padding:12px 8px 0}.carousel-dots{align-items:center;gap:8px;margin-top:40px;display:flex}.carousel-dots button{background:var(--line);cursor:pointer;border:0;border-radius:999px;width:8px;height:8px;padding:0;transition:width .25s,background .25s}.carousel-dots button[aria-current=true]{background:var(--red);width:28px}.cards.gallery{--per-view:2}@media (width<=1100px){.cards{--per-view:2}}@media (width<=860px){.cards.gallery{--per-view:1}}@media (width<=760px){.cards{--per-view:1;--gap:16px}.carousel-nav button{width:48px;height:48px}.section-head{margin-bottom:32px}.carousel-dots{margin-top:28px}}.contact{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-content:center;align-items:start;column-gap:80px;min-height:calc(100dvh - 72px);display:grid}@media (width<=860px){.contact{min-height:calc(100dvh - 64px)}}.contact .intro{max-width:440px;margin-top:28px;font-size:18px}.contact .direct{flex-direction:column;gap:6px;margin-top:40px;display:flex}.contact .direct a{color:var(--red);font-size:18px;font-weight:700;text-decoration:none}.contact-form{z-index:1;flex-direction:column;gap:20px;padding:40px;display:flex;position:relative}.contact-form .row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.field label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.field input,.field textarea{background:var(--ink);border:1px solid var(--line);width:100%;color:var(--white);font-family:var(--body);border-radius:12px;padding:0 18px;font-size:16px}.field input{height:52px}.field textarea{resize:vertical;padding:16px 18px;line-height:1.5}.field input:focus,.field textarea:focus{border-color:var(--red);outline:none}.field input[aria-invalid=true]{border-color:var(--red)}.contact-form .actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.contact-form .consent{color:var(--muted);max-width:420px;font-size:14px}.form-status{min-height:1.5em;font-size:15px}.form-status.ok{color:#6fcf8a}.form-status.error{color:var(--red)}@media (width<=860px){.contact{grid-template-columns:1fr;row-gap:36px}.contact .intro{margin-top:20px;font-size:17px}.contact .direct{margin-top:28px}.contact-form{gap:18px;padding:24px}.contact-form .row{grid-template-columns:1fr}.contact-form .actions{flex-direction:column-reverse;align-items:stretch}.contact-form .actions .btn{width:100%}}.project-head{padding:64px var(--gutter) 0;flex-direction:column;gap:40px;display:flex;position:relative;overflow:hidden}.back-link{color:var(--muted);align-self:flex-start;align-items:center;gap:10px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--white)}.project-title{display:block}.project-title h1.display{letter-spacing:-.02em;margin-top:18px;font-size:clamp(44px,6.1vw,88px)}.project-title .subtitle{max-width:720px;margin-top:24px;font-size:24px;line-height:1.4}.aside .card b.frame{font-size:17px;line-height:1.4}.frame-media{border:1px solid var(--line);background:var(--surface);aspect-ratio:16/10;border-radius:20px;position:relative;overflow:hidden}button.frame-media{width:100%;font:inherit;color:inherit;cursor:zoom-in;padding:0;display:block}button.frame-media:focus-visible{outline:2px solid var(--red);outline-offset:3px}.frame-media .shot{object-fit:contain;width:100%;height:100%;padding:5%;position:absolute;inset:0}.project-hero .frame-media{aspect-ratio:21/9;border-radius:24px;max-height:560px}.project-hero .shot{padding:3%}.project-hero.pdf{background:var(--line);border-radius:24px;justify-content:space-between;align-items:flex-end;min-height:220px;padding:24px;display:flex}.description{padding:96px var(--gutter);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;column-gap:80px;display:grid}.description h2.display{font-size:40px}.description .text{flex-direction:column;gap:18px;max-width:680px;margin-top:28px;font-size:19px;line-height:1.6;display:flex}.explainer{border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:680px;margin-top:28px}.explainer summary{cursor:pointer;color:var(--white);justify-content:flex-start;align-items:center;gap:14px;padding:18px 0;list-style:none;display:flex}.explainer summary::-webkit-details-marker{display:none}.explainer summary .mono{color:var(--white)}.explainer .chevron{border-right:2px solid var(--red);border-bottom:2px solid var(--red);flex:none;width:9px;height:9px;margin-top:-4px;transition:transform .2s;transform:rotate(45deg)}.explainer.is-open .chevron{transform:rotate(-135deg)}.explainer-text{color:var(--muted);flex-direction:column;gap:14px;padding:0 0 22px;font-size:17px;line-height:1.6;display:flex}.aside{flex-direction:column;gap:16px;display:flex}.aside .card{flex-direction:column;gap:16px;padding:28px 32px;display:flex}.aside ul{flex-direction:column;gap:10px;margin:0;padding:0;font-size:16px;line-height:1.4;list-style:none;display:flex}.aside li{align-items:baseline;gap:12px;display:flex}.aside li:before{content:"";background:var(--red);border-radius:50%;flex:none;width:7px;height:7px}.aside .links a{color:var(--white);border-bottom:1px solid var(--line);text-decoration:none;transition:color .2s,border-color .2s}.aside .links a:hover{color:var(--red);border-color:var(--red)}.highlights{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid;position:relative}.highlight{flex-direction:column;gap:18px;padding:28px;display:flex}.highlight .num{font-family:var(--mono);letter-spacing:.08em;color:var(--red);font-size:12px}.highlight p{font-size:17px;line-height:1.5}.gallery-item{flex-direction:column;gap:12px;min-width:0;margin:0;display:flex}.gallery-item figcaption{color:var(--muted);font-size:15px}.neighbors{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid;position:relative}.neighbor{color:var(--white);flex-direction:column;gap:10px;padding:28px 32px;text-decoration:none;transition:border-color .2s;display:flex}.neighbor:hover{color:var(--white);border-color:var(--muted)}.neighbor.next{text-align:right;align-items:flex-end}.neighbor b{font-size:24px;line-height:1.15}.neighbor span:last-child{color:var(--muted);font-size:15px}.section.project-section h2.display{margin-bottom:48px;font-size:40px}.section.project-section .section-head h2.display{margin-bottom:0}@media (width<=1100px){.highlights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.project-head{gap:28px;padding-top:40px}.project-title .subtitle{font-size:19px}.project-hero .frame-media{aspect-ratio:16/10}.project-hero.pdf{flex-wrap:wrap;gap:16px}.section-head{flex-wrap:wrap;row-gap:12px}.description{padding:72px var(--gutter);grid-template-columns:1fr;row-gap:36px}.description .text{font-size:17px}.description h2.display,.section.project-section h2.display{font-size:32px}.section.project-section h2.display{margin-bottom:32px}.neighbor b{font-size:20px}}@media (width<=600px){.highlights,.neighbors{grid-template-columns:1fr;gap:16px}}.legal-page{padding:80px var(--gutter) 112px;max-width:820px}.legal-page h1.display{width:max-content;max-width:calc(100vw - 2 * var(--gutter));margin-bottom:40px;font-size:min(clamp(40px,6vw,72px),11vw)}.legal-page h2{margin:40px 0 12px;font-size:22px;font-weight:700}.legal-page p{margin-bottom:12px;font-size:17px;line-height:1.6}.legal-page .mono{margin-bottom:12px;display:block}.lightbox{width:100%;max-width:none;height:100%;max-height:none;color:var(--white);background:0 0;border:0;margin:0;padding:24px 96px;position:fixed;inset:0}.lightbox[open]{grid-template-rows:minmax(0,1fr) auto;place-items:center;gap:16px;display:grid}.lightbox::backdrop{background:#131313f0}body:has(.lightbox[open]){overflow:hidden}.lightbox .stage{justify-content:center;align-items:center;width:100%;height:100%;min-height:0;display:flex}.lightbox .stage img,.lightbox .stage video{object-fit:contain;border:1px solid var(--line);background:var(--surface);border-radius:16px;width:auto;max-width:min(1400px,100%);height:auto;max-height:calc(100dvh - 140px)}.lightbox .caption{max-width:720px;color:var(--muted);text-align:center;font-size:16px}.lightbox button{border:1px solid var(--line);background:var(--surface);width:52px;height:52px;color:var(--white);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:22px;transition:background .2s,border-color .2s;display:inline-flex;position:fixed}.lightbox button:hover{background:var(--red);border-color:var(--red)}.lightbox .stage:focus,.lightbox button:focus:not(:focus-visible){outline:none}.lightbox button:focus-visible{outline:2px solid var(--red);outline-offset:3px}.lightbox .close{top:24px;right:24px}.lightbox .prev,.lightbox .next{top:50%;transform:translateY(-50%)}.lightbox .prev{left:24px}.lightbox .next{right:24px}@media (width<=760px){.lightbox{padding:72px 16px 88px}.lightbox .stage img,.lightbox .stage video{max-height:calc(100dvh - 220px)}.lightbox .close{top:16px;right:16px}.lightbox .prev,.lightbox .next{top:auto;bottom:16px;transform:none}.lightbox .prev{left:16px}.lightbox .next{right:16px}}
