.btn_1,
a.btn_1,
strong {
    font-weight: 600;
}
.btn_1,
.main_title,
.main_title_2,
a.btn_1 {
    text-align: center;
}
.card-title p,
.main-menu ul ul ul,
.main_title,
.main_title span,
.main_title_3,
body,
h1,
h2,
h3,
h4,
h5,
h6,
html *,
p,
strong {
    font-family: Lato, sans-serif;
}
.main_title span,
.wow {
    visibility: hidden;
}
.main_title,
.main_title_2 {
    margin-bottom: 45px;
    position: relative;
}
#review_summary,
.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot,
.btn_1.full-width.purchase:hover,
.reviews-container .progress-bar,
a.btn_1.full-width.purchase:hover {
    background-color: #0054a6;
}
.card-icons img,
.table.cart-list td {
    vertical-align: middle;
}
.dp-badge {
    backdrop-filter: blur(6px);
}
@media only screen and (min-width: 992px) {
    nav#menu.main-menu {
        display: block !important;
    }
    #mm-menu.main-menu,
    header .btn_mobile {
        display: none !important;
    }
    .main-menu {
        position: relative;
        z-index: 9;
        width: auto;
        top: 12px;
        right: 15px;
        float: right;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        -webkit-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        color: #fff;
    }
    .main-menu ul,
    .main-menu ul li {
        position: relative;
        display: inline-block;
        margin: 0;
        padding: 0;
    }
    .main-menu ul a,
    .main-menu ul li a {
        position: relative;
        margin: 0;
        padding: 5px 10px;
        display: block;
        white-space: nowrap;
    }

    .main-menu > ul > li span > a {
        color: #59ce02;
        padding: 0 8px 15px;
        font-family: Lato, sans-serif;
        font-size: 1.3rem;
        font-weight: 500;
        font-style: bold;
    }
    .main-menu > ul > li span:hover > a {
        opacity: 0.7;
    }
    header.sticky .main-menu > ul > li span > a {
        color: #1b5e20;
    }
    header.sticky .main-menu > ul > li span:hover > a {
        opacity: 1;
        color: #fc5b62;
    }
    header {
        background: #fff;
    }
    .main-menu ul ul {
        position: absolute;
        z-index: 1;
        visibility: hidden;
        left: 3px;
        top: 100%;
        margin: 0;
        display: block;
        padding: 0;
        background: #fff;
        font-family: Lato, sans-serif;
        min-width: 200px;
        -webkit-box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.175);
        -moz-box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.175);
        box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.175);
        transform: scale(0.4);
        transform-origin: 10% top;
        transition:
            0.2s,
            _ 0.2s,
            _ 0.2s;
        opacity: 0;
        -moz-transition: 0.2s;
        -o-transition: 0.2s;
        -webkit-transition: 0.2s;
        -ms-transition: 0.2s;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        -ms-border-radius: 3px;
        border-radius: 3px;
    }
    .main-menu ul ul:before {
        bottom: 100%;
        left: 15%;
        border: 7px solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-bottom-color: #fff;
        margin-left: -7px;
    }
    .main-menu ul ul li {
        display: block;
        height: auto;
        padding: 0;
    }
    .main-menu ul ul li a {
        font-size: 1.2rem;
        color: #555;
        border-bottom: 1px solid #ededed;
        display: block;
        padding: 15px 10px;
        line-height: 1;
    }
    .main-menu ul li:hover > ul {
        padding: 0;
        visibility: visible;
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transition-delay: 0.2s;
        transition-delay: 0.2s;
        -webkit-transition-duration: 0s, 0.2s, 0.2s;
        transition-duration: 0s, 0.2s, 0.2s;
    }
    .main-menu ul ul li:first-child a:hover {
        -webkit-border-radius: 3px 3px 0 0;
        -moz-border-radius: 3px 3px 0 0;
        -ms-border-radius: 3px 3px 0 0;
        border-radius: 3px 3px 0 0;
    }
    .main-menu ul ul li:last-child a {
        border-bottom: none;
    }
    .main-menu ul ul li:last-child a:hover {
        -webkit-border-radius: 0 0 3px 3px;
        -moz-border-radius: 0 0 3px 3px;
        -ms-border-radius: 0 0 3px 3px;
        border-radius: 0 0 3px 3px;
    }
    .main-menu ul ul li:hover > a {
        background-color: #f9f9f9;
        color: #fc5b62;
        padding-left: 18px;
    }
}
.main-menu ul ul.second_level_right {
    left: auto;
    right: 3px;
}
.main-menu ul ul.second_level_right:before {
    right: 15%;
    left: auto;
}
.main-menu ul ul li span a {
    font-weight: 400 !important;
}
.main-menu ul ul li span a:hover {
    color: #fc5b62;
    padding-left: 18px;
    opacity: 1;
}
.main-menu ul ul li span a:after {
    font-family: Lato, sans-serif;
    content: "\35";
    float: left;
    font-size: 1rem;
    margin-top: -2px;
}
.main-menu ul ul ul {
    position: absolute;
    border-top: 0;
    z-index: 1;
    height: auto;
    left: 100%;
    top: 0;
    margin: 0;
    padding: 0;
    background: #fff;
    min-width: 190px;
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}
.main-menu ul ul ul.third_level_left {
    right: 100%;
    left: auto;
}
.main-menu ul ul ul li a {
    border-bottom: 1px solid #ededed !important;
}
.main-menu ul ul ul li:last-child a {
    border-bottom: none !important;
}
.main-menu ul ul ul:before {
    border-width: 0;
    margin-left: 0;
}
@media only screen and (max-width: 991px) {
    nav#menu {
        display: none !important;
    }
    .mm-menu {
        background: #fff;
    }
    .main-menu {
        top: 0;
        right: 0;
        float: none;
    }
    ul.mm-listview {
        line-height: 25px;
    }
    ul.mm-listview li a {
        color: #555 !important;
        display: block;
    }
    .branding a {
        float: right;
        margin-right: 20px;
        top: 0;
    }
    header.header.sticky {
        border-bottom: hidden;
        background-color: #FFFFFF;
    }
}
.main_title_2 p,
.main_title_3 p {
    font-weight: 300;
    line-height: 1.4;
}
hr,
hr.large {
    border-color: #ededed;
}
#menu.fake_menu {
    display: none !important;
    visibility: hidden !important;
}
html * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: bold;
    font-size: 1.1rem;
}
body {
    background: url("../fondoprincipal.jpg");
    font-size: 0.875rem;
    line-height: 1.6;
    color: #555;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    color: #333;
}
p {
    margin-bottom: 30px;
}
label {
    font-weight: 500;
    margin-bottom: 3px;
}
hr {
    margin: 30px 0;
}
hr.large {
    border-top-width: 4px;
    margin-top: 60px;
}
ol,
ul {
    list-style: none;
    margin: 0 0 25px;
    padding: 0;
}
.main_title span {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    margin: auto auto 20px;
    opacity: 1;
    background-color: #999;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: 0.6s;
    transition: 0.6s;
}
.main_title_2 span,
.main_title_3 span {
    width: 120px;
    background-color: #e1e1e1;
    height: 2px;
    display: block;
}
.btn_1,
a,
a.btn_1 {
    outline: 0;
    text-decoration: none;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
}
.main_title.animated span {
    visibility: visible;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
.main_title_2 span {
    margin: auto;
}
.main_title_2 span em {
    width: 60px;
    height: 2px;
    background-color: #fc5b62;
    display: block;
    margin: auto;
}
.follow_us ul li,
footer ul li a i,
footer ul.contacts li a i,
ul.hotel_facilities li img {
    margin-right: 10px;
}
.main_title_2 h2,
.main_title_2 h3 {
    margin: 25px 0 0;
}
.main_title_2 p {
    font-size: 1.5rem;
}
.main_title_3 {
    margin-bottom: 25px;
    position: relative;
}
.main_title_3 span em {
    width: 60px;
    height: 2px;
    background-color: #fc5b62;
    display: block;
}
.main_title_3 h2,
.main_title_3 h3 {
    font-size: 1.4375rem;
    margin: 25px 0 0;
}
.main_title_3 p {
    font-size: 1.125rem;
}
h3.slide_typo {
    white-space: nowrap;
    color: #fff !important;
    font-weight: 400;
    font-size: 3.75rem;
}
.slide_typo_2 {
    color: #fff;
    font-size: 1.5rem;
    white-space: nowrap;
    text-transform: uppercase;
}
a {
    color: #fc5b62;
    transition: 0.3s ease-in-out;
}
a:focus,
a:hover {
    color: #111;
    text-decoration: none;
    outline: 0;
}
.btn_1,
a.btn_1 {
    border: none;
    background: #fc5b62;
    cursor: pointer;
    display: inline-block;
    padding: 15px 30px;
    color: #fff;
    line-height: 1;
    transition: 0.3s ease-in-out;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
}
.btn_2,
.btn_3,
a.btn_2,
a.btn_3 {
    border: none;
    cursor: pointer;
    display: inline-block;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    color: #fff;
    text-align: center;
    font-weight: 600;
    line-height: 1;
    outline: 0;
    text-decoration: none;
}
.btn_3,
a.btn_3 {
    width: 160px;
    background: url(../madera.png);
    padding: 20px 30px;
    margin: 5px;
    transition: 0.3s ease-in-out;
}
.cat_star i,
.rating i {
    margin-right: 2px;
}
.btn_2,
a.btn_2 {
    background: #ffb300;
    padding: 30px 40px;
    transition: 0.3s ease-in-out;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
}
.btn_map_in,
.closebt,
a.btn_map_in {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    cursor: pointer;
}
.btn_1:hover,
.btn_map_in:hover,
a.btn_1:hover,
a.btn_map_in:hover {
    background: #0054a6;
    color: #fff;
}
.btn_1.full-width,
a.btn_1.full-width {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 5px;
}
.btn_1.full-width.purchase,
a.btn_1.full-width.purchase {
    background-color: #32a067;
}
.btn_1.full-width.wishlist,
a.btn_1.full-width.wishlist {
    border-color: #555;
    color: #555;
}
.btn_1.medium,
a.btn_1.medium {
    font-size: 1rem;
    padding: 18px 40px;
}
.btn_1.rounded,
a.btn_1.rounded {
    -webkit-border-radius: 25px !important;
    -moz-border-radius: 25px !important;
    -ms-border-radius: 25px !important;
    border-radius: 25px !important;
}
.btn_1.outline,
a.btn_1.outline {
    border: 2px solid #fc5b62;
    color: #fc5b62;
    padding: 11px 40px;
    background: 0 0;
}
.btn_1.outline:hover,
a.btn_1.outline:hover {
    background: #0054a6;
    color: #fff;
    border-color: #0054a6;
}
.btn_1.outline:focus,
.btn_infobox_get_directions:focus,
a.btn_1.outline:focus,
a.btn_infobox_phone:focus {
    outline: 0;
}
.closebt {
    transition: 0.3s ease-in-out;
    position: absolute;
    font-size: 1.5rem;
    top: 10px;
    right: 15px;
    color: #fff;
    opacity: 0.6;
    width: 30px;
    height: 30px;
}
.closebt:hover {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 1;
}
.btn_home_align {
    text-align: right;
    margin-bottom: 25px;
}
a.btn_map {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    padding: 8px 12px;
    line-height: 1;
    margin-bottom: 5px;
    display: inline-block;
    border: 1px solid rgba(0, 0, 0, 0.08);
    font-weight: 600;
    font-size: 0.75rem;
    color: rgba(0, 0, 0, 0.5);
}
.hero_in a.btn_photos:hover,
a.btn_map:hover {
    color: #fc5b62;
}
a.btn_map:before {
    font-family: ElegantIcons;
    content: "\e081";
    display: inline-block;
    margin-right: 5px;
}
.btn_map_in,
a.btn_map_in {
    border: none;
    background: #fc5b62;
    outline: 0;
    text-decoration: none;
    padding: 15px 30px;
    color: #fff;
    font-weight: 600;
    text-align: center;
    width: 100%;
    margin-bottom: 20px;
    display: inline-block;
    line-height: 1;
    transition: 0.3s ease-in-out;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
}
.box_grid ul,
.box_list ul {
    border-top: 1px solid #ededed;
}
.box_grid,
.box_list,
.hero_in a.btn_photos,
header.header.sticky {
    background-color: #fff;
}
header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    padding: 20px 30px;
    z-index: 99999999;
    border-bottom: 1px solid rgba(255, 255, 255, 0);
    background-color: #fff;
}
.booking .custom-select-form select,
.booking select,
.cluster img,
.custom-select-form select,
.dp-panel,
.secondary_nav ul li:last-child,
header.header .logo_sticky,
header.header.sticky .logo_normal {
    display: none;
}
.follow_us ul li,
.intro_title h2,
a.box_news figure figcaption,
a.box_news ul li,
footer ul li a,
header.header.sticky .logo_sticky,
ul#additional_links li {
    display: inline-block;
}
header.header.sticky {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    border-bottom: 1px solid #ededed;
    padding: 15px 20px;
}
ul#top_menu {
    float: left;
    margin: 0 0 0 10px;
    padding: 0;
    font-size: 0.8125rem;
}
ul#top_menu li {
    float: left;
    margin: 0 15px 0 0;
    line-height: 1;
}
ul#top_menu li:last-child {
    margin-right: 0;
    position: relative;
    top: 0;
}
#confirm h4,
.box_1 h3,
.dp-passes-section .container-custom,
.follow_us h5,
.grid ul li figcaption a,
a.grid_item .info .cat_star i,
ul#top_menu li a,
ul.share-buttons li a:hover {
    color: #fff;
}
footer ul li a:hover,
footer ul.links li a:hover:after {
    opacity: 1;
    color: #fc5b62;
}
.follow_us ul li a,
ul#top_menu li a:hover {
    color: #fff;
    opacity: 0.7;
}
ul#top_menu li a.cart-menu-btn,
ul#top_menu li a.login,
ul#top_menu li a.wishlist_bt_top {
    display: block;
    width: 22px;
    height: 23px;
    position: relative;
    top: 8px;
    -moz-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
    -ms-transition: opacity 0.5s;
    transition: opacity 0.5s;
}
@media (max-width: 991px) {
    hr.large {
        margin-top: 45px;
    }
    header.header.sticky {
        padding: 15px 15px 5px;
    }
    ul#top_menu {
        margin: -2px 0 0 10px;
    }
    ul#top_menu li {
        margin: 0 0 0 10px;
    }
    ul#top_menu li a.cart-menu-btn,
    ul#top_menu li a.login,
    ul#top_menu li a.wishlist_bt_top {
        top: 2px;
    }
}
ul#top_menu li a.cart-menu-btn:before,
ul#top_menu li a.login:before,
ul#top_menu li a.wishlist_bt_top:before {
    font-family: Glyphter;
    font-size: 1.3125rem;
    color: #fff;
    text-indent: 0;
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 400;
    line-height: 1;
}
.sticky ul#top_menu li a.cart-menu-btn:before,
.sticky ul#top_menu li a.login:before,
.sticky ul#top_menu li a.wishlist_bt_top:before {
    color: #444;
}
ul#top_menu li a.login,
ul#top_menu li a.wishlist_bt_top {
    text-indent: -9999px;
    overflow: hidden;
}
ul#top_menu li a.wishlist_bt_top:before {
    content: "\0043";
}
ul#top_menu li a.login:before {
    content: "\0042";
}
ul#top_menu li a.cart-menu-btn {
    top: 6px;
}
ul#top_menu li a.cart-menu-btn:before {
    content: "\0041";
}
ul#top_menu li a.cart-menu-btn strong {
    font-size: 0.6875rem;
    width: 15px;
    height: 15px;
    display: block;
    background-color: #333;
    color: #fff;
    position: relative;
    bottom: -15px;
    right: -10px;
    text-align: center;
    line-height: 17px !important;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    margin: 0;
    padding: 0;
}
ul#top_menu li a.logged {
    display: block;
    width: 25px;
    height: 25px;
    position: relative;
    overflow: hidden;
    top: 6px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    -moz-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
    -ms-transition: opacity 0.5s;
    transition: opacity 0.5s;
}
ul#top_menu li a.logged img {
    width: 26px;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.dropdown-user .dropdown-menu {
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 3px;
    -ms-border-radius: 0;
    border-radius: 3px;
    min-width: 0;
    padding: 0;
    width: 150px;
    top: 160%;
    margin-left: -115px;
    font-weight: 400;
    text-shadow: none;
    text-transform: none !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.02);
    border-left: 1px solid rgba(0, 0, 0, 0.02);
    -webkit-border-radius: 3px;
    -ms-border-radius: 3px;
    -webkit-box-shadow: 3px 2px 7px 1px rgba(0, 0, 0, 0.08);
    -moz-box-shadow: 3px 2px 7px 1px rgba(0, 0, 0, 0.08);
    box-shadow: 3px 2px 7px 1px rgba(0, 0, 0, 0.08);
    -webkit-border-radius: 3px;
    -ms-border-radius: 3px;
}
.dropdown-user .dropdown-menu:before {
    bottom: 100%;
    right: 10%;
    border: 7px solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-bottom-color: #fff;
    margin-left: -7px;
}
.dropdown-user .dropdown-menu ul {
    padding: 0;
    margin: 0 !important;
    list-style: none;
}
.dropdown-user .dropdown-menu ul li {
    border-bottom: 1px solid #ededed;
    margin: 0 0 15px;
    width: 100%;
    display: inline-block;
    font-size: 0.8125rem;
}
.dropdown-user .dropdown-menu ul li a {
    color: #444 !important;
    padding: 15px 8px;
    display: block;
}
.dropdown-user .dropdown-menu ul li a:hover {
    color: #fc5b62 !important;
    opacity: 1 !important;
    padding-left: 15px;
}
.dropdown-user .dropdown-menu ul li:last-child {
    border-bottom: none;
    margin-bottom: 0;
}
.hero_in {
    width: 100%;
    height: 450px;
    position: relative;
    overflow: hidden;
    text-align: center;
    color: #fff;
}
.hero_in.general:before {
    background: url(../img/hero_in_bg_2.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.contacts .wrapper,
.hero_in.general .wrapper,
.hero_in.hotels .wrapper,
.hero_in.hotels_detail .wrapper,
.hero_in.restaurants .wrapper,
.hero_in.restaurants_detail .wrapper,
.hero_in.tours .wrapper,
.hero_in.tours_detail .wrapper {
    background-color: rgba(0, 0, 0, 0.6);
}
.hero_in.tours:before {
    background: url(../img/hero_in_bg_1.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.hotels:before {
    background: url(../img/hero_in_bg_4.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.restaurants:before {
    background: url(../img/hero_in_bg_5.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.hotels_detail,
.hero_in.restaurants_detail,
.hero_in.tours_detail {
    height: 550px;
}
.hero_in.tours_detail:before {
    background: url(../img/hero_in_tours_detail.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.hotels_detail:before {
    background: url(../img/hero_in_hotels_detail.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.restaurants_detail:before {
    background: url(../img/hero_in_restaurants_detail.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in.contacts:before {
    background: url(../img/hero_in_bg_3.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_in:before {
    animation: 5s cubic-bezier(0, 0.5, 0, 1) 0.3s forwards pop-in;
    content: "";
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.hero_in .wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
#error_page,
.hero_single .wrapper {
    display: flex;
    flex-direction: column;
}
.hero_in .wrapper h1 {
    color: #fff;
    font-size: 2.625rem;
    text-transform: uppercase;
    font-weight: 700;
    margin-top: 30px;
}
.hero_in .wrapper h1 span {
    width: 80px;
    height: 4px;
    margin: auto;
    background-color: #ffc107;
    display: block;
    margin-bottom: 20px;
    border-radius: 10px;
    opacity: 1;
}
.hero_in a.btn_photos,
a.grid_item figure small {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
}
.hero_in .wrapper p {
    font-weight: 300;
    margin-bottom: 0;
    font-size: 1.5rem;
}
#total_cart span,
.hero_in .wrapper p strong,
.hero_in.adventure_detail .wrapper .main_info p strong,
.hero_single .wrapper p strong,
.hero_single.version_2 .wrapper p strong {
    font-weight: 600;
}
.hero_in a.btn_photos {
    position: absolute;
    left: 20px;
    bottom: 20px;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.2);
    line-height: 1;
    padding: 10px 15px;
    color: #444;
    font-weight: 500;
}
@keyframes pop-in {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
    }
}
.hero_in h1 {
    animation-delay: 0.8s;
    -webkit-animation-delay: 0.8s;
    -moz-animation-delay: 0.8s;
}
.hero_in p {
    animation-delay: 1.5s;
    -webkit-animation-delay: 1.5s;
    -moz-animation-delay: 1.5s;
    animation-duration: 0.3s;
    -webkit-animation-duration: 0.3s;
    -moz-animation-duration: 0.3s;
}
main {
    background-color: #f8f8f8;
    position: relative;
    z-index: 1;
}
footer {
    background-color: #121921;
    color: rgba(255, 255, 255, 0.7);
}
footer h5 {
    color: #fff;
    margin: 25px 0;
    font-size: 1.125rem;
}
.box_detail ul li,
.filter_type ul li,
footer ul li {
    margin-bottom: 5px;
}
footer ul li a {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    position: relative;
    color: #fff;
    opacity: 0.7;
}
footer ul li a i {
    color: #fff;
}
footer ul.links li a:hover {
    -webkit-transform: translate(5px, 0);
    -moz-transform: translate(5px, 0);
    -ms-transform: translate(5px, 0);
    -o-transform: translate(5px, 0);
    transform: translate(5px, 0);
}
footer ul.links li a:after {
    font-family: ElegantIcons;
    content: "\24";
    position: absolute;
    margin-left: 5px;
    top: 1px;
    opacity: 0;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}
footer hr {
    opacity: 0.1;
}
footer #copy {
    text-align: right;
    font-size: 0.8125rem;
    opacity: 0.7;
}
.follow_us {
    margin-top: 15px;
    animation-delay: 1.1s;
    -webkit-animation-delay: 1.1s;
    -moz-animation-delay: 1.1s;
    color: #fff;
}
.follow_us ul li {
    font-size: 1.25rem;
    color: #fff;
}
.follow_us ul li:first-child {
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 2px;
    font-size: 0.8125rem;
}
.dp-massage-card:hover .dp-massage-overlay,
.dp-massage-card:hover .dp-massage-overlay-content,
.follow_us ul li a:hover,
.grid ul li figure:focus figcaption,
.grid ul li figure:hover figcaption,
ul#additional_links li a:hover {
    opacity: 1;
}
ul#footer-selector {
    margin: 0;
    padding: 0;
    list-style: none;
}
ul#footer-selector li {
    float: left;
    margin-right: 10px;
}
ul#additional_links {
    margin: 0;
    padding: 8px 0 0;
    color: #fff;
    font-size: 0.8125rem;
    float: right;
}
ul#additional_links li {
    margin-right: 15px;
    color: #fff;
}
ul#additional_links li:first-child {
    margin-right: 20px;
}
ul#additional_links li:last-child:after {
    content: "";
}
ul#additional_links li span {
    color: #fff;
    opacity: 0.5;
}
ul#additional_links li a {
    color: #fff;
    opacity: 0.5;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
ul#additional_links li:after {
    content: "|";
    font-weight: 300;
    position: relative;
    left: 10px;
}
.hero_single {
    width: 100%;
    position: relative;
    overflow: hidden;
    text-align: center;
    margin: 0;
    color: #fff;
}
.hero_single .wrapper {
    background-color: rgba(0, 0, 0, 0.8);
    justify-content: center;
    height: 100%;
}
.hero_single.start_bg_zoom:before {
    animation: 6s cubic-bezier(0, 0.5, 0, 1) 0.3s forwards pop-in;
    content: "";
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.hero_single .wrapper h3 {
    color: #fff;
    font-size: 3.25rem;
    margin: 0;
    text-transform: uppercase;
    font-weight: 700;
}
@media (max-width: 767px) {
    .carousel-item img {
        width: 100%;
        height: 85vh;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }
    hr.large {
        margin-bottom: 45px;
    }
    .main_title_2,
    .main_title_3 {
        margin-bottom: 10px;
    }
    .main_title_2 h2 {
        font-size: 1.625rem;
    }
    .main_title_2 h3 {
        font-size: 1.5rem;
    }
    .main_title_2 p {
        font-size: 1.125rem;
    }
    .hero_single .wrapper h3,
    .main_title_3 h2,
    .main_title_3 h3 {
        font-size: 1.3125rem;
    }
    .btn_home_align {
        text-align: center;
        margin-bottom: 25px;
    }
    header {
        padding: 15px 15px 5px;
    }
    ul#top_menu li:first-child {
        display: none;
    }
    .hero_in {
        height: 350px;
    }
    .hero_in .wrapper h1 {
        font-size: 2rem;
    }
    footer #copy {
        text-align: left;
        margin: 5px 0 20px;
    }
}
.hero_single .wrapper p {
    font-weight: 300;
    margin: 10px 0 0;
    padding: 0 20%;
    font-size: 1.5rem;
    line-height: 1.4;
}
.cart_section.last,
.hero_single.short {
    height: 600px;
}
.hero_single.version_2 {
    height: 620px;
    background: url(../sliderbanner.avif) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.hero_single.version_2 .wrapper {
    background-color: rgba(0, 0, 0, 0.45);
}
.hero_single.version_2 .wrapper h3 {
    font-size: 2.625rem;
    text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.3);
}
@media (max-width: 767px) {
    .hero_single .wrapper p {
        padding: 0;
        font-size: 1.125rem;
    }
    .hero_single.version_2 .wrapper h3 {
        font-size: 1.625rem;
        margin-top: 60px;
    }
}
.hero_single.version_2 .wrapper p {
    font-weight: 400;
    margin: 5px 0 0;
    padding: 0;
    font-size: 1.3125rem;
    text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.3);
}
.panel-dropdown {
    position: relative;
    text-align: left;
    padding: 15px 10px 0 15px;
}
.panel-dropdown a {
    color: #727b82;
    font-weight: 500;
    transition: 0.3s;
    display: block;
    position: relative;
}
.panel-dropdown a:after {
    font-family: ElegantIcons;
    content: "\33";
    font-size: 1.5rem;
    color: #999;
    font-weight: 500;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    position: absolute;
    right: 0;
    top: -8px;
}
.panel-dropdown.active a:after {
    transform: rotate(180deg);
}
.panel-dropdown .panel-dropdown-content {
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    position: absolute;
    top: 58px;
    left: 0;
    z-index: 99;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 12px 35px 2px rgba(0, 0, 0, 0.12);
    padding: 15px 15px 0;
    white-space: normal;
    width: 280px;
}
a.box_news figure img,
a.box_news:hover h4 {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
}
.panel-dropdown .panel-dropdown-content:after {
    bottom: 100%;
    left: 15px;
    border: 7px solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-bottom-color: #fff;
    margin-left: -7px;
}
.panel-dropdown .panel-dropdown-content.right {
    left: auto;
    right: 0;
}
.panel-dropdown .panel-dropdown-content.right:after {
    left: auto;
    right: 15px;
}
.layer-is-visible,
.panel-dropdown.active .panel-dropdown-content {
    opacity: 1;
    visibility: visible;
}
.rotate-x {
    animation-duration: 0.5s;
    animation-name: rotate-x;
}
@keyframes rotate-x {
    from {
        transform: rotateY(0);
    }
    to {
        transform: rotateY(360deg);
    }
}
.box_grid figure a img,
a.box_news figure img {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    -moz-transform: translate(-50%, -50%) scale(1.1);
    -ms-transform: translate(-50%, -50%) scale(1.1);
    -o-transform: translate(-50%, -50%) scale(1.1);
}
a.box_news {
    position: relative;
    display: block;
    padding-left: 230px;
    color: #555;
    margin-bottom: 30px;
    min-height: 150px;
}
a.box_news figure {
    width: 200px;
    height: 150px;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
}
a.box_news figure img {
    width: 250px;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(1.1);
    transition: 0.3s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}
.box_grid figure a img,
.box_list figure a img {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
}
a.box_news figure figcaption {
    background-color: #ffc107;
    text-align: center;
    position: absolute;
    right: 0;
    top: 0;
    color: #fff;
    width: 60px;
    height: 60px;
    padding: 15px;
    line-height: 1;
}
a.box_news figure figcaption strong {
    display: block;
    font-size: 1.3125rem;
}
a.box_news h4 {
    font-size: 1.125rem;
    margin-bottom: 10px;
}
.box_grid figure a:hover img,
.box_list figure a:hover img,
a.box_news:hover img {
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
}
a.box_news:hover h4 {
    color: #fc5b62;
    transition: 0.3s ease-in-out;
}
.box_grid figure a img,
a.grid_item figure img,
a.grid_item_adventure figure img {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    width: 100%;
}
a.box_news ul {
    margin: 0;
    padding: 10px 0 0;
}
.box_grid figure small,
.box_list figure small,
a.grid_item figure small {
    padding: 7px 10px 4px;
    text-transform: uppercase;
    font-weight: 600;
}
a.box_news ul li {
    font-weight: 600;
    text-transform: uppercase;
    color: #999;
    font-size: 0.75rem;
    margin-right: 5px;
}
.hero_in.adventure_detail .wrapper .main_info ul li:last-child,
a.box_news ul li:last-child {
    margin-right: 0;
}
a.box_news ul li:last-child:after {
    content: "";
    margin: 0;
}
a.box_news ul li:after {
    content: "-";
    margin: 0 0 0 10px;
}
a.grid_item,
a.grid_item_adventure {
    display: block;
    margin-bottom: 25px;
}
.box_grid,
a.box_feat {
    margin-bottom: 30px;
    display: block;
}
a.grid_item .info,
a.grid_item_adventure .info {
    position: absolute;
    width: 100%;
    z-index: 9;
    display: block;
    padding: 25px 20px 5px;
    color: #fff;
    left: 0;
    bottom: 0;
    background: 0 0;
    background: -webkit-linear-gradient(top, transparent, #000);
    background: linear-gradient(to bottom, transparent, #000);
    box-sizing: border-box;
}
#toTop,
.box_detail figure a i,
.box_grid a.wish_bt,
.box_grid figure small,
.box_list figure small,
.grid ul li figcaption,
a.grid_item figure small {
    background-color: rgba(0, 0, 0, 0.6);
}
a.grid_item .info .cat_star {
    font-size: 0.5625rem;
}
a.grid_item .info h3,
a.grid_item_adventure .info h3 {
    color: #fff;
    font-size: 1.125rem;
}
a.grid_item .info p,
a.grid_item_adventure .info p {
    color: #fff;
    margin-bottom: 0;
    font-size: 0.9375rem;
}
.box_grid .price strong,
.box_list .wrapper .price strong,
a.box_feat i,
a.boxed_list:hover i {
    color: #32a067;
}
a.grid_item figure,
a.grid_item_adventure figure {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
@media (max-width: 767px) {
    .hero_single.version_2 .wrapper p {
        padding: 0;
        font-size: 0.875rem;
    }
    a.box_news {
        min-height: inherit;
        padding-left: 0;
    }
    a.box_news figure {
        position: relative;
        width: auto;
    }
    a.box_news figure img {
        width: 100%;
        max-width: 100%;
        height: auto;
    }
    a.box_news h4 {
        margin-bottom: 5px;
    }
    a.box_news ul {
        padding: 0;
    }
    a.grid_item figure {
        height: 350px !important;
    }
}
a.grid_item figure .score,
a.grid_item_adventure figure .score {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 9;
}
a.grid_item figure small {
    position: absolute;
    left: 20px;
    top: 22px;
    color: #ccc;
    border-radius: 3px;
    line-height: 1;
    z-index: 9;
}
.box_grid a.wish_bt,
a.box_feat {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
}
a.grid_item figure img,
a.grid_item_adventure figure img {
    height: auto;
    transition: 0.3s ease-in-out;
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}
a.grid_item:hover figure img,
a.grid_item_adventure:hover figure img {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}
.search_container {
    padding: 30px 0 15px;
    border-bottom: 1px solid #ededed;
}
a.box_feat {
    text-align: center;
    background: #fff;
    padding: 40px 30px 30px;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out;
    -ms-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-box-shadow: 0 3px 0 0 #f0f2f4;
    -moz-box-shadow: 0 3px 0 0 #f0f2f4;
    box-shadow: 0 3px 0 0 #f0f2f4;
    color: #555;
    border-radius: 3px;
    overflow: hidden;
}
a.box_feat:hover {
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -o-transform: translateY(-10px);
    transform: translateY(-10px);
    -webkit-box-shadow: 0 3px 0 0 #ebedef;
    -moz-box-shadow: 0 3px 0 0 #ebedef;
    box-shadow: 0 3px 0 0 #ebedef;
}
a.box_feat i {
    font-size: 4.375rem;
    margin-bottom: 10px;
}
.box_faq h4,
a.box_feat h3,
a.box_topic h3,
a.grid_item.latest_adventure h3,
section#description h4,
section#reviews h4 {
    font-size: 1.125rem;
}
.wrapper-grid {
    padding: 0 20px;
}
.box_grid {
    position: relative;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}
.box_grid .price,
.box_list .wrapper .price {
    display: inline-block;
    font-weight: 500;
    color: #999;
}
#error_page h2 i,
.cat_star i,
.rating .voted {
    color: #ffc107;
}
.box_grid a.wish_bt {
    position: absolute;
    right: 15px;
    top: 15px;
    z-index: 1;
    padding: 9px 10px;
    display: inline-block;
    color: #fff;
    line-height: 1;
    border-radius: 3px;
}
.box_grid a.wish_bt:after,
.box_list a.wish_bt:after {
    font-family: ElegantIcons;
    content: "\e030";
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}
.box_grid a.wish_bt.liked:after,
.box_list a.wish_bt.liked:after {
    content: "\e089";
    color: #fc5b62;
}
.box_grid a.wish_bt:hover.liked:after {
    color: #fc5b62;
}
.box_grid a.wish_bt:hover:after {
    content: "\e089";
    color: #fff;
}
.box_grid figure {
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
    height: 210px;
}
.box_grid figure small {
    position: absolute;
    left: 20px;
    top: 22px;
    color: #ccc;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    line-height: 1;
}
.box_grid figure .read_more,
.box_list figure .read_more {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -12px;
    -webkit-transform: translateY(10px);
    -moz-transform: translateY(10px);
    -ms-transform: translateY(10px);
    -o-transform: translateY(10px);
    transform: translateY(10px);
    text-align: center;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    -webkit-transition: 0.6s;
    transition: 0.6s;
    z-index: 2;
}
.box_grid figure .read_more span,
.box_list figure .read_more span {
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    border-radius: 20px;
    display: inline-block;
    color: #222;
    font-size: 0.75rem;
    padding: 5px 10px;
}
.box_list a.wish_bt,
.box_list figure small {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    position: absolute;
    line-height: 1;
}
.box_grid figure:hover .read_more,
.box_list figure:hover .read_more {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}
.box_grid figure a img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(1.1);
    backface-visibility: hidden;
    transition: 0.3s ease-in-out;
}
.box_list figure a img,
a.boxed_list {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
}
.box_grid .wrapper {
    padding: 25px;
}
.box_grid .wrapper h3,
.box_list .wrapper h3 {
    font-size: 1.25rem;
    margin-top: 0;
}
.box_grid ul {
    padding: 20px 15px;
}
.box_grid ul li,
.box_list ul li {
    display: inline-block;
    margin-right: 15px;
}
.box_grid ul li .score,
.box_list ul li .score {
    margin-top: -10px;
}
.box_grid ul li:last-child,
.box_list ul li:last-child {
    margin-right: 0;
    float: right;
}
.rating {
    color: #ccc;
}
.box_list {
    display: block;
    position: relative;
    margin: 0 15px 30px;
    min-height: 310px;
    -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}
.box_list a.wish_bt {
    right: 15px;
    top: 15px;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.1);
    padding: 9px 10px;
    display: inline-block;
    color: #555;
    border-radius: 3px;
}
.box_list a.wish_bt:hover.liked:after {
    color: #fc5b62;
}
.box_list a.wish_bt:hover:after {
    content: "\e089";
    color: #999;
}
.box_list figure {
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
    min-height: 310px;
}
.box_list figure small {
    right: 20px;
    top: 20px;
    color: #ccc;
    border-radius: 3px;
    z-index: 99;
}
.booking .panel-dropdown,
.layout_view {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
}
.box_list figure a img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    -moz-transform: translate(-50%, -50%) scale(1.1);
    -ms-transform: translate(-50%, -50%) scale(1.1);
    -o-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1);
    backface-visibility: hidden;
    transition: 0.3s ease-in-out;
    height: 320px;
    width: auto;
    max-width: none;
}
.animated .box_1,
.pictures figure a img {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
}
@media (max-width: 991px) {
    ul#top_menu li a.cart-menu-btn,
    ul#top_menu li a.logged {
        top: 0;
    }
    .dropdown-user .dropdown-menu ul li {
        margin: 0 !important;
    }
    .dropdown-user .dropdown-menu ul li:first-child {
        display: block !important;
    }
    #logo {
        float: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        text-align: center;
    }
    #logo img {
        width: auto;
        height: 30px;
        margin: 12px 0 0;
    }
    ul#additional_links {
        float: none;
        margin-top: 10px;
        color: #fff;
    }
    .panel-dropdown {
        background-color: #fff;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        -ms-border-radius: 3px;
        border-radius: 3px;
        height: 50px;
    }
    .box_list figure small {
        right: 15px;
        top: 15px;
    }
    .box_list figure {
        min-height: 220px;
        max-height: 220px;
        height: 220px;
    }
    .box_list figure a img {
        max-width: inherit;
        height: 460px;
        width: auto;
    }
}
.box_list .wrapper {
    padding: 30px 30px 20px;
    min-height: 245px;
}
.box_list small {
    text-transform: uppercase;
    color: #999;
    font-weight: 600;
}
.layout_view a,
.secondary_nav ul li a,
.switch-field label {
    color: rgba(0, 0, 0, 0.5);
}
.box_list ul {
    padding: 20px 15px 20px 30px;
    margin-bottom: 0;
}
#list_sidebar .box_list,
#list_sidebar .box_list figure {
    min-height: 330px;
}
#list_sidebar .box_list figure a img {
    height: 350px;
}
#list_sidebar .box_list .wrapper {
    min-height: 265px;
}
.layout_view {
    border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    padding: 4px 8px 3px;
}
.layout_view a.active {
    color: rgba(0, 0, 0, 0.8);
}
.grid ul li figcaption a:focus,
.grid ul li figcaption a:hover,
.layout_view a:hover,
.secondary_nav ul li a:hover,
a.btn_infobox_detail:before:hover,
ul#cat_nav li a#active,
ul#cat_nav li a.active,
ul#cat_nav li a:hover {
    color: #fc5b62;
}
.switch-field {
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.08);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
}
.switch-field input {
    position: absolute !important;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    width: 1px;
    border: 0;
    overflow: hidden;
}
.switch-field input:checked + label {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    color: rgba(0, 0, 0, 0.9);
}
.switch-field label {
    display: inline-block;
    min-width: 70px;
    font-weight: 600;
    font-size: 0.75rem;
    text-align: center;
    text-shadow: none;
    padding: 10px 12px 8px;
    line-height: 1;
    border-right: 1px solid rgba(0, 0, 0, 0.08);
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    margin: 0;
}
.switch-field label:first-of-type {
    border-left: 0;
}
.switch-field label:last-of-type {
    border-right: 0;
}
.switch-field label:hover {
    cursor: pointer;
    color: #fc5b62;
}
#filters_col {
    background-color: #fff;
    padding: 20px 20px 15px;
    margin-bottom: 25px;
    border: 1px solid #ededed;
}
#filters_col label {
    color: #333;
    font-weight: 400;
    font-size: 0.8125rem;
}
a#filters_col_bt {
    display: block;
    color: #333;
    position: relative;
    font-size: 1rem;
    font-weight: 600;
}
a#filters_col_bt:before {
    font-family: ElegantIcons;
    content: "\66";
    font-size: 1.625rem;
    position: absolute;
    right: 0;
    top: 0;
    line-height: 1;
    font-weight: 400;
}
.filter_type h6 {
    border-top: 1px solid #ededed;
    margin: 15px 0;
    padding: 15px 0 0;
    font-size: 0.8125rem;
}
.filter_type ul {
    list-style: none;
    padding: 0;
    margin: 0 0 15px;
}
.box_detail ul,
.filter_type ul li:last-child,
.secondary_nav ul,
.table.cart-list {
    margin-bottom: 0;
}
a.boxed_list {
    text-align: center;
    padding: 30px;
    border: 1px solid #ededed;
    display: block;
    transition: 0.3s ease-in-out;
    margin-bottom: 25px;
}
.box_detail figure a i,
.search_bar_error input[type="submit"] {
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
}
a.boxed_list i {
    font-size: 3.75rem;
    margin-bottom: 15px;
}
a.boxed_list h4 {
    font-size: 1.125rem;
    color: #333;
}
a.boxed_list p {
    color: #777;
    margin-bottom: 0;
}
.secondary_nav {
    background: #fff;
    border-bottom: 1px solid #ededed;
    padding: 15px 0;
}
.secondary_nav.is_stuck {
    z-index: 99;
    width: 100% !important;
    left: 0;
}
.secondary_nav ul li {
    display: inline-block;
    margin-right: 20px;
    font-weight: 500;
    font-size: 1rem;
}
.secondary_nav ul li a.active {
    color: rgba(0, 0, 0, 0.9);
}
.intro_title ul {
    float: right;
    margin: 10px 0 0;
}
.intro_title ul li {
    display: inline-block;
    margin-right: 20px;
    font-weight: 500;
}
section#description,
section#reviews {
    border-bottom: 3px solid #ededed;
    margin-bottom: 45px;
}
section#description h2,
section#reviews h2 {
    font-size: 1.5rem;
}
#error_page p,
.banner .wrapper p,
section#description h3,
section#reviews h3 {
    font-size: 1.3125rem;
}
section#reviews {
    border-bottom: none;
}
#review_summary {
    text-align: center;
    color: #fff;
    padding: 20px 10px;
    -webkit-border-radius: 5px 5px 5px 0;
    -moz-border-radius: 5px 5px 5px 0;
    -ms-border-radius: 5px 5px 5px 0;
    border-radius: 5px 5px 5px 0;
}
#review_summary strong {
    font-size: 2.625rem;
    display: block;
    line-height: 1;
}
#review_summary em {
    font-style: normal;
    font-weight: 500;
    display: block;
}
.reviews-container .progress {
    margin-bottom: 12px;
}
.reviews-container .review-box {
    position: relative;
    margin-bottom: 25px;
    padding-left: 100px;
    min-height: 100px;
}
.reviews-container .rev-thumb {
    position: absolute;
    left: 0;
    top: 0;
    width: 80px;
    height: 80px;
    background: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    border-radius: 5px;
    overflow: hidden;
}
.reviews-container .rev-thumb img {
    width: 80px;
    height: auto;
}
.reviews-container .rev-content {
    position: relative;
    padding: 25px 25px 0;
    border: 1px solid #ededed;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    border-radius: 5px;
}
#total_cart,
.box_detail .price {
    padding: 0 25px 15px;
    line-height: 1;
}
.reviews-container .rev-info {
    font-size: 0.75rem;
    font-style: italic;
    color: #777;
    margin-bottom: 10px;
}
.box_detail {
    padding: 25px 25px 15px;
    border: 1px solid #ededed;
    background-color: #f8f8f8;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: 30px;
}
.box_detail .price {
    border-bottom: 1px solid #ededed;
    margin: 0 -25px 25px;
}
.box_detail .price > span {
    font-size: 1.9375rem;
    font-weight: 600;
}
.box_detail .price > span > small {
    font-size: 0.6875rem;
    font-weight: 500;
}
.box_detail .price .score {
    float: right;
    margin-top: -5px;
}
.box_detail h3 {
    font-size: 1.25rem;
    margin: 25px 0 10px;
}
.box_detail ul li i {
    margin-right: 8px;
}
.box_detail figure {
    position: relative;
    background-color: #000;
}
.box_1 p,
.box_detail figure img,
.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.8;
}
.box_detail figure span {
    position: absolute;
    display: block;
    left: 0;
    bottom: 10px;
    text-align: center;
    width: 100%;
    color: #fff;
    font-weight: 600;
}
.box_detail figure a i {
    display: block;
    width: 60px;
    height: 60px;
    color: #fff;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    line-height: 60px;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -30px 0 0 -30px;
    font-size: 2.625rem;
    transition: 0.3s ease-in-out;
    z-index: 9;
}
.box_detail figure:hover i {
    -webkit-transform: scale(1.3);
    -moz-transform: scale(1.3);
    -ms-transform: scale(1.3);
    -o-transform: scale(1.3);
    transform: scale(1.3);
}
.booking input {
    font-weight: 500;
    height: 45px;
}
.booking input:focus {
    box-shadow: none;
    border: 1px solid #d2d8dd;
}
.booking .panel-dropdown {
    background-color: #fff;
    font-size: 0.875rem;
    border-radius: 3px;
    border: 1px solid #d2d8dd;
    padding-top: 10px;
    padding-bottom: 10px;
    margin: 0 0 10px;
}
.booking .panel-dropdown .panel-dropdown-content {
    top: 50px;
}
.booking .nice-select .current {
    font-weight: 500;
    color: #6f787f;
}
.booking .custom-select-form .nice-select.open,
.booking .custom-select-form .nice-select:active,
.booking .custom-select-form .nice-select:focus {
    border-color: #d2d8dd;
    outline: 0;
    box-shadow: none;
}
.booking .form-group {
    margin: 0 0 10px;
}
.booking .form-group i {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    font-size: 1.125rem;
    position: absolute;
    background-color: #fff;
    height: 43px;
    top: 1px;
    right: 1px;
    padding-right: 10px;
    display: block;
    width: 20px;
    box-sizing: content-box;
    line-height: 43px;
    z-index: 9;
    color: #999;
}
.booking .form-group i.icon_lock_alt {
    top: 36px;
}
img.thumb_visit {
    width: 70px;
    height: 70px;
    border: 2px solid #fff;
    margin-top: -5px;
    float: right;
    margin-left: 15px;
}
.cbp_tmtimeline > li .cbp_tmlabel {
    margin: 0 0 15px 25%;
    background: #eef3f7;
    padding: 20px;
    position: relative;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}
