/*   Lindley Architects CSS v0.7 - thatweb.co - March 2019  */


/* Fonts */



/*   Helpers   */
html {
	font-size:16px;
}
body {
    /* font-family: 'Roboto', sans-serif; */
    font-family: 'Open Sans', sans-serif !important;
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.5;
	color: rgba(34,34,34,1);
    background-color: rgba(255,255,255,1);
    overflow:hidden;
}
html, body {
    max-width: 100%;
    overflow-x: hidden;
}
main{
}
.breadcrumb{
	background-color: transparent;
	margin:0;
	padding: 0;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .display-1, .display-2, .display-3, .display-4  {
	margin-bottom: 0.5rem;
	font-weight: 300;
}
h1 span, .h1 span, h2 span, .h2 span, h3 span, .h3 span, h4 span, .h4 span, h5 span, .h5 span, h6 span, .h6 span, .display-1 span, .display-2 span, .display-3 span, .display-4 span  {
	color:inherit;
}
h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h4 small, .h4 small, h5 small, .h5 small, h6 small, .h6 small, .display-1 small, .display-2 small, .display-3 small, .display-4 small  {
	display:block;
	font-size: 0.6em;
	color: #6c757d!important;
}
.display-5 {
    font-size: 3rem;
    line-height: 1.2;
}
.display-6 {
    font-size: 2.5rem;
    line-height: 1.2;
}
.section-title{
    font-size: 2rem;
}
hr {
    display: block;
	clear: both;
	margin:0;
}
a{
	color:rgba(67,175,206,1);
}
a:hover, a:focus, a:active{
	color:rgba(67,175,206,1);
	outline: none;
	text-decoration: none;
}
p a:hover{
	text-decoration: underline;
}
a.btn:active:focus{
	box-shadow:none!important;
}
a.text-black:link{
	color: rgba(34,34,34,1);
}
a.text-black:hover{
	color: rgba(67,175,206,1);
}
button:focus {
    outline: none;
    outline:none;
}
/* a[href^="tel:"] {
    color: rgba(34,34,34,1);
    text-decoration: none;
} */
.text-wrap{
	white-space:normal!important;
}
.text-nowrap{
	white-space:nowrap!important;
}
.text-shadow {
    text-shadow: 1px 1px 1px rgba(0,0,0,0.8);
}
.text-shadow-white {
    text-shadow: 1px 1px 1px rgba(255,255,255,0.8);
}
.text-black{
	color: rgba(34,34,34,1);
}
.text-primary{
	color: rgba(67,175,206,1)!important;
}
.text-light {
    color: rgb(191,190,190,1)!important
}
.bg-primary{
	background-color: rgba(67,175,206,1)!important;
}
.truncate{
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}
.device-identifier {
	position: fixed;
	bottom: 10px;
	left: 10px;
	border: 1px dashed #ccc;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 10000;
	color: #fff;
	text-align: center;
	padding: 5px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	display: none;
}
.device-identifier a {
	color:#fff;
}
.btn, .btn:focus, .btn:active{
	box-shadow: 0 1px 3px rgba(0,0,0,0), 0 1px 2px rgba(0,0,0,0);
  	/* transition: all 0.3s cubic-bezier(.25,.8,.25,1)!important; */
	border-radius: 0;
	border:0;
	white-space:normal!important;
    text-shadow:none!important;
}
.btn:hover{
	box-shadow: 0 14px 28px rgba(0,0,0,0.15), 0 10px 10px rgba(0,0,0,0.15);
	outline: none;
}
.btn-primary, .btn-primary:focus, .btn-primary:active{
	background-color: rgba(67,175,206,1);
	border: 0;
}
.btn-primary:hover {
	background-color: rgb(57, 151, 177);
	border: 0;
	color:#fff;
}
.btn-default{
	background-color: #fff;
}
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-primary:not([disabled]):not(.disabled).active, .btn-primary:not([disabled]):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
	background-color: rgba(67,175,206,1);
	color:#fff;
	outline:none;
	box-shadow: 0 14px 28px rgba(0,0,0,0.15), 0 10px 10px rgba(0,0,0,0.15);
}
.btn.text-muted:hover{
    color:rgba(67,175,206,1)!important;
}
strong, b {
    font-weight: 400;
}
.font-weight-light{
    font-weight:300!important;
}
.font-weight-bold{
    font-weight:400!important;
}
.font-weight-xbold{
    font-weight:700!important;
}
.animate {
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: 	all 0.5s ease-in-out;
	-o-transition: 		all 0.5s ease-in-out;
	transition: 		all 0.5s ease-in-out;
}
.animate-slow {
	-moz-transition: 	all 0.8s ease-in-out;
	-o-transition: 		all 0.8s ease-in-out;
	-webkit-transition: all 0.8s ease-in-out;
	transition: 		all 0.8s ease-in-out;
}
.animate-fast {
	-moz-transition: 	all 0.2s ease-in-out;
	-o-transition: 		all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	transition: 		all 0.2s ease-in-out;
}
.border-vb{
	border-top:3px solid rgba(67,175,206,1);
}
.border-light {
    border-color: #f1f1f1!important;
}
.border-1{
	border-width: 1px!important;
}
.border-2{
	border-width: 2px!important;
}
.border-3{
	border-width: 3px!important;
}
.border-4{
	border-width: 4px!important;
}
.border-5{
	border-width: 5px!important;
}
.border-10{
	border-width: 10px!important;
}
.shadow-0 {
	box-shadow: none;
}
.shadow {
	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}
