/*Tipografías*/
@font-face {
    font-family: "Gotham-Bold";
    src: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Bold.woff2) format("woff2"), url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Bold.woff) format("woff"), url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Bold.ttf) format("truetype");
}

@font-face {
    font-family: "Gotham-Medium";
    src: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Medium.woff2) format("woff2"), url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Medium.woff) format("woff"), url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Medium.ttf) format("truetype");
}

@font-face {
    font-family: "Gotham-Book";
    src: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Book.woff2) format("woff2"), url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Book.woff) format("woff"), url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/fonts/Gotham-Book.ttf) format("truetype");
}

/*Colores generales*/
:root {
    --color-primary: #025A83;
    --color-naranja: #FF9E0F;
    --color-secondary: #F39718;
    --color-naranja-oscuro: #EC842B;
    --color-celeste: #004471;
    --color-gris: #444444;
    --color-violeta: #5e1aa0;
    --color-oro: #7a4800;
    --color-ocre: #9F8E81;
    --color-verde: #036b4f;
    --color-cian: #015670;
    --color-azul: #2563EB;
    --color-azul-oscuro: #0414C9;
    --color-celeste: #00A6FF;
    --color-hover: #0056b3;
    --color-blanco: #ffffff;
    --color-negro: #000;
    --color-azul-home: #025a82;
    --color-azul-home-alt: #017cbf;
    --color-negro-amz: #201F21;
    --font-normal: 'Gotham-Book', sans-serif;
    --font-bold: 'Gotham-Bold', sans-serif;
}

.icon-ayuda-naranja,
.icon-interesa-naranja,
.icon-naranja img {
    filter: brightness(0) saturate(100%) invert(76%) sepia(40%) saturate(6332%) hue-rotate(345deg) brightness(99%) contrast(87%);
}

.icon-ayuda-celeste,
.icon-interesa-celeste,
.icon-celeste img {
    filter: brightness(0) saturate(100%) invert(14%) sepia(58%) saturate(6133%) hue-rotate(232deg) brightness(88%) contrast(112%);
}

.icon-ayuda-azul,
.icon-interesa-azul,
.icon-azul img {
    filter: brightness(0) saturate(100%) invert(14%) sepia(58%) saturate(6133%) hue-rotate(232deg) brightness(88%) contrast(112%);
}

.icon-ayuda-cian,
.icon-interesa-cian,
.icon-cian img {
    filter: brightness(0) saturate(100%) invert(21%) sepia(52%) saturate(2830%) hue-rotate(171deg) brightness(91%) contrast(101%);
}

.icon-ayuda-verde,
.icon-interesa-verde,
.icon-verde img {
    filter: brightness(0) saturate(100%) invert(31%) sepia(54%) saturate(1347%) hue-rotate(129deg) brightness(85%) contrast(102%);
}

.icon-ayuda-violeta,
.icon-interesa-violeta,
.icon-violeta img {
    filter: brightness(0) saturate(100%) invert(7%) sepia(70%) saturate(7217%) hue-rotate(271deg) brightness(118%) contrast(93%);
}

/*Estilos generales*/
body {
    margin: 0;
    font-family: 'Gotham-Book', sans-serif;
    overflow-x: hidden;
    width: 100vw;
}

p {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.6;
    color: inherit;
    margin: 0;
}

section .container {
    max-width: 1500px !important;
}

section .container-sm,
.container-sm {
    max-width: 1140px !important;
}

h1 {
    font-family: 'Gotham-Bold', sans-serif;
}

.heading-1 {
    font-family: 'Gotham-Bold', sans-serif;
    font-size: 60px;
    line-height: 75px;
}

h2 {
    font-family: 'Gotham-Medium', sans-serif;
}

.heading-3 {
    font-family: 'Gotham-Bold', sans-serif;
    font-size: 40px;
    line-height: 38px;
}

h4,
.heading-4 {
    font-family: 'Gotham-Medium', sans-serif;
    font-size: 28px;
    line-height: 36px;
}

h6,
.heading-6 {
    font-family: "Gotham-Medium", sans-serif;
}

.heading-6 {
    font-size: 16px;
    line-height: 18px;
    @media (width > 992px) {
        font-size: 22px;
        line-height: 20px;
    }
}

/* Custom headings updated */

.heading-v2 {
    &[class^="heading-"] {
        --heading-bcolor: var(--color-naranja);
        strong {
            font-weight: inherit;
            color: var(--heading-bcolor);
        }

        &.b-azul {
            --heading-bcolor: var(--color-primary);
        }
    }
    &.heading-2, &.heading-3 {
        font-family: var(--font-bold);
        line-height: 1;
    }
    &.heading-2 {
        font-size: 29.03px;
    }
    &.heading-3 {
        font-size: 24.19px;
    }

    @media (width > 992px) {
        &.heading-2 {
            font-size: 40px;
            line-height: 38px;
        }
        &.heading-3 {
            font-size: 41.8px;
            line-height: 44px;
        }
    }
}

p {
    font-family: 'Gotham-Book', sans-serif;
}

.text-medium {
    font-family: 'Gotham-Medium', sans-serif;
    color: #000;
}

.text-grey {
    color: #5E5E5E;
}

.text-blue {
    color: #007cbf;
}

.text-bold,
strong {
    font-weight: 500;
    font-family: 'Gotham-Bold', sans-serif;
}

small,
.small {
    font-size: 80%;
    font-weight: 400;
}

/* Botones rewrite */
.btn.btn-primary {
    --bs-btn-font-family: var(--font-bold);
    --bs-border-radius: 9px;
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--color-secondary);
    --bs-btn-hover-bg: #EDEDED;
    --bs-btn-active-bg: #EDEDED;
    --bs-btn-hover-color: var(--color-negro-amz);
    --bs-btn-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-border-color: transparent;
    --bs-btn-padding-x: 16px;
    --bs-btn-padding-y: 11px;
    --bs-btn-font-weight: 500;
    --bs-btn-font-size: 20.16px;
    --bs-btn-line-height: 24px;

}
.btn.btn-blue {
    --bs-btn-font-family: var(--font-bold);
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--color-primary);
    --bs-btn-border-color: var(--color-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-naranja-oscuro);
    --bs-btn-padding-x: 24px;
    --bs-btn-padding-y: 8px;
    --bs-btn-font-size: 20.16px;
    --bs-btn-font-weight: 500;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
    box-shadow: 3px 4px 15px 0px #222;
}
.btn.btn-secondary {
    font-family: var(--font-normal);
    --bs-btn-color: var(--color-primary);
    --bs-btn-bg: #fff;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-border-color: transparent;
    --bs-btn-hover-color: #fff;
    --bs-btn-padding-x: 24px;
    --bs-btn-padding-y: 8px;
    /*--bs-btn-font-size: 19pt;*/
    --bs-btn-font-size: 16.8px;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
    box-shadow: 3px 4px 15px 0px #222;
}
.btn.btn-alt {
    --bs-btn-font-family: var(--font-bold);
    --bs-btn-color: var(--color-negro-amz);
    --bs-btn-bg: #EDEDED;
    --bs-btn-border-color: #EDEDED;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-hover-border-color: var(--color-negro-amz);
    --bs-btn-padding-x: 24px;
    --bs-btn-padding-y: 8px;
    --bs-btn-font-size: 20.16px;
    --bs-btn-font-weight: 500;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-border-color);
    box-shadow: 3px 4px 15px 0px #222;
}

/*Tamaños de texto*/
.tt-14 {
    font-size: 14px;
}

.tt-16 {
    font-size: 16px;
}

.fs-10 {
    font-size: 10px !important;
}


/*Tipografía*/
.gm {
    font-family: 'Gotham-Medium' !important;
    font-weight: 500 !important;
}

/*Oscurecidos*/
[class*="bg-"][class*="icono-"] img {
    width: 30px;
    opacity: 0.4;
    margin: 0px 18px;
}


/*Fondos de color*/
.bk-white {
    background-color: #ffffff;
}

.bk-extra-dark-blue {
    background-color: #001B35;
}

@media (max-width: 576px) {

    h1.hero-title,
    .heading-1 {
        font-size: 36px !important;
        line-height: 45px !important;
    }

    h4,
    .heading-4 {
        font-size: 20px;
        line-height: 33px;
    }


}

/* Slick slider */
.slick-slider .slick-dots {
    transform: translateY(20px);
}
.slick-slider .slick-dots li button:before {
    font-size: 15px;
}
.slick-slider .slick-dots li.slick-active button:before {
    color: var(--color-secondary);
    opacity: 1;
}
.slick-slider .slick-dots li:not(.slick-active) button:hover:before, .slick-slider .slick-dots li:not(.slick-active) button:focus:before {
    color: var(--color-secondary);
    opacity: .75;
}


/* Cabecera v2 */
.hero-section-v2,
.hero-section-v2 .position-absolute {
    /*padding-block-start: 80px;*/
}

@media (width > 1400px) {

    .hero-section-v2,
    .hero-section-v2 .position-absolute {
        /*padding-block-start: 100px;*/
    }

    .logged-in .hero-section-v2,
    .logged-in .hero-section-v2 .position-absolute {
        /*padding-block-start: 60px;*/
    }
}

.hero-section-v2 .position-absolute {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.hero-section-v2 .hero-title {
    color: #5E5E5E;
    margin-block: 110px auto;
    font-weight: 700;
}

.hero-section-v2 .hero-subtitle {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
    color: #fff;
    padding-inline: 15px;
    padding-block-end: 15px;
}

.hero-section-v2 .position-absolute>* {
    font-family: 'Gotham-Medium';
    margin-inline: auto;
    max-width: 992px;
    width: 100%;
    display: block;
}

.hero-section-v2 .position-absolute>*:last-child {
    margin-block-end: 20px;
}

.hero-section-v2 .position-absolute>.btn.btn-secondary {
    width: 285px;
    height: 36px;
    line-height: 36px;
    --bs-btn-padding-x: 0;
    --bs-btn-padding-y: 0;
}

.hero-section-v2 .hero-subtitle span {
    /*display: block;*/
}

.hero-section-v2 .hero-subtitle span strong {
    font-family: inherit;
    font-style: italic;
}

@media (width > 1200px) {
    .hero-section-v2 .position-absolute>.btn.btn-secondary {
        --bs-btn-font-size: 20px;
        height: 48px;
        line-height: 48px;
    }

    .hero-section-v2 .position-absolute>*:last-child {
        margin-block-end: 60px;
    }
}

@media (width > 1400px) and (width < 1600px) {
    .right-tools {
        position: relative;
    }

    .right-tools .gttranslate {
        left: auto !important;
        right: 160%;
        top: -50% !important;
    }

    .gttranslate+.contact-button .label-text {
        display: none;
    }
}

@media (width > 1900px) {
    .hero-section-v2 .hero-title {
        font-size: 105px;
        line-height: 1.2;
    }

    .hero-section-v2 .hero-subtitle {
        font-size: 25px;
    }
}

/* Hero contact variations */
.page-template-page-contacto .hero-title.text-center {
    text-align: center                                                                                      ;
}
.page-template-page-contacto .form-contact.bk-white {
    position: relative;
    margin-block-start: -150%;
}

@media (width < 991.99px) {
    .page-template-page-contacto .hero-section-v2 .position-absolute>*:last-child {
        display: none;
        *margin-block-end: 45%;
    }
    .page-template-page-contacto .footer {
        margin-block-start: 50px;
    }
}

@media (width > 992px) {
    .page-template-page-contacto .form-contact.bk-white {
        position: relative;
        margin-block-start: -150%;
    }

    div.w-desktop-50 {
        width: 50% !important;
    }
    .page-template-page-contacto .hero-section-v2 .text-center {
        text-align: left !important;
        padding-inline: 4vw;                                                                                      ;
    }
}
@media (width > 1650px) {
    .page-template-page-contacto .form-contact.bk-white {
        margin-block-start: -170%;
    }
}

@media (width > 1900px) {
    .page-template-page-contacto .form-contact.bk-white {
        margin-block-start: -200%;
    }
}

/*Cabecera*/
.header-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.page-template-page-opiniones .header-top {
    background-color: #03294F;
}

.header-top.scrolled {
    background-color: #03294F;
    transition: background-color 0.3s ease;
}

.modal-open.header-top.scrolled {
    background-color: transparent;
}

.cabecera-naranja {
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-naranja.svg) no-repeat top center;
    background-size: contain;
    height: 730px;
}

