.elementor-863 .elementor-element.elementor-element-520f49d{--display:flex;--min-height:468px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:25px 25px;--row-gap:25px;--column-gap:25px;border-style:none;--border-style:none;--margin-top:-177px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:100px;--padding-left:75px;--padding-right:75px;}.elementor-863 .elementor-element.elementor-element-520f49d:not(.elementor-motion-effects-element-type-background), .elementor-863 .elementor-element.elementor-element-520f49d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-863 .elementor-element.elementor-element-83d5336{width:var( --container-widget-width, 907px );max-width:907px;--container-widget-width:907px;--container-widget-flex-grow:0;text-align:center;}.elementor-863 .elementor-element.elementor-element-83d5336 .elementor-heading-title{font-family:"sweet-sans-pro", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;line-height:15px;letter-spacing:0.5px;color:var( --e-global-color-1fcdc1e );}.elementor-863 .elementor-element.elementor-element-8e69ccd{width:var( --container-widget-width, 907px );max-width:907px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:907px;--container-widget-flex-grow:0;text-align:center;}.elementor-863 .elementor-element.elementor-element-8e69ccd .elementor-heading-title{font-family:"sweet-sans-pro", Sans-serif;font-size:72px;font-weight:500;text-transform:uppercase;line-height:65px;color:var( --e-global-color-1fcdc1e );}.elementor-863 .elementor-element.elementor-element-9a72dc2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:25px 25px;--row-gap:25px;--column-gap:25px;border-style:none;--border-style:none;--margin-top:-51px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:100px;--padding-left:50px;--padding-right:50px;}.elementor-863 .elementor-element.elementor-element-9a72dc2:not(.elementor-motion-effects-element-type-background), .elementor-863 .elementor-element.elementor-element-9a72dc2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#242424;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-863 .elementor-element.elementor-element-1ec3e45 .elementor-button{background-color:var( --e-global-color-accent );font-family:"sweet-sans-pro", Sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px;fill:var( --e-global-color-1fcdc1e );color:var( --e-global-color-1fcdc1e );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;padding:20px 45px 20px 45px;}.elementor-863 .elementor-element.elementor-element-1ec3e45 .elementor-button:hover, .elementor-863 .elementor-element.elementor-element-1ec3e45 .elementor-button:focus{background-color:var( --e-global-color-ec5d744 );color:var( --e-global-color-1fcdc1e );border-color:var( --e-global-color-1fcdc1e );}.elementor-863 .elementor-element.elementor-element-1ec3e45{width:var( --container-widget-width, 344px );max-width:344px;margin:25px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:344px;--container-widget-flex-grow:0;}.elementor-863 .elementor-element.elementor-element-1ec3e45.elementor-element{--align-self:center;}.elementor-863 .elementor-element.elementor-element-1ec3e45 .elementor-button:hover svg, .elementor-863 .elementor-element.elementor-element-1ec3e45 .elementor-button:focus svg{fill:var( --e-global-color-1fcdc1e );}@media(max-width:1024px){.elementor-863 .elementor-element.elementor-element-520f49d{--margin-top:-107px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-863 .elementor-element.elementor-element-520f49d{--content-width:100%;}}@media(max-width:767px){.elementor-863 .elementor-element.elementor-element-520f49d{--min-height:0px;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:75px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;--z-index:0;}.elementor-863 .elementor-element.elementor-element-83d5336{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -14px) 0px;}.elementor-863 .elementor-element.elementor-element-83d5336 .elementor-heading-title{font-size:14px;line-height:0.9em;}.elementor-863 .elementor-element.elementor-element-8e69ccd .elementor-heading-title{font-size:27px;line-height:0.9em;}.elementor-863 .elementor-element.elementor-element-9a72dc2{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-863 .elementor-element.elementor-element-1ec3e45{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS *//* =========================================================
   IMPress Listings Carousel – OUTSIDE NAV (FULL REPLACE)
   ========================================================= */

/* Typography baseline */
.impress-carousel,
.impress-carousel * {
  font-family: "sweet-sans-pro", sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
}

/* Allow nav to sit outside the slider */
.impress-carousel,
.impress-carousel .owl-stage-outer{
  overflow: visible !important;
}

/* If your theme/Elementor wrapper clips it, scope this to your section if possible */
.elementor-section,
.elementor-column,
.elementor-widget-wrap{
  overflow: visible;
}

/* Carousel container */
.impress-carousel{
  position: relative;
  width: 100%;
}

/* Listing card */
.impress-carousel .impress-carousel-property{
  background: rgba(255,255,255,0.95);
  border: 0 !important;
  box-shadow: none;
  overflow: hidden;
}

/* Image */
.impress-carousel .impress-carousel-photo{
  position: relative;
  display: block;
}

.impress-carousel .impress-carousel-photo img{
  display: block;
  width: 100%;
  height: auto;
}

