body {
    /*background: #f2f2f2;*/
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    color: #000000;
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
    line-height: 120%;
}

h1 {
    font-size: 22px;
    text-align: center;
    padding-bottom: 5.5%;
}


h2 {
    font-size: 18px;
}

h3 {
    font-size: 20px;
}

h4 {
    font-size: 18px;
    font-weight: 400;
}

h5 {
    font-size: 16px;
    font-weight: 700;
}

h6 {
    font-size: 14px;
    font-weight: 700;
}


*[ng-click] {
    cursor: pointer;
}

.cursor-pointer {
    cursor: pointer;
}

.search #header {
    display: none;
}

#header {
    text-align: center;
    padding-top: 1%;
    display: none;
}


.loading-container {
    display: table !important;
    background-color: rgba(255, 255, 255, 0.8);
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1000;
    left: 0;
    top: 0;
}

.loading-container .loading-content {
    display: table-cell;
    vertical-align: middle;
}

.bold {
    font-weight: bold;
}

/*---------------------------------------------
//  Contents
//---------------------------------------------
*/

.resultHeader {
    padding: 20px;
}

.budget_header {
    padding: 5px;
}


.makeBookingButton {
    background: #3b3b3b;
    color: #FFF;
    text-align: center;
    padding: 2%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


.makeBookingButton .price {
    font-size: 20px;
    line-height: 80%;
}

.makeBookingButton .price_per_day,
.makeBookingButton .price_per_person,
.makeBookingButton .price_per_person_per_day {
    display: none;
    padding-top: 5px;
}

#contenedor_productos .product_dates label {
    display: none;
}

#contenedor_productos .product_dates .inputBox {
    border: 1px solid #c0c0c0;
    font-size: 13px;
    margin: 0 0 10px 0;
}

.b_mostrar_otros_productos {
    display: block !important;
    text-align: center;
    border-radius: 4px;
    padding: 10px;
    font-size: 16px;
    text-transform: uppercase;
    background: rgba(0, 0, 0, 0.6);
    color: #FFF;
    width: 80%;
    margin: 0 auto;
}

.b_mostrar_otros_productos:hover {
    background: rgba(0, 0, 0, 0.8);
}

.wvg_products .hasLongDescription h4:after {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 10px;
    content: '\e904';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

}

.wvg_products .hasLongDescription h4:hover {
    opacity: 0.8;
}

/*---------------------------------------------
//  WVG Popup
//---------------------------------------------
*/

.ngdialog-open #page {
    position: relative;
    z-index: 1;
}

.ngdialog.largeDialog.padding50,
.ngdialog {
    padding: 2%;
    z-index: 99 !important;
}

.wvg_detail_header h1,
.ngdialog.ngdialog-theme-plain .ngdialog-content .wvg_detail_header h1 {
    font-weight: 200;
    font-size: 20px;
    background-color: rgba(0, 0, 0, 0.6);
    color: #FFF;
    padding: 20px 30px;
    text-align: left;
}


.wvg_detail_icons {
    background-color: rgba(0, 0, 0, 0.1);
    padding: 10px 30px;
}

.wvg_detail_tabs {
    text-align: center;
    display: table;
    margin: 0 auto;
    padding: 20px 0 0 0;
    border-spacing: 4px
}

.wvg_detail_tabs > div {
    display: inline-block;
    background: rgba(0, 0, 0, 0.4);
    color: #FFF;
    padding: 5px 10px;
    width: 70px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wvg_detail_tabs > div.active {
    border: 1px solid rgba(0, 0, 0, 0.4);
    background: transparent;
    color: rgba(0, 0, 0, 0.4);
}

.wvg_detail_icons > div {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    padding: 0 7px;
}

.detail_img img {
    max-height: 50px;
    width: auto;
    vertical-align: middle;
    margin: 0 5px 5px 0;
    max-width: 70px;
    height: auto;
}


.wvg_detail_icons > div label {
    display: none;
    position: absolute;
    background-color: #FFF;
    max-width: 300px;
    padding: 10px;
    text-align: left;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    margin-top: 10px;
    z-index: 10;
}

.wvg_detail_icons > div:hover label {
    display: block;
}

.wvg_detail_content img {
    max-width: 100%;
    height: auto;
}

.wvgPopup .ngdialog-content {
    position: relative;
    background: #fff;
    margin: 0 auto;
    max-width: 100%;
    width: 800px;
}

.wvgPopup .wvg_detail_content {
    padding: 20px 30px;
}

.wvg_detail_content #content2,
.wvg_detail_content #content3 {
    text-align: center;
}

.wvgPopup .wvg_detail_content p {
    margin-bottom: 10px;
}

.wvg_detail_gallery > div {
    background-position: center center;
    display: inline-block;
    width: 44%;
    margin: 1%;
    padding: 10% 0;
}

.wvgPopup .ngdialog-close {
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 0;
}

.wvgPopup .ngdialog-close:before {
    background: transparent;
    color: #fff;
    content: "\00D7";
    font-size: 50px;
    font-weight: 700;
    height: 50px;
    line-height: 50px;
    position: absolute;
    right: 5px;
    text-align: center;
    top: 10px;
    width: 30px;
}

.wvgPopup .ngdialog-close:hover:before,
.wvgPopup .ngdialog-close:active:before {
    opacity: 0.8;
}

/*---------------------------------------------
//  Resset CSS popup content
//---------------------------------------------
*/
.html_content h1,
.html_content h2,
.html_content h2,
.html_content h3,
.html_content h3,
.html_content h4,
.html_content h5,
.html_content h6 {
    font-weight: 700;
    text-align: left;
    margin-bottom: 5px;
}

.html_content h1 {
    font-size: 30px;
}

.html_content h2 {
    font-size: 26px;
}

.html_content h3 {
    font-size: 22px;
}

.html_content h4 {
    font-size: 20px;
}

.html_content h5 {
    font-size: 18px;
}

.html_content h6 {
    font-size: 16px;
}

.html_content li ul, .html_content li ol {
    margin: 0 1.5em;
}

.html_content ul, .html_content ol {
    margin: 0 1.5em 1.5em 1.5em;
}

.html_content ul {
    list-style-type: disc;
}

.html_content ol {
    list-style-type: decimal;
}

.html_content ol ol {
    list-style: upper-alpha;
}

.html_content ol ol ol {
    list-style: lower-roman;
}

.html_content ol ol ol ol {
    list-style: lower-alpha;
}


.html_content table {
    display: table;
    border-collapse: separate;
    border-spacing: 2px;
    border-color: gray
}

.html_content thead {
    display: table-header-group;
    vertical-align: middle;
    border-color: inherit
}

.html_content tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit
}

.html_content tfoot {
    display: table-footer-group;
    vertical-align: middle;
    border-color: inherit
}

.html_content table > tr {
    vertical-align: middle;
}

.html_content col {
    display: table-column
}

.html_content colgroup {
    display: table-column-group
}

.html_content tr {
    display: table-row;
    vertical-align: inherit;
    border-color: inherit
}

.html_content td, .html_content th {
    display: table-cell;
    vertical-align: inherit
}

.html_content th {
    font-weight: bold
}

.html_content caption {
    display: table-caption;
    text-align: -webkit-center
}

