
/* ------------------------------------------------------------------------- */

@font-face {
	font-family: 'Lobster';
	src: url('../fonts/lobster-webfont.eot');
	src: url('../fonts/lobster-webfont.eot?#iefix') format('embedded-opentype'),
		url('../fonts/lobster-webfont.woff') format('woff'),
		url('../fonts/lobster-webfont.ttf') format('truetype'),
		url('../fonts/lobster-webfont.svg#lobster_1.3regular') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* ------------------------------------------------------------------------- */

body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	color: #444444;
	background: #787878;
	margin: 10px;
}

#container {
	width: 1080px;
	margin: 0 auto 0 auto;
	background: #fff;
	padding: 0 10px;
}

#container.full-content #content {
	width: 100%;
}

#container.full-content #sidebar {
	display: none;
}

#header {
	overflow: hidden;
	display: table;
	padding-bottom: 8px;
	width: 100%;
	position: relative;
}

#header .left {
	display: table-cell;
	padding-top: 12px;
	padding-left: 16px;
	width: 115px;
}

#header .middle {
	display: table-cell;
	vertical-align: middle;
	padding-left: 3%;
	padding-top: 7px;
}

#header .middle #site-title {
	margin-bottom: 10px;
	padding-top: 5px;
}

#header .middle #site-title a {
	font-family: Lobster, Arial, Helvetica, sans-serif;
	font-size: 42px;
	font-style: italic;
	color: #000;
	line-height: 36px;
}

#header .middle #site-title a strong {
	color: #8c0209;
	font-weight: normal;
}

#header .middle #site-subtitle {
	color: #444444;
	font-size: 19px;
	font-style: normal;
	font-weight: normal;
	line-height: 20px;
}

#header .middle #site-subtitle em {
	white-space: nowrap;
	font-weight: normal;
}

#header .right {
	display: table-cell;
	padding-left: 7px;
	vertical-align: bottom;
	width: 47px;
}

/* ------------------------------------------------------------------------- */

#content {
	margin-top: 23px;
	padding: 0 1.8% 0 1.8%;
	width: 71.428571429%; /* 700px */
	float: left;
}

#container,
#mainmenu ul,
#sidebar h2 {
	-webkit-border-top-left-radius: 20px;
	-webkit-border-bottom-right-radius: 20px;
	-moz-border-radius-topleft: 20px;
	-moz-border-radius-bottomright: 20px;
	border-top-left-radius: 20px;
	border-bottom-right-radius: 20px;
}

#content div.image img,
#sidebar div.image img,
#content div.gallery img {
	background: #fff;
	-moz-box-shadow: 3px 3px 4px rgba(68, 68, 68, 0.9);
	-webkit-box-shadow: 3px 3px 4px rgba(68, 68, 68, 0.9);
	box-shadow: 3px 3px 4px rgba(68, 68, 68, 0.9);
}

#content div.image.no-shadow img,
#sidebar div.image.no-shadow img,
#content div.gallery.no-shadow img,
#container.full-content #content div.image img {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

/* ------------------------------------------------------------------------- */

#sidebar {
	margin-top: 23px;
	padding-right: 1.8%;
	width: 27.551020408%;  /* 270px */
	float: right;
}

#sidebar .box {
	padding: 0 15px 0 15px;
	margin-bottom: 15px;
	overflow: hidden;
}

#sidebar ul,
#sidebar ol {
	margin-bottom: 13px;
	line-height: 21px;
}

#sidebar .box p {
	font-size: 13px;
	margin-bottom: 8px;
	line-height: 19px;
}

#sidebar .box ul,
#sidebar .box ol {
	font-size: 13px;
	list-style-position: outside;
	margin-left: 20px;
}

#sidebar .box h2 {
	height: 36px;
	line-height: 36px;
	background: #890208;
	color: #fff;
	font-weight: normal;
	padding: 0 0 0 15px;
	margin: 0 -15px 10px -15px;
	font-size: 14px;
	overflow: hidden;
}

