/* Ractek Srl public website
   Modified: 01/10/2009
   Author:   Vito Tardia <http://www.vtardia.com/>
   ----------------------------------------------------*/ 


/* =RESET
   ----------------------------------------------------*/ 

@import url('../../../css/reset.css');



/* =REBUILD
   ----------------------------------------------------*/ 

@import url('rebuild.css');



/* =BASE STYLES
   ----------------------------------------------------*/ 

body {
	background: #fbec4b url(../img/bg_body.gif) 50% 0 repeat-y;
	text-align: center;
}

img {
	border: none;
}

a, a:link, a:visited, a:active {
	color: #c62525;
}

a:hover {
	text-decoration: none;
}

a.more {
	font-size: 90%;
}

h1, h2, h3, h4 {
	font-weight: normal;
	clear: both;
}

h1 {
	font-size: 218% ;
	line-height: 2em;
}

h2 {
	font-size: 175%;
	line-height: 1em;
	margin-top: 1em;
	margin-bottom: 1em;
}

h3 {
	font-size: 133%;
	line-height: 1.13em;
	margin-top: 1.13em;
	margin-bottom: 1.13em;
}

h4 {
	font-size: 118%;
	line-height: 1.23em;
	margin-top: 1.23em;
	margin-bottom: 1.23em;
}

p {
	margin-top: .5em;
	margin-bottom: .5em;
}

.inline-cart {
	vertical-align: middle;
	padding-left: .5em;
}

/* =PAGE STRUCTURE
   ----------------------------------------------------*/ 

#page {
	position: relative;
	background: #fff;

	margin: 0 auto;
	padding: 0;
	width: 952px;

	text-align: left;

	border-top: 1px solid #ffeb00;
	border-bottom: none;
	border-left: none;
	border-right: none;
}

#header {
	background: #ffeb00 url(../img/bg_splash.jpg) 0 0 no-repeat;
	position: relative;
	display: block;
	float: none;
	width: 953px;
	height: 160px;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #e53037;
}

.home #header, .login #header {
	background: #ffeb00 url(../img/bg_splash_home.jpg) 0 0 no-repeat;
	height: 320px;
}

#header h1 {
	position: absolute;
	top: 10px;
	left: 10px;
	background: transparent;

	display: block;

	margin: 0;
	padding: 0;
	
}

.home #header h1, .login #header h1 {
	position: absolute;
	top: 167px;
	left: 440px;
	background: transparent;

	display: block;

	margin: 0;
	padding: 0;
	
}

.home #header .description, .login #header .description {
	position: absolute;
	top: 220px;
	left: 640px;
	display: block;
	overflow: hidden;
	
	width: 272px;
	height: 66px;

	margin: 0;
	padding: 0;
	
	color: #d0d0d0;
	
	font-size: 90%;
	line-height: 1.8;
	letter-spacing: 1px;
	
	border: 4px solid #c3c3c3;
}

#header #translate {
	position: absolute;
	top: 0;
	right: 15px;
	font-size: 90%;
	color: #fff;
	font-weight: bold;
}

#header #translate.en {
	background: transparent url(../img/flag_gb.gif) 0% 50% no-repeat;
	padding-left: 20px;
}

#header #translate.it {
	background: transparent url(../img/flag_it.gif) 0% 50% no-repeat;
	padding-left: 20px;
}

#translate a, #translate a:link, #translate a:visited {
	color: #333;
}

/*
.home #translate {
	top: 2px;
	left: 15px;
}
*/


#content {
	position: relative;
	display: block;
	float: none;
/* 	width: 952px; */
	margin: 10px 0;
	padding: 0 0 10px 0;
	overflow: hidden;

}

#content  h2 {
	margin: 10px 0 0 0;
	padding: .2em 0;
	color: #9f2525;
}

.home #content h2 {
	margin: 0;
}
/*
.three-cols #content {
	border-top: 1px solid #fff;
}
*/

