/* ============================= */
/* RESET ASTRA LAYOUT */
/* ============================= */
.custom-blog-page .ast-container,
.site-content,
.content-area {
    background: transparent !important;
    padding: 0 !important;
}

/* FORCE FULL CONTROL */
#primary,
.ast-container {
    max-width: 100% !important;
    padding: 0 !important;
}

/* ============================= */
/* GLOBAL BACKGROUND */
/* ============================= */
body {
    background: #eef2f7;
}

/* ============================= */
/* BLOG PAGE WRAPPER */
/* ============================= */
.custom-blog-page {
    padding: 80px 30px !important;
    display: flex;
    justify-content: center;   /* 🔥 centers everything */
}
/* 🔥 THIS IS THE REAL FIX */
.custom-blog-page .container {
    width: 100%;
    max-width: 980px;   /* 🔥 PERFECT WIDTH FOR 3 CARDS */
    margin: 0 auto;
}
/* ============================= */
/* GRID SYSTEM */
/* ============================= */
.blog-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;
    justify-content: center;   /* 🔥 key fix */
}

/* ============================= */
/* CARD */
/* ============================= */
.blog-card {
    width: 100%;
    background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,255,255,0.9));
    border-radius: 16px;
    padding: 22px;
    transition: all 0.3s ease;
    border: 1px solid rgba(0,0,0,0.05);
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

/* HOVER */
.blog-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 50px rgba(0,0,0,0.15);
}

/* ============================= */
/* IMAGE */
/* ============================= */
.blog-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 10px;
    margin-bottom: 15px;
}

/* ============================= */
/* CONTENT */
/* ============================= */
.blog-content {
    padding: 5px;
}

/* ============================= */
/* TITLE */
/* ============================= */
.blog-title {
    font-size: 16.5px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 8px;
}

.blog-title a {
    text-decoration: none;
    color: #0f172a;
}

.blog-title a:hover {
    color: #c9a14a;
}

/* ============================= */
/* META */
/* ============================= */
.blog-meta {
    font-size: 12px;
    color: #64748b;
    margin-bottom: 10px;
}

/* ============================= */
/* EXCERPT */
/* ============================= */
.blog-excerpt {
    font-size: 13.5px;
    line-height: 1.6;
    color: #475569;
    margin-bottom: 12px;
}

/* ============================= */
/* READ MORE */
/* ============================= */
.read-more {
    font-size: 13px;
    color: #c9a14a;
    font-weight: 500;
    text-decoration: none !important;
}

/* ============================= */
/* PAGINATION */
/* ============================= */
.blog-pagination {
    text-align: center;
    margin-top: 50px;
}

/* ============================= */
/* RESPONSIVE */
/* ============================= */

/* Tablet */
@media (max-width: 1024px) {
    .custom-blog-page .container {
        max-width: 700px;
    }

    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .custom-blog-page {
        padding: 50px 15px !important;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .blog-image img {
        height: 180px;
    }
}

/* ============================= */
/* BREAK ASTRA CONTAINER LIMIT */
/* ============================= */
.ast-container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* REMOVE INNER WRAPPER LIMIT */
#primary {
    width: 100% !important;
    max-width: 100% !important;
}

/* ============================= */
/* FORCE TRUE CENTER */
/* ============================= */
.custom-blog-page {
    display: flex;
    justify-content: center;
    width: 100%;
}

/* CONTROL ACTUAL CONTENT WIDTH */
.custom-blog-page .container {
    max-width: 1150px;
    width: 100%;
    margin: 0 auto;
}

/* FIX: keep header full width */
.ast-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* DO NOT touch header container */
.site-header .ast-container {
    max-width: 100% !important;
    padding: 0 30px !important;
}

.main-header-bar {
    width: 100% !important;
}

.ast-primary-header-bar {
    width: 100% !important;
}

/* ============================= */
/* SINGLE BLOG PAGE */
/* ============================= */
/* ============================= */
/* SINGLE BLOG PAGE */
/* ============================= */

.custom-single-post {
    max-width: 820px;
    margin: 80px auto;
    padding: 45px 40px;
    background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,255,255,0.9));
    border-radius: 18px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.08);
    font-family: 'Inter', sans-serif;
    line-height: 1.8;
    color: #1e293b;
    position: relative;
}



/* ============================= */
/* FEATURED IMAGE */
/* ============================= */
.single-post-thumbnail img {
    width: 100%;
    border-radius: 14px;
    margin-bottom: 30px;
}

/* ============================= */
/* TITLE */
/* ============================= */
.single-post-title {
    font-size: 2.2rem;
    font-weight: 600;
    margin-bottom: 12px;
    line-height: 1.4;
    color: #0f172a;
}

/* ============================= */
/* META */
/* ============================= */
.single-post-meta {
    font-size: 0.9rem;
    color: #64748b;
    margin-bottom: 30px;
}

/* ============================= */
/* CONTENT */
/* ============================= */
.single-post-content p {
    margin-bottom: 18px;
    font-size: 1.05rem;
    color: #334155;
}

/* headings inside content */
.single-post-content h2,
.single-post-content h3 {
    margin-top: 30px;
    margin-bottom: 15px;
    color: #0f172a;
}

/* ============================= */
/* LINKS */
/* ============================= */
.single-post-content a {
    color: #c9a14a;
    text-decoration: none;
}

.single-post-content a:hover {
    text-decoration: underline;
}

/* ============================= */
/* BACK BUTTON */
/* ============================= */
.back-to-blog a {
    display: inline-block;
    margin-top: 35px;
    font-weight: 500;
    color: #c9a14a;
    text-decoration: none;
    position: relative;
}

/* underline animation */
.back-to-blog a::after {
    content: "";
    display: block;
    width: 0%;
    height: 2px;
    background: #c9a14a;
    transition: 0.3s;
    margin-top: 3px;
}

.back-to-blog a:hover::after {
    width: 100%;
}

/* ============================= */
/* REMOVE OLD BLOG-POST STYLE */
/* ============================= */
.blog-post {
    display: none;
}

/* ============================= */
/* RESPONSIVE */
/* ============================= */

@media (max-width: 900px) {
    .custom-single-post {
        margin: 60px 15px;
        padding: 30px 25px;
    }

    .single-post-title {
        font-size: 1.8rem;
    }
}

@media (max-width: 600px) {
    .custom-single-post {
        padding: 25px 20px;
    }

    .single-post-title {
        font-size: 1.6rem;
    }
}