/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

#sb-body, #sb-loading {
    background-color: transparent !important;
}
#sb-overlay{
    opacity: 0.7 !important;
}
#sb-wrapper-inner {
    border: 0 !important;}

    #pop{
        transition: ease .5s;
    }

    #pop:hover{
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    transition: ease .5s;
    }
html {
    color: #686868;
    font-size: 1em;
    line-height: 1.4;
}

#aviso{
    margin: 0 auto;
    bottom: 0;
    right: 0;
    position: fixed;
    width: 100%;
    /*padding: 30px 10px 30px 10px;*/
    /*background: #FFF;*/
    -webkit-box-shadow: 4px 4px 23px -6px rgba(0,0,0,0.75);
    -moz-box-shadow: 4px 4px 23px -6px rgba(0,0,0,0.75);
    box-shadow: 4px 4px 23px -6px rgba(0,0,0,0.75);
    color: #000;
    text-align: center;
	}

#comentarios{
    background: url('../img/soledad-tripadvisor.jpg');
    background-size: cover;
    background-position:center center;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
  Scrollbar
   ========================================================================== */

::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
::-webkit-scrollbar-button {
  display: none;
}
::-webkit-scrollbar-thumb {
  background: #FF851B;
  border: none;
  border-radius: 16px;
}
::-webkit-scrollbar-thumb:hover {
  background: #FFC269;
}
::-webkit-scrollbar-thumb:active {
  background: #FFC269;
}
::-webkit-scrollbar-track {
  background: #FFF;
  border: none;
  /*border-radius: 39px;*/
}
::-webkit-scrollbar-track:hover {
  background: #EEE;
}
::-webkit-scrollbar-track:active {
  background: #3e2723;
}
::-webkit-scrollbar-corner {
  background: transparent;
}

/* ==========================================================================
   Fonts
   ========================================================================== */

