/* ------------------------- Lenis -------------------------------------------------- */

html.lenis {height: auto;}
.lenis.lenis-smooth {scroll-behavior: auto; height: 100vh;}
.lenis.lenis-smooth [data-lenis-prevent] {overscroll-behavior: contain;}
.lenis.lenis-stopped {overflow: hidden;}
.lenis.lenis-scrolling iframe {pointer-events: none;}


div#page{
  height: auto;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

 /* ------------------------- HEADER -------------------------------------------------- */

 .header_reservas_btn{
  display: none;
 }
 @media screen and (max-width: 1024px) {
  .home .header_reservas_btn{
    position: absolute;
        display: flex;
        padding: 12px 24px;
        background: var(--color-primary);
        color: #fff;
        font-size: 18px;
        font-weight: 500;
        text-decoration: none;
        width: 100%;
        bottom: -48px;
        left: 0;
        justify-content: center;
  }
  header#masthead{
    padding: 15px 15px !important;
  }
  
 }

 header#masthead {
  width: 100%;
  /* background: #fff; */
  position: relative;
  padding: 0 30px;

  z-index: 10;
  display: flex;
  align-items: center;
  background: rgb(255 255 255 / 6%);
  backdrop-filter: blur(1px);
  position: fixed;
  height: 140px;
      z-index: 999;
}
.home header#masthead {
  background: transparent;
  height: auto;
}
header#masthead {
  background: #fcf9f6;
  height: auto;
}

.fixed header#masthead {
  transition: all 0.6s cubic-bezier(0.4, 0, 0, 1);
  background: #fff;
  height: auto;
  z-index: 999;
  box-shadow: 1px 6px 12px rgb(17 17 17 / 12%);
}

.flickity-prev-next-button.next {
  right: 25px;
}
.logo {
  display: flex;
  align-items: center;
}

.logo a img {
  max-width: 140px;
  width: 100%;
  transition: all 0.3s cubic-bezier(0.4, 0, 0, 1);
  padding: 10px;
}
.logo a {
  padding-right: 36px;
  padding: 0 36px 0 0;
}
p.logo_text {
  font-size: 28px;
  padding-left: 0;

  height: 100%;
  display: flex;
  align-items: center;
  line-height: 1;
  color: #111;
}
.home p.logo_text{
  display: none;
}
p.logo_text strong {
  margin-left: 8px;
}
 .fixed .logo img {
  max-width: 100px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0, 1);
  padding: 0;
}
.fixed .logo a {
  padding-right: 36px;
  padding: 12px 36px 12px 0;
}

.btn_header_reservar{
  background: var(--color-primary);

}
.btn_header_reservar a {
  color: #fff;
}
.site-header_wrapper {
  position: relative;
  width: 100%;
  z-index: 5;
  display: grid;
  display: flex;
  gap: 30px;
  -moz-column-gap: 40px;
  column-gap: 40px;
  align-items: center;

}
.c-nav_list ul {
  display: flex;
}

.c-ul_list ul li a {
  color: #111;
  font-size: 24px;
  line-height: 1;
}.c-ul_list ul li a:hover {
  color: #666;
}
.home .c-ul_list ul li a{
  color: #fff;
}
.btn_header_reservar {
  display: flex;
      align-items: center;
      padding: 0 40px 0 0;
      color: #fff;
      font-size: 18px;
      line-height: 1;
      transition: all 0.3s cubic-bezier(0.4, 0, 0, 1);
      padding: 14px 20px 10px;
      border-radius: 30px;
      text-transform: uppercase;
}
.btn_header_reservar a {
  font-weight: 500;
}
.btn_header_reservar:hover {
  /* background: #b9aea0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0, 1); */
}


.fixed header#masthead p.logo_text{
  color: #25272a;
  font-size: 24px;
}
.fixed header#masthead .c-ul_list>ul>li>a{
  color: #25272a
}

/* ------------------------- HOME -------------------------------------------------- */

main#home {
 
}




.intro_hoteles {
  display: flex;
  flex-flow: wrap;
  height: 100%;
}

.intro_hoteles .comun {
  width: 100%;
  max-width: 50%;
  position: relative;
  height: 100%;
}

.comun.slider_detalle {
  max-width: 66%;
}
.comun.intro_detalle {
  max-width: 33%;
}

.home section#intro {
  padding: 0;
  height: 100vh;
  margin-bottom: 0;
  overflow: hidden;
  padding-top: 0;
}
.figure_inner {
  height: 100%;
  padding: 0;
  border-bottom: 1px solid #25272a;
  transition: transform .6s cubic-bezier(.25,.46,.45,.94),
  -webkit-transform .6s cubic-bezier(.25,.46,.45,.94)
}


.intro_hoteles .comun figure {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.intro_hoteles .comun p {
  padding: 18px 0;
  text-align: center;
  font-size: 32px;
}
.intro_hoteles .comun.origen figure {

}
.intro_hoteles .comun.realejo figure {

}
.intro_hoteles .comun figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s cubic-bezier(.25,.46,.45,.94),
  -webkit-transform .6s cubic-bezier(.25,.46,.45,.94)
}

.home .intro_hoteles .comun .figure_inner:hover img{
  transform: scale(1.05);
  transition: transform .6s cubic-bezier(.25,.46,.45,.94),
  -webkit-transform .6s cubic-bezier(.25,.46,.45,.94)
}


.intro_inner {
    height: 100%;
}


.intro_hoteles .comun:first-child {
  border-right: 1px solid #25272a;
}

section#detalle {
  background: var(--color-secondary);
}

.detalles_list {
  display: flex
  ;
      flex-flow: column;
      max-width: 1200px;
      margin: 0 auto;
      padding-bottom: 45px;
}

.detalles_list .comun {
  max-width: 100%;
  padding: 70px 0px 0;
  transition: 0.3s cubic-bezier(.9, 0, .1, 1);
}

.section-search {
  padding-top: 2rem;
  padding-bottom: 1rem;
  background-color: var(--color-secondary);
  background-color:#fff;
}

.section-search h1 {
  padding: 55px 0 1rem;
  text-align: center;
  font-size: 42px;
  font-weight: 500;
  color: var(--color-primary);
}

.search-wrapper {
  padding: 1rem;
  color: #fff;
  border-radius: 0.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
}
.search-wrapper h1 {
  text-align: center;
  margin-bottom: 2rem;
  font-weight: 100;
  font-size: 3.25rem;
}

.search-wrapper .btn-secondary {
  background-color: #000 !important;
}

section#detalle>h2 {
  text-align: center;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  font-size: 42px;
  font-weight: 500;
  color: #fff;
  background: var(--color-primary);
}
.text_detalle_title{
  font-size: 36px;
  color: #25272a;
  text-align: center;
  padding: 3.5rem 0 2rem;
}
/* .detalles_list .comun .item {
  text-align: center;
  margin-left: -119px;
  background: #24272a;
  padding: 30px 25px;
  border-radius: 2px;
  width: calc(33% + 120px);
}

.detalles_list .comun .item svg {
  max-width: 90px;
  width: 100%;
  margin: 0 auto;
  transition: all .3s cubic-bezier(.25,.46,.45,.94);
}
.detalles_list .item:hover svg {
  fill: #ecdecf;
  transition: all .3s cubic-bezier(.25,.46,.45,.94);
}

.detalles_list .comun .item h4 {
  margin: 21px 0 12px;
  color: #fcf9f6;
  font-weight: 600;
  font-size: 28px;
}

.detalles_list .comun .item p {
  color: #fff;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 300;
}
 */


