/* =========================================================
   TINTO 360 - FORMULARIO DE CONTACTO
   ID del contenedor Elementor: #tinto-contact-form
========================================================= */

#tinto-contact-form {
	--tinto-blue: #202945;
	--tinto-wine: #572a31;
	--tinto-taupe: #a57f74;
	--tinto-gray: #636569;
	--tinto-light-gray: #bfb7b0;
	--tinto-white: #ffffff;
}

/* Formulario */
#tinto-contact-form .forminator-ui {
	font-family: "Be Vietnam", Arial, sans-serif !important;
}

/* Reset visual de Forminator */
#tinto-contact-form .forminator-custom-form {
	margin: 0 !important;
	padding: 0 !important;
}

/* Filas */
#tinto-contact-form .forminator-row {
	margin-bottom: 18px !important;
}

/* Labels */
#tinto-contact-form .forminator-label {
	display: block !important;
	margin-bottom: 7px !important;
	color: var(--tinto-blue) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
}

/* Requeridos */
#tinto-contact-form .forminator-required {
	color: var(--tinto-wine) !important;
}

/* Inputs y textarea */
#tinto-contact-form .forminator-input,
#tinto-contact-form .forminator-textarea {
	width: 100% !important;
	border: 1px solid rgba(32, 41, 69, 0.22) !important;
	border-radius: 8px !important;
	background: #fff !important;
	color: var(--tinto-blue) !important;
	font-family: inherit !important;
	font-size: 15px !important;
	box-shadow: none !important;
	transition:
		border-color .2s ease,
		box-shadow .2s ease,
		background-color .2s ease !important;
}

/* Inputs */
#tinto-contact-form .forminator-input {
	min-height: 48px !important;
	padding: 0 16px !important;
}

/* Textarea */
#tinto-contact-form .forminator-textarea {
	min-height: 140px !important;
	padding: 14px 16px !important;
	resize: vertical !important;
}

/* Placeholder */
#tinto-contact-form .forminator-input::placeholder,
#tinto-contact-form .forminator-textarea::placeholder {
	color: rgba(99, 101, 105, .65) !important;
}

/* Focus */
#tinto-contact-form .forminator-input:focus,
#tinto-contact-form .forminator-textarea:focus {
	border-color: var(--tinto-wine) !important;
	box-shadow: 0 0 0 3px rgba(87, 42, 49, .10) !important;
	outline: none !important;
}

/* Contador de caracteres */
#tinto-contact-form .forminator-description {
	display: block !important;
	margin-top: 6px !important;
	color: var(--tinto-gray) !important;
	font-size: 12px !important;
	text-align: right;
}

/* Botón */
#tinto-contact-form .forminator-button-submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 48px !important;
	padding: 0 30px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--tinto-wine) !important;
	color: var(--tinto-white) !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	cursor: pointer !important;
	transition:
		background-color .2s ease,
		transform .2s ease,
		box-shadow .2s ease !important;
}

/* Hover */
#tinto-contact-form .forminator-button-submit:hover {
	background: #6d343e !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(87, 42, 49, .20) !important;
}

/* Active */
#tinto-contact-form .forminator-button-submit:active {
	transform: translateY(0);
}

/* Error individual */
#tinto-contact-form .forminator-error-message {
	margin-top: 6px !important;
	color: var(--tinto-wine) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
}

/* Campos con error */
#tinto-contact-form .forminator-has_error .forminator-input,
#tinto-contact-form .forminator-has_error .forminator-textarea {
	border-color: var(--tinto-wine) !important;
}

/* Mensaje general */
#tinto-contact-form .forminator-response-message {
	padding: 14px 16px !important;
	border-radius: 8px !important;
	font-size: 14px !important;
}

/* Éxito */
#tinto-contact-form .forminator-response-message.forminator-success {
	border: 1px solid rgba(32, 41, 69, .15) !important;
	border-left: 4px solid var(--tinto-blue) !important;
	background: rgba(165, 127, 116, .10) !important;
	color: var(--tinto-blue) !important;
}

/* Error general */
#tinto-contact-form .forminator-response-message.forminator-error {
	border: 1px solid rgba(87, 42, 49, .20) !important;
	border-left: 4px solid var(--tinto-wine) !important;
	background: rgba(87, 42, 49, .06) !important;
	color: var(--tinto-wine) !important;
}

/* Mobile */
@media (max-width: 767px) {

	#tinto-contact-form .forminator-row {
		margin-bottom: 15px !important;
	}

	#tinto-contact-form .forminator-input {
		min-height: 46px !important;
	}

	#tinto-contact-form .forminator-button-submit {
		width: 100% !important;
		min-height: 50px !important;
	}
}