/*==========================================================
		GENERAL STYLES
==========================================================*/
html {
	overflow-x: hidden;
	scroll-behavior: smooth;
}
body, html {
	line-height: 100%;
	letter-spacing: 0;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	font-family: 'Open Sans', sans-serif !important;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Open Sans', sans-serif !important;
	margin: 0; 
	padding: 0;
	margin-top: 0 !important;
}
h1 {
}
h1.page_title, h1.page-title {
	color: #333;
	font-size: 40px;
	font-weight: 600;
	text-transform: uppercase;
	text-align: center;
}
h3 {
	font-weight: 800 !important;
}

h4 {
	font-size: 29px !important;
	color: #bc0f15 !important;
}
.post-meta {
	font-size: 14px !important;
	color: #6a6a6a !important;
}
.post-summary {
	font-size: 16px !important;
	color: #111 !important;	
	line-height: 1.1em;
}

p.post-summary {
	font-size: 16px !important;
	color: #111 !important;	
	line-height: 1.1em;
}
a.post-link {
	font-size: 18px !important;
}
p.page_sub_title {
	color: #333;
	font-size: 20px;	
	font-style: italic;
	margin-bottom: 5px !important;
}
.heading-text-center {
	display: block;
	width: 100%;
	padding: 0 25px;
}
h2 {
}
h2.section-title {
	font-size: 30px;
	color: #111111;
	text-align: center !important;
	font-weight: 800;
	margin-bottom: 20px !important;
}
.feature-content {
	padding: 30px 40px;
	font-size: 18px;
}
.feature-content h2 {
	font-size: 24px;
	color: #111111;
	font-weight: 800;
	margin-bottom: 20px;
}
.newsletter {
	padding: 20px;
	font-size: 16px;
	background: #fff;
}
.newsletter p.emphasize {
	font-size: 18px;
}
.newsletter h2 {
	font-size: 24px;
	color: #111111;
	font-weight: 800;
	margin-bottom: 20px;
}
p {
	font-size: 18px;
	margin-bottom: 1.5em !important;
	line-height: 1.5em;
}
p.homepage-date {
	font-size: 14px;
	color: #575757;
	line-height: 1.2em;
}
h4.homepage-title {
	font-size: 18px;
	color: #222222;
	font-weight: 800;
	margin-top: 5px !important;
	margin-bottom: 5px;
}
h4.homepage-title a {
	color: #222222;
}
h4.homepage-title a:hover {
	color: #127cc5;
}
.homepage-events, .homepage-events p {
	font-size: 16px;
}
.cropped {
	position: relative;
	background-position: center 15%;
	background-size: cover;
	min-height: 100px;
}
.blank a {
	display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.no-margin {
	margin: 0 !important;
}
ul, ol, dl {
	margin: 0 0 15px 30px;
	padding: 0;
}
a, span, i, strong, img {
	display: inline-block;
}
img {
	object-fit: cover;
}
a, a:hover, a:focus {
	outline: 0;
	text-decoration: none !important;
}
a {
	color: #bc0f15 !important;
	outline: none !important;
}
button:active, button:focus {
  outline: none !important;
  border: none;
  -moz-outline-style: none !important;
}
a:visited {
	color: #bc0f15;
	opacity: 1;
	outline: none !important;	
}
a:hover, a:focus {
	color: #4b1818 !important;
	opacity: .7;
	outline: 0;
}

a, .tile, .intro-block, a i, input, textarea, .ui-state-hover, .ui-state-active, .carousel-control-prev-icon, .carousel-control-next-icon, 
.ui-menu .ui-menu-item, button, button.button, #scroll_down  img, #sort_filters li, a.down_arrow, a img, .business-sidebar table tr {
	-webkit-transition: all 150ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	-moz-transition: all 150ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	-ms-transition: all 150ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	-o-transition: all 150ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	transition: all 150ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
}
.featured-100, .featured-50, .featured-100 .feature-overlay, .featured-50 .feature-overlay {
	-webkit-transition: all 300ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	-moz-transition: all 300ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	-ms-transition: all 300ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	-o-transition: all 300ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
	transition: all 300ms cubic-bezier(0.420, 0.000, 0.580, 1.000);
}
.full-screen {
    min-height: 100%;
    height: 100%;
}
.form-control,
.form-control:focus {
	box-shadow: none;
	outline: none;
	border-color: #e6e6e6;
	border-radius: 0;
}
button:focus,
.btn:focus,
.btn:active,
.btn:focus, 
.btn:active:focus, 
.btn.active:focus, 
.btn.focus, 
.btn:active.focus,
.btn.active.focus {
	outline: 0;
	box-shadow: none;
}
.btn:hover {
	opacity: .8;
}
.table {
	margin-bottom: 0;
}
select:focus,
input:focus {
	outline: 0;
}
.inline-block {
	display: inline-block;
}
.block {
	display: block;
}

.form-group {
	margin-bottom: 20px;
}
.section-padding {
	padding: 120px 0;
}
.section-padding-small {
	padding: 20px 0;
}
.extra-padding {
	height: 60px;
}
.extra-padding-small {
	height: 30px;
}
.sticky-menu-padding {
	height: 89px;
}
p.small-highlight {
	line-height: 1.1em;
	padding: 0 15px;
	margin-left: 10px;
	border-left: 3px solid #ededed;
}
.section-top-padding {
	padding-top: 120px;
}
.p-top-10 {
	padding-top: 10px;
}
.p-top-15 {
	padding-top: 15px;
}
.p-top-20 {
	padding-top: 20px;
}
.m-top-0 {
	margin-top: 0px;
}
.m-top-10 {
	margin-top: 10px;
}
.m-top-15 {
	margin-top: 15px;
}
.m-top-18 {
	margin-top: 18px;
}
.m-top-20 {
	margin-top: 20px;
}
.m-top-30 {
	margin-top: 30px;
}
.m-top-40 {
	margin-top: 40px;
}
.m-top-50 {
	margin-top: 50px;
}
.m-top-57 {
	margin-top: 57px;
}
.m-top-60 {
	margin-top: 60px;
}
.m-top-75 {
	margin-top: 75px;
}
.m-top-70 {
	margin-top: 70px;
}
.m-top-80 {
	margin-top: 80px;
}
.m-top-90 {
	margin-top: 90px;
}
.m-top-100 {
	margin-top: 100px;
}
.m-top-110 {
	margin-top: 110px;
}
.m-top-120 {
	margin-top: 120px;
}
.m-top-130 {
	margin-top: 130px;
}
.m-bottom-0 {
	margin-bottom: 0px;
}
.m-bottom-10 {
	margin-bottom: 10px;
}
.m-bottom-20 {
	margin-bottom: 20px;
}
.m-bottom-30 {
	margin-bottom: 30px;
}
.m-bottom-80 {
	margin-bottom: 80px;
}
.m-bottom-90 {
	margin-bottom: 90px;
}
.m-bottom-100 {
	margin-bottom: 100px;
}
.m-bottom-110 {
	margin-bottom: 110px;
}
.m-bottom-115 {
	margin-bottom: 115px;
}
.m-bottom-120 {
	margin-bottom: 120px;
}
.m-bottom-60 {
	margin-bottom: 60px;
}
.m-bottom-50 {
	margin-bottom: 50px;
}
.m-bottom-40 {
	margin-bottom: 40px;
}
.m-bottom-30 {
	margin-bottom: 30px;
}
.m-bottom-20 {
	margin-bottom: 20px;
}
.m-bottom-10 {
	margin-bottom: 10px;
}
.p-bottom-0 {
	padding-bottom: 0 !important;
}
.pos-relative {
	position: relative;
}
.pos-static {
	position: static;
}
.border-bottom {
	border-bottom: 1px solid #e1e1e1;
}
.block-wrapper {
	display: inline-block;
	width: 100%;
}
.form-control {
	padding: 8px 12px;
}
.heading-text-center {
	text-align: center;
}
.heading-text-left {
	text-align: left;
}
.section-title {
	color: #152641;
	text-align: left !important;
	margin-bottom: 10px !important;
}
.section-sub-title {
	font-size: 16px;
	color: #646464;
	line-height: 24px;
	font-weight: 300;
	max-width: 515px;
	margin-top: 25px;
	margin-bottom: 10px;
}
.heading-text-center .section-sub-title {
	margin-left: auto;
	margin-right: auto;
}
.loading {
	color: #fff;
	font-weight: bold;
	font-size: 1.25em;
}
.errortext {
	display: none;
	width: 100%;
	color: #c8202b;
	font-size: 1.25em;
}
.sub-desc {
	font-size: 18px;
	font-weight: 100;
	color: #3f3f3f;
	line-height: 36px;
}
.sub-desc-main {
	font-size: 18px !important;
	font-weight: 100 !important;
	color: #3f3f3f !important;
	line-height: 36px !important;
}
.bg-white {
	background: #fff;
}
.bg-dark {
	background: #111111;
}
.bg-style {
	background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	background-color: rgba(0, 0, 0, 0.8);
}
.wpcf7-form input, .wpcf7-form textarea, .wpcf7-form-control-wrap {
	width: 100% !important;
}
.wpcf7-form input[type="submit"] {
	width: auto !important;
	border: none !important;
}
.grecaptcha-badge{
	visibility: collapse !important;
}
.g-recaptcha {
   margin: 15px auto !important;
   width: auto !important;
   height: auto !important;
   text-align: -webkit-center;
   text-align: -moz-center;
   text-align: -o-center;
   text-align: -ms-center;
}
p.protected {
	font-size: .8em !important;
	color: #888;
}
p.protected a {
	color: #888;	
}
p.protected a:hover {
	color: #1578ac;	
}
p.emphasize {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.5em;	
}
.submit-btn .btn {
	margin-top: 5px !important;
}
.center {
	text-align: center;
}
.left {
	text-align: left;
}
.right {
	text-align: right;
}
.force-center {
	text-align: center !important;
}
.force-left {
	text-align: left !important;
}
.force-right {
	text-align: right !important;
}
.show_hide {
    display: none;
}
.blue-link {
	color: #001d75 !important;
}
.blue-link:hover {
	color: #333 !important;
}

