/* layout */
.promo_box, .category_box, .page_2_columns_wide, .page_2_columns_narrow, .feature_symbol, .feature_description,
.calendar_portrait_wide, .calendar_portrait_narrow,
.calendar_landscape_wide, .calendar_landscape_narrow,
.calendar_single_col {
	margin-right: 20px;
	display: inline;
    float: left;
}

#page {
	padding: 20px;
	padding-bottom:0;
	background-color:#fff;
	width: 960px;
	margin: 0 auto;
	position: relative;
}

/* standard */
body {
	font-size: 11px;
	color:#555;
    padding: 0;
    overflow-y: scroll;
}

img { -ms-interpolation-mode: bicubic; }

#page_background {
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    border: 0px;
}

a {
    color:#666;
}

h1 {
	margin-bottom:20px;
}

p {
	margin-bottom: 10px;
}


.last {
	margin-right: 0 !important;
	margin-bottom: 0 !important;
}

.border_right {
	padding-right:20px;
}

.border_bottom {
	padding-bottom:20px;
}

.border_bottom_thin {
	padding-bottom:20px;
}

.ui-tooltip {
	background-color:#9C9D9D;
	color:#fff;
	padding: 5px 10px;
	border: 0px;
}

.ic_container {
	margin:0;
}

.ic_container a.box_link {
	display:block;
	cursor:pointer;
}

/*	Header */
.header_text {
	font-size:16px;
	text-align:right;
	line-height:1.2em;
	float: right;
}

header {
	padding-bottom:15px;
}

.main_content {
	margin-top: 20px;
}

#feature_scrollbar div.scrollableArea a
{
	display: block;
	float: left;
	padding-left: 10px;
}

.tagline {
	text-align: right;
	width: 	180px;
	float: right;
	font-size: 10px;
	line-height:1.2em;
}

/* main nav */
nav[role="navigation"] ul {
    display: inline;
    float: left;
    width: 100%;
    list-style: none outside none;
    margin-bottom:0;
    padding: 9px 0;
    color: #666;
    border-top: 3px solid #7AB800;
    border-bottom: 1px solid #7AB800;
	   text-transform: uppercase;
}

nav[role="navigation"] li {
    float: left;
    font-family: Verdana;
    font-size: 14px;
    margin:0;
    padding: 0 16px;
	width: auto;
	width: 121px;
}

nav[role="navigation"] li a {
	text-align:center;
	display: block;
    line-height: 1em;
    text-decoration:none;
	color:#666;
	font-weight: 500;
	cursor: pointer;
}

	nav[role="navigation"] li:hover, nav[role="navigation"] li.active  {
	    color: #fff;
	}
	nav[role="navigation"] ul li.hover,
	nav[role="navigation"] ul li:hover {
		position: relative;
		z-index: 599;
		cursor: pointer;
		color: #fff;
	}
		nav[role="navigation"] ul ul {
			display: none;
			position: absolute;
			top: 15px;
			margin-left: 20px !important;
			z-index: 598;
			background: none;
			border: 0px;
		}
			nav[role="navigation"] ul ul li {
				float: none;
			}

			nav[role="navigation"] ul ul li div {
				text-align: left;
				color: #666;
				background: #fff;
				/*border-radius: 5px;*/
				text-transform: capitalize;
				font-size: 12px;
				width: 145px !important;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				-ms-box-sizing: border-box;
				width: 150px;
			}

			nav[role="navigation"] ul ul li div:hover {
				background: #bcbdbd;
				background-size: 100% 100%;
				background-position: 0 100%;
			}

			nav[role="navigation"] ul ul li a {
				text-align: left;
				background: #fff;
				color: #666;

				/*border: solid 1px #afb0b0;*/
				/*border-radius: 5px;*/
                border-bottom: 1px solid #7AB800;
				text-transform: capitalize;
				font-size: 12px;
				padding: 5px;
				width: 145px !important;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				-ms-box-sizing: border-box;
				box-sizing: border-box;
				width: 150px;
			}

			nav[role="navigation"] ul ul li a:hover {
				color: #fff;
			}
				nav[role="navigation"] ul ul ul {
					top: 0;
					left: auto;
					right: -99.5%;
				}
				nav[role="navigation"] ul li:hover > ul {
					display: block;
				}
				nav[role="navigation"] ul ul {
					bottom: 0;
					left: 0;
				}

				nav[role="navigation"] ul ul {
					margin-top: 0;
				}
				nav[role="navigation"] ul ul li {
					font-weight: normal;
				}
				nav[role="navigation"] a {
					display: block;
					line-height: 1em;
					text-decoration: none;
				}

	nav[role="navigation"] li:last-child {
    	border-right: 0 none;
	}



