.booking-hero[data-astro-cid-5codh4tt]{background:var(--color-bg-dark);padding:140px 20px 80px;position:relative;overflow:hidden}.booking-hero[data-astro-cid-5codh4tt]:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 25% 60%,rgba(24,85,71,.32) 0%,transparent 65%);pointer-events:none}.booking-hero-inner[data-astro-cid-5codh4tt]{max-width:1200px;margin:0 auto;position:relative}.hero-label[data-astro-cid-5codh4tt]{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#67bb6b;margin-bottom:16px}.hero-title[data-astro-cid-5codh4tt]{font-size:clamp(44px,6vw,76px);font-weight:800;line-height:1;color:#fff;margin-bottom:16px}.hero-sub[data-astro-cid-5codh4tt]{font-size:16px;line-height:1.7;color:#ffffff94;margin-bottom:24px}.hero-meta[data-astro-cid-5codh4tt]{display:flex;gap:28px;flex-wrap:wrap}.hero-meta-item[data-astro-cid-5codh4tt]{font-size:13px;font-weight:500;color:#ffffffc7;display:flex;align-items:center;gap:8px}.hero-meta-item[data-astro-cid-5codh4tt]:before{content:"·";color:#67bb6b}.hero-meta-item[data-astro-cid-5codh4tt]:first-child:before{display:none}.booking-section[data-astro-cid-5codh4tt]{background:var(--color-bg-light);padding:80px 20px}.booking-inner[data-astro-cid-5codh4tt]{max-width:1120px;margin:0 auto}.steps-bar[data-astro-cid-5codh4tt]{display:flex;align-items:center;background:#fff;border:1px solid var(--color-border);margin-bottom:32px}.step-item[data-astro-cid-5codh4tt]{flex:1;display:flex;align-items:center;gap:12px;padding:16px 20px;border-right:1px solid var(--color-border)}.step-item[data-astro-cid-5codh4tt]:last-child{border-right:none}.step-item[data-astro-cid-5codh4tt].active{background:#1855470a}.step-num[data-astro-cid-5codh4tt]{width:26px;height:26px;border-radius:50%;background:var(--color-border);color:var(--color-text-light);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.step-item[data-astro-cid-5codh4tt].active .step-num[data-astro-cid-5codh4tt],.step-item[data-astro-cid-5codh4tt].done .step-num[data-astro-cid-5codh4tt]{background:var(--color-primary);color:#fff}.step-eyebrow[data-astro-cid-5codh4tt]{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-light)}.step-item[data-astro-cid-5codh4tt].active .step-eyebrow[data-astro-cid-5codh4tt]{color:var(--color-primary)}.step-label[data-astro-cid-5codh4tt]{font-size:13px;font-weight:600;color:var(--color-text-dark)}.booking-view[data-astro-cid-5codh4tt]{background:#fff;border:1px solid var(--color-border);padding:32px;position:relative}.booking-actions[data-astro-cid-5codh4tt]{display:flex;justify-content:center;margin-top:24px;padding-top:24px}.booking-actions[data-astro-cid-5codh4tt].hidden,.hidden[data-astro-cid-5codh4tt]{display:none}.picker-grid[data-astro-cid-5codh4tt]{display:grid;grid-template-columns:1fr;gap:0}.picker-col[data-astro-cid-5codh4tt]{padding:28px}.col-label[data-astro-cid-5codh4tt]{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-light);margin-bottom:20px}.cal-header[data-astro-cid-5codh4tt]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.cal-month[data-astro-cid-5codh4tt]{font-size:15px;font-weight:700;color:var(--color-text-dark)}.cal-nav[data-astro-cid-5codh4tt]{background:none;border:1px solid var(--color-border);border-radius:2px;width:32px;height:32px;cursor:pointer;font-size:18px;color:var(--color-text-dark);display:flex;align-items:center;justify-content:center;transition:background .2s}.cal-nav[data-astro-cid-5codh4tt]:hover{background:var(--color-bg-light)}.cal-weekdays[data-astro-cid-5codh4tt]{display:grid;grid-template-columns:repeat(7,1fr);list-style:none;margin-bottom:8px}.cal-weekdays[data-astro-cid-5codh4tt] li[data-astro-cid-5codh4tt]{text-align:center;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--color-text-light);padding:6px 0}.cal-grid[data-astro-cid-5codh4tt]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;list-style:none}.cal-legend[data-astro-cid-5codh4tt]{display:flex;align-items:center;gap:16px;margin-top:16px;font-size:11px;color:var(--color-text-light)}.legend-dot[data-astro-cid-5codh4tt]{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:4px}.legend-dot[data-astro-cid-5codh4tt].available{background:var(--color-primary)}.legend-dot[data-astro-cid-5codh4tt].unavailable{background:var(--color-border)}.slots-header[data-astro-cid-5codh4tt]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.slots-header[data-astro-cid-5codh4tt] .col-label[data-astro-cid-5codh4tt]{margin-bottom:0}.slots-availability[data-astro-cid-5codh4tt]{font-size:11px;font-weight:600;color:var(--color-text-light);display:flex;align-items:center;gap:6px}.availability-dot[data-astro-cid-5codh4tt]{width:8px;height:8px;border-radius:50%;background:#67bb6b}.slots-empty[data-astro-cid-5codh4tt]{font-size:14px;color:var(--color-text-light);text-align:center;padding:40px 20px}.slots-grid[data-astro-cid-5codh4tt]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;list-style:none}.slots-grid[data-astro-cid-5codh4tt] li[data-astro-cid-5codh4tt]{list-style:none;width:100%}.slots-wrap[data-astro-cid-5codh4tt].hidden{display:none}.slots-section-label[data-astro-cid-5codh4tt]{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-light);margin-top:16px;margin-bottom:12px}.slots-section-label[data-astro-cid-5codh4tt]:first-child{margin-top:0}.btn-continue[data-astro-cid-5codh4tt]{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:var(--color-primary);color:#fff;font-family:var(--font-family-base);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer;transition:background .2s}.btn-continue[data-astro-cid-5codh4tt]:hover{background:var(--color-primary-light)}.form-summary[data-astro-cid-5codh4tt]{background:var(--color-bg-light);padding:16px 20px;margin-bottom:24px;border-left:3px solid var(--color-primary)}.form-summary-text[data-astro-cid-5codh4tt]{font-size:15px;font-weight:600;color:var(--color-text-dark);margin-top:4px}.booking-form[data-astro-cid-5codh4tt] .col-label[data-astro-cid-5codh4tt]{margin-bottom:16px}.form-grid[data-astro-cid-5codh4tt]{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:24px}.form-group[data-astro-cid-5codh4tt].full{grid-column:1 / -1}.form-input[data-astro-cid-5codh4tt]{width:100%;padding:14px 16px;border:1px solid var(--color-border);border-radius:2px;font-family:var(--font-family-base);font-size:14px;color:var(--color-text-dark);background:#fff;transition:border-color .2s;outline:none}.form-input[data-astro-cid-5codh4tt]:focus{border-color:var(--color-primary)}.form-input[data-astro-cid-5codh4tt]::placeholder{color:var(--color-text-light)}.form-select[data-astro-cid-5codh4tt]{cursor:pointer}.form-textarea[data-astro-cid-5codh4tt]{resize:vertical;min-height:100px}.form-check-row[data-astro-cid-5codh4tt]{display:flex;align-items:flex-start;gap:12px}.form-check[data-astro-cid-5codh4tt]{width:16px;height:16px;flex-shrink:0;margin-top:2px;accent-color:var(--color-primary);cursor:pointer}.form-check-label[data-astro-cid-5codh4tt]{font-size:13px;color:var(--color-text-mid);line-height:1.5}.form-check-label[data-astro-cid-5codh4tt] a[data-astro-cid-5codh4tt]{color:var(--color-primary);text-decoration:underline}.btn-back[data-astro-cid-5codh4tt]{padding:14px 24px;background:none;border:1px solid var(--color-border);border-radius:2px;font-family:var(--font-family-base);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-dark);cursor:pointer;transition:all .2s}.btn-back[data-astro-cid-5codh4tt]:hover{background:var(--color-bg-light)}.booking-form[data-astro-cid-5codh4tt] .booking-actions[data-astro-cid-5codh4tt]{justify-content:space-between;gap:16px}.field-error[data-astro-cid-5codh4tt]{font-size:12px;color:#e53e3e;margin-top:4px}.form-input[data-astro-cid-5codh4tt].error{border-color:#e53e3e}.confirmation[data-astro-cid-5codh4tt]{text-align:center;padding:40px 20px}.confirmation-icon[data-astro-cid-5codh4tt]{width:64px;height:64px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.confirmation-title[data-astro-cid-5codh4tt]{font-size:28px;font-weight:800;color:var(--color-text-dark);margin-bottom:12px}.confirmation-text[data-astro-cid-5codh4tt]{font-size:16px;font-weight:600;color:var(--color-primary);margin-bottom:16px}.confirmation-sub[data-astro-cid-5codh4tt]{font-size:14px;line-height:1.7;color:var(--color-text-mid);max-width:480px;margin:0 auto}@media(min-width:768px){.booking-hero[data-astro-cid-5codh4tt]{padding:140px 32px 80px}.booking-section[data-astro-cid-5codh4tt]{padding:100px 32px}.form-grid[data-astro-cid-5codh4tt]{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.booking-hero[data-astro-cid-5codh4tt]{padding:140px 56px 80px}.booking-section[data-astro-cid-5codh4tt]{padding:100px 56px}.picker-grid[data-astro-cid-5codh4tt]{grid-template-columns:1.1fr 1fr}.picker-col[data-astro-cid-5codh4tt]+.picker-col[data-astro-cid-5codh4tt]{border-left:1px solid var(--color-border)}}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;border-radius:2px;cursor:pointer;border:1px solid transparent;transition:all .15s;color:var(--color-text-dark)}.cal-day:hover{border-color:var(--color-primary);color:var(--color-primary)}.cal-day.selected{background:var(--color-primary);color:#fff}.cal-day.unavailable{color:var(--color-text-light);cursor:not-allowed;opacity:.4}.cal-day.past{opacity:.25;cursor:not-allowed}.cal-day.empty{cursor:default}.slot-btn{padding:12px;border:1px solid var(--color-border);border-radius:2px;background:none;font-family:var(--font-family-base);font-size:13px;font-weight:600;color:var(--color-text-dark);cursor:pointer;transition:all .15s;text-align:center;width:100%}.slot-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.slot-btn.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
