@charset "UTF-8";

/* ===== start html5 reset ===================================== */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	background: transparent;
	padding: 0;
	border: 0;
	outline: 0;
	margin: 0;
	font-size: 100%;
	vertical-align: baseline;
}

body {
	line-height: 1; 
}

article, aside, dialog, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block; 
}

nav ul {
	list-style: none;
}

blockquote, q {
	quotes: none; 
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

a {
	background: transparent;
	padding: 0;
	margin: 0;
	font-size: 100%;
	outline: none;
	vertical-align: baseline;
}

a img {
	border: 0; 
}

ins {
	background-color: #FF9FF9;
	color: #000000;
	text-decoration: none;
}

mark {
	background-color: #FF9FF9;
	color: #000000;
	font-style: italic;
	font-weight: bold;
}

del  {
	text-decoration: line-through; 
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted #000000;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {
	display: block;
	padding: 0;
	height: 1px;
	border: 0;
	border-top: 1px solid #CCCCCC;
	margin: 1em 0;
}

input, select {
	vertical-align: middle; 
}

/* ===== end reset - start minimal restyle ===================== */

a#skip, 
a#skip:hover, 
a#skip:visited  {
	position: absolute;
	top: -500px;
	left: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

a#skip:active, 
a#skip:focus {
	position: static;
	width: auto;
	height: auto;
} 

ol {
	list-style-type: decimal;
}

sup,
sub {
	position: relative;
	height: 0;
	font-size: smaller;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
}

sup {
	bottom: 1ex; 
}

sub {
	top: .5ex; 
}

address {
	font-style: normal; 
}

small {
	font-size: 10px; 
}

input,
select {
	vertical-align: middle; 
}

input[type="radio"] {
	vertical-align: text-bottom; 
}

input[type="checkbox"] {
	vertical-align: bottom; 
}

label, input[type=button], input[type=submit], button {
	cursor: pointer; 
}

.lte7 input[type="checkbox"] {
	vertical-align: baseline; 
}

.lte7 legend {
	margin: auto -.5em !important; 
}

.lte7 img {
	-ms-interpolation-mode: bicubic; 
}

/* ===== device ================== */

@media screen and (max-device-width: 480px) {

	html {
		-webkit-text-size-adjust: none;
		-ms-text-size-adjust: none;
	}

}

/* ===== alerts ==================================== */

.success {
	font-weight: bold;
	color: #090090;
}

.formfieldRedBold,
.error,
.required {
	font-weight: bold;
	color: #C00C00;
}

p.upgradeFlashAlert {
	position: absolute;
	z-index: 99;	
	top: 150px;
	width: 100%;
	text-align: center; 
	font-weight: bold; 
	font-size: 120%;
	color: #FFFFFF;
}

/* ===== layout ==================================== */

html,
body {
	background-color: #333131;
	padding: 0;
	margin: 0;
	font: normal 12px Arial, Helvetica, sans-serif;
	color: #444444;
	text-align: center;
}

#container {
	position: relative;
	background: transparent url('../images/container.jpg') repeat-y left top;
	padding: 0 15px 0 0;
	width: 1210px;
	margin: 0 auto;
	text-align: left;
}

#container1 {
	position: relative;
	height: 160px;
	background: #010101 url('../images/header.jpg') repeat-x left top;
	border: 1px solid #333333;
	border-width: 0 1px;
	overflow: hidden;
	color: #CCCCCC;
	padding: 0 25px;
}

#container_ftr {
	background: transparent url('../images/container_ftr.jpg') no-repeat left top;
	height: 30px;
	margin: 0 -15px;
}

/* ===== base ====================================== */

a {
	color: #0072BC;
	outline: none;
}

a:hover {
	color: #004A80; 
}

a.pdf {
	display: inline-block;
	background: transparent url('../images/icon_pdf.gif') no-repeat bottom right;
	padding: 0 20px 0 0;
	margin: 0 5px 0 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	text-rendering: optimizeLegibility;
	font-weight: normal;
	font-family: Georgia, "Times New Roman", Times, serif;
	color: #800800;
	margin: 0 0 .5em 0;
}

h1 {
	font-size: 22px;
	padding: 0 0 5px 0;
	border-bottom: solid 1px #E3D9CA;
}

h2 {
	font-weight: bold;
	font-size: 21px;
	color: #333333;
	text-transform: uppercase;
}

h2.rootLevel {
	background: transparent url('../images/hr.gif') repeat-x bottom left; 
	padding: 0 0 10px 0;
}

h4 {
	font-size: 16px;
}

