/*
Theme Name: Divi Child Theme
Version: 3.1
Description: Basic Child Theme by Boston Web Group
Author: Jason Neri
Template: Divi
Author URL: https://bostonwebgroup.com
*/
 
/*------- Theme Customizations------- */

html, body {
    overflow-x: hidden;
}

h1, .entry-content h1 {
	font-family: "the-seasons", serif;
	font-size: 72px;
    line-height: 1.0em;
	color:#0C3D6C;
	font-weight:400;
}
h2, .entry-content h2, h2.entry-title, .et_pb_module h2 {
	font-size:36px;
	line-height:1.2em;	
	color:#0C3D6C;
	font-weight:600;
}
h3, .entry-content h3 {
	font-size:26px;
	line-height:1.3em;	
	font-weight:400;
	color:#0C3D6C;
	font-weight:600;
}
h4, .entry-content h4 {
	font-size:24px;
	line-height:1.3em;	
	font-weight:600;
}

@media screen and (max-width: 980px) {
	h1, .entry-content h1 {
		font-size: 64px;
	}
	h2, .entry-content h2, h2.entry-title, .et_pb_module h2 {
		font-size:34px;
	}
	h3, .entry-content h3 {
		font-size:24px;
	}
	h4, .entry-content h4 {
		font-size:22px;
	}
}
@media screen and (max-width: 768px) {
	h1, .entry-content h1 {
		font-size: 52px;
	}
	h2, .entry-content h2, h2.entry-title, .et_pb_module h2 {
		font-size:30px;
	}
	h3, .entry-content h3 {
		font-size:22px;
	}
	h4, .entry-content h4 {
		font-size:20px;
	}
}
.the_seasons h2,
.overlay-entry-content .the_seasons h3 {
	font-family: "the-seasons", serif;
}
/* Custom Font Sizes */
h2.small,
.et_pb_module h2.small {
	font-size:26px;
	padding-bottom:0px;
	font-weight:400;
}
.lg_p .et_pb_text_inner {
	font-size:18px;
}
@media (max-width: 980px) {
	h2.small,
	.et_pb_module h2.small {
		font-size:24px;
	}
}

@media (max-width: 768px) {
	h2.small,
	.et_pb_module h2.small {
		font-size:22px;
	}
}
/* End Custom Font Size */
.pb_0,
.pb_0 h1,
.pb_0 h2,
.pb_0 h3,
.pb_0 h4 {
	padding-bottom:0;
}
.fw_400,
.fw_400 h2,
.fw_400 h3,
.fw_400 h4 {
	font-weight: 400 !important;
}
.capitalize {
	text-transform:capitalize;
}
.transform_scale .et_pb_image_wrap {
	overflow:hidden;
}
.transform_scale img {
	transition: all 300ms ease 0ms;
}
.transform_scale img:hover {
	transform: scale(1.055);
	backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    image-rendering: -webkit-optimize-contrast;
    transform-origin: center center;
    will-change: transform;	
}
@media (min-width: 768px) {
	.blog_col2_tab .et_pb_column.et_pb_column_3_4 {
		width: 74.25%;
		margin-right: 3%;
	}
	.blog_col2_tab .et_pb_column.et_pb_column_1_4 {
		width: 22.75%;;
	}
}
.inline-buttons .et_pb_button_module_wrapper {
    display: inline-block;
}

/* Flex */

.flex {
	display:flex;
}
.ai_c {
	align-items:center;
}
.ac_c {
	align-content:center;
	flex-wrap:wrap;
}
.ac_fs {
	align-items: flex-start;
}
.flex_wrap {
	flex-wrap:wrap;
}
.flex_end {
	justify-content:flex-end;
}
.flex_between {
	    justify-content: space-between;
}
.flex_start {
	justify-content: flex-start;
}
.flex_center {
	justify-content: center;
}
.fd_c {
	flex-direction:column;
}
.stretch {
	align-items: stretch;
}
.f1 {
	flex: 1;
}
.f2 {
	flex:2;
}
.gap2percent {
	gap: 2%;
}
.gap45 {
	gap: 45px;
}
.row_gap20 {
  row-gap: 20px; 
}
@media (max-width: 980px) {
	.jc_cm { /* Center Flex on Tablet and Mobile */
		justify-content:center;
	}
	.ac_fs_tablet {
		align-items: flex-start !important;
	}
}
@media (max-width: 550px) {
	.flex_wrap_550 {
		flex-wrap:wrap;
	}
}
/* End Flex */


/* menu popup */
.menu_overlay_listings .et_pb_module.et_pb_image {
		margin-bottom:0 !important;	
}
.menu_overlay_listings .et_pb_image_wrap img {
	border-radius:3px;
}
.menu_overlay_listings .et_pb_text {
	font-weight:600;
}
@media (max-width: 1176px) {
	.header_top_bar,
	.menu_col1,
	.menu_col2_text {
		display:none;
	}
	.et_pb_image_0_tb_header.header_logo {
		text-align:left;
		margin-left:0;
		margin-top: 0px !important;
	}
	.et_pb_row_1_tb_header.et_pb_row.header_row_w_logo {
		padding-top: 30px !important;
		padding-bottom: 30px !important;
	}
	.et_pb_row.header_row_w_logo .et_pb_column {
    	width: 100%;
	}
}

.et_pb_icon_wrap.pop_nav .et-pb-icon {
	font-size:40px;
	color:#ffffff;
}
.pum-overlay {
	background-color: #0C3D6C !important;
}
.pum-container {
	top: 0px !important;
}
.fh_menu {
	min-height:100vh;
}
.pum-theme-172 .pum-content + .pum-close, .pum-theme-content-only .pum-content + .pum-close {
	position: absolute;
	height: 40px;
	width: 40px;
	left: auto;
	right: 24px;
	bottom: auto;
	top: 24px;
	padding: 0px;
	color: #ffffff;
	font-family: inherit;
	font-weight: 400;
	font-size: 20px;
	line-height: 20px;
	border: 2px solid #ffffff;
	border-radius: 50%;
	box-shadow: 0px 0px 0px 0px rgba( 2, 2, 2, 0.00 );
	text-shadow: 0px 0px 0px rgba( 0, 0, 0, 0.00 );
	background-color: rgba( 255, 255, 255, 0.00 );
}

.et_pb_menu .et_pb_menu__menu > nav > ul > li > ul {
	left: 40px;
	border-radius:3px;
	border:0 !important;
}
.et_pb_menu .et_pb_menu__menu > nav > ul > li > ul ul {
	left: 60px;
	border-radius:3px;
	border:0 !important;
}
.et_pb_menu .et-menu-nav > ul ul {
	padding: 10px 0;
	text-align: left;
}
.et_pb_menu .et_pb_menu__menu > nav > ul > li {
	width:100%;
}
.nav li li {
	padding: 0 10px;
}
.et-menu li li a {
	padding: 2px 10px;
	width: 220px;
}
.et_pb_menu .et_pb_menu__menu > nav > ul > li.menu_header {
	font-size: 16px;
	text-transform: uppercase;
	font-weight:600;
}
.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu > nav > ul > li.menu_header a {
	color: #fad433 !important;
}
.fh_menu .et_pb_row.et_pb_row_3-4_1-4 {
	display:flex;
}
.fh_menu .et_pb_column.et_pb_column_1_4.et_pb_column_22-divioverlays_865  {
	background-color: rgba(255,255,255,.08) !important;
  	padding: 20px !important;
  	border-radius: 3px !important;
}
.et_pb_search {
	border: 1px solid rgba(255,255,255,0.2);
}
/* End menu popup */




/* HP hero to top and sticky fix */
.home #et-main-area {
	position: absolute;
  	top: 0;
  	width: 100%;
}
/* End HP hero to top and sticky fix */

