/*
Theme Name:   hello-elementor child theme
Description:  Hello Elementor Child Theme - TBH
Author:       Justin Hollender
Author URL:   Write here the author's blog or website url
Template:     hello-elementor
Version:      1.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  hello-elementor-child
*/

/* HEADER OFFSET FOR ANCHORS */
:target {
	padding-top: 79px;
	margin-top: -79px;
	display: inline-block;
}

html #map_legend {display: none !important;}

/* HEADER */
header.sticky-header {
    --header-height: 75px;
    --opacity: 1;
    --shrink-me: 0.55;
    --sticky-background-color: #333333;
    --transition: .2s ease-in-out;

    transition: background-color var(--transition),
                background-image var(--transition),
                backdrop-filter var(--transition),
                opacity var(--transition);
}
header.sticky-header.elementor-sticky--effects {
    background-color: var(--sticky-background-color) !important;
    background-image: none !important;
    opacity: var(--opacity) !important;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}
header.sticky-header > .elementor-container {
    transition: min-height var(--transition);
}
header.sticky-header.elementor-sticky--effects > .elementor-container {
    min-height: calc(var(--header-height) * var(--shrink-me))!important;
    height: calc(var(--header-height) * var(--shrink-me));
}
header.sticky-header .elementor-nav-menu .elementor-item {
    transition: padding var(--transition);
}
header.sticky-header.elementor-sticky--effects .elementor-nav-menu .elementor-item {
    padding-bottom: 8px!important;
    padding-top: 8px!important;
	font-size: 0.9rem!important;
}
header.sticky-header > .elementor-container .logo img {
    transition: max-width var(--transition);
}
header.sticky-header.elementor-sticky--effects .logo img {
    max-width: calc(100% * var(--shrink-me));
}
header.sticky-header.elementor-sticky--effects .elementor-nav-menu--dropdown .elementor-sub-item {
	font-size: 0.9rem!important;
}
#ajaxsearchpro1_1, #ajaxsearchpro1_2, div.asp_m.asp_m_1 {
	background: none !important;
}
.probox {
	background: #FFFFFF29 !important;
}
.elementor-widget-wp-widget-ajaxsearchprowidget h5 {
	display: none;
}

@media screen and (max-width:768px) {
  .mobile-menu-icon a::before {
  content: "Menu";
  top: 1px;
  right: 55px;
  position: absolute;
  font-family: var( --e-global-typography-text-font-family ), Sans-serif;
  font-size: var( --e-global-typography-text-font-size );
  font-weight: var( --e-global-typography-text-font-weight );
  text-transform: uppercase;
  color: #FFF;
  }
  .sub-menu .elementor-sub-item {
	text-transform: none !important;
  }
/*  .elementor-nav-menu--dropdown {
      overflow: auto;
      z-index: 9999;
  } */
}

.elementor-nav-menu li {
    margin-right: 7px!important;
}
.elementor-nav-menu li ul li {
    margin-right: 0px !important;
}



/* MISC */

/* ul.list {
    padding: 20px;
    display: list-item;
}
.list li {
    margin-left: 5px;
    margin-bottom: 5px;
    list-style-type: disc;
}
.list li::marker {
    color: #666666;
} */

.hero-slide .swiper-slide-contents {
    max-width: 100%;
/*     text-shadow: 1px 1px 1px rgba(0,0,0,0.8); */
    background-color: rgba(255,255,255,0.5);
    padding: 1em;
    border-radius: 10px;
}
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
	.hero-slide .swiper-slide-contents {
		-webkit-backdrop-filter: blur(1px);
    	backdrop-filter: blur(1px);
	}
}
.hero-slide .elementor-slide-heading {
	
}
.hero-slide .elementor-slide-description {
    font-family: "Open Sans", Sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.6em;
    /* background-color: #333; */
    color: #333;
}
.hero-slide .elementor-slide-button {
    font-family: "Montserrat", Sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    text-transform: uppercase;
    border-width: 0px;
    background-color: var( --e-global-color-primary );
}
.elementor-repeater-item-1a75745 .swiper-slide-bg {
    background-position: 50% 40% !important;
}
.elementor-repeater-item-82bd55c .swiper-slide-bg {
    background-position: 50% 40% !important;
}
.elementor-repeater-item-253ef92 .swiper-slide-bg, .elementor-repeater-item-ee62004 {
    background-position: 50% 65% !important;
}
.elementor-repeater-item-6c916e3 .swiper-slide-bg {
    background-position: 50% 40% !important;
}

.woocommerce-ordering {
    margin-bottom: 10px;
}

p + p {
    margin-top: 20px;
}

