:root{
    --primary:#78814f;
    --dark:#17311d;
    --gold:#9b722c;
    --border:#e7dece;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#f7f4ed;
    font-family:'Poppins',sans-serif;
    overflow-x:hidden;
    color:#1d2a1f;
}

/* TYPOGRAPHY */

h1,h2,h3,h4,h5,h6{
    font-family:'Playfair Display',serif;
    color:#17311d;
    font-weight:600;
}
.play-btn{
    width:42px;
    height:42px;
    border-radius:50%;
    background:rgba(255,255,255,.92);
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    z-index:2;
}
/* SIDEBAR */

.sidebar{
    width:240px;
    height:100vh;
    background-color:#f7f4ed;
    background-image:linear-gradient(
            to bottom,
            rgba(247,244,237,1) 0%,
            rgba(247,244,237,1) 20%,
            rgba(247,244,237,0.7) 45%,
            rgba(247,244,237,0) 70%
        ),
        url(../content/images/sidebar-bg.png);
    background-size:100% auto;
    background-position:bottom center;
    background-repeat:no-repeat;
    position:fixed;
    left:0;
    top:0;
    padding:28px 18px;
    border-right:1px solid #e6dece;
    z-index:1000;
}

.logo img{
    width:60px;
    margin-bottom:14px;
}

.logo h1{
    font-size:24px;
    font-weight:700;
    margin-bottom:2px;
}

.logo p{
    font-size:12px;
    color:#6d6d6d;
}

.menu{
    margin-top:10px;
}

.menu a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:8px 10px;
    border-radius:14px;
    text-decoration:none;
    color:#1d2a1f;
    margin-bottom:10px;
    font-size:15px;
    font-weight:500;
    transition:.3s;
}

.menu a.active,
.menu a:hover{
    background:var(--primary);
    color:white;
}

/* MAIN */

.main{
    margin-left:240px;
    margin-right:300px;
    padding:24px 20px;
}

/* SEARCH */

.top-search{
    display:flex;
    justify-content:flex-end;
    margin-bottom:18px;
}

.top-search input{
    width:450px;
    max-width:100%;
    height:54px;
    border:none;
    background:white;
    border-radius:50px;
    border:1px solid var(--border);
    padding:0 24px;
    outline:none;
    font-size:14px;
}

.top-search button{
    width:54px;
    height:54px;
    border:none;
    border-radius:50%;
    background:white;
    margin-left:10px;
    border:1px solid var(--border);
}
/* LANGUAGE DROPDOWN */

.language-dropdown{
    display:flex;
    align-items:center;
    background:white;
    border:1px solid var(--border);
    border-radius:50px;
    height:54px;
    padding:0 16px;
    margin-right:12px;
    gap:10px;
}

.language-dropdown span{
    font-size:16px;
}

.language-dropdown select{
    border:none;
    outline:none;
    background:transparent;
    font-size:14px;
    font-weight:500;
    color:#17311d;
    cursor:pointer;
    font-family:'Poppins',sans-serif;
    width: 90px;
}
/* HERO */

.hero{
    position:relative;
    min-height:330px;
    border-radius:28px;
    overflow:hidden;
    padding:42px;
    display:flex;
    align-items:center;
    background:linear-gradient(to right, rgb(247 244 237 / 21%), rgb(247 244 237 / 6%)), url(../content/images/hero-banner.png);
    background-size:cover;
    background-position:center;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.hero-content{
    max-width:520px;
    position:relative;
    z-index:2;
}

.hero h1{
    font-size:64px;
    line-height:.95;
    color:#13311f;
    font-weight:700;
    margin-bottom:10px;
}

.hero h3{
    font-size:20px;
    color:#9b722c;
    margin-top:6px;
}

.hero p{
    line-height:2;
    color:#3e3e3e;
    margin-top:22px;
    font-size:15px;
    max-width:480px;
    font-weight: 500;
}

.watch-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    background:#78814f;
    color:white;
    padding:13px 24px;
    border-radius:14px;
    margin-top:22px;
    font-weight:500;
    font-size:14px;
}

/* FLOATING CARDS */

.season-floating{
    position:absolute;
    right:18px;
    top:50%;
    transform:translateY(-50%);
}

.floating-card{
    background:rgb(250 241 228 / 58%);
    backdrop-filter:blur(5px);
    border-radius:22px;
    padding:18px;
    margin-bottom:16px;
}

.floating-card span{
    font-size:11px;
    color:#6c7d4f;
    font-weight:600;
    letter-spacing:1px;
}

.floating-card h4{
    font-size:20px;
    margin:8px 0 10px;
}

.floating-card small{
    background:#eef0dc;
    padding:7px 12px;
    border-radius:10px;
    font-size:12px;
    color:#4e5c3d;
}

/* SECTION */

.section-title{
    margin:28px 0 16px;
}

.section-title h2{
    font-size:20px;
    font-weight:700;
}

