.optionalItem{
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	height: 0;
	width: 0;
	z-index: -1;
}
.smLabel {
	padding-left: 10px;
}
#main_body form {
	width: 100%;
	align-content: center;
}

/**** Form Section ****/
.appnitro
{
	/*font-family: "Lucida Grande", Tahoma, Arial, Verdana, sans-serif;*/
	/*font-size:small;*/
}

.appnitro li
{
	width:100%;
}

#main_body  form ul
{
	font-size:100%;
	list-style-type:none;
	margin:0;
	padding:0;
	width:100%;
}

#main_body form li
{
	display:block;
	margin:0;
	padding:4px 30px 2px 9px;
	position:relative;
	clear: both;
}

#main_body form li:after
{
	clear:both;
	content:".";
	display:block;
	height:0;
	visibility:hidden;
}

#main_body .buttons:after
{
	clear:both;
	content:".";
	display:block;
	height:0;
	visibility:hidden;
}

#main_body .buttons
{
	clear:both;
	display:block;
	margin-top:10px;
}

#main_body html form li div
{
	display:inline-block;
}

#main_body form li:not(.media_video) div
{
/*	color:#444;
	margin:0 4px 0 0;
	padding:0 0 8px;*/
}

#main_body form li:not(.media_video) span
{
	color:#444;
	float:left;
	margin:0 4px 0 0;
	padding:0 0 8px;
}

#main_body form li div.left
{
	display:inline;
	float:left;
	width:48%;
}

#main_body form li div.right
{
	display:inline;
	float:right;
	width:48%;
}

#main_body form li div.left .medium
{
	width:100%;
}

#main_body form li div.right .medium
{
	width:98%;
}

#main_body .clear
{
	clear:both;
}

#main_body form li div label,
#main_body form li div span.label
{
	clear:both;
	color:#444;
	display:block;
	font-size:85%;
	line-height:15px;
	margin:0;
	padding-top:3px;
}

#main_body form li div span.label var
{
	font-style: normal;
	font-weight: bold;
}

#main_body form li span label
{
	clear:both;
	color:#444;
	display:block;
	font-size:85%;
	line-height:15px;
	margin:0;
	padding-top:3px;
	margin-left: 3px;
}

#main_body em.currently_entered
{
	white-space: nowrap;
}

#main_body form li .datepicker
{
	cursor:pointer !important;
	float:left;
	height:16px;
	margin:.1em 5px 0 0;
	padding:0;
	width:16px;
}

#main_body .form_description
{
	border-bottom:1px dotted #ccc;
	clear:both;
	display:inline-block;
	margin:0 0 1em;
	color: #444;
}

#main_body .form_description[class]
{
	display:block;
}

#main_body .form_description h2
{
	clear:left;
	font-size:160%;
	font-weight:400;
	margin:0 0 3px;
}

#main_body .form_description p
{
	font-size:95%;
	line-height:130%;
	margin:0 0 12px;
}

#main_body form hr
{
	display:none;
}

#main_body form li.total_payment
{
	padding-bottom: 0;
    padding-top: 0;
    width: 97%;
}
#main_body form li.total_payment.mf_review{
	width: 97%;
	margin-top: 10px;
}
#main_body form li.total_payment span
{
	float: right; 
	text-align: center;
	padding-bottom: 0;
}

#main_body form li.total_payment h3{
	margin: 0px;
	font-size: 150%;
}

#main_body form li.total_payment var{
	font-style: normal;
}

#main_body form li.total_payment h5{
	font-size: 70%;
    font-weight: 100;
    margin: 0;
    text-transform: uppercase;
}

#main_body form li.total_payment span.total_extra{
	clear: both; 
	margin-top: 10px; 
	text-align: right
}
#main_body form li.total_payment span.total_extra h5{
	font-weight: 700;
}

