/* Consistent international phone fields in package bookings, planner and general contact. */
.oc-booking-form .iti,.oc-plan-form .iti,.contact-page-form .iti{display:block;width:100%;max-width:100%;min-width:0}
.oc-booking-form input[data-international-phone],.oc-plan-form input[data-international-phone],.contact-page-form input[data-international-phone]{width:100%;max-width:100%;box-sizing:border-box}
.oc-booking-form .iti input[type=tel],.oc-plan-form .iti input[type=tel],.contact-page-form .iti input[type=tel]{width:100%;box-sizing:border-box}
.iti{--iti-border-color:#dfd0c6;--iti-dialcode-color:#4e281b;--iti-arrow-color:#785e50;--iti-hover-color:#f9eee7;--iti-path-flags-1x:url('https://cdn.jsdelivr.net/npm/intl-tel-input@29.5.5/dist/img/flags.webp');--iti-path-flags-2x:url('https://cdn.jsdelivr.net/npm/intl-tel-input@29.5.5/dist/img/flags@2x.webp');--iti-path-globe-1x:url('https://cdn.jsdelivr.net/npm/intl-tel-input@29.5.5/dist/img/globe.webp');--iti-path-globe-2x:url('https://cdn.jsdelivr.net/npm/intl-tel-input@29.5.5/dist/img/globe@2x.webp')}
.iti__country-container{z-index:2}
.iti__selected-country{background:rgba(78,40,27,.035);border-radius:10px 0 0 10px}
.iti__selected-country:hover,.iti__selected-country:focus-visible{background:rgba(238,106,41,.10)}
.iti__dropdown-content{z-index:100000!important;box-shadow:0 15px 40px rgba(41,23,13,.20);border:1px solid #e3d1c6;border-radius:12px;max-height:min(330px,70dvh)}
.iti__country-list{max-height:245px;overscroll-behavior:contain}
.iti__search-input{font-size:14px;padding:10px}
.iti__country.iti__highlight{background:#fbede5}
.oc-phone-error{display:block;font-size:12px;line-height:1.45;color:#b32620;margin-top:5px;min-height:0}
.oc-phone-error:empty{display:none}
input[data-international-phone][aria-invalid=true]{border-color:#bd3c32!important;box-shadow:0 0 0 2px rgba(189,60,50,.10)}
.oc-booking-dialog .iti__dropdown-content{max-height:min(350px,60dvh)}
@media(max-width:650px){.iti--container{z-index:99999!important}.iti__dropdown-content{max-height:min(360px,62dvh)}}

/* Clear form-level errors without masking native required-field validation. */
.oc-phone-form-summary{color:#8f2c1b!important;background:#fff3ec!important;border:1px solid #eabfae!important;border-radius:10px;padding:11px 13px;font-size:13px;line-height:1.6;margin:0 0 10px!important;}
.oc-phone-form-summary[hidden]{display:none!important;}
.oc-booking-phone-help{display:block;font-size:11px;font-weight:400!important;line-height:1.5;color:#77655c;margin-top:4px;}
