article, aside, dialog, figure, footer, header, hgroup, nav, section { display: block; }
body, form, ol, ul, dl, li, dt, dd, td, th ,tr, h1, h2, h3, h4, h5, h6, p, pre, blockquote, address { margin: 0; padding: 0; }
ol, ul { list-style: none; }
img { border: 0; }
fieldset { margin: 0; padding: 0; border: 0; }
input, select, textarea { font-size: 100%; vertical-align: middle; }
table { border-collapse: collapse; border-spacing: 0; empty-cells: show; }
th { text-align: left; }
a:focus { overflow: hidden; }

body {
	font: 300 12px/1.5 'KlavikaRegular', Arial, sans-serif;
	color: #808080;
}

body.twixl, body.home {
	background: white url(body-bg-blue.png) no-repeat right top;
}

body.publisher {
	background: white url(body-bg-purple.png) no-repeat right top;
}

/*
	Typography and text styles
*/

p {
	padding-bottom: 12px;
}

strong,
th,
thead td {
	font-weight: 700;
}

/* Default titles */

h1,
h2,
h3,
h4 {
	font-family: 'KlavikaRegular', Helvetica, Arial, sans-serif;
	line-height: 1;
	font-weight: 300;
	color: #0094D4;
}

	h1 a,
	h2 a,
	h3 a,
	h4 a {
		border: 0;
	}

h1 {
	font-size: 32px;
	padding: 0 0 12px 0;
	text-transform: uppercase;
}

h2 {
	font-size: 24px;
	padding: 0 0 12px 0;
	color: #B2B2B2;
}

h3 {
	font-size: 18px;
	padding: 0 0 8px 0;
}

h4 {
	font-size: 20px;
	padding: 0 0 2px 0;
}

body.twixl h1 {
	color: #0094D4;
}

body.publisher h1 {
	color: #D52E86;
}


/* Links */

a {
	text-decoration: none;
	border-bottom: 1px solid #0095d5;
	color: #0095d5;
}

a:link {
	border-color: #0095d5;
	color: #0095d5;
}

a:visited {
	border-color: #0095d5;
	color: #0095d5;
}

a:hover,
a:active,
a:focus {
	border-color: #d52e86;
	color: #d52e86;
}

body.twixl div#main a {
	text-decoration: none;
	border-bottom: 1px solid #0095d5;
	color: #0095d5;
}

body.twixl div#main a:link {
	border-color: #0095d5;
	color: #0095d5;
}

body.twixl div#main a:visited {
	border-color: #0095d5;
	color: #0095d5;
}

body.twixl div#main a:hover,
body.twixl div#main a:active,
body.twixl div#main a:focus {
	border-color: #d52e86;
	color: #d52e86;
}

body.publisher div#main a {
	text-decoration: none;
	border-bottom: 1px solid #d52e86;
	color: #d52e86;
}

body.publisher div#main a:link {
	border-color: #d52e86;
	color: #d52e86;
}

body.publisher div#main a:visited {
	border-color: #d52e86;
	color: #d52e86;
}

body.publisher div#main a:hover,
body.publisher div#main a:active,
body.publisher div#main a:focus {
	border-color: #0095d5;
	color: #0095d5;
}

/* Defaults */

.content ul,
.content ol {
	padding: 0 0 12px 20px;
}

.content ul {
	list-style: disc;
}

.content ol {
	list-style-type: decimal;
}

.content ul ul,
.content ol ul,
.content ol ol {
	padding-bottom: 0;
}

.content ol ol {
	list-style: upper-roman;
}

.content ol ol ol {
	list-style: lower-roman;
}

small {
	font-size: 11px;
}

em {
	font-style: italic;
}

table {
	border-top: 1px solid #d8d8d8;
	width: 100%;
	margin-bottom: 24px;
	vertical-align: top;
}

td, th {
	border-bottom: 1px solid #d8d8d8;
	padding: 4px;
	vertical-align: top;
}

th {
	font-weight: 700;
	background: #fff;
}

/*
	Page structure and layout
*/

.container {
	width: 600px;
	padding-left: 130px;
}

/*
	Header
*/

#header {
	height: 305px;
}

#header .container {
	position: relative;
}

#header:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ie6 #header, .ie7 #header { zoom: 1; }

	/* Logo */

	h1#logo a
	{
		display: block;
		width: 147px;
		height: 188px;
		background: url(logo.jpg) no-repeat;
		text-indent: -99999px;
		position: absolute;
		margin: 30px 0 0 0;
	}
	
	#quote
	{
		display: block;
		height: 188px;
		width: 300px;
		position: absolute;
		margin: 40px 0 0 400px;
	}
	
	#quote h1 {
	    color: #0094D4;
	    font-size: 18px;
	}

    #quote p {
        font-size: 15px;
        line-height: 24px;
    }

