.ski-booking-modal{--ski-modal-ink:#193126;--ski-modal-green:#597a38;padding:28px}
.ski-booking-modal .at-booking-modal__backdrop{background:rgb(18 31 25 / 70%);backdrop-filter:blur(9px) saturate(.8)}
.ski-booking-modal .at-booking-modal__dialog{width:min(1160px,100%);max-height:calc(100dvh - 56px);overflow-x:hidden;border:1px solid rgb(255 255 255 / 75%);border-radius:28px;background:#f8f7f2;box-shadow:0 34px 100px rgb(8 24 16 / 32%),0 2px 8px rgb(8 24 16 / 10%)}
.ski-booking-modal .at-booking-modal__close{top:18px;width:44px;height:44px;margin:18px 18px -62px auto;border-color:rgb(66 92 71 / 15%);color:var(--ski-modal-ink);box-shadow:0 10px 28px rgb(28 50 37 / 14%);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.ski-booking-modal .at-booking-modal__close:hover{transform:rotate(5deg) scale(1.04);background:#f3f7ee;box-shadow:0 13px 32px rgb(28 50 37 / 19%)}
.ski-booking-modal .cr-private-booking-modal__form{min-height:0;background:linear-gradient(180deg,#f8f8f3 0%,#f4f2ec 100%)}
.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header{position:relative;overflow:hidden;padding:30px 80px 24px 34px;border-bottom:1px solid #dfe5da;background:radial-gradient(circle at 84% -20%,rgb(141 177 105 / 20%) 0 115px,transparent 116px),linear-gradient(135deg,#fff 0%,#f2f6ed 100%)}
.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header>span{margin-bottom:8px;color:var(--ski-modal-green);font-size:11px;font-weight:900;letter-spacing:.1em}
.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header h2{max-width:520px;color:var(--ski-modal-ink);font-size:clamp(25px,2.4vw,32px);line-height:1.15;letter-spacing:-.035em}
.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header p{margin-top:9px;color:#69786e;font-size:13px}
.ski-modal-progress{position:absolute;top:34px;right:88px;display:flex;align-items:flex-start;width:310px;margin:0;padding:0;list-style:none}
.ski-modal-progress li{position:relative;display:grid;flex:1;justify-items:center;gap:6px;color:#8a968c;font-size:10px;font-weight:800}
.ski-modal-progress li:not(:last-child)::after{position:absolute;top:14px;left:calc(50% + 18px);width:calc(100% - 36px);height:2px;border-radius:99px;background:#dce3d8;content:""}
.ski-modal-progress i{z-index:1;display:grid;width:30px;height:30px;place-items:center;border:1px solid #d7dfd3;border-radius:50%;background:#fff;font-style:normal;box-shadow:0 4px 12px rgb(34 56 40 / 8%)}
.ski-modal-progress .is-active{color:#405f2c}.ski-modal-progress .is-active i{border-color:#658648;background:linear-gradient(135deg,#6f914b,#4f7333);color:#fff;box-shadow:0 6px 16px rgb(83 119 54 / 24%)}
.ski-booking-modal [data-ski-modal-journey-content]{padding:24px 28px 26px}.ski-booking-modal [data-ski-modal-journey-content] form{gap:20px!important;margin:0}
.ski-booking-modal [data-ski-modal-journey-content] .ski-trip-modes{padding:5px;border-color:#d8e1d2;border-radius:14px;background:#edf2e8}
.ski-booking-modal [data-ski-modal-journey-content] .ski-trip-modes label{min-width:118px;justify-content:center;padding:10px 18px}.ski-booking-modal [data-ski-modal-journey-content] .ski-trip-modes label.is-active{box-shadow:0 5px 15px rgb(45 68 48 / 13%)}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields{gap:18px 20px;padding:0}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields>label{gap:8px;padding:13px 14px 14px;border:1px solid #e2e4dc;border-radius:15px;background:rgb(255 255 255 / 72%);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields>label:focus-within{transform:translateY(-1px);border-color:#a9bb98;background:#fff;box-shadow:0 9px 24px rgb(48 73 51 / 8%)}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields>label:focus-within{position:relative;z-index:220}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__actions{position:relative;z-index:1}
.ski-booking-modal [data-ski-modal-journey-content] .cr-place-autocomplete__menu{z-index:230}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields input,.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields select{height:48px;border-color:#d5dbd0;border-radius:10px;background:#fff}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__datetime::after{left:26px;bottom:14px;display:grid;width:20px;height:48px;place-items:center;font-size:19px;line-height:1}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__datetime .form-control,.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__datetime input.flatpickr-input{padding-left:42px}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__actions{gap:16px;margin:2px -28px -26px;padding:16px 28px 22px;border-top-color:#dfe3da;background:rgb(255 255 255 / 62%)}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__extras summary{border-color:#d5ddd0;box-shadow:0 4px 14px rgb(37 58 40 / 5%)}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__submit{min-width:235px!important;border-radius:12px;background:linear-gradient(135deg,#d37b56,#c96743);box-shadow:0 12px 25px rgb(185 88 52 / 23%);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__submit:hover{transform:translateY(-2px);filter:brightness(1.03);box-shadow:0 16px 30px rgb(185 88 52 / 30%)}
.ski-booking-modal [data-ski-modal-step="vehicles"] footer,.ski-booking-modal [data-ski-modal-step="request"] footer{padding:0 20px 20px}.ski-booking-modal [data-ski-modal-step="vehicles"] footer button,.ski-booking-modal [data-ski-modal-step="request"] footer button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid #d6ded3;border-radius:10px;background:#fff;color:#263b2b;font-weight:800;cursor:pointer}
.ski-vehicle-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px;padding:18px 4px 4px}
.ski-vehicle-pagination button{display:grid;width:38px;height:38px;padding:0;place-items:center;border:1px solid #d8e0d4;border-radius:10px;background:#fff;color:#425347;font-size:12px;font-weight:900;box-shadow:0 3px 10px rgb(32 55 39 / 5%);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.ski-vehicle-pagination button:hover:not(:disabled){transform:translateY(-1px);border-color:#769456;background:#f5f8f1;color:#365522}
.ski-vehicle-pagination button.is-active{border-color:#5f813d;background:linear-gradient(135deg,#6f914b,#547635);color:#fff;box-shadow:0 7px 16px rgb(75 110 48 / 22%)}
.ski-vehicle-pagination button:disabled{opacity:.38;cursor:not-allowed}.ski-vehicle-pagination .material-symbols-outlined{font-size:20px}
@media(max-width:980px){.ski-modal-progress{position:static;width:min(320px,100%);margin-top:18px}.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header{padding-right:72px}}
@media(max-width:800px){.ski-booking-modal{align-items:end;padding:10px}.ski-booking-modal .at-booking-modal__dialog{height:auto;max-height:calc(100dvh - 20px);border-radius:20px}.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header{padding:22px 62px 18px 20px}.ski-booking-modal [data-ski-modal-journey-content]{padding:18px}.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields{grid-template-columns:1fr;gap:12px}.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__actions{margin:2px -18px -18px;padding:14px 18px 18px}}
@media(max-width:520px){.ski-booking-modal{padding:0}.ski-booking-modal .at-booking-modal__dialog{max-height:100dvh;border-radius:0}.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header{padding:18px 56px 16px 16px}.ski-booking-modal .cr-private-booking-modal__form>.at-booking-modal__results-header h2{font-size:22px}.ski-modal-progress{width:100%;margin-top:15px}.ski-modal-progress li span{font-size:9px}.ski-booking-modal [data-ski-modal-journey-content]{padding:14px}.ski-booking-modal [data-ski-modal-journey-content] .ski-trip-modes{display:grid;width:100%;grid-template-columns:1fr 1fr}.ski-booking-modal [data-ski-modal-journey-content] .ski-trip-modes label{min-width:0;padding-inline:10px}.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__fields>label{padding:11px}.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__datetime::after{left:23px;bottom:11px}.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__actions{display:grid;margin:0 -14px -14px;padding:13px 14px 16px}.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__extras,.ski-booking-modal [data-ski-modal-journey-content] .ski-booking__submit{width:100%!important;min-width:0!important}}