#main_body form li.section_break
{
	border-top:1px dotted #ccc;
	margin-top:9px;
	padding-bottom:0;
	padding-left:9px;
	padding-top:13px;
	width:97% !important;
}

#main_body form ul li.first
{
	border-top:none !important;
	margin-top:0 !important;
	padding-top:0 !important;
}

#main_body form .section_break h3,
#main_body form .media h3
{
	font-size:110%;
	font-weight:400;
	line-height:130%;
	margin:0 0 2px;
}
#main_body .media_image{
	max-width: 100%;
	height: auto;
}
#main_body form .section_break p,
#main_body form .media p
{
	font-size:85%;
	margin:0 0 10px;
}
#main_body form li div.media_image_container{
	margin: 0;
	padding: 0 0 10px 0;
}
#main_body form li div.media_video_container{
	width: 99%;
	height: auto;
	background-color: #000;
	margin-bottom: 10px;
}
#main_body form li div.media_video_container.small{
	width: 40%;
}
#main_body form li div.media_video_container.medium{
	width: 65%;
}
#main_body form li div.media_video_container.large{
	width: 99%;
}
#main_body form li div.media_image_left{
	text-align: left;
}
#main_body form li div.media_image_center{
	text-align: center;
}
#main_body form li div.media_image_right{
	text-align: right;
}
#main_body form li:not(.media_video) div span {
	display:block;
	float:left;
	margin:0;
	padding: 0;
	width:100%;
}

#main_body form li div span.state_list{
	height: 54px;
}

.namewm_ext{
	width: 8%;
}
.namewm_first,.namewm_middle{
	width: 23%;
}
.namewm_last{
	width: 30%;
}

/**** Choices Columns ****/
#main_body form li.two_columns div span {
  margin:0 5px 0 0;
  width:48%;
}

#main_body form li.three_columns div span {
  margin:0 5px 0 0;
  width:30%;
}

#main_body form li.inline_columns div span {
  margin:0 6px 0 0;
  width:auto;
}

/**** Buttons ****/
#main_body input.button_text
{
	overflow:visible;
	width:auto;

	outline: none;
	padding: 6px 9px;
	font: 300 1em 'Helvetica Neue', Arial, 'Lucida Grande', sans-serif;
	color: #333;
	text-shadow: 0 1px 0 #f0f0f0;
	background: #ebebeb;
	background: -webkit-gradient(linear, left top, left bottom, from(#fefefe), to(#dddddd));
	background: -moz-linear-gradient(top, #fefefe, #dddddd);
	border-width: 1px;
	border-style: solid;
	border-color: #bbb #bbb #999;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0 1px 0 #f8f8f8;
	-moz-box-shadow: 0 1px 0 #f8f8f8;
	box-shadow: 0 1px 0 #f8f8f8;
}
#main_body input.button_text:hover, #main_body input.button_text:focus{
	color: #333;
	text-shadow: 0 1px 0 #f0f0f0;
	background: #e5e5e5;
	background: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#dddddd));
	background: -moz-linear-gradient(top, #f0f0f0, #dddddd);
	border-color: #999 #999 #666;
}
#main_body input.button_text:active{
	color: #333;
	text-shadow: none;
	background: #ddd;
	border-color: #999 #999 #666;	
}

#main_body .buttons input
{
	font-size:120%;
	margin-right:5px;
}

#main_body input.btn_secondary{
	background: none;
	border: none;
	color: blue;
	text-decoration: underline;
	cursor: pointer;
	font-size: 100%;
	padding: 0;
}
/**** Inputs and Labels ****/
#main_body form li fieldset{
	margin: 0;
	padding:0;
	border: none;
}

#main_body form li label.description,
#main_body form li span.description
{
	border:none;
	color:#444;
	display:block;
	font-size:95%;
	font-weight:700;
	line-height:150%;
	padding:0 0 1px;
	float: none;
}

#main_body span.symbol
{
	font-size:115%;
	line-height:130%;
}