/*---------------------------------------------
//  Booking Budget
//---------------------------------------------
*/

#page.bookingForm:before,
#booking_budget {
    background-color: rgba(0, 0, 0, 0.1);
}

#page.bookingForm {
    padding-top: 50px;
}

#budget_header_mobile {
    background: rgba(0, 0, 0, 0.6);
    color: #FFF;
    font-weight: 700;
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

#budget_header_mobile .total {
    float: left;
    line-height: 50px;
    padding: 0 0 0 5%;
}

.boton_show_header {
    display: inline-block;
    width: 50px;
    height: 50px;
    cursor: pointer;
    float: right;
    background: #3b3b3b;
}

.boton_show_header span {
    margin: 0 auto;
    position: relative;
    top: 25px;
    -webkit-transition-duration: 0s;
    -webkit-transition-delay: .0s;
}

.boton_show_header span:before {
    margin-top: -8px;
}

.boton_show_header span:after {
    margin-top: 8px;
}

.boton_show_header span:before,
.boton_show_header span:after {
    position: absolute;
    content: '';
    -webkit-transition-property: margin, -webkit-transform;
    -webkit-transition-duration: .2s;
    -webkit-transition-delay: .2s, 0;
}

.boton_show_header span,
.boton_show_header span:before,
.boton_show_header span:after {
    width: 25px;
    height: 2px;
    background-color: white;
    display: block;
}

.showBudget .boton_show_header span {
    background-color: rgba(0, 0, 0, 0.0);
    -webkit-transition-delay: .0s;
}

.showBudget .boton_show_header span:before {
    margin-top: 0;
    -webkit-transform: rotate(45deg);
    -webkit-transition-delay: 0, .2s;
}

.showBudget .boton_show_header span:after {
    margin-top: 0;
    -webkit-transform: rotate(-45deg);
    -webkit-transition-delay: 0, .2s;
}


#booking_budget {
    transition: all 1.5s ease;
    height: 0;
    opacity: 0;
    overflow: hidden;
}

.showBudget #booking_budget {
    height: auto;
    opacity: 1;
    overflow: inherit;
}

#booking_budget .info_pack_img_group {
    position: relative;
    text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.4);
    padding: 8% 0 1% 0;
    color: #FFF;
    text-align: center;
    background: #000;
    overflow: hidden;
}

#booking_budget .info_pack_img {
    position: absolute;
    width: 110%;
    height: 110%;
    left: -5%;
    top: -5%;
    opacity: 0.7;
    -webkit-filter: blur(6px);
    -moz-filter: blur(6px);
    -o-filter: blur(6px);
    -ms-filter: blur(6px);
    filter: blur(6px);
    background-position: center center;
}


.info_pack_img_group h2:after {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 5px;
    content: '\e904';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;


}

#booking_budget .info_pack_text {
    position: relative;
}

.booking_budget_child.occupancy {
    text-align: left;
    font-size: 13px;
    margin: 2% 3%;
    padding: 3%;
    /* border: 1px solid #FFF; */
    background-color: rgba(0, 0, 0, 0.4);
}

.booking_budget_child.occupancy > div {
    text-transform: uppercase;
    padding: 0 0 6px 30px;
    position: relative;
    display: inline-block;
    vertical-align: top;
}


.booking_budget_child.checkout {
    margin-top: -4px;
}

.booking_budget_child.occupancy .name {
    font-weight: 300;
}


.booking-icon,
.booking_budget_checkin_checkout:before,
.booking_budget_child .nights:before,
.booking_budget_child .adults:before {
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

}

.booking_budget_checkin_checkout:before,
.booking_budget_child .nights:before,
.booking_budget_child .adults:before {
    left: 10px;
    top: 5px;
    position: absolute;
}

.booking-icon.icon-night:before,
.booking_budget_child .nights:before {
    content: "\e901";
}

.booking-icon.icon-person:before,
.booking_budget_child .adults:before {
    content: "\e902";
}

.booking_budget_checkin_checkout:before {
    content: "\e900";
}


#booking_budget h2 {
    padding-bottom: 10px;
}

#booking_budget h3 {
    text-align: center;
    padding-top: 30px;
    padding-bottom: 5px;
}

.bgi {
    display: table;
    width: 100%;
}

.bgi > div {
    display: table-cell;
    padding-right: 3px;
    vertical-align: middle;
}

.bgi > div:last-child {
    padding-right: 0;
}

.bgi.level_2 > div.bg_name:first-child {
    padding-left: 6%;
}

.bg_from_to {
    width: 1%;
    font-size: 11px;
    text-align: right;
}

.bgi .bg_import,
.bgi .bg_price {
    text-align: right;
    width: 16%;
}

.bgi .bg_quantity,
.bgi .bg_interval,
.bgi .bg_units {
    text-align: right;
    width: 6%;
}

.bgi .bg_units {
    text-align: left;
    white-space: nowrap;
}

.budget_items,
.payment_items {
    padding: 0 4%;
}

.budget_items > div[budget-item],
.payment_items > div,
#booking_budget .bgi_child.child_level_0 {
    border-bottom: 1px solid rgba(0, 0, 0, 0.6);
    padding: 2% 0;
}

#booking_budget .bgi_child.child_level_0:last-child,
#booking_budget > .budget_items > div[budget-item]:nth-last-child(2),
.payment_items > div:last-child,
.payment_items > div:nth-last-child(2) {
    border: none;
}


#booking_budget .bgi.level_0,
#booking_budget .totalStayImport {
    background: rgba(0, 0, 0, 0.6);
    color: #FFF;
    font-weight: 700;
    margin: 0 -4%;
    padding: 2% 4%;
    width: 108%;
}

.bgi.level_2 {
    font-size: 12px;
    padding: 0.5% 0 0.5% 1%;
}


.bgi .bg_name span.moreInfoLabel {
    margin: 0 3px 0 -12px;
}

.tooltipDesripcion {
    position: absolute;
    background-color: #FFF;
    max-width: 300px;
    padding: 10px;
    text-align: left;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    margin-top: 10px;
    z-index: 10;
}

/*---------------------------------------------
//  Forms
//---------------------------------------------
*/

#booking_tabs {
    max-width: 725px;
    width: 100%;
    margin: 0 auto;
}

.section_group {
    background: #FFF;
    -webkit-box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2);
    margin: 0 0 30px 0;
    padding: 2%;
}

.section_group_title h2,
.fields_container h2 {
    text-align: center;
    padding: 0 0 4% 0;
}

h2#reservas_pago {
    background-color: rgba(0, 0, 0, 0.8);
    padding: 1%;
    color: #FFF;
}

.section_group_description {
    text-align: center;
}

.section_header {
    display: table;
    width: 100%;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 600;
    padding: 1% 2% 0 2%;
}

.section_header .cell {
    vertical-align: bottom
}

#booking_buttons_bar {
    text-align: right;
    padding: 1%;
    max-width: 725px;
    width: 100%;
    margin: 0 auto;
}


.booking_btns {
    border: 1px solid #00833E;
    color: #00833E;
    background-color: #FFF;
    display: inline-block;
    text-align: right;
    position: relative;
    border-radius: 4px;
    padding: 10px 10px 10px 50px;
    vertical-align: middle;
}

