/* common.css */
/* vim: set ft=css : */

/* fonts */

/* a fallback for missing Arial Black, eg ios */
@import url('https://fonts.googleapis.com/css?family=Archivo+Black');
/* @import url('https://fonts.googleapis.com/css?family=Muli:400,900'); */
@import url('https://fonts.googleapis.com/css?family=Kaushan+Script&display=swap');
@import url('https://fonts.googleapis.com/css?family=Yellowtail&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

@font-face {
	font-family: 'Broadway';
	src: url('/css/BROADW.eot');
	src: url('/css/EBROADW.eot?#iefix') format('embedded-opentype'), /* IE6-8 */
		url('/css/BROADW.woff') format('woff'), /* modern browsers */
		url('/css/BROADW.ttf') format('truetype'); /* safari/android/ios */
}
@font-face {
	font-family: 'Ananda';
	src: url('/css/Ananda.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

/*
@font-face {
	font-family: 'Ananda-Black';
	src: url('/css/Ananda-Black.eot');
	src: url('/css/Ananda-Black.eot?#iefix') format('embedded-opentype'), /* IE6-8 * /
		url('/css/Ananda-Black.woff') format('woff'), /* modern browsers * /
		url('/css/Ananda-Black.svg#Ananda-Black') format('svg'); /* Legacy iOS * /
	font-weight: normal;
	font-style: normal;
}
*/

/*============================================================
 GENERAL/BASELINE ELEMENTS ===================================
============================================================*/

html {
	padding: 0px;
	margin: 0px;
}
body {
	margin: 0px;
	padding: 0px;
	/* background-color: #000000; */
	/* background-image: url(/images/page_bg.png); */
	/* background-repeat: repeat-x; */
	background-color: #083150; /* bottom color of footer gradient */
	font-family: Trebuchet MS, Arial, Helvetica, sans-serif;
	font-size: 12px;
}
div {
	margin: 0px;
	padding: 0px;
}
p {
	font-size: 1.0em;
	line-height: 1.3em;
	margin: 0px 0px 0.7em;
}
h1 {
	/* color: #672A72; */
	margin: 0em 0em 0.2em;
	font: italic bold 1.8em Trebuchet MS, "Times New Roman", Times, serif;
	/* color: #4f4f4f; */ /* charcoal grey */
}
h2 {
	font-size: 1.4em;
	font-weight: bold;
	color: #7F081C; /*old #BD3131;*/
	margin: 0.6em 0em 0em;
}
h3 {
	font-size: 1.2em;
	font-weight: bold;
	/* color: #672A72; */
	color: black;
	/* margin: 1em 0em 0.1em; */
	margin: 1em 0em 0.35em;
}
h4 {
	font-size: 1.0em;
	font-weight: bold;
	color: #7F081C; /*old #BD3131;*/
	margin: 1em 0em 0em;
}
h5 {
	font-size: 0.9em;
	font-weight: bold;
	margin: 1em 0em 0em;
}
h6 {
	font-size: 0.9em;
	font-weight: bold;
	margin: 0em;
}
img {
	margin: 0px;
	padding: 0px;
	border: 0;
}

#page {
	/* use full width; no longer have purple sides */
	/* width: 1045px; */
	/* background-color: #f8f5e6; */
	/* background-color: #f7f7f7; */
	/* background-color: white; */
	background-color: #fafafa;
	margin: 0px auto;
}

.g_float_left {
	float: left;
}
.g_float_right {
	float: right;
}
.g_hidden {
	display: none;
}
.g_block {
	display: block;
}

input[type="checkbox"] {
	/* override reset.css */
	vertical-align: middle;
}


/* ul/ol/hr styles */

ol, ul, li {
	font-size: 1.0em;
	line-height: 1.3em;
	margin-top: 0.2em;
	margin-bottom: 0.1em;
	margin-left: 0px;
}
ol {
	/* margin-bottom: 1.2em; */
	margin-left: 5px;
	padding-left: 25px;
}
* html ol {
	margin-left: 0px;
	padding-left: 40px;
}
ul {
	margin-bottom: 1.2em;
	margin-left: 5px;
	padding-left: 10px;
}
* html ul {
	padding-left: 15px;
}
ul ul {
	margin-bottom: 0.5em;
	margin-left: 5px;
	padding-left: 10px;
}
* html ul ul {
	padding-left: 15px;
}
li {
	/*padding-right: 30px; PROBLEMATIC!*/
	margin-bottom: 0.5em;
}
ul ul li {
	/*padding-right: 30px; PROBLEMATIC!*/
	margin-bottom: 0em;
}

hr {
	margin: 10px 30px 10px 0px;
	padding: 0px;
}
* html hr {
	margin: 0px 30px 5px 0px;
}

/* ============================================================
 * General utility styles
 * ============================================================
 */

.red {
	color: #92002A !important;
}
.purple {
	color: #532f67 !important;
}
.green {
	color: #40542a !important;
}
.black {
	color: #000 !important;
}
.white {
	color: #FFF !important;
}
.gold {
	/* color: #dca92c !important; */
	color: #cc9e2e !important; /* darker yellow-gold */
}

/*============================================================
 TOP OF PAGE =================================================
============================================================*/

#masthead {
	height: 97px;
	position: relative;
	background-color: #07656b; /* teal */
	/* background-image: url(/images/masthead_bg_teal.png); */
	/* background-repeat: repeat-x; */
	background-image: linear-gradient(#014C52, #046971); /* teal */
	border-bottom: 1px solid #c8a46d; /* gold */
}
#masthead #logo img {
	display: block;
	height: 60px;
	margin: 20px auto;
}
@media only screen and (max-width: 850px) {
	#masthead {
		height: 150px;
	}
	#masthead #logo img {
		margin: 20px;
	}
}
@media only screen and (max-width: 630px) {
	#masthead {
		height: 140px;
	}
	#masthead #logo img {
		height: 45px;
		/* margin: 28px 20px; */
		margin: 20px 20px;
	}
}
@media only screen and (max-width: 530px) {
	#masthead {
		height: 125px;
	}
	#masthead #logo img {
		height: 32px;
		/* margin: 32px 10px; */
		margin: 20px 15px;
	}
}
@media only screen and (max-width: 415px) {
	#masthead #logo img {
		height: 30px;
		margin: 7px;
	}
}

#utility_nav {
	position: absolute;
	/* right: 20px; */
	right: 15px;
	top: 5px;
	color: #ffffff;
	text-align: right;
	line-height: 20px;
	font-size: 12px;
}
#utility_nav a {
	text-decoration: none;
	color: #ffffff;
}
#utility_nav a.underline {
	text-decoration: underline;
}
#utility_nav a.active {
	color: #c8a46d;
}
#utility_nav a:hover {
	color: #c8a46d;
	text-decoration: none;
}
#utility_nav div.banner-log-in {
	display: inline-block;
	font-size: 1.3em;
	font-weight: bold;
}
#utility_nav a.log-in {
	text-decoration: underline;
	color: #f9c372;
}
#utility_nav a.log-in:hover {
	color: #dc8b0e;
}
#utility_nav div.banner-cart {
	display: inline-block;
	/* text-align: center; */
}
#utility_nav div.call_to_register {
	font-weight: bold;
	font-size: 15px;
	text-align: right;
}
#utility_nav div.nav_consultation {
	font-size: 14px;
	text-align: right;
	margin-top: -1px;
}
#utility_nav div.nav_consultation a {
	text-decoration: underline;
	display: inline-block; /* allows for setting line-height */
}
#utility_nav div.nav_consultation a:hover {
	border-bottom: 1px solid #c8a46d;
	text-decoration: none;
	line-height: 0.8em;
}
#utility_nav div.more-desktop {
	font-size: 1.3em;
	margin-right: -5px;
}
#utility_nav div.more-mobile {
	vertical-align: top;
	margin-top: 4px;
	font-size: 1.2em;
	margin-right: -8px;
	display: none;
}

