/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* FUENTE */


@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap');

:root {
    --c-negro: #000;
    --c-blanco: #FFFFFF;
    --c-primario: #78ADB6;
    --c-secundario: #F49498;
    --c-grisclaro: #EFEFEF;
    --c-gris: #f9f9f9;
}


body {
    font-family: 'Ubuntu';
}

h1 {
    font-family: 'Ubuntu';
    font-weight: 700;
}


#botones-llamada {
    position: fixed;
    bottom: 75px;
    width: 60px;
    height: 60px;
    right: 20px;
    background-color: white;
    border-radius: 50%;
    padding: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    z-index: 1000;
    animation: entrada 0.8s ease-out forwards;
    display: none; 
}

@keyframes entrada {
    0% {
        right: -100px;
    }
    100% {
        right: 20px;
    }
}

#botones-llamada svg {
    width: 30px;
    height: 30px;
    fill: var(--c-primario); 
}

@media (max-width: 768px) {
    #botones-llamada {
        display: block; 
    }
}

#elementor-popup-modal-5790 .dialog-message {
    overflow: visible;
}


/*  FORM */

/* Estilo para el contenedor del formulario */
.wpcf7 {
 display: flex;
    flex-direction: column;
    margin: 0 auto;
    padding: 0px;
    border-radius: 8px;

    p {
            margin-bottom: 0em;
    }

    a {
        font-weight: 600;
        color: var(--c-primario);

    }

}

.datos {
 display: flex;
    flex-wrap: wrap; 
    gap: 20px; 
    margin-bottom: 0px;
}

.datos > div {
    flex: 1 1 calc(50% - 20px); 
    min-width: 250px; 
    box-sizing: border-box;
}

/* Estilo para los campos de entrada */
.wpcf7 input[type="text"], 
.wpcf7 input[type="email"], 
.wpcf7 input[type="tel"], 
.wpcf7 textarea, 
.wpcf7 select {
    width: 100%;
    padding: 12px;
    margin: 0px 0;
    border: 0px solid #ddd;
    border-radius: 5px;
    font-size: 1rem;
    color: #333 !important;
    background-color: #fff;
    box-sizing: border-box;
    transition: border-color 0.3s ease;
}


.wpcf7 textarea {
    resize: none;
    max-height: 200px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.wpcf7-turnstile.cf-turnstile {
    margin-top: 10px;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 select:focus, .wpcf7 textarea:focus {
    border-color: var(--c-primario);
    background-color: #fff !important;
    outline: none;
}

/* Estilo para el botón */
.wpcf7 input[type="submit"] {
    background-color: var(--c-primario);
    color: white;
    border: none;
    padding: 15px 40px;
    font-size: 1.1rem;
    font-weight: bold;
    border-radius: 5px;
    cursor: pointer;
    width: fit-content;
    transition: background-color 0.3s ease;
    margin-top: 20px;
}

.wpcf7 input[type="submit"]:hover {
    background-color: #61858b;
}

/* Estilo de los labels */
.wpcf7 label {
    display: block;
    font-size: 1rem;
    color: #5c6b73;
    margin-bottom: 8px;
}

/* Campos obligatorios */
.wpcf7 .required {
    color: red;
    font-size: 1.2rem;
}

/* Estilo para los mensajes de error */
.wpcf7 .wpcf7-not-valid-tip {
    color: #e74c3c;
    font-size: 0.9rem;
    margin-top: 5px;
    display: block;
}

/* Añadir espaciado entre campos */
.wpcf7 .wpcf7-form-control-wrap {
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .wpcf7 input[type="submit"] {
        width: 100%;
    }
}


#botones-llamada svg {
    width: 30px;
    height: 30px;
    fill: var(--c-primario); 
}

@media (max-width: 768px) {
    #botones-llamada {
        display: block; 
    }
}

#elementor-popup-modal-5790 .dialog-message {
    overflow: visible;
}
.elementor-element-0d02b13 {
    z-index: 2 !important;
}