
@charset "utf-8";
/* CSS Document */


body:before
{
content: "";
position: fixed;
top: -10px;
left: 0px;
width: 100%;
height: 10px;
z-index: 100;
-webkit-box-shadow: 0px 1px 10px #333;
-moz-box-shadow: 0px 1px 10px #333;
box-shadow: 0px 1px 10px #333;
z-index:10000;
}

html,
body{
overflow-x:hidden !important;
}

.col-sm-align-bottom,
.col-sm-align-middle{
display:table;
table-layout:fixed;
width:100% !important;
padding-left:15px;
padding-right:15px;
box-sizing:content-box;
}

.col-sm-align-bottom *[class*='col-sm-']{
display:table-cell;
vertical-align:bottom;
float:none;
table-layout:fixed;
}

.col-sm-align-middle *[class*='col-sm-']{
display:table-cell;
vertical-align:middle;
float:none;
}



/**
 * Visual Composer Patches
**/


.vc_row.vc_row-flex::after, .vc_row.vc_row-flex::before{
display:block !important;
}

.vc_row.vc_row-o-columns-bottom::after, .vc_row.vc_row-o-columns-middle::after, .vc_row.vc_row-o-columns-top::after{
height:auto;
visibility:visible !important;
}


/**
 * Universal Classes
**/


.bottom-tear{
position:relative;
width:100%;
z-index:222;
}

.bottom-tear:after{
content:"";
position:absolute;
bottom:0px;
left:0px;
width:100%;
height:100px !important;
background:url(../images/bottom-tear.png);
background-position:bottom center;
background-repeat:repeat-x;
background-size:800px;
z-index:333;
}

.top-tear{
position:relative;
width:100%;
z-index:222;
}

.top-tear:before{
content:"";
position:absolute;
top:-30px;
left:0px;
width:100%;
height:100px !important;
background:url(../images/top-tear.png);
background-position:top center;
background-repeat:repeat-x;
background-size:800px;
z-index:333;
}

.wood-background{
background:#363537;
background-size:cover;
background-attachment:scroll;
background-position:center center;
position:relative;
padding-top:100px;
padding-bottom:100px;
overflow-x:hidden;
}

.wood-background:before{
content:"";
position:absolute;
width:10000px;
height:100px !important;
top:0;
left:0;
background:url(../images/top-tear.png);
background-size:800px;
background-repeat:repeat-x;
background-position:top center;
z-index:2;
}

.wood-background:after{
content:"";
position:absolute;
width:10000px;
height:100px !important;
bottom:0;
left:0;
background:url(../images/bottom-tear.png);
background-size:800px;
background-repeat:repeat-x;
background-position:bottom center;
z-index:2;
}

.wood-background,
.wood-background h1,
.wood-background h2,
.wood-background h3,
.wood-background h4,
.wood-background h5,
.wood-background h6,
.wood-background p,
.wood-background a{
color:#ffffff;
}

.big-header{
font-size:42px;
color:#555555;
}

.wood-background .big-header,
.white-header{
color:#ffffff;
text-shadow:0px 2px 7px #000000;
}

.responsive-map{
position: relative;
padding-bottom: 75%;
height: 0;
overflow: hidden;
}

.responsive-map iframe{
position:Absolute;
top:0;
left:0;
width:100% !important;
height:100% !important;
}

.header-nav .left-padding{
padding-left:15px;
}

.banner{
position:relative;
display:inline-block;
background:#A83641;
color:#ffffff;
padding:20px 25px;
}

.banner:before{
position:absolute;
content:"";
width:50%;
height:13px;
left:0;
bottom:-13px;
background: -moz-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -webkit-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -o-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -ms-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: linear-gradient(to right bottom, #A83641 50%, transparent 50%);
background-repeat:no-repeat;
}

.banner:after{
position:absolute;
content:"";
width:50%;
height:13px;
right:0;
bottom:-13px;
background: -moz-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -webkit-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -o-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -ms-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: linear-gradient(to left bottom, #A83641 50%, transparent 50%);
background-repeat:no-repeat;
}


/**
 * Site Header
**/

#wpadminbar{
z-index:9999999999999;
}


#site-header{
text-align:center;
background:transparent;
background-size:cover;
background-position:center center;
height:80px;
font-family:'Alfa Slab One';
white-space:nowrap;
position:relative;
z-index:20000;
margin-top:40px;
}

