/* ==================================
TRUE WORSHIPERS
WORD & RESOURCE LIBRARY
================================== */


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

.library-hero{

    min-height:70vh;

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    text-align:center;

    background:
    linear-gradient(
        rgba(0,0,0,.7),
        rgba(5,11,24,.9)
    ),
    url("../images/sermon.jpg");

    background-size:cover;

    background-position:center;

}


.library-overlay{

    position:absolute;

    inset:0;

    background:
    radial-gradient(
        circle,
        rgba(255,215,0,.08),
        transparent 60%
    );

}


.library-hero-content{

    position:relative;

    z-index:2;

    width:90%;

    max-width:1000px;

}


.library-label{

    color:#FFD700;

    letter-spacing:4px;

    font-size:14px;

    font-weight:600;

    margin-bottom:20px;

}


.library-hero h1{

    font-size:60px;

    color:#FFD700;

    text-shadow:
    0 0 20px rgba(255,215,0,.3);

}


.library-hero-content > p:last-child{

    font-size:20px;

    line-height:2;

    margin-top:25px;

}



/* ==================================
GOLD LINE
================================== */

.gold-line{

    width:100px;

    height:3px;

    background:#FFD700;

    margin:25px auto;

    box-shadow:
    0 0 15px rgba(255,215,0,.6);

}



/* ==================================
INTRO
================================== */

.library-intro{

    padding:90px 0;

    text-align:center;

    background:#050B18;

}


.section-label{

    color:#FFD700;

    font-size:13px;

    letter-spacing:4px;

    font-weight:600;

}


.library-intro h2{

    font-size:42px;

    color:#FFD700;

    margin-top:15px;

}


.library-intro p:not(.section-label){

    max-width:800px;

    margin:25px auto;

    line-height:2;

    font-size:17px;

}



/* ==================================
SEARCH
================================== */

.library-search{

    padding:70px 0;

    text-align:center;

    background:#081326;

}


.library-search h2{

    color:#FFD700;

    margin-bottom:10px;

}


.library-search p{

    margin-bottom:25px;

}


#librarySearch{

    width:90%;

    max-width:650px;

    padding:17px 25px;

    border-radius:30px;

    border:1px solid #FFD700;

    background:rgba(255,255,255,.06);

    color:white;

    font-family:'Poppins',sans-serif;

    outline:none;

    font-size:16px;

}


#librarySearch::placeholder{

    color:#ccc;

}



/* ==================================
CATEGORIES
================================== */

.resource-categories{

    padding:90px 0;

    text-align:center;

    background:#050B18;

}


.resource-categories h2{

    margin-top:15px;

    color:#FFD700;

}


.category-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(220px,1fr));

    gap:25px;

    margin-top:45px;

}


.category-card{

    padding:35px 25px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,215,0,.3);

    border-radius:20px;

    color:white;

    cursor:pointer;

    transition:.4s;

    font-family:'Poppins',sans-serif;

}


.category-card:hover{

    transform:translateY(-8px);

    border-color:#FFD700;

    box-shadow:
    0 0 25px rgba(255,215,0,.25);

}


.category-icon{

    display:block;

    font-size:40px;

    margin-bottom:15px;

}


.category-card h3{

    color:#FFD700;

    margin-bottom:10px;

}


.category-card p{

    line-height:1.7;

    font-size:14px;

}



/* ==================================
FEATURED
================================== */

.featured-sermon{

    padding:100px 0;

    text-align:center;

    background:
    linear-gradient(
        rgba(0,0,0,.75),
        rgba(5,11,24,.95)
    ),
    url("../images/live.jpg");

    background-size:cover;

    background-position:center;

}


.featured-sermon > .container > h2{

    color:#FFD700;

}


.featured-box{

    max-width:800px;

    margin:45px auto 0;

    padding:50px 35px;

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,215,0,.5);

    border-radius:25px;

    backdrop-filter:blur(10px);

}


.featured-number{

    color:#FFD700;

    font-size:13px;

    letter-spacing:3px;

    font-weight:bold;

}


.featured-box h1{

    color:#FFD700;

    font-size:42px;

    margin:20px 0;

}


.featured-box > p:not(.featured-number){

    line-height:2;

    max-width:650px;

    margin:auto;

}