h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p {
	margin-top: 20px;
}
p + h1, p + h2, p + h3, p + h4, p + h5, p + h6 {
	margin-top: 20px;
}

img.alignleft {
	margin-right: 15px;
}

blockquote {
	  background: #f9f9f9;
	  border-left: 5px solid #ccc;
	  margin: 1.5em 10px;
	  padding: 0.5em 10px;
	  quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
	  color: #ccc;
	  content: open-quote;
	  font-size: 4em;
	  line-height: 0.1em;
	  margin-right: 0.25em;
	  vertical-align: -0.4em;
}
/* blockquote p {
	  display: block;
} */

.elementor-swiper-button {
	 transform: translate(0,-50%) !important;
}

/* .elementor-slideshow__footer {
	display: none;
} */

.elementor-widget-posts .elementor-post__excerpt p::after {
    content: "\2026";
}


/* PRODUCT ARCHIVE */

body.archive .woocommerce-breadcrumb {
	margin-bottom: 0 !important;
}

ul.products li.product .woocommerce-loop-product__title, ul.products li.product .woocommerce-loop-category__title,
.pa.SelectLocation {
	font-family: var( --e-global-typography-text-font-family ), Sans-serif;
    font-size: var( --e-global-typography-text-font-size );
    font-weight: var( --e-global-typography-text-font-weight );
}

.woocommerce .products ul, .woocommerce ul.products {
	margin: 0;
	padding-bottom: 10px;
}

.woocommerce h2.woocommerce-loop-product__title,
.woocommerce .products .elementor-widget-container,
.woocommerce .products .price,
.pa.SelectLocation {
	padding-left: .5em!important;
	padding-right: .5em!important;
}

.elementor-products-grid a.SelectLocation,
.pa.SelectLocation {
	color: var( --e-global-color-accent );
}

@media screen and (max-width:768px) {
	.elementor-element.elementor-products-grid .woocommerce.columns-3 ul.products,
	.elementor-element.elementor-products-grid ul.products.columns-3 {
    	grid-template-columns: repeat(1,1fr)!important;
	}
}


/* SIDEBAR */
.elementor-widget-sidebar,
.asp_w_container_9004 {
	background-color: #CCC;
	padding: 10px;
	font-size: 1rem;
}

div.asp_m.asp_m_9004 {
	margin-bottom: 10px !important;
}

.asp_filter_cf_prefix-bedrooms legend,
.asp_filter_cf_prefix-bathrooms legend,
.asp_filter_cf_prefix-sqft legend,
.asp_filter_cf_prefix-garage legend {
    font-family: "Montserrat", Sans-serif;
    font-weight: 700;
    line-height: 1.2;
}
.elementor-widget-sidebar h2.widgettitle,
.asp_filter_cf_prefix-bedrooms legend,
.asp_filter_cf_prefix-bathrooms legend,
.asp_filter_cf_prefix-sqft legend,
.asp_filter_cf_prefix-garage legend {
	font-size: 1rem !important;
	font-weight: bold !important;
	text-transform: uppercase !important;
}

.asp_filter_cf_prefix-bedrooms legend::before {
	content: url("/wp-content/uploads/2024/06/bed-solid.svg");
	width: 20px;
	display: inline-block;
    margin-right: 5px;
}
.asp_filter_cf_prefix-bathrooms legend::before {
	content: url("/wp-content/uploads/2024/06/bath-solid.svg");
	width: 20px;
	display: inline-block;
    margin-right: 5px;
}
.asp_filter_cf_prefix-sqft legend::before {
	content: url("/wp-content/uploads/2024/06/ruler-combined-solid.svg");
	width: 20px;
	display: inline-block;
    margin-right: 5px;
}
.asp_filter_cf_prefix-garage legend::before {
	content: url("/wp-content/uploads/2024/06/car-solid.svg");
	width: 20px;
	display: inline-block;
    margin-right: 5px;
}

div.asp_sb.asp_sb_9004.searchsettings .asp_option_inner .asp_option_checkbox, div.asp_s.asp_s_9004.searchsettings .asp_option_inner .asp_option_checkbox {
    border: 1px solid rgb(57, 57, 57) !important;
}

.asp_w_container_9004 .asp_filter_cf_prefix-sqft #number-range-low-8004_13,
.asp_w_container_9004 .asp_filter_cf_prefix-sqft #number-range-high-8004_13 {
    border: 1px solid rgb(57, 57, 57) !important;
    border-radius: 3px 3px 3px 3px;
    border-radius: 3px;
    height: 30px !important;
}

input#number-range-low-9004_13::placeholder,
input#number-range-high-9004_13::placeholder {
    color: #000 !important;
    opacity: 1; /* Firefox */
	font-size: 1rem;
}

