/* ===================================================================
   EVOLVE Consultores — identidad visual sobre el tema Source de Ghost
   Valores de marca tomados del CSS original de Squarespace.
   =================================================================== */

:root {
  --evolve-navy:    #0a1f3d;
  --evolve-teal:    #2dd4bf;
  --evolve-teal-tx: #0f8f80;   /* teal legible sobre fondo blanco */
  --evolve-texto:   #1b2733;
  --evolve-suave:   #4b5563;
  --evolve-linea:   #e5e7eb;
  --evolve-fondo:   #fafafa;
  --ghost-accent-color: #2dd4bf;
}

/* ---------- Encabezado del sitio ---------- */
.gh-navigation {
  background: var(--evolve-navy);
  border-bottom: 3px solid var(--evolve-teal);
}
.gh-navigation a,
.gh-navigation .gh-navigation-brand a,
.gh-navigation .gh-navigation-menu .nav li a,
.gh-navigation .gh-navigation-actions a {
  color: #fff !important;
  opacity: 1;
}
.gh-navigation .gh-navigation-menu .nav li a:hover,
.gh-navigation a:hover { color: var(--evolve-teal) !important; }
.gh-navigation .nav a,
.gh-navigation .gh-navigation-menu a {
  font-size: 15px;
  letter-spacing: 0.03em;
}
/* el botón de suscripción conserva su propio color */
.gh-navigation .gh-button,
.gh-navigation .gh-button:hover { color: var(--evolve-navy) !important; }
.gh-navigation .gh-icon-button svg { fill: #fff; }
.gh-navigation-logo img { max-height: 44px; width: auto; }
.gh-navigation .gh-button {
  background: var(--evolve-teal);
  color: var(--evolve-navy);
  border: 0;
  font-weight: 600;
}
.gh-navigation .gh-burger-box::before,
.gh-navigation .gh-burger-box::after { background: #fff; }

/* ---------- Títulos ---------- */
.gh-article-title,
.gh-canvas > h1 {
  color: var(--evolve-navy);
  font-size: clamp(32px, 3.2vw, 44px);
  line-height: 1.2;
  letter-spacing: -0.01em;
}
.gh-article-excerpt {
  color: var(--evolve-suave);
  font-size: 17px;
  line-height: 1.6;
}

/* ---------- Cuerpo ---------- */
.gh-content { color: var(--evolve-texto); }
.gh-content p,
.gh-content li { font-size: 17px; line-height: 1.6; }

.gh-content h2 {
  color: var(--evolve-navy);
  font-size: clamp(26px, 2.4vw, 34px);
  letter-spacing: -0.01em;
  margin-top: 2.4em;
  padding-top: 0.7em;
  border-top: 1px solid var(--evolve-linea);
}
.gh-content h2:first-child { border-top: 0; padding-top: 0; margin-top: 0; }

.gh-content h3 {
  color: var(--evolve-navy);
  font-size: 22px;
  letter-spacing: -0.01em;
  margin-top: 1.8em;
}
.gh-content h3::before {
  content: "";
  display: block;
  width: 32px;
  height: 3px;
  background: var(--evolve-teal);
  margin-bottom: 0.5em;
  border-radius: 2px;
}

/* ---------- Listas ---------- */
.gh-content ul { list-style: none; padding-left: 0; }
.gh-content ul > li {
  position: relative;
  padding-left: 1.6em;
  margin-bottom: 0.55em;
}
.gh-content ul > li::before {
  content: "";
  position: absolute;
  left: 0.2em;
  top: 0.62em;
  width: 7px;
  height: 7px;
  background: var(--evolve-teal);
  border-radius: 50%;
}
.gh-content ol > li { margin-bottom: 0.55em; }

/* ---------- Fichas de datos (formato y marcadores) ---------- */
.gh-content .evolve-ficha {
  background: var(--evolve-fondo);
  border: 1px solid var(--evolve-linea);
  border-left: 3px solid var(--evolve-teal);
  border-radius: 6px;
  padding: 0.95em 1.25em;
  margin: 0.9em 0;
  font-size: 15px;
  line-height: 1.55;
  color: var(--evolve-suave);
}
.gh-content .evolve-ficha strong {
  display: block;
  color: var(--evolve-navy);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 0.3em;
}

/* ---------- Imágenes ---------- */
.gh-content .kg-image,
.gh-article-image img,
.gh-card-image img { border-radius: 6px; }
.gh-content figcaption {
  color: var(--evolve-suave);
  font-size: 14px;
  padding-top: 0.6em;
}

/* ---------- Enlaces ---------- */
.gh-content a {
  color: var(--evolve-teal-tx);
  text-decoration-color: rgba(45, 212, 191, 0.45);
  text-underline-offset: 3px;
}
.gh-content a:hover { color: var(--evolve-navy); }

/* ---------- Botones ---------- */
.gh-content .kg-btn,
.gh-content .kg-btn-accent {
  background: var(--evolve-teal);
  color: var(--evolve-navy);
  border-radius: 6px;
  font-weight: 700;
  padding: 0.85em 1.7em;
}
.gh-content .kg-btn:hover {
  background: var(--evolve-navy);
  color: #fff;
}

/* ---------- Citas ---------- */
.gh-content blockquote {
  border-left: 3px solid var(--evolve-teal);
  color: var(--evolve-navy);
  font-style: normal;
}

/* ---------- Listado del blog ---------- */
.gh-card-title {
  font-size: 1.35rem;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.3px;
  color: var(--evolve-navy);
  margin-top: 12px;
}
.gh-card-excerpt {
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--evolve-suave);
}
.gh-card-meta,
.gh-card-date,
.gh-card-author {
  font-size: 0.78rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--evolve-suave);
}
.gh-card-tag {
  display: inline-block;
  background: rgba(45, 212, 191, 0.10);
  border: 1px solid rgba(45, 212, 191, 0.30);
  color: var(--evolve-navy);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: lowercase;
  padding: 4px 11px;
  border-radius: 100px;
  line-height: 1.4;
}

