/* Optout styling */

.optout {
	margin: 10px;
  	margin-bottom: 30px;
    padding: 15px;
	background-color: #ddd;
    border-radius: 5px;
}

	.optout p {
		font-size: 14px;
		line-height: 20px;
	}

	.optout p .fa {
		margin-right: 6px;
	}

.disclaimer {
	margin-top: 0.5rem;
	font-size: 0.6rem;
	line-height: 1.3rem;
	padding: 0 0.9rem;
}


#PrefWidget .prefHeader {
	margin: 10px;
  	margin-bottom: 30px;
    padding: 15px;
	background-color: #ddd;
    border-radius: 5px;
}

	#PrefWidget .prefHeader p {
		font-size: 12px;
		line-height: 16px;
		margin-bottom: 10px;
	}

	#PrefWidget .prefHeader p:first-child:before {
		font-family: FontAwesome;
		content: '\f023';
		margin-right: 6px;
	}

	#PrefWidget .prefHeader p:last-child {
		margin-bottom: 0px;
	}


/* Error alert styling */

.errAlert {
    background-color: #f8d7da;
    color: #721c24;
    border: none;
    box-shadow: none;
    text-align: center;
    padding: 10px;
    margin: 10px 10px 20px;
    border-radius: 5px;

}

    .errAlert p, .errAlert p strong {
        font-size: 16px;
        margin: 0;
        font-weight: bold;
    }
    


/* Error fields styling */

.errMsg {
	display: inline-block;
	margin-left: 0.3rem;
	padding-top: 0.3rem;
	color: #ed1c24;
}

.errMsg p {
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 700;
}

.err {
	border: 1px solid #ed1c24;
}

.err:focus {
	border-color: #ed1c24;
}

/* Approved fields styling */

.pass {
	border: 1px solid #09ba0c;
}

/* Form styling */

.form-bg {
	background-color: #eee!important;
}

.ft-form, .quote-form, .demo-form {
	background-color: #eee!important;
}

.contact-form {
	background: #eee!important;
}


.form-row {
	display: flex;
	flex-wrap: wrap;
}

.form-group {
	padding: 5px 10px;
    margin-top: 5px;
    margin-bottom: 5px;
}

	.form-group label {
		padding-bottom: 0.3rem;
		display: block;
	}

		.form-group label.req-field:after {
			content: '*';
			position: relative;
			display: inline-block;
			margin-left: 0.2rem;
			color: #ed1c24;
		}

		.form-group label.ic-err:before {
			font-family: FontAwesome;
			content: '\f12a';
			position: relative;
			display: inline-block;
			float: right;
			border-radius: 20px;
			width: 20px;
			height: 20px;
			background-color: #ed1c24;
			text-align: center;
			color: #ffffff;
			font-size: 14px;
		}


		.form-group label.ic-pass:before {
			font-family: FontAwesome;
			content: '\f00c';
			position: relative;
			display: inline-block;
			float: right;
			border-radius: 20px;
			width: 20px;
			height: 20px;
			background-color: #09ba0c;
			text-align: center;
			color: #ffffff;
			font-size: 14px;
		}

		.form-group label.lbl_checkbox {
			display: block;
			margin-left: 1.5rem;
		}

	.form-group input[name='00N3000000BjCM0'] {
		margin-top: 0.3rem;
		float: left;
	}


.form-group.form-err:before {
    font-family: FontAwesome;
			content: '\f12a';
			position: absolute;
			display: inline-block;
			border-radius: 20px;
			width: 20px;
			height: 20px;
			border: 3px solid #ed1c24;
			text-align: center;
			color: #ed1c24;
			font-size: 12px;
			margin-top: 10px;
			margin-left: 9px;
}

.form-group.form-err select, .form-group.form-err input  {
    padding-left: 35px;
    transition: all 0.3s ease-in-out;
}

.form-group.form-pass:before {
    font-family: FontAwesome;
			content: '\f00c';
			position: absolute;
			display: inline-block;
			border-radius: 20px;
			width: 20px;
			height: 20px;
			border: 3px solid #09ba0c;
			text-align: center;
			color: #09ba0c;
			font-size: 12px;
			line-height: 14px;
			margin-top: 10px;
			margin-left: 9px;

}

.form-group.form-pass select, .form-group.form-pass input {
    padding-left: 35px;
    transition: all 0.3s ease-in-out;
}


/* Checkbox Stylings */
.cb {
	display: grid;
	column-count: 3;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	grid-auto-rows: minmax(20px, 40px);
  
    -ms-grid-columns: 200px 200px 200px;
	-ms-grid-rows: 40px;
  
	grid-column-gap: 10px;
  	grid-row-gap: 5px;

  	-webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.cb input[type="checkbox"] {
	position: fixed;
	top: -9999999px;
}


.cb input[type="checkbox"]+label{
    transition: all 0.3s ease-in-out;
	font-size: 14px;
	line-height: 15px;
	padding: 4px 10px;
	background-color: #dadada;
	color: #767676;
	width: 100%;
	height: 100%;
	border-radius: 3px;
	cursor: pointer;
} 


.cb input[type="checkbox"]+label::before{ 
    transition: all 0.3s ease-in-out;
    display: inline-block;
	font-family: FontAwesome;
	content: '\f00c';
	color: #fff;
	font-size: 0px;
	top: 12px;
	width: 0;
	float: left;
}

.cb input[type="checkbox"]:checked+label{ 
	background-color: #848484;
	color: #fff;
} 

.cb input[type="checkbox"]:checked+label::before{ 
    top: 0;
    opacity: 1;
    width: 20px;
    height: inherit;
    font-size: 14px;
	margin-right: 2px;
}

@media screen and (-ms-high-contrast: active) and (max-width: 1200px), screen and (-ms-high-contrast: none) and (max-width: 1200px) {
	.cb {
		column-count: 2;
	}
}

@media screen and (-ms-high-contrast: active) and (max-width: 768px), screen and (-ms-high-contrast: none) and (max-width: 768px) {
	.cb {
		column-count: 1;
	}
}


/* Submit stylings */

.btn[type="submit"] {
	margin: 1.914rem auto;
}

.btn-margin {
	margin: 15px 0 !important;
}

.actions {
  	padding: 0px 10px;
}


/* tooltip stylings */
.tooltip {
	font-family: "Lato", "Roboto", "SegoeUI", "Helvetica Neue", "Helvetica", sans-serif;
	font-size: 0.8rem;
	font-weight: 400;
	z-index: 1;
	margin-left: 0.5rem;
}

.tooltip-inner {
    background-color: #e2e3e5;
    border-color: #d6d8db;
    color: #383d41;
}

.tooltip.bs-tooltip-right .arrow:before {
    border-right: 15px solid #e2e3e5;
}

/* label stylings */
.no-bottom-margin {
	margin-bottom: 0;
}

.no-bottom-padding {
	padding-bottom: 0;
}

/* hr stylings */
.form-separator hr {
	margin-top: 15px !important;
    margin-bottom: 20px !important;
    border-top: 1px solid #d9d8d8 !important;
}

/* product choices stylings */
.product-choices span {
	display: block;
}

.product-choices label {
	display: inline-block;
    margin-left: 10px;
}

/* select stylings */

.light-gray {
	color: #a69fa5;
}

select option {
	color: #555 !important;
}