﻿/*---------------------------------------------------------------------------


                             Framework
                           -------------

  This section styles the page framework and grid for each template.
  
  Current page templates include:
  
  		- article template (articles, collection items)
		- search result template (search result pages)
		- section page template (family and preserve pages) 


----------------------------------------------------------------------------*/


.clear {
	clear:both;
}
/* This is a bad clearfix, requiring an empty div, so look into getting rid of it */
.clear-fix {
	clear:both;
	font-size:1px;
	text-indent:-2000em;
	display: block;
	height: 1px;
}

/*#container { Used to be #container, now it's...*/
body > * {
	width: 960px;
	text-align:left;
	margin-left:auto;
	margin-right:auto;
	/*margin-top: 12px;
	margin-bottom: 50px;*/
    position: relative;
}
/* and some new friends, since with #container removed from structure the above applies to all immediate children of body... */
body > header {
    height: 85px;
    z-index: 1000;
}
body > footer {
    margin: 40px auto 50px;
}

/* Clearfix type elements, removed from structure
#idx-content-top {
	/*width:960px;
	position: relative;
	display:inline;
	z-index:1;
	width:960px;
	position: relative;
	z-index:1;
	height:63px; /*Same height as top-bar
}
#idx-content-bottom {
	width: 959px;
	padding: 0 20px 40px 20px;
	margin: 0;
	position: relative;
	float: left;
	height:1px;
}
#page-footer-links {
clear: both;
	padding: 0;
	margin: 0;
	text-align: center;
	position: relative;
}
*/

/* Branding and top interior shadow
-----------------------------------*/
#branding {
	padding: 0;
	margin: 0;
	width:980px;
	height: 85px;
	position: relative;
	z-index:20;
}
.shadow {
	position:  relative;
	float: left;
}
#cover-shadow {
	height: 30px;
	width: 959px;
	position: absolute;
	top: 0;
	left: 0;
}

/* Header and branding content
----------------*/
#logo {
	position: absolute;
	top: -8px;
	left: 5px;
}

body > header > h1 {
    text-indent: -1000em;
}

/* Header Top Links */
/* Why only for direct children? Just in case we want to change things, of course */
body > header > ul {
	list-style: none;
	position: absolute;
	right: 0;
	top: 55px;
	font-size:1.25em;
}
body > header > ul > li {
	display:inline;
	line-height:1em;
}
body > header > ul > li > a {
	color: #fff;
	padding: 0 16px 0 8px;
	text-decoration: none;
}
body > header > ul > li > a:hover, body > header > ul > li > a:focus {
	text-decoration: underline;
}
body > header > ul > li:last-child > a {
	display:inline-block;
    *zoom: 1;
    *display: inline;
	text-transform:uppercase;
	border:1px solid #dccec0;
	padding:4px 8px;
	background:none;
}

/* Footer */
/* Footer Links
-----------------------------------------------------------------------------*/
body > footer > p {
	clear:both;
	color: #e6e3d1;
	margin: -10px auto 10px auto;
	top: 40px;
	text-align:center;
}
body > footer > ul {
	clear:both;
	list-style: none;
	margin: 0 auto 50px auto;
	text-align:center;
}
body > footer > ul > li {
	display:inline;
}
body > footer > ul > li + li {
	border-left: 1px solid #a69285;
}

body > footer > ul > li > a, body > footer > ul > li > a:link, body > footer > ul > li > a:visited, body > footer > ul > li > a:active {
	color: #e6e3d1;
	padding: 0 5px 0 8px;
	text-decoration: none;
}
body > footer > ul > li > a:hover, body > footer > ul > li > a:focus {
	text-decoration: underline;
	color: #fff;
}

/* Page navigation */
body > nav {
    background-color: #003e7e;
    /*height: 72.4px;*/
    z-index: 800;
}
body > nav > * { /*div, body > nav > ul {*/
    display: inline-block;
    *zoom: 1;
    *display: inline;
}
body > nav > .major-link {
    border-color: white;
    color: white;
    margin-bottom: 8px;
    margin-left: 16px;
}
/*
#main-nav-dropdown {
    background: none repeat scroll 0 0 transparent;
    color: #FFFFFF;
    float: left;
    height: 32px;
    line-height: 32px;
    position: relative;
    width: 262px;
    z-index: 800;
}
#taskNav {
    background: none repeat scroll 0 0 transparent;
    color: #FFFFFF;
    float: left;
	margin: 0 0 0 20px;
    height: 32px;
    list-style: none outside none;
    text-decoration: none;
    width: 261px;
    z-index: 1000;
}
all of the above is combined into ...*/
body > nav > ul {
    background: none repeat scroll 0 0 transparent;
    color: #fff;
    margin-left: 20px;
    height: 32px;
    line-height: 32px;
    width: 270px;
}

