/* default stylesheet definitions */

/* Generic HTML defaults */
html {
	overflow-y: scroll;
}
/* EMAIL START */
body {
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	font-size: 80%;
}
body#print {
	margin: 2em;
}
body.email {
	margin: 1em;
	color: #000;
	background-color: #fff;
}
body.email a {
	color: #0000ff;
}
body.email a:visited {
	color: #800080;
}
/* EMAIL END */
div#wrap_protected {
	margin: 0 auto;
	width: 500px;
}
input[type=text], input[type=password], input[type=email], textarea {
/*	font-size: 100%;  inherit base fontsize */
/*	font-family: inherit;  inherit base family, see Bug #1789 */
	margin: 2px 0;
	padding-left: 0;
	padding-right: 0;
}
input[type=checkbox], select {
	margin-left: 0;
}
/* Hidden default button for forms.
   Add after opening FORM tag to forms that have other buttons before the default action. */
input.hiddensubmit {
	width: 0px !important;
	height: 0px !important;
	margin: 0px !important;
	padding: 0px !important;
	outline: none !important;
	border: 0px !important;
} 

/* From http://www.w3.org/TR/CSS21/sample.html slightly changed */
/* EMAIL START */
h1 {
	font-size: 1.7em;
	margin: .67em 0;
}
h2 {
	font-size: 1.37em;
	margin: .75em 0;
}
h3 {
	font-size: 1.17em;
	margin: .83em 0;
}
/*h4, p, fieldset, form, dl, dir, menu*/
h4 {
	margin: 1.12em 0;
}
ul, ol {
	margin-top: 1.12em;
	margin-bottom: 1.12em;
}
h5 {
	font-size: .83em;
	margin: 1.5em 0;
}
h6 {
	font-size: .75em;
	margin: 1.67em 0;
}
/* EMAIL END */

.sitename, .slogan {
	text-decoration: none;
}
.blockheads a, /* Avoid content link color in designed block heads (weak rule as possible) */
.blockheads a:hover,
.blockheads a:visited {
	color: inherit;
	text-decoration: none;
}

/* Cookie law notification */
div.cookienote_buttons {
	display: inline;
}
div.cookienote_buttons_br {
	display: block;
	margin-top: 1em;
	text-align: center;
}
form.cookiehastoggle.showcookienote {
	max-height: 600px;
}
form.cookiehastoggle {
	max-height: 0;
	transition: max-height 0.5s;
	-webkit-transition: max-height 0.5s;
	overflow: hidden;
}
div.wrap_cookie_asoverlay {
	position: absolute;
	top: 0;
	right: 20px;
	width: 200px;
	z-index: 1000;
	display: none; /* Shown by JS! */
	opacity: 0;
	transition: opacity 1s;
}
div.wrap_cookie_tab {
	background-color: #fafafa;
	border: 1px solid #000;
	border-top-width: 0;
	padding: 5px;
	border-radius: 0 0 5px 5px;
}
div.wrap_cookie_bar {
	border-radius: 0;
	width: auto;
	left: 0;
	right: 0;
	padding: 15px;
	background: #000;
	background: rgba(0,0,0,0.7);
	color: #fff;
}
div.wrap_cookie_bar a, div.wrap_cookie_bar h2 {
	color: #fff;
}
div.wrap_cookie_popup {
	position: fixed;
	border-radius: 0;
	width: 50%;
	left: 25%;
	top: 200px;
	padding: 25px 0;
	border: 1px solid black;
	background-color: #fff;
	color: #000;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.4);
	border-radius: 5px;
}
div.wrap_cookie_popup h2 {
	text-align: center;
}
div.wrap_cookie_popup > * {
	margin-left: 25px;
	margin-right: 25px;
}
@media screen and (max-width: 480px) {
	div.wrap_cookie_popup {
		width: 80%;
		left: 10%;
		top: 100px;
	}
}

/* poll, form, survey, test yourself */
.poll-marker {
	color: #ff0000;
}
.poll-title, .poll-subtitle, .poll-note {
	margin-top: 1em;
	margin-bottom: 1em;
}
div.poll-subtitle {
	font-weight: bold;
}