h5 {
	font-size: 18px; 
}

h6 {
	font-size: 12px; 
}

address {
	font-style: normal;
}

blockquote { }

dd {
	margin-top: .5em;
	margin-bottom: 1em;
}

.hr {
	background: transparent url('../images/hr.gif') repeat-x left top;
	height: 1px;
	margin: .75em 0;
}

mark {
	background-color: #FF8FF8; 
}

p,
dl,
ol,
ul {
	margin-bottom: 1em; 
}

ul.list {
	list-style-type: disc;
	padding: 0 0 0 15px;
	margin: 0 0 20px 0;
}

dt {
	font-weight: bold; 
}

li,
dt {
	margin-bottom: .5em; 
}

object {
	position: relative;
	display: block;
}

/* ===== header ==================================== */

ul#branding {
	overflow: hidden;
}

ul#branding li {
	float: left;
}

ul#branding li#search {
	text-align: left;
	padding: 50px 0 0 0;
	width: 400px;
}

ul#branding li#last {
	float: right;
}

/* ===== nav ======================================= */

#nav {
	overflow: hidden;
}

#nav ul {
	border-top: 1px solid #3A3A3A;
	margin: 0;
	padding: 5px 0 0 0;
	list-style: none;
	font-size: 14px;
	overflow: hidden;
	text-align: center;
}

#nav ul li {
	display: inline;
	margin: 0 29px;
	text-align: center;	
}

#nav ul li#first {
	margin: 0 29px 0 0;
}

#nav ul li#last {
	margin: 0 0 0 29px;
}

#nav ul li a {
	font: normal normal 14px/1 Georgia, "Times New Roman", Times, serif;
	color: #FFFFFF;
	text-transform: uppercase;
	text-decoration: none;
}

#nav ul li a:hover {
	color: #999999;
}

#nav ul li a.on {
	color: #FF0000;
}

/* ===== form_search =============================== */

#form_search fieldset,
form.siteSpecific_search fieldset {
	display: block;
	font-size: 11px;
	margin: 0 0 13px;
	text-align: right;
}

form.siteSpecific_search fieldset {
	text-align: left;
	margin: 5px 0 15px 0;
}

#form_search fieldset label,
form.siteSpecific_search label {
	letter-spacing: 1px;
	margin-right: 8px;
	font-family: Georgia, "Times New Roman", Times, serif;
	color: #CCCCCC;
	text-transform: uppercase;
}

form.siteSpecific_search label {
	color: #800800;
}

#form_search fieldset input.textfield,
form.siteSpecific_search input.textfield {
	background-color: #CCCCCC;
	padding: 2px 5px 0;
	width: 143px;
	height: 16px;
	border: 1px solid #CCCCCC;
	font: normal 12px Arial, Helvetica, sans-serif;
	color: #000000;
	vertical-align: middle;
}

form.siteSpecific_search input.textfield {
	background-color: #FFFFFF;
}

#form_search fieldset a,
form.siteSpecific_search fieldset a {
	display: inline-block;
	background-color: #900;
	padding: 2px 5px 0;
	height: 16px;
	border: 1px solid #CCC;
	margin-left: -3px;
	font-family: 'Arial Narrow', Arial, Helvetica, sans-serif;
	color: #FFFFFF;
	text-decoration: none;
	vertical-align: middle;
}

#form_search fieldset a:hover,
form.siteSpecific_search fieldset a:hover {
	background-color: #C00C00; 
}

/* ===== breadcrumb ================================ */

ol#breadcrumb {
	display: block;
	background: transparent url('../images/hr.gif') repeat-x left top;
	padding: 10px 0 0 0;
	overflow: hidden;
	list-style: none;
	font-size: 14px;
	color: #C00C00;
}

ol#breadcrumb li {
	display: block;
	margin: 0 10px 0 0;
	float: left;
}

ol#breadcrumb li a {
	display: inline-block;
	background: transparent url('../images/icon_gtarrow.gif') no-repeat right center;
	padding: 0 15px 0 0;
	color: #999999;
}

ol#breadcrumb li a:hover {
	color: #FFFFFF; 
}

div.breadcrumbClear {
	display: block;
	background: transparent url('../images/hr.gif') repeat-x left top;
	height: 1px;
	margin: -5px 0 15px 0;
}

/* ===== content =================================== */

#content {
	background-color: #000000;
	position: relative;
	margin: 0 0 10px 0; 
	border: 1px solid #333333; 
	border-width: 0 1px 1px 1px;
	padding: 15px 23px 23px 23px;
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	-moz-border-radius-bottomRight: 30px;
	-moz-border-radius-bottomLeft: 30px;
	-webkit-border-bottom-right-radius: 30px;
	-webkit-border-bottom-left-radius: 30px;
}

