/* Capa adicional: conserva styles.css y los estilos de contacto. */
.blog-byline { display:flex; flex-wrap:wrap; gap:14px 24px; margin-top:28px; font-size:13px; }
.blog-cover { margin:0 0 32px; }
.blog-cover img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:10px; }
.blog-body { overflow-wrap:anywhere; }
.blog-body img { max-width:100%; height:auto; }
.blog-body h2, .blog-body h3 { scroll-margin-top:110px; }
.blog-body h3 { margin:32px 0 14px; font-size:24px; line-height:1.35; }
.blog-body a { text-decoration:underline; text-underline-offset:3px; }
.blog-body ol { padding-left:24px; line-height:1.85; color:#4c535d; }
.blog-body table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin:24px 0; }
.blog-body :is(th, td) { border:1px solid #d6dbe1; padding:10px 14px; text-align:left; }
.blog-body pre { white-space:pre; overflow-x:auto; }
.blog-card-slot { display:flex; min-width:0; }
.blog-card-slot > .post-card { width:100%; }
.blog-card-art { position:relative; height:auto; aspect-ratio:16/9; overflow:hidden; isolation:isolate; }
.blog-card-image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; }
.blog-card-art::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(transparent,rgba(25,30,37,.8)); }
.blog-card-category { position:relative; color:#ffcc57; }
.filter-buttons a.filter-button { display:inline-flex; align-items:center; text-decoration:none; color:inherit; }
.filter-buttons a[aria-current="true"] { background:var(--charcoal,#2a2e35); border-color:var(--charcoal,#2a2e35); color:#fff; }
.search-box { display:flex; align-items:center; gap:8px; }
.search-box input { min-width:0; }
.blog-search-submit { border:0; background:transparent; color:#725000; font:inherit; font-weight:600; cursor:pointer; }
.blog-results-count { color:#596575; font-size:13px; margin:0 0 24px; }
.blog-loading { opacity:.55; }
.blog-pagination { margin-top:32px; }
.blog-page-links { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.blog-page-links :is(a, span) { display:inline-flex; align-items:center; justify-content:center; min-width:42px; min-height:42px; padding:8px 12px; border:1px solid #d1d7df; text-decoration:none; }
.blog-page-links a { color:#29313d; background:#fff; }
.blog-page-links a:hover { background:#fff7df; border-color:#b48627; }
.blog-page-links .blog-page-current { color:#252b35; background:#ffcc57; border-color:#ffcc57; font-weight:700; }
.blog-page-links .blog-page-disabled { color:#7b8592; background:#f4f5f7; }
.blog-detail .sidebar h2 { font-size:24px; line-height:1.3; }
#blog-results { scroll-margin-top:110px; }
.blog-visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
:is(.blog-page-links, .filter-buttons, .search-box, .blog-detail) :is(a, button, input):focus-visible { outline:3px solid #855900; outline-offset:3px; }
@media (max-width:1100px) { .blog-detail .article-layout { grid-template-columns:minmax(0,1fr); gap:32px; } .blog-detail .sidebar { position:static; } }
@media (prefers-reduced-motion:reduce) { .post-card { animation:none; transition:none; } }
