[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.experience-shell,.experience-checking{color:#1d2a28;background:#91cee6;width:100%;height:100svh;position:fixed;inset:0;overflow:hidden}.experience-canvas-loading{z-index:4;color:#203c38;background:#91cee6;place-content:center;justify-items:center;gap:1rem;display:grid;position:absolute;inset:0}.experience-canvas-loading p{margin:0;font-size:.82rem;font-weight:700}.experience-canvas{cursor:grab;inset:0;width:100%!important;height:100%!important;position:absolute!important}.experience-canvas:active{cursor:grabbing}body[data-cursor=view] .experience-canvas,body[data-cursor=door] .experience-canvas{cursor:pointer}.experience-checking{color:#203c38;place-content:center;justify-items:center;gap:1rem;display:grid}.experience-checking p{margin:0;font-size:.82rem;font-weight:700}.checking-sun{aspect-ratio:1;background:#f1bd4a;border-radius:50%;width:3rem;animation:1.5s ease-in-out infinite checking-pulse;box-shadow:0 0 0 .75rem #fff5bb57}@keyframes checking-pulse{50%{opacity:.72;transform:scale(.9)}}.experience-hud{z-index:30;width:100%;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) 1rem max(1rem, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:fixed;top:0;left:0}.experience-hud button,.experience-menu,.entry-gate,.skip-intro,.catalog-backdrop,.detail-dialog,.location-mark{pointer-events:auto}.experience-brand{color:#172725;font-family:var(--font-display);letter-spacing:0;text-shadow:0 1px 12px #ffffffb3;cursor:pointer;background:0 0;padding:0;font-size:1.15rem;font-weight:800}.experience-brand span{color:#a83f32}.hud-actions{align-items:center;gap:.45rem;display:flex}.icon-button{color:#1d2a28;backdrop-filter:blur(10px);cursor:pointer;background:#fffdf6db;border:1px solid #1d2a2838;border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;padding:0;display:inline-grid;box-shadow:0 .5rem 1.5rem #29362b1f}.icon-button:hover{color:#fffdf6;background:#223c38}.icon-button svg{width:1.15rem;height:1.15rem}.entry-gate{z-index:20;color:#162825;text-shadow:0 2px 18px #ffffffd1;max-width:38rem;position:fixed;bottom:max(2.2rem,10vh);left:max(1.4rem,7vw)}.entry-gate>p,.detail-kicker{letter-spacing:0;text-transform:uppercase;margin-bottom:.8rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.74rem;font-weight:800}.entry-gate h1{font-family:var(--font-display);letter-spacing:0;margin:0 0 .6rem;font-size:5rem;line-height:.96}.entry-gate>span{max-width:30rem;margin-bottom:1.5rem;font-size:1.05rem;font-weight:650;display:block}.entry-command,.command-button{color:#fffdf6;cursor:pointer;background:#a83f32;border:1px solid #813029;border-radius:4px;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.75rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.entry-command:disabled{opacity:.55;cursor:wait}.entry-command svg,.command-button svg{width:1rem}.skip-intro{z-index:32;right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));position:fixed}.location-mark{z-index:18;left:max(1rem, env(safe-area-inset-left));bottom:max(1rem, env(safe-area-inset-bottom));color:#20332f;backdrop-filter:blur(8px);background:#fffdf6c7;border:1px solid #1d2a282e;border-radius:4px;align-items:center;gap:.5rem;padding:.42rem .65rem;font-size:.72rem;font-weight:750;display:flex;position:fixed}.location-mark span{aspect-ratio:1;background:#b74332;border-radius:50%;width:.45rem}.experience-menu{z-index:35;top:calc(max(1rem, env(safe-area-inset-top)) + 3.35rem);right:max(1rem, env(safe-area-inset-right));color:#1d2a28;background:#fffdf6;border:1px solid #1d2a283d;border-radius:6px;width:min(19rem,100vw - 2rem);padding:1rem;position:fixed;box-shadow:0 1.25rem 3rem #16262233}.menu-location,.quality-control{border-bottom:1px solid #d5d0c4;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;padding-bottom:.8rem;display:flex}.menu-location span,.quality-control>span{color:#65706b;font-size:.72rem}.quality-control>div{background:#ece8de;border-radius:4px;padding:.15rem;display:inline-flex}.quality-control button{color:#5a6560;cursor:pointer;background:0 0;border-radius:3px;padding:.32rem .45rem;font-size:.7rem}.quality-control button.active{color:#fffdf6;background:#294640}.menu-command{color:#273733;text-align:left;cursor:pointer;background:0 0;border-bottom:1px solid #ded9ce;align-items:center;gap:.65rem;width:100%;padding:.7rem 0;display:flex}.menu-command:last-child{border-bottom:0}.menu-command svg{width:1rem}.catalog-backdrop{z-index:50;background:#14201d66;justify-content:flex-end;display:flex;position:fixed;inset:0}.catalog-panel{width:min(31rem,100%);height:100%;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));color:#1d2a28;background:#f7f2e8;border-left:1px solid #bdb6a8;overflow-y:auto;box-shadow:-1.5rem 0 4rem #15231f2e}.catalog-panel__header{border-bottom:1px solid #c8c1b5;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.catalog-panel__header h2{font-family:var(--font-display);letter-spacing:0;margin:0;font-size:2rem}.catalog-list{display:grid}.catalog-row{color:#1d2a28;text-align:left;cursor:pointer;background:0 0;border-bottom:1px solid #d3cdc1;grid-template-columns:3rem minmax(0,1fr) 1.25rem;align-items:center;gap:.75rem;width:100%;min-height:5rem;padding:.85rem 0;display:grid}.catalog-row:hover{color:#a83f32}.catalog-row__number{color:#a83f32;font-family:ui-monospace,monospace;font-size:.78rem}.catalog-row b,.catalog-row small{overflow-wrap:anywhere;display:block}.catalog-row b{font-family:var(--font-display);font-size:1rem}.catalog-row small{color:#68716d;margin-top:.2rem;font-size:.72rem}.catalog-row svg{width:1rem}.detail-dialog{color:#1d2a28;background:#fffdf6;border:1px solid #aca597;border-radius:6px;width:min(42rem,100% - 2rem);max-height:min(46rem,100svh - 2rem);margin:auto;padding:0;overflow-y:auto;box-shadow:0 2rem 6rem #14221e57}.detail-dialog::backdrop{background:#111d1a94}.detail-dialog__close{z-index:2;float:right;margin:.8rem .8rem 0 0;position:sticky;top:.8rem}.detail-dialog__content{min-width:0;padding:3.5rem 2rem 2rem}.detail-dialog__content h2{max-width:16ch;font-family:var(--font-display);letter-spacing:0;overflow-wrap:anywhere;margin:0 0 1rem;font-size:2.5rem;line-height:1.12}.detail-lead{color:#304641;max-width:34rem;font-size:1.08rem;font-weight:700}.detail-tags{color:#64706b;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0;padding:0;font-size:.72rem;list-style:none;display:flex}.detail-tags li+li:before{content:"/";color:#b3ada1;margin-right:.65rem}.detail-qr{background:#fff;border:1px solid #c8c2b7;width:min(100%,24rem);margin:1.5rem auto;padding:.75rem}.detail-qr img{aspect-ratio:1;width:100%}.detail-qr figcaption{color:#58645f;text-align:center;margin-top:.5rem;font-size:.72rem}.text-link,.detail-contact{color:#9f382e;width:fit-content;margin-top:1rem;font-weight:800;display:block}.detail-contact{font-family:var(--font-display);overflow-wrap:anywhere;font-size:1.65rem}.mode-bar{color:#fffdf6;background:#223c38;justify-content:center;align-items:center;gap:.75rem;min-height:3.5rem;padding:.75rem 1rem;display:flex}.mode-bar svg{width:1rem}.mode-bar span{font-size:.78rem}.mode-bar button{color:#f2c45a;cursor:pointer;background:0 0;padding:0;font-weight:800}.experience-root:has([data-experience-mode="2d"]){height:auto;min-height:0;overflow:visible}body[data-experience-mode="3d"] .skip-link{display:none}@media (width<=46rem){.experience-hud{align-items:flex-start}.hud-actions{flex-wrap:wrap;justify-content:flex-end;max-width:15rem}.icon-button{width:2.6rem;height:2.6rem}.entry-gate{left:max(1rem, env(safe-area-inset-left));right:max(1rem, env(safe-area-inset-right));bottom:max(1.5rem, calc(env(safe-area-inset-bottom) + 1rem))}.entry-gate h1{font-size:3.25rem}.entry-gate>span{max-width:22rem;font-size:.95rem}.detail-dialog__content{padding:3.3rem 1.15rem 1.5rem}.detail-dialog__content h2{font-size:2rem}.detail-contact{font-size:1.25rem}.location-mark{bottom:max(1rem, env(safe-area-inset-bottom))}}@media (width<=25rem){.experience-brand{font-size:1rem}.hud-actions{gap:.3rem}.icon-button{width:2.35rem;height:2.35rem}}@media (prefers-reduced-motion:reduce){.checking-sun{animation:none}}@media (forced-colors:active){.icon-button,.entry-command,.experience-menu,.catalog-panel,.detail-dialog{border:1px solid canvastext}}
