/* ==========================================
   ELEMENT SELECTORS
   ========================================== */

::-webkit-validation-bubble-message {
	display: none;
}

input,
select {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-shadow: none;
	outline: none;
	border: none;
	border-bottom: 2px solid #fafafa;
}

input[type="radio"],
input[type="checkbox"] {
	width: auto !important;
}

select {
	height: 44px !important;
	line-height: 26px;
}

select:focus {
	outline: none;
}

form h2,
form h3,
form h4,
form h5,
form h6 {
	color: #173B5C;
}

form .submit {
	margin-top: 2rem;
}

body p.introPara {
	color: #5f5f5f;
	font-size: 1.5em;
	line-height: 1.45em;
	text-align: center;
}

div.global_intro h2 {
	font-size: 2.5em;
	line-height: 1.25em;
	color: #1da897;
	font-weight: normal;
	font-style: normal;
	text-align: center;
	margin-top: 23px;
}

/* ==========================================
   ID SELECTORS
   ========================================== */

#myModal {
	padding-right: 0 !important;
}

#myModal .referral-program {
	max-width: 800px;
}

#myModal .modal-body {
	background-color: white;
	max-width: 700px !important;
}

#ThankyouContainer {
	display: none;
}

div#ThankyouContainer {
	padding: 69px 21px;
	margin-bottom: 130px;
	background: white;
}

#pardot-form {
	max-width: 700px !important;
	display: inline-flex;
	margin-top: 20px;
	width: 100%;
}
 #pardot-form .container{
	padding-left:0;
    padding-right:0;
}
.g-recaptcha{
    padding-left:15px;
    padding-right:15px;
}

#formarea {
	margin: auto;
}

#form {
	padding: 0 2rem;
	max-width: 550px;
	margin: 0 auto;
}

#form .modal-full {
	min-width: 100%;
	margin: 0;
}

#form .modal-width {
	margin: 0 auto;
	padding: 24px;
}

#form .modal-full .modal-content {
	min-height: 100vh;
}

#form .modal-content {
	background-color: rgba(0, 0, 0, 0.7) !important;
}

#form .modal-footer {
	margin-top: 7rem;
}

#form .modal-header {
	border-bottom: none;
}

#SubmitButton {
	box-shadow: none;
	background-color: #FF393F;
	color: white;
}

#SubmitButton:hover {
	color: white;
}

#thankyou {
	min-height: 200px;
	padding: 125px 0px;
	border: 1px solid #DDDDDD;
	width: 100%;
	float: right;
	text-align: center;
	font-size: 1.2em;
	display: none;
}

#thankyou p {
	width: 70%;
	margin: 40px auto 0px auto;
}

#thankyouheader {
	font-size: 1.3em;
	width: 70%;
	margin: 0px auto;
}

#captcha_container {
	margin: 0 auto;
}

/* ==========================================
   CLASS SELECTORS
   ========================================== */

.async-hide {
	opacity: 0 !important;
}

.pop-up {
	position: absolute;
}
.pop-up .close {
	color: #000 !important;
	font-size: 36px;
	margin: 0 !important;
}

.pop-up .modal-width {
    margin: 0 auto !important;
    padding: 24px !important;
}

.pop-up .modal-content {
	background-color: rgba(0, 0, 0, 0.7) !important;
}

.text-nowrap {
	color: #000;
	font-weight: bold;
	text-decoration: none;
}

.row {
	margin-bottom: 5px;
}

.errorMsg {
	color: #ab1212 !important;
}

