/*!
Theme Name: JGDesign
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: jgdesign
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

JGDesign is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: #fff5d6;
    color: #412234;
    line-height: 1.6;
}

/* Header */
.blog-header {
     background: url('http://www.jgriffithmedia.com/wp-content/uploads/2025/07/Jelena-Griffith-1-1-scaled.png') no-repeat center center;
    background-size: cover;
    height: 40vh;
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: 0;
    margin-bottom: 0;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    max-width: none !important;
    box-sizing: border-box;
    border: none;
    outline: none;
	border-bottom: 4px solid #C6034B;
}

.blog-title {
    font-family: 'Baloo 2', cursive;
    font-size: 3.5rem;
    font-weight: 800;
    color: #C6034B;
    margin-bottom: 1rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}

.blog-subtitle {
    font-size: 1.3rem;
    color: #412234;
    max-width: 600px;
    margin: 0 auto;
    opacity: 0.8;
}

/* Main Container */
.blog-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 3rem 2rem;
}

/* Filter Tabs */
.filter-tabs {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 3rem;
    flex-wrap: wrap;
}

.filter-tab {
    padding: 0.8rem 1.5rem;
    background: rgba(255, 255, 255, 0.8);
    color: #412234;
    border: 2px solid transparent;
    border-radius: 25px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
}

.filter-tab:hover,
.filter-tab.active {
    background: #3BFAD4;
    border-color: #3BFAD4;
    transform: translateY(-2px);
}

/* Blog Grid */
.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

/* Blog Card */
.blog-card {
    background: rgba(255, 255, 255, 0.9);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.4s ease;
    border: 2px solid transparent;
}

.blog-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(59, 250, 212, 0.2);
    border-color: rgba(59, 250, 212, 0.3);
}

.card-image {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.blog-card:hover .card-image {
    transform: scale(1.05);
}

.card-content {
    padding: 1.5rem;
}

.card-meta {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.card-category {
    background: #ffe29d;
    color: #412234;
    padding: 0.3rem 0.8rem;
    border-radius: 15px;
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.card-date {
    font-size: 0.9rem;
    color: #666;
    font-weight: 500;
}

.card-title {
    font-family: 'Baloo 2', cursive;
    font-size: 1.4rem;
    font-weight: 700;
    color: #412234;
    margin-bottom: 0.8rem;
    line-height: 1.3;
}

.card-excerpt {
    color: #555;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 1.2rem;
}

.card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.read-more-btn {
    display: inline-block;
    padding: 0.7rem 1.3rem;
    background: #C6034B;
    color: white;
    text-decoration: none;
    border-radius: 20px;
    font-weight: 600;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.read-more-btn:hover {
    background: #3BFAD4;
    color: #412234;
    transform: translateY(-2px);
}

.read-time {
    font-size: 0.8rem;
    color: #666;
    font-weight: 500;
}

/* Featured Post */
.featured-post {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-bottom: 2rem;
}

.featured-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 300px;
}

.featured-content {
    padding: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.featured-badge {
    background: #C6034B;
    color: white;
    padding: 0.4rem 1rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    width: fit-content;
    margin-bottom: 1rem;
}

.featured-title {
    font-family: 'Baloo 2', cursive;
    font-size: 2.2rem;
    font-weight: 800;
    color: #412234;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.featured-excerpt {
    font-size: 1.1rem;
    color: #555;
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

/* Pagination */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 3rem;
}

.pagination a {
    padding: 0.8rem 1.2rem;
    background: rgba(255, 255, 255, 0.8);
    color: #412234;
    text-decoration: none;
    border-radius: 10px;
    font-weight: 600;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.pagination a:hover,
.pagination a.active {
    background: #3BFAD4;
    border-color: #3BFAD4;
    transform: translateY(-2px);
}

/* Responsive Design */
@media (max-width: 768px) {
    .blog-container {
        padding: 2rem 1rem;
    }

    .blog-title {
        font-size: 2.5rem;
    }

    .blog-header {
        padding: 3rem 1rem;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .featured-post {
        grid-template-columns: 1fr;
    }

    .featured-content {
        padding: 2rem;
    }

    .featured-title {
        font-size: 1.8rem;
    }

    .filter-tabs {
        gap: 0.5rem;
    }

    .filter-tab {
        padding: 0.6rem 1rem;
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .blog-title {
        font-size: 2rem;
    }

    .blog-subtitle {
        font-size: 1.1rem;
    }

    .card-content {
        padding: 1.2rem;
    }

    .featured-content {
        padding: 1.5rem;
    }

    .card-footer {
        flex-direction: column;
        gap: 0.8rem;
        align-items: flex-start;
    }
}