@charset "UTF-8";
/* === IMPORTS === */
@import url("https://fonts.googleapis.com/css2?family=Urbanist:wght@100;200;300;400;500;600;700;800;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&display=swap");

h1 {
  font-family: "Urbanist", sans-serif;
  font-weight: 500;
}

h2 {
  font-family: "Jost", sans-serif;
  font-weight: 500;
  color: var(--azulsurexsd1);
}

h3,
h4,
h5,
h6 {
  font-family: "Urbanist", sans-serif !important;
  font-weight: 500;
  line-height: 1.5;
}

p {
  font-size: 16px;
  font-weight: 400;
  font-family: "Open Sans", sans-serif !important;
  line-height: 1.75;
}

a {
  color: var(--azulsurexsl1);
  font-weight: 700;
  text-decoration: none;
}

a:hover {
  color: var(--azulsurexs);
  font-weight: 700;
}

:root {
  /* =====================
     Tipografías
     ===================== */
  --font-primary: 'Open Sans', sans-serif;
  --font-headline: 'Urbanist', sans-serif;
  --font-headline-secundary: 'Jost', sans-serif;
  --font-poppins: 'Poppins', sans-serif;
  --font-dmsans: 'DM Sans', sans-serif;
  /* =====================
     Colores principales Surexs
     ===================== */
  --azulsurexs: #005290;
  --azulsurexsl1: #0077bc;
  --azulsurexsl2: #53a0d5;
  --azulsurexsl3: #bed8ee;
  --azulsurexsl4: #dbf0ff;
  --azulsurexsd1: #173656;
  --azulsurexsd2: #142135;
  /* =====================
     Colores Aqua y variaciones
     ===================== */
  --aquad1: #009a9d;
  --aquad2: #005c5d;
  --aqual1: #76dde3;
  --aqual2: #aaecf0;
  --aqual3: #effbfc;
  --aqua: #00c2ce;
  --azulaqua: #0080a7;
  /* =====================
     Azules adicionales
     ===================== */
  --azulrey: #003f91;
  --azulmorado: #1f3082;
  /* =====================
     Rojos y derivados
     ===================== */
  --rojo: #ff7767;
  --rojod1: #c3574b;
  --rojod2: #7c332b;
  --rojod3: #3a0b06;
  --rojol1: #ffb3aa;
  --rojol2: #ffc4bd;
  --rojol3: #fff4f3;
  /* =====================
     Amarillos y derivados
     ===================== */
  --amarillo: #ffc23d;
  --amarillod1: #bc8d26;
  --amarillod2: #7e5a19;
  --amarillol1: #ffe2a3;
  --amarillol2: #ffeabc;
  --amarillol3: #fffaf1;
  /* =====================
     Verdes y derivados
     ===================== */
  --verde: #c0e16c;
  --verdel1: #dbeca7;
  --verdel2: #aec95f;
  --verdel3: #9db152;
  --verded1: #8c9a46;
  --verded2: #505a29;
  /* =====================
     Grises
     ===================== */
  --blanco: #ffff;
  --grisclaro: #f3f3f3;
  --grisclarol1: #f3f3f3;
  --grisclarol2: #eeeeee;
  --grisclaro2: #e6e5e5;
  --grisclaro3: #a6a7a7;
  --grisclaro5: #828282;
  --gris: #686867;
  --grisobscuro: #404040;
  --grisclaro5: #828282;
  /* =====================
     Colores especiales (campañas, landings)
     ===================== */
  /* Voluntarios */
  --azul-voluntarios: #136aea;
  --azul-voluntariosd1: #1755ba;
  --azul-voluntariosd2: #184191;
  --azul-voluntariosl1: #61a3f2;
  --azul-voluntariosl2: #98cbf4;
  --verde-voluntarios: #ddfb75;
  --verde-voluntariosd1: #c4e847;
  --verde-voluntariosd2: #b2d732;
  --verde-voluntariosd3: #2e331c;
  --verde-voluntariosl2: #fbffec;
  /* Flexibles */
  --magenta-flexibles: #ea4993;
  --magenta-flexiblesd1: #511133;
  --magenta-flexiblesd2: #e51c7c;
  --magenta-flexiblesl3: #ffe9f3;
  /* =====================
     Tamaños de fuentes
     ===================== */
  --font-size-base: 16px;
  --font-line-height: 1.75;
  --font-weight-regular: 400;
  --font-weight-bold: 700;
}

/* _mixins.scss */
/* Base de todos los botones */
/* Estilos específicos para botones de color */
button {
  border: 0px;
}

.btn {
  padding: 6px 16px !important;
  font-size: 1rem !important;
  font-family: "Urbanist", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  justify-content: center !important;
  text-decoration: none !important;
  width: fit-content;
  border-radius: 3rem !important;
  text-align: left !important;
  min-height: 2.85rem;
  white-space: nowrap;
}

.btn img {
  max-width: 24px !important;
}

@media (max-width: 767.98px) {
  .btn {
    padding: 12px 20px !important;
    border-radius: 1rem !important;
    white-space: inherit;
  }
}

.btn-sm {
  padding: 4px 6px !important;
  border-radius: 4px;
  font-size: 14px !important;
  font-family: "Urbanist", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 1px;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  justify-content: center !important;
  text-decoration: none !important;
  white-space: nowrap;
  width: fit-content;
}

.btn-sm img {
  max-width: 24px !important;
}

.btn-amarillo {
  background: var(--amarillo) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--amarillod2) !important;
}

.btn-amarillo:hover {
  color: var(--amarillod2) !important;
  background: var(--amarillod1) !important;
  text-decoration: none !important;
}

.btn-amarillo a {
  color: var(--amarillod2);
  text-decoration: none;
}

.btn-verde {
  background: var(--verde) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--verded2) !important;
}

.btn-verde:hover {
  color: var(--verded2) !important;
  background: var(--verdel2) !important;
  text-decoration: none !important;
}

.btn-verde a {
  color: var(--verded2);
  text-decoration: none;
}

.btn-rojo {
  background: var(--rojo) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--rojod3) !important;
}

.btn-rojo:hover {
  color: var(--rojod3) !important;
  background: var(--rojod1) !important;
  text-decoration: none !important;
}

.btn-rojo a {
  color: var(--verded2);
  text-decoration: none;
}

.btn-azul-l2 {
  background: var(--azulsurexsl2) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--azulsurexs) !important;
}

.btn-azul-l2:hover {
  color: var(--azulsurexs) !important;
  background: #A4D0F4 !important;
  text-decoration: none !important;
}

.btn-black {
  background: #000 !important;
  transition: all 0.3s ease 0s !important;
  color: #fff !important;
}

.btn-black:hover {
  color: #fff !important;
  background: #222020 !important;
  text-decoration: none !important;
}

.btn-black a {
  color: #fff !important;
  text-decoration: none;
}

.btn-inactive {
  background: var(--grisclaro3) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--gris) !important;
}

.btn-inactive:hover {
  color: var(--gris) !important;
  background: var(--grisclaro5) !important;
  text-decoration: none !important;
}

.btn-inactive a {
  color: #fff !important;
  text-decoration: none;
}

.btn-blanco {
  background: var(--blanco) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--azulsurexsd2) !important;
}

.btn-blanco:hover {
  color: var(--azulsurexsd2) !important;
  background: var(--grisclaro2) !important;
  text-decoration: none !important;
}

.btn-blanco a {
  color: var(--aquad2);
  text-decoration: none;
}

.btn-blanco-border {
  background: var(--blanco) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--azulsurexs) !important;
}

.btn-blanco-border:hover {
  color: var(--azulsurexs) !important;
  background: var(--grisclaro2) !important;
  text-decoration: none !important;
}

.btn-blanco-border {
  border: 1px var(--azulsurexs) solid;
}

.btn-blanco-border a {
  color: var(--aquad2);
  text-decoration: none;
}

.btn-gris {
  background: var(--grisclaro2) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--gris) !important;
}

.btn-gris:hover {
  color: var(--gris) !important;
  background: var(--grisclaro3) !important;
  text-decoration: none !important;
}

.btn-gris a {
  color: var(--aquad2);
  text-decoration: none;
}

.btn-idioma {
  background: var(--azulsurexsl3) !important;
  transition: all 0.3s ease 0s !important;
  color: var(--azulsurexsd2) !important;
}

.btn-idioma:hover {
  color: var(--azulsurexsd2) !important;
  background: #add1f0 !important;
  text-decoration: none !important;
}

.btn-idioma {
  padding: 0.375rem 0.5rem !important;
}

@keyframes pulse-animation {
  0% {
    box-shadow: 0 0 0 0px var(--pulse-color);
  }

  100% {
    box-shadow: 0 0 0 12px rgba(60, 138, 255, 0);
  }
}

.pulse,
.pulse-azul-l1,
.pulse-azul-l2,
.pulse-azulsurexs,
.pulse-rojo,
.pulse-amarillo-l3,
.pulse-amarillo,
.pulse-general {
  animation: pulse-animation 2s infinite;
}

.pulse-general {
  --pulse-color: var(--grisclaro2);
}

.pulse-amarillo {
  --pulse-color: var(--amarillod1);
}

.pulse-amarillo-l3 {
  --pulse-color: var(--amarillol1);
}

.pulse-rojo {
  --pulse-color: var(--rojo);
}

.pulse-azulsurexs {
  --pulse-color: var(--azulsurexs);
}

.pulse-azul-l2 {
  --pulse-color: var(--azulsurexsl3);
}

.pulse-azul-l1 {
  --pulse-color: var(--azulsurexsl2);
}

/*BOTON FLOTANTE WHATSAPP  */
.btn-whats {
  border-radius: 1.5625rem;
  background: #25D366;
  transition: all 0.3s ease 0s;
  margin-left: 0rem;
  color: var(--blanco);
  padding: 0.5rem;
}

.btn-whats:hover {
  color: var(--blanco);
  background: #20b958;
}

.btn-whats.llamada-btn,
.btn.llamada-btn {
  height: 3.75rem;
  width: 3.75rem;
  border-radius: 3.75rem;
  justify-content: center;
  gap: 0;
}

.btn-whats img,
.btn.llamada-btn img {
  max-width: fit-content !important;
}

/* Estilos del botón flotante */
.whatsapp-container {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1041;
}

.whatsapp-options {
  position: absolute;
  bottom: 80px;
  right: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media (max-width: 991.98px) {
  .whatsapp-options {
    bottom: 160px;
    gap: 32px;
  }
}

.whatsapp-option {
  background-color: var(--blanco);
  border-radius: 8px;
  padding: 12px 16px;
  color: var(--azulsurexsd2);
  font-size: 16px;
  font-weight: 500 !important;
  text-decoration: none;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  transition: all 0.2s ease-in-out;
}

@media (max-width: 991.98px) {
  .whatsapp-option {
    padding: 16px 20px;
  }
}

.whatsapp-option b {
  font-weight: 700 !important;
}

.whatsapp-option:hover {
  background-color: var(--grisclaro);
  color: var(--azulsurexsd2);
  text-decoration: underline;
}

.whatsapp-option.lead {
  background-color: var(--amarillol2);
}

.whatsapp-option.asegurado {
  background-color: var(--rojol2);
  font-weight: 600;
}

/* NAVPILLS  */
.nav-pills.surexs {
  background-color: var(--blanco);
  gap: 2rem;
  justify-content: center;
}

.nav-pills.surexs .nav-link {
  background-color: var(--grisclaro);
  border-radius: 3rem;
  padding: 0.5rem 1rem;
  color: var(--gris);
  font-size: 16px;
  min-width: 160px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}

.nav-pills.surexs .nav-link:hover {
  background-color: var(--grisclaro2);
}

.nav-pills.surexs .nav-link.active {
  background-color: var(--azulsurexsl1);
  color: var(--blanco);
}

.nav-pills.surexs .nav-link svg {
  fill: var(--grisclaro5);
}

.nav-pills.surexs .nav-link.active svg {
  fill: var(--azulsurexs);
}

@media (max-width: 820px) {
  .nav-pills.surexs {
    gap: 1rem;
  }
}

@media (max-width: 768px) {
  .nav-pills.surexs {
    gap: 0.75rem;
    justify-content: start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 1rem;
  }

  .nav-pills.surexs .nav-link {
    min-width: 100px;
  }
}

/* Hipervinculos  */
.hipervinculo {
  color: var(--azulsurexsl1) !important;
  font-weight: 600;
  text-decoration: underline;
  font-size: 14px;
}

.hipervinculo:hover {
  color: var(--azulsurexsd1);
}

.swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
}

.swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 0 !important;
}

/* SCROLL BAR */
/* SCROLL BAR */
/* SCROLL BAR */
/* SCROLL BAR */
/* SCROLL BAR */
/* SCROLL BAR */
/* Estilo general de la scrollbar */
.dropdown-menu::-webkit-scrollbar {
  width: 8px;
  /* Ancho de la scrollbar vertical */
  height: 8px;
  /* Ancho de la scrollbar horizontal (si la hay) */
}

/* Track de la scrollbar (fondo) */
.dropdown-menu::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 4px;
}

/* Thumb de la scrollbar (la parte que se desplaza) */
.dropdown-menu::-webkit-scrollbar-thumb {
  background: #007bff !important;
  /* Color de la barra */
  border-radius: 4px;
  transition: background-color 0.3s;
}

/* Thumb al pasar el cursor por encima */
.dropdown-menu::-webkit-scrollbar-thumb:hover {
  background: #0056b3;
}

/******* SCREEN DARKEN***********/
.screen-darken {
  content: "";
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: none;
  z-index: 10;
  opacity: 1;
  visibility: visible;
  position: fixed;
}

@media (max-width: 62rem) {
  .screen-darken {
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    pointer-events: none;
    z-index: 10;
    opacity: 1;
    visibility: visible;
    position: fixed;
  }
}

.hidden {
  display: none !important;
}

.section-tittle-h2 b {
  color: var(--azulsurexsl1);
}

/* ==========================================================================
 OPERACIÓN DE SEGUROS
 ========================================================================== */
.lp-operacion-seguros {
  position: relative;
  overflow: hidden;
  padding: 6.4rem 0 5.6rem;
  background: var(--blanco);
  color: var(--azulsurexsd1);
}

.lp-operacion-seguros__header {
  max-width: 52rem;
  margin: 0 auto 4rem;
  text-align: center;
}

.lp-operacion-seguros__title {
  margin: 0 0 2.1rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-weight: 600;
  line-height: 1.18;
}

.lp-operacion-seguros__description {
  margin: 0;
  color: var(--grisoscuro);
  line-height: 1.45;
}

.lp-operacion-seguros__steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.1rem;
  margin-bottom: 3.3rem;
}

.lp-operacion-seguros__steps::before {
  content: "";
  position: absolute;
  top: 2.15rem;
  left: 5rem;
  right: 5rem;
  height: 0.22rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 78%, var(--blanco));
  border-radius: 999px;
}

.lp-operacion-seguros__step {
  position: relative;
  z-index: 1;
  transition: transform 0.25s ease;
}

.lp-operacion-seguros__step:hover {
  transform: translateY(-0.25rem);
}

.lp-operacion-seguros__step:hover .lp-operacion-seguros__number {
  transform: translateY(-0.12rem);
  box-shadow: 0 0.8rem 1.45rem color-mix(in srgb, var(--azulsurexs) 16%, transparent);
}

.lp-operacion-seguros__step h3 {
  margin: 1.45rem 0 1rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: 1.28rem;
  font-weight: 600;
  line-height: 1.2;
}

.lp-operacion-seguros__step p {
  max-width: 18rem;
  margin: 0;
  color: var(--grisclaro1);
  font-family: var(--font-primary) !important;
  font-size: 0.96rem;
  line-height: 1.45;
  letter-spacing: 0.01rem;
}

.lp-operacion-seguros__number {
  display: grid;
  place-items: center;
  width: 4.25rem;
  height: 4.25rem;
  border-radius: 0.42rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 82%, var(--blanco));
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 1.65rem;
  font-weight: 600;
  line-height: 1;
  box-shadow: 0 0.7rem 1.3rem color-mix(in srgb, var(--azulsurexs) 10%, transparent);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.lp-operacion-seguros__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.8rem;
}

.lp-operacion-seguros__cta:hover {
  transform: translateY(-2px);
}

.lp-operacion-seguros__cta img {
  width: 1.3rem;
  height: 1.3rem;
  object-fit: contain;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 991.98px) {
  .lp-operacion-seguros {
    padding: 5rem 0;
  }

  .lp-operacion-seguros__header {
    margin-bottom: 3rem;
  }

  .lp-operacion-seguros__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.4rem;
    max-width: 44rem;
    margin-inline: auto;
    margin-bottom: 3rem;
  }

  .lp-operacion-seguros__steps::before {
    display: none;
  }

  .lp-operacion-seguros__step {
    padding: 1.25rem;
    border: 1px solid color-mix(in srgb, var(--azulsurexsl4) 72%, transparent);
    border-radius: 0.4rem;
    background: var(--blanco);
    box-shadow: 0 0.85rem 1.65rem color-mix(in srgb, var(--azulsurexsd2) 6%, transparent);
  }

  .lp-operacion-seguros__step h3 {
    margin-top: 1.2rem;
  }

  .lp-operacion-seguros__step p {
    max-width: none;
  }
}

@media (max-width: 767.98px) {
  .lp-operacion-seguros {
    padding: 4.2rem 0;
  }

  .lp-operacion-seguros__header {
    margin-bottom: 2.4rem;
  }

  .lp-operacion-seguros__title {
    margin-bottom: 1.3rem;
    font-size: 1.9rem;
  }

  .lp-operacion-seguros__description {
    font-size: 0.92rem;
  }

  .lp-operacion-seguros__steps {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .lp-operacion-seguros__step {
    display: grid;
    grid-template-columns: 3.6rem 1fr;
    column-gap: 1rem;
    align-items: start;
  }

  .lp-operacion-seguros__step h3 {
    margin: 0.15rem 0 0.45rem;
    font-size: 1.12rem;
  }

  .lp-operacion-seguros__step p {
    grid-column: 2;
    font-size: 0.9rem;
  }

  .lp-operacion-seguros__number {
    grid-row: span 2;
    width: 3.6rem;
    height: 3.6rem;
    font-size: 1.35rem;
  }

  .lp-operacion-seguros__actions {
    gap: 0.85rem;
  }

  .lp-operacion-seguros__actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* ==========================================================================
   UTILITY · FAQ ACCORDION
   ========================================================================== */
.lp-faq {
  padding: 5.3rem 0 5.8rem;
  background: color-mix(in srgb, var(--grisclaro4) 86%, var(--blanco));
  color: var(--grisoscuro);
}

.lp-faq__title {
  margin: 0 0 4rem;
  color: var(--azulsurexsd1);
  text-align: center;
}

.lp-faq__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.9rem 2.2rem;
  max-width: 78rem;
  margin-inline: auto;
  align-items: start;
}

.lp-faq__item {
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 34%, transparent) !important;
  border-radius: 0.7rem !important;
  background: var(--blanco);
  box-shadow: 0 0.9rem 2rem color-mix(in srgb, var(--azulsurexsd2) 6%, transparent);
  overflow: hidden;
}

.lp-faq__button {
  padding: 1.45rem 1.55rem;
  background: var(--blanco) !important;
  color: var(--azulsurexsd1) !important;
  font-family: var(--font-primary) !important;
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1.4;
  box-shadow: none !important;
}

.lp-faq__button::after {
  width: 0.9rem;
  height: 0.9rem;
  opacity: 0.55;
  background-size: 0.9rem;
}

.lp-faq__button:focus {
  box-shadow: none !important;
}

.lp-faq__button:hover {
  color: var(--azulsurexs) !important;
}

.lp-faq__button:not(.collapsed) {
  padding-bottom: 1.15rem;
}

.lp-faq__body {
  padding: 0 1.55rem 1.55rem;
  color: var(--grisclaro1);
  font-family: var(--font-primary) !important;
  font-size: 0.84rem;
  line-height: 1.65;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 991.98px) {
  .lp-faq {
    padding: 4.8rem 0;
  }

  .lp-faq__title {
    margin-bottom: 2.8rem;
  }

  .lp-faq__grid {
    grid-template-columns: 1fr;
    max-width: 42rem;
    gap: 1.15rem;
  }
}

@media (max-width: 767.98px) {
  .lp-faq {
    padding: 4rem 0;
  }

  .lp-faq__title {
    margin-bottom: 2.2rem;
  }

  .lp-faq__button {
    padding: 1.2rem 1.15rem;
    font-size: 0.88rem;
  }

  .lp-faq__button:not(.collapsed) {
    padding-bottom: 0.9rem;
  }

  .lp-faq__body {
    padding: 0 1.15rem 1.25rem;
    font-size: 0.8rem;
    line-height: 1.55;
  }
}

/* NAV BAR */
/* NAV BAR */
/* NAV BAR */
/* NAV BAR */
/* NAV BAR */
/* NAV BAR */
/* NAV BAR */
/* ===============================
   Navbar General
================================= */
.navbar {
  background-color: var(--grisclaro);
  position: sticky;
  top: 0;
  z-index: 1000;
  padding: 0.5rem 0.5rem;
}

.navbar-brand img {
  width: 120px;
}

@media (max-width: 768px) {
  .navbar {
    padding: 0.5rem;
  }
}

/* ===============================
   Navbar Links Generales
================================= */
.navbar-light .navbar-nav .nav-link {
  color: var(--azulsurexsd2);
  display: flex;
  gap: 0.35rem;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  padding: 0;
}

.navbar-light .navbar-nav .nav-link:hover {
  color: var(--azulsurexsd1);
  text-decoration: underline;
}

.navbar-light .navbar-nav .nav-link:focus {
  color: var(--azulsurexs);
}

.navbar-light .navbar-nav .nav-link svg {
  fill: var(--azulsurexsd2);
  width: 14px;
  height: auto;
  margin-top: 0.125rem;
}

.navbar-light .navbar-nav .nav-link:hover svg {
  fill: var(--azulsurexsd1);
}

/* Link Ayuda */
.navbar-light .navbar-nav .nav-link.ayuda {
  gap: 0.25rem;
}

.navbar-light .navbar-nav .nav-link.ayuda:hover {
  color: var(--azulsurexs);
}

.navbar-light .navbar-nav .nav-link.ayuda svg {
  fill: var(--azulsurexs);
}

.nav-bar-surexs-pills img {
  width: 16px;
  max-width: 16px;
  height: auto;
}

.navbar-nav.idiomas {
  display: flex;
  justify-content: end;
  padding: 0rem 1rem;
}

.navbar-light .navbar-nav .nav-link.idiomas {
  background-color: var(--azulsurexsd2);
  color: var(--blanco);
  display: flex;
  gap: 0.5rem;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  padding: 0;
}

.navbar-light .navbar-nav .nav-link.idiomas:hover {
  color: var(--blanco);
  text-decoration: underline;
}

.navbar-light .navbar-nav .nav-link.idiomas:focus {
  color: var(--blanco);
}

/* ===============================
   Navbar Shrink
================================= */
#mainNav.navbar-shrink .navbar-nav .nav-link {
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.5em 0;
  color: var(--azulsurexs);
  letter-spacing: 0.125rem;
  text-transform: uppercase;
  font-family: "Urbanist", sans-serif;
}

#mainNav.navbar-shrink .navbar-nav .nav-link.active,
#mainNav.navbar-shrink .navbar-nav .nav-link:hover {
  color: var(--azulsurexsl2);
}

/* ===============================
   Navbar Expand XL
================================= */
.navbar-expand-xl .navbar-nav .nav-link {
  padding: 0 4px;
  font-size: 0.875rem;
}

/* ===============================
   Otros Ajustes
================================= */
.navbar-collapse hr {
  margin: 0;
}

.full-width {
  width: 100vw;
  margin-left: 0;
  height: 75vh;
}

/* ===============================
   Botón Navbar
================================= */
.btn-navbar {
  padding: 0.25rem 0.5rem;
  font-size: 14px;
  gap: 0.25rem;
  display: flex;
  align-items: center;
}

.btn-navbar img {
  width: 16px;
}

/* ===============================
   Navbar Nav
================================= */
.navbar-nav {
  padding: 0.5rem;
  gap: 1.5rem;
  display: flex;
  flex-direction: row;
  align-items: center;
}

/* ===============================
   Dropdown General
================================= */
.dropdown--mega {
  position: static;
}

.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: 0rem;
}

.dropdown-toggle::after {
  display: none !important;
}

.navbar-expand .navbar-nav .dropdown-menu {
  width: 100%;
  height: 85vh;
  border-radius: 0;
}

/* ===============================
   Dropdown Idioma
================================= */
.dropdown.idioma {
  position: relative;
}

.dropdown-menu.idiomas {
  z-index: 1001;
}

.dropdown-menu.idioma {
  border: 1px solid var(--grisclaro2);
}

.dropdown-menu.idioma a {
  color: var(--grisobscuro);
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
}

.dropdown-menu.idioma a:hover {
  color: var(--azulsurexsd1);
}

/* ===============================
   Contenedor de Ítems Navbar
================================= */
.navbar-items-surexs-contenedor {
  width: fit-content;
  padding: 2.5rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  border-radius: 0 0 4px 4px;
}

.navbar-items-surexs-contenedor.nosotros {
  grid-template-columns: repeat(2, 1fr);
}

.navbar-items-surexs-contenedor.nuestro-servicio {
  padding: 0rem 4rem;
  gap: 3rem;
  grid-template-columns: repeat(2, 1fr);
}

/* ===============================
   Navbar Pills
================================= */
.nav-bar-surexs-pills {
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
}

.nav-bar-surexs-pills .nav-link {
  padding: 0.5rem 1rem !important;
  background-color: var(--blanco);
  display: flex;
  justify-content: space-between;
  border-radius: 4px;
  text-align: start;
  white-space: nowrap;
  width: 100%;
}

.nav-bar-surexs-pills .nav-link.active {
  background-color: var(--azulsurexsl4);
}

.nav-bar-surexs-pills .nav-link:hover {
  background-color: var(--grisclaro);
}

/* ===============================
   Ítem de Navbar (Cards Pequeñas)
================================= */
.navbar-expand .navbar-nav .dropdown-menu.sobre-surexs {
  max-width: 60%;
  height: auto;
  max-height: 80vh;
  border-radius: 0;
}

.dropdown-menu.sobre-surexs[data-bs-popper] {
  top: 100%;
  left: 100;
  margin-top: 0rem;
}

.dropdown-menu.sobre-surexs {
  padding: 2rem;
}

.dropdown-menu.sobre-surexs .contenedor {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  column-gap: 2rem;
  row-gap: 1rem;
}

.navbar-item-surexs {
  padding: 0.75rem;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  border-radius: 4px;
  transition: background-color 0.5s ease;
}

.navbar-item-surexs:hover {
  background-color: var(--grisclaro);
}

.navbar-item-surexs img {
  width: 30px;
  margin-top: 0.25rem;
}

.navbar-item-surexs .title {
  font-size: 14px;
  color: var(--azulsurexsd2);
  margin-bottom: 0;
}

.navbar-item-surexs .description {
  font-size: 12px;
  color: var(--grisclaro5);
}

.navbar-item-surexs.interno a {
  font-weight: 400;
}

/* Modificadores: Pilares / Herramientas Digitales */
.navbar-items-surexs-contenedor.pilares,
.navbar-items-surexs-contenedor.herramientas-digitales {
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  padding: 1.5rem;
}

.navbar-items-surexs-contenedor.herramientas-digitales {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 1.5rem;
  row-gap: 0.5rem;
  padding: 1rem;
}

.navbar-item-surexs.pilares {
  flex-direction: column;
  max-width: 240px;
}

.navbar-item-surexs.pilares img {
  width: 52px;
}

.navbar-item-surexs.herramientas-digitales {
  gap: 1rem;
  max-width: 380px;
}

