.banner-carousel{position:relative;overflow:hidden}.banner-carousel .carousel-container{position:relative;height:100%;overflow:hidden;border-radius:0}.banner-carousel .carousel-slide{transition:transform .5s cubic-bezier(.4,0,.2,1)}.banner-carousel .carousel-controls{opacity:0;transition:opacity .3s ease-in-out}.banner-carousel:hover .carousel-controls{opacity:1}.banner-carousel .carousel-control{background:hsla(0,0%,100%,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid hsla(0,0%,100%,.1);transition:all .2s ease-in-out}.banner-carousel .carousel-control:hover{background:hsla(0,0%,100%,.3);transform:scale(1.05)}.banner-carousel .carousel-control:active{transform:scale(.95)}.banner-carousel .carousel-indicator{transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.banner-carousel .carousel-indicator.active{transform:scale(1.2);box-shadow:0 0 12px hsla(0,0%,100%,.6)}.banner-carousel .play-pause-btn{background:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid hsla(0,0%,100%,.1);transition:all .2s ease-in-out}.banner-carousel .play-pause-btn:hover{background:rgba(0,0,0,.5);transform:scale(1.1)}.banner-carousel .carousel-caption{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.banner-carousel .loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:768px){.banner-carousel .carousel-control{width:40px;height:40px}.banner-carousel .carousel-indicator{width:10px;height:10px}.banner-carousel .play-pause-btn{width:32px;height:32px}}