/* Aire Care Socius Forms integration.
 * Scope every rule to the existing theme wrappers so the plugin stays intact. */
.socius-form .baseform,
.socius-form .baseform > form,
.socius-form .baseform > form > .form-grid {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
}

.socius-form .baseform > form > .form-grid {
	gap: 6.4px !important;
}

.socius-form .baseform > form {
	padding-block: 0.75rem;
}

.socius-form .baseform > form > .form-grid > .form-grid,
.socius-form .target-me-sf-datepicker > .form-grid {
	gap: 0.75rem;
}

.socius-form .obliberty-socius-field,
.socius-form .target-me-sf-datepicker,
.socius-form .target-me-datepicker-container,
.socius-form .target-me-chrononym-selector,
.socius-form .dp__main,
.socius-form .dp__input_wrap {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
}

.socius-form .obliberty-socius-input,
.socius-form .target-me-datepicker-input {
	box-sizing: border-box !important;
	width: 100% !important;
	height: 2.5rem !important;
	min-height: 2.5rem !important;
	padding: 0.5rem 1.25rem 0.5rem 0.5rem !important;
	border: 1px solid #dbdbdb !important;
	border-radius: 0.25rem !important;
	background-color: #fff !important;
	color: rgba(0, 0, 0, 0.7) !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
	box-shadow: none !important;
}

.socius-form select.obliberty-socius-input {
	height: 2.75rem !important;
	min-height: 2.75rem !important;
}

.socius-form .obliberty-socius-input::placeholder,
.socius-form .target-me-datepicker-input::placeholder {
	color: #aaa !important;
	opacity: 1;
}

.socius-form .obliberty-socius-input:focus,
.socius-form .target-me-datepicker-input:focus {
	border-color: #05adef !important;
	outline: 3px solid rgba(5, 173, 239, 0.2) !important;
	outline-offset: 1px !important;
}

/* Reproduce the current WPForms order without modifying the Socius bundle. */
.socius-form .baseform > form > .form-grid > .form-grid:has(input[name="firstname"]) {
	order: 10;
}

.socius-form .baseform > form > .form-grid > .form-grid:has(input[name="phone"]) {
	order: 20;
}

.socius-form .baseform > form > .form-grid > .obliberty-socius-field:has(input[name="email"]) {
	order: 30;
}

.socius-form .baseform > form > .form-grid > .obliberty-socius-field:has(select[name="productselector"]) {
	order: 40;
}

.socius-form .baseform > form > .form-grid > .obliberty-socius-field:has(textarea[name="comments"]) {
	order: 45;
}

.socius-form .baseform > form > .form-grid > .target-me-sf-datepicker {
	order: 50;
}

.socius-form .baseform > form > .form-grid > .obliberty-socius-field:has(input[name="configuredfield-address"]) {
	order: 60;
}

.socius-form .baseform > form > .form-grid > .obliberty-socius-field:has(input[name="optin"]) {
	order: 70;
}

.socius-form .baseform > form > .form-grid > .before-button-append,
.socius-form .baseform > form > .form-grid > div[style*="display: none"] {
	order: 80;
}

.socius-form .baseform > form > .form-grid > .target-me-submit-btn {
	order: 90;
}

.socius-form .baseform > form > .form-grid > .after-button-append {
	order: 100;
}

.socius-form .target-me-sf-datepicker {
	display: grid;
	gap: 0.4rem;
	min-width: 0;
	overflow: visible;
}

.socius-form .target-me-sf-datepicker::before {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 0.1rem 0;
	background: linear-gradient(to right, #f4a940 0 16%, transparent 16% 84%, #f4a940 84% 100%) center / 100% 1px no-repeat;
	color: #111;
	content: "Request Appointment (Optional)";
	font-family: "Open Sans", sans-serif;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.045em;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
}

.socius-form .target-me-datepicker-input {
	padding-left: 2.5rem !important;
}

.socius-form .dp__input_icon {
	color: #777;
}

.socius-form .obliberty-socius-field:has(input[name="optin"]) {
	display: grid !important;
	grid-template-columns: 0.9rem minmax(0, 1fr) !important;
	gap: 0.35rem !important;
	align-items: start !important;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
}

.socius-form input.obliberty-socius-input[type="checkbox"] {
	width: 0.9rem !important;
	height: 0.9rem !important;
	min-height: 0.9rem !important;
	padding: 0 !important;
	margin: 0.05rem 0 0 !important;
	accent-color: #05adef;
}

.socius-form .target-me-optin-label {
	display: block !important;
	box-sizing: border-box;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	color: #333 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.6rem !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	line-height: 1.25 !important;
	text-align: left !important;
	text-transform: none !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.socius-form .obliberty-socius-submit {
	display: inline-block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	min-height: 2.8rem !important;
	padding: 0.625rem 1.5rem !important;
	border: 2px solid #f4a940 !important;
	border-radius: 2rem !important;
	background: #f4a940 !important;
	color: #0a0a0a !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em !important;
	line-height: 1.3 !important;
	text-transform: uppercase !important;
	cursor: pointer;
}

.socius-form .obliberty-socius-submit:hover {
	background: #e48809 !important;
}

.socius-form .obliberty-socius-submit:focus-visible {
	outline: 3px solid #05adef !important;
	outline-offset: 3px !important;
}

.obliberty-contact-form .socius-form .baseform > form > .form-grid {
	gap: 10.4px !important;
}

.obliberty-contact-form .socius-form .baseform > form,
.obliberty-quote-form .baseform > form {
	padding-block: 1rem;
}

.siderbar_form:not(.obliberty-contact-form) > .socius-form {
	margin-top: 2rem;
	margin-bottom: 1rem;
}

.obliberty-contact-form .socius-form label:not(.target-me-optin-label) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.obliberty-contact-form .socius-form .obliberty-socius-input:not(textarea):not([type="checkbox"]),
.obliberty-contact-form .socius-form .target-me-datepicker-input {
	height: 2.75rem !important;
	min-height: 2.75rem !important;
}

.obliberty-contact-form .socius-form .target-me-datepicker-container::before,
.obliberty-contact-form .socius-form .target-me-chrononym-selector::before,
.obliberty-contact-form .socius-form .obliberty-socius-field:has(textarea[name="comments"])::before {
	display: none;
	content: none;
}

.obliberty-contact-form .socius-form textarea.obliberty-socius-input {
	height: 10rem !important;
	min-height: 10rem !important;
	padding: 0.5rem !important;
	resize: vertical;
}

@media (max-width: 639px) {
	.socius-form .target-me-sf-datepicker::before {
		background: linear-gradient(to right, #f4a940 0 8%, transparent 8% 92%, #f4a940 92% 100%) center / 100% 1px no-repeat;
	}
}
