/**Definicion de variables**/
:root {
  --colorPrimary: #1ab6d1;
  --fontPrimary:"Open Sans", sans-serif;
  --fontSecondary:"Oooh Baby", cursive;
  --white: #fff;
  --bRadius:10px;
}
/**Generic**/
body{
    font-size:18px;
    color:#000;
    font-family:var(--fontPrimary);
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
main{
    overflow-x:hidden;
}
.img-responsive{
    max-width:100%;
    width:100%;
    object-fit:cover;
    transition:.5s all;
    height:auto;
}
.center{
    text-align:center !important;
}
/*Enlaces*/
a{
    text-decoration:none;
}
/** Paddings y margins **/
.paddTop20 {
  padding-top: 20px !important;
}
.mTop40{
    margin-top:40px !important;
}
.mTop60{
    margin-top:60px !important;
}
.mBT40 {
  margin-bottom: 40px !important;
}
.mTop20 {
  margin-top: 20px !important;
}
.paddTop40 {
  padding-top: 40px !important;
}
.paddTop60 {
  padding-top: 60px !important;
}
.paddBT60 {
  padding-bottom: 60px  !important;
}
.padd0{
    padding:0 !important;
}
.htt-text-image ul{
    padding-left:0;
    list-style:none;
}
.white{
    color:var(--white) !important;
}
/*Header*/
header{
    background: rgba(0, 0, 0, .002);
}
.httHeaderAbsolute{
    z-index:2;
    padding:1rem;
}
.logo a{
    display:inline-block;
}
.logo img{
    filter:brightness(0) invert(1);
}
.container-header>.row{
    align-items:center;
}
.container-header .user-access>.row{
    float:right;
    flex-wrap:nowrap;
}
.editMode .container-header .user-access>.row{
    flex-wrap:wrap;
}
.container-header .user-access>.row>div{
    min-width:max-content;
}
.open-selector-language span{
    position:relative;
    margin-right: 10px;
    float: left;
    font-size: 16px;
    color: var(--white);
    min-height:24px;
    text-transform:uppercase;
}
.group-languages-texts .btn-secondary.open-selector-language {
    background: transparent;
    border: 0;
    color: var(--white);
    position: relative;
    font-style: normal;
    width:max-content;
}
.open-selector-language span:after{
    content: "\f107";
    font-family: fontawesome;
    color: var(--white);
    font-size: 11px;
    background-color: transparent;
    margin-left:3px;
    transition: all 0.3s;
    height:100%;
    display:inline-block;
}
.hotel-login-text,.hotelLogin-wrapper .hotel-login-text-high{
    color:var(--white);
}
.hotelLogin-content svg,
.mybooking-content svg {
    filter: invert(1) !important;
}
.breadcrumb {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 20px;
    margin-top: 10px;
}
.breadcrumb-item a{
    color:var(--colorPrimary);
}
.breadcrumb-item{
    font-size:16px;
}
:focus-visible{
    box-shadow:none !important;
    outline: none !important;
    border: 3px solid #bdf5ff !important;
    border-radius:0 !important;
}
#app-container *:focus-visible{
    border:unset !important;
}
/*Hero*/
.hero-section {
    height: 60vh;
    position: relative;
}
.hero-section figure {
    position: relative;
    height: 100%;
}
.hero-section figure img.img-responsive {
    height: 100%;
}
.hero-section .overlay {
    position: absolute;
    top:0;
    left:0;
    z-index: 1;
    padding: 2rem;
    width:100%;
    height: 100%;
    display:flex;
    justify-content:center;
    align-items:center;
    background-color: rgba(0, 0, 0, .3);
}
.hero-section .overlay p.sub-title-hero{
    font-size:2.5rem;
    font-family:var(--fontSecondary);
}
.hero-section .overlay p.title-hero{
    font-size:4rem;
    line-height:1;
    display:block;
}
.hero-section .overlay p{
    margin-bottom:0;
}
.hero-section .overlay .caption{
    margin-top:3rem;
}
/*Encabezados*/
h1{
    font-size:4rem;
}
h2{
    font-size:3.5rem;
}
h3{
    font-size:3rem;
}
h1,h2,h3,h4{
    font-weight:500;
    font-family:var(--fontPrimary);
    color:var(--colorPrimary);
}
h1.title-error span{
    font-size: 8rem;
    display: block;
}
p.sub-title{
    font-size:2rem;
}
/*Botones*/
.btn-corpo{
    color:var(--white);
    background:var(--colorPrimary);
    font-size:20px;
    padding:.6rem 1rem;
    transition:.5s all;
    border-radius:var(--bRadius);
}
.btn-corpo:hover{
    background:transparent;
    color:var(--colorPrimary);
    border:1px solid currentColor;
}
/*Custom navigation*/
.nav-pills {
    justify-content: flex-start !important;
}
.nav-pills .nav-link {
    font-size: 20px;
    color:#000;
    border-radius:var(--bRadius);
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    background-color: var(--colorPrimary);
}
.htt-content-navigation .dropdown button.dropdown-toggle {
    background: var(--colorPrimary);
    border: none;
    font-size: 20px;
    padding: 10px 0;
}
.footer{
    background:var(--colorPrimary);
}
.footer section{
    background:rgba(0,0,0,.002);
}
.footer p, .footer li{
    font-size:16px;
}
p.title-footer{
    font-size:1.8rem;
    font-weight:600;
}
ul.redes{
    display: flex;
    gap: 1rem;
}
.navbar-toggler{
    border:none;
    filter:brightness(0) invert(1);
}
@media(max-width:1024px){
    .logo img{
        max-height:80px;
        width:auto;
    }
    .hotel-login-text-not-logged{
        display:none;
    }
    h1{
        font-size:3rem;
    }
}
@media(max-width:767px){
    .container-header{
        padding:0;
    }
    .httHeaderAbsolute{
        padding:1rem 0;
    }
    .container-header>.row>div{
        padding:0 8px;
    }
    .container-header .user-access>.row>div{
        padding-right:0;
        padding-left:0;
    }
    .nav-link{
        color:#000;
        font-size:20px;
    }
    .footer p, .footer ul{
        text-align:center;
    }
    .footer ul.redes{
        justify-content:center;
    }
    .footer>.container-fluid>.row>div{
        margin-top:20px;
    }
}