.white a {
	color: #fff !important;
	opacity: 1;
}
.white a:hover {
	color: #fff !important;
	opacity: .78;
}
.underline {
	text-decoration: underline !important;
}
.uppercase {
	text-transform: uppercase;
}
.red {
	color: #bc0f15 !important;
}

/* FORMS */
span.selection {
	width: 100%;
}
.select2-container--default .select2-selection--single {
	background: transparent !important;
	border: none !important;
}
.select2-selection__arrow {
	top: 10px !important;
	right: 10px !important;
}
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="date"], select, textarea, span.select2-selection__rendered {
	width: 100%;
	padding: 8px 20px;
	border: 1px solid #ccc;
	color: #111111 !important;
	font-size: 18px;
	border-radius: 3px;
	background: #fff;
}
input[type="text"]:hover, input[type="email"]:hover, input[type="password"]:hover, input[type="tel"]:hover, input[type="number"]:hover, input[type="date"]:hover, select:hover, textarea:hover {
	border: 1px solid #ccc;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="tel"]:focus, input[type="number"]:focus, input[type="date"]:focus, select:focus, textarea:focus {
	border: 1px solid #bc0f15;
	background: #fff;
	outline: none; /* Remove blue highlight box */
}
input[type="number"].qty {
	min-width: 100px !important;
}
textarea {
	border: 1px solid #ccc;
	color: #111111 !important;
	font-size: 18px !important;
	height: 150px;
	outline: none; /* Remove blue highlight box */
}
input[type="text"].grey, input[type="email"].grey, input[type="tel"].grey, input[type="date"].grey, textarea.grey {
	background: #e0e0e0;
}
input[type="text"].grey:focus, input[type="email"].grey:focus, input[type="tel"].grey:focus, input[type="date"].grey:focus, textarea.grey:focus {
	background: #fff;
}

input#coupon_code {
	min-width: 300px;
}
.wpcf7-form div.row {
	padding: 0 0 15px !important;
}
.no-pad {
	padding: 0 !important;
}
.smile i {
	padding-left: 8px;
}
hr.shadow {
	background: transparent url(../img/backgrounds/sep-shadow.png) no-repeat center center;
	background-size: 80% 22px;
	height: 22px;
	border: none !important;
	box-shadow: none !important;
	margin: 35px 0 20px;
}
section.related, section.upsells {
	background: transparent url(../img/backgrounds/sep-shadow.png) no-repeat center top;
	background-size: 80% 22px;
	padding-top: 40px;
	clear: both !important;
}
.body_container .container-fluid, .body_container .container {
	padding-top: 40px;
	padding-bottom: 40px;
}
#sort_filters {
	width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
#sort_filters {
	padding: 0;
	margin: 0;
}
#sort_filters ul {
	display: table;
	padding: 0;
	margin: 0;	
}
#sort_filters li {
    display: inline;
    margin: 0 !important;
    padding: 25px 40px;
    font-size: 14px;
    cursor: pointer;
    color: #428bcd;
	text-align: center;
	text-transform: uppercase;
}
#sort_filters li .icon {
	display: block;
	width: 100%;
	padding-bottom: 10px;
	text-align: center;	
}
#sort_filters li:hover, #sort_filters li.mixitup-control-active {
	color: #990000;
}
#sort_filters li.mixitup-control-active {
	color: #990000 !important;
}

/*==========================================================
		COLOR OVERRIDES
==========================================================*/
.blue {
	color: #26a9e0;
}
.dark-blue{
	color: #142834;
}
.grey {
	color: #6d6e71;
}
.light-grey {
	color: #ccc;
}
.white {
	color: #fff;
}

/*==========================================================
		FONT SIZE OVERRIDES
==========================================================*/
.fs12 { font-size: 12px !important; }
.fs13 { font-size: 13px !important; }
.fs14 { font-size: 14px !important; }
.fs15 { font-size: 15px !important; }
.fs16 { font-size: 16px !important; }
.fs17 { font-size: 17px !important; }
.fs18 { font-size: 18px !important; }
.fs19 { font-size: 19px !important; }
.fs20 { font-size: 20px !important; }
.fs21 { font-size: 21px !important; }
.fs22 { font-size: 22px !important; }
.fs23 { font-size: 23px !important; }
.fs24 { font-size: 24px !important; }
.fs25 { font-size: 25px !important; }
.fs160 { font-size: 160px !important; }

/*==========================================================
		GOOGLE MAPS
==========================================================*/
.acf-map {
	width: 100%;
	height: 400px;
	border: none;
	margin: 0;
}
/* fixes potential theme css conflict */
.acf-map img {
   max-width: inherit !important;
}
.acf-map span.title {
	font-weight: 600;
	font-size: 20px !important;
}

/*==========================================================
		Navigation Styles
==========================================================*/
header#header-new {
	background: #fff;
	padding: 0;
	position: relative;
	min-height: 130px;
}
.header-socket {
	height: 35px;
	width: 100%;
	background-image:
		linear-gradient(
		  to right, 
		  #bc0f15,
		  #bc0f15 50%,
		  #062f81 50%
		);
}
.logo-bg {
	position: absolute;
	top: -35px;
	left: 0px;
	width: 160px;
	height: 40px;
	background: transparent url(../img/logos/logo-background.png) no-repeat top left;
	background-size: 160px auto;
}
.main-logo {
	position: relative;
	width: 100%;
	max-width: 130px !important;
	margin-top: 10px;
	z-index: 999;
}
.main-logo:hover {
		z-index: 999;
}
.header-socket .col-12 {
	background-color: #062f81;
	background-position: top left;
	background-repeat: no-repeat;
	background-size: 150px auto;
	height: 100%;
	background-image:
		linear-gradient(
		  to right, 
		  #bc0f15,
		  #bc0f15 15px,
		  #062f81 100%
		);
}
.header_social {
	font-size: 23px;
}
.header-socket a {
	color: #fff !important;
	opacity: 1;
}
.header-socket a:hover {
	color: #fff !important;
	opacity: .75;
}

