html, body { min-height: 100%; }
body {
  margin: 0;
  padding: 0;
}

input[type="text"],
input[type="number"],
input[type="email"],
input[type="password"],
textarea {
  background-color: white;
  color: #333;
}
input, textarea, select, label {
  font-family: inherit;
  font-size: inherit;
  vertical-align: middle;
}
input[type=checkbox] { vertical-align: baseline; }

a { text-decoration: none; }
a img { border: none; }

img { max-width: 100%; }

h1, h2, h3, h4, p, ol, ul, li {
  color: inherit;
  margin: 0;
}

.main_wrapper , .item_page_content { overflow: hidden; clear: both; }

.col, .cell {
  float: left;
  overflow: hidden;
}
.bod_d {
  margin: 10px;
  padding: 10px;
  overflow: hidden;
}
.bod_d ul, .bod_d ol {
  zoom: 1;
  overflow: hidden;
  margin-left: 5px;
  padding-left: 5px;
}
.bod_d li {
  margin-left: 15px;
  padding: 0px;
}

.float_left { float: left; }
.float_center {
  margin-left: auto;
  margin-right: auto;
}
.float_right { float: right; }

.left { text-align: left; }
.center { text-align: center; }
.justify { text-align: justify; }
.right { text-align: right; }

.hr hr { display: none; }
.hr { height: 1px; }
.hr.hrdot { border-bottom: dotted 1px #333; }
.hr.hrdash { border-bottom: dashed 1px #333; }
.hr.hrsolid { border-bottom: solid 1px #333; }
.hr.hrdouble { border-bottom: double 4px #333; }

.img_div {
  font-size: 10pt;
  text-shadow: none;
  color: white;
  width: 100%;
  overflow: hidden;
  position: relative;
}
.img_div img, .img_div a {
  display: block;
  color: white;
  width: 100%;
}
.img_div, .img_txt span, .pdf_div, .pdf_div a, .nbsp_btn, .inline, .justbuff {
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
}
.img_div .img_txt {
  background: url(../images/_50.png) repeat left top;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
}
.img_div .img_txt span { padding: 2px 5px; }

.addto {
  padding: 2px;
  width: 96%;
  max-width: 96px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
}

.pdf_div { vertical-align: text-top; }
.pdf_div a {
  background: url(../images/_pdf.png) no-repeat left top;
  _height: 22px;
  min-height: 22px;
  padding: 0 0 0 30px;
  overflow: hidden;
}

.breadcrumbs {
  text-transform: capitalize;
  margin: 0 10px;
}

#alert_box {
	background: #333;
	-moz-box-shadow:    0 0 5px 0 #333;
	-webkit-box-shadow: 0 0 5px 0 #333;
	box-shadow:         0 0 5px 0 #333;
	font-size: 16pt;
	text-align: center;
	color: white;
	padding: 20px;
	position: fixed;
	top: 25%;
	right: 0;
	left: 0;
	z-index: 9999999;
}

.dat_list {
  text-align: justify; 
  line-height: 0;
  margin: 0;
  padding: 0;
}

.div_obj, .list_obj, .shl_obj, .cart_obj {
  text-align: left; 
  line-height: 1em;
  vertical-align: text-top;
  margin: 10px 0;
}

.d_img a, .d_img img { display: block; }

.justbuff {
  visibility: hidden;
  line-height: 0;
  min-height: 0px !important;
  height: 0px !important;
  padding-top: 0px !important;
  padding-bottom: 0px !important;
  margin-top: 0px !important;
  margin-bottom: 0px !important;
  overflow: hidden !important;
}
 
#gallery {
  display: none;
  position: relative;
  z-index: 0;
}
.galleria-layer {
  height: auto !important;
  top: auto !important;
  bottom: 0 !important;
}
.gal_textbox {
  position: relative;
  overflow: hidden;
}
.gal_text {
  font-size: 14pt;
  color: white;
  padding: 20px;
}
.gal_text_bg {
  background: #000;
  filter: alpha(opacity=60);
  opacity: 0.6;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: -1;
}
.nbsp_link {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 2;
}
.read_more {
  position: relative;
  z-index: 3;
}

.form_obj {
  display: block;
  text-align: left;
}
.form_obj input, .form_obj textarea, .form_obj select { vertical-align: middle; }
.form_obj textarea {
  vertical-align: text-top;
  padding: 1px 0 1px 1px;
}
.form_obj label {
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  white-space: normal;
  vertical-align: middle;
  color: inherit;
  margin: 0 -4px 0 0;
  padding: 0;
}

.inp {
  white-spaceV: nowrap;
  margin: 5px 0;
}

.w10p { width: 10px; }
.w20p { width: 20px; }
.w30p { width: 30px; }
.w40p { width: 40px; }
.w50p { width: 50px; }
.w75p { width: 75px; }
.w90p { width: 90px; }
.w120p { width: 120px; }
.w150p { width: 150px; }
.w180p { width: 180px; }
.w200p { width: 200px; }

.w10 { width: 9%; }
.w15 { width: 14%; }
.w25 { width: 24%; }
.w35 { width: 34%; }
.w45 { width: 44%; }
.w50 { width: 49%; }
.w55 { width: 54%; }
.w65 { width: 64%; }
.w75 { width: 74%; }
.w85 { width: 84%; }
.w90 { width: 89%; }
.w100 {
  width: 99%;
  margin: 2px 0;
  display: block;
}

.h50 { height: 50px; }
.h90 { height: 90px; }
.h130 { height: 130px; }
.h180 { height: 180px; }
.h200 { height: 200px; }

.btns {
  text-align: right;
  margin-right: 1%;
}

.btn {
  -moz-box-shadow:  0 0 5px 0 black;
  -webkit-box-shadow: 0 0 5px 0 black;
  box-shadow:     0 0 5px 0 black;
  cursor: pointer;
  border: solid 1px #333;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background-color: #333;
  color: white;
  padding: 1px 2px;
}
.btn:hover {
  background-color: white;
  color: #333;
}

.btn_x {
  cursor: pointer;
  border: none;
  background: none;
  font-size: 10pt;
  color: inherit;
  padding: 0 5px;
  margin: 0;
  vertical-align: inherit;
}
.btn_x:hover { color: #66A; }

.nbsp_btn {
  cursor: pointer;
  border: none;
  background: none;
  _width: 16px;
  _height: 16px;
  min-width: 16px;
  min-height: 16px;
  padding: 0;
  margin: 0;
}

.d_btns {
  position: relative;
  z-index: 9;
}

.cart_qty input {
  width: 30px;
  text-align: center;
}
 
.cat_head {
  text-transform: capitalize;
  line-height: 1em;
  margin: 5px 0;
}

.search_form input { vertical-align: middle; }

/* login form --------------------------------------------------------------- */
#log_box {
	-moz-box-shadow:    0 0 15px 0 rgba(255, 255, 255, 0.3);
	-webkit-box-shadow: 0 0 15px 0 rgba(255, 255, 255, 0.3);
	box-shadow:         0 0 15px 0 rgba(255, 255, 255, 0.3);
	background: url(../images/_mob_nav.png) repeat-x left bottom #333;
	text-align: center;
	color: white;
	min-width: 275px;
	padding: 10px 50px;
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 999;
}
#log_box .inline {
	margin: 3px;
	vertical-align: middle;
}
#log_box label input {
	border: solid 2px white;
	background: transparent;
	padding: 2px;
}