#main_body input.text
{
	border: 4px solid #EFEFEF;
	border-radius: 8px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2) inset;
	outline: medium none;
	background: none repeat scroll 0 0 #FBFBFB;
	padding:6px 0 6px 6px;
	color:#666666;
	
	font-size:100%;
	margin:0;
}

#main_body input.other
{
	margin: 0 0 9px 25px;
	background: none repeat scroll 0 0 #FBFBFB;
}

#main_body input.file
{
	color:#333;
	font-size:100%;
	margin:0;
	padding:2px 0;
}

#main_body textarea.textarea
{
	border: 4px solid #EFEFEF;
	border-radius: 8px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2) inset;
	outline: medium none;
	background: none repeat scroll 0 0 #FBFBFB;
	padding:6px 0 6px 6px;
	color:#666666;
	
	font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
	font-size:100%;
	margin:0;
	width:98%;
}

#main_body select.select
{

	border: 4px solid #EFEFEF;
	border-radius: 8px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2) inset;
	outline: medium none;
	background: none repeat scroll 0 0 #FBFBFB;
	padding:6px 0 6px 6px;
	color:#666666;
	height: 36px;
	font-size:100%;
	margin:1px 0;
}


#main_body input.currency
{
	text-align:right;
	padding-right:3px;
}

#main_body input.checkbox
{
	display:block;
	height:13px;
	line-height:1.4em;
	margin:4px 0 0 3px;
	width:13px;
}

#main_body input.radio
{
	display:block;
	height:13px;
	line-height:1.4em;
	margin:6px 0 0 3px;
	width:13px;
}

#main_body label.choice
{
	color:#444;
	display:block;
	font-size:100%;
	line-height:1.4em;
	margin:-1.55em 0 0 25px;
	padding: 7px 0!important;
	width:90%;
}

#main_body select.select[class]
{
	margin:0;
	padding:6px 0 6px 6px;
}

*:first-child+html select.select[class]
{
	margin:1px 0;
}

#main_body .safari select.select
{
	font-size:120% !important;
	margin-bottom:1px;
}

#main_body input.small
{
	width:25%;
}

#main_body select.small
{
	width:25%;
}

#main_body input.medium
{
	width: 100%;
}

#main_body select.medium
{
	width:50%;
}

#main_body input.large
{
	width:98%;
}

#main_body select.large
{
	width:100%;
}

#main_body textarea.small
{
	height:5.5em;
}

#main_body textarea.medium
{
	height:10em;
}

#main_body textarea.large
{
	height:20em;
}

/**** Errors ****/
#error_message
{
	background:#fff;
	border:1px dotted red;
	margin-bottom:1em;
	padding-left:0;
	padding-right:0;
	padding-top:4px;
	text-align:center;
	width:97%;
}

#error_message_title
{
	color:#DF0000;
	font-size:125%;
	margin:7px 0 5px !important;
	padding:0 !important;
}

#error_message_desc
{
	color:#000;
	font-size:100%;
	margin:0 0 .8em !important;
}

#error_message_desc strong
{
	background-color:#FFDFDF;
	color:#c10000;
	padding:2px 3px;
}

#main_body form li.error
{
	background-color:#FFDFDF !important;
	border-bottom:1px solid #EACBCC;
	border-right:1px solid #EACBCC;
	margin:3px 0;
}

#main_body form li.error label,
#main_body form li.error span.description
{
	color:#c10000 !important;
}

#main_body form p.error
{
	clear:both;
	color:#c10000;
	font-size:80%;
	font-weight:700;
	margin:0 0 5px !important;
}

#main_body form .required,#main_body .matrix span.required
{
	color:#c10000 !important;
	float:none !important;
	font-weight:800;
}

/**** Guidelines and Error Highlight ****/
#main_body form li.highlighted
{
	background-color:#fff7c0;
}

