
/*** GENERAL STYLES ***/

body {background: #fff url(../images/ui/bkg-green.gif); text-align: center; margin: 0; padding: 0;}
body, th, td {font-family: arial, helvetica, sans-serif; font-size: 14px; color: #fff; line-height: 20px;}
select, input, textarea {font-family: arial, helvetica, sans-serif; font-size: 13px; color: #333; line-height: 20px;}

h1, h2, h3, h4, h5, h6 {font-family: georgia, serif; line-height: 1.5em; margin: 1em 0; color: #fbf5bb; font-style: italic; font-weight: normal; text-transform: lowercase;}
h1 {font-size: 30px;}
h2 {font-size: 24px;}
h3 {font-size: 18px; line-height: 20px;}
h4 {font-size: 14px;}

img, table, fieldset {border: 0;}
form {margin: 0; padding: 0;}
ul, ul li {list-style: none; margin: 0; padding: 0;}
p {margin: 0 0 1.5em 0;}
a {color: #6dace3;}
a:hover {color: #fbf5bb;}
figure {margin: 0; padding: 0;}

.hide {display: none;}
.alert {color: #c00;}
.xxsmall {font-size: 10px; line-height: 14px;}
.xsmall {font-size: 11px; line-height: 16px;}
.small {font-size: 12px; line-height: 18px;}
.medium {font-size: 13px; line-height: 20px;}
.large {font-size: 14px; line-height: 22px;}
.xlarge {font-size: 15px; line-height: 24px;}
.xxlarge {font-size: 16px; line-height: 26px;}

.serif {font-family: georgia, serif;}
.italic {font-style: italic;}
.normalcase {text-transform: none;}
.whitetext {color: #fff;}
.ltbluetext {color: #95c9f6;}
.current, li.current a {color: #fff;}

.floatleft {float: left;}
.floatright {float: right;}
.imgleft {float: left; margin: 0 30px 20px 0;}
.imgright {float: right; margin: 0 0 20px 30px;}
.imgborder {border: 1px solid #ccc; padding: 5px;}
.fullwidth {width: 100%;}
.textleft {text-align: left;}
.textcenter {text-align: center;}
.textright {text-align: right;}

.margin-none {
	margin: 0 !important;
}

.spacer {float: none; clear: both; height: 1px; overflow: hidden;}
.hr {float: none; clear: both; height: 1px; overflow: hidden; background: #ccc; margin: 2em 0;}
.hr.fat {
	height: 5px;
	background: #315d83;
}
.divider {float: none; clear: both; height: 9px; overflow: hidden; background: url(../images/ui/triangle-blue.png) 11px 0 no-repeat; border-top: 5px solid #315d83; margin: 30px 0 20px;}
.clear {float: none; clear: both;}
.overflowhidden {overflow: hidden;}
.nowrap {white-space: nowrap;}

.yellow {color: #fbf5bb;}

.container {text-align: left;}
.transition {height: 9px; overflow: hidden; background: center 0;}
#more .transition, #welcome .transition {background-image: url(../images/ui/transition-green.png);}
#footer .transition {background-image: url(../images/ui/transition-blue.png);}
body.home #more .transition {background-image: url(../images/ui/transition-yellow.png);}

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* Remove 13px tall Google iframe */
iframe[name='google_conversion_frame'] { 
    height: 0 !important;
    width: 0 !important; 
    line-height: 0 !important; 
    font-size: 0 !important;
    margin-top: -13px;
    float: left;
}


/*** MAIN STRUCTURAL STYLES ***/

#main {background: #213548 url(../images/ui/bkg-green.gif); padding-top:10px}
#content {background: url(../images/ui/triangle-blue.png) 11px 0 no-repeat; padding-bottom: 20px;}
#leftsidebar, #content, #rightsidebar {border-top: 5px solid #315d83; padding-top: 15px;}


/*** HEADER STYLES ***/

#header {margin-top: 15px; position: relative; width: 100%; background: url(../images/ui/header.png) center 32px repeat-x; z-index: 5;}
#header .container {text-align: center;}
#logo {position: relative;
	z-index: 999; width: 100%; max-width: 266px;  margin: 0 auto; text-align: center;}
#logo a {display: block; line-height: 0px;}
#phonenumber {width: 350px; float: right; top: 0; margin: 0;}
#eyebrow {float: left; top: 0; margin: 0;}
#eyebrow a {font-size: 16px; color: #fbf5bb; text-decoration: none;}
#eyebrow a:hover {color: #6dace3;}
#eyebrow a.on {color: #6dace3;}

.nav {font-family: georgia; text-transform: lowercase; font-weight: bold;}
.nav a {text-decoration: none;}
#nav {position: absolute; top: 46px; width: 970px; font-size: 18px; margin: 0 auto; text-align: left; z-index: 5;}
#nav li {line-height: 42px; display: inline-block;}
#nav li:nth-child(3) {margin-right: 260px;}
#nav a {display: block; color: #221f1f; padding: 0 15px;}
#nav li.on a, #nav a:hover {
	color: #6dace3;
	text-shadow: 			1px 1px 0 #fff;
	-moz-text-shadow: 		1px 1px 0 #fff;
	-op-text-shadow: 		1px 1px 0 #fff;
	-webkit-text-shadow: 	1px 1px 0 #fff;
}

.menu-link {
	display: hidden;
	width: 18px;
	height: 17px;
	background: url(../images/ui/hamburger.png) center;
}

#headline {font-size: 30px; color: #95c9f6; text-align: center; text-transform: none; margin-bottom: 1.1em;}


/*** SUBNAV STYLES ***/

#subnav {font-size: 16px; line-height: 18px; font-style: italic;}
#subnav a {display: block; color: #fff; padding: 11px 0;}
#subnav a:hover {color: #fbf5bb;}
#subnav li.on a {color: #6dace3;}


/*** CONTENT STYLES ***/

#content h1 {margin: 5px 0 20px;}
#content ul {margin: 1.5em 0;}
#content ul li {padding-left: 14px; background: url(../images/ui/bullet.png) 0 6px no-repeat; margin: 8px 15px;}

.testimonial {background: #315d83; padding: 20px; font-family: georgia, serif; font-size: 14px; font-style: italic; margin-top: 5px;
	border-radius:			10px;
	-moz-border-radius: 	10px;
	-op-border-radius:		10px;
	-webkit-border-radius: 	10px;
}
.testimonial p:last-child {margin-bottom: 0;}
.source {font-family: georgia, serif; font-size: 12px; font-style: italic; font-weight: bold; padding: 12px 0 12px 135px; line-height: 17px; background: url(../images/ui/source.png) 86px 0 no-repeat; margin-bottom: 35px !important;}
.source strong {font-size: 14px; color: #fbf5bb;}

.photo {background: #fff; padding: 3px; width: 100%; box-sizing: border-box;}
.photo img {display: block; width: 100%; border: 5px solid #6dace3; box-sizing: border-box;}

.team { font-size: 13px; line-height: 16px; margin: 0 0 20px;}
.team h3 {font-size: 16px; color: #6dace3; font-weight: bold; margin: 0;}
.team p {margin: 0 0 .9em;}

h3.steps {position: relative; padding: 4px 0 5px 75px; text-transform: none; font-weight: bold; line-height: 24px; min-height: 48px; margin: 1.6em 0 10px;}
h3.steps .stepnumber {position: absolute; left: 0; top: 0; width: 37px; height: 31px; padding: 13px 10px; text-align: center; background: #6dace3; color: #1f3346; font-size: 14px; font-weight: normal; line-height: 12px;}
h3.steps .stepnumber strong {display: block; font-size: 24px; font-weight: normal; line-height: 18px;}

#content div.newsitem {margin: 0 0 50px;}
#content .newsitem h3 a {font-style: italic; color: #fbf5bb;}
#content .newsitem .newsdate {background: #6dace3; color: #1f3346;}

#content ul.pager {float: right; font-size: 16px; text-transform: lowercase; font-style: italic; font-family: georgia, serif;}
#content ul.pager li {float: left; background: none; padding: 0; margin: 0;}
#content ul.pager a {display: block; color: #fbf5bb; text-decoration: none; padding: 0 5px;}
#content ul.pager li.on a {color: #6dace3;}

#content .consultant h3 {font-size: 16px; color: #6dace3; font-weight: bold; text-transform: lowercase; margin: 0 0 5px;}
#content .consultant p {margin: 0 0 .9em;}
#content .consultant p.photo.imgright {margin: 0 0 20px 30px;}
#content .consultant a {color: #FFFFFF;}
#content .consultant a:hover {color: #6dace3;}

.social {
	float: right;
	margin: 0;
	padding: 0;
	list-style: none;
}

.social li {
	display: inline-block;
	margin-left: 10px;
}

.social li a, .social-mobile a {
	font-size: 18px !important;
	color: #fbf5bb !important;
}

.social li a:hover, .social-mobile a:hover {
	color: #95c9f6 !important;
}

.social-mobile {
	margin: 0 auto;
	line-height: 18px;
}

.social-mobile a {
	display: inline-block !important;
	margin-right: 5px;
	margin-left: 5px;
	padding: 0px !important;
}


/*** SIDEBAR STYLES ***/

#rightsidebar h3:first-child {margin: 9px 0 22px;}
#rightsidebar .textcenter .buttonlink {float: none; width: auto; margin: 0 35px; padding: 0; text-align: center;}

#rightsidebar .team {width: 100%; background: #6dace3; font-size: 13px; border: 3px solid #fff; margin: 0 0 40px;}
#rightsidebar .team .photo {padding:0;}
#rightsidebar .team .member-details {padding-right: 15px; padding-left: 15px;}
#rightsidebar .team .member-details h3 {color: #1f3346; font-size: 13px; margin: 0;}
#rightsidebar .team .member-details a {color: #1f3346;}
#rightsidebar .team .member-details a.largetext {font-family: georgia, serif; font-style: italic; font-weight: bold; font-size: 18px; line-height: 42px; text-decoration: none;}
#rightsidebar .team .member-details a:hover {color: #fff;}


/*** MORE STYLES ***/

#more {background: #518dc1 url(../images/ui/bkg-blue.gif); overflow: hidden; color: #090f15; font-size: 12px; line-height: 20px;}
#more .container {padding: 4px 0 28px; overflow: hidden;}

#news h2 {float: left;}
/*.newsitem h3 {position: relative; padding: 4px 0 5px 75px; text-transform: none; line-height: 24px; min-height: 48px; margin: 0 0 15px;}*/
.newsitem h3 {position: relative; padding: 4px 0 5px; text-transform: none; line-height: 24px; margin: 0 0 15px;}
.newsitem .newsdate {position: absolute; left: 0; top: 0; width: 37px; height: 31px; padding: 13px 10px; text-align: center; background: #1d3144; color: #fff; font-size: 14px; font-weight: normal; font-style: normal; text-transform: uppercase; line-height: 12px;}
.newsitem .newsdate strong {display: block; font-size: 24px; font-weight: normal; line-height: 18px;}
#news .newsitem a {color: #fff; text-decoration: none;}
#news .newsitem a:hover {text-decoration: underline;}
#news .subscribe {line-height: 31px;}
#news .subscribe a {color: #fff; text-decoration: none; font-size: 11px;}
#news .subscribe a:hover {text-decoration: underline;}
#news .subscribe img {vertical-align: middle; margin: 0 0 3px 5px;}

div .bx-wrapper {clear: both;}

#newsDots {float: left; padding-left: 20px; padding-top: 36px;}
#news .dots {margin-top: 5px;}
#news .dots a {float: left; display: inline; margin: 0 0 0 5px; font-size: 1px; line-height: 1px; width: 10px; height: 10px; background: url('../images/ui/news_dots.png') 0 0 no-repeat; text-indent: -2000em;}
#news .dots a:hover {background-position: 0 -10px;}
#news .dots a.pager-active {background-position: 0 -10px;}

#book .imgright {margin: -30px 0 15px 20px;}
#booksellers {clear: both; overflow: hidden;}
#booksellers a {float: left;}


/*** FOOTER STYLES ***/

#footer {color: #528ec2; font-size: 12px; line-height: 18px; background: #fff;}
#footer .container {padding: 30px 0; overflow: hidden;}
#footer h4 {line-height: 24px; color: #213548; font-weight: bold; text-transform: none; font-style: normal; margin: 0 0 .5em;}

#sitemap { overflow: hidden; text-transform: none; line-height: 24px;}
#sitemap ul {margin-top: 10px;}
#sitemap > li {float: left; padding: 0 10px 0 10px; box-sizing: border-box; width: 25%; min-height: 80px;}
#sitemap a {display: block;}
#sitemap > li > a {color: #213548; font-size: 14px;}
#sitemap li li a {font-weight: normal; font-style: italic; color: #528ec2; line-height: normal; margin-bottom: 10px;}
#sitemap a:hover {text-decoration: underline;}

.footer-logos {
	position: relative;
	padding-top: 10px;
	padding-bottom: 10px;
	overflow: hidden;
	text-align: center;
}
.footer-logos li {
	display: inline-block;
  height: 78px;
  line-height: 78px;
	margin: 0 20px;
	padding-bottom: 20px;
}
.footer-logos li img {
	vertical-align: middle;
}

#copyright, #siteby {float: left; font-family: georgia, serif; color: #a8c6e0; font-style: italic; font-size: 11px; line-height: 20px;}
#copyright a {color: #a8c6e0; text-decoration: none;}
#copyright a:hover {text-decoration: underline;}
#siteby {float: right; text-align: right;}
#siteby img {vertical-align: baseline; margin: 0 0 -5px 5px;}


/*** HOME STYLES ***/

#homehero {padding-top: 10px;}
#homehero .homeheroitem {font-size: 22px; line-height: 28px; font-family: georgia, serif; font-style: italic; margin-bottom: 20px;}
.homeheroitem h2, .homeheroitem h2 a {color: #fff; text-transform: none; font-weight: bold; text-decoration: none; margin-bottom: 10px;}
.homeheroitem .photo {margin-bottom: 0px;}
.homeherolink {font-family: georgia, serif; font-size: 18px; font-style: italic; line-height: 35px; overflow: hidden; margin-bottom: 0px;}
.homeherolink a {float: left; color: #fbf5bb; text-decoration: none; background: url(../images/ui/homeherolink.png) right center no-repeat; padding-right: 45px;}
.homeherolink a:hover {text-decoration: underline;}
#homeheroindicators {text-align: center; padding: 15px 0;}
#homeheroindicators li {display: inline;}

#homeDots {text-align: center; padding: 0 0 40px 0;}
#homehero .dots {margin-top: 0;}
#homehero .dots a {float: left; display: inline; margin: 0 0 0 5px; font-size: 1px; line-height: 1px; width: 10px; height: 10px; background: url('../images/ui/home_dots.png') 0 0 no-repeat; text-indent: -2000em;}
#homehero .dots a:hover {background-position: 0 -10px;}
#homehero .dots a.pager-active {background-position: 0 -10px;}

#welcome {background: #f9f3b9 url(../images/ui/bkg-yellow.gif); overflow: hidden; color: #070220;}
#welcome .container {padding: 35px 0 25px; overflow: hidden;}
#welcometext {float: left;}
.welcometext-inner {
	padding-right: 50px;
}
.welcomelink {font-family: georgia, serif; font-size: 28px; font-style: italic; line-height: 35px; overflow: hidden;}
.welcomelink a {float: left; color: #4884b8; text-decoration: none; background: url(../images/ui/welcomelink.png) right center no-repeat; padding-right: 45px;}
.welcomelink:hover {text-decoration: underline;}
#logos h3 {
	margin-top: 0px;
	font-size: 22px;
	line-height: 28px;
	color: #315d83;
	text-transform: none;
}

#logos a {
	color: #6dace3;
}

#logos a:hover {
	color: #315d83;
}


/*** BUTTON STYLES ***/

.buttoncontainer {overflow: hidden;}
.buttonlink {display: block; float: left; font-family: georgia, serif; font-style: italic; background: #fff; color: #1d3144; font-size: 12px; line-height: 31px; text-decoration: none; padding: 0 12px; border: none; cursor: pointer;
	border-radius:			10px;
	-moz-border-radius: 	10px;
	-op-border-radius:		10px;
	-webkit-border-radius: 	10px;
}
.buttonlink:hover {color: #6dace3;}
.buttonlink.largetext {font-size: 18px; line-height: 42px; font-weight: bold;}
.buttonlink.darkblue {background: #1d3144; color: #fff;}
.buttonlink.darkblue:hover {color: #fbf5bb;}
.buttonlink.lightblue {background: #6dace3; color: #1d3144;}
.buttonlink.lightblue:hover {color: #fff;}


/*** FORM STYLES ***/

textarea:focus, input:focus, select:focus {outline: 0;}

form {font-family: georgia, serif; font-size: 16px; line-height: 20px; font-style: italic; color: #fbf5bb; text-transform: lowercase;}
form > div {overflow: hidden; margin: 0 0 20px 0;}

input, textarea, select {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
 }

input[type="text"], input[type="email"], textarea {
	font-size: 16px;
	color: #fff;
	background: #315d83;
	padding: 5px 10px;
	width: 100%;
	margin-bottom: 5px;
	border: none;
	border-radius:			10px;
	-moz-border-radius: 	10px;
	-op-border-radius:		10px;
	-webkit-border-radius: 	10px;
}

input[type="text"], form input[type="email"] {height: 42px;}

input[type="submit"] {
	-webkit-appearance: none;
}

textarea {height: 200px;}

textarea.halfheight {height: 100px;}

label {display: block; padding-bottom: 5px;}
.note {display: block; font-family: arial, sans-serif; color: #fff; font-style: normal; font-size: 13px;}
.specialistsnote {padding-top: 25px; line-height: 18px; font-family: arial, sans-serif; font-style: normal; font-size: 13px; text-transform: none;}
.datenote {font-size: 12px; padding-left: 10px;}
.halfwidth {width: 50% !important;}
.processing-alert {color: green; font-weight: bold;}

.radio label, .checkbox label {  
    cursor: pointer;  
    position: relative;   
    font-size: 16px;
}

.radio label {
	display: inline-block;
	padding-left: 10px;
	padding-right: 10px;
}

input[type="checkbox"] {
	float: left;
	margin-left: -20px;
}

.checkbox label {
	display: block;
	margin-left: 20px;
	padding-bottom: 10px;
}

select {
	width: 100%;
	padding: 5px 10px;
	height: 42px;
	line-height: 42px;
	-webkit-appearance: menulist-button;
}

.bob {
	color: red;
}

.error label {
	color: red;
}


/*** MEDIA QUERIES ***/

@media only screen and (min-width: 768px) {
	
	.hide-on-desktop {
		display: none;
		visibility: hidden;
	}
	
}

/* =============================================================================
   768px Grid
   ========================================================================== */

@media only screen and (min-width: 768px) and (max-width: 995px) {
	
	/*#nav {
		width: 752px;
		font-size: 16px;
	}
	#nav li:nth-child(2) {margin-right: 275px;}
	#nav a {padding: 0 10px;}*/
	
	#logo {
		margin-bottom: 15px;
	}
	#nav {
		position: static;
		width: 320px;
		font-size: 16px;
		overflow: hidden;
		max-height: 0;
		text-align: center;
	}
	#nav li {float: none; display: block;}
	#nav li:nth-child(3) {margin-right: 0px;}
	#nav a {color: #fff;}
	#nav li.on a, #nav a:hover {
		color: #6dace3;
		text-shadow: 			none;
		-moz-text-shadow: 		none;
		-op-text-shadow: 		none;
		-webkit-text-shadow: 	none;
	}
	#nav.active { max-height: 320px; margin-top: 10px;}
	.menu-link { display:block; margin: 0 auto; overflow: hidden;}
	
	#phonenumber {width: 240px;}
	
	.hide-on-tablet {
		display: none;
		visibility: hidden;
	}
	
}

/* =============================================================================
   Less than 768px
   ========================================================================== */
   
@media only screen and (max-width: 767px) {

	body {
		font-size: 16px;
		line-height: 24px;
	}
	#logo {
		margin-bottom: 15px;
	}
	#nav {
		position: static;
		width: 320px;
		font-size: 16px;
		overflow: hidden;
		max-height: 0;
		text-align: center;
	}
	#nav li {float: none; display: block;}
	#nav li:nth-child(3) {margin-right: 0px;}
	#nav a {color: #fff;}
	#nav li.on a, #nav a:hover {
		color: #6dace3;
		text-shadow: 			none;
		-moz-text-shadow: 		none;
		-op-text-shadow: 		none;
		-webkit-text-shadow: 	none;
	}
	#nav.active { max-height: 320px; margin-top: 10px;}
	.menu-link { display:block; margin: 0 auto; overflow: hidden;}
	
	
	#subnav {
		margin-bottom: 20px;
	}
	
	#logos {
		text-align: center;
	}
	
	#sitemap {
		margin-bottom: 20px;
	}
	
	#sitemap > li {padding: 0;}
	#copyright, #siteby {
		text-align: center;
	}
	
	.hide-on-mobile {
		display: none;
		visibility: hidden;
	}
	
	.welcometext-inner {
		padding-right: 0px;
	}
	
}

/* =============================================================================
   Less than 480px
   ========================================================================== */
@media only screen and (max-width: 479px) {

	#sitemap > li {width: 50%;}
	
}