#sidebar .box div.image.float.left  {
	margin: 3px 10px 2px 0;
}

#sidebar .box div.image.float.right {
	margin: 3px 0 5px 8px;
}

#sidebar .box div.image.separate {
	margin: 0 0 15px 0;
}

#sidebar .box div.image.left {
	float: left;
}

#sidebar .box div.image.right {
	float: right;
}

#sidebar .box div.image.center {
	text-align: center;
}

#sidebar .box div.image img {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

/* ------------------------------------------------------------------------- */

#header-seperator,
#footer-seperator {
    background: #890208;
    color: #fff;
    font-weight: normal;
    height: 11px;
    line-height: 11px;
    padding: 0 0 0 15px;
	margin-bottom: 0;
	-webkit-border-top-left-radius: 12px;
	-webkit-border-bottom-right-radius: 12px;
	-moz-border-radius-topleft: 12px;
	-moz-border-radius-bottomright: 12px;
	border-top-left-radius: 12px;
	border-bottom-right-radius: 12px;
}

#header-seperator {
	margin-bottom: -1px; /* ie11 fix */
	display: none;
}

#header-seperator.open {
	-webkit-border-bottom-right-radius: 0;
	-moz-border-radius-bottomright: 0;
	border-bottom-right-radius: 0;
}

#footer-seperator {
	margin-top: 5px;
}

/* ------------------------------------------------------------------------- */

#mainmenu ul {
	list-style-type: none;
	height: 50px;
	background: #890208;
	background: -moz-linear-gradient(top, #a50414 0%, #6e0001 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a50414), color-stop(100%,#6e0001));
	background: -webkit-linear-gradient(top, #a50414 0%, #6e0001 100%);
	background: -o-linear-gradient(top, #a50414 0%, #6e0001 100%);
	background: -ms-linear-gradient(top, #a50414 0%, #6e0001 100%);
	background: linear-gradient(to bottom, #a50414 0%, #6e0001 100%);
}

#mainmenu ul li {
	float: left;
    border-left: 1px solid #6d030d;
    border-right: 1px solid #95030e;
}

#mainmenu ul li:first-child {
    border-left: 0;
}

#mainmenu ul li:last-child {
    border-right: 0;
} 

#mainmenu ul li a {
	line-height: 50px;
	color: #fff;
	display: block;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: normal;
	padding: 0 36px;
    text-decoration: none;
}

#mainmenu ul li a:hover,
#mainmenu ul li.selected a {
	background: #6e0001;
	background: -moz-linear-gradient(top, #6e0001 0%, #a50414 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#6e0001), color-stop(100%,#a50414));
	background: -webkit-linear-gradient(top, #6e0001 0%, #a50414 100%);
	background: -o-linear-gradient(top, #6e0001 0%, #a50414 100%);
	background: -ms-linear-gradient(top, #6e0001 0%, #a50414 100%);
	background: linear-gradient(to bottom, #6e0001 0%, #a50414 100%);
}

#mainmenu ul li.selected a {
	font-weight: bold;
}

#mainmenu ul li:first-child a {
	-webkit-border-top-left-radius: 20px;
	-moz-border-radius-topleft: 20px;
	border-top-left-radius: 20px;
}

#mainmenu ul ul {
	display: none;
}

/* ------------------------------------------------------------------------- */

/* alert($('#mainmenu ul li:nth-child(1)').width()); */
#mainmenu ul li:nth-child(1) a {
	width: 141px;
}

#mainmenu ul li:nth-child(2) a {
	width: 151px;
}

#mainmenu ul li:nth-child(3) a {
	width: 133px;
}

#mainmenu ul li:nth-child(4) a {
	width: 133px;
}

#mainmenu ul li:nth-child(5) a {
	width: 111px;
}

#mainmenu ul li:nth-child(6) a {
	width: 118px;
}

#mainmenu ul li:nth-child(7) a {
	width: 116px;
}

