.booking-hero{max-width:1100px;margin:0 auto;padding:0 20px}.booking-hero .hero-text{text-align:center;margin-bottom:40px}.booking-hero .hero-text h1{font-size:34px;color:var(--ink-900);margin-bottom:12px;letter-spacing:-.5px;font-weight:800}.booking-hero .hero-text p{font-size:16px;color:var(--ink-500);max-width:600px;margin:0 auto}.booking-hero .grid-container{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:start}.booking-hero .interactive-widget{background:var(--surface);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.08);border:1px solid var(--border-default);overflow:hidden;position:relative;height:540px}.booking-hero .widget-header{padding:20px 24px;border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:center;background:var(--surface);z-index:10;position:relative;height:82px}.booking-hero .widget-header h2{font-size:18px;color:var(--ink-900);font-weight:700}.booking-hero .widget-header p{font-size:13px;color:var(--ink-500);display:flex;align-items:center;gap:6px;margin-top:4px;font-weight:500}.booking-hero .back-btn{background:transparent;border:none;color:var(--ink-500);font-size:14px;cursor:pointer;font-weight:600;display:none;transition:.2s;margin-bottom:4px}.booking-hero .back-btn:hover{color:var(--primary)}.booking-hero .back-btn.visible{display:inline-block}.booking-hero .step-panel{position:absolute;top:82px;left:0;width:100%;height:calc(100% - 82px);background:var(--surface);transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease;opacity:0;pointer-events:none;transform:translateX(20px)}.booking-hero .step-panel.active{opacity:1;pointer-events:all;transform:translateX(0);z-index:5}.booking-hero .step-panel.previous{transform:translateX(-20px)}.booking-hero .calendar-body{display:flex;height:100%}.booking-hero .date-picker{flex:1.2;padding:24px;border-right:1px solid var(--border-default)}.booking-hero .month-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-weight:600;color:var(--ink-900);font-size:15px}.booking-hero .nav-btn{background:none;border:1px solid var(--border-default);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--primary);transition:.2s}.booking-hero .nav-btn:hover:not(:disabled){background:var(--brand-50);border-color:var(--brand-400)}.booking-hero .nav-btn:disabled{color:var(--ink-300);cursor:not-allowed}.booking-hero .days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;text-align:center}.booking-hero .day-name{font-size:11px;font-weight:600;color:var(--ink-500);text-transform:uppercase;margin-bottom:8px}.booking-hero .date-btn{background:var(--brand-50);border:1px solid transparent;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--primary);cursor:pointer;margin:0 auto;transition:.2s;position:relative}.booking-hero .date-btn:hover:not(.disabled){background:var(--primary);color:var(--surface);transform:scale(1.05)}.booking-hero .date-btn.active{background:var(--primary);color:var(--surface);box-shadow:0 4px 10px rgba(109,40,217,.3)}.booking-hero .date-btn.disabled{background:transparent;color:var(--ink-300);cursor:not-allowed;text-decoration:line-through}.booking-hero .date-btn.empty{background:transparent;pointer-events:none}.booking-hero .today-highlight{font-weight:800;color:var(--ink-900);border:1px solid var(--brand-400)}.booking-hero .today-highlight:after{content:"";position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background-color:var(--accent-500);border-radius:50%}.booking-hero .today-highlight.active:after{background-color:var(--surface)}.booking-hero .time-picker{flex:0.8;padding:24px;background:#f8fafc;display:flex;flex-direction:column}.booking-hero .time-header{font-size:14px;font-weight:600;color:var(--ink-900);margin-bottom:16px}.booking-hero .timezone-text{font-size:11px;color:var(--ink-500);font-weight:500;display:block;margin-top:4px}.booking-hero .time-slots{display:flex;flex-direction:column;gap:10px;flex-grow:1;overflow-y:auto;padding-right:5px}.booking-hero .time-slots.disabled-slots{opacity:.5;pointer-events:none}.booking-hero .time-btn{background:var(--surface);border:1px solid var(--brand-400);color:var(--primary);padding:12px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:.2s;text-align:center}.booking-hero .time-btn:hover{border-color:var(--primary);background:var(--brand-50)}.booking-hero .time-btn.selected{background:var(--ink-900);border-color:var(--ink-900);color:var(--surface)}.booking-hero .time-btn.full{color:var(--ink-500);cursor:not-allowed;opacity:.75;display:flex;flex-direction:column;align-items:center;gap:2px}.booking-hero .time-btn.full,.booking-hero .time-btn.full:hover{background:#f1f5f9;border-color:var(--border-default)}.booking-hero .time-btn .slot-full-label{font-size:10px;font-weight:500;color:var(--ink-300)}.booking-hero .time-slots.loading-slots{opacity:.6;pointer-events:none}.booking-hero .empty-state-msg{text-align:center;color:var(--ink-500);font-size:13px;font-weight:500;padding:40px 10px;background:var(--surface);border:1px dashed var(--border-default);border-radius:8px;margin-top:10px}.booking-hero .btn-next{width:100%;background:var(--primary);color:white;border:none;padding:14px;border-radius:6px;font-weight:600;margin-top:15px;cursor:pointer;font-size:15px;transition:.2s}.booking-hero .btn-next:hover{background:var(--brand-600)}.booking-hero .form-container{padding:24px;display:flex;flex-direction:column;height:100%}.booking-hero .selection-summary{background:var(--brand-50);padding:14px 16px;border-radius:4px;margin-bottom:20px}.booking-hero .selection-summary h4{font-size:13px;color:var(--ink-900);margin-bottom:4px;font-weight:700}.booking-hero .selection-summary p{font-size:13px;color:var(--primary);display:flex;align-items:center;gap:6px;font-weight:500}.booking-hero .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:14px}.booking-hero .form-group{margin-bottom:14px;position:relative}.booking-hero .form-group label{display:block;font-size:12px;font-weight:600;color:var(--ink-900);margin-bottom:6px}.booking-hero .form-control{width:100%;padding:10px 14px;border:1px solid var(--border-default);border-radius:6px;font-size:14px;background:#f8fafc;transition:.2s;color:var(--ink-900)}.booking-hero .form-control:focus{outline:none;border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--brand-50)}.booking-hero .phone-wrapper{display:flex;align-items:center;border:1px solid var(--border-default);border-radius:6px;background:#f8fafc;transition:.2s;overflow:hidden}.booking-hero .phone-wrapper:focus-within{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--brand-50)}.booking-hero .phone-wrapper.error{border-color:#ef4444;background:var(--surface);box-shadow:0 0 0 3px #fee2e2}.booking-hero .phone-prefix{padding:10px 12px;background:#f1f5f9;color:var(--ink-500);font-size:14px;font-weight:600;border-right:1px solid var(--border-default);user-select:none}.booking-hero .phone-wrapper input{border:none;box-shadow:none;background:transparent;padding:10px 14px;width:100%;font-size:14px;color:var(--ink-900)}.booking-hero .phone-wrapper input:focus{outline:none}.booking-hero .form-control.error{border-color:#ef4444;background:var(--surface);box-shadow:0 0 0 3px #fee2e2}.booking-hero .error-msg{color:#ef4444;font-size:11px;font-weight:500;margin-top:4px}.booking-hero .btn-submit{width:100%;background:var(--primary);color:white;border:none;padding:14px;border-radius:6px;font-weight:600;cursor:pointer;font-size:15px;margin-top:10px;transition:.2s}.booking-hero .btn-submit:hover:not(:disabled){background:var(--brand-600)}.booking-hero .btn-submit:disabled{opacity:.9;cursor:not-allowed}.booking-hero .btn-submit.is-loading{display:inline-flex;align-items:center;justify-content:center;gap:10px}.booking-hero .btn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top:2px solid var(--surface);border-radius:50%;animation:booking-btn-spin .7s linear infinite;flex-shrink:0}@keyframes booking-btn-spin{to{transform:rotate(1turn)}}.booking-hero .submit-error{color:#ef4444;font-size:12px;margin-top:8px;text-align:center}.booking-hero .success-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:40px;text-align:center}.booking-hero .success-icon{width:64px;height:64px;background:#d1fae5;color:#10b981;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.booking-hero .success-container h3{font-size:22px;color:var(--ink-900);margin-bottom:8px;font-weight:700}.booking-hero .success-container>p{font-size:14px;color:var(--ink-500);margin-bottom:24px}.booking-hero .success-details{background:#f8fafc;border:1px solid var(--border-default);border-radius:8px;padding:16px;width:100%;text-align:left}.booking-hero .success-details div{font-size:13px;margin-bottom:8px;color:var(--ink-900);border-bottom:1px solid var(--border-default);padding-bottom:8px}.booking-hero .success-details div:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.booking-hero .success-details strong{color:var(--ink-500);display:inline-block;width:70px;font-weight:600}.booking-hero .value-prop-section{padding-top:20px}.booking-hero .value-prop-section h3{font-size:18px;color:var(--ink-900);margin-bottom:24px;font-weight:700}.booking-hero .checklist{list-style:none;margin-bottom:40px;padding:0}.booking-hero .checklist li{font-size:14px;margin-bottom:16px;display:flex;align-items:flex-start;gap:12px;color:var(--ink-900)}.booking-hero .check-icon{color:var(--primary);flex-shrink:0;margin-top:2px}.booking-hero .testimonial-card{background:var(--brand-50);padding:24px;border-radius:0 8px 8px 0}.booking-hero .quote-icon{font-size:32px;color:var(--accent-500);margin-bottom:4px;font-weight:900;line-height:1}.booking-hero .quote-text{font-size:14px;font-style:italic;color:var(--ink-900);margin-bottom:16px;font-weight:500}.booking-hero .author{display:flex;align-items:center;gap:12px}.booking-hero .author-avatar{width:40px;height:40px;background:var(--brand-400);border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-weight:700}.booking-hero .author-info h4{font-size:13px;color:var(--ink-900);font-weight:700}.booking-hero .author-info p{font-size:11px;color:var(--ink-500);font-weight:500}@media (max-width:850px){.booking-hero .grid-container{grid-template-columns:1fr;gap:40px}.booking-hero .calendar-body{flex-direction:column;height:auto}.booking-hero .date-picker{border-right:none;border-bottom:1px solid var(--border-default)}.booking-hero .interactive-widget{height:auto;min-height:500px}.booking-hero .step-panel{position:relative;top:0;height:auto;opacity:1;pointer-events:all;transform:none;display:none}.booking-hero .step-panel.active{display:block}.booking-hero .form-container{padding-bottom:40px}.booking-hero .form-row{grid-template-columns:1fr}}