:root{--carbon:#08080a;--violet:#380778;--white:#fff;--blueprint:#16224a;--bone:#e8e4da;--slate:#7d8194;--ink:#0a0612;--card:#140f22;--line:#b496ff38;--text:#efe9ff;--dim:#9d92c4;--neon:#e33bd0;--text-11:.6875rem;--text-13:.8125rem;--text-17:1.0625rem;--text-21:1.3125rem;--text-27:1.6875rem;--text-36:2.25rem;--text-56:3.5rem;--text-88:5.5rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;--sp-11:192px;--ease:cubic-bezier(.22, .75, .25, 1);--dur-micro:.2s;--dur-reveal:.5s;--dur-page:.7s;--hairline:1px solid #e8e4da1f;--max-text:68ch;--max-content:1200px;--max-photo:1440px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable}body{background:var(--carbon);min-height:100vh;color:var(--white);font-family:var(--font-body), "Helvetica Neue", Arial, sans-serif;font-size:var(--text-17);letter-spacing:-.04em;-webkit-font-smoothing:antialiased;line-height:1.62}::selection{background:var(--violet);color:var(--white)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--carbon)}::-webkit-scrollbar-thumb{border:3px solid var(--carbon);background:#24242c;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#34343e}.display{font-family:var(--font-display), "Arial Black", sans-serif;letter-spacing:-.02em;text-wrap:balance;font-weight:800;line-height:1}.monoLabel{font-family:var(--font-mono), "Courier New", monospace;font-size:var(--text-11);letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}.measure{max-width:var(--max-text)}a{color:inherit}:focus-visible{outline:2px solid var(--violet);outline-offset:3px;border-radius:2px}.btn{isolation:isolate;justify-content:center;align-items:center;gap:var(--sp-3);background:var(--violet);color:var(--white);font-family:var(--font-body), "Helvetica Neue", Arial, sans-serif;font-weight:600;font-size:var(--text-17);letter-spacing:-.04em;text-transform:uppercase;cursor:pointer;transition:background var(--dur-micro) var(--ease), transform var(--dur-micro) var(--ease), border-color var(--dur-micro) var(--ease);border:1px solid #0000;padding:15px 30px;text-decoration:none;display:inline-flex;position:relative}.btn:before{content:"";pointer-events:none;transition:transform var(--dur-micro) var(--ease), opacity var(--dur-micro) var(--ease);border:1px solid #e8e4da8c;position:absolute;inset:0;transform:translate(5px,5px)}.btn:after{content:"";width:7px;height:7px;transition:transform var(--dur-micro) var(--ease), background var(--dur-micro) var(--ease);border:1.5px solid;flex:none;order:-1;transform:rotate(45deg)}.btn:hover{background:#451190}.btn:hover:before{transform:translate(0)}.btn:hover:after{background:currentColor;transform:rotate(45deg)scale(.9)}.btn:active{background:#2d0661;transform:scale(.98)}.btn:active:before{opacity:0}.btn:disabled:before,.btn[aria-disabled=true]:before{display:none}.btn[aria-disabled=true],.btn:disabled{color:var(--slate);cursor:not-allowed;background:#1d1d24}.btnGhost{background:0 0;border:1px solid #e8e4da40}.btnGhost:hover{background:#e8e4da0f;border-color:#e8e4da73}.btnGhost:active{background:#e8e4da08;transform:scale(.98)}.textLink{transition:border-color var(--dur-micro) var(--ease), color var(--dur-micro) var(--ease);border-bottom:1px solid #e8e4da40;padding-bottom:1px;text-decoration:none}.textLink:hover{border-color:var(--bone);color:var(--bone)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.booking{letter-spacing:-.04em}.booking .wrap{background:var(--ink);flex-direction:column;padding-top:64px;display:flex;position:fixed;inset:0}.booking .wrap iframe{border:0;flex:1;width:100%;display:block}.booking .topbar{z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c0816b8;border-radius:999px;align-items:center;gap:10px;padding:8px 14px;display:flex;position:fixed;top:78px;left:16px}.booking .topbar label{letter-spacing:.25em;text-transform:uppercase;color:var(--dim);font-size:10px}.booking .topbar select{color:var(--text);letter-spacing:inherit;cursor:pointer;background:0 0;border:0;outline:none;font-family:inherit;font-size:14px;font-weight:600}.booking .topbar select option{background:var(--card)}.booking .notice{z-index:20;color:#ffb4b4;cursor:pointer;background:#2a0f14e6;border:1px solid #7a2a33;border-radius:10px;max-width:88vw;padding:10px 16px;font-size:13px;position:fixed;top:132px;left:50%;transform:translate(-50%)}.booking .success{background:var(--ink);min-height:100dvh;color:var(--text);place-items:center;padding:24px;display:grid}.booking .success .card{background:var(--card);border:1px solid var(--line);border-radius:16px;width:100%;max-width:460px;padding:32px 36px}.booking .success h1{color:#ffd9f4;margin-bottom:16px;font-size:24px}.booking .success .line{margin:8px 0;font-size:15px;line-height:1.5}.booking .success .dim{color:var(--dim);font-size:13px}.booking .success .warn{color:#ffcf8a;font-size:13px}.booking .success a{color:var(--neon)}.booking .success .back{margin-top:18px;font-size:14px;text-decoration:none;display:inline-block}.reveal{opacity:0;transition:opacity var(--dur-reveal) var(--ease), transform var(--dur-reveal) var(--ease);transform:translateY(18px)}.reveal[data-shown]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}@view-transition{navigation:auto}.tourFrameVT{view-transition-name:tour-frame}::view-transition-group(tour-frame){animation-duration:.5s;animation-timing-function:var(--ease)}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}.tourPoster{z-index:30;background:var(--ink);transition:opacity .6s var(--ease);position:fixed;inset:64px 0 0}.tourPoster[data-fading=true]{opacity:0;pointer-events:none}.tourPosterImg{max-width:2560px;margin:0 auto;position:absolute;inset:0}.tourPosterHint{color:var(--bone);animation:posterHintIn .5s var(--ease) both;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}@keyframes posterHintIn{0%{opacity:0}to{opacity:1}}.tourPosterFail{justify-content:center;align-items:center;gap:var(--sp-5);color:var(--text);font-size:var(--text-17);background:#0a0612b8;flex-direction:column;display:flex;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.tourPoster{transition:none}}
