.entrance{position:relative;height:100dvh;width:100%;overflow:clip;background:var(--shadow);--scene-w:min(100vw,177.78dvh);--scene-h:calc(var(--scene-w) * 0.5625)}@media (max-aspect-ratio:1/1){.entrance{--scene-w:min(140vw,177.78dvh)}}@media (max-aspect-ratio:4/5){.entrance{--scene-w:min(180vw,177.78dvh)}}.entrance-poster,.entrance-stage{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}.entrance[data-phase=poster] .entrance-poster{opacity:1}.entrance[data-phase=live] .entrance-stage{opacity:1;transition-duration:.4s}.entrance[data-phase=live] .entrance-poster,.entrance[data-phase=live][data-opening=still] .entrance-stage{transition-duration:.9s}@media (prefers-reduced-motion:reduce){.entrance[data-phase=waiting] .entrance-poster{opacity:1}}.entrance-loading{position:absolute;left:50%;top:50%;display:flex;gap:14px;transform:translate(-50%,-50%);opacity:0;pointer-events:none;transition:opacity .3s ease}.entrance[data-phase=waiting] .entrance-loading{opacity:1;transition-delay:.35s}.entrance-loading span{width:12px;height:12px;border-radius:999px;background:var(--bulb);box-shadow:0 0 12px var(--bulb);opacity:.25;animation:entrance-loading .7s ease-in-out infinite alternate}.entrance-hud{position:absolute;inset:0;pointer-events:none;transition:opacity .5s ease}.entrance-hud[data-leaving]{opacity:0}.entrance-controls{visibility:hidden}.entrance[data-opening] .entrance-controls{visibility:visible}.entrance-enter-slot{position:absolute;left:50%;top:calc(50% + var(--scene-h) * .16);width:max(168px,calc(var(--scene-h) * .267));height:max(62px,calc(var(--scene-h) * .102));transform:translate(-50%,-50%)}.entrance[data-opening=still] .entrance-enter-slot{animation:entrance-pop .7s cubic-bezier(.34,1.56,.64,1) .35s both}.entrance[data-opening=fly] .entrance-enter-slot{animation:entrance-pop .7s cubic-bezier(.34,1.56,.64,1) 2.6s both}.entrance[data-opening=still] .entrance-tagline{animation:entrance-rise .6s ease .15s both}.entrance[data-opening=fly] .entrance-tagline{animation:entrance-rise .8s ease 3s both}.entrance-enter{position:absolute;inset:0;pointer-events:auto;border:0;padding:0;background:none;cursor:pointer;border-radius:999px;outline:none}.entrance-enter:focus-visible{box-shadow:0 0 0 4px var(--shadow),0 0 0 8px var(--bulb)}.entrance-enter-face{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:999px;border:4px solid var(--wood-dark);background:linear-gradient(var(--enamel-light),var(--enamel) 70%);box-shadow:0 10px 0 var(--enamel-700),0 22px 26px -6px var(--shadow);color:var(--paper);font-family:var(--font-marquee);letter-spacing:.04em;font-size:max(30px,calc(var(--scene-h) * .053));text-shadow:3px 3px 0 var(--enamel-700);transform-origin:50% 100%;animation:entrance-breathe 1.1s ease-in-out 1.8s infinite alternate;transition:transform 90ms ease-out,box-shadow 90ms ease-out,filter .15s ease}.entrance-enter-face:after{content:"";position:absolute;inset:6px;border-radius:999px;border:3px dotted var(--bulb);opacity:.85}.entrance-enter-gloss{position:absolute;left:12%;right:12%;top:9%;height:30%;border-radius:999px;background:var(--paper);opacity:.28}.entrance-enter-bulbs{position:absolute;left:18%;right:18%;top:-22px;height:12px;background:radial-gradient(circle,var(--bulb) 38%,transparent 44%) 0 0 /26px 12px repeat-x;filter:drop-shadow(0 0 6px var(--bulb));animation:entrance-twinkle 1.2s steps(2) infinite}.entrance-enter:focus-visible .entrance-enter-face,.entrance-enter:hover .entrance-enter-face{filter:drop-shadow(0 0 12px var(--bulb)) brightness(1.08);transform:translateY(-5px);animation-play-state:paused}.entrance-enter:active .entrance-enter-face{transform:translateY(8px);box-shadow:0 2px 0 var(--enamel-700),0 8px 14px -6px var(--shadow)}.entrance-tagline{position:absolute;left:50%;top:calc(50% + var(--scene-h) * .356);width:min(94vw,calc(var(--scene-h) * .93));transform:translate(-50%,-50%) rotate(-1.2deg);padding:.55em 1.2em;border:4px solid var(--wood-dark);border-radius:10px;background-color:var(--wood);background-image:var(--wood-grain),linear-gradient(var(--wood),var(--wood-dark));box-shadow:0 14px 20px -8px var(--shadow);color:var(--stripe);font-weight:700;font-size:max(14px,calc(var(--scene-h) * .03));line-height:1.25;text-align:center;text-shadow:0 2px 0 var(--wood-dark)}html[data-look-family=own] .entrance-enter-bulbs,html[data-look-family=own] .entrance-enter-face:after,html[data-look-family=own] .entrance-enter-gloss{display:none}html[data-look-family=own] .entrance[data-opening] .entrance-tagline{animation-name:entrance-rise-flat}html[data-look=after-hours] .entrance-enter-face{border:2px solid var(--neon);background:color-mix(in srgb,var(--shadow) 82%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--neon) 35%,transparent),inset 0 0 10px color-mix(in srgb,var(--neon) 18%,transparent);color:var(--paper);font-family:var(--font-neon);letter-spacing:.06em;text-shadow:0 0 3px var(--neon),0 0 9px color-mix(in srgb,var(--neon) 60%,transparent);animation:look-neon-buzz 6s steps(1) 2s infinite}html[data-look=after-hours] .entrance-enter:focus-visible .entrance-enter-face,html[data-look=after-hours] .entrance-enter:hover .entrance-enter-face{filter:none;box-shadow:0 0 28px var(--neon),inset 0 0 22px color-mix(in srgb,var(--neon) 45%,transparent)}html[data-look=after-hours] .entrance-tagline{transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--paper) 22%,transparent);border-radius:4px;background:color-mix(in srgb,var(--shadow) 78%,transparent);box-shadow:none;color:var(--paper);font-family:var(--font-marquee);font-weight:400;letter-spacing:.12em;text-transform:uppercase;text-shadow:none}html[data-look=arcade] .entrance-enter-face{border:3px solid var(--paper);border-radius:4px;background:var(--enamel);box-shadow:6px 6px 0 var(--neon-cool);font-family:var(--font-marquee);font-size:max(38px,calc(var(--scene-h) * .066));letter-spacing:.12em;text-transform:uppercase;text-shadow:3px 3px 0 var(--enamel-700);animation:look-blink 1.1s steps(1) 2s infinite}html[data-look=arcade] .entrance-enter:focus-visible .entrance-enter-face,html[data-look=arcade] .entrance-enter:hover .entrance-enter-face{filter:none;box-shadow:8px 8px 0 var(--neon)}html[data-look=arcade] .entrance-enter:active .entrance-enter-face{transform:translate(6px,6px);box-shadow:0 0 0 var(--neon-cool)}html[data-look=arcade] .entrance-tagline{transform:translate(-50%,-50%);border:2px solid var(--neon-cool);border-radius:0;background:color-mix(in srgb,var(--shadow) 88%,transparent);box-shadow:4px 4px 0 color-mix(in srgb,var(--neon-cool) 45%,transparent);color:var(--neon-cool);font-family:var(--font-marquee);font-size:max(15px,calc(var(--scene-h) * .03));font-weight:400;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 8px color-mix(in srgb,var(--neon-cool) 60%,transparent)}html[data-look-family=own] :is(.gate-balloon,.gate-cloud){display:none}html[data-look=after-hours] .gate-sign-board,html[data-look=arcade] .gate-sign-board{fill:var(--shadow)}html[data-look=after-hours] :is(.gate-sign-paper,.gate-sign-shadow),html[data-look=arcade] :is(.gate-sign-paper,.gate-sign-shadow){display:none}html[data-look=after-hours] .gate-sign-text{font-family:var(--font-neon);fill:var(--paper);stroke:var(--neon);stroke-width:2.5px;paint-order:stroke;filter:drop-shadow(0 0 3px var(--neon)) drop-shadow(0 0 7px color-mix(in srgb,var(--neon) 55%,transparent))}html[data-look=arcade] .gate-sign-text{fill:var(--bulb);filter:drop-shadow(0 0 4px var(--bulb))}@keyframes entrance-rise-flat{0%{opacity:0;transform:translate(-50%,-20%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes look-neon-buzz{0%,to{opacity:1}61%{opacity:.55}62%{opacity:1}64%{opacity:.7}65%{opacity:1}}@keyframes look-blink{0%,to{color:var(--paper)}50%{color:var(--bulb)}}@keyframes entrance-pop{0%{transform:translate(-50%,-50%) scale(0)}60%{transform:translate(-50%,-50%) scale(1.12)}80%{transform:translate(-50%,-50%) scale(.95)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes entrance-rise{0%{opacity:0;transform:translate(-50%,-20%) rotate(-1.2deg)}to{opacity:1;transform:translate(-50%,-50%) rotate(-1.2deg)}}@keyframes entrance-loading{to{opacity:1}}@keyframes entrance-breathe{0%{transform:scale(1.03,.97)}to{transform:scale(.985,1.02)}}@keyframes entrance-twinkle{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.entrance *,.entrance-enter-slot{animation:none!important;transition:none!important}}