/* Fix oversized SVG icons in footer icon list */
.elementor-icon-list-icon svg {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
}

/* Miami's Finest Homes Carousel - Show only image, price, address */
/* Hide MLS number from carousel card banners */
.idx-carousel .mln,
.lcc.idx-carousel .mln {
    display: none !important;
}

/* Hide beds/baths/sqft/acres row in carousel cards */
.idx-carousel .idx-data-meta,
.lcc.idx-carousel .idx-data-meta {
    display: none !important;
}
/* Neighborhood Grid Display - Luxe Miami Realty */
/* Fix entrance animation that hides widgets until scrolled past */
.elementor-element-e72a0f0 .elementor-widget {
  transform: none !important;
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Grid container: 4-column wrap */
.elementor-element-e72a0f0 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  overflow: visible !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

/* Each card: 25% width (4 per row) */
.elementor-element-e72a0f0 > .e-con {
  flex: 0 0 25% !important;
  min-width: 0 !important;
  max-width: 25% !important;
  height: 320px !important;
  min-height: 320px !important;
  overflow: hidden !important;
  margin: 0 !important;
}

/* Fix Grids Builder widget to fill its column */
.elementor-element-e72a0f0 .elementor-widget-Houzez_elementor_grid_builder,
.elementor-element-e72a0f0 .elementor-widget-Houzez_elementor_grid_builder .elementor-widget-container {
  height: 100% !important;
}

/* Grid item fills full column height */
.elementor-element-e72a0f0 .grid-item {
  height: 100% !important;
  min-height: 280px !important;
  border-radius: 0 !important;
}

/* Widget container stretches to fill column */
.elementor-element-e72a0f0 .elementor-widget,
.elementor-element-e72a0f0 .elementor-widget-container {
  height: 100% !important;
}

/* Parent containers: allow overflow */
.elementor-element-c3b9cd4 { overflow: visible !important; padding: 0 !important; }
.elementor-element-ef0ef60 { overflow: visible !important; padding: 0 !important; }

/* Hide spacer widgets that overlap neighborhood grid items */
.elementor-element-e72a0f0 .elementor-widget-spacer {
  display: none !important;
}

/* Rover IDX Layout Fix - allow natural height */
.rover-panes,
.rover-fullpage-framework,
.idx-full-page-layout {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
.idx-framework {
  height: auto !important;
  overflow: visible !important;
}



/* "...Read more" inline italic - positioned at end of 3rd text line */

/* Shorten last line by adding right padding - text/... appears before the button */
.testimonial-item-v3 .testimonial-body {
    padding-right: 120px !important;
    margin-bottom: 18px !important;
}

/* Position "See more" button inline at the 3rd line, right side */
.testimonial-item-v3 .testimonial-see-more-btn {
    position: absolute !important;
    top: 74px !important;       /* = 2 × 37px line-height, start of 3rd line */
    right: 0 !important;
    bottom: auto !important;
    height: 37px !important;    /* exactly one line height */
    line-height: 37px !important;
    font-style: italic !important;
    font-size: inherit !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer !important;
    color: inherit !important;
    display: block !important;
    white-space: nowrap !important;
}
/* Center single blog post in homepage blog section */
.blog-single-post-centered .blog-posts-module .row {
  justify-content: center;
}


/* Hide breadcrumbs site-wide */
.breadcrumb-wrap {
    display: none !important;
}

/* ============================================================
   COMMUNITY PAGES — LUXURY REDESIGN v3
   Luxe Miami Realty — Final precision
   ============================================================ */

/* ─── FONT IMPORT ─── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Inter:wght@300;400;500;600&display=swap');

/* ─── 1. HIDE SIDEBAR → FULL-WIDTH ─── */
.bt-sidebar-wrap {
    display: none !important;
}
.bt-content-wrap {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding-right: 15px !important;
}

/* ─── 2. REMOVE HOUZEZ PAGE TITLE BAR ─── */
.fave-page-title-bar,
.page-header-wrap.page-header-type-none,
.page-title-wrap {
    display: none !important;
}

/* ─── 3. HERO IMAGE — FULL-BLEED CINEMATIC ─── */
.page-content-wrap figure.wp-block-image:first-child {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    overflow: hidden;
    position: relative;
}
.page-content-wrap figure.wp-block-image:first-child img {
    width: 100% !important;
    height: 72vh !important;
    min-height: 480px;
    object-fit: cover !important;
    object-position: center 25% !important;
    display: block;
    filter: brightness(0.82);
}

/* ─── 4. H1 TITLE — CINEMATIC DARK TITLE BAND ─── */
.page-content-wrap h1.wp-block-heading {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(28px, 4.5vw, 60px) !important;
    font-weight: 300 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: #fff !important;
    text-align: center !important;
    background: #111 !important;
    padding: 44px 60px 40px !important;
    margin: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    line-height: 1.15 !important;
    display: block !important;
}

/* ─── 5. INTRO PARAGRAPH ─── */
.page-content-wrap p.wp-block-paragraph:first-of-type {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(18px, 1.8vw, 22px) !important;
    font-weight: 300 !important;
    font-style: italic !important;
    color: #3a3a3a !important;
    line-height: 1.9 !important;
    max-width: 820px !important;
    margin: 56px auto 32px !important;
    text-align: center !important;
    padding: 0 20px !important;
}

/* ─── 6. H2 SECTION HEADINGS — ELEGANT GOLD LABEL ─── */
.page-content-wrap h2.wp-block-heading {
    font-family: 'Inter', 'Helvetica Neue', sans-serif !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.3em !important;
    text-transform: uppercase !important;
    color: #b8976a !important;
    margin-top: 68px !important;
    margin-bottom: 28px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #e8e0d4 !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    line-height: 1.4 !important;
    display: block !important;
    background: transparent !important;
    width: auto !important;
}

/* ─── 7. HIDE EMOJIS IN HEADINGS ─── */
.page-content-wrap h2.wp-block-heading .emoji,
.page-content-wrap h1.wp-block-heading .emoji {
    display: none !important;
}

/* Use font-family override to suppress emoji rendering */
.page-content-wrap h2.wp-block-heading {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif !important;
}

/* ─── 8. BODY PARAGRAPHS ─── */
.page-content-wrap p.wp-block-paragraph {
    font-family: 'Inter', 'Helvetica Neue', sans-serif !important;
    font-size: 15.5px !important;
    line-height: 1.85 !important;
    color: #2a2a2a !important;
    max-width: 820px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 1.4em !important;
    padding: 0 20px !important;
}

/* ─── 9. STAT COLUMNS — 3-CARD GRID ─── */
.page-content-wrap .wp-block-columns {
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 0 !important;
    border: 1px solid #e8e0d4 !important;
    margin: 40px 0 !important;
    padding: 0 !important;
    background: #e8e0d4 !important;
}

.page-content-wrap .wp-block-column {
    padding: 40px 36px !important;
    border-right: 0 !important;
    background: #faf7f3 !important;
    margin: 0 !important;
}

.page-content-wrap .wp-block-column h3,
.page-content-wrap .wp-block-column h2 {
    font-family: 'Inter', sans-serif !important;
    font-size: 10px !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: #b8976a !important;
    border: none !important;
    border-bottom: 1px solid #e8e0d4 !important;
    padding: 0 0 12px 0 !important;
    margin: 0 0 16px 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    background: transparent !important;
}

.page-content-wrap .wp-block-column p {
    font-size: 14px !important;
    color: #555 !important;
    line-height: 1.75 !important;
    margin: 4px 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    font-family: 'Inter', sans-serif !important;
    font-style: normal !important;
    text-align: left !important;
}

/* Score numbers — large elegant serif */
.page-content-wrap .wp-block-column p strong {
    display: block;
    font-size: 30px !important;
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-weight: 300 !important;
    font-style: normal !important;
    color: #111 !important;
    margin-bottom: 8px;
    letter-spacing: 0.01em;
    line-height: 1;
}

/* ─── 10. SCHOOLS TABLE ─── */
.page-content-wrap .wp-block-table {
    max-width: 100% !important;
    margin: 24px 0 !important;
    overflow: hidden !important;
    border: none !important;
}

.page-content-wrap .wp-block-table table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
}

.page-content-wrap .wp-block-table thead tr {
    background: #111 !important;
}

.page-content-wrap .wp-block-table thead th {
    padding: 16px 20px !important;
    color: #d4b88a !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    border: none !important;
    text-align: left !important;
}

.page-content-wrap .wp-block-table tbody tr {
    border-bottom: 1px solid #f0ebe3 !important;
}

.page-content-wrap .wp-block-table tbody tr:hover {
    background: #fdf9f4 !important;
}

.page-content-wrap .wp-block-table tbody td {
    padding: 14px 20px !important;
    color: #333 !important;
    border: none !important;
    vertical-align: middle !important;
    line-height: 1.5 !important;
}

.page-content-wrap .wp-block-table figcaption {
    display: none !important;
}

/* ─── 11. WHY LIVE HERE LIST ─── */
.page-content-wrap .wp-block-list {
    list-style: none !important;
    padding: 0 !important;
    max-width: 860px !important;
    margin: 24px auto !important;
}

.page-content-wrap .wp-block-list li {
    padding: 18px 0 18px 28px !important;
    position: relative !important;
    border-bottom: 1px solid #f0ebe3 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    color: #2a2a2a !important;
    line-height: 1.65 !important;
}

.page-content-wrap .wp-block-list li::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 28px !important;
    width: 14px !important;
    height: 1px !important;
    background: #c9a96e !important;
}

.page-content-wrap .wp-block-list li strong {
    font-weight: 600 !important;
    color: #111 !important;
}