div#banner_social_icons {
	margin-top: 8px;
	display: inline-block;
	/* vertical-align: top; */
	vertical-align: baseline;
	margin: 20px 8px;
}
div#banner_social_icons img {
	/* margin-left: 8px; */
	margin: 0 4px;
	width: 28px;
}

#utilityLeft, #utilityRight {
	display: inline-block;
}
#utilityLeft {
	/* margin-top: 8px; */
	/* margin-top: 0px; */
	margin-top: 4px;
}
#utilityRight {
	vertical-align: top;
	float: right;
}
#mobileNav {
	/* display: none; */
	display: block;
	/* margin-left: 10px; */
	margin-left: 15px;
}
div#mobileNav a, div#mobileNav p {
	font-size: 18px;
	line-height: 1.6em;
	display: none;
	text-decoration: none;
}
div#mobileNav a.item.icon {
	margin-top: 5px;
	margin-bottom: 5px;
	/* color: #c5a5d8; */
	font-size: 24px;
	line-height: unset;
	-webkit-text-stroke: 1px black;
}

div#mobileNav.shown {
	width: 300px;
	z-index: 2;
	position: fixed;
	right: 0;
	background: #132E4B; /* dark blue */
	background-image: linear-gradient(#1d4875, #132E4B); /* dark blue */
	padding-bottom: 15px;
	text-align: center;
	/* transition: all 0.5s ease-in; */
}

@media only screen and (max-width: 780px) {
	div#mobileNav {
		display: block;
	}
	div#mobileNav.shown {
		/* width: 100%; */
		/* width: 55%; */
		/* width: 50%; */
		width: 215px;
	}
	div#mobileNav a, div#mobileNav p {
		font-size: 20px;
		line-height: 1.7em;
	}
	div#mobileNav a.item.icon {
		/* margin-bottom: 10px; */
		font-size: 32px;
	}
}

div#mobileNav .item {
	display: none;
	/* margin-bottom: 10px; */
	/* margin-right: 15px; */
}
div#mobileNav.shown .item {
	display: block;
	/* transition: all 0.5s ease-in; */
}
div#mobileNav a.item.icon {
	/* float: right; */
	display: block;
	text-align: right;
	margin-right: 0;
}
div#mobileNav.shown a.item.icon {
	margin-right: 15px;
	margin-bottom: 0;
}
div#mobileNav a.item.icon i.closed {
	display: block;
	margin-right: 0;
}
div#mobileNav.shown a.item.icon i.closed {
	display: none;
}
div#mobileNav a.item.icon i.open {
	display: none;
}
div#mobileNav.shown a.item.icon i.open {
	display: block;
}
div#mobileNav hr.item {
	/* margin: 10px 40px 10px 25px; */
	/* margin: 10px 65px 10px 50px; */
	margin: 10px 45px 10px 45px;
}

#top_nav {
	/* width: 1010px; */
	/* padding: 5px 0px 5px 35px; */
	padding: 10px 0 6px;
	background-color: #132E4B; /* dark blue */
	font-weight: bold;
}
#top_nav ul {
	/* line-height: 1em; */
	list-style-type: none;
	/* margin: 0px; */
	/* padding: 0px; */
	display: flex;
	justify-content: center;
	margin: auto;
	width: 750px;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 9px;
	padding: 4px 0;
}
#top_nav li {
	/* line-height: 1em; */
	display:inline;
	/* padding: 0px 18px; */
	border-right: 1px solid white;
	/* padding: 0 15px; */
	padding: 0 7px;
}
#top_nav li:last-child {
	border-right: none;
}
#top_nav li a {
	text-decoration: none;
	color: #ffffff;
	/* font-size: 1.2em; */
	font-size: 1.5em;
	margin: 0px 23px;
}
#top_nav li a.active {
	color: #c8a46d;
}
#top_nav li a:hover {
	color: #c8a46d;
}
#top_nav li a.g_hover {
	color: #c8a46d;
}
#top_nav #gImgMainMenuBegin {
	color: gold;
}
#top_nav #gImgMainMenuBegin:hover {
	color: #c8a46d;
}

#subnav {
	padding: 5px 0px 0px 20px;
	background-color: #654876;
	font-size: 11px;
	font-weight: bold;
}
#subnav ul {
	line-height: 1.0em;
	list-style-type:none;
	margin: 0;
	padding: 0;
}
#subnav li {
	line-height: 1.0em;
	display:inline-block;
	padding: 0px 16px;
	text-align: center;
	vertical-align: middle;
}
#subnav li a {
	text-decoration: none;
	color: #ffffff;
}
#subnav li a.active {
	color: #c8a46d;
}
#subnav li a:hover {
	color: #c8a46d;
}


/*
	Main Nav Sub-Menus
*/
#gMainNavSubMenus {
	position: relative;
	z-index: 10;
}
#gMainNavSubMenus .g_drop_menu {
	position: absolute;
	background-color: #132E4B; /* dark blue */
	/*background: #299cc1 url(images/topnav_rollover_bg.png) repeat;	bg image addresses problem of color diff between nav highlight images and html bg of drop-downs (despite having same hex values) */
	color: #ffffff;
	z-index: 10;
	padding: 10px 0px;
	/* font-family: Trebuchet MS, Arial, Helvetica, sans-serif; */
	font-family: Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 25px;
	letter-spacing: 1px;
}
#gMainNavSubMenus .g_drop_menu a {
	color: #ffffff;
	text-decoration: none;
	display: block;
}
#gMainNavSubMenus .g_drop_menu a:active {
	color: #c8a46d;
}
#gMainNavSubMenus .g_drop_menu a:hover {
	color: #c8a46d;
}
#gMainNavSubMenus .g_drop_menu p {
	margin: 0;
	line-height: inherit;
}
#gMainNavSubMenus .g_column {
	float: left;
	white-space: nowrap;
	padding: 0px 20px;	/*put left/right padding on columns instead of each menu, b/c first-child issues with IE7 cause wide left margin to appear on first column even though we were supposedly over-riding it on first column*/
	min-width: 50px;
}
#gMainNavSubMenus .g_drop_menu#gDropMenuFree .g_column {
	/* long titles, have to wrap and indent lines */
	white-space: normal;
	padding-left: 35px;
	text-indent: -15px;
}
#gMainNavSubMenus .g_indent {
	padding-left: 12px;
}
#gMainNavSubMenus .g_heading {
	color: #52cbd0; /* light teal */
}

#page_title.with_product_icon {
}
#page_title.with_program_icon {

}
.page_subtitle {
	font-size: 0.6em;
}
#product_icon_large {
	float: left;
	padding-right: 5px;
	padding-bottom: 10px;
}
#program_icon_large {
	float: left;
	padding-right: 5px;
}
ul.program_title_extra {
	margin-left: 10px;
}


/*============================================================
 BOTTOM OF PAGE ==============================================
============================================================*/

#footer {
	clear:both;
	/* height: 230px; */
	/* height: 200px; */
	position: relative; /* for eg nav_column1 absolute positioning */
	background-color: #0e4b6f; /* blue */
	/* background-image: url(/images/footer_bg_blue.png); */
	/* background-repeat: repeat-x; */
	background-image: linear-gradient(#105C84, #083150); /* dark blue */
	/* border-top: 4px solid #c8a46d; */ /* gold */
}