.no-link-top a {
    cursor: default;
	margin:17px 0 0 40px;
}
.no-link a {
    cursor: default;
}

.switches {
    background-color: #fff;
    display: none;
    position: absolute;
    font-size: 11px;
    height: auto;
    text-align: left;
	border:5px solid #ddd;
	border-top:0;
	z-index:10;
	-moz-box-shadow: 8px 8px 8px #666;
	-webkit-box-shadow: 8px 8px 8px #666;
    box-shadow: 8px 8px 8px #666;
     /* For IE 8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=8, Direction=135, Color='#666666')";
    /* For IE 5.5 - 7 */
    filter: progid:DXImageTransform.Microsoft.Shadow(Strength=8, Direction=135, Color='#666666');
}
.switches > li {
    background-color: #fff;
}
.switches > li + li {
	border-top: 1px solid #ddd;
}

body > nav > ul ul {
    list-style-type: none;
}
body > nav > ul li {
	padding-bottom: 0;
}
body > nav > ul div ul {
    float: left;
    list-style: none outside none;
	padding: 0px;
	width:235px;/* controls width of flyout - set to line up with right edge of search box */
}
.disabled {
    display:none;
}
a.browse-button, a.browse-button:hover {
    background: #8b8f4f;
    color: #FFFFFF;
    cursor: pointer;
    padding: 8px 15px 16px;
    margin-top: 10px;
    margin-left: 25px;
    font-family: 'Oswald',sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1.4rem;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 0.05em;
}

/* [id^=flyout] grabs the lists with an id that begins with "flyout" */
body > nav > ul [id^=flyout] {
    background-color: #4b4b4b;
    color: #fff;
    display: none;
    left: 270px;  
	border:5px solid #ddd;
	border-left:1px solid #ddd;
    list-style: none outside none;
    padding: 15px 15px 15px 30px;
    position: absolute;
    top: 0;
    z-index: 300;
	-moz-box-shadow: 8px 8px 8px #666;
	-webkit-box-shadow: 8px 8px 8px #666;
    box-shadow: 8px 8px 8px #666;
     /* For IE 8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=8, Direction=135, Color='#666666')";
    /* For IE 5.5 - 7 */
    filter: progid:DXImageTransform.Microsoft.Shadow(Strength=8, Direction=135, Color='#666666');
}
body > nav > ul li:hover [id^=flyout] {
    display: block;
	background-color:#fff;
	padding-top:20px;
}
[id^=flyout] li {
	background: url('/images/site/blue-circle-arrow.png') no-repeat;
	background-position: 5px 1px;
	padding: 0px 0px 0px 25px !important;
	margin: 0px 5px 15px 0px !important;
}

#flyoutPop1 {
    margin-top: 43px;
}
#flyoutPop2 {
    margin-top: 92px;
}
#flyoutPop3 {
    margin-top: 141px;
}
#flyoutPop4 {
    margin-top: 190px;
}
#flyoutPop5 {
    margin-top: 239px;
}
#flyoutPop6 {
    margin-top: 288px;
}

.switches > li > a {
    color: #000;
    cursor: pointer;
    display: block;
    font-family: Helvetica,Arial,Sans-serif,sans-serif;
    height: 5px;
    line-height: 18px;
    padding:18px 0 25px 20px;
    text-decoration: none;
	font-size:1.3em;
	font-weight:bold;
	position:relative;
}
.switches > li > a:hover {
	background-color:#ddd;
    cursor: pointer;
	height: 5px;
	text-decoration:none !important;
}
.switches > li > a span.level-one-arrow {
        display:block;
		width: 0;
        height: 0;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        border-left: 10px solid #ccc;
		position:relative;
		top:-23px;
		right:-210px;
}
.switches > li > a:hover span.level-one-arrow {
        border-left: 10px solid #fff;
}

