/* =====================================================
   MULTIMEDIA PREMIUM PAGE
===================================================== */

.media-page{
    background:
        linear-gradient(to bottom, #f8fafc, #eef5f1);
}

/* HERO */
.media-hero{
    min-height:45vh;

    display:flex;
    align-items:center;
    justify-content:center;

    text-align:center;

    background:
        linear-gradient(rgba(0,0,0,.75), rgba(0,0,0,.8)),
        linear-gradient(135deg, #14532d, #0f172a);

    color:white;

    border-bottom:5px solid #16a34a;
}

.media-hero h1{
    font-size:3rem;
    font-weight:800;
    letter-spacing:2px;
    margin-bottom:20px;
    color:white;
}

.media-hero p{
    max-width:850px;
    margin:auto;
    font-size:1.15rem;
    opacity:.92;
}

/* MAIN VIDEO CARD */
.media-main-card{
    background:white;
    border-radius:24px;
    overflow:hidden;

    box-shadow:
        0 20px 50px rgba(0,0,0,.08);
}

.media-main-header{
    padding:35px;

    background:
        linear-gradient(135deg, #166534, #14532d);

    color:white;
}

.media-main-header h3{
    color:white;
    font-weight:700;
    line-height:1.5;
    margin-top:15px;
}

.media-badge{
    display:inline-block;

    background:#22c55e;
    color:white;

    padding:8px 18px;
    border-radius:50px;

    font-size:.85rem;
    font-weight:700;

    letter-spacing:1px;
}

.media-video-wrapper{
    padding:20px;
}

.media-video-wrapper iframe{
    width:100%;
    height:38rem;

    border:none;
    border-radius:20px;
}

.media-sidebar{

    background:white;

    border-radius:24px;

    box-shadow:
        0 10px 35px rgba(0,0,0,0.08);

    position:relative;

    z-index:10;

    height:100%;
}

.media-sidebar-header{
    padding:28px;

    background:
        linear-gradient(135deg, #0f172a, #1e293b);

    text-align:center;
}

.media-sidebar-header h4{
    color:white;
    margin:0;
    font-weight:700;
}

.media-label{
    display:block;

    margin-bottom:12px;

    font-size:.9rem;
    font-weight:700;

    color:#166534;

    letter-spacing:1px;
}

.media-btn{
    background:
        linear-gradient(135deg, #166534, #15803d);

    border:none;
    color:white;

    padding:12px;

    border-radius:14px;

    font-weight:600;
}

.media-btn:hover{
    background:
        linear-gradient(135deg, #14532d, #166534);

    color:white;
}

/* LIST */
.media-list{
    display:flex;
    flex-direction:column;
    gap:22px;
}

/* ITEM */
.media-item{
    background:#f8fafc;

    border-radius:18px;

    padding:15px;

    border:1px solid #e2e8f0;

    transition:.35s ease;
}

.media-item:hover{
    transform:translateY(-4px);

    box-shadow:
        0 12px 25px rgba(0,0,0,.08);

    border-color:#16a34a;
}

.media-item-title{
    color:#0f172a;

    font-size:.95rem;
    font-weight:700;

    line-height:1.6;

    margin-bottom:15px;
}

.media-small-video{
    width:100%;
    height:210px;

    border:none;
    border-radius:14px;
}

/* RESPONSIVE */
@media(max-width:992px){

    .media-video-wrapper iframe{
        height:25rem;
    }

    .media-hero{
        min-height:35vh;
        padding:40px 20px;
    }

    .media-hero h1{
        font-size:2.3rem;
    }

}

@media(max-width:768px){

    .media-video-wrapper iframe{
        height:18rem;
    }

    .media-main-header{
        padding:25px;
    }

    .media-main-header h3{
        font-size:1.1rem;
    }

    .media-small-video{
        height:180px;
    }
}

/* =========================================================
   MULTIMEDIA PAGE PREMIUM
========================================================= */

.media-page{
    background:
        linear-gradient(to bottom, #f8fafc 0%, #eef5f1 100%);
}

/* =========================================================
   HERO
========================================================= */

.media-hero{
    position: relative;
    padding: 120px 20px 90px;
    overflow: hidden;

    background:
        linear-gradient(rgba(0,0,0,0.70), rgba(0,0,0,0.78)),
        url('/images/hero-congo.jpg') center/cover no-repeat;
}

.media-hero::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            135deg,
            rgba(25,135,84,0.25),
            rgba(13,110,253,0.15)
        );

    backdrop-filter: blur(2px);
}

.media-hero .container{
    position: relative;
    z-index: 2;
}

.media-hero h1{
    color:white;
    font-size:3.3rem;
    font-weight:800;
    letter-spacing:2px;
    margin-bottom:20px;
    text-transform:uppercase;
}

.media-hero p{
    color:rgba(255,255,255,0.92);
    font-size:1.2rem;
    max-width:850px;
    margin:auto;
    line-height:1.9;
}

/* =========================================================
   MAIN VIDEO CARD
========================================================= */

.media-main-card{
    background:white;
    border-radius:24px;
    overflow:hidden;

    box-shadow:
        0 10px 40px rgba(0,0,0,0.08);

    animation:mediaFade 0.7s ease;
}

.media-main-header{
    padding:35px;

    background:
        linear-gradient(135deg, #0f5132, #198754);

    color:white;
}

.media-badge{
    display:inline-block;

    background:rgba(255,255,255,0.15);

    border:1px solid rgba(255,255,255,0.25);

    color:#ffffff;

    padding:8px 16px;

    border-radius:50px;

    font-size:.8rem;

    font-weight:700;

    letter-spacing:1px;

    margin-bottom:20px;
}

.media-main-header h3{
    color:white;
    line-height:1.7;
    font-weight:700;
    margin:0;
}

/* =========================================================
   VIDEO WRAPPER
========================================================= */

.media-video-wrapper{
    position:relative;
    width:100%;
    padding-top:56.25%;
    background:black;
}

.media-video-wrapper iframe{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;
    border:none;
}

/* =========================================================
   SIDEBAR
========================================================= */

.media-sidebar{
    background:white;

    border-radius:24px;

    overflow:hidden;

    box-shadow:
        0 10px 35px rgba(0,0,0,0.08);

    position:sticky;
    top:100px;
}

.media-sidebar-header{
    background:
        linear-gradient(135deg, #0f172a, #1e293b);

    padding:25px;

    text-align:center;

    border-bottom:4px solid #198754;
}

.media-sidebar-header h4{
    color:white;
    margin:0;
    font-weight:700;
    letter-spacing:1px;
}

/* =========================================================
   LABEL + BUTTON
========================================================= */

.media-label{
    display:block;

    font-size:.9rem;

    font-weight:700;

    color:#0f5132;

    margin-bottom:10px;
}

.media-btn{
    background:
        linear-gradient(135deg, #198754, #157347);

    color:white;

    border:none;

    padding:12px;

    font-weight:600;

    border-radius:12px;

    transition:0.3s;
}

.media-btn:hover{
    transform:translateY(-2px);

    background:
        linear-gradient(135deg, #157347, #0f5132);

    color:white;
}

/* =========================================================
   LIST VIDEO
========================================================= */

.media-list{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.media-item{
    border:1px solid #e2e8f0;

    border-radius:18px;

    overflow:hidden;

    background:#ffffff;

    transition:0.3s;

    box-shadow:
        0 3px 10px rgba(0,0,0,0.04);
}

.media-item:hover{
    transform:translateY(-4px);

    box-shadow:
        0 10px 25px rgba(0,0,0,0.10);

    border-color:#198754;
}

.media-item-title{
    padding:16px;

    font-size:.92rem;

    font-weight:700;

    color:#0f172a;

    line-height:1.6;

    background:
        linear-gradient(to right, #f8fafc, #f1f5f9);
}

/* =========================================================
   SMALL VIDEOS
========================================================= */

.media-small-video{
    width:100%;
    height:220px;
    border:none;
    display:block;
}

/* =========================================================
   ANIMATION
========================================================= */

@keyframes mediaFade{

    from{
        opacity:0;
        transform:translateY(20px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/* =========================================================
   SCROLLBAR
========================================================= */

.media-sidebar::-webkit-scrollbar{
    width:8px;
}

.media-sidebar::-webkit-scrollbar-thumb{
    background:#198754;
    border-radius:20px;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:992px){

    .media-sidebar{
        position:relative;
        top:0;
    }

    .media-hero{
        padding:90px 15px 70px;
    }

    .media-hero h1{
        font-size:2.3rem;
    }

    .media-hero p{
        font-size:1rem;
    }

    .media-main-header{
        padding:25px;
    }

    .media-main-header h3{
        font-size:1.2rem;
        line-height:1.6;
    }

    .media-small-video{
        height:200px;
    }

}

@media(max-width:576px){

    .media-hero h1{
        font-size:1.8rem;
    }

    .media-main-header h3{
        font-size:1rem;
    }

    .media-item-title{
        font-size:.88rem;
    }

    .media-small-video{
        height:190px;
    }

}

.dropdown-menu{
    border:none;
    border-radius:16px;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.15);

    overflow:hidden;

    animation:dropdownFade .25s ease;
}

.dropdown-item{
    padding:12px 18px;
    font-weight:600;
}

.dropdown-item:hover{
    background:#198754;
    color:white;
}

@keyframes dropdownFade{

    from{
        opacity:0;
        transform:translateY(10px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* =========================================================
   DROPDOWN FIX
========================================================= */

.media-btn-dropdown{

    background:
        linear-gradient(135deg, #198754, #157347);

    color:white !important;

    border:none !important;

    padding:14px 18px;

    font-weight:700;

    border-radius:14px;

    transition:all .3s ease;

    box-shadow:
        0 6px 18px rgba(25,135,84,.25);
}

.media-btn-dropdown:hover,
.media-btn-dropdown:focus,
.media-btn-dropdown:active{

    background:
        linear-gradient(135deg, #157347, #0f5132) !important;

    color:white !important;

    transform:translateY(-2px);

    box-shadow:
        0 10px 25px rgba(0,0,0,.15);
}

/* MENU */
.dropdown-menu{

    background:
        linear-gradient(135deg,#14532d,#0f172a);

    border:none;

    border-radius:18px;

    padding:10px;

    overflow:hidden;

    box-shadow:
        0 15px 40px rgba(0,0,0,.18);
}

.dropdown-item{

    color:white;

    padding:14px 18px;

    border-radius:12px;

    font-weight:600;

    transition:.25s;
}

.dropdown-item:hover{

    background:#22c55e;

    color:white;
}

/* IMPORTANTISSIMO */

.media-sidebar{

    overflow:visible !important;
}

.dropdown{

    position:relative;
    z-index:9999;
}