/* For modern browsers */
.clearfix:before,
.clearfix:after {
    content:"";
    display:table;
}
.clearfix:after {
    clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.clearfix {
    zoom:1;
}

.profileBar
{
    background-color: White; 
    padding: 6px; 
    text-align: right; 
    border: solid 1px black;
    border-top: none;
    margin-bottom: 0;
}

#Body 
{
	font-family: "century gothic", Arial, Helvetica, sans-serif;
	font-size: 15px; 
	color: #685f5f;	
	background-repeat: repeat-y;
	background-position: center top;
	background-image: none;
	background-color: #f7f9f8;    
    background-image: url(images/vesta-gradient.png);
}

#homepage 
{
    background-color: #f7f9f8;
    background-image: url(images/vesta-gradient.png);
}

#logo {
	margin-top: 10px;
	max-width: 100%;
	float: left;
}

#logo img {
	max-width: 100%;
	display: block;
}

html {
	overflow-y: scroll;
}

img 
{
    border: none;
}

.pageSection 
{
	margin: 0 auto 0 auto;			
	background-color: #fff;
}

.pageBorder 
{
	
	/*border: solid 1px black;*/
}

.headerOuter 
{
    background-color: #fff;
}

.headerSection 
{
    text-align: left;
	position: relative;
	width: 100%;
	padding: 10px 0;
}

.menuSection 
{
    background-image: url(images/menu-background.png);
    background-repeat: repeat-x;
    background-position: center top;
}

.featureSection 
{
    background-color: #0b2e80;
    background-image: url(images/vesta-gradient.png);
    background-repeat: repeat-y;
    background-position: center top;
}

.featurePane {
	height: auto;
}

.featurePane img {
	max-width: 100%;
}

.featurePane img 
{
    display: block;
}

.featurePanePhoto 
{
    width: 377px;
    height: 250px;
    overflow: hidden;
    float: left;
}

.featurePanePhoto p 
{
    margin: 0 !important;
    padding: 0 !important;
    background-color: #0b2e80;
}

.featurePaneText 
{
    width: 553px;
    height: 220px;
    overflow: hidden;
    background-color: #0b2e80;
    color: #ffffff;     
    line-height: 1.24;
    padding-left: 30px;
    padding-top: 30px;
    font-weight: bold;
    letter-spacing: -0.2px;
    margin-bottom: 0;
    float: left;
}

.featurePaneText p 
{
    font-size: 18px;   
}

.featurePaneText .contentQuote
{
    font-size: 30px;
    font-weight: normal;
    color: #ffffff;
}

.featurePaneText .contentQuote b, .featurePaneText .contentQuote strong 
{
    color: #ffffff;
}

.featureSection 
{
    position: relative;
}

.featurePaneArrow 
{
    background-image: url(images/feature-arrow.png);
    width: 32px;
    height: 34px;
    padding: 0;
    margin: 0;
    z-index: 4;
    position: absolute;
    left: 345px;
    top: 154px;
}

.pageWidth 
{
	max-width: 960px; /* Page width */
	margin: 0 auto;
	min-width: 300px;
}

.pageWidthPlus {
	max-width: 980px; /* Page width + 20 */
	margin: 0 auto;
}

.contentSection 
{
	line-height:1.5;
	padding: 20px;
}

.toolBar 
{
    padding: 15px 0 15px 0;
}

.contentPane, .topPane, .bottomPane
{
	padding-top: 0;
}

.contentPane 
{
    padding: 0;
}

.leftPane 
{    
    padding-right: 20px;
}

.leftPane .dnn_LeftPane 
{
    padding-left: 20px;
}

.rightPane 
{
    padding-left: 20px;
}

.bottomPane 
{
    padding: 0 20px;
}

.lowerTripleLeftPane 
{
    padding: 0 10px 20px 20px;
    width: 300px;
}

.lowerTripleMiddlePane 
{
    padding: 0 0 20px 0;
}

.lowerTripleRightPane 
{
    padding: 0 20px 20px 10px;
    width: 300px;
}

.searchBoxSection 
{
display: none;
    float: right;
    border: solid 1px #d6d6d6;
    padding: 6px 12px 6px 28px;
    border-radius: 10px;
    background-image: url(images/search-icon.png);
    background-position: 10px center;
    background-repeat: no-repeat;
    margin-top: 0;
    margin-right: 0;
}

