@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,700;0,900;1,300&family=Poppins:wght@200;400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bangers&display=swap');

html, body { height: 100%; }
body { font-family: 'Poppins', sans-serif; color: #222; }


/********** Arreglos genéricos, mejor no tocar ********/

p img{ max-width: 100%; } 
p img.pull-right { margin-left: 2rem; }
p img.pull-left { margin-right: 2rem; }
.click_a { cursor: pointer; }
.c-pointer { cursor: pointer; }
.custom-control-input.is-invalid ~ .custom-control-label a, .was-validated .custom-control-input:invalid ~ .custom-control-label a{ color: #dc3545; }
.custom-control-label a{ text-decoration: underline; }
.dropdown-toggle::after { display: none }
.grecaptcha-badge { visibility: hidden; }
#logout-session{ position: fixed; z-index: 9999; border-radius: 4px 4px 0 0 ; right: 1rem; bottom: 0; }


/* ----- Custom Project ------ */
:root { 
    --bs-primary-rgb: 106, 176, 76; /* variable de BS5 */
    --bs-primary: #59c22d; /* variable de BS5 */
    --bs-primary-hover: #4ca725; /* variable de Ladeus pels hovers buttons*/
    --bs-secondary-rgb: 137, 59, 28; /* variable de BS5 */
    --bs-secondary: #893b1c; /* variable de BS5 */
    --bs-secondary-hover: #712d12; /* variable de Ladeus pels hovers buttons*/    
    }

    /* links base */
        a { color: var(--bs-primary); text-decoration: none; }
        a:hover, a:focus {  color: var(--bs-primary-hover); text-decoration: none; }
    /* btns bootstrap */
        .btn-primary { background-color: var(--bs-primary); border-color: var(--bs-primary); }
        .btn-primary:hover { background-color: var(--bs-primary-hover); border-color: var(--bs-primary-hover); }
        .btn-primary.disabled, .btn-primary:disabled { background-color: var(--bs-primary); border-color: var(--bs-primary); }
        .text-primary { color: var(--bs-primary)!important; }
        .bg-primary { background-color: var(--bs-primary)!important; }
        .btn-outline-primary { color:var(--bs-primary); border-color: var(--bs-primary); }
        .btn-outline-primary:hover,
            .btn-outline-primary:not(:disabled):not(.disabled).active,
            .btn-outline-primary:not(:disabled):not(.disabled):active,
            .show > .btn-outline-primary.dropdown-toggle {background-color: var(--bs-primary); border-color: var(--bs-primary); }
        .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
            .btn-outline-primary:not(:disabled):not(.disabled):active:focus,
            .show > .btn-outline-primary.dropdown-toggle:focus {box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), 0.5);}
        .btn-check:focus + .btn,
            .btn:focus { box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.25); }
        .btn-check:focus + .btn-primary,
            .btn-primary:focus {background-color: var(--bs-primary); border-color: var(--bs-primary); box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.5);}
        .btn-check:active + .btn-primary:focus,
            .btn-check:checked + .btn-primary:focus,
            .btn-primary.active:focus,
            .btn-primary:active:focus, .show > .btn-primary.dropdown-toggle:focus {box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.5);}
        .btn-link { color: var(--bs-primary); text-decoration: none;}
        .btn-link:hover { color: var(--bs-primary-hover); text-decoration: underline;} 
        .btn-close:focus { box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.25);}
        a.nav-link { color: var(--bs-primary); }
        a.nav-link:hover { color: var(--bs-primary-hover); }
    /* forms bootstrap */ 
        .form-control:focus { border-color: var(--bs-primary); box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.25); }
        .form-check-input:checked { background-color: var(--bs-primary-hover); border-color: var(--bs-primary); } 
        .form-check-input:focus { border-color: rgba(var(--bs-primary-rgb), 0.5); box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), 0.25);}
        .form-select:focus { border-color: rgba(var(--bs-primary-rgb), 0.5); box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), 0.25);}
    /*elements de menu */
        .dropdown-item.active,
        .dropdown-item:active { background-color: var(--bs-secondary) }
    /* breadcrumb */
        .breadcrumb a {color: var(--bs-gray-500);}
        .breadcrumb a:hover {color: var(--bs-gray-700);}
    /* borders */
        .border-primary { border-color: var(--bs-primary)!important; }
    /* page link */  
        .page-link {color: var(--bs-dark); }
        .page-link:hover {color: var(--bs-primary); }
        .page-item.active .page-link {background-color: var(--bs-dark);  border-color: var(--bs-dark);  }
        .page-link:focus { box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), 0.25);}        

        .nav-link { color: var(--bs-primary) }


