@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

main {
  width: 92vw;
  margin: 0 auto;
}

p,
a,
label,
ul,
input,
select,
button {
  font-family: Montserrat;
  color: #000000;
  text-decoration: none;
}

main .flash .oferta a .oferta-foto, main .texto-final-testimonios .boton-testimonios, footer a img, header .elementos-header .logo-titulo a .logo-hotel, header .elementos-header .menu .navegacion-principal a, .button { /*Animacion que agranda elementos*/
  transition: transform 0.3s ease;
}
main .flash .oferta a .oferta-foto:hover, main .texto-final-testimonios .boton-testimonios:hover, footer a img:hover, header .elementos-header .logo-titulo a .logo-hotel:hover, header .elementos-header .menu .navegacion-principal a:hover, .button:hover {
  transform: scale(1.13);
}

.button {
  background-color: rgb(244, 245, 247);
  border: 1px solid #141d25;
  font-size: 1rem;
  border-radius: 10px;
  padding: 0.5rem;
  text-align: center;
}
.button a {
  color: #000000;
}

.main-reserva .reserva .primer-formulario .formulario--reserva, main .testimonios-tarjetas .seccion-tarjetas, .servicios--tarjetas .contenedor-tarjetas, header {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  align-items: center;
}

.main-trabajo .seccion-trabajo .formulario-trabajo, main .texto-final-testimonios .input-opinion, .servicios--tarjetas, .servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.back, .servicios--tarjetas .descripcion-servicios p, footer {
  display: flex;
  flex-flow: column wrap;
  justify-content: space-evenly;
  align-items: center;
}

.main-trabajo .seccion-trabajo .preguntas-dudas .txt-area-trabajo, main .texto-final-testimonios .input-opinion .txt-area-testimonio {
  width: 30;
  height: 25vh;
  padding: 12px 20px;
  box-sizing: border-box;
  border: 2px solid #ccc;
  border-radius: 4px;
  background-color: #f8f8f8;
  resize: none;
}

header {
  background-color: #dae5ef;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 2;
  justify-content: space-between;
  /*Logo a la derecha, nav a la izquierda*/
}
header .elementos-header {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  width: 100vw;
  justify-content: space-between;
}
header .elementos-header .logo-titulo {
  display: flex;
  align-items: center;
}
header .elementos-header .logo-titulo a .logo-hotel {
  width: 4rem;
  height: auto;
  margin: 0 1rem;
}
header .elementos-header .logo-titulo h1 {
  margin-bottom: 0;
  color: #0d5494;
  font-family: Georgia, "Times New Roman", Times, serif;
}
header .elementos-header .menu {
  width: 100%;
}
header .elementos-header .menu .container-fluid {
  flex-direction: row-reverse;
  display: flex;
  justify-content: space-between;
}
header .elementos-header .menu .navegacion-principal {
  display: flex;
  width: 100%;
  justify-content: end;
  gap: 1rem;
  list-style: none;
  padding: 0;
  margin: 1rem 1rem;
}
header .elementos-header .menu .navegacion-principal a {
  text-decoration: none;
  color: #0d5494;
  font-family: Montserrat;
}
@media (max-width: 430px) {
  header {
    height: auto;
    flex-direction: column;
    gap: 0;
  }
  header h1 {
    display: none;
  }
  header .menu {
    flex-direction: row-reverse;
  }
}

footer {
  background-color: #dae5ef;
  padding: 15px;
  gap: 10px;
  margin: 10px 0 0 0;
}
footer a {
  text-decoration: none;
}
footer a img {
  width: 2.2rem;
  height: auto;
  border-radius: 50%;
  margin: 0 10px;
}
footer p {
  font-style: italic;
  text-align: center;
}