.detalles_list-content {
  display: flex;
  align-items: center;
}
.reverse .detalles_list-content {
  flex-flow: row-reverse;
}
.reverse .detalles_list-content .item{
  margin-left: 0;
    z-index: 9;
}

.reverse .detalles_list-figure {
  margin-left: -120px;
}
.detalles_list-figure {
  height: 480px;
  width: 66%;
  max-width: 768px;
}

.detalles_list-figure img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}


[themes="alojamiento"] .detalles_list {
  display: flex;
  flex-flow: wrap;
  max-width: 80%;
  margin: 0 auto;
  gap: 30px;
}
[themes="alojamiento"] .detalles_list-content {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
}
[themes="alojamiento"] .detalles_list-figure {
  height: 360px;
  width: 100%;
  max-width: 768px;
}
[themes="alojamiento"] .detalles_list .comun {
  max-width: 100%;
    padding: 90px 0 120px;
    transition: 0.3s cubic-bezier(.9, 0, .1, 1);
    width: calc(50% - 15px);
}
[themes="alojamiento"] .detalles_list .comun .item {
  text-align: center;
  margin-left: 0;
  background: #24272a;
  padding: 12px 25px;
  border-radius: 2px;
  width: calc(33% + 120px);
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  transition: all 0.3s cubic-bezier(0.4, 0, 0, 1);
}

[themes="alojamiento"] .detalles_list .comun .item h4 {
  margin: 8px 0 8px;
  color: #fcf9f6;
  font-weight: 600;
  font-size: 28px;
}
[themes="alojamiento"] section#detalles {
  padding-top: 140px;
}


[themes="alojamiento"] .detalles_list .comun .item:hover{
  background: #b9aea0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0, 1);
}


.page-template-page-reservas .c-ul_list ul li a,
.page-template-page-contacto .c-ul_list ul li a {
  color: #24272a;
}
.page-template-page-reservas p.logo_text,
.page-template-page-contacto p.logo_text {
  color: #24272a;
}
.page-template-page-reservas .btn_header_reservar a,
.page-template-page-contacto .btn_header_reservar a {
  color: #fff;
}

.redes_header ul.redes_sociales li {
  border-radius: 50%;
  background: white;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.redes_header ul.redes_sociales li:hover {
  background: antiquewhite;
}
section#detalle {
  padding-top: 140px;
}

.home section#detalle{
  padding-block: 5rem;
  background-color: var(--color-primary);
}

.reservas_iframe{
  padding: 90px 0;
  background: #fff;
}




.masonery {
  width: 100%;
  padding: 45px 35px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(420px, 1fr));
  /* grid-auto-rows: 50px; */
  grid-auto-flow: dense;
  grid-gap: 15px;
}

.masonery .item{
  display: flex;
  height: 100%;
  width: 100%;
  grid-column: auto / span 1;
}

.large {
  grid-row: span 4;
}

.medium {
  grid-row: span 3;
}

.small {
  grid-row: span 2;
}

.masonery .item img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.masonery .item:nth-child(1){
  grid-row: span 2;
}

.masonery .item:nth-child(2){
  grid-row: span 3;
}

.masonery .item:nth-child(3){
  grid-row: span 2;
}
.masonery .item:nth-child(4){
  grid-row: span 2;
}
.masonery .item:nth-child(7){
  grid-row: span 3;
}
.masonery .item:nth-child(6){
  grid-row: span 4;
}


.contacto_inner {
  display: flex;
  width: 100%;

}

.contacto_left {
  max-width: 33%;
  width: 100%;
  background: #24272a;
}

.contacto_right {
  max-width: 100%;
  width: 100%;
  /* padding: 35px 45px; */
  background: #24272a;
}

.contacto_right .comun:first-child{
  background: #24272a;
  text-align: center;
}
.contacto_right .comun:nth-child(2) .footer_info_inner *{
  color: #fff;
}
.contacto_footer {
  display: flex;
  background: #24272a;
}
.footer_hotel_text p{
  color: #fff;
  font-size: 21px;
  line-height: 1.2;
}
.contacto_footer .comun {
  max-width: 50%;
  width: 100%;
  padding: 45px 45px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
 
}

.contacto_footer .comun:nth-child(1){
  justify-content: flex-end;
}
.contacto_footer .comun:nth-child(1) .footer_hotel_text{
  text-align: right;
}
.contacto_footer .comun:nth-child(1) .footer_hotel_text a{
  margin-left: auto;
}

.maps {
  height: calc(100% - 132px);
  position: relative;
  background: white;
}
.maps a {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
}
.maps a img {
  max-width: 90px;
}
.maps a p {
  font-size: 22px;
}

.footer_hotel.origen {
  justify-content: center;
  display: flex;
  padding-bottom: 45px;
 
}
.footer_hotel.origen .footer_hotel_text{
  padding-left: 0;
}
.footer_hotel.origen .footer_hotel_text h4{
  line-height: 1.1;
  font-size: 32px;
  font-weight: 100;
  color: #fff;
  
}
.footer_hotel_text a {
  display: flex;
  align-items: center;
  background: #fcf9f6;
  /* padding: 8px 16px 8px 12px; */
  /* color: #24272a; */
  border-radius: 30px;
  /* margin-top: 14px; */
  /* line-height: 1; */
  width: 45px;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 12px;
}
.footer_hotel_text a p{
  color: #fff;
  font-size: 16px;
}
.footer_hotel_text a img {
  max-width: 28px;
}
.contacto_right>.comun>p {
  font-size: 25px;
  line-height: 1;
  margin-bottom: 26px;
  color: #f4e9de;
  padding-top: 24px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.footer_hotel_text h4 {
  line-height: 1.1;
  font-size: 32px;
  font-weight: 100;
  color: #fff;
  margin-bottom: 12px;
}

.footer_hotel_text h4 strong {
  font-size: 60px;
  font-weight: 500;
}

.contacto_right .comun:nth-child(2) {
  display: flex;

}

.footer_info_inner {
  max-width: 50%;
  width: 100%;
}

.footer_hotel_text {
  padding-left: 18px;
}

.footer_info_inner p {
  font-size: 26px;
  line-height: 1.2;
}

.contacto_right .comun:nth-child(2) .footer_info_inner {
}

.contacto_right>.comun {
  padding: 35px 45px;
}


.testimonios_inner {
  display: flex;
  flex-flow: wrap;
  background: url(http://www.candilsuites.es/wp-content/uploads/2023/12/DSC4775.jpg) bottom center no-repeat;
    background-size: cover;
  padding: 190px 0;
  justify-content: center;
  gap: 40px;
}

.testimonios_inner .comun {
  width: 100%;
  max-width: 25%;
  padding: 45px;
  background: rgb(252 249 246);
  /* backdrop-filter: blur(3px); */
  border-radius: 3px;
}

.comun_content .top {
  display: flex;
  justify-content: space-between;
}

.comun_content .top img {
  max-width: 70px;
  width: 100%;
}

.comun_content .top p {
  font-size: 80px;
  color: #fff;
}

section#tstimonios {
  background: var(--color-primary);
}
section#tstimonios p{
  color: #24272a;
}