header .container {
	max-width: 1285px !important;
	width: 100%;
}
.navbar-home {
	display: none;
}
#logo a {
	opacity: 1;
}
#logo a:hover {
	opacity: .7;
}
/*.facebook_icon {
	display: block;
	width: 100%;
	text-align: right !important;
}*/
.facebook_icon a {
	font-size: 20px;
	color: #fff;
	opacity: 1;
}
.facebook_icon a:hover i {
	color: #fff;
	opacity: .8;
}
.facebook_icon a i {
	font-size: 24px;
}
.navbar-collapse {
	display: block;
	position: relative;
	float: right !important;
	padding-right: 0 !important;
	margin-top: 15px;
	z-index: 998;
}

nav.navbar-default {
	border: none !important;
}
header .navbar-default .navbar-toggle {
	position: absolute;
	right: 0px;
	top: -85px;
	border-color: transparent;
	border: 0;
	border-radius: 2px;
	margin: 0;
	padding: 25px 15px 18px;
}
header .navbar-default .navbar-toggle .icon-bar {
	width: 30px;
	height: 3px;
}
header .navbar-default .navbar-toggle:hover,
header .navbar-default .navbar-toggle:focus {
	background: transparent !important;
}
header .navbar-default .navbar-toggle .icon-bar {
	background: #111111;
}
header .navbar {
	border-radius: 0;
	margin-bottom: 0;
}
.navbar {
	display: block !important; /* 'flex' to center */
}
.menu-container {
	position: relative;
	display: block;
	padding-top: 10px;
}
.nav-logo {
	position: absolute;
	font-weight: 700;
	font-size: 34px;
	margin: 0 auto;
	top: -37px; left: 15px;
	z-index: 999;
	max-width: 150px;
}
.nav-logo-mobile {
	display: none;
}
.navbar {
	padding: 0 !important;
	margin: 0 !important;
	text-align: right;
}
.navbar-nav {
    float: none;
    margin: 0 auto;
    display: block;
    text-align: right;
}
.navbar-nav > li {
    display: inline-block;
    float: none;
}
.navbar-default {
	border: none !important;
	box-shadow: none !important;
}
.navbar-default .navbar-nav > li > a {
	color: #222;
	font-family: 'Open Sans', sans-serif !important;
	font-size: 20px;
	font-weight: 500;
	padding: 10px 15px !important;
	margin: 0 6px !important;
	position: relative;
	text-transform: uppercase;
}
.navbar-default .navbar-nav li#menu-item-1165 a {
	padding-right: 0 !important;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
	color: #bc0f15 !important;
	background: transparent !important;
}
.navbar-default .navbar-nav > .active > a::before, .navbar-default .navbar-nav > .active > a:hover::before, .navbar-default .navbar-nav > .active > a:focus::before {
	visibility: visible;
	transform: scaleX(.9);
}
.navbar-default .navbar-nav li > .active > a, .navbar-default .navbar-nav li > .active > a:hover, .navbar-default .navbar-nav li > .active > a:focus {
    color: #bc0f15 !important;
	background: transparent !important;
}
.navbar-default .navbar-nav li a {
	font-size: 18px;
	color: #222 !important;
}
.dropdown-toggle::after {
	border-top: .1em solid;
	border-right: .1em solid transparent;
	border-bottom: 0;
	border-left: .1em solid transparent;
}
.navbar-default .navbar-nav li a:hover {
	color: #062f81 !important;
}
.navbar-default .navbar-nav li ul li a {
	padding: 15px 10px;
}
.navbar-default .navbar-nav li ul li a:hover, .navbar-default .navbar-nav li ul li a:focus {
	background: #111111 !important;
	color: #fff !important;
}
.navbar-default .navbar-nav li ul li.current_page_item {
	background: #062f81;
}
.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
	background: #111111 !important;
}
.dropdown-menu {
	border-radius: 0px !important;
}
.navbar-default ul li ul {
    background: #062f81 !important;
	border: none !important;
	box-shadow: none !important;
    min-width: 17em;
    *width: 17em;
	text-align: left;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: none !important;
}
.navbar-default .dropdown-menu li a {
	color: #fff !important;
}
.navbar-default ul li a {
    font-size: 12px;
    padding: 15px;
    font-weight: 400;
	text-align: left;
}

/* MENU SPACER */
.menu-spacer a {
	pointer-events: none !important;
	width: 261px;
	opacity: 0 !important;
}

/* SUBMENU COLUMNS */
.navbar-default .navbar-nav ul li a {
	padding: 10px;
	font-size: 12px;
}
.menu-header {
	pointer-events: none;
	cursor: default;
	background: #182e3b !important;
	font-size: 22px !important;
	font-weight: bold !important;
	text-transform: uppercase;
}

@media(min-width: 768px){
	.navbar-collapse {
		display: inline-block;
		float: right;
		padding-right: 0 !important;
		margin-top: 15px;
	}
	.dropdown:hover .dropdown-menu {
		display: block !important;
	}
	.navbar-default .navbar-nav ul li a {
		padding: 40px;
	}	
}
@media(min-width: 992px){
	.navbar-collapse {
		display: block;
		float: none;
		padding-right: 0 !important;
		margin-top: 15px;
	}
}
@media(min-width: 1200px){
	.navbar-collapse {
		display: block;
		float: none;
		padding-right: 0 !important;
		margin-top: 15px;
	}
}

/* Hamburger */
.hamburger {
	padding: 15px 15px;
	display: inline-block;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: 0.15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 50% 0 0 0;
	overflow: visible;
}
.hamburger:hover {
	opacity: 0.8;
}
.hamburger-box {
	width: 35px;
	height: 24px;
	display: inline-block;
	position: relative;
}
.hamburger-inner {
	display: block;
	top: 55%;
	margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 35px;
	height: 4px;
	background-color: #111111;
	border-radius: 4px;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.15s;
	transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block;
}
.hamburger-inner::before {
	top: -10px;
}
.hamburger-inner::after {
	bottom: -10px;
}
/* Collapse */
.hamburger--collapse .hamburger-inner {
	top: auto;
	bottom: 0;
	transition-duration: 0.13s;
	transition-delay: 0.13s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
	top: -20px;
	transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
	transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse.is-active .hamburger-inner {
	transform: translate3d(0, -10px, 0) rotate(-45deg);
	transition-delay: 0.22s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
	top: 0;
	opacity: 0;
	transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
	top: 0;
	transform: rotate(-90deg);
	transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
/* Minus */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
	transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}
.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
	opacity: 0;
	transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}