/* footer */
footer {
	margin-top: 5px;
	border-top: 3px solid #BCBCBC;
	line-height: 3em;
	color:#000;
}

footer .last {
	text-align:right;
	font-size: 9px;
	color:#999;
	position: absolute;
	display: inline-block;
	right: 20px;
}

footer .small {
	font-size: 9px;
}

/* home banner */
#home_banner {
	margin-bottom: 20px;
	position:relative;
	width:960px;
	height:316px;
}

#home_banner a {
	display:block;
}

#home_banner .ic_caption {
	position: absolute;
	bottom: 0;
	background-color:#fff;
	width:960px;
	color:#000;
	height: 30px;
}

.ic_caption h3 {
    padding: 5px 10px;
    margin: 0px;
    font-size: 25px;
    line-height: 18px;
}

#home_banner .jcycle_block {
    position: relative;
    vertical-align: baseline;
	width:960px;
	height:316px;
}

/* promo box (3 across) */
.promo_box a.box_link {
	text-decoration:none;
}

.promo_box {
	width: 293px;
}

.category_holder {
	float: left;
	width: 660px;
}

/* category_box (6 across) */
.category_box a.box_link {
	text-decoration:none;
}

.category_box {
	width: 90px;
	height: 115px;
	font-size: 9px;
	text-align: center;
}

.category_box a {
	text-decoration: none;
}

.category_box a img {
	margin: 0 Auto;
	width: 91px;
	background-color: none;
}

.vertical_stack_contact {
	margin-bottom:20px;
}

.vertical_stack {
	margin-bottom:20px;
	width: 300px;
	float: right;
}

a.block {
	display:block;
	line-height:0;
	cursor:pointer;
}

/* pages */
.page_2_columns_wide {
	width:583px;
	margin-right:20px;
}

.page_2_columns_narrow {
	width:294px;
}

.feature_row {
	left: 42px;
	position: relative;
	display: inline-block;
	width: 650px;
	margin-bottom: 25px;
	margin-top: 10px;
	font-size: 12px;
}

.feature_symbol {
	width: 28px;
	line-height:0px;
	float:left;
}

.feature_name {
	width:120px;
	display: inline-block;
	float:left;
	font-weight: bold;
}

.feature_description {
	left: 150px;
	position: relative;
	width: 520px;
	display: inline-block;
	float:left;
	margin-top: -1.5em;
}

.page_holder {
	position: relative;
	display: inline-block;
}

.page_logo {
	float: left;
	width: 72px;
	text-align: center;
}

.page_logo img{
	width: 72px;
}

.page_intro_text {
	margin-left: 20px;
	font-size: 14px;
	width: 650px;
	float: left;
	position: relative;
}

.page_intro_text.why_promo{
	font-size: 14px;
}

.page_intro_text.contact_text{
	font-size: 14px;
}

.page_content {
	float: left;
	margin-bottom: 50px;
	width: 785px;
}

.page_penguin {
	float:right;
    position:absolute;
    margin-left: 20px;
    bottom: 0px;
    right:0;
    clear:right;
}

.page_penguin_pipe {
    width:0px;
    float:right;
}