p.texto_testimonio {
  font-size: 21px;
  line-height: 1.1;
}
.comun_content {
  display: flex;
  flex-flow: column;
  height: 100%;
  justify-content: space-between;
}




p.nombre_testimonio {
  text-align: right;
  margin-top: 16px;
  font-size: 18px;
}


footer.site-footer {
  display: flex;
  background: #B9AEA0;
  background: #fff;
  flex-flow: wrap;
  justify-content: center;
    align-items: center;
}


footer.site-footer .comun {
  max-width: 100%;
  width: 100%;
  padding: 26px 46px 60px;
}
.widget_cabecera {
  text-align: center;
}
.widget_cabecera img {
  max-width: 100px;
  width: 100%;
  display: block;
  margin: 0 auto;
}
footer .logo_footer{
  padding: 26px 46px 0 !important;
}


.widget_cabecera p {
  font-size: 26px;
}

.widget_cabecera h5 {
  font-size: 36px;
  color: #25272a;
}

ul.redes_sociales {
  display: flex;
  gap: 15px;
  margin-top: 0;
  justify-content: center;
}

ul.redes_sociales {}

ul.redes_sociales li a {
  font-size: 21px;
  color: #111;
}

ul.legal {
  display: flex;
  gap: 15px;
  margin-top: 0;
  width: 100%;
  justify-content: center;
  padding: 30px 0;
  background: #fcf9f6;
}
ul.legal li a {
  font-size: 21px;
  color: #111;
  margin: 0 12px;
}

section#footre_ayuda {
  padding-top: 2.625rem;
  padding-bottom: 1.625rem;
}

/* FLICKITY*/




/**/

.bottom {
  position: relative;
  z-index: 99;
}

#detalle .comun_content .bottom h4{
  color: #fff;
    text-shadow: 1px 1px 6px #18171d21;
}

.intro_detalle:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000000;
  z-index: 1;
  opacity: .15;
}

#detalle section#intro {
  padding: 0;
  height: calc(100vh - 0px);
  margin-bottom: 0;
  padding-top: 0;
}


#detalle .intro_detalle .comun_content {
  display: flex;
  /* flex-flow: column; */
  height: 100%;
  justify-content: center;
  align-items: center;
  padding: 70px;
  padding-bottom: 100px;
  flex-flow: wrap;
  text-align: center;
}

#detalle .comun_content .top {
  display: flex;
  /* flex-flow: column; */
  height: 100%;
  justify-content: space-between;
  align-items: flex-end;
}
#detalle .comun_content .top p {
  margin-left: 24px;
}


#detalle .comun_content .top p {
  font-size: 80px;
  color: #b9aea0;
  margin-left: 32px;
  padding: 0;
  line-height: 1;
  font-family: 'League Spartan', sans-serif;
}


#detalle .intro_hoteles .comun {
  height: 100%;
  position: absolute;
  max-width: 100%;
}

#detalle .flickity-enabled {
  position: relative;
  height: 100%;
}

#detalle .figure_inner {
  overflow: hidden;
}
.main-carousel-alojamiento {
  height: 100%;
}
.slider_detalle .carousel-cell {
  height: 560px;
  height: 100%;
  width: 100%;
}
.slider_detalle .carousel-cell img {
  object-position: center;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#detalle .comun_content .bottom h4 {
  font-size: 70px;
  margin-bottom: 24px;
  font-weight: 100;
  padding-top: 140px;
}

#detalle .comun_content .bottom .btn_hero .btn-click {
  max-width: 212px;
  margin: 0 auto;
}

#detalle .figure_inner{
  overflow: hidden;
    padding: 0;
}


#detalle .detalles_list .comun .item {
  text-align: center;
    padding: 30px 15px;
    width: 33%;
    flex-grow: 1;
    margin: 0;
    display: flex;
    flex-flow: column;
    align-items: center;
}
#detalle .detalles_list .comun .item h3 {
  margin: 21px 0 12px;
  color: #fcf9f6;
  font-weight: 600;
  font-size: 24px;
}

#detalle .detalles_list .comun .item img {
  height: 100px;
}




.carousel-cell img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}



.single_detalles-inner {
  display: flex;
  flex-flow: wrap;
}

.single_detalles-inner .left {
  max-width: 100%;
  width: 100%;
  /* border-right: 1px solid #b9aea0; */
  padding: 75px 30px;
}

.single_detalles-inner right {
  max-width: 33%;
  width: 100%;
}

.single_detalles-list {
  display: flex;
  gap: 25px;
  justify-content: space-around;
}

section#single_detalles {
  background: #25272a;
}

.single_detalles-list .comun p {
  color: #fff;
  font-size: 21px;
  font-weight: 500;
}
.descripcion_text h1 {
  font-size: 3rem;
}

.single_descripcion-inner {
  display: flex;
}

.single_descripcion-inner .left {
  width: 100%;
  max-width: 50%;
}

.descripcion_text {
  padding: 90px 60px;
}

.descripcion_text p {
  font-size: 23px;
  margin-bottom: 24px;
  line-height: 1.4;
}

.descripcion_text p:last-child {
  margin-bottom: 0;
}
.descripcion_imagen {
  height: 100%;
}

.descripcion_imagen img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}


.slider_galeria_central{
  
}



.slider_galeria_central .carousel-cell {
  width: 50%;
  height: 480px;
  padding: 20px 10px;
}
.slider_galeria_central .carousel-cell img {
  object-position: center;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.slider_galeria_central .flickity-slider{
  height: auto;
}

.slider_galeria_central .figure_inner{
  border: none;
}

.single_descripcion_2{
  flex-flow: row-reverse;
}












.slider_hero {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.slider_hero .carousel-cell:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: radial-gradient(circle at 50% 65%, rgba(0,0,0,1) 0%, rgba(0,0,0,0.7) 90%);
  z-index: 1;
  opacity: calc(30 / 100);
}

#intro .galeria_central-inner {
  transition-duration: 10ms;
  width: 100vw;
  height: 100%;
}


.slider_hero .carousel-cell img {
  max-width: 100%;
  object-fit: cover;
  height: 100%;
  object-position: center;
  width: 100%;
}

.slider_hero .carousel-cell {
  height: 100%;
  width: 100%;
}

.flickity-viewport {
  height: 100%;
}


.slider_hero {
  position: relative;
  border: 0;
  outline: 0;
}
.slider_hero .flickity-page-dots {
  bottom: 30px;
}
.slider_hero .flickity-page-dots .dot {
  width: 30px;
  height: 4px;
  opacity: 1;
  background: rgba(255, 255, 255, 0.5);
  border: 0 solid white;
  border-radius: 0;
}
.slider_hero .flickity-page-dots .dot.is-selected {
  background: #24272a;
  border: 0 solid #24272a;
}


.slider_hero_content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 999;
  text-align: center;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
}


.slider_hero_content h2 {
  font-weight: 500;
  font-size: calc(var(--title-size) * 0.775);
  line-height: 1;
  color: #fff;
  /* font-family: 'Kaftan'; */
  margin-bottom: 0;

}


.btn_hero .btn-click {
  cursor: pointer;
  background-color: transparent;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: var(--color-primary);
  border-radius: 3px;
  height: 3.4em;
  transition: background-color var(--animation-nav);
}

