/* ===========================
THE LEAGUE OF VEGETABLES
STORIES PAGE
=========================== */

:root{

    --carrot:#F58220;
    --cabbage:#2F9E44;
    --beetroot:#9C27B0;
    --aubergine:#673AB7;
    --sweetcorn:#FFD600;

    --dark:#243238;
    --light:#FFFDF5;
    --white:#ffffff;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Fredoka',sans-serif;
    background:var(--light);
    color:var(--dark);
    line-height:1.6;

}

.container{

    width:90%;
    max-width:1200px;
    margin:auto;

}

/* ===========================
HEADER
=========================== */

header{

    background:linear-gradient(
        90deg,
        var(--cabbage),
        var(--carrot)
    );

    padding:20px 0;

}

.navbar{

    display:flex;
    justify-content:space-between;
    align-items:center;

}

.logo img{

    height:80px;

}

nav ul{

    list-style:none;
    display:flex;
    gap:20px;

}

nav a{

    color:white;
    text-decoration:none;
    font-weight:600;

}

nav a:hover{

    color:var(--sweetcorn);

}

/* ===========================
PAGE HERO
=========================== */

.page-hero{

    text-align:center;
    padding:80px 20px;

    background:
    linear-gradient(
        rgba(255,255,255,.85),
        rgba(255,255,255,.85)
    ),
    url('../images/team-background.jpg');

    background-size:cover;

}

.page-hero h1{

    font-size:4rem;
    color:var(--cabbage);

}

.page-hero p{

    font-size:1.3rem;

}

/* ===========================
FEATURED STORY
=========================== */

.featured-story{

    padding:60px 0;

}

.featured-grid{

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:center;

}

.featured-image img{

    width:100%;
    border-radius:25px;

}

.featured-content h2{

    font-size:2.5rem;
    margin:20px 0;

}

/* ===========================
BUTTONS
=========================== */

.btn{

    display:inline-block;
    padding:14px 25px;
    border-radius:40px;
    text-decoration:none;
    font-weight:bold;
    margin:5px;

}

.primary{

    background:var(--carrot);
    color:white;

}

.secondary{

    background:var(--cabbage);
    color:white;

}

.comic{

    background:var(--beetroot);
    color:white;

}

.btn:hover{

    transform:translateY(-3px);

}

/* ===========================
FILTERS
=========================== */

.filters{

    padding:40px 0;

}

.filter-grid{

    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:15px;

}

.filter-grid input,
.filter-grid select{

    padding:15px;
    border-radius:10px;
    border:2px solid #ddd;

}

/* ===========================
STORY SECTIONS
=========================== */

.story-section{

    padding:50px 0;

}

.story-section h2{

    margin-bottom:25px;
    font-size:2rem;

}

.story-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:25px;

}

/* ===========================
STORY CARDS
=========================== */

.story-card{

    background:white;

    border-radius:20px;

    padding:20px;

    box-shadow:
    0 5px 15px rgba(0,0,0,.08);

    transition:.3s;

}

.story-card:hover{

    transform:translateY(-8px);

}

.story-cover{

    height:180px;

    background:
    linear-gradient(
        135deg,
        var(--carrot),
        var(--sweetcorn)
    );

    border-radius:15px;

    margin-bottom:15px;

}

.story-card h3{

    margin:10px 0;

}

/* ===========================
BADGES
=========================== */

.badge{

    display:inline-block;

    padding:6px 12px;

    border-radius:20px;

    color:white;

    font-size:.8rem;

    font-weight:bold;

}

.origin{
    background:var(--carrot);
}

.school{
    background:var(--cabbage);
}

.community{
    background:var(--aubergine);
}

.holiday{
    background:var(--sweetcorn);
    color:black;
}

.mission{
    background:var(--beetroot);
}

/* ===========================
PROGRESS BAR
=========================== */

.progress{

    background:#ddd;
    height:10px;
    border-radius:10px;
    margin:15px 0;

}

.progress-bar{

    width:0%;
    height:100%;
    background:var(--cabbage);
    border-radius:10px;

}

/* ===========================
STORY BUTTONS
=========================== */

.story-buttons{

    margin-top:15px;

}

.story-buttons a{

    display:inline-block;

    background:var(--carrot);

    color:white;

    text-decoration:none;

    padding:8px 12px;

    border-radius:8px;

    margin:4px;

}

/* ===========================
COMING SOON
=========================== */

.upcoming{

    opacity:.7;
    position:relative;

}

.coming-ribbon{

    position:absolute;

    top:15px;
    right:-10px;

    background:red;

    color:white;

    padding:8px 12px;

    transform:rotate(10deg);

}

/* ===========================
FOOTER
=========================== */

footer{

    background:var(--dark);

    color:white;

    padding:50px 20px;

    text-align:center;

}

.footer-links{

    margin-bottom:20px;

}

.footer-links a{

    color:white;

    margin:0 10px;

    text-decoration:none;

}

/* ===========================
MOBILE
=========================== */

@media(max-width:768px){

    .navbar{

        flex-direction:column;
        gap:20px;

    }

    nav ul{

        flex-wrap:wrap;
        justify-content:center;

    }

    .featured-grid{

        grid-template-columns:1fr;

    }

    .filter-grid{

        grid-template-columns:1fr;

    }

    .page-hero h1{

        font-size:2.5rem;

    }

}