/*
 Theme Name:     Divi Child Theme (by Infocus)
 Author:         Infocus Publishing
 Author URI:     http://infocuspub.com/
 Template:       Divi
 Version:        1.0
 Description:    A Child Theme for Divi with additional Social Icons options.
 Wordpress Version: 4.9.1
*/

/* ----------- PUT YOUR CUSTOM CSS BELOW THIS LINE -- DO NOT EDIT ABOVE THIS LINE --------------------------- */



/* Container Max Width*/

.container, .et_pb_row {
	max-width: 1152px;
}

/* Logo Styles */

.et_header_style_left #logo, .et_header_style_split #logo {
	max-width: 70%;
	max-height: 70px;
	margin-top: 15px;
	margin-bottom: 15px;
}

@media (min-width: 981px) and (max-width: 1024px) {
	.container, .et_pb_row {
		width: 90%;
	}
	.et_header_style_left #logo, .et_header_style_split #logo {
		max-width: 35%;
	}
}
@media (max-width: 980px) {
	.et_header_style_left #logo, .et_header_style_split #logo {
		max-height: 46px;
		margin-top: 18px;
		margin-bottom: 18px;
	}
	
}

/* Mobile Menu breakpoint */

@media only screen and ( max-width: 980px) {
	#top-menu-nav, #top-menu {
		display: none;
	}
	#et_top_search {
		display: none;
	}
	#et_mobile_nav_menu {
		display: block;
		margin-right: 0px;
	}
	.et_mobile_menu a {
		color: #231f20 !important;
	}
}

#main-header {
	background-color: #231f20 !important;
}

/* Detect if page does NOT use Divi builder layout */

body:not(.et_pb_pagebuilder_layout) {}

/* For FIXED header, detect if sticking to top */

#main-header:not(.et-fixed-header) {}

/* For transparent nav menu BG on Single posts */

body:not(.et_pb_pagebuilder_layout) #main-header:not(.et-fixed-header) {
	/*background: #666;*/
}

/* For fixing link color on current submenu item */

#main-header:not(.et-fixed-header) .sub-menu li.current-menu-item>a {
	/*color:#333;*/
}

/* Dropdown */

/* Mobile Menu Custom Colors */

.mobile_menu_bar::before {
	color: #a89549;
}

.et_mobile_menu {
	border-top-color: #a89549;
}
.top-phone-desktop {
	display: none;
	position: absolute;
	top: 15px;
	right: 0;
}
.hide-on-desktop { display: block !important; }
.hide-on-mobile { display: none !important; }

/* Logo above navigation menu */

@media only screen and (min-width: 981px) {
	.et_header_style_left .logo_container {
		position: relative;
	}
	#top-nav-wrap {
		background-color: #191717;
	}
	#et-top-navigation {
		float: none;
		padding-left: 0!important;
		padding-top: 20px!important;
	}
	nav#top-menu-nav, ul#top-menu {
		float: none;
	}
	.nav li ul {
		/*border-top: 3px solid #555;
		background: #ccc !important;*/
	}
	#top-menu > li > a {
		padding-bottom: 22px !important;
		padding-right: 8px;
		font-size: 14px;
		font-weight: 400;
		color: #fff;
	}
    #top-menu > li.current-menu-item > a {
        color: #fff !important;
    }
	#top-menu > li.current-menu-ancestor > a {
		color: #fff !important;
	}
	.sub-menu {
		border-top-color: #a89549 !important;
		padding: 10px 0 !important;
	}
	.sub-menu li {
		line-height: 1.5em !important;
		padding: 0 !important;
	}
	.sub-menu li a {
		width: 240px !important;
	}
	.sub-menu > li.current-menu-item > a {
		color: #a89549 !important;
	}
	.top-phone-desktop {
		display: block;
	}
	.top-phone-desktop h4 {
		font-size: 18px;
		color: #eeeeee;
	}
	.top-phone-desktop h3 {
		font-size: 24px;
		color: #a89549;
		padding-bottom: 6px;
		line-height: 24px;
	}
	.top-phone-desktop h3 small {
		font-size: 17px !important;
		line-height: 24px !important;
	}
	.top-phone-desktop h3 .fas {
		font-size: 21px;
		margin-right: 12px;
	}
	.top-phone-desktop .sl-roanoke {
		font-size: 34px;
		padding-top: 10px;
	}
	.top-phone-desktop .sl-roanoke .fas {
		font-size: 30px;
	}
	#main-header:not(.et-fixed-header) .et_menu_container {
		transition: all 0.25s ease-in-out;
		height: 110px;
		transform: scale(1);
	}

	#main-header.et-fixed-header .et_menu_container {
		height: 0px;
		transform: scale(0);
		transition: all 0.25s ease-in-out;
	}
	.hide-on-desktop { display: none !important; }
	.hide-on-mobile { display: block !important; }
}