form.pollform input[type=text],
form.pollform input[type=password],
form.pollform input[type=email],
form.pollform textarea {
	font-family: Monospace;
}
div.pollresults .f_row {
	margin-bottom: 1em;
	margin-top: 1em;
}
div.poll-result-percentage {
	border: 1px solid;
	text-align: center;
	float: left;
	padding: 8px 0 8px 0;
	width: 48px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
div.poll-option-result {
	margin-left: 20px; /* percentage full width */
	padding-left: 1em;
	margin-bottom: 1px;
}
p.poll-result-label {
	margin: 0;
}
div.poll-result-bar-container {
	border: 1px solid #666666;
	margin-top: 1px;
	height: 10px;
}
div.poll-results-votes {
	float: right;
	text-align: right;
	font-size: 0.8em;
}
div.poll-result-option {
	margin-bottom: 1px;
}
div.poll-option-result img {
	position: relative;
	top: 2px;
}
div.poll-bar {
	background-color: #FFFFFF;
	background-image: url('/Default/Images/poll-bar.jpg' );
	background-repeat: repeat-x;
	display: block;
	height: 10px;
	line-height: 0;
}

div.poll-useranswer {
	float: left;
	margin-left: 10px;
	width: 14px;
	height: 14px;
}
div.poll-useranswer img {
	vertical-align: bottom;
}
span.assessment img {
	vertical-align: baseline;
	margin-left: 10px;
}

div.testyourself-results {
	margin: 2em;
	padding: 1em;
	border: solid black 1px;
}
p.testyourselfresults {
	text-align: center;
}
h2.test-result-title, div.testyourself-trylink {
	margin-top: 1em;
	margin-bottom: 1em;
	text-align: center;
}
div.shareresult {
	margin-top: 1em;
}
/* Poll intro layouts */
div.pollleft,
div.pollright {
	position: relative; /* for child z-index */
	zoom: 1; /* IE7 */
}
div.pollleft form.pollform,
div.pollright form.pollform,
div.polltop div.poll_introwrap,
div.pollbottom div.poll_introwrap {
	margin-top: 0;
}
div.pollleft div.poll_introwrap {
	float: left;
	width: 50%;
	position: relative;
	z-index: 71;
}
div.pollleft div.poll_content {
	float: right;
	margin-left: -50%;
	width: 100%;
	position: relative;
	z-index: 70;
}
div.pollleft form.pollform {
	margin-left: 50%;
	padding-left: 2.4%;
}
div.pollright div.poll_introwrap {
	float: right;
	width: 50%;
	position: relative;
	z-index: 71;
}
div.pollright div.poll_content {
	float: left;
	margin-right: -50%;
	width: 100%;
	position: relative;
	z-index: 70;
}
div.pollright form.pollform {
	margin-right: 50%;
	padding-right: 2.4%;
}
div.polltop div.poll_introwrap {
	margin-bottom: 1em;
}
@media screen and (max-width: 768px) {
	body div.pollleft div.poll_introwrap,
	body div.pollleft div.poll_content,
	body div.pollleft form.pollform,
	body div.pollright div.poll_introwrap,
	body div.pollright div.poll_content,
	body div.pollright form.pollform {
		float: none;
		width: 100%;
		margin: 1em 0;
		padding-right: 0;
		padding-left: 0;
	}
}

div.pollleft:after,
div.pollright:after,
form.pollform:after {
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}


div.pollprevbtn {
	float: left;
}
div.pollnextbtn {
	margin-right: 6em;
}

div.pollpager 
{
	margin: 0.8em 0;
	padding: 0.2em;
/*	border: 1px solid #aaa;*/
}
div.pollpager ol {
	counter-reset: item;
	margin: 0;
	padding: 0;
	line-height: 22px;
}
div.pollpager li {
	display: inline;
	white-space: nowrap;
	margin-bottom: .5em;
	margin-left: 2em;
/*	list-style-type: none;*/
	padding: 0;
	vertical-align: baseline;
}
div.pollpager li:before {
	display: inline-block;
	content: counter(item) ". ";
	counter-increment: item;
	width: 30px;
	background-image: url("/Default/Images/pagenumber-bg-gray.png");
	background-repeat: no-repeat;
	background-position: left center ;
	padding-left: 10px;
	color: #FFFFFF;
}

div.pollpager li.current
{
	font-weight: bolder;
}
div.pollpager li.current:before {
	background-image: url("/Default/Images/pagenumber-bg.png");
}
	
form.pollform div.captcha {
	clear: left;
	margin-top: 1em;
}

div.wrap_block div.poll-thankmsg {
	margin-bottom: 1em;
}

/* User Forms (was: Members Area) */

p.error, span.error, code.error {
	color: #ee0033;
	font-weight: bold;
}
code.error {
	font-size: 110%;
}
div.errorpanel {
	border: 1px solid #ee0033;
	padding: 2px;
	margin-bottom: 1px;
}
p.status, span.status {
	font-weight: bold;
}
form div.separator {
	line-height: 0.5em;
}
div.newsletters, div.note, div.regprofilenote, div.acceptterms { /* All reg. sections need margin */
	margin-top: 1em;
	clear: left;
}
/* FIXME: Remove no reference found in whole source code!
div.protected-login {
	width: 20em;
	margin: 0 auto;
}
div.protected-login h1, div.protected-login form, div.protected-login p {
	text-align: center;
}
div.protected-login form.horizontal label {
	float: none;
	display: inline;
}
div.protected-login form.horizontal div {
	float: none;
	clear: none;
}
*/
table.userdata th {
	text-align: right;
}
div.reg-description,
div.regprofilenote,
div.regprofilechk {
	margin: 1em 0;
}
div.loginonregister.loginleft,
form.regwithlogin.loginright {
	width: 48.8%; /* Value from grid system 2.4% margin */
	float: left;
}
div.loginonregister.loginright,
form.regwithlogin.loginleft {
	width: 48.8%;
	float: right;
}
@media screen and (max-width: 768px) {
	div.loginonregister.loginleft,
	form.regwithlogin.loginright,
	div.loginonregister.loginright,
	form.regwithlogin.loginleft {
		width: auto;
		float: none;
	}
}

/*input.profile-disabled
{
	background-color: #d4d0c8;
}
input.profile-enabled
{
	background-color: transparent;
}*/
ul.usefullinks { /* may be single "p.usefullink" (no UL), or mutliple "li.usefullink) */
	list-style-type: none;
	margin-left: 0;
	padding-left: 0;
	line-height: 1.5;
}

/* WPS 4.5 GUESTBOOK */

/* Guestbook: Archives */

table.guestbook-archive {
	border-collapse: collapse;
	border: solid 1px black;
	margin-bottom: 10px;
}
table.guestbook-archive tr td, table.guestbook-archive tr th {
	border: solid 1px black;
	vertical-align: top;
	padding: 4px;
}
table.guestbook-archive tr th {
	font-size: 100%;
}
table.guestbook-archive tr td.notactivecell {
	background-color: #ffffff;
}
table.guestbook-archive tr td.activecell {
	background-color: #bbbbbb;
}

table.guestbook-archive tr td div.monthname {
	font-size: 90%;
	margin-bottom: 3px;
}
table.guestbook-archive tr td div.postcount {
	font-size: 110%;
	text-align: right;
	font-weight: bold;
}

/* Guestbook: show comments */

div.guestbook-comment {
	margin-bottom: 1em;
	border: 1px solid black;
}
p.guestbook-subject {
	background-color: #eee;
	color: #000;
	padding: 0.5em;
	border-bottom: 1px solid black;
	font-weight: bold;
}
div.guestbook-message {
	padding: 0.5em;
	clear: right; /* Go below date */
}
div.guestbook-message img {
	display: block;
	float: right;
	margin-left: 2em;
	margin-bottom: 0.5em;
	border: 1px solid black;
}

div.guestbook-comment table td {
	padding-left: 0.5em;
}

p.guestbook-date {
	float: right;
	margin-right: 0.5em;
	margin-top: 0;
}

/* User data table */

table.guestbook-userdata th {
	text-align: right;
}

table.guestbook-userdata td.notverified {
	font-style: italic;
}

/* EVENT CALENDAR */

/* List/table switch */

p.calendar-viewswitch {
	text-align: right;
}

a.calendar-view-list {
	padding: 5px 5px 5px 25px;
	background: url("/Default/Images/calendar-list-black.png") no-repeat 5px 50%;
}

a.calendar-view-table {
	padding: 5px 5px 5px 25px;
	background: url("/Default/Images/calendar-black.png") no-repeat 5px 50%;
}

/* Single event */

div.event_text,
div.event_shortdesc {
	margin-top: 1em;
	margin-bottom: 1em;
}

table.eventdates {
	border-collapse: collapse;
	margin-top: 1em;
	margin-bottom: 1em;
}

table.eventdates td, table.eventdates th {
	padding: 4px;
}

table.eventdates th {
	text-align: left;
}

/* Event list */

table.calendar-list {
	border-collapse: collapse;
}

table.calendar-list td, table.calendar-list th {
	vertical-align: top;
	border: 1px solid;
	padding: 4px;
}

p.calendar-section-date {
	font-weight: bold;
}
div.calendar-list-page div.calendar-list-section {
	padding: 10px 0 10px 15px;
	position: relative;
	margin-bottom: 1px;
}
div.calendar-list-page div.calendar-list-section h2 {
	margin-top: 0;
}
div.calendar-list-page div.calendar-list-section:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 6px;
	background-image: linear-gradient(to bottom, #bbbbbb 0%, #eeeeee 100%);
}

/* Month and year calendar */

div.calendar-navigation {
	width: 100%;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 1em;
}

p.calendar-formlinks a, p.calendar-formlinks span {
	margin: 0 0.5em;
	padding: 0 1em;
}

table.calendar-table {
	width: 100%;
	border: solid 1px;
	border-collapse: collapse;
}

table.calendar-table td, table.calendar-table th {
	padding: 0;
	border: solid 1px;
	width: 13%; /* 7 days of a week */
	vertical-align: top;
}

div.wrap_pageblock table.calendar-table td {
	height: 7em; /* works as min-height */
}

div.cal_box_title {
	text-align: center;
	font-size: 120%;
}
div.cal_box_title a, 
div.cal_box_title span {
	display: block;
	padding: 3px 3px 3px 5px;
	text-decoration: none;
}
div.cal_box_title a {
	font-weight: bold;
}
div.wrap_pageblock div.cal_box_title {
	margin-bottom: 4px;
}
div.wrap_pageblock div.cal_box_title {
	text-align: left;
}
div.cal_box_info a {
	padding: 0 2px 0 5px;
	margin-bottom: 5px;
	text-decoration: none;
	font-weight: bold;
	display: block;
}
div.cal_box_info span {
	padding: 0 2px 0 5px;
}
div.cal_yearpage div.cal_box_info {
	text-align: left;
}
div.wrap_pageblock div.cal_box_info a + a {
	border-top: 1px solid;
	padding-top: 4px;
}
div.cal_box_title a:hover,
div.cal_box_info a:hover {
	text-decoration: underline;
}

p.events-blocklink {
	text-align: center;
	width: 100%;
	padding-top: 0.2em;
}

div.cal_monthbox {
	min-height: 7em;
	float: left;
	border: 1px solid;
	text-align: center;
	vertical-align: top;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

ul.calendar-links {
	list-style-type: none;
	margin: 1em 0 0 0;
	padding: 0;
	clear: both;
}
ul.calendar-links li {
	margin: 0.5em 0;
	padding: 0;
}

/* Calendar colors only - hardcoded! */
p.calendar-viewswitch a {
	background-color: #eee;
	text-decoration: none;
}
div.cal_monthbox { /* year view */
	border-color: #777;
}
table.calendar-list td, table.calendar-list th {
	border-color: #777;
}
table.calendar-table, table.calendar-table td, table.calendar-table th {
	border-color: #777;
}
/*table.calendar-table td.Sunday, table.calendar-table td.Saturday {
	background-color: #e0e0e0;
	color: #000;
}*/
table.calendar-list tr:nth-child(odd) {
	background-color: #eee;
}
div.calendar-list-page div.calendar-list-section:nth-child(odd) {
	background-color: #eee;
}
div.calendar-list-page div.calendar-list-section:before {
	background-image: linear-gradient(to bottom, #bbbbbb 0%, #eeeeee 100%);
}

div.wrap_pageblock div.cal_box_info a + a {
	border-color: #e8e8e8;
}
div.cal_box_title {
	background-color: #eee;
}

table.calendar-table td.today, div.cal_yearpage div.today, td.today div.cal_box_title {
	background-color: #e0e0e0;
	color: #000;
}
ul.calendar-links.cal_separator {
	border-top: 1px solid #777;
}
table.eventdates {
	background-color: #eee;
}
p.event_cancelled {
	color: #ee0033;
	font-weight: bold;
}

/* SiteMap */

div.sitemap ul {
	list-style: none;
	margin: 0 0 0 15px;
	padding: 0;
}
div.sitemap ul ul {
	padding-left: 15px;
	margin-left: 0px;
}
div.sitemap_tree ul li {
	margin-top: 1em;
	font-weight: bold;
}
div.sitemap_tree ul li li {
	font-weight: normal;
	margin-top: 0px;
}
div.sitemap_sections {
	-webkit-column-count: 2;
	-webkit-column-gap: 2em;
	-moz-column-count: 2;
	-moz-column-gap: 2em;
	column-count: 2;
	column-gap: 2em;
}
div.sitemap_section {
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	column-break-inside: avoid;
	/* w3c format */
	-webkit-break-inside: avoid-column;
	-moz-break-inside: avoid-column;
	break-inside: avoid-column;
	display: table; /* avoid break until better support */
}
div.sitemap_section h2 {
	margin-top: 0; /* To align columns */
}
div.sitemap_section > ul {
	margin-bottom: 1em;
}
@media screen and (max-width: 480px) {
	div.sitemap_sections {
		-webkit-column-count: 1;
		-moz-column-count: 1;
		column-count: 1;
	}
}

div#perftimers {
	background-color: Yellow;
	color: Black;
}

/* Banners */

a.banner, img.banner, a.banner img, object.banner {
	display: inline-block;
}
div.bannerratiowrap a.banner {
	display: block; /* Intrinsic ratio requires */
}
div.bannerratiowrap video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
div.bannerlist .banner {
	display: inline-block;
	vertical-align:text-bottom;
}
div.bannertext {
	padding-top: 1px; /* To avoid text content margin's outflow */
	padding-bottom: 1px;
}
div.bannertext > *:first-child {
	margin-top: 0;
}
div.bannerlist div.slide {
	margin-bottom: 5px;
}
div.bannerlist div.slide:last-child {
	margin-bottom: 0;
}
div.listmulti div.multislide {
	float: left;
	margin-left: 5px;
	margin-bottom: 0;
}
div.listmulti div.multislide:first-child {
	margin-left: 0;
}
div.bannerlist div.sliderow {
	clear: left;
	margin-bottom: 5px;
	margin-left: 0;
}
div.listmulti:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.bannerlisttitle { /* a H3 */
	font-size: 100%;
	display: inline-block;
	margin: 0;
}

.nivoSlider { 
	position:relative; 
}
.nivoSlider img {
	position:absolute;
	top:0px;
	left:0px;
	display:none;
}
.nivoSlider a {
	border:0;
	display:block;
}
/* Cycle banner pager cloned from jquery.bxslider.inbox.css */
div.cyclepager {
	text-align: right;
	padding-right: 4px;
	font-size: .85em;
	font-family: Arial, sans-serif;
	font-weight: bold;
	color: #666;
	margin-top: -25px;
	z-index: 9999;
	position: relative;
}
div.cyclepager a, div.cycle-pager a {
	background: #666;
	text-align: center; /* To make text-indent work on right aligned dots */
	text-indent: -9999px;
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 0 4px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	cursor: pointer;
}
div.cycle-pager a.cycle-pager-active {
	background-color: #222;
}
div.cycle-numbers a {
	text-indent: 0;
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-decoration: none;
	color: #fff;
	border: 1px solid #eee;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}
.cyclepager a.activeSlide {
	background: #000;
}
/* Cycle2 */
div.cycle-pager {
	position: absolute;
	bottom: 7px;
	left: 0;
	right: 0;
	text-align: right;
	line-height: 20px;
	padding-right: 4px;
	font-size: .85em;
	font-family: Arial, sans-serif;
	font-weight: bold;
	color: #666;
	z-index: 9999;
}
div.cycle-slideshow img {
	max-width: none;
	width: 100%;
	height: auto !important;
	display: block;
}
.cycle-prev, .cycle-next {  /* Style copied from our colorbox theme */
	position: absolute;
	top: 0;
	bottom: 30px; /* Place for pager */
	z-index: 199;
	width: 55px;
	text-indent:-9999px;
	outline: 0;
	background-repeat: no-repeat;
	cursor: pointer;
}
.cycle-prev {
	background-image: url("/Default/Scripts/cycle2/arrow_left_white_t60.png");
	background-position: 7px center;
	left: 0;
}
.cycle-next {
	background-image: url("/Default/Scripts/cycle2/arrow_right_white_t60.png");
	background-position: 99% center;
	background-position: right 7px center; /* More precise for IE9+ */
	right: 0;
}
.cycle-prev.disabled, .cycle-next.disabled {
	opacity: 0.4;
}
.cycle-caption {
	z-index: 199;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 30px;
	line-height: 30px;
	background-color: rgba(0,0,0,0.3);
	color: #fff;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.9);
	font-size: 120%;
	padding-left: 10px;
}

/* Forms */
div.f_row {
	margin-bottom: 0.6em;
	clear: left; /* make sure we don't overlap longer left-floated titles */
}
div.f_row:after {
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}
.f_label {
	float: left;
	width: 200px;
	text-align: right;
	padding-top: 3px; /* To align with input field vertically */
}
.f_label_checkbox, .f_label_radio, .f_label_select {
	padding-top: 0; /* To align with controls vertically */
}
.f_first .f_label {
	text-align: right;
}
.f_fields {
	margin-left: 200px;
	padding-left: 0.8em;
}
@media screen and (max-width: 480px) {
	.f_label {
		width: 160px;
	}
	.f_fields {
		margin-left: 160px;
	}
}
@media screen and (max-width: 320px) {
	.f_label {
		width: 130px;
	}
	.f_fields {
		margin-left: 130px;
	}
}
div.f_fields input[type=text],
div.f_fields input[type=password],
div.f_fields input[type=email],
div.f_fields textarea {
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
div.f_buttons input {
	margin-left: 0; /* To align with text input fields */
}
div.f_option {
	margin-bottom: 0.2em;
}
/* Overrides for vertical: label above field */
.vertical .f_label,
.labelinfield .f_label {
	float: none;
	width: auto;
	text-align: left;
	margin-bottom: 4px;
}
.vertical .f_fields,
.labelinfield .f_fields {
	margin-left: 0;
	padding-left: 0;
}
.vertical div.regprofilecheck .f_label,
.labelinfield div.regprofilecheck .f_label {
	float: left;
	margin-right: 5px;
}
div.f_joinnext, div.f_join { /* Join lines will float to left */
	float: left;
	margin-right: 1em;
}
div.f_join {
	clear: none;
}
div.f_join .f_label { /* Joined second lines squeeze space */
	width: auto;
}
div.f_join .f_fields {
	float: left;
	margin-left: 0;
}
/* Options join differently FIXME: decide which solution to choose 
"inline" cannot have WIDTH on f_optfirst. 
If set "inline-block" it made the \a break yet another line, but not with my current tests
(Chrome42, IE11, FF37.) */
div.f_optjoinnext, div.f_optjoin { 
	display: inline-block;
	margin-right: 1em;
}
div.f_optjoin + div.f_optjoinnext:before { 
	content: "\a"; /* CSS linebreak */
	white-space: pre;
}

/* The second option falls below multi-line question due to clear:left!
The first-child clear:none below is a half-solution to this avoiding that first option also falls.
div.f_optjoinnext, div.f_optjoin { 
	float: left;
	margin-right: 1em;
}
div.f_optfirst { 
	clear: left;
	min-width: 9em;
}
div.f_optfirst:first-child { 
	clear: none;
}*/
div.captcha {
	margin-top: 1em;
	margin-bottom: 1em;
	clear: left;
	text-align: center;
}
img.captcha {
	border: 1px solid silver;
}
div.f_buttons {
	margin-top: 1em;
	margin-bottom: 1em;
}
div.f_join.f_buttons {
	margin-top: 0;
	margin-bottom: 0;
}
.f_row p.error {
	margin: 5px 0 10px 0;
}
.f_row p.error span {
	line-height: 29px; /* normal line height + padding, otherwise red padding overlaps second line */
	padding: 6px;
	background-color: #ee0033;
	color: #fff;
	font-weight: normal;
	text-transform: uppercase;
}
/* Checkbox list (newlsetter) */
div.f_checkboxrow {
	clear: left;
	margin-bottom: 1em;
}
div.f_checkboxrow input[type=checkbox] {
	float: left;
	margin-top: 1px; /* To align with text, default is 2px */
}
div.f_checkboxrow label {
	margin-left: 20px; /* Space for the checkbox */
	display: block;
}
div.newsletters label > *:first-child { /* There is a "P" since group description is WYSIWYG */
	display: inline;
}
/* Compact form in blocks  */
div.wrap_block div.f_buttons div.f_fields,
div.wrap_block div.captcha {
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
	text-align: center;
}
div.wrap_block form.vertical div.f_buttons div.f_fields,
div.wrap_block form.vertical div.captcha {
	text-align: left;
}

/* Breadcrumbs RTL support */

.breadcrumbs a {
	unicode-bidi: embed;
}

/* EMAIL START */

/* Top margin removal in FF to match IE */
td > p:first-child, th > p:first-child {
	margin-top: 0px;
}

td > p:last-child, th > p:last-child {
	margin-bottom: 0px;
}

div > p:first-child, body > p:first-child {
	margin-top: 0px;
}

div > p:last-child, body > p:last-child {
	margin-bottom: 0px;
}

/* Default Image Styles for WYSIWYG content. img.NoBorder is obsoleted in WPS 5.1 */
img.NoBorder, a img, :link img, :visited img  {
	border-width: 0;
}
/* Responsive content */
img {
	max-width: 100%;
	height: auto;
}

/* Default Alignment Styles for WYSIWYG content */
.align-Left, table.align-Left caption {
	margin-right: auto;
	margin-left: 0px;
}
img.align-Left, object.align-Left {
	display: block;
}
.align-Right, table.align-Right caption {
	margin-left: auto;
	margin-right: 0px;
}
img.align-Right, object.align-Right {
	display: block;
}
.align-Center, table.align-Center caption {
	margin-left: auto;
	margin-right: auto;
}
img.align-Center, object.align-Center {
	display: block;
}
.align-LeftFloat {
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
}
.align-RightFloat {
	float: right;
	margin-left: 10px;
	margin-bottom: 10px;
}

/* Various responsive image widths */
img.img33,
img.img33static {
	max-width: 32%;
	box-sizing: border-box;
	margin-right: 1%;
}
img.img33 + img.img33,
img.img33static + img.img33static {
	margin-left: 0.5%;
	margin-right: 0.5%;
}
img.img33 + img.img33 + img.img33,
img.img33static + img.img33static + img.img33static {
	margin-right: 0;
	margin-left: 1%;
}
img.img33.align-LeftFloat,
img.img33static.align-LeftFloat {
	margin-right: 1.5%; /* Align with basic img33 */
}
img.img33.align-RightFloat,
img.img33static.align-RightFloat {
	margin-left: 1.5%;
	margin-right: 0;
}

img.img40,
img.img40static {
	max-width: 40%;
	box-sizing: border-box;
}

img.img50,
img.img50static {
	max-width: 49%;
	box-sizing: border-box;
	margin-right: 1%;
}
img.img50 + img.img50, 
img.img50static + img.img50static {
	margin-right: 0;
	margin-left: 1%;
}
img.img50.align-LeftFloat,
img.img50static.align-LeftFloat {
	margin-right: 2%; /* Align with basic img50 */
}
img.img50.align-RightFloat,
img.img50static.align-RightFloat {
	margin-left: 2%;
	margin-right: 0;
}
img.img60 {
	max-width: 60%;
	box-sizing: border-box;
}
img.img70 {
	max-width: 70%;
	box-sizing: border-box;
}
img.img100 {
	max-width: 100%;
	box-sizing: border-box;
}

@media screen and (max-width: 479px) {
	img.img50,
	img.img50 + img.img50,
	img.img50.align-RightFloat,
	img.img50.align-LeftFloat,
	img.img33,
	img.img33 + img.img33,
	img.img33 + img.img33 + img.img33,
	img.img33.align-RightFloat,
	img.img33.align-LeftFloat,
	img.img40,
	img.img40.align-RightFloat,
	img.img40.align-LeftFloat,
	img.img60,
	img.img60.align-RightFloat,
	img.img60.align-LeftFloat,
	img.img70,
	img.img70.align-RightFloat,
	img.img70.align-LeftFloat   { /* non-static layouts become full wide */
		max-width: 100%;
		width: auto;
		display: block;
		float: none;
		margin: 0 auto 10px auto;
	}
}
/* EMAIL END */

/* Breadcrumbs */

ul.breadcrumbs {
	margin: 0;
	padding: 0;
	display: inline-block; /* trigger hasLayout */
}
ul.breadcrumbs {
	display: block; /* reset */
}

ul.breadcrumbs li {
	display: inline;
	float: left;
	list-style-type: none;
	margin: 0;
	padding-left: 0.9em;
	padding-right: 0.5em;
	background-image: url( '/Default/Images/arrowgray.gif' );
	background-repeat: no-repeat;
	background-position: 0% 70%;
}
ul.breadcrumbs li:first-child {
	padding-left: 0;
	background-image: none;
}
ul.breadcrumbs:after {
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}

/* SHOP */

div.buttonline {
	margin-top: 2em;
	text-align: center;
}

div.shop-bill-buttonline {
	margin-top: 2em;
	text-align: center;
}
@media print {
	.noprint {
		display: none;
	}
}

div.shop-cardimages {
	margin-bottom: 1em;
	margin-top: 1em;
	text-align: center;
}
div.card_expiry input[type=number] {
	width: 3.5em;
}
div.card_cvv2 input[type=number] {
	width: 4em;
}
div.card_cardnumber input[type=text] {
	width: 25em;
}
p.payfail_link {
	text-align: center;
}

.pri_action {
}
.sec_action {
	padding-right: 20px;
}
.pri_action_image {
	vertical-align: middle; /* Makes paypal button in line with back to the shop */
}

/* Category and product list page */
img.prod_img, img.cat_img, div.items2leftalign img.cat_img {
	float: left;
	clear: left;
	margin-right: 2em;
	margin-bottom: 0.5em;
}

div.cat_list {
	margin-top: 1em;
}
div.cat_item {
	margin-bottom: 2em;
}
h2.cat_name {
	font-size: 120%;
}
div.cat_main {
	margin: 1em 0;
}
h2.cat_subtitle {
	clear: both;
}
div.prod_buttons {
	text-align: right;
}
div.prod_list div.prod_volume {
	text-align: left;
}
div.prod_volume + div.prod_buttons {
	clear: right;
}
form.prod_item {
	margin-bottom: 2em;
	clear: both;
}

div.prod_pricebox {
	float: left;
}
div.prod_volume {
	float: right;
	margin-bottom: 1em;
}
table.shop-volumediscount {
	border: 1px solid #707385;
	margin: 1em;
}
table.shop-volumediscount td {
	text-align: right;
}
table.shop-volumediscount th {
	text-align: right;
}
ul.prod_volumelist {
	padding: 0;
	margin: 0;
}
ul.prod_volumelist li {
	list-style-type: none;
}
span.prod-volume-pricelabel 
{
	font-size: 200%;
	font-weight: bold;
}
span.prod-volume-oldprice
{
	text-decoration:  line-through;
}
span.prod-volume-newprice
{
	color: #ee2233;
	font-size: 200%;	
}
span.vol_price, span.vol_unitprice, span.vol_save {
	font-weight: bold;	
}

table.shop-productproperties {
	border: 1px solid #707385;
	margin: 1em;
}
table.shop-productproperties th {
	font-weight: normal;
	text-align: right;
}
tr.shop-productgrossprice td, div.shop-productgrossprice {
	font-weight: bold;
}

/* Product page images */

div.shop-imagesleft {
	clear:both;
	float:left;
	margin: 0 0.5em 0 0;
}

div.shop-imagesright {
	clear:both;
	float:right;
	margin: 0 0 0.5em 0.5em;
}

div.shop-imagescenter {
	clear:both;
	text-align:center;
	margin: 0.5em 0;
}

div.shop-thumbnailsleft {
	float:left;
}

div.shop-thumbnailsright {
	float:right;
}

div.shop-thumbnailscenter {
	margin: 0.25em 0;
	text-align:center;
}

div.shop-thumbrow {
	display:inline;
	margin: 5px;
}

div.shop-thumbcol {
	margin: 5px;
}

div.shop-rowspan {
	clear: both;
	margin: 0px;
	line-height: 1px;
}

/* Multiple column sub-category list */

.col_multicol {
	clear: both;
}
.col_multicol:after,
.col_row:after,
.cat_iteminner:after,
.prod_iteminner:after {
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}
.col_multicol div.cat_item {
	text-align: center;
}
.items2leftalign div.cat_item {
	text-align: left;
}

.col_multicol .col_column {
	float: left;
	margin-left: 2.4%;
	margin-bottom: 2.4%;
}
.col_multicol2 .col_column {
	width: 48.8%;
}
.col_multicol3 .col_column {
	width: 31.73%;
}
.col_multicol4 .col_column {
	width: 23.2%;
}
.col_multicol5 .col_column {
	width: 18.08%;
}
.col_multicol6 .col_column {
	width: 14.66%;
}
.col_multicol7 .col_column {
	width: 12.22%;
}
.col_multicol8 .col_column {
	width: 10.4%;
}
.col_multicol .col_first {
	clear: left;
	margin-left: 0;
}
.col_multicol img.cat_img {
	float: none;
	margin-right: 0;
}
h2.cat_name {
	margin-top: 0;
}
div.cat_iteminner + div.prod_list {
	margin-top: 1em;
}

/* Multiple column product list  */

.col_multicol .prod_item {
	text-align: center;
	clear: none;
}
.col_multicol img.prod_img {
	float: none;
	margin-right: 0;
}
h3.prod_name {
	margin-top: 0;
	font-size: 100%;
}
.col_multicol div.prod_buttons {
	text-align: center;
}

/* Overirdes for 2 columns */

.col_multicol2 .prod_item {
	text-align: left;
}
.col_multicol2 h3.prod_name {
	margin-top: 0;
}
.col_multicol2 a.prod_img {
	display: block;
	float: left;
	margin-right: 1em;
}
.col_multicol2 div.prod_buttons {
	text-align: right;
}

/* Shop: Cart */

table.shopcart {
	border-collapse: collapse;
	border: 1px solid black;
	width: 100%;
}

table.shopcart td, table.shopcart th {
	border-bottom: 1px solid #777;
	text-align: right;
	vertical-align: top;
	padding: 3px;
}

table.shopcart .productname {
	text-align: left;
}

table.shopcart th {
	background-color: #f0f0f0;
	text-align: center;
	padding: 5px 0;
}

table.shopcart td.removecolumn {
	text-align: center;
}
div.buttonline.upperbuttonline {
	margin: 1.5em 0;
}

/* Cart small totals table */
div.cart_totals {
	margin: 1em 0;
}
div.cart_totals:after {
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}
table.cart_totals {
	border-collapse: collapse;
	background-color: #F0F0F0;
	border: 1px solid #777;
	float: right;
	text-align: right;
}
table.cart_totals td,
table.cart_totals th {
	padding: 3px;
}
table.cart_totals th {
	font-weight: normal;
	text-align: left;
	padding-right: 20px;
}
tr.cart_totals_total th,
tr.cart_totals_total td {
	font-size: 125%;
	font-weight: bold;
}


input.cart_quantity {
	width: 2em;
}
input.incdecbtn {
	padding-left: 4px;
	padding-right: 4px;
	margin-right: 6px;
}
input + input.incdecbtn {
	margin-right: 0;
	margin-left: 6px;
}
.cart_section {
	background-color: #f0f0f0;
	padding: 5px;
	border: 1px solid #777;
}
.shop-comment .cart_section {
	border-width: 0;
	background-color: transparent;
	padding: 0;
}
@media screen and (max-width: 480px) {
	form.cartform .col_multicol2 .col_column {
		float: none;
		width: auto;
		margin-left: 0;
	}
}
#newdelivertouser {
	margin-top: 1em;
}
#newdelivertouser th {
	text-align: right;
	font-weight: normal;
	vertical-align: top;
	padding-top: 3px;
}
#newdelivertouser .error {
	font-weight: normal; /* Save some space */
}
div.shop-delivery-user, div.shop-summary-user, div.fee label, div.fee-desc, div.pay_option {
	padding-left: 25px;
	display: block;
	margin-bottom: 8px;
	position: relative;
}
div.shop-delivery-user input, div.fee label input, div.pay_option input {
	position: absolute;
	left: 0;
	top: 0;
	margin: 0;
}
div.shop-delivery-user input.shop-forget-addr {
	margin-left: 5px;
	position: static;
	float: right;
}
div.deliveryservice div.fee, div.deliveryoption div.fee {
	margin-bottom: 1em;
}
div.fee-desc span.warning {
	font-weight: bold;
}
div.fee label.disabled {
	color: #aaaaaa;
}
div.totalweight, div.shop-cart-coupons, div.shop-cart-footnote {
	margin: 1em 0;
}
div.totalweight span {
	font-size: 110%;
}

div.shop-comment textarea {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
div.shopprogress ol {
	margin: 0;
	padding: 5px;
	border: 1px solid;
}
div.shopprogress li {
	list-style-type: none;
	display: inline;
	margin: 0;
	padding: 0 1em;
	line-height: 30px;
	background-image: url("/Default/Images/arrowgray.gif");
	background-position: 0 70%;
	background-repeat: no-repeat;
}
div.shopprogress li:first-child {
	background-image: none;
}
div.shopprogress li.current {
	font-weight: bold;
}
div.shopprogress li.unused {
	text-decoration: line-through;
}

/* Shop: Cart block */

div.cartbox_product {
	margin-bottom: 5px;
}
div.cartbox_thumbnail {
	float: right;
}
div.cartbox_total {
	margin-top: 10px;
}
p.cartbox_price span {
	font-weight: bold;
}
/* Shop: Agreement */

div.shopagreementform {
	text-align: center;
	margin-top: 2em;
}

div.shopagreementform form {
	display: inline;
	margin: 0 10px;
}

/* Shop: Bill list */

table.shopbills {
	border-collapse:collapse;
}

table.shopbills tr td {
	padding: 3px 10px;
}

table td.price {
	text-align: right;
}

table tr.altrow1 {
	background-color: #EEEEEE;
}
table tr.altrow2 {
	background-color: #DDDDDD;
}

/* Shop: Bill */

table.shopbillcustomer th {
	text-align: left;
}

/* EMAIL START */
table.shopbillproducts {
	border-collapse: collapse;
	border: 1px solid black;
	width: 100%;
}
/* EMAIL END */

div.shop-deliverydesc {
	padding: 1em 0;
}

/* EMAIL START */
table.shopbillproducts td, table.shopbillproducts th,
table.shop-deliverylist td, table.shop-deliverylist th {
	text-align: right;
}

table.shopbillproducts tr td:first-child, table.shopbillproducts tr th:first-child,
table.shop-deliverylist tr td:first-child, table.shop-deliverylist tr th:first-child {
	text-align: left;
}

tr.shop-billproduct, table tr.shop-billdeliveryfee, tr.shop-billbottomdiscount, tr.shop-billtotal,
tr.shop-billcoupondiscount, tr.shop-billglobalvat {
	/*border-top: 1px solid black;*/
}
table.shopbillproducts tr {
	border-top: 1px solid black;
}
table tr.shop-billdiscount {
	border-top: none;
}
table tr.shop-billdiscount td {
	padding-top: 0;
}
table.shopbillproducts tr th, table.shopbillproducts tr td {
	border: none;
}
table tr.shop-billdeliveryfee td:first-child
{
		border-right: 1px solid black;
}

table.shopbillproducts th, table.shop-deliverylist th  {
	background-color: #cccccc;
}

table.shopbillproducts td.deliveryname {
	text-align: left;
}

table.shop-invoice
{
	border-collapse: collapse;
	border: 1px solid #000;
	border-spacing: 0px;
}
table.shop-invoice td, table.shop-invoice th
{
	border: 1px solid #000;
	padding: 4px;
	vertical-align: top;
}
table.shop-invoice table.shopbillproducts {
	border-style: hidden;
}
table.shop-invoice td.shopbillproducts {
	padding: 0;
}
/* EMAIL END */

/* Video player module */
div.videoplayer-text, div.videoplayer-playlist {
	margin: 0.5em 0;
}
div.videoplayer-boxedlist { /* Used when height is set */
	border: 1px solid gray;
	overflow: scroll;
}
div.videoplayer-playlistitem {
	clear: both;
	margin-bottom: 5px;
}
div.videoplayer-playlistitem.current {
	background-color: #f0f0f0;
}
div.videoplayer-playlistitem img {
	float: left;
	margin-right: 5px;
}
div.videoplayer-playlistitem h2 {
	font-size: 100%;
}
div.videoplayer-playlistitem div.videoplayer-noimg {
	float: left;
	margin-right: 5px;
	background-color: #000;
	color: #fff;
	text-align: center;
	padding-top: 1em;
}

div.videoplayer-playlistitem a div.videoplayer-noimg span /* bug#1291 */ {
	background-color: #000;
	color: #fff;
}

div.videoplayer-duration {
	float: right;
}
span.html5postload {
	display: inline-block;
	position: relative;
}
span.html5postplay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: url("/Default/Images/html5_play.png") 50% 50% no-repeat;
}

/* Search Module */

.searchreshighlit {
	background-color: Yellow;
	text-decoration: inherit;
}
img.search-icon {
	vertical-align: bottom;
}
form.searchform input, 
form.searchpage input {
	vertical-align: middle;
}
form.searchform input.searchwords {
	width: 110px;
}
form.searchpage input.searchwords {
	width: 250px;
}
form.searchform input.searchwords, 
form.searchpage input.searchwords {
	margin-right: 3px;
}
/* Print and tip links */
#printtip {
	margin-top: 2.36em;
	clear: both;
}
img.printer-icon, img.tipafriend-icon {
	vertical-align: bottom;
}