#main_body form .guidelines
{
	background:#f5f5f5;
	border:1px solid #e6e6e6;
	color:#444;
	font-size:105%;
	left:100%;
	line-height:100%;
	margin:0 0 0 8px !important;
	padding:8px 10px 9px;
	position:absolute;
	top:0;
	visibility:hidden;
	width:42%;
	z-index:1000;
}

#main_body form .guidelines small
{
	font-size:80%;
}

#main_body form li.highlighted .guidelines
{
	visibility:visible;
}


#main_body form li:hover .guidelines
{
	visibility:visible;
}

.no_guidelines .guidelines
{
	display:none !important;
}

.no_guidelines form li
{
	width:97%;
}

.no_guidelines li.section
{
	padding-left:9px;
}

/*** Success Message ****/
.form_success 
{
	clear: both;
	margin: 0;
	padding: 90px 0pt 100px;
	text-align: center;
}

.form_success h2 {
    clear:left;
    font-size:160%;
    font-weight:normal;
    margin:0pt 0pt 3px;
}

.form_success h3 {
    font-weight:normal;
}

/*** Password ****/
#main_body ul.password{
    margin-top:60px;
    margin-bottom: 60px;
    text-align: center;
}
.password h2{
    color:#DF0000;
    font-weight:bold;
    margin:0pt auto 10px;
}

.password input.text {
   font-size:170% !important;
   width:380px;
   text-align: center;
}
.password label{
   display:block;
   font-size:120% !important;
   padding-top:10px;
   font-weight:bold;
}

#li_captcha{
   padding-left: 5px;
   padding-bottom: 10px !important;
}


#li_captcha span{
	float:none !important;
	padding: 0px !important;
}

#li_captcha span.text_captcha{
	padding-bottom: 5px !important;
}

#li_captcha div{
   padding: 0px !important;
}

#captcha_image{
	padding-top: 5px;
	padding-bottom: 10px;
}
#captcha_response_field{
	margin-bottom: 10px;
}
#dummy_captcha_internal{
	height: 8px;
}

/** Matrix Table **/
#main_body form li.matrix{
	width: 97% !important;
}
#main_body .matrix table
{
	margin: 0 0 5px;
	width: 100%;
	border-collapse: collapse;
	text-align: left;
}
#main_body .matrix th
{
	font-size: 95%;
	text-align: center;
	padding: 5px 0px;
	border-bottom: 1px solid #888;
	font-weight: normal;
}
#main_body .matrix td
{
	border-bottom: 1px solid #ccc;
	padding: 6px 8px;
	text-align: center;
}
#main_body .matrix tbody tr:hover td
{
	background-color: #fff7c0;
}

#main_body .matrix td.first_col{
	text-align: left;
	font-weight: 700;
	font-size: 95%;
	color:#444;
}

#main_body .matrix tr.alt{
	background-color: #F5F5F5;
}

#main_body .matrix caption{
	text-align: left;
	font-size: 95%;
    font-weight: 700;
    color:#444;
}



/** Label Alignment **/
#main_body form.left_label li, #main_body form.right_label li
{
	padding-top: 12px;
	width: 76%;
}
.no_guidelines form.left_label li, .no_guidelines form.right_label li
{
	width: 97% !important;
}
#main_body form.left_label label.description,
#main_body form.left_label span.description{
	float: left;
	margin: 0 15px 0 0;
	width: 29%;
}

#main_body form.right_label label.description,
#main_body form.right_label span.description{
	float: left;
	margin: 0 15px 0 0;
	width: 29%;
	text-align: right;
}
.no_guidelines form.left_label label.description,
.no_guidelines form.right_label label.description,
.no_guidelines form.left_label span.description,
.no_guidelines form.right_label span.description{
	width: 30% !important;
}

#main_body form.left_label li div, #main_body form.right_label li div
{
	float: left;
	width: 65%;
}

#main_body ul.password > li > div{
	width: 100%;
}

