/* Set defaults */
body			{ margin: 0; padding: 0; font-size: 76%; }
input,
select,
textarea		{ font-size: 1em; }
th,
td				{ vertical-align: top; font-size: 1em; }
img				{ border: 0; }
a				{ text-decoration: none; }
a:hover			{ text-decoration: underline; }

/* Generic classes */
.clear:after	{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clear			{ display: inline-block; }
/* \*/
.clear			{ display: block; }
/* */

.align-left		{ text-align: left !important; }
.align-right	{ text-align: right !important; }
.align-centre	{ text-align: center !important; }
.align-top		{ vertical-align: top !important; }
.align-bottom	{ vertical-align: bottom !important; }
.align-middle	{ vertical-align: middle !important; }

.bold			{ font-weight: bold !important; }
.italic			{ font-style: italic !important; }
.underline		{ text-decoration: underline !important; }


/* Site specific */
html { background: #fafafa url(../graphics/html.png) repeat-x; }
body { background: transparent url(../graphics/body.jpg) no-repeat center top; }
body,
input,
select,
textarea { font-family: Arial, Helvetica, sans-serif; }

h1 { margin: 0 0 0.5em; font-size: 1.7em; font-weight: normal; font-family: "Lucida Sans", Arial, Helvetica, sans-serif; }
h2 { font-size: 1.3em; font-weight: normal; font-family: "Lucida Sans", Arial, Helvetica, sans-serif; }
h3 { font-size: 1.1em; }

a { color: #33911f; }

#wrapper { width: 950px; margin: 0 auto; }

#header { position: relative; z-index: 20; height: 229px; background: #282926 url(../graphics/header.png) no-repeat; }
#logo { position: absolute; left: 30px; top: 40px; }

#navigation { position: absolute; left: 30px; bottom: 0; height: 50px; font-size: 1.2em; }
* html #navigation { bottom: -1px; }
#navigation ul { margin: 0; padding: 0; list-style-type: none; }
#navigation li { position: relative; float: left; }
#navigation li.nav_active { padding: 0 0 0 10px; background: url(../graphics/navlinkactive-left.png) no-repeat; }
#navigation li a { float: left; zoom: 1; background: url(../graphics/navlink-hover.gif) repeat-x left 50px; color: white; outline: none; }
#navigation li a:hover { background-position: left bottom; text-decoration: none; }
#navigation li.nav_active a,
#navigation li.nav_active a:hover { padding: 0 10px 0 0; background: url(../graphics/navlinkactive-right.png) no-repeat right top; color: black; }
#navigation li a span { float: left; height: 44px; line-height: 44px; padding: 6px 15px 0; background: url(../graphics/navlink-divider.gif) no-repeat right bottom; cursor: pointer; }
#navigation li:last-child a span { background: none; }
#navigation li.nav_active a span { padding: 6px 5px 0; background: white; }

#navigation ul ul { position: absolute; left: 0; top: 50px; background: white; font-size: 0.9em; }
#navigation ul ul li { float: none; padding: 0 !important; background: none; }
#navigation ul ul li a { float: none; display: block; width: 160px; padding: 0 15px !important; background: none; color: #33911f !important; border-bottom: 1px solid #dfdfdf; }
#navigation ul ul li a:hover,
#navigation ul ul li.nav_active a { background: #efefef !important; }
#navigation ul ul li.nav_active a,
#navigation ul ul li.nav_active a:hover {  }
#navigation ul ul li a span { float: none; display: block; height: auto !important; line-height: 1.2em; padding: 6px 0 !important; background: none !important; }


/* Navigation dropdown (do not edit) */
* html #navigation table { border-collapse: collapse; padding: 0; margin: 0 0 -7px; width: 0; height: 0; z-index: 300; position: absolute; left: 0; top: -1000px; }
* html #navigation a:hover table { display: block; left: 0; top: 0; }
#navigation td { margin: 0; padding: 0; }
#navigation td a { position: relative; zoom: 1; }
* html #navigation a:hover { position: relative; z-index: 100; }
#navigation li:hover { position: relative; }
* html #navigation ul ul a:hover { position: relative; z-index: 110; }
#navigation ul ul li:hover { position: relative; }
* html #navigation ul ul ul a:hover { position: relative; z-index: 120; }
#navigation ul ul ul ul a:hover { position: relative; z-index: 130; }
#navigation ul ul { visibility: hidden; display: none; }
#navigation ul :hover ul { visibility: visible; display: block; height: auto; }
#navigation ul :hover ul ul { visibility: hidden; }
#navigation ul :hover ul :hover ul ul { visibility: hidden; }
#navigation ul :hover ul :hover ul { visibility: visible; }
#navigation ul :hover ul :hover ul :hover ul { visibility: visible; }

#main { padding: 30px 30px 1em; background: #fdfdfd url(../graphics/main.gif) repeat-x; font-size: 1.05em; }

#services { float: left; width: 190px; }
#services h2,
#news h2.title { margin: 0; height: 37px; line-height: 37px; padding: 0 15px; background: url(../graphics/services.gif) no-repeat; color: white; font-size: 1.4em; }
#services ul,
#news { margin: 0; padding: 0; list-style-type: none; background: white url(../graphics/services-nav.gif) repeat-x; }
#services ul li { border-bottom: 1px solid #cccdc7; }
#services ul li a { display: block; zoom: 1; padding: 10px 15px; }
#services ul li a:hover,
#services ul li.nav_active a { background: url(../graphics/services-nav-hover.png); text-decoration: none; }
* html #services ul li a:hover,
* html #services ul li.nav_active a { background: #d8dacf none; text-decoration: none; }

#sidebar,
#news { float: right; width: 190px; }

#sidebar { padding: 65px 0 0; }
#sidebar p { margin: 0 0 1em; }

#news { width: 160px; padding: 0 15px; #padding: 0 15px 1em; background-position: 0 37px; line-height: 1.5em; border-bottom: 1px solid #cccdc7; }
#news h2.title { margin: 0 -15px; }

#content { line-height: 1.5em; }
#content.services { margin: 0 0 0 220px; }
#content.sidebar { margin: 0 220px 0 0; }
#content.services.sidebar { margin: 0 220px; }

#crumbs { margin: 0 0 1em; font-size: 0.9em; }

#footer { margin: 0 0 2em; padding: 20px 30px; background: black; color: #808080; font-size: 0.9em; }
#footer ul { margin: 0; padding: 0; list-style-type: none; }
#footer ul li { display: inline; padding: 0 2em 0 0; }
#footer p { margin: 1em 0 0; padding: 1em 0 0; border-top: 1px solid #313131; }

* html #wrapper.services #content table { margin: 0 -21px; }
#wrapper.services #content td { padding: 0 30px 15px 0; text-align: center; font-size: 1.1em; }
#wrapper.services #content td img { display: block; margin: 0 0 -1em; text-decoration: none; }


iframe { float: right; }


#contact-form ul, #contact-form ul li						{width:310px;}
#contact-form ul li											{background:#eee;}
#contact-form label											{width:30%;}
#contact-form input.text, #contact-form textarea			{width:60%;}

#contact-form ul					{list-style:none;margin:0;padding:0;}
#contact-form ul li					{list-style-type:none;outline:none;display:block;float:left;margin:0 0 1px 0;padding:5px 0 5px 10px;}
#contact-form label					{display:block;float:left;color:#000;margin-top:5px}
#contact-form input.text			{height:18px;font:12px Arial;background:#eee;padding:6px 5px 1px 5px;color:#30353C;border:2px solid #e1e3e4;float:left;background-color: #fff}
#contact-form textarea 				{font:13px Arial;background:#eee;padding:5px 5px 3px 5px;color:#30353C;border:2px solid #e1e3e4;float:left;background-color: #fff}
#contact-form li.focus textarea 	{border:2px solid #19a9b5;font-weight:bold}
#contact-form li.focus input.text	{border:2px solid #19a9b5;font-weight:bold}
#contact-form li.focus label 		{color:#30353C}
#contact-form ul.checkbox 			{float:left}
#contact-form ul.checkbox li 		{list-style-image:none;width:auto;background:none;padding:0;margin-top:6px;float:none}
#contact-form ul.checkbox label 	{width:auto;display:inline;float:none}
#contact-form ul.checkbox input 	{}
#contact-form input.note			{color:#808388;font-weight:normal;font-size:11px;font-style:italic}

div.form div.errors { padding: 15px; background: #c10000; color: white; }
div.form div.errors h3 { margin: 0 0 1em; }
div.form div.errors p { margin: 0; }
div.form fieldset { margin: 0; padding: 0; border: 0; }
div.form p { position: relative; }
div.form p.rating { padding: 5px 10px; border: 2px solid #ccc; }
div.form label { float: left; width: 180px; padding: 0 20px 0 0; }
div.form label.inline { float: none; width: auto; }
div.form label.absolute { float: none; position: absolute; left: 0; top: 0; width: 180px; padding: 0 20px 0 0; }
div.form input.text,
div.form textarea { width: 350px; }
div.form textarea { height: 80px; }
div.form input.radio,
div.form input.checkbox { margin: 0 0 0 200px; }