/* GLOBAL STYLES
-------------------------------------------------- */
/* Padding below the footer and lighter body text */


@import url('https://fonts.googleapis.com/css?family=Staatliches');
@import url('https://fonts.googleapis.com/css?family=Montserrat:200,300,400,700,900');

@font-face {
	font-family: 'font';
	src:url('../fonts/arvo.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'font2';
	src:url('../fonts/poppins.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: 'feathericons';
	src:url('../fonts/feathericons/feathericons.eot?-8is7zf');
	src:url('../fonts/feathericons/feathericons.eot?#iefix-8is7zf') format('embedded-opentype'),
		url('../fonts/feathericons/feathericons.woff?-8is7zf') format('woff'),
		url('../fonts/feathericons/feathericons.ttf?-8is7zf') format('truetype'),
		url('../fonts/feathericons/feathericons.svg?-8is7zf#feathericons') format('svg');
}


.home-faqs {
    background: linear-gradient(90deg, rgb(244, 244, 244) 52.5%, rgba(255, 255, 255, 1) 52.5%, rgba(255, 255, 255, 1) 82.5%, rgba(244, 244, 244, 1) 82.5%);
		padding: 100px 0px 100px 0px;
}
.home-faqs img {
	max-width: 85%;
}

.twsFaq-wrap {    margin-top: 100px;
    padding: 50px;
    background: #fff;
   
		}
.twsFaq-title {font-size: 45px;  margin-bottom: 50px; font-weight: 800; text-align: center; }
.twsFaq-title strong {
	color: #1E4684; font-size: 55px;
}
.twsFaq-item + .twsFaq-item {border-top: 1px solid #e5e7eb;}
.twsFaq-head {
  width: 100%; text-align: left; padding: 1rem 0; font-size: 1.05rem; font-weight: 600;
  background: transparent; border: 0; cursor: pointer; line-height: 1.3; font-family: font2;
}
.twsFaq-head:focus {outline: 2px solid #0ea5e9; outline-offset: 2px;}
.twsFaq-body {padding: 0 0 1rem 0;}
.twsFaq-body p {margin: 0 0 .5rem 0;}
.twsFaq-body ul {margin: 0; padding-left: 1.1rem;}
.twsFaq-body li {margin: .35rem 0;}
.twsFaq-body a {text-decoration: underline; color: #c6302c; font-weight: 600; text-underline-offset: 2px;}


.twsReviews-wrap {padding: 200px 20px 200px 20px; }
.twsReviews-head h2 { margin: 0 0 50px 0; font-size: 45px; font-weight: 800; text-align: center; }
.twsReviews {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(12, 1fr);
}
.twsReview-card {
  grid-column: span 12;
  background: #c6302c; color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: .75rem; margin-bottom: 25px;
  padding: 50px 25px;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.twsReview-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.08); border-color: #d1d5db; background: #1E4684; }
.twsReview-top { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .5rem; }
.twsReview-author { font-size: 20px; margin: 0; font-weight: 700; }
.twsReview-stars { font-size: 25px; letter-spacing: .2ch; color: gold; }
.twsReview-text { margin: 0 0 .75rem 0; line-height: 1.5; font-family: font2; font-size: 15px; font-weight: 600; letter-spacing: 1px; }
.twsReview-link { font-weight: 600; text-decoration: underline; text-underline-offset: 2px; color: #fff; }

.twsReviews-cta { display: flex; gap: 1rem; align-items: center; justify-content: center; margin-top: 1rem; }
.twsReviews-more, .twsReviews-leave {
  border: 1px solid #111827;
  padding: .65rem 1rem;
  border-radius: .5rem;
  font-weight: 700;
  text-decoration: none;
  background: #1E4684; color: #fff;
  transition: transform .15s ease, box-shadow .15s ease, opacity .2s ease;
}
.twsReviews-more:hover, .twsReviews-leave:hover { box-shadow: 0 8px 20px rgba(17,24,39,.25); transform: translateY(-1px); background: #c6302c;}
.twsReviews-leave[hidden] { display: none !important; }

/* 3-up layout on md+ screens */
@media (min-width: 768px) {
  .twsReview-card { grid-column: span 4; }
}

/* ============================================================================================ */
/* === Tabs      **(ONLY MOBILE FREINDLY WITH A SMALL NUMBER OF TABS WITH A MAX OF 20 CHARACTERS  ================= */
/* ============================================================================================ */




.tab {
  overflow: hidden;
  border: 1px solid #ccc;
  background-color: #f1f1f1;
  font-family: 'font2';
}
.tab button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  font-size: 17px;
}
.tab button:hover {
  background-color: #ddd;
}
.tab button.active {
  background-color: #ccc;
}
.tabcontent {
  display: none;
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-top: none;
}
.tabcontent h3 {
	padding-top: 40px;
	padding-bottom: 40px;
	font-family: 'font';
	text-align: center;
	font-size: 2rem;
	color: rgb(246,177,24);
}

/* ======================================== */
/* === Top Header Section ================= */
/* ======================================== */
.top-header {
	position: fixed;
	width: 100%;
	z-index: 1;
	padding: 3px 0 3px 0;
	background: rgb(255,255,255);
	box-shadow:0px 0px 10px -4px #000000bd;
	z-index: 3;
	-webkit-transition: all .30s ease;
	-moz-transition: all .30s ease;
	-o-transition: all .30s ease;
	transition: all .30s ease;
}
.top-header div[class*='col-']:first-child {
	display:flex;
	justify-content: flex-end;
	align-items:center;
}
.top-header div[class*='col-']:first-child a {
	padding: 0;
	font-size:15px;
	-webkit-transition: all .30s ease;
	-moz-transition: all .30s ease;
	-o-transition: all .30s ease;
	transition: all .30s ease;
}
.top-header div[class*='col-']:first-child a:hover {
	background-color:#fbfbfb;
	color:#222;
}
.top-header div[class*='col-']:nth-child(2) {
	display:flex;
	justify-content:center;
	align-items:center;
}
.top-header div[class*='col-']:nth-child(3) {
	display:flex;
	justify-content:center;
	align-items:center;
}
.top-header div[class*='col-']:nth-child(3) a {
	padding: 9px 15px 9px 15px;
	background: transparent;
	font-weight: 600;
	font-family: 'font2';
	color: rgb(120,120,120);
	border-radius: 1.6rem;
	border: 1px double rgb(120,120,120);
}
.top-header div[class*='col-']:nth-child(3) a:hover {
	background: transparent;
}
.top-header div[class*='col-']:nth-child(4) {
	display:flex;
	justify-content:center;
	align-items:center;
}
.top-header div[class*='col-']:nth-child(4) a {
	padding: 9px 15px 9px 15px;
	background: transparent;
	font-family: 'font2';
	color: rgb(120,120,120);
	font-weight: 600;
	border-radius: 1.6rem;
	border: 1px double rgb(120,120,120);
}
.top-header div[class*='col-']:nth-child(4) a:hover {
	background: transparent;
}
.top-header div[class*='col-']:nth-child(5) {
	display:flex;
	justify-content: flex-start;
	align-items:center;
}
.top-header div[class*='col-']:nth-child(5) a {
	display:flex;
	justify-content:center;
	align-items:center;
	border: 1px solid rgb(198,48,44);
	color: rgb(255,255,255);
	background: rgb(198,48,44);
	border-radius:100px;
	height: 34px;
	width: 34px;
	margin: 0 4px;
}
.top-header div[class*='col-']:nth-child(5) a:hover {
	background: rgb(198,48,44,0.8);
	text-decoration:none !important;
	color: rgb(255,255,255);
}
.top-header .dropdown-menu {
	background:whitesmoke;
	border-radius: 0;
}
.top-header .dropdown-menu a {
	color:#222;
	padding:3px 20px !important;
}
.top-header .dropdown-toggle {
	background: #21212100;
	padding: 6px 25px;
	outline: none !important;
	border-color: #f3f3f3b5;
}
.top-header .dropdown-toggle:hover {
	background-color: white !important;
	color: #000 !important;
}
.btn-secondary:not([disabled]):not(.disabled).active, .btn-secondary:not([disabled]):not(.disabled):active, .show>.btn-secondary.dropdown-toggle {
    color: #000;
    background-color: rgb(255, 255, 255);
    border-color: #666e76;
    box-shadow:none !important;
}
.top-header .btn-secondary.focus,
.btn-secondary:focus {
	outline:none !important;
	box-shadow:none !important;
}

/* ======================================== */
/* === Navigvation Section ================ */
/* ======================================== */
.navbar-inverse .navbar-inner {
	display:none;
}

/******* Mobile Navigation Section *******/
.mobile-menu {
	display:none;
}
.dropdown-wrapper {
	margin:0;
	padding:0;
}
.mobile-menu .dropdown-menu-mobile {
	  position:relative;
	  display:none;
	  top: 100%;
	  left: 0;
	  z-index: 1000;
	  float: left;
	  height:0px;
	  margin:0;
	  width:100%;
	  padding: 0;
	  font-size: 18px;
	  color: #e6e6e6 !important;
	  text-align: left;
	  list-style: none;
	  background-color: #101010;
	  border: 0;
	  visibility: hidden;
	  border-radius: 0;
	  transform:scale(1,0);
	  -webkit-transition: all .30s ease;
	  -moz-transition: all .30s ease;
	  -o-transition: all .30s ease;
	  transition: all .30s ease;
}
.dropdown-menu-animate {
	display:inline-block !important;
	transform:scale(1,1) !important;
	padding:25px 0 !important;
	height:auto !important;
	visibility: visible !important;
}
.mobile-menu .dropdown-menu-mobile a {
	color:#545454;
	font-weight:600 !important;
	font-size: 1.3em;
	font-family:'Raleway';
	text-align:center;
}
/******* Mobile Navigation Section *******/

/******************************************** DAVIDS MOBILE CODE START *************************************************/
.bg-primary {
	background: rgb(83,82,82) !important;
}
.home-header-section {
	padding-top: 87px;
}
.home-header-section h1 {
	font-family: 'Arial';
	font-weight: 900;
	line-height: 30px;
	font-size: 200px;
}
.home-header-section h2 {
	font-family: 'Arial';
	font-weight: 600;
	padding-top: 100px;
	line-height: 30px;
	font-size: 80px;
}
.home-header-section .slider-logo span {
	font-family: 'font';
	color: rgb(196,41,56);
}
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: 18px;
    color: rgb(33, 37, 41);
    text-align: left;
    list-style: none;
    background-color: rgb(87, 86, 87);
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: .25rem;
}
.dropdown-item {
    display: block;
    width: 100%;
		font-weight: 600;
		font-family: 'font2';
    padding: .25rem 1.5rem;
    clear: both;
    color: rgb(255,255,255);
    text-align: inherit;
    white-space: nowrap;
    background: 0 0;
    border: 0;
}
.dropdown-item.active, .dropdown-item:active {
    color: rgb(255, 255, 255);
    text-decoration: none;
    background-color: rgb(22,22,22) !important;
}
.home1 {
	padding: 75px 0 75px 0;
    background: rgb(255,255,255);
}
.home1 .pad {
	padding-top: 50px;
}
.home1 h1 {
	font-family: 'Arial';
	font-size: 40px;
  text-align: left;
	font-weight: 800;
	color: rgb(30,70,132);
}
.home1 p {
	font-size: 17px;
	font-family: 'font2';
	font-weight: 600;
	text-align: justify;
	color: rgb(90,90,90);
}
.home1 img {
	border-radius: 5px;
}
.home2{
	padding: 50px 0; 
}
.home2 .container {
	padding: 100px 0 100px 0;
}
.parallax {
  background-image: linear-gradient(rgb(0,0,0,0.3), rgb(11,11,11,0.1)), url("/img/parallax.jpg");
  min-height: auto;
  background-attachment: fixed;
  background-position: bottom;
	overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
}
.card {
	max-height: 100%;
	height: 100%;
	color: #fff;
	margin: 0 0 0px;
	border-radius: 5px;
	padding: 10px 10px 0 10px;
	background: rgb(255,255,255,0.9);
	border: none;
	visibility: hidden;
	box-shadow: 0 0 29px 0 rgba(68, 88, 144, 0.12);
}
.card h2 {
	font-size: 25px;
	font-weight: 800;
	padding-top: 20px;
	color: rgb(198,48,44);
	text-align: center;
}
.card img {
	border-radius: 5px;
}
.card p {
	font-size: 17px;
	font-family: 'font2';
	font-weight: 600;
	text-align: center;
	color: rgb(90,90,90);
}
.card a.mini-cta{
	
    color: black;
    padding: 10px;
    border: 1px solid black;
}
.card a.mini-cta:hover{
	
	background: rgb(222 235 255)
}
.tws-hub-cta-light {
    border: 2px solid #fff;
    padding: 16px 28px;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s ease;
}
.tws-hub-cta-light:hover {
    background: #fff;
    color: #111;
}


.home3 {
	padding: 75px 0 75px 0;
}
.home3 .pad {
	padding: 35px 0px 0px 0px;
}
.home3 h4 {
	color: rgb(196,41,56);
	font-size: 27px;
	text-align: left;
	font-weight: 800;
}
.home3 img {
	border-radius: 5px;
}
.home3 p {
	  font-weight: 600;
    color: rgb(90,90,90);
		text-align: left;
    font-family: 'font2';
    font-size: 17px;
}
.home3 strong {
	font-weight: 800;
	font-size: 25px;
	color: rgb(30,70,132);
	font-family: 'Montserrat';
}
.home3 img {
	border-radius: 0.2rem;
}
.home5 .container {
	padding: 125px 0 125px 0;
}
.parallax2 {
  background-image: linear-gradient(rgb(0,0,0,0.3), rgb(11,11,11,0.1)), url("/img/parallax2.jpg");
  min-height: auto;
  background-attachment: fixed;
  background-position: bottom;
	overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
}
.card3 {
	max-height: 100%;
	height: 100%;
	color: #fff;
	margin: 0 0 0 0;
	border-radius: 0.2rem;
	padding: 10px 0px 10px 0px;
	background: rgb(255,255,255,0.9);
	border: none;
	visibility: hidden;
}
.card3 h4 {
	font-size: 20px;
	color: rgb(198,48,44);
	padding-top: 20px;
	font-weight: 800;
	line-height: 0px;
	text-align: center;
}
.card3 span {
	font-size:1.2rem;
	font-weight:600;
	text-transform: none;
	color: rgba(255,255,255);
}
.card3 p {
	font-size: 17px;
	font-family: 'font2';
	font-weight: 600;
	text-align: center;
	color: rgb(90,90,90);
}
.card3 img {
	border-radius: 100%;
	width: 40%;
}
.home-contact {
	background: rgb(255,255,255);
  padding: 100px 0 100px 0;
}
.home-contact h3 {
  font-size: 40px;
	font-weight: 800;
	text-align: center;
	padding-bottom: 40px;
  color: rgb(30,70,132);
}
.home-contact span {
	color: rgb(83,82,82);
}


.tws-service-hero{
	
    padding: 180px 0;
    background: linear-gradient(rgba(10,15,20,.85), rgba(10,15,20,.9)),
                url('/img/services/tws-service-bg.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
    margin-bottom: -50px;
	
}
.tws-service-hero h1 {
    font-size: 54px;
    font-weight: 800;
    margin-bottom: 20px;
}
.tws-hero-bullets {
    list-style: none;
    padding: 0;
    margin-bottom: 30px;
}
.tws-btn-primary {
    background: #111;
    color: #fff;
    padding: 14px 30px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
    display: inline-block;
}





.tws-service-body{
	
    padding: 180px 0;
    background: linear-gradient(rgba(10,15,20,.85), rgba(10,15,20,.9)),
                url('/img/homepage/utah-landscape-01.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
    margin-bottom: -50px;
	
}
.tws-service-body h2 {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 20px;
}



/* ===============================
   MAIN SERVICE SECTIONS
================================ */

.tws-service-section {
    padding: 140px 0 0 0;
}

.tws-service-section .container-fluid {
	padding: 0px;
}

 .surveys {
	background: none;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

 .plats {
	background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/subdivision-plat-01.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

 .development {
	background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/land-development-01.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.tws-service-section .tws-service-intro {
    margin-bottom: 80px; max-width: 100%; 
}

.tws-service-intro img {
    width: 100%;
	    border-bottom: 5px solid #000;
    border-left: 10px solid #000;
    border-top: 1px solid #000;

}

.tws-service-tag {
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 700;
    color: rgb(198,48,44);
    margin-bottom: 10px;
}

.tws-service-intro h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 15px;
}

.tws-service-intro p {
    margin-bottom: 20px;
    line-height: 1.7;
}

.tws-service-intro ul {
    list-style: none;
    padding: 0;
}

.tws-service-intro ul li {
    padding-left: 22px;
    position: relative;
    margin-bottom: 8px;
}

.tws-service-intro ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: rgb(198,48,44);
}


.tws-service-list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px; 
}
a.service-item {
    background: black;
    padding: 15px 18px;
    border-radius: 6px;
    box-shadow: 0 8px 20px rgba(0,0,0,.08);
    font-weight: 600;
    text-align: center;
    transition: 0.3s;
    display: flex;
    justify-content: center;
    align-items: center;
		color:white;
}

a.service-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(0,0,0,.15);
		background: rgb(198 48 44 / 80%);
		color:white;
}

@media(max-width:991px){
	
	.tws-service-hero h1 {
    font-size: 2rem;
}
.tws-service-list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
}

.tws-schedule-cta-light {
    display: inline-flex;
}
	
}
/* Subservice Cards */

.tws-subservice-card {
    background: #f5f5f5;
    padding: 40px;
    height: 100%;
    transition: all .35s ease;
    position: relative;
	border: 3px solid  rgb(30, 70, 132);
 ;
}

.tws-subservice-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 60px rgba(0,0,0,.08);
    border-color: #000;
    background: white;
    color: black;
}

.tws-subservice-card h4 {
    font-weight: 700;
    margin-bottom: 15px;
}

.tws-subservice-card p {
    font-size: 15px;
    margin-bottom: 15px;
}

.tws-subservice-card ul {
    list-style: none;
    padding: 0;
}

.tws-subservice-card ul li {
    padding-left: 20px;
    position: relative;
    margin-bottom: 6px;
}

.tws-subservice-card ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    color:  rgb(198,48,44);
}





/* Section CTA */

.tws-service-divider {
   margin-top: 80px;
    padding: 55px 10px 55px 10px;
    background: rgb(30,70,132);
    color: #fff;
    text-align: center;
    margin-bottom: -0;
}

.tws-service-divider h3 {
    font-weight: 700;
    margin-bottom: 15px;
}
.tws-schedule-cta-light {
    border: 2px solid #fff;
    padding: 16px 28px;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s ease;
}
.tws-schedule-cta-light:hover {
    background: #fff;
    color: #111;
}

/******************************************** DAVIDS MOBILE CODE END *************************************************/

/*******************  Referrals Owl Carousel *************************/
.owl-carousel {
}
.owl-carousel .owl-stage-outer {
	padding:40px 0;
}
.owl-nav {
	position:absolute;
	width: 100%;
	top:10%;
	display: none;
}
.owl-carousel .item {
	display:block;
	height:100%;
}
.owl-carousel .owl-item span {
	font-size: 20px;
	font-weight: 500;
}
.owl-nav .owl-prev,
.owl-nav .owl-next {
	position:absolute;
}
.owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {
	background:transparent !important;
	color:#212121 !important;
	opacity:.5 !important;
}
.owl-nav .owl-next {
	left:100%;
}
.owl-nav .owl-prev {
	right: 100%;
}
.owl-nav .owl-prev span,
.owl-nav .owl-next span {
	font-size:3em;
	display: block;
}
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev, .owl-carousel button.owl-dot {
	outline:none;
}

/*******************  Home Page Service Cards *************************/
.pre-footer-section {
	padding:0 !important;
	overflow:;
}
.pre-footer-section div[class*='col-']:last-child {
	background: url(/img/home-image-2.jpg) bottom no-repeat;
	background-size:cover;
}
.pre-footer-section .hours {
	display:flex;
	color: #fff;
	flex-direction:column;
	justify-content:center;
	padding:120px;
	background: #1d1d1d;
}
.pre-footer-section div[class*='col-']:last-child {
	padding:165px;
}
.pre-footer-section .hours p {
	display:flex;
	padding:0 200px 0 0;
	flex-direction:row;
	justify-content:space-between;
}
.pre-footer-section a {
	margin: 40px 0 0;
	color:#fff;
	font-size: 20px;
	font-weight:700;
}
.pre-footer-section a:hover {
	color:#8a8a8a;
}

/* ========================================================== */
/* 			            Default Classes                       */
/* ========================================================== */

body {
	font-family: 'Montserrat', sans-serif;
}
body#barbajs {
	visibility:visible;
}
a, button, .btn {
	-webkit-transition: all .30s ease;
	-moz-transition: all .30s ease;
	-o-transition: all .30s ease;
	transition: all .30s ease;
}
a {
	cursor:pointer;
	text-decoration: none !important;
}
a:hover {
    color: #252525;
    text-decoration: underline;
}
.btn {
	cursor:pointer;
	border-radius: 0;
}
.btn.alert-trigger {
	color:#fdfdfd;
	background-color:#333;
}
.btn:hover {
    opacity: 0.9;
}
.inner-content-section .btn {
	background:rgba(135,170,188);
	border-color: #949494;
	color: rgba(255,255,255,1);
}
.inner-content-section .btn:hover {
	background-color: rgba(135,170,188,0.4);
	color:#fff;
}
.btn-primary:not([disabled]):not(.disabled).active,
.btn-primary:not([disabled]):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {outline: none;box-shadow: none;background-color: #444;border-color: #949494;color: #fff;}
.btn-primary:hover {
    border-color: #949494;
}
.btn.focus, .btn:focus {
	outline:none;
	box-shadow: none;
}
.section-divider {
	position:relative;
	padding: 50px 0;
}
.estimate-section-divider .alert, .estimate-section-divider .alert p {
    text-align: left;
    font-size: inherit;
}
.block-overlay {
	position:absolute;
	display:inline-block;
	background:rgba(0, 0, 0, 0.6);
	width:100%;
	height:100%;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:0;
}

/********* Set Timeout Function FadeDiv Styling **********/
.fadeDiv {
	position:fixed;
	display: inline-block;
	z-index:1050;
	color: #fff;
	background: #300e87;
	padding:50px;
	top:150px;
	bottom:150px;
	left:300px;
	right:300px;
	transform:scale(0,0);
	box-shadow: 0px 0px 20px -1px #000;
	transition:all .20s cubic-bezier(0.65, 0.05, 0.36, 1);
}
.menu-scaler {
	position:fixed;
	display: inline-block;
	padding:50px;
	z-index:1050;
	top:150px;
	bottom:150px;
	left:300px;
	right:300px;
	transform:scale(1,1);
}
.fadeDiv .fadeDiv-close {
	position:absolute;
	right: 20px;
	top: 10px;
	font-weight:900;
	font-size: 2em;
	font-family:'Lato';
	cursor:pointer;
}
.navbar-collapse ul {
	width:100%;
	padding-top: 1em;
	display: flex;
	justify-content: center;
	align-items: center;
}
.overlay {
	height: 100%;
	width: 100%;
	background: #ffffffbf;
}
#myBtn {
    display: block; /* Hidden by default */
    width: 50px;
    height: 50px;
    position: fixed; /* Fixed/sticky position */
    top:100%; /* Place the button at the bottom of the page */
    right: 30px; /* Place the button 30px from the right */
    z-index: 99; /* Make sure it does not overlap */
    border: none; /* Remove borders */
    outline: none; /* Remove outline */
    background-color: #000000; /* Set a background color */
    color: #ffffff;
    cursor: pointer; /* Add a mouse pointer on hover */
    font-size: 14px;
    padding-top: 0; /* Some padding */
    border-radius: 0px; /* Rounded corners */
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
#myBtn i {
	color: white;
}
#myBtn:hover {
    background-color: #424242; /* Add a dark-grey background on hover */
    color:#fff;
}

/* ========================================================== */
/* 			            Custom Navbar	                      */
/* ========================================================== */

.top-header-animate {
	background: rgb(255,255,255);
}
.top-header-animate .dropdown-toggle {
	color:#0a0a0a;
	font-size: 16px;
}
.top-header-animate .navbar-brand {
	font-size: 1.5em;
}
body {
    padding: 0;
    -webkit-transition-property: all;
    -webkit-transition-duration: .30s;
    -webkit-transition-timing-function: ease-in-out;
    transition-property: all;
    transition-duration: .30s;
    transition-timing-function: ease-in-out;
}
.navbar-scroll {
	padding: 88px 0 0;
	position: fixed;
	background: rgb(198,48,44,0.8);
	width: 100%;
	z-index: 2;
	
	backdrop-filter: blur(5px); 
	-webkit-transition: all .30s ease;
	-moz-transition: all .30s ease;
	-o-transition: all .30s ease;
	
	
	transition: all .30s ease;
	
	
}
.navbar-scroll .container {
	background: rgb(60,36,17,0);
	border-bottom-left-radius: 1.5rem;
	border-bottom-right-radius: 1.5rem;
}
#projects .navbar-scroll {
	background:#fdfdfd;
	position:relative !important;
}
#projects .navbar-scroll li a {
	color:#333;
}
#projects .navbar-scroll .navbar-brand {
	color:#252525;
}
#projects .navbar-light .lnr {
	color:#222;
}
.navbar-light .lnr {
	color: #fdfdfd;
	font-size: 1.5em;
	position: absolute;
	top: 6px;
	right: 10px;
}
.navbar-light .navbar-brand {
	color: #e8e8e8;
	font-size: 20px;
	font-family: 'Montserrat', sans-serif;
}
.navbar-brand {
	font-size:2.5em;
	font-weight:700;
	text-transform:uppercase;
}
.navbar-brand:focus, .navbar-brand:hover {
	color:#f3f3f3 !important;
}
.navbar-light .navbar-nav .nav-link {
	margin: 0 28px;
  padding: 6px 0px;
  font-weight: 900;
  font-size: 18px;
  color: rgb(255,255,255);
  font-family: 'font2';
}
.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav
.nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light
.navbar-nav .show>.nav-link {
	color: rgb(255,255,255);
}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
	/*color: rgb(196,41,56);*/
	color: lightgray;
}
.navbar-light .navbar-nav li a {
	position:relative;
}
.navbar-collapse {
	height:100%;
}
.mobile-top-header {
	display:none !important;
}

