.booking-hero{display:flex;flex-direction:column;align-items:center;gap:32px;padding:80px 180px 40px;text-align:center}.booking-hero-eyebrow{color:var(--guia-accent);font-family:outfit,sans-serif;font-weight:700;font-size:16px;text-transform:uppercase;margin:0}.booking-hero-title{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:800;font-size:56px;line-height:1.1;max-width:820px;margin:0}.booking-hero-desc{color:#5f6963;font-family:outfit,sans-serif;font-weight:400;font-size:20px;line-height:1.65;max-width:760px;margin:0}.booking-steps{display:flex;gap:24px;align-items:flex-start;padding:20px 180px 60px}.booking-step-card{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:16px;border:1px solid var(--guia-border);background:0 0;box-sizing:border-box}.booking-step-card.is-active{background:var(--guia-bg-warm);border:1.5px solid var(--guia-accent)}.booking-step-header{display:flex;align-items:center;gap:12px}.booking-step-number{width:32px;height:32px;border-radius:16px;background:var(--guia-button);color:#fff;font-family:outfit,sans-serif;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.booking-step-card.is-active .booking-step-number{background:var(--guia-accent)}.booking-step-title{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:700;font-size:16px;margin:0}.booking-step-desc{color:#5f6963;font-family:outfit,sans-serif;font-weight:400;font-size:14px;line-height:1.5;margin:0}.booking-flow{background:var(--guia-bg-warm);display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding:80px 80px 100px}.booking-flow-column{min-width:0;display:flex;flex-direction:column;gap:32px}.booking-flow-heading{display:flex;flex-direction:column;gap:16px}.booking-flow-eyebrow{color:var(--guia-accent);font-family:outfit,sans-serif;font-weight:700;font-size:14px;text-transform:uppercase;margin:0}.booking-flow-title{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:800;font-size:44px;line-height:1.15;margin:0}.booking-flow-desc{color:#5f6963;font-family:outfit,sans-serif;font-weight:400;font-size:16px;line-height:1.5;margin:0}.booking-calendar-card{background:#fff;border:1px solid var(--guia-border);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:24px;box-sizing:border-box;box-shadow:0 4px 6px rgba(44,53,48,4%)}.booking-calendar-nav{display:flex;align-items:center;justify-content:space-between}.booking-calendar-month{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:800;font-size:18px;margin:0}.booking-calendar-nav-buttons{display:flex;gap:8px}.booking-calendar-nav-btn{width:32px;height:32px;border-radius:16px;background:#ebf0ec;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.booking-calendar-grid{display:flex;flex-direction:column;gap:8px}.booking-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr)}.booking-calendar-weekdays span{height:40px;display:flex;align-items:center;justify-content:center;color:#5f6963;font-family:outfit,sans-serif;font-weight:600;font-size:13px}.booking-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);row-gap:8px}.booking-calendar-day{width:40px;height:40px;border-radius:20px;border:none;background:0 0;color:var(--guia-text);font-family:outfit,sans-serif;font-weight:500;font-size:13px;cursor:pointer;justify-self:center;padding:0}.booking-calendar-day.is-other-month,.booking-calendar-day.is-disabled{color:#c0c6c2}.booking-calendar-day.is-disabled{cursor:not-allowed}.booking-calendar-day.is-today{box-shadow:inset 0 0 0 1.5px var(--guia-button)}.booking-calendar-day.is-selected{background:var(--guia-accent);color:#fff;font-weight:700;box-shadow:none}.booking-calendar-divider{height:1px;background:var(--guia-border);width:100%;flex-shrink:0}.booking-slots-section{display:flex;flex-direction:column;gap:12px}.booking-slots-label{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:700;font-size:14px;margin:0}.booking-slots-list{display:flex;flex-wrap:wrap;gap:8px}.booking-slot-btn{padding:8px 16px;border-radius:8px;border:none;background:#ebf0ec;color:var(--guia-text);font-family:outfit,sans-serif;font-weight:600;font-size:13px;cursor:pointer}.booking-slot-btn.is-selected{background:var(--guia-accent);color:#fff}.booking-summary-card{min-width:0;background:#fff;border:1px solid var(--guia-border);border-radius:24px;padding:40px;display:flex;flex-direction:column;gap:28px;box-sizing:border-box;box-shadow:0 4px 6px rgba(44,53,48,4%)}.booking-summary-header{display:flex;flex-direction:column;gap:6px}.booking-summary-title{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:800;font-size:20px;margin:0}.booking-summary-subtitle{color:var(--guia-accent);font-family:outfit,sans-serif;font-weight:600;font-size:15px;margin:0}.booking-form-feedback{font-family:outfit,sans-serif;font-weight:600;font-size:14px;line-height:1.5;padding:14px 20px;border-radius:12px;width:100%;margin:0;box-sizing:border-box}.booking-form-feedback.is-success{background:#e3efe6;color:#2f5d3a}.booking-form-feedback.is-error{background:#f8e3e0;color:#8a3226}.booking-field-group{display:flex;flex-direction:column;gap:12px}.booking-field-label{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:600;font-size:14px;margin:0}.booking-modalita-option input,.booking-gdpr-row input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.booking-modalita-options{display:flex;gap:16px}.booking-modalita-option{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;border:1px solid var(--guia-border);background:#fff;cursor:pointer;box-sizing:border-box}.booking-modalita-option.is-selected{border:1.5px solid var(--guia-accent)}.booking-modalita-option:has(input:focus-visible){outline:2px solid var(--guia-button);outline-offset:2px}.booking-modalita-icon{width:18px;height:18px;flex-shrink:0;display:flex;color:#5f6963}.booking-modalita-icon svg{width:100%;height:100%;display:block}.booking-modalita-option.is-selected .booking-modalita-icon{color:var(--guia-accent)}.booking-modalita-label{color:#5f6963;font-family:outfit,sans-serif;font-weight:500;font-size:14px}.booking-modalita-option.is-selected .booking-modalita-label{color:var(--guia-text);font-weight:600}.booking-fields{display:flex;flex-direction:column;gap:20px}.booking-field{display:flex;flex-direction:column;gap:8px}.booking-field label{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:600;font-size:14px}.booking-summary-card input[type=text],.booking-summary-card input[type=email],.booking-summary-card input[type=tel],.booking-summary-card textarea{padding:12px 16px;border-radius:12px;border:1px solid var(--guia-border);background:#fff;font-family:outfit,sans-serif;font-weight:400;font-size:14px;color:var(--guia-text);box-sizing:border-box;width:100%}.booking-summary-card input[type=text],.booking-summary-card input[type=email],.booking-summary-card input[type=tel]{height:48px}.booking-summary-card textarea{height:96px;resize:vertical;line-height:1.5}.booking-summary-card input::placeholder,.booking-summary-card textarea::placeholder{color:#5f6963;opacity:1}.booking-summary-card input:focus,.booking-summary-card textarea:focus{outline:none;border-color:var(--guia-accent)}.booking-gdpr-row{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.booking-gdpr-box{width:20px;height:20px;border-radius:4px;border:1.5px solid var(--guia-border);background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box}.booking-gdpr-box img{display:none;width:12px;height:12px}.booking-gdpr-row input:checked~.booking-gdpr-box{border-color:var(--guia-accent)}.booking-gdpr-row input:checked~.booking-gdpr-box img{display:block}.booking-gdpr-row:has(input:focus-visible) .booking-gdpr-box{outline:2px solid var(--guia-button);outline-offset:2px}.booking-gdpr-text{color:#5f6963;font-family:outfit,sans-serif;font-weight:400;font-size:13px;line-height:18px}.booking-gdpr-text a{color:var(--guia-text);text-decoration:underline}.booking-cta-area{display:flex;flex-direction:column;align-items:center;gap:16px}.booking-submit-btn{width:100%;background:var(--guia-accent);color:#fff;font-family:outfit,sans-serif;font-weight:700;font-size:16px;padding:16px;border-radius:30px;border:none;cursor:pointer}.booking-submit-btn:disabled{opacity:.5;cursor:not-allowed}.booking-cta-microcopy{color:#5f6963;font-family:outfit,sans-serif;font-weight:500;font-size:13px;text-align:center;margin:0}.booking-reassurance{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:80px;align-items:start}.booking-reassurance:not(:has(.booking-reassurance-image-wrap)){grid-template-columns:1fr}.booking-reassurance-text{min-width:0;display:flex;flex-direction:column;gap:24px}.booking-reassurance-title{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:800;font-size:32px;margin:0}.booking-reassurance-desc{color:#5f6963;font-family:outfit,sans-serif;font-weight:400;font-size:16px;line-height:1.6;margin:0}.booking-reassurance-points{display:flex;flex-direction:column;gap:16px}.booking-reassurance-point{display:flex;gap:16px;align-items:flex-start}.booking-reassurance-point img{flex-shrink:0}.booking-reassurance-point-title{color:var(--guia-text);font-family:outfit,sans-serif;font-weight:700;font-size:15px;margin:0 0 4px}.booking-reassurance-point-desc{color:#5f6963;font-family:outfit,sans-serif;font-weight:400;font-size:14px;line-height:1.5;margin:0}.booking-reassurance-image-wrap{min-width:0;height:380px;border-radius:24px;overflow:hidden}.booking-reassurance-image{width:100%;height:100%;object-fit:cover;display:block}@media(min-width:641px) and (max-width:1024px){.booking-hero{padding:60px 48px 32px;gap:24px}.booking-hero-title{font-size:40px}.booking-hero-desc{font-size:18px}.booking-steps{padding:20px 48px 40px;gap:16px}.booking-step-card{padding:20px}.booking-flow{grid-template-columns:1fr;padding:60px 48px 72px;gap:32px}.booking-flow-title{font-size:34px}.booking-summary-card{padding:32px}.booking-reassurance{grid-template-columns:1fr;padding:60px 48px;gap:32px}.booking-reassurance-title{font-size:28px}.booking-reassurance-image-wrap{width:100%;height:320px}}@media(max-width:640px){.booking-hero{padding:48px 20px 24px;gap:16px}.booking-hero-eyebrow{font-size:13px}.booking-hero-title{font-size:30px}.booking-hero-desc{font-size:16px}.booking-steps{flex-direction:column;padding:16px 20px 32px;gap:12px}.booking-step-card{padding:20px}.booking-flow{grid-template-columns:1fr;padding:48px 20px 56px;gap:24px}.booking-flow-heading{gap:12px}.booking-flow-title{font-size:28px}.booking-calendar-card{padding:20px;border-radius:20px;gap:20px}.booking-summary-card{padding:24px;border-radius:20px;gap:24px}.booking-modalita-options{flex-direction:column;gap:12px}.booking-reassurance{grid-template-columns:1fr;padding:48px 20px;gap:24px}.booking-reassurance-title{font-size:26px}.booking-reassurance-image-wrap{width:100%;height:240px}}