/* ── Blog Cover Image ── */
.blog-cover { width: 100%; max-height: 500px; overflow: hidden; display: block; }
.blog-cover img { width: 100%; height: 500px; object-fit: cover; object-position: center; display: block; }

/* ── Inline article images ── */
.blog-img { margin: 2.4rem 0; border-radius: 12px; overflow: hidden; }
.blog-img img { width: 100%; display: block; object-fit: cover; }
.blog-img.full img { height: 340px; }
.blog-img.medium { max-width: 88%; margin-left: auto; margin-right: auto; }
.blog-img.medium img { height: 260px; border-radius: 12px; }
.blog-img.side { float: right; width: 36%; margin: .2rem 0 1.2rem 1.8rem; border-radius: 10px; overflow: hidden; }
.blog-img.side img { height: 360px; width: 100%; object-fit: cover; }
@media (max-width: 600px) { .blog-img.side { float: none; width: 100%; margin: 1.5rem 0; } }

/* ── Solución inline layout ── */
.blog-sol-row { display: flex; gap: 2rem; align-items: flex-start; margin: 1rem 0 1.5rem; }
.blog-sol-row .blog-sol-text { flex: 1; min-width: 0; }
.blog-sol-row .blog-sol-text p { margin-bottom: 1rem; }
@media (max-width: 640px) { .blog-sol-row { flex-direction: column; } .blog-img.side { width: 100%; } }
.blog-img-caption { font-size: .78rem; color: var(--muted); text-align: center; margin-top: .55rem; font-style: italic; }
.blog-img-caption::before { content: '↑ '; }
.clearfix::after { content: ''; display: table; clear: both; }

/* ── Breadcrumb ── */
.blog-breadcrumb { display: flex; align-items: center; gap: .45rem; font-size: .78rem; margin-bottom: 1.4rem; flex-wrap: wrap; }
.blog-breadcrumb a { color: var(--muted); text-decoration: none; transition: color .15s; }
.blog-breadcrumb a:hover { color: var(--g2); }
.blog-breadcrumb .bc-sep { color: var(--g2); font-size: .65rem; line-height: 1; }
.blog-breadcrumb .bc-current { color: var(--txt); font-weight: 500; }

/* ── Blog Hero ── */
.blog-hero { padding: 120px 5% 72px; background: var(--bg2); border-bottom: 1px solid var(--border); }
.blog-hero-inner { max-width: 780px; margin: 0 auto; }
.blog-tag { display: inline-block; background: var(--g3); color: var(--g2); font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: .3rem .8rem; border-radius: 20px; margin-bottom: 1.2rem; }
.blog-hero h1 { font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 700; line-height: 1.25; color: var(--bk); margin-bottom: 1.4rem; }
.blog-meta { display: flex; align-items: center; gap: 1.2rem; font-size: .82rem; color: var(--muted); flex-wrap: wrap; }
.blog-meta-sep { width: 4px; height: 4px; background: var(--border); border-radius: 50%; }
.blog-meta strong { color: var(--txt); font-weight: 600; }

/* ── Article Body ── */
.blog-body { padding: 64px 5% 80px; }
.blog-content { max-width: 780px; margin: 0 auto; }
.blog-content p { font-size: 1.05rem; line-height: 1.85; color: var(--txt); margin-bottom: 1.5rem; }
.blog-content h2 { font-size: 1.4rem; font-weight: 700; color: var(--bk); margin: 2.8rem 0 1rem; padding-left: 1rem; border-left: 3px solid var(--g); }

/* ── Highlight block ── */
.blog-highlight { background: var(--g3); border-left: 4px solid var(--g); border-radius: 0 8px 8px 0; padding: 1.4rem 1.6rem; margin: 2rem 0; font-size: 1rem; line-height: 1.75; color: var(--txt); }
.blog-highlight strong { color: var(--g2); }

/* ── Author box ── */
.blog-author { display: flex; align-items: center; gap: 1.2rem; background: var(--bg2); border: 1px solid var(--border); border-radius: 12px; padding: 1.4rem 1.6rem; margin-top: 3rem; }
.blog-author-avatar { width: 52px; height: 52px; border-radius: 50%; background: var(--g3); display: flex; align-items: center; justify-content: center; font-size: 1.4rem; flex-shrink: 0; }
.blog-author-info p { font-size: .82rem; color: var(--muted); margin: 0; line-height: 1.5; }
.blog-author-info strong { display: block; font-size: .95rem; color: var(--txt); margin-bottom: .15rem; }


/* ── Benefit Grid (agrosuite-tecnologia-productividad, optimizacion-inventario) ── */
.benefit-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1.2rem; margin: 1.5rem 0 2rem; }
.benefit-card { background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 1.4rem 1.2rem; display: flex; flex-direction: column; gap: .6rem; }
.benefit-card .bc-ico { width: 40px; height: 40px; border-radius: 8px; background: var(--g3); display: flex; align-items: center; justify-content: center; font-size: 1.1rem; flex-shrink: 0; }
.benefit-card .bc-ico::before { margin: 0 !important; font-size: 1.2rem; color: var(--g2); }
.benefit-card p { font-size: .88rem; color: var(--muted); line-height: 1.6; margin: 0; }