.cabecera-azul {
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-azul.svg) no-repeat top center;
    background-size: contain;
    height: 900px;
    width: 100%;
}

.cabecera-celeste {
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-azul-claro.svg) no-repeat top center;
    background-size: contain;
    height: 900px;
    width: 100%;
}

.cabecera-celeste-mobile {
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-celeste-mobile.svg) no-repeat top center;
    background-size: contain;
    height: 900px;
    width: 100%;
}

.fondo-naranja {
    background-color: var(--color-naranja);
}

.fondo-azul {
    background-color: var(--color-azul);
}

.fondo-celeste {
    background-color: var(--color-celeste);
}

.fondo-violeta {
    background-color: var(--color-violeta);
}

.fondo-ocre {
    background-color: var(--color-ocre);
}

@media (max-width: 576px) {
    .cabecera-naranja {
        background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-naranja-mobile.svg) no-repeat top center;
    }

    .cabecera-azul {
        background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-azul.svg) no-repeat top center;
    }

    .cabecera-celeste {
        background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/hero/cabecera-azul-claro.svg) no-repeat top center;
    }
}

.container.header-inner {
    max-width: 100%;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    padding: 2rem 5rem 2rem 2rem;
    box-sizing: border-box;
    padding-block: 1.54rem;
    /* calculated to have 100px on desktop*/
}

@media (max-width: 1399px) {
    .header-top .container.header-inner {
        padding-block: .91rem;
        /* calculated to have 80px on mobile*/
    }

    .header-top .gttranslate {
        top: 1.2rem !important;
    }
}
@media (width > 992px) and (width < 1700px) {
    /* Macbook fix*/
    .container.header-inner .main-nav {
        transform: translateX(-5%);
    }

}

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: transparent;
    transition: background 0.3s ease;
    z-index: 10000;
}

.site-header.scrolled {
    background: #032b4b;
    /* o blanco si cambia en scroll */
}

body.menu-open .site-header {
    background: #032b4b;
    /* para que se vea sobre el móvil */
}

.language-selector {
    display: flex;
    align-items: center;
}

.navbar-toggler {
    background: transparent;
    border: none;
    font-size: 24px;
    cursor: pointer;
}

.navbar-toggler-icon {
    display: inline-block;
    width: 30px;
    height: 3px;
    background: #fff;
    position: relative;
    background: transparent !important;
}

.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3px;
    background: #fff;
    left: 0;
}

.navbar-toggler-icon::before {
    top: -10px;
}

.navbar-toggler-icon::after {
    bottom: -10px;
}

ul#menu-menu-principal {
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    margin-bottom: 0rem;
}

.menu-item a {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-family: 'Gotham-Medium', sans-serif;
    color: white;
    text-decoration: none;
}

.page-template:has(.hero-section-v2) .header-top:not(.scrolled) {
    /*background-color: #fff;*/
}

.page-template-page-home .site-header:not(.scrolled) .menu-item a,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .menu-item a {
    color: var(--bs-heading-color);
}

.page-template-page-home .site-header:not(.scrolled) .navbar-toggler-icon::before,
.page-template-page-home .site-header:not(.scrolled) .navbar-toggler-icon::after {
    background-color: var(--bs-body-color);
}

.page-template-page-home .site-header:not(.scrolled) .navbar-nav>.menu-item a:hover,
.page-template-page-home .site-header:not(.scrolled) .navbar-nav>.menu-item a:focus,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .navbar-nav>.menu-item a:hover,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .navbar-nav>.menu-item a:focus {
    color: var(--color-secondary) !important;
}

.page-template-page-home .site-header:not(.scrolled) .contact-button a,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .contact-button a {
    color: #656565;
    font-weight: 700;
    font-size: 16.8px;
    line-height: 20px;
}

.page-template-page-home .site-header:not(.scrolled) .contact-button a .icon-talk path,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .contact-button a .icon-talk path {
    fill: var(--color-primary);
}

.page-template-page-home .site-header:not(.scrolled) .gttranslate .gt-current,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .gttranslate .gt-current {
    background-color: #e2e2e2;
}

.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .navbar-toggler-icon::before,
.page-template:has(.hero-section-v2) .header-top:not(.scrolled) .navbar-toggler-icon::after {
    background-color: var(--color-primary);
}

.page-template-page-home .site-header:not(.scrolled) .site-logo,
.page-template:has(.hero-section-v2) .site-header:not(.scrolled) .site-logo {
    background-image: var(--lfdi-logo-global);
    background-size: cover;
}

.page-template-page-home .site-header:not(.scrolled) .site-logo img,
.page-template:has(.hero-section-v2) .site-header:not(.scrolled) .site-logo img {
    visibility: hidden;
}

.menu-item a:hover {
    color: rgba(255, 255, 255, 0.75);
}

@media (min-width: 992px) {
    .main-nav .dropdown {
        position: relative;
    }

    .main-nav .dropdown-menu {
        display: block;
        position: absolute;
        top: 100%;
        left: 0;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.2s ease, visibility 0.2s ease;
        pointer-events: none;
    }

    .main-nav .dropdown:hover>.dropdown-menu {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        /*transform: translateY(20px) !important;*/
        transform: translateY(5px) !important;
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
        left: 0;
        margin-top: 20px !important;
        width: 33rem;
        /*transform: translateY(0) !important;*/
    }

    .main-nav .dropdown-toggle:focus,
    .main-nav .dropdown-toggle:hover {
        outline: none !important;
        box-shadow: none !important;
    }

    .nav-link:focus,
    .nav-link:hover {
        color: rgba(255, 255, 255, 0.7) !important;
    }

}

@media (min-width: 1900px) {
    .main-nav .dropdown:hover>.dropdown-menu {
        transform: translateY(20px) !important;
    }
}

/*.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
    color: #fff!important;
}*/

.dropdown-menu li.menu-item a {
    color: #212529;
    font-family: 'Gotham-Book';
}

.dropdown-menu li.menu-item.menu-item-type-post_type.nav-item:hover {
    background-color: #032b4b;
}

.dropdown-menu li.menu-item.menu-item-type-custom.menu-item-object-custom.nav-item:hover a {
    color: #fff;
}

.mobile-menu {
    display: none;
    background: #032b4b;
    padding: 1rem;
}

.mobile-menu .mobile-nav li {
    list-style: none;
    margin: 1rem 0;
}

.mobile-menu .mobile-nav a {
    color: white;
    font-weight: bold;
    text-decoration: none;
    font-size: 24px;
    font-family: "Gotham-Book", sans-serif !important;
    letter-spacing: 1px;
}

.mobile-menu .mobile-nav li::after {
    content: "•••";
    display: block;
    color: #00cfff;
    font-size: 2rem;
    text-align: center;
    margin-top: 0.2rem;
}

.hero-section.page-home {
    /*background: url(https://lfdipruebas.moovity.io/wp-content/uploads/2025/06/inventar.png) no-repeat top center;*/
    /*background-size: cover;*/
    /*height: 920px;*/
    padding-block-start: 0px !important;
    background: url(//lafabricadeinventos.com/wp-content/uploads/2026/02/Rediseno-de-Web_FondoPapel.png) no-repeat center;
    background-size: cover;
}

.hero-section.page-lfdi {
    padding-top: 200px;
}

@media (max-width: 576px) {
    .mobile-menu {
        padding-top: 1rem !important;
    }

    .menu-open .menu-item a {
        color: #fff !important;
    }

    .hero-section.page-lfdi {
        padding-top: 150px;
        border-bottom-right-radius: 10px;
        border-bottom-left-radius: 10px;
    }

    .hero-section.page-lfdi {
        padding-top: 100px;
    }
}

.contact-button a {
    color: #fff;
    font-family: 'Gotham-Medium';
    text-decoration: none;
    display: inline-block;
    transition: transform 0.3s ease;
}

.contact-button a .icon-talk {
    margin-inline-end: .2rem;
}

.contact-button a .icon-talk path {
    fill: #fff;
}

.contact-button a:hover {
    transform: translateY(-3px);
}

.home-services-buttons .contact-button {
    margin-left: 0px !important;
}

.breadcumbs-container {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 30px;
    padding: 10px 20px;
    color: #0c2340;
    font-family: "Gotham-Book", sans-serif;
    font-size: 16px;
    text-decoration: none;
    gap: 8px;
}

/*.breadcumbs-container::before {
    content: "";
    display: inline-block;
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/house.svg) no-repeat center center;
    background-size: contain;
    width: 16px;
    height: 16px;
}*/

@media (max-width: 1450px) {
    .breadcumbs-container::before {
        width: 16px;
        height: 16px;
    }
}


/* Mostrar menú móvil al hacer clic */
.menu-open .mobile-menu {
    display: block;
}

/* --- Desktop by default --- */
.main-nav {
    display: block;
}

.navbar-toggler,
.mobile-menu {
    display: none;
}

/* --- Mobile (breakpoint: max 991px) --- */
/* Dec 2025 */
@media (max-width: 1399px) {

    /*@media (max-width: 991px) {*/
    .mobile-menu {
        display: flex;
    }

    .scrolled .container.header-inner {
        background-color: #03294e;
    }

    .scrolled ol,
    ul {
        padding-left: 0rem !important;
    }

    .main-nav {
        display: none;
    }

    .navbar-toggler {
        display: block;
        background: none;
        border: none;
        font-size: 24px;
        color: #fff;
    }

    .navbar-toggler-icon {
        width: 30px;
        height: 3px;
        background: #fff;
        display: block;
        position: relative;
    }

    .navbar-toggler-icon::before,
    .navbar-toggler-icon::after {
        content: '';
        width: 30px;
        height: 3px;
        background: #fff;
        position: absolute;
        left: 0;
    }

    .navbar-toggler-icon::before {
        top: 5px;
    }

    .navbar-toggler-icon::after {
        top: 15px;
    }

    .mobile-menu {
        display: none;
        background: #032b4b;
        padding: 1.5rem;
    }

    .mobile-menu .mobile-nav li {
        list-style: none;
        margin-bottom: 1.2rem;
        margin-block: 0;
    }

    .mobile-menu .mobile-nav li::after {
        content: "•••";
        display: block;
        text-align: center;
        color: #00cfff;
        font-size: 1.2rem;
        margin-top: 0.2rem;
    }

    .mobile-menu .mobile-nav a {
        color: white;
        text-decoration: none;
        font-weight: bold;
    }

    body.menu-open .mobile-menu {
        display: block;
        margin-top: 5rem;
    }

    .header-top .contact-button {
        display: none;
    }

    /* Menú móvil superpuesto */
    .mobile-menu {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #032b4b;
        z-index: 10000;
        padding-top: 6rem;
        overflow-y: auto;
        display: none;
    }

    .mobile-menu .mobile-nav {
        text-align: center;
    }

    body.menu-open .mobile-menu {
        display: block;
    }

    body.menu-open {
        overflow: hidden;
    }

    .mobile-menu .mobile-nav .sub-menu {
        display: none !important;
    }

}

/*Estilos del plugin GTranslate*/
.gttranslate {
    left: 78% !important;
    top: 2.3rem !important;
    z-index: 1000000;
    position: absolute;
    font-family: sans-serif;
    top: 1.7rem !important;
}

/* Contenedor del desplegable (por defecto oculto) */
.gttranslate .gtranslate_wrapper {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    border: 1px solid #ccc;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    padding: 5px 0;
    min-width: 140px;
    z-index: 9999;
}

/* Mostrar opciones al hacer clic */
.gttranslate.open .gtranslate_wrapper {
    display: block;
}

/* Botón con idioma actual */
.gttranslate .gt-current {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    cursor: pointer;
    padding: 8px 12px;
    background: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 5px;
    min-width: 100px;
}

/* Icono bandera actual */
.gttranslate .gt-current img {
    width: 20px;
    height: auto;
}

/* Flecha */
.gttranslate .arrow-down {
    border: solid #333;
    border-width: 0 2px 2px 0;
    padding: 4px;
    transform: rotate(45deg);
    transition: transform 0.2s;
    margin-left: auto;
}

.gttranslate.open .arrow-down {
    transform: rotate(-135deg);
}

/* Opciones de idioma */
.gtranslate_wrapper a.glink {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: background 0.2s;
}

@media (max-width: 1800px) {
    .gttranslate {
        left: 82% !important;
    }
}

@media (max-width: 1650px) {
    .gttranslate {
        left: 80% !important;
    }

    li.menu-item.menu-item-type-post_type.nav-item a.nav-link {
        padding: 0px;
    }

    .menu-item {
        /*margin: -5px !important;*/
    }

    .dropdown-menu a.nav-link {
        padding: 0.5rem !important;
    }

    .contact-button {
        /*margin-left: 5rem!important;*/
    }

}

@media (max-width: 1560px) {
    .gttranslate {
        left: 78% !important;
    }

    .container-sm .contact-button {
        margin-left: 0px !important;
    }

}

@media (max-width: 1320px) {
    .gttranslate {
        left: 70% !important;
        top: 2rem !important;
    }
}

@media (max-width: 700px) {
    .gttranslate {
        left: 60% !important;
        top: 2rem !important;
    }
}

@media (max-width: 450px) {
    .container.header-inner {
        padding: 2rem 1rem 2rem 2rem;
    }

    .gttranslate {
        left: 55% !important;
        top: 2rem !important;
    }
}

/*Estilos de la modal*/
.custom-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    width: 100vw;
    min-height: 100vh;
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/bk-modal-contacto.svg) #03294f no-repeat top left;
}

