/* Shared motion system for the public website. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1)}
body.motion-ready .header-top{animation:uniSlideDown .65s var(--motion-ease) both}
body.motion-ready .main-navigation{animation:uniSlideDown .8s .08s var(--motion-ease) both}
.navbar-brand img{transition:transform .45s var(--motion-ease),filter .45s ease}.navbar-brand:hover img{transform:translateY(-3px) rotate(-2deg) scale(1.06);filter:drop-shadow(0 8px 8px rgba(16,42,86,.2))}
.navbar-nav .nav-link{position:relative;transition:color .25s ease,transform .25s var(--motion-ease)}.navbar-nav .nav-link::after{content:"";position:absolute;right:16px;bottom:8px;left:16px;height:2px;border-radius:2px;background:var(--theme-color2,#b82b2b);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--motion-ease)}.navbar-nav .nav-link:hover{transform:translateY(-2px)}.navbar-nav .nav-link:hover::after,.navbar-nav .active>.nav-link::after{transform:scaleX(1);transform-origin:left}
.dropdown-menu{transform-origin:top center}.dropdown-menu.show{animation:uniMenuIn .3s var(--motion-ease) both}.header-top-social a,.header-top-contact a{transition:transform .25s var(--motion-ease),color .25s ease}.header-top-social a:hover{transform:translateY(-3px) rotate(6deg)}.header-top-contact a:hover{transform:translateY(-1px)}
.theme-btn{position:relative;isolation:isolate;overflow:hidden;transition:transform .3s var(--motion-ease),box-shadow .3s ease!important}.theme-btn::after{content:"";position:absolute;z-index:-1;top:-80%;left:-45%;width:28%;height:260%;background:rgba(255,255,255,.25);transform:rotate(24deg) translateX(-250%);transition:transform .65s var(--motion-ease)}.theme-btn:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(16,42,86,.2)}.theme-btn:hover::after{transform:rotate(24deg) translateX(650%)}
.motion-reveal{opacity:0;transform:translateY(34px);transition:opacity .75s var(--motion-ease),transform .75s var(--motion-ease);transition-delay:var(--motion-delay,0ms);will-change:opacity,transform}.motion-reveal.motion-left{transform:translateX(-38px)}.motion-reveal.motion-right{transform:translateX(38px)}.motion-reveal.motion-visible{opacity:1;transform:none;will-change:auto}
.motion-card{transition:transform .4s var(--motion-ease),box-shadow .4s ease!important}.motion-card:hover{transform:translateY(-7px);box-shadow:0 18px 42px rgba(16,42,86,.14)!important}.motion-image{overflow:hidden}.motion-image img{transition:transform .7s var(--motion-ease),filter .5s ease}.motion-image:hover img{transform:scale(1.045);filter:saturate(1.06)}
.site-breadcrumb::before{animation:uniFadeIn .9s ease both}.site-breadcrumb .breadcrumb-title{animation:uniRise .75s .12s var(--motion-ease) both}.site-breadcrumb .breadcrumb-menu{animation:uniRise .75s .22s var(--motion-ease) both}.fixed-top{animation:uniStickyIn .45s var(--motion-ease) both;box-shadow:0 8px 30px rgba(16,42,86,.12)}
#scroll-top{transition:transform .3s var(--motion-ease),box-shadow .3s ease}#scroll-top:hover{transform:translateY(-5px) rotate(-4deg);box-shadow:0 10px 22px rgba(0,0,0,.2)}
@keyframes uniSlideDown{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}@keyframes uniMenuIn{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}@keyframes uniRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes uniFadeIn{from{opacity:0}to{opacity:1}}@keyframes uniStickyIn{from{transform:translateY(-100%)}to{transform:none}}
@media(max-width:991px){.navbar-nav .nav-link::after{right:auto;bottom:4px;left:0;width:42px}.navbar-nav .nav-link:hover{transform:translateX(4px)}.dropdown-menu.show{animation:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-reveal{opacity:1!important;transform:none!important}}
