body {
	background: #ffffff;
	margin: 0 auto 20px;
	font: 14px/21px 'Open Sans',arial,sans-serif;
	line-height: 1.5em;
	color: #333333;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	display: block;
	min-height: 100%;
	height: auto !important;
	height: 100%;
}
#wrapper {
	width: 960px;
	text-align: left;
	position: relative;
	margin: 0 auto 30px auto !important;
}
#header {
	text-align: left;
	position: relative;
	padding: 25px 0 5px 0;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	border-bottom: 1px solid #E8E8E8;
	line-height: 1.2em;
}
#logo-image {
	float: left;
	margin-right: 20px;
	margin-left: 10px;
}
.orgname { font-family:Verdana, Arial, Helvetica, sans-serif; font-size: 24px; color: #fff; line-height: 24px; margin: 0 0 14px 0; }
.tagline { font-size: 13px; color: #999999; padding-top: 10px; margin-left: 10px; }
.headerAddress { font-size: 13px; color: #999999; padding-top: 0; margin-left: 10px; margin-top: 0; }
#content {
	margin: 0 auto;
	text-align: left;
	width: 96%;
	padding: 2%;
}
h1 { font-size: 22px; margin: 0 0 1em 0; }
h2 { font-size: 20px; margin: 0 0 1em 0; }
h3 { font-size: 18px; margin: 0 0 1em 0; }
h4 { font-size: 16px; margin: 0 0 1em 0; }
h5 { font-size: 14px; margin: 0 0 1em 0; }

p#copyright {
	font-size: 15px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.1);
	text-align: center;
	line-height: 1;
}

#footer { background-color: #fff; border-top: 1px solid #eee; margin-top: 25px; color: #55555; padding: 20px 0; text-align: center; }
#footer p#copyright .credits { font-style: italic; font-size: 12px; }

#important-dates { clear: both; border: 1px solid #ebc674; text-align: left; background: #ffebc0; margin-bottom: 1.6em; color: #704c00; }
#important-dates { width: 100%; }
#important-dates th { width: 110px; vertical-align: top; }
#important-dates th, #important-dates td { padding: 7px 10px; }
#important-dates td { padding-right: 60px; }

#frm_index {
	margin: 25px 310px 0;
	position: relative;
}

#regCatSelect { width: 850px; border-spacing: 0; border-collapse: collapse; }
#regCatSelect th, #regCatSelect td { border: 1px solid black; padding: 6px 4px; }
#regCatSelect #headerRow { background-color: #2E353B; color: #fff; vertical-align: bottom; }
#regCatSelect .regCategory { width: 200px; }
#regCatSelect .pricing { width: 325px; }
#regCatSelect .mbrCategory { width: 250px; }
#regCatSelect .mbrDesc { width: 500px; }
#regCatSelect .mbrPricing { width: 100px; text-align: right; }

#tblSessions, #tblWorkshops {
	border: collapse;
}
#tblSessions td, #tblWorkshops td, #tblSessions th, #tblWorkshops th {
	border-bottom: 1px solid #EBC674;
	border: collapse;
}
.radio_wrapper { width: 25px; display: inline-block; float: left; }
.desc_wrapper { display: inline-block; width: auto; float: left; }
.reqfield {
	font-weight: bold;
	color: red;
}

#errormsg p, .error { background: none; color: #f00 !important; text-indent: 0; padding: 1px; }

.ccerror { color: #f00 !important; font-weight: bold; }
.td_currency {
	text-align: right;
}

#main table#badgeReview {
	background-color: #FBF9D9;
}
#main table#badgeReview td {
	font-size: 30px !important;
		font-weight: bold;
		line-height: 30px;
		text-align: center;
	padding: 20px 0;
}

form#billing_details_frm, form#payment_method_update_frm { width: auto; }

form#billing_details_frm fieldset { border: none; border-top: none; margin-bottom: 1.5em; }
form#billing_details_frm label { width: 225px; }
form#billing_details_frm label.error { margin-left: 185px; width: 340px; }
form#billing_details_frm .different_billing_info { width: 40px; }

table#mainbody {
	width: 959px;
}
td p {
		margin-bottom: 10px;
}
.thedesc {
	margin-bottom: 10px;
}
#int_cancellation_policy, #int_billing_send_copy {
	width: 40px;
}
.boldred {
	font-weight: bold;
	color: #f00;
}
.textright {
	text-align: right;
}
.narrowcol {
	width: 20%;
}
.widecol {
	width: 80%;
}
.narrowcol2 {
	width: 17%;
	text-align: right;
}
.widecol2 {
	width: 83%;
}

#discount_code {
	width: 150px;
}

