/* ===================================================================
   blog.css — vasitos.es
   Estilos del listado (home.php) y del artículo individual (single.php).
=================================================================== */

/* --- Filtro de categorías (listado) --- */
.vbl-filter-pills{ max-width:1160px; margin:0 auto; padding:22px 40px 0; display:flex; gap:8px; flex-wrap:wrap; }
.vbl-pill{ padding:9px 16px; border-radius:20px; background:var(--step-bg); font-size:12px; font-weight:500; color:var(--ink); text-decoration:none; }
.vbl-pill.active{ background:var(--ink); color:#fff; }
.vbl-pill:hover:not(.active){ background:var(--line); }

/* --- Artículo destacado --- */
.vbl-featured{ max-width:1160px; margin:0 auto; padding:26px 40px 0; }
.vbl-featured a{ display:grid; grid-template-columns:1fr 1fr; gap:0; background:var(--step-bg); border-radius:14px; overflow:hidden; min-height:280px; text-decoration:none; color:inherit; }
.vbl-featured-img{ background:linear-gradient(135deg,#F46036,#DB4E27); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.vbl-featured-img img{ width:100%; height:100%; object-fit:cover; }
.vbl-featured-img svg{ width:70px; height:90px; opacity:.5; }
.vbl-featured-body{ padding:32px; display:flex; flex-direction:column; justify-content:center; }
.vbl-cat{ font-family:'IBM Plex Mono',monospace; font-size:10px; color:var(--orange); text-transform:uppercase; letter-spacing:.08em; margin-bottom:10px; }
.vbl-featured-body h2{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:22px; font-weight:800; line-height:1.1; margin-bottom:10px; color:var(--ink); }
.vbl-featured-body p{ font-size:12.5px; color:var(--muted); line-height:1.6; margin-bottom:14px; }
.vbl-meta{ font-size:11px; color:var(--muted); }

/* --- Rejilla de artículos --- */
.vbl-grid{ max-width:1160px; margin:0 auto; padding:30px 40px 30px; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.vbl-card{ background:var(--surface); border-radius:12px; box-shadow:var(--shadow); overflow:hidden; text-decoration:none; color:inherit; display:block; }
.vbl-card-img{ aspect-ratio:16/10; background:var(--step-bg); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.vbl-card-img img{ width:100%; height:100%; object-fit:cover; }
.vbl-card-img svg{ width:36px; height:46px; opacity:.35; }
.vbl-card-body{ padding:16px 18px 20px; }
.vbl-card-body h3{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:15px; font-weight:700; line-height:1.2; margin-bottom:8px; color:var(--ink); }
.vbl-card-body p{ font-size:11.5px; color:var(--muted); line-height:1.55; margin-bottom:10px; }

.vbl-pagination{ max-width:1160px; margin:0 auto; padding:0 40px 60px; display:flex; justify-content:center; gap:8px; }
.vbl-pagination .page-numbers{
  display:flex; align-items:center; justify-content:center; min-width:34px; height:34px; padding:0 8px; border-radius:8px;
  font-family:'IBM Plex Mono',monospace; font-size:12px; color:var(--muted); background:var(--step-bg); text-decoration:none;
}
.vbl-pagination .page-numbers.current{ background:var(--ink); color:#fff; }
.vbl-pagination .page-numbers:hover:not(.current){ background:var(--line); }

.vbl-empty{ max-width:1160px; margin:0 auto; padding:60px 40px; text-align:center; color:var(--muted); }

/* ===================================================================
   ARTÍCULO INDIVIDUAL
=================================================================== */
.vart-narrow{ max-width:720px !important; }

.vart-head{ max-width:720px; margin:0 auto; padding:20px 40px 0; }
.vart-cat{ font-family:'IBM Plex Mono',monospace; font-size:11px; color:var(--orange); text-transform:uppercase; letter-spacing:.08em; margin-bottom:12px; }
.vart-head h1{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-weight:800; font-size:32px; line-height:1.05; letter-spacing:-.01em; margin-bottom:16px; color:var(--ink); }
.vart-meta{ font-size:12px; color:var(--muted); padding-bottom:24px; border-bottom:1px solid var(--line); }

.vart-hero{ max-width:900px; margin:26px auto 0; padding:0 40px; }
.vart-hero-img{ aspect-ratio:16/8; background:linear-gradient(135deg,#F46036,#DB4E27); border-radius:14px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.vart-hero-img img{ width:100%; height:100%; object-fit:cover; }
.vart-hero-img svg{ width:80px; height:100px; opacity:.5; }

.vart-body{ max-width:720px; margin:0 auto; padding:34px 40px 0; font-family:'IBM Plex Sans',sans-serif; }
.vart-body p{ font-size:14.5px; color:#3a3a38; line-height:1.85; margin-bottom:18px; }
.vart-body h2{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:21px; margin:36px 0 14px; color:var(--ink); }
.vart-body h3{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:17px; margin:28px 0 12px; color:var(--ink); }
.vart-body ul, .vart-body ol{ margin:0 0 18px 20px; }
.vart-body li{ font-size:14px; color:#3a3a38; line-height:1.8; margin-bottom:8px; }
.vart-body strong{ color:var(--ink); }
.vart-body a{ color:var(--orange); }
.vart-body img{ max-width:100%; height:auto; border-radius:10px; margin:10px 0 20px; }
.vart-body .lead, .vart-body p:first-of-type{ font-size:16.5px; color:var(--ink); font-weight:500; line-height:1.7; }

.vart-body table, .vart-body table.compare-table{ width:100%; border-collapse:collapse; margin:20px 0 28px; font-size:13px; }
.vart-body table th{ text-align:left; font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:12px; color:var(--ink); padding:10px 14px; background:var(--step-bg); }
.vart-body table th:first-child{ border-radius:8px 0 0 0; }
.vart-body table th:last-child{ border-radius:0 8px 0 0; }
.vart-body table td{ padding:10px 14px; color:var(--muted); border-bottom:1px solid var(--line); }

.vart-cta-box{ max-width:720px; margin:34px auto 0; padding:0 40px; }
.vart-cta-inner{ background:var(--step-bg); border-radius:14px; padding:30px 32px; text-align:center; }
.vart-cta-inner h3{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:19px; margin-bottom:8px; color:var(--ink); }
.vart-cta-inner p{ font-size:12.5px; color:var(--muted); margin-bottom:18px; }
.vart-cta-btn{ display:inline-block; background:var(--orange); color:#fff !important; border-radius:8px; padding:13px 28px; font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-weight:700; letter-spacing:.03em; font-size:13px; text-decoration:none; }
.vart-cta-btn:hover{ background:#DB4E27; }

.vart-related{ max-width:900px; margin:50px auto 0; padding:34px 40px 60px; border-top:1px solid var(--line); }
.vart-related h2{ font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:18px; margin-bottom:18px; color:var(--ink); }
.vart-related-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.vart-related-card{ display:flex; gap:14px; background:var(--surface); border-radius:10px; box-shadow:var(--shadow); padding:14px; text-decoration:none; color:inherit; }
.vart-related-card-img{ width:60px; height:60px; background:var(--step-bg); border-radius:8px; flex-shrink:0; overflow:hidden; }
.vart-related-card-img img{ width:100%; height:100%; object-fit:cover; }
.vart-related-card b{ display:block; font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; font-size:13px; color:var(--ink); line-height:1.25; margin-bottom:4px; }
.vart-related-card span{ font-size:10.5px; color:var(--muted); }

@media (max-width:860px){
  .vbl-filter-pills, .vbl-featured, .vbl-grid, .vbl-pagination{ padding-left:20px; padding-right:20px; }
  .vbl-featured a{ grid-template-columns:1fr; }
  .vbl-featured-img{ min-height:160px; }
  .vbl-grid{ grid-template-columns:1fr; }
}
@media (max-width:760px){
  .vart-head, .vart-body, .vart-cta-box, .vart-related{ padding-left:20px; padding-right:20px; }
  .vart-hero{ padding:0 20px; }
  .vart-related-grid{ grid-template-columns:1fr; }
}
