/* ========================================
   23KY THEME - GLOBAL CONTACT FORMS (CF7)
   Normaliza layout para todos los formularios de contacto.
   ======================================== */

.wpcf7 form.wpcf7-form > p {
  margin: 0 !important;
}

.wpcf7 form.wpcf7-form > p br {
  display: none !important;
}

.wpcf7 form.wpcf7-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

@media (min-width: 920px) {
  .wpcf7 form.wpcf7-form {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 1rem !important;
    row-gap: 0.7rem !important;
    align-items: start !important;
  }

  .wpcf7 form.wpcf7-form > fieldset,
  .wpcf7 form.wpcf7-form > .wpcf7-response-output,
  .wpcf7 form.wpcf7-form > p {
    grid-column: 1 / -1 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(.wpcf7-submit),
  .wpcf7 form.wpcf7-form > p:has(input[type="submit"]),
  .wpcf7 form.wpcf7-form > p:has(button[type="submit"]),
  .wpcf7 form.wpcf7-form > p:has(textarea),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="textarea"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="mensaje"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="message"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p textarea),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="textarea"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="mensaje"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="message"]) {
    grid-column: 1 / -1 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="nombre"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="first"]),
  .wpcf7 form.wpcf7-form > p:has(input[type="email"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="email"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="mail"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="nombre"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="first"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p input[type="email"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="email"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="mail"]) {
    grid-column: 1 / 2 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="apellido"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="last"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="surname"]),
  .wpcf7 form.wpcf7-form > p:has(input[type="tel"]),
  .wpcf7 form.wpcf7-form > p:has(input[type="phone"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="tel"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="phone"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="whatsapp"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="apellido"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="last"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="surname"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p input[type="tel"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p input[type="phone"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="tel"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="phone"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="whatsapp"]) {
    grid-column: 2 / 3 !important;
  }

  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="nombre"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="first"]) {
    grid-row: 1 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="nombre"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="first"]) {
    grid-row: 2 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="apellido"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="last"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="surname"]) {
    grid-row: 1 / span 2 !important;
  }

  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="apellido"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="last"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="surname"]) {
    grid-row: 1 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(input[type="email"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="email"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="mail"]) {
    grid-row: 4 !important;
  }

  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p input[type="email"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="email"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="mail"]) {
    grid-row: 3 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(input[type="tel"]),
  .wpcf7 form.wpcf7-form > p:has(input[type="phone"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="tel"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="phone"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="whatsapp"]) {
    grid-row: 4 !important;
  }

  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p input[type="tel"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p input[type="phone"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="tel"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="phone"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="whatsapp"]) {
    grid-row: 3 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(textarea),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="textarea"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="mensaje"]),
  .wpcf7 form.wpcf7-form > p:has(.wpcf7-form-control-wrap[data-name*="message"]) {
    grid-row: 6 !important;
  }

  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p textarea),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="textarea"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="mensaje"]),
  .wpcf7 form.wpcf7-form > p:not(:has(.wpcf7-form-control-wrap)):has(+ p .wpcf7-form-control-wrap[data-name*="message"]) {
    grid-row: 5 !important;
  }

  .wpcf7 form.wpcf7-form > p:has(.wpcf7-submit),
  .wpcf7 form.wpcf7-form > p:has(input[type="submit"]),
  .wpcf7 form.wpcf7-form > p:has(button[type="submit"]) {
    grid-row: 7 !important;
  }
}
