/* Mobile / cross-browser hygiene: iOS Safari + Chrome/Edge/Brave/Arc/Opera/Samsung/Firefox on phones and tablets */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
a,button,[role="button"],summary,label,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
/* 100vh includes the browser's address bar on phones: use the dynamic viewport where it exists */
@supports (height:100dvh){
  body{min-height:100dvh}
  .pfs-stage,.pfs.open{height:100dvh!important}
  #splash.splash,#splash .logo-loader-stage,.splash-stage.logo-loader-stage{height:100dvh!important;min-height:100dvh!important}
  .modal-panel{max-height:calc(100dvh - 24px)}
  #rosemarieModal .modal-panel{max-height:calc(100dvh - 18px)!important}
  .rg-orbit-section{min-height:100dvh}
}
/* iOS zooms the page when a field under 16px gets focus */
@media (hover:none) and (pointer:coarse){
  input:not([type="range"]):not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea{font-size:16px!important}
}
video{background:#000}
