/**
Theme Name: CareSTL Health
Author: FalkHarrison
Author URI: http://www.falkharrison.com/
Description: This is an Astra child theme customized for CareSTL Health
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/


/* Document level adjustments */

html {
	font-size: 16px;
}

@media (max-width: 1024px) {
	html { font-size: 16px; }
}

@media (max-width: 768px) {
	html { font-size: 16px; }
}



h1, .entry-content h1 {
    font-size: 2.5rem;
	color: #808e49;
}

h2, .entry-content h2 {
    font-size: 1.75rem;
	margin-bottom: 2rem;
	color: #808e49;
}


.fh-rule-divider .elementor-widget-divider .elementor-divider-separator {
    border-top-color: #ccc;
	border-top-width: 2px;
}

.fh-rule-divider .elementor-widget-divider .elementor-divider {
	padding-top: 2rem !important;
	padding-bottom: 3rem !important;
}



.elementor-widget-heading .elementor-heading-title {
	margin-top: 1rem;
	margin-bottom: 1rem;
}


.fhc_max_width_inner_column .elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
}

/* @group Site Header */

/* Site Header */

#fhc_site_header_above .elementor-column-wrap {
	padding: 10px 0 0;	
}

#fhc_site_header_below .elementor-column-wrap {
	padding: 0 0 10px;
}

#fhc_site_header_above {
	font-size: .875rem;
	margin-top: 1rem;
}

#fhc_site_header_below .sub-menu {
	font-size: 1rem;
}

#fhc_site_header_below {
	font-size: 1.0625rem;
	font-weight: 300;
	border-bottom: 1px solid #fff;
	padding-bottom: 1rem;
}

#fhc_site_header_above .elementor-nav-menu a {
	padding-top: .25rem;
	padding-bottom: .25rem;
}

#fhc_site_header_above ul li:not(:last-child) {
	border-right-style: solid;
	border-right-width: 0;
	border-right-color: #ccc;
}

#fhc_site_header_below .elementor-nav-menu a {
	padding-right: 1.25rem;
	padding-left: 1.25rem;
}


.elementor-section-boxed .fhc_padding_right {
	padding-right: 8rem;
}

.elementor-section-boxed .fhc_padding_left {
	padding-left: 8rem;
}

#fhc_site_header_above .e--pointer-double-line .elementor-item::after, 
#fhc_site_header_above .e--pointer-double-line .elementor-item::before, 
#fhc_site_header_above .e--pointer-overline .elementor-item::after, 
#fhc_site_header_above .e--pointer-overline .elementor-item::before, 
#fhc_site_header_above .e--pointer-underline .elementor-item::after, 
#fhc_site_header_above .e--pointer-underline .elementor-item::before {
    height: 0;
}

.ast-above-header-wrap {
	padding-top: 1rem;
	text-align: right;
}

.ast-above-header-section-wrap {
	display: inline-flex;
	justify-content: flex-end;	
}


.ast-above-header-section-2 {
	margin-left: .5rem;
}

.ast-above-header-navigation ul li {
	line-height: 1.5rem;
}

.ast-above-header-navigation ul li:not(:last-child) {
	border-right-style: solid;
	border-right-width: 1px;
	border-right-color: #ccc;
}

@media (max-width: 1024px) { 
	.ast-above-header-wrap {
	}
}

@media (max-width: 768px) { 
	.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons {
		padding-top: 0;
	}
	.ast-header-break-point .ast-mobile-header-stack.header-main-layout-1 .site-branding {
		padding-top: 2rem;	
	}
}









/* Fancy Header & Footer */

#fhc-fancy-header {
	width: 100%;
	height: 8vw;
	display: block;
	/* background: url(../../plugins/falkharrison/images/fancy-header.png) no-repeat center top; */
	background-size: 100% auto;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -100;
}

/* @end */

#fhc-fancy-footer {
	width: 100%;
	height: 8vw;
	display: block;
	/* background: url(../../plugins/falkharrison/images/fancy-footer.png) no-repeat center bottom; */
	background-size: 100% auto;
	position: absolute;
	bottom: 0;
	left: 0;
    z-index: -1;
}

#fhc-fancy-footer img {
	position: absolute;
	bottom: 0;
	left: 0;
}

.ast-page-builder-template .site-content > .ast-container.fhc-fancy-padding-top {
	padding-top: 6vw;
}

.ast-page-builder-template .site-content > .ast-container.fhc-fancy-padding-bottom {
	padding-bottom: 12vw;
}