#global_footer .et_pb_post {
	margin-bottom:30px;
}
#global_footer .gform-footer {
	display:none;
}
#global_footer .ginput_container input {
	border: 1px solid #bbb;
	background-color:#edf1f1;
  	color: #333333 ;
  	padding: 5px 10px;
  	height: auto;
  	width: auto;
}
#global_footer .ginput_container input:focus {
	outline:0;
}
#global_footer .ginput_container input::placeholder {
  	color: #bab7b7;
}
/* White Buttons */
.et_pb_button.white_market_button {
	text-transform: none;
  	width: 100%;
}
.et_pb_button.white_market_button::after {
	right:12px;
}
/* End white buttons */
body .dsm_card_carousel.meet_our_agents_slider .swiper-container {
	margin-bottom: 40px !important;
}
.meet_our_agents_slider .team_member {
	overflow:hidden;
}
.meet_our_agents_slider .dp_oc_item .dp_oc_post_thumb {
	border-radius:3px;
	transition: all 300ms ease 0ms;
	z-index:-1;
}
.meet_our_agents_slider .dp_oc_item .dp_oc_post_thumb:hover {
	transform: scale(1.055);
		backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    image-rendering: -webkit-optimize-contrast;
    transform-origin: center center;
    will-change: transform;
}
.meet_our_agents_slider .dp_oc_item .dp_oc_post_title {
	padding-bottom:0;
	padding-left:10px;
	padding-right:10px;
	transform: scale(1);
	position: absolute;
  	bottom: 30px;
	width: min-intrinsic;
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content;
    display: table-caption;
    display: -ms-grid;
    -ms-grid-columns: min-content;
	font-size:19px !important;
	line-height:19px !important;
}
.meet_our_agents_slider .dp_oc_item .dp_oc_post_title a {
	font-size:19px !important;
	line-height:19px !important;
	color:#ffffff !important;
}
@media (max-width: 1150px) {
	.meet_our_agents_slider .dp_oc_item .dp_oc_post_title a,
	.meet_our_agents_slider .dp_oc_item .dp_oc_post_title {
		font-size:18px !important;
		line-height:18px !important;
	}
}

.meet_our_agents_slider .dp_oc_item .post-meta.dp_custom_field {
	padding-left:10px;
	padding-right:10px;
	transform: scale(1);
	position: absolute;
	bottom: 4px;
}
.agent_slider_wrapper .et_pb_de_mach_title  {
	padding-bottom:0;
	padding-left:10px;
	padding-right:10px;
	font-size:20px !important;
	line-height:20px !important;
	color:#ffffff !important;
	position: absolute !important;
  	bottom: 26px;
	margin-bottom: 0 !important;
}

.agent_slider_wrapper .et_pb_de_mach_acf_item {
	padding-left:10px;
	padding-right:10px;
	position: absolute !important;
	bottom: 4px;
}
.agent_slider_wrapper .et_pb_section,
.agent_slider_wrapper .et_pb_row {
	display:flex;
	margin-top:0 !important;
	margin-bottom:0 !important;
}

.agent_slider_wrapper .et_pb_image,
.agent_slider_wrapper .et_pb_image_wrap {
	height:100%;
}
.agent_slider_wrapper .et_pb_image_wrap img {
	object-fit:cover;
	width:100%;
	height:100%;
	transition: all 300ms ease 0ms;
}
.agent_slider_wrapper .et_pb_image_wrap img:hover {
	transform: scale(1.055);
}
@media (min-width: 980px) {
.agent_slider_wrapper .grid-posts.loop-grid {
	justify-content: center !important;
	grid-template-columns: repeat(5, 1fr) !important;
	}
}
@media (max-width: 980px) {
  .et-db #et-boc .et-l .agent_slider_wrapper .et_pb_column .et_pb_module.et_pb_image {
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
	.et-db #et-boc .et-l .et_pb_row .agent_slider_wrapper .et_pb_column.et_pb_column_4_4 {
		width: 80% !important;
 	 	margin-left: auto !important;
  		margin-right: auto !important;
	}
}
.meet_our_agents_slider .dp_oc_item .post-meta.dp_custom_field a,
.agent_slider_wrapper .et_pb_de_mach_acf_item a {
	color:#ffffff !important;
}
.meet_our_agents_slider .dp_oc_item .dp_custom_field_name {
	display:none;
}
.meet_our_agents_slider .dsm_card_carousel_child_image_wrapper {
	z-index:-1;
}
.meet_our_agents_slider .dsm_card_wrapper {
	margin-top: -150px;
	padding-bottom: 150px;
}
.meet_our_agents_slider .dsm_card_wrapper h4 {
	padding-bottom:0;
	display:table-caption;
}
.meet_our_agents_slider  .dsm_card_carousel .dsm_card_carousel_child_description {
	font-weight: 700 !important;
}
.marketers_layout h2.entry-title {
	padding-bottom:0;
}
.marketers_layout .dmach-acf-label {
	display:none;		
}
.marketers_layout .dmach-acf-value a {
	color:#ffffff;
}
.et_overlay {
	background: hsla(0,0%,100%,.7);
	display:none;
}
.ds_gravity_forms_for_divi .gform_required_legend {
	font-size:12px !important;
}
.background_grow_hover .et_pb_column {
	  background-size: 100% 100%; 
	transition: all 2s ease-in;
	transition: background-size 0.5s ease-in-out; 
	  transition-property: background-size;
  transition-duration: 2s; /* The speed of the transition */
  transition-timing-function: ease-in-out; /* The speed curve */
}
.background_grow_hover .et_pb_column:hover {
	background-size: 150% 150%;
}
/* Full Height Column Img */
.full-height-image-column {
	height: 100%;
}
.full-height-image-column .et_pb_image_wrap {
	height: 100%;
}
.full-height-image-column img {
	object-fit: cover;
	height: 100%;
}
/* End Full Height Column Img */

.video_slider .slick-next::before,
.video_slider .slick-prev::before {
	font-weight:600 !important;
}
.et-pb-icon.social_icons {
	font-size: 1.5rem;
	color: #cfcfcf;
	padding-left: 4px;
	padding-right: 4px;
}
@media (min-width: 500px) {
/* Gallery 2-1 pattern */	
	.grid_2-1 .grid-posts {
    	display: grid;
    	grid-template-columns: repeat(2, 1fr) !important;
    	gap: 20px !important;
	}
	.grid_2-1 .grid-posts > *:nth-child(3n + 1),
	.grid_2-1 .grid-posts > *:nth-child(3n + 2) {
    	aspect-ratio: 1.5 / 1;
		overflow: hidden;
	}
	.grid_2-1 .grid-posts > *:nth-child(3n + 3) {
    	grid-column: span 2;
    	aspect-ratio: 16 / 9;
	}
	.grid_2-1 .grid-posts img {
    	width: 100%;
    	height: 100%;
    	object-fit: cover;
    	display: block;
	}

/* gallery 1-2 pattern */
.grid_1-2 .grid-posts {
    display: grid;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px;
}

/* Full-width items */
.grid_1-2 .grid-posts > *:nth-child(3n + 1) {
    grid-column: 1 / -1;
    aspect-ratio: 16 / 9;
}

/* Side-by-side items */
.grid_1-2 .grid-posts > *:nth-child(3n + 2),
.grid_1-2 .grid-posts > *:nth-child(3n + 3) {
    aspect-ratio: 1.5 / 1;
    overflow: hidden;
}
	.grid_1-2 .grid-posts img {
    	width: 100%;
    	height: 100%;
    	object-fit: cover;
    	display: block;
	}
	.grid_1-2 .grid-item .grid-item-cont.et_pb_gallery_image,
	.grid_2-1 .grid-item .grid-item-cont.et_pb_gallery_image {
		width: 100%;
   	 height: 100%;
	}
}

/* Hide first 5 images on second gallery - 1-2 grid */