.assistance_box {
    float: right;
}

.booking_btn_next {
    color: #FFF;
    background: #00833E;
    text-align: left;
    padding: 10px 50px 10px 10px;
}

.booking_btns span,
.assistance_box span {
    display: block;
    line-height: 100%;
}


.booking_btns .btn_arrow {
    font-size: 50px;
    font-weight: 300;
    position: absolute;
    left: 5px;
    top: 0;
}

.assistance_box span {
    font-size: 34px;
    font-weight: 300;
    text-align: center;
}

.booking_btn_next .btn_arrow {
    left: auto;
    right: 5px;
}

.booking_btns .btn_action {
    font-size: 20px;
    text-transform: uppercase;
}

.cell {
    display: table-cell;
    vertical-align: middle;
}


.cell.cell_10_right {
    width: 10%;
    text-align: right;
}

.cell.cell_10_center {
    width: 10%;
    text-align: center;
}

.cell.additional_concept_single_choice_option_label {
    padding-left: 10px;
    font-size: 13px;
}

.cell .showInputDelete span {
    display: none;
}

.cell .showInputDelete:after {
    content: 'x';
    color: red;
    font-weight: 700;
}


/* Google search */
.pac-icon {
    display: none;
}

.pac-container:after {
    background-image: none !important;
    height: 0px;
    content: none !important;
}

.inpAddres {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    overflow: hidden;
}

.addressBox {
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    overflow: hidden;
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}

.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
}

@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -10%, 0);
        transform: translate3d(0, -10%, 0);
        height: 0;
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -10%, 0);
        transform: translate3d(0, -10%, 0);
        height: 0;
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes fadeOutUp {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -10%, 0);
        transform: translate3d(0, -10%, 0);
        height: 0;
    }
}

@keyframes fadeOutUp {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -10%, 0);
        transform: translate3d(0, -10%, 0);
        height: 0;
    }
}

.inpAddres {
    height: 80px;
}

.addressBox {
    height: 140px;
}


/* Columnas */

.fields_container {
    border: 1px solid lightgray;
    padding: 15px;
    margin-bottom: 15px;
    background-color: #FFF;
    overflow: hidden;
    page-break-inside: avoid;
}

.form-group {
    display: inline-block;
    vertical-align: top;
    padding: 5px;
    width: 100%;
}

.form-group label {
    display: block;
    padding: 0 0 5px 0;
}

.form-group label.error,
#datos_usuarios label.error {
    color: #990000;
    font-size: 13px;
}

.form-group .form-control,
.form-group input[type=text],
.form-group input[type=tel],
.form-group input[type=email],
.form-group textarea,
.form-group select {
    width: 100%;
    padding: 5px;
    border: 1px solid rgba(0, 0, 0, 0.3);
}

.form-group input[type=text]:hover,
.form-group input[type=tel]:hover,
.form-group input[type=email]:hover,
.form-group textarea:hover,
.form-group select:hover {
    border: 1px solid rgba(0, 0, 0, 0.6);
}

.additional_concept_quantity_input select,
.form-group select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../img/select_arrow.png) right center no-repeat;
}

.additional_concept_quantity_input select {
    padding: 3px 10px 3px 3px;
}

.has-error.form-group input,
.has-error.form-group textarea,
.has-error.form-group select,
.has-error select {
    border-color: #990000;
    color: #990000;
}

.has-error.form-group input:focus,
.has-error.form-group textarea:focus,
.has-error.form-group select:focus,
.has-error select:focus {
    border-color: red;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #990000;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #990000;
}

.has-error label {
    color: #990000;
}

select#ccExpirationMonth,
select#ccExpirationYear {
    width: 48%;
}

.fields_container h6 {
    text-align: center;
}

label.CREDIT_CARD_box {
    font-weight: 700;
}

label.BANKTRANSFER_box {
    font-weight: 700;
}

.tarjeta-wrapper, .transferencia-wrapper {
    padding: 10px 0 20px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

#cvc_explicacion {
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    margin: 10px 5px 5px 5px;
    font-size: 12px;
    overflow: hidden;
}

#cvc-img {
    float: left;
    margin: 0 20px 0 0;
}


.inforeq #info_usuario {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
}

.inforeq #info_usuario .c_submit_usuario {
    background: rgba(0, 0, 0, 0.6);
    border: none;
    color: #FFF;
    padding: 10px 20px;
    width: 100%;
    margin: 10px 0;
    -webkit-appearance: none;
}


/*---------------------------------------------
//  Progress Bar
//---------------------------------------------
*/

#booking_header_tabs ol {
    list-style: none;
    margin: 0;
    padding: 10px 0;
    display: table;
    table-layout: fixed;
    width: 100%;
    color: #849397;
    font-size: 12px;
}

#booking_header_tabs li {
    position: relative;
    display: table-cell;
    text-align: center;
}

#booking_header_tabs li:before {
    content: '1';
    display: block;
    margin: 0 auto;
    background: #DFE3E4;
    width: 3em;
    height: 3em;
    text-align: center;
    margin-bottom: 0.25em;
    line-height: 3em;
    border-radius: 100%;
    position: relative;
    z-index: 1;

}

#booking_header_tabs li:after {
    content: '';
    position: absolute;
    display: block;
    background: #DFE3E4;
    width: 100%;
    height: 0.5em;
    top: 1.25em;
    left: 50%;
    margin-left: 1.5em \9;
    z-index: -1;
}


#booking_header_tabs li:nth-child(2):before {
    content: '1';
}

#booking_header_tabs li:nth-child(3):before {
    content: '2';
}

#booking_header_tabs li:nth-child(4):before {
    content: '3';
}

#booking_header_tabs li:nth-child(5):before {
    content: '4';
}

#booking_header_tabs li:last-child:after {
    width: 0;
}

#booking_header_tabs li.active {
    color: #3b3b3b;
}

#booking_header_tabs li.active:after,
#booking_header_tabs li.tab_button:after {
    background: #3b3b3b;
}

#booking_header_tabs li.tab_button {
    color: #ed7918;
}

#booking_header_tabs li.tab_button:before {
    background: #ed7918;
    color: #FFF;
    content: '\25C4';
}

#booking_header_tabs li.tab_button:after {
    background: #ed7918;
}

#booking_header_tabs li.active:before {
    background: #3b3b3b;
    color: #FFF;
}


/*---------------------------------------------
//  Footer
//---------------------------------------------
*/

.bookingForm #footer {
    display: none;
}

.booking_footer {

}

.search #footer {
    padding-left: 20%;
}

/*---------------------------------------------
//  Filtros
//---------------------------------------------
*/

#filtros,
#page.search:before {
    background: #C2D500;
}

#filtros {
    color: #FFF;
    z-index: 1;
}

.filtros_wrapper {
    padding: 40px 5% 20px 5%;
}

.filtros_wrapper:before {
    display: block;
    text-align: center;
    width: 150px;
    height: 150px;
    content: '';
    background: url(../img/el_delfin_verde_resort.png) no-repeat;
    background-size: contain;
    margin: 0 auto 20px;
}


#filtros .widgetBookingContainer {
    background: transparent;
    padding: 0;
}