/* ------------------------------------------------------------------------- */

#sidebar #submenu ul {
	list-style-type: none;
	margin: -5px 0 5px 0;
}

#sidebar #submenu ul li a {
	border-bottom: 1px dashed #bbbbbb;
	display: block;
	padding: 6px 0;
	font-size: 14px;
}

#sidebar #submenu ul li a:hover {
	text-decoration: underline;
}

#sidebar #submenu ul li.selected a {
	font-weight: bold;
}

/* ------------------------------------------------------------------------- */

#content .teacher {
	overflow: hidden;
	margin-bottom: 15px;
}

#content .teacher h3 {
	font-size: 14px;
	margin: 0 0 0 0;
	font-weight: bold;
	color: #444444;
}

#content .teacher h4 {
	font-size: 14px;
	margin: 0 0 10px 0;
	font-weight: normal;
	font-style: italic;
	color: #444444;
}

#content .teacher p {
	margin-bottom: 2px;
}

#content .teacher .image.float {
	width: auto;
}

/* ------------------------------------------------------------------------- */

#sidebar .amazon-product {
	text-align: center;
}

#sidebar .amazon-product a[href^="https://"] {
	background: 0;
}

#sidebar .amazon-product .order-link {
	margin-top: 10px;
}

/* ------------------------------------------------------------------------- */

#content audio {
	width: 100%;
	outline: none;
	margin-top: 3px;
	margin-bottom: 5px;
}

/* ------------------------------------------------------------------------- */

#responsive-menu-button {
	display: none;
}

#responsive-menu-button .hamburger {
	padding: 5px;
}

#responsive-menu-button .hamburger:hover {
    opacity: 1;
}

#responsive-menu-button .hamburger .hamburger-inner,
#responsive-menu-button .hamburger .hamburger-inner::after,
#responsive-menu-button .hamburger .hamburger-inner::before,
#responsive-menu-button .hamburger.is-active .hamburger-inner,
#responsive-menu-button .hamburger.is-active .hamburger-inner::after,
#responsive-menu-button .hamburger.is-active .hamburger-inner::before {
	background-color: #8c0209;
}

/* ------------------------------------------------------------------------- */

#responsive-menu {
	position: absolute;
	left: 10px;
	right: 10px;
	background: #8c0209;
	display: none;
	z-index: 100;
}

#responsive-menu ul {
	list-style-type: none;
}

#responsive-menu ul li {
	position: relative;
	border-bottom: 1px solid #fff;
}

#responsive-menu ul li:last-child {
	border-bottom: 0;
}

#responsive-menu ul li a {
	position: relative;
	display: block;
	font-size: 16px;
	line-height: 18px;
	padding-top: 14px;
	padding-bottom: 14px;
	padding-left: 20px;
	padding-right: 20px;
	font-weight: bold;
	color: #fff;
	text-transform: none;
	text-overflow: ellipsis;
	overflow: hidden;
	z-index: 101;
}

#responsive-menu ul li.has-sub > a {
	padding-right: 70px; /* 20px right padding + 50px button width  */
}

#responsive-menu ul li .button { 
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	text-align: center;
	cursor: pointer;
	display: inline-block;
	z-index: 102;
}

#responsive-menu ul li > .button:after{
	font-family: 'FontAwesome';
	font-size: 16px;
	line-height: 18px;
	padding-top: 14px;
	padding-bottom: 14px;
	display: inline-block;
    content: "\f067";
	color: #fff;
}

#responsive-menu ul li.open > .button:after {
    content: "\f068";
}

#responsive-menu ul li a:hover,
#responsive-menu ul li.selected > a {
	color: #fff;
	background: #5c0004;
}

#responsive-menu ul ul {
	display: none;
}

#responsive-menu ul ul li {
	border-bottom: 0;
}

#responsive-menu ul ul li a {
	text-transform: none;
	font-weight: normal;
	padding-left: 40px;
}

