@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,900;1,300&display=swap');

html, body { height: 100%; }
body { font-family: 'Lato', 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; }
.div-contact{ position: fixed; z-index: 9999; right: 0; top: 0; }
#btn-contact { padding: 14px; }
#btn-contact .svg-inline--fa { vertical-align: -0.5rem!important; }
/* ----- Custom Project ------ */

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-weight: 300 }
h1, .h1 { font-size: 3.5rem; line-height: 3rem; }
h2, .h2 { }
h3, .h3 { }
h4, .h4 { }
h5, .h5 { }

a { color: #5894CB; text-decoration: none; }
a:hover, a:focus { color: #6B5D4B; text-decoration: none; }

.bg-primary { background-color: #88cdca !important; }
.text-primary { color: #88cdca !important;}
.btn-primary { background-color: #88cdca; border-color: #88cdca; }
.btn-primary:hover, .btn-primary:active, .btn-primary:focus { background-color: #76aaa8; border-color: #76aaa8; transition: all 0.5s;}
.btn-outline-primary { color: #88cdca; border-color: #88cdca; }
.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: #88cdca; border-color: #88cdca;}
.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 .2rem rgba(51, 153, 255, 0.5);}
.row.picture .wrap-img-cover-object { height: 360px; }
.card:hover img.grayscale { filter: none; }
.btn {font-size: 0.8rem; }
.btn-sm { padding: 10px 40px 10px 40px; }
.mt-n5 {margin-top: -3rem !important;}
.mt-n4 {margin-top: -1.5rem !important;}
.mt-n3 {margin-top: -1rem !important;}

/* 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.3);padding-top: 250px; padding-bottom: 250px; }


/* Menú principal */

    header  { background-color: transparent; transition: 0.2s all;  }
    header .navbar-brand .baseline { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.2rem; color: #fff; }
    header .navbar-brand img {opacity: 100; height: 115px; padding: 1rem 0 0.5rem; transition: 0.2s all;}
    header .navbar-nav .nav-link {letter-spacing: 0.05rem; }
    header .navbar-light .navbar-nav .nav-link {color: rgba(255,255,255,0.85);}
    header .navbar-light .navbar-nav .nav-link:focus, header .navbar-light .navbar-nav .nav-link:hover { color: rgba(255,255,255,1);}
    header .navbar-nav .nav-link {color: rgba(255,255,255,.8);}

    header.scroll-down { background-color: #ffffff; box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;}
    header.scroll-down .navbar-light .navbar-nav .nav-link {color: rgba(0,0,0,0.7);}
    header.scroll-down .navbar-light .navbar-nav .nav-link:focus, header.scroll-down .navbar-light .navbar-nav .nav-link:hover { color: rgba(0,0,0,1);}
    header.scroll-down .navbar-brand  {padding: 0; margin: 0; font-size: 0;}
    header.scroll-down .navbar-brand img {opacity: 0; height: 0;}
    header.scroll-down .navbar-brand .baseline { color: #222; }

    .navbar-toggler:focus { box-shadow: none;}


.navbar-nav #caja_idiomas .dropdown-menu { position: absolute; top: 45px; }

/* Home */
.carousel-inner .wrap-img-cover-object { height: 450px; }

.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.overlay-controls { position: absolute; top: 0; right: 0; left: 0; background-color: transparent; }
.embed-container { position: relative; padding-bottom: 44.25%; height: 0; overflow: hidden; max-width: 100%; overflow: auto; }
.hero-video .embed-container { position: static; }
.hero-video { min-height: 320px; }
.hero-video.openvideo {
overflow-x: hidden;
    overflow-y: auto;
    display: block;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background-color: #000000;
}
.bar-controls a { cursor: pointer; font-size: 2rem; line-height: 1.8rem; color: #FFFFFF !important;}
.bar-controls { position: absolute; top: 1rem; right: .5rem; }
.home #wrap-content-header .content-header { line-height: 2.8rem; padding-top: 325px; padding-bottom: 225px; }
hr.vertical { margin-top: 0; margin-bottom: 10px; border: none; border-right: 2px solid #dcdcdc; height: 142px; width: 1px; z-index: 5 !important; opacity: 100%; position: relative; left: 50%; }
hr.vertical.small { height: 90px; }
hr.vertical.divisor { position: relative; top: -122px; margin-bottom: -102px; }
.show-hero-video-button { font-size: 4rem; line-height: 6rem; cursor: pointer;}
#carousel-galeria .wrap-img-cover-object { height: 600px; }
.logo-header { position: relative; left: 0; right: 0; margin-left: auto; margin-right: auto; top: -86px;}
.items-come-work .card img { max-width: 60px; }
.items-come-work .content-come-to-work { padding-top: 500px; padding-bottom: 20px; background-color: rgba(0,0,0,0.1); }
.cols-alt .wrap-img-cover-object { height: 450px; }
#ocio .wrap-img-cover-object { height: 500px; }
.img-icon {  position: relative; left: 0; right: 0; margin-left: auto; margin-right: auto; top: -40px;}
.gal-comunity .wrap-img-cover-object { height: 400px; }
.fa-stack .fa-circle { font-size: 1.5rem; }
.opacity-50 { opacity: 50%; }

/* INTERIORES */
#wrap-contenido { min-height: 200px; }

/* 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; }
.logo-top { top: -170px; }
.logo-cat { max-height: 100px; }
.img-icon img { max-height: 70px; }
.padding-top-logo { margin-top: 7.5rem; }
/* List */
.types-accommodation .wrap-img-cover-object { height: 350px; }
#galeria-situacion .wrap-img-cover-object { height: 300px; }
.items .carousel-inner .wrap-img-cover-object { height: 550px; }

/* List Carta PGW
    .title-carta a::before { content: "\f106"; font-family: 'FontAwesome'; position: absolute; right: 2rem; font-size: 1.4rem;}
    .title-carta a.collapsed::before { content: "\f107"; }
*/
/*
.collapse-title { padding: 40px 25px; }
.collapse-title .svg-inline--fa { margin-top: -0.5rem; }
*/

/* Item */
.item .description h3 { text-transform: uppercase; letter-spacing: 0.1rem; font-size: 1rem;}
.relacinados img { max-height: 200px; width: auto; }
.item.default { margin-top: 15rem; }
/* Galeria */
#galerias_imagenes .wrap-img-cover-object { height: 250px; }


/*
#idioma a { color: #777777; font-size: 12px; font-weight: 600; }
#idioma a:hover { color: #5894CB; }
#idioma li.nav-item { margin-right: 0; padding-right: 5px; border-right: 1px solid #333333; }
#idioma a { padding: 5px 10px; margin-right: 0; }
#idioma li.nav-item: last-child { border: 0; }
*/


/* 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; }

/* Footer */
#footer { font-size: 0.90rem; background-color: #FFFFFF; color: #000000; line-height: 1.6rem; }
.firma { background-color: #111111; font-family:  'Open Sans', sans-serif; }
.firma a.ico-ladeus { opacity: 0.4; background: url("https://www.ladeus.com/imatges/ico-color-bn-ladeus.png") no-repeat; background-position: left top; font-style: normal; font-weight: normal; color: #666; display: inline-block; font-size: 11px; height: 18px; line-height: 3px; padding: 7px 0 5px 24px; transition: all 0.15s; }
.firma a.ico-ladeus:hover { opacity: 1; background-position: left bottom; color: #999; text-decoration: none; }


/* Cookies */
#cookiesdirective { position: fixed; left: 0; right: 0; background: #323232; opacity: 0.9; color: #FFFFFF; font-size: 13px; text-align: center; z-index: 1000; padding: 10px; }
#cookiesdirective a { color: #f6a21d; font-weight: bold; } 
#cookiesdirective a.btn:hover { color: #FFF; text-decoration: none; } 

/* Login */
.toggle-view-pass { top: 0 !important; }
#modal-resetpassword .toggle-view-pass{ margin-top: -16px !important; } 

/* CSS Para la shop */
#registros-relacionados span.wrap-price { font-size: 1.3rem;display: block; margin-bottom: -10px; }
#registros-relacionados .old-price { font-size: 1.3rem; margin-left: 0px }
#steps_shop { background-color: #e9ecef; }
span.wrap-price { font-size: 2rem; display: block; margin-bottom: -10px; }
.custom-checkbox label { cursor: pointer; line-height: 1.5rem; }
.old-price { margin-left: 1rem; }
.resumen_cesta .table td, .resumen_cesta .table th { border-top: 1px solid #dee2e6!important; }
.resumen_cesta tr, .resumen_cesta td { border: 0px; }
.img-cart { max-width: 80px; }

/* Select2 - Theme para BS4 */
.select2-container .select2-selection--single { height: 38px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 36px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 20px; right: 3px; }
.select2-container--default .select2-selection--single { border: 1px solid #ced4da; }
.select2-container--default .select2-selection--single .select2-selection__arrow b { border: none; font-family: 'FontAwesome'; color: #999999; }
.select2-container--default .select2-selection--single .select2-selection__arrow b:before { content: "\f107"; }
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { color: #999999; border: none; font-family: 'FontAwesome'; }
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b:before { content: "\f106"; }
.select2-container--default.select2-container--open .select2-selection--single, .select2-container--default.select2-container--open .select2-selection--multiple { border-color: #80bdff; box-shadow: 0 0 0 .2rem rgba(0,123,255,.25); }

.is-invalid.select2-container--default .select2-selection--single { border: 1px solid #dc3545; }

/*
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 necesari pel Mapa */
#map img { max-width: inherit; }
#map { height: 550px; }

/* Info Bulle Map */
.infobulle { overflow: hidden; position: relative; background-color: #fff; border-radius: 4px; -webkit-border-radius:4px; -moz-border-radius:4px;  border: 1px solid #fff; }
.infobulle .bg { height: 20px; width: 100%; }
.infobulle .text { color: #000; font-size: 14px; padding: 4px 20px; white-space: nowrap; /* margin-top: -20px; */ }

/********** 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; }

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: 550px; }
    .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; }
    .click_a .wrap-img-cover-object:hover img { opacity: 0.6 }


    .swiper-custom-arrow.swiper-button-next {
        margin-top: 0px;
        position: absolute;
        top: 50%;
        right: -50px;
        width: 45px;
        height: 45px;
        transform: translateY(-50%);
    }
    .swiper-custom-arrow.swiper-button-prev {
        position: absolute;
        top: 50%;
        left: -50px;
        width: 45px;
        height: 45px;
        transform: translateY(-50%);
        margin-top: 0px;
    }
    
    .swiper-custom-arrow.swiper-black.swiper-button-next { background-color: #000000; opacity: 1;}
    .swiper-custom-arrow.swiper-black.swiper-button-prev {background-color: #000000; opacity: 1; }
    .swiper-custom-arrow.swiper-black.swiper-button-prev::after { color: #FFFFFF;font-size: 0.7rem }
    .swiper-custom-arrow.swiper-black.swiper-button-next::after { color: #FFFFFF;font-size: 0.7rem }
    .swiper-button-disabled { cursor: pointer!important; pointer-events: auto!important; }
    .swiper-button-prev:after, .swiper-button-next:after {
        font-size: 1rem;
        color: #000000;
        font-weight: 700;
    }
    

/* Large desktop */
@media (max-width: 1600px) {
    .home #wrap-content-header .content-header { padding-top: 280px; padding-bottom: 50px; }
    .home #wrap-content-header hr.vertical { height: 100px; }
}


/* Large desktop */
@media (min-width: 1200px) {
    
}    

@media (min-width: 980px) and (max-width: 1199px) {
    
    /* #modules .card > div { width: 60%; } */
    
}

/* Large desktop */
@media (max-width: 1200px) {
    .home #wrap-content-header .content-header { padding-top: 300px; padding-bottom: 50px; }
    .home #wrap-content-header hr.vertical { height: 40px; }
    .home .logo-header img { height: 100px; }
    .home .logo-header { top: -47px; }

    
    #wrap-menu-principal .navbar-brand { top: -40px; }
    #wrap-menu-principal .zone-reservas { position: absolute; right: 90px; }
    #registros-relacionados span.wrap-price { display: inline; margin-right: 10px;  }
        #menu-principal .nav-item { padding: 0 1rem;}
        #wrap-menu-full { background-color:#fff;}
        #wrap-menu-full .navbar-nav .nav-link {color: rgba(0,0,0,.8);}
        header .navbar-brand img, header.scroll-down .navbar-brand img {opacity: 100; height: 50px; position: absolute; left: 5rem;  top: 0rem; opacity: 1;}
        header {  box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;}
    .home #wrap-content-header .content-header { padding-top: 110px; padding-bottom: 70px;}
    #wrap-content-header hr.vertical { display: none; }
    .home #wrap-content-header .content-header { padding-top: 160px; }
    .swiper-custom-arrow.swiper-button-next { right: 13px; }
    .swiper-custom-arrow.swiper-button-prev { left: 13px; }
}

/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) {
    
    /* h1, .h1 { font-size: 4.5rem; } */
    
}

@media (max-width: 992px) {
    
    /*
    #wrap-menu-principal { min-height: 80px; }
    #wrap-menu-principal .navbar-brand img { max-height: 70px; margin-bottom: 0; }
    */
    /*
    #wrap-menu-principal .navbar-brand { top: -40px; }
    #wrap-menu-principal .zone-reservas { position: absolute; right: 90px; }
    #registros-relacionados span.wrap-price { display: inline; margin-right: 10px;  }
        #menu-principal .nav-item { padding: 0 1rem;}
        #wrap-menu-full { background-color:#fff;}
        #wrap-menu-full .navbar-nav .nav-link {color: rgba(0,0,0,.8);}
        header .navbar-brand img, header.scroll-down .navbar-brand img {opacity: 100; height: 50px; position: absolute; left: 5rem;  top: 0rem; opacity: 1;}
        header {  box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;}
    .home #wrap-content-header .content-header { padding-top: 110px; padding-bottom: 70px;}
    #wrap-content-header hr.vertical { display: none; }
    .home #wrap-content-header .content-header { padding-top: 160px; }
    .swiper-custom-arrow.swiper-button-next { right: 13px; }
    .swiper-custom-arrow.swiper-button-prev { left: 13px; }
    */
}
 
/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
    
    /* #wrap-menu-principal .navbar-brand img { max-height: 60px; } */
    .daterangepicker .drp-calendar { max-width: none; }
    .daterangepicker.ltr .ranges, .daterangepicker.ltr .drp-calendar { margin: 0 auto; float: none; }
    .home #wrap-content-header .content-header { padding-top: 120px; }
    
}


/* Extra small devices (portrait phones, less than 576px) A partir de aquí SM */
@media (max-width: 575.98px) {
    
    h1, .h1 { font-size: 2.5rem; line-height: 3rem; }
    .home #wrap-content-header .content-header { padding-top: 100px; }
    
 }

@media (max-width: 420px) {
    
    .zone-reservas > button { position: absolute; z-index: 1; top: 65px; right: -65px; }
    
 }


@media all and (transform-3d), (-webkit-transform-3d) {
    
}