#main {
	display: block;
	float: left;
	width: 590px;
	margin: 0 30px 0 20px;
/* 	line-height: 2; */
}

.home #main {
	width: 600px;
	margin-left: 10px;
	margin-right: 30px;
}

#side {
	display: block;
	float: right;
	width: 290px;
	font-size: 90%;
	line-height: 1.67;
}

#third {
	position: absolute;
	top: 0;
	left: 10px;
}

.home_message #third {
	margin-top: 30px;
}

.home #side {
	width: 300px;
}

.three-cols {
/* 	min-height: 450px; */
	min-height: 40em;
}

.login #content {
	min-height: 1em !important;
	height: auto !important;
}

.three-cols #main {
	width: 470px;
	margin-left: 240px;
	margin-right: 0;
}

.three-cols #side {
	width: 220px;
	float: right;
	margin-right: 10px;
	margin-left: 10px;
}

.three-cols #third {
	width: 220px;
}


#side h3 {
	line-height: 1.25;
}

#side .register {
	margin-top: 4.25em;
}

#footer {

	display: block;
	float: none;
	clear: both;

	margin: 15px;
	padding: 0;
	
	font-size: 83%;
	text-align: center;
	
	border-top: 1px solid #7f7f7f;
}

/* =FORMS
   ----------------------------------------------------*/ 

form button.submit, a.button {
	display: inline;
	background: #9f2525;

	border: 1px solid #9f2525;
	-moz-border-radius: 5px;
	-khtml-border-radius: 5px;
	-webkit-border-radius: 5px;

	color: #fff;
	padding: 3px 5px;

    font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
	font-size: 100%;
	line-height: 130%;
	text-decoration: none;
	letter-spacing: 1px;
	font-weight: bold;

    cursor: pointer;
}

form button.link {
	display: inline;
	margin: 0;
	padding: 0;
	background: transparent;
	border-width: 0 0 1px 0;
	border-style: solid;
	cursor: pointer;
	color: #c62525;
	border-color: #c62525;
	text-decoration: underline;
	font-weight: normal;
	

}

label {
	display: block;
	font-weight: normal;
	font-size: 95%;
}

input.text {
	font-size: 100%;
	border: 1px solid #d5d5d5;
	padding: .3em;
}

ol.form-fields {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 100%;
	line-height: 1.5em;
}

ol.form-fields li {
	background: #efefef;
	display: block;
	margin-top: .33em;
	margin-bottom: .33em;
	overflow: hidden;
	padding: .33em .75em;
}

ol.form-fields label {
	float: left;
	width: 12em;
	font-size: 100%;
	margin-right: .75em;
}

ol.form-fields input.text {
	width: 20em;
}

ol.form-fields .radio, ol.form-fields .newsletter, ol.form-fields .privacy {
	padding-left: 13.5em;
}

ol.form-fields .privacy label {
	font-size: 83%;
}

ol.form-fields .radio label {
	display: inline;
	float: none;
	padding-left: .75em;
}

ol.form-fields li.submit {
	background: transparent;
}

ol.form-fields .error-message {
	display: block;
	margin-left: 12.75em;
	font-size: 100%;
	color: #f00;
}

/*
div.error-message {
	color: #f00 !important;
}
*/

ol.form-fields .privacy .error-message {
	margin-left: 0;
}

/*
ol.form-fields .captcha img {
	display: block;
	margin: .75em .75em .75em 12.75em;
}
*/

ol.form-fields span.captcha {
	display: block;
	font-weight: bold;
	font-size: 120%;

}

/* =MAIN NAVIGATION
   ----------------------------------------------------*/ 

ul#nav-main {
	position:absolute;
	top: 48px;
	right: 10px;
	display: block;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	font-size: 90%;
}

.home ul#nav-main, .login ul#nav-main {
	top: 13px;
	left: 0;
}

