/* Sistema de diseño de contenido de blog — Vilavet
   Adaptado del modelo de referencia (Élite Reputación) a la paleta de marca Vilavet */

/* El tema (Bridge/Elementor) repite el título del post en un h2.entry_title
   justo debajo del hero, duplicando el H1. Se oculta mantiniendo la fecha/autor. */
.blog_single .post_text_inner > h2.entry_title{display:none}

:root{
  --vv-primary:#104d75;
  --vv-primary-dark:#0b3a58;
  --vv-accent:#ff8a3d;
  --vv-blue:#3b82f6;
  --vv-green:#22c55e;
  --vv-purple:#8b5cf6;
  --vv-amber:#f59e0b;
  --vv-red:#ef4444;
  --vv-ink:#1a2434;
  --vv-muted:#5b6472;
  --vv-border:#e4e8ee;
}

.vv-content{font-size:17px;line-height:1.7;color:var(--vv-ink)}
.vv-content h2{
  font-size:1.5rem;font-weight:800;color:var(--vv-primary-dark);
  margin:2.2rem 0 1rem;padding-bottom:.6rem;border-bottom:2px solid var(--vv-border);
  display:flex;align-items:baseline;gap:.5rem;
}
.vv-content h2 .section-num{color:var(--vv-accent);font-weight:900}
.vv-content h3{font-size:1.15rem;font-weight:700;color:var(--vv-primary-dark);margin:1.4rem 0 .6rem}
.vv-content p{margin:0 0 1.1rem}
.vv-content a{color:var(--vv-primary);font-weight:600;text-decoration:underline}

/* --- Stats bar (debajo de la intro) --- */
.vv-stats-bar{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--vv-border);border:1px solid var(--vv-border);border-radius:14px;overflow:hidden;
  margin:1.6rem 0 1.8rem;
}
.vv-stats-bar .vv-stat-item{background:#fff;padding:1.1rem .8rem;text-align:center}
.vv-stats-bar .vv-stat-number{font-size:1.6rem;font-weight:900;color:var(--vv-primary);line-height:1.1}
.vv-stats-bar .vv-stat-label{font-size:.76rem;color:var(--vv-muted);margin-top:.3rem;line-height:1.3}
@media (max-width:680px){.vv-stats-bar{grid-template-columns:repeat(2,1fr)}}

/* --- Tabla de contenidos --- */
.vv-toc{
  background:#f6f8fb;border:1px solid var(--vv-border);border-radius:14px;
  padding:1.4rem 1.6rem;margin:1.8rem 0;
}
.vv-toc h4{margin:0 0 .9rem;font-size:1rem;font-weight:800;color:var(--vv-primary-dark)}
.vv-toc ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.5rem}
.vv-toc li a{
  display:flex;gap:.5rem;font-size:.92rem;font-weight:600;color:var(--vv-ink);
  text-decoration:none;padding:.25rem 0;
}
.vv-toc li a:hover{color:var(--vv-primary)}
.vv-toc .toc-num{color:var(--vv-accent);font-weight:900;flex-shrink:0}
@media (max-width:640px){.vv-toc ul{grid-template-columns:1fr}}

