:root{color-scheme:dark;--cream:#f3ecdc;--gold:#dfba78;--shade:#111d15;--muted:#cbd1c2}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:var(--shade);color:var(--cream);font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}#experience{height:100svh;min-height:440px;position:relative;overflow:hidden;background:#16271c}#panorama{width:100%;height:100%;display:block;touch-action:none;cursor:grab;background-position:center;background-size:cover}#panorama:active{cursor:grabbing}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#08120c8c,transparent 24%,transparent 55%,#08130dde)}#travel-light{position:absolute;inset:0;background:#ecddbd;opacity:0;pointer-events:none;z-index:5;mix-blend-mode:screen}.topbar{position:absolute;inset:0 0 auto;display:flex;align-items:center;gap:28px;padding:24px 34px;pointer-events:none}.brand{pointer-events:auto;display:block;width:110px}.brand img{width:100%;height:auto;filter:drop-shadow(0 3px 9px #0008)}.preview-label{font-size:9px;text-transform:uppercase;letter-spacing:.22em;color:#eee9d9bd}.tools{display:flex;gap:8px;margin-left:auto;pointer-events:auto}.tools button,.dialog-head button{border:1px solid #f0ddad38;border-radius:3px;background:#101d1799;padding:11px 13px;font-size:11px;min-height:40px;backdrop-filter:blur(8px)}.tools button:hover{border-color:var(--gold)}.context{position:absolute;left:42px;bottom:65px;max-width:490px;pointer-events:none}.context p:first-child{letter-spacing:.23em;font-size:9px;color:var(--gold);margin:0 0 13px}.context h1{font:400 clamp(32px,3.7vw,54px)/1.05 Georgia,serif;margin:0 0 13px;letter-spacing:-.025em}.context p{font-size:13px;line-height:1.7;color:#e1e3d3;max-width:430px;margin:0}.context button{pointer-events:auto;margin-top:20px;background:#101d17b0;border:1px solid #d3ad6c6b;padding:11px 16px;font-size:11px}.look-hint{position:absolute;bottom:23px;left:42px;color:#e1e3d3b0;font-size:10px;letter-spacing:.06em;margin:0;pointer-events:none}.look-hint span{padding:0 8px;color:var(--gold)}#paths{position:absolute;inset:0;pointer-events:none}.path{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);background:none;border:0;min-width:100px;min-height:62px;padding:8px 12px;text-align:center;text-shadow:0 2px 8px #000;color:#fff5dd;transition:opacity .3s}.path .mark{display:block;width:12px;height:12px;border:1px solid #e8d3a3;background:#1c2519a8;transform:rotate(45deg);margin:0 auto 12px;box-shadow:0 2px 14px #0009}.path .label{font:400 22px/1.1 Georgia,serif;display:block;white-space:nowrap;opacity:.75}.path .detail{display:block;margin-top:6px;font-size:9px;letter-spacing:.1em;color:#ede3c9;opacity:0}.path:hover .label,.path:focus-visible .label,.path.discovered .label{opacity:1;color:#ffe3a7}.path:hover .detail,.path:focus-visible .detail{opacity:1}.path:hover .mark,.path:focus-visible .mark{background:#dfba78}.path.discovery .label{font-size:17px}.path.discovery .mark{width:8px;height:8px}#caption{position:absolute;bottom:130px;left:50%;transform:translateX(-50%);width:max-content;max-width:min(86vw,780px);background:#09110be8;padding:14px 21px;font-size:17px;line-height:1.5;text-align:center;border-radius:4px;z-index:8}#stop-voice{position:absolute;bottom:90px;left:50%;transform:translateX(-50%);z-index:8;background:#0c1913d9;border:1px solid #d3ad6c70;padding:10px 16px;font-size:11px}#notice{position:absolute;left:50%;top:105px;transform:translateX(-50%);background:#0c1913eb;padding:12px 20px;border:1px solid #d3ad6c50;font-size:12px;max-width:85vw;text-align:center;z-index:12}.veil{position:absolute;inset:0;display:grid;place-items:center;background:#07110aa8;backdrop-filter:blur(3px);z-index:10}.welcome-card{max-width:530px;padding:38px;text-align:center}.overline{font-size:10px;letter-spacing:.24em;color:var(--gold);margin:0 0 22px}.welcome-card h2{font:400 clamp(45px,5.5vw,70px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:0 0 24px}.welcome-card h2 em{font-weight:400;color:#e5c48b}.welcome-card p{font-size:14px;line-height:1.8;color:#e0e3d6}.welcome-card .small-note{font-size:11px;color:#c4caba;max-width:365px;margin:18px auto 25px}.primary{background:#e0bf83;color:#192419;border:1px solid #e0bf83;padding:15px 25px;font-size:12px;min-height:48px;letter-spacing:.04em}.primary span{margin-left:28px}.primary:hover{background:#f0d49f}.text-button{display:block;background:none;border:0;border-bottom:1px solid #d3ad6c60;padding:8px 0;font-size:11px;margin:15px auto 0;color:#ede0c4}.welcome-card a{display:block;margin-top:20px;color:var(--gold)}dialog{background:#122119f7;color:var(--cream);border:1px solid #d3ad6c66;border-radius:3px;max-width:530px;width:calc(100% - 32px);max-height:85svh;padding:28px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#07100bc9}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-head .overline{margin:0}dialog h2{font:400 34px Georgia,serif;margin:23px 0 18px}dialog h3{font:400 22px Georgia,serif}dialog p{font-size:13px;line-height:1.8;color:#cbd2c3}dialog hr{border:0;border-top:1px solid #d3ad6c33;margin:25px 0}#alternate{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}#alternate button{background:#233629;border:1px solid #aebd9b33;text-align:left;padding:13px 12px;min-height:44px;font-size:12px}#alternate button:hover{border-color:var(--gold)}@media(max-width:650px){.topbar{padding:18px;gap:12px;align-items:flex-start}.brand{width:86px}.preview-label{display:none}.tools{gap:5px;flex-wrap:wrap;justify-content:flex-end;max-width:260px}.tools button{padding:9px;font-size:10px;min-height:39px}.context{left:24px;right:24px;bottom:75px;max-width:340px}.context h1{font-size:35px}.context p{font-size:12px;max-width:320px}.look-hint{left:24px;right:16px;bottom:25px;font-size:9px;max-width:285px;line-height:1.6}.path{min-width:85px;padding:8px}.path .label{font-size:18px}.path .detail{font-size:8px}.welcome-card{padding:30px 25px}.welcome-card h2{font-size:50px}.welcome-card p{font-size:13px}#caption{font-size:14px;bottom:170px}#stop-voice{bottom:126px}#notice{top:112px}dialog{padding:23px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.path:not(.discovered) .label{opacity:0;transition:opacity .4s .3s}.path:not(.discovered):hover .label,.path:not(.discovered):focus-visible .label{opacity:1}.path.discovered .label{opacity:1}