/* Autoscroller */
div.autoscroller-news {
	float:left;
}
div.as_left autoscroller-collection,
div.as_right autoscroller-collection {
	display: table;
	*display: block;
}
div.as_left div.autoscroller-news,
div.as_right div.autoscroller-news {
	display:table-cell; 
	*display: block;
	*float: left;
}

h3.as_title {
	margin-top: 0;
}

/* Article module*/
div.article-list {
	clear: both;
}
div.article-list-item {
	margin-bottom: 1em;
}
h2.article-list-title {
	font-size: 120%;
}
/* Article preview */
div.articlepreview h1 {
	font-size: 120%;
	margin: 0 0 0.3em;
}
div.articlepreview {
	text-align: center;
	padding: 1em;
	margin-bottom: 1em;
	color: #000;
	background-color: #fff;
}
div.articlepreview-left {
	width: 49%; /* Spacing */
	float: left;
}
div.articlepreview-right {
	width: 49%;
	float: right;
}

hr {
	border: 0;
	border-top: 1px solid black;
	height: 0px;
}

/* Installer */

table.installer-package {
	border-collapse: collapse;
	border: solid 1px black;
	margin-bottom: 10px;
}
table.installer-package td, table.installer-package th {
	border: solid 1px black;
	vertical-align: middle;
	text-align: center;
	padding: 4px;
}

