.unit-layout { display: grid; gap: 1.5rem; margin: 1.5rem auto 2rem; }
.unit-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-content: start; gap: 0.5rem; }
.unit-gallery > :first-child { grid-column: 1 / -1; }
.unit-gallery img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: var(--surface); }
.unit-gallery .button { grid-column: 1 / -1; }
.price-label { margin-bottom: 0.25rem; color: var(--muted); }
.unit-details .unit-price { margin-bottom: 1rem; font-size: 2rem; }
.unit-specs { margin: 0 0 1.5rem; }
.unit-specs div { display: grid; grid-template-columns: minmax(90px, 1fr) 2fr; gap: 1rem; padding-block: 0.65rem; border-bottom: 1px solid var(--line); }
.unit-specs dt { font-weight: 700; }
.unit-specs dd { margin: 0; overflow-wrap: anywhere; }
.sold-notice { padding: 1rem; border-left: 4px solid var(--red); background: var(--surface); font-weight: 700; }
.availability-form, .preapproval { margin-top: 28px; text-align: center; }
.availability-form h2, .preapproval h2, .unit-description h2 { color: var(--blue); font-size: 22px; }
.unit-description { margin-top: 28px; }
.unit-description img, .unit-description iframe { max-width: 100%; height: auto; }
.cash-price-note { margin-top: 28px; color: #777; font: 12px/1.5 Arial, sans-serif; }
@media (min-width: 768px) { .unit-layout { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 2rem; } }
