/******************/
/*** Navigation ***/
/******************/
.navigation {
	background-color: #433A38;
	width: 50px;
}
nav {
  display: block;
  position: fixed;
  height: 100%;
  width: 100%;
  max-width: 468px;
  right: calc(100% - 50px);
  top:0px;
  z-index: 9999;
  background-color: #433a38;
  overflow: hidden;
}

nav .scroll {
  overflow: hidden;
  width: 100%;
  height: 100%;
  position: absolute;
  top:0px;
  right: -100%;
  transition: all 0.2s linear 0s;
}

.open nav .scroll {
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
  right: 0px;
  transition: all 0.3s linear 0s;
}

nav .menu-btn {
  height: 148px;
  width: 50px;
  position: absolute;
  background: url(/images/layout/menu-btn.jpg) no-repeat scroll left top transparent;
  top: 0px;
  right: 0px;
  text-indent: -9999px;
  overflow: hidden;
  z-index: 999;
  cursor: pointer;
}

.open nav .menu-btn {
  background-position: right top !important;
}
nav > p {
	transform: rotate(-90deg);
	position: absolute;
	top: 285px;
	left: 293px;
	z-index: 999;
	height: 50px;
	width: 300px;
	color: #fff;
	margin: 0px;
	line-height: 50px;
	font-family: 'montserratlight';
	transition: left 0.3s ease 0s;
}
.open nav > p {
	left: 335px;
}
nav .up-arrow {
  display: inline-block;
  height: 63px;
  width: 50px;
  background: url(/images/layout/up-arrow.png) no-repeat scroll center center transparent;
  text-indent: -9999px;
  font-size: 0px;
  line-height: 0px;
  overflow: hidden;
  position: absolute;
  right: 0px;
  bottom: 25px;
  z-index: 999;
  transition: all 0.3s ease 0s;
}
.open nav .up-arrow {
	right: -50px;
}

nav .menu {
  width: 276px;
  min-width: 100%;
  display: inline-block;
  padding: 45px 0px 100px;
}

nav #menu .nav {
  list-style: none;
  display: block;
  margin: 0px;
  padding: 0px 0px 21px 0px;
}
nav #menu .nav a {
	display: none;
}
.open nav #menu .nav a {
  font-family: 'din-blackregular';
  color: #f0f0f0;
  font-size: 20px;
  line-height: 20px;
  display: block;
  padding: 14px 12%;
  transition: none;
}

nav #menu .nav a:hover {
  font-family: 'din-blackregular';
  color: #b43842;
}
nav .menu-footer {
	color: #fff;
	position: absolute;
	bottom: 0px;
	padding: 0px 10px 30px 30px;
	text-align: left;
	text-transform: uppercase;
	display: none;
}
nav .menu-footer p {
	font-family: 'montserratlight';
	font-size: 12px;
}
.open nav .menu-footer {
	display: block;
}


/***********/
/* !Banner */
/***********/
#expYears div {
	background-color: #433a38;
	color: #fff;
	text-align: center;
	padding: 45px 25px 25px;
	
	position: absolute;
	right: 0px;
	z-index: 1;
}
#expYears .bestOf {
	position: absolute;
    height: 200px;
    width: 200px;
    right: 282px;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: transparent !important;
    padding: 0px;
}
#expYears div h4 {
	padding-bottom: 25px;
	font-size: 24px;
	letter-spacing: 1px;
}
#expYears div h4 span {
	color: #b43842;
	display: block;
	font-size: 54px;
	line-height: 54px;
}
#expYears div p {
	font-family: 'montserratlight';
}
	
#home {
	position: relative;
}

#banners,
.slick-list {
  width: 100%;
  height: 100%;
  display: block;
  -webkit-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  transform: none !important;
}

.slick-track {
  height: 100% !important;
  display: block;
  -webkit-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  transform: none !important;
}
.slick-dots li button::before,
.slick-dots li.slick-active button::before {
	color: transparent !important;
}

#home .banner {
	background-attachment: fixed;
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	float: left !important;
	position: relative;
	min-height: 600px;
}	
#home .banner-overlay {
	position: absolute;
	height: 100%;
	width: 100%;
	background-color: rgba(67, 58, 56, 0.5);
}
#home .banner-content {
	display: block;
}
#home .banner-text {
	position: relative;
	color: #fff;
	text-align: center;
}
#home .banner-text > .cell.middle {
	padding: 0px 10px;
}
#home > a {
	position: absolute;
	bottom: 30px;
	left: 0px;
	right: 0px;
	margin: 0 auto;
	width: 47px;
}
/* Slick Slider */
.slick-dots {
	bottom: 100px;
}
.slick-dots li {
	border: solid 1px #fff;
	border-radius: 50%;
}
.slick-dots .slick-active {
	background-color: #b43842;
	border: solid 1px #b43842;
	transition: all 0.2s ease 0s;
}
.slick-dotted.slick-slider {
    margin-bottom: 0px !important;
}


/************/
/* !Why Us */
/************/
#why-ideal-inspection {
	position: relative;
	background-color: #2e2625;
	color: #fff;
	text-align: left;
	padding: 90px 10px 90px 60px;
}
#why-ideal-inspection:before {
	content: '';
	position: absolute;
	left: 0px;
	top: 0px;
	
	height: 0px;
	width: 0px;
	border-top: 120px solid #b43842;
	border-right: 120px solid transparent;
}
#why-ideal-inspection .us-heading {
	font-family: 'din-blackregular';
	font-size: 20px;
	text-transform: uppercase;
}
#why-ideal-inspection hr {
	background-color: #b43842;
	border: none;
	text-align: left;
	margin: 90px 0px;
	height: 2px;
	width: 100px;
}
#why-ideal-inspection > .table + .table {
	margin-top: 50px;
}
#why-ideal-inspection .cell.icons {
	text-align: center;
	width: 15%;
}
#why-ideal-inspection .cell.icons > img {
	margin-top: 20px;
}
#why-ideal-inspection .us-text {
	padding: 0px 20px;
}

