/* reset*/
html, body, ul, ol, li, p, h1, h2, h3, h4, h5, h6, form, fieldset {
	margin: 0;
	padding: 0;
	border: 0;
	
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { 
    display: block;
	margin: 0;
}

img {
	max-width: 100%;
	height: auto;
	border:0;
}
.video embed,
.video object,
.video iframe {
	width: 100%;
	height: auto;
}
video {
	width: 90%;
	height: auto;
}
* {
  box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
}
body {
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 100%;
  color: #222;
  background: #f4f4f4;
}
h1 {
	color: #f4f4f4;
	font-family: 'Open Sans',sans-serif;
	font-size: 150%;
    font-weight: normal;
	line-height: 1.5em;
	text-transform: uppercase;
}
h2 {
	color: #282828;
	font-family: 'Open Sans',sans-serif;
	font-size: 150%;
	line-height: 1.5rem;
	margin: 4% 0;
	text-transform: uppercase;
    border-bottom: 1px solid #D8271F;
    padding-bottom: 1%;
}
h3 {
	color: #f4f4f4;
	font-family: 'Open Sans',sans-serif;
	font-size: 150%;
	line-height: 1.5rem;
	margin: 5% 0;
	text-transform: uppercase;
    text-align: left;
}
p {
	color: #282828;
	font-family: 'Lato',sans-serif;
	font-weight: normal;
	line-height: 1.5;
    margin: 0 0 4%;
}
.container {
    width: 100%;
    max-width: 1920px;
}
.row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.header-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
    padding: 2% 2% 0 2%;
}
.footer-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  margin: 4% 0;;
}
.row-contact {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
}
.header-column {
    display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
    align-self: center;
}
.home-double-column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 3;
}
.bar-column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
    padding: 0 1%;
}
.double-column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 2;
}
.double-column-margin {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 2;
    margin-right: 2%;
}
.column-contact {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
    padding: 0 2%;
}
/** Keep the image from stretching in flex column**/
.nostretch {
	align-self: center;
}
.home-header {
    min-height: 100vh;
}
.home-header-inner {
    background: rgba(255,255,255,0.8);
}
.topnav {
  overflow: hidden;
  max-height: 110px;
    margin-top: 2%;
}

.topnav a {
  font-family: "Open Sans", sans-serif;
    font-weight: 700;
  float: left;
  display: block;
  color: #000;
  text-align: center;
  padding: 0 26px;
  text-decoration: none;
  font-size: 87.50%;
  letter-spacing: 1px;
}

.topnav a:hover {
  color: #d8271f;
}

.topnav a.active {
  color: #d8271f;
}

