@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#f3f1e8;background:#a9b9b7;font-synthesis:none;--accent:#dac595;--dark:#17231e;--muted:#c3c6ba}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #f3d895;outline-offset:4px}#scene{display:block;width:100vw;height:100dvh;position:fixed;inset:0}header{position:fixed;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:25px 32px;background:linear-gradient(#111e1cbb,transparent);z-index:2;pointer-events:none}header>*{pointer-events:auto}.wordmark{color:#fff;text-decoration:none;font-size:14px;letter-spacing:3px;display:flex;align-items:center;gap:10px}.mark{font-size:29px;color:var(--accent)}.edition{font-size:9px;letter-spacing:2px;border-left:1px solid #ffffff50;padding-left:12px;margin-left:4px}.ghost{border:1px solid #ffffff44;color:#fff;background:#1a242a66;border-radius:5px;padding:9px 13px;font-size:11px}.intro{position:fixed;top:110px;left:32px;width:330px;pointer-events:none;text-shadow:0 1px 18px #0008}.intro button,.intro #vrMount{pointer-events:auto}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:700;color:var(--accent)}h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:62px;line-height:.95;font-weight:400;letter-spacing:-1px;margin:18px 0}h1 em{font-weight:400;color:#f6e3b9}.intro p{font-size:12px;line-height:1.65}.modebar{display:flex;gap:5px;background:#14211cce;border:1px solid #ffffff24;padding:4px;width:max-content;border-radius:6px;margin:19px 0 6px}.modebar button,.presets button{border:0;border-radius:3px;padding:9px 15px;color:#d2d7d0;background:transparent;font-size:11px}.modebar button.selected,.presets button.selected{background:var(--accent);color:#1e2821}.hint{font-size:10px!important;color:#eef1e2!important;max-width:255px}.layers{position:fixed;right:26px;top:112px;width:247px;padding:18px;background:#16251eea;border:1px solid #f2e5be26;border-radius:9px;box-shadow:0 10px 40px #182a2420;backdrop-filter:blur(15px)}.panelHeading{font-size:10px;letter-spacing:2px;display:flex;align-items:center;justify-content:space-between}.panelHeading button{background:none;color:var(--accent);border:0;font-size:20px;padding:0 4px}.subtle{font-size:10px;line-height:1.6;color:#bcc7bb}.presets{display:flex;gap:2px;margin:13px 0}.presets button{padding:7px 10px;font-size:10px}.switchrow{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #ffffff12;font-size:11px;gap:8px}.switchrow span{display:flex;align-items:center;gap:9px}.swatch{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none}.switchrow input{accent-color:#ddc691;width:15px;height:15px;cursor:pointer}.switchrow small{font-size:8px;color:#aab6a8;display:block}.micro{color:#afbbad;font-size:9px;line-height:1.65;margin:12px 0 0}.tour{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:min(930px,calc(100vw - 64px));background:#15241eea;border:1px solid #e8dcbf30;border-radius:8px;backdrop-filter:blur(14px);padding:15px 19px;box-shadow:0 15px 35px #15201844}.tourLabel{font-size:8px;letter-spacing:2px;color:#d1bd91;display:flex;justify-content:space-between;margin-bottom:12px}.tourLabel span{color:#859587}.stops{display:grid;grid-template-columns:repeat(6,1fr)}.stops button{display:grid;text-align:left;grid-template-columns:21px 1fr;gap:4px 4px;background:transparent;color:#ecebdf;border:0;border-right:1px solid #ffffff18;padding:8px 10px;min-height:50px}.stops button:last-child{border-right:0}.stops button.active{background:#ffffff0b;border-radius:4px}.stops button span{grid-row:span 2;font-size:9px;color:#c2a978}.stops button strong{font-size:11px;font-weight:500}.stops button small{font-size:9px;color:#a8b5a6}.compass{position:fixed;left:33px;bottom:35px;display:grid;text-align:center;font-size:11px;color:#fff;gap:2px;text-shadow:0 1px 5px #000}.compass span{font-size:23px}.compass small{font-size:8px;line-height:1.6}#loading{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#18271f;z-index:10}#loading h1{font-size:35px}#loading p{font-size:12px;color:#b9c2b4}.spinner{width:28px;height:28px;border-radius:50%;border:1px solid #ccbd8e33;border-top-color:#ccbd8e;animation:spin 1.5s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hidden{display:none!important}#crosshair{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff8;font-size:24px;pointer-events:none}#walkHelp{position:fixed;bottom:155px;left:50%;transform:translateX(-50%);font-size:11px;padding:8px 15px;border-radius:4px;background:#17241ddd;white-space:nowrap}#notice{position:fixed;top:84px;left:50%;transform:translateX(-50%);background:#17241de8;padding:9px 16px;border-radius:5px;font-size:11px;pointer-events:none;opacity:0;transition:opacity .2s}#notice.visible{opacity:1}#vrMount button{position:static!important;width:auto!important;margin:9px 0 0!important;border:1px solid #d8bf88!important;background:#14221d!important;color:#f5e6c6!important;padding:10px 17px!important;opacity:1!important;border-radius:4px!important;font:11px 'DM Sans',sans-serif!important}dialog{color:#e7e8db;background:#1b2b22;max-width:620px;max-height:85dvh;border:1px solid #d9c8a140;border-radius:12px;padding:38px;box-shadow:0 30px 150px #0008;line-height:1.7}dialog::backdrop{background:#101b16aa;backdrop-filter:blur(7px)}dialog h2{font:42px/1.05 'Libre Caslon Display',Georgia,serif;margin:15px 0 24px}dialog h3{font-size:14px;color:#e3ce9c}dialog p{font-size:12px;color:#c6cebf}.close{float:right;background:none;border:0;color:#cfbd93;font-size:25px}dialog a{color:#e1ca96}.evidence{border-block:1px solid #ffffff18;padding:8px 0}.evidence b{color:#e2d0a4}body.walking .intro h1{font-size:36px}body.walking .intro{width:280px}body.walking .intro #locationText{max-width:230px}body.locked header,body.locked .intro,body.locked .layers,body.locked .tour,body.locked .compass{opacity:0;pointer-events:none}body.locked #walkHelp{bottom:25px}body.locked #walkHelp::after{content:' · Esc shows the menus'}@media(max-width:1100px){.compass{display:none}.intro{top:90px;width:260px}h1{font-size:48px}.layers{top:94px;width:226px;right:20px}.tour{bottom:15px}}@media(max-width:700px){header{padding:16px}.edition{display:none}.ghost{font-size:9px;padding:7px}.intro{top:78px;left:18px;width:210px}h1{font-size:38px}.intro p{font-size:10px}.layers{top:80px;right:12px;width:185px;padding:12px}.switchrow{font-size:10px;padding:7px 0}.presets button{font-size:9px;padding:6px}.subtle{font-size:9px}.tour{width:calc(100vw - 24px);padding:10px;bottom:12px}.tourLabel{margin-bottom:5px}.stops button{display:block;padding:7px;min-height:57px}.stops button span{display:block;font-size:8px;margin-bottom:5px}.stops button strong{font-size:9px}.stops button small{display:none}.hint{max-width:175px;font-size:9px!important}.modebar button{font-size:10px;padding:7px}.micro{font-size:8px}#walkHelp{font-size:9px;bottom:110px;white-space:normal;width:80%;text-align:center}dialog{width:calc(100% - 20px);padding:23px}}@media(max-height:700px){.intro{top:80px}.intro h1{font-size:38px;margin:12px 0}.intro #locationText{display:none}.layers{top:80px}.switchrow{padding:6px 0}.tour{bottom:12px;padding:10px}.micro{margin-top:8px}}