@font-face {
    font-family: 'Didot';
    src: url('../fonts/Didot-HTF-L42-Light-Ital.eot');
    src: url('../fonts/Didot-HTF-L42-Light-Ital.woff2') format('woff2'),
    url('../fonts/Didot-HTF-L42-Light-Ital.woff') format('woff'),
    url('../fonts/Didot-HTF-L42-Light-Ital.ttf') format('truetype'),
    url('../fonts/Didot-HTF-L42-Light-Ital.svg#Didot-HTF-L42-Light-Ital') format('svg'),
    url('../fonts/Didot-HTF-L42-Light-Ital.eot?#iefix') format('embedded-opentype');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'Galano';
    src: url('../fonts/GalanoGrotesque-Light.eot');
    src: url('../fonts/GalanoGrotesque-Light.woff2') format('woff2'),
    url('../fonts/GalanoGrotesque-Light.woff') format('woff'),
    url('../fonts/GalanoGrotesque-Light.ttf') format('truetype'),
    url('../fonts/GalanoGrotesque-Light.svg#GalanoGrotesque-Light') format('svg'),
    url('../fonts/GalanoGrotesque-Light.eot?#iefix') format('embedded-opentype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Galano';
    src: url('../fonts/GalanoGrotesque-Regular.eot');
    src: url('../fonts/GalanoGrotesque-Regular.woff2') format('woff2'),
    url('../fonts/GalanoGrotesque-Regular.woff') format('woff'),
    url('../fonts/GalanoGrotesque-Regular.ttf') format('truetype'),
    url('../fonts/GalanoGrotesque-Regular.svg#GalanoGrotesque-Regular') format('svg'),
    url('../fonts/GalanoGrotesque-Regular.eot?#iefix') format('embedded-opentype');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'GalanoB';
    src: url('../fonts/GalanoGrotesque-Bold.eot');
    src: url('../fonts/GalanoGrotesque-Bold.woff2') format('woff2'),
    url('../fonts/GalanoGrotesque-Bold.woff') format('woff'),
    url('../fonts/GalanoGrotesque-Bold.ttf') format('truetype'),
    url('../fonts/GalanoGrotesque-Bold.svg#GalanoGrotesque-Bold') format('svg'),
    url('../fonts/GalanoGrotesque-Bold.eot?#iefix') format('embedded-opentype');
    font-weight: normal;
    font-style: normal;
}

/*@font-face {
    font-family: 'Galano';
    src: url('../fonts/GalanoGrotesque-ExtraBold.eot');
    src: url('../fonts/GalanoGrotesque-ExtraBold.woff2') format('woff2'),
    url('../fonts/GalanoGrotesque-ExtraBold.woff') format('woff'),
    url('../fonts/GalanoGrotesque-ExtraBold.ttf') format('truetype'),
    url('../fonts/GalanoGrotesque-ExtraBold.svg#GalanoGrotesque-ExtraBold') format('svg'),
    url('../fonts/GalanoGrotesque-ExtraBold.eot?#iefix') format('embedded-opentype');
    font-weight: bolder;
    font-style: normal;
}*/

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

* {
    box-sizing: border-box;
}

body {
    font-family: "Galano", sans-serif ;
    font-weight: normal;
    font-size: 16px;
    background: #111;
    /*overflow: hidden;*/
}

main {
    height: 100%;
    position: relative;
    overflow: hidden;
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    transition: all 1s ease;
    background-color: #FFF;
}

section {
    width: 100%;
    position: relative;
    overflow: hidden;
}

a {
    color: #FFF;
    font-size: 14px;
    font-weight: normal;
}

a:hover,
a:focus {
    text-decoration: none;
}

a.link {
    color: #2c87d6;
}

footer {
    position: relative;
    padding: 50px 0 20px 0;
    background: #111;
    color: #FFF;
    font-size: 12px;
    letter-spacing: 1px;
}

    footer ul li {
        list-style-type: none;
        font-weight: 300;
        padding: 3px 0;
    }

    footer ul li a{
        transition: all 0.3s ease;
        padding-left: 4px;
    }

    footer ul li a:not(.language):hover {
        color: #FF851B;
        padding-left: 8px;
    }

    footer .language {
        padding-right: 4px;
        padding-bottom: 4px;
       
    }

    footer .language:hover {
        background: #FF851B;
        color: #FFF;
    }

    .newsletter {
        display: inline-block;
    }

    .newsletter input {
        width: 74%;
        background: transparent;
        border: 1px solid #b1ab7d;
        border-right: none;
        height: 40px;
        float: left;
        padding-left: 8px;
        transition: all 0.3s ease;
    }

    .info-paquete{
        background-color: #f2f2f2;
        padding: 100px 100px;
    }

    .luxury-paquete{
        position: absolute; bottom: 30px; right: 30px; opacity: 0.3;
    }


    .newsletter button {
        background: #b1ab7d;
        border: 1px solid #b1ab7d;
        width: 25%;
        float: left;
        color: #111;
        padding: 9px 0 12px;
        transition: all 0.3s ease;
    }

    .newsletter button:hover {
        background: #FF851B;
        color: #efefef;
        border-top-color: #FF851B;
        border-right-color: #FF851B;
        border-bottom-color: #FF851B;
        border-left-color: #FF851B;
    }

    .newsletter input[type="email"]:focus {
        border-color: #FF851B;

        /*box-shadow: 0 1px 1px #FF851B inset, 0 0 8px #FF851B;*/
        outline: 0 none;
    }

    .newsletter input[type="email"]:focus + button {        
        border-top-color: #FF851B;
        border-right-color: #FF851B;
        border-bottom-color: #FF851B;
        border-left: none;
    }

    .social {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .social a:hover {
        color: #ff851b;
        transition: all 0.3s ease;
    }

    .menu .fa {
        font-size: 1.2rem;
    }

    .menu .fa-share-alt {
        cursor: pointer;
        line-height: 80px;
        transition: all 0.3s;
    }

    .menu div.menu-item-has-children:hover .fa-share-alt{
        color: #ff851b;
    }

    .menu div.menu-item-has-children:hover > .social {
        /*top: 50px;*/
        display: flex;
        /*transition: all 0.3s;*/
    }

    .menu .fa-share-alt:after {
        font-family: FontAwesome;
        content: '\f107';
        position: absolute;
        top: 0.3rem;
        font-size: 1.1rem;
        font-weight: 900;
        opacity: 0.8;
        right: -18px;
        margin-top: -6px;
    }

    .menu div.menu-item-has-children {
        position: relative;
        height: 100%;
        margin-right: 40px;
    }

    .menu div.menu-item-has-children .social {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        border-top: 1px solid #FFF;
        /*background: #FFF;*/
        flex-direction: column;
        width: 40px;
    }

    .menu div.menu-item-has-children .social a {
        width: 100%;
        text-align: center;
        transition: all 0.5s;
    }


    .fixed-nav .menu-item-has-children .social {       
        box-shadow: 0 3px 8px #bcbcbc;
    }

    .fixed-nav .menu-item-has-children .social a {
        background: #FFF;
        /*border-bottom: none;     */
    }


    .menu div.menu-item-has-children .social .fa {
        padding: 15px 0;
    }


/**Helper Classes & Overrides**/

.top0 {
    top: 0;
}

.flex-column-center {
    display: flex;
    flex-flow: column wrap;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.flex-column-around {
    display: flex;
    flex-flow: column wrap;
    height: 100%;
    justify-content: space-around;
    align-items: center;
}

.flex-row-around {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items:center;
}

.flex-row-center {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items:center;
    height: 100%;
}

.flex-change-order {
    display: flex;
    flex-flow: row wrap;
}

.no-scroll {
    overflow: hidden;
}

.gray-filter {
    filter: grayscale(90%);
}

.mobile-image {
    height: inherit;
}

.hidden-mobile {
    display: block;
}

.hidden-large {
    display: none!important;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next{
    background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23FFF'%2F%3E%3C%2Fsvg%3E");
    left: 20px;
    transition: left 0.5s ease;
}

.swiper-button-next, 
.swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23FFF'%2F%3E%3C%2Fsvg%3E");
    right: 20px;
    transition: right 0.5s ease;
}

.swiper-button-details {
    position: absolute;
    bottom: -20px;
    left: 50%;
    margin-left: -50px;
    width: 100px;
    height: 250px;
    transform: rotateZ(90deg);
    transform-origin: center;
    z-index: 10;
    cursor: pointer;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23FFF'%2F%3E%3C%2Fsvg%3E");
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat;
    animation: down 2s infinite;
    transition: bottom 0.5s ease;
}

.sbp-hidden {
    left: -50px;
}

.sbn-hidden {
    right: -50px;
}

.sbd-hidden {
    bottom: -200px;
}

.rnm-visible {
    bottom: 0!important;
}

.table {
    display: table;
}

.table-cell {
    display: table-cell;
    vertical-align: middle;
}

.list-center {
    list-style-type: none;
    padding-left: 0;
}

.border-right {
    border-right: 1px solid #fff;
}

.border-left {
    border-left: 1px solid #bcbcbc;
}

.border-bottom-white {
    border-bottom: 1px solid #fff;
}

.border-bottom {
    border-bottom: 1px solid #bcbcbc;
}

.divider {
    width: 100%;
    height: 1px;
    background: #999;
    /*margin-top: 15px;*/
}
hr.paquetes {
    border: 1px dashed grey; height: 0; width: 90%;
}
.separador{
width: 100px;
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: -275px;
    right: 0;
    bottom: 0;
    top: 20%;
    margin-top: auto;
    margin-bottom: auto;
    opacity: .3;
}

.section-bg-image {
    background-size: cover;
    position: relative;
    min-height: 600px;
    height: 100vh;
    text-align: center;
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-items: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.section-bg-image h3,
.section-bg-image h2,
.section-bg-image p,
.section-bg-image a {
    z-index: 1;
}

.box-hover {
    transition: all 0.3s;
}

.box-hover:hover {
    box-shadow: 6px 6px 8px #626262;
}

/**Grid | Sizes**/

.col-center {
    float: none;
    margin: 0 auto;
}

.col-xs-1-5 {
    float: left;
    width: 14.66667%;
}

.img-responsive {
    width: 100%;
}

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

/**Buttons**/

.btn {
    /*border-radius: 40px;*/
    padding: 5px 20px 10px;
    background: transparent;
    letter-spacing: 3px;
    font-size: 1.2rem;
    line-height: 1.2rem;
    text-align: center;
}

#btn-booking {
    position: fixed;
    text-align: center;
    font-size: 1rem;
    letter-spacing: 3px;
    top: 50px;
    right: 0;
    padding: 8px 12px;
    transform: rotateZ(-90deg);
    transform-origin: right bottom;
    background: #FF851B;
    color: #FFF;
    z-index: 12;
    /*border-top-right-radius: 5px;*/
    /*border-top-left-radius: 5px;*/
    transition: all 0.2s ease;
}

#btn-booking::before {
    content: '';
    position: absolute;
    border: #FF851B solid 6px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-animation: pulse 3s infinite;
    -o-animation: pulse 3s infinite;
    animation: pulse 3s infinite;
}

#btn-booking:hover {
    background: #FFC53D;
    color: #FFF;
}

.btn-orange {
    border: 1px solid #FF851B;
    color: #FF851B;
    transition: all 0.3s ease;
}

.btn-orange:hover {
    color: #FFC53D;
    border-color: #FFC53D;
}

.btn-orange-inverted {
  color: #FFF;
  background-color: #FF851B;
  border: none;
}

.btn-orange-inverted:hover {
  color: #FFF;
  background-color: #d36708;
  border: none;
}

.btn-action {
    background: #FF851B;
    color: #FFF;
    padding: 15px 30px 20px;
    transition: all 0.3s ease;
}

.btn-action:hover,
.btn-action:focus, 
.btn-action:active {
    background: #FFC53D;
    color: #FFF;
    outline: none;
}

.btn-white {
    border: 1px solid #FFF;
    color: #FFF;
    transition: all 0.3s ease;
}

.btn-white:hover,
.btn-white:focus, 
.btn-white:active {
    border: 1px solid #FF851B;
    color: #FF851B;
    outline: none;
}

.btn-green {
    border: 1px solid #BFD63A;
    color: #777;
    transition: all 0.3s ease;
}

.btn-green:hover,
.btn-green:active,
.btn-green:focus,
.btn-green.active-menu {
    background: #BFD63A;
    /*color: #FFF;*/
    outline: none;
}

.btn-black {
    color: #333;
    border: 1px solid #333;
    transition: all 0.3s ease;
}

.btn-black:hover {
    color: #FF851B;
    border-color: #FF851B;
}

.btn-block{
    display: block;
}

.btn-rooms {
    background: #FFF;
    border: none;
}

.btn-rooms:not(:last-of-type) {
    border-right: 1px solid #bcbcbc;
}

.btn-bg-black {
    background: #111;
    border: none;    
}

.btn-rooms,
.btn-bg-black {
    padding: 15px 30px 20px;
    font-size: 14px;
    font-weight: normal;
    color: inherit;
    text-align: center;
    transition: all 0.2s ease;
    flex: 1;
}

.btn-rooms:hover,
.btn-rooms:focus,
.btn-rooms:active,
.btn-bg-black:hover,
.btn-bg-black:focus,
.btn-bg-black:active,
.btn-rooms.active-room {
    background: #ff851b;
    color: #FFF;
    outline: none;
}

/**Fonts**/

.title {
    text-align: center;
    font-size: 3rem;
    /*font-family: 'GalanoB'!important;*/
}

.cursive {
    font-family: "Didot", cursive !important;
}

.lighter {
    font-weight: 300;
}

.text-shadow {
    text-shadow: 1px 1px 4px #121212;
}

.text-shadow-soft {
    text-shadow: 1px 1px 7px #121212;
}

.f18 {
    font-size: 18px;
}

.f40 {
    font-size: 44px;
}

.ls {
    letter-spacing: 5px;
}

/**paddings**/

.no-padding {
    padding: 0;
}

.pt-10 {
    padding-top: 10px;
}

.pt-20 {
    padding-top: 20px;
}

.pt-50 {
    padding-top: 50px;
}

.pb-10 {
    padding-bottom: 10px;
}
.pb-20 {
    padding-bottom: 20px;
}

.padding-card {
    padding: 50px;
}

.pl-20 {
    padding-left: 20px;
}

.plr-5 {
    padding-left: 5%;
    padding-right: 5%;
}

.plr-10 {
    padding-left: 10%;
    padding-right: 10%;
}

/**Margins**/

.no-margin {
    margin: 0;
}
.mb-20 {
    margin-bottom: 20px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mb-50 {
    margin-bottom: 50px;
}

.mb-80 {
    margin-bottom: 80px;
}

.mt-0 {
  margin-top: 0px;
}

.mt-10 {
    margin-top: 10px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-50 {
    margin-top: 50px;
}

.mt-60 {
    margin-top: 60px;
}

.mt-80 {
    margin-top: 80px;
}

/**Heights**/

.h-200 {
    height: 200px;
}

.h-300 {
    height: 300px;
}

.h-400 {
    height: 400px;
}

.h-500 {
    height: 500px;
}


/**Colors**/

.orange {
    color: #FF851B;
}

.pink {
    color: #B20053;
}

.white {
    color: #FFF;
}

.gray {
    color: #686868;
}

.black {
    color: #111;
}

.green {
    color: #A5B50F;
}

.bg-orange {
    background: #FF851B;
}

.bg-white {
    background: #FFF;
}

.bg-black {
    background: #181818;
}

.bg-gray {
    background: #f9f9f9;
}

.bg-green{
    background: #BFD63A;
}

/*.bg-overlay:before {
    z-index: 1;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0.1) 100%);
    background: -o-linear-gradient(bottom, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0.1) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0.1) 100%);
}*/

/**Elements**/

.line-point,
.line-point-orange,
.line-point-green,
.line-point-white {
    height: 1px;
    position: relative;
}

.line-point:before,
.line-point-orange:before,
.line-point-green:before,
.line-point-white:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -4px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.line-point,
.line-point:before {
    background: #111;
}

.line-point-orange,
.line-point-orange:before {
    background: #FF851B;
}

.line-point-white,
.line-point-white:before {
    background: #FFF;
}

.line-point-green,
.line-point-green:before {
    background: #BFD63A;
}

.slp-fixed {
    width: 10%;
    position: fixed;
    bottom: 30px;
    left: 0;
    /*padding: 10px 0;*/
    background: rgba(0,0,0,0.5);
    z-index: 10;
    transition: all 0.2s;
}

.slp-fixed img {
    width: 70%;
    float: right;
}

.slp-absolute {
    position: absolute;
    top: 50px;
    bottom: auto!important;
    width: 13%;
    background-color: #111;
}

/*.slp-absolute img {
    width: 80%;
}*/

/**Preloader**/

#preloader {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: #111;
    z-index: 15;
    display: flex;
    justify-content: center;
    align-items: center;
}

/**Navigation Menu**/

nav {
    width: 100%;
    padding: 5px 0;
    position: absolute;
    height: 80px;
    top: 0;
    left: 0;
    transition: all 0.5s ease 0s;
    z-index: 12;
}

.fixed-nav {
    position: fixed;
    background: #FFF;
    /*box-shadow: 0 1px 3px #bcbcbc*/
    border: 1px solid #e2e2e2;
}

nav.fixed-nav {
    padding: 0;    
    transition: all 0.5s ease 0s;
    /*transition: top 0.3s ease 0.5s;*/
}

.menu {
    position: relative;
    /*width: 90%;*/
    height: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu ul.menu-links {
    flex: 1 auto;
    height: 100%;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-around;
    list-style-type: none;
    padding-left: 0;
}

.menu a,
.nav-mobile a {
    position: relative;
    display: inline-block;
    font-weight: bold;
    color: inherit;
}

.menu a:hover,
.menu a:focus {
    color: #FF851B;
    transition: all 0.3s ease;
}

.menu a.active {
    color: #FF851B;
}

.menu a.nav {
    padding: 0 10px;
}

.menu a.nav:after,
.menu a.nav:before {
    content: "";
    position: absolute;
    left: 25%;
    width: 50%;
    height: 1px;
    background: #FF851B;
    opacity: 0;
    transition: all 0.3s ease;
}

.menu a:after {
    top: -10px;
}

.menu a:before {
    bottom: -15px;
}

.menu a:not(.languaje):hover:after {
    opacity: 0.9;
    top: 0px;
}

.menu a:not(.languaje):hover:before {
    opacity: 0.9;
    bottom: -5px;
}

.menu a.languaje {
    padding: 2px 10px 7px;
    background: #675853;
    color: #FFF;
}

.menu a.nav-icon,
.nav-mobile a.nav-icon-mobile {
    width: 50px;
}

.menu ul li.menu-item-has-children {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu li.menu-item-has-children a.nav:after,
.menu li.menu-item-has-children a.nav:before {
    width: 0;
    height: 0;
}

.menu ul.sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    padding: 15px 20px 5px 20px;
    list-style-type: none;
    border-top: 1px solid #FFF;
    transition: all 0.4s;
}

.fixed-nav .menu ul.sub-menu {
    background: #FFF;
    border: 1px solid #e2e2e2;

}

.menu li.menu-item-has-children:hover > ul.sub-menu {
    display: block;
}

.menu ul.sub-menu li {
    padding-bottom: 15px ;
}

.nav-mobile {
    display: none;
    /*position: relative;*/
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #FFF;
    box-shadow: 0 1px 3px #bcbcbc;
}

.nav-mobile a.nav-icon-mobile {
    margin-top: 10px;
    margin-left: 15px;
    margin-right: 15px;
    float: left;
}

.nav-mobile > img {
    width: 40%;
    height: 64px;
    margin-left: 26%;
}

.nav-icon-menu {
    width: 25px;
    height: 18px;
    position: absolute;
    top: 50%;
    left: 25px;
    margin-top: -9px;
    display: inline-block;
   /* border-left: 1px solid #555;
    border-right: 1px solid #555;*/
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .8s ease-in-out;
    -moz-transition: .8s ease-in-out;
    -o-transition: .8s ease-in-out;
    transition: .8s ease-in-out;
    cursor: pointer;
}

.nav-icon-menu span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #111;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.nav-icon-menu span:nth-child(1) {
  top: 0;
}

.nav-icon-menu span:nth-child(2),.nav-icon-menu span:nth-child(3) {
  top: 8px;
}

.nav-icon-menu span:nth-child(4) {
  top: 16px;
}

.nav-icon-menu.open span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%;
}

.nav-icon-menu.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.nav-icon-menu.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.nav-icon-menu.open span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%;
}

