/* Blog: listado, tarjeta y artículo (contenido HTML que llega de WordPress). */
.container{--bs-gutter-x:1.75rem}
.blog-hero{padding:64px 0 56px;background:linear-gradient(180deg,#eef9f7,#fff)}
@media(min-width:961px){.blog-hero{padding-top:156px}}
.blog-hero h1{max-width:900px;font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.08}
.blog-hero p{max-width:640px;margin-top:22px;font-size:1.1rem;line-height:1.8}
.blog-list{padding-top:24px}
.blog-empty{max-width:720px;margin-inline:auto;padding:64px 40px;border:1px dashed #b9d4d4;border-radius:28px;background:var(--mist);text-align:center}
.blog-empty .eyebrow{justify-content:center}
.blog-empty p{margin:18px auto 26px;max-width:520px}

.post-card{display:flex;flex-direction:column;width:100%;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;color:var(--ink);transition:transform .45s var(--ease),box-shadow .45s,border-color .45s}
.post-card-media{margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--mist)}
.post-card-media img{width:100%;height:100%;object-fit:cover;transition:scale 1.2s var(--ease)}
.post-card-placeholder{display:grid;place-items:center;height:100%;background:radial-gradient(circle at 80% 0,rgba(63,255,228,.35),transparent 55%),linear-gradient(135deg,var(--ink),var(--brand))}
.post-card-placeholder span{font-family:var(--display);font-weight:900;font-size:1.6rem;letter-spacing:.2em;color:rgba(255,255,255,.5)}
.post-card-body{display:flex;flex:1;flex-direction:column;gap:12px;padding:26px}
.post-card h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.12}
.post-card h3{font-size:1.3rem;line-height:1.25}
.post-card-body>p:not(.post-meta){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.7}
.post-card b{margin-top:auto;padding-top:8px;font-size:.92rem;color:var(--brand)}
.post-card b i{display:inline-block;font-style:normal;transition:translate .4s var(--ease)}
.post-card:hover{transform:translateY(-6px);border-color:rgba(10,91,105,.28);box-shadow:var(--glow)}
.post-card:hover img{scale:1.05}
.post-card:hover b i{translate:6px 0}
.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.post-meta>*+*:not(.post-tag)::before{content:'·';margin-right:14px}
.post-tag{padding:4px 10px;border-radius:999px;background:rgba(10,91,105,.09);color:var(--brand);font-weight:600}
@media(min-width:900px){
  .post-card-featured{flex-direction:row;align-items:stretch}
  .post-card-featured .post-card-media{flex:1.25;aspect-ratio:auto;min-height:400px}
  .post-card-featured .post-card-body{flex:1;justify-content:center;padding:48px}
}

.post .post-hero{padding:156px 0 60px;background:linear-gradient(180deg,#eef9f7,#fff);border-bottom:1px solid var(--line)}
.post .narrow{max-width:780px}
.post-back{display:inline-flex;align-items:center;gap:10px;font-size:.88rem;font-weight:600;color:var(--brand);line-height:1.5}
.post-hero .post-back{margin-bottom:32px}
.post-hero .post-meta{font-size:.7rem;gap:10px 16px;line-height:1.7}
.post-hero h1{font-size:clamp(2.3rem,4.6vw,3.9rem);line-height:1.12;margin-top:24px;text-wrap:pretty;overflow-wrap:break-word}
.post-lead{margin-top:22px;font-size:1.2rem;line-height:1.7}
.post-author{margin-top:22px;font-size:.92rem}
.post-author strong{color:var(--ink)}
.post-cover{max-width:1060px;margin-block:44px 0}
.post-cover img{width:100%;max-height:620px;object-fit:cover;border-radius:28px;box-shadow:0 50px 90px -55px rgba(1,33,43,.6)}

.post-content{padding-top:56px;font-size:1.09rem;line-height:1.85;color:#1f3c43;overflow-wrap:break-word}
.post-content>:first-child{margin-top:0}
.post-content>*+*{margin-top:1.45em}
.post-content p{color:inherit}
.post-content h2{margin-top:2.2em;font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.2}
.post-content h3{margin-top:1.9em;font-size:1.4rem}
.post-content h4{margin:1.7em 0 0;font-family:var(--display);font-size:1.15rem}
.post-content a{color:var(--brand);text-decoration:underline;text-decoration-color:rgba(10,91,105,.35);text-underline-offset:4px;transition:text-decoration-color .25s}
.post-content a:hover{text-decoration-color:currentColor}
.post-content ul,.post-content ol{padding-left:1.4em}
.post-content li+li{margin-top:.5em}
.post-content li::marker{color:var(--brand);font-weight:600}
.post-content img,.post-content video,.post-content iframe{max-width:100%;height:auto;border-radius:18px}
.post-content iframe{width:100%;aspect-ratio:16/9;border:0}
.post-content figure{margin-inline:0}
.post-content figure img{display:block;margin-inline:auto}
.post-content figcaption{margin-top:10px;font-size:.85rem;text-align:center;color:var(--muted)}
.post-content blockquote{margin-inline:0;padding:22px 28px;border-left:4px solid var(--cyan);border-radius:0 18px 18px 0;background:var(--mist);font-family:var(--display);font-size:1.25rem;line-height:1.5;color:var(--ink)}
.post-content blockquote cite{display:block;margin-top:12px;font-family:var(--body);font-size:.88rem;font-style:normal;color:var(--muted)}
.post-content pre{overflow-x:auto;padding:20px;border-radius:16px;background:var(--ink);color:#d7f5f0;font-family:var(--mono);font-size:.88rem;line-height:1.6}
.post-content :not(pre)>code{padding:2px 6px;border-radius:6px;background:var(--mist);font-family:var(--mono);font-size:.9em}
.post-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:.95rem}
.post-content th,.post-content td{padding:10px 14px;border:1px solid var(--line);text-align:left}
.post-content th{background:var(--mist)}
.post-content hr{height:1px;border:0;background:var(--line)}
.post-content .aligncenter{margin-inline:auto;text-align:center}
.post-content .alignleft{float:left;margin:0 24px 16px 0}
.post-content .alignright{float:right;margin:0 0 16px 24px}
.post-content .wp-block-gallery,.post-content .blocks-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding:0;list-style:none}
.post-content .wp-block-gallery figure{margin:0}
.post-content .wp-block-button__link{display:inline-flex;padding:14px 24px;border-radius:14px;background:var(--brand-deep);color:#fff;text-decoration:none;font-weight:600}
.post-content::after{content:'';display:block;clear:both}

.post-footer{margin-block:48px 72px;padding-top:28px;border-top:1px solid var(--line)}
.post-footer>.post-back{margin-top:28px}
.post-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0;list-style:none}
.post-tags li{padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:.82rem;color:var(--muted)}
.post-share{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.post-share>span{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.post-share button{border-width:0 0 1px;background:none;cursor:pointer}
.post-share>.text-link{min-height:44px;align-items:center}
.blog-more{background:var(--mist)}
@media(min-width:641px) and (max-width:960px){.post .post-hero{padding:72px 0 48px}}
@media(max-width:640px){
  .post .post-hero{padding:64px 0 36px}
  .post-hero .post-back{margin-bottom:24px}
  .post-hero h1{font-size:clamp(2rem,9vw,2.8rem)}
  .post-lead{font-size:1.05rem}
  .post-cover{margin-top:28px}
  .post-content{padding-top:36px;font-size:1rem;line-height:1.8}
  .post-footer{margin-block:36px 48px}
  .post-share{gap:12px 18px}
  .post-share>span{flex-basis:100%}
  .post-content .alignleft,.post-content .alignright{float:none;margin:0}
  .post-cover img{border-radius:18px}
  .blog-empty{padding:44px 22px}
}
.blog-pagination{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}
.blog-pagination-status{font-family:var(--mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
