@import '../r/r.css';
@import './mdquery.css';
/*
* * * * *
* Configuracion general
* * * * * 
*/
html {
    overflow: hidden;
}
body { 
    background: #ffffff;
}

html body *
{
  font-size: var(--fuente-cuerpo);
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

.btn-fav {
    background-color: var(--color-fav);
    border-color: var(--color-fav);
    color: #ffffff !important;
    border-radius: 0.4rem;
    padding: 0.5rem 0rem;
    height: fit-content;
}
.btn-fav-link {
    background-color: #ffffff;
    border-color: var(--color-fav);
    color: var(--color-fav) !important;
    border-radius: 0.4rem;
    padding: 0.5rem 0rem;
    height: fit-content;
}

.btn-largo {
    width: 100%;
}

.line-divider
{
  display: block;
  margin: 0.7rem 0;
  width: 100%;
  background-color: var(--color-fav);
  height: 1px;
}
/* SECTION - NAV SUPERIOR */
#__fv_nav_superior
{
  width           : 100%;
  height          : var(--alto__fv_nav_superior);
  background-color: #4f2b4d;
  display         : flex;
  flex-direction  : row;
  flex-wrap       : nowrap;
  align-content   : center;
  justify-content : space-between;
  align-items     : center;
  padding: 0 1rem;
}
  nav#__fv_nav_superior figure, 
  nav#__fv_nav_superior #__fv_menu_accion 
  {
    height: 40px;
    min-width: 40px;
    width: auto;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
  }
  nav#__fv_nav_superior figure img 
  {
      max-width: 60px;
  }
  section#__fv_home_banner {
      display         : block;
      height          : 40vh;
      background-color: #000000;
      width           : 100%;
      overflow:     hidden;
      position: relative;
  }

  section#__fv_home_banner figure {
      width: 100%;
      height: 100%;
      position: relative;
      z-index: 1;
      opacity: 0.87;
  }

  section#__fv_home_banner figure img 
  {
    position: relative;
    width: fit-content;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    max-width: unset;
  }
  div#__fav_home_banner_texto {
    position: absolute;
    bottom: 4rem;
    left: 50%;
    width: 100%;
    z-index: 2;
    max-width: 1020px;
    transform: translateX(-50%);
    padding-left: 1.5rem;
  }
  section#__fv_home_buscador {
      display: block;
      height: fit-content;
      width: 100%;
      position: relative;
      z-index: 2;
  }
  label.minilabel {
      display: block;
      font-size: 0.8rem;
      font-weight: normal;
  }
  form#__fav_home_buscador {
      display: block;
      width: 90%;
      margin: 0 auto;
      box-shadow: 0px 3px 10px 0 rgba(0,0,0,.2);
      border-radius: 10px;
      box-sizing: border-box;
      padding: 1.5rem;
      background-color: #ffffff;
      transform: translateY(-40px);
  }
  .__cont_form_desplegable.active
  {
    z-index: 3;
  }
  .__cont_form_desplegable {
      position: relative;
      left: 0;
      width: 100%;
      height: 40px;
      z-index: 1;
  }
  div[data-bh-type="datalist"] 
  {
      position: absolute;
      left: -1rem;
      bottom: 0;
      transform: translateY(100%);
      display: none;
  }
  div[data-bh-type="datalist"].active {
      display: block;
      width: calc(100% + 2rem);
      height: fit-content;
      max-height: 40vh;
      overflow-y: auto;
      min-height: 30px;
      z-index: 5;
      background-color: #ffffff;
      box-shadow: 0 10px 10px 0 rgba(0,0,0,.2);
      border-radius: 0 0 10px 10px;
      padding: 0.5rem 1rem 1rem 1rem;
      overflow-x: hidden;
  }

  span.d-list 
  {
      display: block;
      width: calc(100% + 2rem);
      padding: 0.7rem 3rem;
      border-top: solid 1px #e9e9e9;
      position: relative;
      left: -1rem;
  }

  span.d-list.selected {
      background-color: #e2e2e2;
      border-bottom: 2px solid #c2c2c2;
      background-image: url(../assets/iconos/check.svg);
      background-position-x: 1rem;
      background-position-y: center;
      background-size: auto 50%;
      background-repeat: no-repeat;
      background-attachment: scroll;
      background-origin: initial;
      background-clip: initial;
  }
  span.__bh_seleccionado {
      position: relative;
      top: 50%;
      transform: translateY(-50%);
      display: inline-block;
  }
  .trigger-desplegable,
  .i-ciudad,
  .i-arrow-d,
  .i-fecha,
  .i-horario,
  .i-personas
  {
    padding-left: 2rem;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
  }
  .i-ciudad
  {
    background-image: url(../assets/iconos/pin.svg), url(../assets/iconos/arrow-d.svg);
    background-position-x: 0.15rem, 100%;
    background-position-y: center, center;
    background-size: auto 50%, auto 7px;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, scroll;
    background-origin: initial;
    background-clip: initial;
    background-color: transparent,transparent;
  }
  
  .i-fecha
  {
     background-image: url(../assets/iconos/calendar.svg), url(../assets/iconos/arrow-d.svg);
    background-position-x: 0rem, 100%;
    background-position-y: center, center;
    background-size: auto 50%, auto 7px;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, scroll;
    background-origin: initial;
    background-clip: initial;
    background-color: transparent,transparent;
  }
  .i-horario
  {
    background-image: url(../assets/iconos/clock.svg), url(../assets/iconos/arrow-d.svg);
    background-position-x: 0rem, 100%;
    background-position-y: center, center;
    background-size: auto 50%, auto 7px;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, scroll;
    background-origin: initial;
    background-clip: initial;
    background-color: transparent,transparent;
  }
  .i-personas
  {
    background-image: url(../assets/iconos/person_2.svg), url(../assets/iconos/arrow-d.svg);
    background-position-x: 0rem, 100%;
    background-position-y: center, center;
    background-size: auto 50%, auto 7px;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, scroll;
    background-origin: initial;
    background-clip: initial;
    background-color: transparent,transparent;
  }

