.css_a_sin_estilo{
    color: #455a64;
}

.displayNoneWebapp{
    display: none !important;
}

[data-menu="dark"] * > a {
    color: #CFD8DC;
}

.css_texto_centro{
    text-align: center;
}

.brief {
    text-align: justify;
}

.btn2 {
    background-color: transparent;
    border: 1px solid var(--accent-color);
    box-sizing: border-box;
    color: var(--accent-color);
}

.btn2:hover {
    color: white;

}

.displayNone{
    display: none !important;
}

strong{
    color: var(--accent-color);
}

.footer-menu li i {
    display: block;
    font-size: 28px;
}


.footer-menu.circular li a.active i {
    margin: auto;
    font-size: 20px;
}

.page-footer {
    padding-bottom: 1px;
}

.social-colored .social a i.mdi-instagram {
    background: #8134AF;
}

.center{
    text-align: center !important;
}

.css_fixed_bottom {
    position: fixed;
    bottom: 0px;
}

.css_popup_cerrar_fixed{
    margin-bottom: 30px;
}

.css_margin_bottom_0{
    margin-bottom: 0px !important;
}


.css_margin_top_0{
    margin-top: 0px !important;
}


.css_padding_bottom_0{
    padding-bottom: 0px !important;
}

.css_padding_0{
    padding: 0px !important;
}

.css_margin_0{
    margin: 0px !important;
}


.css_logo_restaurante_absolute > img {
    width: 110px;
    height: auto;
    float: right;
    margin-right: 15px;
    padding-top: 10px;
}

.css_line_height > li > a{
    line-height: 1 !important;
}

.css_line_height {
    line-height: 1.2 !important;
}

.css_imagen_fondo{

    background-position: center;
    background-size: cover;
}


.css_margin_right_10{
    margin-right: 10px;
}

.has-image > .css_lugar_animacion{
    margin-right: 10px;
}

.nothas-image > .css_lugar_animacion{
    float: left;
    margin-left: 0px;
    margin-top: 10px;
}

.carousel.carousel-slider .carousel-item {
    min-height: 250px;
}

.carousel {
    height: 250px;
}

.carousel.carousel-fullscreen .indicators {
     bottom: 15px;
}

.css_carousel_imagen{
   width: 289px;
    height: 30px;
}

.css_carousel_imagen > img {
    width: 100%;
    height: auto;
}

@media only screen and (min-width: 400px) and (max-width: 800px) {
    .home_carousel.carousel.carousel-slider .carousel-item {
        min-height: 275px!important;
    }

    .home_carousel.carousel {
        height: 275px!important;
    }
}

