/* css/main.css 2018-03-07 20:56:50.000Z mmeyer */

/* IE fix for bugs and poor support */
header,main,footer { display:block; }

/* General Layout */
html, body {
	display:flex;
	margin:0 auto;
	padding:0;
	width:100%;
}
html {
	background:#f3f3f3;
}
body {
	flex-direction:column;
	min-height:100vh;
	max-width:1500px;
	background:
		url(../img/bar_bg_top.png) no-repeat top left,
		url(../img/bar_bg.png) repeat-y left;
	background-color:#ffffff;
	
	font-family:Arial;
	font-size:14px;
}
main {
	flex-grow:1;
}
header, main, footer {
	clear:both;
}

/* Common */
.button {
	cursor:pointer;
	display:inline-block;
	padding:8px 15px;
	font-family:Arial;
	color:#fff;
	font-weight:bold;
	font-size:90%;
	text-decoration:none;
	background:#00516f;
	border:0;
	border-radius:4px;
	box-shadow: inset 0 -2px 2px rgba(0,0,0,0.5),
		inset 0 2px 2px rgba(255,255,255,.5);
}
.error {
	color:#c90000;
}
.responsive-clear {
	display:none;
}
.clear {
	clear:both;
}
.cleft {
	clear:left;
}
.cright {
	clear:right;
}
.centered {
  text-align:center;
}
.nowrap {
	white-space:nowrap;
}
ul.menu {
	list-style:none;
	margin:0;
	padding:0;
}
ul.menu > li a {
	display:inline-block;
}
a {
	cursor:pointer;
}
a img {
	border:0;
}

.repsonsive-menu-button, .responsive-menu-trigger {
	display:none;
	cursor:pointer;
}

/* Icons */
img[src*="/icon/"],
input[src*="/icon/"] {
	max-width:40px;
	height:auto;
}
img[src*="/social/"],
input[src*="/social/"] {
	max-width:45px;
	height:auto;
}
img[src$="/pdf.png"] {
	max-width:20px;
	height:auto;
}
img[src$="/ecs.png"] {
  max-width:160px;
  max-height:160px;
}

/* Header */
header {
	position:relative;
	flex-shrink:0;
}
header h1 {
	margin:0 0 0 300px;
	font-size:125%;
	text-transform:uppercase;
	letter-spacing:-.01em;
}
header h1 a.telephone {
	display:inline-block;
	text-decoration:none;
	color:#4d4f4e;
	margin:5px 0;
}
header #Logo {
	display:inline-block;
	margin:15px 45px;
	float:left;
}
header #Logo img {
	width:auto;
	height:auto;
	max-height:155px;
}
/* QuickBar */
header #QuickBar {
	margin-left:300px;
	padding:15px 0;
}
#QuickSearch, #QuickCart {
	text-decoration:none;
	display:inline-block;
}
#QuickSearch {
	min-width:50%;
}
#QuickSearch form input[type='text'] {
	width:80%;
	height:36px;
	padding:0 5px;
	border:1px solid #4d4f4e;
	font-size:18px;
	line-height:36px;
	color:#4d4f4e;
}
#QuickSearch form input {
	vertical-align:middle;
}
#QuickSearch form .search-type {
	margin:3px 60px 3px 0;
	text-align:center;
}
#QuickSearch form .search-type > div {
	display:inline-block;
	margin:0 5px;
}
#QuickSearch form .search-type label,
#QuickSearch form .search-type input {
	vertical-align:middle;
}
#QuickSearch form .search-type input[type='radio'] {
	margin:0 3px;
}
#QuickHome {
  line-height:40px;
	float:right;
  margin-right: 30px;
}
#QuickHome img {
	vertical-align:middle;
}
#QuickCart {
	line-height:40px;
	color:#4d4f4e;
	font-size:18px;
	float:right;
	padding-right:10px;
}
#QuickCart img {
	vertical-align:middle;
	margin:0 5px;
}
/* Site Menu */
header #SiteMenu {
	margin:0 0 5px 275px;
}
#SiteMenu ul.menu {
	display:flex;
}
#SiteMenu ul.menu > li {
	margin:0 2px;
	display:inline-block;
	white-space:nowrap;
	flex-grow:1;
}
#SiteMenu ul.menu > li:first-child {
	margin-left:0;
}
#SiteMenu ul.menu > li:last-child {
	margin-right:0;
}
#SiteMenu ul.menu > li > a {
	display:block;
	padding:10px;
	background:#00516f;
	color:#fff;
	text-decoration:none;
	text-align:center;
}
#SiteMenu ul.menu > li > div.submenu {
  position:absolute;
	min-width:20%;
	z-index:15;
	background:#fff;
  overflow:hidden;
  max-height: 0;
}
#SiteMenu ul.menu > li > div.submenu > a {
	display:block;
	color:#4d4f4e;
	margin:2px 10px;
	padding:5px 0;
	text-decoration:none;
	border-top:1px solid #4d4f4e;
}
#SiteMenu ul.menu > li > div.submenu > a img {
	vertical-align:middle;
}
#SiteMenu ul.menu > li > div.submenu > a:hover {
	font-weight:bold;
}
#SiteMenu ul.menu > li > div.submenu > a:first-child {
	border-top:0;
}
#SiteMenu ul.menu > li:hover > div.submenu {
  max-height:10000px;
  transition: max-height .75s ease-in;
	border:1px solid #333;
	border-top:0;
	border-bottom-left-radius:10px;
	border-bottom-right-radius:10px;
}