.hamburger--minus.is-active .hamburger-inner::before {
	top: 0;
}
.hamburger--minus.is-active .hamburger-inner::after {
	bottom: 0;
}
/* Spin */
.hamburger--spin .hamburger-inner {
	transition-duration: 0.22s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
	transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
	transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin.is-active .hamburger-inner {
	transform: rotate(225deg);
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
	top: 0;
	opacity: 0;
	transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}
/*==========================================================
		BODY 
==========================================================*/
.boxed_layout {
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
	background: #fff;
}
.full_width {
	width: 100%;
	margin: 0 auto;
	background: #fff;
}
.body_container {
	background-size: 100% 12px;
}
.body_container a {
	color: #bc0f15;
}
.body_container a:hover {
	color: #e48645;
}
a.cta-button {
	background: #000 !important;
	padding: 10px 40px;
	border-radius: 3px !important;
	font-size: 18px !important;
	font-weight: 400;
	color: #fff !important;
	text-transform: uppercase;
	opacity: 1;
}
a.cta-button:hover {
	background: #7d7d7d !important;
	color: #fff !important;
	opacity: 1;
}
a.button, input[type="submit"], button, .button, .product_type_donation, .add_to_cart_button  {
	background: #062f81 !important;
	padding: 5px 30px 7px;
	border-radius: 30px !important;
	font-size: 14px !important;
	font-weight: 600;
	color: #fff !important;
}
a.button:hover, input[type="submit"]:hover, button:hover {
	background: #7d7d7d !important;
	color: #fff !important;
}
button.hamburger {
	background: transparent !important;
}
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
	background: #bc0f15 !important;
	padding: 10px 20px 12px;
	border-radius: 30px !important;
	font-size: 16px !important;
	font-weight: 600;
	text-transform: lowercase !important;
	color: #fff !important;
	border: 1px solid #bc0f15 !important;
}
.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover {
	background: transparent !important;
	color: #bc0f15 !important;
	border: 1px solid #bc0f15 !important;
}
ul.wc-tabs, .product_meta {
	display: none !important;
}
.woocommerce ul.products li.product a img {
	max-height: 300px;
}

#tab-description h2:first-child { display: none !important; }

.woocommerce-billing-fields .form-row, .woocommerce-shipping-fields .form-row,.woocommerce form .form-row {
	display: block;
}
.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
	max-width: 50%; /* unset */
}
.woocommerce .col-1, .woocommerce .col-2 {
	display: block !important;
	margin: 0 auto;
	width: 50% !important;
}
.woocommerce-input-wrapper {
	width: 100% !important;
}
.woocommerce-additional-fields { display: none !important; }
nav.woocommerce-MyAccount-navigation ul {
	list-style-type: none;
	margin-left: 0 !important;
}
nav.woocommerce-MyAccount-navigation ul li {
	padding: 10px 20px;
	border-bottom: 1px solid #f0f0f0;
}

a.button i {
	margin-left: 5px;
	margin-top: 5px;
}
a.button-alt {
	background: #222;
	padding: 3px 15px 5px;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	color: #fff !important;
	border: 1px solid #222;
}
a.button-alt:hover {
	background: transparent;
	color: #111 !important;
	border: 1px solid #222;
}

a.button-alt i {
	margin-left: 5px;
	margin-top: 5px;
}
a.button-alt:before {
	display: none !important;
}

/*==========================================================
		HOMEPAGE
==========================================================*/
h1.homepageHeader, h2.homepageHeader {
	font-size: 40px !important;
	margin-top: 20px;
}
.serviceCallsContainer {
	width: 100%;
	max-width: 1285px;
	position: relative;
	height: 100%;
	margin: 0 auto;
}
.serviceCalls {
	position: absolute;
	bottom: 0; left: -85px;
	z-index: 998;
	color: #fff;
	background: rgba(188,15,21,.65);
}
.serviceCallsHeader {
	padding: 10px 60px;
	font-size: 22px;
	font-weight: 800;
	text-align: center;
	background: #bc0f15;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
}
.serviceBlock {
	width: 49%;
	text-align: center;
	color: #fff;
	font-size: 40px;
	font-weight: bold;
	font-style: italic;
	display: inline-block;
	letter-spacing: 2px;
	margin: 20px 0 30px;
	line-height: .75em;
}
.sBlock0 {
	border-right: 1px solid #fff;
}
.serviceBlock .year {
	font-size: 19px;
	font-style: normal;
	margin-left: 10px;
}

#missionStatement {
	width: 100%;
	position: relative;
	background: #f0f0f0;
	text-align: center;
}
#missionStatement h2 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 800;
	font-size: 30px;
	color: #222;
}
#missionStatement p {
	text-align: center;
	font-style: italic;
	font-family: 'Open Sans', sans-serif;
	width: 85%;
	margin: 0 auto;
	font-size: 22px;
	line-height: 1.3em;
	color: #222;
}
#homepageContent {
	background: #fff url(../img/backgrounds/shield.png) no-repeat right center;
	background-size: auto 100.5%;
}
#homepageContent h1 {
	font-size: 35px;
	font-weight: 800;
}
#homepageContent p {
	font-size: 18px;
}
#homepageBlog h3 {
	display: inline-block;
	float: left;
}
#homepageBlog a.button-alt {
	display: inline-block;
	margin-top: 0px !important;
	margin-left: 30px;
	float: left;	
}
#homepageBlog h4 {
	font-size: 20px !important;
	color: #062f81 !important;
	font-weight: 600 !important;
}
#homepageBlog h4 a {
	color: #062f81 !important;
}
#homepageBlog h4 a:hover {
	color: #a4a4a4 !important;
}
.highlightContainer {
	overflow: hidden;
	position: realtive;
	height: 300px;
}
.highlightInner {
	position: relative;
	z-index: 900;
	height: 300px;
	padding-top: 120px;
}
.highlightOverlay {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	background-color: rgba(6, 47, 129, .75);
	z-index: 888;
	transition: all .75s;	
}
.highlightBackground {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	background-color: #062f81;
	background-position: center;
	background-size: cover;
	transition: all .75s;
	background-repeat: no-repeat;
	z-index: 887;	
}
.highlightContainer:hover .highlightBackground {
	transform: rotate(5deg) scale(1.2);
}
.highlightContainer:hover .highlightOverlay {
	background-color: rgba(6, 47, 129, .35);
}
a.button-hightlight { 
	font-size: 20px;
	text-align: center;
	padding: 15px 30px;
	width: 70%;
	max-width: 400px;
	text-transform: uppercase;
	color: #fff !important;
	background: rgba(255,255,255,0);
	border: 1px solid #fff;
	font-weight: 800;
	line-height: 1.1em;
	letter-spacing: 1px;
}
a.button-hightlight:hover { 
	background: rgba(255,255,255,.33);
}
.eapps-facebook-feed-header-name {
	font-size: 18px !important;
}

/*==========================================================
		FEATURE
==========================================================*/
.feature-block .row {
	padding: 80px 0;
}
button.hamburger {
	border: none !important;
}
button.hamburger:hover, button.hamburger:active, button.hamburger:visited, button.hamburger:focus {
	border: none !important;
}
::placeholder {
	color: #ccc !important;
	opacity: 1; /* Firefox */
}
:-ms-input-placeholder {
	color: #ccc !important;
}
::-ms-input-placeholder {
	color: #ccc !important;
}
.no-section-padding {
	padding: 0 !important;
	margin: 0 !important;
}
.title-padding {
	padding-right: 60px !important;
	padding-left: 60px !important;
}

/*==========================================================
		HERO 
==========================================================*/
#homepageHero {
	height: 600px;
	background-size: auto cover;
	background-position: top right;
	background-repeat: no-repeat;
	position: relative;
	z-index: 88;
}
#homepageHero h2 {
	margin-top: 60px !important;
	font-size: 35px;
	font-weight: 400;
	margin-bottom: 20px;
}

/* Homepage Hero Carousel */
#carousel {
	position: absolute;
	height: 600px;
	/*overflow: hidden;*/
	z-index: 10 !important;
	top:0;
	right:0;
	bottom:0;
	left:0;
}
#carousel .carousel-item {
	background-size: cover;
	background-repeat: no-repeat;
}
.carousel-fade .carousel-item {
	display: block;
	position: relative;
	opacity: 0;
	transition: opacity 1.75s ease-in-out;
}
.carousel-fade .carousel-item.active {
	opacity: 1;
	display: block;
}
.carousel-fade .carousel {
	position: relative;
	top: 0;
	left: 0;
}
.carousel-fade .carousel-inner {
	height: 100%;
}
.overlay {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
}

