#booking-form .phone-field{display:flex;flex-direction:column;gap:9px;min-width:0;align-self:start}#booking-form .phone-field>label{font-size:12px;letter-spacing:.2px;line-height:1.5;font-weight:500;color:#48666e}
#booking-form .phone-control{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:stretch;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:54px;border:1px solid #cbd3ca;border-radius:14px;background:#fffef9;box-shadow:0 2px 3px #173f4703;overflow:hidden}
#booking-form .phone-prefix{position:relative;display:flex;align-items:center;min-width:0;border-right:1px solid #dce1d8;padding:10px 10px}
#booking-form .phone-prefix-display{display:block;white-space:nowrap;font-size:15px;color:#173f47;letter-spacing:0}
#booking-form .phone-prefix:after{content:'▾';position:absolute;right:7px;font-size:11px;color:#647f87;pointer-events:none}
#booking-form .form-grid .phone-prefix select{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer;border:0;z-index:1}
#booking-form .form-grid .phone-control>input[type=tel]{width:100%;max-width:100%;min-width:0;min-height:52px;margin:0;border:0;border-radius:0!important;padding:14px 12px;background:transparent;box-shadow:none;font-size:16px}
#booking-form .phone-control:focus-within{border-color:#a79165;box-shadow:0 0 0 3px #a7916526}
#booking-form .form-grid .phone-control>input[type=tel]:focus-visible{box-shadow:none;outline:none}
#booking-form .phone-hint{font-size:11px;line-height:1.6;color:#647f87;letter-spacing:0;font-weight:400}
@media(max-width:360px){#booking-form .phone-control{grid-template-columns:98px minmax(0,1fr)}#booking-form .phone-prefix-display{font-size:14px}}