#content .wrapper {
	position: relative;
	background-color: #FFFFFF;
	padding: 20px 30px;
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px;
	-moz-border-radius-bottomRight: 20px;
	-moz-border-radius-bottomLeft: 20px;
	-webkit-border-bottom-right-radius: 20px;
	-webkit-border-bottom-left-radius: 20px;
}

body#Home #content .wrapper {
	background-color: #660000;
	padding: 10px;
}

div.colA {
	width: 285px;
	position: absolute;
}

div.colB {
	width: 350px;
	position: relative;
	left: 315px;
	float: left;
}

div.colB p {
	line-height: 24px;
}

div.colC {
	width: 415px;
	height: 275px;
	background-color: #660000;
	padding: 10px;
	margin: -20px -30px 0 0;
	float: right;
	border-bottom-left-radius: 25px;
	-moz-border-radius-bottomLeft: 25px;
	-webkit-border-bottom-left-radius: 25px;
}

ul#rotator {
	position: relative;
	height: 330px;
	float: left;
	margin: 0 40px 0 0;
}

ul#rotator li {
	float: left;
	position: absolute;
	list-style: none;
}

ul#rotator li.show {
	z-index: 99;
}

img#homeAdCopy {
	float: right;
}

img.cornerCurvesGrayUpperLeft,
img.cornerCurvesGrayUpperRight {
	position: absolute;
	background: transparent url('../images/cornerCurvesGray.gif') no-repeat top left;
	z-index: 99;
}

img.cornerCurvesGrayUpperRight {
	background-position: 0 -34px;
	right: 0;
	top: 0;
}

ul#features {
	overflow: hidden;
}

ul#features li {
	float: left;
	width: 396px;
	margin: 0;
	position: relative;
}

ul#features li#central {
	margin: 0 11px;
}

ul#features li a {
	background: transparent url('../images/features/featureAds.jpg') no-repeat top left;
	width: 396px;
	height: 145px;
	overflow: hidden;
	display: block;
	text-indent: -9999px;
	border: 1px solid #333333;
}

ul#features li a#featureAd1:hover {
	background-position: 0 -145px;
}

ul#features li a#featureAd2 {
	background-position: -396px 0;
}

ul#features li a#featureAd2:hover {
	background-position: -396px -145px;
}

ul#features li a#featureAd3 {
	background-position: -792px 0;
}

ul#features li a#featureAd3:hover {
	background-position: -792px -145px;
}

a#MLBSResidentsBrochureCover,
a#cylinderTechnologyBrochureCover {
	float: left;
}

a#MLBSPropertyBrochureCover {
	float: right;
}

aside#ASTMbumpKeyResistance {
	margin: 0 0 0 330px; 
	width: 522px;
}

object#lockBumpVideo {
	margin: 50px 0 0 0;
}

/* ===== nav_interior ===== */

ul#nav_interior {
	position: relative;
	left: -30px;
	width: 315px;
	margin: 1em -30px 0 0;
}

ul#nav_interior li {
	display: block;
	background: none;
	padding: 0;
	height: 30px;
	overflow: hidden;
	margin: 0 0 5px;
}

ul#nav_interior a {
	display: block;
	background: #600600 url('../images/nav_designer.gif') no-repeat right center;
	padding: 5px 0 0 30px;
	width: 285px;
	height: 25px;
	font: normal 15px 'Arial Narrow', Arial, Helvetica, sans-serif;
	color: #FFFFFF;
	text-decoration: none;
	overflow: hidden;
}

ul#nav_interior a:hover,
ul#nav_interior li a.on {
	background-color: #A00A00;
	color: #FFFFFF;
}

ul#nav_interior a:hover {
	background-color: #7F0900;
}

.bc-wrapper {
	padding: 15px;
	background-color: #FFFFFF;
}

.colB .bc-wrapper {
	padding: 20px 0 0 0;
}

.bc-wrapper .download-bc-video {
	display: block;
	margin: 10px 0 0 0;
	clear: both;
	overflow: hidden;
	position: relative;
	width:500px;
	float: left;
	line-height: 10px;
}

.bc-wrapper .download-bc-video a {
    color: #FF0000;
    font-size: 14px;
	font-weight: bold;
	width: 148px;
	height: 26px; /* 40px - 10px padding */
	padding: 14px 0 0 0;	
	display: block;
	text-align: center;
	border: solid 1px #EBEBEB;
	float: left;
	background-color: #FFFFFF;
}

