/* @group Basic Reset */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, 
pre, form, fieldset, input, textarea, p, blockquote, th, td { 
	padding: 0;
	margin: 0;
	}
img { 
	border: 0;
	}
table {
	border-collapse: collapse;
	border-spacing: 0;
	}
ol, ul {
	list-style: none;
	}
address, caption, cite, code, dfn, em, strong, th, var {
	font-weight: normal;
	font-style: normal;
	}
caption, th {
	text-align: left;
	}
h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	font-size: 100%;
	}
q:before, q:after {
	content: '';
	}
abbr, acronym { 
	border: 0;
	}
		
/* @end */

/* @group Globals */

body {
	background-color:#e8e8de; 
	color:#333;
	font-family: Arial, Helvetica, Geneva, sans-serif;
	}
h1 {
	text-align:left; 
	font-size:30px; 
	font-family:MyriadPro; 
	font-weight: bold;
	color: #213F18;
	margin:.5em 0;
	padding: 0;
	}
#JSB h1 {
	text-align:left; 
	font-size:30px; 
	font-family:MyriadPro; 
	font-weight: bold;
	color: #603813;
	margin: .5em 0;
	padding: 0;
	}
h2	{
	text-align:left; 
	font-size:24px; 
	font-family:MyriadPro; 
	font-weight: bold;
	color:#333333; 
	margin:.5em 0;
	padding: 0;
	}
h3	{
	text-align:left; 
	font-size:18px; 
	font-weight: bold;
	color:#333333; 
	margin:.5em 0;
	padding: 0;
	}
h4 {
	text-align: left;
	margin:.5em 0;
	padding: 0;
}
p	{
	font-size: 13px;
	text-align:left;
	line-height: 1.3em;
	margin:10px 0px 10px 0px;
	}
.wrap {
	width: 800px;
	margin: 0 auto;
	}
hr {
	border: none;
	height: 1px;
	width: auto;
	color: #eee;
	background-color: #eee;
	text-align: left;
	margin: .5em 0;
	}
.sidebar hr {
	border: 0;
	height: 1px;
	width: 100%;
	color: #777;
	background-color: #777;
	text-align: left;
	}
a {
	color:#336699; 
	text-decoration:none;
	}
a:hover	{
	color:#333;
	text-decoration: none;
	border-bottom: 2px solid #779311;
	}
	
a:active {
	color:#336699; 
	position: relative; 
	top: 1px;
	outline: none;
	}

.sidebar a {
	color:#333; 
	text-decoration: underline;
	}
.sidebar a:hover	{
	color:#fff; 
	text-decoration: none;
	border-bottom: 2px solid #336699;
	}	
.sidebar a:active {
	color:#fff; 
	position: relative; 
	top: 1px;
	outline: none;
	}
	
.sidebar a.hilite {
	color:#fff; 
	text-decoration: none;
	border-bottom: 2px solid #336699;
	}
.sidebar a.hilite:hover	{
	color:#336699; 
	text-decoration: none;
	border-bottom: 2px solid #fff;
	}

a.linkedimage:hover {
	border: 0;
	opacity: .9;
}
.sidebar h2 {
	margin-bottom: 0;
}
.sidebar h2 a {
	margin-bottom: 0;
	text-decoration: none;
}
.sidebar h3 {
	margin-top: 0;
}
/* Gets rid of annoying dotted box around links in Firefox & IE */
a:focus {
	outline: none;
	}
em {
	text-transform: uppercase;
	font-weight: bold;
}
blockquote {
	margin:  0 40px;
}

#JSB a {
	color:#336699; 
	text-decoration:none;
	}
#JSB a:hover	{
	color:#333; 
	border-bottom: 3px solid #336699;
	}
#JSB a:active {
	color:#336699; 
	position: relative; 
	top: 1px;
	outline: none;
	}

/* @end */

/* @group Structure */

#pagebox {
	width: 760px;
	background-color: #fff;
	border-width: 0px 1px 1px 1px;
	border-style: solid;
	border-color: #A8B19D;
	padding: 15px 20px 20px 20px;
	margin: 0;
	}
#JSB .wrap {
	z-index: 1000;
}
#JSB #pagebox {
	width: 760px;
	background-color: #fff;
	padding: 15px 20px 20px 20px;
	margin: 0;
	border: 0;
}
#jsbBrand {
	display: block;
	float: right;
	margin-bottom: 10px;
	margin-right: 20px;
}
#JSB #jsbBrand {
	display: none;
}
.boxShadow {
	-moz-box-shadow: 3px 3px 5px #aaa;
	-webkit-box-shadow: 3px 3px 5px #aaa;
	box-shadow: 3px 3px 5px #aaa;
	-ms-filter:"progid:DXImageTransform.Microsoft.dropShadow(color='#dddddd', offX=3, offY=3)";
	filter:progid:DXImageTransform.Microsoft.dropShadow(color='#dddddd', offX=3, offY=3, positive='true');
	}