.intro{background:linear-gradient(100deg,#14241cce,#14241c80 75%,transparent);padding:22px 22px 20px;border-left:2px solid #d6bd87;left:24px;border-radius:0 8px 8px 0;width:325px}.intro h1{font-size:54px}.intro .eyebrow{line-height:1.6}body.walking .intro{width:267px}body.walking .intro h1{display:none}@media(max-width:1100px){.intro{width:265px;padding:17px}.intro h1{font-size:43px}}@media(max-width:700px){.intro{width:190px;left:12px;padding:12px}.intro h1{font-size:32px}.intro .eyebrow{font-size:8px}body.walking .intro{width:190px}}

.curtainAction{background:#d9c08b;color:#1e2d22;border:0;border-radius:4px;padding:11px 14px;font-size:11px;margin-top:8px;box-shadow:0 3px 20px #0003}.curtainAction[hidden]{display:none}#interactionPrompt{position:fixed;top:57%;left:50%;transform:translateX(-50%);color:#f3e3bc;background:#14231edc;padding:8px 14px;font-size:12px;border:1px solid #d5bb8450;border-radius:5px;pointer-events:none}#interactionPrompt[hidden]{display:none}

body.camp-view .intro{top:85px;width:320px;padding:14px 20px;background:#17231edb}body.camp-view .intro h1,body.camp-view .intro .modebar,body.camp-view .intro .hint,body.camp-view .intro #vrHint{display:none}body.camp-view .intro p{margin-bottom:0}body.camp-view .layers{top:85px}body.camp-view .layers #layerBody{display:none}body.camp-view .layers:focus-within #layerBody{display:block}

@media(min-height:701px){.switchrow{padding:8px 0}}

body.life-view .intro{width:280px}body.life-view .intro h1{font-size:36px}body.life-view .intro .hint{max-width:220px}

.sceneModes{display:flex;gap:4px;margin-top:12px;pointer-events:auto}.sceneModes button{font-size:9px;padding:8px;border:1px solid #ddc69155;color:#f0e9d7;background:#17241ddd;border-radius:4px}.sceneModes button.selected{background:#dac595;color:#17241d}body.camp-view .sceneModes{display:none}

body.atonement-view .layers #layerBody{display:none}body.atonement-view .layers:focus-within #layerBody{display:block}body.atonement-view .intro{width:250px}

body:not(.locked) #crosshair{display:none}

.layers{max-height:calc(100dvh - 265px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#9b8963 #16251e}.activityRow{display:grid;gap:8px;font-size:11px;margin-top:13px}.activityRow select{font:inherit;background:#24382c;color:#f2e4c6;border:1px solid #ac956350;border-radius:4px;padding:9px 5px;width:100%;cursor:pointer}.activityRow select:focus-visible{outline:2px solid #e3ce9f;outline-offset:2px}.volumeRow{display:flex;align-items:center;gap:12px;font-size:10px;padding:10px 0}.volumeRow[hidden]{display:none}.volumeRow input{min-width:0;width:100%;accent-color:#ddc691}.layers #activityState{margin:6px 0 0;min-height:1.5em;color:#dfc994}@media(max-width:700px){.layers{max-height:calc(100dvh - 205px)}}

.stops{grid-template-columns:repeat(7,1fr)}.tour{width:min(1020px,calc(100vw - 64px))}.campPanel{border-top:1px solid #e8d4a233;margin-top:15px;padding-top:12px}.campPanel h3{font-size:10px;letter-spacing:1.1px;color:#e4cd97;margin:0 0 8px}.campPanel>p{font-size:10px;line-height:1.6;color:#c0c8b6}.campActions{display:flex;gap:5px;margin-top:12px}.campActions button{background:#d6bf8b;color:#1c2b21;border:0;border-radius:4px;font-size:10px;padding:9px 8px}.campActions button:disabled{opacity:.5}.landscape-view .intro h1,.landscape-view .intro .modebar,.landscape-view .intro .hint,.landscape-view .sceneModes{display:none}.landscape-view .intro{width:320px;top:88px;padding:14px 20px}.landscape-view .layers{top:88px}.landscape-view .intro small{font-size:10px;color:#e1d0a8}@media(max-width:700px){.tour{width:calc(100vw - 24px)}.stops button{padding:5px}.stops button strong{font-size:8px}.landscape-view .intro{width:190px;top:78px;padding:12px}.campActions{flex-wrap:wrap}}

.landscape-view .layers #layerBody{display:none}.landscape-view .campPanel{border-top:0;margin-top:8px;padding-top:8px}.campActions{flex-wrap:wrap}

.vrControls{margin:18px 0;padding-top:14px;border-top:1px solid #ffffff22}.vrControls h3{font-size:11px;letter-spacing:.14em;color:#d8c694}.vrControls button{font:inherit;font-size:11px;background:#d1be8b;color:#172b23;border:0;border-radius:3px;padding:9px;cursor:pointer}
