/* Blog */
.blog-hero { padding: clamp(120px, 16vw, 170px) 0 clamp(30px, 4vw, 50px); }
.blog-hero h1 { margin: 16px 0 18px; }
.blog-lista { padding-top: 0; }
.posts { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.post-card { display: flex; flex-direction: column; background: #fff; border-radius: var(--radius); overflow: hidden; text-decoration: none; box-shadow: 0 4px 16px rgba(23,38,67,.05); transition: transform .3s var(--ease), box-shadow .3s; }
.post-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.post-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; background: var(--lavender); }
.post-card > div { padding: 24px 26px 28px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.post-card time, .post-head time { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--indigo); }
.post-card h2 { font-size: clamp(21px, 2.2vw, 26px); }
.post-card p { color: var(--muted); flex: 1; }
@media (max-width: 760px) { .posts { grid-template-columns: 1fr; } }

.post { width: min(780px, 100% - 40px); margin: 0 auto; padding: clamp(120px, 16vw, 160px) 0 clamp(50px, 7vw, 80px); }
.post-head .volver { display: inline-block; margin-bottom: 22px; font-weight: 700; font-size: 14px; color: var(--indigo); text-decoration: none; }
.post-head h1 { font-size: clamp(30px, 4.6vw, 50px); margin: 10px 0 18px; }
.post-img { width: 100%; border-radius: var(--radius); margin: 34px 0 40px; background: var(--lavender); }
.post-body { font-size: 17.5px; line-height: 1.75; }
.post-body > * + * { margin-top: 1.1em; }
.post-body h2, .post-body h3 { font-size: clamp(22px, 2.6vw, 28px); margin-top: 1.8em; color: var(--navy); }
.post-body h4 { font-size: 19px; margin-top: 1.5em; }
.post-body ul, .post-body ol { padding-left: 1.3em; }
.post-body li + li { margin-top: .45em; }
.post-body a { color: var(--indigo); font-weight: 600; }
.post-body blockquote { border-left: 4px solid var(--lime); padding-left: 18px; font-weight: 600; }

.post-mas { background: #fff; padding: clamp(50px, 7vw, 80px) 0; }
.post-mas h2 { font-size: clamp(24px, 3vw, 32px); margin-bottom: 24px; }
.minis { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.post-mini { display: grid; grid-template-columns: 120px 1fr; gap: 16px; align-items: center; background: var(--cream); border-radius: 20px; padding: 12px; text-decoration: none; font-weight: 700; font-family: var(--font-display); line-height: 1.3; }
.post-mini img { width: 120px; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 12px; }
@media (max-width: 760px) { .minis { grid-template-columns: 1fr; } .post-mini { grid-template-columns: 90px 1fr; } .post-mini img { width: 90px; } }