.has-error .form-control {
	border-color: #ab1212;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}

.form-field input,
.form-field select {
	-moz-appearance: none;
	font-style: normal;
	font-weight: normal;
	height: auto;
	line-height: 1.25em;
	font-size: 1em;
	padding: 14px 3.5% 10px;
	background-color: inherit;
	box-sizing: border-box;
	box-shadow: none;
	outline: none;
	border-radius: 5px;
	border: 1px solid #646464;
	color: #051D33;
	background: white;
	width: 100%;
}

.form-field input:hover,
.form-field select:hover {
	border: 1px solid #1673C9 !important;
}

.form-field input:focus,
.form-field select:focus {
	box-shadow: 0px 0px 0px 2px #173B5C !important;
}

.form-field input:valid,
.form-field select:valid {
	border: 1px solid #646464;
	box-shadow: none;
}

/* Error state — hover */
p.form-field:has(.errorMsg) input:hover,
p.form-field:has(.errorMsg) select:hover,
p.form-field.has-field-error input:hover,
p.form-field.has-field-error select:hover {
	border: 1px solid #DA1E28 !important;
	background-color: #F9D7D8 !important;
}

/* Error state — focus */
p.form-field:has(.errorMsg) input:focus,
p.form-field:has(.errorMsg) select:focus,
p.form-field.has-field-error input:focus,
p.form-field.has-field-error select:focus {
	border: 2px solid #F9D7D8 !important;
	box-shadow: 0px 0px 0px 2px #DA1E28 !important;
}

.form-field label {
	margin-bottom: 0;
	display: block;
	position: absolute;
	top: 12px;
	color: #051D33;
	transition: .5s;
	pointer-events: none;
	font-family:"IBM Plex Sans", sans-serif !important;
    font-size:16px !important;
	font-weight:400 !important;
    line-height:24px;
}

.sign-up-form {
	text-align: left;
	padding: 10px 14px;
	padding-top: 0;
	overflow: visible;
	font-size: 14px;
}

.sign-up-form h2 {
	font-weight: 500;
	font-size: 28px;
	text-align: center;
}

.sign-up-form h2 strong {
	font-weight: 500;
}

.sign-up-form .formcta {
	text-align: center;
	font-size: 20px;
	padding: 20px 0 20px 0;
}

.sign-up-form p,
.sign-up-form label {
	margin-bottom: 2rem;
	text-transform: none;
	font-weight: normal;
}

.sign-up-form p a,
.sign-up-form label a {
	text-decoration: underline !important;
}

.sign-up-form label {
	margin-bottom: 0;
	position: absolute;
	top: 12px;
	color: #000;
	transition: .5s;
	pointer-events: none;
	margin-left: 8px;
	font-family: "IBM Plex Sans", sans-serif !important;
}

.sign-up-form label span {
	color: #000;
	font-family: "IBM Plex Sans", sans-serif !important;
}

.sign-up-form .form-control {
	-moz-appearance: none;
	font-style: normal;
	font-weight: normal;
	height: auto;
	line-height: 1.25em;
	font-size: 1em;
	padding: 14px 3.5% 10px;
	background-color: inherit;
	box-sizing: border-box;
	box-shadow: none;
	outline: none;
	border-radius: 6px;
	border: 1px solid #fafafa;
	color: #051D33;
	background: white;
	-webkit-box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.3);
}

.sign-up-form .modal .form-control {
	background-color: #051d33 !important;
}

.sign-up-form input:focus ~ label,
.sign-up-form select:focus ~ label,
.sign-up-form input:valid ~ label,
.sign-up-form select:valid ~ label {
	font-size: 12px;
	font-weight: bold;
	color: #000;
	/*top: -17px;*/
}

.sign-up-form input:focus,
.sign-up-form select:focus,
.sign-up-form input:valid,
.sign-up-form select:valid {
	/*border-bottom:2px solid #ffb500;*/
}

.sign-up-form .btn-default {
	padding: 18px 11px;
	display: block;
	font-size: 1em;
	line-height: 1.1em;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0.15em;
	color: #fff;
	border-width: 0;
	border-radius: 4px;
	overflow: hidden;
	width: 139px;
	margin: 0 auto;
}

.sign-up-form .btn-default:hover {
	background-color: #FF393F;
}

.sign-up-form .has-error .help-block {
	margin-top: 10px;
	margin-bottom: 0;
	font-size: 0.9em;
	color: #ab1212;
	font-family: IBM Plex Sans, sans-serif;
	font-weight: 300;
	font-style: normal;
}

.sign-up-form .form-group {
	margin-bottom: 0px;
}

.sign-up-form .checkbox {
	margin-top: 15px;
	margin-bottom: 15px;
}

.sign-up-form .checkbox label {
	margin-bottom: 2px;
	line-height: 1.375em;
	font-size: 14px;
}

.sign-up-form .input-sm,
.sign-up-form .form-horizontal .form-group-sm .form-control {
	/*padding: 0 5px*/
}

.sign-up-form .devices {
	float: right;
}

.sign-up-form input[type="checkbox"] ~ label {
	font-size: inherit;
	font-weight: inherit;
	display: inline-block;
	color: #000;
	margin-top: 12px;
}

p.Marketing_Comms_Opt_In,
p.Expressed_Consent {
	flex: none;
	max-width: 100%;
}

/* ==========================================
   MEDIA QUERIES
   ========================================== */

@media (max-width: 768px) {
	#form .modal-width {
		padding: 0rem 2rem;
	}

	#fixedcta {
		background-color: #4ac2c1;
		bottom: 0;
		box-shadow: 3px 3px 20px #888888;
		color: #fff;
		font-size: 16px;
		height: auto;
		line-height: 12px;
		padding: 15px;
		position: fixed;
		width: 100%;
		z-index: 999;
		text-align: center;
	}

	.sign-up-form {
		padding: 10px 0px;
		/*padding-bottom: 30px;*/
	}
}

@media (max-width: 1350px) {
	div#ThankyouContainer {
		margin-bottom: 0px;
	}
}

@media (min-width: 769px) {
	* {
		box-sizing: border-box;
	}
}

@media (max-width: 425px) {
	#formarea {
		margin: auto 0;
	}

	.left-right .features-icons-item {
		display: block !important;
		text-align: center;
	}
}

@media (max-width: 350px) {
	.sign-up-form .btn-default {
		background-position: right center;
		width: 260px;
		margin-left: 0;
	}
}