@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap');
:root{--paper:#eae7df;--ink:#191919;--accent:#ddc370;--display:'Anton','Arial Narrow',sans-serif}body{background:var(--paper)}[hidden]{display:none!important}#intro{position:fixed;inset:0;z-index:20;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:600px;padding:32px;overflow-y:auto;transition:opacity .65s,transform .8s;transform-origin:center}#intro.leaving{opacity:0;transform:scale(1.06);pointer-events:none}.intro-meta,.intro-bottom{position:absolute;left:32px;right:32px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.07em}.intro-meta{top:30px}.intro-bottom{bottom:25px;color:#6b6964}.arrival{display:grid;grid-template-columns:max-content minmax(180px,1fr) max-content;align-items:center;gap:30px;width:100%;margin:0;line-height:.98;color:var(--ink);font-family:var(--display);font-weight:400;font-size:clamp(72px,10.8vw,180px);letter-spacing:-.035em}.arrival>span:last-child{font-size:.71em;line-height:1.01}.arrival-window{display:block;overflow:hidden;border-radius:20px;height:clamp(140px,16vw,240px)}.arrival-window img{width:100%;height:100%;object-fit:cover;animation:arrival-drift 18s ease-in-out infinite alternate;display:block}.intro-action{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:76px}.pill{background:#101010;color:var(--paper);border-radius:50px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:8px 8px 8px 23px;font-size:14px;min-height:44px}.pill:hover{background:#333;color:white}.circle-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--paper);color:#141414;font-size:17px}#introWorks{font-size:13px;padding:8px;border-bottom:1px solid #19191960}#introWorks:hover{color:#5f5636}.intro-note{text-align:center;font-size:18px;font-weight:400;line-height:1.7;letter-spacing:-.03em;position:absolute;bottom:85px;margin:0}.map-header{top:28px;left:25px;right:25px;justify-content:center;pointer-events:none}.map-header>*{pointer-events:auto}.map-header .brand{position:absolute;left:0;font-family:var(--display);font-size:25px;font-weight:400;color:white;letter-spacing:-.04em;text-shadow:0 1px 8px #0009}.map-nav{display:flex;gap:0;border-radius:40px;background:#101010;color:var(--paper);padding:5px;box-shadow:0 3px 15px #0002}.map-nav button{font-size:14px;padding:10px 18px;display:flex;gap:12px;align-items:center;min-height:43px;white-space:nowrap}.map-nav button+button{border-left:1px solid #ffffff24}.nav-dot{display:grid;place-items:center;background:var(--paper);color:black;border-radius:50%;width:28px;height:28px;font-size:12px;margin:-6px 0 -6px -8px}.map-info{position:absolute;right:0;border-radius:50%;width:44px;height:44px;background:#101010;color:var(--paper);font-size:21px;font-family:Georgia,serif}.vignette{background:linear-gradient(180deg,#0002,transparent 20%,transparent 80%,#0005)}#mapChapters{position:absolute;top:93px;left:50%;transform:translateX(-50%);width:320px;background:#101010ed;backdrop-filter:blur(16px);border-radius:18px;color:var(--paper);padding:25px;display:flex;flex-direction:column;gap:0;z-index:4}#mapChapters>.eyebrow{font-size:12px;opacity:.5;margin-bottom:15px}#mapChapters button{text-align:left;padding:12px 0;font-size:14px;border-bottom:1px solid #ffffff20}#mapChapters b{display:inline-block;width:30px;font-size:12px;font-weight:400;opacity:.5}.view-controls{left:50%;right:auto;bottom:25px;transform:translateX(-50%);gap:8px;z-index:3}.day-switch,.zoom-controls{background:#101010;border:0;border-radius:40px;padding:6px}.day-switch button{border-radius:40px;font-size:12px;padding:10px 18px}.day-switch button[aria-pressed=true]{background:var(--paper)}.zoom-controls button{min-width:34px;height:33px}.pin{padding:14px;gap:10px}.pin-dot{background:#c5a14e;color:#fff8e3;width:20px;height:20px;box-shadow:none;font-size:0;border:1px solid #ffffff60;transition:transform .2s,background .2s}.pin-dot::after{content:'';width:4px;height:4px;background:#faf6e8;border-radius:50%}.pin-label{opacity:0;transition:opacity .15s;background:#121212;border:0;border-radius:4px;font-size:14px;position:absolute;left:48px;pointer-events:none}.pin:hover .pin-dot,.pin:focus-visible .pin-dot{transform:scale(1.35);background:#c5a14e;box-shadow:0 0 0 8px #f2d89125}.pin:hover .pin-label,.pin:focus-visible .pin-label{opacity:1;display:block;color:var(--paper)}footer{left:25px;right:25px;border:0;bottom:22px;min-height:35px;pointer-events:none;align-items:center}footer>*{pointer-events:auto}.map-project-name{font-size:12px;letter-spacing:.05em}.gesture-hint{position:absolute;bottom:51px;left:50%;transform:translateX(-50%);white-space:nowrap;color:white;font-size:12px;text-shadow:0 1px 8px #000}footer button{font-size:12px}#detailDialog{background:var(--paper);color:var(--ink)}.detail-heading>.eyebrow{color:#77705b}.close-button:hover{background:var(--ink)}#worksDialog{background:#191919}.archive-heading h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:100px}.archive-heading h2 em{color:var(--paper)}.work-image>span{background:var(--paper);color:var(--ink)}.work-card:hover{color:#ddc370}.archive-heading{padding-top:55px}.brand:focus-visible,button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline-color:#bc9540}#storyDialog{max-width:100%;width:100%;height:100svh;max-height:100svh;margin:0;overflow:hidden;background:var(--paper);color:var(--ink)}.story-nav{position:fixed;top:25px;left:30px;right:30px;z-index:4;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.story-nav>*{pointer-events:auto}.story-project{font-size:12px;letter-spacing:.04em;background:var(--paper);padding:8px;border-radius:4px}.story-tabs{display:flex;align-items:center;border-radius:50px;background:#111;color:var(--paper);padding:4px;gap:0}.story-tabs button{position:relative;padding:13px 17px;font-size:12px;min-height:42px}.story-tabs button[aria-pressed=true]::after{content:'';position:absolute;bottom:3px;height:4px;width:10px;border-radius:9px;background:var(--paper);left:calc(50% - 5px)}.story-tabs .story-close{font-size:20px;padding:8px 12px;border-left:1px solid #ffffff30}#storyTrack{display:flex;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain}#storyTrack::-webkit-scrollbar{display:none}.story-slide{position:relative;flex:0 0 100%;min-width:0;height:100%;padding:115px 35px 75px;scroll-snap-align:start;overflow:hidden}.story-kicker{font-size:12px;letter-spacing:.09em;margin:0 0 22px}.story-slide h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:.98;margin:0}.story-cover h2{font-size:clamp(110px,14.6vw,235px)}.cover-second{display:flex;align-items:center;gap:2.2vw}.cover-second :is(img,video){width:26vw;height:12vw;max-height:190px;object-fit:cover;border-radius:18px;flex:1}.cover-summary{display:flex;justify-content:space-between;align-items:start;margin-top:20px;gap:50px}.story-label{font-size:12px;letter-spacing:.09em;padding-top:15px}.cover-summary p{font-size:clamp(22px,2.45vw,40px);font-weight:400;line-height:1.5;letter-spacing:-.05em;margin:0;width:47%}.story-bottom{position:absolute;left:35px;right:35px;bottom:28px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.04em}.story-space{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:#252725;color:var(--paper)}.story-space h2{font-size:clamp(70px,8.7vw,140px)}.space-copy>p:not(.story-kicker){font-size:20px;line-height:1.65;margin:25px 0}.space-copy .pill{background:var(--paper);color:var(--ink)}.space-copy .circle-icon{background:var(--ink);color:var(--paper)}.story-space figure{margin:0;align-self:stretch;min-height:0;display:flex;flex-direction:column;gap:14px}.story-space img{width:100%;height:calc(100% - 50px);min-height:0;object-fit:cover;border-radius:18px}.story-space figcaption{font-size:13px;line-height:1.6;color:#c1c5bb}.bim-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:60px}.story-bim h2{font-size:clamp(75px,9.2vw,145px)}.bim-intro{font-size:18px;line-height:1.8;letter-spacing:-.025em;margin:23px 0}.bim-facts{display:flex;flex-direction:column;padding:0 0 0 35px;border-left:1px solid #19191930}.bim-facts>div{border-bottom:1px solid #19191930;padding:8px 0 25px;display:flex;justify-content:space-between;align-items:end;gap:10px}.bim-facts strong{font-family:var(--display);font-size:clamp(75px,9.5vw,148px);font-weight:400;line-height:1.3;letter-spacing:-.035em}.bim-facts span{font-size:13px;text-align:right;padding-bottom:20px}.story-commons{color:var(--paper);padding:0}.story-commons>img{position:absolute;width:100%;height:100%;object-fit:cover}.commons-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#08150db0,transparent 90%);padding:115px 35px 80px}.story-commons h2{font-size:clamp(80px,9.2vw,150px)}.commons-overlay>p:not(.story-kicker){font-size:24px;line-height:1.55;letter-spacing:-.035em;margin:25px 0}.story-commons .story-bottom button{padding:0;text-decoration:underline;text-underline-offset:6px;font-size:14px}@keyframes arrival-drift{from{transform:scale(1.02) translateX(-1%)}to{transform:scale(1.14) translateX(1%)}}
@media(max-height:780px) and (min-width:761px){.intro-note{bottom:65px;font-size:16px}.intro-action{margin-top:42px}.story-slide{padding-top:100px}.story-cover h2{font-size:11vw}.cover-summary p{font-size:25px}.cover-second :is(img,video){height:9vw}.story-space h2,.story-bim h2,.story-commons h2{font-size:6.6vw}.bim-facts strong{font-size:7vw}.commons-overlay{padding-top:100px}.space-copy>p:not(.story-kicker){font-size:17px;margin:20px 0}.bim-intro{font-size:16px}.bim-facts>div{padding-bottom:15px}}
@media(max-width:1000px){.map-header .brand,.map-info{display:none}.map-nav button{padding:9px 14px;font-size:13px}.arrival{gap:20px}.arrival-window{height:150px}.intro-meta,.intro-bottom{font-size:10px}.story-project{display:none}.story-nav{justify-content:center}.story-slide{padding-left:25px;padding-right:25px}.story-space{gap:30px}.bim-layout{gap:25px}.bim-facts{padding-left:20px}.bim-facts span{font-size:12px}.cover-summary p{font-size:25px}footer>span:first-child{display:none}}
@media(max-width:760px){#explorer{min-height:560px}#intro{padding:80px 23px 115px;justify-content:center}.intro-meta{left:23px;right:23px;top:24px}.intro-bottom{left:23px;right:23px;bottom:18px;font-size:9px}.arrival{grid-template-columns:1fr 1.1fr;gap:16px;font-size:21vw;align-items:stretch}.arrival>span:first-child{align-self:center}.arrival-window{height:23vw;border-radius:12px;min-width:0}.arrival>span:last-child{grid-column:1/-1;font-size:20.5vw;line-height:.95;text-align:center}.arrival>span:last-child br{display:none}.intro-action{margin-top:35px;gap:8px}.intro-note{bottom:62px;font-size:15px}.map-header{left:12px;right:12px;top:17px}.map-nav{width:100%;max-width:425px;justify-content:center}.map-nav button{font-size:12px;padding:8px 10px;min-height:40px;gap:7px}.nav-dot{width:23px;height:23px;margin-left:-2px;font-size:10px}#aboutButton{display:flex}.view-controls{left:50%;right:auto;bottom:29px;width:max-content;justify-content:center;gap:5px}.day-switch button{padding:9px 13px}.zoom-controls button{min-width:31px}.zoom-controls #resetView{width:43px}.gesture-hint{bottom:65px;font-size:11px;max-width:none;line-height:1.5}footer{left:15px;right:15px;bottom:15px}footer button{position:absolute;right:0;bottom:85px;min-width:40px;justify-content:center;gap:4px;font-size:11px;background:#101010;padding:6px 9px;border-radius:20px}.pin-dot{width:23px;height:23px}#mapChapters{top:80px;width:calc(100% - 40px);max-width:350px}.story-nav{top:14px;left:10px;right:10px}.story-tabs{width:100%;justify-content:center}.story-tabs button{padding:10px 11px;font-size:10px}.story-tabs .story-close{font-size:18px;padding:8px 11px}#storyTrack{display:block;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y proximity}.story-slide{height:auto;min-height:100svh;padding:100px 23px 75px;overflow:visible}.story-cover h2{font-size:25vw;line-height:1.08}.cover-second{display:grid;grid-template-columns:.6fr 1fr;gap:8px 16px}.cover-second :is(img,video){width:100%;height:23vw;border-radius:12px}.cover-second>span:last-child{grid-column:1/-1}.cover-summary{display:block;margin-top:30px}.cover-summary .story-label{font-size:11px}.cover-summary p{font-size:24px;width:100%;line-height:1.5;margin-top:15px}.story-kicker{font-size:10px;line-height:1.5;margin-bottom:18px}.story-bottom{left:23px;right:23px;bottom:23px;font-size:10px}.story-space{display:block}.story-space h2{font-size:23vw;line-height:.97}.story-space figure{margin-top:30px;display:block}.story-space img{height:45svh;border-radius:12px}.story-space figcaption{margin-top:10px}.space-copy>p:not(.story-kicker){font-size:18px}.bim-layout{display:block}.story-bim h2{font-size:18vw;line-height:1.02}.bim-facts{border-left:0;padding:0;margin-top:30px}.bim-facts>div{padding:14px 0}.bim-facts strong{font-size:70px}.bim-facts span{font-size:14px;padding-bottom:14px}.bim-intro{font-size:16px;margin:20px 0}.story-commons{height:100svh;padding:0;min-height:700px}.commons-overlay{padding:110px 23px 90px}.story-commons h2{font-size:23vw;line-height:1.04}.commons-overlay>p:not(.story-kicker){font-size:20px}.archive-heading h2{font-size:72px}}
@media(prefers-reduced-motion:reduce){.arrival-window img{animation:none}#intro{transition:none}}
@media(max-width:760px){.arrival>span:last-child{font-size:22vw}.arrival>span:last-child br{display:initial}}
.arrival-window{position:relative}.arrival-window video{display:block;width:100%;height:100%;object-fit:cover}.arrival-window button{position:absolute;right:12px;bottom:12px;border-radius:20px;background:#101010c9;color:#fff;padding:7px 12px;font-family:'DM Sans','Noto Sans KR',sans-serif;font-size:12px;font-weight:400;letter-spacing:0;line-height:1.3}.arrival-window button:hover{background:#101010}@media(max-width:760px){.arrival-window button{right:7px;bottom:7px;padding:5px 9px}}
.model-ready canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.model-status{position:absolute;z-index:3;left:50%;top:110px;transform:translateX(-50%);padding:12px 20px;border-radius:30px;background:#f5f2e9;color:#242820;font-size:14px;white-space:nowrap}.model-status[hidden]{display:none}.model-topics{position:absolute;z-index:4;left:30px;bottom:100px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.model-topics[hidden]{display:none}.model-topics>span{font-size:11px;letter-spacing:.12em;color:#29352b;margin-bottom:5px}.model-topics button{background:#f5f1e7e8;border:1px solid #29282020;border-radius:24px;color:#292820;padding:10px 17px;font-size:14px;backdrop-filter:blur(12px)}.model-topics button:hover{background:#b3a26b}.model-ready~.vignette{display:none}@media(max-width:760px){.model-topics{left:16px;bottom:130px;gap:5px}.model-topics button{font-size:12px;padding:8px 12px}.model-topics>span{display:none}.model-status{top:130px;font-size:12px}}
#explorer:has(.model-ready) footer,#explorer:has(.model-ready) .brand{color:#232a24;text-shadow:none}#explorer:has(.model-ready) .gesture-hint{color:#232a24;text-shadow:none}@media(max-width:760px){.model-topics button{font-size:14px}}
.view-controls[hidden]{display:none}#explorer:has(.model-ready) footer{background:linear-gradient(transparent,#f5f1e7d9);padding-top:35px}.model-topics>span{background:#f5f1e7d9;padding:7px 10px;border-radius:6px}@media(max-width:760px){.model-status{top:175px}}
#explorer:has(.model-ready) footer{background:none;padding-top:0}#explorer:has(.model-ready) .gesture-hint{background:none;border-radius:0;padding:0;color:#f5f1e7;text-shadow:0 1px 4px #000,0 0 8px #0009}#explorer:has(.model-ready) #toggleLabels{background:#f5f1e7e8;color:#232a24;border-radius:20px;padding:9px 14px}#explorer:has(.model-ready) .map-project-name{background:#f5f1e7e8;padding:5px 9px;border-radius:8px}#explorer:has(.model-ready) .brand{background:#f5f1e7e8;border-radius:9px;padding:5px 9px}

/* Showcase the aerial film at its original aspect ratio. */
#intro{padding:66px 32px 58px;min-height:0;justify-content:center;gap:18px}
.arrival{display:block;width:min(900px,88%,calc((100dvh - 240px) * 16 / 9 * .86));font-size:clamp(26px,3.2vw,48px);line-height:1;letter-spacing:-.035em}
.arrival-window{flex:none;width:min(900px,88%,calc((100dvh - 240px) * 16 / 9 * .86));height:auto;aspect-ratio:16/9;border-radius:12px;background:#202521;box-shadow:0 16px 48px #22222218}
.arrival-window video{object-fit:contain}
#intro .intro-action{margin-top:0;gap:0}
@media(max-width:760px){
 #intro{padding:72px 16px 62px;gap:22px}
 .arrival{width:100%;font-size:clamp(26px,6vw,40px);text-align:center}
 .arrival-window{width:92%;height:auto;border-radius:8px}
 #intro .intro-action{margin-top:0}
}
@media(max-height:600px) and (min-width:761px){#intro{padding-top:56px;padding-bottom:42px;gap:10px}.arrival{font-size:26px}.arrival,.arrival-window{width:min(900px,88%,calc((100dvh - 190px) * 16 / 9 * .86))}}

#intro .intro-bottom{justify-content:flex-end}
#toggleIntroVideo{right:9.5%;bottom:17%;transform:translate(50%,50%);min-width:84px;min-height:44px;padding:10px 16px;font-size:14px}

#intro .intro-meta{justify-content:flex-end}
@media(max-width:760px){#toggleIntroVideo{right:4%;bottom:8%;transform:none;min-width:64px;min-height:36px;padding:8px 12px;font-size:12px}}

/* Blend the distant 3D horizon into the sky without covering nearby buildings. */
#explorer{--horizon-color:201,211,203}
#explorer.night-view{--horizon-color:37,55,64}
#explorer:has(#viewport.model-ready) .vignette{display:block;z-index:1;background:linear-gradient(180deg,rgba(var(--horizon-color),.98) 0%,rgba(var(--horizon-color),.72) 7%,rgba(var(--horizon-color),.32) 17%,rgba(var(--horizon-color),.08) 27%,transparent 38%);pointer-events:none}
#explorer .map-header{z-index:3}

.housing-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;margin:36px 0}.housing-plan{margin:0;min-width:0}.housing-plan.wide{grid-column:1/-1}.housing-plan img{display:block;width:100%;height:300px;object-fit:contain;background:#fff;border-radius:8px}.housing-plan.wide img{height:auto;max-height:480px}.housing-plan h3{font-size:19px;margin:16px 0 8px}.housing-plan p{font-size:14px;line-height:1.8;margin:0;color:#625f56}@media(max-width:760px){.housing-plans{grid-template-columns:1fr;gap:28px}.housing-plan img{height:auto;max-height:420px}.housing-plan.wide{grid-column:auto}}
