/* ═══════════════════════════════════════════════════════════════
   ARTÍCULO "APRENDE" — /bienes-raices/aprende/:slug
   ═══════════════════════════════════════════════════════════════ */

/* ── Hero ──────────────────────────────────────────────────────── */
.art-hero {
  background: var(--navy, #0B1F33);
  padding: var(--esp-48) var(--esp-24) var(--esp-48);
}
.art-hero-inner { max-width: 900px; }

.art-breadcrumb {
  display: flex; flex-wrap: wrap; gap: var(--esp-6); align-items: center;
  font-size: 13px; color: rgba(255,255,255,.5); margin-bottom: var(--esp-20);
}
.art-breadcrumb a { color: rgba(255,255,255,.5); text-decoration: none; }
.art-breadcrumb a:hover { color: #fff; }

.art-titulo {
  font: 800 clamp(1.8rem, 4vw, 2.8rem)/1.15 var(--font-head, Archivo, sans-serif);
  color: #fff; margin: 0 0 var(--esp-20);
}

.art-meta {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--esp-10);
  font-size: 13px; color: rgba(255,255,255,.6);
}
.art-autor {
  display: flex; align-items: center; gap: var(--esp-6);
}
.art-autor svg { width: 14px; height: 14px; flex-shrink: 0; }
.art-sep { opacity: .4; }
.art-tag {
  padding: var(--esp-2) var(--esp-10); background: rgba(255,107,74,.2);
  color: var(--coral, var(--coral)); border-radius: var(--radio-20); font-size: 12px; font-weight: 600;
}

/* ── Layout principal ──────────────────────────────────────────── */
.art-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: var(--esp-48);
  padding: var(--esp-48) var(--esp-24) var(--esp-80);
  max-width: 1100px;
  margin: 0 auto;
  align-items: start;
}

/* ── Prosa del artículo ────────────────────────────────────────── */
.art-body.prose {
  font: 16px/1.8 var(--font-body, Inter, sans-serif);
  color: #374151;
}