#__fv_cuerpo
{
  width: 100%;
  height: var(--alto__fv_cuerpo);
  background-color: #ffffff; /* ~Futuro F4F4F4 */
  overflow: auto;
}

#__fv_nav_inferior
{
  width: 100%;
  height: var(--alto__fv_nav_inferior);
  background-color: #ffffff;
  box-shadow: 0 0 10px 0 rgba(0,0,0,.2);
  border-radius: 1rem 1rem 0 0;
  padding: 0.5rem 0;
  box-sizing: border-box;
  position: relative;
  z-index: 100;
}

.for-switch-right {
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    padding-right: 2.5rem;
}

.for-switch-right i.form-icon {
    right: 0;
    left: unset;
    width: 2.1rem;
    height: 1.25rem;
    border-radius: 3rem;
}

.form-switch.for-switch-right input:checked + .form-icon
{
  background-color: #4F2B4D;
  border-color: #4F2B4D;
}

.for-switch-right i.form-icon::before {
    padding: 0.6rem;
}
dmalert
{
  z-index: 9999;
}
div#__resultado_api[data-orientacion="horizontal"] {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: flex-start;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  overflow: auto;
}
.btn-fav-min-padding
{
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.icono-pin
{
  background: url(../assets/iconos/pin.svg) no-repeat scroll 0 5px / 10px auto transparent;
  padding-left: 15px;
}
.icono-horario
{
  background: url(../assets/iconos/clock.svg) no-repeat scroll 0 center / 10px auto transparent;
  padding-left: 15px;
}
.icono-resto
{
  background: url(../assets/iconos/cubierto.svg) no-repeat scroll 0 center / 10px auto transparent;
  padding-left: 15px;
}

.icono-telefono
{
  background: url(../assets/iconos/telefono.svg) no-repeat scroll 0 center / 10px auto transparent;
  padding-left: 15px;
  color: #000000;
}
dmalert {
  width: 100% !important;
  max-width: 100% !important;
  left: 0%;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 1rem 0 !important;
  background-color: #ffffff !important;
  background: var(--color-fav) !important;
  color: #ffffff !important;
  font-weight: bold;
  box-shadow: 0 0 10px 0 rgba(0,0,0,.3);
  border-top: 1px solid var(--color-fav);
}





/*  SKELETON  */
.skeleton .img-crf, 
.skeleton .subtitle,
.skeleton .stars-crf,
.skeleton .precio-crf,
.skeleton .dir-crf,
.skeleton .tipo-crf,
.skeleton .btn-fav-min-padding
{
  border-radius: 4px !important;
  background: #eee;
  background: linear-gradient(110deg, #ececec 8%, #f5f5f5 18%, #ececec 33%);
  background-size: 200% 100%;
  -webkit-animation: 1.5s shine linear infinite;
          animation: 1.5s shine linear infinite;
}

.skeleton .subtitle
{
  margin: 0.5rem 0;
  width: 100% !important;
  height: 1.6rem;
}
.skeleton .stars-crf,
.skeleton .precio-crf,
.skeleton .dir-crf,
.skeleton .tipo-crf 
{
  margin: 0.5rem 0;
  width: 70% !important;
  height: 1.3rem;
}
.skeleton .btn-fav-min-padding
{
  border-color: #eeeeee !important;
}

.horarios-seleccion-crf .skeleton {
  margin: 0 !important;
  padding: 0 !important;
}

.skeleton .btn-fav-min-padding {
  width: 90px;
}

.horarios-seleccion-crf .skeleton {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  gap:1rem;
}

@-webkit-keyframes shine {
  to {
    background-position-x: -200%;
  }
}

@keyframes shine {
  to {
    background-position-x: -200%;
  }
}

/* *[data-favorito]
{
  display:none !important;
} */
.empty.sin-datos-centrado
{
  text-align: center !important;
}
.sin-datos-centrado
{
  max-width: 800px;
  margin: 2rem auto;
}

section#__fv_sin_datos .empty-icon img {
  height: 110px;
}
.misreservas-sec
{
  width: 90%;
  margin:1rem auto
}

div#navFooter {
  display: flex;
  max-width: 350px;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-around;
  align-items: center;
  gap: 1rem;
  padding: 0 1rem;
  margin: 0 auto;
}