.navbar-item-surexs.herramientas-digitales img {
  width: 100px;
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs {
  padding: 0rem;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  border-radius: 8px;
  max-width: 320px;
  transition: background-color 0.5s ease;
  border: 2.5px solid var(--grisclaro);
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0px;
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs b {
  font-size: 20px;
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs p {
  font-size: 14px;
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs-header {
  border-bottom: 1px solid var(--grisclaro2);
  width: 100%;
  padding: 0rem;
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs img {
  width: 100%;
  margin-top: 0rem;
}

.navbar-items-surexs-contenedor.nuestro-servicio .navbar-item-surexs-body {
  padding: 0.5rem 1rem;
}

/* ===============================
   Tab Content Seguros
================================= */
.tab-content.seguros {
  height: -webkit-fill-available;
  overflow: auto;
  width: 100%;
}

.navbar-items-surexs-contenedor-seguros {
  width: fit-content;
  padding: 0 1rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 1.5rem;
  row-gap: 2.5rem;
  border-radius: 0 0 4px 4px;
}

/* Tag Tipo Seguro */
.navbar-tag-tipo-seguro {
  background-color: var(--azulsurexsl4);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 600;
  width: fit-content;
}

.navbar-tipo-seguro img {
  width: 20px;
  height: auto;
}

.navbar-tipo-seguro .programa {
  background-color: var(--azulsurexsl4);
}

.navbar-tipo-seguro .seguros {
  margin-top: 1rem;
  margin-left: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.navbar-tipo-seguro .seguros a {
  color: var(--gris);
  font-size: 14px;
  font-weight: 400;
  padding: 0.5rem;
}

.navbar-tipo-seguro .seguros a:hover {
  background-color: var(--grisclaro);
}

/* ===============================
   Media Queries
================================= */
@media (max-width: 1400px) {

  .navbar-expand-xl .navbar-nav .nav-link,
  .navbar-expand-xl .btn {
    font-size: 12px;
  }

  .navbar-light .navbar-nav .nav-link {
    font-size: 14px;
  }

  .navbar-brand img {
    width: 80px;
  }
}

@media (max-width: 1200px) {
  .navbar-expand-xl .navbar-nav .nav-link {
    padding: 0;
  }

  .top-0 {
    margin-top: 0;
  }
}

/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
.navbar-nav.mobile {
  padding-top: 2rem;
  gap: 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: start;
}

.dropdown-icon-rotate {
  transform: rotate(180deg);
}

.dropdown-menu.seguros li {
  margin-bottom: 1.5rem;
}

.no-arrow::after {
  display: none !important;
  /* Elimina la flecha que Bootstrap agrega automáticamente */
}

.dropdownIcon {
  transition: transform 0.3s ease;
}

.nav-bar-tamano-empresa-icono {
  background-color: var(--azulsurexsl4);
  border-radius: 4px;
  padding: 0.25rem;
}

.nav-bar-tamano-empresa-icono img {
  width: 32px;
}

.nav-item-volver {
  color: var(--azulsurexsl1);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  text-decoration: underline;
}

.idiomas-dropdown {
  width: 100%;
  display: flex;
  justify-content: start;
  height: min-content;
}

.idiomas-dropdown button {
  background-color: var(--grisclaro);
  justify-content: space-between !important;
}

.idiomas-dropdown .dropdown-menu {
  width: 100%;
  background-color: var(--grisclaro);
}

.dropup.idiomas-dropdown .dropdown-toggle::after {
  display: none !important;
}

.tamano-empresa-imagen {
  background-color: var(--azulsurexsl4);
  display: flex;
  padding: 4px;
  border-radius: 8px;
}

.tamano-empresa-imagen img {
  width: 48px;
  height: auto;
}

.upper-navbar {
  background-color: var(--azulsurexsd2);
  position: sticky;
  top: 0;
  z-index: 1001;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.upper-navbar.is-hidden {
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
}

/*******TERMINA NAVBAR NAVBAR NAVBAR NAVBAR ***********/
/* Tag Tipo Seguro */
.navbar-soluciones-card {
  border: 1px var(--grisclaro2) solid;
  padding: 1.5rem 1rem;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
}

.navbar-soluciones-card img {
  width: 100%;
}

.navbar-soluciones-card__link {
  margin-top: 1rem;
}

.navbar-soluciones-card__link a {
  color: var(--azulsurexsd1);
  font-size: 18px;
}

.navbar-soluciones-card__link a:hover {
  text-decoration: underline;
  color: var(--azulsurexs);
}

.navbar-soluciones-card__link p {
  margin-top: 1rem;
  font-size: 14px;
  color: var(--gris);
}

.navbar-soluciones-group__cluster-title {
  display: flex;
  align-items: start;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  gap: 1rem;
}

.navbar-soluciones-group__cluster-title a {
  font-size: 16px;
  padding: 0rem 0.25rem;
  border-radius: 4px;
  color: var(--azulsurexsd1);
  margin-bottom: 0rem;
}

.navbar-soluciones-group__cluster-title a:hover {
  text-decoration: underline;
  background-color: var(--azulsurexs);
}

.navbar-soluciones-group__cluster-title p {
  font-size: 12px;
  margin-bottom: 0rem;
  padding-left: 0rem;
  color: var(--gris);
}

.navbar-soluciones-group__cluster-title img {
  width: 24px;
  height: auto;
  padding-top: 0.2rem;
}

.navbar-soluciones-group__cluster-title .title {
  display: flex;
  flex-direction: column;
}

.navbar-soluciones-group__cluster-title .title span {
  font-size: 16px;
  font-weight: 700;
}

.navbar-soluciones-group__body {
  display: flex;
  flex-direction: column;
  padding-left: 4rem;
}

.navbar-soluciones-group__body .programa-title {
  font-size: 15px;
  font-weight: 600;
}

.navbar-soluciones-group__body a {
  font-weight: 400;
  padding: 0.25rem 0.5rem;
  color: var(--gris);
  font-size: 14px;
}

.navbar-soluciones-group__body a:hover {
  background-color: var(--grisclaro);
  text-decoration: underline;
}

.dropdown-menu.soluciones {
  padding: 2rem 1rem;
}

.navbar-expand .navbar-nav .dropdown-menu.soluciones {
  max-width: 95%;
  height: auto;
  max-height: 85vh;
  border-radius: 0;
}

.dropdown-menu.soluciones[data-bs-popper] {
  top: 100%;
  left: 20;
  margin-top: 0rem;
}

.navbar-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
  max-height: 70vh;
  overflow: auto;
}

.navbar-grid {
  display: flex;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
  max-height: 70vh;
  overflow: auto;
}

.navbar-soluciones-group {
  width: 30%;
  margin-bottom: 1rem;
}

@media (max-width: 1200px) {
  .navbar-soluciones-group {
    width: 45%;
    margin-bottom: 1rem;
  }
}

.botones-auxiliares {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1rem;
}

.botones-auxiliares a {
  font-size: 14px;
  align-items: center;
  font-weight: 400;
}

/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
.navbar.mobile {
  gap: 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: start;
}

.navbar.mobile p {
  font-size: 14px;
}

.navbar.mobile a {
  font-size: 14px;
  font-weight: 500;
  color: var(--azulsurexsd1) !important;
  padding: 0.5rem;
}

.botones-auxiliares {
  margin-top: 3rem;
}

.navbar.mobile .accordion-item {
  border: 0px;
}

.navbar.mobile .accordion-button {
  padding: 0.5rem;
  font-size: 16px;
  font-weight: 500;
}

.accordion-container {
  padding-top: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.navbar.mobile .accordion-button {
  padding: 0.5rem;
  font-size: 16px;
  font-weight: 500;
}

.navbar.mobile .accordion-button:not(.collapsed) {
  color: var(--azulsurexs);
  background-color: var(--azulsurexsl4);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
}

.navbar.mobile .accordion-body {
  padding: 1rem 0.5rem;
}

.navbar.mobile .accordion-body a {
  padding-left: 0.75rem;
}

.programa-title-link {
  padding-left: 0.5rem !important;
}

.programa-title-mobile {
  display: flex;
  gap: 0.5rem;
  background-color: var(--grisclaro);
  padding: 0.25rem 0.5rem;
  color: var(--gris);
  margin-bottom: 0.5rem;
}

.footer {
  background-color: var(--azulsurexsd1);
  color: var(--blanco);
}

.footer__row {
  display: flex;
  justify-content: center;
  padding: 3rem 6rem;
  border-bottom: 0.55px solid var(--gris);
}

@media (max-width: 1399.98px) {
  .footer__row {
    padding: 2rem 3rem;
  }
}

@media (max-width: 991.98px) {
  .footer__row {
    padding: 3rem 1rem;
  }
}

.footer__row--media {
  padding: 2rem 5rem;
  border-bottom: 0px solid var(--azulsurexsd1);
  justify-content: space-between;
}

@media (max-width: 991.98px) {
  .footer__row {
    justify-content: start;
    padding: 2rem 2rem;
    gap: 1rem;
  }
}

.footer__column {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: start;
  gap: 2rem;
}

@media (max-width: 991.98px) {
  .footer__column {
    align-items: start;
    margin-bottom: 2rem;
  }
}

@media (max-width: 767.98px) {
  .footer__column {
    gap: 1rem;
  }
}

.footer__column--logos {
  flex-direction: row;
  justify-content: start;
  align-items: center;
  gap: 1rem;
}

.footer__column--redes {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 1rem;
}

.footer__links-section {
  width: 100%;
}

@media (max-width: 767.98px) {
  .footer__links-section {
    margin-bottom: 1rem;
  }
}

.footer__logo-img {
  max-width: 200px;
}

.footer__social-title {
  padding: 1.875rem 0rem 0.5rem 0rem;
  text-align: left;
  font-size: 1.25rem;
}

.footer__social-icon {
  height: 1.5rem;
  width: auto;
}

.footer__affiliations-title {
  color: #f08275;
  font-size: 0.875rem;
  margin-top: 2rem;
}

.footer__links-list li {
  position: relative;
  margin-bottom: 8px;
  font-size: 16px;
  font-style: normal;
  text-align: left;
  list-style: none;
  padding: 0.35em 1em 0em 0.25em;
}

.footer__links-title {
  font-weight: 500;
  font-size: 1.25rem;
}

.footer__link {
  color: var(--grisclaro2);
  text-align: left;
  text-decoration: none;
  font-weight: 400;
}

.footer__link a {
  display: flex;
  gap: 0.5rem;
  font-weight: 500;
  font-size: 1.25rem;
  color: var(--blanco) !important;
}

.footer__link:hover {
  text-decoration: underline;
  color: var(--blanco);
  font-weight: 400;
}

.footer__contact-title {
  font-weight: 600;
}

.footer__contact-icon {
  padding-right: 0.5rem;
}

.privacy {
  background-color: var(--azulsurexsd2);
  padding: 1rem 0;
}

.privacy__text {
  font-size: 0.875rem;
  color: var(--blanco);
}

.privacy__link {
  color: var(--blanco);
}

.banner-azul-l1,
.banner-rojo-l2,
.banner-amarillo-l1 {
  border-radius: 16px;
  padding: 2rem;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

/* BANNER AMARILLO L1 */
.banner-amarillo-l1 {
  background-color: var(--amarillol1);
}

.banner-amarillo-l1__info p {
  color: var(--azulsurexsd2);
  padding: 1.25rem 0rem;
}

.banner-amarillo-l1__info {
  display: flex;
  flex-direction: column;
  align-items: start;
}

@media (max-width: 767.98px) {
  .banner-amarillo-l1__info {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

.banner-amarillo-l1__title h2 {
  color: #000;
}

@media (max-width: 767.98px) {
  .banner-amarillo-l1__title {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .banner-amarillo-l1__image {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
  }
}

/* BANNER ROJO L2 */
.banner-rojo-l2 {
  background-color: var(--rojol1);
}

.banner-rojo-l2__info p {
  color: var(--azulsurexsd2);
  padding: 1.25rem 0rem;
}

.banner-rojo-l2__info {
  display: flex;
  flex-direction: column;
  align-items: start;
}

@media (max-width: 767.98px) {
  .banner-rojo-l2__info {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

.banner-rojo-l2__title h2 {
  color: #000;
}

@media (max-width: 767.98px) {
  .banner-rojo-l2__title {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .banner-rojo-l2__image {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
  }
}

/* BANNER AZUL L1 */
.banner-azul-l1 {
  background-color: var(--azulsurexsl2);
}

.banner-azul-l1__info p {
  color: var(--azulsurexsd2);
  padding: 1.25rem 0rem;
}

.banner-azul-l1__info {
  display: flex;
  flex-direction: column;
  align-items: start;
}

@media (max-width: 767.98px) {
  .banner-azul-l1__info {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

.banner-azul-l1__title h2 {
  color: var(--blanco);
}

@media (max-width: 767.98px) {
  .banner-azul-l1__title {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .banner-azul-l1__image {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
  }
}

/* Marquesina */
.pci-banner {
  background-color: var(--azulsurexsl4);
  padding: 2.5rem 0rem;
  width: 100%;
  overflow: hidden;
}

.pci-banner__title {
  display: flex;
  align-items: start;
  justify-content: center;
  padding-left: 3rem;
}

.pci-banner__title h4 {
  color: var(--azulsurexsd2);
  font-size: 16px;
}

@media (max-width: 767.98px) {
  .pci-banner__title {
    text-align: center;
  }
}

.pci-banner__row {
  width: 100%;
}

@media (max-width: 767.98px) {
  .pci-banner__row {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

.pci-banner__text {
  color: var(--grisclaro5);
}

.pci-banner__marquee-wrapper {
  overflow: hidden;
  width: 100%;
  margin-top: 1rem;
}

.pci-banner__marquee {
  white-space: nowrap;
  animation: pci-highlight__marquee-animation 20s linear infinite;
}

@keyframes pci-highlight__marquee-animation {
  from {
    transform: translateX(10%);
  }

  to {
    transform: translateX(-100%);
  }
}

/* ==========================================================================
   BANNER · CAMBIO DE BROKER
   ========================================================================== */
.lp-banner-broker {
  position: relative;
  overflow: hidden;
  padding: 3rem 0;
  color: var(--blanco);
  background: radial-gradient(circle at 25% 55%, color-mix(in srgb, var(--azulsurexsl2) 28%, transparent), transparent 15rem), linear-gradient(135deg, var(--azulsurexsl1), var(--azulsurexs));
}

.lp-banner-broker::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.12;
  pointer-events: none;
  background: radial-gradient(circle, color-mix(in srgb, var(--azulsurexsl3) 16%, transparent) 0 1px, transparent 1px);
  background-size: 4.8rem 4.8rem;
}

.lp-banner-broker .container {
  position: relative;
  z-index: 1;
}

.lp-banner-broker__grid {
  display: grid;
  grid-template-columns: minmax(18rem, 0.62fr) minmax(0, 1fr);
  align-items: center;
  gap: 3.6rem;
}

.lp-banner-broker__visual {
  display: flex;
  justify-content: center;
  justify-self: center;
  width: 100%;
}

.lp-banner-broker__image {
  display: block;
  width: min(15rem, 92%);
  height: auto;
  margin-inline: auto;
  filter: drop-shadow(0 1rem 1.7rem color-mix(in srgb, var(--azulsurexsd2) 18%, transparent));
  animation: lp-banner-broker-float 6s ease-in-out infinite;
}

.lp-banner-broker__content {
  max-width: 43rem;
}

.lp-banner-broker__title {
  margin: 0 0 1.9rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: 0.02rem;
}

.lp-banner-broker__text {
  max-width: 42rem;
  margin: 0 0 1.9rem;
  color: color-mix(in srgb, var(--blanco) 88%, var(--azulsurexsl4));
  line-height: 1.45;
}

.lp-banner-broker__text strong {
  color: var(--blanco);
  font-weight: 800;
}

.lp-banner-broker__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.75rem;
}

.lp-banner-broker__cta {
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease !important;
}

.lp-banner-broker__cta:hover {
  transform: translateY(-2px);
}

.lp-banner-broker__cta img {
  width: 1.35rem;
  height: 1.35rem;
  object-fit: contain;
}

.lp-banner-broker__cta--primary {
  box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--verded1) 22%, transparent);
}

.lp-banner-broker__cta--secondary {
  border: 1px solid color-mix(in srgb, var(--blanco) 72%, transparent) !important;
  background: transparent !important;
  color: var(--blanco) !important;
}

.lp-banner-broker__cta--secondary:hover {
  border-color: var(--aqual1) !important;
  background: color-mix(in srgb, var(--blanco) 8%, transparent) !important;
}

@keyframes lp-banner-broker-float {

  0%,
  100% {
    transform: translateY(0) rotate(-0.5deg);
  }

  50% {
    transform: translateY(-0.35rem) rotate(0.5deg);
  }
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 991.98px) {
  .lp-banner-broker {
    padding: 3.6rem 0;
    text-align: center;
  }

  .lp-banner-broker__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .lp-banner-broker__visual {
    justify-self: center;
    order: 1;
    transform: none;
  }

  .lp-banner-broker__content {
    order: 2;
    margin-inline: auto;
  }

  .lp-banner-broker__image {
    width: min(17rem, 74vw);
  }

  .lp-banner-broker__actions {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .lp-banner-broker {
    padding: 3.2rem 0;
  }

  .lp-banner-broker__grid {
    gap: 1.65rem;
  }

  .lp-banner-broker__image {
    width: min(14.8rem, 72vw);
  }

  .lp-banner-broker__title {
    margin-bottom: 1.25rem;
    font-size: 1.85rem;
  }

  .lp-banner-broker__text {
    margin-bottom: 1.55rem;
  }

  .lp-banner-broker__actions {
    display: grid;
    gap: 0.85rem;
  }

  .lp-banner-broker__cta {
    width: 100%;
    justify-content: center;
  }

  .lp-banner-broker__cta img {
    width: 1.22rem;
    height: 1.22rem;
  }
}

/* ==========================================================================
   BANNER · LOGOS MARQUEE
   ========================================================================== */
.lp-banner-logos {
  overflow: hidden;
  background: color-mix(in srgb, var(--azulsurexsl4) 86%, var(--blanco));
}

.lp-banner-logos__inner {
  display: grid;
  grid-template-columns: minmax(15rem, 18.5rem) minmax(0, 1fr);
  align-items: center;
  min-height: 6.15rem;
}

.lp-banner-logos__label {
  position: relative;
  z-index: 3;
  padding-left: clamp(1.5rem, 4vw, 3.8rem);
  padding-right: 1.8rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-weight: 700;
  line-height: 1.45;
  background: color-mix(in srgb, var(--azulsurexsl4) 86%, var(--blanco));
}

.lp-banner-logos__marquee {
  --duration: 28s;
  --logo-width: 12rem;
  position: relative;
  height: 6.15rem;
  overflow: hidden;
}

.lp-banner-logos__marquee::before,
.lp-banner-logos__marquee::after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 2;
  width: 4rem;
  height: 100%;
  pointer-events: none;
}

.lp-banner-logos__marquee::before {
  left: 0;
  background: linear-gradient(90deg, color-mix(in srgb, var(--azulsurexsl4) 86%, var(--blanco)), transparent);
}

.lp-banner-logos__marquee::after {
  right: 0;
  background: linear-gradient(270deg, color-mix(in srgb, var(--azulsurexsl4) 86%, var(--blanco)), transparent);
}

.lp-banner-logos__marquee:hover .lp-banner-logos__item {
  animation-play-state: paused;
}

.lp-banner-logos__track {
  position: relative;
  height: 100%;
}

.lp-banner-logos__item {
  position: absolute;
  top: 50%;
  left: 100%;
  width: var(--logo-width);
  transform: translateY(-50%);
  animation: lp-banner-logos-marquee var(--duration) linear infinite;
  animation-delay: calc(var(--duration) / var(--total) * var(--i) * -1);
}

.lp-banner-logos__item img {
  display: block;
  width: 100%;
  height: 4rem;
  object-fit: contain;
  opacity: 0.9;
  transition: opacity 0.25s ease, filter 0.25s ease, transform 0.25s ease;
}

.lp-banner-logos__item:hover img {
  opacity: 0.9;
  filter: grayscale(0) contrast(1);
  transform: translateY(-0.08rem);
}

@keyframes lp-banner-logos-marquee {
  from {
    left: 100%;
  }

  to {
    left: calc(var(--logo-width) * -1);
  }
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 991.98px) {
  .lp-banner-logos__inner {
    grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr);
    min-height: 5.4rem;
  }

  .lp-banner-logos__label {
    padding-left: 1.5rem;
    padding-right: 1rem;
  }

  .lp-banner-logos__marquee {
    --logo-width: 10rem;
    height: 5.4rem;
  }

  .lp-banner-logos__item img {
    height: 2.65rem;
  }
}

@media (max-width: 767.98px) {
  .lp-banner-logos__inner {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .lp-banner-logos__label {
    padding: 1.15rem 1.25rem 0.6rem;
    text-align: center;
  }

  .lp-banner-logos__marquee {
    --duration: 22s;
    --logo-width: 8rem;
    height: 4.4rem;
  }

  .lp-banner-logos__marquee::before,
  .lp-banner-logos__marquee::after {
    width: 2.5rem;
  }

  .lp-banner-logos__item img {
    height: 2.2rem;
  }
}

/* ==========================================================================
   PRESENCIA NACIONAL
   ========================================================================== */
.lp-presencia-nacional {
  padding: 5.8rem 0 5.4rem;
  background: var(--blanco);
  color: var(--grisoscuro);
}

.lp-presencia-nacional__header {
  max-width: 68rem;
  margin: 0 auto 3.6rem;
  text-align: center;
}

.lp-presencia-nacional__title {
  margin: 0 0 1.7rem;
  color: var(--azulsurexsd1);
}

.lp-presencia-nacional__title span {
  color: var(--azulsurexs);
}

.lp-presencia-nacional__description {
  max-width: 64rem;
  margin: 0 auto;
  line-height: 1.55;
}

.lp-presencia-nacional__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.1rem;
}

.lp-presencia-nacional__card {
  overflow: hidden;
  border-radius: 0.55rem;
  background: var(--blanco);
  box-shadow: 0 1.1rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 9%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.lp-presencia-nacional__card:hover {
  transform: translateY(-0.32rem);
  box-shadow: 0 1.35rem 2.8rem color-mix(in srgb, var(--azulsurexsd2) 13%, transparent);
}

.lp-presencia-nacional__card:hover .lp-presencia-nacional__image {
  transform: scale(1.025);
}

.lp-presencia-nacional__image {
  display: block;
  width: 100%;
  height: 17.8rem;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.lp-presencia-nacional__body {
  padding: 2.1rem 1.8rem 2.2rem;
  text-align: center;
}

.lp-presencia-nacional__body h3 {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  margin: 0 0 1.6rem;
  color: color-mix(in srgb, var(--azulsurexs) 72%, var(--azulsurexsd1));
  font-weight: 500;
}

.lp-presencia-nacional__body h3 img {
  width: 1.45rem;
  height: 1.45rem;
  object-fit: contain;
}

.lp-presencia-nacional__body p {
  margin: 0;
  line-height: 1.5;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 991.98px) {
  .lp-presencia-nacional {
    padding: 5rem 0;
  }

  .lp-presencia-nacional__header {
    margin-bottom: 3rem;
  }

  .lp-presencia-nacional__cards {
    grid-template-columns: 1fr;
    max-width: 40rem;
    margin-inline: auto;
    gap: 1.4rem;
  }

  .lp-presencia-nacional__image {
    height: 16rem;
  }
}

@media (max-width: 767.98px) {
  .lp-presencia-nacional {
    padding: 4.2rem 0;
  }

  .lp-presencia-nacional__header {
    margin-bottom: 2.4rem;
  }

  .lp-presencia-nacional__image {
    height: 13.5rem;
  }

  .lp-presencia-nacional__body {
    padding: 1.55rem 1.2rem 1.7rem;
  }

  .lp-presencia-nacional__body h3 {
    margin-bottom: 1rem;
  }
}

/* ==========================================================================
   BANNER · CTA CON FORMULARIO
   ========================================================================== */
.lp-banner-form {
  position: relative;
  overflow: hidden;
  padding: 4.6rem 0;
  color: var(--blanco);
  background: radial-gradient(circle at 78% 48%, color-mix(in srgb, var(--azulsurexsl1) 32%, transparent), transparent 22rem), linear-gradient(135deg, var(--azulsurexs), var(--azulsurexsd1));
}

.lp-banner-form::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.12;
  pointer-events: none;
  background: radial-gradient(circle, color-mix(in srgb, var(--aqual1) 16%, transparent) 0 1px, transparent 1px);
  background-size: 4.8rem 4.8rem;
}

.lp-banner-form .container {
  position: relative;
  z-index: 1;
}

.lp-banner-form__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(28rem, 0.85fr);
  align-items: center;
  gap: 5rem;
}

.lp-banner-form__content {
  max-width: 42rem;
}

.lp-banner-form__title {
  margin: 0 0 2rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: 0.03rem;
}

.lp-banner-form__text {
  max-width: 40rem;
  margin: 0 0 2.25rem;
  color: color-mix(in srgb, var(--blanco) 88%, var(--azulsurexsl4));
  line-height: 1.45;
}

.lp-banner-form__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.75rem;
}

.lp-banner-form__cta {
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease !important;
}

.lp-banner-form__cta:hover {
  transform: translateY(-2px);
}

.lp-banner-form__cta img {
  width: 1.35rem;
  height: 1.35rem;
  object-fit: contain;
}

.lp-banner-form__cta--secondary {
  border: 1px solid color-mix(in srgb, var(--blanco) 72%, transparent) !important;
  background: transparent !important;
  color: var(--blanco) !important;
}

.lp-banner-form__cta--secondary:hover {
  border-color: var(--aqual1) !important;
  background: color-mix(in srgb, var(--blanco) 8%, transparent) !important;
}

.lp-banner-form__box {
  min-height: 18.6rem;
  padding: 2rem;
  border-radius: 0.45rem;
  background: var(--blanco);
  box-shadow: 0 1.35rem 3rem color-mix(in srgb, var(--azulsurexsd2) 18%, transparent);
}

.lp-banner-form__placeholder {
  display: grid;
  place-items: center;
  height: 100%;
  min-height: 14.5rem;
  color: var(--azulsurexsd1);
  text-align: center;
  line-height: 1.35;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 991.98px) {
  .lp-banner-form {
    padding: 4rem 0;
    text-align: center;
  }

  .lp-banner-form__grid {
    grid-template-columns: 1fr;
    gap: 2.6rem;
  }

  .lp-banner-form__content,
  .lp-banner-form__text {
    margin-inline: auto;
  }

  .lp-banner-form__actions {
    justify-content: center;
  }

  .lp-banner-form__box {
    max-width: 42rem;
    width: 100%;
    margin-inline: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-banner-form {
    padding: 3.4rem 0;
  }

  .lp-banner-form__title {
    margin-bottom: 1.35rem;
  }

  .lp-banner-form__text {
    margin-bottom: 1.7rem;
  }

  .lp-banner-form__actions {
    display: grid;
    gap: 0.85rem;
  }

  .lp-banner-form__cta {
    width: 100%;
    justify-content: center;
  }

  .lp-banner-form__cta img {
    width: 1.22rem;
    height: 1.22rem;
  }

  .lp-banner-form__box {
    min-height: 16rem;
    padding: 1.25rem;
  }

  .lp-banner-form__placeholder {
    min-height: 12rem;
  }
}

/* === HELPERS LOCALES · TOKENS COMPARTIDOS === */
/* === HEADER · PLAN ESENCIAL SUREXS === */
.lp-header-esencial {
  position: relative;
  overflow: hidden;
  padding: 8rem 0 5.5rem;
  min-height: 44rem;
  color: var(--blanco);
  background: radial-gradient(circle at 42% 24%, color-mix(in srgb, var(--azulsurexsl2) 24%, transparent), transparent 12rem), linear-gradient(135deg, var(--azulsurexsl1), var(--azulsurexs));
}

.lp-header-esencial::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.14;
  background: radial-gradient(circle, color-mix(in srgb, var(--aqual1) 12%, transparent) 0 1px, transparent 1px);
  background-size: 4.8rem 4.8rem;
}

.lp-header-esencial .container {
  position: relative;
  z-index: 1;
}

.lp-header-esencial__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(28rem, 0.95fr);
  align-items: center;
  gap: 4.5rem;
}

.lp-header-esencial__content {
  max-width: 40rem;
}

.lp-header-esencial__eyebrows,
.lp-header-esencial__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.lp-header-esencial__eyebrows {
  gap: 0.7rem;
  margin-bottom: 1.85rem;
}

.lp-header-esencial__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 1.65rem;
  padding: 0.28rem 0.7rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl4) 34%, transparent);
  border-radius: 0.35rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 10%, transparent);
  color: color-mix(in srgb, var(--blanco) 86%, var(--azulsurexsl4));
  font-size: 0.87rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.02rem;
  backdrop-filter: blur(0.45rem);
}

.lp-header-esencial__title {
  margin: 0 0 1.65rem;
  color: var(--aqual2);
  font-family: var(--font-headline);
  font-size: 2.8rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.075rem;
}

.lp-header-esencial__highlight {  
  display: grid;
  grid-template-columns: 1.3rem 1fr;
  gap: 0.55rem;
  max-width: 36rem;
  margin-bottom: 2.1rem;
}

.lp-header-esencial__highlight img {
  width: 1.25rem;
  margin-top: 0.1rem;
}

.lp-header-esencial__highlight p {
  margin: 0;
  color: var(--blanco);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.42;
}

.lp-header-esencial__description {
  max-width: 40rem;
  margin-bottom: 2.35rem;
}

.lp-header-esencial__description p {
  margin: 0;
  color: color-mix(in srgb, var(--blanco) 88%, var(--azulsurexsl4));
  font-size: 0.98rem;
  line-height: 1.55;
}

.lp-header-esencial__actions {
  gap: 1.85rem;
}

.lp-header-esencial__cta {
  transition: 0.25s ease !important;
}

.lp-header-esencial__cta:hover {
  transform: translateY(-2px);
}

.lp-header-esencial__cta img {
  width: 1.35rem;
  height: 1.35rem;
}

.lp-header-esencial__cta--primary {
  box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--verded1) 24%, transparent);
}

.lp-header-esencial__cta--secondary {
  border: 1px solid color-mix(in srgb, var(--blanco) 76%, transparent) !important;
  background: transparent;
  color: var(--blanco) !important;
}

.lp-header-esencial__cta--secondary:hover {
  border-color: var(--aqual1) !important;
  background: color-mix(in srgb, var(--blanco) 8%, transparent) !important;
}

.lp-header-esencial__visual {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 30rem;
  isolation: isolate;
}

.lp-header-esencial__device {
  position: relative;
  z-index: 2;
  width: min(22rem, 100%);
  animation: lp-header-float 6s ease-in-out infinite;
}

.lp-header-esencial__device img {
  display: block;
  width: 100%;
  filter: drop-shadow(0 1.2rem 1.7rem color-mix(in srgb, var(--azulsurexsd2) 20%, transparent));
  transform: scale(1.8);
}

.lp-header-esencial__shield,
.lp-header-esencial__range-card,
.lp-header-esencial__spark {
  position: absolute;
}

.lp-header-esencial__shield {
  z-index: 4;
  top: 0.5rem;
  left: 15%;
  width: clamp(6rem, 9vw, 8.7rem);
  filter: drop-shadow(0 0.8rem 1.2rem color-mix(in srgb, var(--azulsurexsd2) 22%, transparent));
  animation: lp-header-shield 5.5s ease-in-out infinite;
}

.lp-header-esencial__range-card {
  z-index: 5;
  right: 6.5%;
  bottom: 4.3rem;
  min-width: 10.45rem;
  padding: 0.92rem 1rem 0.86rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexs) 18%, transparent);
  border-radius: 0.28rem;
  background: var(--aqual1);
  text-align: center;
  box-shadow: 0 0.18rem 0.45rem color-mix(in srgb, var(--azulsurexsd2) 22%, transparent), 0 0.9rem 1.7rem color-mix(in srgb, var(--azulsurexsd2) 14%, transparent);
  transform: translateY(0);
  transition: transform 0.28s ease, box-shadow 0.28s ease, filter 0.28s ease;
  animation: lp-header-range-float 5.8s ease-in-out infinite;
}

.lp-header-esencial__range-card:hover {
  transform: translateY(-0.28rem);
  filter: saturate(1.04);
  box-shadow: 0 0.25rem 0.6rem color-mix(in srgb, var(--azulsurexsd2) 26%, transparent), 0 1.15rem 2rem color-mix(in srgb, var(--azulsurexsd2) 18%, transparent);
}

.lp-header-esencial__range-card strong,
.lp-header-esencial__range-card span {
  display: block;
}

.lp-header-esencial__range-card strong {
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 3vw, 2.7rem);
  font-weight: 600;
  line-height: 0.9;
  letter-spacing: 0.02rem;
  text-shadow: 0 0.12rem 0.2rem color-mix(in srgb, var(--azulsurexsd1) 16%, transparent);
}

.lp-header-esencial__range-card span {
  margin-top: 0.35rem;
  color: var(--aquad2);
  font-size: 0.92rem;
  font-weight: 400;
  line-height: 1.1;
}

.lp-header-esencial__spark {
  z-index: 1;
  width: 8rem;
  aspect-ratio: 1;
  opacity: 0.55;
  background: color-mix(in srgb, var(--azulsurexsl3) 90%, transparent);
  clip-path: polygon(50% 0%, 61% 35%, 100% 50%, 61% 65%, 50% 100%, 39% 65%, 0% 50%, 39% 35%);
  animation: lp-header-spark 7s ease-in-out infinite;
}

.lp-header-esencial__spark--left {
  left: 10%;
  top: 41%;
}

.lp-header-esencial__spark--small {
  left: 1.5%;
  top: 61%;
  width: 4.5rem;
  opacity: 0.42;
  animation-delay: -2s;
}

.lp-header-esencial__spark--right {
  right: 4%;
  top: 30%;
  width: 8.7rem;
  animation-delay: -1.2s;
}

@keyframes lp-header-float {

  0%,
  100% {
    transform: translate(0.8rem, 0.45rem);
  }

  50% {
    transform: translate(0.8rem, -0.25rem);
  }
}

@keyframes lp-header-float-soft {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-0.42rem);
  }
}

@keyframes lp-header-shield {

  0%,
  100% {
    transform: rotate(-1deg) translateY(0);
  }

  50% {
    transform: rotate(1deg) translateY(-0.35rem);
  }
}

@keyframes lp-header-spark {

  0%,
  100% {
    transform: scale(1) rotate(0);
  }

  50% {
    transform: scale(1.06) rotate(4deg);
  }
}

/* Responsive */
@media (max-width: 1199.98px) {
  .lp-header-esencial {
    padding: 7rem 0 5rem;
    min-height: auto;
  }

  .lp-header-esencial__grid {
    grid-template-columns: 1fr minmax(23rem, 0.86fr);
    gap: 2.75rem;
  }

  .lp-header-esencial__visual {
    min-height: 28rem;
  }

  .lp-header-esencial__shield {
    left: 8%;
  }

  .lp-header-esencial__range-card {
    right: 0;
  }
}

@media (max-width: 991.98px) {
  .lp-header-esencial {
    padding: 6.5rem 0 4.5rem;
    text-align: center;
  }

  .lp-header-esencial__grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .lp-header-esencial__content,
  .lp-header-esencial__description {
    max-width: 42rem;
    margin-inline: auto;
  }

  .lp-header-esencial__eyebrows,
  .lp-header-esencial__actions {
    justify-content: center;
  }

  .lp-header-esencial__highlight {
    max-width: 38rem;
    margin-inline: auto;
    text-align: left;
  }

  .lp-header-esencial__visual {
    max-width: 38rem;
    min-height: 26rem;
    margin-inline: auto;
  }

  .lp-header-esencial__device {
    width: min(22.5rem, 78vw);
  }

  .lp-header-esencial__shield {
    top: 0.2rem;
    left: 10%;
  }

  .lp-header-esencial__range-card {
    right: 6%;
    bottom: 2.6rem;
  }
}

@media (max-width: 767.98px) {
  .lp-header-esencial {
    padding: 5.5rem 0 3.8rem;
  }

  .lp-header-esencial__title {
    font-size: clamp(2.35rem, 12vw, 3.05rem);
  }

  .lp-header-esencial__eyebrow {
    font-size: 0.76rem;
  }

  .lp-header-esencial__highlight p,
  .lp-header-esencial__description p {
    font-size: 0.92rem;
  }

  .lp-header-esencial__actions {
    display: grid;
    gap: 0.85rem;
  }

  .lp-header-esencial__cta {
    width: 100%;
    border-radius: 1.4rem !important;
  }

  .lp-header-esencial__visual {
    min-height: 22rem;
  }

  .lp-header-esencial__device {
    width: 60vw;
  }

  .lp-header-esencial__shield {
    top: 1rem;
    left: -10%;
    width: 7rem;
  }

  .lp-header-esencial__range-card {
    right: -15%;
    bottom: 1rem;
    min-width: 8.8rem;
    padding: 0.72rem 0.85rem;
  }

  .lp-header-esencial__range-card strong {
    font-size: 2rem;
  }

  .lp-header-esencial__range-card span {
    font-size: 0.78rem;
  }

  .lp-header-esencial__spark {
    width: 6rem;
  }

  .lp-header-esencial__spark--left {
    left: -2.5rem;
  }

  .lp-header-esencial__spark--small {
    left: -2.8rem;
    width: 3.2rem;
  }

  .lp-header-esencial__spark--right {
    right: -4rem;
    width: 5rem;
  }
}

/* === EVOLUCIÓN DEL SEGURO === */
.lp-evolucion-seguro {
  padding: 6.8rem 0 4.3rem;
  background: var(--blanco);
  color: var(--grisoscuro);
}

.lp-evolucion-seguro__grid {
  display: grid;
  grid-template-columns: minmax(18rem, 0.78fr) minmax(36rem, 1.12fr);
  align-items: center;
  gap: 4.8rem;
}

.lp-evolucion-seguro__eyebrow {
  display: inline-flex;
  margin-bottom: 2.55rem;
  padding: 0.42rem 2rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl1) 28%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--azulsurexsl4) 42%, transparent);
  color: var(--azulsurexs);
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.08rem;
}

.lp-evolucion-seguro__title {
  max-width: 24rem;
  margin: 0 0 2rem;
  color: var(--grisoscuro);
  font-family: var(--font-headline);
  font-size: clamp(2rem, 3vw, 2.65rem);
  font-weight: 600;
}

.lp-evolucion-seguro__title span {
  display: block;
  color: var(--azulsurexs);
}

.lp-evolucion-seguro__text {
  max-width: 32rem;
  margin: 0 0 2.4rem;
  color: var(--grisoscuro);
  font-size: 1rem;
  line-height: 1.62;
}

.lp-evolucion-seguro__note {
  display: grid;
  grid-template-columns: 2.8rem 1fr;
  align-items: center;
  gap: 1rem;
  max-width: 31.5rem;
  padding: 1.15rem 1.15rem;
  border: 1px solid color-mix(in srgb, var(--rojo) 28%, transparent);
  border-radius: 0.28rem;
  background: color-mix(in srgb, var(--rojo) 4%, var(--blanco));
  box-shadow: 0 1.3rem 2.6rem color-mix(in srgb, var(--rojo) 10%, transparent);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.lp-evolucion-seguro__note:hover {
  transform: translateY(-0.18rem);
  box-shadow: 0 1.5rem 3rem color-mix(in srgb, var(--rojo) 14%, transparent);
}

.lp-evolucion-seguro__note img {
  width: 2.8rem;
  height: 2.8rem;
  padding: 0.65rem;
  border-radius: 0.15rem;
  background: color-mix(in srgb, var(--rojo) 22%, var(--blanco));
}

.lp-evolucion-seguro__note p {
  margin: 0;
  color: var(--grisoscuro);
  font-size: 0.98rem;
  line-height: 1.35;
}

.lp-evolucion-seguro__divider {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 1.45rem;
  color: var(--grisclaro1);
  font-size: 0.82rem;
  letter-spacing: 0.04rem;
}

.lp-evolucion-seguro__divider::before,
.lp-evolucion-seguro__divider::after {
  content: "";
  height: 1px;
  background: color-mix(in srgb, var(--grisclaro2) 56%, transparent);
}

.lp-evolucion-seguro__columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(19rem, 1.1fr);
  gap: 2rem;
}

.lp-evolucion-seguro__column {
  border-radius: 0.42rem;
}

.lp-evolucion-seguro__column--surexs {
  padding: 1.8rem 1.15rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 74%, var(--blanco));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--azulsurexsl3) 34%, transparent);
}

.lp-evolucion-seguro__column-header {
  margin-bottom: 1.9rem;
  text-align: center;
}

.lp-evolucion-seguro__column-header h3 {
  margin: 0 0 0.45rem;
  color: var(--grisoscuro);
  font-family: var(--font-headline);
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.1;
}

.lp-evolucion-seguro__column-header p {
  margin: 0;
  color: var(--grisoscuro);
  font-size: 0.9rem;
  line-height: 1.2;
}

.lp-evolucion-seguro__column--surexs .lp-evolucion-seguro__column-header h3 {
  color: var(--azulsurexs);
}

.lp-evolucion-seguro__list {
  display: grid;
  gap: 1.05rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-evolucion-seguro__list li {
  display: grid;
  grid-template-columns: 1.25rem 1fr;
  align-items: center;
  gap: 0.85rem;
  min-height: 3.75rem;
  padding: 0.95rem 1rem;
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 48%, transparent);
  border-radius: 0.28rem;
  background: color-mix(in srgb, var(--blanco) 92%, transparent);
  box-shadow: 0 0.55rem 1.35rem color-mix(in srgb, var(--azulsurexsd2) 6%, transparent);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.lp-evolucion-seguro__list li:hover {
  transform: translateY(-0.18rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 42%, transparent);
  box-shadow: 0 0.8rem 1.6rem color-mix(in srgb, var(--azulsurexsd2) 9%, transparent);
}

.lp-evolucion-seguro__list img {
  width: 1.3rem;
  height: 1.3em;
  object-fit: contain;
}

.lp-evolucion-seguro__list span {
  color: var(--grisoscuro);
  font-size: 0.98rem;
  line-height: 1.32;
}

.lp-evolucion-seguro__list strong {
  font-weight: 700;
}

.lp-evolucion-seguro__column--traditional .lp-evolucion-seguro__list li {
  opacity: 0.86;
  box-shadow: none;
}

.lp-evolucion-seguro__column--surexs .lp-evolucion-seguro__list li {
  background: var(--blanco);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 20%, transparent);
  box-shadow: 0 0.65rem 1.45rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
}

@media (max-width: 1199.98px) {
  .lp-evolucion-seguro__grid {
    gap: 3rem;
  }

  .lp-evolucion-seguro__columns {
    gap: 1.25rem;
  }
}

@media (max-width: 991.98px) {
  .lp-evolucion-seguro {
    padding: 5rem 0;
  }

  .lp-evolucion-seguro__grid,
  .lp-evolucion-seguro__columns {
    grid-template-columns: 1fr;
  }

  .lp-evolucion-seguro__intro {
    text-align: center;
  }

  .lp-evolucion-seguro__title,
  .lp-evolucion-seguro__text,
  .lp-evolucion-seguro__note {
    margin-inline: auto;
  }

  .lp-evolucion-seguro__title span {
    display: inline;
  }

  .lp-evolucion-seguro__comparison {
    max-width: 40rem;
    margin-inline: auto;
  }

  .lp-evolucion-seguro__column--surexs {
    padding: 1.3rem;
  }
}

@media (max-width: 767.98px) {
  .lp-evolucion-seguro {
    padding: 4.2rem 0;
  }

  .lp-evolucion-seguro__eyebrow {
    margin-bottom: 1.8rem;
    padding-inline: 1.35rem;
    font-size: 0.74rem;
  }

  .lp-evolucion-seguro__title {
    margin-bottom: 1.3rem;
    font-size: 2rem;
  }

  .lp-evolucion-seguro__text {
    margin-bottom: 1.75rem;
    font-size: 0.92rem;
  }

  .lp-evolucion-seguro__note {
    grid-template-columns: 2.4rem 1fr;
    text-align: left;
  }

  .lp-evolucion-seguro__note img {
    width: 2.4rem;
    height: 2.4rem;
  }

  .lp-evolucion-seguro__note p {
    font-size: 0.9rem;
  }

  .lp-evolucion-seguro__divider {
    gap: 0.85rem;
    font-size: 0.75rem;
  }

  .lp-evolucion-seguro__column-header {
    margin-bottom: 1.2rem;
  }

  .lp-evolucion-seguro__list {
    gap: 0.85rem;
  }

  .lp-evolucion-seguro__list li {
    min-height: auto;
    padding: 0.9rem;
  }

  .lp-evolucion-seguro__list span {
    font-size: 0.91rem;
  }
}

/* === MODELO PROPIO DE OPERACIÓN === */
.lp-modelo-propio {
  position: relative;
  overflow: hidden;
  padding: 6.5rem 0 7rem;
  background: var(--blanco);
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-modelo-propio__dots {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  width: min(75rem, 92vw);
  aspect-ratio: 1;
  background: url("../img/informativas/modelo-servicio/bkgd-dots.svg") center/contain no-repeat;
  opacity: 0.82;
  transform: translate(-50%, -50%);
  transform-origin: center;
  animation: lp-modelo-dots-spin 55s linear infinite;
  pointer-events: none;
}

.lp-modelo-propio .container {
  position: relative;
  z-index: 1;
}

.lp-modelo-propio__header {
  max-width: 55rem;
  margin: 0 auto 3.6rem;
  text-align: center;
}

.lp-modelo-propio__eyebrow {
  display: inline-flex;
  margin-bottom: 1rem;
  padding: 0.48rem 1.65rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.72rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.08rem;
}

.lp-modelo-propio__title {
  margin: 0 auto 1.4rem;
  color: var(--azulsurexsd2);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 4vw, 3.15rem);
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-modelo-propio__title strong {
  display: block;
  color: var(--azulsurexsl1);
  font-weight: 700;
}

.lp-modelo-propio__description {
  max-width: 49rem;
  margin: 0 auto;
  color: var(--gris);
  font-size: 0.98rem;
  line-height: 1.65;
  text-wrap: balance;
}

.lp-modelo-propio__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1.75rem;
  align-items: stretch;
}