.cbp_tmtimeline > li .cbp_tmlabel p {
    margin-bottom: 0;
    font-size: 0.8125rem;
}
.cbp_tmtimeline > li .cbp_tmlabel h4 {
    margin: 0 0 5px;
    padding: 0;
    font-size: 1rem;
}
.cbp_tmtimeline > li .cbp_tmlabel:after {
    right: 100%;
    border: 10px solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-right-color: #eef3f7;
    top: 15px;
}
.cbp_tmtimeline > li .cbp_tmicon {
    width: 48px;
    height: 48px;
    font-weight: 500;
    background-color: #fff;
    text-transform: none;
    font-size: 1.5rem;
    line-height: 50px;
    position: absolute;
    color: #f93;
    border-radius: 50%;
    box-shadow: 0 0 0 2px #999;
    text-align: center;
    left: 18.5%;
    top: 0;
    margin: 0 0 0 -25px;
}
#pass-info,
a.social_bt {
    -webkit-border-radius: 3px;
    -ms-border-radius: 3px;
}
@media screen and (max-width: 65.375em) {
    .cbp_tmtimeline > li .cbp_tmtime span:last-child {
        font-size: 1.5em;
    }
}
@media screen and (max-width: 47.2em) {
    .cbp_tmtimeline > li .cbp_tmlabel:after,
    .cbp_tmtimeline > li:nth-child(odd) .cbp_tmlabel:after {
        border-right-color: transparent;
        border-bottom-color: #eef3f7;
    }
    .cbp_tmtimeline:before {
        display: none;
    }
    .cbp_tmtimeline > li .cbp_tmtime {
        width: 100%;
        position: relative;
        padding: 0 0 20px;
    }
    .cbp_tmtimeline > li .cbp_tmtime span {
        text-align: left;
    }
    .cbp_tmtimeline > li .cbp_tmlabel {
        margin: 0 0 30px;
        padding: 1em;
    }
    .cbp_tmtimeline > li .cbp_tmlabel:after {
        right: auto;
        left: 20px;
        top: -20px;
    }
    .cbp_tmtimeline > li .cbp_tmicon {
        position: relative;
        float: right;
        left: auto;
        margin: -65px 5px 0 0;
    }
}
ul.hotel_facilities {
    list-style: none;
    margin: 0;
    padding: 0;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}
