:root{--ink:#29332f;--muted:#68716a;--paper:#f7f5ed;--line:#dcded3;--accent:#9d5f40;--green:#294d40}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#e8e8df;font-family:Arial,Helvetica,sans-serif;font-size:14px}button,select,input{font:inherit}button,a,select,input{touch-action:manipulation}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #9d5f40;outline-offset:3px}header{height:86px;background:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--line);position:relative;z-index:3}.brand{display:flex;gap:15px;align-items:center;color:inherit;text-decoration:none;font-size:10px;letter-spacing:2.4px;line-height:1.6}.brand b{font-family:Georgia,serif;font-size:21px;font-weight:400;letter-spacing:5px}.mark{font-family:Georgia,serif;font-size:46px;letter-spacing:-8px;padding-right:12px;line-height:1}.mark span{color:var(--accent)}.head-center{font-size:10px;letter-spacing:2px;color:var(--muted)}.quiet{border:0;background:none;font-size:12px}.quiet span{margin-left:20px;font-size:18px}main{position:relative;height:calc(100dvh - 86px);min-height:630px;overflow:hidden}#scene{position:absolute;inset:0}#scene canvas{display:block;width:100%;height:100%;outline:none}.intro{position:absolute;top:36px;left:36px;pointer-events:none}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#53675a;font-weight:600}h1{font:400 44px/1.08 Georgia,serif;letter-spacing:-1.4px;margin:14px 0 16px}p{line-height:1.65}.intro p{color:#5b655d;font-size:13px;line-height:1.7}.tools{position:absolute;right:28px;top:30px;width:276px;background:rgba(250,249,243,.96);border:1px solid rgba(210,213,201,.9);border-radius:13px;box-shadow:0 8px 30px #263c2710;overflow:hidden}.segmented{display:flex;padding:6px;background:#eeeee5;gap:3px}.segmented button{flex:1;background:transparent;border:0;border-radius:7px;font-size:12px;padding:11px 4px}.segmented button[aria-pressed=true]{background:#fffef8;box-shadow:0 1px 5px #162e1912}.tool-body{padding:20px}.caption{font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:#677469;display:block;margin-bottom:9px}select{width:100%;border:1px solid #d6d9ce;border-radius:6px;background:#f8f8f1;color:var(--ink);padding:10px;font-size:12px;margin-bottom:15px}.switch{display:flex;justify-content:space-between;align-items:center;font-size:12px;min-height:32px;cursor:pointer}.switch input{accent-color:var(--green);width:16px;height:16px}.range-title{display:flex;justify-content:space-between;font-size:12px;margin:19px 0 8px}.range-title output{color:var(--accent);font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--green)}.micro{font-size:11px;color:var(--muted);line-height:1.6;margin:8px 0 0}.selection{padding:18px 20px;border-top:1px solid var(--line);background:#f1f1e8}.selection p{font-size:12px;margin:4px 0}.selection strong{display:block;margin:6px 0;font-weight:500;font-size:16px}.selection .selected-note{font-size:11px;color:var(--muted)}.selection button{font-size:11px;border:0;border-bottom:1px solid #879489;background:none;padding:4px 0}.places{position:absolute;left:36px;bottom:80px;display:flex;align-items:center;gap:4px;background:var(--paper);border-radius:10px;padding:6px;box-shadow:0 3px 14px #23342a10}.places>span{font-size:9px;letter-spacing:1px;padding:0 12px;color:var(--muted)}.places button{border:0;background:none;padding:11px 14px;border-radius:6px;font-size:12px}.places button.active{background:var(--green);color:#f8f8ee}.bottom-left{position:absolute;bottom:27px;left:36px;display:flex;gap:10px;align-items:center;font-size:11px;color:#4c5b50;background:#f7f5eddd;padding:10px 12px;border-radius:5px}.status-dot{height:6px;width:6px;background:var(--accent);border-radius:100%}.divider{color:#a3aa9d}.navigation{position:absolute;bottom:78px;right:28px;display:flex;background:var(--paper);border-radius:8px;padding:4px;box-shadow:0 3px 14px #23342a10}.navigation button{font-size:20px;background:none;border:0;width:38px;height:36px}.compass{position:absolute;bottom:155px;right:46px;display:grid;justify-items:center;gap:2px;color:var(--green);pointer-events:none}.compass span{font-size:11px}.compass div{font-size:35px}.gesture{position:absolute;bottom:20px;right:28px;font-size:10px;color:#5e6a60;background:#f7f5eddd;padding:7px;border-radius:4px}#labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.place-label{position:absolute;top:0;left:0;background:#fffff2ec;border:1px solid #dedfcd;border-radius:4px;padding:5px 8px;font-size:11px;white-space:nowrap;box-shadow:0 2px 9px #203f3210;color:#41534a;transform:translate(-50%,-100%)}#loading{position:absolute;inset:0;background:#e8e8df;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#647366}#loading b{font:26px Georgia,serif;color:var(--ink)}#loading span{font-size:13px}.spinner{border:2px solid #c8d0c3;border-top-color:#536e56;width:28px;height:28px;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}dialog{width:610px;max-width:calc(100vw - 30px);max-height:85dvh;overflow:auto;border:1px solid #d8dccf;border-radius:14px;padding:28px 32px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #10221e33}dialog::backdrop{background:#203c3255;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head button{background:none;border:0;font-size:26px}dialog h2{font:32px/1.15 Georgia,serif;margin:18px 0}dialog>p{font-size:13px}dl{font-size:12px;line-height:1.65}dt{font-weight:600;margin-top:14px}dd{margin:3px 0;color:#5b695e}.downloads{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 15px}.downloads a{font-size:11px;text-decoration:none;padding:10px;background:#e5e8dc;color:#294d40;border-radius:5px}.source-link{display:inline-block;color:var(--green);font-size:12px;margin-top:18px}button:disabled{opacity:.45;cursor:default}button:hover:not(:disabled){filter:brightness(.94)}
@media(max-width:1050px){.head-center{display:none}.intro h1{font-size:34px}.intro{left:24px;top:28px}.intro p{font-size:12px}.tools{width:248px;right:20px}.tool-body{padding:15px}.gesture{display:none}.bottom-left{left:24px;right:24px;width:fit-content}.places{left:24px}.places>span{display:none}}
@media(max-width:700px){header{height:68px;padding:0 18px}.brand{gap:10px;font-size:8px}.brand b{font-size:17px}.mark{font-size:35px}.quiet{font-size:11px}.quiet span{margin-left:5px}main{height:calc(100dvh - 68px);min-height:740px}.intro{top:20px;left:18px}.intro h1{font-size:28px;margin:10px 0}.intro p{display:none}.eyebrow{font-size:8px;letter-spacing:1px}.tools{top:auto;bottom:114px;left:14px;right:14px;width:auto;border-radius:10px}.tool-body{display:grid;grid-template-columns:1fr 1fr;gap:3px 16px;padding:12px 16px}.tool-body>.caption,.tool-body>select{grid-column:1/-1}.tool-body>.caption{display:none}.tool-body>select{margin:0 0 6px;padding:8px}.switch{font-size:11px;min-height:29px}.range-title{grid-column:1;margin:4px 0;align-items:center;font-size:11px}input[type=range]{grid-column:2;grid-row:4}#height-note{grid-column:1/-1;font-size:10px;margin-top:2px}.selection{padding:10px 16px;min-height:56px}.selection .caption{font-size:9px;margin:0}.selection p{font-size:11px;margin:3px 0}.selection strong{font-size:13px;margin:3px 0}.selected-note{display:none}.segmented button{padding:9px}.places{bottom:60px;left:14px;right:14px;justify-content:center;gap:0}.places button{padding:10px 9px;font-size:11px}.bottom-left{left:14px;right:14px;bottom:15px;font-size:9px;gap:6px;padding:8px;width:auto;justify-content:center;flex-wrap:wrap}.navigation{top:22px;right:14px;bottom:auto;flex-direction:column}.navigation button{height:32px;width:32px}.compass{top:160px;right:26px;bottom:auto}.place-label{font-size:10px;padding:4px 6px}dialog{padding:20px}dialog h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
.mobile-toggle{display:none}@media(max-width:700px){.tools:not(.expanded) .tool-body,.tools:not(.expanded) .selection{display:none}.tools>.segmented{padding-right:89px}.mobile-toggle{display:block;position:absolute;right:7px;top:7px;height:32px;background:#e5e8de;border:0;border-radius:6px;padding:0 12px;font-size:11px}.tools.expanded .mobile-toggle{background:#d7dfd0}}
.intro.compact h1,.intro.compact p{display:none}.intro.compact .eyebrow{background:#f7f5edec;padding:9px 12px;border-radius:4px}
#landmark-markers{position:absolute;inset:0;pointer-events:none;z-index:4}.landmark-marker{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;border:1px solid #f7eedb;background:#315d50;color:white;border-radius:18px;padding:8px 13px;box-shadow:0 3px 12px #152c2c35;white-space:nowrap;font-size:12px;cursor:pointer}.landmark-marker span{color:#eecb84}.landmark-marker:hover,.landmark-marker:focus-visible{background:#193f34;outline:3px solid #eecb84}#landmark-panel{position:absolute;z-index:8;right:20px;top:20px;bottom:88px;width:390px;overflow:auto;background:#faf8f1;padding:24px;border-radius:16px;box-shadow:0 8px 40px #17292433}#landmark-panel[hidden]{display:none}.landmark-open .tools{visibility:hidden}#landmark-panel h2{font-family:Georgia,serif;font-size:32px;margin:10px 0 18px}#landmark-panel p{font-size:13px;line-height:1.6}.landmark-close{position:absolute;right:15px;top:12px;background:transparent;border:0;font-size:28px;cursor:pointer}.hero-photo{display:block;width:100%;max-height:300px;object-fit:contain;background:#e2dfd4;border-radius:5px}.photo-modes{display:flex;gap:6px;margin-bottom:10px}.photo-modes button{border:1px solid #bfc9bd;border-radius:20px;padding:7px 13px;background:transparent;cursor:pointer}.photo-modes button[aria-pressed=true]{color:white;background:#315d50}.photo-caption{min-height:38px;color:#64716a}.photo-list{display:flex;gap:7px;overflow-x:auto;padding-bottom:8px}.photo-list button{padding:0;min-width:70px;border:2px solid transparent;background:none;cursor:pointer}.photo-list button[aria-pressed=true]{border-color:#315d50}.photo-list img{width:70px;height:56px;object-fit:cover;display:block}#landmark-panel details{margin-top:18px;font-size:12px}#landmark-panel summary{cursor:pointer}.source-list a{display:block;margin:12px 0;line-height:1.4}#landmark-panel a{color:#315d50}.landmark-open .intro{display:none}.places{max-width:calc(100% - 190px);overflow-x:auto;white-space:nowrap}.places button{flex-shrink:0}@media(max-width:700px){#landmark-panel{top:auto;left:10px;right:10px;bottom:70px;width:auto;max-height:48vh;padding:18px}.hero-photo{max-height:200px}.places{max-width:calc(100% - 20px);left:10px;right:10px}.landmark-marker{font-size:11px;padding:6px 9px}}
.era-switch{display:flex;padding:4px;border:1px solid #c9cdbf;border-radius:26px;background:#edece3;gap:3px}.era-switch button{border:0;background:transparent;padding:10px 22px;border-radius:20px;font:inherit;font-size:13px;cursor:pointer;color:#294c41}.era-switch button[aria-pressed=true]{background:#315d50;color:white}.era-switch button:focus-visible{outline:3px solid #bd8f48}.era-switch button:disabled{opacity:.6}#modern-options{position:absolute;z-index:9;left:26px;top:20px;background:#faf8f1ed;padding:14px 18px;border-radius:12px;box-shadow:0 4px 16px #17292420;max-width:290px}#modern-options[hidden],#modern-attribution[hidden]{display:none}#modern-options span{display:block;font-size:10px;letter-spacing:.1em;color:#526457;margin-bottom:9px}#modern-options label{font-size:13px;display:block;cursor:pointer}#modern-options small{display:block;font-size:11px;max-width:230px;line-height:1.5;margin-top:8px;color:#667167}#modern-attribution{position:absolute;bottom:3px;right:15px;z-index:10;font-size:9px;background:#faf8f1df;padding:4px 8px;border-radius:4px}#modern-attribution a{color:#294c41}#modern-labels{position:absolute;inset:0;pointer-events:none;z-index:3}.modern-label{background:#fcfcf1e8;color:#20382f;border:1px solid #74877155;text-shadow:none}.era-modern .intro{display:none}.era-modern #height,.era-modern .range-title,.era-modern #height-note,.era-modern #selection{display:none}.era-modern .bottom-left{display:none}.era-modern .gesture{bottom:30px}.era-modern .landmark-marker{background:#8b6541}@media(max-width:700px){.era-switch button{padding:7px 10px;font-size:11px}.era-switch{margin-left:auto;margin-right:8px}#modern-options{left:10px;top:12px;max-width:190px;padding:10px 12px}#modern-attribution{left:5px;right:5px;font-size:8px;line-height:1.4}#modern-options small{font-size:10px}.era-modern .places{bottom:48px}.era-modern #landmark-panel{bottom:95px}}
.era-modern label[for="map-select"],.era-modern #map-select,.era-modern .switch:has(#show-buildings){display:none}
/* Archief en kleur vormen steeds één fotopaar, in leesvolgorde. */
#landmark-panel{width:min(480px,calc(100% - 40px))}#landmark-panel p{font-size:14px}.hero-photo{max-height:340px;min-height:170px}.photo-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px}.photo-navigation button{border:1px solid #c5cbbb;background:#eeeee5;border-radius:6px;width:42px;height:36px;font-size:20px}.photo-position{font-size:14px}.photo-caption{margin:8px 0 14px;min-height:0}.photo-list{gap:12px;padding:3px 2px 12px;scrollbar-width:thin;scroll-snap-type:x proximity}.photo-pair{flex:0 0 auto;background:#ebece2;border:1px solid #d4d8ca;border-radius:8px;padding:7px;scroll-snap-align:start}.photo-pair-title{display:block;max-width:195px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#566559;margin-bottom:6px}.photo-pair-images{display:flex;gap:5px}.photo-list .photo-thumb{border:2px solid transparent;border-radius:5px;overflow:hidden;background:#faf8f1;min-width:92px}.photo-list .photo-thumb[aria-pressed=true]{border-color:#315d50;background:#315d50;color:white}.photo-list .photo-thumb img{width:92px;height:64px;object-fit:cover}.photo-thumb span{display:block;font-size:12px;padding:6px 2px}.period-note{padding:10px 12px;border-left:3px solid #a5723e;background:#f0e6d3}.places{justify-content:flex-start}.places button{font-size:14px}.landmark-marker{font-size:13px}.landmark-marker.selected{background:#9d5f40;z-index:2}.landmark-open #modern-options{max-width:220px}@media(max-width:700px){main{min-height:0}#landmark-panel{width:auto;top:auto;bottom:112px;max-height:58dvh;padding:18px;left:10px;right:10px}#landmark-panel h2{font-size:27px}.hero-photo{max-height:230px;min-height:120px}.photo-list .photo-thumb{min-width:86px}.photo-list .photo-thumb img{width:86px;height:60px}.places{bottom:57px}.places button{font-size:13px}.era-modern #landmark-panel{bottom:101px}.landmark-open #modern-options{display:none}.landmark-marker{font-size:12px}}
@media(min-width:701px){#landmark-panel{bottom:148px}.places{z-index:5}}
#landmark-panel .landmark-close{position:sticky;float:right;top:0;right:0;z-index:3;background:#faf8f1;border-radius:50%;width:34px;height:34px;line-height:30px;margin:-8px -8px 0 4px;padding:0;box-shadow:0 1px 5px #29332f16}@media(max-width:700px){#landmark-panel{max-height:52dvh}}
/* Vertical, collapsible navigation. One menu entry per model. */
.places{left:20px;right:auto;top:20px;bottom:auto;width:254px;max-width:calc(100% - 80px);max-height:calc(100% - 95px);display:block;padding:0;white-space:normal;overflow:hidden;z-index:10;border:1px solid #d5d9cd;box-shadow:0 5px 24px #20392b18}
#places-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:15px 16px;font-size:14px;font-weight:600;border-radius:9px;text-align:left;min-height:48px}
.menu-chevron{font-size:24px;line-height:20px}#places-toggle[aria-expanded=false] .menu-chevron{transform:rotate(180deg)}
#places-content{max-height:calc(100dvh - 235px);overflow-y:auto;overscroll-behavior:contain;padding:0 9px 12px;scrollbar-width:thin}#places-content[hidden]{display:none}
#places-content button{display:block;width:100%;text-align:left;white-space:normal;min-height:42px;padding:10px 12px;font-size:14px;line-height:1.35}#places-content h2{font:600 12px/1.5 Arial,sans-serif;letter-spacing:.06em;color:#657366;text-transform:uppercase;margin:18px 12px 6px}#places-content small{display:block;font-size:12px;font-weight:400;color:#68716a;margin-top:3px}#places-content .active small{color:#e2ecdf}.menu-note{font-size:12px;line-height:1.5;color:#68716a;margin:10px 12px 0}
.intro{display:none}#location-status{position:absolute;top:22px;left:294px;max-width:340px;background:#faf8f1ed;border-radius:8px;padding:12px 16px;font-size:14px;z-index:5;line-height:1.5}#location-status[hidden]{display:none}
#modern-options{left:294px;top:20px}#landmark-panel{bottom:75px;z-index:11;width:min(440px,calc(100% - 310px))}#landmark-panel .building-story p{font-size:16px;line-height:1.7}.building-story h3{font:24px/1.25 Georgia,serif;margin:24px 0 12px}.wikipedia-link{display:inline-block;padding:10px 0;font-size:14px;font-weight:600}.tools{z-index:6}.places button:hover:not(.active){background:#e7ebdf}.places button:focus-visible{outline-offset:-3px}main{min-height:0}
@media(max-width:999px){#landmark-panel{width:370px;max-width:calc(100% - 40px)}.menu-expanded .tools{visibility:hidden}#modern-options{top:80px;left:20px}#location-status{top:80px;left:20px;max-width:260px}}
@media(max-width:700px){.places,.era-modern .places{left:10px;right:auto;top:12px;bottom:auto;width:250px;max-width:calc(100% - 70px);max-height:calc(100% - 85px)}#places-toggle{padding:12px 14px}#places-content{max-height:calc(100dvh - 245px)}#landmark-panel,.era-modern #landmark-panel{left:10px;right:10px;top:auto;bottom:54px;width:auto;max-width:none;max-height:51dvh}.tools{bottom:65px}#modern-options{top:72px;left:10px}#location-status{top:74px;left:10px;right:65px;max-width:none;font-size:13px}.menu-expanded #location-status,.menu-expanded #modern-options{display:none}.bottom-left{bottom:8px;font-size:10px}.building-story h3{font-size:22px}.landmark-open .bottom-left{display:none}}

#scene canvas{cursor:grab}#scene canvas:active{cursor:grabbing}

/* In-page archival photo viewer */
.photo-full{display:block;position:relative;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:5px}.photo-expand-hint{position:absolute;bottom:10px;right:10px;background:#173d32e8;color:white;padding:7px 11px;border-radius:5px;font-size:14px}.photo-full:focus-visible{outline:3px solid #a5723e;outline-offset:3px}
.image-lightbox{position:fixed;inset:0;margin:0;padding:20px;width:100vw;height:100dvh;max-width:none;max-height:none;box-sizing:border-box;border:0;background:#121b18;color:#faf8f1;overflow:hidden}.image-lightbox[open]{display:flex;flex-direction:column;gap:12px}.image-lightbox::backdrop{background:#121b18}.image-lightbox header{background:transparent;color:inherit;height:auto;padding:0;position:static;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0}.image-lightbox button{min-width:44px;min-height:44px;border:1px solid #87978f;border-radius:6px;background:#273c33;color:white;padding:8px 14px;font:inherit;cursor:pointer}.image-lightbox button:disabled{opacity:.35;cursor:default}.image-lightbox button:focus-visible{outline:3px solid #eecb84;outline-offset:3px}.lightbox-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.lightbox-stage img{width:100%;height:100%;object-fit:contain}.image-lightbox footer{flex-shrink:0}.lightbox-controls{display:flex;justify-content:center;gap:12px}.lightbox-caption{font-size:14px;line-height:1.5;text-align:center;margin:10px auto 0;max-width:1000px;max-height:20dvh;overflow:auto}.lightbox-position{font-size:16px}@media(max-width:700px){.image-lightbox{padding:12px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));gap:8px}.lightbox-caption{max-height:24dvh}}

/* Phone-first controls and a resizable detail sheet. */
.sheet-bar{display:contents}.sheet-expand{display:none}.lightbox-stage{touch-action:pan-y pinch-zoom}
@media(max-width:700px){
 body{overflow:hidden}body>header{height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 0;gap:8px}.brand{gap:5px;flex-shrink:0;letter-spacing:1px}.brand b{font-size:16px;letter-spacing:3px}.mark{font-size:30px;padding-right:8px}.era-switch{margin:0 0 0 auto;padding:3px;gap:0;flex-shrink:0}.era-switch button{min-height:44px;padding:8px 10px;font-size:13px}.quiet{min-width:44px;min-height:44px;padding:0}.quiet .about-label{display:none}.quiet .about-icon{font-size:24px;margin:0}
 main{height:calc(100dvh - 64px - env(safe-area-inset-top));min-height:0}.places,.era-modern .places{top:10px;left:10px;width:250px;max-width:calc(100% - 76px);max-height:calc(100% - 85px)}#places-content{max-height:calc(100dvh - 220px - env(safe-area-inset-top));padding-bottom:16px}#places-content button{min-height:46px;font-size:16px}#places-content h2{font-size:13px}.menu-note{font-size:14px}
 .navigation{top:10px;right:10px;padding:2px;z-index:7}.navigation button{width:44px;height:44px}.compass{top:157px;right:24px}.bottom-left{display:none}.tools{bottom:calc(12px + env(safe-area-inset-bottom));left:10px;right:10px;max-height:65dvh;overflow-y:auto}.tools>.segmented{padding-right:77px}.segmented button{font-size:13px;min-height:44px}.mobile-toggle{height:44px;top:6px;right:6px;padding:0 9px;font-size:13px}.tool-body{display:flex;flex-direction:column;gap:5px}.tool-body select{font-size:16px;min-height:44px}.switch{min-height:44px;font-size:14px}.switch input{width:22px;height:22px}.range-title{font-size:14px}.tool-body input[type=range]{min-height:32px}#height-note{font-size:13px}.selection p{font-size:14px}.selection button{min-height:44px;font-size:14px}
 #landmark-panel,.era-modern #landmark-panel{left:0;right:0;bottom:0;top:auto;width:100%;max-width:none;height:53dvh;max-height:calc(100% - 62px);padding:0 16px calc(20px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;overscroll-behavior:contain;scroll-padding-top:60px;box-shadow:0 -5px 25px #17292430}#landmark-panel.sheet-expanded{height:calc(100% - 8px);max-height:calc(100% - 8px)}.sheet-bar{display:flex;position:sticky;top:0;z-index:4;background:#faf8f1;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid #e2e4d9;margin-bottom:10px}.sheet-expand{display:block;border:0;background:#e9ecdf;border-radius:22px;min-height:44px;padding:0 16px;font-size:14px}#landmark-panel .landmark-close{position:static;float:none;width:44px;height:44px;margin:0;line-height:44px;font-size:30px}#landmark-panel h2{font-size:26px;margin:10px 0 14px;clear:both;padding-right:0}#landmark-panel .eyebrow{font-size:11px}#landmark-panel p{font-size:15px}#landmark-panel .building-story p{font-size:16px}#landmark-panel details{font-size:14px}#landmark-panel summary{min-height:44px;line-height:1.5;padding:10px 0}.hero-photo{max-height:32dvh;min-height:100px}.sheet-expanded .hero-photo{max-height:45dvh}.photo-navigation button{width:48px;height:44px}.photo-pair-title,.photo-thumb span{font-size:14px}.photo-pair-title{max-width:220px}.photo-list .photo-thumb img{width:96px;height:70px}.photo-list{overscroll-behavior-x:contain}.photo-full{scroll-margin-top:62px}.landmark-marker{min-height:40px;max-width:240px;white-space:normal;font-size:12px}.landmark-open .compass{display:none}
 #modern-options{top:70px;max-width:calc(100% - 76px)}#modern-options label{min-height:44px;display:flex;align-items:center;gap:8px;font-size:14px}#modern-options small{font-size:12px}#modern-attribution{font-size:10px;bottom:0;max-width:100%}.era-modern .tools{bottom:calc(50px + env(safe-area-inset-bottom))}.landmark-open #modern-attribution{display:none}
 #about{max-height:calc(100dvh - 24px);padding:18px}#about p,#about dl{font-size:15px}#about-close{min-width:44px;min-height:44px}.dialog-head{position:sticky;top:-18px;background:var(--paper);z-index:2}.image-lightbox{border-radius:0}.image-lightbox header{padding:0;min-height:44px}.lightbox-caption{max-height:18dvh;font-size:14px}.lightbox-controls button{min-width:64px}
}
@media(max-width:700px) and (max-height:500px){#landmark-panel,.era-modern #landmark-panel{left:auto;right:0;top:0;bottom:0;width:55%;height:100%;max-height:100%;border-radius:12px 0 0 12px}#landmark-panel.sheet-expanded{width:100%;height:100%;max-height:100%}.lightbox-caption{max-height:12dvh}.image-lightbox{gap:4px}.image-lightbox footer{display:flex;gap:12px;align-items:center}.lightbox-caption{margin:0;font-size:12px}}

/* Clearly distinguish the two periods and explain the switch on first visit. */
.era-switch{border:2px solid #b59e86;background:#fffdf5;padding:4px;box-shadow:0 2px 10px #52332318;gap:5px}.era-switch button{min-height:44px;font-weight:700;font-size:15px;padding:10px 20px}#era-old{color:#793b20;background:#f3dfcb}#era-now{color:#155275;background:#dceef8}#era-old[aria-pressed=true]{background:#914b2a;color:white;box-shadow:inset 0 0 0 2px #68331e}#era-now[aria-pressed=true]{background:#145e86;color:white;box-shadow:inset 0 0 0 2px #0c3d59}.era-modern .era-switch{border-color:#679cb9}.era-switch button[aria-pressed=true]::before{content:'✓ ';font-weight:700}
#time-intro{width:480px;padding:30px;max-width:calc(100vw - 28px)}#time-intro h2{font-size:34px;margin-right:12px}#time-intro p{font-size:16px}.intro-close{float:right;border:0;background:#e7e9df;border-radius:50%;width:44px;height:44px;font-size:28px}.time-choices{display:flex;gap:12px;margin:24px 0 14px}.time-choices button{flex:1;min-height:52px;border:0;border-radius:8px;padding:12px;font-size:16px;font-weight:700;color:white}#intro-old{background:#914b2a}#intro-now{background:#145e86}#time-intro .intro-help{font-size:14px;color:#566559}.era-modern .landmark-marker{background:#325f76}
@media(max-width:700px){body>header{height:calc(116px + env(safe-area-inset-top));display:grid;grid-template-columns:1fr 44px;grid-template-rows:48px 60px;gap:0 8px;padding:env(safe-area-inset-top) 12px 0}.brand{grid-column:1;grid-row:1}.brand .mark{font-size:28px}.brand>span:last-child{display:flex;gap:8px;align-items:center;font-size:10px;letter-spacing:1px}.brand br{display:none}.brand b{font-size:17px}.quiet{grid-column:2;grid-row:1}.era-switch{grid-column:1/-1;grid-row:2;justify-self:stretch;margin:0 0 6px;padding:3px;border-radius:12px}.era-switch button{flex:1;font-size:16px;padding:8px;border-radius:8px}main{height:calc(100dvh - 116px - env(safe-area-inset-top))}#places-content{max-height:calc(100dvh - 260px - env(safe-area-inset-top))}#time-intro{padding:22px}#time-intro h2{font-size:30px}.time-choices{flex-direction:column}.time-choices button{flex:auto}.image-lightbox header{display:flex;grid-template-columns:none;height:auto;min-height:44px;padding:0}.image-lightbox .lightbox-position{font-size:14px}}

/* Subtle transparency preserves map context without fading label text. */
.landmark-marker{background:rgb(49 93 80 / 84%);border-color:rgb(247 238 219 / 65%)}.era-modern .landmark-marker{background:rgb(50 95 118 / 84%)}.landmark-marker.selected,.era-modern .landmark-marker.selected{background:rgb(157 95 64 / 88%)}.landmark-marker:hover,.landmark-marker:focus-visible{background:rgb(25 63 52 / 92%)}.era-modern .landmark-marker:hover,.era-modern .landmark-marker:focus-visible{background:rgb(35 75 96 / 92%)}

/* Fixed map anchors, with collision-managed names above or below. */
#landmark-markers .landmark-marker{width:44px;height:44px;min-height:44px;max-width:none;padding:0;border:0;transform:translate(-50%,-50%);background:transparent;box-shadow:none;border-radius:50%;overflow:visible;outline-offset:-6px}
#landmark-markers .landmark-marker::before{content:"";position:absolute;inset:15px;border:2px solid #fff5df;border-radius:50%;background:#315d50;box-shadow:0 1px 5px #17292466;transition:transform .15s}
.era-modern #landmark-markers .landmark-marker::before{background:#245e7a}
#landmark-markers .landmark-marker.selected::before{background:#a35d35;box-shadow:0 0 0 4px #a35d3533}
#landmark-markers .landmark-marker:hover::before,#landmark-markers .landmark-marker:focus-visible::before{transform:scale(1.35)}
#landmark-markers .marker-name{position:absolute;display:block;width:max-content;max-width:220px;white-space:normal;text-align:center;font-size:14px;line-height:1.3;font-weight:500;color:#fff;padding:7px 11px;border:1px solid #fff8;border-radius:10px;background:rgb(35 75 62 / 88%);box-shadow:0 2px 8px #17292420;visibility:hidden;pointer-events:none}
#landmark-markers .has-name .marker-name{visibility:visible;pointer-events:auto}
.era-modern #landmark-markers .marker-name{background:rgb(35 75 96 / 88%)}
#landmark-markers .selected .marker-name{background:rgb(145 75 42 / 90%)}
@media(prefers-reduced-motion:reduce){#landmark-markers .landmark-marker::before{transition:none}}

.park-explorer{margin:16px 0 24px;padding:14px;background:#edf0e5;border:1px solid #cad2bc;border-radius:12px}.park-explorer-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.park-explorer h3{font-size:17px;line-height:1.3;margin:0 0 12px}.park-all{border:1px solid #73846b;background:#fff9;border-radius:8px;min-height:44px;padding:6px 10px;font-size:14px;color:#244c3d;cursor:pointer}.park-mini-map{position:relative;aspect-ratio:1000/459;overflow:hidden;border-radius:7px;border:1px solid #cbc6b7}.park-mini-map img{display:block;width:100%;height:100%;object-fit:cover}.park-map-points{position:absolute;inset:0}.park-map-points button{position:absolute;transform:translate(-50%,-50%);border:2px solid #fff;color:white;background:#315d50;border-radius:50%;width:28px;height:28px;box-shadow:0 1px 4px #132e2766;cursor:pointer;font-size:14px;font-weight:700}.park-map-points button[aria-pressed=true]{background:#914b2a;box-shadow:0 0 0 3px #914b2a44}.park-point-list{display:grid;grid-template-columns:1fr 1fr;gap:5px}.park-point-list button{min-height:44px;text-align:left;font-size:14px;padding:7px;border:1px solid #bcc8af;background:#fff9;border-radius:6px;cursor:pointer;color:#244c3d}.park-point-list button[aria-pressed=true]{background:#315d50;color:#fff}.park-explorer button:focus-visible{outline:3px solid #cf993c;outline-offset:2px}#landmark-markers .photo-marker::before{inset:10px;content:attr(data-number);font-size:12px;font-weight:700;line-height:20px;color:white;text-align:center}#landmark-markers .photo-marker.selected::before{background:#914b2a}
#landmark-panel .park-explorer details{margin-top:6px}#landmark-panel .park-explorer summary{font-size:14px;min-height:36px;padding:8px 0}.park-explorer .micro{font-size:12px!important;line-height:1.4!important;margin:7px 0}.park-explorer h3{font-size:15px}.park-explorer{padding:10px}.park-explorer-heading{margin-bottom:8px}

/* The compass is also a north-up control; keep a generous touch target. */
button.compass{pointer-events:auto;z-index:5;min-width:44px;min-height:60px;padding:5px 9px;gap:0;border:1px solid #c6cec1;border-radius:9px;background:rgba(247,245,237,.94);box-shadow:0 2px 8px #17292418;cursor:pointer}
button.compass #north-arrow{display:block;font-size:32px;line-height:34px;transform-origin:center}
button.compass:hover{background:#fffdf5;border-color:#526f5d}button.compass:focus-visible{outline:3px solid #9d5f40;outline-offset:3px}