.lp-modelo-propio__card {
  grid-column: span 2;
  min-height: 13rem;
  padding: 1.6rem 1.55rem;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: var(--blanco);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.lp-modelo-propio__card--fourth {
  grid-column: 2 / span 2;
}

.lp-modelo-propio__card--fifth {
  grid-column: 4 / span 2;
}

.lp-modelo-propio__card:hover {
  transform: translateY(-0.35rem);
  border-color: var(--azulsurexsl1);
  box-shadow: 0 18px 45px rgba(0, 119, 188, 0.2);
}

.lp-modelo-propio__card-top {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.15rem;
}

.lp-modelo-propio__icon {
  display: inline-flex;
  flex: 0 0 3.25rem;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 0.55rem;
}

.lp-modelo-propio__icon--aqua {
  background: var(--aqual3);
}

.lp-modelo-propio__icon--amarillo {
  background: var(--amarillol2);
}

.lp-modelo-propio__icon--verde {
  background: var(--verdel1);
}

.lp-modelo-propio__icon img {
  width: 1.75rem;
  height: 1.75rem;
  object-fit: contain;
}

.lp-modelo-propio__card h3 {
  margin: 0;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.25;
}

.lp-modelo-propio__card p {
  margin: 0;
  color: var(--azulsurexs);
  font-size: 0.86rem;
  line-height: 1.62;
}

@keyframes lp-modelo-dots-spin {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

@media (max-width: 991.98px) {
  .lp-modelo-propio {
    padding: 5.5rem 0;
  }

  .lp-modelo-propio__header {
    margin-bottom: 3rem;
  }

  .lp-modelo-propio__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
  }

  .lp-modelo-propio__card,
  .lp-modelo-propio__card--fourth,
  .lp-modelo-propio__card--fifth {
    grid-column: auto;
  }

  .lp-modelo-propio__card:last-child {
    grid-column: 1 / -1;
    width: calc(50% - 0.625rem);
    justify-self: center;
  }
}

@media (max-width: 767.98px) {
  .lp-modelo-propio {
    padding: 4.5rem 0;
  }

  .lp-modelo-propio__dots {
    width: 56rem;
    opacity: 0.58;
  }

  .lp-modelo-propio__header {
    margin-bottom: 2.4rem;
  }

  .lp-modelo-propio__eyebrow {
    padding-inline: 1.15rem;
    font-size: 0.66rem;
    line-height: 1.25;
    text-align: center;
  }

  .lp-modelo-propio__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-modelo-propio__description {
    font-size: 0.9rem;
    line-height: 1.6;
  }

  .lp-modelo-propio__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .lp-modelo-propio__card,
  .lp-modelo-propio__card:last-child {
    grid-column: auto;
    width: 100%;
    min-height: auto;
    padding: 1.35rem;
    border-radius: 24px;
  }

  .lp-modelo-propio__card-top {
    margin-bottom: 0.9rem;
  }

  .lp-modelo-propio__card h3 {
    font-size: 1rem;
  }

  .lp-modelo-propio__card p {
    font-size: 0.82rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-modelo-propio__dots {
    animation: none;
  }

  .lp-modelo-propio__card {
    transition: none;
  }
}

/* === ELIGE CÓMO AVANZAR · STICKY SCROLL === */
.lp-avanza {
  --lp-avanza-background: #A1CEF5;
  --lp-avanza-gradient-start: #0B89D2;
  --lp-avanza-gradient-end: #005A9F;
  position: relative;
  overflow: clip;
  padding: 7rem 0;
  background: var(--lp-avanza-background);
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-avanza__decor {
  position: absolute;
  z-index: -1;
  width: clamp(18rem, 32vw, 28rem);
  aspect-ratio: 1;
  background: url("../img/informativas/modelo-servicio/decobkg.svg") center/contain no-repeat;
  opacity: 0.58;
  pointer-events: none;
}

.lp-avanza__decor--top {
  top: -5rem;
  left: -7rem;
}

.lp-avanza__decor--middle {
  top: 36%;
  right: -8rem;
  transform: scaleX(-1);
}

.lp-avanza__decor--bottom {
  bottom: -7rem;
  left: 35%;
  transform: rotate(180deg);
}

.lp-avanza .container {
  position: relative;
  z-index: 1;
}

.lp-avanza__layout {
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(34rem, 1.18fr);
  align-items: start;
  gap: clamp(3rem, 7vw, 7rem);
}

.lp-avanza__intro {
  position: sticky;
  top: clamp(6rem, 14vh, 9rem);
}

.lp-avanza__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
  padding: 0.48rem 1.2rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 72%, var(--blanco));
  border-radius: 999px;
  background: color-mix(in srgb, var(--blanco) 76%, transparent);
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 0.72rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-avanza__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-avanza__title {
  max-width: 34rem;
  margin: 0 0 1.6rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-avanza__title strong {
  display: block;
  font-weight: 700;
}

.lp-avanza__description {
  max-width: 32rem;
  margin: 0 0 2.25rem;
  color: var(--azulsurexsd1);
  font-size: 0.98rem;
  line-height: 1.7;
}

.lp-avanza__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.lp-avanza__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  min-height: 3rem;
  padding-inline: 1.25rem;
  border-radius: 999px;
  font-family: var(--font-primary);
  font-size: 0.86rem;
  cursor: pointer;
}

.lp-avanza__cta img {
  width: 1.1rem;
  height: 1.1rem;
}

.lp-avanza__cta--secondary {
  border: 1.5px solid var(--azulsurexsl1);
  background: color-mix(in srgb, var(--blanco) 18%, transparent);
  color: var(--azulsurexs);
}

.lp-avanza__cta--secondary:hover {
  background: var(--blanco);
  color: var(--azulsurexs);
  transform: translateY(-0.15rem);
}

.lp-avanza__cards {
  display: grid;
  gap: 2rem;
}

.lp-avanza__card {
  display: flex;
  min-height: 18rem;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.75rem, 3vw, 2.5rem);
  border: 1px solid color-mix(in srgb, var(--blanco) 28%, transparent);
  border-radius: 28px;
  background: linear-gradient(135deg, var(--lp-avanza-gradient-start) 0%, var(--lp-avanza-gradient-end) 100%);
  box-shadow: 0 18px 45px rgba(0, 82, 144, 0.16);
  color: var(--blanco);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-avanza__card:hover {
  transform: translateY(-0.35rem);
  box-shadow: 0 24px 55px rgba(0, 82, 144, 0.24);
}

.lp-avanza__card-header {
  display: grid;
  grid-template-columns: 3.25rem 1fr;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.6rem;
}

.lp-avanza__card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border: 1px solid color-mix(in srgb, var(--blanco) 38%, transparent);
  border-radius: 0.65rem;
  background: color-mix(in srgb, var(--blanco) 13%, transparent);
}

.lp-avanza__card-icon img {
  width: 1.65rem;
  height: 1.65rem;
}

.lp-avanza__card h3 {
  margin: 0 0 0.35rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
}

.lp-avanza__card-header p {
  margin: 0;
  color: color-mix(in srgb, var(--blanco) 82%, transparent);
  font-size: 0.88rem;
  line-height: 1.5;
}

.lp-avanza__card h4 {
  margin: 0 0 1rem;
  color: var(--blanco);
  font-family: var(--font-primary) !important;
  font-size: 0.86rem;
  font-weight: 700;
  line-height: 1.3;
}

.lp-avanza__card ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem 1.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-avanza__card li {
  position: relative;
  padding-left: 1.55rem;
  color: var(--blanco);
  font-family: var(--font-primary);
  font-size: 0.83rem;
  line-height: 1.45;
}

.lp-avanza__card li::before {
  content: "";
  position: absolute;
  top: 0.15rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  background: url("../img/iconos/sistema/blanco/check-circle.svg") center/contain no-repeat;
}

@media (max-width: 1199.98px) {
  .lp-avanza__layout {
    grid-template-columns: minmax(17rem, 0.8fr) minmax(30rem, 1.2fr);
    gap: 3rem;
  }

  .lp-avanza__card {
    min-height: 17rem;
  }
}

@media (max-width: 991.98px) {
  .lp-avanza {
    padding: 5.5rem 0;
  }

  .lp-avanza__layout {
    grid-template-columns: 1fr;
    gap: 3.5rem;
  }

  .lp-avanza__intro {
    position: static;
    max-width: 44rem;
    margin-inline: auto;
    text-align: center;
  }

  .lp-avanza__title,
  .lp-avanza__description {
    margin-inline: auto;
  }

  .lp-avanza__actions {
    justify-content: center;
  }

  .lp-avanza__cards {
    max-width: 46rem;
    margin-inline: auto;
  }

  .lp-avanza__card {
    min-height: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-avanza {
    padding: 4.5rem 0;
  }

  .lp-avanza__decor {
    width: 20rem;
    opacity: 0.42;
  }

  .lp-avanza__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-avanza__description {
    font-size: 0.9rem;
    line-height: 1.62;
  }

  .lp-avanza__actions {
    display: grid;
  }

  .lp-avanza__cta {
    width: 100%;
  }

  .lp-avanza__cards {
    gap: 1rem;
  }

  .lp-avanza__card {
    padding: 1.5rem 1.35rem;
    border-radius: 24px;
  }

  .lp-avanza__card-header {
    grid-template-columns: 2.75rem 1fr;
    align-items: start;
    margin-bottom: 1.25rem;
  }

  .lp-avanza__card-icon {
    width: 2.75rem;
    height: 2.75rem;
  }

  .lp-avanza__card h3 {
    font-size: 1.15rem;
  }

  .lp-avanza__card-header p,
  .lp-avanza__card li {
    font-size: 0.8rem;
  }

  .lp-avanza__card ul {
    grid-template-columns: 1fr;
    gap: 0.7rem;
  }
}

@media (prefers-reduced-motion: reduce) {

  .lp-avanza__card,
  .lp-avanza__cta {
    transition: none;
  }
}

/* === DE LA GESTIÓN MANUAL A LA GESTIÓN INTELIGENTE === */
.lp-operacion-problema {
  position: relative;
  overflow: hidden;
  margin-top: -1px;
  padding: 0 0 7rem;
  background: #A1CEF5;
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-operacion-problema__decor {
  position: absolute;
  z-index: -1;
  width: clamp(19rem, 34vw, 30rem);
  aspect-ratio: 1;
  background: url("../img/informativas/modelo-servicio/decobkg.svg") center/contain no-repeat;
  opacity: 0.5;
  pointer-events: none;
}

.lp-operacion-problema__decor--left {
  bottom: -8rem;
  left: -8rem;
  transform: scaleY(-1);
}

.lp-operacion-problema__decor--right {
  top: -8rem;
  right: -7rem;
  transform: scaleX(-1);
}

.lp-operacion-problema .container {
  position: relative;
  z-index: 1;
}

.lp-operacion-problema__glass {
  position: relative;
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(35rem, 1.18fr);
  align-items: center;
  gap: clamp(3rem, 6vw, 6rem);
  overflow: hidden;
  padding: clamp(2.5rem, 5vw, 5rem);
  border: 1px solid rgba(255, 255, 255, 0.68);
  border-radius: 32px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0.22)),
    rgba(255, 255, 255, 0.16);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.88),
    inset 0 -1px 0 rgba(255, 255, 255, 0.26),
    0 28px 70px rgba(0, 82, 144, 0.14);
  -webkit-backdrop-filter: blur(24px) saturate(145%);
  backdrop-filter: blur(24px) saturate(145%);
}

.lp-operacion-problema__glass::before {
  content: "";
  position: absolute;
  top: -10rem;
  left: -5rem;
  width: 28rem;
  height: 18rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.32);
  filter: blur(1rem);
  transform: rotate(-18deg);
  pointer-events: none;
}

.lp-operacion-problema__content,
.lp-operacion-problema__table-card {
  position: relative;
  z-index: 1;
}

.lp-operacion-problema__content {
  text-align: center;
}

.lp-operacion-problema__eyebrow {
  display: inline-flex;
  margin-bottom: 1.25rem;
  padding: 0.48rem 1.35rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.42);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-operacion-problema__title {
  max-width: 31rem;
  margin: 0 auto 1.8rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-operacion-problema__title strong {
  color: var(--azulsurexs);
  font-weight: 800;
}

.lp-operacion-problema__illustration {
  display: block;
  width: clamp(11.5rem, 18vw, 15.25rem);
  height: auto;
  margin: 0 auto 1.8rem;
  filter: drop-shadow(0 16px 24px rgba(0, 82, 144, 0.12));
}

.lp-operacion-problema__description {
  max-width: 32rem;
  margin: 0 auto 1.6rem;
  color: var(--azulsurexs);
  font-size: 0.9rem;
  line-height: 1.68;
  text-align: left;
}

.lp-operacion-problema__floating {
  display: flex;
  align-items: center;
  gap: 1rem;
  max-width: 32rem;
  margin: 0 auto;
  padding: 1rem 1.2rem;
  border: 1px solid color-mix(in srgb, var(--rojo) 38%, var(--blanco));
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 20px 50px rgba(0, 82, 144, 0.15);
  text-align: left;
}

.lp-operacion-problema__floating-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.6rem;
  background: var(--rojol3);
  box-shadow: 0 8px 18px rgba(195, 87, 75, 0.16);
}

.lp-operacion-problema__floating-icon img {
  width: 1.6rem;
  height: 1.6rem;
}

.lp-operacion-problema__floating p {
  margin: 0;
  color: var(--grisobscuro);
  font-size: 0.82rem;
  line-height: 1.5;
}






.lp-operacion-problema__table-card {
  padding: clamp(1.5rem, 3vw, 2.25rem);
  border: 1px solid rgba(255, 255, 255, 0.82);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow:
    0 22px 55px rgba(0, 82, 144, 0.16),
    inset 0 1px 0 var(--blanco);
}

.lp-operacion-problema__table-header,
.lp-operacion-problema__table-row {
  display: grid;
  grid-template-columns:
    minmax(12rem, .9fr) 3.2rem minmax(15rem, 1.1fr);

  gap: 1.5rem;
}

.lp-operacion-problema__column-equal,
.lp-operacion-problema__equal-cell {
  display: flex;
  justify-content: center;
  align-items: center;
}

.lp-operacion-problema__equal-icon {

  width: 2rem;
  height: 2rem;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: .6rem;

  background: var(--azull4);

  color: var(--azulsurexs);

  font-size: 1rem;

  font-weight: 800;

  font-family: var(--font-primary);

  box-shadow:
    0 8px 18px rgba(0, 82, 144, .12);

}

.lp-operacion-problema__table-header {
  align-items: center;
  margin-bottom: 1rem;
}

.lp-operacion-problema__column-heading {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  color: var(--grisobscuro);
  font-family: var(--font-primary);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.35;
}

.lp-operacion-problema__heading-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.55rem;
  box-shadow: 0 9px 18px rgba(20, 33, 53, 0.18);
}

.lp-operacion-problema__heading-icon--dark {
  background: var(--grisobscuro);
}

.lp-operacion-problema__heading-icon--coral {
  background: var(--rojol1);
  box-shadow: 0 9px 18px rgba(255, 119, 103, 0.22);
}

.lp-operacion-problema__heading-icon img {
  width: 1.6rem;
  height: 1.6rem;
}

.lp-operacion-problema__table-row {
  align-items: center;
  padding: 1rem 0;
  border-bottom: 1px solid color-mix(in srgb, var(--rojo) 38%, transparent);
}

.lp-operacion-problema__table-row:last-child {
  padding-bottom: 0.25rem;
  border-bottom: 0;
}

.lp-operacion-problema__problem {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  color: var(--grisobscuro);
  font-family: var(--font-primary);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.4;
}

.lp-operacion-problema__problem img {
  flex: 0 0 1.15rem;
  width: 1.15rem;
  height: 1.15rem;
}

.lp-operacion-problema__table-row>p {
  margin: 0;
  color: var(--gris);
  font-size: 0.82rem;
  line-height: 1.55;
}

@media (max-width: 1199.98px) {
  .lp-operacion-problema__glass {
    grid-template-columns: minmax(17rem, 0.8fr) minmax(31rem, 1.2fr);
    gap: 2.5rem;
    padding-inline: 2.5rem;
  }

  .lp-operacion-problema__table-header,
  .lp-operacion-problema__table-row {
    grid-template-columns: minmax(10rem, 0.9fr) minmax(13rem, 1.1fr);
    gap: 1rem;
  }
}

@media (max-width: 991.98px) {
  .lp-operacion-problema {
    padding-bottom: 5.5rem;
  }

  .lp-operacion-problema__glass {
    grid-template-columns: 1fr;
    gap: 3.5rem;
    padding: 3rem;
  }

  .lp-operacion-problema__content {
    max-width: 38rem;
    margin-inline: auto;
  }

  .lp-operacion-problema__table-card {
    max-width: 44rem;
    width: 100%;
    margin-inline: auto;
  }

}

@media (max-width: 767.98px) {
  .lp-operacion-problema {
    padding-bottom: 4.5rem;
  }

  .lp-operacion-problema__decor {
    width: 20rem;
    opacity: 0.4;
  }

  .lp-operacion-problema__glass {
    gap: 2.5rem;
    padding: 2rem 1rem;
    border-radius: 28px;
  }

  .lp-operacion-problema__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-operacion-problema__title {
    font-size: 2.5rem;
    line-height: 1.12;
  }

  .lp-operacion-problema__description {
    padding-inline: 0.35rem;
    font-size: 0.86rem;
  }

  .lp-operacion-problema__floating {
    align-items: flex-start;
    margin-inline: 0.35rem;
    padding: 0.9rem 1rem;
    gap: 0.75rem;
  }

  .lp-operacion-problema__floating-icon {
    flex-basis: 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
  }

  .lp-operacion-problema__floating p {
    font-size: 0.76rem;
  }

  .lp-operacion-problema__table-card {
    padding: 1.25rem 1rem;
    border-radius: 24px;
  }

  .lp-operacion-problema__table-header {
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
  }

  .lp-operacion-problema__column-heading {
    display: grid;
    justify-items: start;
    gap: 0.65rem;
    font-size: 0.76rem;
  }

  .lp-operacion-problema__heading-icon {
    width: 2.5rem;
    height: 2.5rem;
    flex-basis: 2.5rem;
  }

  .lp-operacion-problema__table-row {
    grid-template-columns: 1fr;
    gap: 0.55rem;
    padding: 0.9rem 0;
  }

  .lp-operacion-problema__problem {
    font-size: 0.82rem;
  }

  .lp-operacion-problema__table-row>p {
    padding-left: 1.95rem;
    font-size: 0.78rem;
  }
}

/* === CICLO COMPLETO DEL SEGURO === */
.lp-ciclo-seguro {
  position: relative;
  padding: 7rem 0;
  background: var(--blanco);
  color: var(--azulsurexsd1);
}

.lp-ciclo-seguro__panel {
  padding: clamp(3rem, 5vw, 5.25rem);
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: var(--blanco);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
}

.lp-ciclo-seguro__header {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(12rem, 0.45fr);
  align-items: center;
  gap: .5rem;
  margin: 0 0 3.25rem;
  text-align: left;
}

.lp-ciclo-seguro__header-content {
  min-width: 0;
}

.lp-ciclo-seguro__header-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.lp-ciclo-seguro__header-visual img {
  display: block;
  width: min(100%, 18rem);
  height: auto;
  filter: drop-shadow(0 18px 28px rgba(0, 82, 144, 0.12));
}

.lp-ciclo-seguro__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.35rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-ciclo-seguro__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-ciclo-seguro__title {
  max-width: 49rem;
  margin: 0 0 1.25rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-ciclo-seguro__title strong {
  color: var(--azulsurexs);
  font-weight: 800;
}

.lp-ciclo-seguro__description {
  max-width: 46rem;
  margin: 0;
  color: var(--azulsurexsd1);
  font-size: 0.95rem;
  line-height: 1.65;
  text-wrap: balance;
}

.lp-ciclo-seguro__timeline {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(0.75rem, 1.6vw, 1.5rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-ciclo-seguro__timeline::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 1.55rem;
  right: 15%;
  left: 2%;
  height: 2px;
  background: linear-gradient(90deg, var(--azulsurexsl2), var(--azulsurexsl1));
}

.lp-ciclo-seguro__step {
  position: relative;
  z-index: 1;
  min-width: 0;
  padding: 0 0.65rem 1rem;
  border: 1px solid transparent;
  border-radius: 18px;
  outline: none;
  cursor: default;
  transition:
    transform 0.3s ease,
    background 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-ciclo-seguro__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  margin-bottom: 1rem;
  border: 2px solid var(--azulsurexsl4);
  border-radius: 0.8rem;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 0 0 0.45rem var(--blanco);
  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-ciclo-seguro__step h3 {
  margin: 0 0 0.55rem;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.25;
  transition: color 0.3s ease;
}

.lp-ciclo-seguro__step p {
  margin: 0;
  color: var(--azulsurexs);
  font-size: 0.8rem;
  line-height: 1.55;
}

.lp-ciclo-seguro__step:hover,
.lp-ciclo-seguro__step:focus-visible {
  transform: translateY(-0.4rem);
  border-color: var(--azulsurexsl3);
  background: color-mix(in srgb, var(--azulsurexsl4) 38%, var(--blanco));
  box-shadow: 0 15px 32px rgba(0, 119, 188, 0.12);
}

.lp-ciclo-seguro__step:hover .lp-ciclo-seguro__number,
.lp-ciclo-seguro__step:focus-visible .lp-ciclo-seguro__number {
  border-color: var(--azulsurexsl1);
  background: var(--azulsurexsl1);
  color: var(--blanco);
  transform: scale(1.08);
  box-shadow:
    0 0 0 0.45rem var(--blanco),
    0 10px 24px rgba(0, 119, 188, 0.24);
}

.lp-ciclo-seguro__step:hover h3,
.lp-ciclo-seguro__step:focus-visible h3 {
  color: var(--azulsurexs);
}

@media (max-width: 1199.98px) {
  .lp-ciclo-seguro__panel {
    padding-inline: 2.5rem;
  }

  .lp-ciclo-seguro__step {
    padding-inline: 0.45rem;
  }

  .lp-ciclo-seguro__step h3 {
    font-size: 1rem;
  }

  .lp-ciclo-seguro__step p {
    font-size: 0.76rem;
  }
}

@media (max-width: 991.98px) {
  .lp-ciclo-seguro {
    padding: 5.5rem 0;
  }

  .lp-ciclo-seguro__panel {
    padding: 3.5rem 3rem;
  }

  .lp-ciclo-seguro__header {
    grid-template-columns: minmax(0, 1.2fr) minmax(10rem, 0.5fr);
    gap: 2rem;
    margin-bottom: 2.75rem;
  }

  .lp-ciclo-seguro__header-visual img {
    width: min(100%, 13rem);
  }

  .lp-ciclo-seguro__timeline {
    grid-template-columns: 1fr;
    gap: 1rem;
    max-width: 42rem;
    margin-inline: auto;
  }

  .lp-ciclo-seguro__timeline::before {
    top: 1.6rem;
    right: auto;
    bottom: 1.6rem;
    left: 1.6rem;
    width: 2px;
    height: auto;
    background: linear-gradient(180deg, var(--azulsurexsl2), var(--azulsurexsl1));
  }

  .lp-ciclo-seguro__step {
    display: grid;
    grid-template-columns: 3.2rem 1fr;
    align-items: start;
    gap: 1.25rem;
    padding: 0.75rem;
  }

  .lp-ciclo-seguro__number {
    margin-bottom: 0;
  }

  .lp-ciclo-seguro__step-content {
    padding-top: 0.25rem;
  }

  .lp-ciclo-seguro__step h3 {
    font-size: 1.08rem;
  }

  .lp-ciclo-seguro__step p {
    font-size: 0.82rem;
  }
}

@media (max-width: 767.98px) {
  .lp-ciclo-seguro {
    padding: 4.5rem 0;
  }

  .lp-ciclo-seguro__panel {
    padding: 2.5rem 1rem;
    border-radius: 24px;
  }

  .lp-ciclo-seguro__header {
    grid-template-columns: 1fr;
    gap: 1.75rem;
    text-align: center;
  }

  .lp-ciclo-seguro__title,
  .lp-ciclo-seguro__description {
    margin-inline: auto;
  }

  .lp-ciclo-seguro__header-visual img {
    width: min(70%, 12rem);
  }

  .lp-ciclo-seguro__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-ciclo-seguro__title {
    font-size: clamp(1.85rem, 8.5vw, 2.3rem);
    line-height: 1.12;
  }

  .lp-ciclo-seguro__description {
    font-size: 0.86rem;
    line-height: 1.6;
  }

  .lp-ciclo-seguro__timeline {
    gap: 0.65rem;
  }

  .lp-ciclo-seguro__step {
    grid-template-columns: 2.8rem 1fr;
    gap: 0.9rem;
    padding: 0.7rem 0.45rem;
  }

  .lp-ciclo-seguro__timeline::before {
    left: 1.38rem;
  }

  .lp-ciclo-seguro__number {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 0.7rem;
    font-size: 0.9rem;
    box-shadow: 0 0 0 0.35rem var(--blanco);
  }

  .lp-ciclo-seguro__step:hover,
  .lp-ciclo-seguro__step:focus-visible {
    transform: none;
  }

  .lp-ciclo-seguro__step h3 {
    font-size: 1rem;
  }

  .lp-ciclo-seguro__step p {
    font-size: 0.78rem;
  }
}

@media (prefers-reduced-motion: reduce) {

  .lp-ciclo-seguro__step,
  .lp-ciclo-seguro__number,
  .lp-ciclo-seguro__step h3 {
    transition: none;
  }
}

/* ==========================================================
   CTA PARTNERS
========================================================== */

.index-partners {
  padding: 4rem 0;
  margin-bottom: 0;
  background: #F6FBFF;
}

.index-partners__wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  /* Apilado para móviles */

  /* Degradado aplicado a TODO el fondo de la sección (colores sólidos basados en tu overlay) */
  background: linear-gradient(90deg, rgb(0, 41, 84) 0%, rgb(0, 82, 144) 38%, rgb(0, 119, 188) 100%);
}

/* Diseño a dos columnas para escritorio */
@media (min-width: 992px) {
  .index-partners__wrapper {
    flex-direction: row;
    align-items: stretch;
  }
}

.index-partners__content {
  position: relative;
  z-index: 3;
  flex: 1;
  /* Ocupa el 50% del espacio en escritorio */
  padding: 2.5rem 3.5rem;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.index-partners__image {
  position: relative;
  flex: 1;
  /* Ocupa el otro 50% */
  width: 100%;
  min-height: 250px;
  /* Altura mínima para cuando esté en móviles */

  /* Flexbox para centrar la imagen perfectamente */
  display: flex;
  align-items: center;
  /* Centrado vertical */
  justify-content: center;
  /* Centrado horizontal */
}

.index-partners__image img {
  position: relative;
  width: 80%;
  /* Controla el tamaño de la imagen flotando sobre el degradado */
  height: auto;
  object-fit: cover;
  z-index: 2;
  border-radius: 12px;
  /* Opcional: le da esquinas redondeadas a la imagen si no es PNG transparente */
}

/* ---- Resto de tus estilos originales se mantienen igual ---- */

.index-partners__badge {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .55rem 1rem;
  margin-bottom: 1.4rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .15);
  backdrop-filter: blur(12px);
  font-size: .9rem;
  font-weight: 600;
}

.index-partners__title {
  font-size: clamp(1.5rem, 3vw, 2.4rem);
  line-height: 1.08;
  color: white;
  margin-bottom: 1.4rem;
}

.index-partners__title strong {
  font-weight: 700;
}

.index-partners__description {
  max-width: 460px;
  font-size: .8rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, .88);
  margin-bottom: 2rem;
}

.index-partners__button {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
  align-self: flex-start;
  /* Evita que el botón se estire */
}

.index-partners__button img {
  width: 22px;
  height: 22px;
}








/* === DE LA CONTRATACIÓN A LA OPERACIÓN === */
.lp-implementacion-programa {
  padding: 2rem 0 7rem;
  background: #F6FBFF;
  color: var(--azulsurexsd1);
}

.lp-implementacion-programa__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(23rem, 0.88fr);
  align-items: stretch;
  gap: 2rem;
}

.lp-implementacion-programa__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: clamp(2rem, 4vw, 3.5rem);
  border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 34%, var(--blanco));
  border-radius: 28px;
  background: var(--blanco);
  box-shadow: 0 16px 42px rgba(0, 82, 144, 0.1);
}

.lp-implementacion-programa__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
  padding: 0.48rem 1.35rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-implementacion-programa__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-implementacion-programa__title {
  max-width: 38rem;
  margin: 0 0 1.25rem;
  color: var(--azulsurexsd2);
  font-family: var(--font-headline);
  font-size: 2.5rz;
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-implementacion-programa__title strong {
  display: block;
  color: var(--azulsurexsl1);
  font-weight: 800;
}

.lp-implementacion-programa__description {
  max-width: 38rem;
  margin: 0 0 1.75rem;
  color: var(--azulsurexs);
  font-size: 0.94rem;
  line-height: 1.72;
}

.lp-implementacion-programa__image {
  display: block;
  width: 100%;
  margin: 3rem 0 1.5rem;
  border-radius: 18px;
  object-fit: contain;
}

.lp-implementacion-programa__bullet {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.15rem;
  border: 1px solid color-mix(in srgb, var(--verde) 54%, var(--blanco));
  border-radius: 18px;
  background: var(--blanco);
  box-shadow: 0 16px 38px rgba(0, 82, 144, 0.12);
  margin-top:2.4rem;
}

.lp-implementacion-programa__bullet-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.6rem;
  background: linear-gradient(145deg, #E7F4FF, #CFE8FF);
  box-shadow: 0 8px 18px rgba(140, 154, 70, 0.16);
}

.lp-implementacion-programa__bullet-icon img {
  width: 1.55rem;
  height: 1.55rem;
}

.lp-implementacion-programa__bullet p {
  margin: 0;
  color: var(--azulsurexsd1);
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.5;
}

.lp-implementacion-programa__subtitle {
  margin: 0 0 1.5rem;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
}

.lp-implementacion-programa__features {
  display: grid;
}

.lp-implementacion-programa__feature {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 0.85rem 0;
  border-bottom: 1px solid var(--azulsurexsl3);
  transition:
    transform 0.3s ease,
    background 0.3s ease,
    padding 0.3s ease;
}

.lp-implementacion-programa__feature:last-child {
  border-bottom: 0;
}

.lp-implementacion-programa__feature:hover {
  padding-inline: 0.65rem;
  border-radius: 14px;
  background: color-mix(in srgb, var(--azulsurexsl4) 42%, var(--blanco));
  transform: translateX(0.25rem);
}

.lp-implementacion-programa__feature-icon {
  display: inline-flex;
  flex: 0 0 3.5rem;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 16px;
  background: linear-gradient(145deg, #E7F4FF, #CFE8FF);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-implementacion-programa__feature:hover .lp-implementacion-programa__feature-icon {
  box-shadow: 0 10px 24px rgba(0, 119, 188, 0.16);
  transform: scale(1.05);
}

.lp-implementacion-programa__feature-icon img {
  width: 1.65rem;
  height: 1.65rem;
  object-fit: contain;
}

.lp-implementacion-programa__feature h4 {
  margin: 0 0 0.3rem;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline) !important;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}

.lp-implementacion-programa__feature p {
  margin: 0;
  color: var(--azulsurexs);
  font-size: 0.78rem;
  line-height: 1.5;
}

.lp-implementacion-programa__media-placeholder {
  min-height: 10rem;
  margin-top: 1.5rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 28%, transparent);
  border-radius: 18px;
  background:
    radial-gradient(circle at 72% 22%, rgba(255, 255, 255, 0.34), transparent 36%),
    linear-gradient(135deg, var(--azulsurexsl4), var(--azulsurexsl3));
}

@media (max-width: 1199.98px) {
  .lp-implementacion-programa__grid {
    grid-template-columns: minmax(0, 1fr) minmax(21rem, 0.9fr);
  }

  .lp-implementacion-programa__card {
    padding: 2.5rem;
  }
}

@media (max-width: 991.98px) {
  .lp-implementacion-programa {
    padding: 1.5rem 0 5.5rem;
  }

  .lp-implementacion-programa__grid {
    grid-template-columns: 1fr;
  }

  .lp-implementacion-programa__card {
    max-width: 46rem;
    width: 100%;
    margin-inline: auto;
  }

  .lp-implementacion-programa__image {
    max-height: 28rem;
  }
}

@media (max-width: 767.98px) {
  .index-partners {
    padding: 3rem 0;
  }

  .lp-implementacion-programa {
    padding: 1rem 0 4.5rem;
  }

  .lp-implementacion-programa__grid {
    gap: 1rem;
  }

  .lp-implementacion-programa__card {
    padding: 2rem 1rem;
    border-radius: 24px;
  }

  .lp-implementacion-programa__eyebrow {
    align-self: center;
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
    text-align: center;
  }

  .lp-implementacion-programa__title,
  .lp-implementacion-programa__description {
    margin-inline: auto;
    text-align: center;
  }

  .lp-implementacion-programa__title {
    font-size: clamp(1.85rem, 8.5vw, 2.3rem);
    line-height: 1.12;
  }

  .lp-implementacion-programa__description {
    font-size: 0.86rem;
    line-height: 1.62;
  }

  .lp-implementacion-programa__image {
    margin-top: 0.5rem;
    border-radius: 14px;
  }

  .lp-implementacion-programa__bullet {
    align-items: flex-start;
    padding: 0.9rem 1rem;
    gap: 0.75rem;
  }

  .lp-implementacion-programa__bullet-icon {
    flex-basis: 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
  }

  .lp-implementacion-programa__bullet p {
    font-size: 0.76rem;
  }

  .lp-implementacion-programa__subtitle {
    text-align: center;
  }

  .lp-implementacion-programa__feature {
    gap: 0.85rem;
  }

  .lp-implementacion-programa__feature:hover {
    padding-inline: 0;
    background: transparent;
    transform: none;
  }

  .lp-implementacion-programa__feature-icon {
    flex-basis: 3rem;
    width: 3rem;
    height: 3rem;
    border-radius: 14px;
  }

  .lp-implementacion-programa__feature-icon img {
    width: 1.45rem;
    height: 1.45rem;
  }

  .lp-implementacion-programa__feature h4 {
    font-size: 0.94rem;
  }

  .lp-implementacion-programa__feature p {
    font-size: 0.76rem;
  }

  .lp-implementacion-programa__media-placeholder {
    min-height: 8rem;
    border-radius: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {

  .lp-implementacion-programa__feature,
  .lp-implementacion-programa__feature-icon {
    transition: none;
  }
}

/* === OPERACIÓN CONTINUA DURANTE LA VIGENCIA === */
.lp-operacion-continua {
  position: relative;
  overflow: hidden;
  padding: 8rem 0;
  background:
    radial-gradient(circle at 50% -10%,
      rgba(255, 255, 255, 0.18) 0%,
      rgba(255, 255, 255, 0.08) 18%,
      transparent 50%),
    radial-gradient(circle at 15% 20%,
      rgba(110, 190, 255, 0.18) 0%,
      transparent 40%),
    radial-gradient(circle at 85% 15%,
      rgba(255, 255, 255, 0.08) 0%,
      transparent 35%),
    linear-gradient(180deg,
      #1389D3 0%,
      #0077BC 35%,
      #0068A8 100%);
  color: var(--blanco);
  isolation: isolate;
}

.lp-operacion-continua::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -16rem;
  left: 50%;
  width: 56rem;
  height: 56rem;
  border-radius: 50%;
  background: radial-gradient(circle,
      rgba(255, 255, 255, 0.12) 0%,
      rgba(255, 255, 255, 0.05) 30%,
      transparent 70%);
  transform: translateX(-50%);
  pointer-events: none;
}

.lp-operacion-continua__dots {
  position: absolute;
  z-index: -1;
  width: 17.2rem;
  height: 18.2rem;
  background: url("../img/informativas/modelo-servicio/dots.svg") center/contain no-repeat;
  opacity: 0.72;
  pointer-events: none;
}

.lp-operacion-continua__dots--top {
  top: -2rem;
  left: -1.5rem;
}

.lp-operacion-continua__dots--bottom {
  right: -1rem;
  bottom: -2rem;
  transform: rotate(180deg);
}

.lp-operacion-continua .container {
  position: relative;
  z-index: 1;
}

.lp-operacion-continua__layout {
  display: grid;
  grid-template-columns: minmax(35rem, 1.18fr) minmax(19rem, 0.82fr);
  align-items: center;
  gap: clamp(3rem, 6vw, 6rem);
}

.lp-operacion-continua__content {
  text-align: center;
}

.lp-operacion-continua__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.2rem;
  padding: 0.48rem 1.35rem;
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-operacion-continua__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-operacion-continua__title {
  max-width: 32rem;
  margin: 0 auto 1.7rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 2.3rem;
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-operacion-continua__title strong {
  display: block;
  color: var(--blanco);
  font-weight: 800;
}

.lp-operacion-continua__illustration {
  display: block;
  width: clamp(10.5rem, 17vw, 14rem);
  max-height: 17rem;
  height: auto;
  margin: 0 auto 1.6rem;
  object-fit: contain;
  filter: drop-shadow(0 18px 28px rgba(0, 41, 84, 0.2));
}

.lp-operacion-continua__description {
  max-width: 32rem;
  margin: 0 auto 1.5rem;
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.88rem;
  line-height: 1.7;
  text-align: left;
}

.lp-operacion-continua__bullet {
  display: flex;
  align-items: center;
  gap: 1rem;
  max-width: 32rem;
  margin: 0 auto;
  padding: 1rem 1.15rem;
  border: 1px solid color-mix(in srgb, var(--verde) 54%, var(--blanco));
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 20px 50px rgba(0, 41, 84, 0.2);
  text-align: left;
}

.lp-operacion-continua__bullet-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.6rem;
  background: var(--verdel1);
  box-shadow: 0 8px 18px rgba(140, 154, 70, 0.16);
}

.lp-operacion-continua__bullet-icon img {
  width: 1.55rem;
  height: 1.55rem;
}

.lp-operacion-continua__bullet p {
  margin: 0;
  color: var(--azulsurexsd1);
  font-size: 0.8rem;
  line-height: 1.5;
}

.lp-operacion-continua__table-card {
  padding: clamp(1.5rem, 3vw, 2.25rem);
  border: 1px solid rgba(255, 255, 255, 0.84);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow:
    0 24px 58px rgba(0, 41, 84, 0.22),
    inset 0 1px 0 var(--blanco);
}

.lp-operacion-continua__table-header,
.lp-operacion-continua__table-row {
  display: grid;
  grid-template-columns: minmax(12rem, 0.95fr) minmax(14rem, 1.05fr);
  gap: 1.5rem;
}

.lp-operacion-continua__table-header {
  align-items: center;
  margin-bottom: 1rem;
}

.lp-operacion-continua__column-heading {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  color: var(--grisobscuro);
  font-family: var(--font-primary);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.35;
}

.lp-operacion-continua__heading-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.55rem;
  box-shadow: 0 9px 18px rgba(20, 33, 53, 0.18);
}

.lp-operacion-continua__heading-icon--dark {
  background: var(--azulsurexsd1);
}

.lp-operacion-continua__heading-icon--light {
  background: var(--azulsurexsl4);
  box-shadow: 0 9px 18px rgba(0, 119, 188, 0.16);
}

.lp-operacion-continua__heading-icon img {
  width: 1.6rem;
  height: 1.6rem;
}

.lp-operacion-continua__table-row {
  align-items: center;
  padding: 1rem 0;
  border-bottom: 1px solid var(--azulsurexsl3);
}

.lp-operacion-continua__table-row:last-child {
  padding-bottom: 0.25rem;
  border-bottom: 0;
}

.lp-operacion-continua__managed {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--grisobscuro);
  font-family: var(--font-primary);

  line-height: 1.42;
}

.lp-operacion-continua__managed>span {
  flex: 0 0 1.15rem;
  color: var(--verded1);
  font-size: .8rem;
  font-weight: 800;
  line-height: 1;
}

.lp-operacion-continua__managed strong {
  font-weight: 600;
  font-size: .9rem;
}

.lp-operacion-continua__table-row>p {
  margin: 0;
  color: var(--gris);
  font-size: .8rem;
  line-height: 1.55;
}

@media (max-width: 1199.98px) {
  .lp-operacion-continua__layout {
    grid-template-columns: minmax(30rem, 1.15fr) minmax(17rem, 0.85fr);
    gap: 2.5rem;
  }

  .lp-operacion-continua__table-header,
  .lp-operacion-continua__table-row {
    grid-template-columns: minmax(10rem, 0.95fr) minmax(12rem, 1.05fr);
    gap: 1rem;
  }
}

