.nrex-form .nrex-row{margin-bottom:12px}
.nrex-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:900px){.nrex-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nrex-gallery img{margin:4px;display:inline-block}

/* ===== Nova Real Estate X — Single Property (theme-safe) ===== */
body.single-nrex_property .nrex-single {
  --nrex-gap: 1.25rem;           /* spacing */
  --nrex-radius: 12px;           /* rounded corners */
  --nrex-border: 1px solid rgba(0,0,0,0.08);
  --nrex-muted: rgba(0,0,0,0.6);
  --nrex-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

/* Layout & spacing */
body.single-nrex_property .nrex-single > article {
  margin: 0 auto;
  max-width: 1100px;
  padding: var(--nrex-gap);
}
body.single-nrex_property .nrex-single > article > header {
  margin-bottom: calc(var(--nrex-gap) * 1.2);
}
body.single-nrex_property .nrex-single > article > header img {
  width: 100%;
  height: auto;
  border-radius: var(--nrex-radius);
  box-shadow: var(--nrex-shadow);
}

/* Section shells (meta / profile / comments) */
body.single-nrex_property .nrex-single section {
  margin-top: calc(var(--nrex-gap) * 1.2);
  padding-top: calc(var(--nrex-gap) * 0.7);
  border-top: var(--nrex-border);
}
body.single-nrex_property .nrex-single section > h2 {
  margin: 0 0 .5rem 0;
  font-size: 1.125rem;
  line-height: 1.3;
}

/* Content */
body.single-nrex_property .nrex-single .entry-content p,
body.single-nrex_property .nrex-single .entry-content ul,
body.single-nrex_property .nrex-single .entry-content ol {
  margin-bottom: 1rem;
}
body.single-nrex_property .nrex-single .entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: var(--nrex-radius);
}

/* Meta list (from [nrex_meta]) */
body.single-nrex_property .nrex-single .nrex-meta {
  list-style: none;
  margin: .25rem 0 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: .5rem .75rem;
}
@media (min-width: 860px) {
  body.single-nrex_property .nrex-single .nrex-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
body.single-nrex_property .nrex-single .nrex-meta li {
  display: flex;
  gap: .5rem;
  align-items: baseline;
  padding: .5rem .75rem;
  border: var(--nrex-border);
  border-radius: var(--nrex-radius);
  box-shadow: var(--nrex-shadow);
}
body.single-nrex_property .nrex-single .nrex-meta li strong {
  min-width: 120px;
  color: var(--nrex-muted);
  font-weight: 600;
}

/* Profile block (PDF + gallery from [nrex_profile]) */
body.single-nrex_property .nrex-single .nrex-profile a {
  text-decoration: none;
  border-bottom: 1px dotted currentColor;
}
body.single-nrex_property .nrex-single .nrex-profile a:hover {
  border-bottom-style: solid;
}
body.single-nrex_property .nrex-single .nrex-gallery {
  margin-top: .5rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .5rem;
}
@media (min-width: 700px) {
  body.single-nrex_property .nrex-single .nrex-gallery {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
body.single-nrex_property .nrex-single .nrex-gallery img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: calc(var(--nrex-radius) - 4px);
  box-shadow: var(--nrex-shadow);
}

/* Comments wrapper (keeps theme styles but adds spacing) */
body.single-nrex_property .nrex-single .nrex-comments {
  margin-top: calc(var(--nrex-gap) * 1.2);
}

/* Optional: subtle card look (apply by adding .nrex-card wrapper if you want) */
body.single-nrex_property .nrex-single .nrex-card {
  border: var(--nrex-border);
  border-radius: var(--nrex-radius);
  padding: var(--nrex-gap);
  box-shadow: var(--nrex-shadow);
  background: inherit; /* avoids clashing with theme background */
}
