/* ============================================================
   City page — a single market with named units for sale
   ============================================================ */

/* Each unit is a full-width row: photo one side, the seller's own copy the other.
   The listing text is long enough that a card grid would clip or crush it. */
.cy-unit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;
  align-items:start;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:28px;box-shadow:var(--shadow)}
.cy-unit + .cy-unit{margin-top:26px}
.cy-flip .cy-shot{order:2}
.cy-shot img{width:100%;height:auto;aspect-ratio:859/678;object-fit:cover;display:block;
  border-radius:10px}
.cy-cap{display:block;margin-top:10px;font-size:12px;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--gray)}

.cy-body{display:flex;flex-direction:column}
.cy-head{padding-bottom:16px;border-bottom:1px solid var(--line)}
.cy-price{font-size:34px;font-weight:800;letter-spacing:-.03em;color:var(--black);
  font-variant-numeric:tabular-nums;line-height:1}
.cy-sub{margin-top:7px;font-size:14.5px;font-weight:700;color:var(--charcoal)}

.cy-specs{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;margin:0;padding:16px 0;border-bottom:1px solid var(--line)}
.cy-specs b{display:block;font-size:16px;font-weight:800;color:var(--black);
  letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.cy-specs span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--gray);margin-top:3px;line-height:1.3}

.cy-lede{font-size:14.5px;line-height:1.65;color:var(--charcoal);margin-top:16px}
.cy-lede b{color:var(--black)}
.cy-feat{margin-top:18px}
.cy-feat h3{font-size:14px;font-weight:800;letter-spacing:.02em;color:var(--black);
  margin-bottom:8px}
.cy-feat ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.cy-feat li{position:relative;padding-left:20px;font-size:14px;line-height:1.5;
  color:var(--charcoal)}
.cy-feat li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;
  border-radius:50%;background:var(--orange)}
.cy-body .btn{margin-top:24px}
.btn-block{width:100%;justify-content:center}

.cy-note{margin-top:22px;font-size:14px;color:var(--gray);max-width:70ch}

/* ---- the community ---- */
.cy-two{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;
  align-items:start}
.cy-copy h2{font-size:clamp(23px,2.7vw,31px);margin:10px 0 16px}
.cy-copy p{font-size:15.5px;line-height:1.68;max-width:60ch}
.cy-copy p + p{margin-top:13px}
.cy-facts{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.cy-facts li{background:#fff;padding:20px 22px}
.cy-facts b{display:block;font-size:22px;font-weight:800;letter-spacing:-.02em;
  color:var(--black);font-variant-numeric:tabular-nums;line-height:1}
.cy-facts span{display:block;font-size:11.5px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--gray);margin-top:6px;line-height:1.3}

/* ---- gallery ---- */
.cy-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cy-gallery img{width:100%;height:auto;aspect-ratio:859/678;object-fit:cover;display:block;
  border-radius:var(--radius);border:1px solid var(--line)}

@media(max-width:900px){
  .cy-unit{grid-template-columns:1fr;gap:22px;padding:22px}
  .cy-flip .cy-shot{order:0}
  .cy-two{grid-template-columns:1fr;gap:28px}
  .cy-gallery{grid-template-columns:1fr}
}
@media(max-width:520px){
  .cy-specs{grid-template-columns:1fr;gap:10px}
  .cy-facts{grid-template-columns:1fr}
}