.header-menu {
    display: none;
    width: 100%;
    padding: 15px;
    margin-bottom: 40px;
    background: #675853;
    color: #FFF;
}

/** MODAL **/

.md-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    visibility: hidden;
    top: 0;
    left: 0;
    z-index: 1000;
    opacity: 0;
    overflow-y: auto;
    background: rgba(0,0,0,0.75);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    transition: all 1s ease;
}

.md-overlay-close {
    position: absolute;
    right: 30px;
    top: 30px;
    color: #FFF;
    cursor: pointer;
    z-index: 1010;
}


.md-overlay.md-show {
    opacity: 1;
    visibility: visible;
}


/* Effect 16:  Blur */

.md-overlay.md-show ~ main {
    -webkit-filter: blur(10px);
    -moz-filter: blur(10px);
    filter: blur(10px);
    /*margin: -15px;
    padding: 15px 10px;*/
}

.md-effect-16 .md-content {
    -webkit-transform: translateY(-5%);
    -moz-transform: translateY(-5%);
    -ms-transform: translateY(-5%);
    transform: translateY(-5%);
    opacity: 0;
}

.md-show.md-effect-16 .md-content {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}

/***Content modal History***/

.modal-img-history {
    position: fixed;
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.modal-content-history {
    color: #FFF;
    padding: 50px 0;
    min-height: 100vh;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
}

/***Image Effect***/

.img-effect-overlay {
    position: absolute;
    top: 0;
    width: 100%;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.6);
    transition: all 0.4s ease;
    opacity: 0;
    overflow: hidden;
}