#SiteMenu ul.menu > li > a.dropdown {
	background:#00516f url(../img/dropdown_arrow.png) no-repeat;
	background-position:right 10px center;
	padding-right:30px;
}

#SiteMenu ul.menu > li:hover > a.dropdown {
	background:#00516f url(../img/dropdown_arrow.png) no-repeat;
	background-position:right 10px center;
	padding-right:30px;
}

/* Hero Navigation */
#HeroNav {
	position:relative;
	clear:both;
	-ms-flex-negative: 0;
	margin-bottom:15px;
	max-height:300px;
	overflow-y:hidden;
}
.hero-nav-image {
	display:block;
	width:100%;
	height:auto;
}
.hero-nav {
	position:absolute;
	left:10px;
	bottom:10px;
}
.hero-nav-link {
}
.hero-nav-image {
}
.hero-nav-label {
	font-size:150%;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	text-shadow:1px 1px 2px #000,
		-1px -1px 2px #000,
		-1px 1px 2px #000,
		1px -1px 2px #000;
	display:block;
	text-align:center;
	position:absolute;
	left:0;
	right:0;
	bottom:25px;
}
.hero-nav-button {
	display:inline-block;
	width:9px;
	height:9px;
	margin:2px;
	border:1px solid #fff;
	border-radius:50%;
	background:#fff;
	cursor:pointer;
}
.hero-nav-button:hover {
	background:#aaa;
}
.hero-nav-button.hero-active {
	background:#333;
}

/* Footer */
footer {
	margin:15px 25px 15px 275px;
	border-top:1px solid #4d4f4e;
	padding-top:15px;
}
footer #FootMenu {
	display:inline-block;
	width:50%;
}
footer #FootMenu ul.menu {
  column-count: 3;
}
footer #FootMenu ul.menu > li {
}
footer #FootMenu ul.menu > li a {
	text-decoration:none;
	font-size:85%;
	color:#000;
}
footer #FootMenu ul.menu > li a:hover {
	text-decoration:underline;
}
footer #Social {
	float:right;
}
#Social ul.menu > li {
	display:inline-block;
	margin:0 7.5px;
}
#Social ul.menu > li:first-child {
	margin-left:0;
}
#Social ul.menu > li:last-child {
	margin-right:0;
}
#Social ul.menu > li a img {
	width:40px;
	box-shadow: 3px 3px 5px #888888;
}

