/* ---- Important ---- */

@import url("styles/reset.css");
@import url("styles/master.css");
@import url("styles/e107_default.css");

/* ---- Fonts ---- */

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

}

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

}

/* ---- Extras ---- */

::-moz-selection{
	background: #FFC323;
	color: #000000;
}

::-webkit-selection{
	background: #FFC323;
	color: #000000;
}

::selection{
	background: #FFC323;
	color: #000000;
}

/* ---- General ---- */

body {
	font: lighter 12pt/145% Helvetica, Tahoma, Arial, Verdana, sans-serif;
	color: #333333;
	background:#FFFFFF;
}

/* ---- Header ---- */

#header, #header-container {
	height: auto;
}

#header-container {
	background: #FFC323;
	height:130px;
	position:relative;
	z-index:2;
}

#shadow_hori {
	width:980px;
	height:10px;
	position:absolute;
	top:0;
	z-index:5000;	
}

/* logo */

#logo {
	padding:25px 50px;
	float:left;
}

/* nav */

#main-nav-menu {
	position: relative;
	z-index: 999;
	float:right;
}

/* ---- ImageCrossFade ---- */

#ImageCrossFade, #ImageCrossFade-container {
	height: auto;
}

#ImageCrossFade-container {
	height: 350px;
	position:relative;
	z-index:1;
}

#ContactInfo {
	position: absolute;
	z-index:5000;
	right:0;
	top:0;	
	font:normal 15pt/60px "plutoheavy", Arial, Helvetica, sans-serif;
	color:#FFFFFF;
	padding:0 25px 0 40px;
	background: url(images/bg_contactinfo.png) left top no-repeat;
}


/* ---- Content ---- */

#content, #content-container {
	height: auto;
	position: relative;
	overflow:visible;
}

/* Page Heading */

#page-header {
	height:60px;
	position: absolute;
	z-index:2;
	top:-60px;
	padding:0 40px 0 25px;
	
	font:normal 20pt/60px "plutoheavy", Arial, Helvetica, sans-serif;
	text-transform:uppercase;
	color:#FFFFFF;
	
	background: url(images/bg_title.png) right bottom no-repeat;
}

/* page content */

#page-content {
	padding: 15px 0;
}

#welcome-content {
	padding:15px 0;
	float:left;
	width:49%;	
}

/* ---- CallsToAction ---- */

#CallsToAction {
	margin:15px 0;
	float:right;
	width:50%;	
	background: #FFC323;
}

.cta-container {
	float:left;
	width:50%;	
	background: url(images/shadow_vert.png) left top repeat-y;
	height:175px;
}

.cta {
	padding:15px;	
}

.cta-header {
	font-size:17pt;
	color:#000000;	
}

.cta-content {
	font: lighter 9pt/145% Helvetica, Tahoma, Arial, Verdana, sans-serif;
}

.cta-content a:last-child {
	display:block;
	padding:5px 0 0 0;
	font: normal 12pt/145% Helvetica, Tahoma, Arial, Verdana, sans-serif;
	color:#000000;
}

.cta-content a:hover {
	color: #59440C;	
}

/* ---- Footer ---- */

#footer, #footer-container {
	height: auto;
}

#footer-container {
	border:1px solid #CCC;
	margin:0 auto 25px auto;
}

#footer-left {
	float:left;
	width:550px;
	height:60px;
	font:normal 8pt/125% Helvetica, Tahoma, Arial, Verdana, sans-serif;
	color:#FFFFFF;
	
	background: url(images/bg_footer.png) right top no-repeat;
}

.footer-padding {
	padding: 8px 8px;	
}	

#footer_logo {
	float:left;
	padding-right: 25px;	
}

#footer-right {
	float:right;
	width:395px;
	height:60px;
	overflow:hidden;
}

#footer-right img {
	cursor:pointer;
	padding:5px 10px;
}

/* ---- Navigation ---- */

#main-nav-menu {
	margin-bottom:-1px;	
}

#main-nav-menu > ul {
	list-style:none;
	position:relative;	
	z-index:9999;
}

#main-nav-menu ul, #main-nav-menu ul li {
	margin: 0;
	padding: 0;
	white-space:nowrap;
}

/* top level items */
	
#main-nav-menu > ul > li {
	position: relative;
	float: left;
}

#main-nav-menu > ul > li > a {
	display: inline-block;
	text-decoration:none;
}

#main-nav-menu > ul > li > .nav-menu-link {
	height: 130px;
	padding: 0 20px;
	display: block;
	cursor: pointer;
	
	font: normal 16pt/130px "plutoheavy", "Arial Black", Helvetica, sans-serif;
	text-transform: uppercase;
	color: #59440C;

	background: url(images/shadow_vert.png) left top repeat-y;
}

#main-nav-menu > ul > li:hover > .nav-menu-link, #main-nav-menu > ul > li > .current {
	color: #000000;
}