.custom-modal-content {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem;
}

.custom-modal-body {
    background: transparent;
    padding: 2rem;
    border-radius: 10px;
    max-width: 1440px;
    width: 100%;
    display: flex;
    flex-direction: row;
    margin: 0px auto;
    justify-content: space-around;
    align-items: center;
}

.close-modal {
    position: absolute;
    top: 7rem;
    right: 3rem;
    font-size: 2rem;
    color: #fff;
    cursor: pointer;
    z-index: 9999;
}

dialog.custom-modal .close-modal {
    appearance: none;
    border-width: 0;
    background-color: transparent;
}

.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9998;
}
body:has(>.modal-overlay[style="display: block;"]) {
    overflow: hidden;
}

#contactModal {
    background: var(--bk-contact-modal) no-repeat center;
    background-size: 100% auto;
    z-index: 10000;
    padding: 0;
    .close-modal {
        color: #4C4C4C;
    }
    .custom-modal-content {
        padding: 0;
    }
    .custom-modal-body {
        max-width: 100%;
        height: 100%;
        padding: 0;
        padding-block-start: 2rem;
        justify-content: flex-start;
        .custom-modal-innercontent {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            margin-inline-start: 0;
            height: 100%;
            padding: 0;
            padding-inline: 15px;
            .close-modal {

            }
            .custom-modal-title, .custom-modal-text {
                font-family: 'Gotham-Medium';
            }
            .custom-modal-title {
                color: #5E5E5E;
                font-weight: 700;
                font-size: 60px;
                line-height: 1.1667;
                letter-spacing: 0%;
                margin-block: calc(110px - 2rem) auto;
            }
            .custom-modal-text {
                font-weight: 500;
                font-size: 16px;
                line-height: 1.2;
                /*letter-spacing: -5%;*/
            }
            .custom-modal-text > * {
                font: inherit;
                line-height: inherit;
                letter-spacing: inherit;
                color: #fff;
                strong {
                    font-family: inherit;
                    font-weight: 700;
                    font-style: italic;
                }

            }
        }
    }
    @media (width < 991.98px) {
        background-attachment: local;
        background-size: contain;
        background-position-y: top;
        background-color: var(--bs-body-bg);
        z-index: 100000;
        border: 0;
        overflow: hidden auto;
        .close-modal {
            top: 0;
        }
        .custom-modal-body {
            .custom-modal-innercontent {
                height: auto;
                text-align: center;
                + .form-contact {
                    margin-inline: 12px;
                }
                .custom-modal-title {
                    margin-block-end: 45vw;
                    font-size: 36px;
                }
                .custom-modal-text {
                    text-align: center;
                }
            }
            .form-contact {
            padding-block-end: 15vw;
            }
        }
        .custom-modal-content {
            padding-inline: 0;
        }
    }
    @media (width > 992px) {
        .custom-modal-body {
            max-width: 100%;
            .custom-modal-innercontent {
                width: 50%;
                padding-inline: 4vw;
                .custom-modal-text {
                    margin-block-end: 60px;
                }
            }
            .form-contact {
                width: 421px;
                max-width: 50%;
            }
        }
    }
    @media (width > 1500px) {
        .custom-modal-body {
            .custom-modal-innercontent {
                .custom-modal-title {
                    font-size: 105px;
                }
            }
            .form-contact {
                width: 496px;
            }
        }
    }
    @media (width > 1900px) {
        .custom-modal-body {
            .custom-modal-innercontent {
                .custom-modal-text {
                    font-size: 25px;
                    /*line-height: 27px;*/
                }
            }
        }
    }
}

#equipoModal {
    min-height: 100px !important;
    background: #fff;
    height: 43vh;
    margin-top: 50%;
    margin-left: 1rem;
    width: 92vw;
    border-radius: 5px;
    padding-left: 1rem;
    padding-right: 1rem;
}

#equipoModal .close-modal {
    top: 0rem;
    color: black;
}

.cta-modal {
    display: none;
}

@media (max-width: 992px) {
    .custom-modal-body {
        flex-direction: column;
        padding-top: 30rem;
    }

}

@media (max-width: 576px) {
    .custom-modal-body {
        padding-left: 0rem;
        padding-right: 0rem;
    }

    .close-modal {
        right: 1rem;
    }

    .cta-modal {
        display: block;
    }

    input.wpcf7-form-control.wpcf7-submit.has-spinner.btn-orange {
        width: 100%;
    }
}


/*Estilos formularios*/
.form-contact {
    border-radius: 20px;
    -webkit-box-shadow: 0px 2px 32px rgba(116, 115, 114, 0.16);
    box-shadow: 0px 2px 32px rgba(116, 115, 114, 0.16);
    padding: 25px;
    background-color: #fff;
}

.form-contact {
    .form-group:not(.form-check) {
        label {
            font-family: 'Gotham-Medium', sans-serif;
            line-height: 24px;
            letter-spacing: 0%;
            vertical-align: middle;
            color: var(--color-primary);
        }
        .wpcf7-form-control {

        }
        .form-control-info {
            font-weight: 400;
            font-size: 16px;
            line-height: 24px;
            letter-spacing: 0%;
            vertical-align: middle;
        }
    }
    .wpcf7-form-control.wpcf7-submit {
        font-family: 'Gotham-Medium', sans-serif;
        font-weight: 700;
        font-size: 16.8px;
        line-height: 20px;
        letter-spacing: 0%;
        text-align: center;
        vertical-align: middle;
        background-color: var(--color-primary);
    }
}

@media (min-width: 576px) {
    .form-contact {
        padding: 30px;
    }
}

.form-hablemos input {
    height: 48px;
}

.form-hablemos input[type="checkbox"] {
    height: 23px;
}

.form-hablemos img[alt="bk-services-single-2"] {
    position: absolute;
    z-index: -2;
    left: 0;
    top: 50%;
}

.form-hablemos img[alt="bk-services-single-3"] {
    position: absolute;
    z-index: -2;
    right: 0;
    top: 90%;
}

@media (min-width: 576px) {
    .form-hablemos img[alt="bk-services-single-3"] {
        top: 40%;
    }
}

.form-hablemos .form-comercializacion .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #4F4E4D;
    color: white;
}

.form-hablemos .form-comercializacion .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-comercializacion .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-comercializacion .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-comercializacion .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-comercializacion .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-comercializacion .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-web .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #1B7F86;
    color: white;
}

.form-hablemos .form-web .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-web .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-web .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-web .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-web .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-web .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-marca .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #0D3466;
    color: white;
}

.form-hablemos .form-marca .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-marca .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-marca .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-marca .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-marca .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-marca .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-industrial .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #6F6760;
    color: white;
}

.form-hablemos .form-industrial .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-industrial .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-industrial .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-industrial .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-industrial .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-industrial .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-estudio-patentes .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #D27D00;
    color: white;
}

.form-hablemos .form-estudio-patentes .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-estudio-patentes .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-estudio-patentes .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-estudio-patentes .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-estudio-patentes .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-estudio-patentes .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-financiacion .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #008F54;
    color: white;
}

.form-hablemos .form-financiacion .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-financiacion .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-financiacion .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-financiacion .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-financiacion .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-financiacion .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-prototipos .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #450082;
    color: white;
}

.form-hablemos .form-prototipos .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-prototipos .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-prototipos .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-prototipos .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-prototipos .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-prototipos .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-registro-patentes .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #0274B1;
    color: white;
}

.form-hablemos .form-registro-patentes .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-registro-patentes .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .form-hablemos .form-registro-patentes .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-registro-patentes .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.form-hablemos .form-registro-patentes .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-hablemos .form-registro-patentes .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.newsletter input.form-control {
    height: 48px;
    border-radius: 8px;
}

.advice-card .form-group {
    width: 100%;
}

.advice-card .form-group button {
    width: 100%;
}

.advice-card .form-group input.form-control {
    height: 40px;
    border-radius: 8px;
}

.advice-card .form-group input.btn-orange {
    padding: 10px 25px !important;
}

@media (min-width: 992px) {
    .advice-card .form-group {
        width: auto;
    }

    .advice-card .form-group button {
        width: auto;
    }

    .advice-card .form-group input.btn-orange {
        padding: 10px 25px !important;
    }
}

.form-hablemos .wpcf7-list-item.first.last {
    margin: 0px;
}

.form-hablemos .wpcf7-list-item.first.last label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.form-hablemos .wpcf7-list-item.first.last label span {
    padding-left: 5px !important;
}