/* Internal Page Hero */
#pageHero {
	background-color: #752525;
	background-image: url('../img/backgrounds/hero2.jpg');
	background-size: auto cover;
	background-position: left 70%;
	background-repeat: no-repeat;
	color: #ededed;
}
#pageHero h1.page_title {
	color: #fff;
}
#pageHero p, #pageHero a {
	color: #ededed !important;
}
#pageHero a:hover {
	color: #fff !important;
}
.vertAlign {
	margin-top: auto;
	margin-bottom: auto;
}
.hero-video-container {
	position: relative;
	background-color: #111111;
	width: 100%;
	height: 50vh;
	overflow: hidden;
}
.hero-video-container video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	/*min-height: 100%;*/
	width: auto;
	height: auto;
	z-index: 0;
	-ms-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}
.hero-video {
	display: block;
	position: relative;
	z-index: 0;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
}
.video-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(17, 150, 0, .25);
	z-index: 2;
}
video, .ie8-poster {
	position: absolute;
	top: -5%;
	right: 0;
	min-height: 110%;
	min-width: 100%;
	height: auto;
	width: auto;
	-o-object-fit: fill;
	object-fit: fill;
	z-index: 1;
}
@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* FEATURED */
.row-centered {
	text-align: center;
}
.col-centered {
	display: inline-block;
	float: none !important;
	vertical-align: top;
	margin: 0 auto !important;
	text-align: left;
	/*margin-right: -4px;*/
	padding: 0 !important;
	text-align: center;
}
.hero_button_space {
	margin-top: 20vh;
}
.video-container {
	float: left;
	display: inline;
	width: 49%;
}
.video-container:nth-child(odd) {
	margin-left: .5%;
}
.video-container:nth-child(even) {
	margin-right: .5%;
	clear: both;
}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
span.caption {
	font-size: .8em;
	font-weight: bold;
	font-style: italic;
}

/*==========================================================
		BUSINESSES
==========================================================*/
.business-sidebar {
	background: #111;
	color: #fff !important;
}
.business-sidebar h4 {
	color: #fff !important;
}
.business-sidebar table tr td {
	color: #fff !important;
	border-top: none !important;
	border-bottom: 1px solid #000 !important;
}
.business-sidebar table tr:nth-child(odd) {
	background: #000 !important;
}
.business-sidebar table tr:hover {
	background: #333 !important;
}

/*==========================================================
		FEATURED
==========================================================*/
.featured {
	height: 0;
	font-size: 35px;
	font-weight: normal;
	text-transform: uppercase;
	color: #fff;
}
.feature-overlay {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background: rgba(4,119,59,.6);
	z-index: 110;
	opacity: 1 !important;
}
.featured a {
	opacity: 1 !important;
}
.featured a:hover {
	opacity: 1 !important;
}
.featured p {
	position: relative;
	font-size: 35px !important;
	font-weight: normal;
	text-transform: uppercase;
	color: #fff;
	line-height: 1.2em;
	z-index: 9999;
}
.featured span {
	display: block;
	font-size: 40px;
	font-weight: bold;
}
.featured-100 {
	width: 100%;
	padding-top: 40%;
	padding-bottom: 60%;
	margin-bottom: 33px;
	background-size: 100% auto !important;
	background-repeat: no-repeat;
	background-position: center center !important;
	border: none !important;
	border-radius: 0 !important;
}
.featured-50 {
	width: 100%;
	padding-top: calc(15% - 5px);
	padding-bottom: calc(34% - 5px);
	margin-bottom: 30px;
	background-size: 100% auto !important;
	background-repeat: no-repeat;
	background-position: center center !important;
	border: none !important;
	border-radius: 0 !important;	
}
.featured-100:hover, .featured-50:hover {
	background-size: 110% auto !important;
	background-position: center center !important;
}
.featured-100:hover .feature-overlay, .featured-50:hover .feature-overlay {
	background: rgba(4,119,59,.75);
}

/*==========================================================
		TESTIMONIALS
==========================================================*/
.testimonial-block {
	position: relative;
	background-color: #ededed;
	padding: 10px !important;
}
.testimonial-block:before {
	content: '';
	position: absolute;
	background: #bc0f15;
	top: 0;
	bottom: 0;
	left: 0;
	width: 87px;
}
.testimonial-block:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 28px;
	width: 87px;	
	background-image: url(../img/backgrounds/testimonials-block.png);
	background-repeat: no-repeat;
	background-position: left center;	
}
.testimonial-text p {
	font-size: 22px !important;
	font-weight: 700 !important;
	font-style: italic;
	color: #6a6a6a !important;
	padding: 0 80px;
}
.testimonial-author {
	font-size: 18px;
	font-weight: 400;
	font-style: normal;
	color: #6a6a6a;
	line-height: 1.2em;
}
.testimonial-author small {
	font-size: 14px;
}

.testimonial-text-archive p {
	font-size: 22px !important;
	font-weight: 400 !important;
	font-style: italic;
	color: #333 !important;
}
.testimonial-author-archive {
	font-size: 18px;
	font-weight: 400;
	font-style: normal;
	color: #333;
	line-height: 1.2em;
}
.testimonial-author-archive small {
	font-size: 14px;
}

	/* TESTIMONIALS SLIDER */
.testimonial-slider {
	background: #bc0f15;
	padding: 65px 0 !important;
	color: #333;
}
.testimonial-slider p {
	color: #333 !important;
	font-size: 20px !important;
	margin-bottom: 1em !important;
	line-height: 1.2em !important;
}
.testimonial-slider h1 {
	padding-bottom: 30px;
}
#testimonialSlider .carousel-item p {
	padding: 0 100px;
}
/*#testimonialSlider .carousel-item {
	min-height: 250px;
}*/
.carousel-control-next, .carousel-control-prev {
	width: 5% !important;
}
.carousel-control-prev-icon {
	height: 34px !important;
	width: 21px !important;
	background-image: url(../img/icons/angle-left.png) !important;
	opacity: .6;
}
.carousel-control-next-icon {
	height: 34px !important;
	width: 21px !important;
	background-image: url(../img/icons/angle-right.png) !important;
	opacity: .6;	
}

/*==========================================================
		FEATURED PROPERTIES
==========================================================*/
.card, .card img {
	border-radius: 0 !important;
	border: none !important;
}
.card-body {
	background: #111 !important;
	color: #ededed !important;
}
.card h4.card-title {
	font-size: 24px !important;
	color: #ededed !important;
	min-height: 60px;
}
.card-text {
	font-size: 14px;
	color: #ededed !important;
}
.card-text p {
	font-size: 14px;
	color: #ededed !important;
}
.card-category, .card-category a {
	font-size: 16px;
	color: #ededed !important;
}

/*==========================================================
		INTRO BLOCK 
==========================================================*/
.intro-block {
	background: #111111;
	color: #1a6536;
	font-size: 24px;
	font-weight: normal;	
	line-height: 1.3em;
	padding: 80px 0;
}
.intro-block p {
	color: #1a6536;
	font-size: 24px;
	font-weight: normal;
	line-height: 1.3em;
}
.intro {
	padding: 80px 0;
	z-index: 0;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-size: cover;
	background-position: center center;
	color: #1578ac;
}

/*==========================================================
		DOMAIN NAMES
==========================================================*/
.search-form {
	width: 100%;
	border: 1px solid #959595;
	border-radius: 30px !important;	
}
.search-form input[type="submit"] {
	padding: 8px 20px;
	width: 300px;
	margin: 2px !important;
}
input[type="search"] {
	width: 100%;
	padding: 8px 20px;
	border: none !important;
	color: #888888 !important;
	font-size: 18px;
	background: transparent !important;
	border-radius: 30px !important;
}
#rstore-blackout {
	background-color: rgba(237,237,237,.75) !important;
}

/*==========================================================
		ICONS
==========================================================*/
.icon i.fa {
	font-size: 40px;
}

