/* ==========================================================================
   BLOG PAGE STYLES
   ========================================================================== */

.blog-page {
    max-width: var(--max-block-width);
    width: 100%;
    display: flex;
    justify-content: center;
    background: var(--primary-orange);
    margin-top: -124px;
}

.blog-container {
    max-width: var(--max-content-width);
    width: 100%;
}

/* ==========================================================================
   BLOG PAGE HEADER
   ========================================================================== */

.blog-title {
    height: 400px;
    padding: 186px 0 96px 0;
}

/* ==========================================================================
   LATEST POST SECTION
   ========================================================================== */

.latest-post {
    padding: var(--space-lg) 0 var(--space-md) 0;
}

.post-featured .post-thumbnail {
    max-width: var(--max-content-width);
    width: 100%;
    max-height: 400px;
    height: 100%;
    overflow: hidden;
    margin: 0 auto;
    padding-bottom: var(--space-xs);
    margin-bottom: var(--space-xs);
    position: relative;
    display: block;
}

.post-featured .post-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
    transform-origin: center;
}

.post-featured .post-thumbnail:hover>img {
    transform: scale(1.05);
}

.post_details {
    border-top: 3px solid var(--text-color);
}

.post-featured a h3 {
    padding: var(--space-xs) 0;
    transition: color 0.3s ease;
}

/* ==========================================================================
   POST GRID
   ========================================================================== */

.post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-md);
}

.grid-thumbnail {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: auto;
    overflow: hidden;
    margin-bottom: var(--space-xs);
}

.grid-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.grid-thumbnail:hover img {
    transform: scale(1.05);
}

.post-grid-section .post-grid article {
    margin-bottom: var(--space-sm);
}

.post-grid-section .post-grid article a h4 {
    margin: var(--space-xs) 0;
    transition: color 0.3s ease;
}

.post-grid-section {
    padding-bottom: var(--space-md);
}

/* ==========================================================================
   MOBILE STYLES
   ========================================================================== */

@media (max-width: 768px) {
    .blog-container {
        padding: 49px;
    }

    .blog-title {
        height: auto;
        padding: 96px 0 0 0;
    }

    .post-grid {
        display: flex;
        flex-direction: column;
        gap: var(--space-lg);
    }

    .post-featured .post-thumbnail {
        height: 250px;
    }

    .grid-thumbnail {
        height: 250px;
        aspect-ratio: auto;
    }
}

@media (max-width: 480px) {
    .blog-container {
        padding: 24px;
    }

    .blog-title {
        padding: 48px 0 0 0;
    }

    .latest-post {
        padding: var(--space-md) 0 var(--space-sm) 0;
    }
}