/* system alert ------------------------------------------------------------- */
.system_alert {
  -moz-box-shadow:    0 0 8px 2px #333;
  -webkit-box-shadow: 0 0 8px 2px #333;
  box-shadow:         0 0 8px 2px #333;
  border: solid 2px white !important;
  background: red !important;
  font-family: monospace !important;
  padding: 10px;
  position: fixed;
  top: 12px;
  right: 12px;
  left: 12px;
  z-index: 1001;
}
.system_alert h1 {
  font-size: 24pt !important;
  color: black !important;
}
.system_alert h2 {
  font-size: 20pt !important;
  color: #222 !important;
}
.system_alert p {
  font-size: 16pt !important;
  color: white !important;
}

.g-recaptcha {
	margin: 5px 0;
	text-align: center;
	max-width: 100%;
	overflow: hidden;
}
.g-recaptcha div { width: 100% !important; }



/* social buttons ----------------------------------------------------------- */
.soc_box {
  display: none;
  position: fixed;
  top: 100%;
  right: 0;
  z-index: 1000;
}
.soc_box .soc_pos {
  background: white;
  -moz-box-shadow:    0 0 5px 0 #333;
  -webkit-box-shadow: 0 0 5px 0 #333;
  box-shadow:         0 0 5px 0 #333;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  text-align: center;
  padding: 4px;
  position: relative;
  left: 50%;
}
.soc_box .inline {
  border: none;
  vertical-align: middle;
  height: 65px;
  margin: 20px;
  overflow: hidden;
}
.soc_box .soc_face { width: 55px; }
.soc_box .soc_goo { width: 57px; }
.soc_box .soc_tweet { width: 66px; }
.soc_box .soc_linked { width: 66px; }