.bc-wrapper .download-bc-video p {
	font-size: 11px;
	width: 318px;
	height: 18px; /* 40px - 10px padding */
	float: left;
	padding: 7px 2px 15px 10px;	
	margin: 0;
	background-color:#EBEBEB;
	float: left;
	display: block;
	overflow: hidden;
	border: solid 1px #EBEBEB;
	border-left: 0px;
	line-height: normal;
}

.bc-wrapper .download-bc-video p img {
	background: transparent url('../images/bg-right-click.png') no-repeat center;
	height: 27px;
	width: 20px;
	float: left;
	margin: 0 7px 0 0;
}


/* ======= site_map ======= */
div#siteMap {
	overflow: hidden;
}

div#siteMap dl {
	width: 170px;
	float: left;
	margin: 0 10px 0 0;
}

div#siteMap dl dt,
div#siteMap dl dd {
	margin: 0 0 10px 0;
}

div#siteMap dl dt,
div#siteMap dl dt a {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 16px;
	color: #800800;
	font-weight: normal;
}

div#siteMap dl dt a:hover {
	color: #C00C00;
}

/* ===== tables ==================================== */

table.super {
	font: normal 11px Arial, Helvetica, sans-serif; 
}

table.super caption,
table.super th,
table.super td {
	padding: .5em 1em;
	border: 1px solid #CCCCCC;
}

table.super caption {
	font-weight: bold;
	border-bottom: none;
}

table.super td {
	background-color: #FFFFFF; 
}

table.super caption,
table.super th,
table.super tr.even td {
	background-color: #EEEEEE; 
}

table.super thead th,
table.super tfoot td,
table.super tr.even th {
	background-color: #DDDDDD; 
}

/* ===== forms ===================================== */

fieldset.super legend {
	color: #000000; 
}

fieldset.super li {
	margin: 1em auto; 
}

fieldset.super li li {
	margin: .5em auto; 
}

fieldset.super label {
	display: block;
	color: #444444;
}

fieldset.super li li label {
	display: inline;
	width: auto;
	color: #444444;
}

fieldset.super .textfield,
fieldset.super .textarea,
fieldset.super .select,
fieldset.super .multiselect {
	border: 1px solid #999999;
	font: normal 12px Arial, Helvetica, sans-serif;
	color: #444444;
}

fieldset.super .textfield:focus,
fieldset.super .textarea:focus,
fieldset.super .select:focus,
fieldset.super .multiselect:focus {
	border-color: #000000; 
	color: #000000; 
}

fieldset.super .multiselect,
fieldset.super .textarea {
	vertical-align: top; 
}

fieldset.super .textfield {
	width: 200px; 
}

fieldset.super .textarea {
	width: 400px;
	height: 100px;
}

fieldset.super .select,
fieldset.super .multiselect {
	width: 202px; 
}

fieldset.super .radio,
fieldset.super .checkbox {
	margin-left: 0; 
}

/* ===== footer ==================================== */

#footer {
	background-color: #1B1A1A;
	padding: 20px;
	margin: 10px 0 0 0;
	border: 1px solid #333333;
	font-size: 10px;
	color: #999999;
	overflow: hidden;
	clear: both;
}

#footer a {
	color: #999999;
	text-decoration: none;
}

#footer a:hover {
	color: #FFFFFF;
	text-decoration: underline;
}

#footer dl#colArchitect,
#footer dl#colSecurityProfessionals,
#footer dl#colPropertyManagement,
#footer dl#colLocksmiths,
#footer dl#colGovernment,
#footer dl#colBumpStop {
	width: 180px;
	float: left;
	padding: 0;
	margin: 0 10px 0 0;
}

#footer dl dt,
#footer dl dd,
#footer ul li {
	margin: 0 0 5px 0;
}

#footer dl dt,
#footer dl dt a {
	color: #CCCCCC;
}

#footer dl dt {
	text-transform: uppercase; 
}

#footer dl dt,
#footer div#colCopyrightConnect p {
	font-weight: bold;
	font-size: 10px;
}

#footer div#colCopyrightConnect {
	clear: both;
	background: transparent url('../images/hr.gif') repeat-x left top;
	padding: 10px 0 0 0;
	margin: 20px 0 0 0;
}

#footer div#colCopyrightConnect a {
	text-decoration: underline; 
}

#footer div#colCopyrightConnect p {
	margin: 0 0 8px 0;
	color: #FFFFFF;
}

