/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/
#filtros .fusion-filter a {
    padding: 0px 10px;
}

#filtros .fusion-filter a:hover {
    background: #000;
    color: #fff;
    border-color: #000 !important;
}

.fondomenu {
    background: linear-gradient(90deg,
            rgba(56, 40, 26, 0.72) 0%,
            rgba(18, 14, 11, 0.92) 30%,
            rgba(16, 13, 10, 0.94) 70%,
            rgba(52, 37, 24, 0.70) 100%);
}

.cajafoto p {
    margin-top: -52px !important;
    background: linear-gradient(90deg, rgba(56, 40, 26, 0.72) 0%, rgba(18, 14, 11, 0.92) 30%, rgba(16, 13, 10, 0.94) 70%, rgba(52, 37, 24, 0.70) 100%);
    z-index: 9999;
    position: relative;
    padding: 15px;
    margin-bottom: 0px !important;
}

.cajafoto2 p {
    background: linear-gradient(90deg,
            rgba(56, 40, 26, 0.7) 0%,
            rgba(18, 14, 11, 0.9) 40%,
            rgba(16, 13, 10, 0.9) 40%,
            rgba(52, 37, 24, 0.7) 100%);
    margin-top: -52px !important;
    z-index: 9999;
    position: relative;
    padding: 15px;
    margin-bottom: 0px !important;
}


/* =========================================
   POST CARDS — DISEÑO EDITORIAL
   ========================================= */




/* -----------------------------------------
   SEPARADORES VERTICALES
   ----------------------------------------- */

.noticias-editorial .fusion-grid-column {
    border-left: 1px solid #BDBFC3;
}


/* La primera tarjeta no necesita línea izquierda */

.noticias-editorial .fusion-grid-column:first-child {
    border-left: none;
}

/* La primera columna de cada fila no debe llevar línea izquierda para evitar la doble línea */
.noticias-editorial .fusion-grid-column:nth-child(3n+1) {
    border-left: none;
}


/* -----------------------------------------
   ESPACIADO DE LAS COLUMNAS
   ----------------------------------------- */

/*
   Ajusta estos valores si quieres
   más o menos aire entre las tarjetas.
*/

.noticias-editorial .fusion-grid-column {
    padding-left: 24px;
    padding-right: 24px;
    padding-top: 50px;
}


/* -----------------------------------------
   EVITAR DOBLE ESPACIADO DE AVADA
   ----------------------------------------- */

.noticias-editorial .fusion-grid {
    margin-left: 0;
    margin-right: 0;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 1024px) {

    .noticias-editorial .fusion-grid-column {
        border-left: none;
    }

}


/* =========================================
   MÓVIL
   ========================================= */

@media (max-width: 640px) {

    .noticias-editorial {
        border-top: 1px solid #f2f3f5;
    }

    .noticias-editorial .fusion-grid-column {
        border-left: none;
        border-top: 1px solid #f2f3f5;
        padding: 30px 0;
    }

    .noticias-editorial .fusion-grid-column:first-child {
        border-top: none;
    }

}

.tagpostcard {
    text-transform: uppercase;
}

.alturaminima {
    min-height: 90px;
}

.alturatitulo {
    min-height: 45px;
}

/* BOTÓN DEBAJO DE CADA IMAGEN */
.fusion-image-element+div:has(> .boton-servicio) {
    position: relative !important;
    z-index: 20 !important;
    margin-top: -54px !important;
    margin-left: 20px !important;
    margin-bottom: 0 !important;
}

/* COLOR NUMEROS CONTACTO   */
.numeros {
    color: #888888;
    font-size: 21px;
    margin-right: 10px;
}

.fusion-form-field.fusion-form-consent-field.fusion-form-label-above.legal {
    margin: 0px;
}

.legal label {
    font-size: 12px !important;
}

.fusion-form-8900 .fusion-form-upload-field .awb-upload-placeholder {
    color: #bdbfc3 !important;
    opacity: 1 !important;
}

.fusion-image-carousel {
    margin-bottom: 0px !important;
}