.img-effect a:before {
    content: "";
    position: absolute;
    top: 10%;
    left: 10%;
    width: 0;
    height: 0;       
    border-top:0px solid #efefef;
    border-left:0px solid #efefef;
    z-index: 10;
    transition: all 0.4s ease;
}

.img-effect a:after {
    content: "";
    position: absolute;
    bottom: 10%;
    right: 10%;
    width: 0;
    height: 0;       
    border-bottom:0px solid #efefef;
    border-right:0px solid #efefef;
    transition: all 0.4s ease;
}

.img-effect-subtitle, 
.img-effect-subtitle2 {
    position: absolute;
    bottom: 20%;
    left: 8px;
    right: 7px;
    color: #fff;
    text-align: center;
    transition: all 0.3s ease;
    opacity: 0;
}

.img-effect-title,
.img-effect-icon {
    position: absolute;
    top: 20%;
    font-size: 1.5rem;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: .85rem;
    color: #FFF;
    transition: all 0.3s ease;
    opacity: 0;
}

.img-effect-title2 {
    position: absolute;
    top: 40%;
    width: 36%;
    left: 32%;
    background: rgba(0,0,0,0.6);
    text-align: center;
    padding: 5px 0 10px;
    letter-spacing: 2px;
    transition: all 0.3s ease;
}