@media (min-width: 768px) {
    .form-hablemos .wpcf7-list-item.first.last label {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.form-hablemos-landing {
    padding: 0px 15px;
    border-radius: 10px;
}

.form-hablemos-landing label {
    color: white;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    background-color: #ffb900;
    font-size: 12px;
    margin: 0px 0px 15px 0px;
}

.wpcf7-not-valid-tip {
    margin-top: -10px;
    margin-bottom: 20px;
    font-size: 12px;
    background-color: #dc3232;
    color: white;
    padding: 3px;
}

/*Footer*/
.footer-lfdi a {
    color: #5E5E5E;
    text-decoration: none;
}

.footer-lfdi a:hover {
    opacity: 0.7;
}

ul.footer-menu {
    padding-left: 0rem !important;
}

.footer-menu li {
    margin-bottom: 0.6rem;
    list-style: none;
}

.footer-menu a {
    padding-left: 0px;
    text-decoration: none;
    color: #5E5E5E;
    font-family: 'Gotham-Book', sans-serif;
}

.footer-menu a:hover {
    text-decoration: none;
    color: #007bff;
}

.bottom-footer a {
    color: #000;
    text-decoration: none;
}

.bottom-footer a:hover {
    color: #0056b3;
    text-decoration: underline !important;
}

.bloq-derechos {
    color: #212529;
    font-family: 'Gotham-Book';
}

@media (max-width:576px) {
    .footer {
        border-top-right-radius: 25px;
        border-top-left-radius: 25px;
        padding: 50px 0px;
        margin-top: -25px;
    }
}

/*Servicios*/
.home-services-buttons {
    padding: 600px 0px 150px 0px;
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/servicios/bk-otros-servicios.svg) no-repeat bottom center;
    background-size: cover;
    margin-top: -575px;
}

.tarjeta-servicio {
    background-color: #f5f5f5;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: block;
    padding: 25px 20px;
    margin-right: 1rem !important;
    margin-bottom: 1rem;
    min-height: 236px;
}

.tarjeta-servicio:nth-of-type(2n+1) {
    margin-right: 0;
}

.tarjeta-servicio:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.tarjeta-servicio .titulo-servicio {
    font-size: 24px;
    line-height: 34px;
    font-family: "Gotham-Bold", sans-serif !important;
}

.tarjeta-servicio .enlace-servicio {
    text-decoration: none;
}

.tarjeta-servicio .texto-servicio {
    color: #5E5E5E !important;
}

.tarjeta-servicio a {
    text-decoration: none;
}

/* Colores personalizados (basado en ACF) */
.tarjeta-servicio.naranja {
    background-color: #fff7ed;
    color: var(--color-naranja);
}

.tarjeta-servicio.celeste {
    background-color: #ebf9ff;
    color: var(--color-celeste);
}

.tarjeta-servicio.gris {
    background-color: #f1f1f1;
    color: var(--color-gris);
}

.tarjeta-servicio.violeta {
    background-color: #faf2fd;
    color: var(--color-violeta);
}

.tarjeta-servicio.oro {
    background-color: #fff6cc;
    color: var(--color-oro);
}

.tarjeta-servicio.verde {
    background-color: #d1fae5;
    color: var(--color-verde);
}

.tarjeta-servicio.cian {
    background-color: #cffafe;
    color: var(--color-cian);
}

.tarjeta-servicio.azul {
    background-color: #e0f2fe;
    color: var(--color-azul);
}


.tarjeta-servicio.azul a,
.tarjeta-servicio.cian a,
.tarjeta-servicio.verde a,
.tarjeta-servicio.oro a,
.tarjeta-servicio.violeta a,
.tarjeta-servicio.gris a,
.tarjeta-servicio.celeste a,
.tarjeta-servicio.naranja a {
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: flex-start;
}

@media (max-width: 576px) {
    .imagen-servicio img {
        max-width: 280px !important;
    }

    .tarjeta-servicio {
        margin-right: 0px !important;
    }

    /*section.bloque-servicios-home.py-5{
    background:none;
  }*/

}

/* Enlaces por color accesible */
.tarjeta-servicio.naranja a {
    color: var(--color-naranja);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.celeste a {
    color: var(--color-celeste);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.gris a {
    color: var(--color-gris);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.violeta a {
    color: var(--color-violeta);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.oro a {
    color: var(--color-oro);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.verde a {
    color: var(--color-verde);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.cian a {
    color: var(--color-cian);
    font-family: "Gotham-Medium", sans-serif !important;
}

.tarjeta-servicio.azul a {
    color: var(--color-azul);
    font-family: "Gotham-Medium", sans-serif !important;
}

/* Hover general accesible */
.tarjeta-servicio.azul a:hover,
.tarjeta-servicio.cian a:hover,
.tarjeta-servicio.verde a:hover,
.tarjeta-servicio.oro a:hover,
.tarjeta-servicio.violeta a:hover,
.tarjeta-servicio.gris a:hover,
.tarjeta-servicio.celeste a:hover,
.tarjeta-servicio.naranja a:hover {
    color: var(--color-hover);
    text-decoration: none;
}

/* Títulos accesibles */
.titulo-naranja {
    color: var(--color-naranja);
}

.titulo-celeste {
    color: var(--color-celeste);
}

.titulo-gris {
    color: var(--color-gris);
}

.titulo-violeta {
    color: var(--color-violeta);
}

.titulo-oro {
    color: var(--color-oro);
}

.titulo-verde {
    color: var(--color-verde);
}

.titulo-cian {
    color: var(--color-cian);
}

.titulo-azul {
    color: var(--color-azul);
}

.titulo-blanco {
    color: var(--color-blanco);
}

.titulo-negro {
    color: var(--color-negro);
}

.titulo-ocre {
    color: var(--color-ocre);
}

/* Botón base */
.button {
    display: inline-block;
    padding: 15px 25px;
    border-radius: 5px;
    font-family: 'Gotham-Medium', sans-serif;
    color: #000;
    background-color: #fff;
    font-size: 16px;
    text-decoration: none;
    margin-right: 2rem;
}

.button:hover {
    background-color: #000;
    color: #fff;
    transition: 0.2s ease-in-out;
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
}

.novedades-button {
    font-size: 14px;
    width: 12rem;
    text-align: center;
    padding-left: 3rem;
    padding-right: 3rem;
    margin-right: 0rem;
}

/* Botones por color accesible */
.button.naranja, .btn.naranja {
    background-color: var(--color-naranja);
    color: var(--color-negro);
}

.button.celeste {
    background-color: var(--color-celeste);
}

.button.gris {
    background-color: var(--color-gris);
}

.button.violeta {
    background-color: var(--color-violeta);
    color: var(--color-blanco) !important;
}

.button.oro {
    background-color: var(--color-oro);
}

.button.verde {
    background-color: var(--color-verde);
    color: var(--color-blanco) !important;
}

.button.cian {
    background-color: var(--color-cian);
    color: var(--color-blanco) !important;
}

.button.azul {
    background-color: var(--color-azul);
    color: var(--color-blanco) !important;
}

.button.ocre {
    background-color: var(--color-ocre);
}

.azul .button {
    background-color: var(--color-blanco);
    color: var(--color-azul)
}

/*Hover botones*/
.button.naranja:hover {
    background-color: var(--color-negro);
    color: var(--color-blanco) !important;
}

/*Bloques CTA Botones*/
.bloque-cta .button.naranja {
    background-color: var(--color-blanco);
    color: var(--color-negro);
}

.bloque-cta .button.naranja:hover {
    background-color: var(--color-negro) !important;
    color: var(--color-blanco) !important;
}


/*Botones de formularios*/
.btn-blue {
    --bs-btn-color: var(--color-azul);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    color: var(--color-blanco);
    transition: all 0.2s ease-in-out;
    font-family: 'Gotham-Book';
}

.btn-green {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: var(--color-verde);
    color: var(--color-blanco);
    transition: all 0.2s ease-in-out;
    font-family: 'Gotham-Book';
}

.btn-white {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: var(--color-blanco);
    color: var(--color-negro);
    transition: all 0.2s ease-in-out;
    font-family: 'Gotham-Book';
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
    width: 100%;
}


.imagen-servicio img {
    max-width: 160px;
    height: auto;
}

.svg-inline--fa.fa-w-14 {
    width: .875em;
    margin-left: 0.4em;
}

@media (max-width: 576px) {
    .button {
        margin: 0px;
        width: 100% !important;
    }

    .button.naranja {
        width: 100%;
    }
}

/*Carrusel Reseñas*/
.carousel-indicators {
    position: static;
    display: flex;
    justify-content: center;
    margin-top: 3rem;
    gap: 8px;
}

.carousel-indicators [data-bs-target] {
    width: 15px !important;
    height: 15px !important;
    border-radius: 50%;
    background-color: #A4A4A4 !important;
    border: none;
    opacity: 1;
    transition: background-color 0.3s ease;
}

.carousel-indicators [data-bs-target].active {
    background-color: var(--color-secondary) !important;
}

@media (max-width: 767.98px) {
    #carouselResenas .carousel-indicators {
        display: none;
    }
}


/*Bloque Como ayudar*/
.bg-naranja {
    background-color: var(--color-naranja);
}

.bg-azul {
    background-color: #86D5FF;
}

.bg-celeste {
    background-color: #86D5FF;
}

.bg-violeta {
    background-color: #dabaff;
}

.bg-ocre {
    background-color: #DDD1C8 !important;
}

@media (max-width: 767px) {
    .bg-naranja {
        width: 50px;
        height: 50px;
    }

    .bg-naranja img {
        width: 22px;
        height: 22px;
    }

    .bg-azul {
        width: 50px;
        height: 50px;
    }

    .bg-azul img {
        width: 22px;
        height: 22px;
    }
}

/*Bloque proyectos*/

.btn-orange {
    background-color: #f58220;
    color: white;
    padding: 0.6rem 1.5rem;
    border-radius: 0.5rem;
    font-weight: 600;
}

.card-title {
    font-size: 1rem;
    font-weight: bold;
}

.card-body {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.card {
    --bs-card-title-color: var(--color-primary);
    font-family: var(--font-normal);
    --bs-card-title-spacer-y: 25px;
    --bs-card-spacer-x: 37px;
    --bs-card-spacer-y: 25px;
    --bs-card-border-width: 2px;
    --bs-card-border-color: #E0E0E0;
    --bs-card-border-radius: 30px;
    overflow: hidden;
    
    .card-body {
        position: relative;
        &:before {
            content: "";
            display: block;
            width: 100%;
            height: 30%;
            position: absolute;
            bottom: 100%;
            left: 0;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--bs-card-bg) 100%);
        }    
    }

    .card-title {
        font-family: var(--font-bold);
        font-weight: 500;
        font-size: 20.16px;
        line-height: 24px;
    }

    .btn.btn-terciary {
        --bs-btn-font-family: var(--font-bold);
        --bs-btn-font-weight: 500;
        --bs-btn-font-size: 16px;
        --bs-btn-line-height: 1;
        --bs-btn-color: #fff;
        --bs-btn-bg: var(--bs-card-title-color);
        --bs-btn-border-radius: 15px;
        --bs-btn-padding-y: 7px;
        --bs-btn-hover-color: var(--bs-card-title-color);
        --bs-btn-hover-bg: #fff;
        --bs-btn-active-bg: #fff;
        --bs-btn-active-border-color: transparent;
/*
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-secondary);

    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
*/
        text-align: left;
        padding-inline: 22px;
        position: relative;
        .fas {
            position: absolute;
            right: var(--bs-btn-padding-y);
            top: 4px;
            font-size: 22px;
            color: var(--bs-card-title-color);
            background: var(--bs-btn-hover-bg);
            border-radius: 100%;
            width: 1em;
            height: 1em;
            margin-inline-start: auto;
            margin-inline-end: 0;
            text-align: center;
            &:before {
                font-size: .6em;
                vertical-align: middle;
                transform: translateX(.08em);
                display: inline-block;
            }
        }
    }

    &:not([class*="bg-"]):hover {
        --bs-card-title-color: #fff;
        --bs-card-bg: var(--color-primary);
        .btn.btn.btn-terciary {
            --bs-btn-color: var(--bs-card-bg);
            --bs-btn-hover-color: var(--bs-btn-color);
            .fas {
                background-color: var(--bs-btn-color);
            }
        }
    }

    &:has(.btn) {
        cursor: pointer;
    }
}

[class*="row-cols-"] .card {
    height: 100%;
}

/* Circulo tecnico bg */
.platform-cards, .working-way {
    position: relative;
    &:before {
        content: "";
        display: block;
        width: 100%;
        height: 414px;
        position: absolute;
        bottom: 100%;
        left: 0;
        background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/circulo-tecnico.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: 1;
    }
    @media (width > 992px) {
        overflow: visible;
        &:before {
            width: 1404px;
            height: 1404px;
            max-width: 100%;
            max-height: 150%;
        }
    }
}
@media (width > 992px) {
    .platform-cards::before {
        bottom: 0;
    }
    .working-way::before {
        bottom: auto;
        top: 95%;
        max-height: 200%;
    }
}
section {
    > .container-sm, > .container, > .container-lg, > .row {
        z-index: 2;
        position: relative;
    }
}
.single-fi_project #form-contacto .container-sm {
    background: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/circulo-tecnico.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

/* platform section cards */
.platform-cards {
    margin-block: 50px;
    .col {
        max-width: 100vw;
    }
    .heading-v2 {
        
    }
    .card.card-platform {
        .card-img-top {
            opacity: .8;
        }
        .card-body {
            margin-block-start: -60%;
            *position: initial;
            &:before {
                height: 100%;
                bottom: 0;
                background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--bs-card-bg) 25%);
            }
            .card-icon, .card-title, .card-text {
                z-index: 1;
            }
            .card-icon {
                width: 50px;
                height: 50px;
                background-color: #FF9900;
                border-radius: 50%;
                border: 4px solid #fff;
                object-fit: scale-down;
                padding: 5px;
                margin-block-end: 6%;
            }
            .card-title {
                font-family: var(--font-bold);
                font-weight: 500;
                font-size: 22.03px;
                line-height: 100%;
                position: relative;
                &:before {
                    content: "";
                    display: block;
                    width: 70%;
                    height: 14px;
                    background-color: #FF9900;
                    border-radius: 4px;
                    position: absolute;
                    left: 0;
                    bottom: 0;
                    z-index: -1;
                }
            }
            .card-body {
                font-family: var(--font-normal);
                font-size: 14px;
                line-height: 20px;
            }
        }
    }
    @media (width > 992px) {

        .heading-v2 {
            width: 954px;
            max-width: 100%;
            margin-inline: auto;
        }

        .card.card-platform {
            .card-icon {
                width: 40px;
                height: 40px;
                margin-inline-start: 15px;
            }

            .card-title {
                font-size: 34.84px;
                &:before {
                    height: 20px;
                }
            }
            .card-body {
                font-size: 20.16px;
                line-height: 24px;
                margin-block-start: -30%;
            }
        }
    }
}

/* platform section cards */
.working-way {
    margin-block: 50px;
    .carousel-inner {
        overflow: visible;
        *z-index: 0;
        *margin-block-end: 0;
        .slick-list {
            .slick-slide {
                transition: all .5s ease-out;
            }
            .slick-slide:not(.slick-active) {
                opacity: 0;
            }
            .slick-slide.slick-active + .slick-slide:not(.slick-active) {
                opacity: 1;
            }
        }
    }

    .card.card-workingway {
        position: relative;
        margin-inline-end: 20px;
        max-width: calc(100vw - var(--bs-card-spacer-x));
        .card-img-top {
            opacity: .8;
        }
        .card-body {
            background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--bs-card-bg) 25%);
            margin-block-start: -30%;
            &::before {
                display: none;
            }
            .card-icon {
                width: 50px;
                height: 50px;
                background-color: var(--color-negro-amz);
                border-radius: 50%;
                border: 4px solid #fff;
                object-fit: scale-down;
                padding: 5px;
                margin-block-end: 6%;
            }
            .card-title {
                font-family: var(--font-bold);
                font-weight: 500;
                font-size: 19.03px;
                line-height: 100%;
                position: relative;
                &:before {
                    content: "";
                    display: block;
                    width: 70%;
                    height: 14px;
                    background-color: #FF9900;
                    border-radius: 4px;
                    position: absolute;
                    left: 0;
                    bottom: 0;
                    z-index: -1;
                }
            }
            .card-text {
                font-family: var(--font-normal);
                font-size: 14px;
                line-height: 20px;
            }
        }
    }
    @media (width > 992px) {
        .heading-v2 {
            width: 954px;
            max-width: 100%;
            margin-inline: auto;
        }
        .carousel-inner {
            .slick-list {
                overflow: visible;
            }
        }

        .card.card-workingway {
            width: 679px;
            max-width: 100%;
            .card-body {
                .card-icon {
                    width: 40px;
                    height: 40px;
                    margin-inline-start: 15px;
                }

                .card-title {
                    font-size: 34.84px;
                }
                .card-text {
                    font-size: 20.16px;
                    line-height: 24px;
                    min-height: 4em;
                }
                &::before {
                    *bottom: 70%;
                }
            }
        }
    }
}

.news-card {
    border-radius: 10px;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.07);
    transition: all 0.3s ease;
}

