/* 05-spinners-navigation-buttons.css - Sparks, global spinner, top/bottom navigation and primary booking buttons.
   Generated from styles/bundle.min.css. Keep numeric load order. */
#headerBookBtnText,#headerBookBtnText span{font-weight:900!important;letter-spacing:.05em}
.spark{position:absolute;width:var(--spark-size,.35rem);height:var(--spark-size,.35rem);pointer-events:none;opacity:0;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='m12 1.8 2.68 6.5 7.01.56-5.34 4.58 1.62 6.82L12 16.89l-5.97 3.37 1.62-6.82-5.34-4.58 7.01-.56z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:50%;z-index:3;filter:drop-shadow(0 0 .55rem rgba(255,255,255,1)) drop-shadow(0 0 1.15rem rgba(255,255,255,.8));will-change:transform,opacity;transform:translate(-50%,-50%) translateZ(0);animation:sparkle var(--spark-duration,.5s) cubic-bezier(.18,.72,.24,1) var(--spark-delay,0s) forwards}
@keyframes sparkle{0%{transform:translate(-50%,-50%) translateZ(0) scale(.38) rotate(var(--spark-rotate,0deg));opacity:0}14%{opacity:1}72%{transform:translate(-50%,-50%) translate3d(var(--x-mid,0),var(--y-mid,0),0) scale(1.1) rotate(calc(var(--spark-rotate, 0deg) + 130deg));opacity:.95}to{transform:translate(-50%,-50%) translate3d(var(--x-end,0),var(--y-end,0),0) scale(.9) rotate(calc(var(--spark-rotate, 0deg) + 205deg));opacity:0}}
.footer{position:relative}
#footerEmberLayer{position:absolute;left:50%;bottom:-1.45rem;width:min(32rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);height:min(16rem,34vh);pointer-events:none;overflow:visible;transform:translateX(-50%);z-index:1;opacity:0;transition:opacity .35s ease}
#footerEmberLayer.footer-ember-layer--active{opacity:1}
html.modal-is-open #footerEmberLayer{opacity:0!important}
.footer-ember{position:absolute;left:50%;bottom:-.9rem;width:var(--ember-size,.32rem);height:var(--ember-size,.32rem);border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(circle at 32% 32%,rgba(255,253,245,.98) 0 24%,rgba(255,229,166,.96) 42%,rgba(255,174,78,.76) 66%,hsla(0,0%,100%,0) 100%);box-shadow:0 0 .55rem rgba(255,226,155,.72),0 0 1.2rem rgba(255,176,91,.52),0 0 2rem rgba(255,139,62,.28);transform:translateZ(0) scale(1);will-change:transform,opacity;animation:footerEmberRise var(--ember-duration,7.2s) linear var(--ember-delay,0s) forwards}
@keyframes hypnoticPulse{0%{text-shadow:0 0 .3rem hsla(0,0%,100%,.2);opacity:.6}50%{text-shadow:0 0 1.3rem hsla(0,0%,100%,.9),0 0 .6rem hsla(0,0%,100%,.7);opacity:1;color:#fff}to{text-shadow:0 0 .3rem hsla(0,0%,100%,.2);opacity:.6}}
.slots-nav{display:none;height:0;min-height:0;max-height:0;margin:0;padding:0;width:100%;border-radius:0;background:transparent;border:none;box-shadow:none;overflow:hidden}
#slotsDayDisplay{display:none;height:0;min-height:0;margin:0;padding:0}
.month-switch-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(18,12,8,.45);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);z-index:35000;opacity:0;pointer-events:none;transition:opacity .18s linear}
.month-switch-overlay--active{display:flex;opacity:1;pointer-events:auto}
.month-switch-overlay__progress{width:min(84vw,36rem);display:flex;flex-direction:column;align-items:center;gap:.7rem}
.month-switch-overlay__ring-wrap{width:11.3rem;height:11.3rem;position:relative;display:grid;place-items:center}
.month-switch-overlay__svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.month-switch-overlay__track{fill:transparent;stroke:hsla(0,0%,100%,.2);stroke-width:12}
.global-spinner{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:99999;display:none;flex-direction:row;align-items:center;justify-content:center}
.global-spinner__content{width:min(calc(100% - 2.4rem),29rem);padding:1.2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.42rem}
.global-spinner__ring-wrap{width:11.3rem;height:11.3rem;position:relative;display:grid;place-items:center}
.global-spinner__progress{width:min(100%,22rem);height:.52rem;border-radius:999px;background:hsla(0,0%,100%,.18);overflow:hidden;position:relative;box-shadow:inset 0 .2rem .4rem rgba(0,0,0,.2)}
.global-spinner__progress-fill{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,hsla(0,0%,100%,.35),hsla(0,0%,100%,.9) 55%,hsla(0,0%,100%,.4));box-shadow:0 0 14px hsla(0,0%,100%,.38);transition:width .74s cubic-bezier(.22,1,.36,1)}
.global-spinner__error{display:none;width:100%;max-width:24rem;padding:0;border-radius:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-align:center}
.global-spinner__error--visible{display:flex;flex-direction:column;align-items:center;gap:.44rem}
.global-spinner__error-code{margin:0;color:#fff;font-family:Lato,sans-serif;font-size:clamp(1rem,3vw,1.16rem);font-weight:900;letter-spacing:.1rem;line-height:1.18;text-transform:uppercase;text-shadow:0 0 12px hsla(0,0%,100%,.46),0 0 28px hsla(0,0%,100%,.18)}
.global-spinner__error-text{margin:0;color:hsla(0,0%,100%,.96);font-family:Lato,sans-serif;font-size:clamp(.92rem,2.8vw,1rem);font-weight:900;line-height:1.42;text-shadow:0 0 12px hsla(0,0%,100%,.22)}
.global-spinner__svg{position:absolute;top:0;left:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.global-spinner__track{fill:transparent;stroke:hsla(0,0%,100%,.2);stroke-width:12}
.global-spinner__glow{fill:none;stroke:#fff;stroke-width:12;stroke-linecap:round;stroke-dasharray:302;stroke-dashoffset:302;transition:stroke-dashoffset .74s cubic-bezier(.22,1,.36,1);filter:drop-shadow(0 0 14px rgba(255,255,255,.45));animation:globalSpinnerGlow 2.2s ease-in-out infinite}
.global-spinner--indeterminate .global-spinner__glow{stroke-dashoffset:76;animation:globalSpinnerGlow 1.5s ease-in-out infinite}
.global-spinner--hypnotic .global-spinner__glow{stroke:#fff;animation:globalSpinnerHypnotic 1.05s ease-in-out infinite;filter:drop-shadow(0 0 14px rgba(255,255,255,.72)) drop-shadow(0 0 28px rgba(255,255,255,.44))}
.global-spinner--hypnotic .global-spinner__ring-wrap{transform-origin:50% 50%;animation:globalSpinnerRingHypnoticZoom 1.85s cubic-bezier(.42,0,.2,1) infinite}
.global-spinner--hypnotic .global-spinner__progress-fill{animation:globalSpinnerProgressHypnotic 1.45s ease-in-out infinite;box-shadow:0 0 12px hsla(0,0%,100%,.6),0 0 26px hsla(0,0%,100%,.32)}
#globalSpinner.global-spinner--hypnotic .global-spinner__glow{stroke:#fff;transition:stroke-dashoffset .74s cubic-bezier(.22,1,.36,1);transform-origin:60px 60px;animation:globalSpinnerHypnoticSlowPulse 1.85s ease-in-out infinite;filter:drop-shadow(0 0 16px rgba(255,255,255,.78)) drop-shadow(0 0 34px rgba(255,255,255,.52)) drop-shadow(0 0 54px rgba(255,255,255,.24))}
.global-spinner--hypnotic .global-spinner__value{color:#fff;text-shadow:0 0 12px hsla(0,0%,100%,.82),0 0 26px hsla(0,0%,100%,.4);animation:globalSpinnerValueHypnotic 1.1s ease-in-out infinite}
.global-spinner__value{position:relative;z-index:2;color:#fff;font-family:Lato,sans-serif;font-weight:900;font-size:clamp(1rem,2.8vw,1.16rem);letter-spacing:.08em;line-height:1.04;min-width:4ch;text-align:center;white-space:nowrap;text-shadow:0 0 12px hsla(0,0%,100%,.45);user-select:none;display:block}
.global-spinner__value:empty{display:none!important}
#globalSpinner .global-spinner__ring-wrap{overflow:visible}
#globalSpinner .global-spinner__value{position:absolute;inset:0;display:grid;place-items:center;width:auto;min-width:0;margin:0;font-family:Lato,sans-serif!important;font-size:clamp(2rem,7vw,2.8rem);letter-spacing:.04em;font-variant-numeric:tabular-nums lining-nums;pointer-events:none}
.global-spinner__meta{display:none;margin:-.72rem 0 0;color:hsla(0,0%,100%,.92);font-family:Lato,sans-serif;font-size:clamp(.92rem,2.8vw,1.02rem);font-weight:700;letter-spacing:.04em;line-height:1.2;text-align:center;font-variant-numeric:tabular-nums lining-nums;text-shadow:0 0 10px hsla(0,0%,100%,.22);user-select:none}
.global-spinner__meta:empty{display:none!important}
#globalSpinner.global-spinner--error .global-spinner__meta{display:none!important}
@keyframes globalSpinnerHypnotic{0%,to{transform:scale(1);filter:drop-shadow(0 0 12px rgba(255,255,255,.58)) drop-shadow(0 0 20px rgba(255,255,255,.32))}50%{transform:scale(1.045);filter:drop-shadow(0 0 22px rgba(255,255,255,.96)) drop-shadow(0 0 38px rgba(255,255,255,.5))}}
@keyframes globalSpinnerHypnoticSlowPulse{0%,to{transform:scale(.9);stroke-width:10;filter:drop-shadow(0 0 10px rgba(255,255,255,.52)) drop-shadow(0 0 20px rgba(255,255,255,.32)) drop-shadow(0 0 32px rgba(255,255,255,.16))}50%{transform:scale(1.16);stroke-width:13.8;filter:drop-shadow(0 0 22px rgba(255,255,255,.96)) drop-shadow(0 0 46px rgba(255,255,255,.64)) drop-shadow(0 0 70px rgba(255,255,255,.32))}}
@keyframes globalSpinnerRingHypnoticZoom{0%,to{transform:scale(.92)}50%{transform:scale(1.24)}}
@keyframes globalSpinnerProgressHypnotic{0%,to{filter:drop-shadow(0 0 .2rem rgba(255,255,255,.18));opacity:.85}50%{filter:drop-shadow(0 0 .55rem rgba(255,255,255,.72));opacity:1}}
@keyframes globalSpinnerValueHypnotic{0%,to{opacity:.88;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
@keyframes globalSpinnerGlow{0%,to{filter:drop-shadow(0 0 10px rgba(212,184,154,.45));transform:scale(1)}50%{filter:drop-shadow(0 0 30px rgba(255,255,255,1));transform:scale(1.05)}}
@keyframes dotJump{40%{transform:translateY(-.6rem)}}
.fade-in{opacity:1;transform:translateY(0)}
.book-btn-preloader--error .book-btn-preloader__text{color:#ff2f45;font-size:1.08rem;font-weight:900;text-transform:uppercase;letter-spacing:2.2px;position:absolute;left:50%;bottom:-1.72rem;transform:translateX(-50%);width:max-content;white-space:nowrap;text-shadow:0 0 14px rgba(255,47,69,.6),0 0 28px rgba(255,47,69,.28);animation:slotNotFoundPulse .9s ease-in-out infinite;pointer-events:none}
@keyframes slotNotFoundPulse{0%,to{opacity:.62;transform:translateX(-50%) scale(1);filter:drop-shadow(0 0 0 rgba(255,76,76,0))}50%{opacity:1;transform:translateX(-50%) scale(1.12);filter:drop-shadow(0 0 12px rgba(255,47,69,.6))}}
@keyframes hypnoticCirclePulse{0%{filter:drop-shadow(0 0 10px rgba(212,184,154,.5));stroke:#d4b89a;transform:scale(1)}50%{filter:drop-shadow(0 0 30px rgba(255,255,255,1));stroke:#fff;transform:scale(1.05)}to{filter:drop-shadow(0 0 10px rgba(212,184,154,.5));stroke:#d4b89a;transform:scale(1)}}
.book-btn-preloader--hypnotic .book-btn-preloader__progress{stroke-dashoffset:0!important;animation:hypnoticCirclePulse 1.5s ease-in-out infinite!important}
.book-btn-preloader--error .book-btn-preloader__progress{stroke:#ff4c4c!important;filter:drop-shadow(0 0 15px rgba(255,76,76,.8))!important;animation:none!important;stroke-dashoffset:0!important}
.book-btn-preloader--error .book-btn-preloader__circle{stroke:rgba(255,51,51,.15);animation:pulseError 1.5s ease-in-out infinite}
@keyframes pulseError{0%,to{stroke-opacity:.5;stroke-width:3}50%{stroke-opacity:1;stroke-width:4}}
.book-btn-preloader--offline .book-btn-preloader__text{color:#ffe14f;font-size:1.02rem;font-weight:900;text-transform:uppercase;letter-spacing:1.9px;position:absolute;left:50%;bottom:-1.72rem;transform:translateX(-50%);width:max-content;white-space:nowrap;text-shadow:0 0 10px rgba(255,225,79,.75),0 0 26px rgba(255,204,0,.55);animation:offlineTextHypnotic 1.15s ease-in-out infinite;pointer-events:none}
@keyframes offlineTextHypnotic{0%,to{opacity:.7;transform:translateX(-50%) scale(1);filter:drop-shadow(0 0 0 rgba(255,204,0,0))}50%{opacity:1;transform:translateX(-50%) scale(1.08);filter:drop-shadow(0 0 12px rgba(255,221,102,.95))}}
.book-btn-preloader--offline .book-btn-preloader__progress{stroke:#ffd23f!important;stroke-dashoffset:0!important;filter:drop-shadow(0 0 12px rgba(255,214,85,.9)) drop-shadow(0 0 26px rgba(255,194,51,.6))!important;animation:offlineCircleHypnotic 1.1s ease-in-out infinite!important}
.book-btn-preloader--offline .book-btn-preloader__circle{stroke:rgba(255,214,85,.26);animation:offlineTrackPulse 1.3s ease-in-out infinite}
@keyframes offlineCircleHypnotic{0%,to{stroke-width:12;transform:scale(1);opacity:.85}50%{stroke-width:13.4;transform:scale(1.045);opacity:1}}
@keyframes offlineTrackPulse{0%,to{stroke-opacity:.45;stroke-width:11}50%{stroke-opacity:.95;stroke-width:12.8}}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
input[type=number]{appearance:textfield;-moz-appearance:textfield}
@keyframes playfulJump{0%,30%,to{transform:scale(1)}15%{transform:scale(1.02)}}
.top-bar{position:fixed;top:0;left:0;width:100%;height:7.5rem;background:hsla(0,0%,100%,.01);backdrop-filter:blur(1.3rem);-webkit-backdrop-filter:blur(1.3rem);z-index:10000;display:flex;justify-content:space-between;align-items:flex-start;padding:.9rem 1.3rem 0;border-bottom:1px solid var(--glass-border);opacity:1;transform:translateY(0);pointer-events:none;transition:opacity .25s ease,transform .25s ease;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.72),transparent);mask-image:linear-gradient(180deg,rgba(0,0,0,.72),transparent)}
.top-bar--visible{opacity:1;transform:translateY(0);transition:opacity 2.5s ease-in-out,transform 2.5s ease-in-out}
.bottom-bar{--bottom-bar-height-min:8.6rem;--bottom-bar-height-max:10.8rem;position:fixed;bottom:0;left:0;width:100%;height:var(--bottom-bar-height-min);background:hsla(0,0%,100%,.01);backdrop-filter:blur(1.3rem);-webkit-backdrop-filter:blur(1.3rem);z-index:10000;display:flex;justify-content:space-between;align-items:flex-end;padding:0 1.3rem .9rem;border-top:1px solid var(--glass-border);opacity:1;transform:translateY(0);pointer-events:none;transition:opacity .25s ease,transform .25s ease;-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.85),transparent);mask-image:linear-gradient(0deg,rgba(0,0,0,.85),transparent);animation:bottomBarBreathHeight 4.8s ease-in-out infinite;transform-origin:bottom center}
@keyframes bottomBarBreathHeight{0%,to{height:var(--bottom-bar-height-min)}50%{height:var(--bottom-bar-height-max)}}
.bottom-bar--visible{opacity:1;transform:translateY(0);transition:opacity 2.5s ease-in-out,transform 2.5s ease-in-out}
.book-btn-preloader{display:grid;place-items:center;width:11.3rem;height:11.3rem;position:relative;margin:0 auto;filter:blur(0);transition:opacity .12s ease-out,transform .12s ease-out,filter .12s ease-out;will-change:opacity,transform,filter}
.book-btn-preloader__text{font-size:1rem;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);text-align:center;line-height:1.3;z-index:2;position:relative}
.book-btn-preloader:not(#headerBookBtnPreloader) .book-btn-preloader__text{display:none!important;opacity:0!important;visibility:hidden!important}
#headerBookBtnPreloader{overflow:visible;width:clamp(6.8rem,15vw,8.4rem);height:clamp(6.8rem,15vw,8.4rem)}
#headerBookBtnPreloader .book-btn-preloader__text{position:absolute;top:calc(100% + .38rem);left:50%;transform:translateX(-50%);width:min(94vw,var(--calendar-main-max-width));max-width:min(94vw,var(--calendar-main-max-width));font-size:clamp(.86rem,2vw,1rem);font-weight:800;line-height:1.2;letter-spacing:.01em;white-space:normal;pointer-events:none;--header-preloader-fg:#fff;--header-preloader-glow-soft:hsla(0,0%,100%,.24);--header-preloader-glow-strong:hsla(0,0%,100%,.5);color:var(--header-preloader-fg);text-shadow:0 0 .28rem var(--header-preloader-glow-soft)}
#headerBookBtnPreloader .book-btn-preloader__text--loading{animation:headerPreloaderTypingGlow 1.05s ease-in-out infinite}
#headerBookBtnPreloader .book-btn-preloader__text--service,#headerBookBtnPreloader.book-btn-preloader--error .book-btn-preloader__text,#headerBookBtnPreloader.book-btn-preloader--offline .book-btn-preloader__text{top:auto;bottom:calc(100% + .38rem);width:min(94vw,var(--calendar-main-max-width));max-width:min(94vw,var(--calendar-main-max-width));white-space:normal}
@keyframes headerPreloaderTypingGlow{0%,to{text-shadow:0 0 .22rem var(--header-preloader-glow-soft),0 0 .58rem hsla(0,0%,100%,.1);opacity:.9}50%{text-shadow:0 0 .48rem var(--header-preloader-glow-strong),0 0 1rem var(--header-preloader-glow-soft);opacity:1}}
.book-btn-preloader__text--loading{font-size:1rem;font-weight:400;letter-spacing:.01em;line-height:1.7;color:hsla(0,0%,100%,.96);text-shadow:0 0 .28rem hsla(0,0%,100%,.22);animation:preloaderLoadingHypnoticGlow 1.08s ease-in-out infinite}
@keyframes preloaderLoadingHypnoticGlow{0%,to{text-shadow:0 0 .2rem hsla(0,0%,100%,.18);opacity:.88}50%{text-shadow:0 0 .5rem hsla(0,0%,100%,.48),0 0 .22rem hsla(0,0%,100%,.35);opacity:1}}
.book-btn-preloader__svg{position:absolute;top:0;left:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.book-btn-preloader__circle{fill:transparent;stroke:hsla(0,0%,100%,.2);stroke-width:12;backdrop-filter:blur(.6rem);-webkit-backdrop-filter:blur(.6rem)}
.book-btn-preloader__progress{fill:none;stroke:#fff;stroke-width:12;stroke-linecap:round;stroke-dasharray:302;stroke-dashoffset:302;filter:drop-shadow(0 0 10px rgba(255,255,255,.42));animation:fillProgress 19s ease-out forwards,hypnoticCircleGlow 3s ease-in-out infinite}
@keyframes fillProgress{0%{stroke-dashoffset:302}to{stroke-dashoffset:0}}
@keyframes hypnoticCircleGlow{0%,to{filter:drop-shadow(0 0 2px rgba(255,255,255,.1))}50%{filter:drop-shadow(0 0 1rem rgba(255,255,255,.9))}}
