/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/

body {
	color: #000;
}
.contactForm .quickform a {
	color: #000 !important;
}

.contactForm .quickform-arrow {
	display: none;
}

/* NEW RSI LEAD FORM */
.contactForm {
    position: absolute;
    float: right;
    width: 300px;
    right: 30px;
    margin-top: 0px;
}
.contactForm .quickform {
    width: 100%;
    padding: 10px 8px 10px;
    background-color: #98afbd;
	transition: .4s all ease-in-out;
    }
.quickform * {
    box-sizing: border-box;    
}
.contactForm .quickform .formhead {
	text-align: center;
	color: #fff;
	height: auto;
	overflow: hidden;
}
.contactForm .quickform .line1 {
	position: relative;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 17px;
    padding: 0 10px 0 0;
}
.contactForm .quickform .line1 .quickform-arrow {
	position: absolute;
    top: 2px;
    right: 0;
	margin-top: -2px;
}
.contactForm .quickform .line1 .quickform-arrow:after {
	position: relative;
    font-family: ETmodules;
    font-size: 25px;
    font-weight: 500;
    content: "3";
	transition: .4s all ease;
}
.contactForm .quickform.expanded .line1 .quickform-arrow:after {
    content: "2";
}
.contactForm .quickform .line3 a {
	color: #fff;
}

.quickform .rsi-lead-form {
/*     max-height: 0px;
	overflow: hidden; */
	transition: .4s all ease;
}
.quickform.expanded .rsi-lead-form {
    max-height: 3000px;
	transition: .4s all ease;
}
.quickform .formbody {
    display: grid;
    grid-column-gap: 2%;
    -ms-grid-columns: (1fr 2%) [12];
    grid-row-gap: 6px;
    grid-template-columns: repeat(12,1fr);
    grid-template-rows: repeat(auto-fill,auto);
    width: 100%;
}
.quickform input[type=text], .quickform select, .quickform textarea  {
    width: 100%;
    min-width: 0;
    -ms-grid-column-span: 12;
    grid-column: span 12;
    background-color: #fff;
    border: 1px solid #bbb;
    padding: 2px;
    color: #4e4e4e;
    font-size: 15px;
    margin-bottom: 0;
    margin-top: 0;
    padding: 8px;
}
.quickform input[type=text].form-width-half {
    -ms-grid-column-span: 6;
    grid-column: span 6;
}
.formsubmit {
    margin-top: 10px;
    max-width: 400px;
    margin-left: auto;
}
#sndForm {
    background: #98afbd;
    color: #ffffff !important;
    border: 0;
    color: #fff;
    cursor: pointer;
    width: 100%;
    position: static;
    float: none;
    padding: 10px !important;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 18px;
}
.rsi-form-error {
    background: #fff9f9;
    font-size: 13px;
    color: #c02b0a;
    border: 1px solid #c02b0a;
    padding: 5px;
    text-align: center;
    line-height: 15px;
    margin: 10px auto;
    -ms-grid-column-span: 12;
    grid-column: span 12;
    display: none;
}
/* NEW RSI LEAD FORM END */

/* Mobile Menu */

.mobile-btn {
    display: inline-block;
/*     padding: 0 15%; */
    color: transparent !important;
}
.mobile-btn.call {
    padding-left: 0;
}
.mobile-btn.menu {
    padding-right: 0;
}
.mobile-btn:before {
    position: relative;
    top: 0;
    left: 0;
    font-size: 25px;
    content: "\61";
    color: #fff !important;
    cursor: pointer;
    text-shadow: 0 0;
    font-family: ETmodules!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1;
    text-transform: none;
    speak: none;
}
.mobile-btn.call:before {
    content: "\e090";
}
.mobile-btn.location:before {
    content: "\e01d";
}
.mobile-btn.shop:before {
	content: "\e07a";
}
.mobile-btn.menu:before {
    font-size: 30px;
}
body:not(.home) #main-content .et_pb_text p {
    padding-bottom: 1em;
}
.alert.alert-info .bagallery-container > h2 {
	display: none;
}

#et-top-navigation {
	padding-left: 0px !important;
}

body:not(.home) #main-content .et_pb_text a {
	text-decoration: underline;
}

.zd-sticky-button {
	bottom: 75px !important;
}

/* Responsive */
@media screen and (max-width:767px) {

}


/********* Mobile Menu Collapse ********/
  
/**** This hides the sub menu items on mobile ****/
  
#main-header .et_mobile_menu li ul.hide {
display: none !important;
}
  
/**** This adjusts the positioning and the background transparency of the parent menu item on mobile ****/
  
#mobile_menu .menu-item-has-children {
position: relative;
}
#mobile_menu .menu-item-has-children > a {
background: transparent;
}
  
/**** This styles the icon and moves it to the right ****/
  
#mobile_menu .menu-item-has-children > a + span {
position: absolute;
right: 0;
top: 0;
padding: 10px 20px;
font-size: 20px;
font-weight: 700;
cursor: pointer;
z-index: 3;
}
  
/**** Here you can swap out the actual icons ****/
  
span.menu-closed:before {
content: "\4c";
display: block;
color: #97aebc;
font-size: 16px;
font-family: ETmodules;
}
  
span.menu-closed.menu-open:before {
content: "\4d";
}


/* Custom Header */
#main-header {
	box-shadow: none !important;
}

#top-menu li a,
#et-secondary-nav li a,
span#et-info-phone {
    font-weight: 500 !important;
}

/* header#main-header > .container {
    margin-top: 20px;
} */

.logo_container {
    margin-bottom: 10px;
}

#top-header .et-social-icon a {
    border: 1px solid #62717a !important;
    padding: 7px;
    border-radius: 50%;
}

ul#et-secondary-nav {
    position: relative;
    top: 10px;
}