.childAgeContainer,
.adultsContainer,
.childsGroupContainer {
    margin: 0 2% 10px 0;
    float: left;
    width: 48%;
}

.childAgeContainer:nth-child(2n+2),
.childsGroupContainer {
    margin: 0 0 10px 2%;
}


.childAgeGroupContainer {
    width: 208%;
    margin-left: -108%;
}


#b_filtros,
#i_submit_formulario_error {
    background: rgba(0, 0, 0, 0.6);
    border: none;
    color: #FFF;
    padding: 10px 20px;
    width: 100%;
    margin: 10px 0;
    -webkit-appearance: none;
}

#b_filtros {
    white-space: normal;
}

#ajax_loader_acsi,
#ajax_loader {
    margin: 20px;
    text-align: center;
}

#reservas_introduccion {
    padding: 25%;
    text-align: center;
    color: #3b3b3b;
    font-size: 30px;
    font-weight: 300;
    letter-spacing: 1px;
}


/*---------------------------------------------
//  Booking confirmation
//---------------------------------------------
*/

#confirmacion_reserva_cliente table tr {
    display: block;
}

#confirmacion_reserva_cliente table td {
    font-size: 12px !important;
    line-height: 100% !important;
    display: block;
    text-align: left !important;
    padding: 0 0 0 5%;
}


#confirmacion_reserva_cliente table tr td strong {
    font-size: 14px !important;
    display: block;
}

#confirmacion_reserva_cliente table tr td:first-child strong {
    font-size: 22px !important;
}


#confirmacion_reserva_imprimir {
    text-align: center;
}

#confirmacion_reserva_imprimir input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #424242;
    border-radius: 4px;
    border: none;
    color: #FFF;
    font-size: 20px;
    text-transform: uppercase;
    padding: 18px 58px;
}

#confirmacion_reserva_buttons {
    padding: 10px;
    text-align: center;
    top: 2%;
}

#confirmacion_reserva_buttons input,
#confirmacion_reserva_buttons a {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #424242;
    border-radius: 50%;
    border: none;
    color: #FFF;
    font-size: 48px;
    line-height: 48px;
    width: 48px;
    height: 48px;
    display: inline-block;
    padding: 0;
    overflow: hidden;
    text-indent: -9999px;
    background-position: center center;
    background-repeat: no-repeat;
    vertical-align: middle;
}

#confirmacion_reserva_buttons input {
    background-image: url(../img/print_button.png);
}

#confirmacion_reserva_buttons a {
    background-image: url(../img/left_arrow_button.png);
}


#confirmacion_booking_budget table tr td:nth-child(6),
#confirmacion_booking_budget table tr td:nth-child(7) {
    display: none;
}


/*---------------------------------------------
//  Alerts
//---------------------------------------------
*/

alerts-box {
    position: fixed;
    top: 10px;
    left: 0;
    z-index: 100;
    width: 100%;
}

alerts-box > div {
    background-color: #f04124;
    border-color: #de2d0f;
    color: #FFFFFF;
    border-radius: 3px;
    padding: 20px 20px;
    position: relative;
    width: 50%;
    margin: 0 auto;
    text-align: center;
    margin-top: 10px;
}

alerts-box .alertClose {
    font-size: 20px;
    position: absolute;
    top: 0;
    right: 10px;
}

#alertsBox pre {
    background-color: #847E7E;
    padding: 10px;
    border-radius: 5px;
    margin-top: 5px;
}

.alertBox.alert_type_success {
    background-color: rgba(112, 191, 7, 0.88);
}

.alertBox.alert_type_warning {
    background-color: #FFFF9B;
    color: black;
}

/*---------------------------------------------
//  Doc viewer
//---------------------------------------------
*/
.docViewer {
    max-width: 650px;
    box-shadow: 0 0 0 0.75pt #d1d1d1, 0 0 3pt 0.75pt #ccc;
    padding: 25px;
    margin: 0 auto;
    margin-top: 50px;
    background-color: #FFF;
}

.booking {
    background-color: #F4F4F4;
}

.boxButtonsDocViewer {
    text-align: center;
    padding: 15px 0 15px 0;
    background-color: #FFF;
    overflow: hidden;
    box-shadow: 0 0 10px 0 #d1d1d1, 0 0 15px 0 #ccc;
}


/*---------------------------------------------
//  PORTAL CSS
//---------------------------------------------
*/


.searchResult {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.businessGroup {
    background: #FFF;
    -webkit-box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2);
    margin: 4% 0;
}

.bussinessData,
.property {
    display: flex;
    flex-direction: row;
}

.businessGroup > div,
.bussinessData > div,
.property > div {
    flex: 1 1 auto;
}

.businessGroup .bussinessFoto {
    flex: 0 0 40% !important;
    position: relative;
}

.businessGroup .bussinessFoto .wvg_image {
    opacity: 1;
    transition: opacity 0.5s ease;
}

.businessGroup .bussinessFoto .wvg_image[ng-click]:hover {
    opacity: 0.7;
}


.bussinessFoto > div {
    width: 100%;
    padding: 32% 0;
}

.businessGroup h2 {
    font-weight: 700;
}

.businessGroup h2[ng-click]:hover {
    opacity: 0.7;
}

.bussinessPhone {
    color: #000;
    text-decoration: none;
}

.property {
    /*background: #e8e8e8;*/
    /*margin: 2.5% 0;*/
}


.bussinessData .bussinessLogo,
.property .propertyBooking {
    flex: 0 0 28%;
    text-align: center;
}

.bussinessIntro {
    margin: 1.5% 0;
}

.bussinessData .bussinessLogo {
    padding: 0 4.5%;
}

.bussinessPhone,
.bussinessUrl {
    display: inline-block;
    margin: 0 15px 0 0;
    font-weight: 700;
    line-height: 16px;
    font-size: 15px;
}

.bussinessPhone:before {
    /*content: url(../img/phone.png);*/
    content: '';
    background: url(../img/phone.png) center center no-repeat;
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
}

.bussinessUrl {
    border: 1px solid #00833E;
    color: #00833E;
    text-decoration: none;
    padding: 0 10px;
    border-radius: 4px;
    font-size: 12px;
    transition: all 0.5s ease;;
}

.bussinessUrl:hover {
    border: 1px solid #C2D500;
    color: #C2D500;
}

.property .propertyBooking {
    display: flex;
}

.property .propertyFoto {
    flex: 0 0 25%;
    display: flex;
    transition: opacity 0.5s ease;
    opacity: 1;
}

.property .propertyFoto:hover {
    opacity: 0.7;
}

.propertyName {
    background: #e8e8e8;
    transition: background-color 0.5s ease;
}

.propertyName:hover {
    background: #c4c4c4;
}


.propertyName h3 {
    font-size: 16px;
}

.businessGroup h2[ng-click]:before,
.propertyName h3:before {
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px 0 0;
    content: '\e904';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    color: #C2D500;
}


.propertyFoto .wvg_image {
    width: 100%;
}

.property .propertyName {
    padding: 2%;

}

.property .makeBookingButton {
    transition: background-color 0.5s ease;
    background: #C2D500;
    width: 100%;
}

.property .makeBookingButton:hover {
    background: #00833E;
}

.bussinessLogo img {
    max-width: 100%;
    height: auto;
    max-height: 130px;
}

