:root {
    --primario: #003ACA;

    --secundario: #FEF5AE;
    /* --transparencia: #DAECF8; */
    --transparencia: #daecf84f;
}

:root {
    --color-1: #003ACA;
    --color-2: #00275C;
    --color-3: #ACD4FA;
    --color-4: #FFD938;
    --color-5: #fff0ab;
    --color-6: #f4f4f4;
    --color-7: #BABABA;
    --color-8: #585858;

    --border-radius: 50px;
    --border-radius-interiores: 25px;
	--btn-radius: 999px;

    --font-1: 'Raleway', sans-serif;
    --font-2: 'Open Sans', sans-serif;
    --font-3: 'Poppins', sans-serif;
    --font-4: 'DM Sans', sans-serif;
}

html,
body {
    overflow-x: hidden !important;
    width: 100% !important;
    position: relative !important;
}

/* -- circulos -- */
.wrapper-flex,.wrapper-flex-mobile{
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;/* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-box;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;

    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
}


/* -- row -- */
.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

.row-eq-height.container:before,
.row-eq-height.container:after,
.row-eq-height.row:before,
.row-eq-height.row:after {
    content: normal;
}

.full {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}

.separa-5{
    height: 5px;
}

.separa-10{
    height: 10px;
}

.separa-20{
    height: 20px;
}

.separa-25{
    height: 25px;
}

.separa-40{
    height: 40px;
}

.separa-30{
    height: 30px;
}

.separa-50{
    height: 50px;
}

.separa-100{
    height: 100px;
}


/* separa de secciones */

.separa-section-5{
    height: 5px;
}

.separa-section-10{
    height: 10px;
}

.separa-section-20{
    height: 20px;
}

.separa-section-25{
    height: 25px;
}

.separa-section-40{
    height: 40px;
}

.separa-section-30{
    height: 30px;
}

.separa-section-50{
    height: 50px;
}


.separa-section-100{
    height: 100px;
}

@media (max-width:992px){
    .separa-section-5{
        height: 4px;
    }

    .separa-section-10{
        height: 6px;
    }

    .separa-section-20{
        height: 14px;
    }

    .separa-section-25{
        height: 16px;
    }

    .separa-section-30{
        height: 20px;
    }

    .separa-section-40{
        height: 26px;
    }

    .separa-section-50{
        height: 34px;
    }

    .separa-section-100{
        height: 66px;
    }
}

/* Multiplos */
.separa-16{
    height: 16px;
}

.separa-24{
    height: 24px;
}

.separa-32{
    height: 32px;
}

.separa-40{
    height: 40px;
}

.separa-48{
    height: 48px;
}

.separa-56{
    height: 56px;
}

.separa-64{
    height: 64px;
}

.relative{
    position: relative;
}

.absolute{
    position: absolute;
}

.centrado{
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.centrado.izquierda{
    justify-content: flex-start;
}

.centrado.derecha{
    justify-content: flex-end;
}

.animacion{
    transition: all 300ms linear!important;
    -webkit-transition: all 300ms linear!important;
    -moz-transition: all 300ms linear!important;
    -ms-transition: all 300ms linear!important;
    -o-transition: all 300ms linear!important;
}

.limitar{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.limitar_1{
    -webkit-line-clamp: 1; /* number of lines to show */
}

.limitar_2{
    -webkit-line-clamp: 2; /* number of lines to show */
}

.limitar_3{
    -webkit-line-clamp: 3; /* number of lines to show */
}

.limitar_4{
    -webkit-line-clamp: 4; /* number of lines to show */
}

.limitar_5{
    -webkit-line-clamp: 5; /* number of lines to show */
}

.limitar_6{
    -webkit-line-clamp: 6; /* number of lines to show */
}

.limitar_7{
    -webkit-line-clamp: 7; /* number of lines to show */
}

.limitar_8{
    -webkit-line-clamp: 8; /* number of lines to show */
}

.limitar_9{
    -webkit-line-clamp: 9; /* number of lines to show */
}

.limitar_10{
    -webkit-line-clamp: 10; /* number of lines to show */
}

.m-auto {
    margin: auto;
}

.flex-column {
    display: flex;
    flex-direction: column;
}

.caja{
    overflow: hidden;
}

/*********************************
*            INTERIORES          *
*********************************/

.interiores {
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%);
}

.textaco img{max-width: 100%;}

#swipebox-overlay {
    background: #0d0d0ddb;
}
#swipebox-bottom-bar, #swipebox-top-bar{
    background: transparent;
}
.ug-lightbox .ug-lightbox-overlay{background: #0d0d0ddb;}
/*Detalle producto*/
.breadcrumb>li {
    font-size: 13px;
}
.tag_option{margin: 5px;color: var(--primario)}
.tag-circle{
    height: 42px;width: 42px;border-radius: 100%;display: inline-block;justify-content: center;align-items: center;border: 2px solid #fff;overflow: hidden; border: 2px solid #f5f5f5;
}

.tag-circle img{height: 40px;width: 40px;border-radius: 40px; object-fit: contain;}

.tag_bloque{
    height: 40px;width: 70px;display: inline-flex;background-color: var(--transparencia);justify-content: center;align-items: center
}

.tag-circle.active{
    border: 2px solid #000;
}

.tag_bloque.active{background-color: var(--primario);}
.tag_option.active a{color: #fff;}

.foto_principal .imagen{width: 100%;background-position: center;background-size: contain;background-repeat: no-repeat;border: 1px solid #f5f5f5}
.foto_principal.mini .imagen{height: 444px; background-size: cover;}

.foto_principal .lupa{
    position: absolute;top: 0;left: 0;height: 100%;width: 100%;background-color: rgba(0,0,0,0.5);opacity: 0;transition: 300ms all linear;color: #fff;font-size: 40px
}

.foto_principal .lupa:hover{
    opacity: 1;
}

.quantity{
    border: 2px solid var(--primario);
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

.quantity label{
    display: inline-block;
    padding: 0 20px;
    color: var(--secundario);
}

.quantity-controls .fa{
    color: var(--secundario);
}

.quantity-controls{
    display: inline-block;
    position: relative;
}

.quantity-controls span{
    color: #888;
    cursor: pointer;
    height: 48px;
    line-height: 48px;
    position: absolute;
    top: 0;
    width: 26px;
    -webkit-transition: color .15s ease-in-out;
    -moz-transition: color .15s ease-in-out;
    transition: color .15s ease-in-out;

    color: #171717;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
}

.quantity-controls span.right{
    right: 0;
    text-align: left;
}
.lista_productos_sin_stock{
    border: 2px solid red;
    padding: 20px 20px;
    list-style-type: none;
}

.lista_productos_sin_stock li{
    color: #f4573a;
    font-weight: 600;
}
#productos>div {
    padding-right: 23px;
    padding-left: 23px;
}

#cantidad{
    border: 0;
    font-family: inherit;
    font-size: 15px;
    height: 48px;
    line-height: 48px;
    margin: 0 26px;
    outline: 0;
    padding: 0;
    position: relative;
    width: 40px;
    -webkit-appearance: none;

    display: inline-block;
    text-align: center;
    vertical-align: middle;
}

.otros_productos h2, .otros_productos h3{color: var(--primario); font-weight: 500;font-family: var(--familia_fuente)}

.botones_carro{
    width: calc( 100% - 225px );
    float: right;
}
.botones_carro.grande{width: 100%;}

.btn_love img{height: 30px;width: 30px}

.btn-filtro{height: 34px; width: 100%; margin-bottom: 15px; border-radius: 4px;}

.botones_carro .btn-tam{height: 52px; width: 100%;}


.descarga.uno:hover .btn{
    color: #fff;
    background-color: var(--secundario);
}

.descarga.dos:hover .btn{
    color: var(--secundario);
    background-color: #e8d6fb;
}
.mayorista{
    color: var(--secundario);background-color: #e8d6fb;border: 2px solid var(--secundario);padding: 16px 14px;
    text-align: center;font-weight: 600;
}
.btn-corporativo{
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    font-family: var(--familia_fuente);
    text-transform: uppercase;
    border: 0px;
    border-radius: 10px;
    background-color: var(--primario);
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.btn-lg.btn-corporativo{
    padding: 18px 30px;

}
.btn-corporativo .btn-carro_portada img{height: 20px;width: 20px;margin-right: 15px;border-radius: 0;}
.btn-comprar{border: 0;}

.btn-grandotes{padding: 15px}
.btn-corporativo2{
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    font-family: var(--familia_fuente);
    text-transform: uppercase;
    border: 0px;
    border-radius: 10px;
    background-color: var(--primario);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 10px}
.btn-corporativo3{
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    font-family: var(--familia_fuente);
    text-transform: uppercase;
    border: 0px;
    border-radius: 10px;
    background-color: var(--primario);
    display: inline-flex;
    justify-content: center;
    align-items: center;}

.btn-corporativo:hover, .btn-corporativo:focus, .btn-corporativo:active{background-color: #5c5b5b;color: #fff}

.btn-corporativo2:hover, .btn-corporativo2:focus, .btn-corporativo2:active{background-color: #5c5b5b;color: #fff}
.btn-corporativo3:hover, .btn-corporativo3:focus, .btn-corporativo3:active{background-color: #5c5b5b;color: #fff}
.desactivado{
    opacity: 0.6;
}
.acceso a{
    color: #fff;
}
.lista_productos .btn_love img, .bienvenida .btn_love img{
    filter: brightness(0) invert(1);
    height: 22px;
    width: 22px;
}

.left .caja_redes a{
    width: 45px;
    height: 45px;
}
.btn-corp{background-color: var(--primario);color: #fff !important; border: 0;}

.btn-default-formulario{background-color: #c6c6c6;color: #fff !important}

.nav-botones{border: none;}

.nav-botones>li>a{
    background-color: #fff;border-radius: 0px;margin: 0px 10px;color: #78c74a;border: 2px solid var(--primario);
}

.nav-botones>li>a:focus, .nav-botones>li>a:hover{
    background-color: #f5f5f5;color: #78c74a;border: 2px solid var(--primario);
}

.nav-botones>li.active>a, .nav-botones>li.active>a:focus, .nav-botones>li.active>a:hover{
    background-color: var(--primario);color: #fff;border: 2px solid var(--primario);
}

h1#title_prod{
    font-family: var(--familia_fuente);
    text-transform: uppercase;
    font-weight: 400;color: var(--primario);
    font-size: 24px;margin-top: 0px
}
h3.categoria{
    font-size: 18px;text-transform: uppercase;font-weight: 300;
    font-family: var(--familia_fuente);margin-top: 0px
}

span.precio{font-size: 24px;font-family: 'Open Sans',sans-serif;color: var(--primario);font-weight: 400}

.titulotag{font-weight: 400}

.videos_responsive{
    width: 600px;
    float: left;
    margin-right: 20px;
    margin-bottom: 30px;}

ul.columnas-detalle{
    list-style-type: disc;
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
    list-style-position: inside;
}

.otras_fotos .imagen{
    height: 150px;width: 100%;background-size: cover;background-position: center;
}

.breadcrumb{margin: 0;background-color: transparent}
.breadcrumb li a{text-transform: capitalize;color: #000}

.precios .tachado{text-decoration-line: line-through;}

/***PROGRAMAS***/
/*
.cabecera {
background-color: #78c74a;
border: solid 0px #fff;
color: #fff;
padding: 5px;
font-size: 14px;
}
*/

.fila1 {
    background-color: #d9ebd9;
    border: solid 2px #fff;
    padding: 8px;
}

.fila2 {
    background-color: #fff;
    border: solid 2px #fff;
    padding: 8px;
}

.mini_icono_text {
    margin-top: 4px;
    font-size: 24px;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
}


.lista_productos .fa{    color: var(--secundario);}

.mini_icono_text .fa-download{
    color: var(--secundario);
}


.fecha_archivos{
    font-size: 14px;margin: 5px;   
}

.elementos_desc>div:nth-child(even){ background-color: #d9ebd9 }
.elementos_desc .text_content {margin: 10px 0px}
.elementos_desc .text_content p {margin: 0px}
.elementos_desc p.fecha_archivos {text-align: center}
/**************************
SWIPEBOX
**************************/

.cuadro_fotos{
    padding-top: 15px;
    background-color: #f5f5f5;
    border: 1px solid #efefef;
}
.cuadro_fotos .foto_principal{background-color:#fff;margin-bottom:15px}
.cuadro_fotos .galeria{padding:30px 15px;background-color:#3b3b3b}
.swipebox .imagen{width:100%;background-size:contain;background-repeat:no-repeat;background-position:center}
/*.swipebox .imagen:after{content:'';padding-top:66.66%;display:block}*/
.swipebox .imagen:after{content:'';padding-top:100%;display:block}
.swipebox .padre_imagen .imagen{content:'';padding-top:100%;display:block}
.btn-precio{padding:0}
.foto_color .imagen{float:left;height:75px;width:75px;background-size:contain;background-position:center;background-repeat:no-repeat;margin:0 15px 30px 0}

.swipebox .imagen.secundaria{background-size: contain;}

.zona_galeria_mini .bx-wrapper .bx-prev { left: -45px; }
.zona_galeria_mini .bx-wrapper .bx-next { right: -45px; }
.bx-wrapper .bx-controls-direction a{z-index: 1000;}

.bx-wrapper .bx-viewport{
    box-shadow: none;
    border:none;
}

/**************************
NUEVA CESTA
**************************/

#cesta .articulo .padding{padding-right: 30px}

.resumen-cesta{padding: 20px}
.resumen-cesta .ancho-resumen{}
.resumen-cesta .label-resumen{float: right}
.resumen-cesta .label-resumen .cesta-bono{font-size: 24px;margin-right: 10px}
.resumen-cesta .label-resumen .precio_descuento{font-size: 24px;margin-left: 10px}
.resumen-cesta .label-resumen .bigger{font-size: 24px;}

.resumen-cesta .label-resumen p{margin: 0}

.resumen-cesta .aplicar_codigo{height: 52px;border-radius: 0;border-right: none}
.resumen-cesta .input-group-btn{border: 1px solid #ccc;border-radius: 0;border-left: none}
.resumen-cesta .btn-codigo{color:#fff;border:2px solid #fff;height:48px;cursor:pointer;display:flex;min-width:48px;align-items:center;justify-content:center;background-color:var(--primario)}

#gastos .radio, #gastos label{margin: 0}
#gastos label{display: flex;align-items: center;justify-content: flex-start}
#gastos .radio .colocar{width: 0px;margin-bottom: 5px}
.marco-gasto{border: 1px solid #ccc;margin-bottom: 10px;padding: 10px 0px}

.resumen-total strong{text-transform: uppercase;position: relative;top: 10px;}

.metodos-pago .radio-inline{font-size: 18px;margin-left: 20px;}
.btn-borrartodo {border-radius: 0px;background-color: var(--secundario);color: #fff!important}

.swal2-popup {font-size: 1.6rem !important;}

.condiciones a{color: var(--primario);}

/************************************
*  Cesta Lateral  *
************************************/

.titulares-resumen{color: var(--primario);}
#configurar-cesta h4{color: var(--primario);}

.menu-cesta{position: fixed;top: 0;right: 0px;height: 100vh;width: 480px;background-color: #fff;z-index: 1000;transition: 400ms all linear;box-shadow: 0px 8px 10px -5px rgba(51,51,51,0.2), 0px 16px 24px 2px rgba(51,51,51,0.14), 0px 6px 30px 5px rgba(51,51,51,0.12)}
.menu-cesta .cabecera-cesta{padding-top:35px;background-color: #d9d9d9;height: 90px;position: relative}
.fondo-cesta{height: 100%;width: 100%;position: absolute;top: 0;left: 0;}
.fondo-cesta .overlay-cesta{height: 100%;width: 100%;position: absolute;top: 0;left: 0;background-color: var(--primario)}
.menu-cesta .cabecera-cesta h3{margin: 0;color: #fff;font-size: 30px;font-family: var(--familia_fuente);text-align: center}
.cerrar-cesta{ position: absolute; top: 25px;right: 20px;transition: 200ms all linear;border-radius: 50%;cursor: pointer}
.cerrar-cesta img{height: 40px;width: 40px}

.cuerpo-cesta{height: calc(100vh - 260px);padding: 30px;overflow: scroll}
.pagar-cesta{height: 120px;padding: 0px 30px;}
.pagar-cesta p{text-align: center}
.pagar-cesta p span{font-size: 30px;font-weight: 400;}
.pie-cesta{height: 50px;background-color: #f7f7f7}

.articulo{position: relative}
.articulo img{width: 100%;height: 115px;object-fit: contain}
.articulo h4{font-size: 16px;font-family: var(--familia_fuente);color: #6a6a6a;}
.articulo .precio-articulo{}
.articulo .controles-articulo{height: 30px}
.articulo .controles-articulo .operators{height: 30px;display: inline-flex;align-items: center;justify-content: flex-start}
.articulo .btn-circle{border: 1px solid #353535;border-radius: 50%;height: 30px;width: 30px;display: inline-flex;justify-content: center;align-items: center;margin-left: 10px;float: right;color: #353535; cursor: pointer;}
.menu-cesta .icono-cesta{width: auto;height: 25px;margin: 0 6px}
.btn-operator{color: #272727}
.btn-operator:hover,.btn-operator:focus,.btn-operator:active {color: #626062}

#precio_label{text-align: center;}

#manto-cesta, #manto-movil {position:fixed;top:0;left:0;right:0;height:100%;width:100%;opacity:0;z-index:-1}
#manto-cesta.toogled, #manto-movil.toogled{z-index:30}

span.cesta-bono{color: #3c763d}

.btn-cesta{height: 48px;background-color: #272727;display: inline-flex;justify-content: center;align-items: center;border-radius: 0;color: #fff;}

.btn-cesta:hover, .btn-cesta:focus, .btn-cesta:active{color: #fff;background: #272727}

.boton-cesta{cursor: pointer;}

/* Animaciones */

.menu-cesta{transform: translate(530px, 0px);}
.mostrarCesta .menu-cesta{transform: translate(0px, 0px);}
a.cerrar-cesta:hover {background-color: #626062}

@media (max-width: 767px) {
    .menu-cesta{width: 100vw; transform: translate(110vw, 0px);}
    .menu-cesta .cabecera-cesta {padding-top: 15px;height: 50px}
    .menu-cesta .cabecera-cesta h3 {font-size: 20px}
    .cerrar-cesta{top: 10px;right: 10px}
    .cerrar-cesta img {height: 30px;width: 30px}
    .cuerpo-cesta{height: calc(100vh - 225px);padding: 30px;overflow: scroll}
    #manto-cesta.toogled, #manto-movil.toogled {z-index: 9;opacity: 0.6;background-color: #0d0d0d;}
}


/************************************
*  Archivos adjuntos y tipografias  *
************************************/

.tipografia, .titulo-contenido{text-align: left;color: #505050;text-transform: uppercase;font-family: var(--familia_fuente); font-size: 22px; font-weight: 400;margin-top: 0;}

.titulo-contenido{color: #000;}
.tipografia i{color: var(--primario)}
.listado {text-align: justify;}

.listado ul, .listado li {margin: 0px;padding: 0px;list-style: none;}
.listado li {padding: 20px;background-color: var(--transparencia);}
.listado li a, .listado li.alt a{font-size: 13px;font-family: 'Lato', sans-serif;font-weight: 300;}
.listado li.alt {background-color: transparent;}
.listado li.alt a {color: #000;text-decoration: none;}
.listado a {color: #000;text-decoration: none;}
.listado a:hover, .listado li.alt a:hover {color: var(--secundario);text-decoration: none;}

.btn-gris{ color: #333; background-color: #fafafa}
.btn-gris:hover, .btn-gris:focus, .btn-gris:active{color: #333; background-color: #dedede}


/************************************
*            MULTIFORMA             *
************************************/

/* .bloque_imagen_lista ul{list-style:none;padding:0}
.bloque_imagen_lista i{color:var(--secundario)}
.bloque_cabecera .bloque_titulo{background-color:var(--primario);padding:15px}
.bloque_cabecera .bloque_interior{background-color:var(--transparencia);padding:30px 15px}
.bloque_cabecera .bloque_titulo h3{margin:0;color:#fff;text-transform:uppercase;font-family:var(--familia_fuente);font-weight:300}
.bloque_cabecera .imagen{width:100%}
.bloque_cabecera h4{text-transform:uppercase;font-size:22px;font-family:var(--familia_fuente);color:var(--secundario)}
.bloque_cabecera .texto{font-size:18px;font-weight:300}
.bloque_imagen_lista .imagen{width:100%;object-fit:cover;margin-bottom:30px}
.bloque_imagen_lista h4{text-transform:uppercase;margin:0;margin-bottom:10px;font-family:var(--familia_fuente);color:var(--primario);font-size:22px}
.bloque_puntos ul{margin:0;padding:0;list-style:none}
.bloque_puntos ul li{margin-bottom:15px}
.bloque_puntos ul li>p>.fa{font-size:20px;color:var(--secundario)}
.bloque_contenido .titulo{background-color:var(--primario);padding:15px 10px}
.bloque_contenido .titulo h4{color:#fff;margin:0;text-transform:uppercase;font-size:16px;font-family:var(--familia_fuente);font-weight:300}
.bloque_contenido .bloque{padding:0 10px}
.bloque_desplegable .fondo,.bloque_documentos .fondo{background-color:var(--transparencia);padding:20px;margin-bottom:40px}
.bloque_desplegable .panel-group,.bloque_documentos .panel-group{margin:0}
.bloque_desplegable h2,.bloque_documentos h2{margin:0;margin-bottom:20px;font-size:23px;text-transform:uppercase;font-weight:400;font-family:var(--familia_fuente);color:var(--secundario)}
.bloque_desplegable .panel-default{border-color:var(--primario)}
.bloque_desplegable .panel-default>.panel-heading{background-color:var(--primario);color:#fff;border-color:var(--primario)}
.bloque_desplegable h2 .fa{color:var(--secundario)}
.bloque_desplegable .panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:var(--primario)}
.bloque_imagenes img{width:100%}
.bloque_imagenes .flexible{display:flex;align-items:center}


.panel-body .btn-corporativo2{padding:8px 15px}
.bloque_imagenes img{width:100%;object-fit:cover} */

/************************************
*              IDIOMAS              *
************************************/

#idiomasside{
    position: fixed;
    top: 300px;
    right: 0;
    z-index: 900;
}

#idiomasside li{
    padding: 10px;
    list-style-type:none;
}

#idiomasside img{
    height: 40px;
}

#idiomasside font{
    display: none;
}

.zona-idiomas-movil{height: 50px; width: 100%; display: flex; justify-content: space-around; align-items: center; padding: 20px; margin-top: 25px;}
.zona-idiomas-movil .flag{height: 50px; width: 30px;}

.marco-contacto{
    background-color: var(--transparencia);padding: 20px;}
.marco-contacto h3{margin-top: 0px}
.marco-contacto .input-group-addon{background-color: var(--primario); border-color: var(--primario);color: #fff}
.marco-contacto .form-control{border-color: var(--primario);}
.input-group .form-control {
    z-index: 0;
}

.zona-mapa iframe{height: 100%; width: 100%;}

.ocultorobots {
    opacity: 0;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0px;
    height: 0px;
}
/* TABLA MIS PEDIOS*/

.tabla_cabecera .row {font-weight: 400; background-color: var(--primario); color: #fff}
#tabla_stocks_resultados .row:nth-child(even) { background-color: var(--transparencia) }
.tabla_stocks .cell{padding: 15px}
.tabla_stocks .cell-btn{padding: 10px}
.avisono {margin: 10px 0px; font-size: 18px}

textarea {
    resize: vertical;
}

/*+++++++++++++++++++*/
/************************************
*             INTERIOR              *
************************************/
.fa-angle-down{
    padding-left: 5px;
}
/*MENU VIEJO
.navbar-default .dropdown-menu{
background-color: #fff;
color: #000;
top: 99%;
}

.navbar-default .dropdown-menu>li>a {
padding: 18px 20px;
color: #fff;
font-size: 16px;
font-family: 'Roboto', sans-serif;
font-weight: 300;
background-color: var(--primario);
border-bottom: 1px dotted #4b4a4a;
}

.superior .dropdown-menu>li>a {
padding: 18px 20px;
color: #000;
font-size: 16px;
font-family: 'Roboto', sans-serif;
font-weight: 300;
border-bottom: 1px dotted #c6c6c6;
border-right:  1px dotted #c6c6c6;
}
.dropdown-menu>.active>a, .dropdown-menu>.active>a:focus, .dropdown-menu>.active>a:hover {
background-color: var(--transparencia);
color: #2c2c2c
}
.dropdown-menu {
padding: 0;
}
.superior .open>.dropdown-menu {
width: 185px;
top: 32px;
}
.superior .dropdown-menu>.active>a, .superior .dropdown-menu>.active>a:focus, .superior .dropdown-menu>.active>a:hover, .superior .dropdown-menu>li>a:focus, .superior .dropdown-menu>li>a:hover {
background-color: #dddddd;;
color: #09090c;
font-weight: 700;
}
.navbar-default .dropdown-menu>.active>a, .navbar-default .dropdown-menu>.active>a:focus, .navbar-default .dropdown-menu>.active>a:hover, .navbar-default .dropdown-menu>li>a:focus, .navbar-default .dropdown-menu>li>a:hover {
background-color: #000;
color: #fff;
font-weight: 700;
}

.nav .open>a, .nav .open>a:focus, .nav .open>a:hover {
background-color: transparent;
}
.superior .open>a, .superior .open>a:focus, .superior .open>a:hover {
background-color: transparent;
}
*/
.acceso a p{
    color: var(--primario);
    font-weight: 600;
    margin: 0;
}

.noestavisibleparapersonas{
    display: none;
}



/* .banner_interior .texto{
    flex-direction: column;
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0px;
    left: 0px;
}
.banner_interior .texto img{
    margin-top: 20px;
}
.banner_interior.interior_azul .texto{
    background-color: rgba(69,183,245,0.5);
}
.banner_interior.interior_amarillo .texto{
    background-color: rgba(247,201,110,0.5);
}
.banner_interior.interior_rojo .texto{
    background-color: rgba(245,104,78,0.5);
}

.banner_interior p {
    margin-top: 0;
    font-size: 60px;
    line-height: 50px;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0px;
    font-family: 'Open Sans'; 
    text-align: center;
    margin-bottom: 0px;
    text-shadow: 2px 2px 3px rgba(1, 0, 2, 0.75);
}

.banner_interior h1{
    margin-top: 0;
    font-size: 60px;
    line-height: 50px;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0px;
    font-family: 'Open Sans'; 
    text-align: center;
    margin-bottom: 0px;
    text-shadow: 2px 2px 3px rgba(1, 0, 2, 0.75);
} */
.nav-pills>li.active>a, .nav-pills>li.active>a:focus, .nav-pills>li.active>a:hover {
    color: #fff;
    background-color: var(--primario);
}

.nav-pills>li>a{
    color:  #000;
    font-family: 'Open Sans'; 
    font-weight: 400;text-transform: uppercase;
}

/************************************
*              FILTROS              *
************************************/

.filtros{
    height: 112px;
    background-color: var(--transparencia);
    border-bottom: 1px solid #e8e8e8;
    margin: 0;padding: 0;
}

.producto-detalle .filtros{height: 44px;}

.filtros.interiores{
    background: #f9f9f9;
}

.filtros.gestion{
    height: 65px; display: flex; justify-content: center; align-items: center;
}
.filtros.gestion>div{
    width: 100%; margin-top: 15px;
}


.centrarflitros{
    display: flex;
    align-items: center;
}

/************************************
*             BUSCADOR              *
************************************/

#buscador_emergente{position:absolute;top:195px;width:100%;z-index:1000;transition:300ms all ease}
#buscador_emergente.oculto{visibility:hidden;opacity:0;top:0}
.buscador_emergente>div{background:#fff;border-bottom:1px solid #e4e9ef;box-shadow:0 0 3px #ccc;padding:15px}
.input_buscador{border-right:0;box-shadow:none;border-radius:0}
.boton_input_buscador{border-radius:0;padding:10px;border-left:0;border-right:0;color:rgba(0,0,0,.3);background-color:#fff!important}
.cerrar_input_buscador{border-right:0;border-right:1px #ccc solid;color:rgba(0,0,0,.3);padding:10px;border-radius:0;background-color:#fff!important}
#buscador{position:fixed;z-index:99999;height:100%;width:100%;display:flex;pointer-events:none}
#buscador.search-active{overflow:hidden;pointer-events:auto}
#buscador.search-active .search-input{opacity:1;transform:none;pointer-events:all}
#buscador.search-active .icon-close{opacity:1;transform:rotate(-90deg)}
#buscador.search-active .control{cursor:default}
#buscador.search-active .control .btn-material{transform:scale(70);right:1000px;top:0}
#buscador.search-active .control .icon-material-search{opacity:0}
.icon-close{position:fixed;top:30px;right:30px;color:#fff;cursor:pointer;font-size:70px;opacity:0;transition:all .3s ease-in-out}
.icon-close:hover{transform:rotate(0)}
.search-input{height:80px;position:absolute;top:50%;left:50px;margin-top:-40px;pointer-events:none;opacity:0;transform:translate(40px,0);transition:all .3s ease-in-out}
.search-input input{color:#fff;font-size:54px;border:0;background:transparent;-webkit-appearance:none;box-sizing:border-box;outline:0;font-weight:200;font-family: 'Open Sans'; }
.search-input i{color:#fff;font-size:50px;margin-right:15px}
.search-input ::-webkit-input-placeholder{color:#eee}
.search-input :-moz-placeholder{color:#eee;opacity:1}
.search-input ::-moz-placeholder{color:#eee;opacity:1}
.search-input :-ms-input-placeholder{color:#eee}
.wow{
    opacity: 0;
}
.full-width{width:100%}
.control{cursor:pointer}
.control .btn-material{position:absolute;top:-100px;width:60px;height:60px;right:0;border-radius:100%;box-sizing:border-box;background:var(--primario);outline:0;opacity:.9;transform-origin:50%;box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);transition:all .7s cubic-bezier(0.4,0,0.2,1)}
.control .btn-material:hover{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}
.control .icon-material-search{color:#fff;position:absolute;top:-10px;right:78px;transition:opacity .3s ease-in-out}

.navbar-img{display: none}
.modal-header{
    background-color: var(--primario);
    color: #fff;
}
.modal-content{border: 0;}
.modal-header .close{color: #FFFFFF;}

/************************************
*             PAGINACION            *
************************************/

.btn-pagination { 
    color: #FFFFFF; 
    background-color: #565656; 
    border-color: #565656; 
} 

.btn-pagination:hover, 
.btn-pagination:focus, 
.btn-pagination:active, 
.btn-pagination.active, 
.open .dropdown-toggle.btn-pagination { 
    color: #FFFFFF;
    background-color: var(--primario); 
    border-color: var(--primario); 
} 

.btn-pagination:active, 
.btn-pagination.active, 
.open .dropdown-toggle.btn-pagination { 
    background-image: none; 
} 

.btn-pagination.disabled, 
.btn-pagination[disabled], 
fieldset[disabled] .btn-pagination, 
.btn-pagination.disabled:hover, 
.btn-pagination[disabled]:hover, 
fieldset[disabled] .btn-pagination:hover, 
.btn-pagination.disabled:focus, 
.btn-pagination[disabled]:focus, 
fieldset[disabled] .btn-pagination:focus, 
.btn-pagination.disabled:active, 
.btn-pagination[disabled]:active, 
fieldset[disabled] .btn-pagination:active, 
.btn-pagination.disabled.active, 
.btn-pagination[disabled].active, 
fieldset[disabled] .btn-pagination.active { 
    background-color: #3a39367a; 
    border-color: #3A3936; 
} 

.btn-pagination .badge { 
    color: #0977b2; 
    background-color: #FFFFFF; 
}

.btn-pagination {
    padding: 10px 20px;
    font-size: 14px;
    margin: 0 15px;
    border: 1px solid;
}

.proyecto .imagen{
    background-size: cover;
}
.proyecto h3{
    font-family: var(--familia_fuente);
    margin-bottom: 40px;
    text-align: center;
}

/************************************
*         INSTAGRAM WIDGET          *
************************************/

.instagram-widget>div{position:relative; padding-top:calc(100vw / 6); width: 100%; overflow: hidden;}
.instagram-widget iframe{border:none !important; overflow:hidden !important; position:absolute !important; top:0 !important; left:0 !important; width:100% !important; height: 100% !important;}

/************************************
*           SELECT BONITO           *
************************************/

.selectbonito {
    position: relative;
}

.selectbonito:after {
    content: '\f078';
    font: normal normal normal 10px/1 FontAwesome;
    color: #ffffff;
    right: 0;
    position: absolute;
    pointer-events: none;

    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 7px;
}

/* IE11 hide native button (thanks Matt!) */
select::-ms-expand {
    display: none;
}

.selectbonito select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    /* Add some styling */

    display: block;
    width: 100%;
    float: right;
    background-image: none;
    -ms-word-break: normal;
    word-break: normal;
}
/* whatsapp */
.floating-icons {
    position: fixed;
    bottom: 1.5rem;
    right: 1.5rem;
    z-index: 9999;
}

.floating-icons a {
    display: inline-block;
    transition: all .2s ease-in-out;
}

a:hover, 
a:visited, 
a:link, 
a:active { 
    text-decoration: none;
}

.floating-icons img {
    max-width: 48px;
    height: auto;
}

.floating-icons a:hover {
    transform: scale(0.9);
}

.antetitulo-gris {
    font-family: var(--font-poppins);
    color: #8a8a8a;
    font-size: 32px;
    font-weight: lighter;
    margin-bottom: 0;
}

.antetitulo-gris-interiores {
    font-family: var(--font-poppins);
    color: #8a8a8a;
    font-size: 32px;
    font-weight: lighter;
    margin-bottom: 0;
}

.titulo-surf-cyan {
    font-family: var(--font-poppins);
    color: var(--color-teal);
    font-size: 75px;
    font-weight: 500;
    margin-bottom: 15px;
    line-height: 1.1;
}

.titulo-surf-cyan-interiores {
    font-family: var(--font-poppins);
    color: var(--color-teal);
    font-size: 54px;
    font-weight: 500;
    line-height: 1.1;
}

.texto-descripcion-gris {
    font-family: var(--font-body);
    color: var(--color-dark-gray);
    font-size: 18px;
    line-height: 1.6;
    max-width: 850px;
    font-weight: 300;
}

.btn-custom-pill {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 10px 75px !important;
    min-width: 200px;
    font-size: 18px;
    font-family: var(--font-poppins);
    font-weight: 400;

    background-color: var(--color-yellow);
    color: var(--color-teal);
    text-decoration: none;
    border-radius: 100px;
    border: none;
    transition: all 0.3s ease;

    width: fit-content;
    height: 60px;
}

.btn-custom-pill::before {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    border: 1.2px solid var(--color-teal);
    border-radius: 110px;
    pointer-events: none;
}

.btn-custom-pill:hover {
    background-color: var(--color-yellow-hover);
    transform: scale(1.03);
}


.btn-1 {
    background-color: var(--color-1);
    color: #fff;
}

.btn-1:hover,
.btn-1:active{
    background-color: var(--color-2) !important;
    color: #fff !important;
}

.btn-2 {
    background-color: var(--color-2);
    color: var(--color-4);
}

.btn-2:hover,
.btn-2:active {
    background-color: var(--color-4) !important;
    color: var(--color-2) !important;
}

.btn-reserve,
.btn-3 {
    background-color: var(--color-3);
    color: var(--color-2);
}

.btn-reserve:hover,
.btn-3:hover,
.btn-reserve:active,
.btn-3:active {
    color: var(--color-2) !important;
    color: var(--color-3) !important;
}

.btn-4 {
    background-color: var(--color-4);
    color: var(--color-2);
}
.btn-4:hover,
.btn-4:active{
    background-color: var(--color-5) !important;
    color: var(--color-2) !important;
}

.btn-reserve,
.btn-hero {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    z-index: 1;
    transition: all 0.2s ease-in-out;
    text-decoration: none;

    padding: 14px 40px;
    font-size: 18px;
    font-family: var(--font-1);
    border-radius: var(--btn-radius);
    /* min-width: 200px; */
    overflow: hidden;
    height: 72px;
    width: fit-content;
    padding: 0px 45px;
}

.icon-calendar,
.icon-btn {
    width: 24px !important;
    height: auto;
    margin-right: 12px;
}

.swal2-popup{
    width: 25em !important;
    padding: 2em !important;
}

.swal2-styled.swal2-confirm{
    background-color: var(--primario) !important;
}

.swal2-content{
    font-size: 1em !important;
}

  .container-peque {
    margin: 0 10px;
  }

@media (min-width: 576px) {
  .container-peque {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-peque {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-peque {
    max-width: 950px;
  }
}
/*//ESTILOS GENERALES//*/
@media (max-width: 1200px){
    .dropdown-submenu>a:after {
        display: none;
    }
    .sidebar-wrapper.left .form-control {
        height: 43px;
        padding: 6px 12px;
        color: var(--secundario);
        font-style: italic;
        background-color: #ffffff;
        border: 1px solid #91a22f;
        border-radius: 4px;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }
    .sidebar-nav li a.favorito {
        border-right: 1px solid rgba(255, 255, 255, 0.3);
    }
    .caja_favorito, .caja_redes {
        width: 100%;
        display: inline-flex;
        justify-content: center;
        align-items: center;
        margin-top: 10px;
    }
    .caja_favorito a,.caja_redes a{
        padding: 0 10px!important;
        margin: 10px 0!important;
    }
    .caja_acceso a{
        padding: 0 20px!important;
    }
    .caja_favorito a img{
        margin-left: 0!important;
    }
    .sidebar-wrapper li img,.caja_redes a img {
        height: 20px;
        transition: all .2s ease-in-out;
    }
    .sidebar-wrapper.left .btn {
        padding: 6px 11px;
        height: 43px;
        border-radius: 4px;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        background-color: var(--primario);
        border: 1px solid var(--primario);
    }
    .sidebar-wrapper.left .sidebar-nav li:first-child {
        padding: 10px 20px;
        text-indent: 0px;
        padding-top: 25px;
    }
    .left .sidebar-nav .multi-level li:first-child{
        padding: 0;
    }
    .left .sidebar-nav .multi-level li:last-child a{
        text-indent: 0;
    }
    .fijar{
        position: fixed;
        width: 100%;
    }
}
@media (min-width: 993px){ /* móviles */
    .desfijar {position: absolute !important; width: 100%;}
}
@media (max-width: 992px){ /* móviles */
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
        position: relative;
    }

    .container,
    .container-fluid {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }

    section {
        text-align: center !important;
    }

    .antetitulo-gris {
        font-size: 20px;
        margin-top: 20px;
    }

    .titulo-surf-cyan{
        font-size: 42px !important;
        line-height: 1.2 !important;
    }

    .titulo-surf-cyan-interiores{
        font-size: 50px !important;
        line-height: 1.2 !important;
    }
    
    /* menu_desplegable, descomentar si es necesario para el menu de movil */
    
/*
    .sidebar-nav .multi-level li a{
        text-indent: 0;
        padding-left: 40px !important;
    }
    .sidebar-nav .multi-level li:first-child{
        padding: 0;
    }
    .sidebar-nav .multi-level li:last-child a{
        text-indent: 0;
    }
    .sidebar-nav .multi-level li.active a{background-color: rgba(0, 0, 0, 0.45);}
    .sidebar-nav .multi-level li:first-child{
        padding: 0;
    }
    .sidebar-nav .multi-level li:last-child a{
        text-indent: 0;
    }
    .sidebar-nav .multi-level li.active a{
        text-decoration: none;
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.30);
        font-weight: 400;
    }

	.sidebar-wrapper{opacity: 1}

	.sidebar-nav .open>.dropdown-menu {
		position: static;
		background-color: transparent;
		border: none;
		box-shadow: none;
		margin: 0;
		padding: 0;
	}

	.sidebar-nav .dropaco .dropdown-menu>li>a {
		text-align: left;
		padding: 8px 20px;
		background-color: rgba(0, 0, 0, 0.25);
		white-space: initial;
		color: #ffffff;
		font-size: 15px;
		font-family: 'Roboto Condensed', sans-serif;
		font-weight: 300;
	}
    
    .sidebar-nav .multi-level li.active a {
        background-color: rgba(0, 0, 0, 0.45);
    }
*/

	/* menu_desplegable */
    
    /* whatsapp */
    .floating-icons {
        bottom: 1rem;
        right: 1rem;
    }
    .videos_responsive{width: 100%;float: none}
    .marco-contacto{margin-top: 40px;}
    .botones_carro{width: 100%;margin-top: 20px}
    .otras_fotos .imagen{height: 100px;}
    .foto_principal .imagen {width: 100%}
    .zona_galeria_mini .bx-wrapper .bx-prev { display: none;}
    .zona_galeria_mini .bx-wrapper .bx-next { display: none;}


    .instagram-widget>div{position:relative; padding-top:calc(100vw / 3);}
    .instagram-widget iframe{width:200% !important;}
    .padre_imagen .imagen {background-size: contain;}
    .sidebar-wrapper.left .form-control {
        height: 43px;
        padding: 6px 12px;
        color: var(--secundario);
        font-style: italic;
        background-color: #ffffff;
        border: 1px solid var(--primario);
        border-radius: 4px;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }
    .sidebar-nav li a.favorito {
        border-right: 1px solid rgba(255, 255, 255, 0.3);
    }
    .caja_favorito, .caja_redes {
        width: 100%;
        display: inline-flex;
        justify-content: center;
        align-items: center;
        margin-top: 10px;
        flex-wrap: wrap;
    }
    .caja_favorito a,.caja_redes a{
        padding: 0 10px!important;
        margin: 10px 0!important;
    }
    .caja_acceso a{
        padding: 0 20px!important;
    }
    .caja_favorito a img{
        margin-left: 0!important;
    }
    .sidebar-wrapper li img,.caja_redes a img {
        height: 25px;
        transition: all .2s ease-in-out;
    }
    .sidebar-wrapper.left .sidebar-nav li:first-child {
        padding: 10px 20px;
        text-indent: 0px;
        padding-top: 25px;
    }
    .left .sidebar-nav .multi-level li:first-child{
        padding: 0;
    }
    .left .sidebar-nav .multi-level li:last-child a{
        text-indent: 0;
    }
    .left .sidebar-nav .multi-level li.active a{
        text-decoration: none;
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.30);
        font-weight: 400;
    }
    .quantity{width: 100%; display: flex; align-items: center; justify-content: space-between;}
    .quantity label{margin-bottom: 0;}
    
    .zona-mapa iframe {height: 350px;}
}
@media (max-width: 767px){ /* móviles */
    .marco-izq .col-xs-10{
        margin-left: 0px;
    }
    .filtros{
        height: 260px;
    }
    h3.categoria {
        text-align: center;
    }
    span.precio {
        font-size: 48px;
        font-family: var(--familia_fuente);
        font-weight: 400;
    }
    span.tachado {
        font-size: 24px;
        font-family: var(--familia_fuente);
        font-weight: 400;
    }
    .precios_estilos {
        text-align: center;
        width: 100%;
    }
    .otras_fotos{margin-bottom: 30px}
    .nav-botones>li{float: none;width: 100%;margin-bottom: 10px}
    .nav-botones>li>a{margin: 0;}
    .btn-pagination {
        padding: 6px 12px;
        font-size: 12px;
        margin: 0 7px;
        border: 1px solid;
    }
    h3{
        font-size: 20px;
    }
    .proyecto .imagen {
        background-size: cover;
    }

    .instagram-widget>div{position:relative; padding-top:calc(100vw / 2);}
    .instagram-widget iframe{width:300% !important;}
}

.tpl-0{
	/* --- NAVBAR --- */
	* {
	    --tipografia: var(--font-1);
	    --tipografia-2: var(--font-2);
	    --color-tipografia-menu: var(--color-2);
	
	    --color-degradado: var(--color-2);
	    --color-texto-superior: var(--color-3);
	
	    --color-menu-movil: var(--color-2);
	    --color-hover-movil: var(--color-6);
	    --color-boton-movil: var(--color-2);
	}
	
	.navbar {
	    padding: 12px 0;
	    height: 144px;
	    font-family: var(--tipografia);
	    font-size: 18px;
	    transition: all 0.4s ease;
	}
	
	.cabecera-escritorio {
	    height: auto;
	    min-height: 142px;
	    padding: 0 0 18px;
	    flex-direction: column;
	    align-items: stretch;
	    background-color: transparent !important;
	    background-image: linear-gradient(180deg, var(--color-degradado) 0%, color-mix(in srgb, var(--color-degradado) 0%, transparent) 100%) !important;
	    background-repeat: no-repeat !important;
	    background-position: top center !important;
	    background-size: 100% 100% !important;
	    transition: min-height 0.4s ease, padding 0.4s ease, background-size 0.45s ease;
	}
	
	/* La cabecera inicial queda sobre el banner, pero se desplaza con la página. */
	.cabecera-inicial {
	    position: absolute;
	    top: 0;
	    right: 0;
	    left: 0;
	    z-index: 10;
	}
	
	/* Cabecera sencilla que aparece una vez superado el banner. */
	.cabecera-compacta {
	    position: fixed;
	    top: 0;
	    right: 0;
	    left: 0;
	    z-index: 1030;
	    align-items: flex-start;
	    justify-content: space-between;
	    font-family: var(--tipografia);
	    opacity: 0;
	    visibility: hidden;
	    transform: translateY(-100%);
	    pointer-events: none;
	    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
	}
	
	.cabecera-compacta.visible {
	    opacity: 1;
	    visibility: visible;
	    transform: translateY(0);
	    pointer-events: auto;
	    background-color: #fff;
	    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.14);
	}
	
	@media (min-width: 1200px) {
	    .cabecera-compacta.visible {
	        display: flex !important;
	    }
	}
	
	.cabecera-compacta__logo {
	    flex: 0 0 110px;
	    width: 110px;
	    height: 80px;
	    padding: 15px;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    /* background: #fff;
	    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.14); */
	}
	
	.cabecera-compacta__logo img {
	    display: block;
	    width: 100%;
	    height: 100%;
	    object-fit: contain;
	}
	
	.cabecera-compacta__menu {
	    min-height: 80px;
	    margin-left: auto;
	    padding: 10px 35px;
	    display: flex;
	    align-items: center;
	    /* background: #fff;
	    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.14); */
	}
	
	.cabecera-compacta__menu .navbar-nav {
	    display: flex;
	    flex-direction: row;
	    align-items: center;
	}
	
	.cabecera-compacta__menu .nav-link {
	    margin: 0 12px;
	    font-size: 16px;
	}
	
	.cabecera-compacta__menu .nav-link::before {
	    content: "";
	    position: absolute;
	    z-index: -1;
	    inset: 50% auto auto 50%;
	    width: calc(100% + 18px);
	    height: calc(100% + 28px);
	    background-image: var(--bg);
	    background-repeat: no-repeat;
	    background-position: center;
	    background-size: contain;
	    transform: translate(-50%, -50%) scaleX(0);
	    transform-origin: center;
	    transition: transform 0.3s ease;
	    pointer-events: none;
	}
	
	.cabecera-compacta__menu .dropdown-menu .nav-link::before {
	    content: none;
	}
	
	.cabecera-compacta__menu .dropdown-menu li:hover {
	    background-color: var(--color-hover-movil);
	}
	
	.cabecera-compacta__menu .nav-link:hover::before,
	.cabecera-compacta__menu .nav-link.active::before,
	.cabecera-compacta__menu .dropaco.active > .nav-link::before {
	    transform: translate(-50%, -50%) scaleX(1);
	}
	
	.cabecera-escritorio .contenedor-superior {
	    width: 100%;
	    padding: 12px 40px 10px;
	    background: transparent;
	    max-height: 160px;
	    overflow: hidden;
	    opacity: 1;
	    transform: translateY(0);
	    transition: max-height 0.4s ease, padding 0.4s ease, opacity 0.3s ease, transform 0.4s ease;
	}
	
	.cabecera-escritorio .contenedor-superior ul {
	    display: flex;
	    justify-content: flex-end;
	    align-items: center;
	    flex-wrap: wrap;
	    gap: 10px 26px;
	    list-style: none;
	    margin: 0;
	    padding: 0;
	}
	
	.cabecera-escritorio .contenedor-superior li {
	    display: flex;
	    align-items: center;
	}
	
	.cabecera-escritorio .contenedor-superior a {
	    font-family: var(--tipografia-2);
	    display: inline-flex;
	    align-items: center;
	    gap: 8px;
	    color: var(--color-texto-superior);
	    font-size: 16px;
	    font-weight: 500;
	    line-height: 1.2;
	    text-decoration: none;
	    white-space: nowrap;
	}
	
	.cabecera-escritorio .contenedor-superior img {
	    width: 22px;
	    height: 22px;
	    object-fit: contain;
	}
	
	.cabecera-escritorio .container-fluid {
	    width: 100%;
	    display: flex;
	    align-items: center;
	    justify-content: space-between;
	    gap: 25px;
	    padding: 0 !important;
	}
	
	.cabecera-escritorio .contenedor-logo,
	.cabecera-escritorio .contenedor-menu {
	    min-height: 90px;
	    display: flex;
	    align-items: center;
	    background: #fff;
	    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
	    transition: min-height 0.4s ease, padding 0.4s ease, box-shadow 0.3s ease;
	}
	
	.cabecera-escritorio .contenedor-logo {
	    flex: 0 0 360px;
	    justify-content: flex-end;
	    padding: 35px 50px 35px 40px;
	    border-radius: 0 9999px 9999px 0;
	}
	
	.cabecera-escritorio .contenedor-menu {
	    flex: 1 1 auto;
	    min-height: 160px;
	    justify-content: flex-end;
	    padding: 10px 40px 10px 34px;
	    border-radius: 9999px 0 0 9999px;
	}
	
	.cabecera-escritorio .navbar-brand {
	    display: inline-flex;
	    align-items: center;
	    max-width: 100%;
	    margin: 0;
	    padding: 0;
	}
	
	.cabecera-escritorio .main-logo {
	    display: block;
	    width: auto;
	    max-width: 100%;
	    height: 90px;
	    max-height: 90px;
	    object-fit: contain;
	}
	
	.cabecera-escritorio .navbar-collapse {
	    display: flex !important;
	    justify-content: flex-end;
	}
	
	.cabecera-escritorio .navbar-nav {
	    justify-content: flex-end;
	    width: 100%;
	}
	
	
	.dropdown-submenu {
	    position: relative;
	}
	
	.dropdown-submenu>.dropdown-menu {
	    top: 0;
	    left: 100%;
	    margin-top: -6px;
	    margin-left: -1px;
	    -webkit-border-radius: 0 6px 6px 6px;
	    -moz-border-radius: 0 6px 6px;
	    border-radius: 0 6px 6px 6px;
	}
	
	.dropdown-submenu:hover>.dropdown-menu {
	    display: block;
	}
	
	.dropdown-submenu>a:after {
	    display: block;
	    content: " ";
	    float: right;
	    width: 0;
	    height: 0;
	    border-color: transparent;
	    border-style: solid;
	    border-width: 5px 0 5px 5px;
	    border-left-color: #ccc;
	    margin-top: 5px;
	    margin-right: -10px;
	}
	
	.dropdown-submenu:hover>a:after {
	    border-left-color: #fff;
	}
	
	.dropdown-submenu.pull-left {
	    float: none;
	}
	
	.dropdown-submenu.pull-left>.dropdown-menu {
	    left: -100%;
	    margin-left: 10px;
	    -webkit-border-radius: 6px 0 6px 6px;
	    -moz-border-radius: 6px 0 6px 6px;
	    border-radius: 6px 0 6px 6px;
	}
	
	.main-logo {
	    width: auto;
	    max-width: 100%;
	    height: auto;
	    margin-left: 0;
	    object-fit: contain;
	    transition: height 0.3s ease, max-height 0.3s ease, padding 0.3s ease;
	}
	
	.cabecera-escritorio.navbar-scrolled {
	    height: auto;
	    min-height: 115px;
	    /* padding-top: 25px; */
	    padding-bottom: 10px;
	    background-size: 100% 0% !important;
	}
	
	.cabecera-escritorio.navbar-scrolled .contenedor-superior {
	    max-height: 0;
	    padding-top: 0;
	    padding-bottom: 0;
	    opacity: 0;
	    transform: translateY(-100%);
	}
	
	.cabecera-escritorio.navbar-scrolled .contenedor-logo,
	.cabecera-escritorio.navbar-scrolled .contenedor-menu {
	    min-height: 115px;
	}
	
	.cabecera-escritorio.navbar-scrolled .contenedor-logo {
	    padding-top: 25px;
	    padding-bottom: 25px;
	}
	
	.cabecera-escritorio.navbar-scrolled .contenedor-menu {
	    padding-top: 25px;
	    padding-bottom: 25px;
	}
	
	.cabecera-escritorio.navbar-scrolled .main-logo {
	    width: auto;
	    height: 65px;
	    max-height: 65px;
	    padding: 0;
	}
	
	.nav-link {
	    position: relative;
	    isolation: isolate;
	    color: var(--color-tipografia-menu);
	    font-family: var(--font-1);
	    text-transform: uppercase;
	    font-weight: 600;
	    font-size: 18px;
	    transition: color 0.3s ease;
	    margin-left: 15px;
	    margin-right: 15px;
	}
	
	.cabecera-escritorio .nav-link::before {
	    content: "";
	    position: absolute;
	    z-index: -1;
	    inset: 50% auto auto 50%;
	    width: calc(100% + 30px);
	    height: calc(100% + 50px);
	    background-image: var(--bg);
	    background-repeat: no-repeat;
	    background-position: center;
	    background-size: contain;
	    transform: translate(-50%, -50%) scaleX(0);
	    transform-origin: center;
	    transition: transform 0.3s ease;
	    pointer-events: none;
	}
	
	.cabecera-escritorio .dropdown-menu .nav-link::before{
	    content: none;
	}
	
	.cabecera-escritorio .dropdown-menu li:hover{
	    background-color: var(--color-hover-movil);
	}
	
	.cabecera-escritorio .nav-link:hover::before,
	.cabecera-escritorio .nav-link.active::before,
	.cabecera-escritorio .dropaco.active > .nav-link::before {
	    transform: translate(-50%, -50%) scaleX(1);
	}
	
	.nav-link:hover,
	.nav-link.active {
	    color: var(--color-tipografia-menu-hover) !important;
	}
	
	header:has(.mobile-offcanvas.showing) .navbar-toggler,
	header:has(.mobile-offcanvas.show) .navbar-toggler {
	    background-color: var(--color-boton-movil);
	}
	
	@media (min-width: 1200px) and (max-width: 1350px) {
	    .navbar-expand-lg .navbar-nav .nav-link {
	        padding-left: 0px !important;
	        padding-right: 0px !important;
	    }
	
	    .cabecera-escritorio .contenedor-logo {
	        flex-basis: 230px;
	        padding-left: 24px;
	        padding-right: 26px;
	    }
	
	    .cabecera-escritorio .contenedor-menu {
	        padding-left: 28px;
	        padding-right: 24px;
	    }
	
	
	    .nav-link {
	        font-size: 16px;
	        margin-left: 9px;
	        margin-right: 9px;
	    }
	
	    .btn-reserve {
	        padding: 0px 30px;
	        font-size: 16px;
	    }
	}
	
	@media (min-width:1200px) {
	    .custom-dropdown {
	        border: none;
	        border-radius: 20px;
	        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.114);
	        padding: 15px 0;
	        text-align: center;
	        min-width: 190px;
	        margin-top: 10px !important;
	        font-family: var(--tipografia_sans) !important;
	    }
	
	    .dropdown-item {
	        color: var(--color-tipografia-menu-hover) !important;
	        font-weight: 500 !important;
	        font-size: 18px !important;
	        padding: 12px 25px !important;
	        background: transparent !important;
	        font-family: var(--tipografia_sans) !important;
	        text-transform: none !important;
	        text-align: left;
	    }
	
	    .dropdown-item:hover {
	        color: var(--color-tipografia-menu) !important;
	    }
	}
	
	
	@media (max-width: 1200px) {
	    nav.navbar .container-fluid{
	padding-left: 0px !important;
	    padding-right: 0px !important;
	    }
	
	    .ul_idiomas,
	    .idiomas {
	        margin-top: 20px !important;
	    }
	
	    .ul_idiomas {
	        position: absolute !important;
	        border: none !important;
	        border-radius: 20px !important;
	        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.114) !important;
	        text-align: center !important;
	        min-width: 190px;
	        margin-top: 10px !important;
	        font-family: var(--tipografia_sans) !important;
	    }
	
	    .ul_idiomas>li>a {
	        color: var(--color-tipografia-menu-hover) !important;
	        font-weight: 500 !important;
	        font-size: 18px !important;
	        padding: 12px 5px !important;
	        background: transparent !important;
	        font-family: var(--tipografia_sans) !important;
	        text-transform: none !important;
	    }
	
	    .mobile-offcanvas .gap-2,
	    .navbar-collapse .gap-2 {
	        gap: 0 !important;
	    }
	
	    .lang-pill-container {
	        width: fit-content;
	        margin: 0 auto
	    }
	
	    .navbar-nav .nav-link:hover,
	    .navbar-nav .nav-link.active {
	        background-color: var(--color-hover-movil);
	        color: var(--primario) !important;
	    }
	
	    .navbar-nav .nav-link:hover .movil_movil .st0,
	    .navbar-nav .nav-link.active .movil_movil .st0 {
	        fill: var(--primario) !important;
	    }
	
	    .navbar-nav .nav-link:hover .movil_movil .st0,
	    .navbar-nav .nav-link.active .movil_movil .st0 {
	        fill: var(--primario) !important;
	    }
	
	    .navbar-expand-lg .navbar-toggler {
	        display: block !important;
	    }
	
	    .navbar-expand-lg .navbar-nav {
	        flex-direction: column;
	        width: 100%;
	        top: 0;
	        position: relative;
	        height: 100%;
	    }
	
	    /* contenido interno visible inmediatamente */
	    .mobile-offcanvas .navbar-nav,
	    .navbar-collapse .navbar-nav {
	        opacity: 1;
	        transition: none;
	    }
	
	    /* --- 2. NAVBAR Y LOGO EN LA ESQUINA --- */
	    .navbar {
	        height: 52px !important;
	        padding: 5px 15px !important;
	        justify-content: flex-end;
	    }
	
	    .navbar.d-xl-none {
	        z-index: 1046 !important;
	    }
	
	    .mobile-menu-backdrop {
	        position: fixed;
	        inset: 0;
	        background-color: rgba(0, 0, 0, 0.5);
	        z-index: 1040;
	        border: 0;
	        padding: 0;
	        opacity: 0;
	        visibility: hidden;
	        pointer-events: none;
	        transition: opacity 0.3s ease, visibility 0.3s ease;
	    }
	
	    header:has(.mobile-offcanvas.showing) .mobile-menu-backdrop,
	    header:has(.mobile-offcanvas.show) .mobile-menu-backdrop {
	        opacity: 1;
	        visibility: visible;
	        pointer-events: auto;
	    }
	
	    .forma_logo {
	        position: absolute;
	        height: 80px;
	        margin-left: -20px;
	        margin-top: -10px;
	    }
	
	    .main-logo {
	        height: 30px !important;
	        margin-left: 0;
	        margin-top: 4px;
	        z-index: 1;
	        position: relative;
	    }
	
	    .navbar-toggler {
	        position: absolute;
	        top: 15px;
	        right: 15px;
	        z-index: 2000 !important;
	        margin-left: 0;
	    }
	
	    .fixed-top {
	        position: fixed !important;
	    }
	
	    .navbar-toggler {
	        background-color: var(--primario);
	        right: 0;
	        width: 52px;
	        height: 52px;
	        top: 0;
	        margin-right: 0 !important;
	        border-radius: 0px;
	    }
	
	    .navbar-toggler {
	        /* cursor: default; */
	        box-shadow: none !important;
	    }
	
	    .navbar-toggler:hover {
	        text-decoration: none;
	        box-shadow: none !important;
	    }
	
	    .navbar-toggler {
	        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='white' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
	    }
	
	    /* --- 3. MENÚ LATERAL Y DROPDOWNS --- */
	    .mobile-offcanvas {
	        position: fixed;
	        top: 52px;
	        right: 0;
	        width: 300px !important;
	        max-width: 100vw;
	        min-height: calc(100vh - 52px);
	        height: calc(100vh - 52px);
	        background: var(--color-menu-movil) !important;
	        display: block !important;
	        margin: 0 !important;
	        padding: 10px 0px 0px 0px !important;
	        border-left: 3px solid var(--color-yellow);
	        overflow-y: auto;
	        padding-top: 0;
	        z-index: 1045;
	        transition: transform 0.3s ease-in-out;
	    }
	
	    .mobile-offcanvas .offcanvas-body {
	        overflow-y: visible;
	        padding: 0 !important;
	    }
	
	    .navbar-nav .nav-link {
	        color: #fff !important;
	        display: block;
	        text-indent: 20px;
	        font-size: 18px;
	        font-weight: 400;
	        padding: 20px 10px !important;
	        overflow: hidden;
	        white-space: nowrap;
	        text-overflow: ellipsis;
	        text-align: left;
	        transition: all .2s ease-in-out;
	        border-bottom: 1px solid rgba(255, 255, 255, 0.4);
	        height: auto;
	    }
	
	    .navbar-nav .nav-link::before {
	        display: none !important;
	    }
	
	    .mobile-offcanvas .dropdown-menu,
	    .navbar-collapse .dropdown-menu {
	        position: static;
	        float: none;
	        width: 100%;
	        border: none;
	        box-shadow: none;
	        padding: 0;
	        margin: 0;
	        border-radius: 0;
	        /* top: 0; */
	        top: 50px;
	        height: auto;
	        background: #fbfbfb;
	        margin: 0;
	    }
	
	    .mobile-offcanvas .dropdown-menu>li>a,
	    .navbar-collapse .dropdown-menu>li>a {
	        display: block;
	        padding: 15px 0 !important;
	        border-bottom: 1px solid #eeeeee30;
	        color: #585858;
	        margin-left: 0px !important;
	        margin-right: 0px !important;
	        font-family: var(--tipografia_sans);
	        text-transform: none;
	    }
	
	    .mobile-offcanvas .navbar-nav>li:not(:last-child)>.nav-link,
	    .navbar-collapse .navbar-nav>li:not(:last-child)>.nav-link {
	        display: block !important;
	        padding: 15px 0 !important;
	        border-bottom: 1px solid #eeeeee30;
	        color: #585858;
	        margin-left: 0px !important;
	        margin-right: 0px !important;
	    }
	
	    .mobile-offcanvas .navbar-nav>li:last-child>.nav-link,
	    .navbar-collapse .navbar-nav>li:last-child>.nav-link {
	        border-bottom: 1px solid transparent !important;
	    }
	
	    .dropaco {
	        width: 100%;
	    }
	
	    .btn-reserve {
	        margin-top: 20px;
	    }
	
	    .li_telefono {
	        width: 100%;
	    }
	
	    .telefono_menu_lateral {
	        display: block;
	        padding: 20px;
	        /*color: #585858 !important; */
	        margin: 25px 15px;
	        width: calc(100% - 30px);
	        font-size: 18px;
	        /* text-align: left; */
	        text-transform: uppercase;
	    }
	
	    .telefono_menu_lateral img {
	        width: 25px;
	        height: 25px;
	        transition: all 300ms ease;
	    }
	
	    .telefono_menu_lateral:hover img{
	        filter: brightness(0);
	    }
	}

}

.tpl-1{
	/* --- HERO SECTION & CAROUSEL --- */
	* {
	    --tipografia: var(--font-1);
	
	    --color-boton-1: var(--color-4);
	    --color-texto-boton-1: var(--color-2);
	    --color-boton-2: var(--color-1);
	    --color-texto-boton-2: #fff;
	
	}
	
	.hero-carousel-container {
	    position: relative;
	    height: 100dvh;
	    width: 100%;
	    overflow: hidden;
	}
	
	.hero-carousel-container .mouse-banner {
	    width: 35px;
	    height: 35px;
	}
	
	.hero-carousel-container .carousel,
	.hero-carousel-container .carousel-inner,
	.hero-carousel-container .carousel-fade .carousel-item {
	    height: 100%;
	}
	
	.hero-slide-content {
	    height: 100%;
	    background-size: cover;
	    background-position: center;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    position: relative;
	    font-family: var(--tipografia);
	}
	
	/* Overlay */
	.hero-slide-content::after {
	    content: "";
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    background: rgba(0, 0, 0, 0.35);
	    z-index: 1;
	}
	
	.hero-title {
	    color: white;
	    font-size: 80px;
	    font-weight: 700;
	    position: relative;
	    text-align: center;
	    z-index: 2;
	    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
	    margin-bottom: 30px;
	}
	
	/* --- BOTONES HERO--- */
	.hero-static-buttons {
	    position: relative;
	    z-index: 2;
	}
	
	.container {
	    position: relative;
	    top: -30px;
	}
	
	.carousel-fade .carousel-item {
	    transition-duration: 0.4s;
	}
	
	.banner-video {
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    overflow: hidden;
	}
	
	.banner-video video {
	    position: absolute;
	    top: 50%;
	    left: 50%;
	    width: 100%;
	    height: 100%;
	    object-fit: cover;
	    transform: translate(-50%, -50%);
	    aspect-ratio: 16/9;
	}
	
	.banner-video .container {
	    position: absolute;
	    top: 50%;
	    left: 50%;
	    transform: translate(-50%, -50%);
	    width: 100%;
	}
	
	/* --- RATÓN HERO SECTION--- */
	.mouse-container {
	    width: 45px;
	    height: 45px;
	    border-radius: 100%;
	    left: calc(50% - 20px);
	    bottom: 15px;
	    z-index: 2;
	    cursor: pointer;
	}
	
	.mouse-container .mouse {
	    width: 100%;
	    padding: 0;
	    transition: transform 0.3s;
	    animation: bounce 1.5s infinite;
	}
	
	.wow {
	    opacity: 1 !important;
	}
	
	.barra-banner{
	    position: absolute;
	    bottom: -1px;
	    left: 0;
	    width: 100%;
	    height: 64px;
	    background: #ffffff;
	    background: linear-gradient(-90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	    z-index: 1;
	}
	
	@keyframes bounce {
	    0% {
	        transform: scale(1) translateY(0);
	    }
	
	    20% {
	        transform: scale(1.1, 0.9) translateY(0);
	    }
	
	    40% {
	        transform: scale(0.9, 1.1) translateY(-10px);
	    }
	
	    60% {
	        transform: scale(1.05, 0.95) translateY(0);
	    }
	
	    80% {
	        transform: scale(0.95, 1.05) translateY(-5px);
	    }
	
	    100% {
	        transform: scale(1) translateY(0);
	    }
	}
	
	@media (max-width: 1200px) {
	    .hero-carousel-container {
	        height: 100dvh;
	    }
	}
	
	@media (max-width: 992px) {
	
	    /* Hero Carousel */
	    .hero-slide-content {
	        height: 100vh;
	        padding-top: 60px;
	    }
	
	    .hero-title {
	        font-size: 45px !important;
	        margin-bottom: 40px !important;
	        width: 90%;
	        margin-left: auto;
	        margin-right: auto;
	        text-align: center;
	    }
	
	    .hero-static-buttons {
	        flex-direction: column;
	        bottom: 25%;
	        width: fit-content;
	        gap: 15px;
	        display: flex;
	        margin: 0 auto;
	        margin: 0 auto
	    }
	
	    .btn-hero {
	        width: 100%;
	        padding: 0px 15px;
	    }
	}
}

.tpl-5{
	* {
	  --tipografia: var(--font-1);
	
	  --color-antetitulo: var(--color-1);
	  --color-titulo: var(--color-2);
	
	  --color-franja: var(--color-2);
	}
	
	.custom-container {
	  width: 80%;
	  margin: 0 auto;
	}
	
	.cont-destacados {
	  overflow-x: hidden;
	}
	
	.bloque-destacados .antetitulo {
	  color: var(--color-antetitulo);
	  font-size: 22px;
	  font-weight: 500;
	  font-family: var(--tipografia);
	  text-align: center;
	}
	
	.bloque-destacados .titulo {
	  color: var(--color-titulo);
	  font-weight: 700;
	  font-size: 60px;
	  font-family: var(--tipografia);
	  margin-bottom: 50px;
	  text-align: center;
	}
	
	.card {
	  border-radius: 12px;
	  font-size: 14px;
	  border: none;
	  overflow: visible;
	}
	
	.card:hover .card-img img {
	  transform: scale(1.1);
	}
	
	.card-img {
	  position: relative;
	  width: 100%;
	  aspect-ratio: 3 / 4;
	  height: auto;
	  margin: 0 auto;
	  border-radius: 25px;
	  overflow: hidden;
	}
	
	
	.card-img img {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  border-radius: 25px;
	  transition: all 300ms ease;
	  will-change: transform;
	}
	
	.card-img::after {
	  content: "";
	  position: absolute;
	  left: 0;
	  right: 0;
	  bottom: 0;
	  height: 15%;
	  z-index: 1;
	  background-color: var(--color-franja);
	  opacity: 0.3;
	  pointer-events: none;
	}
	
	.card h3 {
	  position: absolute;
	  left: 18px;
	  right: 18px;
	  bottom: 18px;
	  z-index: 2;
	  margin: 0;
	  color: #fff;
	  font-size: 32px;
	  font-weight: 400;
	  text-align: center;
	  font-family: var(--tipografia);
	  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
	}
	
	.card p {
	  color: #666;
	  font-size: 14px;
	  margin: 0;
	  text-align: center;
	  font-family: var(--tipografia);
	}
	
	.splide__arrows {
	  position: absolute;
	  inset: 0;
	  z-index: 3;
	  pointer-events: none;
	}
	
	.splide__arrow{
	  width: 75px;
	  height: 75px;
	  top: 50%;
	  transform: translateY(-50%);
	  background: transparent;
	  opacity: 1;
	  z-index: 3;
	  pointer-events: auto;
	}
	
	.splide__arrow--prev {
	  left: calc(5.5vw - 37.5px);
	  right: auto;
	}
	
	.splide__arrow--next {
	  left: auto;
	  right: calc(5.5vw - 37.5px);
	}
	
	.carrusel-flecha-icono {
	  position: relative;
	  display: grid;
	  place-items: center;
	  width: 75px;
	  height: 75px;
	}
	
	.carrusel-flecha-icono-fondo {
	  position: absolute;
	  inset: 0;
	  width: 100%;
	  height: 100%;
	  object-fit: contain;
	}
	
	.carrusel-flecha-icono-centro {
	  position: relative;
	  z-index: 1;
	  width: 25px;
	  height: 25px;
	  object-fit: contain;
	}
	
	.splide__arrow--next .carrusel-flecha-icono-centro {
	  transform: rotate(180deg);
	}
	
	.splide__arrow svg {
	  display: none;
	}
	
	#destacados {
	  margin-bottom: 40px;
	}
	
	.splide {
	  visibility: visible !important;
	}
	
	.carrusel-destacados {
	  position: relative;
	  width: 100vw;
	  margin-left: calc(50% - 50vw);
	  margin-right: calc(50% - 50vw);
	}
	
	.carrusel-destacados::before,
	.carrusel-destacados::after {
	  content: "";
	  position: absolute;
	  top: 0;
	  bottom: 0;
	  width: 12.5vw;
	  pointer-events: none;
	  z-index: 2;
	}
	
	.carrusel-destacados::before {
	  left: 0;
	  background: linear-gradient(90deg, rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0.35));
	}
	
	.carrusel-destacados::after {
	  right: 0;
	  background: linear-gradient(270deg, rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0.35));
	}
	
	@media (max-width: 1200px){
	  .bloque-destacados h2 {
	    font-size: 27px;
	  }
	}
	
	@media (max-width: 992px){
	  .splide__arrows{
	    display: none;
	  }
	
	  .carrusel-destacados::before,
	  .carrusel-destacados::after {
	    width: 16.666vw;
	  }
	}
	
	@media (max-width: 768px){
	  .carrusel-destacados::before,
	  .carrusel-destacados::after {
	    width: 25vw;
	  }
	  .bloque-destacados .titulo{
	    font-size: 40px;
	  }
	
	  .card h3{
	    font-size: 20px;
	  }
	}
	
	@media (max-width: 430px) {
	  .destacados-mov {
	    display: block;
	    overflow-x: hidden !important;
	  }
	}

}

.tpl-9{
	* {
	  --tipografia: var(--font-1);
	  --tipografia-texto: var(--font-2);
	  --color-caja: var(--color-2);
	  --color-texto: var(--color-3);
	}
	
	.seccion-parallax-simple {
	  position: relative;
	  overflow: hidden;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  background-color: #0b1d35;
	  background-image: var(--bg, none);
	  background-attachment: fixed;
	  background-position: center;
	  background-repeat: no-repeat;
	  background-size: cover;
	}
	
	.barra-superior {
	  position: absolute;
	  top: -1px;
	  left: 0;
	  width: 100%;
	  height: 64px;
	  background: #ffffff;
	  background: linear-gradient(
	    90deg,
	    rgba(255, 255, 255, 1) 0%,
	    rgba(255, 255, 255, 0) 100%
	  );
	}
	
	.barra-inferior {
	  position: absolute;
	  bottom: -1px;
	  left: 0;
	  width: 100%;
	  height: 64px;
	  background: #ffffff;
	  background: linear-gradient(
	    -90deg,
	    rgba(255, 255, 255, 1) 0%,
	    rgba(255, 255, 255, 0) 100%
	  );
	}
	
	.seccion-parallax-simple .custom-container {
	  position: relative;
	  z-index: 1;
	  width: 100%;
	}
	
	.parallax-simple-inner {
	  display: flex;
	  justify-content: center;
	}
	
	.parallax-simple-card {
	  position: relative;
	  overflow: hidden;
	  padding: 100px 100px 120px 100px;
	  text-align: center;
	  isolation: isolate;
	}
	
	.parallax-simple-card::before {
	  content: "";
	  position: absolute;
	  inset: 0;
	  z-index: -1;
	  background-color: var(--color-caja);
	  opacity: 0.95;
	  border-radius: 40px;
	}
	
	.titulo-parallax-simple {
	  margin: 0;
	  color: #fff;
	  font-family: var(--tipografia);
	  font-size: 55px;
	  font-weight: 800;
	}
	
	.texto-parallax-simple {
	  margin: 22px auto 0;
	  color: var(--color-texto);
	  font-family: var(--tipografia-texto);
	  font-size: 18px;
	  line-height: 1.7;
	}
	
	.texto-parallax-simple p:last-child {
	  margin-bottom: 0;
	}
	
	.parallax-simple-card .btn {
	  margin-top: 32px;
	}
	
	@media (max-width: 991.98px) {
	  .seccion-parallax-simple {
	    background-attachment: scroll;
	  }
	
	  .parallax-simple-card {
	    padding: 44px 32px;
	  }
	
	  .titulo-parallax-simple {
	    font-size: 40px;
	  }
	}
	
	@media (max-width: 575.98px) {
	  .parallax-simple-card {
	    padding: 36px 22px;
	  }
	
	  .titulo-parallax-simple {
	    font-size: 32px;
	  }
	
	  .texto-parallax-simple {
	    font-size: 16px;
	  }
	
	  .parallax-simple-card .btn {
	    width: 100%;
	    margin-right: 0 !important;
	  }
	}

}

.tpl-13{
	/* --- SECCIÓN INTRO --- */
	*{
	    --tipografia: var(--font-1);
	    --tipografia-texto: var(--font-2);
	    
	    --color-antetitulo: var(--color-1);
	    --color-titulo: var(--color-2);
	}
	
	.seccion-introduccion {
	    background-color: #ffffff;
	}
	
	.introduccion-antetitulo {
	    font-family: var(--tipografia);
	    color: var(--color-antetitulo);
	    font-size: 22px;
	    font-weight: 500;
	    margin-bottom: 0;
	}
	
	.introduccion-titulo {
	    font-family: var(--tipografia);
	    color: var(--color-titulo);
	    font-size: 55px;
	    font-weight: 700;
	    margin-bottom: 15px;
	}
	
	.introduccion-descripcion {
	    font-family: var(--tipografia-texto);
	    color: #585858;
	    font-size: 18px;
	    font-weight: 500;
	}
	
	.introduccion-marco-imagen {
	    position: relative;
	    width: 100%;
	    overflow: hidden;
	}
	
	.introduccion-foto {
	    position: absolute;
	    inset: 0;
	    width: 100%;
	    height: 100%;
	    object-fit: cover;
	}
	
	.introduccion-forma {
	    position: relative;
	    display: block;
	    width: 100%;
	    height: auto;
	}
	
	@media (max-width: 992px){
	    /* Seccion Intro */
	    .seccion-introduccion .columna {
	        text-align: center !important;
	        display: flex;
	        flex-direction: column;
	        align-items: center;
	    }
	
	    .seccion-introduccion .introduccion-antetitulo {
	        font-size: 20px;
	        margin-top: 20px;
	    }
	
	    .seccion-introduccion .introduccion-titulo {
	        font-size: 40px !important;
	    }
	
	    .seccion-introduccion .introduccion-descripcion {
	        margin-left: auto !important;
	        margin-right: auto !important;
	    }
	
	    .seccion-introduccion .mt-4 {
	        width: 100%;
	        display: flex;
	        justify-content: center;
	    }
	
	    .seccion-introduccion .container .row{
	        flex-direction: column-reverse;
	    }
	
	    .introduccion-marco-imagen{
	        margin-bottom: 40px;
	    }
	}

}

.tpl-17{
	.container{
	    text-align: center;
	}
}

.tpl-20{
	/* --- MODAL --- */
	* {
	    --tipografia: var(--font-1);
	
	
	    --color-fondo: var(--color-6);
	    --color-borde: var(--color-2);
	    --color-texto-boton-1: var(--color-2);
	    --color-boton-2: var(--color-1);
	    --color-texto-boton-2: #fff;
	
	}
	
	    .modal-reserva .modal-dialog {
	        max-width: 720px;
	        margin-right: auto;
	        margin-left: auto;
	    }
	
	    .modal-reserva .modal-content {
	        position: relative;
	        max-height: calc(100vh - 48px);
	        overflow-y: auto;
	        background: var(--color-fondo);
	        border: 1px solid var(--color-borde);
	        border-radius: 50px;
	        padding: 40px !important;
	        box-shadow: 0 24px 80px rgba(0, 0, 0, 0.3);
	    }
	
	    .modal-reserva .flex-column {
	        gap: 10px;
	        width: 100%;
	    }
	
	    .modal-reserva__titulo {
	        margin: 0;
	        padding-right: 48px;
	        color: var(--color-texto-boton-1);
	        font-family: var(--tipografia);
	        font-size: 32px;
	        font-weight: 700;
	        line-height: 1.15;
	    }
	
	    .modal-reserva__texto {
	        margin: 0 0 14px;
	        color: var(--color-texto-boton-1);
	        font-family: var(--tipografia);
	        font-size: 16px;
	        line-height: 1.5;
	    }
	
	    .modal-reserva__form {
	        display: flex;
	        flex-direction: column;
	        gap: 16px;
	        width: 100%;
	    }
	
	    .modal-reserva__campo {
	        display: flex;
	        flex-direction: column;
	        gap: 7px;
	    }
	
	    .modal-reserva__campo label {
	        margin: 0;
	        color: var(--color-texto-boton-1);
	        font-family: var(--tipografia);
	        font-size: 15px;
	        font-weight: 600;
	        line-height: 1.25;
	    }
	
	    .modal-reserva__campo label span {
	        font-weight: 400;
	        opacity: 0.75;
	    }
	
	    .modal-reserva__campo input,
	    .modal-reserva__campo textarea {
	        width: 100%;
	        border: 1px solid var(--color-borde);
	        border-radius: 14px;
	        background: #fff;
	        color: var(--color-texto-boton-1);
	        font-family: var(--tipografia);
	        font-size: 16px;
	        line-height: 1.4;
	        padding: 13px 16px;
	        outline: none;
	        transition: border-color 0.2s ease, box-shadow 0.2s ease;
	    }
	
	    .modal-reserva__campo textarea {
	        min-height: 130px;
	        resize: vertical;
	    }
	
	    .modal-reserva__campo input:focus,
	    .modal-reserva__campo textarea:focus {
	        border-color: var(--color-boton-2);
	        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
	    }
	
	    .modal-reserva__boton {
	        align-self: flex-start;
	        border: 0;
	        border-radius: 999px;
	        background: var(--color-boton-2);
	        color: var(--color-texto-boton-2);
	        cursor: pointer;
	        font-family: var(--tipografia);
	        font-size: 16px;
	        font-weight: 700;
	        line-height: 1;
	        margin-top: 4px;
	        padding: 15px 28px;
	        transition: opacity 0.2s ease, transform 0.2s ease;
	    }
	
	    .modal-reserva__boton:hover {
	        opacity: 0.88;
	        transform: translateY(-1px);
	    }
	
	    .modal-reserva__boton:focus-visible {
	        outline: 3px solid rgba(0, 0, 0, 0.2);
	        outline-offset: 3px;
	    }
	
	
	    .modal-reserva .boton_cerrar_modal {
	        position: absolute;
	        top: 18px;
	        right: 18px;
	        z-index: 2;
	        display: inline-flex;
	        align-items: center;
	        justify-content: center;
	        width: 44px;
	        height: 44px;
	        padding: 0;
	        border: 0;
	        background: transparent;
	        cursor: pointer;
	    }
	
	    .modal-reserva .boton_cerrar_modal img {
	        max-width: 100%;
	        height: auto;
	    }
	
	    @media (max-width: 767.98px) {
	        .modal-reserva .modal-dialog {
	            width: calc(100vw - 32px);
	            margin-right: auto;
	            margin-left: auto;
	        }
	
	        .modal-reserva .modal-content {
	            border-radius: 28px;
	            padding: 28px 20px !important;
	        }
	
	        .modal-reserva__titulo {
	            padding-right: 44px;
	            font-size: 25px;
	        }
	
	        .modal-reserva__texto {
	            font-size: 15px;
	        }
	
	        .modal-reserva__form {
	            gap: 14px;
	        }
	
	        .modal-reserva__campo input,
	        .modal-reserva__campo textarea {
	            border-radius: 12px;
	            font-size: 15px;
	            padding: 12px 14px;
	        }
	
	        .modal-reserva__boton {
	            width: 100%;
	            padding-right: 18px;
	            padding-left: 18px;
	        }
	
	
	        .modal-reserva .boton_cerrar_modal {
	            top: 14px;
	            right: 14px;
	        }
	    }

}

.tpl-22{
	/* --- FOOTER --- */
	*{
	    --tipografia: var(--font-1);
	    --tipografia-sans: var(--font-2);
	    --tipografia-poppins: var(--font-3);
	
	    --color-fondo: var(--color-1);
	    --color-segundo-fondo: var(--color-2);
	    --color-copy: var(--color-3);
	    --enlace-weblaspalmas: var(--color-4);
	}
	
	/* =========================
	   Footer
	========================= */
	
	footer.bg-primary{
	    position: relative;
	    background-color: var(--color-fondo) !important;
	    background-size: cover;
	    background-position: center;
	    background-repeat: no-repeat;
	    overflow: hidden;
	}
	
	footer.bg-primary::before{
	    content: "";
	    position: absolute;
	    inset: 0;
	    background-color: var(--color-fondo);
	    opacity: .85;
	    z-index: 0;
	    pointer-events: none;
	}
	
	footer.bg-primary > *{
	    position: relative;
	    z-index: 1;
	}
	
	footer .footer-main{
	    padding: 120px 0 110px;
	}
	
	footer .footer-main > .container{
	    position: relative;
	    z-index: 1;
	}
	
	footer .barra-footer{
	    position: absolute;
	    top: -1px;
	    left: 0;
	    width: 100%;
	    height: 20px;
	    background: #ffffff;
	background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	}
	
	footer .footer-logo-wrapper{
	    display: flex;
	    justify-content: center;
	    margin-bottom: 56px;
	}
	
	footer .logo{
	    width: min(300px, 80vw);
	    height: auto;
	}
	
	footer .footer-divisiones{
	    display: grid;
	    grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	
	footer .footer-division{
	    min-width: 0;
	    padding: 34px 32px;
	    display: flex;
	    flex-direction: column;
	    gap: 20px;
	    color: #fff;
	    border-left: 1px solid rgba(255, 255, 255, .30);
	}
	
	footer .footer-division:first-child{
	    border-left: 0;
	}
	
	footer .footer-telefonos-extra{
	    display: flex;
	    flex-direction: column;
	    gap: 20px;
	}
	
	footer .footer-extras{
	    min-width: 0;
	    padding: 34px 32px;
	    display: grid;
	    grid-template-columns: 1fr;
	    gap: 20px;
	    color: #fff;
	    border-left: 1px solid rgba(255, 255, 255, .30);
	}
	
	footer .footer-extra-col{
	    min-width: 0;
	    display: flex;
	    flex-direction: column;
	    gap: 20px;
	}
	
	footer .footer-contacto{
	    min-width: 0;
	    display: flex;
	    align-items: center;
	    gap: 12px;
	    color: #fff;
	}
	
	footer .footer-contacto a,
	footer .footer-contacto > span:not(.footer-icono){
	    min-width: 0;
	    color: #fff;
	    font-family: var(--tipografia-sans);
	    font-size: 20px;
	    font-weight: 600;
	    overflow-wrap: anywhere;
	}
	
	footer .footer-contacto a{
	    transition: opacity .2s ease;
	}
	
	footer .footer-contacto a:hover{
	    opacity: .75;
	}
	
	footer .footer-icono{
	    position: relative;
	    display: grid;
	    place-items: center;
	    width: 58px;
	    height: 58px;
	    flex: 0 0 58px;
	}
	
	footer .footer-icono-fondo{
	    position: absolute;
	    inset: 0;
	    width: 100%;
	    height: 100%;
	    object-fit: contain;
	}
	
	footer .footer-icono-centro{
	    position: relative;
	    z-index: 1;
	    width: 21px;
	    height: 21px;
	    object-fit: contain;
	}
	
	footer .cookies{
	    align-content: center;
	    text-align: center;
	}
	
	footer .copyright{
	    display: flex;
	    flex-wrap: wrap;
	    justify-content: center;
	    align-items: center;
	    text-align: center;
	    column-gap: 3rem !important;
	    row-gap: 2px !important;
	}
	
	footer .copyright p{
	    color: var(--color-copy);
	    font-size: 14px;
	    margin: 0;
	}
	
	.barra-footer-gruesa-transparente{
	    font-family: var(--tipografia-sans);
	    font-size: 16px;
	    font-weight: 400;
	    color: #fff;
	    border-top: 1px solid rgba(255, 255, 255, .30);
	    min-height: 75px;
	    width: 100%;
	    background-color: transparent;
	}
	
	.barra-footer-gruesa-oscura{
	    font-family: var(--tipografia-sans);
	    font-size: 12px;
	    font-weight: 400;
	    color: #fff;
	    min-height: 100px;
	    width: 100%;
	    background-color: var(--color-segundo-fondo);
	}
	
	.enlace,
	.barra-footer-gruesa-transparente a,
	.barra-footer-gruesa-oscura a{
	    text-decoration: none;
	    color: white;
	}
	
	.barra-footer-gruesa-oscura a{
	    color: var(--enlace-weblaspalmas);
	}
	
	.barra-footer-gruesa-transparente a:hover,
	.barra-footer-gruesa-oscura a:hover{
	    opacity: .7;
	}
	
	@media (max-width: 1200px){
	    footer .footer-main{
	        padding: 90px 0 80px;
	    }
	
	    footer .footer-logo-wrapper{
	        margin-bottom: 42px;
	    }
	
	    footer .footer-divisiones{
	        grid-template-columns: repeat(2, minmax(0, 1fr));
	    }
	
	    footer .footer-extras{
	        grid-column: 1 / -1;
	        border-top: 1px solid rgba(255, 255, 255, .30);
	        border-left: 0;
	    }
	
	    footer .footer-extras--doble{
	        grid-template-columns: repeat(2, minmax(0, 1fr));
	    }
	
	    footer .footer-extras--simple{
	        grid-template-columns: 1fr;
	        justify-items: center;
	    }
	}
	
	@media (max-width: 991px){
	    footer .footer-divisiones{
	        grid-template-columns: 1fr;
	        justify-items: center;
	    }
	
	    footer .footer-division,
	    footer .footer-extras{
	        width: fit-content;
	        max-width: 100%;
	        padding-left: 0;
	        padding-right: 0;
	        border-left: 0;
	        border-top: 1px solid rgba(255, 255, 255, .30);
	    }
	
	    footer .footer-division:first-child{
	        border-top: 0;
	    }
	
	    footer .footer-extras,
	    footer .footer-extras--doble,
	    footer .footer-extras--simple{
	        grid-template-columns: 1fr;
	        justify-content: center;
	    }
	
	    footer .footer-extra-col{
	        width: fit-content;
	        max-width: 100%;
	    }
	
	    footer .footer-contacto{
	        max-width: 100%;
	    }
	
	    footer .footer-extra-col{
	        margin-inline: auto;
	    }
	}
	
	@media (max-width: 768px){
	    footer .footer-main{
	        padding: 70px 0 64px;
	    }
	
	    footer .footer-division,
	    footer .footer-extras{
	        padding: 28px 0;
	    }
	
	    footer .footer-telefonos-extra{
	        flex-direction: column;
	    }
	}
	
	@media (max-width: 480px){
	    footer .logo{
	        width: min(240px, 78vw);
	    }
	
	    footer .footer-contacto{
	        align-items: flex-start;
	        gap: 10px;
	    }
	
	    footer .footer-icono{
	        width: 48px;
	        height: 48px;
	        flex-basis: 48px;
	    }
	
	    footer .footer-icono-centro{
	        width: 18px;
	        height: 18px;
	    }
	
	    footer .footer-contacto a,
	    footer .footer-contacto > span:not(.footer-icono){
	        font-size: 17px;
	    }
	
	    footer .cookies{
	        box-sizing: border-box;
	        height: auto;
	        min-height: 60px;
	        padding: 12px 15px;
	    }
	
	    footer .copyright{
	        height: auto;
	        min-height: 60px;
	        padding: 10px 15px;
	    }
	}

}

.tpl-24{
	/* Interior de contacto */
	.banner_interior{
	    width: 100%;
	    height: 500px;
	    background-size: cover;
	    overflow: hidden;
	    background-position: 0px 40%;
	}
	
	.corte_banner_interior{ 
	    width: 100%;
	    position: absolute;
	    bottom: -1px;
	    left: 0px;
	    z-index: 1;
	}
	
	.banner_interior .imagen{
	    width: 100%;
	    height: 100%;
	    background-position: center center;
	    background-size: cover;
	    background-repeat: no-repeat;
	    filter: blur(4px);
	}
	
	@media (max-width: 1200px){
	    .banner_interior {
	        height: 250px;
	    }
	}
	
	@media (max-width: 767px){
	    .banner_interior {
	        height: 200px;
	    }
	}
}

.tpl-25{
	/* Título y contenido */
	* {
	    --color-antetitulo: var(--color-1);
	    --color-titulo: var(--color-2);
	
	    --tipografia: var(--font-1);
	}
	
	.titulo{
	    font-family: var(--tipografia);
	    color: var(--color-titulo);
	    font-size: 55px;
	    font-weight: 700;
	    margin-bottom: 15px;
	}
	
	.antetitulo{
	    font-family: var(--tipografia);
	    color: var(--color-antetitulo);
	    font-size: 22px;
	    font-weight: 500;
	    margin-bottom: 0;
	}
}

.tpl-26{
	/* Formulario de contacto */
	*{
	    --principal: var(--primario);
	    --color-fondo: var(--transparencia);
	    --redondeo: var(--border-radius);
	}
	.marco-contacto {
	    background-color: var(--color-fondo);
	    padding: 20px;
	    border-radius: var(--redondeo);
	}
	
	.marco-contacto .input-group-addon {
	    background-color: var(--principal);
	    border-color: var(--principal);
	    color: #fff
	}
	
	.marco-contacto .form-control {
	    border-color: #c4d2e0;
	    border-radius: 30px;
	    padding-left: 30px;
	}
	
	.cuerpo_zone{
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}
	
	.marco-contacto label {
	    font-weight: 400;
	    margin-left: 11px;
	}
	
	.input-group .form-control {
	    z-index: 0;
	}
	
	.zona-mapa iframe {
	    height: 100%;
	    width: 100%;
	    border-radius: 55px;
	}
	
	.ocultorobots {
	    opacity: 0;
	    position: absolute;
	    top: 0px;
	    left: 0px;
	    width: 0px;
	    height: 0px;
	}
	
	@media (max-width: 992px){
	    .marco-contacto {
	        height: 100%;
	        margin-top: 40px;
	    }
	
	    .zona-mapa iframe{
	        height: 300px;
	    }
	}
}

.tpl-28{
	/* Interior de contacto */
	.banner_interior{
	    width: 100%;
	    height: 500px;
	    background-size: cover;
	    overflow: hidden;
	    background-position: 0px 40%;
	}
	
	.corte_banner_interior{ 
	    width: 100%;
	    position: absolute;
	    bottom: -1px;
	    left: 0px;
	    z-index: 1;
	}
	
	.banner_interior .imagen{
	    width: 100%;
	    height: 100%;
	    background-position: center center;
	    background-size: cover;
	    background-repeat: no-repeat;
	    filter: blur(4px);
	}
	
	.banner-interiores img.banner_interior_img{
	    width: 100%;
	    position: absolute;
	    bottom: 7px;
	    left: 0;
	    right: 0;
	    z-index: 3;
	    width: 100%;
	    min-width: 100%;
	    max-width: none;
	    height: 12px;
	    display: block;
	    object-fit: fill;
	    object-position: center center;
	    transform: none;
	}
	
	@media (max-width: 1200px){
	    .banner_interior {
	        height: 250px;
	    }
	}
	
	@media (max-width: 767px){
	    .banner_interior {
	        height: 200px;
	    }
	}
}

.tpl-29{
	/* Título y contenido */
	* {
	    --color-antetitulo: var(--color-1);
	    --color-titulo: var(--color-2);
	
	    --tipografia: var(--font-1);
	}
	
	.titulo{
	    font-family: var(--tipografia);
	    color: var(--color-titulo);
	    font-size: 55px;
	    font-weight: 700;
	    margin-bottom: 15px;
	}
	
	.antetitulo{
	    font-family: var(--tipografia);
	    color: var(--color-antetitulo);
	    font-size: 22px;
	    font-weight: 500;
	    margin-bottom: 0;
	}
}

.tpl-30{
	/* Apartados lista */
	* {
	    --principal: var(--primario);
	    --tipografia: var(--familia_fuente);
	    --fondo_transparente: var(--transparencia);
	}
	
	.apartados-lista .contenido_texto {
	    color: #666;
	}
	
	.apartados-lista .row {
	    row-gap: 30px;
	}
	
	.apartados-lista-nav {
	    padding: 0;
	    list-style: none;
	}
	
	.apartados-lista-tab,
	.apartados-lista-link {
	    display: inline-flex;
	    width: 100%;
	    padding: 10px 18px;
	    margin-bottom: 5px;
	    border: 0px transparent;
	    border-radius: 5px;
	    background: transparent;
	    color: var(--principal);
	    font-family: var(--tipografia);
	    text-decoration: none;
	}
	
	.apartados-lista-tab.active{
	    background: var(--principal) !important;
	    color: #fff;
	}
	
	
	.apartados-lista-tab:hover,
	.apartados-lista-link:hover{
	    background: #fafafa;
	}
	
	.apartados-lista-panel .detalle-apartado > .titulo {
	    margin-bottom: 25px;
	}
	
	@media (max-width: 992px) {
	    .apartados-lista-nav-col,
	    .apartados-lista-content-col {
	        flex: 0 0 100%;
	        max-width: 100%;
	    }
	
	    .apartados-lista-nav {
	        margin-bottom: 25px;
	    }
	}

}

.tpl-32{
	/* Interior de contacto */
	.banner_interior{
	    width: 100%;
	    height: 500px;
	    background-size: cover;
	    overflow: hidden;
	    background-position: 0px 40%;
	}
	
	.corte_banner_interior{ 
	    width: 100%;
	    position: absolute;
	    bottom: -1px;
	    left: 0px;
	    z-index: 1;
	}
	
	.banner_interior .imagen{
	    width: 100%;
	    height: 100%;
	    background-position: center center;
	    background-size: cover;
	    background-repeat: no-repeat;
	    filter: blur(4px);
	}
	
	.banner-interiores img.banner_interior_img{
	    width: 100%;
	    position: absolute;
	    bottom: 7px;
	    left: 0;
	    right: 0;
	    z-index: 3;
	    width: 100%;
	    min-width: 100%;
	    max-width: none;
	    height: 12px;
	    display: block;
	    object-fit: fill;
	    object-position: center center;
	    transform: none;
	}
	
	@media (max-width: 1200px){
	    .banner_interior {
	        height: 250px;
	    }
	}
	
	@media (max-width: 767px){
	    .banner_interior {
	        height: 200px;
	    }
	}
}

.tpl-33{
	/* Título y contenido */
	* {
	    --color-antetitulo: var(--color-1);
	    --color-titulo: var(--color-2);
	
	    --tipografia: var(--font-1);
	}
	
	.titulo{
	    font-family: var(--tipografia);
	    color: var(--color-titulo);
	    font-size: 55px;
	    font-weight: 700;
	    margin-bottom: 15px;
	}
	
	.antetitulo{
	    font-family: var(--tipografia);
	    color: var(--color-antetitulo);
	    font-size: 22px;
	    font-weight: 500;
	    margin-bottom: 0;
	}
}

.tpl-34{
	/* --- LISTA CUADRADA DE APARTADOS --- */
	* {
	    --tipografia-poppins: var(--font-poppins);
	    --principal: var(--primario);
	    --color-franja: var(--color-2);
	}
	
	.section-activities {
	    font-family: var(--tipografia-poppins);
	    padding: 110px 0 !important;
	}
	
	.apartados-lista-cuadrados {
	    padding-top: 0 !important;
	    padding-bottom: 55px !important;
	}
	
	.apartados-lista-cuadrados .activity-card {
	    position: relative;
	    display: block;
	    width: 100%;
	    aspect-ratio: 3 / 4;
	    border-radius: 25px;
	    overflow: hidden;
	    background: var(--principal);
	    text-decoration: none;
	}
	
	.apartados-lista-cuadrados .activity-img {
	    position: absolute;
	    inset: 0;
	    width: 100%;
	    height: 100%;
	    background-size: cover;
	    background-position: center;
	    transition: transform 300ms ease;
	    will-change: transform;
	}
	
	.apartados-lista-cuadrados .activity-card:hover .activity-img {
	    transform: scale(1.1);
	}
	
	.apartados-lista-cuadrados .activity-card::after {
	    content: "";
	    position: absolute;
	    left: 0;
	    right: 0;
	    bottom: 0;
	    height: 15%;
	    z-index: 1;
	    background-color: var(--color-franja);
	    opacity: 0.3;
	    pointer-events: none;
	}
	
	.apartados-lista-cuadrados .activity-card-title {
	    position: absolute;
	    left: 18px;
	    right: 18px;
	    bottom: 18px;
	    z-index: 2;
	    margin: 0;
	    color: #fff;
	    font-size: 32px;
	    font-weight: 400;
	    line-height: 1.15;
	    text-align: center;
	    font-family: var(--tipografia-poppins);
	    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
	}
	
	@media (max-width: 1200px) {
	    .apartados-lista-cuadrados .activity-card-title {
	        font-size: 28px;
	    }
	}
	
	@media (max-width: 768px) {
	    .section-activities {
	        padding: 70px 0 !important;
	    }
	
	    .apartados-lista-cuadrados .activity-card-title {
	        font-size: 35px;
	    }
	}

}

.tpl-37{
	/* Interior de contacto */
	.banner_interior{
	    width: 100%;
	    height: 500px;
	    background-size: cover;
	    overflow: hidden;
	    background-position: 0px 40%;
	}
	
	.corte_banner_interior{ 
	    width: 100%;
	    position: absolute;
	    bottom: -1px;
	    left: 0px;
	    z-index: 1;
	}
	
	.banner_interior .imagen{
	    width: 100%;
	    height: 100%;
	    background-position: center center;
	    background-size: cover;
	    background-repeat: no-repeat;
	    filter: blur(4px);
	}
	
	.banner-interiores img.banner_interior_img{
	    width: 100%;
	    position: absolute;
	    bottom: 7px;
	    left: 0;
	    right: 0;
	    z-index: 3;
	    width: 100%;
	    min-width: 100%;
	    max-width: none;
	    height: 12px;
	    display: block;
	    object-fit: fill;
	    object-position: center center;
	    transform: none;
	}
	
	@media (max-width: 1200px){
	    .banner_interior {
	        height: 250px;
	    }
	}
	
	@media (max-width: 767px){
	    .banner_interior {
	        height: 200px;
	    }
	}
}

.tpl-38{
	/* Título y contenido */
	* {
	    --color-antetitulo: var(--color-1);
	    --color-titulo: var(--color-2);
	
	    --tipografia: var(--font-1);
	}
	
	.titulo{
	    font-family: var(--tipografia);
	    color: var(--color-titulo);
	    font-size: 55px;
	    font-weight: 700;
	    margin-bottom: 15px;
	}
	
	.antetitulo{
	    font-family: var(--tipografia);
	    color: var(--color-antetitulo);
	    font-size: 22px;
	    font-weight: 500;
	    margin-bottom: 0;
	}
}

.tpl-39{
	/* Apartados detalle */
	* {
	    --efectos: var(--hover);
	}
	
	.padre-imagen-apartados {
	    width: 100%;
	}
	
	.imagen_apartados {
	    width: 100%;
	    margin: 30px 0;
	}
	
	.contenido_texto {
	    color: #666;
	}
	
	.contenido-apartados .textaco p {
	    line-height: 25px;
	    font-size: 16px;
	    color: #666;
	    text-align: left;
	}

}

.tpl-41{
	*{
	    --color-boton: var(--color-2);
	    --color-boton-hover: var(--color-1);
	}
	
	.btn-lg.btn-corporativo{
	    background-color: var(--color-boton);
	}
	
	.btn-lg.btn-corporativo:hover{
	    background-color: var(--color-boton-hover);
	}
}

.tpl-42{
	/* Bloques de apartados */
	* {
	    --principal: var(--color-2);
	    --secundario: var(--color-1);
	    --fondo: var(--color-6);
	    --fuente_interior: var(--font-1);
	    --redondeo-interiores: var(--border-radius-interiores);
	}
	
	
	.bloque_cabecera .bloque_titulo {
	    background-color: var(--principal);
	    padding: 15px 30px;
	    border-radius: var(--redondeo-interiores);
	    color: #fff;
	}
	
	.bloque_cabecera .bloque_titulo .titulo{
	    margin-bottom: 0;
	}
	
	.bloque_cabecera .bloque_interior {
	    background-color: var(--fondo);
	    padding: 15px 15px;
	    border-radius: var(--redondeo-interiores);
	    margin-top: 10px;
	}
	
	.bloque_cabecera .bloque_titulo h3 {
	    margin: 0;
	    color: #fff;
	    text-transform: uppercase;
	    font-family: var(--fuente_interior);
	    font-weight: 200
	}
	
	.bloque_cabecera .imagen {
	    width: 100%;
	    border-radius: 20px;
	}
	
	.bloque_cabecera h4 {
	    text-transform: uppercase;
	    font-size: 22px;
	    font-family: var(--fuente_interior);
	    color: var(--secundario);
	}
}

.tpl-43{
	/* Bloques de apartados */
	* {
	    --principal: var(--color-2);
	    --secundario: var(--color-1);
	    --fondo: var(--color-6);
	    --redondeo-interiores: var(--border-radius-interiores);
	}
	
	
	.bloque_desplegable .fondo {
	background-color: var(--fondo);
	padding: 20px;
	border-radius: var(--redondeo-interiores);
	}
	
	.bloque_desplegable .accordion {
	margin: 0
	}
	
	.blopque_desplegable .titulo_desplegable {
	margin: 0;
	margin-bottom: 20px;
	font-size: 23px;
	text-transform: uppercase;
	font-weight: 400;
	font-family: var(--familia_fuente);
	color: var(--principal);
	}
	
	.bloque_desplegable .accordion-item {
	border-color: var(--principal);
	margin-bottom: 10px;
	border: 0px var(--acento) solid;
	overflow: hidden;
	background-color: #fff;
	}
	
	.accordion-item:first-of-type{
	border-top-left-radius: var(--redondeo-interiores);
	border-top-right-radius: var(--redondeo-interiores);
	}
	
	.accordion-item:last-of-type{
	    border-bottom-right-radius: var(--redondeo-interiores);
	    border-bottom-left-radius: var(--redondeo-interiores);
	}
	
	.bloque_desplegable .accordion-button {
	background-color: var(--principal);
	text-decoration: none !important;
	border-color: var(--primario);
	color: #fff !important;
	box-shadow: none;
	gap: 8px;
	padding: 20px 12px;
	font-size: 16px;
	}
	
	.bloque_desplegable .accordion-button:focus {
	box-shadow: none;
	}
	
	.bloque_desplegable .accordion-button::after {
	display: none;
	}
	
	.bloque_desplegable .titulo_desplegable .fa {
	color: var(--principal)
	}
	
	.bloque_desplegable .accordion-body {
	border-top-color: var(--principal);
	padding: 25px;
	line-height: 25px;
	}
}

.tpl-44{
	/* Bloques de apartados */
	* {
	    --principal: var(--primario);
	    --efectos: var(--hover);
	    --redondeo: var(--border-radius);
	}
	
	.bloque_documentos .fondo {
	background-color: var(--transparencia);
	padding: 20px;
	margin-bottom: 40px
	}
	
	.bloque_documentos .accordion {
	margin: 0
	}
	
	.bloque_documentos h2 {
	margin: 0;
	margin-bottom: 20px;
	font-size: 23px;
	text-transform: uppercase;
	font-weight: 400;
	font-family: var(--familia_fuente);
	color: var(--primario__e);
	}
	
	.bloque_documentos .accordion-item {
	border-color: var(--primario);
	margin-bottom: 10px;
	border: 2px var(--primario__e) solid;
	border-radius: 8px;
	overflow: hidden;
	background-color: #fff;
	}
	
	.bloque_documentos .accordion-button {
	background-color: var(--primario);
	text-decoration: none !important;
	border-color: var(--primario);
	color: #fff !important;
	box-shadow: none;
	gap: 8px;
	padding: 20px 12px;
	font-size: 16px;
	border-radius: 0 !important;
	}
	
	.bloque_documentos .accordion-button:focus {
	box-shadow: none;
	}
	
	.bloque_documentos .accordion-button::after {
	display: none;
	}
	
	.bloque_documentos .accordion-body {
	border-top-color: var(--primario);
	padding: 10px;
	}
}

.tpl-45{
	/* Bloques de apartados */
	* {
	    --principal: var(--primario);
	    --efectos: var(--hover);
	    --redondeo-interiores: var(--border-radius-interiores);
	}
	
	.bloque-galeria-unite {
	    width: 100%;
	}
	
	.ug-thumb-wrapper{
	    border-radius: var(--redondeo-interiores) !important;
	}
}

.tpl-46{
	/* Bloques de apartados */
	* {
	    --principal: var(--primario);
	    --efectos: var(--hover);
	    --redondeo-interiores: var(--border-radius-interiores);
	
	}
	
	.bloque_imagenes img {
	width: 100%;
	border-radius: 5px;
	}
	
	.bloque_imagenes .flexible {
	display: flex;
	align-items: center
	}
	
	.bloque_imagenes img {
	width: 100%;
	object-fit: cover;
	border-radius: var(--redondeo-interiores);
	}

}

.tpl-47{
	/* Bloques de apartados */
	* {
	    --principal: var(--primario);
	    --efectos: var(--hover);
	    --redondeo: var(--border-radius);
	}
	
	.bloque_imagen_lista ul {
	    list-style: none;
	    padding: 0
	}
	
	.bloque_imagen_lista i {
	    color: var(--primario-e);
	    margin-right: 5px;
	}
	
	.bloque_imagen_lista .imagen {
	    width: 100%;
	    object-fit: cover;
	    margin-bottom: 30px;
	    border-radius: 5px;
	}
	
	.bloque_imagen_lista h4 {
	    text-transform: uppercase;
	    margin: 0;
	    margin-bottom: 10px;
	    font-family: var(--familia_fuente);
	    color: var(--primario-e);
	    font-size: 22px
	}
	
	.fa-user:before,
	.fa-pencil:before,
	.fa-book:before {
	    color: var(--primario);
	}
}

.tpl-48{
	/* Bloques de apartados */
	* {
	    --principal: var(--primario);
	    --efectos: var(--hover);
	    --redondeo: var(--border-radius);
	}
	
	.bloque_puntos ul {
	margin: 0;
	padding: 0;
	list-style: none
	}
	
	.bloque_puntos ul li {
	margin-bottom: 15px
	}
	
	.bloque_puntos ul li>p>.fa {
	font-size: 20px;
	color: var(--primario__e)
	}
	
	.fa-user:before,.fa-book:before{
	    color: var(--principal) !important;
	}
}

.tpl-49{
	/* Bloques de apartados */
	* {
	    --principal: var(--color-1);
	    --efectos: var(--hover);
	    --redondeo-interiores: var(--border-radius-interiores);
	}
	
	
	.bloque_contenido .titulo {
	background-color: var(--principal);
	padding: 15px 10px;
	border-radius: var(--redondeo-interiores);
	margin-bottom: 10px;
	}
	
	.bloque_contenido .titulo h4 {
	color: #fff;
	margin: 0;
	text-transform: uppercase;
	font-size: 16px;
	font-family: var(--familia_fuente);
	font-weight: 300
	}
	
	.bloque_contenido .bloque {
	padding: 0 10px;
	margin-bottom: 30px;
	}

}

.tpl-50{
	/* Bloques de apartados */
	* {
	
	    --tipografia: var(--font-1);
	    --principal: var(--color-1);
	    --acento: var(--color-3);
	    --fondo: var(--color-6);
	    --redondeo-interiores: var(--border-radius-interiores);
	}
	
	
	.listado {
	text-align: justify;
	}
	
	.listado ul,
	.listado li {
	margin: 0px;
	padding: 0px;
	list-style: none;
	}
	
	.listado li {
	padding: 20px;
	background-color: var(--fondo);
	border-radius: var(--border-radius-interiores);
	}
	
	.listado li a,
	.listado li.alt a {
	font-size: 15px;
	font-family: var(--tipografia);
	font-weight: 300;
	}
	
	.listado li.alt {
	background-color: transparent;
	}
	
	.listado li.alt a {
	color: var(--principal);
	text-decoration: none;
	}
	
	.listado a {
	color: var(--principal);
	text-decoration: none;
	}
	
	.listado a:hover,
	.listado li.alt a:hover {
	color: var(--acento);
	text-decoration: none;
	}
}