#responsive-menu ul ul ul {
	border-top: 0;
}

#responsive-menu ul ul ul li a {
	text-transform: none;
	padding-left: 60px;
}

/* ------------------------------------------------------------------------- */

#content .google-maps {
	position: relative;
    padding-bottom: 90%;
    height: 0;
    overflow: hidden;
	margin-bottom: 20px;
}

#content .google-maps iframe {
	border: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ------------------------------------------------------------------------- */

#content .video {
	margin-bottom: 21.42px;
}

#content .video.custom-video video {
	width: 100%;
	outline: none;
}

#content .video.youtube-video {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 25px; 
	height: 0; 
	overflow: hidden;
}
 
#content .video.youtube-video iframe,
#content .video.youtube-video object,
#content .video.youtube-video embed {
	border: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ------------------------------------------------------------------------- */

#content a,
#sidebar a {
	color: #8c0209;
	text-decoration: none;
}

#content a:hover,
#sidebar a:hover {
	text-decoration: underline;
}

#content h1 {
	font-family: Lobster, Arial, Helvetica, sans-serif;
	font-size: 30px;
	font-weight: normal;
	margin: 0 0 10px 0;
	color: #8c0209;
}

#content h2 {
	font-family: Lobster, Arial, Helvetica, sans-serif;
	font-size: 20px;
	font-weight: normal;
	font-style: normal;
	margin: 0 0 10px 0;
	color: #8c0209;
}

#content h3 {
	font-size: 17px;
	line-height: 22px;
	font-weight: bold;
	margin: 0 0 16px 0;
	color: #8c0209;
}

#content h4 {
	font-size: 15px;
	line-height: 19px;
	font-weight: bold;
	margin: 0 0 16px 0;
	color: #8c0209;
}

#content p,
#content ul,
#content ol,
#content blockquote {
	margin-bottom: 18.42px;
	line-height: 22px;
}

#content ul,
#content ol {
	list-style-position: outside;
	margin-left: 20px;
}

#content ul {
	list-style-type: disc;
}

#content ul ul,
#content ol ol {
	margin-top: 7px;
	margin-bottom: 0;
}

#content ul li,
#content ol li {
	margin-bottom: 10px;
}

#content ul li p,
#content ol li p {
	margin: 0;
}

#content ul li:last-child,
#content ol li:last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------------------------- */

#content .table-container {
	width: 100%;
	overflow-x: auto;
}

#content table 	{
	border: 1px solid #cbcbcb;
	margin: 0 0 21.42px 0;
	border-collapse: collapse;
	border-spacing: 0;
    empty-cells: show;
	width: 100%;
}

#content table thead {
    color: #000;
    text-align: left;
    vertical-align: bottom;
}

#content table th,
#content table thead td {
	font-weight: bold;
	background-color: #e0e0e0;
	background-color: rgba(224, 224, 224, 0.4); 
}

#content table td, 
#content table th {
	padding: 12px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #cbcbcb;
}

#content table td p {
	margin: 0;
}

/* ------------------------------------------------------------------------- */

#content .exercises table 	{
	border: 0;
	margin: 5px 0 20px 0;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

#content .exercises table th,
#content .exercises table thead td {
	font-weight: bold;
}

#content .exercises table td, 
#content .exercises table th {
	padding: 7px;
	border: 0;
	text-align: left;
	vertical-align: top;
	line-height: 18px;
}

#content .exercises table td p {
	margin: 0;
}

#content .exercises table td em {
	white-space: nowrap;
}

#content .exercises table td:first-child {
	width: 10px;
	padding: 7px 4px 7px 0;
	text-align: right;
}

/* ------------------------------------------------------------------------- */

#content hr {
	border: 0;
	height: 0;
	border-top: #d3d3d3 1px solid;
	margin-top: 21.42px;
	margin-bottom: 21.42px;
}

/* ------------------------------------------------------------------------- */

