/* Shared editorial typography: approved One&Only-inspired reading text. */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/font-1.ttf") format("truetype")}
:root{--livin-copy-font:"DM Sans",Arial,sans-serif}
body:not(.typography-preview) main p.editorial-text{font-family:var(--livin-copy-font);font-weight:300;font-size:18px;line-height:1.8;letter-spacing:0}
/* Compact card descriptions keep their recently approved size on both collection pages. */
body:not(.typography-preview) main .collection .property>p.editorial-text{font-size:19px;line-height:1.55}
/* Practical information and controls retain the established sans-serif family. */
main .small,main .collection-note,.contact-address p,#contact-form>p,.apartment-gallery .page-intro>p:not(.eyebrow){font-family:"DM Sans",Arial,sans-serif}
.spirit-values-photo{margin-top:32px}
.spirit-values-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
@media(max-width:650px){body:not(.typography-preview) main p.editorial-text{font-size:17px}.spirit-values-photo{margin-top:26px}}
/* Long translated benefit labels must fit within the mobile grid. */
@media(max-width:760px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.benefit-grid>div{min-width:0}.benefit-grid h3{font-size:clamp(20px,6vw,26px);line-height:1.3;overflow-wrap:anywhere;hyphens:auto}}
