/* APM — sitio estático (reconstrucción del WordPress/Elementor de 2026).
   Medidas tomadas del sitio original en Chrome (scripts/medir.mjs).
   Puntos de quiebre iguales a Elementor: tablet ≤1024 px, móvil ≤767 px. */

@font-face { font-family: "Korolev"; font-weight: 400; font-style: normal; font-display: swap;
  src: url("/wp-content/uploads/2026/07/KorolevAlternates-Regular.ttf") format("truetype"); }
@font-face { font-family: "Korolev"; font-weight: 500; font-style: normal; font-display: swap;
  src: url("/wp-content/uploads/2026/07/KorolevAlternates-Medium.ttf") format("truetype"); }
@font-face { font-family: "Korolev"; font-weight: 600 700; font-style: normal; font-display: swap;
  src: url("/wp-content/uploads/2026/07/KorolevAlternates-Bold.ttf") format("truetype"); }

:root {
  --azul: #041d45;          /* color global de títulos */
  --gris-texto: #54595f;
  --naranja: #fc5c00;
  --naranja-boton: #fc5a01;
  --gris-fondo: #f1f1f1;
  --ancho: 1200px;
  --fuente: "Korolev", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0; background: #fff; color: #333;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px; line-height: 1.5;
}
img, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
h1, h2, h3, h4, h5, h6 { margin: 0; font-family: var(--fuente); font-weight: 400; line-height: 1; color: var(--azul); }
/* Párrafos que en el original eran <h2> (SEO, 2026-10-06): mismo estilo que un título */
.tt { font-family: var(--fuente); font-weight: 400; line-height: 1; color: var(--azul); }
p { margin: 0; }
b, strong { font-weight: 700; }
.saltar { position: absolute; left: -9999px; }
.saltar:focus { left: 10px; top: 10px; z-index: 1000; background: #fff; padding: 8px 12px; }

/* ── Contenedores ─────────────────────────────────────────────────────────── */
.caja { width: 100%; max-width: var(--ancho); margin: 0 auto; }
.seccion { padding: 100px 0; }
.fila { display: flex; gap: 20px; }

/* ── Botón "Solicitar Demo" (icon-box de ElementsKit) ─────────────────────── */
.boton {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  width: 212px; padding: 15px 50px; border-radius: 10px; overflow: hidden;
  background: linear-gradient(90deg, #fc5b08 0%, #fc8400 100%);
  font-family: var(--fuente); font-size: 18px; font-weight: 500; line-height: 1.2; color: #fff; text-align: center;
}
.boton > span { position: relative; z-index: 1; }
.boton::before {
  content: ""; position: absolute; inset: 0; background: #fc5c01; opacity: 0; transition: opacity .4s;
}
.boton:hover::before { opacity: 1; }

/* Título de sección (h2 de 45 px con negritas) + bajada de 18 px */
.titulo { font-size: 45px; }
.bajada { font-size: 18px; font-weight: 500; }
.cabeza { display: flex; gap: 20px; }
.cabeza__texto { flex: 0 0 calc((100% - 20px) * .65); display: flex; flex-direction: column; gap: 20px; }
.cabeza__accion { flex: 1; display: flex; align-items: center; justify-content: flex-end; }

/* ── Encabezado ───────────────────────────────────────────────────────────── */
.contacto-lista { display: flex; justify-content: flex-end; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.contacto-lista li { margin: 0 8px; }
.contacto-lista li:last-child { margin-right: 0; }
.contacto-lista a { display: flex; align-items: center; font-family: var(--fuente); font-size: 14px; line-height: 21px; }
.contacto-lista svg { width: 14px; height: 14px; fill: var(--azul); margin-right: 3.5px; flex: none; }
.contacto-lista .texto { padding-left: 5px; color: var(--gris-texto); }
.contacto-lista--iconos { display: none; }

.barra-superior { width: 95%; margin: 0 auto; padding: 15px 0; }

.navegacion {
  position: sticky; top: 0; z-index: 100;
  width: 95%; margin: 0 auto 30px; padding: 15px 40px; border-radius: 10px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  background: linear-gradient(90deg, #041d45 0%, #bac8e3 100%);
}
.navegacion__logo { width: 230px; flex: none; }
.menu { display: flex; margin: 0; padding: 0; list-style: none; }
.menu a { display: flex; align-items: center; padding: 0 15px; font-family: var(--fuente); font-size: 16px; font-weight: 500; line-height: 24px; color: #fff; }
.menu a:hover, .menu .actual > a { color: var(--naranja); }

.redes { display: flex; gap: 4.5px; margin: 0; padding: 0; list-style: none; }
.redes li { margin: 5px; }
.redes a { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; transition: background-color .3s; }
.redes a:hover { background-color: var(--azul); }
.redes svg { width: 20px; height: 20px; fill: #fff; }
.redes .tiktok svg { width: 16px; height: 18px; }

.hamburguesa, .menu-movil { display: none; }
.hamburguesa {
  width: 45px; padding: 8px; border: 0; border-radius: 3px; background: var(--azul); cursor: pointer;
}
.hamburguesa span { display: block; height: 1px; background: #fff; margin-bottom: 4px; }
.hamburguesa span:last-child { margin-bottom: 0; }

.menu-movil {
  position: fixed; inset: 0; z-index: 1000; background: #f7f7f7; overflow-y: auto;
  transform: translateX(-100%); transition: transform .4s ease;
}
.menu-movil.abierto { transform: translateX(0); }
.menu-movil__cabeza { display: flex; justify-content: space-between; align-items: flex-start; padding: 10px 0 16px; }
.menu-movil__logo { flex: none; margin: 20px 0 10px 20px; width: 240px; }
.menu-movil__logo img { width: 100%; }
.menu-movil__cerrar {
  margin: 22px 12px 12px; width: 45px; padding: 8px; border: 0; border-radius: 3px;
  background: var(--azul); color: #fff; font-size: 14px; line-height: 21px; cursor: pointer;
}
.menu-movil ul, .menu-movil .menu { display: block; margin: 0; padding: 0; list-style: none; }
.menu-movil .menu a { display: block; padding: 0 30px 20px 25px; font-family: var(--fuente); font-size: 18px; font-weight: 500; line-height: 27px; color: var(--azul); }
.menu-movil .menu .actual > a { color: var(--naranja); }

/* ── Pie: "Hablemos de tu proyecto" + franja final ────────────────────────── */
.hablemos { padding: 50px 0 150px; }
.hablemos .caja { max-width: 1140px; }
.hablemos__titulo { font-size: 45px; margin-bottom: 20px; }
.hablemos__tarjeta {
  position: relative; border-radius: 15px; padding: 40px 100px 0;
  background: linear-gradient(90deg, #485c81 0%, #7c92ad 100%);
}
.formulario { display: grid; grid-template-columns: 1fr 1fr; column-gap: 70px; }
.formulario input:not([type=submit]) {
  width: 100%; height: 35px; margin-bottom: 20px; padding: 0 20px; border: 0; border-radius: 10px;
  background: #4a596f; color: #fff; font-family: var(--fuente); font-size: 18px;
}
.formulario input::placeholder { color: #fff; opacity: 1; }
.formulario input:focus { outline: 2px solid rgba(255,255,255,.5); }
.formulario .trampa { position: absolute; left: -9999px; }
.formulario__enviar { grid-column: 1 / -1; text-align: center; }
.formulario__enviar button {
  width: 35%; margin: 33px 0 -50px; padding: 0; border: 0; border-radius: 10px;
  background: var(--naranja-boton); color: #fff; font-family: var(--fuente); font-size: 18px; font-weight: 500; line-height: 50px;
  cursor: pointer; transition: background-color .3s;
}
.formulario__enviar button:hover { background: #fc8502; }
.formulario__enviar button:disabled { opacity: .7; cursor: wait; }
.formulario__mensaje { grid-column: 1 / -1; min-height: 20px; color: #fff; font-family: var(--fuente); text-align: center; }

.pie { padding-bottom: 30px; }
.pie__principal {
  width: 95%; margin: 0 auto; padding: 50px 40px; border-radius: 10px; background: var(--gris-fondo);
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
.pie__marca { width: 25%; display: flex; flex-direction: column; gap: 10px; }
.pie__marca img { width: 230px; }
.pie__aviso { font-family: var(--fuente); font-size: 20px; font-weight: 500; line-height: 1; color: var(--azul); }
.pie .menu a { color: var(--azul); }
.pie .menu a:hover, .pie .menu .actual > a { color: var(--naranja); }
.pie .redes svg { fill: var(--azul); }
.pie .redes a:hover svg { fill: #fff; }
.pie__menu-movil { display: none; }
.pie__final {
  width: 95%; margin: 15px auto 0; padding: 15px 0; border-top: 1px solid #4b5f7e;
  display: flex; justify-content: space-between; align-items: center; gap: 20px;
}
.pie__derechos { font-family: var(--fuente); font-size: 14px; font-weight: 500; line-height: 1; color: var(--azul); }

/* Botón flotante de WhatsApp (Blue Gate) */
.whatsapp-flotante {
  position: fixed; bottom: 20px; right: 20px; z-index: 1001; width: 56px; height: 56px; border-radius: 50%;
  background: #25D366; display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 14px rgba(37, 211, 102, .45);
}
.whatsapp-flotante svg { width: 28px; height: 28px; fill: #fff; }

/* ── Animaciones de entrada (equivalen a las de Elementor) ───────────────── */
.anim { opacity: 0; }
.anim.visible { animation-duration: 1.25s; animation-fill-mode: both; }
.anim.lento.visible { animation-duration: 2s; }
.anim.visible.fadeIn { animation-name: fadeIn; }
.anim.visible.fadeInUp { animation-name: fadeInUp; }
.anim.visible.fadeInDown { animation-name: fadeInDown; }
.anim.visible.fadeInLeft { animation-name: fadeInLeft; }
.anim.visible.fadeInRight { animation-name: fadeInRight; }
.anim.visible.zoomIn { animation-name: zoomIn; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeInUp { from { opacity: 0; transform: translate3d(0, 100%, 0); } to { opacity: 1; transform: none; } }
@keyframes fadeInDown { from { opacity: 0; transform: translate3d(0, -100%, 0); } to { opacity: 1; transform: none; } }
@keyframes fadeInLeft { from { opacity: 0; transform: translate3d(-100%, 0, 0); } to { opacity: 1; transform: none; } }
@keyframes fadeInRight { from { opacity: 0; transform: translate3d(100%, 0, 0); } to { opacity: 1; transform: none; } }
@keyframes zoomIn { from { opacity: 0; transform: scale3d(.3, .3, .3); } 50% { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .anim { opacity: 1 !important; animation: none !important; } }

/* ═════════════════════════ INICIO ═════════════════════════ */
.heroe { padding: 0 3%; margin-bottom: 16px; }  /* 16 px = espacio de los puntos del carrusel original */
.heroe__banner {
  border-radius: 15px; padding: 200px 0; overflow: hidden;
  background: url("/wp-content/uploads/2026/08/BANNER-APM.webp") center / cover no-repeat;
}
.heroe__fila { display: flex; justify-content: space-between; gap: 20px; }
.heroe__izq { width: 100%; padding-left: 50px; display: flex; flex-direction: column; gap: 20px; }
.heroe__der { width: 100%; padding-left: 50px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 20px; }
.heroe h1 { font-size: 50px; }
.heroe__sub { font-size: 25px; font-weight: 500; }
.heroe__texto { font-size: 18px; font-weight: 500; }
@media (min-width: 1025px) { .heroe__banner { background-attachment: fixed; } }

.giratorias { max-width: 1200px; margin: 0 auto; padding-top: 150px; display: flex; gap: 20px; }
.giratorias__col1 { width: 33.3333%; }
.giratorias__col2 { width: 66.6666%; display: flex; flex-direction: column; gap: 20px; }
.giratoria {
  position: relative; height: 560px; border-radius: 10px; overflow: hidden;
  background: #fff center / cover no-repeat;
}
.giratorias__col2 .giratoria { height: 270px; }
.giratoria__capa {
  position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end;
  padding: 35px; border-radius: 10px; color: #fff; transition: opacity .6s;
}
.giratoria__capa--frente { background: var(--velo, transparent); }
.giratoria__capa--atras { background: rgba(0, 0, 0, .59); opacity: 0; }
.giratoria:hover .giratoria__capa--frente { opacity: 0; }
.giratoria:hover .giratoria__capa--atras { opacity: 1; }
.giratoria h3 { margin-bottom: 20px; font-size: 25px; font-weight: 600; line-height: 1; color: #fff; }
.giratoria p { font-family: var(--fuente); font-size: 18px; line-height: 1.5; }

.demo-centro { padding: 50px 0 100px; display: flex; justify-content: center; }

.complejidad { background: var(--gris-fondo); padding: 100px 0; }
.complejidad__imagen { margin-top: 20px; width: 100%; }
.complejidad__cifras {
  margin-top: 20px; padding: 40px 30px 30px; border-radius: 20px; overflow: hidden;
  display: flex; justify-content: space-evenly;
  background: linear-gradient(90deg, #2a3f6e 0%, #98a9c5 100%);
}
.cifra { width: 26%; min-height: 152px; text-align: center; color: #fff; font-family: var(--fuente); }
.cifra:nth-child(2) { width: 30%; }
.cifra:nth-child(3) { width: 29%; }
.cifra img { margin: 0 auto; height: 79px; width: auto; }
.cifra:nth-child(2) img { height: 83px; }
.cifra:nth-child(3) img { height: 70px; margin-bottom: 10px; }
.cifra h3 { padding-top: 20px; font-size: 20px; font-weight: 500; line-height: 1.2; color: #fff; }
.cifra p { font-size: 18px; font-weight: 500; line-height: 1.2; }

.conoce { padding: 100px 0; }
.conoce__video { position: relative; margin-top: 20px; border-radius: 25px; overflow: hidden; aspect-ratio: 16 / 9; background: #000; }
.conoce__video video { width: 100%; height: 100%; object-fit: cover; }
.conoce__portada {
  position: absolute; inset: 0; border: 0; padding: 0; cursor: pointer;
  background: url("/wp-content/uploads/2026/07/img-video-APM.webp") center / cover no-repeat;
}

.para-quien { padding: 50px 0 100px; }
.para-quien__tarjetas { margin-top: 20px; display: flex; gap: 60px; }
.publico { width: 33%; display: flex; flex-direction: column; gap: 20px; }
.publico img { width: 100%; height: 429px; object-fit: cover; }
.publico span {
  display: block; padding: 25px 50px; border-radius: 10px; text-align: center;
  background: linear-gradient(90deg, #55678b 0%, #758aa7 100%);
  font-family: var(--fuente); font-size: 18px; font-weight: 500; line-height: 1.2; text-transform: uppercase; color: #fff;
}

/* Secciones agregadas por SEO (2026-10-06), con el estilo del resto del sitio */
.modulos { padding: 100px 0; }
.modulos__lista { margin-top: 40px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.modulo { padding: 30px 25px; border-radius: 20px; background: #202a3f; }
.modulo h3 { margin-bottom: 12px; font-size: 20px; font-weight: 500; line-height: 1.2; color: #fff; }
.modulo p { font-family: var(--fuente); font-size: 16px; line-height: 1.5; color: rgba(255, 255, 255, .85); }
.diferencias { padding: 100px 0; background: var(--gris-fondo); }
.diferencias__bajada { margin-top: 20px; }
.diferencias__lista { margin-top: 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.diferencia { padding: 30px; border-radius: 15px; border-left: 5px solid var(--naranja); background: #fff; }
.diferencia h3 { margin-bottom: 12px; font-size: 22px; font-weight: 600; line-height: 1.2; }
.diferencia p { font-family: var(--fuente); font-size: 17px; line-height: 1.5; color: var(--azul); }
.diferencias__cierre { max-width: 900px; margin: 40px auto 0; line-height: 1.5; text-align: center; }
.diferencias__accion { padding: 30px 0 0; }

/* ═════════════════════════ TABLET (≤1024) ═════════════════════════ */
@media (max-width: 1024px) {
  .barra-superior .contacto-lista a, .pie__final .contacto-lista a { font-size: 12px; line-height: 18px; }
  .barra-superior .contacto-lista svg { width: 12px; height: 12px; }
  .navegacion { width: 98%; padding: 15px 20px; }
  .navegacion__logo { width: 150px; }
  .menu a { font-size: 13px; line-height: 1.5; padding: 10px 5px 0; }
  .navegacion nav { min-height: 40px; align-self: center; }
  .redes li { margin: 0; }
  .redes a { width: 25px; height: 25px; }
  .redes svg { width: 12px; height: 12px; }
  .boton { width: 198px; font-size: 16px; }
  .titulo { font-size: 35px; }
  .bajada { font-size: 16px; }

  .hablemos { padding: 50px 30px 100px; }
  .hablemos__titulo { font-size: 35px; }
  .hablemos__tarjeta { padding: 40px 70px; }
  .formulario input:not([type=submit]) { font-size: 16px; }
  .formulario__enviar button { font-size: 16px; }
  .pie__principal { width: 98%; padding: 15px 20px; }
  .pie__marca img { width: 150px; }
  .pie__derechos { font-size: 12px; }
  .pie__final .contacto-lista a { font-size: 12px; }

  .heroe__banner { padding: 150px 0; }
  .heroe__izq { width: 85%; padding-left: 30px; }
  .heroe__der { padding-left: 0; }
  .heroe h1 { font-size: 40px; }
  .heroe__sub { font-size: 20px; }
  .heroe__texto { font-size: 16px; }
  .heroe { padding-bottom: 50px; }
  .giratorias { padding: 0 30px; }
  .giratoria h3 { font-size: 20px; }
  .giratoria p { font-size: 16px; }
  .demo-centro { padding: 25px 0 50px; }
  .complejidad { padding: 75px 30px; }
  .cifra h3 { font-size: 18px; }
  .cifra img, .cifra:nth-child(2) img { height: 78px; }
  .cifra:nth-child(3) img { height: 45px; margin-bottom: 10px; }
  .cifra p { font-size: 16px; }
  .conoce { padding: 75px 30px; }
  .para-quien { padding: 50px 30px 75px; }
  .modulos, .diferencias { padding: 75px 30px; }
  .modulos__lista { grid-template-columns: 1fr 1fr; }
  .diferencia p { font-size: 16px; }
  .publico span { padding: 20px 40px; font-size: 16px; }
}

/* ═════════════════════════ MÓVIL (≤767) ═════════════════════════ */
@media (max-width: 767px) {
  .barra-superior { width: 100%; padding: 15px 20px; }
  .barra-superior .contacto-lista--texto { display: none; }
  .barra-superior .contacto-lista--iconos { display: flex; }
  .contacto-lista--iconos li { margin: 0 12.5px; }
  .contacto-lista--iconos a { line-height: 23px; min-height: 23px; }
  .barra-superior .contacto-lista--iconos svg, .pie__final .contacto-lista--iconos svg { width: 15px; height: 15px; margin-right: 3.75px; }

  .navegacion { width: 95%; padding: 15px 20px; flex-wrap: wrap; gap: 0; }
  .navegacion .redes { order: 1; width: 100%; justify-content: center; padding-bottom: 10px; gap: 4.5px; }
  .navegacion__logo { order: 2; width: 200px; }
  .navegacion .menu, .navegacion nav { display: none; }
  .hamburguesa { display: block; order: 3; }
  .menu-movil { display: block; }

  .boton { width: 186px; font-size: 14px; }
  .titulo { font-size: 25px; }
  .bajada { font-size: 14px; }
  .cabeza { flex-direction: column; }
  .cabeza__texto { flex: none; }
  .cabeza__accion { justify-content: center; }

  .hablemos { padding: 50px 20px 75px; }
  .hablemos__titulo { font-size: 25px; }
  .hablemos__tarjeta { padding: 40px; }
  .formulario { grid-template-columns: 1fr; }
  .formulario input:not([type=submit]) { font-size: 14px; }
  .formulario__enviar button { width: auto; padding: 0 20px; margin: 0; font-size: 14px; }

  .pie__principal { width: 95%; flex-direction: column; gap: 0; padding: 30px 0; }
  .pie__marca { width: 100%; }
  .pie__marca img { width: 70%; }
  .pie__principal > .menu { display: none; }
  .pie__menu-movil { display: block; padding: 30px 0; }
  .pie__menu-movil .menu a { display: flex; justify-content: center; padding: 13px 20px; font-family: Roboto, sans-serif; font-size: 16px; font-weight: 600; line-height: 20px; color: var(--azul); }
  .pie__menu-movil .menu .actual > a { color: #fc5c01; }
  .pie__menu-movil ul, .pie__menu-movil .menu { display: block; margin: 0; padding: 0; list-style: none; }
  .pie .redes { width: 100%; justify-content: center; padding-top: 10px; gap: 4.5px; }
  .pie__final { width: 100%; flex-direction: column-reverse; align-items: stretch; padding: 15px 20px; }
  .pie__derechos { font-size: 10px; text-align: center; }
  .pie__final .contacto-lista--texto { display: none; }
  .pie__final .contacto-lista--iconos { display: flex; justify-content: center; }

  .heroe { padding: 0 3% 50px; }
  .heroe__banner { padding: 100px 0; }
  .heroe__fila { flex-direction: column; }
  .heroe__izq { width: 100%; padding: 0; gap: 10px; text-align: center; }
  .heroe__der { padding: 0; align-items: center; text-align: center; }
  .heroe h1 { font-size: 30px; }
  .heroe__sub { font-size: 18px; }
  .heroe__texto { font-size: 14px; line-height: 1.3; }

  .giratorias { flex-direction: column; padding: 0 20px; }
  .giratorias__col1, .giratorias__col2 { width: 100%; }
  .giratoria, .giratorias__col2 .giratoria { height: 400px; }
  .giratoria h3, .giratorias__col1 .giratoria h3 { font-size: 18px; }
  .giratoria p, .giratorias__col1 .giratoria p { font-size: 14px; }
  .complejidad { padding: 50px 20px; }
  .complejidad__cifras { flex-direction: column; gap: 30px; }
  .complejidad__cifras .cifra { width: 100%; min-height: 0; }
  .cifra:nth-child(2) img { height: 71px; }
  .cifra:nth-child(3) img { height: 56px; margin-bottom: 0; }
  .cifra h3 { font-size: 16px; }
  .cifra p { font-size: 14px; line-height: 22px; }
  .conoce { padding: 50px 20px; }
  .para-quien { padding: 50px 20px; }
  .modulos, .diferencias { padding: 50px 20px; }
  .modulos__lista, .diferencias__lista { grid-template-columns: 1fr; }
  .modulo h3, .diferencia h3 { font-size: 18px; }
  .modulo p, .diferencia p { font-size: 14px; }
  .diferencias__cierre { line-height: 1.5; }
  .para-quien__tarjetas { flex-direction: column; }
  .publico { width: 100%; }
  .publico img { height: 417px; }
  .publico span { font-size: 14px; }
  .para-quien .bajada { text-align: justify; }
}

/* ═════════════════════════ ENCABEZADO DE PÁGINA (interiores) ═════════════════════════ */
.encabezado-pagina__fondo {
  width: 95%; margin: 0 auto; padding: 100px 0; overflow: hidden;
  background: url("/wp-content/uploads/2026/08/fondo-encabezado-contacto-APM.webp") center / cover no-repeat;
}
@media (min-width: 1025px) { .encabezado-pagina__fondo { background-attachment: fixed; } }
.encabezado-pagina__fila { max-width: 1200px; margin: 0 auto; display: flex; gap: 80px; }
.encabezado-pagina__texto { width: 50%; display: flex; flex-direction: column; gap: 20px; }
.encabezado-pagina__accion { width: 50%; display: flex; justify-content: center; align-items: flex-end; flex-direction: column; }
.encabezado-pagina h1 { font-size: 45px; }
.encabezado-pagina__sub { font-family: Roboto, sans-serif; font-size: 30px; }

/* ═════════════════════════ SOFTWARE DE GESTIÓN DE PROYECTOS ═════════════════════════ */
.adapta { max-width: 1140px; margin: 0 auto; padding: 100px 0; display: flex; flex-direction: column; align-items: center; gap: 30px; text-align: center; }
.adapta h2, .adapta .tt { width: 100%; }
.sub-roboto { font-family: Roboto, sans-serif; font-size: 30px; }

.funcion { padding: 100px 0; }
.funcion--primera { padding: 50px 0 100px; }
.funcion--gris { background: var(--gris-fondo); }
.funcion__fila { max-width: 1250px; margin: 0 auto; display: flex; }
.funcion__imagen { width: 39.52%; flex: none; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.funcion__imagen img { width: 100%; }
.funcion__texto { width: 60.48%; flex: none; display: flex; flex-direction: column; gap: 20px; padding-left: 20px; }
.funcion--gris .funcion__texto { padding: 0 20px 0 0; }
.funcion__texto > .boton { align-self: flex-start; }
.funcion__parrafo { font-family: var(--fuente); font-size: 18px; font-weight: 500; line-height: 1.5; color: var(--azul); }
.funcion__parrafo p { margin-bottom: 14.4px; }
.funcion__parrafo--angosto { padding-right: 250px; }
.funcion__claves { padding: 20px; border-radius: 20px; overflow: hidden; background: #202a3f; font-family: var(--fuente); font-size: 20px; line-height: 1.5; color: #fff; }
.funcion__claves p { margin-bottom: 14.4px; }
.funcion__claves ul { margin: 0; padding-left: 40px; }
[data-paralaje] { will-change: transform; }
/* Mercados: la lista de beneficios va sin caja, en negro */
.funcion__claves--claro { padding: 20px 20px 20px 0; border-radius: 20px; background: none; color: #000; }

@media (max-width: 1024px) {
  .adapta { padding: 100px 30px; }
  .sub-roboto { font-size: 25px; }
  .funcion { padding: 100px 30px; }
  .funcion--primera { padding: 0 30px 50px; }
  .funcion__parrafo { font-size: 16px; }
  .funcion__parrafo--angosto, .funcion__parrafo--angosto-tablet { padding-right: 100px; }
  .funcion__claves { font-size: 18px; }
  .funcion__claves--claro { padding: 0; }
}
@media (max-width: 767px) {
  .adapta { padding: 50px 20px 0; }
  .sub-roboto { font-size: 20px; }
  .funcion, .funcion--primera { padding: 50px 20px; }
  .funcion__fila { flex-direction: column; }
  .funcion--imagen-izq .funcion__fila { flex-direction: column-reverse; }
  .funcion__imagen, .funcion__texto { width: 100%; }
  .funcion__texto, .funcion--gris .funcion__texto { padding: 0 0 50px; }
  .funcion__parrafo { font-size: 14px; }
  .funcion__parrafo--angosto, .funcion__parrafo--angosto-tablet { padding-right: 0; }
  .funcion__claves { font-size: 16px; }
  .funcion__texto > .boton { align-self: center; }
}

/* ═════════════════════════ CONTACTO ═════════════════════════ */
.contacto-encabezado .encabezado-pagina__texto { width: 530px; flex: none; padding-right: 100px; }
.contacto-encabezado .encabezado-pagina__accion { width: auto; flex: 1; align-items: stretch; }
.contacto-encabezado__sub { font-size: 25px; }
.contacto-encabezado__texto { font-size: 18px; font-weight: 500; }

.contacto { max-width: 1140px; margin: 0 auto; padding: 100px 0; display: flex; }
.contacto__tarjeta {
  width: 45%; flex: none; padding: 40px; border-radius: 15px; display: flex; flex-direction: column; gap: 20px;
  background: linear-gradient(90deg, #485c81 0%, #7c92ad 100%);
}
.contacto__tarjeta h2 { font-size: 35px; color: #fff; text-align: center; }
.contacto__tarjeta .formulario { grid-template-columns: 1fr; }
.contacto__tarjeta .formulario__enviar button { margin: 0 0 20px; }
.contacto__legal { display: flex; flex-direction: column; gap: 20px; font-family: var(--fuente); font-size: 16px; font-weight: 500; line-height: 1; color: #fff; text-align: justify; }
.contacto__legal span { color: #ff7c0e; }
.contacto__info { width: 55%; padding-left: 100px; display: flex; flex-direction: column; gap: 20px; }
.contacto__info h2 { font-size: 45px; }
.contacto__info h3 { font-size: 20px; font-weight: 600; line-height: 1; }
.contacto__info .funcion__parrafo { font-size: 18px; }
.contacto__justificado { text-align: justify; }

@media (max-width: 1024px) {
  .encabezado-pagina.contacto-encabezado { padding: 0; }
  .contacto-encabezado .encabezado-pagina__fondo { width: 95%; padding: 75px 30px; }
  .contacto-encabezado .encabezado-pagina__fila { gap: 40px; }
  .contacto-encabezado .encabezado-pagina__texto { width: auto; flex: 1 1 0; padding-right: 0; }
  .contacto-encabezado .encabezado-pagina__accion { flex: 1 1 0; }
  .contacto-encabezado h1 { font-size: 35px; }
  .contacto-encabezado__sub { font-size: 20px; }
  .contacto-encabezado__texto { font-size: 16px; }
  .contacto { padding: 75px 30px; }
  .contacto__tarjeta { padding: 40px 30px; }
  .contacto__tarjeta h2 { font-size: 25px; }
  .contacto__legal { font-size: 14px; }
  .contacto__info { padding-left: 75px; }
  .contacto__info h2 { font-size: 35px; }
  .contacto__info h3 { font-size: 18px; }
  .contacto__info .funcion__parrafo { font-size: 16px; }
}
@media (max-width: 767px) {
  .encabezado-pagina.contacto-encabezado { padding: 0; }
  .contacto-encabezado .encabezado-pagina__fondo { width: 95%; padding: 50px 20px; }
  .contacto-encabezado .encabezado-pagina__fila { gap: 40px; }
  .contacto-encabezado .encabezado-pagina__texto { width: 100%; text-align: center; }
  .contacto-encabezado h1 { font-size: 25px; }
  .contacto-encabezado__sub { font-size: 16px; }
  .contacto-encabezado__texto { font-size: 14px; text-align: justify; }
  .contacto { padding: 50px 20px; flex-direction: column-reverse; }
  .contacto__tarjeta, .contacto__info { width: 100%; }
  .contacto__tarjeta { padding: 40px 20px; }
  .contacto__tarjeta h2 { font-size: 20px; }
  .contacto__legal { font-size: 12px; }
  .contacto__info { padding: 0 0 40px; }
  .contacto__info h2 { font-size: 25px; }
  .contacto__info h3 { font-size: 16px; text-align: justify; }
  .contacto__info .funcion__parrafo { font-size: 14px; }
}

/* ═════════════════════════ BLOG ═════════════════════════ */
.blog-lista { max-width: 1140px; margin: 0 auto; padding: 100px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.tarjeta-entrada {
  min-height: 360px; padding: 0 20px 20px; border-radius: 15px; overflow: hidden;
  display: flex; flex-direction: column; justify-content: flex-end; gap: 20px;
  background: center / cover no-repeat; color: #fff;
}
.tarjeta-entrada h2 { font-size: 30px; font-weight: 300; color: #fff; }
.tarjeta-entrada p { font-family: var(--fuente); font-size: 18px; line-height: 1.5; }
.tarjeta-entrada .fecha { display: flex; align-items: center; font-family: Roboto, sans-serif; font-size: 16px; line-height: 24px; }
.fecha svg { width: 14px; height: 14px; fill: currentColor; }
.fecha span { padding-left: 5px; }

/* Entrada del blog */
.entrada__encabezado {
  width: 95%; margin: 0 auto; padding: 100px 0 250px; border-radius: 15px; overflow: hidden;
  display: flex; justify-content: center;
  background: url("/wp-content/uploads/2026/08/fondo-encabezado-contacto-APM.webp") center / cover no-repeat;
}
@media (min-width: 1025px) { .entrada__encabezado { background-attachment: fixed; } }
.entrada__encabezado h1 { width: 50%; font-size: 45px; font-weight: 600; text-align: center; }
.entrada__portada { max-width: 1140px; margin: -180px auto 0; display: flex; flex-direction: column; align-items: center; }
.entrada__portada img { width: 50%; }
.entrada__fecha { width: 50%; margin-top: 20px; display: flex; align-items: center; font-family: var(--fuente); font-size: 18px; line-height: 27px; color: #000; }
.entrada__fecha svg { width: 14px; height: 14px; fill: #000; }
.entrada__fecha span { padding-left: 5px; }
.entrada__contenido { padding: 10px; font-family: Roboto, sans-serif; color: #7a7a7a; }
.entrada__bloque {
  max-width: 1140px; margin: 0 auto;
  padding: var(--pt, 0) var(--pr, 0) var(--pb, 0) var(--pl, 0);
  display: flex; flex-direction: column; gap: 20px;
}
.entrada__titulo-bloque { font-size: 30px; text-align: justify; }
.entrada__texto { font-family: var(--fuente); font-size: 18px; line-height: 1.5; color: var(--azul); text-align: justify; }
.entrada__texto p { margin-bottom: 14.4px; }
.entrada__texto h1, .entrada__texto h2, .entrada__texto h3, .entrada__texto h4, .entrada__texto h5, .entrada__texto h6 { margin: 8px 0 16px; line-height: 1.2; font-weight: 500; }
.entrada__texto h5 { font-size: 20px; }
.entrada__texto h6 { font-size: 16px; }
.entrada__texto h4 { font-size: 24px; }
.entrada__texto h3 { font-size: 28px; }
.entrada__texto h2 { font-size: 32px; }
.entrada__texto ul, .entrada__texto ol { margin: 0; padding-left: 40px; }

@media (max-width: 1024px) {
  .blog-lista { padding: 100px 0; }
  .entrada__encabezado-marco { padding: 100px 30px; }
  .entrada__titulo-bloque { font-size: 25px; }
  .entrada__texto { font-size: 16px; }
  .entrada__bloque { padding: var(--pt-t, var(--pt, 0)) var(--pr-t, var(--pr, 0)) var(--pb-t, var(--pb, 0)) var(--pl-t, var(--pl, 0)); }
}
@media (max-width: 767px) {
  .blog-lista { grid-template-columns: 1fr; padding: 100px 0; }
  .entrada { padding: 0; }
  .entrada__encabezado-marco { padding: 50px 20px; }
  .entrada__encabezado { width: 100%; }
  .entrada__titulo-bloque { font-size: 20px; text-align: center; }
  .entrada__texto { font-size: 14px; }
  .entrada__bloque { padding: var(--pt-m, var(--pt-t, var(--pt, 0))) var(--pr-m, var(--pr-t, var(--pr, 0))) var(--pb-m, var(--pb-t, var(--pb, 0))) var(--pl-m, var(--pl-t, var(--pl, 0))); }
}

/* ═════════════════════════ AVISO DE PRIVACIDAD ═════════════════════════ */
.aviso__titulo { max-width: 1200px; margin: 0 auto; padding-top: 50px; display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.aviso__titulo h1 { font-size: 45px; text-transform: uppercase; }
.aviso__titulo h2 { font-size: 30px; }
.aviso__texto { max-width: 1140px; margin: 0 auto; font-family: var(--fuente); font-size: 18px; line-height: 1.5; color: var(--azul); text-align: justify; }
.aviso__texto--primero { padding-top: 50px; }
.aviso__texto p { margin-bottom: 14.4px; }
.aviso__texto a { color: #c36; }
.aviso__firma { max-width: 1140px; margin: 0 auto; padding: 100px 0 150px; text-align: center; }
.aviso__linea { width: 50%; margin: 0 auto; padding: 2px 0; }
.aviso__linea::before { content: ""; display: block; border-top: 1px solid #000; }
.aviso__firma h2 { font-size: 18px; font-weight: 500; }
@media (max-width: 1024px) {
  .aviso__titulo { padding: 50px 30px 0; }
  .aviso__titulo h1 { font-size: 35px; }
  .aviso__titulo h2 { font-size: 25px; }
  .aviso__texto { padding: 0 30px; font-size: 16px; }
  .aviso__texto--primero { padding-top: 30px; }
  .aviso__firma { padding: 100px 30px 150px; }
  .aviso__firma h2 { font-size: 16px; }
}
@media (max-width: 767px) {
  .aviso__titulo { padding: 30px 20px 0; }
  .aviso__titulo h1 { font-size: 25px; }
  .aviso__titulo h2 { font-size: 20px; }
  .aviso__texto { padding: 0 20px; font-size: 14px; }
  .aviso__texto--primero { padding-top: 30px; }
  .aviso__firma { padding: 50px 20px 100px; }
  .aviso__linea { width: 83%; }
  .aviso__firma h2 { font-size: 14px; }
}

/* ═════════════════════════ GRACIAS ═════════════════════════ */
.gracias { padding-bottom: 50px; }
.gracias__banner {
  width: 95%; margin: 0 auto; padding: 0 100px 0 0; border-radius: 15px; overflow: hidden;
  display: flex; gap: 20px; background: url("/wp-content/uploads/2026/08/Fondo-seccion-gracias-APM.webp") center / cover no-repeat;
}
@media (min-width: 1025px) { .gracias__banner { background-attachment: fixed; } }
.gracias__texto { width: 65%; flex: none; padding-left: 100px; display: flex; flex-direction: column; justify-content: center; gap: 20px; }
.gracias__texto h1 { font-size: 45px; font-weight: 600; }
.gracias__texto h2, .gracias__mensaje { font-size: 45px; }
.gracias__texto .boton { width: 232px; padding: 10px 50px; margin-top: 20px; }
.gracias__imagen { width: 25%; margin-top: 20px; align-self: flex-end; }
.gracias__imagen img { width: 100%; }
@media (max-width: 1024px) {
  .gracias__banner { width: 97%; padding: 50px 10px 0 0; }
  .gracias__texto { width: 70%; padding: 20px 0 50px 30px; }
  .gracias__texto h1, .gracias__texto h2, .gracias__mensaje { font-size: 35px; }
  .gracias__texto .boton { width: 217px; font-size: 16px; }
  .gracias__imagen { width: 38%; margin: 0 0 0 -47px; }
}
@media (max-width: 767px) {
  .gracias__banner { width: 90%; padding: 50px 20px 0; flex-direction: column; align-items: center; }
  .gracias__texto { width: 100%; padding: 0; text-align: center; }
  .gracias__texto h1, .gracias__texto h2, .gracias__mensaje { font-size: 25px; }
  .gracias__texto .boton { width: 203px; font-size: 14px; align-self: center; }
  .gracias__imagen { width: 62%; margin: 20px 0 0; align-self: center; }
}

/* ═════════════════════════ NOSOTROS ═════════════════════════ */
.origen { max-width: 1200px; margin: 0 auto; padding: 100px 0; display: flex; gap: 20px; }
.origen__texto { flex: none; width: 743px; padding-right: 40px; display: flex; flex-direction: column; justify-content: center; gap: 30px; }
.origen__texto h2 { font-size: 44px; }
.origen__texto h3 { font-size: 25px; line-height: 1; }
.origen__cuerpo { font-family: var(--fuente); font-size: 18px; font-weight: 500; line-height: 1.5; color: var(--azul); }
.origen__cuerpo p { margin-bottom: 14.4px; }
.origen__imagen { flex: 1; }
.origen__imagen img { width: 100%; height: 611px; object-fit: cover; }

.mision { max-width: 1200px; margin: 0 auto; }
.mision__banner {
  display: flex; gap: 20px; padding: 120px 50px; border-radius: 15px; overflow: hidden;
  background: url("/wp-content/uploads/2026/08/BANNER-MISION-APM.webp") center / cover no-repeat;
}
.mision__texto { flex: 0 1 100%; display: flex; flex-direction: column; gap: 20px; }
.mision__espacio { flex: 0 1 66%; }
.mision h2, .mision .tt { color: #fff; }

.porque { max-width: 1200px; margin: 0 auto; padding: 100px 0; display: flex; flex-direction: column; }
.porque__titulo { margin-bottom: 20px; }
.porque__tarjetas { display: flex; gap: 20px; }
.razon {
  flex: 1; display: flex; flex-direction: column; justify-content: flex-end;
  padding: 400px 20px 20px 10px; border-radius: 20px; overflow: hidden; background: center / cover no-repeat;
  font-family: var(--fuente); font-size: 18px; line-height: 1.5; color: #fff;
}
.razon p { margin-bottom: 5px; }
.razon ul { margin: 0; padding-left: 40px; }
.porque__accion { margin-top: 50px; display: flex; justify-content: center; }

@media (max-width: 1024px) {
  .encabezado-pagina { padding: 100px 30px; }

  .encabezado-pagina h1 { font-size: 35px; }
  .encabezado-pagina__sub { font-size: 25px; }
  .origen { padding: 50px 30px; }
  .origen__texto { flex: 0 1 100%; width: auto; padding-right: 40px; gap: 20px; }
  .origen__imagen { flex: 0 1 65%; display: flex; flex-direction: column; justify-content: center; }
  .origen__imagen img { height: auto; }
  .origen__texto h2 { font-size: 35px; }
  .origen__texto h3 { font-size: 20px; }
  .origen__cuerpo { font-size: 16px; }
  .mision { padding: 0 30px; }
  .mision__banner { padding: 100px 50px; }
  .mision__espacio { flex-basis: 30%; }
  .porque { padding: 100px 30px; }
  .razon { font-size: 16px; padding-left: 10px; padding-right: 10px; }
}
@media (max-width: 767px) {
  .encabezado-pagina { padding: 50px 20px; }
  .encabezado-pagina__fondo { width: 100%; }
  .encabezado-pagina__fila { flex-direction: column; }
  .encabezado-pagina__texto, .encabezado-pagina__accion { width: 100%; }
  .encabezado-pagina__accion { align-items: center; }
  .encabezado-pagina h1 { font-size: 25px; }
  .encabezado-pagina__sub { font-size: 20px; }
  .origen { padding: 50px 20px; flex-direction: column; }
  .origen__texto, .origen__imagen { flex: none; width: 100%; }
  .origen__texto { padding-right: 0; }
  .origen__texto { padding-bottom: 50px; }
  .origen__texto h2 { font-size: 25px; }
  .origen__texto h3 { font-size: 16px; text-align: center; }
  .origen__cuerpo { font-size: 14px; }
  .origen__texto .boton { align-self: center; }
  .origen__imagen img { height: auto; }
  .mision { padding: 0 20px; }
  .mision__banner { padding: 50px 0; }
  .mision__espacio { display: none; }
  .porque { padding: 50px 20px; }
  .porque__tarjetas { flex-direction: column; }
  .razon { padding-top: 300px; font-size: 14px; }
}