ul.hotel_facilities li {
    margin-bottom: 10px;
    display: inline-block;
    width: 100%;
}
.room_type {
    padding: 30px 30px 10px;
}
.room_type.first {
    padding: 0 30px 15px;
}
.room_type.gray {
    background-color: #f8f8f8;
}
.room_type.last {
    padding: 30px 30px 0;
}
#login_bg,
#register_bg {
    background: url(../img/hero_in_bg_3.jpg) center center/cover no-repeat fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    min-height: 100vh;
    width: 100%;
}
#register_bg {
    background: url(../img/hero_in_bg_2.jpg) center center/cover no-repeat fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
#login figure,
#register figure {
    text-align: center;
    border-bottom: 1px solid #ededed;
    margin: -45px -60px 25px;
    padding: 20px 60px 25px;
}
#login aside,
#register aside {
    width: 430px;
    padding: 45px 60px 60px;
    position: absolute;
    left: 0;
    top: 0;
    overflow-y: auto;
    background-color: #fff;
    min-height: 100vh;
}
#login aside form,
#register aside form {
    margin-bottom: 60px;
    display: block;
}
#login aside form .form-group input,
#register aside form .form-group input,
.more_padding_left {
    padding-left: 40px;
}
#login aside form .form-group i,
#register aside form .form-group i {
    font-size: 1.3125rem;
    position: absolute;
    left: 12px;
    top: 34px;
    color: #ccc;
    width: 25px;
    height: 25px;
    display: block;
    font-weight: 400 !important;
}
#login aside .copy,
#register aside .copy {
    text-align: center;
    position: absolute;
    height: 30px;
    left: 0;
    bottom: 30px;
    width: 100%;
    color: #999;
    font-weight: 500;
}
.access_social {
    margin-top: 45px;
}
a.social_bt.linkedin {
    background-color: #0077b5;
}
a.social_bt.linkedin:before {
    content: "\e09d";
}
#pass-info {
    width: 100%;
    margin-bottom: 15px;
    color: #555;
    text-align: center;
    font-size: 0.75rem;
    padding: 5px 3px 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
