*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--teal:#0fa878;--teal-dark:#0c8a63;--teal-glow:#0fa8781f;--bg:#f7f5f0;--surface:#fff;--dark:#0b0d11;--border:#00000012;--border2:#00000021;--text:#0f1117;--muted:#6b7280;--muted2:#9ca3af;--sans:var(--font-dm-sans,"DM Sans", system-ui, sans-serif);--serif:var(--font-playfair,"Playfair Display", Georgia, serif)}nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:.5px solid var(--border);z-index:100;background:#f7f5f0e6;justify-content:space-between;align-items:center;height:64px;padding:0 48px;display:flex;position:sticky;top:0}.nav-logo{align-items:center;gap:9px;text-decoration:none;display:flex}.logo-grid{grid-template-columns:1fr 1fr;gap:3px;width:26px;height:26px;display:grid}.logo-grid span{border-radius:3px;display:block}.logo-grid span:first-child{background:#0fa878}.logo-grid span:nth-child(2),.logo-grid span:nth-child(3){background:#0c8a63}.logo-grid span:nth-child(4){background:#085041}.logo-name{color:var(--text);letter-spacing:-.02em;font-size:16px;font-weight:500}.nav-back{color:var(--muted);align-items:center;gap:6px;font-size:13px;text-decoration:none;transition:color .15s;display:flex}.nav-back:hover{color:var(--text)}.demo-main{grid-template-columns:340px 1fr;align-items:start;gap:32px;max-width:1100px;margin:0 auto;padding:48px 32px 80px;display:grid}.info-col{position:sticky;top:88px}.info-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--teal);align-items:center;gap:6px;margin-bottom:16px;font-size:11px;font-weight:500;animation:.5s cubic-bezier(.22,1,.36,1) .1s both fadeUp;display:inline-flex}.info-tag-dot{background:var(--teal);border-radius:50%;width:6px;height:6px;animation:2s infinite demoPulse}@keyframes demoPulse{0%,to{opacity:1}50%{opacity:.3}}.info-title{font-family:var(--serif);color:var(--text);letter-spacing:-.03em;margin-bottom:12px;font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.1;animation:.6s cubic-bezier(.22,1,.36,1) .15s both fadeUp}.info-title em{color:var(--teal);font-style:italic}.info-sub{color:var(--muted);letter-spacing:-.01em;margin-bottom:28px;font-size:14px;font-weight:300;line-height:1.7;animation:.6s cubic-bezier(.22,1,.36,1) .2s both fadeUp}.expect-list{flex-direction:column;gap:12px;margin-bottom:28px;animation:.6s cubic-bezier(.22,1,.36,1) .25s both fadeUp;display:flex}.expect-item{align-items:flex-start;gap:12px;display:flex}.expect-icon{background:var(--teal-glow);border:.5px solid #0fa87833;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:flex}.expect-text{padding-top:4px}.expect-title{color:var(--text);letter-spacing:-.01em;font-size:13px;font-weight:500}.expect-desc{color:var(--muted);letter-spacing:-.01em;margin-top:2px;font-size:12px}.social-proof{background:var(--dark);border-radius:14px;padding:20px;animation:.6s cubic-bezier(.22,1,.36,1) .3s both fadeUp}.proof-quote{color:#fff9;letter-spacing:-.01em;margin-bottom:14px;font-size:13px;font-style:italic;line-height:1.65}.proof-author{align-items:center;gap:10px;display:flex}.proof-avatar{color:#fff;background:linear-gradient(135deg,#0fa878,#085041);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:500;display:flex}.proof-name{color:#ffffffb3;font-size:12px;font-weight:500}.proof-role{color:#ffffff4d;font-size:11px}.proof-stars{color:#f59e0b;letter-spacing:1px;margin-left:auto;font-size:12px}.booking-col{animation:.5s cubic-bezier(.22,1,.36,1) .1s both fadeUp}.booking-card{background:var(--surface);border:.5px solid var(--border);border-radius:20px;overflow:hidden}.booking-steps{background:var(--bg);border-bottom:.5px solid var(--border);display:flex}.booking-step{color:var(--muted2);font-size:12px;font-weight:400;font-family:var(--sans);letter-spacing:-.01em;border-right:.5px solid var(--border);cursor:default;flex:1;justify-content:center;align-items:center;gap:8px;padding:14px 16px;transition:all .2s;display:flex}.booking-step:last-child{border-right:none}.booking-step.active{color:var(--text);background:var(--surface);font-weight:500}.booking-step.done{color:var(--teal-dark)}.step-num{border:1.5px solid var(--border2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:500;transition:all .2s;display:flex}.booking-step.active .step-num{border-color:var(--text);color:var(--text)}.booking-step.done .step-num{background:var(--teal);border-color:var(--teal);color:#fff;font-size:9px}.step-panel{display:none}.step-panel.active{animation:.3s cubic-bezier(.22,1,.36,1) both demoPanelIn;display:block}@keyframes demoPanelIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.calendar-section{padding:24px 28px}.cal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.cal-month{letter-spacing:-.02em;font-size:15px;font-weight:500}.cal-nav{gap:6px;display:flex}.cal-nav-btn{border:.5px solid var(--border2);cursor:pointer;width:28px;height:28px;color:var(--muted);background:0 0;border-radius:7px;justify-content:center;align-items:center;font-size:12px;transition:all .15s;display:flex}.cal-nav-btn:hover{background:var(--bg);color:var(--text)}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-day-label{color:var(--muted2);text-align:center;text-transform:uppercase;letter-spacing:.04em;padding:4px 0;font-size:10px;font-weight:500}.cal-day{aspect-ratio:1;cursor:pointer;color:var(--text);border-radius:8px;justify-content:center;align-items:center;font-size:13px;transition:all .15s;display:flex;position:relative}.cal-day:hover:not(.disabled):not(.other-month){background:var(--bg)}.cal-day.available:not(.disabled):not(.other-month){font-weight:500}.cal-day.available:after{content:"";background:var(--teal);opacity:.6;border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.cal-day.selected{font-weight:500;background:var(--teal)!important;color:#fff!important}.cal-day.selected:after{background:#ffffff80}.cal-day.today{border:1.5px solid var(--teal);color:var(--teal);font-weight:500}.cal-day.today.selected{color:#fff}.cal-day.disabled{color:var(--muted2);cursor:default;opacity:.4}.cal-day.other-month{color:var(--muted2);opacity:.3;cursor:default}.time-section{padding:0 28px 24px;animation:.25s cubic-bezier(.22,1,.36,1) both demoPanelIn}.time-header{color:var(--muted);letter-spacing:-.01em;margin-bottom:12px;font-size:12px;font-weight:500}.time-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.time-slot{border:.5px solid var(--border2);text-align:center;cursor:pointer;color:var(--text);background:var(--surface);letter-spacing:-.01em;border-radius:8px;padding:10px 8px;font-size:13px;font-weight:400;transition:all .15s}.time-slot:hover{border-color:var(--teal);background:var(--teal-glow);color:var(--teal-dark)}.time-slot.selected{background:var(--teal);border-color:var(--teal);color:#fff;font-weight:500}.time-slot.unavailable{opacity:.3;cursor:not-allowed;text-decoration:line-through}.step1-next{background:var(--teal);color:#fff;width:calc(100% - 56px);font-size:14px;font-weight:500;font-family:var(--sans);cursor:pointer;letter-spacing:-.01em;border:none;border-radius:9px;justify-content:center;align-items:center;gap:8px;margin:0 28px 24px;padding:12px;transition:all .2s;display:flex}.step1-next:hover{background:var(--teal-dark);transform:translateY(-1px);box-shadow:0 6px 20px #0fa8784d}.step1-next:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.selected-slot{background:var(--teal-glow);color:var(--teal-dark);border:.5px solid #0fa87833;border-radius:8px;align-items:center;gap:8px;margin:0 28px 16px;padding:10px 14px;font-size:13px;font-weight:500;display:none}.selected-slot.show{display:flex}.form-section{padding:24px 28px}.form-group{margin-bottom:16px}.form-label{color:var(--muted);letter-spacing:-.01em;margin-bottom:6px;font-size:12px;font-weight:500;display:block}.form-input{border:.5px solid var(--border2);width:100%;font-size:14px;font-family:var(--sans);color:var(--text);background:var(--surface);letter-spacing:-.01em;border-radius:8px;outline:none;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-glow)}.form-input::placeholder{color:var(--muted2)}select.form-input{cursor:pointer}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.booking-summary-mini{background:var(--bg);border:.5px solid var(--border);border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.bsm-icon{font-size:18px}.bsm-text{color:var(--text);font-size:13px;font-weight:500}.bsm-sub{color:var(--muted);margin-top:2px;font-size:11px}.bsm-edit{color:var(--teal);cursor:pointer;font-size:11px;font-family:var(--sans);background:0 0;border:none;margin-left:auto;font-weight:500}.step2-btns{gap:10px;margin-top:8px;display:flex}.btn-back{color:var(--muted);border:.5px solid var(--border2);font-size:14px;font-family:var(--sans);cursor:pointer;letter-spacing:-.01em;background:0 0;border-radius:9px;padding:12px 20px;transition:all .15s}.btn-back:hover{color:var(--text);background:var(--bg)}.btn-submit{background:var(--teal);color:#fff;font-size:14px;font-weight:500;font-family:var(--sans);cursor:pointer;letter-spacing:-.01em;border:none;border-radius:9px;flex:1;padding:12px;transition:all .2s}.btn-submit:hover{background:var(--teal-dark);transform:translateY(-1px);box-shadow:0 6px 20px #0fa8784d}.confirm-section{text-align:center;padding:48px 28px}.confirm-icon{background:var(--teal-glow);border:.5px solid #0fa8784d;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;animation:.5s cubic-bezier(.34,1.56,.64,1) both demoPopIn;display:flex}@keyframes demoPopIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.confirm-icon svg{width:28px;height:28px;stroke:var(--teal);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.confirm-title{font-family:var(--serif);letter-spacing:-.03em;margin-bottom:8px;font-size:28px;font-weight:500}.confirm-sub{color:var(--muted);max-width:360px;margin-bottom:28px;margin-left:auto;margin-right:auto;font-size:14px;font-weight:300;line-height:1.6}.confirm-details{background:var(--bg);text-align:left;border:.5px solid var(--border);border-radius:12px;margin-bottom:24px;padding:20px}.confirm-row{justify-content:space-between;margin-bottom:8px;font-size:13px;display:flex}.confirm-row:last-child{margin-bottom:0}.confirm-key{color:var(--muted)}.confirm-val{font-weight:500}.confirm-actions{flex-direction:column;gap:8px;display:flex}.btn-confirm-primary{background:var(--teal);color:#fff;font-size:14px;font-weight:500;font-family:var(--sans);cursor:pointer;text-align:center;letter-spacing:-.01em;border:none;border-radius:9px;padding:12px;text-decoration:none;transition:all .2s;display:block}.btn-confirm-primary:hover{background:var(--teal-dark)}.btn-confirm-ghost{color:var(--muted);border:.5px solid var(--border2);font-size:14px;font-family:var(--sans);cursor:pointer;letter-spacing:-.01em;text-align:center;background:0 0;border-radius:9px;width:100%;padding:12px;text-decoration:none;transition:all .15s;display:block}.btn-confirm-ghost:hover{color:var(--text);background:var(--bg)}.cal-add-btns{gap:8px;margin-top:12px;display:flex}.cal-add-btn{border:.5px solid var(--border2);color:var(--muted);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--sans);letter-spacing:-.01em;background:0 0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px;transition:all .15s;display:flex}.cal-add-btn:hover{background:var(--bg);color:var(--text);border-color:var(--border2)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}