.topnav .icon {
  display: none;
}
.header-call-action {
    color: #c10808;
  font-family: 'Lato',sans-serif;
  font-weight: 400;
  font-size: 150%;
  line-height: normal;
  margin: 8% 0 5% 0;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.header-call-action-button {
	background: #000;
	border-radius: 5px;
	color: #f4f4f4;
	cursor: pointer;
	display: block;
	font-size: 14px;
	font-weight: 400;
	font-family: 'Lato',sans-serif;
	letter-spacing: 1px;
	line-height: 52px;
	padding: 0 15px;
	width: 380px;
	max-width: 100%;
    text-align: center;
	text-transform: uppercase;
	-webkit-animation: shadowPulse 2.25s infinite;
	animation: shadowPulse 2.25s infinite;
	-webkit-transition: all 350ms ease;
	-moz-transition: all 350ms ease;
	-ms-transition: all 350ms ease;
	-o-transition: all 350ms ease;
	transition: all 350ms ease;
}
.header-call-action-button:a {
	color: #f4f4f4;
	letter-spacing: 2px;
}
.header-call-action-button:visited {
	color: #f4f4f4;
	letter-spacing: 2px;
}
.header-call-action-button:hover, .header-call-action-button:focus {
	color: #f4f4f4;
	letter-spacing: 2px;
}
@keyframes shadowPulse {
    0% {
        -webkit-box-shadow:0 0 15px -4px #D8271F;
        -moz-box-shadow:0 0 15px -4px #D8271F;
         box-shadow:0 0 15px -4px #D8271F;
    }
    50% {
        -webkit-box-shadow:0 0 15px 2px #D8271F;
        -moz-box-shadow:0 0 15px 2px #D8271F;
        box-shadow:0 0 15px 2px #D8271F;
    }
    100% {
        -webkit-box-shadow:0 0 15px -4px #D8271F;
        -moz-box-shadow:0 0 15px -4px #D8271F;
        box-shadow:0 0 15px -4px #D8271F;
    }
}
.header-address {
	color: #000000;
	font-family: 'Lato',sans-serif;
	font-size: 95%;
	font-weight: 600;
	line-height: 1.2;
	margin: 0;
	letter-spacing: 1px;
	text-align: right;
	margin-right: 2vw;
}
.fa-location-dot, .fa-envelope, .fa-phone {
    color: #d8271f;
}
.tagline {
    line-height: 45px;
	font-family: 'Open Sans',sans-serif;
    color: #fff;
    font-size: 87.50%;
    text-align: center;
    background-color: #DF443D;
    margin: 2% 0 0 0;
	letter-spacing: 3px;
}
.tagline-home {
    line-height: 45px;
	font-family: 'Open Sans',sans-serif;
    color: #fff;
    font-size: 87.50%;
    text-align: center;
    background-color: #DF443D;
    margin: 0;
	letter-spacing: 3px;
}
.tagline-bar {
	position: absolute;
	width: 100%;
	bottom: 0;
}
.centerit {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}
a {
	color: #333;
	text-decoration: none;
	line-height: inherit;
}
a:visited {
    color: #333;
}
a:hover {
    color: #D8271F;
}
.title-bar {
	background: #282828;
	/* position: relative; */
	text-align: center;
	padding: 3% 0;
	margin: 0;
}
.home-wrapper {
    background: #f4f4f4;
}
.content-area {
    width: 50%;
    margin: 2% auto;
}
.content-area-home {
    width: 70%;
    margin: 0 auto;
    padding: 4% 0;
}
.cta-container {
	background: rgba(40,40,40,.8);
	padding: 5% 0 4% 0;
}
.footer-call-action {
	color: #f4f4f4;
	font-family: 'Lato',sans-serif;
	font-weight: 400;
	font-size: 150%;
	line-height: normal;
	margin: 0 0 2% 0;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.footer-call-action-button {
	background: #000;
	border-radius: 5px;
	color: #f4f4f4;
	cursor: pointer;
	display: block;
	font-size: 14px;
	font-weight: 400;
	font-family: 'Lato',sans-serif;
	letter-spacing: 1px;
	line-height: 52px;
	padding: 0 15px;
    margin: 0 auto;
	width: 380px;
	max-width: 100%;
    text-align: center;
	text-transform: uppercase;
	-webkit-animation: shadowPulse 2.25s infinite;
	animation: shadowPulse 2.25s infinite;
	-webkit-transition: all 350ms ease;
	-moz-transition: all 350ms ease;
	-ms-transition: all 350ms ease;
	-o-transition: all 350ms ease;
	transition: all 350ms ease;
}
.footer-call-action-button:a {
	color: #f4f4f4;
	letter-spacing: 2px;
}
.footer-call-action-button:visited {
	color: #f4f4f4;
	letter-spacing: 2px;
}
.footer-call-action-button:hover, .footer-call-action-button:focus {
	color: #f4f4f4;
	letter-spacing: 2px;
}
footer {
    background: #282828;
}
.inner-container {
	margin: 0 auto;
	max-width: 1360px;
	width: 100%;
}
.toTop {
    line-height:35px;
    margin:0 auto;
    text-align:center;
    width:440px;
    position:relative;
    overflow:hidden;
    z-index:0;
}
.toTop .fa {
    color:#f4f4f4;
    font-size:28px;
    cursor:pointer;
    position:relative;
    width:40px;
    z-index:2;
}
.toTop::before {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    box-shadow:0 3px 10px #f4f4f4;
    content:"";
    height:1px;
    left:0;
    margin:0 auto;
    position:absolute;
    right:0;
    width:50%;
    z-index:2;
}
.toTop::after {
    border-left:220px solid transparent;
    border-right:220px solid transparent;
    border-top:35px solid #D8271F;
    bottom:0;
    content:"";
    height:0;
    left:0;
    margin:0 auto;
    position:absolute;
    right:0;
    width:0;
    z-index:1;
}
.bottomnav {
  overflow: hidden;
  max-height: 110px;
    margin-top: 2%;
}

.bottomnav a {
  font-family: "Open Sans", sans-serif;
    font-weight: 700;
    font-size: 75%;
  float: left;
  display: block;
  color: #f4f4f4;
  text-align: center;
  padding: 0 1%;
  text-decoration: none;
  letter-spacing: 1px;
}

.bottomnav a:hover {
  color: #d8271f;
}
.bottomnav a.active {
	color: #d8271f;
}
.bottomnav .icon {
  display: none;
}
.social-icon-block {
    text-align: center;
}
.social-icons {
	color: #f4f4f4;
	font-size: 20px;
	line-height: 40px;
	margin: 0 3px;
	text-align: center;
	width: 45px;
    height: 45px;
	-webkit-transition: all 350ms ease;
	-moz-transition: all 350ms ease;
	-ms-transition: all 350ms ease;
	-o-transition: all 350ms ease;
	transition: all 350ms ease;
    display: inline-block;
}
.social-icons a {
    border: 2px solid transparent;
	border-radius: 50%;
    color: #f4f4f4;
    width: 45px;
    height: 45px;
    display: block;
}
.social-icons a:hover {
    border: 2px solid;
    border-color: #D8271F;
    border-radius: 50%;
}
.footer-info {
	font-size: 87.50%;
	color: #fff;
	font-style: italic;
	text-align: center;
    padding: 2%;
    margin: 0;
}
.footer-info a {
    color: #fff;
    text-decoration: none;
}
.footer-info a:visited {
    color: #fff;
}
.footer-info a:hover {
    color: #d8271f;
}
ul.aboutus-list {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: inline-block; 
	text-align: left;
}
.aboutus-list li {
	padding: 2% 0;
    display: flex;
    line-height: 2;
}
.aboutus-list li::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f058  ";
  color: #D8271F;
 margin-right: 1%;
}
ul.plus-list {
	list-style-type: none;
	margin: 0;
	padding: 0;
	/*display: inline-block;*/ 
	text-align: left;
}
.plus-list li {
	padding: 2% 0;
    line-height: 2;
    display: flex;
}
.plus-list li::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f0fe  ";
  color: #D8271F;
    margin-right: 1%;
}
ul.plus-list-wrap {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: inline-block; 
	text-align: left;
}
.plus-list-wrap li {
	padding: 2% 0;
    line-height: 2;
    display: flex;
}
.plus-list-wrap li::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f0fe  ";
  color: #D8271F;
    margin-right: 1%;
}
.contact-info {
    color:#f4f4f4;
    text-align: left;
}
.contact-info a {
    color:#f4f4f4;
}
.contact-info a:visited {
    color:#f4f4f4;
}
.contact-info a:hover {
    color: #D8271F;
}
.custom-slide-out-wrapper {
	position: fixed;
	top: 50%;
	right: 0;
	background: #e7e7e7;
	padding: 40px 70px;
	z-index: 9999;
	border-radius: 10px 0px 0px 15px;
	-moz-transform: translateX(100%) translateY(-50%);
	-webkit-transform: translateX(100%) translateY(-50%);
	-o-transform: translateX(100%) translateY(-50%);
	-ms-transform: translateX(100%) translateY(-50%);
	transform: translateX(100%) translateY(-50%);
	-webkit-transition: all 1.2s ease;
	-moz-transition: all 1.2s ease;
	-ms-transition: all 1.2s ease;
	-o-transition: all 1.2s ease;
	transition: all 1.2s ease;
}
.custom-slide-out-wrapper.active {
	-moz-transform: translateX(0) translateY(-50%);
	-webkit-transform: translateX(0) translateY(-50%);
	-o-transform: translateX(0) translateY(-50%);
	-ms-transform: translateX(0) translateY(-50%);
	transform: translateX(0) translateY(-50%);
	box-shadow: 0px 40px 40px 0px rgba(28,28,28,0.2);
}
.custom-slide-out-wrapper span.custom-form-toggle {
	position: absolute;
	left: 0;
	top: 70%;
	color: #ffffff;
	font-size: 24px;
	width: 80px;
	line-height: 80px;
	text-align: center;
	background: #d8271f;
	border-radius: 40px;
	box-shadow: 0px 25px 40px 0px rgba(28,28,28,0.2);
	-moz-transform: translateX(-70%) translateY(-50%);
	-webkit-transform: translateX(-70%) translateY(-50%);
	-o-transform: translateX(-70%) translateY(-50%);
	-ms-transform: translateX(-70%) translateY(-50%);
	transform: translateX(-70%) translateY(-50%);
	cursor: pointer;
}
.slick-background-wrapper {
	left: 0;
	position: fixed;
	top: 0;
	z-index: -1;
	width: 101% !important;
	overflow: hidden;
}

.info-icons {
	font-size: 30px;
	color: #f4f4f4;
	display: block;
	line-height: 62px;
	width: 62px;
    height: 62px;
    border: 2px solid #f4f4f4;
    border-radius: 50%;
    margin: 0 auto;
     -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.info-icons:hover {
    animation-name:rotate;
    animation-duration:0.7s;
    border-color:#D8271F;
}

.title-bar .mi-heading {
	color: #f4f4f4;
	margin: 15px 0;
	font-family: 'Open Sans',sans-serif;
	font-size: 18px;
	text-align: center;
	line-height: 1.5rem;
	text-transform: uppercase;
}
.title-bar p {
	color: #f4f4f4;
	font-size: 14px;
	line-height: 26px;
}
hr {
	border: solid #ddd;
	border-width: 1px 0 0;
	clear: both;
	margin: 1.25rem 0 1.1875rem;
	height: 0;
}