/*
Theme Name: rollshieldmobile
Theme URI: http://underscores.me/
Author: Socius Marketing - JW
Author URI: http://sociusmarketing.com/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rollshieldmobile
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

rollshieldmobile is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
    ## Posts and pages
	## Asides
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: "Open Sans", sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
	font-family: "Open Sans", sans-serif
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #404040;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 15px 17px rgba(255, 255, 255, 0.8), inset 0 -5px 12px rgba(0, 0, 0, 0.02);
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	border-color: #aaa #bbb #bbb;
	box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.5), inset 0 2px 5px rgba(0, 0, 0, 0.15);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	color: #111;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
	padding: 3px;
}

textarea {
	padding-left: 3px;
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: royalblue;
}

a:visited {
	color: purple;
}

a:hover,
a:focus,
a:active {
	color: midnightblue;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	float: left;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 1.5em;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul ul li {

}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a {
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/* Search widget. */
.widget_search .search-submit {
	display: none;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.byline,
.updated:not(.published) {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Asides
--------------------------------------------------------------*/
.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
	display: none;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0 auto;
}

.wp-caption-text {
	text-align: center;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
## No Jacket Required
--------------------------------------------------------------*/

a {
   outline: 0;
}
.btn {
	background: #1d1a1b;
	margin: 0 auto;
	text-align: center;
	padding: 10px 15px;
	transition: background ease 0.6s;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 1px;
	border-radius: 0;
	color: #fff;
}
.btn:hover {
	background: #8d9698;
	color: #fff;
}
a.read_more_link {
  	color: #fff;
	text-decoration: none;
	text-align: center;
  	/* font-size: 15px; */
 	
  	padding: 13px 20px;
}
a[href^=tel]{
    color:inherit;
    text-decoration:none;
}
#additional, #areas, .bshide {display: none;}
#additional .sub-menu,
#areas .sub-menu {display: block;}

/*--------------------------------------------------------------
# Killer Bee Responsive Styles
--------------------------------------------------------------*/
.mm-menu {
	background-color: #3a3a3a;
}
.mm-menu > .mm-panel {
	padding: 134px 20px 0;
}
.mm-menu .mm-listview {
  	padding: 0;
}
.mm-listview, .mm-listview > li {
  	font-size: 14px;
	margin-left: -20px;
	padding-left: 20px;
}
.mm-listview a.mm-subopen:before {
  	content: inherit;
}
.menu-item-has-children.fa-play:before {
  	position: fixed;
  	right: 12px;
	top: 15px;
}
.mm-menu .mm-listview > li > a.mm-subopen:before {
  	border-color: #fff;
}
.mm-menu .mm-listview > li:after {
  	border-color: #fff;
}
.mm-listview > li:not(.mm-subtitle):not(.mm-label):not(.mm-search):not(.mm-noresults):after {
	margin-left: 0;
}
.mm-listview > li > a, .mm-listview > li > span {
	line-height: 20px;
}
.mm-listview > li, .mm-listview > li:after, .mm-listview > li .mm-next, .mm-listview > li .mm-next:before {
	border-color: #fff;
}
.mm-menu .mm-listview > li .mm-next:after, .mm-menu .mm-listview > li .mm-arrow:after {
    border-color: #fff;
}
.mm-panel.mm-hasnavbar .mm-navbar {
    font-size: 14px;
    text-transform: uppercase;
	padding-top: 134px;
}
.mm-navbar {
    border-color: #fff;
}
.mm-menu .mm-navbar a.mm-title {
	color: #fff;
	padding-left: 25px;
    margin-left: -25px;
}
.mm-listview > li > a {
	color: #fff;
}
.mm-menu .mm-navbar .mm-btn:before, .mm-menu .mm-navbar .mm-btn:after {
    border-color: rgba(0, 0, 0, 0.0);
}
mm-menu .menu-item-has-children a {
	font-family: 'Open Sans', sans-serif;
}
.mm-menu .mm-listview > li .mm-next:after, .mm-menu .mm-listview > li .mm-arrow:after {
	 content: "\f04b";
	 border-color: transparent;
	 -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
	 transform: none;
}
.mm-listview .mm-next + a, .mm-listview .mm-next + span {
    font-family: 'Open Sans', sans-serif;
}
.mm-menu > .mm-panel.mm-hasnavbar:before {
    content: '\f04b';
    display: block;
    height: 20px;
    position: relative;
    top: 102px;
    left: -283px;
    font-family: "Font Awesome";
    font: normal normal normal 14px/1 FontAwesome;
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    color: #fff;
}
#site-navigation .sub-menu {
	padding-top: 134px;
}
#site-navigation section {
	position: relative;
    z-index: 1000;
    height: 134px;
	background-color: #f20000;
	text-transform: uppercase;
	text-align: center;
}
#site-navigation section h4 {
	font-weight: 900;
	font-size: 18px;
	margin: 10px 0 0;
}
#site-navigation section p {
	font-size: 14px;
}
#site-navigation section img {
	width: 69px;
}
#site-navigation section a {
	color: #fff;
	display: block;
}
#header {
	background-color: #000;
	min-height: 126px;
	padding: 9px 8px 0;
}
#mmenu {
	width: 26px;
	float: right;
	clear:both;
}
#logo {
	clear: both;
	text-align: center;
	padding: 5px 20px 0;
}
ul#CTAs,
#tesimonials ul,
ul#serviceCallouts  {
	list-type: none;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