.categoryGroupCB:before,
.facilityGroupCB:before,
#b_filtros {
    background-color: #00833E !important;
}

.datePicker span.inputBox:after,
.peopleContainer .comboBox:after,
.categorySelector > span:after {
    color: #00833E !important;
}

#b_filtros {
    background: #FFF !important;
    color: #00833E;
}

.morePropertiesGroup {
    text-align: center;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: 10px;
}


/* date picker */

.home .widgetBookingContainer {
    display: table;
    width: 100%;
}

.home .widgetBookingContainer > * {
    position: relative;
}

.home .widgetBookingContainer .persons {
    border-right: 10px solid transparent;
}

.home .widgetBookingContainer > .attributes {
    width: 10%;
    padding-bottom: 7px;
}

.home .checkinContainer,
.home .checkoutContainer {
    border-right: 10px solid transparent;
}

.home .widgetBookingContainer .checkinCheckoutContainer label,
.home .widgetBookingContainer .peopleContainer label,
.home .adultsContainer .peopleContainer label,
.home .adultsContainer .childsContainer label {
    display: none;

}

.home #multiple_auto_complete,
.home .mac_items_wrapper {
    border-right: 10px solid transparent;
}

#multiple_auto_complete .mac_item {
    color: #00833E;
}

#multiple_auto_complete .mac_item.active {
    background-color: #00833E;
    color: #FFF;
}


.home .checkinContainer,
.home .checkoutContainer,
#multiple_auto_complete {
    margin-bottom: 10px;
    position: relative;
}

.home .childsGroupContainer {
    margin-bottom: 0;
}

.home .facilities,
.home .stayLen {
    display: none !important;
}

.categorySelector,
.adultsContainer,
.childsContainer,
.checkinContainer,
.checkoutContainer,
.childAgeContainer,
.childAgeGroupContainer .comboBox,
.facilities {
    position: relative;
    margin-bottom: 10px !important;
}

.home .widgetBookingContainer .persons {
    overflow: visible;
}

#mac_input {
    background: #FFF;
    display: block;
    padding: 9px 9px 10px 9px;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: 100%;
    border: 1px solid #FFF;
    color: #000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mac_items_wrapper {
    position: absolute;
    color: #000;
    width: 100%;
    z-index: 999;
}


.mac_items {
    padding: 5px 0;
    background: #FFF;
}

.mac_category_title,
.mac_item {
    padding: 2px 10px;
    font-size: 13px;
}

.mac_category_title h3 {
    font-size: 13px;
    font-weight: 700;
}

.datePickerPopup .popupTitle,
.categoriesPopup .popupTitle,
.widgetBookingContainer .popupTitle {
    background: #066131 !important;
}

.datePickerPopup .month_title {
    background: #08793f !important;
}

.datePickerPopup table td {
    color: #066131 !important;
}

.datePickerPopup table td.selectable {
    color: #066131 !important;
}

.datePickerPopup .plus span,
.datePickerPopup .less span {
    top: 55px !important;
}

.checkinCheckoutContainer td.checkinDay,
.checkinCheckoutContainer .checkout td.checkinDay,
.checkinCheckoutContainer .checkin td.checkinDay,
.checkinCheckoutContainer .checkout td.stayDay,
.checkinCheckoutContainer .datePickerPopup table td.selectable.mouseover {
    background-color: #2a5605 !important;
    color: #FFF !important;
}

.popupFooter,
.month table {
    color: #02213e !important;
}


.facilities {
    display: none;
}

/*---------------------------------------------
//  Home
//---------------------------------------------
*/

.home {
    background: url(../img/home_image.jpg) center center no-repeat;
    background-size: cover;
    overflow: hidden;
    min-height: 100vh;
}

header {
    width: 100%;
    left: 0;
    top: 0;
    background: rgba(255, 255, 255, 1);
    z-index: 10;
}

.home header {
    background: rgba(255, 255, 255, 0.6);
}

.inner-header {
    display: table;
    width: 100%;
}

.inner-header > div {
    display: table-cell;
    vertical-align: middle;
}

.inner-header .logo {
    text-align: left;
    padding: 0 30px;
    display: block;
}

.inner-header .logo img {
    height: auto;
    max-width: 130px;
}

.inner-header .contact {
    text-align: right;
    padding-right: 30px;
}

.filter-widget-wrapper {
    background: rgba(41, 56, 70, 0.5);
    padding: 2%;
    margin: 16% auto;
}

.filter-widget-wrapper h1,
.filter-widget-wrapper h2 {
    color: #FFF;
    padding: 0 0 0.5% 0;
    text-align: center;
    font-size: 25px;
}

.filter-widget-wrapper h1 {
    font-weight: 700;
    text-transform: uppercase;
}

.filter-widget-wrapper h2 {
    font-family: Georgia, Times, serif;
    padding: 0 0 1% 0;
    font-style: italic;
}

.phoneButton,
.contactButton,
.languages {
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    padding: 5px 15px;
    border-radius: 4px;
    text-decoration: none;
    border: 1px solid #00833E;
    margin: 0 0 0 15px;
    position: relative;
}

.languages {
    background: #FFF;
    border-radius: 0;
    font-weight: 300;
    color: #00833E;
    font-size: 14px;
    padding: 5px 30px 5px 15px;
    min-width: 100px;
    text-align: left;
}

.languages:after {
    content: '\0025BC';
    position: absolute;
    right: 5px;
    bottom: 7px;
    font-size: 12px;
}

.languages-list {
    display: none;
    position: absolute;
    left: -1px;
    right: -1px;
    background: #FFF;
    border: 1px solid #00833E;
    border-top: none;
    top: 100%;
    text-align: left;
}

.languages:hover .languages-list {
    display: block;
}

.languages-list span {
    display: block;
    padding: 5px 15px;
    border-top: 1px solid #00833E;
}

.languages-list span:hover {
    background: rgba(0, 0, 0, 0.1);
}

.phoneButton {
    background: #00833E;
    color: #FFF;

}

.contactButton {
    background: #FFF;
    color: #00833E;
    margin: 0 15px;
}


.home .widgetBookingContainer {
    background: #C2D500;
    color: #FFF;
}


/* popup */

.wvg_detail_header h1 {
    background: #C2D500;
}

.wvg_detail_header h1 small {
    font-size: 60%;
    display: block;
}

.wvg_detail_tabs > div {
    border: 1px solid 293846;
    color: #FFF;
    background: #C2D500;
}

.wvg_detail_tabs > div.active {
    border: 1px solid 293846;
    color: #C2D500;
    background: transparent;
}

.ngdialog.ngdialog-theme-plain .ngdialog-content {
    width: 100%;
}


/* popup subscribe */

.subscribe-popup {
    padding: 4% 5% 5% 5%;
    background: #e8e8e8;
}

.subscribe-popup h1 {
    font-weight: 700;
    font-size: 24px;
}


.subscribe-popup + .ngdialog-close:before {
    color: #CE4D3C !important;
}

.subscribe-text {
    font-weight: 200;
    font-size: 14px;
    padding-bottom: 4%;
}

.subscribe-popup input[type=email],
.subscribe-popup button {
    padding: 9px;
    border: none;
    font-size: 15px;
    line-height: 120%;
    margin: 6px 6px 0 0;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: none;
    border: 1px solid rgba(0, 0, 0, 0.2);
}