.listing_agent .grid-layout-grid .divi-filter-archive-loop {
	margin-bottom:0;
}
.listing_agent .et_pb_blog_grid .et_pb_image_container img {
	border-radius:3px;
}
.listing_agent .et_pb_blog_grid .et_pb_post {
	border: 0;
	background-color:transparent;
	padding: 0;
}
.listing_agent .et_pb_blog_grid .et_pb_image_container {
	z-index:-1;
}
.listing_agent .et_pb_blog_grid .post-content_cont {
	margin-top: -50px;
	padding-bottom: 0;
}
.listing_agent .et_pb_blog_grid .et_pb_post h2 {
	font-size:18px;
	font-weight:600;
}
.listing_agent .et_pb_blog_grid .et_pb_post .post-meta {
	display:none;
}
.listing_agent .et_pb_blog_grid .et_pb_post h2 a {
	color:#ffffff;
}
.et_pb_de_mach_archive_loop {
	margin-bottom: 0 !important;
}
/* Gravity Forms custom styles */
.gform-theme--foundation .gform_fields {
	grid-row-gap:  18px !important;
	row-gap: 18px !important;
}
.gform-theme--foundation .gform_required_legend {
	font-size: 12px !important;
}
.gform-theme--foundation input,
.gform-theme--foundation textarea,
.gform-theme--foundation select {
	border: 1px solid #cccccc !important;	
	border-radius:4px !important;
 	color: #112337 !important; 
	background-color: #ffffff !important;
}
.ds_gravity_forms_for_divi .gform_wrapper input[type="text"] {
	 	color: #112337 !important; 
}
.gform-theme--foundation input[id^="gform_submit_button"]{
	border-color:rgba(12,61,108,0.89) !important;
}
.gform-theme--foundation input::placeholder,
.gform-theme--foundation textarea::placeholder {
	color:#cccccc !important;
}
.gfield select:has(option.gf_placeholder:checked) {
	color: #cccccc !important;
}
.gform-theme--foundation .gform_button {
	background-color:#0c3d6c !important;
	color:#ffffff !important;
}
.gform-theme--foundation .gform_button:hover {
	background-color: rgba(9,74,114,0.8) !important;
}
/* End Gravity Forms custom styles */

.listing_specs .pac_dth_taxonomies .pac_dth_taxonomy:first-of-type:not(:only-of-type) h3::after,
.exclusive_listing_card .pac_dth_taxonomies .pac_dth_taxonomy:first-of-type:not(:only-of-type) h3::after {
    content: " \003E"; /* The space is optional for spacing */
  margin-left: 5px;
}
/*.listing_specs .pac_dth_taxonomies:before {
	content: 'Neighborhood:';
	font-weight:600;
	font-size:16px;
}
*/



.listing_specs .neighborhood .pac_dth_taxonomies:before  {
	content: 'Neighborhood:';
	font-weight:600;
	font-size:16px;
}

.listing_specs .parkingspaces + .et_pb_module {
    margin-left: -30px; /* adjust to taste */
}

.listing_specs .parkingtype .pac_dth_taxonomies:before  {
	content: '(';
	font-weight:600;
	font-size:16px;
	margin-right: -10px;
}

.listing_specs .parkingtype .pac_dth_taxonomies:after {
	content: ')';
	font-weight:600;
	font-size:16px;
	 margin-left: -10px;
}







.listing_specs h3.pac_dth_title {
	line-height:23.8px;
}
.listing_specs .et_pb_de_mach_acf_item  {
	margin-bottom:0px !important;
}
/* image gallery lightbox popup */
.image_gallery {
	
}
/* end image gallery lightbox popup */


/* Exclusive Listings 6 listing grid */
.exclusive_listing_wrapper .grid-posts.loop-grid {
	grid-row-gap: 50px !important;
}
.exclusive_listing_card .et_pb_module.neighborhood {
	margin-bottom:-40px !important;
}
.exclusive_listing_card .et_pb_module.neighborhood h3 {
	padding-bottom:0 !important;
}
.exclusive_listing_card .et_pb_module.neighborhood .et_pb_module_inner {
	background-color: #FFFFFF;
	padding: 4px 10px;
  	margin-right: 10px;
  	margin-left: 10px;
	display:inline-block;
	border-radius:3px;
}
.exclusive_listing_card .exclusive_listing_agent .divi-filter-archive-loop.main-loop,
.recent_sales .divi-filter-archive-loop {
	margin-bottom:0 !important;
}
.exclusive_listing_card .exclusive_listing_agent .loop-grid .grid-item {
	padding:0 !important;
	background-color:transparent !important;
}
.exclusive_listing_card .exclusive_listing_agent .loop-grid .grid-item .post-content_cont,
.exclusive_listing_card .exclusive_listing_agent .no-results-layout {
	padding:0;
	display: inline-block;
	background-color:#ffffff;
	padding: 8px 10px 14px;
	min-width: 200px;
	border-radius: 0 3px 0 0;
}