@media (max-width: 991.98px) {
  .lp-operacion-continua {
    padding: 6rem 0;
  }

  .lp-operacion-continua__layout {
    grid-template-columns: 1fr;
    gap: 3.5rem;
  }

  .lp-operacion-continua__content {
    order: -1;
    max-width: 40rem;
    margin-inline: auto;
  }

  .lp-operacion-continua__table-card {
    max-width: 44rem;
    width: 100%;
    margin-inline: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-operacion-continua {
    padding: 4.5rem 0;
  }

  .lp-operacion-continua__dots {
    width: 12rem;
    height: 13rem;
    opacity: 0.5;
  }

  .lp-operacion-continua__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-operacion-continua__title {
    font-size: clamp(1.85rem, 8.5vw, 2.3rem);
    line-height: 1.12;
  }

  .lp-operacion-continua__description {
    padding-inline: 0.35rem;
    font-size: 0.84rem;
  }

  .lp-operacion-continua__bullet {
    align-items: flex-start;
    margin-inline: 0.35rem;
    padding: 0.9rem 1rem;
    gap: 0.75rem;
  }

  .lp-operacion-continua__bullet-icon {
    flex-basis: 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
  }

  .lp-operacion-continua__bullet p {
    font-size: 0.76rem;
  }

  .lp-operacion-continua__table-card {
    padding: 1.25rem 1rem;
    border-radius: 24px;
  }

  .lp-operacion-continua__table-header {
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
  }

  .lp-operacion-continua__column-heading {
    display: grid;
    justify-items: start;
    gap: 0.65rem;
    font-size: 0.76rem;
  }

  .lp-operacion-continua__heading-icon {
    width: 2.5rem;
    height: 2.5rem;
    flex-basis: 2.5rem;
  }

  .lp-operacion-continua__table-row {
    grid-template-columns: 1fr;
    gap: 0.55rem;
    padding: 0.9rem 0;
  }

  .lp-operacion-continua__managed {
    font-size: 0.8rem;
  }

  .lp-operacion-continua__table-row>p {
    padding-left: 1.9rem;
    font-size: 0.76rem;
  }
}

/* === ATENCIÓN HUMANA ESPECIALIZADA === */
.lp-atencion-humana {
  --lp-atencion-background: #A1CEF5;
  --lp-atencion-gradient-start: #0B89D2;
  --lp-atencion-gradient-end: #005A9F;
  position: relative;
  overflow: hidden;
  padding: 7rem 0;
  background: var(--lp-atencion-background);
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-atencion-humana__decor {
  position: absolute;
  z-index: -1;
  width: clamp(18rem, 32vw, 28rem);
  aspect-ratio: 1;
  background: url("../img/informativas/modelo-servicio/decobkg.svg") center/contain no-repeat;
  opacity: 0.58;
  pointer-events: none;
}

.lp-atencion-humana__decor--top {
  top: -5rem;
  left: -7rem;
}

.lp-atencion-humana__decor--middle {
  top: 28%;
  right: -8rem;
  transform: scaleX(-1);
}

.lp-atencion-humana__decor--bottom {
  bottom: -8rem;
  left: 36%;
  transform: rotate(180deg);
}

.lp-atencion-humana .container {
  position: relative;
  z-index: 1;
}

.lp-atencion-humana__header {
  display: grid;
  grid-template-columns: minmax(20rem, 0.9fr) minmax(30rem, 1.1fr);
  align-items: center;
  gap: clamp(3rem, 7vw, 7rem);
  margin-bottom: 4rem;
}

.lp-atencion-humana__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
  padding: 0.48rem 1.2rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 72%, var(--blanco));
  border-radius: 999px;
  background: color-mix(in srgb, var(--blanco) 76%, transparent);
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 0.72rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-atencion-humana__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-atencion-humana__title {
  max-width: 35rem;
  margin: 0 0 1.5rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 3.5vw, 3.25rem);
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-atencion-humana__title strong {
  display: block;
  color: var(--azulsurexs);
  font-weight: 800;
}

.lp-atencion-humana__description {
  max-width: 34rem;
  margin: 0;
  color: var(--azulsurexsd1);
  font-size: 0.96rem;
  line-height: 1.72;
}
  
.lp-atencion-humana__visual {
  position: relative;
  display: flex;
  min-height: 17rem;
  align-items: flex-end;
  padding: 4rem 7rem 1.25rem 0;
}

.lp-atencion-humana__character {
  position: absolute;
  z-index: 2;
  top: -2rem;
  right: -1rem;
  width: clamp(14rem, 21vw, 18rem);
  height: auto;
  filter: drop-shadow(0 18px 28px rgba(0, 82, 144, 0.14));
}

.lp-atencion-humana__bullet {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  max-width: 32rem;
  padding: 1rem 1.2rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 40%, var(--blanco));
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 20px 50px rgba(0, 82, 144, 0.15);
}

.lp-atencion-humana__bullet-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.6rem;
  background: var(--azulsurexsl4);
  box-shadow: 0 8px 18px rgba(0, 119, 188, 0.14);
}

.lp-atencion-humana__bullet-icon img {
  width: 1.55rem;
  height: 1.55rem;
}

.lp-atencion-humana__bullet p {
  margin: 0;
  color: var(--grisobscuro);
  font-size: 0.8rem;
  line-height: 1.5;
}

.lp-atencion-humana__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
}

.lp-atencion-humana__card {
  display: flex;
  min-height: 21rem;
  flex-direction: column;
  padding: clamp(1.6rem, 2.8vw, 2.25rem);
  border: 1px solid color-mix(in srgb, var(--blanco) 28%, transparent);
  border-radius: 28px;
  background: linear-gradient(135deg, var(--lp-atencion-gradient-start) 0%, var(--lp-atencion-gradient-end) 100%);
  box-shadow: 0 18px 45px rgba(0, 82, 144, 0.16);
  color: var(--blanco);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-atencion-humana__card:hover {
  transform: translateY(-0.35rem);
  box-shadow: 0 24px 55px rgba(0, 82, 144, 0.24);
}

.lp-atencion-humana__card h3 {
  margin: 0 0 0.7rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.2;
}

.lp-atencion-humana__card-description {
  margin: 0 0 1.25rem;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.86rem;
  line-height: 1.55;
}

.lp-atencion-humana__card ul {
  display: grid;
  gap: 0.9rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-atencion-humana__card li {
  position: relative;
  padding-left: 1.65rem;
  color: var(--blanco);
  font-family: var(--font-primary);
  font-size: 0.82rem;
  line-height: 1.55;
}

.lp-atencion-humana__card li::before {
  content: "";
  position: absolute;
  top: 0.16rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  background: url("../img/iconos/sistema/blanco/check-circle.svg") center/contain no-repeat;
}

@media (max-width: 1199.98px) {
  .lp-atencion-humana__header {
    grid-template-columns: minmax(18rem, 0.85fr) minmax(26rem, 1.15fr);
    gap: 3rem;
  }

  .lp-atencion-humana__visual {
    padding-right: 5rem;
  }

  .lp-atencion-humana__character {
    right: -2rem;
    width: 13rem;
  }

  .lp-atencion-humana__cards {
    gap: 1.25rem;
  }
}

@media (max-width: 991.98px) {
  .lp-atencion-humana {
    padding: 5.5rem 0;
  }

  .lp-atencion-humana__header {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    max-width: 46rem;
    margin: 0 auto 3.5rem;
  }

  .lp-atencion-humana__intro {
    max-width: 60rem;
    margin-inline: auto;
    text-align: center;
  }

  .lp-atencion-humana__title,
  .lp-atencion-humana__description {
    margin-inline: auto;
  }

  .lp-atencion-humana__visual {
    width: 100%;
    max-width: 42rem;
    margin-inline: auto;
  }

  .lp-atencion-humana__cards {
    grid-template-columns: 1fr;
    max-width: 44rem;
    margin-inline: auto;
  }

  .lp-atencion-humana__card {
    min-height: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-atencion-humana {
    padding: 4.5rem 0;
  }

  .lp-atencion-humana__decor {
    width: 20rem;
    opacity: 0.42;
  }

  .lp-atencion-humana__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-atencion-humana__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-atencion-humana__description {
    font-size: 0.88rem;
    line-height: 1.62;
  }

  .lp-atencion-humana__visual {
    min-height: 0;
    flex-direction: column;
    align-items: center;
    padding: 0;
  }

  .lp-atencion-humana__character {
    position: static;
    width: 10rem;
    margin: 0 auto -1rem;
  }

  .lp-atencion-humana__bullet {
    align-items: flex-start;
    padding: 0.9rem 1rem;
    gap: 0.75rem;
  }

  .lp-atencion-humana__bullet-icon {
    flex-basis: 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
  }

  .lp-atencion-humana__bullet p {
    font-size: 0.76rem;
  }

  .lp-atencion-humana__cards {
    gap: 1rem;
  }

  .lp-atencion-humana__card {
    padding: 1.5rem 1.35rem;
    border-radius: 24px;
  }

  .lp-atencion-humana__card h3 {
    font-size: 1.18rem;
  }

  .lp-atencion-humana__card-description,
  .lp-atencion-humana__card li {
    font-size: 0.78rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-atencion-humana__card {
    transition: none;
  }
}

/* === RESPALDO EN MOMENTOS CRÍTICOS === */
.lp-respaldo-critico {
  position: relative;
  overflow: hidden;
  padding: 7rem 0;
  background: var(--blanco);
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-respaldo-critico__decor {
  position: absolute;
  z-index: -1;
  width: clamp(18rem, 30vw, 24.5rem);
  aspect-ratio: 389 / 226;
  background: url("../img/informativas/modelo-servicio/Vector.svg") center/contain no-repeat;
  opacity: 0.46;
  pointer-events: none;
}

.lp-respaldo-critico__decor--left {
  top: 48%;
  left: -7rem;
  transform: scaleX(-1);
}

.lp-respaldo-critico__decor--right {
  top: 5rem;
  right: -5rem;
}

.lp-respaldo-critico .container {
  position: relative;
  z-index: 1;
}

.lp-respaldo-critico__header {
  max-width: 57rem;
  margin: 0 auto 2.5rem;
  text-align: center;
}

.lp-respaldo-critico__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.3rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-respaldo-critico__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-respaldo-critico__title {
  max-width: 46rem;
  margin: 0 auto 1.25rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 3.6vw, 3.2rem);
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-respaldo-critico__title strong {
  color: var(--azulsurexs);
  font-weight: 800;
}

.lp-respaldo-critico__description {
  max-width: 54rem;
  margin: 0 auto;
  color: var(--azulsurexsd1);
  font-size: 0.94rem;
  line-height: 1.68;
  text-wrap: balance;
}

.lp-respaldo-critico__timeline-title {
  margin: 0 auto 1.5rem;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 1.1rem;
  font-weight: 700;
  text-align: center;
}

.lp-respaldo-critico__timeline {
  --timeline-progress: 0;
  position: relative;
  max-width: 66rem;
  margin: 0 auto;
  padding: 1rem 0 2rem;
}

.lp-respaldo-critico__track {
  position: absolute;
  top: 1.5rem;
  bottom: 2.5rem;
  left: 50%;
  width: 3px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--azulsurexsl4);
  transform: translateX(-50%);
}

.lp-respaldo-critico__progress {
  display: block;
  width: 100%;
  height: calc(var(--timeline-progress) * 100%);
  border-radius: inherit;
  background: linear-gradient(180deg, var(--azulsurexsl2), var(--azulsurexsl1));
  transition: height 0.12s linear;
}

.lp-respaldo-critico__step {
  position: relative;
  width: 50%;
  margin-bottom: 1.25rem;
  opacity: 1;
}

.lp-respaldo-critico__step--left {
  padding-right: 4rem;
}

.lp-respaldo-critico__step--right {
  margin-left: 50%;
  padding-left: 4rem;
}

.lp-respaldo-critico__marker {
  position: absolute;
  z-index: 3;
  top: 50%;
  width: 1rem;
  height: 1rem;
  border: 3px solid var(--azulsurexsl2);
  border-radius: 50%;
  background: var(--blanco);
  box-shadow: 0 0 0 0.35rem var(--blanco);
  transform: translateY(-50%);
  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease;
}

.lp-respaldo-critico__step--left .lp-respaldo-critico__marker {
  right: -0.5rem;
}

.lp-respaldo-critico__step--right .lp-respaldo-critico__marker {
  left: -0.5rem;
}

.lp-respaldo-critico__card {
  display: grid;
  grid-template-columns: 3.5rem 1fr;
  align-items: center;
  gap: 1rem;
  min-height: 9.5rem;
  padding: 1.35rem;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: var(--blanco);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-respaldo-critico__card:hover {
  transform: translateY(-0.3rem);
  border-color: var(--azulsurexsl1);
  box-shadow: 0 18px 45px rgba(0, 119, 188, 0.2);
}

.lp-respaldo-critico__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.65rem;
  background: linear-gradient(145deg, var(--azulsurexsl4), var(--azulsurexsl3));
  box-shadow: 0 9px 20px rgba(0, 119, 188, 0.14);
}

.lp-respaldo-critico__icon img {
  width: 1.75rem;
  height: 1.75rem;
}

.lp-respaldo-critico__card h4 {
  margin: 0 0 0.4rem;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline) !important;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.25;
}

.lp-respaldo-critico__card p {
  margin: 0;
  color: var(--azulsurexs);
  font-size: 0.8rem;
  line-height: 1.55;
}

.lp-respaldo-critico__timeline.is-animated .lp-respaldo-critico__step {
  opacity: 0;
  transform: translateY(1.5rem);
  transition:
    opacity 0.65s ease,
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp-respaldo-critico__timeline.is-animated .lp-respaldo-critico__step.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.lp-respaldo-critico__timeline.is-animated .lp-respaldo-critico__step.is-visible .lp-respaldo-critico__marker {
  border-color: var(--azulsurexsl1);
  background: var(--azulsurexsl1);
  transform: translateY(-50%) scale(1.12);
}

.lp-respaldo-critico__bullet {
  display: grid;
  grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.1fr);
  align-items: stretch;
  width: 100%;
  max-width: 68rem;
  margin: 2.25rem auto 0;
  padding: 0.65rem;
  overflow: hidden;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: var(--blanco);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
  text-align: left;
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-respaldo-critico__bullet:hover {
  border-color: var(--azulsurexsl1);
  box-shadow: 0 18px 45px rgba(0, 119, 188, 0.2);
  transform: translateY(-0.3rem);
}

.lp-respaldo-critico__bullet-media {
  position: relative;
  min-width: 0;
  min-height: 19rem;
  margin: 0;
  overflow: hidden;
  border-radius: 22px;
  background: var(--azulsurexsl4);
}

.lp-respaldo-critico__bullet-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg,
      color-mix(in srgb, var(--azulsurexsl1) 12%, transparent),
      transparent 55%);
  pointer-events: none;
}

.lp-respaldo-critico__bullet-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp-respaldo-critico__bullet:hover .lp-respaldo-critico__bullet-media img {
  transform: scale(1.025);
}

.lp-respaldo-critico__bullet-content {
  display: flex;
  min-width: 0;
  padding: 2rem 2.15rem;
  flex-direction: column;
  justify-content: center;
}

.lp-respaldo-critico__bullet strong {
  display: block;
  margin-bottom: 1.25rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.25;
  text-wrap: balance;
}

.lp-respaldo-critico__bullet ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-respaldo-critico__bullet li {
  display: flex;
  min-width: 0;
  min-height: 3.5rem;
  padding: 0.7rem 0.75rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 16px;
  background: #F6FBFF;
  color: var(--azulsurexsd1);
  font-family: var(--font-primary);
  font-size: 0.76rem;
  font-weight: 600;
  line-height: 1.4;
  align-items: center;
  gap: 0.6rem;
}

.lp-respaldo-critico__bullet li:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.lp-respaldo-critico__bullet li::before {
  content: "✓";
  display: inline-flex;
  width: 1.45rem;
  height: 1.45rem;
  flex: 0 0 1.45rem;
  border-radius: 50%;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-size: 0.78rem;
  font-weight: 800;
  align-items: center;
  justify-content: center;
}

@media (max-width: 991.98px) {
  .lp-respaldo-critico {
    padding: 5.5rem 0;
  }

  .lp-respaldo-critico__timeline {
    max-width: 44rem;
  }

  .lp-respaldo-critico__track {
    left: 1.25rem;
    transform: none;
  }

  .lp-respaldo-critico__step,
  .lp-respaldo-critico__step--right {
    width: 100%;
    margin-left: 0;
    padding-right: 0;
    padding-left: 3.75rem;
  }

  .lp-respaldo-critico__step--left .lp-respaldo-critico__marker,
  .lp-respaldo-critico__step--right .lp-respaldo-critico__marker {
    right: auto;
    left: 0.75rem;
  }

  .lp-respaldo-critico__card {
    min-height: auto;
  }

  .lp-respaldo-critico__bullet {
    grid-template-columns: minmax(15rem, 0.8fr) minmax(0, 1.2fr);
  }

  .lp-respaldo-critico__bullet-content {
    padding: 1.6rem;
  }

  .lp-respaldo-critico__bullet ul {
    grid-template-columns: 1fr;
  }

  .lp-respaldo-critico__bullet li:last-child:nth-child(odd) {
    grid-column: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-respaldo-critico {
    padding: 4.5rem 0;
  }

  .lp-respaldo-critico__decor {
    width: 17rem;
    opacity: 0.34;
  }

  .lp-respaldo-critico__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-respaldo-critico__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-respaldo-critico__description {
    font-size: 0.86rem;
    line-height: 1.62;
  }

  .lp-respaldo-critico__timeline-title {
    font-size: 1rem;
  }

  .lp-respaldo-critico__track {
    left: 1rem;
  }

  .lp-respaldo-critico__step,
  .lp-respaldo-critico__step--right {
    padding-left: 2.8rem;
  }

  .lp-respaldo-critico__step--left .lp-respaldo-critico__marker,
  .lp-respaldo-critico__step--right .lp-respaldo-critico__marker {
    left: 0.5rem;
  }

  .lp-respaldo-critico__card {
    grid-template-columns: 3rem 1fr;
    gap: 0.85rem;
    padding: 1.15rem;
    border-radius: 24px;
  }

  .lp-respaldo-critico__icon {
    width: 3rem;
    height: 3rem;
  }

  .lp-respaldo-critico__icon img {
    width: 1.5rem;
    height: 1.5rem;
  }

  .lp-respaldo-critico__card h4 {
    font-size: 1rem;
  }

  .lp-respaldo-critico__card p {
    font-size: 0.76rem;
  }

  .lp-respaldo-critico__bullet {
    grid-template-columns: 1fr;
    margin-top: 1.75rem;
    padding: 0.55rem;
    border-radius: 24px;
  }

  .lp-respaldo-critico__bullet-media {
    min-height: 0;
    aspect-ratio: 16 / 9;
    border-radius: 19px;
  }

  .lp-respaldo-critico__bullet-content {
    padding: 1.35rem 1rem 1rem;
  }

  .lp-respaldo-critico__bullet strong {
    margin-bottom: 1rem;
    font-size: 1.15rem;
  }

  .lp-respaldo-critico__bullet ul {
    grid-template-columns: 1fr;
    gap: 0.2rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-respaldo-critico__progress {
    height: 100%;
    transition: none;
  }

  .lp-respaldo-critico__timeline.is-animated .lp-respaldo-critico__step {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .lp-respaldo-critico__card,
  .lp-respaldo-critico__bullet,
  .lp-respaldo-critico__bullet-media img,
  .lp-respaldo-critico__marker {
    transition: none;
  }

  .lp-respaldo-critico__bullet:hover,
  .lp-respaldo-critico__bullet:hover .lp-respaldo-critico__bullet-media img {
    transform: none;
  }
}

/* === TRAZABILIDAD PARA DECIDIR MEJOR === */
.lp-trazabilidad {
  position: relative;
  overflow: hidden;
  padding: 7rem 0;
  background:
    radial-gradient(circle at 6% 24%, rgba(168, 213, 255, 0.42), transparent 25rem),
    radial-gradient(circle at 94% 78%, rgba(161, 206, 245, 0.34), transparent 27rem),
    #F6FBFF;
  color: var(--azulsurexsd1);
}

.lp-trazabilidad__header {
  max-width: 58rem;
  margin: 0 auto 4rem;
  text-align: center;
}

.lp-trazabilidad__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.3rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-trazabilidad__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-trazabilidad__title {
  max-width: 49rem;
  margin: 0 auto 1.2rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 3.6vw, 3.15rem);
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-trazabilidad__title strong {
  color: var(--azulsurexs);
  font-weight: 800;
}

.lp-trazabilidad__description {
  max-width: 51rem;
  margin: 0 auto;
  color: var(--azulsurexsd1);
  font-size: 0.94rem;
  line-height: 1.68;
  text-wrap: balance;
}

.lp-trazabilidad__flow {
  position: relative;
  display: grid;
  grid-template-columns: minmax(19rem, 1fr) minmax(17rem, 18rem) minmax(19rem, 1fr);
  align-items: center;
  gap: 1.2rem;
  max-width: 80rem;
  margin: 0 auto;
}

.lp-trazabilidad__flow::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 50%;
  right: 27%;
  left: 27%;
  height: 2px;
  background: linear-gradient(90deg, var(--azulsurexsl3), var(--azulsurexsl1), var(--azulsurexsl3));
  transform: translateY(-50%);
}

.lp-trazabilidad__panel {
  position: relative;
  z-index: 1;
  padding: 2rem;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
}

.lp-trazabilidad__panel-heading {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 4.3rem;
  margin-bottom: 1rem;
}

.lp-trazabilidad__panel-icon {
  display: inline-flex;
  flex: 0 0 3.25rem;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 0.7rem;
  background: linear-gradient(145deg, var(--azulsurexsl4), var(--azulsurexsl3));
  box-shadow: 0 9px 20px rgba(0, 119, 188, 0.14);
}

.lp-trazabilidad__panel-icon img {
  width: 1.65rem;
  height: 1.65rem;
}

.lp-trazabilidad__panel-label {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--azulsurexsl1);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.04rem;
  text-transform: uppercase;
}

.lp-trazabilidad__panel h3 {
  margin: 0;
  color: var(--azulsurexs);
  font-family: var(--font-headline) !important;
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.25;
}

.lp-trazabilidad__panel ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-trazabilidad__panel li {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  min-height: 3.65rem;
  padding: 0.7rem 0;
  border-bottom: 1px solid var(--azulsurexsl3);
  color: var(--grisobscuro);
  font-size: 0.82rem;
  line-height: 1.45;
  transition:
    color 0.25s ease,
    transform 0.25s ease;
}

.lp-trazabilidad__panel li:last-child {
  border-bottom: 0;
}

.lp-trazabilidad__panel--review li:hover {
  color: var(--azulsurexs);
  transform: translateX(0.3rem);
}

.lp-trazabilidad__panel--result li:hover {
  color: var(--azulsurexs);
  transform: translateX(-0.3rem);
}

.lp-trazabilidad__check {
  display: inline-flex;
  flex: 0 0 1.35rem;
  align-items: center;
  justify-content: center;
}

.lp-trazabilidad__check img {
  width: 1.25rem;
  height: 1.25rem;
}

.lp-trazabilidad__core {
  position: relative;
  z-index: 2;
  display: flex;
  width: 100%;
  min-height: 18rem;
  margin: 0 auto;
  padding: 1.65rem 1.4rem;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background:
    linear-gradient(
      145deg,
      var(--blanco) 0%,
      color-mix(in srgb, var(--azulsurexsl4) 72%, var(--blanco)) 52%,
      color-mix(in srgb, var(--aqual3) 78%, var(--azulsurexsl4)) 100%
    );
  box-shadow:
    0 16px 40px rgba(0, 119, 188, 0.12),
    inset 0 1px 0 var(--blanco);
  color: var(--azulsurexsd1);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-trazabilidad__core:hover {
  border-color: var(--azulsurexsl1);
  box-shadow:
    0 22px 48px rgba(0, 119, 188, 0.18),
    inset 0 1px 0 var(--blanco);
  transform: translateY(-0.25rem);
}

.lp-trazabilidad__core::before,
.lp-trazabilidad__core::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1rem;
  height: 1rem;
  border: 3px solid var(--azulsurexsl2);
  border-radius: 50%;
  background: var(--blanco);
  box-shadow: 0 0 0 0.35rem #F6FBFF;
  transform: translateY(-50%);
}

.lp-trazabilidad__core::before {
  left: -0.55rem;
}

.lp-trazabilidad__core::after {
  right: -0.55rem;
}

.lp-trazabilidad__core-logo {
  display: block;
  width: 6.8rem;
  margin: 0 auto 1rem;
}

.lp-trazabilidad__core-logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 5.5rem;
  object-fit: contain;
  transform-origin: center;
}

.lp-trazabilidad__core:hover .lp-trazabilidad__core-logo img {
  animation: lp-trazabilidad-ammia-wiggle 0.65s ease-in-out;
}

.lp-trazabilidad__core h3 {
  margin: 0 0 0.75rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline) !important;
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.22;
  text-wrap: balance;
}

.lp-trazabilidad__core p {
  margin: 0;
  color: var(--azulsurexsd1);
  font-size: 0.79rem;
  line-height: 1.62;
}

@keyframes lp-trazabilidad-ammia-wiggle {
  0%,
  100% {
    transform: translateX(0) rotate(0);
  }
  25% {
    transform: translateX(-0.18rem) rotate(-1.25deg);
  }
  75% {
    transform: translateX(0.18rem) rotate(1.25deg);
  }
}

.lp-trazabilidad__microcopy {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  max-width: 47rem;
  margin: 2.5rem auto 0;
  padding: 1rem 1.2rem;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
}

.lp-trazabilidad__microcopy-icon {
  display: inline-flex;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.65rem;
   background: linear-gradient(145deg, #E7F4FF, #CFE8FF);
  box-shadow: 0 8px 18px rgba(103, 167, 0, 0.14);
}

.lp-trazabilidad__microcopy-icon img {
  width: 1.5rem;
  height: 1.5rem;
}

.lp-trazabilidad__microcopy p {
  margin: 0;
  color: var(--grisobscuro);
  font-size: 0.8rem;
  line-height: 1.5;
}

@media (max-width: 1199.98px) {
  .lp-trazabilidad__flow {
    grid-template-columns: minmax(17rem, 1fr) minmax(14rem, 15rem) minmax(17rem, 1fr);
    gap: 0.85rem;
    max-width: 72rem;
  }

  .lp-trazabilidad__panel {
    padding: 1.65rem;
  }

  .lp-trazabilidad__core {
    padding-inline: 1.15rem;
  }

  .lp-trazabilidad__core-logo {
    width: 5.8rem;
  }

  .lp-trazabilidad__core h3 {
    font-size: 1.08rem;
  }

  .lp-trazabilidad__core p {
    font-size: 0.74rem;
  }
}

@media (max-width: 991.98px) {
  .lp-trazabilidad {
    padding: 5.5rem 0;
  }

  .lp-trazabilidad__header {
    margin-bottom: 3rem;
  }

  .lp-trazabilidad__flow {
    grid-template-columns: 1fr;
    gap: 1.5rem;
    max-width: 42rem;
  }

  .lp-trazabilidad__flow::before {
    top: 20%;
    bottom: 20%;
    left: 50%;
    width: 2px;
    height: auto;
    background: linear-gradient(180deg, var(--azulsurexsl3), var(--azulsurexsl1), var(--azulsurexsl3));
    transform: translateX(-50%);
  }

  .lp-trazabilidad__panel {
    width: calc(100% - 3rem);
  }

  .lp-trazabilidad__panel--review {
    justify-self: start;
  }

  .lp-trazabilidad__panel--result {
    justify-self: end;
  }

  .lp-trazabilidad__core {
    order: 2;
    width: calc(100% - 3rem);
    max-width: 32rem;
    min-height: auto;
    padding: 1.65rem;
    border-radius: 28px;
    flex-direction: column;
  }

  .lp-trazabilidad__core::before,
  .lp-trazabilidad__core::after {
    top: auto;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }

  .lp-trazabilidad__core::before {
    top: -0.55rem;
  }

  .lp-trazabilidad__core::after {
    right: auto;
    bottom: -0.55rem;
  }

  .lp-trazabilidad__core-logo {
    width: 6.2rem;
    margin-bottom: 0.8rem;
  }

  .lp-trazabilidad__panel--result {
    order: 3;
  }
}

@media (max-width: 767.98px) {
  .lp-trazabilidad {
    padding: 4.5rem 0;
  }

  .lp-trazabilidad__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-trazabilidad__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-trazabilidad__description {
    font-size: 0.86rem;
    line-height: 1.62;
  }

  .lp-trazabilidad__flow {
    gap: 1.25rem;
  }

  .lp-trazabilidad__flow::before {
    display: none;
  }

  .lp-trazabilidad__panel {
    width: 100%;
    padding: 1.3rem;
    border-radius: 24px;
  }

  .lp-trazabilidad__panel-heading {
    margin-bottom: 0.7rem;
  }

  .lp-trazabilidad__panel-icon {
    flex-basis: 3rem;
    width: 3rem;
    height: 3rem;
  }

  .lp-trazabilidad__panel h3 {
    font-size: 1.08rem;
  }

  .lp-trazabilidad__panel li {
    min-height: 3.25rem;
    font-size: 0.77rem;
  }

  .lp-trazabilidad__core {
    width: 100%;
    min-height: auto;
    padding: 1.5rem 1.25rem;
    border-radius: 24px;
  }

  .lp-trazabilidad__core h3 {
    font-size: 1.1rem;
  }

  .lp-trazabilidad__core p {
    font-size: 0.78rem;
  }

  .lp-trazabilidad__core::before,
  .lp-trazabilidad__core::after {
    display: none;
  }

  .lp-trazabilidad__microcopy {
    align-items: flex-start;
    margin-top: 1.5rem;
    padding: 1rem;
    border-radius: 24px;
  }

  .lp-trazabilidad__microcopy-icon {
    flex-basis: 2.75rem;
    width: 2.75rem;
    height: 2.75rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-trazabilidad__panel li,
  .lp-trazabilidad__core {
    transition: none;
  }

  .lp-trazabilidad__core:hover {
    transform: none;
  }

  .lp-trazabilidad__core:hover .lp-trazabilidad__core-logo img {
    animation: none;
  }
}

/* === MODELO HUMAN + TECH === */
.lp-human-tech {
  position: relative;
  overflow: hidden;
  padding: 7rem 0;
  background: var(--blanco);
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-human-tech__header {
  position: relative;
  z-index: 3;
  max-width: 58rem;
  margin: 0 auto 2rem;
  text-align: center;
}

.lp-human-tech__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.3rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-human-tech__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-human-tech__title {
  max-width: 47rem;
  margin: 0 auto 1.2rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 3.6vw, 3.15rem);
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-human-tech__title strong {
  color: var(--aqual1);
  font-weight: 800;
}

.lp-human-tech__description {
  max-width: 51rem;
  margin: 0 auto;
  color: var(--azulsurexsd1);
  font-size: 0.94rem;
  line-height: 1.68;
  text-wrap: balance;
}

.lp-human-tech__map {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 72rem;
  min-height: 46rem;
  margin: 0 auto 2.5rem;
}

.lp-human-tech__dots {
  position: absolute;
  z-index: -1;
  top: 14rem;
  left: 50%;
  width: min(50rem, 72vw);
  aspect-ratio: 1;
  background: url("../img/informativas/modelo-servicio/bkgd-dots.svg") center/contain no-repeat;
  opacity: .09;
  transform: translate(-50%, -50%);
  transform-origin: center;
  animation: lp-modelo-dots-spin 55s linear infinite;
  pointer-events: none;
}

.lp-human-tech__core {
  position: absolute;
  z-index: 3;
  top: 5.5rem;
  left: 50%;
  display: flex;
  width: 17rem;
  height: 17rem;
  padding: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.56);
  border-radius: 50%;
  background: linear-gradient(145deg, #0B89D2 0%, #005A9F 100%);
  box-shadow:
    0 24px 55px rgba(0, 82, 144, 0.24),
    0 0 0 1rem rgba(255, 255, 255, 0.78),
    0 0 0 1.1rem var(--azulsurexsl2);
  color: var(--blanco);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transform: translateX(-50%);
  text-align: center;
}

.lp-human-tech__core span {
  margin-bottom: 0.3rem;
  font-family: var(--font-headline);
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-human-tech__core strong {
  font-family: var(--font-headline);
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.1;
}

.lp-human-tech__core i {
  display: block;
  width: 7rem;
  height: 1px;
  margin: 1rem 0 0.8rem;
  background: rgba(255, 255, 255, 0.62);
}

.lp-human-tech__core img {
  width: 7.5rem;
  max-height: 2.6rem;
  object-fit: contain;
}

.lp-human-tech__connector {
  position: absolute;
  z-index: 1;
  display: block;
  background: var(--azulsurexsl2);
}

.lp-human-tech__connector::before,
.lp-human-tech__connector::after {
  content: "";
  position: absolute;
  width: 0.9rem;
  height: 0.9rem;
  border: 3px solid var(--azulsurexsl2);
  border-radius: 50%;
  background: var(--blanco);
  box-shadow: 0 0 0 0.25rem var(--blanco);
}

.lp-human-tech__connector--left,
.lp-human-tech__connector--right {
  top: 14rem;
  width: 7rem;
  height: 2px;
}

.lp-human-tech__connector--left {
  left: 21.5rem;
}

.lp-human-tech__connector--right {
  right: 21.5rem;
}

.lp-human-tech__connector--left::before,
.lp-human-tech__connector--right::before {
  top: 50%;
  left: -0.45rem;
  transform: translateY(-50%);
}

.lp-human-tech__connector--left::after,
.lp-human-tech__connector--right::after {
  top: 50%;
  right: -0.45rem;
  transform: translateY(-50%);
}

.lp-human-tech__connector--bottom {
  top: 22.5rem;
  left: 50%;
  width: 2px;
  height: 7.5rem;
}

.lp-human-tech__connector--bottom::before {
  top: -0.45rem;
  left: 50%;
  transform: translateX(-50%);
}

.lp-human-tech__connector--bottom::after {
  bottom: -0.45rem;
  left: 50%;
  transform: translateX(-50%);
}

.lp-human-tech__card {
  --lp-human-card-accent: var(--azulsurexsl2);
  --lp-human-card-border: var(--azulsurexsl3);
  --lp-human-card-bg: var(--azulsurexsl4);
  position: absolute;
  z-index: 2;
  width: 21.5rem;
  min-height: 16.5rem;
  padding: 5.6rem 1.6rem 1.6rem;
  border: 2px solid var(--lp-human-card-border);
  border-radius: 28px;
  background: linear-gradient(160deg, var(--blanco) 42%, var(--lp-human-card-bg) 145%);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
  text-align: center;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-human-tech__card:hover {
  transform: translateY(-0.4rem);
  box-shadow: 0 18px 45px color-mix(in srgb, var(--lp-human-card-accent) 24%, transparent);
}

.lp-human-tech__card--people {
  --lp-human-card-accent: var(--rojo);
  --lp-human-card-border: var(--rojol1);
  --lp-human-card-bg: var(--rojol3);
  top: 6.5rem;
  left: 0;
}

.lp-human-tech__card--tech {
  --lp-human-card-accent: var(--aqua);
  --lp-human-card-border: var(--aqual1);
  --lp-human-card-bg: var(--aqual3);
  top: 6.5rem;
  right: 0;
}

.lp-human-tech__card--governance {
  --lp-human-card-accent: var(--amarillo);
  --lp-human-card-border: var(--amarillol1);
  --lp-human-card-bg: var(--amarillol3);
  top: 30rem;
  left: 50%;
  transform: translateX(-50%);
}

.lp-human-tech__card--governance:hover {
  transform: translateX(-50%) translateY(-0.4rem);
}

.lp-human-tech__card-icon {
  position: absolute;
  top: -4.75rem;
  left: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 9.5rem;
  height: 9.5rem;
  overflow: hidden;
  border: 0.42rem solid var(--blanco);
  border-radius: 50%;
  background: var(--blanco);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--lp-human-card-accent) 30%, transparent);
  transform: translateX(-50%) scale(1);
  transition:
    transform 0.4s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.4s ease;
}

.lp-human-tech__card-icon img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp-human-tech__card:hover .lp-human-tech__card-icon {
  box-shadow: 0 17px 34px color-mix(in srgb, var(--lp-human-card-accent) 40%, transparent);
  transform: translateX(-50%) scale(1.1);
}

.lp-human-tech__card:hover .lp-human-tech__card-icon img {
  transform: scale(1.04);
}

.lp-human-tech__card-kicker {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 0.82rem;
  font-weight: 700;
}

.lp-human-tech__card h3 {
  margin: 0 0 0.8rem;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline) !important;
  font-size: 1.08rem;
  font-weight: 600;
  line-height: 1.25;
}

.lp-human-tech__card p {
  margin: 0;
  color: var(--azulsurexsd1);
  font-size: 0.78rem;
  line-height: 1.6;
}

.lp-human-tech__results {
  position: relative;
  z-index: 3;
  max-width: 68rem;
  margin: 0 auto;
  padding: 1.8rem 2rem 2rem;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 28px;
  background: linear-gradient(135deg, #0B89D2 0%, #005A9F 100%);
  box-shadow: 0 18px 45px rgba(0, 82, 144, 0.2);
  color: var(--blanco);
}

.lp-human-tech__results>h3 {
  margin: 0 0 1.5rem;
  color: var(--blanco);
  font-family: var(--font-headline) !important;
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.lp-human-tech__results-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
}

.lp-human-tech__result {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.85rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.3;
}

.lp-human-tech__result-icon {
  display: inline-flex;
  flex: 0 0 3.6rem;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 0.65rem;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.3), rgba(0, 82, 144, 0.38));
  box-shadow: 0 12px 26px rgba(0, 82, 144, 0.2);
  transition: transform 0.35s ease;
}

.lp-human-tech__result:hover .lp-human-tech__result-icon {
  transform: scale(1.08);
}

.lp-human-tech__result-icon img {
  width: 1.9rem;
  height: 1.9rem;
  object-fit: contain;
}

@media (max-width: 1199.98px) {
  .lp-human-tech__map {
    max-width: 62rem;
  }

  .lp-human-tech__card {
    width: 18rem;
    padding-inline: 1.3rem;
  }

  .lp-human-tech__connector--left {
    left: 18rem;
  }

  .lp-human-tech__connector--right {
    right: 18rem;
  }

  .lp-human-tech__results {
    max-width: 62rem;
  }

  .lp-human-tech__results-grid {
    gap: 1rem;
  }

  .lp-human-tech__result {
    font-size: 0.8rem;
  }
}

@media (max-width: 991.98px) {
  .lp-human-tech {
    padding: 5.5rem 0;
  }

  .lp-human-tech__header {
    margin-bottom: 3.5rem;
  }

  .lp-human-tech__map {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6rem 1.25rem;
    max-width: 44rem;
    min-height: 0;
    margin-bottom: 3rem;
  }

  .lp-human-tech__dots {
    top: 8.5rem;
    width: 38rem;
    opacity: 0.55;
  }

  .lp-human-tech__connector {
    display: none;
  }

  .lp-human-tech__core {
    position: relative;
    top: auto;
    left: auto;
    grid-column: 1 / -1;
    width: 15rem;
    height: 15rem;
    margin: 0 auto 1rem;
    transform: none;
  }

  .lp-human-tech__card,
  .lp-human-tech__card--people,
  .lp-human-tech__card--tech,
  .lp-human-tech__card--governance {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
    min-height: 16.5rem;
    transform: none;
  }

  .lp-human-tech__card--governance {
    grid-column: 1 / -1;
    width: calc(50% - 0.625rem);
    justify-self: center;
  }

  .lp-human-tech__card--governance:hover {
    transform: translateY(-0.4rem);
  }

  .lp-human-tech__results {
    max-width: 44rem;
  }

  .lp-human-tech__results-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .lp-human-tech {
    padding: 4.5rem 0;
  }

  .lp-human-tech__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-human-tech__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-human-tech__description {
    font-size: 0.86rem;
    line-height: 1.62;
  }

  .lp-human-tech__map {
    grid-template-columns: 1fr;
    gap: 5.5rem;
    margin-bottom: 2rem;
  }

  .lp-human-tech__dots {
    top: 7.5rem;
    width: 32rem;
    opacity: 0.44;
  }

  .lp-human-tech__core {
    grid-column: auto;
    width: 13.5rem;
    height: 13.5rem;
    padding: 1.5rem;
  }

  .lp-human-tech__core strong {
    font-size: 1.35rem;
  }

  .lp-human-tech__core img {
    width: 6.6rem;
  }

  .lp-human-tech__card,
  .lp-human-tech__card--governance {
    grid-column: auto;
    width: 100%;
    min-height: auto;
    padding: 5.2rem 1.25rem 1.5rem;
    border-radius: 24px;
  }

  .lp-human-tech__card-icon {
    top: -4.05rem;
    width: 8.1rem;
    height: 8.1rem;
  }

  .lp-human-tech__card p {
    font-size: 0.77rem;
  }

  .lp-human-tech__results {
    padding: 1.5rem 1.2rem;
    border-radius: 24px;
  }

  .lp-human-tech__results-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .lp-human-tech__result-icon {
    flex-basis: 3.3rem;
    width: 3.3rem;
    height: 3.3rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-human-tech__dots {
    animation: none;
  }

  .lp-human-tech__card,
  .lp-human-tech__card-icon,
  .lp-human-tech__card-icon img,
  .lp-human-tech__result-icon {
    transition: none;
  }

  .lp-human-tech__card:hover .lp-human-tech__card-icon {
    transform: translateX(-50%);
  }

  .lp-human-tech__card:hover .lp-human-tech__card-icon img {
    transform: none;
  }
}

/* Aísla el mapa Human + Tech de las variantes heredadas de esta página. */
.lp-human-tech--modelo-servicio .lp-human-tech__header {
  width: 100%;
}

.lp-human-tech--modelo-servicio .lp-human-tech__title {
  width: 100%;
  margin: 0 auto 1.2rem;
  text-align: center;
}

.lp-human-tech--modelo-servicio .lp-human-tech__description {
  color: var(--blanco);
  font-size: 1.05rem;
}

.lp-human-tech--modelo-servicio .lp-human-tech__results {
  border: 2px solid #A8D5FF;
  background: transparent;
  box-shadow: none;
}

.lp-human-tech--modelo-servicio .lp-human-tech__results>h3 {
  color: var(--blanco);
}

.lp-human-tech--modelo-servicio .lp-human-tech__result {
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--blanco);
  text-align: left;
}

.lp-human-tech--modelo-servicio .lp-human-tech__result-icon {
  flex-basis: 4.25rem;
  width: 4.25rem;
  height: 4.25rem;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 0.65rem;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.3), rgba(0, 82, 144, 0.38));
  box-shadow: 0 12px 26px rgba(0, 82, 144, 0.2);
}

