/*
 * Sitewide footer CTA form.
 * Scoped under .oa-cta-* so it does not affect other theme forms.
 */
.oa-cta-box {
	display: flex;
	flex-direction: column;
	gap: 26px;
}
.oa-cta-row {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	row-gap: 20px;
}
.oa-cta-col { flex-grow: 1; flex-basis: 0; width: 100%; }
.oa-cta-field {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	border: 2px solid #3fc3d8;
	background-color: transparent;
}
.oa-cta-field--textarea { flex-direction: column; align-items: flex-start; }
.oa-cta-field > span.oa-cta-divider {
	position: absolute;
	top: 6px;
	width: 2px;
	height: 49px;
	background-color: #3fc3d8;
	pointer-events: none;
}
.oa-cta-field--name .oa-cta-divider { left: 86px; }
.oa-cta-field--phone .oa-cta-divider { left: 90px; }
.oa-cta-field--email .oa-cta-divider { left: 82px; }
.oa-cta-field--textarea .oa-cta-divider { display: none; }
.oa-cta-field--required::after {
	content: "";
	position: absolute;
	top: 7px;
	right: 7px;
	width: 6px;
	height: 6px;
	background-color: #008a9e;
}
.oa-cta-field-inner {
	box-sizing: border-box;
	display: inline-block;
	position: relative;
	width: 100%;
}
.oa-cta-field label {
	display: inline-block;
	padding: 0 19px;
	font-size: 16px;
	line-height: 1;
	height: 100%;
	white-space: nowrap;
}
.oa-cta-field--textarea label { padding: 23px 33px 23px 19px; }
.oa-cta-field input,
.oa-cta-field textarea {
	display: block;
	box-sizing: border-box;
	font-size: 18px;
	width: 100%;
	text-align: left;
	font-family: 'Open Sans', sans-serif;
	color: #ffffff;
	border: none;
	outline: 0;
	line-height: 1;
	background-color: transparent;
}
.oa-cta-field input::placeholder,
.oa-cta-field textarea::placeholder { color: rgba(255,255,255,0.85); }
.oa-cta-field input { margin: 0; padding: 16px 21px 20px; }
.oa-cta-field textarea { padding: 0 21px 10px; height: 138px; line-height: 1.3; resize: vertical; }
.oa-cta-field:focus-within {
	border-color: #8edbef;
	box-shadow: 0 0 0 3px rgba(142, 219, 239, 0.45);
}
.oa-cta-field input:focus,
.oa-cta-field textarea:focus { outline: none; }
.oa-cta-field input.oa-cta-error,
.oa-cta-field textarea.oa-cta-error {
	background-color: #d33 !important;
	color: #fff !important;
}
.oa-cta-validation {
	display: none;
	text-align: center;
	padding: 14px 20px;
	margin: 20px auto 20px;
	font-size: 14px;
}
.oa-cta-validation.oa-cta-validation--active { display: block; }
.oa-cta-validation.oa-cta-validation--error { background-color: #f5770c; color: #000; }
.oa-cta-validation.oa-cta-validation--success { background-color: #3fc3d8; color: #000; }
.oa-cta-submit-btn:disabled { cursor: not-allowed; opacity: 0.7; }
.oa-cta-hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
.oa-cta-field-error {
	display: none;
	color: #ffd7d7;
	font-size: 12px;
	line-height: 1.3;
	padding: 6px 2px 0;
}
.oa-cta-field-error.oa-cta-field-error--active { display: block; }
.oa-cta-check {
	max-width: 1160px;
	margin: 0 auto;
	line-height: 1.6;
}
.oa-cta-check a { color: #69c1d5; }
.oa-cta-check a:hover { color: #fff; text-decoration: underline; }
.oa-cta-check input[type=checkbox] {
	position: absolute;
	opacity: 0;
	width: 40px;
	height: 40px;
	margin: 0;
	cursor: pointer;
}
.oa-cta-check label { position: relative; display: block; cursor: pointer; }
.oa-cta-check-label {
	display: block;
	position: relative;
	padding: 0 0 0 50px;
	min-height: 40px;
	font-size: 13px;
}
.oa-cta-check input[type=checkbox] + .oa-cta-check-label::before {
	display: block;
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	top: 6px;
	left: 0;
	border: 2px solid #69c1d5;
}
.oa-cta-check input[type=checkbox]:checked + .oa-cta-check-label::after {
	position: absolute;
	content: "";
	border-bottom: 4px solid #fff;
	border-right: 4px solid #fff;
	width: 8px;
	height: 26px;
	left: 14px;
	top: 7px;
	transform: rotate(45deg);
}
.oa-cta-check input[type=checkbox]:focus-visible + .oa-cta-check-label::before {
	box-shadow: 0 0 0 3px rgba(142, 219, 239, 0.6);
}
.oa-cta-bottom {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 22px;
	padding: 20px 0 0;
	font-family: 'Open Sans', sans-serif;
}
.oa-cta-bottom-col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 10px;
	max-width: 1080px;
}
.oa-cta-required { position: relative; padding: 0 0 0 13px; }
.oa-cta-required span {
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
	color: #fff;
	white-space: nowrap;
	text-transform: uppercase;
	font-weight: bold;
}
.oa-cta-required::before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	width: 5px;
	height: 5px;
	background-color: #008a9e;
}
.oa-cta-legal span { display: block; font-size: 12px; line-height: 1.3; color: #fff; }
.oa-cta-submit-wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	row-gap: 20px;
}
.oa-cta-submit {
	position: relative;
	background-color: #3fc3d8;
}
.oa-cta-submit:hover { background-color: #8edbef; }
.oa-cta-submit span { position: relative; display: block; }
.oa-cta-submit span::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	right: 30px;
	width: 18px;
	height: 18px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #ffffff;
}
.oa-cta-submit span::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 28px;
	width: 33px;
	height: 1px;
	background-color: #ffffff;
}
.oa-cta-submit-btn {
	box-sizing: border-box;
	display: block;
	position: relative;
	border: none;
	padding: 0 51px 0 0;
	margin: 0;
	color: #ffffff;
	font-size: 21px;
	font-weight: 600;
	text-transform: uppercase;
	height: 56px;
	cursor: pointer;
	text-align: center;
	width: 269px;
	background-color: transparent;
}
.oa-cta-submit-btn:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 2px;
}
body.wp-child-theme-oscar-ischiu-2022_mirror .oa-cta-submit-btn {
	color: #253e4d;
}
body.wp-child-theme-oscar-ischiu-2022_mirror .oa-cta-submit span::before {
	border-color: #253e4d;
}
body.wp-child-theme-oscar-ischiu-2022_mirror .oa-cta-submit span::after {
	background-color: #253e4d;
}
@media screen and (min-width: 600px) {
	.oa-cta-submit-wrap { flex-direction: row; justify-content: center; align-items: center; column-gap: 25px; }
}
@media screen and (min-width: 800px) {
	.oa-cta-row { flex-direction: row; justify-content: center; align-items: flex-start; column-gap: 23px; }
	.oa-cta-field--textarea { flex-direction: row; }
	.oa-cta-field--textarea .oa-cta-divider { display: block; }
	.oa-cta-field--textarea textarea { padding: 18px 21px 10px; }
}
@media screen and (min-width: 1640px) {
	.oa-cta-box { gap: 36px; }
	.oa-cta-row { column-gap: 32px; }
	.oa-cta-submit-wrap { column-gap: 35px; }
	.oa-cta-submit span::after { width: 47px; }
	.oa-cta-submit-btn { padding: 0 72px 0 0; font-size: 30px; width: 379px; }
}
