/* REVIX operational UX refinements. Do not override approved chatbot or fixed bottom navigation. */
:where(button,a,input,textarea,select):focus-visible{outline:3px solid #38a8ec;outline-offset:3px}
:where(.booking-modal,.consult-modal,.contact-form-panel) input:focus,:where(.booking-modal,.consult-modal,.contact-form-panel) select:focus,:where(.booking-modal,.consult-modal,.contact-form-panel) textarea:focus{border-color:#128ddd!important;box-shadow:0 0 0 3px rgba(15,144,221,.11)}
.modal-backdrop:not([hidden]){overscroll-behavior:contain}
@media(max-width:760px){
  .modal-backdrop .modal{width:min(100% - 16px,580px)!important;max-height:calc(100dvh - 20px)!important;overflow-x:hidden!important;overscroll-behavior:contain!important;padding-bottom:max(22px,env(safe-area-inset-bottom))!important}
  .modal-backdrop .modal :where(input:not([type=checkbox]),select,textarea){font-size:16px!important;max-width:100%!important;min-width:0}
  .modal-backdrop .modal .form-grid{grid-template-columns:minmax(0,1fr)!important}
  .modal-backdrop .modal label{overflow-wrap:break-word}
  .modal-backdrop .modal .consent{align-items:flex-start;gap:9px;line-height:1.9}
  .modal-backdrop .modal .consent input{min-width:18px;min-height:18px;flex-shrink:0}
}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto!important}.wow,.wow *,[data-reveal],[data-reveal] *{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}