table.installer-package th {
	text-align:left;
}
span.installer-desc {
	font-weight: normal;
}
body p.inst_domainmsg {
	font-weight: bold;
	text-align: center;
	margin: 2em 0;
}
div.installer-templates {}
div.installer-template {}
div.installer-templateimg 
{
	float: left;
	margin: 10px 20px 10px 0;
}
div.installer-template-details 
{
	margin-top: 10px;
}
div.installer-template:after
{
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}
p.installer-templatecolors
{
	font-size: 150%;
}

p.sda_templatebutton input[type=button], p.sda_templatebutton input[type=submit]
{
	font-size: 200%;
	padding: 10px 20px;
	background-color: #cccccc;
	border: 0 none;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	display: inline-block;
	cursor:pointer;
}
p.sda_templatebutton input[type=button]:hover, p.sda_templatebutton input[type=submit]:hover
{
	background-color:rgba(240,240,0,0.8);
}
/* Part-Catalog */
div.partcatalog dl, div.partcatalog ul {
	font-weight: bold;
	list-style: none;
}
div.partcatalog ul.main_category {
	margin-left: 0;
	padding-left: 0;
}
div.partcatalog dd {
	font-weight: normal;
}
div.partcatalog dl ul ul, div.partcatalog ul dl ul {
	font-weight: normal;
	list-style-type: disc;
	margin-top: 0.5em;
	margin-bottom: 2em;
}