#site-header a:hover{
opacity:1;
}

.header-top{
background:#363537;
color:#ffffff;
font-family:"Source Sans Pro";
font-weight:400;
font-size:17px;
padding-top:5px;
padding-bottom:5px;
position:relative;
position:fixed;
top:0;
left:0;
width:100%;
z-index:200000;
box-shadow:0px 3px 5px rgba(0,0,0,.5);
}

.admin-bar .header-top{
top:32px;
}

.header-top-right{
text-align:right;
}

.header-top-left .glyphicon,
.header-top-right .glyphicon{
vertical-align:middle;
display:inline-block;
font-size:20px;
margin-right:10px;
margin-top:-5px;
}

.header-top a{
color:#ffffff;
}


#site-header>.container{
position:relative;
}

#site-header .header-left-nav,
#site-header .header-right-nav{
width:35%;
display:inline-block;
margin:0px;
white-space:normal;
vertical-align:top;
}

#site-header .header-left-nav{
float:left;
}

#site-header .header-right-nav{
float:right;
}

.logo-container{
width:300px;
display:inline-block;
margin:0px;
white-space:normal;
vertical-align:top;
position:absolute;
top:0;
left:50%;
transform:translateX(-50%);
-webkit-transform:translateX(-50%);
-ms-transform:translateX(-50%);
z-index:200000000;
text-align:center;
}

.admin-bar .logo-container{
top:32px;
}

.logo-container img{
max-width:100%;
}

#mobile-header-logo{
display:none;
}

.logo-container a:hover{
opacity:1;
}

#site-header>.container,
#site-header .header-nav-container,
#site-header .header-nav{
height:100%;
}

#site-header .header-nav>ul{
white-space:nowrap;
}

#site-header .header-nav>ul>li{
white-space:normal;
box-sizing:border-box;
width:33%;
display:inline-block;
vertical-align:top;
text-align:center;
position:relative;
}

#site-header .header-nav>ul>li>a{
display:inline-block;
color:#555555;
font-size:20px;
line-height:80px;
text-decoration:none;
cursor:pointer;
width:100%;
position:relative;
z-index:7;
padding-top:20px;
padding-bottom:20px;
}

#site-header .header-nav>ul>li:hover>a{
color:#ffffff;
}

#site-header .header-nav>ul>li:hover>.menu-hover-ribbon{
margin-top:0px;
opacity:1;
transform:scaleY(1);
-webkit-transform:scaleY(1);
-ms-transform:scaleY(1);
}

#site-header .header-nav>ul>li>.menu-hover-ribbon{
background:#A83641;
color:#ffffff;
width:110%;
height:125px;
line-height:105px;
font-size:27px;
position:relative;
position:absolute;
top:0px;
left:-5%;
cursor:pointer;
z-index:5;
transition:all .2s;
-webkit-transition:all .2s;
transform:scaleY(0);
-webkit-transform:scaleY(0);
-ms-transform:scaleY(0);
transform-origin:0 0;
-webkit-transform-origin:0 0;
-ms-transform-origin:0 0;
opacity:0;
box-shadow:0px 12px 20px -10px #000000;
}

#site-header .header-nav>ul>li>.menu-hover-ribbon:after{
content:"";
width:50%;
height:20px;
position:absolute;
bottom:-20px;
left:0px;
background: -moz-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -webkit-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -o-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -ms-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: linear-gradient(to right bottom, #A83641 50%, transparent 50%);
background-repeat:no-repeat;
}

#site-header .header-nav>ul>li>.menu-hover-ribbon:before{
content:"";
width:50%;
height:20px;
background:#A83641;
position:absolute;
bottom:-20px;
right:0px;
background: -moz-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -webkit-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -o-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -ms-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: linear-gradient(to left bottom, #A83641 50%, transparent 50%);
background-repeat:no-repeat;
}

.mobile-nav-button{
display:none;
}

#site-header .header-nav>ul>li>ul{
background:#A83641;
position:absolute;
left:-5%;
width:110%;
z-index:10;
top:50px;
transition:all .2s;
-webkit-transition:all .2s;
opacity:0;
box-shadow:0px 7px 25px -10px #000000;
padding-bottom:15px;
padding-left:10px;
padding-right:10px;
}

#site-header .header-nav>ul>li>ul a{
color:#ffffff;
font-family:'Source Sans Pro';
font-weight:300;
font-size:15px;
}