.shadow-2 {
	box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
}
.shadow-3 {
	box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
}
.shadow-4 {
	box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
}
.shadow-5 {
	box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
}
.vh-10 {
	min-height:10vh;
}
.vh-20 {
	min-height:20vh;
}
.vh-25 {
	min-height:25vh;
}
.vh-30 {
	min-height:30vh;
}
.vh-40 {
	min-height:40vh;
}
.vh-50 {
	min-height:50vh;
}
.vh-60 {
	min-height:60vh;
}
.vh-70 {
	min-height:70vh;
}
.vh-75 {
	min-height:75vh;
}
.vh-80 {
	min-height:80vh;
}
.vh-90 {
	min-height:90vh;
}
.vh-100 {
	min-height:100vh;
}
.mx-50, .mx-60, .mx-70, .mx-80, .mx-90{
	margin-left:15px!important;
	margin-right:15px!important;
}
.bg-cover{
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.bg-cover-x{
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center center;
}
.bg-cover-y{
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center center;
}
.bg-fixed{
	background-attachment: scroll;
}
.bg-pos-t{
	background-position: center top;
}
.bg-pos-c{
	background-position: center center;
}
.bg-pos-b{
	background-position: center bottom;
}
.bg-black-grad-tb {
	background: -moz-linear-gradient(top, rgba(0,0,0,0.555) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0,0,0,0.555) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0,0,0,0.555) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}
.bg-black-grad-bt {
    background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.555) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.555) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.555) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}
.bg-black-trans{
	background-color: rgba(0,0,0,0.5)!important;
}
.border-trans{
	border: 1px solid rgb(222,226,230,0.5)!important;
}
.bg-black-5 {
	background-color:	rgba(0, 0, 0, 0.05);
}
.bg-black-10 {
	background-color:	rgba(0, 0, 0, 0.1);
}
.bg-black-20 {
	background-color:	rgba(0, 0, 0, 0.2);
}
.bg-black-25 {
	background-color:	rgba(0, 0, 0, 0.25);
}
.bg-black-30 {
	background-color:	rgba(0, 0, 0, 0.3);
}
.bg-black-40 {
	background-color:	rgba(0, 0, 0, 0.4);
}
.bg-black-50 {
	background-color:	rgba(0, 0, 0, 0.5);
}
.bg-black-60 {
	background-color:	rgba(0, 0, 0, 0.6);
}
.bg-black-70 {
	background-color:	rgba(0, 0, 0, 0.7);
}
.bg-black-75 {
	background-color:	rgba(0, 0, 0, 0.75);
}
.bg-black-80 {
	background-color:	rgba(0, 0, 0, 0.8);
}
.bg-black-90 {
	background-color:	rgba(0, 0, 0, 0.9);
}
.bg-black-100 {
	background-color:	rgba(0, 0, 0, 1);
}
.bg-white-10 {
	background-color:	rgba(255, 255, 255, 0.1);
}
.bg-white-20 {
	background-color:	rgba(255, 255, 255, 0.2);
}
.bg-white-25 {
	background-color:	rgba(255, 255, 255, 0.25);
}
.bg-white-30 {
	background-color:	rgba(255, 255, 255, 0.3);
}
.bg-white-40 {
	background-color:	rgba(255, 255, 255, 0.4);
}
.bg-white-50 {
	background-color:	rgba(255, 255, 255, 0.5);
}
.bg-white-60 {
	background-color:	rgba(255, 255, 255, 0.6);
}
.bg-white-70 {
	background-color:	rgba(255, 255, 255, 0.7);
}
.bg-white-75 {
	background-color:	rgba(255, 255, 255, 0.75);
}
.bg-white-80 {
	background-color:	rgba(255, 255, 255, 0.8);
}
.bg-white-90 {
	background-color:	rgba(255, 255, 255, 0.9);
}
.bg-white-100 {
	background-color:	rgba(255, 255, 255, 1);
}
.tint-bw{
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}
.tint-color{
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    filter: brightness(1);
}
.tint-dark{
    -webkit-filter: brightness(.2);
    filter: brightness(.2);
}
.tint-light{
    -webkit-filter: brightness(2);
    filter: brightness(2);
}
.blur{
    filter: blur(3px);
}

