/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.5.1768987325
Updated: 2026-01-21 10:22:05

*/
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@300;400;600;700&family=Space+Grotesk:wght@400;500;700&display=swap');
/* Desactivar animaciones en el editor de Elementor */
.elementor-editor-active * {
    transition: none !important;
    animation: none !important;
}

.elementor-editor-active .cardSector::after,
.elementor-editor-active .containerTecnoEquip:hover div ul,
.elementor-editor-active .columnIzq:hover .imgColumn img,
.elementor-editor-active .columnDer:hover .imgColumn img {
    transition: none !important;
}

/* ========== CSS VARIABLES ========== */
:root {
    /* Colores principales */
    --color-white: #FFF;
    --color-black: #000;
    --color-text-dark: #202334;
    --color-text-muted: #737B92;
    --color-primary: #007AFF;
    --color-secondary: #DE4B5C;
    --color-accent: #48CBFF;
    --color-accent-yellow: #FFD66B;
    --color-input-form: #E2E9F0;

    /* Colores Contact Form 7 */
    --color-cf7-success: #46b450;
    --color-cf7-warning: #ffb900;
    --color-cf7-error: #DE4B5C;

    /* Sombras */
    --shadow-light: rgba(0, 0, 0, 0.08);
    --shadow-card: rgba(82, 82, 82, 0.10);
    --shadow-card-hover: rgba(82, 82, 82, 0.15);
    --shadow-overlay: rgba(1, 45, 77, 0.85);

    /* Tipografía - Familias */
    --font-family: "Source Sans 3", sans-serif;
    --font-family-h1: "Space Grotesk", sans-serif;

    /* Tipografía - Tamaños */
    --font-size-10: 0.625rem;
    --font-size-small: 0.875rem;
    --font-size-base: 1rem;
    --font-size-ssmall: 1.125rem;
    --font-size-20: 1.25rem;
    --font-size-smedium: 1.3125rem;
    --font-size-medium: 1.5rem;
    --font-size-medium-lit: 1.625rem;
    --font-size-xlarge: 2rem;
    --font-size-mlarge: 3rem;
    --font-size-large: 4rem;
    --font-size-xxlarge: 6.25rem;

    /* Tipografía - Line Heights */
    --line-height-10: 0.625rem;
    --line-height-18: 1.125rem;
    --line-height-20: 1.25rem;
    --line-height-base: 1.375rem;
    --line-height-lg: 1.5rem;
    --line-height-slg: 1.625rem;
    --line-height-mlg: 2rem;
    --line-height-40: 2.5rem;
    --line-height-mxlg: 2.75rem;
    --line-height-56: 3.5rem;
    --line-height-xlg: 4rem;
    --line-height-110: 6.875rem;

    /* Tipografía - Pesos */
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    /* Espaciados */
    --spacing-xs: 0.5rem;
    --spacing-sm: 0.75rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xlg: 2rem;
    --spacing-xxlg: 3rem;

    /* Border radius */
    --radius-xs: 0.25rem;
    --radius-sm: 0.5rem;
    --radius-md: 1.25rem;
    --radius-lg: 2rem;
    --radius-xl: 2.5rem;
    --radius-full: 2.34375rem;
    --radius-80: 5rem;
    --radius-160: 10rem;
    --radius-210: 13.125rem;

    /* Transiciones */
    --transition-fast: 150ms ease-out;
    --transition-normal: 300ms ease-out;
    --transition-slow: 500ms ease-in-out;

    /* Tamaños */
    --btn-min-width: 7.5rem;
    --icon-size-sm: 0.75rem;
    --icon-size-md: 1.125rem;
    --icon-size-lg: 1.5rem;
    --icon-size-xl: 2.25rem;
    --icon-size-xxl: 3.125rem;
    --icon-size-64: 4rem;
    --icon-size-80: 5rem;
    --header-height: 3.75rem;
}

#headerPage {
    box-shadow: 0 0.25rem 0.625rem 0 var(--shadow-light);
}

/* ========== HEADER STYLES ========== */

#principalContent {
    height: 56.375rem;
    overflow: hidden;
}

#principalContent > div:first-child {
    height: 54.8125rem;
}

#principalMenu {
    display: flex;
    height: var(--header-height);
    justify-content: center;
    align-items: center;
    gap: var(--spacing-lg);
}

#principalMenu nav {
    height: 100%;
    align-items: flex-end;
}

#principalMenu a, #requestDemo, #requestDemo1, #loginMenu a, #footerMenu a, .footerMenuHelp nav:first-child ul li a {
    font-family: var(--font-family) !important;
    font-size: var(--font-size-base) !important;
    font-style: normal;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--line-height-base);
}

#principalMenu a {
    padding: 0;
    gap: var(--spacing-xs);
    padding-bottom: var(--spacing-xlg);
}

/* #principalMenu a::after {
    margin-bottom: 0.0625rem;
} */

/* Transicion del underline - rapida al ocultar */
#principalMenu .e--pointer-underline .elementor-item::after,
#principalMenu .e--pointer-underline .elementor-item::before {
    transition: transform var(--transition-fast), opacity var(--transition-fast) !important;
}

/* Mas lenta al aparecer */
#principalMenu .e--pointer-underline .elementor-item:hover::after,
#principalMenu .e--pointer-underline .elementor-item:hover::before {
    transition: transform var(--transition-normal), opacity var(--transition-normal) !important;
}

#principalMenu > nav ul {
    gap: var(--spacing-lg);
    row-gap: 0;
}

#principalMenu > nav ul li:last-child {
    gap: 0;
}

#principalMenu > nav ul li:last-child a:hover {
    border: 0;
}

#principalMenu > nav ul li:hover ul li a:hover, 
#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a.highlited, 
#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a, 
#principalMenu a  {
    background-color: var(--color-white);
    color: var(--color-text-dark);
}

#principalMenu > nav ul li ul li a {
    border-inline-start: 0;
}

#principalMenu span.sub-arrow {
    padding-left: var(--spacing-xs);
    display: inline-flex;
}

#principalMenu span.sub-arrow svg {
    transition: transform var(--transition-normal);
    transform-origin: center;
}

#principalMenu nav ul li.menu-item-has-children:hover > a .sub-arrow svg {
    transform: rotate(180deg);
}

#principalMenu nav ul > li.menu-item-has-children {
    position: relative;
}

#principalMenu nav ul li ul.sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.625rem);
    transition: none;
    pointer-events: none;
}

#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
    transition: opacity var(--transition-normal), visibility var(--transition-normal), transform var(--transition-normal);
}

#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu, #principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a {
    border-radius: 16px;
}

#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu, #principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu ul {
    box-shadow: 0 0.25rem 0.625rem 0 var(--shadow-light);
}

#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a  {
    padding: 24px;
}

#principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a:hover  {
    background: #eaeaea !important;
}

#principalMenu svg, #containerCTA svg {
    width: var(--icon-size-sm);
    height: var(--icon-size-sm);
}

#containerCTA {
    display: flex;
    width: 26.25rem;
    align-items: flex-start;
    gap: var(--spacing-xs);
    flex-shrink: 0;
}

#requestDemo, #requestDemo1 {
    padding: 0;
}

#requestDemo svg, #requestDemo1 svg {
    width: var(--icon-size-lg);
    height: var(--icon-size-lg);
}

#requestDemo > span, #requestDemo1 > span {
    display: flex;
    min-width: var(--btn-min-width);
    padding: var(--spacing-sm) var(--spacing-lg);
    justify-content: center;
    align-items: center;
    gap: var(--spacing-xs);
    border-radius: var(--radius-lg) !important;
    background: linear-gradient(91deg, var(--color-primary) 0.88%, var(--color-accent) 99.35%) !important;
    transition: all var(--transition-normal);
}

#requestDemo > span:hover, #requestDemo1 > span:hover {
    display: flex;
    min-width: var(--btn-min-width);
    padding: var(--spacing-sm) var(--spacing-lg);
    justify-content: center;
    align-items: center;
    gap: var(--spacing-lg);
    border-radius: var(--radius-lg) !important;
    background: var(--color-secondary) !important;
}

#requestDemo > span > span:last-child, #requestDemo1 > span > span:last-child {
    line-height: var(--line-height-lg);
}

#loginMenu > nav > ul > li {
    border: 0;
}

#loginMenu > nav > ul > li > a {
    padding: 0.6875rem var(--spacing-xxlg) !important;
}

#loginMenu a {
    border-radius: var(--radius-md);
    border: 0.0625rem solid transparent;
}

#loginMenu li {
    display: flex;
    min-width: var(--btn-min-width);
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-md);
    border: 0.0625rem solid var(--color-white);
}

#loginMenu li:hover {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-md);
    border-color: var(--color-white);
    background: var(--color-white) !important;
    color: var(--color-text-dark);
}

.containerTarjetas > div {
    align-content: center !important;
    flex-wrap: wrap !important;
}

#loginMenu li:active {
    color: var(--color-text-dark);
}

#loginMenu li:hover a {
    color: var(--color-text-dark);
}

#loginMenu a::after {
    background-color: transparent;
}

#loginMenu nav ul li ul.sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    width: var(--btn-min-width);
    min-width: var(--btn-min-width);
    padding: var(--spacing-md);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacing-xs);
    border-radius: var(--radius-sm);
    border: 0.0625rem solid var(--color-white);
    background: var(--color-white);
    margin-top: var(--spacing-xs);
}

#loginMenu nav ul li ul.sub-menu::before {
    content: '';
    position: absolute;
    top: calc(var(--spacing-xs) * -1);
    left: 0;
    right: 0;
    height: var(--spacing-xs);
}

#loginMenu nav ul > li.menu-item-has-children {
    position: relative;
}

#loginMenu nav ul li:hover ul.sub-menu {
    display: flex;
}

#loginMenu nav ul li a {
    padding: 0.8125rem var(--spacing-xxlg);
}

#loginMenu nav ul li ul.sub-menu li {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-xs);
    padding-inline: var(--spacing-md);
}

#loginMenu nav ul li ul.sub-menu li a {
    padding: 0;
}

#loginMenu nav ul li ul.sub-menu li a:hover {
    background-color: var(--color-white);
    color: var(--color-text-dark);
}

#menu-1-d0f5b6e > li.menu-item-111 > a span.sub-arrow {
    display: none;
}

.home #requestDemo {
    width: 100%;
}

.videoHeigh {
    height: 945px !important;
}

.videoHeigh > .elementor-background-video-container {
    height: 896px !important;
}

.videoHeigh > div:last-child {
    height: 95% !important;
    width: 100% !important;
    margin-top: -48px !important;
}


/* ========== FOOTER STYLES ========== */

#footer a {
    color: var(--color-text-muted);
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0% 100%;
    background-repeat: no-repeat;
    background-size: 0% 0.125rem;
    transition: background-size var(--transition-normal);
    width: fit-content;
}

#footer a:hover {
    color: var(--color-black);
    background-size: 100% 0.125rem;
}

#CopyRight p, .FooterTitlePartners p {
    font-size: var(--font-size-small) !important;
    font-weight: var(--font-weight-normal) !important;
    color: var(--color-text-muted) !important;
}

#footerRRHH {
    height: 4.5625rem;
    padding-bottom: var(--spacing-lg);
}

#footerRRHH > div:first-child {
    width: 26.6875rem;
    height: 3.625rem;
}

.iconRRHH {
    display: flex;
    width: var(--icon-size-xl);
    height: var(--icon-size-xl);
    padding: 0.5625rem;
    align-items: center;
    gap: 0.46875rem;
    aspect-ratio: 1/1;
    border-radius: var(--radius-full);
    background: var(--color-accent);
}

.iconRRHH div {
    height: var(--icon-size-md) !important;
}

.iconRRHH div a {
    border: 0 !important;
    transition: none !important;
    background-image: none !important;
}

.iconRRHH svg {
    width: var(--icon-size-md) !important;
    height: var(--icon-size-md) !important;
    flex-shrink: 0;
}

.footerTitleMenu p {
    color: var(--headers-color, #202334) !important;
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_S, 16px) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: var(--Font-Sizes-Body-p_XS_line, 22px);
    align-self: stretch;
}

.footerMenuHelp nav:first-child ul {
    gap: var(--spacing-xs);
    display: flex;
    flex-direction: column;
}

.footerMenuHelp nav:first-child ul li a,
.footerMenuHelp nav:first-child ul li a:hover,
#FooterMenuPoliticas nav:first-child ul li a {
    padding: 0;
}

#FooterMenuPoliticas nav:first-child ul {
    gap: var(--spacing-md);
    padding-bottom: var(--spacing-lg);
}

#gridPartners {
    grid-template-columns: 25.3125rem 63.1875rem !important;
}

.FooterTitlePartners p {
    line-height: var(--line-height-base) !important;
}

#h1 h1 {
    align-self: stretch;
    color: var(--color-white);
    text-align: center;
    font-family: var(--font-family-h1);
    font-size: var(--font-size-large);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-xlg);
    letter-spacing: -0.04rem;
}

#textHeaderHome p {
    color: var(--color-white);
    text-align: center;
    font-family:  var(--font-family) !important;
    font-size: var(--font-size-medium) !important;
    font-style: normal; 
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-mlg); 
    align-self: stretch;
}

#chooseOpinat {
    margin: 0 auto;
}

#chooseOpinat .textSoftware p{
    color: var(--color-accent);
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-smedium) !important;
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg); 
    text-transform: uppercase;
    align-self: stretch;
    margin: 0;
}

#chooseOpinat .h2ChooseOpinat h2 {
    color: var(--color-text-dark) !important;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-mlarge) !important;
    font-style: normal;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--line-height-56);
    letter-spacing: 0.015rem;
    align-self: stretch;
    margin-block: 0.25rem var(--spacing-md);
}

#chooseOpinat .textInfoChooseOpinat p {
    width: 37.5rem;
    color: var(--color-text-muted);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    margin: 0;
}

#chooseOpinat .containerTecnoEquip {
    display: flex;
    padding: var(--spacing-xxlg);
    flex-direction: column !important;
    align-items: flex-start;
    gap: var(--spacing-md);
    flex: 1 0 0;
    align-self: flex-start;
    border-radius: var(--radius-md);
    background: var(--color-white);
    box-shadow: 0 0.25rem 0.625rem 0 var(--shadow-card);
}