.lp-human-tech--modelo-servicio .lp-human-tech__result-icon img {
  width: 2.25rem;
  height: 2.25rem;
}

/* === TECNOLOGÍA AMMIA · ESTRUCTURA INDEX TECH === */
.index-tech {
  padding: 8rem 0;
  background:
    radial-gradient(circle at top, rgba(11, 125, 218, 0.05), transparent 45%);
}

.index-tech__wrapper {
  padding: 3.5rem;
  overflow: hidden;
  border: 1px solid rgba(11, 125, 218, 0.14);
  border-radius: 40px;
  background: #fff;
  box-shadow: 0 30px 80px rgba(10, 42, 90, 0.05);
}

.index-tech__header {
  max-width: 900px;
  margin: 0 auto 3rem;
  text-align: center;
}

.index-tech .index-programas__badge {
  display: inline-flex;
  margin-bottom: 1rem;
  padding: 0.45rem 1rem;
  border-radius: 999px;
  background: var(--azulsurexsl1);
  color: #fff;
  font-family: var(--font-headline);
  font-size: 13px;
  letter-spacing: 0.8px;
}

.index-tech__description {
  max-width: 760px;
  margin: 1.5rem auto 0;
  color: #5E6A7D;
  font-size: 1.05rem;
  line-height: 1.8;
}

.index-tech__title {
  margin: 0;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: clamp(1.75rem, 2.5vw, 2.5rem);
  font-weight: 400;
  line-height: 1.2;
}

.index-tech__title strong {
  color: var(--azulsurexsl1);
  font-weight: 700;
}

.index-tech__panel {
  display: none;
}

.index-tech__panel--active {
  display: block;
  animation: indexTechFade 0.35s ease;
}

.index-tech__content {
  display: grid;
  grid-template-columns: 440px 1fr;
  align-items: center;
  gap: 4rem;
}

.index-tech__info {
  display: flex;
  flex-direction: column;
}

.index-tech__heading {
  margin: 0 0 0.7rem;
  color: #083B73;
  font-family: var(--font-headline) !important;
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.28;
}

.index-tech__panel-description {
  margin: 0 0 1.15rem;
  color: #5D6B7A;
  font-size: 0.9rem;
  line-height: 1.6;
}

.index-tech__button {
  align-self: flex-start;
  margin-top: 2rem;
}

.index-tech__selector {
  display: flex;
  width: fit-content;
  margin: 0 auto 4rem;
  padding: 0.35rem;
  border: 1px solid rgba(8, 59, 115, 0.14);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 8px 30px rgba(12, 55, 110, 0.08);
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

.index-tech__tab {
  display: flex;
  min-width: 165px;
  height: 42px;
  padding: 0 1.2rem;
  border: none;
  border-radius: 999px;
  background: transparent;
  color: #0B7DDA;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  transition:
    background 0.25s ease,
    color 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.index-tech__tab img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  transition: transform 0.25s ease;
}

.index-tech__tab:hover {
  background: #F4F9FF;
}

.index-tech__tab:hover img {
  transform: scale(1.08);
}

.index-tech__tab--active {
  background: #0B7DDA;
  color: #fff;
  box-shadow: 0 10px 24px rgba(11, 125, 218, 0.28);
}

.index-tech__tab--active img {
  filter: brightness(0) invert(1);
}

.index-tech__tab:focus-visible {
  outline: 3px solid rgba(11, 125, 218, 0.25);
  outline-offset: 3px;
}

.index-tech__tab--active:hover {
  background: #F4F9FF;
  color: #0B7DDA;
}

.index-tech__tab--active:hover img {
  filter: none;
}

.index-tech__features {
  position: relative;
  display: flex;
  height: 270px;
  padding-right: 0.75rem;
  padding-left: 2.5rem;
  overflow-x: hidden;
  overflow-y: auto;
  flex-direction: column;
  gap: 0;
}

.index-tech__features::-webkit-scrollbar {
  width: 8px;
}

.index-tech__features::-webkit-scrollbar-track {
  background: transparent;
}

.index-tech__features::-webkit-scrollbar-thumb {
  border-radius: 20px;
  background: #C6DDF5;
}

.index-tech__features::-webkit-scrollbar-thumb:hover {
  background: #0B7DDA;
}

.index-tech__feature {
  position: relative;
  padding: 1rem 0;
}

.index-tech__feature::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  display: none;
  width: 2px;
  background: #D8E8F8;
}

.index-tech__feature-marker {
  position: absolute;
  z-index: 2;
  top: 2.25rem;
  left: -1.95rem;
  width: 18px;
  height: 18px;
  border: 2px solid #B9D8F6;
  border-radius: 50%;
  background: #fff;
}

.index-tech__feature:first-child .index-tech__feature-marker {
  border-color: #0B7DDA;
  background: #0B7DDA;
  box-shadow: 0 0 0 6px rgba(11, 125, 218, 0.1);
}

.index-tech__feature:last-child::before {
  bottom: 50%;
}

.index-tech__feature-card {
  display: flex;
  padding-bottom: 1rem;
  border-bottom: 1px solid #EAF2FA;
  align-items: flex-start;
  gap: 1rem;
}

.index-tech__feature:last-child .index-tech__feature-card {
  border-bottom: none;
}

.index-tech__feature-icon {
  display: flex;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  background: linear-gradient(145deg, #E7F4FF, #CFE8FF);
  color: #0B7DDA;
  font-size: 0.85rem;
  flex: 0 0 64px;
  align-items: center;
  justify-content: center;
}

.index-tech__feature-icon img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.index-tech__feature-card h4 {
  margin: 0 0 0.45rem;
  color: #005290;
  font-family: var(--font-headline) !important;
  font-size: 1.12rem;
  font-weight: 700;
  line-height: 1.35;
}

.index-tech__feature-card p {
  margin: 0;
  color: #5D6B7A;
  font-size: 0.95rem;
  line-height: 1.55;
}

.index-tech__media {
  display: flex;
  min-width: 0;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.index-tech__video-placeholder {
  position: relative;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(11, 125, 218, 0.18);
  border-radius: 32px;
  background: linear-gradient(135deg, #EAF5FF, #CFE8FF);
  box-shadow: 0 24px 60px rgba(0, 82, 144, 0.2);
  aspect-ratio: 16 / 10;
}

.index-tech__video-placeholder>img {
  display: block;
  max-width: 100%;
  height: auto;
}

.index-tech__video {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.index-tech__video-placeholder.index-tech__video-placeholder--video {
  aspect-ratio: auto;
}

.index-tech__video-placeholder::before {
  content: "";
  position: absolute;
  top: -140px;
  right: -120px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  filter: blur(10px);
}

.index-tech__video-placeholder::after {
  content: "";
  position: absolute;
  bottom: -120px;
  left: -80px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  filter: blur(14px);
}

.index-tech__video-placeholder--chat {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.index-tech__video-placeholder--chat>img {
  width: 60%;
  height: auto;
}

@keyframes indexTechFade {
  from {
    opacity: 0;
    transform: translateY(18px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 1199.98px) {
  .index-tech {
    padding: 6.5rem 0;
  }

  .index-tech__wrapper {
    padding: 3rem 2.25rem;
  }

  .index-tech__content {
    grid-template-columns: 380px 1fr;
    gap: 3rem;
  }

  .index-tech__heading {
    font-size: 1.55rem;
  }

  .index-tech__feature-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    flex-basis: 56px;
  }
}

@media (max-width: 991.98px) {
  .index-tech {
    padding: 5.5rem 0;
  }

  .index-tech__wrapper {
    padding: 2.5rem;
    border-radius: 32px;
  }

  .index-tech__header {
    margin-bottom: 2.25rem;
  }

  .index-tech__title {
    font-size: 2rem;
  }

  .index-tech__selector {
    margin-bottom: 2.75rem;
  }

  .index-tech__content {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .index-tech__media {
    order: -1;
  }

  .index-tech__info {
    order: 1;
  }

  .index-tech__video-placeholder {
    max-width: 720px;
    margin: 0 auto;
    border-radius: 28px;
  }

  .index-tech__heading {
    max-width: 720px;
    margin-bottom: 0.65rem;
    font-size: 1.45rem;
  }

  .index-tech__features {
    height: auto;
    max-height: 360px;
  }

  .index-tech__button {
    margin-top: 1.75rem;
  }
}

@media (max-width: 767.98px) {
  .index-tech {
    padding: 4rem 0;
  }

  .index-tech__wrapper {
    padding: 2rem 1rem;
    border-radius: 24px;
  }

  .index-tech__header {
    margin-bottom: 1.75rem;
  }

  .index-tech__title {
    font-size: 1.7rem;
    line-height: 1.18;
  }

  .index-tech__description {
    font-size: 0.95rem;
    line-height: 1.65;
  }

  .index-tech__selector {
    width: 100%;
    max-width: 100%;
    margin-bottom: 2rem;
    padding: 0.25rem;
    overflow: visible;
    justify-content: stretch;
    gap: 0.25rem;
  }

  .index-tech__selector::-webkit-scrollbar {
    display: none;
  }

  .index-tech__tab {
    min-width: 0;
    height: 38px;
    padding: 0 0.45rem;
    font-size: 0.76rem;
    white-space: nowrap;
    flex: 1 1 0;
    gap: 0.3rem;
  }

  .index-tech__tab span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .index-tech__tab img {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
  }

  .index-tech__content {
    gap: 1.5rem;
  }

  .index-tech__video-placeholder {
    border-radius: 22px;
    aspect-ratio: 16 / 11;
  }

  .index-tech__heading {
    margin-bottom: 0.55rem;
    font-size: 1.25rem;
    line-height: 1.3;
  }

  .index-tech__panel-description {
    font-size: 0.84rem;
  }

  .index-tech__features {
    max-height: none;
    padding-right: 0;
    padding-left: 0;
    overflow: visible;
  }

  .index-tech__feature {
    padding: 0.85rem 0;
  }

  .index-tech__feature-card {
    padding-bottom: 0.85rem;
    gap: 0.85rem;
  }

  .index-tech__feature-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    flex-basis: 48px;
  }

  .index-tech__feature-icon img {
    width: 24px;
    height: 24px;
  }

  .index-tech__feature-card h4,
  .index-tech__features h4 {
    font-size: 1rem;
  }

  .index-tech__feature-card p,
  .index-tech__features {
    font-size: 0.92rem;
    line-height: 1.6;
  }

  .index-tech__button {
    width: 100%;
    margin-top: 1.5rem;
  }
}

@media (max-width: 380px) {
  .index-tech__selector {
    padding: 0.2rem;
    gap: 0.2rem;
  }

  .index-tech__tab {
    height: 36px;
    padding: 0 0.35rem;
    font-size: 0.68rem;
    gap: 0.22rem;
  }

  .index-tech__tab img {
    width: 14px;
    height: 14px;
    flex-basis: 14px;
  }

  .index-tech__wrapper {
    padding: 1.75rem 0.85rem;
  }

  .index-tech__title {
    font-size: 1.5rem;
  }

  .index-tech__feature-card {
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  .index-tech__panel--active {
    animation: none;
  }

  .index-tech__tab,
  .index-tech__tab img {
    transition: none;
  }
}

/* === NIVELES DE SERVICIO · ESTRUCTURA INDEX SERVICIOS === */
.index-servicios {
  position: relative;
  padding: 4rem 0 8rem;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% -10%,
      rgba(255, 255, 255, 0.18) 0%,
      rgba(255, 255, 255, 0.08) 18%,
      transparent 52%),
    radial-gradient(circle at 12% 18%,
      rgba(110, 190, 255, 0.18) 0%,
      transparent 38%),
    radial-gradient(circle at 88% 15%,
      rgba(255, 255, 255, 0.1) 0%,
      transparent 35%),
    linear-gradient(180deg,
      #1389D3 0%,
      #0077BC 35%,
      #0068A8 100%);
}

.index-servicios::before {
  content: "";
  position: absolute;
  top: -260px;
  left: 50%;
  width: 900px;
  height: 900px;
  border-radius: 50%;
  background:
    radial-gradient(circle,
      rgba(255, 255, 255, 0.13),
      rgba(255, 255, 255, 0.05) 35%,
      transparent 70%);
  transform: translateX(-50%);
  pointer-events: none;
}

.index-servicios .container {
  position: relative;
  z-index: 2;
}

.index-servicios__header {
  max-width: 760px;
  margin: 0 auto 5rem;
  text-align: center;
}

.index-servicios__badge {
  display: inline-flex;
  margin-bottom: 1.4rem;
  padding: 0.55rem 1.2rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  color: white;
  font-family: var(--font-headline);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.8px;
  align-items: center;
  justify-content: center;
}

.index-servicios__title {
  margin: 0 0 1.5rem;
  color: white;
  font-family: var(--font-headline);
  font-size: clamp(2.2rem, 3vw, 3.2rem);
  font-weight: 400;
  line-height: 1.15;
}

.index-servicios__title strong {
  font-weight: 700;
}

.index-servicios__description {
  max-width: 700px;
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.86);
  font-size: 16px;
  line-height: 1.8;
}

.index-servicios__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 2rem;
}

.index-servicios__card {
  display: flex;
  height: 100%;
  overflow: hidden;
  border: 1px solid rgba(0, 119, 188, 0.12);
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 14px 35px rgba(16, 24, 40, 0.08);
  flex-direction: column;
  transition:
    transform 0.45s ease,
    box-shadow 0.45s ease,
    border-color 0.35s ease;
}

.index-servicios__image {
  position: relative;
  height: 150px;
  overflow: hidden;
  border-bottom: 1px solid rgba(0, 119, 188, 0.08);
  background:
    linear-gradient(135deg, #EAF5FF, #CFE8FF);
  flex-shrink: 0;
}

.index-servicios__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: grayscale(100%);
  transform: scale(1);
  transition:
    transform 0.65s ease,
    filter 0.55s ease;
}

.index-servicios__body {
  display: flex;
  padding: 2rem;
  flex: 1;
  flex-direction: column;
}

.index-servicios__card:hover {
  border-color: rgba(0, 119, 188, 0.25);
  box-shadow:
    0 18px 40px rgba(0, 82, 144, 0.12),
    0 30px 70px rgba(0, 119, 188, 0.18);
  transform: translateY(-10px);
}

.index-servicios__card:hover .index-servicios__image img {
  filter: grayscale(0%);
  transform: scale(1.05);
}

.index-servicios__plan {
  display: inline-flex;
  width: fit-content;
  min-height: 2rem;
  margin-bottom: 1rem;
  padding: 0.4rem 0.85rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-size: 0.83rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.03em;
  align-items: center;
  justify-content: center;
}

.index-servicios__card-title {
  margin: 0 0 1rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
}

.index-servicios__card-description {
  position: relative;
  z-index: 2;
  margin: 0 0 1.05rem;
  color: var(--azulsurexsl1);
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.55;
}

.index-servicios__divider {
  width: 100%;
  height: 1px;
  margin: 0.5rem 0;
  background:
    linear-gradient(to right,
      rgba(0, 119, 188, 0.18),
      rgba(0, 119, 188, 0.05));
}

.index-servicios__list-title {
  margin: 1.15rem 0 0;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.4;
}

.index-servicios__benefits {
  display: flex;
  margin: 1.25rem 0 2rem;
  padding: 0;
  list-style: none;
  flex: 1;
  flex-direction: column;
  gap: 0.75rem;
}

.index-servicios__benefits li {
  position: relative;
  padding-left: 2rem;
  color: #667085;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.45;
}

.index-servicios__benefits li::before {
  content: "";
  position: absolute;
  top: 0.12rem;
  left: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background-color: #F3F9FF;
  background-image: url("../img/iconos/sistema/azul-l1/check-circle-broken.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px;
  transition:
    transform 0.35s ease,
    background-color 0.35s ease;
}

.index-servicios__button {
  width: fit-content;
  min-height: 44px;
  margin-top: auto;
  padding: 0.7rem 1.5rem;
  font-weight: 700;
  align-self: center;
  justify-content: center;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.index-servicios__card:hover .index-servicios__benefits li::before {
  background-color: #E7F4FF;
  transform: scale(1.08);
}

.index-servicios__card:hover .index-servicios__button {
  box-shadow: 0 10px 25px rgba(255, 194, 61, 0.28);
  transform: translateY(-2px);
}

@media (max-width: 990px) {
  .index-servicios {
    padding: 4rem 0 6rem;
  }

  .index-servicios__header {
    margin-bottom: 3.5rem;
  }

  .index-servicios__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .index-servicios__card {
    max-width: 100%;
  }

  .index-servicios__body {
    padding: 1.5rem;
  }

  .index-servicios__card-title {
    font-size: 1.45rem;
  }
}

@media (max-width: 767.98px) {
  .index-servicios {
    padding: 4rem 0;
  }

  .index-servicios__header {
    margin-bottom: 2.5rem;
  }

  .index-servicios__badge {
    font-size: 0.75rem;
  }

  .index-servicios__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
  }

  .index-servicios__description {
    font-size: 0.9rem;
    line-height: 1.65;
  }

  .index-servicios__image {
    height: 135px;
  }

  .index-servicios__benefits {
    margin-bottom: 1.5rem;
  }

  .index-servicios__button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {

  .index-servicios__card,
  .index-servicios__image img,
  .index-servicios__benefits li::before,
  .index-servicios__button {
    transition: none;
  }
}

/* === PRESENCIA NACIONAL · ESTRUCTURA INDEX LOCATION === */
.index-location {
  --section-office-image: url("../img/vectores/contacto/cdmx.jpg");

  position: relative;
  padding: 7rem 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 20% 15%,
      rgba(255, 255, 255, 0.12) 0%,
      transparent 30%),
    radial-gradient(circle at 85% 20%,
      rgba(83, 160, 213, 0.18) 0%,
      transparent 28%),
    radial-gradient(circle at 50% -10%,
      rgba(255, 255, 255, 0.1) 0%,
      transparent 45%),
    linear-gradient(135deg,
      var(--azulsurexsl1),
      var(--azulsurexs));
  isolation: isolate;
}

.index-location::before {
  content: "";
  position: absolute;
  top: -320px;
  left: 50%;
  width: 900px;
  height: 900px;
  border-radius: 50%;
  background:
    radial-gradient(circle,
      rgba(255, 255, 255, 0.1),
      transparent 70%);
  transform: translateX(-50%);
  pointer-events: none;
}

.index-location--modelo-servicio::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background-image:
    linear-gradient(135deg,
      rgba(0, 52, 96, 0.92) 0%,
      rgba(0, 82, 144, 0.88) 48%,
      rgba(0, 119, 188, 0.84) 100%),
    var(--section-office-image);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 1;
  transform: scale(1.01);
  transition:
    opacity 0.38s ease,
    transform 0.65s ease;
  pointer-events: none;
}

.index-location--modelo-servicio.index-location--background-changing::after {
  opacity: 0;
  transform: scale(1.035);
}

.index-location .container {
  position: relative;
  z-index: 2;
}

.index-location__header {
  position: relative;
  z-index: 2;
  max-width: 800px;
  margin: 0 auto 4.5rem;
  text-align: center;
}

.index-location__badge {
  display: inline-flex;
  margin-bottom: 1.25rem;
  padding: 0.45rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(12px);
  color: #fff;
  font-family: var(--font-headline);
  font-size: 13px;
  letter-spacing: 0.8px;
  align-items: center;
}

.index-location__title {
  margin: 0 0 1.5rem;
  color: #fff;
  font-family: var(--font-headline);
  font-size: clamp(2.2rem, 3vw, 3.2rem);
  font-weight: 400;
  line-height: 1.15;
  text-wrap: balance;
}

.index-location__title strong {
  font-weight: 700;
}

.index-location__description {
  max-width: 760px;
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.98rem;
  line-height: 1.8;
  text-wrap: balance;
}

.index-location__content {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  align-items: start;
  gap: 2rem;
}

.index-location__map {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(12px);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.18);
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.index-location__map:hover {
  box-shadow: 0 40px 80px rgba(0, 0, 0, 0.22);
  transform: translateY(-4px);
}

.index-location__map iframe {
  display: block;
  width: 100%;
  height: 500px;
  border: 0;
  transition: opacity 0.35s ease;
}

.index-location__sidebar {
  display: flex;
  padding: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(12px);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.15);
  flex-direction: column;
  gap: 1rem;
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.index-location__office {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.08);
  isolation: isolate;
  transition:
    all 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.index-location__office::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background-image: var(--office-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0;
  transform: scale(1.08);
  transition:
    opacity 0.45s ease,
    transform 0.6s ease;
}

.index-location__office::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(135deg,
      rgba(0, 56, 104, 0.92),
      rgba(0, 119, 188, 0.78));
  opacity: 0;
  transition: opacity 0.45s ease;
}

.index-location__office:hover {
  border-color: rgba(255, 255, 255, 0.35);
  transform: translateY(-3px);
}

.index-location__office-button {
  position: relative;
  z-index: 2;
  display: flex;
  width: 100%;
  padding: 1.4rem;
  border: 0;
  background: none;
  color: inherit;
  text-align: left;
  cursor: pointer;
  align-items: flex-start;
  gap: 1rem;
}

.index-location__office-button:focus-visible {
  outline: 3px solid rgba(255, 255, 255, 0.7);
  outline-offset: -4px;
  border-radius: 22px;
}

.index-location__office-icon {
  display: flex;
  width: 54px;
  height: 54px;
  min-width: 54px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.14);
  align-items: center;
  justify-content: center;
}

.index-location__office-icon img {
  width: 22px;
}

.index-location__office-info {
  flex: 1;
}

.index-location__office-info h3 {
  margin: 0 0 0.55rem;
  color: #fff;
  font-family: var(--font-headline) !important;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.25;
}

.index-location__office-info address {
  margin: 0;
  color: rgba(255, 255, 255, 0.84);
  font-size: 0.88rem;
  font-style: normal;
  line-height: 1.65;
}

.index-location__office--active {
  border-color: transparent;
  box-shadow: 0 18px 40px rgba(0, 52, 96, 0.32);
}

.index-location__office--active::before {
  opacity: 1;
  transform: scale(1);
}

.index-location__office--active::after {
  opacity: 1;
}

.index-location__office--active:hover {
  transform: translateY(-5px);
}

.index-location__bullet {
  display: flex;
  max-width: 900px;
  margin: 2.5rem auto 0;
  padding: 1.5rem 2rem;
  border: 2px solid #A8D5FF;
  border-radius: 28px;
  background: #EAF5FF;
  box-shadow: 0 12px 30px rgba(0, 82, 144, 0.08);
  align-items: center;
  gap: 1.25rem;
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.index-location__bullet:hover {
  box-shadow: 0 30px 70px rgba(0, 82, 144, 0.18);
  transform: translateY(-4px);
}

.index-location__bullet-icon {
  display: flex;
  width: 54px;
  height: 54px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}

.index-location__bullet-icon img {
  width: 46px;
  height: auto;
}

.index-location__bullet-content {
  flex: 1;
}

.index-location__bullet-content h3 {
  margin: 0 0 0.25rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline) !important;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.35;
}

.index-location__bullet-content p {
  margin: 0;
  color: #5D6B78;
  font-size: 0.9rem;
  line-height: 1.6;
}

@media (max-width: 1199.98px) {
  .index-location__content {
    grid-template-columns: 1fr;
  }

  .index-location__map iframe {
    height: 520px;
  }
}

@media (max-width: 991.98px) {
  .index-location {
    padding: 5rem 0;
  }

  .index-location__header {
    margin-bottom: 3rem;
  }

  .index-location__title {
    font-size: 2.2rem;
  }

  .index-location__sidebar {
    padding: 1rem;
  }

  .index-location__map {
    border-radius: 24px;
  }

  .index-location__map iframe {
    height: 460px;
  }

  .index-location__bullet {
    padding: 1.5rem;
    border-radius: 24px;
  }
}

@media (max-width: 767.98px) {
  .index-location {
    padding: 4rem 0;
  }

  .index-location__header {
    margin-bottom: 2.5rem;
  }

  .index-location__title {
    font-size: 2rem;
  }

  .index-location__description {
    font-size: 0.95rem;
  }

  .index-location__content {
    gap: 1.5rem;
  }

  .index-location__map {
    min-height: 340px;
    border-radius: 20px;
  }

  .index-location__map iframe {
    height: 340px;
  }

  .index-location__sidebar {
    padding: 0.85rem;
  }

  .index-location__office-button {
    padding: 1rem;
  }

  .index-location__office-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border-radius: 14px;
  }

  .index-location__office-icon img {
    width: 18px;
  }

  .index-location__office-info h3 {
    font-size: 1rem;
  }

  .index-location__office-info address {
    font-size: 0.86rem;
  }

  .index-location__bullet {
    padding: 1.4rem;
    text-align: left;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  .index-location__bullet-icon {
    width: 60px;
    height: 60px;
    min-width: 60px;
  }

  .index-location__bullet-icon img {
    width: 28px;
    height: 28px;
  }

  .index-location__bullet-content h3 {
    font-size: 1.15rem;
  }
}

@media (prefers-reduced-motion: reduce) {

  .index-location__map,
  .index-location__map iframe,
  .index-location__sidebar,
  .index-location__office,
  .index-location__office::before,
  .index-location__office::after,
  .index-location--modelo-servicio::after,
  .index-location__bullet {
    transition: none;
  }
}

/* === FAMILIA CANÓNICA DE MICROCOPY === */
.lp-operacion-problema__floating {
  --microcopy-border: color-mix(in srgb, var(--rojo) 38%, var(--blanco));
  --microcopy-background: rgba(255, 255, 255, 0.9);
  --microcopy-icon-background: var(--rojol3);
  --microcopy-icon-shadow: 0 8px 18px rgba(195, 87, 75, 0.16);
  --microcopy-text: var(--grisobscuro);
}

.lp-implementacion-programa__bullet {
  --microcopy-border: color-mix(in srgb, var(--verde) 54%, var(--blanco));
  --microcopy-background: var(--blanco);
  --microcopy-icon-background: linear-gradient(145deg, #E7F4FF, #CFE8FF);
  --microcopy-icon-shadow: 0 8px 18px rgba(140, 154, 70, 0.16);
  --microcopy-text: var(--azulsurexsd1);
}

.lp-atencion-humana__bullet {
  --microcopy-border: color-mix(in srgb, var(--azulsurexsl3) 40%, var(--blanco));
  --microcopy-background: rgba(255, 255, 255, 0.94);
  --microcopy-icon-background: var(--azulsurexsl4);
  --microcopy-icon-shadow: 0 8px 18px rgba(0, 119, 188, 0.14);
  --microcopy-text: var(--grisobscuro);
}

.lp-trazabilidad__microcopy {
  --microcopy-border: #A8D5FF;
  --microcopy-background: rgba(255, 255, 255, 0.94);
  --microcopy-icon-background: linear-gradient(145deg, #E7F4FF, #CFE8FF);
  --microcopy-icon-shadow: 0 8px 18px rgba(103, 167, 0, 0.14);
  --microcopy-text: var(--grisobscuro);
}

.index-location__bullet {
  --microcopy-border: #A8D5FF;
  --microcopy-background: #EAF5FF;
  --microcopy-icon-background: var(--azulsurexsl4);
  --microcopy-icon-shadow: 0 8px 18px rgba(0, 119, 188, 0.14);
  --microcopy-text: var(--azulsurexsd1);
}

:is(.lp-operacion-problema__floating,
  .lp-implementacion-programa__bullet,
  .lp-atencion-humana__bullet,
  .lp-trazabilidad__microcopy,
  .index-location__bullet) {
  display: flex;
  width: 100%;
  max-width: 32rem;
  margin-inline: auto;
  padding: 1rem 1.2rem;
  border: 1px solid var(--microcopy-border);
  border-radius: 18px;
  background: var(--microcopy-background);
  box-shadow: 0 16px 38px rgba(0, 82, 144, 0.12);
  text-align: left;
  align-items: center;
  gap: 1rem;
}

:is(.lp-operacion-problema__floating-icon,
  .lp-implementacion-programa__bullet-icon,
  .lp-atencion-humana__bullet-icon,
  .lp-trazabilidad__microcopy-icon,
  .index-location__bullet-icon) {
  display: inline-flex;
  width: 3rem;
  height: 3rem;
  min-width: 3rem;
  flex: 0 0 3rem;
  border-radius: 0.6rem;
  background: var(--microcopy-icon-background);
  box-shadow: var(--microcopy-icon-shadow);
  align-items: center;
  justify-content: center;
}

:is(.lp-operacion-problema__floating-icon,
  .lp-implementacion-programa__bullet-icon,
  .lp-atencion-humana__bullet-icon,
  .lp-trazabilidad__microcopy-icon,
  .index-location__bullet-icon) img {
  width: 1.55rem;
  height: 1.55rem;
  object-fit: contain;
}

:is(.lp-operacion-problema__floating,
  .lp-implementacion-programa__bullet,
  .lp-atencion-humana__bullet,
  .lp-trazabilidad__microcopy,
  .index-location__bullet) p {
  margin: 0;
  color: var(--microcopy-text);
  font-family: var(--font-primary);
  font-size: 0.82rem;
  font-weight: 400;
  line-height: 1.5;
}

.index-location__bullet-content {
  min-width: 0;
  flex: 1;
}

.index-location__bullet:hover {
  box-shadow: 0 16px 38px rgba(0, 82, 144, 0.12);
  transform: none;
}

@media (max-width: 767.98px) {
  :is(.lp-operacion-problema__floating,
    .lp-implementacion-programa__bullet,
    .lp-atencion-humana__bullet,
    .lp-trazabilidad__microcopy,
    .index-location__bullet) {
    width: calc(100% - 0.7rem);
    margin-inline: 0.35rem;
    padding: 0.9rem 1rem;
    align-items: flex-start;
    gap: 0.75rem;
  }

  :is(.lp-operacion-problema__floating-icon,
    .lp-implementacion-programa__bullet-icon,
    .lp-atencion-humana__bullet-icon,
    .lp-trazabilidad__microcopy-icon,
    .index-location__bullet-icon) {
    width: 2.5rem;
    height: 2.5rem;
    min-width: 2.5rem;
    flex-basis: 2.5rem;
  }

  :is(.lp-operacion-problema__floating,
    .lp-implementacion-programa__bullet,
    .lp-atencion-humana__bullet,
    .lp-trazabilidad__microcopy,
    .index-location__bullet) p {
    font-size: 0.76rem;
  }
}

/* === RUTAS PARA OTROS USUARIOS === */
.lp-rutas {
  position: relative;
  padding: 7rem 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 0%,
      color-mix(in srgb, var(--azulsurexsl4) 72%, transparent),
      transparent 38rem),
    color-mix(in srgb, var(--azulsurexsl4) 28%, var(--blanco));
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-rutas__decor {
  position: absolute;
  z-index: -1;
  width: clamp(18rem, 30vw, 27rem);
  aspect-ratio: 1;
  background: url("../img/informativas/modelo-servicio/decobkg.svg") center/contain no-repeat;
  opacity: 0.28;
  pointer-events: none;
}

.lp-rutas__decor--left {
  bottom: -8rem;
  left: -9rem;
}

.lp-rutas__decor--right {
  top: -7rem;
  right: -9rem;
  transform: scaleX(-1);
}

.lp-rutas__header {
  max-width: 58rem;
  margin: 0 auto 4rem;
  text-align: center;
}

.lp-rutas__eyebrow {
  display: inline-flex;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.3rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
  align-items: center;
  gap: 0.5rem;
}

.lp-rutas__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-rutas__title {
  margin: 0 auto 1.2rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: clamp(2.15rem, 3.6vw, 3.15rem);
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-rutas__title strong {
  color: var(--azulsurexsl1);
  font-weight: 800;
}

.lp-rutas__description {
  max-width: 53rem;
  margin: 0 auto;
  color: var(--azulsurexsd1);
  font-size: 0.94rem;
  line-height: 1.68;
  text-wrap: balance;
}

.lp-rutas__nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 76rem;
  margin: 0 auto;
  padding: 0.65rem;
  border: 2px solid var(--azulsurexsl3);
  border-radius: 28px;
  background: color-mix(in srgb, var(--blanco) 94%, transparent);
  box-shadow: 0 16px 45px rgba(0, 82, 144, 0.1);
  gap: 0.65rem;
}

.lp-rutas__item {
  --lp-ruta-accent: var(--azulsurexsl1);
  --lp-ruta-soft: var(--azulsurexsl4);
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 19.5rem;
  padding: 1.3rem 1.25rem 1.25rem;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--lp-ruta-accent) 42%, var(--blanco));
  border-radius: 22px;
  background: var(--blanco);
  color: var(--azulsurexsd1);
  flex-direction: column;
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    background 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-rutas__item::before {
  content: "";
  position: absolute;
  top: 0;
  right: 1.35rem;
  left: 1.35rem;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: var(--lp-ruta-accent);
  opacity: 0.78;
}

.lp-rutas__item--asegurados {
  --lp-ruta-accent: var(--aqua);
  --lp-ruta-soft: var(--aqual3);
}

.lp-rutas__item--partners {
  --lp-ruta-accent: var(--amarillo);
  --lp-ruta-soft: var(--amarillol3);
}

.lp-rutas__item--medios {
  --lp-ruta-accent: var(--azulsurexsl1);
  --lp-ruta-soft: var(--azulsurexsl4);
}

.lp-rutas__item--vacantes {
  --lp-ruta-accent: var(--verde);
  --lp-ruta-soft: var(--verdel1);
}

.lp-rutas__item:hover {
  border-color: var(--lp-ruta-accent);
  background: linear-gradient(180deg,
      var(--blanco) 0%,
      color-mix(in srgb, var(--lp-ruta-accent) 8%, var(--blanco)) 100%);
  box-shadow: 0 18px 38px color-mix(in srgb, var(--lp-ruta-accent) 18%, transparent);
  color: var(--azulsurexsd1);
  transform: translateY(-0.35rem);
}

.lp-rutas__item:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--lp-ruta-accent) 42%, transparent);
  outline-offset: 3px;
}

.lp-rutas__icon {
  display: inline-flex;
  width: 3.75rem;
  height: 3.75rem;
  margin-bottom: 0.9rem;
  border: 1px solid color-mix(in srgb, var(--lp-ruta-accent) 35%, var(--blanco));
  border-radius: 0.7rem;
  background: var(--lp-ruta-soft);
  box-shadow: 0 9px 20px color-mix(in srgb, var(--lp-ruta-accent) 16%, transparent);
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.lp-rutas__item:hover .lp-rutas__icon {
  transform: translateY(-0.18rem) scale(1.04);
}

.lp-rutas__icon img {
  width: 1.8rem;
  height: 1.8rem;
  object-fit: contain;
}

.lp-rutas__number {
  margin-bottom: 0.35rem;
  color: var(--azulsurexsl2);
  font-family: var(--font-headline);
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.07rem;
  text-transform: uppercase;
}

.lp-rutas__item h3 {
  margin: 0 0 0.85rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline) !important;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.25;
}

.lp-rutas__item p {
  max-height: 0;
  margin: 0;
  overflow: hidden;
  color: var(--gris);
  font-size: 0.79rem;
  font-weight: 400;
  line-height: 1.6;
  opacity: 0;
  transform: translateY(-0.35rem);
  transition:
    max-height 0.38s ease,
    margin 0.38s ease,
    opacity 0.28s ease,
    transform 0.38s ease;
}

.lp-rutas__item:hover p,
.lp-rutas__item:focus-visible p {
  max-height: 8rem;
  margin-bottom: 0.9rem;
  opacity: 1;
  transform: translateY(0);
}

.lp-rutas__cta {
  display: inline-flex;
  width: fit-content;
  min-height: 2.65rem;
  padding: 0.65rem 0.9rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--blanco);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.78rem;
  font-weight: 700;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  margin-top: auto;
  transition:
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.lp-rutas__item:hover .lp-rutas__cta {
  border-color: var(--lp-ruta-accent);
  box-shadow: 0 7px 18px color-mix(in srgb, var(--lp-ruta-accent) 14%, transparent);
}

.lp-rutas__cta img {
  width: 1rem;
  height: 1rem;
  transition: transform 0.3s ease;
}

.lp-rutas__item:hover .lp-rutas__cta img {
  transform: translate(0.12rem, -0.12rem);
}

@media (max-width: 1199.98px) {
  .lp-rutas__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 48rem;
  }

  .lp-rutas__item {
    min-height: 19.5rem;
  }
}

@media (max-width: 767.98px) {
  .lp-rutas {
    padding: 4.5rem 0;
  }

  .lp-rutas__decor {
    width: 18rem;
    opacity: 0.2;
  }

  .lp-rutas__header {
    margin-bottom: 2.5rem;
  }

  .lp-rutas__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
    text-align: center;
  }

  .lp-rutas__title {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.12;
  }

  .lp-rutas__description {
    font-size: 0.86rem;
    line-height: 1.62;
  }

  .lp-rutas__nav {
    grid-template-columns: 1fr;
    padding: 0.5rem;
    border-radius: 24px;
    gap: 0.5rem;
  }

  .lp-rutas__item {
    min-height: auto;
    padding: 1.4rem;
    border-radius: 20px;
  }

  .lp-rutas__item p {
    max-height: none;
    margin-bottom: 1rem;
    font-size: 0.8rem;
    opacity: 1;
    transform: none;
  }

  .lp-rutas__cta {
    width: 100%;
  }
}

