:root {
	--dezlop-form-font-size: 15px;
	--dezlop-form-text-color: #222222;
	--dezlop-form-label-color: #333333;
	--dezlop-form-label-weight: 600;
	--dezlop-form-bg: #ffffff;
	--dezlop-form-border-color: #d9dee3;
	--dezlop-form-border-radius: 10px;
	--dezlop-form-field-height: 46px;
	--dezlop-form-field-padding-x: 14px;
	--dezlop-form-field-padding-y: 10px;
	--dezlop-form-placeholder-color: #8b95a1;
	--dezlop-form-focus-color: #ffb200;
	--dezlop-form-focus-shadow: 0 0 0 3px rgba(255, 178, 0, 0.18);
	--dezlop-form-button-bg: #ffb200;
	--dezlop-form-button-bg-hover: #d89a00;
	--dezlop-form-button-color: #ffffff;
	--dezlop-form-button-height: 52px;
	--dezlop-form-button-radius: 8px;
}

.form-theme :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	input[type="url"],
	input[type="search"],
	input[type="password"],
	select,
	textarea
),
.gform_wrapper :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	input[type="url"],
	input[type="search"],
	input[type="password"],
	select,
	textarea
),
.wpcf7 form :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	input[type="url"],
	input[type="search"],
	input[type="password"],
	select,
	textarea
) {
	width: 100%;
	font-size: var(--dezlop-form-font-size);
	color: var(--dezlop-form-text-color);
	background-color: var(--dezlop-form-bg);
	border: 1px solid var(--dezlop-form-border-color) !important;
	border-radius: var(--dezlop-form-border-radius) !important;
	padding: var(--dezlop-form-field-padding-y) var(--dezlop-form-field-padding-x);
	outline: none;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.form-theme :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	select
),
.gform_wrapper :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	select
),
.wpcf7 form :is(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	select
) {
	padding-left: 18px !important;
	padding-right: 18px !important;
}

.form-theme :is(input:not([type="checkbox"]):not([type="radio"]), select),
.gform_wrapper :is(input:not([type="checkbox"]):not([type="radio"]), select),
.wpcf7 form :is(input:not([type="checkbox"]):not([type="radio"]), select) {
	min-height: var(--dezlop-form-field-height);
}

.form-theme select:not([multiple]):not([size]),
.gform_wrapper select:not([multiple]):not([size]),
.wpcf7 form select:not([multiple]):not([size]) {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-right: 44px !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7 10L12 15L17 10' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 14px 14px;
}

.form-theme textarea,
.gform_wrapper textarea,
.wpcf7 form textarea {
	min-height: 120px;
	resize: vertical;
}

.form-theme :is(input, select, textarea)::placeholder,
.gform_wrapper :is(input, select, textarea)::placeholder,
.wpcf7 form :is(input, select, textarea)::placeholder {
	color: var(--dezlop-form-placeholder-color);
	opacity: 1;
}

.form-theme :is(input, select, textarea):focus,
.gform_wrapper :is(input, select, textarea):focus,
.wpcf7 form :is(input, select, textarea):focus {
	border-color: var(--dezlop-form-focus-color);
	box-shadow: var(--dezlop-form-focus-shadow);
}

.form-theme :is(label, .heading-label),
.gform_wrapper .gfield_label,
.wpcf7 form label {
	display: inline-block;
	margin-bottom: 8px;
	color: var(--dezlop-form-label-color);
	font-weight: var(--dezlop-form-label-weight);
	line-height: 1.3;
}

.form-theme :is(button[type="submit"], input[type="submit"], .btn-submit),
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"],
.wpcf7 form .wpcf7-submit {
	min-height: var(--dezlop-form-button-height);
	padding: 10px 16px;
	border: 0;
	border-radius: var(--dezlop-form-button-radius);
	background: var(--dezlop-form-button-bg) !important;
	color: var(--dezlop-form-button-color) !important;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.2;
	transition: background-color .2s ease, opacity .2s ease;
}

.form-theme :is(button[type="submit"], input[type="submit"], .btn-submit):hover,
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"]:hover,
.wpcf7 form .wpcf7-submit:hover {
	background: var(--dezlop-form-button-bg-hover) !important;
}

