/* --------------------- HEADER -------------------------------------- */
header {
  display: flex;
}

.columna {
  width: 50%;
  height: 5rem;
  box-sizing: border-box;
  background-color: #3366cc;
  display: flex;
  align-items: center;
  justify-content: center;
}

.columna1 {
  background-color: #2a5fc8;
  font-size: 28px;
}

.columna2 {
  background-color: #2b75c0;
  font-size: 24px;
}

.columna h1 {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  color: white;
}

.columna1 h1 {
  font-size: 32px;
}

.columna2 h1 {
  font-size: 22px;
}

body {
  margin: 0;
  background-color: #f4f4f4;
}

/* --------------------------  VALIDACION ------------------------- */
/* Estilo para inputs */
.form-control {
  border-color: #a7afb5; /* Color de borde predeterminado */
}

/* -------------------------------------------------------------------------------------- */
main {
  font-family: Arial, sans-serif;
  /* Establece la fuente del texto en el cuerpo del documento */
  padding: 0;
  /* Elimina el relleno predeterminado del cuerpo */
  display: flex;
  flex-direction: column;
  /* Establece el modelo de caja flexible para el cuerpo */
  align-items: center;
  /* Centra los elementos verticalmente en el cuerpo */
  justify-content: center;
  /* Centra los elementos horizontalmente en el cuerpo */
}

form {
  background-color: #ffffff;
  padding: 20px;
  width: 30rem;
  margin: 30px;
  border-radius: 40px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  text-align: center;
}

label {
  font-weight: bold;
  color: #3b3d42;
  display: block;
}

a,
a:hover {
  color: #333;
}

.error-message {
  color: rgb(36, 36, 36);
  font-weight: bold;
  background-color: #f5f57e;
  border-radius: 10px;
  width: 45%;
  padding: 20px;
  text-align: center;
  font-family: Arial, sans-serif;
}

label a {
  color: #3b3d42; /* Color del enlace, ajusta según sea necesario */
  text-decoration: none; /* Elimina el subrayado predeterminado del enlace */
  margin-left: 10px; /* Ajusta el margen izquierdo según sea necesario */
  font-weight: none;
  font-size: 15px;
}

label a:hover {
  text-decoration: underline; /* Agrega subrayado al pasar el ratón sobre el enlace */
}

/* icono de ojo en contraseña */
.toggle-password-button {
  height: 100%;
  margin: 0;
}
.input-group {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  width: 100%;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.input-group > .form-control {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}

input {
  margin-bottom: 15px;
  box-sizing: border-box;
  border-radius: 5px;
  border: 1px solid grey;
}
/* Eliminar icono de input numerico Para Webkit (Chrome, Safari, Edge) */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

button {
  background-color: #60ba47;
  /* background-color: #5a73bd;  */
  /* Verde claro */
  color: #ffffff;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
  margin-top: 10px;
  font-weight: bold;
  width: 35%;
}

button:hover {
  background-color: #4a8c37;
  /* Verde más oscuro al pasar el ratón */
}

.mensaje-container {
  text-align: center;
  margin: 20px;
}
.mensaje-exito {
  padding: 10px;
  border-radius: 5px;
  background-color: #dff0d8; /* verde */
  color: #3c763e; /* texto verde oscuro */
  border: 1px solid #d6e9c6; /* borde verde claro */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  width: 80%;
  margin: auto;
}



.linea {
  border: none;
  border-top: 2px solid white;
  width: 80%; /* Ajusta el ancho de la línea según sea necesario */
  margin: 10px 0;
}

.social-icons {
  display: flex;
  align-items: center;
}

.social-icons a {
  margin: 10px;
  display: inline-flex; /* Cambiado a inline-flex para que funcione con justify-content y align-items */
  width: 40px; /* Ajusta el tamaño del círculo según sea necesario */
  height: 40px; /* Ajusta el tamaño del círculo según sea necesario */
  border-radius: 50%;
  overflow: hidden;
  justify-content: center; /* Centra horizontalmente */
  align-items: center; /* Centra verticalmente */
  border: 2px solid rgb(209, 207, 207);
  background-color: #6498cd; /* Cambia el color del fondo según tus preferencias */
}

.social-icons a img {
  width: 70%; /* La imagen se ajustará al 100% del contenedor */
  height: auto; /* Mantendrá la proporción original de la imagen */
  border-radius: 50%;
}

.logo img {
  width: 100px; /* Ajusta el tamaño del logo según sea necesario */
  margin-top: 20px;
}

.address {
  margin-top: 10px;
}

@media only screen and (max-width: 820px) {
  header {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .columna {
    width: 50%;
  }

  .columna h1 {
    margin-bottom: 0.5rem;
  }

  .columna1,
  .columna2 {
    font-size: 10px;
  }

  form {
    width: 100%;
  }

  label,
  select,
  input {
    margin-left: 0;
    margin-right: 0;
  }

  input {
    width: 60%;
  }

  button {
    width: 40%;
    font-size: 12px;
  }
}

@media only screen and (max-width: 767px) {
  header {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .columna {
    width: 50%;
  }

  .columna h1 {
    margin-bottom: 0.5rem;
  }

  .columna1,
  .columna2 {
    font-size: 10px;
  }

  form {
    width: 100%;
  }

  label,
  select,
  input {
    margin-left: 0;
    margin-right: 0;
  }

  input {
    width: 60%;
  }

  button {
    width: 40%;
    font-size: 12px;
  }
}

@media only screen and (max-width: 400px) {
  .columna1,
  .columna2 {
    font-size: 10px;
  }
  input {
    width: 80%;
  }
  button {
    width: 40%;
    font-size: 12px;
  }
}

/* Efecto hover para todos los botones */
.btn {
  transition: all 0.3s ease-in-out; /* Transición más rápida y suave */
  cursor: pointer;
}

.btn:hover {
  transform: scale(1.03); /* Escala más sutil */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Sombra suave al hover */
}

/* Efecto hover para links dentro de cards */
.card {
  transition: all 0.4s ease-in-out;
}

.card .card:hover {
  transform: scale(1.05); /* Escala reducida para un efecto más sutil */
  opacity: 0.95;
}