#footer_nav {
	padding: 15px 0px 5px 35px;
	font-weight: bold;
}
#footer_nav ul {
	line-height: 1.0em;
	list-style-type:none;
	margin: 0;
	padding: 0;
}
#footer_nav li {
	line-height: 1.0em;
	display:inline;
	padding: 0px 18px;
}
#footer_nav li a {
	text-decoration: none;
	color: #ffffff;
	font-size: 1.2em;
	margin: 0px 23px;
}
#footer_nav li a.active {
	color: #c8a46d;
}
#footer_nav li a:hover {
	color: #c8a46d;
}

div#footer_social_icons {
	margin-top: 15px;
	margin-bottom: 5px;
	/* because the alison-armstrong crown has unnoticed width on rightside */
	margin-right: 15px;
	text-align: center;
}
div#footer_social_icons img {
	margin-left: 8px;
	width: 30px;
}

div#footer_contact {
	text-align: center;
	font-size: 1.2em;
}
div#footer_contact a {
	color: white;
}

#pax_logo {
	text-align: center;
	padding-top: 20px;
}

#qc_promo {
	position: absolute;
	right: 38px;
	bottom: 20px;
}

#copyright {
	/* position: absolute; */
	/* bottom: 0px; */
	/* width: 1025px; */
	text-align: center;
	color: #ffffff;
	font-size: 10px;
	padding: 10px;
}
#copyright a {
	color: #ffffff;
}
#copyright a:hover {
	color: #c8a46d;
	text-decoration: none;
}
#mailing-address {
	text-align: center;
	color: #ffffff;
	font-size: 10px;
	margin-top: 13px;
}

.footer_nav_column li a:hover {
	color: #c8a46d;
}
.footer_nav_column li a {
	font-weight: bold;
	font-size: 1.0em;
	text-decoration: none;
	color: #ffffff;
}
.footer_nav_column li {
	list-style-type: none;
}
#footer_nav_column1 {
	position: absolute;
	left: 90px;
	bottom: 20px;
	/* bottom: 50px; */
}
/*
#footer_nav_column2 {
	position: absolute;
	left: 240px;
	bottom: 20px;
}
*/
#qc_promo {
	bottom: 60px;
	right: 40px;
	text-align: center;
}
#qc_promo a {
	text-decoration: none;
	color: #ffffff;
	letter-spacing: 1px;
}
#qc_promo a:hover {
	color: #c8a46d;
}

/*============================================================
 GLOBAL PAGE ELEMENTS ========================================
============================================================*/

/* container for the pair of green_gold_box_outer */
/* width/margin instead of hard-coded margins in site_template Public bottom,
 * to be more responsive */
.green_bar_boxes {
	width: 83%;
	margin: auto;
}
/* floats moved from site_template Public bottom */
.green_bar_left {
	float: left;
}
.green_bar_right {
	float: right;
}
.green_gold_box_outer {
	box-shadow: 2px 2px 10px #333333;
	border: 8px solid #383a3c;
	background-color: #b5b5b5;
	/* width/margin moved from site_template Public bottom */
	width: 375px;
	margin: 20px 0;
}
.green_bar_center {
	margin-left: auto;
	margin-right: auto;
}
.green_gold_box_inner {
	margin: 2px;
	padding: 20px;
	overflow: auto;

	/* fallback */
	background-color: #949494;
	/* background-image: url(/images/box_bg.png); */
	/* background-repeat: repeat-x; */

	/* Safari 4-5, Chrome 1-9 */
	background: -webkit-gradient(linear, right top, right bottom, from(#6b6b6b), to(#9c9c9c));

	/* Safari 5.1, Chrome 10+ */
	background: -webkit-linear-gradient(top, #6b6b6b, #9c9c9c);

	/* Firefox 3.6+ */
	background: -moz-linear-gradient(top, #6b6b6b, #9c9c9c);

	/* IE 10 */
	background: -ms-linear-gradient(top, #6b6b6b, #9c9c9c);

	/* Opera 11.10+ */
	background: -o-linear-gradient(top, #6b6b6b, #9c9c9c);
}
.green_gold_box_inner .formlabel {
	width: 100px;
}
/* move from index.html */
.green_gold_box_inner table {
	/* width: 330px; */
	/* not pre-set width, for better responsiveness */
	width: unset;
}

.video_iframe {
	display: block;
	margin: auto;
}

#signup_header {
	box-shadow: 2px 2px 10px #333333;
	margin-bottom: 14px;
	margin-top: 5px;
}
.green_gold_box_inner .signupform {
	padding-left: 10px;
}
.signup_form_label {
	clear: both;
	float: left;
	color: #ffffff;
	padding-bottom: 5px;
}
.signup_form_field {
	float: right;
	margin-right: 15px;
	padding-bottom: 5px;
}
.signup_form_field input[type=text] {
	width: 200px;
}
.signup_form_field input[type=submit] {
	float: right;
}
.signup_form_field select[name=frm_gender] {
	/* margin-right: 80px; */
	float: left;
}
/* move from index.html */
.green_gold_box_inner .formfield input[type=text] {
	width: 210px;
}
/* move from index.html */
.green_gold_box_inner .formfield input[type="submit"] {
	float: right;
	margin-right: 5px;
}
/* move from index.html */
.green_gold_box_inner .signup_gender_submit_row {
	width: 208px;
}
#sign_up_follow_us {
	clear: both;
	padding-top: 12px;
}
#sign_up_follow_us ul {
	list-style-type:none;
	margin: 0;
	padding: 0;
}
#sign_up_follow_us li {
	display: table-cell;
	padding: 0px 2px 0px 0px;
	margin: 0px;
	vertical-align: top;
}
#sign_up_follow_us li.label {
	padding-right: 20px;
	font-size: 18px;
	font-family: trebuchet ms, arial, helvetica;
	color: #ffffff;
	font-weight: bold;
	font-style: italic;
}

/*** newer greenbox signup form **/

#green_bar .signup-heading {
	filter: drop-shadow(5px 5px 5px black);
	background-color: #086768; /* teal */
	color: white !important;
	margin-bottom: 2.5em;
	padding: .4em;
}
#green_bar .signup-title {
	font-size: 18pt;
	text-align: center;
	text-shadow: 2px 2px 0 black;
}
#green_bar .signup-subtitle {
	font-size: 12pt;
	/* font-weight: bold; */
	font-style: italic;
	text-align: center;
}
#green_bar .signup-subtitle-tealback--not {
	padding: 2px 10px;
	color: white !important;
	background-color: #086768; /* teal */
	margin: auto;
	width: fit-content;
	width: -moz-fit-content; /* firefox etc */
	width: -webkit-fit-content; /* safari/ios etc */
}
#green_bar .signup-form {
	width: 280px;
	margin: 7px auto 10px;
	max-width: 100%;
}
#green_bar .signup-form input:not([type="submit"]), .signup-form select {
	display: block;
	margin: 0 auto 3px;
	border-radius: 7px;
	font-size: 14px;
}
#green_bar .signup-form input:not([type="submit"]) {
	padding: 3px 10px 3px;
	/* width: 200px; */
	width: 100%;
	box-sizing: border-box;
}
#green_bar .signup-form select {
	padding: 1px 5px;
	border: 2px solid black;
}
#green_bar .signup-form select[name=frm_gender] {
	display: inline-block;
	width: 95px;
	margin: 0;
}
#green_bar .signup-form input[type=submit] {
	font-family: arial, sans-serif;
	font-size: 15px;
	/* display: block; */
	display: inline-block;
	/* margin: 8px auto 0; */
	/* margin: 0; */
	margin: 5px auto;
	/* width: 200px; */
	border-radius: 5px;
	border: 2px solid green;
	/* float: right; */
	max-width: 100%;
	white-space: normal;
}
#green_bar .signup-form ::-webkit-input-placeholder {
	color: grey;
	font-style: italic;
}
#green_bar .signup-form input:not([type="submit"]):not(:placeholder-shown):valid {
	border: 1px solid green;
}
#green_bar .signup-form select:valid {
	border: 1px solid green;
}
#green_bar .signup-form input:not([type="submit"]):not(:placeholder-shown):invalid {
	border: 2px solid red;
}
#green_bar .signup-form input:not([type="submit"]):invalid {
	/* border: 2px solid #880000; */
}
#green_bar .signup-form select:invalid {
	color: grey;
	font-style: italic;
	/* border: 2px solid #880000; */
}
#green_bar .signup-form :invalid ~ input[type=submit] {
	opacity: 0.5;
	background-color: #9e8989;
	border: 1px solid black;
}
#green_bar input#primaryemailaddress {
	display: none;
}

