/* Home Page */

#home-page-wrapper {
width:100%; font-family:'Open Sans', sans-serif
}

.carousel-inner .carousel-item-1 {
transition:-webkit-transform 0.1s ease;
transition:transform 0.1s ease;
transition:transform 0.1s ease, 
-webkit-transform 0.1s ease;
}

/* Banner */

#hp-banner {
width:100%; height:520px; background-position:center; background-size:cover; display:table; text-align:center; position:relative
}

#hp-banner span {
display:table-cell; vertical-align:middle
}

#hp-banner h1 {
font-size:52px; font-weight:800; list-style:60px; color:#efefef; text-shadow: 2px 2px 3px #555555
}

#hp-banner h2 {
font-size:26px; list-height:36px; color:#efefef; text-shadow: 2px 2px 3px #555555
}

.hp-banner-overlayer {
background:rgba(0, 0, 0, 0.4); position:absolute; width:100%; height:520px; display:table
}

/* Search Bar */

#search-bar {
width:100%; background:#e31b23; padding-top:12px; padding-bottom:3px
}

#search-bar h2 {
font-size:23px; line-height:50px; color:#ffffff; padding-left:0px; padding-right:10px; text-align:center
}

#search-bar div.search-form-wrapper {
width:calc(100% - 220px); float:right
}

#search-bar div.search-text-wrapper {
width:220px; float:left
}

#search-bar div.search-input {
width:calc(100% - 100px); float:left; padding-right:0px
}

#search-bar div.search-submit {
width:100px; float:right; padding:5px; padding-top:4px
}

.search-bar-body {
width:100%; max-width:1200px; margin:auto; padding-left:20px; padding-right:20px
}

/* Carousel */

#carousel {
width:100%; margin:auto; padding-top:90px; padding-bottom:60px; background:#efefef; border-bottom:solid 3px #e31b23;
box-shadow:inset 1px, 2px, 3px, .5px rgba(0,0,0,0.3)
}

#carousel h3 {
font-size:26px; line-height:34px; font-weight:800; color:#004f5a; padding-top:10px
}

#carousel h2 {
font-size:38px; line-height:44px; font-weight:800; color:#000000; display:flex; width:100%; justify-content:center; align-items:center; text-align:center;
padding-bottom:20px; text-transform:uppercase
}

#carousel h2:before,
#carousel h2:after {
content: ''; border-top:3px solid #e31b23; margin:0 20px 0 0; flex:1 0 20px; 
box-shadow: 1px 2px 3px .5px rgba(0,0,0,0.3)
}

#carousel h2:after {
margin:0 0 0 20px
}

#carousel p {
font-size:16px; line-height:24px; color:#000000
}

#carousel div.products-services {
width:100%; padding-bottom:30px
}

#carousel-thumbs {
width:100%; max-width:1920px; margin:auto; text-align:center; padding-top:20px; padding-bottom:10px; border-bottom:3px solid #e31b23
}

#carousel-thumbs h2 {
font-size:16px; line-height:25px; font-weight:800; color:#004f5a; padding-top:10px
}

.carousel-thumb {
width:15%; display:inline-block; vertical-align:top
}

.carousel-thumb img {
width:100%; max-width:100%; height:auto
}

.carousel-thumb img:hover {
opacity:.8
}

.carousel-body {
width:100%; max-width:1900px; margin:auto; position:relative; padding-left:55px; padding-right:55px
}

/* Featured Products */

#hp-products {
width:100%; background:#ffffff
}

#hp-products h3 {
font-size:26px; line-height:34px; font-weight:800; color:#e31b23; padding-bottom:20px
}

#hp-products p {
font-size:16px; line-height:24px; color:#000000
}

.hp-products-body {
width:100%; max-width:1330px; margin:auto; padding-left:20px; padding-right:20px; padding-top:50px; padding-bottom:34px
}

.hp-product {
width:49%; display:inline-block; vertical-align:top; padding:5%
}

