@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap");

/*================ Banner =================*/

.banner{
    position:relative;
    width:100%;
    height:90vh;
    overflow:hidden;
}

.slide{
    position:absolute;
    inset:0;
    opacity:0;
    transition:opacity 1s ease;
}

.slide.active{
    opacity:1;
    z-index:1;
}

.slide img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

/* Overlay */

.slide::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to right,
        rgba(0,0,0,.75) 0%,
        rgba(0,0,0,.45) 45%,
        rgba(0,0,0,0) 100%);
}



/*================ Content =================*/

.banner-content{

    position:absolute;
    top:50%;
    left:8%;
    transform:translateY(-50%);
    color:#fff;
    max-width:600px;
    z-index:10;

}

.banner-content h1{
  font-family: "Outfit", sans-serif;

    font-size:48px;
    line-height:1.1;
    margin-bottom:20px;

}

.banner-content p{
  font-family: "Outfit", sans-serif;

    font-size:18px;
    line-height:30px;
    margin-bottom:35px;

}

.banner-content a{
  font-family: "Outfit", sans-serif;

    display:inline-block;
    padding:15px 35px;
    background:#efc96a;
    color:#0a2342;
    text-decoration:none;
    border-radius:4px;
    transition:.3s;

}

.banner-content a:hover{

    background:#fff;
    color:#000;

}

/*================ Arrows =================*/

.arrow{

    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:55px;
    height:55px;
    border-radius:50%;
    background:rgba(255,255,255,.15);
    backdrop-filter:blur(6px);
    color:#fff;
    font-size:28px;
    display:flex;
    justify-content:center;
    align-items:center;
    cursor:pointer;
    transition:.3s;
    z-index:20;
    user-select:none;

}

.arrow:hover{

    background:#ff6600;

}

.prev{

    left:25px;

}

.next{

    right:25px;

}

/*================ Tablet =================*/

@media(max-width:991px){

.banner{

    height:80vh;

}

.banner-content h1{

    font-size:44px;

}

.banner-content p{

    font-size:16px;

}

}

/*================ Mobile =================*/

@media(max-width:768px){

.banner{

    height:70vh;

}

/* Full overlay */

.slide::before{

    background:rgba(0,0,0,.55);

}

.banner-content{

    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:90%;
    max-width:100%;
    text-align:center;

}

.banner-content h1{

    font-size:34px;
    margin-bottom:15px;

}

.banner-content p{

    font-size:16px;
    line-height:26px;
    margin-bottom:25px;

}

.banner-content a{

    padding:12px 28px;

}

.arrow{

    width:45px;
    height:45px;
    font-size:22px;

}

.prev{

    left:15px;

}

.next{

    right:15px;

}

}

/*================ Small Mobile =================*/

@media(max-width:480px){

.banner{

    height:60vh;

}

.banner-content{

    width:92%;

}

.banner-content h1{

    font-size:28px;

}

.banner-content p{

    font-size:14px;
    line-height:22px;

}

.banner-content a{

    padding:10px 24px;
    font-size:14px;

}

.arrow{

    width:40px;
    height:40px;
    font-size:20px;

}

.prev{
    left:10px;
}

.next{
    right:10px;
}

}

.banner-inner {
    width: 100%;
    height: 450px;
    margin: 0 auto;

    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    position: relative;
}

.banner-inner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(10, 35, 66, 0.75);
    z-index: 1;
}

.banner-inner-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 0 20px;
}

.banner-inner-content h2 {
    font-family: "Outfit", sans-serif;
    font-size: 40px;
    color: #fff;
    font-weight: 600;
    margin-bottom: 20px;
    line-height: 1.1;
}

.banner-inner-content p {
    font-family: "Outfit", sans-serif;
    font-size: 18px;
    color: #fff;
    font-weight: 500;
    line-height: 1.4;
}

.banner-inner-content p a {
    color: #fff;
    text-decoration: none;
}