/****************************/
/* !Home Inspections Imgages */
/****************************/
#img-section {
	text-align: center;
	height: 340px;
	position: relative;
}
#img-section > .cell {
	padding-left: 0px;	
}
.inspection-imgs .cell {
	background-size: cover !important;
	position: relative;
	width: 33.33%;
}
.modal[data-id="buy-list-inspection"] {
	background: transparent url(/images/layout/home1.jpg) no-repeat center center scroll;
}
.modal[data-id="new-home-inspection"] {
	background: transparent url(/images/layout/home2.jpg) no-repeat center center scroll;
}
.modal[data-id="commercial-inspection"] {
	background: transparent url(/images/layout/home3.jpg) no-repeat center center scroll;
}
.s-overlay {
	background-color: rgba(67, 58, 56, 0.5);
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0px;
	z-index: 1;
	transition: all 0.3s ease 0s;
}
.modal:hover .s-overlay {
	background-color: rgba(67, 58, 56, 0.3);
}
#img-section p {
	font-family: 'din-blackregular';
	font-size: 20px;
	text-transform: uppercase;
	
	position: relative;
	color: #fff;
	margin: 0px;
	display: block;
	padding: 0px 10px;
	z-index: 2;
}
.img-modal {
	background-color: #fff;
}
.img-modal .cell {
	text-align: center;
	padding: 20px;
}
.img-modal p {
	margin: 0px;
}
#img-section .learn-more {
	position: absolute;
	margin: auto;
	left: 0px;
	right: 0px;
	top: 75%;
	font-size: 14px;

	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease 0s;
}
#img-section .modal:hover .learn-more {
	opacity: 1;
	visibility: visible;
	top: 73%;
}
#img-section .learn-more .btn {
	margin-bottom: 0px;
	background-color: #E3E2E1;
	border: solid 2px #B43842;
	color: #B43842;
	transition: all 0.3s ease 0s;
}
#img-section .learn-more .btn:hover {
	background-color: #fff;
}


/*****************/
/* !Contact Info */
/*****************/
#contact-info a {
	display: inline-block;
	text-transform: uppercase;
}
#contact-info a:hover {
	color: #b43842;
	cursor: pointer;
}
#contact-info a:before {
	content: '';
	display: inline-block;
	vertical-align: bottom;
	margin-right: 20px;
}
#contact-info .mail-us {
	line-height: 30px;
}
#contact-info .mail-us:before {
	background: transparent url(/images/layout/mail-icon.png) no-repeat center center scroll;
	width: 42px;
	height: 30px;
}
#contact-info .call-us {
	margin: 30px;
	line-height: 36px;
}
#contact-info .call-us:before {
	background: transparent url(/images/layout/phone-icon.png) no-repeat center center scroll;
	width: 18px;
	height: 36px;
}


/*****************/
/* !Contact Form */
/*****************/
#contact {
	background-color: #e3e2e1;
}

.submit {
  margin-top: 28px !important;
}

.error {
  color: red;
  padding: 0px !important;
  font-size: 16px;
}

.form .cell.input {
  background-color: #f6f6f6;
  border: 1px solid #cccccc;
  height: 58px;
  vertical-align: middle;
}

.form input {
  display: block;
  height: 100%;
  width: 100%;
  background-color: transparent;
  padding: 19px 20px;
  font-family: 'montserratregular';
  font-size: 14px;
  line-height: 14px;
}

.form .space {
  width: 20px;
  border: none;
}

#contact-form .form.page + .form.page {
	margin-top: 30px !important;
}
.form.textarea {
  height: 200px !important;
}

.form.textarea > .cell {
  background-color: #f6f6f6;
  border: 1px solid #cccccc;
  vertical-align: middle;
}

.form #comments {
  background-color: transparent;
  border: none;
  color: #0f3149;
  font-family: 'montserratregular';
  font-size: 14px;
  height: 100%;
  line-height: 18px;
  outline: 0 none;
  padding: 19px 20px;
  resize: none;
  width: 100%;
  display: block;
}

#contact > .cell {
  padding: 62px 25px;
}

#contact h2 {
  margin-bottom:0px;
}

#contact-form {
	padding-bottom: 50px;
}
#contact-form .submit .btn {
	color: #fff;
}
#contact-form .submit .btn:hover {
	color: #B43842;
}


/***********/
/* !Footer */
/***********/
#footer {
	background-color: #2e2625;
	color: #fff;
}
#footer .cell .table .cell.align-left {
	width: 68%;
}
#footer p {
	margin-bottom: 0px;
	padding: 40px 10px;
	text-transform: uppercase;
	font-size: 12px;
}
#footer .jb-logo {
	margin-right: 10px;
}


/* !Misc */
.content-section {
	text-align: center;	
	padding: 40px 10px 0px;
}
.content-section h2 {
	padding-bottom: 25px;
}
.red-header {
	color: #b43842;
	text-transform: uppercase;
	font-family: 'din-blackregular';
	font-size: 20px;
}


/********************/
/* !Thank You Modal */
/********************/
#thank-you {
	background-color: #fff;
	padding: 25px;
	text-align: center;
}