/* Content */
main {
}
/* Content Sidebar */
#Sidebar {
	width:210px;
	padding:0 10px;
	float:left;
}
#Sidebar a.telephone {
	display:block;
	text-align:center;
	color:#fff;
	font-size:125%;
	text-decoration:none;
	font-weight:bold;
}
#Sidebar nav.page {
	margin:20px auto;
}
#Sidebar nav.page.main {
	margin-bottom:30px;
}
#Sidebar nav.page.main ul.menu > li a {
	margin:10px 0;
	font-weight:bold;
	text-decoration:none;
}
#Sidebar nav.page.main ul.menu > li a span {
	text-decoration:underline;
}
#Sidebar nav.page.main ul.menu > li a:hover span {
	border-bottom:0;
}
#Sidebar nav.page h3 {
	margin:auto;
	font-size:125%;
}
#Sidebar nav.page ul.menu {
	margin:10px 0;
}
#Sidebar nav.page ul.menu > li {
	margin:2px 0;
}
#Sidebar nav.page ul.menu > li a {
	color:#000;
	font-size:100%;
	font-weight:normal;
	text-decoration:none;
	display:block;
}
#Sidebar nav.page ul.menu > li a.active {
	font-weight:bold;
}
#Sidebar nav.page ul.menu > li a:hover span {
	border-bottom:1px solid black;
}
#Sidebar nav.page ul.menu > li a img {
	vertical-align:middle;
}
#Sidebar nav.page ul.menu > li .submenu {
	margin-left:10px;
	font-weight:normal;
}
#Sidebar nav.page ul.menu > li .submenu a {
	display:block;
}

/* Content */
#Content {
	margin:0 20px 0 275px;
	line-height:1.3;
}
#Content h1 {
	margin:0;
	font-size:125%;
}
#Content h2 {
	margin:10px 0;
	font-size:110%;
}
#Content img.contentImage {
  max-width:100%;
}

/* Pagination */
nav.pagination {
	text-align:center;
}
nav.featured.pagination {
  text-align:left;
}
nav.pagination h3 {
	margin:0;
	font-size:100%;
}
nav.pagination div.pages {
	font-size:85%;
}
nav.pagination div.pages a,
nav.pagination div.pages span {
	display:inline-block;
	margin:0 3px;
	color:#4d4f4e;
}
/* Product List */
.product-list {
	
}
.product-list a.home-button {
	/* 22.5% aspect */
	width:280px;
	height:63px;
	display:inline-block;
	text-align:center;
	line-height:61px;
	background:url(../img/button.png);
	background-size:100% auto;
	font-size:125%;
	font-weight:bold;
	color:#ffffff;
	text-shadow:2px 2px 2px #3d3d3d;
	text-decoration:none;
}
.product-list .product {
	vertical-align:bottom;
	display:inline-block;
	width:30%;
	max-width:250px;
	margin:10px 1%;
	color:#4d4f4e;
	font-size:75%;
	text-decoration:none;
}
.product-list .product span {
	display:block;
}
.product-list .product span.number {
	font-weight:bold;
}
.product-list .product span.name {
	font-style:italic;
}
.product-list .product img.thumb {
/*	border:1px solid #231f20;*/
	display:block;
	width:auto;
	height:auto;
	max-width:100%;
	max-height:165px;
	margin-bottom:4px;
}

/* Product Detail */
.product-detail,
.product-cart,
#RelatedProducts.product-list {
	margin:20px 0;
}
.product-detail .product-thumb {
	float:right;
	text-align:center;
	width:45%;
	max-width:600px;
	font-size:75%;
	color:#231f20;
	padding:0 0 15px 15px;
}
.product-detail .product-thumb img {
	width:100%;
	height:auto;
	max-width:610px;
	border:1px solid #231f20;
	display:block;
}
.product-detail .product-field {
	margin:3px 0;
}
.product-detail .product-field span {
	vertical-align:top;
	display:inline-block;
}
.product-detail .product-field .label {
	padding-right:5px;
	font-weight:bold;
}
.product-detail .product-field .value {
}
.product-detail .description {
	margin:0;
	padding:20px 0;
	font-size:90%;
}
.product-detail table.additional-data {
	margin:0;
	width:50%;
}
.product-detail table.additional-data caption {
	text-align:center;
	font-weight:bold;
}
.product-detail table.additional-data caption a.additional-data-details {
	text-decoration:none;
	font-size:85%;
	color:#231f20;
	font-weight:normal;
}
.product-detail table.additional-data td {
	font-size:90%;
	padding:5px;
}
.product-detail table.additional-data td.data-label {
	width:33%;
	text-align:right;
	font-weight:bold;
	background:#e0e0e0;
}
.product-detail table.additional-data td.data-value {
	width:66%;
	background:#efefef;
}

