.elementor-kit-10{--e-global-color-primary:#FF3B30;--e-global-color-secondary:#DC2626;--e-global-color-text:#0F172A;--e-global-color-accent:#64748B;--e-global-color-06833ce:#FFFFFF;--e-global-color-3d3ed7a:#F8FAFC;--e-global-color-1dcb0e2:#374151;--e-global-color-a6bba21:#E5E7EB;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;font-family:"Inter", Sans-serif;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-kit-10 a{font-family:"Inter", Sans-serif;font-weight:400;}.elementor-kit-10 h1{font-family:"Inter", Sans-serif;}.elementor-kit-10 h2{font-family:"Inter", Sans-serif;}.elementor-kit-10 h3{font-family:"Inter", Sans-serif;}.elementor-kit-10 h4{font-family:"Inter", Sans-serif;}.elementor-kit-10 h5{font-family:"Inter", Sans-serif;}.elementor-kit-10 h6{font-family:"Inter", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==================================================
   SISTEMA “LEER MÁS / LEER MENOS”
   ================================================== */

/* Contenedores ocultos inicialmente */
.contenido-leer-mas {
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;

    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;

    box-sizing: border-box;

    transition:
        max-height 0.5s ease,
        opacity 0.3s ease,
        margin-top 0.5s ease,
        visibility 0s linear 0.5s;
}


/* Contenedores cuando se despliegan */
.contenido-leer-mas.esta-abierto {
    opacity: 1;
    visibility: visible;
    margin-top: 20px;

    transition:
        max-height 0.5s ease,
        opacity 0.3s ease,
        margin-top 0.5s ease,
        visibility 0s linear 0s;
}


/* Botones “Leer más” */
.boton-leer-mas {
    cursor: pointer;
}


/* Evita el subrayado si el botón contiene un enlace */
.boton-leer-mas a {
    text-decoration: none;
}


/* Mejora la navegación mediante teclado */
.boton-leer-mas a:focus-visible,
.boton-leer-mas button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}


/* ==================================================
   VISUALIZACIÓN DENTRO DEL EDITOR DE ELEMENTOR
   ================================================== */

/*
   Mantiene todos los contenidos visibles mientras editas,
   aunque en la página publicada comiencen ocultos.
*/
.elementor-editor-active .contenido-leer-mas,
.elementor-editor-preview .contenido-leer-mas {
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    margin-top: 20px !important;
}


/* ==================================================
   ACCESIBILIDAD: REDUCIR ANIMACIONES
   ================================================== */

@media (prefers-reduced-motion: reduce) {
    .contenido-leer-mas {
        transition: none !important;
    }
}
/* ==================================================
   ACORDEÓN DE CONTENEDORES – QUIÉNES SOMOS
   ================================================== */

.acordeon-nosotros .item-acordeon {
    overflow: hidden;
}

/* Título que abre cada sección */
.acordeon-nosotros .cabecera-acordeon {
    cursor: pointer;
    user-select: none;
}

/* Texto inicialmente oculto */
.acordeon-nosotros .contenido-acordeon {
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    margin-top: 0 !important;

    transition:
        max-height 0.5s ease,
        opacity 0.3s ease,
        margin-top 0.5s ease,
        visibility 0s linear 0.5s;
}

/* Texto del contenedor abierto */
.acordeon-nosotros .item-acordeon.esta-abierto
.contenido-acordeon {
    opacity: 1;
    visibility: visible;
    margin-top: 18px !important;

    transition:
        max-height 0.5s ease,
        opacity 0.3s ease,
        margin-top 0.5s ease,
        visibility 0s;
}

/* Accesibilidad mediante teclado */
.acordeon-nosotros .cabecera-acordeon:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

/* Mantener todo visible dentro del editor de Elementor */
.elementor-editor-active
.acordeon-nosotros
.contenido-acordeon {
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    margin-top: 18px !important;
}

@media (prefers-reduced-motion: reduce) {
    .acordeon-nosotros .contenido-acordeon {
        transition: none !important;
    }
}
/* Cabecera pulsable */
.acordeon-nosotros .cabecera-acordeon {
    position: relative;
    cursor: pointer;
    user-select: none;
    padding-right: 50px;
}

/* Icono cuando está cerrado */
.acordeon-nosotros .cabecera-acordeon::after {
    content: "+";

    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);

    display: flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    border: 1px solid currentColor;
    border-radius: 50%;

    font-size: 22px;
    font-weight: 400;
    line-height: 1;

    transition:
        background-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

/* Icono cuando está abierto */
.acordeon-nosotros
.item-acordeon.esta-abierto
.cabecera-acordeon::after {
    content: "−";
}

/* Efecto al pasar el ratón */
.acordeon-nosotros .cabecera-acordeon:hover::after {
    background-color: rgba(255, 255, 255, 0.15);
}/* End custom CSS */