.testimonials_holder {
	position: relative;
}

.testimonial {
	position: relative;
	display: block;
	width: 650px;
	margin-bottom: 25px;
	line-height: 1.4em;
}

.testimonial_text {
	font-size: 14px;
}

.testimonial_text:before {
	font-size: 18px;
	content: '\201C...';
}

.testimonial_text:after {
	font-size: 20px;
	content: '\201D';
}

.anti_spam {
	font-size: 12px;
}

.contact_image {
	top: -148px;
	width: 170px;
	display: inline-block;
	position: relative;
	float: right;
	margin-bottom: -148px;
}

/* contact form */
input[type=text], textarea, .cv_wrapper, input[type=submit] {
	border: 1px solid #B7B7B7;
    border-radius: 5px;
    background-color: #D9DADA;
    padding: 5px;
	-moz-border-radius:5px;
    -webkit-border-radius:5px;
    -khtml-border-radius:5px;
    width: 348px;
    z-index: 2;
}

textarea {
	height: 80px;
}

input[type=submit] {
	background-color:#D9DADA;
	border: none;
	color:#777;
	font-weight:bold;
	width: auto;
	padding-left: 30px;
	padding-right: 30px;
}

/* styles page */
.calendar_styles {
	margin-bottom:20px;
}


/* theme page */
.theme_list {
	/*width:170px;*/
	margin-bottom:10px;
	float:left;
}

.first_theme {
	width:215px;
	margin-right:12px;
}

.other_themes {
	width:690px;
}

.other_themes table {
	width:100%;
}

.other_themes table td {
	width:25%;
}

.theme_list h6 {
	margin: 0;
	padding-left: 15px;
	background-repeat: no-repeat;
	background-position: left center;

}

.theme_list ul {
	margin-left: 15px;
}

.theme_list ul li {
	margin:0;
	padding:0;
	display:block;
	width: auto;
}

.theme_list ul li a {
	color:#666;
	text-decoration:none;
}

	.theme_list ul li a:hover {
		text-decoration:underline;
	}

#feature_scrollbar {
		width: 778px;
		height: 265px;
		position: relative;
	}

	#feature_scrollbar div.scrollableArea img {
			position: relative;
			float: left;
			margin: 0;
			padding: 0;
			margin-right:5px;
	}



/* calendar */
.theme_pager {
	float:right;
	line-height:22px;
}

.pager_label {
	display:block;
	float:left;
	padding: 0 20px;
}

.pager_next, .pager_prev {
	width:20px;
	height:22px;
	background-image: url("../images/pager_next.png");
	background-repeat: no-repeat;
	background-position: left center;
	display:block;
	float:left;
}

.pager_prev {
	background-image: url("../images/pager_prev.png");
	background-position: right center;
}


.theme_feature_symbol .feature_symbol {
	margin-right:10px;
	margin-bottom:10px;
}

ul.thumbs {
	margin: 0;
	padding:0;
	clear: both;
}

ul.thumbs li {
	margin: 0;
	padding:0;
	list-style:none;
	display:block;
	float:left;
	height:auto;
	text-align:center;
	min-height:130px;
	overflow-y:hidden;
}

ul.thumbs li img {
	display: block;
}

ul.thumbs li.clear {
    clear: both;
    display: block;
    float: none;
    height: 0.3875em;
    margin:0;
    padding:0;
    min-height:0;
}


/* calendar landscape */
.calendar_landscape_wide {
	width:590px;
}

.calendar_landscape_narrow {
	width:310px;
}

.calendar_landscape_full_page {
	margin-top:20px;
}

.calendar_landscape_full_page ul.thumbs li {
	margin-right: 18px;
	margin-bottom: 10px;
	width:138px;
}

.calendar_landscape_full_page ul.thumbs li img {
	width:136px;
	height:70px;
	border: 1px solid #ccc;
}

.calendar_landscape_full_page ul.thumbs li span {
	line-height:32px;
}