/* =========================================
Altura completa exclusivamente para el carrusel del megamenú de Productos 
=========================================*/
#awb-mega-menu-8992 .fusion-builder-nested-column-2 .fusion-column-wrapper {
    height: 100% !important;
}

#awb-mega-menu-8992 .fusion-image-carousel {
    height: 100% !important;
    margin: 0 !important;
}

.carruselaltura .awb-carousel,
.carruselaltura .swiper-wrapper,
.carruselaltura .swiper-slide,
.carruselaltura .fusion-carousel-item-wrapper,
.carruselaltura .fusion-image-wrapper {
    height: 100% !important;
    padding: 0 !important;
}

.carruselaltura .fusion-image-wrapper img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
}

.alturaminimacajas {
    min-height: 102px;
}

/* ==========================================
   CHECKLIST ARMARIOS CLOSED
   ========================================== */

.checklist-armarios {
    width: 100%;
}

.checklist-item {
    display: grid;
    grid-template-columns: 45px 1fr;
    column-gap: 25px;
    padding: 0 0 15px 0;
    margin: 0 0 15px 0;
    border-bottom: 1px solid #dddddd;
}

/* Número */

.checklist-numero {
    font-size: 12px;
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: #888888;
    padding-top: 3px;
}

/* Texto */

.checklist-contenido {
    max-width: 900px;
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
    color: #111111;
}

/* El último no lleva línea */

.checklist-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}


/* ==========================================
   TABLET
   ========================================== */

@media only screen and (max-width: 1024px) {

    .checklist-item {
        grid-template-columns: 40px 1fr;
        column-gap: 20px;
        padding-bottom: 25px;
        margin-bottom: 25px;
    }

    .checklist-contenido {
        font-size: 17px;
        line-height: 1.55;
    }

}


/* ==========================================
   MÓVIL
   ========================================== */

@media only screen and (max-width: 640px) {

    .checklist-item {
        grid-template-columns: 32px 1fr;
        column-gap: 15px;
        padding-bottom: 22px;
        margin-bottom: 22px;
    }

    .checklist-numero {
        font-size: 11px;
        padding-top: 2px;
    }

    .checklist-contenido {
        font-size: 16px;
        line-height: 1.55;
    }

}

/* ==========================================
   TABLA ARMARIOS CLOSED
   ========================================== */

.tabla-armarios {
    width: 100%;
    max-width: 1200px;
    /* margin: 0 auto;*/
    color: #111111;
}

/* ------------------------------------------
   TÍTULO
   ------------------------------------------ */

.tabla-armarios-titulo {
    padding: 0 0 25px 0;
}

.tabla-armarios-titulo h3 {
    margin: 0;
    font-size: 24px;
    line-height: 1.3;
    font-weight: 500;
    color: #111111;
}


/* ------------------------------------------
   CABECERA
   ------------------------------------------ */

.tabla-armarios-header {
    display: grid;
    grid-template-columns: 1.15fr 1.5fr 0.65fr 0.65fr;

    padding: 16px 22px;

    background: #f4f4f4;

    font-size: 12px;
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;

    color: #777777;
}


/* ------------------------------------------
   FILAS
   ------------------------------------------ */

.tabla-armarios-row {
    display: grid;
    grid-template-columns: 1.15fr 1.5fr 0.65fr 0.65fr;

    align-items: center;

    padding: 25px 22px;

    border-bottom: 1px solid #dddddd;

    transition:
        background-color 0.25s ease,
        padding 0.25s ease;
}

.tabla-armarios-row:hover {
    background: #fafafa;
}


/* ------------------------------------------
   MEDIDAS
   ------------------------------------------ */

.tabla-armarios-medidas {
    font-size: 17px;
    line-height: 1.45;
    font-weight: 500;
    color: #111111;
}


/* ------------------------------------------
   CONFIGURACIÓN
   ------------------------------------------ */

.tabla-armarios-configuracion {
    padding-right: 30px;

    font-size: 16px;
    line-height: 1.5;
    color: #555555;
}