.exclusive_listing_card .et_pb_blog_grid .et_pb_post {
	border: 0px solid #d8d8d8 !important;
}
.exclusive_listing_card .exclusive_listing_agent .loop-grid .grid-item .post-content_cont h2,
.exclusive_listing_card .exclusive_listing_agent .no-results-layout h2 {
	padding:0;
}
.exclusive_listing_card .exclusive_listing_agent .loop-grid .grid-item .post-content_cont .post-meta {
	display:none;
}
.exclusive_listing_card .exclusive_title h3 {
	padding-bottom:0;
}
.exclusive_listing_card .acf_inline {
	display: inline-block;
}
.exclusive_listing_card .acf_inline .dmach-acf-item-content {
	align-items: center;
}
.exclusive_listing_card .acf_inline .dmach-acf-item-content::before {
	content: "|";
	padding-left:10px;
	padding-right:10px;
	display: inline-block;
}
.exclusive_listing_card .acf_inline.bed .dmach-acf-item-content::before {
	content: normal;
	padding-left: 0;
}
.exclusive_listing_wrapper .et_pb_gallery_image {
	/* height:250px !important; */
	overflow:hidden;
	aspect-ratio: 202 / 125;
}
.exclusive_listing_wrapper .et_pb_gallery_image img {
	object-fit: cover;
	height: 100%;
	width: 100%;
	transition: all 300ms ease 0ms;
}
.exclusive_listing_card .dmach-acf-label,
.exclusive_listing_card .dmach-acf-value {
	font-size:14px !important;
	line-height:22.4px !important;
	font-weight:600 !important;
}
.exclusive_listing_wrapper .et_pb_gallery_image img:hover {
	transform: scale(1.055);
}
@media (min-width:768px) and (max-width: 1400px) {
  .et_pb_section .filtered-posts-cont .divi-filter-archive-loop .col-desk-4 > :not(.no-results-layout), body .et_pb_section .filtered-posts-cont .divi-filter-archive-loop.col-desk-4 > :not(.no-results-layout), body .et_pb_section .filtered-posts-cont .divi-filter-archive-loop .col-desk-4 > :not(.no-results-layout), body.woocommerce .divi-filter-archive-loop ul.products.columns-4 {
	grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
.idx_slider .product_price_mod {
	font-size:14.1px;
	line-height: 1.2em;
	font-weight: 700;
  	font-size: 14.1px;
  	color: #333333 !important;
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
	position: absolute;
  	top: 10px;
  	left: 10px;
	background-color:#ffffff;
	padding: 8px 6px 6px 6px;
	border-radius:3px;
}
.idx_slider .rover-prop .fav-button {
	margin-right: 0;
	margin-top: 2px;
  padding: 0 !important;
}
.idx_slider .rover-prop-img {
	border-radius:3px;
}
.idx_slider .lcc > div > .lc-slides.grc,
.lcc > div > .lc-slides.grc {
	padding-bottom:30px !important;
}
.lcc a.lcc_prev, .lcc a.lcc_next {
	background: #0c3d6c !important;
	opacity: .4 !important;
  	border-radius: 3px !important;
  	top: 30.5% !important;
}
.lcc a.lcc_prev {
  	padding-left: 8px !important;
}
.lcc a.lcc_next {
  	padding-right: 8px !important;
}
.lcc a:hover {
	opacity: 1 !important;
}
.lcc a u.ri {
	border-width: 2px 0 0 2px;
}
.idx-swipe .prev_next u.ri.arrow {
		font-size: 14px !important;
}
.idx-swipe.slide .slideshow_slides picture img {
	object-fit: cover;
  	width: 100%;
  	height: 100%;
	transition: all 300ms ease 0ms;
	aspect-ratio: 202 / 125;
}
.idx-swipe.slide .slideshow_slides picture img:hover {
	transform: scale(1.055);
}
.select2-container--default .select2-results__option--disabled {
	display:none !important;
}
/* Blog Slider x 2*/
.blog_slider_2 .dsm_blog_carousel .dsm-blog-carousel-item {
	background-color:transparent !important;
	display:flex;
}
.blog_slider_2 .dsm-grid-post-holder-inner {
	display:flex;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-image {
	min-width:50%;
	margin-top: 30px;
	margin-bottom: 30px;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-wrapper {
	display: flex;
	flex-direction: column;
	padding:30px;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-meta {
	order:1;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-header {
	order:2;
	padding-top:6px;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-content {
	order:3;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-readmore-wrap {
	order:4;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-post-excerpt p {
	font-size:14px !important;
	line-height: 1.4em;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-meta .dsm-posted-by {
	font-weight: 600;
  	text-transform: uppercase;
  	font-size: 12px;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-meta .dsm-posted-by a,
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-readmore-wrap a {
	color:#333333;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-readmore-wrap {
	font-weight: 600;
  	text-transform: uppercase;
  	font-size: 12px;
	margin-top: auto;
}
.blog_slider_2 .dsm-grid-post-holder-inner .dsm-entry-thumbnail {
	height:100% !important;
}
.blog_slider_2 article {
  position: relative; 
}
.blog_slider_2 article::before {
	content: "";
  position: absolute;
  top: 0px;
  left: 25%;
  width: 75%;
  height: 100%;
  background-color: #edf1f1;
  z-index: -1;
	border-radius:4px;
}
/* End Blog Slider x 2*/
/* Blog Page */
@media screen and (min-width: 768px) {
	.custom_blog_layout.et_pb_posts .et_pb_post {
		position: relative; 
		padding:30px 20px 30px 0;
	}
	.custom_blog_layout.et_pb_posts .et_pb_post::before {
		content: "";
		position: absolute;
		top: 0px;
		left: 25%;
		width: 75%;
		height: 100%;
		background-color: #edf1f1;
		z-index: -1;
		border-radius:4px;
	}
	.custom_blog_layout.et_pb_posts .et_pb_post {
		display: grid;
		grid-template-columns: 50% minmax(0, 1fr);
		gap: 10px;
		grid-auto-rows: min-content;
		align-content: start; 
	}
}
.custom_blog_layout .entry-featured-image-url {
	grid-column: 1;
	grid-row: 1 / span 5;
  	display: block;
	height: 100%;
	margin-bottom: 0;
}
.custom_blog_layout .entry-featured-image-url img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 3px;
}
@media screen and (min-width: 981px) {
	.custom_blog_layout.twocol .entry-featured-image-url {
		min-height:400px;
	}
	.custom_blog_layout.twocol .et_pb_ajax_pagination_container {
		display:flex;
		flex-wrap:wrap;
	}
	.custom_blog_layout.twocol article {
		width:48.5%;
	}
	.custom_blog_layout.twocol article:nth-of-type(odd) {
		margin-right:3%;
	}
}

.custom_blog_layout .entry-title,
.custom_blog_layout .post-meta,
.custom_blog_layout .post-content {
	grid-column: 2;
	align-self: start;
	padding-left: 20px;
}
.custom_blog_layout .post-meta {
	grid-row: 1;
	margin-bottom:0;
	text-transform: uppercase !important;
}
.custom_blog_layout .entry-title {
	grid-row: 2;
	padding-bottom:0;
}
.custom_blog_layout .post-content {
	grid-row: 3;
}
.custom_blog_layout.et_pb_posts .et_pb_post .post-meta span.author.vcard a {
    pointer-events: none;
}
.custom_blog_layout.et_pb_posts .et_pb_post .post-content-inner,
.custom_blog_layout.et_pb_posts .et_pb_post .post-content-inner p,
.custom_blog_layout.et_pb_posts .et_pb_post .post-meta {
	font-size:14.1px !important;
}
/* End Blog Page */


.agent_full_height img {
	object-fit:cover;
	object-position: top center;
}
.agent_full_height img {
	transition: all 300ms ease 0ms;
}
.agent_full_height:hover img {
  transform: scale(1.055); 
}
.meet_our_agents .dmach-acf-value  a {
	color:#aeaeae;
}
.pac_dth_taxonomy_list.blog_cat .pac_dth_taxonomies {
	gap: .7rem;
}
.search-icon::after {
    content: '\55';
    font-family: ETModules;
    font-size: 20px;
    color: #939393;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%) scaleX(-1);
    pointer-events: none;
    z-index: 9;
}
.search-icon .et_pb_searchsubmit {
    z-index: 10;
}
@media screen and (max-width: 767px) {
		.custom_blog_layout.et_pb_posts .et_pb_post {
			display:flex;
			flex-direction:column;
	}
	.blog_cat .pac_dth_taxonomy {
		width: 48% !important;
	}
	.custom_blog_layout .entry-featured-image-url {
		margin-bottom:20px;
		order:1;
	}
	.custom_blog_layout .post-meta {
		order: 2;
		margin-bottom:10px;
	}
	.custom_blog_layout .entry-title {
		order:3;
		padding-bottom:10px;
	}
	.custom_blog_layout .post-content {
		order: 4;
	}
}
.et_pb_social_media_follow li a,
.et-db #et-boc .et-l .et_pb_social_media_follow li a {
	margin-right: 0px !important;
}
.twitter .dmach-acf-value,
.instagram .dmach-acf-value,
.linkedin .dmach-acf-value,
.facebook .dmach-acf-value {
  display: inline-block;
  width: 20px;
  height: 20px;
  font-size: 0; /* hides the URL text */
  position: relative;
}

.dmach-acf-value::before {
  	font-family: "ETmodules";
  	font-size: 22px;
	line-height: 25px;
  	position: absolute;
  	top: 0;
  	left: 0;
}
.twitter .dmach-acf-value::before {
	content: "\e094";
  	font-size: 18px;
}
.instagram .dmach-acf-value::before {
  	content: "\e09a"; 
  	font-size: 20px;
}
.linkedin .dmach-acf-value::before {
  	content: "\e09d";
}
.facebook .dmach-acf-value::before {
  	content: "\e093";
}
.inline_block {
	display:inline-block;
	margin-right:10px;
}
.uppercase {
  text-transform: lowercase;
	  display: inline-block;
}
.uppercase::first-letter {
  text-transform: uppercase; 
}
.neighborhood_sub_cat_buttons .pac_dth_taxonomy {
	background-color: #FFFFFF;
	padding: 6px 12px;
	border-radius: 3px;
	transition: all 300ms ease 0ms;
	width: calc((100% / 5) - 1rem + (1rem / 5)) !important;
}
.neighborhood_sub_cat_buttons .pac_dth_taxonomy:hover {
	background-color: rgba(51,51,51,0.13);
}
.neighborhood_sub_cat_buttons .pac_dth_taxonomy a {
	padding-right:14px;
}
@media (max-width: 981px) {
	.neighborhood_sub_cat_buttons .pac_dth_taxonomy {
		width: calc((100% / 3) - 1rem + (1rem / 5)) !important;
	}
}
@media (max-width: 767px) {
	.neighborhood_sub_cat_buttons .pac_dth_taxonomy {
		width: calc((100% / 2) - 1rem + (1rem / 2)) !important;
	}
}
.neighborhood_sub_cat_buttons .pac_dth_title {
	font-weight: 400 !important;
	color: #333333 !important;
	font-size: 16px;
	padding-bottom:0;
	position: relative;
}
.neighborhood_sub_cat_buttons .pac_dth_title a::after {
	content: "\35";
	margin-left: .3em;
  	left: auto;
  	margin-left: .3em;
	color: #333333;
	line-height: inherit;
  	font-size: inherit !important;
  	opacity: 1;
	font-family: ETmodules !important;
  	font-weight: 400 !important;
	position: absolute;
	right: 0px;
	transition: all 300ms ease 0ms;
}
.building_slider .owl-nav.arrow_size_medium .owl-prev,
.meet_our_agents_slider .owl-nav.arrow_size_medium .owl-prev {
	left: 0;
}
.building_slider .owl-nav.arrow_size_medium .owl-next,
.meet_our_agents_slider .owl-nav.arrow_size_medium .owl-next {
	right: 0;
}



/* === AGENT MODULE VISIBILITY ===
   Paired with body_class .has-listing-agent (set in functions.php).
   Apply .hide-when-agent-set to modules that should hide when an agent IS selected.
   Apply .show-only-with-agent to modules that should only show when an agent IS selected.
*/
.show-only-with-agent {
    display: none;
}

/* Hide the "no agent" module when an agent is set */
body.has-listing-agent .hide-when-agent-set {
    display: none;
}

/* Show the "agent" module when an agent is set */
body.has-listing-agent .show-only-with-agent {
    display: block;
}

/* === MAIN CONTENT 2 VISIBILITY (neighborhood pages) === */
.show-only-with-main-content-2 {
    display: none;
}
body.has-main-content-2 .show-only-with-main-content-2 {
    display: block;
}

/* === UNITS-IN-BUILDING VISIBILITY ===
   Paired with body_class .has-units (set in functions.php).
   Apply .hide-when-units-exist to the fallback "no units" section.
   Apply .show-only-with-units to the section that displays the linked Listings.
*/
.show-only-with-units {
    display: none;
}

body.has-units .hide-when-units-exist {
    display: none;
}

body.has-units .show-only-with-units {
    display: block;
}

/* === LISTINGS IN NEIGHBORHOOD VISIBILITY ===
   Paired with body_class .has-neighborhood-listings (set in functions.php).
   Apply .hide-when-has-listings to the fallback "no listings" section.
   Apply .show-only-with-listings to the section that displays the listings.
*/
.show-only-with-listings {
    display: none !important;
}
body.has-neighborhood-listings .show-only-with-listings {
    display: block !important;
}
body.has-neighborhood-listings .hide-when-has-listings {
    display: none !important;
}

/*Blog post by neighborhood category*/
.nhc-outer {
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
}

.nhc-viewport {
    overflow: visible;
    width: 100%;
    clip-path: inset(0 -40px);
}

.nhc-track {
    display: flex;
    gap: 16px;
    transition: transform 0.4s ease;
    will-change: transform;
}

.nhc-card {
    flex: 0 0 calc((100% - ((var(--nhc-visible) - 1) * 16px)) / var(--nhc-visible));
    width: calc((100% - ((var(--nhc-visible) - 1) * 16px)) / var(--nhc-visible));
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    background: #f4f5f7;
    overflow: hidden;
}

.nhc-card-img a { display: block; }
.nhc-card-img img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}
.nhc-card-img-placeholder {
    width: 100%;
    height: 200px;
    background: #ddd;
}

.nhc-card-body {
    padding: 16px 18px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.nhc-meta {
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #999;
    margin-bottom: 8px;
}

.nhc-title {
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.4;
    color: #1a2b45;
    margin: 0 0 10px;
    flex: 1;
}
.nhc-title a { text-decoration: none; color: inherit; }
.nhc-title a:hover { color: #2d5fa6; }

.nhc-excerpt {
    font-size: 0.8rem;
    color: #666;
    line-height: 1.6;
    margin: 0 0 14px;
}

.nhc-link {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #1a2b45;
    text-decoration: none;
}
.nhc-link:hover { color: #2d5fa6; }

.nhc-controls {
    display: flex;
    gap: 16px;
    margin-top: 24px;
    justify-content: center;
}

.nhc-arrow {
    background: #1a2b45;
    color: #fff;
    border: none;
    cursor: pointer;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
    flex-shrink: 0;
}
.nhc-arrow:hover { background: #2d5fa6; }
.nhc-arrow:disabled { background: #ddd; color: #aaa; cursor: default; }

@media (max-width: 900px) {
    .nhc-card { flex: 0 0 calc((100% - 16px) / 2); width: calc((100% - 16px) / 2); }
}
@media (max-width: 520px) {
    .nhc-card { flex: 0 0 85%; width: 85%; }
}

/*Recent Sales Page & Exclusive listings Image sizes*/
.recent-sales-loop .grid-item-cont.et_pb_gallery_image {
    position: relative;
    overflow: hidden;
	aspect-ratio: 202 / 125;
}

.recent-sales-loop .grid-item-cont.et_pb_gallery_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.recent-sales-loop .grid-item-cont.et_pb_gallery_image.is-landscape::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('/wp-content/uploads/2026/05/just-sold-cog.png');
    background-size: cover;
    background-position: bottom center;
    pointer-events: none;
}

.exclusive-sales-loop .grid-item-cont.et_pb_gallery_image {
    position: relative;
    overflow: hidden;
	aspect-ratio: 202 / 125;
	overflow:hidden;
}

.exclusive-sales-loop .grid-item-cont.et_pb_gallery_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
	transition: all 300ms ease 0ms;
}
.exclusive-sales-loop .grid-item-cont.et_pb_gallery_image img:hover {
	transform: scale(1.055);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    image-rendering: -webkit-optimize-contrast;
    transform-origin: center center;
    will-change: transform;
}
.exclusive-sales-loop .grid-item-cont.et_pb_gallery_image.is-landscape::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('/wp-content/uploads/2026/05/just-sold-cog.png');
    background-size: cover;
    background-position: bottom center;
    pointer-events: none;
}

/* Gallery height fix */
/*set the height of the slide image*/
.et_pb_gallery_fullwidth .et_pb_gallery_image img {
   width: auto;
   height: 600px;
}
/*align the slide image to the middle*/
.et_pb_gallery_image {
   line-height: 0;
   text-align: center;
}
/*style the slider previous and next buttons*/
a.et-pb-arrow-prev {
   color: #000!important;
   background: #fff;
   margin-left: 18px!important;
   opacity: 1!important;
}
a.et-pb-arrow-next {
   color: #000!important;
   background: #fff;
   margin-right: 18px!important;
   opacity: 1!important;
}
@media all and (min-width: 768px) {
   .et-pb-arrow-next {
      opacity: 1;
      right: 22px;
   }
   .et-pb-arrow-prev {
      opacity: 1;
      left: 22px;
   }
}
@media all and (max-width: 767px) {
   .et-pb-arrow-next {
      opacity: 1;
      right: 0;
   }
   .et-pb-arrow-prev {
      opacity: 1;
      left: 0;
   }
}
/* end gallery fix */

@media (max-width: 980px) {
	.fh_menu .et_pb_row.et_pb_row_3-4_1-4,
	.et-db #et-boc .et-l .fh_menu .et_pb_row.et_pb_row_3-4_1-4 {
		width:90%;		
	}
  .et_pb_menu .et_pb_menu__menu,
	.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu {
    display: flex;
	  width:100%;
  }
	.et_pb_menu .et_mobile_nav_menu,
	.et-db #et-boc .et-l .et_pb_menu .et_mobile_nav_menu {
		display:none;
	}
	.fh_menu .et_pb_column.et_pb_column_3_4,
	.et-db #et-boc .et-l .fh_menu .et_pb_column.et_pb_column_3_4 {
		width:65%;
	}
	.fh_menu .et_pb_column.et_pb_column_1_4,
	.et-db #et-boc .et-l .fh_menu .et_pb_column.et_pb_column_1_4 {
		width:35%;
	}
	.fh_menu .et_pb_row_1-4_1-4_1-4 .et_pb_column.et_pb_column_1_4,
	.et-db #et-boc .et-l .fh_menu .et_pb_row_1-4_1-4_1-4 .et_pb_column.et_pb_column_1_4 {
		width:50%;
	}
}
@media (max-width: 767px) {
	.fh_menu .et_pb_row_1-4_1-4_1-4 .et_pb_column.et_pb_column_1_4,
	.et-db #et-boc .et-l .fh_menu .et_pb_row_1-4_1-4_1-4 .et_pb_column.et_pb_column_1_4 {
		width:100%;
	}
}
@media (max-width: 479px) {
		.fh_menu .et_pb_column.et_pb_column_3_4,
	.et-db #et-boc .et-l .fh_menu .et_pb_column.et_pb_column_3_4 {
		width:100%;
	}
	.fh_menu .et_pb_column.et_pb_column_1_4.col_exclusive_listings,
	.et-db #et-boc .et-l .fh_menu .et_pb_column.et_pb_column_1_4.col_exclusive_listings {
		display:none;
	}
}

.et-db #et-boc .et-l .et_pb_search_0 form input.et_pb_s, 
.et-db .pum .et-l .et_pb_search_0 form input.et_pb_s, 
.et-db #et-boc .et-l .et_pb_search_23-divioverlays_865 form.et_pb_searchform input.et_pb_s, 
.et-db .pum .et-l .et_pb_search_23-divioverlays_865 form input.et_pb_s {
  height: auto !important;
}

.et-db #et-boc .et-l .et_pb_search_23-divioverlays_865.menu_overlay_search .et_pb_searchform div input.et_pb_s {
	padding: 10px 10px !important;
}

.et_pb_de_mach_carousel_0.explore_by_building .slick-prev {
	right:0px !important;
}
.et_pb_de_mach_carousel_0.explore_by_building .slick-next {
	right:50px !important;
}
.explore_by_building .dmach_carousel_container .slick-slide {
	margin-left: 0;
	margin-right: 8px;
}
.explore_by_building .neighborhood {
	
}
.explore_by_building .et_pb_module.neighborhood {
	position: absolute;
  top: 18px;
}
.explore_by_building .et_pb_module.neighborhood .et_pb_module_inner {
	background-color: #FFFFFF;
	padding: 4px 10px;
	margin-right: 10px;
	margin-left: 10px;
	display: inline-block;
	border-radius: 3px;
}
.explore_by_building .et_pb_module.neighborhood h3 {
	padding-bottom: 0 !important;
}
.explore_by_building .et_pb_image {
	z-index: -1;
  position: relative;
}
.explore_by_building .et_pb_de_mach_title {
	display: inline-block;
	background-color: #ffffff;
	padding: 8px 10px 0px;
	min-width: 200px;
	border-radius: 0 3px 0 0;
	position: absolute;
	bottom: 0px;
	left:0px;
	color:#333333;
}
.explore_by_building .et_pb_de_mach_title .dmach-post-title {
	padding-left:0 !important;
	padding-right:0 !important;
}
.explore_by_building .et_pb_de_mach_title .dmach-post-title a {
	color:#333333 !important;
	font-size:14.1px !important;
}
.explore_by_building .dmach-post-title {
 white-space: nowrap;      /* Prevents the text from wrapping to a new line */
  overflow: hidden;   
}

.explore_by_building .featured-image {
	object-fit:cover;
}



/* Building card image: consistent shape regardless of slide count */
.nbhd_bld_carousel .et_pb_de_mach_thumbnail img,
.nbhd_bld_carousel .featured-image {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;   /* portrait — matches your 253×450-ish building images */
    object-fit: cover;
    object-position: center;
}

/* When there are only a few slides, don't let a card sprawl full-width */
.nbhd-bld-few .slick-track {
    display: flex;
    justify-content: center;
}
.nbhd-bld-few .slick-slide {
    max-width: 640px;   /* cap each card's width when few exist */
}



/* IDX Listings */
.idx-framework.side-by-side .grc {
	justify-content: space-between;
}
@media (min-width: 981px) {
	.grc > .idx-prop {
		width: 29% !important;
	}
}
@media (max-width: 767px) {
	.grc > .idx-prop {
		width: 100% !important;
	}
}
.grc > .idx-prop {
	padding: 0px !important;
}
.idx-prop .dataset > *,
.grc > .idx-prop {
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif !important;
	font-weight: 600 !important;
	overflow:visible !important;
}
.idx-prop .idx-swipe {
	/* aspect-ratio: 202 / 125; */
	border-radius: 3px;
}
.grc {
	row-gap: 50px !important;
}
.idx-swipe.listings .slideshow_slides > picture, .idx-swipe.listings .slideshow_slides > picture:hover {
	cursor: pointer; 
}
.idx-prop .idx-banner {
	background-color: rgba(255, 255, 255, 0.85) !important;
	background-color: rgba(12,61,108,0.9) !important;
	color: #333333 !important;
}
.idx-prop .idx-banner::before {
	font-weight: 600;
	color: #ffffff !important;
	line-height:34px;
}
.product_price_mod {
	position: absolute;
	z-index: 9;
	background-color: #ffffff !important;
	padding: .4rem 1rem;
	color: #333333;
	font-size: 1rem;
	line-height: 1.2;
	text-align: right;
	right: 10px;
	top: 10px;
	padding-right: 45px;
	border-radius: 3px;
}
.idx-prop .fav-button {
	background-color: #fff !important;
	border-radius: 16px !important;
	float: none !important;
	margin-top: 0px !important;
	margin-right: 0px !important;
	padding: 6px 3px 0px !important;
	position: absolute !important;
	color: #000 !important;
	right: 7px !important;
	top: 3px !important;
	font-size: 14px !important;
}
.grc .idx-prop .dataset {
	height: 5em !important;
	position: absolute !important;
	background-color: #ffffff !important;
	color: #333333 !important;
	top: 82% !important;
	left:0 !important;
	max-width:96%;
	border-radius: 0 3px 0 0;
	padding: 8px 15px !important;
	height: auto !important;
	min-width: 200px;
  	width: auto;
}
.idx-prop .dataset > li {
	float: left;
}
.idx-prop .dataset > li,
.idx-prop .data-address a {
	font-size: 14px !important;
	line-height: 18px !important;
	color: #fff !important;
}
.idx-prop .data-mlsid, .idx-prop .data-mlsid a {
	color: #333333 !important;
	font-size: 14px !important;
	line-height: 18px !important;
	font-weight: 500 !important;
}
.idx-prop .data-address a {
	color: #ffffff !important;
}
.idx-prop .data-address a.idx-prop-link {
	font-size: 15px !important;
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
	font-weight: 500;
	color: #333333 !important;
}
.idx-prop .dataset > li,
.idx-prop .dataset > li a,
.idx-prop .data-address a {
	color: #333333 !important;
	font-weight:600;
}
.idx-prop .data-acres {
	display:none !important;	
}
x-swipe .prev_next a,
.idx-swipe .slide_next a,
.idx-swipe .prev_next a {
	opacity: 1 !important;
}



nav.idx-footer {
	margin-top:30px;
	margin-bottom:30px;
}
nav.idx-footer ul > li {
	font-size:18px;
}
nav.idx-footer ul > li:hover {
	background-color: #ffffff !important;
}
nav.idx-footer ul > li a {
	color: #0c3d6c;	
}
nav.idx-footer ul > li:nth-of-type(1){
	text-align: left !important;
}
nav.idx-footer ul > li:nth-of-type(2){
	text-align: right !important;
}
@media (max-width: 980px) {
	.product_price_mod {
		font-size: 1.1rem;
		line-height: 1.4;
	}
}
@media (max-width: 767px) {
	.product_price_mod {
		font-size: 1rem;
		line-height: 1.1;
	}
}
/* Property Page */
.idx-remarks,
.idx-detail-value  {
	line-height: 1.6em !important;
	font-size: 16px !important;
	color: #333333 !important; 
	font-weight:400 !important;
}
.idx-detail-label {
	line-height: 1.6em !important;
	font-size: 16px !important;
	color: #333333 !important; 
	font-weight:600 !important;
}
.idx-full-item.meta span {
	background-color: #0C3D6C !important;
	border-color: #0C3D6C !important;
	padding: 4px 12px !important;
	line-height: 1.6em !important;
	font-size: 16px !important;
}
.idx-swipe.listings .slideshow_slides > picture img {
	border-radius:3px;
	transition: all 300ms ease 0ms;
}
.idx-swipe.listings .slideshow_slides > picture img:hover {
	transform: scale(1.055);
	backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    image-rendering: -webkit-optimize-contrast;
    transform-origin: center center;
    will-change: transform;
}
.idx-detail-item {
	float: none !important;
}
.listing_specs.idx-prop-details-static {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:30px;
	margin-top:30px;
	background: rgba(0,0,0,0.02);
	padding:20px;
}
.idx-remarks,
.idx-prop-details-static {
	margin-top:40px !important;
	margin-bottom:40px !important;
}
.contact-form-idx {
	margin-bottom:60px;
}
.h2-idx {
	margin-bottom:20px;
}
.border-top {
	border-top: 1px solid rgba(0,0,0,.1);
	padding-top:40px;
}
.et_pb_section.idx-property-page {
	background-image: linear-gradient(180deg,rgba(255,255,255,0.5) 0%,rgba(255,255,255,0.5) 98%),url(/wp-content/uploads/2026/04/MLS_3-Main-1-2.jpg) !important;
	padding: 30px 65px !important;
	background-color:#ffffff;
}
.et_pb_section.idx-property-page .et_pb_row {
    padding: 32px 0 !important;
}
.et_pb_section.idx-property-page .et_pb_row .et_pb_module {
	padding-top: 50px !important;
  padding-bottom: 50px !important;
}
.et_pb_section.idx-property-page .et_pb_row .et_pb_module h1 {
	text-align: center;
  text-shadow: 0.03em 0.03em 0.1em rgba(0,0,0,0.4);
	font-family: "the-seasons", serif;
  font-size: 72px;
  line-height: 1.0em;
  color: #0C3D6C;
  font-weight: 400;
}
/* End IDX Listings */



/* Buildings list page */


.building-list .grid-col {
    float: none !important;
}

.building-list .dmach-post-title {
    margin: 0 !important;
    padding: 6px 12px;
    border-radius: 3px;
    transition: all 300ms ease 0ms;
}


.building-list .et_pb_section:hover {
    background-color: rgba(51,51,51,0.13) !important;
}

.building-list .dmach-post-title a {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    color: #333333 !important;
    text-decoration: none !important;
    text-transform: uppercase;
    font-size: 16px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    position: relative;
    padding-right: 20px;
}

.building-list .dmach-post-title a::after {
    content: "\35";
    font-family: ETmodules !important;
    font-weight: 400 !important;
    font-size: inherit !important;
    color: #333333;
    position: absolute;
    right: 0px;
    transition: all 300ms ease 0ms;
}

.building-list .et_pb_section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.building-list .et_pb_row {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}
.exclusive_filter_dropdowns .divi-filter-container,
.recent_sales  .divi-filter-container {
	display:flex;
	justify-content: center;
}
.exclusive_filter_dropdowns .et_pb_de_mach_search_posts_item.et_pb_de_mach_search_posts_item_1  {
	max-width: 400px;
}
.exclusive_filter_dropdowns .et_pb_contact_field_options_title,
.recent_sales .et_pb_contact_field_options_title  {
	font-weight:700 !important;
	text-align:center;
}
.exclusive_filter_dropdowns .et_pb_de_mach_search_posts_item {
	margin-bottom:10px !important;
}
.is-child-neighborhood .hide-on-child {
    display: none;
}

/* Neighborhood buildings shortcode carousel */
.nbhd_bld_carousel .et_pb_section {
    padding: 0 !important;
    position: relative !important;
    overflow: hidden;
}
.nbhd_bld_carousel .et_pb_row {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}
.nbhd_bld_carousel .et_pb_column,
.nbhd_bld_carousel .et_pb_module_inner {
    padding: 0 !important;
    margin: 0 !important;
}
.nbhd_bld_carousel .et_pb_de_mach_thumbnail {
    display: block !important;
    margin: 0 !important;
    height: 450px;
    overflow: hidden;
}
.nbhd_bld_carousel .et_pb_de_mach_thumbnail img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: all 300ms ease 0ms;
}
.nbhd_bld_carousel .et_pb_de_mach_thumbnail:hover img {
    transform: scale(1.055);
	backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    image-rendering: -webkit-optimize-contrast;
    transform-origin: center center;
    will-change: transform;
}
.nbhd_bld_carousel .et_pb_de_mach_title {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    background-color: #ffffff;
    padding: 8px 10px 8px !important;
    min-width: 200px;
    border-radius: 0 3px 0 0;
    margin: 0 !important;
    display: inline-block;
}
.nbhd_bld_carousel .dmach-post-title {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 14.1px !important;
    line-height: 1.3 !important;
    color: #333333 !important;
    font-weight: 600 !important;
}
.nbhd_bld_carousel .dmach-post-title a {
    color: #333333 !important;
    font-size: 14.1px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    line-height: 1.3 !important;
}
.nbhd_bld_carousel {
    padding-left: 50px;
    padding-right: 50px;
}
.nbhd_bld_carousel .slick-prev {
    left: 0px;
}
.nbhd_bld_carousel .slick-next {
    right: 0px;
}