#pass-info.weakpass {
    border: 1px solid #ff9191;
    background: #ffc7c7;
    color: #94546e;
}
#pass-info.stillweakpass {
    border: 1px solid #fbb;
    background: #fdd;
    color: #945870;
}
#pass-info.goodpass {
    border: 1px solid #c4eec8;
    background: #e4ffe4;
    color: #51926e;
}
#pass-info.strongpass {
    border: 1px solid #6ed66e;
    background: #79f079;
    color: #348f34;
}
#pass-info.vrystrongpass {
    border: 1px solid #379137;
    background: #48b448;
    color: #cdffcd;
}
.container_check {
    display: block;
    position: relative;
    padding-top: 5px;
    font-size: 0.8125rem;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-right: 10px;
}
.container_check input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.container_check .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    border: 1px solid #d2d8dd;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}
.container_check:hover input ~ .checkmark {
    background-color: #ededed;
    border: 1px solid transparent;
}
.container_check input:checked ~ .checkmark {
    background-color: #0072bc;
    border: 1px solid transparent;
}
.container_check .checkmark:after {
    content: "";
    position: absolute;
    display: none;
    left: 10px;
    top: 6px;
    width: 5px;
    height: 10px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.container_check input:checked ~ .checkmark:after,
.dp-panel.is-active,
.pictures figure a {
    display: block;
}
.map {
    width: 100%;
    height: 500px;
}
.map.map_single {
    height: 400px;
}
.infoBox {
    -webkit-animation: 0.9s fadeIn;
    animation: 0.9s fadeIn;
    padding-right: 50px;
}
.infoBox > img {
    position: absolute !important;
    right: 60px !important;
    top: 10px !important;
    z-index: 9999;
    width: 20px;
    height: 20px;
    display: block;
    cursor: pointer;
}
@-webkit-keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.marker_info {
    width: 240px;
    height: 270px;
    border-radius: 5px;
    text-align: left;
    background: #fff;
    position: relative;
    z-index: 999;
    font-family: Poppins, Helvetica, sans-serif;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.12);
}
.marker_info img {
    display: block;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    -ms-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
}
.marker_info h3 {
    font-size: 1rem;
    line-height: 1.1;
    font-weight: 500;
    margin-bottom: 3px;
    color: #444;
}
.marker_info em {
    display: inline-block;
    font-size: 0.75rem;
    color: #999;
}
.marker_info span {
    display: block;
    padding: 20px 20px 0;
    font-size: 0.8125rem;
    line-height: 1.2;
    color: #fff;
    position: relative;
}
.marker_info span strong {
    display: block;
    font-weight: 500;
}
.marker_info:after {
    right: 100%;
    top: 56%;
    border: 12px solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: transparent #fff transparent transparent;
    margin-top: -12px;
}
a.btn_infobox_detail {
    position: absolute;
    top: 20px;
    right: 15px;
    width: 20px;
    height: 20px;
}
.btn_infobox_get_directions:before,
a.btn_infobox_detail:before,
a.btn_infobox_phone:before {
    font-style: normal;
    font-weight: 400;
    font-family: ElegantIcons;
    font-size: 1.25rem;
    cursor: pointer;
}
a.btn_infobox_detail:before {
    content: "\70";
    color: #ccc;
}
.btn_infobox_get_directions,
a.btn_infobox_phone {
    border: none;
    display: inline-block;
    font-weight: 500;
    color: #fc5b62;
    background: 0 0;
    cursor: pointer;
    font-size: 0.8125rem;
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
    outline: 0;
}
#total_cart,
.list_articles ul li,
ul#cat_nav li,
ul.cart_details {
    border-bottom: 1px solid #ededed;
}
#toTop:hover,
.cluster-visible,
.form_title h3 strong {
    background-color: #fc5b62;
}
#panel_dates a.aside-panel-bt:hover,
.btn_infobox_get_directions:hover,
a.btn_infobox_phone:hover {
    color: #333;
}
.btn_infobox_get_directions:before {
    font-size: 0.875rem;
    content: "\e080";
    position: absolute;
    left: 0;
    top: 0;
}
a.btn_infobox_phone:before {
    font-size: 14px;
    content: "\e090";
    position: absolute;
    left: 0;
    top: -2px;
}
span.infobox_rate {
    display: inline-block;
    margin: -44px 0 0 -20px;
    float: left;
    background-color: #0054a6;
    padding: 5px 8px;
    font-weight: 500;
    text-align: left;
    font-size: 0.75rem;
}
.cluster-visible {
    text-align: center;
    font-size: 15px !important;
    color: #fff !important;
    font-weight: 500;
    border-radius: 50%;
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
}
.cluster-visible:before {
    border: 7px solid #fc5b62;
    opacity: 0.2;
    box-shadow: inset 0 0 0 4px #fc5b62;
    content: "";
    position: absolute;
    border-radius: 50%;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    animation: 2.5s infinite cluster-animation;
}
@keyframes cluster-animation {
    0%,
    100% {
        transform: scale(1.3) rotate(0);
    }
    50% {
        transform: scale(1.5) rotate(90deg);
    }
}
.map_contact {
    width: 100%;
    height: 465px;
}
.contact_info {
    background-color: #121921;
    color: #fff;
    padding: 30px 0;
    text-align: center;
}
.contact_info ul {
    margin: 0;
    padding: 0;
}
.contact_info ul li {
    float: left;
    width: 33.33%;
    position: relative;
    padding: 0 20px;
}
.contact_info ul li span {
    opacity: 0.7;
}
.contact_info ul li h4 {
    font-size: 1.125rem;
    color: #fc5b62;
}
.contact_info ul li i {
    color: #fff;
    font-size: 2.875rem;
    margin-bottom: 10px;
}
.error_message {
    font-weight: 500;
    color: #e3464c;
}
#error_page {
    width: 100%;
    height: 650px;
    justify-content: center;
    background: url(../img/pattern_1.svg) center bottom repeat-x #0054a6;
    color: #fff;
}
#error_page h2 {
    margin-top: 30px;
    font-size: 8.75rem;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1;
}
.search_bar_error {
    position: relative;
    margin-bottom: 60px;
}
.search_bar_error input[type="text"] {
    border: 0;
    height: 50px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    padding-left: 15px;
    -webkit-box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.15);
}
.search_bar_error input[type="submit"] {
    position: absolute;
    right: -1px;
    color: #fff;
    font-weight: 600;
    top: 0;
    border: 0;
    padding: 0 25px;
    height: 50px;
    cursor: pointer;
    -webkit-border-radius: 0 3px 3px 0;
    -moz-border-radius: 0 3px 3px 0;
    -ms-border-radius: 0 3px 3px 0;
    border-radius: 0 3px 3px 0;
    background-color: #fc5b62;
    transition: 0.3s ease-in-out;
}
.bs-wizard > .bs-wizard-step > .bs-wizard-dot,
.thumb_cart {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
}
.grid ul li figcaption,
.grid ul li figure img {
    height: 100%;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
}
.search_bar_error input[type="submit"]:hover {
    background-color: #ffc107;
    color: #333;
}
.bs-wizard {
    width: 100%;
    margin: 50px auto 0;
}
.bs-wizard > .bs-wizard-step {
    padding: 0;
    position: relative;
    width: 33.33%;
    float: left;
}
.bs-wizard > .bs-wizard-step.complete > .progress > .progress-bar {
    width: 100%;
}
.bs-wizard > .bs-wizard-step.active > .progress > .progress-bar,
.bs-wizard > .bs-wizard-step:last-child > .progress {
    width: 50%;
}
.bs-wizard > .bs-wizard-step:first-child.active > .progress > .progress-bar {
    width: 0%;
}
.bs-wizard > .bs-wizard-step:last-child.active > .progress > .progress-bar {
    width: 100%;
}
.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot:after,
.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0;
}
.bs-wizard > .bs-wizard-step:first-child > .progress {
    left: 50%;
    width: 50%;
}
.bs-wizard > .bs-wizard-step .bs-wizard-stepnum {
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
}
.bs-wizard > .bs-wizard-step > .bs-wizard-dot {
    position: absolute;
    width: 50px;
    height: 50px;
    display: block;
    top: 36px;
    left: 50%;
    margin-top: -5px;
    margin-left: -25px;
    border-radius: 50%;
    border: 2px solid #fff;
    background-color: #0054a6;
}
.bs-wizard > .bs-wizard-step > .bs-wizard-dot:after {
    font-family: Fontello;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    border-radius: 50px;
    position: absolute;
    top: -2px;
    left: 9px;
    font-size: 2rem;
}
.bs-wizard > .bs-wizard-step > .progress {
    position: relative;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    border-radius: 0;
    height: 2px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    margin: 34px 0;
}
.bs-wizard > .bs-wizard-step > .progress > .progress-bar {
    width: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    background: #fff;
}
.bs-wizard > .bs-wizard-step.disabled a.bs-wizard-dot {
    pointer-events: none;
}
.table.cart-list th,
.table.options_cart th {
    background-color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    border: 0;
    padding-top: 0;
}
#forgot_pw label,
.box_cart label,
.table.cart-list td strong,
ul.cart_details li,
ul.list_3 li strong {
    font-weight: 500;
}
.table.cart-list.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.025);
}
#barraInferior li a,
#confirm,
#toTop,
.divider,
.dp-massage-meta,
.dp-top,
.form_title h3 strong,
.grid ul,
.grid ul li figcaption,
.lightbox-content,
.modal-content,
.payment-card,
a.box_topic,
a.social_bt,
ul.share-buttons {
    text-align: center;
}
.thumb_cart {
    border-radius: 50%;
    overflow: hidden;
    width: 60px;
    height: 60px;
    margin-right: 10px;
    float: left;
}
.thumb_cart img {
    width: 60px;
    height: auto;
}
.item_cart {
    display: inline-block;
    margin: 20px 0 0 15px;
    font-weight: 500;
}
#total_cart {
    font-size: 1.5rem;
    font-weight: 500;
    margin: 0 -25px 20px;
}
ul.cart_details {
    margin: 0 0 25px;
    padding: 0 0 15px;
}
ul.cart_details li span {
    float: right;
}
.form_title {
    position: relative;
    padding-left: 55px;
    margin-bottom: 0;
}
.form_title h3 {
    margin: 0;
    padding: 0;
    font-size: 1.3125rem;
}
.form_title h3 strong {
    width: 40px;
    height: 40px;
    display: inline-block;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    font-size: 1.125rem;
    line-height: 42px;
    position: absolute;
    left: 0;
    top: -5px;
}
.form-control,
.message {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
}
.form_title p {
    color: #999;
    margin: 0;
    padding: 0;
    font-size: 0.75rem;
    line-height: 14px;
}
.list_articles ul li a,
a.box_topic,
ul#cat_nav li a {
    color: #555;
    display: block;
}
.cards-payment {
    margin-top: 28px;
}
.box_cart .step {
    padding: 15px 55px 0;
    margin: 0;
}
.message {
    background-color: #f8f8f8;
    padding: 15px;
    margin-bottom: 30px;
    border-radius: 3px;
}
.box_style_cat,
a.box_topic {
    background: #fff;
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
}
.box_cart,
.box_general,
.box_style_cat {
    margin-bottom: 25px;
}
.message p {
    margin: 0;
}
#confirm {
    font-size: 1rem;
    margin-top: 20px;
}
.box_cart hr {
    margin: 30px -25px;
}
.box_cart .btn_1.outline,
.box_cart a.btn_1.outline {
    border: 2px solid #999;
    color: #999;
    padding: 12px 40px;
}
.box_cart .btn_1.outline:hover,
.box_cart a.btn_1.outline:hover {
    color: #fff;
    border: 2px solid #0054a6;
}
.cart-options {
    position: relative;
    padding: 25px 0 0;
    border-top: 1px solid #ededed;
}
.apply-coupon .form-group {
    position: relative;
    float: left;
    margin-right: 10px;
}
.apply-coupon .form-control {
    padding: 10px 12px;
}
.grid ul {
    margin: 0 0 25px;
    padding: 0;
    width: 100%;
}
.grid ul li {
    display: inline-block;
    margin: -3px;
    padding: 0;
    min-height: 100%;
    width: 25%;
    background-color: #000;
    list-style: none;
}
@media (max-width: 991px) {
    #list_sidebar .box_list .wrapper,
    .box_list .wrapper {
        min-height: inherit;
    }
    #list_sidebar .box_list figure {
        min-height: 200px;
        max-height: 200px;
        height: 200px;
    }
    #list_sidebar .box_list figure a img {
        max-width: 100%;
        height: auto;
        width: inherit;
    }
    #review_summary {
        margin-bottom: 15px;
    }
    .booking .panel-dropdown {
        height: inherit;
    }
    .map_contact {
        height: 350px;
        margin-bottom: 45px;
    }
    .table.cart-list,
    .table.cart-list tbody,
    .table.cart-list td,
    .table.cart-list th,
    .table.cart-list thead,
    .table.cart-list tr {
        display: block;
        border: 0;
    }
    .table.cart-list thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .table.cart-list tr {
        border: 1px solid #eee;
    }
    .table.cart-list td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
    }
    .table.cart-list td:before {
        position: absolute;
        top: 12px;
        left: 12px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
    }
    .table.cart-list td:first-of-type:before,
    .table.cart-list td:nth-of-type(2):before,
    .table.cart-list td:nth-of-type(3):before,
    .table.cart-list td:nth-of-type(4):before {
        font-weight: 600;
        color: #111;
    }
    .table.cart-list td:first-of-type:before {
        content: "Item";
    }
    .table.cart-list td:nth-of-type(2):before {
        content: "Discount";
    }
    .table.cart-list td:nth-of-type(3):before {
        content: "Total";
    }
    .table.cart-list td:nth-of-type(4):before {
        content: "Actions";
    }
    td.options {
        text-align: left !important;
    }
    .box_style_cat,
    .cards-payment,
    .thumb_cart {
        display: none;
    }
    .item_cart {
        margin: 5px 0 0;
    }
    .box_cart .step {
        padding: 15px 0 0;
    }
    .cart-options .fix_mobile {
        float: left !important;
    }
    .grid ul li {
        width: 50%;
    }
}
.grid ul li figure {
    position: relative;
    overflow: hidden;
    margin: -3px;
}
.grid ul li figure img {
    width: 100%;
    transition: 0.3s ease-in-out;
}
.grid ul li figure:focus img,
.grid ul li figure:hover img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}
.grid ul li figure:focus figcaption .caption-content,
.grid ul li figure:hover figcaption .caption-content {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}
.grid ul li figcaption {
    position: absolute;
    top: 0;
    left: 0;
    padding: 15% 0;
    width: 100%;
    font-size: 0.875rem;
    opacity: 0;
    transition: 0.3s ease-in-out;
}
.grid ul li figcaption .caption-content {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -100px;
    width: 200px;
    -webkit-transform: translate(0, 15px);
    -moz-transform: translate(0, 15px);
    -ms-transform: translate(0, 15px);
    -o-transform: translate(0, 15px);
    transform: translate(0, 15px);
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.grid ul li figcaption i {
    font-size: 1.875rem;
}
.grid ul li figcaption p {
    margin-bottom: 0;
    margin-top: 10px;
    text-transform: uppercase;
    font-weight: 400;
}
.mfp-zoom-in .mfp-with-anim {
    opacity: 0;
    transition: 0.2s ease-in-out;
    transform: scale(0.8);
}
.mfp-zoom-in.mfp-bg {
    opacity: 0;
    transition: 0.3s ease-out;
}
.mfp-zoom-in.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: scale(1);
}
.mfp-zoom-in.mfp-removing .mfp-with-anim {
    transform: scale(0.8);
    opacity: 0;
}
.box_style_cat {
    border: 1px solid #ededed;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
}
.list_articles ul,
ul#cat_nav,
ul.list_3 {
    list-style: none;
    margin: 0;
    padding: 0;
}
ul#cat_nav li i {
    font-size: 1rem;
    margin: 2px 10px 0 0;
    float: left;
}
ul#cat_nav li:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}
ul#cat_nav li a {
    position: relative;
    padding: 15px 10px;
}
ul#cat_nav li a:after {
    font-family: fontello;
    content: "\e89b";
    position: absolute;
    right: 15px;
    top: 15px;
}
ul#cat_nav li a span {
    font-size: 0.6875rem;
    color: #999;
}
.hero_in form {
    animation-delay: 1.3s;
    -webkit-animation-delay: 1.3s;
    -moz-animation-delay: 1.3s;
}
a.box_topic {
    padding: 40px 30px 15px;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    margin-bottom: 30px;
    overflow: hidden;
}
.box_faq i,
.checkboxes label,
a#forgot {
    color: #999;
}
a.box_topic:hover {
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -o-transform: translateY(-10px);
    transform: translateY(-10px);
}
a.box_topic i {
    font-size: 3.75rem;
    color: #32a067;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    border-radius: 50px;
    background-color: rgba(50, 160, 103, 0.05);
    width: 100px;
    height: 100px;
    line-height: 100px;
    margin-bottom: 15px;
}
.list_articles ul li {
    float: left;
    width: 45%;
    margin-right: 45px;
    padding: 15px 0;
}
.list_articles ul li a:hover {
    color: #fc5b62;
    -webkit-transform: translateX(5px);
    -moz-transform: translateX(5px);
    -ms-transform: translateX(5px);
    -o-transform: translateX(5px);
    transform: translateX(5px);
}
.list_articles ul li i {
    margin-right: 10px;
    font-size: 1rem;
    position: relative;
    top: 2px;
}
ul.list_3 li {
    margin-bottom: 0;
    position: relative;
    padding-left: 20px;
}
ul.list_3 li:before {
    font-family: fontello;
    content: "\ea3e";
    position: absolute;
    left: 0;
    top: 0;
}
.box_general {
    border: 1px solid #ededed;
    padding: 25px 25px 5px;
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
}
.header-video.adventure .wrapper {
    padding-top: 60px;
    text-align: left;
    font-size: 0.875rem;
}
.header-video.adventure .wrapper small {
    text-transform: uppercase;
    font-weight: 500;
    font-size: 0.875rem;
    display: inline-block;
    margin-bottom: 15px;
}
.header-video.adventure .wrapper p {
    max-width: 400px;
}
@media (max-width: 1024px) {
    .header-video.adventure #hero_video {
        background: url(../img/bg_fallback_video_adventure.jpg) center right/cover #ccc;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
    }
    .header-video.adventure #hero_video > div {
        background-color: rgba(0, 0, 0, 0.5);
    }
    .header-video.adventure {
        background: 0 0;
    }
}
a.grid_item_adventure figure em {
    font-style: normal;
    font-weight: 500;
    font-size: 0.75rem;
    text-transform: uppercase;
}
a.grid_item.latest_adventure em {
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 500;
    font-style: normal;
}
.banner {
    background: url(../img/banner_bg_desktop.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    width: 100%;
    height: 420px;
    margin-bottom: 60px;
    position: relative;
}
.banner .wrapper {
    color: #fff;
    padding: 60px;
}
.banner .wrapper small {
    text-transform: uppercase;
    font-size: 0.875rem;
    font-weight: 500;
}
.banner .wrapper h3 {
    color: #fff;
    font-size: 2rem;
    margin: 15px 0 0;
}
.call_section.adventure {
    background: url(../canonlavieja/tubing2.jpg) center center/cover no-repeat fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.adventure_feat h3 {
    font-size: 1.3125rem;
    margin-top: 20px;
}
.hero_in.adventure_detail {
    text-align: left;
    height: 600px;
}
.hero_in.adventure_detail:before {
    background: url(../img/bg_adventure_detail.jpg) center center/cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}
.adventure_detail .container,
.hero_in.adventure_detail .container,
.sign-in-wrapper {
    position: relative;
    height: 100%;
}
#panel_dates,
#toTop,
.layer {
    position: fixed;
}
.hero_in.adventure_detail .wrapper a.btn_photos {
    left: 30px;
    bottom: 35px;
}
.hero_in.adventure_detail .wrapper .main_info {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 999;
    padding-bottom: 30px;
}
.hero_in.adventure_detail .wrapper .main_info em {
    font-style: normal;
    text-transform: uppercase;
}
.hero_in.adventure_detail .wrapper .main_info h1 {
    color: #fff;
    margin: 0;
    text-transform: none;
    font-size: 2.25rem;
    font-weight: 600;
}
.hero_in.adventure_detail .wrapper .main_info h3 {
    color: #fff;
    margin: 0;
    font-size: 1.625rem;
    font-weight: 400;
}
.hero_in.adventure_detail .wrapper .main_info p {
    font-weight: 300;
    margin-bottom: 0;
    font-size: 0.875rem;
}
.hero_in.adventure_detail .wrapper .main_info ul {
    margin: 10px 0 0;
    padding-bottom: 0;
    list-style: none;
}
.hero_in.adventure_detail .wrapper .main_info ul li {
    display: inline-block;
    line-height: 1.2;
    margin-right: 30px;
}
.hero_in.adventure_detail .wrapper .main_info ul li span {
    display: block;
    margin-top: 5px;
    font-size: 0.75rem;
}
.hero_in.adventure_detail .wrapper .main_info ul li i {
    margin-bottom: 5px;
    display: block;
    font-size: 1.5rem;
}
.adventure_detail .main_info {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 999;
    padding: 0 15px 25px;
}
.adventure_description h2 {
    font-size: 1.625rem;
}
ul.list_feat {
    margin: 0 0 25xp;
    padding: 0;
    list-style: none;
}
ul.list_feat li {
    float: left;
    width: 30%;
    margin: 0 15px 15px 0;
    border: 1px solid #ededed;
    padding: 25px;
    min-height: 180px;
}
@media (max-width: 991px) {
    .list_articles ul li {
        float: none;
        width: 100%;
        margin-right: 0;
    }
    ul.list_feat li {
        width: 45%;
    }
}
ul.list_feat li h4 {
    font-size: 1rem;
    margin: 0;
}
ul.list_feat li p {
    margin: 0;
    color: #777;
}
.layer {
    top: 0;
    left: 0;
    width: 100%;
    min-width: 100%;
    min-height: 100%;
    z-index: 999;
    background-color: rgba(0, 0, 0, 0.35);
    -moz-transition: 0.1s;
    -o-transition: 0.1s;
    -webkit-transition: 0.1s;
    -ms-transition: 0.1s;
    transition: 0.1s;
    opacity: 0;
    visibility: hidden;
}
#panel_dates,
.bg_color_1,
.timeline h3:before {
    background-color: #fff;
}
#panel_dates {
    right: -100%;
    bottom: 0;
    width: 400px;
    height: 100%;
    opacity: 0;
    transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    z-index: 9999999;
    -webkit-box-shadow: 1px 0 5px 0 rgba(50, 50, 50, 0.55);
    -moz-box-shadow: 1px 0 5px 0 rgba(50, 50, 50, 0.55);
    box-shadow: 1px 0 5px 0 rgba(50, 50, 50, 0.55);
    overflow: auto;
    overflow-x: hidden;
}

#panel_dates.show {
    visibility: visible;
    opacity: 1;
    right: 0;
}
#panel_dates a.aside-panel-bt {
    font-size: 24px;
    position: relative;
    left: 10px;
    top: 0;
    width: 24px;
    height: 24px;
    color: #ccc;
}
.additional_txt {
    padding: 0 25px 10px;
}
.additional_txt p {
    font-size: 0.75rem;
    line-height: 1.4;
    margin-bottom: 10px;
}
.timeline {
    padding-left: 25px;
    border-left: 1px solid #ededed;
}
.timeline h3 {
    font-size: 1.125rem;
    position: relative;
}
.timeline h3:before {
    font-family: ElegantIcons;
    content: "\5c";
    position: absolute;
    left: -35px;
    top: -3px;
    font-size: 1.3125rem;
    color: #ccc;
}
.add_bottom_45,
.pictures {
    margin-bottom: 45px;
}
.pictures figure {
    margin: 0;
    overflow: hidden;
    position: relative;
    height: 100px;
    width: 100px;
    display: inline-block;
}
.pictures figure a span {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-size: 1.625rem;
}
.pictures figure a img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    backface-visibility: hidden;
    width: 100%;
    z-index: 1;
    transition: 0.3s ease-in-out;
}
.pictures figure a:hover img {
    -webkit-transform: translate(-50%, -50%) scale(1.05);
    -moz-transform: translate(-50%, -50%) scale(1.05);
    -ms-transform: translate(-50%, -50%) scale(1.05);
    -o-transform: translate(-50%, -50%) scale(1.05);
    transform: translate(-50%, -50%) scale(1.05);
}
@media (min-width: 1400px) {
    .container-custom {
        max-width: 1600px;
        padding-left: 60px;
        padding-right: 60px;
    }
}
.opacity-mask {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
}
.box_faq,
.form-group {
    position: relative;
}
.form-control {
    padding: 10px;
    height: 42px;
    font-size: 0.875rem;
    border-radius: 3px;
    border: 1px solid #d2d8dd;
}
.box_1 {
    color: #fff;
    padding: 45px;
    opacity: 0;
}
.animated .box_1 {
    animation: 0.3s ease-in-out 0.3s forwards color;
    -webkit-animation-delay: 0.3s;
    -moz-animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    opacity: 0;
    backface-visibility: hidden;
}
.call_section {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    min-height: 400px;
    padding: 6px;
}
.call_sectionn {
    background: url(../monocara.jpg) center center/cover no-repeat fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    min-height: 400px;
}
.box_faq {
    padding-left: 50px;
}
.box_faq i {
    font-size: 2.25rem;
    position: absolute;
    left: 0;
    top: 0;
}
.custom-select-form .nice-select {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    border: 1px solid #d2d8dd;
    height: 45px;
    line-height: 42px;
}
.custom-select-form .nice-select:hover {
    border-color: #d2d8dd;
}
.custom-select-form .nice-select.open,
.custom-select-form .nice-select:active,
.custom-select-form .nice-select:focus {
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
ul.share-buttons {
    padding: 0;
    list-style: none;
    margin: 0 0 25px;
}
.add_bottom_15,
a.social_bt {
    margin-bottom: 15px;
}
ul.share-buttons li {
    display: inline-block;
    margin: 0 5px 5px;
}
ul.share-buttons li a {
    background: #fff;
    border: 1px solid #666;
    border-radius: 50px;
    font-size: 13px;
    padding: 7px 20px;
    transition: 0.3s;
    display: inline-block;
    line-height: 17px;
    font-weight: 500;
}
ul.share-buttons li a.fb-share {
    border-color: #3b5998;
    color: #3b5998;
}
ul.share-buttons li a.fb-share:hover {
    background: #3b5998;
    color: #fff;
}
ul.share-buttons li a.gplus-share {
    border-color: #dd4b39;
    color: #dd4b39;
}
ul.share-buttons li a.gplus-share:hover {
    background: #dd4b39;
    color: #fff;
}
ul.share-buttons li a.twitter-share {
    border-color: #1da1f2;
    color: #1da1f2;
}
ul.share-buttons li a.twitter-share:hover {
    background: #1da1f2;
    color: #fff;
}
ul.share-buttons li i {
    font-size: 1rem;
    position: relative;
    right: 3px;
    top: 2px;
}
#toTop {
    right: 25px;
    bottom: 25px;
    z-index: 9999;
    width: 46px;
    height: 46px;
    opacity: 1;
    border-radius: 50%;
    font-size: 21px;
    color: #fff;
    cursor: pointer;
}
#toTop:after {
    position: relative;
    display: block;
    top: 50%;
}
.add_bottom_30 {
    margin-bottom: 30px;
}
.add_bottom_60 {
    margin-bottom: 60px;
}
.add_bottom_75 {
    margin-bottom: 75px;
}
.add_top_10 {
    margin-top: 10px;
}
.add_top_15 {
    margin-top: 15px;
}
.add_top_20 {
    margin-top: 20px;
}
.add_top_30 {
    margin-top: 30px;
}
.add_top_60 {
    margin-top: 60px;
}
.nomargin_top {
    margin-top: 0;
}
.nomargin,
.nopadding {
    margin: 0 !important;
}
.nopadding {
    padding: 0 !important;
}
.margin_60 {
    padding-top: 60px;
    padding-bottom: 60px;
}
.margin_60_35 {
    padding-top: 60px;
    padding-bottom: 35px;
}
.margin_80 {
    padding-top: 80px;
    padding-bottom: 80px;
}
@media (max-width: 991px) {
    .margin_80 {
        padding-bottom: 60px;
        padding-top: 60px;
    }
}
.margin_80_55 {
    padding-top: 80px;
    padding-bottom: 55px;
}
@media (max-width: 991px) {
    .margin_80_55 {
        padding-top: 60px;
        padding-bottom: 35px;
    }
}
.margin_80_0 {
    padding-top: 80px;
}
@media (max-width: 991px) {
    .margin_60_0,
    .margin_80_0 {
        padding-top: 60px;
    }
}
.margin_60_0 {
    padding-top: 60px;
}
.margin_30_95 {
    padding-top: 30px;
    padding-bottom: 95px;
}
@media (max-width: 991px) {
    .margin_30_95 {
        padding-top: 15px;
        padding-bottom: 35px;
    }
    .hidden_tablet {
        display: none !important;
    }
}
@media (max-width: 575px) {
    .hero_in.hotels_detail,
    .hero_in.restaurants_detail,
    .hero_in.tours_detail {
        height: 500px;
    }
    footer h5 {
        margin: 25px 0 10px;
    }
    ul#footer-selector li:last-child {
        margin-top: 5px;
    }
    .hero_single .wrapper h3 {
        font-size: 1.4375rem;
    }
    .hero_single.version_2 .wrapper h3 {
        font-size: 1.375rem;
    }
    a.grid_item figure {
        height: 220px !important;
    }
    .switch-field label {
        min-width: inherit;
    }
    .secondary_nav ul li:last-child {
        display: inline-block;
    }
    ul.list_feat li {
        width: 100%;
        min-height: inherit;
    }
    .margin_60_35 {
        padding-top: 30px;
        padding-bottom: 5px;
    }
    .margin_80 {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .margin_80_55 {
        padding-top: 45px;
        padding-bottom: 15px;
    }
    .margin_60_0,
    .margin_80_0 {
        padding-top: 45px;
    }
    .margin_30_95 {
        padding-top: 5px;
        padding-bottom: 30px;
    }
}