.sticky-top{
    top:100px;
}
.float-tl{
	position:absolute;
	top: .5rem;
	left: .5rem;
}
.float-tr{
	position:absolute;
	top: .5rem;
	right: .5rem;
}
.float-bl{
	position:absolute;
	bottom: .5rem;
	left: .5rem;
}
.float-br{
	position:absolute;
	bottom: .5rem;
	right: .5rem;
}
.blockquote-footer::before {
    content: "";
}

/*  END HELPERS  */


/* BACK TO TOP */
.back-to-top {
	cursor: pointer;
	position: fixed;
	bottom: 20px;
	right: 20px;
	display:none;
	z-index:10;
	border: 1px solid #fff;
}


/*  FORMS  */
.form-control:focus, .custom-select:focus {
	outline: none;
	box-shadow: none;
}


/*  NAVBAR  */
.navbar {
	z-index: 1021;
}
.topnav{
    padding:0 0 5px 0;
}
.topnav-main{

}
.navbar-fat {
    background-color: rgba(255,255,255,0.9);
}
.navbar-thin {
    background-color: rgba(255,255,255,0.9);
    box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
}
.navbar-brand{
	margin:0;
	padding:0;
}
.navbar-fat .navbar-brand img {
	padding: 0;
    max-height:20px;
}
.navbar-thin .navbar-brand img {
	padding: 0;
    max-height:20px;
}
.navbar-nav{
    border-top:1px solid rgba(0,0,0,.1);
    margin-top:10px;
    padding-top:10px;
}
.navbar-nav .nav-item {
	margin-bottom:5px;
}
.navbar-nav .nav-link {
	color: rgba(34,34,34,1);
	font-size:0.85rem;
    padding: .7rem .6rem;
    border-radius: 0;
    border-bottom: 3px solid rgba(6255,255,255,0);
    -webkit-transition: all .5s;
    transition: all .5s;
}
.navbar-nav .nav-link:hover{
    border-bottom: 3px solid rgba(67,175,206,1);
}
.navbar-nav li.active .nav-link, .navbar-nav li.active .nav-link:hover {
	color: rgba(255,255,255,1);
	background-color: rgba(67,175,206,1);
}
.navbar-nav-icons.navbar-nav{
    border-top:1px solid rgba(0,0,0,.1);
    margin-top:0;
    padding-top:0;
}
.navbar-nav-icons i{
    font-size:1rem;
}
.navbar-nav-icons .nav-item {
	margin-bottom:0;
}



.subnav-pills .nav-link {
	background-size:0;
	background-position:-100px -100px;
	padding:.75rem 1rem;
}
.subnav-pills .nav-link {
    border-radius: 0;
	font-size:1rem;
}
.subnav-pills .nav-link small{
	font-size:0.75rem;
}
.subnav-pills .nav-link.active{
	background-color: #f8f9fa;
	color: rgba(34,34,34,1);
	font-weight:700;
    position: relative;
    left: 1px;
    z-index: 1;
    border: 1px solid #f1f1f1;
	border-right: 0;
	padding:2rem 1rem 2rem 4.5rem;
	background-size:auto 85%;
	background-position: 0 center;
	background-repeat: no-repeat;
	background-blend-mode: multiply;
}
.subnav-pills .nav-link.active h6{
	font-weight:700;
}
.subnav-pills .nav-link small{
	color: rgba(34,34,34,1);
}
.subnav-pills .nav-link:hover{
	background-color: #f8f9fa !important;
	color:rgba(67,175,206,1)!important;
}


.card-body .nav-link:hover{
	background-color: rgba(67,175,206,1);
	color: rgba(255,255,255,1);
}

.subnav{
	
}
.subnav.navbar-expand-md .subnav-current-mob{
	display:flex!important;
}
.subnav-toggle{
	color: rgba(34,34,34,1);
}
.subnav-toggle:hover, .subnav-toggle.nav-link:hover{
	color: rgba(67,175,206,1)!important;
	background-color: rgba(255,255,255,1)!important;
}
.subnav .nav-link{
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	padding: .5rem .1rem .5rem 1rem;
}
.subnav ul{
    margin-left:1rem;
}
.subnav ul:first-child{
    margin-left:0;
    margin-bottom:1rem;
}
.subnav ul li .nav-link:before{
}
.subnav ul li .nav-link.active:before{/* active subnav item */
	font-family: "Font Awesome 5 Free";
  	font-weight: 900;
	content:"\f0da"!important;
    margin-right:.5rem;
    color:rgba(230,230,230,1);
}
.subnav-related li .nav-link:before{ /* related link */
	font-family: "Font Awesome 5 Free";
  	font-weight: 900;
	content:"\f105";
    margin-right:.5rem;
    font-size: .8rem;
    color:rgba(225,225,225,1);
}
.subnav .nav-link{
	color: rgba(67,175,206,1);
	font-size:0.85rem;
}
.subnav .nav-link:hover{
	background-color: rgba(67,175,206,1);
	color: rgba(255,255,255,1);
}
.subnav li .nav-link.active, .subnav li .nav-link.active:hover{
	font-weight: 700;
}
.subnav ul:nth-child(2) {
	border-left: 2px solid rgba(245,245,245,1);
}