/* div#et-top-navigation {
    padding-top: 10px;
    border-top: 2px solid #97aebc;
} */

nav#top-menu-nav {
    width: 100%;
}

ul#top-menu {
    display: flex;
    justify-content: space-between;
}

.et_header_style_centered #top-menu>li>a {
    padding-bottom: 20px;
}

li.menu-2-col > ul {
    column-count: 2;
    width: auto !important;
}

span#et-info-phone {
	font-size: 22px;
    font-weight: 600 !important;
    position: relative;
    top: 2px;
}

div#mobile-topbar {
	display: none;
}

#top-menu li:last-child > ul.sub-menu {
    right: 0;
}

ul#top-menu > li:nth-last-child(1) > ul.sub-menu,
ul#top-menu > li:nth-last-child(2) > ul.sub-menu {
    right: 0;
}

ul#top-menu li:last-child ul ul {
    left: -240px !important;
}

/* FIX SUB-MENU SPACING */
ul#top-menu li > ul.sub-menu li a {
    line-height: 1.4em;
    width: 220px;
}

ul#top-menu li > ul.sub-menu li {
    padding: 3px 10px;
}

.menu-shift-left > ul.sub-menu {
    right: 0;
}

/* Homepage */
.home .procedure-links-heading {
    position: absolute;
    width: 100%;
    bottom: 50px;
    opacity: 1;
    transition: .4s ease all;
    z-index: 1
}

.home .bottom-procedure-links-heading {
    bottom: 180px
}

.home .procedure-links-col:hover .procedure-links-heading {
    opacity: 0;
    z-index: -1
}

.home .procedure-links-container {
    transition: .4s ease all
}

.home .procedure-links-col:hover .procedure-links-container {
    box-shadow: 0px 20px 140px -20px rgba(22,29,67,.4);
    transform: scale(1.05);
    transition: .4s ease all
}

.home .procedure-links {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 485px;
    padding: 30px;
    opacity: 0;
    transform: translate(0px,0px);
    transition: .4s ease all;
    z-index: 2
}

.home .procedure-links:before {
    opacity: .6;
    width: 100%;
    height: 100%;
    background: #000;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1
}

.home .procedure-links ul {
    z-index: 2
}

.home .procedure-links-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.3);
    opacity: 0;
    transition: .4s ease all;
    z-index: -1
}

.home .procedure-links-col:hover .procedure-links {
    opacity: 1;
    transform: translate(0px,0px)
}

.home .procedure-links-col:hover .procedure-links-bg {
    opacity: 1
}

.home .procedure-links a {
    padding: 2px;
    margin: 2px 0
}

/* Interior */
.interior-intro-image img {
    height: 500px;
    object-fit: cover;
    object-position: top;
}

#interior-title-module h1 > span {
    font-size: 20px;
}

/* Mobile */
@media (max-width: 767px) {
	nav#top-menu-nav {
		display: none;
	}
	
	ul#mobile_menu {
		text-align: left;
	}
	
	ul#mobile_menu {
		top: 140px;
	}
	
	.contactForm {
		width: 100%;
		right: 0;
		top: 100px;
	}
	
	header#main-header .container {
		width: 100%;
		height: 100px;
		text-align: center;
	}
	
	li.menu-2-col > ul {
		column-count: 1;
	}
	
	.menu-secondary-link {
		display: none;
	}
	
	div#et-info {
		display: none;
	}
	
	div#mobile-topbar {
		display: flex;
		padding: 10px 0px;
		justify-content: space-between;
	}

	.mobile_nav {
		background: none !important;
	}

	.mobile_nav > span {
		display: none !important;
	}

	div#et-top-navigation {
		height: 0 !important;
		border-top: 0;
	}

	.et_header_style_centered .et_mobile_menu {
		top: -17px !important;
	}
	
	.et_header_style_centered #logo {
		max-height: 100px;
	}
	
	.et_header_style_centered #main-header {
		padding: 0;
	}
	
	/* Sticky */
	div#top-header.et-fixed-header {
		position: fixed !important;
	}

	div#top-header.et-fixed-header {
		top: 0 !important;
	}

	header#main-header.et-fixed-header {
		position: fixed !important;
		top: 50px !important;
	}

	header#main-header.et-fixed-header .contactForm {
		top: 0;
	}

	header#main-header.et-fixed-header ul#mobile_menu {
		top: 40px;
		max-height: 85vh;
    	overflow: scroll;
	}

	header#main-header.et-fixed-header {
		height: 0;
	}

	header#main-header.et-fixed-header .logo_container {
		display: none;
	}
	
	/* Interior */
	.interior-intro-image img {
		height: 300px;
	}

	
/* 	body:not(.home) .et_pb_section.et_pb_section_0 {
		margin-top: 40px;
	} */
}
/* - */

/* Body Text */
.et_pb_module.et_pb_text p {
    font-weight: 400 !important;
}

#skip-to-main {
    box-sizing: border-box;
    left: 38px;
    top: -100px;
    position: fixed !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-align: center !important;
    align-items: center !important;
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
    background: #fff !important;
    border-radius: 8px !important;
    border: 2px solid #000000 !important;
    max-width: 275px;
    padding: 0 15px 0 !important;
    text-align: left !important;
    width: 100% !important;
    height: 63px !important;
    box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.6) !important;
    opacity: 0;
    transition: top .2s, opacity .2s;
    z-index: 1000000;
    font-size: 16px;
    color: #000000;
}
#skip-to-main:focus {
    top: 40px;
    opacity: 1;
    outline: 1px solid #97aebc;
    background: #fff !important;
}
:focus-visible {
    outline: 2px dashed #97aebc;
}
#top-menu li:focus-within > ul {
    opacity: 1;
    visibility: visible;
}