.nbhd_bld_carousel .slick-prev,
.nbhd_bld_carousel .slick-next {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    z-index: 10;
}

.nbhd_bld_carousel .slick-prev:before {
  	content: url('/wp-content/uploads/2026/05/chevron-left_white-e1779808043812.png') !important;
	left:-10px;
}
.nbhd_bld_carousel .slick-next:before {
  content: url('/wp-content/uploads/2026/05/chevron-right_white-e1779808095868.png') !important;
	right:0;
}

.rdr-layout {
    display: flex;
    height: calc(100vh - 400px);
    align-items: flex-start;
}
.rdr-map {
    width: 40%;
    flex-shrink: 0;
    height: 100%;
}
.rdr-map .rover-map-container {
    height: 100% !important;
}
.rdr-grid {
    width: 60%;
    height: 100%;
    overflow-y: scroll;
}
.rdr-grid .listing-results-container {
    height: auto !important;
    overflow: visible !important;
}


.rdr-map .mrc {
    height: 100% !important;
}
.idx-swipe .prev_next a {
	
}
/* Hide section on neighborhood pages when no buildings assigned */
/* Hidden by default */
.hide-when-no-buildings {
    display: none;
}
@media (min-width: 768px) and (max-width: 980px) {
    .grc > .idx-prop {
        width: 47% !important;
    }
}
@media (max-width: 767px) {
	.rdr-layout {
		flex-wrap:wrap;
	}
	.rdr-map {
		width: 100%;
		height: 300px;
		margin-bottom:20px;
	}
	.rdr-layout {
		height: calc(80vh - 400px);
		height: auto;
	}
	.rdr-grid {
		width: 100%;
		height:75%;
	}
	.grc .idx-prop .dataset {
		top: 90% !important;
	}
}
/* Show when neighborhood has buildings */
body.has-neighborhood-buildings .hide-when-no-buildings {
    display: block;
}

