/*
Theme Name: SANKUPRA Realty
Theme URI: https://sankupra.com/
Author: SANKUPRA Realty
Description: Lightweight custom WordPress theme foundation for SANKUPRA Realty. No page-builder dependency.
Version: 0.1.0
License: GPL-2.0-or-later
Text Domain: sankupra-realty
*/

:root {
  --sr-navy: #061426;
  --sr-blue: #165DFF;
  --sr-gold: #C9A227;
  --sr-text: #182230;
  --sr-muted: #667085;
  --sr-bg: #f6f8fb;
  --sr-white: #ffffff;
  --sr-border: #e5e7eb;
  --sr-radius: 14px;
  --sr-container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--sr-text);
  background: var(--sr-white);
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
button, input, select, textarea { font: inherit; }

.sr-container {
  width: min(100% - 32px, var(--sr-container));
  margin-inline: auto;
}

.sr-site-header {
  background: var(--sr-white);
  border-bottom: 1px solid var(--sr-border);
  position: sticky;
  top: 0;
  z-index: 100;
}
.sr-header-inner {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.sr-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  font-size: 20px;
  color: var(--sr-navy);
}
.sr-brand-mark {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: var(--sr-navy);
  color: var(--sr-white);
  font-size: 13px;
  font-weight: 900;
}
.sr-nav ul {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 22px;
  margin: 0;
  padding: 0;
}
.sr-nav a { font-size: 14px; font-weight: 600; color: #344054; }
.sr-nav a:hover { color: var(--sr-blue); }

.sr-main { min-height: 60vh; }

.sr-hero {
  background: linear-gradient(135deg, var(--sr-navy), #0c2748);
  color: var(--sr-white);
  padding: 88px 0;
}
.sr-hero h1 {
  margin: 0 0 14px;
  font-size: clamp(36px, 6vw, 64px);
  line-height: 1.05;
  letter-spacing: -1.5px;
}
.sr-hero p {
  max-width: 650px;
  color: #d9e2ef;
  font-size: 18px;
  margin: 0 0 28px;
}
.sr-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 20px;
  border-radius: 10px;
  border: 1px solid transparent;
  font-weight: 700;
  cursor: pointer;
}
.sr-btn-primary { background: var(--sr-blue); color: var(--sr-white); }
.sr-btn-outline { border-color: #cbd5e1; background: var(--sr-white); color: var(--sr-navy); }

.sr-section { padding: 64px 0; }
.sr-section-head { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:26px; }
.sr-section h2 { margin:0; font-size:32px; letter-spacing:-.6px; }
.sr-section-head p { margin:6px 0 0; color:var(--sr-muted); }

.sr-property-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.sr-property-card {
  overflow:hidden;
  background:var(--sr-white);
  border:1px solid var(--sr-border);
  border-radius:var(--sr-radius);
  box-shadow:0 8px 30px rgba(6,20,38,.06);
}
.sr-property-image {
  aspect-ratio: 16/10;
  background:#e9eef5;
  overflow:hidden;
}
.sr-property-image img { width:100%; height:100%; object-fit:cover; }
.sr-property-body { padding:20px; }
.sr-property-body h3 { margin:0 0 8px; font-size:19px; }
.sr-property-meta { color:var(--sr-muted); font-size:14px; margin-bottom:14px; }
.sr-property-price { font-size:20px; font-weight:800; color:var(--sr-navy); }

.sr-page-header { background:var(--sr-bg); padding:54px 0; }
.sr-page-header h1 { margin:0; font-size:42px; letter-spacing:-1px; }

.sr-empty {
  padding:48px 20px;
  border:1px dashed #cbd5e1;
  border-radius:var(--sr-radius);
  text-align:center;
  color:var(--sr-muted);
}

.sr-single-property { padding:48px 0 72px; }
.sr-single-title { margin:0 0 8px; font-size:clamp(30px,5vw,52px); line-height:1.1; }
.sr-single-subtitle { color:var(--sr-muted); margin:0 0 28px; }
.sr-single-image {
  border-radius:var(--sr-radius);
  overflow:hidden;
  background:#eef2f7;
  margin-bottom:28px;
}
.sr-single-content { max-width:850px; }
.sr-details-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:24px 0 36px;
}
.sr-detail {
  border:1px solid var(--sr-border);
  border-radius:12px;
  padding:16px;
  background:var(--sr-white);
}
.sr-detail strong { display:block; font-size:19px; }
.sr-detail span { color:var(--sr-muted); font-size:13px; }

.sr-site-footer {
  background:var(--sr-navy);
  color:#fff;
  margin-top:60px;
}
.sr-footer-inner {
  padding:48px 0;
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1fr;
  gap:32px;
}
.sr-footer-brand { font-size:22px; font-weight:800; }
.sr-footer p { color:#b8c0cc; font-size:14px; }
.sr-footer h4 { margin:0 0 12px; }
.sr-footer ul { list-style:none; margin:0; padding:0; }
.sr-footer li { margin:8px 0; color:#b8c0cc; font-size:14px; }
.sr-footer-bottom {
  border-top:1px solid rgba(255,255,255,.1);
  padding:16px 0;
  color:#b8c0cc;
  font-size:12px;
}

@media (max-width: 900px) {
  .sr-property-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sr-footer-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sr-nav { display:none; }
}
@media (max-width: 600px) {
  .sr-property-grid { grid-template-columns:1fr; }
  .sr-details-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sr-footer-inner { grid-template-columns:1fr; }
  .sr-hero { padding:64px 0; }
}
