.hero-slider,
.slide-content {
    height: 100vh;
}

.slide-content {
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: center;
}

.slide-overlay {
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.3));
}

.slide-text {
    position:relative;
    z-index:2;
    max-width:700px;
    color:#fff;
    animation: fadeUp 1s ease forwards;
}

.slide-text h1 {
    font-size:3rem;
    font-weight:800;
    text-shadow:0 10px 30px rgba(0,0,0,.6);
}

.slide-text .lead {
    font-size:1.2rem;
    margin:1.5rem 0;
}

.btn-primary {
    padding:14px 36px;
    border-radius:12px;
    background:linear-gradient(45deg,#0d6efd,#0dcaf0);
    border:none;
}

.carousel-control-prev,
.carousel-control-next {
    width:60px;
    height:60px;
    background:rgba(255,255,255,.15);
    border-radius:50%;
    top:50%;
    transform:translateY(-50%);
    position:absolute;
    font-size:2rem;
    color:#fff;
}

@keyframes fadeUp {
    from {opacity:0; transform:translateY(30px)}
    to {opacity:1; transform:none}
}

@media(max-width:768px){
    .slide-text h1 {font-size:2rem;}
}