.news-card img {
    border-radius: 10px;
}

.news-card:hover {
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.12);
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
}

.text-medium {
    font-weight: 500;
}

.fs-20 {
    font-size: 20px;
}

.pl-1 {
    padding-left: 1rem;
}

/*Carrusel Marcas*/
.brands-carousel .slick-slide {
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 5px;
    height: 120px;
    box-sizing: border-box;
}

.brands-carousel img {
    max-height: 80px;
    width: auto;
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

.brands-carousel .slick-dots li button:before {
    font-size: 15px !important;
    color: #999 !important;
    opacity: 0.5 !important;
}

.brands-carousel .slick-dots li.slick-active button:before {
    color: #333 !important;
    opacity: 1 !important;
}

@media (max-width: 576px) {

    .marcas,
    .activar_marcas {
        display: none;
    }
}

/*CTA Formulario*/
.cta-formulario form {
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.cta-formulario form p {
    margin-bottom: 0;
    flex: 1 1 auto;
}

.cta-inline-form {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    justify-content: flex-start;
}

.cta-inline-form input[type="tel"] {
    flex: 1 1 auto;
    min-width: 250px;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    border-radius: 6px;
    border: 1px solid #ccc;
    width: 100% !important;
}

.cta-inline-form input[type="submit"] {
    padding: 0.75rem 2rem;
    font-weight: bold;
    white-space: nowrap;
    background-color: var(--color-naranja);
    border: none;
    color: #000;
    border-radius: 8px;
    transition: background-color 0.3s;
}

.cta-inline-form input[type="submit"]:hover {
    background-color: #d5771d;
}

@media (max-width: 576px) {
    .cta-formulario {
        display: none;
    }
}

/*Bloques cta*/
.bloque-cta {
    border-radius: 20px;
    margin-left: 3rem;
    margin-right: 3rem;
}

.bloque-cta {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.cta-servicios {
    border-top-right-radius: 25px;
    border-top-left-radius: 25px;
    border: 1px white solid;
    background-repeat: no-repeat;
    background-position: top start;
    background-size: contain;
    padding: 40px 0px;
    border-radius: 0px;
    border: 0px;
    background-color: var(--color-azul);
}

.bloque-cta .button {
    background-color: #fff !important;
    color: #000 !important;
}

.bloque-cta.azul,
.cta-servicios.style-azul {
    background-color: var(--color-azul);
}

.bloque-cta.naranja,
.cta-servicios.style-naranja {
    background-color: var(--color-naranja);
}

.bloque-cta.ocre,
.cta-servicios.style-ocre {
    background-color: var(--color-ocre);
}

.bloque-cta.violeta,
.cta-servicios.style-violeta {
    background-color: var(--color-violeta);
}

.bloque-cta.verde,
.cta-servicios.style-verde {
    background-color: var(--color-verde);
}

.bloque-cta.cian,
.cta-servicios.style-cian {
    background-color: var(--color-cian);
}

.bloque-cta.gris,
.cta-servicios.style-gris {
    background-color: var(--color-gris);
}

.cta-servicios .img-fluid {
    width: 145px;
}

@media (max-width: 576px) {
    .cta-servicios img.vibora {
        display: block;
        margin: 0px auto;
    }

    .cta-servicios {
        border-top-right-radius: 20px;
        border-top-left-radius: 20px;
    }
}

/*Quienes somos*/
h1.hero-title {
    font-size: 60px;
    line-height: 75px;
}

h2.hero-subtitle {
    font-size: 1rem;
    line-height: 36px;
    font-family: 'Gotham-Book';
}

.quienes-somos {
    /*margin-top:-330px;*/
    padding-block-start: 50px;
}

.quienes-somos .video-container {
    position: relative;
    z-index: 10;
}

.text-block-square {
    padding: 80px 45px 40px 45px;
    border-radius: 20px;
    -webkit-box-shadow: 0px 2px 32px rgba(116, 115, 114, 0.16);
    box-shadow: 0px 2px 32px rgba(116, 115, 114, 0.16);
    padding: 80px 20px 40px 20px;
    margin-top: -70px;
}

.module-staff {
    position: relative;
}

.module-staff img[alt="bk-top"] {
    position: absolute;
    top: -790px;
    z-index: -1;
}

.module-staff img[alt="bk-bottom"] {
    bottom: -380px;
    position: absolute;
    z-index: -1;
}

.module-staff .secondary-staff img {
    width: 108px;
    height: 108px;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 54px;
}

.main-staff {
    padding: 25px;
    border-radius: 10px;
}

.secondary-staff {
    padding: 25px;
    border-radius: 10px;
}

.module-staff .secondary-staff img {
    width: 108px;
    height: 108px;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 54px;
}

.text-naranja {
    color: var(--color-naranja) !important;
}

@media (max-width:576px) {
    .module-staff img[alt="bk-bottom"] {
        bottom: -100px;
    }
}

/*Estilos del popup*/
.call-form-popup {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--color-blanco);
    border-top: 3px solid var(--color-naranja);
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    z-index: 9996;
    transition: transform 0.3s ease;
    transform: translateY(100%);
    padding: 10px 0;
}

.call-form-popup.show {
    transform: translateY(0);
}

.call-form-popup-inner {
    max-width: 100%;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    /* cambiado a center */
    justify-content: center;
    gap: 15px;
}

.popup-close {
    position: absolute;
    top: -10px;
    right: 5px;
    font-size: 2rem;
    background: none;
    border: none;
    color: #000;
    cursor: pointer;
    z-index: 10;
}


@media (max-width: 576px) {
    .call-form-popup-inner {
        max-width: 1140px;
        margin: 0 auto;
    }

    .call-form-popup {
        border-top-left-radius: 50px;
        padding: 30px 0 0;
    }
}

.call-form-popup .popup-title {
    font-weight: 700;
    font-size: 22px;
    white-space: nowrap;
    margin: 0;
    color: #0c2340;
    display: flex;
    /* añadido */
    align-items: center;
    /* añadido */
}

.call-form-popup .popup-form .wpcf7 {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0;
    padding: 0;
}

.call-form-popup .popup-form .wpcf7-form {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 10px;
    margin: 0;
    padding: 0;
}

.call-form-popup .popup-form .wpcf7-form-control-wrap {
    margin: 0;
}

.call-form-popup .popup-form input[type="text"] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 300px;
}

.call-form-popup .popup-form input[type="submit"] {
    background-color: var(--color-naranja);
    color: var(--color-negro);
    border: none;
    padding: 8px 24px;
    border-radius: 5px;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
}

@media (max-width: 576px) {
    .call-form-popup .popup-form input[type="submit"] {
        width: 100%;
    }

    .call-form-popup {
        border: 0px;
    }
}

/*Contacto*/
.contact-social {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    width: 30px;
    height: auto;
}

.bk-azul {
    background-color: #00A6FF;
}

.bk-azul a {
    text-decoration: none;
}

.container-custom {
    width: 1500px;
    padding-left: 60px;
    padding-right: 60px;
}

.contact .contact-info {
    /*margin-top: -200px;*/
}

.contact .form-contact {
    /* margin-top: -500px;*/
    margin-block-start: 0;
}

@media (max-width: 576px) {
    .contact .form-contact {
        /*margin-top: -450px;*/
    }
}

/*Estilos de formularios*/
.contacto .form-contact {
    margin-top: -500px;
    margin-bottom: 80px;
}

.form-group {
    margin-bottom: 1rem;
}

.form-check {
    position: relative;
    display: block;
    padding-left: 1.25rem;
    margin-bottom: 2rem !important;
}

@media (max-width:576px) {
    .contact .contact-info {
        margin-top: 50px;
    }

    .text-mobile {
        text-align: center !important;
    }
}

/*Página del blog*/
.blog-grid {
    /*margin-top: -440px;*/
    margin-block-start: 0;
}

.blog-card {
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.blog-card:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

.blog-card-img img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}

.blog-card-body {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 20px;
}

.blog-card-title {
    font-size: 16px;
    font-weight: 600;
    color: #1c1c1c;
    line-height: 1.4;
    margin-bottom: 10px;
}

.blog-card-img {
    padding: 1.5rem;
    border-radius: 10px !important;
}

.blog-card-link {
    color: #007bff;
    font-weight: 600;
    text-decoration: none;
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    transition: color 0.2s ease;
}

.blog-card-link:hover {
    color: #0056b3;
}

.blog-pagination ul.page-numbers {
    display: flex;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.blog-pagination ul.page-numbers li {
    display: flex;
}

.blog-pagination ul.page-numbers li .page-numbers {
    border: none;
    background: none;
    color: #1c1c1c;
    font-weight: 500;
    padding: 3px 12px;
    border-radius: 50%;
    transition: background 0.2s ease, color 0.2s ease;
    text-decoration: none;
}

.blog-pagination ul.page-numbers li .page-numbers.current {
    background-color: #002b5c;
    color: #fff;
}

.blog-pagination ul.page-numbers li .page-numbers:hover {
    background-color: #f2f2f2;
    color: #1c1c1c;
}

@media (max-width: 576px) {
    .blog-grid {
        /*margin-top: -570px;*/
    }
}

/*Single post*/
.card-blog-info {
    padding: 40px 30px;
    border-radius: 20px;
}

.card-blog-info iframe {
    width: 100%;
    height: 410px;
}


/* Sticky adaptado al layout real */
.single {
    background-color: #f5f5f5;
}

.single.single-fi_project {
    background-color: #fff;
}

.single-post-layout {
    display: flex;
    gap: 40px;
    margin-top: -440px;
    margin-bottom: 30px;
}

.card-blog-info {
    background: #fff;
    padding: 20px;
    min-height: 1200px;
    /* asegurar scroll */
    flex: 1;
}

.sidebar-sticky-wrapper {
    position: relative;
    width: 100%;
    max-width: 419.328px;
    border-radius: 20px;
}

.sidebar-inner {
    border-radius: 20px;
    background: #fff !important;
}

.sticky-sidebar {
    position: sticky;
    top: 135px;
}

.card-blog-info h1,
.card-blog-info h2,
h3.wp-block-heading {
    font-size: 28px;
    line-height: 30px;
}

.card-blog-info h2:after,
.card-blog-info h3:after,
h3.wp-block-heading:after {
    content: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/viboritas/vibora-celeste.svg);
    width: 59px;
    height: 10px;
    display: block;
    margin-bottom: 30px;
}

.sidebar-inner input.wpcf7-form-control.wpcf7-submit.has-spinner.btn-orange {
    width: 100%;
}

@media (max-width: 991px) {
    .single-post-layout {
        flex-direction: column;
    }

    .sidebar-sticky-wrapper {
        max-width: 100%;
    }

    .sticky-sidebar {
        position: static;
        top: auto;
    }
}

.post-taxonomies p {
    margin-bottom: 10px;
}

.badge {
    display: inline-block;
    padding: 0.4rem 0.9rem;
    margin: 0 0.3rem 0.4rem 0;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px;
    text-decoration: none;
}

.tag-badge {
    background-color: var(--color-azul);
    color: var(--color-azul-oscuro);
}

a.badge.tag-badge {
    border-radius: 100px;
    background-color: var(--color-azul-oscuro);
    color: var(--color-blanco);
    padding: 10px 15px;
    margin: 5px;
    font-size: 14px !important;
    font-family: 'Gotham-Book';
    font-weight: 100;
}

.category-badge {
    background-color: var(--color-naranja);
    color: var(--color-naranja-oscuro);
}

a.badge.category-badge {
    border-radius: 100px;
    background-color: var(--color-naranja-oscuro);
    color: var(--color-negro);
    padding: 10px 15px;
    margin: 5px;
    font-family: 'Gotham-Book';
    font-weight: 100;
    font-size: 14px;
}

.single .bloque-cta {
    margin: 3rem 0;
}

/*Single Common*/
.hero-section img[alt="bk-services-single-1"] {
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;
}

.hero-section img[alt="bk-services-single-2"] {
    position: absolute;
    z-index: -2;
    left: 0;
    top: 50%;
}

.hero-section img[alt="bk-services-single-3"] {
    position: absolute;
    z-index: -2;
    right: 0;
    top: 40%;
}

body[class*="single-fi_"]:not(.single-fi_project),
body.page-template-page-landing,
body.page-template-page-base {
    background-color: #fff;

    /* Enlaces del menú */
    /*.menu-item a {
        color: #000 !important;
    }*/

    @media (width > 992px) {
        .menu-item a {
            color: #000 !important;
        }
    }

    .menu-item a:hover {
        color: #007cbf !important;
    }

    /* Cabecera scrolleada */
    .header-top.scrolled {
        background-color: #fff !important;
    }

    /* Botón de contacto */
    .contact-button a {
        color: #000;
    }

    .breadcumbs-container {
        background: rgba(0, 27, 53, 0.2);
    }

    /*Toogler menu mobile*/
    .navbar-toggler-icon::before,
    .navbar-toggler-icon::after {
        background-color: black;
    }

    /*Sticky*/
    .scrolled .container.header-inner {
        background-color: #fff;
    }
}


.cta-cpts .form-registro-patentes .btn-submit-form {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #0274B1;
    color: white;
}

.cta-cpts .form-registro-patentes .btn-submit-form:hover {
    -webkit-transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    transform: scale(1) rotate(0deg) translateX(0px) translateY(-3px) skewX(0deg) skewY(0deg);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .cta-cpts .form-registro-patentes .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

@media (min-width: 768px) {
    .cta-cpts .form-registro-patentes .btn-submit-form {
        display: inline-block;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cta-cpts .form-registro-patentes .btn-submit-form {
        -webkit-transition: none;
        transition: none;
    }
}

.cta-cpts .form-registro-patentes .btn-submit-form:hover {
    background-color: black;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .cta-cpts .form-registro-patentes .btn-submit-form:hover {
        -webkit-transition: none;
        transition: none;
    }
}

.cta-cpts .form-registro-patentes .wpcf7-form-control-wrap.dato-boton {
    display: none;
}

/* Estilos de vídeos YouTube */
.video-thumb-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background-color: rgb(255, 196, 145);
    /* fallback en carga */
    background-blend-mode: multiply;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border-radius: 12px;
    cursor: pointer;
    overflow: hidden;
}

/* Ícono de play centrado */
.video-play-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 64px;
    height: 64px;
    z-index: 2;
}

/* Modal y vídeo incrustado se mantienen igual */
.custom-video-modal {
    position: fixed;
    display: none;
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, 0.85);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.custom-video-modal-content {
    position: relative;
    max-width: 960px;
    width: 90%;
    background: #000;
}

.video-modal-close {
    position: absolute;
    top: -40px;
    right: 0;
    font-size: 2rem;
    color: white;
    cursor: pointer;
}

.video-embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
}