/* ------------------------------------------
   PRECIOS
   ------------------------------------------ */

.tabla-armarios-precio {
    font-size: 19px;
    line-height: 1.3;
    font-weight: 600;
    color: #111111;
}


/* ------------------------------------------
   TABLET
   ------------------------------------------ */

@media only screen and (max-width: 1024px) {

    .tabla-armarios-header,
    .tabla-armarios-row {
        grid-template-columns: 1.1fr 1.4fr 0.65fr 0.65fr;
    }

    .tabla-armarios-row {
        padding: 22px 16px;
    }

    .tabla-armarios-header {
        padding: 14px 16px;
    }

    .tabla-armarios-medidas {
        font-size: 16px;
    }

    .tabla-armarios-configuracion {
        font-size: 15px;
    }

    .tabla-armarios-precio {
        font-size: 18px;
    }

}


/* ==========================================
   MÓVIL — TARJETAS
   ========================================== */

@media only screen and (max-width: 640px) {

    .tabla-armarios-titulo {
        padding-bottom: 20px;
    }

    .tabla-armarios-titulo h3 {
        font-size: 21px;
        line-height: 1.35;
    }


    /* Ocultamos cabecera */

    .tabla-armarios-header {
        display: none;
    }


    /* Cada fila pasa a tarjeta */

    .tabla-armarios-row {
        display: block;

        padding: 22px 20px;
        margin-bottom: 14px;

        border: 1px solid #dddddd;
        background: #ffffff;
    }

    .tabla-armarios-row:hover {
        background: #ffffff;
    }


    /* Elementos de la tarjeta */

    .tabla-armarios-row>div {
        display: grid;
        grid-template-columns: 90px 1fr;
        column-gap: 15px;

        padding: 11px 0;

        border-bottom: 1px solid #eeeeee;
    }


    .tabla-armarios-row>div:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }


    /* Etiquetas */

    .tabla-armarios-row>div::before {
        content: attr(data-label);

        font-size: 10px;
        line-height: 1.4;
        font-weight: 600;
        letter-spacing: 0.08em;
        text-transform: uppercase;

        color: #888888;
    }


    /* Valores */

    .tabla-armarios-medidas {
        font-size: 16px;
        line-height: 1.45;
    }

    .tabla-armarios-configuracion {
        padding-right: 0;

        font-size: 15px;
        line-height: 1.5;
        color: #555555;
    }

    .tabla-armarios-precio {
        font-size: 18px;
    }

}


/* ==========================================
   CHECKLIST MODERNO · COCINA
   ========================================== */

.checklist-cocina-moderno {
    width: 100%;
    max-width: 1000px;
}

.checklist-cocina-linea {
    display: flex;
    align-items: center;
    gap: 18px;

    padding: 17px 0;

    border-bottom: 1px solid #e4e4e4;

    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    color: #111111;

    transition: transform 0.25s ease;
}


/* Icono */

.checklist-cocina-icono {
    flex: 0 0 27px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 27px;
    height: 27px;

    border: 1px solid #bdbdbd;

    font-size: 13px;
    line-height: 1;
    font-weight: 500;

    color: #555555;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease;
}


/* Hover */

.checklist-cocina-linea:hover {
    transform: translateX(5px);
}

.checklist-cocina-linea:hover .checklist-cocina-icono {
    background: #111111;
    border-color: #111111;
    color: #ffffff;
}


/* Último elemento */

.checklist-cocina-linea:last-child {
    border-bottom: none;
}


/* ==========================================
   TABLET
   ========================================== */

@media only screen and (max-width: 1024px) {

    .checklist-cocina-linea {
        gap: 15px;
        padding: 15px 0;
        font-size: 16px;
    }

}


/* ==========================================
   MÓVIL
   ========================================== */

@media only screen and (max-width: 640px) {

    .checklist-cocina-linea {
        align-items: flex-start;
        gap: 13px;

        padding: 14px 0;

        font-size: 15px;
        line-height: 1.5;
    }

    .checklist-cocina-icono {
        flex: 0 0 24px;

        width: 24px;
        height: 24px;

        margin-top: 1px;

        font-size: 11px;
    }

}