@media (hover: none) {
  .lp-rutas__item p {
    max-height: none;
    margin-bottom: 1rem;
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {

  .lp-rutas__item,
  .lp-rutas__icon,
  .lp-rutas__item p,
  .lp-rutas__cta,
  .lp-rutas__cta img {
    transition: none;
  }
}

/* === PREGUNTAS FRECUENTES · ESTRUCTURA FAQS DE INDEX === */
.faqs {
  position: relative;
  padding: 7rem 0;
  overflow: hidden;
  background:
    linear-gradient(180deg,
      var(--blanco) 0%,
      color-mix(in srgb, var(--azulsurexsl4) 28%, var(--blanco)) 100%);
}

.faqs::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background:
    linear-gradient(90deg,
      transparent,
      rgba(0, 119, 188, 0.24),
      transparent);
}

.faqs__header {
  max-width: 860px;
  margin: 0 auto 4rem;
  text-align: center;
}

.faqs__badge {
  display: inline-flex;
  margin-bottom: 1.25rem;
  padding: 0.65rem 1rem;
  border: 1px solid var(--azulsurexsl4);
  border-radius: 999px;
  background: var(--blanco);
  box-shadow: 0 12px 30px rgba(0, 82, 144, 0.07);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.8px;
  align-items: center;
  gap: 0.55rem;
}

.faqs__badge img {
  width: 18px;
  height: 18px;
}

.faqs__title {
  margin: 0;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: 2.65rem;
  font-weight: 400;
  line-height: 1.14;
}

.faqs__title strong {
  display: block;
  color: var(--azulsurexsl1);
  font-weight: 700;
}

.faqs__description {
  max-width: 760px;
  margin: 1.35rem auto 0;
  color: var(--gris);
  font-size: 1.03rem;
  line-height: 1.8;
}

.faqs__layout {
  display: grid;
  grid-template-columns: minmax(280px, 390px) minmax(0, 1fr);
  align-items: start;
  gap: 2rem;
}

.faqs__aside {
  position: sticky;
  top: 120px;
  padding: 2rem;
  overflow: hidden;
  border-radius: 30px;
  background:
    linear-gradient(145deg,
      var(--azulsurexsd2) 0%,
      var(--azulsurexsd1) 52%,
      var(--azulsurexs) 100%);
  box-shadow: 0 30px 70px rgba(20, 33, 53, 0.18);
  color: var(--blanco);
  isolation: isolate;
}

.faqs__aside::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(180deg,
      rgba(255, 255, 255, 0.18),
      rgba(255, 255, 255, 0) 42%);
  pointer-events: none;
}

.faqs__aside-icon {
  display: flex;
  width: 58px;
  height: 58px;
  margin-bottom: 1.35rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.14);
  align-items: center;
  justify-content: center;
}

.faqs__aside-icon img {
  width: 28px;
  height: 28px;
}

.faqs__aside h3 {
  margin: 0 0 1rem;
  color: var(--blanco);
  font-family: var(--font-headline) !important;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.25;
}

.faqs__aside p {
  margin: 0;
  color: rgba(255, 255, 255, 0.84);
  font-size: 0.96rem;
  line-height: 1.75;
}

.faqs__proof-list {
  display: grid;
  margin: 1.5rem 0 2rem;
  padding: 0;
  list-style: none;
  gap: 0;
}

.faqs__proof-list li {
  display: flex;
  padding: 0.95rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.92);
  font-family: var(--font-primary);
  font-size: 0.9rem;
  line-height: 1.55;
  align-items: flex-start;
  gap: 0.75rem;
}

.faqs__proof-list li:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.faqs__proof-list img {
  width: 20px;
  height: 20px;
  padding: 3px;
  border-radius: 999px;
  background: var(--blanco);
  flex: 0 0 20px;
}

.faqs__aside-button {
  width: 100% !important;
  min-height: 48px;
  padding: 0.75rem 1rem !important;
  justify-content: space-between !important;
}

.faqs__aside-button img {
  width: 18px;
  height: 18px;
}

.faqs__accordion {
  max-height: min(46rem, 76vh);
  padding: 0.2rem 0.75rem 0.75rem 0.2rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-color: var(--azulsurexsl2) var(--azulsurexsl4);
  scrollbar-gutter: stable;
  scrollbar-width: thin;
}

.faqs__accordion::-webkit-scrollbar {
  width: 8px;
}

.faqs__accordion::-webkit-scrollbar-track {
  border-radius: 999px;
  background: var(--azulsurexsl4);
}

.faqs__accordion::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: var(--azulsurexsl2);
}

.faqs__accordion::-webkit-scrollbar-thumb:hover {
  background: var(--azulsurexsl1);
}

.faqs__accordion .accordion {
  display: grid;
  gap: 1rem;
}

.faqs__accordion-item {
  overflow: hidden;
  border: 1px solid rgba(0, 119, 188, 0.14);
  border-radius: 24px !important;
  background: var(--blanco);
  box-shadow: 0 16px 42px rgba(20, 33, 53, 0.07);
  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    box-shadow 0.28s ease;
}

.faqs__accordion-item:hover {
  border-color: rgba(0, 119, 188, 0.34);
  box-shadow: 0 24px 56px rgba(20, 33, 53, 0.1);
  transform: translateY(-2px);
}

.faqs__accordion-button {
  min-height: 84px;
  padding: 1.15rem 1.2rem;
  border-radius: 24px !important;
  background: var(--blanco);
  box-shadow: none !important;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.35;
  gap: 1rem;
}

.faqs__accordion-button:hover {
  background: color-mix(in srgb, var(--azulsurexsl4) 18%, var(--blanco));
  color: var(--azulsurexsl1);
}

.faqs__accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 4px rgba(0, 119, 188, 0.16) !important;
}

.faqs__accordion-button:not(.collapsed) {
  border-bottom: 1px solid var(--azulsurexsl4);
  border-radius: 24px 24px 0 0 !important;
  background: var(--blanco);
  color: var(--azulsurexsd1);
}

.faqs__question-number {
  display: inline-flex;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.86rem;
  font-weight: 800;
  flex: 0 0 44px;
  align-items: center;
  justify-content: center;
}

.faqs__accordion-button:not(.collapsed) .faqs__question-number {
  background: var(--azulsurexsl1);
  color: var(--blanco);
}

.faqs__question-text {
  min-width: 0;
  padding-right: 0.25rem;
  overflow-wrap: break-word;
  flex: 1;
}

.faqs__accordion-button::after {
  content: "+";
  display: inline-flex;
  width: 34px;
  height: 34px;
  margin-left: 0.75rem;
  border-radius: 999px;
  background: var(--azulsurexsl4) !important;
  background-image: none !important;
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
  flex: 0 0 34px;
  align-items: center;
  justify-content: center;
  transform: none !important;
  transition:
    background-color 0.25s ease,
    color 0.25s ease;
}

.faqs__accordion-button:not(.collapsed)::after {
  content: "-";
  background: var(--azulsurexsl1) !important;
  background-image: none !important;
  color: var(--blanco);
}

.faqs__accordion-body {
  padding: 1.1rem 5.2rem 1.5rem 6.7rem;
  background: var(--blanco);
  color: var(--gris);
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.8;
}

.faqs__accordion-body p {
  margin: 0 0 0.85rem;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.faqs__accordion-body p:last-child {
  margin-bottom: 0;
}

.faqs__accordion-body ul {
  display: grid;
  margin: 0.4rem 0 1rem;
  padding: 0;
  list-style: none;
  gap: 0.45rem;
}

.faqs__accordion-body li {
  position: relative;
  padding-left: 1.25rem;
  color: inherit;
}

.faqs__accordion-body li::before {
  content: "";
  position: absolute;
  top: 0.72rem;
  left: 0;
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 50%;
  background: var(--azulsurexsl2);
}

@media (max-width: 991.98px) {
  .faqs {
    padding: 5rem 0;
  }

  .faqs__header {
    margin-bottom: 2.5rem;
  }

  .faqs__layout {
    grid-template-columns: 1fr;
  }

  .faqs__aside {
    position: relative;
    top: auto;
  }
}

@media (max-width: 767.98px) {
  .faqs {
    padding: 4rem 0;
  }

  .faqs__header {
    text-align: left;
  }

  .faqs__title {
    font-size: 2.05rem;
  }

  .faqs__description {
    font-size: 0.96rem;
  }

  .faqs__aside {
    padding: 1.5rem;
    border-radius: 24px;
  }

  .faqs__accordion-item {
    border-radius: 20px !important;
  }

  .faqs__accordion-button {
    min-height: auto;
    padding: 1rem;
    border-radius: 20px !important;
    font-size: 1rem;
  }

  .faqs__accordion-button:not(.collapsed) {
    border-radius: 20px 20px 0 0 !important;
  }

  .faqs__question-number {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    flex-basis: 40px;
  }

  .faqs__accordion-button::after {
    width: 32px;
    height: 32px;
    margin-left: 0.35rem;
    flex-basis: 32px;
  }

  .faqs__accordion-body {
    padding: 1rem 1rem 1.25rem;
    font-size: 0.95rem;
  }

  .faqs__accordion {
    max-height: min(38rem, 70vh);
    padding-right: 0.45rem;
  }
}

@media (max-width: 575.98px) {
  .faqs__badge {
    font-size: 0.84rem;
  }

  .faqs__accordion-button {
    align-items: flex-start;
    gap: 0.75rem;
  }

  .faqs__accordion-button::after {
    margin-top: 0.25rem;
  }

  .faqs__aside-button {
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {

  .faqs__accordion-item,
  .faqs__accordion-button::after {
    transition: none;
  }
}

/* === CONTRATACIÓN CON ESTRUCTURA === */
.lp-contratacion-estructura {
  --lp-contratacion-card-height: 22rem;
  position: relative;
  overflow: hidden;
  padding: 9rem 0 7rem;
  background:
    radial-gradient(circle at 50% -10%,
      rgba(255, 255, 255, 0.18) 0%,
      rgba(255, 255, 255, 0.08) 18%,
      transparent 50%),
    radial-gradient(circle at 15% 20%,
      rgba(110, 190, 255, 0.18) 0%,
      transparent 40%),
    radial-gradient(circle at 85% 15%,
      rgba(255, 255, 255, 0.08) 0%,
      transparent 35%),
    linear-gradient(180deg,
      #1389D3 0%,
      #0077BC 35%,
      #0068A8 100%);
  color: var(--blanco);
}

.lp-contratacion-estructura::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: -15.625rem;
  left: 50%;
  width: 56.25rem;
  height: 56.25rem;
  border-radius: 50%;
  background: radial-gradient(circle,
      rgba(255, 255, 255, 0.12) 0%,
      rgba(255, 255, 255, 0.05) 30%,
      transparent 70%);
  transform: translateX(-50%);
  pointer-events: none;
}

.lp-contratacion-estructura .container {
  position: relative;
  z-index: 5;
}

.lp-contratacion-estructura__wave {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
}

.lp-contratacion-estructura__decor {
  position: absolute;
  z-index: 2;
  top: 6.25rem;
  width: 15.5rem;
  pointer-events: none;
  animation: lp-contratacion-float 5s ease-in-out infinite;
}

.lp-contratacion-estructura__decor--left {
  left: 0;
}

.lp-contratacion-estructura__decor--right {
  right: -6%;
  width: 18rem;
  animation-delay: 2.5s;
}

.lp-contratacion-estructura__header {
  max-width: 52rem;
  margin: 0 auto 4rem;
  text-align: center;
}

.lp-contratacion-estructura__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  padding: 0.45rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
}

.lp-contratacion-estructura__eyebrow img {
  width: 1rem;
  height: 1rem;
}

.lp-contratacion-estructura__title {
  margin: 0 auto 1.5rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: clamp(2.2rem, 3.2vw, 3.2rem);
  font-weight: 400;
  line-height: 1.15;
  text-wrap: balance;
}

.lp-contratacion-estructura__title strong {
  display: block;
  color: var(--blanco);
  font-weight: 700;
}

.lp-contratacion-estructura__description {
  max-width: 48rem;
  margin: 0 auto 2rem;
  color: rgba(255, 255, 255, 0.85);
  font-size: 1rem;
  line-height: 1.8;
  text-wrap: balance;
}

.lp-contratacion-estructura__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin: 0 auto;
}

.lp-contratacion-estructura__button img {
  width: 1.15rem;
  height: 1.15rem;
}

.lp-contratacion-estructura__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.lp-contratacion-estructura__card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: var(--lp-contratacion-card-height);
  flex-direction: column;
  padding: 1.5rem 1.25rem;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 28px;
  background: transparent;
  transition:
    transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.6s ease,
    border-color 0.5s ease,
    box-shadow 0.8s ease;
}

.lp-contratacion-estructura__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.25rem;
  height: 4.25rem;
  margin-bottom: 1.25rem;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 0.65rem;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.3), rgba(0, 82, 144, 0.38));
  box-shadow: 0 12px 26px rgba(0, 82, 144, 0.2);
  transition: transform 0.35s ease;
}

.lp-contratacion-estructura__icon img {
  width: 2.25rem;
  height: 2.25rem;
  object-fit: contain;
}

.lp-contratacion-estructura__card h3 {
  margin: 0 0 0.85rem;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
}

.lp-contratacion-estructura__card p {
  margin: 0;
  color: #EAF6FF;
  font-size: 0.82rem;
  line-height: 1.7;
}

.lp-contratacion-estructura__card:hover {
  transform: translateY(-0.4rem);
  border-color: transparent;
  background: linear-gradient(145deg, #2B628F, #005290);
  box-shadow: 0 24px 60px rgba(0, 82, 144, 0.28);
}

.lp-contratacion-estructura__card:hover .lp-contratacion-estructura__icon {
  transform: scale(1.08);
}

@keyframes lp-contratacion-float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-0.75rem);
  }
}

@media (max-width: 1399.98px) {
  .lp-contratacion-estructura__decor--left {
    left: -3rem;
  }

  .lp-contratacion-estructura__decor--right {
    right: -3rem;
  }

  .lp-contratacion-estructura__header {
    max-width: 47rem;
  }
}

@media (max-width: 1199.98px) {
  .lp-contratacion-estructura {
    --lp-contratacion-card-height: 19rem;
    padding: 8rem 0 6rem;
  }

  .lp-contratacion-estructura__decor {
    width: 11.5rem;
    opacity: 0.7;
  }

  .lp-contratacion-estructura__decor--right {
    width: 11rem;
  }

  .lp-contratacion-estructura__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1.25rem;
  }

  .lp-contratacion-estructura__card {
    grid-column: span 2;
  }

  .lp-contratacion-estructura__card:nth-child(4) {
    grid-column: 2 / span 2;
  }

  .lp-contratacion-estructura__card:nth-child(5) {
    grid-column: 4 / span 2;
  }
}

@media (max-width: 991.98px) {
  .lp-contratacion-estructura {
    --lp-contratacion-card-height: 18rem;
    padding: 7rem 0 5.5rem;
  }

  .lp-contratacion-estructura__header {
    max-width: 42rem;
    margin-bottom: 3.5rem;
  }

  .lp-contratacion-estructura__title {
    font-size: 2.35rem;
  }

  .lp-contratacion-estructura__description {
    font-size: 0.94rem;
  }

  .lp-contratacion-estructura__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lp-contratacion-estructura__card,
  .lp-contratacion-estructura__card:nth-child(4),
  .lp-contratacion-estructura__card:nth-child(5) {
    grid-column: auto;
  }

  .lp-contratacion-estructura__card:last-child {
    grid-column: 1 / -1;
    width: calc(50% - 0.625rem);
    justify-self: center;
  }

  .lp-contratacion-estructura__decor {
    top: 8.5rem;
    width: 8.75rem;
    opacity: 0.5;
  }

  .lp-contratacion-estructura__decor--right {
    width: 8.5rem;
  }
}

@media (max-width: 767.98px) {
  .lp-contratacion-estructura {
    padding: 5.5rem 0 4rem;
  }

  .lp-contratacion-estructura__decor {
    display: none;
  }

  .lp-contratacion-estructura__header {
    margin-bottom: 2.5rem;
  }

  .lp-contratacion-estructura__eyebrow {
    font-size: 0.68rem;
    line-height: 1.3;
    text-align: center;
  }

  .lp-contratacion-estructura__title {
    margin-bottom: 1rem;
    font-size: 1.85rem;
    line-height: 1.18;
  }

  .lp-contratacion-estructura__description {
    font-size: 0.88rem;
    line-height: 1.65;
  }

  .lp-contratacion-estructura__button {
    width: 100%;
  }

  .lp-contratacion-estructura__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .lp-contratacion-estructura__card,
  .lp-contratacion-estructura__card:last-child {
    grid-column: auto;
    width: 100%;
    min-height: auto;
    padding: 1.25rem;
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(43, 98, 143, 0.72), rgba(0, 82, 144, 0.62));
  }

  .lp-contratacion-estructura__card:hover {
    transform: none;
  }

  .lp-contratacion-estructura__icon {
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1rem;
  }

  .lp-contratacion-estructura__icon img {
    width: 1.9rem;
    height: 1.9rem;
  }

  .lp-contratacion-estructura__card h3 {
    font-size: 1rem;
  }

  .lp-contratacion-estructura__card p {
    font-size: 0.78rem;
    line-height: 1.6;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-contratacion-estructura__decor {
    animation: none;
  }

  .lp-contratacion-estructura__card,
  .lp-contratacion-estructura__icon {
    transition: none;
  }
}

/* === PLAN FIT · ESTE PLAN ES PARA TU EMPRESA === */
.lp-plan-fit {
  position: relative;
  overflow: hidden;
  padding: 5.8rem 0 6.3rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 72%, var(--blanco));
  color: var(--grisoscuro);
}

.lp-plan-fit__header {
  max-width: 42rem;
  margin: 0 auto 4.15rem;
  text-align: center;
}

.lp-plan-fit__title {
  margin: 0 0 1.65rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: clamp(2rem, 3vw, 2.65rem);
  font-weight: 600;
}

.lp-plan-fit__description {
  margin: 0 auto 1.75rem;
  color: var(--grisoscuro);
  font-size: 0.98rem;
  line-height: 1.45;
  letter-spacing: 0.01rem;
}

.lp-plan-fit__subtitle {
  margin: 0;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.2;
}

.lp-plan-fit__cards {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.85rem;
}

.lp-plan-fit__card {
  min-height: 15.4rem;
  padding: 1.55rem 1.55rem 1.7rem;
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 28%, transparent);
  border-radius: 0.28rem;
  background: var(--blanco);
  box-shadow: 0 1.2rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 10%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.lp-plan-fit__card:hover {
  transform: translateY(-0.35rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 34%, transparent);
  box-shadow: 0 1.45rem 2.8rem color-mix(in srgb, var(--azulsurexsd2) 14%, transparent);
}

.lp-plan-fit__card:hover .lp-plan-fit__icon {
  transform: translateY(-0.12rem) scale(1.03);
}

.lp-plan-fit__card p {
  margin: 1.75rem 0 0;
  color: var(--azulsurexsd1);
}

.lp-plan-fit__card strong {
  font-weight: 800;
}

.lp-plan-fit__icon {
  display: grid;
  place-items: center;
  width: 5.75rem;
  height: 5.75rem;
  border-radius: 0.28rem;
  box-shadow: 0 0.85rem 1.45rem color-mix(in srgb, var(--azulsurexsd2) 12%, transparent);
  transition: transform 0.28s ease;
}

.lp-plan-fit__icon img {
  width: 3.1rem;
  height: 3.1rem;
  object-fit: contain;
}

.lp-plan-fit__icon--yellow {
  background: color-mix(in srgb, var(--amarillo) 54%, var(--blanco));
}

.lp-plan-fit__icon--green {
  background: color-mix(in srgb, var(--verde) 38%, var(--blanco));
}

.lp-plan-fit__icon--aqua {
  background: color-mix(in srgb, var(--aqual1) 58%, var(--blanco));
}

.lp-plan-fit__icon--blue {
  background: color-mix(in srgb, var(--azulsurexsl3) 68%, var(--blanco));
}

@media (max-width: 1199.98px) {
  .lp-plan-fit__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .lp-plan-fit {
    padding: 5rem 0;
  }

  .lp-plan-fit__header {
    margin-bottom: 3rem;
  }

  .lp-plan-fit__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
  }

  .lp-plan-fit__card {
    min-height: 15.5rem;
  }
}

@media (max-width: 767.98px) {
  .lp-plan-fit {
    padding: 4.2rem 0;
  }

  .lp-plan-fit__header {
    margin-bottom: 2.35rem;
  }

  .lp-plan-fit__title {
    margin-bottom: 1.2rem;
    font-size: 2rem;
  }

  .lp-plan-fit__description {
    font-size: 0.92rem;
  }

  .lp-plan-fit__subtitle {
    font-size: 1.25rem;
  }

  .lp-plan-fit__cards {
    grid-template-columns: 1fr;
  }

  .lp-plan-fit__card {
    min-height: auto;
    padding: 1.25rem;
    display: grid;
    grid-template-columns: 4.25rem 1fr;
    align-items: center;
    gap: 1.15rem;
  }

  .lp-plan-fit__card p {
    margin: 0;
    font-size: 1rem;
    line-height: 1.45;
  }

  .lp-plan-fit__icon {
    width: 4.25rem;
    height: 4.25rem;
  }

  .lp-plan-fit__icon img {
    width: 2.35rem;
    height: 2.35rem;
  }
}

/* === DIAGNÓSTICO RÁPIDO === */
.lp-diagnostico-rapido {
  padding: 6.8rem 0 5.6rem;
  background: var(--blanco);
  color: var(--grisoscuro);
}

.lp-diagnostico-rapido__grid {
  display: grid;
  grid-template-columns: minmax(20rem, 0.85fr) minmax(34rem, 1fr);
  align-items: center;
  gap: 5.6rem;
}

.lp-diagnostico-rapido__eyebrow {
  display: inline-flex;
  margin-bottom: 2.55rem;
  padding: 0.42rem 2rem;
  border: 1px solid var(--rojol2);
  border-radius: 999px;
  background: var(--rojol3);
  color: var(--rojod1);
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.08rem;
}

.lp-diagnostico-rapido__title {
  max-width: 36rem;
  margin: 0 0 1.8rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: clamp(2rem, 3vw, 2.55rem);
  font-weight: 600;
  line-height: 1.22;
}

.lp-diagnostico-rapido__title span {
  color: var(--rojo);
}

.lp-diagnostico-rapido__text {
  max-width: 38rem;
  margin: 0;
  color: var(--grisoscuro);
  font-size: 1rem;
  line-height: 1.58;
}

.lp-diagnostico-rapido__panel {
  padding: 2.8rem 2.55rem 2.75rem;
  border-radius: 0.28rem;
  background: var(--grisclaro);
  box-shadow: 0 1.4rem 3rem color-mix(in srgb, var(--negro) 7%, transparent);
}

.lp-diagnostico-rapido__panel-title {
  margin: 0 0 1rem;
  color: var(--negro);
  font-family: var(--font-headline);
  font-size: 1.78rem;
  font-weight: 500;
  line-height: 1.15;
}

.lp-diagnostico-rapido__panel-text,
.lp-diagnostico-rapido__data {
  margin: 0;
  color: var(--grisoscuro);
  font-size: 0.98rem;
  line-height: 1.45;
}

.lp-diagnostico-rapido__data {
  max-width: 35rem;
  margin-top: 1rem;
}

.lp-diagnostico-rapido__data strong {
  font-weight: 800;
}

.lp-diagnostico-rapido__checklist {
  display: grid;
  gap: 1.45rem;
  margin-top: 2rem;
}

.lp-diagnostico-rapido__check {
  position: relative;
  display: grid;
  grid-template-columns: 1.15rem 1fr;
  align-items: center;
  gap: 0.95rem;
  min-height: 3.65rem;
  padding: 0.95rem 1rem;
  border: 1px solid color-mix(in srgb, var(--rojo) 42%, transparent);
  border-radius: 0.28rem;
  background: var(--blanco);
  cursor: pointer;
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

.lp-diagnostico-rapido__check:hover {
  transform: translateY(-0.16rem);
  border-color: color-mix(in srgb, var(--rojo) 66%, transparent);
  box-shadow: 0 0.85rem 1.65rem color-mix(in srgb, var(--rojo) 7%, transparent);
}

.lp-diagnostico-rapido__check input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.lp-diagnostico-rapido__check input:checked+.lp-diagnostico-rapido__box {
  border-color: var(--rojo);
  background: var(--rojo);
}

.lp-diagnostico-rapido__check input:checked+.lp-diagnostico-rapido__box::after {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}

.lp-diagnostico-rapido__check:has(input:checked) {
  border-color: color-mix(in srgb, var(--rojo) 72%, transparent);
  background: color-mix(in srgb, var(--rojo) 4%, var(--blanco));
  box-shadow: 0 0.85rem 1.65rem color-mix(in srgb, var(--rojo) 8%, transparent);
}

.lp-diagnostico-rapido__box {
  position: relative;
  width: 1.05rem;
  height: 1.05rem;
  border: 2px solid color-mix(in srgb, var(--rojo) 72%, var(--blanco));
  border-radius: 0.16rem;
  background: var(--blanco);
  transition: 0.2s ease;
}

.lp-diagnostico-rapido__box::after {
  content: "";
  position: absolute;
  top: 0.07rem;
  left: 0.27rem;
  width: 0.32rem;
  height: 0.58rem;
  border: solid var(--blanco);
  border-width: 0 2px 2px 0;
  opacity: 0;
  transform: rotate(45deg) scale(0.7);
  transition: 0.18s ease;
}

.lp-diagnostico-rapido__check-text {
  color: var(--grisoscuro);
  font-family: var(--font-headline);
  font-size: 1.12rem;
  font-weight: 500;
  line-height: 1.25;
}

@media (max-width: 991.98px) {
  .lp-diagnostico-rapido {
    padding: 5rem 0;
  }

  .lp-diagnostico-rapido__grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .lp-diagnostico-rapido__intro {
    text-align: center;
  }

  .lp-diagnostico-rapido__title,
  .lp-diagnostico-rapido__text,
  .lp-diagnostico-rapido__panel {
    margin-inline: auto;
  }

  .lp-diagnostico-rapido__panel {
    max-width: 43rem;
  }
}

@media (max-width: 767.98px) {
  .lp-diagnostico-rapido {
    padding: 4.2rem 0;
  }

  .lp-diagnostico-rapido__eyebrow {
    margin-bottom: 1.8rem;
    padding: 0.4rem 1.25rem;
    font-size: 0.72rem;
    letter-spacing: 0.09rem;
  }

  .lp-diagnostico-rapido__title {
    margin-bottom: 1.25rem;
    font-size: 1.9rem;
  }

  .lp-diagnostico-rapido__text,
  .lp-diagnostico-rapido__panel-text,
  .lp-diagnostico-rapido__data {
    font-size: 0.9rem;
  }

  .lp-diagnostico-rapido__panel {
    padding: 1.45rem;
  }

  .lp-diagnostico-rapido__panel-title {
    font-size: 1.45rem;
  }

  .lp-diagnostico-rapido__checklist {
    gap: 0.85rem;
    margin-top: 1.45rem;
  }

  .lp-diagnostico-rapido__check {
    min-height: auto;
    padding: 0.85rem;
    gap: 0.75rem;
  }

  .lp-diagnostico-rapido__check-text {
    font-size: 0.98rem;
  }
}

/* === CTA · DIAGNÓSTICO === */
.lp-diagnostico-cta {
  padding: 2.8rem 0 2.6rem;
  background: var(--grisclaro);
  color: var(--azulsurexsd1);
}

.lp-diagnostico-cta__grid {
  display: grid;
  grid-template-columns: 15rem minmax(0, 41rem);
  align-items: center;
  justify-content: center;
  gap: 3.4rem;
}

.lp-diagnostico-cta__visual {
  justify-self: end;
}

.lp-diagnostico-cta__visual img {
  display: block;
  width: min(15rem, 100%);
  height: auto;
  filter: drop-shadow(0 0.75rem 1.35rem color-mix(in srgb, var(--negro) 10%, transparent));
  animation: lp-diagnostico-cta-float 5.8s ease-in-out infinite;
}

.lp-diagnostico-cta__content h2 {
  margin: 0 0 1.55rem;
  color: var(--rojo);
  font-family: var(--font-headline);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.045rem;
}

.lp-diagnostico-cta__button {
  background: #000;
  color: var(--blanco);
  box-shadow: 0 0.85rem 1.7rem color-mix(in srgb, var(--negro) 16%, transparent);
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.lp-diagnostico-cta__button:hover {
  transform: translateY(-0.18rem);
  background: #1b1b1b;
  color: var(--blanco);
  box-shadow: 0 1.05rem 2rem color-mix(in srgb, var(--azulsurexsd2) 22%, transparent);
}

@keyframes lp-diagnostico-cta-float {

  0%,
  100% {
    transform: translateY(0) rotate(-1deg);
  }

  50% {
    transform: translateY(-0.35rem) rotate(1deg);
  }
}

@media (max-width: 991.98px) {
  .lp-diagnostico-cta {
    padding: 3rem 0;
  }

  .lp-diagnostico-cta__grid {
    grid-template-columns: 1fr;
    max-width: 42rem;
    margin-inline: auto;
    gap: 1.8rem;
    text-align: center;
  }

  .lp-diagnostico-cta__visual {
    justify-self: center;
  }

  .lp-diagnostico-cta__visual img {
    width: 10.5rem;
  }

  .lp-diagnostico-cta__content p {
    margin-inline: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-diagnostico-cta {
    padding: 2.6rem 0;
  }

  .lp-diagnostico-cta__button {
    width: 100%;
    justify-content: center;
  }
}

/* === SEGUROS · PLAN ESENCIAL === */
.lp-seguros-plan {
  padding: 6.6rem 0 5.6rem;
  background: var(--blanco);
  color: var(--grisoscuro);
}

.lp-seguros-plan__header {
  max-width: 67rem;
  margin: 0 auto 4.25rem;
  text-align: center;
}

.lp-seguros-plan__title {
  max-width: 58rem;
  margin: 0 auto 1.75rem;
  color: var(--azulsurexsd1);
}

.lp-seguros-plan__title span {
  color: var(--azulsurexs);
}

.lp-seguros-plan__description {
  margin: 0;
  color: var(--grisoscuro);
  line-height: 1.45;
}

.lp-seguros-plan__description strong {
  font-weight: 800;
}

.lp-seguros-plan__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.3rem;
  margin-bottom: 2.9rem;
}

.lp-seguros-plan__card {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 45%, transparent);
  border-radius: 0.2rem;
  background: var(--blanco);
  box-shadow: 0 0.85rem 1.8rem color-mix(in srgb, var(--azulsurexsd2) 5%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.lp-seguros-plan__card:hover {
  transform: translateY(-0.32rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 36%, transparent);
  box-shadow: 0 1.25rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 10%, transparent);
}

.lp-seguros-plan__card:hover .lp-seguros-plan__image {
  transform: scale(1.025);
}

.lp-seguros-plan__image-wrap {
  position: relative;
  display: grid;
  place-items: center;
  height: 9.1rem;
  margin: 1.55rem 1.55rem 0;
  overflow: hidden;
  border-radius: 0.28rem;
  background: radial-gradient(circle at 50% 58%, color-mix(in srgb, var(--azulsurexsl2) 18%, transparent), transparent 38%), color-mix(in srgb, var(--azulsurexsl4) 72%, var(--blanco));
}

.lp-seguros-plan__image-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.5;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0 16%, color-mix(in srgb, var(--azulsurexsl3) 28%, transparent) 16% 17%, transparent 17% 100%), linear-gradient(180deg, transparent 0 70%, color-mix(in srgb, var(--azulsurexsl2) 16%, transparent) 70% 71%, transparent 71% 100%);
}

.lp-seguros-plan__image {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.lp-seguros-plan__body {
  padding: 2rem 1.45rem 1.7rem;
  text-align: center;
}

.lp-seguros-plan__body h3 {
  margin: 0 0 1.15rem;
  color: var(--azulsurexs);
  font-weight: 700;
}

.lp-seguros-plan__tag {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  max-width: 100%;
  margin-bottom: 1.4rem;
  padding: 0.42rem 0.65rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 38%, transparent);
  border-radius: 0.35rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 72%, var(--blanco));
  color: var(--azulsurexsd1);
  line-height: 1.1;
}

.lp-seguros-plan__tag img {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  object-fit: contain;
}

.lp-seguros-plan__lead {
  min-height: 3.1rem;
  margin: 0 0 1.75rem;
  color: var(--negro);
  text-align: left;
  line-height: 1.35;
}

.lp-seguros-plan__lead strong {
  font-weight: 800;
}

.lp-seguros-plan__list {
  display: grid;
  gap: 0.85rem;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}

.lp-seguros-plan__list li {
  position: relative;
  padding-left: 1.45rem;
  color: var(--negro);
  line-height: 1.35;
}

.lp-seguros-plan__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.18rem;
  width: 1rem;
  height: 1rem;
  background: url("../img/iconos/sistema/aqua/check-circle.svg") center/contain no-repeat;
}

.lp-seguros-plan__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.8rem;
}

@media (max-width: 991.98px) {
  .lp-seguros-plan {
    padding: 5rem 0;
  }

  .lp-seguros-plan__header {
    margin-bottom: 3rem;
  }

  .lp-seguros-plan__cards {
    grid-template-columns: 1fr;
    max-width: 33rem;
    margin-inline: auto;
    gap: 1.4rem;
  }
}

@media (max-width: 767.98px) {
  .lp-seguros-plan {
    padding: 4.2rem 0;
  }

  .lp-seguros-plan__header {
    margin-bottom: 2.4rem;
  }

  .lp-seguros-plan__image-wrap {
    height: 8.4rem;
    margin: 1.1rem 1.1rem 0;
  }

  .lp-seguros-plan__body {
    padding: 1.55rem 1.1rem 1.35rem;
  }

  .lp-seguros-plan__lead {
    min-height: auto;
  }

  .lp-seguros-plan__actions {
    display: grid;
    gap: 0.85rem;
  }

  .lp-seguros-plan__actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* === DIFERENCIALES · SUREXS === */
.lp-diferente-surexs {
  padding: 6.4rem 0 5.8rem;
  background: var(--blanco);
  color: var(--azulsurexsd1);
}

.lp-diferente-surexs__header {
  max-width: 58rem;
  margin: 0 auto 3.4rem;
  text-align: center;
}

.lp-diferente-surexs__title {
  margin: 0 0 1.7rem;
  color: var(--azulsurexsd1);
}

.lp-diferente-surexs__description {
  margin: 0;
  color: var(--grisoscuro);
}

.lp-diferente-surexs__features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.75rem 2.1rem;
  margin-bottom: 5.2rem;
}

.lp-diferente-surexs__feature {
  display: grid;
  grid-template-columns: 8.8rem 1fr;
  align-items: center;
  gap: 2rem;
  min-height: 11.5rem;
  padding: 1.35rem 2.1rem;
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 38%, transparent);
  border-radius: 0.3rem;
  background: var(--blanco);
  box-shadow: 0 1.15rem 2.35rem color-mix(in srgb, var(--azulsurexsd2) 7%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.lp-diferente-surexs__feature:hover {
  transform: translateY(-0.28rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 34%, transparent);
  box-shadow: 0 1.4rem 2.7rem color-mix(in srgb, var(--azulsurexsd2) 11%, transparent);
}

.lp-diferente-surexs__feature:hover .lp-diferente-surexs__feature-img {
  transform: translateY(-0.12rem) scale(1.02);
}

.lp-diferente-surexs__feature-img {
  display: block;
  width: 8.4rem;
  height: auto;
  transition: transform 0.28s ease;
}

.lp-diferente-surexs__feature-content h3 {
  margin: 0 0 0.85rem;
  color: var(--azulsurexsd1);
  font-weight: 600;
}

.lp-diferente-surexs__feature-content p {
  margin: 0;
  color: var(--grisoscuro);
  line-height: 1.45;
}

.lp-diferente-surexs__expectativas {
  margin-bottom: 3.4rem;
  text-align: center;
}

.lp-diferente-surexs__expectativas h2 {
  margin: 0 0 3rem;
  color: var(--azulsurexsd1);
}

.lp-diferente-surexs__benefits {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.65rem;
}

.lp-diferente-surexs__benefit {
  min-height: 11.4rem;
  padding: 1.4rem 1.25rem 1.35rem;
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 40%, transparent);
  border-radius: 0.25rem;
  background: var(--blanco);
  box-shadow: 0 1rem 2rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  text-align: left;
}

.lp-diferente-surexs__benefit:hover {
  transform: translateY(-0.3rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 34%, transparent);
  box-shadow: 0 1.3rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 12%, transparent);
}

.lp-diferente-surexs__benefit:hover .lp-diferente-surexs__benefit-icon {
  transform: translateY(-0.12rem) scale(1.03);
}

.lp-diferente-surexs__benefit p {
  margin: 1.55rem 0 0;
  color: var(--azulsurexsd1);
  line-height: 1.45;
}

.lp-diferente-surexs__benefit-icon {
  display: grid;
  place-items: center;
  width: 4.35rem;
  height: 4.35rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 28%, transparent);
  border-radius: 0.25rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 74%, var(--blanco));
  box-shadow: 0 0.7rem 1.35rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
  transition: transform 0.28s ease;
}

.lp-diferente-surexs__benefit-icon img {
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}

.lp-diferente-surexs__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.8rem;
}

@media (max-width: 1199.98px) {
  .lp-diferente-surexs__features {
    gap: 1.35rem;
  }

  .lp-diferente-surexs__feature {
    grid-template-columns: 7.5rem 1fr;
    gap: 1.45rem;
    padding-inline: 1.5rem;
  }

  .lp-diferente-surexs__feature-img {
    width: 7.3rem;
  }

  .lp-diferente-surexs__benefits {
    gap: 1.15rem;
  }
}

