/* =General
---------------------*/

/* Remove padding and margin */
* {
  margin: 0;
	padding: 0;
}

/* Put it back on certain elements */
h2, h3, h4, h5, h6, p, pre, blockquote, form, fieldset, table, ul {
  margin: .5em 0 1em;
}

/* Class for clearing floats */
.clear {
	clear: both;
	height: 0 !important;
	line-height: 0 !important;
	margin: 0 !important;
	}

/* Remove border around linked images */
img {
	border: 0;
}


/* =Typography
---------------------*/

body {
	text-align: center;
	color: #333;
	font-family: "Trebuchet MS",Arial,Geneva,Helvetica,sans-serif;
	font-size: 76%;
	line-height: 1.3;
	background: #FFF;
	}
body.s {
	font-size: 76%;
	}
body.m {
	font-size: 86%;
	}
body.l {
	font-size: 93%;
	}

td,th,p,div,li,dt,dd,blockquote,pre {
	font-size: 1em;
	}
div div, div p, div li, div dt, div dd, div table, div th, div td {
	font-size: 100%;
	}


/* =Headings
---------------------*/

h2 {
	margin: 0 0 .5em;
	font-size: 1.7em;
	line-height: 1.1;
	color: #99CCFF;
	}

h3 {
	margin: 1.5em 0 .5em;
	font-weight: normal;
	font-size: 1.4em;
	line-height: 1.1;
	color: #559CBD;
	}

h4 {
	margin: 1em 0 .5em;
	clear: both;
	font-size: 1.1em;
	line-height: 1.1;
	}


/* =Links
---------------------*/

a:link {
	color: #369;
	text-decoration: none;
	}
a:visited {
	color: #99CCFF;
	text-decoration: none;
	}
a:hover {
	color: #559CBD;
	text-decoration: none;
	background: #F7E8E1;
	}
a:active {
	color: #369;
	}


/* =Forms
---------------------*/

/* Removes fieldset borders. even on Opea 7 */
fieldset {
  border: 1px solid transparent;
}


/* =Tables
---------------------*/

table {
  border-spacing: 0;
	border-collapse: collapse;
}

th {
  text-align: left;
	font-weight: bold;
}
td {
  text-align: left;
	font-weight: normal;
}


/* =Lists
---------------------*/

ul {
	padding: 0 0 0 1.4em;
	}
ol {
	padding: 0 0 0 2em;
	}
li {
	padding: 0 0 .2em;
	}


/* =Classes
---------------------*/

.required { color: #F00; }
div.error, p.error, span.error, label.error { font-weight: bold; color: #C30; }
input.error, textarea.error { border: 3px solid #C30 !important; }
.reset-top { margin-top: 0; }
.note { color: #666; }


/* =Layout
---------------------*/

#content {
	padding: 10px 0 1em;
	}

.w2col #section_menu {
	float: left;
	width: 190px;
	padding: 10px 0 1em;
	}
.w2col #content {
	float: right;
	width: 540px;
	}

.col1 {
	float: left;
	width: 370px;
	}
.col2 {
	float: right;
	width: 370px;
	}


/* =Header
---------------------*/

#header {
	position: relative;
	width: 760px;
	margin: 0 auto;
	text-align: left;
	}

#header h1 {
	position: relative;
	left: -20px;
	margin: 0 0 1em;
	}
#home #header h1 a {
	cursor: default;
	}


/* =Main Nav
---------------------*/

#header #menu {
	position: relative;
	top: 1px;
	}

#header #menu ul {
	width: 760px;
	margin: 0;
	padding: 0;
	list-style: none;
	}
#header #menu li {
	float: left;
	display: inline;
	margin: 0 0 0 2px;
	padding: 0;
	}
#header #menu li.important {
	font-weight: bold;
	}

#header #menu li a {
	display: block;
	float: left;
	color: #FFF;
	background: #99CCFF url(/img/bg/bg-btn-off-left.gif) 0 0 no-repeat;
	}
#header #menu li a b {
	display: block;
	padding: 4px 8px 2px;
	font-style: normal;
	background: transparent url(/img/bg/bg-btn-off-right.gif) top right no-repeat;
	}

#header #menu li a:hover {
	background: #559CBD url(/img/bg/bg-btn-on-left.gif) 0 0 no-repeat;
	text-decoration: none;
	}
#header #menu li a:hover b {
	background: transparent url(/img/bg/bg-btn-on-right.gif) top right no-repeat;
	}

#header #menu li.select a {
	background: #559CBD url(/img/bg/bg-btn-on-left.gif) 0 0 no-repeat;
	}
#header #menu li.select a b {
	background: transparent url(/img/bg/bg-btn-on-right.gif) top right no-repeat;
	}

#header #menu li#switch {
	position: relative;
	float: right;
	margin: 0 2px 0 0;
	font-weight: bold;
	background: #004982 url(/img/bg/bg-btn-switch-left.gif) 0 0 no-repeat;
	}
#header #menu li#switch a {
	background: #004982 url(/img/bg/bg-btn-switch-left.gif) 0 0 no-repeat;
	}
#header #menu li#switch a b {
	background: transparent url(/img/bg/bg-btn-switch-right.gif) top right no-repeat;
	}
#header #menu li#switch span {
	display: none;
	position: absolute;
	width: 230px;
	top: 40px;
	right: 20px;
	padding: 5px;
	font-weight: normal;
	color: #333;
	background: transparent url(/img/white.png);
	border: 1px solid #666;
	}


/* =Utils Nav
---------------------*/