/* ========================================================== */
/* 			            GALLERY / PROJECTS                    */
/* ========================================================== */

#portfolio input {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    margin: 0;
    top: 0;
    left: -60px;
    z-index: 2;
    width: 60px;
    height: 60px;
    -webkit-appearance: none;
    background-image: url(/img/icons/close-btn-icon-red.png);
    background-repeat: no-repeat;
    background-color: transparent;
    background-size: contain;
    color: #ffffff;
    border: none;
    cursor: pointer;
    outline: none !important;
    -webkit-transition: all .30s ease;
    -moz-transition: all .30s ease;
    -o-transition: all .30s ease;
    transition: all .30s ease;
}
#portfolio input:hover {
	background-color: #fff;
	opacity: .;
}
button.mfp-close, button.mfp-arrow {
	outline:none !important;
}
#portfolio {
  display: flex;
  padding: 0;
  overflow: hidden;
  flex-wrap: wrap;
  justify-content: center;
}
#portfolio li {
  display: flex;
  justify-content: center;
  align-items: center;
  float: left;
  position:relative;
  overflow:hidden;
  margin: 0 10px 20px;
}
#portfolio li a {
  transform:scale(1,1);
  display:block;
  width:100%;
  height: 295px;
  width: 490px;
  overflow:hidden;
  -o-transition:all .30s ease;
  -moz-transition:all .30s ease;
  -webkit-transition:all .30s ease;
  transition:all .30s ease;
}
#portfolio li a:hover {
	transform:scale(1.1,1.1) !important;
}
#portfolio li a img {
	display: block;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
  margin: auto;
  width: 100%;
  height: auto;
  transform: scale(1,1);
}
#portfolio li:hover .block-overlay {
	background-color:#000000cc;
}
#portfolio li:hover input {
	left: 0;
}
#portfolio .block-overlay {
	background: rgb(0,0,0,0.1);
	z-index: 1;
	-webkit-transition: all .30s ease;
	-moz-transition: all .30s ease;
	-o-transition: all .30s ease;
	transition: all .30s ease;
}

