:root{--navy:#06111b;--cream:#f3ead6;--gold:#b9964a}*{box-sizing:border-box}html,body{background:var(--navy);width:100%;height:100%;color:var(--cream);margin:0;font-family:Arial,sans-serif;overflow:hidden}button{font:inherit}#world{width:100vw;height:100dvh;position:relative;overflow:hidden}#canvas{touch-action:none;outline:none;width:100%;height:100%;display:block}#world:after{content:"";pointer-events:none;background:linear-gradient(#02090f59,#0000 25% 68%,#02080d94);position:absolute;inset:0}header{z-index:4;background:linear-gradient(#040d15d9,#040d1526);border-bottom:1px solid #b9964a60;align-items:center;gap:13px;padding:22px clamp(20px,4vw,56px);display:flex;position:absolute;inset:0 0 auto}.mark{border:1px solid var(--gold);width:42px;height:42px;color:var(--gold);place-items:center;font:700 24px Georgia,serif;display:grid}header strong{letter-spacing:.18em;font:700 15px Georgia,serif;display:block}header small{color:#aeb7b7;letter-spacing:.25em;font-size:9px}header button{color:var(--cream);letter-spacing:.18em;cursor:pointer;background:#05111bcc;border:1px solid #b9964aa6;margin-left:auto;padding:11px 18px;font-size:10px}#location{z-index:3;letter-spacing:.16em;background:#030c13ad;border:1px solid #ffffff26;padding:9px 12px;font-size:9px;position:absolute;top:90px;left:clamp(20px,4vw,56px)}#location i{background:#7dc6d4;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block;box-shadow:0 0 10px #57bbcf}#directory{z-index:6;background:#051019f2;border:1px solid #b9964a80;width:min(360px,100vw - 40px);padding:24px;display:none;position:absolute;top:82px;right:clamp(20px,4vw,56px);box-shadow:0 22px 70px #0007}#directory.open{display:block}#directory p,aside p,#arrival p{color:var(--gold);letter-spacing:.28em;margin:0 0 15px;font-size:9px}#directory button{width:100%;color:var(--cream);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff19;justify-content:space-between;padding:15px 3px;font:18px Georgia,serif;display:flex}#directory button:hover{color:#e5c579}#directory small{color:#71818a;font:10px Arial,sans-serif}aside{z-index:3;border-left:2px solid var(--gold);text-shadow:0 2px 18px #000;width:min(450px,100vw - 40px);padding-left:18px;position:absolute;bottom:28px;left:clamp(20px,4vw,56px)}aside blockquote{margin:0 0 15px;font:italic 19px/1.45 Georgia,serif}aside small{color:#aeb8b8;letter-spacing:.18em;font-size:8px}#arrival{z-index:10;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:radial-gradient(circle at 50% 52%,#0d2d3c6b,#030a11f0 68%);place-items:center;padding:24px;display:grid;position:absolute;inset:0}#arrival>div{text-align:center;width:min(780px,100%);animation:1.15s ease-out rise}#arrival h1{letter-spacing:-.06em;text-shadow:0 5px 50px #000;margin:0;font:400 clamp(58px,10vw,116px)/.82 Georgia,serif}#arrival h1 em{color:#d1af62;font-weight:400}#arrival h2{color:#c4c7c2;width:min(560px,90%);margin:31px auto;font:400 20px/1.55 Georgia,serif}#arrival button{border:1px solid var(--gold);background:var(--gold);color:#07121b;cursor:pointer;letter-spacing:.2em;min-width:260px;padding:17px 22px;font-size:11px;font-weight:700}#arrival button b{margin-left:18px;font-size:16px}#arrival>div>small{color:#738187;letter-spacing:.22em;margin-top:22px;font-size:8px;display:block}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@media (width<=640px){header{padding:14px 16px}.mark{width:36px;height:36px}header strong{font-size:12px}header small{letter-spacing:.13em}header button{padding:9px 11px}#location{top:72px;left:16px}#directory{top:68px;right:16px}aside{bottom:17px;left:16px}aside blockquote{font-size:15px}#arrival h2{font-size:17px}}
