/* Search Modal */
.search-overlay{
  position:fixed;inset:0;z-index:9999;
  background:rgba(7,15,26,0.92);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  display:flex;flex-direction:column;align-items:center;
  padding:3rem 2rem 2rem;
  opacity:0;visibility:hidden;
  transition:opacity 0.35s,visibility 0.35s;
  overflow-y:auto;
}
.search-overlay.open{opacity:1;visibility:visible;}

.search-close{
  position:absolute;top:1.5rem;right:2rem;
  background:none;border:none;color:rgba(255,255,255,0.5);
  font-size:28px;cursor:pointer;transition:color 0.2s;
  line-height:1;
}
.search-close:hover{color:#fff;}

.search-header{
  width:100%;max-width:800px;margin-bottom:2rem;text-align:center;
}
.search-header h2{
  font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:300;
  color:#fff;letter-spacing:0.06em;margin-bottom:0.5rem;
}

/* Search Input */
.search-input-wrap{
  width:100%;max-width:800px;position:relative;margin-bottom:1.5rem;
}
.search-input{
  width:100%;padding:16px 20px 16px 52px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.15);
  color:#fff;font-size:16px;font-family:'DM Sans',sans-serif;
  letter-spacing:0.02em;outline:none;
  transition:border-color 0.3s,background 0.3s;
}
.search-input::placeholder{color:rgba(255,255,255,0.35);}
.search-input:focus{
  border-color:rgba(197,165,90,0.6);
  background:rgba(255,255,255,0.12);
}
.search-icon{
  position:absolute;left:18px;top:50%;transform:translateY(-50%);
  color:rgba(255,255,255,0.4);font-size:18px;pointer-events:none;
}

/* Filters */
.search-filters{
  width:100%;max-width:800px;
  display:flex;gap:12px;margin-bottom:2rem;flex-wrap:wrap;
}
.search-filter{
  flex:1;min-width:160px;padding:10px 14px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:#fff;font-size:13px;font-family:'DM Sans',sans-serif;
  letter-spacing:0.04em;cursor:pointer;outline:none;
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='rgba(255,255,255,0.4)' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
  padding-right:36px;
}
.search-filter option{background:#1A2535;color:#fff;}

/* Results */
/* Results */
.search-results{
  width:100%;max-width:1100px;
}
.search-results-count{
  font-size:11px;letter-spacing:0.12em;text-transform:uppercase;
  color:rgba(255,255,255,0.4);margin-bottom:1.5rem;
}
.search-results-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}
.search-card {
  display: flex;
  flex-direction: column;
  background: rgba(26,37,53,0.5);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}
.search-card:hover {
  transform: translateY(-4px);
  border-color: rgba(197,165,90,0.4);
  background: rgba(26,37,53,0.8);
}
.search-card-img-wrapper {
  position: relative;
  width: 100%;
  height: 200px;
  overflow: hidden;
}
.search-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.search-card:hover .search-card-img {
  transform: scale(1.05);
}
.search-card-status {
  position: absolute;
  top: 12px;
  left: 12px;
  background: rgba(10, 16, 26, 0.85);
  backdrop-filter: blur(4px);
  color: #fff;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,0.1);
}
.search-card-content {
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.search-card-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  line-height: 1.2;
}
.search-card-location {
  font-size: 11px;
  color: rgba(255,255,255,0.5);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
  gap: 6px;
}
.search-card-location svg {
  width: 12px;
  height: 12px;
  opacity: 0.7;
}
.search-card-price {
  font-family: 'Cormorant Garamond', serif;
  font-size: 16px;
  color: var(--gold, #C5A55A);
  margin-top: 4px;
}
.search-no-results{
  text-align:center;padding:3rem 1rem;
  color:rgba(255,255,255,0.3);font-size:14px;letter-spacing:0.04em;
}

/* Nav search button */
.nav-search-btn{
  background:none;border:none;color:rgba(255,255,255,0.7);
  cursor:pointer;font-size:16px;padding:4px;transition:color 0.2s;
  display:flex;align-items:center;
}
.nav-search-btn:hover{color:#fff;}
/* For light navs (property pages) */
nav:not(.scrolled) .nav-search-btn{color:rgba(26,58,92,0.6);}
nav:not(.scrolled) .nav-search-btn:hover{color:rgba(26,58,92,1);}
/* Dark nav pages (index, zones) override */
.hero ~ .search-overlay,
body > nav .nav-search-btn{color:rgba(255,255,255,0.7);}

@media(max-width:600px){
  .search-filters{flex-direction:column;}
  .search-results-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