@media (min-width: 1440px) {
	#top-menu > li > a {
		padding-right: 12px;
		font-size: 15px;
	}
}

/* Change default sidebar width */

#left-area {
	width: 66.67%;
}

#sidebar {
	width: 33.33%;
}

.et_right_sidebar #main-content .container::before {
	right: 33.33% !important;
}

/* Menu CTA Button */

.call-us-number {
	display: block;
	position: relative;
	background-color: #a89549;
	padding: 1px 15px 8px 46px;
	color: #231f20;
	border-radius: 3px;
	font-size: 26px;
	font-weight: 400;
	font-family: "Cinzel", sans-serif;
	max-width: 280px;
	text-align: center;
	margin: auto;
}
.call-us-number:hover {
	background-color: #bda442;
}
.call-us-number::before {
	font-family: ETmodules;
	font-weight: 400;
	content: "\e090";
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 50px;
	border-right-style: solid;
	border-right-width: 1px;
	border-right-color: rgba(0, 0, 0, 0.2);
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}

/* Change the default breakpoint for mobile menu    */

.phone-for-mobile {
	padding: 10px 0;
	background-color: #fff;
	display: none;
	overflow: hidden;
	margin: auto;
	box-shadow: inset 0px -1px 1px rgba(0, 0, 0, 0.08);
}

.phone-for-mobile .call-us-number {
	font-size: 21px;
	font-weight: 700;
	max-width: 250px;
	padding: 10px 15px 10px 65px;
	margin: 0 0 0 auto;
}

.phone-for-mobile .call-us-number::before {
	width: 50px;
	font-weight: 400;
}

@media (max-width: 980px) {
	.phone-for-mobile {
		display: block;
	}
	.menu-item .call-us-number {
		display: none;
	}
	.call-button1, .call-button2 {
		font-family: 'Cinzel', serif !important;
}
	.call-button1 {
	    margin-bottom: 16px !important;
}
}

@media (max-width: 568px) {
	.phone-for-mobile .call-us-number {
		margin: 0 auto;
	}
}

/* Class for ETmodules Icons */

.et-icon {
	font-family: ETmodules;
}

/* Horizontal Align Middle */
.horizontal-align-middle {
	display: flex;
	justify-content: center;
}
/* Horizontal Align Right  */
.horizontal-align-right {
	display: flex;
	justify-content: flex-end;
}
/* Horizontal Align Left and Right  */
.horizontal-align-left-right {
	display: flex;
	justify-content: space-between;
}
/* Vertical Align Middle */
.vertical-align-middle {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
/* Vertical Align Bottom  */
.vertical-align-bottom {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
/* Vertical Align Top and Bottom  */
.vertical-align-top-bottom {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

img.alignleft, img.alignright {
	margin-bottom: 5px;
}

/* Remove Vertical Line from Sidebar */

#main-content .container::before {
	background-color: transparent !important;
}

.et_pb_widget_area_left, .et_pb_widget_area_right {
	border-color: transparent !important;
}

/* Remove Align/Float of Images on MOBILE */

@media only screen and (max-width: 480px) {
	#main-content .et_pb_text img.alignright, #main-content .et_pb_text img.alignleft {
		display: block;
		float: none;
		margin: 0 auto 15px;
	}
	.one_fourth, .one_half, .one_third, .three_fourth, .two_third {
		width: 100%;
		display: block;
		float: none;
		margin: 0 auto 20px;
		position: relative;
	}
}

/* Fix for Single Posts excess padding/margin */

.single .post {
	padding-bottom: 0;
}

.single #left-area {
	padding-bottom: 0;
}