/* ==========================================
   LISTA DE PRECIOS · PUERTAS
   ========================================== */

.lista-precios-puertas {
    width: 100%;
    max-width: 1000px;
}

.lista-precios-linea {
    display: grid;
    grid-template-columns: 27px 1fr auto;
    align-items: center;
    gap: 18px;

    padding: 17px 0;

    border-bottom: 1px solid #e4e4e4;

    font-size: 17px;
    line-height: 1.5;
    color: #111111;

    transition: transform 0.25s ease;
}


/* Icono */

.lista-precios-icono {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 27px;
    height: 27px;

    border: 1px solid #bdbdbd;

    font-size: 13px;
    line-height: 1;
    font-weight: 500;
    color: #555555;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease;
}


/* Nombre */

.lista-precios-nombre {
    font-weight: 400;
}


/* Precio */

.lista-precios-importe {
    min-width: 80px;

    text-align: right;

    font-size: 18px;
    font-weight: 600;
    color: #111111;
}


/* Hover */

.lista-precios-linea:hover {
    transform: translateX(5px);
}

.lista-precios-linea:hover .lista-precios-icono {
    background: #111111;
    border-color: #111111;
    color: #ffffff;
}


/* Último elemento */

.lista-precios-linea:last-child {
    border-bottom: none;
}


/* ==========================================
   TABLET
   ========================================== */

@media only screen and (max-width: 1024px) {

    .lista-precios-linea {
        gap: 15px;
        padding: 15px 0;
        font-size: 16px;
    }

    .lista-precios-importe {
        font-size: 17px;
    }

}


/* ==========================================
   MÓVIL
   ========================================== */

@media only screen and (max-width: 640px) {

    .lista-precios-linea {
        grid-template-columns: 24px 1fr auto;
        gap: 13px;

        padding: 14px 0;

        font-size: 15px;
    }

    .lista-precios-icono {
        width: 24px;
        height: 24px;

        font-size: 11px;
    }

    .lista-precios-importe {
        min-width: auto;

        font-size: 16px;
        white-space: nowrap;
    }

}

/* ==========================================
   LISTA DE PRECIOS · FRENTES DE ARMARIO
   ========================================== */

.lista-precios-puertas {
    width: 100%;
    max-width: 1000px;
}

.lista-precios-linea {
    display: grid;
    grid-template-columns: 27px 1fr auto;
    align-items: center;
    gap: 18px;

    padding: 18px 0;

    border-bottom: 1px solid #e4e4e4;

    font-size: 17px;
    line-height: 1.5;
    color: #111111;

    transition: transform 0.25s ease;
}


/* ==========================================
   ICONO
   ========================================== */

.lista-precios-icono {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 27px;
    height: 27px;

    border: 1px solid #bdbdbd;

    font-size: 13px;
    line-height: 1;
    font-weight: 500;
    color: #555555;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease;
}


/* ==========================================
   DESCRIPCIÓN
   ========================================== */

