/* =========================
   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:var(--radius-xl, 28px);

    cursor:pointer;

    background:#000;

    box-shadow:
    0 30px 100px rgba(0,0,0,.7);

    transition:box-shadow .4s ease;
}

.video-player-wrapper:hover{

    box-shadow:
    0 40px 120px rgba(0,0,0,.8);
}


/* 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:all var(--transition-base, .3s ease);

    box-shadow:0 10px 40px rgba(255,45,45,.4);
}

.video-player-wrapper:hover .video-play-button{

    transform:
    translate(-50%, -50%)
    scale(1.08);

    box-shadow:0 15px 50px rgba(255,45,45,.5);
}


/* =========================
   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:var(--radius-xl, 28px);

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:24px;
}

.video-main-info h1{

    font-size:clamp(32px, 4vw, 68px);

    line-height:1;

    font-weight:800;

    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:var(--radius-xl, 28px);

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:24px;
}


/* TITLE */

.video-cover-info h1{

    font-size:clamp(36px, 6vw, 60px);

    line-height:1.05;

    font-weight:800;

    letter-spacing:-1px;

    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:var(--radius-xl, 28px);

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:all var(--transition-base, .3s ease);
}

.single-video-page .watch-video-btn:hover{

    transform:translateY(-3px);

    box-shadow:
    0 15px 35px rgba(0,0,0,.3);
}

.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:clamp(32px, 4vw, 44px);

    color:#fff;

    margin-bottom:35px;

    font-weight:800;

    letter-spacing:-1px;
}

.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:var(--radius-lg, 20px);

    margin-bottom:14px;
}

.latest-video-thumb img{

    width:100%;

    height:230px;

    object-fit:cover;

    transition:all var(--transition-base, .4s ease);
}

.latest-video-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.65),
        rgba(0,0,0,0)
    );

    transition:background var(--transition-base, .4s ease);
}

.latest-video-card:hover img{

    transform:scale(1.04);
}

.latest-video-card:hover .latest-video-overlay{

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.80),
        rgba(0,0,0,.2)
    );
}

.latest-video-info h3{

    font-size:clamp(18px, 2vw, 22px);

    line-height:1.35;

    color:#fff;

    margin-bottom:10px;

    font-weight:700;

    transition:color var(--transition-base, .3s ease);
}

.latest-video-card:hover h3{

    color:var(--primary-color, #f18d3e);
}

.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.9;

    color:rgba(255,255,255,.88);
    
    text-align:justify;

    text-justify:inter-word;

    hyphens:auto;

    -webkit-hyphens:auto;

    -ms-hyphens:auto;

    word-break:normal;

    overflow-wrap:break-word;
}

.video-post-content p{

    margin-bottom:28px;
}

.video-post-content h2{

    font-size:clamp(28px, 4vw, 38px);

    margin-top:60px;
    margin-bottom:18px;

    line-height:1.2;

    color:#fff;

    font-weight:800;

    letter-spacing:-0.5px;
}

.video-post-content h3{

    font-size:clamp(24px, 3vw, 32px);

    margin-top:45px;
    margin-bottom:16px;

    color:#fff;

    font-weight:700;
}

.video-post-content a{

    color:#ff4d4d;

    text-decoration:none;

    font-weight:600;
}

.video-post-content a:hover{

    text-decoration:underline;
}

.video-post-content img{

    width:100%;

    border-radius:var(--radius-md, 14px);

    margin:4px 0;
    
}

.video-post-content blockquote{

    margin:40px 0;

    padding-left:24px;

    border-left:4px solid #ff2d2d;

    font-size:clamp(22px, 3vw, 28px);

    line-height:1.5;

    color:#fff;

    font-style:italic;
}


/* =========================
   SIDEBAR
========================= */

.video-sidebar h3{

    font-size:clamp(24px, 3vw, 30px);

    margin-bottom:28px;

    color:#fff;

    font-weight:800;
}

.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;

    transition:all var(--transition-base, .3s ease);

    padding:8px;

    border-radius:var(--radius-md, 14px);
}

.sidebar-video-item:hover{

    background:rgba(255,255,255,.04);
}

.sidebar-video-thumb img{

    width:100%;

    height:85px;

    object-fit:cover;

    border-radius:var(--radius-sm, 8px);
}

.sidebar-video-info h4{

    color:#fff;

    font-size:16px;

    line-height:1.45;

    margin-bottom:8px;

    font-weight:600;

    transition:color var(--transition-base, .3s ease);
}

.sidebar-video-item:hover h4{

    color:var(--primary-color, #f18d3e);
}

.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,.06);
}

.share-box span{

    color:#999;
}

.share-box a{

    background:var(--cat-color, #ff2d2d);

    color:#fff;
}

.share-box a:hover{

    filter:brightness(1.15);

    transform:translateY(-2px);
}


/* =========================
   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;

    backdrop-filter:blur(8px);
}

.video-popup.active{

    display:flex !important;
}

.video-popup-content{

    position:relative;

    width:min(1300px, 100%);

    border-radius:var(--radius-xl, 28px);

    overflow:hidden;

    background:#000;

    box-shadow:0 40px 120px rgba(0,0,0,.5);
}

.video-popup-close{

    position:absolute;

    top:15px;
    right:15px;

    width:46px;
    height:46px;

    border:none;

    border-radius:50%;

    background:rgba(255,255,255,.1);

    color:#fff;

    font-size:28px;

    cursor:pointer;

    z-index:20;

    display:flex;

    align-items:center;

    justify-content:center;

    transition:all var(--transition-base, .3s ease);

    backdrop-filter:blur(8px);
}

.video-popup-close:hover{

    background:rgba(255,255,255,.2);

    transform:rotate(90deg);
}


/* 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:clamp(28px, 5vw, 40px);
    }

    .video-subtitle{

        font-size:18px;
    }

    .video-post-content{

        font-size:18px;
    }

    .video-play-button{

        width:90px;
        height:90px;

        font-size:36px;
    }

    .video-popup{

        padding:15px;
    }

    .video-cover-content{

        padding:110px 24px 120px;
    }

    .video-cover-info h1{

        font-size:clamp(24px, 5vw, 32px);
    }

    .video-cover-description{

        font-size:18px;
    }

    .latest-videos-grid{

        grid-template-columns:1fr;
    }

}
