/* /listings: recent listings gallery. Every rule is scoped to .ry-lx so the shared header, footer and overlays are untouched.
   Font-family values are copied from the site's own stylesheets, so the page adds no font and no new family. */
.ry-lx{--lx-paper:#f7f6f5;--lx-ink:#231f23;--lx-dark:#262828;--lx-edge:clamp(22px,4.25vw,76px);--lx-radius:11px;background:var(--lx-paper);color:var(--lx-ink);font-family:"StackSans text Variable",StackTextFallback,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.ry-lx *,.ry-lx *:before,.ry-lx *:after{box-sizing:border-box}
.ry-lx-wrap{max-width:1600px;margin-inline:auto;padding-inline:var(--lx-edge)}
.ry-lx-intro{background:var(--lx-dark);color:var(--lx-paper);padding-top:125px;padding-bottom:40px}
.ry-lx-hero{display:grid;grid-template-columns:.88fr 1fr;gap:clamp(35px,6vw,95px);align-items:center}
.ry-lx-hero-copy{padding-bottom:10px;min-width:0}
.ry-lx-hero h1{font-family:var(--typography-font-headings,"StackSans headline Variable"),Arial,sans-serif;font-weight:500;font-size:clamp(37px,4.05vw,65px);line-height:1.03;letter-spacing:-.049em;margin:0 0 23px;color:inherit}
.ry-lx-hero p{margin:0;color:#c4c6c5;font-size:clamp(18px,1.7vw,25px);line-height:1.4;letter-spacing:-.02em}
.ry-lx-album{position:relative;margin:0;padding:0;min-width:0;list-style:none}
.ry-lx-album picture{display:block}
.ry-lx-album img{display:block;width:100%;max-width:100%;height:auto;object-fit:cover;background:#e3e2df;color:transparent}
.ry-lx-album-hero{aspect-ratio:1.73;border-radius:var(--lx-radius) var(--lx-radius) 0 0}
.ry-lx-room-strip{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0}
.ry-lx-room-strip img{aspect-ratio:1.2;border-radius:0}
.ry-lx-room-strip img:first-child{border-bottom-left-radius:var(--lx-radius)}
.ry-lx-room-strip img:nth-child(4){border-bottom-right-radius:var(--lx-radius)}
.ry-lx-featured .ry-lx-album-hero{aspect-ratio:2.18}
.ry-lx-featured .ry-lx-room-strip img{aspect-ratio:1.65}
.ry-lx-more{position:absolute;top:10px;right:10px;background:#f1ece4e6;color:var(--lx-ink);font-family:"Fragment Mono";font-size:10px;letter-spacing:.02em;line-height:1;padding:6px 9px;border-radius:999px;pointer-events:none}
.ry-lx-collection{padding-top:46px;padding-bottom:76px}
.ry-lx-collection-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}
.ry-lx-heading-group{display:flex;align-items:baseline;gap:18px}
.ry-lx-collection h2{font-family:var(--typography-font-headings,"StackSans headline Variable"),Arial,sans-serif;font-size:clamp(30px,3vw,43px);line-height:1.1;font-weight:500;letter-spacing:-.045em;margin:0;color:inherit}
.ry-lx-count{font-family:"Fragment Mono";font-size:10px;line-height:1.4;color:#5f5d5a;letter-spacing:.02em;white-space:nowrap}
.ry-lx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:31px 20px;list-style:none;padding:0;margin:0}
.ry-lx-grid>.ry-lx-album{content-visibility:auto;contain-intrinsic-size:auto 260px}
.ry-lx-album[hidden]{display:none}
.ry-lx-grid.ry-lx-waiting{min-height:150vh}
.ry-lx-see-more-wrap{display:flex;flex-direction:column;align-items:center;gap:17px;padding-top:44px}
.ry-lx-see-more-wrap .ry-lx-count{margin:0}
.ry-lx-see-more{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-width:172px;min-height:48px;padding:13px 25px;border:1px solid #231f2333;border-radius:999px;background:transparent;color:var(--lx-ink);font-family:"StackSans text Variable",StackTextFallback,Arial,sans-serif;font-size:14px;font-weight:500;line-height:1.2;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ry-lx-see-more:hover{background:#eeede9;border-color:#231f2366}
.ry-lx-see-more:focus-visible{outline:3px solid #80a921;outline-offset:5px}
.ry-lx-see-more svg{height:18px;width:18px}
.ry-lx-see-more[hidden]{display:none}
@media(min-width:1700px){.ry-lx-grid{gap:36px 25px}.ry-lx-collection{padding-top:55px}.ry-lx-intro{padding-bottom:44px}}
@media(max-width:1050px){.ry-lx-hero{gap:40px;grid-template-columns:.9fr 1fr}.ry-lx-hero h1{font-size:42px}.ry-lx-hero p{font-size:20px}.ry-lx-grid{gap:26px 17px}.ry-lx-featured .ry-lx-album-hero{aspect-ratio:1.8}.ry-lx-heading-group{display:block}.ry-lx-count{display:block;margin-top:10px}}
@media(max-width:720px){.ry-lx-intro{padding-top:110px;padding-bottom:30px}.ry-lx-hero{grid-template-columns:minmax(0,1fr);gap:24px}.ry-lx-hero h1{font-size:clamp(38px,7.4vw,52px);max-width:570px;margin-bottom:14px}.ry-lx-hero p{font-size:19px}.ry-lx-hero-copy{padding-bottom:0}.ry-lx-featured .ry-lx-album-hero{aspect-ratio:2}.ry-lx-featured .ry-lx-room-strip img{aspect-ratio:1.5}.ry-lx-collection{padding-top:31px;padding-bottom:45px}.ry-lx-collection-heading{gap:16px;align-items:center;margin-bottom:24px}.ry-lx-collection h2{font-size:31px}.ry-lx-count{font-size:9px}.ry-lx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 13px}.ry-lx-album-hero{border-radius:8px 8px 0 0;aspect-ratio:1.45}.ry-lx-room-strip img{aspect-ratio:1}.ry-lx-room-strip img:first-child{border-bottom-left-radius:8px}.ry-lx-room-strip img:nth-child(4){border-bottom-right-radius:8px}.ry-lx-more{top:7px;right:7px;font-size:9px;padding:5px 7px}.ry-lx-see-more-wrap{padding-top:32px}}
/* Phone: the heading is two lines in both the fallback and the loaded font, so the grid does not move when fonts arrive. */
@media(max-width:390px){.ry-lx-collection-heading{align-items:flex-start;flex-direction:column;gap:18px}.ry-lx-heading-group{display:flex;align-items:baseline;gap:12px}.ry-lx-collection h2{width:min-content}.ry-lx-count{margin-top:0}.ry-lx-hero h1{font-size:36px}}