/* sub-menus */

#main-nav-menu > ul li ul.sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
}

#main-nav-menu > ul li:hover > ul.sub-menu {
	display: block;
	background: #FFC323 url(images/shadow_hori.png) left top repeat-x;
}

#main-nav-menu > ul li ul.sub-menu li {
	display: block;
	position: relative;
	float: none;
}

#main-nav-menu > ul li ul.sub-menu li a {
	display: block;
	text-decoration:none;
}

#main-nav-menu > ul li ul.sub-menu li .nav-menu-link {
	padding: 5px 20px 5px 20px;
	display: block;
	cursor: pointer;
	
	font: normal 12pt/100% "plutoheavy", "Arial Black", Helvetica, sans-serif;
	text-transform: uppercase;
	color: #59440C;
}

#main-nav-menu > ul li ul.sub-menu li:first-child > .nav-menu-link {
	padding: 15px 20px 5px 20px;
}

#main-nav-menu > ul li ul.sub-menu li:last-child > .nav-menu-link {
	padding: 5px 20px 15px 20px;
}

#main-nav-menu > ul li ul.sub-menu li:hover > .nav-menu-link {
	color: #000000;
}

/* sub-sub-menus */

#main-nav-menu > ul li ul.sub-menu li ul.sub-menu {
	top: 0;
	left: 100%;
}

#main-nav-menu > ul li ul.sub-menu li ul.sub-menu {
	background: #FFC323 url(images/shadow_vert.png) left top repeat-y;
}

/* responsive-main-nav-menu */

#responsive-main-nav-menu {
	display: none;
	width: 100%;
	padding: 6px;
	font: normal 10pt/100% "plutoheavy", "Arial Black", Helvetica, sans-serif;
	border: 1px solid #ccc;
	color: #333;
}

/*---- Typography -----*/

a {
	color: #7F6110;
	text-decoration: none;
	-moz-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	-webkit-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	-o-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	-ms-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
}

a:hover {
	color: #59440C;
}


#footer a {
	color: #FFFFFF;
	text-decoration: underline;
}

#footer a:hover {
	color: #000000;
}


h1, h2, h3, h4, h5, h6 {
	font-family: "plutoheavy", "Arial Black", Helvetica, sans-serif;
	font-weight:normal;
	line-height:100%;
	color: #333;
}

hr {
	border-top: 1px dashed #d0d0d0;
}

blockquote {
	padding-left: 20px;
	font: normal 14pt/125% "plutomedium", Arial, Helvetica, sans-serif;
	color: #333;
	border-left: 2px solid #FFC323;
}

blockquote cite {
	font-size: 9pt;
	color: #aaa;
}

pre {
	border: 1px solid #e0e0e0;
	background: #fff;
}

code {
	border: 1px solid #e0e0e0;
	padding:10px;
	font: normal 10pt/125% "Lucida Console", Monaco, monospace;
}

dl {
	overflow: hidden;
}

dl dt, dl dd {
	margin: 0;
	margin-bottom: 2px;
	float: left;
}

dl dt {
	width: 35%;
	font-weight: 600;
	color: #FFC323;
}

dl dd {
	width: 65%;
}

/*---- Form Elements -----*/

.tbox, input[type=text], input[type=password], textarea {
	padding: 6px;
	font: lighter 11pt/145% Helvetica, Tahoma, Arial, Verdana, sans-serif;
	border: 1px solid #e0e0e0;
	background: #fff;
	-moz-transition: border-color 0.15s ease-out;
	-webkit-transition: border-color 0.15s ease-out;
	-o-transition: border-color 0.15s ease-out;
	-ms-transition: border-color 0.15s ease-out;
	transition: border-color 0.15s ease-out;
}

.tbox:focus, input[type=text]:focus, input[type=password]:focus, textarea:focus{
	border-color: #FFC323;
}

input[type=text].js-original, input[type=password].js-original, textarea.js-original {
	font-size: 11px;
	color: #999;
}

button, .button {
	margin: 2px;
	padding: 5px 10px 3px;
	font: bold 11pt/100% Georgia, "Times New Roman", Times, serif;
	cursor: pointer;
	color: #fff;
	border: none;
	background: #666;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-moz-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	-webkit-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	-o-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	-ms-transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
	transition: color 0.15s ease-out , background-color 0.15s ease-out , border 0.15s ease-out;
}

button:hover, .button:hover {
	background: #FFC323;
}

button:active, .button:active {
	-moz-box-shadow: inset 0 0 10px rgba(0 , 0 , 0 , 0.25);
	-webkit-box-shadow: inset 0 0 10px rgba(0 , 0 , 0 , 0.25);
	box-shadow: inset 0 0 10px rgba(0 , 0 , 0 , 0.25);
}

/*---- Page top link ----*/