/*
.home ul#nav-main {
	top: 20px;
	right: 10px;
}
*/

ul#nav-main li {
	display: block;
	float: left;
	padding: 0;
	margin: 0;
	border-left: 3px solid #9f2525;
	line-height: 164%;
}

ul#nav-main li.home {
	border: none;
}

ul#nav-main a {
	color: #333;
	text-decoration: none;
	padding: .2em 4px;
}

ul#nav-main a:hover {
	color: #eee;
	background: #333;
}

ul#nav-main a.current {
	cursor: default;
	color: #333;
	font-weight: bold;
}

ul#nav-main a.current:hover {
	cursor: default;
	color: #333;
	background: transparent;
	font-weight: bold;
}

/* =MESSAGES
   ----------------------------------------------------*/ 

div.message {

	background: #ffffcc;

	margin: 0 10px;
	padding: .5em;
	border: 1px solid #aaa;
	font-size: 90%;
}

#flashMessage {
	display: block;
	clear: both;
	margin: 10px;
}

#profileMessage, #lostpasswordMessage, #main #flashMessage {
	margin: 1em 0;
}

div.message p {
	margin: .5em;
}

div.message h3 {
	margin: .5em;
	padding: 0;
	font-size: 100%;
}

div.message.ok {
	border-color: #90ac13;
	background: #eef4d3;
	color: #6b800d;
}

div.message.clean {
	border-color: #aaa;
	background: #ffffcc;
}

div.message.error {
	border-color: #cc0000;
	background: #f7cbca;
	color:#cc0000;
}

/* =STORE HOME BOX
   ----------------------------------------------------*/ 

#store-features {
	width: 598px;
	margin: 10px 0;
	padding: 0;
	overflow: hidden;
/* 	outline: 1px solid blue; */
}

.three-cols #store-features {
	width: 480px;
}

#store-features ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#store-features li {
	display: block;
	float: left;
	width: 100px;
	margin: 10px 19px 10px 0;
/* 	text-align: center; */
	font-size: 90%;
/* 	outline: 1px solid red; */
}

#store-features li img {
	display: block;
/* 	margin: 0 auto; */
	padding: 2px;
	border: 2px solid #ccc;
	width: 60px;
	height: 60px;
}

#store-features p {
	clear: both;
}

#store-features a.go-shopping {
	font-size: 110%;
	font-weight: bold;
}

/* =LOGIN BOX
   ----------------------------------------------------*/ 

#loginbox, #userbox {
	display: block;
	margin: 10px 0;
	padding: 0;
/* 	background: #efefef; */
	background: #feeb8d;
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
}

#loginbox h3, #userbox h3 {
	margin: 10px;
	padding: 0 0 .2em 0;
	border-bottom: 1px solid #d7cd6c;
	text-indent: 20px;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: 0% -1px;
}

#loginbox h3 {
	background-image: url(../img/icon_lock.gif);
}

#userbox h3 {
	background-image: url(../img/icon_user_bw.gif);
}

#loginbox ul {
	display: block;
	margin: 10px;
	padding: 0;
	list-style: none;
}

#loginbox li {
	display: block;
	margin: 10px 0;
	padding: 0;
}

#loginbox label {
	letter-spacing: .5px;
}

#loginbox input.text {
	width: 95%;
}

#loginbox p, #userbox p {
	margin: 10px;
}

#userbox .become-b2b {
	font-size: 150%;
}

p.help, #loginbox .help {
	background: transparent url(../img/icon_help2.gif) 0px 2px no-repeat;
	text-indent: 20px;
}

#loginbox .remember label {
	display: inline;
}

/* =SHOPPING CART BOX
   ----------------------------------------------------*/ 

#shopping-cart, #checkout, #store-user-profile, #buy-now {
	display: block;
	margin: 10px 0;
	padding: 0;
/* 	background: #cccccc; */
	background: #feeb8d;
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
}