.container, .twoColcontainer, .blog-container {
	width: 760px;
	margin: 0;
	}
.banner {
	width: 760px;
	margin: 0 20px;
	padding: 0;
}

.twoColcontainer, .blog-container {
	background: url('../images/layout/twoColBG.png') top left repeat-y;
	}
.main {
	float: left;
	width: 460px;
	margin-right: 20px;
	}
.sidebar {
	float: left;
	width: 240px;
	padding: 10px 20px;
	}

/* @end */

/* @group Header */

#header {
	height: 160px;
	}
#logo, #contactinfo {
	float: left;
	display: block;
	width: 200px;
	height: 160px;
	}
#contactinfoJSB {
	float: left;
	display: block;
	width: 400px;
	height: 140px;
	text-align: center;
	margin: 20px 0 0 0;
	}
#urlJSB {
	margin-top: 10px;
}
#urlJSB a:hover {
	border-bottom: 0;
}
#logo a {
	border-bottom: 0;
}
#wordmarkJSB {
	float: left;
	display: block;
	width: 400px;
	height: 160px;
	}
#JSB #header {
	z-index: 109;
}
#wordmark {
	float: left;
	display: block;
	width: 400px;
	}
h1.wordmarklogo {
	width: 400px;
	height: 160px;
	background: transparent url('../images/layout/wordmark.png') bottom center no-repeat;
	text-indent: -9999px;
	margin: 0;
	padding: 0;
	}
h1.wordmarklogoJSB {
	width: 360px;
	height: 160px;
	background: transparent url('../images/layout/jsbLogo.png') bottom center no-repeat;
	text-indent: -9999px;
	margin: 0 !important;
	padding: 0;
	}
#phone {
	font-weight:bold;
	font-size: 26px;
	margin: 0;
	}
p#address {
	font-weight:normal;
	font-size: 16px;
	line-height: 1;
	padding: 0 0 10px 5px;
	margin: 0;
	}
#addressJSB {
	font-weight:normal;
	font-size: 16px;
	color: #c0ad9a;
	line-height: 1;
	margin: 20px 0;
	padding: 0;
	}
#phoneJSB {
	font-weight:normal;
	font-size: 36px;
	margin: 0;
	}
div#license {
	width: 200px;
	height: 79px;
	background: transparent url('../images/layout/license.png') bottom center no-repeat;
	text-indent: -9999px;
	margin: 0;
	padding: 0;
}	

/* @end */

/* @group Site Switcher */

#siteswitch {
	margin: 0;
	padding: 0;
}
#siteswitch ul {
	width: 802px;
	}
#siteswitch ul li {
	float:left;
	width: 401px;
	height: 40px;
	overflow: hidden;
	}
#siteswitch li a {
	background-image: url('../images/layout/sitetabs.png');
	background-repeat: repeat-x;
	background-position: 0px 0px;
	display: block;
	}
#siteswitch li a.current {
	background-position: 0px 0px;
	}
#siteswitch li a:hover.current {
	background-position: 0px 0px;
	border-bottom: 0;
	}
#siteswitch li a.switch {
	background-position: 0px -80px;
	}
#siteswitch li a:hover.switch {
	background-position: 0px -40px;
	border-bottom: 0;
	}
#siteswitch h1 {
	font-size: 28px;
	font-weight: normal;
	text-align: center;
	height: 40px;
	color: #213F18;
	border: 0;
	line-height: 1em;
	padding: 9px 0 0 0;
	margin: 0 0 0 0;
	}
#siteswitch a.switch h1 {
	color: #7B8B73;
	}	
#siteswitch a:hover.switch h1 {
	color: #213F18;
	}	
	
/* @end */

/* @group Menu */
#nav {
	height: auto;
	margin-bottom: 10px;
	display: block;
}
#nav ul {
	padding-left: 0px;
    list-style:none;
    overflow:hidden; /* makes sure the container fits the floated list-items below */
	}
#nav ul#menu li {
	display: inline;
	list-style: none;
	float:left;
    margin-right:10px;
    padding: 0 2px 3px 2px;
}
#nav ul#menu li span {
	position:relative; /* allows us to set the z-index */
    z-index:5; /* raises the z-index of the line item 5 levels all other elements */
}
#nav li a {
	font-size:16px;
	font-family: MyriadPro;
	color: #213F18;
	white-space: nowrap;
	border-bottom: 0;
	}
