﻿/* RESET 
------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td { 
    margin: 0 auto;  
    padding: 0;  
    border: 0;  
    outline: 0;  
    background: transparent;  
}

ol, ul {}
blockquote, q {quotes: none;}  
blockquote:before, blockquote:after, q:before, q:after {content: '';}  


/* TEXT/LINK FORMATTING
------------------------------------------------*/

	/* LINKS */
	a:link, a:visited {
		color:#0E3A6B;
		text-decoration:underline;
	}
	a:hover, a:active {
		color:#969696;
		text-decoration:none;
	}

	/* PARAGRAPH/LIST/GENERAL TEXT */
	p, ul, li {font-size: 12px;}

	strong{font-family: 'source_sans_prosemibold';}

	/* HEADERS */
	h1, h2, h3, h4 ,h5 ,h6 {line-height: normal;}
	h1 {font-size:28px; color:#0e3a6b; font-family: 'source_sans_proSBdIt';}
	h2 {font-size:24px;}
	h3 {font-size:24px; color:#fff; font-family: 'source_sans_prolight'; font-weight:100;}
	h4 {font-size:22px  color:#0e3a6b; font-family: 'source_sans_prolight'; font-weight:100;}
	h5 {font-size:18px; font-weight:100;}
	h6 {font-size:14px; color:#fff; font-family: 'source_sans_prolight'; font-weight:100;}


/* GLOBAL SITE FRAMEWORK
------------------------------------------------*/
.clear {clear: both;}
.left {float:left;}
.right {float:right;}
.blue {color:#0E3A6B;}


body {
	margin:0;
	line-height:12px;
	color:#1b1b1b;
	font-family: 'source_sans_proregular';
}

.content {
	width:960px;
	margin:0 auto;
}

.content-full {
	width:1020px;
	margin:0 auto;
}


/* SELECTION
------------------------------------------------*/	
::selection {
	color:#fff;
	background: #356088;
}
::-moz-selection {
	color:#fff;
	background: #356088;
}

/* HEADER
------------------------------------------------*/	
header {
	margin:0 auto;
	padding:35px 0;
	background:#0e3a6b;
}	
	

/* LOGO
------------------------------------------------*/	
.logo {
    float:left;
	position:relative;
}	

.logo img {
	width:100%;	
}

/* ADDRESS
------------------------------------------------*/	
address {
	color:#fff;
	font-size:20px;
	line-height:23px;
	font-style:normal;
	margin:12px 0 0 0;
	float:right;
	position:relative;
}

address a:link, address a:visited {
	color:#fff;
	text-decoration:none;
}

address a:hover, address a:active {
	color:#ccc;
	text-decoration:underline;
}
	
/*  NAVIGATION
------------------------------------------------*/
#menu-button{
	display: none;
}

nav.mobile {
	display:none;
}

nav.primary {
	z-index: 500;
	position:relative;
	padding:0;
	margin:0;
	width:100%;
	background: #0f4d87;
	border-top:2px #e1effa solid;
}

nav.primary ul {
	margin:0 auto;
	padding:0;
}

nav.primary ul li {
	margin:0;
	paddding:0;
	float:left;
	list-style-type:none;	
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

nav.primary ul li:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #2D2D2D;
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: 50% 0;
	transform-origin: 50% 0;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
		
nav.primary ul li:hover, nav.primary ul li:focus, nav.primary ul li:active {
  color: #202020;
}

nav.primary ul li:hover:before, nav.primary ul li:focus:before, nav.primary ul li:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}
				
nav.primary ul li a {
	display:block;
	color:#f3f3f3;
	font-weight:normal;
	font-size:20px;
	line-height:58px;
	text-decoration:none;
	padding:0px 30px;
	margin:0;
	text-transform:uppercase;
	-webkit-transition:.5s ease-in;  
	-moz-transition:.5s ease-in;  
	-o-transition:.5s ease-in;  
	transition:.5s ease-in;	
}	

nav.primary ul li a:hover {
	color:#fff;
	background: #2D2D2D;
}


/*  SUB NAV
------------------------------------------------*/
nav.primary ul li li a:link, nav.primary ul li li a:visited{
	font-size:14px;
    line-height:14px;
	padding:10px 18px;
	
	color:#fff;
	background: #4a4a4a;
	width: 230px;
	
	text-align:left;
	
	border-right:none;
	border-left:none;
	border-bottom: #fff solid 1px;
}

nav.primary ul li li a:hover,nav.primary ul li li a:active {
	color:#fff;
	background:#2d2d2d;
}


/*  NAV DROPDOWNS
------------------------------------------------*/
nav.primary ul ul {
    display: none;
    position: absolute; 
}
  
nav.primary ul ul ul {
    position: absolute; 
    left: 100%;
    top:0; 
}
  
nav.primary ul li:hover > ul {  
    display: block;
    line-height:18px; 
    z-index: 500;
}
  
nav.primary ul ul li {
    float: none; 
    position: relative;
    margin:0;
}



/*  SLIDESHOW
------------------------------------------------*/
.cycle-slideshow {
	line-height:0;
	z-index:0;
	border-bottom:5px #9ca6af solid;
}

.cycle-slideshow img{
	width:100%;
}

/* pager */
.cycle-pager { 
    text-align: center; width: 100%; z-index:250; position: absolute; bottom: 10px; overflow: hidden;
}
.cycle-pager span { 
    font-family:Arial, Helvetica, sans-serif; font-size: 45px; line-height:45px; margin:0 5px 0 0; width: 16px; height: 16px; 
    display: inline-block; color: #fff; cursor: pointer; 
}
.cycle-pager span.cycle-pager-active {color: #0f4d87;}
.cycle-pager > * {cursor: pointer;}


/*  SCROLLING INVENTORY
------------------------------------------------*/
.scrolling-wrap {
	width:100%;
	height:92px;
	overflow:hidden;
	padding:20px 0;
	background:#e9e8dc;
}

.scrolling{
	width:100%;
	height:92px;
}


/*  MAIN WRAPPER
------------------------------------------------*/	
.main-wrapper {
	padding:35px 0 45px 0;
}


/*  MAIN
------------------------------------------------*/	
.main {
	padding:20px 0 30px 0;
	background:#fff;
}


/*  ARTICLE
------------------------------------------------*/
article {
	width:73.9%;
	float:left;
	position:relative;
	margin:0 4% 0 0;
}

article.full {
	width:100%;
	margin:0;	
}

article h1{
	margin:0 0 4px 0;
}

article p {
	font-size:15px;
	line-height:20px;
}


/*  ASIDE
------------------------------------------------*/
aside {
	width:22.1%;
	float:left;
	position:relative;
	margin:32px 0 0 0;
}

aside img {
	width:100%;
	border:1px #0e3a6b solid;	
}


/*  CONTACT
------------------------------------------------*/
.contact {
	width:33.3%;
	text-align:left;
	padding:8px 0 30px 0;
	line-height:27px;
	float:left;
	position:relative;	
}


/*  FORM
------------------------------------------------*/
#form input {
	width: 100%;
	padding: 5px 10px;
	border:1px solid #DFDFDF;
	margin: 5px 0 15px;
	height: 30px;
    border-radius:5px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;	
	box-sizing: border-box;
}

#form textarea {
	width: 100%;
	padding: 5px 10px;
	border:1px solid #DFDFDF;
	margin: 5px 0 15px;
	height: 90px;
    border-radius:5px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;	
	box-sizing: border-box;
}

#form select {
	width: 100%;
	padding: 5px 10px;
	border:1px solid #DFDFDF;
	margin: 5px 0 15px;
	height: 30px;
    border-radius:5px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;	
	box-sizing: border-box;
}

#form input[type="checkbox"] {
    margin:5px 10px 0 0;
    width:13px;
    height:13px;
    display:inline;
}
#form input[type="radio"] {
    margin:5px 10px 0 0;
    width:15px;
    height:15px;
    display:inline;
}
 