.img-effect a:hover .img-effect-overlay,
.img-effect a:hover .img-effect-icon,
.img-effect a:hover .img-effect-subtitle,
.img-effect a:hover .img-effect-subtitle2,
.img-effect a:hover .img-effect-title {
    opacity: 1;
}

.img-effect a:hover .img-effect-subtitle {
   bottom: 38%;
}

.img-effect a:hover .img-effect-subtitle2 {
   bottom: 33%;
}

.img-effect a:hover .img-effect-title,
.img-effect a:hover .img-effect-icon {
    top: 38%;
}

.img-effect a:hover .img-effect-title2 {
    color: #FFF;
    top: 33%;
    background: rgba(0,0,0,0);
    border-bottom: 1px solid #FFF;
    padding-bottom: 3%;
}

.img-effect a:hover:before {
    border-top:1px solid #efefef;
    border-left:1px solid #efefef;
    width: 80%;
    height: 80%;
}

.img-effect a:hover:after {
    border-bottom:1px solid #efefef;
    border-right:1px solid #efefef;
    width: 80%;
    height: 80%;
}

.img-effect a:hover img {
    transform: scale(1.08);
}


/**INDEX**/

#home {
    height: 100vh;
    overflow: hidden;
}

.socials {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 1rem;
}

.socials > a {
  font-size: 1.4rem;
}

.socials a:hover {
  color: #ff851b;
  transition: all 0.3s ease;
}

    #bird {
        position: relative;
        width: 100%;        
        height: 100%;
    }

    #bird::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.1);
        z-index: 1;
    }

    #bird .slick-list,
    #bird .slick-track {
        height: 100%;
    }

    .fade {
        background: #111;
    }

    .fade div.slick-slide{
        background: no-repeat 50% 50%;
        background-size: cover;
/*        opacity: 0!important;*/
    }

    .fade div.kenburns {
        animation: kenburns 7.5s infinite;
    }

    #home div.flex-column-center {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 2;
    }

#home-historia {
    background: #FFF;
}

/*#historia > .row {
    padding: 0;
}*/

/*#historia .row > div {
    padding-left: 0;
}*/


#habitaciones {

    background-image: url(../img/habitaciones001.jpg);
}

/*#habitaciones img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}*/

#habitaciones::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.2);
}

#restaurante {
    background-image: url('../img/boveda1.jpg');
}

#san-valentin{
    background-image: url('../img/san-valentin.jpg');
}

.flex-restaurant-services {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}

#home-eventos {
    background: #FFF;
}
    #home-eventos .row {
        padding: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .fade-espacios {
        width: 100%;
        height: 100%;

    }

    .fade-espacios .slick-list,
    .fade-espacios .slick-track {
        height: 100%;
    }

#comentarios {
    padding: 50px 0 70px;
    /*background: #f2f2f2;*/
    display: flex;
    color: #FFF;
    flex-flow: column wrap;
    align-items: center;
    justify-content: space-between;
}

    .trip-comments {
        width: 100%;
    }

    .trip-comments .slick-dots li button {
        color: #ddd;
    }

    .trip-comments .slick-dots li.slick-active button:before {
        color: #fff;
    }

    .trip-comments .slick-dots li button:before {
        color: #ddd;
    }

#instagram {
    padding: 50px 5%;
    background: #FFF;
}
    #instafeed {
        width: 95%;
        margin: 0 auto;
    }

    #instafeed a {
        position: relative;
        overflow: hidden;
    }

    #instafeed a > img {
        transition: all 0.4s ease;
    }
    
    /*.slick-current > .slide-overlay {
        background: none;
    }*/

    /*.slick-track div:nth-child(2) {
        width: 80%!important;
    }*/

    .slick-prev:before,
    .slick-next:before {
        color: #FF851B;
    }

    .slick-slider .slick-track {
        display: flex;
        /*justify-content: center;*/
        align-items: center;
    }

#home-certificaciones {
    padding: 50px 0 70px;
    /*background: #f2f2f2;*/
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: space-between;
}

#home-certificaciones img:not(#CDSWIDCOELOGO) {
    padding: 20%;
}

/**HISTORIA**/

#historia {
    background-image: url(../img/hotel_retro.jpg);
    background-position: center bottom;
}

#historia::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.4);
}

#grid {
    position: relative;
    /*padding-top: 60px;*/
    width: 100%;
    background:#FFF;
    /*height: 100vh;*/
}

.grid-image a img{
    /*position: relative;*/
    will-change: transform;
    transition: transform 0.2s ease-in-out;
}

.grid-image {
    overflow: hidden;
    z-index: 1;
}

.historia-title {
    position: relative;
}

.historia-title::before {
    position: absolute;
    content: "";
    left: -15%;
    top: 16px;
    width: 10%;
    height: 4px;
    background:#555;
}

.historia-title::after {
    position: absolute;
    content: "";
    left: -6%;
    top: 13px;
    width: 10px;
    border-radius: 50%;
    height: 10px;
    background:#555;
}

.grid-image a:hover .grid-year {
    color: #FFF;
}


/**HABITACIONES**/

.slider-habitaciones-header {
    padding-top: 80px; 
    /*padding-bottom: 80px; */
}

.sub-menu-tabs {
    width: 100%;
    /*padding: 30px;*/
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: center;
    align-content: stretch;
    /*height: 150px;*/
}

#rooms-nav-selector {
    display: none;
    /*margin-top: 64px;*/
    background: #675853;
}

#rooms-nav-selector button{
    width: 100%;
    font-size: 14px;
    letter-spacing: 2px;
    text-align: right;
    color: #FFF;
    padding: 15px 0;
    border: none;
    background: transparent; 
}