.searchBoxSection input 
{
    border: solid 1px #cccccc;
    padding: 3px;
    margin-right: 5px;
}

.searchBoxSection a:link, .searchBoxSection a:active, .searchBoxSection a:visited
{
	color: #1859ad;
	text-decoration: none;
	font-size: 14px;
	font-weight: normal;
}

.searchBoxSection a:hover 
{
	color: #1859ad;
	text-decoration: underline;
	font-size: 14px;
	font-weight: normal;
}

.login 
{
	display: none;
}

.contentPane tr 
{
    vertical-align: top;
}

.leftPane
{
	width: 300px;
}

.rightPane
{
	width: 300px;
}

img,
textarea,
img,
input,
select,
iframe,
.dnnFormItem,
.dnnTextPanel{
	max-width: 100%;
}

.ModDNNHTMLC img {
	max-width: 100%;
}

/*================================*/

h1, .contentSection h1 a { 
	font-family: "century gothic", Arial, Helvetica, sans-serif;
	font-size: 26px; 
	font-weight: normal; 
	color: #0b2e80;
	margin-top: 0;
}

h2, .contentSection h2 a {
	font-family: "century gothic", Arial, Helvetica, sans-serif;
	font-size: 22px; 
	font-weight: normal; 
	color: #0b2e80;
	margin-bottom: 0;
	margin-top: 0;	
}

h3, .contentSection h3 a {
	font-family: "century gothic", Arial, Helvetica, sans-serif;
	font-size: 16px; 
	font-weight: normal; 
	color: #0b2e80;
	margin-bottom: 12px;
	margin-top: 0;
}

h4, .contentSection h4 a {
	font-family: "century gothic", Arial, Helvetica, sans-serif;
	font-size: 15px; 
	font-weight: normal; 
	color: #0b2e80;
	margin-bottom: 12px;
	margin-top: 0;
}

ul li 
{
    list-style-type: disc;
}

ol li 
{
    list-style-type: decimal;
}

.mainContentZone p, .mainContentZone li 
{
}

.mainContentZone p 
{
	margin-top: 0;
	margin-bottom: 18px;	
}

.mainContentZone p b, .mainContentZone p strong 
{
    color: #0b2e80;
}

ul, li, li a 
{
    outline: none !important;
}

.contentSection a {
 	color: #0b2e80;
 	text-decoration: underline;
}
.contentSection a:visited {
 	color: #0b2e80;
}
.contentSection a:hover {
	color: #1859AD;
	text-decoration: underline;
}

hr {
	height: 0;
	border: 0;
	border-top: 1px solid #cccfcc; 
	margin: 16px 0;
}

.contactDetailsBlock {
	width: 730px;
}


.Normal,
.NormalBold,
.SubHead
{
    text-align: left;
    font-family: inherit;
    font-size: inherit;
}

.FCKLinkGalleryContainer, .FCKImageGalleryContainer {
    background-color: #ffffff;
}

/* Products */

.productDetail
{
    background-color: #f2f9fa;
}

.productList 
{
    background-color: #f2f9fa;    
}

.productList td, .productDetail td
{
    padding: 9px;
}

.productList p, .productDetail p
{
    font-size: 12px;
}

.productList td.productListDetail 
{
    padding-left: 0;
}

.productPhoto 
{
    width: 298px;
    border: solid 1px #c4e8f3;
}

.productThumbnail 
{
    width: 118px;
    border: solid 1px #c4e8f3;
}

.noProductPhotoThumbnail 
{
    width: 116px;
    height: 90px;
    background-color: #f3f3f3;
    border: solid 1px #dddddd;
}

a.selectedCategoryListItem:link , a.selectedCategoryListItem:visited, a.selectedCategoryListItem:active, a.selectedCategoryListItem:hover
{    
    background-image: url(images/selected-product-category-item.gif);
    background-repeat: no-repeat;
    background-position: 0px 6px;
    padding-left: 9px;
}
a.selectedCategoryListItem:link , a.selectedCategoryListItem:visited, a.selectedCategoryListItem:active 
{
    color: #3b53a4 !important;       
}
/* Products End */

.DNNEmptyPane {display: none;}

.specialContainerText 
{
    font-size: 30px;
    font-weight: bold;
}

.CommandButton 
{
    margin-right: 5px;
}

/*Contact Page */