ul#CTAs {
	padding-top: 30px;
	padding-bottom: 30px;
}
.home ul#CTAs {
	padding-top: 0;
	padding-bottom: 0;
}
ul#serviceCallouts {
	padding-top: 20px;
}
#firstTrust {
	background-image: url(images/bg-color-trust.jpg);
	background-size: cover;
	min-height: 555px;
	max-height: 1110px;
	width: 100%;
	margin-bottom: 15px;
}
#firstTrustBadges {
	padding: 50px 33px 0;
}
.bx-wrapper .bx-viewport {
	background-color: transparent;
	border: none;
	box-shadow: none;
	text-align: center;
	color: #fff;
}
.bx-wrapper .bx-viewport li {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 23px;
	color: #fff;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 1);
	padding: 38px 35px 0;
	line-height: 30px;
}
li .review_comment {
	line-height: 27px;
}
#content h3 {
	font-family: 'Vollkorn', serif;
	font-size: 24px;
	color: #00ace4;
}
#content {
	margin: 0;
    padding: 0 35px;
}
.tax-product_categories #content {
    padding: 0;
}
.tax-product_categories #container {
	padding: 30px 35px 10px;
}
#content img {
	clear: both;
	float: none;
	display: block;
    margin-right: auto;
    margin-left: auto;
}
#content p,
#content li  {
	font-size: 14px;
	color: #646464;
}
#content ul, #content ol {
    margin: 0 0 1.5em 1em;
}
ul#serviceCallouts  li {
	padding: 12px 24px;
}
#moreBadges {
	text-align: center;
	padding: 0 50px;
}
#moreBadges h4 {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 28px;
	font-weight: 900;
	text-transform: uppercase;
	color: #00315f;
}
#asSeen {
	padding: 0 20px;
}
#asSeen h4 {
	padding-bottom: 60px
}
#madeInUSA {
	padding: 0 20px;
}
#madeInUSA h4 {
	padding: 80px 0 20px;
}
#assocAcred {
	padding: 0 10px 85px;
}
#assocAcred h4 {
	padding: 80px 0 55px;
	color: #bfbdbd;
}
#widget_sp_image-19 {
	display: none;
}
#footer {
	text-align: center;	
	background-color: #000;
	border-top: solid 5px #5b5852;
	padding: 20px 50px;
	font-family: 'Vollkorn', serif;
	font-size: 14px;
	color: #fff; 
}
#footer img {
	margin-bottom: 12px;
}
#footer p {
	margin-bottom: 0;
}
#footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.ngg-gallery-thumbnail-box {
    float: none !important;
    margin: 0 auto;
    text-align: center;
    clear: both;
    display: block;
    width: 100%;
}
.ngg-gallery-thumbnail img {
    margin: 4px auto !important;
}
.ngg-gallery-thumbnail {
    float: none !important;
    text-align: center;
    margin: 0 auto;
}
.entry-meta, .nav-links {
	display: none;
}
.page .interiorHeader {
	display: none;
}
.single-product .interiorHeader,
.single-product .tax-product_categories
 {
	display: block;
}
.interiorHeader {
	background-color: #f20000;
    color: #fff;
    border-top: solid 5px #9e0000;
    border-bottom: solid 5px #9e0000;
}
.interiorHeader h2 {
	font-size: 16px;
	text-transform: uppercase;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 700;
	margin-top: 10px;
	padding: 0 35px;
}
div.portfolio-item .portfolio-context {
    padding: 10px 0px 14px;
    text-align: center;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    margin-bottom: 20px;
}
.portfolio-item .portfolio-context {
	background-color: #262626;
}
.portfolio-item .portfolio-title {
	font-size: 16px;
    font-weight: bold;
    text-align: center;
}
.portfolio-item .portfolio-title a {
    color: #ff0101;
}