.bf-dealer-finder { width: 100%; color: #222; }
.bf-dealer-finder h2 { font-family: "Bakbak One", sans-serif; font-size: clamp(24px, 3vw, 34px); }
.bf-dealer-finder label { display: block; margin-bottom: 8px; font-weight: 600; }
#bf-dealer-search { display: flex; flex-wrap: wrap; align-items: end; gap: 16px; padding: 24px; background: #f3f3f3; border-left: 4px solid #e8b329; }
#bf-dealer-search > div:first-child { flex: 2 1 260px; }
#bf-dealer-search > div:nth-child(2) { flex: 1 1 200px; }
.bf-dealer-finder input, .bf-dealer-finder select { width: 100%; min-height: 48px; padding: 10px 12px; background: white; color: #222; border: 1px solid #777; border-radius: 0; font: inherit; }
#bf-dealer-search button { min-height: 48px; padding: 10px 20px; border: 1px solid #222; background: #222; color: #fff; border-radius: 0; font: inherit; cursor: pointer; }
#bf-dealer-search .bf-dealer-reset { color: #222; background: transparent; }
.bf-dealer-finder :is(input, select, button, a):focus-visible { outline: 3px solid #a77500; outline-offset: 3px; }
#bf-dealer-status { margin: 20px 0; }
#bf-dealer-map-control { max-width: 550px; margin-bottom: 20px; }
#bf-dealer-map { display: block; border: 1px solid #ddd; }
.bf-map-help { margin-top: 12px; font-size: 14px; }
#bf-dealer-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; width: 100%; }
#bf-dealer-list > .jet-listing-grid__item { width: 100%; max-width: 100%; min-width: 0; padding: 0; }
#bf-dealer-list .elementor-2133 { height: 100%; }
#bf-dealer-list .elementor-icon-list-text { overflow-wrap: anywhere; }
#bf-dealer-list .elementor-icon-list-item > a { display: flex; align-items: center; gap: 5px; color: inherit; }
#bf-dealer-list .elementor-widget-theme-post-featured-image img { object-fit: contain; max-height: 100px; }
#bf-dealer-list .elementor-element-c1f3090 { height: 100%; }
#bf-dealer-list .elementor-element-8190feb { margin-top: auto; }
#bf-dealer-list [hidden], .bf-dealer-finder [hidden] { display: none !important; }
@media (max-width: 1024px) { #bf-dealer-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  #bf-dealer-list { grid-template-columns: minmax(0, 1fr); }
  #bf-dealer-search { padding: 16px; }
  #bf-dealer-search > div { flex-basis: 100%; }
  #bf-dealer-search button { flex: 1; }
  #bf-dealer-map { height: 300px; }
}
.bf-dealer-finder, .bf-dealer-finder p, .bf-dealer-finder input, .bf-dealer-finder select, #bf-dealer-search button { font-size: 16px; line-height: 1.6; }
.bf-dealer-finder label { font-size: 14px; }