.btn_hero .btn-content {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 calc(1em * 1.33);
  gap: calc(0.8em * 1);
  width: 100%;
  overflow: hidden;
}

.btn_hero .btn-content svg {
  width: calc(0.8em * 1.2);
  display: block;
  flex-shrink: 0;
  transform: rotate(0.001deg);
  transition: transform var(--animation-smooth);
}

.btn_hero .btn-content svg > * {
  fill: #cec3b6;
}

.btn_hero .btn-content span {
  font-size: 21px;

  color: var(--color-white);
  font-weight: 400;
  text-align: center;
  width: 100%;
  padding: 0 calc(0.8em * 0.75);
  margin-top: -0.05em;
  white-space: nowrap;
  text-shadow: 0px calc(var(--btn-shadow-distance) * 1.5) transparent;
  transform: translateY(0em) rotate(0.001deg);
  transition: text-shadow var(--animation-smooth);
  line-height: 1.1;
}

.btn_hero.secondary .btn-content svg > * {
  fill: #b9aea0;
}



     .btn_hero .btn-click:hover svg:nth-of-type(1) {
        transform: rotate(90deg);
     }

     .btn_hero .btn-click:hover svg:nth-of-type(2) {
        transform: rotate(-90deg);
     }

     .btn_hero .btn-click:hover .btn-content span {
        transition: all var(--animation-cursor);
        transform: translateY(calc(var(--btn-shadow-distance) * -1)) rotate(0.001deg);
        color: var(--color-primary);
        text-shadow: 0px var(--btn-shadow-distance) var(--color-white);
     }




     .deco-line-y {
      width: 1px;
      height: 56px;
      background: rgb(255 255 255 / 40%);
      margin: 5px 0 15px;
  }





.btn {
 border: 1px solid rgb(255 255 255 / 60%);
 padding: 10px 18px;
 border-radius: 2px;
 background: transparent;
 transition: 0.3s cubic-bezier(.9, 0, .1, 1);
 cursor: pointer;
 display: inline-block;
}
.btn:hover{
 background: #fff;
  transition: 0.3s cubic-bezier(.9, 0, .1, 1);
}
.btn:hover p{
 color: #18171d;
  transition: 0.3s cubic-bezier(.9, 0, .1, 1);
}



.btn_hero .btn-click:hover {
  background: #fff;
  color: var(--color-primary);
  transition: all var(--animation-cursor);
}


.c-ul_list.menu_top ul {
  display: flex;
  height: 100%;
  align-items: center;
}

.c-ul_list.menu_top {
  margin-left: auto;
  grid-column-start: 8;
  grid-column-end: 12;

}


.c-ul_list.menu_top>ul>li {float: left;position: relative;width:auto;margin: 0;padding: 0;margin-left: 40px;height: 27px;display: inline-block;}




#submenu {
	left: 0;
	opacity: 0;
	position: absolute;
	top: 27px;
	visibility: hidden;
	z-index: 1;
	display: flex;
	flex-flow: column;
	background: var(--color-primary);
	/* padding: 18px 0 12px; */
	height: auto;
  width: 205%;
}
li:hover ul#submenu {
	opacity: 1;
	top: 27px;	/* adjust this as per top nav padding top & bottom comes */
	visibility: visible;
}
#submenu li {
	width: 100%;
    margin-left: 0;
    padding:14px 36px 15px 26px;
    background: var(--color-primary);
    line-height: 1;
    transition: all .3s ease;
}

#submenu li:nth-child(1){
  padding-top: 16px;
}
#submenu li:nth-child(2){
  padding-bottom: 16px;
}

#submenu li:hover{
  background: rgb(252 249 246);
  transition: all .3s ease;
}
#submenu li:hover a{
  color: #111;
  transition: all .3s ease;
}


#submenu a {
  color: #fff;
  font-size: 22px;
  transition: all .3s ease;
}





.logo_kit {
  max-width: 768px;
  margin: 0 auto;
}


.footer-inner {
 display: flex;
 flex-flow: wrap;
 border: 1px solid #979797;
 background-color: #FFFFFF;
 border-radius: 6px;
 padding: 45px 60px;
 max-width: 940px;
 margin: 0 auto;
}

.footer-right {
 flex: 1;
 position: relative;
}

.footer-left {
 max-width: 45%;
}

.footer-right img {
 margin: 0 auto;
 position: absolute;
 right: -95px;
 top: 10px;
}

.footer-left p {
 color: #000000;
 font-size: 18px;
 font-weight: 500;
 letter-spacing: 0;
 line-height: 24.47px;
 margin-top: 24px;
 max-width: 502px;
}

section#footer {

}


.menu_legal ul {
 display: flex;
 justify-content: center;

}

p.direccion {
  text-align: center;
  margin-bottom: 3.75rem;
  color: #fff;
}
.menu_legal ul li {
 margin: 0 20px;
}
.menu_legal ul li a {
 color: #fff;

}


#page section#footer {
  background: #0017f7;
  border-radius: 1.25rem;
}

section#hero_page .hero-contet h2 {
  color: #fff;
  font-weight: 400;
  font-size: 42px;
}

.cursos-header {
  padding-top: 0;
  padding-bottom: 5.625rem;
}

.cursos-header h2 {
 color: #000000;
 font-size: 54px;
 font-weight: 300;


}

.cursos-header p {

 font-size: 18px;
 font-weight: 400;
 letter-spacing: 0;


}



.intro-form-info p {
 margin: 0;
 margin-left: 14px;
}



.footer-left .intro-form-info {
 background: #111;
 padding: 6px;
 margin: 18px 0 12px;
}





button.modal-close {
 position: absolute;
 top: 15px;
 right: 15px;
 background: transparent;
 color: #fff;
 width: 40px;
 height: 40px;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 21px;
 font-weight: 700;
}

.modal-content h3 {
 color: #FFFFFF;
 font-size: 32px;
 font-weight: 600;
 letter-spacing: 0;
 line-height: 1.2;
 text-transform: uppercase;
 margin: 18px 0 12px;
}

.modal-content p {
 color: #FFFFFF;
 font-size: 18px;
 font-weight: 500;
 letter-spacing: 0;
 line-height: 24.47px;
}

.modal-content figure {
 margin-bottom: 32px;
}

.modal_form h3 {
 font-size: 24px;
 margin-top: 32px;
}

form.wpcf7-forminput .wpcf7-submit {
 background: aquamarine;
}

.modal_form input.wpcf7-submit {
 background: white;
 color: #fff;
 text-transform: uppercase;
}




.fotter_ayuda_img {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  justify-content: center;
  text-align: center;
 
}

.fotter_ayuda_img img {
  max-width: 200px;
}

.footer_ayuda p {
 
  font-weight: 300;
  padding-top: 24px;
}

.footer_ayuda {
  max-width: 900px;
  margin: 0 auto;
}




/* TYPESET */