/* ========================== Gallery ZoomIn Effect ================================ */

.mfp-ready .mfp-figure {
  opacity: 0;
  margin-left:-100px;
}
.mfp-zoom-in .mfp-figure, .mfp-zoom-in .mfp-iframe-holder .mfp-iframe-scaler{
    opacity: 0;
    margin-left:-100px;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    transform: scale(0.95);
}
.mfp-zoom-in.mfp-bg,
.mfp-zoom-in .mfp-preloader {
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.mfp-zoom-in.mfp-image-loaded .mfp-figure, .mfp-zoom-in.mfp-ready .mfp-iframe-holder .mfp-iframe-scaler{
    opacity: 1;
    margin-left:0;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}
.mfp-zoom-in.mfp-ready.mfp-bg,
.mfp-zoom-in.mfp-ready .mfp-preloader {
    opacity: 0.8;
}
.mfp-zoom-in.mfp-removing .mfp-figure, .mfp-zoom-in.mfp-removing .mfp-iframe-holder .mfp-iframe-scaler{
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    margin-left:-100px;
}
.mfp-zoom-in.mfp-removing.mfp-bg,
.mfp-zoom-in.mfp-removing .mfp-preloader {
    opacity: 0;
    margin-left:-20px;
}
.mfp-iframe-scaler{ overflow: visible; /*so the close button is shown*/}
.mfp-zoom-out-cur { cursor: auto; }
.mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: pointer; }