#chooseOpinat .containerTecnoEquip div h2{
    align-self: stretch;
    color: var(--color-text-dark);
    font-family: var(--font-family-h1);
    font-size: var(--font-size-medium-lit);
    font-style: normal;
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-mlg);
}

#chooseOpinat .containerTecnoEquip div p.textTecnoEquip{
    color: var(--color-text-muted);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    align-self: stretch;
    margin: 0;
}

#chooseOpinat .containerTecnoEquip .textNone strong, .titleDropdown p strong, .textBlue {
    color: var(--color-primary);
}


#chooseOpinat .containerTecnoEquip div a{
    color: var(--color-text-dark);
    font-family: var(--font-family);
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-slg);
    padding: 0 !important;
    border-bottom: 0.0625rem solid var(--color-primary) !important;
    border-radius: 0 !important;
}

#chooseOpinat .containerTecnoEquip div p {
    margin-bottom: -0.5rem;
    transition: margin-bottom 0.5s ease-in-out;
}

#chooseOpinat .containerTecnoEquip:hover div p {
    margin-bottom: 0;
}

#chooseOpinat .containerTecnoEquip > div:nth-child(2) > div:last-child {
    display: flex;
    padding-left: var(--spacing-md);
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-xs);
    align-self: stretch;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out;
}

#chooseOpinat .containerTecnoEquip:hover > div:nth-child(2) > div:last-child {
    max-height: 31.25rem;
}

#chooseOpinat .containerTecnoEquip div ul li {
    align-self: stretch;
    color: var(--color-text-dark);
    font-family: var(--font-family);
    font-size: var(--font-size-small);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-base);
    list-style: disc;
    list-style-position: inside;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateY(-0.625rem);
    transition: max-height 0.5s ease-in-out, opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
    pointer-events: none;
}

#chooseOpinat .containerTecnoEquip:hover div ul li {
    max-height: var(--line-height-mxlg);
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

#chooseOpinat .containerTecnoEquip:hover .btnTecnoEquip a {
    display: flex;
    padding: 0.5rem 1rem !important;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
    border-radius: var(--radius-md) !important;
    border: 0.0625rem solid var(--color-primary);
    color: var(--color-primary) !important;
}

div.textListTecnoEquip {
    color:  #202334;
    font-family: "Source Sans 3" !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 22px !important;
}

div.textListTecnoEquip span.textblue {
    color: #007AFF;
    font-family: "Source Sans 3" !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 22px !important;
}

#containerNumbers {
    margin: 0 auto;
    margin-bottom: 15rem;
}

#containerNumbers > div {
    display: flex;
    padding: 0 1rem 2rem 1rem;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    flex: 1 0 0;
    border-bottom: 0.1875rem solid var(--primary-color, var(--color-primary));
}

#containerNumbers > div .numbers p {
    color: var(--primary-color, var(--color-primary));
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-xxlarge) !important;
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-110);
    letter-spacing: -0.0625rem;
    margin: 0;
}

#containerNumbers > div .textNumbers p{
    color: var(--color-text-dark);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-medium) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-mlg);
    margin: 0;
    width: 17.5rem;
}


.miniTitulos p {
    color: var(--color-accent);
    text-align: center;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-smedium) !important;
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg);
    text-transform: uppercase;
    align-self: stretch;
    margin: 0;
}

.grandeTitulo h2 {
    color: var(--color-text-dark) !important;
    text-align: center;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-mlarge);
    font-style: normal;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--line-height-56);
    letter-spacing: 0.015rem;
}

#dropdownRecoge summary, #dropdownAnaliza summary, #dropdownActua summary{
    display: flex;
    padding: 1.5rem;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    height: 6.625rem;
    border: 0;
}

#dropdownRecoge summary span div, #dropdownAnaliza summary span div, #dropdownActua summary span div{
    color: var(--color-text-dark);
    font-family: var(--font-family);
    font-size: var(--font-size-xlarge);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-40);
    text-transform: uppercase;
    gap: 3rem;
    display: flex;
}

#dropdownRecoge .numbersTitleDropdown, #dropdownAnaliza .numbersTitleDropdown, #dropdownActua .numbersTitleDropdown {
    color: var(--color-primary);
    font-family: var(--font-family-h1);
    font-size: var(--font-size-mlarge);
    font-style: normal;
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-56);
    letter-spacing: 0.015rem;
}

#dropdownRecoge summary span.e-opened, #dropdownRecoge summary span.e-closed, #dropdownAnaliza summary span.e-opened, #dropdownAnaliza summary span.e-closed, #dropdownActua summary span.e-opened, #dropdownActua summary span.e-closed {
    height: 3.125rem;
} 

#dropdownRecoge summary span svg, #dropdownAnaliza summary span svg, #dropdownActua summary span svg {
    fill: none !important;
    width: 3.125rem;
    height: 3.125rem;
}

#dropdownRecoge div, #dropdownAnaliza div, #dropdownActua div {
    border: 0;
}

#dropdownRecoge > div {
    padding-block: 0.75rem 2.25rem;
}

/* Border en summary cuando está cerrado (aria-expanded="false") */
#dropdownRecoge summary[aria-expanded="false"], #dropdownAnaliza summary[aria-expanded="false"], #dropdownActua summary[aria-expanded="false"] {
    border-bottom: 0.0625rem solid var(--color-text-dark);
}

/* Border en div cuando está abierto */
#dropdownRecoge[open] > div, #dropdownAnaliza[open] > div, #dropdownActua[open] > div {
    border-bottom: 0.0625rem solid var(--color-text-dark);
}

.titleDropdown p{
    color: var(--color-text-dark);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg); 
    align-self: stretch;
    margin: 0;
}

.titleDropdownSecond p {
    color: var(--color-text-dark);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    margin: 0;
}

.ulListadoPuntos ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
    align-self: stretch;
}

.ulListadoPuntos ul li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    align-self: stretch;
}

.ulListadoPuntos ul li span:first-child svg {
    margin: 0 !important;
}

.cardExp {
    display: flex;
    width: 24.6667rem;
    padding: 3rem 1.5rem;
    flex-direction: column;
    align-items: flex-start;
    align-self: flex-end;
    min-height: 39rem;
    max-height: 39rem;
    transition: max-height 0.5s ease-in-out, min-height 0.5s ease-in-out, padding-bottom 0.5s ease-in-out;
}

.cardExp:hover {
    padding-bottom: 4.875rem;
    max-height: 43.75rem;
    min-height: 40.375rem;
}

.cardExp div:first-child h3 {
    color: var(--color-text-dark);
    font-family: var(--font-family-h1);
    font-size: var(--font-size-xlarge);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-40);
}

.cardExp div:nth-child(2) p {
    color: var(--color-text-muted);
    font-family: var(--font-family);
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-slg);
    margin: 0;
}

.cardButtons {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
}

.cardButtons #requestDemo > span {
    display: flex;
    min-width: 7.5rem;
    padding: 0.75rem 1.1875rem;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
}

.cardButtons #requestDemo > span > span {
   color: var(--color-white);
    font-family: var(--font-family);
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-semibold);
    line-height: var(--line-height-18);
    letter-spacing: 0.0028125rem;
}

.cardButtons .btnInfo {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
}

.cardButtons .btnInfo a {
    color: var(--color-text-dark);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg);
    border-bottom: 0.0625rem solid var(--color-primary);
    padding: 0 !important;
}

.titleNegocio h5 {
    color: var(--color-text-dark) !important;
    text-align: center;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-20);
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg);
}

.textNegocio p {
    color: var(--color-text-dark) !important;
    text-align: center;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    margin: 0;
}

.textSolucion p {
    color: var(--color-accent);
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-smedium) !important;
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg);
    text-transform: uppercase;
    align-self: stretch;
    margin: 0;
}

.titleh2Solucion  h2{
    color: var(--color-text-dark) !important;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-mlarge);
    font-style: normal;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--line-height-56);
    letter-spacing: 0.015rem;
    align-self: stretch;
}

.tamañoColumnas {
    grid-template-columns: 14.375rem 25.125rem !important;
}

.firstTitle h5 {
    width: 14.375rem;
    color: var(--color-text-dark);
    font-family: var(--font-family-h1);
    font-size: var(--font-size-20);
    font-style: normal;
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-slg);
    margin: 0;
}

.secondText p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    flex: 1 0 0;
    overflow: hidden;
    color: var(--color-text-muted);
    text-overflow: ellipsis;
    font-family: var(--font-family);
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-slg);
    margin: 0;
}

.textTecno p {
    color: var(--color-text-muted);
    text-align: center;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    align-self: stretch;
    margin: 0;
}

/* img background cuadrados */
[data-id="255d253"]::before {
    background-size: 63.5rem 55.5625rem!important;
    height: 75rem;
}

.columnIzq, .columnDer {
   display: flex;
    width: 31.0625rem ;
    min-width: 18.75rem;
    padding: 1rem 1.5rem;
    align-items: center;
    gap: 1.5rem;
    border-radius: var(--radius-80);
    border: 0.0625rem solid var(--color-input-form);
    background: var(--color-white);
    transition: padding 0.5s ease-in-out;
    /* will-change: padding; */
}

.columnIzq:hover, .columnDer:hover {
    padding: 1.5rem 1rem;
}

.columnDer.casosB2B:hover {
    padding-left: 25px;
}

#partners .columnDer:hover, #partners .columnIzq:hover {
    padding-block: 1rem;
    padding-right: 30px;
}

#partners .columnDer:hover > div:nth-child(1), #partners .columnIzq:hover > div:nth-child(2) {
    width: 80px;
    min-width: 80px;
}

#partners .columnDer:hover img, #partners .columnIzq:hover img{
    padding: 0px;
}

.columnIzq .imgColumn img, .columnDer .imgColumn img {
    width: 4rem !important;
    height: 4rem !important;
    max-width: 4rem;
    min-width: 4rem;
    transition: all 0.5s ease-in-out;
    /* will-change: width, height, padding, max-width, min-width; */
}

/* Columna Izquierda - padding-right */
.columnIzq .imgColumn img {
    padding-right: 0;
}

.columnIzq:hover .imgColumn img {
    width: 5rem !important;
    height: 5rem !important;
    max-width: 5rem;
    min-width: 5rem;
    padding-right: 1rem;
}

/* Columna Derecha - padding-left */
.columnDer .imgColumn img {
    padding-left: 0;
}

.columnDer:hover .imgColumn img {
    width: 5rem !important;
    height: 5rem !important;
    max-width: 5rem;
    min-width: 5rem;
    padding-left: 0.125rem;
    padding-right: 0.8125rem;
}

.columnIzq {
   grid-template-columns: 22.5625rem 4rem !important;
}

.columnDer {
   grid-template-columns:  4rem 22.5625rem !important;
}

.columnIzq .title p, .columnDer .title p {
    color: var(--color-text-dark);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg);
    align-self: stretch;
    margin: 0;
}

.columnIzq .text p, .columnDer .text p {
    overflow: hidden;
    color: var(--color-text-dark);
    text-overflow: ellipsis;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-small);
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-base);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    align-self: stretch;
    margin: 0;
}

.gridPartners .e-con-inner {
    height: 250px;
}

.cardPartners {
    max-height: 164px;
    transition: max-height 0.5s ease-in-out;
}

.cardPartners:hover {
    max-height: 500px;
}

.cardPartners .btnInfo {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out, opacity 0.5s ease-in-out;
    opacity: 0;
}

.columnIzq .btnInfo, .columnDer .btnInfo {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity 0.5s ease-in-out, max-height 0.5s ease-in-out;
}

.columnIzq:hover .btnInfo, .columnDer:hover .btnInfo {
    max-height: 500px;
    opacity: 1;
}

.cardPartners:hover .btnInfo {
    opacity: 1;
    max-height: 66px !important;
}

#feedback .columnDer {
    width: 100% !important;
    padding: 16px !important;
}

#feedback .columnDer .title p{
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk" !important;
    font-size: 18px;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 24px; 
    text-transform: uppercase;
}

#feedback .columnDer .text p {
    overflow: hidden;
    color: #202334;
    text-overflow: ellipsis;
    font-family: "Source Sans 3" !important;
    font-size: 14px;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 22px; 
}

div#feedback .flecha > div.elementor-icon-wrapper {
    display: flex !important;
}

.btnInfo a {
    padding-inline: 0px;
}

#videoMovil {
    display: flex;
    width: 21.875rem;
    height: 34.375rem;
    padding: 2rem;
    align-items: flex-end;
    gap: 0.625rem;
    border-radius: var(--radius-210);
}

#contentComplicaciones .grandeTitulo h2, #faq .grandeTitulo h2 {
    text-align: left;
}

#faq #divEscuchamos {
    height: 17.3125rem !important;
}

#contentComplicaciones .textComplicacions  {
    align-self: stretch;
    color: var(--color-text-muted);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    margin: 0;
}

#gestionReputacion div.e-con-inner{
    height: 49.375rem;
}

#gestionReputacion .grandeTitulo h2 {
    text-align: left !important;  
}

#sector .titleSector h3 {
    align-self: stretch;
    color: var(--color-white);
    font-family: var(--font-family-h1);
    font-size: var(--font-size-xlarge);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-40);
}

#sector .textSector p {
    align-self: stretch;
    color: var(--color-white);
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
}

#sector .btnSector a {
    padding: 0;
    border-bottom: 0.0625rem solid var(--color-primary);
    border-radius: 0;
}

#sector .btnSector a span span{
    color: var(--color-white);
    font-family: var(--font-family);
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-slg);
}

/* ========== CARD SECTOR HOVER ANIMATION ========== */

/* Estado inicial: ocultos y colapsados */
.cardSector .textSector,
.cardSector .btnSector {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transform: translateY(0.625rem);
    transition: opacity var(--transition-normal), max-height var(--transition-normal), transform var(--transition-normal);
    pointer-events: none;
}

.cardSector {
    position: relative;
}

.cardSector:nth-child(odd) {
    max-height: 37.5rem;
}

.cardSector::after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: var(--shadow-overlay);
    opacity: 0;
    transition: opacity var(--transition-normal);
    z-index: 1;
    pointer-events: none;
    border-radius: var(--radius-160);
}

.cardSector:hover::after {
    opacity: 1;
}