.typeset {
 
}
.typeset h2 {
   margin-bottom: 0;
   font-size: 1.5rem;
   font-weight: 700;
   line-height: 1.5
}
.typeset h2+* {
   margin-top: 25px
}
.typeset p {
   margin-bottom: 0;
   font-size: 1.125rem;
   font-weight: 400;
   line-height: 1.66667;
   text-align: justify;
}
.typeset p+* {
   margin-top: 20px
}
.typeset p+ol {
   margin-top: 45px
}
.typeset a {
   border-bottom: 1px solid currentColor;
   color: #0F059A;
   text-decoration: none
}
.typeset a:focus, .typeset a:hover {
   color: #0F059A !important;
   border-color: #0F059A
}
.typeset ul {
   padding: 0;
   margin-bottom: 0;
   list-style-type: none
}
.typeset ul li {
   position: relative;
   margin-bottom: 0;
   padding-left: 30px;
   font-size: 1.125rem;
   font-weight: 400;
   line-height: 1.33333
}
.typeset ul li:not(:first-child) {
   margin-top: 6px
}
.typeset ul li::before {
   position: absolute;
   top: 9px;
   left: 0;
   width: 6px;
   height: 6px;
   content: '';
   border-radius: 50%;
   background-color: #0F059A
}
.typeset ol {
   max-width: 490px;
   padding: 0;
   margin-bottom: 0;
   list-style: none;
   counter-reset: ol
}
.typeset ol li {
 position: relative;
 min-height: 24px;
 padding-left: 36px;
 margin-bottom: 0;
 counter-increment: ol;
 font-size: 1.125rem;
 font-weight: 400;
 display: flex;
 align-items: center;
}

.typeset ol li::before {
 position: absolute;
 top: 0;
 left: 0;
 width: 24px;
 height: 24px;
 content: counter(ol);
 border-radius: 50%;
 background-color: #0F059A;
 color: #fff;
 font-size: 0px;
 line-height: 45px;
 text-align: center;
 font-weight: bold;
}

.typeset ol li+li {
   margin-top: 15px
}
.typeset ol+* {
   margin-top: 45px
}

/**/

.breadcrumb {
  text-align: center;
}

.intro_contacto-inner {
  grid-template-columns: repeat(1, 1fr);
  display: grid;
  gap: 32px;
  padding: 45px 0;
}
.intro_contacto-text ul {
  max-width: 100%;
  display: flex;
  justify-content: center;
}
.intro_contacto-text ul li{
  margin: 0 15px;
}
.intro_contacto-text {
  width: 100%;
  max-width: 960px;
  text-align: center;
  margin: 0 auto;
}
.single .breadcrumb {
  text-align: center;
}
p#breadcrumbs {
  /* border-bottom: 1px solid rgb(0 0 0 / 15%); */
  padding-bottom: 12px;
}

p#breadcrumbs span a {
  display: inline-block;
  color: #18171d;
  transition: color .35s;
  padding-right: 0;
  position: relative;
  margin-right: 0.7rem;
  text-transform: uppercase;
  font-size: 12px;
}

span.breadcrumb_last {
  display: inline-block;
  color: #0f059a;
  transition: color .35s;
  padding-right: 1.5rem;
  position: relative;
  margin-left: 0.7rem;
  text-transform: uppercase;
  font-size: 12px;
}

.breadcrumb {
  margin-bottom: 30px;
}

/* ----------------------CONTACTO ----------------------- */



.form {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
}


.form_wrapper label h4 {
  font-size: 16px;
  font-weight: 600;
  color: #111;
}
.form_wrapper .half {
  width: calc(50% - 30px);
}
.form_wrapper .full {
  width: 100%;
}

.intro-form {
 max-width: 440px;
 margin: 0 auto;
 position: relative;
 backdrop-filter: blur(6px);
 background: rgb(255 255 255 / 15%);
 padding: 45px 45px;
 display: block;
 border-radius: 12px;
 grid-column-start: 7;
 grid-column-end: 12;
}



.intro-form h3 {
  color: #FFFFFF;
  font-size: 26px;
  font-weight: 100;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
  font-family: 'REM';
  margin-bottom:24px
}
.intro-form h3 strong {
    color: #0017f7;
}
.wpcf7-list-item {
 display: inline-block;
 margin: 0 0 0 0;
}
.intro-form-info {
 display: flex;
 align-items: center;
 margin: 18px 0 12px;
}
.intro-form-info p {
 margin-left: 12px;
 color: #fff;
}
.form_wrapper {
  display: flex;
  flex-flow: wrap;
  padding: 0 0 15px;
  flex-flow: wrap;

}
.intro_contacto-text {
  width: 100%;
  /* max-width: 560px; */
}
.form_wrapper .half {
  width: calc(50% - 30px);
}
.form_wrapper label {
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 12px;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #111;
  border: none;
  border-radius: 0;
  padding: 15px;
  width: 100%;
  background: rgb(255 255 255 / 20%);
  border-radius: 0px;
  border: 1px solid rgb(17 17 17 / 34%);

  background: #fff;
  border-radius: 3px;

}
textarea {
  overflow: auto;
  height: 130px;
}
.wpcf7 form .wpcf7-response-output {
  margin: 12px 0;
  padding: 0.2em 1em;
  border: 2px solid #00a0d2;
  color: #fff;
  font-size: 16px;
  line-height: 1.2;
}
.checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  padding-top: 0;
  width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: row;
  flex-flow: row;
  flex-flow: column;
}
.form-content h4 {
  font-family: 'Cy';
  font-size: 28px;
  color: #111;
  padding-left: 16px;
}
.texto_checkbox {
  color: rgba(9, 47, 69, 0.9);
  padding-top: 3px;
  display: flex;
  align-items: center;
  width: 100%;
  font-size: 15px;
  line-height: 24px;
}
.texto_checkbox a {
 padding-left: 5px;
 color: #fff;
 font-weight: 500;
}
.texto_checkbox p {
  margin-bottom: 0;
  font-size: 14px;
  color: #fff;
}

select.wpcf7-form-control.wpcf7-select {
  color: #666;
  border: none;
  border-radius: 0;
  padding: 12px;
  width: 100%;
}

input.wpcf7-submit {
 /* display: inline-flex; */
 align-items: center;
 padding: 16px 2.975rem;
 color: #fff;
 background-color: #0017f7;
 position: relative;
 overflow: hidden;
 text-decoration: none;
 font-weight: 500;
 margin-top: 24px;
 margin-left: 0;
 border: none;
 border-radius: 3px;
}

.box {
  margin-right: 8px;
}

.wpcf7-not-valid-tip {
  color: #dc3232;
  font-size: 14px;
  font-weight: normal;
  display: block;
  margin-top: 6px;
}



.wpcf7 form.sent .wpcf7-response-output {
  border-color: #7fb784;
  padding: 8px;
  color: #fff;
  border: none;
  border-bottom: 1px solid #7fb784;
}



.form_wrapper .full input {
 background: #fff;
 border: 1px solid rgb(255 255 255 / 46%);
 color: #fff;
}



/* SOCIAL MEDIA */

body{
 background: var(--color-secondary);
}

.site-footer__socials {
   margin-top: 27px;
   display: -webkit-box;
   display: flex;
  list-style:none
}

.site-footer__socials li+li {
   margin-left: 15px; 
}

.button--circle {
  background-color: rgba(48,52,61,.3);
   position: relative;
   height: 50px;
   width: 50px;
   z-index: 0;
   display: -webkit-box;
   display: flex;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   flex-direction: column;
   flex-wrap: wrap;
   -webkit-box-align: center;
   align-items: center;
   border-radius: 50%;
   -webkit-box-pack: center;
   justify-content: center;
   -webkit-transition: border-color .4s cubic-bezier(.165,.84,.44,1);
   transition: border-color .4s cubic-bezier(.165,.84,.44,1);
}

