.smartbook-intake{margin-bottom:24px}.ken-rec-btn{display:flex;align-items:center;gap:14px;width:100%;padding:18px 20px;border:2px solid rgba(212,168,85,.25);border-radius:14px;background:linear-gradient(135deg,#d4a8550f,#d4a85505);cursor:pointer;transition:border-color .3s,transform .15s,box-shadow .3s;text-align:left;position:relative;overflow:hidden;font-family:inherit}.ken-rec-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(212,168,85,.08),transparent);animation:shimmer 3s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.ken-rec-btn:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 4px 20px #d4a85526}.ken-rec-btn:active{transform:scale(.98)}.ken-rec-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ken-rec-text{flex:1}.ken-rec-title{display:block;font-size:.95rem;font-weight:600;color:#fff}.ken-rec-desc{display:block;font-size:.8rem;color:var(--text-muted);margin-top:2px}.ken-rec-arrow{color:var(--gold);font-size:.9rem}.intake-panel{margin-top:16px;padding:20px;border-radius:14px;background:var(--navy-mid);border:1px solid rgba(212,168,85,.12);animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.intake-section{margin-bottom:20px}.intake-label{font-size:.85rem;color:var(--text-muted);margin-bottom:10px;font-weight:500}.intake-optional{font-size:.75rem;opacity:.6}.session-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.session-type-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 12px 18px;border-radius:12px;border:2px solid rgba(212,168,85,.18);background:var(--navy-surface);cursor:pointer;transition:border-color .2s,background .2s,transform .15s,box-shadow .2s;font-family:inherit;color:var(--text-light);position:relative}.session-type-card:hover{border-color:#d4a85566;transform:translateY(-2px)}.session-type-card:active{transform:scale(.97)}.session-type-card.selected{border-color:var(--gold);background:#d4a85514;box-shadow:0 0 0 1px #d4a85533}.session-type-card.selected:after{content:"";position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%;background:var(--gold)}.session-type-icon{font-size:1.6rem;color:var(--text-muted);transition:color .2s;line-height:1}.session-type-card.selected .session-type-icon{color:var(--gold)}.session-type-name{font-size:.95rem;font-weight:600;color:var(--text-light);transition:color .2s}.session-type-card.selected .session-type-name{color:var(--gold)}.session-type-desc{font-size:.76rem;color:var(--text-muted);text-align:center;line-height:1.3}.couples-note{margin-top:10px;padding:8px 12px;border-radius:8px;background:#d4a8550f;border:1px solid rgba(212,168,85,.15);font-size:.78rem;color:var(--text-muted);display:none}.couples-note.visible{display:block}.couples-note strong{color:var(--gold)}.chip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media(max-width:400px){.chip-grid{grid-template-columns:repeat(2,1fr)}}.lifestyle-chip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:10px;border:2px solid rgba(212,168,85,.12);background:var(--navy-surface);cursor:pointer;transition:border-color .2s,background .2s,transform .15s;font-family:inherit;color:var(--text-light);position:relative}.lifestyle-chip i{font-size:1.1rem;color:var(--text-muted);transition:color .2s}.lifestyle-chip span{font-size:.78rem;font-weight:500}.lifestyle-chip:hover{border-color:#d4a8554d}.lifestyle-chip:active{transform:scale(.95)}.lifestyle-chip.selected{border-color:var(--gold);background:#d4a85514}.lifestyle-chip.selected i{color:var(--gold)}.intake-followup{margin-bottom:20px;padding:18px;border-radius:12px;background:var(--navy-surface);border:1px solid rgba(212,168,85,.15);animation:followupSlideIn .35s cubic-bezier(.25,.46,.45,.94);overflow:hidden}@keyframes followupSlideIn{0%{opacity:0;transform:translateY(-8px);max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;transform:translateY(0);max-height:600px}}#focusAndBtn{overflow:hidden;transition:opacity .35s cubic-bezier(.25,.46,.45,.94),transform .35s cubic-bezier(.25,.46,.45,.94),max-height .4s cubic-bezier(.25,.46,.45,.94)}#focusAndBtn.focus-hidden{opacity:0;transform:translateY(-10px);max-height:0;pointer-events:none}#focusAndBtn.focus-visible{opacity:1;transform:translateY(0);max-height:800px;pointer-events:auto}#getRecBtn{transition:opacity .3s ease,transform .3s cubic-bezier(.25,.46,.45,.94),max-height .3s ease;overflow:hidden}#getRecBtn.btn-hidden{opacity:0;transform:translateY(8px);max-height:0;padding-top:0;padding-bottom:0;pointer-events:none}#getRecBtn.btn-visible{opacity:1;transform:translateY(0);max-height:80px;pointer-events:auto}.followup-header{font-size:.82rem;color:var(--gold);font-weight:600;letter-spacing:.03em;text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:8px}.followup-header i{font-size:.78rem}.followup-question{margin-bottom:16px}.followup-question:last-child{margin-bottom:0}.followup-q-label{font-size:.85rem;color:var(--text-light);font-weight:500;margin-bottom:10px}.followup-options{display:flex;flex-wrap:wrap;gap:8px}@media(min-width:900px){.followup-options.followup-options--grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}}.followup-option{padding:9px 14px;border-radius:8px;border:1.5px solid rgba(212,168,85,.18);background:var(--navy-mid);color:var(--text-light);font-size:.82rem;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s,transform .12s;font-family:inherit;text-align:center;flex:0 0 auto}.followup-option:hover{border-color:#d4a85566}.followup-option:active{transform:scale(.96)}.followup-option.selected{border-color:var(--gold);background:#d4a8551a;color:var(--gold)}.followup-multi{display:flex;flex-wrap:wrap;gap:7px}.followup-multi-chip{padding:7px 12px;border-radius:20px;border:1.5px solid rgba(212,168,85,.18);background:var(--navy-mid);color:var(--text-muted);font-size:.8rem;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s,color .2s,transform .12s;font-family:inherit;user-select:none}.followup-multi-chip:hover{border-color:#d4a85566;color:var(--text-light)}.followup-multi-chip:active{transform:scale(.95)}.followup-multi-chip.selected{border-color:var(--gold);background:#d4a8551a;color:var(--gold)}.followup-pain-options{display:flex;gap:8px}.followup-pain-options .followup-option{flex:1;padding:9px 6px;font-size:.78rem}.followup-text-input{width:100%;padding:10px 14px;border-radius:8px;border:1.5px solid rgba(212,168,85,.18);background:var(--navy-mid);color:var(--text-light);font-size:.85rem;font-family:inherit;outline:none;transition:border-color .2s;box-sizing:border-box}.followup-text-input::placeholder{color:var(--text-muted);opacity:.7}.followup-text-input:focus{border-color:#d4a85580}.get-rec-btn{display:block;width:100%;padding:16px;border:none;border-radius:10px;background:var(--gold);color:#fff;font-family:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s,transform .15s,opacity .3s}.get-rec-btn:hover:not(:disabled){background:var(--gold-dark);transform:translateY(-2px)}.get-rec-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.rec-result{margin-top:16px;padding:20px;border-radius:14px;background:var(--navy-mid);border:1px solid rgba(212,168,85,.12);animation:slideIn .3s ease-out}.rec-avatar-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}.rec-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;font-family:Playfair Display,Georgia,serif;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center}.rec-typing{display:flex;gap:4px}.typing-dot{width:8px;height:8px;border-radius:50%;background:var(--gold);opacity:.4;animation:typingBounce 1.2s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.rec-message{font-size:.9rem;color:var(--text-light);line-height:1.6;margin-bottom:16px}.rec-card{padding:16px;border-radius:10px;background:#d4a8550f;border:1px solid rgba(212,168,85,.15);margin-bottom:14px}.rec-card-service{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;color:#fff;font-weight:600}.rec-card-details{font-size:.85rem;color:var(--text-muted);margin-top:4px}.rec-card-price{font-size:1.2rem;color:var(--gold);font-weight:700;margin-top:8px}.rec-card-reason{font-size:.82rem;color:var(--text-muted);margin-top:6px;font-style:italic}.rec-book-btn{display:block;width:100%;padding:16px;border:none;border-radius:10px;background:var(--gold);color:#fff;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .15s;margin-bottom:10px}.rec-book-btn:hover{background:var(--gold-dark);transform:translateY(-2px)}.rec-saved-note{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--success);padding:10px 14px;border-radius:8px;background:#4caf500f;border:1px solid rgba(76,175,80,.15)}.aroma-add-btn{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:8px 16px;border-radius:20px;border:1.5px solid var(--gold);background:transparent;color:var(--gold);font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .15s;letter-spacing:.01em}.aroma-add-btn:hover{background:#d4a8551a;transform:translateY(-1px)}.aroma-add-btn:active{transform:scale(.96)}.aroma-add-btn.aroma-added{background:var(--gold);color:#fff;border-color:var(--gold)}.aroma-add-btn.aroma-added:hover{background:var(--gold-dark, #BF9545);border-color:var(--gold-dark, #BF9545)}.aroma-complimentary{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:7px 14px;border-radius:20px;border:1.5px solid rgba(122,158,126,.5);background:#7a9e7e14;color:#7a9e7e;font-size:.82rem;font-weight:600;letter-spacing:.01em}.switch-to-manual{margin-top:16px;text-align:center}.mode-switch-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid rgba(212,168,85,.2);border-radius:20px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.8rem;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.mode-switch-btn:hover{border-color:#d4a85573;color:var(--text-light);background:#d4a8550d}.mode-switch-btn i{font-size:.75rem}.tap-particle{position:fixed;width:6px;height:6px;border-radius:50%;background:var(--gold);pointer-events:none}:root{--gold: #D4A855;--gold-dark: #BF9545;--gold-light: #E8C06D;--navy: #1A1614;--navy-mid: #231F1C;--navy-surface: #2A2420;--off-white: #F5F0EB;--text-light: #D6CFC8;--text-muted: #7A7168;--error: #ef5350;--success: #4CAF50}.navbar,.footer,.ai-concierge-widget{display:none!important}html,body{background:var(--navy)!important}.booking-page{background:var(--navy);min-height:100vh;font-family:Inter,system-ui,sans-serif;color:var(--text-light);animation:bookPageIn .55s cubic-bezier(.16,1,.3,1)}.booking-exit{position:fixed;top:16px;right:20px;left:auto;z-index:100;display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid rgba(212,168,85,.15);border-radius:6px;background:#1a1614bf;backdrop-filter:blur(8px);color:var(--text-muted);font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:400;cursor:pointer;transition:all .2s;text-decoration:none}.booking-exit:hover{border-color:#d4a8554d;color:var(--text-light)}.booking-exit svg{width:13px;height:13px}.booking-back{position:fixed;top:16px;left:20px;z-index:100;display:none;align-items:center;gap:8px;padding:8px 16px;border:1px solid rgba(212,168,85,.3);border-radius:8px;background:#1a1614e6;backdrop-filter:blur(8px);color:var(--gold);font-family:Inter,system-ui,sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.booking-back:hover{border-color:var(--gold);background:#d4a8551a;color:#fff}.booking-back svg{width:16px;height:16px}.booking-back.visible{display:flex}@media(max-width:768px){.booking-back,.booking-exit{display:none!important}}.mobile-booking{animation:bookPageIn .55s cubic-bezier(.16,1,.3,1)}.mobile-booking{display:none}@media(max-width:768px){.booking-page{display:none!important}.mobile-booking{display:flex!important}}@keyframes bookPageIn{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.progress-bar{display:flex;align-items:center;justify-content:center;padding:20px 16px 12px;gap:0}.progress-step{display:flex;align-items:center;gap:0;cursor:pointer;opacity:.4;transition:opacity .3s}.progress-step.active,.progress-step.completed{opacity:1}.progress-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;color:var(--navy);background:var(--text-muted);transition:background .3s}.progress-step.active .progress-dot{background:var(--gold)}.progress-step.completed .progress-dot{background:var(--gold-dark)}.progress-label{font-size:.75rem;margin-left:6px;color:var(--text-muted);display:none}.progress-line{width:40px;height:2px;background:var(--text-muted);margin:0 4px}.progress-line.filled{background:var(--gold)}@media(min-width:600px){.progress-label{display:inline}}@media(min-width:900px){.progress-bar{padding:28px 24px 16px}.progress-dot{width:36px;height:36px;font-size:.85rem}.progress-line{width:64px}.progress-label{font-size:.8rem}}.zone-strip{text-align:center;padding:8px 16px;font-size:.85rem;font-weight:500;background:linear-gradient(90deg,transparent,rgba(212,168,85,.08),transparent);border-bottom:1px solid rgba(212,168,85,.1);display:none}.zone-strip .zone-name{font-weight:600}#concierge{font-family:Playfair Display,Georgia,serif;font-style:italic;color:var(--gold);font-size:1.05rem;text-align:center;padding:16px 24px;min-height:52px;opacity:0;transition:opacity .5s ease}@media(min-width:900px){#concierge{display:none}}.booking-layout{display:flex;gap:32px;max-width:1100px;margin:0 auto;padding:8px 24px 48px;align-items:flex-start}.booking-main{flex:1;min-width:0;max-width:640px;padding-top:4px}.booking-sidebar{width:320px;flex-shrink:0;position:sticky;top:24px}.booking-step-centered .booking-main{max-width:520px;margin:0 auto;padding:8px 20px 40px}.sidebar-card{background:var(--navy-mid);border-radius:16px;border:1px solid rgba(212,168,85,.15);overflow:hidden}.sidebar-card-header{padding:20px 22px 16px;border-bottom:1px solid rgba(212,168,85,.1)}.sidebar-card-header h3{font-family:Playfair Display,Georgia,serif;font-size:1.05rem;color:#fff;margin:0;font-weight:600}.sidebar-summary-rows{padding:16px 22px;display:flex;flex-direction:column;gap:0}.sidebar-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;font-size:.875rem;border-bottom:1px solid rgba(255,255,255,.05)}.sidebar-row:last-child{border-bottom:none}.sidebar-row .sr-label{color:var(--text-muted)}.sidebar-row .sr-value{color:var(--text-light);font-weight:500;text-align:right;max-width:55%}.sidebar-row.sr-total{border-top:2px solid rgba(212,168,85,.2);margin-top:4px;padding-top:12px;border-bottom:none}.sidebar-row.sr-total .sr-label{color:#fff;font-weight:600;font-size:.95rem}.sidebar-row.sr-total .sr-value{color:var(--gold);font-weight:700;font-size:1.1rem}.sidebar-row.sr-discount .sr-value{color:var(--success)}.sidebar-placeholder{padding:24px 22px;text-align:center;color:var(--text-muted);font-size:.875rem;font-style:italic;line-height:1.5}@keyframes bubbleIn{0%{opacity:0;transform:translateY(12px) scale(.92)}50%{opacity:1;transform:translateY(-3px) scale(1.02)}70%{transform:translateY(1px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes avatarPulse{0%,to{box-shadow:0 0 #c8a84e66}50%{box-shadow:0 0 0 6px #c8a84e00}}@keyframes shimmerBorder{0%{border-color:#c8a84e26}50%{border-color:#c8a84e59}to{border-color:#c8a84e26}}@keyframes textFadeIn{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:blur(0)}}.sidebar-concierge{margin:14px 16px;padding:14px 18px 14px 48px;background:linear-gradient(135deg,#c8a84e0f,#c8a84e1f);border:1px solid rgba(200,168,78,.15);border-radius:14px 14px 14px 4px;font-family:Playfair Display,Georgia,serif;font-style:italic;color:var(--gold);font-size:.9rem;line-height:1.55;min-height:44px;position:relative;opacity:0;transform:translateY(12px) scale(.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sidebar-concierge:before{content:"K";position:absolute;left:10px;top:12px;width:28px;height:28px;background:linear-gradient(135deg,#c8a84e,#a0842e);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Playfair Display,Georgia,serif;font-style:normal;font-weight:700;font-size:14px;color:#1a1a2e}.sidebar-concierge:after{content:"";position:absolute;bottom:-6px;left:18px;width:12px;height:12px;background:linear-gradient(135deg,#c8a84e0f,#c8a84e1f);border-left:1px solid rgba(200,168,78,.15);border-bottom:1px solid rgba(200,168,78,.15);transform:rotate(-45deg)}.sidebar-concierge.visible{animation:bubbleIn .6s cubic-bezier(.34,1.56,.64,1) forwards,shimmerBorder 3s ease-in-out .8s infinite}.sidebar-concierge.visible:before{animation:avatarPulse 2s ease-in-out .3s 2}.sidebar-concierge.visible .concierge-text{animation:textFadeIn .3s ease both}.typing-dots{display:inline-flex;gap:4px;align-items:center;height:20px}.typing-dots span{width:6px;height:6px;background:var(--gold);border-radius:50%;animation:dotBounce 1.2s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes dotBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.sidebar-trust{padding:14px 22px;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:8px}.sidebar-trust-item{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted)}.sidebar-trust-item i{color:var(--gold);font-size:.75rem;width:14px;text-align:center}@media(max-width:899px){.booking-layout{flex-direction:column;padding:8px 0 40px}.booking-main{max-width:100%;padding:0 16px}.booking-sidebar{display:none}}.zone-card{background:var(--navy-mid);border-radius:16px;padding:48px 40px;max-width:480px;width:100%;margin:0 auto;border:1px solid rgba(212,168,85,.15);box-shadow:0 8px 48px #0006;text-align:center}.zone-card h1{font-family:Playfair Display,Georgia,serif;color:#fff;font-size:1.6rem;margin-bottom:8px}.zone-card p{color:var(--text-light);font-size:.95rem;margin-bottom:28px}.zone-input-wrap{display:flex;gap:0;border-radius:8px;overflow:hidden;border:2px solid rgba(212,168,85,.3);transition:border-color .2s;position:relative}.zone-input-wrap:focus-within{border-color:var(--gold)}.zone-input-wrap input{flex:1;padding:14px 16px;border:none;outline:none;background:var(--navy-surface);color:var(--text-light);font-family:inherit;font-size:1rem}.zone-input-wrap input::placeholder{color:var(--text-muted)}.zone-input-wrap button{padding:14px 20px;border:none;cursor:pointer;background:var(--gold);color:#fff;font-weight:600;font-family:inherit;font-size:.95rem;transition:background .2s}.zone-input-wrap button:hover{background:var(--gold-dark)}.zone-result{margin-top:24px;min-height:60px}.zone-badge{display:inline-block;padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;color:#fff}.zone-found{padding:20px;border-radius:12px;border:1px solid;text-align:left}.zone-found h3{color:#fff;font-size:1.1rem;margin-bottom:8px}.zone-price{color:var(--gold);font-size:1.3rem;font-weight:600}.zone-cta{display:block;width:100%;margin-top:20px;padding:16px;border:none;border-radius:8px;cursor:pointer;background:var(--gold);color:#fff;font-family:inherit;font-size:1rem;font-weight:600;transition:background .2s,transform .15s}.zone-cta:hover{background:var(--gold-dark);transform:translateY(-2px)}.zone-call-msg{color:var(--text-muted);font-size:.9rem;margin-top:12px}.zone-call-msg a{color:var(--gold-light)}.zone-suggestions{position:absolute;left:0;right:0;top:100%;background:var(--navy-surface);border:1px solid rgba(212,168,85,.2);border-radius:0 0 8px 8px;z-index:10;display:none}.zone-suggestions div{padding:10px 16px;color:var(--text-light);cursor:pointer;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.05)}.zone-suggestions div:hover{background:#d4a8551a}.zone-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--text-muted);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.manual-select{margin-top:20px;display:none}.manual-select label{color:var(--text-light);font-size:.9rem;display:block;margin-bottom:8px}.manual-select select{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(212,168,85,.3);background:var(--navy-surface);color:var(--text-light);font-size:1rem;font-family:inherit}.toggle-wrap{display:flex;justify-content:center;margin-bottom:24px}.toggle-group{display:flex;background:var(--navy-surface);border-radius:8px;overflow:hidden;border:1px solid rgba(212,168,85,.15)}.toggle-btn{padding:10px 24px;border:none;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;color:var(--text-muted);background:transparent;transition:all .25s}.toggle-btn.active{background:var(--gold);color:#fff}.duration-cards{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}@media(min-width:900px){.duration-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.duration-card{flex-direction:column;align-items:flex-start;gap:12px;padding:20px 18px}.duration-card .dur-right{text-align:left}}.duration-card{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-radius:12px;background:var(--navy-mid);border:2px solid transparent;cursor:pointer;transition:border-color .25s,transform .15s,box-shadow .25s;position:relative;overflow:hidden}.duration-card:hover{border-color:#d4a8554d;transform:translateY(-2px)}.duration-card.selected{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 4px 20px #d4a85526}.duration-card .dur-left h3{color:#fff;font-size:1.15rem;margin-bottom:2px}.duration-card .dur-left .dur-desc{font-size:.85rem;color:var(--text-muted)}.duration-card .dur-right{text-align:right}.duration-card .dur-price{font-size:1.4rem;font-weight:700;color:var(--gold)}.duration-card .dur-spa-price{font-size:.8rem;color:var(--text-muted);text-decoration:line-through}.duration-card .popular-badge{position:absolute;top:-1px;right:16px;background:var(--gold);color:var(--navy);font-size:.7rem;font-weight:700;padding:4px 10px;border-radius:0 0 6px 6px;letter-spacing:.05em}@keyframes pulseRing{0%,to{box-shadow:0 0 #d4a8554d}50%{box-shadow:0 0 0 12px #d4a85500}}.duration-card.popular:not(.selected){animation:pulseRing 3s infinite}.section-label{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.modality-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px}@media(min-width:900px){.modality-grid{grid-template-columns:repeat(4,1fr)}}.modality-btn{padding:14px 12px;border:2px solid rgba(212,168,85,.12);border-radius:10px;background:var(--navy-surface);cursor:pointer;text-align:center;transition:border-color .2s,background .2s}.modality-btn:hover{border-color:#d4a8554d}.modality-btn.selected{border-color:var(--gold);background:#d4a85514}.modality-btn.disabled{opacity:.4;cursor:not-allowed}.modality-btn .mod-name{font-size:.9rem;font-weight:500;color:#fff}.modality-btn .mod-desc{font-size:.75rem;color:var(--text-muted);margin-top:4px}.modality-unavailable{padding:14px;border-radius:10px;background:#ff980014;border:1px solid rgba(255,152,0,.2);font-size:.85rem;color:#ff9800;margin-bottom:16px;display:none}.addon-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:10px;background:var(--navy-surface);margin-bottom:8px;cursor:pointer;border:2px solid transparent;transition:border-color .2s}.addon-row:hover{border-color:#d4a85533}.addon-row.selected{border-color:var(--gold)}.addon-row .addon-name{font-size:.9rem;color:#fff}.addon-row .addon-price{font-size:.9rem;color:var(--gold);font-weight:600}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.cal-header h2{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;color:#fff}.cal-nav{background:none;border:1px solid rgba(212,168,85,.3);border-radius:8px;color:var(--gold);padding:8px 12px;cursor:pointer;font-size:1rem;transition:background .2s}.cal-nav:hover{background:#d4a8551a}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:24px}.cal-day-label{text-align:center;font-size:.7rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;padding:4px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .2s;background:var(--navy-surface);color:var(--text-light);border:2px solid transparent}.cal-day:hover:not(.disabled):not(.empty){border-color:#d4a8554d}.cal-day.selected{background:var(--gold);color:var(--navy);font-weight:600}.cal-day.today{border-color:#d4a8554d}.cal-day.disabled{opacity:.3;cursor:not-allowed}.cal-day.empty{background:transparent;cursor:default}.time-section{margin-bottom:20px}.time-section-label{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media(min-width:900px){.time-grid{grid-template-columns:repeat(5,1fr)}}.time-slot{padding:12px 8px;border-radius:8px;text-align:center;cursor:pointer;background:var(--navy-surface);border:2px solid transparent;font-size:.9rem;color:var(--text-light);transition:all .2s}.time-slot:hover:not(.disabled){border-color:#d4a8554d}.time-slot.selected{border-color:var(--gold);background:#d4a8551a;color:var(--gold);font-weight:600}.time-slot.disabled{opacity:.3;cursor:not-allowed}.late-note{font-size:.8rem;color:var(--text-muted);margin-top:8px;font-style:italic}.late-note a{color:var(--gold-light)}.therapist-grid{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.therapist-card{display:flex;align-items:center;gap:14px;padding:16px;border-radius:12px;background:var(--navy-mid);border:2px solid transparent;cursor:pointer;transition:border-color .2s}.therapist-card:hover{border-color:#d4a8554d}.therapist-card.selected{border-color:var(--gold)}.therapist-avatar{width:44px;height:44px;border-radius:50%;background:var(--navy-surface);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1.2rem}.therapist-name{color:#fff;font-weight:500}.therapist-gender{color:var(--text-muted);font-size:.85rem}.therapist-booked{font-size:.8rem;color:var(--gold-light);margin-top:2px}.no-availability{padding:24px;border-radius:12px;background:var(--navy-mid);text-align:center;margin-bottom:24px}.no-availability h3{color:#fff;margin-bottom:8px}.no-availability .suggest-day{display:inline-block;margin:4px;padding:8px 16px;border-radius:8px;background:var(--navy-surface);border:1px solid rgba(212,168,85,.2);cursor:pointer;color:var(--text-light);font-size:.85rem;transition:all .2s}.no-availability .suggest-day:hover{border-color:var(--gold);color:var(--gold)}.evening-scarcity{font-size:.8rem;color:#ff9800;margin-top:6px;display:flex;align-items:center;gap:6px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:6px;font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:14px 16px;border-radius:8px;border:2px solid rgba(212,168,85,.15);background:var(--navy-surface);color:var(--text-light);font-family:inherit;font-size:1rem;transition:border-color .2s;outline:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--gold)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group .error{border-color:var(--error)}.form-group .error-msg{color:var(--error);font-size:.8rem;margin-top:4px;display:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:480px){.form-row{grid-template-columns:1fr}}.age-gate{padding:16px;border-radius:10px;background:#ef535014;border:1px solid rgba(239,83,80,.3);display:none;margin-bottom:18px}.age-gate p{color:var(--error);font-size:.9rem;margin-bottom:8px}.age-gate a{color:var(--gold-light)}.zone-update-notice{padding:14px;border-radius:10px;background:#ff980014;border:1px solid rgba(255,152,0,.2);font-size:.85rem;color:#ff9800;margin-bottom:18px;display:none}.zone-blocked{padding:14px;border-radius:10px;background:#ef535014;border:1px solid rgba(239,83,80,.2);display:none;margin-bottom:18px}.zone-blocked p{color:var(--error);font-size:.9rem}.zone-blocked a{color:var(--gold-light)}.gift-toggle{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;background:var(--navy-surface);cursor:pointer;border:2px solid transparent;transition:border-color .2s;margin-bottom:18px}.gift-toggle:hover{border-color:#d4a85533}.gift-toggle.active{border-color:var(--gold)}.gift-toggle i{color:var(--gold);font-size:1.1rem}.gift-toggle span{font-size:.95rem}.gift-fields{display:none;padding:16px;border-radius:10px;background:#d4a8550a;border:1px solid rgba(212,168,85,.1);margin-bottom:18px}.gift-fields.show{display:block}.gc-toggle{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;background:var(--navy-surface);cursor:pointer;border:2px solid transparent;transition:border-color .2s;margin-bottom:18px}.gc-toggle:hover{border-color:#d4a85533}.gc-toggle.active{border-color:var(--gold)}.gc-toggle i{color:var(--gold);font-size:1.1rem}.gc-toggle span{font-size:.95rem}.gc-fields{display:none;padding:16px;border-radius:10px;background:#d4a8550a;border:1px solid rgba(212,168,85,.1);margin-bottom:18px}.gc-fields.show{display:block}.gc-applied{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;background:#4caf5014;border:1px solid rgba(76,175,80,.25);margin-bottom:18px;font-size:.9rem;color:#81c784}.gc-applied i{color:#81c784}.gc-applied .gc-remove{margin-left:auto;color:var(--text-muted);cursor:pointer;font-size:.8rem;text-decoration:underline}.gc-applied .gc-remove:hover{color:var(--error)}.order-summary{background:var(--navy-mid);border-radius:12px;padding:24px;border:1px solid rgba(212,168,85,.1);margin-bottom:24px}.order-summary h2{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;color:#fff;margin-bottom:16px}.order-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.05)}.order-row:last-child{border-bottom:none}.order-row .label{color:var(--text-muted)}.order-row .value{color:var(--text-light);font-weight:500}.order-row.discount .value{color:var(--success)}.order-row.total{border-top:2px solid rgba(212,168,85,.2);padding-top:12px;margin-top:4px}.order-row.total .label{color:#fff;font-weight:600;font-size:1rem}.order-row.total .value{color:var(--gold);font-weight:700;font-size:1.2rem}.first-time-banner{padding:12px 16px;border-radius:10px;background:#4caf5014;border:1px solid rgba(76,175,80,.2);margin-bottom:16px;font-size:.85rem;color:var(--success);display:none}.slot-timer{text-align:center;padding:10px;font-size:.85rem;color:var(--text-muted);margin-bottom:16px}.slot-timer .time{color:#ff9800;font-weight:600}.code-section{margin-bottom:20px}.code-toggle{font-size:.85rem;color:var(--gold);cursor:pointer;padding:8px 0;display:inline-flex;align-items:center;gap:6px}.code-toggle:hover{text-decoration:underline}.code-input-row{display:none;margin-top:8px}.code-input-row.show{display:flex;gap:8px}.code-input-row input{flex:1;padding:12px;border-radius:8px;border:2px solid rgba(212,168,85,.15);background:var(--navy-surface);color:var(--text-light);font-family:inherit;font-size:.9rem;outline:none}.code-input-row input:focus{border-color:var(--gold)}.code-input-row button{padding:12px 20px;border:none;border-radius:8px;background:var(--gold);color:#fff;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}.code-input-row button:hover{background:var(--gold-dark)}.code-result{font-size:.85rem;margin-top:6px}.code-result.success{color:var(--success)}.code-result.error{color:var(--error)}.payment-section{margin-bottom:24px}.payment-section h3{font-size:.95rem;color:#fff;margin-bottom:12px}#squareCardContainer{min-height:90px}.payment-error{padding:12px;border-radius:8px;background:#ef535014;border:1px solid rgba(239,83,80,.2);color:var(--error);font-size:.85rem;margin-bottom:16px;display:none}.btn-pay{display:block;width:100%;padding:18px;border:none;border-radius:8px;background:var(--gold);color:#fff;font-family:inherit;font-size:1.05rem;font-weight:700;cursor:pointer;letter-spacing:.02em;transition:background .2s,transform .15s}.btn-pay:hover{background:var(--gold-dark);transform:translateY(-2px)}.btn-pay:disabled{opacity:.5;cursor:not-allowed;transform:none}.secure-note{text-align:center;font-size:.8rem;color:var(--text-muted);margin-top:12px}.secure-note i{color:var(--success);margin-right:4px}.inline-auth{background:var(--navy-surface);border:1px solid rgba(212,168,85,.2);border-radius:10px;padding:20px;margin:16px 0}.inline-auth-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.inline-auth-title{font-family:Playfair Display,Georgia,serif;font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px}.inline-auth-desc{font-size:.85rem;color:var(--text-muted);line-height:1.5}.inline-auth-row{display:flex;gap:10px}.inline-auth-input{flex:1;padding:11px 14px;background:var(--navy-mid);border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-family:inherit;font-size:.95rem;outline:none}.inline-auth-input:focus{border-color:var(--gold)}.inline-auth-error{font-size:.82rem;color:#e74c3c;margin-top:6px;min-height:1.1em}.inline-auth-confirm{font-size:.9rem;color:var(--text-light);display:flex;align-items:center;gap:8px}.link-btn{background:none;border:none;color:var(--gold);font-family:inherit;font-size:.85rem;cursor:pointer;text-decoration:underline;padding:4px 0;margin-top:8px;display:block}@media(max-width:480px){.inline-auth-row{flex-direction:column}}.pkg-session-banner{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#d4a8551a,#d4a85508);border:1px solid rgba(212,168,85,.25);border-radius:12px;padding:14px 18px;margin-bottom:20px;animation:fadeUp .4s ease-out}.pkg-session-icon{width:40px;height:40px;border-radius:10px;background:#d4a85526;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1rem;flex-shrink:0}.pkg-session-info{flex:1;display:flex;flex-direction:column;gap:2px}.pkg-session-info strong{font-size:.9rem;color:#fff}.pkg-session-info span{font-size:.8rem;color:var(--text-muted)}.pkg-session-use{padding:10px 18px;border:none;border-radius:8px;background:var(--gold);color:#fff;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.pkg-session-use:hover{background:var(--gold-dark)}.pkg-session-use.active{background:var(--success)}.booking-page.package-mode .dur-price,.booking-page.package-mode .dur-spa-price,.booking-page.package-mode .duration-card.pkg-hidden,.booking-page.package-mode .modality-btn[data-modality=lymphatic]{display:none}.booking-page.package-mode #addOnsSection{display:none!important}.rebook-notice{display:flex;align-items:center;gap:10px;background:#d4a8551f;border:1px solid rgba(212,168,85,.3);border-radius:10px;padding:12px 16px;margin-bottom:16px;font-size:.88rem;color:var(--gold-light);transition:opacity .3s}.rebook-notice i:first-child{color:var(--gold);flex-shrink:0}.rebook-notice span{flex:1}.rebook-notice-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;font-size:.9rem}.rebook-notice-close:hover{color:#fff}.confirm-check{width:80px;height:80px;border-radius:50%;margin:0 auto 20px;background:#4caf501f;border:3px solid var(--success);display:flex;align-items:center;justify-content:center;animation:checkPop .5s cubic-bezier(.22,1,.36,1)}.confirm-check i{font-size:2rem;color:var(--success)}@keyframes checkPop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.confirm-title{font-family:Playfair Display,Georgia,serif;font-size:1.6rem;color:#fff;margin-bottom:8px}.confirm-subtitle{color:var(--text-muted);font-size:.95rem;margin-bottom:28px}.confirm-card{background:var(--navy-mid);border-radius:12px;padding:24px;border:1px solid rgba(212,168,85,.1);margin-bottom:24px;text-align:left}.confirm-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.05)}.confirm-row:last-child{border-bottom:none}.confirm-row .label{color:var(--text-muted)}.confirm-row .value{color:var(--text-light);font-weight:500}.confirm-total{display:flex;justify-content:space-between;padding:12px 0 0;border-top:2px solid rgba(212,168,85,.2);margin-top:4px}.confirm-total .label{color:#fff;font-weight:600}.confirm-total .value{color:var(--gold);font-weight:700;font-size:1.1rem}.action-buttons{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.action-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:8px;border:none;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:500;transition:transform .15s,box-shadow .2s}.action-btn:hover{transform:translateY(-2px)}.action-btn.primary{background:var(--gold);color:#fff}.action-btn.primary:hover{box-shadow:0 4px 16px #d4a8554d}.action-btn.secondary{background:var(--navy-surface);color:var(--text-light);border:1px solid rgba(212,168,85,.15)}.action-btn.secondary:hover{border-color:#d4a8554d}.share-section{padding:20px;border-radius:12px;background:var(--navy-mid);border:1px solid rgba(212,168,85,.1);margin-bottom:24px}.share-section h3{font-family:Playfair Display,Georgia,serif;font-size:1rem;color:#fff;margin-bottom:12px}.share-btns{display:flex;gap:10px;justify-content:center}.share-btn{padding:10px 18px;border-radius:8px;border:1px solid rgba(212,168,85,.2);background:var(--navy-surface);color:var(--text-light);font-family:inherit;font-size:.85rem;cursor:pointer;transition:border-color .2s;display:flex;align-items:center;gap:6px}.share-btn:hover{border-color:var(--gold);color:var(--gold)}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(60vh) rotate(720deg);opacity:0}}.btn-continue{display:block;width:100%;padding:16px;border:none;border-radius:8px;background:var(--gold);color:#fff;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .15s}.btn-continue:hover{background:var(--gold-dark);transform:translateY(-2px)}.btn-continue:disabled{opacity:.4;cursor:not-allowed;transform:none}.continue-wrap{margin-top:32px}#addOnsSection{opacity:1}.manual-service-section{overflow:hidden;transition:opacity .4s cubic-bezier(.25,.46,.45,.94),max-height .5s cubic-bezier(.25,.46,.45,.94);opacity:1;max-height:2000px}.manual-service-section.mode-hidden{opacity:0;max-height:0;pointer-events:none}.manual-mode-header{margin-bottom:8px}.manual-divider{text-align:center;padding:16px 0;position:relative;transition:opacity .3s ease}.manual-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#d4a8551f}.manual-divider span{position:relative;background:var(--navy);padding:0 16px;font-size:.82rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.switch-to-ai-wrap{display:none;text-align:center;margin-bottom:16px}#switchToAIBtn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid rgba(212,168,85,.2);border-radius:20px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.8rem;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s,background .2s}#switchToAIBtn:hover{border-color:#d4a85573;color:var(--text-light);background:#d4a8550d}#switchToAIBtn i{font-size:.75rem;color:var(--gold)}.fade-up{opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}.fade-up.visible{opacity:1;transform:translateY(0)}@keyframes pulseGold{0%,to{text-shadow:0 0 10px rgba(212,168,85,.3)}50%{text-shadow:0 0 25px rgba(212,168,85,.6)}}.booking-step{display:none}.booking-step.active{display:block}@media(max-width:480px){.zone-card{padding:32px 20px}.booking-main{padding:8px 16px 32px}.modality-grid{grid-template-columns:1fr}.duration-card{padding:16px 18px}.time-grid{grid-template-columns:repeat(2,1fr)}}