/* Asegurar que el contenido esté sobre el overlay */
.cardSector > * {
    position: relative;
    z-index: 2;
}

/* Estado hover: visibles y expandidos */
.cardSector:hover .textSector {
    opacity: 1;
    max-height: 19.375rem;
    transform: translateY(0);
    pointer-events: auto;
}

.cardSector:hover .btnSector {
    opacity: 1;
    max-height: 3.75rem;
    transform: translateY(0);
    pointer-events: auto;
}

/* Delay escalonado para efecto más elegante */
.cardSector .textSector {
    transition-delay: 0s;
}

.cardSector .btnSector {
    transition-delay: 0.1s;
}

.textFinalSector p{
    color: var(--color-text-muted) !important;
    text-align: center;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    align-self: stretch;
    margin: 0;
}

.textCarrusel p{
    color: var(--color-text-dark) !important;
    font-family: var(--font-family) !important;
    font-size: 20px  !important;
    font-style: italic;
    font-weight: var(--font-weight-normal) !important;
    line-height: 30px;
    align-self: stretch;
    margin: 0;
    text-align: left;
}

.leadCarrusel p {
    align-self: stretch;
    color: var(--color-text-dark) !important;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg);
    margin: 0;
    text-align: left;
}

.textLeadCarrusel p {
    color: var(--color-text-dark) !important;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
    margin: 0;
    text-align: left;
}

.columnsLeads {
    grid-template-columns: 82% 14% !important; 
}

.imgTestigos {
    width: 5rem !important;
    height: 5rem !important;
}

/* #sectionCarruselImg img {
    width: 8.75rem !important;
    height: 5.3125rem !important;
} */

/* ========== CARRUSEL DE IMÁGENES/LOGOS ========== */
#sectionCarruselImg .swiper-slide-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 6.25rem !important;
}

#sectionCarruselImg .swiper-slide-image {

    width: 8.75rem !important;
    height: auto !important;
    object-fit: contain !important;
}

#carruselParterns > div {
    height: 8.4375rem !important;
}

/* ========== FORMULARIO CONTACTO (CF7) ========== */

#sectionForm {
    height: 27.375rem;
}

#sectionForm div:first-child {
    height: 27.375rem;
    width: 45.125rem;
}

#sectionForm div:last-child {
    height: 26.0625rem;
}

.titleForm {
    height: 5rem !important;
}

.titleForm h3{
    align-self: stretch;
    color: var(--white-color, var(--color-white)) !important;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-xlarge);
    font-style: normal;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-40);
}

.textForm {
    height: 5rem !important;
}

.textForm p {
    align-self: stretch;
    color: var(--white-color, var(--color-white)) !important;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
}

#contactForm {
    display: flex;
    min-width: 25rem;
    padding: 1.8125rem 10rem 3rem 3rem;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 3rem;
    flex: 1 0 0;
}

#contactForm .elementor-shortcode {
    width: 100% !important;
    height: 100% !important;
}

/* Ocultar labels - usar placeholders en su lugar */
#contactForm form {
    width: 30.625rem;
}

/* Contenedor de campos */
#contactForm .wpcf7-form p {
    margin: 0 0 1rem 0;
    width: 100%;
}

/* Error validation */
#contactForm .wpcf7-not-valid {
    border-color: var(--color-secondary);
}

#contactForm .wpcf7-not-valid-tip {
    color: var(--color-secondary);
    font-size: var(--font-size-10);
    margin-top: 0.5rem;
    padding-left: 1.25rem;
    line-height: var(--line-height-10);
}

.wpcf7-not-valid {
    border: 1px solid #DE4B5C !important;
}

/* ===== INPUTS INDIVIDUALES ===== */

/* Input Nombre */
#contactForm [data-name="your-name"] input {
    width: 30.625rem;
    height: 1.25rem;
    display: flex;
    padding: 1.25rem;
    align-items: center;
    gap: 0.625rem;
    align-self: stretch;
    border-radius: var(--radius-xl);
    border: 0.0625rem solid var(--color-input-form);
    min-height: 3.75rem;
}
 
/* Input Email Input Teléfono */
#contactForm [data-name="your-email"] input, #contactForm [data-name="your-tel"] input {
    width: 14.8125rem;
    height: 1.25rem;
    display: flex;
    padding: 1.25rem;
    align-items: center;
    gap: 0.625rem;
    flex: 1 0 0;
    border-radius: var(--radius-xl);
    border: 0.0625rem solid var(--color-input-form);
    min-height: 3.75rem;
}

/* Textarea Mensaje */
#contactForm [data-name="your-message"] textarea {
    width: 30.625rem;
    height: 6.25rem;
    display: flex;
    padding: 1.25rem 1.25rem 3.125rem 1.25rem;
    align-items: center;
    gap: 0.625rem;
    align-self: stretch;
    border-radius: var(--radius-md);
    border: 0.0625rem solid var(--color-input-form);
    /* min-height: 7.5rem; */
}

.emailTel p{
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    align-self: stretch;
    width: 30.625rem;
}

#contactForm > div div {
    height: 100% !important;
    width: 30.625rem !important;
}

#contactForm > div div > form > div.emailTel + p:nth-child(1) {
    height: 10.5625rem !important;
}

/* input submit contact form */

input#requestDemo, input#requestDemo1 {
    height: 2.875rem;
    display: inline-flex;
    min-width: 30.625rem;
    padding: 0.75rem 1.5rem 0.75rem 1.5rem;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    border: none;
    border-radius: var(--radius-lg);
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13.4697 5.46967C13.7626 5.17678 14.2374 5.17678 14.5303 5.46967L20.5303 11.4697C20.8232 11.7626 20.8232 12.2374 20.5303 12.5303L14.5303 18.5303C14.2374 18.8232 13.7626 18.8232 13.4697 18.5303C13.1768 18.2374 13.1768 17.7626 13.4697 17.4697L18.1893 12.75H4C3.58579 12.75 3.25 12.4142 3.25 12C3.25 11.5858 3.58579 11.25 4 11.25H18.1893L13.4697 6.53033C13.1768 6.23744 13.1768 5.76256 13.4697 5.46967Z' fill='white'/%3E%3C/svg%3E"),
        linear-gradient(91deg, var(--color-primary, var(--color-primary)) 0.88%, var(--color-accent, var(--color-accent)) 99.35%);
    background-repeat: no-repeat, no-repeat;
    background-size: 1.5rem 1.5rem, 100% 100%;
    background-position: calc(50% + 4.5rem) center, 0 0;
    cursor: pointer;
    transition: background-position 0.3s ease-out;

    /* Estilos de texto */
    color: var(--color-white, var(--color-white));
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-semibold) !important;
    line-height: var(--line-height-18);
    letter-spacing: 0.0028125rem;
}

input#requestDemo:hover, input#requestDemo1:hover {
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13.4697 5.46967C13.7626 5.17678 14.2374 5.17678 14.5303 5.46967L20.5303 11.4697C20.8232 11.7626 20.8232 12.2374 20.5303 12.5303L14.5303 18.5303C14.2374 18.8232 13.7626 18.8232 13.4697 18.5303C13.1768 18.2374 13.1768 17.7626 13.4697 17.4697L18.1893 12.75H4C3.58579 12.75 3.25 12.4142 3.25 12C3.25 11.5858 3.58579 11.25 4 11.25H18.1893L13.4697 6.53033C13.1768 6.23744 13.1768 5.76256 13.4697 5.46967Z' fill='white'/%3E%3C/svg%3E"),
        var(--color-secondary);
    background-repeat: no-repeat, no-repeat;
    background-size: 1.5rem 1.5rem, 100% 100%;
    background-position: calc(50% + 5.5rem) center, 0 0;
}

.contenedor-privacidad, .politicaNegro {
    color: var(--color-text-muted) !important;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-base) !important;
    font-style: normal;
    line-height: var(--line-height-20);
}

.politicaNegro {
    font-weight: var(--font-weight-bold) !important;
}

/* Mensaje de envio de formulario */

.wpcf7-response-output {
    height: auto !important;
    margin: 0 !important;
    margin-top: -1.625rem !important;
    font-size: var(--font-size-small) !important;
}

/* Landing de Sectores */

.textSectoresAzul h1 {
    color: var(--color-accent);
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-smedium) !important;
    font-style: normal !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-slg) !important;
    text-transform: uppercase;
    align-self: stretch;
    margin: 0;
}

.titleMejorSalud p {
    color: var(--headers-color, var(--color-text-dark)) !important;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-large) !important;
    font-style: normal !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-xlg) !important;
    letter-spacing: -0.64px !important;
    align-self: stretch ;
}

.text2MejorSalud p {
    align-self: stretch;
    color: var(--headers-color, var(--color-text-dark)) !important;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal !important;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg) !important;
    margin: 0;
}

.ulSectores {
    color: var(--color-black);
}

.btnEspecialista {
    border-width: 0 !important;
}

.btnEspecialista, .btnEspecialista a {
    width: 19.75rem !important;
}

.btnEspecialista a {
    padding: 0.9375rem 1.5rem !important;
}

.btnEspecialista a:hover {
    border: 0;
}

.titleSectores h2 {
    color: var(--color-text-dark) !important;
    text-align: center;
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-mlarge);
    font-style: normal;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--line-height-56);
    letter-spacing: 0.015rem;
    align-self: stretch;
}

#direccionCalidad .textSectores p {
    color: var(--color-text-muted) !important;
    text-align: center;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg);
}

#gridCardSoftware  .titleSoftware p {
    align-self: stretch;
    color: var(--color-text-dark) !important;
    font-family: var(--font-family-h1) !important;
    font-size: 25px !important;
    font-style: normal;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--line-height-mlg);
    height: 6rem;
}

#gridCardSoftware .containerSoftware {
    display: flex;
    padding: 3rem 2rem;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 0;
    align-self: flex-start;
    border-radius: var(--radius-md);
    background: var(--white-color, var(--color-white));
    box-shadow: 0 0.25rem 0.625rem 0 var(--shadow-card);
}



.containerSalud {
    display: flex;
    width: 37.5rem;
    flex-direction: column;
    align-items: flex-start;
}

.containerSalud h2, .containerSalud .textSectores p {
    text-align: left;
}

.containerSalud .textSectores p {
    margin: 0;
}

#labelExp p{
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-lg) !important;
    text-transform: uppercase;
    align-self: stretch;
    margin: 0;
}

.labelColor1 p{
    color: var(--color-primary);
}

.labelColor2 p{
    color: var(--color-accent-yellow);
}

.labelColor3 p{
    color: var(--color-secondary);
}

#titleExp h3 {
    color: var(--color-text-dark);
    font-family: var(--font-family-h1) !important;
    font-size: var(--font-size-xlarge) !important;
    font-style: normal !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-40);
}

.textExpAltura p{
    height: 5.5rem;
}

#containerTecnoMult .btnInfo a {
    padding: 0;
}

#containerTecnoMult .btnInfo a > span{
    display: flex;
    padding-bottom: 0.25rem;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
    border-bottom: 0.0625rem solid var(--color-primary);
}
#containerTecnoMult .btnInfo a > span span{
    color: var(--headers-color, var(--color-text-dark));
    text-align: right;
    font-family: var(--font-family);
    font-size: var(--font-size-ssmall);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-slg);
}

/* Estilos para mensajes de Contact Form 7 */
.cf7-success {
    background: var(--color-cf7-success) !important;
    border-radius: var(--radius-lg) !important;
    color: var(--color-white) !important;
}

.cf7-validationError {
    background: var(--color-cf7-warning) !important;
    border-radius: var(--radius-lg) !important;
    color: var(--color-white) !important;
}

.cf7-error {
    background: var(--color-secondary) !important;
    border-radius: var(--radius-lg) !important;
    color: var(--color-white) !important;
}

.tagsSectores, .tagsCasos {
    align-items: center;
    display: flex;
}

.tagsSectores p, .tagsCasos p {
    margin: 0px;
}

.tagsCasos p {
    padding: 10px;
    font-size: 20px;
}

#retoClave .containerSoftware > div:nth-child(2) {
    height: 130px;
}

/* Responsive */

/* Versión ordenador pequeño */
@media (max-width: 1440px) {
    #footer, #footer > div {
        width: 100%;
    }

    #gridPartners {
        grid-template-columns: 35% 74% !important;
    }

    #gridPartners > div:last-child {
        width: 87%;
    }
    
    #gridPartners > div:last-child > div {
        width: 100vw;
        padding-right: 16px;
    }

    .blockForm, #sectionForm,
    .contenedor-privacidad .wpcf7-form-control,
    .contenedor-privacidad .wpcf7-list-item
    .contenedor-privacidad .label {
        width: 100%;
    }

    #contactForm > div > div {
        width: 100% !important;
    }
    #contactForm > div > div > div {
        width: 30% !important;
    }

    #contactForm > div > div form, 
    #contactForm > div > div form input,
    #contactForm > div div,
    .emailTel span,
    #contactForm [data-name="your-message"] textarea {
        width: 100% !important ;
    }

    .contenedor-privacidad p, .contenedor-privacidad .wpcf7-list-item {
        margin: 0px;
    }

    .contenedor-privacidad .wpcf7-form-control-wrap {
        display: flex;
    }

    .contenedor-privacidad label {
        display: flex !important;
        flex-direction: row;
        gap: 10px;
    }

    #contactForm > div > div form .contenedor-privacidad input {
        width: 4% !important;
    }

    .blockForm form input#requestDemo {
        min-width: 100% !important;
    }

    input#requestDemo {
        background-position: 6.9rem center, 0 0 !important;
    }

    input#requestDemo:hover {
        background-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13.4697 5.46967C13.7626 5.17678 14.2374 5.17678 14.5303 5.46967L20.5303 11.4697C20.8232 11.7626 20.8232 12.2374 20.5303 12.5303L14.5303 18.5303C14.2374 18.8232 13.7626 18.8232 13.4697 18.5303C13.1768 18.2374 13.1768 17.7626 13.4697 17.4697L18.1893 12.75H4C3.58579 12.75 3.25 12.4142 3.25 12C3.25 11.5858 3.58579 11.25 4 11.25H18.1893L13.4697 6.53033C13.1768 6.23744 13.1768 5.76256 13.4697 5.46967Z' fill='white'/%3E%3C/svg%3E"),
            var(--color-secondary) !important;
        background-position: 110px center, 0 0 !important;
        background-size: 24px 24px, 100% 100% !important;
        background-repeat: no-repeat, no-repeat !important;
    }

    #saberEstas div.gridSalud {
        grid-template-columns: 34% 63% !important;
    }
    
}


