/* =========================================================
   Tu Cafetero Focus 3.0.28 - Artículos y contenido editorial
   ========================================================= */

.pcf-art-page,
.pcf-art-page *,
.pcf-art-related,
.pcf-art-related * { box-sizing: border-box; }

.pcf-art-page { background: var(--pcf-bg); }

.pcf-art-wrap { width: var(--pcf-shell); margin: 0 auto; padding: 46px 0 64px; }
.pcf-art-header { margin-bottom: 22px; }
.pcf-art-header h1 { margin: 0 0 10px; font-size: clamp(42px, 6vw, 76px); line-height: .98; letter-spacing: -.06em; color: var(--pcf-ink); }
.pcf-art-header p:not(.pcf-eyebrow) { max-width: 720px; margin: 0; color: var(--pcf-muted); font-size: 18px; }

.pcf-art-tools { margin: 0 0 24px; padding: 16px 18px; border: 1px solid var(--pcf-line); border-radius: 20px; background: #fffaf5; box-shadow: 0 12px 30px rgba(60,38,20,.055); }
.pcf-art-search { display: flex; gap: 8px; margin: 0 0 14px; }
.pcf-art-search input { min-width: 0; width: 100%; padding: 12px 14px; border: 1px solid #d7c5b4; border-radius: 12px; background: #fff; color: var(--pcf-ink); font: inherit; }
.pcf-art-search input:focus { outline: 2px solid rgba(111,63,32,.18); border-color: #b98a60; }
.pcf-art-search button { padding: 12px 18px; border: 0; border-radius: 12px; background: var(--pcf-coffee-dark); color: #fff; font-weight: 800; cursor: pointer; }
.pcf-art-search button:hover { background: var(--pcf-coffee); }

.pcf-art-filter-row { display: grid; grid-template-columns: 112px 1fr; gap: 12px; align-items: start; margin-top: 10px; }
.pcf-art-filter-label { padding-top: 6px; color: var(--pcf-coffee); font-size: 12px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.pcf-art-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.pcf-art-chip { display: inline-flex; align-items: center; padding: 6px 12px; border-radius: 999px; background: #eadccf; color: var(--pcf-coffee-dark); font-size: 13px; font-weight: 800; text-decoration: none; }
.pcf-art-chip--tag { background: #f4ece2; font-weight: 750; }
.pcf-art-chip:hover,
.pcf-art-chip.is-active { background: var(--pcf-coffee-dark); color: #fff; text-decoration: none; }

.pcf-art-active-filter,
.pcf-art-empty { margin: 0 0 20px; padding: 14px 16px; border: 1px solid var(--pcf-line); border-radius: 16px; background: #fff8ef; color: #4a3526; }
.pcf-art-active-filter a { margin-left: 4px; color: var(--pcf-coffee-dark); font-weight: 850; }

.pcf-art-grid,
.pcf-art-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pcf-art-card { overflow: hidden; border: 1px solid var(--pcf-line); border-radius: 18px; background: #fff; box-shadow: 0 12px 28px rgba(60,38,20,.06); transition: transform .16s ease, box-shadow .16s ease; }
.pcf-art-card:hover { transform: translateY(-2px); box-shadow: 0 18px 36px rgba(60,38,20,.10); }
.pcf-art-card__media { display: flex; height: 190px; align-items: center; justify-content: center; overflow: hidden; background: linear-gradient(135deg,#f9efe3,#dfe9d8); color: var(--pcf-coffee-dark); text-decoration: none; }
.pcf-art-card__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; transition: transform .2s ease; }
.pcf-art-card:hover .pcf-art-card__media img { transform: scale(1.035); }
.pcf-art-card__fallback { font-weight: 900; letter-spacing: .12em; text-transform: uppercase; opacity: .74; }
.pcf-art-card__body { padding: 18px; }
.pcf-art-card__meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 9px; color: #7a5a3f; font-size: 12px; font-weight: 780; }
.pcf-art-card__cat { display: inline-flex; padding: 4px 8px; border-radius: 999px; background: #efe0ce; color: var(--pcf-coffee-dark); font-size: 11px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.pcf-art-card__title { margin: 0 0 8px; color: var(--pcf-ink); font-size: 20px; line-height: 1.16; letter-spacing: -.025em; }
.pcf-art-card__title a { color: inherit; text-decoration: none; }
.pcf-art-card__title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.pcf-art-card__excerpt { margin: 0 0 12px; color: var(--pcf-muted); font-size: 15px; line-height: 1.45; }
.pcf-art-card__link { color: var(--pcf-coffee-dark); font-size: 14px; font-weight: 900; text-decoration-thickness: 1px; text-underline-offset: 3px; }

.pcf-art-pagination { margin-top: 28px; }
.pcf-art-pagination ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
.pcf-art-pagination a,
.pcf-art-pagination span { display: inline-flex; min-width: 38px; min-height: 38px; align-items: center; justify-content: center; padding: 7px 11px; border: 1px solid var(--pcf-line); border-radius: 11px; background: #fff; color: var(--pcf-coffee-dark); font-weight: 850; text-decoration: none; }
.pcf-art-pagination .current { background: var(--pcf-coffee-dark); color: #fff; }

/* Relacionados */
.pcf-art-related { width: var(--pcf-shell); margin: 36px auto 58px; }
.pcf-art-related__head { margin-bottom: 16px; }
.pcf-art-related__head h2 { margin: 0 0 6px; font-size: clamp(28px, 3vw, 40px); line-height: 1.05; letter-spacing: -.04em; }
.pcf-art-related__head p { margin: 0; color: var(--pcf-muted); }
.pcf-art-related__links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.pcf-art-related__links a { display: inline-flex; padding: 9px 14px; border-radius: 999px; background: #efe0ce; color: var(--pcf-coffee-dark); font-weight: 850; text-decoration: none; }
.pcf-art-related__links a:hover { background: var(--pcf-coffee-dark); color: #fff; }

/* Ajustes para entradas editoriales */
.single-post .pcf-content-card { max-width: 960px; }
.single-post .pcf-content { line-height: 1.55; }
.single-post .pcf-content p { font-size: 16px; line-height: 1.58; }
.single-post .pcf-content ul,
.single-post .pcf-content ol { margin-top: .35rem; margin-bottom: .85rem; }
.single-post .pcf-content li { margin-bottom: .2rem; }
.single-post .pcf-content :is(h2,h3,h4) { margin-top: 1.45rem; }
.single-post .pcf-single-hero-media img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: center; }

/* Compatibilidad con HTML editorial pegado en artículos anteriores */
.tc-article { max-width: 860px; margin: 0 auto; color: #2b2119; font-size: 16px; line-height: 1.5; }
.tc-article p { margin: 0 0 .72rem; }
.tc-article ul,
.tc-article ol { margin: .35rem 0 .85rem 1.15rem; padding-left: .75rem; }
.tc-article li { margin-bottom: .18rem; }
.tc-article h2 { margin: 1.65rem 0 .58rem; padding-left: .72rem; border-left: 4px solid #b46f32; color: #2b1b12; font-size: clamp(1.28rem,2vw,1.7rem); line-height: 1.18; letter-spacing: -.025em; }
.tc-article h3 { margin: 1.15rem 0 .38rem; color: #3a2518; font-size: 1.03rem; line-height: 1.28; }
.tc-article a { color: #6d3f21; text-underline-offset: 3px; }
.tc-article .tc-editorial-note,
.tc-article .tc-warning-box { max-width: 720px; margin: .65rem 0 1.05rem; padding: .58rem .72rem; border: 1px solid #e6d8c8; border-radius: 10px; background: #fbf7f1; color: #5c4a3b; font-size: .82rem; line-height: 1.34; box-shadow: none; }
.tc-article .tc-editorial-note h2,
.tc-article .tc-editorial-note h3,
.tc-article .tc-warning-box h2,
.tc-article .tc-warning-box h3 { display: inline; margin: 0; padding: 0; border: 0; color: #4b2e1f; font-size: .84rem; line-height: 1.3; letter-spacing: 0; }
.tc-article .tc-editorial-note h2::after,
.tc-article .tc-editorial-note h3::after,
.tc-article .tc-warning-box h2::after,
.tc-article .tc-warning-box h3::after { content: " · "; color: #a07858; }
.tc-article .tc-editorial-note p,
.tc-article .tc-warning-box p { margin-bottom: .28rem; }
.tc-article .tc-editorial-note ul,
.tc-article .tc-warning-box ul { margin: .25rem 0 .05rem .9rem; }
.tc-summary-box,
.tc-tip-box,
.tc-reference-box,
.tc-comparison-box { margin: 1rem 0; padding: .9rem 1rem; border-radius: 14px; border: 1px solid #eadfd3; background: #fff; box-shadow: 0 8px 18px rgba(68,42,26,.045); }
.tc-summary-box { background: #fff8ef; }
.tc-tip-box { background: #f6f5ea; }
.tc-table-wrap { overflow-x: auto; margin: 1rem 0 1.25rem; border: 1px solid #e2d5c7; border-radius: 14px; background: #fff; }
.tc-table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: .92rem; line-height: 1.38; }
.tc-table th { padding: .62rem .74rem; background: #3d281b; color: #fff; text-align: left; }
.tc-table td { padding: .62rem .74rem; border-top: 1px solid #eee2d6; }
.tc-table tr:nth-child(even) { background: #fbf7f2; }
.tc-reference-list { font-size: .92rem; line-height: 1.4; }

@media (max-width: 980px) {
  .pcf-art-grid,
  .pcf-art-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .pcf-art-wrap,
  .pcf-art-related { width: min(100% - 32px, 1160px); padding-top: 34px; }
  .pcf-art-header h1 { font-size: clamp(42px, 13vw, 58px); }
  .pcf-art-header p:not(.pcf-eyebrow) { font-size: 16px; }
  .pcf-art-search { flex-direction: column; }
  .pcf-art-filter-row { grid-template-columns: 1fr; gap: 6px; }
  .pcf-art-grid,
  .pcf-art-related__grid { grid-template-columns: 1fr; }
  .pcf-art-card__media { height: 180px; }
  .single-post .pcf-content p { font-size: 15.5px; line-height: 1.52; }
}