/* ========================================================== */
/* 			            REVIEWS PAGE                          */
/* ========================================================== */
.carousel-indicators li {
    position: relative;
    top: 51px;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    background-color: rgb(191, 190, 190);
}
.carousel-indicators .active {
    background-color: #0f8029;
}

/* ========================================================== */
/* 			           FOOTER		                          */
/* ========================================================== */

.footer-section .vms-link-wrapper img {
	width: 50%;
}
.footer-section .vms-link-wrapper a {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.footer-section {
	padding: 0 0 10px;
	background: rgb(30,70,132);
	color: rgb(255, 255, 255);
	font-size: 18px;
	font-weight: 400;
}
.footer-section h3 {
	font-size: 1.3rem;
	color: rgb(30,30,30);
	font-weight: bold;
}
.footer-section p {
	color: rgb(255,255,255);
	font-size: 15px;
	font-family: 'font2';
}
.footer-section a {
	color: rgb(255,255,255);
	font-size: 16px;
}
.footer-section .service-cities p {
	margin:0 0 3px;
}
.service-cities {
	margin-bottom:1em;
}.service-cities img {
	padding-bottom: 20px;
}
.service-cities h5 {
	line-height:8px;
}
.service-cities h4 {
	font-size: 20px;
	font-family: 'font2';
	font-weight: 600;
	text-decoration: underline;
	color: rgb(255, 255, 255);
}
.bottom-footer .vms-link-wrapper {
	position:relative;
	top:-10px;
}
.bottom-footer div[class*='col-']:nth-child(2) {
	display:flex;
	flex-direction: column;
	justify-content:center;
	align-items: center;
}
.bottom-footer div[class*='col-']:nth-child(3) {
	display:flex;
	justify-content:flex-end;
	font-size:14px;
}
.bottom-footer div[class*='col-']:nth-child(3) a {
	display:flex;
	justify-content:center;
	align-items:center;
	border: 1px solid #fff;
	border-radius:100px;
	height:28px;
	width:28px;
	margin: 0 4px;
}
.bottom-footer div[class*='col-']:nth-child(3) a:hover {
	background: #0a0a0a;
	text-decoration:none !important;
	color: #929292;
}

/* ======================================== */
/* === Laptop CSS Section ================= */
/* ======================================== */
@media screen and (max-width : 1440px) {
	/*** Don't place anything here, unless absolutely necessary ***/
}

/* ======================================== */
/* === Tablet CSS Section ================= */
/* ======================================== */
@media screen and (max-width: 1024px) {
	
}

/* ======================================== */
/* === Mobile CSS Section ================= */
/* ======================================== */
@media screen and (max-width: 991px) {
/******************************************** DAVIDS MOBILE CODE START *************************************************/
.bg-primary {
	background: rgb(83,82,82) !important;
}
.home-header-section {
	padding-top: 87px;
}
.home-header-section h1 {
	font-family: 'Arial';
	font-weight: 900;
	line-height: 30px;
	font-size: 100px;
}
.home-header-section h2 {
	font-family: 'Arial';
	font-weight: 600;
	padding-top: 100px;
	line-height: 30px;
	font-size: 50px;
}
.home-header-section .slider-logo span {
	font-family: 'font';
	color: rgb(196,41,56);
}
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: 18px;
    color: rgb(33, 37, 41);
    text-align: left;
    list-style: none;
    background-color: rgb(87, 86, 87);
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: .25rem;
}
.dropdown-item {
    display: block;
    width: 100%;
		font-weight: 600;
		font-family: 'font2';
    padding: .25rem 1.5rem;
    clear: both;
    color: rgb(255,255,255);
    text-align: inherit;
    white-space: nowrap;
    background: 0 0;
    border: 0;
}
.dropdown-item.active, .dropdown-item:active {
    color: rgb(255, 255, 255);
    text-decoration: none;
    background-color: rgb(22,22,22) !important;
}
.home1 {
	padding: 50px 0 50px 0;
    background: rgb(255,255,255);
}
.home1 .pad {
	padding-top: 0px;
}
.home1 h1 {
	font-family: 'Arial';
	font-size: 35px;
  text-align: center;
	font-weight: 800;
	color: rgb(30,70,132);
}
.home1 p {
	font-size: 17px;
	font-family: 'font2';
	font-weight: 600;
	text-align: center;
	color: rgb(90,90,90);
}
.home1 img {
	border-radius: 5px;
}
 
.parallax {
  background-image: linear-gradient(rgb(0,0,0,0.3), rgb(11,11,11,0.1)), url("/img/parallax.jpg");
  min-height: auto;
  background-attachment: fixed;
  background-position: bottom;
	overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
}
.card {
	max-height: 100%;
	height: 100%;
	color: #fff;
	margin: 0 0 0px;
	border-radius: 5px;
	padding: 10px 10px 0 10px;
	background: rgb(255,255,255,0.9);
	border: none;
	visibility: hidden;
	box-shadow: 0 0 29px 0 rgba(68, 88, 144, 0.12);
}
.card h2 {
	font-size: 25px;
	font-weight: 800;
	padding-top: 20px;
	color: rgb(198,48,44);
	text-align: center;
}
.card img {
	border-radius: 5px;
}
.card p {
	font-size: 17px;
	font-family: 'font2';
	font-weight: 600;
	text-align: center;
	color: rgb(90,90,90);
}


.home3 {
	padding: 50px 0 50px 0;
}
.home3 .pad {
	padding: 35px 0px 0px 0px;
}
.home3 h4 {
	color: rgb(196,41,56);
	font-size: 35px;
	text-align: center;
	font-weight: 800;
}
.home3 img {
	border-radius: 5px;
}
.home3 p {
	  font-weight: 600;
    color: rgb(90,90,90);
		text-align: center;
    font-family: 'font2';
    font-size: 17px;
}
.home3 strong {
	font-weight: 800;
	font-size: 25px;
	color: rgb(30,70,132);
	font-family: 'Montserrat';
}
.home3 img {
	border-radius: 0.2rem;
}
.home5 .container {
	padding: 0px 0 0px 0;
}
.parallax2 {
  background-image: linear-gradient(rgb(0,0,0,0.3), rgb(11,11,11,0.1)), url("/img/parallax2.jpg");
  min-height: auto;
  background-attachment: fixed;
  background-position: bottom;
	overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
}
.card3 {
	max-height: 100%;
	height: 100%;
	color: #fff;
	margin: 0 0 0 0;
	border-radius: 0.2rem;
	padding: 10px 0px 10px 0px;
	background: rgb(255,255,255,0.9);
	border: none;
	visibility: hidden;
}
.card3 h4 {
	font-size: 13px;
	color: rgb(198,48,44);
	padding-top: 20px;
	font-weight: 800;
	line-height: 0px;
	text-align: center;
}
.card3 span {
	font-size:1.2rem;
	font-weight:600;
	text-transform: none;
	color: rgba(255,255,255);
}
.card3 p {
	font-size: 17px;
	font-family: 'font2';
	font-weight: 600;
	text-align: center;
	color: rgb(90,90,90);
}
.card3 img {
	border-radius: 100%;
	width: 40%;
}
.home-contact {
	background: rgb(255,255,255);
  padding: 50px 0 50px 0;
}
.home-contact h3 {
  font-size: 35px;
	font-weight: 800;
	text-align: center;
	padding-bottom: 40px;
  color: rgb(30,70,132);
}
/******************************************** DAVIDS MOBILE CODE END *************************************************/
.mobile-top-header {
	display:block !important;
	padding: 0 30px 0;
	background: rgb(135,170,188);
	z-index: 4;
	overflow:visible;
}
.header-contact_info a {
    color: rgb(255,255,255);
    margin: 0;
}
.top-header a, .top-header i, .top-header p {
    color: rgb(0,0,0);
}
.top-header-animate a, .top-header-animate i, .top-header-animate p {
    color: rgb(0,0,0);
}
.btn {
    background: rgb(249,78,1);
    width: 50%;
    padding: 10px 0px;
    color: #ffffff;
    cursor: pointer;
    outline: none;
    border: none;
}
.footer-section {
    padding-top: 30px;
    text-align: center;
}
.footer-section img {
	max-width: 210px;
	padding-bottom: 25px;
}
.service-cities h4 {
	font-size: 24px;
	font-weight: 600;
	color: rgb(255,255,255);
}
.service-cities a {
	font-size: 18px;
	line-height: 10px;
	color: rgb(255,255,255);
}
/** Second Footer **/
.service-cities .footer-title .midcities {
	text-align: center;
}
.service-cities .footer-title .rightcities {
	text-align: center;
}
/** Second Footer **/
/************************* NEW CELL PHONE TEMPLATE DISPLAY STYLING 2020 END ***********************************/

.service-content-section {
    padding: 0 !important;
}
.service-content-section p {
    padding: 0;
    margin: 0;
    background: #fff;
}
.service-content-section div[class*='col-'] {
	padding: 30px 30px;
}
.contact-content-section div[class*='col-']:last-child {
	padding-top:40px;
}
.about-info-section div[class*='col-']:first-child {
    border-right:none;
    border-bottom: 1px solid #b5b5b5;
}
.about-header-section {
    background: linear-gradient(to bottom, rgba(2, 2, 2, 0.76), rgba(4, 4, 4, 0.2)), url(../img/slider/slider-bg-2.jpg) bottom left no-repeat;
}
.pre-footer-section .hours {
    padding:50px 20px;
}
.pre-footer-section .hours h1 {
	font-size:34px;
}
.pre-footer-section .hours p {
    padding: 0;
}
.section-divider {
	padding: 40px 10px;
}
.home-service-section {
    padding-bottom: 0 !important;
    background-position: bottom right;
}
.bottom-footer div[class*='col-']:nth-child(3) {
	justify-content:center;
}
.lnr-star {
    font-size: 15px !important;
    position: relative;
    top: -6px;
}
.projects-section .row {
    height: inherit;
}
.projects-section div[class*='col-'] {
    padding: 0;
    position: relative;
}
.top-header {
	background: white;
	display:none;
}
.header-contact_info {
    font-size: 1.5em;
}
.navbar-scroll {
	display:none;
}
.header-contact_info .navbar-brand {
	font-size:1.3em;
}
.top-header div[class*='col-']:first-child {
	justify-content:flex-start;
}
.top-header div[class*='col-'] {
  display:flex;
  justify-content: left;
  width: 33.333%;
  padding: 15px 0;
}
.top-header div[class*='col-']:nth-child(3) {
  display:flex;
  justify-content: flex-end;
  width: 33.333%;
  padding: 15px 0;
}
.top-header div[class*='col-']:nth-child(3) a {
	border: none;
}
.top-header div[class*='col-']:nth-child(2) {
	background:none;
	margin:0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.top-header div[class*='col-']:nth-child(1) a {
	font-size: 0.8em;
}
.top-header div[class*='col-']:nth-child(2) p {
	font-size:inherit;
	line-height: inherit;
}
.alert h1,
.alert p {
	top: 2em;
	opacity: 0;
	position:relative;
}
.alert h1 {
	margin-top: 0;
	color: #2b1663;
}
.custom-show {
    position: fixed;
    transform:scale(1,1);
    border: 0;
    background: white;
    border-radius:0;
    z-index: 1100;
    overflow: inherit;
    -webkit-transition-property: all;
    -webkit-transition-duration: .30s;
    -webkit-transition-timing-function: ease-in-out;
    transition-property: all;
    transition-duration: .30s;
    transition-timing-function: ease-in-out;
}
.mobile-menu {
    text-align: center;
    position: fixed;
    height: 100%;
    width: 100%;
    display: block;
    padding-top: 6em;
    top: 100%;
    border: 0;
    background: rgb(30,70,132);
    border-radius: 0;
    z-index: 1100;
    overflow: auto;
    -webkit-transition-property: all;
    -webkit-transition-duration: .30s;
    -webkit-transition-timing-function: ease-in-out;
    transition-property: all;
    transition-duration: .30s;
    transition-timing-function: ease-in-out;
}
.mobile-menu .nav-link {
    font-size: 2em;
    color: #ffffff !important;
}
.mobile-menu-custom-show {
    top: 0%;
}
.mobile-menu-top-hero {
	background-size: cover;
	padding: 40px 0 0;
	top:0;
	left:0;
	width:100%;
	text-align: center;
}
.mobile-menu-top-hero h2 {
	padding:0 25px;
}
#mobile-menu-header {
  margin-top:0;
  background: #ffffff00;
  box-shadow: none;
}
#mobile-menu-header ul {
	list-style:none;
	padding:0 20px;
	margin-top: 8em;
	position: relative;
	width: inherit;
}
#mobile-menu-header ul li a {
	color:#ffffff;
	padding: 20px 20px;
}

}

@media screen and (max-width: 425px) {
  
}

@media screen and (max-width: 375px) {
        
}