/* Product Detail - Quote Cart Form */
.product-cart h2 a {
	text-decoration:none;
	color:#231f20;
	border-bottom:1px solid #231f20;
}
.product-cart form p {
	margin:10px 0;
	font-size:85%;
}
.product-cart form p.cart-error {
	color:#c90000;
}
.product-cart div.cart-field {
	margin:10px 0;
}
.product-cart div.cart-field label,
.product-cart div.cart-field input[type='text'] {
	font-size:85%;
	vertical-align:middle;
}
.product-cart div.cart-field label {
	font-weight:bold;
	padding-right:5px;
	display:inline-block;
}
.product-cart div.cart-field input[type='text'] {
	width:50px;
}
.product-cart div.cart-field input[type='checkbox'] {
	vertical-align:middle;
}
.product-cart div.cart-field input[type='checkbox']+label {
	font-weight:normal;
	vertical-align:middle;
}

/* Product Detail - Related */
#RelatedProducts.product-list {
	clear:right;
	border-top:1px solid #231f20;
}
#RelatedProducts.product-list .product {
	width:100px;
}
#RelatedProducts.product-list .product img.thumb {
	max-width:65px;
}

/* Cart */
.cart {
	margin:20px 0;
	width:80%;
}
.cart .cart-header th {
	border-bottom:1px solid #231f20;
}
.cart .cart-buttons {
	text-align:center;
}
.cart .cart-buttons > * {
	margin:0 10px;
}
.cart .cart-row td {
	padding:0 15px;
	height:30px;
}
.cart .cart-row td a {
	color:#231f20;
}
.cart .cart-image {
	text-align:center;
}
.cart .cart-image img {
	width:auto;
	height:auto;
	max-height:100%;
}
.cart .cart-label {
	white-space:nowrap;
}
.cart .cart-unit {
	min-width:50%;
}
.cart .cart-quantity input[type='text'] {
	width:50px;
}
.cart .cart-empty {
	padding:10px;
	text-align:center;
}
.cart .cart-error {
	padding:5px;
	text-align:center;
	color:#c90000;
}

/* Checkout */
#Checkout fieldset {
	margin:0;
	border:0;
	padding:0;
}
#Checkout fieldset {
	border-top:1px solid #231f20;
}
#Checkout fieldset:first-child,
#Checkout fieldset:last-child {
	border-top:0;
}
#Checkout div.field {
	margin:4px 0;
}
#Checkout div.field:first-child {
	margin-top:10px;
}
#Checkout div.field:last-child {
	margin-bottom:10px;
}

#Checkout div.field label {
	width:30%;
	text-align:right;
	display:inline-block;
	vertical-align:top;
}
#Checkout div.field label:after {
	content:":";
}
#Checkout div.required label {
	font-weight:bold;
}
#Checkout div.required label:before {
	content:"*";
}
#Checkout div.field input[type='text'],
#Checkout div.field textarea {
	padding:3px;
	width:50%;
}
#Checkout div.field textarea {
	height:100px;
}

#Checkout div.buttons {
	text-align:center;
	margin:10px auto;
}
#Checkout div.buttons .button {
	margin:0 10px;
}
.checkout-error ul {
	list-style:none;
	margin:0;
	padding:0;
}
.checkout-error ul li {
	font-size:90%;
	padding-left:10px;
}
.checkout-mail-content {
	max-width:600px;
	margin:0 auto;
	border:1px solid #231f20;
}

/* Promotions */
.promotion {
	color:#000000;
	margin:15px 0;
	border-top:1px solid #231f20;
	position:relative;
}
.promotion:first-of-type {
	border-top:0;
}
.promotion a {
	text-decoration:none;
	color:#000000;
}
.promotion h2 {
	margin:0;
	padding:5px 0;
}
.promotion p {
	margin:0;
	padding:10px 0;
}
.promotion p:first-of-type {
	padding-top:0;
}
.promotion p:last-of-type {
	padding-bottom:0;
}
.promotion p.callout {
	text-decoration:underline;
}
.promotion img {
	width:auto;
	height:auto;
	max-width:249px;
	max-height:100%;
	float:left;
	margin:0 10px 15px 0;
}

p.notice {
  font-size:85%;
  text-align:center;
  padding:15px;
}

.main-padding { padding: 20px; } 
.main-padding p, .main-padding li { font-size: 16px; line-height: 26px; }
@media (min-width: 500px) {
	.main-padding { padding: 50px 120px 50px 40px; }
	}