/* Versión tablet */
@media (max-width: 1257px) {
    
    .titleMejorSalud p{
        color: var(--white-color, #000) !important;
        text-align: left;
        font-family: "Space Grotesk" !important;
        font-size: 64px !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: 64px !important;
        letter-spacing: -0.64px !important;
        align-self: stretch;
    }

    .text2MejorSalud p {
        align-self: stretch;
        color: var(--white-color, #000) !important;
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-style: normal !important;
        font-weight: 400 !important;
    }

    #gridCardSoftware {
        display: flex !important;
        overflow-x: auto !important;
        gap: 1rem;
        height: 300px !important;
    }

    #gridCardSoftware > .containerSoftware {
        flex: 0 0 35%;
    }

    /* Timeline scroll en tablet */
    .twae-wrapper.twae-horizontal-timeline .twae-slider-container {
        overflow-x: auto !important;
    }

    .twae-wrapper.twae-horizontal-timeline .twae-slider-wrapper {
        display: flex !important;
        flex-wrap: nowrap !important;
    }

    .twae-wrapper.twae-horizontal-timeline .twae-story {
        flex: 0 0 45% !important;
        min-width: 18.75rem !important;
    }

    .twae-wrapper.twae-horizontal-timeline .twae-button-prev,
    .twae-wrapper.twae-horizontal-timeline .twae-button-next {
        display: none !important;
    }

    .twae-wrapper .twae-icon {
        top: -1.1rem !important;
    }

    .twae-wrapper .twae-media.large img {
        height: 214px;
        width: 336px;
        object-fit: cover 
    }

    #timeLineSectores div.twae-wrapper-inside div div div:first-child div.twae-content .twae-media.large img {
        height: 200px;
        width: 340px;
        object-fit: cover 
    }

    #saberEstas .gridSalud {
        grid-template-columns: 34% 65% !important;
    }

    #sectionForm {
        height: auto !important;
    }

    #containerIMGContact {
        height: 300px !important;
    }

    #contactForm > div {
        justify-content: center;
        display: flex;
    }

     /* Forzar 100% ancho en contenedores principales */
    .e-con.e-parent,
    .elementor-section,
    .elementor-container,
    .elementor-column,
    .is-layout-constrained {
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Ajustar elementos que puedan desbordarse */
    .elementor-widget-wrap {
        flex-wrap: wrap;
        width: 100%;
    }

    /* Asegurar que las columnas de Elementor se comporten bien */
    .elementor-row {
        width: 100%;
    }

    /* Override de variables globales WP en este rango */
    .wp-block-group.is-layout-constrained {
        max-width: 100% !important;
    }

    /* Activar scroll horizontal en tablet */
    #scrollMBL {
        display: flex !important;
        overflow-x: auto !important;
    }

    #scrollMBL > * {
        flex: 0 0 28%;
    }

    #headerPage {
        width: 100% !important;
        max-width: 100vw !important;
    }

    .elementor-menu-toggle {
        background-color: transparent !important;
    }

    #principalMenu {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: row !important;
    }

    /* Estilos unificados de tablet */
    #principalContent {
        height: 100vh;
    }

    #principalContent > div:first-child {
        height: 100vh;
    }

    #h1 h1 {
        font-size: var(--font-size-mlarge);
        line-height: var(--line-height-56);
        letter-spacing: -0.03rem;
    }

    #textHeaderHome p {
        font-size: var(--font-size-ssmall) !important;
        line-height: var(--line-height-slg);
    }

    #chooseOpinat .h2ChooseOpinat h2 {
        font-size: var(--font-size-xlarge) !important;
        line-height: var(--line-height-40);
        letter-spacing: 0.0125rem;
    }

    #containerNumbers {
        margin-bottom: 10rem;
    }

    #containerNumbers > div {
        padding-bottom: 1.5rem;
        align-items: center;
    }

    #containerNumbers > div .numbers p {
        text-align: center;
    }

    #containerNumbers > div .textNumbers p{
        text-align: center !important;
    }

    .grandeTitulo h2 {
        font-size: var(--font-size-xlarge);
        line-height: var(--line-height-40);
        letter-spacing: 0.0125rem;
    }

    #dropdownRecoge summary span div, #dropdownAnaliza summary span div, #dropdownActua summary span div{
        font-size: var(--font-size-xlarge);
        line-height: var(--line-height-40);
        gap: 2rem !important;
    }

    #titleExp h3 {
        font-size: var(--font-size-medium) !important;
        line-height: var(--line-height-mlg);
    }

    .cardExp {
        padding: 2rem 1.5rem;
        border-radius: var(--radius-md);
        width: 100% !important;
    }

    .textExpAltura p {
        height: auto;
    }

    .columnsLeads {
        grid-template-columns: 75% 20% !important;
    }

    #containerContact {
        height: auto;
    }

    #sectionForm {
        height: auto;
        grid-template-columns: 48% 50%;
    }

    #sectionForm > div:first-child {
        padding: 32px 65px;
        height: 80%;
        width: 100%;
    }

    #sectionForm > div:last-child {
        height: auto;
        width: 76%;
        justify-self: baseline;
    }

    .titleForm {
        height: auto !important;
    }

    .titleForm h3{
        font-size: var(--font-size-medium);
        line-height: var(--line-height-mlg);
    }

    .textForm {
        height: auto !important;
    }

    #contactForm {
        gap: 2rem;
        min-width: auto;
        padding-inline: 0px;
    }

    #contactForm > div div {
        width: 100% !important;
    }

    #contactForm [data-name="your-name"] input,
    #contactForm [data-name="your-message"] textarea,
    #contactForm [data-name="your-email"] input,
    #contactForm [data-name="your-tel"] input {
        flex: none !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .emailTel p{
        width: 100%;
    }

    input#requestDemo, input#requestDemo1 {
        min-width: 100%;
        width: 100%;
        background-position: calc(50% + 5rem) center, 0 0;
    }

    #contactForm > div > div form {
        width: 100% !important;
    }

    .cardExp {
        min-height: auto;
        width: auto !important;
    }
/* 
    .columnDer {
        width: 100% !important;
    } */

    #faq .miniTitulos p {
        width: auto !important;
    }

    #principalMenu > nav:last-child {
        position: fixed;
        top: 2.67rem;
        left: 0;
        z-index: 99;
        width: 100% !important;
        height: 100% !important;
    } 

    #logoMVL {
        padding-top: 8px;
    }

    #footer, #footer > div,  #gridPartners > div:last-child, #gridPartners > div:last-child > div {
        max-width: 100vw !important;
    }

    #retoClave > div > div:last-child {
        padding-inline: 24px;
    }

    div.twae-wrapper div.twae-icon {
        top: -2.15rem !important;
    }

    .ulSectores {
        text-align: left;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        align-content: flex-start;
        align-items: flex-start;
        width: 100%;
        justify-self: center;
    }
    
    div#timeLineSectores div.twae-wrapper-inside div div div div.twae-content {
        height: 302px !important;
    }

    .containerOrder > div:first-child {
        order: 1 !important;
    }

    .containerOrder > div:nth-child(2) {
        order: 3 !important;
    }

    .containerOrder > div:last-child {
        order: 2 !important;
    }

    .imgHeaderHome {
        background-image: none !important;
    }

    .videoHeigh {
        width: 100% !important;
    }
}

@media (max-width: 1240px) {
    #principalMenu > nav > ul {
        column-gap: 8px;
    }

    .sub-arrow {
        padding: 0 !important;
    }
}

@media (max-width: 1140px) {
   #headerPage > div > div:first-child {
        width: 32%;
        padding-right: 0px;
    }

    #headerPage > div > div:nth-child(2) {
        width: 31%;
    }

    #headerPage > div > div:nth-child(2) > nav {
        width: 100%;
    }

    #headerPage > div > div:nth-child(2) > nav > ul {
        gap: 0px;
        width: 100%;
    }
     
    #containerCTA {
        width: 23.25rem;
    }
    #principalMenu a {
        font-size: 14px !important;
    }

    .containerDivSelection > div {
        padding-inline: 40px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 40px !important;
    }
}

@media (max-width: 1113px) {

    #principalMenu a {
        font-size: 13px !important;
    }
}

@media (max-width: 1024px) {
    div.titleMejorSalud p{
        color: var(--white-color, #FFF) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 64px !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: 64px !important;
        letter-spacing: -0.64px !important;
        align-self: stretch;
    }

    .text2MejorSalud p {
        align-self: stretch;
        color: var(--white-color, #FFF) !important;
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-style: normal !important;
        font-weight: 400 !important;
    }

    div.twae-wrapper div.twae-icon {
        top: -1.15rem !important;
    }

    .ulSectores{
        color: white;
    }

    #contactForm {
        padding-inline: 1rem;
    }

    #sectionForm > div:last-child {
        width: 100% !important;
    }

    #gridPartners > div:last-child {
        width: 100%;
    }

    #containerIMGContact > div:first-child h3 {
        text-align: center;
    }

    .imgBack {
        align-items: center;
    }

    .imgBack > div > div:last-child, #sectores .imgBack > div > div:nth-child() {
        width: 42%;
    }

    .imgBack > div > div:last-child > div:first-child, .imgBack > div > div:last-child > div a {
        width: 100% !important;
    }

    #headerPage > div > div:first-child {
        width: 8.7rem;
    }

    #principalMenu {
        width: auto !important;
    }

    .colorWhite {
      color: white;  
    }

    #retoClave .containerSoftware > div:nth-child(2) {
        height: initial;
    }

    .casosExito #requestDemo , .casosExito .btnEspecialista, .casosExito .btnEspecialista a {
    width: 100% !important;
    }
    #imgBackground {
        height: 100vh;
    }
}