#content blockquote {
	background: #f9f9f9;
	border-left: 10px solid #ccc;
	margin: 0 20px 21.42px 20px;
	padding: 10px 15px;
}

#content blockquote p {
	margin: 0;
}

/* ------------------------------------------------------------------------- */

#content a[href^="http://"]:after,
#content a[href^="https://"]:after,
#sidebar a[href^="http://"]:after,
#sidebar a[href^="https://"]:after {
	font-family: "FontAwesome";
	font-size: 0.95em;
	font-weight: normal;
    content: "\f08e";
	padding-left: 5px;
	padding-right: 2px;
	text-decoration: none;
	display: inline-block;
}

#content a[href^="http://"]:hover:after,
#content a[href^="https://"]:hover:after,
#sidebar a[href^="http://"]:hover:after,
#sidebar a[href^="https://"]:hover:after {
	text-decoration: none;
}

#content a[href $=".pdf"]:before,
#content a[href $=".zip"]:before,
#content a[href $=".doc"]:before,
#content a[href $=".docx"]:before,
#sidebar a[href $=".pdf"]:before,
#sidebar a[href $=".zip"]:before,
#sidebar a[href $=".doc"]:before,
#sidebar a[href $=".docx"]:before {
	font-family: 'FontAwesome';
	font-size: 1.1em;
	font-weight: normal;
	text-decoration: none;
	margin-right: 5px;
}

#content a[href $=".pdf"]:before,
#sidebar a[href $=".pdf"]:before {
	content: "\f1c1";
}

#content a[href $=".zip"]:before,
#sidebar a[href $=".zip"]:before {
	content: "\f1c6";
}

#content a[href $=".doc"]:before,
#content a[href $=".docx"]:before,
#sidebar a[href $=".doc"]:before,
#sidebar a[href $=".docx"]:before {
	content: "\f1c2";
}

#content a.hide-external-link-icon:after,
#sidebar a.hide-external-link-icon:after {
	display: none;
}

/* ------------------------------------------------------------------------- */

#content a.lightbox,
#content a.lightbox-gallery {
	position: relative;
	display: inline-block;
	text-decoration: none;
}

#content a.lightbox:before ,
#content a.lightbox-gallery:before  {
	font-family: 'FontAwesome';
	content: "\f002";
	color: #fff;
	font-size: 24px;
	text-shadow: 1px 1px rgba(0, 0, 0, 0.6);
	position: absolute; 
	right: 12px;
	bottom: 12px;
	display: none;
}

.no-touch #content a:hover.lightbox:before,
.no-touch #content a:hover.lightbox-gallery:before {
	display: block;
}

/* ------------------------------------------------------------------------- */

#content .image,
#content .image a {
	max-width: 100%;
	background: 0;
	padding: 0;
}

#content .image.left {
	float: left;
}

#content .image.right {
	float: right;
}

#content .image.center {
	text-align: center;
}

#content .image.float {
	width: 36%;
}

#content .image.float.left  {
	margin: 3px 18px 18px 0;
}

#content .image.float.right {
	margin: 3px 0 18px 18px;
}

#content .image.separate {
	margin: 0 0 21.42px 0;
}

#content .image.separate img,
#content .image.separate a {
	width: 100%;
}

#content .gallery {
	margin-bottom: 26px; /* 21.42px - .gallery a margin-bottom */ 
}

#content .gallery a {
	float: left;
	margin: 0 0 16px 0;
	width: 100%;
}

#content .gallery .row {
	margin: 0 -8px;
}

#content .gallery .col {
	padding: 0 8px;
}

/* ------------------------------------------------------------------------- */

#footer {
	clear: both;
	overflow: hidden;
	text-align: center;
}

#footer ul {
	display: inline-block;
	list-style-type: none;
	margin: 14px 0;
}

#footer ul li {
	float: left;
	margin-right: 8px;
}

#footer ul li:after {
	content: "|";
	color: #c2c2c2;
	margin-left: 8px;
	font-size: 14px;
}

