.elementor-308 .elementor-element.elementor-element-e9c860e{--spacer-size:50px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-308 .elementor-element.elementor-element-f287f61{--spacer-size:50px;}.elementor-widget-image-box .elementor-image-box-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-widget-image-box:has(:hover) .elementor-image-box-title,
					 .elementor-widget-image-box:has(:focus) .elementor-image-box-title{color:var( --e-global-color-primary );}.elementor-widget-image-box .elementor-image-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-308 .elementor-element.elementor-element-357aa81 .elementor-image-box-wrapper{text-align:center;}.elementor-308 .elementor-element.elementor-element-357aa81 .elementor-image-box-title{margin-bottom:0px;font-family:"Playfair Display", Sans-serif;font-size:46px;font-weight:600;color:#000000;}.elementor-308 .elementor-element.elementor-element-357aa81 .elementor-image-box-description{font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-308 .elementor-element.elementor-element-347b2b0 .elementor-image-box-wrapper{text-align:center;}.elementor-308 .elementor-element.elementor-element-347b2b0 .elementor-image-box-title{font-family:"Playfair Display", Sans-serif;font-size:24px;font-weight:600;color:#000000;}.elementor-308 .elementor-element.elementor-element-347b2b0 .elementor-image-box-description{font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-308 .elementor-element.elementor-element-3b02fc1{--spacer-size:50px;}.elementor-308 .elementor-element.elementor-element-172c75f > .elementor-background-overlay{background-color:var( --e-global-color-secondary );opacity:0.5;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-308 .elementor-element.elementor-element-861d16c{font-family:"Playfair Display", Sans-serif;font-weight:400;color:#4D4E4E;}/* Start custom CSS for html, class: .elementor-element-9ad6a3c */@media (max-width: 768px) {

  /* Stack layout vertically */
  #map-app {
    flex-direction: column;
    height: auto;
  }

  /* Sidebar becomes top section */
  #sidebar {
    width: 100%;
    height: auto;
    max-height: 320px;
    border-right: none;
    border-bottom: 1px solid #eee;
    padding: 18px;
  }

  /* Map becomes full width + controlled height */
  #map {
    width: 100%;
    height: 60vh; /* key fix */
  }

  /* Make filter buttons wrap nicely */
  .filters {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }

  .filters button {
    flex: 1 1 auto;
    font-size: 13px;
    padding: 6px 10px;
  }

  /* Make cards more compact */
  .card img {
    height: 110px;
  }

  .card {
    margin-bottom: 10px;
  }
}/* End custom CSS */