div#navFooter a {
  text-align: center;
  color:#B8A8B7;
}

div#navFooter a.selected {
  color: var(--color-fav) !important;
}

#__fv_nav_home_m.selected figure svg path
{
  fill: var(--color-fav);
}
#__fv_nav_home_f.selected figure svg path
{
  stroke: var(--color-fav);
}
#__fv_nav_home_r.selected figure svg path
{
  stroke: var(--color-fav);
}

.btn-fav.loading {
  color: transparent !important;
}

.fondo-rosa main#__fv_cuerpo, .fondo-rosa
{
  background-color:#FFEDF1;
}

span#__fv_menu_accion_dsktop a.selected
{
  border-bottom: 3px solid var(--color-fav);
  color:var(--color-fav);
}
span#__fv_menu_accion_dsktop a {
  padding: 0 1rem;
  color: #ffff;
  height: 70%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  /* border-bottom: 3px solid #ffffff; */
}
span#__fv_menu_accion_dsktop 
{
  /* display: flex; */
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  height: 80%;
}
button[data-favorito] img {
  width: 22px;
  height: 21px;
}

span.btn.btn-clear {
  background: transparent;
  border: 0;
  margin-left: 0.2rem;
  margin-right: -2px;
  opacity: 1;
  padding: 0.1rem;
  text-decoration: none;
  right: 1.5rem;
  color: #ffffff;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 27px;
  font-size: 1.1rem;
  border-radius: 4px;
  background-color: var(--color-fav);
}
._maxAnchoDesk {
  max-width: 1024px;
  display: block;
  margin: 0 auto;
}

.color-negro, p#__fv_codigo_reserva {
    color: #000000;
}

p#__fv_codigo_reserva .text-bold {
    color: var(--color-fav);
}

.mt-22
{
  margin-top:1rem !important;
}


#__fv_resultado_tyc
{
  max-width: 1024px;
  padding: 1rem;  
}

#__fv_resultado_tyc p
{
  color: rgba(79, 43, 77, 1);
  white-space:pre-line;
  font-size: 0.8rem;
}

#__fv_resultado_tyc p strong {
    color: rgba(79, 43, 77, 1);
    font-size: 0.95rem;
}
#__fv_resultado_tyc h2 {
    font-size: 1rem;
    font-weight: bold;
    margin-top: 1rem;
    color: rgba(79, 43, 77, 1);
    position: relative;
    width: fit-content;
    margin-bottom: 2rem;
}

#__fv_resultado_tyc h2::after {
    position: absolute;
    bottom: -12px;
    left: 50%;
    width: 25%;
    background-color: var(--color-fav);
    height: 2px;
    content: "";
    transform: translateX(-50%);
}
.btn-link-important {
    background: transparent;
    border-color: transparent;
    color: var(--color-fav-oscuro) !important;
    font-weight: bold;
    position: relative;
    bottom: -0.6rem;
    left: 0;
}