#JSB #nav li a {
	font-size:16px;
	font-family: MyriadPro;
	color: #4f2a0c;
	white-space: nowrap;
	border-bottom: 0;
}
#nav ul#menu li.backLava {
    position:absolute; /* Added by lavaLamp if not set, but set for good practice */
    z-index:3; /* 3 levels higher than all normal elements */
    border-bottom:3px solid #779311;
}
#JSB #nav ul#menu li.backLava {
    position:absolute; /* Added by lavaLamp if not set, but set for good practice */
    z-index:3; /* 3 levels higher than all normal elements */
    border-bottom:3px solid #336699;
}

/* @end */

/* @group Footer */

#footer {
	text-align: center;
	padding:20px 0 10px 0;
	}
#footer p {
	font-size: 10px;
	text-align: center;
}
#textmenu {
	font-size:11px;
}
#textmenu a {
	white-space: nowrap;
}
#textmenu a:hover {

}
#textmenu .spacer:after {
	content: " •";
	padding: 0 5px;
}

/* @end */

/* @group Pages */

#construction td {
	vertical-align: top;
	line-height: 1;
	padding: 5px 20px;
}
#construction a {
	font-size:11px; 
	}
#construction a:hover {
	text-decoration:none
	}

.attribution {
	font-size:10px;
	font-style: italic;
	padding:.5em 0;
	text-align:right;
	}
.testimonial {
	font-size:16px;
	text-align:left;
	min-height: 40px;
	padding:10px 10px 0 40px;
	margin: 10px 0 0 0;
	background: url('../images/layout/quote.png') top left no-repeat;
	}
.club {
	font-size:14px; 
	font-weight:bold;
	line-height: 1em;
	}
.town {
	font-size:10px;
	font-style:italic; 
	line-height: 1em;
	}
.architect {
	font-size:12px; 
	}
.renovations {
	font-size:12px;
	padding: 5px 0 20px 20px;
	}
	
	
#Services p {
	padding-top: 0px;
}
#Contact div.sidebar {
	text-align: center;
}
#Contact .sidebar h2 {
	font-size: 21px;
}
#contactform div {
	margin-bottom:0px; 
	width:100%;
	}
#contactform .indent {
	float:left; 
	display:inline; 
	margin-left:200px; 
	margin-top:20px;
	}
#contactform .form_element {
	float:left; 
	display:inline-block; 
	text-align:left; 
	width:180px; 
	margin-left:20px; 
	font-weight:bold;
	}
#contactform .form_data {
	float:left; 
	display:inline-block; 
	text-align:left; 
	width:110px;
	}
#contactform .separator {
	clear:none; 
	max-height:5px;
	}

/* @end */

/* @group Awesome Buttons */

.awesome, .awesome:visited {
	background: #222 url('../images/layout/alert-overlay.png') repeat-x; 
	display: inline-block; 
	padding: 5px 10px 6px; 
	color: #fff; 
	text-decoration: none;
	-moz-border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
	-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
	text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
	border-bottom: 1px solid rgba(0,0,0,0.25);
	position: relative;
	cursor: pointer;
}
.awesome:hover {
	background-color: #111; 
	color: #fff; 
	}
.awesome:active	{ 
	top: 1px; 
	}
.small.awesome, .small.awesome:visited { 
	font-size: 11px; 
	padding: ; 
	}
.awesome, .awesome:visited, .medium.awesome, .medium.awesome:visited {
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
	}
.large.awesome, .large.awesome:visited {
	font-size: 18px;
	font-weight: normal;
	padding: 8px 14px 9px;
	}
	
.green.awesome, .green.awesome:visited {
	background-color: #6b8e23;
	}
.green.awesome:hover {
	background-color: #213F18;
	}
#JSB .awesome, #JSB .awesome:visited {
	background-color: #336699;
	}
#JSB .awesome:hover {
	background-color: #4182c2;
	}
.blue.awesome, .blue.awesome:visited {
	background-color: #336699;
	}
.blue.awesome:hover {
	background-color: #4182c2;
	}
.red.awesome, .red.awesome:visited {
	background-color: #e33100;
	}
.red.awesome:hover {
	background-color: #872300;
	}
.magenta.awesome, .magenta.awesome:visited {
	background-color: #a9014b;
	}
.magenta.awesome:hover {
	background-color: #630030;
	}
.orange.awesome, .orange.awesome:visited {
	background-color: #ff5c00;
	}
.orange.awesome:hover {
	background-color: #d45500;
	}
.yellow.awesome, .yellow.awesome:visited {
	background-color: #ffb515;
	}
.yellow.awesome:hover {
	background-color: #fc9200;
	}