@media (max-width: 991.98px) {
  .lp-diferente-surexs {
    padding: 5rem 0;
  }

  .lp-diferente-surexs__features {
    grid-template-columns: 1fr;
    max-width: 42rem;
    margin-inline: auto;
    margin-bottom: 4rem;
  }

  .lp-diferente-surexs__benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 42rem;
    margin-inline: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-diferente-surexs {
    padding: 4.2rem 0;
  }

  .lp-diferente-surexs__header {
    margin-bottom: 2.6rem;
  }

  .lp-diferente-surexs__features {
    gap: 1rem;
  }

  .lp-diferente-surexs__feature {
    grid-template-columns: 5.8rem 1fr;
    gap: 1rem;
    min-height: auto;
    padding: 1rem;
  }

  .lp-diferente-surexs__feature-img {
    width: 5.6rem;
  }

  .lp-diferente-surexs__feature-content h3 {
    margin-bottom: 0.45rem;
  }

  .lp-diferente-surexs__expectativas {
    margin-bottom: 2.4rem;
  }

  .lp-diferente-surexs__expectativas h2 {
    margin-bottom: 2rem;
  }

  .lp-diferente-surexs__benefits {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .lp-diferente-surexs__benefit {
    display: grid;
    grid-template-columns: 3.8rem 1fr;
    align-items: center;
    gap: 1rem;
    min-height: auto;
    padding: 1rem;
  }

  .lp-diferente-surexs__benefit p {
    margin: 0;
  }

  .lp-diferente-surexs__benefit-icon {
    width: 3.8rem;
    height: 3.8rem;
  }

  .lp-diferente-surexs__benefit-icon img {
    width: 1.8rem;
    height: 1.8rem;
  }

  .lp-diferente-surexs__actions {
    display: grid;
    gap: 0.85rem;
  }

  .lp-diferente-surexs__actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* === HUMAN + TECH === */
.lp-human-tech {
  padding: 6.6rem 0 5.8rem;
  background: var(--azulsurexsd1);
  color: var(--blanco);
}

.lp-human-tech__header {
  max-width: 58rem;
  margin: 0 auto 3.8rem;
  text-align: center;
}

.lp-human-tech__title {
  margin: 0 0 2.3rem;
  color: var(--blanco);
}

.lp-human-tech__title span {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--aqual1);
}

.lp-human-tech__text,
.lp-human-tech__highlight {
  margin: 0 auto;
  color: color-mix(in srgb, var(--blanco) 86%, var(--azulsurexsl4));
  line-height: 1.45;
}

.lp-human-tech__text {
  max-width: 52rem;
  margin-bottom: 1.35rem;
}

.lp-human-tech__highlight {
  max-width: 50rem;
  margin-bottom: 2.4rem;
  font-weight: 800;
}

.lp-human-tech__subtitle {
  margin: 0;
  color: var(--aqual1);
  font-weight: 700;
}

.lp-human-tech__pillars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.6rem;
  margin-bottom: 5rem;
}

.lp-human-tech__pillar {
  min-height: 16.4rem;
  padding: 2.35rem 1.65rem 1.8rem;
  border-radius: 0.28rem;
  background: var(--azulsurexs);
  text-align: center;
  box-shadow: 0 1.1rem 2.5rem color-mix(in srgb, var(--negro) 12%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
}

.lp-human-tech__pillar:hover {
  transform: translateY(-0.35rem);
  background: color-mix(in srgb, var(--azulsurexs) 88%, var(--aqua));
  box-shadow: 0 1.45rem 3rem color-mix(in srgb, var(--negro) 18%, transparent);
}

.lp-human-tech__pillar:hover .lp-human-tech__pillar-img {
  transform: translateY(-0.15rem) scale(1.03);
}

.lp-human-tech__pillar h3 {
  margin: 1.25rem 0 0.95rem;
  color: var(--aqual1);
  font-weight: 700;
  line-height: 1.15;
}

.lp-human-tech__pillar h3 span {
  display: block;
  color: var(--blanco);
  font-weight: 500;
  font-size: 0.65em;
}

.lp-human-tech__pillar p {
  max-width: 20rem;
  margin: 0 auto;
  color: color-mix(in srgb, var(--blanco) 88%, var(--azulsurexsl4));
  line-height: 1.35;
}

.lp-human-tech__pillar-img {
  display: block;
  width: 7.5rem;
  height: auto;
  margin: 0 auto;
  transition: transform 0.28s ease;
}

.lp-human-tech__result {
  padding: 3.2rem 3rem 3.35rem;
  border-radius: 0.55rem;
  background: radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--blanco) 22%, transparent), transparent 18rem), linear-gradient(135deg, var(--aqual1), var(--aqua));
  color: var(--azulsurexsd1);
  text-align: center;
  box-shadow: 0 1.4rem 3rem color-mix(in srgb, var(--negro) 16%, transparent);
}

.lp-human-tech__result h3 {
  margin: 0 0 2.65rem;
  color: var(--negro);
  font-weight: 500;
}

.lp-human-tech__result h3 strong {
  font-weight: 800;
}

.lp-human-tech__result-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.8rem;
}

.lp-human-tech__result-item {
  display: grid;
  justify-items: center;
  gap: 0rem;
}

.lp-human-tech__result-item img {
  width: 4rem;
  height: 4rem;
  object-fit: contain;
  opacity: 0.7;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.lp-human-tech__result-item p {
  max-width: 13rem;
  margin: 0;
  color: var(--negro);
  line-height: 1.3;
}

.lp-human-tech__result-item strong {
  font-weight: 800;
}

.lp-human-tech__result-item:hover img {
  opacity: 0.9;
  transform: translateY(-0.15rem) scale(1.04);
}

@media (max-width: 991.98px) {
  .lp-human-tech {
    padding: 5rem 0;
  }

  .lp-human-tech__header {
    margin-bottom: 3rem;
  }

  .lp-human-tech__pillars {
    grid-template-columns: 1fr;
    max-width: 33rem;
    margin-inline: auto;
    margin-bottom: 3.5rem;
    gap: 1.25rem;
  }

  .lp-human-tech__pillar {
    min-height: auto;
  }

  .lp-human-tech__result {
    padding: 2.6rem 1.6rem;
  }

  .lp-human-tech__result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem 1.4rem;
  }
}

@media (max-width: 767.98px) {
  .lp-human-tech {
    padding: 4.2rem 0;
  }

  .lp-human-tech__title {
    margin-bottom: 1.55rem;
  }

  .lp-human-tech__highlight {
    margin-bottom: 1.9rem;
  }

  .lp-human-tech__pillar {
    padding: 1.7rem 1.2rem;
  }

  .lp-human-tech__pillar-img {
    width: 6.2rem;
  }

  .lp-human-tech__result {
    padding: 2.2rem 1.2rem;
    border-radius: 0.42rem;
  }

  .lp-human-tech__result h3 {
    margin-bottom: 2rem;
  }

  .lp-human-tech__result-grid {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .lp-human-tech__result-item {
    gap: 0.85rem;
  }

  .lp-human-tech__result-item img {
    width: 2.8rem;
    height: 2.8rem;
  }

  .lp-human-tech__result-item p {
    max-width: 16rem;
  }
}

/* === AMMIA · CONTROL TOTAL === */
.lp-ammia-control {
  padding: 6.4rem 0 6.1rem;
  background: var(--blanco);
  color: var(--grisoscuro);
}

.lp-ammia-control__grid {
  display: grid;
  grid-template-columns: minmax(20rem, 0.78fr) minmax(34rem, 1fr);
  align-items: center;
  gap: 5rem;
}

.lp-ammia-control__eyebrow {
  display: inline-flex;
  margin-bottom: 2.45rem;
  padding: 0.45rem 2rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 32%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--azulsurexsl4) 62%, var(--blanco));
  color: var(--azulsurexs);
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.12rem;
}

.lp-ammia-control__title {
  max-width: 36rem;
  margin: 0 0 1.7rem;
  color: var(--azulsurexsd1);
  line-height: 1.35;
}

.lp-ammia-control__text {
  max-width: 36rem;
  margin: 0;
  color: var(--grisoscuro);
  line-height: 1.6;
}

.lp-ammia-control__panel {
  padding: 2.75rem 2.55rem 2.65rem;
  border-radius: 0.3rem;
  background: color-mix(in srgb, var(--azulsurexsl4) 78%, var(--blanco));
  box-shadow: 0 1.35rem 2.8rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
}

.lp-ammia-control__panel-title {
  margin: 0 0 2rem;
  color: var(--grisoscuro);
  font-weight: 700;
}

.lp-ammia-control__list {
  display: grid;
  gap: 1.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-ammia-control__list li {
  display: grid;
  grid-template-columns: 1.45rem 1fr;
  align-items: center;
  gap: 1rem;
  min-height: 4rem;
  padding: 1rem 1.1rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 25%, transparent);
  border-radius: 0.28rem;
  background: var(--blanco);
  box-shadow: 0 0.75rem 1.5rem color-mix(in srgb, var(--azulsurexsd2) 6%, transparent);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.lp-ammia-control__list li:hover {
  transform: translateY(-0.18rem);
  border-color: color-mix(in srgb, var(--azulsurexs) 36%, transparent);
  box-shadow: 0 1rem 1.9rem color-mix(in srgb, var(--azulsurexsd2) 10%, transparent);
}

.lp-ammia-control__list img {
  width: 1.5rem;
  height: 1.5rem;
  object-fit: contain;
}

.lp-ammia-control__list span {
  color: var(--grisoscuro);
  font-weight: 600;
  line-height: 1.2;
}

@media (max-width: 991.98px) {
  .lp-ammia-control {
    padding: 5rem 0;
  }

  .lp-ammia-control__grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .lp-ammia-control__content {
    text-align: center;
  }

  .lp-ammia-control__title,
  .lp-ammia-control__text,
  .lp-ammia-control__panel {
    margin-inline: auto;
  }

  .lp-ammia-control__panel {
    max-width: 43rem;
  }
}

@media (max-width: 767.98px) {
  .lp-ammia-control {
    padding: 4.2rem 0;
  }

  .lp-ammia-control__eyebrow {
    margin-bottom: 1.8rem;
    padding: 0.4rem 1.35rem;
    font-size: 0.72rem;
    letter-spacing: 0.09rem;
  }

  .lp-ammia-control__title {
    margin-bottom: 1.25rem;
  }

  .lp-ammia-control__text {
    line-height: 1.5;
  }

  .lp-ammia-control__panel {
    padding: 1.45rem;
  }

  .lp-ammia-control__panel-title {
    margin-bottom: 1.35rem;
  }

  .lp-ammia-control__list {
    gap: 0.9rem;
  }

  .lp-ammia-control__list li {
    min-height: auto;
    padding: 0.9rem;
    gap: 0.75rem;
  }

  .lp-ammia-control__list img {
    width: 1.1rem;
    height: 1.1rem;
  }
}

/* === ARQUITECTURA · AMMIA === */
.lp-arquitectura-ammia {
  padding: 5.9rem 0 5.4rem;
  background: var(--blanco);
  color: var(--azulsurexsd1);
}

.lp-arquitectura-ammia__header {
  max-width: 58rem;
  margin: 0 auto 3.9rem;
  text-align: center;
}

.lp-arquitectura-ammia__title {
  margin: 0;
  color: var(--azulsurexsd1);
}

.lp-arquitectura-ammia__title span {
  color: var(--azulsurexs);
}

.lp-arquitectura-ammia__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.3rem;
}

.lp-arquitectura-ammia__card {
  overflow: hidden;
  min-height: 25.8rem;
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 42%, transparent);
  border-radius: 0.25rem;
  background: var(--blanco);
  box-shadow: 0 1.1rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.lp-arquitectura-ammia__card:hover {
  transform: translateY(-0.35rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 34%, transparent);
  box-shadow: 0 1.45rem 2.8rem color-mix(in srgb, var(--azulsurexsd2) 12%, transparent);
}

.lp-arquitectura-ammia__card:hover .lp-arquitectura-ammia__image {
  transform: translateY(-0.14rem) scale(1.025);
}

.lp-arquitectura-ammia__image-wrap {
  display: grid;
  place-items: center;
  min-height: 15.6rem;
  padding: 1.45rem 1.5rem 0.4rem;
}

.lp-arquitectura-ammia__image {
  display: block;
  width: min(15rem, 82%);
  height: auto;
  transition: transform 0.28s ease;
}

.lp-arquitectura-ammia__body {
  padding: 0 1.55rem 1.7rem;
}

.lp-arquitectura-ammia__body h3 {
  margin: 0 0 0.65rem;
  color: var(--azulsurexsd1);
  font-weight: 700;
  line-height: 1.15;
}

.lp-arquitectura-ammia__body span {
  display: block;
  margin-bottom: 1.55rem;
  color: var(--grisclaro1);
  font-style: italic;
  line-height: 1.2;
}

.lp-arquitectura-ammia__body p {
  position: relative;
  margin: 0;
  padding-left: 2rem;
  color: var(--negro);
  line-height: 1.35;
}

.lp-arquitectura-ammia__body p::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.12rem;
  width: 1.15rem;
  height: 1.15rem;
  background: url("../img/iconos/sistema/aqua/check-circle.svg") center/contain no-repeat;
}

@media (max-width: 991.98px) {
  .lp-arquitectura-ammia {
    padding: 5rem 0;
  }

  .lp-arquitectura-ammia__header {
    margin-bottom: 3rem;
  }

  .lp-arquitectura-ammia__cards {
    grid-template-columns: 1fr;
    max-width: 33rem;
    margin-inline: auto;
    gap: 1.4rem;
  }

  .lp-arquitectura-ammia__card {
    min-height: auto;
  }
}

@media (max-width: 767.98px) {
  .lp-arquitectura-ammia {
    padding: 4.2rem 0;
  }

  .lp-arquitectura-ammia__header {
    margin-bottom: 2.4rem;
  }

  .lp-arquitectura-ammia__image-wrap {
    min-height: 12.4rem;
    padding: 1.2rem 1rem 0.2rem;
  }

  .lp-arquitectura-ammia__image {
    width: min(12.5rem, 78%);
  }

  .lp-arquitectura-ammia__body {
    padding: 0 1.15rem 1.35rem;
  }

  .lp-arquitectura-ammia__body span {
    margin-bottom: 1.15rem;
  }

  .lp-arquitectura-ammia__body p {
    padding-left: 1.7rem;
  }

  .lp-arquitectura-ammia__body p::before {
    width: 1rem;
    height: 1rem;
  }
}

/* === BANNER · COTIZA SEGURO EMPRESARIAL Variante de .lp-banner-broker === */
.lp-banner-broker .lp-banner-broker__image {
  width: min(17rem, 100%);
}

.lp-banner-broker--cotiza {
  padding: 4.4rem 0 4rem;
}

.lp-banner-broker--cotiza .lp-banner-broker__grid {
  grid-template-columns: minmax(16rem, 0.48fr) minmax(0, 1fr);
  gap: 4.8rem;
}

.lp-banner-broker--cotiza .lp-banner-broker__image {
  width: min(17rem, 100%);
}

.lp-banner-broker--cotiza .lp-banner-broker__title {
  margin-bottom: 1.25rem;
}

.lp-banner-broker--cotiza .lp-banner-broker__text {
  margin-bottom: 2.1rem;
  color: var(--aqual1);
}

.lp-banner-broker--cotiza .lp-banner-broker__text strong {
  color: var(--aqual1);
}

.lp-banner-broker__list-wrap {
  margin-bottom: 2.25rem;
}

.lp-banner-broker__list-wrap p {
  margin: 0 0 0.9rem;
  color: var(--blanco);
  font-weight: 800;
  line-height: 1.35;
}

.lp-banner-broker__list {
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-banner-broker__list li {
  position: relative;
  padding-left: 2rem;
  color: color-mix(in srgb, var(--blanco) 90%, var(--azulsurexsl4));
  line-height: 1.35;
}

.lp-banner-broker__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.05rem;
  width: 1.25rem;
  height: 1.25rem;
  background: url("../img/iconos/sistema/aqua/check-circle.svg") center/contain no-repeat;
}

/* Responsive específico de la variante */
@media (max-width: 991.98px) {
  .lp-banner-broker .lp-banner-broker__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .lp-banner-broker .lp-banner-broker__image {
    width: min(17rem, 74vw);
  }

  .lp-banner-broker .lp-banner-broker__list-wrap {
    max-width: 22rem;
    margin-inline: auto;
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .lp-banner-broker--cotiza {
    padding: 3.2rem 0;
  }

  .lp-banner-broker--cotiza .lp-banner-broker__image {
    width: min(15rem, 72vw);
  }

  .lp-banner-broker--cotiza .lp-banner-broker__text {
    margin-bottom: 1.65rem;
  }

  .lp-banner-broker__list-wrap {
    margin-bottom: 1.7rem;
  }

  .lp-banner-broker__list {
    gap: 0.55rem;
  }

  .lp-banner-broker__list li {
    padding-left: 1.75rem;
  }

  .lp-banner-broker__list li::before {
    width: 1.1rem;
    height: 1.1rem;
  }
}

/* === PLAN CORPORATE · MODIFICADORES === */
.lp-plan--corporate {
  --lp-corporate-shadow: 0 1.25rem 2.8rem color-mix(in srgb, var(--azulsurexs) 11%, transparent);
  --lp-corporate-shadow-strong: 0 1.65rem 3.2rem color-mix(in srgb, var(--azulsurexsd1) 17%, transparent);
  --lp-corporate-border: color-mix(in srgb, var(--azulsurexsl3) 28%, transparent);
  --lp-corporate-soft-bg: color-mix(in srgb, var(--azulsurexsl4) 76%, var(--blanco));
  --lp-corporate-soft-aqua: color-mix(in srgb, var(--azulsurexsl2) 18%, var(--blanco));
  --lp-corporate-dark: var(--azulsurexsd1);
}

/* === ARQUITECTURA AMMIA · CORPORATE === */
.lp-arquitectura-ammia--corporate {
  padding: 0rem 0 6rem;
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__header {
  margin-bottom: 3.6rem;
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__title span {
  color: var(--azulsurexs);
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__cards {
  margin-bottom: 4rem;
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact {
  max-width: 64rem;
  margin: 0 auto;
  padding: 1.65rem 1.8rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 24%, transparent);
  border-radius: 0.35rem;
  background: var(--azulsurexsl4);
  box-shadow: 0 1rem 2.1rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact h3 {
  margin: 0 0 1.15rem;
  color: var(--azulsurexsd1);
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact li {
  position: relative;
  margin: 0;
  padding-left: 1.75rem;
  color: var(--negro);
  font-size: 18px;
  line-height: 1.35;
  font-family: urbanist;
}

.lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 1.05rem;
  height: 1.05rem;
  background: url("../img/iconos/sistema/azul-l1/check-circle.svg") center/contain no-repeat;
}

@media (max-width: 991.98px) {
  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact {
    max-width: 33rem;
  }

  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact ul {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__header {
    margin-bottom: 2.4rem;
  }

  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__cards {
    margin-bottom: 2rem;
  }

  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact {
    padding: 1.25rem 1.15rem;
  }

  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact h3 {
    margin-bottom: 0.95rem;
  }

  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact li {
    padding-left: 1.55rem;
  }

  .lp-arquitectura-ammia--corporate .lp-arquitectura-ammia__impact li::before {
    width: 0.95rem;
    height: 0.95rem;
  }
}

.lp-plan-fit--corporate {
  background: radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--aqual1) 14%, transparent), transparent 14rem), var(--lp-corporate-soft-bg);
}

.lp-plan-fit--corporate .lp-plan-fit__header {
  max-width: 49rem;
}

.lp-plan-fit--corporate .lp-plan-fit__cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 67rem;
  margin-inline: auto;
}

/* === COMPARATIVA CORPORATE === */
.lp-comparativa-corporate {
  position: relative;
  overflow: hidden;
  padding: 6.3rem 0 0;
  background: radial-gradient(circle at 7% 14%, color-mix(in srgb, var(--aqual1) 16%, transparent), transparent 15rem), radial-gradient(circle at 92% 70%, color-mix(in srgb, var(--azulsurexsl2) 18%, transparent), transparent 19rem), var(--blanco);
  color: var(--grisoscuro);
}

.lp-comparativa-corporate::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.32;
  background: linear-gradient(90deg, transparent 0 18%, color-mix(in srgb, var(--azulsurexsl4) 28%, transparent) 18% 18.08%, transparent 18.08% 100%), linear-gradient(180deg, transparent 0 74%, color-mix(in srgb, var(--azulsurexsl4) 28%, transparent) 74% 74.08%, transparent 74.08% 100%);
  background-size: 5.6rem 5.6rem;
}

.lp-comparativa-corporate .container {
  position: relative;
  z-index: 1;
}

.lp-comparativa-corporate__header {
  max-width: 60rem;
  margin: 0 auto 3.25rem;
  text-align: center;
}

.lp-comparativa-corporate__table-wrap {
  overflow: hidden;
  max-width: 78rem;
  margin: 0 auto;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 26%, transparent);
  border-radius: 0.8rem;
  background: var(--blanco);
  box-shadow: 0 1.35rem 3.4rem color-mix(in srgb, var(--azulsurexsd2) 10%, transparent);
}

.lp-comparativa-corporate__table {
  width: 100%;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  color: var(--grisoscuro);
  font-size: 0.88rem;
  line-height: 1.32;
}

.lp-comparativa-corporate__table th,
.lp-comparativa-corporate__table td {
  vertical-align: middle;
  min-height: 4.2rem;
  padding: 1rem 1.15rem;
  border-bottom: 1px solid color-mix(in srgb, var(--grisclaro2) 42%, transparent);
}

.lp-comparativa-corporate__table thead th {
  padding-top: 1.35rem;
  padding-bottom: 1.35rem;
  background: var(--grisclaro);
  color: var(--gris);
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
  font-family: urbanist;
}

.lp-comparativa-corporate__table thead th:first-child {
  width: 24%;
  text-align: left;
}

.lp-comparativa-corporate__table thead th:nth-child(2) {
  width: 28%;
  background: var(--azulsurexsl1);
  font-size: 1.45rem;
  font-weight: 700;
  color: var(--blanco);
  font-family: urbanist;
}

.lp-comparativa-corporate__table thead th:nth-child(3),
.lp-comparativa-corporate__table thead th:nth-child(4) {
  width: 24%;
}

.lp-comparativa-corporate__table thead th span {
  display: block;
  margin-top: 0.25rem;
  color: var(--azulsurexs);
  font-size: 0.78rem;
  font-weight: 700;
}

.lp-comparativa-corporate__table tbody tr {
  transition: background 0.2s ease;
}

.lp-comparativa-corporate__table tbody tr:nth-child(even) th,
.lp-comparativa-corporate__table tbody tr:nth-child(even) td:not(.lp-comparativa-corporate__cell--surexs) {
  background: color-mix(in srgb, var(--grisclaro2) 19%, var(--blanco));
}

.lp-comparativa-corporate__table tbody tr:hover th,
.lp-comparativa-corporate__table tbody tr:hover td:not(.lp-comparativa-corporate__cell--surexs) {
  background: color-mix(in srgb, var(--azulsurexsl4) 32%, var(--blanco));
}

.lp-comparativa-corporate__table tbody tr:hover .lp-comparativa-corporate__cell--surexs {
  background: var(--azulsurexsl4);
}

.lp-comparativa-corporate__table tbody tr:last-child th,
.lp-comparativa-corporate__table tbody tr:last-child td {
  border-bottom: 0;
}

.lp-comparativa-corporate__table tbody th {
  color: var(--grisoscuro);
  font-size: 0.94rem;
  font-weight: 700;
  text-align: left;
}

.lp-comparativa-corporate__table tbody td {
  text-align: center;
}

.lp-comparativa-corporate__surexs-head {
  position: relative;
  background: var(--azulsurexsl4);
}

.lp-comparativa-corporate__cell {
  color: var(--grisoscuro);
  font-size: 0.88rem;
  font-weight: 500;
}

.lp-comparativa-corporate__cell--surexs {
  position: relative;
  color: var(--azulsurexsd1);
  font-weight: 800;
  background: var(--azulsurexsl4);
}

.lp-comparativa-corporate__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.35rem;
  height: 1.35rem;
  margin-right: 0.45rem;
  vertical-align: -0.28rem;
}

.lp-comparativa-corporate__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lp-comparativa-corporate__icon--check {
  filter: saturate(1.05);
}

.lp-comparativa-corporate__icon--cross {
  opacity: 0.82;
}

.lp-comparativa-corporate__icon--neutral {
  opacity: 0.58;
}

.lp-comparativa-corporate__note {
  max-width: 54rem;
  margin: 3rem auto 0;
  padding: 0.95rem 1.25rem;
  border: 1px solid var(--amarillo);
  border-radius: 0.55rem;
  background: var(--amarillol3);
  text-align: center;
}

.lp-comparativa-corporate__note p {
  margin: 0;
  color: var(--amarillod2);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.42;
  font-family: urbanist !important;
}

/* === COMPARATIVA CORPORATE · RESPONSIVE === */
@media (max-width: 991.98px) {
  .lp-comparativa-corporate {
    padding: 5.2rem 0;
  }

  .lp-comparativa-corporate__header {
    margin-bottom: 2.6rem;
  }

  .lp-comparativa-corporate__table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .lp-comparativa-corporate__table {
    min-width: 62rem;
  }

  .lp-comparativa-corporate__table thead th {
    font-size: 0.95rem;
  }

  .lp-comparativa-corporate__table thead th:nth-child(2) {
    font-size: 1.25rem;
  }

  .lp-comparativa-corporate__table th,
  .lp-comparativa-corporate__table td {
    padding: 0.92rem 0.95rem;
  }
}

@media (max-width: 767.98px) {
  .lp-plan-fit--corporate .lp-plan-fit__cards {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .lp-comparativa-corporate {
    padding: 4.4rem 0 0;
  }

  .lp-comparativa-corporate::before {
    opacity: 0.18;
  }

  .lp-comparativa-corporate__header {
    margin-bottom: 2.15rem;
    text-align: left;
  }

  .lp-comparativa-corporate__title,
  .lp-comparativa-corporate__description {
    margin-inline: 0;
  }

  .lp-comparativa-corporate__title {
    font-size: clamp(1.9rem, 10vw, 2.25rem);
    line-height: 1.1;
  }

  .lp-comparativa-corporate__description {
    font-size: 0.93rem;
    line-height: 1.48;
  }

  .lp-comparativa-corporate__table-wrap {
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .lp-comparativa-corporate__table,
  .lp-comparativa-corporate__table thead,
  .lp-comparativa-corporate__table tbody,
  .lp-comparativa-corporate__table tr,
  .lp-comparativa-corporate__table th,
  .lp-comparativa-corporate__table td {
    display: block;
    width: 100%;
  }

  .lp-comparativa-corporate__table {
    min-width: 0;
  }

  .lp-comparativa-corporate__table thead {
    display: none;
  }

  .lp-comparativa-corporate__table tbody {
    display: grid;
    gap: 2rem;
  }

  .lp-comparativa-corporate__table tbody tr {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--azulsurexsl2) 24%, transparent);
    border-radius: 0.85rem;
    background: var(--blanco);
    box-shadow: 0 0.85rem 1.9rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
  }

  .lp-comparativa-corporate__table tbody th {
    grid-column: 1/-1;
    padding: 1rem 1rem 0.9rem;
    border-bottom: 1px solid color-mix(in srgb, var(--azulsurexsl2) 24%, transparent);
    background: color-mix(in srgb, var(--azulsurexsl4) 58%, var(--blanco));
    color: var(--azulsurexsd1);
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.15;
    text-align: left;
  }

  .lp-comparativa-corporate__table tbody td {
    min-height: 0;
    padding: 0.95rem 0.95rem 1rem;
    border-bottom: 0;
    background: var(--blanco);
    text-align: left;
  }

  .lp-comparativa-corporate__table {
    /* Broker tradicional */
  }

  .lp-comparativa-corporate__table tbody td:nth-of-type(2) {
    order: 2;
    border-right: 1px solid color-mix(in srgb, var(--grisclaro2) 40%, transparent);
  }

  .lp-comparativa-corporate__table {
    /* Aseguradora directa */
  }

  .lp-comparativa-corporate__table tbody td:nth-of-type(3) {
    order: 3;
  }

  .lp-comparativa-corporate__cell {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.45rem;
    font-size: 0.88rem;
    line-height: 1.35;
  }

  .lp-comparativa-corporate__cell::before {
    display: block;
    margin-bottom: 0.1rem;
    color: var(--grisoscuro);
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0.04rem;
    text-transform: uppercase;
    opacity: 0.7;
  }

  .lp-comparativa-corporate__cell>img,
  .lp-comparativa-corporate__cell>.lp-comparativa-corporate__icon img {
    display: none;
  }

  .lp-comparativa-corporate {
    /* Etiquetas por columna */
  }

  .lp-comparativa-corporate tbody td:nth-of-type(2).lp-comparativa-corporate__cell::before {
    content: "Broker tradicional";
  }

  .lp-comparativa-corporate tbody td:nth-of-type(3).lp-comparativa-corporate__cell::before {
    content: "Aseguradora directa";
  }

  .lp-comparativa-corporate__cell--surexs {
    order: 4;
    grid-column: 1/-1;
    margin-top: 0.05rem;
    padding: 1rem 1rem 1.05rem !important;
    border-top: 1px solid color-mix(in srgb, var(--azulsurexsl2) 24%, transparent);
    background: radial-gradient(circle at 94% 18%, color-mix(in srgb, var(--azulsurexsl3) 16%, transparent), transparent 8rem), var(--azulsurexsl4) !important;
    color: var(--azulsurexsd1);
    font-size: 0.98rem;
    font-weight: 800;
    text-align: left;
  }

  .lp-comparativa-corporate__cell--surexs::before {
    content: "Surexs";
    display: block;
    margin-bottom: 0.2rem;
    color: var(--azulsurexs);
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
    opacity: 1;
  }

  .lp-comparativa-corporate__cell--surexs .lp-comparativa-corporate__icon {
    display: inline-flex;
    width: 1.15rem;
    height: 1.15rem;
    margin-right: 0.35rem;
    vertical-align: -0.15rem;
  }

  .lp-comparativa-corporate__cell--surexs .lp-comparativa-corporate__icon img {
    display: block;
  }

  .lp-comparativa-corporate__icon {
    flex: 0 0 auto;
    width: 1.05rem;
    height: 1.05rem;
    margin-right: 0.25rem;
  }

  .lp-comparativa-corporate__note {
    margin-top: 1.2rem;
    padding: 0.95rem 1rem;
    text-align: left;
  }

  .lp-comparativa-corporate__note p {
    font-size: 0.88rem;
  }
}

/* === PLAN ENTERPRISE · MODIFICADORES Y SECCIONES NUEVAS === */
.lp-plan--enterprise {
  --lp-enterprise-dark: var(--azulsurexsd2);
  --lp-enterprise-main: var(--azulsurexs);
  --lp-enterprise-soft: color-mix(in srgb, var(--azulsurexsl4) 68%, var(--blanco));
  --lp-enterprise-line: color-mix(in srgb, var(--azulsurexsl2) 26%, transparent);
  --lp-enterprise-shadow: 0 1.35rem 3.4rem color-mix(in srgb, var(--azulsurexsd2) 11%, transparent);
}

/* === ENTERPRISE · OVERRIDES DE SECCIONES HEREDADAS === */
.lp-plan-fit--enterprise {
  position: relative;
  overflow: hidden;
  padding: 5.8rem 0 6.4rem;
  color: var(--azulsurexsd2);
}

.lp-plan-fit--enterprise .lp-plan-fit__header--enterprise {
  max-width: 55rem;
  margin: 0 auto 3.1rem;
  text-align: center;
}

.lp-plan-fit--enterprise .lp-plan-fit__title {
  max-width: 42rem;
  margin-inline: auto;
  color: var(--azulsurexsd1);
}

.lp-plan-fit--enterprise .lp-plan-fit__description {
  max-width: 46rem;
  margin: 1.1rem auto 0;
  color: color-mix(in srgb, var(--azulsurexsd2) 84%, var(--gris));
  font-size: 1rem;
}

.lp-enterprise-fit {
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.58fr);
  gap: 1.25rem;
  align-items: stretch;
  max-width: 74rem;
  margin-inline: auto;
}

.lp-enterprise-fit__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}

.lp-enterprise-fit__card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  min-height: 100%;
  padding: 1.2rem 1.15rem 1.18rem;
  overflow: hidden;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 1.35rem;
  background: var(--blanco);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.lp-enterprise-fit__card:hover {
  transform: translateY(-0.28rem);
  box-shadow: 0 1.8rem 3.4rem color-mix(in srgb, var(--azulsurexsd1) 14%, transparent);
}

.lp-enterprise-fit__card:hover::after {
  opacity: 1;
  transform: translateY(0);
}

.lp-enterprise-fit__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.55rem;
  height: 3.55rem;
  flex: 0 0 auto;
  border-radius: 0.75rem;
}

.lp-enterprise-fit__icon img {
  width: 1.8rem;
  height: 1.8rem;
  object-fit: contain;
}

.lp-enterprise-fit__icon--aqua {
  background: color-mix(in srgb, var(--aqual1) 46%, var(--blanco));
}

.lp-enterprise-fit__icon--blue {
  background: color-mix(in srgb, var(--azulsurexsl3) 62%, var(--blanco));
}

.lp-enterprise-fit__icon--yellow {
  background: color-mix(in srgb, var(--amarillol1) 76%, var(--blanco));
}

.lp-enterprise-fit__icon--green {
  background: color-mix(in srgb, var(--verdel1) 68%, var(--blanco));
}

.lp-enterprise-fit__content {
  min-width: 0;
}

.lp-enterprise-fit__content h3 {
  margin: 0 0 0.55rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-size: 1.5rem;
  font-weight: 600;
}

.lp-enterprise-fit__content p {
  margin: 0 0 1rem;
  color: var(--gris);
  font-size: 0.85em;
  font-style: italic;
}

.lp-enterprise-fit__content ul {
  display: grid;
  gap: 0.48rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-enterprise-fit__content li {
  position: relative;
  margin: 0;
  padding-left: 1rem;
}

.lp-enterprise-fit__content li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--azulsurexsl1);
  box-shadow: 0 0 0 0.18rem color-mix(in srgb, var(--azulsurexsl3) 46%, transparent);
}

