.elementor-widget-text-editor{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-10238 .elementor-element.elementor-element-c0823be > .elementor-widget-container{margin:01em 0em 0em 0em;}.elementor-10238 .elementor-element.elementor-element-c0823be{text-align:center;color:#000000;font-family:"Montserrat", Sans-serif;font-size:2em;font-weight:400;}.elementor-10238 .elementor-element.elementor-element-f116eeb{font-family:"Montserrat", Sans-serif;font-weight:400;}.elementor-10238 .elementor-element.elementor-element-29ae412{font-family:"Montserrat", Sans-serif;font-weight:400;}/* Start custom CSS for text-editor, class: .elementor-element-f116eeb */.contenedor-formulario {
            background-color: #ffffff;
        }
        .grupo-campos{
            display: flex;
            justify-content: space-evenly;
            align-items: flex-start;
        }
        .grupo-campo-2{
            display: flex;
            flex-direction: column;
            margin-bottom: 10px;
        }
        .grupo-campo-3{
            display: flex;
            flex-direction: column;
        }
        .grupo-campo-captcha{
            display: flex;
            flex-direction: column;
            gap: 1em;
        }
        .contenedor-botones-separado{
            margin-left: 35em;
        }
        .grupo-campo {
            margin-bottom: 0px;
        }

        .etiqueta-campo {
            display: block;
            margin-bottom: 8px;
            font-weight: 400;
            color: #333;
            text-align: center;
        }
        input[type="text"] {
            width: 300px;
            padding: 10px 15px;
            border: 1px solid #209991;
            border-radius: 13px;
            background-color: #fff;
            font-size: 12px;
            color: #333;
            transition: border-color 0.3s ease;
            text-align: center;
        }
        input[type="text"]:focus {
            border-color: #209991;
            outline: none;
        }
        input[type="text"]::placeholder {
            color: #a0a0a0;
            font-style: italic;
            font-weight: 300;
        }
        input[type="text"]:-ms-input-placeholder {
            color: #a0a0a0;
            font-style: italic;
            font-weight: 300;
        }
        input[type="text"]::-moz-placeholder {
            color: #a0a0a0;
            opacity: 1;
            font-style: italic;
            font-weight: 300;
        }
        .campo-texto {
            width: 100%;
            padding: 10px;
            border: 2px solid #5fb0a5; /* Color verde/turquesa del borde */
            border-radius: 4px;
            box-sizing: border-box; /* Incluye padding y borde en el ancho total */
            font-size: 16px;
            outline: none; /* Eliminar el contorno por defecto al enfocar */
            transition: border-color 0.3s;
        }

        .campo-texto:focus {
            border-color: #3a8a7c; /* Un tono más oscuro al enfocar */
        }

        /* Estilos específicos para el Captcha */
        .contenedor-captcha {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .area-captcha {
            background-color: #209991; /* Color de fondo del área del Captcha */
            color: white;
            font-size: 28px; /* Aumentamos un poco el tamaño */
            font-weight: bold;
            padding: 8px 15px;
            border-radius: 4px;
            user-select: none; /* Evitar selección del texto */
            display: flex; /* Usar flex para alinear letras */
            justify-content: center;
            align-items: center;
            min-width: 120px; /* Ancho mínimo para el Captcha */
            height: 45px; /* Altura fija para el Captcha */
            position: relative;
            overflow: hidden; 
        }
         .letra-captcha {
            display: inline-block; /* Para poder aplicar transformaciones individuales */
            margin: 0 -2px; /* Superponer ligeramente las letras */
            transform-origin: center center; /* Rotar desde el centro de cada letra */
            /* Las deformaciones y rotaciones se aplicarán con JavaScript */
            position: relative;
            z-index: 2; /* Para que las letras estén por encima de las líneas */
        }

        /* Líneas de ruido/rayado en el Captcha */
        .linea-captcha {
            position: absolute;
            background-color: rgba(255, 255, 255, 0.4); /* Líneas semi-transparentes */
            height: 1px; /* Grosor de la línea */
            width: 80%; /* Ancho de la línea */
            left: 10%; /* Centrar */
            transform-origin: center center;
            /* Las posiciones y rotaciones se aplicarán con JavaScript */
            z-index: 1; /* Para que estén debajo del texto */
        }
        /* Simulación del cuadrado blanco dentro del Captcha (si aplica) */
        /* En el código dinámico, usaremos un campo de texto normal */

        .campo-captcha {
            flex-grow: 1; /* Permite que el input ocupe el espacio restante */
            max-width: 150px;
            border: 2px solid #5fb0a5;
        }


        /* Estilos para los botones */
        .contenedor-botones {
            display: flex;
            justify-content: space-around;
            gap: 10px;
            margin-top: 10px;
        }

        .boton-accion {
            padding: 5px 20px;
            border: none;
            border-radius: 15px;
            font-size: 16px;
            font-weight: 500;
            cursor: pointer;
            transition: background-color 0.3s;
        }

        .boton-verificar {
            background-color: #209991; /* Verde/Turquesa principal */
            color: white;
        }

        .boton-verificar:hover {
            background-color: #317b70;
        }

        .boton-anular {
            background-color: #209991; /* Mismo color para "Anular" */
            color: white;
        }

        .boton-anular:hover {
            background-color: #317b70;
        }

        .mensaje-error {
            color: red;
            font-size: 14px;
            margin-top: -15px;
            margin-bottom: 10px;
            display: none; /* Inicialmente oculto */
        }/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-29ae412 */.pie-contacto {
            width: 100%;
            text-align: left;
        }
.texto-contacto {
            font-size: 0.8em;
            color: #777;
            margin-bottom: 10px;
        }

        .email-contacto {
            background-color: #209991;
            color: white;
            padding: 10px 30px;
            border-radius: 15px;
            text-decoration: none;
            font-weight: 500;
            display: inline-block; /* Para aplicar padding */
            transition: background-color 0.3s ease;
            font-size: large;
        }

        .email-contacto:hover {
            background-color: #317b70;
            color:#fff;
        }/* End custom CSS */