/* Price badge */
.impress-carousel .impress-price{
  position: absolute;
  left: 14px;
  bottom: 14px;
  background: #b8ad96;
  color: #fff;
  padding: 8px 12px;
  line-height: 1;
}

/* Address + meta */
.impress-carousel .impress-address{
  margin: 0;
  padding: 14px 16px 10px;
  color: rgba(0,0,0,0.75);
}

.impress-carousel .impress-beds-baths-sqft{
  margin: 0;
  padding: 10px 16px 16px;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  color: rgba(0,0,0,0.65);
}

/* Links */
.impress-carousel a{
  text-decoration: none;
  color: inherit;
}
.impress-carousel a:hover{
  opacity: 0.9;
}

/* =========================================================
   Owl Navigation – OUTSIDE + CSS ARROWS (no FA needed)
   ========================================================= */

.impress-carousel .owl-nav{
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 20;
}

.impress-carousel .owl-nav button{
  pointer-events: auto;
  position: absolute;

  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;

  background: #b8ad96 !important;
  border: 0 !important;
  border-radius: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer;
  line-height: 1 !important;
}

/* Outside offsets */
.impress-carousel .owl-prev{ left: -28px !important; }
.impress-carousel .owl-next{ right: -28px !important; }

/* Hide text + any FA icons */
.impress-carousel .owl-nav span{ display: none !important; }
.impress-carousel .owl-nav i{ display: none !important; }

/* CSS arrow glyphs */
.impress-carousel .owl-prev::before,
.impress-carousel .owl-next::before{
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  display: block;
}

.impress-carousel .owl-prev::before{ transform: rotate(-135deg); }
.impress-carousel .owl-next::before{ transform: rotate(45deg); }

/* =========================================================
   Owl Dots
   ========================================================= */

.impress-carousel .owl-dots{
  margin-top: 18px;
  text-align: center;
}

.impress-carousel .owl-dot span{
  width: 8px;
  height: 8px;
  background: rgba(255,255,255,0.6);
  border-radius: 0;
  display: block;
}

.impress-carousel .owl-dot.active span{
  background: #b8ad96;
}

/* =========================================================
   Responsive tweaks
   ========================================================= */

@media (max-width: 767px){
  .impress-carousel .owl-prev{ left: -14px !important; }
  .impress-carousel .owl-next{ right: -14px !important; }
}







.idx-omnibar-extra-button, .idx-omnibar-form.idx-omnibar-extra-form button { margin-top: 0px !important; }

/* Hide city/postal field */
.idx-omnibar-form .awesomplete { display: none; }

/* Tune these to match the bottom form */
.idx-omnibar-form{
  --field-h: 44px;   /* reduce overall height */
  --gap: 8px;       /* gutter between fields */

  display: flex;
  flex-wrap: nowrap; /* force one row on desktop */
  gap: var(--gap);
  align-items: stretch;
  width: 100%;
  margin: 0;
  padding: 0;
}

/* Make all 4 items truly equal width and fill the row */
.idx-omnibar-form .idx-omnibar-extra,
.idx-omnibar-form .idx-omnibar-extra-button{
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
}

/* Hide labels like Elementor */
.idx-omnibar-form .idx-omnibar-extra label{
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

/* Inputs */
.idx-omnibar-form .idx-omnibar-extra{
  position: relative;
}

.idx-omnibar-form .idx-omnibar-extra input{
  width: 100%;
  height: var(--field-h);
  box-sizing: border-box;

  padding: 0 18px;
  border: 1px solid rgba(255,255,255,0.85);
  border-radius: 0;
  background: rgba(255,255,255,0.95);
  box-shadow: none;

  font-family: "sweet-sans-pro", sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
}

/* Placeholder */
.idx-omnibar-form .idx-omnibar-extra input::placeholder{
  font-family: "sweet-sans-pro", sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
  opacity: 1;
}

/* Button: force it to be the same height and perfectly centered */
.idx-omnibar-form .idx-omnibar-extra-button{
  width: 100%;
  height: var(--field-h);
  box-sizing: border-box;

  margin: 0;
  padding: 0 18px;
  border: 0;
  border-radius: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  line-height: 1;          /* kills baseline weirdness */
  vertical-align: middle;  /* just in case theme applies inline styles */

  background: #b8ad96;
  color: #fff;

  font-family: "sweet-sans-pro", sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
}

/* Hide icon so it matches Elementor */
.idx-omnibar-form .idx-omnibar-extra-button i{ display: none; }

/* Some themes add span padding or line-height, neutralize it */
.idx-omnibar-form .idx-omnibar-extra-button span{
  margin: 0;
  padding: 0;
  line-height: 1;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  color: inherit;
}

/* Mobile stack */
@media (max-width: 767px){
  .idx-omnibar-form{
    flex-wrap: wrap;
  }
  .idx-omnibar-form .idx-omnibar-extra,
  .idx-omnibar-form .idx-omnibar-extra-button{
    flex: 1 1 100%;
  }
}/* End custom CSS */