.svg {
   position: relative;
   display: inline-block;
}

.button--circle .svg {
   fill: #64676e;
}

.button svg {
 
   -webkit-transition: fill .3s cubic-bezier(.165,.84,.44,1);
   transition: fill .3s cubic-bezier(.165,.84,.44,1);
}

.button--circle:after {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
   content: "";
   z-index: -1;
   opacity: 0;
   border-radius: 50%;
   background-color: #6BFD29;
   -webkit-transform: scale(0);
   transform: scale(0);
   -webkit-transition: opacity .3s cubic-bezier(.165,.84,.44,1),-webkit-transform .3s cubic-bezier(.165,.84,.44,1);
   transition: opacity .3s cubic-bezier(.165,.84,.44,1),-webkit-transform .3s cubic-bezier(.165,.84,.44,1);
   transition: opacity .3s cubic-bezier(.165,.84,.44,1),transform .3s cubic-bezier(.165,.84,.44,1);
   transition: opacity .3s cubic-bezier(.165,.84,.44,1),transform .3s cubic-bezier(.165,.84,.44,1),-webkit-transform .3s cubic-bezier(.165,.84,.44,1);
}

.button--circle:hover {
   border-color: #6BFD29;
}

.button--circle:hover:after {
   opacity: 1;
   -webkit-transform: scale(1);
   transform: scale(1);
}

.button--circle:hover .svg {
   fill: #111;
}

/* ---------------------- MENU HAMBURGUESA ----------------------- */


.hamburger {
  display: flex;
  height: 3em;
  width: 3em;
  background-color:rgb(242 242 242);
  position: relative;
  right: 0;
  border-radius: 50%;
  transition: 0.2s ease-in-out 0s, background-color 0.2s ease-in-out;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transform: translate(0%, 0%) rotate(0.001deg);
  cursor: pointer;
  top: 0;
  pointer-events: all;
}


.hamburger .hamburger-bar {
  position: absolute;
  width: 40%;
  height: 1.5px;
  background-color: #18171d;
  transition: 0.2s ease-in-out 0s, background-color 0.2s ease-in-out;
}

.hamburger .hamburger-bar:nth-child(1) {
  transform: translateY(-0.15em) rotate(0.001deg);
}

.hamburger .hamburger-bar:nth-child(2) {
  transform: translateY(0.15em) rotate(0.001deg);
}




.scroll-scrolled .hamburger-wrap {
  transform: translateY(0%) scale(1) rotate(0.001deg);
}


.modal-nav-mobile {
  top: 0;
  left: 0;
  z-index: 5;
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  height: 100vh;
  position: fixed;
  width: 100%;
  display: none;
  padding: 80px 15px 20px;
}

.modal-nav-mobile .modal-block {
  border-radius: 1.5em;
  padding: 0.25em 0.75em;
  pointer-events: none;
  position: relative;
  border-radius: 1.5em;
}
.nav-mobile-active .modal-nav-mobile .modal-block {
  pointer-events: all;
}
.nav-mobile-active .modal-nav-mobile .modal-block-background {
  width: 100%;
  height: 100%;
  transform: scale(1) rotate(0.001deg);
}

.modal-nav-background {
  z-index: 4;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  transition:all 0.7s cubic-bezier(0.5, 0.5, 0, 1);;
  visibility: hidden;
  opacity: 0;
  pointer-events: all;
}

.nav-mobile-active .modal-nav-background {
  visibility: visible;
  opacity: 1;
  z-index: 999;
}
 .modal-nav-mobile .modal-block-background {
   background-color: #111;
   border-radius: 6px;
  transition: all 0.2s ease-in-out, background-color 0.2s ease-in-out, transform 0.7s cubic-bezier(0.5, 0.5, 0, 1) 0s;
  position: absolute;
  right: 0;
  top: 0;
  width: 3em;
  height: 3em;
  transform: scale(0) rotate(0.001deg);
}

.modal-nav-mobile .ul-mobile {
  position: relative;
  display: flex;
  flex-direction: column;
  transform: translateY(0) scale(0.1) rotate(0.001deg);
  transition: all 0.2s ease-in-out;
  transform-origin: top right;
  padding: 2.5em 1.5em 2.5em 1.5em;
  opacity: 0;
}
.ul-mobile li {
  margin: 16px 0;
}

.ul-mobile li a {
  font-size: 26px;
  transition: all 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  font-weight: 450;
  position: relative;
  display: block;
  padding-right: 1em;
  color: #fff;
}


.hamburger:hover .hamburger-bar:nth-child(1) {
transform: translateY(0.15em) rotate(0.001deg);
}

.hamburger:hover .hamburger-bar:nth-child(2) {
transform: translateY(-0.15em) rotate(0.001deg);
}

.nav-mobile-active .hamburger:hover .hamburger-bar:nth-child(1) {
transform: translateY(0em) rotate(45deg) scaleX(1.2);
}

.nav-mobile-active .hamburger:hover .hamburger-bar:nth-child(2) {
transform: translateY(0em) rotate(-45deg) scaleX(1.2);
}


.nav-mobile-active .modal-nav-mobile .ul-mobile {
opacity: 1;
  transform: scale(1) rotate(0.001deg);
}

.nav-mobile-active a.c-header_logo img {
  visibility: hidden;
  transition: all 0.7s cubic-bezier(0.5, 0.5, 0, 1);
}


span.modal-small-title {
    color: var(--color-dark);
    transform: translateY(0em);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 0.8em;
    opacity: 0.5;
    margin-bottom: 0.75em;
    margin-top: 0.2em;
}
.hamburger-wrap {
  display: none;
}

.page-disponibilidad .section-disponibilidad {
  padding-top: 10rem;
}

.page-disponibilidad .site-header a,
.page-disponibilidad .logo_text {
  color: #111;
}
.page-disponibilidad .btn_header_reservar a {
  color: #fff;
}

/* PAGE */

section#hero_page {
  padding-top: 30vh;
  padding-bottom: 100px;
  z-index: 9;
  position: relative;
  background: linear-gradient(93deg, rgb(0 18 7) 0%, rgb(0 37 0) 100%);
  border-radius: 0 0 36px 36px;
}
figure.wp-block-embed {
  margin: 10px 0;
}
/* ------------------------- RESPONSIVE -------------------------------------------------- */

@media screen and (max-width: 1400px){

}

@media screen and (max-width: 1170px){

 .logo {
  grid-column-start: 2;
  grid-column-end: 11;
}
.intro-header {
  grid-column: 1 / -1;
}
.intro-form{
  grid-column: 1 / -1;
  padding: 30px 30px;
}
.intro-header h2 {
  font-size: 52px;
  padding-top: 60px;
}
.intro-form h3{
  font-size: 18px;
}
.cursos-header h2 {
  font-size: 36px;
}
section#cursos {
  padding-top: 1.625rem;
}
.cursos-list .comun h3{
  font-size: 26px;
}
.modal-nav-mobile {
  display: block;
 z-index: 9999;
}
.hamburger-wrap {
 display: flex;
 align-items: center;
 margin-right: 0;
}
nav.menu_top {
  display: none;
}
.c-ul_list.menu_top {
  margin-left: auto;
  display: none;
}
p.logo_text {
  padding-left: 0;
}
.site-header_wrapper{
  justify-content: space-between;
}

}