/* ==================================
AUTHOR BOX
================================== */

.author-box{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:15px;

    margin:30px auto;

    padding:18px;

    max-width:500px;

    border-top:1px solid rgba(255,215,0,.3);

    border-bottom:1px solid rgba(255,215,0,.3);

    text-align:left;

}


.author-box > span{

    font-size:28px;

}


.author-box strong{

    display:block;

    color:#FFD700;

}


.author-box small{

    display:block;

    color:#ccc;

    margin-top:4px;

}



/* ==================================
RESOURCE LIBRARY
================================== */

.resource-library{

    padding:100px 0;

    background:#081326;

    text-align:center;

}


.resource-library h2{

    color:#FFD700;

    margin-top:15px;

}


.resource-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:30px;

    margin-top:50px;

    text-align:left;

}



/* ==================================
RESOURCE CARD
================================== */

.resource-card{

    background:#050B18;

    border:1px solid rgba(255,215,0,.25);

    border-radius:22px;

    overflow:hidden;

    transition:.4s;

}


.resource-card:hover{

    transform:translateY(-8px);

    border-color:#FFD700;

    box-shadow:
    0 0 25px rgba(255,215,0,.2);

}


.resource-card > img{

    width:100%;

    height:210px;

    object-fit:cover;

    display:block;

}


.resource-content{

    padding:25px;

}


.resource-type{

    color:#FFD700;

    font-size:12px;

    letter-spacing:2px;

    font-weight:bold;

}


.resource-content h3{

    margin:12px 0;

    font-size:23px;

}


.resource-content p{

    color:#ddd;

    line-height:1.8;

    font-size:14px;

}



/* ==================================
RESOURCE AUTHOR
================================== */

.resource-author{

    margin:20px 0;

    padding:12px 0;

    border-top:1px solid rgba(255,215,0,.2);

    border-bottom:1px solid rgba(255,215,0,.2);

}


.resource-author strong{

    display:block;

    color:#FFD700;

    font-size:14px;

}


.resource-author span{

    color:#aaa;

    font-size:12px;

}



/* ==================================
RESOURCE ICON
================================== */

.resource-icon{

    height:210px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:75px;

    background:
    radial-gradient(
        circle,
        rgba(255,215,0,.12),
        transparent 65%
    );

    border-bottom:1px solid rgba(255,215,0,.2);

}



/* ==================================
NO RESULTS
================================== */

.no-results{

    display:none;

    padding:50px;

    color:#ccc;

    font-size:17px;

}



/* ==================================
AUTHOR SECTION
================================== */

.author-section{

    padding:100px 0;

    text-align:center;

    background:#050B18;

}


.author-symbol{

    font-size:50px;

}


.author-section h2{

    color:#FFD700;

    margin-top:20px;

}


.author-section > .container > p{

    max-width:750px;

    margin:25px auto;

    line-height:2;

}


.main-author{

    margin:35px auto 0;

    display:flex;

    flex-direction:column;

    gap:5px;

}


.main-author strong{

    color:#FFD700;

    font-family:'Cinzel',serif;

    font-size:25px;

}


.main-author span{

    font-weight:600;

}


.main-author small{

    color:#aaa;

}



/* ==================================
MOBILE
================================== */

@media(max-width:900px){

    .library-hero h1{

        font-size:45px;

    }

    .library-hero{

        min-height:60vh;

    }

}


@media(max-width:600px){

    .library-hero h1{

        font-size:34px;

        line-height:1.3;

    }


    .library-label{

        font-size:11px;

        letter-spacing:2px;

    }


    .library-hero-content > p:last-child{

        font-size:16px;

    }


    .library-intro h2{

        font-size:32px;

    }


    .featured-box{

        padding:35px 20px;

    }


    .featured-box h1{

        font-size:30px;

    }


    .author-box{

        text-align:center;

        flex-direction:column;

    }


    .resource-grid{

        grid-template-columns:1fr;

    }

}

/* ================================
LIVE VIDEO
================================ */

.live-video {
    padding: 80px 0;
    background: linear-gradient(
            rgba(0, 0, 0, 0.6),
            rgba(0, 0, 0, 0.78)
        ),
        url("../images/twcm.jpg");

    background-size: cover;
    background-position: center;

    position: relative;
}

    text-align: center;
}