.FormsContent table 
{
    float: none !important;
}

.captchaText 
{
    margin-left: 84px;
    width: 240px;
    font-size: 13px;
}

.contactContentPane 
{
    padding-right: 20px;
    padding-left: 20px;
}

.contactFormPane 
{
    border-left: solid 1px #0b2e80;
    padding-right: 20px;
    padding-left: 20px;
}

.contactFormPane .containerWidth {
    width: 400px;
	max-width: 100%;
}

.contactFormPane .UDT_Input input
{
    width: 250px;
}
.contactFormPane .UDT_Input textarea 
{
    width: 350px;
}

.contactFormPane .SubHead, .contactFormPane A.CommandButton:link
{
    font-family: "century gothic", Arial, Helvetica, sans-serif;
    font-size: inherit;
    color: inherit;
    font-weight: normal;
}

.contactFormPane .SubHead 
{
    display: block;
    margin-top: 5px;
}

.contactFormPane A.CommandButton:link {
    color: #0b2e80;
}

.contactFormPane A.CommandButton:hover 
{
    color: #1859AD;
}

.requiredField 
{
    font-size: 11px;
    padding: 10px 0;
}

#SaveForm 
{
    padding-left: 75px;
}

#SaveForm input
{
    width: 80px;
}

.footerOuter 
{   
    
}

#footerSection 
{
    padding: 10px 0 20px 0;
    max-width: 960px;
    clear: both;
    padding-bottom: 10px;
    background-color: #fff;
}

#footerLinks 
{
    float: right;
    text-align: right;
    font-size: 12px;
}

#footerLinks a:link,  #footerLinks a:active, #footerLinks a:visited, #footerLinks a:hover
{
    color: #383838 !important;
}


.copyright
{
    font-size: 12px;
}

.footerLinksPane,
#geekfreeFooter 
{
    font-size: 9pt;
    color: #4767b3 !important;    
    padding: 0;
	max-width: 960px;
	margin: 0 auto;
}

#geekfreeFooter a,
.footerLinksPane a 
{
    color: #4767b3 !important;
}

.footerLinksPane 
{
    margin: 20px 0 0 0;
    clear: both;
}

#footerLinksSection {
	background-color: transparent;
}

#geekfreeFooter 
{
    border-top: solid 1px #4767b3;
    padding-top: 10px;    
    clear: both;
    padding-bottom: 50px;
    background-color: transparent;
    margin-top: 20px;
}

#additionalLinks 
{
    float: right;
    text-align: right;
}


/* MENU */
.navContainer 
{
	/*background-image: url(images/menu-back.gif);*/
	margin: 0;
	padding: 0;
	
}

.navRootOuter 
{
	background-image: url(images/menu-background.png);
	background-repeat: repeat-x;
	padding-left: 0;
	height: 46px;
}
.navRootInner
{
	/*background-image: url(images/menu-right.gif);*/
	background-repeat: no-repeat;
	background-position: right top;
	padding-right: 0;
}
.navContainer .MainMenu_MenuContainer 
{
	background-color: Transparent;
	width:auto;
}

.navContainer ul 
{
	padding-left: 0px;
	margin: 0;
	position: relative;
	zoom: 1;
}

.navContainer ul li  
{
	list-style-image: none;
	list-style-type: none; 
	position: relative;	
}

/* Top Level Menu Defaults */
.nav_root 
{
	padding-left: 10px;    
}

li.nav_rootItem
 {      
	background-image: url(images/menu-background.png);
    text-align: center; 
	float: left;
	font-size: 15px;
	font-weight: normal;	
	text-align:center;
	border: none;
	font-family: "century gothic", Arial, Helvetica, sans-serif;
	display: block !important;
	cursor: pointer;
	/*IE Fix*/
	zoom: 1;
	background-position: -1000px 0; /*Hide background image, redisplayed in media queries */
	background-repeat: repeat-x;

 }
 
.nav_rootItem a:link,  .nav_rootItem a:visited, .nav_rootItem a:active, .nav_rootItem a:hover
{
    float: left;
    display: block;	    
    cursor: pointer;    
    *zoom:1;   
    text-decoration: none;
    outline: none;
    color: #ffffff;
	background-repeat: no-repeat;
	background-position: center top;
	padding: 15px 30px 0 30px;
	height: 31px;	
	text-transform: uppercase;
}

