/* Section: Search / Booking */
.ps-search { padding: 36px 0; background: var(--surface_alt, var(--light)); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.ps-search label { display: block; font-size: 12px; font-weight: 700; color: var(--muted); margin-bottom: 6px; }
.ps-input { width: 100%; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--border); font-size: 15px; }
.ps-search-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; align-items: end; }
.ps-search-note { margin-top: 12px; font-size: 13px; color: var(--muted); }
.ps-search-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.ps-input--grow { flex: 1; min-width: 200px; }
.ps-search-cards { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.ps-scard { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 12px 16px; min-width: 120px; }
.ps-scard span { display: block; font-size: 11px; color: var(--muted); }
.ps-search-float { text-align: center; max-width: 560px; margin: 0 auto; padding: 20px; border-radius: 20px; background: var(--white); box-shadow: var(--shadow); }
.ps-search-simple h3 { margin-top: 0; }
@media (max-width: 900px) {
  .ps-search-grid { grid-template-columns: 1fr 1fr; }
}