.men_women_box_column {
	float: left;
	/* width: 120px; */
	width: 315px;
	margin-left: 10px;
}
.men_women_box_column .title {
	color: #ffffff;
	font-size: 16px;
	font-weight: bold;
	font-style: italic;
	font-family: trebuchet ms, arial, helvetica;
	padding-top: 5px;
	padding-bottom: 10px;
}
.men_women_box_column .text {
	color: #ffffff;
	font-size: 11px;
	padding-bottom: 10px;
}
.men_women_box_column img {
	/* margin: 0 38px 0; */
	/* margin: 0 auto; */
	padding-left: 12px;
	width: 300px;
}
.men_women_box_column a {
}
.men_women_button {
	/* padding: 8px 15px 8px; */
	vertical-align: middle;
	display: table-cell;
	/* width: 75px; */
	line-height: 1.3em;
	color: #ffffff;
	text-align: center;
	font-family: trebuchet ms, arial, helvetica;
	box-shadow: 2px 2px 10px #333333;
	width: 194px;
	font-size: 2em;
	padding: 12px 15px;
}

.button_purple {
	/* fallback */
	background-color: #532f67;
	/* Safari 4-5, Chrome 1-9 */
	background: -webkit-gradient(linear, left top, right top, from(#532f67), to(#351b42));
	/* Safari 5.1, Chrome 10+ */
	background: -webkit-linear-gradient(top, #532f67, #351b42);
	/* Firefox 3.6+ */
	background: -moz-linear-gradient(top, #532f67, #351b42);
	/* IE 10 */
	background: -ms-linear-gradient(top, #532f67, #351b42);
	/* Opera 11.10+ */
	background: -o-linear-gradient(top, #532f67, #351b42);
}
.button_purple:hover {
	color: #c8a46d;
}

.button_green {
	/* fallback */
	background-color: #535d48;
	/* Safari 4-5, Chrome 1-9 */
	background: -webkit-gradient(linear, left top, right top, from(#535d48), to(#313a29));
	/* Safari 5.1, Chrome 10+ */
	background: -webkit-linear-gradient(top, #535d48, #313a29);
	/* Firefox 3.6+ */
	background: -moz-linear-gradient(top, #535d48, #313a29);
	/* IE 10 */
	background: -ms-linear-gradient(top, #535d48, #313a29);
	/* Opera 11.10+ */
	background: -o-linear-gradient(top, #535d48, #313a29);
}
.button_green:hover {
	color: #c8a46d;
}

.button_red {
	/* fallback */
	background-color: #92002A;
	/* Safari 4-5, Chrome 1-9 */
	background: -webkit-gradient(linear, left top, right top, from(#92002A), to(#5f1f1f));
	/* Safari 5.1, Chrome 10+ */
	background: -webkit-linear-gradient(top, #92002A, #5f1f1f);
	/* Firefox 3.6+ */
	background: -moz-linear-gradient(top, #92002A, #5f1f1f);
	/* IE 10 */
	background: -ms-linear-gradient(top, #92002A, #5f1f1f);
	/* Opera 11.10+ */
	background: -o-linear-gradient(top, #92002A, #5f1f1f);
}
.button_red:hover {
	color: #c8a46d;
}

#body {
	/* background-image: url(/images/body_bg.png); */
	/* background-repeat: repeat-x; */
	overflow: auto;
}

#content_column {
	float: left;
	/* size content_column width with window width */
	/* there ought to be a cleaner way to do this */
	/* width: 800px; */
	/* 75px here instead of 35px in mobile, because outside margins wider */
	width: -webkit-calc(100% - var(--right-column-width) - 75px);
	width: -moz-calc(100% - var(--right-column-width) - 75px);
	width: calc(100% - var(--right-column-width) - 75px);
	/* allow rightnav to fit between 1059 and 1046 width; at 1045 mobile
	 * takes over */
	/* margin: 40px 30px; */
	margin: 40px 20px 40px 25px;
}

#right_column {
	background-color: #ebe2d3;
	/* width var set in site template Public based on rightnav presence */
	width: var(--right-column-width);
	float: right;
	margin: 50px 25px 50px 0px;
	font-weight: normal; /*some download pages have un-ended STRONG tags...grrr...*/
}
#right_column .header {
	background-color: #3c1f4b;
	color: #ffffff;
	font-weight: bold;
	padding: 6px 8px;
}
#right_column .subhead {
	background-color: #5c3370;
	color: #f8f5e6;
	font-weight: bold;
	/*font-size: 11px;*/
	margin-top: 12px;
	padding: 4px 8px 4px 8px;
}
#right_column ul.nav {
	line-height: 1.0em;
	list-style-type:none;
	margin: 0;
	padding: 0;
	display: block; /* override bootstrap flex */
}

#right_column ul.nav li {
	line-height: 1.0em;
	margin: 8px;
	/*font-weight: bold;*/
}
#right_column ul.nav li a {
	text-decoration: none;
	color: #24132d;
}
#right_column ul.nav li a.active {
	color: #9d3a30;
}
#right_column ul.nav li a:hover {
	color: #9d3a30;
}

#right_column ul.nav li.level2 {
	margin-left: 20px;
	font-size: 11px;
}
#right_column .blank {
	background-color: #f8f5e6;
}

#green_bar {
	/*height: 385px;*/
	overflow: auto;

	/* fallback */
	background-color: #545454;
	/* background-image: url(/images/green_bar_bg.png); */
	/* background-repeat: repeat-x; */

	/* Safari 4-5, Chrome 1-9 */
	background: -webkit-gradient(linear, left top, left bottom, from(#424242), to(#6b6b6b));

	/* Safari 5.1, Chrome 10+ */
	background: -webkit-linear-gradient(top, #424242, #6b6b6b);

	/* Firefox 3.6+ */
	background: -moz-linear-gradient(top, #424242, #6b6b6b);

	/* IE 10 */
	background: -ms-linear-gradient(top, #424242, #6b6b6b);

	/* Opera 11.10+ */
	background: -o-linear-gradient(top, #424242, #6b6b6b);
}

.button, .button_static {
	background-image: url(/images/button_default.png);
	border: none;
	width: 105px;
	height: 22px;
	color: #ffffff;
	text-align: center;
	font-size: 11px;
}
.button:hover {
	background-image: url(/images/button_default_o.png);
}
div.button, div.button_static {
	padding-top: 4px;
	height: 18px;
	line-height: 1.3em;
}
div.button {
	cursor: pointer;
	cursor: hand;
}
.button a, .button_static a {
	color: #ffffff;
	text-decoration: none; #ffffff;
}

/*============================================================
 HOME PAGE ELEMENTS ========================================
============================================================*/

#home_intro {
	float: left;
	margin-left: 50px;
	margin-top: 20px;
	width: 240px
}
#home_intro .title {
	color: #9d3a30;
	font-size: 20px;
	font-family: trebuchet ms, arial, helvetica;
	font-weight: bold;
	font-style: italic;
	margin-bottom: 10px;
}
#home_intro .text {
	color: #000000;
	font-size: 11px;
}

#future_bar {
	clear:both;
	min-height: 196px;
	background-color: #525d47;
	background-image: url(/images/future_bar_bg.png);
	background-repeat: repeat-x;
}
#future_bar #intro {
	color: #ffffff;
	margin-left: 140px;
	padding-top: 15px;
	font-style: italic;
}
#future_bar #icons {
	text-align: center;
	padding-top: 10px;
}
#future_bar ul {
	list-style-type:none;
	margin: 0;
	padding: 0;
}
#future_bar li {
	position: relative;
	display:inline;
	padding: 0px 15px;
}
.future_icon_caption {
	position: absolute;
	bottom: 15px;
	left: 22px;
	color: #ffffff;
	font-style: italic;
	font-size: 11px;
	white-space: nowrap;
}


/*============================================================
 PRODUCT PAGE ELEMENTS ========================================
============================================================*/

div.product {
	clear:both;
	padding: 10px 0px 10px 120px;
	overflow: auto;
	background-repeat: no-repeat;
	background-position: 0px 10px;
}
.product h3 {
	margin-top: 0px;
}



/*============================================================
 SHEDULE PAGE ELEMENTS (but used for products too!) ========================
============================================================*/

.schedule {
	margin-top: 15px;
}
.schedule table {
	position: relative;
	width: 99%;
	text-align: left;
}
.schedule table caption {
	font-size: 1.2em;
	font-weight: bold;
	color: #672A72;
	margin: 0em;
	padding: 1em 30px 0.5em 5px;
	border-bottom: none;
	text-align: left;
}
.schedule table th, .schedule table td {
	margin: 0;
	padding: .5em 0px .5em 5px;
	border-bottom: 1px solid #B5B5B5;
}
.schedule table td {
	padding: .7em 0px .7em 5px;
}
.schedule table tr {
	background: #E6E6E6;
	line-height: 1.3em;
	vertical-align: top;
}
.schedule table tr.no_background {
	background: #FFFFFF;
}
.schedule table tr.city {
	color: #FFFFFF;
	background: #23132d;
	font-size: 14px;
	/*line-height: 0.8em;*/
}
.schedule table tr.cols {
	color: #FFFFFF;
	background: #472558;
	line-height: 1.3em;
}
.schedule .cols th {
	padding: .3em 0px .3em 5px;
}
.schedule table tr.alt {
	background: #F1F1F1;
}
.schedule div.formerly {
	font-weight: normal;
	font-style: italic;
	font-size: 11px;
}
@media screen {
	.scrolling_regbox {
		height: 120px;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		border: 1px solid #dddddd;
		background-color: #f2f6fa;
		padding: 8px;
	}
}

/*============================================================
 AUDIO LINK PAGE STYLES ==============================================
============================================================*/
.mp3 p {
	line-height: 1.2em;
	padding-bottom: 0.2em;
}
.mp3 h4 {
	padding-top: 0px;
	padding-bottom: 0.5em;
	margin-bottom: 1.5em;
	margin-top: 0;
}
.mp3 div {
	padding-top: 5px;
}
.alt {
	background-color: #F0F0F0;
}
div.audioSnippet audio.audioSnippet {
	width: 280px;
}


/*============================================================
 CUSTOM TYPE STYLES ==============================================
============================================================*/

.add_leading {
	margin-top: 0.5em;
}
.byline {
	font-size: 0.9em;
	margin-bottom: 1.5em;
	font-weight: bold;
}
.callout {
	color: #FFFFFF;
	background: #672A72;
	float: right;
	height: auto;
	width: 30%;
	margin-left: 10px;
	overflow: visible;
	margin-right: 30px;
}
* html .callout {
	margin-right: 15px;
}
.callout h4 {
	margin: 1em 0em;
	color: #FDDF77;
	padding-right: 15px;
	padding-left: 18px;
	text-indent: -0.5em;
}
/* because IE can't handle the hanging indent in the center div */
.center_quote {
	padding: 0px;
}
* html .center_quote {
	padding: 0px 10px;
}
.center_quote h4 {
	margin: 1em 0em 0em !important;
}
.ellipsis p {
	padding-left: 1.0em;
	text-indent: -1.0em;
	padding-right: 20px;
}
.font_60 {
	font-size: 0.6em;
}
.font_80 {
	font-size: 0.8em;
}
.font_90 {
	font-size: 0.9em;
}
.font_normal {
	font-family: Trebuchet MS, Arial, Helvetica, sans-serif;
	font-weight: normal;
	font-style: normal;
}
.half_top {
	margin-top: 0;
	padding-top: 0.5em;
}
.indent_after_h4 {
	padding-left: 1.3em;
	padding-right: 20px;
	padding-top: 2px;
}
.no_box {
	margin: 0px;
	padding: 0px;
}
.no_top {
	margin-top: 0px;
	padding-top: 0px;
}
.no_und a {
	text-decoration: none;
}
.no_background {
	background: #FFFFFF;
}
.please_note {
	font-size: 0.9em;
	font-weight: bold;
	margin: 1em 0em 0em;
	padding-left: 0.7em;
	text-indent: -0.7em;
}
.small {
	font-size: 80%;
}
.subtract_leading {
	margin-top: -0.5em;
}
.red {
	color: #ff0000;	/*Old red (#BD3131)*/
}
.reg {
	font-size: 60%;
	vertical-align: top;
}
.workshop {
	font-style: italic;
	font-weight: bold;
}
.quote {
	color: #7F081C; /*old #BD3131;*/
	font-weight: bold;
	text-indent: -0.5em;
	/* was causing #body to overflow and add a scrollbar */
	/* margin-bottom: -0.5em; */
}
.addnewlink {
	/* font-size: 11px; */
	font-size: 1.1em;
	font-weight:bold;
	color:#FFFFFF;
}

.addnewlinksubhead {
	font-size:11px;
	font-weight:bold;
	color:#ffffff;
}
.bp2 {
	padding-bottom: 2px;
}
.aa_red {
	color: #7F081C;
}
.catalog_title {
	font-size:14px;
}

.countdown-container {
	/* ie curric.centerfit */
	width: fit-content;
	width: -moz-fit-content; /* firefox etc */
	width: -webkit-fit-content; /* safari/ios etc */
	margin-left: auto;
	margin-right: auto;
}

/*============================================================
 LIST STYLES =====================================================
============================================================*/

.listoutertable {
	/*background-color: #B5B5B5;*/
}

.listtitlerow {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 16px;
	font-weight:bold;
	color:#FFFFFF;
	/* background-color: #23132d; */
	background-color: black;
	border-bottom:1px solid #cccccc;
	padding: 4px;
}

.listheaderrow {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 15px;
	font-weight:bold;
	color: #FFFFFF;
	/* background-color: #472558; */
	background-color: #4f4f4f; /* charcoal grey */
	/*border-bottom:1px solid #B5B5B5;*/
	padding: 4px;
}

.listsubheaderrow {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 15px;
	font-weight:bold;
	color:#FFFFFF;
	/* background-color: #472558; */
	background-color: #4f4f4f; /* charcoal grey */
	border-bottom:1px solid #cccccc;
	padding: 4px;
}

.listrow {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 15px;
	padding-top: 4px;
	padding-bottom: 4px;
	color:#000000;
	border-bottom:1px solid #cccccc;
	background-color: #ffffff;
}

.listrowalternate {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 15px;
	color:#000000;
	padding-top: 4px;
	padding-bottom: 4px;
	background-color: #efefef;
	border-bottom:1px solid #cccccc;
}

.listrowselected {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 15px;
	color:#ffffff;
	padding-top: 4px;
	padding-bottom: 4px;
	/* background-color: #0000cc; */
	background-color: #093f69;
	border-bottom:1px solid #cccccc;
}


/*============================================================
 FORM STYLES =====================================================
============================================================*/

.formoutertable {
	/*background-color: #B5B5B5;*/
}

.formtitlerow {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 16px;
	font-weight:bold;
	color:#FFFFFF;
	/* background-color: #23132d; */
	background-color: black;
	border-bottom:1px solid #cccccc;
	padding: 4px;
}

.formsubhead {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 15px;
	font-weight:bold;
	color:#FFFFFF;
	/* background-color: #472558; */
	background-color: #4f4f4f; /* charcoal grey */
	border-bottom:1px solid #cccccc;
	padding: 4px;
}

.formlabel {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 14px;
	/*font-weight:bold;*/
	color: #3A0E0E;
	background-color: #EFEFEF;
	border-bottom:1px solid #cccccc;
}

.specialoffer .formlabel {
	/* allow label to line wrap */
	white-space: normal;
}

.formfield {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size: 14px;
	color:#000000;
	background-color: #ffffff;
	border-bottom:1px solid #cccccc;
}

.formfieldpreview {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size:11px;
	font-weight:bold;
	color:#0000ff;
	background-color: #ffffff;
}

.mainlink {
	position:absolute;
	top:0px;
	left:0px;
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size:11px;
	font-weight:bold;
	color:#ffffff;
}

.required, .message {
	/* color:#ff0000; */
	color: #BD0205; /* medium red */
}

.error, .FormFieldError {
	font-size: 14px;
	color: #BD0205; /* medium red */
}


/* display messages, prereqs, etc, */
.warning {
	font-size: 14px;
	color: #BD0205; /* medium red */
}

/* used on reg pages in DisplayMessages() */
.reg_warning {
	color: #7f081c; /* dark red */
}

.prerequisite_note {
	/* color: #630d9c; */ /* purple */
	color: #7f081c; /* dark red */
}

.general-warning {
	font-size: 16px;
	color: #BD0205; /* medium red */
	font-weight: bold;
	text-align: center;
	max-width: 800px;
	margin: auto;
}

h2.prerequisite_note {
	/* color: #630d9c; */ /* purple */
	color: #7f081c; /* dark red */
}

.formnotetext {
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size:10px;
	color: #3A0E0E;
}

.mobileForm td.formlabel {
	/* wide enough windows, don't wrap field labels */
	white-space: nowrap;
}
@media only screen and (max-width: 567px) {
	.mobileForm td.formlabel {
		/* allow word-wrapping in form labels */
		white-space: unset;
		/* make form field columns a reasonable width */
		width: 30%;
	}
}


/*============================================================
 TAB STYLES =====================================================
============================================================*/

.Level1Title
{
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size:14px;
	font-weight:normal;
	color:#000000;
	text-decoration:none;
}

.Level1Name
{
	font-family:trebuchet ms,arial,helvetica,sans-serif;
	font-size:14px;
	font-style: italic;
	font-weight:normal;
	color:#000000;
	text-decoration:none;
}

.TabOutline
{
	/*background-color: #A3B4BE;*/
	background-color: #cf9800;
}

.TabTitle
{
	/*background-color: #ffffff;*/
	width: 100%;
}

.TabActive
{
	background-color: #ffffff;
	font-size: 10px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #000000;
}

.TabInactive
{
	background-color: #f0e8cf;
	font-size: 10px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #666666;
}

.TabBackground
{
	/*background-color: #ffffff;*/
	font-size: 10px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
}

/* NEW TAB ELEMENTS --------------------------------------------------- */
.tabSet {
	width: 100%;
	margin: 0px;
	padding: 0px;
	border: 0px;
}

table.tabs {
	width: 100%;
	margin: 0px;
	padding: 0px;
	border: 0px;
}

.tabs td {
	margin: 0px;
	padding: 0px;
	border: 0px;
	font-family: "Trebuchet MS", verdana, sans-serif;
	font-size: 12px;
	vertical-align: bottom;
	border-bottom: 1px solid #aaaaaa;
}

.tabs td a {
	padding-left: 0px;
	padding-right: 0px;
	text-decoration: none;
	font-family: "Trebuchet MS", verdana, sans-serif;
	font-size: 12px;
	color: #444444;
	/*background: transparent url('/images/tab_inactive.gif') repeat-x top;*/
}

.tabs table tr td.tabMiddle, .tabs table tr td.tabIcon {
	vertical-align: middle;
	border: 0px;
	padding: 2px 6px 0px 6px;
	font-size: 12px;
	background: transparent url('/admin/images/tab_inactive.gif') repeat-x top;
	white-space: nowrap;
	cursor: pointer;
	cursor: hand;
}

.tabs td.tabActive table tr td.tabMiddle, .tabs td.tabActive table tr td.tabIcon {
	vertical-align: middle;
	border: 0px;
	padding: 2px 6px 0px 6px;
	font-size: 12px;
	background: transparent url('/admin/images/tab_active.gif') repeat-x top;
	white-space: nowrap;
}

.tabs td table tr td.tabLeft {
	border: 0;
	font-size: 12px;
	background: transparent url('/admin/images/tab_left_inactive.gif') no-repeat left top;
	cursor: pointer;
	cursor: hand;
}

.tabs td table tr td.tabRight {
	border: 0;
	font-size: 12px;
	background: transparent url('/admin/images/tab_right_inactive.gif') no-repeat right top;
	cursor: pointer;
	cursor: hand;
}

.tabs td.tabActive {
	border-bottom: 0px;
}

.tabs td.tabActive a {
	padding-left: 0px;
	padding-right: 0px;
	text-decoration: none;
	font-family: "Trebuchet MS", verdana, sans-serif;
	font-size: 12px;
	color: #444444;
	/*background: transparent url('/images/tab_active.gif') repeat-x top;*/
}

.tabs td.tabActive table {
	height: 22px;
}

.tabs td table {
	height: 20px;
}

.tabs td.tabActive table tr td.tabLeft {
	border: 0px;
	font-size: 12px;
	background: transparent url('/admin/images/tab_left_active.gif') no-repeat left top;
}

.tabs td.tabActive table tr td.tabRight {
	border: 0;
	font-size: 12px;
	background: transparent url('/admin/images/tab_right_active.gif') no-repeat right top;
}

.tabs td.tabLast {
	width: 99%;
}

.tabs td.tabSpacer {
	/*background: transparent url('/images/tab_last.gif') repeat-x bottom;*/
	border-bottom: 1px solid #aaaaaa;
	font-size: 1px;
	width: 1px;
}

.tabs td.tabSpacer span {
	overflow: hidden;
	width: 1px;
}

.tabs img {
	display: block-inline;
}

.tabContent {
	margin: 0px;
	padding: 0px;
	background-color: #ffffff;
	border-top: 0px;
	border-left: 1px solid #aaaaaa;
	border-right: 1px solid #aaaaaa;
	border-bottom: 1px solid #aaaaaa;
}

/* END NEW TAB ELEMENTS --------------------------------------------------- */

.prereq-header {
	/* size/color of h3 */
	font-size: 1.2em;
	font-weight: bold;
	color: #672A72;
}

/* ============================================================
 * new titles
 * ============================================================
 */

/** Understanding Men/Women **/
div.undTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
}
p.undTitle, span.undTitle {
	font-family: 'Ananda', Verdana, sans-serif;
	font-size: 40pt;
	font-weight: normal;
	margin-bottom: 0;
	text-align: center;
}
p.menWomenTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
	margin-left: auto;
	margin-right: auto;
	line-height: 2em;
}
p.menTitle, span.menTitle,
p.womenTitle, span.womenTitle,
p.loveTitle, span.loveTitle,
p.sexTitle, span.sexTitle,
span.ampTitle, span.ampTitle {
	font-family: 'Arial-Black', 'Archivo Black', Arial, sans-serif;
	/* font-family: 'Arial-Black', 'Muli', Arial, sans-serif; */
	/* font-weight: 800; */
	font-size: 30pt;
	line-height: 3px;
	text-align: center;
	margin-bottom: 40px;
	color: black;
}
p.menTitle, span.menTitle {
	color: #92002A;
	/* color: #790521; */
}
p.womenTitle, span.womenTitle {
	/* color: #532f67; */
	/* color: #5d2a8c; */
	color: #75319a;
}
p.loveTitle, span.loveTitle {
	color: #92002A;
	line-height: 24px;
}
p.sexTitle, span.sexTitle {
	color: #75319a;
	line-height: 24px;
}
p.ampTitle, span.ampTitle {
	color: black;
	font-size: 24pt;
	/* archivo black ampersand is wrong */
	font-family: 'Arial-Black', Arial, sans-serif;
	font-weight: bold;
}

/** Heart of Partnership **/
div.hopTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
	margin-top: 30px;
}
p.hopHeartTitle {
	font-family: Arial, sans-serif;
	/* font-weight: bold; */
	font-size: 30pt;
	letter-spacing: 3px;
	text-shadow: 2px 1px black;
	color: #92002A;
	line-height: 0;
	text-align: center;
	position: relative;
	left: 15%;
	top: 5px;
}
p.hopOfTitle {
	font-family: Arial;
	font-weight: bold;
	font-size: 12pt;
	line-height: 0;
	text-align: center;
	position: relative;
	left: 8%;
	top: 6px;
}
p.hopPtrTitle {
	line-height: 0;
}
span.hopPTitle {
	font-family: 'Ananda', Verdana, sans-serif;
	font-size: 70pt;
	font-weight: normal;
	margin-bottom: 0;
	vertical-align: super;
}
span.hopArtTitle {
	font-family: 'Ananda', Verdana, sans-serif;
	font-size: 40pt;
	font-weight: normal;
	margin-bottom: 0;
	margin-left: -45px;
	position: relative;
	top: 8px;
}