.form-theme :is(button[type="submit"], input[type="submit"], .btn-submit):disabled,
.gform_wrapper .gform_button:disabled,
.gform_wrapper input[type="submit"]:disabled,
.wpcf7 form .wpcf7-submit:disabled {
	opacity: .65;
	cursor: not-allowed;
}

.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message,
.wpcf7 form .wpcf7-not-valid-tip {
	margin-top: 6px;
	font-size: 13px;
	color: #c62828;
}

.gform_wrapper .gform_validation_errors,
.wpcf7 form .wpcf7-response-output {
	border-radius: 6px;
	font-size: 14px;
}

.gform_wrapper .gfield--type-choice .gchoice,
.gform_wrapper .gfield--type-radio .gchoice,
.gform_wrapper .gfield--type-checkbox .gchoice,
.gform_wrapper .gfield--type-choice .gchoice label,
.gform_wrapper .gfield--type-radio .gchoice label,
.gform_wrapper .gfield--type-checkbox .gchoice label,
.gform_wrapper .gfield--type-choice .gchoice .gform-field-label--type-inline,
.gform_wrapper .gfield--type-radio .gchoice .gform-field-label--type-inline,
.gform_wrapper .gfield--type-checkbox .gchoice .gform-field-label--type-inline,
.gform_wrapper .gfield--type-choice .gchoice .gchoice_label,
.gform_wrapper .gfield--type-radio .gchoice .gchoice_label,
.gform_wrapper .gfield--type-checkbox .gchoice .gchoice_label {
	font-size: 14px !important;
	font-weight: 400 !important;
	color: #6b7280 !important;
}

@media (max-width: 767px) {
	.form-theme :is(input, select, textarea),
	.gform_wrapper :is(input, select, textarea),
	.wpcf7 form :is(input, select, textarea) {
		font-size: 16px;
	}
}

/* Widget de contato da propriedade (base global, com variaveis sobrescritas no widget). */
.widget_apus_property_contact_form {
	background: var(--dezlop-widget-bg, #ffffff);
	border: 1px solid var(--dezlop-widget-border, #e7ebef);
	border-radius: var(--dezlop-widget-radius, 12px);
	padding: var(--dezlop-widget-padding, 18px);
}

.widget_apus_property_contact_form .agent-content-wrapper {
	gap: var(--dezlop-agent-gap, 12px);
	margin-bottom: 14px;
}

.widget_apus_property_contact_form .widget-title,
.widget_apus_property_contact_form .widget-title span {
	text-transform: none !important;
}

.widget_apus_property_contact_form .agent-content h3 {
	color: var(--dezlop-agent-title-color, #1f2937);
	margin-bottom: 4px;
}

.widget_apus_property_contact_form .agent-content .phone {
	color: var(--dezlop-agent-meta-color, #6b7280);
	word-break: break-word;
}

.widget_apus_property_contact_form .agent-content .phone .phone-show span {
	background: var(--dezlop-phone-show-bg, #ffb703) !important;
	color: var(--dezlop-phone-show-color, #ffffff) !important;
	border-radius: 4px;
	padding: 2px 8px;
}

.widget_apus_property_contact_form .gform_confirmation_message {
	background: var(--dezlop-confirmation-bg, #7ef392);
	border: 1px solid var(--dezlop-confirmation-border, #3ecd42);
	color: var(--dezlop-confirmation-text, #212529);
	border-radius: var(--dezlop-form-control-radius, 8px);
	padding: 12px 14px;
}

.widget_apus_property_contact_form .validation_message,
.widget_apus_property_contact_form .gfield_validation_message {
	color: var(--dezlop-validation-text, #dc3545);
}

.widget_apus_property_contact_form .gform_wrapper .validation_message,
.widget_apus_property_contact_form .gform_wrapper .gfield_validation_message {
	display: none !important;
}

.widget_apus_property_contact_form .gform_wrapper .gform_required_legend {
	display: none !important;
}

.widget_apus_property_contact_form #gfield_description_2_10 {
	margin-top: 4px !important;
}

.sidebar-mobile .widget_apus_property_contact_form {
	border: 0 !important;
}
