/* ── BLOG STYLES ─────────────────────────────────────────── */

/* Breadcrumb de entrada */
.blog-hero{background:var(--primary);padding:14px 0 0}
.breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,.75);flex-wrap:wrap}
.breadcrumb a{color:rgba(255,255,255,.85);text-decoration:none}
.breadcrumb a:hover{color:#fff}
.breadcrumb span{color:rgba(255,255,255,.5)}

/* Layout artículo */
.blog-layout{padding:48px 0 80px}
.blog-main{max-width:800px;margin:0 auto}

/* Cabecera del artículo */
.article-header{margin-bottom:28px}
.article-meta{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.article-cat{background:var(--primary);color:#fff;font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.6px}
.article-meta time{color:var(--gray);font-size:13px}
.article-header h1{font-size:clamp(1.55rem,4vw,2.2rem);line-height:1.25;color:var(--navy);margin:0 0 12px}
.article-lead{font-size:1.05rem;color:var(--gray);line-height:1.65;margin:0}

/* ── IMAGEN DESTACADA DEL ARTÍCULO ── */
.article-featured-img{
  margin:0 0 36px;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 8px 32px rgba(10,53,64,.13);
  line-height:0;
}
.article-featured-img img{
  width:100%;
  height:auto;
  display:block;
  border-radius:16px;
  aspect-ratio:1200/630;
  object-fit:cover;
}

/* Cuerpo del artículo */
.article-body{line-height:1.8;color:#2d3a42;font-size:1.01rem}
.article-body h2{font-family:'Outfit',sans-serif;font-size:1.4rem;color:var(--navy);margin:2.2rem 0 .7rem;padding-bottom:8px;border-bottom:2px solid var(--gray-light)}
.article-body h3{font-family:'Outfit',sans-serif;font-size:1.08rem;color:var(--primary);margin:1.6rem 0 .45rem}
.article-body p{margin:0 0 1.1rem}
.article-body ul,
.article-body ol{padding-left:1.4rem;margin:0 0 1.2rem}
.article-body li{margin-bottom:.45rem}
.article-body strong{color:var(--navy)}
.article-body a{color:var(--primary);font-weight:700;text-decoration:none}
.article-body a:hover{text-decoration:underline}
.article-body code{background:#f0f4f5;color:#0a3540;padding:2px 7px;border-radius:5px;font-size:.92em;font-family:monospace}

/* CTA box dentro del artículo */
.blog-cta-box{background:linear-gradient(135deg,var(--navy) 0%,#0d5263 100%);border-radius:16px;padding:32px 28px;margin:40px 0;color:#fff}
.blog-cta-box h3{font-family:'Outfit',sans-serif;font-size:1.2rem;margin:0 0 8px;color:#fff}
.blog-cta-box p{margin:0 0 20px;color:rgba(255,255,255,.85);font-size:.95rem}
.blog-cta-box .hero-btns{justify-content:flex-start;flex-wrap:wrap}

/* Servicio relacionado */
.article-related{margin:36px 0 20px}
.related-label{font-size:.78rem;color:var(--gray);margin:0 0 10px;text-transform:uppercase;letter-spacing:.6px;font-weight:700}
.related-service-card{display:flex;align-items:center;justify-content:space-between;background:#f0f8f9;border:2px solid var(--primary);border-radius:12px;padding:16px 20px;text-decoration:none;color:var(--navy);font-weight:700;font-family:'Outfit',sans-serif;font-size:1.05rem;transition:.2s}
.related-service-card:hover{background:var(--primary);color:#fff}
.related-service-card .arrow{font-size:1.2rem}

/* Botón volver */
.article-back{margin-top:12px}

/* ── BLOG INDEX ────────────────────────────────────────────── */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}

.blog-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border-radius:16px;
  border:2px solid var(--gray-light);
  text-decoration:none;
  color:inherit;
  overflow:hidden;
  transition:transform .2s,box-shadow .2s,border-color .2s;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.blog-card:hover{
  border-color:var(--primary);
  transform:translateY(-4px);
  box-shadow:0 12px 32px rgba(14,100,117,.14);
}

/* Imagen en tarjeta */
.blog-card-img{
  width:100%;
  aspect-ratio:800/420;
  overflow:hidden;
  background:#e8f4f6;
  line-height:0;
}
.blog-card-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .35s ease;
}
.blog-card:hover .blog-card-img img{
  transform:scale(1.04);
}

/* Texto de la tarjeta */
.blog-card-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.blog-card-cat{font-size:11px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.7px}
.blog-card-body h2{font-family:'Outfit',sans-serif;font-size:1.05rem;color:var(--navy);margin:0;line-height:1.35}
.blog-card-body p{font-size:.87rem;color:var(--gray);margin:0;line-height:1.55;flex:1}
.blog-card-date{font-size:.78rem;color:var(--gray);margin-top:6px;border-top:1px solid var(--gray-light);padding-top:10px}

/* ── RESPONSIVE ─────────────────────────────────────────────── */
@media(max-width:1024px){
  .blog-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:640px){
  .blog-grid{grid-template-columns:1fr}
  .blog-layout{padding:28px 0 56px}
  .article-header h1{font-size:1.4rem}
  .article-featured-img{border-radius:12px;margin-bottom:24px}
  .blog-cta-box{padding:22px 16px}
  .blog-cta-box .hero-btns{flex-direction:column;align-items:stretch}
  .blog-cta-box .hero-btns>*{width:100%;justify-content:center}
  .blog-card-body{padding:16px 18px 18px}
}

@media(max-width:400px){
  .blog-card-body h2{font-size:.97rem}
  .article-header h1{font-size:1.28rem}
}
