/* Custom Modern Blog Styles */
body {
    font-family: 'Plus Jakarta Sans', sans-serif;
    background-color: var(--cloud-mist);
    color: var(--midnight-jet);
}

.blog-header {
    padding: 120px 0 60px;
}

.blog-header h1 span {
    color: var(--sunfire);
}

/* Modern Card Design */
.modern-card {
    background: var(--pearl-white);
    border-radius: var(--radius);
    overflow: hidden;
    height: 100%;
    transition: var(--transition);
    border: 1px solid rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
}

.modern-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

.card-img-wrapper {
    position: relative;
    height: 220px;
    overflow: hidden;
}

.card-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition);
}

.modern-card:hover .card-img-wrapper img {
    transform: scale(1.1);
}

.card-date {
    position: absolute;
    bottom: 15px;
    left: 15px;
    background: var(--pearl-white);
    padding: 5px 15px;
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 700;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.card-content {
    padding: 25px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.author-tag {
    color: var(--sunfire);
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
    display: block;
}

.modern-card h3 {
    font-size: 1.4rem;
    font-weight: 800;
    margin-bottom: 15px;
    line-height: 1.3;
}

.modern-card p {
    color: var(--storm-gray);
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 20px;
}

.read-more-btn {
    margin-top: auto;
    text-decoration: none;
    color: var(--midnight-jet);
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: 0.3s;
}

.read-more-btn i {
    transition: 0.3s;
}

.read-more-btn:hover {
    color: var(--sunfire);
}

.read-more-btn:hover i {
    transform: translateX(5px);
}

/* --- Single Post Styles --- */
.post-wrapper {
    background-color: var(--pearl-white);
    padding-top: 80px;
}

.post-hero {
    padding: 60px 0 40px;
}

.breadcrumb-item a {
    color: var(--sunfire);
    text-decoration: none;
    font-weight: 600;
}

.post-title {
    color: var(--midnight-jet);
    margin: 20px 0;
}

.post-meta-top {
    color: var(--storm-gray);
    font-size: 0.95rem;
    display: flex;
    justify-content: center;
    gap: 20px;
}

.meta-item i {
    color: var(--sunfire);
    margin-right: 5px;
}

.featured-image-container {
    border-radius: var(--radius);
    overflow: hidden;
    margin-bottom: 50px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.featured-image-container img {
    width: 100%;
    max-height: 550px;
    object-fit: cover;
}

/* Article Body Typography */
.post-content-body {
    font-size: 1.15rem;
    line-height: 1.8;
    color: #333;
}

.post-content-body p {
    margin-bottom: 25px;
}

.post-content-body h2, .post-content-body h3 {
    margin: 40px 0 20px;
    font-weight: 800;
}

/* Footer Actions */
.btn-back {
    text-decoration: none;
    color: var(--midnight-jet);
    font-weight: 700;
    transition: var(--transition);
}

.btn-back:hover {
    color: var(--sunfire);
    padding-left: -5px;
}

.share-buttons a {
    margin-left: 15px;
    color: var(--storm-gray);
    transition: 0.3s;
}

.share-buttons a:hover {
    color: var(--sunfire);
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .post-hero { padding: 40px 0; }
    .post-title { font-size: 2rem; }
    .post-content-body { font-size: 1.05rem; }
}

/* Responsiveness adjustments */
@media (max-width: 768px) {
    .blog-header { padding: 80px 0 40px; }
    .modern-card { margin-bottom: 20px; }
}