/* Tags */
html, body, h1, h2, ul, ol, li, input, form {
	margin: 0;
	padding: 0;
}

html, body, input, textarea, button {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1em;
}

a img {
	border: 0;
}

h3 {
	font-size: 1.3em;
	margin: 15px 0 0 0;
}

h4 {
	font-size: 1.1em;
	margin-bottom: 2px;
}

p {
	margin: 0 0 12px 0;
}

ul, ol {
	padding: 5px 0 5px 25px;
}

#content ul li {
	color: #777096;
	list-style-type: square;
}

#content ul li span {
	color: #333333;
}

dt {
	font-weight: bold;
}

dd {
	padding-bottom: 10px;
}

#content a:link, #content a:visited, #content a:active {
	border-bottom: 1px solid #84C126;
	text-decoration: none;
	color: #6B9F1E;
}

#content a.noborder {
	border-bottom: 0;	
}

#content a:hover {
	text-decoration: none;
}

#content a.ext {
	padding-right: 15px;
	background-color: transparent;
	background-image: url('../img/new-window-icon.gif');
	background-position: right;
	background-repeat: no-repeat;
}

input, textarea {
	border: 1px solid #84C126;
	padding: 0 2px 1px;
	margin: 2px 0;
}

input.submit, button {
	border: 0;
	background-color: #84C126;
	color: #FFF;
	font-weight: bold;
	padding-bottom: 1px;
}

/* Tags variations */

input.loading {
	background-image: url(../img/ajax-loader.gif);
	background-position: right;
	background-repeat: no-repeat;
}

hr.delimiter {
	height: 0;
	border: 0;
	border-bottom: 1px solid #84C126;
	margin: 10px 0;	
}

a.img {
	border: 0 !important;
}

a.img img {
	vertical-align: middle;	
}

/* WRAPPER */

#wrap {
	width: 950px;
	/*width: 920px;
	padding: 30px;*/
	margin: 0 auto;
	padding: 30px 0 10px 0;
}

/* MOTTO */


#motto {
	text-align: right;
	position: relative;
}

.sp #motto {
	padding-right: 100px;
} 	

#motto img.text {
	position: relative;
	top: 5px;
}

#motto img.page-img {
	position: absolute;
	top: -15px;
	right: 0;
}

/* TOP TEXT */

#content div.top-text {
	color: #FFF;
}

.mp #content div.top-text {
	height: 97px;
	background-color: #84C126;
	padding: 16px 18px 14px 18px;
	margin: 0 0 17px 0;
	line-height: 130%;
	font-size: 0.95em;
}

.sp #content div.top-text {
	background-color: #777096;
	padding: 5px 15px;
	font-size: 0.9em;
	position: relative;
	z-index: 2;
}

/* MAIN CONTAINER */

#main {
}

/* LEFT COL */

#left-col {
	float: left;
	width: 147px;
}

/* MENU */

#menu {
	margin-top: 10px;
}

#menu ul {
	padding: 0;
}

#menu ul li {
	padding: 0;
	list-style: none;
	border-bottom: 1px solid #FFF; /* fraking ie whitespace bug */
}

#menu .item {
	border: 3px solid #84C126;
}

#menu a.item {
	margin-bottom: 10px;
	font-size: 0.7em;
	letter-spacing: 0.13em;	
	text-align: left;
	padding: 8px;
	display: block;
}

#menu a.item:link,
#menu a.item:visited,
#menu a.item:active  {
	color: #000;
	text-decoration: none;
}

#menu a.item:hover {
	color: #000;
	background-color: #E7E7E7;
}

.sp #menu {
	background-color: #84C126;
	font-size: 0.9em;
	color: #FFF;
	padding: 10px;
	width: 127px;
}

.sp #menu ul li {
	border: 0;
}

.sp #menu ul {
	margin: 0;
}

.sp #menu ul li a:link,
.sp #menu ul li a:active,
.sp #menu ul li a:visited {
	color: #FFF;
	text-decoration: none;
}

.sp #menu ul li a:hover {
	text-decoration: underline;
}