/* @end */



/* @group Slideshows */

#slideshow {
	position: relative; 
	width: 760px; 
	height: 285px;
	overflow: hidden;
	}
#slideshow .slide {
	width: 760px; 
	height: 285px;
	}
	
#slideshow div#caption {
	position: absolute;
	right: 0;
	bottom:0;
	width: 260px;
	padding: 10px;
	background: #000;
	opacity: 0.7;
	display: none; /* when sliding caption up/down */
}
#caption p {
	font-size: 11px;
	line-height: 15px;
	color: #fff;
	padding: 0;
	margin: 0;
}
#caption #course {
	font-size: 14px;
	font-weight: normal;
	}
#caption #location, #caption #type {
	float: right;
	}
a.slidelink {
	text-decoration: none;
}	
/* @group Slide Navigation Bar */
/* Use absolute positioned element called 'slidenav' when showing slides in sequential order */

#slidenav {
	position:absolute;
	bottom: 0;
	left: 0;
	z-index:99;
	padding-right: 16px;
	}
#slidenav a {
	text-indent: -9999px;
	display:block;
	float: left;
	background: url(../images/slideshow/slidenav/dot-trans.png) no-repeat 0 0; 
	overflow: visible;
	padding-right:3px;
	height: 17px;
	width: 10px;
	}
#slidenav a:hover {
	background: transparent url(../images/slideshow/slidenav/dot-white.png) no-repeat 0 0; 
	}
#slidenav a.activeSlide {
	background: transparent url(../images/slideshow/slidenav/dot-black.png) no-repeat 0 0; 
	}
#slidenav a:focus { 
	outline: none;
	}
	
/* @end */

/* @end */

/* @group HighSlide */

.highslide-gallery a:hover, .highslide-controls a:hover {
	border-bottom: none;
	}
.highslide img, .highslide:hover img {
	border: none;
}
.zoomed .highslide-image {
	border: none;
}
.zoomed .highslide-heading, .zoomed .highslide-number {
	display: none;
	margin: 0;
	padding:0;
}
.zoomed .highslide-caption {
	position: absolute;
	width: 100%;
	color: #ffffff;
	font-size: 18px;
	font-weight: normal;
	text-align: left;
	padding: 5px;
}
.dark .highslide-heading {
	font-size: 16px;
	font-weight: normal;
	color: #fff;
	height: 18px;
}
.dark .highslide-number {
	font-size: 12px;
	color: #666;
	float:right;
}

/* @end */

/* @group Photo Gallery */

#galleries {
	padding: 0;
}
#galleries img {
	margin-top:16px;
}
a.galleryThumb {
	opacity: 1;
	border: none;
	}
a.galleryThumb:hover {
	border: none;
	opacity: .9;
	}
img.imgspacer {
	padding-right: 16px;
}
#imageContainer img {
	margin: 0;
	}
table.photogalleryTable td {
	padding: 10px;
	}
.photogalleryItem img:hover {
	opacity: .8;
	}
.photogalleryItem a:hover {
	border-bottom: 0;
	}

/* @end */

/* @group Blog */

/* NOTE: div.post-list exists in FORUMS as well */

.blog-list {
	background: #f9f9f9;
	border: 1px solid #eee;
	color: #000;
	font-size: 11px;
	margin: 0 0 18px;
	padding: 18px;
	}
.blog-list h2 {
	font-size: 18px;
	margin: 0 0 3px 0;
	}
.blog-list span {
	color: #888;
	}
.blog-container p.description {
	display: none;
	margin: 0 0 20px 0;
	}
.blog-post h2.post-title {
	font-size: 24px;
	color: #213F18;
	margin: 0;
	padding: 5px 0 3px 0;
	}
.blog-post h2.post-title a:hover {
	color: #213F18;
	border-bottom: ;
}	
.blog-post .post-details {
	color: #888;
	font-size: 11px;
	margin-top: 10px;
	float: right;
	}
.blog-container .post-list {
	float: left;
	width: 69%;	
	}
.blog-post .post-body {
	margin: 0 0 36px;
	}
.comment-list {
	background: #f9f9f9;
	border: 1px solid #eee;
	margin-bottom: 36px;
	padding: 18px;
	}

.comment-list h5 {
	font-size: 14px;
	margin: 0 0 18px;
	}

.comment-list input#Captcha {
	width: 300px;
	}

.comment-list textarea.cat_listbox_small {
	height: 120px;
	width: 100%;
	}

.blog-comment-container {
	border: 1px solid #e9e9e9;
	margin: 0 0 18px;
	}

.blog-comment-container  .comment-details {
	background: #eee;
	font-size: 11px;
	padding: 6px;
	}