div#__mnu_mob.active
{
  opacity: 1;
  transform: translateX(0vw);
}
div#__mnu_mob {
    position: fixed;
    top: var(--alto__fv_nav_superior);
    left: 0;
    height: calc(100vh - var(--alto__fv_nav_superior));
    background: var(--color-fav-oscuro);
    width: 100%;
    z-index: 99;
    transform: translateX(101vw);
    opacity: 0;
    transition: transform 300ms linear;
    transition-property: transform, opacity;
}

a#__mt_favoritos_mob, a#__mt_reservas_mob {
    display: flex;
    width: 100%;
    padding: 1rem;
    font-size: 19px;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    height: 50px;
    gap: 0.5rem;
    color: #ffffff;
}

a#__mt_favoritos_mob {
    margin-top: 2rem;
}

a#__mt_favoritos_mob img, a#__mt_reservas_mob img {
    height: 22px;
    margin-right: 1rem;
}

a#__mt_reservas_mob_unete {
    color: #ffffff;
    padding: 0.7rem;
    display: inline-block;
    border: 1px solid var(--color-fav);
    border-radius: 0.7rem;
    margin-left: 1rem;
    margin-top: 1rem;
    font-size: 19px;
    text-align: center;
    width: 10rem;
}

a#__mt_registrarse {
    color: #ffffff;
    padding: 0.7rem;
    display: inline-block;
    border: 1px solid var(--color-fav);
    border-radius: 0.7rem;
    margin-left: 1rem;
    margin-top: 1rem;
    font-size: 19px;
    text-align: center;
    width: 10rem;
}

  a#__mt_iniciarsession {
    color: #ffffff;
    padding: 0.7rem;
    display: inline-block;
    border: 1px solid var(--color-fav);
    border-radius: 0.7rem;
    margin-right: 1rem;
    margin-top: 1rem;
    font-size: 19px;
    text-align: center;
    width: 10rem;
    background-color: var(--color-fav);
}
.d-flex-reg-ini {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
}
._res_line
{
  background-color:var(--color-fav);
  width: 100%;
  height: 1px;
  margin: 2rem 0;
}
a.lnk-menu-mob {
    color: #ffffff;
    font-size: 20px;
    display: block;
    padding: 0rem 0 1rem 1rem;
}

.divisor-fav.divisor-fav-medio
{
  width: 50%;
  margin: 0 auto;
}
.divisor-fav {
    width: 100%;
    text-align: center;
    height: 30px;
    display: flex;
    position: relative;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.divisor-fav::before {
    position: absolute;
    content: "";
    width: 100%;
    background-color: var(--color-fav);
    height: 1px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}

.divisor-fav span {
    background-color: #ffffff;
    position: relative;
    z-index: 3;
    padding: 0.2rem 2rem;
}
.color-primary
{
  color:var(--color-fav);
}
.textoNoRegistrado a.color-primary-important
{
  color:var(--color-fav) !important;
}

.fsetlogin a.color-primary-important
{
  color:var(--color-fav) !important;
}

.formato-card-loginregistro_registro
{
      display: block;
      width: 90%;
      margin: 0 auto;
      box-shadow: 0px 3px 10px 0 rgba(0,0,0,0);
      border-radius: 10px;
      box-sizing: border-box;
      padding: 1.5rem;
      background-color: #ffffff;
      margin-bottom: 1.4rem;
      max-width: 500px;  
}
.formato-card-loginregistro
{
      display: block;
      width: 90%;
      margin: 0 auto;
      box-shadow: 0px 3px 10px 0 rgba(0,0,0,0);
      border-radius: 10px;
      box-sizing: border-box;
      padding: 1.5rem;
      background-color: #ffffff;
      margin-bottom: 1.4rem;
      max-width: 500px;
}

.formato-card-loginregistro .contenedor-tarje-res-fav, .formato-card-loginregistro_registro .contenedor-tarje-res-fav
{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
}

main#__fv_cuerpo.main-centra-login {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}
#__fv_menu_accion_dsktop a#__mt_registrarse {
    margin: 0;
    height: 90%;
}

a#__mt_registrarse {}

