/*RESET CSS*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }
/* remember to define focus styles! */ :focus { outline: 0; }
body { line-height: 1; color: black; background: white; font-size:62.5%; }
ol, ul { list-style: none; }
/* tables still need 'cellspacing="0"' in the markup */ table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }

/*CLEAR*/
.clear { display: inline-block; }
.clear:after, body:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* html .clear { height: 1%; }
.clear { display: block; }

/*LAYOUT*/
html				{ background:#383838 url('/site_images/top_shadow.png') repeat-x top center fixed; }
html.gallery		{ background:none; }
body				{ position:relative; width:100%; color:#fff; background:url('/site_images/bg.png') no-repeat center top fixed; }
html.gallery body	{ background:#383838 url('/site_images/top_shadow.png') repeat-x top center fixed; }
.wrap 				{ width:96em; margin:0 auto; padding:2.2em 0 0 0; }

.fix			{ position:fixed; height:53.3em; width:100%; z-index:0; background:url('/site_images/bg.png') no-repeat center top fixed; }
#bottom.fix		{ position:fixed; height:2.3em; width:100%; bottom:0em; padding:0.5em 0 0 0; background:#272727 url("/site_images/bottom_shadow.png") repeat-x; z-index:2; }

#header			{ margin:0 0 1.7em 0; }
.fix #header	{ position:relative; margin:0 auto; padding:2.2em 0 0 0; width:96em; }

h1#logo			{ text-indent:-1000em; background: url("/site_images/logo.png") no-repeat; width:32em; height:4.4em; float:left; }
h1#logo a		{ display:block; width:32em; height:4.4em;}

.gal_menu		{ list-style:none; float:left; width:36em; padding:0.8em 0.6em 0 1.2em; margin:0 0 0 6em; text-align:left; background: url("/site_images/roll_icon.png") no-repeat left 1.2em; }
.gen_menu		{ list-style:none; float:right; width:12.3em; padding:0.8em 0.6em 0 1.2em; margin:0 0 0 4.1em; text-align:right; background: url("/site_images/info_icon.png") no-repeat left 1.2em; }
.gal_menu li,
.gen_menu li	{ display:inline; padding:0 0 1.4em 0.84em; position:relative; }
.gal_menu li ul { display:none; position:absolute; width:30em; left:-15em; z-index:6; top:1.4em; text-align:center; }
.gal_menu li ul li { font-size:1em; }

.col_1,
.col_2			{ float:left; width:30.8em; padding:0 0.6em; }
.col_3			{ float:right; width:30.8em; padding:0 0.6em; }

#home_image		{ padding:5px 0 0 0; background:url("/site_images/home_tri.png") no-repeat 14.5em 0; }
#home_image img	{ border:0.3em #fff solid; width:95.4em; height:45.6em; }
#home_des			{ background:#2c2c2c url("/site_images/home_bg.png") repeat-x 0 0; padding:2.8em 0 2.2em 0; }
#home_des .col_1 h2	{ padding:0 0 0 9.41em; }
#home_des .col_2	{ width:46.8em; padding:0 8.6em; }

dl.contact dd	{ display:inline; padding:0; width:10.6em; }
dl.contact dt	{ display:-moz-inline-box; display:inline-block; width:10.6em; text-align:right; padding:0 0.8em 0 0; }
dl.contact_left dd	{ display:inline; padding:0; width:15.92em; }
dl.contact_left dt	{ display:-moz-inline-box; display:inline-block; width:5.28em; text-align:right; padding:0 0.8em 0 0; }

.gal_wrap 			{ position:absolute; top:8.8em; margin:0 0 3em 0; z-index:1; }
.gal_wrap ul		{ list-style:none; white-space:nowrap; width:auto; padding:0 0 0 0.6em; }
.gal_wrap ul li		{ position:relative; display:inline; padding:0 0.6em 0 0; }
.gal_wrap ul li img	{ border:0.3em #fff solid; }
.gal_wrap ul li div	{ position:absolute; overflow:hidden; font-size:0.9em; line-height:1em; text-align:center; width:18px; height:12px; bottom:0em; left:0em; margin:0.3em; padding:0.3em 0em 0.3em 0em; background:#fff; color:#000; }

/*TYPO*/
p,
li,
dl,
label				{ font-family: Helvetica, Arial, sans-serif; font-size:1.4em; line-height:1.58em; letter-spacing:0.03em; padding:0 0 0.8em 0; }

strong				{ font-weight:bold; color:#6b8fa7; }

h2					{ font-family: Helvetica, Arial, sans-serif; font-size:1.7em; line-height:1.3em; letter-spacing:0.03em; color:#6b8fa7; }
a:link,
a:visited			{ color:#fff; text-decoration:underline; }
a:hover,
a:active			{ color:#6b8fa7; text-decoration:underline; }

ul.gal_menu a,
ul.gen_menu a		{ text-decoration:none; }
ul.gal_menu a.active,
ul.gen_menu li.active a	{ color:#6b8fa7; }

ul.buttons			{ list-style:none; text-align:center; }
ul.buttons li		{ margin:0 3px 0 0; padding:0; display:-moz-inline-box; display:inline-block; }
ul.buttons li a:link,
ul.buttons li a:visited		{ display:block; width:18px; text-align:center; height:18px; color:#000; text-decoration:none; font-size:11px; background: url('/site_images/buttons.png') no-repeat 0 0;}
ul.buttons li a:hover,
ul.buttons li a:active		{ display:block; width:18px; text-align:center; height:18px; color:#fff; text-decoration:none; font-size:11px; background:url('/site_images/buttons.png') no-repeat -18px 0; }

form.zemContactForm textarea,
form.zemContactForm input.zemText	{ display:block; background:#dae9f2; border:0.1em solid #fff; padding:0.3em; font-family: Helvetica, Arial, sans-serif; font-size:1.4em; line-height:1em; letter-spacing:0.03em; margin:0 0 0.8em 0; }
form.zemContactForm label			{ display:block; padding:0; }
form.zemContactForm textarea	{ width:21.2em; line-height:1.57em; }
form.zemContactForm input		{ width:9.77em; }
form.zemContactForm button		{ background:transparent url("/site_images/right_button.png") no-repeat right top; display:block; border:none; padding:0 12px 0 0; height:22px; cursor:pointer; }
form.zemContactForm button span	{ background:transparent url("/site_images/left_button.png") no-repeat left top; display:block; height:22px; padding:6px 0 6px 12px; height:10px; font-family: Helvetica, Arial, sans-serif; font-size:1.3em; letter-spacing:0.03em; line-height:10px; text-align:center; }
form.zemContactForm button:active		{ background:transparent url("/site_images/right_button.png") no-repeat right -22px; }
form.zemContactForm button:active span	{ background:transparent url("/site_images/left_button.png") no-repeat left -22px; }
form.zemContactForm .zemError	{ font-style:italic; }

