.booking-stage{overflow:auto;place-items:start center;background:rgba(2,8,14,.48);backdrop-filter:blur(7px)}.booking-shell{width:min(1180px,92vw);margin:7vh auto 5vh;opacity:0;transform:translateY(28px);transition:.55s .18s}.booking-stage.open .booking-shell{opacity:1;transform:none}.booking-title{margin-bottom:24px}.booking-title>span{color:var(--lime);font-size:9px;font-weight:800;letter-spacing:.28em}.booking-title h2{font:600 clamp(34px,4vw,58px) 'Oswald';margin:8px 0 3px}.booking-title h2 b{color:var(--lime)}.booking-title p{margin:0;color:#aeb8c3;font-size:11px}.booking-layout{display:grid;grid-template-columns:330px 1fr;gap:28px}.date-card{border:1px solid rgba(255,255,255,.14);background:rgba(5,15,23,.76);backdrop-filter:blur(16px);border-radius:18px;padding:18px}.calendar-toolbar{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;text-align:center}.calendar-toolbar button{height:34px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);color:#fff;border-radius:8px;cursor:pointer}.calendar-toolbar div{display:flex;flex-direction:column;gap:2px}.calendar-toolbar small{font-size:8px;letter-spacing:.18em;color:var(--lime)}.calendar-toolbar strong{font-size:13px;letter-spacing:.06em}.month-strip{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:14px 0 12px;padding-bottom:2px;scroll-snap-type:x proximity}.month-strip::-webkit-scrollbar{display:none}.month-strip button{flex:0 0 auto;scroll-snap-align:center;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.035);color:#909aa4;border-radius:999px;padding:7px 10px;font-size:8px;letter-spacing:.08em;cursor:pointer}.month-strip button.active{background:var(--lime);border-color:var(--lime);color:#071000;font-weight:800}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-week span{text-align:center;font-size:7px;color:#75838e;padding:4px 0}.calendar-days button,.calendar-days span{aspect-ratio:1;border-radius:8px;display:grid;place-items:center}.calendar-days span{opacity:0}.calendar-days button{position:relative;border:1px solid transparent;background:rgba(255,255,255,.035);color:#e9eef3;font-size:10px;cursor:pointer}.calendar-days button:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--lime);bottom:4px}.calendar-days button:hover{border-color:rgba(183,255,74,.45)}.calendar-days button.selected{background:var(--lime);color:#071000;font-weight:900;box-shadow:0 0 22px rgba(183,255,74,.24)}.calendar-days button.selected:after{background:#ff9c36}.calendar-days button.today{border-color:rgba(255,255,255,.35)}.legend{display:flex;gap:12px;margin:13px 0 17px;font-size:7px;color:#aeb8c3}.legend span{display:flex;align-items:center;gap:4px}.legend b{width:6px;height:6px;border-radius:50%}.free{background:var(--lime)}.partial{background:#ffc247}.full{background:#ff744f}.price{border-top:1px solid rgba(255,255,255,.12);padding-top:15px}.price strong{font:700 31px 'Oswald';color:var(--lime)}.price>span{font-size:9px;color:#b8c2cb}.price p{font-size:9px;line-height:1.35;color:#aab5bf}.slots{padding:1px 0}.slots-head{height:24px;color:#94a1ac;font-size:9px;letter-spacing:.12em}.slots h3{color:var(--lime);font-size:8px;letter-spacing:.18em;margin:8px 0 10px}.slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:19px}.slot-grid button{min-height:62px;text-align:left;padding:12px 15px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(7,20,29,.62);color:#fff;cursor:pointer;transition:.2s}.slot-grid button:hover,.slot-grid button.active{border-color:rgba(183,255,74,.7);background:rgba(183,255,74,.1)}.slot-grid button.active{box-shadow:inset 3px 0 0 var(--lime)}.slot-grid b{display:block;font:600 14px 'Inter'}.slot-grid small{display:block;margin-top:5px;color:#8fa0ac;font-size:8px}.booking-form{margin-top:34px;padding:22px;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(5,15,23,.7);scroll-margin-top:90px}.selected-time-box{border:1px solid rgba(183,255,74,.28);background:rgba(183,255,74,.06);padding:12px 14px;border-radius:10px;margin-bottom:16px}.selected-time-box small{display:block;color:var(--lime);font-size:8px;letter-spacing:.18em;font-weight:800}.selected-time-box strong{display:block;margin-top:5px;font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-form label{display:flex;flex-direction:column;gap:6px;color:#aeb8c3;font-size:8px;letter-spacing:.12em;font-weight:700;margin-bottom:13px}.booking-form input,.booking-form select{width:100%;height:38px;border:1px solid rgba(255,255,255,.18);background:rgba(7,28,38,.7);color:#fff;border-radius:7px;padding:0 11px;outline:none}.booking-form input:focus,.booking-form select:focus{border-color:rgba(183,255,74,.65)}.check-row{flex-direction:row!important;align-items:center;gap:9px!important;letter-spacing:0!important;font-size:9px!important}.check-row input{width:16px;height:16px;accent-color:var(--lime)}.total-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);padding:12px 0;margin:4px 0 13px}.total-row span{font-size:8px;letter-spacing:.18em;color:#aeb8c3}.total-row strong{font:700 24px 'Oswald';color:var(--lime)}.confirm-booking{border:0;border-radius:9px;background:var(--lime);color:#071000;padding:13px 18px;font-weight:900;letter-spacing:.05em;cursor:pointer}.terms span{color:#b8c1c9}.step-close{display:none}.booking-close{top:28px}.gear-pop,.calendar-card{display:none!important}@media(max-width:700px){.booking-stage{display:block!important;overflow:hidden!important;padding:0!important;background:#06111d!important;backdrop-filter:none!important}.booking-stage:before{content:"";position:absolute;inset:0;background:url('booking-court.jpg.jpg') center/cover no-repeat;opacity:.16;filter:blur(1px);z-index:-1}.booking-shell{width:100%!important;height:100svh!important;margin:0!important;padding:80px 18px 18px!important;display:block!important;overflow:hidden!important}.booking-title{margin:0 0 14px!important;padding:0 56px 0 18px!important;text-align:center!important}.booking-title>span{font-size:7px!important}.booking-title h2{font-size:31px!important;line-height:1!important;margin:6px 0!important}.booking-title p{display:none!important}.booking-layout{display:block!important}.date-card{width:min(100%,420px)!important;margin:0 auto!important;padding:16px!important;border-radius:18px!important;background:rgba(4,13,22,.92)!important;box-shadow:0 18px 60px rgba(0,0,0,.3)!important}.calendar-toolbar{grid-template-columns:40px 1fr 40px!important}.calendar-toolbar button{height:38px!important;border-radius:10px!important}.calendar-toolbar strong{font-size:13px!important}.calendar-toolbar small{font-size:8px!important}.month-strip{margin:11px 0 10px!important;gap:5px!important}.month-strip button{padding:6px 9px!important;font-size:7px!important}.calendar-week,.calendar-days{gap:4px!important}.calendar-week span{font-size:7px!important;padding:3px 0!important}.calendar-days button,.calendar-days span{aspect-ratio:auto!important;height:37px!important;border-radius:8px!important}.calendar-days button{font-size:11px!important}.legend{margin:11px 0 2px!important;justify-content:center!important;font-size:6px!important}.price{display:none!important}.booking-close{position:fixed!important;left:auto!important;right:14px!important;top:calc(env(safe-area-inset-top,0px) + 14px)!important;width:52px!important;height:52px!important;min-width:52px!important;border-radius:50%!important;background:rgba(3,8,14,.94)!important;color:#fff!important;border:2px solid var(--lime)!important;font-size:31px!important;font-weight:400!important;line-height:1!important;z-index:500!important;box-shadow:0 0 0 4px rgba(183,255,74,.08),0 10px 28px rgba(0,0,0,.45)!important;backdrop-filter:blur(10px)!important}.booking-close:after{content:"ΑΡΧΙΚΗ";position:absolute;right:58px;top:50%;transform:translateY(-50%);font:800 8px 'Inter';letter-spacing:.18em;color:var(--lime);white-space:nowrap;text-shadow:0 2px 10px rgba(0,0,0,.8)}.slots.mobile-step-modal{display:block!important;position:fixed!important;inset:0!important;z-index:300!important;margin:0!important;padding:82px 16px 18px!important;background:linear-gradient(180deg,#071523 0%,#04101b 100%)!important;overflow:hidden!important;transform:translateX(105%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .38s cubic-bezier(.2,.82,.2,1),opacity .28s ease!important}.slots.mobile-step-modal.show{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}.slots.mobile-step-modal:before{content:"ΔΙΑΛΕΞΕ ΩΡΑ";display:block;text-align:center;font:600 28px 'Oswald';letter-spacing:.02em;margin-bottom:7px;color:#fff}.slots-head{height:auto!important;margin:0 48px 16px!important;text-align:center!important;font:700 11px 'Inter'!important;color:var(--lime)!important;letter-spacing:.12em!important}.slots h3{margin:10px 0 7px!important;font-size:7px!important}.slot-grid{grid-template-columns:1fr 1fr!important;gap:7px!important;margin-bottom:10px!important}.slot-grid button{min-height:52px!important;padding:8px 10px!important;border-radius:11px!important;background:rgba(255,255,255,.035)!important}.slot-grid b{font-size:11px!important}.slot-grid small{font-size:6px!important;margin-top:3px!important}.step-close{display:grid!important;place-items:center!important;position:fixed!important;left:14px!important;right:auto!important;top:calc(env(safe-area-inset-top,0px) + 18px)!important;width:44px!important;height:44px!important;border-radius:50%!important;border:1px solid rgba(183,255,74,.35)!important;background:rgba(0,0,0,.72)!important;color:#fff!important;font-size:27px!important;line-height:1!important;z-index:420!important}.booking-form.mobile-step-modal{display:block!important;position:fixed!important;inset:0!important;z-index:360!important;margin:0!important;padding:82px 18px 24px!important;border:0!important;border-radius:0!important;background:linear-gradient(180deg,#071523 0%,#04101b 100%)!important;overflow-y:auto!important;transform:translateX(105%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .38s cubic-bezier(.2,.82,.2,1),opacity .28s ease!important}.booking-form.mobile-step-modal.show{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}.booking-form.mobile-step-modal:before{content:"ΤΕΛΙΚΗ ΚΡΑΤΗΣΗ";display:block;text-align:center;font:600 27px 'Oswald';margin:0 56px 14px 42px;color:#fff}.form-grid{grid-template-columns:1fr!important}.booking-form input,.booking-form select{height:44px!important;font-size:16px!important}.booking-form label{font-size:8px!important;margin-bottom:11px!important}.confirm-booking{width:100%!important;min-height:48px!important}.selected-time-box{margin-top:0!important}.hero.booking-open .topbar,.hero.booking-open .location-badge,.hero.booking-open .corner-copy{opacity:0!important;pointer-events:none!important}}