.blog-comment-container .comment {
	background: #fff;
	padding: 9px;
	}

span.flag {
	margin: 0 6px;
	vertical-align: middle;
	}

input#fullname, input#website, input#emailaddress {
	width: 300px;
	}

textarea.comment {
	height: 160px;
	width: 100%;
	}

.forum-registration textarea.comment {
	height: 70px;
	width: 270px;
	}

.post-body .links {
	font-size: 11px;
	}

.blog-container .side-panel {
	float: right;
	width: 27%;
	}

.side-panel h4 {
	font-size: 12px;
	margin: 0 0 9px;
	}

.BlogTagCloud {
	margin: 0 0 18px;
	}

.BlogRecentPost ul, .BlogTagList ul, .BlogPostArchive ul {
	margin: 0;
	padding: 0;
	}

.BlogRecentPost li, .BlogTagList li, .BlogPostArchive li {
	font-size: 14px;
	list-style: none;
	margin: 0 0 9px 10px;
	}

p.page-nav {
	text-align: center;
	} 

p.page-nav a {
	margin: 0 9px;
	}

.blog-post dl {
	background: #f9f9f9;
	border: 1px solid #eee;
	margin: 0 0 18px;
	padding: 18px;
	}

.blog-post dt {
	color: #000;
	}

.blog-post dd {
	margin: 0 0 9px;
	}

/* @end */

/* @group Literature */

div.brochure {
	width: 240px;
	font-size: 13px;
	text-align: center;
	padding: 15px 0;
	}
a#brochure:hover {
	border-bottom: none;
	}
.brochure p {
	text-align: center;
	font-size: 10px;
	}
p.literature-container img {
	vertical-align: middle;
	}
p.literature-container span.icon, p.literature-container span.name {
	margin: 0 3px 0 0;
	}
p.literature-container span.name {
	font-size: 13px;
	}

/* @end */

/* @group FAQ */

.faq-question {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 20px;
}
.faq-question a:hover {
	border-bottom: 0;
}
.faq-details {
	font-size: 12px;
	font-weight: normal;
	margin-top: 10px;
	padding: 10px;
	background: #e8e8de;
	border: 1px solid #c9c9c0;
}

#faqaccordion {
	width: 450px;
	float: left;
	margin-top: 10px;
}
#faqaccordion h3 {
	font-size: 18px;
	font-weight: bold;
}
#faqaccordion h3 a {
	color: #333;
}
#faqaccordion h3 a:hover {
	color: #ffffff;
	border-bottom: none;
}

/* @group Not Used - FAQ Results Table */

table.faq-search {
	background: #f9f9f9;
	border-collapse:collapse;
	border-spacing:0;	
	border: 1px solid #eee;
	margin: 0 0 18px 0;
	width: 100%;
}

table.faq-search label {
	color: #888;
}

table.faq-search td {
	border-collapse:collapse;
	border-spacing:0;	
	padding: 9px;
}

table.faqresultstable {
	background: #fff;
	border-collapse:collapse;
	border-spacing:0;	
	border: 1px solid #eee;
	width: 100%;
}

table.faqresultstable td {
	color: #666;
	padding: 9px;
}

table.faqresultstable a {
	color: #1969bc;
}

table.faqresultstable td.faqresultstableinfo {
	background: #f9f9f9;
	color: #888;
	font-size: 10px;
	padding: 3px 18px;
	text-align: right;
}

table.faqresultstable td.faqresultstablecount {
	padding-left: 18px;
	width: 10px;
}

td.faqresultstablehead {
	background: #fff;
	border-collapse:collapse;
	border-spacing:0;	
	border-bottom: 1px solid #eee;	
	color: #000;
	font-weight: bold;
}

/* @end */

/* @end */


/* @group Web Form */

#JSB fieldset {
	margin: 8px 0 0 20px;
	padding: 10px 20px;
	border: 1px solid #a29487;
	background-color: #e8e8de;
}
#JSB legend {
	font-size: 15px;
	font-weight: bold;
	color: #603813;
}
#JSB #catwebformbutton {
	margin: 20px 0 30px 0;
}
.required {
	font-size: 11px;
	float: right;
	color: #333;
}
.req {
	color: #ff0000;
}
#privacy {
	font-size: 11px;
}
ul.form {
	margin: 0;
	padding: 0;
}

ul.form li {
	list-style: none;
	margin: 0 0 18px 0;
}

ul.form li label {
	color: #888;
	display: block;
}

div.form div.item, div.webform div.item {
	padding: 9px;
}

.cat_button {
	}

input.cat_textbox,
textarea.cat_listbox,
select.cat_dropdown,
select.cat_listbox {
	width: 260px;
	padding: 3px;
	font-size: 13px;
}