.video-embed-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*Clusters*/
.clusters {
    box-shadow: 0px 0px 30px 0px rgba(204, 204, 204, 1);
    padding: 2rem 1rem 1rem 1rem;
    margin-right: 3rem;
}

a.enlace-clusters {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: center;
}

@media(max-width:576px) {
    .clusters {
        margin-right: 0px;
    }
}

/*Preguntas frecuentes*/
.custom-faq-accordion {
    border-top: 1px solid #000;
}

.faq-item {
    border-bottom: 1px solid #000;
    overflow: hidden;
}

.faq-question {
    background: none;
    border: none;
    width: 100%;
    text-align: left;
    padding-bottom: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-family: inherit;
    font-weight: 600;
}

.faq-toggle {
    font-size: 1.5rem;
    line-height: 1;
    transition: transform 0.3s ease;
    font-weight: 500;
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.4s ease;
    font-size: 1rem;
    font-weight: 400;
    color: #333;
}

.faq-item.open .faq-answer {
    max-height: 500px;
    opacity: 1;
    padding: 1rem 0;
}

.faq-item.open .faq-toggle::before {
    content: '-';
}

.faq-toggle::before {
    content: '+';
    display: inline-block;
    transition: all 0.2s ease;
}

/*Plantilla Detalle de servicios*/
.page-servicios {
    width: 100%;
    background-size: contain;
    height: 900px;
}

/*Plantilla de servicios*/
.page-template-page-servicios .bloque-publicaciones-destacadas {
    /*margin-top: -300px;*/
}

.imagen-servicio {
    padding-left: 0px;
}


/*Plantilla de proyectos*/
.blog-grid.destacados-proyectos {
    /*margin-top: -100px !important;*/
    margin-block-start: 0;
    position: relative;
}

.page-proyectos {
    height: 700px;
    background-size: contain;
}

.hero-section.page-lfdi.page-proyectos,
.hero-section.page-lfdi.page-base {
    padding-top: 100px;
}

.hero-section.page-lfdi.page-proyectos h1 {
    font-size: 60px;
    line-height: 75px;
}

.projects-bk img[alt="left"] {
    position: absolute;
    left: 0;
    top: 130% !important;
    width: 35%;
    z-index: -2;
}

.projects-bk img[alt="right"] {
    position: absolute;
    right: 0;
    top: 110% !important;
    width: auto;
    z-index: -2;

}

@media (max-width: 576px) {
    .page-servicios {
        height: 700px;
    }

    .page-template-page-servicios .bloque-publicaciones-destacadas {
        margin-top: 0px !important;
    }
}