/* === RESPONSIVE · PLAN FIT ENTERPRISE === */
@media (max-width: 1199.98px) {
  .lp-enterprise-fit {
    grid-template-columns: 1fr;
    max-width: 54rem;
  }

  .lp-enterprise-fit__card--featured {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .lp-enterprise-fit__card--featured .lp-enterprise-fit__icon {
    width: 3.8rem;
    height: 3.8rem;
  }
}

@media (max-width: 767.98px) {
  .lp-plan-fit--enterprise {
    padding: 4.35rem 0 4.7rem;
  }

  .lp-plan-fit--enterprise .lp-plan-fit__header--enterprise {
    margin-bottom: 2rem;
    text-align: left;
  }

  .lp-plan-fit--enterprise .lp-plan-fit__title,
  .lp-plan-fit--enterprise .lp-plan-fit__description {
    margin-inline: 0;
  }

  .lp-enterprise-fit {
    gap: 0.95rem;
  }

  .lp-enterprise-fit__grid {
    grid-template-columns: 1fr;
    gap: 0.95rem;
  }

  .lp-enterprise-fit__card,
  .lp-enterprise-fit__card--featured {
    grid-template-columns: 1fr;
    gap: 0.85rem;
    padding: 1.15rem;
    border-radius: 1.1rem;
  }

  .lp-enterprise-fit__icon,
  .lp-enterprise-fit__card--featured .lp-enterprise-fit__icon {
    width: 3.6rem;
    height: 3.6rem;
  }

  .lp-enterprise-fit__content h3 {
    font-size: 1.22rem;
    line-height: 1.12;
  }

  .lp-enterprise-fit__content p {
    font-size: 0.9rem;
  }

  .lp-enterprise-fit__content li {
    font-size: 0.84rem;
  }
}

.lp-operacion-seguros--enterprise__actions {
  display: grid;
  gap: 0.85rem;
}

.lp-operacion-seguros--enterprise__actions .btn {
  width: 100%;
  justify-content: center;
}

.lp-operacion-seguros--enterprise .lp-operacion-seguros__steps {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.lp-operacion-seguros--enterprise .lp-operacion-seguros__step {
  min-height: 100%;
}

.lp-diferente-surexs--enterprise h4 {
  font-size: 20px;
}

.lp-diferente-surexs--enterprise .lp-diferente-surexs__features--enterprise {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.lp-diferente-surexs--enterprise .lp-diferente-surexs__benefits {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.lp-diferente-surexs__expectativas {
  margin-top: 3.4rem;
  text-align: center;
}

/* === HUMAN + TECH · RESULTADO ENTERPRISE === */
.lp-human-tech--enterprise .lp-human-tech__result--enterprise {
  margin-top: 3rem;
  padding: 2.6rem 3.5rem 2.2rem;
  border-radius: 1.25rem;
  background: var(--azulsurexs);
}

.lp-human-tech--enterprise .lp-human-tech__result-header {
  margin-bottom: 2rem;
  text-align: center;
}

.lp-human-tech--enterprise .lp-human-tech__result-header h3 {
  color: var(--blanco);
}

.lp-human-tech--enterprise .lp-human-tech__result-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: stretch;
  gap: 1rem;
}

.lp-human-tech--enterprise .lp-human-tech__result-item {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 9.4rem;
  padding: 1.2rem 1rem;
  border-radius: 1rem;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.lp-human-tech--enterprise .lp-human-tech__result-item:hover {
  transform: translateY(-0.25rem);
  box-shadow: 0 1rem 1.8rem rgba(0, 0, 0, 0.14);
}

.lp-human-tech--enterprise .lp-human-tech__result-item img {
  width: 3.55rem;
  height: 3.55rem;
  margin-bottom: 0.95rem;
  object-fit: contain;
}

.lp-human-tech--enterprise .lp-human-tech__result-item--aqua {
  background: var(--aqual1);
}

.lp-human-tech--enterprise .lp-human-tech__result-item--yellow {
  background: var(--amarillol1);
}

.lp-human-tech--enterprise .lp-human-tech__result-item--pink {
  background: var(--rojol1);
}

.lp-human-tech--enterprise .lp-human-tech__result-item--green {
  background: var(--verdel1);
}

.lp-human-tech--enterprise .lp-human-tech__result-illustration {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 9.4rem;
  overflow: hidden;
}

.lp-human-tech--enterprise .lp-human-tech__result-illustration img {
  display: block;
  width: 100%;
  max-width: 12.5rem;
  height: auto;
  object-fit: contain;
}

/* === RESPONSIVE · HUMAN + TECH RESULTADO ENTERPRISE === */
@media (max-width: 1199.98px) {
  .lp-human-tech--enterprise .lp-human-tech__result-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lp-human-tech--enterprise .lp-human-tech__result-illustration {
    grid-column: 1/-1;
    min-height: auto;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-illustration img {
    max-width: 10rem;
  }
}

@media (max-width: 991.98px) {
  .lp-human-tech--enterprise .lp-human-tech__result--enterprise {
    padding: 2.3rem 1.4rem 1.4rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lp-human-tech--enterprise .lp-human-tech__result-illustration {
    grid-column: auto;
    align-items: center;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-illustration img {
    max-width: 9rem;
  }
}

@media (max-width: 767.98px) {
  .lp-human-tech--enterprise .lp-human-tech__result--enterprise {
    padding: 2rem 1rem 1rem;
    border-radius: 1rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-header {
    margin-bottom: 1.4rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-header h3 {
    font-size: 1.45rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-grid {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-item {
    grid-template-columns: 3rem minmax(0, 1fr);
    align-items: center;
    justify-items: start;
    min-height: auto;
    padding: 1rem;
    text-align: left;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-item img {
    width: 2.75rem;
    height: 2.75rem;
    margin: 0;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-item p {
    max-width: none;
    font-size: 1.05rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-illustration {
    justify-content: center;
    padding-top: 0.5rem;
  }

  .lp-human-tech--enterprise .lp-human-tech__result-illustration img {
    max-width: 8.5rem;
  }
}

/* === SECCIÓN NUEVA · BROKERS GLOBALES === */
.lp-global-brokers {
  position: relative;
  overflow: hidden;
  padding: 6rem 0;
  color: var(--blanco);
  background: radial-gradient(circle at 10% 18%, color-mix(in srgb, var(--azulsurexs) 12%, transparent), transparent 17rem), radial-gradient(circle at 86% 82%, color-mix(in srgb, var(--azulsurexs) 42%, transparent), transparent 22rem), linear-gradient(135deg, var(--azulsurexsd1), var(--azulsurexsd1));
}

.lp-global-brokers__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(25rem, 1.08fr);
  align-items: center;
  gap: 3.2rem;
}

.lp-global-brokers__content h2 {
  margin: 0 0 1.15rem;
  color: var(--aqual1);
  font-family: var(--font-headline);
  font-size: 2.85rem;
}

.lp-global-brokers__content>p {
  margin: 0 0 1.65rem;
  color: var(--blanco);
}

.lp-global-brokers__capabilities {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.lp-global-brokers__capability {
  position: relative;
  min-height: 8.7rem;
  padding: 1.05rem 1rem;
  overflow: hidden;
  border: 1px solid var(--azulsurexs);
  border-radius: 1.1rem;
  background: linear-gradient(180deg, color-mix(in srgb, var(--azulsurexsl1) 11%, transparent), color-mix(in srgb, var(--azulsurexsl1) 6%, transparent));
  box-shadow: 0 1rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 16%, transparent);
  transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease;
}

.lp-global-brokers__capability:hover {
  transform: translateY(-0.22rem);
  background: linear-gradient(180deg, color-mix(in srgb, var(--azulsurexsl1) 15%, transparent), color-mix(in srgb, var(--azulsurexsl1) 8%, transparent));
}

.lp-global-brokers__capability h3 {
  margin: 0.9rem 0 0;
  color: var(--blanco);
  font-family: var(--font-headline);
  font-size: 1.25rem;
}

.lp-global-brokers__capability-icon {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.75rem;
  background: color-mix(in srgb, var(--aqual1) 25%, transparent);
}

.lp-global-brokers__capability-icon img {
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}

.lp-global-brokers__panel {
  padding: 2.35rem;
  border-radius: 1.65rem;
  background: color-mix(in srgb, var(--azulsurexsd2) 50%, transparent);
  box-shadow: 0 1.8rem 4.2rem color-mix(in srgb, var(--azulsurexsd2) 34%, transparent);
  backdrop-filter: blur(0.85rem);
}

.lp-global-brokers__panel>p {
  position: relative;
  margin: 1.45rem 0 1.65rem;
  padding: 1.05rem 1.15rem 1.05rem 1.25rem;
  border-radius: 0.9rem;
  background: color-mix(in srgb, var(--azulsurexsd2) 40%, transparent);
  color: var(--blanco);
  font-size: 0.85rem;
}

.lp-global-brokers__panel-head {
  margin-bottom: 1.45rem;
}

.lp-global-brokers__panel h3 {
  margin: 0;
  color: var(--azulsurexsl2);
  font-size: 2rem;
  font-weight: 700;
}

.lp-global-brokers__difference-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.lp-global-brokers__difference {
  padding: 1.05rem 1rem 1rem;
  overflow: hidden;
  border: 1px solid var(--azulsurexsd1);
  border-radius: 1.05rem;
  background: var(--azulsurexsd1);
  transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.lp-global-brokers__difference:hover {
  transform: translateY(-0.18rem);
  background: var(--azulsurexsd1);
}

.lp-global-brokers__difference span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin-bottom: 1rem;
  border-radius: 0.7rem;
  background: var(--azulsurexs);
  color: var(--azulsurexsl2);
  font-weight: 700;
}

.lp-global-brokers__difference p {
  font-weight: 600;
}

.lp-global-brokers__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  padding-top: 0.1rem;
}

/* === RESPONSIVE · BROKERS GLOBALES ENTERPRISE === */
@media (max-width: 991.98px) {
  .lp-global-brokers {
    padding: 5.2rem 0;
  }

  .lp-global-brokers__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .lp-global-brokers__content {
    max-width: 100%;
  }

  .lp-global-brokers__content h2 {
    max-width: 42rem;
  }

  .lp-global-brokers__panel {
    padding: 1.65rem;
  }

  .lp-global-brokers__panel::after {
    left: 1.65rem;
    right: 1.65rem;
  }
}

@media (max-width: 767.98px) {
  .lp-global-brokers {
    padding: 4.4rem 0;
  }

  .lp-global-brokers__content h2 {
    font-size: clamp(2.25rem, 13vw, 3.35rem);
    line-height: 0.96;
  }

  .lp-global-brokers__content>p {
    font-size: 0.95rem;
  }

  .lp-global-brokers__capabilities,
  .lp-global-brokers__difference-grid {
    grid-template-columns: 1fr;
  }

  .lp-global-brokers__capability {
    min-height: auto;
    padding: 1rem;
  }

  .lp-global-brokers__panel {
    padding: 1.25rem;
    border-radius: 1.2rem;
  }

  .lp-global-brokers__panel::before {
    inset: 0.45rem;
    border-radius: 0.9rem;
  }

  .lp-global-brokers__panel::after {
    left: 1.25rem;
    right: 1.25rem;
  }

  .lp-global-brokers__panel>p {
    margin: 1.1rem 0 1.25rem;
    padding: 0.95rem 1rem;
    font-size: 0.93rem;
  }

  .lp-global-brokers__difference {
    min-height: auto;
    padding: 1rem;
  }

  .lp-global-brokers__difference p {
    max-width: none;
  }

  .lp-global-brokers__actions .btn {
    width: 100%;
  }
}

/* === SECCIÓN NUEVA · AMMIA MODULAR ENTERPRISE === */
.lp-ammia-modular {
  padding: 1rem 0 6.6rem;
}

.lp-ammia-modular__header {
  margin: 0 auto 3.2rem;
  text-align: center;
}

.lp-ammia-modular__header h2 {
  margin: 0;
}

.lp-ammia-modular__header h2 span {
  color: var(--azulsurexs);
  font-weight: 700;
}

.lp-ammia-modular__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
  max-width: 70rem;
  margin: 0 auto 2.4rem;
}

.lp-ammia-modular__card {
  border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 65%, var(--blanco));
  border-radius: 0.5rem;
  background: var(--blanco);
  box-shadow: 0 1.35rem 2.8rem color-mix(in srgb, var(--grisclaro2) 50%, transparent);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.lp-ammia-modular__card:hover {
  transform: translateY(-0.3rem);
  border-color: color-mix(in srgb, var(--azulsurexsl2) 60%, var(--blanco));
  box-shadow: 0 1.75rem 3.4rem color-mix(in srgb, var(--grisclaro2) 70%, transparent);
}

.lp-ammia-modular__card:hover .lp-ammia-modular__image {
  transform: translateY(-0.25rem) scale(1.015);
}

.lp-ammia-modular__image-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 18rem;
  padding: 2.2rem 1.4rem 1rem;
}

.lp-ammia-modular__image-wrap::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 51%;
  width: 133rem;
  border-radius: 50%;
  background: var(--azulsurexsl4);
  transform: translate(-50%, -50%);
}

.lp-ammia-modular__image {
  position: relative;
  z-index: 1;
  display: block;
  max-width: 14.8rem;
  width: 100%;
  height: auto;
  object-fit: contain;
  transition: transform 0.22s ease;
}

.lp-ammia-modular__body {
  padding: 1.15rem 1.35rem 1.5rem;
}

.lp-ammia-modular__body h3 {
  margin: 0 0 0.2rem;
  color: var(--azulsurexsd1);
}

.lp-ammia-modular__body span {
  display: block;
  margin-bottom: 1.35rem;
  color: var(--gris);
  font-size: 0.98rem;
  font-style: italic;
}

.lp-ammia-modular__body p {
  position: relative;
  margin: 0;
  padding-left: 2rem;
  color: var(--grisoscuro);
  font-size: 1rem;
  line-height: 1.42;
}

.lp-ammia-modular__body p::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 1.25rem;
  height: 1.25rem;
  background: url("../img/iconos/sistema/azul-l1/check-circle.svg") center/contain no-repeat;
}

.lp-ammia-modular__impact {
  max-width: 71rem;
  margin: 0 auto;
  padding: 1.65rem 1.7rem 1.7rem;
  border: 1px solid var(--amarillol2);
  border-radius: 0.9rem;
  background: var(--amarillol3);
  box-shadow: 0 1.2rem 2.7rem color-mix(in srgb, var(--grisclaro2) 50%, transparent);
}

.lp-ammia-modular__impact-header {
  margin-bottom: 1.15rem;
}

.lp-ammia-modular__impact-header h3 {
  margin: 0;
  color: var(--amarillod1);
  font-size: 1.35rem;
  font-weight: 700;
}

.lp-ammia-modular__impact-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.lp-ammia-modular__impact-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: flex-start;
  gap: 0.55rem;
}

.lp-ammia-modular__impact-item img {
  width: 1rem;
  height: 1rem;
  margin-top: 0.18rem;
  object-fit: contain;
}

.lp-ammia-modular__impact-item p {
  margin: 0;
  color: var(--amarillod2);
  font-weight: 600;
  line-height: 1.34;
}

/* === RESPONSIVE · AMMIA MODULAR ENTERPRISE === */
@media (max-width: 1199.98px) {
  .lp-ammia-modular__cards {
    gap: 1.15rem;
  }

  .lp-ammia-modular__card {
    min-height: 32rem;
  }

  .lp-ammia-modular__image-wrap {
    min-height: 19rem;
  }

  .lp-ammia-modular__image-wrap::before {
    width: 14rem;
    height: 14rem;
  }

  .lp-ammia-modular__image {
    max-width: 13rem;
  }
}

@media (max-width: 991.98px) {
  .lp-ammia-modular {
    padding: 5.2rem 0;
  }

  .lp-ammia-modular__header {
    margin-bottom: 2.4rem;
  }

  .lp-ammia-modular__cards {
    grid-template-columns: 1fr;
    max-width: 32rem;
  }

  .lp-ammia-modular__card {
    min-height: auto;
  }

  .lp-ammia-modular__image-wrap {
    min-height: 17rem;
  }

  .lp-ammia-modular__impact {
    max-width: 32rem;
    padding: 1.35rem;
  }

  .lp-ammia-modular__impact-grid {
    grid-template-columns: 1fr;
    gap: 0.85rem;
  }
}

@media (max-width: 767.98px) {
  .lp-ammia-modular {
    padding: 4.4rem 0;
  }

  .lp-ammia-modular__header {
    text-align: center;
  }

  .lp-ammia-modular__header h2 {
    text-align: center;
  }

  .lp-ammia-modular__cards {
    gap: 1rem;
  }

  .lp-ammia-modular__image-wrap {
    min-height: 14.5rem;
    padding: 1.5rem 1rem 0.7rem;
  }

  .lp-ammia-modular__image-wrap::before {
    width: 11.5rem;
    height: 11.5rem;
  }

  .lp-ammia-modular__image {
    max-width: 10.5rem;
  }

  .lp-ammia-modular__body {
    padding: 1rem 1.1rem 1.25rem;
  }

  .lp-ammia-modular__body h3 {
    font-size: 1.45rem;
  }

  .lp-ammia-modular__body span {
    margin-bottom: 1rem;
  }

  .lp-ammia-modular__body p {
    font-size: 0.95rem;
  }

  .lp-ammia-modular__impact {
    padding: 1.15rem;
    border-radius: 0.8rem;
  }

  .lp-ammia-modular__impact-header h3 {
    font-size: 1.2rem;
  }

  .lp-ammia-modular__impact-item p {
    font-size: 0.9rem;
  }
}

/* === COMPARATIVA ENTERPRISE · TABLA EDITORIAL === */
.lp-comparativa-enterprise-table {
  position: relative;
  overflow: hidden;
  padding: 6.2rem 0 6.4rem;
  background: radial-gradient(circle at 8% 14%, color-mix(in srgb, var(--azulsurexsl3) 30%, transparent), transparent 15rem), radial-gradient(circle at 92% 82%, color-mix(in srgb, var(--azulsurexsl2) 12%, transparent), transparent 18rem), var(--blanco);
  color: var(--grisoscuro);
}

.lp-comparativa-enterprise-table .container {
  position: relative;
  z-index: 1;
}

.lp-comparativa-enterprise-table__header {
  max-width: 62rem;
  margin: 0 auto 3rem;
  text-align: center;
}

.lp-comparativa-enterprise-table__header h2 {
  margin: 0;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-weight: 500;
  line-height: 1.08;
}

.lp-comparativa-enterprise-table__header h2 b {
  font-weight: 800;
}

.lp-comparativa-enterprise-table__header p {
  max-width: 44rem;
  margin: 1rem auto 0;
  color: var(--grisoscuro);
  font-weight: 400;
  line-height: 1.55;
}

.lp-comparativa-enterprise-table__board {
  display: grid;
  grid-template-columns: minmax(10.5rem, 0.78fr) minmax(15.5rem, 1fr) minmax(17.5rem, 1.18fr) minmax(15.5rem, 1fr);
  max-width: 76rem;
  margin: 0 auto;
  align-items: stretch;
}

.lp-comparativa-enterprise-table__mobile {
  display: none;
}

.lp-comparativa-enterprise-table__top {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  min-height: 7.5rem;
  padding: 1.25rem 1.2rem;
  margin-bottom: 0.85rem;
  border-radius: 1rem 1rem 0 0;
}

.lp-comparativa-enterprise-table__top h3 {
  margin: 0 0 0.15rem;
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-weight: 800;
  line-height: 1.08;
}

.lp-comparativa-enterprise-table__top span {
  display: block;
  color: var(--gris);
  font-size: 0.84rem;
  font-weight: 500;
  line-height: 1.3;
}

.lp-comparativa-enterprise-table__top--empty {
  background: transparent;
  padding: 0;
  min-height: 0;
}

.lp-comparativa-enterprise-table__top--broker,
.lp-comparativa-enterprise-table__top--aseguradora {
  background: color-mix(in srgb, var(--grisclaro) 58%, var(--blanco));
  border: 1px solid color-mix(in srgb, var(--grisclaro2) 60%, transparent);
  border-bottom: 0;
}

.lp-comparativa-enterprise-table__top--surexs {
  background: var(--azulsurexs);
  border: 1px solid var(--azulsurexs);
  border-bottom: 0;
  box-shadow: 0 1.2rem 2.6rem color-mix(in srgb, var(--azulsurexsd2) 13%, transparent);
}

.lp-comparativa-enterprise-table__top--surexs h3,
.lp-comparativa-enterprise-table__top--surexs span {
  color: var(--blanco);
}

.lp-comparativa-enterprise-table__top--surexs span {
  color: var(--aqual2);
  font-weight: 700;
}

.lp-comparativa-enterprise-table__top-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.75rem;
  height: 3.75rem;
  border-radius: 50%;
  background: var(--blanco);
  flex: 0 0 auto;
}

.lp-comparativa-enterprise-table__top-avatar img {
  width: 1.75rem;
  height: 1.75rem;
  object-fit: contain;
}

.lp-comparativa-enterprise-table__criterion,
.lp-comparativa-enterprise-table__cell {
  min-height: 5.65rem;
  display: flex;
  align-items: center;
  padding: 1rem 1.1rem;
  border-bottom: 1px solid color-mix(in srgb, var(--grisclaro2) 58%, transparent);
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.lp-comparativa-enterprise-table__criterion {
  gap: 0.7rem;
  background: color-mix(in srgb, var(--grisclaro) 50%, var(--blanco));
  border-left: 1px solid color-mix(in srgb, var(--grisclaro2) 58%, transparent);
  border-right: 1px solid color-mix(in srgb, var(--grisclaro2) 58%, transparent);
}

.lp-comparativa-enterprise-table__criterion img {
  width: 1.25rem;
  height: 1.25rem;
  object-fit: contain;
  opacity: 0.72;
  flex: 0 0 auto;
}

.lp-comparativa-enterprise-table__criterion span {
  color: var(--azulsurexsd1);
  font-family: var(--font-headline);
  font-weight: 750;
  line-height: 1.18;
}

.lp-comparativa-enterprise-table__cell p {
  margin: 0;
  color: var(--grisoscuro);
  font-weight: 400;
  line-height: 1.38;
}

.lp-comparativa-enterprise-table__cell strong {
  color: var(--azulsurexsd1);
  font-weight: 800;
}

.lp-comparativa-enterprise-table__cell--broker,
.lp-comparativa-enterprise-table__cell--aseguradora {
  background: var(--blanco);
  border-right: 1px solid color-mix(in srgb, var(--grisclaro2) 48%, transparent);
}

.lp-comparativa-enterprise-table__cell--surexs {
  position: relative;
  z-index: 1;
  background: color-mix(in srgb, var(--azulsurexsl4) 88%, var(--blanco));
  border-right: 1px solid color-mix(in srgb, var(--azulsurexsl3) 50%, transparent);
}

.lp-comparativa-enterprise-table__cell--surexs p {
  color: var(--azulsurexsd1);
}

.lp-comparativa-enterprise-table {
  /* Hover por fila completa */
}

.lp-comparativa-enterprise-table__criterion:hover,
.lp-comparativa-enterprise-table__criterion:hover+.lp-comparativa-enterprise-table__cell--broker,
.lp-comparativa-enterprise-table__criterion:hover+.lp-comparativa-enterprise-table__cell--broker+.lp-comparativa-enterprise-table__cell--surexs,
.lp-comparativa-enterprise-table__criterion:hover+.lp-comparativa-enterprise-table__cell--broker+.lp-comparativa-enterprise-table__cell--surexs+.lp-comparativa-enterprise-table__cell--aseguradora {
  background: color-mix(in srgb, var(--aqual3) 48%, var(--blanco));
}

.lp-comparativa-enterprise-table__criterion:hover {
  border-left-color: color-mix(in srgb, var(--azulsurexsl4) 58%, transparent);
}

.lp-comparativa-enterprise-table__criterion:hover img {
  opacity: 1;
}

.lp-comparativa-enterprise-table__criterion:hover+.lp-comparativa-enterprise-table__cell--broker+.lp-comparativa-enterprise-table__cell--surexs {
  background: var(--azulsurexsl3);
  transform: translateY(-0.12rem);
  box-shadow: 0 0.9rem 1.7rem color-mix(in srgb, var(--azulsurexsd2) 12%, transparent);
}

.lp-comparativa-enterprise-table__criterion:hover+.lp-comparativa-enterprise-table__cell--broker p,
.lp-comparativa-enterprise-table__criterion:hover+.lp-comparativa-enterprise-table__cell--broker+.lp-comparativa-enterprise-table__cell--surexs+.lp-comparativa-enterprise-table__cell--aseguradora p {
  color: var(--azulsurexsd1);
}

.lp-comparativa-enterprise-table {
  /* Redondeo inferior desktop */
}

.lp-comparativa-enterprise-table__board> :nth-last-child(4) {
  border-radius: 0 0 0 1rem;
}

.lp-comparativa-enterprise-table__board> :nth-last-child(2) {
  border-radius: 0;
}

.lp-comparativa-enterprise-table__board> :last-child {
  border-radius: 0 0 1rem 0;
}

.lp-comparativa-enterprise-table__note {
  max-width: 56rem;
  margin: 1.8rem auto 0;
  padding: 1rem 1.25rem;
  border: 1px solid color-mix(in srgb, var(--aqual1) 34%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--aqual3) 52%, var(--blanco));
  text-align: center;
}

.lp-comparativa-enterprise-table__note p {
  margin: 0;
  color: var(--azulsurexsd1);
  font-weight: 600;
  line-height: 1.45;
}

/* === RESPONSIVE · COMPARATIVA ENTERPRISE MOBILE === */
@media (max-width: 991.98px) {
  .lp-comparativa-enterprise-table {
    padding: 5rem 0;
  }

  .lp-comparativa-enterprise-table__header {
    max-width: 34rem;
    margin-bottom: 2rem;
    text-align: left;
  }

  .lp-comparativa-enterprise-table__header p {
    margin-inline: 0;
  }

  .lp-comparativa-enterprise-table__board {
    display: none;
  }

  .lp-comparativa-enterprise-table__mobile {
    display: grid;
    gap: 1rem;
    max-width: 34rem;
    margin: 0 auto;
  }

  .lp-comparativa-enterprise-table__mobile-card {
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 68%, var(--blanco));
    border-radius: 1rem;
    background: var(--blanco);
    box-shadow: 0 1rem 2.4rem color-mix(in srgb, var(--azulsurexsd2) 8%, transparent);
  }

  .lp-comparativa-enterprise-table__mobile-card header {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 1rem;
    background: color-mix(in srgb, var(--grisclaro) 48%, var(--blanco));
    border-bottom: 1px solid color-mix(in srgb, var(--grisclaro2) 58%, transparent);
  }

  .lp-comparativa-enterprise-table__mobile-card header img {
    width: 1.25rem;
    height: 1.25rem;
    object-fit: contain;
    opacity: 0.74;
    flex: 0 0 auto;
  }

  .lp-comparativa-enterprise-table__mobile-card header h3 {
    margin: 0;
    color: var(--azulsurexsd1);
    font-family: var(--font-headline);
    font-size: 1.12rem;
    font-weight: 800;
    line-height: 1.12;
  }

  .lp-comparativa-enterprise-table__mobile-option {
    padding: 1rem;
  }

  .lp-comparativa-enterprise-table__mobile-option span {
    display: block;
    margin-bottom: 0.35rem;
    font-family: var(--font-headline);
    font-size: 0.78rem;
    font-weight: 850;
    line-height: 1.1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .lp-comparativa-enterprise-table__mobile-option p {
    margin: 0;
    font-size: 0.98rem;
    line-height: 1.35;
  }

  .lp-comparativa-enterprise-table__mobile-option--surexs {
    background: var(--azulsurexsl4);
  }

  .lp-comparativa-enterprise-table__mobile-option--surexs span {
    color: var(--azulsurexsl1);
  }

  .lp-comparativa-enterprise-table__mobile-option--surexs p {
    color: var(--azulsurexs);
    font-weight: 700;
  }

  .lp-comparativa-enterprise-table__mobile-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }

  .lp-comparativa-enterprise-table__mobile-options>div {
    padding: 0.95rem 1rem;
    background: var(--blanco);
    border-top: 1px solid color-mix(in srgb, var(--grisclaro2) 52%, transparent);
  }

  .lp-comparativa-enterprise-table__mobile-options>div:first-child {
    background: color-mix(in srgb, var(--grisclaro) 28%, var(--blanco));
  }

  .lp-comparativa-enterprise-table__mobile-options>div span {
    display: block;
    margin-bottom: 0.28rem;
    color: var(--gris);
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1.15;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .lp-comparativa-enterprise-table__mobile-options>div p {
    margin: 0;
    color: var(--grisoscuro);
    font-size: 0.92rem;
    font-weight: 500;
    line-height: 1.35;
  }

  .lp-comparativa-enterprise-table__note {
    max-width: 34rem;
    border-radius: 1rem;
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .lp-comparativa-enterprise-table {
    padding: 4.3rem 0;
  }

  .lp-comparativa-enterprise-table__eyebrow {
    font-size: 0.7rem;
  }

  .lp-comparativa-enterprise-table__mobile {
    gap: 0.9rem;
  }

  .lp-comparativa-enterprise-table__mobile-card {
    border-radius: 1rem;
  }

  .lp-comparativa-enterprise-table__mobile-card header {
    padding: 0.95rem;
  }

  .lp-comparativa-enterprise-table__mobile-card header h3 {
    font-size: 1.15rem;
  }

  .lp-comparativa-enterprise-table__mobile-option,
  .lp-comparativa-enterprise-table__mobile-options>div {
    padding: 0.9rem 0.95rem;
  }
}

/* === ENTERPRISE · RESPONSIVE === */
@media (max-width: 1199.98px) {
  .lp-plan-fit--enterprise .lp-plan-fit__cards--enterprise {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lp-operacion-seguros--enterprise .lp-operacion-seguros__steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lp-diferente-surexs--enterprise .lp-diferente-surexs__features--enterprise,
  .lp-diferente-surexs--enterprise .lp-diferente-surexs__benefits {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .lp-global-brokers {
    padding: 5.2rem 0;
  }

  .lp-global-brokers__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .lp-ammia-modular {
    padding: 5.2rem 0;
  }

  .lp-ammia-modular__cards {
    grid-template-columns: 1fr;
    max-width: 36rem;
  }

  .lp-ammia-modular__impact {
    max-width: 36rem;
  }

  .lp-ammia-modular__impact ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lp-organizaciones__logos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .lp-header-esencial--enterprise .lp-header-esencial__highlight {
    max-width: 100%;
  }

  .lp-plan-fit--enterprise .lp-plan-fit__cards--enterprise {
    grid-template-columns: 1fr;
    max-width: 100%;
  }

  .lp-plan-fit--enterprise .lp-plan-fit__card--enterprise {
    padding: 1.2rem 1rem;
  }

  .lp-operacion-seguros--enterprise .lp-operacion-seguros__steps {
    grid-template-columns: 1fr;
  }

  .lp-diferente-surexs--enterprise .lp-diferente-surexs__features--enterprise,
  .lp-diferente-surexs--enterprise .lp-diferente-surexs__benefits {
    grid-template-columns: 1fr;
  }

  .lp-global-brokers {
    padding: 4.4rem 0;
  }

  .lp-global-brokers__content h2,
  .lp-global-brokers__content h3,
  .lp-global-brokers__content p,
  .lp-global-brokers__panel h2,
  .lp-global-brokers__panel h3,
  .lp-global-brokers__panel p {
    text-align: left;
  }

  .lp-global-brokers__content h2,
  .lp-global-brokers__panel h2 {
    font-size: 2rem;
    text-align: center;
    line-height: 1.25em;
  }

  .lp-global-brokers__panel {
    padding: 1.35rem 1.15rem;
  }

  .lp-global-brokers__actions {
    display: grid;
    gap: 0.85rem;
  }

  .lp-global-brokers__actions .btn {
    width: 100%;
    justify-content: center;
  }

  .lp-ammia-modular {
    padding: 4.4rem 0;
  }

  .lp-ammia-modular__header {
    margin-bottom: 2.1rem;
    text-align: left;
  }

  .lp-ammia-modular__card {
    padding: 1.35rem 1.15rem 1.25rem;
  }

  .lp-ammia-modular__impact {
    padding: 1.25rem 1rem;
  }

  .lp-ammia-modular__impact ul {
    grid-template-columns: 1fr;
  }

  .lp-organizaciones {
    padding: 3.8rem 0;
  }

  .lp-organizaciones__header {
    text-align: left;
  }

  .lp-organizaciones__logos {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================
   MODELO DE SERVICIO · FORMULARIO DE CONTACTO
========================================================== */
.lp-modelo-contacto {
  position: relative;
  overflow: hidden;
  padding: 7rem 0;
  background: #f6fbff;
  color: var(--azulsurexsd1);
  isolation: isolate;
}

.lp-modelo-contacto__decoration {
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  pointer-events: none;
}

.lp-modelo-contacto__decoration--top {
  top: -7rem;
  right: -4rem;
  width: 17rem;
  height: 17rem;
  background: color-mix(in srgb, var(--azulsurexsl3) 52%, transparent);
}

.lp-modelo-contacto__decoration--bottom {
  bottom: -5rem;
  left: -3rem;
  width: 11rem;
  height: 11rem;
  border: 2rem solid color-mix(in srgb, var(--azulsurexsl4) 76%, transparent);
}

.lp-modelo-contacto__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(30rem, 1.18fr);
  align-items: start;
  gap: 2rem;
}

.lp-modelo-contacto__guide,
.lp-modelo-contacto__form-card {
  min-width: 0;
  border: 2px solid #a8d5ff;
  border-radius: 28px;
  background: var(--blanco);
  box-shadow: 0 10px 35px rgba(0, 119, 188, 0.08);
}

.lp-modelo-contacto__guide {
  display: flex;
  flex-direction: column;
  padding: clamp(2rem, 4vw, 3.25rem);
}

.lp-modelo-contacto__eyebrow {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.3rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

.lp-modelo-contacto__eyebrow img {
  width: 1rem;
  height: 1rem;
  object-fit: contain;
}

.lp-modelo-contacto__guide h2 {
  max-width: 31rem;
  margin: 0 0 1.25rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.08;
  text-wrap: balance;
}

.lp-modelo-contacto__guide h2 strong {
  color: var(--azulsurexsl1);
  font-weight: 700;
}

.lp-modelo-contacto__description {
  margin: 0 0 1.7rem;
  color: var(--azulsurexsd1);
  font-size: 0.9rem;
  line-height: 1.68;
}

.lp-modelo-contacto__help {
  margin-bottom: 1.8rem;
  padding: 1.2rem;
  border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 76%, var(--blanco));
  border-radius: 18px;
  background: color-mix(in srgb, var(--azulsurexsl4) 36%, var(--blanco));
}

.lp-modelo-contacto__help h3 {
  margin: 0 0 0.85rem;
  color: var(--azulsurexs);
  font-family: var(--font-headline);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
}

.lp-modelo-contacto__list {
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lp-modelo-contacto__list li {
  position: relative;
  padding-left: 1.65rem;
  color: var(--azulsurexsd1);
  font-size: 0.84rem;
  line-height: 1.5;
}

.lp-modelo-contacto__list li::before {
  content: "✓";
  position: absolute;
  top: 0.05rem;
  left: 0;
  display: inline-grid;
  width: 1.1rem;
  height: 1.1rem;
  place-items: center;
  border-radius: 50%;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-size: 0.7rem;
  font-weight: 800;
}

.lp-modelo-contacto__form-card {
  min-height: 42rem;
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

.lp-modelo-contacto__form,
.lp-modelo-contacto__form .hbspt-form {
  width: 100%;
  min-height: 100%;
}

.lp-modelo-contacto__form .hs-form-field {
  margin-bottom: 1rem;
}

.lp-modelo-contacto__form label {
  margin-bottom: 0.35rem;
  color: var(--azulsurexs);
  font-family: var(--font-primary);
  font-size: 0.84rem;
  font-weight: 700;
}

.lp-modelo-contacto__form input:not([type="checkbox"]):not([type="radio"]),
.lp-modelo-contacto__form select,
.lp-modelo-contacto__form textarea {
  width: 100% !important;
  min-height: 2.8rem;
  padding: 0.7rem 0.85rem !important;
  border: 1px solid var(--azulsurexsl3) !important;
  border-radius: 12px !important;
  background: var(--blanco) !important;
  color: var(--azulsurexsd1) !important;
}

.lp-modelo-contacto__form input:focus,
.lp-modelo-contacto__form select:focus,
.lp-modelo-contacto__form textarea:focus {
  border-color: var(--azulsurexsl1) !important;
  outline: 3px solid color-mix(in srgb, var(--azulsurexsl1) 18%, transparent);
}

.lp-modelo-contacto__form .hs-button,
.lp-modelo-contacto__form input[type="submit"] {
  min-height: 2.85rem;
  padding: 0.65rem 1.5rem !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--amarillo) !important;
  color: var(--amarillod2) !important;
  font-family: var(--font-headline) !important;
  font-weight: 700 !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.lp-modelo-contacto__form .hs-button:hover,
.lp-modelo-contacto__form input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 0.7rem 1.5rem color-mix(in srgb, var(--amarillo) 30%, transparent);
}

@media (max-width: 991.98px) {
  .lp-modelo-contacto {
    padding: 5.25rem 0;
  }

  .lp-modelo-contacto__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .lp-modelo-contacto__guide,
  .lp-modelo-contacto__form-card {
    width: 100%;
    max-width: 46rem;
    margin-inline: auto;
  }

  .lp-modelo-contacto__form-card {
    min-height: 38rem;
  }
}

@media (max-width: 767.98px) {
  .lp-modelo-contacto {
    padding: 4.25rem 0;
  }

  .lp-modelo-contacto__guide,
  .lp-modelo-contacto__form-card {
    border-radius: 24px;
  }

  .lp-modelo-contacto__guide {
    padding: 1.75rem 1.35rem;
  }

  .lp-modelo-contacto__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
  }

  .lp-modelo-contacto__guide h2 {
    font-size: 2rem !important;
  }

  .lp-modelo-contacto__description {
    font-size: 0.84rem;
  }

  .lp-modelo-contacto__form-card {
    min-height: 34rem;
    padding: 1.35rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-modelo-contacto__form .hs-button,
  .lp-modelo-contacto__form input[type="submit"] {
    transition: none;
  }
}

/* ==========================================================
   MODELO DE SERVICIO · AJUSTES RESPONSIVE CONSOLIDADOS
========================================================== */
/* Lista tecnológica compacta en todos los tamaños */
body.modelo-servicio-page .index-tech__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.15rem;
  padding: 0.48rem 1.3rem;
  border: 1px solid var(--azulsurexsl3);
  border-radius: 999px;
  background: var(--azulsurexsl4);
  color: var(--azulsurexsl1);
  font-family: var(--font-headline);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
}

body.modelo-servicio-page .index-tech__eyebrow img {
  width: 1rem;
  height: 1rem;
  object-fit: contain;
}

body.modelo-servicio-page .index-tech__features {
  height: 220px;
  padding-right: 0.55rem;
  padding-left: 2rem;
}

body.modelo-servicio-page .index-tech__feature {
  padding: 0.68rem 0;
}

body.modelo-servicio-page .index-tech__feature-marker {
  top: 1.65rem;
  left: -1.55rem;
  width: 14px;
  height: 14px;
}

body.modelo-servicio-page .index-tech__feature-card {
  gap: 0.75rem;
  padding-bottom: 0.68rem;
}

body.modelo-servicio-page .index-tech__feature-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  flex-basis: 48px;
}

body.modelo-servicio-page .index-tech__feature-icon img {
  width: 23px;
  height: 23px;
}

body.modelo-servicio-page .index-tech__feature-card h4 {
  margin-bottom: 0.28rem;
  font-size: 0.98rem;
  line-height: 1.28;
}

body.modelo-servicio-page .index-tech__feature-card p {
  font-size: 0.84rem;
  line-height: 1.45;
}

@media (max-width: 991.98px) {
  body.modelo-servicio-page .index-tech__features {
    height: auto;
    max-height: 300px;
  }
}

@media (max-width: 767.98px) {
  /* Jerarquía tipográfica móvil */
  body.modelo-servicio-page main h2 {
    font-size: clamp(1.65rem, 7vw, 2rem) !important;
    line-height: 1.14;
  }

  body.modelo-servicio-page .lp-header-esencial__title {
    font-size: clamp(1.9rem, 8vw, 2.3rem);
    line-height: 1.08;
    letter-spacing: 0.025rem;
  }

  /* Visual del hero dentro del flujo y centrado */
  body.modelo-servicio-page .lp-header-esencial__visual {
    min-height: 16rem;
  }

  body.modelo-servicio-page .lp-header-esencial__device {
    left: auto;
    right: auto;
    width: min(13rem, 52vw);
    margin-inline: auto;
    animation-name: lp-header-float-soft;
  }

  body.modelo-servicio-page .lp-header-esencial__device img {
    margin-inline: auto;
    transform: scale(1.15);
    transform-origin: center;
  }

  /* CTA de partners centrado */
  body.modelo-servicio-page .index-partners__button {
    align-self: center;
    margin-inline: auto;
  }

  body.modelo-servicio-page .index-tech__eyebrow {
    padding-inline: 1rem;
    font-size: 0.62rem;
    line-height: 1.3;
    text-align: center;
  }

  body.modelo-servicio-page .index-tech__features {
    max-height: none;
    padding-right: 0;
    padding-left: 0;
  }

  body.modelo-servicio-page .index-tech__feature {
    padding: 0.58rem 0;
  }

  body.modelo-servicio-page .index-tech__feature-card {
    gap: 0.65rem;
    padding-bottom: 0.58rem;
  }

  body.modelo-servicio-page .index-tech__feature-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    flex-basis: 42px;
  }

  body.modelo-servicio-page .index-tech__feature-icon img {
    width: 20px;
    height: 20px;
  }

  body.modelo-servicio-page .index-tech__feature-card h4 {
    font-size: 0.92rem;
  }

  body.modelo-servicio-page .index-tech__feature-card p {
    font-size: 0.8rem;
    line-height: 1.42;
  }

  /* La comparación se convierte en pares causa → consecuencia. */
  body.modelo-servicio-page .lp-operacion-problema__table-header {
    grid-template-columns: minmax(0, 1fr) 1.5rem minmax(0, 1fr);
    gap: 0.5rem;
    padding-inline: 0.2rem;
  }

  body.modelo-servicio-page .lp-operacion-problema__column-equal::before {
    content: "→";
    color: var(--azulsurexsl1);
    font-size: 1rem;
    font-weight: 800;
  }

  body.modelo-servicio-page .lp-operacion-problema__table-row {
    gap: 0.55rem;
    margin-bottom: 0.8rem;
    padding: 1rem;
    border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 72%, var(--blanco));
    border-radius: 18px;
    background: color-mix(in srgb, var(--azulsurexsl4) 34%, var(--blanco));
  }

  body.modelo-servicio-page .lp-operacion-problema__table-row:last-child {
    margin-bottom: 0;
    padding-bottom: 1rem;
    border: 1px solid color-mix(in srgb, var(--azulsurexsl3) 72%, var(--blanco));
  }

  body.modelo-servicio-page .lp-operacion-problema__equal-cell {
    justify-content: flex-start;
    padding-left: 1.95rem;
  }

  body.modelo-servicio-page .lp-operacion-problema__equal-icon {
    justify-content: flex-start;
    width: auto;
    height: auto;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--azulsurexsl1);
    font-size: 0;
  }

  body.modelo-servicio-page .lp-operacion-problema__equal-icon::after {
    content: "↓  Puede provocar";
    font-family: var(--font-primary);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.015rem;
    text-transform: uppercase;
  }

  body.modelo-servicio-page .lp-operacion-problema__table-row > p {
    margin-left: 1.95rem;
    padding: 0.65rem 0 0.1rem 0.8rem;
    border-left: 2px solid var(--azulsurexsl2);
    color: var(--grisobscuro);
  }
}

@media (max-width: 380px) {
  body.modelo-servicio-page main h2 {
    font-size: 1.6rem !important;
  }

  body.modelo-servicio-page .lp-header-esencial__title {
    font-size: 1.8rem;
  }

  body.modelo-servicio-page .lp-operacion-problema__table-header {
    grid-template-columns: minmax(0, 1fr) 1rem minmax(0, 1fr);
  }
}

/*# sourceMappingURL=planes.css.map */