/* ─── 12. AGENT CTA — DARK GOLD BANNER ─── */
.page-content-wrap > p.wp-block-paragraph:last-child {
    background: #111 !important;
    color: #d4b88a !important;
    padding: 48px 40px !important;
    margin-top: 80px !important;
    margin-bottom: 0 !important;
    max-width: 100vw !important;
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    text-align: center !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    line-height: 2.2 !important;
    font-style: normal !important;
}

/* ─── 13. BREADCRUMB HIDDEN ─── */
.breadcrumb-wrap { display: none !important; }

/* ─── 14. REMOVE DEFAULT PAGE HEADER AREA ─── */
.page-header-wrap { padding: 0 !important; margin: 0 !important; }

/* ─── 15. PAGE WRAP CLEAN ─── */
.page-wrap { background: #fff; }

/* ─── 16. RESPONSIVE ─── */
@media (max-width: 768px) {
    .page-content-wrap .wp-block-columns {
        grid-template-columns: 1fr !important;
    }
    .page-content-wrap h1.wp-block-heading {
        font-size: 26px !important;
        padding: 32px 24px 28px !important;
        letter-spacing: 0.06em !important;
    }
    .page-content-wrap p.wp-block-paragraph:first-of-type {
        font-size: 18px !important;
        margin: 40px auto 24px !important;
    }
}


/* ─── FIX: REMOVE 40PX TOP PADDING GAP ON COMMUNITY PAGES ─── */
/* Houzez sets 40px padding-top on .page-content-wrap via inline/theme style */
.page-content-wrap,
.page-content-wrap[style*="padding"] {
    padding-top: 0 !important;
}

/* Also kill the row gap */
.bt-content-wrap {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* ─── FIX: PAGES WHERE TITLE IS H2 FIRST HEADING ─── */
/* Some community pages use H2 for their title. Apply hero styling to first H2 if no H1 */
.page-content-wrap > figure.wp-block-image:first-child + h2.wp-block-heading {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(24px, 3.5vw, 52px) !important;
    font-weight: 300 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: #fff !important;
    text-align: center !important;
    background: #111 !important;
    padding: 40px 60px 36px !important;
    margin: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    line-height: 1.15 !important;
    display: block !important;
    border-bottom: none !important;
    color: #fff !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* ─── FIX: HIDE IMAGE CAPTIONS IN HERO ─── */
.page-content-wrap figure.wp-block-image:first-child figcaption {
    display: none !important;
}
.page-content-wrap figure.wp-block-image:first-child + figcaption {
    display: none !important;
}
/* Caption outside figure */
.page-content-wrap > figure.wp-block-image:first-child ~ p:first-of-type[style*="font-size:12"] {
    display: none !important;
}
/* WordPress image caption below figure */
.wp-block-image figcaption {
    display: none !important;
}


/* Hide iframe inside market stats widget, not the whole widget */
.elementor-element-market-iframe iframe {
    display: none !important;
}



/* =========================================
   ROVER IDX LUXURY STYLING
   ========================================= */

/* Rover IDX section - full width */
.wp-block-shortcode {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

/* The map container - set a good height */
.mrc.clusterer,
.rover-pane .mrc {
  height: 380px !important;
  min-height: 380px !important;
}

/* IDX results framework - limit height with scroll */
/* idx-results-framework: auto height, no constraint */
.idx-full-page-layout .idx-results-framework.idx-has-search {
  height: auto !important;
  min-height: 0 !important;
}

/* Search container compact styling */
.search-container {
  background: #faf7f3 !important;
  border-top: 1px solid #e8e0d4 !important;
}

/* Style the nav/controls bar */
.idx-header-controls.rover-listing-header {
  background: #111 !important;
  border-bottom: 1px solid #333 !important;
  padding: 10px 16px !important;
}
.idx-header-controls a,
.idx-header-controls .rover-navbar-li {
  color: #d4b88a !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Footer disclosure */
.idx-disclosure {
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  color: #888 !important;
  padding: 8px 16px !important;
  text-align: center !important;
  background: #faf7f3 !important;
}




/* ─── CAROUSEL LUXURY STYLING ─── */
/* Carousel container - no extra padding */
.idx-framework .idx-carousel {
  margin: 0 !important;
  padding: 0 !important;
}

/* Carousel card base */
.idx-carousel .idx-prop {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
  transition: box-shadow 0.3s ease !important;
  overflow: hidden !important;
}
.idx-carousel .idx-prop:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,0.18) !important;
}

/* Carousel property image */
.idx-carousel .idx-prop .slider-wrap,
.idx-carousel .idx-prop .idx-prop-img {
  border-radius: 0 !important;
}

/* Carousel property address link */
.idx-carousel .idx-prop .idx-prop-address a,
.idx-carousel .idx-prop .lcc-address a {
  color: #b8976a !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  text-decoration: none !important;
}
.idx-carousel .idx-prop .idx-prop-address a:hover {
  color: #111 !important;
}

/* Carousel prev/next arrow buttons */
.rover-nav-prev,
.rover-nav-next {
  background: #111 !important;
  color: #b8976a !important;
  border: 1px solid #b8976a !important;
  width: 40px !important;
  height: 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  opacity: 0.85 !important;
  transition: opacity 0.2s ease, background 0.2s ease !important;
}
.rover-nav-prev:hover,
.rover-nav-next:hover {
  background: #b8976a !important;
  color: #111 !important;
  opacity: 1 !important;
}

/* Gap between map and carousel */
.idx-framework + .idx-framework {
  margin-top: 0 !important;
}

/* ─── ROVER IDX SCROLL FIX ─── */
/* Prevent IDX from hijacking page scroll on load */
html {
  scroll-behavior: auto !important;
}

/* Remove the scroll-to anchor offset that causes jump */
.idx-scroll-to {
  scroll-margin-top: 0 !important;
}



/* ─── MARKET STATISTICS PAGE - Remove all gold/yellow colors ─── */

/* Fix beige/cream section backgrounds to white */
.elementor-element-stats-intro,
.elementor-element-market-widget-section {
    background-color: #ffffff !important;
}

/* Fix CTA section - white background */
.elementor-element-cta-section {
    background-color: #ffffff !important;
}

/* Fix gold divider line to navy */
.elementor-element-stats-intro .elementor-divider-separator,
.elementor-element-market-widget-section .elementor-divider-separator {
    border-color: #1a1a2e !important;
}

/* Fix gold text colors (#c8b89a) in market stats page to dark navy */
.elementor-element-stats-intro p[style*="c8b89a"],
.elementor-element-market-widget-section p[style*="c8b89a"],
.elementor-element-cta-section p[style*="c8b89a"] {
    color: #1a1a2e !important;
}

/* Fix all inline gold colors within market stats sections */
.elementor-element-stats-intro [style*="c8b89a"],
.elementor-element-market-widget-section [style*="c8b89a"] {
    color: #1a1a2e !important;
}

/* On dark navy sections, gold sub-text should be light grey/white */
.elementor-element-hero-section [style*="c8b89a"],
.elementor-element-neighborhood-section [style*="c8b89a"],
.elementor-element-neighborhood-cards [style*="c8b89a"] {
    color: #b0b8c9 !important;
}

/* Fix gold card border-tops in neighborhood cards */
.elementor-element-neighborhood-cards div[style*="border-top"][style*="c8b89a"] {
    border-top-color: #b0b8c9 !important;
}

/* Ensure headings on white sections are dark navy */
.elementor-element-stats-intro .elementor-heading-title,
.elementor-element-market-widget-section .elementor-heading-title {
    color: #1a1a2e !important;
}

/* CTA section text color */
.elementor-element-cta-section .elementor-heading-title,
.elementor-element-cta-section p,
.elementor-element-cta-section .elementor-widget-text-editor {
    color: #1a1a2e !important;
}


/* Fix card border-tops in neighborhood cards - remove gold/green */
.elementor-element-neighborhood-cards .elementor-widget-html div[style*="border-top"] {
    border-top-color: rgba(255, 255, 255, 0.25) !important;
}

/* Fix market status badges - neutral white style */
.elementor-element-neighborhood-cards div[style*="rgba(255,100,100"],
.elementor-element-neighborhood-cards div[style*="rgba(74,222,128"] {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
}

/* Fix Neighborhood Spotlight subtitle gold text */
.elementor-element-neighborhood-section p {
    color: rgba(255, 255, 255, 0.75) !important;
}

/* Fix hero subtitle gold color */
.elementor-element-hero-section p[style*="c8b89a"] {
    color: rgba(255, 255, 255, 0.85) !important;
}

/* Fix stats section label text gold color */
.elementor-element-stats-intro div[style*="c8b89a"],
.elementor-element-market-widget-section div[style*="c8b89a"] {
    color: #1a1a2e !important;
}

/* Fix nav dropdown menu transparency - opacity not set on hover */
.houzez-nav-menu-main-desktop-wrap .houzez-nav-menu-main .nav-item:hover > .dropdown-menu,
.houzez-nav-menu-main-desktop-wrap .houzez-nav-menu-main .dropdown-menu.show {
	    opacity: 1 !important;
	    visibility: visible !important;
}

/* Fix nav dropdown z-index stacking - ensure header is above page content */
#header-hz-elementor {
	    position: relative;
	    z-index: 100;
}

/* Fix hero content stacking below nav dropdown */
.pc-hero-content {
	    z-index: 0 !important;
}

/* ============================================================
   VISUAL HARMONY — COMMUNITY, PRE-CONSTRUCTION & ABOUT PAGES
   Palette: #1A1A1A black | #FFFFFF white | #4A9FD9 light blue
   ============================================================ */

/* ─── 1. PAGE HERO TITLES — Remove black band, keep text readable ─── */
/* Community pages: clear the solid black background behind title */
.community-hero-title,
h1.community-hero-title,
.wp-block-heading.community-hero-title {
  background-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 20px 40px !important;
  /* Subtle text-shadow for readability over image */
  text-shadow: 0 2px 20px rgba(0,0,0,0.55), 0 1px 4px rgba(0,0,0,0.4) !important;
  color: #FFFFFF !important;
  font-size: 56px !important;
  letter-spacing: 0.12em !important;
}

/* Subtitle under community title */
.community-hero-subtitle {
  color: #FFFFFF !important;
  text-shadow: 0 1px 8px rgba(0,0,0,0.5) !important;
  font-size: 20px !important;
  font-style: italic !important;
  background: transparent !important;
}

/* About / Selling / Investment page hero titles (wp-block-heading without image cover) */
.page-content-wrap h1.wp-block-heading,
.entry-content h1.wp-block-heading,
.elementor-section h1.wp-block-heading {
  background-color: transparent !important;
  background: transparent !important;
  color: #1A1A1A !important;
  text-shadow: none !important;
  padding: 20px 0 !important;
}

/* But keep white text on actual cover/hero blocks with dark overlay */
.wp-block-cover h1.wp-block-heading,
.wp-block-cover .community-hero-title {
  color: #FFFFFF !important;
  text-shadow: 0 2px 20px rgba(0,0,0,0.55) !important;
  background: transparent !important;
}

/* Pre-construction hero — same consistent style */
.pre-construction-hero h1,
.pre-construction-hero .hero-title {
  color: #FFFFFF !important;
  text-shadow: 0 2px 16px rgba(0,0,0,0.5) !important;
}

/* ─── 2. SECTION LABELS — Replace gold with brand dark/blue ─── */
/* Gold section labels (h2 in page-content-wrap) */
.page-content-wrap h2.wp-block-heading,
.page-content-wrap .wp-block-column h2,
.page-content-wrap .wp-block-column h3,
.entry-content h2.wp-block-heading:not(.community-hero-title):not(.wp-block-cover h2) {
  color: #1A1A1A !important;
  font-family: Inter, "Helvetica Neue", sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
}

/* ─── 3. TABLE HEADERS — Replace black/gold with clean dark blue ─── */
.page-content-wrap .wp-block-table thead tr {
  background: #1A1A1A !important;
}

.page-content-wrap .wp-block-table thead th {
  color: #FFFFFF !important;
  background: transparent !important;
  padding: 14px 20px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  border: none !important;
}

/* Table hover row — keep subtle */
.page-content-wrap .wp-block-table tbody tr:hover {
  background: #f5f8fb !important;
}

/* ─── 4. STAR RATINGS — Remove gold/yellow stars ─── */
.star-rating .fa-star,
.star-rating i,
.houzez-stars i,
.faveicon-star-full::before,
[class*="star-rating"] i,
.rating-stars .fa,
.fave-testimonial-rating i,
.testimonial-rating i {
  color: #1A1A1A !important;
}

/* IDX star ratings */
.idx-stars .fa-star,
.idx-rating .fa-star {
  color: #4A9FD9 !important;
}

/* ─── 5. COMMUNITY COLUMN CARDS — Match stat card background ─── */
.page-content-wrap .wp-block-column {
  background: #f9f9f9 !important;
}

/* ─── 6. LAST PARAGRAPH (gold "contact me" text) ─── */
.page-content-wrap > p.wp-block-paragraph:last-child {
  color: #4A9FD9 !important;
}

/* ─── 7. CONSISTENT HERO COVER HEIGHT ─── */
.community-hero-cover.wp-block-cover,
.wp-block-cover.alignfull.community-hero-cover {
  min-height: 420px !important;
}

/* ─── 8. GLOBAL — Any remaining gold/warm accent colors ─── */
[style*="b8976a"],
[style*="B8976A"],
[style*="d4b88a"],
[style*="D4B88A"],
[style*="b89768"],
[style*="c8a96e"],
[style*="d4a843"],
.has-gold-color,
.has-gold-background-color {
  color: #1A1A1A !important;
  background-color: transparent !important;
}

/* IDX header controls (gold links in IDX search) */
.idx-header-controls a,
.idx-header-controls .rover-navbar-li {
  color: #4A9FD9 !important;
}

/* IDX carousel property address */
.idx-carousel .idx-prop .idx-prop-address a,
.idx-carousel .idx-prop .lcc-address a {
  color: #1A1A1A !important;
}

/* IDX navigation arrows */
.rover-nav-prev,
.rover-nav-next {
  color: #4A9FD9 !important;
}



/* ═══════════════════════════════════════════════════════════════════
   SITE-WIDE VISUAL HARMONY — Page Title Treatment & Style Unification
   Luxe Miami Realty — Non-Elementor Pages (Communities, About, Pre-Construction)
   ═══════════════════════════════════════════════════════════════════ */

/* ─── COMMUNITY PAGES (non-Elementor) — Page Header Title  ─── */
/* Target only non-Elementor pages (.houzez-header- body class, no elementor-page) */
/* The community H1 sits inside .lmr-seo-page > h1 */
body:not(.elementor-page) .page-content-wrap h1.wp-block-heading,
body:not(.elementor-page) .lmr-seo-page > h1,
body:not(.elementor-page) .page-content-wrap .lmr-seo-page h1 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(22px, 3vw, 42px) !important;
    font-weight: 300 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    text-align: center !important;
    background: #f7f5f2 !important;
    padding: 56px 40px 48px !important;
    margin: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    line-height: 1.25 !important;
    display: block !important;
    border-bottom: 1px solid #e0dbd4 !important;
}

/* ─── COMMUNITY PAGES with HERO IMAGE (non-Elementor) ─── */
/* Full-bleed hero image styling */
body:not(.elementor-page) .page-content-wrap figure.wp-block-image:first-child {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    display: block !important;
}
body:not(.elementor-page) .page-content-wrap figure.wp-block-image:first-child img {
    width: 100% !important;
    height: 70vh !important;
    min-height: 400px !important;
    max-height: 580px !important;
    object-fit: cover !important;
    object-position: center 30% !important;
    display: block !important;
    filter: brightness(0.75) !important;
}

/* ─── H1 OVERLAY on hero image — when H1 follows the first figure ─── */
/* If a page has: [figure.wp-block-image:first-child] [h1] */
/* the h1 should sit below the image as a title band with semi-transparent bg */
body:not(.elementor-page) .page-content-wrap figure.wp-block-image:first-child ~ h1.wp-block-heading {
    color: #ffffff !important;
    background: rgba(20, 20, 20, 0.45) !important;
    backdrop-filter: blur(2px) !important;
    -webkit-backdrop-filter: blur(2px) !important;
    border-bottom: none !important;
    padding: 40px 60px 36px !important;
    margin-top: 0 !important;
    font-size: clamp(26px, 3.5vw, 50px) !important;
    letter-spacing: 0.16em !important;
}

/* ─── H2 SECTION HEADINGS — Harmonized, no gold, site serif font ─── */
body:not(.elementor-page) .page-content-wrap h2.wp-block-heading,
body:not(.elementor-page) .page-content-wrap .lmr-seo-page h2,
body:not(.elementor-page) .entry-content h2.wp-block-heading {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(18px, 2vw, 26px) !important;
    font-weight: 400 !important;
    letter-spacing: 0.05em !important;
    text-transform: none !important;
    color: #1A1A1A !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid #e0dbd4 !important;
    padding-bottom: 12px !important;
    margin-top: 48px !important;
    margin-bottom: 20px !important;
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: auto !important;
}

/* Override any lingering gold color */
body:not(.elementor-page) .page-content-wrap h2.wp-block-heading,
body:not(.elementor-page) .page-content-wrap .wp-block-column h2,
body:not(.elementor-page) .page-content-wrap .wp-block-column h3 {
    color: #1A1A1A !important;
}

/* ─── H3 SUB-SECTION ─── */
body:not(.elementor-page) .page-content-wrap h3.wp-block-heading,
body:not(.elementor-page) .page-content-wrap .lmr-seo-page h3 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(16px, 1.5vw, 20px) !important;
    font-weight: 500 !important;
    letter-spacing: 0.04em !important;
    text-transform: none !important;
    color: #1A1A1A !important;
    background: transparent !important;
    border: none !important;
    margin-top: 28px !important;
    margin-bottom: 12px !important;
}

