/* UI styling tuned to match your screen: wide dropdown, readable labels, responsive */

.gf-ui__bar{
  position: relative; /* IMPORTANT: dropdown will size to the whole bar */
  display:flex;
  align-items:center;
  background:#fff;
  border-radius:999px;
  padding:10px 12px;
  box-shadow:0 18px 50px rgba(0,0,0,.12);
  gap:10px;
}

.gf-ui__slot{
  position:relative;
  display:flex;
  align-items:center;
  min-height:56px;
  min-width:0;
}

/* Region select looks like a segment */
.gf-ui__slot--region{
  flex: 0 0 auto;
}
.gf-ui__select{
  border:0;
  background:transparent;
  padding:14px 16px;
  font-size:16px;
  outline:none;
  min-width:260px;
}

/* Industry behaves like a full segment (not a tiny button) */
.gf-ui__slot--industry{
  flex: 1 1 auto;
  min-width:220px;
}

.gf-ui__pill{
  width:100%;
  border:0;
  background:transparent;
  padding:14px 16px;
  font-size:16px;
  cursor:pointer;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-start;
	color:black;
font-weight:400;
}

.gf-ui__pill:hover,
.gf-ui__pill:focus{
	background: #2f6f55;
}

.gf-ui__pill-label{ font-weight:400; }
.gf-ui__pill-value{
  opacity:.75;
  font-weight:700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 48ch;
}

/* Search button */
.gf-ui__submit{
  border:0;
  width:56px;
  height:56px;
  border-radius:999px;
  background:#2f6f55;
  color:#fff;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;
}

/* Dropdown: FULL WIDTH under the bar (like your screenshot) */
.gf-ui__panel{
  position:absolute;
  left:0;
  right:0;
  top: calc(100% + 12px);
  display:none;
  z-index: 9999;
}

.gf-ui__slot--industry.is-open .gf-ui__panel{ display:block; }

.gf-ui__panel-inner{
  background:#fff;
  border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.18);
  padding:12px;
}

.gf-ui__panel-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:6px 8px 10px;
}

.gf-ui__close{
  border:0;
  background:transparent;
  font-size:22px;
  cursor:pointer;
  line-height:1;
}

/* List: 3 columns desktop, 2 columns tablet, 1 column mobile */
.gf-ui__list{
  display:flex;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;
  max-height: 320px;
  overflow:auto;
  padding:8px;
}

.gf-ui__check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(0,0,0,.03);
  cursor:pointer;
  min-width:0;
}

.gf-ui__check:hover{ background:rgba(0,0,0,.06); }

.gf-ui__check input{
  width:18px;
  height:18px;
  margin-top:2px;
  flex: 0 0 auto;
}

.gf-ui__check span{
  display:block;
  line-height:1.25;
  white-space: normal; /* allow full names */
  overflow: visible;
  word-break: break-word;
}

.gf-ui__panel-actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  padding:10px 8px 4px;
  flex-wrap: wrap;
}

.gf-ui__apply{
  border:0;
  background:#2f6f55;
  color:#fff;
  font-weight:800;
  border-radius:14px;
  padding:10px 14px;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.gf-ui__reset{
  font-weight:800;
  text-decoration:none;
  padding:10px 14px;
  border-radius:14px;
  background:rgba(0,0,0,.06);
  color:inherit;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Tablet */
@media (max-width: 1024px){
  .gf-ui__list{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .gf-ui__select{ min-width:220px; }
}

/* Mobile */
@media (max-width: 767px){
  .gf-ui__bar{
    flex-direction:column;
    align-items:stretch;
    border-radius:22px;
  }
  .gf-ui__select{ min-width:0; width:100%; }
  .gf-ui__pill{ width:100%; justify-content:space-between; }
  .gf-ui__submit{ width:100%; height:52px; border-radius:16px; }
  .gf-ui__panel{
    position:relative; /* dropdown becomes inline block under the industry segment */
    left:auto; right:auto; top:auto;
    margin-top:12px;
  }
  .gf-ui__list{ grid-template-columns:1fr; }
}
