:root {
  --midnight-blue: #002855;
  --dark-slate-blue-2: #00418a;
  --white: white;
  --turquoise: #00ccb6;
  --grey: #8093aa;
}
.roboto-thin {
  font-family: "Roboto", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.roboto-light {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.roboto-regular {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.roboto-medium {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.roboto-bold {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.roboto-black {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.roboto-thin-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.roboto-light-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.roboto-regular-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.roboto-medium-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-style: italic;
}

.roboto-bold-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.roboto-black-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-style: italic;
}

/* Estilo base para la imagen */
.imagen2 {
  width: 55%; /* Por defecto, la imagen ocupará el 70% del contenedor */
  height: auto;
}
.organigrama {
  max-width: 100%; /* Esto asegura que el div no sea más ancho que la pantalla */
  margin: 0 auto; /* Centra el div horizontalmente */
}
.organigrama img {
  max-width: 100%; /* Esto hace que la imagen sea como máximo del ancho del div */
  height: auto; /* Permite que la altura se ajuste proporcionalmente al ancho */
  display: block; /* Asegura que la imagen no tenga espacio adicional debajo */
  margin: 0 auto; /* Centra la imagen horizontalmente dentro del div */
}

.nosotros-item {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.nosotros-content .owl-carousel,
.nosotros-content .owl-carousel .owl-item {
  display: flex;
  justify-content: center;
}
/* ===================== SLIDER PRINCIPALES ========================*/

.single_slider {
  position: relative; /* Asegura que el contenedor tenga una posición relativa para los elementos internos */
  overflow: hidden; /* Oculta cualquier parte de la imagen que se desborde del contenedor */
}

/* ===================== FIN SLIDER PRINCIPALES ========================*/

.fondo {
  text-align: center;
  background: linear-gradient(to right, #23a79a, #10f1cb);
  /* background: linear-gradient(to right, #00ccb6, #10f1da); */

  /* Fallback para navegadores que no soportan gradientes */
}
.color-white {
  /* color: white !important; */
  font-weight: bold;
}

.color-white span a {
  /* color: white !important; */
  padding: 8px 12px;
  margin: 15px 0px;
}
.color-white span a:hover {
  color: #002855 !important;
  border-radius: 8px;
  background: white;
}
.main-header-area {
  padding: 15px !important;
  top: -72px !important;
  background: white !important;
}
.header-area .main-header-area .main-menu ul li a {
  color: #002855 !important;
  font-weight: 700 !important;
}

.header-area .main-header-area .main-menu ul li a:hover {
  color: #00ccb6 !important;
}

.header-area .main-header-area .Appointment .book_btn a {
  background: #0061c8 !important;
  color: #fff !important;
}
.header-area .main-header-area .Appointment .book_btn a:hover {
  background: #002956 !important;
  border: #002855 !important;
}

body {
  max-width: 100%; /* Opcionalmente, puedes usar un porcentaje para adaptarse al ancho de la pantalla */
  overflow-x: hidden; /* Esto ocultará el desbordamiento horizontal, pero es mejor resolver la causa raíz */
  color: #002956 !important;
}
h1,
h2,
h3,
h4,
h5 {
  color: #002956 !important;
}
p {
  color: #002956 !important;
}
.table {
  border: 1.5px solid #efefef;
}
.table-bg {
  background-color: #ff0b41 !important;
  color: white !important;
}
.nav-header ul li a {
  color: #fff !important;
}
.nav-header ul li a:hover {
  color: #fff !important;
}
.nav-header ul li:nth-child(odd) {
  padding: 5px 10px;
  border-radius: 8px;
  background: #ff0b41;
  color: #fff !important;
}
.nav-header ul li:nth-child(odd):hover {
  background: #002855;
  color: #fff !important;
}
@media screen and (max-width: 767px) {
  .heading-style-h4 {
    font-size: 1.3rem;
  }
  .single_slider img {
    width: 100%;
    height: 550px; /* o cualquier altura deseada */
    object-fit: fill; /* Escala la imagen para que llene el contenedor, manteniendo su relación de aspecto y recortando si es necesario */
  }
}
.text-color-green {
  /* color: #00ccb6; */
  color: #2b8065 !important;
  font-weight: 600 !important;
  font-size: 38px !important;
}
.heading-style-h4 {
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: 1.5;
}
.container-2 {
  display: flex;
  justify-content: center;
  align-items: center;
}
.fs-16 {
  font-size: 13px !important;
}
.border-title::after {
  position: absolute;
  content: "";
  display: block;
  width: 80px;
  height: 10px;
  left: 50%;
  transform: translateX(-25px);
  border-radius: 18px;
  margin-top: 10px;
  background: #00ccb6;
}

.sample-text-area {
  margin-top: 55px;
  margin-bottom: 20px;
  border-radius: 13px;
  /* box-shadow: 2px 2px 8px rgb(225, 225, 225); */
  padding: 25px !important;
}

.sajamar_beneficios-item {
  /* background: #ffffff;
  box-shadow: 1px 1px 20px #001a3f;
  border-radius: 25px; */
  background: #ffffff;
  box-shadow: 1px 1px 15px rgba(0, 97, 200, 0.242);
  border-radius: 25px;
}
.h-100 {
  height: 100% !important;
}
.w-100 {
  width: 100% !important;
}
.border-image {
  border-radius: 12px;
  box-shadow: -1px 1px 6px rgb(195, 195, 195);
}
.sajamar_beneficios-item {
  width: 18.75rem;
  text-align: center;
  padding: 2.7rem;
  border-radius: 1.5625rem;
  position: relative;
  /* margin: 18px; */
}
.beneficios {
  margin-bottom: 4rem;
}

.lazy {
  /* color: #00ccb6; */
  color: #ffffff;

  font-size: 38px;
  margin-bottom: 20px;
}

.button.is-custom {
  grid-column-gap: 1rem;
  padding: 0 2rem 0 0;
}

.b_background-color-green {
  background-color: #00ccb6 !important;
}
.button {
  grid-column-gap: 1rem;
  background-color: var(--royal-blue);
  color: #fff;
  text-align: center;
  border-radius: 5rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.w-inline-block {
  max-width: 100%;
  display: inline-block;
}

.margin {
  margin-top: 45px !important;
}
.title {
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.department_content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.info h3,
.info p {
  color: white !important;
}
.b-shadow:hover {
  filter: drop-shadow(1px 1px 10px #5beddf);
}
.Emergency_contact .single_emergency {
  padding: 90px 30px;
}
.footer .footer_top .footer_widget ul li a {
  font-size: 16px;
  color: #00ccb6;
  line-height: 42px;
  background: #fff;
}
.footer .footer_top .footer_widget ul li a:hover {
  background: #2135cd;
}
.info_button {
  background: #fff !important;
  padding: 12px 18px;
  border-radius: 30px;
  text-align: center;
}
.info_button:hover,
.info_button a:hover {
  background: #00ccb6 !important;
  color: #ffffff !important;
}
.quick-button-area {
  color: #00ccb6 !important;
  font-size: 1rem;
  background: #002855;
  padding: 20px 10px;
  padding-bottom: 25px;
}

.footer_top {
  padding-bottom: 0px !important;
}
.bg-image {
  width: 100%;
  height: 450px; /* Altura de la imagen de fondo */
  overflow: hidden;
  position: relative;
  background-image: url("../img/banner/bg-nosotros.jpg");
  background-size: cover;
  background-attachment: fixed; /* Fija la imagen de fondo */
}
.bg-image-2 {
  width: 100%;
  height: 350px; /* Altura de la imagen de fondo */
  overflow: hidden;
  position: relative;
  background-image: url("../img/banner/bg-docentes.png");
  background-size: cover;
  background-attachment: fixed; /* Fija la imagen de fondo */
}
.fs-18 {
  font-size: 18px !important;
}
.bg-image-inner {
  position: relative;
  z-index: 1;
}
.content {
  padding: 20px;
  color: #fff;
  text-align: center;
}

.expert_thumb img {
  height: 320px;
  border-radius: 1.5625rem 1.5625rem 0 0;
}
.experts_name {
  padding: 1.5rem;
}
.color-title-cargo {
  color: #00ccb6;
  font-weight: bold;
}
.color-title-personal {
  font-weight: bold;
}
#elegirnos {
  padding-top: 30px;
}
.mvv {
  background: #00ccb6;
  padding: 30px 0px;
}
ul {
  list-style-type: none;
  padding-left: 20px;
}
.vineta {
  margin-bottom: 10px;
  padding-left: 20px;
  text-align: justify;
  padding-right: 30px;
  font-size: 18px;
  display: flex;
}
/* .vineta::before {
  content: "";
  position: absolute;
  left: 0;
  top: 15%;
  transform: translateY(-15%);
  width: 10px;
  height: 10px;
  background-color: #00ccb6;
  border-radius: 3px;
} */
.guion {
  padding: 6px;
  margin-top: 7px;
  margin-right: 10px;
  width: 6px;
  height: 6px;
  background-color: #00ccb6;
  border-radius: 3px;
}
/* ======================== TRANSPARENCIA ========================*/
.dropdown-container {
  background-color: #fff;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  /* Sombra exterior para cada bloque */
  border-radius: 8px;
  /* Esquinas redondeadas para el bloque */
  overflow: hidden;
  margin: 20px auto;
  /* Espacio entre bloques y centrado horizontal */
  max-width: 900px;
  /* Ancho máximo para el contenedor */
}

.dropdown-button {
  padding: 15px 20px;
  background-color: #fff;
  color: #002855;
  border: none;
  cursor: pointer;
  width: 100%;
  font-weight: bold;
  text-align: left;
  position: relative;
  border-bottom: 1px solid #ccc;
  /* Borde inferior para el botón */
}

.dropdown-button:hover {
  color: #00ccb6;
}

.dropdown-button:after {
  content: "";
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="%234CAF50" d="M7 10l5 5 5-5z"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  /* Centra la flecha verticalmente */
  width: 24px;
  height: 24px;
  border-radius: 50%;
  /* Borde redondeado para la flecha */
}

.dropdown-content {
  display: none;
  background-color: #fff;
  border-top: 1px solid #ccc;
  /* Borde superior para el contenido desplegable */
}

.dropdown-content a {
  padding: 15px 20px;
  display: block;
  text-decoration: none;
  color: #333;
  border-top: 1px solid #eee;

  /* Línea entre enlaces */
}

.dropdown-content a:hover {
  background-color: #bcece5;
  color: #002855;
}

/* Añadir un margen entre los bloques */
.dropdown-container + .dropdown-container {
  margin-top: 10px;
}

/*  */
.negrita {
  font-weight: bold !important;
  font-size: 26px !important;
}
.bold {
  font-weight: bold;
}
.bg-1 {
  background-color: #349eea;
  color: white !important;
  text-transform: uppercase;
  font-weight: 500;
}
.bg-2 {
  background-color: #ffce3b;
  color: white !important;
  text-transform: uppercase;
  font-weight: 500;
}
.bg-3 {
  background-color: #22b346;
  color: white !important;
  text-transform: uppercase;
  font-weight: 500;
}
.bg-4 {
  background-color: #17658f;
  color: white !important;
  text-transform: uppercase;
  font-weight: 500;
}
.bg-5 {
  background-color: #e35050;
  color: white !important;
  text-transform: uppercase;
  font-weight: 500;
}
.bg-6 {
  background-color: #9c1495;
  color: white !important;
  text-transform: uppercase;
  font-weight: 500;
}
.text-shadow {
  text-transform: uppercase;
  color: #087b37 !important;
  text-shadow: 2px 2px 5px #4bc672;
}
.text-size {
  font-size: 18px;
}

.border {
  box-shadow: 2px 2px 20px #dedede;
}

.marco-izquierdo::before {
  display: block;
  content: "";
  position: absolute;
  top: 0%;
  left: -15px;
  height: 100%;
  width: 10px;
  background: #ff0b41;
  border-radius: 0px 8px 8px 0px;
}
.icono {
  font-size: 8rem;
  display: block;
  height: 100%;
}
.contenedor {
  max-width: 100%; /* Establece el ancho máximo del contenedor */
}

.contenido {
  width: 100%; /* Asegura que el contenido ocupe todo el ancho disponible */
}

.content img {
  max-width: 100%; /* Establece el ancho máximo de la imagen al 100% del contenedor */
  height: auto; /* Mantiene la proporción de aspecto de la imagen */
}

.mision {
  color: #131d4b;
  text-shadow: 1px 1px 20px #085ba8;
}
.vision {
  color: #f2ff00;
  text-shadow: 1px 1px 20px #a8a508;
}
.valores {
  color: #f44644;
  text-shadow: 1px 1px 20px #c7120c;
}

.color-title-personal {
  font-size: 1.25rem;
}
.welcome_docmed_area {
  padding-bottom: 30px;
}

.centrar {
  text-align: center; /* Centra el contenido */
  margin: 20px 15px;
}

.centrar img {
  max-width: 100%; /* La imagen ocupará como máximo el ancho del contenedor */
  height: auto; /* Esto asegura que la imagen mantenga su proporción */
}
.eq_adm {
  margin-bottom: 55px !important;
}

/* Estilos para el popup */
#popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7); /* Color de fondo semitransparente */
  z-index: 9999;
}

#popup img {
  display: block;
  margin: auto;
  max-width: 95%;
  max-height: 95%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.btn-descargar {
  padding: 8px;
  border-radius: 5px;
  background: white;
  /* display: none; */
}

.l-reclamacion:hover {
  cursor: pointer;
}

.btn-descargar:hover {
  background: #23a971;
  color: white;
}
.t-white {
  color: white;
  margin-bottom: 6px;
}
.b-shadow-w:hover {
  background: #16925e !important;
}

.card-shadow {
  box-shadow: 2px 2px 8px rgb(185, 185, 185);
  padding: 25px;
  border-radius: 13px;
}

.card-cont {
  background: linear-gradient(to bottom right, #d6e6f2, #91b6d9);
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 70px;
  width: 100%;
}
.card_horario_estudio {
  background-color: #f7e9f3;
  padding: 20px;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.card_horario {
  background-color: #e9f1f7;
  padding: 20px;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.card_horario img,
.card_horario_estudio img {
  margin-top: -55px;
  width: 100px; /* Adjust the size of the image as needed */
  margin-bottom: 10px;
}
.card_horario h1,
.card_horario_estudio h1 {
  font-size: 1.5rem;
  margin: 10px 0;
  color: #0a417a;
}
.card_horario p,
.card_horario_estudio p {
  margin: 0;
  font-size: 1rem;
  color: #0a417a;
}
.sajamar_beneficios-icon {
  font-size: 36px !important;
}

.material-icons-size {
  font-size: 126px !important;
}

.bg-doc {
  background-color: #10f1bc;
  font-weight: bold;
}
.p_absolute {
  position: relative;
}

.enlace {
  position: absolute;
  bottom: 0; /* Inicia en 0 para el deslizamiento */
  left: 50%;
  transform: translateX(-50%); /* Centra horizontalmente */

  /*  
  padding: 15px 45px;
  border-radius: 12px;
   */

  background: linear-gradient(45deg, #12e8c5, #4ac1ad);
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.5);
  color: rgb(12, 28, 83);
  font-weight: bold;
  animation: subir 1.5s ease-out forwards; /* Animación de deslizamiento */
}

/* Efecto de animación */
@keyframes subir {
  from {
    bottom: 0;
    opacity: 0; /* Inicia invisible */
  }
  to {
    bottom: 30px; /* Llega a la posición final */
    opacity: 1; /* Aparece gradualmente */
  }
}

.cont-admision-sede {
  background-color: #08073e;
  color: white;
  font-weight: bold;
}
.cont-data {
  padding: 20px;
}

.btn-requisito {
  border: 1px solid white;
  margin-top: 5px;
  padding: 5px 18px;
  text-align: center;
  color: white;
}
.btn-requisito:hover {
  background: rgb(246, 246, 1);
  border-radius: 6px;
  box-shadow: 2px 2px 8px rgb(70, 70, 70);
}
@media (min-width: 576px) {
  .direccion{
    display: none;
  }
  
}

@media (min-width: 768px) {
  .cont-img-lic {
    position: relative;
  }

  .img-licenciamiento {
    width: 320px;
    height: auto;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 10;
  }
  .tamaño-letra {
    font-size: 24px;
  }
  .single_slider img {
    width: 100%;
    height: 550px; /* o cualquier altura deseada */
    object-fit: fill; /* Escala la imagen para que llene el contenedor, manteniendo su relación de aspecto y recortando si es necesario */
  }
  
  
}

@media only screen and (min-width: 1920px) {
  .single_slider img {
    width: 100%;
    height: 85vh; /* o cualquier altura deseada */
    object-fit: fill; /* Escala la imagen para que llene el contenedor, manteniendo su relación de aspecto y recortando si es necesario */
  }
  
}
@media only screen and (max-width: 768px) {
  
  .imagen2 {
    width: 80%; /* En pantallas más pequeñas, ajustamos el tamaño al 80% */
  }

  .historia {
    flex-direction: column !important;
  }
  .single_slider img {
    width: 100%;
    height: auto; /* o cualquier altura deseada */
    object-fit: fill; /* Escala la imagen para que llene el contenedor, manteniendo su relación de aspecto y recortando si es necesario */
  }
  .sede-principal{
    justify-content: center!important;
  }
}

@media only screen and (max-width: 576px) {
  .sede-principal{
    display: none!important;
  }
  .cont-icon-sede{
    padding: 20px 20px 20px 0px;
  }
  
  .imagen2 {
    width: 90%; /* En pantallas aún más pequeñas, ajustamos al 90% */
  }
  .bg-image {
    width: 100%;
    height: 450px; /* Altura de la imagen de fondo */
    overflow: hidden;
    position: relative;
    background-image: url("../img/banner/bg-nosotros-2.jpg");
    background-size: cover;
    background-attachment: fixed; /* Fija la imagen de fondo */
  }
  .nosotros-item {
    display: flex;
    flex-direction: column-reverse !important;
    justify-content: center;
    align-items: center;
  }
  .cont-img-lic {
    position: relative;
  }

  .img-licenciamiento {
    width: 160px;
    height: auto;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 10;
  }
}

@media only screen and (max-width: 480px) {
  .imagen2 {
    width: 100%; /* En pantallas muy pequeñas, ajustamos al 100% */
  }

  .single_slider img {
    width: 100%;
    height: 250px !important;
    object-fit: fill;
  }
  .bg-image {
    width: 100%;
    height: 450px; /* Altura de la imagen de fondo */
    overflow: hidden;
    position: relative;
    background-image: url("../img/banner/bg-nosotros-2.jpg") !important;
    background-size: cover;
    background-attachment: fixed; /* Fija la imagen de fondo */
  }
  .unidad-didactica .vineta {
    text-align: left !important;
  }
}


.grid-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 12px;
  justify-content: center;
  align-items: center;
  max-width: 100%;
}

.grid-gallery img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: -1px 1px 6px rgb(195, 195, 195);
  object-fit: cover;
}

/* Opcional: Ajuste específico para la imagen central */
.grid-gallery img:nth-child(1) {
  /* Si la imagen central siempre es la primera */
  grid-column: span 2; /* Hace que ocupe dos columnas */
}


@media (max-width: 576px) {
  .grid-gallery {
    display: grid;
    grid-template-columns: none!important;
    gap: 12px;
    justify-content: center;
    align-items: center;
    max-width: 100%;
  }
}
@media (min-width: 576px) {
  .direccion {
    display: none;
  }
  /* Opcional: Ajuste específico para la imagen central */
  .grid-gallery img:nth-child(1) {
    /* Si la imagen central siempre es la primera */
    grid-column: span 1; /* Hace que ocupe dos columnas */
  }
  
}

/* GRID FOTOS */
.parent {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 8px;
  grid-row-gap: 8px;
}