#rooms-nav-selector button .fa {
    margin-right: 25px;
    margin-left: 25px;
    font-size: 1rem;
}

#rooms-nav-selector button:hover,
#rooms-nav-selector button:active,
#rooms-nav-selector button:focus {
    background: #ff851b;
    color: #fff;
    outline: none;
}

#rooms-slider {
    padding: 0;
    min-height: 600px;
    height: calc(100vh - 60px);
    width: 100%;
    position: relative;
    /*background: #ff851b;*/
}

.room-gallery {
    width: 100%;
    height: 100%;
}

.room-gallery .swiper-slide {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; 
}

.rooms-gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0.1) 100%);
    background: -o-linear-gradient(bottom, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0.1) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0.1) 100%);
    transition: all 1s ease;
}

.rgo-hidden {
    opacity: 0;
    z-index: 0;
}

.rooms-slider-title {
    position: absolute;
    bottom: 50%;
    left: 0;
    width: 100%;
    /*z-index: 7;*/
}

.rooms-gallery-options {
    position: absolute;
    bottom: 50px;
    left: 0;
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
    justify-content: center;
    /*z-index: 7;*/
}

.rooms-gallery-options button {
    margin: 0 30px;
    font-size: 14px;
}

#room-details-info {
    background: #FFF;
    overflow: hidden;
    padding: 50px 0 80px;
    display: none;
}

.service-container{
    margin-left: 4%;
}

.service-container .text-vertical {
    position: absolute;
    top: -56px;
    left: 20px;
    transform: rotateZ(-90deg);
    transform-origin: right bottom;
    text-align: center;
}

.service-icon {
    /*padding: 30px 0;*/
    padding-top: 1rem;
    border-left: none;
    border-top: none;
    height: 6rem;
    justify-content: flex-start;
    flex-wrap: nowrap;
    will-change: justify-content, background, padding-top;
    transition: all 0.3s ease;
}

.service-icon img {
    width: 2rem;
    margin-bottom: 0.5rem;
}

.service-icon p {
    /*opacity: 0;*/
    font-size: 0.85rem;
    line-height: 0.85rem;
}

.border-gray-icons .service-icon {
    border: 1px solid #ccc;
}

.border-black-icons .service-icon {
    border: 1px solid rgba(0,0,0,0.4);
}

/*.service-icon:hover p {
    color: #FFF;
    opacity: 1;
}*/

/*.service-icon:hover {
    background: #ff851b;
    padding-top: 0;
    justify-content: center;
}*/

/*.service-icon:hover .fa {
    font-size: 1.5rem;
    color: #FFF;
}*/

.service-icon .fa {
    color: #675853;
    margin-bottom: 0.5rem;
    font-size: 2rem;
    will-change: font-size;
    /*color: #ff851b;*/
}

/**RESTAURANTE**/

.cheff-bio {
    padding-right: 8.33%;
    text-align: right;
    color: #686868;
}

.cheff-bio > h2 {
    position: relative;
    color: #444;
    width: 100%;
    padding-bottom: 30px;
    margin-bottom: 30px;
}

.cheff-bio > h2::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 40%;
    background: #111;
    height: 1px;
}

.bg-image-right {
    background-repeat: no-repeat;
    background-position: right top;
    background-size: contain;
    background-attachment: fixed;
}

.bg-image-left {
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    background-attachment: fixed;
}

.bg-image-center {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.bg-image-bottom {
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
}

#rest-menu {
    background: #FFF;
}

/**EVENTOS**/

#eventos {
    background-image: url(../img/eventos/terraza2.jpg);
    background-position: center bottom;
}

#eventos::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-paquetes{
    background-image: url(../img/paquetes.jpg);
    background-position: center bottom;
}

#seccion-paquetes::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-morelia-colonial{
    background-image: url(../img/morelia-colonial.jpg);
    background-position: center bottom;
}

#seccion-morelia-colonial::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-paquete-romantico{
    background-image: url(../img/paquete-romantico.jpg);
    background-position: center bottom;
}

#seccion-paquete-romantico::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-paquete-spa{
    background-image: url(../img/paquete-spa.jpg);
    background-position: center bottom;
}

#seccion-paquete-spa::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-patzcuaro{
    background-image: url(../img/paquete-patzcuaro.jpg);
    background-position: center bottom;
}

#seccion-patzcuaro::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-mariposa{
    background-image: url(../img/paquete-mariposa.jpg);
    background-position: center bottom;
}

#seccion-mariposa::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#seccion-paricutin{
    background-image: url(../img/paquete-paricutin.jpg);
    background-position: center bottom;
}

#seccion-paricutin::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}





#eventos-header {
    margin-top: 60px;
}

#eventos-info .card{
    border: 1px solid #aaa;
    padding: 15px 10px;
}

#eventos-info .card .divider {
    margin: 10px 0;
}

/**CERTIFICACIONES**/

#certificaciones {
    background-image: url('../img/certificaciones.jpg');
    background-position: center bottom;
}

#certificaciones::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.35)
}

#certificaciones-info {
    background: #FFF;
    width: 100%;
    padding-top: 80px;
}

#certificaciones-info p {
    margin-top: 30px;
}

.certificaciones-icons {
    padding: 50px 0;
    margin-top: 50px;
    background:#f2f2f2;
}


/**CONTACTO**/

#contacto {
    background-image: url(../img/lampara.jpg);
    background-position: center center;
}

#contacto::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.4);
}

#contacto-info {
    padding: 50px 0;
    background-color: #FFF;
}

.contact-info-title {
    display: inline-block;
    padding-bottom: 20px;
    padding-right: 30px;
    border-bottom-width: 2px;
}

.contacto-info-address {
    padding-left: 20px;
    overflow: hidden;
    margin-bottom: 30px;
}

/*.contacto-info-map iframe{
    border: 1px solid #b1ab7d;
    box-shadow: 2px 2px 5px #b1ab7d;
}*/

.contact-form.form-horizontal .form-group{
    margin-left: 0;
    margin-right: 0;
}

.contact-form label {
    font-weight: normal;
    margin-bottom: 10px;
}

.contact-form input,
.contact-form textarea {
    /*border: 1px solid #b1ab7d;*/
    border-radius: 0;
    /*height: 40px;*/
    /*float: left;*/
    /*padding-left: 8px;*/
    transition: all 0.3s ease;
}