/* ========== VERSIÓN MOVIL ========== */
@media (max-width: 768px) {
    
    input#requestDemo1 {
        background-size: 25rem 1.5rem, 100% 100% !important;
    }

    #headerPage {
        width: 100% !important;
        inset-inline-start: 0px !important;
        max-width:767px !important;
    }

    #principalContent {
       height: 100vh;
    }

    #principalContent div.elementor-background-video-container {
       height: 100vh;
    }

    #logoMVL  img{
        width: 5rem;
        height: 2.3118125rem;
        flex-shrink: 0;
        aspect-ratio: 93/43;
    }

    #ctasMenu {
        display: flex;
        align-items: center;
        gap: 1.5rem;
        justify-content: flex-end;
    }

    #demoCTAMVL a {
        padding: 0;
    }

    #demoCTAMVL a > span{
        display: flex;
        padding: 0.25rem var(--spacing-xs) !important;
        justify-content: center;
        align-items: center;
        gap: var(--spacing-xs);
        border-radius: var(--radius-lg);
        background: linear-gradient(91deg, var(--color-primary) 0.88%, var(--color-accent) 99.35%);
    }

    #demoCTAMVL a > span > span:last-child{
        width: 2.75rem;
        color: var(--color-white);
        font-family: var(--font-family);
        font-size: var(--font-size-base);
        font-style: normal;
        font-weight: var(--font-weight-medium);
        line-height: var(--line-height-base);
    }

    #principalMenu {
        width: 1.125rem;
        height: 1.0625rem;
        flex-direction: row;
        align-items: flex-end;
        justify-content: normal;
        display: flex;
    }

    #principalMenu > div {
        background-color: transparent !important;
    }

    #principalMenu > div.elementor-menu-toggle.elementor-active {
        padding-bottom: .85rem;
    }

    #principalMenu > div.elementor-menu-toggle{
        padding-bottom: 0.5625rem;
    }

    div#principalMenu > nav:last-child {
        position: fixed;
        top: 2.67rem !important;
        left: 0;
        z-index: 99;
        width: 100% !important;
        height: 100vh !important;
    }

    /* Aplicar estilos de desktop al menú móvil */
    #principalMenu nav {
        height: 100%;
        align-items: flex-end;
    }

    #principalMenu a {
        padding: 0;
        gap: var(--spacing-xs);
        padding-bottom: 2rem;
        font-family: var(--font-family) !important;
        font-size: var(--font-size-base) !important;
        font-style: normal;
        font-weight: var(--font-weight-medium) !important;
        line-height: var(--line-height-base);
    }

    #principalMenu  a.highlighted {
        padding-bottom: 1.25rem;
    }

    #principalMenu > nav ul {
        gap: var(--spacing-lg);
        row-gap: 0;
    }

    #principalMenu > nav ul li:last-child a:hover {
        border: 0;
    }

    #principalMenu > nav ul li:hover ul li a:hover {
        background-color: var(--color-white);
        color: var(--color-text-dark);
    }

    #principalMenu > nav ul li ul li a {
        border-inline-start: 0;
    }

    a.elementor-item-active, a.highlighted, a.elementor-item:hover {
        color: var(--color-text-dark) !important;
        background-color: var(--color-white) !important;
    }

    #principalMenu span.sub-arrow {
        padding-left: var(--spacing-xs);
        display: inline-flex;
    }

    #principalMenu span.sub-arrow svg {
        transition: transform var(--transition-normal);
        transform-origin: center;
    }

    /* Rotar flecha cuando el submenu está abierto */
    #principalMenu nav ul li.menu-item-has-children > a[aria-expanded="true"] .sub-arrow svg {
        transform: rotate(180deg);
    }

    /* Rotar flecha en hover */
    #principalMenu nav ul li.menu-item-has-children:hover > a .sub-arrow svg {
        transform: rotate(180deg);
    }

    #principalMenu nav ul > li.menu-item-has-children {
        position: relative;
    }

    #principalMenu nav ul li ul.sub-menu {
        position: absolute;
        top: 100%;
        left: 0;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-0.625rem);
        transition: none;
        pointer-events: none;
    }

    #principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
        transition: opacity var(--transition-normal), visibility var(--transition-normal), transform var(--transition-normal);
    }

    #principalMenu svg {
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }

    #h1 h1 {
        align-self: stretch;
        color: var(--color-white);
        text-align: center;
        font-family: var(--font-family-h1);
        font-size: var(--font-size-xlarge);
        font-style: normal;
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-40);
        letter-spacing: -0.02rem;
    }

    #textHeaderHome p {
        align-self: stretch;
        color: var(--color-white);
        text-align: center;
        font-family: var(--font-family) !important;
        font-size: var(--font-size-base) !important;
        font-style: normal;
        font-weight: var(--font-weight-base) !important;
        line-height: var(--line-height-lg); 
    }

    #chooseOpinat .textSoftware p{
        align-self: stretch;
        color: var(--color-label, var(--color-accent));
        font-family: "Space Grotesk" !important;
        font-size: 1.3125rem !important;
        font-style: normal;
        font-weight: 700 !important;
        line-height: 1.625rem;
        text-transform: uppercase;
    }

    #chooseOpinat .h2ChooseOpinat h2 {
        align-self: stretch;
        color: var(--headers-color, var(--color-text-dark)) !important;
        font-family: "Space Grotesk" !important;
        font-size: 2rem !important;
        font-style: normal;
        font-weight: 500 !important;
        line-height: 2.5rem;
        letter-spacing: 0.01rem;
    }

    #chooseOpinat .textInfoChooseOpinat {
        display: flex;
    }

    #chooseOpinat .textInfoChooseOpinat p {
        color: var(--text-color, var(--color-text-muted));
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
        align-self: stretch;
    }

    #containerNumbers {
        margin-bottom: 7.5rem;
    }

    #containerNumbers > div {
        display: flex;
        padding-bottom: 1rem;
        padding-inline: 0;
        flex-direction: column;
        align-items: center;
        align-self: stretch;
    }

    #containerNumbers > div .numbers p {
        color: var(--primary-color, var(--color-primary)) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 5rem !important;
        font-style: normal;
        font-weight: 700 !important;
        line-height: 5rem ;
        letter-spacing: -0.05rem;
    }

    #containerNumbers > div .textNumbers p{
        color: var(--headers-color, var(--color-text-dark)) !important;
        text-align: center !important;
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
        width: 100%;
    }

    #containerPlat #requestDemo {
        width: 100%;
    }

    .grandeTitulo h2 {
        align-self: stretch;
        color: var(--headers-color, var(--color-text-dark)) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 2rem;
        font-style: normal;
        font-weight: 500 !important;
        line-height: 2.5rem;
        letter-spacing: 0.01rem;
    }
    
    .titleDropdown p{
        align-self: stretch;
        color: var(--headers-color, var(--color-text-dark));
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 700 !important;
        line-height: 1.5rem;
    }

    .titleDropdownSecond p {
        color: var(--headers-color, var(--color-text-dark));
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
    }

    .ulListadoPuntos ul li span:last-child  {
        flex: 1 0 0;
        color: var(--headers-color, var(--color-text-dark));
        font-family: "Source Sans 3" !important;
        font-size: 0.875rem;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.375rem;
    }

    #dropdownRecoge summary span div, #dropdownAnaliza summary span div, #dropdownActua summary span div{
        color: var(--headers-color, var(--color-text-dark));
        font-family: "Space Grotesk";
        font-size: 1.5rem;
        font-style: normal;
        font-weight: 500;
        line-height: 2.5rem;
        letter-spacing: 0.01rem;
        gap: 1.5rem !important;
    }

    #titleExp h3 {
        align-self: stretch;
        color: var(--headers-color, var(--color-text-dark));
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 1.5rem !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: 2rem;
        text-align: left;
    }

    .cardExp {
        display: flex;
        width: 100% !important;
        padding: 1.5rem 1rem;
        flex-direction: column !important;
        align-items: flex-start;
        gap: 1rem;
        align-self: stretch;
        border-radius: 1.5rem;
        background: var(--white-color, var(--color-white));
        box-shadow: 0 0.25rem 0.625rem 0 rgba(82, 82, 82, 0.10);
    }

    .textTecno p {
        align-self: stretch;
        color: var(--text-color, var(--color-text-muted));
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
    }

    .columnDer {
        width: 100% !important;
    }

    .cardExp #requestDemo, #contentComplicaciones #requestDemo, #faq #requestDemo, #sector #requestDemo, #gestionReputacion #requestDemo {
        width: 100%;
    }

    #contentComplicaciones .grandeTitulo h2 {
        text-align: center !important;
    }

    #contentComplicaciones .textComplicacions,
    #contentComplicaciones .textComplicacions p {
        color: var(--text-color, var(--color-text-muted));
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 1.5rem !important;
    }

    #gestionReputacion .grandeTitulo h2 {
        text-align: center !important;
    }

    #direccionCalidad  div.textExpAltura p {
        align-self: stretch;
        color: var(--text-color, var(--color-text-muted));
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
        margin: 0;
    }

    #scrollMBL {
        display: flex !important;
        overflow-x: auto !important;
        width: 100%;
        gap: 1.25rem;
        flex-direction: row;
        flex-wrap: nowrap;
    }

    #scrollMBL > * {
      flex: 0 0 50% !important;  
    }

    .textFinalSector p{
    align-self: stretch;
    color: var(--text-color, var(--color-text-muted)) !important;
    text-align: center;
    font-family: "Source Sans 3" !important;
    font-size: 1rem !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 1.5rem;
    }

    #faq #divEscuchamos {
        height: auto !important;
    }
    
    #faq .miniTitulos p {
        width: 21.5rem !important;
    }

    .imgTestigos {
        width: 5rem !important;
        height: 5rem !important;
    }

    .columnsLeads {
        grid-template-columns: 63% 34% !important; 
    }

    .leadCarrusel p {
        color: var(--headers-color, var(--color-text-dark)) !important;
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 700 !important;
        line-height: 1.5rem;
    }

    .textLeadCarrusel p {
        color: var(--headers-color, var(--color-text-dark)) !important;
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
    }

    #containerContact {
        height: 48.875rem;
    }

    #sectionForm > div:first-child {
        width: 100% !important;
        display: flex;
        padding: 1.5rem 2rem;
        flex-direction: column;
        justify-content: center !important;
        align-items: center;
        align-self: stretch;
        gap: 0;
    }

    #containerIMGContact {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    .titleForm h3{
        align-self: stretch;
        color: var(--white-color, var(--color-white)) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 1.5rem;
        font-style: normal;
        font-weight: 700 !important;
        line-height: 2rem;
    }

    .textForm p {
        align-self: stretch;
        color: var(--white-color, var(--color-white)) !important;
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-size: 1rem !important;
        font-style: normal;
        font-weight: 400 !important;
        line-height: 1.5rem;
        width: 270px !important;
    }

    #contactForm {
        display: flex;
        padding: 0;
        padding-inline: 1rem;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 1.5rem;
        flex: 1 0 0;
        min-width: auto;
    }

    #contactForm form{
        width: 100%;
    }

    #contactForm > div div {
        width: 100% !important;
    }

    /* Input Nombre Input Email y Teléfono */
    #contactForm [data-name="your-name"] input,
    #contactForm [data-name="your-email"] input,
    #contactForm [data-name="your-tel"] input {
        width: 100% !important;
        height: 1.25rem;
        display: flex;
        padding: 1.25rem;
        align-items: center;
        gap: 0.625rem;
        align-self: stretch;
        border-radius: var(--radius-xl);
        border: 0.0625rem solid var(--color-input-form);
        min-height: 3.75rem;
        min-width: 100% !important;
    }

    /* Textarea Mensaje */
    #contactForm [data-name="your-message"] textarea {
        width: 100% !important;
        height: 6.25rem;
        display: flex;
        padding: 1.25rem 1.25rem 3.125rem 1.25rem;
        align-items: flex-start;
        gap: 0.625rem;
        align-self: stretch;
        border-radius: var(--radius-md);
        border: 0.0625rem solid var(--color-input-form);
        min-width: 100% !important;
    }

    /* Botón Submit móvil */
    input#requestDemo, input#requestDemo1 {
        min-width: 100%;
        width: 100%;
        padding: 0.75rem 1.5rem;
        background-position: calc(50% + 3.75rem) center, 0 0;
    }

    /* Hover eliminado - usar regla general */

    input#requestDemo, input#requestDemo1 {
        background-position: 4.25rem center, 0 0 !important;
    }

    #footerRRHH {
        height: auto !important;
    }

    #acordeonFooterMBL .e-n-accordion-item-title-text{
        font-family: var(--font-family) !important;
        font-size: var(--font-size-base) !important;
        font-style: normal;
        font-weight: var(--font-weight-medium) !important;
        line-height: var(--line-height-base);
    }

    #timeLineSectores div.twae-wrapper-inside div div div:first-child div.twae-content .twae-media.large img {
        height: 167px !important;
        width: 340px !important;
        object-fit: cover !important;
    }

    .twae-wrapper .twae-media.large img {
        height: 181px !important;
        width: 336px !important;
        object-fit: cover !important;
    }

    .timeLineSol .twae-wrapper .twae-media.large img {
        height: auto !important;
    }

    #footerRRHH {
        display: flex;
        flex-direction: row;
        gap: 0;
    }

    #footerRRHH > div {
        width: 50% !important;
    }

    div.titleMejorSalud p {
        align-self: stretch;
        color: var(--white-color, #FFF) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 32px !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: 40px !important;
        letter-spacing: -0.32px !important;
    }

    .imgBack {
        max-width: 767px !important;
        justify-content: initial !important;
    }

    .btnsSectores div a, .btnsSectores div, #trabajamosSalud .btnsSectores div a, #trabajamosSalud .btnsSectores div {
        width: 100% !important;
    }

    .text2MejorSalud p {
        align-self: stretch;
        color: var(--white-color, #FFF) !important;
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important;
    }

    .titleSectores h2 {
        align-self: stretch;
        color: var(--headers-color, #202334) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 32px !important;
        font-style: normal !important;
        font-weight: 500 !important;
        line-height: 40px !important;
        letter-spacing: 0.16px !important;
    }

    div#direccionCalidad div.textSectores p {
        align-self: stretch;
        color: var(--text-color, #737B92) !important;
        text-align: center;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important;
    }

    #gridCardSoftware > .containerSoftware {
        flex: 0 0 58% !important;
    }

    #trabajamosSalud {
        max-width: 767px !important;
    }

    #trabajamosSalud > div > div:first-child {
        width: 100% !important;
    }
        #timeLineSectores > div {
            display: flex;
        justify-content: center;
        }

    .twae-wrapper {
        margin: 0px !important;
    }

    #trabajamosSalud   .titleSectores h2 {
        text-align: left !important;
    } 

    #saberEstas .requestDemo #requestDemo, 
    #direccionCalidad .requestDemo #requestDemo, 
    #containerSlider .requestDemo #requestDemo{
        width: 100%;
    }

    #containerSlider .titleSlider p {
        align-self: stretch;
        color: var(--white-color, #FFF) !important;
        font-family: "Space Grotesk" !important;
        font-size: 24px !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: 32px !important; 
    }

    #containerSlider .textSlider p {
        color: var(--white-color, #FFF) !important;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important; 
        align-self: stretch;
    }

    .cardExp {
        padding: 24px 16px !important;
    }

    .ulSectores {
        padding-left: 24px;
        justify-self: center;
    }
    
    .imgBack > div {
        padding-top: 120px !important;
    }

    .imgBack > div > div:last-child, .gridBtns  {
        width: 88% !important;
    }

    div#timeLineSectores div.twae-wrapper-inside div div div div.twae-content {
        height: 302px !important;    
    }

    #ctasMenu {
        width: auto;
    }

    .divTextos {
        width: 72%;
    }

    .partnersCol .columnIzq {
        justify-content: left;
        width: 100% !important;
    }

    .gridPartners .e-con-inner {
        height: auto !important;
    }

    .capacitiesPartners {
        gap: 20px !important;
    }
}

@media (max-width: 495px) {
    #footerRRHH {
        flex-direction: column;
    }

    #footerRRHH > div {
        min-width: 100%;
    }
    #footerRRHH > div:last-child {
        justify-content: center;
    }

    #feedback .columnDer .title p{
        font-size: 16px;
    }

    .divIconoFlecha {
        width: 20%;
    }

    .divIconoFlecha svg {
        width: 24px;
    }
}

@media (max-width: 440px) {
    #gridCardSoftware > .containerSoftware {
        flex: 0 0 72% !important;
    }

    #gridCardSoftware .titleSoftware p {
        font-size: 18px !important;
    }

    div.contactGridBoxes > div {
        flex-direction: row !important;
    }

    #scrollMBL > * {
        flex: 0 0 94% !important;
    }

    #scrollMBL.sobreOpinat > * {
      flex: 0 0 90% !important;  
    }

    #seguridad1 > div:last-child img {
        width: 100% !important;
    }
    
    #seguridad4 #requestDemo, #seguridad2 #requestDemo {
        width: 100%;
    }

        
    .imgBack > div {
        padding-top: 120px !important;
    }

    .contactGridBoxes > div {
        min-height: 150px;
    }

    #imgBackground.enterpriseHeader.renting {
        background-position: -400px 0px !important;
        background-repeat: no-repeat !important;
        background-size: 843px auto !important;
    }
}


@media (max-width: 380px) {
    input#requestDemo1 {
        background-size: 1.5rem 1.5rem, 100% 100% !important;
    }
    
    #retoClave > div {
        padding-inline: 16px;
    }

    #retoClave > div > div:last-child {
        margin-top: 0px;
        padding-inline: 0px;
    }

    #gridCardSoftware > .containerSoftware {
        flex: 0 0 100% !important;
        padding: 3rem 1rem;
    }
    
    #gridCardSoftware > .containerSoftware p{
        font-size: 24px !important;
    }
    
    #gridCardSoftware > .containerSoftware.conocimientoSectorial p{
        font-size: 16px !important;
    }

    div.twae-wrapper div.twae-icon {
        top: -1.3rem !important;
    }

    #saberEstas .textSectores p{
        align-self: stretch;
        color: var(--text-color, #737B92) !important;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important;
    }

    div#saberEstas div.textSalud p {
        overflow: hidden;
        color: var(--text-color, #737B92) !important;
        text-overflow: ellipsis !important;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important;
    }
    #saberEstas > div {
        padding-bottom: 70px;
    }

    #containerSlider > div > div:last-child{
        padding-inline: 16px;
    }

    #direccionCalidad {
        padding-inline: 16px;
    }

    div#direccionCalidad div.textSectores p {
        color: var(--text-color, #737B92);
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important; 
        align-self: stretch;
        text-align: left;
    }

    #titleExp h3 {
        align-self: stretch;
        color: var(--headers-color, #202334);
        font-family: "Space Grotesk" !important;
        font-size: 32px !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: 40px !important; 
    }

    #direccionCalidad div.textExpAltura p {
        text-align: left !important;
    }

    .lineaMBL {
        display: flex;
    }

    #containerContact {
        padding-inline: 16px;
    }

    #footerRRHH  {
        flex-direction: column;
    }

    #footerRRHH > div {
        width: 100% !important;
    }

    #footerMenu, #footerMenu a {
        padding-left: 0px;
    }

    div div#seguridad1 > div:first-child {
        width: 80% !important;
    }

    #seguridad3 .requestDemo #requestDemo > span > span:last-child {
        font-size: 14px !important;
    }

}