.subscribe-popup button {
    background: #00833E;
    color: #FFF;
    border: 1px solid #00833E;
    font-weight: 700;
}

.subscribe-popup ul {
    margin-top: 12px;
}

.subscribe-popup ul li {
    margin: 0 0 5px 5px;
}

.subscribe-popup ul li:before {
    content: "\2713";
    color: #00833E;
    font-weight: 700;
    padding-right: 10px;
}

.subscribe-popup form {
    text-align: center;
}

/*---------------------------------------------
//  Cookies
//---------------------------------------------
*/

consent > div {
    z-index: 999999;
    opacity: 0.9;
    padding: 15px 0px 5px;
    width: 100%;
    left: 0px;
    font-size: 13px;
    color: rgb(255, 255, 255);
    box-shadow: rgb(0, 0, 0) 0px 0px 8px;
    bottom: 0px;
    background-color: rgb(17, 17, 17);
    text-align: center;
}

consent > div > div {
    max-width: 800px;
    width: 100%;
    margin: 10px auto;
}

consent a {
    display: inline-block;
    padding: 5px 15px;
    border-radius: 4px;
    text-decoration: none;
    margin: 2px 0 0 0;
    background: #00833E;
    color: #FFF;
}

/** chat oculto **/
#habla_expanded_div > div:last-child {
    display: none;
}

/*---------------------------------------------
//  Responsive
//---------------------------------------------
*/

@media only screen
and (min-width: 600px) {

    consent > div {
        position: fixed;
    }

    #header {
        display: block;
    }

    .businessGroup {
        display: flex;
        flex-direction: row;
    }

    .wvg_detail_header h1,
    .ngdialog.ngdialog-theme-plain .ngdialog-content .wvg_detail_header h1 {
        font-size: 24px;
    }

    .wvg_image {
        padding: 25% 0;
    }

    .makeBookingButton {
        padding: 4%;
    }

    .wvg_detail_tabs > div {
        display: table-cell;
        width: auto;
        padding: 10px 15px;
    }

    .wvg_detail_gallery > div {
        width: 30%;
    }

    .form-col-1-2 {
        width: 49.5%;
    }

    .form-col-1-3 {
        width: 32.9%;
    }

    .form-col-2-3 {
        width: 66%;
    }

    #booking_header_tabs ol {
        font-size: 14px;
    }

    .makeBookingButton .price {
        font-size: 24px;
    }

    .propertyName h3 {
        font-size: 18px;
    }

}

@media only screen
and (min-width: 800px) {

    header {
        position: fixed;
    }

    .home .widgetBookingContainer > * {
        display: table-cell;
        width: 20%;
        vertical-align: bottom;
    }

    .home .widgetBookingContainer > .checkinCheckoutContainer {
        width: 40%;
    }

    .home .childAgeGroupContainer {
        position: absolute;
        background: #C2D500;
        padding: 10px;
        width: 100%;
        margin-left: -10px;
    }

    .home .checkinContainer,
    .home .checkoutContainer {
        display: inline-block;
        width: 50%;
    }

    .businessGroup {
        margin: 2%;
    }

    .subscribe-popup h1 {
        font-size: 41px;
    }

    .subscribe-text {
        font-size: 22px;
    }

    .subscribe-popup input[type=email],
    .subscribe-popup button {
        padding: 14px;
        font-size: 24px;
        margin: 10px 10px 0 0;
    }

    .subscribe-popup ul {
        margin-top: 20px;
    }
}


@media only screen
and (min-width: 1000px) {

    h1 {
        font-size: 34px;
    }

    h2 {
        font-size: 24px;
    }

    .filter-widget-wrapper h1,
    .filter-widget-wrapper h2 {
        font-size: 45px;
    }


    #pagina {
        margin: 0 0 0 20%;
    }

    #filtros,
    #booking_budget,
    .info_pack_inner {
        float: left;
        margin-right: -100%;
        position: relative;
        width: 20%;
    }

    #booking_budget {
        height: auto;
        opacity: 1;
        overflow: inherit;
    }

    #page.bookingForm {
        padding-top: 0;
    }

    #page.search:before,
    #page.bookingForm:before {
        content: '';
        width: 20%;
        position: fixed;
        z-index: 0;
        display: block;
        height: 100%;
        min-height: 100%;
        position: fixed;
        top: 0;
        left: 0;
    }

    #page.bookingForm:before {
        width: 30%;
    }


    #filtros,
    .info_pack_inner {
        left: 0;
    }

    #filtros .nameCategoryGroupCB {
        max-width: 75%;
    }

    #budget_header_mobile {
        display: none;
    }

    #booking_budget,
    .info_pack_inner {
        left: 0;
        width: 30%;
    }

    #booking_budget {
        padding-bottom: 80px;
    }

    #booking_content,
    #booking_footer {
        margin-left: 30%;
        display: block;
        float: left;
        width: 70%;
    }

    #contenedor_productos {
        margin-left: 20%;
        /*margin-top: 100px;*/
    }

    #contenedora > div {
        margin: 0;
    }

    #contenedor div,
    #contenedora div {
        display: block;
    }

    .wvg_detail_header h1,
    .ngdialog.ngdialog-theme-plain .ngdialog-content .wvg_detail_header h1 {
        font-size: 30px;
    }

    #confirmacion_reserva_buttons {
        position: fixed;
    }

    .ngdialog.largeDialog.padding50,
    .section_group,
    .ngdialog {
        padding: 5%;
    }

    #confirmacion_reserva_cliente table tr {
        display: table-row;
    }

    #confirmacion_reserva_cliente table td {
        display: table-cell;
        text-align: inherit !important;
    }

    #confirmacion_reserva_cliente table td,
    #confirmacion_reserva_cliente table tr td strong {
        font-size: inherit !important;
    }

    #confirmacion_reserva_cliente table tr td:first-child strong {
        font-size: 44px !important;
    }

    #confirmacion_booking_budget table tr td:nth-child(6),
    #confirmacion_booking_budget table tr td:nth-child(7) {
        display: table-cell;
    }
}


@media print {
    body {
        font-size: 70%;
    }

    .do-not-print {
        display: none;
    }

    #header img {
        max-height: 50px;
        width: auto;
    }

    .fields_container {
        margin: 0 auto !important;
        /*border-bottom: none !important;*/
    }

    .fields_container h2 {
        padding: 0 0 1% 0;
    }
}


/* Estilos ajuste presentacion eldelfinde.com */

.bussinessData {
    display: flex;
    flex-direction: row;
    position: sticky;
    background-color: white;
    z-index: 1;
    /*top: 115px;*/
    top: 0;
    padding: 10px;
}

.datePickerPopup {
    z-index: 2;
}

.product_ShortDescription {
    margin-top: 10px;
}

.productCalendar .checkinContainer label, .productCalendar .checkoutContainer label {
    display: none;
}

.propertyBookingWithoutPrice {
    width: 100%;
    display: flex;
    padding: 0px 10px 0px 10px;
    flex-direction: column;
    justify-content: center;
}

.property .propertyBooking {
    padding: 8px 0;
}