#__fv_menu_accion_dsktop a#__mt_iniciarsession {
    margin: 0 0 0 0.5rem;
    height: 90%;
    background-color: transparent;
    border: none;
}
.formato-card-loginregistro_registro #reservas {
    overflow: unset;
}
.form-checkbox .form-icon
{
  width: 15px;
  height: 15px;
}
form#reservas select#__fvr_pais {
    border-color: var(--color-fav-oscuro);
    padding: 0rem 0.5rem;
    border-radius: 7px;
    height: 35px;
}

span.muestra-persona-aviso {
    margin: 0.1rem auto 2rem auto;
    display: inline-block;
    padding: 0.3rem 2rem;
    border-radius: 5rem;
    box-shadow: 0 0 0 1px var(--color-fav);
    color: var(--color-fav);
}
picture.logo-modal-aviso-empresa {
    max-width: 190px;
    display: block;
    margin: 0 auto;
}

p.h4.p-persona-aviso {
    text-align: center;
    color: var(--color-fav-oscuro);
    font-family: 'bold';
    padding: 0 1rem;
    max-width: 500px;
    margin: 0 auto 1rem auto;
}

a.btn.btn-fav.btn-persona-aviso {
    margin: 2rem auto 2rem auto;
    display: block;
    max-width: 300px;
}
a.cont-miperfil {
    gap: 0.5rem;
}

a.cont-miperfil img {
    height: 27px;
}

.contenedor-resultado-perfil {
    display: flex;
    width: 100%;
    box-shadow: 0px 3px 10px 0 rgba(0,0,0,.2);
    border-radius: 10px;
    box-sizing: border-box;
    padding: 1rem 1rem;
    background-color: #ffffff;
    max-width: 500px;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
}
span.perfil-cont-nombre-ape span {display: block;text-transform: capitalize;color: var(--color-fav-oscuro);}
span.perfil-cont-nombre-ape #correo {
    text-transform: lowercase;
}
.contenedor-resultado-perfil-doble
{
    display: flex;
    width: 100%;
    box-shadow: 0px 3px 10px 0 rgba(0,0,0,.2);
    border-radius: 10px;
    box-sizing: border-box;
    padding: 1rem 1rem;
    max-width: 500px;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
    background: url(../assets/iconos/arrow-der.svg) no-repeat scroll 95% 2rem / auto 10px #ffffff;
}
.flex-crb-perfil._maxAnchoDesk {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
}
.contenedor-resultado-perfil-doble.flex-crb._maxAnchoDesk picture img {
    height: 35px;
}
.no-capitalize
{
  text-transform: initial !important;
}
.color-initial-important
{
  color: initial !important;
}
span.perfil-cont-nombre-ape span.h4 {font-family: 'bold';}
._bg_gris
{
  background-color:#ECECEC !important;
}
p.bajada-cancelar {
    display: block;
    width: 100%;
    padding: 1rem 1rem;
    max-width: 500px;
    margin: 1rem auto 0 auto;
    color: var(--color-fav-oscuro);
}

p.bajada-cancelar a {
    color: var(--color-fav) !important;
    text-decoration: underline;
}
input::placeholder {
    color: #4B5563 !important;
}
.links-tyc a.btn-fav-link
{
  background-color: transparent;
  padding: 0.2rem 1rem;
  color: #ffffff !important;
}
.submenu_interna.noafter::after {
    content: none !important;
}
.fondo-gris
{
  background-color: #F4F4F4 !important;
}
.contenedor-tarje-res-fav #_regresaralinicio
{
  color: #ffffff !important;
}
.c-clave-recuperar
{
  width: 100% ;
}
#_poseeLoginInterno
{
  display: none;
}

div.max-reserve
{
  max-width: 100%;
  width: 100%;
}
div.max-width-fcard
{
  max-width: 400px;
  margin: 0.5rem;
}
.cont_fv_info.flex-1-0-100 span {
    font-family: 'bold';
}
div.v-status {
    text-align: center !important;
    width: fit-content;
    padding: 0.3rem 0.5rem;
    border-radius: 5rem;
}
.flex-1-0-100
{
  flex: 1 0 100px;
}
.d-nombre-perf
{
  color: #ffffff;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: flex-start;
  justify-content: flex-start;
  align-items: flex-start;
}
a.cont-miperfil-mobile {
    display: flex;
    gap: 1rem;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    margin: 1rem 0 0 1rem;
}
.arrow-der-icono
{
  background: url(../assets/iconos/arrow-der.svg) no-repeat scroll 100% 70% / auto 10px transparent;
  display: inline-block;
  width: 100%;
}