.phm-rest{
  display:flex;
  gap:80px;
  width:100%;
  align-items:stretch;
}

.phm-rest-left{
  width:50%;
  min-width:320px;
}

.phm-rest-map{
  width:50%;
  border-radius:16px;
  overflow:hidden;
}

.phm-rest-filters{display:flex;gap:18px;justify-content:space-between;align-items:center;margin:8px 0 14px;position:relative}
.phm-rest-filter-btn{
  width: 200px;
  border:1px solid #caa58a; color:#7a5a43;
  padding:12px 22px; background:#fff; border-radius:0;
  letter-spacing:.06em; font-size:13px; text-transform:uppercase;
  cursor:pointer;
}
@media(max-width:767px){
.phm-filter-btn{
    width: 40%
}}

.phm-rest-dropdown{
  position:absolute;
  top:48px;
  left:0;
  right:0;
  background:#fff;
  border:1px solid #eee;
  border-radius:14px;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  padding:10px;
  z-index:9999;
  max-height:360px;
  overflow:auto;
}

.phm-dd-title{
  font-weight:700;
  margin:6px 8px 10px;
}

.phm-dd-item{
  width:100%;
  text-align:left;
  padding:10px 10px;
  border-radius:10px;
  border:0;
  background:transparent;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  gap:12px;
}
.phm-dd-item:hover{ background:#f6f6f6; }
.phm-count{ opacity:.55; font-size:12px; }



.phm-rest-list{display:flex;flex-direction:column;gap:16px}
.phm-card{display:grid;grid-template-columns:180px 1fr;gap:22px;border:0;background:transparent;text-align:left;cursor:pointer; padding: 0}
.phm-img{width:180px;height:100px;border-radius:0;overflow:hidden;background:rgba(0,0,0,.04)}
.phm-img img{width:100%;height:100%;object-fit:cover;display:block}

@media (max-width: 900px){
  .phm{grid-template-columns:1fr}
  .phm-card{grid-template-columns:1fr}
  .phm-img{width:100%;height:180px}
  .phm-dropdown{width:100%;left:0;right:0}
  .phm-map{min-height:420px !important}

}


.phm-meta{ flex:1; min-width:0; }
.phm-title{ font-weight:700; margin-bottom:6px; }
.phm-loc{display:grid;align-items:center;gap:8px;opacity:.8; margin-top: 15px;justify-content: flex-start; grid-template-columns: 20px auto;font-size: 14px}
.phm-pin{display:inline-flex;height: 20px; width:20px}
.phm-pin img{height: 18px; width:100%}

.phm-badges-row{ margin-top:10px; display:flex; gap:10px; flex-wrap:wrap; }

.phm-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-weight:700;
  font-size:12px;
  color:#fff;
  background:#d40000;
}
.phm-badge-michelin{ background:#d40000; }
.phm-badge-gm{ background:#d40000; }

.phm-rest-pagination{
  margin-top:14px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.phm-page{
  border:1px solid #ddd;
  background:#fff;
  border-radius:10px;
  padding:8px 12px;
  cursor:pointer;
}
.phm-page.is-active{ background:#111; color:#fff; border-color:#111; }

/* POPUP (InfoWindow) */
.phm-pop{ width:240px; }
.phm-pop-img img{ width:100%; height:120px; object-fit:cover; border-radius:12px; }
.phm-pop-title{ font-weight:800; margin:10px 0 6px; }
.phm-pop-addr{ opacity:.8; font-size:13px; margin-bottom:8px; }
.phm-pop-badges{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.phm-btn{padding:8px 10px;border-radius:10px;border:1px solid rgba(0,0,0,.15);text-decoration:none;font-size:13px;display:inline-block}
.phm-btn-ghost{ background:#fff; color:#111; border:1px solid #ddd; }


/* ---------- MOBILE IDEAL ---------- */
@media (max-width: 980px){
  .phm-rest{ flex-direction:column; }
  .phm-rest-left{ width:100%; min-width:0; }
  .phm-rest-map{ width:100%; height:420px !important; }
  .phm-rest-dropdown{ max-height:60vh; }
      .phm-title {
        color: black;
    }
        .phm-loc {
        color: #222222;
    }
}