/*==========================================================
		ACCORDION
==========================================================*/
.accordion-toggle {
	display: block;
	cursor: pointer;
	opacity: 1.0;
	border-radius: 30px;
}
.accordion-toggle:hover {
	color: #111111;
}
.accordion-content { display: none; }
.accordion-content.opened { display: block !important; }
.accordion-content, .accordion-content p {
	padding: 0px 35px 0px 20px !important;
	margin-left: 25px;
	color: #111111;
	border-left: 3px solid #062f81;
	/*font-style: italic;	*/
	line-height: 1.75em;
	font-size: 18px;
}
.accordion h5 {
	padding: 10px 20px;
}
.accordion h5.opened {
	color: #111111;
}
.accordion h5.closed {

}

/*==========================================================
		MEDIA
==========================================================*/
#mediaIntro {
	padding-bottom: 0 !important;
	margin-bottom: -70px;
}

.grid:after {
  content: '';
  display: block;
  clear: both;
}

.grid-sizer,
.grid-item {
  width: 33.333%;
}
@media (max-width: 575px) {
  .grid-sizer,
  .grid-item {
    width: 100%;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .grid-sizer,
  .grid-item {
    width: 50%;
  }
}

.card img {
	width: 100% !important;
	height: auto !important;
}
.gallery-card img {
	width: 100% !important;
	height: auto !important;	
}
a img {
	opacity: 1;
}
a img:hover {
	opacity: .8;
}

.full-width-image {
   width: 100vw;
   position: relative;
   left: 50%;  
   margin-left: -50vw;
}

.full-width-image img {
  width: 100%;
}
.md-content .bxsliderGallery img {
	width: 100% !important;
	height: auto !important;
}
#mediaPanel {
	padding-top: 60px;
	padding-bottom: 60px;
	background: url(../img/backgrounds/mediaPanel.jpg) center center no-repeat;
	background-size: cover;
}
.f25 {
	font-size: 25px;
}
.f28 {
	font-size: 28px !important;
}

/*==========================================================
		CONTACT
==========================================================*/
a.social_icon {
	margin: 15px;
	opacity: 1;
}
a.social_icon:first-child {
	margin-left: 0;
}
a.social_icon:last-child {
	margin-right: 0;
}
a.social_icon:hover {
	opacity: .8;
}
#contactSection a {
	color: #111111;
}
#contactSection a:hover {
	color: #ca2224;
}
#contactSection input[type="text"], #contactSection input[type="email"], #contactSection input[type="tel"], #contactSection textarea {
	width: 100%;
	padding: 8px 20px;
	border: 1px solid #959595;
	color: #888888 !important;
	text-transform: uppercase;
	font-size: 22px;
	background: transparent !important;
}
#contactSection input[type="text"]:hover, #contactSection input[type="email"]:hover, #contactSection input[type="tel"]:hover, #contactSection textarea:hover {
	border: 1px solid #888888;
}
#contactSection input[type="text"]:focus, #contactSection input[type="email"]:focus, #contactSection input[type="tel"]:focus, #contactSection textarea:focus {
	border: 1px solid #e80e31;
}
.wpcf7-form span.interest {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 22px;
}
span.wpcf7-list-item {
	margin: 10px 0 10px 0;
	width: 100%;
	text-align: left;
}
/*span.wpcf7-list-item:nth-child(even) {
	text-align: right !important;
}*/
.customCheck input {
	display: none;
}
.wpcf7-list-item label {
	min-width: 300px;
	width: 100% !important;
	color: #111 !important;
}
.wpcf7-list-item-label {
	cursor: pointer;
	font-size: 18px;
	font-weight: 400;
}
.wpcf7-list-item-label:before {
	width: 20px;
	height: 20px;
	border: 2px solid #393939;
	background: transparent;
	position: relative;
	display: inline-block;
	margin-bottom: -3px;
	margin-right: 1.2ex;
	content: "";
}
.customCheck input:checked + .wpcf7-list-item-label:before {
	border: 2px solid #111111;
	background: #111111;
}
.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors {
	color: #D8000C;
	background-color: #FFBABA;
	border: 0;
	padding: 10px;
}
.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok {
	color: #4F8A10;
	background-color: #DFF2BF;
	border: 0;
	padding: 10px;
}
div.wpcf7-mail-sent-ok:before,div.wpcf7-validation-errors:before {
	font: 26px/30px FontAwesome;
	margin-right: 16px;
	vertical-align: middle;
}
div.wpcf7-mail-sent-ok:before {
	content:'\f00c';
}
div.wpcf7-validation-errors:before {
	content:'\f057';
}
.wpcf7 form.sent p {
	display: none;
}
.small {
	font-size: .75em;
	line-height: 1.2em;
}
.light {
	color: #bbb;
}
.light a {
	color: #bbb;
	text-decoration: underline !important;
}
.light a:hover {
	color: #bc0f15;
}
/*p.checkboxes input[type="checkbox"] {
	display: none !important;
}*/

span.wpcf7-list-item {
	display: inline-block;
	margin: 0;
}
.wpcf7 .wpcf7-list-item {
	display: block;
	margin-bottom: 10px;
}
.wpcf7-checkbox label {
	position: relative;
	cursor: pointer;
}
.wpcf7-checkbox input[type=checkbox] {
	/*position: relative;*/
	position: absolute;
	visibility: hidden;
	width: 30px;
	height: 30px;
	top: 0;
	left: 0;
}
.wpcf7-checkbox input[type=checkbox] + span {
	/* border: 3px solid red; */
}
.wpcf7-checkbox input[type=checkbox] + span:before {
	display: block;
	position: absolute;
	content: '';
	border-radius: 3px;
	height: 30px;
	width: 30px;
	top: 0px;
	left: 0px;
	border: 1px solid #ccc;
}
.wpcf7-checkbox input[type=checkbox] + span:after {
	display: block;
	position: absolute;
	content: "\2713";
	height: 30px;
	width: 30px;
	top: 0;
	left: 0;
	visibility: hidden;
	font-size: 18px;
	text-align: center;
	line-height: 30px;
}
.wpcf7-checkbox input[type=checkbox]:checked + span:before {
	background: transparent;
}
.wpcf7-checkbox input[type=checkbox]:checked + span:after {
	visibility: visible;
}
.wpcf7-list-item-label {
	margin-left: 40px;
	display: inline-block;
}

/*==========================================================
		WOOCOMMERCE
==========================================================*/
.woocommerce div.product p.price, .woocommerce div.product span.price {
	font-size: 30px;
	font-weight: 800;
	color: #bc0f15 !important;
}
span.price {
	font-weight: 800 !important;
	color: #bc0f15 !important;
}
ul.products li.product {
	text-align: center;
}