.site-content {
	position: relative;
}


.elementor-posts .elementor-post__excerpt p,
.elementor-posts .elementor-post__read-more {
	font-size: unset;
	font-size: 16px;
}
	

.elementor-widget-posts .elementor-post__title, 
.elementor-widget-posts .elementor-post__title a {
	color: #808e49;
}

.elementor-posts .elementor-post__title {
    font-size: 1.75rem;
}




	
/* @group Site Footer */

/* Site Footer */

#fhc-site-footer  {
	line-height: 1.5;
}

#fhc-site-footer h2 {
	color: white;
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: .5rem;
}

#fhc-site-footer ul {
	margin-left: 0;
	font-size: .875rem;
}

#fhc-site-footer ul li {
	list-style-type: none;
}

#fhc-site-footer ul li a {
	color: #ccc;
}

#fhc-site-footer ul li a:hover {
	text-decoration: underline;
}

#fhc-footer-legal ul,
#fhc-footer-legal p {
    display: inline-flex;
	color: #999;
	font-size: .875rem;
}

#fhc-footer-legal ul li {
	float: left;
}

#fhc-footer-legal ul li:not(:last-child) {
	margin-right: 1rem;
	padding-right: 1rem;
	border-right-style: solid;
	border-right-width: 1px;
	border-right-color: #666;
}

#fhc-footer-legal p {
	margin-right: 3rem;
}

@media (max-width: 1024px) { 
}

@media (max-width: 768px) { 
	#fhc-footer-legal p {
		margin-right: 0;
		margin-bottom: 1em;
	}
}


#fhc-footer-legal .elementor-column-wrap {
	padding: 1rem 0 0;
}

#fhc-site-footer .fa {
	font-family: reset;
	font-family: FontAwesome;
}

@media (max-width: 1024px) { 
}

@media (max-width: 768px) { 
	#fhc-site-footer .fa {
		font-size: 1.5rem;
	}
	.elementor-1101 .elementor-element.elementor-element-083358d .elementor-social-icon:not(:last-child) {
		margin-right: 1rem;
	}
	.elementor-widget-social-icons {
		padding-top: 1em;
		padding-bottom: 1em;
	}
	.elementor-element-0b968f4 {
		display: none;
	}
}



#fhc-site-footer .elementor-widget:not(:last-child) {
	margin-bottom: 0;
}



@media (max-width: 1024px) { 
}

@media (max-width: 768px) { 
	#fhc-site-footer .elementor-element-e9911d4,
	#fhc-site-footer .elementor-element-01a9a27,
	#fhc-site-footer .elementor-element-17dd619,
	#fhc-site-footer .elementor-element-5426645 {
		display: none;
	}
	#fhc-site-footer .elementor-element-7577766 .elementor-image,
	#fhc-site-footer .elementor-element-6d0f09b .elementor-widget-wrap,
	#fhc-site-footer .elementor-element-083358d .elementor-social-icons-wrapper,
	#fhc-site-footer .elementor-element-4b6f300 .elementor-text-editor {
		text-align: center;
	}
}










/* @end */

/* @group Home Page Slider */

/* Home Slider */

#fhc_home_slider .elementor-slides .slick-slide-inner .elementor-slide-heading {
	font-weight: 300;
}

#fhc_home_slider .elementor-slide-button:after { 
  content: " >";
}

#fhc_home_slider .elementor-slide-content {
	max-width: 1440px;
	margin-right: auto;
	margin-left: auto;
}

#fhc_home_slider .elementor-slide-heading,
#fhc_home_slider .elementor-slide-description {
	width: 33%;
}

#fhc_home_slider .elementor-slide-description {
	margin-bottom: 3.5rem;
}

#fhc_home_slider .slick-slide-bg {
	background-position: center top;
}

#fhc_home_slider .elementor-column-wrap {
	padding: 0;
}

#fhc_home_slider .elementor-slide-button {
	font-size: 1.0625rem;
	padding: 1rem 2rem;
	color: #666;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}



@media (max-width: 1024px) { 
}

@media (max-width: 768px) { 
	#fhc_home_slider .elementor-slides .slick-slide.slick-active .slick-slide-bg {
		background-position: 70% 0;
	}
	#fhc_home_slider .elementor-slide-heading, #fhc_home_slider .elementor-slide-description {
	    width: 50%;
	}
	.elementor-slides .slick-slide-inner .elementor-slide-description {
	    font-size: unset;
	    font-size: 16px;
	}
	.elementor-slides .slick-slide-inner .elementor-slide-heading {
	    font-size: unset;
	    font-size: 2rem;
	}
}