.single .et_pb_post {
	margin-bottom: 0;
}

/* Styling CF7 to look like the Divi Contact Form */

.wpcf7-text, .wpcf7-textarea, .wpcf7-captchar {
	background-color: #f5f5f5 !important;
	border: 1px solid #ddd !important;
	width: 100% !important;
	-moz-border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	border-radius: 3px !important;
	font-size: 14px;
	color: #333 !important;
	padding: 16px !important;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.wpcf7-submit {
	color: #231f20 !important;
	margin: 8px auto 0;
	cursor: pointer;
	font-size: 21px;
	font-weight: 500;
	font-family: "Cinzel", sans-serif;
	text-transform: uppercase;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 6px 20px;
	line-height: 1.7em;
	background: #a89549;
	border: 2px solid;
	border-color: #a89549;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	display: block;
}

.wpcf7-submit:hover {
	background-color: #bea53f;
	border-color: #bea53f;
	padding: 6px 20px !important;
}

.wpcf7-form fieldset {
	border: 1px solid #ddd;
	padding: 10px 24px 24px;
	border-radius: 3px;
	box-sizing: border-box;
	margin: 20px 0;
}

.wpcf7-form legend {
	padding-left: 5px;
	padding-right: 5px;
	font-weight: 700;
}


.wpcf7-form .clear {
	margin-bottom: 16px;
}

@media (min-width: 980px) and (max-width: 1024px) {
	.wpcf7-submit  {
		font-size: 15px;
	}
}

@media (max-width: 480px) {
	.wpcf7-submit  {
		font-size: 15px;
	}
}

div.wpcf7 .ajax-loader {
	width: auto;
}

/* CF7 Recaptcha Styles */
@media screen and (min-width: 1367px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.92);
		transform: scale(0.92);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 1366px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.92);
		transform: scale(0.92);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 1280px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.90);
		transform: scale(0.90);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 1200px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.86);
		transform: scale(0.86);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 1140px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.8);
		transform: scale(0.8);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 1080px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.75);
		transform: scale(0.75);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 1024px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(0.7);
		transform: scale(0.7);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 980px) {
	.et_pb_widget_area #rc-imageselect, 
	.et_pb_widget_area .wpcf7-recaptcha, 
	.et_pb_widget_area .cf7sr-g-recaptcha {
		-webkit-transform: scale(1);
		transform: scale(1);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}

@media screen and (max-width: 414px) {
	#rc-imageselect, 
	.wpcf7-recaptcha, 
	.cf7sr-g-recaptcha {
		-webkit-transform: scale(0.96);
		transform: scale(0.96);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 375px) {
	#rc-imageselect, 
	.wpcf7-recaptcha, 
	.cf7sr-g-recaptcha {
		-webkit-transform: scale(0.90);
		transform: scale(0.90);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}
@media screen and (max-width: 360px) {
	#rc-imageselect, 
	.wpcf7-recaptcha, 
	.cf7sr-g-recaptcha {
		transform: scale(0.85);
		-webkit-transform: scale(0.85);
		transform-origin: 0 0;
		-webkit-transform-origin: 0 0;
	}
}
@media screen and (max-width: 320px) {
	#rc-imageselect, 
	.wpcf7-recaptcha, 
	.cf7sr-g-recaptcha {
		-webkit-transform: scale(0.75);
		transform: scale(0.75);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: inherit;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: inherit;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: inherit;
}

/* Heading styles for the Page Content */

.main-page-content h2, .main-page-content h3 {
	margin-top: 0.75em;
	margin-bottom: 0.5em;
}

/* Slider Animation Fix */

.et-pb-active-slide .et_pb_slide_description {
	animation: fadeLeft 0.9s ease-in-out 0s;
}

/* Blog Post Grid Margin Bottom Fix */

.et_pb_gutters3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post, .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post {
	margin-bottom: 24px;
}

.hero-play-button a {
	display: block;
	position: relative;
	color: #fff;
	background-color: rgba(0, 0, 0, 0.6);
	border: 2px solid #fff;
	border-radius: 50%;
	margin: auto;
	width: 96px;
	height: 96px;
}

.hero-play-button a::before {
	display: block;
	content: "\f0da";
	font-family: 'Font Awesome 5 Free';
	font-size: 72px;
	font-weight: 900;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-40%, -50%);
	color: #fff;
}

.hero-play-button a:hover {
	background-color: #3498db;
}

p:empty {
	display: none;
}

.p-last-pad p:last-of-type {
	padding-bottom: 1em;
}

.inline-buttons {
	text-align: center;
}

.inline-buttons .et_pb_button_module_wrapper {
	display: inline-block;
}

.inline-buttons .et_pb_button {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.book-cta {
	margin-top: -50px !important;
}
@media (max-width: 980px) {
	.book-cta {
		margin-top: 0px !important;
	}
}

.sl-form-sidebar {
	background-color: #231f20;
	padding: 16px;
	color: #fff !important;
}

.sl-form-sidebar h3 {
	color: #fff !important;
	font-size: 26px;
}

.sl-form-sidebar p {
	line-height: 1.5;
	padding-bottom: 20px;
}

.sl-form-sidebar p:last-of-type {
	padding-bottom: 0;
}
.wpcf7 .ajax-loader {
	display: none !important;
}

.et_pb_widget:last-child {
	margin-bottom: 0 !important;
}

@media (max-width: 479px) {
	.et_pb_widget:last-child {
		margin-bottom: 0 !important;
	}
}
hr {
	border: 0;
	height: 1px;
	margin-top: 15px;
	margin-bottom: 30px;
	background-color: #a89549;
}

.widgettitle {
	color: #a89549;
	font-size: 26px !important;
}

.et_pb_widget ul li {
	border-bottom: 1px solid #eee;
	padding-bottom: 6px;
	padding-left: 6px;
}

.et_pb_widget ul li ul li {
	border-bottom: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.et_pb_widget ul li, .sl-inner-content ul li {
	list-style: none;
	padding-left: 15px;
}
.et_pb_widget ul li:before, .sl-inner-content ul li:before {
	
	content: "\f105";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #d0ac30;
	margin-right: 6px;
	margin-left: -15px;
}
.et_pb_widget ul li ul li:before, .sl-inner-content ul li ul li:before {
	content: "\f0da";
	margin-right: 6px;
}

.et_pb_widget ul li:first-child {
	border-top: 1px solid #eee;
	padding-top: 6px;
}

.et_pb_widget ul li ul li:first-child {
	padding-top: 10px;
}

.et_pb_widget ul li ul {
	margin-top: 6px;
	margin-bottom: 0px;
}

div[class*=et_pb_sidebar] .widget_media_image {
	text-align: center;
}
.et_pb_sidebar_0.et_pb_widget_area .et_pb_widget {
	margin-bottom: 40px;
}

@media (max-width: 360px) {
	.sl-form-sidebar h3 {
		font-size: 22px;
	}
	.sl-form-sidebar p {
		font-size: 13px;
	}
	.et_pb_widget:last-child {
		margin-bottom: 0 !important;
	}
}

small {
	font-size: 80% !important;
	line-height: 1.2 !important;
}

.sl-inner-content h2 {
	margin-top: 24px;
	line-height: 1.3;
}

.sl-inner-content ul li {
	margin-bottom: 10px;
}

.sl-inner-content ul li ul li {
	list-style-type: circle;
}

.sl-footer a {
	color: #fff;
}

.sl-footer .fas, .sl-footer .fab, .sl-footer .far {
	margin-right: 8px;
}

.more-link {
	text-transform: uppercase;
	font-weight: 700;
	margin-top: 10px;
	color: #a89549;
}
.more-link::after {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: 4px;
}

/* IE Styles */
@media (min-width: 981px) {
	body.ie .vertical-align-bottom,
	body.ie .vertical-align-middle {
		position: relative;
	}
	body.ie .sl-featured-pic .et_pb_image, body.ie .sl-book-pic .et_pb_image {
		position: absolute;
		bottom: 0;
	}
	body.ie .sl-featured-pic {
		
		min-height: 520px;
	}
	body.ie .sl-featured-pic img {
		max-height: 520px;
	}
	body.ie .sl-featured-txt {

	}
	body.ie .sl-book-pic {
		min-height: 282px;
	}
	body.ie .sl-book-pic img {
		
	}
	.bpad-p-0 p {
		padding-bottom: 0;
	}
}

/* Landing Pages (PPC) */
.sl-feat-pic {
	
}

.sl-feat-pic ol {
	list-style-position: outside;
	margin-left: 24px;
	margin-top: 20px;
	max-width: 460px;
}

.sl-feat-pic ol li {
	margin-bottom: 15px;
}

.et_mobile_device .sl-feat-pic {
	background-image: none !important;
}

.sl-feat-pic .wpcf7-text, 
.sl-feat-pic .wpcf7-textarea {
	padding: 10px 12px !important;
	border-color: #222 !important;
}

.sl-feat-pic .ajax-loader {
	display: none !important;
}

.sl-feat-pic .wpcf7-submit {
	color: #fff !important;
	margin: 8px auto 0;
	cursor: pointer;
	font-size: 17px;
	font-weight: 700;
	font-family: "Raleway", sans-serif;
	text-transform: uppercase;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 6px 20px;
	line-height: 1.7em;
	background: #008000;
	border: 2px solid;
	border-color: #008000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	display: block;
}

.sl-feat-pic .wpcf7-submit:hover {
	background-color: #bea53f;
	border-color: #bea53f;
}

.et_mobile_device_not_ipad .sl-feat-pic .wpcf7-submit {
	font-size: 14px;
	padding: 5px 10px !important;
}

.et_mobile_device_not_ipad .sl-feat-pic .wpcf7-submit:hover {
	font-size: 14px;
	padding: 5px 10px !important;
}
.sl-inner-content ol {
	padding: 0 0 23px 1.5em !important;
    line-height: 26px !important;
    list-style-position: outside !important;
    list-style-type: decimal !important;
}
.sl-inner-content ol li {
	margin-bottom: 10px !important;
}
.sl-inner-content a:link {
	font-weight: 400;
	text-decoration: underline;
}
.sl-inner-content a:hover {
	color: #202020;
}
.sl-inner-content a span {
	font-weight: 700 !important;
}
.entry-content h3 {
	font-family: 'Raleway', sans-serif;
}
@media (max-width: 360px) {
	.et_pb_row {
		width: 90%;	
	}
}
.cf7sr-g-recaptcha {
	display: inline-block;
}
.single-post .et_pb_title_featured_container {
	margin-top: 30px;
	margin-bottom: 30px;
}
@media only screen and (min-width: 1080px) {
    .sl-blog .et_pb_post.has-post-thumbnail .entry-featured-image-url {
        float: right;
        width: 30%;
        margin-left: 4%;
    }
	.sl-blog .et_pb_post.has-post-thumbnail .entry-featured-image-url img {
		height: 180px;
		object-fit: cover;
	}
    .sl-blog .et_pb_post.has-post-thumbnail:not(.format-gallery) > .post-content {
        padding-right: 34%;
    }
}
