﻿/*--------FORM STYLES--------------------*/
.form-sect { 
	position: relative; z-index: 2; width: 100%; padding: 40px min(5vw, 40px) 80px max(5vw, calc(50vw - 1000px)); 
	display: flex; flex-direction: column; align-items: stretch; 
}
.form-sect.width100 { padding: 60px max(5%, calc(50% - 600px)); }
.form-sect.width100:before {
	position: absolute; content: ""; z-index: -1; left: max(24px, calc(50% - 648px)); 
	top: 0; height: calc(100% - 24px); width: min(calc(100% - 48px), 1300px); background: #7f1732; 
	border-bottom-left-radius: 40px; border-bottom-right-radius: 40px; 
}

.form-sect .content-sect { position: relative; z-index: 2; width: 100%; }
.form-sect .title, .form-sect .subtitle, .form-sect p, .form-sect .basic-link { color: #fff; position: relative; z-index: 2; width: unset!important; }
.form-sect .title:after, .form-sect .subtitle:after, .form-sect p:after, .form-sect .basic-link:after { 
	position: absolute; content: ""; z-index: -1; top: -10px; left: -10px; width: calc(100% + 20px); height: calc(100% + 20px); background: #7f1732; 
}
.form-sect .btn-link { z-index: 4; color: #fff; }
.form-sect .btn-link:after { z-index: -1; }

form.cb-form { 
	position: relative; z-index: 2; 
	display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; 
}
form.cb-form .formrow { width: 100%; display: flex; justify-content: flex-start; align-items: flex-start; column-gap: 18px; }
form.cb-form .formrow-captcha { width: 100%; display: flex; flex-direction: column; align-items: flex-start; margin-top: 8px; }

form.cb-form .smcol { display: flex; flex-direction: column; align-items: flex-start; width: calc(33.333333% - 12px); }

form.cb-form label { 
	padding: 10px; box-sizing: border-box; margin-top: 10px; 
	color: #fff; background: #7f1732; font-size: 18px; 
	line-height: 1.4; letter-spacing: .5px; 
}
form.cb-form select, form.cb-form input, form.cb-form input[type="text"], form.cb-form input[type="email"], form.cb-form textarea, form.cb-form #CaptchaAnswer {
	width: 100%; height: 42px; padding: 8px; box-sizing: border-box; 
	color: #000; font-size: 15px; 
	line-height: 1.4; letter-spacing: .25px; 
	border: none; outline: 1px solid #000; 
}
form.cb-form textarea { height: 120px; }
form.cb-form select { background: #fff; border-right: 10px solid #fff!important; }

form.cb-form a:not(.invisilink) { cursor: pointer; margin: 20px 0 0 0; }
form.cb-form .CaptchaPanel { text-align: left; }
form.cb-form .CaptchaMessagePanel { 
	font-family: 'obvia', sans-serif!important; color: #fff; background: #7f1732; padding: 10px; text-align: left; 
}
form.cb-form #CaptchaAnswer { width: 180px!important; }
form.cb-form div.CaptchaWhatsThisPanel a { 
	font-family: 'obvia', sans-serif!important; transition: .15s ease all; background: #fff; padding: 10px; 
}
form.cb-form div.CaptchaWhatsThisPanel a:hover { text-decoration: underline; }
form button[type="submit"], form input[type="submit"] { cursor: pointer; border-top: none; border-left: none; border-right: none; background: none; padding-block: 0; padding-left: 0; padding-inline: 0; }

/*---------- RESPONSIVE STYLES ----------*/

@media only screen and (max-width: 1000px) {
	.form-sect.width100:before { left: 6px; width: calc(100% - 12px); }
}

@media only screen and (max-width: 750px) {
	form.cb-form .formrow { flex-direction: column; }
	form.cb-form .smcol { width: 100%; }
}