@media screen and (max-width: 768px){
  .flickity-viewport {
    height: 100% !important;
}
.slider_hero .flickity-page-dots .dot.is-selected {
  background: #fff;
  border: 0 solid #fff;
}
  .site-header_wrapper {
    align-items: center;
}
  ul.legal{
    flex-flow: column;
    text-align: center;
  }
  .footer_hotel_text h4 strong {
    font-size: 42px;
}
.footer_hotel.origen .footer_hotel_text h4 {
  font-size: 26px;
}

  .detalles_list-content {
    flex-flow: column;
}

 .menu_legal ul {
   display: flex;
   flex-flow: column;
   align-items: center;
}
 .footer-right img {
   margin: 0 auto;
   position: relative;
   right: 0;
   top: 10px;
}

 .footer-inner {
   padding: 45px 45px;
}
.footer-left {
 max-width: 100%;
}

 .cursos-list .comun {
   padding: 35px 30px 35px;
   min-height: 240px;
}

.iconos {
  width: 65px;
  height: 65px;
}
.iconos:before{
  width: 115%;
  height: 115%;
}
.iconos img {
  max-width: 45px;
}
 .site-header_wrapper .logo img {
   max-width: 160px;
}




.intro_inner {
 grid-template-columns: repeat(1, 1fr);
}
.cursos-list {
 grid-template-columns: repeat(1, 1fr);
}
.modal.open {
 z-index: 99;
}
.modal {
   max-width: 100%;
}

.intro_hoteles {
  height: auto;
  flex-flow: column;
}
.intro_hoteles .comun {
  max-width: 100%;
}
.figure_inner{
  padding: 0;

}
section#intro {
  height: auto;
}
.intro_hoteles .comun{
  height: 50vh;
}
.intro_hoteles .comun p {
  padding: 12px 0 32px;
  font-size: 28px;
}
.btn_header_reservar{
  display: none;
}
p.logo_text{
 font-size: 24px;
}
.ul-mobile .btn_header_reservar {
  display: block;
  margin-top: 42px;
  padding: 18px;
  text-align: center;
}
.detalles_list {
  flex-flow: column;
}
.detalles_list .comun {
  max-width: 100%;
}
.masonery {
  width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  padding: 45px 10px;
}
.contacto_inner {
  flex-flow: column;
}
.contacto_left {
  max-width: 100%;
  width: 100%;
  height: 300px;
}
.contacto_right {
  max-width: 100%;
  width: 100%;
  flex-flow: column;
}
.contacto_right .comun:nth-child(2) {
  flex-flow: column;
}
.footer_info_inner {
  max-width: 100%;
  width: 100%;
  margin-bottom: 24px;
}
.footer_info_inner p {
  font-size: 24px;
  line-height: 1.2;
}
.contacto_footer {
  flex-flow: column;
}
.contacto_footer .comun {
  max-width: 100%;
  width: 100%;
}
.testimonios_inner {
  flex-flow: column;
  padding: 90px 15px;
  
}
.testimonios_inner .comun {
  width: 100%;
  max-width: 100%;
}
footer.site-footer {
  flex-flow: column;
}
#detalle .comun_content .top {
  justify-content: space-between;
}
#tstimonios  .comun_content {
  padding: 0;
}
.single_detalles-inner {
  flex-flow: column;
}
.single_detalles-inner .left {
  max-width: 100%;
  width: 100%;
  padding: 45px 30px;
}
.single_detalles-list {
  flex-flow: column;
  gap: 15px;
}
#detalle section#intro {

}
.main-carousel {
  height: 100%;
}
#detalle .intro_detalle .comun_content {
    padding: 45px;
    padding-bottom: 60px;

}
.carousel-cell {
  height: 100%;
}
.single_descripcion-inner {
  display: flex;
  flex-flow: column;
}
.single_descripcion-inner .left {
  max-width: 100%;
}
.descripcion_text {
  padding: 60px 25px;
}
.slider_galeria_central .carousel-cell {
  width: 100%;
  height: 480px;
  padding: 20px 10px;
}
footer.site-footer .comun {
  max-width: 100%;
  width: 100%;
}

[themes="alojamiento"] .detalles_list{
  flex-flow: column;
  max-width: 90%;
  padding-bottom: 60px;
}
[themes="alojamiento"] .detalles_list .comun{
  width: 100%;
}

#detalle .detalles_list .comun .item {
  width: 100%;
}
[themes="alojamiento"] section#detalles h3 {
  text-align: center;
}
[themes="alojamiento"] .detalles_list .comun {
  padding: 60px 0 45px;
}
.footer_hotel_text a{
  background:transparent;

}

.slider_hero_content{
  top: 50%;
}

}



@media screen and (max-width: 520px){
  .widget_cabecera {
    text-align: center;
}
.widget_cabecera img {
  max-width: 100px;
  width: 100%;
  margin: 0 auto;
}
ul.redes_sociales {
  justify-content: center;
  margin: 0;
}
  .contacto_footer .comun:nth-child(1){
    justify-content: center;
  }
  .contacto_footer .comun:nth-child(1) .footer_hotel_text {
    text-align: center;
    width: 100%;
}
.contacto_footer .comun {
  justify-content: center;
}
.contacto_footer .comun:nth-child(1) .footer_hotel_text a {
  margin-left: auto;
  margin: 24px auto;
}
.footer_hotel_text a{
  margin: 24px auto;
}
.footer_hotel_text {
  padding-left: 0;
  text-align: center;
  width: 100%;
}
  header#masthead{
    padding: 0 15px;
  }
  .site-header_wrapper .logo img {
    max-width: 100px;
}
header#masthead{
  height: 100px;
}
  p.logo_text{
    display: none;
  }
  .home section#intro{
    padding-top: 100px;
  }
}

/* ------------------------- Section - Services -------------------------------------------------- */


/* ------------------------- Section - Founders -------------------------------------------------- */


/* ------------------------- Section - Grid Images -------------------------------------------------- */


.allotjament-txt {
    background: #fff;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 26px !important;
}


div#gt_float_wrapper {
  z-index: 999 !important;
}



/* ESTILOS BLOG */


header.archive-header-blog {
  position: relative;
  padding-top: 290px;
  overflow: hidden;
  background-color: #24272a;
  background-repeat: no-repeat;
  padding-bottom: 155px;
}

.single header.archive-header-blog .container{
  padding-right: 100px;
  padding-left: 100px;
}

header.archive-header-blog:before {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  background-image: url(./../../assets/images/noise.png);
  background-size: 276px 276px;
  pointer-events: none;
}

p.archive-header-blog-title {
  font-weight: 200;
  font-style: normal;
  color: #d3cee0;
  font-size: 3.6666666667rem;
  letter-spacing: -2px;
  line-height: 1.0714285714;
  margin-bottom: 0;
  text-align: center;
}
p.archive-header-blog-title strong{
  font-weight: 500;
  color: #fff;
}
header.archive-header-blog .container span {
  color: rgb(255 255 255 / 50%);
  font-size: .6666666667rem;
  font-weight: 500;
  letter-spacing: 2.7px;
  line-height: 1;
  text-transform: uppercase;
  margin-top: 30px;
  display: block;
  text-align: center;
}
.filters-dropdown {
  position: absolute;
  top: 100%;
  right: -30px;
  height: auto;
  width: 285px;
  padding-top: 18px;
  display: none;
  z-index: 999;
}