#main_body form li div span.left{
	width: 48%;
	float: left;
}
#main_body form li div span.right{
	width: 48%;
	float: right;
	margin-right: 3px;
}
#main_body li.address input.large{
	width: 98%;
}
#main_body li.address .right.state_list input.large{
	width: 96%;
}
#main_body li.address select.large{
	width: 101%;
}
#main_body form li.address div span{
	padding-bottom: 8px;
}

#main_body form.left_label .guidelines,#main_body form.right_label .guidelines{
	width:  20%;
}
#main_body form.left_label li div.mf_sig_wrapper, #main_body form.right_label li div.mf_sig_wrapper
{
	float: left;
	width: 309px;
}
#main_body form.left_label li .mf_sigpad_clear, #main_body form.right_label li .mf_sigpad_clear
{
	float: left;
}

/** Embedded Form **/
html.embed{
	background: none repeat scroll 0 0 transparent;
}
.embed #main_body{
	margin: 0px;
}
.embed #top, .embed #bottom, .embed h1{
	display: none;
}

.embed #form_container{
    border: none;
	width: 100%;
	background: none;
	box-shadow: none;
}

.embed #footer{
	text-align: left;
	padding-left: 10px;
	width: 99%;
}

.embed #footer.success{
	text-align: center;
}

.embed form.appnitro
{
	margin:0px 0px 0;
	
}
#form_container
{
	background:#fff;
	border: none;
	border-radius: 10px;
	margin:0 auto;
	text-align:left;
	width:640px;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
}
.embed #form_container{
    border: none;
	width: 100%;
	background: none;
	box-shadow: none;
}
.integrated #form_container{
    border: none;
	width: 99%;
	background: none;
	box-shadow: none;
}
#form_container
{
background-color: #ffffff;
border-width: 0px;
border-style: solid;
border-color: #CCCCCC;
}