.cat_dropdown_small {
	width: 200px;
}

.cat_dropdown_smaller {
	width: 150px;
}

.cat_textbox_small, .cat_listbox_small {
	width: 200px; /* DON'T TOUCH THIS */
}

.cat_listbox {
	height: 80px;
	width: 300px;
}
#CAT_Custom_868_1 {
	margin-left: 8px;
}
table.webform,
table.reporting {
	font-size: 12px;
	border-collapse:collapse;
	border-spacing:0;
}

table.webform td {
	line-height: 18px;
	padding: 3px;
}

.form label, .webform label {
	font-size: 11px;
}

.form input, .webform input {
	margin-right: 2px;
	padding: 3px;
}

/* @end */


/* @group System Message */

.system-message, .system-error-message {
	background-color: #f9f9f9;
	border: 1px solid #eee;
	color: #666;
	margin: 0;
	min-height: 200px;
	height: auto !important;
	height: 240px;
	padding: 20px 40px;
}

/*.system-message {
	background: #f9f9f9 url(/CatalystImages/ok.png) no-repeat 29px 18px;	
}

.system-error-message {
	background: #f9f9f9 url(/CatalystImages/error.png) no-repeat 26px 26px;
}*/

.system-message h1, .system-error-message h1 {
	color: #000;
	margin: 0 0 18px 0;
}

.system-message a:link, .system-error-message a:link {
	color: #1969bc;
}

.ok {
	background: #E9FBE3;
	color: #21A347;
	margin-bottom: 18px;
}

.error {
	background: #FBE3E4;
	color: #D12F19;
	margin-bottom: 18px;
}

/* @end */



/* @group Catalogue and Products */
div.returnButtons {
	margin-top: 40px;
}
.returnButtons a {
	font-size: 12px;
}
.returnbuttons a:hover {
	border-bottom: 0;
	text-decoration: underline;
}
.cartNote {
	text-align: center;
	font-size: 20px;
	color: #855c33;
	}
#JSB .shop-form{
	margin: 0;
	}
#JSB #quoteform {
	width: 620px;
	margin: 0 auto;
	padding-top: 20px;
	}
#JSB #ShippingInstructions {
	height: 110px;
	}
.cartAd {
	display: block;
	height: 50px;
	width: 300px;
	float: left;
	}
.productname {
	font-size: 18px;
}
.productdescription {
	font-size: 9px;
	}
.sidebar ul.products {
	list-style: none;
	padding-left: 20px;
	padding-bottom: 10px;
	line-height: 1.5em;
	}
ul.products li {
	font-size: 18px;
	}
.removelink {
	font-size: 10px;
	}
table.cart .total td{
	font-size: 16px;
	font-weight: bold;
	}
#shippingSpan {
	display: none;
	font-size: 11px;
	}
.shippingDiv {
	text-align: left;
	}
.shippingdetails {
	font-size: 11px;
	}
#JSB .breadcrumbs {
	display: none;
}
.ordercontrols {
	background: #f9f9f9;
	padding: 18px;
	text-align: left;
}
.catalogueItemNotFound {
	display: none;
}
.shop-product-small h3 {
	font-size: 21px;
	width: auto;
	text-align: center;
	}

.shop-catalogue {
	background: #fff;
	border: 0;
	float: left;
	height: 240px;
	margin-right: 20px;
	overflow: hidden;
	width: 240px;
}

.shop-catalogue h4 {
	display: none;
}

.shop-catalogue h4 a {
	color: #1969bc;
	text-decoration: none;
}

.shop-catalogue .image {
	/* Image size should be 150px by 120px */
	height: 240px;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	text-align: center;
}

.shop-main {
	margin-top: 18px;
}

.shop-main .header h1 {
	margin: 0;
}
.shop-main .header {
	border-bottom: 1px solid #eee;
	height: auto;
	line-height: 28px;
	margin: 0 0 18px;
}

.shop-main .breadcrumbs {
	display: block;
	font-size: 11px;
	text-align: left;
	width: 100%;
}

.shop-main .cart-summary {
	float: right;
	width: 50%;
}

.shop-main .description ul {
	margin: 0 0 0 18px;
	padding: 0;
}

.shop-main .description li {
	list-style: square;
}

table.cartSummaryTable {
	border-collapse:collapse;
	border-spacing:0;	
	font-size: 14px;
	float: right;
	height: 40px;
	text-align: left;
}

td.cartSummaryItem {
	padding: 0;
}

a.cartSummaryLink {
	margin: 0 0 0 18px;
	font-size: 16px;
	visibility: visible;
}