.white_back {
  display: none;
  background: white;
  zoom: 1;
  filter: alpha(opacity=70);
  opacity: 0.7;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
}

.soc_btn {
  background: url(../images/_share.png) no-repeat left top !important;
  transition: all 500ms;
  zoom: 1;
  filter: alpha(opacity=60);
  opacity: 0.6;
  padding: 7px;
  width: 30px;
  height: 30px;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 1001;
}
.soc_btn:hover {
  filter: alpha(opacity=100);
  opacity: 1;
}

/* screen sizes ---------------------------------------------------------- */

#mob_nav, .mob_cats { display: none; }

@media screen and (max-width: 600px) {
	html { margin-top: 55px !important; }
	.view_port { width: 300px !important; }
	.view_port .bod_d {
		_height: 0 !important;
		min-height: 0  !important;
	}
	.view_port .col, .view_port .dat_list {
		display: block;
		width: 100% !important;
		clear: both;
	}
	.view_port .nav, .view_port .prod_cats { display: none !important; }
	#mob_nav, .view_port .mob_cats {
		display: block !important;
		-moz-box-shadow:    0 0 5px 0 rgba(255, 255, 255, 0.5);
		-webkit-box-shadow: 0 0 5px 0 rgba(255, 255, 255, 0.5);
		box-shadow:         0 0 5px 0 rgba(255, 255, 255, 0.5);
		background: url(../images/_mob_nav.png) repeat-x left bottom #333;
		padding: 10px; 
	}
	#mob_nav {
		position: fixed;
		padding: 20px 5px 15px 15px; 
		top: -5px;
		left: -5px;
		right: -5px;
		z-index: 999999;
	}
	#mob_nav select, .view_port .mob_cats select {
		background: url(../images/_mob_nav.gif) no-repeat right center transparent;
		border: none;
		font-size: 14pt;
		color: #AAA; 
		width: 100%;
	}
	.view_port table,
	.view_port .list_obj,
	.view_port .div_obj,
	.view_port .shl_obj,
	.view_port .cart_obj,
	.view_port .d_img {
		display: block;
		max-width: 100% !important;
		width: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.view_port .img_div img,
	.view_port .d_img img {
		height: auto !important;
		max-width: 100% !important;
	}
	.view_port .border_right_cell:not(.border_left_cell) .bod_d  { border-right: none; }
	.view_port .border_left_cell:not(.border_right_cell) .bod_d { border-left: none; }
	#log_box .inline .inline { float: right; }
}
@media screen and (min-width: 601px) and (max-width: 959px) {
 .view_port { width: 600px !important; }
}
@media screen and (max-width: 959px) {
 .view_port #gallery { display: none !important; }
}

.pp_overlay { z-index: 999 !important; }

.hide { display: none; }
