body{margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overflow-y:auto}#root,body{display:flex;flex-direction:column;min-height:100vh}.footer{margin-top:auto;width:100%;padding:20px;border-top:1px solid #eaeaea}*{-ms-overflow-style:none;scrollbar-width:thin;box-sizing:border-box}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsla(0,0%,50%,.3);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,50%,.5)}.search-transition{transition:all .3s ease-in-out}.search-card{border-radius:8px;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.search-card:hover{transform:translateY(-4px);box-shadow:0 4px 20px rgba(0,0,0,.1)}.slideshow{position:relative;width:100%;height:400px;overflow:hidden}.slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .5s ease-in-out}.slide.active{opacity:1}.slide-content{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff}.slideshow-nav{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:2}.slideshow-dot{width:10px;height:10px;border-radius:50%;background:hsla(0,0%,100%,.5);cursor:pointer;transition:background-color .3s ease}.slideshow-dot.active{background:#fff}html{scroll-behavior:smooth}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.fade-in{animation:fadeIn .6s ease-out}.slide-in-left{animation:slideInLeft .6s ease-out}.slide-in-right{animation:slideInRight .6s ease-out}.MuiCard-root,.MuiPaper-root,a,button{transition:all .3s cubic-bezier(.4,0,.2,1)}.loading-shimmer{background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.2) 50%,hsla(0,0%,100%,0));background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}