/* Mahanse — blog (Plan 3, P4, 10-10). Va DESPUÉS de mahanse.css, que pone tokens, cabecera, pie, botones,
   Cielo, Chispa y Lienzo. Aquí solo lo del listado y del artículo.
   Capas: @pagina:blog. SEO (W13): un solo H1, índice con anclas, texto a 68 caracteres, imágenes con tamaño. */
  /* @pagina:blog */

  /* ===== cabecera de página: cielo de estrellas, migas, píldora, H1 centrado y subtítulo (K08) ===== */
  .b-hero{padding-top:clamp(132px,15vw,196px);padding-bottom:clamp(44px,6vw,80px);text-align:center;isolation:isolate}
  .b-hero>.cielo{-webkit-mask-image:radial-gradient(ellipse 70% 62% at 50% 40%,#000 0%,rgba(0,0,0,.5) 55%,transparent 100%);
    mask-image:radial-gradient(ellipse 70% 62% at 50% 40%,#000 0%,rgba(0,0,0,.5) 55%,transparent 100%)}
  .b-hero .in{max-width:860px;margin:0 auto}
  .migas{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 0 var(--s3);padding:0;list-style:none;
    font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--niebla)}
  .migas li+li::before{content:"/";margin-right:8px;color:var(--niebla)}
  .migas a{color:var(--soft)} .migas a:hover{color:#fff}
  .b-hero h1{font-size:clamp(34px,5vw,64px);line-height:1.08;text-wrap:balance}
  .b-hero .dek{margin:var(--s3) auto 0;max-width:56ch;font-size:clamp(15.5px,1.4vw,18px);line-height:1.65;color:var(--soft);text-wrap:pretty}
  .b-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;margin-top:var(--s4);
    font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
  .b-meta span{display:inline-flex;align-items:center;gap:8px}
  .b-meta span+span::before{content:"·";margin-right:10px;color:var(--niebla)}
  .b-meta .ico{width:15px;height:15px}

  /* ===== foto de portada del artículo: tarjeta (radio de foto), nunca a sangre con degradado (K29) ===== */
  .b-portada{padding:0 var(--gut);margin:0 auto clamp(48px,6vw,88px);max-width:calc(1080px + var(--gut) * 2)}
  .b-portada img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:20px;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 40px 80px -40px rgba(0,0,0,.8)}

  /* ===== cuerpo: índice fijo a la izquierda (ordenador) y texto a 68 caracteres ===== */
  .b-cuerpo{padding-top:0;padding-bottom:clamp(64px,8vw,120px)}
  .b-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(36px,6vw,88px);align-items:start}
  .indice{position:sticky;top:96px;font-size:13.5px;line-height:1.45}
  .indice .mn{display:block;color:var(--niebla);margin-bottom:var(--s2)}
  .indice ol{list-style:none;margin:0;padding:0;border-left:1px solid rgba(255,255,255,.08)}
  .indice li a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:1px solid transparent;color:var(--soft);transition:color .25s ease,border-color .25s ease}
  .indice li a:hover{color:#fff}
  .indice li a[aria-current="true"]{color:#fff;border-left-color:var(--senal)}
  .indice summary{display:none}

  .art{max-width:68ch;font-size:17.5px;line-height:1.78;color:rgba(244,246,248,.86)}
  .art>*:first-child{margin-top:0}
  .art p{max-width:none;margin:0 0 1.25em;color:inherit}
  .art h2{font-size:clamp(25px,2.6vw,33px);line-height:1.18;margin:2.1em 0 .7em;scroll-margin-top:96px;text-wrap:balance}
  .art h3{font-family:var(--ui);font-weight:500;font-size:19px;line-height:1.4;letter-spacing:0;margin:1.7em 0 .5em;color:#fff}
  .art strong,.art b{font-weight:500;color:#fff}
  .art a{color:#fff;text-decoration:underline;text-decoration-color:rgba(143,197,214,.6);text-underline-offset:3px}
  .art a:hover{text-decoration-color:var(--senal)}
  .art ul,.art ol{margin:0 0 1.4em;padding-left:1.2em}
  .art li{margin:.35em 0;padding-left:.3em}
  .art ul li::marker{color:var(--senal)}
  .art ol li::marker{color:var(--senal);font-family:var(--mono);font-size:.82em}
  .art blockquote{margin:1.8em 0;padding:0;font-family:var(--disp);font-style:italic;font-size:clamp(21px,2vw,25px);line-height:1.45;color:#fff;text-align:center}
  .art figure{margin:2.2em 0}
  .art figure img{width:100%;height:auto;border-radius:18px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
  .art figcaption{margin-top:10px;font-size:13.5px;color:var(--niebla);text-align:center}
  .art-video a{position:relative;display:block;border-radius:18px;overflow:hidden}
  .art-video img{aspect-ratio:16/9;object-fit:cover;filter:brightness(.62)}
  .art-video .play{position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;
    background:rgba(10,14,20,.6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
  .art-video .play svg{width:22px;height:22px;fill:#fff}

  /* ===== quién lo escribe (E-E-A-T): el equipo, con sus caras reales y enlace a About ===== */
  .autor{display:flex;gap:var(--s3);align-items:center;margin-top:var(--s5);padding:var(--s4);border-radius:18px;background:var(--chapa);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
  .autor .caras{display:flex;flex:0 0 auto}
  .autor .caras img{width:46px;height:46px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px #0F141C}
  .autor .caras img+img{margin-left:-12px}
  .autor b{display:block;font-family:var(--disp);font-weight:400;font-size:19px;color:#fff;margin-bottom:4px}
  .autor p{margin:0;font-size:14.5px;line-height:1.6;color:var(--soft)}
  .autor a{color:#fff;text-decoration:underline;text-decoration-color:rgba(143,197,214,.6);text-underline-offset:3px}

  /* ===== tarjetas de artículo (listado y "Keep reading") ===== */
  .b-lista{padding-top:0;padding-bottom:clamp(24px,4vw,56px)}
  .posts{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2)}
  .post{position:relative;display:flex;flex-direction:column;border-radius:20px;padding:14px 14px 26px;background:var(--chapa);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .post:hover{transform:translateY(-3px)}
  .post .pic{aspect-ratio:16/10;border-radius:13px;overflow:hidden;background:var(--sup);margin-bottom:var(--s3)}
  .post .pic img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
  .post:hover .pic img{transform:scale(1.03)}
  .post .txt{display:flex;flex-direction:column;flex:1}
  .post .mn{color:var(--senal);margin:0 8px 10px}
  .post h2,.post h3{font-size:clamp(19px,1.7vw,22px);line-height:1.25;margin:0 8px 10px}
  .post h2 a::after,.post h3 a::after{content:"";position:absolute;inset:0;border-radius:20px} /* toda la tarjeta es el enlace */
  .post p{font-size:14.5px;line-height:1.6;margin:0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .post .cuando{margin:auto 8px 0;padding-top:var(--s3);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--niebla)}

  /* el último artículo, grande: foto a la izquierda y texto a la derecha */
  .post--grande{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:var(--s4);align-items:center;padding:14px}
  .post--grande .pic{aspect-ratio:16/10;margin:0}
  .post--grande .txt{padding:var(--s3) var(--s3) var(--s3) 0}
  .post--grande h2{font-size:clamp(26px,2.8vw,38px);line-height:1.12;margin-bottom:var(--s2)}
  .post--grande p{font-size:16px;-webkit-line-clamp:4}
  .post--grande .cuando{padding-top:var(--s3)}
  /* si el último artículo se queda solo en su fila, va a lo ancho (foto y texto lado a lado), sin huecos */
  @media (min-width:981px){
    .posts>.post:not(.post--grande):last-child:nth-child(3n+2){grid-column:1/-1;display:grid;grid-template-columns:1fr 1.4fr;gap:var(--s4);align-items:center;padding:14px}
    .posts>.post:not(.post--grande):last-child:nth-child(3n+2) .pic{margin:0}
    .posts>.post:not(.post--grande):last-child:nth-child(3n+2) .txt{padding:var(--s2) var(--s3) var(--s2) 0}
  }

  /* ===== el final: próximas fechas + "Ask us anything" (Lienzo, del kit) ===== */
  .b-final{padding-top:clamp(64px,8vw,110px)}
  .b-final>.cielo{-webkit-mask-image:radial-gradient(ellipse 66% 50% at 50% 50%,#000 0%,rgba(0,0,0,.5) 50%,transparent 100%);
    mask-image:radial-gradient(ellipse 66% 50% at 50% 50%,#000 0%,rgba(0,0,0,.5) 50%,transparent 100%)}
  .panel-c .fila-fecha{display:grid;grid-template-columns:20px 1fr auto;gap:14px;align-items:center}
  .panel-c .fila-fecha small{margin-top:2px}
  .panel-c .fila-fecha .mn{color:var(--senal);font-size:9.5px}

  @media (max-width:980px){
    .b-grid{grid-template-columns:minmax(0,1fr)}
    .indice{position:static;margin-bottom:var(--s4);padding:var(--s2) var(--s3);border-radius:16px;background:var(--chapa);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
    .indice summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}
    .indice summary::-webkit-details-marker{display:none}
    .indice summary .mn{margin:0}
    .indice summary svg{width:12px;height:12px;stroke:var(--soft);fill:none;stroke-width:1.6;transition:transform .25s ease}
    .indice[open] summary svg{transform:rotate(45deg)}
    .indice[open] ol{margin-top:var(--s2)}
    .indice>.mn{display:none}
    .posts{grid-template-columns:repeat(2,minmax(0,1fr))}
    .post--grande{grid-template-columns:1fr}
    .post--grande .txt{padding:var(--s1) 8px var(--s2)}
  }
  @media (max-width:640px){
    .b-portada img{aspect-ratio:4/3}
    .b-meta{flex-direction:column;align-items:center}
    .b-meta span+span::before{display:none}
    .posts{grid-template-columns:minmax(0,1fr)}
    .art{font-size:17px}
    .autor{flex-direction:column;align-items:flex-start}
  }