.prose h2 {
  font: 700 1.5rem/1.25 var(--font-head, Archivo, sans-serif);
  color: var(--navy, #0B1F33); margin: 2.5em 0 .8em;
  padding-bottom: .4em; border-bottom: 2px solid #e2ddd5;
}
.prose h3 {
  font: 700 1.15rem/1.3 var(--font-head, Archivo, sans-serif);
  color: var(--navy, #0B1F33); margin: 1.8em 0 .5em;
}

.prose p  { margin: 0 0 1.2em; }
.prose ul,
.prose ol { padding-left: 1.5em; margin: 0 0 1.2em; }
.prose li { margin-bottom: .4em; }

.prose strong { color: var(--navy, #0B1F33); font-weight: 700; }

.prose a { color: var(--coral, var(--coral)); text-decoration: none; }
.prose a:hover { text-decoration: underline; }

.prose blockquote {
  margin: 1.5em 0; padding: var(--esp-16) var(--esp-20);
  background: #F0F9FF; border-left: 4px solid #1A56A0;
  border-radius: 0 10px 10px 0; color: #1E40AF;
  font-size: 15px;
}
.prose blockquote p { margin: 0; }

.prose table {
  width: 100%; border-collapse: collapse; margin: 1.5em 0;
  font-size: 14px;
}
.prose th {
  background: var(--navy, #0B1F33); color: #fff;
  padding: var(--esp-10) var(--esp-12); text-align: left; font-weight: 600;
}
.prose td { padding: var(--esp-10) var(--esp-12); border-bottom: 1px solid #e2ddd5; }
.prose tr:last-child td { border-bottom: none; }
.prose tr:nth-child(even) td { background: #f9f8f5; }

.prose hr {
  border: none; border-top: 2px solid #e2ddd5; margin: 2em 0;
}

/* El H1 del markdown ya se muestra en el hero — ocultamos el del body */
.prose > h1:first-child { display: none; }

/* Párrafo final en cursiva (disclaimer/CTA) */
.prose > p:last-child { font-style: italic; color: #8A94A6; }

/* ── Sidebar ───────────────────────────────────────────────────── */
.art-aside { position: sticky; top: calc(var(--nav-h, 70px) + 20px); display: flex; flex-direction: column; gap: var(--esp-20); }

.art-cta-card {
  background: var(--navy, #0B1F33); color: #fff;
  border-radius: var(--card-radius); padding: var(--esp-24); text-align: center;
}
.art-cta-avatar {
  width: 56px; height: 56px; border-radius: 50%;
  background: var(--coral, var(--coral)); color: #fff;
  display: grid; place-items: center; margin: 0 auto var(--esp-12);
  font: 700 18px/1 var(--font-head, Archivo, sans-serif);
}
.art-cta-name { font: 700 16px/1.2 var(--font-head, Archivo, sans-serif); margin: 0 0 var(--esp-4); }
.art-cta-lic  { font-size: 12px; color: rgba(255,255,255,.55); margin: 0 0 var(--esp-12); }
.art-cta-text { font-size: 14px; color: rgba(255,255,255,.75); margin: 0 0 var(--esp-16); line-height: 1.5; }

.art-cta-btn {
  display: block; padding: var(--esp-12);
  background: var(--coral, var(--coral)); color: #fff;
  border-radius: var(--radio-10); text-decoration: none;
  font: 700 14px/1 var(--font-head, Archivo, sans-serif);
  margin-bottom: var(--esp-10); transition: background .2s;
}
.art-cta-btn:hover { background: #e85a39; }

.art-wa-btn {
  display: flex; align-items: center; justify-content: center; gap: var(--esp-8);
  padding: var(--esp-10); border-radius: var(--radio-10);
  background: #25D366; color: #fff;
  text-decoration: none; font: 600 14px/1 var(--font-body, Inter, sans-serif);
  transition: background .2s;
}
.art-wa-btn:hover { background: #1EBE58; }
.art-wa-btn svg  { width: 18px; height: 18px; }

.art-more-card {
  background: #fff; border: 1px solid #e2ddd5;
  border-radius: var(--radio-12); padding: var(--esp-20);
}
.art-more-title {
  font: 700 15px/1 var(--font-head, Archivo, sans-serif);
  color: var(--navy, #0B1F33); margin: 0 0 var(--esp-12);
}
.art-more-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--esp-10); }
.art-more-list li::before { content: "→ "; color: var(--coral, var(--coral)); }
.art-more-list a { font-size: 14px; color: #374151; text-decoration: none; }
.art-more-list a:hover { color: var(--coral, var(--coral)); }

.art-prop-link {
  display: flex; align-items: center; gap: var(--esp-10);
  padding: var(--esp-12) var(--esp-16); border-radius: var(--radio-12);
  background: var(--cream, #F7F5F0); border: 1.5px solid #e2ddd5;
  text-decoration: none; color: var(--navy, #0B1F33);
  font: 600 14px/1.3 var(--font-body, Inter, sans-serif);
  transition: border-color .2s, background .2s;
}
.art-prop-link:hover { border-color: var(--coral, var(--coral)); background: #fff; }
.art-prop-link svg { width: 20px; height: 20px; flex-shrink: 0; }


/* ── Responsive ────────────────────────────────────────────────── */
@media (max-width: 1023px) {
  .art-layout { grid-template-columns: 1fr; gap: var(--esp-32); padding: var(--esp-40) var(--esp-16) 60px; }
  .art-aside { position: static; }
  .art-cta-card { display: grid; grid-template-columns: auto 1fr; gap: var(--esp-8) var(--esp-16); text-align: left; }
  .art-cta-avatar { margin: 0; }
  .art-cta-name, .art-cta-lic { grid-column: 2; }
  .art-cta-text { grid-column: 1 / -1; }
  .art-cta-btn, .art-wa-btn { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
  .art-hero { padding: var(--esp-40) var(--esp-16) var(--esp-32); }
  .art-cta-card { display: flex; flex-direction: column; text-align: center; }
  .art-cta-avatar { margin: 0 auto var(--esp-12); }
  .prose table { font-size: 13px; }
  .prose th, .prose td { padding: var(--esp-8) var(--esp-10); }
}

/* ── Formulario de captura en sidebar ─────────────────────────── */
.art-lead-card {
  background: var(--navy, #0B1F33);
  border-radius: var(--radio-12);
  padding: var(--esp-20) var(--esp-20);
  margin-bottom: var(--esp-16);
}
.art-lead-title {
  font: 700 16px/1.3 var(--font-body, Inter, sans-serif);
  color: #fff;
  margin: 0 0 var(--esp-6);
}
.art-lead-sub {
  font-size: 13px;
  color: rgba(255,255,255,.65);
  margin: 0 0 var(--esp-16);
  line-height: 1.5;
}
.art-field { margin-bottom: var(--esp-10); }
.art-field input {
  width: 100%;
  box-sizing: border-box;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: var(--radio-8);
  padding: var(--esp-10) var(--esp-12);
  font: 14px/1 var(--font-body, Inter, sans-serif);
  color: #fff;
  outline: none;
  transition: border-color .15s;
}
.art-field input::placeholder { color: rgba(255,255,255,.45); }
.art-field input:focus { border-color: var(--coral, var(--coral)); }
.art-lead-btn {
  display: block;
  width: 100%;
  background: var(--coral, var(--coral));
  color: #fff;
  border: none;
  border-radius: var(--radio-8);
  padding: var(--esp-12);
  font: 700 14px/1 var(--font-body, Inter, sans-serif);
  cursor: pointer;
  margin-top: var(--esp-4);
  transition: background .15s;
}
.art-lead-btn:hover { background: #e85a39; }
.art-lead-fine {
  font-size: 11px;
  color: rgba(255,255,255,.4);
  text-align: center;
  margin: var(--esp-10) 0 0;
}

/* ES: táctil mínimo 44 (Tanda 2b). */
.art-cta-btn, .art-wa-btn { min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; }

/* ES: campos del form del artículo + breadcrumb — táctil 44 (Tanda 2b, ronda 2). */
.art-scope input:not([type=hidden]), .art-scope select, article input:not([type=hidden]), article select { min-height: 44px; box-sizing: border-box; }
.art-breadcrumb a { display: inline-block; padding-block: var(--esp-12); margin-block: -12px; }

/* ES: form del lead magnet del artículo (#art-lead-form) — táctil 44 (ronda 3). */
#art-lead-form input:not([type=hidden]), #art-lead-form select { min-height: 44px; box-sizing: border-box; }

/* ES: TANDA 2c — piso de 14px en móvil para los textos de apoyo del artículo.
   EN: 14px mobile floor for article support texts. */
@media (max-width: 767px) {
  .art-autor, .art-tag, .art-cta-lic, .art-lead-sub, .art-lead-fine,
  .footer-idx-text, .footer-idx-equal { font-size: 14px; }
}

/* ES: línea de lectura ≤75ch (Tanda 2d) — los textos del índice del pie
   corrían a 183ch en escritorio. EN: reading cap for footer-index texts. */
.footer-idx-text, .footer-idx-equal { max-width: 70ch; }

/* ES: restos de 13px disueltos (Tanda 2f): breadcrumb al piso móvil.
   EN: 13px leftovers dissolved — breadcrumb to the 14px mobile floor. */
@media (max-width: 767px) {
  .art-breadcrumb a, .art-breadcrumb span { font-size: 14px; }
}