.widgetBookingContainer {
    z-index: 2;
}

.inner-header {
    display: flex;
}

.inner-header .logo {
    flex: 1 1 auto;
}

.inner-header .contact {
    display: flex;
    align-items: center;
}

.property-message {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    background-color: #ffffff;
    color: #000000;
    font-size: 14px;
    font-weight: 700;
}

.morePropertiesGroup-button {
    display: inline-block;
    background: #C2D500;
    transition: background-color 0.5s ease;
    color: #FFF;
    font-size: 12px;
    padding: 10px 10px;
}

.morePropertiesGroup-button:hover {
    background: #00833E;
}

.morePropertiesGroup-button:after {
    font-size: 10px;
    margin-left: 4px;
}

.morePropertiesGroup-button.down:after {
    content: '\0025B2';
}

.morePropertiesGroup-button:after {
    content: '\0025BC';
}

.propertyBestPrice-button {
    display: flex;
    align-items: center;
    border: 1px solid #C2D500;
    background-color: white;
    transition: background-color 0.5s ease;
    color: #000;
    font-size: 12px;
    padding: 10px 10px;
}

.property-selector {
    min-width: 250px;
}

/* Mobile section */

@media only screen
and (max-width: 600px) {

    .bussinessData {
        top: 0;
    }

    .bussinessData .bussinessIntro {
        display: none;
    }

    .property {
        display: block;
        box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .2);
        margin: 2% 0;
    }


    .propertyFoto .wvg_image {
        height: 100px;
    }

    .propertyBookingWithoutPrice {
        width: 100%;
        padding: 0px 10px 0px 10px;
    }

}


#floating-box {
    position: absolute;
    top: 10px;
    right: 10px;
}

.bussinessTextTitle {
    font-size: 30px;
    font-weight: 700;
    text-transform: uppercase;
    color: #00833E;
}

.bussinessDash {
    width: 100%;
    height: 1px;
    color: #00833E;
    margin: 10px 0 10px 10px;
}

.bussinessIcons {
    color: #00833E;
}

/*HIDE in MOBILE*/
@media only screen and (max-width: 600px) {
    .bussinessTextTitle {
        display: none;
    }

    h2 .bussinessTextSubTitle {
        font-size: 24px;
        margin-left: 0;
    }

    h2 .bussinessIcons svg {
        height: 24;
        width: 24;
    }

    .bussinessText h3 {
        margin-top: -10px;
    }

    h3 .bussinessTextSubTitle {
        font-size: 8px;
    }

    .bussinessDash {
        display: none;
    }
}

.bussinessTextSubTitle {
    font-size: 24px;
    font-weight: 700;
    margin-left: 10px;
    text-transform: uppercase;
    color: #00833E;
}

.bussinessText h3 {
    margin-top: -10px;
}

.bussinessText h3 .bussinessTextSubTitle {
    font-size: 20px;
    margin-left: 0;
}


.bussinessData {
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #f8f8f8;
    background-position: center right;
    padding-right: 28%;
}


.bussinessData.property_28 {
    background-image: url(../img/bussinessData_background_28.jpg);
}

.bussinessData.property_94 {
    background-image: url(../img/bussinessData_background_94.jpg);
}


/***** CSS FROM masterBookingFrontend ******/


.loading-container {
    display: table !important;
    background-color: rgba(255, 255, 255, .8);
    position: fixed;
    z-index: 1000
}

.loading-container .loading-content {
    display: table-cell;
    vertical-align: middle
}

.resultHeader {
    padding: 20px
}

.budget_header {
    padding: 5px
}

.searchResult .webVisualizationGroup {
    background: #FFF;
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .2);
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .2);
    /*margin: 2% 0*/
}

.tooltipDesripcion, .wvg_detail_icons > div label, .wvg_icon label {
    box-shadow: 0 0 10px rgba(0, 0, 0, .4)
}

.wvg_image {
    padding: 25% 0;
    position: relative;
    background-position: center center
}

.wvg_image:after {
    -webkit-transition: opacity .4s ease-out;
    -moz-transition: opacity .4s ease-out;
    transition: opacity .4s ease-out;
    content: '';
    position: absolute;
    background: rgba(0, 0, 0, .6);
    opacity: 0
}

div[ng-click] .wvg_image:hover:after {
    opacity: 1
}

.wvgPopup .ngdialog-close:active:before, .wvgPopup .ngdialog-close:hover:before, .wvg_products .hasLongDescription h4:hover {
    opacity: .8
}

.wvg_longDescription, .wvg_moreProducts, .wvg_shortDescription {
    padding: 4%;
    font-size: 14px
}

.showInputDescription {
    display: inline-block;
    margin: 0 3px 0 0
}

.moreInfoLabel span, .showInputDescription span {
    width: 14px;
    height: 14px;
    color: #adadad;
    position: relative;
    display: inline-block;
    text-align: center;
    overflow: hidden;
    border-radius: 50%;
    vertical-align: middle;
    border: none;
    padding: 0;
    margin: 1px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 13px;
    text-indent: inherit;
    background-color: rgba(0, 0, 0, .3)
}

.moreInfoLabel span:after, .showInputDescription span:after {
    color: #FFF;
    position: absolute;
    left: 0;
    top: -1px;
    width: 100%;
    line-height: 12px;
    text-align: center
}

.showInputDescription span:after {
    content: '?'
}

.moreInfoLabel span:after {
    content: '\0025BE'
}

.moreInfoLabel span:hover, .showInputDescription span:hover {
    color: #3b3b3b;
    background-color: #3b3b3b
}

.hideDescription .moreInfoLabel span:after, .lessMoreInfoLabel.moreInfoLabel span:after {
    content: '\0025B4'
}

.wvg_icons {
    padding: 10px 10px 0;
    text-align: center
}

.wvg_icon {
    display: inline-block;
    vertical-align: middle;
    padding: 2px 4px
}

.wvg_icon img {
    max-height: 30px;
    width: auto
}

.wvg_icon label {
    display: none;
    position: absolute;
    background-color: #FFF;
    max-width: 300px;
    padding: 10px;
    text-align: left;
    margin-top: 10px;
    z-index: 10
}

.wvg_icon:hover label {
    display: block
}

.product_ShortDescription, .product_longDescription {
    font-size: 13px;
    color: #6c6c6c
}

.makeBookingButton {
    background: #3b3b3b;
    color: #FFF;
    text-align: center;
    padding: 2%
}

.makeBookingButton .price {
    font-size: 24px;
    line-height: 80%
}

.makeBookingButton .discount, .makeBookingButton .percentageDiscount, .makeBookingButton .price_per_day, .makeBookingButton .price_per_person, .makeBookingButton .price_per_person_per_day, .makeBookingButton .price_total {
    display: none;
    padding-top: 5px
}

.hasDiscount[class*=template] .makeBookingButton {
    display: flex;
    padding: 0 0 4%;
    flex-wrap: wrap;
    justify-content: center
}

.hasDiscount .template1 {
    flex-direction: column;
    flex-wrap: nowrap
}

.hasDiscount[class*=template] .makeBookingButton .price_total {
    display: block;
    background: #FFF;
    color: #3b3b3b;
    order: 1;
    padding: 2%;
    text-decoration: line-through;
    flex: 1 0 100%
}

