.elementor-2097 .elementor-element.elementor-element-8b09f83{--display:flex;--min-height:1030px;--background-transition:0.3s;}.elementor-2097 .elementor-element.elementor-element-1dc0218{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-2097 .elementor-element.elementor-element-3e62a25{margin:35px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-2097 .elementor-element.elementor-element-3e62a25 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:600;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:var( --e-global-color-primary );}.elementor-2097 .elementor-element.elementor-element-0c7386c{--display:flex;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );font-style:var( --e-global-typography-secondary-font-style );text-decoration:var( --e-global-typography-secondary-text-decoration );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-2097 .elementor-element.elementor-element-f808e3c{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:1px;}.elementor-2097 .elementor-element.elementor-element-f808e3c .elementor-divider-separator{width:27%;margin:0 auto;margin-center:0;}.elementor-2097 .elementor-element.elementor-element-f808e3c .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-2097 .elementor-element.elementor-element-18ab80f{--display:flex;--margin-top:-133px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2097 .elementor-element.elementor-element-8bc4104{--display:flex;}.elementor-2097 .elementor-element.elementor-element-04d93a9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-2097 .elementor-element.elementor-element-04d93a9 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:35px;font-weight:600;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;}.elementor-2097 .elementor-element.elementor-element-0a1dff0{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:1px;margin:-20px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;}.elementor-2097 .elementor-element.elementor-element-0a1dff0 .elementor-divider-separator{width:17%;margin:0 auto;margin-center:0;}.elementor-2097 .elementor-element.elementor-element-0a1dff0 .elementor-divider{text-align:center;padding-block-start:8px;padding-block-end:8px;}.elementor-2097 .elementor-element.elementor-element-d16e73d{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-call-to-action .elementor-cta__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-call-to-action .elementor-cta__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-call-to-action .elementor-cta__button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-call-to-action .elementor-ribbon-inner{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-2097 .elementor-element.elementor-element-3fc9a01 .elementor-cta .elementor-cta__bg, .elementor-2097 .elementor-element.elementor-element-3fc9a01 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-2097 .elementor-element.elementor-element-3fc9a01 .elementor-cta__content{text-align:center;}.elementor-2097 .elementor-element.elementor-element-3fc9a01 .elementor-cta__button{color:#FFFFFF;background-color:#03325C;border-color:#03325C;}.elementor-2097 .elementor-element.elementor-element-3fc9a01 .elementor-cta__button:hover{color:#FFFFFF;background-color:#F5811E;border-color:var( --e-global-color-807de69 );}.elementor-2097 .elementor-element.elementor-element-5dcae42{--display:flex;}.elementor-2097 .elementor-element.elementor-element-cdb6610{--spacer-size:65px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-2097 .elementor-element.elementor-element-8b09f83{--content-width:1600px;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2097 .elementor-element.elementor-element-3e62a25 .elementor-heading-title{font-size:45px;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-2097 .elementor-element.elementor-element-04d93a9 .elementor-heading-title{font-size:45px;}.elementor-widget-call-to-action .elementor-cta__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-call-to-action .elementor-cta__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-call-to-action .elementor-cta__button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-call-to-action .elementor-ribbon-inner{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2097 .elementor-element.elementor-element-3e62a25 .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-2097 .elementor-element.elementor-element-04d93a9 .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-widget-call-to-action .elementor-cta__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-call-to-action .elementor-cta__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-call-to-action .elementor-cta__button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-call-to-action .elementor-ribbon-inner{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}/* Start custom CSS for html, class: .elementor-element-742db85 *//* ====== Global ====== */
:root{
  --azul:#03325C;
  --naranja:#F5811E;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:'Poppins',sans-serif;
  color:var(--azul);
  background:#fff;
  line-height:1.6;
}

/* ====== Sección contenedora ====== */
.info-section{
  max-width:1200px;
  margin:0 auto;
  padding:60px 20px;
}

/* ====== Bloques alternados (TEXTO/IMAGEN) ====== */
.info-block{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  margin-bottom:60px;
}
.info-block.reverse{          /* invierte el orden para alternar */
  flex-direction:row-reverse;
}

/* ====== Columna de texto ====== */
.info-text{
  flex:1 1 50%;
  text-align:justify;       /* párrafos justificados */
  position:relative;
  padding:10px 0;
}

/* TITULOS siempre en naranja */
.info-text h3 {
  margin: 0 auto 20px auto;
  display: block;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 500;
  text-transform: uppercase;
  color: var(--naranja);       /* ahora siempre naranja */
  position: relative;
  letter-spacing: normal;
  word-spacing: normal;
  line-height: 1.4;
}

/* Línea de subrayado inicial (invisible, azul) */
.info-text h3::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 0;
  height: 3px;
  background-color: var(--azul); /* subrayado azul */
  transform: translateX(-50%);
  transition: width 0.3s ease-in-out;
}

/* Subrayado aparece al pasar el mouse */
.info-text:hover h3::after {
  width: 100%;
}

.info-text p{
  margin:0 0 14px 0;
  font-size:1rem;
  line-height:1.85;
  color:#333;
  font-weight:500;
}
.info-text ul{
  margin:0;
  padding-left:20px;
  color:#333;
  line-height:1.85;
  font-weight:500;
}

/* ====== Columna de imagen ====== */
.info-image{
  flex:1 1 50%;
}
.info-image img{
  width:100%;
  height:auto;
  border-radius:14px;
  box-shadow:0 4px 16px rgba(0,0,0,.08);
  transition:transform .3s ease, box-shadow .3s ease, border .3s ease;
}
.info-image img:hover{
  transform:scale(1.03);
  box-shadow:0 10px 28px rgba(0,0,0,.15);
  border:3px solid var(--naranja);
}

/* ====== Responsivo ====== */
@media (max-width:1024px){
  .info-block{ gap:28px; }
}
@media (max-width:900px){
  .info-block,
  .info-block.reverse{        /* en móvil todos en columna */
    flex-direction:column;
  }
  .info-image,
  .info-text{
    flex:1 1 auto;
    width:100%;
  }
  .info-image img{
    border-width:2px;        /* borde más fino en móvil */
  }
  .info-text h3{
    font-size:1.35rem;
  }
}
@media (max-width:480px){
  .info-section{ padding:40px 16px; }
  .info-block{ margin-bottom:44px; }
  .info-text h3{ font-size:1.25rem; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9ffd434 *//* =======================
   FUENTE GLOBAL
======================= */
body {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  line-height: 1.6;
  color: #03325C;
  background: #fff;
}

/* =======================
   TITULOS
======================= */
h2, h3 {
  text-transform: uppercase;
  color: #03325C;
  position: relative;
  display: inline-block;
  transition: color 0.3s ease;
  font-weight: 600;
}

/* Subrayado animado */
h2::after, h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0%;
  height: 3px;
  background-color: #F5811E;
  transition: width 0.3s ease;
}

/* Hover en títulos principales */
.section h2:hover {
  color: #F5811E;
}
.section h2:hover::after {
  width: 100%;
}

/* =======================
   HERO
======================= */
.hero {
  background: url('hero-bg.jpg') center/cover no-repeat;
  color: #fff;
  text-align: center;
  padding: 100px 20px;
}
.hero p {
  max-width: 700px;
  margin: 0 auto 30px;
  font-weight: 400;
  font-size: 1.1rem;
}
.btn-primary {
  background: #F5811E;
  color: #fff;
  padding: 12px 25px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s ease;
}
.btn-primary:hover {
  background: #d86d12;
  transform: scale(1.05);
}

/* =======================
   SECCIONES GENERALES
======================= */
.section {
  padding: 60px 20px;
  text-align: center;
}
.section h2 {
  font-size: 2rem;
  margin-bottom: 40px;
}

/* =======================
   CARDS (SERVICIOS)
======================= */
.cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}
.card {
  background: #f9f9f9;
  padding: 25px;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
  transition: all 0.3s ease;
}
.card h3 {
  margin-bottom: 15px;
  font-size: 1.2rem;
  font-weight: 600;
}
.card p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  color: #444;
}
.card:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}
.card:hover h3 {
  color: #F5811E;
}
.card:hover h3::after {
  width: 100%;
}

/* =======================
   BENEFICIOS
======================= */
.beneficios {
  padding: 80px 20px;
  background: #fff;
  text-align: center;
}

.benefit-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 25px;
  margin-top: 40px;
}

.benefit-card {
  background: #f9f9f9;
  padding: 25px;
  border-radius: 16px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
  transition: all 0.3s ease;
}

.benefit-card span {
  font-size: 2rem;
  display: block;
  margin-bottom: 12px;
  font-weight: 700;
  color: #03325C;
  transition: color 0.3s ease;
}

.benefit-card h3 {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.benefit-card p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
  color: #444;
}

/* Hover en beneficios */
.benefit-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 10px 25px rgba(3,50,92,0.15);
  background: #fff; /* Fondo se queda blanco para mantener contraste */
}

.benefit-card:hover span {
  color: #F5811E;
}
.benefit-card:hover h3 {
  color: #F5811E;
}
.benefit-card:hover h3::after {
  width: 100%;
}/* End custom CSS */