.contact-form button {
    background: #b1ab7d;
    border: 1px solid #b1ab7d;
    /*width: 25%;*/
    /*float: left;*/
    color: #111;
    padding: 9px 15px 12px;
    transition: all 0.3s ease;
}

.contact-form button:hover {
    background: #FF851B;
    color: #efefef;
    border-top-color: #FF851B;
    border-right-color: #FF851B;
    border-bottom-color: #FF851B;
    border-left-color: #FF851B;
}

.contact-form input:focus,
.contact-form textarea:focus {
    border-color: #b1ab7d;
    box-shadow:0 0 2px #b1ab7d;
    outline: 0 none;
}

/**GALERÍA**/

#galeria {
    background-image: url(../img/patio1.jpg);
    background-position: center center;
    background-size:cover;
}

#galeria::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}

#galeria-info {
    padding: 50px 0;
    /*background-color: #FFF;*/
}

.sub-menu-gallery-tabs {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
}

.sub-menu-gallery-tabs > a {
    /* flex: 1; */
    padding: 4px 20px 12px 20px;
    color: #323232;
    transition: all 0.2s ease-in-out;
}

.sub-menu-gallery-tabs > a.active,
.sub-menu-gallery-tabs > a:hover {
    color: #FFF;
    background: #FF851B;
}

/* .sub-menu-gallery-tabs > a.btn:not(:last-child) {
    border-right: 1px solid #FF851B;
} */

/* Change Autocomplete styles in Chrome*/
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  /*border: 1px solid green;*/
  -webkit-text-fill-color: #686868;
  -webkit-box-shadow: 0 0 0px 1000px #FFFFFF inset;
  /*transition: background-color 5000s ease-in-out 0s;*/
}

.hidden-md {
  display: none;
}


@media screen and (max-width: 991px) {
    .hidden-md {
      display: block;
    }
    .service-container {
        margin-left: 0;
        margin-top: 50px;
    }

    .service-container .text-vertical {
        position: relative;
        top: 0;
        transform: none;
        margin-bottom: 30px;
        /*transform-origin: right bottom;*/
        /*text-align: center;*/
    }

    .bg-image-right,
    .bg-image-left {
        background-size: cover;
    }

    .h-400:not(.mobile-image) {
        height: auto;
        padding-bottom: 50px;
        padding-top: 50px;
    }

    .social {
        width: 100%;
        padding-top: 30px;
        padding-bottom: 30px;
        /*border-top: 1px solid #aaa;*/
        justify-content: center;
    }

    .social a {
        display: inline-block;
        padding: 10px 20px;
        border: 1px solid #aaa;
        margin: 0 15px;
    }

    footer .footer-newsletter {
        margin-top: 50px;
    }
    .info-paquete{
        padding: 30px 30px;
    }
    .luxury-paquete{
        display: none;
    }
    .separador{
        display: none;
    }

    /* Menu */

    .menu {
        display: block;
        width: 100%;
        height: calc(100% - 64px);
        position: fixed;
        left: -100%;
        padding: 0;
        background: rgba(0,0,0,0.95);
        z-index: 12;
        overflow: auto;
        transition: all 0.8s ease;
    }

    .menu ul.menu-links {
        height: auto;
        display: block;
    }

    .header-menu {
        display: block;
    }

    .menu ul li {
        width: 90%;
        margin: 0 auto;        
    }

    .menu a {
        color: #FFF;
    }

    .menu a.nav {
        display: block;
        text-align: center;
        font-size: 1rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
        margin-left: 5%;
        margin-right: 5%;
    }

    .fixed-nav {
        box-shadow: none;
    }

    .fixed-nav .menu ul.sub-menu {
        background: #2b2b2b;
    }

    .menu ul li:not(:last-of-type) {
        border-bottom: 1px solid #aaa;
        /*border-bottom: none;*/
    }

    .menu ul li:last-of-type {
        padding-bottom: 30px;
    }

    .menu a.nav-icon {
        display: none;
    }

    .menu a.languaje {
        width: 50%;
        margin-left: 25%;
        text-align: center;
        margin-bottom: 1rem;
        margin-top: 1rem;
        padding-bottom: 1rem;
        padding-top: 0.55rem;
    }

    .menu.visible {
        left: 0;
    }

    nav {
        padding: 0;
        position: fixed;
        height: 64px;
    }

    .nav-mobile {
        display: block;
    }

    .menu a:hover:after,
    .menu a:hover:before {
        background: none;
        height: 0;
    }

    .menu a.nav:hover,
    .menu a.nav:active,
    .menu a.nav:focus {
        color: #675853;
    }

    .menu ul.menu-links {
        width: 100%;
        padding-top: 20px;
        padding-left: 0;
        margin-bottom: 0;
        background: #333;
    }

    .menu .fa-share-alt {
        display: none;
    }

    .menu div.menu-item-has-children {
        margin-right: 0;
        height: auto;
    }

    .menu div.menu-item-has-children .social {
        display: flex;
        flex-direction: row;
        position: relative;
        top: 0;
        width: 100%;
        box-shadow: none;
    }

    .menu div.menu-item-has-children .social a {
        width: 80px;
        background: transparent;
    }

    .menu ul li.menu-item-has-children {
        height: auto;
        display: block;
    }

    .menu ul.sub-menu {
        /*display: block;*/
        position: relative;
        width: 100%;
        background: #2b2b2b;
        box-shadow: none;
        text-align: center;
        padding-top: 0;
        /*padding-bottom: 0;*/
    }

    .menu ul.sub-menu.visible {
        display: block;
    }

    .menu ul.sub-menu li {
        padding: 20px 0;
    }

    .menu .social {
        background: #222;        
    }

    .sub-menu-tabs#rooms-nav {
        padding: 0;
        flex-wrap: wrap;
        justify-content: center;
    }

    .sub-menu-tabs#rooms-nav {
        position: fixed;
        bottom: -100%;
        left: 0;
        border-top: 1px solid #CCC;
        z-index: 11;
        transition: all 0.5s ease;
    }

    .sub-menu-tabs#rooms-nav button {
        width: 100%;
        border-bottom: 1px solid #ccc;
    }

    .sub-menu-gallery-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start;
    }

    .sub-menu-gallery-tabs a {
        /*margin: 10px;*/
        flex: 1;
    }

    #btn-booking {
        top: 12px;
        right: 25px;
        transform: none;
        max-width: 200px;
        height: 40px;
        padding: 0 20px;
        line-height: 2.2rem;
        font-size: 0.875rem;
        background: #111;
        /*letter-spacing: 1px;*/
        /*border-left: 1px solid #555;*/
    }

    #btn-booking::before {
        animation: none;
        border:none;
    }

    #rooms-nav-selector {
        display: block;      
    }

    .btn-rooms {
        flex: auto;
    }

    .slider-habitaciones-header {
        padding-bottom: 80px;
    }
}