[id^=flyout] > li > a {
	font-weight:bold;
	font-family: Arial, Helvetica, sans-serif;
	font-size:13px;
}
[id^=flyout] > li > a:hover {
    text-decoration: underline !important;
}

body > nav > form {
    margin-top: 10px;
    margin-left: 16px;
    padding: 8px 8px 13px;
    background: white;
    /*height: 43px;
    width: 412px;*/
}

body > nav > form > [type=text] {
    width: 300px;
    padding: 5px 15px 0;
    color: #666;
    font-size: 1.2rem;
    line-height: 1.6rem;
    border: 1px solid #9e9e9e;
    /*border-top: 1px solid #e4e4e4;
    border-left: 1px solid #e4e4e4;
    border-right: 1px solid #9e9e9e;
    border-bottom: 1px solid #9e9e9e;*/
    }

body > nav > form > .help-button {
    background: url('/images/site/help-button.gif') no-repeat 0 0 transparent;
    display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
    margin-top: 4px;
    margin-left: -1px;
    width: 31px;
    height: 29px;
    padding: 4px 0 0 0px;
    outline: none;
    border: none;
    color: #fff;
    font-family: Helvetica,Arial,Sans-serif,sans-serif;
    letter-spacing: -0.02em;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.6em;
    text-indent: -1000em;
    cursor: pointer;
}
body > nav > form > .help-button:hover {
    background-position: 0 -33px;
}

body > nav > .events-button {
    background: url('/images/site/EVENTS-CALENDAR-button.gif') no-repeat 0 0 transparent;
    display: inline-block;
    *zoom: 1;
    *display: inline;
    width: 100px;
    height: 30px;
    margin-top: 17px;
    margin-left: -5px;
    padding: 4px 0 0 3px;
    outline: none;
    border: none;
    color: #fff;
    font-family: Helvetica,Arial,Sans-serif,sans-serif;
    letter-spacing: -0.02em;
    font-weight: bold;
    text-transform: uppercase;
    text-indent: -1000em;
    font-size: 1.6em;
    cursor: pointer;
}
body > nav > .events-button:hover {
    background-position: 0 -34px;
}

body > nav > .store-button {
    background: url('/images/site/STORE-button.gif') no-repeat 0 0 transparent;
    display: inline-block;
    *zoom: 1;
    *display: inline;
    width: 102px;
    height: 30px;
    margin-top: 17px;
    margin-left: 7px;
    padding: 4px 0 0 2px;
    outline: none;
    border: none;
    color: #fff;
    font-family: Helvetica,Arial,Sans-serif,sans-serif;
    letter-spacing: -0.02em;
    font-weight: bold;
    text-transform: uppercase;
    text-indent: -1000em;
    font-size: 1.5em;
    cursor: pointer;
}
body > nav > .store-button:hover {
    background-position: 0 -34px;
}

/*  Top banner
-----------------------------------------------------------------------------*/
#banner-elements {
	text-align:center;
    padding: 0 calc((100% - 960px) / 2);
	margin: 0 auto 12px;
	position: relative;
	height: 30px;
}
#banner-elements p {
    color:#ffffff;
    text-align:left;
    padding-top:8px;
	margin-left:12px;
	float:left;
}
/*.sites-dropdown-form { was, now...*/
#banner-elements select {
	position:absolute;
    right: 13px;
	right: calc(((100% - 960px) / 2) + 13px);
	top:4px;
    font-size: 13.333px; /* You're asking, what's this for? It returns default font size, at least for FF, GC, and IE */
}
#banner-elements a, #banner-elements a:link, #banner-elements a:hover, #banner-elements a:focus, #banner-elements a:active, #banner-elements a:visited {
    color:#ffffff;
	font-weight:bold;
	text-decoration:underline;
}
#forward { /* FORWARD link */
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0px;
	right: -40px;
}
/* Accessiblity: Skip Navigation Link styles
---------------------------------------------------------------------------*/
#skip a, #skip a:hover, #skip a:visited {
	position:absolute;
	left:0px;
	top:-500px;
	width:1px;
	height:1px;
	overflow:hidden;
}
#skip a:active, #skip a:focus {
	position:static;
	width:auto;
	height:auto;
}

