/* Single community / listing blocks. Tokens come from the Oxygen design system. */
.nr-crumbs { font: 400 12.5px/1.4 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.5); }
.nr-crumbs a { color: rgba(23,22,26,.5); text-decoration: none; }
.nr-crumbs a:hover { color: var(--nr-red, #e2352c); }
.nr-crumbs span { padding: 0 6px; }
.nr-crumbs .nr-crumbs__here { padding: 0; color: var(--nr-ink, #17161a); }

.nr-hg { display: grid; grid-template-columns: minmax(0, 2.1fr) minmax(280px, 1fr); grid-template-rows: 1fr 1fr; gap: 14px; height: clamp(300px, 42vw, 470px); }
.nr-hg--1 { grid-template-columns: minmax(0, 1fr); }
.nr-hg__cell { position: relative; display: block; width: 100%; height: 100%; min-height: 0; padding: 0; border: 0; border-radius: 2px; overflow: hidden; cursor: zoom-in; background: #e6e3de; font: inherit; }
.nr-hg__cell--0 { grid-row: 1 / -1; }
.nr-hg--2 .nr-hg__cell--1 { grid-row: 1 / -1; }
.nr-hg__cell img, .nr-gallery__item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.nr-hg__cell:hover img, .nr-gallery__item:hover img { transform: scale(1.03); }
.nr-hg__cell:focus-visible, .nr-gallery__item:focus-visible { outline: 2px solid var(--nr-red, #e2352c); outline-offset: 2px; }
.nr-hg__badge { position: absolute; top: 16px; left: 16px; padding: 7px 12px; border-radius: 2px; background: #1f7a4d; color: #fff; font: 600 10.5px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; letter-spacing: .1em; text-transform: uppercase; }
.nr-hg__more { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(23,22,26,.45); color: #fff; font: 600 14px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; }

.nr-sh__title { margin: 12px 0 0; font: 600 clamp(36px, 5vw, 60px)/1 var(--nr-font-sans, 'Work Sans'), sans-serif; letter-spacing: -.03em; color: var(--nr-ink, #17161a); }
.nr-sh__address { margin: 12px 0 0; font: 400 17px/1.5 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.6); }

.nr-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 1px; margin: 30px 0 0; background: rgba(23,22,26,.13); border: 1px solid rgba(23,22,26,.13); }
.nr-facts__item { background: #fff; padding: 16px 18px; }
.nr-facts dt, .nr-side__label, .nr-local h3 { font: 500 9.5px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; letter-spacing: .11em; text-transform: uppercase; color: rgba(23,22,26,.5); }
.nr-facts dd { margin: 7px 0 0; font: 600 16px/1.2 var(--nr-font-sans, 'Work Sans'), sans-serif; }

.nr-block { margin-top: 52px; }
.nr-block__title { margin: 0; font: 600 28px/1.1 var(--nr-font-sans, 'Work Sans'), sans-serif; letter-spacing: -.02em; }

.nr-pricing { margin-top: 20px; border: 1px solid rgba(23,22,26,.13); }
.nr-pricing__row { display: grid; grid-template-columns: repeat(var(--nr-cols, 4), minmax(0, 1fr)) 86px; gap: 16px; align-items: center; padding: 17px 18px; border-bottom: 1px solid rgba(23,22,26,.1); font: 400 15px/1.2 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.75); transition: background .15s ease; }
.nr-pricing__row:last-child { border-bottom: 0; }
.nr-pricing__row:hover { background: #fafaf9; }
.nr-pricing__row--head, .nr-pricing__row--head:hover { padding: 13px 18px; background: #f5f4f2; border-bottom-color: rgba(23,22,26,.13); font: 500 9.5px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; letter-spacing: .1em; text-transform: uppercase; color: rgba(23,22,26,.55); }
.nr-pricing__c0 { font-weight: 600; font-size: 16px; color: var(--nr-ink, #17161a); }
.nr-pricing__row > span[data-label="Price"] { font-weight: 500; color: var(--nr-ink, #17161a); }
.nr-pricing__row > span[data-label="Sq Ft"] { font: 500 12px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; color: rgba(23,22,26,.6); }
.nr-pricing__row > span[data-label="Availability"] { font: 500 12px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; color: #1f7a4d; }
.nr-pricing__apply { display: block; text-align: center; font: 600 13.5px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; border: 1px solid rgba(23,22,26,.2); padding: 11px 16px; border-radius: 2px; color: var(--nr-ink, #17161a); text-decoration: none; }
.nr-pricing__apply:hover { border-color: var(--nr-red, #e2352c); color: var(--nr-red, #e2352c); }
.nr-pricing .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.nr-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.nr-chips li { border: 1px solid rgba(23,22,26,.16); padding: 10px 15px; border-radius: 2px; font: 500 13.5px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.85); }

.nr-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; margin-top: 20px; }
.nr-gallery__item { position: relative; aspect-ratio: 4 / 3; padding: 0; border: 0; border-radius: 2px; overflow: hidden; cursor: zoom-in; background: #e9e6e1; }

.nr-nmap { position: relative; height: 340px; margin-top: 20px; border: 1px solid rgba(23,22,26,.13); border-radius: 2px; overflow: hidden; background: #eceae6; }
.nr-nmap .nr-nmap__canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.nr-nmap .maplibregl-map { font-family: var(--nr-font-sans, 'Work Sans'), sans-serif; }
.nr-nmap .maplibregl-ctrl-attrib { font-size: 9px; }
.nr-nmap__pin { display: flex; flex-direction: column; align-items: center; }
.nr-nmap__pin b { display: flex; align-items: center; gap: 6px; background: #17161a; color: #fff; border-radius: 2px; padding: 6px 10px; white-space: nowrap; font: 600 12px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; box-shadow: 0 4px 14px rgba(23,22,26,.3); }
.nr-nmap__pin b::before, .nr-nmap__pin::after { content: ''; border-radius: 50%; background: var(--nr-red, #e2352c); }
.nr-nmap__pin b::before { width: 7px; height: 7px; }
.nr-nmap__pin i { width: 1px; height: 10px; background: #17161a; }
.nr-nmap__pin::after { width: 9px; height: 9px; border: 2px solid #fff; margin-top: -1px; box-sizing: content-box; }

.nr-local { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); margin-top: 20px; background: #fff; border: 1px solid rgba(23,22,26,.13); overflow: hidden; }
.nr-local__group { background: #fff; padding: 22px 20px; box-shadow: 1px 1px 0 rgba(23,22,26,.13); }
.nr-local h3 { margin: 0; color: var(--nr-red, #e2352c); }
.nr-local ul { margin: 12px 0 0; padding: 0; list-style: none; font: 400 15px/1.7 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.8); }

.nr-side { border: 1px solid rgba(23,22,26,.14); border-radius: 2px; overflow: hidden; background: #fff; }
.nr-side__rent { padding: 22px 22px 20px; border-bottom: 1px solid rgba(23,22,26,.12); }
.nr-side__price { margin-top: 9px; font: 600 30px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; letter-spacing: -.025em; }
.nr-side__bits { margin-top: 7px; font: 400 13.5px/1.4 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.58); }
.nr-side__apply, .nr-side__tour { display: block; text-align: center; padding: 16px; border-radius: 2px; font: 600 15px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; text-decoration: none; transition: background .15s ease, border-color .15s ease; }
.nr-side__apply { margin-top: 18px; background: var(--nr-red, #e2352c); border: 1px solid var(--nr-red, #e2352c); color: #fff; }
.nr-side__apply:hover { background: var(--nr-red-dark, #b81f18); border-color: var(--nr-red-dark, #b81f18); color: #fff; }
.nr-side__tour { margin-top: 8px; border: 1px solid rgba(23,22,26,.2); color: var(--nr-ink, #17161a); }
.nr-side__tour:hover { border-color: var(--nr-ink, #17161a); color: var(--nr-ink, #17161a); }
.nr-side__ask { display: block; margin-top: 14px; text-align: center; font: 600 13.5px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; color: var(--nr-red, #e2352c); text-decoration: none; }
.nr-side__ask:hover { color: var(--nr-red-dark, #b81f18); }
.nr-side__manager { padding: 20px 22px; }
.nr-side__who { display: flex; align-items: center; gap: 13px; margin-top: 14px; }
.nr-side__avatar { flex: none; width: 44px; height: 44px; border-radius: 50%; background: var(--nr-red, #e2352c); color: #fff; display: flex; align-items: center; justify-content: center; font: 600 17px/1 var(--nr-font-sans, 'Work Sans'), sans-serif; }
.nr-side__name { font: 600 15.5px/1.2 var(--nr-font-sans, 'Work Sans'), sans-serif; }
.nr-side__org { margin-top: 3px; font: 400 13px/1.2 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(23,22,26,.55); }
.nr-side__card { display: block; max-width: 100%; height: auto; margin-top: 14px; }
.nr-side__contact { margin-top: 14px; display: flex; flex-direction: column; font: 500 14px/1.7 var(--nr-font-sans, 'Work Sans'), sans-serif; }
.nr-side__contact a { color: var(--nr-red, #e2352c); text-decoration: none; overflow-wrap: anywhere; }
.nr-side__contact a:hover { color: var(--nr-red-dark, #b81f18); }
.nr-side__email { font-weight: 400; font-size: 13.5px; }

.nr-nearby__title { margin: 0; max-width: 24ch; font: 600 clamp(26px, 3vw, 38px)/1.1 var(--nr-font-sans, 'Work Sans'), sans-serif; letter-spacing: -.025em; color: #fff; }
.nr-nearby__text { margin: 10px 0 0; font: 300 16px/1.5 var(--nr-font-sans, 'Work Sans'), sans-serif; color: rgba(255,255,255,.7); }
.nr-nearby__text a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255,255,255,.35); text-underline-offset: 3px; }
.nr-nearby__text a:hover { text-decoration-color: #fff; }

/* Lightbox */
@keyframes nr-lb-fade { from { opacity: 0; } to { opacity: 1; } }
.nr-lb { position: fixed; inset: 0; z-index: 100000; background: rgba(15,14,16,.92); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; padding: 40px 20px; animation: nr-lb-fade .2s ease; }
.nr-lb[hidden] { display: none; }
.nr-lb__frame { position: relative; width: min(1000px, 100%); aspect-ratio: 3 / 2; max-height: calc(100vh - 160px); border-radius: 2px; background: #26241f; overflow: hidden; }
.nr-lb__frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.nr-lb__bar { display: flex; align-items: center; gap: 14px; }
.nr-lb__btn { width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.3); background: none; color: #fff; border-radius: 2px; font-size: 16px; cursor: pointer; }
.nr-lb__btn:hover { background: rgba(255,255,255,.14); }
.nr-lb__close { position: absolute; top: 18px; right: 18px; }
.nr-lb__count { min-width: 60px; text-align: center; font: 500 12px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; color: rgba(255,255,255,.6); }


@media (max-width: 767px) {
	.nr-hg, .nr-hg--2 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: minmax(0, 2fr) minmax(0, 1fr); height: clamp(340px, 90vw, 460px); gap: 8px; }
	.nr-hg__cell--0 { grid-row: 1; grid-column: 1 / -1; }
	.nr-hg--2 .nr-hg__cell--1 { grid-row: 2; grid-column: 1 / -1; }
	.nr-block { margin-top: 40px; }
	.nr-block__title { font-size: 24px; }
	.nr-pricing__row--head { display: none; }
	.nr-pricing__row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px 16px; }
	.nr-pricing__row > span:last-child { grid-column: 1 / -1; }
	.nr-pricing__row > span[data-label]::before { content: attr(data-label); display: block; margin-bottom: 5px; font: 500 9.5px/1 var(--nr-font-mono, 'IBM Plex Mono'), monospace; letter-spacing: .1em; text-transform: uppercase; color: rgba(23,22,26,.5); }
}