@media screen and (max-width: 800px) {
    #home {
        min-height: 450px; 
    }

    .logo h1 {
        text-align: center;
        font-size: 30px;
    }

    .mt-50 {
        margin-top: 30px;
    }

    .btn {
        padding: 0 10px 10px;
    }

    #historia {
        padding-top: 20px;
    }

    .info h1 {
        margin-top: 5%;
    }

    .info-paquete{
        padding: 30px 30px;
    }
    .luxury-paquete{
        display: none;
    }
    .separador{
        display: none;
    }
}

@media screen and (max-width: 767px) {
    #sb-container{
        /*display: none !important;*/
    }
    .separador{
        display: none;
    }

    .info-paquete{
        padding: 30px 30px;
    }

    .luxury-paquete{
        display: none;
    }


    .section-bg-image {
        background-attachment: scroll;
    }

    .slp-fixed {
        bottom: 0;
        padding-top: 1%;
        /*width: 20%;*/
    }

    .slp-fixed img {
        width: 100%;
    }

    .slp-fixed.slp-absolute {
        width: 30%;
        left: 35%;
    }

    footer .footer-content {
        margin-top: 250px;
    }

    footer .footer-menu {
        margin-left: 0;
        width: 50%;
    }



    .h-500:not(.mobile-image) {
        height: auto;
        padding-bottom: 50px;
    }

    .hidden-mobile {
        display: none;
    }

    .hidden-large {
        display: block!important;
    }

    .mobile-image {
        height: 300px;
    }

    .flex-change-order > .mobile-image {
        width: 100%;
    }

    .flex-change-order > [class*="h-"]:not(.mobile-image) {
        order: 2;
    }

    .flex-change-order > .mobile-image {
        order: 1;
    }

    .f40 {
        font-size: 34px;
    }

    .col-xs-1-5 {
        width: 25%;
    }

    .cheff-bio {
        padding-left: 6%;
        padding-right: 6%;
        padding-top: 30px;
        padding-bottom: 50px;
        text-align: center;
    }

    .cheff-bio > h2::after {
        right: 30%;
    }

    #eventos .fade {
       margin-top: 30px; 
    }

    .slick-prev, .slick-next {
        width: 30px;
        height: 30px;
        z-index: 2;
    }

    .slick-prev:before, .slick-next:before {
        font-size: 30px;
    }

    .swiper-button-details {
        display: none;
    }

    .modal-img-history {
        height: 40%;
        position: relative;
    }

    .modal-content-history {
        min-height: auto;
        padding: 30px 0;
    }

    #rooms-slider {
        height: 400px;
        min-height: auto;
    }

    .historia-title {
        margin-bottom: 30px;
    }

    #grid .container > .row {
        padding-bottom: 50px;
    }

    .historia-title::before,
    .historia-title::after {
        display: none;
    }

    #certificaciones-info,
    #certificaciones-info .text-right {
        text-align: center;
    }

    #certificaciones-info > .container {
        margin-bottom: 50px;
    }

    #certificaciones-info .border-bottom {
        border: none;
    }

    .footer-menu > ul {
        padding-left: 0;
        text-align: center;
    }

}

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

    #home {
        min-height: 300px;
    }

    .logo h1 {
        font-size: 20px;
    }

    .nav-mobile > img {
        margin-left: 20%;
    }
    
    .rooms-gallery-options button {
        margin: 0 15px;
    }

    .slp-fixed {
        width: 20%;
    }

    footer .footer-content {
        margin-top: 200px;
    }

    .info h1 {
        font-size: 25px;
    }

    .info p {
        font-size: 12px;
        margin-top: 3%;
    }

    .img-effect a:hover .img-effect-subtitle {
       bottom: 30%;
    }

    .img-effect a:hover .img-effect-title {
        top: 30%;
    }

    .img-effect-title2 {
        width: 30%;
    }

    .img-effect-subtitle2 {
        display: none;
    }

    #rooms-slider {
        height: 250px;
        min-height: auto;
    }
}

@media screen and (max-width: 420px) {
    #home {
        min-height: 200px;
    }

    .nav-mobile > img {
        margin-left: 15%;
    }

    .nav-icon-menu {
        left: 15px;
    }

    #btn-booking {
        right: 15px;
        padding: 0 10px;
    }

    .slp-fixed {
        width: 30%;
    }

    .slp-fixed.slp-absolute {
        width: 50%;
        left: 25%;
    }

    .logo h1 {
        font-size: 15px;
    }


    .col-xs-1-5 {
        width: 35%;
    }

}

@keyframes kenburns {
    0% {
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
    85% {
        transform: scale3d(1.1, 1.1, 1.1) translate3d(-3%, -5%, 0px);
        /*transform: scale3d(1.5, 1.5, 1.5) translate3d(-190px, -120px, 0px);*/
        animation-timing-function: ease-in;
        opacity: 1;
    }
    100% {
        transform: scale3d(1.3, 1.3, 1.3) translate3d(-5%, -8%, 0px);
        opacity: 0;
    }
}

@keyframes down {
    0% {
        opacity: 0.5;
    }
    50% {
        transform: translateY(40px) rotateZ(90deg);
        opacity: 1;
    }
    100% {
        transform: translateY(0) rotateZ(90deg); 
        opacity: 0.5;      
    }
}

@keyframes pulse {
    33%, 100% {
        top: -12px;
        right: -12px;
        /*bottom: -12px;*/
        left: -12px;
        opacity: 0;
    }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
    display: none !important;
}
/*

 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    -webkit-clip-path: none;
    clip-path: none;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
    white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }
    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
