/* Core assumptions - Default declarations we almost never want to change */

object {outline:none} /* eliminate the outline around a clicked flash piece */
a img { border: none;} /* do people really want borders with the default outline color around their images? I don't think so */
form { margin: 0; padding: 0;} /* these never render a consistent magin/padding across browsers */

/* General Typography */
body {
    font-family: "Arial", Verdana, sans-serif;
    color: #4D4D4D;
    font-size: 0.75em; /* 12px */
    background: #000;
}

a {
    text-decoration: none;
    font-weight: normal;
}
a:hover {
    text-decoration: underline;
}

h1 {
    color: black;
    font-weight: normal;
    font-size: 1.5em; /* ~22px */
    margin: 0 0 0.72em;
}
h1.categorized {
    margin: 0 0 0.25em;
}

h2 {
    font-weight: bold;
    color: #5d5d5d;
    letter-spacing: 0.5px; /* */
    font-size: 1.5em; /* ~14px */
    margin: 0 0 0.5em;
/*    line-height: 1.8em; /* 17px */
}

h3 {
    font-weight: bold;
    font-size: 1.0em; /* 12px */
    color: #333333;
}

p {
    font-size: 1.0em; /* 12px */
    line-height: 1.25em; /* 15px */
    margin: 12px 0;
}

input {
    font-size: 1.0em;
}
/* we almost always want the input and submit fields to align properly, so keep vertical-align a default */
input.field {
    border: 0;
    padding: 1px 5px;
    height: 17px;
    line-height: 17px;
    vertical-align: middle;
}
input.submit {
    vertical-align: middle;
}

.link1, .titlelink {
    font-size: 1.0em; /* 12px */
}
.link2, .titlelink2 {
    font-size: 1.17em; /* ~14px */
}
.titlelink, .titlelink2 {
    text-decoration: none !important;
}

input.inactive {
    color: #ABABAB;
}

/* Layout Declarations */
body {
    margin: 0; padding: 0;
}
div#container {
    width: 960px;
    /*border: 1px solid #888;*/
    margin: 0 auto;
}

#header {
    vertical-align: middle;
    margin: 0px auto;
    background: #021825 url("/static/images/style/webcube_header_bg.jpg") no-repeat 50% 0;
    height: 165px;
    min-width: 960px;
}

#header img { display: block; }

#imgheader { clear: left; }

#header ul {
    z-index: 150;
}

#header div#searchbox {
    height: 20px;
    top: 35px;
    right: 0;
    position: absolute;
    vertical-align: middle;
}

#logo_link, #login_link {
    display: block;
    margin-top: 5px;
}

#login_link { float: right; padding: 0; margin: 5px 0 0;
    height: 20px;
    width: 189px;
}
#login_link img { padding: 0; }
#logo_link { float: left;}

#toplinks {
    top: 35px;
    right: 0;
    position: absolute;
    vertical-align: middle;
}

#toplinks ul {
    list-style-type: none;
    margin: 0px -5px 0px 0px;
}

#toplinks a {
    color: #fff;
    font-weight: normal;
    padding: 5px;
}

#toplinks li {
    border-left: #fff 1px solid;
    color: #fff;
    float: left;
    font-size: 1.15em;
    font-weight: normal;
    margin-left: 5px;
    padding-left: 5px;
}

#toplinks li.first {
    border-left: 0px;
    margin-left: 0px;
    padding-left: 0px;
}

/*#searchbox form {
    vertical-align: middle;
}
#searchbox input.field {
    width: 125px;
} */

#search {
    float: right;
}

#search input.submit {
    margin: 0px;
    margin-left: 3px;
    vertical-align: middle;
}

#search input.field {
    border: #dadada 2px solid;
    color: #6c6c6c;
    font-size: 1.1em;
    margin: 0px;
    padding: 7px;
    vertical-align: top;
    width: 228px;
}

/* titles for pages like News, About, Contact etc that use images as titles. */

#imgtitle { clear: left; height: 31px; top: 2em; position: relative; color: transparent; }
#imgtitle a { color: transparent; display: block; height: 31px; position: relative; overflow: hidden; }
#imgtitle a span { position: absolute; left: 500%; }


/* top navigation */

#nav {
    float: right;
    clear: right;
    margin-top: 13px;
    height: 26px;
    list-style: none;
    z-index: 200;
}

#nav li.daddy {
    display: block;
    height: 26px;
    float: left;
    margin: 0 1em;
    padding-left: 6px;
}

#aboutmenu li a {
    padding: 0 1em;
}


#nav li.daddy a {
    display: block;
    padding-right: 6px;
    height: 26px;
    color: #fff;
    font-weight: bold;
    line-height: 2em;
}

#nav li.daddy:hover {
    background: transparent url("/static/images/style/nav_rollover_leftcap.png")
                no-repeat scroll 0 50%;
}

#nav li.daddy:hover > a {
    background: transparent url("/static/images/style/nav_rollover_right.png")
                no-repeat scroll 100% 50%;
    text-decoration: none;
}

#nav li.daddy ul {
    display: none;
    position: absolute;
    padding: 0;
    padding-top: 18px;
    list-style: none;
    margin-left: -6px;
    width: 200px;
}

li#aboutmenu.daddy ul {
    width: 150px;
}

li#aboutmenu.daddy ul li a {
    padding-left: 1.5em;
}

#nav li.daddy ul li {
    width: 100%;
}