#site-header .header-nav>ul>li>ul>li>a{
font-weight:700;
}


#site-header .header-nav>ul>li.menu-item-has-children .menu-hover-ribbon{
margin-top:0px;
}

#site-header .header-nav>ul>li.menu-item-has-children:after{
content:"";
width:110%;
height:20px;
position:absolute;
bottom:0;
left:-5%;
background:#A83641;
z-index:10;
opacity:0;
transition:opacity .2s;
-webkit-transition:opacity .2s;
}

#site-header .header-nav>ul>li.menu-item-has-children:hover:after{
opacity:1;
}

#site-header .header-nav>ul>li>ul:after{
content:"";
width:50%;
height:20px;
position:absolute;
bottom:-20px;
z-index:200;
left:0px;
background: -moz-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -webkit-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -o-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: -ms-linear-gradient(to right bottom,  #A83641 50%, transparent 50%);
background: linear-gradient(to right bottom, #A83641 50%, transparent 50%);
background-repeat:no-repeat;
}

#site-header .header-nav>ul>li>ul:before{
content:"";
width:50%;
height:20px;
background:#A83641;
position:absolute;
bottom:-20px;
right:0px;
background: -moz-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -webkit-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -o-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: -ms-linear-gradient(to left bottom,  #A83641 50%, transparent 50%);
background: linear-gradient(to left bottom, #A83641 50%, transparent 50%);
background-repeat:no-repeat;
}

#site-header .header-nav>ul>li:hover>ul{
top:120px;
opacity:1;
}

#site-header .header-nav>ul>li>ul a:hover{
text-decoration:underline;
}


#site-header .header-nav>ul>li>a>.glyphicon{
display:none;
}



/**
 * Generic page
**/

#page-content{
position:relative;
top:0;
padding-top:130px;
width:100%;
}




/**
 * About Page
**/

.about-slideshow{
height:550px;
overflow:hidden;
position:relative;
}

.about-slideshow .vc_images_carousel{
position:absolute;
top:225px !important;
left:0;
transform:translateY(-50%);
-webkit-transform:translateY(-50%);
-ms-transform:translateY(-50%);
}

.about-slideshow img{
min-width:100%;
min-height:100%;
height:auto;
vertical-align:middle;
}





/**
 * Portfolio Page
**/








/**
 * Blog Home Page
**/

#blog-page-header{
text-align:center;
}

.masonry-container{
text-align:center;
position:relative;
padding-bottom:100px;
margin-top:30px;
}

.blog-excerpt-container{
display:inline-block;
width:30%;
margin-right:1%;
margin-left:1%;
background-color:#EAF2EF;
text-align:center;
margin-bottom:20px;
box-shadow:0px 0px 8px -1px #000000;
}

.blog-excerpt-container img.wp-post-image{
display:inline-block;
width:100%;
}

.blog-excerpt-container > a{
display:inline-block;
position:relative;
}

.blog-excerpt-container > a:after{
content:"";
display:inline-block;
position:absolute;
height:100px;
width:100%;
bottom:0;
left:0;
background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.9))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.9) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.9) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.9) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.9) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}

.blog-excerpt-text-container{
padding:25px 20px;
}

.blog-excerpt-date{
font-size:30px;
}

.blog-excerpt-title{
font-size:25px;
}

nav.blog-navigation{
display:inline-block;
width:100%;
position:absolute;
bottom:0px;
left:0;
margin:auto;
}

.blog-navigation a:first-of-type,
.blog-navigation a:last-of-type{
text-decoration:none;
border:none;
background:#A83641;
background-position:center center;
border-bottom:5px solid rgba(0,0,0,.8);
background-size:cover;
color:#ffffff;
border-radius:10px;
font-family:'Alfa Slab One';
font-size:20px;
padding:20px 35px;
display:inline-block;
text-transform:uppercase;
cursor:pointer;
}

.blog-navigation a:first-of-type:hover,
.blog-navigation a:last-of-type:hover{
border-bottom:3px solid rgba(0,0,0,.8);
margin-top:2px;
color:#ffffff;
text-decoration:none;
opacity:1;
}





/**
 * Blog Single Page
**/

.blog-post-title{
text-align:center;
}

div.comments-container{
background:#363537;
background-size:cover;
width:100%;
height:auto;
padding-top:80px;
padding-bottom:100px;
color:#ffffff;
}