.my-toggle {
    background: #fff;
    border: 0;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    color: #888;
    cursor: pointer;
    font-size: 0.625rem;
    font-weight: 700;
    margin-right: 5px;
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    text-transform: uppercase;
}
.close-modal,
.open-modal {
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}
.my-toggle:focus,
.my-toggle:hover {
    background-color: #eee;
    color: #555;
    outline: transparent;
}
.hideShowPassword-wrapper {
    width: 100% !important;
}
a#forgot {
    font-weight: 500;
    font-size: 0.8125rem;
}
#forgot_pw {
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 99;
    min-height: 460px;
    display: none;
}
a.social_bt {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    color: #fff;
    min-width: 200px;
    display: block;
    padding: 12px;
    line-height: 1;
    position: relative;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    cursor: pointer;
}
a.social_bt:hover {
    -webkit-filter: brightness(115%);
    filter: brightness(115%);
}
a.social_bt.facebook:before,
a.social_bt.google:before,
a.social_bt.linkedin:before {
    font-family: ElegantIcons;
    position: absolute;
    left: 12px;
    top: 10px;
    font-size: 1rem;
    color: #fff;
}
a.social_bt.facebook {
    background-color: #3b5998;
}
a.social_bt.facebook:before {
    content: "\e093";
}
a.social_bt.google {
    background-color: #dc4e41;
}
a.social_bt.google:before {
    content: "\e096";
    top: 12px;
}
.divider {
    height: 1px;
    margin: 30px 0 20px;
    background-color: #e1e8ed;
}
.divider span {
    position: relative;
    top: -20px;
    background-color: #fff;
    display: inline-block;
    padding: 10px;
    font-style: italic;
}
.mfp-bottom-bar {
    padding: 0 10px !important;
}
.mfp-counter {
    right: 10px !important;
    color: #fff !important;
}
.mfp-bg {
    opacity: 0.8 !important;
}
.social-bar {
    position: fixed;
    top: 30%;
    left: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    z-index: 100;
}
.icon {
    background: #fff;
    padding: 0.4rem;
    border-radius: 10px;
    transition:
        transform 0.3s,
        box-shadow 0.3s;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.close-modal,
.open-modal,
.polaroid {
    transition: transform 0.3s;
}
.icon img {
    width: 32px;
    height: 32px;
    animation: 2.5s ease-in-out infinite iconFloat;
}
@keyframes iconFloat {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-5px);
    }
}
.icon:hover {
    transform: scale(1.2);
    box-shadow: 0 0 10px rgba(0, 150, 255, 0.6);
}