@media only screen and (max-width : 480px) {

	#form_container,#footer{
		width: 100% !important;
		padding: 0px !important;
		margin: 0 auto !important;
	}
	#form_container{
		box-shadow: none !important;
		border: none !important;
	}
	#form_container:before,#form_container:after{
		display: none !important;
	}
	form.appnitro,.embed form.appnitro{
		margin: 15px 15px 0 15px;
	}
	.no_guidelines form li,.appnitro li{
		width: 99%;
	}
	/** Name fields **/
	#main_body li.simple_name .simple_name_1{
		width: 100%;
	}
	#main_body li.simple_name .simple_name_2{
		width: 100%;
		margin-right: 0px;
	}
	#main_body li.simple_name .simple_name_1 input.text{
		width: 100%;
	}
	#main_body li.simple_name .simple_name_2 input.text{
		width: 100%;
	}
	
	#main_body li.simple_name_wmiddle input.text{
		width: 100%;
	}
	#main_body li.simple_name_wmiddle .simple_name_wmiddle_3 input.text{
		width: 100%;
	}
	#main_body li.simple_name_wmiddle .simple_name_wmiddle_1,
	#main_body li.simple_name_wmiddle .simple_name_wmiddle_2{
		width: 25%;
	}
	#main_body li.simple_name_wmiddle .simple_name_wmiddle_3{
		width: 47%;
		margin-right: 0px;
	}

	#main_body li.fullname .fullname_2 input.text{
		width: 91%;
	}
	#main_body li.fullname .fullname_3 input.text{
		width: 93%;
	}
	#main_body li.fullname .fullname_1 input.text,
	#main_body li.fullname .fullname_4 input.text{
		width: 77%;
	}
	#main_body li.fullname .fullname_1{
		width: 12%;
	}
	#main_body li.fullname .fullname_2{
		width: 30%;
	}
	#main_body li.fullname .fullname_3{
		width: 42%;
	}
	#main_body li.fullname .fullname_4{
		width: 12%;
		margin-right: 0px;
	}

	#main_body li.fullname_wmiddle input.text{
		width: 90%;
	}
	#main_body li.fullname_wmiddle .namewm_ext input.text{
		width: 79%;
	}
	#main_body li.fullname_wmiddle .namewm_last input.text{
		width: 92%;
	}
	#main_body li.fullname_wmiddle .namewm_ext{
		width: 9%;
	}
	#main_body li.fullname_wmiddle .namewm_first{
		width: 25%;
	}
	#main_body li.fullname_wmiddle .namewm_middle{
		width: 25%;
	}
	#main_body li.fullname_wmiddle .namewm_last{
		width: 26%;
	}
	#main_body select.select{
		height: 36px;
	}

	/** Time field **/
	#main_body li.time_field input.text{
		width: 35px;
	}

	/** Address field **/
	#main_body li.address input.large{
		width: 98%;
	}
	#main_body form li div span.state_list{
		height: 46px;
	}
	#main_body li.address select.select{
		width: 105%;
	}

	/** Signature Field **/
	#main_body form li div.mf_sig_wrapper{
		-webkit-transform: scaleX(0.9);
    	-moz-transform: scaleX(0.9);
    	transform: scaleX(0.9);
    	margin-left: -16px;
	}
	.mf_sigpad_clear{
		margin-left: 250px;
	}
	.mf_sigpad_view{
		-webkit-transform: scale(0.65,0.65);
    	-moz-transform: scale(0.65,0.65);
    	transform: scale(0.65,0.65);
    	margin-left: -55px;
    	margin-top: -20px;
	}

	/** Date Field **/
	#main_body li.date_field .date_mm input.text,
	#main_body li.date_field .date_dd input.text,
	#main_body li.europe_date_field .date_mm input.text,
	#main_body li.europe_date_field .date_dd input.text{
		width: 35px;
	}
	#main_body li.date_field .date_yyyy input.text,
	#main_body li.europe_date_field .date_yyyy input.text{
		width: 70px;
	}
	#main_body li img.datepicker{
		-webkit-transform: scale(1.5,1.5);
    	-moz-transform: scale(1.5,1.5);
    	transform: scale(1.5,1.5);
    	margin-left: 5px;
    	margin-top: 5px;
	}
	#main_body form li.date_field label{
		margin-left: 10px;
	}

	/** Phone Field **/
	#main_body li.phone input.text{width: 100%}
	#main_body li.phone .phone_3 input.text{
		width: 100%;
	}
	#main_body li.phone .phone_1,
	#main_body li.phone .phone_2{
		width: 100%;
	}
	#main_body li.phone .phone_3{
		width: 100%;
	}
	#main_body form li.phone label{
		margin-left: 10px;
	}

	/** Payment Page **/
	#main_body form li.payment_summary_list{
		width: 60%;
		margin-right: 8px;
	}
	#main_body form li.credit_card div span#li_cc_span_4{
		margin-right: 3px;
	}
	#cc_expiry_month{
		width: 38%;
	}
	#cc_expiry_year{
		width: 22%;
	}
	#stripe-card-element {
		width: 98%;
	}
	/** File Upload **/
	.uploadifive-queue-item{
		width: 95%;
	} 
	/** reCAPTCHA **/
	#rc-imageselect, .g-recaptcha {
	   transform:scale(0.77);
	  -webkit-transform:scale(0.77);
	   transform-origin:0 0;
	  -webkit-transform-origin:0 0;
	}
	/** Media Video **/
	#main_body form li div.media_video_container,
	#main_body form li div.media_video_container.small,
	#main_body form li div.media_video_container.medium,
	#main_body form li div.media_video_container.large{
		width: 99%;
	}

}

#main_body form li:not(.media_video) div .iti__dial-code,
#main_body form li:not(.media_video) div .iti__country-name {
    display: inline-block;
    float: none;
    margin: 0;
    padding: 0;
    width: auto;
}