/*
 * CF7 País, Estado y Ciudad — estilo tipo Material Design (línea inferior).
 * Para ajustar colores o tamaños, cambia las variables en tu CSS adicional
 * (Apariencia > Personalizar > CSS adicional), por ejemplo:
 *   .wpcf7-form { --cf7pec-linea: #0d1b6e; --cf7pec-tamano: 16px; }
 */
.wpcf7-form {
	--cf7pec-linea: #1a237e;          /* color de la línea inferior */
	--cf7pec-linea-foco: #1a237e;     /* color de la línea al enfocar */
	--cf7pec-texto: #111111;          /* color del texto */
	--cf7pec-tamano: 15px;            /* tamaño de letra */
	--cf7pec-alto: 34px;              /* alto del campo */
	--cf7pec-error: #dc3232;          /* color de la línea con error */
}

.wpcf7-form .cf7-pec-campo.cf7-pec-campo {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	height: var(--cf7pec-alto) !important;
	margin: 0 !important;
	padding: 4px 28px 6px 0 !important;
	box-sizing: border-box !important;
	border: 0 !important;
	border-bottom: 1px solid var(--cf7pec-linea) !important;
	border-radius: 0 !important;
	background-color: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	color: var(--cf7pec-texto) !important;
	font-family: inherit !important;
	font-size: var(--cf7pec-tamano) !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.5px !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

/* Listas: mayúsculas y flecha, como tus otras listas */
.wpcf7-form select.cf7-pec-campo.cf7-pec-campo {
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	text-transform: uppercase !important;
	cursor: pointer;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1.5 1.5l5.5 5.5 5.5-5.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 8px center !important;
	background-size: 14px 9px !important;
}
.wpcf7-form select.cf7-pec-campo::-ms-expand { display: none; }
.wpcf7-form select.cf7-pec-campo option { text-transform: none; color: #111; }

/* Deshabilitada (antes de elegir país / estado): mismo estilo, más tenue */
.wpcf7-form select.cf7-pec-campo.cf7-pec-campo:disabled {
	opacity: 0.55 !important;
	cursor: not-allowed;
}

/* Campo de texto de la ciudad (Estados Unidos u "Otra") */
.wpcf7-form input.cf7-pec-campo.cf7-pec-campo {
	padding-right: 0 !important;
	background-image: none !important;
	text-transform: none !important;
	cursor: text;
}
.wpcf7-form input.cf7-pec-campo::placeholder {
	color: var(--cf7pec-texto);
	opacity: 1;
}
.wpcf7-form select.cf7-pec-ciudad:not([hidden]) ~ input.cf7-pec-ciudad-texto {
	margin-top: 12px !important;
}

/* Foco y error */
.wpcf7-form .cf7-pec-campo.cf7-pec-campo:focus {
	border-bottom-color: var(--cf7pec-linea-foco) !important;
	box-shadow: 0 1px 0 0 var(--cf7pec-linea-foco) !important;
}
.wpcf7-form .cf7-pec-campo.cf7-pec-campo.wpcf7-not-valid {
	border-bottom-color: var(--cf7pec-error) !important;
}