/* --- Cajas de contenido --- */
.vv-content .highlight-box,
.vv-content .info-box,
.vv-content .warning-box,
.vv-content .success-box,
.vv-content .danger-box,
.vv-content .purple-box{
  border-radius:12px;padding:1.2rem 1.4rem;margin:1.5rem 0;border-left:4px solid;
}
.vv-content .highlight-box{background:#fff4ea;border-color:var(--vv-accent)}
.vv-content .info-box{background:#eef4ff;border-color:var(--vv-blue)}
.vv-content .warning-box{background:#fff8e6;border-color:var(--vv-amber)}
.vv-content .success-box{background:#eafbf1;border-color:var(--vv-green)}
.vv-content .danger-box{background:#fdecec;border-color:var(--vv-red)}
.vv-content .purple-box{background:#f4f0fe;border-color:var(--vv-purple)}
.vv-content .highlight-box h4,
.vv-content .info-box h4,
.vv-content .warning-box h4,
.vv-content .success-box h4,
.vv-content .danger-box h4,
.vv-content .purple-box h4{margin:0 0 .5rem;font-size:1rem;font-weight:800}
.vv-content .highlight-box p:last-child,
.vv-content .info-box p:last-child,
.vv-content .warning-box p:last-child,
.vv-content .success-box p:last-child,
.vv-content .danger-box p:last-child,
.vv-content .purple-box p:last-child{margin-bottom:0}

/* --- Stat grid (cifras dentro del contenido) --- */
.vv-content .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:1.6rem 0}
.vv-content .stat-grid--2{grid-template-columns:repeat(2,1fr)}
.vv-content .stat-card{background:#fff;border:1px solid var(--vv-border);border-radius:12px;padding:1rem;text-align:center}
.vv-content .stat-card .stat-number{font-size:1.5rem;font-weight:900;color:var(--vv-primary)}
.vv-content .stat-card .stat-label{font-size:.78rem;color:var(--vv-muted);margin-top:.25rem}
@media (max-width:680px){.vv-content .stat-grid{grid-template-columns:repeat(2,1fr)}}

/* --- Content grid / cards --- */
.vv-content .content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.6rem 0}
.vv-content .content-card{background:#fff;border:1px solid var(--vv-border);border-radius:12px;padding:1.2rem}
.vv-content .content-card h4{margin:.2rem 0 .4rem;font-size:1rem}
.vv-content .content-card p{margin:0;font-size:.92rem;color:var(--vv-muted)}
.vv-content .card-icon{
  width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;margin-bottom:.6rem;
}
.vv-content .card-icon--accent{background:#fff4ea;color:var(--vv-accent)}
.vv-content .card-icon--blue{background:#eef4ff;color:var(--vv-blue)}
.vv-content .card-icon--green{background:#eafbf1;color:var(--vv-green)}
.vv-content .card-icon--purple{background:#f4f0fe;color:var(--vv-purple)}
.vv-content .card-icon--amber{background:#fff8e6;color:var(--vv-amber)}
@media (max-width:680px){.vv-content .content-grid{grid-template-columns:1fr}}

/* --- Tabla estilizada --- */
.vv-content .styled-table{width:100%;border-collapse:collapse;margin:1.6rem 0;font-size:.92rem}
.vv-content .styled-table th{background:var(--vv-primary);color:#fff;text-align:left;padding:.75rem .9rem;font-weight:700}
.vv-content .styled-table td{padding:.7rem .9rem;border-bottom:1px solid var(--vv-border)}
.vv-content .styled-table tr:nth-child(even) td{background:#f8fafc}
.vv-content .table-scroll{overflow-x:auto;border-radius:10px;border:1px solid var(--vv-border)}
.vv-content .table-scroll .styled-table{margin:0}

/* --- Step list --- */
.vv-content .step-list{list-style:none;counter-reset:vv-step;padding:0;margin:1.6rem 0}
.vv-content .step-list li{
  counter-increment:vv-step;position:relative;padding:.9rem 0 .9rem 3rem;border-bottom:1px solid var(--vv-border);
}
.vv-content .step-list li:last-child{border-bottom:none}
.vv-content .step-list li::before{
  content:counter(vv-step);position:absolute;left:0;top:.7rem;
  width:2rem;height:2rem;border-radius:50%;background:var(--vv-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;
}
.vv-content .step-list strong{color:var(--vv-primary-dark)}

/* --- Checklist --- */
.vv-content .checklist{list-style:none;padding:0;margin:1.4rem 0}
.vv-content .checklist li{position:relative;padding:.4rem 0 .4rem 1.8rem}
.vv-content .checklist li::before{
  content:"✓";position:absolute;left:0;top:.4rem;color:var(--vv-green);font-weight:900;
}

/* --- Quote card --- */
.vv-content .quote-card{
  background:#f6f8fb;border-left:4px solid var(--vv-primary);border-radius:10px;
  padding:1.3rem 1.5rem;margin:1.6rem 0;font-style:italic;color:var(--vv-ink);
}
.vv-content .quote-card p{margin:0 0 .5rem}
.vv-content .quote-author{display:block;font-style:normal;font-weight:700;font-size:.85rem;color:var(--vv-muted)}

/* --- FAQ acordeón --- */
.vv-faq{margin:1rem 0}
.vv-faq .faq-item{border:1px solid var(--vv-border);border-radius:10px;margin-bottom:.6rem;overflow:hidden}
.vv-faq .faq-question{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;
  padding:1rem 1.2rem;cursor:pointer;font-weight:700;background:#fff;color:var(--vv-primary-dark);
}
.vv-faq .faq-question:hover{background:#f6f8fb}
.vv-faq .faq-icon{width:18px;height:18px;flex-shrink:0;transition:transform .2s}
.vv-faq .faq-item.active .faq-icon{transform:rotate(180deg)}
.vv-faq .faq-answer{max-height:0;overflow:hidden;transition:max-height .25s ease}
.vv-faq .faq-answer p{padding:0 1.2rem 1rem;margin:0;color:var(--vv-muted);font-size:.94rem}
.vv-faq .faq-item.active .faq-answer{max-height:400px}

/* --- CTA --- */
.vv-cta{
  background:linear-gradient(135deg,var(--vv-primary),var(--vv-primary-dark));
  color:#fff;border-radius:16px;padding:1.8rem 2rem;margin:2.2rem 0;text-align:center;
}
.vv-cta h3{color:#fff;margin:0 0 .5rem;font-size:1.25rem}
.vv-cta p{color:#dbe8f2;margin:0 0 1.1rem}
.vv-cta a.vv-btn{
  display:inline-block;background:var(--vv-accent);color:#fff;font-weight:800;
  padding:.8rem 1.8rem;border-radius:99px;text-decoration:none;font-size:.95rem;
}
.vv-cta a.vv-btn:hover{background:#ff7a1f}

/* --- Relacionados --- */
.vv-related{margin:2rem 0;padding-top:1.5rem;border-top:1px solid var(--vv-border)}
.vv-related h3{font-size:1.1rem;margin-bottom:.9rem;color:var(--vv-primary-dark)}
.vv-related ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}
.vv-related li a{
  display:block;background:#f6f8fb;border:1px solid var(--vv-border);border-radius:10px;
  padding:.8rem 1rem;font-weight:600;font-size:.9rem;color:var(--vv-primary-dark);text-decoration:none;
}
.vv-related li a:hover{background:#eef4ff}
@media (max-width:640px){.vv-related ul{grid-template-columns:1fr}}

/* --- Expert box (autoría) --- */
.vv-expert-box{
  display:flex;align-items:center;gap:.9rem;background:#f6f8fb;border:1px solid var(--vv-border);
  border-radius:12px;padding:1rem 1.2rem;margin:1.6rem 0;
}
.vv-expert-box .vv-expert-avatar{
  width:44px;height:44px;border-radius:50%;background:var(--vv-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;flex-shrink:0;
}
.vv-expert-box .vv-expert-name{font-weight:800;font-size:.92rem;color:var(--vv-primary-dark)}
.vv-expert-box .vv-expert-role{font-size:.82rem;color:var(--vv-muted)}