/* Critical Missing Pieces */
div.cmpTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
	margin-top: 70px;
}
p.cmpCriticalTitle {
	line-height: 0;
	color: #92002A;
	text-shadow: 2px 2px 1px black;
}
span.cmpCTitle {
	font-family: 'Ananda', Verdana, sans-serif;
	font-size: 90pt;
}
span.cmpRiticalTitle {
	font-family: 'Ananda', Verdana, sans-serif;
	font-size: 60pt;
	position: relative;
	top: -22px;
	left: 6px;
}
p.cmpMissingTitle {
	font-family: Arial-Black,Arial, sans-serif;
	font-size: 22pt;
	text-transform: uppercase;
	color: black;
	text-shadow: 3px 2px 1px white;
	line-height: 0;
	/* position: relative; */
	/* top: -10px; */
	/* left: 90px; */
	padding-left: 90px;
	margin-top: -10px;
}

/* Being Extraordinary as a Man */
div.bemTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
	margin-top: 30px;
	margin-left: 10px;
}
p.bemBeingTitle {
	font-family: Arial-Black,Arial, sans-serif;
	font-size: 21pt;
	text-transform: uppercase;
	color: black;
	text-shadow: 1px 2px 1px white;
	line-height: 0;
	position: relative;
	top: -17px;
	margin-left: 81px;
}
p.bemExtraTitle {
	font-family: 'Ananda', Verdana, sans-serif;
	color: #92002A;
	text-shadow: 1px 2px 1px black;
	line-height: 0;
	transform: rotate(-12deg);
}
span.bemETitle {
	font-size: 56pt;
}
span.bemXtraTitle {
	font-size: 40pt;
}
p.bemAsTitle {
	font-family: Arial-Black,Arial, sans-serif;
	font-size: 13pt;
	color: black;
	text-shadow: 1px 2px 1px white;
	line-height: 0;
	position: relative;
	top: -4px;
	margin-left: 250px;
}
p.bemManTitle {
	font-family: Arial-Black,Arial, sans-serif;
	font-size: 21pt;
	text-transform: uppercase;
	color: black;
	text-shadow: 3px 2px 1px white;
	line-height: 0;
	position: relative;
	top: 9px;
	margin-left: 234px;
}