.calendar_landscape_narrow .feature_symbol, .ordering_info .feature_symbol {
	float:left;
}


/* calendar protrait */
.calendar_portrait_wide {
	width:590px;
}

.calendar_portrait_narrow {
	width:310px;
}

.calendar_portrait_narrow ul.thumbs li {
	margin-right: 5px;
	/*margin-bottom: 32px;*/
	margin-bottom:0;
	width:100px;
}

.calendar_portrait_narrow ul.thumbs li img {
	width:98px;
	height:95px;
	border: 1px solid #A6A6A6;
}



/* calendar_single_sheet*/
.calendar_single_sheet .theme_feature_symbol {
	float:right;
}

.calendar_single_sheet ul.thumbs li {
	margin-right: 18px;
	margin-bottom: 12px;
	width:138px;
	height:160px;
}

.calendar_single_sheet ul.thumbs li img {
	width:136px;
	height:102px;
	border: 1px solid #A6A6A6;
}

.calendar_single_col {
	width:225px;
}

.full_calendar {
	line-height:0;
}

.full_calendar img {
	margin: 0;
	float:left;
}


.calendar_single_col .feature_symbol {
	float:left;
}


.singlesheet_outline {
	border: 1px solid #ccc;
	float:left;
	width:200px;
}

.header_form {
	background-color:#fff;
	text-align:right;
	margin-top:15px;
	border-radius: 5px 5px;
	border: 1px solid #000;
	float:right;
	width:225px;
	}

	.header_form input[type=text] {
		background-color:#fff;
		border-radius: 0;
		float:right;
		width:180px;
		margin: 0px;
		border: 0px;
		}

	.header_form input[type=image] {
		float:right;
	}

.hide {display:none !important;}

.left_nav ul {
	margin-top: -10px;
	width: 153px;
	margin-right: 20px;
	float:left;
}

.left_nav ul li {
	cursor: pointer;
    float: left;
    width: 100%;
    list-style: none outside none;
    margin:0;
    color: #fff;
	border-bottom: 1px solid #7AB800;
	background: #fff;
    background-size: 100% 100%;
    background-position: 0 100%;
	text-transform: capitalize;
	font-size: 12px;
}

.left_nav .inside_li {
	width: auto;
    padding: 0;
}

.left_nav .inside_text {
	position: relative;
	top: 0px;
}

div .lhs_text  {
	opacity: 1 !important;
	font-weight: 500;
    font-size: 13px;
    font-family: Verdana;
    padding: 3px 0px 4px 4px;
}

.left_nav ul li a {
	text-decoration: none;
	color: #666666;
}

.left_nav ul li a:hover {
    color:#fff;
}

.footer_categories {
	width: 760px;
	left: 120px;
	position: absolute;
	display: inline-block;
}


.category_box_footer {
	float: left;
	margin-left: 5px;
	margin-right: 5px;
	width: 32px;
	font-size: 9px;
	text-align: center;

}

.category_box_footer img{
	width: 35px;
}

/* catalog slider */
.catalog_slider_holder {
	height: 255px;
	width: 100%;
}

.flexslider {
	width: 778px;
}

.brochure_slider_holder img {
	height: 255px !important;
	width: auto !important;
}

.brochure_logo {
	float: left;
	text-align: center;
	margin-top: 20px;
}

.brochure_logo a {
	text-decoration: none;
}

.brochure_subcategory {
	float: left;
	position: relative;
}

.brochure_subcategory ul {
	margin-top: 20px;
}

.brochure_subcategory ul li {
	list-style:none;
	text-align: left;
	left: 0;
	margin-left: 0;
	padding: 1px;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 15px;
}

.brochure_subcategory ul li a {
	color: #BCBCBC;
	text-decoration: none;
}

.brochure_subcategory ul li a:hover {
	color: #888;
}

.brochure_content {
	padding-top: 20px;
	width: 745px;
	margin-bottom: 20px;
}