/* Hide when neighborhood has buildings */
body.has-neighborhood-buildings .hide-when-has-buildings {
    display: none;
}

/* Hide a section when the neighborhood has NO child terms */
.hide-when-no-children {
    display: none;
}
body.has-child-neighborhoods .hide-when-no-children {
    display: block;
}

.nbhd-bld-few .slick-list {
    display: flex;
    justify-content: center;
}


/* =========================================================================
 * CAO Homepage v2 Cards
 * Used by [cao_listings], [cao_buildings], [cao_agents] shortcodes.
 * Brand: navy #1a2b45, blue #2d5fa6. Mirrors .nhc-card patterns elsewhere.
 * ========================================================================= */

.cao-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 24px;
    margin: 0 auto;
    max-width: 1200px;
    padding: 16px 0;
}
.cao-grid--building .cao-grid,
.cao-grid--team_member {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 18px;
}

.cao-card {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(26, 43, 69, 0.10);
    transition: transform 200ms ease, box-shadow 200ms ease;
}
.cao-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(26, 43, 69, 0.18);
}
.cao-card__link {
    display: block;
    color: inherit;
    text-decoration: none;
}
.cao-card__media {
    margin: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #eef0f4;
}
.cao-card__media--building {
    aspect-ratio: 400 / 516;
}
.cao-card__media--agent {
    aspect-ratio: 245 / 316;
}
.cao-card__img,
.cao-card__placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.cao-card__body {
    padding: 14px 18px 18px;
}
.cao-card__body--agent {
    text-align: center;
    padding: 12px 14px 16px;
}
.cao-card__price {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 4px;
    color: #1a2b45;
    letter-spacing: -0.01em;
}
.cao-card__title {
    font-size: 1rem;
    font-weight: 500;
    margin: 0 0 6px;
    color: #1a2b45;
    line-height: 1.3;
}
.cao-card--agent .cao-card__title {
    font-size: 1.05rem;
    font-weight: 600;
}
.cao-card__meta {
    font-size: 0.875rem;
    color: #4a5870;
    margin: 0 0 4px;
}
.cao-card__hood,
.cao-card__address {
    font-size: 0.78rem;
    color: #7a8499;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.cao-card__role {
    font-size: 0.875rem;
    color: #2d5fa6;
    margin: 4px 0 0;
}
.cao-card__phone {
    font-size: 0.875rem;
    color: #4a5870;
    margin: 4px 0 0;
}

