/* Downsizing cluster — brand palette only. Scoped ds-* so nothing leaks. */
.ds-cols{columns:2;column-gap:2.2rem;margin:0 0 1.2rem;padding-left:1.15rem}
.ds-cols li{break-inside:avoid;margin-bottom:.5rem}
@media (max-width:620px){.ds-cols{columns:1}}
.ds-pull{font-family:'Playfair Display',Georgia,serif !important;
  font-size:1.16rem !important;line-height:1.55 !important;color:#012F38 !important;
  border-left:3px solid var(--lime,#A2C243);padding-left:1.05rem;margin:1.4rem 0 !important}
.ds-callout{background:#fff;border-left:3px solid #6aba5a;padding:1.3rem 1.5rem;
  margin:1.5rem 0;border-radius:0 3px 3px 0;box-shadow:0 8px 24px rgba(1,47,56,.05)}
.ds-callout p{margin:0 0 .7rem}
.ds-note{font-size:.92rem !important;color:var(--muted,#5A5A5A) !important;font-style:italic;
  border-left:2px solid #d5d0c6;padding-left:1rem;margin-top:1.4rem !important}
.ds-btns{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.1rem}
.ds-btn{display:inline-block;background:#6aba5a;color:#012F38;padding:.72rem 1.35rem;
  font-size:.84rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  text-decoration:none;border-radius:3px;border:1px solid #6aba5a;transition:.2s}
.ds-btn:hover{background:#5aa84a;color:#012F38}
.ds-btn.ghost{background:transparent;color:#012F38;border-color:#c9d3cd}
.ds-btn.ghost:hover{border-color:#6aba5a;color:#0e7c66}
/* property-type routing */
.ds-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:.9rem;margin:1.4rem 0 0}
.ds-type{display:block;background:#fff;border:1px solid #e6e3dc;border-radius:4px;
  padding:1.1rem 1.25rem;text-decoration:none;transition:border-color .2s,transform .2s}
.ds-type:hover{border-color:#6aba5a;transform:translateY(-2px)}
.ds-type b{display:block;font-family:'Playfair Display',Georgia,serif;
  font-size:1.05rem;color:#012F38;margin-bottom:.3rem}
.ds-type span{display:block;font-size:.84rem;color:#0e7c66}
/* success story */
.ds-story{background:linear-gradient(135deg,#012F38 0%,#0B3D47 100%);
  border-left:4px solid #6aba5a;border-radius:5px;padding:2rem 2.2rem}
.ds-story-eyebrow{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--lime,#A2C243);font-weight:600;margin-bottom:.8rem}
.ds-story .ds-story-h{color:#fff !important;margin:0 0 .4rem}
.ds-story .ds-story-h em{color:#6aba5a;font-style:italic}
.ds-story-sub{color:rgba(255,255,255,.72) !important;font-size:1rem;
  letter-spacing:.04em;margin:0 0 1.2rem !important}
.ds-story-body p{color:rgba(255,255,255,.87) !important;line-height:1.8;margin:0 0 .85rem}
.ds-story-body strong{color:#fff}
.ds-story-stats{display:flex;flex-wrap:wrap;gap:1.8rem;margin:1.5rem 0 1.3rem;
  padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.16)}
.ds-story-stats b{display:block;font-family:'Playfair Display',Georgia,serif;
  font-size:1.45rem;color:#6aba5a;line-height:1.1}
.ds-story-stats span{display:block;font-size:.72rem;letter-spacing:.08em;
  text-transform:uppercase;color:rgba(255,255,255,.62);margin-top:.35rem}
.ds-story-cta{display:inline-block;background:#6aba5a;color:#012F38 !important;
  padding:.72rem 1.4rem;border-radius:3px;font-size:.82rem;font-weight:600;
  letter-spacing:.04em;text-transform:uppercase;text-decoration:none}
.ds-story-cta:hover{background:#5aa84a}
@media (max-width:700px){.ds-story{padding:1.5rem 1.3rem}.ds-story-stats{gap:1.2rem}}

/* comparison table on condo-vs-villa-vs-bungalow */
.ds-tablewrap{overflow-x:auto;margin:1.5rem 0;-webkit-overflow-scrolling:touch}
.ds-table{width:100%;border-collapse:collapse;font-family:'DM Sans',system-ui,sans-serif;
  font-size:.9rem;background:#fff;min-width:720px}
.ds-table th,.ds-table td{border:1px solid #e6e3dc;padding:.7rem .8rem;text-align:left;
  vertical-align:top}
.ds-table thead th{background:#012F38;color:#fff;font-weight:600;font-size:.82rem;
  letter-spacing:.03em}
.ds-table tbody th{background:#f8f7f4;color:#012F38;font-weight:600;white-space:nowrap}
.ds-table td{color:var(--muted,#5A5A5A)}
.ds-table tbody tr:nth-child(even) td{background:#fcfcfa}

/* reciprocal hand-off block (used on the 55+ page) */
.ds-hook{max-width:1180px;margin:2.5rem auto;padding:1.6rem 1.8rem;background:#f8f7f4;
  border-left:3px solid #6aba5a;font-family:'DM Sans',system-ui,sans-serif}
.ds-hook-lbl{display:block;font-family:'Playfair Display',Georgia,serif;font-size:1.2rem;
  color:#012F38;font-weight:700;margin-bottom:.5rem}
.ds-hook p{font-size:.98rem;line-height:1.72;color:var(--muted,#5A5A5A);margin:0 0 1rem;max-width:70ch}
.ds-hook a{display:inline-block;font-size:.82rem;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:#012F38;text-decoration:none;border:1px solid #c9d3cd;
  border-radius:3px;padding:.6rem 1rem;margin:0 .5rem .5rem 0;transition:.18s}
.ds-hook a:hover{border-color:#6aba5a;color:#0e7c66}
@media (max-width:760px){.ds-hook{margin:2rem 1.25rem;padding:1.3rem 1.4rem}}