/* LUX */
div.luxTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
	font-family: 'Ananda', Verdana, sans-serif;
	/* font-size: 40pt; */
	font-size: 130pt;
	font-weight: normal;
	margin-bottom: 0;
	text-align: center;
	text-shadow: 3px -3px 3px darkgrey;
}
div.luxTitleL {
	display: inline-block;
}
div.luxTitleU {
	display: inline-block;
	font-family: 'Kaushan Script', cursive;
	font-size: 110pt;
	font-style: italic;
	position: relative;
	top: -12px;
	left: -50px;
}
div.luxTitleX {
	display: inline-block;
	font-size: 110pt;
	position: relative;
	left: -90px;
}
div.luxTitleUltra {
	display: inline-block;
	font-family: 'Kaushan Script', cursive;
	font-size: 110pt;
	font-style: italic;
	color: #dca92c;
}

/* QUEST */
.questblue {
	color: #133d6f !important;
}
div.questTitle {
	width: fit-content;
	width: -moz-max-content;	/* Firefox/Gecko */
	width: -webkit-max-content; /* ios etc */
	color: #133d6f;
}
div.questTitleQ {
	display: inline;
	font-family: 'Yellowtail', cursive;
	font-weight: normal;
	/* font-size: 53pt; */
	font-size: 62pt;
}
div.questTitleRest {
	display: inline;
	font-family: 'Ananda', cursive;
	font-weight: bold;
	/* font-size: 40pt; */
	font-size: 48pt;
}
@media only screen and (max-width: 450px) {
	div.questTitleQ {
		font-size: 48pt;
	}
	div.questTitleRest {
		font-size: 36pt;
	}
}

