@charset "UTF-8";
:root{--paper:#f1eee5;--ink:#213d3d;--muted:#526562;--rule:#ced1c7;--accent:#984b2d;--panel:#f8f5ed}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Palatino Linotype","Book Antiqua",Georgia,serif}button,input,select,.eyebrow,nav,.period,.settings,.download-row,.scene-footer,.reference figcaption,.outline-link,.archive-toolbar,.archive-meta{font-family:"Segoe UI",sans-serif}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,#viewport:focus-visible{outline:3px solid var(--accent);outline-offset:4px}a{color:inherit;text-underline-offset:4px}button{font-size:14px}header{height:98px;padding:0 36px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--rule);position:relative;z-index:3;background:var(--paper)}.wordmark{font-size:44px;text-decoration:none;position:relative;border:1px solid var(--ink);width:47px;height:53px;text-align:center;line-height:50px}.markline{position:absolute;width:30px;height:1px;background:var(--ink);bottom:8px;left:8px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em}h1{font-size:25px;font-weight:400;margin:4px 0 0}.title .eyebrow{font-size:10px}nav{display:flex;gap:24px;margin-left:auto;height:100%;align-items:stretch}.nav{background:none;border:0;padding:2px 0 0;border-bottom:3px solid transparent;font-size:14px}.nav.active{border-color:var(--ink)}#count{font-size:11px;margin-left:5px}.period{font-size:12px;letter-spacing:.09em;border-left:1px solid var(--rule);padding-left:24px;margin-left:8px}#model-view{height:calc(100dvh - 98px);min-height:690px;position:relative;overflow:hidden}#viewport{position:absolute;inset:0;background:#e9e7df}#viewport canvas{width:100%;height:100%;display:block;touch-action:none}#loading{position:absolute;top:45%;width:100%;text-align:center;font-size:20px}.scene-caption{position:absolute;top:34px;left:36px;pointer-events:none}.scene-caption p{font-size:31px;line-height:1.13;margin:12px 0;letter-spacing:-.025em}.scene-caption em{font-weight:400}.controls-panel{position:absolute;right:28px;top:30px;width:245px;background:var(--panel);padding:21px 18px;border:1px solid #d1d0c3}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head .eyebrow{font-size:10px}.live-dot{width:6px;height:6px;border-radius:50%;background:#57785c}.view-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:19px 0}.view-buttons button{background:none;border:1px solid var(--rule);padding:9px 3px;font-size:12px}.view-buttons button.selected{background:var(--ink);border-color:var(--ink);color:var(--panel)}.settings{display:grid;gap:14px;font-size:13px;border-top:1px solid var(--rule);padding-top:17px}.settings label{display:flex;align-items:center;justify-content:space-between;gap:9px}.settings input[type=checkbox]{appearance:none;width:27px;height:15px;border-radius:9px;background:#afb5ab;position:relative;cursor:pointer;margin:0}.settings input[type=checkbox]:after{content:"";position:absolute;left:3px;top:3px;background:var(--panel);border-radius:50%;width:9px;height:9px;transition:transform .15s}.settings input:checked{background:var(--ink)}.settings input:checked:after{transform:translateX(12px)}input[type=range]{accent-color:var(--ink);width:110px}.download-row{display:flex;justify-content:space-between;margin-top:19px;border-top:1px solid var(--rule);padding-top:16px;font-size:12px}.download-row button{border:0;background:none;padding:0;font-size:12px}.interpretation{font-size:12px;color:var(--muted);line-height:1.5;margin:17px 0 0}.reference{position:absolute;bottom:66px;left:36px;width:214px;margin:0;background:var(--paper);border:1px solid #d0c8b6;padding:6px}.reference button{padding:0;border:0;display:block;width:100%;background:none}.reference img{width:100%;aspect-ratio:1.6;object-fit:cover;display:block;filter:sepia(.15)}.reference figcaption{font-size:9px;letter-spacing:.04em;padding:10px 3px 5px;display:flex;justify-content:space-between}.scene-footer{position:absolute;bottom:0;left:0;width:100%;height:47px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;font-size:11px;border-top:1px solid #c7c9bd;background:#eeece2e8}.scale{display:flex;gap:12px;align-items:center;font-size:9px;letter-spacing:.12em}.scale i{height:1px;width:28px;background:var(--ink)}#archives-view,#notice-view{padding:54px 5vw 80px}.section-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:33px}h2{font-size:clamp(32px,3.2vw,48px);font-weight:400;line-height:1.1;margin:15px 0 18px;letter-spacing:-.03em}.section-intro p{max-width:590px;font-size:17px;line-height:1.55;margin:0}.outline-link{padding:13px 18px;border:1px solid var(--ink);font-size:13px;text-decoration:none;white-space:nowrap}.archive-toolbar{display:flex;gap:24px;align-items:end;padding:23px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-size:12px}.archive-toolbar label{display:flex;flex-direction:column;gap:8px}.archive-toolbar input,.archive-toolbar select{height:39px;background:transparent;border:1px solid #9ca9a2;padding:7px 12px;color:var(--ink);font-size:14px;max-width:100%}.search-label{width:min(400px,45%)}.archive-toolbar select{max-width:350px}#result-count{margin-left:auto;padding-bottom:10px}#gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 23px;padding-top:32px}.archive-item{margin:0}.archive-item button{width:100%;border:0;background:#e0dacd;padding:14px;display:flex;align-items:center;justify-content:center;height:220px}.archive-item img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .2s}.archive-item button:hover img{transform:scale(1.035)}.archive-item figcaption{font-size:16px;line-height:1.35;margin-top:12px;overflow-wrap:anywhere}.archive-meta{font-size:11px;color:var(--muted);margin-top:6px;line-height:1.4}.notice-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;max-width:1220px;margin:auto}.notice-layout article{font-size:18px;line-height:1.65}.notice-layout h2{margin-top:23px}.notice-layout .lead{font-size:24px;line-height:1.45;margin-top:0}.notice-layout h3{font-size:24px;font-weight:400;margin:32px 0 12px}.notice-layout li{margin-bottom:14px}.notice-layout ol{padding-left:22px}dialog{width:min(1250px,94vw);max-height:94dvh;padding:0;background:var(--panel);border:1px solid var(--ink);color:var(--ink)}dialog::backdrop{background:#132e2be0}#close-lightbox{position:absolute;right:14px;top:14px;background:var(--panel);padding:10px 15px;border:1px solid var(--ink);z-index:2}.lightbox-image{height:min(60dvh,660px);background:#ded8cb;display:flex;align-items:center;justify-content:center;padding:24px}.lightbox-image img{max-width:100%;max-height:100%;object-fit:contain}.lightbox-info{padding:26px 34px}.lightbox-info h2{font-size:26px;letter-spacing:0;margin:12px 0}.lightbox-info p{margin:7px 0;font-size:14px;line-height:1.5}.lightbox-info>div{display:flex;gap:24px;margin-top:18px;font-size:14px}[hidden]{display:none!important}#gallery-empty{padding:60px 0;font-size:22px}
@media(min-width:1600px){.controls-panel{right:40px;top:40px}.reference{width:250px}.scene-caption{top:45px}.scene-caption p{font-size:38px}}
@media(max-width:1000px){header{padding:0 20px;gap:15px}.period{display:none}nav{gap:18px}h1{font-size:21px}.controls-panel{right:18px;width:219px;padding:18px 14px}.scene-caption{left:20px}.scene-caption p{font-size:26px}.reference{left:20px;width:175px}#gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.archive-toolbar select{max-width:220px}.notice-layout{gap:35px;grid-template-columns:1fr 1.3fr}}
@media(max-width:700px){header{height:120px;align-items:flex-start;padding:14px 16px}.wordmark{height:44px;width:39px;font-size:34px;line-height:42px}.markline{left:5px}.title{padding-top:3px}.title .eyebrow{font-size:8px}h1{font-size:21px}nav{position:absolute;bottom:0;left:16px;height:46px;gap:28px}.nav{font-size:13px}#model-view{height:calc(100dvh - 120px);min-height:790px}.scene-caption{top:22px;left:18px}.scene-caption p{font-size:24px}.controls-panel{left:16px;right:16px;top:auto;bottom:50px;width:auto;padding:14px 16px}.view-buttons{grid-template-columns:repeat(4,1fr);margin:12px 0}.settings{grid-template-columns:1fr 1fr;gap:12px 20px;font-size:12px;padding-top:12px}.sun-label{grid-column:1/-1}.sun-label input{width:75%}.download-row{margin-top:12px;padding-top:12px}.interpretation{font-size:11px;margin:9px 0 0}.interpretation br{display:none}.reference{display:none}.scene-footer{padding:0 16px;font-size:10px}.scale{display:none}#viewport{bottom:225px}.section-intro{display:block}.section-intro .outline-link{display:inline-block;margin-top:22px}.archive-toolbar{flex-wrap:wrap;gap:14px}.search-label{width:100%}.archive-toolbar label{width:100%}.archive-toolbar select{max-width:100%}#result-count{margin-left:0;padding:0}#gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 13px}.archive-item button{height:155px;padding:8px}.archive-item figcaption{font-size:14px}.notice-layout{display:block}.notice-layout article{font-size:17px;margin-top:40px}.notice-layout .lead{font-size:21px}.lightbox-info{padding:20px}.lightbox-info h2{font-size:22px}.lightbox-image{height:45dvh}.eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.wide-view{grid-column:1/-1}@media(max-width:700px){.view-buttons{grid-template-columns:repeat(2,1fr)}#viewport{bottom:315px}#model-view{min-height:910px}}
.visit-actions{display:grid;gap:8px;margin-top:16px}.visit-actions button{background:var(--ink);color:var(--paper);border:0;padding:10px;font-size:12px}.visit-actions #tour-exit{background:transparent;color:var(--ink);border:1px solid var(--rule)}.walk-label{font:12px Segoe UI,sans-serif;padding:7px 0;display:flex;align-items:center;gap:6px}.walk-label input{accent-color:var(--ink)}progress{width:100%;height:4px;accent-color:var(--ink)}.walk-pad{position:absolute;bottom:64px;right:35px;display:grid;grid-template-columns:repeat(3,38px);gap:4px}.walk-pad button{height:36px;border:1px solid var(--rule);background:var(--panel)}.walk-pad button:first-child{grid-column:2}.walk-pad button:nth-child(2){grid-column:1}.controls-panel{max-height:calc(100% - 90px);overflow:auto}.scene-caption{color:#183432;text-shadow:0 1px 8px #f9f2df}.scene-caption p{font-size:28px}.view-buttons{margin:12px 0}@media(max-width:700px){#model-view{min-height:1120px}#viewport{bottom:480px}.controls-panel{max-height:470px}.walk-pad{right:16px;bottom:535px}}

.comparison-launch{position:absolute;left:24px;top:20px;width:min(420px,calc(100% - 330px));padding:13px 16px;background:#f8f5edf2;border:1px solid var(--rule);font:12px "Segoe UI",sans-serif;z-index:4}.comparison-launch label{display:block;font-size:10px;letter-spacing:.12em;margin-bottom:8px}.comparison-launch>div{display:flex;gap:8px}.comparison-launch select{min-width:0;flex:1;padding:7px;border:1px solid var(--rule);background:var(--paper);color:var(--ink)}.comparison-launch button{border:0;background:var(--ink);color:var(--paper);padding:7px 12px}.comparison-launch small{display:block;margin-top:8px;line-height:1.4}.scene-caption{display:none}
#comparison-layer{position:absolute;inset:0;pointer-events:none;z-index:6}.comparison-window{position:absolute;width:430px;height:520px;min-width:290px;min-height:280px;max-width:calc(100% - 8px);max-height:calc(100% - 80px);resize:both;overflow:auto;background:#f8f5edf5;border:1px solid #697a70;box-shadow:0 10px 35px #14251e35;pointer-events:auto;display:flex;flex-direction:column}.comparison-head{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--ink);color:var(--paper);padding:9px 12px;font:13px "Segoe UI",sans-serif;cursor:grab;touch-action:none}.comparison-head span{flex:1}.comparison-close{font-size:22px;line-height:24px;min-width:32px;border:0;background:transparent;color:inherit}.comparison-image{min-height:130px;flex:1;background:#ded8cb;overflow:hidden;display:flex;align-items:center;justify-content:center}.comparison-image img{width:100%;height:100%;object-fit:contain;pointer-events:none}.comparison-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;border-bottom:1px solid var(--rule);font:11px "Segoe UI",sans-serif}.comparison-tools button,#compare-document{background:var(--paper);border:1px solid #99aaa0;padding:6px 9px;font-size:12px}.comparison-tools button:disabled{opacity:.45;cursor:default}.comparison-tools label{display:flex;gap:6px;align-items:center}.comparison-tools input{width:70px;accent-color:var(--ink)}.comparison-notes{padding:6px 12px 12px;max-height:150px;overflow:auto;font:12px/1.45 "Segoe UI",sans-serif}.comparison-notes p{margin:6px 0}.comparison-notes strong{font-weight:600}.document-meta{color:var(--muted);font-size:11px}.comparison-window.overlaid{inset:0!important;width:100%!important;height:100%!important;max-height:100%;max-width:100%;background:transparent;border:0;box-shadow:none;resize:none;pointer-events:none;overflow:hidden}.overlaid .comparison-image{position:absolute;inset:0;background:transparent;z-index:-1}.overlaid .comparison-head,.overlaid .comparison-tools,.overlaid .comparison-notes{pointer-events:auto;background:var(--panel);color:var(--ink);width:min(460px,calc(100% - 20px));margin-left:10px}.overlaid .comparison-head{margin-top:100px}.overlaid .comparison-notes{max-height:145px}.overlaid .comparison-image img{transform-origin:center}
@media(max-width:700px){.comparison-launch{top:10px;left:10px;width:calc(100% - 20px)}.comparison-window{width:calc(100% - 20px);left:10px!important;height:500px}.comparison-window.overlaid{height:640px!important}.lightbox-info>div{flex-wrap:wrap}}

#loading{z-index:30;min-width:260px;max-width:85%;padding:20px 26px;background:#eeeadef5;border:1px solid #a3aaa0;box-shadow:0 6px 30px #172d2422;text-align:center;pointer-events:none}
#loading span{display:block;margin-bottom:12px}
#loading progress{display:block;width:100%;height:7px;accent-color:#435b51}

/* Primary visit controls */
.panel-head .eyebrow{font-size:20px;letter-spacing:.06em;line-height:1.25}.visit-actions #tour-start{font-size:18px;font-weight:600;padding:16px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}#tour-actions{display:flex;gap:8px;margin:0;padding:0}#tour-actions button{flex:1;padding:12px;border:1px solid var(--ink);background:var(--panel)}#tour-actions #pause-tour{background:var(--ink);color:var(--paper)}

body.cinema{background:#090d13}body.cinema header,body.cinema #model-view>*:not(#viewport),body.cinema #viewport>div:not(#loading):not(.cinema-veil){display:none!important}body.cinema #model-view{height:calc(100dvh - 65px);min-height:0}body.cinema #viewport{width:min(100vw,calc((100dvh - 85px)*16/9));height:auto;aspect-ratio:16/9;left:50%;top:50%;transform:translate(-50%,-50%);bottom:auto}.cinema-controls{height:65px;display:flex;align-items:center;justify-content:center;gap:12px;color:#ede7d9;font:12px system-ui;flex-wrap:wrap}.cinema-controls button{padding:8px 14px}.cinema-veil{position:absolute;inset:0;background:#000;pointer-events:none;opacity:0}body.cinema #viewport canvas{height:100%;width:100%}

.cinema-loading{position:fixed;inset:0;z-index:100;background:#0b111bed;display:grid;place-items:center;color:#eee6d5;text-align:center;font:15px system-ui}.cinema-loading>div{width:min(520px,85vw)}.cinema-loading h2{font:32px Georgia}.cinema-loading progress{height:8px;width:100%;accent-color:#bc9765}.cinema-loading button{margin-top:20px;padding:12px 24px}

/* Phone-only menu. Desktop layout is unchanged. */
.phone-explore{position:absolute;top:14px;right:14px;z-index:8;min-height:48px;padding:12px 18px;background:var(--ink);color:var(--paper);border:1px solid var(--paper);font:600 16px "Segoe UI",sans-serif}
.phone-view #model-view{height:calc(100dvh - 130px);min-height:420px}
.phone-view #viewport{inset:0;bottom:0}
.phone-view .comparison-launch,.phone-view #comparison-layer,.phone-view .walk-pad,.phone-view .scene-footer{display:none!important}
.phone-view .reference{bottom:12px;left:12px;width:105px}
#phone-menu{box-sizing:border-box;width:calc(100% - 24px);max-width:460px;max-height:85dvh;padding:16px;border:1px solid var(--rule);background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}
#phone-menu::backdrop{background:#10252088}
#phone-menu .controls-panel{position:static;width:auto;max-height:none;padding:0;margin:12px 0 0;overflow:visible;box-shadow:none;border:0;background:transparent}
#phone-menu .panel-head{display:none}
#phone-menu .view-buttons button,#phone-menu .settings label{min-height:44px}
#phone-menu button,#phone-menu label{font-size:16px}
.phone-menu-close{display:block;margin-left:auto;min-height:44px;padding:8px 16px;border:1px solid var(--ink);background:var(--paper);color:var(--ink)}

.walk-pad{display:none!important}