/* ---------- Etiquetas dentro de la entrada ---------- */
.gh-article-tag,
.gh-post-tag {
  display: inline-block;
  background: rgba(45, 212, 191, 0.10);
  border: 1px solid rgba(45, 212, 191, 0.30);
  color: var(--evolve-navy);
  font-size: 11px;
  font-weight: 600;
  text-transform: lowercase;
  padding: 4px 11px;
  border-radius: 100px;
  text-decoration: none;
  margin: 0 6px 6px 0;
}
.gh-article-tag:hover,
.gh-post-tag:hover { background: rgba(45, 212, 191, 0.25); }

/* ---------- Pie del sitio ---------- */
.gh-footer {
  background: var(--evolve-navy);
  color: #fff;
  border-top: 3px solid var(--evolve-teal);
}
.gh-footer a { color: #fff; }
.gh-footer a:hover { color: var(--evolve-teal); }
.gh-footer .gh-footer-copyright,
.gh-footer .gh-powered-by { color: rgba(255, 255, 255, 0.6); }

/* ---------- Suscripción ---------- */
.gh-cta-form button,
.gh-form button,
.gh-subscribe button {
  background: var(--evolve-teal);
  color: var(--evolve-navy);
  border-radius: 6px;
  font-weight: 700;
}
.gh-cta-form input[type="email"],
.gh-form input[type="email"] { border-radius: 6px; }

/* ---------- Muro de suscriptores ---------- */
.gh-post-upgrade-cta {
  background: var(--evolve-navy);
  border-radius: 8px;
  color: #fff;
}
.gh-post-upgrade-cta h2,
.gh-post-upgrade-cta p { color: #fff; }
.gh-post-upgrade-cta h2 { border-top: 0; padding-top: 0; }

/* ---------- Móvil ---------- */
@media (max-width: 767px) {
  .gh-card-title { font-size: 1.2rem; }
  .gh-content h2 { margin-top: 2em; }
}
/* ===== Secciones de ancho completo de la portada ===== */

.gh-content .kg-card.kg-html-card:has(> section[class^="ev-"]),
.gh-content > section[class^="ev-"] {
  max-width: none;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  grid-column: full-start / full-end;
}
.gh-content section[class^="ev-"] {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
.gh-content section[class^="ev-"] * { box-sizing: border-box; }

.ev-hero-inner, .ev-cifras-inner, .ev-servicios-inner,
.ev-libro-inner, .ev-blog-inner, .ev-cierre-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
}

.ev-kicker {
  color: var(--evolve-teal);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin: 0 0 14px;
}
.ev-kicker-claro { color: var(--evolve-teal); }

/* --- Botones --- */
.ev-botones { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
.ev-btn {
  display: inline-block;
  padding: 15px 26px;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none !important;
  transition: all .18s ease;
}
.ev-btn-linea { border: 1px solid rgba(255,255,255,.55); color: #fff !important; }
.ev-btn-linea:hover { background: #fff; color: var(--evolve-navy) !important; }
.ev-btn-linea-osc { border: 1px solid var(--evolve-navy); color: var(--evolve-navy) !important; }
.ev-btn-linea-osc:hover { background: var(--evolve-navy); color: #fff !important; }
.ev-btn-solido { background: var(--evolve-teal); color: var(--evolve-navy) !important; font-weight: 700; }
.ev-btn-solido:hover { background: #fff; }

/* --- Hero --- */
.ev-hero { background: #2b4666; color: #fff; }
.ev-hero-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
  padding-top: 64px;
  padding-bottom: 64px;
}
.ev-hero h1 {
  color: #fff;
  font-size: clamp(34px, 3.6vw, 52px);
  line-height: 1.12;
  letter-spacing: -0.02em;
  margin: 0 0 22px;
  border: 0; padding: 0;
}
.ev-hero h1 em { color: var(--evolve-teal); font-style: italic; }
.ev-hero p { color: rgba(255,255,255,.88); font-size: 17px; line-height: 1.6; margin: 0; }
.ev-hero-img img { width: 100%; height: 100%; max-height: 460px; object-fit: cover; border-radius: 4px; display: block; }

/* --- Cifras --- */
.ev-cifras { background: var(--evolve-navy); color: #fff; }
.ev-cifras-inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  padding-top: 56px;
  padding-bottom: 56px;
  text-align: center;
}
.ev-cifra span {
  display: block;
  color: var(--evolve-teal);
  font-size: clamp(44px, 5vw, 68px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.03em;
}
.ev-cifra strong {
  display: block;
  margin-top: 12px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
}
.ev-cifra em { display: block; margin-top: 6px; font-size: 14px; color: rgba(255,255,255,.62); font-style: italic; }

/* --- Servicios --- */
.ev-servicios { background: #eef2f7; }
.ev-servicios-inner { padding-top: 72px; padding-bottom: 72px; }
.ev-grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; }
.ev-tarjeta { display: block; text-decoration: none !important; color: inherit; }
.ev-tarjeta img { width: 100%; height: 190px; object-fit: cover; border-radius: 6px; display: block; }
.ev-tarjeta h3 {
  color: var(--evolve-navy);
  font-size: 24px;
  line-height: 1.22;
  margin: 18px 0 10px;
  border: 0; padding: 0;
}
.ev-tarjeta h3::before { display: none; }
.ev-tarjeta p { font-size: 16px; line-height: 1.55; color: var(--evolve-suave); margin: 0; }
.ev-mas { display: inline-block; margin-top: 14px; color: var(--evolve-teal-tx); font-weight: 600; font-size: 15px; }
.ev-tarjeta:hover h3 { color: var(--evolve-teal-tx); }

/* --- Libro --- */
.ev-libro { background: #fff; }
.ev-libro-inner {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 56px;
  align-items: center;
  padding-top: 72px;
  padding-bottom: 72px;
}
.ev-libro-img img { width: 100%; border-radius: 6px; display: block; }
.ev-libro h2 {
  color: var(--evolve-navy);
  font-size: clamp(30px, 3vw, 42px);
  margin: 0 0 14px;
  border: 0; padding: 0;
}
.ev-libro p { font-size: 17px; line-height: 1.6; color: var(--evolve-texto); }
.ev-italica { font-style: italic; color: var(--evolve-suave); }

/* --- Blog --- */
.ev-blog { background: #2b4666; color: #fff; }
.ev-blog-inner { padding-top: 72px; padding-bottom: 72px; }
.ev-blog h2 { color: #fff; font-size: clamp(30px, 3vw, 42px); margin: 0 0 10px; border: 0; padding: 0; }
.ev-blog-sub { color: rgba(255,255,255,.82); font-size: 17px; margin: 0 0 36px; }
.ev-post { display: block; text-decoration: none !important; color: #fff; }
.ev-post img { width: 100%; height: 200px; object-fit: cover; border-radius: 6px; display: block; }
.ev-post-meta {
  margin: 16px 0 8px;
  font-size: 13px;
  color: var(--evolve-teal);
  letter-spacing: 0.04em;
}
.ev-post h3 {
  color: #fff;
  font-size: 20px;
  line-height: 1.28;
  margin: 0 0 10px;
  border: 0; padding: 0;
}
.ev-post h3::before { display: none; }
.ev-post-txt { font-size: 15px; line-height: 1.5; color: rgba(255,255,255,.78); margin: 0; }
.ev-post:hover h3 { color: var(--evolve-teal); }
.ev-blog-todo { margin: 40px 0 0; text-align: center; }
.ev-blog-todo a { color: var(--evolve-teal); font-weight: 600; text-decoration: none !important; }

/* --- Cierre --- */
.ev-cierre { background: #eef2f7; }
.ev-cierre-inner { padding-top: 72px; padding-bottom: 76px; text-align: center; max-width: 780px; }
.ev-cierre h2 {
  color: var(--evolve-navy);
  font-size: clamp(28px, 2.9vw, 40px);
  margin: 0 0 16px;
  border: 0; padding: 0;
}
.ev-cierre p { font-size: 17px; line-height: 1.6; color: var(--evolve-suave); margin: 0; }
.ev-cierre .ev-botones { justify-content: center; }
.ev-cierre-mail { margin-top: 22px; font-size: 15px; }

/* --- Móvil --- */
@media (max-width: 900px) {
  .ev-hero-inner, .ev-libro-inner { grid-template-columns: 1fr; gap: 32px; }
  .ev-grid3, .ev-cifras-inner { grid-template-columns: 1fr; gap: 28px; }
  .ev-hero-inner, .ev-servicios-inner, .ev-libro-inner,
  .ev-blog-inner, .ev-cierre-inner { padding-left: 20px; padding-right: 20px; }
  .ev-hero-img { order: -1; }
}

/* ===== Ajustes exclusivos de la portada ===== */

/* el título de la página es el único H1: se integra al hero */
.home-template .gh-article-header {
  background: #2b4666;
  max-width: none;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding: 40px 0 0;
}
.home-template .gh-article-title {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
  color: var(--evolve-teal);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1.4;
}
.home-template .ev-hero-inner { padding-top: 26px; }
@media (max-width: 900px) {
  .home-template .gh-article-title { padding: 0 20px; }
}

/* las secciones van pegadas, sin franjas blancas entre ellas */
.home-template .gh-content.gh-canvas { padding: 0; margin: 0; row-gap: 0; }
.home-template .gh-content > .kg-card.kg-html-card,
.home-template .gh-content > * { margin-top: 0; margin-bottom: 0; }
.home-template .gh-article { padding-bottom: 0; }
.home-template .gh-main { padding-top: 0; }

/* el kicker sobre fondo claro conserva el turquesa legible */
.ev-libro .ev-kicker, .ev-servicios .ev-kicker { color: var(--evolve-teal-tx); }

/* --- Jerarquía del hero: H1 con la frase clave, titular como gancho --- */
.ev-hero .ev-h1-noused {
  color: var(--evolve-teal);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1.4;
  margin: 0 0 18px;
  border: 0;
  padding: 0;
}
.ev-hero .ev-titular {
  color: #fff;
  font-size: clamp(34px, 3.6vw, 52px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.02em;
  margin: 0 0 22px;
}
.ev-hero .ev-titular em { color: var(--evolve-teal); font-style: italic; }

/* --- La cabecera y el hero forman un solo bloque, sin cortes --- */
.home-template .gh-viewport > .gh-main,
.home-template .gh-main { padding: 0 !important; margin: 0 !important; }
.home-template .gh-article { margin: 0 !important; padding: 0 !important; }
.home-template .gh-article-header {
  margin: 0 !important;
  padding: 44px 0 0 !important;
  border: 0;
}
.home-template .gh-article-title {
  text-align: left !important;
  margin: 0 auto !important;
}
.home-template .gh-content > *:first-child { margin-top: 0 !important; }
.home-template .gh-article-header,
.home-template .gh-article-header.gh-canvas {
  display: block !important;
  text-align: left !important;
  justify-items: start !important;
}

/* ===== Página Nosotros ===== */
.ev-nos-intro { background: #fff; }
.ev-nos-intro-inner { max-width: 860px; margin: 0 auto; padding: 60px 32px; }
.ev-nos-lead {
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.32;
  color: var(--evolve-navy);
  font-weight: 600;
  margin: 0 0 28px;
}
.ev-nos-intro p { font-size: 17px; line-height: 1.65; color: var(--evolve-texto); }
.ev-firma { font-style: italic; color: var(--evolve-suave); margin-top: 26px; }

.ev-equipo { background: #fff; }
.ev-equipo-inner { max-width: 1200px; margin: 0 auto; padding: 66px 32px 72px; }
.ev-equipo h2 {
  color: var(--evolve-navy);
  font-size: clamp(28px, 2.9vw, 40px);
  margin: 0 0 12px;
  border: 0; padding: 0;
  text-align: center;
}
.ev-equipo-sub { font-size: 17px; color: var(--evolve-suave); margin: 0 auto 46px; text-align: center; max-width: 640px; }

.ev-perfiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 46px 40px; }
.ev-perfil { display: grid; grid-template-columns: 148px 1fr; gap: 22px; align-items: start; }
.ev-perfil-foto { aspect-ratio: 3 / 4; border-radius: 8px; overflow: hidden; background: #dde5ee; }
.ev-perfil-foto img { width: 100%; height: 100%; object-fit: cover; display: block; max-height: none; }
.ev-perfil h3 {
  color: var(--evolve-navy);
  font-size: 21px;
  line-height: 1.2;
  margin: 0 0 4px;
  border: 0; padding: 0;
}
.ev-perfil h3::before { display: none; }
.ev-perfil-rol {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--evolve-teal-tx);
}
.ev-perfil-frase {
  margin: 0 0 12px;
  font-size: 15px;
  font-style: italic;
  line-height: 1.45;
  color: var(--evolve-navy);
}
.ev-perfil-texto p { font-size: 14.5px; line-height: 1.6; color: var(--evolve-suave); margin: 0 0 10px; }
.ev-perfil-texto mark { background: #fff3cd; color: #7a5b00; padding: 2px 5px; border-radius: 3px; }

@media (max-width: 1000px) { .ev-perfiles { grid-template-columns: 1fr; } }
@media (max-width: 560px)  { .ev-perfil { grid-template-columns: 1fr; } .ev-perfil-foto { max-width: 200px; } }
@media (max-width: 900px) {
  .ev-nos-intro-inner, .ev-equipo-inner { padding-left: 20px; padding-right: 20px; }
}

/* ===== Correcciones del encabezado ===== */

/* Source pinta de blanco el contenedor de acciones: sobre navy se veía como una caja */
.gh-navigation .gh-navigation-actions { background: transparent !important; }
.gh-navigation .gh-icon-button { background: transparent !important; color: #fff !important; }
.gh-navigation .gh-icon-button svg { fill: currentColor; stroke: currentColor; }
.gh-navigation .gh-more-toggle { color: #fff !important; }

/* el desplegable va en navy, para que los enlaces blancos se lean */
.gh-dropdown,
.gh-navigation .gh-dropdown {
  background: var(--evolve-navy) !important;
  border: 1px solid rgba(45,212,191,.35);
  border-radius: 8px;
  box-shadow: 0 14px 34px rgba(10,31,61,.32);
  overflow: hidden;
  padding: 6px 0;
}
.gh-dropdown .nav { list-style: none; margin: 0; padding: 0; }
.gh-dropdown a,
.gh-navigation .gh-dropdown a,
.gh-navigation .gh-navigation-menu .gh-dropdown .nav li a {
  color: #fff !important;
  display: block;
  padding: 11px 18px;
  font-size: 15px;
  line-height: 1.35;
}
.gh-dropdown a:hover,
.gh-navigation .gh-navigation-menu .gh-dropdown .nav li a:hover {
  background: rgba(45,212,191,.16);
  color: var(--evolve-teal) !important;
}

/* botón de suscripción: más discreto, sin bloque turquesa dominando el encabezado */
.gh-navigation .gh-button {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid var(--evolve-teal) !important;
  border-radius: 4px;
  font-weight: 600;
  padding: 9px 18px;
}
.gh-navigation .gh-button:hover {
  background: var(--evolve-teal) !important;
  color: var(--evolve-navy) !important;
}
.gh-navigation .gh-navigation-members a { font-size: 15px; }

/* ===== Imágenes de las entradas ===== */

/* la imagen destacada se comporta como banner y no como póster vertical */
.post-template .gh-article-image,
.page-template .gh-article-image {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}
.post-template .gh-article-image img,
.page-template .gh-article-image img {
  width: 100%;
  height: auto;
  max-height: 560px;
  object-fit: cover;
  object-position: center 55%;
  border-radius: 6px;
  display: block;
}

/* imágenes dentro del texto: nunca más altas que la pantalla */
.gh-content img,
.gh-content .kg-image {
  max-height: 78vh;
  width: auto;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.gh-content figure { text-align: center; }
.gh-content figure img { display: inline-block; }

/* las secciones propias no heredan ese límite */
.gh-content section[class^="ev-"] img,
.gh-content .ev-persona img,
.gh-content .ev-tarjeta img,
.gh-content .ev-post img,
.gh-content .ev-hero-img img {
  max-height: none;
  width: 100%;
}

/* ===== Videos incrustados (formato vertical, tipo Shorts) ===== */
.gh-content .ev-video {
  margin: 2.2em auto;
  max-width: 360px;
}
.gh-content .ev-video-marco {
  position: relative;
  width: 100%;
  aspect-ratio: 9 / 16;
  border-radius: 12px;
  overflow: hidden;
  background: #000;
}
.gh-content .ev-video-marco iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  max-height: none;
}
.gh-content .ev-video figcaption {
  color: var(--evolve-suave);
  font-size: 14px;
  padding-top: 0.8em;
  text-align: center;
}

/* ===== Pie: correcciones con los selectores reales de Source ===== */

/* el campo de correo tiene que verse sobre el fondo navy */
.gh-footer .gh-form-input,
.gh-form .gh-form-input,
input.gh-form-input {
  background: #fff !important;
  color: var(--evolve-navy) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  border-radius: 6px !important;
  padding: 14px 16px !important;
}
.gh-footer .gh-form-input::placeholder,
input.gh-form-input::placeholder { color: #7d8b99 !important; opacity: 1; }

.gh-footer .gh-form .gh-button {
  background: var(--evolve-teal) !important;
  color: var(--evolve-navy) !important;
  border: 0 !important;
  border-radius: 6px !important;
  font-weight: 700;
}
.gh-footer .gh-form .gh-button:hover { background: #fff !important; }

/* el logo del pie, en blanco, para que contraste con el navy */
.gh-footer .gh-footer-logo img {
  filter: brightness(0) invert(1);
  max-height: 38px;
  width: auto;
  opacity: .92;
}

/* firma de Ghost: el sitio corre en servidor propio, es opcional */
.gh-footer-bar > a[href*="ghost.org"],
.gh-footer a[href*="ghost.org"],
.gh-powered-by { display: none !important; }

/* enlaces e iconos del pie */
.gh-footer .gh-social-links a { color: #fff; opacity: .85; }
.gh-footer .gh-social-links a:hover { color: var(--evolve-teal); opacity: 1; }
.gh-footer .gh-footer-menu .nav li a { color: #fff; font-size: 15px; }
.gh-footer .gh-footer-menu .nav li a:hover { color: var(--evolve-teal); }
.gh-footer .gh-footer-signup-subhead { color: rgba(255,255,255,.8); }

/* menos aire muerto */
.gh-footer .gh-footer-signup { padding-bottom: 4px; }
.gh-footer .gh-social-links { margin: 26px 0 10px; }

/* ===== Página de metodología ===== */
.gh-content .ev-lead {
  font-size: clamp(19px, 1.9vw, 23px);
  line-height: 1.45;
  color: var(--evolve-navy);
  font-weight: 500;
  margin-bottom: 1.6em;
}
/* los iconos de las dimensiones, discretos y a escala */
.gh-content .ev-icono { margin: 1.2em 0 0.6em; text-align: left; }
.gh-content .ev-icono img { max-width: 180px; max-height: 180px; width: auto; margin: 0; }

/* ===== Pie: espaciado y firma ===== */

/* la firma de Ghost va completa, no solo el enlace */
.gh-footer .gh-footer-copyright { display: none !important; }

/* el pie no necesita 600 px de alto para cuatro elementos */
.gh-footer {
  padding-top: 44px !important;
  padding-bottom: 30px !important;
}
.gh-footer .gh-footer-inner { gap: 0 !important; row-gap: 0 !important; }
.gh-footer .gh-footer-signup { padding: 0 0 4px !important; margin: 0 !important; }
.gh-footer .gh-social-links { margin: 22px 0 26px !important; }
.gh-footer .gh-footer-bar {
  margin: 0 !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(255,255,255,.12);
}
.gh-footer .gh-form { margin-top: 22px; }

/* el bloque anterior al pie no deja franja blanca */
.gh-viewport > .gh-main { padding-bottom: 0 !important; }

/* ===== Bandas de sección (metodología y páginas largas) ===== */
.ev-banda-inner { max-width: 1200px; margin: 0 auto; padding: 66px 32px; }
.ev-banda-inner + .ev-banda-inner { padding-top: 0; }
.ev-centrado { text-align: center; }
.ev-angosto { max-width: 820px; }

.ev-banda-clara { background: #eef2f7; }
.ev-banda-blanca { background: #fff; }
.ev-banda-navy  { background: #2b4666; color: #fff; }

.ev-banda h2 {
  font-size: clamp(28px, 2.9vw, 40px);
  line-height: 1.18;
  margin: 0 0 16px;
  border: 0; padding: 0;
  color: var(--evolve-navy);
}
.ev-banda-navy h2, .ev-banda-navy h3 { color: #fff; }
.ev-banda-sub {
  font-size: 17px;
  line-height: 1.6;
  color: var(--evolve-suave);
  max-width: 760px;
  margin: 0 auto 40px;
}
.ev-banda-navy .ev-banda-sub { color: rgba(255,255,255,.85); }

/* título a la izquierda y bajada a la derecha */
.ev-dos-col { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; margin-bottom: 46px; }
.ev-dos-col h2 { margin: 0; }
.ev-dos-col-txt { font-size: 19px; line-height: 1.45; color: rgba(255,255,255,.9); margin: 0; }

/* las tres fases, en columnas */
.ev-fases { display: grid; grid-template-columns: repeat(3, 1fr); gap: 38px; }
.ev-fase span {
  display: block;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.16em;
  color: var(--evolve-teal);
  margin-bottom: 10px;
}
.ev-fase h3 { font-size: 24px; margin: 0 0 12px; border: 0; padding: 0; }
.ev-fase h3::before { display: none; }
.ev-fase p { font-size: 16px; line-height: 1.6; color: rgba(255,255,255,.82); margin: 0; }

/* diagramas a lo ancho */
.ev-diagrama { margin: 0; }
.ev-diagrama img { width: 100%; max-width: 1000px; height: auto; border-radius: 6px; display: block; margin: 0 auto; max-height: none; }
.ev-diagrama figcaption { font-size: 14px; color: var(--evolve-suave); padding-top: 14px; }
.ev-banda-navy .ev-diagrama figcaption { color: rgba(255,255,255,.6); }

/* texto e imagen lado a lado */
.ev-mixto { display: grid; grid-template-columns: 1fr 1.1fr; gap: 52px; align-items: center; }
.ev-mixto-txt h2 { margin: 0 0 18px; }
.ev-mixto-txt p { font-size: 17px; line-height: 1.65; color: rgba(255,255,255,.88); margin: 0; }
.ev-mixto-img { margin: 0; }
.ev-mixto-img img { width: 100%; height: auto; border-radius: 6px; display: block; max-height: none; }

/* las tres dimensiones */
.ev-dims { display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; }
.ev-dim { background: #fff; border: 1px solid var(--evolve-linea); border-radius: 8px; padding: 30px 26px; }
.ev-dim img { width: 96px; height: auto; display: block; margin: 0 0 16px; max-height: none; }
.ev-dim h3 { font-size: 23px; color: var(--evolve-navy); margin: 0 0 10px; border: 0; padding: 0; }
.ev-dim h3::before { display: none; }
.ev-dim p { font-size: 15.5px; line-height: 1.55; color: var(--evolve-suave); margin: 0 0 14px; }
.ev-dim ul { list-style: none; padding: 0; margin: 0 0 16px; }
.ev-dim li { position: relative; padding-left: 1.4em; margin-bottom: 7px; font-size: 15px; line-height: 1.45; color: var(--evolve-texto); }
.ev-dim li::before { content: ""; position: absolute; left: 0.1em; top: 0.58em; width: 6px; height: 6px; background: var(--evolve-teal); border-radius: 50%; }

/* preguntas frecuentes */
.ev-faq { border-top: 1px solid var(--evolve-linea); padding: 22px 0; }
.ev-faq h3 { font-size: 19px; color: var(--evolve-navy); margin: 0 0 8px; border: 0; padding: 0; }
.ev-faq h3::before { display: none; }
.ev-faq p { font-size: 16px; line-height: 1.6; color: var(--evolve-suave); margin: 0; }

@media (max-width: 980px) {
  .ev-dos-col, .ev-fases, .ev-dims, .ev-mixto { grid-template-columns: 1fr; gap: 30px; }
  .ev-banda-inner { padding-left: 20px; padding-right: 20px; }
}

/* ===== Página del libro ===== */
.ev-barra-amazon { background: var(--evolve-navy); }
.ev-barra-inner {
  max-width: 1200px; margin: 0 auto; padding: 16px 32px;
  display: flex; align-items: center; gap: 22px; flex-wrap: wrap;
}
.ev-barra-tit {
  color: #fff; font-size: 12px; font-weight: 700;
  letter-spacing: 0.16em; text-transform: uppercase; white-space: nowrap;
}
.ev-barra-btns { display: flex; gap: 12px; flex: 1; flex-wrap: wrap; }
.ev-barra-btns a {
  flex: 1; min-width: 180px; text-align: center;
  border: 1px solid rgba(255,255,255,.35); border-radius: 4px;
  padding: 10px 14px; color: #fff !important; font-size: 14.5px;
  text-decoration: none !important; transition: all .18s ease;
}
.ev-barra-btns a:hover { background: var(--evolve-teal); border-color: var(--evolve-teal); color: var(--evolve-navy) !important; }

.ev-libro-hero { background: #fff; }
.ev-libro-hero-inner {
  max-width: 1200px; margin: 0 auto; padding: 64px 32px;
  display: grid; grid-template-columns: 1fr 0.85fr; gap: 56px; align-items: center;
}
.ev-libro-tit {
  font-size: clamp(34px, 3.8vw, 54px); line-height: 1.1;
  letter-spacing: -0.02em; color: var(--evolve-navy);
  margin: 0 0 14px; border: 0; padding: 0; text-transform: uppercase;
}
.ev-libro-sub {
  font-size: clamp(20px, 2.1vw, 28px); font-style: italic;
  color: var(--evolve-teal-tx); line-height: 1.25; margin: 0 0 24px;
}
.ev-libro-hero-txt p { font-size: 17px; line-height: 1.65; color: var(--evolve-texto); }
.ev-mini {
  font-size: 13px; letter-spacing: 0.04em; color: var(--evolve-suave);
  border-top: 1px solid var(--evolve-linea); padding-top: 16px; margin-top: 22px;
}
.ev-libro-portada { margin: 0; }
.ev-libro-portada img {
  width: 100%; height: auto; border-radius: 8px; display: block;
  box-shadow: 0 18px 44px rgba(10,31,61,.22); max-height: none;
}

/* lista con palomas */
.ev-check { list-style: none; padding: 0; margin: 0 auto 30px; max-width: 700px; text-align: left; }
.ev-check li {
  position: relative; padding-left: 2em; margin-bottom: 14px;
  font-size: 17px; line-height: 1.55; color: var(--evolve-texto);
}
.ev-check li::before {
  content: ""; position: absolute; left: 0; top: 0.32em;
  width: 18px; height: 18px; border: 2px solid var(--evolve-teal); border-radius: 4px;
}
.ev-frase {
  font-size: 19px; font-style: italic; line-height: 1.5;
  color: var(--evolve-navy); max-width: 680px; margin: 0 auto;
}

/* capítulos */
.ev-caps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; }
.ev-cap img { width: 100%; height: 190px; object-fit: cover; border-radius: 6px; display: block; max-height: none; }
.ev-cap h3 { font-size: 22px; color: var(--evolve-navy); margin: 18px 0 10px; border: 0; padding: 0; }
.ev-cap h3::before { display: none; }
.ev-cap p { font-size: 15.5px; line-height: 1.6; color: var(--evolve-suave); margin: 0; }

/* testimonios */
.ev-testis { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.ev-testi {
  background: #fff; border: 1px solid var(--evolve-linea);
  border-left: 3px solid var(--evolve-teal); border-radius: 6px;
  padding: 24px 26px; margin: 0; font-style: normal;
}
.ev-testi p { font-size: 16px; line-height: 1.6; color: var(--evolve-texto); margin: 0 0 12px; font-style: italic; }
.ev-testi cite {
  font-style: normal; font-size: 12px; font-weight: 700;
  letter-spacing: 0.1em; text-transform: uppercase; color: var(--evolve-teal-tx);
}

.ev-mixto-inv .ev-mixto-img { order: -1; }
.ev-txt-oscuro h2 { color: var(--evolve-navy); }
.ev-txt-oscuro p { color: var(--evolve-texto) !important; }
.ev-centrado-btn { justify-content: center; }
.ev-legal { font-size: 13.5px; line-height: 1.55; color: rgba(255,255,255,.6); margin-top: 24px; }
.ev-cita-final { font-size: clamp(22px, 2.4vw, 32px); font-style: italic; line-height: 1.35; color: var(--evolve-navy); margin: 0 0 14px; }
.ev-cita-autor { font-size: 15px; color: var(--evolve-suave); margin: 0; }

@media (max-width: 980px) {
  .ev-libro-hero-inner { grid-template-columns: 1fr; gap: 34px; padding-left: 20px; padding-right: 20px; }
  .ev-libro-portada { max-width: 320px; margin: 0 auto; }
  .ev-caps, .ev-testis { grid-template-columns: 1fr; }
  .ev-barra-inner { padding-left: 20px; padding-right: 20px; }
  .ev-mixto-inv .ev-mixto-img { order: 0; }
}

/* ===== El título del tema se integra al hero, sin repetir ===== */
.page-metodologia-evolve .gh-article-header,
.page-libro .gh-article-header {
  background: #2b4666;
  max-width: none;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding: 44px 0 0 !important;
  border: 0;
  display: block !important;
  text-align: left !important;
}
.page-metodologia-evolve .gh-article-title,
.page-libro .gh-article-title {
  max-width: 1200px;
  margin: 0 auto !important;
  padding: 0 32px;
  color: var(--evolve-teal);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1.4;
  text-align: left !important;
}
/* la bajada del tema repetía el titular del hero */
.page-metodologia-evolve .gh-article-excerpt,
.page-libro .gh-article-excerpt { display: none; }

.page-metodologia-evolve .gh-content.gh-canvas,
.page-libro .gh-content.gh-canvas { padding: 0; margin: 0; row-gap: 0; }
.page-metodologia-evolve .gh-content > *,
.page-libro .gh-content > * { margin-top: 0; margin-bottom: 0; }
.page-metodologia-evolve .gh-article,
.page-libro .gh-article { padding: 0 !important; margin: 0 !important; }
.page-metodologia-evolve .ev-hero-inner { padding-top: 26px; }

/* el libro arranca con la barra de Amazon, sin cabecera navy encima */
.page-libro .gh-article-header { background: var(--evolve-navy); padding-bottom: 10px !important; }

@media (max-width: 900px) {
  .page-metodologia-evolve .gh-article-title,
  .page-libro .gh-article-title { padding: 0 20px; }
}

/* ===== Acabado: sin franjas blancas en las páginas de sección ===== */
.page-libro .gh-viewport > .gh-main,
.page-metodologia-evolve .gh-viewport > .gh-main,
.page-libro .gh-main,
.page-metodologia-evolve .gh-main { padding: 0 !important; margin: 0 !important; }

.page-libro .gh-article-header { padding: 34px 0 26px !important; }
.page-metodologia-evolve .gh-article-header { padding: 40px 0 0 !important; }

/* el subtítulo del libro va en turquesa, no heredado */
.gh-content .ev-libro-sub,
.ev-libro-sub {
  color: var(--evolve-teal-tx) !important;
  font-style: italic;
}
.gh-content .ev-libro-hero-txt .ev-kicker,
.ev-libro-hero-txt .ev-kicker { margin-bottom: 20px; }
.gh-content .ev-libro-tit { margin-top: 0; }

/* ===== El margen del encabezado del artículo abría franjas blancas ===== */
.page-libro .gh-article-header,
.page-metodologia-evolve .gh-article-header,
.home-template .gh-article-header,
.page-nosotros .gh-article-header {
  margin: 0 !important;
}
.page-libro .gh-article,
.page-metodologia-evolve .gh-article,
.page-nosotros .gh-article,
.home-template .gh-article { margin-top: 0 !important; padding-top: 0 !important; }

/* nosotros también arranca con su hero */
.page-nosotros .gh-article-header {
  background: #2b4666;
  max-width: none; width: 100vw;
  margin-left: calc(50% - 50vw) !important;
  padding: 40px 0 0 !important;
  display: block !important; text-align: left !important;
}
.page-nosotros .gh-article-title {
  max-width: 1200px; margin: 0 auto !important; padding: 0 32px;
  color: var(--evolve-teal); font-size: 13px; font-weight: 700;
  letter-spacing: 0.18em; text-transform: uppercase; text-align: left !important;
}
.page-nosotros .gh-article-excerpt { display: none; }
.page-nosotros .gh-content.gh-canvas { padding: 0; margin: 0; row-gap: 0; }
.page-nosotros .gh-content > * { margin-top: 0; margin-bottom: 0; }
.page-nosotros .gh-viewport > .gh-main,
.page-nosotros .gh-main { padding: 0 !important; margin: 0 !important; }
.page-nosotros .ev-hero-inner { padding-top: 26px; }

@media (max-width: 900px) {
  .page-nosotros .gh-article-title { padding: 0 20px; }
}

/* el texto del hero del libro se alinea arriba, con la portada */
.ev-libro-hero-inner { align-items: start; padding-top: 56px; padding-bottom: 56px; }
.ev-libro-portada img { max-height: 620px; width: auto; margin: 0 auto; }
.ev-libro-portada { display: flex; justify-content: center; }

/* ===== Misión, visión y valores ===== */
.ev-mv { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; }
.ev-mv-txt {
  font-size: clamp(19px, 1.9vw, 24px);
  line-height: 1.45;
  color: #fff;
  margin: 0;
}
.ev-valores { display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px; }
.ev-valor {
  background: #fff;
  border: 1px solid var(--evolve-linea);
  border-top: 3px solid var(--evolve-teal);
  border-radius: 6px;
  padding: 26px 28px;
}
.ev-valor h3 {
  font-size: 19px; color: var(--evolve-navy);
  margin: 0 0 10px; border: 0; padding: 0; line-height: 1.3;
}
.ev-valor h3::before { display: none; }
.ev-valor p { font-size: 16px; line-height: 1.55; color: var(--evolve-suave); margin: 0; }

@media (max-width: 900px) {
  .ev-mv, .ev-valores { grid-template-columns: 1fr; gap: 28px; }
}

/* los videos apaisados usan 16:9 y todo el ancho del texto */
.gh-content .ev-video.ev-video-ancho { max-width: 100%; }
.gh-content .ev-video.ev-video-ancho .ev-video-marco {
  aspect-ratio: 16 / 9;
  border-radius: 8px;
}
/* el video apaisado ocupa la columna de texto completa */
.gh-content .ev-video.ev-video-ancho {
  grid-column: main-start / main-end !important;
  width: 100%;
  max-width: 100% !important;
  margin-left: 0;
  margin-right: 0;
}
