/* Blog: portada (blog.php) y artículo (blog.php?a=…) */
.bl-cab{padding:150px 0 30px}
.bl-cab h1{font-size:clamp(40px,6vw,76px);line-height:1.02;margin-bottom:20px}
.bl-cats{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.bl-cats a{padding:9px 16px;border-radius:99px;border:1px solid var(--line2);color:var(--muted);font-size:14.5px;font-weight:600;transition:border-color .2s,color .2s}
.bl-cats a:hover{color:var(--text);border-color:var(--text)}
.bl-cats a.on{background:var(--lima);border-color:var(--lima);color:#0a0a0a}
.bl-lista{padding:30px 0 110px}

.bl-dest{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,4vw,56px);align-items:center;margin-bottom:46px}
.bl-dest .bl-c-img{aspect-ratio:16/10;border-radius:26px}
.bl-dest small,.bl-c small{color:var(--lima);font-size:13px;font-weight:600}
.bl-dest h2{font-size:clamp(28px,3.2vw,42px);line-height:1.08;margin:12px 0 14px}
.bl-dest p{color:#d6d6d0;font-size:17px;line-height:1.6}
.bl-dest:hover h2{color:var(--lima)}

.bl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bl-c{display:flex;flex-direction:column;border-radius:24px;background:var(--bg2);border:1px solid var(--line);overflow:hidden;transition:border-color .2s,transform .2s}
.bl-c:hover{border-color:color-mix(in srgb,var(--lima) 50%,transparent);transform:translateY(-3px)}
.bl-c-img{aspect-ratio:16/9;background:var(--bg3) center/cover;border:1px solid var(--line)}
.bl-c .bl-c-img{border:0;border-bottom:1px solid var(--line)}
.bl-c-t{display:flex;flex-direction:column;gap:8px;padding:20px 22px 24px}
.bl-c b{font-size:19px;line-height:1.25}
.bl-c span{color:var(--muted);font-size:14.5px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* Artículo */
.bl-art-cab{padding:140px 0 34px}
.bl-art-cab .wrap{max-width:860px}
.bl-art-cab h1{font-size:clamp(34px,4.6vw,58px);line-height:1.05;margin:18px 0 20px}
.bl-art-cab .lead{max-width:none}
.bl-migas{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:14.5px;font-weight:600}
.bl-migas a:hover{color:var(--lima)}
.bl-meta{color:var(--muted);font-size:14.5px;margin-top:18px}
.bl-art-img{aspect-ratio:21/9;border-radius:28px;background:var(--bg3) center/cover;border:1px solid var(--line);margin-bottom:56px}
.bl-art-g{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(30px,5vw,70px);align-items:start;padding-bottom:80px}
.bl-indice{position:sticky;top:110px;font-size:14px}
.bl-indice b{display:block;margin-bottom:12px;font-size:14.5px}
.bl-indice ol{list-style:none;display:grid;gap:10px;border-left:1px solid var(--line2);padding-left:16px}
.bl-indice a{color:var(--muted);line-height:1.4}
.bl-indice a:hover{color:var(--lima)}
.bl-txt{max-width:720px;font-size:18px;line-height:1.72;color:#dcdcd5}
.bl-txt h2{font-size:clamp(25px,2.6vw,33px);line-height:1.15;color:var(--text);margin:52px 0 16px;scroll-margin-top:110px}
.bl-txt h2:first-child{margin-top:0}
.bl-txt h3{font-size:21px;color:var(--text);margin:32px 0 10px}
.bl-txt p{margin-bottom:20px}
.bl-txt ul,.bl-txt ol{margin:0 0 22px 22px;display:grid;gap:9px}
.bl-txt li::marker{color:var(--lima)}
.bl-txt strong{color:var(--text)}
.bl-txt a{color:var(--lima);text-decoration:underline;text-underline-offset:3px}
.bl-txt blockquote{margin:28px 0;padding:20px 24px;border-radius:18px;background:var(--bg2);border:1px solid var(--line);color:var(--text)}
.bl-txt table{width:100%;border-collapse:collapse;margin:8px 0 26px;font-size:15.5px}
.bl-txt th,.bl-txt td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.bl-txt th{color:var(--text)}
.bl-tabla{overflow-x:auto}
.bl-faq{display:grid;gap:10px;margin-bottom:10px}
.bl-faq details{border:1px solid var(--line);border-radius:16px;background:var(--bg2);padding:16px 20px}
.bl-faq summary{cursor:pointer;font-weight:600;color:var(--text);list-style:none;display:flex;justify-content:space-between;gap:14px}
.bl-faq summary::after{content:"+";color:var(--lima);font-size:22px;line-height:1}
.bl-faq details[open] summary::after{content:"−"}
.bl-faq p{margin:12px 0 0;font-size:16.5px}
.bl-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:46px 0 30px;padding:26px 28px;border-radius:24px;background:color-mix(in srgb,var(--lima) 9%,var(--bg2));border:1px solid color-mix(in srgb,var(--lima) 35%,transparent)}
.bl-cta div{display:flex;flex-direction:column;gap:4px}
.bl-cta b{font-size:20px;color:var(--text)}
.bl-cta span{color:var(--muted);font-size:15.5px;line-height:1.5}
.bl-cta .btn{white-space:nowrap;text-decoration:none;color:#0a0a0a}
.bl-rel-int{display:flex;flex-direction:column;gap:8px;font-size:16px}
.bl-rel-int b{color:var(--text)}
.bl-mas{padding:20px 0 110px}
.bl-mas h2{font-size:clamp(28px,3vw,40px);margin-bottom:28px}
.bl-404{padding:170px 0 120px}
.bl-404 h1{font-size:clamp(36px,5vw,60px);margin-bottom:16px}
.bl-404 .btn{margin-top:26px}

@media(max-width:960px){
  .bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bl-art-g{grid-template-columns:minmax(0,1fr)}
  .bl-indice{position:static;padding:18px 20px;border-radius:18px;background:var(--bg2);border:1px solid var(--line)}
  .bl-indice ol{border:0;padding:0}
}
@media(max-width:700px){
  .bl-cab{padding:120px 0 20px}
  .bl-art-cab{padding:118px 0 26px}
  .bl-cats{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding-inline:16px;scrollbar-width:none}
  .bl-cats a{flex:0 0 auto}
  .bl-dest{grid-template-columns:minmax(0,1fr)}
  .bl-grid{grid-template-columns:minmax(0,1fr)}
  .bl-art-img{aspect-ratio:16/10;border-radius:20px;margin-bottom:34px}
  .bl-txt{font-size:17px}
  .bl-cta{flex-direction:column;align-items:flex-start}
  .bl-cta .btn{width:100%;text-align:center}
}