.sp #menu hr {
	border: 0;
	height: 0;
	margin: 15px 0;
	border-bottom: 1px dotted white;
	
}

#menu .statistics {
	position: relative;
	height: 200px;
	width: 141px;
	color: #FFF;
}

#menu .statistics .head,
#menu .statistics .scannedCounts {
	font-weight: bold;
	position: absolute;
	color: #000;
}

#menu .statistics .head {
	font-size: 1.3em;
	top: 7px;
	left: 7px;
}

#menu .statistics .scannedCounts {
	font-size: 0.8em;
	bottom: 7px;
	left: 7px;
}

#menu .statistics .shadow {
	position: absolute;
	color: #FFF;
	top: -1px;
}

/* CONTENT */

#content a:link, #content a:visited, #content a:active {
	font-weight: bold;
}


.sp #content {
	padding-left: 147px;
	padding-top: 6px;
}

.mp #content {
	padding-left: 160px;
	padding-top: 6px;
	color: #333;
}

.column {
	width: 380px;
}

#content .column .payment-info {
	padding: 10px 15px 0px 15px;
	font-size: 0.8em;
}

div.frame {
	border: 13px solid #84C126;
	padding: 10px;
	position: relative;
}

div.frame h2 {
	color: #777096;
	font-size: 1.3em;
	margin-bottom: 10px;
}

.sp .frame {
	margin: 0px 0px 8px 15px;
	background-color: #FFF;
}

.basic-profile img.apple,
.extended-profiles img.apple {
	position: absolute;
	right: 5px;
}

div.frame .sex-group {
	margin-bottom: 3px;
}

div.frame label {
	font-size: 0.9em;
}

.sp div.frame label {
	font-size: 1em;
}

div.frame input.year,
div.frame input.city {
	padding: 0 2px 1px;
	font-size: 0.75em;
	margin: 2px 0;
}

.sp div.frame input.year,
.sp div.frame input.city {
	font-size: 1em;
}

div.frame input.year {
	width: 84px;
}

div.frame input.city {
	width: 193px;
	margin-top: 5px;
}

div.frame input.submit {
	border: 0;
	background-color: #84C126;
	color: #FFF;
	font-weight: bold;
	font-size: 0.75em;
	padding: 1px 2px;
	margin: 2px 0 2px 6px;
	width: 72px;
}

.sp div.frame input.submit {
	font-size: 0.9em;
}

div.frame input.default {
	color: #777096;
	font-style: italic;
}

table.info td {
	font-size: 0.8em;
	padding: 0;	
}

.sp table.info td {
	font-size: 1em;
}

.mp .extended-profiles table.info {
	float: right;
	margin: 15px 0 0px 0px;
}

.sp .extended-profiles table.info {
	margin: 10px 0 0px 0px;
}

.choose-your-test {
	color: #777096;
	padding: 10px 0 5px 0px;
	font-size: 0.8em;
}

.sp .choose-your-test {
	font-size: 1em;
}

.main-text {
	padding: 20px 0 0	 20px;
	text-align: justify;
	font-size: 0.8em;
	color: #333;
}

.main-text h2 {
	color: #84C126;
	margin-bottom: 10px;
	font-size: 1.6em;
}

.back-bar {
	text-align: right;
	margin-top: 10px;
	background-color: #84C126;
	margin-left: 20px;
	font-size: 0;
}

.up-bar {
	text-align: right;
	margin-top: 10px;
	font-size: 0;
}

#content .up-bar a {
	border-bottom: 0;
}

#content .back-bar a {
	border-bottom: 0;
}

.frame h2 a:link,
.frame h2 a:visited,
.frame h2 a:active,
.frame h2 a:hover {
	text-decoration: none;
	color: #777096;
}

.sp .selectbox {
	font-size: 1em;
}

.product {
 	text-transform: uppercase;
	font-weight: bold;
}

#content .frame h2 a {
	border-bottom: 0 !important;
}

table.ext-tests {
	border-collapse: collapse;
	border: 0;
	margin: 20px 0 5px 0;
}

table.ext-tests td {
	text-align: left;
	vertical-align: top;
	text-align: justify;
	padding: 3px 10px;
}