.hasDiscount[class*=template] .makeBookingButton .price_per_day, .hasDiscount[class*=template] .makeBookingButton .price_per_person, .hasDiscount[class*=template] .makeBookingButton .price_per_person_per_day {
    order: 6;
    flex: 1 1 100%
}

.hasDiscount.template3 .makeBookingButton .price_total, .hasDiscount.template4 .makeBookingButton .price_total {
    flex: 1 1 auto
}

.hasDiscount[class*=template] .makeBookingButton .price {
    order: 6;
    padding: 4% 4% 2%;
    flex: 1 0 100%
}

.hasDiscount[class*=template] .makeBookingButton .makeBookingLabel {
    order: 7
}

.hasDiscount.template2 .makeBookingButton .percentageDiscount {
    order: 8;
    display: block;
    white-space: nowrap;
    padding: 0
}

.hasDiscount.template2 .makeBookingButton .percentageDiscount:before {
    content: ' (-';
    padding: 0 0 0 3px
}

.hasDiscount.template2 .makeBookingButton .percentageDiscount:after {
    content: ')'
}

.hasDiscount.template3 .makeBookingButton .percentageDiscount, .hasDiscount.template4 .makeBookingButton .discount {
    order: 3;
    display: block;
    padding: 2% 0;
    flex: 1 1 auto;
    background: #FFF;
    color: green;
    text-align: left
}

.hasDiscount.template3 .makeBookingButton .percentageDiscount:before {
    content: '-'
}

html[lang=ca] .hasDiscount.template3 .makeBookingButton .percentageDiscount:after {
    content: ' dte.'
}

html[lang=es] .hasDiscount.template3 .makeBookingButton .percentageDiscount:after {
    content: ' dto.'
}

html[lang=en] .hasDiscount.template3 .makeBookingButton .percentageDiscount:after {
    content: ' disc.'
}

#contenedor_productos .product_dates label {
    display: none
}

#contenedor_productos .product_dates .inputBox {
    border: 1px solid silver;
    font-size: 13px;
    margin: 0 0 10px
}

.b_mostrar_otros_productos {
    display: block !important;
    text-align: center;
    border-radius: 4px;
    padding: 10px;
    font-size: 16px;
    text-transform: uppercase;
    background: rgba(0, 0, 0, .6);
    color: #FFF;
    width: 80%;
    margin: 0 auto
}

.info_pack_img_group h2:after, .wvg_products .hasLongDescription h4:after {
    text-transform: none;
    font-family: icomoon, booking-icons !important;
    speak: none;
    font-style: normal;
    font-variant: normal
}

.b_mostrar_otros_productos:hover {
    background: rgba(0, 0, 0, .8)
}

.wvg_products .hasLongDescription h4:after {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 10px;
    content: '\e904';
    font-weight: 400;
    line-height: 1
}

.withCheckInDate .checkoutContainer {
    display: none
}

.ngdialog-open #page {
    position: relative;
    z-index: 1
}

.ngdialog, .ngdialog.largeDialog.padding50 {
    padding: 2%;
    z-index: 99 !important
}

.ngdialog.ngdialog-theme-plain .ngdialog-content .wvg_detail_header h1, .wvg_detail_header h1 {
    font-weight: 200;
    font-size: 20px;
    background-color: rgba(0, 0, 0, .6);
    color: #FFF;
    padding: 20px 30px;
    text-align: left
}

.wvg_detail_icons {
    background-color: rgba(0, 0, 0, .1);
    padding: 10px 30px
}

.wvg_detail_tabs {
    text-align: center;
    display: table;
    margin: 0 auto;
    padding: 20px 0 0;
    border-spacing: 4px
}

.wvg_detail_tabs > div {
    display: inline-block;
    background: rgba(0, 0, 0, .4);
    color: #FFF;
    padding: 5px 10px;
    width: 70px;
    overflow: hidden;
    text-overflow: ellipsis
}

.wvg_detail_tabs > div.active {
    border: 1px solid rgba(0, 0, 0, .4);
    background: 0 0;
    color: rgba(0, 0, 0, .4)
}

.wvg_detail_icons > div {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    padding: 0 7px
}

.detail_img img {
    max-height: 50px;
    width: auto;
    vertical-align: middle;
    margin: 0 5px 5px 0
}

.wvg_detail_icons > div label {
    display: none;
    position: absolute;
    background-color: #FFF;
    max-width: 300px;
    padding: 10px;
    text-align: left;
    margin-top: 10px;
    z-index: 10
}

.wvg_detail_icons > div:hover label {
    display: block
}

.wvg_detail_content img {
    max-width: 100%;
    height: auto
}

.wvgPopup .ngdialog-content {
    position: relative;
    background: #fff;
    margin: 0 auto;
    max-width: 100%;
    width: 800px
}

.wvgPopup .wvg_detail_content {
    padding: 20px 30px
}

.wvg_detail_content #content2, .wvg_detail_content #content3 {
    text-align: center
}

.wvgPopup .wvg_detail_content p {
    margin-bottom: 10px
}

.wvg_detail_gallery > div {
    background-position: center center;
    display: inline-block;
    width: 44%;
    margin: 1%;
    padding: 10% 0
}

.wvgPopup .ngdialog-close {
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 0
}

.wvgPopup .ngdialog-close:before {
    background: 0 0;
    color: #fff;
    content: "\00D7";
    font-size: 50px;
    font-weight: 700;
    height: 50px;
    line-height: 50px;
    position: absolute;
    right: 5px;
    text-align: center;
    top: 10px;
    width: 30px
}


/*----------------- FONDO NIÑA TOBOGAN -----------------*/

#page:after {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    background: url(/static/img/fondo_tobogan.png) center center no-repeat;
    background-size: cover;
    z-index: -1;
    content: '';
    height: 100%
}


#filtros,
#page.search:before {
    background: rgb(121 120 120 / 18%)
}

@media (min-width: 1000px) {
        /*#filtros,*/
        /*#page.search:before {*/
        /*    background: rgb(121 120 120 / 18%)*/
        /*}*/
}


.product_header h4 {
    color: #00833E;
}

.product_header h4:after {
    color: #C2D500;
}


.vwg_header_in_row {
    display: flex;
    background-color: #f6f9e8;
}

.wvg_image_container_in_row {
    width: 220px;
}


.wvg_name_container_in_row {
    width: 100%;
    flex-direction: column;
    justify-content: center;
    padding: 10px;
    background-color: #f6f9e8;
}

.wvg_name_container_in_row .wvg_name {
    font-size: 20px;
    font-weight: 700;
    color: #00833E;
}

.wvg_name_container_in_row .wvg_icons {
    text-align: left;
}

.wvg_image_location_in_row {
    width: 190px;
    height: 120px;
    gap: 13px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-transform: uppercase;
    justify-content: center;
    background-color: white;
    color: #C2D500;
    cursor: pointer !important;
    border: 1px solid #C2D500;
}

.wvg_image_location_in_row svg {
    width: 48px;
    height: 48px;
}

.wvg_image_location_in_row span {
    font-size: 14px;
    font-weight: 700;
}


@media (max-width: 600px) {
    .wvg_image_location_in_row {
        display: none;
    }
}
