/* =========================
   SINGLE VIDEO
========================= */

.single-video-page{

    background:#0b0b0b;

    color:#fff;

    min-height:100vh;
}


/* =========================
   HERO PLAYER
========================= */

.video-player-section{

    padding:110px 0 40px;

    background:#000;
}

.video-container-wide{

    width:min(1500px, 94vw);

    margin:0 auto;
}


/* PLAYER */

.video-player-wrapper{

    position:relative;

    overflow:hidden;

    border-radius:26px;

    cursor:pointer;

    background:#000;

    box-shadow:
    0 30px 100px rgba(0,0,0,.7);
}


/* THUMB */

.video-thumb-preview{

    width:100%;

    aspect-ratio:16/9;

    object-fit:cover;

    display:block;

    transition:.5s ease;

    filter:brightness(.7);
}

.video-player-wrapper:hover .video-thumb-preview{

    transform:scale(1.03);

    filter:brightness(.45);
}


/* OVERLAY */

.video-dark-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.55),
        rgba(0,0,0,.1)
    );
}


/* PLAY BUTTON */

.video-play-button{

    position:absolute;

    top:50%;
    left:50%;

    transform:translate(-50%, -50%);

    width:120px;
    height:120px;

    border-radius:50%;

    background:#ff2d2d;

    display:flex;

    align-items:center;
    justify-content:center;

    color:#fff;

    font-size:48px;

    z-index:20;

    transition:.3s ease;
}

.video-player-wrapper:hover .video-play-button{

    transform:
    translate(-50%, -50%)
    scale(1.08);
}


/* =========================
   CONTENT
========================= */

.video-content-section{

    padding:50px 0 100px;
}

.video-layout{

    width:min(1400px, 94vw);

    margin:0 auto;

    display:grid;

    grid-template-columns:
    minmax(0, 1fr)
    360px;

    gap:55px;
}


/* MAIN */

.video-main-column{

    min-width:0;
}


/* INFO */

.video-main-info{

    margin-bottom:40px;
}

.video-badge{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    background:#ff2d2d;

    color:#fff;

    padding:8px 18px;

    border-radius:40px;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:24px;
}

.video-main-info h1{

    font-size:clamp(38px, 4vw, 68px);

    line-height:1;

    font-weight:400;

    letter-spacing:-2px;

    margin-bottom:24px;

    color:#fff;
}

.video-subtitle{

    font-size:22px;

    line-height:1.8;

    color:rgba(255,255,255,.72);

    margin-bottom:25px;
}

.video-meta{

    display:flex;

    align-items:center;

    gap:12px;

    color:#888;

    font-size:14px;
}
/* =========================
   HERO COVER
========================= */

.video-hero-cover{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:flex-end;

    overflow:hidden;

    background:#000;
}


/* BG */

.video-cover-bg{

    position:absolute;

    inset:0;
}

.video-cover-bg img{

    width:100%;
    height:100%;

    object-fit:cover;
}


/* OVERLAY */

.video-cover-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.96) 5%,
        rgba(0,0,0,.55) 45%,
        rgba(0,0,0,.15) 100%
    );
}


/* CONTENT */

.video-cover-content{

    position:relative;

    z-index:10;

    width:100%;

    padding:120px 5vw 250px;
}

.video-cover-info{

    max-width:820px;
}


/* BADGE */

.video-badge{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    background:#ff2d2d;

    color:#fff;

    padding:8px 18px;

    border-radius:40px;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:24px;
}


/* TITLE */

.video-cover-info h1{

    font-size:clamp(42px, 6vw, 40px);

    line-height:1.05;

    font-weight:400;

    letter-spacing:0px;

    color:#fff;

    margin-bottom:28px;

    text-shadow:
    0 10px 40px rgba(0,0,0,.5);
}


/* DESC */

.video-cover-description{

    

    font-size:22px;

    line-height:1.8;

    color:rgba(255,255,255,.82);

    margin-bottom:28px;
}


/* META */

.video-meta{

    display:flex;

    align-items:center;

    gap:12px;

    color:rgba(255,255,255,.6);

    margin-bottom:35px;
}


/* BTN */

.single-video-page .watch-video-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    border:none;

    background:var(--primary-color);

    color:#fff;

    padding:14px 28px;

    border-radius:999px;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.25s ease;
}

.single-video-page .watch-video-btn:hover{

    transform:translateY(-2px);

    box-shadow:
    0 10px 25px rgba(0,0,0,.25);
}

.single-video-page .watch-video-btn svg{

    flex-shrink:0;
}