/* =========== Sectores ===========*/

#trabajamosSalud .btnEspecialista, #trabajamosSalud .btnEspecialista a {
    width: 15.438rem !important;
}

#timeLineSectores > div > div {
    margin: 0px;
    width: 100%;
}

#timeLineSectores > div > div {
    height: 414px;
}

#timeLineSectores div.twae-wrapper-inside div div div div.twae-content{
       padding-top: 7px !important;
       height: 255px !important;
}

.twae-slider-wrapper.swiper-wrapper.no-height {
    margin-top: 7.3125rem;
     height: 28.5rem !important;
}

.timelinePartners .twae-slider-wrapper.swiper-wrapper.no-height {
    height: 20rem !important;
}

.timelinePartners .twae-content {
    /*height: 158px !important; */
}

.twae-arrow {
    display: none;
}

.twae-content {
    border-top: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 1rem 0.5rem !important;
    justify-content: flex-start;
    height: 100% !important;
}

.twae-title {
    flex: 1 0 0;
    align-self: stretch;
    color: var(--headers-color, var(--color-text-dark)) !important;
    font-family: "Space Grotesk";
    font-size: 1.125rem !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 1.5rem !important;
    text-transform: uppercase;
    order: 1 !important;
    justify-content: flex-start !important;
    margin-bottom: 1rem !important;
    max-height: 50px !important;
}

.twae-media.large {
    order: 2 !important;
    margin-bottom: 0.375rem;
}

.twae-wrapper .twae-icon {
    background: var(--color-black) !important;
    border: 0;
    width: 0.763rem;
    height: 0.75rem;
    top: -2.3rem !important;
    left: auto !important;
}

.twae-wrapper .twae-h-line {
    margin-left: 0.625rem;
    width: 100% !important;
    height: 0.0625rem !important;
    stroke-width: 0.0625rem !important;
    background-color: var(--color-primary) !important;
}

i.fas.fa-chevron-left,
i.fas.fa-chevron-right {
    display: none !important;
}

#saberEstas .titleSectores  {
    padding: 0px;
}

#saberEstas .textSectores  {
    padding: 16px 0px;
}

#saberEstas .textSectores p  {
    margin: 0px ;
}

#saberEstas .titleSectores h2,#saberEstas .textSectores p, #direccionCalidad .titleSectores h2{
    text-align: left;
}
#saberEstas .titleSalud p {
    color: var(--headers-color, var(--color-text-dark));
    font-family: "Space Grotesk";
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.625rem;
}

#saberEstas .textSalud p {
    overflow: hidden;
    color: var(--text-color, var(--color-text-muted));
    text-overflow: ellipsis;
    font-family: "Source Sans 3" !important;
    font-size: 1.125rem !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 1.625rem;
    margin: 0;
}

#saberEstas .gridSalud {
    grid-template-columns: 34% 67% !important;
}

div div.elementor-element.e-con-full.cardExp.e-flex.e-con.e-child {
    display: flex;
    width: auto !important;
    padding: var(--spacing-xxlg) var(--spacing-lg) var(--spacing-xxlg) var(--spacing-lg);
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 0;
    border-radius: var(--spacing-lg);
    background: var(--white-color, var(--color-white));
    box-shadow: 0 0.25rem 0.625rem 0 var(--shadow-card);
    min-height: 33.8125rem !important;
    align-self: stretch;
    transition: all 0.4s ease;
    transform-origin: bottom;
}

#direccionCalidad .textSectores p {
    margin: 0;
    color: var(--text-color, #737B92) !important;
    font-family: "Source Sans 3" !important;
    font-size: 18px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 26px; 
    align-self: stretch;
    text-align: left;
}

#containerSlider .titleSlider p {
    color: var(--white-color, var(--color-white));
    font-family: "Space Grotesk";
    font-size: 2rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2.5rem;
}

#containerSlider .miniTitleSlider p {
    width: 9.375rem;
    color: var(--white-color, var(--color-white));
    font-family: "Source Sans 3";
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.625rem;
}

#containerSlider .textSlider  p {
    color: var(--white-color, var(--color-white));
    font-family: "Source Sans 3" !important;
    font-size: 1.125rem !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 1.625rem;
    flex: 1 0 0;
    margin: 0;
}

#containerSlider .gridSalud {
    grid-template-columns: 16% 84% !important
}

.textExpAltura p {
    color: var(--text-color, #737B92);
    font-family: "Source Sans 3" !important;
    font-size: 18px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 26px; 
    align-self: stretch;
}


/* ==== Empresa - Equipo ==== */

#empresa1 {
    padding-block: 60px;
}

#empresa2 {
    padding-block: 120px ;
}

#empresa1 div.containerRep, #empresa2 div.containerRep,  #empresa3 div.containerRep {
    width: 100% !important;
}

#empresa1 div.titleSectores h1 {
    color: var(--headers-color, #202334) !important;
    text-align: center;
    font-family: "Space Grotesk" !important;
    font-size: var(--Font-Sizes-Headers-H1-size, 64px) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: var(--Font-Sizes-Headers-H1-line, 64px);
    letter-spacing: -0.64px;
}

#empresa1 div.textSectores p, #empresa2 div.textSectores p, #empresa3 div.textSectores p {
    color: var(--text-color, #737B92);
    text-align: center;
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_M, 18px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px); 
    align-self: stretch;
}

#empresa2 div.textSectores p {
    margin: 0px;
    text-align: left;
}


#empresa1 div.btnsSectores {
    justify-content: center;
    column-gap: 16px;
}

#empresa2 div.containerRep {
    display: flex;
    width: 696px;
    flex-direction: column;
    align-items: flex-start;
}

#empresa2 .twae-content {
    position: relative;
    width: 310px;
    padding: 16px !important;
    overflow: hidden;
    transition: all 0.4s ease;
    height: 100px !important;
}

#empresa2 .twae-title {
    text-align: left;
}

#empresa2 .imgTimeLine {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    transition: transform 0.4s ease;
    opacity: 1 !important;
    transform: translateY(0) !important;
}

#empresa2 .twae-story:hover .imgTimeLine {
    transform: rotate(180deg) !important;
}

#empresa2 .twae-description {
    overflow: visible !important;
}

#empresa2 .twae-description span {
    display: inline-block;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateY(-15px);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    color: var(--text-color, #737B92);
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_M, 18px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px) !important;
    text-align: left;
}

#empresa2 .twae-story:hover .twae-description span {
    max-height: 500px;
    opacity: 1;
    transform: translateY(0);
    margin-top: 12px;
}

#empresa2 .twae-story:hover .twae-content {
    height: auto !important;
}

#empresa2 #timeLine > div > div {
    margin: 0px;
}

#empresa2 #timeLine > div > div > div > div > div {
    margin-top: 73px;
    min-height: 250px;
    height: auto !important;
}

#empresa2 #timeLine > div > div > div > div > div > div {
    margin: 0px !important;
    height: 270px;
}

#empresa2 .twae-h-line {
    top: 40px;
}

div#empresa2 div#timeLine > div > div > div > div > div > div div.twae-icon {
    top: -2.38rem !important;
}

#empresa3 {
    margin-block: 120px 32px;
}

#empresa3 .titleSectores h2 {
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H2-size, 48px);
    font-style: normal;
    font-weight: 500;
    line-height: var(--Font-Sizes-Headers-H2-line, 54px); 
    letter-spacing: 0.24px;
    align-self: stretch;
    text-align: left;
}

#empresa3 div.textSectores  {
    text-align: left;
    margin: 0px;
}

#empresa3 .nombreApellido,
#empresa4 .nombreApellido  {
    align-items: center;
}

#empresa3 .nombreApellido div:first-child p,
#empresa4 .nombreApellido div:first-child p{
    color: var(--headers-color, #202334);
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_XXL, 24px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_XXL_line, 32px); 
    margin: 0px;
}

#empresa3 .nombreApellido div:last-child p,
#empresa4 .nombreApellido div:last-child p {
    color: var(--text-color, #737B92);
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_M, 18px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px);
    margin: 0px;
}

#empresa4 {
    margin-bottom: 120px !important;
}

/* ==== Empresa - Seguridad ==== */

#seguridad1 .titleSectores h1{
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H1-size, 64px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Font-Sizes-Headers-H1-line, 64px); 
    letter-spacing: -0.64px;
    align-self: stretch;
}

#seguridad1 .textNormal p {
   color: var(--headers-color, #202334) !important;
}

#seguridad1 .btnEspecialista  {
    width: 300px !important;
}

#seguridad2 {
    padding-block: 120px;
}

#seguridad2 .textNormal p {
    margin-block: 24px;
}

#seguridad2 .flexCert > div {
    padding: 0px;
}

#seguridad2 .gridCert {
    display: flex;
    padding: 0 72px;
    align-items: center;
    gap: 10px;
    align-self: stretch; 
    border-radius: 80px;
    background: var(--white-color, #FFF);
    box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.10);
    max-width: 100% !important;
}

#seguridad2 .gridCert > div:first-child {
    display: flex;
    width: 120px;
    height: 120px;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1 / 1;
    border-radius: 20px;
    background: var(--bd-grey-color, #EFF2F6);
    box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.08);
    min-width: 120px;
}

#seguridad2 .gridCert img {
    width: 100px;
    height: 107px;
}

#seguridad2 .gridCert img:last-child {
    width: 96px;
    height: 102.848px;
}

#seguridad2 .gridCert .contentGridCert {
    display: flex;
    padding: 32px 0 32px 32px;
    flex-direction: column !important;
    align-items: flex-start;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: 100px;
    gap: 0px;
    flex-wrap: wrap;
    width: 100%;
    max-width: 100% !important;
}

@media (max-width: 440px) {
    #seguridad2 .gridCert .contentGridCert {
        display: block !important;
        border-radius: 0;
        padding-left: 0px;
    }

}


#seguridad2 .gridCert .contentGridCert div:first-child p {
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk" !important;
    font-size: var(--Font-Sizes-Headers-H5-size, 20px) !important;
    font-style: normal;
    font-weight: 500 !important;
    line-height: var(--Font-Sizes-Headers-H5-line, 26px); 
}

#seguridad2 .gridCert .contentGridCert div:last-child p {
    color: var(--headers-color, #202334);
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_XS, 14px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_XS_line, 22px); 
}

#seguridad2 .gridLastContentCert {
    align-items: center;
}

#seguridad2 .gridLastContentCert .flexGridLastContent h3 {
    align-self: stretch;
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H3-size, 32px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Font-Sizes-Headers-H3-line, 40px);
}

#seguridad2 .gridLastContentCert .flexGridLastContent .minGridCert {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

#seguridad2 .gridLastContentCert .flexGridLastContent .minGridCert .textNegritaGrid {
    flex: 1 0 0;
}

#seguridad2 .gridLastContentCert .flexGridLastContent .minGridCert .textNegritaGrid p {
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk" !important;
    font-size: var(--Font-Sizes-Headers-H5-size, 20px) !important;
    font-style: normal;
    font-weight: 500 !important;
    line-height: var(--Font-Sizes-Headers-H5-line, 26px); 
    margin: 0px;
}

#seguridad2 .gridLastContentCert .flexGridLastContent .minGridCert .textNormal {
    flex: 2 0 0;
}

#seguridad2 .gridLastContentCert .flexGridLastContent .minGridCert .textNormal p {
    overflow: hidden;
    color: var(--text-color, #737B92) !important;
    text-overflow: ellipsis;
    font-family: "Source Sans 3";
    font-size: var(--Font-Sizes-Body-p_M, 18px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px) !important; 
    margin: 0px;
}

#seguridad3 .blockArquitectura {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0px;
    align-self: stretch;
    text-align: center;
}

#seguridad3 .blockArquitectura .textNormal p {
    padding-block: 16px;
    margin: 0px;
}

#seguridad3 > div > div:nth-child(2) {
    margin-bottom: 16px;
}

#seguridad3 .gridArq {
    grid-template-columns: 21% 2% 21% 2% 21% 2% 21%;
    justify-content: center;
}

#seguridad3 .gridArq .arrowGridArq img {
    width: 24px;
    height: 24px;
}

#seguridad3 .contentGridArq {
    display: flex;
    padding: 16px;
    flex-direction: column;
    align-items: center;
    flex: 1 0 0;
    border-radius: 16px;
    border: 1px solid var(--bd-grey-color, #EFF2F6);
    background: var(--white-color, #FFF);
    box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.16);
}

#seguridad3 .gridArq .contentGridArq div:nth-child(2) p {
    color: var(--headers-color, #202334);
    text-align: center; 
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_M, 18px) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px); 
    margin: 0px;
    padding-block: 16px 8px;
}

#seguridad3 .gridArq .contentGridArq div:last-child p {
    color: var(--headers-color, #202334);
    text-align: center;
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_XS, 14px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_XS_line, 22px);
    margin: 0px;
}

#seguridad3 .bannerArq {
    display: flex;
    padding: 32px;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    align-self: stretch;
    border-radius: 16px;
    background: var(--primary-color-background, #D6F2FF);
}

#seguridad3 .bannerArq p {
    color: var(--headers-color, #202334);
    text-align: center;
    font-family: "Space Grotesk" !important;
    font-size: var(--Font-Sizes-Headers-H5-size, 20px) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: var(--Font-Sizes-Headers-H5-line, 26px); 
}

