/* Blog — listado de artículos. */

/* Hero con imagen de fondo (sin canvas) */
.blog-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background: url('/assets/img/backgrounds/blog-hero.jpg') center/cover no-repeat;
    opacity: 0.18;
}

.blog-page { background: #fff; padding: 6rem 5%; }
.blog-page .s-label { color: var(--brand-blue); margin-bottom: 0.5rem; }
.blog-page .s-title { margin-bottom: 3rem; }

.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.bcard {
    background: var(--brand-lavender-bg);
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid rgba(26, 16, 79, 0.06);
    transition: transform 0.3s, box-shadow 0.3s;
}
.bcard:hover { transform: translateY(-5px); box-shadow: 0 14px 34px rgba(26, 16, 79, 0.09); }
.bcard img { width: 100%; height: 200px; object-fit: cover; display: block; }
.bcard-body { padding: 1.4rem; }
.bdate { font-family: var(--font-subtitle); font-size: 0.7rem; color: rgba(26, 16, 79, 0.55); margin-bottom: 0.5rem; letter-spacing: 0.04em; font-weight: 700; }
.bcard-body h3 { font-size: 1.05rem; font-weight: 700; color: var(--brand-dark); margin-bottom: 0.6rem; line-height: 1.35; }
.bcard-body p { font-size: 0.83rem; color: var(--brand-muted); line-height: 1.7; margin-bottom: 1rem; }
.bread {
    font-family: var(--font-subtitle);
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--brand-dark);
    border-bottom: 1.5px solid var(--brand-dark);
    padding-bottom: 2px;
}

@media (max-width: 900px) { .blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .blog-grid { grid-template-columns: 1fr; } }