#frm_select_sessions h2 { padding-top: 0; }
#frm_select_sessions h3 { clear: left; }
#accordion  {
	margin-bottom: 15px;
}
#accordion h3 {
	background-color: #2E353B;
	color: #EFB248;
	line-height: 20px;
	font-size: 18px;
	padding: 12px 10px 12px 40px;
}
#accordion h3 a {
	letter-spacing: 1px;
	color: #efb248;
	line-height: 16px;
	font-weight: bold;
}
.clickhere { font-size: 14px; font-weight: normal; margin-left: 25px; }
.acccontainer { width: 100%; }
#main .ui-accordion .ui-accordion-content { padding: 0; overflow-y: hidden; }
.session_wrapper { padding: 10px 8px 0 8px; width: 98%; border-bottom: 1px solid #ccc; display: inline-block; clear: left;	}
#sessionheader { width: 100%; }
.section_description { width: 730px; float: left; padding: 0; }
.session_selection { width: 30px; float: left; }
.session_description { width: 710px; float: left; }
.session_description p { margin: 0 0 15px 0; }
.session_price { width: 75px; float: right; text-align: right; }
.ticket_entry { margin-bottom: 10px; }
#main .ui-corner-all, #main .ui-corner-bottom, #main .ui-corner-right, #main .ui-corner-br {
	moz-border-radius-bottomright: 0;
	-webkit-border-bottom-right-radius: 0;
	-khtml-border-bottom-right-radius: 0;
	border-bottom-right-radius: 0;
}
#main .ui-widget-content {
	border: none;
	background-color: white;
	background-image: none;
	color: #222;
}
#yourselections {
	display: none;
	margin: 25px 0 15px 0;
	border-top: 1px solid #ccc;
	padding-top: 10px;
}
#yourselections #Selected_Sessions {
	line-height: 19px;
	margin-top: 6px;
}
h4.instructions {
	margin: 6px 0;
	color: black;
	line-height: 18px;
	display: block;
	background-color: #623F5F;
	color: #EFB248;
	padding: 10px 0;
	text-align: center;
	text-decoration: blink;
}

.bem {
	font-weight: bold;
	font-style: italic;
}
.input_wrapper {
	width: 450px;
	display: inline-block;
}
.review_section {
	border: 1px solid black;
	width: 100%;
	margin: 0 0 15px 0;
	z-index: 1000;
}

.reviewtbl { border: 1px solid black; width: 100%; margin: 0 0 15px 0; z-index: 1000; padding: 10px 5px; }
.reviewtbl td, .reviewtbl th { padding: 2px 8px; vertical-align: top; }
.reviewtbl ul.regcat { list-style-type: none; }
.reviewtbl ul li { margin-left: -30px; }
.reviewtbl ul.regcat { margin-left: -10px; }

.centered { text-align: center; }
#topsection { margin-bottom: 15px; }

#contact_details_frm { width: 800px; }
#contact_details_frm label { width: 245px; }
#cancellation_policy { width: 30px; }

.cleanul { list-style: none; margin: 0 0 10px -16px; }
.cleanul li { margin-left: -30px; }
.pricelabel { margin-bottom: 2px; font-weight: bold; text-align: left;}

.session_selection input[type=checkbox] {width:20px; height:20px;}
li address, li .phone { margin-left: 25px; display: inline-block; }

.flex-outer, .flex-inner { list-style-type: none; padding: 0; }
.flex-outer { max-width: 800px; margin: 0; }
.flex-outer > li, .flex-inner { display: flex; flex-wrap: wrap; align-items: center; }
.flex-outer .sectionNotes { display: block; flex-wrap: nowrap; align-items: normal; }

.flex-inner { padding: 0 8px; justify-content: space-between; }
.flex-outer > li:not(:last-child) { margin-bottom: 6px; }
.flex-outer li label { padding: 8px 8px 8px 0; }
.flex-outer li p { padding: 8px; }
.flex-outer > li > label, .flex-outer li p { flex: 1 0 120px; max-width: 225px; }
.flex-outer > li > label, .flex-inner { flex: 1 0 220px; }
.flex-outer > li > input[type="checkbox"] { flex: 0 0 0; }
.flex-outer li p { margin: 0; }
.flex-outer li input:not([type='checkbox']) { padding: 4px; flex: 1 0 150px; max-width: 250px; }
.flex-outer > li > input[type="radio"] { flex: 0 0 0; }
.flex-outer li textarea { padding: 4px; flex: 1 0 250px; max-width: 250px; height: 80px; }
.flex-outer li input[type='submit'], .flex-outer li input[type='button'], .flex-outer li input[type='reset'] {
	flex: 0 0 auto;
	margin: 5px 0 0 20px;
}
.flex-outer li div { flex: 1 0 260px; max-width: 260px; }

.flex-outer li button { margin-left: auto; }
.flex-inner li { width: 100px; }
.flex-outer .req { font-size: 1.2em; color: red; font-weight: bold; }
.flex-outer >li > .error { flex: 1 0 120px; max-width: 400px; margin-left: 20px; }
.atop { top: -12px; position: relative; }
.selectBox { padding: 4px; flex: 1 0 250px; max-width: 250px; }

.button {
	border: 1px solid #000000;
	background: #1c3f95;
	background: -webkit-gradient(linear, left top, left bottom, from(#1c3f95), to(#0f2c73));
	background: -webkit-linear-gradient(top, #1c3f95, #0f2c73);
	background: -moz-linear-gradient(top, #1c3f95, #0f2c73);
	background: -ms-linear-gradient(top, #1c3f95, #0f2c73);
	background: -o-linear-gradient(top, #1c3f95, #0f2c73);
	padding: 4px 12px !important;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	color: white;
	font-size: 14px;
	font-family: 'Open Sans',arial,sans-serif;
	font-weight: bold;
	text-decoration: none;
	vertical-align: middle;
	letter-spacing: 1px;
	width: auto;
}
.button:hover { cursor: pointer; }

#contactLanguage { padding: 4px; flex: 1 0 262px; max-width: 262px; }
.callout { font-weight: bold; text-decoration: underline; }
.flex-outer li .differentBillingInfo { margin-left: 20px; width: 40px !important; flex: 0 0 0; }

.clearfix:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.clearfix { display: inline-block; }
html[xmlns] .clearfix { display:block; }
* html .clearfix { height:1%; }