/* ================================
   MOBILE / TABLET TOP SOCIAL BAR
   Solo afecta a .social-bar
   ================================ */

@media (max-width: 991.98px) {

  /* Convertir social-bar en barra superior */
  .social-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;

    flex-direction: row;
    justify-content: center;
    align-items: center;

    padding: 10px 12px;
    gap: 10px;

    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
    border-bottom: 1px solid rgba(0,0,0,0.08);

    z-index: 9999;
  }

  /* Ajustar iconos en móvil */
  .social-bar .icon {
    padding: 0.45rem;
    border-radius: 12px;
  }

  .social-bar .icon img {
    width: 26px;
    height: 26px;
    animation: none; /* menos distracción en móvil */
  }

  /* Manito: más discreta en móvil */
  .social-bar .hand-hint {
    display: none;
  }

  /* Empujar el contenido hacia abajo
     para que el header no lo tape */
  body {
    padding-top: 70px;
  }
}



/*iconos derecha*/
.contact-bar-right {
  position: fixed;
  top: 35%;
  right: 12px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 120;
}

.contact-icon {
  width: 35px;
  height: 35px;
  border-radius: 10%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(0,0,0,0.3);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.contact-icon img {
  width: 32px;
  height: 32px;
}

.contact-icon:hover {
  transform: scale(1.12);
}

/* WhatsApp */
.contact-icon.whatsapp {
  background: #25d366;
  animation: pulse 2s infinite;
}

/* Gmail */
.contact-icon.gmail {
  background: #ffffff;
}

@keyframes pulse {
  0% { box-shadow: 0 0 0 0 rgba(37,211,102,0.6); }
  70% { box-shadow: 0 0 0 18px rgba(37,211,102,0); }
  100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); }
}