/* ============================================================
 * Generalized from some pages
 * ============================================================
 */

/** /free/listen **/

div.audioPlayers {
	/* columns yay */
	column-count: 3;
	column-gap: 70px;
	margin: 40px 20px 0px 20px;
}
.audioPlayers .item {
	/* keep player/desc together in column wrap */
	display: inline-block;
	/* spacing between */
	margin-bottom: 50px;
}
.audioPlayers audio {
	/* wide enough for safari to show playhead bar */
	width: 280px;
}
.audioPlayers audio::-webkit-media-controls-panel {
	/* Chrome: make player slightly darker */
	background-color: #ccc;
}


/*============================================================
 PRINT-SPECIFIC STYLES =====================================================
============================================================*/

@media print {
	#green_bar {
		display: none;
	}
	.noprint {
		display: none;
	}
}

/*============================================================
buttons for packages
============================================================*/

input.buttonP,
input.buttonR,
input.buttonG,
input.buttonBlue,
input.buttonTeal,
input.buttonBlack,
input.buttonGrey,
input.buttonGold,
input.buttonPink,
input.buttonDisabled {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}
input.buttonP,
input.buttonR,
input.buttonG,
input.buttonBlue,
input.buttonTeal,
input.buttonBlack,
input.buttonGrey,
input.buttonGold,
input.buttonPink,
input.buttonDisabled {
	border: none;
	background: none;
	padding: 0;
}
input.buttonP,
input.buttonR,
input.buttonG,
input.buttonBlue,
input.buttonTeal,
input.buttonBlack,
input.buttonGrey,
input.buttonGold,
input.buttonPink,
input.buttonDisabled {
	font-family: arial, sans-serif;
	font-size: 16px;
	line-height: 1.7em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: center;
	text-shadow: 2px 2px 0 black;
	/* height: 60px; */
	padding: 16px 18px;
	margin: 0 6px 0 0;
	border-radius: 15px;
	cursor: pointer;
	display: inline-block;
	color: white;
	text-decoration: none;
	/* filter: drop-shadow(7px 7px 5px black); */
	/* https://stackoverflow.com/questions/15751012/css-transform-causes-flicker-in-safari-but-only-when-the-browser-is-2000px-w */
	-webkit-transform: translate3d(0, 0, 0);
	filter: contrast(1) drop-shadow(7px 7px 5px black);
}
input.buttonP:hover,
input.buttonR:hover,
input.buttonG:hover,
input.buttonBlue:hover,
input.buttonTeal:hover,
input.buttonBlack:hover,
input.buttonGrey:hover,
input.buttonGold:hover,
input.buttonPink:hover {
	/* filter: contrast(0.5); */
	filter: contrast(0.5) drop-shadow(7px 7px 5px black);
}
input.buttonP:active,
input.buttonR:active,
input.buttonG:active,
input.buttonBlue:active,
input.buttonTeal:active,
input.buttonBlack:active,
input.buttonGrey:active,
input.buttonGold:active,
input.buttonPink:active {
	/* filter: contrast(0.5); */
	filter: contrast(0.5);
	transform: translate(7px, 7px);
}