/*
	Content
*/

#main {
	position: relative;
	padding-top: 80px;
}

#main:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ie6 #main, .ie7 #main { zoom: 1; }

/*
	Footer
*/

	/* Sticky footer */

	html, body, #topWrapper {
		height: 100%;
	}

	body > #topWrapper {
		height: auto;
		min-height: 100%;
	}

	#bottomWrapper {
		position: relative;
		margin-top: -380px;
		height: 380px;
		clear: both;
		background: #cccccc;
	}

	#main {
		padding-bottom: 460px; /* Height of footer + extra margin = 380 + 80 = 460px */
	}
	
	body.home #main {
    	padding-bottom: 380px;
	}

	/* Footer */
	
	#footer .container {
		position: relative;
	}
	
	#footer h3, div#recent h3, div#home-showcase h3, div#showcase h3
	{
		font-size: 18px;
		color: #808080;
		font-weight: normal;
		text-transform: uppercase;
		border-bottom: 1px solid #b9b9b9;
		margin-bottom: 20px;
	}
	
	#footer .col, div#recent
	{
	    font-size: 14px;
	    line-height: 18px;
		margin-top: 60px;
	}
	
	#footer a.linkedin
	{
		display: block;
		width: 75px;
		height: 20px;
		background: url(footer-a-linkedin.jpg);
		border: none;
		text-indent: -9999px;
	}
	
		
	#footer input.inputText
	{
		width: 100%;
	}
	
/*
	Fonts
*/