/* Amortization */
div.amortization {	}

div.amort-results {
	margin: 1em 0;
}

p.amort-result-price {
	font-size: 130%;
	font-weight: bold;
}

div.amort-models, div.amort-hours  {
	margin-bottom: 1.5em;
}

div.amort-assumptions h3 {
	margin-top: 2em;
}
table.amort-assumptions th {
	text-align: left;
	min-width: 100px;
}

/* Hair styles */
div.hairsearch:after, div.hairresults:after, div.hairblock-images:after {
	clear: both;
	display: block;
	height: 0;
	content: ""; 
	visibility: hidden;
}
div.hairsearch-opt {
	float: left;
	width: 25%;
}
div.hairsearch h2 {
	font-size: 105%;
}
div.hairsearch-perpage {
	text-align: center;
	margin: 1em 0;
}
div.hairsearch-perpage span {
	margin-left: 2em;
}
div.hairsearch-perpage label + span {
	margin-left: 1em;
}
div.hairsearch-buttons, div.hairblock-buttons {
	text-align: center;
	margin: 1em 0;
}
div.hairsearch-buttons input {
	margin-right: 1em;
}
ul.hairpager {
	text-align: center;
}
div.hairresults div.hairimg {
	float: left;
}
div.hairimg img {
	display: block;
}
/* 6 images per row */
div.haircols6 div.hairimg {
	margin: 0.3%;
	width: 16.16%;
}
div.haircols6 div.hairimg:nth-child(6n+1) {
	margin-left: 0;
}
div.haircols6 div.hairimg:nth-child(6n+6) {
	margin-right: 0;
}
/* 4 images per row */
div.haircols4 div.hairimg {
	margin: 0.6%;
	width: 24.1%;
}
div.haircols4 div.hairimg:nth-child(4n+1) {
	margin-left: 0;
}
div.haircols4 div.hairimg:nth-child(4n+4) {
	margin-right: 0;
}
@media screen and (max-width: 640px) {
	div.hairsearch-opt {
		width: 50%;
	}
	div.hairsearch-opt:nth-child(2n+1) {
		clear: left;
	}
}
/* 2 images per row */
@media screen and (max-width: 320px) {
	div.hairresults div.hairimg {
		margin: 1.5%;
		width: 48.5%;
	}
	div.hairresults div.hairimg:nth-child(odd) {
		margin-left: 0;
	}
	div.hairresults div.hairimg:nth-child(even) {
		margin-right: 0;
	}
}
div.hairresults img {
	cursor: pointer;
	max-width: 100%;
}
div.hairstyleview {
	text-align: center;
}
div.hairpswp button.pswp__button--link {
	background-position: -44px -44px;
}
/* Hair block */
table.hairblock-images {
	border-collapse: collapse;
}
table.hairblock-images td {
	padding: 0;
}
table.hairblock-images a, table.hairblock-images img {
	display: block;
}
ul.hairtabs.ui-tabs-nav .ui-tabs-anchor {
	padding: 0.3em;
}
div.hairblock-image a {
	display: block;
}

