* {
  box-sizing: border-box;
}

.navbar-sticky {
    position: sticky;
    top: 0;
    z-index: 1030; /* Asegura que esté en la capa correcta */
    background-color: white;
    
}

.dropdown-menu {
    z-index: 1050; /* Supera cualquier elemento superpuesto */
    position: absolute; /* Permite que el menú se salga del flujo del padre */
    top: 100%;
    left: 0;
    display: none; /* Oculto por defecto */
}

.show .dropdown-menu {
    display: block; /* Muestra el menú cuando está activo */
}

/* Ajustes adicionales para mejorar la interacción */
.navbar-sticky .navbar-nav .nav-link {
    color: #333; /* Color del texto */
    padding: 10px 15px; /* Espaciado para una mejor visualización */
}

.navbar-sticky .navbar-nav .nav-link:hover {
    color: #007bff; /* Cambio de color al hover */
    text-decoration: none; /* Sin subrayado */
}

.navbar-sticky .btn-primary {
    background-color: #007bff;
    border: none;
}

.navbar-sticky .btn-primary:hover {
    background-color: #0056b3;
}

/* Evita conflictos con otros contenedores fijos */
body {
    margin-top: 80px; /* Ajusta según la altura del navbar para evitar contenido superpuesto */
}


.arrow-icon {
  width: 20px;     /* ajusta según el tamaño deseado */
  height: auto;
  display: block;
  margin: 0 auto;
}


.overlay-container {
  position: absolute;
  top: 50%;
  left: 2%;
  transform: translateY(-50%);
  z-index: 10;
}

.blog-card {
  width: 100%;
  max-width: 400px;
  background-color: #0f0f0f;
  border-radius: 25px;
  overflow: hidden;
  font-family: 'Arial', sans-serif;
  color: white;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.4);
  position: relative;
}

.blog-header {
  background-image: url('../img/Toro - Imagen.webp'); /* asegúrate de que exista */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 180px;
  position: relative;
}

.overlay-text {
  position: absolute;
  bottom: 15px;
  left: 20px;
}

.overlay-text h1 {
  margin: 0;
  font-size: 32px;
}

.overlay-text p {
  margin: 5px 0;
  font-size: 14px;
}

.autor {
  position: absolute;
  bottom: 3px;
  right: 20px;
  text-align: right;
  font-size: 13px;
  color: #ddd;
}

.autor span {
  font-size: 11px;
  display: block;
  color: #aaa;
}

.blog-items {
  padding: 20px;
}

.blog-table-scroll {
  max-height: 180px;
  overflow-y: auto;
  scrollbar-width: thin;
  padding-right: 12px; /* <-- Añade esto */
}


.blog-table-scroll::-webkit-scrollbar {
  width: 6px;
}
.blog-table-scroll::-webkit-scrollbar-thumb {
  background-color: #555;
  border-radius: 4px;
}

.blog-table {
  width: 100%;
  border-collapse: collapse;
}

.blog-table td {
  padding: 12px 0;
  border-bottom: 1px solid #333;
  vertical-align: middle;
  color: white;
  font-size: 14px;
}

.blog-table .arrow {
  width: 20px;
  color: white;
}

.blog-table .title {
  font-weight: bold;
}

.blog-table .title a {
  color: white;
  text-decoration: none;
}

.blog-table .title a:hover {
  text-decoration: underline;
}

.blog-table .date {
  text-align: right;
  color: #999;
  font-size: 13px;
  white-space: nowrap;
}

/* Color menú*/




.blog-table td.title {
    padding-left: 10px;
}



.autor-avatar {
  width: 50px !important;
  height: 50px !important;
  object-fit: cover;
}


  /* Navbar fondo negro y texto blanco #30363b*/
  .navbar {
    background-color: #000000 !important;
  }

  .navbar .nav-link,
  .navbar .navbar-brand,
  .navbar .dropdown-toggle {
    color: #fff !important;
    transition: all 0.3s ease;
  }

  /* Hover en los enlaces */
  .navbar .nav-link:hover,
  .navbar .dropdown-toggle:hover {
    color: #000 !important;
    background-color: #fff !important;
    border-radius: 5px;
  }

  /* Dropdown */
  .dropdown-menu {
    background-color: #000;
  }

  .dropdown-item {
    color: #fff;
    transition: all 0.3s ease;
  }

  .dropdown-item:hover {
    background-color: #fff;
    color: #000;
  }

  /* Botón personalizado */
  .btn-primary {
    background-color: #fff;
    color: #000;
    border: none;
  }

  .btn-primary:hover {
    background-color: #000;
    color: #fff;
    border: 1px solid #fff;
  }

  /* Ajuste para ícono de hamburguesa en móvil */
  .navbar-toggler {
    border-color: #fff;
  }

  .navbar-toggler-icon {
    filter: invert(100%);
  }




