.elementor-597 .elementor-element.elementor-element-a8f2754{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:max(1.25rem, 50% - 41.875rem);--padding-right:max(1.25rem, 50% - 41.875rem);}.elementor-597 .elementor-element.elementor-element-fdd54c9{text-align:left;}.elementor-597 .elementor-element.elementor-element-fdd54c9 .elementor-heading-title{font-family:"Courgette", Sans-serif;font-size:45px;font-weight:400;text-transform:none;letter-spacing:-3px;color:var( --e-global-color-text );}.elementor-597 .elementor-element.elementor-element-66545b5 > .elementor-container{max-width:1340px;}.elementor-597 .elementor-element.elementor-element-66545b5 .elementor-column-gap-custom .elementor-column > .elementor-element-populated{padding:15px;}.elementor-597 .elementor-element.elementor-element-66545b5{padding:50px 0px 10px 0px;}.elementor-597 .elementor-element.elementor-element-7fe15d0 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-597 .elementor-element.elementor-element-6b2566e > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-597 .elementor-element.elementor-element-8d7dfe5 > .elementor-widget-container{margin:-20px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-597 .elementor-element.elementor-element-3455852 > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-597 .elementor-element.elementor-element-f74671a > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-597 .elementor-element.elementor-element-ad1ee72 iframe{height:500px;}.elementor-597 .elementor-element.elementor-element-8cc2963 > .elementor-container{max-width:1340px;}.elementor-597 .elementor-element.elementor-element-8cc2963{padding:0px 0px 100px 0px;}.elementor-597 .elementor-element.elementor-element-6e2b970 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px) and (min-width:768px){.elementor-597 .elementor-element.elementor-element-7fe15d0{width:100%;}.elementor-597 .elementor-element.elementor-element-f74671a{width:100%;}}@media(max-width:1024px){.elementor-597 .elementor-element.elementor-element-a8f2754{--padding-top:30px;--padding-bottom:0;--padding-left:max(1.25rem, 50% - 41.875rem);--padding-right:max(1.25rem, 50% - 41.875rem);}.elementor-597 .elementor-element.elementor-element-7fe15d0 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-597 .elementor-element.elementor-element-fdd54c9 .elementor-heading-title{font-size:35px;}.elementor-597 .elementor-element.elementor-element-66545b5{padding:30px 0px 0px 0px;}.elementor-597 .elementor-element.elementor-element-7fe15d0 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for column, class: .elementor-element-7fe15d0 */.elementor-597 .elementor-element.elementor-element-7fe15d0 .invertir-mail a {
    unicode-bidi: bidi-override;
    direction: rtl; 
}/* End custom CSS */
/* Start custom CSS for blox-contact-form-id, class: .elementor-element-5d71a91 *//* ======================================= */
/* 1. ESTILOS DE CONTRASTE (CAJA Y CAMPOS) */
/* ======================================= */

#formContacto {
    background-color: #ffffff; 
    padding: 40px !important;
    border-radius: 10px; 
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); 
    border: 1px solid #e0e0e0; 
}

#formContacto input[type="text"], 
#formContacto input[type="email"], 
#formContacto input[type="tel"], 
#formContacto textarea {
    border: 1px solid #ccc !important;
    padding: 12px !important;
    border-radius: 6px !important;
    background-color: #f9f9f9 !important;
    transition: border-color 0.3s;
    width: 100% !important;
    box-sizing: border-box;
}

#formContacto input[type="text"]:focus, 
#formContacto input[type="email"]:focus, 
#formContacto input[type="tel"]:focus, 
#formContacto textarea:focus {
    border-color: #e04e4e !important; 
    box-shadow: 0 0 0 2px rgba(224, 78, 78, 0.2);
    outline: none;
}

#formContacto textarea {
    height: 100px;
}


/* ============================ */
/* 2. ESTILOS PARA LAS COLUMNAS */
/* ============================ */

#formContacto .cf7-col-50 {
    width: 48.5%; 
    float: left !important;
    margin-bottom: 20px; 
    box-sizing: border-box;
}

#formContacto .cf7-col-primero {
    margin-right: 3% !important;
}

@media (max-width: 767px) {
    #formContacto .cf7-col-50 {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
    }
    #formContacto {
        padding: 20px !important; 
    }
}


/* ======================================= */
/* 3. ESTILOS PARA CHECKBOX Y TEXTO LEGAL  */
/* ======================================= */

#formContacto .aviso-legal-contacto {
    display: flex; 
    align-items: flex-start;
    margin-top: 15px;
    margin-bottom: 0;
    font-size: 0.9em;
    color: #666;
}

#formContacto .aviso-legal-contacto input[type="checkbox"] {
    width: auto !important; 
    height: auto !important; 
    margin-top: 3px;
    margin-right: 10px;
    accent-color: #e04e4e; 
}

#formContacto .aviso-legal-contacto a {
    color: #e04e4e;
    text-decoration: none;
    font-weight: 500;
}

#formContacto .aviso-legal-contacto a:hover {
    text-decoration: underline;
}

/* ======================================= */
/* 4. ESTILOS PARA EL BOTÓN DE ENVÍO       */
/* ======================================= */

#formContacto .enviar-contacto {
    text-align: right;
}

#formContacto input[type="submit"] {
    width: 100% !important; 
    padding: 14px 30px !important;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;

    color: #ffffff !important;
    background-color: #e04e4e !important;
    border: 2px solid #e04e4e !important; 
    border-radius: 6px !important;
    
    transition: background-color 0.3s ease, transform 0.1s ease;
}

#formContacto input[type="submit"]:hover {
    background-color: #b33d3d !important;
    border-color: #b33d3d !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

#formContacto input[type="submit"]:active {
    transform: translateY(1px);
}/* End custom CSS */