/* Top Level Menu, Current Page */
.nav_rootCurrent a
{
    background-image: url(images/menu-current-page.png);
}

 /* Top Level Menu On Hover */
.nav_rootHover a
{
    color: #ffff99 !important;
}


/* Drop-Down Menu Region */
.nav_subMenu 
{	
	margin-top: 0px;
	z-index: 9999999;	
	cursor: pointer;
	text-align: left;

	background-color: #fff;
	color: #ffffff;
	border: solid 1px #061a48;	
	border-bottom: none;
	padding: 0;
}

/* Drop-Down Menu Defaults */
.nav_subMenu li {    	    
	margin: 0px;	
	text-align: left;
	vertical-align: middle;
	font-weight: normal;	
	/*font-size: 10px;	*/
	color: #000;
	font-family: Arial, Helvetica, Sans-Serif;
	padding: 8px 10px;
	border: 0;   
	cursor: pointer;
	border-bottom: solid 1px #061a48;		
	display: block;
	width: 180px;
}

.nav_subMenu img     	    
{
	padding-right: 5px;
}

.nav_subMenu li a
{
	text-decoration: none !important;
	outline: none;
	display: block;
	color: #0b2e80;
}

/* Drop-Down Menu On Hover */
.nav_subItemHover {    
	background-color: #0b2e80;	
}

.nav_subMenu li.nav_subItemHover a 
{
    color: #fff;
}

/* Drop-Down Menu, Current Page */
.nav_subItemCurrent 
{
}

/* Drop-Down Menu Seperator */
.nav_horizontal_Section .MainMenu_MenuBreak { 
	border: transparent 0px solid;
	background-color: transparent;
	height: 1px;
}

/* Side Navigation */

.subNav 
{
    width: 200px;
}

.subNavHeading 
{
    color: #0E5BA9;
    font-size: 16px;
    padding-top: 40px;
    padding-bottom: 2px;
}

.subNav ul 
{
    margin: 0;
    padding: 0;
}

.subNav li.root 
{
    margin: 0;    
    background-image: url(images/menu-background.png);
	background-position: 0 -1000px; /*Hide background image, redisplayed in media queries */
	background-repeat: repeat-x;	
}

.subNav li.root a 
{
	padding: 8px 0 8px 25px;    
	display: block;
    color: #333333;
    text-decoration: none;
}

.subNav li.navLinkSelected a
{
    background-image: url(images/vertnavarrow-charcoal.gif);
    background-position: left 5px;
    background-repeat: no-repeat;    
}

.subNav li.navLinkSelected a 
{
    color: #0E5ba9;
}

.freeGuideTitle 
{
    position: relative;
}

.freeBadge 
{
    position: absolute;
    left: -27px;
    top: -10px;
    z-index: 1000;
}

.homepageArticleSection 
{
    clear: both;
    text-align: left;
}

.homepageArticleSection h1 
{
    text-align: left;
    margin-bottom: 5px;
}

.homepageArticleSection h3 
{
    
}

.homepageArticleSectionEnd 
{
    clear: both;
    padding-bottom: 20px;
}

.homepageArticleList h3 
{
}

.homepageArticleList .articleItem 
{
    float: left;
    width: 280px;
    margin-right: 20px;
}

.headerPane 
{
    float: right;
    margin-top: 4em;
	margin-bottom: 0.5em;
}

.post-header 
{
    height: auto !important;
    margin-bottom: 20px;
    padding-left: 0 !important;
    background-image: none !important;
}

.footerNav {
	color: #383838;
	text-align: right;
	padding: 20px 20px 0 20px;
	font-size: 12px;
	line-height: 1.8;
}

.footerNav a 
{
    color: #383838;
	font-weight: normal;
	text-transform: uppercase;
	display: inline-block;
	padding: 0 10px;
	border-right: solid 1px #bbb;
}

.footerNav a:last-child {
	border: none;
}


.contactFormPane a.UDT_Default {
color: #fff !important;
text-decoration: none;
border-radius: 5px;
padding: 5px 15px!important;
border: none !important;
}

.contactFormPane a.UDT_Default:hover {
	background-color: #1b5ec0 !important;
}

.contactFormPane .UDT_Buttons {
	margin-top: 10px;
}