@media screen and (max-width:768px) {
	.asp_filter_cf_prefix-bedrooms legend,
	.asp_filter_cf_prefix-bathrooms legend,
	.asp_filter_cf_prefix-sqft legend,
	.asp_filter_cf_prefix-garage legend {
		color: #FFF !important;
	}
	.asp_filter_cf_prefix-bedrooms legend::before,
	.asp_filter_cf_prefix-bathrooms legend::before,
	.asp_filter_cf_prefix-sqft legend::before,
	.asp_filter_cf_prefix-garage legend::before {
		filter: invert(1);
	}
}

.select2-results {
	font-size: 1rem;
}
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] {
	background-color: var( --e-global-color-primary )!important;
}

.elementor-widget-sidebar #woocommerce_product_search-3 {
	background-color: #333;
	padding: 20px 15px;
}
.elementor-widget-sidebar #woocommerce_product_search-3 h2.widgettitle {
	margin-top: 0px;
	color: #FFF;
}

.elementor-widget-sidebar #custom_html-3, .elementor-widget-sidebar #custom_html-10 {
	margin: 20px 0;
}

.elementor-widget-sidebar input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
	margin-bottom: 10px;
}

.elementor-widget-sidebar button, .elementor-widget-sidebar input[type="button"] {
	color: #FFF;
	border: 0;
	font-size: 1rem !important;
	text-transform: uppercase;
	background-color: var( --e-global-color-accent ) !important;
}

#custom_html-3 {
	margin-bottom: 15px;
}

#woocommerce_product_search-3,
#custom_html-3,
#custom_html-4,
#custom_html-6,
#custom_html-7,
#custom_html-8,
#custom_html-10,
#custom_html-11,
#custom_html-12,
#custom_html-13,
#custom_html-14,
#woocommerce_product_tag_cloud-2,
#woocommerce_product_categories-2,
#woocommerce_product_categories-3 {
	list-style-type: none;
	padding: 0 15px;
	vertical-align: top;
}
#woocommerce_product_categories-2,
#woocommerce_product_categories-3 {
	padding-bottom: 20px;
}

.elementor-widget-sidebar .facetwp-facet {
	margin-bottom: 20px;
}

.elementor-widget-sidebar .facetwp-number-min, .elementor-widget-sidebar .facetwp-number-max {
	width: 33%;
	display: inline-block;
	margin-right: 10px;
}

.elementor-widget-sidebar .bedrooms h2,
.elementor-widget-sidebar .bathrooms h2,
.elementor-widget-sidebar .sqft h2,
.elementor-widget-sidebar .garage h2 {
	display:inline-block !important;
	margin-left: 5px;
}
.elementor-widget-sidebar .facetwp-type-tbhcustom,
.elementor-widget-sidebar .facetwp-facet-square_footage,
.elementor-widget-sidebar .facetwp-type-tbhcustomexact {
	font-family: var( --e-global-typography-text-font-family ), Sans-serif;
    font-size: var( --e-global-typography-text-font-size );
    font-weight: var( --e-global-typography-text-font-weight );
}

.elementor-widget-sidebar .wp-tag-cloud {
	padding-left: 25px;
	margin-bottom: 20px;
}

.elementor-widget-sidebar #woocommerce_product_categories-2 {
	margin-bottom: 15px;
}

.blog-sidebar h5 {
	font-size: 1.5rem !important;
	text-transform: uppercase;
}


/* PRODUCT DETAIL PAGE */

.woocommerce .product .cart {
	margin: 0 !important;
}

/* .woocommerce nav.woocommerce-breadcrumb {
	margin-bottom: 0 !important;
} */

.variations_form .SelectLocation {
	color: var( --e-global-color-accent );
}

/* .product-hero .elementor-image img {
	min-height: 700px !important;
    max-height: 850px !important;
    object-fit: cover;
    object-position: top;
    margin-top: -175px;
} */

.elementor-woo-meta--view-stacked .product_meta .sku_wrapper.detail-container,
.elementor-woo-meta--view-stacked .product_meta .posted_in.detail-container,
.elementor-woo-meta--view-stacked .product_meta .detail-label {
	display: none;
}
.elementor-woo-meta--view-stacked .product_meta .detail-content a {
    background-color: #CCC;
    padding: 3px 10px;
    border-radius: 15px;
    color: #333!important;
    text-transform: uppercase;
    font-weight: 700!important;
    font-size: 0.8rem!important;
}
.elementor-woo-meta--view-stacked .product_meta .detail-content a:hover {
	background-color: var( --e-global-color-primary );
	color: #FFF !important;
}