.lista-precios-descripcion {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.lista-precios-nombre {
    font-weight: 400;
    color: #111111;
}

.lista-precios-nota {
    font-size: 13px;
    line-height: 1.4;
    color: #888888;
}


/* ==========================================
   PRECIO
   ========================================== */

.lista-precios-importe {
    min-width: 80px;

    text-align: right;

    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
    color: #111111;

    white-space: nowrap;
}


/* ==========================================
   HOVER
   ========================================== */

.lista-precios-linea:hover {
    transform: translateX(5px);
}

.lista-precios-linea:hover .lista-precios-icono {
    background: #111111;
    border-color: #111111;
    color: #ffffff;
}


/* Último elemento */

.lista-precios-linea:last-child {
    border-bottom: none;
}


/* ==========================================
   TABLET
   ========================================== */

@media only screen and (max-width: 1024px) {

    .lista-precios-linea {
        gap: 15px;
        padding: 16px 0;
        font-size: 16px;
    }

    .lista-precios-importe {
        font-size: 17px;
    }

    .lista-precios-nota {
        font-size: 12px;
    }

}


/* ==========================================
   MÓVIL
   ========================================== */

@media only screen and (max-width: 640px) {

    .lista-precios-linea {
        grid-template-columns: 24px 1fr auto;
        gap: 13px;

        padding: 15px 0;

        font-size: 15px;

        align-items: start;
    }

    .lista-precios-icono {
        width: 24px;
        height: 24px;

        margin-top: 1px;

        font-size: 11px;
    }

    .lista-precios-nota {
        font-size: 12px;
        line-height: 1.4;
    }

    .lista-precios-importe {
        min-width: auto;

        padding-top: 1px;

        font-size: 16px;
    }

}

/* =========================================
 Galería redonda 
 =========================================*/
.galeria-redonda .fusion-gallery-image {
    border-radius: 50%;
    overflow: hidden;
    aspect-ratio: 1 / 1;
}

.galeria-redonda .fusion-gallery-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}



/* =========================================
 filtros Faqs
 =========================================*/
.fusion-filter {
    float: left;
    margin-right: 10px !important;
}

.fusion-filter.fusion-active a {
    background: #000;
    color: #fff !important;
    border-color: #000 !important;

}

.fusion-filter a {
    border: 1px solid #aaa !important;
    padding: 3px 7px;
    margin-bottom: 15px;
    font-size: 14px !important;
}

/* =========================================================
   POST CARD - CATEGORÍAS DEL PROYECTO
   ========================================================= */
/* =========================================================
   PROYECTO - POST CARD DE CATEGORÍAS A ANCHO COMPLETO
   ========================================================= */

/* La tarjeta que contiene las categorías ocupa todo el ancho */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

/* Wrapper interior */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories)>.fusion-column-wrapper {
    width: 100% !important;
    max-width: 100% !important;
}

/* Meta */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-meta-tb {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}

/* Contenedor de categorías */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories {
    display: flex;
    flex-direction: column;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 0;
}

/* Cada categoría */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a {
    display: flex;
    align-items: center;
    width: 100% !important;
    min-height: 65px;
    padding: 5px 0;
    box-sizing: border-box;
    color: #111111;
    text-decoration: none;
    font-family: Manrope, sans-serif;
    font-size: 16px;
    line-height: 1.3;
}


/* Iconos */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a::before {
    content: "";
    display: block;

    width: 50px;
    height: 50px;
    min-width: 50px;

    margin-right: 15px;

    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* Carpintería */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/trabajos-de-madera-a-medida"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/trabajos-de-madera-a-medida/"]::before {
    background-image: url("/wp-content/uploads/carpinteria-icono.webp");
}

/* Iluminación integrada */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/iluminacion-integrada"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/iluminacion-integrada/"]::before {
    background-image: url("/wp-content/uploads/iluminacion-icono.webp");
}

/* Puertas abatibles */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/puertas-abatibles"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/puertas-abatibles/"]::before {
    background-image: url("/wp-content/uploads/Puertas-abatibles-icono.webp");
}

/* Puertas */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/puertas-a-medida/"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/puertas-a-medida/"]::before {
    background-image: url("/wp-content/uploads/puertas-icono.webp");
}

/* Revestimiento */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/revestimiento"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/revestimiento/"]::before {
    background-image: url("/wp-content/uploads/revestimiento-icono.webp");
}

/* Armarios */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/armarios-personalizados-a-medida"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/armarios-personalizados-a-medida/"]::before {
    background-image: url("/wp-content/uploads/armarios-icono.webp");
}

/* Cocinas */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/muebles-de-cocina-a-medida"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/muebles-de-cocina-a-medida/"]::before {
    background-image: url("/wp-content/uploads/cocinas-icono.webp");
}

