.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking-section{background:var(--color-bg-section)}.booking-section--embedded{background:0 0}.booking-section__header{text-align:center;margin-bottom:2.5rem}.booking-section__header h2{color:var(--color-dark);margin-bottom:.5rem;font-size:clamp(1.5rem,3vw,2rem)}.booking-section__header p{color:var(--color-text-muted);max-width:520px;margin:0 auto;font-size:1.05rem}.booking-section__grid{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}.booking-section__grid--form-only{grid-template-columns:1fr}.booking-form-card{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:1.75rem}.booking-form-card .booking-form__field{margin-bottom:.85rem}.booking-form-card .booking-form__field input,.booking-form-card .booking-form__field select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;font-family:var(--font-main);color:var(--color-text);appearance:none;background:#fff;padding:.85rem 1rem;font-size:1rem}.booking-form-card .booking-form__field input::placeholder{color:var(--color-text-muted)}.booking-form-card .booking-form__field select{color:var(--color-text-muted);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23656a7a' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.booking-form-card .booking-form__field select:valid,.booking-form-card .booking-form__field select option{color:var(--color-text)}.booking-form-card .booking-form__field input:focus,.booking-form-card .booking-form__field select:focus{border-color:var(--color-blue);outline:none;box-shadow:0 0 0 3px #1d7cc933}.booking-form__date{border:1px solid var(--color-border);border-radius:var(--radius);background:#fff;align-items:center;gap:.5rem;padding:0 1rem;display:flex}.booking-form__date:focus-within{border-color:var(--color-blue);box-shadow:0 0 0 3px #1d7cc933}.booking-form__date-label{color:var(--color-text);flex-shrink:0;font-size:1rem;font-weight:400}.booking-form__date input{flex:1;min-width:0;box-shadow:none!important;border:none!important;padding:.85rem 0!important}.booking-form__note{color:var(--color-text-muted);margin:.25rem 0 .85rem;font-size:.8rem;line-height:1.4}.booking-form__submit{border-radius:999px;width:100%;margin-top:.5rem;padding:.9rem 1.5rem;font-size:1.05rem}.booking-form__privacy{color:var(--color-text-muted);text-align:center;margin-top:.85rem;font-size:.8rem;line-height:1.4}.booking-form__privacy a{color:var(--color-blue)}.booking-form .form-status.success{color:#155724;border-radius:var(--radius);background:#d4edda;margin-top:1rem;padding:.75rem;display:block!important}.booking-form .form-status.error{color:#721c24;border-radius:var(--radius);background:#f8d7da;margin-top:1rem;padding:.75rem;display:block!important}.booking-benefits__grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.booking-benefit-card{border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:140px;padding:1.5rem 1.25rem;display:flex}.booking-benefit-card__icon{object-fit:contain;width:56px;height:56px}.booking-benefit-card p{color:var(--color-text);margin:0;font-size:.95rem;line-height:1.35}.booking-section--embedded .booking-section__header{text-align:left;margin-bottom:1rem}.booking-section--embedded .booking-section__header h2,.booking-section--embedded .booking-section__header h3{margin-bottom:.35rem;font-size:1.35rem}.booking-section--embedded .booking-section__header p{margin:0;font-size:.95rem}@media (width<=992px){.booking-section__grid{grid-template-columns:1fr}.booking-benefits__grid{grid-template-columns:1fr 1fr}}@media (width<=576px){.booking-benefits__grid{grid-template-columns:1fr}.booking-form-card{padding:1.25rem}.booking-form-card .booking-form__field input,.booking-form-card .booking-form__field select{min-height:44px;padding-top:.75rem;padding-bottom:.75rem}.booking-form__date input{min-height:44px}.booking-form__submit{min-height:48px}}