/*==========================================================
		LISTS & BLOCKQUOTES
==========================================================*/
ol li {
	counter-increment: list;
	list-style-type: none;
	position: relative;
	font-size: 22px;
	margin-bottom: 10px;
	padding-left: 10px;
}
ol li:last-of-type {
	margin-bottom: 30px;	
}
ol li::before {
	color: #bc0f15;
	content: counter(list) ".";
	top: 1px;
	left: -35px;
	position: absolute;
	text-align: right;
	width: 30px;
	font-weight: 700;
}
ul.arrow_list, ul.check_list {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}
ul.arrow_list ul, ul.check_list ul {
    list-style: none;
    margin-left: 0;
}
ul.arrow_list li {
    background: url(../img/icons/right-arrow.png) 0 6px no-repeat;
    margin: 0 0 10px 0;
    padding: 0 0 5px 18px;
	font-size: 18px;
}
ul.check_list li {
    background: url(../img/icons/check.png) 0 8px no-repeat;
    margin: 0 0 10px 0;
    padding: 0 0 5px 18px;
	font-size: 18px;
}
ul.bullet_list {
    list-style: none;
    margin-left: 0;
    padding-left: 30px;
}
ul.bullet_list ul {
    list-style: none;
    margin-left: 0;
    padding-left: 15px;
}
ul.bullet_list li {
    background: url(../img/icons/bullet.png) 0 11px no-repeat;
    margin: 0 0 10px 0;
    padding: 0 0 5px 18px;
	font-size: 22px;
	font-weight: 300;
}
ul.bullet_list_white {
    list-style: none;
    margin-left: 0;
    padding-left: 30px;
}
ul.bullet_list_white ul {
    list-style: none;
    margin-left: 0;
    padding-left: 15px;
}
ul.bullet_list_white li {
    background: url(../img/icons/bullet-white.png) 0 11px no-repeat;
    margin: 0 0 10px 0;
    padding: 0 0 5px 18px;
	font-size: 22px;
	font-weight: 300;
	color: #fff !important;
}
ul.no_bullets {
    list-style: none;
    margin-left: 0;
    padding-left: 30px;
}
ul.no_bullets ul {
    list-style: none;
    margin-left: 0;
    padding-left: 15px;
	padding-right: 15px;	
}
ul.no_bullets li {
    background: transparent;
    margin: 0 0 10px 0;
    padding: 0 0 5px 0;
	font-size: 22px;
	font-weight: 300;
}
ul.no_bullets li a {
    color: #111111;
	text-decoration: underline !important;
	font-weight: 600;
}
ul.no_bullets li a:hover {
	color: #ca2224;
}
ul.no_bullets_white {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}
ul.no_bullets_white ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}
ul.no_bullets_white li {
    background: transparent;
    margin: 0 0 10px 0;
    padding: 0 0 5px 0;
	font-size: 22px;
	font-weight: 300;
	color: #fff !important;
}
ul.doc_list {
    list-style: none;
    margin-left: 0;
    padding-left: 15px;
}
ul.doc_list ul {
    list-style: none;
    margin-left: 0;
    padding-left: 15px;
}
ul.doc_list li {
    background: url(../img/icons/doc.png) 0 11px no-repeat;
    margin: 0 0 5px 0;
    padding: 5px 0 5px 18px;
	font-size: 16px;
}
ul.product_list {
    list-style: none;
    margin-left: 20px;
    padding-left: 0;
}
ul.product_list ul {
    list-style: none;
    margin-left: 0;
}
ul.product_list li {
    background: url(../img/icons/right-arrow.png) 0 5px no-repeat;
    margin: 0 0 5px 0;
    padding: 0 0 5px 18px;
	font-size: 16px;
}

blockquote {
	padding: 20px 35px !important;
	margin: 10px 30px !important;
	color: #333;
	font-style: italic;
	background: #fafafa;
}
blockquote p {
	padding: none !important;
	color: #333;
}
blockquote p:last-of-type {
	margin-bottom: 0 !important;
}
p.contact_block {
	font-size: 16px !important;
}
.engraving-gallery .card {
	border: none !important;
}


/*==========================================================
		CASE STUDIES
==========================================================*/
.quote {
	background: #fff url('../img/backgrounds/openquote-smaller.png') no-repeat 2% 7%;
}
.outlined {
	font-size: 5em;
	font-weight: bold;
	color: #bc0f15;
	-webkit-text-fill-color: white; /* Will override color (regardless of order) */
	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: #bc0f15;
}

/*==========================================================
		FOOTER
==========================================================*/
footer {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background: #222;
	padding: 33px 0;
	color: #fff;
}
ul.social {
	list-style-type: none;
	margin: 17px 0 !important;
}
ul.social li {
	display: inline-block;
	margin: 17px 10px !important;	
}
footer h3 {
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	font-style: normal;
}
footer p {
	color: #fff;
}
footer a {
	color: #fff !important;
	opacity: 1;
}
footer a:hover {
	color: #fff !important;
	opacity: .7;
}
footer ul.footer_links {
	list-style-type: none;
	text-align: right;
	margin-top: 20px;	
	margin-left: 0 !important;
}
footer ul.footer_links li {
	display: inline-block;
	vertical-align: middle;
	text-align: right;
	padding: 20px;
	padding-top: 0px;
	text-transform: uppercase;
	font-size: 14px;
}
footer ul.footer_links li:first-child {
	padding-left: 0px;
}
footer ul.footer_links li:last-child {
	padding-right: 0px;
}
footer ul.footer_menu {
	list-style-type: none;
	margin-left: 0;
	font-size: 17px !important;
	font-style: italic;
}
footer ul.footer_menu li {
	background: url(../img/backgrounds/footer-arrow.png) no-repeat 6px center;
	padding-left: 20px;
	margin-bottom: 7px;
}
footer ul.footer_menu a {
	color: #fff;
}
footer ul.footer_menu a:hover {
	color: #fff;
}
footer .cards {
	font-size: 38px;
	color: #fff;
}
footer .social {
	font-size: 38px !important;
	color: #fff !important;
}
footer .social a i {
	font-size: 32px !important;
	color: #fff !important;
}
footer .social a:hover i {
	color: #fff !important;
}
footer .footer-logos {
	display: inline-block;
	vertical-align: middle;
}
footer .copyright {
	display: inline-block;
	font-size: 14px;
	color: #fff;
	vertical-align: middle;
}
footer .copyright a {
	color: #fff !important;
}
.footer-socket {
	background: #222;
	color: #6a6a6a;
	font-family: 'Open Sans', sans-serif;	
	font-size: 12px;
	font-weight: bold;
	padding-bottom: 30px;
}
.footer-socket a {
	color: #BBBBBB !important;
	opacity: 1 !important;
}
.footer-socket a:hover {
	color: #fff !important;
	opacity: 1 !important;	
}
.footer_about {
	font-size: 16px !important;
	font-style: italic;
	color: #fff;
	line-height: 1.5em;
}
footer .copyright a.iddpro {
	font-size: 12px;
	color: #fff !important;
	padding-top: 10px;
}
footer .copyright a.iddpro:hover {
	color: #fff !important;
}
#go-to-top {
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index: 9999;
}
#go-to-top a {
	text-decoration: none; 
	display: none;
}
#go-to-top .fa {
	padding: 12px 15px;
	background: #bc0f15;
	border-radius: 50%;
	color: #fff;
	font-size: 23px;
	text-align: center;
	font-weight: bold;
}
#go-to-top .fa:hover {
	background: #bc0f15;
	color: #fff;
	opacity: 1;
}

footer .fab {
	font-size: 25px;
	padding: 0 5px;
	color: #bc0f15;
}
/*==========================================================
		MOBILE RESPONSIVE
==========================================================*/
@media (max-width: 1475px) {
	.serviceCalls {
		left: 0px;
	}
}