.live-video h2 {
    color: #FFD700;
    font-size: 40px;
    margin-bottom: 15px;
}


.live-description {
    margin-bottom: 35px;
}


.video-container {
    width: 100%;
    max-width: 1000px;
    margin: auto;

    border: 2px solid #FFD700;
    border-radius: 20px;

    overflow: hidden;

    background: #000;

    box-shadow: 0 0 30px rgba(255,215,0,.25);
}


.video-container iframe {
    display: block;
    width: 100%;
    min-height: 500px;
}


.youtube-note {
    margin-top: 25px;
    color: #ccc;
}
/* =========================================
TRUE WORSHIPERS PODCAST
========================================= */

.podcast-section {
padding: 80px 20px;
text-align: center;
}

.podcast-content {
max-width: 750px;
margin: auto;
padding: 45px 30px;
border-radius: 20px;
border: 1px solid rgba(212, 175, 55, 0.35);
background: rgba(0, 0, 0, 0.35);
backdrop-filter: blur(8px);
}

.podcast-icon {
font-size: 55px;
margin-bottom: 15px;
}

.podcast-content h2 {
font-family: 'Cinzel', serif;
margin-bottom: 20px;
}

.podcast-content p {
line-height: 1.8;
margin-bottom: 15px;
}

.podcast-subtitle {
font-weight: 600;
}

.podcast-btn {
display: inline-block;
margin-top: 20px;
text-decoration: none;
}
/* =========================================
SPOTIFY LOGO
========================================= */

.spotify-logo {
width: 75px;
height: 75px;
object-fit: contain;
display: block;
margin: 0 auto 20px;
}
/* =========================================
   TRUE WORSHIPERS PODCAST — OFFICIAL
========================================= */

.podcast-section {
    padding: 80px 20px;
    text-align: center;
}

.podcast-content {
    max-width: 750px;
    margin: auto;
    padding: 50px 30px;

    border-radius: 24px;

    border: 1px solid rgba(212, 175, 55, 0.4);

    background: rgba(0, 0, 0, 0.4);

    backdrop-filter: blur(10px);

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

.spotify-logo {
    width: 75px;
    height: 75px;

    object-fit: contain;

    display: block;

    margin: 0 auto 20px;
}

.podcast-label {
    font-size: 13px;

    letter-spacing: 3px;

    font-weight: 600;

    margin-bottom: 12px;
}

.podcast-content h2 {
    font-family: 'Cinzel', serif;

    font-size: 32px;

    letter-spacing: 1px;

    margin-bottom: 15px;
}

.podcast-episode {
    display: flex;

    justify-content: center;

    align-items: center;

    gap: 10px;

    font-size: 13px;

    letter-spacing: 2px;

    font-weight: 600;

    margin-bottom: 12px;
}

.podcast-content h3 {
    font-family: 'Cinzel', serif;

    font-size: 21px;

    margin-bottom: 20px;
}

.podcast-content p {
    line-height: 1.8;

    margin-bottom: 18px;
}

.podcast-subtitle {
    font-weight: 600;

    letter-spacing: 1px;
}

.podcast-btn {
    display: inline-block;

    margin-top: 15px;

    text-decoration: none;

    transition: 0.3s ease;
}

.podcast-btn:hover {
    transform: translateY(-3px);
}


/* =========================================
   MOBILE PODCAST
========================================= */

@media (max-width: 600px) {

    .podcast-section {
        padding: 60px 15px;
    }

    .podcast-content {
        padding: 40px 20px;
    }

    .podcast-content h2 {
        font-size: 25px;
    }

    .podcast-content h3 {
        font-size: 19px;
    }

    .podcast-episode {
        font-size: 11px;
        gap: 7px;
    }

}
/* =========================================
   SPOTIFY EPISODE PLAYER
========================================= */

.spotify-player {
    width: 100%;
    max-width: 650px;
    margin: 25px auto;
    overflow: hidden;
    border-radius: 12px;
}

.spotify-player iframe {
    display: block;
    width: 100%;
    border: none;
    border-radius: 12px;
}