/* Dormitorios juveniles */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/habitaciones-juveniles-a-medida"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/habitaciones-juveniles-a-medida/"]::before {
    background-image: url("/wp-content/uploads/dormitorios-juveniles-icono.webp");
}

/* Dormitorios */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/habitaciones-a-medida/"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/habitaciones-a-medida/"]::before {
    background-image: url("/wp-content/uploads/dormitorios-icono.webp");
}

/* Vestidores */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/armario-vestidor-a-medida"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/armario-vestidor-a-medida/"]::before {
    background-image: url("/wp-content/uploads/vestidores-icono.webp");
}

/* Comedores y librerías */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/muebles-de-salon-a-medida"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/muebles-de-salon-a-medida/"]::before {
    background-image: url("/wp-content/uploads/comedores-y-librerias-icono.webp");
}

/* Baños */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/muebles-a-medida-para-bano"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/muebles-a-medida-para-bano/"]::before {
    background-image: url("/wp-content/uploads/banos-icono.webp");
}

/* Locales y oficinas */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/mobiliario-a-medida-para-locales"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/mobiliario-a-medida-para-locales/"]::before {
    background-image: url("/wp-content/uploads/locales-y-oficinas-icono.webp");
}

/* Lacados y barnizados */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/trabajos-de-lacado-y-barnizado"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/trabajos-de-lacado-y-barnizado/"]::before {
    background-image: url("/wp-content/uploads/lacados-y-barnizados-icono.webp");
}

/* Parquet */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/categoria/suelos-de-parquet"]::before,
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a[href*="/suelos-de-parquet/"]::before {
    background-image: url("/wp-content/uploads/parquet-icono.webp");
}

/* Hover */
.fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a:hover {
    color: #888888;
}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 640px) {

    .fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a {
        min-height: 64px;
    }

    .fusion-grid-posts-cards>.post-card:has(.fusion-tb-categories) .fusion-tb-categories a::before {
        width: 46px;
        height: 46px;
        min-width: 46px;
        margin-right: 16px;
    }

}


/* =========================================
 Smartphones (portrait and landscape) 
 =========================================*/
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
    .txtdestacado p {
        font-size: 25px;
        line-height: 1.2em;
    }

    .bordecaja {
        border-left: 1px solid #bdbfc3;
    }

    .bordecajainferior {
        border-bottom: 1px solid #bdbfc3;
    }

    .bordecajaizda {
        border-bottom: 1px solid #bdbfc3;
    }
}

/* =========================================
Estilos especificos para IPAD
/* =========================================*/
@media screen and (max-width: 1180px) {
    .bordecajaizda {
        border-bottom: 1px solid #bdbfc3;
    }
}

/* ==========================================
   ARMARIOS CLOSED
   FOOTER CONTACTO FIJO EN MÓVIL
   ========================================== */

#fijo-footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 9999;
}



/* =========================================
   TABLA COOKIES - ARMARIOS CLOSED
   ========================================= */

.closed-cookies-table-wrapper {
    width: 100%;
    overflow-x: auto;
    margin: 30px 0;
    -webkit-overflow-scrolling: touch;
}

.closed-cookies-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    background: #fff;
    color: #111;
    font-family: inherit;
    font-size: 15px;
    line-height: 1.6;
}

.closed-cookies-table th {
    padding: 17px 20px;
    background: #111;
    color: #fff;
    text-align: left;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.02em;
    border: 1px solid #111;
}

.closed-cookies-table td {
    padding: 17px 20px;
    border: 1px solid #e2e2e2;
    vertical-align: top;
}

.closed-cookies-table tbody tr:nth-child(even) {
    background: #f7f7f7;
}

.closed-cookies-table tbody tr {
    transition: background 0.2s ease;
}

.closed-cookies-table tbody tr:hover {
    background: #f1f1f1;
}

.closed-cookies-table td:first-child {
    font-weight: 600;
    white-space: nowrap;
}

.closed-cookies-table td:nth-child(2),
.closed-cookies-table td:nth-child(3) {
    white-space: nowrap;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 900px) {

    .closed-cookies-table {
        font-size: 14px;
    }

    .closed-cookies-table th,
    .closed-cookies-table td {
        padding: 14px 15px;
    }
}


