:root{color-scheme:dark;--navy:#0f1924;--navy2:#192b36;--gold:#daa53b;--cream:#f7f1df;--ink:#182834;--muted:#b8b9b5;--line:#e3d6b752}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--cream);font:16px/1.65 'Helvetica Neue',Arial,sans-serif}button,a,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.skip{position:fixed;left:15px;top:-100px;background:var(--cream);color:var(--ink);padding:10px 15px;z-index:100}.skip:focus{top:10px}
.site-header{height:86px;display:flex;justify-content:space-between;align-items:center;padding:0 4%;border-bottom:1px solid #d6bd8040}.wordmark{display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:2px;line-height:1.2}.brand-mark{width:96px;min-height:45px;border-right:1px solid #daa53b66;padding-right:18px;display:grid;place-items:center}.brand-mark img{width:100%;height:auto}.brand-sub{display:block;color:#b2afa4;font-size:10px;letter-spacing:2px;margin-top:5px}.header-actions{display:flex;align-items:center;gap:22px}.header-actions button{background:transparent;border:1px solid #e9dcc26b;color:var(--cream);padding:9px 15px;border-radius:2px;font-size:14px}.header-actions button:hover,.publication-link:hover{color:#f8cb72;border-color:#f8cb72}.publication-link{font-size:14px;color:#d7d0c3}
#room-wrap{height:calc(100svh - 254px);min-height:510px;max-height:1000px;position:relative;overflow:hidden;background:#171e21}#room{display:block;width:100%;height:100%;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0f1924bd,transparent 48%),linear-gradient(0deg,#0f192483,transparent 26%)}#loading{position:absolute;inset:0;background:var(--navy);z-index:10;display:flex;gap:18px;justify-content:center;align-items:center;flex-direction:column;font:24px Georgia,serif}#loading button{font:14px Arial,sans-serif;color:var(--cream);border:0;border-bottom:1px solid var(--gold);background:none;padding:5px}.intro{position:absolute;top:8%;left:4%;max-width:510px;text-shadow:0 2px 18px #08111b;pointer-events:none}.eyebrow,.station-tag,.note-label{color:#ecc779;font-size:12px;letter-spacing:2px;text-transform:uppercase}.intro h1{font:normal clamp(43px,5vw,74px)/1.07 Georgia,serif;letter-spacing:-.035em;margin:16px 0 20px}.intro p{font-size:18px;line-height:1.5;margin:0 0 13px}.intro .orientation{color:#d9d4c8;font:italic 17px/1.55 Georgia,serif;max-width:370px;margin-top:19px}.room-caption{position:absolute;left:4%;right:90px;bottom:20px;display:flex;justify-content:space-between;gap:20px;pointer-events:none;color:#e2d7c1;font:italic 15px Georgia,serif}.room-caption span:first-child{font:11px Arial;letter-spacing:2px;color:#d6bc81}.camera-controls{position:absolute;right:24px;bottom:18px;background:#0f1924ee;border:1px solid #c6af7560;display:flex;box-shadow:0 6px 20px #0005}.camera-controls button{width:42px;height:42px;border:0;border-right:1px solid #c6af7540;background:transparent;color:var(--cream);font-size:22px}.camera-controls button:last-child{border:0}.camera-controls button:hover{background:#daa53b30}#labels{position:absolute;inset:0;pointer-events:none}.object-label{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;white-space:nowrap;padding:7px 10px;background:#111b25e6;border:1px solid #caa76491;color:var(--cream);font-size:12px;letter-spacing:.5px;box-shadow:0 3px 15px #0007}.object-label span{color:#efc16a;margin-right:7px}.object-label:hover,.object-label:focus-visible{background:#2c3c45;border-color:#f3c467}.visited::after{content:' ✓';color:#f1bf59}
footer{padding:18px 4% 12px;border-top:1px solid #bd9c5540;min-height:168px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.exploration-cue{font-size:11px;letter-spacing:2px;color:#e1bd78}.exploration-cue span{letter-spacing:0;color:#aaa9a3;margin-left:12px;font-size:13px}.progress-box{display:flex;align-items:center;gap:12px;font-size:12px;color:#d8d5ca}progress{appearance:none;width:90px;height:3px;border:0;background:#f7f1df25}progress::-webkit-progress-bar{background:#f7f1df25}progress::-webkit-progress-value{background:var(--gold)}progress::-moz-progress-bar{background:var(--gold)}#station-nav{display:grid;grid-template-columns:repeat(7,1fr);margin-top:18px;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25}.station-button{background:transparent;color:var(--cream);border:0;border-right:1px solid #ffffff25;padding:13px 6px;text-align:left;font-size:12px;white-space:nowrap}.station-button:last-child{border:0}.station-button:hover{background:#daa53b1e}.station-button span{color:#e0b867;font:11px Georgia,serif;margin-right:7px}.footer-bottom{font-size:11px;color:#b9b8ae;margin-top:10px}.navigation-hint{font-size:10px;letter-spacing:1px}
#tour{display:none}dialog{position:fixed;inset:16px 18px 16px auto;width:min(630px,calc(100vw - 36px));max-height:calc(100svh - 32px);height:fit-content;margin:auto 0;overflow:auto;padding:0;color:var(--ink);background:var(--cream);border:1px solid #c6a970;box-shadow:0 20px 90px #000b;border-radius:2px;color-scheme:light}dialog::backdrop{background:#05111bb0;backdrop-filter:blur(2px)}.close{position:sticky;top:9px;float:right;z-index:3;margin:9px 10px -42px 0;width:40px;height:40px;background:#f7f1dfeb;color:#4b473c;border:1px solid #b2a582;font-size:27px;line-height:1}.station-content{padding:48px clamp(25px,4vw,55px) 35px;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#66533104 4px)}.station-tag{color:#836525;font-size:11px}.station-content h2{font:normal clamp(35px,3.2vw,48px)/1.12 Georgia,serif;letter-spacing:-.03em;margin:9px 0 27px}.station-content p{margin:0 0 16px}.station-content .lead{font:normal 27px/1.33 Georgia,serif;margin-bottom:18px}.station-content h3{font:normal 23px/1.3 Georgia,serif}.station-content strong{font-weight:700}.shannon-note{margin:25px 0;padding:25px 25px 16px;background:#fffaf0;border:1px solid #c9b890;box-shadow:4px 5px 0 #d5c7a8}.shannon-note .note-label{color:#8b6b2e}.text-link{color:#76551c;text-decoration:underline;text-underline-offset:4px;font-size:14px}
.excavation-interaction{margin:26px 0;border:1px solid #b79c6b;background:#d8cab0}.stratum{padding:18px 20px}.surface-layer{background:#e6d8ba}.below-layer{background:#334b55;color:#f7f1df;box-shadow:inset 0 7px 15px #0b1a2460}.layer-label{font-size:11px;letter-spacing:2px;font-weight:700;color:#755624}.below-layer .layer-label{color:#e8c982}.word-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 12px;margin-top:13px}.word-grid span{font:17px Georgia,serif;border-bottom:1px solid #8c795156;padding:4px 0}.below-layer .word-grid span{border-color:#f6e6bc36}.excavate-button{width:100%;background:#bda980;color:#182834;border:0;border-top:1px solid #a38b58;border-bottom:1px solid #a38b58;text-align:left;padding:12px 20px;font-size:14px;font-weight:700;display:flex;justify-content:space-between}.excavate-button:hover{background:#edc982}
.artifact{margin:25px 0;padding:20px;background:#e7ddc6;border:1px solid #b4a075;box-shadow:7px 7px 0 #bbb09a}.artifact-heading{border-bottom:2px solid #9c8e70;padding-bottom:12px;display:flex;justify-content:space-between;gap:10px;align-items:baseline}.artifact-heading span{font-size:11px;letter-spacing:1.5px;color:#795b2d}.artifact-heading strong{font:italic 21px Georgia,serif}.artifact>p{font-size:14px;line-height:1.5;margin:15px 0}.annotation-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.annotation{background:#f8f1df;border:1px solid #c0ae89}.annotation summary{cursor:pointer;padding:11px;font-size:12px;letter-spacing:1px;font-weight:700;list-style:none}.annotation summary::-webkit-details-marker{display:none}.annotation summary span{color:#9a7333;margin-right:8px}.annotation summary::after{content:'+';float:right}.annotation[open] summary::after{content:'−'}.annotation p{font:16px/1.45 Georgia,serif;margin:0;padding:0 12px 13px}.principle{border-left:3px solid #c18b33;padding:8px 0 8px 17px;font:25px/1.3 Georgia,serif!important;margin:26px 0!important}.field-note{margin-top:23px;border-top:1px solid #b0a180;padding:15px 0}.field-note summary{cursor:pointer;font-size:14px;color:#76551c;text-decoration:underline}.field-note label,.field-note small{display:block;font-size:13px;color:#5f605d;margin:12px 0 6px}.field-note textarea{width:100%;min-height:90px;padding:10px;border:1px solid #ae9c74;background:#fffaf0;color:var(--ink);font:16px Georgia,serif}.field-note button{background:#263b46;color:#fff;padding:9px 12px;border:0;font-size:13px;margin-top:8px}.note-status{display:block;min-height:1em;font-size:13px;color:#596359}
.belief-wall{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:24px 0}.belief-wall blockquote{margin:0;padding:21px 18px;background:#fff9ed;border:1px solid #bca77f;min-height:130px;font:18px/1.43 Georgia,serif;box-shadow:3px 4px 0 #ddcfb0}.belief-wall blockquote span{display:block;color:#997335;font:11px Arial,sans-serif;letter-spacing:1px;margin-bottom:13px}.cabinet{border:8px solid #5c4533;background:#6c5238;padding:10px;box-shadow:5px 7px 0 #c5b595;margin:23px 0}.drawer{background:#eadcbd;border:1px solid #b39763;margin:5px 0}.drawer summary{cursor:pointer;list-style:none;padding:13px 16px;font:17px Georgia,serif}.drawer summary::-webkit-details-marker{display:none}.drawer summary span{display:inline-block;width:30px;color:#7c5b2c;font:11px Arial}.drawer summary::after{content:'⌄';float:right;color:#80612f}.drawer[open] summary::after{content:'⌃'}.drawer>div{background:#faf3df;margin:0 10px 10px;padding:17px 18px;border-left:2px solid #be9343}.drawer p{margin:0 0 9px}.drawer .term-note{font:italic 15px/1.5 Georgia,serif;color:#4d5651}
.reflection{margin:26px 0}.mirror{min-height:145px;display:flex;justify-content:center;align-items:center;text-align:center;background:linear-gradient(135deg,#233a46 0%,#657782 48%,#1e3440 100%);border:9px double #ae8b4d;box-shadow:inset 0 0 55px #f2ead142,5px 6px 0 #cfbd98;color:#f9e9c6;padding:22px;font:italic 19px/1.4 Georgia,serif;letter-spacing:.6px}.mirror span{max-width:250px}.identity-tabs{display:flex;gap:6px;margin-top:20px}.identity-tabs button{flex:1;border:1px solid #ac9a77;background:#ebe0c8;color:var(--ink);padding:10px 5px;font-size:14px}.identity-tabs button[aria-selected=true]{background:#223b47;color:#fff;border-color:#223b47}.identity-panel{background:#fff8e9;border:1px solid #bca984;border-top:3px solid #223b47;min-height:160px;padding:8px 18px}.identity-panel ul{padding-left:20px}.identity-panel li{margin:10px 0}.movements{display:grid;gap:9px;margin:25px 0}.movement{display:grid;grid-template-columns:34px 1fr;column-gap:11px;padding:15px 17px;border:1px solid #b9aa89;background:#f6ebd5}.movement:nth-child(2){background:#e8e0cc;margin-left:12px}.movement:nth-child(3){background:#d8ddda;margin-left:24px}.movement span{grid-row:span 2;color:#94702e;font:14px Georgia}.movement h3{margin:0 0 5px!important}.movement p{font-size:15px;margin:0!important}.first-investigation{border-top:2px solid #b98d3c;padding-top:23px;margin-top:30px}.first-investigation .note-label{color:#76551c}.first-investigation h3{margin:8px 0}.primary,.secondary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 17px;text-align:left;font-size:15px;font-weight:700}.primary{background:#152b38;color:#fff;border:1px solid #152b38;margin:22px 0}.primary:hover{background:#304957}.secondary{background:#f9f1dc;color:#213741;border:1px solid #927743}.secondary:hover{background:#efe1bd}.closing{font:italic 18px/1.5 Georgia,serif;margin:25px 0!important}.subscriber-key{margin-top:18px;border:1px solid #a9956d;background:#e8dcc4}.subscriber-key summary{cursor:pointer;padding:16px 19px;font:17px Georgia,serif;list-style:none;display:flex;justify-content:space-between}.subscriber-key summary::-webkit-details-marker{display:none}.subscriber-key>div{padding:0 19px 19px}.subscriber-key .secondary{margin-top:13px}
.station-end{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #9d906e75;padding-top:22px;margin-top:30px}.text-button,.next-button{border:0;background:none;padding:8px 0;color:#6a572d;font-size:14px}.next-button{color:#203746;font-weight:700}.text-button:hover,.next-button:hover{text-decoration:underline;text-underline-offset:4px}.end-marker{font-size:11px;letter-spacing:1.5px;color:#736a5b}.noscript{position:fixed;inset:90px 20px auto;background:var(--cream);color:var(--ink);padding:28px;z-index:25}.noscript a{text-decoration:underline}[hidden]{display:none!important}
/* The guided reading surface also serves as the native phone tour. */
.reading-mode #room-wrap{display:none}.reading-mode #tour{display:block}.reading-mode footer{display:none}.tour-intro{padding:28px max(5%,calc((100vw - 850px)/2));background:#253743;border-top:1px solid #b99551;color:#e9ddc4}.tour-intro p{max-width:650px;font:20px/1.5 Georgia,serif}.tour-scene{max-width:850px;margin:0 auto;padding:50px 6%;min-height:82svh;scroll-margin-top:16px;border-bottom:1px solid #d7bd8055}.tour-scene:nth-child(even){background:#182b35}.tour-scene:nth-child(odd){background:#10222d}.scene-marker{display:flex;justify-content:space-between;gap:15px;color:#c9aa6d;font-size:11px;letter-spacing:1.3px;margin-bottom:18px;text-transform:uppercase}.scene-marker span:last-child{color:#aeb7b8;letter-spacing:0;text-transform:none}.tour-scene .station-content{background:var(--cream);color:var(--ink);box-shadow:0 14px 50px #06111c7a;padding:34px clamp(22px,6vw,55px)}
.skip-mobile{display:none}.reading-mode .skip-desktop{display:none}.reading-mode .skip-mobile{display:block}
@media(max-width:900px){.site-header{height:74px}.publication-link{display:none}#station-nav{display:flex;overflow-x:auto}.station-button{flex:none;padding:13px}.exploration-cue span,.navigation-hint{display:none}.intro h1{font-size:52px}}
@media(max-width:760px){.skip-desktop{display:none}.skip-mobile{display:block}html{scroll-padding-top:35svh}body{overflow-x:hidden}.site-header{height:70px;padding:0 4%}.brand-mark{width:63px;min-height:32px;padding-right:10px}.wordmark{font-size:9px;letter-spacing:1px;gap:9px}.brand-sub{font-size:8px;letter-spacing:1px}.header-actions button{font-size:11px;padding:7px 9px}#room-wrap{position:sticky;top:0;height:35svh;min-height:245px;max-height:340px;z-index:5;border-bottom:2px solid #d1ac65}.intro{top:16px;left:5%;max-width:290px}.intro h1{font-size:31px;margin:7px 0}.intro p{font-size:14px;line-height:1.3;margin:0 0 5px}.intro .orientation{font-size:12px;margin:7px 0}.eyebrow{font-size:9px;letter-spacing:1px}.entered .intro{display:none}.vignette{background:linear-gradient(90deg,#0f1924c7,transparent 68%)}#labels,.room-caption,.camera-controls{display:none}#tour{display:block}.tour-intro{padding:21px 5%}.tour-intro p{font-size:16px;margin:6px 0}.tour-scene{min-height:65svh;padding:22px 4% 34px;scroll-margin-top:35svh}.scene-marker{padding:0 3px;font-size:10px;margin-bottom:10px}.scene-marker span:last-child{display:none}.tour-scene .station-content{padding:27px 20px}.station-content h2{font-size:34px;margin-bottom:18px}.station-content .lead{font-size:23px}.station-content p{font-size:15px;line-height:1.6}.station-tag{font-size:10px}.shannon-note{padding:18px}.belief-wall{grid-template-columns:1fr}.belief-wall blockquote{min-height:0;padding:17px}.reflection .mirror{min-height:110px}.identity-tabs button{font-size:12px}.annotation-grid{grid-template-columns:1fr}.artifact-heading{display:block}.artifact-heading strong{display:block;margin-top:5px}.movement:nth-child(2),.movement:nth-child(3){margin-left:0}footer{display:none}dialog{inset:auto 10px 10px;width:calc(100% - 20px);max-height:88svh;margin:0}}
@media(max-width:390px){.wordmark{font-size:8px}.brand-mark{width:53px}.intro h1{font-size:27px}.intro{max-width:270px}.tour-scene .station-content{padding:23px 16px}.station-content h2{font-size:31px}.identity-tabs{gap:3px}.identity-tabs button{padding:7px 2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Numbered brass pins replace the floating word labels. The footer remains the full index. */
.object-label{display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:50%;border:1.5px solid #f2bf5d;background:#142734de;color:#f8cf7c;font:600 12px/1 'Helvetica Neue',Arial,sans-serif;letter-spacing:.2px;white-space:normal;box-shadow:0 0 0 4px #daa53b24,0 0 20px #daa53b70,0 4px 12px #00101ac4;transform:translate(-50%,-50%);transition:background .18s,transform .18s,box-shadow .18s}
.object-label:hover,.object-label:focus-visible{background:#e5b252;color:#142734;border-color:#ffe2a0;box-shadow:0 0 0 6px #daa53b48,0 0 30px #daa53ba8,0 4px 15px #00101a;transform:translate(-50%,-50%) scale(1.12)}
.object-label.visited::after{content:none}
.object-label{width:29px;height:29px;font-size:11px;border-width:1px;box-shadow:0 0 0 3px #daa53b20,0 0 11px #daa53b65,0 3px 8px #00101aa8}
.object-label:hover,.object-label:focus-visible{box-shadow:0 0 0 5px #daa53b44,0 0 18px #daa53b98,0 3px 10px #00101a}

.intro .eyebrow{text-transform:none}