/* More installer! */
span.example{
	color: #777777;
	font-style: italic;
}

div.installerblock {}

div.installerblock div.enabled,
div.installerblock div.disabled,
div.installerblock div.current {
	margin: 0.3em 0 0.3em 0.3em;
	padding: 0.4em;	
	-webkit-border-radius: 12px 0 0 12px;
	-moz-border-radius: 12px 0 0 12px;
	border-radius: 12px 0 0 12px;
	border: solid 1px #888;
}
div.installerblock div div.tab {
	float:left;
}

div.installerblock div.enabled {
	background-color: #BBEE66;
}

div.installerblock div.disabled {
	background-color: #CCCCCC;
}

div.installerblock div.current {
	background-color: #FFF;
	border-right: 0px;
}

div.installerblock div.icon {
	float:right;
}

div.inst_prices {
	position: relative;
	font-size: 150%;
	margin-top: 1em;
	margin-bottom: 1em;
	padding: 15px;
	background-color: #eee;
}
div.inst_prices div.inst_buttons {
	position: absolute;
	right: 15px;
	bottom: 15px;
}

p.installermsg{
	font-weight:bold;
}
div.teaser.first {
	clear: left;
}
a.t_desc {
	display: block;
	text-decoration: none;
}
div.tp_intro {
	margin: 1em 0;
}

