@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.hidden{display:none}.inline{display:inline}.resize{resize:both}}:root{--white:#fff;--black:#000;--panel:#fff;--muted:#9a9a9a}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--white)}body{background:var(--white);color:var(--black);margin:0;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-weight:700}a{color:inherit;text-decoration:none}img,svg{display:block}.archive-site{background:var(--white);min-height:100vh}.site-footer{background:var(--white);color:#00000080;text-align:center;border-top:1px solid #00000014;padding:1.4rem clamp(2.5rem,8vw,6rem)}.site-footer p{letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem}.home-route{background:var(--black)}.splash{z-index:40;background:var(--black);scroll-snap-align:start;place-items:center;height:100svh;min-height:620px;display:grid;position:relative;overflow:hidden}.home-route .splash{z-index:0;position:sticky;top:0}.splash video{object-fit:cover;opacity:0;filter:saturate(.78)contrast(1.05)brightness(.62);width:100%;height:100%;transition:opacity 1.6s,transform 6.8s;position:absolute;inset:0;transform:scale(1.025)}.splash video.is-active{opacity:1;z-index:1;transition:opacity,transform 6.8s;transform:scale(1)}.splash video::-webkit-media-controls{opacity:0!important;pointer-events:none!important;display:none!important}.splash video::-webkit-media-controls-enclosure{opacity:0!important;pointer-events:none!important;display:none!important}.splash video::-webkit-media-controls-start-playback-button{opacity:0!important;pointer-events:none!important;display:none!important}.splash:after{z-index:2;content:"";pointer-events:none;background:linear-gradient(#00000047,#0000001a 48%,#00000057),#0000002e;animation:2.2s cubic-bezier(.7,0,.2,1) both openingShade;position:absolute;inset:0}.splash-logo{z-index:6;width:clamp(190px,28vw,380px);color:var(--white);fill:var(--white);filter:drop-shadow(0 1px 20px #0000003d);transform-origin:50%;transition:opacity .42s,transform .42s;position:relative}.splash-logo path{stroke:currentColor;stroke-width:.16px;vector-effect:non-scaling-stroke}@keyframes klmLetterIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes klmEquitiesIn{0%{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}.splash-logo .klm-letter{opacity:0;animation:.34s cubic-bezier(.2,.7,.2,1) both klmLetterIn}.splash-logo .klm-k{animation-delay:.16s}.splash-logo .klm-l{animation-delay:.36s}.splash-logo .klm-m{animation-delay:.56s}.splash-logo .klm-equities{opacity:0;animation:.72s cubic-bezier(.2,.7,.2,1) .86s both klmEquitiesIn}@media (prefers-reduced-motion:reduce){.splash-logo .klm-letter,.splash-logo .klm-equities{opacity:1;animation:none}}html[data-home-scrolled=true] .home-route .splash-logo{opacity:0!important;transform:translateY(-12px)scale(.96)!important}.archive-header{z-index:20;background:var(--white);scroll-snap-align:start;position:sticky;top:0}.home-route .archive-header{background:var(--white);color:var(--black);transition:background .18s,color .18s}html[data-work-visible=true] .home-route .archive-header{background:var(--white);color:var(--black)}.archive-header nav{letter-spacing:.02em;text-transform:uppercase;grid-template-columns:repeat(4,1fr);align-items:center;gap:1rem;min-height:clamp(56px,5.55vw,112px);padding:0 clamp(1.25rem,4vw,3rem);font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-style:normal;font-weight:500;line-height:20px;display:grid}.archive-header a{transition:opacity .16s}.archive-header a:hover{opacity:.42}.home-wordmark{white-space:nowrap}.work-index{z-index:2;gap:clamp(1.4rem,3vw,3rem);width:min(100% - clamp(40px,4vw,80px),820px);margin:0 auto;padding:0 0 7rem;display:grid;position:relative}.home-route .work-index{--home-work-offset:0px;--home-white-start:var(--home-work-offset);min-height:100svh;padding-top:var(--home-work-offset);color:var(--black);gap:clamp(1.4rem,3vw,3rem)}.home-route .work-index:before{z-index:0;content:"";background:var(--white);width:100vw;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.home-route .work-entry:first-child{z-index:1;scroll-snap-align:none;width:100%;margin-inline:auto;position:relative}.home-route .work-entry:first-child .work-image{height:auto;min-height:0}.home-route .work-entry:first-child .work-image img{object-fit:fill;height:auto!important}.home-route .work-entry:not(:first-child){z-index:1;color:var(--black);background:var(--white);position:relative}.home-route .information{color:var(--black);background:var(--white);box-shadow:0 0 0 100vmax var(--white);clip-path:inset(0 -100vmax)}.work-entry{scroll-snap-align:start;display:block}.work-image{width:100%;line-height:0;position:relative;overflow:visible}.work-image img{width:100%;transition:transform .7s;display:block;height:auto!important}.work-entry:hover .work-image img{transform:scale(1.025)}.work-entry h3{letter-spacing:.02em;text-transform:uppercase;margin:.55rem 0 0;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-style:normal;font-weight:500;line-height:20px}.information{z-index:2;border-top:1px solid var(--black);grid-template-columns:1fr 2fr;gap:clamp(1.4rem,5vw,5rem);width:min(100% - clamp(2.5rem,8vw,6rem),1180px);margin:0 auto;padding:7rem 0;font-weight:400;display:grid;position:relative}.information h2,.information h3{text-transform:uppercase;margin:0;font-size:clamp(1rem,1.55vw,1.45rem);line-height:1.08}.information p{max-width:720px;margin:0 0 1.35rem;font-size:clamp(1rem,1.5vw,1.28rem);font-weight:400;line-height:1.45}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:2rem;display:grid}.portfolio-map{z-index:2;border-top:1px solid var(--black);width:100%;color:var(--black);background:var(--white);padding:clamp(2rem,5vw,4rem) 0;position:relative}.map-intro h2,.map-intro p{margin:0}.map-intro h2{text-transform:uppercase;margin-bottom:1.5rem;font-size:clamp(1rem,1.55vw,1.45rem);line-height:1.08}.map-intro p{max-width:460px;margin-bottom:1.4rem;font-size:clamp(1rem,1.5vw,1.28rem);font-weight:400;line-height:1.45}.map-intro a{text-transform:uppercase;border-bottom:1px solid;padding-bottom:.12rem;font-size:clamp(.86rem,1.2vw,1rem);display:inline-block}.map-panel{border:1px solid #00000029;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:stretch;gap:0;width:min(100% - clamp(40px,4vw,80px),820px);height:clamp(620px,84vh,900px);margin:0 auto;display:grid}.map-canvas{background:#00000a;min-height:clamp(620px,84vh,900px);position:relative;overflow:hidden}.map-side-panel{grid-template-rows:minmax(300px,38vh) minmax(0,1fr);min-height:clamp(560px,82vh,900px);display:grid;overflow:hidden}.map-street-panel{background:var(--white);border-bottom:1px solid #00000024;min-height:300px;position:relative;overflow:hidden}.globe-layer{z-index:1;transition:opacity .6s;position:absolute;inset:0}.globe-layer.is-hidden{opacity:0;pointer-events:none}.globe-fallback{z-index:2;text-align:center;background:#00000a;flex-direction:column;justify-content:center;align-items:center;gap:.7rem;padding:2rem;display:flex;position:absolute;inset:0}.globe-fallback-title{color:var(--white);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.95rem}.globe-fallback-text{color:#ffffff8c;max-width:380px;margin:0;font-size:.82rem;line-height:1.6}.globe-style-switcher{z-index:4;flex-wrap:wrap;justify-content:flex-end;gap:.35rem;max-width:min(520px,100% - 2rem);display:flex;position:absolute;bottom:1rem;right:1rem}.globe-style-switcher button{color:#ffffffb8;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0f2eb8;border:1px solid #ffffff2e;padding:.42rem .62rem;font-size:.58rem;line-height:1;transition:background .14s,border-color .14s,color .14s}.globe-style-switcher button:hover,.globe-style-switcher button.is-active{color:var(--white);background:#00c8ff38;border-color:#00c8ff}.street-layer{z-index:2;opacity:0;pointer-events:none;transition:opacity .6s;position:absolute;inset:0}.street-layer.is-visible{opacity:1;pointer-events:auto}.street-layer:not(.is-visible),.street-layer:not(.is-visible) *{pointer-events:none!important}.map-transition{z-index:4;color:var(--white);text-transform:uppercase;letter-spacing:.1em;background:#000000b8;padding:.5rem 1rem;font-size:.64rem;position:absolute;bottom:1.4rem;left:50%;transform:translate(-50%)}.streetview-overlay{background:#00000a;flex-direction:column;display:flex;position:absolute;inset:0}.streetview-placeholder{text-align:center;color:var(--black);place-content:center;gap:.7rem;padding:2rem;display:grid;position:absolute;inset:0}.streetview-placeholder span{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700}.streetview-placeholder p{color:#0000008a;max-width:300px;margin:0;font-size:.82rem;line-height:1.45}.streetview-header{background:var(--black);height:56px;color:var(--white);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;gap:1rem;padding:0 1rem;font-size:.7rem;display:flex}.streetview-header-left{align-items:baseline;gap:.55rem;min-width:0;display:flex}.streetview-header-right{flex-shrink:0;align-items:center;gap:.9rem;display:flex}.streetview-pin-dot{color:#00c8ff}.streetview-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.streetview-coords{color:#ffffff80;font-size:.62rem}.streetview-btn{color:var(--white);font:inherit;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border:1px solid #fff6;align-items:center;gap:.4rem;padding:.42rem .7rem;font-size:.64rem;transition:background .16s,color .16s;display:inline-flex}.streetview-btn:hover{background:var(--white);color:var(--black)}.streetview-stage{background:#00000a;flex:1;position:relative}.map-container,.sv-container{z-index:1;width:100%;height:100%;position:absolute;inset:0}.map-container.active,.sv-container.active{z-index:2}.map-type-switcher{z-index:5;background:#0a0f2eeb;border:1px solid #ffffff2e;display:flex;position:absolute;top:.9rem;right:.9rem}.map-type-btn{color:#fff9;font:inherit;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:none;padding:.42rem .7rem;font-size:.6rem;transition:background .14s,color .14s}.map-type-btn:hover{color:var(--white)}.map-type-btn.is-active{color:#0a0f2e;background:#00c8ff}.gm-style .gm-style-iw-c{background:#0a0f2e!important;border-radius:0!important;padding:0!important;box-shadow:0 8px 28px #0000008c!important}.gm-style .gm-style-iw-d{background:#0a0f2e!important;overflow:hidden!important}.gm-style .gm-style-iw-tc:after{background:#0a0f2e!important}.gm-style .gm-style-iw-c button.gm-ui-hover-effect>span{background-color:#ffffffbf!important}.map-list-col{background:var(--white);border-left:1px solid #00000029;flex-direction:column;min-height:0;display:flex}.map-list-head{background:var(--black);color:#fff;letter-spacing:.16em;text-transform:uppercase;flex-shrink:0;align-items:center;height:56px;padding:0 clamp(1.1rem,2.4vw,1.7rem);font-size:clamp(.82rem,1.3vw,1rem);font-weight:700;display:flex}.map-list{flex:1;align-content:start;min-height:0;margin:0;padding:0 clamp(1.2rem,2.4vw,1.9rem);list-style:none;display:grid;overflow-y:auto}.map-list-item{border-bottom:1px solid #00000024;gap:.7rem;display:grid}.map-list-button{color:#0009;width:100%;font:inherit;text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:none;gap:.35rem;padding:.95rem 0 .3rem;transition:color .16s;display:grid}.map-list-button:hover{color:var(--black)}.map-list-item.is-active .map-list-button{color:var(--black);padding-top:1.1rem;padding-bottom:.6rem}.map-list-image{aspect-ratio:16/10;background:var(--white);width:100%;margin-bottom:.4rem;position:relative;overflow:hidden}.map-list-image img{object-fit:cover;width:100%;height:100%}.map-list-content{grid-template-columns:auto 1fr;align-items:start;gap:.35rem .5rem;display:grid}.map-list-pin{color:var(--black);grid-row:span 2;align-items:center;padding-top:.1rem;display:flex}.map-list-title{letter-spacing:.32px;text-transform:none;color:#3b3b3b;grid-column:2;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:700;line-height:24px}.map-list-item.is-active .map-list-title{color:var(--black)}.map-list-location{letter-spacing:.32px;text-transform:none;color:#0000008c;grid-column:2;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px}:is(.map-list-content:not(:has(.map-list-pin)) .map-list-title,.map-list-content:not(:has(.map-list-pin)) .map-list-location){grid-column:1/-1}.map-list-cta{color:#0009;letter-spacing:.08em;text-transform:uppercase;background:#0000000f;justify-self:start;margin-bottom:1.1rem;padding:.7rem 1.1rem;font-size:.72rem;transition:background .16s,color .16s}.map-list-cta:hover{color:var(--black);background:#0000001f}.contact-page{border-top:1px solid var(--black);grid-template-columns:1fr 2fr;gap:clamp(1.4rem,5vw,5rem);width:min(100% - clamp(2.5rem,8vw,6rem),1180px);min-height:calc(100vh - 84px);margin:0 auto;padding:clamp(5rem,12vw,10rem) 0;display:grid}.contact-page p,.contact-page h1{letter-spacing:.32px;text-transform:uppercase;margin:0;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:32px;font-weight:500;line-height:38.4px}.contact-page h1{letter-spacing:normal;margin-bottom:1.25rem;font-size:clamp(1rem,1.6vw,1.35rem);font-weight:700;line-height:1.1}.contact-page address{letter-spacing:.32px;text-transform:none;gap:.55rem;max-width:720px;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:24px;display:grid}.view-switch{z-index:30;opacity:0;pointer-events:none;background:var(--white);width:max-content;box-shadow:none;border:1px solid #0000001f;transition:opacity .22s;display:flex;position:fixed;bottom:1.35rem;left:50%;transform:translate(-50%)}html[data-work-tabs-visible=true] .home-route .view-switch,html[data-archive-scrolled=true] .work-route .view-switch{opacity:1;pointer-events:auto}.view-switch a{min-width:60px;height:37px;color:var(--muted);text-transform:uppercase;place-items:center;padding:0 .65rem;font-size:.78rem;line-height:1;display:grid}.view-switch a:first-child{color:var(--black)}.project-page{background:var(--white);min-height:100vh}.project-nav{position:fixed;inset:0 0 auto}.project-spacer{scroll-snap-align:start;height:clamp(190px,28vh,260px)}@keyframes openingShade{0%,72%{background:var(--black)}to{background:linear-gradient(#00000047,#0000001a 48%,#00000057),#0000002e}}@keyframes klmIntro{0%,16%{opacity:0;letter-spacing:0;filter:drop-shadow(0 0 #fff0);transform:translateY(10px)scale(.94)}32%{opacity:1;filter:drop-shadow(0 0 16px #ffffff1a);transform:translateY(0)scale(.98)}56%{opacity:1;filter:drop-shadow(0 0 26px #ffffff2e);transform:translateY(0)scale(1)}70%{opacity:1;filter:drop-shadow(0 0 34px #ffffff42);transform:translateY(0)scale(1.015)}to{opacity:1;filter:drop-shadow(0 1px 20px #0000003d);transform:translateY(0)scale(1)}}.project-media{background:var(--white);width:100%;height:clamp(380px,74vw,900px);position:relative}.project-media-button{appearance:none;background:var(--white);width:100%;color:inherit;font:inherit;cursor:pointer;border:0;padding:0;display:block}.project-media img{object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .7s}.project-media-button:hover img{filter:contrast(1.04);transform:scale(1.018)}.project-meta{z-index:25;background:var(--white);text-transform:uppercase;grid-template-columns:1fr auto;align-items:center;gap:2rem;min-height:74px;padding:0 clamp(1.25rem,4vw,3rem);display:grid;position:fixed;inset:auto 0 0}.project-meta h1,.project-meta span,.project-meta summary{margin:0;font-size:clamp(.95rem,1.55vw,1.45rem);line-height:1}.close-label{display:none}.property-reveal{z-index:80;background:var(--white);color:var(--black);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,visibility 0s linear .18s;position:fixed;inset:0;overflow:hidden}.property-reveal.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .12s}.property-reveal-media{z-index:2;background:var(--white);will-change:width;width:100vw;min-width:50vw;position:fixed;inset:0 auto 0 0;overflow:hidden}.property-reveal.is-open .property-reveal-media{animation:.9s cubic-bezier(.22,1,.36,1) forwards propertyImageToSide}.property-reveal-media img{object-fit:cover;will-change:transform}.property-reveal.is-open .property-reveal-media img{animation:.9s cubic-bezier(.22,1,.36,1) forwards propertyImageSettle}.property-reveal-media:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000001f,#0000 40%);position:absolute;inset:0}.property-reveal-media-label{z-index:3;color:var(--white);text-transform:uppercase;text-shadow:0 1px 22px #00000073;position:absolute;inset:auto clamp(1.25rem,3vw,2.8rem) clamp(1.25rem,3vw,2.8rem)}.property-reveal-media-label span,.property-reveal-media-label h2{margin:0;font-size:clamp(.95rem,1.5vw,1.35rem);font-weight:700;line-height:1;display:block}.property-reveal-media-label h2{margin-top:1.1rem}.property-reveal-copy{z-index:3;background:var(--white);will-change:transform;min-height:100svh;padding:clamp(4.6rem,7vw,7rem) clamp(1.5rem,5vw,4.2rem) 4rem;position:fixed;inset:0 0 0 50vw;overflow-y:auto;transform:translateY(100%)}.property-reveal.is-open .property-reveal-copy{animation:.76s cubic-bezier(.22,1,.36,1) .28s forwards propertyCopyRise}.property-reveal-controls{z-index:5;align-items:center;display:flex;position:fixed;top:clamp(1.25rem,4vw,3rem);right:clamp(1.25rem,4vw,3rem)}.property-reveal-close{color:var(--black);font:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:0;font-size:clamp(.95rem,1.55vw,1.45rem);font-weight:700;line-height:1;transition:opacity .16s}.property-reveal-close:hover{opacity:.5}.property-reveal-next{color:var(--black);text-transform:uppercase;border-top:1px solid #0000002e;align-items:center;gap:.7rem;margin-top:3rem;padding-top:1.8rem;font-size:clamp(1.3rem,2.2vw,2.2rem);font-weight:700;line-height:1;transition:opacity .16s;display:flex}.property-reveal-next:hover{opacity:.5}.property-reveal-back{z-index:3;color:var(--white);text-transform:uppercase;letter-spacing:.04em;text-shadow:0 1px 10px #000000b3;align-items:center;gap:.45rem;font-size:clamp(.78rem,1.05vw,1rem);font-weight:700;transition:opacity .16s;display:inline-flex;position:absolute;top:clamp(1.1rem,3vw,2.2rem);left:clamp(1.1rem,3vw,2.2rem)}.property-reveal-back:hover{opacity:.6}.reveal-slide{object-fit:cover;opacity:0;transition:opacity .5s}.reveal-slide.is-active{opacity:1}.reveal-slide-arrow{z-index:3;color:#ffffffeb;cursor:pointer;opacity:0;background:#0f0f1257;border:0;border-radius:999px;justify-content:center;align-items:center;width:clamp(2.1rem,3vw,2.7rem);height:clamp(2.1rem,3vw,2.7rem);font-size:1.2rem;line-height:1;transition:opacity .2s,background .16s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.property-reveal-media:hover .reveal-slide-arrow,.reveal-slide-arrow:focus-visible{opacity:1}.reveal-slide-arrow:hover{background:#0f0f129e}.reveal-slide-prev{left:clamp(1rem,2.5vw,1.8rem)}.reveal-slide-next{right:clamp(1rem,2.5vw,1.8rem)}.reveal-slide-dots{z-index:3;background:#00000061;border-radius:999px;gap:.5rem;padding:.5rem .7rem;display:flex;position:absolute;bottom:clamp(1.1rem,3vw,2rem);left:50%;transform:translate(-50%)}.reveal-dot{border:1px solid var(--white);cursor:pointer;background:0 0;border-radius:999px;width:7px;height:7px;padding:0;transition:background .16s}.reveal-dot.is-active{background:var(--white)}.properties-listing{background:var(--white);min-height:100vh;color:var(--black);padding:clamp(8rem,13vw,11rem) clamp(1.25rem,5vw,4rem) clamp(4rem,8vw,7rem)}.properties-listing-head{gap:clamp(1.2rem,2.5vw,2rem);padding-bottom:clamp(2rem,4vw,3.2rem);display:grid}.properties-listing-head h1{letter-spacing:.32px;text-transform:uppercase;margin:0;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:32px;font-weight:500;line-height:38.4px}.properties-toggle{gap:clamp(1.2rem,2.4vw,2.2rem);display:flex}.properties-toggle a,.properties-toggle span{text-transform:uppercase;letter-spacing:0;color:var(--black);font-size:clamp(.9rem,1.55vw,1.35rem);font-weight:400}.properties-toggle a{transition:opacity .16s}.properties-toggle a:hover{opacity:.5}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.properties-all-layout{border:1px solid #00000029;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);height:clamp(620px,84vh,900px);margin-top:clamp(1.4rem,3vw,2.4rem);display:grid}.properties-map-col{background:var(--white);min-height:0;position:relative}.properties-list-col{background:var(--white);border-left:1px solid #00000029;flex-direction:column;min-height:0;display:flex}.properties-list-scroll{scroll-behavior:smooth;flex:1;min-height:0;padding:clamp(1.4rem,2.6vw,2.3rem) clamp(1.3rem,2.6vw,2.1rem) clamp(2rem,4vw,3rem);overflow-y:auto}.properties-area+.properties-area{margin-top:clamp(1.8rem,3.5vw,2.8rem)}.properties-area h3{letter-spacing:0;text-transform:uppercase;color:var(--black);margin:0 0 .5rem;font-size:clamp(1.25rem,2vw,1.75rem);font-style:italic;font-weight:700;line-height:1.1}.properties-area ul{margin:0;padding:0;list-style:none}.properties-row{border-bottom:1px solid #0000001f;flex-direction:column;align-items:flex-start;gap:.32rem;padding:clamp(1rem,2vw,1.45rem) 0;display:flex}.properties-row-select{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:.3rem;padding:0;display:flex}.properties-row-title{letter-spacing:.32px;text-transform:none;color:#3b3b3b;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:700;line-height:24px;transition:color .14s}.properties-row-select:hover .properties-row-title,.properties-row.is-active .properties-row-title{color:var(--black)}.properties-row-loc{letter-spacing:.32px;text-transform:none;color:#0000008c;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px}.properties-row-cta{letter-spacing:.1em;text-transform:uppercase;color:#3b3b3b;background:#0000000f;margin-top:.6rem;padding:clamp(.62rem,1.3vw,.9rem) clamp(1rem,2.2vw,1.6rem);font-size:clamp(.68rem,1vw,.8rem);font-weight:700;transition:background .14s}.properties-row-cta:hover{background:#0000001f}.about-page{background:var(--white);min-height:100vh;color:var(--black);padding:clamp(8rem,13vw,11rem) clamp(1.25rem,5vw,4rem) clamp(4rem,8vw,7rem)}.about-page h1{letter-spacing:.32px;text-transform:uppercase;margin:0 0 clamp(2.2rem,5vw,3.6rem);font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:32px;font-weight:500;line-height:38.4px}.about-lead{border-top:1px solid var(--black);max-width:940px;padding-top:clamp(2rem,4vw,3.2rem)}.about-lead p{letter-spacing:.32px;text-transform:none;margin:0 0 1.4rem;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px}.about-lead p:last-child{margin-bottom:0}.about-lead a{transition:opacity .16s}.about-lead a:hover{opacity:.5}.contact-name{letter-spacing:normal;text-transform:uppercase;color:#000;margin:0 0 .6rem;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:20.48px;font-style:normal;font-weight:700;line-height:22.528px}.contact-form{max-width:560px;margin-top:clamp(2.4rem,5vw,4rem)}.contact-field{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.contact-field label{letter-spacing:.08em;text-transform:uppercase;color:#0009;font-size:.72rem;font-weight:700}.contact-field input,.contact-field textarea{background:var(--white);width:100%;color:var(--black);border:1px solid #00000040;padding:.8rem .9rem;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px;transition:border-color .16s}.contact-field textarea{resize:vertical}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#00000059}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--black);outline:none}.contact-submit{background:var(--black);color:var(--white);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:0;padding:.95rem 2.4rem;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:700;transition:opacity .16s}.contact-submit:hover{opacity:.78}.contact-required{letter-spacing:.04em;text-transform:uppercase;color:#00000073;margin:1rem 0 0;font-size:.72rem}.about-cols{border-top:1px solid #0003;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.8rem,5vw,4.5rem);max-width:940px;margin-top:clamp(2.8rem,6vw,4.6rem);padding-top:clamp(2rem,4vw,3rem);display:grid}.about-block h2{text-transform:uppercase;margin:0 0 .7rem;font-size:clamp(1rem,1.6vw,1.35rem);font-weight:700;line-height:1.1}.about-block p{letter-spacing:.32px;text-transform:none;margin:0 0 .65rem;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px}.about-block p:last-child{margin-bottom:0}.about-block a{transition:opacity .16s}.about-block a:hover{opacity:.5}@media (max-width:640px){.about-cols{grid-template-columns:1fr}}.properties-featured{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(1.4rem,3vw,2.6rem);display:grid}.properties-card{flex-direction:column;gap:.3rem;display:flex}.properties-card-image{aspect-ratio:3/2;background:var(--white);margin-bottom:.7rem;position:relative;overflow:hidden}.properties-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.22,1,.36,1)}.properties-card:hover .properties-card-image img{transform:scale(1.04)}.properties-card-title{text-transform:uppercase;font-size:clamp(1rem,1.6vw,1.3rem);font-weight:700;line-height:1.12}.properties-card-loc{color:#0000008c;font-size:clamp(.78rem,1.1vw,.92rem)}.properties-card-cta{text-transform:uppercase;letter-spacing:.05em;margin-top:.35rem;font-size:clamp(.7rem,.95vw,.82rem);font-weight:700;transition:opacity .16s}.properties-card:hover .properties-card-cta{opacity:.5}.all-map{background:var(--white);width:100%;height:100%}.properties-area-dropdown{z-index:6;flex-shrink:0;position:relative}.properties-area-dropdown summary{background:var(--black);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;height:56px;padding:0 clamp(1.1rem,2.4vw,1.7rem);list-style:none;display:flex}.properties-area-dropdown summary::-webkit-details-marker{display:none}.properties-area-dropdown summary span{letter-spacing:.16em;text-transform:uppercase;color:#fff;font-size:clamp(.82rem,1.3vw,1rem);font-weight:700}.properties-area-dropdown summary span:last-child{letter-spacing:0;font-size:.72rem;transition:transform .18s}.properties-area-dropdown[open] summary span:last-child{transform:rotate(180deg)}.properties-area-dropdown nav{z-index:6;background:var(--white);border:1px solid #0000002e;border-top:0;flex-direction:column;max-height:clamp(220px,44vh,340px);display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 26px 44px #0003}.properties-area-dropdown a{letter-spacing:.1em;text-transform:uppercase;color:var(--black);border-bottom:1px solid #0000001a;padding:clamp(.85rem,1.7vw,1.15rem) clamp(1.1rem,2.4vw,1.7rem);font-size:clamp(.84rem,1.25vw,1rem);font-weight:700;transition:background .14s}.properties-area-dropdown a:last-child{border-bottom:0}.properties-area-dropdown a:hover{background:#0000000d}.properties-area{scroll-margin-top:clamp(6rem,10vw,9rem)}@media (max-width:820px){.properties-all-layout{grid-template-columns:1fr;height:auto}.properties-map-col{height:clamp(300px,50vh,440px)}.properties-list-col{border-top:1px solid #00000029;border-left:0;height:clamp(460px,72vh,680px)}}.property-reveal-gallery-btn{border:1px solid var(--black);color:var(--black);font:inherit;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;align-items:center;gap:.5rem;margin:0 0 2.6rem;padding:.7rem 1.15rem;font-size:.72rem;font-weight:700;transition:background .16s,color .16s;display:inline-flex}.property-reveal-gallery-btn:hover{background:var(--black);color:var(--white)}.flipbook-overlay{z-index:100;background:#08080af7;flex-direction:column;display:flex;position:fixed;inset:0}.flipbook-bar{color:var(--white);justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);display:flex}.flipbook-title{text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;font-weight:700}.flipbook-close{color:var(--white);font:inherit;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border:1px solid #fff6;padding:.5rem .9rem;font-size:.66rem;font-weight:700;transition:background .16s,color .16s}.flipbook-close:hover{background:var(--white);color:var(--black)}.flipbook-stage{flex:1;justify-content:center;align-items:center;min-height:0;padding:.5rem 1rem;display:flex}.flipbook-page{background:#fff;overflow:hidden}.flipbook-page img{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.flipbook-hint{text-align:center;color:#ffffff73;text-transform:uppercase;letter-spacing:.08em;margin:0;padding:.7rem 1rem 1.4rem;font-size:.62rem}.property-book-page{background:var(--white);justify-content:center;align-items:center;min-height:100svh;padding:clamp(4rem,9vw,7rem) 1rem clamp(4rem,8vw,6.5rem);display:flex;position:relative}.property-book-back,.property-book-next{text-transform:uppercase;letter-spacing:.05em;color:var(--black);font-size:.72rem;font-weight:700;transition:opacity .16s;position:absolute}.property-book-back{top:clamp(1.1rem,3vw,2rem);left:clamp(1.1rem,4vw,3rem)}.property-book-next{bottom:clamp(1.1rem,3vw,2rem);left:50%;transform:translate(-50%)}.property-book-back:hover,.property-book-next:hover{opacity:.5}.property-book-wrap{justify-content:center;align-items:center;gap:clamp(.4rem,2vw,1.6rem);display:flex}.property-book-stage{flex-shrink:0;width:min(1100px,80vw)}.property-book{filter:drop-shadow(0 26px 44px #00000042)}.book-arrow{background:var(--white);width:clamp(2.4rem,4vw,3.2rem);height:clamp(2.4rem,4vw,3.2rem);color:var(--black);cursor:pointer;border:1px solid #00000040;border-radius:999px;flex-shrink:0;font-size:1.3rem;line-height:1;transition:background .16s,color .16s}.book-arrow:hover{background:var(--black);color:var(--white)}.book-page{background:var(--white);padding:clamp(.9rem,2.4vw,1.7rem);overflow:hidden}.book-cover{text-align:center;justify-content:center;align-items:center;display:flex}.book-cover-inner{flex-direction:column;align-items:center;gap:.85rem;display:flex}.book-cover-brand{letter-spacing:.18em;text-transform:uppercase;color:#0000008c;font-size:.62rem;font-weight:700}.book-cover-rule{background:#00000052;width:40px;height:1px}.book-cover h2{text-transform:uppercase;margin:0;font-size:clamp(1.4rem,3vw,2.3rem);line-height:1.06}.book-cover-loc{letter-spacing:.06em;text-transform:uppercase;color:#0000008c;font-size:.72rem;font-weight:700}.book-photo{justify-content:center;align-items:center;display:flex}.book-photo img{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%;display:block}.book-text-inner{width:100%;height:100%;overflow-y:auto}.book-kicker{letter-spacing:.12em;text-transform:uppercase;color:#00000080;font-size:.6rem;font-weight:700;display:block}.book-text-inner h3{text-transform:uppercase;margin:.4rem 0 1rem;font-size:clamp(1.05rem,2.2vw,1.5rem);line-height:1.1}.book-text-inner h4{letter-spacing:.1em;text-transform:uppercase;color:#00000080;margin:1.1rem 0 .3rem;font-size:.62rem;font-weight:700}.book-text-inner p{margin:0;font-size:.82rem;font-weight:400;line-height:1.5}.book-facts{grid-template-columns:1fr 1fr;gap:.7rem 1rem;margin:0 0 .4rem;display:grid}.book-facts dt{letter-spacing:.08em;text-transform:uppercase;color:#00000080;font-size:.56rem;font-weight:700}.book-facts dd{margin:.2rem 0 0;font-size:.8rem}.property-reveal-kicker{color:#0000008f;text-transform:uppercase;margin:0 0 1rem;font-size:.78rem;font-weight:700;line-height:1;display:block}.property-reveal-copy>h2{letter-spacing:.32px;text-transform:uppercase;max-width:980px;margin:0 4rem 3rem 0;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:32px;font-weight:500;line-height:38.4px}.property-reveal p{letter-spacing:.32px;text-transform:none;max-width:1080px;margin:0 0 1.35rem;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px}.project-meta details{display:contents}.project-meta summary{cursor:pointer;list-style:none}.project-meta summary::-webkit-details-marker{display:none}.project-meta details[open] summary{z-index:60;position:fixed;top:clamp(1.25rem,4vw,3rem);right:clamp(1.25rem,4vw,3rem)}.project-meta details[open] .details-label{display:none}.project-meta details[open] .close-label{display:inline}.details-panel{z-index:50;background:var(--white);color:var(--black);text-transform:none;will-change:transform;grid-template-columns:minmax(320px,33vw) 1fr;padding:0;animation:.36s cubic-bezier(.22,1,.36,1) forwards detailsSlideIn;display:grid;position:fixed;inset:0;overflow-y:auto;transform:translate(100%);box-shadow:-24px 0 70px #0000002e}.details-media-panel{background:var(--white);text-transform:uppercase;grid-template-rows:auto 1fr auto;gap:clamp(1.25rem,4vw,3rem);min-height:100svh;padding:clamp(1.25rem,3vw,2.6rem);display:grid}.details-media-panel>span,.details-media-panel h2{margin:0;font-size:clamp(1rem,1.55vw,1.45rem);font-weight:700;line-height:1}.details-copy-panel{background:var(--white);min-height:100svh;padding:clamp(1.75rem,4vw,3.2rem) clamp(1.5rem,5vw,4.2rem)}.details-copy-panel>h2{text-transform:uppercase;max-width:980px;margin:0 4rem 3rem 0;font-size:clamp(2.2rem,4vw,4.6rem);font-weight:700;line-height:.95}.details-panel p{max-width:1080px;margin:0 0 1.35rem;font-size:clamp(1rem,1.55vw,1.32rem);font-weight:400;line-height:1.45}.property-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;max-width:980px;margin:0 0 3rem;display:grid}.property-facts div{border-top:1px solid #0000002e;padding-top:.7rem}.property-facts dt,.details-section h3{color:#0000008f;text-transform:uppercase;margin:0 0 .45rem;font-size:.78rem;font-weight:700;line-height:1}.property-facts dd{letter-spacing:.32px;text-transform:none;margin:0;font-family:Neue Haas Grotesk Text,Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:24px}.details-section{max-width:1080px;margin-bottom:2.1rem}.details-photo{background:var(--white);align-self:center;width:100%;height:auto;min-height:0;position:relative;overflow:hidden}.details-photo img{object-fit:cover;width:100%;height:auto}.official-link{margin-top:2.2rem}.details-panel a{text-underline-offset:.18em;text-decoration:underline}@keyframes detailsSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes propertyImageToSide{0%{width:100vw}to{width:50vw}}@keyframes propertyImageSettle{0%{transform:scale(1)}to{transform:scale(1.04)}}@keyframes propertyCopyRise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (max-width:700px){.splash{min-height:100svh}.archive-header nav{grid-template-columns:repeat(4,auto);justify-content:space-between;gap:.75rem;min-height:56px;padding-inline:1.25rem;font-size:.82rem}.work-index{width:calc(100% - 40px)}.information,.portfolio-map,.contact-page{grid-template-columns:1fr}.portfolio-map{width:100%}.map-panel{grid-template-columns:1fr;height:auto}.map-canvas{min-height:460px}.map-list-col{border-top:1px solid #00000029;border-left:0}.info-grid,.property-facts,.details-panel{grid-template-columns:1fr}.property-reveal{overflow-y:auto}.property-reveal-media{width:100vw;min-width:0;height:48svh;position:relative}.property-reveal.is-open .property-reveal-media,.property-reveal.is-open .property-reveal-media img{animation:none}.property-reveal-copy{min-height:auto;padding:4.8rem 1.25rem 3rem;animation:none;position:relative;inset:auto;transform:translateY(100%)}.property-reveal.is-open .property-reveal-copy{animation:.56s cubic-bezier(.22,1,.36,1) forwards propertyCopyRise}.property-reveal-copy>h2{margin-right:3rem}.details-media-panel,.details-copy-panel{min-height:auto}.details-copy-panel>h2{margin-right:3rem}.project-spacer{height:220px}.project-media{height:62vh}.project-meta{grid-template-columns:1fr auto;gap:1rem;min-height:70px;padding-inline:1.25rem}.project-meta h1,.project-meta span,.project-meta summary{font-size:.86rem}}