.servicios--tarjetas {
  justify-content: center;
  min-height: 100vh;
}
.servicios--tarjetas .titulo-servicio {
  display: flex;
  text-align: center;
  font-family: Georgia, "Times New Roman", Times, serif;
  color: #141d25;
  margin-top: 1rem;
}
.servicios--tarjetas .contenedor-tarjetas {
  justify-content: center;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta {
  position: relative;
  width: 33vw;
  height: 43vh;
  margin: 1rem;
  perspective: 600px;
  /*perspectiva en el contenedor*/
  transform-style: preserve-3d;
  /*Giro de las tarjetas*/
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo {
  position: absolute;
  top: 0;
  /*solapa*/
  left: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  border-radius: 1rem;
  overflow: hidden;
  transition: 0.5s;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.front {
  transform: rotateY(0deg);
  box-shadow: 0 5px 10px rgb(14, 27, 99);
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.front img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.front h3 {
  font-family: Georgia, "Times New Roman", Times, serif;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3rem;
  line-height: 3rem;
  color: #f5f5f5;
  background-color: rgba(0, 0, 0, 0.4);
  text-align: center;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.back {
  transform: rotateY(180deg);
  background: #141d25;
  padding: 15px;
  color: white;
  justify-content: space-between;
  text-align: center;
  box-shadow: 0 5px 10px rgb(14, 27, 99);
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.back .link {
  border-top: 1px solid rgb(255, 255, 255);
  height: 50px;
  line-height: 50px;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.back .link a {
  color: rgb(255, 255, 255);
  text-decoration: underline;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.back p {
  color: rgb(255, 255, 255);
  letter-spacing: 1px;
  padding: 1rem;
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta:hover .cuerpo.front {
  transform: rotateY(180deg);
}
.servicios--tarjetas .contenedor-tarjetas .tarjeta:hover .cuerpo.back {
  transform: rotateY(0deg);
}
@media (max-width: 430px) {
  .servicios--tarjetas .contenedor-tarjetas {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    width: 85vw;
  }
  .servicios--tarjetas .contenedor-tarjetas .tarjeta {
    position: relative;
    width: 100%;
    height: 55vh;
    margin: 0.5rem auto 1rem;
  }
  .servicios--tarjetas .contenedor-tarjetas .tarjeta .cuerpo.back .link {
    display: none;
  }
}
.servicios--tarjetas .descripcion-servicios {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.5rem;
}
.servicios--tarjetas .descripcion-servicios p {
  justify-content: center;
  width: 90vw;
  margin: 1rem 1rem;
  font-size: 1.2rem;
  text-align: center;
  padding: 0 0.5rem 0 0.5rem;
}
.servicios--tarjetas .descripcion-servicios .servicios-boton {
  align-self: center;
}
.servicios--tarjetas .descripcion-servicios .servicios-boton:hover {
  background-color: #ccedeb;
}
@media (max-width: 430px) {
  .servicios--tarjetas {
    align-content: center;
  }
}

main .testimonios-tarjetas {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 1rem 1rem;
}
main .testimonios-tarjetas .txt-testimonio {
  text-align: center;
  font-family: Georgia, "Times New Roman", Times, serif;
  color: #141d25;
}
main .testimonios-tarjetas .seccion-tarjetas {
  justify-content: center;
  gap: 1rem;
  margin-top: 0.5rem;
}
main .testimonios-tarjetas .seccion-tarjetas .testimonios {
  background-color: #ccedeb;
  width: 85vw;
  height: auto;
  border-radius: 0.5rem;
  text-align: center;
  padding: 1rem;
  box-shadow: 0 5px 10px rgba(14, 27, 99, 0.274);
}
main .texto-final-testimonios {
  text-align: center;
  margin: 1rem 1rem;
  font-size: 1.1rem;
}
main .texto-final-testimonios .boton-testimonios:hover {
  background: #a1c2c0;
}
main .texto-final-testimonios .input-opinion {
  margin: 1rem;
  gap: 0.5rem;
}
.main-reserva {
  display: flex;
  width: 96vw;
  justify-content: center;
}
.main-reserva .reserva {
  display: flex;
  flex-flow: column wrap;
  gap: 1rem;
  width: auto;
}
.main-reserva .reserva .header-reserva {
  text-align: center;
  font-family: Georgia, "Times New Roman", Times, serif;
  color: #141d25;
  line-height: 0.75rem;
  margin-top: 0.75rem;
}
.main-reserva .reserva .primer-formulario {
  background-color: #dff7f5;
  padding: 0.75rem;
}
.main-reserva .reserva .primer-formulario .formulario--reserva {
  justify-content: space-around;
  gap: 1rem;
}
.main-reserva .reserva .primer-formulario .formulario--reserva elemento-primer-form {
  display: flex;
  flex-direction: column;
  margin: 0.5rem;
}
.main-reserva .reserva select,
.main-reserva .reserva input,
.main-reserva .reserva label {
  padding: 1px;
  font-size: 1.1rem;
}
.main-reserva .reserva .datos-pago {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}
.main-reserva .reserva .datos-pago .reserva--datos .parrafo-reserva--seccion {
  font-size: 1.2rem;
  color: rgba(0, 0, 0, 0.404);
  border-bottom: 1px solid rgba(0, 0, 0, 0.144);
  padding: 0.5rem;
}
.main-reserva .reserva .datos-pago .reserva--datos .datos--items {
  display: flex;
  flex-direction: column;
  margin: 0.5rem;
}
.main-reserva .reserva .datos-pago .reserva--datos .terminos-condiciones {
  margin: 0.5rem;
}
.main-reserva .reserva .datos-pago .datos-personales {
  background-color: #c1e9e6;
}
.main-reserva .reserva .datos-pago .pago {
  background-color: #94c4c0;
}
.main-reserva .reserva .datos-pago .datos--boton {
  display: flex;
  justify-content: center;
  margin: 1rem;
  flex-wrap: nowrap;
}
.main-reserva .reserva .datos-pago .datos--boton .confirmacion:hover {
  background-color: #3d54b9;
  color: rgb(255, 255, 255);
}
@media (max-width: 430px) {
  .main-reserva .reserva {
    margin: 1rem 1rem;
    flex-direction: row;
    align-items: center;
  }
  .main-reserva .reserva .formulario--reserva {
    flex-direction: column;
    align-items: flex-start;
    gap: 0rem;
  }
  .main-reserva .reserva .formulario--reserva .elemento-primer-form {
    display: flex;
    flex-direction: column;
    margin: 0.5rem;
    width: 100%;
  }
  .main-reserva .reserva .datos-pago {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, 1fr);
  }
}

.main-trabajo {
  width: 98.9vw;
}
.main-trabajo .seccion-trabajo {
  display: grid;
  justify-items: center;
}
.main-trabajo .seccion-trabajo .trabajo-cv {
  min-height: 65vh;
  width: 100%;
  background-image: linear-gradient(rgba(4, 9, 30, 0.37), rgba(4, 9, 30, 0.37)), url(../imagenes/trabajaconnosotros.webp);
  background-position: center;
  /*la img cubre el ancho*/
  background-size: cover;
  /*centra la img*/
  position: relative;
}
.main-trabajo .seccion-trabajo .trabajo-cv .imagen-texto-trabajo {
  display: flex;
  flex-direction: column;
  text-align: center;
  font-family: Georgia, "Times New Roman", Times, serif;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.main-trabajo .seccion-trabajo .trabajo-cv .imagen-texto-trabajo .txt-foto-principal {
  color: #ccedeb;
}
.main-trabajo .seccion-trabajo .recomendaciones-beneficios {
  display: flex;
}
.main-trabajo .seccion-trabajo .recomendaciones-beneficios .recomendaciones-trabajo {
  background-color: rgb(228, 228, 228);
  margin: 1rem 1rem;
  padding: 1rem;
  border-radius: 1rem;
  font-size: 1.2rem;
  width: 90%;
}
.main-trabajo .seccion-trabajo .recomendaciones-beneficios .recomendaciones-trabajo .ul-con-raya {
  list-style-type: none;
  /*Saca punto feo*/
}
.main-trabajo .seccion-trabajo .recomendaciones-beneficios .recomendaciones-trabajo .ul-con-raya li::before {
  content: "- ";
  /*Pone guion en vez del punto feo*/
}
.main-trabajo .seccion-trabajo .formulario-trabajo {
  background-color: #ccedeb;
  border-radius: 1rem;
  margin: 1rem 1rem;
  padding: 0.5rem;
}
.main-trabajo .seccion-trabajo .formulario-trabajo .subir-cv {
  width: 100%;
}
.main-trabajo .seccion-trabajo .formulario-trabajo .subir-cv .subir-cv--item {
  display: flex;
  flex-direction: column;
  margin: 0.5rem;
  padding: 1px;
  font-size: 1.1rem;
}
.main-trabajo .seccion-trabajo .formulario-trabajo .subir-cv .curriculum-file {
  background-color: #8fc1fa;
  margin: 0;
  width: 100%;
  padding: 0.5rem;
}
.main-trabajo .seccion-trabajo .formulario-trabajo .subir-cv .cv {
  padding-top: 1rem;
}
.main-trabajo .seccion-trabajo .formulario-trabajo .subir-cv--boton {
  display: flex;
  justify-content: center;
  padding-top: 1rem;
}
.main-trabajo .seccion-trabajo .preguntas-dudas {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem;
}
.main-trabajo .seccion-trabajo .preguntas-dudas .preguntas-boton {
  width: 30%;
  align-self: center;
}
@media (max-width: 430px) {
  .main-trabajo .recomendaciones-beneficios {
    flex-wrap: wrap;
  }
  .main-trabajo .curriculum-file,
  .main-trabajo .preguntas-boton {
    width: 80%;
  }
}

/*MAIN*/
/*FLASH - ofertas*/
main .flash {
  background-color: #ccedeb;
  border-radius: 1rem;
  margin: 1rem 1rem;
}
main .flash .oferta {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding: 1rem;
  gap: 1rem;
  justify-items: center;
  align-items: center;
}
main .flash .oferta a .oferta-foto {
  display: flex;
  width: 100%;
  border-radius: 0.2rem;
}
main .flash .texto-flash {
  text-align: center;
  font-size: 1.3rem;
  padding: 0.75rem;
}
main .carrouselNosotros {
  margin: 1rem 1rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  background-color: rgba(125, 168, 209, 0.6784313725);
  gap: 1rem;
  border-radius: 1rem;
  align-items: center;
  height: 65vh;
  position: relative;
  overflow: hidden;
}
main .carrouselNosotros .carousel-item .photo-carousel img .foto--carrousel,
main .carrouselNosotros .carousel .photo-carousel img .foto--carrousel {
  border-radius: 1rem 0 0 1rem;
  height: max-content;
}
main .carrouselNosotros .carousel-item .carousel-inner,
main .carrouselNosotros .carousel-item .carousel-item,
main .carrouselNosotros .carousel-item .carousel-item img,
main .carrouselNosotros .carousel .carousel-inner,
main .carrouselNosotros .carousel .carousel-item,
main .carrouselNosotros .carousel .carousel-item img {
  height: 100%;
}
main .carrouselNosotros .texto-c .txt-carrousel {
  font-size: 1.2rem;
  font-family: Montserrat;
  color: #141d25;
  text-align: center;
  margin-right: 1rem;
  padding: 1rem;
}
main .hoteles-trabajo .nav2 {
  display: flex;
  justify-content: space-evenly;
  width: 90vw;
  align-items: center;
}
main .hoteles-trabajo .nav2 .dropdown-nav2 {
  border-radius: 0.5rem;
  border: 1px solid #0d5494;
}
main .hoteles-trabajo .nav2 .dropdown-nav2:hover {
  background-color: rgba(204, 237, 235, 0.6156862745);
}
main .hoteles-trabajo .nav2 .dropdown-nav2 a {
  color: #141d25;
  text-align: center;
  font-family: Montserrat;
  font-size: 1.1rem;
}
main .hoteles-trabajo .nav2 .dropdown-nav2 .dropdown-menu li .continentes {
  font-family: Montserrat;
  text-align: center;
  text-decoration: underline;
}
main .hoteles-trabajo .nav2 .dropdown-nav2 .dropdown-menu li .boton-dropdown {
  border-radius: 1rem;
}
main .hoteles-trabajo .nav2 .dropdown-nav2 .dropdown-menu li .boton-dropdown:hover {
  background-color: #ccedeb;
  border: 1px solid #3586cc;
}
main .preguntas-frecuentes {
  margin: 1rem 1rem;
  background-color: #f5f5f5;
  border-radius: 1rem;
}
main .preguntas-frecuentes .pfq-body {
  padding: 0.5rem;
  text-align: center;
  border-bottom: 1px solid #0d5494;
}
main .preguntas-frecuentes .pfq-body h2 {
  text-decoration: underline 1px;
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 1.8rem;
}
main .preguntas-frecuentes .pfq-preguntas {
  padding: 1rem;
}
@media (max-width: 430px) {
  main .flash .oferta {
    grid-template-columns: repeat(1, 1fr);
  }
  main .carrouselNosotros {
    grid-template-columns: repeat(1, 1fr);
    height: auto;
  }
  main .hoteles-trabajo {
    display: flex;
    justify-content: space-around;
  }
  main .hoteles-trabajo .nav2 {
    width: 90%;
    gap: 1rem;
  }
}

/*# sourceMappingURL=styles.css.map */
