form .contacto {
    display: flex;
    flex-direction: column;
    padding-top: 0;
}

/* --- CONTENEDOR DE CAMPOS --- */
form .contacto .datos {
    display: flex;
    flex-wrap: wrap;      /* permite que el tercer campo baje */
    gap: 20px;            /* separación horizontal/vertical */
    margin-bottom: 0;
}

/* --- PRIMEROS DOS CAMPOS (nombre y email) --- */
form .contacto .datos > div:nth-child(1),
form .contacto .datos > div:nth-child(2) {
    flex: 1 1 calc(50% - 10px);  /* 50 % cada uno */
    min-width: 250px;
    box-sizing: border-box;
}

/* --- TERCER CAMPO (teléfono) --- */
form .contacto .datos > div:nth-child(3) {
    flex: 1 1 100%;             /* 100 % de ancho */
    min-width: 100%;
    box-sizing: border-box;
}

/* --- ESTILO GENERAL DE CAMPOS --- */
form .contacto label {
    display: inline-block;
    margin-bottom: 10px;
}

form .contacto input:not([type="submit"]),
form .contacto textarea,
form .contacto select {
    border: 1px solid var(--c-blanco);
    background-color: #ffffffbb;
    font-family: inherit !important;
    width: 100%;
    box-sizing: border-box;
}

form .contacto textarea {
    resize: none;
    max-height: 200px;
    margin-top: 20px;
}

form p {
    margin-bottom: 0px;
}
/* --- Foco --- */
form .contacto input:focus,
form .contacto textarea:focus,
form .contacto input:active,
form .contacto textarea:active,
form .contacto input:focus-visible,
form .contacto textarea:focus-visible {
  border: 1px solid var(--c-secundario-light);
}

/* --- Resto de estilos conservados --- */
.wpcf7-not-valid-tip {
  padding-top: 5px;
}

form .aceptar-rgpd {
    margin-top: 20px;
}

input, select, textarea {
  font-family: inherit, "DM Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: 300;
  color: var(--c-blanco);
}

form .contacto input[type=checkbox] { width: auto; }
form .aceptar-rgpd > p, form .btn-enviar > p { margin-bottom: 0; }
form .aceptar-rgpd .wpcf7-list-item { margin: 0; }

.wpcf7-list-item-label {
    color: var(--c-blanco);
    padding-left: 15px;
}

.wpcf7-list-item-label a,
form .let-peq a {
    color: var(--c-primario);
    font-weight: bold;
    cursor: pointer;
    transition: all 0.5s ease;
}

.wpcf7-list-item-label a:hover,
form .let-peq a:hover {
    color: var(--c-negro);
}

form .let-peq {
    font-size: 0.8rem;
    margin-top: 0;
    padding-bottom: 20px;
    margin-bottom: 25px !important;
    line-height: normal;
}

/* --- Responsivo --- */
@media screen and (max-width:768px) {
    /* En móvil, todos los campos a 100 % en columna */
    form .contacto .datos > div:nth-child(1),
    form .contacto .datos > div:nth-child(2),
    form .contacto .datos > div:nth-child(3) {
        flex: 1 1 100%;
        min-width: 100%;
    }
}