#form input.button,
#form input.button:focus {
    width:200px; 
    background: #0E3A6B;
    border:2px #0F4D87 solid;
	border-radius:5px;
    font-size:14px;
	line-height:14px;
	font-weight:bold;
	color: #fff;
	cursor: pointer;
	transition: all .2s ease-in-out; 
	-moz-transition: all .2s ease-in-out; 
	-webkit-transition: all .2s ease-in-out;
}
#form input.button:hover {
	background:#E9E8DC;
	color:#0E3A6B;
	border:2px #0E3A6B solid;
}


.hosted-content {}
.hosted-content h5 {font-size:15px; line-height:21px !important;}
.hosted-content .fixed-column6 {width:97% !important; margin: 8px 1.5% !important; line-height:21px !important;}



/*  SECTION
------------------------------------------------*/
section {
	background: #1561aa;
	background: -moz-linear-gradient(-45deg,  #1561aa 0%, #014991 100%);
	background: -webkit-linear-gradient(-45deg,  #1561aa 0%,#014991 100%);
	background: linear-gradient(135deg,  #1561aa 0%,#014991 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1561aa', endColorstr='#014991',GradientType=1 );
	padding:30px 0;
	border-bottom:8px #ff7900 solid;
}

section .category {
	width:16.6%;	
	float:left;
	position:relative;
}

section .category h6 {
	text-align:center;
}

section .category img {
	width:100%;	
}


/*  GROUP DETAILS
------------------------------------------------*/
.group-details {
	width:28.3%;
	margin:50px 7.4% 0 0;
	background:rgba(255,255,255,0.7);
	float:left;
	position:relative;
}

.group-details:nth-of-type(4){
	margin:50px 0 0 0;
}
  
.group-details h3{
	padding:8px 15%;
	text-align:center;
	background:#0f4d87;
}

.group-details ul {
	padding:20px 8% 25px 8%;
	list-style:none;
}

.group-details ul li {
	font-size:14px;
	line-height:20px;
	font-family: 'source_sans_prolight';	
}

.group-details p {
	padding:20px 8% 25px 8%;
	font-size:14px;
	line-height:20px
}


/*  FOOTER
------------------------------------------------*/
footer {
	padding:35px 0;
	background:#0a325f;
	border-top:5px #5b7694 solid;
}


/*  Stylized Footers 
------------------------------------------------*/
.divfooter {
	width:85%;
	color:#f1f1ee;
	margin:0 auto;
	font-size:10px;
	line-height:11px;
	text-align:center;
}

.footertext{
	color:#f1f1ee;
	font-size:10px;
	line-height:11px;
}

a.footerlink:link, a.footerlink:visited, a.footerlink:active{
	color:#f1f1ee;
	font-size:10px;
	line-height:11px;
	text-decoration:underline;
}

a.footerlink:hover {
	color:#f1f1ee;
	font-size:10px;
	line-height:11px;
	text-decoration:none;
}

.smallfootertext{
	color:#f1f1ee;
	font-size:10px;
	line-height:11px;
}




/************************************************ Responsive Styles **/

@media screen and (max-width: 1100px) {	
	.group-details {width:40%; margin:35px 5% 0 5%;}
	.group-details:nth-of-type(4){margin:40px 0 0 30%;}
	.group-details h3{font-size:20px; padding:8px 4%;}
	.group-details ul {padding:20px 5% 25px 5%;}
}

@media screen and (max-width: 1024px) {
	.content {width:93.6%; margin:0 3.2%;}
	.content-full{width:100%; margin:0;}

	nav.primary{display:none;}
	
	#menu-button{
		display: block;
		font-size: 24px;
		line-height:58px;
		width:90px;
		position: relative;
		z-index: 400;
		background: #0f4d87;
		border-top:2px #e1effa solid;
		width:100%;
	}
	
	#menu-button a{
		color:#fff;
		text-decoration: none;
		padding:0 0 0 .8em;
		font-weight:100;
	}
	
	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		left: -250px;
		width: 250px;
		height: 100%;
		background: #072c54;
		z-index: 500;
		overflow:auto;
	}
	
	nav.mobile h3 { /* Menu header styles */
		position: relative;
		padding: 12px 10px;
		color: #fff;
		font-size: 1.2em;
		font-weight: 400;
		border-bottom: 4px solid #224365;
	}
	
	nav.mobile .menu-toggle { /* Menu close button */
		position: absolute;
		top: 12px;
		right: 10px;
		display: inline-block;
		padding: 6px 9px 5px;
		font-family: Arial, sans-serif;
		font-weight: 100;
		line-height: 1;
		background: #0c3560;
		color: #fff;
		text-decoration: none;
		vertical-align: top;
	}
	
	nav.mobile .menu-toggle:hover {color: #fff;}
	nav.mobile ul {
		list-style: none;
		font-weight: 300;
		border-top: 1px solid #151515;
		border-bottom: 1px solid #5883b0;
		margin:0;
		padding:0;
	}
	
	nav.mobile ul li {
		border-top: 1px solid #5883b0;
		border-bottom: 1px solid #151515;
	}
	
	nav.mobile ul li a {
		position: relative;
		display: block;
		padding: 15px 0px 15px 20px;
		color: #fff;
		font-size:15px;
		text-decoration: none;
	}
	
	nav.mobile ul li a:hover {background: #2D2D2D; color: #fff;}
	
	nav.mobile ul li span.click{/* dropdown menu idicator arrow be sure to include this image with your image files */ 
		background:url(../siteart/menu-arrow.png) 10px 12px no-repeat;
		background-size:55%;
		position:relative;
		display:block;
		float:right;
		margin:-44px 0 0 0;
		cursor:pointer;
		z-index: 12399994;
		width:44px;
		height:44px;
		-webkit-transition:background-size .3s ease-in-out;
		-moz-transition:background-size .3s ease-in-out;
		transition:background-size .3s ease-in-out;
	}
	
	nav.mobile ul li span.click:hover{background-size:60%;}
	
	nav.mobile ul li li{
		border-top: 1px solid #fff;
		border-bottom: none;
	}
	
	nav.mobile ul li li a { /* appearance of the sub-level links */
		background: #4a4a4a;
		position: relative;
		display: block;
		padding: 10px 10px 10px 15px;
		color: #ccc;
		text-decoration: none;
	}
	
	nav.mobile ul li li li a { /* appearance of third level sub-level links if needed */
		background: #4a4a4a;
		position: relative;
		display: block;
		padding: 10px 10px 10px 25px;
		color: #000;
		text-decoration: none;
	}
	
	nav.mobile ul li span.click{/* dropdown menu idicator arrow be sure to include this image with your image files */ 
		background:url(../siteart/menu-arrow.png) 10px 12px no-repeat;
		background-size:55%;
		position:relative;
		display:block;
		float:right;
		margin:-44px 0 0 0;
		cursor:pointer;
		z-index: 12399994;
		width:44px;
		height:44px;
		-webkit-transition:background-size .3s ease-in-out;
		-moz-transition:background-size .3s ease-in-out;
		transition:background-size .3s ease-in-out;
	}
	
	nav.mobile ul li span.click:hover{
		background-size:60%;
	}
}

@media screen and (max-width: 875px){
	article {width:100%; margin:0;}
	aside {width:57.1%; margin:32px 21.5% 0 21.5%;}
}

@media screen and (max-width: 768px) {
	.group-details {width:80%; margin:25px 0 0 10%;}
	.group-details:nth-of-type(4){margin:25px 0 0 10%;}	
	.group-details ul span {display:none;}
	.group-details p {padding:20px 5% 25px 5%; font-size:13px;}
}

@media screen and (max-width: 650px){
	.logo {float:none; position:relative; max-width:221px; margin:0 auto;}	
	address {width:100%; margin:12px 0 30px 0;}
	address h5 {float:right;}
	.contact {width:100%; padding:8px 0 15px 0; line-height:27px;}
	section .category {width:33.3%;}
}

@media screen and (max-width: 600px){
	address {text-align:center; font-size:16px;	line-height:20px;}
	address h5 {float:none; text-align:center;}
}

@media screen and (max-width: 480px){
	h1 {font-size:20px;}
	.cycle-slideshow {display:none;}
	h3 {font-size:20px;}
}

@media screen and (max-width: 320px){
	aside {width:80%; margin:32px 10% 0 10%;}
	section .category {width:50%;}
}