.shop-main ul {
	margin: 0;
	padding: 0;
}

.shop-main li {
	list-style: none;
}

table.catalogueTable {
	border-collapse:collapse;
	border-spacing:0;	
	width: 100%;
	margin: 0;
}

table.catalogueTable td {
	padding: 0;
}

table.productTable {
	border-collapse:collapse;
	border-spacing:0;	
	table-layout: fixed;
	width: 100%;
}

table.productTable td {
	padding: 3px;
}

.shop-product-small {
	background: #fff;
	border: 1px solid #ddd;
	color: #666;
}

.shop-product-small h5 {
	font-size: 12px;
	font-weight: normal;
	margin: 0;
	min-height: 36px;
	padding: 18px 18px 6px;
}

.shop-product-small h4 a {
	color: #1969bc ;
}

.shop-product-small h5 a {
	text-decoration: none;
}

.shop-product-small ul {
	width: 160px;
	margin: 0 auto;
}

.shop-product-small ul li {
	font-size: 11px;
	margin: 0 0 6px;
}

.shop-product-small li.price {
	font-size: 11px;
}

.shop-product-small li.price strong {
	font-size: 18px;
	margin-left: 10px;
}

.shop-product-small li.stock {
	font-size: 11px;
}

.shop-product-small li.stock strong {
	color: #666;
	margin-left: 3px;
}

.shop-product-small .image {
	height: 160px;
	margin: 0 auto 9px;
	overflow: hidden;
	width: 160px;
	text-align: center;
}

.image a, td.actions a {
	border: none !important;
}

.shop-product-small li.quantity {
	line-height: 30px;
}

li.quantity img {
	position: relative;
	top: 8px;
	/* or vertical-align: middle; */
}

.shop-product-small li.quantity input.productTextInput {
	font-size: 14px;
	width: 40px;
	padding: 3px;
	text-align: right;
}

.shop-product-small input.productSubmitInput {
	margin: 10px 0 0 15px;
}

.shop-product-large {
	background: #fff;
	border: 1px solid #eee;
	color: #666;
	margin: 0 0 18px;
	min-width: 240px;
	overflow: hidden;
}

.shop-product-large h1 {
	color: #333;
}

.shop-product-large .image {
	margin-left: 36%;
	min-height: 300px;
	height: auto !important; /* for modern browsers */
	height: 360px; /* for IE5.x and IE6 */		
	padding: 18px;
	text-align: center;
}

.shop-product-large .shop-product-small .image {
 	margin: 0;
	min-height: 160px; 
	height: auto !important; /* for modern browsers */
	height: 160px; /* for IE5.x and IE6 */		
	padding: 0;
	text-align: center;
	width: auto;
}

.shop-product-large .shop-product-small ul {
	padding: 10px;
}

.shop-product-large .shop-product-small ul, .shop-product-large .shop-product-small li  {
	margin: 0;
}

.shop-product-large li.price {
	font-size: 18px;
}

.shop-product-large li.instock {
	font-size: 10px;
}

.shop-product-large li.quantity input.productTextInput {
	font-size: 14px;
	width: 40px;
	padding: 3px;
	margin-right: 5px;
}

td.productItem .comment-form input#Captcha {
	width: 300px;
}

.poplets {
	border-top: 1px solid #eee;
	margin-top: 24px;
	padding: 9px 0;
}

.poplets img {
	border: 1px solid #ddd;
}

table.productPoplets {
	border-collapse:collapse;
	border-spacing:0;	
	margin: 0 auto;
}

.shop-product-large .details {
	background: #f9f9f9;
	float: left;
	min-height: 360px;
	height: auto !important; /* for modern browsers */
	height: 360px; /* for IE5.x and IE6 */	
	padding: 18px;
	width: 30%;
}

.shop-product-large ul {
	margin: 0 0 36px;
	padding: 0;
}

.shop-product-large li {
	margin: 9px 0;
}

.shop-cart .breadcrumbs {
	margin: 0 0 18px;
}

table.cart {
	background: #fff;
	border-collapse:collapse;
	border-spacing:0;	
	border: 1px solid #ddd;
	font-size: 16px;
	width: 100%;
}

table.cart td {
	vertical-align: baseline; /*to make sure the div stack line up at the top */
}

table.cart a {
	color: #1969bc;
}

table.cart th, table.cart td {
	color: #666;
	padding: 9px;
}

tr.val td {
	
	border-bottom: 1px solid #eee;
}

tr.shipping td {
	border-bottom: 1px solid #ddd;
}

tr.discount td.quantity, tr.shipping td.quantity {
	text-align: right;
}

td.quantity input.update {
	margin: 0 0 0 3px;
}

