/* Start */
/* the default styling is optimized for 1024px */
html {
	border-top: 5px solid #2c2c2c;
}

/*p { 
	margin-bottom: 20px;
	line-height: 140%;
}
footer p {
	margin-bottom: 10px;
	width: 98%;
}
p:last-child { margin-bottom: 0 }*/
a {
	color: #666666;
	text-decoration: none;
}
a:hover { text-decoration: underline }
/* Buttons */
.button, a.button, button, input[type="button"], input[type="submit"], input[type="reset"] {
	/* your button styles */
	display: inline-block;
	position: relative;
	height: 44px;
	line-height: 44px;
	padding: 0 15px;
	background: url('../images/bg_pattern.png') #2c2c2c;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
	border: none;
	border-radius: 3px;
	cursor: pointer;
	transition: 0.2s ease;
	-webkit-appearance: none;
}
.button:focus, a.button:focus, button:focus, input[type="button"]:focus, input[type="submit"]:focus, input[type="reset"]:focus,
.button:hover, a.button:hover, button:hover, input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover {
	outline: none;
	background-color: #E31837;
	color: #fff;
	text-decoration: none;
}
.button:active, a.button:active, button:active, input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active {
	transition: none;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.8) inset;
	background-color: #3a3a3a;
	color: #bbb;
	top: 1px;
}
.button-wide { width: 100% }
.button.button-icon, a.button.button-icon, button.button-icon, input[type="button"].button-icon, input[type="submit"].button-icon, input[type="reset"].button-icon { padding-left: 35px }
.button-icon:before,
.icon {
	content: '';
	display: inline-block;
	width: 44px;
	height: 44px;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 3px 0 0 3px;
	transition: 0.2s ease;
}
.icon-cart:before,
.icon.icon-cart { background-image: url('../images/add2cart_ltl.png') }
/* Textboxes */
input[type="text"], input[type="email"], input[type="password"], select, textarea, .textbox, .textarea {
	font-family: 'Open Sans', Arial, sans-serif;
	position: relative;
	width: 100%;
	box-shadow: none;
	border-radius: 2px;
	line-height: 16px;
	height: 44px;
	font-size: 12px;
	color: #515151;
	padding: 13px 5px;
	background-color: #fff;
	border: 1px solid #d5d5d5;
	transition: color 0.4s;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}
textarea, .textarea { min-height: 84px }
/* Misc */
._desktop-only { display: inline-block !important }
._mobile-only { display: none !important }
/* Content */
.content-region h1 {
	font-size: 34px;
	line-height: 36px;
	margin: 0px 0 12px 0;
	text-transform: uppercase;
	font-weight: bold;
}
.content-region h2 {
	font-size: 28px;
	line-height: 30px;
	margin: 0px 0 21px 0;
	text-transform: uppercase;
	font-weight: 600;
}
.content-region h3 {
	font-size: 22px;
	line-height: 24px;
	margin: 0px 0 22px 0;
	text-transform: uppercase;
	font-weight: 600;
}
.content-region h4 {
	font-size: 20px;
	line-height: 24px;
	margin: 0px 0 22px 0;
	font-weight: 600;
}
.content-region h5 {
	font-size: 16px;
	line-height: 140%;
	margin: 0px 0 25px 0;
	text-transform: uppercase;
	font-weight: 600;
}
.content-region p {
	padding-bottom: 12px;
	margin: 0 0 5px 0;
	font-size: 14px;
	line-height: 140%;
}
.content-region p:last-child { margin-bottom: 0 }
.content-region ul,
.content-region ol,
ul.list, ol.list {
	padding: 0 0 18px 0px;
	list-style-position: inside;
	list-style-type: disc;
}
.content-region ol,
ol.list { list-style-type: decimal }
.content-region li,
.list li { padding: 3px 0 }
.content-region hr {
	margin: 0;
	padding: 0;
	border: none;
	height: 20px;
	display: block;
	border-top: #d5d5d5 1px solid;
}
/* Text */
.txt-emphazis, a.txt-emphazis {
    color: #E31837;
    font-size: 20px;
    text-transform: uppercase;
    text-decoration: none;
	padding-top: 10px;
}
/* Layout */
.main {
	width: 94%;
	margin: 0 auto;
}