/* =========================
   CONTENT
========================= */

.video-post-wrapper{

    padding:80px 0;

    background:#0b0b0b;
}

.video-post-container{

    width:min(900px, 92vw);

    margin:0 auto;
}

.single-special-page{

    background:var(--special-bg-color, #0b0b0b);

    color:var(--special-text-color, #fff);
}

.single-special-page .special-hero-cover{

    align-items:center;

    justify-content:center;

    min-height:100vh;

    background-color:var(--special-bg-color, #0b0b0b);

    background-image:
    linear-gradient(
        to bottom,
        rgba(0,0,0,.58),
        rgba(0,0,0,.72)
    ),
    var(--special-fixed-image);

    background-size:cover;

    background-position:center;

    background-attachment:fixed;
}

.single-special-page .special-hero-cover .video-cover-content{

    min-height:100vh;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:140px 5vw;
}

.single-special-page .special-hero-cover .video-cover-info{

    max-width:960px;

    margin:0 auto;

    text-align:center;
}

.single-special-page .special-hero-cover .video-meta{

    justify-content:center;
}

.single-special-page .special-badge{

    background:var(--cat-color, var(--primary-color));

    color:#fff;
}

.single-special-page .special-post-wrapper{

    padding:80px 0 100px;

    background:var(--special-bg-color, #0b0b0b);

    color:var(--special-text-color, #fff);
}

.single-special-page .special-post-container{

    width:min(900px, 92vw);
}

.special-article-info{

    display:flex;

    flex-wrap:wrap;

    gap:14px;

    align-items:center;

    margin-bottom:32px;

    padding-bottom:0;

    color:var(--special-muted-color, rgba(255,255,255,.66));

    font-size:14px;
}

.special-article-info a{

    color:var(--primary-color);

    text-decoration:none;
}

.single-special-page .special-post-content{

    color:var(--special-text-color, #fff);
}

.single-special-page .special-post-content p,
.single-special-page .special-post-content li{

    color:var(--special-text-color, #fff);
}

.single-special-page .special-post-content h1,
.single-special-page .special-post-content h2,
.single-special-page .special-post-content h3,
.single-special-page .special-post-content h4,
.single-special-page .special-post-content h5,
.single-special-page .special-post-content h6,
.single-special-page .special-post-content strong{

    color:var(--special-text-color, #fff);
}

.single-special-page .special-post-content blockquote{

    color:var(--special-text-color, #fff);

    border-left:none;

    padding-left:0;
}

.single-special-page .special-post-content figcaption{

    color:var(--special-muted-color, rgba(255,255,255,.72));
}

.special-article-info a:hover{

    text-decoration:underline;
}

.single-special-page .special-post-content .alignwide{

    width:min(1200px, 92vw);

    max-width:none;

    margin-left:calc(50% - min(1200px, 92vw) / 2);

    margin-right:calc(50% - min(1200px, 92vw) / 2);
}

.single-special-page .special-post-content .alignfull{

    width:100vw;

    max-width:none;

    margin-left:calc(50% - 50vw);

    margin-right:calc(50% - 50vw);
}

.single-special-page .special-post-content .wp-block-image.alignfull img,
.single-special-page .special-post-content .wp-block-image.alignwide img{

    width:100%;

    max-width:none;

    border-radius:0;
}

.single-special-page .special-post-content img,
.single-special-page .special-post-content .wp-block-image img{

    border:none;

    border-radius:0;
}

.single-special-page .special-post-content .wp-block-image figcaption,
.single-special-page .special-image-caption{

    color:var(--special-muted-color);

    font-size:14px;

    line-height:1.6;

    font-style:italic;
}

.single-special-page .special-post-content .wp-block-image figcaption{

    background:transparent;
}

.single-special-page .special-post-content .wp-block-image.alignfull figcaption,
.single-special-page .special-post-content .wp-block-image.alignwide figcaption{

    max-width:900px;

    margin-left:auto;

    margin-right:auto;
}

@media(max-width:768px){

    .single-special-page .special-hero-cover{

        background-attachment:scroll;
    }

    .single-special-page .special-hero-cover .video-cover-content{

        padding:120px 24px;
    }
}

.special-image-caption{

    padding:16px 0 24px;

    font-size:14px;

    line-height:1.6;
}

.special-image-caption .video-post-container{

    max-width:1200px;

    margin:auto;

    padding:0 20px;
}

.special-image-caption .video-post-container{

    max-width:1200px;

    margin:auto;

    padding:0 20px;
}
/* =========================
   LATEST VIDEOS
========================= */

.latest-videos-section{

    padding:30px 0 100px;

    background:#0b0b0b;
}

.latest-videos-container{

    width:min(1400px, 94vw);

    margin:0 auto;
}

.latest-videos-container h2{

    font-size:42px;

    color:#fff;

    margin-bottom:35px;
}

.latest-videos-grid{

    display:grid;

    grid-template-columns:
    repeat(3, 1fr);

    gap:25px;
}


/* CARD */

.latest-video-card{

    text-decoration:none;
}

.latest-video-thumb{

    position:relative;

    overflow:hidden;

    border-radius:20px;

    margin-bottom:14px;
}

.latest-video-thumb img{

    width:100%;

    height:230px;

    object-fit:cover;

    transition:.4s ease;
}

.latest-video-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.65),
        rgba(0,0,0,0)
    );
}

.latest-video-card:hover img{

    transform:scale(1.04);
}

.latest-video-info h3{

    font-size:22px;

    line-height:1.35;

    color:#fff;

    margin-bottom:10px;
}

.latest-video-info span{

    color:#888;

    font-size:13px;
}


/* RESPONSIVO */

@media(max-width:991px){

    .latest-videos-grid{

        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .video-cover-content{

        padding:110px 24px 120px;
    }

    .video-cover-info h1{

        font-size:25px;
    }

    .video-cover-description{

        font-size:18px;
    }

}

/* =========================
   POST CONTENT
========================= */

.video-post-content{

    font-size:20px;

    line-height:1.95;

    color:rgba(255,255,255,.88);
}

.video-post-content p{

    margin-bottom:28px;
}

.video-post-content h2{

    font-size:36px;

    margin-top:60px;
    margin-bottom:18px;

    line-height:1.2;

    color:#fff;
}

.video-post-content h3{

    font-size:30px;

    margin-top:45px;
    margin-bottom:16px;

    color:#fff;
}

.video-post-content a{

    color:#ff4d4d;
}

.video-post-content img{

    width:100%;

    border-radius:2px;

    margin:3px 0;
    
}

.video-post-content blockquote{

    margin:40px 0;

    padding-left:24px;

    border-left:4px solid #ff2d2d;

    font-size:28px;

    line-height:1.5;

    color:#fff;
}


/* =========================
   SIDEBAR
========================= */

.video-sidebar h3{

    font-size:28px;

    margin-bottom:28px;

    color:#fff;
}

.video-sidebar-list{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.sidebar-video-item{

    display:grid;

    grid-template-columns:140px 1fr;

    gap:15px;

    text-decoration:none;
}

.sidebar-video-thumb img{

    width:100%;

    height:85px;

    object-fit:cover;

    border-radius:14px;
}

.sidebar-video-info h4{

    color:#fff;

    font-size:16px;

    line-height:1.45;

    margin-bottom:8px;

    font-weight:500;
}

.sidebar-video-info span{

    color:#777;

    font-size:12px;
}


/* =========================
   SHARE
========================= */

.share-box{

    margin-top:60px;

    padding-top:30px;

    border-top:1px solid rgba(255,255,255,.08);
}

.share-box span{

    color:#999;
}

.share-box a{

    background:#1a1a1a;

    color:#fff;
}

.share-box a:hover{

    background:#ff2d2d;
}


/* =========================
   POPUP
========================= */

.video-popup{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.96);

    z-index:999999;

    display:none;

    align-items:center;
    justify-content:center;

    padding:40px;
}

.video-popup.active{

    display:flex !important;
}

.video-popup-content{

    position:relative;

    width:min(1300px, 100%);

    border-radius:24px;

    overflow:hidden;

    background:#000;
}

.video-popup-close{

    position:absolute;

    top:15px;
    right:15px;

    width:46px;
    height:46px;

    border:none;

    border-radius:50%;

    background:#fff;

    color:#111;

    font-size:28px;

    cursor:pointer;

    z-index:20;
}


/* VIDEO */

.responsive-video{

    position:relative;

    width:100%;

    padding-bottom:56.25%;

    height:0;
}

.responsive-video iframe{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    border:none;
}


/* =========================
   RESPONSIVO
========================= */

@media(max-width:991px){

    .video-layout{

        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .video-player-section{

        padding:100px 0 25px;
    }

    .video-main-info h1{

        font-size:38px;
    }

    .video-subtitle{

        font-size:18px;
    }

    .video-post-content{

        font-size:18px;
    }

    .video-play-button{

        width:85px;
        height:85px;

        font-size:34px;
    }

    .video-popup{

        padding:15px;
    }

}