#header #utils {
	position: absolute;
	top: 0;
	left: 0;
	width: 760px;
	text-align: right;
	}

#header #utils ul {
	margin: 0;
	padding: 8px 2px 0 0;
	list-style: none;
	}
#header #utils li {
	display: inline;
	margin: 0 0 0 1em;
	padding: 0;
	font-family: Verdana,Arial,Geneva,Helvetica,sans-serif;
	font-size: .9em;
	color: #666;
	}
#header #utils li a:visited {
	color: #369;
	}
#header #utils li a:hover {
	color: #559CBD;
	}
#header #utils li a.select {
	color: #559CBD !important;
	}

#header #utils #textsize #s {
	font-size: 10px;
	}
#header #utils #textsize #m {
	font-size: 13px;
	}
#header #utils #textsize #l {
	font-size: 14px;
	}


/* =Visual
---------------------*/

#visual {
	clear: both;
	width: 760px;
	margin: auto;
	padding: 1px 0 0;
	}


/* =Content
---------------------*/

#main {
	text-align: center;
	}
#mainwrap {
	width: 760px;
	margin: 0 auto;
	padding: 10px 0;
	text-align: left;
	}


/* =Products
---------------------*/

.product {
	clear: both;
	}
.product img {
	display: block;
	float: left;
	margin: 0 0 10px;
	border: 1px solid #CCC;
	}
.product .desc {
	margin: 0 0 0 110px;
	}


/* =Section Menu
---------------------*/

#section_menu h3 {
	margin: 0;
	}

#section_menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
	}
#section_menu li {
	width: 190px;
	margin: 0 0 5px;
	padding: 0;
	line-height: 1.1;
	}
#section_menu li a {
	display: block;
	padding: 3px 10px 4px;
	background: #99CCFF url(/img/bg/bg_menu_section.gif) 0 0 no-repeat;
	border: 1px solid #99CCFF;
	}

#section_menu li#special a {
	padding: 5px 10px 4px;
	font-weight: bold;
	}

#section_menu li.util a {
	background: none;
	}
#section_menu li.util a:link, #section_menu li.util a:visited {
	color: #559CBD;
	}

#section_menu li a:link, #section_menu li a:visited {
	color: #FFF;
	}
#section_menu li a:hover, #section_menu li.select a {
	background: #559CBD;
	}
#section_menu li.util a:hover, #section_menu li.util.select a {
	color: #FFF;
	}

#section_menu ul ul {
	margin: 0;
	padding: 5px 0 3px;
	background: #FFF;
	border-bottom: 1px solid #99CCFF;
	}
#section_menu ul ul li {
	width: auto;
	margin: 0;
	padding: 0 0 5px 10px;
	font-size: .94em;
	}
#section_menu ul ul li a {
	display: block;
	padding: 0;
	background: none !important;
	border: none;
	}
#section_menu ul ul li a:link, #section_menu ul ul li a:visited {
	color: #99CCFF;
	}
#section_menu ul ul li a:hover {
	color: #559CBD;
	background: none;
	}

#section_menu ul ul li.select a {
	color: #559CBD !important;
	font-weight: bold;
	}


/* =Footer
---------------------*/

#footer {
	clear: both;
	padding: 10px;
	text-align: center;
	color: #555;
	background: #FFF url(/img/bg/bg_footer.gif) 0 0 repeat-x;
	}

#footer p {
	margin: 0;
	}


/* =Misc 1
---------------------*/

div.message {
	margin: 1em 0;
	padding: 8px 10px;
	font-weight: bold;
	text-align: center;
	background: #FFF;
	border: 1px solid #933;
	}
div.error, p.error {
	font-weight: bold;
	color: #C30;
	}
input.error, textarea.error {
	border: 3px solid #C30 !important;
	}

p.back {
	margin: 2em 0 0;
	}
p.legend {
	font-size: .94em;
	margin: 0;
	}

img.photoright {
	float: right;
	margin: 0 0 10px 10px;
	border: 1px solid #BFC3C6;
	}
img.photoleft {
	float: left;
	margin: 0 15px 15px 0;
	border: 1px solid #BFC3C6;
	}


table.shipping th, table.shipping td {
	background: #FFF;
	border: 1px solid #559CBD;
	padding: 3px 5px;
	vertical-align: middle;
	width: 25%;
	}
table.order_result {
	width: 100%;
	}
table.order_result th, table.order_result td {
	background: #FFF;
	border: 1px solid #559CBD;
	padding: 5px;
	vertical-align: middle;
	}
table.order_result th {
	text-align: right;
	width: 35%;
	}
table.order_result .signature td {
	height: 3em;
	}
form {
	font-size: 1.1em;
	margin 1em 0;
	}

select option {
	padding: 0 1em  0 0;
	}

form .input {
	padding: .5em 0 0;
	}
form .input input,
form .input textarea,
form .input select {
	background: #FFF;
	border: 1px solid #657D94;
	font-size: 1em;
	}
form .leftlabel {
	clear: left;
	}
form .leftlabel label {
	display: block;
	width: 8em;
	float: left;
	line-height: 1.1;
	margin: 0 .5em 0 0;
	padding: 0;
	}
form .leftlabel .error_message {
	display: block;
	}
form .toplabel {
	margin: 0 0 .5em;
	}
form .toplabel label {
	display: block;
	}
form label .note {
	display: block;
	font-size: .85em;
	}

form .checkbox {
	padding-left: 8.5em;
	}

form .section, form #ordertable .section {
	padding-top: 1em;
	}

form div.action {
	clear: left;
	padding: 1em 0;
	}