#footer small {
	font-size: 10px; 
}

#footer div#colCopyrightConnect ul {
	margin: 0 0 10px 0;
}

#footer div#colCopyrightConnect ul#socialLinks {
	margin: 0;
}

#footer div#colCopyrightConnect ul li {
	display: inline;
	padding: 0 5px 0 0;
	white-space: nowrap;
}

#footer div#colCopyrightConnect ul#legalLinks li {
	padding: 0 10px 0 0;
}

#footer div#colCopyrightConnect ul li.icon_facebook a {
	text-decoration: none;
	margin: 0 5px 0 0;
}

#footer div#colCopyrightConnect ul li.icon_facebook img {
	vertical-align: middle;
	margin: 0 0 0 3px;
}

/* ===== share ===================================== */

a.btn_print {
	background: url('http://s7.addthis.com/static/r07/widget19.png') no-repeat 0 -96px;
	width: 16px;
	height: 16px;
	display: inline-block;
}

a.addthis_button {
	position: relative;
	top: 6px;
}

/* ===== default =================================== */

.nowrap {
	white-space: nowrap; 
}

.clear {
	clear: both; 
}

ul,
form,
fieldset,
legend,
fieldset ol,
fieldset.super ol {
	padding: 0;
	border: none;
	margin: 0;
	list-style: none;
}

p.description,
a.btn_print {
	text-indent: -9999px; 
}

.hide,
.print,
.hr hr,
ul#printLogos,
p.description {
	display: none; 
}

/* ===== ie overrides ============================== */

.ie7 #header {
	top: -42px;
}

.ie7 div.colA {
	left: 30px;
}

.ie7 div.colC {
	height: 290px;
}

.ie7 img.cornerCurvesGrayUpperRight {
	right: -2px;
}

/* START IE 7 & IE 8 compliant approach for curved images */

/*turn off mark-up for non IE7 and IE8 browsers */
img.cornerCurvesLowerLeft,
img.cornerCurvesLowerRight,
img.cornerCurvesBlackRedLowerLeft,
img.cornerCurvesBlackRedLowerRight,
img.cornerCurvesWhiteLowerLeft,
img.cornerCurvesWhiteLowerRight,
img.cornerCurvesRedLowerLeft {
	display: none;
}

/*curves for the black color field */
.lte8 img.cornerCurvesLowerLeft,
.lte8 img.cornerCurvesLowerRight {
	display: block;
	position: relative;
	background: transparent url('../images/cornerCurves.gif') no-repeat top left;
	z-index: 99;
}

.lte8 img.cornerCurvesLowerLeft  {
	bottom: -24px; 
	left: -24px;
	float: left;
}

.lte8 img.cornerCurvesLowerRight {
	background-position: bottom left;
	bottom: -24px; 
	right: -24px;
	float: right;
}

.lte8 img.cornerCurvesLowerLeftHome,
.lte8 img.cornerCurvesLowerRightHome {
	bottom: 4px;
}

/*curves for the black/red color field */
.lte8 img.cornerCurvesBlackRedLowerLeft,
.lte8 img.cornerCurvesBlackRedLowerRight {
	display: block;
	position: relative;
	background: transparent url('../images/cornerCurvesBlackRed.gif') no-repeat top left;
	z-index: 99;
	bottom: 7px; 
	left: -10px;
	float: left;
}

.lte8 img.cornerCurvesBlackRedLowerRight  {
	background-position: bottom left;
	float: right;
	left: 10px;
}

/*curves for the white color field */
.lte8 img.cornerCurvesWhiteLowerLeft,
.lte8 img.cornerCurvesWhiteLowerRight {
	display: block;
	position: relative;
	background: transparent url('../images/cornerCurvesWhite.gif') no-repeat top left;
	z-index: 99;
}

.lte8 img.cornerCurvesWhiteLowerLeft {
	bottom: -20px; 
	left: -30px;
	float: left;
}

.lte8 img.cornerCurvesWhiteLowerRight {
	background-position: bottom left;
	bottom: -20px; 
	right: -30px;
	float: right;
}

/*curves for the red color field */
.lte8 img.cornerCurvesRedLowerLeft {
	display: block;
	position: relative;
	background: transparent url('../images/cornerCurvesRed.gif') no-repeat top left;
	z-index: 99;
	bottom: 0; 
	left: -10px;
	float: left;
	bottom: 0;
}

.ie8 img.cornerCurvesRedLowerLeft {
	top: -15px;
}
input.error {
	border: 2px solid red;
}
/* END IE 7 & IE 8 compliant approach for curved images */