.filters-dropdown ul {
  max-height: 340px;
  padding: 20px 35px 10px;
  overflow: auto;
  border: 1px solid rgba(13,28,121,.1);
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0 10px 10px rgb(5 12 64 / 5%);
}

.filters-dropdown ul li {
  position: relative;
  display: flex;
  align-items: center;
  color: rgba(5,12,64,.5);
  font-weight: 400;
}

.filters-dropdown ul li:after {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 100%;
  content: "";
  background-image: url(./../../assets/images/dots.png);
  background-repeat: repeat-x;
  background-position: 0 100%;
  background-size: 5px 2px;
}

.filters-dropdown ul li a {
  height: auto;
  width: 100%;
  padding-top: 12px;
  padding-bottom: 18px;

  font-style: normal;
  color: #050c40;
  font-size: 1.2rem;
  line-height: 1;
}

.filters-dropdown:before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 12px;
  right: 49px;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #fff;
  border-left: 7px solid transparent;
}

.filters-dropdown:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 11px;
  right: 47px;
  border-right: 9px solid transparent;
  border-bottom: 9px solid rgba(13,28,121,.1);
  border-left: 9px solid transparent;
}

.cards {
  margin-top: -208px;
}

.cards-filters{
  position: relative;
  height: auto;
  width: 165px;
  z-index: 2;
  margin-bottom: 65px;
  margin-left: auto;
}

.cards-filters.is-open .filters-dropdown {
  display: block;
}

.btn_filtros {
  height: 45px;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  transition: background-color .25s cubic-bezier(.25,.46,.45,.94);
  border: 2px solid #fcf9f6;
  background-color: transparent;
  border-radius: 30px;
}

button.btn_filtros span {

  font-size: 18px;
  line-height: 30px;
  display: block;
  font-weight: 500;
}

button.btn_filtros .svg {
  margin-left: 10px;
  vertical-align: middle;
  fill: #19c6c7;
  margin-top: 0;
  display: inline-block;
  position: relative;
}

.svg svg {
  display: block;
}

.cards-list {
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
  margin-bottom: -40px;
  margin-left: -20px;
  padding-bottom: 100px;
}

.cards-list-item {
  height: auto;
  width: calc(33.33% - 40px);
  margin-right: 20px;
  margin-bottom: 40px;
  margin-left: 20px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  position: relative;
  border-radius: 10px;
  background-color: #fff;
  box-shadow: 0 10px 10px rgb(0 0 0 / 5%);
}

.cards-list-item>a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 1;
}

.cards-list-picture {
  position: relative;
  height: 190px;
  overflow: hidden;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  -webkit-mask-image: -webkit-radial-gradient(#fff,#000);
  margin: 0;
  
}

.single .archive-header-blog .cards-list-picture {
  height: auto;
  border-radius: 10px;
  margin: 0;
  margin-top: 70px;
  z-index: 9;
}

.cards-list-picture img {
  height: 100%;
  width: 100%;
  display: block;
  transition: -webkit-transform .4s cubic-bezier(.25,.46,.45,.94);
  transition: transform .4s cubic-bezier(.25,.46,.45,.94);
  transition: transform .4s cubic-bezier(.25,.46,.45,.94),-webkit-transform .4s cubic-bezier(.25,.46,.45,.94);
  object-fit: cover;
}

.cards-list-content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  flex-wrap: wrap;
  padding: 40px 50px 30px;
}

.cards-category{
display: flex;
}

.cards-category p {
  color:rgb(120 120 120);
  font-size: .8rem;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  margin-bottom: 25px;
  letter-spacing: 1.5px;
  margin-right: 6px;
}

.cards-category p a {
  color: #b8b8b8;
  text-decoration: none;
  font-weight: 500;
}



.cards-title{
  margin-bottom: 40px;
  font-weight: 500;
  font-style: normal;
  transition: color .25s cubic-bezier(.25,.46,.45,.94);
  color: #050c40;
  font-size: 1.3333333333rem;
  letter-spacing: -.5px;
  /* line-height: 1.5; */
  height: 90px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  text-overflow: ellipsis;
}

.cards-list-item:hover .cards-title {
  color: #666;
}

.cards-link svg {
  fill: #19c6c7;
}

.cards-list-item:hover .cards-link {
  color: #666;
}

.cards-link {
  transition: color .25s cubic-bezier(.25,.46,.45,.94);
  color: #050c40;
  margin-top: auto;
  position: relative;
  font-weight: 500;
  font-style: normal;
  display: inline-block;
  transition: color .25s cubic-bezier(.25,.46,.45,.94);
  font-size: .9333333333rem;
  line-height: 1;
  text-decoration: none;
}
p.cards-link {
  display: flex;
  align-items: center;
}
.cards-link .svg {
  fill: #19c6c7;
  display: inline-block;
  margin-bottom: 6px;
    margin-left: 10px;
    transition: -webkit-transform .25s cubic-bezier(.25,.46,.45,.94);
    transition: transform .25s cubic-bezier(.25,.46,.45,.94);
    transition: transform .25s cubic-bezier(.25,.46,.45,.94),-webkit-transform .25s cubic-bezier(.25,.46,.45,.94);
}

.cards-list-item:hover .cards-link .svg {
  -webkit-transform: translateX(8px);
  transform: translateX(8px);
}

.cards-descripcion{
    margin-top: -20px;
    margin-bottom: 40px;
    color: rgba(5,12,64,.6);
}

.single .archive-header-blog:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  height: 50%;
  width: 100vw;
  margin-left: -50vw;
  content: "";
  z-index: 0;
  background-color: #fff;
}

.single header.archive-header-blog {
  padding-bottom: 60px;
}
.single-content {
  padding-bottom: 200px;
  background: #fff;
}
.single-content .container {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 760px;
  margin-top: 0;
}

header.related-header {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
  padding-top: 90px;
}
header.related-header h2 {
  margin: 0;
  font-size: 28px;
}
.btn-vernoticias {
  margin-left: auto;
}
.btn-vernoticias a {
  color: #1d1e21;
  transition: color .25s cubic-bezier(.25,.46,.45,.94);
}

.btn-vernoticias a:hover {
  color: #19c6c7;

}

@media screen and (max-width: 768px){
  .cards {
    margin-top: -135px;
}
.cards-filters{
  margin: 0 auto;
    margin-bottom: 65px 
}
.cards-list-item{
  width: 100%;
}
.single .archive-header-blog:after {
  height: 20%;
  background-color: #fff;
}
.single header.archive-header-blog .container {
  padding-right: 30px;
  padding-left: 30px;
}
.cards-list-item {
  width: 100%;
}
.single-content {
  padding-bottom: 120px;
}
.search-wrapper h1{
  font-size: 2rem;
}
.flickity-prev-next-button {
  display: none;
}
.logo a img {
  padding: 0;
}
.fixed .logo a {
  padding: 0 36px 0 0;
}
section#detalle {
  padding: 60px 15px;
}
.slider_hero .carousel-cell:before {
  opacity: calc(60 / 100);
}
#detalle .comun_content .bottom h4 {
  font-size: 3rem;
  padding-top: 2rem;
}

}