@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=DM+Sans:wght@300;400;500;600&family=Montserrat:wght@300;400&display=swap";:root{--ink:#1b1a17;--ink-2:#26241f;--ivory:#f1ebdf;--ivory-2:#d9d1c2;--muted:#9a9384;--champagne:#c9b48a;--champagne-2:#e2d2ad;--gold:#a3844f;--glass:rgba(24,23,20,.52);--glass-strong:rgba(22,21,18,.7);--glass-line:rgba(241,235,223,.14);--glass-hi:rgba(255,255,255,.07);--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif;--caps:"Montserrat","DM Sans",sans-serif;--ease:cubic-bezier(.22,1,.36,1);--blur:blur(22px) saturate(1.25)}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#191815;color:var(--ivory);font:14px var(--sans);-webkit-font-smoothing:antialiased}#scene{display:block;width:100vw;height:100vh;touch-action:none}button{font:inherit;cursor:pointer;border:0;color:inherit}small{font-size:10px;letter-spacing:2px}header .lumora-brand,nav,aside,.controls button,#prompt{background:var(--glass);border:1px solid var(--glass-line);box-shadow:0 1px 0 var(--glass-hi) inset,0 18px 50px -18px #0000008c;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}header{position:absolute;top:28px;left:32px;right:32px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;pointer-events:none}.hd-place{display:flex;align-items:center;gap:18px}.hd-place .mark{font:400 40px/1 var(--serif);color:var(--gold);letter-spacing:-.5px}.hd-place .mark span{font:500 13px var(--serif);vertical-align:top;margin-left:2px;position:relative;top:-2px}.hd-rule{width:1px;height:42px;background:linear-gradient(#a88a55bf,#a88a5526)}.hd-place small{display:block;font:500 9.5px var(--caps);letter-spacing:3.6px;color:var(--gold)}.hd-place h1{font:italic 400 25px/1.1 var(--serif);letter-spacing:.2px;margin:6px 0 0;color:#2a2620}header .lumora-brand{pointer-events:auto;display:flex;flex-direction:column;align-items:center;padding:12px 26px 13px;border-radius:2px;color:var(--ivory)}.lb-star{width:16px;height:16px;color:var(--ivory-2)}.lb-name{font:400 21px/1 var(--serif);letter-spacing:.42em;margin:6px -.42em 0 0}.lb-rule{display:flex;align-items:center;gap:6px;width:128px;margin:8px 0 0}.lb-rule i{flex:1;height:1px;background:#f1ebdf52}.lb-rule b{width:5px;height:5px;background:var(--ivory-2);transform:rotate(45deg)}.controls{position:absolute;right:32px;top:122px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.controls button{display:flex;align-items:center;gap:9px;height:34px;padding:0 15px 0 12px;border-radius:17px;font:500 10px var(--caps);letter-spacing:1.6px;text-transform:uppercase;color:var(--ivory);transition:background .3s,border-color .3s}.controls button:hover{background:var(--glass-strong);border-color:#c9b48a73}.controls button:before{content:"";width:12px;height:12px;flex:none;background:var(--champagne);-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat}#daynight{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 14.5A8.5 8.5 0 0 1 9.5 4a8.5 8.5 0 1 0 10.5 10.5z'/%3E%3C/svg%3E")}#daynight[data-mode=day]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Cg stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 1.5v3M12 19.5v3M1.5 12h3M19.5 12h3M4.6 4.6l2.1 2.1M17.3 17.3l2.1 2.1M4.6 19.4l2.1-2.1M17.3 6.7l2.1-2.1'/%3E%3C/g%3E%3C/svg%3E")}#quality{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.6 7.4H22l-6 4.6 2.3 7.5L12 17l-6.3 4.5L8 14 2 9.4h7.4z'/%3E%3C/svg%3E")}#quality[data-state=low]:before{opacity:.45}aside{position:absolute;right:32px;bottom:118px;padding:12px 12px 10px;border-radius:3px}.mp-head{display:flex;justify-content:space-between;align-items:baseline;margin:0 2px 8px}.mp-head small{font:500 8.5px var(--caps);letter-spacing:2.6px;color:var(--champagne-2)}.mp-head span{font:400 9px var(--sans);color:var(--muted);letter-spacing:.5px}aside canvas{display:block;width:136px;height:136px}.mp-foot{display:block;margin-top:6px;text-align:center;font:400 6.5px var(--caps);letter-spacing:1.6px;color:var(--muted)}nav{position:absolute;bottom:44px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:6px;border-radius:999px;white-space:nowrap}.nv-views{display:flex;gap:2px}nav [data-view]{position:relative;display:flex;align-items:baseline;gap:7px;padding:11px 17px;border-radius:999px;background:transparent;font:500 11.5px var(--sans);letter-spacing:.3px;color:#f1ebdfb8;transition:color .3s,background .35s}nav [data-view] b{font:500 8.5px var(--caps);letter-spacing:1px;color:#c9b48ab3}nav [data-view]:hover{color:var(--ivory);background:#f1ebdf0f}nav [data-view].active{color:var(--ink);background:linear-gradient(180deg,#f6f0e3,#e9dfcb);box-shadow:0 2px 10px -2px #00000059}nav [data-view].active b{color:#9a8458}#walk{display:flex;align-items:center;gap:10px;margin-left:4px;padding:11px 18px 11px 20px;border-radius:999px;background:linear-gradient(180deg,#d6c296,#bfa676);color:#1f1c16;font:600 11.5px var(--sans);letter-spacing:.4px;box-shadow:0 0 0 1px #ffffff2e inset,0 6px 18px -6px #c9b48a99;transition:filter .3s}#walk span{transition:transform .35s var(--ease)}#walk:hover{filter:brightness(1.06)}#walk:hover span{transform:translate(3px)}#hint{position:absolute;bottom:6px;left:50%;transform:translate(-50%);max-width:calc(100vw - 40px);padding:5px 14px;border-radius:999px;background:#1413116b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:center;font:500 12.5px var(--sans);letter-spacing:.3px;color:#f6f0e4;text-shadow:0 1px 3px rgba(0,0,0,.5);pointer-events:none;white-space:nowrap}#crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff9;pointer-events:none}#prompt{position:absolute;pointer-events:none;transform:translate(16px,-50%);display:flex;align-items:center;gap:8px;color:var(--ivory);font-size:11px;letter-spacing:.2px;padding:6px 11px 6px 7px;border-radius:3px;white-space:nowrap}#prompt[hidden]{display:none}#prompt b{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:1px solid rgba(201,180,138,.7);color:var(--champagne-2);border-radius:2px;font:600 10px var(--sans)}#touch{display:none}#error{position:absolute;inset:20%;padding:30px;background:var(--ivory);color:var(--ink)}body.walking #intro{display:none}#loader{position:fixed;inset:0;z-index:50;background:radial-gradient(120% 90% at 50% 40%,#25231f,#191815 55%,#121110);color:var(--ivory);display:grid;place-items:center;transition:opacity 1.3s cubic-bezier(.65,0,.35,1),visibility 0s linear 1.3s}#loader:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.ld-frame{position:absolute;inset:28px;pointer-events:none}.ld-corner{position:absolute;width:22px;height:22px;border-color:#c9b48a66;border-style:solid;border-width:0}.ld-corner.tl{left:0;top:0;border-left-width:1px;border-top-width:1px}.ld-corner.tr{right:0;top:0;border-right-width:1px;border-top-width:1px}.ld-corner.bl{left:0;bottom:0;border-left-width:1px;border-bottom-width:1px}.ld-corner.br{right:0;bottom:0;border-right-width:1px;border-bottom-width:1px}.ld-center{display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:-6vh;animation:ldIn 1.4s var(--ease) both}.ld-eyebrow{font:500 10px var(--sans);letter-spacing:4px;color:var(--champagne)}.ld-title{font:300 clamp(44px,7vw,78px)/1 var(--serif);letter-spacing:-.5px;margin:22px 0 46px;color:var(--ivory)}.ld-progress{width:min(300px,70vw)}.ld-bar{display:block;height:1px;background:#f1ebdf1f;overflow:hidden}.ld-bar i{display:block;height:100%;background:linear-gradient(90deg,#a8956d,var(--champagne) 70%,#efe2c3);transform-origin:left;transform:scaleX(0);will-change:transform}.ld-meta{display:flex;justify-content:space-between;align-items:center;line-height:1.25em;margin-top:14px;font:400 10px var(--sans);letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.ld-pct{display:flex;justify-content:flex-end;font-variant-numeric:tabular-nums;color:var(--ivory);letter-spacing:1px;min-width:4ch;line-height:1.25em}.ld-d{display:block;height:1.25em;overflow:hidden}.ld-s{display:block;will-change:transform}.ld-s b{display:block;height:1.25em;font-weight:inherit;text-align:center}.ld-pct:after{content:"%";color:var(--muted);margin-left:2px}.ld-brand{position:absolute;bottom:clamp(40px,7vh,72px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;color:var(--ivory);opacity:.9;animation:ldIn 1.6s var(--ease) .25s both}.ld-star{width:26px;height:26px;color:var(--ivory-2)}.ld-name{font:400 34px/1 var(--serif);letter-spacing:.42em;margin:10px -.42em 0 0}.ld-rule{display:flex;align-items:center;gap:9px;width:228px;margin:13px 0 11px}.ld-rule i{flex:1;height:1px;background:#f1ebdf4d}.ld-rule b{width:7px;height:7px;background:var(--ivory-2);transform:rotate(45deg)}.ld-sub{font:300 10.5px var(--caps);letter-spacing:.38em;margin-right:-.38em;color:var(--ivory-2)}@keyframes ldIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.ld-brand{animation-name:ldInX}@keyframes ldInX{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:.9;transform:translate(-50%)}}body.loaded #loader{opacity:0;visibility:hidden}body.loaded #loader .ld-center{transform:translateY(-8px) scale(.985);transition:transform 1.3s cubic-bezier(.65,0,.35,1)}body.loading header,body.loading nav,body.loading aside,body.loading .controls,body.loading #hint,body.loading #intro{opacity:0;pointer-events:none}header,nav,aside,.controls,#hint{transition:opacity 1s ease .5s}#intro{position:absolute;left:clamp(20px,5vw,80px);top:50%;transform:translateY(-50%);width:min(420px,calc(100vw - 40px));padding:42px 42px 30px;color:var(--ivory);background:linear-gradient(165deg,#201e1abd,#141311a8);border:1px solid var(--glass-line);border-radius:2px;box-shadow:0 1px 0 var(--glass-hi) inset,0 40px 90px -30px #000000b3;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}body.loaded #intro{animation:introIn 1.2s var(--ease) .55s both}@keyframes introIn{0%{opacity:0;transform:translateY(calc(-50% + 18px))}to{opacity:1;transform:translateY(-50%)}}#intro:before{content:"";position:absolute;left:42px;right:42px;top:0;height:1px;background:linear-gradient(90deg,var(--champagne),rgba(201,180,138,0))}#intro .eyebrow{display:flex;align-items:center;gap:12px;font:500 9.5px var(--caps);letter-spacing:3.4px;text-transform:uppercase;color:var(--ivory-2)}#intro .eyebrow b{font-weight:500;color:var(--champagne);letter-spacing:1px;padding-right:12px;border-right:1px solid rgba(241,235,223,.2)}#intro h2{font:300 64px/.95 var(--serif);letter-spacing:-1.2px;white-space:nowrap;color:#fbf6ea;margin:24px 0 16px}#intro h2 em{font-style:italic;color:var(--champagne-2)}#intro p{font-size:14px;line-height:1.75;color:#f1ebdfb8;margin:0;max-width:300px}#enter{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;margin:32px 0 26px;padding:18px 22px;background:linear-gradient(180deg,#d9c59a,#bea575);color:#1d1a14;font:600 12.5px var(--sans);letter-spacing:.8px;border-radius:1px;overflow:hidden;box-shadow:0 0 0 1px #fff3 inset,0 12px 30px -12px #c9b48a8c;transition:filter .35s ease}#enter:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translate(-100%);transition:transform .9s ease}#enter:hover{filter:brightness(1.05)}#enter:hover:before{transform:translate(100%)}#enter span{position:relative}#enter .en-arrow{font-size:16px;color:#1d1a14;transition:transform .35s var(--ease)}#enter:hover .en-arrow{transform:translate(5px)}#intro .keys{list-style:none;margin:0;padding:18px 0 0;border-top:1px solid rgba(241,235,223,.12);display:flex;flex-wrap:wrap;gap:10px 18px;font-size:11px;color:#f1ebdf99}#intro .keys li{display:flex;align-items:center;gap:3px}#intro .keys span{margin-left:5px}#intro kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;font:500 10px var(--sans);color:var(--ivory);background:#f1ebdf0f;border:1px solid rgba(241,235,223,.22);border-bottom-width:2px;border-radius:3px}body.night .hd-place h1{color:#f6efe0}body.night{--gold:#d2b77f}@media (max-width:900px){nav [data-view] b{display:none}nav [data-view]{padding:11px 13px}}@media (max-width:700px){header{top:18px;left:18px;right:18px}.hd-place h1{font-size:19px}.hd-place small{font-size:8px;letter-spacing:2.4px}.hd-rule{height:34px}header .lumora-brand{padding:9px 14px}.lb-name{font-size:15px}.lb-rule{width:86px}.lb-star{width:13px;height:13px}.hd-place .mark{font-size:30px}.hd-place{gap:12px}.controls{right:16px;top:88px}.controls button{height:30px;padding:0 12px 0 10px;font-size:9px}nav{bottom:34px;max-width:96%;gap:2px;overflow-x:auto}nav [data-view]{padding:10px;font-size:10.5px}#walk{padding:10px 13px;font-size:10.5px}aside{right:12px;bottom:104px;padding:7px}aside canvas{width:84px;height:84px}.mp-head,.mp-foot{display:none}#intro{top:auto;bottom:110px;transform:none;padding:28px 26px 22px}body.loaded #intro{animation:none}#intro h2{font-size:48px}#intro:before{left:26px}.ld-frame{inset:16px}.ld-name{font-size:26px}.ld-rule{width:170px}.ld-sub{font-size:9px}body.walking #touch{display:block;position:absolute;left:20px;bottom:115px;right:20px;pointer-events:none}#pad{width:105px;height:105px;background:var(--glass);border:1px solid var(--glass-line);border-radius:50%;text-align:center;padding:23px 0;pointer-events:auto;touch-action:none;backdrop-filter:var(--blur)}#pad b,#pad i{display:block;font-style:normal;font-size:20px;color:var(--ivory)}#touch span{position:absolute;right:0;bottom:0;font-size:11px}#hint{font-size:10.5px;white-space:normal}}@media (max-width:440px){.hd-place small{display:none}.hd-place h1{font-size:16px}}.ld-status{display:inline-flex;align-items:baseline;gap:6px}
