/* Wrapper */
.zls-wrap{ position:relative; width:100%;}

/* Input look (like your header search) */
.zls-input{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #2e477f;
  padding:15px 12px;
  background:#ffffff;
  border-radius: 3px;
}
.zls-field{
  border:0;
  outline:none;
  width:100%;
  font-size:13px;
  font-weight: 800;
  background:transparent;
}

/* Dropdown */
.zls-results{
  position:absolute;
  top: calc(100% + 6px);
  right:0;
  width: 520px;       /* wide dropdown like your Avada one */
  max-width: 90vw;
  background:#fff;
  border:1px solid #ddd;
  box-shadow:0 10px 26px rgba(0,0,0,0.12);
  z-index: 99999;
  padding:10px;
  border-radius:2px;
}

.zls-group{ margin-bottom:10px; }
.zls-group-title{
  font-size:12px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  opacity:0.7;
  margin:6px 0 8px;
}

/* Best match */
.zls-best{
  display:block;
  border:1px solid #e6e6e6;
  padding:10px 12px;
  text-decoration:none;
}
.zls-best:hover{ background:rgba(0,0,0,0.03); }
.zls-best-title{ font-weight:700; }

/* Grid of small cards */
.zls-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px;
}
@media (max-width:520px){
  .zls-grid{ grid-template-columns: 1fr; }
}

/* Card style similar to your small model cards/buttons */
.zls-card{
  display:block;
  border:1px solid #e6e6e6;
  padding:10px 12px;
  text-decoration:none;
  background:#fff;
}
.zls-card:hover{ background:rgba(0,0,0,0.03); }

.zls-card-title{ font-weight:600; font-size:13px; }
.zls-card-meta{ margin-top:6px; font-size:11px; opacity:0.65; text-transform:capitalize; }

.zls-empty{
  padding:12px;
  font-size:13px;
  opacity:0.75;
}