/*Detalle de proyectos*/
.project-gallery {
    --inventor-card-width: 320px;
    overflow: hidden;
    
    #carousel-projects {
        width: 100%;
        .carousel-inner {
            overflow: visible;
            z-index: 0;
            margin-block-end: 0;
            .slick-list {
                overflow: visible;
                .slick-slide {
                    transition: all .5s ease-out;
                }
                .slick-slide:not(.slick-active) {
                    opacity: 0;
                }
                .slick-slide.slick-active + .slick-slide:not(.slick-active) {
                    opacity: 1;
                }
            }
        }
        @media (width > 992px) {
            max-width: calc(100% - var(--inventor-card-width) - (var(--bs-gutter-x) * 1.5));
        }
    }

    .inventor-card, .project-card {
        border: 4px solid #fff;
        box-shadow: 0px 6px 16px 0px #00000026;
        border-radius: 32px;
        overflow: hidden;
    }

    .inventor-card {
        font-family: 'Gotham-Book', sans-serif;
        font-weight: 400;
        font-size: 14px;
        line-height: 20px;
        width: calc(100% - 30px);
        background-color: var(--color-secondary);
        color: #fff;
        padding: 15px;
        position: inherit;
        z-index: 1;
        margin-inline: 15px;
        margin-block-end: 20px;
        &:after {
            content: "";
            clear: both;
        }
        .inventor-img {
            border: 7px solid #fff;
            float: left;
            width: 100px;
            margin-inline-end: 15px;
        }
        .inventor-title {
            font-family: 'Gotham-Bold', sans-serif;
            font-weight: 500;
            font-size: 41.8px;
            line-height: 44px;
            .inventor-type {
                display: block;
                font-family: 'Gotham-Book', sans-serif;
                font-weight: 400;
                font-size: 20.16px;
                line-height: 24px;
            }
        }
        .inventor-content {
            text-align: justify;
            &, > * {
                font: inherit;
                line-height: inherit;
                text-align: inherit;
            }
        }
        @media (width > 992px) {
            font-size: 16.8px;
            line-height: 20px;
            text-align: left;
            padding: 20px;
            width: var(--inventor-card-width);
            max-width: 100%;
            margin-inline: 0 calc(var(--bs-gutter-x) * .5);
            margin-block-end: 0;
            .inventor-img {
                width: 200px;
                margin-inline: auto;
                float: none;
            }
            .inventor-title {
                font-size: 41.8px;
                line-height: 44px;
                margin-block: 20px;
                .inventor-type {
                    font-size: 20.16px;
                    line-height: 24px;
                }
            }
            .inventor-content {
                text-align: left;
            }
        }
    }
    .project-card {
        margin-inline-end: 10px;
        max-width: calc(100vw - 20px);
        img {
            object-fit: cover;
            object-position: center;
            height: 100%;
        }
        &.size-square {
            
        }
        &.size-normal {
            
        }
        @media (width > 992px) {
            margin-inline-end: 20px;
            &.size-square {
                width: 681px;
                height: 681px;
            }
            &.size-normal {
                width: 962px;
                *height: 680px;
            }

        }
    }
    .project-commentary {
        &, > * {
            font-family: 'Gotham-Bold', sans-serif;
            font-weight: 500;
            font-size: 16.8px;
            line-height: 20px;
            @media (width > 992px) {
                font-size: 20.16px;
                line-height: 24px;
            }
        }

    }
    @media (width > 992px) {
        overflow: visible;
    }
}
/*CSS Video proyectos*/
.delimitador {
    width: 100%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(0%);
    padding-bottom: 23.25%;
    overflow: hidden;
}

.video-proyectos video {
    width: 100% !important;
    height: 37rem;
    object-fit: cover;
    object-position: 25% 20%;
}

.video-proyectos {
    z-index: -1;
    position: relative;
}

.delimitador {
    margin-bottom: -30rem;
}

/*Encabezado de proyectos*/
.hero-projects-single img.hero-project-single {
    position: absolute;
    width: 100%;
    bottom: -5px;
    left: 0px;
}

section.hero-projects-single.container-fluid {
    height: 520px;
    position: relative;
    @media (width < 768px) {
        height: 700px;
    }
}

.hero-about-us .row,
.hero-projects-single .row {
    padding-top: 160px;
}

.contact-button {
    z-index: 100;
    position: relative;
}

/*Bloque botones*/
body:not(.single-fi_project) .bloque-botones a {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 8px;
    border: none;
    padding: 15px 25px;
    display: block;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #007cbf;
    color: white;
    transition: all 0.2s ease-in-out;
    margin-top: 1rem;
    font-family: 'Gotham-Book';
}

/*Bloque galeria*/
#carouselDesktop {
    width: 900px;
    margin: 0px auto;
}

.carousel-control-prev {
    left: -90px !important;
}

.carousel-control-next {
    right: -90px !important;
}

.modo-trabajo .rounded-3 img {
    width: 6rem;
    object-fit: contain;
}

.modo-trabajo .stretched-link {
    position: absolute;
    inset: 0;
    z-index: 1;
}

/*Bloque de descargas*/
.botonera a:after {
    content: '\f56d';
    font-family: 'Font Awesome 5 Free';
    margin-left: 0.5rem;
    font-weight: bold;
}

/*Formularios*/
.form-hablemos input:not([type="checkbox"]),
.form-registro-patentes input:not([type="checkbox"]),
.form-contact input:not([type="checkbox"]) {
    height: 48px;
    font-family: 'Gotham-Book';
}


.form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}

.form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #80bdff;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

input#texto-boton {
    display: none;
}

textarea.form-control {
    height: auto;
}

span.fs-10.margen-form {
    top: 4px;
    left: 35px;
    position: absolute;
}

.form-group.form-check {
    text-align: left;
}

/*Estilos de landing*/
.landing-intro {
    margin-top: 50px;
}

.page-template-page-landing nav.main-nav {
    display: none;
}

.page-template-page-landing .form-registro-patentes {
    padding: 1rem;
    border-radius: 1rem;
}

.form-group.texto-boton {
    display: none;
}

/* Banner component */
.banner {
    background-color: var(--color-primary);
    text-align: center;
    color: #fff;
    --content-maxwidth: 950px;

    .banner-title {
        font-family: var(--font-normal);
        font-weight: 500;
        font-size: 20.16px;
        line-height: 24px;
        width: var(--content-maxwidth);
        max-width: 100%;
        margin-block-end: 18px;
        margin-inline: auto;
    }

    .banner-content {
        font-family: var(--font-normal);
        font-weight: 400;
        font-size: 16.8px;
        line-height: 20px;
        width: var(--content-maxwidth);
        max-width: 100%;
        margin-block-end: 22px;
        margin-inline: auto;
    }

    .btn.btn-secondary {
        font-family: var(--font-bold);
        font-weight: 500;
    }

    &.banner-defaultbg {
        position: relative;
        &:before, &:after {
            content: "";
            display: block;
            position: absolute;
            background-size: contain;
            background-position: top left;
            background-repeat: no-repeat;
        }
        &:before {
            background-image: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/cta/banner-default-before.png);
            left: 0;
            top: 60%;
            width: 30%;
            height: 50%;
        }
        &:after {
            background-image: url(//lafabricadeinventos.com/wp-content/themes/lafabricadeinventos/assets/images/cta/banner-default-after.png);
            right: 0;
            top: -6vw;
            width: 10%;
            height: 50%;
            opacity: .3;
            background-size: auto 100%;
            background-position: center left;
        }
    }

    @media (width < 767.99px) {
        border-top-left-radius: 24px;
        border-top-right-radius: 24px;
        .banner-title {
            font-family: var(--font-bold);
        }
        &.banner-defaultbg {
            margin-block-end: 50px;
            &:after {
            }
        }
    }

    @media (width > 992px) {
        .banner-title {
            font-size: 41.8px;
            line-height: 44px;
        }
        .banner-content {
            font-size: 20.16px;
            line-height: 24px;
        }
        &.banner-defaultbg {
            &:before, &:after {
                width: calc((100vw - var(--content-maxwidth)) * .5);
                height: 100%;
            }
            &:before {
                left: 0;
                top: -10px;
                height: 110%;
                background-size: auto 100%;
                background-position: center right;
            }
            &:after {
                right: 0;
                top: 5px;
                opacity: .7;
            }
        }
    }

    @media (width > 1400px) {
        &.banner-defaultbg {
            &:before {
                background-size: auto 100%;
                background-position: center left;
            }
            &:after {
                background-position: center right;                
            }
        }
    }
}

/*Pagina 404*/
.social-media-404 img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(3320%) hue-rotate(180deg) brightness(118%) contrast(97%);
}

.bk-registro-patentes {
    background-color: #00A6FF;
}

.bk-registro-patentes a {
    text-decoration: none;
}

img.social-icons {
    filter: brightness(0) saturate(100%) invert(21%) sepia(62%) saturate(3725%) hue-rotate(222deg) brightness(93%) contrast(92%);
    width: 30px;
    height: auto;
}

.page-404 {
    padding-top: 30vh;
    padding-bottom: 20vh;
}

@media (max-width: 576px) {}

svg.svg-inline--fa.fa-user.fa-w-14 {
    width: 3rem;
}

.page-template-page-opiniones .heading-4 {
    font-size: 20px;
    line-height: 26px;
    margin-top: 1rem;
}

#reviews-carousel {

    .slick-dots {
        display: flex;
        justify-content: center;
    }
    @media (width > 991.98px) {
        max-width: 880px;
        width: 100%;
        margin-inline: auto;
    }
    @media (width < 991.98px) {

        .slick-dots {
            li {
                display: none;
            }
            li:has(+ .slick-active), li.slick-active, li.slick-active + li,
            li:first-child.slick-active + li + li, li:has( + li + .slick-active:last-child) {
                display: block;
            }
        }
        
    }
}

#home .tarjeta-servicio a.enlace-servicio {
    border: 2px solid;
    border-radius: 5px;
    padding: 5px 10px;
    display: inline-block !important;
    min-width: 300px;
}

#home .imagen-servicio img {
    max-width: 160px;
    height: auto;
    margin: 0 auto;
}

@media (max-width: 992px) {
    #home .heading-3 {
        font-size: 24px;
        line-height: 38px;
    }

    img.social-icons {
        width: 40px;
    }

    .footer {
        text-align: center;
    }

    .footer-menu li {
        margin-bottom: 10px !important;
    }
}

/* Home CTA idea*/
#home-cta-idea::before,
#home-cta-idea::after {
    content: '';
    width: 100%;
    z-index: -1;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position-y: center;
}

#home-cta-idea::before {
    left: 3rem;
    background-position-x: left;
}

#home-cta-idea::after {
    background-position-x: right;
    background-size: contain;
    width: 30%;
    right: -5%;
}

#home-cta-idea .section-title {
    color: var(--color-azul-home);
    font-size: 32px;
    line-height: 1.2;
    text-align: center;
}

#home-cta-idea .button.azul {
    padding: 10px 30px;
    background-color: var(--color-azul-home);
    width: auto !important;
    margin-inline-end: 0 !important;
}

@media (max-width: 1400px) {
    #home-cta-idea::before {
        width: 20%;
    }
}

@media (max-width: 1200px) {
    #home-cta-idea::after {
        right: -5%;
        width: 20%;
    }
}

@media (max-width: 992px) {
    #home-cta-idea::before {
        background-position-y: top;
        width: 100px;
        top: -50px;
        left: 0;
    }

    #home-cta-idea::after {
        background-position-y: bottom;
        height: 140px;
        bottom: 0;
        top: initial;
        right: -5%;
        width: 40%;
    }

    #home-cta-idea .section-title {
        font-size: 22px;
        margin: 0 40px;
    }

    #home-cta-idea .section-description {
        font-size: 14px;
    }

    #home-cta-idea .button.azul svg {
        width: 14px;
    }
}