.back-to-top {
	display: none;
	width: 30px;
	height: 30px;
	position: fixed;
	bottom: 20px;
	right: 20px;
	cursor: pointer;
	text-indent: -9999px;
}

.back-to-top a {
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: 5px;
	background: url(images/page_top_link.png) center center no-repeat #666;
	-moz-border-radius: 999px;
	-webkit-border-radius: 999px;
	border-radius: 999px;
}

.back-to-top:hover a {
	background-color: #FFC323;
}

/*---- Login Template ----*/

.fullwidth_field .tbox {
	width:98%;	
}

/*---- Reset Fix ----*/

td {
	vertical-align: middle;
}

/*---- Responsive Alterations ----*/

/* 1024px */
@media(max-width: 950px){
	
	h1{ font-size: 20pt; }
	h2{ font-size: 15pt; }
	h3{ font-size: 13pt; }
	
	#main-nav-menu {
		display: none;
	}
	
	#responsive-main-nav-menu {
		display: block;
		z-index: 999;
		float:right;
		width:40%;
		margin:50px 25px 0 0;
	}
	
	#spicf_slider, #ImageCrossFade-container {
		width:760px !important;	
		height:275px !important;	
	}
	
	#welcome-content {
		float:none;
		width:100%;	
	}
	
	#CallsToAction {
		float:none;
		width:100%;	
	}
	
	.cta-container {
		float:none;
		width:100%;	
		background: url(images/shadow_hori.png) left top repeat-x;
		height: auto;
	}
	
	.cta-content {
		font-size:12pt;
		line-height:145%;	
	}
	
	#page-content img {
		max-width:380px;
		height:auto;
	}
		
	#footer-left {
		width:400px;
	}
	
	#footer-right {
		width:360px;
	}
	
	#footer-right img {
		padding:10px 5px;
		height:40px;
	}
			
}

/* 768px */
@media(max-width: 768px){

	h1{ font-size: 18pt; }
	h2{ font-size: 14pt; }
	h3, h4{ font-size: 11pt; }
	h5, h6{ font-size: 11pt; }
	
	#responsive-main-nav-menu {
		width:35%;
	}
	
	#spicf_slider, #ImageCrossFade-container {
		width:640px !important;	
		height:230px !important;	
	}
	
	#ContactInfo {
		display:none;	
	}
	
	#page-content img {
		max-width:320px;
		height:auto;
	}
	
	#footer-container {
		border:none;
		background: #000000;
	}
	
	#footer-left {
		width:100%;
		background:none;
	}
	
	#footer-right {
		display:none;
	}
	
	td,th {
		display:block;	
		width:100% !important;
		-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
		-moz-box-sizing: border-box;    /* Firefox, other Gecko */
		box-sizing: border-box;         /* Opera/IE 8+ */
	}
				
}

/* 640px */
@media(max-width: 660px){

	h1{ font-size: 18pt; }
	h2{ font-size: 14pt; }
	h3, h4{ font-size: 11pt; }
	h5, h6{ font-size: 11pt; }
	
	#header, #header-container{
		text-align: center;
	}
	
	#logo {
		padding:20px;
		width:45%;
	}
	
	#responsive-main-nav-menu {
		margin:35px 20px 0 0;
		width:35%;
	}
	
	#header-container {
		height:100px;
	}
	
	#ImageCrossFade-container {
		display:none;	
	}
	
	#page-header {
		height:auto;
		position:relative;
		top:15px;
		padding: inherit;
		line-height:115%;
		
		color:#000000;
		background: none;
	}	
	
	#page-content img {
		max-width:240px;
		height:auto;
	}
	
	.tbox, input[type=text], input[type=password], textarea {
		max-width:500px;
		
		width:100%;
		-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
		-moz-box-sizing: border-box;    /* Firefox, other Gecko */
		box-sizing: border-box;         /* Opera/IE 8+ */
	}
}

/* 480px */

@media(max-width: 500px){

	h1{ font-size: 14pt; }
	h2{ font-size: 12pt; }
	h3, h4{ font-size: 10pt; }
	h5, h6{ font-size: 10pt; }
	
	body {
		font: normal 10pt/135% Helvetica, Tahoma, Arial, Verdana, sans-serif;
	}
	
	#header-container {
		height:150px;
	}
	
	#logo {
		width:240px;
		padding:20px 0 0 0;
		margin:0 auto;
		float:none;
	}
	
	#responsive-main-nav-menu {
		margin:10px auto;
		width:240px;
		float:none;
	}
	
	#page-header {
		font-size: 16pt;
	}
	
	#page-content img {
		width:100% !important;
		max-width:280px;
		height:auto;
		display:block !important;
		clear:both;
	}
	
	.cta-content {
		font-size:10pt;
		line-height:135%;	
	}
	
	#footer-left {
		font-size: 8pt;
		text-align:center;
		height:auto;
	}
	
}
