.booking-flow{max-width:480px;margin:0 auto;padding:0 16px 60px}.step-indicator{display:flex;align-items:center;justify-content:center;padding:18px 0}.sdot{display:flex;flex-direction:column;align-items:center;gap:4px}.sdot .d{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--border);background:var(--warm-white);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;color:var(--light);transition:all .25s}.sdot.active .d,.sdot.done .d{border-color:var(--gold);background:var(--gold);color:#fff}.sdot.done .d .n{display:none}.sdot.done .d:after{content:"✓";font-size:11px}.sdot .lbl{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--light);white-space:nowrap;transition:color .25s}.sdot.active .lbl{color:var(--gold)}.sdot.done .lbl{color:var(--mid)}.sline{width:36px;height:1px;background:var(--border);margin:0 5px 18px;flex-shrink:0;transition:background .3s}.sline.done{background:var(--gold)}.step-panel{animation:bfFadeUp .32s cubic-bezier(.22,1,.36,1) both}.slots-section,.step-panel{scroll-margin-top:88px}@keyframes bfFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes bfSlotIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.step-heading{font-family:Cormorant Garamond,serif;font-size:21px;font-weight:600;letter-spacing:-.2px;margin-bottom:3px}.step-sub{font-size:12px;color:var(--mid);margin-bottom:16px}.calendar-wrap{background:#fff;border:1.5px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:16px;box-shadow:0 2px 16px #1a18140a}.cal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid var(--border)}.cal-month-label{font-family:Cormorant Garamond,serif;font-size:18px;font-weight:600;letter-spacing:-.2px}.cal-nav{display:flex;gap:6px}.cal-nav-btn{width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:var(--warm-white);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--mid);transition:all .15s}.cal-nav-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold);background:var(--gold-subtle)}.cal-nav-btn:disabled{opacity:.3;cursor:not-allowed}.cal-dow{display:grid;grid-template-columns:repeat(7,1fr);padding:10px 12px 4px}.cal-dow span{text-align:center;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--light);padding:4px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);padding:4px 12px 14px;gap:2px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:13px;font-weight:400;transition:all .15s;position:relative;border:1.5px solid transparent;color:var(--charcoal);user-select:none}.cal-day.empty{cursor:default}.cal-day.past,.cal-day.closed{color:var(--border);cursor:not-allowed}.cal-day.available{cursor:pointer}.cal-day.available:hover{background:var(--warm-white);border-color:var(--gold-light)}.cal-day.today:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--gold)}.cal-day.selected{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:500}.cal-day.selected:after{background:#fff9}.slots-section{margin-bottom:11px;animation:bfFadeUp .3s ease both}.slots-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--mid);margin-bottom:8px;display:flex;align-items:center;gap:6px}.date-echo{font-weight:400;text-transform:none;letter-spacing:0;color:var(--gold);font-size:11px}.slots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.slot{font-size:12px;padding:11px 4px;border-radius:9px;border:1.5px solid var(--border);background:var(--warm-white);color:var(--charcoal);cursor:pointer;transition:all .15s;font-family:DM Sans,sans-serif;text-align:center;animation:bfSlotIn .2s ease both}.no-slots{font-size:13px;color:var(--mid);font-style:italic;padding:6px 0}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:11px}.field label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--mid)}.field label .opt{font-weight:400;text-transform:none;letter-spacing:0;font-size:10px;color:var(--light);margin-left:4px}.field input,.field textarea{font-family:DM Sans,sans-serif;font-size:16px;color:var(--charcoal);background:var(--warm-white);border:1.5px solid var(--border);border-radius:10px;padding:13px 14px;width:100%;outline:none;transition:border-color .15s,background .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}.field input::placeholder,.field textarea::placeholder{color:var(--light)}.field input:focus,.field textarea:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px #b8965a1a}.field textarea{resize:none;height:78px;line-height:1.5}.booking-summary{display:flex;align-items:center;gap:10px;background:var(--warm-white);border:1px solid var(--border);border-radius:10px;padding:11px 14px;margin-bottom:18px}.cal-icon{font-size:18px;flex-shrink:0}.sum-text{flex:1}.sum-text strong{display:block;font-size:13px;font-weight:500}.sum-text span{font-size:11px;color:var(--mid)}.sum-change{font-size:11px;color:var(--gold);background:none;border:none;cursor:pointer;font-family:DM Sans,sans-serif;text-decoration:underline;text-underline-offset:2px;flex-shrink:0}.submit-error{font-size:12px;color:#c97a6e;margin-bottom:10px;text-align:center}.btn-wrap{position:sticky;bottom:0;background:var(--cream);border-top:1px solid var(--border);padding:13px 0 22px;margin-top:20px}.btn-primary{width:100%;padding:16px;background:var(--charcoal);color:#fff;border:none;border-radius:var(--radius);font-size:15px;font-family:DM Sans,sans-serif;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover:not(:disabled){background:#2e2b26}.btn-primary:active:not(:disabled){transform:scale(.99)}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-note{text-align:center;font-size:11px;color:var(--light);margin-top:8px;line-height:1.5}.success-state{text-align:center;padding:40px 0 20px;animation:bfFadeUp .4s ease both}.success-icon{width:52px;height:52px;border-radius:50%;background:var(--gold-subtle);border:1px solid rgba(184,150,90,.25);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:22px;color:var(--gold)}.success-state h3{font-family:Cormorant Garamond,serif;font-size:24px;font-weight:500;margin-bottom:8px}.success-state p{font-size:13px;color:var(--mid);line-height:1.65;margin:0 auto 20px;max-width:300px}.wa-btn{display:inline-flex;align-items:center;gap:7px;padding:12px 18px;background:#25d366;color:#fff;border-radius:var(--radius);font-size:13px;font-weight:500;text-decoration:none;transition:opacity .15s}.wa-btn:hover{opacity:.9}.slot{font-size:12px;padding:11px 4px;border-radius:9px;border:1.5px solid var(--border);background:var(--warm-white);color:var(--charcoal);cursor:pointer;transition:all .15s;font-family:DM Sans,sans-serif;text-align:center;animation:bfSlotIn .2s ease both;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:56px}.slot:hover{border-color:var(--gold-light);background:#fff}.slot.active{border-color:var(--gold);background:var(--gold);color:#fff;font-weight:500}.slot.disabled{background:#f7f4ef;color:var(--light);border-color:var(--border);cursor:not-allowed;opacity:1}.slot.disabled:hover{background:#f7f4ef;border-color:var(--border)}.slot-time{font-size:12px;font-weight:500;line-height:1.2}.slot-status{font-size:9px;line-height:1.2;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.field-error{font-size:11px;color:#c97a6e;margin-top:2px}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#c97a6e;box-shadow:0 0 0 3px #c97a6e14}.btn-secondary{width:100%;padding:16px;background:transparent;color:var(--charcoal);border:1.5px solid var(--border);border-radius:var(--radius);font-size:15px;font-family:DM Sans,sans-serif;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-secondary:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.btn-secondary:disabled{opacity:.35;cursor:not-allowed}.btn-wrap:has(.btn-secondary){display:flex;gap:10px}.btn-wrap:has(.btn-secondary) .btn-primary,.btn-wrap:has(.btn-secondary) .btn-secondary{flex:1}.payment-init-loading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:48px 0 32px}.payment-summary{background:var(--warm-white);border:1.5px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:20px}.payment-summary-row{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-bottom:1px solid var(--border)}.payment-summary-row:last-child{border-bottom:none}.payment-summary-row--total{background:#fff}.payment-summary-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--mid)}.payment-summary-value{font-size:13px;color:var(--charcoal);font-weight:400;text-align:right;max-width:60%}.payment-summary-amount{font-family:Cormorant Garamond,serif;font-size:18px;font-weight:600;color:var(--charcoal);letter-spacing:-.2px}.payment-card-wrap{display:flex;flex-direction:column;gap:5px;margin-bottom:20px}.payment-card-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--mid)}.payment-card-field{background:var(--warm-white);border:1.5px solid var(--border);border-radius:10px;padding:14px;transition:border-color .15s,background .15s,box-shadow .15s}.payment-card-field:focus-within{border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px #b8965a1a}.payment-card-field--error{border-color:#c97a6e;box-shadow:0 0 0 3px #c97a6e14}.payment-card-error{font-size:11px;color:#c97a6e;margin-top:2px}.payment-polling{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;color:var(--mid);margin-bottom:14px;padding:10px;background:var(--warm-white);border-radius:10px;border:1px solid var(--border)}.payment-spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--gold);border-radius:50%;animation:paymentSpin .7s linear infinite;flex-shrink:0}.payment-spinner--inline{width:14px;height:14px;border-width:1.5px;border-color:#ffffff59;border-top-color:#fff}@keyframes paymentSpin{to{transform:rotate(360deg)}}.payment-security-note{display:flex;align-items:flex-start;gap:7px;font-size:11px;color:var(--light);line-height:1.55;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.payment-lock-icon{width:13px;height:13px;flex-shrink:0;margin-top:1px;color:var(--light)}.payment-status-block{text-align:center;padding:32px 0 16px}.payment-status-icon{font-size:28px;margin-bottom:14px;display:block}.payment-status-block--failed .payment-status-icon{color:#c97a6e}.payment-contact-block{display:flex;flex-direction:column;gap:6px;margin:16px 0}.payment-contact-link{font-size:14px;font-weight:500;color:var(--gold);text-decoration:none;transition:opacity .15s}.payment-contact-link:hover{opacity:.75}.payment-reference{font-size:11px;color:var(--light);margin-top:12px}.payment-reference code{font-size:10px;background:var(--warm-white);border:1px solid var(--border);border-radius:4px;padding:2px 6px;color:var(--mid);letter-spacing:.3px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--cream: #faf8f4;--warm-white: #f5f2ec;--charcoal: #1a1814;--mid: #6b6560;--light: #aba49b;--gold: #b8965a;--gold-light: #d4af78;--gold-subtle: rgba(184, 150, 90, .08);--border: #e8e2d9;--radius: 12px}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--charcoal);min-height:100vh;-webkit-font-smoothing:antialiased}.booking-intro{max-width:480px;margin:0 auto;padding:24px 16px 8px}.booking-intro-title{font-size:26px;font-weight:300;color:#0f2137;margin:0 0 4px}.booking-intro-sub{font-size:12px;color:#1e2225;font-weight:300;line-height:1.5;margin:0}.form-load[data-astro-cid-xbnonxn5]{position:relative;margin-bottom:50px}.booking[data-astro-cid-xbnonxn5]{max-width:1152px;margin:100px auto 0;padding:0 20px}.consultation-form-control[data-astro-cid-xbnonxn5]{display:flex;flex-direction:column;width:310px;justify-content:space-evenly;margin-right:20px;gap:10px}.booking-entries[data-astro-cid-xbnonxn5]{margin-top:30px;display:flex;flex-direction:column;gap:30px}.booking-form-entries[data-astro-cid-xbnonxn5]{display:flex;justify-content:space-between}@media (max-width: 1030px){.booking[data-astro-cid-xbnonxn5]{margin-top:35px!important}.booking-form-entries[data-astro-cid-xbnonxn5]{flex-wrap:wrap;justify-content:center;gap:30px;row-gap:40px}}@media (max-width: 740px){.consultation-form-control[data-astro-cid-xbnonxn5]{margin-right:0}}.consultation-form-control[data-astro-cid-xbnonxn5] label[data-astro-cid-xbnonxn5]{font-size:14px;color:#9dafbd}.consultation-form-control[data-astro-cid-xbnonxn5] input[data-astro-cid-xbnonxn5]{height:30px;color:#2a6171;font-size:18px}#booking-instructions[data-astro-cid-xbnonxn5]{padding-left:15px}#booking-instructions[data-astro-cid-xbnonxn5] p[data-astro-cid-xbnonxn5]{font-size:16px;margin-top:10px}#freeConsultationSubmit[data-astro-cid-xbnonxn5]{all:unset;grid-column:1 / -1;width:300px;height:40px;margin:10px auto;font-size:16px;color:#fff;background-color:#2a6171;text-align:center;border-radius:3px}#freeConsultationSubmit[data-astro-cid-xbnonxn5]:hover{cursor:pointer;background:radial-gradient(circle,#45afcc,#2a6171)}#freeConsultationSubmit[data-astro-cid-xbnonxn5]:active{background:radial-gradient(circle,#2a6171,#45afcc);transform:scale(.95);transition:background .3s ease,transform .2s ease}#consultation-process[data-astro-cid-xbnonxn5]{margin-top:100px}#consultation-process[data-astro-cid-xbnonxn5] ul[data-astro-cid-xbnonxn5]{list-style:none}#consultation-process[data-astro-cid-xbnonxn5] p[data-astro-cid-xbnonxn5]{font-size:18px}.ordered-content[data-astro-cid-xbnonxn5]{margin-top:80px;display:flex;align-items:center;gap:10px}.ordered-content[data-astro-cid-xbnonxn5] h3[data-astro-cid-xbnonxn5]{margin:0}.ordered-content-bottom[data-astro-cid-xbnonxn5]{padding-left:50px;display:flex;justify-content:space-between;align-items:center}.ordered-content-bottom[data-astro-cid-xbnonxn5] p[data-astro-cid-xbnonxn5]{flex-shrink:1;padding:0 5px;max-width:600px}#second-content[data-astro-cid-xbnonxn5] .ordered-content[data-astro-cid-xbnonxn5]{flex-direction:row-reverse}#second-content[data-astro-cid-xbnonxn5] .ordered-content-bottom[data-astro-cid-xbnonxn5]{flex-direction:row-reverse;padding-left:0;padding-right:50px}@media (max-width:768px){.ordered-content-bottom[data-astro-cid-xbnonxn5]{padding-left:0!important;gap:10px}#second-content[data-astro-cid-xbnonxn5] .ordered-content-bottom[data-astro-cid-xbnonxn5]{padding-right:0!important}#consultation-process[data-astro-cid-xbnonxn5] ul[data-astro-cid-xbnonxn5]{padding-left:0}}.consultation-img-container[data-astro-cid-xbnonxn5] img[data-astro-cid-xbnonxn5]{width:100%;height:100%;object-fit:cover}