@media (max-width: 1199px) {
	.video {
		padding-top: 60px;
	}
	.feature-content p {
		font-size: 16px;
		line-height: 1em;
	}
	#logo img {
		max-width: 200px;
		margin-top: 20px;
	}
	.hero-left {
		padding-top: 100px !important;
		padding-left: 100px !important;
	}
}
@media (max-width: 992px) {
	.nav-logo {
		display: none !important;
	}
	.nav-logo-mobile {
		display: inline;
		position: relative;
		font-weight: 700;
		font-size: 34px;
		margin: 0 auto;
		z-index: 999;
	}	
	#homepageHero {
		max-height: 300px;
		background-size: auto cover;
		background-position: right 35% bottom 100%;
		background-repeat: no-repeat;
		overflow: hidden;
	}
	.carousel {
		max-height: 300px !important;
	}
	.testimonial-text-archive p {
		font-size: 18px !important;
	}
	.menu-spacer a {
		display: none;
	}
	.container-fluid, .container {
		width: 100% !important;
		margin: 0 10px;
	}
	.navbar-collapse {
		padding-right: 15px !important;
	}
	.facebook_icon {
		position: absolute;
		right: auto;
		left: 5%;
		top: 11px;
		z-index: 999;
	}
	.m-top-130 {
		margin-top: 130px;
	}
	.mb-sm-40 {
		margin-bottom: 40px;
	}
	#go-to-top {
		position: fixed;
		bottom: 10px;
		right: 10px;
	}
	.video {
		padding-top: 0;
	}
	.page-nav-container {
		font-size: 18px;
	}
	.page-nav-container .page-nav {
		padding-top: 20px;
		text-align: left;
	}
	.floating_link {
		display: none !important;
	}
	.d-flex {
		display: block !important;
		width: 100% !important;
	}
	.p-right-15 {
		padding-right: 0;
	}
	ul.bullet_list {
		padding-left: 15px;
	}
	ul.bullet_list_white {
		padding-left: 15px;
	}
	ul.no_bullets {
		padding-left: 0;
	}
	.title-padding {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	.navbar-default .navbar-nav > li > a {
		font-size: 13px !important;
		padding-right: 3px !important;
		padding-left: 3px !important;
		letter-spacing: 0;
		margin: 5px;
	}
	/*.navbar-default .navbar-nav li ul li a {
		font-size: 12px !important;
	}*/
	.hero-left {
		text-align: center !important;
		padding-top: 20px !important;
		padding-left: 20px !important;
	}
	.hero-left span.price {
		font-size: 25px;
	}
	h1.hero-title {
		font-size: 30px !important;
	}
	.navbar-header {
		position: relative;
		display: inline-block;
		float: right;
		margin-top: 12px;
		text-align: right;
		z-index: 999;
	}
	.navbar-collapse {
		float: none !important;
		padding-right: 29px !important;
		padding-left: 0 !important;
		margin-top: 0 !important;
		margin-right: 0 !important;
		margin-left: 0;
		width: 100%;
	}
	.testimonial-block:before, .testimonial-block:after {
		display: none !important;
	}
	.testimonial-text p {
		font-size: 18px !important;
	}
	.testimonial-author {
		font-size: 14px;
	}
	.testimonial-author small {
		font-size: 12px;
	}
	#homepageHero h2 {
		margin-top: 20px !important;
		font-size: 28px !important;
	}
	.header-socket {
		height: 10px !important;
		background-image:
		linear-gradient(
		  to right, 
		  #bc0f15,
		  #bc0f15 15px,
		  #062f81 100%
		);
	}
	.header-socket a {
		display: none;
	}
	a.header_social, a.header_social:hover {
		margin-right: 23px;
		color: #bc0f15 !important;
	}
	footer ul.footer_links {
		text-align: left;
		padding: 10px;
	}
	footer ul.footer_links li {
		text-align: left;
	}
		header#header-new {
		min-height: auto;
	}
	.logo-bg {
		display: none !important;
	}
	#homepageContent {
		background: #fff !important;
	}
	#homepageContent h1 {
		font-size: 30px !important;
	}
}
@media (max-width: 767px) {
/* MOBILE STYLES FOR 767px OR LESS */
	.container-fluid, .container {
		width: 100% !important;
		margin: 0 !important;
	}
	#logo {
		float: none !important;
		display: block !important;
		text-align: center;
	}
	.cart_button {
		position: relative;
		display: inline-block;
		float: left;
		top: 5px;
		left: 16px !important;
		z-index: 998;
	}
	
	.m-top-130 {
		margin-top: 130px;
	}
	.header {
		padding: 8px 0;
	}
	#copyright {
		font-size: 16px;
		margin: 50px 0 0;
	}
	.hero-static, .hero-static .carousel {
		display: none !important;
	}
	#sliderOverlay {
		background-image: linear-gradient(to bottom, rgba(5, 20, 10, 0), rgba(5, 20, 10, .5));
	}
	.hero-video {
		height: auto;
		padding-bottom: 50px !important;
	}
	a.hero_button {
		font-size: 35px;
		line-height: 1.2em;
	}
	.hero_button_space {
		margin-top: 30px;
	}
	span.wpcf7-list-item {
		margin: 10px 0 10px 0;
		width: 100%;
		text-align: left;
	}
	span.wpcf7-list-item:nth-child(even) {
		text-align: left !important;
	}
	a.page-nav-toggle {
		left: -50px;
		font-size: 20px;
	}
	h1, h1.page_title {
		font-size: 45px !important;
	}	
	h2 {
		font-size: 30px !important;
	}
	p, blockquote, ol, ul, dl, ol li {
		font-size: 16px !important;
	}
	.navbar-default .navbar-collapse, .navbar-default .navbar-form {
		border-color: transparent !important;
	}
	.navbar-nav {
		float: none !important;
		overflow-x: hidden;
	}
	.navbar-default .navbar-nav > li > a {
		padding: 15px 15px !important;
		color: #111111 !important;
		font-size: 16px !important;
	}
	/*.navbar-default .navbar-nav > li > a {
		font-size: 13px !important;
		padding-right: 3px !important;
		padding-left: 3px !important;
		letter-spacing: 0;
		margin: 5px;
	}*/
	.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:active, .navbar-default .navbar-nav > li > a:focus {
		color: #062f81 !important;
	}
	.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:active, .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:focus {
		padding: 15px 15px !important;
		color: #062f81 !important;
	}
	.navbar-default .navbar-nav > li > ul {
		background: #062f81 !important;
		font-size: 10px;
		width: calc(80%-31px) !important;
	}
	.navbar-default ul li ul {
		min-width: 100%;
		width: 100%;
	}
	.cropped {
		min-height: 100px;
		height: 200px;
		margin-bottom: 20px;
	}
	.hero-text {
		position: relative;
		z-index: 100;
		font-size: 30px !important;
		color: #fff;
		font-weight: 800;
		line-height: 1.25em;
	}
	.hero-text p {
		font-size: 30px !important;
		color: #fff;
		font-weight: 800;
		line-height: 1.25em;	
	}
	.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
		max-width: 100%; /* unset */
	}
	.woocommerce .col-1, .woocommerce .col-2 {
		display: block !important;
		margin: 0 auto;
		width: 100% !important;
	}
	.testimonial-slider h1 {
		font-size: 30px !important;
		padding-right: 20px;
		padding-left: 20px;
	}
	.testimonial-slider p {
		font-size: 16px !important;
	}
	#testimonialSlider .carousel-item p {
		padding: 0 30px;
	}
	.featured p {
		font-size: 25px !important;
	}
	.featured span {
		font-size: 30px;
	}
	input[type="search"] {
		font-size: 14px;
	}
	.rstore-domain-search .form-container .search-form .search-field, .rstore-domain-search .form-container .search-form .search-submit {
		font-size: 14px !important;	
	}
	#missionStatement p {
		width: 100%;
	}
	#homepageHero {
		max-height: 175px;
		background-size: auto cover;
		background-position: right 35% bottom 100%;
		background-repeat: no-repeat;
		overflow: hidden;
	}
	.carousel {
		max-height: 175px !important;
	}	
	.serviceCalls {
		position: relative;
		bottom: 0; left: auto;
		height: 100%;
		z-index: 998;
	}
}
@media (min-width: 576px) {
	.container {
		max-width: 1200px !important;
	}
}
@media (max-width: 539px) {
	ul.products li.product {
		display: block !important;
		float: none !important;
		width: 100% !important;
	}
	a.woocommerce-LoopProduct-link, .woocommerce-loop-product__link {
		display: block;
		width: 100% !important;
		clear: both !important;
	}
}
@media (max-width: 480px) {
/* MOBILE STYLES FOR 480px OR LESS */
}
@media (max-width: 380px) {
/* MOBILE STYLES FOR 380px OR LESS */
}
@media (max-width: 320px) {
/* MOBILE STYLES FOR 320px OR LESS */
}
@media print {
	html, body {
		margin: 0;
		font-size: 18px !important;
		width: 100% !important;
		background: #fff !important;
	}
	a[href]:after { content: none !important; }
	img[src]:after { content: none !important; }
    .page-nav, .page-nav-toggle, footer, .footer-socket, .go-to-top, .return-page, .hero-video, .hero-static {
		display: none !important;
	}
	h1.page_title {
		font-size: 50px !important;
		margin: 0 !important;
	}
	.intro {
		padding: 10px 0 !important;
		margin: 0 !important;
	}
	.extra-padding {
		height: 5px !important;
	}
	
}