:root{--ink:#f4f1ec;--ink-dim:#f4f1ec9e;--ink-faint:#f4f1ec57;--line:#f4f1ec29;--pane:#0e0f0e6b;--serif:"Times New Roman", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans:"Helvetica Neue", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#0b0d0c;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#loader{z-index:50;transition:opacity 1.1s var(--ease), visibility 1.1s;background:#0b0d0c;place-items:center;display:grid;position:fixed;inset:0}#loader.done{opacity:0;visibility:hidden}.loader-inner{text-align:center}.loader-mark{font-family:var(--serif);letter-spacing:.42em;text-indent:.42em;margin-bottom:22px;font-size:30px}.loader-bar{background:var(--line);width:172px;height:1px;overflow:hidden}.loader-bar i{background:var(--ink);width:0%;height:100%;transition:width .4s linear;display:block}.loader-note{letter-spacing:.24em;color:var(--ink-faint);margin-top:16px;font-size:10px}#ui{z-index:10;pointer-events:none;opacity:0;transition:opacity 1.4s var(--ease) .3s;position:fixed;inset:0}#ui.ready{opacity:1}#ui.cinema .card,#ui.cinema .hint{opacity:0;pointer-events:none;transform:translateY(14px)}.topbar{justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 30px;display:flex;position:absolute;top:0;left:0;right:0}.brand{text-shadow:0 1px 22px #0000008c;flex-direction:column;gap:6px;display:flex}.brand-mark{font-family:var(--serif);letter-spacing:.4em;text-indent:.4em;font-size:19px}.brand-sub{letter-spacing:.34em;color:var(--ink-faint);font-size:8.5px}.hours{background:var(--pane);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);pointer-events:auto;border-radius:999px;gap:2px;padding:4px;display:flex}.hours button{appearance:none;color:var(--ink-dim);font:inherit;letter-spacing:.18em;cursor:pointer;transition:color .35s var(--ease), background .35s var(--ease);white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:8px 14px;font-size:9.5px}.hours button:hover{color:var(--ink)}.hours button[aria-pressed=true]{color:#12130f;background:var(--ink)}.card{background:var(--pane);-webkit-backdrop-filter:blur(20px)saturate(1.1);border:1px solid var(--line);pointer-events:auto;width:min(376px,100vw - 60px);transition:opacity .8s var(--ease), transform .8s var(--ease);padding:28px 28px 24px;position:absolute;bottom:30px;left:30px}.card-handle{appearance:none;width:100%;color:var(--ink);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:2px 0 0;display:none}.card-handle-name{font-family:var(--serif);letter-spacing:.34em;text-indent:.34em;font-size:15px}.card-handle-price{font-family:var(--serif);letter-spacing:.04em;color:var(--ink-dim);margin-left:auto;font-size:14px}.card-handle-chevron{border-right:1px solid var(--ink-dim);border-bottom:1px solid var(--ink-dim);width:9px;height:9px;transition:transform .35s var(--ease);flex:none;margin-bottom:2px;transform:rotate(-135deg)}.card.collapsed .card-handle-chevron{margin-bottom:-3px;transform:rotate(45deg)}.card-body-wrap{transition:opacity .35s var(--ease)}.card-eyebrow{letter-spacing:.28em;color:var(--ink-faint);margin-bottom:16px;font-size:8.5px}.card-title{font-family:var(--serif);letter-spacing:.04em;margin-bottom:14px;font-size:27px;font-weight:400;line-height:1.42}.card-body{color:var(--ink-dim);margin-bottom:22px;font-size:11.5px;line-height:2}.specs{background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin-bottom:20px;display:grid}.specs>div{background:#0a0c0b57;padding:11px 12px}.specs dt{letter-spacing:.2em;color:var(--ink-faint);margin-bottom:5px;font-size:8.5px}.specs dd{letter-spacing:.06em;font-size:13px}.price{justify-content:space-between;align-items:baseline;margin-bottom:18px;display:flex}.price-label{letter-spacing:.24em;color:var(--ink-faint);font-size:9px}.price-value{font-family:var(--serif);letter-spacing:.04em;font-size:19px}.price-unit{color:var(--ink-dim);margin-left:2px;font-size:12px}.cta{appearance:none;border:1px solid var(--ink);width:100%;color:var(--ink);font:inherit;letter-spacing:.24em;cursor:pointer;transition:background .4s var(--ease), color .4s var(--ease);background:0 0;padding:13px;font-size:10.5px}.cta:hover{background:var(--ink);color:#12130f}.cta.sent{border-color:var(--line);color:var(--ink-faint);cursor:default;background:0 0}.tour{pointer-events:auto;flex-direction:column;align-items:flex-end;gap:1px;display:flex;position:absolute;bottom:30px;right:30px}.tour button{appearance:none;color:var(--ink-faint);font:inherit;letter-spacing:.2em;cursor:pointer;text-align:right;transition:color .4s var(--ease);text-shadow:0 1px 18px #0009;background:0 0;border:0;align-items:center;gap:11px;padding:9px 0 9px 18px;font-size:9.5px;display:flex}.tour button:after{content:"";width:16px;height:1px;transition:width .45s var(--ease);background:currentColor}.tour button:hover{color:var(--ink-dim)}.tour button[aria-current=true]{color:var(--ink)}.tour button[aria-current=true]:after{width:34px}.hint{letter-spacing:.24em;color:var(--ink-faint);text-shadow:0 1px 16px #000000b3;transition:opacity .8s var(--ease), transform .8s var(--ease);font-size:8.5px;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.hint.hide{opacity:0}@media (width<=860px){.topbar{padding:18px}.card{-webkit-overflow-scrolling:touch;width:auto;max-height:calc(100vh - 150px);padding:14px 16px;bottom:64px;left:12px;right:12px;overflow-y:auto}.card-handle{display:flex}.card.collapsed{overflow:hidden}.card.collapsed .card-body-wrap{display:none}.card-body-wrap{padding-top:16px}.card-title{font-size:21px}.card-body{display:none}.tour{scrollbar-width:none;flex-direction:row;justify-content:flex-start;align-items:center;gap:2px;padding:0 12px;bottom:14px;left:0;right:0;overflow-x:auto}.tour::-webkit-scrollbar{display:none}.tour button{letter-spacing:.1em;white-space:nowrap;border-radius:999px;flex:none;padding:9px 12px;font-size:9px}.tour button[aria-current=true]{background:#f4f1ec1a}.tour button:after,.hint{display:none}.hours button{padding:7px 9px;font-size:8px}}
