.elementor-146 .elementor-element.elementor-element-453f326{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:87px 87px;--row-gap:87px;--column-gap:87px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-146 .elementor-element.elementor-element-453f326:not(.elementor-motion-effects-element-type-background), .elementor-146 .elementor-element.elementor-element-453f326 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-146 .elementor-element.elementor-element-dc7259f{width:var( --container-widget-width, 150px );max-width:150px;--container-widget-width:150px;--container-widget-flex-grow:0;}.elementor-146 .elementor-element.elementor-element-dc7259f.elementor-element{--align-self:center;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-menu-toggle{margin:0 auto;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main .elementor-item:hover,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main .elementor-item:focus{color:#FFFFFF;fill:#FFFFFF;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#E3A72F;}.elementor-146 .elementor-element.elementor-element-b9533af .e--pointer-framed .elementor-item:before,
					.elementor-146 .elementor-element.elementor-element-b9533af .e--pointer-framed .elementor-item:after{border-color:#E3A72F;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FFFFFF;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#E3A72F;}.elementor-146 .elementor-element.elementor-element-b9533af .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-146 .elementor-element.elementor-element-b9533af .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#E3A72F;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--dropdown{background-color:#FFFFFF;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--dropdown a:hover,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--dropdown a:focus,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--dropdown a.highlighted{background-color:#E4A42D;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--dropdown a.elementor-item-active{background-color:#E4A42D;}.elementor-146 .elementor-element.elementor-element-b9533af div.elementor-menu-toggle{color:#FFFFFF;}.elementor-146 .elementor-element.elementor-element-b9533af div.elementor-menu-toggle svg{fill:#FFFFFF;}.elementor-146 .elementor-element.elementor-element-b9533af div.elementor-menu-toggle:hover, .elementor-146 .elementor-element.elementor-element-b9533af div.elementor-menu-toggle:focus{color:#E4A42D;}.elementor-146 .elementor-element.elementor-element-b9533af div.elementor-menu-toggle:hover svg, .elementor-146 .elementor-element.elementor-element-b9533af div.elementor-menu-toggle:focus svg{fill:#E4A42D;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-146 .elementor-element.elementor-element-b50fab5 .elementor-button{background-color:#FFFFFF00;border-style:solid;border-width:2px 2px 2px 2px;border-color:#E3A72F;border-radius:50px 50px 50px 50px;}.elementor-146 .elementor-element.elementor-element-b50fab5{width:var( --container-widget-width, 221px );max-width:221px;--container-widget-width:221px;--container-widget-flex-grow:0;}.elementor-146 .elementor-element.elementor-element-b50fab5.elementor-element{--align-self:center;}.elementor-146 .elementor-element.elementor-element-b50fab5 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-146 .elementor-element.elementor-element-453f326{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}}@media(min-width:801px){.elementor-146 .elementor-element.elementor-element-453f326{--width:100%;}}@media(max-width:800px){.elementor-146 .elementor-element.elementor-element-453f326{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:23px 23px;--row-gap:23px;--column-gap:23px;--flex-wrap:wrap;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-146 .elementor-element.elementor-element-b9533af{margin:1px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-146 .elementor-element.elementor-element-b9533af.elementor-element{--align-self:center;}.elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-146 .elementor-element.elementor-element-b9533af .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:36px !important;}}/* Start custom CSS for nav-menu, class: .elementor-element-b9533af *//* =========================================
   MENÚ PRINCIPAL – LUMINAZE
========================================= */

.menu-luminaze{
    position: relative;
    z-index: 20;
}

/* Lista principal */

.menu-luminaze .elementor-nav-menu,
.menu-luminaze .e-n-menu,


/* Enlaces */

.menu-luminaze .elementor-item,
.menu-luminaze .e-n-menu-title,
.menu-luminaze a{
    position: relative;

    padding: 14px 18px !important;

    color: #ffffff !important;

    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 700;

    border-radius: 12px;

    transition:
        color .3s ease,
        background .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}

/* Fondo suave al pasar el cursor */

.menu-luminaze .elementor-item:hover,
.menu-luminaze .e-n-menu-title:hover,
.menu-luminaze a:hover{
    color: #ffffff !important;

    background: rgba(255,255,255,.07);

    transform: translateY(-2px);

    box-shadow:
        0 10px 24px rgba(0,0,0,.16);
}

/* Línea animada */

.menu-luminaze .elementor-item::after,
.menu-luminaze .e-n-menu-title::after,
.menu-luminaze a::after{
    content: "";

    position: absolute;
    left: 50%;
    bottom: 5px;

    width: 0;
    height: 3px;

    transform: translateX(-50%);

    border-radius: 20px;

    background: linear-gradient(
        90deg,
        #f5b400,
        #e00078,
        #00b7ff
    );

    transition: width .35s ease;
}

.menu-luminaze .elementor-item:hover::after,
.menu-luminaze .e-n-menu-title:hover::after,
.menu-luminaze a:hover::after{
    width: calc(100% - 28px);
}

/* Página activa */

.menu-luminaze .elementor-item-active,
.menu-luminaze .current-menu-item > a,
.menu-luminaze .current_page_item > a{
    color: #ffffff !important;

    background: rgba(255,255,255,.05);

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.07);
}

.menu-luminaze .elementor-item-active::after,
.menu-luminaze .current-menu-item > a::after,
.menu-luminaze .current_page_item > a::after{
    width: calc(100% - 28px);
}

/* =========================================
   SUBMENÚ
========================================= */

.menu-luminaze .sub-menu{
    padding: 10px !important;

    border-radius: 16px !important;

    background: rgba(12,12,18,.94) !important;

    border: 1px solid rgba(255,255,255,.10);

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    box-shadow:
        0 20px 45px rgba(0,0,0,.35);
}

.menu-luminaze .sub-menu a{
    padding: 12px 16px !important;

    border-radius: 10px;

    font-size: 14px;
}

.menu-luminaze .sub-menu a:hover{
    background: linear-gradient(
        90deg,
        rgba(224,0,120,.18),
        rgba(0,183,255,.14)
    );
}

/* =========================================
   MENÚ MÓVIL COMPACTO – LUMINAZE
========================================= */

@media (max-width: 1024px){

    /* Widget del menú */
    .menu-luminaze{
        position: relative !important;

        width: auto !important;
        min-width: 0 !important;

        margin-left: auto !important;
        flex: 0 0 auto !important;

        background: transparent !important;
        border: none !important;
    }

    /* Quitar espacios extra del widget */
    .menu-luminaze .elementor-widget-container{
        width: auto !important;
        padding: 0 !important;
        margin: 0 !important;

        background: transparent !important;
        border: none !important;
    }

    /* Botón hamburguesa / cerrar */
    .menu-luminaze .elementor-menu-toggle{
        position: relative !important;

        display: flex !important;
        align-items: center;
        justify-content: center;

        width: 52px !important;
        height: 52px !important;

        margin: 0 !important;
        padding: 0 !important;

        border-radius: 15px;

        color: #f5b400 !important;
        background: rgba(255,255,255,.05) !important;

        border: 1px solid rgba(255,255,255,.16) !important;

        box-shadow: none !important;

        transition:
            background .3s ease,
            color .3s ease,
            transform .3s ease;
    }

    .menu-luminaze .elementor-menu-toggle:hover,
    .menu-luminaze .elementor-menu-toggle.elementor-active{
        color: #ffffff !important;

        background: linear-gradient(
            135deg,
            #e00078,
            #8f00ff
        ) !important;

        transform: scale(1.04);
    }

    /* Panel desplegable */
    .menu-luminaze .elementor-nav-menu--dropdown{
        position: absolute !important;

        top: calc(100% + 14px) !important;
        right: 0 !important;
        left: auto !important;

        width: min(340px, calc(100vw - 32px)) !important;
        min-width: 280px !important;
        max-width: calc(100vw - 32px) !important;

        margin: 0 !important;
        padding: 12px !important;

        border-radius: 22px !important;

        background: rgba(7,7,13,.97) !important;
        border: 1px solid rgba(255,255,255,.12) !important;

        box-shadow:
            0 24px 55px rgba(0,0,0,.48) !important;

        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);

        overflow: hidden !important;

        z-index: 9999 !important;
    }

    /* Lista vertical */
    .menu-luminaze .elementor-nav-menu--dropdown ul,
    .menu-luminaze .elementor-nav-menu--dropdown
    .elementor-nav-menu{
        display: flex !important;
        flex-direction: column !important;

        width: 100% !important;
        gap: 5px !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .menu-luminaze .elementor-nav-menu--dropdown li{
        display: block !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Opciones */
    .menu-luminaze .elementor-nav-menu--dropdown a{
        display: flex !important;
        align-items: center !important;

        width: 100% !important;

        padding: 14px 16px !important;

        border-radius: 13px !important;

        color: #ffffff !important;
        background: transparent !important;

        font-size: 17px !important;
        font-weight: 600 !important;

        text-align: left !important;

        transform: none !important;
        box-shadow: none !important;

        transition:
            background .3s ease,
            padding-left .3s ease !important;
    }

    /* Hover y opción activa */
    .menu-luminaze .elementor-nav-menu--dropdown a:hover,
    .menu-luminaze .elementor-nav-menu--dropdown
    .elementor-item-active,
    .menu-luminaze .elementor-nav-menu--dropdown
    .current-menu-item > a{
        color: #ffffff !important;

        padding-left: 22px !important;

        background: linear-gradient(
            90deg,
            rgba(224,0,120,.28),
            rgba(0,183,255,.20)
        ) !important;
    }

    /* Quitar subrayados y efectos del escritorio */
    .menu-luminaze .elementor-nav-menu--dropdown a::before,
    .menu-luminaze .elementor-nav-menu--dropdown a::after{
        display: none !important;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-b50fab5 *//* BOTÓN SUPERIOR: COTIZAR PROYECTO */

.btn-header .elementor-button-wrapper{
    display: inline-flex;
}

.btn-header .elementor-button{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;

    min-width: 205px;
    padding: 15px 28px;

    background: transparent !important;
    background-color: transparent !important;

    border: 2px solid #f6b900;
    border-radius: 999px;

    color: #ffffff !important;
    font-weight: 700;
    line-height: 1.1;

    overflow: hidden;
    transition:
        background-color .3s ease,
        color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}

/* Texto e ícono por encima del efecto */
.btn-header .elementor-button-content-wrapper{
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 18px;
}

/* Fondo amarillo animado */
.btn-header .elementor-button::before{
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        #f6b900,
        #ffd34f
    );

    transform: translateX(-102%);
    transition: transform .35s ease;
    z-index: 1;
}

/* Hover */
.btn-header .elementor-button:hover,
.btn-header .elementor-button:focus{
    background: transparent !important;
    background-color: transparent !important;
    color: #000000 !important;

    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(246,185,0,.28);
}

.btn-header .elementor-button:hover::before,
.btn-header .elementor-button:focus::before{
    transform: translateX(0);
}

/* Flecha */
.btn-header .elementor-button-icon{
    transition: transform .3s ease;
}

.btn-header .elementor-button:hover .elementor-button-icon{
    transform: translateX(5px);
}

/* Quitar contornos extra */
.btn-header .elementor-button:focus{
    outline: none !important;
}/* End custom CSS */