#footer ul li:last-child:after {
	content: "";
	margin-right: 0;
}

#footer ul li a {
	font-size: 14px;
	text-decoration: none;
	color: #8c0209;
}

#footer ul li a:hover {
	text-decoration: underline;
}

#footer p {
	font-size: 13px;
	margin-bottom: 18px;
}

#footer p a {
	text-decoration: none;
	color: #8c0209;
}

#footer p a:hover {
	text-decoration: underline;
}

/* ------------------------------------------------------------------------- */

.clearer {
	clear: both;
}

.spacer {
	height: 20px;
	display: block;
	clear: both;
}

.hide { 
	display: none;
}

/* ------------------------------------------------------------------------- */

@media screen and (max-width: 1140px) { /* 980px + padding/margin */
	#container {
		width: 100%;
	}
}

@media screen and (max-width: 966px) {
	#responsive-menu-button {
		display: block;
	}

	#content,
	#sidebar {
		width: 100%;
	}

	#sidebar {
		margin-top: 0px;
		padding-right: 0;
	}

	#content {
		margin-top: 13px;
	}

	#content h1 {
		font-size: 28px;
		line-height: 29px;
	}

	#mainmenu,
	#submenu {
		display: none;
	}

	#submenu.country-chooser {
		display: block;
	}

	#header-seperator {
		display: block;
	}

	#header .left {
		padding-left: 3px;
		width: 100px;
	}

	#header .left img {
		width: 84px;
	}

	#header .middle {
		padding-left: 0.5%;
	}

	#header .middle #site-title {
		margin-bottom: 5px;
	}

	#header .middle #site-title a {
		font-size: 34px;
	}

	#header .middle #site-subtitle {
		font-size: 16px;
		line-height: 17px;
	}
}

@media screen and (max-width: 650px) {
	.row {
		margin-left: 0 !important;
		margin-right: 0 !important;		
	}

	.col {
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#header .middle #site-subtitle {
		font-size: 13px;
		line-height: 13px;
	}

	#sidebar p.align-center {
		clear: both;
		padding-top: 5px;
	}

	#content .image, 
	#content .image a,
	#content .image img,
	#content .image.float {
		width: 100%;
	}

	#content .gallery .col,
	#content .gallery .col img {
		width: 100%;
	}

	#content .teacher div.image, 
	#content .teacher div.image a,
	#content .teacher div.image img {
		width: auto;
		float: none;
	}

	#content .teacher {
		text-align: center;
		margin-bottom: 24px;
	}

	#content .teacher h4 {
		margin-bottom: 3px;
	}

	#content .teacher .image.float.left {
		margin: 5px 0 14px 0;
	}

	#footer ul li {
		float: none;
		margin: 0 0 10px 0;
	}

	#footer ul li::after {
		display: none;
	}
}

@media screen and (max-width: 375px) {
	#header .left {
		display: none;
	}

	#header .middle {
		padding-left: 6px;
	}
}

/* ------------------------------------------------------------------------- */

@media print {
	* {
		background: transparent !important;
		color: #000 !important;
		border-color: #000 !important;
		text-shadow: none !important;
		box-shadow: none !important;
	}

	html,
	body {
		font-size: 12pt;
		font-family: Arial, "Times New Roman", Times, serif;
		width: 100%;
		min-width: 100%;
		margin: 0;
	}

	a {
		padding: 0 !important;
	}

	#container,
	#content {
		width: auto;
		margin: 0;
		padding: 0;
		float: none;
	}

	#mainmenu,
	#sidebar,
	#footer {
		display: none;
	}

	#header {
		padding-bottom: 16px;
	}

	#header .left {
		display: none;
	}

	#header .middle {
		padding: 0;
		text-align: center;
	}

	#header .middle #site-subtitle {
		font-size: 14px;
	}

	#content .mejs-container {
		display: none;
	}

	#content .teacher {
		page-break-inside: avoid;
	}
}

/* ------------------------------------------------------------------------- */