.header-top {
	position: relative;
	padding: 20px 0;
    text-align: left;
}
.header-top-pages {
	position: relative;
	padding: 25px 0;
}
.header-translate-controls {
	position: absolute;
	top: 10px;
	right: 10px;
}
.translate-link {
	font-size: 12px;
	display: inline-block;
	position: relative;
	height: 16px;
	line-height: 16px;
	vertical-align: top;
	margin-left: 10px;
	cursor: pointer;
	border-bottom: 1px dashed #ccc;
	opacity: 0.7;
	trnsition: opacity 0.2s ease;
}
.translate-link:hover,
.translate-link.active {
	opacity: 1;
	border-bottom: 1px solid #ccc;
}
.translate-link[data-lang] { margin-left: 30px }
.translate-link[data-lang]:before {
	content: '';
	display: block;
	width: 16px;
	height: 12px;
	background-image: url('../images/flags.png');
	background-repeat: no-repeat;
	position: absolute;
	top: 2px;
	left: -20px;
}
.translate-link[data-lang="en"]:before { background-position: -32px 0 }
.translate-link[data-lang="fr"]:before { background-position: -16px 0 }
.translate-link[data-lang="de"]:before { background-position: 0 0 }
.header-search-controls {
	position: absolute;
	right: 0;
	text-align: right;
	top: 35px;
}
.translate-list {
	display: block !important;
	visibility: hidden;
	background: #fff;
	position: absolute;
	top: 100%;
	right: 0;
	opacity: 0;
	transition: 0.2s ease;
	transition-delay: 0.5s;
	z-index: 10000;
	min-width: 180px;
	max-height: 320px;
	overflow-y: scroll;
	padding: 5px;
}
.translate-link:hover > .translate-list {
	visibility: visible;
	transition-delay: 0.05s;
	opacity: 1;
}
.translate-list > .translate-link { 
	display: block;
	margin-left: 10px;
	padding: 4px 0;
	height: auto;
}
.translate-list > .translate-link:before { 
	content: '';
	display: none;
}
.header-member-controls {
	text-align: right;
	margin-top: 0px;
	position: absolute;
	top:10px;
	right: 10px;
}
.container-slogan {
	display: inline-block;
	vertical-align: top;
	padding: 0px 0 0px 20px;
	margin-left: 20px;
	border-left: 1px solid rgba(0, 0, 0, .2);
	height: 50px;
	color: #f8f8f8;
	font-size: 12px;
	line-height: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.container-slogan-footer {
	display: inline-block;
	vertical-align: top;
	padding: 15px 0 0px 20px;
	margin: 10px 0 0 20px;
	border-left: 1px solid #ffffff;
	height: 50px;
	color: #ffffff !important;
	font-size: 25px;
	line-height: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.part-company-email {
	text-align: right;
	vertical-align: top;
}
.page-content {
	border-radius: 0 0 2px 2px;
	padding: 30px 0;
}
.footer-bottom {
	line-height: 40px;
	padding: 20px 0;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.15);
}

.logo {
    display: inline-block;
    height: 100%;
    line-height: 40px;
    width: 260px;
}
.logo>img {
	width: 100%;
	vertical-align: middle;
	display: inline-block;
}
.logo-header {
	z-index: 9999;
}
.logo-footer {
margin-left: -5px;}
.content {
	width: 74.358%;
	float: left;
}
.sidebar {
	width: 23.077%;
	float: right;
}
.box-dec {
	overflow: hidden;
	border-radius: 2px;
}
.row-events {
	overflow: hidden;
	min-height: 250;
	border-radius: 2px;
	margin-bottom: 10px;
	position: relative;
}
.row-events-icon {
    float: left;
    height: auto;
    margin-right: 20px;
    margin-bottom: 20px;
    position: relative;
    width: 300px !important;
}
.row-events-link, a.row-events-link {
    bottom: 20px;
    color: #83277b;
    display: block;
	text-decoration: none !important;
	margin-top: 20px;
}
.row-dec {
	background: url('../images/bg_pattern.png') #454545 repeat;
	overflow: hidden;
	height: 84px;
	color: #c4c4c4;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
	position: relative;
	line-height: 100%;
}
.row-dec-icon,
.row-dec-content {
	display: block;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.row-dec-icon {
	width: 84px;
	height: 84px;
	float: left;
	margin-right: 20px;
	position: relative;
}
.row-dec-icon:before {
	content: '';
	width: 8px;
	height: 8px;
	display: block;
	position: absolute;
	left: 76px;
	top: 20px;
	background: url('../images/arrow.png') no-repeat;
}
.row-dec-icon > img {
	width: 100%;
	height: 100%;
}
/* Tabs */
.tab-contents a {
	color: #fff;
	text-decoration: underline;
}
.tab-headers {
    font-size: 0;
    letter-spacing: 0;
}
.tab-item-header {
    height: 44px;
    line-height: 44px;
    color: #a1a1a1;
    font-weight: bold;
    font-size: 14px;
    text-transform: uppercase;
    background: url('../images/bg_pattern.png') #2c2c2c;
    display: inline-block;
    padding: 0 19px;
    margin-right: 3px;
    border-radius: 3px 3px 0 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 -1px 2px rgba(0,0,0,0.25) inset;
    position: relative;
    top: 1px;
    z-index: 1;
}
.tab-item-header:hover,
.tab-item-header.active {
	text-decoration: none;
	background-color: #454545;
	border-bottom-color: transparent;
	box-shadow: none;
	color: #fff;
}
.tab-item-content {
    background: url('../images/bg_pattern.png') repeat #454545;
    color: #c4c4c4;
    padding: 20px;
    display: none;
}
.tab-item-content.active { display: block }
ul.list-dec li {
	display: block;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	border-bottom: 1px solid #000;
	padding: 10px 0;
}
ul.list-dec li:first-child { border-top: none }
ul.list-dec li:last-child { border-bottom: none }
/* Flow items */
.group-inline,
.container-flow {
	font-size: 0px;
	letter-spacing: 0;
}
.group-inline > div {
	display: inline-block;
	vertical-align: top;
}
.flow-item {
	width: 31.3%;
	height: auto;
	overflow: hidden;
	display: inline-block;
	margin: 0 3% 3% 0;
	vertical-align: top;
	line-height: 0;
}
.flow-item:nth-child(3n),
.flow-item.nth-child-3n { margin-right: 0 }
.group-dec > * {
	border-left: 1px solid rgba(255, 255, 255, 0.1);
	border-right: 1px solid #000;
}
.product-controls .add-quantity > div {
	display: inline;
}
.group-dec > *:first-child { border-left: none }
.group-dec > *:last-child { border-right: none }
/* Search */
.search-wrapper {
	position: relative;
	height: 44px;
	display: block;
	overflow: hidden;
	transition: 0.2s ease;
}
.search-box-container {
	display: inline-block;
	vertical-align: top;
}
/* Pages */
h1.page-title {
	font-size: 32px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 0 20px;
	line-height: 100%;
}
h1.page-title.product-title { margin: 5px 0 20px }
.page-image > img {
	width: 100%;
	margin-bottom: 30px;
}
.main-text {
	position: relative;
	text-align: center;
	padding: 25px 0;
	margin: 25px auto;
}
.main-text:before,
.main-text:after {
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background: url('../images/hr.png') no-repeat center;
	z-index: 5;
	content: '';
}
.main-text:before { top: 0 }
.main-text:after { bottom: 0 }
.main-text h1 {
	font-size: 35px;
	font-weight: bold;
	text-transform: uppercase;
	color: #00b3d7;
	line-height: 100%;
}
.main-text h3 {
	font-size: 20px;
	margin-top: 20px;
	font-weight: 600;
}
.homepage-columns { padding-bottom: 30px }
.box {
	font-size: 14px;
	padding: 0 10px;
}
.box:first-child {
	padding-left: 0;
	padding-right: 20px;
}
.box:last-child {
	padding-right: 0;
	padding-left: 20px;
}
.box h2,
.box-title {
	font-size: 22px;
	font-weight: 300;
	margin-top: 10px;
	margin-bottom: 20px;
	line-height: 100%;
}

.sidebar-box { margin-bottom: 30px }
.sidebar-box:last-child { margin-bottom: 0 }

.row-news-link,
a.row-news-link {
	text-decoration: none;
	color: #fff;
	display: block;
	position: absolute;
	bottom: 20px;
	left: 105px;
}
/*Gallery */

.thumbnav {
    float: left;
    margin: 0 0px 3px 3px;
    padding: 0;
}
.galleryThumbnails {
    height: 75px;
}
.galleryThumbnails ul, .breadcrumb ul, .support_item ul, ul.form, ul.formFields, .teaching-resources ul.login {
    list-style: outside none none !important;
}
.galleryThumbnails {
    height: 75px;
	margin-bottom: 40px;
}
.cycle-pager-active { 
opacity: .5;
}
.productimage {
	height: auto;
	padding-bottom: 10px;
}
/* Close Gallery */

.box-row-title {
	display: block;
	cursor: pointer;
	margin-bottom: 5px;
	color: #f3f3f3;
	text-transform: uppercase;
	font-weight: bold;
}
.box-icon {
	display: block;
	width: 100%;
	height: 100%;
	background-color: #ea497e;
	background-repeat: no-repeat;
	background-position: center;
	transition: 0.25s ease;
}
.box-icon:hover,
.box-icon:focus { background-color: #fec90a }
.box-product { font-size: 14px;
margin-top: 10px;
}
.box-news {
	background: url('../images/bg_pattern.png') #454545;
	color: #a1a1a1;
	margin-bottom: 40px;
	overflow: hidden;
	line-height: 0;
}
.box-news-content { border-bottom: 2px solid #1c1c1c }
.box-news-summary {
	padding: 15px 20px;
	border-top: 1px solid #575757;
	line-height: 140%;
}
.box-icon-news { background-image: url('../images/post_type_text.png') }
.box-icon-shop { background-image: url('../images/btn_add2cart.png') }
.icon-item {
	height: 32px;
	line-height: 32px;
	vertical-align: middle;
	margin-bottom: 4px;
}
.icon-item:before {
	content: '';
	display: inline-block;
	width: 32px;
	height: 32px;
	vertical-align: middle;
	margin-right: 5px;
	background: url('../images/contact-icons.png') #2c2c2c no-repeat;
	border-radius: 3px;
}
.icon-item-home:before { background-position: 0 0 }
.icon-item-phone:before { background-position: 0 -32px }
.icon-item-mail:before { background-position: 0 -64px }
.icon-item-fb:before { background-position: 0 -96px }
.icon-item-tw:before { background-position: 0 -128px }
.row-form,
.form > li,
ul[id$="ulSearch"] > li { /*pain*/
	margin-bottom: 10px;
	overflow: hidden;
	/*line-height: 0;*/
}
.form-errors ul { margin: 10px 0 }
.form-errors li {
	display: block;
	margin-bottom: 4px;
	color: #d60000;
}

.form-label-checkout,
.form-field-checkout {
	display: block;
    float: left;
    vertical-align: middle;
    height: 25px;
    line-height: 25px;
}
.form-label-checkout { width: 30% }
.form-field-checkout { width: 60% }
.form-label,
.form-field {
	display: block;
    float: left;
    vertical-align: middle;
    height: 44px;
    line-height: 44px;
}
.form-label { width: 25% }
.form-field { width: 60% }
.title-checkbox {
    vertical-align: middle;
    font-size: 14px;
}
.checkout-details { margin-top: 30px }
/* Products */
.product-properties { margin-bottom: 15px }
.product-review-form {
	position: relative;
	background-color: #fff;2
	width: 100%;
	margin-bottom: 30px;
}
.control-close {
	position: absolute;
	right: 7px;
	top: 7px;
	cursor: pointer;
}
.control-close:before {
	content: '\00D7';
	font-size: 24px;
	line-height: 12px;
	color: #aaa;
	text-shadow: none;
	transition: 0.2s ease;
}
.control-close:hover:before { color: #454545 }
.twitter-feed > iframe { width: 100% !important }


.footericontext {
    float: left;
    font-size: 16px !important;
    line-height: 32px;
    width: auto;
}
.footericons {
    float: left;
    margin-right: 10px;
	width: 30px;
}

/* Cart Summary Styles */

.cart-summary-wrapper {
	margin-top: 0px;
	margin-bottom: 10px;
}

.cart-summary-wrapper a {
	display: inline-block;
}

.cart-summary {
	width: 40px;
	height: 40px;
	background-color: #CCCCCC;
	color: #fff;
	font-size: 14px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	padding-top: 10px;
	font-weight: bold;
	margin-right: -4px;
}

.cart-summary .totalLabel, .cart-summary .totalValue, .cart-summary .total, .cart-summary .controls {
	display: none;
}
div.cart-summary ul, li  {
    list-style: none;
}
/* Tabs */
.tab-contents a {
	color: #fff;
	text-decoration: underline;
}
.tab-headers {
    font-size: 0;
    letter-spacing: 0;
}
.tab-item-header {
    height: 44px;
    line-height: 44px;
    color: #a1a1a1;
    font-weight: bold;
    font-size: 14px;
    text-transform: uppercase;
    background: url('../images/bg_pattern.png') #2c2c2c;
    display: inline-block;
    padding: 0 19px;
    margin-right: 3px;
    border-radius: 3px 3px 0 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 -1px 2px rgba(0,0,0,0.25) inset;
    position: relative;
    top: 1px;
    z-index: 1;
}
.tab-item-header.active {
	text-decoration: none;
	background-color: #E31837;
	border-bottom-color: transparent;
	box-shadow: none;
	color: #fff;
}
.tab-item-header.active:hover {
	text-decoration: none;
	background-color: #000000;
	border-bottom-color: transparent;
	box-shadow: none;
	color: #fff;
}
.tab-item-content {
	background-color: #F0F0F0 ;	
    color: #323232;
    padding: 20px;
    display: none;
}
.tab-item-content ul li {
	list-style: disc;
	margin-left: 15px;
}
.tab-item-content.active ul li {
	list-style: disc;
	margin-left: 15px;
}
.tab-item-content.active { display: block; }
@media screen and (min-width: 1200px) {
	.cart-summary-wrapper {
		margin-top: 2px;
		margin-bottom: 0;
		z-index: 1000;
	}
}