/* =========================================
   MÓVIL
   ========================================= */

@media (max-width: 640px) {

    .closed-cookies-table-wrapper {
        overflow: visible;
    }

    .closed-cookies-table,
    .closed-cookies-table thead,
    .closed-cookies-table tbody,
    .closed-cookies-table tr,
    .closed-cookies-table th,
    .closed-cookies-table td {
        display: block;
        width: 100%;
    }

    .closed-cookies-table thead {
        display: none;
    }

    .closed-cookies-table tr {
        margin-bottom: 18px;
        border: 1px solid #e2e2e2;
        background: #fff;
    }

    .closed-cookies-table td {
        position: relative;
        padding: 10px 15px 10px 125px;
        min-height: 42px;
        border: 0;
        border-bottom: 1px solid #e8e8e8;
        box-sizing: border-box;
    }

    .closed-cookies-table td:last-child {
        border-bottom: 0;
    }

    .closed-cookies-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 15px;
        top: 10px;
        width: 100px;
        font-weight: 600;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: #666;
    }

    .closed-cookies-table td:first-child {
        white-space: normal;
        font-weight: 600;
        background: #f7f7f7;
    }

    .closed-cookies-table td:nth-child(2),
    .closed-cookies-table td:nth-child(3) {
        white-space: normal;
    }
}

/* =========================================
   Filtros Post Cards Masonry - Animación Fade elegante
   ========================================= */
.fusion-post-cards-masonry .fusion-masonry-posts-cards {
    transition: opacity 0.2s ease, transform 0.2s ease !important;
    opacity: 1;
    transform: translateY(0);
    will-change: opacity, transform;
}

.fusion-post-cards-masonry .fusion-masonry-posts-cards.awb-filtering-fade-out {
    opacity: 0 !important;
    transform: translateY(6px) !important;
}

.fusion-post-cards-masonry .fusion-grid-column,
.fusion-post-cards-masonry .fusion-column-wrapper,
.fusion-post-cards-masonry .post-card,
.fusion-post-cards-masonry .isotope-item {
    transition: none !important;
}

.alturatextoenlaces {
    min-height: 165px;
}


/* =========================================
   Ajustes para resoluciones 1280px, 1366px, 1440px y 1536px
   ========================================= */