.nav-item:before{
	content: ""!important;
	margin:0!important;
}


/* WIDGETS */
.widgets{
}
.widget{
    margin-top: 1.5rem;
}
.widget:first-child{
	margin-top: 0;
}
.widget.card{
    padding:.7rem .9rem;
}
.widgets-trigger{
	position: fixed;
	top:50%;
	right:0px;
	z-index:1000;
}
.widget .btn{
	padding:.75rem;
}
.widgets-trigger .btn{
}
.widgets-trigger .btn:hover{
	padding-right:30px;
}
.widgets-trigger .btn span:before{
	content:"";
}
.widgets-trigger .btn:hover span:before{
	content:"More";
	margin-left:10px;
}
.widgets-trigger .btn:hover i{
	-webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
.widget .nav li a{
	font-size:.9rem;
	color:rgba(108,117,125,1);
	padding: .5rem;
}
.widget .nav li:hover a{
	font-size:.9rem;
	color:rgba(255,255,255,1);
	background-color: rgba(67,175,206,1);
}

/* ----- MODAL ----- */
body.modal-open, body.modal-open .topnav {
	padding-right:0!important;
}
.modal.modal-left .modal-dialog {
	position: fixed;
	margin: auto;
	width: 80%;
	max-width: 80%;
	height: 100%;
	-webkit-transform: translate3d(0%, 0, 0);
	-ms-transform: translate3d(0%, 0, 0);
	-o-transform: translate3d(0%, 0, 0);
	transform: translate3d(0%, 0, 0);
}
.modal.modal-left .modal-content {
	height: 100%;
	overflow-y: auto;
}
.modal.modal-left .modal-body {
	padding: 15px 15px 80px;
}
.modal.modal-left.fade .modal-dialog {
	left: -80%;
	-webkit-transition: opacity 0.3s linear, left 0.3s ease-out;
	-moz-transition: opacity 0.3s linear, left 0.3s ease-out;
	-o-transition: opacity 0.3s linear, left 0.3s ease-out;
	transition: opacity 0.3s linear, left 0.3s ease-out;
}
.modal.modal-left.fade.show .modal-dialog {
	left: 0;
}
.modal-content {
	border-radius: 0;
	border: none;
}
.modal-header {
	border-bottom-color: #eeeeee;
	background-color: #fafafa;
	background-color: rgba(67,175,206,1);
	color:#fff;
}

/* REVIEWS */
.card.reviews h4 span{
    color:rgba(34,34,34,1);
}

/* FOOTER */
footer{
}
footer .footer-links{
	font-size:0.9rem;
}
a.icon{
	color:rgba(150,150,150,1);
	text-decoration:none;
}
a.icon:hover, a.icon:focus{
	color:rgba(150,150,150,0.8);
}
a.icon-facebook:hover, a.icon-facebook:focus{
    color:#3b5998;
}
a.icon-twitter:hover, a.icon-twitter:focus{
    color:#1da1f2;
}
a.icon-google:hover, a.icon-google:focus{
    color:#ea4335;
}
a.icon-linkedin:hover, a.icon-linkedin:focus{
    color:#0077b5;
}
a.icon-houzz:hover, a.icon-houzz:focus{
    color:#7ac142;
}
footer .footerlogos{
    width:200px;
}
footer a.nav-link{
	background-color: none;
	color:rgba(34,34,34,1);
}
footer a.nav-link:hover{
	background-color: rgba(67,175,206,1);
	color:#fff;
}

footer .recaptcha img{
    max-width:60px;
}
footer .recaptcha a{
    text-decoration: none;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 0.9em;
    color: #6c757d;
}
footer .recaptcha a:hover, footer .recaptcha a:focus{
    color: #ddd;
}
.grecaptcha-badge{
    display:none;
}


/* FLICKITY */
.flickity-enabled.is-fade .flickity-slider > * {
    pointer-events: none;
    z-index: 0;
}
.flickity-enabled.is-fade .flickity-slider > .is-selected {
    pointer-events: auto;
    z-index: 1;
}
.flickity-prev-next-button {
    top: 45%;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    transform: translateY(-50%);
}
.flickity-button {
    position: absolute;
    background: hsla(0,0%,100%,.75);
    border: none;
    color: rgba(67,175,206,1);
}
.flickity-page-dots {
}


/*  FLICKITY HERO  */
.carousel-hero{
    margin-left: -15px;
}
.carousel-cell {
    width: 100%;
}
.hero-caption h1{
    font-size:2rem;
    padding-top:80px;
}
.hero-caption h2{
    font-size:1rem;
}
.hero-caption h3{
    font-size:1rem;
}
.hero-caption h4{
    font-size: 1.2rem;
    padding: 0 10px 0 20px;
}
.hero-caption h5{
    font-size:1rem;
}
.hero-small .row, .hero-medium .row, .hero-large .row {
    min-height:200px;
}
.hero-xlarge .row {
    min-height:400px;
}


/*  FLICKITY GALLERY  */
.carousel-gallery{
}
.carousel-gallery .carousel-cell {
    width: 80%;
    margin:0 5px;
}
.carousel-gallery .carousel-cell .img-wrapper {
    /* box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23); */
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: all 1s ease-out;
    transition:         all 1s ease-out;    
}
.carousel-gallery .carousel-cell .img-wrapper:hover {
    /* box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22); */
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    -webkit-transition: all 1s ease-out;
    transition:         all 1s ease-out;
}
.carousel-gallery .carousel-cell .play-icon{
    color:rgb(229,39,45,.9);
    font-size: 70px;
}


/*  FLICKITY SERVICE SLIDER  */
.feature-slider .carousel-cell{
    text-align: center;
}
.feature-slider  .title{
    margin:20px 0 10px 0;
    color:rgba(34,34,34,1);
}
.feature-slider  .desc{
    font-size: .8rem;
    color:rgba(108,117,125,1);
}



/*  ISOTOPE  */
.gallery-grid{
    margin:0 -10px;
}
.grid-sizer, .grid-item {
    width: 50%;
    padding:10px;
}
.grid-item-large {
    width: 100%;
}
.grid-item:hover {
}
.gallery-grid .grid-item .card .gallery-grid .grid-item .play-icon{
    color:rgb(229,39,45,.9);
    font-size: 60px;
}
.lnkLoadMoreGallery{
    
}

.project-detail-grid .grid-sizer, .project-detail-grid .grid-item{
    width: 100%;
}











figure.grid-hover-overlay {
    color: #fff;
    position: relative;
    overflow: hidden;
    margin: 0;
    width: 100%;
    background: rgba(67,175,206,.9);
    text-align: left;
  }
  figure.grid-hover-overlay img {
    max-width: 100%;
    opacity: 1;
    width: 100%;
    -webkit-transition: all 1.5s;
    transition: all 1.5s;
  }
  figure.grid-hover-overlay figcaption {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 30px 1em 30px 3em;
    width: 100%;
    display: flex;
    flex-direction: column;

  }
  figure.grid-hover-overlay figcaption::before {
    position: absolute;
    top: 30px;
    right: 30px;
    bottom: 30px;
    left: 100%;
    border-left: 3px solid rgba(255,255,255,0.8);
    content: '';
    opacity: 0;
    background-color: rgba(255,255,255,0);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
  }
  figure.grid-hover-overlay h2, figure.grid-hover-overlay p {
    margin: 0 0 5px;
    opacity: 0;
    -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
    transition: opacity 0.35s,-webkit-transform 0.35s,-moz-transform 0.35s,-o-transform 0.35s,transform 0.35s;
  }
  figure.grid-hover-overlay h2 {
    font-weight: 700;
    text-transform: uppercase;
    -webkit-transform: translate3d(30%, 0%, 0);
    transform: translate3d(30%, 0%, 0);
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
    font-size: 1.7rem;
  }
  .grid-item-large figure.grid-hover-overlay h2 {
    font-size: 3rem;
  }
  figure.grid-hover-overlay p {
    font-weight: 400;
    -webkit-transform: translate3d(0%, 30%, 0);
    transform: translate3d(0%, 30%, 0);
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  figure.grid-hover-overlay a {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    color: #ffffff;
  }
  figure.grid-hover-overlay:hover img {
    opacity: 0.2;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  figure.grid-hover-overlay:hover figcaption h2 {
    opacity: 1;
    -webkit-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
  }
  figure.grid-hover-overlay:hover figcaption p {
    opacity: 1;
    -webkit-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
  }
  figure.grid-hover-overlay:hover figcaption::before {
    background: rgba(255, 255, 255, 0);
    left: 30px;
    opacity: 1;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }




























.list-group-flush .list-group-item {
    padding: .75rem;
}
.list-group-flush .list-group-item:first-child {
    border-top:0;
}
.list-group-flush .list-group-item-action:focus .col-3, .list-group-flush .list-group-item-action:hover .col-3 {
    background-color: rgba(255,255,255,1)!important;
}


.link-list {
    
}
.widget .link-list{
}

.news-list .nav li a, .link-list .nav li a{
    color: rgba(108,117,125,1);
}
.widget .news-list{
    
}

.next-event{

}
.widget .next-event{
    
}

.upcoming-events{

}
.widget .upcoming-events{
    
}

.review-slider{
    text-align: center;
}
.review-slider h4{
    font-weight:bold;
}
.review-slider p{
    font-size:1.2rem;
    font-style: italic;
}
.widget .review-slider{
    text-align: left;
}
.widget .review-slider h4{
    font-size:1.2rem;
    font-weight:bold;
}
.widget .review-slider p{
    font-size:.9rem;
}

.modal-left .widget .review-slider{
    max-height:250px;
    overflow:hidden;
}






.ezsearch-search{

}
.ezsearch-summary{

}
.ezsearch-result-count{

}
.ezsearch-results{

}
.ezsearch-result{
	padding:10px;
	margin-bottom:10px;
	border-bottom: 1px solid #f7f7f7;
}
.ezsearch-result:hover {
	background:#f7f7f7;
}
.ezsearch-result h2{
	font-size: 1.5rem;
}
.ezsearch-result p{
	color: #6c757d;
}
.ezsearch-pager{

}
.ezsearch-pager .prev{
	margin-right:15px;
}
.ezsearch-pager .next{
	margin-left:15px;
}
.ezsearch-pager .page, .ezsearch-pager .next, .ezsearch-pager .prev{
	padding: 8px 10px;
    border: 1px solid #ddd;
    margin: 0 2px;
}
.ezsearch-pager .page:hover, .ezsearch-pager .next:hover, .ezsearch-pager .prev:hover{
	background:rgba(67,175,206,1);
	color:#fff;
	text-decoration: none;
}
.ezsearch-pager span.page{
	font-size: 1.2em;
	font-weight: 600;
	padding: 12px 16px!important;
}
.ezsearch-pager span.page:hover{
	background: #fff;
	color: rgba(34,34,34,1);
}




.ui-autocomplete-loading {
    background: white url("/css/base/images/ui-anim_basic_16x16.gif") right center no-repeat;
}

.ui-autocomplete {
    position: absolute;
    cursor: default;
    z-index: 9999 !important;
} 


.twcCookieDiv{
    position: fixed;
    bottom:0;
    left:15px;
    color:rgba(230,230,230,1);
    background:rgba(0,0,0,0.95);
    z-index: 9999;
    width:350px;
    padding:10px 10px 20px 10px;
    font-size:.8rem;
}


/* SERVICE TIMELINE */
.timeline {
	line-height: 1.4em;
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
  }
  .timeline h1, .timeline h2, .timeline h3, .timeline h4, .timeline h5, .timeline h6 {
	line-height: inherit;
  }
  
  /*----- TIMELINE ITEM -----*/
  .timeline-item {
	padding-left: 40px;
	position: relative;
  }
  .timeline-item:last-child {
	padding-bottom: 0;
  }
  
  /*----- TIMELINE INFO -----*/
  .timeline-info {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 3px;
	margin: 0 0 .5em 0;
	text-transform: uppercase;
	white-space: nowrap;
	color:#CCD5DB;
  }
  
  /*----- TIMELINE MARKER -----*/
  .timeline-marker {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 15px;
  }
  .timeline-marker:before {
	background: #CCD5DB;
	border: 3px solid transparent;
	border-radius: 100%;
	content: "";
	display: block;
	height: 15px;
	position: absolute;
	top: 4px;
	left: 0;
	width: 15px;
	transition: background 0.3s ease-in-out, border 0.3s ease-in-out;
  }
  .timeline-marker:after {
	content: "";
	width: 3px;
	background: #CCD5DB;
	display: block;
	position: absolute;
	top: 24px;
	bottom: 0;
	left: 6px;
  }
  .timeline-item:last-child .timeline-marker:after {
	content: none;
  }
  
  .timeline-item:not(.period):hover .timeline-marker:before {
	background: transparent;
	border: 3px solid #fff;
  }
  
  /*----- TIMELINE CONTENT -----*/
  .timeline-content {
	padding-bottom: 40px;
  }
  .timeline-content p:last-child {
	margin-bottom: 0;
  }
  
  /*----- TIMELINE PERIOD -----*/
  .period {
	padding: 0;
  }
  .period .timeline-info {
	display: none;
  }
  .period .timeline-marker:before {
	background: transparent;
	content: "";
	width: 15px;
	height: auto;
	border: none;
	border-radius: 0;
	top: 0;
	bottom: 30px;
	position: absolute;
	border-top: 3px solid #CCD5DB;
	border-bottom: 3px solid #CCD5DB;
  }
  .period .timeline-marker:after {
	content: "";
	height: 32px;
	top: auto;
  }
  .period .timeline-content {
	padding: 40px 0 70px;
  }
  .period .timeline-title {
	margin: 0;
  }
  
  /*----------------------------------------------
	  MOD: TIMELINE SPLIT
  ----------------------------------------------*/
  @media (min-width: 768px) {
	.timeline-split .timeline, .timeline-centered .timeline {
	  display: table;
	}
	.timeline-split .timeline-item, .timeline-centered .timeline-item {
	  display: table-row;
	  padding: 0;
	}
	.timeline-split .timeline-info, .timeline-centered .timeline-info,
	.timeline-split .timeline-marker,
	.timeline-centered .timeline-marker,
	.timeline-split .timeline-content,
	.timeline-centered .timeline-content,
	.timeline-split .period .timeline-info,
	.timeline-centered .period .timeline-info {
	  display: table-cell;
	  vertical-align: top;
	}
	.timeline-split .timeline-marker, .timeline-centered .timeline-marker {
	  position: relative;
	}
	.timeline-split .timeline-content, .timeline-centered .timeline-content {
	  padding-left: 30px;
	}
	.timeline-split .timeline-info, .timeline-centered .timeline-info {
	  padding-right: 30px;
	}
	.timeline-split .period .timeline-title, .timeline-centered .period .timeline-title {
	  position: relative;
	  left: -45px;
	}
  }
  
  /*----------------------------------------------
	  MOD: TIMELINE CENTERED
  ----------------------------------------------*/
  @media (min-width: 992px) {
	.timeline-centered,
	.timeline-centered .timeline-item,
	.timeline-centered .timeline-info,
	.timeline-centered .timeline-marker,
	.timeline-centered .timeline-content {
	  display: block;
	  margin: 0;
	  padding: 0;
	}
	.timeline-centered .timeline-item {
	  padding-bottom: 40px;
	  overflow: hidden;
	}
	.timeline-centered .timeline-marker {
	  position: absolute;
	  left: 50%;
	  margin-left: -7.5px;
	}
	.timeline-centered .timeline-info,
	.timeline-centered .timeline-content {
	  width: 50%;
	}
	.timeline-centered > .timeline-item:nth-child(odd) .timeline-info {
	  float: left;
	  text-align: right;
	  padding-right: 30px;
	}
	.timeline-centered > .timeline-item:nth-child(odd) .timeline-content {
	  float: right;
	  text-align: left;
	  padding-left: 30px;
	}
	.timeline-centered > .timeline-item:nth-child(even) .timeline-info {
	  float: right;
	  text-align: left;
	  padding-left: 30px;
	}
	.timeline-centered > .timeline-item:nth-child(even) .timeline-content {
	  float: left;
	  text-align: right;
	  padding-right: 30px;
	}
	.timeline-centered > .timeline-item.period .timeline-content {
	  float: none;
	  padding: 0;
	  width: 100%;
	  text-align: center;
	}
	.timeline-centered .timeline-item.period {
	  padding: 50px 0 90px;
	}
	.timeline-centered .period .timeline-marker:after {
	  height: 30px;
	  bottom: 0;
	  top: auto;
	}
	.timeline-centered .period .timeline-title {
	  left: auto;
	}
  }
  
  /*----------------------------------------------
	  MOD: MARKER OUTLINE
  ----------------------------------------------*/
  .marker-outline .timeline-marker:before {
	background: transparent;
	border-color: #FF6B6B;
  }
  .marker-outline .timeline-item:hover .timeline-marker:before {
	background: #FF6B6B;
  }


 /*  BOUNCE  */

@-moz-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -moz-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -moz-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
@-webkit-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

.downarrow {
    color:rgba(255,255,255,.8);
    width:70px;
    height:70px;
    font-size:70px;
}

.bounce {
    -moz-animation: bounce 2s infinite;
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite;
}



/* PROJECT DETAIL */
.project-hero-image{
    -webkit-filter: blur(10px);
    filter: blur(10px);
    overflow:hidden;
    margin:-10px -10px;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 95%, 0 95%);
    clip-path: polygon(0 0, 100% 0, 100% 95%, 0 95%);   
}
.project-hero-caption{
    position: absolute;
    left: 0;
    top: 0;
    width:100%;
    text-align:center;
}
.project-tags a.nav-link{
    font-size:.8rem;
    padding:.5rem .75rem;
    margin:0 5px;
    font-weight: 400;
    background: rgba(255,255,255,.5);
    color:rgba(0,0,0,1);
    margin-bottom: .7rem;
    border:1px solid rgba(0,0,0,.03);
    border-radius: 0;
}
.project-tags li:first-child a.nav-link{
    margin-left:0;
}
.project-tags li:last-child a.nav-link{
    margin-right:0;
}
.project-tags a.nav-link.active, .project-tags a.nav-link.active:hover{
    background: rgba(67,175,206,.9);
    color:rgba(255,255,255,1);
}
.project-tags a.nav-link:hover, .project-tags a.nav-link:active.active, .project-tags a.nav-link:focus.active{
    background: rgba(67,175,206,.6);
    color:rgba(255,255,255,1);
}
.project-tags .small a.nav-link{
    font-size:.6rem;
    padding:.4rem .5rem;
    margin: 0 3px;
}

.collapse-btn .collapse-icon{
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
.collapse-btn.collapsed .collapse-icon{
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}




/* BLUR */
.blur-hero-image{
    -webkit-filter: blur(10px);
    filter: blur(5px);
    overflow:hidden;
    margin:-10px -10px;  
}
.blur-hero-caption{
    position: absolute;
    left: 7px;
    top: 7px;
    width: calc(100% - 14px);
    height: calc(100% - 14px);
    text-align: center;
    padding-bottom: 0px;
}




/* FANCYBOX */
body.fancybox-active {
    padding-right:0!important;
    margin-right:0!important; 
}




.input-validation-error{
    border: 2px solid #f00;
}
.field-validation-error{
    color: #fff;
    background: rgba(255,0,0,.9);
    padding: 5px 7px;
    margin: 10px 0 0 0;
    display: block;
    border-radius: 3px;
    max-width: 85%;
    font-size: 0.8rem;
    text-align: left;
    font-weight: 600;
}
#twcrecap-error{
    padding: 5px 7px;
    display: block;
    font-size: 1rem;
    text-transform: uppercase;
    text-align: center;
}





/*   RESPONSIVE BREAKPOINTS  */

/*Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {
    .navbar-nav-icons i{
        font-size:1.5rem;
    }
}

/*Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
	.navbar-fat .navbar-brand img {
        padding: 0;
        max-height:30px;
    }
    .navbar-thin .navbar-brand img {
        padding: 0;
        max-height:30px;
    }
    .subnav.navbar-expand-md .subnav-current-mob{
		display:none!important;
	}
	.modal.modal-left .modal-dialog {
		width: 40%;
		max-width: 40%;
	}
	.modal.modal-left.fade .modal-dialog {
		left: -40%;
	}
	.expander.collapse, .expander.collapsing {
		height: 7.5rem;
		background-size:auto 250px;
		padding:0 0 0 200px;
		background-position: left top;
    }
    .gallery-grid{
        margin:0 -10px 0 -10px;
    }
    .grid-sizer, .grid-item {
        width: 25%;
        padding:7px;
    }
    .grid-item-large {
        width: 50%;
        padding:7px;
    }
    .project-detail-grid .grid-sizer, .project-detail-grid .grid-item{
        width: 33%;
    }
    .gallery-grid .grid-item .img-wrapper {
    }
    .hero-small .row{
        min-height:300px;
    }
    .hero-medium .row{
        min-height:500px;
    }
    .hero-large .row{
        min-height:800px;
    }
    .hero-xlarge .row {
        min-height:90vh;
    }
    .hero-caption h1{
        font-size:4rem;
        padding-top:0;
    }
    .hero-caption h2{
        font-size:2rem;
    }
    .hero-caption h4{
        font-size: 1.5rem;
        padding: 0;
    }
    .hero-caption h5{
        font-size:1.2rem;
    }
    .grecaptcha-badge{
        display:block;
    }
    .carousel-gallery .carousel-cell {
        width: 50%;
        margin:0 15px;
    }
    .carousel-gallery .carousel-cell .img-wrapper {
    }
    .section-title{
        font-size: 3.5rem;
    }
}

/*Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {	
	.navbar-thin {
		margin-top:0px;
    }
    .navbar-thin .navbar-brand img {
        max-height:40px;
    }
    .navbar-fat .navbar-brand img {
        max-height:40px;
        -webkit-filter: brightness(0) invert(1);
        -ms-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }
	.navbar-nav{
		margin-top:0;
		padding-top:0;
		border:0
	}
	.navbar-nav .nav-item {
		margin-bottom:0;
	}
	.navbar-nav .nav-link {
        padding: .3rem .7rem;
        color: rgba(255,255,255,1);
	}
	.navbar-thin .navbar-nav .nav-link {
		color: rgba(34,34,34,1);
	}
	.navbar-thin .navbar-nav .nav-link:hover {
	}
	.navbar-thin .navbar-nav li.active .nav-link, .navbar-thin .navbar-nav li.active .nav-link:hover {
		background-color: rgba(255,255,255,1);
		color: rgba(67,175,206,1);
    }
    .navbar-fat {
        background-color: rgba(255,255,255,0);
    }
	.modal.modal-left .modal-dialog {
		width: 30%;
		max-width: 30%;
	}
	.modal.modal-left.fade .modal-dialog {
		left: -30%;
    }
    .carousel-gallery .carousel-cell {
        width: 33%;
        margin:0 15px;
    }
    .carousel-gallery .carousel-cell .img-wrapper {
    }
    .carousel-gallery .carousel-cell .play-icon{
        font-size: 50px;
    }
}

/*Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {
    .grid-sizer, .grid-item {
        width: 25%;
    }
    .grid-item-large {
        width: 50%;
    }
    .gallery-grid .grid-item .img-wrapper {
    }
    .gallery-grid .grid-item .play-icon{
        font-size: 50px;
    }
    .carousel-gallery .carousel-cell {
        width: 25%;
        margin:0 10px;
    }
    .carousel-gallery .carousel-cell .img-wrapper {
    }
    .bg-fixed{
        background-attachment: fixed;
    }
}

/*Extra Extra large devices (large desktops, 1920px and up)*/
@media (min-width: 1800px) {
	.mx-50{
		margin-left:25%!important;
		margin-right:25%!important;
	}
	.mx-60{
		margin-left:20%!important;
		margin-right:20%!important;
	}
	.mx-70{
		margin-left:15%!important;
		margin-right:15%!important;
	}
	.mx-80{
		margin-left:10%!important;
		margin-right:10%!important;
	}
	.mx-90{
		margin-left:5%!important;
		margin-right:5%!important;
    }
}