/*iconos derecha*/
.insurance-card:hover,
.payment-card:hover {
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15);
}
.hand-hint {
    width: 40px;
    margin-top: 15px;
    animation: 1.5s ease-in-out infinite handMove;
    filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.8));
}
@keyframes handMove {
    0%,
    100% {
        transform: translateY(0) rotate(0);
    }
    50% {
        transform: translateY(-6px) rotate(-5deg);
    }
}
#barraInferior {
    overflow: hidden;
    width: 100%;
    z-index: 99999999999;
}
#barraInferior ul {
    list-style-type: none;
    margin: 0 auto;
    padding-left: 30%;
    overflow: hidden;
    background-color: #333;
    position: fixed;
    bottom: 0;
    width: 100%;
}
#barraInferior li {
    float: left;
}
#barraInferior li a {
    display: block;
    color: #fff;
    padding: 14px 16px;
    text-decoration: none;
}
#barraInferior li a:hover {
    background-color: #111;
}
#barraInferior li a:active {
    background-color: #4caf50;
}
#installButtonContainer {
    position: fixed;
    bottom: 4px;
    left: 15px;
    z-index: 1000000;
}
#installButton {
    background-color: #007bff;
    color: #fff;
    border: none;
    border-radius: 4%;
    width: 160px;
    height: 40px;
    font-size: 24px;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
    transition: background-color 0.3s;
}
#installButton:hover {
    background-color: #0056b3;
}
@media (max-width: 767px) {
    a.box_feat,
    a.box_topic {
        padding: 20px 20px 0;
    }
    .box_list figure a img {
        height: 350px;
    }
    .reviews-container .review-box {
        padding-left: 0;
    }
    .reviews-container .rev-thumb {
        position: static;
        margin-bottom: 10px;
    }
    img.thumb_visit {
        display: none;
    }
    .room_type h4 {
        margin-top: 25px;
    }
    #login figure,
    #register figure {
        margin: -30px -30px 20px;
        padding: 15px 60px 20px;
    }
    #login aside,
    #register aside {
        width: 100%;
        padding: 30px;
    }
    .access_social {
        margin-top: 30px;
    }
    .contact_info ul li {
        width: 100%;
        float: none;
        margin-bottom: 35px;
        padding: 0;
    }
    .contact_info ul li:last-child {
        margin-bottom: 5px;
    }
    #error_page {
        background-size: auto 300px;
        padding: 0;
        height: 500px;
    }
    #error_page h2 {
        font-size: 4.5rem;
    }
    #error_page p {
        font-size: 1.125rem;
    }
    .cart_section {
        background-size: auto 300px;
    }
    .cart_section.last {
        height: 500px;
    }
    .grid ul li {
        width: 100%;
        min-height: 100%;
        float: none;
    }
    .header-video.adventure .wrapper h3 {
        font-size: 36px !important;
        margin-top: 0 !important;
    }
    .header-video.adventure .wrapper p {
        font-size: 21px !important;
    }
    .banner {
        background: url(../img/banner_bg_mobile.jpg) center center/cover no-repeat;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
    }
    .banner .wrapper {
        padding: 30px;
    }
    .hero_in.adventure_detail {
        height: 550px;
    }
    .hero_in.adventure_detail .wrapper .main_info h1 {
        font-size: 2rem;
    }
    .hero_in.adventure_detail .wrapper .main_info h3 {
        margin-top: 10px;
        font-size: 1.3125rem;
    }
    #panel_dates {
        width: 100%;
    }
    .hidden_mobile {
        display: none !important;
    }
    #installButtonContainer {
        position: fixed;
        bottom: 4px;
        left: 15px;
        z-index: 1000000;
    }
    #installButton {
        background-color: #007bff;
        color: #fff;
        border: none;
        border-radius: 4%;
        width: 160px;
        height: 40px;
        font-size: 20px;
        cursor: pointer;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
        transition: background-color 0.3s;
    }
    .modal {
        top: 20%;
    }
}
.open-modal {
    display: block;
    margin: 20px auto;
    padding: 10px 20px;
    color: #fff;
    background: linear-gradient(45deg, #ff5733, #ffbd33);
    border: none;
    border-radius: 5px;
}
.close-modal:hover,
.open-modal:hover {
    transform: scale(1.05);
}
.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    justify-content: center;
    align-items: center;
}
.dp-media,
.dp-pass-media,
.eco-collage,
.glow-border,
.polaroid {
    position: relative;
}
.modal-content {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    width: 90%;
    max-width: 600px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}
.image-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 10px;
}
.image-grid img {
    width: 100%;
    border-radius: 5px;
    cursor: pointer;
}
.close-modal {
    display: block;
    margin-top: 15px;
    padding: 10px 20px;
    color: #fff;
    background: linear-gradient(45deg, #33ff57, #3af);
    border: none;
    border-radius: 5px;
}
#modal:target,
.dp-lightbox.active,
.eco-collage,
.eco-section,
.lightbox.active {
    display: flex;
}
.eco-section {
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    padding: 40px 20px;
}
.eco-collage {
    flex: 1;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    max-width: 600px;
}
.eco-button,
.payment-btn {
    display: inline-block;
    margin-top: 20px;
    font-weight: 700;
}
.polaroid {
    background-color: #fff;
    padding: 10px 10px 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    border-radius: 4px;
    width: 160px;
    height: auto;
    transform: rotate(var(--angle));
}
.polaroid:hover {
    transform: scale(1.05) rotate(var(--angle));
    z-index: 10;
}
.polaroid img {
    width: 100%;
    height: auto;
    display: block;
}
.eco-text {
    flex: 1;
    background-color: #5ba12d;
    color: #fff;
    padding: 30px;
    border-radius: 8px;
    max-width: 500px;
    margin-left: 20px;
}
.eco-text h2 {
    font-size: 24px;
    font-weight: 700;
}
.eco-text p {
    margin-top: 15px;
    font-size: 16px;
    line-height: 1.6;
}
.eco-button {
    background-color: #fff;
    color: #000;
    padding: 12px 20px;
    border-radius: 25px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background 0.3s;
}
.eco-button:hover {
    background-color: #e5e5e5;
}
.insurance-card {
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
    margin-top: 20px;
    transition:
        transform 0.3s,
        box-shadow 0.3s;
}
.glow-border,
.payment-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}
.insurance-card:hover {
    transform: translateY(-5px);
}
.insurance-info ul {
    list-style: none;
    margin: 0;
}
.insurance-info li {
    margin-bottom: 10px;
    font-size: 15px;
}
.insurance-info a {
    color: #007bff;
    text-decoration: underline;
}
.dp-btn,
.dp-link,
.dp-massage-btn,
.insurance-info a:hover,
.payment-btn {
    text-decoration: none;
}
.glow-border {
    padding: 25px;
    z-index: 1;
    overflow: hidden;
}
.glow-border::before {
    content: "";
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(270deg, #fcae35, #ff5f6d, #ffc371, #fcae35);
    background-size: 600% 600%;
    border-radius: 10px;
    z-index: -1;
    animation: 6s linear infinite glow-rotate;
}
.payment-card {
    padding: 30px;
}
.payment-card h3 {
    color: #333;
    font-family: "DM Serif Display", serif;
    margin-bottom: 15px;
}
.payment-card p {
    color: #555;
    margin-bottom: 20px;
}
.card-icons img {
    margin: 0 10px;
    width: 48px;
    height: auto;
}
.payment-btn {
    background: #0070ba;
    color: #fff;
    padding: 12px 25px;
    border-radius: 8px;
    transition: background 0.3s;
}
.dp-h2,
.dp-link,
.dp-pass-title,
.dp-tab {
    font-weight: 800;
}
.payment-btn:hover {
    background: #005fa3;
}
.payment-card,
.yelp-card {
    transition:
        transform 0.3s,
        box-shadow 0.3s;
}
.dp-pass-card,
.dp-tour-card {
    transition:
        transform 220ms,
        box-shadow 220ms;
    height: 100%;
}
.payment-card:hover,
.yelp-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}
.stars {
    letter-spacing: 3px;
}
.dp-passes-section {
    background: 0 0;
}
.dp-title {
    font-family: "DM Serif Display", serif;
    color: #fcae35;
}
.dp-subtitle {
    max-width: 900px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.6;
}
.dp-pass-card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.18);
}
.dp-pass-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 55px rgba(0, 0, 0, 0.22);
}
.dp-pass-media {
    display: block;
    aspect-ratio: 16/9;
    overflow: hidden;
}
.dp-pass-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform 240ms;
    display: block;
}
.dp-massage-card:hover .dp-massage-media img,
.dp-pass-card:hover .dp-pass-media img,
.dp-tour-card:hover .dp-media-img {
    transform: scale(1.08);
}
.dp-badges {
    display: flex;
    flex-wrap: wrap;
}
.dp-badge {
    display: inline-flex;
    align-items: center;
}
.dp-badge .dp-ico {
    font-weight: 900;
}
.dp-pass-body {
    padding: 18px 18px 20px;
}
.dp-pass-title {
    font-size: 22px;
    margin: 0 0 10px;
    line-height: 1.2;
}
.dp-pass-title a,
.dp-title a {
    color: #111;
    text-decoration: none;
}
.dp-link:hover,
.dp-pass-title a:hover,
.dp-title a:hover {
    text-decoration: underline;
}
.dp-pass-text {
    color: #3d3d3d;
    line-height: 1.6;
    margin: 0 0 16px;
}
.dp-cta-row,
.dp-pass-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.dp-btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    letter-spacing: 0.5px;
}
.dp-btn-outline {
    background: 0 0;
    border-color: #0b6a8a;
    color: #0b6a8a;
}
.dp-btn-outline-success {
    background: 0 0;
    border-color: #59ce02;
    color: #2f7b00;
}
.dp-btn-warning {
    background: #fcae35;
    color: #2a1b00;
}
.dp-btn-outline-warning {
    background: 0 0;
    border-color: #fcae35;
    color: #a85e00;
}
.dp-feature-card,
.dp-trust-card {
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.15);
}
.dp-massage-card,
.dp-tour-card {
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}
.dp-feature-green {
    background: #4b8f1a;
    color: #fff;
}
.dp-feature-body {
    padding: 26px;
}
.dp-h2 {
    margin: 0 0 10px;
    font-size: 22px;
    line-height: 1.2;
}
.dp-lead {
    margin: 0 0 14px;
    opacity: 0.95;
    line-height: 1.6;
}
.dp-massage-overlay,
.dp-massage-overlay-content {
    opacity: 0;
    transition: opacity 240ms;
    position: absolute;
}
.dp-bullets {
    margin: 0 0 18px;
    padding-left: 18px;
    display: grid;
    gap: 8px;
}
.dp-btn {
    display: inline-flex;
    justify-content: center;
    padding: 0 16px;
}
.dp-btn-dark {
    background: #fff;
    color: #1a1a1a;
}
.dp-btn-outline-dark {
    background: 0 0;
    border-color: rgba(255, 255, 255, 0.65);
    color: #fff;
}
.dp-trust-card {
    background: linear-gradient(180deg, azure, #f0f8ff);
}
.dp-trust-head {
    background: rgba(255, 255, 255, 0.92);
    padding: 18px 18px 12px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.dp-trust-title {
    margin: 0 0 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
    color: #fcae35;
}
.dp-tabs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.dp-tab {
    border: 1px solid rgba(0, 0, 0, 0.12);
    background: #fff;
    color: #333;
    padding: 8px 12px;
    border-radius: 9px;
    cursor: pointer;
}
.dp-tab.is-active {
    background: #59ce02;
    border-color: #59ce02;
    color: #0b1b06;
}
.dp-trust-body {
    padding: 16px 18px 18px;
}
.dp-mini {
    background: rgba(255, 255, 255, 0.94);
    border-radius: 14px;
    padding: 14px;
    margin-bottom: 12px;
}
.dp-mini-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    color: #1a1a1a;
}
.dp-mini-grid {
    display: grid;
    gap: 6px;
    color: #333;
}
.dp-link {
    color: #0b6a8a;
}
.dp-muted {
    color: rgba(0, 0, 0, 0.7);
}
.dp-icons {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin: 12px 0 14px;
}
.dp-btn-pay {
    background: #0d6efd;
    color: #fff;
}
.dp-btn-yelp {
    background: #dc3545;
    color: #fff;
}
.dp-reviews-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}
@media (max-width: 991px) {
    .dp-feature-body {
        padding: 20px;
    }
    .dp-trust-body,
    .dp-trust-head {
        padding-left: 14px;
        padding-right: 14px;
    }
}
.dp-jetski-section {
    background: #f7f7f7;
}
.dp-sec-title {
    font-family: "DM Serif Display", serif;
    color: #333;
    font-weight: 700;
    margin: 0 0 8px;
}
.dp-sec-subtitle {
    margin: 0;
    color: #666;
}
.dp-tour-card {
    background: #fff;
    border: 0;
    border-radius: 18px;
    display: flex;
    flex-direction: column;
}
.dp-badge,
.dp-btn {
    border-radius: 999px;
}
.dp-massage-media img,
.dp-media-img {
    transform: scale(1.02);
    transition: transform 240ms;
    object-fit: cover;
}
.dp-media,
.dp-media-img {
    display: block;
    width: 100%;
}
.dp-massage-card:hover,
.dp-tour-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.14);
}
.dp-btn:hover,
.dp-massage-btn:hover {
    transform: translateY(-1px);
}
.dp-media {
    aspect-ratio: 16/9;
    overflow: hidden;
    background: #e9eef3;
}
.dp-media-img {
    height: 100%;
    object-position: center;
}
.dp-media-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.45) 100%);
    pointer-events: none;
}
.dp-badges {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 12px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
}
.dp-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 800;
    background: rgba(255, 255, 255, 0.92);
    color: #1b1b1b;
}
.dp-badge-price {
    margin-left: auto;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
}
.dp-body {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}
.dp-title {
    font-size: 20px;
    margin: 0 0 6px;
    font-weight: 900;
    line-height: 1.2;
}
.dp-tag {
    margin: 0 0 6px;
    font-weight: 800;
    color: #d12b2b;
}
.dp-price {
    margin: 0;
    font-weight: 900;
    color: #222;
}
.dp-actions {
    margin-top: auto;
    display: grid;
    gap: 10px;
}
.dp-btn {
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    letter-spacing: 0.3px;
    border: 2px solid transparent;
    transition: transform 160ms;
}
.dp-btn-primary {
    background: #0b6a8a;
    color: #fff;
}
.dp-btn-success {
    background: #59ce02;
    color: #0b1b06;
}
.dp-massage-card {
    border-radius: 18px;
    background: #fff;
    transition:
        transform 220ms,
        box-shadow 220ms;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.dp-massage-media {
    position: relative;
    display: block;
    aspect-ratio: 3/4;
    width: 100%;
    background: #e9eef3;
    overflow: hidden;
}
.dp-massage-media img {
    width: 100%;
    height: 100%;
    display: block;
}
.dp-massage-overlay {
    inset: 0;
    background: linear-gradient(180deg, rgba(47, 109, 93, 0.05) 20%, rgba(47, 109, 93, 0.75) 100%);
}
.dp-massage-overlay-content {
    inset: 0;
    display: grid;
    place-content: center;
    padding: 18px;
    text-align: center;
    color: #fff;
}
.dp-massage-overlay-content h5 {
    margin: 0 0 6px;
    font-weight: 900;
}
.dp-massage-overlay-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
}
.dp-massage-footer {
    padding: 14px 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.dp-massage-title {
    font-weight: 900;
    color: #173b33;
    line-height: 1.1;
}
.dp-massage-sub {
    font-size: 13px;
    color: #6b7280;
    margin-top: 4px;
}
.dp-massage-actions {
    display: grid;
    gap: 12px;
    justify-items: center;
}
.dp-paypal,
.lightbox {
    justify-content: center;
}
.dp-paypal {
    display: flex;
}
.dp-paypal input[type="image"] {
    max-width: 175px;
    height: auto;
    margin: 0;
    display: block;
}
.dp-massage-btn {
    height: 44px;
    border-radius: 999px;
    border: 2px solid #2f6d5d;
    color: #2f6d5d;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    transition:
        transform 160ms,
        background 160ms,
        color 160ms;
    width: 100%;
}
.dp-massage-btn:hover {
    background: rgba(47, 109, 93, 0.08);
}
.dp-massage-btn-solid {
    background: #2f6d5d;
    color: #fff;
    border-color: #2f6d5d;
}
.dp-massage-btn-solid:hover {
    background: #255a4c;
}
@media (max-width: 768px) {
    .eco-section {
        flex-direction: column;
    }
    .eco-text {
        margin-left: 0;
        margin-top: 20px;
    }
    .eco-collage {
        justify-content: center;
    }
    .dp-massage-media {
        aspect-ratio: 16/10;
    }
}
.boats-section {
    padding: 10px 0 30px;
}
.boat-card {
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
    background: rgba(255, 255, 255, 0.92);
    border: none;
}
.boat-card .card-header {
    background: rgba(255, 255, 255, 0.95);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    padding: 12px 14px;
}
.boat-collage {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: repeat(2, 140px);
    gap: 8px;
    padding: 12px;
}
.boat-collage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
    cursor: pointer;
    transform: translateZ(0);
}
.boat-collage img:first-child {
    grid-row: 1 / span 2;
}
.paypal-wrap {
    display: grid;
    gap: 12px;
    justify-items: center;
    padding: 14px 16px 18px;
}
.paypal-wrap .form-select {
    max-width: 260px;
}
.lightbox {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.86);
    align-items: center;
    z-index: 9999;
    padding: 18px;
}
.lightbox-content {
    max-width: 1100px;
    width: 100%;
}
#lightbox-img {
    max-width: 100%;
    max-height: 78vh;
    border-radius: 12px;
}
.lightbox-controls {
    margin-top: 12px;
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}
.lightbox-controls button {
    background: #fff;
    border: none;
    padding: 10px 14px;
    font-size: 16px;
    cursor: pointer;
    border-radius: 10px;
}
@media (max-width: 575.98px) {
    .boat-collage {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 220px 120px 120px;
    }
    .boat-collage img:first-child {
        grid-column: 1/-1;
        grid-row: 1/2;
    }
}
.dp-gallery {
    position: relative;
    overflow: hidden;
    padding: 10px 0 0;
}
.dp-gallery::after,
.dp-gallery::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 80px;
    pointer-events: none;
    z-index: 2;
}
.dp-gallery::before {
    left: 0;
    background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
}
.dp-gallery::after {
    right: 0;
    background: linear-gradient(to left, #fff, rgba(255, 255, 255, 0));
}
.dp-gallery-track {
    display: flex;
    gap: 14px;
    padding: 10px 0 20px;
    width: max-content;
    animation: 30s linear infinite dpScroll;
    will-change: transform;
}
.dp-gallery:hover .dp-gallery-track {
    animation-play-state: paused;
}
@keyframes dpScroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}
.dp-gallery-item {
    flex: 0 0 auto;
    display: block;
    width: 320px;
    height: 210px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.1);
    transform: translateZ(0);
    background: #fff;
}
.dp-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s;
}
.dp-gallery-item:hover img {
    transform: scale(1.06);
}
@media (max-width: 992px) {
    .dp-gallery-item {
        width: 280px;
        height: 190px;
    }
}
.dp-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.86);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    padding: 18px;
}
.dp-lb-close,
.dp-lb-nav {
    position: absolute;
    background: rgba(255, 255, 255, 0.95);
    line-height: 1;
    cursor: pointer;
}
.dp-lb-img {
    max-width: min(1100px, 92vw);
    max-height: 82vh;
    border-radius: 14px;
    box-shadow: 0 16px 50px rgba(0, 0, 0, 0.35);
}
.dp-lb-close {
    top: 14px;
    right: 18px;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: none;
    font-size: 28px;
}
.dp-lb-nav {
    top: 50%;
    transform: translateY(-50%);
    width: 52px;
    height: 52px;
    border-radius: 999px;
    border: none;
    font-size: 34px;
    display: grid;
    place-items: center;
}
.dp-lb-prev {
    left: 18px;
}
.dp-lb-next {
    right: 18px;
}
@media (max-width: 576px) {
    .dp-gallery-item {
        width: 240px;
        height: 170px;
    }
    .dp-gallery::after,
    .dp-gallery::before {
        width: 50px;
    }
    .dp-lb-nav {
        width: 44px;
        height: 44px;
        font-size: 28px;
    }
}