@media (max-width: 768px) {
    .cao-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .cao-card__body { padding: 10px 12px 14px; }
    .cao-card__price { font-size: 1.1rem; }
}
@media (max-width: 420px) {
    .cao-grid { grid-template-columns: 1fr; }
}

/* ========================= END CAO Homepage v2 ========================== */


/* IDX property page: widen #left-area, then run our own 2-column layout */
@media (min-width: 981px) {
    .idx-page-content {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 440px;
        gap: 40px;
        /* no align-items — let sidebar stretch to row height so sticky can travel */
    }
    .idx-page-content #left-area {
        width: 100% !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
        min-width: 0;
    }
    /* Kill the Divi vertical divider at the sidebar boundary */
    .idx-page-container::before { display: none !important; }

    /* Sticky form */
    .idx-page-sidebar .idx-contact-sticky {
        position: sticky;
        top: 300px;
        margin-top: 150px;
        background: #f4f4f1;
        padding: 30px 25px;
        border-radius: 4px;
    }
    .idx-page-sidebar .idx-contact-sticky h2.h2-idx {
        margin-top: 0;
        margin-bottom: 20px;
    }
}

@media (max-width: 980px) {
    .idx-page-sidebar { margin-top: 40px; }
    .idx-page-sidebar .idx-contact-sticky {
        background: #f4f4f1;
        padding: 25px 20px;
        border-radius: 4px;
    }
}


