.elementor-1204 .elementor-element.elementor-element-52166268{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-3847e2e7{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-32166269{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-11679152{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-3bfe8ac9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-250796bf{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-b13a69b{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-26ad132f{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-a8309cf{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-7d100a30{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-ef789a2{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-5a12bb64{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-71098044{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-2717bced{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-546f7586{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-49005cf6{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-39162be3{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-21118b28{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-79b69c7e{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-1b0fbb36{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-7b7d5872{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1204 .elementor-element.elementor-element-32e47d61{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1204 .elementor-element.elementor-element-7daaa289{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-b13a69b */<!-- =====================================================
     BLOQUE 00 · ESTILOS GLOBALES
     ESTARBIEN · EMO PARA CONSTRUCCIÓN

     Pegar una sola vez, antes de los demás bloques.
====================================================== -->

<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap" rel="stylesheet">

<style>
html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
}

@supports not (overflow-x: clip) {
    html, body {
        overflow-x: hidden;
    }
}

.ebc-hero,
.ebc-needs,
.ebc-protocols,
.ebc-height,
.ebc-volume,
.ebc-process,
.ebc-platform,
.ebc-premium,
.ebc-clients,
.ebc-trust,
.ebc-faq,
.ebc-final {
    --ebc-blue: #1292e8;
    --ebc-blue-dark: #0785cf;
    --ebc-purple: #8c5be7;
    --ebc-purple-dark: #7444d0;
    --ebc-green: #19ad6b;
    --ebc-ink: #23272f;
    --ebc-muted: #616a78;
    --ebc-line: #e3eaf1;
    --ebc-soft: #f5f8fb;
    --ebc-navy: #0d1b2a;
    --ebc-white: #ffffff;
    width: 100%;
    margin: 0;
    font-family: "Poppins", "Segoe UI", Arial, sans-serif;
}

.ebc-hero *,
.ebc-needs *,
.ebc-protocols *,
.ebc-height *,
.ebc-volume *,
.ebc-process *,
.ebc-platform *,
.ebc-premium *,
.ebc-clients *,
.ebc-trust *,
.ebc-faq *,
.ebc-final * {
    box-sizing: border-box;
}

.ebc-wrap {
    width: min(100% - 44px, 1220px);
    margin-inline: auto;
}

.ebc-head {
    margin-bottom: clamp(30px, 3.3vw, 50px);
    text-align: center;
}

.ebc-eyebrow {
    margin: 0 0 10px;
    color: var(--ebc-purple);
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 1.6px;
    line-height: 1.3;
    text-transform: uppercase;
}

.ebc-head h2 {
    max-width: 850px;
    margin: 0 auto;
    color: var(--ebc-ink);
    font-size: clamp(25px, 2.55vw, 37px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: -.65px;
}

.ebc-head > p:last-child {
    max-width: 720px;
    margin: 14px auto 0;
    color: var(--ebc-muted);
    font-size: clamp(14.5px, 1.15vw, 16.5px);
    line-height: 1.6;
}

.ebc-btn {
    min-height: 50px;
    padding: 13px 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border: 0;
    border-radius: 4px;
    color: #fff !important;
    font: 600 15px/1.2 "Poppins", sans-serif;
    text-align: center;
    text-decoration: none !important;
    cursor: pointer;
    transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease;
}

.ebc-btn:hover,
.ebc-btn:focus-visible {
    color: #fff !important;
    transform: translateY(-2px);
    filter: brightness(1.05);
    outline: none;
}

.ebc-btn--blue {
    background: linear-gradient(100deg, var(--ebc-blue-dark), var(--ebc-blue));
    box-shadow: 0 9px 22px rgba(18,146,232,.22);
}

.ebc-btn--purple {
    background: linear-gradient(100deg, var(--ebc-purple-dark), var(--ebc-purple));
    box-shadow: 0 9px 22px rgba(116,68,208,.22);
}

.ebc-btn--outline {
    color: var(--ebc-blue-dark) !important;
    border: 1px solid rgba(18,146,232,.42);
    background: #fff;
    box-shadow: none;
}

.ebc-btn--outline:hover,
.ebc-btn--outline:focus-visible {
    color: var(--ebc-blue-dark) !important;
}

.ebc-checks {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ebc-checks li {
    position: relative;
    padding-left: 27px;
}

.ebc-checks li::before {
    content: "";
    position: absolute;
    left: 1px;
    top: .34em;
    width: 15px;
    height: 8px;
    border-left: 2.2px solid var(--ebc-green);
    border-bottom: 2.2px solid var(--ebc-green);
    transform: rotate(-45deg);
}


/* =====================================================
   CONTACT FORM 7 · CONSTRUCCIÓN
====================================================== */

.ebc-cf7 {
    width: 100%;
    margin-top: 18px;
}

.ebc-cf7 .wpcf7,
.ebc-cf7 form,
.ebc-cf7 .wpcf7-form {
    width: 100%;
    margin: 0;
}

/* IMPORTANTE:
   NO aplicar grid al formulario completo */
.ebc-cf7 .wpcf7-form {
    display: block;
}

/* Grid exclusivo para los 4 campos */
.ebc-cf7 .ebc-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
}

/* Cada campo */
.ebc-cf7 .ebc-form-field {
    width: 100%;
    min-width: 0;
}

/* Quitar párrafos y espacios automáticos de CF7 */
.ebc-cf7 .ebc-form-grid p,
.ebc-cf7 .ebc-form-field p,
.ebc-cf7 .ebc-form-acceptance p,
.ebc-cf7 .ebc-form-submit p {
    margin: 0 !important;
    padding: 0 !important;
}

/* Wrapper de Contact Form 7 */
.ebc-cf7 .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* Campos */
.ebc-cf7 input[type="text"],
.ebc-cf7 input[type="tel"],
.ebc-cf7 input[type="email"],
.ebc-cf7 input[type="number"],
.ebc-cf7 select {
    display: block;
    width: 100% !important;
    max-width: none !important;
    height: 48px;
    margin: 0 !important;
    padding: 0 13px;
    border: 1px solid #d9e1e8;
    border-radius: 4px;
    color: #303944;
    background: #fff;
    font: 400 13px/1.2 "Poppins", sans-serif;
    outline: none;
    box-shadow: none;
}

/* Placeholder */
.ebc-cf7 input::placeholder {
    color: #6d7580;
    opacity: 1;
}

/* Select */
.ebc-cf7 select {
    padding-right: 35px;
    cursor: pointer;
}

/* Focus */
.ebc-cf7 input[type="text"]:focus,
.ebc-cf7 input[type="tel"]:focus,
.ebc-cf7 input[type="email"]:focus,
.ebc-cf7 input[type="number"]:focus,
.ebc-cf7 select:focus {
    border-color: var(--ebc-blue);
    box-shadow: 0 0 0 3px rgba(18,146,232,.10);
}

/* =====================================================
   CHECKBOX DE PRIVACIDAD
====================================================== */

.ebc-cf7 .ebc-form-acceptance {
    width: 100%;
    margin-top: 15px;
}

.ebc-cf7 .wpcf7-acceptance {
    display: block;
    width: 100%;
}

.ebc-cf7 .wpcf7-acceptance .wpcf7-list-item {
    display: block;
    margin: 0;
}

.ebc-cf7 .wpcf7-acceptance label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    margin: 0;
    color: #747d88;
    font-size: 10.5px;
    font-weight: 400;
    line-height: 1.45;
}

.ebc-cf7 .wpcf7-acceptance input[type="checkbox"] {
    width: 15px;
    height: 15px;
    min-width: 15px;
    margin: 2px 0 0;
    padding: 0;
    flex: 0 0 15px;
    cursor: pointer;
}

/* =====================================================
   BOTÓN
====================================================== */

.ebc-cf7 .ebc-form-submit {
    width: 100%;
    margin-top: 13px;
}

.ebc-cf7 .wpcf7-submit {
    display: block;
    width: 100% !important;
    max-width: none !important;
    min-height: 49px;
    margin: 0 !important;
    padding: 12px 18px;
    border: 0;
    border-radius: 4px;
    color: #fff !important;
    background: linear-gradient(
        100deg,
        var(--ebc-purple-dark),
        var(--ebc-purple)
    );
    box-shadow: 0 8px 18px rgba(116,68,208,.20);
    font: 600 14.5px/1.2 "Poppins", sans-serif;
    text-align: center;
    cursor: pointer;
    transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease;
}

.ebc-cf7 .wpcf7-submit:hover {
    filter: brightness(1.05);
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(116,68,208,.26);
}

/* Spinner */
.ebc-cf7 .wpcf7-spinner {
    position: absolute;
    margin: 0;
}

/* Errores */
.ebc-cf7 .wpcf7-not-valid-tip {
    display: block;
    margin-top: 4px;
    color: #c0392b;
    font-size: 10px;
    line-height: 1.35;
}

/* Respuesta */
.ebc-cf7 .wpcf7-response-output {
    width: 100%;
    margin: 10px 0 0 !important;
    padding: 8px 10px !important;
    border-width: 1px !important;
    font-size: 11px;
    line-height: 1.4;
}


/* =====================================================
   RESPONSIVE
====================================================== */

@media (max-width: 620px) {

    .ebc-wrap {
        width: calc(100% - 24px);
    }

    .ebc-head h2 {
        font-size: clamp(22px, 5.7vw, 28px);
    }

    .ebc-btn {
        width: 100%;
    }

    /* Formulario a una sola columna en móvil */
    .ebc-cf7 .ebc-form-grid {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .ebc-cf7 input[type="text"],
    .ebc-cf7 input[type="tel"],
    .ebc-cf7 input[type="email"],
    .ebc-cf7 input[type="number"],
    .ebc-cf7 select {
        width: 100% !important;
        height: 48px;
        font-size: 16px;
    }

    .ebc-cf7 .wpcf7-submit {
        width: 100% !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ebc-btn,
    .ebc-cf7 .wpcf7-submit {
        transition: none;
    }
}
</style>/* End custom CSS */