@font-face {
    font-family: 'KlavikaRegular';
    src: url('http://epublisher.dev.shphosting.com/css/fonts2/klavika-regular-webfont.eot');
    src: url('http://epublisher.dev.shphosting.com/css/fonts2/klavika-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('http://epublisher.dev.shphosting.com/css/fonts2/klavika-regular-webfont.woff') format('woff'),
         url('http://epublisher.dev.shphosting.com/css/fonts2/klavika-regular-webfont.ttf') format('truetype'),
         url('http://epublisher.dev.shphosting.com/css/fonts2/klavika-regular-webfont.svg#KlavikaRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}


/*
	Guillotine bug
*/

.guillotineBugFix { display: none; }
.ie6 .guillotineBugFix { clear: both; height: 0; font-size: 0; line-height: 0; display: block; }

/*
	Clearfix
*/

.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ie6 .clearfix, .ie7 .clearfix { zoom: 1; }


/*
	Column system
*/

.col { width: 260px; padding-right: 45px; padding-bottom: 1px; float: left; overflow: hidden; }
.col-2 { width: 565px; }
.col-3 { width: 970px; }
.col-main { width: 565px; padding-left: 305px; }
.lastCol { padding-right: 0; }
.colOverflow { overflow: hidden; }

div.col-main p {
    font-size: 15px;
    line-height: 24px;
}

body.twixl div.col-main em {
    color: #0094D4;
    font-style: normal;
}

body.publisher div.col-main em {
    color: #D52E86;
    font-style: normal;
}

/* Superfish Menu */

#navigation
{
	position: absolute;
	margin: 266px 0 0 130px;
	z-index: 999999;
}

/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin:			0;
	padding:		0;
	list-style:		none;
}
.sf-menu {
	line-height:	1.0;
}
.sf-menu ul {
	position:		absolute;
	top:			-999em;
	width:			10em; /* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
	width:			100%;
}
.sf-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
	float:			left;
	position:		relative;
}
.sf-menu a {
	display:		block;
	position:		relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	left:			0;
	top:			3.4em; /* match top ul list item height */
	z-index:		99;
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}

/*** DEMO SKIN ***/
.sf-menu {
	float:			left;
	margin-bottom:	1em;
}
.sf-menu a {
	border-right:	15px solid #fff;
	border-bottom: none;
	padding: 		.7em .7em;
	text-decoration:none;
	font-family: 'KlavikaRegular', Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	font-size: 16px;
}

.sf-menu a, .sf-menu a:visited  { /* visited pseudo selector so IE6 applies text colour*/
	color:			#666666;
}
.sf-menu li {
	background: transparent url(nav-bg-grey.jpg) center top;
}
.sf-menu li li {
	background:		#f3f3f3;
}
.sf-menu li li li {
	background:		#f3f3f3;
}
.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
	outline:		0;
}

.sf-menu li.bgBlue
{
	background: transparent url(nav-bg-blue.jpg) center top;

}

.sf-menu li.bgPink
{
	background: transparent url(nav-bg-pink.jpg) center top;
}

.sf-menu li.bgPink a,
.sf-menu li.bgBlue a
{
	color: white;
}

.sf-menu li.bgPink li a
{
	color: #d52e86;
}

.sf-menu li li a
{
	border: none;
	padding-left: 20px;
}

.sf-menu li.firstLi
{
	padding-top: 15px;
}

.sf-menu li.lastLi
{
	padding-bottom: 15px;
}




/*
	Forms
*/

/* General fields and textareas */

input.inputText,
input.inputPassword,
input.inputSearch,
input.inputDate/*,
textarea*/ {
	color: #666;
	border:none;
	padding: 5px 5px;
	margin: 0;
	background-color: #dfdfdf;
}

/*textarea*/ {
	line-height: 1.5;
}

input.inputText:focus,
input.inputPassword:focus,
input.inputSearch:focus,
input.inputDate:focus/*,
textarea:focus*/ {
	background-color: #fff;
	color: #000;
	outline: none
}

input.inputText[disabled],
input.inputPassword[disabled],
input.inputSearch[disabled],
input.inputDate[disabled] /*,
textarea[disabled]*/ {
	color: #999;
	background-color: #f4f4f4;
	background-image: none;
}

/* Selects */

select {
	margin-top: 2px;
}

	option {
		width: auto;
	}

/* Input lists */

.inputList {
	padding-bottom: 6px;
}

	.inputList li {
		padding-left: 24px;
		position: relative;
		padding-bottom: 6px;
	}

		.inputList input {
			position: absolute;
			top: 0;
			left: 0;
		}

		.ie6 .inputList input {
			left: -24px;
		}

		.inputList label {
			overflow: visible;
			height: auto;
			padding: 0;
		}

/* Fieldsets and legends */

.visibleFieldset {
	border: 1px solid #ddd;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	padding: 12px 12px 0 12px;
	margin-bottom: 12px;
}

.visibleFieldset:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ie6 .visibleFieldset, .ie7 .visibleFieldset { zoom: 1; }

	legend {
		font-weight: 700;
		color: #999;
	}

		.ie6 legend {
			margin-bottom: 10px;
		}

/* Paragraph */

form p { padding: 0 0 12px; }
/*form p:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }*/
.ie6 form p, .ie7 form p { zoom: 1; }

/* Labels */

label,
.label {
	/*display: block;*/
	padding-bottom: 2px;
	height: 18px;
	overflow: hidden;
}


/* Buttons */

input.inputSubmit,
input.inputButton,
button,
a.button,
a.button:link,
a.button:visited {
	font-family: 'KlavikaRegular', Helvetica, Arial, sans-serif;
	font-size: 14px;
	text-transform: uppercase;
	color: #0095d5;
	background: #f9f9f9;
	border: 1px solid #c3c3c3;
	padding: 7px;
	cursor: pointer;
	overflow: visible;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	margin: 0;
}

button::-moz-focus-inner{ padding: 0; border: 0 }


#stripe
{
	width: 59px;
	background: url(bg-left-stripe.png) repeat-y;
	position: fixed;
	height: 100%;
	z-index: 9999;
}

div#subnavigation {
    margin-bottom: 24px;
    display: inline-block;
}

div#subnavigation ul, div#content_sub ul {
    list-style: none;
    font-size: 16px;
    text-transform: uppercase;
    line-height: 36px;
}

div#subnavigation li {
    line-height: 24px;
    padding-top: 12px;
}

div#subnavigation li.header {
    padding-top: 0px;
}

body.publisher div#main div#subnavigation ul a,
body.twixl div#main div#subnavigation ul a,
body.publisher div#main div#content_sub ul a,
body.twixl div#main div#content_sub ul a
{
    border: 0;
}

body.publisher div#main div#subnavigation ul a.active {
    color: #E0B6CE;
}

body.publisher div#main div#subnavigation ul a.active {
    color: #E0B6CE;
}

div#main div#subnavigation ul li.header, div#main div#content_sub ul li.header {
    border-bottom: 1px solid #ccc;
    line-height: 24px;
    width: 260px;
}

div#main div#subnavigation ul li.header a, div#main div#content_sub ul li.header a {
    color: #CCC;
}

body.home div#main {
   	background: url(home_publisher.jpg) no-repeat 0 50px;
 
}

body.home div#publisher {
    margin-left: 600px;
    height: 556px;
}

body.home div#recent {
    clear: both;
}