/* ===============================
   GRAN COMBO DE VERANO - DP
=============================== */

.dp-summer-section{
  background: linear-gradient(180deg, #ffffff 0%, #f6f7fb 100%);
  padding: 10px 0 30px;
}

.dp-summer-head{
  text-align: center;
  max-width: 920px;
  margin: 0 auto 18px;
}

.dp-summer-pill{
  display: inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(252, 174, 53, 0.16); /* #FCAE35 soft */
  color: #8a5a00;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  font-size: 12px;
}

.dp-summer-title{
  margin: 10px 0 6px;
  font-family: 'DM Serif Display', serif;
  font-size: 42px;
  line-height: 1.1;
  color: #111;
}

.dp-summer-subtitle{
  margin: 0 auto;
  color: #5a6572;
  font-size: 16px;
  max-width: 720px;
}

.dp-summer-card{
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 18px;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 18px 60px rgba(0,0,0,0.10);
  border: 1px solid rgba(0,0,0,0.06);
}

/* LEFT VISUAL */
.dp-summer-visual{
  position: relative;
  padding: 16px;
  background: radial-gradient(900px 400px at 20% 10%, rgba(89,206,2,0.18), transparent 60%),
              radial-gradient(900px 400px at 90% 40%, rgba(252,174,53,0.20), transparent 60%),
              #0b1020;
}

.dp-summer-badge{
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 14px;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,0.10);
  box-shadow: 0 10px 25px rgba(0,0,0,0.18);
  text-align: center;
  min-width: 140px;
}

.dp-badge-top{
  display:block;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 12px;
  color: #1b1b1b;
  letter-spacing: 0.6px;
}

.dp-badge-price{
  display:block;
  font-weight: 900;
  font-size: 32px;
  line-height: 1.1;
  color: #FCAE35;
}

.dp-badge-bottom{
  display:block;
  font-size: 12px;
  color: #5a6572;
  font-weight: 700;
}

.dp-summer-grid{
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
  height: 100%;
  min-height: 420px;
  padding-top: 62px; /* espacio para el badge */
}

.dp-summer-photo{
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.10);
  margin: 0;
}

.dp-summer-photo.is-main{
  grid-row: 1 / span 2;
}

.dp-summer-photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display:block;
  transform: scale(1.02);
  transition: transform 0.45s ease;
}

.dp-summer-photo:hover img{
  transform: scale(1.08);
}

.dp-summer-photo figcaption{
  position: absolute;
  left: 10px;
  bottom: 10px;
  background: rgba(0,0,0,0.55);
  color: #fff;
  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.3px;
}

/* RIGHT CONTENT */
.dp-summer-body{
  padding: 22px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.dp-summer-kicker{
  display:inline-block;
  width: fit-content;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(89,206,2,0.14); /* #59CE02 soft */
  color: #2c6a00;
  font-weight: 800;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
}

.dp-summer-h3{
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.25;
  color: #111;
  font-weight: 800;
}

.dp-summer-points{
  margin: 0;
  padding-left: 18px;
  color: #3b4450;
}

.dp-summer-points li{
  margin: 8px 0;
}

.dp-summer-actions{
  display: flex;
  gap: 10px;
  margin-top: 14px;
  flex-wrap: wrap;
}

.dp-summer-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 14px;
  border-radius: 14px;
  font-weight: 900;
  text-decoration: none;
  border: 1px solid transparent;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  min-width: 210px;
}

.dp-summer-btn:hover{
  transform: translateY(-2px);
}

.dp-primary{
  background: linear-gradient(180deg, #59CE02 0%, #3ea001 100%);
  color: #0b1020;
  box-shadow: 0 14px 30px rgba(89,206,2,0.28);
}

.dp-ghost{
  background: #fff;
  color: #111;
  border-color: rgba(0,0,0,0.14);
}

.dp-summer-micro{
  margin-top: 12px;
  color: #6a7685;
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.dp-micro-dot{
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #FCAE35;
  box-shadow: 0 0 0 6px rgba(252,174,53,0.18);
}

/* RESPONSIVE */
@media (max-width: 991.98px){
  .dp-summer-card{
    grid-template-columns: 1fr;
  }
  .dp-summer-grid{
    min-height: 360px;
  }
  .dp-summer-title{
    font-size: 34px;
  }
}

@media (max-width: 575.98px){
  .dp-summer-grid{
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    min-height: auto;
  }
  .dp-summer-photo.is-main{
    grid-row: auto;
  }
  .dp-summer-photo{
    height: 220px;
  }
  .dp-summer-btn{
    width: 100%;
    min-width: unset;
  }
}

/* Distintivo: Canopy only $75 */
.dp-summer-photo.dp-canopy .dp-mini-price{
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  padding: 7px 10px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .2px;
  color: #0b1020;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(0,0,0,0.12);
  box-shadow: 0 10px 22px rgba(0,0,0,0.18);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.dp-summer-photo.dp-canopy .dp-mini-price::before{
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 8px;
  border-radius: 50%;
  background: #59CE02;
  box-shadow: 0 0 0 5px rgba(89,206,2,0.18);
  vertical-align: middle;
}

/* ===============================
   PAYPAL BLOQUE - DP
=============================== */
.dp-pay-wrap{
  margin-top: 14px;
  padding: 14px;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(11,16,32,0.03), rgba(11,16,32,0.00));
  border: 1px solid rgba(0,0,0,0.08);
}

.dp-pay-title{
  font-weight: 900;
  color: #111;
  margin-bottom: 10px;
  font-size: 14px;
  letter-spacing: .2px;
}

.dp-pay-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.dp-pay-box{
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.10);
  box-shadow: 0 12px 26px rgba(0,0,0,0.06);
  padding: 12px;
}

.dp-pay-box.dp-pay-alt{
  border-color: rgba(89,206,2,0.35);
  box-shadow: 0 12px 26px rgba(89,206,2,0.10);
}

.dp-pay-label{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.dp-pay-name{
  font-weight: 900;
  color: #111;
  font-size: 13px;
}

.dp-pay-price{
  font-weight: 900;
  color: #FCAE35;
  font-size: 14px;
}

.dp-pay-form{
  margin: 0;
  display: flex;
  justify-content: center;
}

.dp-paypal-btn{
  max-width: 100%;
  height: auto;
  transform: translateZ(0);
}

.dp-pay-note{
  margin-top: 10px;
  color: #6a7685;
  font-size: 12px;
}

/* Responsive */
@media (max-width: 575.98px){
  .dp-pay-grid{
    grid-template-columns: 1fr;
  }
}

