.elementor-129 .elementor-element.elementor-element-528fb56{--display:flex;--min-height:100px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.39;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:380px;--padding-bottom:350px;--padding-left:0px;--padding-right:0px;}.elementor-129 .elementor-element.elementor-element-528fb56:not(.elementor-motion-effects-element-type-background), .elementor-129 .elementor-element.elementor-element-528fb56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://grupobioclima.es/wp-content/uploads/2026/04/bioclima-formacion.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-129 .elementor-element.elementor-element-528fb56::before, .elementor-129 .elementor-element.elementor-element-528fb56 > .elementor-background-video-container::before, .elementor-129 .elementor-element.elementor-element-528fb56 > .e-con-inner > .elementor-background-video-container::before, .elementor-129 .elementor-element.elementor-element-528fb56 > .elementor-background-slideshow::before, .elementor-129 .elementor-element.elementor-element-528fb56 > .e-con-inner > .elementor-background-slideshow::before, .elementor-129 .elementor-element.elementor-element-528fb56 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-75737164 );--background-overlay:'';}.elementor-129 .elementor-element.elementor-element-59105eb{margin:-105px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-129 .elementor-element.elementor-element-77de265{margin:-197px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-129 .elementor-element.elementor-element-77de265 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:150px;font-weight:900;}.elementor-129 .elementor-element.elementor-element-19181d6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-129 .elementor-element.elementor-element-19181d6:not(.elementor-motion-effects-element-type-background), .elementor-129 .elementor-element.elementor-element-19181d6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAFAFA;}.elementor-129 .elementor-element.elementor-element-3d2be7c{--display:flex;}.elementor-129 .elementor-element.elementor-element-779be34.elementor-element{--align-self:center;}.elementor-129 .elementor-element.elementor-element-8514e2f.elementor-element{--align-self:center;}.elementor-129 .elementor-element.elementor-element-6b65c37{--display:flex;}.elementor-129 .elementor-element.elementor-element-941f4ec.elementor-element{--align-self:center;}.elementor-129 .elementor-element.elementor-element-7ecc20d.elementor-element{--align-self:center;}.elementor-129 .elementor-element.elementor-element-b968a44{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-129 .elementor-element.elementor-element-0779d81.elementor-element{--align-self:center;}.elementor-129 .elementor-element.elementor-element-e91b29e.elementor-element{--align-self:center;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-129 .elementor-element.elementor-element-528fb56{--content-width:1421px;}.elementor-129 .elementor-element.elementor-element-b968a44{--width:100%;}}@media(min-width:1025px){.elementor-129 .elementor-element.elementor-element-528fb56:not(.elementor-motion-effects-element-type-background), .elementor-129 .elementor-element.elementor-element-528fb56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}/* Start custom CSS for container, class: .elementor-element-528fb56 *//* 1. EL TEXTO GIGANTE DE ATRÁS (Solo contorno blanco) */
.texto-background-contorno .elementor-heading-title {
    color: transparent !important; /* Sin relleno */
    -webkit-text-stroke: 1px rgba(255, 255, 255, 0.3) !important; /* Contorno blanco suave */
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* 2. EL TEXTO DE DELANTE (Blanco sólido) */
.hero-h1-sobre-nosotros .elementor-heading-title {
    color: #ffffff !important; /* Blanco puro */
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    text-shadow: 0px 4px 15px rgba(0,0,0,0.3) !important; /* Sombra para que destaque sobre la foto */
    margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-19181d6 *//* --- SECCIÓN SERVICIOS: ALINEACIÓN PERFECTA --- */

/* 1. Ajuste del contenedor de columna para que sea flexible */
.elementor-129 .elementor-element.elementor-element-19181d6 .elementor-widget-wrap {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    height: 100% !important;
}

/* 2. Estilo de la Foto con Marco Dinámico (Sin cambios) */
.elementor-129 .elementor-element.elementor-element-19181d6 .img-curso {
    position: relative !important;
    display: flex !important;
    justify-content: center !important;
    padding: 15px !important;
    margin-bottom: 20px !important;
}

.elementor-129 .elementor-element.elementor-element-19181d6 .img-curso::before {
    content: '' !important;
    position: absolute !important;
    top: 10%; left: 10%; width: 80%; height: 90%;
    background-color: #1c3c57 !important;
    border-radius: 10px !important;
    z-index: 1 !important;
    transition: all 0.5s ease !important;
}

.elementor-129 .elementor-element.elementor-element-19181d6 .img-curso img {
    position: relative !important;
    z-index: 2 !important;
    border-radius: 8px !important;
    transition: all 0.5s ease !important;
}

.elementor-129 .elementor-element.elementor-element-19181d6 .img-curso:hover::before { background-color: #e6b800 !important; transform: rotate(-5deg); }
.elementor-129 .elementor-element.elementor-element-19181d6 .img-curso:hover img { transform: translateY(-10px); }

/* 3. TÍTULOS (H2): Forzamos altura mínima para que siempre ocupen lo mismo */
.elementor-129 .elementor-element.elementor-element-19181d6 .titulo-curso {
    margin-bottom: 20px !important;
    min-height: 70px !important; /* Ajusta este valor si tus títulos son más largos */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-129 .elementor-element.elementor-element-19181d6 .titulo-curso .elementor-heading-title {
    color: #1c3c57 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    font-size: 1.4rem !important;
    text-align: center !important;
    margin: 0 !important;
}

/* 4. BOTONES: Empujamos el botón al final para que todos queden en la misma línea */
.elementor-129 .elementor-element.elementor-element-19181d6 .btn-curso {
    margin-top: auto !important; /* Este es el truco para alinearlos abajo */
    text-align: center !important;
}

.elementor-129 .elementor-element.elementor-element-19181d6 .btn-curso .elementor-button {
    background-color: #1c3c57 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    padding: 12px 25px !important;
    transition: all 0.3s ease !important;
}

.elementor-129 .elementor-element.elementor-element-19181d6 .btn-curso .elementor-button:hover {
    background-color: #e6b800 !important;
    color: #1c3c57 !important;
    transform: scale(1.05);
}/* End custom CSS */