/* @end */

/* @group Services Listing */

/* Services Listing */

#fhc_service_listing {
	padding-top: 5rem;
	padding-bottom: 4.5rem;
}

#fhc_service_listing h2 {
	color: white;
	font-size: 2rem;
	padding-bottom: 1.25rem;
}

#fhc_service_listing * {
	border-right-width: 0;
	border-right-style: none;
	border-bottom-width: 0;
	border-bottom-style: none;
	border-left-style: none;
	border-left-width: 0;
	border-top-style: none;
	border-top-width: 0;
}

#fhc-providers-by-services-listing .elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated,
#fhc_service_listing .elementor-column-wrap {
	padding: 0;
}

#fhc_service_listing thead .uael-table-row th,
#fhc_service_listing tbody .uael-table-row td:nth-of-type(odd) {
	border-left: 1px solid #666;
	padding-left: 1rem;
}


#fhc_service_listing thead .uael-table-row th .uael-table__text {
	color: white;
	font-size: 1rem;
	font-weight: bold;
	text-transform: uppercase;
}

#fhc_service_listing tbody td.uael-table-col .uael-table__text {
	color: #ccc;
}

#fhc_service_listing ul {
	margin-left: 0;
	margin-bottom: 0;
	padding-right: 1rem;
	line-height: 1.2;
}

#fhc_service_listing li {
	list-style-type: none;
	margin-bottom: .5rem;
}

#fhc_service_listing thead .uael-table-row th {
}

#fhc_service_listing thead .uael-table-row th .uael-table__text {
	font-size: 1.125rem;
	text-transform: uppercase;
	font-weight: bold;
}

#fhc_service_listing a {
	color: #ccc;
	text-decoration: underline;
}

#fhc_service_listing .elementor-button-wrapper a {
	padding: 1.0625rem 2.5rem;
	color: white;
	text-decoration: none;
	font-size: 1.125rem;
}

#fhc_service_listing .elementor-button {
	-webkit-border-radius: 6px;
	border-radius: 6px;
}

@media (max-width: 1024px) { 
}

@media (max-width: 768px) { 
	#fhc_service_listing .elementor-widget-button {
		margin-top: 2rem;
	}
	#fhc_service_listing tbody {
		display: none;
	}
}




/* @end */

/* @group People Listing */

/* People Listing */
#fhc_people_listing ul {
	display:  flex;
	flex-flow: row wrap;
	align-content: flex-start;
}

#fhc_people_listing li {
	flex-basis: 20%;
}

#fhc_people_listing ul,
#fhc_people_listing li, 
#fhc_people_listing .elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
	padding: 0;
	margin: 0;
}


#fhc_people_listing ul li {
	list-style-type: none;
	list-style-image: none;
	margin-bottom: 3rem;
}

#fhc_people_listing ul li {
	border-left: 1rem solid transparent;
	border-right: 1rem solid transparent;
}

#fhc_people_listing li > h2 {
	margin-top: 1.25rem;
	margin-bottom: .5rem;
	font-size: 1.5rem;
}

#fhc_people_listing li > p {
	font-style: normal;
	line-height: 1.5;
	font-weight: normal;
	margin-bottom: 0;
}

#fhc_people_listing li > img {
	width: 100%;
	height: auto;
}




.fhc_people_executives ~ .elementor-section-boxed .elementor-widget:not(:last-child) {
    margin-bottom: 0;
}

.fhc_people_executives ~ .elementor-section-boxed h2 {
	margin-bottom: .5rem;
	padding-bottom: 0;
	font-size: 2rem;
}

.fhc_people_executives ~ .elementor-section-boxed h3 {
	font-size: 1rem;
	margin-bottom: 1.5rem;
	padding-bottom: 0;
	font-style: italic;
}

.fhc_people_executives ~ .elementor-section-boxed img {
	/* max-height: 24vw; */
	width: auto;
}

/* @end */

/* @group Providers Listing */

/* Providers by Service Listing */


#fhc-providers-by-services-listing {
	padding-top: 4rem;
	padding-bottom: 5rem;
}

#fhc-providers-by-services-listing h2 {
	font-size: 2rem;
	font-weight: 300;
	margin-bottom: 1.5rem;
}