.comments-container hr{
background-image:url(../images/footer-hr.png);
background-repeat:no-repeat;
}


.comments-title{
text-align:center;
color:#ffffff;
}

.comment-list{
background:rgba(0,0,0,.5);
padding:20px 30px;
margin-top:25px;
}

.comment-list #reply-title{
color:#ffffff;
}

.comment{
margin-bottom:30px;
}

.comment-meta{
color:#ffffff;
font-weight:bold;
}

.comment-list ul.children{
margin-left:45px;
}

.comment-form-comment{
margin-top:15px;
}

div.comment-form-author,
div.comment-form-email{
margin-top:15px;
}


.comment-form-comment label[for=comment]{
display:block;
position:absolute;
width:calc(100% - 30px);
padding-top:7px;
padding-bottom:7px;
border-top-right-radius:5px;
border-top-left-radius:5px;
text-align:center;
}

.comment-form-comment #comment{
margin-top:40px;
}

#commentform .form-submit input[type=submit]{
margin-top:20px;
}






/**
 * Site Footer 
**/



#site-footer{
background:#363537;
background-size:cover;
background-position:center center;
background-attachment:scroll;
position:relative;
min-height:200px;
padding-top:100px;
font-weight:400;
color:#ffffff;
}

#site-footer:before{
content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:200px !important;
background:url(../images/top-tear.png);
background-position:top center;
background-size:800px;
background-repeat:repeat-x;
}

#site-footer a{
color:#ffffff;
text-decoration:underline;
}

#site-footer a:hover{
opacity:1;
}

#site-footer h2.widgettitle{
font-family:"Alfa Slab One";
color:#ffffff;
text-align:center;
font-size:25px;
line-height:120%;
margin-bottom:15px;
text-transform:none;
}


#site-footer hr{
//background-image:url(../images/footer-hr.png);
width:100%;
height:1px;
border:none;
background:#ffffff;
}

.design-credits{
font-family:"Source Sans Pro";
color:#ffffff;
font-size:16px;
margin-bottom:15px;
}

#site-footer .design-credits a{
color:#ffffff;
transition:all .2s;
-webkit-transition:all .2s;
text-decoration:none;
}

#site-footer .design-credits a:hover{
text-decoration:none;
color:#ffffff;
}

.copyright-container{
text-align:right;
font-family:"Source Sans Pro";
color:#ffffff;
margin-bottom:15px;
}

.copyright{
font-size:16px;
}








/**
 * Ninja Forms Styling
**/


.field-wrap.label-right,
.field-wrap.label-left{
display:table;
width:100%;

}

label,
input,
.field-wrap.label-right label,
.field-wrap.label-left label,
.field-wrap.label-right .ninja-forms-field,
.field-wrap.label-left .ninja-forms-field{
display:table-cell !important;
}

.field-wrap.label-above label{
display:block !important;
}

.field-wrap.label-right label,
.field-wrap.label-left label{
text-align:center;
height:15px;
padding:0px;
}

.field-wrap.label-left label,
.field-wrap.label-right .ninja-forms-field{
border-top-left-radius:5px;
border-bottom-left-radius:5px;
}

.field-wrap.label-right label,
.field-wrap.label-left .ninja-forms-field{
border-top-right-radius:5px;
border-bottom-right-radius:5px;
}

.field-wrap.label-right .ninja-forms-field,
.field-wrap.label-left .ninja-forms-field{
width:100%;
}

.field-wrap.label-left .ninja-forms-field,
.field-wrap.label-left .ninja-forms-star-rating-control,
.field-wrap.label-right .ninja-forms-field,
.field-wrap.label-right .ninja-forms-star-rating-control{
margin-left:0px !important;
margin-right:0px !important;
}

label,
.ninja-forms-form label{
background:#555555;
color:#ffffff;
}

.field-wrap.label-above label{
padding-top:7px;
padding-bottom:7px;
border-top-right-radius:5px;
border-top-left-radius:5px;
text-align:center;
margin-bottom:0px;
}

.field-wrap.label-above .ninja-forms-field:not(input[type=submit]){
border-bottom-left-radius:5px;
border-bottom-right-radius:5px;
}

.ninja-forms-response-msg:not(:empty){
background:#A83641;
color:#ffffff;
border-radius:5px;
padding:5px 20px;
}
