.banner-container{position:relative;width:100%;height:400px;overflow:hidden;margin-top:2rem;margin-bottom:2rem;box-shadow:0 10px 30px rgba(0,0,0,.1)}.banner-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;transition:opacity .8s ease-in-out,visibility .8s ease-in-out;background-size:cover;background-position:50%}.banner-slide.active{opacity:1;visibility:visible}.banner-content{position:absolute;top:80%;left:50%;transform:translate(-50%,-50%);color:white;max-width:600px;text-align:center;z-index:10;width:100%}.banner-title{font-size:1.5rem;font-weight:400}.banner-button,.banner-title{margin:0;text-shadow:0 2px 10px rgba(0,0,0,.5);font-family:Inter,Outfit,sans-serif;letter-spacing:-.5px}.banner-button{font-size:1rem;font-weight:500;background-color:rgba(255,255,255,.2);border:2px solid white;color:white;padding:1rem 2rem;border-radius:50px;cursor:pointer;transition:background-color .3s ease,transform .2s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.banner-button:hover{background-color:rgba(255,255,255,.4);transform:scale(1.05);box-shadow:0 5px 15px rgba(0,0,0,.3)}.banner-dots-container{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);display:flex;gap:.75rem;z-index:10}.banner-dot{width:12px;height:12px;border-radius:50%;border:none;background-color:rgba(255,255,255,.4);cursor:pointer;transition:all .3s cubic-bezier(.25,.8,.25,1);transform:scale(1);box-shadow:none;padding:0}.banner-dot.active{background-color:#ffffff;transform:scale(1.2);box-shadow:0 0 10px rgba(255,255,255,.5)}