/* ─── ALSO: Remove gold from Elementor page section labels  ─── */
/* These appear on Elementor community pages (Brickell, Bal Harbour etc.) */
.page-content-wrap h2.wp-block-heading {
    color: #1A1A1A !important;
    background-color: transparent !important;
}
/* But keep the special Elementor hero H1 as is (already styled via Elementor) */

/* ─── PRE-CONSTRUCTION PAGE HERO ─── */
#pc-hero {
    padding: 25px 40px !important;
    background: #1a1a2e !important;
    border-radius: 12px !important;
    text-align: center !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-top: 0 !important;
    margin-bottom: 32px !important;
}
#pc-hero::before {
    display: none !important;
}
#pc-hero h1,
#pc-hero h2,
#pc-hero .hero-title {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(16px, 2vw, 26px) !important;
    font-weight: 300 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    text-shadow: none !important;
    margin-bottom: 8px !important;
}
#pc-hero p {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(14px, 1.2vw, 17px) !important;
    font-weight: 300 !important;
    letter-spacing: 0.04em !important;
    color: rgba(255,255,255,0.85) !important;
    font-style: italic !important;
    max-width: 640px !important;
    margin: 0 auto !important;
    text-shadow: none !important;
}

/* ─── ELEMENTOR COMMUNITY PAGES — H2 section labels ─── */
/* Bal Harbour, Brickell, Kendall, Miami Beach, Coral Gables, Downtown, Shenandoah, Pinecrest */
.elementor-page .page-content-wrap h2.wp-block-heading,
.elementor-page .entry-content h2.wp-block-heading {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(16px, 1.8vw, 24px) !important;
    font-weight: 400 !important;
    letter-spacing: 0.06em !important;
    text-transform: none !important;
    color: #1A1A1A !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid #e0dbd4 !important;
    padding-bottom: 10px !important;
    margin-top: 40px !important;
    margin-bottom: 18px !important;
}