/* Pager Control */
ul.pager, ul.pager li {
	margin-left: 0;
	padding-left: 0;
	list-style-type: none;
}
ul.pager li {
	border-left: 1px solid;
	padding-left: 5px;
	padding-right: 5px;
	display: inline;
}
ul.pager li:first-child {
	border-width: 0;
	padding-left: 0;
}
ul.pager li.current {
	font-weight: bold;
}
ul.pager form {
	display: inline;
	margin: 0;
	padding: 0;
}

/* Admin Link icons */
#admin_overlay {
	position: absolute;
	z-index: 2000;
	left: 0;
	top: 0;
	right: 0;
	margin: 0; /* Reset box size related grid system values that may come from body>div */
	padding: 0;
	border-width: 0;
	max-width: none;
}
#admin_overlay a {
	display: inline;
}
div._block {
	position: absolute;
	/* left, top, width, height is calculated by jQuery */
	font-size: 60%;
}
div._block a {
	display: inline;
	float: left;
	margin: 0px;
	width: 22px;
	height: 22px;
	background-repeat: no-repeat;
	background-position: 3px 3px;
}
div._block a._edit {
	background-image: url(/default/images/pencil.png);
}
div._block a._config {
	background-image: url(/default/images/wrench.png);
}
div._block a._blockgroup {
	background-image: url(/default/images/blockgroup.png);
}
div._block a._questions {
	background-image: url(/Default/Images/famfam/text_list_bullets_w.png);
}
div._block a._users {
	background-image: url(/default/images/users.png);
}
div._block a._list {
	background-image: url(/default/images/list.png);
}
div._block.dashed {
	outline-style: dashed;
}
div._block.outline:hover {
	outline-width: 2px;
	min-height: 22px;
	min-width: 22px;
}
div._block {
	outline: 0 solid;
}
div._block:hover a {
	background-color: #fff;
}
#admin_bar {
	width: 125px;
	padding: 5px 0 5px 5px;
	border: 1px solid #564d3e;
	color: #000;
	background-color: #fff;
	position: absolute;
	position: fixed;
	top: 140px;
	left: 0;
	margin-left: -108px;
	z-index: 2001;
	-webkit-transition: margin .2s ease;
	-moz-transition: margin .2s ease;
	-ms-transition: margin .2s ease;
	-o-transition: margin .2s ease;
	transition: margin .2s ease;
	font-family: Arial, Helvetica, sans-serif;
}
#admin_bar form {
	margin: 0;
	padding: 5px 25px 5px 0;
	min-height: 128px;
	background-image: url("/default/images/administration.svg");
	background-position: 100% 50%;
	background-repeat: no-repeat;
}
#admin_bar p {
	margin: 0;
	line-height: normal;
}
#admin_bar p + p {
	margin-top: 1em;
}
#admin_bar.light {
	-webkit-border-top-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	-moz-border-radius-topright: 5px;
	-moz-border-radius-bottomright: 5px;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	color: #564D3E;
}
#admin_bar.light a {
	color: #564D3E;
}
#admin_bar.dark {
	background-color: #C2C4CF;
	color: #000;
	border: 1px solid #707385;
}
#admin_bar.dark a {
	color: #484F6E;
}
#admin_bar:hover, #admin_bar.tchover {
	margin-left: -1px;
}
#admin_bar.tchover:after {
	content: "X";
	display: block;
	position: absolute;
	top: 2px;
	right: 4px;
	font-weight: bold;
	color: white;
	background-color: Red;
	width: 14px;
	height: 14px;
	font-size: 10px;
	border-radius: 14px;
	text-align: center;
	cursor: default;
}
#admin_overlay.dark div._block:hover {
	outline-color: #707385;
	background-color: rgba(112,115,133,0.4);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#66707385', endColorstr='#66707385');
}
#admin_overlay.light div._block:hover {
	outline-color: #564D3E;
	background-color: rgba(86,77,62,0.4);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#66564D3E', endColorstr='#66564D3E');
}
@media print {
	#admin_bar, #admin_overlay {
		display: none;
	}
}
/* Clear fix */
/* For modern browsers */
.cf:before,
.cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom: 1;
}
.sitename, .slogan {
	text-decoration: none;
}
.toggle_menu {
	display: none;
	cursor: pointer;
}
span.m_arrow {
	position: absolute;
	width: 30px;
	top: 1px;
	bottom: 1px;
	right: 0;
	font-weight: bold;
	background-color: rgba(0,0,0,0.3);
	text-align: center;
}
li.m_closed > ul {
	max-height: 0;
	overflow: hidden;
}
li.m_open > ul {
	max-height: none;
	overflow: hidden;
}