/* Content grid boxes for various pages
----------------------------------*/
/*#content { was, now... */
body > section {
	background-color:#fff;
	position: relative;
	z-index:0;
	overflow:hidden;
}
/*body > aside {
	background-color:#fff;
	position: relative;
	z-index:0;
	float:left;
	overflow:hidden;
	box-shadow: 0 0 8px 8px #5B4025;
}*/
/* Ignore box shadows for now
body > section:before, body > aside:before {
    box-shadow: -8px 0 8px 8px #5B4025 inset;
    content: " ";
    height: 100%;
    left: -8px;
    position: absolute;
    top: 0;
    width: 8px;
}
body > section:after, body > aside:after {
    box-shadow: -8px 0 8px -8px #5B4025 inset;
    content: " ";
    height: 100%;
    right: -8px;
    position: absolute;
    top: 0;
    width: 8px;
}*/


#content-wrapper-wide {
	margin:20px 40px 40px 40px;
	padding:20px 0px;
}
#content-wrapper-article {
	border-top:solid 1px #ccc;
	border-bottom:solid 1px #bbb;
	width:910px;
	margin:20px 20px 20px 20px;
	padding:0;
	float:left;
	position:relative;
	left:5px;
	overflow:hidden;
}
#content-wrapper-serp, #content-wrapper-category {
	width:930px;
	margin:13px 0px 0px 20px;
	padding:0;
	float:left;
	position:relative;
	left:5px;
}
#content-wrapper-category ul.dim-list {
	margin-top:0;
}
.category-heading {
	float:left;
	margin-top:20px;
	margin-bottom:10px;
}
.content-box-large {
	float: left;
	display: block;
	width: 640px;
	margin: 0;
	padding: 0;
}
.right-nav-box {
    float: right;
	display: block;
	width: 200px;
	margin: 0;
	padding: 0;
	min-height:900px; /* Fits membership content - this will need to change. Need to research a fix for the IE 7 padding bug with previous approach - 29px left padding to overlap line. */
}
.bottom-nav-box {  
	float:left;
	display: block;
	width: 622px;
	margin: 0 0 0 0px;
	padding: 0 0 20px 40px;
}
.share-utility-box {
	float: left;
	display: block;
	width: 640px;
	margin: 0 0 15px 0px;
	padding: 5px 0 5px 0;
	border-top:1px dotted #ccc;
	border-bottom:1px dotted #ccc;
}
div.share-utility-box + p {
	clear:both;
}
#content-wrapper-wide .share-utility-box {
	float: left;
}

.article-side-bar {
    position: relative;
	border-top:solid 1px #ccc;
	border-bottom:solid 1px #bbb;
    height: 100%;
    right: 25px;
}
.container .article-content-holder {
	width:680px; /* This width is for the CMS Preview. */
}
.results-list {
	display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
	width: 640px;
	border: 1px solid #ccc;
	margin-left: 18px;
	margin-top: 5px; /* was set at 17px, adjusted when removed old search tips message. */
}
.guided-navigation {
    display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
    width: 260px;
    margin-left: 20px;
    margin-top: 5px;
}
.search-questions {
    width: 640px;
    margin: 16px 0 20px 302px;
    border: 1px solid #929496;
}
.search-questions > h1.help {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 0;
    font-weight: bold;
    line-height: 34px;
    line-height: 2.125rem;
    text-transform: none;
    color: #fff;
}
.search-questions > p {
    margin-left: 20px;
}

hr {
	border:0;
	background-color:#ccc;
	text-align:left;
	height:1px;
	margin: 20px 0;
}

.w640 {
	width:640px;
	/*max-width:640px !important; messes up video on About page...*/
}
/* SECTION CARTRIDGE ADD-ON: dark (creates a grey background with white text)
--------------- */
.dark {
	background-color:#5c5c5c;
	color:#fff;
}
.dark a, .dark a:link, .dark a:visited, .dark a:hover, .dark a:focus, .dark a:active {
	color: #fff !important;
	font-weight:bold;
}
.dark p, .dark h2 {
	color: #fff !important;
}
.right-related div.record-description p {
	display:none;
}

/* SECTION CARTRIDGE ADD-ONS: Remove default border, remove default background
--------------*/
.no-border {
	border:none !important;
	padding:0px 1px !important;
	margin-bottom:15px !important;
}

/* Hides aspects that are on the page for accessiblity reasons
------------------- */
.structural {
    position:absolute;
    left:-9999px;
}