table.ext-tests td dl, table.ext-tests td dd  {
	margin: 0;
}

table.ext-tests td.price {
	vertical-align: middle;
	white-space: nowrap;
}

table.question-form {
	border-collapse: collapse;
	margin-top: 20px;
}

table.question-form th {
	vertical-align: top;
	padding-right: 10px;
}

table.question-form td.submit {
	text-align: right;
}

table.question-form td.sending,
table.question-form td.sending-ok {
	text-align: center;
	padding: 5px 0;
	font-weight: bold;
	display: none;
}

table.question-form td.sending img,
table.question-form td.sending-ok img {
	vertical-align: middle;
	margin-right: 5px;
}

/* PAYMENT */

input.voucher {
	width: 215px;
}

table.payment {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
}

table.payment td {
	vertical-align: top;
}

table.payment td.left {
	width: 63%;
}

table.payment table.invoice-data {
	border-collapse: collapse;
	table-layout: fixed;
	margin-top: 10px;
}

table.payment table.invoice-data th {
	font-weight: normal;
	text-align: left;
	padding-right: 20px;
	vertical-align: top;
	width: 120px;
}

table.payment table.invoice-data input {
	width: 230px;
}

table.payment table.invoice-data textarea {
	width: 230px;
	height: 70px;
	overflow: auto;
}

body.payment div.frame {
	margin: 10px 0 0 0;
}

body.payment div.frame .price {
	color: #777096;
}

div.payment-type {
	margin-top: 10px;
}

div.payment-type label {
	margin-right: 55px;
}

table.payment .tests-group table {
	margin-bottom: 10px;	
}

button.results {
	background-color: #777096;
	color: #FFF;
	text-align: left;
	height: auto;
	padding-top: 3px;
	padding-bottom: 3px;
}

div.payment-type-info div.type {
	display: none;
	border-bottom: 1px solid #E7E7E7;
	border-top: 1px solid #E7E7E7;
	margin: 10px 10px 10px 0;
	padding: 10px 10px 10px 0;
}

body.payment .back-bar img {
	visibility: hidden;
}

body.results table.emails {
	margin: 13px 0;
}

.sending,
.sending-ok,
.sending-error {
	display: none;
}

.sending img,
.sending-ok img,
.sending-error img {
	vertical-align: text-top;
}

body.results div.error {
	margin-bottom: 15px; 
	color: #C00;	
}

body.results div.error img {
	vertical-align: top;
}

body.results div.frame {
	margin-left: 0;
	width: 300px;
	min-height: 115px;
}

body.results div.frame img.apple {
	position: absolute; 
	right: 20px;
	top: 50%;
	margin-top: -60px;
}

body.results div.frame ul {
	margin-bottom: 5px;
}

img.thinframe {
	border: 1px solid #84C126;
	padding: 25px 20px;	
	margin-right: 20px;
}

table.result-exmaple {
	margin-bottom: 30px;	
}

table.consultants td {
	padding-right: 20px;	
}

/* ERROR PAGE */

.error .main-text {
	background-image: url(../img/error-back.jpg);
	background-position: 20px -30px;
	background-repeat: no-repeat;
	color: #84C126;
	font-weight: bold;
}

/* FOOTER */

#footer {
	background-color: #84C126;
	padding: 5px 10px;
	margin-top: 10px;
	color: #FFF;
	letter-spacing: 1px;
	font-size: 0.9em;
}

#footer a:link, 
#footer a:visited, 
#footer a:active {
	color: #FFF;
	text-decoration: none;
}

#footer a:hover {
	text-decoration: underline;
}

/* OTHERS */

.qtip .success img,
.qtip .error img {
	vertical-align: sub;
}

/* OTHERS */

.float-left { float: left; }
.float-right { float: right; }

img.float-left { float: left; }
img.float-right { float: right; margin: 0 0 20px 20px; }

.cleaner { clear: both; }
.cleaner-right { clear: right; }

.smaller-font { font-size: .8em; }

.center { text-align: center; }
.ralign { text-align: right; }
.lalign { text-align: left; }

table.full { width: 100%; }

.hidden { display: none; }