@media screen and (min-width: 1025px) and (max-width: 1599px) {

    /* Container Todo el mobiliario */
    .page-id-10 .fusion-builder-row-6,
    .container-todo-mobiliario {
        padding-top: 55px !important;
        padding-bottom: 55px !important;
        padding-left: 30px !important;
        padding-right: 30px !important;
    }

    /* Columna lateral izquierda (Caja negra) */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column.fusion-builder-column-14,
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child {
        width: 26% !important;
        max-width: 26% !important;
        flex: 0 0 26% !important;
        margin-right: 20px !important;
    }

    .page-id-10 .fusion-builder-row-6 .fusion-builder-column-14>.fusion-column-wrapper,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child>.fusion-column-wrapper {
        padding-left: 22px !important;
        padding-right: 22px !important;
        padding-top: 28px !important;
        padding-bottom: 22px !important;
    }

    /* Columna derecha (Cuadrícula con borde) */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column.fusion-builder-column-15,
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child {
        width: calc(74% - 20px) !important;
        max-width: calc(74% - 20px) !important;
        flex: 0 0 calc(74% - 20px) !important;
    }

    .page-id-10 .fusion-builder-row-6 .fusion-builder-column-15>.fusion-column-wrapper,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child>.fusion-column-wrapper {
        padding: 15px 20px !important;
    }

    /* Títulos en la columna izquierda */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-text:first-child,
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-text:has(a[href*="/mobiliario-a-medida/"]),
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-text:has(a[href*="/carpinteros-de-madera/"]),
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .fusion-text:has(a) {
        font-size: 18px !important;
        margin-bottom: 4px !important;
    }

    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-text:has(a[href*="/carpinteros-de-madera/"]),
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .fusion-text:has(a[href*="/carpinteros-de-madera/"]) {
        margin-top: 14px !important;
    }

    /* Subtítulos descriptivos en la columna izquierda */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-text p,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .fusion-text p {
        font-size: 12.5px !important;
        line-height: 1.35 !important;
        margin-bottom: 8px !important;
    }

    /* Menús de la columna izquierda (sin salto de línea) */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .awb-menu .awb-menu__main-a,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .awb-menu .awb-menu__main-a {
        font-size: 13px !important;
        white-space: nowrap !important;
        padding-top: 2.5px !important;
        padding-bottom: 2.5px !important;
    }

    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .awb-menu .awb-menu__main-li,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .awb-menu .awb-menu__main-li {
        margin-bottom: 1px !important;
    }

    /* Separador interior columna izquierda */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-separator,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .fusion-separator {
        margin-top: 10px !important;
        margin-bottom: 10px !important;
    }

    /* Logo Closed al pie de la columna izquierda exclusivamente */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:first-child .fusion-imageframe,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:first-child .fusion-imageframe {
        max-width: 130px !important;
        margin-top: 12px !important;
    }

    /* Imágenes de la columna derecha: asegurar ancho completo de cada tarjeta */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child .fusion-imageframe,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child .fusion-imageframe {
        width: 100% !important;
        max-width: 100% !important;
    }

    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child .fusion-imageframe img,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child .fusion-imageframe img {
        width: 100% !important;
    }

    /* Título y subtítulo en la columna derecha */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child .fusion-title,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child .fusion-title {
        margin-bottom: 6px !important;
    }

    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child h2,
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child .fusion-text:has(h2),
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child h2 {
        font-size: clamp(24px, 2.2vw, 32px) !important;
        line-height: 1.2 !important;
        margin-bottom: 12px !important;
    }

    /* Distribución vertical para alinear filas y evitar espacios vacíos */
    .page-id-10 .fusion-builder-row-6>.fusion-row>.fusion-layout-column:last-child>.fusion-column-wrapper,
    .container-todo-mobiliario>.fusion-row>.fusion-layout-column:last-child>.fusion-column-wrapper {
        justify-content: space-between !important;
    }

    /* Botones sobre las imágenes de servicios */
    .fusion-image-element+div:has(> .boton-servicio) {
        margin-top: -46px !important;
        margin-left: 12px !important;
    }

    .boton-servicio {
        font-size: 15px !important;
        white-space: nowrap !important;
        max-width: calc(100% - 20px) !important;
        display: inline-flex !important;
        align-items: center !important;
    }

    .boton-servicio .fusion-button-text {
        white-space: nowrap !important;
    }

    .boton-servicio .fusion-button-icon-right {
        margin-left: 8px !important;
        font-size: 13px !important;
    }
}

/* =================================
   Estilos especificos para IPAD
   =========================================*/
@media screen and (max-width: 1180px) {
    .bordeizdo {
        border-left: 1px solid #BDBFC3;
    }
}


/* (1440x900) WXGA+ Display */
@media screen and (max-width: 1536px) {
    #menu-menu-principal {
        font-size: 15px;
    }

    .anchopc {
        padding: 40px !important;
    }

    .anchototal {
        /* padding: 0px; */
        width: 100%;
    }

    #menu-menu-principal-1 {
        font-size: 14px;
    }

    #menu-menu-principal li,
    #menu-menu-principal-1 li {
        margin: 9px;
    }
}

/* 1280px */
@media screen and (min-width: 1280px) and (max-width: 1359px) {

    .anchopc {
        padding: 40px !important;
    }

    #menu-menu-principal {
        font-size: 13px;
    }

    #menu-menu-principal-1 {
        font-size: 12px;
    }

    #menu-menu-principal li,
    #menu-menu-principal-1 li {
        margin: 9px;
    }

    .presup {
        padding: 8px !important;
    }

    .anchototal {
        width: 100%;
    }
}