#seguridad4 .gridAcceso {
    min-height: auto;
    align-items: normal;
}

#seguridad4 .gridAcceso div {
    padding: 0px;
}

#seguridad4 .textNormal p {
    padding-block: 16px;
}

#seguridad4 .gridSeguridad4 > div{
    display: flex;
    padding: 48px 32px;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: 24px;
    background: var(--white-color, #FFF);
    box-shadow: 0 4px 10px 0 rgba(82, 82, 82, 0.10);
}

#seguridad4 .titleh3 h3 {
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H4-size, 26px);
    font-style: normal;
    font-weight: 500;
    line-height: var(--Font-Sizes-Headers-H4-line, 32px); 
}

#seguridad4 .listSeguridad ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    align-self: stretch;
}

#seguridad4 .listSeguridad ul li {
    color: var(--text-color, #737B92);
    font-family: "Source Sans 3";
    font-size: var(--Font-Sizes-Body-p_M, 18px);
    font-style: normal;
    font-weight: 400;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px); 
}

#seguridad4 .listSeguridad ul li::marker {
    color: #48CBFF;
}

#seguridad5 {
    display: flex;
    padding: 72px 120px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-self: stretch;
}

#seguridad5 > div {
    padding: 0px;
}

#seguridad5 > div > div:first-child {
    flex: 2 0 0;    
}

#seguridad5 > div > div:last-child {
    flex: 1 0 0;
}

#seguridad5 .titleh3 h3 {
    color: var(--white-color, #FFF);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H3-size, 32px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Font-Sizes-Headers-H3-line, 40px);
}

#seguridad5 .textSeguridad p {
    color: var(--white-color, #FFF);
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_M, 18px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px);
    margin: 0px;
}

/* ==== Casos de Éxito ==== */

.titleCardCasos p{
    height: 64px;
}

.gridTextCasos p {
    margin: 0px;
}

.containerTextCasos p{
    height: 96px;
}

.btnExito:hover {
    border: 1px solid #FFD66B !important;
}

#scrollMBL.casosExito .cardSector:nth-child(odd) {
    max-height: 791px;
}

#scrollMBL.casosExito .cardSector::after {
    border-radius: 290px;
}

#scrollMBL.casosExito .cardSector .titleSector h3 {
    color: var(--color-label, #48CBFF);
    text-align: center;
    font-family: "Space Grotesk";
    font-size: 21px;
    font-style: normal;
    font-weight: 700;
    line-height: 26px; 
    text-transform: uppercase;
}

#scrollMBL.casosExito .cardSector .textSector p{
    font-family: "Source Sans 3";
    font-weight: 400;
}

#scrollMBL.casosExito .cardSector .textSector strong {
    font-family: "Space Grotesk";
    font-weight: 700;
    text-transform: uppercase;
}

#scrollMBL.casosExito .cardSector a {
    display: flex;
    min-width: 120px;
    padding: 15px 24px;
    justify-content: center;
    align-items: center;
    border-radius: 24px;
    border: 1px solid var(--white-color, #FFF);
}

#scrollMBL.casosExito .cardSector a:hover {
    display: flex;
    min-width: 120px;
    padding: 15px 24px;
    justify-content: center;
    align-items: center;
    border-radius: 24px;
    border: 1px solid var(--white-color, #FFF);
    background: var(--white-color, #FFF);
}

#scrollMBL.casosExito .cardSector a > span > span {
    color: var(--white-color, #FFF);
    text-align: center;
    font-family: "Source Sans 3";
    font-size: var(--Font-Sizes-Body-p_M, 18px);
    font-style: normal;
    font-weight: 600;
    line-height: var(--Font-Sizes-Body-p_M, 18px); 
    letter-spacing: 0.045px;
}

#scrollMBL.casosExito .cardSector a:hover > span > span {
    color: var(--headers-color, #202334);
    text-align: center;
    font-family: "Source Sans 3";
    font-size: var(--Font-Sizes-Body-p_M, 18px);
    font-style: normal;
    font-weight: 600;
    line-height: var(--Font-Sizes-Body-p_M, 18px);
    letter-spacing: 0.045px;
}

#cef-sector, #cef-servicio {
    width: 10% !important;
}

/* ==== Responsive Empresa ==== */

@media (max-width: 1280px) {
    #empresa3 div.e-con-inner {
        display: block;
    }

    #empresa3 .containerRep {
        padding-bottom: 48px;
    }

    #empresa4 .cardsEmpresaEquipo  {
        display: grid;
        grid-template-columns: 1fr 1fr;
        row-gap: 48px;
    }
}

@media (max-width: 1024px) {

    #seguridad1 > div:first-child {
        z-index: 2;
        position: absolute;
        margin: 0 auto;
        top: 0;
        left: 0;
        right: 0;
        text-align: center;
        width: 59%;
    }

    #seguridad1 > div:last-child {
        position: absolute;
        width: 100%;
        opacity: 1;
    }

    #seguridad1 .textNegrita p {
        align-self: stretch;
        color: var(--white-color, #FFF) !important;
        text-align: center;
        font-family: "Space Grotesk" !important;
        font-size: 32px !important;
        font-style: normal;
        font-weight: 700 !important;
        line-height: 40px; 
        letter-spacing: -0.32px;
    }

    #seguridad1 .textNormal p {
        color: var(--white-color, #FFF) !important;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important;  
    }

    #seguridad1 .gridBtns div:last-child a {
        color: white;
    }
    
    div#seguridad4 div.gridAcceso {
        display: flex;
        flex-direction: column;
        width: 100%;
        padding-inline: 16px;
    }

    .textMVLCasos h1, .textCursivaCursos p {
        color: white !important;
    }

    #seguridad4 .listSeguridad ul {
        padding: 16px;
    }

    #scrollMBL.casosExito > * {
       flex: 0 0 47%;
    }

    #scrollMBL > * {
        flex: 0 0 34%;  
    }

}

@media (max-width: 768px) {
    #empresa1 {
        padding-block: 77px 48px;
        padding-inline: 16px;
    }

    #empresa1 div.titleSectores p {
        font-size: var(--Font-Sizes-Headers-H1-size, 32px) !important;
        line-height: var(--Font-Sizes-Headers-H1-line, 32px); 
        letter-spacing: -0.32px;
    }

    #empresa1 div.textSectores p {
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-weight: 400 !important;
        margin: 0px;
        padding-bottom: 16px;
    }

    #empresa1 .btnsSectores {
        display: flex;
        flex-direction: column;
        width: auto;
        gap: 16px;
    }

    #empresa1 .btnsSectores div {
        width: auto !important;
    }

    #empresa2, #empresa3, #empresa4  {
        padding-block: 60px;
        padding-inline: 16px;
        margin-block: 0px !important;
    }

    #empresa2 .titleSectores h2, #empresa3 .titleSectores h2 {
        font-size: var(--Font-Sizes-Headers-H2-size, 24px) !important;
        line-height: var(--Font-Sizes-Headers-H2-line, 32px) !important; 
        letter-spacing: 0.12px !important;
        text-align: left;
    }

    #empresa2 div.textSectores p, #empresa3 div.textSectores {
        font-size: var(--Font-Sizes-Body-p_M, 14px) !important;
        line-height: var(--Font-Sizes-Body-p_M_line, 18px); 
    }

    #empresa2 .btnsSectores, #empresa3 .btnsSectores  {
        width: auto !important;
    }

    #empresa2 #timeLine > div > div {
        width: 100%;
    }

    div#empresa2 div#timeLine > div > div > div > div > div > div  {
        margin-right: 32px !important;
    }

    div#empresa2 div#timeLine > div > div > div > div > div > div div.twae-icon {
        top: -2.4rem !important;
    }

    #empresa3 {
        padding-bottom: 32px !important;
    }

    #empresa3 .containerRep {
        padding-bottom: 48px;
    }

    #empresa4 {
        padding-top: 0px;
    }

    div#empresa4 div.cardsEmpresaEquipo  {
        display: flex;
    }

    div#seguridad1 > div:first-child {
        width: 71% !important;
    }
    
    #seguridad1 .titleSectores h1 {
        color: var(--white-color, #FFF);
        text-align: center;
        font-family: "Space Grotesk";
        font-size: 32px;
        font-style: normal;
        font-weight: 700;
        line-height: 40px; 
        letter-spacing: -0.32px;
        align-self: stretch;
    }

    #seguridad1 .gridBtns {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 16px;
        align-self: center;
        width: 100% !important;
    }

    #seguridad1 > div:last-child img{
        width: 75%;
        object-position: center;
        object-fit: cover;
        height: 100vh;
        min-height: 100vh;
    }

    #seguridad1 .gridBtns div:last-child a, #seguridad1 .requestDemo {
        width: 100% !important;
    } 

    #seguridad1 .requestDemo a{
        width: 300px !important;
    }

    #seguridad1 .gridBtns div:last-child a:hover {
        color: #202334;
    }

    #seguridad2 {
        padding-block: 60px;
    }

    .titleCardCasos p{
        height: auto;
    }

    #seguridad3 .arrowGridArq {
        width: 100% !important;
    }

    #seguridad3 .arrowGridArq img {
       transform: rotate(90deg) !important;
    }

    #scrollMBL.casosExito > * {
        flex: 0 0 87%;
    }

    #scrollMBL.casosExito .cardSector::after {
        border-radius: 290px;
        height: 633px;
        top: 79px;
    }
    
    .cardSector {
        padding-bottom: 170px;
    }

    .cardSector:hover .textSector {
        max-height: 18.375rem;
    }
}

@media (max-width: 510px) {
    #seguridad2 .gridCert {
        flex-direction: column;
        padding: 0px 40px;
        padding-top: 20px;
    }
}

@media (max-width: 308px) {
#scrollMBL.casosExito > * {
        flex: 0 0 63%;
    }
}

/* ==== Soluciones ====*/

#expCliente .btnEspecialista a, #expCliente .btnEspecialista, #expB2B .btnEspecialista a, #expB2B .btnEspecialista {
    width: fit-content !important;
}