table.cart th {
	background: #f9f9f9;
	border-bottom: 1px solid #eee;
	color: #000;
	font-size: 11px;
	font-weight: normal;
	text-align: left;
}

input.cartInputText {
	font-size: 14px;
	width: 40px;
	padding: 3px;
}

input#DiscountCode, input#GiftVoucher {
	width: 70px;
}

select.shippingDropDown {
	width: auto;
}

table.cart th.quantity {
	text-align: right;
}

table.cart td.quantity {
	text-align: right;
}

.productitemcell {
	height: 36px;
	line-height: 30px;
	margin: 3px 0;
	overflow: hidden;
}

table.cart td.actions {
	text-align: right;
	vertical-align: top;	
}

table.cart td.actions a {
	font-size: 18px;
	font-weight: normal;
	margin: 10px;
	text-decoration: none;
}

a#catshopclear {
	font-size: 12px;
	font-weight: normal;
	color: #fff;
}
a#catshopquote {
	font-weight: normal;
	color: #fff;
}
a#catshopquote:hover, a#catshopclear:hover {
	color: #fff;
	}
table.cart strong {
	font-size: 18px;
	font-weight: bold;
}

.shop-form {
	margin: 0 0 18px;
}

.shop-form ul.form {
	background: #f9f9f9;
	border: 1px solid #eee;
	padding: 18px;
}

.shop-form label {
	font-size: 11px;
}

.shop-form ul.form li {
	margin: 0;
	padding: 9px 0;
}

.shop-form li.last {
	border-top: 1px solid #eee;
}

/*.shop-form .checkboxes {
	line-height: 27px;
}*/

input.PaymentMethodType {
	margin: 0 6px 0 0;
}

.shop-form ul.form input.cat_textbox,
.shop-form ul.form select.cat_dropdown,
.shop-form ul.form textarea.cat_listbox {
	width: 260px;
}

.shop-form textarea.cat_listbox {
	height: 100px;
}

.shop-receipt, .shop-quote-receipt {
	background: #f9f9f9;
	border: 1px solid #eee;
	margin: 18px;
	padding: 18px;
}

.shop-receipt h1, .shop-quote-receipt h1 {
	padding: 0 0 0 0;
}

.shop-receipt h2, .shop-quote-receipt h2 {
	font-weight: normal;
}

/* @end */

/* @group Toolbox CSS */
 
/* @group LAYOUT TOOLS */
 
.floatLeft 			{ float: left; margin-right: 20px;}
.floatRight			{ float: right; margin-left: 20px;}
.padTop				{ margin-top: 10px;}
.padBottom			{ margin-bottom: 10px;}
.layoutCenter		{ margin: 0 auto; }
.textCenter			{ text-align: center; }
.textRight			{ text-align: right; }
.textLeft			{ text-align: left; }

/* @end */
 
/* @group PRINT TOOLS */
 
.page-break 		{ page-break-before: always; }
 
/* @end */
 
/* @group TYPOGRAPHIC TOOLS */
 
.error				{ border: 1px solid #fb4343; padding: 3px; color: #fb4343; }
.warning			{ border: 1px solid #d4ac0a; padding: 3px; color: #d4ac0a; }
.success			{ border: 1px solid #149b0d; padding: 3px; color: #149b0d; }
.callOut			{ font-size: 125%; font-weight: bold; }
.strikeOut			{ text-decoration: line-through; }
.underline			{ text-decoration: underline; }
.resetTypeStyle		{ 
	font-weight: normal; 
	font-style: normal;
	font-size: 100%;
	text-decoration: none;
	background-color: none;
	word-spacing: normal;
	letter-spacing: 0px;
	text-transform: none;
	text-indent: 0px;
	}
 
/* @end */
 
/* @group STYLING EXTRAS */
 
a[href^="mailto:"]	{ 
	background: url(../images/layout/icon_email.png) left center no-repeat;
	padding-left: 20px;
	}
a[href$=".pdf"]		{
	background: url(../images/layout/icon_pdf.png) left center no-repeat;
	padding-left: 20px;
	}
a.button			{ color: black; border: 1px solid black; padding: 3px; }
a.button:hover		{ background: black; color: white; }
.transpBlack		{ background: url(../images/transpBlack.png); }
 
/* @end */
 
/* @group DISPLAY VALUES */
 
.hide				{ display: none; }
.show				{ display: block; }
.invisible			{ visibility: hidden; }
 
/* @end */
 
/* @end */
 
/* @group Clearing floats */
 
.clear { display: inline-block;}   
.clear:after, .container:after {
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
}
* html .clear { height: 1%; }
.clear { display: block; }
 
/* @end */
