/* Shared motion: progressive enhancement, with a persistent pause control. */
.motion-enter { animation:page-arrive .65s ease both; }
.reveal-ready { opacity:0; transform:translateY(22px); transition:opacity .65s ease var(--reveal-delay,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms); }
.reveal-ready.is-visible { opacity:1; transform:none; }
.reveal-ready:focus-within { opacity:1; transform:none; }
.navbar { transition:box-shadow .3s,background-color .3s; }.navbar.has-scrolled { box-shadow:0 6px 25px rgba(0,0,0,.06); }
.btn { transition:transform .22s,background-color .22s,box-shadow .22s; }.btn:hover { transform:translateY(-3px); }.btn:active { transform:translateY(0) scale(.98); }
.country-card,.uni-card,.article-card,.support-card,.support-feature { transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease; }
.country-card:hover,.uni-card:hover,.article-card:hover,.support-card:hover { transform:translateY(-5px); box-shadow:0 14px 30px rgba(0,0,0,.05); }
.country-card-img img { transition:transform .6s ease; }.country-card:hover .country-card-img img { transform:scale(1.04); }
:focus-visible { outline:3px solid var(--brand-orange); outline-offset:4px; }
.motion-control { position:fixed; bottom:18px; left:18px; z-index:990; border:1px solid var(--border-color); border-radius:30px; color:var(--primary-navy); background:var(--bg-white); padding:9px 14px; font:600 10px var(--font-body); cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.05); }
html.motion-paused *,html.motion-paused *::before,html.motion-paused *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
html.motion-paused .reveal-ready { opacity:1; transform:none; }
@keyframes page-arrive { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }.reveal-ready { opacity:1; transform:none; } }
@media(hover:none) { .btn:hover,.country-card:hover,.uni-card:hover,.article-card:hover,.support-card:hover { transform:none; } }