/* carouFredSel styles
----------------------------------------*/

.image_carousel {
	position: relative;
	clear:both;
}
.image_carousel ul {
	margin:0;
	padding:0;
}
.image_carousel li {
	background-color: white;
	padding: 0;
	margin:0;
	display: block;
	float: left;
}
.section-cartridge .image_carousel {
	width:340px;
	float:right;
	margin-left:20px;
}
.section-cartridge .image_carousel li {
	background-color: transparent;
}
/*.section-cartridge li a[href^="http://"] {  Removed to allow outside links in cartridges to have the external link icon.
	background:none !important;
}*/
div.image_carousel ul#property li a {
	background:none !important;	
    padding-right: 13px;
}
div.article-content-holder .image_carousel li, div#content-wrapper-wide .image_carousel li, body.mceContentBody .image_carousel li {
	padding-bottom:20px;
	background-color:transparent;
}
.image_carousel img {
	border: 1px solid #ccc;
}
.image_carousel li p {
	padding: 0 0 0 9em;
	text-align:center;
	width:200px;
	height:20px;
	display: block;
	font-size:2em;
}
/* carouFredSel styles for pagination - all styles below are from plugin
----------------------------------------*/
a.prev, a.next, a.play, a.pause {
    background: url('/images/site/miscellaneous_sprite.png') no-repeat scroll 0 0 transparent;
    display: block;
    height: 60px;
    position: absolute;
    width: 60px;
}
a.prev, a.next {
    top: 35px;
}
a.play, a.pause {
    left: 50%;
    margin-left: -22px;
    top: 185px;
    z-index: 200;
}
a.next {
    right: -12px;
	background-position: -80px -24px;
}
a.prev {
    left: -20px;
	background-position: -15px -24px;
}
a.prev:hover {
    background-position: -15px -85px;
}
a.prev.disabled {
    background-position: -15px -145px !important;
    cursor: default;
}
a.next:hover {
    background-position: -80px -85px;
}
a.next.disabled {
    background-position: -80px -145px !important;
    cursor: default;
}
a.play {
    background-position: -100px 0;
}
a.play:hover {
    background-position: -100px -50px;
}
a.play.disabled {
    background-position: -100px -100px !important;
    cursor: default;
}
a.pause {
    background-position: -150px 0;
}
a.pause:hover {
    background-position: -150px -50px;
}
a.pause.disabled {
    background-position: -150px -100px !important;
    cursor: default;
}
a.prev span, a.next span, a.play span, a.pause span {
    display: none;
}


/* NHD CMS Homepage
----------------------------------------*/

.container
{
  max-width: 100%;
}
.left-div
{
	display: inline-block;
	max-width: 50%;
	text-align: left;
	padding: 30px;
	background-color: #ddd;
	border-radius: 3px;
	margin: 15px;
	vertical-align: top;
}
.right-div
{
	display: inline-block;
	max-width: 20%;
	margin: 15px;
}
----------------------------------------------------
/* NHD CMS Page Top Navigation Layout using nav 
----------------------------------------*/ 

nav
{
	-webkit-box-shadow: 0px 0px 14px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 14px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 14px 0px rgba(0,0,0,0.75);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

article.cms-article > nav > ul
{
	overflow: hidden;
	display: flex;
	list-style: none;
	margin: 0px;
	padding-top:0px;
	flex-direction: column;
	background-color: #f1f1f1;
}

article.cms-article > nav > ul li
{
    margin-bottom: 0px;
}

article.cms-article > nav > ul li a 
{
	display: block;
	color: black;
	padding: 14px 25px;
	text-transform: uppercase;
	font-size: 17px;
	border-bottom: 3px solid transparent;
}

article.cms-article > nav > ul li a:hover 
{
    border-bottom: 3px solid #003e7e;
}

article.cms-article > nav > ul li a.active 
{
    border-bottom: 3px solid #003e7e;
}

@media (min-width: 1025px) {
article.cms-article > nav > ul
{
	flex-direction: row;
	justify-content: space-between;
}

}


.accordion-toggle {
	cursor: pointer;
	padding: 5px;
	margin: 8px 0 16px 16px;
}
.accordion-content {
	display: none;
	padding: 6px 20px;
}
.accordion-content.default {
	display: block;
	padding: 6px 20px;
	}

 