@font-face{font-family:Archivo;src:url('assets/fonts/archivo-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}@font-face{font-family:'Public Sans';src:url('assets/fonts/publicsans-latin.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--ink:#0a2540;--blue:#234aaf;--cyan:#1699c9;--muted:#586b7d;--line:#dce3ea;--paper:#fff;--page:#f7f8fa;--soft:#eef3fb;--font:'Public Sans','Microsoft YaHei',Arial,sans-serif;color:var(--ink);background:var(--page);font-family:var(--font);font-size:15px;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,a,input,select{touch-action:manipulation}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:transparent}button:disabled{cursor:default;opacity:.45}button,a,input,select,summary{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--blue)}a{color:var(--blue)}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}img{max-width:100%}p{line-height:1.6}h1,h2,h3,p{margin:0}input[type=checkbox]{accent-color:var(--blue)}.skip{position:fixed;top:-100px;left:24px;background:var(--ink);color:#fff;padding:14px;z-index:10}.skip:focus{top:12px}.header{background:#fff;border-bottom:1px solid var(--line)}.header-inner,main{max-width:1600px;margin:auto;padding-inline:48px}.header-inner{height:104px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:24px;text-decoration:none;color:var(--ink)}.brand img{width:164px;height:auto;display:block}.brand-divider{height:29px;width:1px;background:var(--line)}.brand-label{font-size:11px;letter-spacing:.16em;font-weight:600;color:var(--muted)}.header-right{display:flex;align-items:center;gap:30px}.header-note{font-size:13px;color:var(--muted)}.language{display:flex;align-items:center;gap:5px;font-size:12px}.language>span{color:#b2becb}.language button{min-width:42px;min-height:44px;font-weight:500;color:var(--muted);padding:8px}.language button[aria-pressed=true]{color:var(--blue);font-weight:700}.heading{padding:42px 0 32px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.eyebrow{font-size:11px;line-height:1.5;letter-spacing:.11em;font-weight:600;color:var(--blue)}h1{font-family:Archivo,var(--font);font-size:clamp(34px,3.4vw,52px);font-weight:500;line-height:1.12;letter-spacing:-.035em;margin-top:9px}.intro{font-size:14px;color:var(--muted);max-width:360px;line-height:1.7;padding-bottom:3px}.collection-bar{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px}.collections{display:flex;gap:30px}.collections button{display:flex;align-items:center;gap:11px;min-height:54px;padding:0 0 17px;border-bottom:2px solid transparent;font-size:15px;color:var(--muted);position:relative;top:1px}.collections button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.tab-number{font-size:10px;background:#e8edf4;color:#5b7087;min-width:23px;padding:3px 5px;border-radius:3px;font-variant-numeric:tabular-nums;font-weight:500}.collections button[aria-selected=true] .tab-number{background:#e4ecfc;color:var(--blue)}#collection-scope{font-size:12px;color:var(--muted);padding-bottom:16px}.gallery{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:38px;outline:0}.visual-column{min-width:0}.preview-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:13px;min-height:34px}.preview-heading>div{display:flex;align-items:center;gap:10px;min-width:0;font-size:13px}.location-dot{width:6px;height:6px;background:var(--cyan);border-radius:50%;flex:none}#preview-city{font-weight:600}#preview-space{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-slash{color:#adbcca}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;min-height:44px;padding:8px 0;color:var(--blue);white-space:nowrap}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.preview-frame{position:relative;background:#e5e9ed;overflow:hidden;box-shadow:0 12px 32px -22px #0a25403d}.preview-frame canvas{width:100%;height:auto;display:block;aspect-ratio:16/9}.preview-frame.is-cropped canvas{aspect-ratio:4/3;max-width:75%;margin:auto}.preview-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:#f5f7fae8;font-size:14px;color:var(--muted)}#retry{padding:11px 18px;background:var(--blue);color:#fff;border-radius:3px;min-height:44px}.image-caption{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:4px 0 18px;min-height:40px;color:var(--muted);font-size:11px}.space-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.space-heading h2{font-weight:500;font-size:13px}#space-position{font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted);letter-spacing:.05em}.spaces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.spaces.is-collection{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.space-button{text-align:left;padding:0 0 13px;min-width:0;border-bottom:2px solid transparent;transition:border-color .15s}.space-button .thumb{position:relative;overflow:hidden;background:#e5e9ed;aspect-ratio:16/9;display:block}.space-button img{display:block;aspect-ratio:16/9;width:100%;height:100%;object-fit:contain;opacity:.78;transition:opacity .15s}.space-button:hover img,.space-button[aria-pressed=true] img{opacity:1}.space-button[aria-pressed=true]{border-bottom-color:var(--blue)}.space-label{display:flex;gap:10px;align-items:baseline;padding-top:11px;font-size:12px;line-height:1.45}.space-number{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.space-button[aria-pressed=true] .space-name{color:var(--blue);font-weight:600}.selected-mark{position:absolute;right:8px;bottom:8px;border-radius:50%;width:20px;height:20px;background:var(--blue);color:#fff;display:grid;place-items:center}.selected-mark svg{width:12px;height:12px;stroke-width:2}.controls{padding-top:9px}.selection-heading{padding-bottom:22px;border-bottom:1px solid var(--line)}.selection-heading h2{font-family:Archivo,var(--font);font-size:28px;line-height:1.15;font-weight:500;letter-spacing:-.025em;margin:10px 0 13px}.selection-heading>p:last-child{font-size:13px;color:var(--muted);line-height:1.65}.control-section{padding-top:22px}h3{font-size:12px;font-weight:600;margin-bottom:12px}.cities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cities button{border:1px solid var(--line);border-radius:3px;background:#fff;min-height:44px;padding:8px 10px;text-align:left;font-size:12px}.cities button:hover{border-color:#98add1}.cities button[aria-pressed=true]{color:var(--blue);border-color:var(--blue);background:var(--soft);font-weight:600}#study-city{display:flex;justify-content:space-between;align-items:center;font-size:14px;padding-bottom:3px}.city-status{font-size:11px;color:var(--muted)}.person-section{padding-bottom:20px;border-bottom:1px solid var(--line)}.segmented{display:flex;border:1px solid var(--line);border-radius:4px;padding:3px;background:#fff;gap:3px}.segmented button{flex:1;display:flex;justify-content:center;align-items:center;gap:7px;font-size:11px;white-space:nowrap;min-height:44px;border-radius:2px;padding:7px}.segmented button svg{width:15px;height:15px}.segmented button[aria-pressed=true]{background:var(--soft);color:var(--blue);font-weight:600}#pose-options{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;font-size:12px;color:var(--muted)}select{min-height:44px;border:1px solid var(--line);border-radius:3px;padding:8px 10px;background:#fff;color:var(--ink);font-size:12px;min-width:145px}.subtitle-control{position:relative;display:flex;align-items:center;justify-content:space-between;padding:20px 0;gap:15px;cursor:pointer}.subtitle-control strong{font-size:13px;font-weight:500;display:block;margin-bottom:4px}.subtitle-control small{font-size:11px;color:var(--muted)}.subtitle-control input{position:absolute;right:0;width:37px;height:30px;opacity:0;cursor:pointer;z-index:1}.switch{width:34px;height:20px;border-radius:20px;background:#c1cbd6;position:relative;flex:none}.switch:before{content:'';position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .15s}.subtitle-control input:checked+.switch{background:var(--blue)}.subtitle-control input:checked+.switch:before{transform:translateX(14px)}.subtitle-control input:focus-visible+.switch{outline:2px solid var(--blue);outline-offset:4px}.download{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:52px;padding:16px 18px;background:var(--blue);color:#fff;text-decoration:none;border-radius:3px;font-size:12px;font-weight:600;transition:background .15s}.download:hover{background:#193c93}.download[aria-disabled=true]{opacity:.5;pointer-events:none}.download-block p{font-size:10px;line-height:1.6;text-align:center;color:var(--muted);margin-top:10px}.additional{margin-top:20px;border-top:1px solid var(--line);padding-top:15px;font-size:11px;color:var(--muted)}.additional summary{cursor:pointer;min-height:32px}.additional label{display:flex;align-items:center;gap:8px;min-height:40px}.additional input{width:16px;height:16px}.additional p{font-size:11px;line-height:1.6;margin:5px 0}.about{margin-top:36px;border-block:1px solid var(--line)}.about summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:65px;font-size:13px;list-style:none}.about summary::-webkit-details-marker{display:none}.plus{font-size:22px;font-weight:300;color:var(--muted)}.about details[open] .plus{transform:rotate(45deg)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:16px 60px;padding:0 0 25px;max-width:1120px;font-size:12px;color:var(--muted)}.about-content a{align-self:start;padding:8px 0;text-underline-offset:4px}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px 0 38px}.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand img{width:96px;height:auto;display:block}.footer-brand span{font-size:11px;color:var(--muted)}.footer-status{display:flex;align-items:center;gap:24px;font-size:10px;color:var(--muted)}.version{letter-spacing:.05em}dialog{width:min(1500px,94vw);max-height:95vh;padding:24px;border:0;border-radius:4px;background:var(--paper);color:var(--ink);box-shadow:0 20px 90px #061c4266}dialog::backdrop{background:#081d37b8;backdrop-filter:blur(5px)}.viewer-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:22px}.viewer-toolbar span#viewer-type{font-size:11px;color:var(--blue);display:block;margin-bottom:6px}.viewer-toolbar h2{font:500 24px/1.2 Archivo,var(--font);letter-spacing:-.02em}.close-viewer{display:flex;gap:8px;align-items:center;min-height:44px;font-size:12px;padding:10px}.expanded{display:flex;justify-content:center;background:#edf1f5}.expanded canvas{display:block;max-width:100%;max-height:76vh;width:auto;height:auto}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:20px}.comparison figure{margin:0;min-width:0}.comparison figcaption{font-size:12px;margin-bottom:12px;color:var(--muted)}.comparison canvas{width:100%;height:auto;display:block}#viewer-note{font-size:11px;color:var(--muted);margin-top:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.gallery{grid-template-columns:minmax(0,1fr) 322px;gap:44px}.selection-heading h2{font-size:31px}.selection-heading>p:last-child{font-size:14px}.control-section h3,.subtitle-control strong{font-size:13px}.cities button{font-size:13px}.segmented button{font-size:12px}.download{font-size:13px}}
@media(max-width:1100px){.header-inner,main{padding-inline:30px}.gallery{grid-template-columns:minmax(0,1fr) 266px;gap:26px}.selection-heading h2{font-size:25px}.heading{padding-top:32px}.intro{max-width:280px;font-size:12px}.brand-label,.brand-divider{display:none}.spaces.is-collection{grid-template-columns:repeat(3,minmax(0,1fr))}.space-label{font-size:11px}.preview-heading{gap:10px}#preview-space{max-width:155px}}
@media(max-width:850px){.header-inner{height:84px}.brand img{width:140px}.header-note{display:none}.heading{padding:30px 0 24px;display:block}.intro{margin-top:14px;max-width:none}.gallery{grid-template-columns:1fr;gap:26px}.controls{padding:24px;background:#fff;border:1px solid var(--line);border-radius:4px;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.selection-heading{grid-column:1 / -1}.selection-heading h2{font-size:27px}.city-section{grid-row:2 / 5}.person-section{border:0;padding-bottom:0}.subtitle-control{padding-bottom:18px}.download-block{padding-top:4px}.additional{grid-column:1 / -1}.spaces.is-collection{grid-template-columns:repeat(5,minmax(0,1fr))}.space-label{font-size:12px}.about-content{column-gap:30px}.footer-status{gap:14px}.footer-brand span{display:none}}
@media(max-width:560px){.header-inner,main{padding-inline:20px}.header-inner{height:78px}.brand img{width:128px}.header-right{gap:0}.language button{min-width:35px}.heading{padding-top:26px}.eyebrow{font-size:10px}h1{font-size:36px;margin-top:9px}.intro{font-size:13px;line-height:1.65;margin-top:13px}.collection-bar{display:block;margin-bottom:18px}.collections{gap:26px}.collections button{font-size:13px;min-height:47px;padding-bottom:14px;gap:8px}.tab-number{font-size:9px}#collection-scope{padding:12px 0;font-size:11px}.preview-heading{margin-bottom:6px}.preview-heading>div{font-size:11px;gap:7px}.preview-slash,#preview-space{display:none}.text-button{font-size:11px}.image-caption{align-items:start;margin:7px 0 14px;font-size:10px;min-height:38px}#image-note{max-width:58%;line-height:1.6;padding-top:8px}.image-caption .text-button{min-height:36px}.space-heading{margin-bottom:11px}.spaces{gap:10px}.spaces.is-collection{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.space-label{font-size:11px;gap:5px;padding-top:8px}.space-number{display:none}.space-button{padding-bottom:10px}.selected-mark{width:16px;height:16px;right:5px;bottom:5px}.selected-mark svg{width:10px;height:10px}.gallery{gap:20px}.controls{padding:20px;display:block}.selection-heading{padding-bottom:18px}.selection-heading h2{font-size:26px}.selection-heading>p:last-child{font-size:13px}.control-section{padding-top:20px}.cities button{font-size:13px;min-height:44px}.segmented button{font-size:12px;min-height:44px}.subtitle-control{padding:20px 0}.subtitle-control strong{font-size:13px}.download{font-size:13px;min-height:52px}.download-block p{font-size:11px}.additional,.additional p{font-size:12px}.about{margin-top:24px}.about-content{grid-template-columns:1fr;font-size:13px;gap:14px}.about summary{font-size:13px;min-height:61px}footer{padding:24px 0;gap:14px}.footer-brand img{width:85px}.footer-status{display:block;text-align:right;line-height:1.7;font-size:10px}.version{display:block}.comparison{grid-template-columns:1fr;gap:20px}dialog{padding:16px;width:95vw}.viewer-toolbar h2{font-size:20px}.viewer-toolbar{gap:14px}.close-viewer{padding:8px}.close-viewer span{display:none}.expanded canvas{max-height:70vh}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0;white-space:nowrap}

@media(max-width:560px){.intro,.selection-heading>p:last-child,.cities button,.segmented button,.subtitle-control strong,.download,.about-content{font-size:14px}.additional,.additional p{font-size:13px}}