@media only screen and (min-width: 801px) and (max-width: 1080px) {
    nav .brand-logo {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .home_carousel.carousel.carousel-slider .carousel-item {
        min-height: 510px!important;
    }

    .home_carousel.carousel {
        height: 510px!important;
    }
}

@media only screen and (min-width: 1081px) {
    nav .brand-logo {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .home_carousel.carousel.carousel-slider .carousel-item {
        min-height: 510px!important;
    }

    .home_carousel.carousel {
        margin-left: 25%;
        max-width: 50%;
        height: 510px!important;
    }

    .section {
        margin-left: 25%;
        max-width: 50%;
    } 
}

.home_carousel.carousel.carousel-fullscreen .carousel-item .bg {
    background-size: cover;
    background-color: #FFF;
}


.css_bloque_imagen {
    background-position: center !important;
    background-size: cover !important;

}

.css_degradado_negro{
    background: linear-gradient(to bottom, rgba(0,0,0,0.80), rgba(100,100,100,0)) !important;
}

.css_bloque_imagen_size{
    height: 130px;
}


.css_texto_bloque_imagen {
    margin-top: 15px;
    text-align: left;
    margin-left: 15px;
    line-height: 1.1;
}

.css_texto_bloque_imagen_2{
    margin-top: 15px;
}


.modal.bottom-sheet {
    max-height: 70%;
    margin-bottom: 0px;
    padding-bottom: 54px;
}

.css_marcador_arriba_bloque{

    border-radius: 10px 10px 0px 0px;
    padding: 5px;

}

.css_marcador_abajo_bloque {
    border-radius: 0px 0px 10px 10px;
    padding: 5px;
    margin-bottom: 20px;
}


.css_border_no-radius_bottom{
    border-bottom-left-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
    margin-bottom: 0px !important;
}

.modal.modal-fixed-footer .modal-footer {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-evenly;
}

.modal.bottom-sheet .modal-footer {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-evenly;
}

textarea.materialize-textarea {
    min-height: 120px;
}

textarea.materialize-textarea2 {
    min-height: 20px;
}

.collapsible.transparent {
    border: 0px !important;
    margin-top: 0;
    margin-bottom: 0;
}

.collapsible.transparent .collapsible-header, .collapsible.transparent li {
    border-radius: 0px !important;
}

.css_cabeza_collapsible {
    text-align: center;
    padding: 8px;
    margin: 0 auto;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    font-size: 18px;
}

.css_footer_collapsible{
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    height: 2px;
    width: auto;
}

.collapsible > .active > .collapsible-header {
    background-color: var(--accent-color);
    color: white;
}

.collapsible > .active > .collapsible-header > i {
    background-color: white;
    color: var(--accent-color);
}

.collapsible-body {
    padding: 0px;
}


.col.s10.m10.css_carta_nombre {
    margin: 5px 0px;
    font-size: 16px;
    line-height: 20px;
    font-weight: bold;
    text-align: left;
}

.css_carta_precio{
    margin: 5px 0px;
    font-size: 14px;
    text-align: right;
}

.css_separador_carta {
    width: 100%;
    margin: 0px auto;
    height: 1px;
    background-color: #ececec;
}

.chip2 {
    display: inline-block;
    height: 20px;
    font-size: 13px;
    font-weight: 500;
    color: rgba(0,0,0,0.6);
    line-height: 20px;
    padding: 0 9px;
    border-radius: 16px;
    background-color: #e4e4e4;
    margin-bottom: 10px;
    margin-right: 5px;
}

.brand-logo > img {
    height: auto;
    margin-top: 8px;
    width: 100px;
    /* margin-top: 6px;
    width: 86px; */
}

.css_mapa_iframe {
    width: 100vw;
    /* height: 76vh; */
    height: 75vh;
    border: 0px !important;
}

.css_iframe_hmobile {
    width: 100vw;
    height: 85vh;
    border: 0px !important;
    margin-top: 56px;
}

.css_mapa_iframe_cabecera {
    background-color: var(--accent-color);
    position: absolute;
    width: 100%;
    height: 60px;
    text-align: center;
    color: white;
    font-size: 20px;
    padding-top: 16px;
}

.home_carousel .carousel-item-sinsombra::after {
     background-color: transparent !important;
}

.btn-large{
    border-radius: 10px;
}

.css_texto_cuenta_dias{
    font-weight: 600 !important;
    font-size: 30px !important;
    padding-top: 10px !important;
}

.css_cuenta_numeros {
    font-weight: 600 !important;
    font-size: 20px !important;
    margin: 10px 5px !important;
    background-color: whitesmoke;
    padding: 5px;
    border-radius: 4px;
    color: black;
}

.css_margen_cuenta_atras{
    margin-top: 20px;
}

.css_input_lista {
    border: none;
    box-shadow: none !important;
    background-color: #e8e8e8 !important;
    border-radius: 0px !important;
    margin: 0px !important;
}

.btn-floating {

    border-radius: 100%;
}

.css_margin_right_0{
    margin-right: 0px !important;
}

.width_98{
    width: 98%;
}


nav .brand-logo, nav .navicon {
    color: white;
}


.css_desactivado_boton_foto {
    background: rgba(100,100,100,0.8) !important;
}

.preloader-background.active_loading{
    display: flex !important;
    background-color: rgba(0,0,0,0.9) !important;
}

.recepcion_servicios_icono_texto {
    text-align: center;
}

.icono_linea > img {
    margin: 0 auto;
    display: block;
    width: 58px;
}

.padding-right5 {
    padding-right: 5px !important;
}

.margin-bottom-9{
    margin-bottom: 9px;
}

.mdi-color-accent{
    color: var(--accent-color);
}

.title.color-black {
    font-size: 16px;
    font-weight: bolder;
}

.margin-cero{
    margin: 0px !important;
}

.a-menu-lateral{
    display: flex !important;
    align-items: center !important;
}

.title-menu-lateral{
    max-width: calc(100% - 80px);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.content-slider-seccion{
    margin-top: 57px;
    margin-bottom: -50px;
}

.foto_riu_piscina {
    width: 100%;
    height: 225px;
    object-fit: cover;
}

.recepcion_servicios_texto {
    text-align: center;
}

.recepcion_servicios_texto > ul {
    margin: 5px 0 15px 0;
}

.recepcion_servicios_icono_texto {
    font-weight: 500;
    font-size: 18px;
}

.titulo_pinero {
	color: var(--accent-color) !important;
}

.texto_corporativo_pinero div {
    padding-top: 5px !important;
}

.css_upgrade_imagen_texto {
    margin: 10px;
    border-radius: 5px;
    overflow: hidden;
    border: 1px solid var(--accent-color);
}

.css_upgrade_imagen {
    height: 225px;
    background-size: cover;
}

.recepcion_servicios {
	margin: 32px 0;
}

.css_upgrade_texto {
    padding-top: 5px;
}

.texto_corporativo_bar_pinero {
    width: 100% !important;
    height: auto !important;
    padding: 0px 15px 5px 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon-svg {
    display: none;
}

.hide-title .css_texto_bloque_imagen_2 {
    display: none !important;
  }


/* Recomendaciones*/
@media only screen and (min-width:430px){
    .recomendacion{
        margin-left: 30px;
    }
}

.recomendacion{
    margin-top: 30px;
    position: relative;
    box-shadow: 0px 4px 26px -4px rgba(0,0,0,0.73);
}

.recomendacion img{
    width:195px;
    height:280px;
}

.recomendaciones{
    display:flex;
    justify-content: center;
    flex-wrap: wrap;
}

.recomendacion_info {
    position: absolute;
    top: 105px;
    background-color: rgba(13, 162, 189, 0.8);
    width: 195px;
    height: 85px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 25px;
    color: #fff;
}

.loadingBg {
    background: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
}

.flex-center{
    display: flex;
    justify-content: center;
    align-items: center;
}

.zoom-in {
    animation-name: zoom-in;
    animation-duration: 0.6s;
}

@keyframes zoom-in {
    from {transform:scale(0)}
    to {transform:scale(1)}
}

/* Collapsible Cards */
.collapsible-card {
    height: auto;
    /* margin: 5% 6% 5% 6%; */
    background-color: #FFFFFF;
    color: #384044;
    border-radius: 10px;
}

.collapsible-card-header{
    font-size: 20px;
    padding: 4%;
    width: 100%;
    display: flex;
    align-items: center;
    background-color: #dbdbdb;
}

.collapsible-card-header > .name {
    width: 95%;
    font-size: 18px;
    font-weight: bold;
}

.collapsible-card-content{
    /* background-color: #E6E7E8; */
    background-color: #FFFFFF;
    padding: 6%;
}

.collapsible-card-header > .button {
    width: 20px;
    height: 20px;
    background-size: contain;
}

.collapsible-card-header > .button {
    background-image: url("../images/add.png");
}

.card-active > div.button {
    background-image: url("../images/minus.png");
}
/* FIN Collapsible Cards */
.mdi {
    text-align: center;
}

.ajuste_texto {
    text-align: left !important;
}

.pagetitle {
    color: var(--primary-color)!important;
}

.linea_par > h5,
.linea_impar > h5 {
    color: var(--accent-color)!important;
}

.restaurante_ficha_carta_botton{
    background-color: var(--primary-color)!important;
}

.btn_ver_mas {
    background: var(--primary-color)!important;
}

.footer-content,
.footer-content div,
.footer-content > .row,
.footer-content > div:nth-child(1) > div:nth-child(1) *,
.link-wrap * {
    text-align: center!important;
}

.recomendacion_info{
    background-color: var(--primary-color)!important;
    opacity: 0.8;
}

.promo_see_more {
    width: 100%;
    height: 35px;
    margin-top: -7px;
    margin-left: 0px;
    border-radius: 0px;
}

.toggle-btn {
    margin-left: 9%;
    background-color: #0066ad;
    color: white;
    padding: 10px 16px;
    border: none;
    width: 80%;
    text-align: left;
    font-weight: bold;
    font-size: 16px;
    cursor: pointer;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background-color 0.3s, box-shadow 0.3s;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.15);
}

.toggle-btn.abierto .flecha {
    transform: rotate(135deg);
}

.toggle-btn {
    outline: none;
}

.toggle-btn:focus-visible {
    outline: none;
    box-shadow: none;
}

.toggle-btn.abierto .flecha {
    transform: rotate(135deg);
}

.texto_corporativo_pinero .li_icono {
    padding-top: 0px !important;
}

.filtro_blanco {
    filter: brightness(0) invert(1);
}

.carta_restaurante {
    width: 100%;
    border: 2px solid #0066ad;
    border-radius: 4px;
    margin: 10px auto 0px 0px;
    padding: 1% 1%;
    font-size: 14px;
    font-weight: initial;
    text-align: center;
    text-transform: uppercase;
    color: white;
    background-color: #0066ad;
    box-shadow: 0 3px 23px 0 rgba(2, 1, 0, 0.14), 0 1px 27px 0 rgba(36, 14, 0, 0.12), 0 3px 1px -1px rgba(106, 43, 0, 0.1);
}
.css_boton_accordion.carta_restaurante {
    padding: 1% !important;
}

.titulo_pinero.bottom_line {
    margin-top: 7%;
}

.reservar_restaurante {
    background-color: black;
    font-weight: bold;
    width: 242px;
    text-align: center;
    padding: 11px;
    border: 1px solid black;
    box-shadow: 0 3px 23px 0 rgba(106, 43, 0, 0.14), 0 1px 27px 0 rgba(106, 43, 0, 0.12), 0 3px 1px -1px rgba(106, 43, 0, 0.1);
}

.boton_reservar {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    z-index: 2;
    bottom: unset;
    text-transform: uppercase;
}

.titulo_pinero.bottom_line.no_img {
    margin-top:
}
 
.img_info > img {
    width: 100%;
    height: auto;
}

.categoria_icono {
    font-weight: bold;
    cursor: pointer;
    padding: 10px 0;
    border-top: 1px solid #ccc;
    position: relative;
}

.categoria_icono::after {
    content: "▼";
    position: absolute;
    right: 0;
    transition: transform 0.3s ease;
}

.categoria_icono.active::after {
    transform: rotate(-180deg);
}

.contenido_iconos {
    transition: all 0.3s ease;
}

.contenido-toggle.letra_gris_pinero {
    padding: 12px 16px;
}

.contenido_iconos.active {
    display: block;
}

.list_style_tic>li {
    list-style: disclosure-closed !important;
    color: #004455; 
    margin-left: 25px;
    padding-right: 10px;
}

li::marker {
    color: #004455;
}

.box_info_extra>li>strong {
    color:white;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}

.linea_superior_separacion {
    margin-top: 5px;
    border-top: solid 1px #0066ad;
    padding: 10px;
    min-width: 100%;
}

.linea_superior_separacion>.subtitulo_pinero {
    margin-top: 15px;
}

.mini_titulo {
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
    text-align: center;
}

.mini_subtitulo {
    font-size: 15px;
    font-weight: bold;
    margin-top: 10px;
    color: #4F8E96;
}

.nombre_principal {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    margin: 10px;
}

button.carta_restaurante {
    width: 99%;
    transform: scale(0.97);
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}

.bloque-toggle:first-of-type .toggle-btn {
    margin-top: 10px;
}

.box_info_extra .strong_blanco {
    color: white;
    font-weight: 600;
    padding: 10px 0 0 10px;
}

.titulo_especial {
    font-size: 18px;
    font-weight: bold;
    color: #4F8E96;
    text-align: center;
    border-top: 2px solid #4F8E96;
    border-bottom: 2px solid #4F8E96;
    padding: 10px 15px;
    display: block;
    margin-top: 0 auto;
}

.margin_top.linea_superior_separacion {
    margin-top: 20px;
}

.fondo-popup-zoom {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: #ffffff;
    z-index: 1000;
}

.content-popup {
    width: 100%;
    height: 93%;
    overflow-y: scroll !important;
}
.back-popup {
    width: 100%;
    height: 7%;
    background: #0066ad;
    color: #ffffff;
    position: fixed;
    bottom: 0;
    left: 0;
    font-size: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.back-popup > img {
    width: 13%;;
}

.content-general-carta-dinamica {
    max-width: 600px;
}

.accordion {
    width: 100%;
    color: white;
    background-color: #0066ad;
    padding: 10px;
    font-weight: 700;
    font-size: 1.2em;
    text-decoration: none;
    transition: 0.4s;
    border: none;
    outline: none;
    cursor: pointer;
    margin-top: 5px;
    text-transform: uppercase;
    position: sticky;
    top: 0px;
    z-index: 1;
}

.content-general-carta-dinamica {
    max-width: 600px;
}

.panel {
    width: 100%;
}

.content-general-plato-carta div {
    padding: 1% 0% 1% 1%;
}

.carta-precio-dinamico {
    text-align: right;
    margin-top: -2%;
}

.carta-precio-dinamico > span {
    display: flex;
    flex-direction: row-reverse;
}

.box_info_extra>.bloque-toggle>.toggle-btn {
    background-color: #4f8e96;
    color: #004455;
}

.box_info_extra>.bloque-toggle>.contenido-toggle {
    background: #4f8e96;
    color: #004455;
    border-color: #004455;
}

.subcategoria_cartas {
    text-align: center;
    margin-right: 2%;
    font-size: small;
}

.texto_pinero {
    color:black;
}
.semaforo_afluencia {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.semaforo_afluencia_verde {
    width: 93%;
    background-color: #D4EDDA;
    color: #145724;
    border: 1px solid #145724;
    margin-top: 6%;
    padding: 5px;
}

.semaforo_afluencia_amarillo {
    width: 93%;
    background-color: #FFF3CD;
    color: #856406;
    border: 1px solid #856406;
    padding: 5px;
    margin-top: 1%;
}

.semaforo_afluencia_rojo {
    width: 93%;
    background-color: #F8D7DA;
    color: #731C23;
    border: 1px solid #731C23;
    padding: 5px;
    margin-top: 1%;
}

/* Apartado mediciones de piscinas */
.bg-white-piscinas{
    background-color: #FFF!important;
}
.pool-measures-table{
    -webkit-box-shadow: unset!important;
    box-shadow: unset!important;
    background-color: #ffffff;
    border-radius: unset!important;
}
.pool-measures-table tr td{
    text-align: center!important;
}
.pool-measures-table th{
    font-weight: bold;
}
.pool-measures-table tr td:first-child{
    text-align: left!important;
    font-weight: bold;
}
.p-0-piscinas{
    padding: 0px!important;
}
/* Fin apartado mediciones de piscinas */

.titulo_seccion {
    font-size: large;
    text-align: center;
    color: #1E619F;
    margin-top: 2%;
}

/* Oculta la barra superior de Google Translate */
.goog-te-banner-frame.skiptranslate { display: none !important; }
body { top: 0px !important; }

/* Opcional: oculta el texto “Powered by” (a veces reaparece) */
.goog-logo-link, .goog-te-gadget span { display: none !important; }
.goog-te-gadget { font-size: 0 !important; }
body.html {
    position: unset !important;
}
.skiptranslate {
    display: none !important;
}