.idx-by-category {
padding: 20px;
}
.idx-general-content {
padding: 0px 20px;
}
.idx-detail-item {
box-sizing: border-box;
float:left;
padding: 4px;
width:100%;
}
.idx-detail-school-district-item {
box-sizing: border-box;
float:left;
padding: 4px;
width:100%;
}
.idx-detail-school-item {
box-sizing: border-box;
float:left;
padding: 4px;
width:100%;
}
.idx-detail-school-item .idx-detail-label,
.idx-detail-school-item .idx-detail-value {
width:50%;
}
.idx-remarks {
font-size: 18px;
line-height: 1.2em;
margin: 20px 0;
padding-left:10px;
padding-right:10px;
}

.idx-detail-label {
font-weight:bold;
text-align: left;
display: inline-block;
line-height: 1.2em;
text-overflow: ellipsis;
overflow: hidden;
vertical-align: top;
white-space: nowrap;
width:100%
}
.idx-detail-value {
font-weight: normal;
text-align: left;
display: inline-block;
line-height: 1.2em;
padding-left: 10px;
vertical-align: top;
width:100%
}
h3.idx-detail-section {
background: rgba(0,0,0,0.02);
clear:both;
font-size: 28px;
margin-top:30px;
padding: 10px 0;
text-align: center;
}
.idx-prop-details-static {
background: #fff;
color:#666;
font-size:18px;
}

.prop-section-left .idx-detail-section.pl,
.prop-section-left .idx-prop-details-static.pl {
padding-left:10px;
}
.prop-section-right .idx-detail-section.pr {
padding-right:10px;
}
.idx-prop-details-static.plr {
padding-left:10px;
padding-right:10px;
}

.idx-contact-container,
.idx-calculator-container {
box-sizing:border-box;
float:none;
padding:10px;
width:100%;
}
.idx-prop-detail.commleaseprivate .idx-calculator-container {
display:none;
}
.idx-prop-detail.commercial .idx-detail-item.beds,
.idx-prop-detail.commercialprivate .idx-detail-item.beds,
.idx-prop-detail.land .idx-detail-item.beds,
.idx-prop-detail.landprivate .idx-detail-item.beds,
.idx-prop-detail.land .idx-detail-item.baths,
.idx-prop-detail.landprivate .idx-detail-item.baths {

    display: none;
}

.idx-row.idx-text-input,
.idx-row.idx-checkbox {
margin-bottom: 20px;
}
.idx-row.idx-text-input label {
display: inline-block;
vertical-align: top;
width: 50%;
}

.idx-prop-detail-framework #roverTable {
    border: 0px;
}

.walk-score-container {
margin:0 auto;
max-width:690px;
width: 100%;
}


@media only screen and (min-width: 801px)	{
	.idx-detail-item {
		width:50%;
		}
	.idx-detail-label {
		display:inline-block;
		text-align: left;
		width:40%
		}

	.idx-detail-value {
		display:inline-block;
		width:60%
		}

	.idx-detail-school-item {width:100%}

	.idx-contact-container,
	.idx-calculator-container {
		float:left;
		width:50%;
		}
	.idx-prop-detail.commleaseprivate .idx-contact-container {
		width: 100%;
		}
	.idx-prop-detail.commleaseprivate .idx-calculator-container {
		display:none;
		}
}


.exclusive-listings-slider-idx{width:100% !important;}
/* IDX adds overflow:hidden/auto to body on property pages, which breaks sticky.
   Restore visible overflow only on pages where our IDX page template runs. */
body.idx_pi {
    overflow: visible !important;
    overflow-x: clip !important;  /* still prevent horizontal scroll */
}

.idx-page-container {
    max-width: 1800px !important;  /* up from Divi's default 1080px */
    width: 90% !important;
}

.pac_dth_taxonomies.taxonomy_neighborhood.post_type_listing {
	justify-content: center;
	row-gap: 6px;
}
.pac_dth_taxonomies.taxonomy_neighborhood.post_type_listing h3 {
	padding-bottom:0;
}
.grid-layout-off.same-height-cards .grid-item-cont, .grid-layout-grid.same-height-cards .grid-item-cont {
	flex-direction: inherit !important;
}
.same-height-cards .grid-col .grid-item-cont > .bc-link-whole-grid-card {
	width: 100% !important;
}


.neighborhood_sub .pac_dth_taxonomies.taxonomy_neighborhood.post_type_listing {
    display: grid;
    gap: 15px;
	grid-template-columns: repeat(3, 1fr);
}
.neighborhood_sub .neighborhood_sub_cat_buttons .pac_dth_taxonomy {
	width: auto !important;
}
@media (max-width: 1076px)	{
	.neighborhood_sub .pac_dth_taxonomies.taxonomy_neighborhood.post_type_listing {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 981px) {
	.neighborhood_sub .neighborhood_sub_cat_buttons .pac_dth_taxonomy {
		width: auto !important;
	}
}
@media (max-width: 480px) {
	.neighborhood_sub .pac_dth_taxonomies.taxonomy_neighborhood.post_type_listing {
		grid-template-columns: repeat(1, 1fr);
	}
}