#shopping-cart h3, #checkout h3, #store-user-profile h3, #buy-now h3 {
	margin: 10px;
	padding: 0 0 .2em 0;
	border-bottom: 1px solid #d7cd6c;
	background: transparent url(../img/icon_cart.gif) 0% 50% no-repeat;
	text-indent: 24px;
}

#shopping-cart h3 {
	font-weight: bold;
	letter-spacing: 1px;
}

#shopping-cart p, #checkout p, #store-user-profile p, #buy-now p {
	margin: 10px;
}

#shopping-cart a.go-shopping {
	font-size: 110%;
}

#main a.go-shopping {
	font-size: 110%;
}

#main #buy-now {
	background-color: transparent;
	display: block;
	float: left;
	border: none;
	margin: 0;
}

#main #buy-now p {
	margin-top: 0;
}

#main #buy-now a.pdf {
	background-position: 0% 50%;
}

#main #buy-now form {
	margin: 0 10px 10px 10px;
}

#main #buy-now input.text {
	width: 1.6em;
	margin-right: .5em;
}


/* =LATEST NEWS BOX
   ----------------------------------------------------*/ 

#latest-news {
	display: block;
	margin: 0;
	padding: 0;
}

#latest-news dl {
	display: block;
	margin: 1.5em 1.5em;
	padding: 0;
}

.three-cols #latest-news dl {
	margin: 1.5em 10px 1.5em 0;
	padding: 0;
}

#latest-news dt {
/* 	font-weight: bold; */
	font-size: 118%;
	line-height: 1.23em;
	margin-top: .6em;
	margin-bottom: .6em;
/* 	color: #9f2525; */
	clear: both;
}

#latest-news dt a {
	color: #9f2525;
	text-decoration: none;
}

#latest-news dt a:hover {
	text-decoration: underline;
}

#latest-news dt .date {
	font-size: 78%;
	font-weight: normal;
	font-style: italic;
}

#latest-news dd {
	display: block;
	margin: 0 0 1.5em 0;
	padding: 0;
}

#latest-news dd img {
	display: block;
	float: left;
	margin: 0 5px 5px 0;
}

#latest-news .go-archive {
	display: block;
	margin-left: 0;
	font-size: 90%;
	clear: both;
}

/* =NEWS ARCHIVE
   ----------------------------------------------------*/ 
   
.news-list {
	display: block;
	margin: 1.5em 0;
	padding: 0;
}

.news-list dt {
	font-size: 118%;
	line-height: 1.23em;
	margin-top: .6em;
	margin-bottom: .6em;
/* 	color: #9f2525; */
}

.news-list dt a {
	color: #9f2525;
	text-decoration: none;
}

.news-list dt a:hover {
	text-decoration: underline;
}

.news-list dt .date {
	font-size: 78%;
	font-weight: normal;
	font-style: italic;
}

.news-list dd {
	display: block;
	margin: 0 0 1.5em 0;
	padding: 0;
}


.news-list dd img {
	display: block;
	float: left;
	margin: 0 5px 5px 0;
}

#news-search, #store-search {
	display: block;
	margin: 10px 0;
	padding: 0;
/* 	background: #efefef; */
	background: #feeb8d;
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
}

#news-search h3, #store-search h3 {
	margin: 10px;
	padding: 0 0 .2em 0;
	border-bottom: 1px solid #d7cd6c;
	text-indent: 20px;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: 0% -1px;
	background-image: url(../img/icon_find.gif);
}

#news-search ul, #store-search ul {
	display: block;
	margin: 10px;
	padding: 0;
	list-style: none;
}

#news-search li, #store-search li {
	display: block;
	margin: 10px 0;
	padding: 0;
}

/*
#news-search label {
	letter-spacing: .5px;
}
*/

#news-search input.text, #store-search input.text {
	width: 95%;
}

#news-search p, #store-search p {
	margin: 10px;
}

