:root {
  --search-ink: #10233b;
  --search-orange: #f56624;
  --search-orange-deep: #bf3c0b;
  --search-line: #d9e2ec;
}

body.property-search-page {
  color: var(--search-ink);
  background:
    radial-gradient(circle at 92% 14%, rgba(245,102,36,.07), transparent 28rem),
    #f7f8fa;
}

body.property-search-page .explore-properties {
  padding: clamp(2rem, 4vw, 3.5rem) 0 5rem;
  background: transparent;
}

body.property-search-page .property-search-shell {
  position: relative;
  overflow: hidden;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid #e6ded8;
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(245,102,36,.1), transparent 24rem),
    linear-gradient(135deg, #ffffff 0%, #fffaf6 58%, #fff3e9 100%);
  box-shadow: 0 16px 40px rgba(50,44,40,.1);
}

body.property-search-page .property-search-shell::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  opacity: .18;
  background-image: linear-gradient(120deg, rgba(194,65,12,.08) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: linear-gradient(to bottom, #000, transparent);
}

body.property-search-page .property-search-shell > * {
  position: relative;
  z-index: 1;
}

body.property-search-page .property-search-heading {
  align-items: start;
  margin-bottom: 1.4rem;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid #eadfd8;
}

body.property-search-page .section-eyebrow {
  color: var(--search-orange-deep);
  letter-spacing: .1em;
}

body.property-search-page .property-search-heading h1 {
  margin: .3rem 0 .45rem;
  color: var(--search-ink) !important;
  font-size: clamp(1.8rem, 3.5vw, 2.7rem) !important;
}

body.property-search-page .property-search-heading .text-muted,
body.property-search-page .property-filter-summary {
  color: #64748b !important;
}

body.property-search-page .property-filter-summary {
  padding: .55rem .75rem;
  border: 1px solid #fed7aa;
  border-radius: 999px;
  background: rgba(255,247,237,.88);
  font-size: .86rem;
  white-space: nowrap;
}

body.property-search-page .property-filter-grid {
  gap: 1rem;
}

body.property-search-page .property-filter-grid label {
  color: #334155;
  font-size: .78rem;
  letter-spacing: .02em;
}

body.property-search-page .property-filter-grid .form-control,
body.property-search-page .property-filter-grid .form-select {
  min-height: 50px;
  color: var(--search-ink);
  border: 1px solid #d8e0e9;
  border-radius: 12px;
  background: rgba(255,255,255,.94);
  box-shadow: none;
}

body.property-search-page .property-filter-grid .form-control:focus,
body.property-search-page .property-filter-grid .form-select:focus {
  border-color: #ff9a62;
  box-shadow: 0 0 0 .22rem rgba(255,154,98,.25);
}

body.property-search-page .property-filter-actions {
  gap: .8rem;
}

body.property-search-page .property-filter-actions .btn {
  min-height: 50px;
  border-radius: 12px;
  font-weight: 800;
}

body.property-search-page .property-filter-actions .btn-primary {
  color: #fff;
  border-color: var(--search-orange);
  background: var(--search-orange);
  box-shadow: 0 8px 18px rgba(151,47,10,.18);
}

body.property-search-page .property-filter-actions .btn-primary:hover {
  border-color: var(--search-orange-deep);
  background: var(--search-orange-deep);
}

body.property-search-page .property-filter-actions .btn-outline-secondary {
  color: #475569;
  border-color: #cbd5e1;
  background: rgba(255,255,255,.72);
}

body.property-search-page .property-filter-actions .btn-outline-secondary:hover {
  color: var(--search-orange-deep);
  border-color: #fdba74;
  background: #fff7ed;
}

body.property-search-page #containerDaftarProp {
  width: min(100%, calc(100% - 5rem));
  padding: 0 !important;
  margin: 0 auto;
}

body.property-search-page #daftar-item {
  margin: 0 -.65rem;
}

body.property-search-page #daftar-item > [class*="col-"] {
  padding: .65rem;
}

body.property-search-page #daftar-item .card-properti {
  overflow: hidden;
  height: 100%;
  border: 1px solid var(--search-line);
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(15,35,59,.08);
  transition: transform .25s ease, box-shadow .25s ease;
}

body.property-search-page #daftar-item .card-properti:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 44px rgba(15,35,59,.16);
}

body.property-search-page #daftar-item .card-properti .card-img-top {
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform .45s ease;
}

body.property-search-page #daftar-item .card-properti:hover .card-img-top {
  transform: scale(1.035);
}

body.property-search-page #daftar-item .card-body-properti {
  padding: 1.15rem 1.2rem .85rem;
}

body.property-search-page #daftar-item .card-footer {
  padding: 0 1.2rem 1.1rem;
  border: 0;
  background: #fff;
}

body.property-search-page #daftar-item .info-price-main {
  color: var(--search-orange-deep);
  font-size: 1.13rem;
}

@media (max-width: 767.98px) {
  body.property-search-page .property-search-heading {
    align-items: start;
    flex-direction: column;
  }
  body.property-search-page .property-filter-summary { white-space: normal; }
  body.property-search-page #containerDaftarProp { width: calc(100% - 2rem); }
  body.property-search-page #daftar-item .card-properti .card-img-top { aspect-ratio: 16 / 10; }
}

@media (prefers-reduced-motion: reduce) {
  body.property-search-page #daftar-item .card-properti,
  body.property-search-page #daftar-item .card-properti .card-img-top { transition: none; }
}
