.content-title {line-height: 150%; text-align:left; font-family:'Montserrat-SemiBold', sans-serif; font-size:24px; font-weight:600; position:relative; }
.vector-sobre-nosotros {display:flex; flex-direction:column; gap:10px; align-items:center; justify-content:center; flex-shrink:0; height:120px; position:relative; overflow:visible; }

/* Sección principal */
.compliance-section {  margin: 20px;  max-width: 1200px;  margin: 0 auto;  padding: 20px;  background-color: #fff;}
.section {    max-width: 1200px;    margin: 40px auto;    padding: 20px;    background-color: #fff;    border-radius: 8px;  }
/* Títulos con iconos */
.section h2 {    font-size: 1.6rem;    color: #222;    margin-bottom: 10px;    display: flex;    align-items: center;    gap: 10px;}
.section h2 i {    font-size: 24px;    color: #34cfa5;}

/* Títulos de sección */
.title {  display: flex;  align-items: center;  margin-bottom: 20px;  padding-bottom: 10px;  border-bottom: 2px solid #ddd;  color: #1347a4; }
.title i {  font-size: 2rem;  color: #2d70e7; margin-right: 10px;}
.title h1 {  font-size: 2rem;  font-weight: bold;  color: #1347a4;}

/* Contenido de las secciones */
.content {    padding: 20px;    margin-top: 20px;}
.content { min-width: 208px; font-size: 16px;   line-height: 150%; flex: 1; padding-left: 24px;  padding-right: 24px;	max-width: 664px; flex-wrap: wrap; display:flex; flex-direction: column;  gap:20px; align-items:flex-start; justify-content:flex-start; flex-shrink:0; position:relative; }
.content:not(:last-child) {    border-bottom: 2px solid #eee;    margin-bottom: 20px;}
.content .item {    margin-bottom: 30px;}
.content ul li i {    font-size: 18px;}
.item {  margin-bottom: 20px;}
.item h2 {  font-size: 1.5rem;  color: #2d70e7; 	margin-bottom: 20px;	line-height: 30px;}
.item ul {  list-style-type: none;  padding: 0;}
.item ul li {  font-size: 1rem;  display: flex;  align-items: center;  margin-bottom: 8px;}
.item ul li i {  margin-right: 10px;  color: #00b8d8; }

/* Estilos para el texto */
.item p {  font-size: 1rem;  color: #555;}

/* Contenedor de tarjetas   */
.cards-container {  display: grid;  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));  gap: 20px;  margin-top: 20px;}

/* Tarjetas */
.card {  background-color: #fff;  border: 1px solid #ddd;  border-radius: 10px;  padding: 20px;  text-align: center;  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);  transition: transform 0.3s ease, box-shadow 0.3s ease;}
.card:hover {  transform: translateY(-10px);  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);}
.card-icon {  font-size: 3rem;  color: #2d70e7;   margin-bottom: 15px;}
.card h2 {  font-size: 1.5rem;  color: #1347a4;  margin-bottom: 10px;}
/* Descripción en las tarjetas */
.card p {  font-size: 1rem;  color: #555;}

/* Contenedor principal */
.compliance-section {  margin: 20px;  max-width: 1200px;  margin: 0 auto;  padding: 20px;  background-color: #fff;  display: flex;  flex-direction: column;  align-items: center;}

/* Card del título */
.card-title {  background-color: #f9f9f9;  border: 2px solid #ddd;  border-radius: 15px;  padding: 30px;  text-align: center;  margin-bottom: 40px;  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);  max-width: 900px;  display: flex;  flex-direction: column;}

/* Título dinámico */
.dynamic-title {  font-family: 'Montserrat', sans-serif;  font-weight: 700;  line-height: 1.3;  color: #18191c;  font-size: 2rem;max-width: 700px;}
.dynamic-title i {  font-size: 2.5rem;  color: #34cfa5;  margin-right: 10px;}
.dynamic-title span {  display: block;  font-size: 2rem;  color: #34cfa5;}
.dynamic-title {  font-family: 'Montserrat', sans-serif;  font-weight: 700;  line-height: 1.3;  color: #18191c;  font-size: 2rem;  justify-items: center;  justify-content: center;  display: flex;  flex-direction: column;  margin-top: 20px;}

/* Texto introductorio */
.intro-text {  text-align: justify;  font-size: 1rem;  line-height: 1.6;  color: #555;  margin-bottom: 40px;  max-width: 675px;}
.intro-text p {  margin-bottom: 15px;}
.intro-text strong {  color: #1347a4;}

/* Tarjetas */
.card {  background-color: #fff;  border: 1px solid #ddd;  border-radius: 10px;  padding: 20px;  text-align: center;  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);}
.card-icon {  font-size: 4rem;  color: #34cfa5;  margin-bottom: 15px;}
.card h2 {  font-size: 1.5rem;  color: #1347a4;  margin-bottom: 30px;}
.card p {  font-size: 1rem;  color: #555;  line-height: 30px;}

/* Estilos para las listas de contenido */
.content ul {    list-style-type: none;    padding-left: 0;    font-size: 1rem;    line-height: 1.6;    color: #555;}
.content ul li {    margin-bottom: 15px;}
.content ul li i {    color: #34cfa5;    margin-right: 10px;}

/* Estilo para las secciones */
.content .item {    margin-bottom: 30px;}
.content ul li i {    font-size: 18px;}

/* Asegurando la adaptabilidad en dispositivos móviles */
@media (max-width: 768px) {	
.title i { font-size: 1.5rem;  }
.title h1 { font-size: 1.5rem;  }
.content { padding: 10px;  }
.cards-container {  grid-template-columns: 1fr;  }
.card { padding: 15px;  }
}

/* Header container styles */
.header-section { width: 100%; padding: 3rem 1rem; background: linear-gradient(0deg, #0e357a, #00b8d8);  color: #fff; text-align: center; position: relative; overflow: hidden; border-bottom-left-radius: 30% 25%;  border-bottom-right-radius: 30% 25%; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); }
.header-content { max-width: 800px; margin: 0 auto; padding: 1rem; opacity: 0; transform: translateY(20px); animation: fadeInSlide 1s ease-out forwards; animation-delay: 0.5s;}
@keyframes fadeInSlide {
 to {  opacity: 1;  transform: translateY(0); }}
.header-title { font-size: 3rem; font-weight: 700; margin: 0; text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.3);  color: white;}
.header-subtitle { font-size: 1.2rem; margin: 0.5rem 0 0; color: #d1e4f2; text-align:center}
.header { width: 100%; background-color: #ffffff;  padding: 1.5rem 2rem; display: flex; justify-content: space-between; align-items: center; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); }
.header-container { display: flex; justify-content: space-between; align-items: center; width: 100%;}
.logo img { max-height: 60px; width: auto;}
/* Estilo de los Botones */
.header-buttons { display: flex; gap: 1.5rem; justify-content: flex-end;  align-items: center; flex-grow: 1; /* Asegura que los botones se alineen correctamente */ margin-right: 20px; margin-left: 20px;}
.button-demo { background-color: #0e357a; color: #fff; padding: 1rem 2rem;  border-radius: 50px;  font-weight: 700;  text-decoration: none; text-transform: none;  font-size: 1rem; transition: background-color 0.3s, transform 0.3s ease-in-out, box-shadow 0.3s; text-align: center;}
.button-demo:hover { background-color: #154b8f;  transform: scale(1.05);  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }
.button-demo:visited {color: #fff;}
.button-login { background-color: #34cfa5;  color: #fff; padding: 1rem 2rem;  border-radius: 50px;  font-weight: 700;  text-decoration: none; text-transform: none;  font-size: 1rem; transition: background-color 0.3s, transform 0.3s ease-in-out, box-shadow 0.3s; text-align: center;text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.3);}
.button-login:hover { background-color: #28b795; transform: scale(1.05);  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }
.button-login:visited {color: #fff;}
.menu-icon img { width: 30px; height: 30px; transition: transform 0.3s ease-in-out;}
.menu-icon a:hover img { transform: rotate(90deg); /* Rotación sutil del ícono en hover */}
/* Estilo General del Nav Bar */
.navbar {  background-color: #0e357a;  padding: 0.8rem 2rem;  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);  width: 100%;}
.navbar-container { display: flex; justify-content: center;  align-items: center; gap: 2rem; }
.navbar-item { font-size: 1.1rem;  font-weight: 500;  text-align: center; justify-items: center; align-content: center; text-align: center;}
.navbar-item a { color: #fff;  text-decoration: none; padding: 0.5rem 1rem; transition: color 0.3s ease, transform 0.3s ease; border-radius: 4px;  display: flex; text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.2);}
.navbar-item a:hover { color: #fff; transform: scale(1.05);  background-color: rgba(255, 255, 255, 0.2); }
/* Estilos para la sección de llamada a la acción (CTA) */
.cta-container {  background-color: #0e357a;  color: white;  display: flex;  justify-content: space-between;  padding: 30px 10%;  align-items: center;}
.cta-text {  max-width: 60%;}
.cta-heading {  font-size: 24px;  font-weight: bold;  margin-bottom: 10px;  color: white; }
.cta-description {  font-size: 16px;  margin-bottom: 20px;  color: white;   max-width: 424px;  line-height: 24px;}
.cta-buttons-container {  display: flex;  gap: 15px;  flex-direction: column;}
.cta-button {  padding: 12px 56px;  border-radius: 30px;  font-weight: bold;  text-align: center;  text-decoration: none;  display: flex;  justify-content: center;  align-items: center;  transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;}
.cta-button-green {  background-color: #34cfa5;  border: none;  padding: 12px 56px;}
.cta-button-green a {  color: #0e357a;}
.cta-button-white {  background-color: transparent;  border: 2px solid white;  color: white;	padding: 12px 56px;}
.cta-button-white a {  color: white;}
.cta-button-green:hover {  transform: scale(1.05);   background-color: #28b795;   box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }
.cta-button-white:hover {  transform: scale(1.05);   background-color: rgba(255, 255, 255, 0.2);   color: #0e357a;   box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }
/* Footer Estilos */
.footer {  font-family: 'Arial', sans-serif;  background-color: #fff;   color: #6d7175;   width: 100%;}
.footer-main {  display: flex;  justify-content: space-between;  padding: 40px 10%;  background-color: #fff;   color: #333; }
.footer-column {  width: 20%;  padding: 10px;}
.footer-logo {  max-width: 150px;}
.footer-section-title {  font-size: 18px;  font-weight: bold;  margin-bottom: 10px;  color: #0e357a;   max-width: 180px;}
.footer-links {  display: flex;  flex-direction: column;  gap: 10px;	align-items: flex-start;}
.footer-link {  font-size: 14px;  color: #18191c;   gap: 10px;  display: flex;}
.footer-link a {  color: #6d7175;   text-decoration: none;}
.footer-link a:hover {  text-decoration: underline;}
/* Footer de Derechos */
.footer-bottom {  background-color: #fff;   color: #333;   padding-left: 20px;  padding-right: 20px;  padding-bottom: 20px;}
.footer-divider {  border-top: 1px solid #ccc;  margin-bottom: 10px;}
.footer-copyright {  font-size: 14px;  color: #6d7175;   text-align: center;}
.footer-social-icons {  text-align: center;  margin-top: 10px;}
.footer-social-icon {  margin: 0 10px;}
.footer-social-icon-img {  width: 25px;  height: 25px;  filter: none; }
/* Animación para los iconos sociales */
.footer-social-icon {  transition: transform 0.3s ease, filter 0.3s ease;}
.footer-social-icon-img {  width: 30px;   height: 30px;  filter: grayscale(100%) brightness(0.6);  transition: filter 0.3s ease;}
.footer-social-icon:hover .footer-social-icon-img {  transform: scale(1.4);   filter: grayscale(0%) brightness(2); }
.footer-social-icon-img:hover {  transform: scale(1.4); }
.back-to-top {    position: fixed;    bottom: 20px;    right: 20px;    width: 50px;    height: 50px;    background-color: #0e357a; /* Main brand color */    border-radius: 50%;    display: flex;    justify-content: center;    align-items: center;    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);    cursor: pointer;    transition: transform 0.3s ease, background-color 0.3s ease;    }
.back-to-top:hover {    transform: scale(1.1);    background-color: #34cfa5; /* Hover color */}
.back-to-top-icon {    width: 24px;    height: 24px;    color: white;}
.back-to-top a {    text-decoration: none;    display: flex;    justify-content: center;    align-items: center;}
.page-button-top-item {     justify-content: center;  align-items: center;    }
.page-button-top-item img {      transition: transform 0.3s ease;}
.page-button-top-item:hover img {    transform: scale(1.1);}

@media (max-width: 768px) {	
.header-section {	padding: 1rem 1rem;	}
.footer-links { align-items: center;	}
.cta-container { flex-direction: column; align-items: center; padding: 20px;  }
.cta-buttons-container { flex-direction: column; gap: 10px;  }
.footer-main { flex-direction: column; align-items: center;  }
.cta-container { flex-direction: column; align-items: center; padding: 20px;  }
.cta-buttons-container { flex-direction: column; gap: 10px;  }
.footer-main { flex-direction: column; align-items: center;  }
.footer-column { width: 100%; text-align: center; margin-bottom: 20px; flex-direction: column; display: flex; align-items: center;  }
.page-button-top-item { display: none;	}
.navbar-container {  flex-wrap: wrap;  gap: 1rem; }
.cta-text {  text-align: center;  }
.header-container {  flex-direction: column;  align-items: center; }
.header-buttons {  margin-top: 1rem;  gap: 1rem; }
.header-title {  font-size: 2rem; }
.header-subtitle {  font-size: 1rem; }
}