#news-search fieldset, #store-search fieldset {
	border: 1px solid #d7cd6c;
}

#news-search .radio label, #store-search .radio label {
	display: inline;
}

#store-search a.catalog {
	font-size: 120%;
}

#main p.date {
	font-size: 83%;
	font-weight: normal;
	font-style: italic;
}

/* =FACEBOOK
   ----------------------------------------------------*/ 

#facebook-group img {
	padding: 2px;
	border: 2px solid #ccc;
}

/* =STORE
   ----------------------------------------------------*/ 
   
#product-list {
	margin: 1em 0;
	overflow: hidden;
}

.product {
	display: block;
	float: left;
	margin: 1.5em 10px 1.5em 0;
	overflow: hidden;
/*
	width: 285px;
	width: 285px;
*/
}

.product .icon {
	display: block;
	float: left;
	width: 60px;
	height: 60px;
	padding: 2px;
	border: 2px solid #ccc;
	margin-left: 10px;
	margin-bottom: 10px;
}

.product .product-info {
	display: block;
	float: left;
/* 	margin-left: 10px; */
/* 	width: 200px; */
}

.product-info h3 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 120%;
}

.product-info .description {
	clear: both;
	margin-top: 10px;
}

.product .product-info label {
	display: inline;
}

.product .product-info .label {
	color: #9F2525;
}

.product .product-info div.product-detail {
	margin-left: 10px;
	margin-bottom: 10px;
}

#main .product #buy-now {
	margin-bottom: 10px;
}

.product #buy-now form {
	display: inline;
	margin: 0 0 0 .5em !important;
	padding: 0;
	line-height: 1.5em;
}

.product #buy-now p, .product #buy-now div.price {
	margin-bottom: 0;
	line-height: 1.8em;
}

.paginator {
	clear: both;
	margin-top: 5px;
}

p.buy a {
	background: transparent url(../img/icon_cart.gif) 0 50% no-repeat;
	padding-left: 22px;
}

/* =SHOPPING CART BOX
   ----------------------------------------------------*/ 

#store-categories {
	display: block;
	margin: 10px 0;
	padding: 0;
/* 	background: #efefef; */
	background: #feeb8d;
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
}

.home #store-categories, .login #store-categories {
	position: absolute;
	top: 75px;
	left: 755px;
	margin: 0;
	padding: 0;
	background: transparent;
	border: none;
}

#store-categories h3 {
	margin: 10px;
	padding: 0 0 .2em 0;
	border-bottom: 1px solid #d7cd6c;
/* 	background: transparent url(../img/icon_cart.gif) 0% 40% no-repeat; */
/* 	text-indent: 20px; */
}

#store-categories p {
	margin: 10px;
}

.box a.block {
	display: block;
	margin: 10px;
}

/*
.box .pdf {
	background: transparent url(../img/icon_pdf.gif) 0% 40% no-repeat;
	text-indent: 20px;
	font-size: 110%;
}
*/

a.pdf {
	background: transparent url(../img/icon_pdf.gif) 0% 40% no-repeat;
	padding-left: 20px;
}

a.action {
	padding: 0;
	background: transparent;
}


.home #store-categories a, .login #store-categories a, .home #store-categories a:link, .login #store-categories a:link, .home #store-categories a:visited, .login #store-categories a:visited, .home #store-categories a:active, .login #store-categories a:active {
	color: #ffeb90;
	text-decoration: none;
	letter-spacing: 1px;

	padding-left: 14px;
	background: transparent url(../img/bullet.gif) 0% 50% no-repeat;
}

.home #store-categories a:hover, .login #store-categories a:hover {
	color: #fff;
	text-decoration: underline;
	background: transparent url(../img/bullet_white.gif) 0% 50% no-repeat;
}

.home #store-categories ul, .login #store-categories ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.home #store-categories li, .login #store-categories li {
	line-height: 1.5em;
	margin: .1em 0;
}