/* PDFs Inicio */
.overlay-container {
    position: absolute; /* Permite posicionarlo en relación al contenedor padre */
    top: 50%; /* Centrado vertical */
    left: 2%; /* Alineado a la izquierda */
    transform: translateY(-50%); /* Ajusta para centrar perfectamente */
    background: #343a40; /*rgba(255, 255, 255, 0); /* Fondo semi-transparente */
    /*background-image: url('../img/img-pdf.webp');*/
    background-size: cover;
    background-repeat: no-repeat;
    padding: 15px;
    border-radius: 15px;
    /* text-align: center;*/
    max-width: 430px;
    width: 100%;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); /* Ajuste de sombra */
    z-index: 10; /* Asegura que esté sobre otros elementos */
}

/* Estilo para la tabla de PDFs */
.table-container {
    max-height: 250px; /* Altura máxima de la tabla */
    overflow-y: auto; /* Desplazamiento vertical */
    border: 1px solid #555; /* Borde para destacar el área de la tabla */
    margin-top: 20px;
    background: rgba(255, 255, 255, 0.2); /* Fondo para diferenciar */
    padding: 10px;
    border-radius: 8px;
}

.pdf-table {
    width: 100%;
    border-collapse: collapse;
    color: white;
}

.pdf-table th, .pdf-table td {
    border: 1px solid #adb5bd;
    padding: 8px 12px;
    text-align: left;
}


.pdf-table th {
    background-color: #00000091;
    font-weight: bold;
    font-size: 16px; /* Tamaño de letra para encabezados */
}

.pdf-table td {
    font-size: 14px; /* Tamaño de letra reducido para celdas */
}

.pdf-table th:first-child,
.pdf-table td:first-child {
    width: 100px; /* Fija el ancho de la columna de la fecha */
    white-space: nowrap; /* Evita el salto de línea en el contenido */
}


.pdf-table a {
    color: #fff; /* Color de los enlaces */
    text-decoration: none;
    
}

.pdf-table a:hover {
    text-decoration: underline;
}


/* Estilo para la lista de PDFs */
/*.pdf-list {
    max-height: 200px; /* Altura máxima del contenedor */
    /*overflow-y: auto; /* Habilitar desplazamiento vertical */
    /*margin-top: 20px;
    text-align: left;
    background: rgba(255, 255, 255, 0.2); /* Fondo para diferenciar */
    /*padding: 10px;
    border-radius: 8px;
}*/

/*.pdf-list a {
    color: #fff; /* Color de los enlaces */
    /*text-decoration: none;
    display: block;
    margin-bottom: 5px;
}*/

/*.pdf-list a:hover {
    text-decoration: underline;
}

/* PDFs Fin */

html, body {
    font-family: Arial, sans-serif;
    color: #fff;
    background-color: #000; /*Cambio de fondo*/
    margin: 0;
    /*#30363bs*/
}

header {
    display: flex;
    justify-content: space-between;
    padding: 10px 100px;
    background-color: #fff;
    color: #fff;
}

/* carrusel */

nav ul {
    list-style: none;
    display: flex;
}

nav ul li {
    margin-left: 15px;
    font-size: 12pt;
}

