.dual-wave-wrapper{display:flex;width:100%;position:relative;gap:clamp(1.4rem,2.5vw,3rem);padding-left:clamp(3.2rem,4.8vw,5.5rem);padding-right:calc(clamp(360px,38vw,660px) + var(--projects-sidebar-width, 68px))}.wave-column{display:flex;flex-direction:column;gap:clamp(1.8rem,3.8vh,3rem);position:relative;z-index:100}.wave-column-left{flex:0 0 auto;min-width:clamp(110px,12vw,165px);align-items:flex-end;font-family:Inter,sans-serif;font-optical-sizing:auto;font-size:clamp(.76rem,.9vw,.94rem);font-weight:400;letter-spacing:.045em}.wave-column-right{flex:1;align-items:flex-start;font-family:Playfair Display,Playfair,serif;font-optical-sizing:auto;font-size:clamp(1.75rem,3.3vw,2.95rem);font-weight:400;letter-spacing:0;font-variant-ligatures:common-ligatures discretionary-ligatures contextual;font-feature-settings:"liga" 1,"dlig" 1,"calt" 1,"clig" 1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.animated-text{display:flex;height:auto;flex-shrink:0;box-sizing:border-box;color:#070600;opacity:.22;transition:opacity .28s cubic-bezier(.16,1,.3,1)}.wave-column-left .animated-text{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-end;text-align:right;white-space:nowrap;line-height:1.15;width:max-content;max-width:100%;padding-top:clamp(.25rem,.5vw,.55rem)}.wave-column-left .animated-text:after{content:"";display:block;width:6px;height:6px;border-radius:50%;margin-top:6px;flex-shrink:0;transition:transform .28s ease}.wave-column-left .animated-text.focused:after{transform:scale(1.15)}.wave-column-left .animated-text.category-ongoing:after{background:#ea526f}.wave-column-left .animated-text.category-residential:after{background:#070600}.wave-column-left .animated-text.category-corporate:after{background:#279af1}.wave-column-left .animated-text.category-others:after{background:#e59819}.wave-column-right .animated-text{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;text-align:left;white-space:normal;line-height:1.05;width:max-content;cursor:pointer;pointer-events:auto;text-decoration:none!important;position:relative}.wave-column-right .animated-text:hover{opacity:.38;text-decoration:none!important}.wave-column-right .animated-text:after{content:"↗";position:absolute;left:calc(100% + .5rem);top:.12em;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:clamp(.95rem,1.35vw,1.35rem);font-weight:300;line-height:1;color:#070600;opacity:0;pointer-events:none;transform:translate(-4px,4px);transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1),color .2s ease}.animated-text.focused{z-index:50;opacity:1!important}.wave-column-right .animated-text.focused{cursor:pointer}.wave-column-right .animated-text.focused:after{opacity:.45;transform:translate(0)}.wave-column-right .animated-text.focused:hover{opacity:1!important;transform:translate(3px);transition:transform .25s cubic-bezier(.16,1,.3,1)}.wave-column-right .animated-text.focused:hover:after{opacity:1;transform:translate(4px,-3px)}.project-filters{display:flex;align-items:center;gap:clamp(.35rem,.55vw,.65rem);flex-wrap:nowrap;white-space:nowrap}.filter-btn{background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:.34rem .75rem;font-family:Inter,sans-serif;font-size:clamp(.7rem,.78vw,.8rem);font-weight:400;letter-spacing:.04em;color:#555;cursor:pointer;display:inline-flex;align-items:center;gap:.42rem;transition:all .22s ease;pointer-events:auto;white-space:nowrap;flex-shrink:0}.filter-btn .filter-count{font-size:.8em;opacity:.6}.filter-btn:hover{border-color:#00000059;color:#000;background:#fffffff2}.filter-dot{width:6px;height:6px;border-radius:50%;display:inline-block;transition:background-color .22s ease;flex-shrink:0}.filter-btn--ongoing .filter-dot{background:#ea526f}.filter-btn--residential .filter-dot{background:#070600}.filter-btn--corporate .filter-dot{background:#279af1}.filter-btn--others .filter-dot{background:#e59819}.filter-btn.is-active{background:#070600;border-color:#070600;color:#fff;font-weight:500}.filter-btn.is-active .filter-count{opacity:.85}.filter-btn.is-active .filter-dot{background:#fff}.filter-btn--ongoing.is-active{background:#ea526f;border-color:#ea526f;color:#fff}.filter-btn--residential.is-active{background:#070600;border-color:#070600;color:#fff}.filter-btn--corporate.is-active{background:#279af1;border-color:#279af1;color:#fff}.filter-btn--others.is-active{background:#e59819;border-color:#e59819;color:#fff}.image-thumbnail-wrapper{position:fixed;top:0;right:var(--projects-sidebar-width, clamp(56px, 4.8vw, 76px));bottom:0;width:clamp(340px,36vw,620px);height:100vh;z-index:10;pointer-events:auto;cursor:pointer;overflow:hidden;background:transparent;transform:none}.projects-sidebar{position:fixed;top:0;right:0;bottom:0;width:var(--projects-sidebar-width, clamp(56px, 4.8vw, 76px));height:100vh;height:100dvh;background-color:var(--color-bg);z-index:1000;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:1.5rem 0;box-sizing:border-box;pointer-events:auto;-webkit-user-select:none;user-select:none}.sidebar-top-actions{display:flex;flex-direction:column;align-items:center;gap:1.35rem}.sidebar-bottom-actions{display:flex;flex-direction:column;align-items:center}.sidebar-action-btn{background:transparent;border:none;padding:.45rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#000;line-height:0;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.sidebar-action-btn:hover{opacity:.55}.sidebar-action-btn svg{display:block}.image-thumbnail{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:0;box-shadow:none;will-change:opacity,transform}.filter-dropdown-wrapper{position:relative;display:none}.filter-dropdown-trigger{background:#ffffffeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.16);border-radius:999px;padding:.46rem .95rem;font-family:Inter,sans-serif;font-size:clamp(.82rem,2.4vw,.88rem);font-weight:500;letter-spacing:.04em;color:#070600;cursor:pointer;display:inline-flex;align-items:center;gap:.52rem;transition:all .2s ease;pointer-events:auto}.filter-dropdown-trigger:hover,.filter-dropdown-wrapper.is-open .filter-dropdown-trigger{background:#fff;border-color:#00000059;box-shadow:0 2px 8px #00000014}.filter-current-count{font-size:.82em;opacity:.65}.dropdown-chevron{width:13px;height:13px;transition:transform .22s cubic-bezier(.16,1,.3,1);opacity:.75}.filter-dropdown-wrapper.is-open .dropdown-chevron{transform:rotate(180deg)}.filter-dropdown-menu{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(-6px);background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.12);border-radius:12px;box-shadow:0 10px 30px #00000026;padding:.45rem;display:flex;flex-direction:column;gap:4px;min-width:185px;z-index:500;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s cubic-bezier(.16,1,.3,1),visibility .2s}.filter-dropdown-wrapper.is-open .filter-dropdown-menu{opacity:1;pointer-events:auto;visibility:visible;transform:translate(-50%) translateY(0)}.filter-dropdown-item{display:flex;align-items:center;gap:.6rem;width:100%;border:none;background:transparent;padding:.52rem .8rem;border-radius:8px;font-size:.82rem;font-family:Inter,sans-serif;color:#333;cursor:pointer;transition:background .15s ease,color .15s ease;text-align:left}.filter-dropdown-item .item-name{flex:1;letter-spacing:.03em}.filter-dropdown-item .item-count{font-size:.82em;opacity:.6}.filter-dropdown-item:hover,.filter-dropdown-item.is-active{background:#0000000f;color:#000;font-weight:500}.filter-dropdown-item.is-active .filter-dot{transform:scale(1.2)}.filter-dot--all{background:#070600}.filter-dot--ongoing{background:#ea526f}.filter-dot--residential{background:#070600}.filter-dot--corporate{background:#279af1}.filter-dot--others{background:#e59819}@media(max-width:1080px),(hover:none)and (pointer:coarse)and (max-width:1366px){.projects-sidebar{display:none!important}.filter-dropdown-wrapper{display:inline-flex!important}.image-thumbnail-wrapper{position:fixed;inset:52px 0 auto;width:100vw;height:calc(60vh - 52px);height:calc(60dvh - 52px);z-index:200;background:var(--color-bg);border:none!important;border-top:none!important;border-bottom:none!important;box-shadow:none!important}.image-thumbnail{width:100%;height:100%;object-fit:contain!important;object-position:center!important}.container{position:relative;z-index:50;padding:0 .5rem}.dual-wave-wrapper{display:flex;width:100%;position:relative;z-index:50;gap:clamp(.85rem,2.5vw,1.8rem);padding-left:clamp(.8rem,2.8vw,2rem);padding-right:clamp(.8rem,2.8vw,2rem)}.wave-column{gap:2.2rem;z-index:50!important}.wave-column-left{flex:0 0 auto;min-width:clamp(75px,18vw,110px);font-size:clamp(.78rem,2.2vw,.92rem);letter-spacing:.03em;padding-top:.28rem;align-items:flex-end}.wave-column-left .animated-text{line-height:1.18;text-align:right}.wave-column-left .animated-text:after{width:5px;height:5px;margin-top:5px}.wave-column-right{flex:1;font-size:clamp(1.6rem,5.2vw,2.2rem);line-height:1.12;max-width:calc(100vw - clamp(100px,22vw,140px))}.wave-column-right .animated-text{width:100%;word-break:break-word;overflow-wrap:break-word}@media(min-width:768px){.dual-wave-wrapper{display:flex;justify-content:center;width:100%;max-width:100%;margin-left:auto;margin-right:auto;gap:clamp(1.8rem,3.2vw,3.2rem);padding-left:2rem;padding-right:2rem}.wave-column-left{flex:0 0 auto;min-width:clamp(110px,12vw,150px);font-size:clamp(.8rem,1vw,.95rem);align-items:flex-end}.wave-column-right{flex:0 1 auto;max-width:none;font-size:clamp(1.6rem,2.6vw,2.3rem);align-items:flex-start}.wave-column-right .animated-text{width:auto!important;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important}}}.projects-scroll-guide{position:fixed;left:calc(var(--page-padding) + clamp(20px,2.2vw,28px) / 2);bottom:clamp(7rem,18vh,14rem);transform:translate(-50%) rotate(-90deg);transform-origin:center center;z-index:120;pointer-events:none;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.scroll-guide-label{font-family:Inter,sans-serif;font-size:clamp(.62rem,.7vw,.74rem);font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#07060059;white-space:nowrap}@media(max-width:1080px){.projects-scroll-guide{display:none}}.projects-drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;background:#00000061;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2400;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s cubic-bezier(.16,1,.3,1),visibility .35s ease}.projects-drawer-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}.projects-drawer{position:fixed;top:0;right:0;height:100vh;height:100dvh;width:clamp(290px,24vw,360px);max-width:calc(100vw - 32px);background:#fff;z-index:2500;display:flex;flex-direction:column;padding:clamp(1.6rem,2.5vw,2.4rem);box-shadow:-12px 0 40px #00000014;border-left:1px solid rgba(0,0,0,.08);transform:translate(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);box-sizing:border-box;pointer-events:auto}.projects-drawer.is-open{transform:translate(0)}.projects-drawer-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem;border-bottom:1px solid rgba(0,0,0,.08)}.projects-drawer-title{font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#07060073}.projects-drawer-close-btn{background:transparent;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;color:#070600;transition:background-color .2s ease,transform .2s ease;outline:none}.projects-drawer-close-btn:hover{background:#0000000f;transform:scale(1.08)}.projects-drawer-nav{display:flex;flex-direction:column;gap:clamp(1.2rem,2.4vh,1.8rem);margin-top:clamp(2.5rem,4vh,3.5rem)}.projects-drawer-link{display:flex;align-items:center;justify-content:space-between;text-decoration:none!important;font-family:Inter,sans-serif;font-size:clamp(1.05rem,1.2vw,1.25rem);font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:#0706008c;transition:color .22s ease,transform .22s ease}.projects-drawer-link:hover{color:#000;transform:translate(4px)}.projects-drawer-link.is-active{font-weight:600;color:#000}.drawer-link-dot{width:6px;height:6px;border-radius:50%;background:#000;display:inline-block}.projects-drawer-footer{margin-top:auto;display:flex;flex-direction:column;gap:.8rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06)}.projects-drawer-social-link{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none!important;font-family:Inter,sans-serif;font-size:.78rem;font-weight:500;color:#070600a6;transition:color .2s ease,transform .2s ease}.projects-drawer-social-link:hover{color:#000;transform:translate(2px)}.projects-drawer-brand{font-family:Inter,sans-serif;font-size:.62rem;font-weight:500;letter-spacing:.1em;color:#07060059;text-transform:uppercase}.project-detail-view{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;background-color:#f6f7f8;color:#070600;z-index:9999;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .4s cubic-bezier(.16,1,.3,1),visibility .4s cubic-bezier(.16,1,.3,1)}.project-detail-view.is-active{opacity:1;pointer-events:auto;visibility:visible}body.detail-open{overflow:hidden!important}.detail-navbar{position:sticky;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.5rem clamp(1.5rem,4vw,4rem);background:#f6f7f8e0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:100;border-bottom:1px solid rgba(0,0,0,.06);transition:background .3s ease}.detail-nav-brand{display:flex;align-items:center;gap:clamp(.5rem,1vw,1rem);text-decoration:none!important;color:inherit;cursor:pointer;min-width:0;flex:1;overflow:hidden}.detail-brand-logo{height:22px;width:auto;display:block;flex-shrink:0}.detail-nav-category{font-family:Inter,sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#777;padding:.25rem .65rem;background:#0000000a;border-radius:999px;border:1px solid rgba(0,0,0,.06);flex-shrink:0}.detail-nav-divider{font-family:Inter,sans-serif;font-size:.72rem;color:#00000040;opacity:0;transform:translate(-4px);transition:opacity .25s ease,transform .25s ease;flex-shrink:0}.detail-nav-project-title{font-family:Playfair Display,Playfair,serif;font-size:clamp(.88rem,1vw,1.05rem);font-weight:400;color:#111;letter-spacing:-.01em;opacity:0;transform:translate(-6px);transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:clamp(180px,30vw,420px)}.project-detail-view.is-scrolled-past-hero .detail-nav-divider,.project-detail-view.is-scrolled-past-hero .detail-nav-project-title{opacity:1;transform:translate(0)}.detail-nav-actions{display:flex;align-items:center;gap:1.2rem;flex-shrink:0;margin-left:.75rem}.detail-close-btn{background:#ffffffe6;border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:.45rem 1.1rem;font-family:Inter,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.06em;color:#111;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #0000000a;flex-shrink:0;white-space:nowrap}.detail-close-btn:hover{background:#000;color:#fff;border-color:#000;transform:translateY(-1px);box-shadow:0 4px 12px #0000001f}.detail-close-btn svg{transition:transform .25s ease}.detail-close-btn:hover svg{transform:translate(-2px)}.detail-content-container{width:100%;max-width:1540px;margin:0 auto;padding:3rem clamp(1.5rem,4.5vw,4.5rem) 6rem;box-sizing:border-box}.detail-header-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(340px,1.15fr);gap:clamp(3rem,6.5vw,8rem);align-items:start;margin-bottom:clamp(4rem,8vw,7.5rem)}.detail-header-layout.has-no-desc{grid-template-columns:minmax(320px,860px)}.detail-header-left{display:flex;flex-direction:column}.detail-meta-top{display:flex;align-items:center;gap:1.5rem;margin-bottom:1rem}.detail-index-tag{font-family:Inter,sans-serif;font-size:clamp(.72rem,.8vw,.82rem);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#888}.detail-title{font-family:Playfair Display,Playfair,serif;font-size:clamp(1.95rem,3.3vw,3.1rem);font-weight:400;line-height:1.12;letter-spacing:-.015em;color:#070600;margin:0 0 clamp(2rem,3.5vw,3rem) 0}.detail-kunye-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.2rem,2vw,2rem);padding-top:2rem;border-top:1px solid rgba(0,0,0,.1);width:100%}.kunye-item{display:flex;flex-direction:column;gap:.35rem}.kunye-label{font-family:Inter,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#888}.kunye-value{font-family:Inter,sans-serif;font-size:clamp(.88rem,1vw,1.02rem);font-weight:400;color:#111;line-height:1.35}.detail-header-right{display:flex;flex-direction:column;padding-top:clamp(.2rem,.8vw,1.8rem)}.detail-description-section{width:100%}.detail-description-content{display:flex;flex-direction:column;gap:clamp(1.1rem,1.6vw,1.5rem)}.detail-description-p{font-family:Inter,sans-serif;font-size:clamp(.92rem,1.05vw,1.06rem);font-weight:400;line-height:1.82;color:#1a1a1a;margin:0;letter-spacing:.012em;font-variant-ligatures:common-ligatures discretionary-ligatures contextual;font-feature-settings:"liga" 1,"dlig" 1,"calt" 1,"clig" 1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(max-width:1080px){.detail-header-layout{grid-template-columns:1fr;gap:2.5rem}.detail-header-right{padding-top:0}}.detail-gallery{display:flex;flex-direction:column;gap:clamp(4rem,8vw,8.5rem);width:100%}.mag-block{width:100%;position:relative}.mag-block--hero{display:flex;justify-content:center;margin-bottom:clamp(1rem,2vw,2.5rem)}.mag-frame--hero{width:90%;display:flex;justify-content:center}.mag-block--asymmetric-left{display:flex;justify-content:space-between;align-items:flex-start;gap:clamp(2rem,5vw,5.5rem)}.mag-block--asymmetric-left .mag-frame--large{width:53%}.mag-block--asymmetric-left .mag-frame--small{width:35%;margin-top:clamp(3.5rem,8vw,9rem)}.mag-block--offset-right{display:flex;justify-content:flex-end;padding-right:clamp(0rem,2.5vw,3.5rem)}.mag-block--offset-right .mag-frame--medium{width:clamp(260px,47%,650px)}.mag-block--asymmetric-right{display:flex;justify-content:space-between;align-items:flex-start;gap:clamp(2rem,5vw,5.5rem)}.mag-block--asymmetric-right .mag-frame--small{width:35%;margin-top:clamp(3.5rem,8vw,9rem)}.mag-block--asymmetric-right .mag-frame--large{width:53%}.mag-block--centered-wide{display:flex;justify-content:center}.mag-block--centered-wide .mag-frame--wide{width:74%;display:flex;justify-content:center}.mag-block--offset-left{display:flex;justify-content:flex-start;padding-left:clamp(0rem,2.5vw,3.5rem)}.mag-block--offset-left .mag-frame--medium{width:clamp(260px,47%,650px)}.gallery-image-frame{position:relative;background-color:transparent;overflow:hidden;border-radius:0;height:auto;display:flex;justify-content:center;align-items:flex-start;opacity:0;transform:translateY(48px);cursor:zoom-in;transition:opacity 1.4s cubic-bezier(.16,1,.3,1),transform 1.4s cubic-bezier(.16,1,.3,1),filter .3s ease;will-change:opacity,transform}.gallery-image-frame:hover{filter:brightness(1.03)}.gallery-image-frame:focus-visible{outline:2px solid #111111;outline-offset:4px}.mag-frame--offset-down{transition-delay:.15s}.gallery-image-frame.is-revealed{opacity:1;transform:translateY(0)}.gallery-image-frame img{width:100%;height:auto;max-width:100%;max-height:74vh;max-height:74dvh;object-fit:contain;display:block}.detail-footer{margin-top:clamp(5rem,9vw,9rem);padding-top:3.5rem;border-top:1px solid rgba(0,0,0,.12);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.detail-nav-btn{display:inline-flex;flex-direction:column;gap:.4rem;text-decoration:none!important;color:inherit;cursor:pointer;transition:opacity .25s ease}.detail-nav-btn:hover{opacity:.6}.detail-nav-btn--next{text-align:right;margin-left:auto}.detail-nav-btn-label{font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#888}.detail-nav-btn-title{font-family:Playfair Display,serif;font-size:clamp(1.1rem,1.8vw,1.6rem);font-weight:400;color:#070600}.detail-similar-section{margin-top:clamp(6rem,12vw,10.5rem);padding-top:clamp(3rem,5vw,4.5rem);border-top:1px solid rgba(0,0,0,.1);width:100%}.detail-similar-header{margin-bottom:clamp(2rem,3.5vw,3rem)}.detail-similar-heading{font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#888;margin:0}.detail-similar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,3vw,3rem);width:100%}.detail-similar-card{display:flex;flex-direction:row;align-items:center;gap:clamp(1rem,1.6vw,1.5rem);cursor:pointer;text-decoration:none;color:inherit;transition:transform .25s cubic-bezier(.16,1,.3,1)}.detail-similar-image-wrapper{width:clamp(80px,7vw,110px);aspect-ratio:3 / 4;background:#eeede8;overflow:hidden;border-radius:2px;margin-bottom:0;flex-shrink:0;position:relative}.detail-similar-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.16,1,.3,1)}.detail-similar-card:hover .detail-similar-image{transform:scale(1.05)}.detail-similar-info{display:flex;flex-direction:column;gap:.32rem;flex:1}.detail-similar-category{font-family:Inter,sans-serif;font-size:.65rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#888}.detail-similar-title{font-family:Playfair Display,Playfair,serif;font-size:clamp(1.05rem,1.35vw,1.35rem);font-weight:400;color:#111;line-height:1.25;margin:0;letter-spacing:-.01em;transition:color .2s ease}.detail-similar-card:hover .detail-similar-title{color:#666}.detail-similar-meta{font-family:Inter,sans-serif;font-size:.72rem;font-weight:400;letter-spacing:.04em;color:#07060073;display:flex;gap:.45rem;align-items:center;margin-top:.15rem}.detail-copyright-footer{margin-top:clamp(4rem,8vw,7rem);padding-top:0;border-top:none;font-family:Inter,sans-serif;font-size:clamp(.72rem,.8vw,.82rem);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#070600;-webkit-user-select:none;user-select:none}@media(max-width:900px){.detail-navbar{padding:.85rem 1rem;gap:.5rem}.detail-nav-brand{gap:.45rem;min-width:0;flex:1;overflow:hidden}.detail-brand-logo{height:18px;flex-shrink:0}.detail-nav-category{font-size:.68rem;padding:.18rem .45rem;letter-spacing:.08em;flex-shrink:0}.detail-nav-divider{font-size:.65rem;margin:0;flex-shrink:0}.detail-nav-project-title{font-size:.85rem;min-width:0;flex:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-nav-actions{flex-shrink:0;margin-left:auto}.detail-close-btn{padding:.38rem .85rem;font-size:.72rem;gap:.35rem;flex-shrink:0;white-space:nowrap}@media(max-width:480px){.project-detail-view.is-scrolled-past-hero .detail-nav-category,.project-detail-view.is-scrolled-past-hero .detail-nav-divider{display:none}}.detail-content-container{padding:2rem 1.25rem 4rem}.detail-title{font-size:clamp(2.2rem,8vw,3.4rem)}.detail-gallery{gap:3rem}.mag-block--asymmetric-left,.mag-block--asymmetric-right{flex-direction:column;gap:2.5rem}.mag-block--asymmetric-left .mag-frame--large,.mag-block--asymmetric-left .mag-frame--small,.mag-block--asymmetric-right .mag-frame--large,.mag-block--asymmetric-right .mag-frame--small,.mag-block--offset-right .mag-frame--medium,.mag-block--offset-left .mag-frame--medium,.mag-block--centered-wide .mag-frame--wide{width:100%;margin-top:0!important}.mag-block--offset-right,.mag-block--offset-left{padding-left:0;padding-right:0}.detail-footer{flex-direction:column;align-items:flex-start;gap:2rem}.detail-nav-btn--next{text-align:left;margin-left:0}.detail-similar-grid{grid-template-columns:1fr;gap:1.6rem}.detail-similar-image-wrapper{width:clamp(75px,20vw,95px)}}.project-lightbox{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:100000;display:none;opacity:0;pointer-events:none;overflow:hidden;-webkit-user-select:none;user-select:none}.project-lightbox.is-active{display:block;opacity:1;pointer-events:auto}body.lightbox-open{overflow:hidden!important}.lightbox-backdrop{position:absolute;inset:0;background-color:#070707;z-index:1}.lightbox-top-bar{position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.5rem clamp(1.2rem,3.5vw,3.5rem);background:linear-gradient(180deg,rgba(7,7,7,.88) 0%,rgba(7,7,7,.4) 60%,transparent 100%);z-index:20;pointer-events:none;box-sizing:border-box}.lightbox-meta{display:flex;align-items:center;gap:.85rem;pointer-events:auto}.lightbox-counter{font-family:Inter,monospace,sans-serif;font-size:.85rem;font-weight:500;letter-spacing:.14em;color:#fff;display:inline-flex;align-items:center;gap:.35rem}.lightbox-current-idx{color:#fff}.lightbox-sep{color:#ffffff59;font-weight:300}.lightbox-total-count{color:#ffffff73}.lightbox-meta-divider{color:#fff3;font-size:.8rem}.lightbox-project-title{font-family:Playfair Display,Playfair,serif;font-size:clamp(.95rem,1.2vw,1.15rem);font-weight:400;letter-spacing:-.01em;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:clamp(160px,30vw,400px)}.lightbox-controls{display:flex;align-items:center;gap:.85rem;pointer-events:auto}.lightbox-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.45rem 1.05rem;font-family:Inter,sans-serif;font-size:.74rem;font-weight:500;letter-spacing:.08em;color:#f0f0f0;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 10px #00000040}.lightbox-btn:hover{background:#fff;color:#070707;border-color:#fff;transform:translateY(-1px);box-shadow:0 4px 16px #ffffff26}.lightbox-btn.is-active{background:#ffffff38;border-color:#ffffff80;color:#fff}.lightbox-stage{position:absolute;top:0;left:0;width:100vw;height:100vh;height:100dvh;display:flex;align-items:center;justify-content:center;z-index:10;margin:0;padding:0;overflow:hidden;box-sizing:border-box}.lightbox-image-container{width:100vw;height:100vh;height:100dvh;display:flex;align-items:center;justify-content:center;position:relative}.lightbox-main-img{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;object-fit:contain;object-position:center;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lightbox-nav-arrow{position:absolute;top:50%;transform:translateY(-50%);width:clamp(44px,4vw,56px);height:clamp(44px,4vw,56px);border-radius:50%;background:#14141473;border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:25;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px #00000059}.lightbox-nav-prev{left:clamp(1rem,2.5vw,2.5rem)}.lightbox-nav-next{right:clamp(1rem,2.5vw,2.5rem)}.lightbox-nav-arrow:hover{background:#fff;color:#070707;border-color:#fff;transform:translateY(-50%) scale(1.08);box-shadow:0 6px 24px #fff3}.lightbox-nav-arrow:active{transform:translateY(-50%) scale(.96)}.lightbox-thumbs-wrapper{position:absolute;bottom:0;left:0;width:100%;z-index:30;display:flex;flex-direction:column;align-items:center;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .25s ease;will-change:transform,opacity}.lightbox-thumbs-wrapper.is-collapsed{transform:translateY(100%);opacity:0;pointer-events:none}.lightbox-thumbs-wrapper.is-expanded{transform:translateY(0);opacity:1;pointer-events:auto}.lightbox-thumbs-tab-trigger{display:flex;justify-content:center;pointer-events:auto}.lightbox-thumbs-tab-btn{background:#121212e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.16);border-bottom:none;border-radius:12px 12px 0 0;padding:.45rem 1.25rem;color:#ffffffe6;font-family:Inter,sans-serif;font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 -4px 20px #0006}.lightbox-thumbs-tab-btn:hover{background:#1e1e1efa;color:#fff;border-color:#ffffff4d}.thumb-tab-icon{transform:rotate(180deg);transition:transform .3s cubic-bezier(.16,1,.3,1)}.lightbox-thumbs-drawer{width:100%;background:#0a0a0af0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid rgba(255,255,255,.12);padding:1rem clamp(1rem,3vw,2.5rem);box-sizing:border-box;pointer-events:auto}.lightbox-thumbs-scroll-track{display:flex;gap:.85rem;overflow-x:auto;overflow-y:hidden;justify-content:flex-start;align-items:center;padding:.3rem 0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent;max-width:100%}.lightbox-thumbs-scroll-track::-webkit-scrollbar{height:4px}.lightbox-thumbs-scroll-track::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:4px}.lightbox-thumb-item{position:relative;flex-shrink:0;height:64px;aspect-ratio:16 / 10;border-radius:4px;overflow:hidden;border:2px solid transparent;opacity:.45;cursor:pointer;background:#1e1e1e;padding:0;transition:all .25s cubic-bezier(.16,1,.3,1)}.lightbox-thumb-item img{width:100%;height:100%;object-fit:cover;display:block}.lightbox-thumb-idx{position:absolute;bottom:3px;right:4px;font-family:Inter,monospace,sans-serif;font-size:.62rem;font-weight:600;color:#fff;background:#0009;padding:1px 4px;border-radius:2px;letter-spacing:.05em}.lightbox-thumb-item:hover{opacity:.85;transform:translateY(-2px)}.lightbox-thumb-item.is-active{opacity:1;border-color:#fff;transform:scale(1.05);box-shadow:0 0 16px #ffffff59}@media(max-width:768px){.lightbox-top-bar{padding:1rem}.lightbox-project-title,.lightbox-meta-divider,.lightbox-btn span{display:none}.lightbox-btn{padding:.45rem;border-radius:50%}.lightbox-nav-arrow{width:40px;height:40px}.lightbox-nav-prev{left:.6rem}.lightbox-nav-next{right:.6rem}.lightbox-thumb-item{height:52px}}.archive-nav-btn{display:inline-flex;align-items:center;gap:.35rem;border:none;background:transparent;padding:.2rem .5rem;margin-left:.4rem;border-left:1px solid rgba(0,0,0,.12);font-family:Inter,sans-serif;font-size:clamp(.7rem,.78vw,.8rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#07060073;cursor:pointer;transition:color .2s ease;white-space:nowrap;flex-shrink:0}.archive-nav-btn:hover,.archive-nav-btn.is-active{color:#111}.archive-icon-svg{width:12px;height:12px;stroke:currentColor;flex-shrink:0}.complete-archive-view{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;background-color:var(--color-bg, #fbfaf5);z-index:2000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s cubic-bezier(.16,1,.3,1),visibility .35s;overflow-y:scroll!important;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.complete-archive-view.is-active{opacity:1;visibility:visible;pointer-events:auto}.archive-timeline-header{position:fixed;top:0;left:0;width:100%;z-index:2050;padding:clamp(1rem,2vh,1.6rem) var(--page-padding, 1.5rem) 1.2rem;background-color:var(--color-bg, #fbfaf5);border-bottom:1px solid rgba(0,0,0,.08);pointer-events:none;box-sizing:border-box}.archive-timeline-container{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:.2rem;pointer-events:auto;padding-left:clamp(48px,6vw,75px);padding-right:clamp(48px,6vw,75px);position:relative;box-sizing:border-box}.archive-timeline-ticks-row{display:flex;justify-content:space-between;align-items:flex-end;width:100%;height:24px;-webkit-user-select:none;user-select:none;position:relative;padding:0;box-sizing:border-box}.archive-timeline-tick{background:transparent;border:none;padding:0;margin:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;flex:1 1 0;min-width:0;height:24px;position:relative;color:#07060059;outline:none}.archive-tick-label{position:absolute;top:0;left:50%;transform:translate(-50%);opacity:0;transition:opacity .12s ease;line-height:1;pointer-events:none;white-space:nowrap;font-family:Inter,sans-serif;font-size:clamp(.58rem,.65vw,.7rem);font-weight:500;letter-spacing:.02em}.archive-timeline-tick.is-major .archive-tick-label{opacity:.6}.archive-timeline-tick:hover .archive-tick-label,.archive-timeline-tick.is-active .archive-tick-label{opacity:1;color:#070600;font-weight:600}.archive-tick-dot{width:1.5px;height:6px;background:#07060038;border-radius:1px;margin-bottom:2px;transition:transform .12s ease,background-color .12s ease;transform-origin:bottom center}.archive-timeline-tick.is-major .archive-tick-dot{height:8px;background:#07060073}.archive-timeline-tick:hover,.archive-timeline-tick.is-active{color:#070600}.archive-timeline-tick:hover .archive-tick-dot,.archive-timeline-tick.is-active .archive-tick-dot{transform:scaleY(1.4);background:#070600}.archive-timeline-track-wrapper{width:100%;padding:8px 0;cursor:pointer;touch-action:none;position:relative;-webkit-user-select:none;user-select:none}.archive-timeline-track{height:2px;width:100%;background:#0706001f;border-radius:2px;position:relative}.archive-timeline-fill{height:100%;background:#070600;border-radius:2px;width:0%;pointer-events:none;transition:none!important}.archive-timeline-thumb{position:absolute;top:50%;left:0%;transform:translate(-50%,-50%);cursor:grab;display:flex;flex-direction:column;align-items:center;pointer-events:auto;outline:none;z-index:10;transition:none!important}.complete-archive-view.is-scrubbing .archive-timeline-thumb{cursor:grabbing}.archive-timeline-knob{width:12px;height:12px;border-radius:50%;background:#070600;border:2px solid var(--color-bg, #fbfaf5);box-shadow:0 1px 4px #00000047;transition:transform .12s ease,background-color .12s ease}.archive-timeline-thumb:hover .archive-timeline-knob,.complete-archive-view.is-scrubbing .archive-timeline-thumb .archive-timeline-knob{transform:scale(1.3);background:#000}.archive-layout{display:flex;justify-content:center;width:100%;min-height:100%;box-sizing:border-box}.archive-content-column{width:100%;max-width:720px;padding-left:clamp(1.5rem,5vw,3.5rem);padding-right:clamp(1.5rem,5vw,3.5rem);padding-top:clamp(8.5rem,14vh,11rem);padding-bottom:12rem;box-sizing:border-box}.archive-header-block{margin-bottom:4rem}.archive-main-title{font-family:Playfair Display,Playfair,serif;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:400;color:#111;line-height:1.12;margin:0 0 .75rem;letter-spacing:-.01em}.archive-subtitle{font-family:Inter,sans-serif;font-size:clamp(.75rem,.85vw,.88rem);font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:#07060073;margin:0}.archive-year-group{margin-bottom:4.5rem;position:relative}.archive-year-heading{font-family:Playfair Display,Playfair,serif;font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:400;letter-spacing:-.01em;color:#111;padding-bottom:0;margin:0 0 1.4rem;border-bottom:none;display:flex;align-items:baseline;justify-content:space-between}.archive-year-count{font-family:Inter,sans-serif;font-size:clamp(.72rem,.8vw,.82rem);font-weight:400;letter-spacing:.06em;color:#07060059}.archive-project-row{display:flex;flex-direction:column;padding:.95rem 0;border-bottom:1px dashed rgba(0,0,0,.06);position:relative}.archive-project-header-row{display:flex;align-items:center;gap:clamp(1rem,1.8vw,1.6rem)}.archive-thumb-slot{width:clamp(52px,5.5vw,68px);min-width:clamp(52px,5.5vw,68px);display:flex;align-items:center;justify-content:center;flex-shrink:0}.archive-project-cover-thumb{max-width:100%;max-height:clamp(40px,4.2vw,52px);width:auto;height:auto;object-fit:contain;border-radius:1px;display:block;box-shadow:0 1px 4px #00000014;transition:opacity .2s ease;cursor:pointer}.archive-project-cover-thumb:hover{opacity:.8}.archive-project-title-meta{display:flex;flex-direction:column;flex:1}.archive-project-title{font-family:Playfair Display,Playfair,serif;font-size:clamp(1.2rem,1.7vw,1.65rem);font-weight:400;color:#111;text-decoration:none;line-height:1.25;transition:color .2s ease}.archive-project-title.has-link{cursor:pointer}.archive-project-title.has-link:hover{color:#666}.archive-project-meta{font-family:Inter,sans-serif;font-size:clamp(.72rem,.8vw,.82rem);font-weight:400;letter-spacing:.04em;color:#07060080;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:.3rem}.archive-meta-tag{display:inline-flex;align-items:center}.archive-meta-tag:not(:last-child):after{content:"•";margin-left:.6rem;color:#07060040}.archive-brand-logo{position:fixed;top:var(--page-padding, 1.5rem);left:var(--page-padding, 1.5rem);z-index:2100;display:inline-flex;align-items:center;line-height:0;transition:opacity .2s ease;pointer-events:auto;cursor:pointer;text-decoration:none}.archive-brand-logo:hover{opacity:.75}.archive-brand-logo .brand-logo-img{height:clamp(30px,3.2vw,42px);width:auto;display:block}.archive-close-btn{position:fixed;top:var(--page-padding, 1.5rem);right:var(--page-padding, 1.5rem);z-index:2100;width:40px;height:40px;border-radius:50%;background:#fffffff2;border:1px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 12px #0000000f;transition:transform .2s ease,background .2s ease,color .2s ease}.archive-close-btn:hover{background:#111;color:#fff;transform:scale(1.08)}@media(max-width:768px){.archive-brand-logo{top:12px;left:.8rem}.archive-brand-logo .brand-logo-img{height:22px}.archive-timeline-header{padding:.75rem .5rem .5rem}.archive-timeline-container{padding-left:38px;padding-right:38px;gap:.2rem}.archive-timeline-tick{min-width:6px}.archive-timeline-tick:not(.is-major) .archive-tick-label{display:none}.archive-content-column{padding:6.8rem 1.25rem 8rem}.archive-project-cover-thumb{width:44px;height:44px}.archive-close-btn{top:.75rem;right:.75rem;width:34px;height:34px}}
