@media(prefers-reduced-motion:no-preference){
 .button,.install-button,.text-button,.map-hospital-result,.app-nav a{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
 .main-nav a{position:relative}.main-nav a::after{content:"";height:2px;background:var(--accent);position:absolute;bottom:9px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.main-nav a:hover::after,.main-nav a:focus-visible::after{transform:scaleX(1)}
 .campaign-poster-image img,.ima-office-bearer img,.safety-creative>img{transition:transform .5s cubic-bezier(.22,.68,0,1)}
 .campaign-poster-image,.ima-office-bearer>a{overflow:hidden}
 dialog[open]{animation:dialog-appear .18s ease-out}::backdrop{animation:backdrop-appear .18s ease-out}
 .popup-copy-status:not(:empty),.hospital-copy-feedback:not(:empty){animation:feedback-appear .18s ease-out}
 @media(hover:hover){.button:not(:disabled):hover,.install-button:hover{box-shadow:0 4px 12px var(--shadow)}.campaign-poster-image:hover img,.ima-office-bearer a:hover img{transform:scale(1.025)}.safety-creative:hover>img{transform:scale(1.015)}}
}
@keyframes dialog-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes backdrop-appear{from{opacity:0}to{opacity:1}}
@keyframes feedback-appear{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
