.gl-wrap{position:fixed;left:0;right:0;top:0;height:100vh;height:100lvh;z-index:-1;pointer-events:none}.gl-wrap canvas{display:block;width:100%;height:100%}.no-webgl .gl-wrap,.no-js .gl-wrap{display:none}.has-gate body:before{z-index:-2}.has-gate,.has-gate body{scroll-behavior:auto}.gate .act{position:relative}.gate .act-tall{height:calc(100vh + var(--travel, 3) * var(--step, 100svh));height:calc(100lvh + var(--travel, 3) * var(--step, 100svh))}.gate #afisha{--travel: 1}.gate #marshrut,.gate #vagon,.gate #parohod,.gate #tseppelin{--travel: 6}.gate #koloda{--travel: 5}.gate #vidy{--travel: 4}.gate .pin{position:sticky;top:0;height:100svh;display:flex;align-items:flex-end;padding-bottom:clamp(1.6rem,6vh,3.4rem);pointer-events:none}.gate .pin a,.gate .pin button{pointer-events:auto}.gate .pin-inner{max-width:none;display:flex;justify-content:center;width:100%}.gate .pin-block{max-width:40rem;text-align:center;opacity:var(--live, 1)}.gate .pin-narrow .pin-block{max-width:28rem}.gate .pin-kicker{margin:0 0 .4rem;font-family:var(--display);font-size:.82rem;line-height:1.2;letter-spacing:.2em;color:var(--brass)}.gate .pin-now{margin:0 0 .7rem;font-family:var(--display);font-size:clamp(1.45rem,4.2vw,2.15rem);line-height:1.1;letter-spacing:.03em;color:var(--parchment);min-height:1.1em}.gate .pin-hint{margin:.55rem 0 0;font-size:.8rem;line-height:1.45;color:var(--faint)}.gate .pin-kicker,.gate .pin-now,.gate .pin-hint{text-shadow:0 2px 14px rgba(6,6,14,.92),0 1px 3px rgba(6,6,14,1)}.gate .act-afisha{text-align:center}.gate .pin-hero{align-items:center;justify-content:center;padding:clamp(6.5rem,14vh,9.5rem) 0 clamp(2.8rem,7vh,4rem)}.gate-hero-inner{display:flex;flex-direction:column;align-items:center;transform:translateY(calc(var(--hero, 0) * -2vh));will-change:transform}.gate-mark{margin:0;transform:translateY(-5vh) scale(.84);transform-origin:50% 50%}.gate-mark img{width:min(560px,48vw);max-height:38vh;object-fit:contain;margin:0 auto;height:auto;filter:drop-shadow(0 18px 44px rgba(0,0,0,.66))}.gate-rest{--rest-from: .74;margin-top:-5vh}.gate-rest>:not(.btn-row):not(.fine){opacity:calc(var(--rest-from) + (1 - var(--rest-from)) * var(--hero, 0) * 2.5);will-change:opacity}.no-webgl .gate-rest>:not(.btn-row):not(.fine),.no-js .gate-rest>:not(.btn-row):not(.fine){opacity:1}.gate-rest .fine{color:var(--text);text-shadow:0 0 3px rgba(6,6,14,1),0 0 8px rgba(6,6,14,.95),0 0 18px rgba(6,6,14,.85)}.gate-rest .btn:not(.btn-primary){background:#100f1abd;color:#d4b86a;text-shadow:0 1px 2px rgba(0,0,0,.85);box-shadow:0 3px 9px #00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.gate-rest .btn:not(.btn-primary):hover{background:#2c261ed1}.gate-sub{font-family:var(--display);font-size:clamp(1.05rem,2.6vw,1.45rem);line-height:1.2;letter-spacing:.16em;color:var(--parchment);margin:0 0 1.1rem;text-shadow:0 2px 16px rgba(6,6,14,.9)}.gate-hook{max-width:36rem;margin:0 auto 1.5rem;font-size:clamp(1rem,1.6vw,1.12rem);line-height:1.55;text-shadow:0 1px 14px rgba(6,6,14,.95)}.gate .scroll-hint{position:fixed;z-index:25;left:0;right:0;bottom:calc(clamp(.6rem,2.2vh,1.4rem) + env(safe-area-inset-bottom,0px));pointer-events:none;display:flex;justify-content:center;color:var(--brass);transition:opacity .6s ease,visibility .6s}.gate-moved .gate .scroll-hint{opacity:0;visibility:hidden}.gate .scroll-hint svg{display:block;width:2.4rem;height:auto;overflow:visible;filter:drop-shadow(0 1px 3px rgba(6,6,14,.95)) drop-shadow(0 0 8px rgba(6,6,14,.8));animation:gate-hint-in .9s ease 1.2s both,gate-hint 2.4s ease-in-out 2.1s infinite}.gate .scroll-hint path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gate .scroll-hint path+path{opacity:.5}.gate .to-top{position:fixed;z-index:25;right:max(1rem,env(safe-area-inset-right,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--brass);border-radius:50%;background:#1a1a2ed9;color:var(--brass);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease,visibility .35s}.to-top-on .gate .to-top{opacity:1;visibility:visible;transform:none}.gate .to-top:hover{background:#c0a86029}.gate .to-top:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.gate .to-top path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media(prefers-reduced-motion:reduce){.gate .to-top{transition:none;transform:none}}@keyframes gate-hint-in{0%{opacity:0}to{opacity:1}}@keyframes gate-hint{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.no-js .gate .scroll-hint{display:none}.gate .act-plate{padding:clamp(3rem,10vh,7rem) 0}.gate .act-plate .btn-row{justify-content:flex-start}.gate .cards{gap:1.9rem 1.6rem;margin:2.2rem 0 0;perspective:1100px}.gate .card{justify-content:center;min-height:13rem;padding:2rem 1.5rem 1.7rem;text-align:center}.gate .card h3{margin:0 0 .6rem;font-size:clamp(1.25rem,2.6vw,1.6rem);line-height:1.15}.gate .card p{margin:0;font-size:1.02rem;line-height:1.45}.gate .tilt{transform-origin:50% 0%;transition:transform .45s cubic-bezier(.22,.61,.36,1),box-shadow .45s ease;will-change:transform}.gate .tilt:hover{box-shadow:inset 0 1px #fffaeb8c,inset 0 -1px #00000040,0 18px 34px #00000080}.gate-route{display:flex;justify-content:center;gap:.75rem;list-style:none;padding:0;margin:0 0 .9rem}.gate-route li{margin:0;line-height:0}.gate-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.no-webgl .gate-route,.no-js .gate-route{flex-wrap:wrap;gap:.5rem 1.4rem}.no-webgl .gate-route li,.no-js .gate-route li{display:flex;align-items:center;gap:.5rem;line-height:1.4}.no-webgl .gate-vh,.no-js .gate-vh{position:static;width:auto;height:auto;overflow:visible;clip-path:none;color:var(--parchment)}.gate-route .route-glyph{display:inline-block;width:1.6rem;height:1.6rem;background:var(--faint);transition:background-color .4s ease,opacity .4s ease,transform .4s ease;opacity:.55}.gate-route li.is-past .route-glyph{background:var(--muted);opacity:.8}.gate-route li.is-here .route-glyph{background:var(--brass);opacity:1;transform:scale(1.18)}.gate-names{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.no-webgl .gate-names,.no-js .gate-names{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1.1rem;margin:1.2rem 0 0;padding:0;list-style:none;font-size:.92rem;color:var(--muted)}.no-webgl .pin-live,.no-js .pin-live{display:none}.no-webgl .gate .act-tall,.no-js .gate .act-tall{height:auto}.no-webgl .gate .pin,.no-js .gate .pin{position:static;height:auto;padding:clamp(2.5rem,8vh,5rem) 0}.js .gate .reveal{opacity:0;transform:translateY(1.4rem);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)}.js .gate .reveal.is-in{opacity:1;transform:none}.js .gate .cards .reveal:nth-child(2){transition-delay:.07s}.js .gate .cards .reveal:nth-child(3){transition-delay:.14s}.js .gate .cards .reveal:nth-child(4){transition-delay:.05s}.js .gate .cards .reveal:nth-child(5){transition-delay:.12s}.js .gate .cards .reveal:nth-child(6){transition-delay:.19s}.viewer{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:5vmin;background:radial-gradient(60% 55% at 50% 42%,#2e2e548c,#0a0a16f0 62%,#06060efa);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);perspective:1400px;perspective-origin:50% 45%;animation:viewer-in .3s ease both;touch-action:none;overscroll-behavior:contain}.viewer[hidden]{display:none}@keyframes viewer-in{0%{opacity:0}to{opacity:1}}.viewer-figure{margin:0;transform-style:preserve-3d;animation:card-in .44s cubic-bezier(.22,.61,.36,1) both}@keyframes card-in{0%{opacity:0;transform:translateY(1.6rem) scale(.94)}to{opacity:1;transform:none}}.viewer-stand{display:inline-block;padding:0;border:1px solid rgba(192,168,96,.45);border-radius:3px;box-shadow:0 40px 70px #000000b8,0 8px 26px #0000008c;transform-style:preserve-3d;will-change:transform;backface-visibility:hidden}.viewer-stand img{display:block;max-width:min(100%,34rem);max-height:74vh;width:auto;border-radius:2px}.viewer-close{position:absolute;top:1rem;right:1.2rem;width:2.6rem;height:2.6rem;font-family:var(--display);font-size:1.6rem;line-height:1;color:var(--brass);background:#0a0a16b3;border:1px solid var(--border);border-radius:50%;cursor:pointer}.viewer-close:hover{border-color:var(--brass)}@media(pointer:coarse){.viewer{backdrop-filter:none;-webkit-backdrop-filter:none;background:radial-gradient(70% 55% at 50% 42%,#28284aeb,#080812fb 62%,#05050c)}.viewer-close{top:max(.8rem,env(safe-area-inset-top));right:.8rem;width:3rem;height:3rem;font-size:1.9rem;background:#0a0a16eb}}.gl-pointer{cursor:pointer}@media(pointer:coarse){.has-gate .site-head{backdrop-filter:none;-webkit-backdrop-filter:none;background:#1a1a2ef2}}@media(max-width:640px){.gate .act-tall{--step: 62svh}.gate-mark img{width:min(560px,74vw);max-height:30vh}.gate .pin-hero{padding-top:clamp(4rem,9vh,6rem)}}@media(max-height:720px){.gate .pin-hint{display:none}}@media(prefers-reduced-motion:reduce){.js .gate .reveal{opacity:1;transform:none;transition:none}.gate .tilt{transition:none;transform:none!important}.gate .scroll-hint svg{animation:none}.viewer,.viewer-figure{animation:none}.viewer-stand{transition:none;transform:none!important}}