/* ─── COLUMN STAT HEADERS — no gold ─── */
.page-content-wrap .wp-block-column h3,
.page-content-wrap .wp-block-column h2 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: clamp(12px, 1vw, 14px) !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    border: none !important;
    border-bottom: 1px solid #e0dbd4 !important;
    padding: 0 0 10px 0 !important;
    margin: 0 0 14px 0 !important;
    background: transparent !important;
}


/* Contact Page - Julien Drieu */
.contact-lmr-wrap{font-family:'Inter',sans-serif;color:#1a1a2e}
.contact-lmr-wrap *{box-sizing:border-box}
.contact-hero{background:#1a1a2e;color:#fff;padding:60px 40px;text-align:center;border-radius:12px;margin-bottom:40px}
.contact-hero h1{font-family:'Playfair Display',serif;font-size:42px;font-weight:700;color:#fff;margin:0 0 16px;letter-spacing:-.5px}
.contact-hero p{font-size:16px;color:rgba(255,255,255,.82);max-width:600px;margin:0 auto;line-height:1.7}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}
@media(max-width:768px){.contact-grid{grid-template-columns:1fr}}
.contact-info-card,.contact-form-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:36px}
.contact-info-card h2,.contact-form-card h2{font-family:'Playfair Display',serif;font-size:24px;color:#1a1a2e;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #f0ede8}
.contact-detail{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}
.contact-detail-content{flex:1}
.contact-detail-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#888;margin-bottom:4px}
.contact-detail-value{font-size:15px;font-weight:600;color:#1a1a2e;line-height:1.4}
.contact-detail-value a{color:#1a1a2e;text-decoration:none}
.phone-highlight{font-size:22px;font-weight:800;color:#1a1a2e}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#888;margin-bottom:6px;font-weight:600}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:1px solid #e0dbd3;border-radius:8px;font-family:'Inter',sans-serif;font-size:14px;color:#1a1a2e;background:#f8f7f4;transition:border-color .2s;outline:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#c8b89a;background:#fff}
.form-group textarea{min-height:110px;resize:vertical}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:480px){.form-row{grid-template-columns:1fr}}
.btn-primary{display:block;background:#1a1a2e;color:#fff;padding:14px 32px;border-radius:6px;font-weight:700;font-size:14px;text-decoration:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;letter-spacing:.5px;width:100%;text-align:center;margin-top:8px;transition:background .2s}
.btn-primary:hover{background:#2d2d50}
.ai-agent-banner{background:#1a1a2e;border-radius:10px;padding:30px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-bottom:30px}
.ai-agent-text h3{font-family:'Playfair Display',serif;font-size:22px;color:#fff;margin:0 0 8px}
.ai-agent-text p{font-size:14px;color:rgba(255,255,255,.78);margin:0;line-height:1.5}
.btn-agent{display:inline-block;background:#c8b89a;color:#1a1a2e;padding:13px 26px;border-radius:6px;font-weight:700;font-size:14px;text-decoration:none;letter-spacing:.3px;white-space:nowrap;transition:background .2s}
.btn-agent:hover{background:#d4c5a9}
.contact-meta-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:30px}
@media(max-width:600px){.contact-meta-row{grid-template-columns:1fr}}
.meta-card{background:#f8f7f4;border-radius:10px;padding:20px;text-align:center;border-bottom:3px solid #c8b89a}
.meta-card-number{font-size:28px;font-weight:800;color:#1a1a2e;margin-bottom:4px}
.meta-card-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#888}
.disclaimer{font-size:12px;color:#aaa;line-height:1.6;margin-top:14px}
.disclaimer a{color:#888}
@media(max-width:768px){.ai-agent-banner{grid-template-columns:1fr}.ai-agent-banner .btn-agent{text-align:center}}

/* ===== Market Statistics Page Overrides ===== */
/* Fix stat cards to display in 4-column grid inside mkt-section */
.mkt-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:36px;margin-bottom:20px;display:flex;flex-wrap:wrap;gap:16px;flex-direction:column}
.mkt-stats-row{display:flex!important;flex-wrap:wrap!important;gap:16px!important;width:100%!important}
.mkt-stats-row .meta-card{flex:1 1 calc(25% - 12px)!important;min-width:0}
@media(max-width:768px){.mkt-stats-row .meta-card{flex:1 1 calc(50% - 8px)!important}}
/* Section title and sub inside mkt-section */
.mkt-section-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#1a1a2e;width:100%;padding-bottom:14px;border-bottom:2px solid #f0ede8;margin:0}
.mkt-source{font-size:12px;color:#aaa;text-align:center;width:100%;margin:0}

/* ===== Market Stats: Dark secondary bar ===== */
.mkt-dark-bar{background:#1a1a2e!important;border-radius:10px!important;padding:28px!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:16px!important;text-align:center!important;margin-bottom:0!important;width:100%}
.mkt-dark-bar-number{font-size:32px!important;font-weight:800!important;color:#fff!important;margin-bottom:4px!important;display:block}
.mkt-dark-bar-label{font-size:11px!important;text-transform:uppercase!important;letter-spacing:1px!important;color:rgba(255,255,255,.65)!important;display:block}
.mkt-dark-bar-sub{font-size:12px!important;margin-top:4px!important;display:block}
.mkt-dark-bar-sub.down{color:#f87171!important}
.mkt-dark-bar-sub.up{color:#4ade80!important}
.mkt-dark-bar-sub.neutral{color:rgba(255,255,255,.6)!important}
@media(max-width:600px){.mkt-dark-bar{grid-template-columns:1fr!important}}

/* ===== Market Stats: Neighborhood cards ===== */
.neigh-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:20px!important;width:100%}
@media(max-width:768px){.neigh-grid{grid-template-columns:1fr!important}}
.neigh-card{background:#f8f7f4!important;border-radius:10px!important;overflow:hidden!important;border-bottom:3px solid #c8b89a!important}
.neigh-card-header{background:#1a1a2e!important;padding:18px 20px!important}
.neigh-card-name{font-family:'Playfair Display',serif!important;font-size:18px!important;font-weight:700!important;color:#fff!important;margin:0 0 2px!important;display:block}
.neigh-card-sub{font-size:12px!important;color:rgba(255,255,255,.65)!important;margin:0!important;display:block}
.neigh-card-body{padding:16px!important}
.neigh-metrics{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-bottom:10px!important}
.neigh-metric{background:#fff!important;border-radius:8px!important;padding:12px!important;text-align:center!important}
.neigh-metric-label{font-size:10px!important;text-transform:uppercase!important;letter-spacing:1px!important;color:#888!important;margin-bottom:4px!important;display:block}
.neigh-metric-value{font-size:20px!important;font-weight:800!important;color:#1a1a2e!important;display:block}
.neigh-badge{display:block!important;text-align:center!important;padding:9px!important;border-radius:7px!important;font-size:11px!important;font-weight:700!important;letter-spacing:.5px!important;text-transform:uppercase!important}
.neigh-badge.buyer{background:#e0e7ff!important;color:#3730a3!important}
.neigh-badge.seller{background:#dcfce7!important;color:#166534!important}
/* Wrap mkt-section flex column properly */
.mkt-section>*{flex-shrink:0}

/* ====== LMR Custom Search Widget ====== */

/* Hide original houzez search builder on homepage */
.elementor-widget-houzez_elementor_search_builder {
  display: none !important;
}

#lmr-custom-search {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  font-family: inherit;
}
.lmr-tabs {
  display: flex;
  gap: 0;
  margin-bottom: 0;
}
.lmr-tab {
  background: rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.65);
  border: none;
  padding: 10px 22px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.2s ease;
  border-radius: 10px 10px 0 0;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.lmr-tab:hover {
  background: rgba(255,255,255,0.18);
  color: rgba(255,255,255,0.9);
}
.lmr-tab.active {
  background: rgba(255,255,255,0.15);
  color: #ffffff;
  border-bottom: 2px solid #4a9fd9;
}
.lmr-bar {
  display: flex;
  align-items: center;
  background: rgba(12,12,12,0.60);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.13);
  border-radius: 0 10px 10px 10px;
  overflow: hidden;
  box-shadow: 0 10px 36px rgba(0,0,0,0.45);
  height: 58px;
}
.lmr-types {
  display: flex;
  gap: 6px;
  padding: 0 16px;
  flex-shrink: 0;
}
.lmr-type {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.55);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 20px;
  padding: 5px 13px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.lmr-type:hover {
  background: rgba(74,159,217,0.2);
  color: #ffffff;
  border-color: rgba(74,159,217,0.5);
}
.lmr-type.active {
  background: rgba(74,159,217,0.25);
  color: #ffffff;
  border-color: #4a9fd9;
}
.lmr-divider {
  width: 1px;
  height: 32px;
  background: rgba(255,255,255,0.12);
  flex-shrink: 0;
  margin: 0 4px;
}
.lmr-keyword {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  color: rgba(255,255,255,0.9);
  font-size: 14px;
  font-weight: 400;
  padding: 0 16px;
  height: 100%;
  min-width: 0;
}
.lmr-keyword::placeholder {
  color: rgba(255,255,255,0.35);
  font-size: 13px;
}
.lmr-search-btn {
  background: #000000;
  color: #ffffff;
  border: none;
  padding: 0 28px;
  height: 58px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  transition: background 0.2s ease;
  white-space: nowrap;
}
.lmr-search-btn:hover {
  background: #1a1a1a;
}

/* ===========================
   Sell Page - About-Style Layout
   =========================== */
.sell-lmr-wrap {
    font-family: Inter, sans-serif;
    color: #1a1a2e;
    max-width: 860px;
    margin: 0 auto;
    padding: 0;
}

.sell-lmr-wrap .about-content-section {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    padding: 40px;
    margin-bottom: 30px;
}

.sell-lmr-wrap .about-content-section h2 {
    font-family: 'Playfair Display', serif;
    font-size: 26px;
    color: #1a1a2e;
    margin: 0 0 20px;
    padding-bottom: 16px;
    border-bottom: 2px solid #f0ede8;
    font-weight: 700;
}

.sell-lmr-wrap .about-content-section p {
    font-size: 15px;
    line-height: 1.8;
    color: #444444;
    margin-bottom: 16px;
}

.sell-lmr-wrap .about-content-section p:last-child {
    margin-bottom: 0;
}


/* Fix: Brickell community hero subtitle - higher specificity white color fix */
.page-content-wrap p.wp-block-paragraph.community-hero-subtitle,
.page-content-wrap p.wp-block-paragraph.community-hero-subtitle:first-of-type {
    color: #ffffff !important;
}


/* 
 *    LUXE MIAMI REALTY  MOBILE & TABLET REDESIGN
 *    Optimized for conversion | Apple-level UX
 *     */

/*  TABLET (768px  1024px)  */
@media (max-width: 1024px) and (min-width: 769px) {
	
	  /* NAV */
	.site-header .main-navigation { display: none !important; }
	.site-header { padding: 0 24px !important; }
	
	  /* HERO */
	  .elementor-widget-heading h1,
	.elementor-widget-heading .elementor-heading-title[tag="h1"] {
		    font-size: 52px !important;
		    line-height: 1.12 !important;
		    letter-spacing: -0.5px !important;
	}
	
	  /* SEARCH BAR TABLET */
	#lmr-custom-search { max-width: 680px !important; }
	.lmr-tab { padding: 10px 20px !important; font-size: 11px !important; }
	.lmr-bar { padding: 10px 14px !important; gap: 10px !important; }
	.lmr-keyword { font-size: 14px !important; }
	.lmr-search-btn { padding: 10px 20px !important; font-size: 13px !important; }
	
	  /* SECTIONS  tighter spacing on tablet */
	.elementor-section, .e-con { 
	    padding-top: 60px !important; 
	    padding-bottom: 60px !important; 
	  }
	
	  /* NEIGHBORHOODS GRID  2 col on tablet */
	  .neighborhood-grid-wrap,
	.lcc.idx-carousel {
		    grid-template-columns: repeat(2, 1fr) !important;
	}
	
	  /* SERVICES  2 col on tablet */
	.elementor-widget-icon-box .elementor-icon-box-wrapper {
		    flex-direction: row !important;
		    text-align: left !important;
	}
	
	  /* TESTIMONIALS */
	.elementor-testimonial-content { font-size: 16px !important; }
	
	  /* FOOTER */
	.elementor-widget-nav-menu .elementor-nav-menu { 
	    flex-wrap: wrap !important; 
	    gap: 12px 24px !important; 
	  }
}

/*  MOBILE (max 768px)  Apple-level UX  */
@media (max-width: 768px) {
	
	  /*  GLOBAL RHYTHM  */
	body { -webkit-tap-highlight-color: transparent; }
	
	  .elementor-section,
	.e-con {
		    padding-left: 20px !important;
		    padding-right: 20px !important;
	}
	
	  /*  HEADER / NAV  */
	.site-header {
		    padding: 0 20px !important;
		    height: 60px !important;
	}
	
	  .custom-logo-link img,
	.site-logo img {
		    max-height: 36px !important;
		    width: auto !important;
	}
	
	  /*  HERO SECTION  */
	.elementor-widget-heading h1.elementor-heading-title {
		    font-size: 36px !important;
		    line-height: 1.15 !important;
		    letter-spacing: -0.3px !important;
		    text-align: center !important;
	}
	
	  .elementor-widget-text-editor p,
	.hero-subtitle {
		    font-size: 11px !important;
		    letter-spacing: 1.5px !important;
		    text-align: center !important;
		    line-height: 1.7 !important;
	}
	
	  /*  SEARCH WIDGET  Full mobile redesign  */
	#lmr-custom-search {
		    width: calc(100% - 32px) !important;
		    max-width: 100% !important;
		    margin: 0 16px !important;
	}
	
	  /* Tabs row */
	.lmr-tabs {
		    display: flex !important;
		    flex-direction: row !important;
		    gap: 0 !important;
		    width: 100% !important;
	}
	
	.lmr-tab {
		    flex: 1 !important;
		    text-align: center !important;
		    padding: 9px 6px !important;
		    font-size: 9px !important;
		    font-weight: 700 !important;
		    letter-spacing: 0.8px !important;
		    border-radius: 8px 8px 0 0 !important;
		    white-space: nowrap !important;
	}
	
	  /* Search bar  stacked layout */
	.lmr-bar {
		    display: flex !important;
		    flex-direction: column !important;
		    align-items: stretch !important;
		    padding: 12px !important;
		    gap: 10px !important;
		    border-radius: 0 0 12px 12px !important;
	}
	
	  /* Type chips row */
	.lmr-types {
		    display: flex !important;
		    flex-direction: row !important;
		    gap: 8px !important;
		    justify-content: flex-start !important;
	}
	
	.lmr-type {
		    flex: 1 !important;
		    text-align: center !important;
		    padding: 8px 12px !important;
		    font-size: 11px !important;
		    font-weight: 700 !important;
		    letter-spacing: 0.8px !important;
		    border-radius: 20px !important;
		    min-height: 36px !important;
	}
	
	  /* Divider  hide on mobile */
	.lmr-divider { display: none !important; }
	
	  /* Keyword input */
	.lmr-keyword {
		    width: 100% !important;
		    font-size: 14px !important;
		    padding: 12px 14px !important;
		    border-radius: 8px !important;
		    min-height: 46px !important;
		    background: rgba(255,255,255,0.12) !important;
		    color: #fff !important;
		    border: 1px solid rgba(255,255,255,0.25) !important;
	}
	
	.lmr-keyword::placeholder { color: rgba(255,255,255,0.55) !important; font-size: 13px !important; }
	
	  /* Search button  full width on mobile */
	.lmr-search-btn {
		    width: 100% !important;
		    justify-content: center !important;
		    padding: 13px !important;
		    font-size: 13px !important;
		    font-weight: 700 !important;
		    letter-spacing: 1px !important;
		    border-radius: 8px !important;
		    min-height: 46px !important;
	}
	
	  /*  SECTION SPACING  Remove dead whitespace  */
	  .elementor-section.elementor-section-boxed > .elementor-container,
	.e-con-inner {
		    padding-top: 48px !important;
		    padding-bottom: 48px !important;
	}
	
	  /* Empty space widgets  reduce aggressively on mobile */
	.elementor-widget-spacer .elementor-spacer-inner {
		    height: 30px !important;
	}
	
	  /*  FEATURED HOMES SECTION  */
	  .elementor-section:has(.idx-carousel),
	.section-featured-homes {
		    padding-top: 40px !important;
		    padding-bottom: 40px !important;
	}
	
	  /*  SECTION TITLES  */
	  .elementor-widget-heading h2.elementor-heading-title {
		    font-size: 28px !important;
		    line-height: 1.2 !important;
	}
	
	.elementor-widget-heading h3.elementor-heading-title {
		    font-size: 22px !important;
		    line-height: 1.25 !important;
	}
	
	  /* Section label (small caps above titles) */
	  .elementor-widget-heading h6,
	.section-label {
		    font-size: 9px !important;
		    letter-spacing: 2px !important;
		    margin-bottom: 8px !important;
	}
	
	  /*  NEIGHBORHOODS  Horizontal scroll carousel  */
	.neighborhood-grid-wrap {
		    display: flex !important;
		    flex-direction: row !important;
		    overflow-x: auto !important;
		    scroll-snap-type: x mandatory !important;
		    -webkit-overflow-scrolling: touch !important;
		    gap: 12px !important;
		    padding-bottom: 16px !important;
		    scrollbar-width: none !important;
	}
	
	.neighborhood-grid-wrap::-webkit-scrollbar { display: none !important; }
	
	.neighborhood-grid-wrap > * {
		    min-width: 260px !important;
		    scroll-snap-align: start !important;
		    flex-shrink: 0 !important;
	}
	
	  /*  SERVICES / ICON BOXES  */
	.elementor-widget-icon-box .elementor-icon-box-wrapper {
		    flex-direction: column !important;
		    text-align: center !important;
		    align-items: center !important;
	}
	
	.elementor-icon-box-icon {
		    margin-bottom: 12px !important;
		    font-size: 32px !important;
	}
	
	.elementor-icon-box-title {
		    font-size: 16px !important;
		    margin-bottom: 8px !important;
	}
	
	.elementor-icon-box-description {
		    font-size: 14px !important;
		    line-height: 1.65 !important;
	}
	
	  /*  CTA BUTTON  */
	.elementor-button {
		    width: 100% !important;
		    text-align: center !important;
		    padding: 15px 24px !important;
		    font-size: 13px !important;
		    letter-spacing: 1.2px !important;
		    min-height: 50px !important;
		    display: flex !important;
		    align-items: center !important;
		    justify-content: center !important;
	}
	
	  /*  TESTIMONIALS  */
	.elementor-testimonial-content {
		    font-size: 15px !important;
		    line-height: 1.7 !important;
		    font-style: italic !important;
	}
	
	.elementor-testimonial-name {
		    font-size: 13px !important;
		    font-weight: 700 !important;
	}
	
	.elementor-testimonial-job {
		    font-size: 11px !important;
		    letter-spacing: 1px !important;
	}
	
	  /*  NEWSLETTER SECTION  */
	.elementor-widget-form .elementor-form-fields-wrapper {
		    flex-direction: column !important;
	}
	
	.elementor-field-group {
		    width: 100% !important;
		    margin-bottom: 10px !important;
	}
	
	.elementor-field {
		    height: 48px !important;
		    font-size: 14px !important;
		    padding: 0 16px !important;
		    border-radius: 8px !important;
	}
	
	.elementor-form .elementor-button {
		    height: 48px !important;
		    border-radius: 8px !important;
	}
	
	  /*  FOOTER  */
	  .site-footer,
	.elementor-location-footer {
		    padding: 48px 24px 32px !important;
	}
	
	.elementor-widget-nav-menu .elementor-nav-menu {
		    flex-direction: column !important;
		    gap: 14px !important;
		    align-items: flex-start !important;
	}
	
	.elementor-nav-menu .menu-item a {
		    font-size: 13px !important;
		    letter-spacing: 0.8px !important;
	}
	
	  /* Footer columns stack */
	.elementor-column { width: 100% !important; }
	
	  /*  WHATSAPP BUTTON  reposition on mobile  */
	  .elfsight-app-whatsapp,
	  a[href*="wa.me"],
	.elementor-widget-image a[href*="whatsapp"] {
		    bottom: 80px !important;
		    right: 16px !important;
	}
	
	  /*  BLOG SECTION  */
	.elementor-posts-container .elementor-post {
		    width: 100% !important;
		    margin-bottom: 24px !important;
	}
	
	.elementor-post__title {
		    font-size: 17px !important;
		    line-height: 1.35 !important;
	}
	
	.elementor-post__excerpt p {
		    font-size: 13px !important;
		    line-height: 1.65 !important;
	}
	
	  /*  SMOOTH SCROLL & TOUCH  */
	html { scroll-behavior: smooth; }
	
	* { -webkit-tap-highlight-color: transparent; }
	
	  /*  BACK TO TOP BUTTON  */
	  .elementor-button.elementor-size-sm,
	.back-to-top {
		    width: auto !important;
		    min-width: 44px !important;
		    min-height: 44px !important;
	}
	
	  /*  PROPERTY CARDS  */
	  .idx-card-wrap,
	.lcc.property-card {
		    border-radius: 12px !important;
		    overflow: hidden !important;
	}
	
	  .idx-card-wrap .idx-price,
	.property-price {
		    font-size: 18px !important;
		    font-weight: 700 !important;
	}
	
	  /*  COMMUNITY / NEIGHBORHOOD HERO TEXT  */
	.community-hero-title {
		    font-size: 30px !important;
		    line-height: 1.2 !important;
	}
}

/* ========================================
   FIX 1: Remove white side margins - full width sections
   ======================================== */

/* Override Elementor --width variable on text content containers */
.elementor-element-8949256,
.elementor-element-3772b63 {
    --width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Remove centering alignment from parent containers */
.elementor-element-a34105a {
    align-items: stretch !important;
}

/* Remove side padding from main content sections */
.elementor-element-5381b8f,
.elementor-element-c3b9cd4,
.elementor-element-d70e4f7,
.elementor-element-b2903af {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Remove padding from child containers that add side margins */
.elementor-element-a34105a,
.elementor-element-2125c7c,
.elementor-element-4bff90b {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Fix e-con-inner max-width for full-width layout */
.elementor-element-5381b8f .e-con-inner,
.elementor-element-d70e4f7 .e-con-inner {
    max-width: 100% !important;
    padding-inline: 0 !important;
}

/* Extend the property carousel to full width */
.lcc.idx-carousel {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
}

/* ========================================
   FIX 2: Neighborhood Section - grid display
   ======================================== */

/* Make neighborhood section full-width */
.elementor-element-ef0ef60 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Proper 4-column grid for neighborhood cards */
.elementor-element-e72a0f0 {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    padding: 0 !important;
}

/* Each neighborhood card takes exactly 25% width */
.elementor-element-e72a0f0 > .e-con {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    min-width: 0 !important;
}

/* Make neighborhood grid items full height */
.elementor-element-e72a0f0 .grid-item-v1 {
    border-radius: 0 !important;
    height: 280px !important;
}

.elementor-element-e72a0f0 .grid-item-v1 .grid-item-link {
    height: 280px !important;
    min-height: 280px !important;
}

/* ========================================
   FIX 3: Truncate Reviews to 3 lines with "More" button
   ======================================== */

/* Limit testimonial text to 3 lines */
.testimonial-body {
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
}

/* When expanded */
.testimonial-body.expanded {
    display: block !important;
    -webkit-line-clamp: unset !important;
    overflow: visible !important;
}

/* More button styling */
.review-more-btn {
    display: inline-block !important;
    margin-top: 10px !important;
    background: none !important;
    border: none !important;
    color: #c9a96e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    cursor: pointer !important;
    padding: 0 !important;
    text-transform: uppercase !important;
    font-family: inherit !important;
}

.review-more-btn:hover {
    color: #a07840 !important;
    text-decoration: underline !important;
}


/* ===== HEADER CUSTOMIZATIONS - April 2026 ===== */

/* Hide language text names - show only flags */
.lang-item a span {
    display: none !important;
}

/* Hide phone number and its icon */
.btn-phone-number,
.login-register-nav,
.header-desktop .btn-phone,
.header-desktop a[href*="tel:"] {
    display: none !important;
}

/* Hide account/login icon and dropdown */
.navbar-logged-in-wrap,
.logged-in-nav-container,
.navi-login-register {
    display: none !important;
}

/* Make sure header doesn't overflow/wrap since we removed elements */
.header-desktop .navbar {
    flex-wrap: nowrap !important;
}

/* Homepage: transparent header integrated into hero */
body.home #header-section:not(.sticky-nav-area):not(.houzez-in-view),
body.home .header-desktop.header-v4:not(.sticky-nav-area):not(.houzez-in-view) {
  background: transparent !important;
  box-shadow: none !important;
}

/* Ensure header sits over the hero on homepage */
body.home .header-main-wrap {
    position: absolute !important;
    width: 100% !important;
    z-index: 999 !important;
    top: 0 !important;
}


/* ============================================================
   LUXE MIAMI REALTY - LUXURY TRANSPARENT HEADER
   Inspired by Globalty Investment - April 2026
   ============================================================ */

/* === CORE: Override theme-generated dark background on ALL pages === */
.header-v4:not(.sticky-nav-area):not(.houzez-in-view),
.header-desktop.header-v4:not(.sticky-nav-area):not(.houzez-in-view) {
  background: transparent !important;
  box-shadow: none !important;
  border-bottom: none !important;
  transition: background 0.4s ease, box-shadow 0.4s ease !important;
}
/* Sticky header: white frosted glass with dark text - uses #header-section for max specificity */
#header-section.sticky-nav-area,
#header-section.houzez-in-view,
body.home #header-section.sticky-nav-area,
body.home #header-section.houzez-in-view {
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  backdrop-filter: blur(20px) !important;
  border-bottom: none !important;
  transition: background 0.4s ease, box-shadow 0.4s ease !important;
}

/* === Make the header wrapper transparent and positioned correctly === */
.header-main-wrap {
  background: transparent !important;
}

/* Inner pages: header is position:relative by default — make it overlay content */
body:not(.home) .header-main-wrap {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
}

/* Ensure inner page content doesn't hide under header */
body:not(.home) .wrapper-content,
body:not(.home) #main-content,
body:not(.home) .page-wrap,
body:not(.home) .hz-page-container {
  padding-top: 0 !important;
}

/* === NAV LINKS: White text on transparent header === */
.header-v4 .nav-link,
.header-v4 .nav-link > a,
.header-v4 .main-nav > ul > li > a,
.header-v4 .houzez-nav-menu-main > li > a {
  color: #ffffff !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

/* === HOVER STATE: subtle white highlight === */
.header-v4 .nav-link:hover,
.header-v4 .nav-link > a:hover,
.header-v4 .main-nav > ul > li > a:hover {
  color: rgba(255,255,255,0.75) !important;
  background-color: transparent !important;
}

/* === DROPDOWN MENUS: White background with dark text === */
.header-v4 .main-nav .sub-menu,
.header-v4 .main-nav .dropdown-menu {
  background-color: #ffffff !important;
  box-shadow: 0 8px 30px rgba(0,0,0,0.12) !important;
  border-top: none !important;
  border-radius: 2px !important;
}

.header-v4 .main-nav .sub-menu a,
.header-v4 .main-nav .dropdown-menu a {
  color: #1a1a1a !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-size: 11px !important;
}

.header-v4 .main-nav .sub-menu a:hover,
.header-v4 .main-nav .dropdown-menu a:hover {
  color: #000000 !important;
  background-color: rgba(0,0,0,0.05) !important;
}

/* === STICKY HEADER: White background + dark text on scroll === */
.header-v4.header-sticky-active,
.header-v4.sticky-on,
.header-v4.scrolled,
.sticky-header .header-v4,
.header-main-wrap.sticky-active .header-v4 {
  background-color: rgba(255,255,255,0.97) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.08) !important;
}

.header-v4.header-sticky-active .nav-link,
.header-v4.header-sticky-active .nav-link > a,
.header-v4.sticky-on .nav-link,
.header-v4.sticky-on .nav-link > a,
.header-v4.scrolled .nav-link,
.header-v4.scrolled .nav-link > a {
  color: #1a1a1a !important;
}

/* === SEARCH RESULTS / INNER PAGES: Dark nav on non-hero pages === */
body.houzez-halfmap-page .header-v4 .nav-link,
body.houzez-halfmap-page .header-v4 .nav-link > a,
body.houzez-halfmap-page .header-v4 .main-nav > ul > li > a {
  color: #1a1a1a !important;
}

/* === LOGO SIZING & POSITIONING === */
.header-v4 .logo-wrap img,
.header-v4 .site-logo img {
  max-height: 40px !important;
  width: auto !important;
  transition: opacity 0.3s ease !important;
}

/* === LANGUAGE / ICONS IN HEADER === */
.header-v4 .header-icons-wrap a,
.header-v4 .lang-switcher a,
.header-v4 .wpml-ls-link {
  color: #ffffff !important;
}

body.houzez-halfmap-page .header-v4 .header-icons-wrap a,
body.houzez-halfmap-page .header-v4 .lang-switcher a,
body.houzez-halfmap-page .header-v4 .wpml-ls-link {
  color: #1a1a1a !important;
}

/* === SEARCH ICON IN HEADER === */
.header-v4 .header-search-btn,
.header-v4 .search-icon {
  color: #ffffff !important;
}

body.houzez-halfmap-page .header-v4 .header-search-btn,
body.houzez-halfmap-page .header-v4 .search-icon {
  color: #1a1a1a !important;
}

/* === MOBILE MENU BUTTON === */
.header-v4 .menu-toggle,
.header-v4 .navbar-toggle {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.5) !important;
}

body.houzez-halfmap-page .header-v4 .menu-toggle,
body.houzez-halfmap-page .header-v4 .navbar-toggle {
  color: #1a1a1a !important;
  border-color: rgba(0,0,0,0.3) !important;
}

/* === SCROLL-TRIGGERED BEHAVIOR (JS-assisted) === */
.header-v4.lmr-scrolled {
  background-color: rgba(255,255,255,0.97) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.08) !important;
}

.header-v4.lmr-scrolled .nav-link,
.header-v4.lmr-scrolled .nav-link > a,
.header-v4.lmr-scrolled .main-nav > ul > li > a,
.header-v4.lmr-scrolled .houzez-nav-menu-main > li > a,
.header-v4.lmr-scrolled .header-icons-wrap a,
.header-v4.lmr-scrolled .lang-switcher a,
.header-v4.lmr-scrolled .header-search-btn {
  color: #1a1a1a !important;
}

/* === INNER PAGE: White header when no hero === */
body.houzez-halfmap-page .header-v4.lmr-scrolled,
body.houzez-halfmap-page .header-v4 {
  background-color: rgba(255,255,255,0.97) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.08) !important;
}

/* END LUXURY TRANSPARENT HEADER */

/* ===== STICKY HEADER FIX - Correct Houzez Classes ===== */
/* When Houzez makes the header sticky, it adds .sticky-nav-area and .houzez-in-view */
.header-v4.sticky-nav-area,
.header-v4.houzez-in-view {
  background-color: rgba(255,255,255,0.97) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.08) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

/* Dark text for nav links when sticky */
.header-v4.sticky-nav-area .nav-link,
.header-v4.sticky-nav-area .nav-link > a,
.header-v4.sticky-nav-area .main-nav > ul > li > a,
.header-v4.sticky-nav-area .houzez-nav-menu-main > li > a,
.header-v4.houzez-in-view .nav-link,
.header-v4.houzez-in-view .nav-link > a,
.header-v4.houzez-in-view .main-nav > ul > li > a,
.header-v4.houzez-in-view .houzez-nav-menu-main > li > a {
  color: #1a1a1a !important;
}

/* Hover state for sticky nav */
.header-v4.sticky-nav-area .nav-link:hover,
.header-v4.sticky-nav-area .nav-link > a:hover,
.header-v4.houzez-in-view .nav-link:hover,
.header-v4.houzez-in-view .nav-link > a:hover {
  color: #000 !important;
  background-color: transparent !important;
}

/* Icons and language switcher dark when sticky */
.header-v4.sticky-nav-area .header-icons-wrap a,
.header-v4.sticky-nav-area .lang-switcher a,
.header-v4.sticky-nav-area .wpml-ls-link,
.header-v4.sticky-nav-area .header-search-btn,
.header-v4.sticky-nav-area .search-icon,
.header-v4.houzez-in-view .header-icons-wrap a,
.header-v4.houzez-in-view .lang-switcher a,
.header-v4.houzez-in-view .wpml-ls-link,
.header-v4.houzez-in-view .header-search-btn,
.header-v4.houzez-in-view .search-icon {
  color: #1a1a1a !important;
}

/* Dark logo when sticky (invert the white logo) */
.header-v4.sticky-nav-area .logo-wrap img,
.header-v4.sticky-nav-area .site-logo img,
.header-v4.houzez-in-view .logo-wrap img,
.header-v4.houzez-in-view .site-logo img {
  filter: brightness(0) !important;
}

/* ===== END STICKY HEADER FIX ===== */


/* ===== FIX: Inner page nav link colors (non-homepage) ===== */
/* Default: all pages get dark nav text for light backgrounds */
body:not(.home) .header-v4 .nav-link,
body:not(.home) .header-v4 .nav-area-v4 .nav > li > a {
  color: #1a1a1a !important;
}
body:not(.home) .header-v4 .nav-link:hover,
body:not(.home) .header-v4 .nav-area-v4 .nav > li > a:hover {
  color: #000000 !important;
}
/* Dark logo for inner pages */
body:not(.home) .header-v4 .houzez-logo-normal img {
  filter: none !important;
}
/* White logo only for homepage */
body.home .header-v4 .houzez-logo-normal img {
  filter: brightness(0) invert(1) !important;
}
/* On homepage, when header gets sticky (scrolled), switch to dark */
body.home .header-v4.sticky-nav-area .nav-link,
body.home .header-v4.houzez-in-view .nav-link,
body.home .header-v4.sticky-nav-area .nav-area-v4 .nav > li > a,
body.home .header-v4.houzez-in-view .nav-area-v4 .nav > li > a {
  color: #1a1a1a !important;
}
body.home .header-v4.sticky-nav-area .houzez-logo-normal img,
body.home .header-v4.houzez-in-view .houzez-logo-normal img {
  filter: none !important;
}
/* Inner page header: subtle white bg with slight transparency */
body:not(.home) .header-v4 {
  background-color: rgba(255, 255, 255, 0.97) !important;
  box-shadow: 0 1px 10px rgba(0,0,0,0.04) !important;
}
/* Homepage header: fully transparent (no bg) */
body.home .header-v4:not(.sticky-nav-area):not(.houzez-in-view) {
  background-color: transparent !important;
  box-shadow: none !important;
}
/* Mobile hamburger: dark on inner pages, white on homepage */
body:not(.home) .header-v4 .menu_click .menu-icon span,
body:not(.home) .header-v4 .menu_click .menu-icon span:before,
body:not(.home) .header-v4 .menu_click .menu-icon span:after {
  background-color: #1a1a1a !important;
}
/* === END FIX === */

/* ===== STICKY HEADER FIX - White bg when scrolled ===== */
.header-v4.sticky-nav-area,
.header-v4.houzez-in-view,
body.home .header-v4.sticky-nav-area,
body.home .header-v4.houzez-in-view,
body:not(.home) .header-v4.sticky-nav-area,
body:not(.home) .header-v4.houzez-in-view {
  background-color: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  backdrop-filter: blur(20px) !important;
}
/* Ensure all nav links are DARK when sticky */
.header-v4.sticky-nav-area .nav-link,
.header-v4.houzez-in-view .nav-link,
.header-v4.sticky-nav-area .nav-area-v4 .nav > li > a,
.header-v4.houzez-in-view .nav-area-v4 .nav > li > a,
body.home .header-v4.sticky-nav-area .nav-link,
body.home .header-v4.houzez-in-view .nav-link {
  color: #1a1a1a !important;
}
/* Ensure logo is DARK when sticky */
.header-v4.sticky-nav-area .houzez-logo-normal img,
.header-v4.houzez-in-view .houzez-logo-normal img,
body.home .header-v4.sticky-nav-area .houzez-logo-normal img,
body.home .header-v4.houzez-in-view .houzez-logo-normal img {
  filter: none !important;
}
/* Dropdown arrow/caret also dark when sticky */
.header-v4.sticky-nav-area .dropdown-toggle::after,
.header-v4.houzez-in-view .dropdown-toggle::after {
  border-top-color: #1a1a1a !important;
}
/* === END STICKY FIX === */

/* ===== FINAL STICKY FIX - using background shorthand ===== */
.header-v4.sticky-nav-area,
.header-v4.houzez-in-view,
.header-desktop.header-v4.sticky-nav-area,
.header-desktop.header-v4.houzez-in-view,
body.home .header-v4.sticky-nav-area,
body.home .header-v4.houzez-in-view,
body.home .header-desktop.header-v4.sticky-nav-area,
body.home .header-desktop.header-v4.houzez-in-view {
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  backdrop-filter: blur(20px) !important;
}
/* === END FINAL STICKY FIX === */

/* ===== CENTERED NAV, HERO FULL VIEWPORT, SPACING FIX - April 2026 ===== */

/* 1. CENTER THE NAVIGATION MENU ON THE PAGE */
/* Make the navbar a positioned container */
#header-section .navbar {
  position: relative !important;
}

/* Logo: absolutely positioned on the left so it doesn't affect nav centering */
#header-section .navbar .logo {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 10 !important;
}

/* Main nav: take full width, center its flex content */
#header-section .main-nav {
  width: 100% !important;
  flex-grow: 1 !important;
}

/* Nav list: use flexbox to center menu items, with flags pushed right */
#header-section .navbar-nav.justify-content-end {
  justify-content: center !important;
  width: 100% !important;
  display: flex !important;
  flex-wrap: nowrap !important;
}

/* Language flags: absolutely positioned on the right side of the header */
#header-section .navbar-nav .lang-item {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 10 !important;
}
#header-section .navbar-nav .lang-item:nth-last-child(3) {
  right: 90px !important;
}
#header-section .navbar-nav .lang-item:nth-last-child(2) {
  right: 45px !important;
}
#header-section .navbar-nav .lang-item:nth-last-child(1) {
  right: 0px !important;
}

/* Remove the auto margin from lang items since they're now absolutely positioned */
.lang-item.lang-item-first {
  margin-left: 0 !important;
}

/* 2. HERO SECTION: FULL VIEWPORT HEIGHT (calc(100vh + 90px)) */
/* Override Elementor CSS variable for hero height */
.elementor-19573 .elementor-element.elementor-element-5d62cdf {
  --min-height: calc(100vh + 90px) !important;
}
.elementor-19573 .elementor-element.elementor-element-d8de521 {
  --min-height: calc(100vh + 90px) !important;
}

/* Main hero parent container */
.elementor-element-d8de521 {
  min-height: calc(100vh + 90px) !important;
  height: calc(100vh + 90px) !important;
}
/* Inner container with slideshow background */
.elementor-element-5d62cdf {
  min-height: calc(100vh + 90px) !important;
  height: calc(100vh + 90px) !important;
}
/* Slideshow images fill full height */
.elementor-element-5d62cdf .elementor-background-slideshow,
.elementor-element-5d62cdf .elementor-background-slideshow .swiper-wrapper,
.elementor-element-5d62cdf .elementor-background-slideshow .swiper-slide,
.elementor-element-5d62cdf .elementor-background-slideshow__slide__image {
  height: 100% !important;
  min-height: calc(100vh + 90px) !important;
}
/* Ensure background images cover properly */
.elementor-element-5d62cdf .elementor-background-slideshow__slide__image {
  background-size: cover !important;
  background-position: center center !important;
}

/* 3. INCREASE DISTANCE FROM HEADER TO HERO TEXT */
.elementor-element-9dd1ad7 {
  padding-top: 80px !important;
}
.elementor-element-5d62cdf {
  padding-top: 70px !important;
  box-sizing: border-box !important;
}

/* === END CENTERED NAV / HERO FULL VIEWPORT === */

/* ============================================ */
/* WHITE HEADER ON ALL PAGES EXCEPT HOMEPAGE    */
/* ============================================ */
body:not(.home) #header-section {
  background-color: #ffffff !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}
body:not(.home) .header-v4 .main-nav > ul > li > a {
  color: #333333 !important;
}
body:not(.home) .header-v4 .main-nav > ul > li > a:hover {
  color: #c8a355 !important;
}
body:not(.home) .lang-item a span {
  color: #333333 !important;
}

/* ============================================================
   MENU POSITION FIX - Push menu text down ~0.5cm
   and fix header overlap on inner pages
   ============================================================ */

/* Increase header height to accommodate the extra top padding */
.header-main-wrap {
    padding-top: 19px !important;
    height: auto !important;
}

.header-desktop.header-v4 {
    height: auto !important;
}

.header-desktop.header-v4 .container,
.header-desktop.header-v4 .header-inner-wrap,
.header-desktop.header-v4 .navbar {
    height: auto !important;
}

/* Keep the nav link line-height for vertical centering within their row */
.header-v4 .main-nav > ul > li > a {
    line-height: 70px !important;
}

/* On non-home pages, push page content below the header */
body:not(.home) .main-wrap.main-wrap-js {
    padding-top: 89px !important;
}


/* ==========================================
   NEIGHBORHOOD CAROUSEL FIX - April 2026
   Make the neighborhood grid a horizontal scrolling carousel
   ========================================== */

/* Override the grid container to be a horizontal scrolling carousel */
.elementor-element-e72a0f0 {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 15px !important;
    padding: 0 20px 20px 20px !important;
    scroll-snap-type: x mandatory !important;
}

/* Hide the scrollbar for aesthetics while keeping scroll functionality */
.elementor-element-e72a0f0::-webkit-scrollbar {
    height: 6px;
}
.elementor-element-e72a0f0::-webkit-scrollbar-track {
    background: rgba(0,0,0,0.05);
    border-radius: 10px;
}
.elementor-element-e72a0f0::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,0.2);
    border-radius: 10px;
}
.elementor-element-e72a0f0::-webkit-scrollbar-thumb:hover {
    background: rgba(0,0,0,0.35);
}

/* Set each card to proper carousel width */
.elementor-element-e72a0f0 > .e-con {
    flex: 0 0 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
    scroll-snap-align: start !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

/* Hide broken grid builder widgets that have zero width */
.elementor-element-e72a0f0 > .elementor-widget-Houzez_elementor_grid_builder {
    display: none !important;
}

/* Fix Shenandoah container - only show first grid builder, hide others */
.elementor-element-shenandoah_container_1 > .elementor-invisible {
    display: none !important;
}
.elementor-element-shenandoah_container_1 {
    flex: 0 0 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
}

/* Ensure grid items inside cards fill properly */
.elementor-element-e72a0f0 > .e-con .grid-item {
    height: 100% !important;
    min-height: 280px !important;
    border-radius: 12px !important;
}

/* Make the section container not clip the carousel */
.elementor-element-ef0ef60,
.elementor-element-3772b63 {
    overflow: visible !important;
}


/* ===== Neighborhood Carousel Spacing Fix ===== */

/* Hide empty Shenandoah card */
.elementor-element-shenandoah_container_1 {
    display: none !important;
}

/* Ensure consistent card spacing in carousel */
.elementor-element-e72a0f0 {
    padding-left: 20px !important;
    padding-right: 20px !important;
    scroll-padding-left: 20px;
    scroll-padding-right: 20px;
    gap: 20px !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

/* Each card same size and snap behavior */
.elementor-element-e72a0f0 > .e-con {
    flex: 0 0 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
    scroll-snap-align: start;
}

/* Hide scrollbar for cleaner look */
.elementor-element-e72a0f0::-webkit-scrollbar {
    display: none;
}

.elementor-element-e72a0f0 {
    -ms-overflow-style: none;
    scrollbar-width: none;
}


/* === FOOTER REDESIGN === */
/* Make footer Area 1 column full-width */
.footer-top-wrap .row > .col-lg-3:first-child {
	    flex: 0 0 100% !important;
	    max-width: 100% !important;
	    width: 100% !important;
}

/* Hide empty second column */
.footer-top-wrap .row > .col-lg-6 {
	    display: none !important;
}

/* Hide duplicate copyright symbol */
.footer-bottom-wrap .footer-copyright {
	    font-size: 0 !important;
}
.footer-bottom-wrap .footer-copyright::after {
	    content: "\00A9  2026 Luxe Miami Realty - All Rights Reserved";
	    font-size: 14px !important;
	    color: #999;
}

/* Hide unused social icons in bottom bar (Google+, YouTube, Pinterest, Yelp) */
.footer-bottom-wrap .footer-social-icons a[aria-label="Google Plus"],
.footer-bottom-wrap .footer-social-icons a[aria-label="YouTube"],
.footer-bottom-wrap .footer-social-icons a[aria-label="Pinterest"],
.footer-bottom-wrap .footer-social-icons a[aria-label="Yelp"] {
	    display: none !important;
}

/* Style bottom bar social icons */
.footer-bottom-wrap .footer-social-icons a {
	    color: #999 !important;
	    transition: color 0.3s ease;
}
.footer-bottom-wrap .footer-social-icons a:hover {
	    color: #fff !important;
}

/* Fix: correct selectors for footer social and copyright */
.footer-bottom-wrap .footer-social a[aria-label="Google Plus"],
.footer-bottom-wrap .footer-social a[aria-label="YouTube"],
.footer-bottom-wrap .footer-social a[aria-label="Pinterest"],
.footer-bottom-wrap .footer-social a[aria-label="Yelp"] {
	    display: none !important;
}

.footer-bottom-wrap .footer-social a {
	    color: #999 !important;
	    transition: color 0.3s ease;
}
.footer-bottom-wrap .footer-social a:hover {
	    color: #fff !important;
}

/* Fix copyright - hide original text, show corrected */
.footer-copyright {
	    visibility: hidden;
	    position: relative;
	    height: auto;
}
.footer-copyright::after {
	    visibility: visible;
	    position: absolute;
	    left: 0;
	    top: 0;
	    content: "\00A9  2026 Luxe Miami Realty - All Rights Reserved";
	    font-size: 14px;
	    color: #999;
}

/* Hide bottom bar social icons entirely - we have them in footer body */
.footer-bottom-wrap .footer-social {
	    display: none !important;
}

/* Fix copyright display - override previous */
.footer-copyright {
	    visibility: hidden !important;
	    position: relative !important;
	    white-space: nowrap !important;
	    min-width: 400px !important;
}
.footer-copyright::after {
	    visibility: visible !important;
	    position: absolute !important;
	    left: 0 !important;
	    top: 50% !important;
	    transform: translateY(-50%) !important;
	    content: "\00A9  2026 Luxe Miami Realty - All Rights Reserved" !important;
	    font-size: 14px !important;
	    color: #999 !important;
	    white-space: nowrap !important;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}

/* ======================================
   FIX: Neighborhood Cards Same Size
   ====================================== */
/* Force all grid items (v1 and v2) to the same height */
.elementor-element-e72a0f0 .grid-item,
.elementor-element-e72a0f0 .grid-item.grid-item-v1,
.elementor-element-e72a0f0 .grid-item.grid-item-v2,
.elementor-element-e72a0f0 .grid-item.grid-item-v3,
.elementor-element-e72a0f0 .grid-item.grid-item-v4 {
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;
    background-size: cover !important;
    background-position: center !important;
    overflow: hidden !important;
}

/* Force all grid item links to same height */
.elementor-element-e72a0f0 .grid-item .grid-item-link,
.elementor-element-e72a0f0 .grid-item-v1 .grid-item-link,
.elementor-element-e72a0f0 .grid-item-v2 .grid-item-link {
    height: 320px !important;
    min-height: 320px !important;
}

/* STRONGER FIX: All neighborhood cards same height */
.elementor-element-e72a0f0 .grid-item[data-ratio="square"],
.elementor-element-e72a0f0 .grid-item-v2 {
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;
}
.elementor-element-e72a0f0 > .e-con > .elementor-widget > .elementor-widget-container .grid-item {
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;
}