.multistep-booking{z-index:1300;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.multistep-booking--mobile{padding:clamp(1rem,5vw,1.5rem)}.multistep-booking__backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#000000d9;position:absolute;inset:0}.multistep-booking__panel{z-index:1;background:#0a0a0af2;border:1px solid #ffffff1a;flex-direction:column;width:min(680px,100vw - clamp(2rem,8vw,4rem));max-height:calc(100vh - clamp(3rem,10vw,6rem));padding:clamp(2rem,5vw,2.8rem);display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px #00000080}.multistep-booking--mobile .multistep-booking__panel{width:100%;max-height:calc(100vh - clamp(2rem,10vw,3rem));padding:clamp(1.5rem,5vw,2rem)}.multistep-booking__close{color:#ffffff80;letter-spacing:.3rem;text-transform:uppercase;cursor:pointer;z-index:10;background:0 0;border:0;font-size:.65rem;transition:color .25s;position:absolute;top:clamp(1rem,3vw,1.5rem);right:clamp(1rem,3vw,1.5rem)}.multistep-booking__close:hover,.multistep-booking__close:focus-visible{color:#ffffffe6}.multistep-booking__progress{margin-bottom:clamp(1.5rem,4vw,2rem);padding-top:.5rem}.multistep-booking__progress-bar{background:#ffffff1a;border-radius:2px;width:100%;height:2px;margin-bottom:.75rem;overflow:hidden}.multistep-booking__progress-fill{background:linear-gradient(90deg,#bf092fcc,#bf092f);height:100%;transition:width .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 12px #bf092f99}.multistep-booking__progress-text{letter-spacing:.2rem;text-transform:uppercase;color:#ffffff73;font-size:.7rem;display:block}.multistep-booking__content{flex:1;margin-right:-.5rem;padding-right:clamp(.5rem,2vw,1rem);overflow:hidden auto}.multistep-booking__content::-webkit-scrollbar{width:6px}.multistep-booking__content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.multistep-booking__content::-webkit-scrollbar-thumb{background:#bf092f66;border-radius:3px}.multistep-booking__content::-webkit-scrollbar-thumb:hover{background:#bf092f99}.multistep-booking__step{flex-direction:column;gap:clamp(1.2rem,3vw,1.8rem);display:flex}.multistep-booking__heading{letter-spacing:.45rem;text-transform:uppercase;color:#fffffff2;margin:0;font-size:clamp(1.4rem,3.5vw,1.8rem)}.multistep-booking__subtitle{letter-spacing:.08rem;color:#dcdcdca6;margin:-.5rem 0 0;font-size:.9rem;line-height:1.6}.multistep-booking__options{flex-direction:column;gap:.75rem;display:flex}.multistep-booking__options--grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.multistep-booking__options--large{gap:1rem}.multistep-booking__options--inline{flex-flow:wrap;gap:.75rem}@media (max-width:768px){.multistep-booking__options--grid{grid-template-columns:repeat(2,1fr)}}.multistep-booking__option{text-align:left;cursor:pointer;background:#14141499;border:1px solid #ffffff1f;flex-direction:column;justify-content:center;align-items:flex-start;gap:.35rem;padding:clamp(1rem,3vw,1.3rem) clamp(1.2rem,3vw,1.5rem);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.multistep-booking__option:before{content:"";opacity:0;background:linear-gradient(135deg,#bf092f1a,#bf092f0d);transition:opacity .3s;position:absolute;inset:0}.multistep-booking__option:hover:before{opacity:1}.multistep-booking__option:hover{border-color:#bf092f66;transform:translateY(-2px);box-shadow:0 8px 16px #0000004d}.multistep-booking__option--selected{background:#bf092f26;border-color:#bf092fcc;box-shadow:0 0 20px #bf092f40}.multistep-booking__option--selected:before{opacity:1}.multistep-booking__option--compact{padding:clamp(.85rem,2.5vw,1.1rem) clamp(1rem,2.5vw,1.2rem)}.multistep-booking__option--large{padding:clamp(1.5rem,4vw,2rem)}.multistep-booking__option--small{flex:1;min-width:max-content;padding:.65rem 1rem}.multistep-booking__option-label{z-index:1;letter-spacing:.12rem;text-transform:uppercase;color:#ffffffe6;font-size:clamp(.9rem,2.2vw,1rem);transition:color .3s;position:relative}.multistep-booking__option--selected .multistep-booking__option-label{color:#fff}.multistep-booking__option-desc{z-index:1;letter-spacing:.05rem;color:#c8c8c899;font-size:.78rem;line-height:1.5;position:relative}.multistep-booking__section{flex-direction:column;gap:1rem;display:flex}.multistep-booking__section+.multistep-booking__section{margin-top:1.5rem}.multistep-booking__section-label{letter-spacing:.25rem;text-transform:uppercase;color:#ffffffb3;margin:0;font-size:.8rem}.multistep-booking__upload{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.multistep-booking__upload-label{letter-spacing:.12rem;text-transform:uppercase;color:#ffffffa6;font-size:.8rem}.multistep-booking__upload-area{cursor:pointer;background:#14141480;border:2px dashed #fff3;justify-content:center;align-items:center;min-height:180px;padding:2rem;transition:all .3s;display:flex;position:relative}.multistep-booking__upload-area:hover{background:#bf092f0d;border-color:#bf092f80}.multistep-booking__upload-input{opacity:0;cursor:pointer;position:absolute;inset:0}.multistep-booking__upload-prompt{flex-direction:column;align-items:center;gap:.75rem;display:flex}.multistep-booking__upload-icon{color:#bf092fcc;font-size:2.5rem;line-height:1}.multistep-booking__upload-text{letter-spacing:.12rem;text-transform:uppercase;color:#ffffffb3;font-size:.85rem}.multistep-booking__upload-preview{flex-direction:column;align-items:center;gap:.75rem;display:flex;position:relative}.multistep-booking__upload-image{border:1px solid #ffffff26;max-width:100%;max-height:300px;box-shadow:0 8px 24px #0006}.multistep-booking__upload-remove{color:#ffffffd9;letter-spacing:.15rem;text-transform:uppercase;cursor:pointer;background:#bf092f33;border:1px solid #bf092f80;padding:.5rem 1.2rem;font-size:.75rem;transition:all .25s}.multistep-booking__upload-remove:hover{color:#fff;background:#bf092f66;border-color:#bf092fcc}.multistep-booking__form{flex-direction:column;gap:1.25rem;display:flex}.multistep-booking__field{flex-direction:column;gap:.5rem;display:flex}.multistep-booking__label{letter-spacing:.15rem;text-transform:uppercase;color:#ffffffb3;font-size:.75rem}.multistep-booking__input,.multistep-booking__textarea{color:#ffffffe6;letter-spacing:.05rem;background:#14141499;border:1px solid #ffffff26;width:100%;padding:.85rem 1rem;font-family:inherit;font-size:.9rem;transition:all .25s}.multistep-booking__input::placeholder,.multistep-booking__textarea::placeholder{color:#ffffff59}.multistep-booking__input:focus,.multistep-booking__textarea:focus{border-color:#bf092f99;outline:none;box-shadow:0 0 12px #bf092f33}.multistep-booking__textarea{resize:vertical;min-height:100px}.multistep-booking__navigation{border-top:1px solid #ffffff14;justify-content:space-between;gap:1rem;margin-top:clamp(1.5rem,4vw,2rem);padding-top:clamp(1.25rem,3vw,1.75rem);display:flex}.multistep-booking__nav-button{color:#ffffffd9;letter-spacing:.25rem;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:.85rem clamp(1.5rem,4vw,2.5rem);font-size:.75rem;transition:all .3s;position:relative;overflow:hidden}.multistep-booking__nav-button:before{content:"";border:1px solid #fff3;transition:all .3s;position:absolute;inset:0}.multistep-booking__nav-button:after{content:"";border:1px solid #ffffff14;transition:all .3s;position:absolute;inset:3px}.multistep-booking__nav-button:hover:not(:disabled):before{border-color:#bf092f99}.multistep-booking__nav-button:hover:not(:disabled):after{border-color:#bf092f40}.multistep-booking__nav-button:hover:not(:disabled){color:#fff}.multistep-booking__nav-button--back{color:#fff9}.multistep-booking__nav-button--next,.multistep-booking__nav-button--submit{color:#bf092f;margin-left:auto}.multistep-booking__nav-button--next:before,.multistep-booking__nav-button--submit:before{border-color:#bf092fb3}.multistep-booking__nav-button--next:after,.multistep-booking__nav-button--submit:after{border-color:#bf092f40}.multistep-booking__nav-button--next:hover:not(:disabled):before,.multistep-booking__nav-button--submit:hover:not(:disabled):before{border-color:#bf092ff2;box-shadow:0 0 24px #bf092f4d}.multistep-booking__nav-button:disabled{opacity:.4;cursor:not-allowed}.multistep-booking__success{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem 0;display:flex}.multistep-booking__success .multistep-booking__heading{font-size:clamp(1.5rem,4vw,2rem)}.multistep-booking__success .multistep-booking__message{color:#dcdcdcbf;max-width:450px;margin:0;line-height:1.75}.multistep-booking__success .multistep-booking__button--primary{color:#bf092f;letter-spacing:.25rem;text-transform:uppercase;cursor:pointer;background:0 0;border:0;margin-top:1rem;padding:.85rem 2.5rem;font-size:.75rem;transition:all .3s;position:relative}.multistep-booking__success .multistep-booking__button--primary:before{content:"";border:1px solid #bf092fb3;transition:all .3s;position:absolute;inset:0}.multistep-booking__success .multistep-booking__button--primary:hover:before{border-color:#bf092ff2;box-shadow:0 0 24px #bf092f4d}@media (max-width:768px){.multistep-booking__heading{letter-spacing:.3rem;font-size:clamp(1.2rem,5vw,1.5rem)}.multistep-booking__option{padding:.9rem 1rem}.multistep-booking__option-label{letter-spacing:.1rem;font-size:.85rem}.multistep-booking__option-desc{font-size:.72rem}.multistep-booking__nav-button{letter-spacing:.2rem;padding:.75rem 1.25rem;font-size:.7rem}}