.brochure_text {
	width: 590px;
	margin-left: 25px;
	float: left;
}

.brochure_item {
	width: 250px;
	font-size: 16px;
	position: relative;
}

.brochure_item a {
	text-decoration: none;
}

.catalog_slider_holder img {
	height: 255px !important;
	width: auto !important;
}

.catalog_logo {
	float: left;
	text-align: center;
	width: 120px;
}

.catalog_logo img {
	width: 72px;
}

.catalog_logo a {
	text-decoration: none;
}

.catalog_logo a:first-child {
	display: inline-block;
}

.catalog_subcategory {
	float: left;
	max-width: 120px;
}

.catalog_subcategory ul {
	margin-top: 20px;
}

.catalog_subcategory ul li {

	list-style:none;
	text-align: left;
	left: 0;
	margin-left: 0;
	padding: 1px;
	font-size: 16px;
	font-weight: bold;
}

.catalog_subcategory ul li a {
	color: #BCBCBC;
	text-decoration: none;
	font-size: 0.9em;
}

.catalog_content {
	padding-top: 20px;
	width: 780px;
	position: relative;
	display: table-cell;
}

.catalog_text {
	width: 645px;
	margin-left: 15px;
	float: left;
}

.catalog_item {
	width: 250px;
	font-size: 16px;
	position: relative;
}

.catalog_item a {
	text-decoration: none;
	font-size: .8em;
	width: 215px;
	word-wrap: break-word;
	display: inline-block;
	text-indent: -25px;
    padding-left: 25px;
}

.catalog_col1 {
	display: block;
	float: left;
	left: 0px;
}

.catalog_col2 {
	display: block;
	float: left;
	left: 250px;
}

/* product slider */
.product_slider_holder {
	height: 350px;
	width: 545px;
	display: inline-block;
}

.product_also_like {
	float: right;
	text-align: center;
	width: 150px;
}

.additional_colours {
	float: right;
	text-align: center;
	width: 150px;
}

.product_content {
	padding-top: 20px;
	width: 745px;
}

.product_text {
	width: 600px;
	margin-left: 20px;
	float: left;
}

.product_title {
	font-size: 20px;
}

.product_features {
	width: 400px;
	display: relative;
}

.product_features_title {
	width: auto;
	white-space: nowrap;
	padding-right: 8px;
}

.imprint_col {
	vertical-align: middle;
}

.product_imprint {
	text-align: center;
}

.product_imprint a {
	text-decoration: none;
	font-size: 16px;
}

/* bottom right penguin style */

.bottom_right {
	float: right;
}

.page_penguin img, .bottom_right_cat img {
	margin-right: -25px;
}

.bottom_right_cat {
	position: relative;
	display: inline-block;
	margin-right: -10px;
	right: 0px;
	bottom: 0px;
}

/* ============================================================================================================================
== OVER SPEECH BUBBLE, EMPTY, WITH BORDER (more CSS3)
** ============================================================================================================================ */

.arrow_box {
	position: relative;
	float: right;
	background: #ffffff;
	border: 2px solid #000000;
	padding: 5px;
	border-radius: 50px;
	margin-bottom: 15px;
	margin-right: -20px;
	width: 110px;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 15px;
}

/* arrow_box.page is to set the space between the speech bubble
 * and the penguin on the brochure and Why Promo pages
 */
.arrow_box.page {
	margin-bottom: 30px;
}

.arrow_box:before {
	content: ' ';
	position: absolute;
	top: 100.1%;
	margin-left: -10px;
	width: 0px;
	height: 0px;
	border-style: solid;
	background: rgba(0,0,0,0);
	border-width: 35px 10px 0px 10px;
	border-color: #000 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
	-webkit-transform: scale(0.9999);
	-moz-transform: scale(0.9999);
	-o-transform: scale(0.9999);
	transform: scale(0.9999);
}