/*Textos Inicio*/
/* Primera fuente */
@font-face {
    font-family: 'funte_h1';
    src: url('../fonts/OpenSauceOne-SemiBold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

/* Segunda fuente */
@font-face {
    font-family: 'funte_h2';
    src: url('../fonts/OpenSauceTwo-Regular.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

/* Tercera fuente */
@font-face {
    font-family: 'funte_h3';
    src: url('../fonts/OpenSauceTwo-SemiBold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'funte_p';
    src: url('../fonts/OpenSauceTwo-Regular.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}


@font-face {
    font-family: 'funte_p_light';
    src: url('../fonts/OpenSauceTwo-Light.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

/*//////////*/


.h1-46{
    font-size: 46pt;
    font-family: 'funte_h1', sans-serif;
    letter-spacing: -5px;
    line-height: 1;
}

.p-14-l{
    font-size: 14pt;
    font-family: 'funte_p_light', sans-serif;
}

.p-14{
    font-size: 14pt;
    font-family: 'funte_p', sans-serif;
}

.h2-32{
    font-size: 32pt;
    font-family: 'funte_h2', sans-serif;
    letter-spacing: -3px;
}

.p-14{
    font-size: 14pt;
    font-family: 'funte_p', sans-serif;
}

.h3-19{
    font-family: 'funte_h3', sans-serif;
}

.p-13 {
    font-size: 13pt;
    line-height: 1.2; /* Ajusta este valor para reducir o aumentar el espacio entre líneas */
    font-family: 'funte_p', sans-serif;
}

.p-15 {
    font-size: 15pt;
    line-height: 1.2; /* Ajusta este valor para reducir o aumentar el espacio entre líneas */
    font-family: 'funte_p', sans-serif;
}

.p-12{
    font-size: 12pt;
    font-family: 'funte_p', sans-serif;
}

.p-12-c{
    font-size: 12pt;
    font-style: italic;
    font-family: 'funte_p', sans-serif;

}

.p-10{
    font-size: 10pt;
    font-family: 'funte_p', sans-serif;
}

.p-7{
    font-size: 7pt;
    font-family: 'funte_p', sans-serif;
}

/*Textos Fin*/

/*Formato de botones inicio*/

.btn-primary {
    border-radius: 20px; /* Bordes redondeados */
}




/*Formato de botones fin*/




#hero {
    text-align: center;
    background-image: url('hero-image.jpg');
    color: #fff;
}


/*Contenedor de Home*/
.contenedor {
    position: relative; /* Referencia para los elementos posicionados dentro */
    background-image: url('../img/Home.webp'); 
    background-size: cover;
    background-position: center 50%; /* Mueve la imagen un poco hacia arriba */
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

}

.fondo-transparente {
    color: #fff;
    /*background-color: #ffffff63; /* Color blanco con 50% de transparencia */
    /*padding: 20px; /* Ajusta el padding si lo necesitas */
    /*border-radius: 8px; /* Opcional: redondear bordes */
}

.image-container {
    position: fixed;
    bottom: 10px; /* Smaller margin for mobile */
    right: 10px; /* Smaller margin for mobile */
}

.brand-logo {
    width: 100px;
    height: auto;
}

@media (min-width: 768px) {
    .brand-logo {
        width: 180px;
    }
}




/*Chat*/

.chat-box {
      position: fixed;
      width: 100%;
      max-width: 400px;
      padding: 20px;
      margin: 20px auto;
      bottom: 20px;
      right: 15px;
      transition: all 0.3s ease;
    }

    .chat-box.minimized {
    width: 30px;         
    height: 30px;          
    border-radius: 50px;    
    background-color: #25d366;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99;
}

    .chat-header,
    .chat-message,
    .input-group,
    .formato-whats {
      transition: opacity 0.3s ease;
    }

    /* Estilo para ocultar otros elementos dentro del chat-box cuando se minimiza */
    .chat-box.minimized .chat-header,
    .chat-box.minimized .chat-message,
    .chat-box.minimized .input-group {
        display: none;
    }

    /* Aseguramos que el botón "Agenda una cita" permanezca visible */
    .chat-box.minimized .formato-whats {
        display: block;
    }

    .whatsapp-icon {
      font-size: 24px;
      color: white;
      display: none;
    }

   

    .chat-header {
      background-color: #4caf50;
      color: white;
      font-size: 16px;
      padding: 10px;
      border-radius: 8px 8px 0 0;
      /*text-align: center;*/
    }

    .chat-message {
      margin: 0 0 10px 0;
      padding: 15px;
      background-color: #ffffff;
      border-radius: 0 0 8px 8px;
      font-size: 16px;
      color: #4a4a4a;
      display: flex;
      align-items: center;
    }

    .chat-message img {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      margin-right: 10px;
    }

    .formato-whats {
      text-align: right;
    }

    .whatsapp-button {
      background-color: #25d366;
      color: white;
      border: none;
      border-radius: 8px;
      text-align: center;
      border: 1px solid white;
    }

    .whatsapp-button:hover {
      background-color: white;
      color: #25d366;
      border-color: #25d366;
      transition: background-color 0.3s, color 0.3s, border-color 0.3s;
    }


    .minimize-btn {
      background: none;
      border: none;
      color: white;
      font-size: 18px;
      cursor: pointer;
      float: right;
      margin-right: 10px;
    }

    .chat-box.minimized {
      width: 30px;
      height: 30px;
      border-radius: 50px;
      background-color: #25d366;
      display: flex;
      align-items: center;
      justify-content: center;
    }





  .btn-outline-success {
    color: #198754;
    border-color: #198754;
  }

/* Seccion de solicitudes*/
.solicitudes {
    color: #fff;
    background-image: url('../img/Asesores.webp'); 
    background-size: cover;
    background-position: center 15%;
    background-repeat: no-repeat;
    width: 100%;
    min-height: 80vh; /* Aumenta la altura mínima para mostrar más del fondo */
    padding: 40px 0; /* Ajusta el espacio alrededor del contenido */
    display: flex;
    align-items: center;
    justify-content: center;
}

.justificado {
    text-align: justify;    
}

#nosotros img {
    width: 70%;
    height: 100%;
    object-fit: cover;
}

.formularios{
    color: #fff;
    background-image: url('../img/Asesores.webp'); 
    background-size: cover; 
    background-position: center;
}


/*.seccion-con-margen {
  margin-top: 70px;
  margin-bottom: 70px;
}*/

/* Scroll */

#myBtn {
  display: none; /* Hidden by default */
  position: fixed; /* Fixed/sticky position */
  bottom: 32px; /* Place the button at the bottom of the page */
  right: 55px; /* Place the button 30px from the right */
  z-index: 99; /* Make sure it does not overlap */
  border: none; /* No borders */
  outline: none; /* Remove outline */
  background-color: rgb(13 110 253 / 52%); /* Set a background color */
  color: white; /* Text color */
  cursor: pointer; /* Add a mouse pointer on hover */
  padding: 12px; /* Some padding */
  border-radius: 25px; /* Rounded corners */
}



/* Home*/
html, body {
          margin: 0; /* Elimina los márgenes por defecto */
          padding: 0; /* Elimina el relleno por defecto */
          width: 100%; /* Establece el ancho al 100% del viewport */
          height: 100%; /* Establece la altura al 100% del viewport */
        }



/* CSS nuevo slider*/
        .testimonial-slider {
          background-color: #fff;
          padding: 3em 2em;
        }
        .testimonial-title {
          color: black;
        }
        .testimonial-title h2 {
          padding-left: 0.2em;
        }
        .card {
          color: #ffffff;
          margin: 0 1em;
          box-shadow: 2px 6px 8px 0 rgba(22, 22, 26, 0.18);
          border: none;
          height: 100%;
          cursor: pointer;
          background-color: #33393f;
        }

        .carousel-item {
          width: 100%; /* Asegura que cada ítem ocupe el ancho completo */
        }

        .carousel-control-prev,
        .carousel-control-next {
          background-color: #fff;
          width: 2em;
          height: 2em;
          border-radius: 50%;
          top: 60%;
          transform: translateY(-50%);
          box-shadow: 2px 6px 8px 0 rgba(22, 22, 26, 0.18);
        }
        @media (min-width: 576px) {
          .carousel-item {
            margin-right: 0;
            flex: 0 0 35%;
            display: block;
          }
          .carousel-inner {
            display: flex;
          }
        }
        @media (min-width: 768px) {
          .carousel-inner {
            padding: 1em;
          }
          
        }

.boton-ver-mas {
            display: inline-flex;
            align-items: center;
            color: #0000EE; /* Color azul */
            font-size: 18px;
            text-decoration: none; /* Sin subrayado */
            cursor: pointer;
        }

        .boton-ver-mas .bi {
            margin-right: 5px; /* Espacio entre la flecha y el texto */
            font-size: 20px; /* Tamaño de la flecha */
            color: #0000EE; /* Mismo color que el texto */
        }

.card-footer {
    
    background-color: #33393f; /* Fondo gris claro */
    padding: 5px; /* Espaciado interno */
    /*text-align: center;  Centrar contenido */
    border-top: 0 solid #e0e0e0; /* Línea superior */
    border-radius: 0 0 8px 8px; /* Bordes redondeados en la parte inferior */
}




/* Estilo para las imágenes de redes sociales */
.icon-social {
    width: 30px; /* Ajusta el tamaño de las imágenes */
    height: 30px; /* Asegura que las imágenes tengan la misma altura */
    border-radius: 30%; /* Bordes redondeados */
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Efecto de transición para hover */
}

.icon-social:hover {
    transform: scale(1.1); /* Aumenta ligeramente el tamaño al pasar el mouse */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); /* Sombra al pasar el mouse */
}


.social-media-container span {
    font-size: 16px;
    margin-bottom: 10px;
}




/* Opcional: Efecto al pasar el mouse por la leyenda */
.social-media-container span:hover {
    color: #007bff; /* Cambiar color de la leyenda al pasar el mouse */
    cursor: pointer;
}