.hp-product img {
width:auto; max-width:100%; height:auto; display:block; margin:auto
}

/* Intro */

#intro {
width:100%; background-image:url("../images/wood-background.jpg"); background-position:top center; background-size:cover;
border-bottom:solid 3px #e31b23; padding-top:50px; padding-bottom:50px; 
box-shadow:inset 1px, 2px, 3px, .5px rgba(0,0,0,0.3)
}

#intro img {
width:70px; height:auto; display:block; margin:auto
}

#intro h2 {
font-size:16px; line-height:20px; font-weight:800; color:#000000; display:flex; width:100%; justify-content:center; align-items:center; text-align:center;
padding-bottom:30px; text-transform:uppercase
}

#intro h2:before,
#intro h2:after {
content: ''; border-top:3px solid #e31b23; margin:0 20px 0 0; flex:1 0 20px; 
box-shadow: 1px 2px 3px .5px rgba(0,0,0,0.3)
}

#intro h2:after {
margin:0 0 0 20px
}

#intro h3 {
font-size:38px; line-height:44px; font-weight:800; color:#000000
}

#intro h4 {
font-size:26px; line-height:34px; font-weight:800; color:#004f5a; display:flex; width:100%; justify-content:center; align-items:center; text-align:center
}

#intro h4:before,
#intro h4:after {
content: ''; border-top: 3px solid #004f5a; margin:0 20px 0 0; flex:1 0 20px
}

#intro h4:after {
margin:0 0 0 20px
}

#intro p {
font-size:20px; line-height:30px; font-weight:800; color:#000000; padding-top:20px
}

.intro-body {
width:100%; max-width:1160px; margin:auto; text-align:center
}

.intro-box {
width:19%; min-width:150px; display:inline-block; padding:20px; vertical-align:top
}

/* Testimonials */

#hp-testimonials {
width:100%; background-color:#f0f0f0; background-image:url("../images/hp-testimonials.jpg"); background-position:right; background-repeat:no-repeat;
padding-top:100px; padding-bottom:100px; border-bottom:solid 2px #979797; 
box-shadow:inset 1px, 2px, 3px, .5px rgba(0,0,0,0.3)
}

#hp-testimonials p {
font-size:23px; line-height:40px; color:#000000; font-weight:800
}

#hp-testimonials p.name {
font-size:18px; line-height:25px; text-transform:uppercase
}

#hp-testimonials img.ql {
margin-right:5px; position:relative; top:-5px
}

#hp-testimonials img.qr {
margin-left:5px; position:relative; top:-5px
}

#hp-testimonials .hp-testimonials-body {
width:100%; max-width:1200px; padding-left:20px; padding-right:300px; margin:auto
}

/* Responsive CSS */

@media only screen and (max-width: 900px) {	
#hp-testimonials {
padding-right:30px
}
	
#hp-testimonials .hp-testimonials-body {
padding-right:20px
}
}

@media only screen and (max-width: 800px) {
.hp-products-body {
padding-bottom:45px
}
	
.hp-product {
width:100%; display:block
}
	
#hp-banner-mobile {
width:100%
}
	
#hp-banner-mobile img {
width:100%; height:auto
}
	
#hp-banner-mobile h1 {
font-size:40px; font-weight:800; list-style:50px; color:#000000
}

#hp-banner-mobile h2 {
font-size:22px; list-height:30px; color:#000000
}

.hp-banner-mobile-body {
width:100%; padding-left:20px; padding-right:20px; padding-top:30px; padding-bottom:30px; background:#fafafa; text-align:center
}
	
.hp-products-body {
padding-left:0px; padding-right:0px
}

#hp-testimonials {
padding-right:30px
}
}
	
@media only screen and (max-width: 700px) {	
#search-bar div.search-form-wrapper, #search-bar div.search-text-wrapper {
width:100%; float:none
}
}

@media only screen and (max-width: 550px) {	
#carousel-thumbs h2 {
font-size:12px; line-height:20px
}
}