h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { }
h1, .h1 { font-size: 4rem; line-height: 4rem; font-family: 'Bangers', cursive;}
h2, .h2 { }
h3, .h3 { }
h4, .h4 { font-family: 'Bangers', cursive; font-size:2rem; color: var(--bs-secondary); }
h5, .h5 { }

.text-justify { text-align: justify!important; }
.bangers {font-family: 'Bangers', cursive;}
/* Layout */

/* Modal */
.modal-full { min-width: 100%; margin: 0; }
.modal-full .modal-header { border-bottom: 0; }
.modal-full .modal-content { min-height: 100vh; border-radius: 0; border: 0; padding-right: 0 !important; }
.modal-full.wrap-img .modal-content { background-color: rgba(255,255,255,0.8) }
.btn-close-icon { position: absolute; z-index: 1; right: 35px; top: 15px; width: 64px; height: 64px; opacity: 0.5; cursor: pointer }
.btn-close-icon:hover { opacity: 1; }
.btn-close-icon:before, .btn-close-icon:after { position: absolute; left: 30px; content: ' '; height: 65px; width: 2px; background-color: #333; }
.btn-close-icon:before { transform: rotate(45deg); }
.btn-close-icon:after { transform: rotate(-45deg); }
@media (max-width: 480px) {
    .btn-close-icon { width: 32px; height: 32px; }    
    .btn-close-icon:before, .btn-close-icon:after { left: 15px; height: 33px; }
 }


/* Header */
#wrap-content-header .content-header { background-color: rgba(0,0,0,0.5); }
header { background-color: transparent; transition: all ease-in-out 0.5s; }
header.scroll-down { background-color: #FFFFFF!important; box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important; }
header.scroll-down .btn-menu { color: #000!important; }
header.scroll-down .div-login { color: #000!important; }


/* Menú principal */
header .navbar-brand img { max-height: 120px;}
header.scroll-down .navbar-brand img { max-height: 60px; transition: all 0.2s; }


/* Home */
.carousel-inner .wrap-img-cover-object { height: 750px; }
.info-tour .bg-primary { background-color: #fee2cc!important; }

#carousel-home .carousel-inner .wrap-img-cover-object::after {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    content: ' ';
    z-index: 0;
    background: -moz-linear-gradient(top, rgba(0,0,0,0.5) 100%, rgba(0,0,0,0.5) 100%, rgba(0,0,0,0.5) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,0.5) 100%,rgba(0,0,0,0.5) 100%,rgba(0,0,0,0.5) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0.5) 100%,rgba(0,0,0,0.5) 100%,rgba(0,0,0,0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33000000', endColorstr='#a6000000',GradientType=0 );
}

.flag-icon { height: 40px!important; }

/* INTERIORES */
#wrap-contenido { min-height: 200px; }
#wrap-content-header { height: 40vh; min-height: 20rem; }

/* Booking Calendar*/
#form-booking .hide { opacity: 0; height: 0; padding: 0; }

.calendar-day { }
.calendar-day .text-date-number { margin-top: 0.5rem; margin-bottom: -0.5rem; font-size: 4rem; line-height: 4rem; font-weight: bold; }
/*
.btn-trash { position: absolute; right: 20px; top: 5px; }
#rowroom .btn-trash { opacity: 0; }
#wrap-datepicker .daterangepicker { width: 640px }
*/

/* Page */
#galeria .wrap-img-cover-object { height: 200px; }

/* Item */

.item.booking .wrap-img-cover-object { height: 400px ;}
article .wrap-img-cover-object { min-height: 450px; }
.checkbox-group .list-group .list-group-item:hover { background-color: #f8f9fa; }
    

/* Galeria */
#galerias_imagenes .wrap-img-cover-object { height: 250px; }


/* Contact */
.error-msg { color: #dc3545; font-size: 80%; }

/* Share */
#share_zone > div { float: left; margin-right: 0.5rem; padding: 1rem 0; }
#share_zone .fb-share-button > span { height: 30px!important; }

#cookiescript_reportdate{ display: none;}

/* Footer */
#footer { font-size: 0.90rem; color: #FFFFFF; line-height: 1.6rem; background-color: #000; }
#footer a {color:#FFFFFF}
#footer a:hover {color:#978a78}
#footer .firma { background-color: #111111; font-family:  sans-serif; }
#footer .firma a.ico-ladeus { color:#555555; background: url("https://www.ladeus.com/imatges/ico-color-bn-ladeus.png") no-repeat; background-position: left top; font-style: normal; font-weight: normal; display: inline-block; font-size: 0.8rem; height: 18px; line-height: 3px; padding: 7px 0 5px 24px; transition: all 0.15s; }
#footer .firma a.ico-ladeus:hover {  background-position: left bottom; color:#777777; text-decoration: none; }
#footer .logo { max-height: 80px; }



/*
span.old-price { 
    font-size: 0.9rem; 
    background-color: transparent;
    background-image: -webkit-gradient(linear, 19.1% -7.9%, 81% 107.9%, color-stop(0, #fff), color-stop(.48, #fff), color-stop(.5, #000), color-stop(.52, #fff), color-stop(1, #fff));
    background-image: -webkit-repeating-linear-gradient(287deg, #fff 0%, #fff 48%, #000 50%, #fff 52%, #fff 100%);
    background-image: repeating-linear-gradient(163deg, #fff 0%, #fff 48%, #000 50%, #fff 52%, #fff 100%);
    background-image: -ms-repeating-linear-gradient(287deg, #fff 0%, #fff 48%, #000 50%, #fff 52%, #fff 100%); 
}
*/


/********** CSS Ladeus  ********/
.relative {position: relative}
.text-lg { font-size: 1.5rem; }
.ls-1 { letter-spacing: 0.1rem }
.ls-2 { letter-spacing: 0.2rem }
.ls-3 { letter-spacing: 0.3rem }
.fw-100 { font-weight: 100; }
.fw-300 { font-weight: 300; }
.fw-700 { font-weight: 700; }
.serif {font-family: 'Roboto Slab', serif;}
.sans-serif {font-family: 'Roboto', sans-serif;}

img.grayscale { 
    filter: url("data: image/svg+xml;utf8,&lt;svg xmlns=\'http: //www.w3.org/2000/svg\'&gt;&lt;filter id=\'grayscale\'&gt;&lt;feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/&gt;&lt;/filter&gt;&lt;/svg&gt;#grayscale"); /* Firefox 10+, Firefox on Android */
    filter: gray; /* IE6-9 */
    -webkit-filter: grayscale(100%); /* Chrome 19+, Safari 6+, Safari 6+ iOS */
 }
.overlay-black { background-color: rgba(0,0,0,0.35) }

    /* css dels Tinys */
    .linkupload { padding: 2px 5px 0px 50px; color: #454545; }
    .link-pdf { background: url(../images/ico/ico-pdf-red.png) no-repeat left 2px; }
    .link-word { background: url(../images/ico/ico-word.png) no-repeat left 2px; }
    .img-ico { max-width: 50px; }

    /* Cover img para el background-image */
    .wrap-img { background-position: center center; background-size: cover; background-repeat: no-repeat; } 
    /* Cover img sin usar background */
    .wrap-img-cover-object.bbcode { display: block; height: 150px; margin: 15px 0; transition: 0.2s opacity }
    .wrap-img-cover-object.bbcode:hover { opacity: 0.8; }
    .wrap-img-cover-object { position: relative; width: 100%; height: 300px; }
    .wrap-img-cover-object img { width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover; object-position: 50% 50%;'; object-position: 50% 50%; transition: all 0.5s; }


.select2 { width: 100%; }

#form-booking .hide { opacity: 0; height: 0; padding: 0; }

#reservas_date_range.form-control { color:var(--bs-primary);; font-size: 1.5rem;}
.datepicker--cell.-selected-.-focus- { background: #ff6d00 }
.fa-square.text-danger {color: #f8d7da!important; }
.fa-square.text-muted {color: #999!important; }
#form-reservation .cf-booking-required .custom-switch label:after, #form-reservation .cf-booking-required .custom-switch label:before{ display: none; }

#form-reservation .datepicker{ width: 100%; margin: 0 auto 1rem; font-size: 1rem; }
#form-reservation .datepicker--cell{ height: 50px; }

#form-reservation .alert-partial-stock-start:not(.-selected-):not(.-in-range-) { background-image: -webkit-linear-gradient( 120deg, #f8d7da 50%, #FFF 50% ); }
#form-reservation .alert-partial-stock-end:not(.-selected-):not(.-in-range-){ background-image: -webkit-linear-gradient( 300deg, #f8d7da 50%, #FFF 50% ); }

#search_date_range-error { margin-bottom: 15px; }


/*.calendar-day .text-date-number { margin-top: 0.5rem; margin-bottom: -0.5rem; font-size: 4rem; line-height: 4rem; font-weight: bold; }*/

.datepicker-here[data-inline="true"]{ border: 0; box-shadow: none; cursor: default; padding: 0; font-weight: 600; font-size: 16px; background: none !important; }
.datepicker-inline.is-invalid .datepicker{ border-color: #dc3545; }
.datepicker--cell.-disabled-{ color: #d9d9d9; }
.datepicker--day-name{ color: #333333; }
.datepicker--cell.-disabled-.alert-danger{ color: rgba(114,28,36,.5); }
.datepicker--cell-day.-other-month-.datepicker--cell.-disabled-.alert-danger{ color: rgba(114,28,36,.3); }
.datepicker--cell.-selected-, .datepicker--cell.-selected-.-current-{ background-color: var(--bs-primary); }
.datepicker--cell.-selected-.-focus-{ background-color: var(--bs-primary) }
.datepicker--cell.-in-range-{ background-color: rgba(12,84,96,.2) }
.datepicker--cell-day.-other-month-.datepicker--cell.-disabled-{ color: #eee; }
.datepicker--cell-day.alert-no-stock{ background-color: #f8d7da; border-color: #f5c6cb; color: rgba(114,28,36,.5);}
.paginate_button { cursor: pointer; padding-left: 4px; padding-right: 4px;}
.qrPreviewVideo { width: 100%; max-width: 100%; }
.popover { z-index: 2000; }

/* Large desktop */
@media (min-width: 1200px) {
    
}    

@media (min-width: 980px) and (max-width: 1199px) {
    
    
}

/* Large desktop */
@media (max-width: 1200px) {

}

/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) {
    
}

@media (max-width: 992px) {

}
 
/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
    /*
        .daterangepicker .drp-calendar { max-width: none; }
        .daterangepicker.ltr .ranges, .daterangepicker.ltr .drp-calendar { margin: 0 auto; float: none; }
    */
    #wrap-menu-principal .navbar-brand img { max-height: 80px; }
    .div-login { font-size: 0.6rem; }
    
}


/* Extra small devices (portrait phones, less than 576px) A partir de aquí SM */
@media (max-width: 575.98px) {
    h1, .h1 { font-size: 3.5rem; line-height: 3.5rem }
 }

@media (max-width: 420px) {
    h1, .h1 { font-size: 2.5rem; line-height: 2.5rem }
    #wrap-content-header { height: 400px; }
 }


@media all and (transform-3d), (-webkit-transform-3d) {
    
}