#fhc-providers-by-services-listing h2::after {
	content:  " Providers";
}

#fhc-providers-by-services-listing h3 {
	font-size: .875rem;
	text-transform: uppercase;
	color: #999;
	font-weight: bold;
	letter-spacing: .15rem;
	word-spacing: .15rem;
}

#fhc-providers-by-services-listing #fhc-table-header .elementor-column-wrap {
	padding: 1rem 1rem 1rem 0;
}

#fhc-providers-by-services-listing #fhc-table-header .elementor-column-wrap {
	border-right: 5px solid white;
	padding-left: 1rem;
}

#fhc-providers-by-services-listing #fhc-table-body .col-sm-3 {
	display: flex;
	margin-top: 1em;
}

#fhc-providers-by-services-listing #fhc-table-body .col-sm-3:not(:first-of-type) {
	border-top: 0 solid #ccc;
	padding-top: 0;
}

#fhc-providers-by-services-listing #fhc-table-body .fhc-col {
	display: inline-flex;
	width: 25%;
	align-items: center
}

#fhc-providers-by-services-listing #fhc-table-body .fhc-col-2-4 {
	font-weight: bold;
}

#fhc-providers-by-services-listing #fhc-table-body .elementor-column-wrap {
	padding: 0;
}

#fhc-providers-by-services-listing #fhc-table-body .fhc-col-1-4 {
	justify-content: center
}

#fhc-providers-by-services-listing #fhc-table-nav {
	border-top: 0 solid #ccc;
	padding-top: 1em;
	position: relative;
	margin-top: 1rem;
}

#fhc-providers-by-services-listing #fhc-table-nav::after {
	content: "";
	clear: both;
	display: table;
}

#fhc-providers-by-services-listing #fhc-table-nav ul {
	position: absolute;
	width: 100%;
	text-align: center;
	margin: 0;
	font-weight: bold;
	justify-content: center;
}

#fhc-providers-by-services-listing #fhc-table-nav ul li {
	list-style-type: none;
	padding-right: 2rem;
	padding-left: 2rem;
	display: inline-block;
}

#fhc-providers-by-services-listing #fhc-table-nav ul li:not(:last-of-type) {
	border-right: 1px solid #ccc;
}

@media (max-width: 1024px) { 
	.elementor-1450 .elementor-element.elementor-element-a9e60b6 {
	    background-color: transparent;
	}
	.elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
	    background-color: #e5e5e5;
	}
}

@media (max-width: 768px) { 
	#fhc-providers-by-services-listing #fhc-table-header {
		display: none;
	}
	#fhc-providers-by-services-listing #fhc-table-body .col-sm-3 {
		display: inline-flex;
		flex-direction: column;
		width: 32%;
		justify-content: space-between
	}
	#fhc-providers-by-services-listing #fhc-table-body .fhc-col-1-4,
	#fhc-providers-by-services-listing #fhc-table-body .fhc-col-2-4,
	#fhc-providers-by-services-listing #fhc-table-body .fhc-col-3-4,
	#fhc-providers-by-services-listing #fhc-table-body .fhc-col-4-4 {
		width: 100%;
	}
	#fhc-providers-by-services-listing #fhc-table-body .fhc-col-1-4 {
		padding-bottom: 1rem;
	}
	#fhc-providers-by-services-listing #fhc-table-nav,
	#fhc-providers-by-services-listing #fhc-table-body .col-sm-3 {
		border-top-style: none !important;
		border-top-width: 0 !important;
	}
	#fhc-providers-by-services-listing #fhc-table-body .fhc-col-1-4 {
	    justify-content: left;
	}



}





/* @end */

/* @group Callout Text */

/* Callout Text */

.fhc_callout_text {
	padding-top: 5rem;
	padding-bottom: 4.5rem;
}

.fhc_callout_text h2.elementor-heading-title {
	font-size: 2rem;
	font-weight: 300;
	margin-bottom: 1.5rem;
	color: #808e49;
}

.fhc_callout_text p {
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
	font-size: 1.25rem;
	line-height: 1.5;
	color: #666;
	margin-bottom: 1.5rem;
}


@media (max-width: 1024px) { 
	.elementor-28 .elementor-element.elementor-element-43a0b29 > .elementor-container {
	    max-width: 100px !important;
	}
}

@media (max-width: 768px) { 
}









/* @end */

/* @group Callout CTA */

/* Callout CTA */