@media (max-width: 768px) {
    #home-cta-idea::before {
        left: 10px;
        top: 0;
        width: 40px;
    }

    #home-cta-idea::after {
        right: -15%;
    }
}

/* Home Proyectos */
#home-proyectos {
    box-shadow: #00000040 0px 10px 20px 0px;
}

#home-proyectos .section-header {
    background: var(--color-primary);
    z-index: 0;
    padding-top: 4rem;
    padding-bottom: 4rem;
}

#home-proyectos .section-header::before,
#home-proyectos .section-header::after {
    content: '';
    width: 100%;
    z-index: -1;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position-y: center;
}

#home-proyectos .section-header .section-title {
    color: #fff;
    font-size: 24px;
    line-height: 1.2;
}

#home-proyectos .section-header .section-subtitle {
    font-size: 14px;
}

#home-proyectos .single_project .project-inventor {
    position: absolute;
    bottom: 20px;
    left: 20px;
    border-radius: 10px;
    overflow: hidden;
}

#home-proyectos .single_project .project-inventor img {
    height: 50px;
}

#home-proyectos .single_project.flex-row-reverse .col-12>img {
    transform: rotateY(180deg);
}

#home-proyectos .single_project .project-inventor img {
    margin-inline-start: -1px;
}

#home-proyectos .single_project .project-inventor .inventor_subtitle {
    letter-spacing: 2px;
    font-size: 12px !important;
    line-height: 1;
}

#home-proyectos .single_project .proyectos_title {
    font-size: 20px;
    line-height: 1;
    font-family: 'Gotham-Book';
}

#home-proyectos .single_project .proyectos_subtitle {
    font-size: 16px;
    line-height: 1.2;
    font-family: 'Gotham-Book';
}

#home-proyectos .single_project .button.verde {
    padding: 10px 15px;
    background-color: #03cd79;
    text-align: center;
    margin: 0 auto;
}

@media (max-width: 768px) {
    #home-proyectos .single_project .button_cart {
        text-align: right;
        margin-top: 0;
    }

    #home-proyectos .single_project.row {
        padding-inline: 0;
    }

    #home-proyectos .single_project img {
        height: 220px;
        object-fit: cover;
        object-position: center;
    }

    #home-proyectos .single_project .button_cart {
        position: relative;
    }

    #home-proyectos .single_project .button_cart .button.verde {
        position: absolute;
        right: 0;
        bottom: 0;
        padding: 8px 16px;
    }
}

@media (max-width: 1200px) {
    #home-proyectos .section-header::before {
        background-position-y: top;
        width: 100px;
        background-size: cover;
        background-position: right !important;
    }

    #home-proyectos .section-header::after {
        background-position-y: bottom;
        width: 200px;
        background-size: cover;
        background-position: left !important;
    }

    #home-proyectos .section-header .section-title {
        font-size: 18px;
    }

    #home-proyectos .single_project .button.verde {
        padding: 10px 15px;
        font-size: 14px;
        padding-inline: 0;
    }

    #home-proyectos .single_project .button_cart {
        margin-top: 1rem;
    }

    #home-proyectos .single_project .button_cart .button.verde svg {
        width: 20px;
    }

    #home-proyectos .single_project .project_stars svg {
        width: 18px;
    }
}

@media (min-width: 1200px) {
    #home-proyectos .single_project .project-info {
        position: absolute;
        max-width: 40%;
        bottom: 40px;
        left: 60px;
        border-radius: 10px;
        overflow: hidden;
    }

    #home-proyectos .single_project.flex-row-reverse .project-info {
        right: 60px;
        left: initial;
        text-align: right;
    }

    #home-proyectos .single_project .project-inventor {
        position: absolute;
        bottom: 60px;
        left: initial;
        right: 60px;
        border-radius: 10px;
        overflow: hidden;
    }

    #home-proyectos .single_project.flex-row-reverse .project-inventor {
        left: 60px;
        right: initial;
    }

    #home-proyectos .single_project .proyectos_title {
        font-size: 28px;
    }

    #home-proyectos .single_project .proyectos_subtitle {
        font-size: 15px;
    }
}

/* Home Elegirnos */
#home-elegirnos .elegirnos-image {
    width: 60px;
    height: 60px;
}

#home-elegirnos .elegirnos-image img {
    width: 40px;
    height: 40px;
    opacity: 1;
}

@media (max-width: 990px) {
    #home-elegirnos .elegirnos-image {
        width: 100px;
        height: 100px;
    }

    #home-elegirnos .elegirnos-image img {
        width: 70px;
        height: 70px;
    }
}

/* Home Servicios */
@media (max-width: 768px) {
    #home-servicios .tarjeta-servicio {
        margin-right: 0 !important
    }
}

/* Home CTA especialista*/
#home-cta-especialista {
    background: var(--color-azul-home);
    z-index: 0;
}

#home-cta-especialista::before,
#home-cta-especialista::after {
    content: '';
    width: 100%;
    z-index: -1;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position-y: center;
}

#home-cta-especialista::before {
    height: calc(100% + 6em);
    top: -3em;
    left: 0;
    rotate: -12deg;
    width: 40%;
    left: -50px;
}

#home-cta-especialista::after {
    right: 0;
    background-position-x: right;
}

#home-cta-especialista .section-title {
    font-size: 32px;
    line-height: 1.2;
    text-align: center;
}

#home-cta-especialista .button {
    padding: 5px 50px;
    color: var(--color-azul-home);
}

@media (max-width: 1200px) {
    #home-cta-especialista::before {
        background-position: left bottom;
        width: 150px;
        height: 150px;
        top: initial;
        bottom: -50px
    }

    #home-cta-especialista::after {
        width: 150px;
        background-position: 90px -50px !important;
    }

    #home-cta-especialista .section-title {
        font-size: 20px;
        padding: 0px 30px;
        font-weight: 700;
    }

    #home-cta-especialista .section-description {
        font-size: 14px;
    }

    #home-cta-especialista .button {
        padding: 5px 20px;
        width: auto !important;
    }
}

/* Home Marcas */
#home-marcas img.brand {
    max-height: 80px;
}

/* Home CTA llamadme */
#home-cta-llamadme {
    background-color: var(--color-azul-home-alt);
    z-index: 0;
}

#home-cta-llamadme::before,
#home-cta-llamadme::after {
    content: '';
    width: 100%;
    z-index: -1;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position-y: center;
}

#home-cta-llamadme .section-title {
    font-family: 'Gotham-Book', sans-serif;
    line-height: 1.2;
}

#home-cta-llamadme .button {
    padding: 10px 30px;
    width: auto !important;
}

@media (max-width: 1200px) {
    #home-cta-llamadme {
        border-radius: 15px;
        margin: 0 15px;
    }

    #home-cta-llamadme::before {
        background-position-y: center;
        width: 150px;
    }

    #home-cta-llamadme::after {
        background-position-y: center;
        width: 150px;
    }

    #home-cta-llamadme .section-title {
        font-size: 24px;
    }
}

@media (max-width: 1200px) {

    #home-cta-llamadme::before,
    #home-cta-llamadme::after {
        max-width: 12%;
        background-size: auto;
    }
}

@media (min-width: 1200px) {
    #home-cta-llamadme .section-title {
        font-size: 20px;
    }
}

/* Home Redes */
#home-redes img.social-network {
    height: 200px;
    width: auto;
}

@media (max-width: 576px) {
    #home-redes img.social-network {
        height: 35vw;
    }
}

/* Home Medios */
/*
#home-medios::before {
    content: "";
    width: 30%;
    height: 100%;
    position: absolute;
	z-index: -1;
    left: 0;
    top: 0;
    background-size: 130%;
    background-repeat: no-repeat;
    background-position-x: 50%;
    background-position-y: 115%;
}

@media (width > 992px) {
	#home-medios::before {
        background-position-x: 35%;
		background-position-y: 275%;
        width: 20%;
	}
}

@media (width > 1500px) {
	#home-medios::before {
    	background-size: cover;
		background-position-x: -100px;
		background-position-y: top;
	}
}

@media (width > 1750px) {
	#home-medios::before {
		background-position-x: 0;
		/*background-position-y: 275%;*/
/*
	}
}*/
#home-medios, #lfdi-videos {
    article {
        padding-block-end: 6vw;
        text-align: right;
        p {
            margin-inline-end: 0;
            margin-block-start: 20px;
            align-self: flex-end;
        }
    }
    div[aria-hidden="true"] .w-100 {
        height: auto;
    }

    @media (width > 768px) {
        article p {
            width: 80%;
            margin-inline: auto;
            margin-block-start: 0;
        }
        div[aria-hidden="true"] {
            .w-100 {
                margin-block-start: 0;
            }
        }
    }
}
#home-medios {
    article p {
        width: calc(100vw - var(--bs-gutter-x) );
        order: 1;
    }
    div[aria-hidden="true"] .w-100 {
        margin-block-start: 25%;
        margin-inline-start: -40%;
        width: 200% !important;
    }
    @media (width > 768px) {
        article p {
            width: 80%;
            order: 0;
        }
        .row div[aria-hidden="true"] {
            margin-block-start: 0;
            margin-block-end: -6vw;
            margin-inline-start: -10%;
            .w-100 {
                width: 110% !important;
                margin-inline-start: 0;
            }
        }
    }
}

#lfdi-videos {
    [class^="heading-"] {
        --heading-bcolor: #025A83;
    }
    .lfdi-videos {
        .video-thumb-wrapper {
            margin-block-end: 20px;
            width: calc(100vw - var(--bs-gutter-x));
            border: 6px solid #fff;
            box-shadow: 0px 6px 24px 0px #00000040;
        }
    }
    article p {
        order: 0;
    }
    @media (width > 768px) {
        article p {
            order: 1;
        }
    }
    @media (width > 992px) {

        .lfdi-videos {
            display: flex;
            column-gap: 20px;
            width: 100%;
        }
    }
}

/* Home Tienda & project detail */
#home #resenas, .single-fi_project #resenas {
    margin-top: -150px;
}

#home #resenas #carouselResenas img, .single-fi_project #carouselResenas img {
    border: 5px solid #017cbf;
    border-radius: 25px;
    box-shadow: #00000040 5px 5px 10px 0px;
}

#home #resenas #carouselResenas .carousel-indicators, .single-fi_project #carouselResenas .carousel-indicators {
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
}

#home #resenas #carouselResenas .carousel-indicators [data-bs-target], .single-fi_project #carouselResenas .carousel-indicators [data-bs-target] {
    flex-shrink: 0 !important;
}

#home-tienda .section-header, .single-fi_project {
    background-color: #017cbf;
    z-index: 0;
}

#home-tienda .section-header::before,
#home-tienda .section-header::after {
    content: '';
    width: 100%;
    z-index: -1;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position-y: center;
}

#home-tienda .section-header .home-title {
    color: var(--color-azul-home);
    font-size: 32px;
    line-height: 1.2;
    text-align: center;
}

#home-tienda .section-header .button {
    padding: 10px 30px;
    width: auto !important;
}

@media (max-width: 1200px) {
    #home-tienda .section-header::before {
        background-position-y: top;
        width: 150px;
    }

    #home-tienda .section-header::after {
        background-position-y: bottom;
        width: 150px;
    }

    #home-tienda .section-header .home-title {
        font-size: 24px;
        padding: 0px 30px;
    }
}