/*
   INFOCAP V2.8.9 | INICIO CONSOLIDADO
   Generado usando exactamente el orden CSS del index.html auditado.
   No editar las secciones por separado sin reconstruir el paquete.
   IMPORTANTE: hero-slider-v286.css NO esta incluido; quedo desactivado.
   Rutas CSS relativas conservadas (archivo situado en la raiz del proyecto).
*/


/* ===== ARCHIVO ORIGINAL 1/6: portadas-v26.css ===== */
/* INFOCAP V2.6 — únicamente portadas temporales de nuevos cursos.
   No sustituye styles.css ni estructura.css. */
.program-cover.has-designed-poster {
  aspect-ratio: 1200 / 750;
  min-height: 0;
  padding: 0;
  background: #173c38;
}
.program-cover.has-designed-poster .program-cover-image {
  opacity: 1;
  object-fit: cover;
  object-position: center;
}
.program-cover.has-designed-poster::before,
.program-cover.has-designed-poster::after {
  display: none;
}
.program-cover.has-designed-poster .program-cover-center,
.program-cover.has-designed-poster .program-cover-top,
.program-cover.has-designed-poster .program-cover-bottom {
  display: none;
}
.catalog-v25-top.is-editorial {
  padding: 0;
  background: #133e38;
  min-height: 0;
  aspect-ratio: 1200 / 750;
  display: block;
  overflow: hidden;
}
.catalog-v26-photo { width: 100%; height: 100%; display:block; object-fit:cover; object-position:center; }
.catalog-v26-area { color: #386b5e; font-size: 10px; font-weight: 800; letter-spacing: .04em; margin-bottom: 8px; }
.catalog-v25-item { overflow: hidden; }
/* Tarjetas con borde ovalado conservando la recomendación del usuario. */
.program-card-v22 { border-radius: 16px; overflow: hidden; }
@media (prefers-reduced-motion: reduce) {
  .program-cover-image { transition: none; }
}


/* ===== ARCHIVO ORIGINAL 2/6: retoques-v27.css ===== */
/* INFOCAP V2.7 — capa visual aditiva: catálogo y tarjetas.
   No modifica pagos, tarifas, contratos ni lógica de navegación.
   Cargar después de estructura.css y portadas-v26.css. */
.catalog-v25-item {
  gap: 0;
  border-radius: 17px;
  box-shadow: 0 4px 20px rgba(19, 55, 44, .04);
  border-color: #dce5dd;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.catalog-v25-item:hover,
.catalog-v25-item:focus-within {
  border-color: #a9c6b3;
  box-shadow: 0 18px 38px rgba(16, 58, 45, .13);
  transform: translateY(-3px);
}
.catalog-v25-top.is-editorial {
  aspect-ratio: 1200 / 750;
  overflow: hidden;
}
.catalog-v26-photo {
  display: block;
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .65s cubic-bezier(.2,.75,.2,1);
}
.catalog-v25-item:hover .catalog-v26-photo,
.catalog-v25-item:focus-within .catalog-v26-photo { transform: scale(1.025); }
.catalog-v25-inner {
  padding: 18px 20px 21px;
  gap: 0;
  min-height: 225px;
}
.catalog-v26-area {
  color: #2e7163;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0;
  margin-bottom: 9px;
  line-height: 1.4;
}
.catalog-v25-badge {
  color: #7b684d;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .012em;
  line-height: 1.45;
  margin-bottom: 9px;
}
.catalog-v25-inner h3 {
  color: #19392e;
  font-size: clamp(17px, 1.45vw, 20px);
  line-height: 1.28;
  letter-spacing: -.035em;
  font-weight: 800;
  margin: 0 0 9px;
  text-wrap: pretty;
}
.catalog-v25-inner p {
  color: #677a70;
  font-size: 12px;
  line-height: 1.65;
  margin: 0 0 20px;
  flex: 0 0 auto;
}
.catalog-v25-actions {
  margin-top: auto;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
}
.catalog-v25-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 13px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 750;
  text-align: center;
  transition: background .2s ease, transform .2s ease;
}
.catalog-v25-actions a:first-child { background:#143F35; color:#fff; }
.catalog-v25-actions a:first-child:hover { background:#216657; }
.catalog-v25-actions a + a {background:#eef4ee;color:#1a5849;}
.catalog-v25-actions a + a:hover {background:#dfebe1;}
.catalog-v25-actions a:focus-visible {outline:3px solid #d9b47b;outline-offset:3px;}
@media (max-width: 600px) {
  .catalog-v25-inner { min-height: 0; }
  .catalog-v25-inner h3 { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  .catalog-v25-item, .catalog-v26-photo { transition:none; }
  .catalog-v25-item:hover,.catalog-v25-item:focus-within{transform:none;}
  .catalog-v25-item:hover .catalog-v26-photo,.catalog-v25-item:focus-within .catalog-v26-photo{transform:none;}
}


/* ===== ARCHIVO ORIGINAL 3/6: infocap-visual-v28.css ===== */
/*
 * INFOCAP PERÚ · V2.8 / Dirección de arte A
 * Archivo aditivo: NO modifica la estructura, la navegación, los precios,
 * la inscripción, los bancos ni las rutas de los cinco slides.
 * Fotos de los dos paneles: reutiliza 2 imágenes del hero YA seleccionadas.
 * Cargar al FINAL de las hojas de estilo actuales.
 */

:root {
  --v28-ink: #123b32;
  --v28-jade: #227f68;
  --v28-cream: #f7f4ed;
  --v28-warm: #ece8dd;
  --v28-gold: #dfbd82;
  --v28-ease: cubic-bezier(.22,.75,.24,1);
  --v28-shadow: 0 22px 58px rgba(11,49,39,.12);
}

/* 01 · HEADER: limpio, sin cambiar posiciones ni enlaces */
.site-header {
  background: rgba(249, 248, 243, .95);
  border-bottom-color: rgba(24,72,58,.09);
  box-shadow: 0 8px 28px rgba(12,43,36,.035);
  -webkit-backdrop-filter: blur(16px) saturate(1.15);
  backdrop-filter: blur(16px) saturate(1.15);
}
.site-header .nav-link {
  text-underline-offset: 7px;
  transition: color .25s ease;
}
.site-header .nav-button {
  border-radius: 9px;
  box-shadow: 0 9px 22px rgba(11,49,39,.10);
}
.site-header .nav-button:hover,
.site-header .nav-button:focus-visible {
  box-shadow: 0 12px 27px rgba(11,49,39,.17);
}

/* 02 · HERO: preservamos el carrusel JS existente y el layout original.
   Destapamos la fotografía en el tercio derecho sin sacrificar lectura. */
.hero {
  background: #0b3029;
}
.hero-shade {
  background:
    linear-gradient(90deg,
      rgba(6,38,32,.99) 0%,
      rgba(6,38,32,.96) 20%,
      rgba(6,38,32,.75) 40%,
      rgba(6,38,32,.29) 65%,
      rgba(6,38,32,.08) 100%),
    linear-gradient(0deg,
      rgba(4,31,26,.55) 0%,
      transparent 30%);
}
.hero-ornament { opacity: .095; }
.hero-overline { letter-spacing: .17em; }
.hero h1 { text-wrap: balance; }
.hero-actions .button {
  border-radius: 8px;
  transition: transform .3s var(--v28-ease), background .25s ease,
              box-shadow .3s var(--v28-ease);
}
.hero-actions .button--gold {
  box-shadow: 0 14px 34px rgba(2,24,18,.16);
}
.hero-actions .button--gold:hover {
  box-shadow: 0 17px 40px rgba(2,24,18,.26);
}
.hero-bottom { background: rgba(4,34,29,.78); }
.hero-controls button { border-radius: 7px; }
.hero-controls button:hover { background: rgba(255,255,255,.18); }

/* 03 · BUSCADOR Y SECCIONES: separación editorial cálida. */
.catalog-section {
  background:
    radial-gradient(ellipse 50% 19% at 88% 6%, rgba(208,193,162,.12), transparent 100%),
    #f8f7f2;
}
.catalog-section .section-intro h2 { text-wrap: balance; }
.search-panel {
  position: relative;
  isolation: isolate;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 29px 75px rgba(13,62,48,.09);
  border: 1px solid #e5e6dd;
}
.search-panel::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg,#c49c5f,#ecd7aa 32%,#20705c 78%,transparent);
  pointer-events: none;
}
.search-field,
.select-field select { border-radius: 8px; }
.search-field:focus-within { border-color: #267f68; box-shadow: 0 0 0 3px rgba(38,127,104,.09); }
.search-submit { border-radius: 8px; }
.category-chip { border-radius: 999px; }
.category-chip:hover,
.category-chip.is-active { border-color: #145745; }

/* 04 · DOS CAMINOS: se mantiene exactamente el mismo HTML y sus botones.
   Usamos fotografías YA existentes en assets/img/hero/. Si faltan, funcionan
   las capas de color y nunca quedan textos ilegibles.
 */
.paths-section {
  background:
    radial-gradient(ellipse 38% 35% at 100% 0%, rgba(183,154,111,.12),transparent 100%),
    linear-gradient(160deg,#f6f2ea 0%,#ece9df 100%);
  color: var(--v28-ink);
  padding-block: clamp(78px,8vw,130px);
}
.paths-heading { max-width: 970px; margin-bottom: 40px; }
.paths-heading .section-kicker--light { color: #657f72; }
.paths-heading .section-kicker--light b { color: #a5763d; }
.paths-heading h2 {
  color: var(--v28-ink);
  line-height: 1.06;
  font-size: clamp(46px,5.3vw,82px);
  text-wrap: balance;
}
.paths-heading h2 em { color: #41816d; }
.paths-grid { gap: clamp(16px,2vw,27px); }
.path-card {
  min-height: clamp(490px,42vw,600px);
  padding: clamp(25px,3vw,44px);
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.18);
  color: #fff;
  box-shadow: 0 16px 40px rgba(20,54,42,.12);
  background-color: #1c5e50;
  background-size: cover;
  background-position: center;
  transition: transform .55s var(--v28-ease), box-shadow .55s var(--v28-ease);
}
/* Imagen 1 ya descargada previamente por el usuario: gestión pública. */
.path-card--courses {
  background-image:
    linear-gradient(180deg, rgba(6,38,33,.16) 0%,rgba(6,38,33,.20) 28%,
      rgba(6,35,31,.77) 68%,rgba(5,30,26,.97) 100%),
    linear-gradient(90deg,rgba(7,36,32,.40),rgba(7,36,32,.02) 85%),
    url('assets/img/hero/hero-gestion-publica.jpg');
  background-position: center,center,center 35%;
}
/* Imagen 2 ya descargada previamente por el usuario: salud. */
.path-card--diplomas {
  background-color: #315c55;
  background-image:
    linear-gradient(180deg, rgba(29,52,48,.08) 0%,rgba(15,45,43,.25) 32%,
      rgba(9,44,40,.78) 70%,rgba(5,36,33,.97) 100%),
    linear-gradient(90deg,rgba(13,42,38,.33),rgba(13,42,38,.01) 85%),
    url('assets/img/hero/hero-salud.jpg');
  background-position: center,center,center 32%;
  color: #fff;
}
.path-card::before {
  content: '';
  position: absolute;
  inset: 14px;
  width: auto; height: auto;
  top: 14px;right:14px;bottom:14px;left:14px;
  border: 1px solid rgba(255,255,255,.19);
  border-radius: 12px;
  opacity: 1;
  pointer-events: none;
}
.path-card::after {
  content: '';
  position: absolute;
  top: 35px;right:35px;bottom:auto;left:auto;
  width: 45px;height:1px;
  background: var(--v28-gold);
  border: 0;border-radius: 0;
  opacity: .92;
  pointer-events: none;
}
.path-card .path-index,
.path-card--diplomas .path-index {
  color: #f7eee0;
  letter-spacing: .17em;
  font-size: 10px;
}
.path-card .path-body {
  max-width: 480px;
  padding: 0 2px 0 0;
  position: relative;
}
.path-card .path-tag,
.path-card--diplomas .path-tag {
  color: #eec98c;
  font-size: 10px;
  letter-spacing: .16em;
}
.path-card .path-body h3 {
  max-width: 470px;
  font-size: clamp(34px,3.3vw,49px);
  line-height: 1.08;
  margin: 17px 0;
  letter-spacing: -.06em;
  text-wrap: balance;
}
.path-card .path-body p,
.path-card--diplomas .path-body p {
  color: #e3e9e2;
  font-size: 13px;
  line-height: 1.8;
  max-width: 435px;
  margin-bottom: 25px;
  text-shadow: 0 1px 14px rgba(0,0,0,.12);
}
.path-card .path-link,
.path-card--diplomas .path-link {
  color: #153d34;
  background: #e7c48b;
  border: 1px solid #e7c48b;
  border-radius: 8px;
  padding: 13px 18px;
  gap: 23px;
  min-height: 46px;
  transition: transform .25s var(--v28-ease),background .25s;
}
.path-card .path-link span,
.path-card--diplomas .path-link span { color: #174c40; }
.path-card .path-link:hover { background: #f2d6a5;transform:translateY(-2px); }
.path-card:hover,
.path-card:focus-within {
  transform: translateY(-6px);
  box-shadow: 0 29px 67px rgba(14,52,42,.22);
}

/* 05 · CATÁLOGO Y ESCAPARATES: tarjetas cálidas, jerarquía y hovers. */
.featured-group-heading h3 { text-wrap: balance; }
.program-card-v22 {
  border: 1px solid #dce6dc;
  border-radius: 17px;
  box-shadow: 0 5px 18px rgba(15,60,44,.035);
  transition: transform .34s var(--v28-ease),
              box-shadow .34s var(--v28-ease),
              border-color .25s ease;
}
.program-card-v22:hover,
.program-card-v22:focus-within {
  transform: translateY(-5px);
  box-shadow: var(--v28-shadow);
  border-color: #b7d0bf;
}
.program-cover { overflow: hidden; }
.program-cover-image { transition: transform .8s var(--v28-ease),opacity .25s ease; }
.program-card-v22:hover .program-cover-image,
.program-card-v22:focus-within .program-cover-image {
  transform: scale(1.035);
}
.program-card-content { padding: 22px 22px 20px; }
.program-card-heading { font-size: clamp(17px,1.5vw,20px);line-height:1.29;letter-spacing:-.038em; }
.program-card-summary { font-size: 12px;line-height:1.65; }
.program-card-kind { letter-spacing: .08em; }
.program-card-price { border-top: 1px solid #eaf0e8;padding-top: 12px; }
.program-card-actions { gap: 9px; }
.program-card-primary,
.program-card-secondary { border-radius: 9px; }
.program-card-primary:hover { background: #20634e; }
.program-card-secondary:hover { background: #ecf3eb; }

/* Tarjetas generales del catálogo. Conserva retoques-v27.css y CSS original. */
.catalog-v25-item {
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(15,60,44,.036);
  transition: transform .34s var(--v28-ease),box-shadow .34s var(--v28-ease),border-color .25s;
}
.catalog-v25-item:hover,
.catalog-v25-item:focus-within {
  border-color: #abc9b8;
  box-shadow: 0 25px 56px rgba(14,55,40,.14);
  transform: translateY(-5px);
}
.catalog-v25-top.is-editorial .catalog-v26-photo {
  transition: transform .7s var(--v28-ease);
}
.catalog-v25-item:hover .catalog-v26-photo,
.catalog-v25-item:focus-within .catalog-v26-photo { transform: scale(1.045); }
.catalog-v25-inner { padding: 19px 21px 23px; }
.catalog-v25-inner h3 { text-wrap: pretty; }
.catalog-v25-actions a { border-radius: 9px; }

/* 06 · AJUSTES EN TABLET/MÓVIL. Nunca cambia el orden del HTML. */
@media (max-width: 930px) {
  .path-card { min-height: 485px; }
  .paths-grid { gap: 16px; }
  .program-card-content { padding: 19px 18px 18px; }
}
@media (max-width: 650px) {
  .paths-section { padding-block: 75px; }
  .paths-heading { margin-bottom: 26px; }
  .paths-heading h2 { font-size: clamp(40px,10vw,56px); }
  .path-card { min-height: 445px; padding: 25px 24px 27px; border-radius: 16px; }
  .path-card .path-body h3 { font-size: clamp(32px,8.5vw,41px); }
  .path-card::before { inset: 10px; border-radius: 9px; }
  .path-card::after { top: 30px;right:29px; }
  .path-card--courses { background-position: center,center,center 30%; }
  .path-card--diplomas { background-position: center,center,center 25%; }
  .program-card-content { min-height: 0; }
  .catalog-v25-inner { padding: 18px 18px 21px; }
  .hero-shade {
    background:
      linear-gradient(180deg,rgba(7,42,35,.12),rgba(7,42,35,.45) 42%,
        rgba(6,37,32,.94) 74%,#052a25 100%),
      linear-gradient(90deg,rgba(6,37,32,.20),rgba(6,37,32,.10));
  }
  .hero-ornament { opacity: .045; }
  .hero-overline { letter-spacing: .13em; }
}

/* Movimiento reducido: interacción sin efectos de desplazamiento. */
@media (prefers-reduced-motion: reduce) {
  .path-card,
  .path-card:hover,
  .path-card:focus-within,
  .program-card-v22,
  .program-card-v22:hover,
  .program-card-v22:focus-within,
  .catalog-v25-item,
  .catalog-v25-item:hover,
  .catalog-v25-item:focus-within,
  .program-cover-image,
  .catalog-v26-photo {
    transition: none !important;
    transform: none !important;
  }
}


/* ===== ARCHIVO ORIGINAL 4/6: infocap-visual-v28-2.css ===== */
/* INFOCAP PERÚ · V2.8.2 · Hero legible + beneficios + promociones
   Cargar DESPUÉS de styles.css e infocap-visual-v28.css.
   No afecta JS, cotizaciones, pagos ni la estructura de otras páginas. */

/* Hero: fallback fotográfico local y espacio real para titulares de 4 líneas. */
.hero-photo-stack {
  background-color: #123f37;
  background-image: url('assets/img/hero/hero-gestion-publica.jpg');
  background-position: center 43%;
  background-size: cover;
}
.hero-shade {
  background:
    linear-gradient(90deg,rgba(4,34,29,.98) 0%,rgba(4,34,29,.94) 24%,rgba(4,34,29,.69) 44%,rgba(4,34,29,.20) 72%,rgba(4,34,29,.03) 100%),
    linear-gradient(0deg,rgba(3,30,25,.39),transparent 34%);
}
.hero-copy { padding-block: 13px 9px; max-width: 700px; }
.hero-overline { margin: 23px 0 13px; }
.hero h1 {
  font-size: clamp(55px,5.7vw,84px);
  line-height: .98;
  letter-spacing: -.072em;
  margin-bottom: 18px;
}
.hero-description { font-size: 15px; line-height: 1.65; margin-bottom: 20px; max-width: 520px; }
.hero-proof { margin-top: 23px; }

/* Sección de tres beneficios: sin los antiguos huecos verticales. */
.journey-section.section-pad {
  padding: clamp(64px,6.3vw,98px) 0 clamp(68px,6.8vw,104px);
  background: #f5f4ee;
}
.journey-section .journey-intro { margin-bottom: 30px; }
.journey-section .journey-intro h2 { font-size: clamp(42px,4.7vw,70px); text-wrap: balance; }
.journey-section .journey-intro > p { max-width: 340px; }
.journey-grid { gap: 14px; border: 0; }
.journey-item,
.journey-item + .journey-item {
  position: relative;
  min-width: 0;
  min-height: 260px;
  padding: 27px 28px 26px;
  border: 1px solid #e1e6db;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(23,60,48,.035);
  display: flex;
  flex-direction: column;
  transition: transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.journey-item::before { content: ''; position:absolute; top:0; left:27px; right:27px; height:2px; background:#d8b778; }
.journey-item:hover, .journey-item:focus-within {
  transform: translateY(-4px);
  border-color: #b9d1c4;
  box-shadow: 0 20px 45px rgba(23,60,48,.09);
}
.journey-count { font-size: 9px; letter-spacing: .13em; color:#438673; }
.journey-big {
  display: block;
  margin: 20px 0 14px;
  color: #164b3e;
  font-size: clamp(41px,4vw,55px);
  font-weight: 800;
  letter-spacing: -.072em;
  line-height: 1;
}
.journey-big small { font-size: 17px; letter-spacing: -.015em; font-weight: 650; color: #4e8774; }
.journey-big--word { font-family: var(--serif),Georgia,serif; font-style: italic; font-weight: 400; font-size: clamp(38px,3.5vw,50px); letter-spacing:-.045em; }
.journey-item h3 { font-size: 19px; line-height: 1.24; margin: 0 0 8px; }
.journey-item p { max-width: none; font-size: 12px; line-height: 1.65; margin-bottom: 18px; }
.journey-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-top: auto;
  width: fit-content;
  padding: 0 0 5px;
  color: #155644;
  border-bottom: 1px solid #9bb7a7;
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}
.journey-link:hover { color: #0b8c70; }

/* Mismo bloque about-section/inner, ahora con una función comercial. */
.about-section:has(.promo-copy) {
  background: linear-gradient(135deg,#eeeae0,#f9f7f1 60%);
  padding: clamp(70px,7.5vw,118px) 0;
}
.about-inner:has(.promo-art) { grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); gap: clamp(32px,5vw,84px); align-items:center; }
.promo-art {
  min-height: 530px;
  height: auto;
  padding: 38px;
  background-color: #123c32;
  background-image: linear-gradient(180deg,rgba(7,35,29,.28),rgba(7,35,29,.82) 69%,rgba(7,35,29,.96)),url('assets/img/hero/hero-estudio.jpg');
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  color: white;
  border-radius: 14px;
  box-shadow: 14px 15px 0 rgba(25,68,54,.09),0 25px 60px rgba(10,46,34,.12);
}
.promo-art::before { inset: 17px; border: 1px solid rgba(255,255,255,.3); border-radius: 5px; }
.promo-art::after { content:''; width:380px; height:380px; border: 1px solid rgba(236,207,146,.28); right:-160px; bottom:-175px; }
.promo-art-kicker, .promo-art-footer { z-index:1; position:relative; font-size: 10px; letter-spacing: .18em; font-weight: 850; color: #e6d5ab; }
.promo-art-footer { color: #f6eee0; }
.promo-art-main { z-index:1; position:relative; display:flex; flex-direction:column; align-items:flex-start; }
.promo-art-label { color:#f0d8a9; font-size: 11px; font-weight: 750; letter-spacing:.16em; }
.promo-art-title { font-size: clamp(48px,5.2vw,73px); letter-spacing:-.07em; font-weight: 800; line-height:1.03; margin: 12px 0 5px; }
.promo-art-amount { font-size: clamp(72px,7.6vw,112px); letter-spacing:-.07em; font-weight: 850; line-height:1; color:#efd09a; }
.promo-art-unit { margin-top:12px; font-size:13px; color:#e1e9de; }
.promo-copy h2 { font-size:clamp(40px,4.4vw,67px);line-height:1.07; margin:15px 0 0; }
.promo-copy h2 em { color:#43816e; font-family:var(--serif); font-weight:400; }
.promo-copy .promo-lead { margin:18px 0 23px; font-size:13px; line-height:1.7; }
.promo-offers { display:grid; gap:9px; }
.promo-offer {
  display:grid;
  grid-template-columns: minmax(0,1fr) auto 18px;
  align-items:center;
  gap:13px;
  padding: 15px 17px;
  border: 1px solid #dce5dc;
  background:rgba(255,255,255,.86);
  color:#123d33;
  border-radius:10px;
  text-decoration:none;
  transition: border-color .25s, transform .25s, box-shadow .25s;
}
.promo-offer:hover,.promo-offer:focus-visible { transform: translateX(4px);border-color:#9fbaa9;box-shadow:0 10px 25px rgba(15,53,39,.08); }
.promo-offer--featured { background:#e3f0e8; border-color:#91bd9f; }
.promo-offer-title { display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:14px;font-weight:800; }
.promo-offer-title b { font-size:10px;letter-spacing:.1em;color:#4c876d; }
.promo-offer-title small { border-radius:3px;background:#c9e1cf;padding:4px 5px;font-size:8px;letter-spacing:.06em;color:#215d47; }
.promo-offer-price { display:flex;align-items:center;gap:9px;white-space:nowrap; }
.promo-offer-price s { font-size:12px;color:#8c9b91; }
.promo-offer-price strong {font-size:25px;letter-spacing:-.06em; }
.promo-offer-arrow { font-weight:800;color:#ae8348;text-align:right; }
.promo-copy .promo-footnote { margin:15px 0 20px; font-size:11px;line-height:1.65;color:#617c6e; }
.promo-full-cta { display:inline-flex; align-items:center;justify-content:space-between;gap:27px; padding:14px 19px;background:#153e32;border-radius:9px;color:#fff;font-size:12px;font-weight:850; text-decoration:none; }
.promo-full-cta:hover {background:#20664f;color:#fff;}

@media (max-width: 1160px) {
  .promo-art { min-height: 490px; }
  .promo-art-title { font-size: 57px; }
  .promo-art-amount { font-size: 90px; }
}
@media (max-width: 930px) {
  .hero h1 {font-size:clamp(53px,6.4vw,68px);}
  .hero-proof { margin-top:18px; }
  .journey-grid { gap: 10px; }
  .journey-item,.journey-item+.journey-item { padding: 24px 19px; }
  .about-inner:has(.promo-art) { gap:28px; }
  .promo-art { min-height: 425px; padding:29px; }
  .promo-art-title { font-size: 47px; }
  .promo-art-amount { font-size: 75px; }
  .promo-offer { padding: 13px 12px; }
  .promo-offer-price strong { font-size:22px; }
}
@media (max-width: 650px) {
  .hero { height: 760px; min-height: 760px; }
  .hero-photo-stack { background-position:center 20%; }
  .hero-shade { background:linear-gradient(180deg,rgba(4,34,29,.11) 0%,rgba(4,34,29,.42) 28%,rgba(4,34,29,.90) 56%,rgba(4,34,29,.99) 100%); }
  .hero-copy { padding:0; }
  .hero-overline { margin: 17px 0 10px; }
  .hero h1 { font-size:clamp(46px,10.7vw,59px); line-height:1.01; margin-bottom:14px; }
  .hero-description { font-size:12px; line-height:1.55; margin-bottom:15px; }
  .hero-proof { margin-top:16px; }
  .journey-section.section-pad {padding:62px 0 66px;}
  .journey-section .journey-intro h2 { font-size:clamp(40px,9.5vw,53px); }
  .journey-grid { display:grid; grid-template-columns:1fr; gap:11px; }
  .journey-item,.journey-item+.journey-item { min-height:0; padding:23px 22px 21px; border:1px solid #e1e6db; }
  .journey-big { margin:16px 0 12px; font-size:44px; }
  .journey-item p { margin-bottom:16px; }
  .about-section:has(.promo-copy) { padding:65px 0; }
  .about-inner:has(.promo-art) { display:flex; flex-direction:column; gap:35px; }
  .promo-art { width:100%; min-height:360px;height:auto;padding:26px; }
  .promo-art-title { font-size:55px; }
  .promo-art-amount { font-size:85px; }
  .promo-copy h2 { font-size:clamp(39px,9vw,56px); }
  .promo-offer-title { font-size:13px; }
  .promo-offer-price strong { font-size:22px; }
}
@media (max-width:370px) {
  .promo-offer-title small { display:none; }
  .promo-offer-price s { display:none; }
  .promo-art-title { font-size:47px; }
  .promo-art-amount { font-size:72px; }
  .hero h1 {font-size:44px;}
}
@media (prefers-reduced-motion:reduce) {
  .journey-item,.journey-item:hover,.journey-item:focus-within,
  .promo-offer,.promo-offer:hover,.promo-offer:focus-visible {
    transition:none!important;
    transform:none!important;
  }
}


/* ===== ARCHIVO ORIGINAL 5/6: infocap-v285-footer.css ===== */
/* INFOCAP V2.8.5 · Footer común: solo estilos, NO edita enlaces ni textos */
.site-footer{background:radial-gradient(ellipse at 95% 5%,rgba(57,113,91,.18),transparent 43%),linear-gradient(135deg,#092a22 0%,#061c17 100%);padding-top:74px}
.site-footer .footer-main{column-gap:clamp(26px,4vw,60px);row-gap:34px;padding-bottom:58px}
.site-footer .footer-intro{padding-right:25px}
.site-footer .footer-brand{font-weight:840;letter-spacing:-.068em;color:#fff;font-size:32px}
.site-footer .footer-brand span{font-weight:700;color:#e1c38c}
.site-footer .footer-intro p{line-height:1.86;font-size:13px;max-width:300px;color:#b0cbbd;margin-top:18px}
.site-footer .footer-col h3{font-size:10px;letter-spacing:.18em;color:#e2c18d;margin-bottom:25px}
.site-footer .footer-col a{display:table;color:#d3e3d8;line-height:1.5;max-width:100%;font-size:12px;margin-bottom:14px;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px;transition:color .2s,text-decoration-color .2s}
.site-footer .footer-col a:hover{color:#f0d7aa;text-decoration-color:currentColor}
.site-footer .footer-bottom{border-top:1px solid rgba(226,238,227,.18);padding-top:25px;color:#a1bdae;font-size:11px}
.site-footer .footer-bottom a{color:#f0d3a0}
.site-footer a:focus-visible{outline:3px solid #e3c28d;outline-offset:4px;border-radius:2px}
@media(max-width:800px){.site-footer .footer-main{gap:29px}.site-footer .footer-intro{padding-right:0}}
@media(max-width:600px){.site-footer{padding-top:55px}.site-footer .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:33px 18px}.site-footer .footer-intro{grid-column:1/-1}.site-footer .footer-col:last-child{grid-column:1/-1}.site-footer .footer-bottom{padding-bottom:16px}}
@media(prefers-reduced-motion:reduce){.site-footer .footer-col a{transition:none}}


/* ===== ARCHIVO ORIGINAL 6/6: infocap-hero-v287.css ===== */
/* INFOCAP V2.8.7 — HERO CENTRO-IZQUIERDA
   Única finalidad: equilibrar horizontalmente el contenido del slider V2.8.6.
   No modifica fotos, flechas, etiquetas, JavaScript ni secciones interiores.
   Importar DESPUÉS de hero-slider-v286.css y de las demás capas visuales.
*/

@media (min-width: 1151px) {
  .hero .hero-copy {
    /* Ajustable: subir o bajar 6vw para mover el bloque completo. */
    --hero-content-offset: clamp(48px, 6vw, 120px);
    box-sizing: border-box;
    margin-inline-start: var(--hero-content-offset);
    margin-inline-end: auto;
    width: min(650px, calc(100% - var(--hero-content-offset) - 65px));
    max-width: 650px;
    min-width: 0;
    padding-block: 12px 16px;
    text-align: left;
  }

  .hero #hero-title {
    max-width: 640px;
    font-size: clamp(57px, 4.75vw, 78px);
    line-height: 1.03;
    letter-spacing: -.065em;
    text-wrap: balance;
  }

  .hero .hero-description { max-width: 510px; }
}

/* Portátiles y tablet horizontal: avance más moderado para no tapar la imagen. */
@media (min-width: 931px) and (max-width: 1150px) {
  .hero .hero-copy {
    margin-inline-start: clamp(18px, 3.5vw, 42px);
    margin-inline-end: auto;
    width: min(600px, calc(100% - 85px));
    max-width: 600px;
    min-width: 0;
    text-align: left;
  }

  .hero #hero-title {
    max-width: 590px;
    font-size: clamp(49px, 5.4vw, 62px);
    line-height: 1.04;
    text-wrap: balance;
  }
}

/* En tablet vertical y móvil respetamos la distribución responsiva existente. */
@media (max-width: 930px) {
  .hero .hero-copy {
    margin-inline-start: 0;
    margin-inline-end: 0;
    width: auto;
    max-width: min(590px, 100%);
    text-align: left;
  }
}

@media (max-width: 650px) {
  .hero .hero-copy {
    max-width: 100%;
  }
}