/* =SHOPPING CART
   ----------------------------------------------------*/ 


td.price, th.price, td.quantity, th.quantity, td.tot, th.tot, th.delete, td.delete {
	text-align: right;
}

#UserCheckoutForm div.input {
	display: block;
	float: left;
	margin-right: 5px;
	margin-bottom: 5px;
}

#UserCheckoutForm textarea {
	width: 100%;
}

table.itemlist {
	margin: 0;
	padding: 0;
	width: 98%;
/* 	font-size: 80%; */
	border-collapse: collapse;
}

table.itemlist caption {
	text-align: left;
	line-height: 1.6;
	margin: .3em 0;
	font-size: 90%;
}

table.itemlist td {
	padding: .3em .3em;
	line-height: 1;
	font-size: 96%;
	border-bottom: 1px solid #d0d0d0;
	vertical-align: middle;
}

table.itemlist td .icon {
	display: inline;
	margin: 0 5px 0 0;
	vertical-align: middle;
	padding: 2px;
	border: 1px solid #ccc;
}


.category-description .icon {
	display: block;
	float: left;
	width: 60px;
	height: 60px;
	padding: 2px;
	border: 2px solid #ccc;
	margin-right: 10px;
}

table.itemlist form {
	display: inline;
	margin: 0;
	padding: 0;
}

table.itemlist input.text {
	width: 1.6em;
	margin-right: .5em;
}

table.shopping-cart {
	width: 100%;
	margin-bottom: 10px;
}

.shopping-cart caption {
	text-align: left;
	font-size: 90%;
}

table.shopping-cart td, table.shopping-cart th {
	padding: 3px;
} 

table.shopping-cart thead {
	background: #e5e5e5;
	border-bottom: 1px solid #ccc;
}

a.buy {
	float: right;
}

/* =LOGIN
   ------------------------------------------------------------------------*/
   
.login ul#app-nav {
	display: block;
	float: right;
	margin: .4em 1em .4em .4em;
	padding: .1em;
	list-style: none;
	font-size: 90%;
}

.login ul#app-nav li {
	display: inline;
}

.login li#user {
	margin-right: 1em;
	padding-right: 1em;
	border-right: 1px solid #999;
}

.login ul#app-nav a, .login ul#app-nav a:link, .login ul#app-nav a:visited, .login ul#app-nav a:active {
	font-weight: bold;
	text-decoration: none;
}

.login #app-nav {
	display: block;
	float: none;
	border-top: 1px dotted #aaa;
	margin: 0;
	padding: 1em .5em;
}

.login #app-nav a {
	color: #555 !important;
	font-weight: normal !important;
}

.login #app-nav .register {
	margin-right: 1em;
}

.login form ul {
    margin: 1em 0;
    padding: 0;
    list-style: none;
}

.login form li {
    margin: .5em 0;
    padding: 0;
}

.login label {
    display: block;
    font-weight:normal;
    margin: .3em 0;
    padding: 0;
    color: #3f3f3f;
    font-size: 83%;
}

.login .remember label {
	display: inline;
}

.login input.text {
	font-size: 120%;
	line-height: 1.6;
    width: 99%;
    padding: 2px;
	margin: 0;
	border: 1px solid #999;
}
.login form li.note {
	font-size: 80%;
}

.login form button {
    background-color:#9f2525;

    display: inline;

    margin: 0 7px 0 0;
	padding: .5em 1em;
    border: 1px solid #9f2525;

	-moz-border-radius: 5px;
	-khtml-border-radius: 5px;
	-webkit-border-radius: 5px;


    font-size:100%;
    font-weight: bold;

    line-height:130%;
    text-decoration:none;

    color: #fff;

    cursor: pointer;

    width:auto;
    overflow:visible;
}

.login #authMessage.message {
	border-color: #cc0000;
	background: #f7cbca;
	color:#cc0000;
	margin: 5px 0 0 0;
}