.b2bEsencial .ulListadoPuntos li span, .b2bIntegraciones .ulListadoPuntos li span {
    color: var(--headers-color, #202334);
    font-family: "Source Sans 3" !important;
    font-size: var(--Font-Sizes-Body-p_S, 16px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: var(--Font-Sizes-Body-p_S_line, 26px) !important;    
}

.acordeonFAQ > div {
    row-gap: 20px;
    display: flex;
    flex-direction: column;
}

.acordeonFAQ summary {
    justify-content: space-between;
    width: 100%;
}

.acordeonFAQ details {
    align-self: stretch;
    border-radius: var(--Gaps-gap-8, 8px) !important;
    border: 1px solid var(--white-color, #FFF);
    background: var(--white-color, #FFF);
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.16);
    overflow: hidden;
}

.acordeonFAQ details > summary {
    padding: var(--Grid-margin-inline, 24px) var(--Grid-margin-vertical, 48px) !important;
}

.acordeonFAQ details > summary > span:first-child p {
    color:  #202334 !important;
    font-family: "Space Grotesk" !important;
    font-size: 20px !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 26px !important; 
}

.acordeonFAQ details > *:not(summary) {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: var(--Grid-margin-inline, 24px);
    padding: 0 var(--Grid-margin-vertical, 48px) var(--Grid-margin-inline, 24px) !important;
}

.acordeonFAQ h3 {
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H5-size, 20px) !important;
    font-style: normal;
    font-weight: 700;
    line-height: var(--Font-Sizes-Headers-H5-line, 26px); 
}

.acordeonFAQ p {
    color: var(--headers-color, #202334) !important;
    font-feature-settings: 'liga' off, 'clig' off ;
    font-family: "Roboto Flex" !important;
    font-size: 16px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 24px !important; 
}

@media (min-width: 1025px) {

#imgBackground::before {
    --background-overlay: white ;
    background-color: white ;
}
}

/* ==== Contacto ==== */
.cf7-form-wrapper {
  display: flex;
  flex-direction: column;
  max-width: 696px;
  margin: 0 auto;
  padding: 0;
  font-family: 'Source Sans 3', sans-serif;
  gap: 24px;
}

.cf7-row {
  display: flex;
  gap: 0;
  align-items: flex-start;
}

.cf7-full-width {
  flex-direction: column;
  gap: 0;
}

.cf7-two-cols {
  flex-direction: row;
  gap: 20px;
  min-height: 0px;
}

.cf7-two-cols .cf7-field-group {
  flex: 1;
}

.cf7-field-group {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
}

.cf7-label {
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  line-height: 24px;
  color: #737b92;
  text-align: left;
  text-transform: none;
  text-decoration: none;
  letter-spacing: 0;
  min-height: 24px;
  width: 100%;
  display: block;
  margin-bottom: 6px;
}

.cf7-form-wrapper .cf7-input,
.cf7-form-wrapper .cf7-select {
  width: 100%;
  min-height: 48px;
  padding: 12px 24px;
  background-color: #ffffff;
  border: 1px solid #e2e9f0;
  border-radius: 70px;
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 24px;
  color: #737b92;
  text-transform: none;
  letter-spacing: 0;
  outline: none;
  box-sizing: border-box;
  appearance: none;
  -webkit-appearance: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.cf7-form-wrapper .cf7-textarea {
  width: 100%;
  max-height: 100px;
  padding: 12px 24px 60px 24px;
  background-color: #ffffff;
  border: 1px solid #e2e9f0;
  border-radius: 70px;
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 24px;
  color: #737b92;
  outline: none;
  box-sizing: border-box;
  resize: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.cf7-form-wrapper .cf7-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23737b92' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 24px center;
  padding-right: 50px;
  cursor: pointer;
}

.cf7-form-wrapper .cf7-input::placeholder,
.cf7-form-wrapper .cf7-textarea::placeholder {
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 24px;
  color: #737b92;
}

.cf7-form-wrapper .cf7-input:focus,
.cf7-form-wrapper .cf7-select:focus,
.cf7-form-wrapper .cf7-textarea:focus {
  border-color: #4A90D9;
  box-shadow: 0 0 0 1px #4A90D9;
  outline: none;
}

.cf7-form-wrapper .cf7-field-group span.wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.cf7-row.cf7-submit-row {
  justify-content: flex-start;
  margin-top: 4px;
}

.cf7-form-wrapper .cf7-submit-btn {
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  padding: 12px 32px;
  min-height: 48px;
  background: linear-gradient(91deg, var(--color-primary) 0.88%, var(--color-accent) 99.35%);
  color: #ffffff;
  border: none;
  border-radius: 70px;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 4px 15px rgba(45, 143, 232, 0.35);
  transform-origin: left center;
  transition: 
    background 0.3s ease,
    box-shadow 0.3s ease,
    padding 0.3s ease;
}

/* SVG flecha */
.cf7-form-wrapper .cf7-submit-btn .cf7-arrow {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.cf7-form-wrapper .cf7-submit-btn .cf7-arrow img {
  width: 18px;
  height: 18px;
  display: block;
  /* Si el SVG es oscuro y necesitas que sea blanco: */
  filter: brightness(0) invert(1);
}

/* Texto */
.cf7-form-wrapper .cf7-submit-btn .cf7-btn-text {
  display: inline-block;
  transition: transform 0.3s ease, letter-spacing 0.3s ease;
}

/* ================================
   HOVER
================================ */
.cf7-form-wrapper .cf7-submit-btn:hover {
  background: #D9514E;
  box-shadow: 0 4px 15px rgba(217, 81, 78, 0.35);
  padding-right: 48px;
}

/* Flecha retrocede */
.cf7-form-wrapper .cf7-submit-btn:hover .cf7-arrow {
  transform: translateX(-4px);
}

/* Texto se aleja */
.cf7-form-wrapper .cf7-submit-btn:hover .cf7-btn-text {
  transform: translateX(8px);
  letter-spacing: 0.8px;
}

.cf7-form-wrapper p {
  margin: 0;
  padding: 0;
}

.cf7-form-wrapper p br {
  display: none;
}

.cf7-submit-row p {
  margin: 0;
  padding: 0;
  display: contents;
}

.cf7-submit-row p br {
  display: none;
}

/* Asegurar que el botón tiene flex correcto */
.cf7-form-wrapper .cf7-submit-btn {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px;
    white-space: nowrap;
    width: 100%;
    justify-content: center;
}

.cf7-form-wrapper .cf7-submit-btn .cf7-arrow,
.cf7-form-wrapper .cf7-submit-btn .cf7-btn-text {
  display: inline-flex !important;
  align-items: center;
}

.cf7-form-wrapper .cf7-submit-btn br {
  display: none;
}

.contactGridBoxes > div {
    height: 130px !important;
}

.contactGridBoxes > [data-element_type="container"].contactGridBox--active {
    background-color: #F2F2F2 !important;
    border: 1px solid #007AFF;
}


.contactGridBoxes > [data-element_type="container"] {
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
}

.wpcf7 form .wpcf7-response-output {
    margin: 1em 0.5em 1em !important;
}

@media (max-width: 640px) {
  .cf7-two-cols {
    flex-direction: column;
    min-height: auto;
  }
}

@media (max-width: 768px) {
    div.contentContactCTA div.requestDemo a > span > span:last-child {
        font-size: var(--Font-Sizes-Body-p_M, 14px) !important;
        font-weight: 600;
        line-height: var(--Font-Sizes-Body-p_M, 14px) !important;
        letter-spacing: 0.035px;
    }

    #contactForm .cf7-two-cols {
        gap: 0px;
    }
}

@media (max-width: 768px) and (min-width: 767px) {
    .contactGridBoxes  .divDemoGuiada {
        flex-direction: row !important;
        justify-content: flex-start;
        gap: 50px;
    }
}

.grid3col {
    grid-template-columns: 37% 16% 40% !important;
}

.grid3col span {
    font-weight: 700;
}

.timeLineSol .twae-slider-wrapper.swiper-wrapper.no-height {
    height: 29.5rem !important;
    align-items: flex-start !important;
}

.timeLineSol .twae-slider-wrapper.swiper-wrapper.no-height > div {
    margin-right: 48px;
}

.timeLineSol .twae-slider-wrapper.swiper-wrapper.no-height > div:nth-child(3) {
    margin-right: 0px;
}

.timeLineSol .twae-wrapper .twae-icon {
    top: -2.2rem !important;
}

.timeLineSol .twae-wrapper .twae-content {
    padding: 32px !important;
    height: auto !important;
    transition: height 0.4s ease;
    min-height: 380px;
}

.timeLineSol .twae-wrapper .twae-title {
    color: var(--headers-color, #202334) !important;
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H3-size, 32px) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: var(--Font-Sizes-Headers-H3-line, 40px) !important;
    text-align: left;
    max-height: 120px !important;
    min-height: 120px !important;
}

.timeLineSol .twae-wrapper .twae-description {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.timeLineSol .twae-wrapper .twae-repeater-item:hover .twae-description {
    max-height: 500px;
}

.timeLineSol .twae-wrapper .twae-description p {
    text-align: left;
    color: var(--text-color, #737B92);
    font-family: "Source Sans 3";
    font-size: var(--Font-Sizes-Body-p_M, 18px);
    font-style: normal;
    font-weight: 400;
    line-height: var(--Font-Sizes-Body-p_M_line, 24px);
}

@media (max-width: 1024px) {
    #enterpriseHeader {
        position: relative;
        height: 90vh;
        margin-bottom: 245px;
    }

    #enterpriseHeader > div > div:first-child, .enterpriseHeader > div > div:first-child {
        position: absolute;
        max-height: 100%;
        height: 100%;
    }

    #enterpriseHeader > div > div:first-child img, .enterpriseHeader > div > div:first-child img {
        width: 43.75rem;
        height: 57.25rem;
        object-fit: cover;
    }

    #enterpriseHeader > div > div:last-child, .enterpriseHeader > div > div:last-child {
        position: absolute;
        width: 58%;
        top: 25%;
        gap: 48px;
    }

    #enterpriseHeader .pTitleHeader p, #enterpriseHeader .pInfoHeader p, .enterpriseHeader .pTitleHeader p, .enterpriseHeader .pInfoHeader p  {
        color: white;
    }

    .timeLineSol .twae-wrapper .twae-icon {
        top: -1.15rem !important;
    }

    .timeLineSol .twae-wrapper .twae-media {
        align-items: flex-start;
    }

    .timeLineSol .twae-wrapper .twae-media img{
        object-fit: contain !important;
    }

    #enterpriseHeader .flexBtn a, #enterpriseHeader div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista.elementor-widget, .enterpriseHeader .flexBtn a, .enterpriseHeader div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista.elementor-widget {
        width: 100% !important;
    }

    #enterpriseHeader div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista a, .enterpriseHeader div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista a {
        min-width: 100% !important;
        color: white;
    }

    #principalMenu > nav:last-child {
        top: 4rem !important;
    }

    #principalMenu a {
        padding: 16px 24px !important;
        font-size: 16px !important; 
        justify-content: space-between
    }
    
    #principalMenu li ul {
        width: 100% !important;
    }

    #principalMenu li ul a {
        background: #eaeaea !important;
    }

    #principalMenu nav ul li ul.sub-menu {
        position: initial !important;
        display: none;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        pointer-events: auto !important;
    }

    #principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu {
        display: none;
    }

    #principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a {
        border-radius: 0px !important;
    } 

    #principalMenu nav ul li.menu-item-has-children:hover > ul.sub-menu a {
        padding: 16px 40px !important;
    }

    #imgBackground::before {
        background-color: #000 !important;
        --background-color: '' !important;
    }
}

@media (max-width: 768px) {
    .timeLineSol .twae-wrapper .twae-title {
        font-family: "Space Grotesk";
        font-size: var(--Font-Sizes-Headers-H3-size, 24px) !important;
        line-height: var(--Font-Sizes-Headers-H3-line, 28px) !important; 
    }

    div.flexBtn.elementor-element.e-flex > div:first-child a, 
    #metodoliga div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista.elementor-widget,
    #integraciones div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista.elementor-widget,
    #segYcompra div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista.elementor-widget, 
    #metodoliga .btnEspecialista.elementor-widget.elementor-element {
        width: 100% !important;
    }

    div.flexBtn.elementor-element.e-flex > div:last-child.btnEspecialista a {
        min-width: 100% !important;
    }

    #enterpriseHeader > div > div:last-child, .enterpriseHeader > div > div:last-child {
        width: 80%;
    }

    .contactGridBoxes > div {
        display: flex;
        flex-direction: column !important;
    }

    .containerDivSelection > div {
        padding-inline: 0px !important;
    }
}


/* ==== CSS General ====  */
.titleAzul h2 {
    text-align: left !important;
    color: var(--color-label, #48CBFF) !important;
    font-family: "Space Grotesk" !important;
    font-size: 21px;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 26px; 
    text-transform: uppercase;
    margin: 0px;
}

.textNegrita p {
    color: var(--headers-color, #202334) !important;
    font-family: "Space Grotesk" !important;
    font-size: var(--Font-Sizes-Headers-H2-size, 48px) !important;
    font-style: normal;
    font-weight: 500 !important;
    line-height: var(--Font-Sizes-Headers-H2-line, 54px); 
    letter-spacing: 0.24px;
    margin: 0px;
}

.textNormal p {
    align-self: stretch;
    color: var(--headers-color, var(--color-text-dark)) !important;
    font-family: var(--font-family) !important;
    font-size: var(--font-size-ssmall) !important;
    font-style: normal !important;
    font-weight: var(--font-weight-normal) !important;
    line-height: var(--line-height-slg) !important;
    margin: 0;
}

@media (max-width: 768px) {
    .textNegrita p {
        align-self: stretch;
        color: var(--headers-color, var(--color-text-dark)) !important;
        font-family: "Space Grotesk" !important;
        font-size: 2rem !important;
        font-style: normal;
        font-weight: 500 !important;
        line-height: 2.5rem;
        letter-spacing: 0.01rem;
    }

    .textNormal p {
        color: var(--text-color, #737B92) !important;
        font-family: "Source Sans 3" !important;
        font-size: 16px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important; 
    }
}


/* ==== Styles de shortcode filtros casos de exitos ====*/
    .cef-wrapper{max-width:1200px;margin:0 auto}
	.cards_casos_exito .cef-wrapper{max-width:1440px;margin:0 auto}
    .cef-filters{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:30px}
    .cef-filters-label{
    color: var(--headers-color, #202334);
    font-family: "Space Grotesk";
    font-size: var(--Font-Sizes-Headers-H4-size, 26px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Font-Sizes-Headers-H4-line, 32px); 
    }
    .cef-filters select{padding:8px 32px 8px 14px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;color:#2d3748;background:#fff;min-width:160px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23718096' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}
    .cef-filters select:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 2px rgba(74,144,217,.15)}
    .cef-filters .cef-btn-reset{padding:7px 14px;background:transparent;color:#a0aec0;border:1px solid #cbd5e0;border-radius:6px;font-size:12px;cursor:pointer;display:none;transition:all .2s}
    .cef-filters .cef-btn-reset:hover{color:#e53e3e;border-color:#e53e3e}

    /* Grid */
    .cef-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;transition:opacity .3s}
    .cef-grid.loading{opacity:.35;pointer-events:none}

    /* Card */
    .cef-card{background:#fff;border-radius:16px;padding:28px 20px 24px;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.06);border:1px solid #edf2f7;transition:box-shadow .25s,transform .25s;display:flex;flex-direction:column}
    .cef-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08);transform:translateY(-3px)}

	.cef-card-review{
		margin:0px;
		color:  #737B92;
		font-family: var(--font-family) !important;
		font-size: var(--font-size-base);
		font-style: normal !important;
		font-weight: var(--font-weight-normal) !important;
		line-height: 26px !important;
		text-align: left;
	}

    /* Imagen de fondo con logo centrado */
    .cef-card-media{padding-block: 16px ;width:100%;height:160px;margin:0 auto 18px;background-size: cover;border-radius:130px;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;overflow:hidden}
    .cef-card-media .cef-card-logo{margin:0;display:flex;align-items:center;justify-content:center}
    .cef-card-media .cef-logo-img{filter: brightness(0) invert(1);max-width:120px;max-height:80px;height:auto;object-fit:contain;display:block}

    /* Etiqueta sector/servicio */
    .cef-card-label{font-family: 'Space Grotesk', sans-serif;font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#000;margin-bottom:16px;text-align: left;}

    /* Título */
    .cef-card h3{font-size:18px;font-weight:800;color:#1a202c;margin:0 0 10px;line-height:1.3}

    /* Descripción */
    .cef-card-desc{font-size:13px;color:#718096;line-height:1.55;margin:0 0 18px;min-height:60px}
.cef-card-author{margin-top:auto}
.cef-card-author-info{ text-align:left;}
    /* Botón */
    .cef-card-btn{display:inline-block;padding:8px 20px;border:1.5px solid #2d3748;border-radius:6px;font-size:13px;font-weight:600;color:#2d3748;text-decoration:none;transition:all .2s}
    .cef-card-btn:hover{background:#2d3748;color:#fff}
    .cef-card-nombre {font-size: 18px;}
    .cef-card-cargo {font-size: 14px; font-family: 'Source Sans 3', sans-serif; color: #737B92;}
    .cef-no-results{grid-column:1/-1;text-align:center;padding:50px 20px;color:#a0aec0;font-size:15px}

    @media(max-width:991px){
        .cef-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:600px){
        .cef-grid{grid-template-columns:1fr}
        .cef-filters{justify-content:center}
        .cef-card-media{height:120px}
    }

    .cef-card hr{ max-width: 120px; margin-top: 16px; margin-bottom: 16px; border: 2px solid var(--color-black);}
    .cef-pagination{ margin-top: var(--spacing-md); text-align: center;}
    .cef-pagination .cef-page-btn{
            border-radius: var(--spacing-lg);
            color: var(--color-black);
            border: 1px solid var(--color-black);
            margin: 4px 4px;
    }
    .cef-pagination .cef-page-active{
        background-color: var(--color-accent);
        border: none !important; 
    }
    .cef-pagination .cef-page-btn:hover{
        background-color: var(--color-accent)!important;
        border: none !important; 
    }
    .cef-card .cef-card-media .overlay-casos{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: inherit;
        background-color: rgba(0, 0, 0, 0.3); /* Un velo oscuro suave */
    }