/* ── Blog List (optimizacion-inventario) ── */
.blog-list {
  list-style: none;
  margin: 0 0 1.5rem;
  display: block;
}

.blog-list li {
  display: block;
  padding-left: 1.6rem;
  position: relative;
  font-size: 1rem;
  line-height: 1.7;
  color: var(--txt);
  margin-bottom: .85rem;
}

.blog-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .32rem;
  width: 18px;
  height: 18px;
  background: var(--g3);
  border-radius: 50%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4L6.5 11 3 7.5' stroke='%237BBF3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 11px;
}

/* ── Content ul lists (sac-planning, gestion-inteligente-datos-sap, sap-mobile-start, senales-renovacion-tecnologica) ── */
.blog-content ul { margin: 0 0 1.5rem 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: .7rem; }
.blog-content ul li { display: flex; align-items: flex-start; gap: .75rem; font-size: 1rem; line-height: 1.7; color: var(--txt); }
.blog-content ul li::before { content: ''; flex-shrink: 0; width: 18px; height: 18px; margin-top: 3px; background: var(--g3); border-radius: 50%; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4L6.5 11 3 7.5' stroke='%237BBF3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 11px; }

/* ── h3 in content (sac-planning, gestion-inteligente-datos-sap) ── */
.blog-content h3 { font-size: 1.1rem; font-weight: 700; color: var(--bk); margin: 1.8rem 0 .6rem; }

/* ── Models grid (sac-planning-planeacion-financiera) ── */
.blog-models-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.2rem; margin: 1.4rem 0 2rem; }
.blog-model-card { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 1.3rem 1.5rem; display: flex; flex-direction: column; gap: .5rem; }
.blog-model-card h4 { font-size: .95rem; font-weight: 700; color: var(--bk); margin: 0; }
.blog-model-card p { font-size: .84rem; color: var(--muted); line-height: 1.65; margin: 0; }
.blog-model-num { font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--g2); margin-bottom: .2rem; }

/* ── Layer cards (gestion-inteligente-datos-sap) ── */
.blog-layers { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.2rem; margin: 1.4rem 0 2rem; }
.blog-layer-card { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 1.3rem 1.5rem; display: flex; flex-direction: column; gap: .5rem; }
.blog-layer-card-icon { font-size: 1.6rem; margin-bottom: .2rem; }
.blog-layer-card h4 { font-size: .98rem; font-weight: 700; color: var(--bk); margin: 0; }
.blog-layer-card p { font-size: .84rem; color: var(--muted); line-height: 1.65; margin: 0; }

/* ── Steps (gestion-inteligente-datos-sap) ── */
.blog-steps { display: flex; flex-direction: column; gap: 1rem; margin: 1.2rem 0 1.8rem; }
.blog-step { display: flex; gap: 1.2rem; align-items: flex-start; }
.blog-step-num { flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%; background: var(--g2); color: #fff; font-size: .85rem; font-weight: 700; display: flex; align-items: center; justify-content: center; margin-top: .1rem; }
.blog-step-body h4 { font-size: .98rem; font-weight: 700; color: var(--bk); margin: 0 0 .3rem; }
.blog-step-body p { font-size: .88rem; color: var(--muted); line-height: 1.7; margin: 0; }

/* ── Feature cards (sap-mobile-start) ── */
.blog-features { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.2rem; margin: 1.4rem 0 2rem; }
.blog-feature-card { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 1.3rem 1.5rem; display: flex; flex-direction: column; gap: .5rem; }
.blog-feature-card-icon { font-size: 1.7rem; margin-bottom: .2rem; }
.blog-feature-card h4 { font-size: .98rem; font-weight: 700; color: var(--bk); margin: 0; }
.blog-feature-card p { font-size: .84rem; color: var(--muted); line-height: 1.65; margin: 0; }

/* ── Signals (senales-renovacion-tecnologica) ── */
.blog-signals { display: flex; flex-direction: column; gap: 1.4rem; margin: 1.4rem 0 2rem; }
.blog-signal { display: flex; gap: 1.4rem; align-items: flex-start; background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 1.4rem 1.6rem; }
.blog-signal-num { flex-shrink: 0; width: 40px; height: 40px; border-radius: 10px; background: var(--o); color: #fff; font-size: 1rem; font-weight: 700; display: flex; align-items: center; justify-content: center; margin-top: .1rem; }
.blog-signal-body h4 { font-size: 1rem; font-weight: 700; color: var(--bk); margin: 0 0 .4rem; }
.blog-signal-body p { font-size: .88rem; color: var(--muted); line-height: 1.7; margin: 0; }