input.buttonP {
	background-color: #532f67; /* purple */
}
input.buttonR {
	background-color: #92002A; /* red */
}
input.buttonG {
	background-color: #40542a; /* green */
}
input.buttonBlue {
	background-color: #093f69;
}
input.buttonTeal {
	background-color: #086768;
}
input.buttonBlack {
	background-color: #1d1d1d; /* almost black */
}
input.buttonGrey {
	/* background-color: #7b7b7b; */ /* medium grey */
	background-color: #4f4f4f; /* charcoal */
}
input.buttonGold {
	/* background-color: #dca92c; */ /* yellow-gold */
	background-color: #cc9e2e; /* darker yellow-gold */
}
input.buttonPink {
	background-color: #da8888;
}
input.buttonDisabled {
	background-color: darkgrey;
	color: grey;
	filter: none;
	text-shadow: none;
	/* pointer-events: none; */
	/* cursor: default; */
	cursor: not-allowed;
}

button.buttonP,
button.buttonR,
button.buttonG,
button.buttonBlue,
button.buttonTeal,
button.buttonBlack,
button.buttonGrey,
button.buttonGold,
button.buttonPink,
button.buttonDisabled {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}
button.buttonP,
button.buttonR,
button.buttonG,
button.buttonBlue,
button.buttonTeal,
button.buttonBlack,
button.buttonGrey,
button.buttonGold,
button.buttonPink,
button.buttonDisabled {
	border: none;
	background: none;
	padding: 0;
}
button.buttonP,
button.buttonR,
button.buttonG,
button.buttonBlue,
button.buttonTeal,
button.buttonBlack,
button.buttonGrey,
button.buttonGold,
button.buttonPink,
button.buttonDisabled {
	font-family: arial, sans-serif;
	font-size: 16px;
	line-height: 1.7em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: center;
	text-shadow: 2px 2px 0 black;
	/* height: 60px; */
	padding: 16px 18px;
	margin: 0 6px 0 0;
	border-radius: 15px;
	cursor: pointer;
	display: inline-block;
	color: white;
	text-decoration: none;
	/* filter: drop-shadow(7px 7px 5px black); */
	/* https://stackoverflow.com/questions/15751012/css-transform-causes-flicker-in-safari-but-only-when-the-browser-is-2000px-w */
	-webkit-transform: translate3d(0, 0, 0);
	filter: contrast(1) drop-shadow(7px 7px 5px black);
}
button.buttonP:hover,
button.buttonR:hover,
button.buttonG:hover,
button.buttonBlue:hover,
button.buttonTeal:hover,
button.buttonBlack:hover,
button.buttonGrey:hover,
button.buttonGold:hover,
button.buttonPink:hover {
	/* filter: contrast(0.5); */
	filter: contrast(0.5) drop-shadow(7px 7px 5px black);
}
button.buttonP:active,
button.buttonR:active,
button.buttonG:active,
button.buttonBlue:active,
button.buttonTeal:active,
button.buttonBlack:active,
button.buttonGrey:active,
button.buttonGold:active,
button.buttonPink:active {
	/* filter: contrast(0.5); */
	filter: contrast(0.5);
	transform: translate(7px, 7px);
}

button.buttonP {
	background-color: #532f67; /* purple */
}
button.buttonR {
	background-color: #92002A; /* red */
}
button.buttonG {
	background-color: #40542a; /* green */
}
button.buttonBlue {
	/* background-color: #05406d; */
	background-color: #093f69;
}
button.buttonTeal {
	background-color: #086768;
}
button.buttonBlack {
	background-color: #1d1d1d; /* almost black */
}
button.buttonGrey {
	/* background-color: #7b7b7b; */ /* medium grey */
	background-color: #4f4f4f; /* charcoal */
}
button.buttonGold {
	/* background-color: #dca92c; */ /* yellow-gold */
	background-color: #cc9e2e; /* darker yellow-gold */
}
button.buttonPink {
	background-color: #da8888; /* pink */
}
button.buttonDisabled {
	background-color: darkgrey;
	color: grey;
	filter: none;
	text-shadow: none;
	/* pointer-events: none; */
	/* cursor: default; */
	cursor: not-allowed;
}

.tooltipToggle {
	border-bottom: 1px dashed #3333ff;
}

.tooltipToggle_ColHdr {
	border-bottom: 1px dashed #ffba33;
}

.salered {
	/* color: #c01900; */ /* brighter red */
	color: #92002A; /* our standard/dark red */
	font-size: 12pt;
	font-weight: bold;
}

/* on Affiliates Portal pages */
.affiliateInfoNeeded {
	width: fit-content;
	/*width: -moz-fit-content; /* firefox etc */
	/*width: -webkit-fit-content; /* safari/ios etc */
	/* margin: auto; */
	/* font-size: 1.5em; */
	font-size: 1.2em;
	color: red;
}
/*
.affiliateInfoNeeded ul {
	padding-left: 1.5em;
	margin-bottom: 1em;
}
.affiliateInfoNeeded li {
	line-height: unset;
	margin-bottom: 0;
}
.affiliateInfoNeeded p {
	margin-bottom: 0;
}
*/

/*============================================================
Search functionality
============================================================*/

.searchArea {
	z-index: 20;
	display: inline-block;
	width: 200px;
	margin: 0.75em auto 0 2em;
	position: absolute;
}

	.searchArea input {
		color: #fff;
		background-color: #03686f;
		border-color: #20868d;
	}

	.searchArea input::placeholder {
		color: #ccc;
	}

	.searchArea button {
		background-color: #20868d; /* teal */
		border-color: #cc9e2e; /* gold */
		--bs-btn-hover-bg: #cc9e2e; /* gold */
	}

@media only screen and (max-width: 850px) {
	.searchArea {
		top: 85px;
		left: 10px;
	}
}
@media only screen and (max-width: 630px) {
	.searchArea {
		top: 70px;
		left: 10px;
	}
}
@media only screen and (max-width: 530px) {
	.searchArea {
		top: 55px;
		left: -10px;
	}
}
@media only screen and (max-width: 415px) {
	.searchArea {
		top: 37px;
		left: -13px;
	}
	.searchArea form input,
	.searchArea form button {
		font-size: 14px;
	}
}