/* EPISODES */

.episode-card{
    background:transparent;
    border:none;
}

.episode-row-5 .col-custom{
    width:20%;
}

.thumb{
    position:relative;
}

.thumb img{
    width:100%;
    height:115px;
    object-fit:cover;
    border-radius:16px;
}

.play-btn{
    width:42px;
    height:42px;
    border-radius:50%;
    background:rgba(255,255,255,.92);
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
}

.duration{
    position:absolute;
    bottom:8px;
    right:8px;
    background:rgba(0,0,0,.72);
    color:white;
    font-size:11px;
    padding:4px 8px;
    border-radius:8px;
}

.episode-number{
    position:absolute;
    top:8px;
    left:8px;
    background:#78814f;
    color:white;
    width:28px;
    height:28px;
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:600;
}

.card-content{
    padding-top:10px;
}

.card-content h4{
    font-size:14px;
    line-height:1.6;
    margin-bottom:3px;
    font-weight:500;
}

.card-content p{
    color:#56714d;
    font-size:12px;
}

.season-heading{
    margin-top:15px;
    margin-bottom:14px;
}

.season-heading h3{
    font-size:18px;
    color:#17311d;
    font-family:'Playfair Display',serif;
    font-weight:700;
}

.view-all-btn{
    text-decoration:none;
    background:#78814f;
    color:white;
    padding:8px 18px;
    border-radius:12px;
    font-size:13px;
    font-weight:500;
    transition:.3s;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.view-all-btn:hover{
    background:#5f683c;
    color:white;
}

/* RIGHT SIDEBAR */

.right-sidebar{
    width:300px;
    height:auto;
    background:#f9f5ee;
    position:fixed;
    right:0;
    top:0;
    padding:24px;
    border-left:1px solid var(--border);
    overflow-y:auto;
}

/* ABOUT CARD */

.about-card{
    background:linear-gradient(rgb(255 255 255 / 24%), rgb(255 255 255 / 32%)), url(../content/images/right-sidebar-bg.png);
    background-size:cover;
    background-position:center;
    border-radius:28px;
    padding:25px 10px 150px;
    border:1px solid #eadfce;
    text-align:center;
}

.about-card h3{
    font-size:18px;
    font-weight:700;
}

.about-card img{
    width:70%;
    max-width:220px;
    margin-bottom:22px;
}

.about-card p{
    font-size:12px;
    line-height:1.5;
    color:#3d3d3d;
    margin-bottom:15px;
}

/* COPYRIGHT */

.copyright{
    margin-left:240px;
    margin-right:300px;
    text-align:center;
    padding:24px 15px;
    color:#777;
    font-size:13px;
}

/* MOBILE */

.mobile-top{
    display:none;
}
.mobile-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

/* MOBILE LANGUAGE DROPDOWN */

.mobile-language-dropdown{
    position:relative;
}

.mobile-lang-btn{
    height:42px;
    border:none;
    background:white;
    border:1px solid var(--border);
    border-radius:30px;
    padding:0 14px;
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    font-weight:600;
    color:#17311d;
    margin-right: 30px;
}

.mobile-lang-menu{
    position:absolute;
    top:50px;
    right:0;
    background:white;
    border-radius:16px;
    border:1px solid var(--border);
    min-width:140px;
    overflow:hidden;
    display:none;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    z-index:999;
}

.mobile-lang-menu a{
    display:block;
    padding:12px 16px;
    text-decoration:none;
    color:#17311d;
    font-size:13px;
    transition:.3s;
}

.mobile-lang-menu a:hover{
    background:#f3f0e8;
}

.mobile-lang-menu.active{
    display:block;
}
@media(max-width:1200px){

    .right-sidebar{
        display:none;
    }

    .main{
        margin-right:0;
    }

    .copyright{
        margin-right:0;
    }
}

@media(max-width:991px){
    .top-search input{
    width:250px;
}
.language-dropdown{
    display:none;
}
    .sidebar{
        left:-250px;
        transition:.3s;
    }

    .sidebar.active{
        left:0;
    }

    .main{
        margin-left:0;
        padding:18px;
    }

    .copyright{
        margin-left:0;
    }

    .mobile-top{
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:14px 18px;
        background:#f7f4ed;
        position:sticky;
        top:0;
        z-index:999;
    }

    .mobile-top img{
        width:65px;
    }

    .toggle-btn{
        border:none;
        background:none;
        font-size:28px;
    }

    .season-floating{
        display:none;
    }

    .hero{
        padding:28px;
    }

    .hero h1{
        font-size:42px;
    }

    .episode-row-5 .col-custom{
        width:50%;
    }

    .view-all-btn{
        padding:7px 14px;
        font-size:12px;
    }
}
.menu-icon{
    width:22px;
    height:22px;
    border-radius:50%;
    border:2px solid currentColor;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:600;
    font-family:serif;
}