/* Responsive home link */
.responsiveHome {
	margin: 0 20px;
	background-color: #222222;
	text-align: center;
	border-radius: 5px;
	display: none;
	
	background-repeat: repeat-x;
	background-image: url(images/menu-background.png);
	
	text-decoration: none;
	line-height: 1;
	outline: none;
	color: #ffffff;
	background-position: center top;
	padding: 15px 10px 0 10px;
	height: 31px;	
	text-transform: uppercase;
	font-size: 18px;
}


.responsiveHome a.responsiveHomeBack {
	float: left;
	display: block;
	text-align: left;
	color: #fff;
	height: 25px;
	width: 25px;
	background-color: #222;
	background-repeat: no-repeat;
	border: solid 1px #aaa;
	position: relative;
	top: -5px;
	border-radius: 4px;
	background-image: url(images/back.png);
	background-position: center center;	
}

.responsiveHome a.responsiveHomeRoot {
	text-align: right;
	float: right;
	display: block;
	height: 25px;
	width: 25px;
	background-color: #222;
	background-repeat: no-repeat;
	border: solid 1px #aaa;
	position: relative;
	top: -5px;
	border-radius: 4px;
	background-image: url(images/home.png);
	background-position: center center;
}


.responsiveHome a.responsiveHomeRoot:hover,
.responsiveHome a.responsiveHomeBack:hover {
	text-decoration: none;
	background-color: #444;
}


.mobileMenu  {
	clear: both;
	display: none;
}

.mobileMenu .mobileMenuActivatorButton {
	width: 100%;
	text-indent: 30px;
	padding: 12px 0;
	background-color: #222;
	color: #fff;
	text-decoration: none;
	border-bottom: solid 1px #555;
	text-transform: uppercase;
	cursor: pointer;
	font-weight: bold;
}

.mobileMenu > div > ul {
	display: none;
	clear: both;
	margin: 0;
	padding: 0;
}

.mobileMenu ul ul,
.mobileMenu li,
.mobileMenu a {
	display: block;
	margin: 0;
	padding: 0;
}

.mobileMenu a {
	width: 100%;
	text-indent: 30px;
	padding: 12px 0;
	background-color: #333;
	color: #fff;
	text-decoration: none;
	border-bottom: solid 1px #555;
}

.mobileMenu a:hover {
	background-color: #444;
}

.mobileMenu ul ul a {
	text-indent: 60px;
	font-size: 0.9em;
}


/* RESPONSIVE */
@media screen and (max-width: 959px) {

	.mobileMenu {
		display: block;
	}

	.headerPane{
		margin-right: 20px;
	}
	#logo {
		margin-left: 20px;
	}
	
	#logo img {
		max-width: 90%;
	}
	
	.geekspeakLink,
	.footerLinksPane 	{
		margin-left: 20px;
	}	
	
	.menuSection {
		display: none;
	}
	
	.subNav {
		display: none;
	}
}

@media screen and (max-width: 750px) {
	.contactTable,
	.contactTable>tbody,
	.contactTable>tbody>tr,
	.contactTable>tbody>tr>td,
	.contentTable,
	.contentTable>tbody,
	.contentTable>tbody>tr,
	.contentTable>tbody>tr>td	{	
		display: block;
		float: left;
		width: 100%;
	}
	
	.leftPane,
	.rightPane,
	.contactContentPane,
	.contactFormPane	{
		padding: 0;
		border: none;
	}

	.headerPane{
		margin-top: 10px;
	}
	
	.footerNav {
		margin-left: 0;
	}
	
	.footerNav a  {
		border: none;
		padding-left: 0;
	}
	
}

@media screen and (max-width: 500px) {
	#logo {
		max-width: 90%;
	}
	.headerPane {
	}
	
	.footerNav {
		text-align: left;
	}
	
	.contactContentPane iframe {
		width: 280px !important;
	}
	
	.contactFormPane .containerWidth {
		width: 280px;
	}

}

/* WW Product Categories */
@media screen and (max-width: 959px) {
	.categoryGrid .categoryGridItem {
		width: 50% !important;
	}
	.categoryGrid .categoryGridItem:nth-child(3n+1) {
		clear: none !important;
	}
	.categoryGrid .categoryGridItem:nth-child(2n+1) {
		clear: both !important;
	}
}
@media screen and (max-width: 599px) {
	.categoryGrid .categoryGridItem {
		width: 100% !important;
		float: none !important;
		margin-bottom: 2em;
	}
}
