/* Keep native date controls inside the form, including Safari on iPhone. */
#booking-form .form-grid input[type="date"]{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;max-width:100%;min-width:0;inline-size:100%;max-inline-size:100%;min-inline-size:0;min-height:54px;text-align:left}
#booking-form .form-grid input[type="date"]::-webkit-date-and-time-value{min-width:0;text-align:left}
#booking-form .form-grid input[type="date"]::-webkit-datetime-edit{min-width:0;padding:0}
body[data-page="contact.html"] #booking-form{padding:32px;background:#f8f7f2;border:1px solid #d5d7cf;border-radius:28px;box-shadow:0 10px 35px #173f4706}
#booking-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;margin:0}
#booking-form .form-grid>label{display:flex;flex-direction:column;gap:9px;align-self:start;min-width:0;font-size:12px;letter-spacing:.2px;line-height:1.5;font-weight:500;color:#48666e}
#booking-form .form-grid>[data-contact-field="nome"],#booking-form .form-grid>[data-contact-field="imbarcazione"],#booking-form .form-grid>.boat-scope-note{grid-column:1/-1}
#booking-form .form-grid :is(input,select,textarea){display:block;box-sizing:border-box;min-height:54px;width:100%;min-width:0;padding:14px 16px;background:#fffef9;border:1px solid #cbd3ca;border-radius:14px!important;color:#173f47;font-size:16px;line-height:1.4;outline:none;box-shadow:0 2px 3px #173f4703;transition:border-color .2s,box-shadow .2s}
#booking-form .form-grid input::placeholder{color:#778a8e;opacity:1;font-size:15px}
#booking-form .form-grid select{padding-right:32px;cursor:pointer}
#booking-form .form-grid :is(input,select,textarea):focus-visible{border-color:#a79165;box-shadow:0 0 0 3px #a7916526;outline:2px solid transparent}
#booking-form #capacity-note{font-size:11px;line-height:1.6;margin:0;color:#647f87;letter-spacing:0}
#booking-form #capacity-note:empty{display:none}
#booking-form .boat-scope-note{margin:0;font-size:12px;line-height:1.7;color:#647f87}
#booking-form .contact-selection{margin:0 0 30px;padding:24px;background:#efeee6;border-radius:20px}
#booking-form .booking-privacy-notice{margin:26px 0 0;font-size:12px;line-height:1.8;color:#647f87}
#booking-form .booking-privacy-notice .underlined{font-size:12px}
#booking-form .form-actions{display:flex;gap:12px;align-items:stretch;margin-top:24px;flex-wrap:wrap}
#booking-form .form-actions .button{min-height:54px;flex:1;justify-content:space-between;font-size:14px;padding:16px 20px;gap:18px}
#booking-form>.fine{font-size:12px;line-height:1.8;margin-bottom:0;color:#647f87}
@media(max-width:600px){body[data-page="contact.html"] #booking-form{padding:24px 18px;border-radius:24px}#booking-form .form-grid{grid-template-columns:minmax(0,1fr);gap:20px}#booking-form .form-grid>label{grid-column:1/-1}#booking-form .contact-selection{padding:20px 16px;margin-bottom:26px}#booking-form .form-actions{flex-direction:column}#booking-form .form-actions .button{width:100%}}
#booking-form .form-grid>[data-contact-field="messaggio"]{grid-column:1/-1}
#booking-form .form-grid textarea[name="messaggio"]{min-height:145px;resize:vertical;margin:0}
#booking-form #request-message-hint{font-size:11px;font-weight:400;letter-spacing:0;color:#647f87}

#booking-form .departure-choice{grid-column:1/-1;background:#f5f3eb;border:1px solid #d6dcd2;border-radius:18px;padding:20px}#booking-form .departure-choice label{margin:0}#booking-form .departure-choice select{width:100%;max-width:280px;min-width:0}#booking-form .departure-hint{font-size:14px;line-height:1.8;color:#173f47;margin:12px 0}#booking-form .departure-choice .fine{display:block;font-size:12px;line-height:1.8}#booking-form .departure-choice[hidden],#booking-form .departure-choice [hidden]{display:none!important}
#booking-form .booking-schedule-notice h3{font-size:14px;line-height:1.5;margin:0 0 8px;font-weight:600}#booking-form .booking-schedule-notice p{margin:8px 0 0}