#nav li.daddy li a {
    background: #000 url("/static/images/style/dropdown_bg.png")
                repeat-x scroll;
    height: 46px;
    line-height: 46px;
    padding: 0 10px;
    border-bottom: 1px solid #1b262c;
    border-left: 1px solid #1b262c;
    border-right: 1px solid #1b262c;
    width: 100%;
}

/*#nav li.daddy ul li a span {
    margin-top: -10em;
}*/

#nav li.daddy li a:hover {
    text-decoration: none;
    background: #0e387c url("/static/images/style/dropdown_bg_highlight.png")
                repeat-x scroll;
    border-left: 1px solid #3d68ac;
    border-right: 1px solid #3d68ac;
}

#nav img {
    float: left;
    margin-top: 7px;
    margin-right: 1em;
}



#nav li.daddy > ul { top: auto; left: auto; }
#nav li.daddy:hover ul { display: block; }

/* use hormenu class for a generic horizontal menu, then override your menu with specific id declarations */
.hormenu, .hormenu * {
    margin:0;
    padding:0;
}
.hormenu li {
    display:block;
    float:left;
    margin:0px 5px;
    padding:0;
    list-style-image:none;
    list-style-position:outside;
    list-style-type:none;
    position: relative;
}
.hormenu li.first {
    margin-left: 0px;
}


#main_menu {
    /*float:left;*/
    list-style-image:none;
    list-style-position:outside;
    list-style-type:none;
    margin:0;
    padding:0;
}
#main_menu li {
    margin: 0;
}

#main_menu li a {
    font-size:14px;
    font-weight:normal;
    margin: 0;
    padding:7px 17px;
    text-decoration:none;
    line-height:30px;
}

/* content declarations */
#content {
    margin: 0;
    padding: 40px 0 20px;
    background: #fff url("/media/content-gradient.png") repeat-x;
}

#features {
    border-top: 1px solid #c4c4c4;
    border-bottom: 1px solid #c4c4c4;
    padding-top: .5em;
    padding-bottom: .5em;
    margin-bottom: 1em;
}

h1 {
    color: #0a377b;
    font-weight: bold;
    line-height: 1.5em;
}

.sidebar {
    width: 332px;
    float: left;
}
.sidebar .home_link {
    padding: 10px 0;
}
.sidebar ul, .sidebar ol {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.category_navbar ul {
    padding: 0;
    margin: 0 0 10px 0;
    list-style-type: none;
    /*width: auto;*/
    /*overflow: auto;*/
    height: 1.2em;
}
.category_navbar li {
    float: left;
    padding: 0 7px;
    border-left: 1px solid #4D4D4D;
}
.category_navbar li.first {
    border-left: none;
    padding-left: 0;
}
.category_navbar li a {
    color: #4D4D4D;
}
.rss_sidebar h1 { /* if the sidebar has a RSS feed icon, apply .rss_sidebar to the sidebar div, then add a <div class="rss"> with the rss icon after the desired h1 tag */
    display: inline;
    float: left;
}
.rss_sidebar .rss {
    width: 16px;
    height: 16px;
    float: right;
    padding: 5px 0 0 5px;
}
.rss_sidebar ul, .rss_sidebar ol {
    clear: left;
}
.content_body {
    margin-left: 240px;
    padding-left: 30px;
}
.pager {
    margin-bottom: 10px;
    text-align: right;
}
.pager a {
    font-weight: normal;
    color: #4d4d4d;
}


/* footer declarations */
#footer {
    position: absolute;
    padding: 15px 0;
    font-size: 0.92em;
    vertical-align: middle;
    background: black url("/static/images/style/footer_bg.jpg") no-repeat 50% 0;
}

#footer_product_links { text-align: center; }

#footer_product_links img { padding: 0 35px 2em; }

/*#email_signup {
    float: left;
}

#email_signup input {
    margin-left: 5px;
}

#email_field input.field {
    vertical-align: top;
}

#email_signup input.submit {
    vertical-align: middle;
}*/

#footer_links li a {
    display: inline;
    color: #4876cb;
}

#footer_links li a:hover {
    color: #d5edf7;
    padding-bottom: inherit;
}
/*
#footer_menu {
    padding-top: 3px;
    text-align: right;
}

#footer_menu li {
    border-left:1px solid #333;
    margin: 0;
    padding: 0 10px;
    vertical-align: middle;
}

#footer_menu li.first {
    border-left:none;
}

#footer_menu li a {
    color: #333;
    font-weight: normal;
}*/
#footer_text {
    float: right;
}
/*#page_views {
    position: absolute;
    top: 45px;
    right: 0;
}*/

/* Miscellaneous */
.clear {
    clear: both;
    font-size: 12px;
}
.note {
    font-size: 8pt;
    font-style: italic;
}
.wrapper {
width: 960px;
margin: 0 auto;
}

hr {
    width: 80%;
    border: none;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #fff;
    margin: 1em auto;
}

.fix_ie_img { display: block !important; margin-bottom: 0 !important; padding-bottom: 0 !important; }

/* CLEAR FIX*/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

.aside-top,
.aside-bottom,
.aside-body {
	box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-khtml-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.aside-top, .aside-bottom {
	background-repeat: no-repeat;
	height: 17px;
	width: 262px;
}
.aside-top {
	background-image: url('/static/images/style/aside-top.png');
}
.aside-bottom {
	background-image: url('/static/images/style/aside-bottom.png');
	margin-bottom: 20px;
}
.aside-body {
	background-image: url('/static/images/style/aside-body.png');
	background-repeat: repeat-y;
	padding: 0 15px;
	width: 262px;
}