/* RESET Y CONTENEDOR PRINCIPAL */
.cf7-compact-form {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* FILAS CON 2 COLUMNAS */
.cf7-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 7px !important;
    width: 100% !important;
    margin-bottom: 5px !important;
    box-sizing: border-box !important;
}

/* FILAS DE ANCHO COMPLETO */
.cf7-row-full {
    width: 100% !important;
    margin-bottom: 10px !important;
    box-sizing: border-box !important;
}

/* CADA CAMPO - 100% ANCHO SIN PADDING EXTERNO */
.cf7-field {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* CAMPO VACÍO PARA MANTENER ESTRUCTURA */
.cf7-field.empty {
    visibility: hidden;
    height: 0;
    margin: 0 !important;
    padding: 0 !important;
}

/* LABELS - NEGRITA Y COMPACTO */
.cf7-field label {
    font-weight: 700 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    color: #333;
    font-size: 12px;
    line-height: 1.2;
    display: block;
    width: 100%;
    box-sizing: border-box;
}

/* TODOS LOS CAMPOS CF7 - PADDING MÍNIMO Y 100% ANCHO */
.cf7-field .wpcf7-form-control {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0px 0px !important; /* MÍNIMO PADDING: 8px vertical, 6px horizontal */
    border: 1px solid #d1d1d1 !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    min-height: 40px !important;
    display: block !important;
    max-width: 100% !important;
}

.cf7-field .wpcf7-form-control:focus {
    border-color: #25D366 !important;
    outline: none !important;
    box-shadow: 0 0 0 1px rgba(37, 211, 102, 0.2) !important;
}

/* SELECTS ESPECÍFICOS */
.cf7-field select.wpcf7-form-control {
    height: 40px !important;
    background-color: white !important;
    padding-right: 1px !important;
}

/* TEXTAREA - ANCHO COMPLETO */
.cf7-row-full .cf7-field textarea.wpcf7-form-control {
    min-height: 100px !important;
    resize: vertical !important;
    width: 100% !important;
    display: block !important;
}

/* BOTÓN WHATSAPP - ANCHO COMPLETO */
.cf7-field input[type="submit"] {
    width: 100% !important;
    background-color: #000000 !important;
    color: white !important;
    border: none !important;
    padding: 12px 10px !important; /* PADDING REDUCIDO */
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 24px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
    text-align: center !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
}

.cf7-field input[type="submit"]:hover {
    background-color: #128C7E !important;
}

/* RESPONSIVE MÓVIL */
@media (max-width: 768px) {
    .cf7-row {
        grid-template-columns: 1fr 1fr !important; /* MANTIENE 2 COLUMNAS */
        gap: 8px !important;
        margin-bottom: 8px !important;
    }
    
    .cf7-field label {
        font-size: 13px;
        margin-bottom: 3px !important;
    }
    
    .cf7-field .wpcf7-form-control {
        padding: 7px 5px !important; /* AÚN MÁS COMPACTO EN MÓVIL */
        font-size: 13px !important;
        min-height: 38px !important;
    }
    
    .cf7-field select.wpcf7-form-control {
        height: 38px !important;
        padding-right: 18px !important;
    }
    
    .cf7-row-full .cf7-field textarea.wpcf7-form-control {
        min-height: 80px !important;
    }
    
    .cf7-field input[type="submit"] {
        padding: 10px 8px !important;
        font-size: 14px !important;
    }
    
    /* EN MÓVIL, LA HORA OCUPA SOLO UNA COLUMNA */
    .cf7-row:nth-child(3) {
        grid-template-columns: 1fr !important;
    }
    
    .cf7-row:nth-child(3) .cf7-field.empty {
        display: none;
    }
}

/* PANTALLAS MUY PEQUEÑAS */
@media (max-width: 480px) {
    .cf7-row {
        gap: 6px !important;
        margin-bottom: 6px !important;
    }
    
    .cf7-field .wpcf7-form-control {
        padding: 6px 4px !important; /* ABSOLUTO MÍNIMO */
        font-size: 12px !important;
        min-height: 36px !important;
    }
    
    .cf7-field label {
        font-size: 12px;
    }
    
    .cf7-field select.wpcf7-form-control {
        height: 36px !important;
    }
}

/* PLACEHOLDERS */
.cf7-field .wpcf7-form-control::placeholder {
    font-size: 12px;
    color: #999;
}














/* Botón WhatsApp CF7 */
.cf7-grid input[type="submit"] {
  background: #ffffff;
  color: #1e1e1e;
  border: 2px solid #25D366;
  border-radius: 999px;
  padding: 14px 22px 14px 52px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  position: relative;
  transition: all 0.3s ease;
}

/* Ícono WhatsApp */
.cf7-grid input[type="submit"]::before {
  content: "";
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background-image: url("https://upload.wikimedia.org/wikipedia/commons/6/6b/WhatsApp.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

/* Hover elegante */
.cf7-grid input[type="submit"]:hover {
  background: #25D366;
  color: #ffffff;
}

/* Quitar outline feo */
.cf7-grid input[type="submit"]:focus {
  outline: none;
}





