*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#0b0b0b;
    color:#fff;
    font-family:tahoma;
}

.recommendation-header{
    position:relative;
    width:100%;
    height:500px;
    background:url("../images/banner.jpg");
    background-size:cover;
    background-position:center;
    overflow:hidden;
}

.overlay{
    position:absolute;
    width:100%;
    height:100%;
    background:linear-gradient(to top,#0b0b0b 5%,rgba(0,0,0,.45));
}

.hero-content{
    position:absolute;
    top:50%;
    right:8%;
    transform:translateY(-50%);
    z-index:10;
}

.hero-content h1{
    font-size:65px;
    margin-bottom:15px;
}

.hero-content p{
    color:#c9c9c9;
    font-size:20px;
    width:520px;
    line-height:35px;
    margin-bottom:35px;
}

.hero-content a{
    display:inline-block;
    text-decoration:none;
    background:#e50914;
    color:#fff;
    padding:16px 34px;
    border-radius:8px;
    transition:.3s;
    font-size:17px;
}

.hero-content a:hover{
    background:#c30711;
}

.recommendation-section{
    width:92%;
    max-width:1450px;
    margin:auto;
    padding:70px 0;
}

.section-title{
    margin-bottom:35px;
}

.section-title h2{
    font-size:34px;
    position:relative;
}

.section-title h2::after{
    content:"";
    width:90px;
    height:4px;
    background:#e50914;
    position:absolute;
    bottom:-12px;
    right:0;
    border-radius:30px;
}

.movie-grid{
    display:flex;
    flex-wrap:wrap;
    gap:25px;
    justify-content:flex-start;
    align-items:flex-start;
}

.movie-card{
    width:280px;
    background:#181818;
    border-radius:16px;
    overflow:hidden;
    transition:.3s;
    flex-shrink:0;
}

.movie-card:hover{
    transform:translateY(-12px);
    border-color:#e50914;
    box-shadow:0 20px 45px rgba(0,0,0,.55);

}

.poster{
    width:100%;
    height:360px;
    overflow:hidden;
}

.poster img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.45s;
}

.movie-card:hover .poster img{
    transform:scale(1.08);
}

.movie-info{
    padding:22px;
}

.movie-info h3{
    font-size:24px;
    color:#fff;
    margin-bottom:14px;
}

.movie-meta{
    display:flex;
    justify-content:space-between;
    margin-bottom:18px;
}

.movie-meta span{
    background:#222;
    color:#d9d9d9;
    padding:8px 14px;
    border-radius:30px;
    font-size:13px;
}

.movie-info p{
    color:#b8b8b8;
    line-height:30px;
    height:90px;
    overflow:hidden;
    margin-bottom:25px;
}

.movie-footer{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-top:1px solid #2b2b2b;
    padding-top:18px;
}

.movie-footer span{
    color:#9d9d9d;
    font-size:14px;
}

.movie-footer a{
    text-decoration:none;
    background:#e50914;
    color:#fff;
    padding:10px 22px;
    border-radius:8px;
    transition:.3s;
}

.movie-footer a:hover{
    background:#c40812;
}

.movie-card::before{
    content:"";
    position:relative;
    top:0;
    left:-120%;
    width:70%;
    height:100%;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.12),transparent);
    transition:.8s;
}

.movie-card:hover::before{
    left:130%;
}

.movie-meta{
display:flex;
justify-content:space-between;
margin:18px 0;
}

.movie-meta div{
background:#1c1c1c;
padding:8px 14px;
border-radius:25px;
font-size:13px;
color:#ddd;
}

.movie-stats{
display:flex;
justify-content:space-between;
gap:10px;
margin-bottom:20px;
}

.stat{
flex:1;
background:#1d1d1d;
border:1px solid #2d2d2d;
padding:12px;
border-radius:10px;
text-align:center;
font-size:15px;
font-weight:bold;
transition:.3s;
}

.stat:hover{
border-color:#e50914;
background:#262626;
}