.arrow_box:after {
	content: '';
	position: absolute;
	top: 100%;
	margin-left: -8px;
	margin-top: -1px;
	width: 0px;
	height: 0px;
	background: rgba(255,255,255,0);
	border-style: solid;
	border-width: 28px 8px 0px 8px;
	border-color: #fff rgba(255, 0, 0, 0) rgba(255, 0, 0, 0) rgba(255, 0, 0, 0);
	-webkit-transform: scale(0.9999);
	-moz-transform: scale(0.9999);
	-o-transform: scale(0.9999);
	transform: scale(0.9999);
}

.oval-speech-border p {
	margin: 0 auto;
	margin-top: 3px;
}

.oval-speech-border {
	position:relative;
	float: right;
	padding:10px 20px;
	margin:0px 0px  15px;
	border:2px solid #000;
	z-index:1;
	width: 80px;
	min-height: 46px;
	margin-right: -20px;
	line-height: 1em;
	text-align:center;
	color:#333;
	background:#fff;
	-webkit-border-top-left-radius:240px 142px;
	-webkit-border-top-right-radius:240px 142px;
	-webkit-border-bottom-right-radius:240px 142px;
	-webkit-border-bottom-left-radius:240px 142px;
	-moz-border-radius:240px / 142px;
	border-radius:240px / 142px;
}

/* creates larger curve */
.oval-speech-border:before {
	content:"";
	position:absolute;
	z-index:4;
	bottom:-22px;
	right:60%;
	width:36px;
	height:21px;
	border-style:solid;
	border-width:0 2px 2px 0;
	border-color:#000;
	margin-right:4px;
	background:transparent;
	/* css3 */
	-webkit-border-bottom-right-radius:70px 65px;
	-moz-border-radius-bottomright:70px 65px;
	border-bottom-right-radius:70px 60px;
    /* reduce the damage in FF3.0 */
    display:block;
}

/* creates smaller curve */
.oval-speech-border:after {
	content:"";
	position:absolute;
	z-index:3;
	bottom:-22px;
	right:59%;
	width:20px;
	height:26px;
	border-style:solid;
	border-width:0 2px 2px 0;
	border-color:#000;
	margin-right:23px;
	background:transparent;
	/* css3 */
	-webkit-border-bottom-right-radius:65px 75px;
	-moz-border-radius-bottomright:65px 75px;
	border-bottom-right-radius:65px 75px;
    /* reduce the damage in FF3.0 */
    display:block;
}

/* creates a small circle to produce a rounded point where the two curves meet */
.oval-speech-border > :first-child:before {
	content:"";
	position:absolute;
	z-index:3;
	bottom:-22px;
	right:60%;
	width:2px;
	height:2px;
	margin-right:42px;
	background:#000;
	/* css3 */
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	border-radius:10px;
}

/* creates a white rectangle to cover part of the oval border*/
.oval-speech-border > :first-child:after {
	content:"";
	position:absolute;
	z-index:2;
	bottom:-8px;
	right:60%;
	margin-right: 6px;
	width:16px;
	height:15px;
	background:#fff;
	border: 0px;
}

ol.search_results a {
	text-decoration: none !important;
}

ol.search_results li {
	margin-top: 4px;
}

span.search_label {
	font-weight: bold;
}

.vertical_stack.slider {
	width: 290px;
	height: 152px;
}

.vertical_stack.slider #latest_scrollbar {
	width: 290px;
	position: relative;
	height: 120px;
}

.vertical_stack.slider .flexslider {
	width: 280px;
	height: 122px;
}

.side_box_email {
	margin-top: 5px;
	font-size: 16px;
}

/* Popup image holder */

#module_background {
	display: none;
	z-index: 100;
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
}

.popup_image {
	z-index: 110;
	display: none;
	position: absolute;
	background: #fff;
	border-radius: 5px;
	color: #000;
	padding: 10px;
}

#close_popup {
	cursor: pointer;
	position: absolute;
	right: 10px;
	top: 5px;
}