#fhc_callout_cta {
	font-size: 1rem;
	padding-top: 4rem;
	padding-bottom: 4rem;
	line-height: 1.5;
	border-top: 1px solid #ccc;
	margin-top: 4rem;
}

#fhc_callout_cta h2 {
	font-size: 2rem;
	font-weight: 300;
	margin-bottom: 1.5rem;
	color: #808e49;
}

#fhc_callout_cta h3 {
	font-size: 1rem;
	margin-bottom: 0;
	font-weight: bold;
	color: #808e49;
}

#fhc_callout_cta .fhc-col-3-3 p {
	max-width: 300px;
	margin-right: auto;
	margin-left: auto;
}

#fhc_callout_cta .fhc-col-2-3 p:first-of-type {
	font-size: 1.5rem;
	margin-bottom: 0;
}

#fhc_callout_cta .fhc-col-2-3 p:nth-of-type(2) {
	font-weight: bold;
	font-size: .875rem;
}


#fhc_callout_cta .fhc-col-2-3 .elementor-widget-image {
	margin-bottom: .5rem;
}

/* @end */

/* @group Services Intro */

/* Services Intro */

#fhc_services_intro {
	margin-bottom: 4rem;
}

#fhc_services_intro h1 {
	font-weight: 300;
	font-size: 2rem;
	color: #808e49;
}

.fhc_service .elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
	padding: 0;
}

.fhc_service .elementor-column-gap-default > .elementor-row > .fhc_services_intro.elementor-column > .elementor-element-populated {
	padding-left: 2em;
	padding-top: 2em;
	padding-bottom: 2em;
}

#fhc_services_intro p:last-of-type {
	margin-bottom: 0;
}

/* @end */



/* Singles */

.fhc_single_text_boxed {
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
}

/* @group Locations */

/* Locations */
.fhc_our_locations ~ .elementor-section-boxed h2 {
	margin-bottom: .3625rem;
	font-size: 1.5rem;
}

.fhc_our_locations ~ .elementor-section-boxed p {
	margin-bottom: 1rem;
}

.fhc_our_locations ~ .elementor-section-boxed .elementor-widget-text-editor {
	margin-bottom: .25rem;
}

.fhc_our_locations ~ .elementor-section-boxed .fa,
.fhc_our_locations ~ .elementor-section-boxed .far,
.fhc_our_locations ~ .elementor-section-boxed .fas {
    font-family: "FontAwesome";
}

.fhc_our_locations ~ .elementor-section-boxed .elementor-tab-title a {
	margin-left: .5rem;
}


.fhc_our_locations ~ .elementor-section-boxed .elementor-toggle .elementor-tab-title {
	padding: 0;
	margin-bottom: 1rem;
}

.fhc_our_locations ~ .elementor-section-boxed h3 {
	margin-bottom: .3625rem;
	font-size: 1rem;
	font-weight: bold;
}

/* @end */









.normalize-spacing div {
	padding: 0;
	margin: 0;
}

.normalize-spacing div.elementor-column-wrap {
	padding: 0 !important;
}

.list-no-bullet li {
	list-style-image: none;
	list-style-type: none;
	padding-left: 0;
}

.list-no-bullet li:first-of-type {
    border-right: 0 solid #fff;
}

.list-no-bullet ul {
	margin-left: 0;
}




@media (max-width: 1024px) { 
	.elementor-section.elementor-section-boxed > .elementor-container {
	    padding-left: 1rem;
	    padding-right: 1rem;
	}
	.elementor-section.elementor-section-boxed #fhc-table-header > .elementor-container {
	    padding-left: 0;
	    padding-right: 0;
	}
	#fhc_people_listing li {
		flex-basis: 33.333%;
	}
}



@media (max-width: 768px) { 
	#fhc_people_listing li {
		flex-basis: 50%;
	}
}




@media (max-width: 1024px) { 
}



@media (max-width: 768px) { 
}


/* 	stylined first menu item (Make an Appointment) to look like a button and limit to desktop state only */
@media (min-width: 769px) { 
	#menu-item-3970, #menu-item-596 {
	    background-color: #364366;
	    border-radius: 1.5rem;
	    webkit-border-radius: 1.5rem;
		padding: .5rem 1rem;
		margin-right: 1rem;
	}
	
	#menu-item-3970 a, #menu-item-596 a {
		color: white;
		padding-right: 0;
	}
	
	#menu-secondary-menu {
		align-items: center;

	}
	
 #menu-item-596 a {
    padding-left: 0;
}	
}