body.home div#publisher h1 {
    color: #D52E86;
}

body.home div#publisher p {
    font-size: 15px;
    line-height: 24px;
}

div#recent {
    background-color: #E6E6E6;
    padding: 60px 30px 60px 130px;
    width: 241px;
    position: relative;
    left: -130px;
    min-height: 380px;
}

div#home-showcase {
    font-size: 15px;
    line-height: 24px;
    padding-top: 60px;
    margin-top: 60px;
    width: 200px;
}

div#showcase {
    font-size: 15px;
    line-height: 24px;
    padding-top: 20px;
    margin-top: 60px;
    width: 235px;
}

div#showcase p {
    text-align: center;
}

span.newsdate {
    font-size: 12px;
    color: #B2B2B2;
}

img {
    border-style: none;
}

div.col-main ul, div.col-main ol {
    padding-left: 18px;
}

div.col-main ul {
    list-style: disc;
    padding-bottom: 12px;
}

div.col-main ol {
    list-style: decimal;
}

div.col-main ol li {
    padding-bottom: 12px;
}

div.col-main li {
    font-size: 15px;
    line-height: 24px;
    padding-left: 6px;
}

div.col-main td, div.col-main th {
    font-size: 15px;
    line-height: 24px;
}

body.publisher div.col-main h2 {
    padding-top: 12px;
    line-height: 32px;
    color: #0095D5;
}

body.twixl div.col-main h2 {
    padding-top: 12px;
    line-height: 32px;
    color: #D52E86;
}

body.twixl div.col-main h2.news {
    padding: 0px;
}

body.twixl div#main div.col-main h2 a {
    line-height: 32px;
    color: #D52E86;
    border-bottom: 1px solid #D52E86;
}

body.twixl div#main div.col-main h2 a:active,
body.twixl div#main div.col-main h2 a:focus,
body.twixl div#main div.col-main h2 a:hover
{
    line-height: 32px;
    color: #0095D5;
    border-bottom: 1px solid #0095D5;
}

table.specs td, table.specs th {
    font-size: 13px;
}

table.specs th {
    background-color: #0095D5;
    color: #FFF;
    font-weight: normal;
    font-size: 15px;
}

table.specs td.price, table td.price-name {
    font-size: 15px;
    padding: 6px 4px;
    background-color: #D52E86;
    color: #FFF;
}


body.publisher div#main table.specs td.price a {
    color: #FFF;
    border-bottom: 1px solid white;
}

table.specs th.specs, table.specs td.specs, table.specs td.price {
    text-align: center;
}

table.showcase {
    border: 0px;
}

table.showcase td {
    vertical-align: middle;
    border: 0px;
}

div#content_sub li.body {
    padding-top: 6px;
    text-transform: none;
    font-size: 15px;
    line-height: 24px;
}

form.contact input.text {
	font-family: 'KlavikaRegular', Helvetica, Arial, sans-serif;
    width: 360px;
}

form.contact textarea {
	font-family: 'KlavikaRegular', Helvetica, Arial, sans-serif;
    width: 360px;
    height: 200px;
    background-color: white;
}

.inputSubmit, a.button {
    min-width: 120px;
}

div.errorSummary {
    color: red;
    font-weight: bold;
}

div.errorSummary p {
    padding: 0px;
}

a.buttonHome {
    width: 120px;
    text-align: center;
    display: inline-block;
}

a.buttonExamples {
    width: 280px;
    text-align: center;
    display: inline-block;
}

span#store-variation-selector-command a,
span.store-variation-select-item a {
    border: 0;
}

.store-product-detail-description, label, .core-section-body {
    font-size: 15px;
    line-height: 24px;
}

.store-product-price {
    font-size: 24px;
    display: block;
    margin-top: 8px;
}

h3, h4 {
    padding-top: 18px;
}

.store-footer {
    font-size: 13px;
}

a.store-action-command.span {
    font-weight: normal;
}

a.store-action-command, #store-variation-selector-command, .store-variation-select-item a {
    border: 0px
}

div.store-order-items {
    border-top: 1px dotted #DDD;
}

div.store-order-item {
    border-bottom: 1px dotted #DDD;
}

div.store-order-price {
    font-weight: bold;
}

.store-order-price-label {
    width: 75%;
}

h2 {
    color: #D52E86;
}

div.core-messages, .store-product-option-display, .store-product-option-price, .store-variation-select-item {
    font-size: 15px;
    line-height: 24px;
    margin-bottom: 12px;
}

div.core-form-field-body input {
	font-family: 'KlavikaRegular', Helvetica, Arial, sans-serif;
}