/* ============================================================
   Project Redesign — Beyta / Hayarkon Towers
   Loaded only when pr_use_redesign_layout is enabled.
   ============================================================ */

/* Fonts (Sora + Geist from Google Fonts) */
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Sora:wght@400;500;600;700&display=swap');

/* ---------- Tokens (from Figma) ---------- */
:root {
	--pr-navy:        #0C1843;
	--pr-ink:         #252525;
	--pr-price:       #2D3D21;
	--pr-red:         #AF2B14;
	--pr-grey-card:   #F4F4F4;
	--pr-grey-tint:   rgba(235, 235, 235, 0.5);
	--pr-border:      #CECECE;
	--pr-border-soft: #E2E2E2;
	--pr-white:       #FFFFFF;

	--pr-radius:    12px;
	--pr-radius-sm: 8px;
	--pr-shadow:    0 4px 9.6px rgba(99, 99, 99, 0.25);

	--pr-font-sora:    'Sora', system-ui, -apple-system, sans-serif;
	--pr-font-geist:   'Geist', system-ui, -apple-system, sans-serif;
	--pr-font-manrope: 'Manrope', system-ui, -apple-system, sans-serif;

	--pr-container-max: 1400px;
	--pr-container-pad: 20px;
}

/* ---------- Base ---------- */
.pr-project-wrapper {
	width: 100%;
	margin: 0;
	padding: 0;
	color: var(--pr-ink);
	font-family: var(--pr-font-geist);
	-webkit-font-smoothing: antialiased;
}
.pr-project-wrapper *,
.pr-project-wrapper *::before,
.pr-project-wrapper *::after { box-sizing: border-box; }

.pr-section { width: 100%; padding: 40px 0; }

/* Placeholder for unbuilt sections */
.pr-section-stub {
	width: min(var(--pr-container-max), calc(100% - 40px));
	margin: 0 auto;
	padding: 20px 24px;
	background: #FFF6E5;
	color: #8A5A00;
	border: 1px dashed #E0B45A;
	border-radius: var(--pr-radius-sm);
	font-size: 13px !important;
	letter-spacing: .04em;
	text-transform: uppercase;
	font-weight: 600 !important;
}

/* =====================================================
   SECTION 1+2 — HERO SECTION (featured image + stats overlay)
   ===================================================== */
.pr-hero {
	position: relative;
	padding: 0;
	background-color: var(--pr-navy);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.pr-hero__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(10, 10, 14, 0.22) 0%, rgba(10, 10, 14, 0.45) 100%);
	pointer-events: none;
}

.pr-hero__wrap {
	position: relative;
	z-index: 2;
	width: min(var(--pr-container-max), calc(100% - 40px));
	margin: 0 auto;
	padding: 50px 0 48px;
	min-height: 520px; /* keeps the absolute right card inside the hero */
}

/* Status badge */
.pr-hero__badge {
	display: inline-flex;
	align-items: center;
	height: 40px;
	padding: 0 22px;
	background: #FBFCFF;
	border-radius: 999px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 14px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	white-space: nowrap;
}

/* Title + location */
.pr-hero__title {
	margin: 12px 0 0;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 56px !important;
	line-height: 1.15;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}
.pr-hero__location {
	margin-top: 12px;
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 19px !important;
	color: var(--pr-white);
}
.pr-hero__location svg { flex: 0 0 auto; opacity: .95; }

/* ---------- Left column on the photo ---------- */
.pr-hero__left {
	margin-top: 28px;
	width: 675px;
	max-width: calc(100% - 495px);
}

/* Glassy 3-tile strip */
.pr-hero-tiles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	background: #FFFFFF33;
	border: 1px solid rgba(255, 255, 255, 0.65);
	border-radius: 8px;
}
.pr-hero-tile {
	min-height: 108px;
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 10px;
}
.pr-hero-tile + .pr-hero-tile { border-left: 1px solid rgba(255, 255, 255, 0.45); }
.pr-hero-tile__head {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: rgba(255, 255, 255, 0.92);
	white-space: nowrap;
}
.pr-hero-tile__head svg { flex: 0 0 auto; opacity: .9; }
.pr-hero-tile__bar {
	height: 6px;
	background: rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	overflow: hidden;
}
.pr-hero-tile__bar span {
	display: block;
	height: 100%;
	background: var(--pr-white);
	border-radius: 999px;
}
.pr-hero-tile__value {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 20px !important;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}
.pr-hero-tile__suffix {
	font-weight: 400 !important;
	font-size: 14px !important;
	color: rgba(255, 255, 255, 0.65);
}

/* Starting From price */
.pr-hero-price { margin-top: 26px; }
.pr-hero-price__label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: rgba(255, 255, 255, 0.92);
}
.pr-hero-price__value {
	margin-top: 8px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 32px !important;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}

/* Units remaining */
.pr-hero-units {
	margin-top: 20px;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: var(--pr-white);
}
.pr-hero-units svg { flex: 0 0 auto; }

/* Land Zoning | Permit Status bar */
.pr-hero-zoning {
	margin-top: 26px;
	display: inline-flex;
	flex-wrap: wrap;
	background: #FFFFFF33;
	border: 1px solid rgba(255, 255, 255, 0.65);
	border-radius: 8px;
}
.pr-hero-zoning__seg {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	min-height: 44px;
	padding: 0 20px;
}
.pr-hero-zoning__seg + .pr-hero-zoning__seg { border-left: 1px solid rgba(255, 255, 255, 0.45); }
.pr-hero-zoning__label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: rgba(255, 255, 255, 0.88);
	white-space: nowrap;
}
.pr-hero-zoning__value {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	color: var(--pr-white);
	white-space: nowrap;
}

/* ---------- Right: translucent summary card ---------- */
.pr-hero__card {
	position: absolute;
	top: 121px; /* card top sits level with the hero title */
	right: 0;
	width: 455px;
	background: #EBEBEBCC;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(12, 24, 67, 0.18);
	padding: 28px;
	display: flex;
	flex-direction: column;
}

.pr-rcard__title {
	margin: 0 0 26px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 25px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: #252525;
}

/* Info rows: white split pills */
.pr-rcard__rows {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.pr-rcard__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2px;
	height: 46px;
	background: transparent;
}
.pr-rcard__row-label,
.pr-rcard__row-value {
	display: flex;
	align-items: center;
	background: var(--pr-white);
	padding: 0 18px;
	font-family: var(--pr-font-geist);
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: #252525;
}
.pr-rcard__row-label { border-radius: 8px 0 0 8px; }
.pr-rcard__row-value {
	gap: 10px;
	justify-content: center;
	border-radius: 0 8px 8px 0;
}

/* CTAs */
.pr-rcard__actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 32px;
}

.pr-btn-primary,
.pr-btn-outline {
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border-radius: 8px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 16px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	text-decoration: none;
	transition: background .15s ease, color .15s ease, border-color .15s ease;
	cursor: pointer;
}
.pr-btn-primary {
	background: var(--pr-navy);
	color: var(--pr-white);
	border: 1px solid var(--pr-navy);
}
.pr-btn-primary:hover,
.pr-btn-primary:focus {
	background: #1a2660;
	color: var(--pr-white);
	border-color: #1a2660;
}

.pr-btn-outline {
	background: transparent;
	color: var(--pr-navy);
	border: 1.5px solid var(--pr-navy);
}
.pr-btn-outline:hover,
.pr-btn-outline:focus {
	background: rgba(12, 24, 67, 0.07);
	color: var(--pr-navy);
}

/* ---------- Full-width navy promo strip ---------- */
.pr-hero-strip {
	position: relative;
	z-index: 2;
	background: var(--pr-navy);
	min-height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 48px;
	flex-wrap: wrap;
	padding: 12px 20px;
}
.pr-hero-strip__item {
	font-family: var(--pr-font-geist);
	font-weight: 500 !important;
	font-size: 18px !important;
	letter-spacing: .02em;
	text-transform: uppercase;
	color: var(--pr-white);
	white-space: nowrap;
}
.pr-hero-strip__sep {
	width: 1px;
	height: 18px;
	background: rgba(255, 255, 255, 0.35);
}

/* =====================================================
   SECTION 3 — PROJECT LOCATION + NEARBY TRANSPORTS
   ===================================================== */

.pr-container-wide {
	width: min(var(--pr-container-max), calc(100% - 40px));
	margin: 0 auto;
}

/* ---------- 3a. Project Location ---------- */
.pr-project-location {
	padding: 80px 0 41px;
}

.pr-loc__header {
	margin-bottom: 35px;
}
.pr-loc__header-col {
	display: flex;
	flex-direction: column;
	gap: 7px;
}
/* When a gallery exists, the header mirrors the map | gallery row below:
   "Project Location" sits above the map, "Project Gallery" above the grid. */
.pr-loc__header--split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	align-items: start;
}
/* Mobile-only "Project Gallery" heading rendered directly above the grid.
   Hidden on desktop, where the header's second column carries it instead. */
.pr-loc__gallery-heading-m { display: none; }
.pr-loc__heading {
	margin: 0;
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 42px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: #2D3D21;
}
.pr-loc__subheading {
	margin: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 22px !important;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: #6A7166;
}

/* Map + gallery row. Single column by default (map only); two columns when
   project images exist (.pr-loc__media--split). */
.pr-loc__media--split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	align-items: stretch;
}

.pr-loc__map {
	width: 100%;
	height: 538px;
	border-radius: 12px;
	overflow: hidden;
	background: #e9eef3;
}
.pr-loc__media--split .pr-loc__map { height: 538px; }

/* 2×2 image grid (up to 4 images), matched to the map height. */
.pr-loc__gallery {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 16px;
	height: 538px;
}
.pr-loc__gallery-item {
	position: relative;
	display: block;
	margin: 0;
	border-radius: 12px;
	overflow: hidden;
	background: #e9eef3;
	border: 1px solid #E9ECF1;
	cursor: pointer;
}
/* Only the first 4 images appear in the grid; the rest live in the DOM
   purely so the lightbox can browse them. */
.pr-loc__gallery-item:nth-child(n+5) { display: none; }
.pr-loc__gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .35s ease;
}
.pr-loc__gallery-item:hover img,
.pr-loc__gallery-item:focus-visible img { transform: scale(1.05); }

/* "+N" overlay on the 4th tile when more images exist. */
.pr-loc__gallery-item--more::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(12, 24, 67, 0.55);
}
.pr-loc__gallery-more {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 30px !important;
	color: #FFFFFF;
	letter-spacing: -0.01em;
}

/* ---------- Gallery Lightbox ---------- */
.pr-lightbox {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: none;
	align-items: center;
	justify-content: center;
	background: rgba(8, 12, 28, 0.92);
	padding: 24px;
}
.pr-lightbox.is-open { display: flex; }
.pr-lightbox__figure {
	margin: 0;
	max-width: min(1100px, 92vw);
	max-height: 88vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
}
.pr-lightbox__img {
	max-width: 100%;
	max-height: 80vh;
	object-fit: contain;
	border-radius: 8px;
	display: block;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}
.pr-lightbox__caption {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 500 !important;
	font-size: 15px !important;
	color: rgba(255, 255, 255, 0.85);
	text-align: center;
}
.pr-lightbox__counter {
	font-family: var(--pr-font-geist);
	font-weight: 500 !important;
	font-size: 14px !important;
	color: rgba(255, 255, 255, 0.7);
}
.pr-lightbox__btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 999px;
	color: #FFFFFF;
	cursor: pointer;
	transition: background .2s ease;
	-webkit-appearance: none;
	appearance: none;
	padding:0px !important;
}
.pr-lightbox__btn:hover { background: rgba(255, 255, 255, 0.25); }
.pr-lightbox__btn--prev { left: 24px; }
.pr-lightbox__btn--next { right: 24px; }
.pr-lightbox__btn svg { width: 24px; height: 24px; }
.pr-lightbox__close {
	position: absolute;
	top: 22px;
	right: 24px;
	width: 46px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 999px;
	color: #FFFFFF;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	padding:5px !important;
}
.pr-lightbox__close:hover { background: rgba(255, 255, 255, 0.25); }
.pr-lightbox__close svg { width: 22px; height: 22px; }
/* Single-image gallery: no need for the arrows. */
.pr-lightbox--single .pr-lightbox__btn,
.pr-lightbox--single .pr-lightbox__counter { display: none; }
/* Freeze the page behind the lightbox (JS sets `top` to the saved scrollY). */
body.pr-lightbox-open {
	position: fixed;
	left: 0;
	right: 0;
	width: 100%;
	overflow: hidden;
}
/* Stop scroll chaining to the page while interacting with the lightbox. */
.pr-lightbox { overscroll-behavior: contain; }

@media (max-width: 600px) {
	.pr-lightbox__btn { width: 42px; height: 42px; }
	.pr-lightbox__btn--prev { left: 10px; }
	.pr-lightbox__btn--next { right: 10px; }
	.pr-lightbox__close { top: 14px; right: 14px; }
}
.pr-loc__map iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}
.pr-loc__map-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F4F4F4;
	color: var(--pr-muted, #6A7166);
	font-family: var(--pr-font-geist);
	font-size: 14px !important;
	text-align: center;
	padding: 20px;
}

.pr-loc__divider-row {
	margin-top: 80px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}
.pr-loc__address-title {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 42px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: #2D3D21;
	flex: 1 1 auto;
	min-width: 0;
}
.pr-btn-navy-dl {
	flex: 0 0 auto;
	width: 255px;
	height: 48px;
	padding: 0 29px;
	background: var(--pr-navy);
	color: var(--pr-white);
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 16px !important;
	letter-spacing: -0.03em;
	text-transform: capitalize;
	text-decoration: none;
	transition: background .15s ease;
}
.pr-btn-navy-dl:hover { background: #1a2660; color: var(--pr-white); }
.pr-btn-navy-dl--disabled {
	opacity: .5;
	cursor: not-allowed;
	pointer-events: none;
}
.pr-btn-navy-dl--sm {
	width: 100%;
	height: 40px;
	font-size: 16px !important;
	max-width: 280px;
}

.pr-loc__line {
	margin: 27px 0 0;
	border: 0;
	height: 1px;
	background: rgba(0, 0, 0, 0.1);
	width: 100%;
}

/* ---------- 3b. Nearby Transport + Construction Card ---------- */
.pr-nearby-transports {
	padding: 0px 0 57px;
}

.pr-nearby__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 2.1fr);
	gap: 28px;
	align-items: start;
}

/* LEFT panel — white card */
.pr-nearby__left {
	background: var(--pr-white);
	border: 1px solid #E9EBF1;
	border-radius: 20px;
	box-shadow: 0px 10px 30px 0px #0C184312;
	padding: 32px 28px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.pr-nearby__heading {
	margin: 0 0 10px;
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 20px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-transport-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}
.pr-transport-item {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0;
	padding: 18px 0;
	border-bottom: 1px solid #EDEEF3;
}
.pr-transport-item:last-child { border-bottom: 0; padding-bottom: 0; }
.pr-transport-icon {
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	background: #EEF0F5;
	border-radius: 14px;
	color: var(--pr-navy);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.pr-transport-icon svg { width: 26px; height: 26px; }
.pr-transport-text {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
	flex: 1;
}
.pr-transport-title {
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-transport-sub {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: #5C6478;
}
.pr-transport-badge {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: #EEF0F5;
	color: var(--pr-navy);
	border-radius: 999px;
	padding: 9px 16px;
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 14px !important;
	line-height: 1;
	white-space: nowrap;
}
.pr-transport-badge svg { flex: 0 0 15px; }
.pr-transport-empty {
	margin: 0;
	font-family: var(--pr-font-geist);
	color: #5C6478;
}

/* RIGHT panel */
.pr-nearby__right {
	display: flex;
	flex-direction: column;
	gap: 22px;
	align-self: stretch;
}

/* Navy construction-progress card */
.pr-delivery-card {
	background: var(--pr-navy);
	color: var(--pr-white);
	border-radius: 16px;
	padding: 36px 40px 30px;
	display: flex;
	flex-direction: column;
	gap: 22px;
}
.pr-delivery-card__stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}
.pr-delivery-card__stat {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.pr-delivery-card__value {
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 40px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}
.pr-delivery-card__unit {
	font-size: 24px !important;
	font-weight: 600 !important;
	vertical-align: baseline;
}
.pr-delivery-card__label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: rgba(255, 255, 255, 0.75);
}
.pr-delivery-card__bar {
	width: 100%;
	height: 6px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.22);
	overflow: hidden;
}
.pr-delivery-card__bar-fill {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: var(--pr-white);
}
.pr-delivery-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	line-height: 1.3;
	color: rgba(255, 255, 255, 0.75);
}

/* Map with "Open in Maps" overlay */
.pr-nearby__mini-map {
	position: relative;
	flex: 1;
	min-height: 330px;
	max-height: 330px;
	border-radius: 16px;
	overflow: hidden;
	background: rgba(235, 235, 235, 0.5);
}
.pr-nearby__mini-map iframe {
	width: 100%;
	height: 100%;
	min-height: 330px;
	max-height: 330px;
	border: 0;
	display: block;
}
.pr-nearby__maps-link {
	position: absolute;
	top: 16px;
	right: 16px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: var(--pr-white);
	color: var(--pr-navy);
	border-radius: 12px;
	padding: 13px 20px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 2px 10px rgba(12, 24, 67, 0.15);
	transition: box-shadow .15s ease;
}
.pr-nearby__maps-link:hover {
	color: var(--pr-navy);
	box-shadow: 0 4px 16px rgba(12, 24, 67, 0.25);
}
.pr-nearby__maps-link svg { flex: 0 0 16px; }

/* ---------- Responsive (Section 3) ---------- */
@media (max-width: 900px) {
	.pr-loc__heading { font-size: 27px !important; }
	.pr-loc__subheading { font-size: 16px !important; }
	.pr-loc__map { height: 360px; }
	/* Stack map above the gallery on tablet/mobile. The header's "Project
	   Gallery" column is hidden here; a mobile heading sits above the grid
	   instead so it stays attached to the images. */
	.pr-loc__header--split { grid-template-columns: 1fr; gap: 4px; }
	.pr-loc__header--split .pr-loc__header-col:last-child { display: none; }
	.pr-loc__gallery-heading-m { display: block; margin: 24px 0 12px; }
	.pr-loc__media--split { grid-template-columns: 1fr; }
	.pr-loc__media--split .pr-loc__map { height: 360px; }
	.pr-loc__gallery { height: auto; }
	.pr-loc__gallery-item { aspect-ratio: 4 / 3; }
	.pr-loc__address-title { font-size: 24px !important; }
	.pr-loc__divider-row { flex-direction: column; align-items: flex-start; gap: 14px; }
	.pr-btn-navy-dl { width: 100%; max-width: 280px; }

	.pr-nearby__grid { grid-template-columns: 1fr; }
	.pr-nearby__left { padding: 24px 20px; }
	.pr-transport-icon { flex: 0 0 50px; width: 50px; height: 50px; border-radius: 12px; }
	.pr-transport-icon svg { width: 24px; height: 24px; }
	.pr-transport-title { font-size: 16px !important; }
	.pr-transport-badge { padding: 8px 13px; font-size: 13px !important; }
	.pr-delivery-card { padding: 28px 26px 24px; }
	.pr-delivery-card__value { font-size: 38px !important; }
	.pr-delivery-card__unit { font-size: 20px !important; }
	.pr-nearby__mini-map { min-height: 280px; }
	.pr-nearby__mini-map iframe { min-height: 280px; }
}

@media (max-width: 600px) {
	.pr-project-location { padding: 40px 0 20px; }
	.pr-nearby-transports { padding: 20px 0 40px; }
	.pr-loc__heading { font-size: 26px !important; }
	.pr-loc__map { height: 260px; }
	.pr-loc__address-title { font-size: 22px !important; }
	.pr-nearby__heading { font-size: 20px !important; }
	.pr-transport-item { flex-wrap: wrap; }
	/*.pr-transport-badge { margin-left: 66px; }*/
	.pr-delivery-card { padding: 22px 20px; gap: 16px; }
	.pr-delivery-card__value { font-size: 30px !important; }
	.pr-delivery-card__unit { font-size: 17px !important; }
	.pr-delivery-card__stats { gap: 16px; }
	.pr-delivery-card__label { font-size: 14px !important; }
	.pr-delivery-card__meta { font-size: 13px !important; }
}

/* =====================================================
   SECTION 4 — LOCATION OVERVIEW TABLE
   ===================================================== */

.pr-location-overview { padding: 40px 0; }

.pr-lo__heading {
	margin: 0;
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 28px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-lo__subheading {
	margin: 6px 0 28px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 1.4;
	letter-spacing: -0.01em;
	color: #5D6372;
}

/* Card shell */
.pr-lo__card {
	background: var(--pr-white);
	border: 1px solid #E9EBF1;
	border-radius: 24px;
	box-shadow: 0 2px 12px rgba(12, 24, 67, 0.04);
	overflow: hidden;
}

/* Header — title + Building Index rating */
.pr-lo__card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 28px 36px;
	background: #F8F9FB;
	border-bottom: 1px solid #E9EBF1;
}
.pr-lo__title {
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 19px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-lo__index {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.pr-lo__index-label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	letter-spacing: -0.01em;
	color: #5C6478;
}
.pr-lo__index-value {
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 22px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-lo__stars {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	color: #C19A3F;
}
.pr-lo__stars svg { display: block; }

/* Body — 2 columns of rows */
.pr-lo__body {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.pr-lo__col + .pr-lo__col { border-left: 1px solid #E9EBF1; }
.pr-lo__row {
	display: flex;
	align-items: center;
	gap: 16px;
	min-height: 92px;
	padding: 20px 36px;
	border-bottom: 1px solid #E9EBF1;
}
.pr-lo__col .pr-lo__row:last-child { border-bottom: 0; }
.pr-lo__row-icon {
	flex: 0 0 22px;
	display: inline-flex;
	color: var(--pr-navy);
	opacity: .85;
}
.pr-lo__row-label {
	flex: 1;
	min-width: 0;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: #5C6478;
}
.pr-lo__row-value {
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 18px !important;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	text-align: right;
}
.pr-lo__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #F1F2F6;
	border: 1px solid #E5E7EE;
	border-radius: 10px;
	padding: 10px 16px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	white-space: nowrap;
}
.pr-lo__badge svg { flex: 0 0 14px; }

/* Footer — contractor + CTA */
.pr-lo__card-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 24px 36px;
	background: #F8F9FB;
	border-top: 1px solid #E9EBF1;
}
.pr-lo__contractor {
	display: inline-flex;
	align-items: baseline;
	gap: 10px;
}
.pr-lo__contractor-label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: #5C6478;
}
.pr-lo__contractor-value {
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 19px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-lo__cta-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: var(--pr-navy);
	color: var(--pr-white);
	border-radius: 12px;
	padding: 16px 26px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	text-decoration: none;
	transition: background .15s ease;
}
.pr-lo__cta-btn:hover,
.pr-lo__cta-btn:focus {
	background: #1a2660;
	color: var(--pr-white);
}
.pr-lo__cta-btn--disabled {
	opacity: .5;
	cursor: not-allowed;
	pointer-events: none;
}

/* Responsive */
@media (max-width: 900px) {
	.pr-lo__heading { font-size: 26px !important; }
	.pr-lo__subheading { margin-bottom: 20px; font-size: 15px !important; }
	.pr-lo__card { border-radius: 16px; }
	.pr-lo__card-head {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		padding: 20px;
	}
	.pr-lo__title { font-size: 20px !important; }
	.pr-lo__body { grid-template-columns: 1fr; }
	.pr-lo__col + .pr-lo__col { border-left: 0; }
	.pr-lo__col:first-child .pr-lo__row:last-child { border-bottom: 1px solid #E9EBF1; }
	.pr-lo__row { min-height: 0; padding: 16px 20px; }
	.pr-lo__row-label { font-size: 15px !important; }
	.pr-lo__row-value { font-size: 16px !important; }
	.pr-lo__card-foot {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
		padding: 20px;
	}
	.pr-lo__cta-btn { width: 100%; }
}

.pr-location-overview{
    padding-top:0;
}
.pr-location-overview .pr-lo__subheading {
    padding-bottom: 22px;
}

/* =====================================================
   SECTION 5 — PAYMENT SCHEDULE
   ===================================================== */

.pr-payment-schedule { padding: 40px 0 60px; }

.pr-ps__heading {
	margin: 0 0 32px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 32px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}

/* Notes (left) + cards (right) */
.pr-ps__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 3.1fr);
	gap: 40px;
	align-items: start;
}

.pr-ps__notes {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.pr-ps__notes li {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 17px !important;
	line-height: 1.45;
	letter-spacing: -0.01em;
	color: #2B3245;
}
.pr-ps__check {
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	margin-top: 1px;
	background: #E4F3E9;
	color: #3E9B57;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* Cards row */
.pr-ps__grid {
	display: grid;
	grid-template-columns: repeat(var(--pr-ps-count, 5), minmax(0, 1fr));
	gap: 22px;
}
.pr-ps__card {
	background: var(--pr-white);
	border: 1px solid #E9EBF1;
	border-radius: 16px;
	box-shadow: 0px 10px 30px 0px #0C184312;
	min-height: 250px;
	padding: 32px 18px 28px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.pr-ps__percent {
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 40px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-ps__label {
	margin-top: 14px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 1.35;
	letter-spacing: -0.01em;
	color: #5C6478;
	text-align: center;
}
.pr-ps__divider {
	width: 72%;
	margin: auto 0 16px;
	border: 0;
	height: 1px;
	background: #E9EBF1;
}
.pr-ps__milestone {
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	text-align: center;
}

/* Responsive */
@media (max-width: 1100px) {
	.pr-ps__layout { grid-template-columns: 1fr; gap: 28px; }
	.pr-ps__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
	.pr-ps__card { min-height: 210px; }
	.pr-ps__percent { font-size: 34px !important; }
}
@media (max-width: 720px) {
	.pr-ps__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pr-ps__notes li { font-size: 16px !important; }
}
@media (max-width: 480px) {
	.pr-payment-schedule { padding: 30px 0 40px; }
	.pr-ps__heading { font-size: 26px !important; margin-bottom: 20px; }
	.pr-ps__grid { grid-template-columns: 1fr; gap: 12px; }
	.pr-ps__card { min-height: 0; padding: 24px 18px 22px; }
	.pr-ps__percent { font-size: 32px !important; }
	.pr-ps__label { margin-top: 10px; }
	.pr-ps__divider { margin: 16px 0; }
	.pr-ps__notes { gap: 16px; }
	.pr-ps__notes li { font-size: 15px !important; }
}

/* =====================================================
   SECTION 6 — LIVE UNIT AVAILABILITY TABLE
   ===================================================== */

.pr-units { padding: 40px 0 60px; background: #F7F8FA; }

.pr-units__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 28px;
}
.pr-units__heading {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 28px !important;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}

.pr-units__dl-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: var(--pr-navy);
	color: var(--pr-white);
	border-radius: 10px;
	padding: 15px 22px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	text-decoration: none;
	white-space: nowrap;
	transition: background .15s ease;
}
.pr-units__dl-btn:hover,
.pr-units__dl-btn:focus { background: #1a2660; color: var(--pr-white); }
.pr-units__dl-btn--disabled {
	opacity: .5;
	cursor: not-allowed;
	pointer-events: none;
}

/* Filter bar — white rounded controls */
.pr-units__filters {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 32px;
	flex-wrap: wrap;
}
.pr-units__filter {
	position: relative;
	display: inline-flex;
	align-items: center;
	height: 46px;
	background: var(--pr-white);
	border: 1px solid #E7E9F0;
	border-radius: 14px;
}
.pr-units__filter select {
	appearance: none;
	-webkit-appearance: none;
	background: transparent;
	border: 0;
	outline: 0;
	padding: 0 40px 0 16px;
	height: 100%;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	cursor: pointer;
}
.pr-units__filter::after {
	content: '';
	position: absolute;
	right: 16px;
	top: 50%;
	width: 7px;
	height: 7px;
	border-right: 1.6px solid #8A92A6;
	border-bottom: 1.6px solid #8A92A6;
	transform: translateY(-70%) rotate(45deg);
	pointer-events: none;
}

.pr-units__search {
	flex: 1 1 320px;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 46px;
	padding: 0 16px;
	background: var(--pr-white);
	border: 1px solid #E7E9F0;
	border-radius: 14px;
	color: #8A92A6;
}
.pr-units__search svg { flex: 0 0 17px; }
.pr-units__search input {
	flex: 1;
	min-width: 0;
	height: 100%;
	border: 0;
	outline: 0;
	background: transparent;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-units__search input::placeholder { color: #8A92A6; }

.pr-units__icon-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 46px !important;
	height: 46px !important;
	background: var(--pr-white) !important;
	border: 1px solid #E7E9F0 !important;
	border-radius: 14px !important;
	box-shadow: none !important;
	padding: 0 !important;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	color: var(--pr-navy);
	flex: 0 0 auto;
	margin-left: auto;
}
.pr-units__icon-btn:hover { background: #F4F5F8 !important; }
.pr-units__icon-btn svg { display: block; flex: 0 0 auto;fill: #0C1843; }

/* Table card */
.pr-units__card {
	background: var(--pr-white);
	border: 1px solid #E8EAF2;
	border-radius: 12px;
	box-shadow: 0 2px 12px rgba(12, 24, 67, 0.04);
	overflow: hidden;
}

.pr-units__scroll { overflow-x: auto; }
.pr-units__table {
	width: 100%;
	border-collapse: collapse;
	font-family: var(--pr-font-geist);
	border:0px;
	margin-bottom: 0px;
}
.pr-units__th {
	background: #EEEFF5;
	padding: 18px 16px;
	text-align: left;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 13px !important;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #7A8294;
	white-space: nowrap;
	border:0px;
}
.pr-units__th:first-child { padding-left: 24px; }
.pr-units__th:last-child { padding-right: 24px; }

.pr-units__row { border-bottom: 1px solid #EAECF2; }
.pr-units__row:last-child { border-bottom: 0; }

.pr-units__cell {
	padding: 25px 16px;
	font-weight: 400 !important;
	font-size: 15px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: #2D2E2E;
	vertical-align: middle;
	white-space: nowrap;
	border:0px;
}
.pr-units__cell--icon { width: 150px; padding: 14px 16px 14px 56px; }
.pr-units__blueprint { display: block; color: #6E6E6E; }

.pr-units__cell--status { text-align: right; padding: 19px 24px 19px 16px; }
.pr-units__cell--status > * { vertical-align: middle; }
.pr-units__plan-link {
	display: inline-block;
	margin-right: 28px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	text-decoration: none;
}
.pr-units__plan-link:hover,
.pr-units__plan-link:focus { color: #1a2660; text-decoration: underline; }
.pr-units__check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: #ECEDF0;
	border: 1px solid #D8DAE2;
	border-radius: 6px;
	color: var(--pr-navy);
}

.pr-units__empty {
	padding: 28px;
	text-align: center;
	color: #6A7166;
	font-family: var(--pr-font-geist);
	font-size: 16px !important;
}

/* Responsive */
@media (max-width: 1100px) {
	.pr-units__filter select { font-size: 14px !important; }
	.pr-units__cell { padding: 16px 14px; }
}
@media (max-width: 900px) {
	.pr-units__header { flex-direction: column; align-items: flex-start; gap: 12px; }
	.pr-units__heading { font-size: 26px !important; }
}
/* Mobile: table → card layout (one card per unit) */
@media (max-width: 768px) {
	.pr-units__table,
	.pr-units__table tbody,
	.pr-units__row,
	.pr-units__cell {
		display: block;
		width: 100%;
	}
	.pr-units__table thead { display: none; }

	.pr-units__card {
		border: 0;
		background: transparent;
		box-shadow: none;
		border-radius: 0;
		overflow: visible;
		padding-bottom: 0;
	}
	.pr-units__scroll { overflow-x: visible; }

	.pr-units__row {
		background: var(--pr-white);
		border: 1px solid #E9EBF1;
		border-radius: 12px;
		box-shadow: 0 2px 12px rgba(12, 24, 67, 0.04);
		overflow: hidden;
	}
	.pr-units__row:not(:last-child) { margin-bottom: 16px; }

	.pr-units__cell {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
		padding: 12px 16px;
		border-bottom: 1px solid #EDEEF3;
		font-size: 15px !important;
		white-space: normal;
	}
	.pr-units__cell:last-child { border-bottom: 0; }
	.pr-units__cell::before {
		content: attr(data-label);
		font-family: var(--pr-font-geist);
		font-weight: 600 !important;
		font-size: 12px !important;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: #8A92A6;
	}
	.pr-units__cell--icon {
		width: 100%;
		justify-content: center;
		padding: 16px;
		background: #F7F8FC;
	}
	.pr-units__cell--icon::before { display: none; }
	.pr-units__cell--status { text-align: left; padding: 14px 16px; }
	.pr-units__plan-link { margin-right: 0; }
	.pr-units__check { display: none; }

	/* Filters: dropdowns wrap on mobile */
	.pr-units__filters { gap: 10px; }
	.pr-units__filter {
		flex: 1 1 calc(50% - 10px);
		height: 44px;
	}
	.pr-units__filter select {
		width: 100%;
		font-size: 13px !important;
		padding: 0 30px 0 14px;
	}
	.pr-units__search {
		flex: 1 1 100%;
		height: 44px;
		order: 1;
	}
	.pr-units__icon-btn {
		width: 44px !important;
		height: 44px !important;
		order: 2;
	}
}

@media (max-width: 480px) {
	.pr-units { padding: 20px 0 30px; }
	.pr-units__heading { font-size: 22px !important; }
	.pr-units__dl-btn { width: 100%; }
	.pr-units__filter { flex: 1 1 100%; }
	.pr-units__cell { padding: 10px 14px; font-size: 14px !important; }
}

/* =====================================================
   SECTION 7 — PROJECT INTELLIGENCE SUMMARY BAR
   ===================================================== */

.pr-intel { padding: 60px 0; background: #F7F8FA; }

.pr-intel__heading {
	margin: 0 0 36px;
	text-align: center;
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 27px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}

.pr-intel__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px 21px;
}

.pr-intel__card {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	background: var(--pr-white);
	border: 1px solid #E9ECF1;
	border-radius: 16px;
	box-shadow: 0 2px 14px rgba(12, 24, 67, 0.04);
	padding: 28px 30px;
}

.pr-intel__chip {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	background: #F0F1F4;
	border-radius: 14px;
	color: var(--pr-navy);
}
.pr-intel__chip svg { display: block; }

.pr-intel__body {
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.pr-intel__title {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	line-height: 1.4;
	color: #5D6372;
}

.pr-intel__value {
	margin-top: 6px;
	font-family: var(--pr-font-sora);
	font-weight: 700 !important;
	font-size: 21px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}

.pr-intel__note {
	margin-top: 12px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	line-height: 1.4;
	color: #7B8292;
}

/* Responsive */
@media (max-width: 1024px) {
	.pr-intel__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pr-intel__heading { font-size: 28px !important; }
}
@media (max-width: 600px) {
	.pr-intel { padding: 40px 0; }
	.pr-intel__heading { font-size: 25px !important; margin-bottom: 24px; }
	.pr-intel__grid { grid-template-columns: 1fr; gap: 14px; }
	.pr-intel__card { padding: 20px; gap: 14px; }
	.pr-intel__chip { width: 48px; height: 48px; }
	.pr-intel__value { font-size: 21px !important; }
}

/* =====================================================
   SECTION 8 — CONSTRUCTION TIMELINE
   ===================================================== */

.pr-timeline { padding: 60px 0; }

/* Navy rounded card wrapping the whole section */
.pr-timeline__card {
	background: var(--pr-navy);
	border-radius: 30px;
	padding: 42px 40px 54px;
}

.pr-timeline__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	margin-bottom: 44px;
	text-align: center;
}
.pr-timeline__pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 13px 20px;
	border: 1px solid rgba(255, 255, 255, 0.75);
	border-radius: 999px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 13px !important;
	line-height: 1;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--pr-white);
}
.pr-timeline__pill-dot {
	width: 8px;
	height: 8px;
	background: var(--pr-white);
	border-radius: 50%;
	flex: 0 0 auto;
}
.pr-timeline__heading {
	margin: 0;
	font-family: var(--pr-font-sora);
	font-weight: 400 !important;
	font-size: 45px !important;
	line-height: 1.2;
	letter-spacing: -1px;
	color: var(--pr-white);
}
.pr-timeline__empty {
	margin: 0;
	text-align: center;
	font-family: var(--pr-font-geist);
	color: rgba(255, 255, 255, 0.6);
}

/* Stage track */
.pr-timeline__track {
	display: flex;
	align-items: flex-start;
	max-width: 1064px;
	margin: 0 auto;
}
.pr-timeline__stage {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 0 0 auto;
	width: 78px;
}
.pr-timeline__connector {
	flex: 1 1 auto;
	min-width: 40px;
	height: 2px;
	margin-top: 38px;
	background: rgba(255, 255, 255, 0.85);
}
.pr-timeline__connector.is-dim { background: rgba(255, 255, 255, 0.3); }

.pr-timeline__circle {
	position: relative;
	width: 78px;
	height: 78px;
	border: 2px solid #DADCE3;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--pr-white);
}
.is-complete .pr-timeline__circle { background: #16235A; }
.is-future .pr-timeline__circle { border-color: rgba(255, 255, 255, 0.45); }

.pr-timeline__percent {
	font-family: var(--pr-font-sora);
	font-weight: 600 !important;
	font-size: 22px !important;
	line-height: 1;
	letter-spacing: -0.02em;
}
.pr-timeline__check {
	position: absolute;
	top: -3px;
	right: -3px;
	width: 26px;
	height: 26px;
	background: var(--pr-white);
	border: 3px solid var(--pr-navy);
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.pr-timeline__check svg { display: block; }

.pr-timeline__name {
	margin-top: 22px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-white);
	text-align: center;
	white-space: nowrap;
	width: max-content;
}
.pr-timeline__status {
	margin-top: 8px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 12px !important;
	line-height: 1;
	color: #97A0B8;
	text-align: center;
	white-space: nowrap;
	width: max-content;
}

/* Responsive */
@media (max-width: 1100px) {
	.pr-timeline__card { padding: 38px 32px 48px; }
	.pr-timeline__heading { font-size: 38px !important; }
}
@media (max-width: 1024px) {
	/* track is wider than the card here — let it scroll */
	.pr-timeline__track {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		justify-content: flex-start;
		padding: 6px 8px 12px;
	}
}
@media (max-width: 768px) {
	.pr-timeline { padding: 40px 0; }
	.pr-timeline__card { padding: 40px 20px 48px; border-radius: 24px; }
	.pr-timeline__header { gap: 16px; margin-bottom: 40px; }
	.pr-timeline__pill { padding: 10px 18px; font-size: 12px !important; }
	.pr-timeline__heading { font-size: 30px !important; letter-spacing: -0.5px; }
	.pr-timeline__track { overflow-x: auto; -webkit-overflow-scrolling: touch; justify-content: flex-start; padding: 6px 8px 4px; }
	.pr-timeline__connector { min-width: 64px; }
}
@media (max-width: 480px) {
	.pr-timeline__heading { font-size: 25px !important; }
	.pr-timeline__stage,
	.pr-timeline__circle { width: 66px; }
	.pr-timeline__circle { height: 66px; }
	.pr-timeline__connector { margin-top: 32px; min-width: 48px; }
	.pr-timeline__percent { font-size: 18px !important; }
	.pr-timeline__name { font-size: 13px !important; margin-top: 16px; }
	.pr-timeline__status { font-size: 11px !important; margin-top: 6px; }
	.pr-timeline__check { width: 22px; height: 22px; }
}

/* =====================================================
   SECTION 10 — MARKET ANALYTICS
   ===================================================== */

.pr-market { padding: 60px 0; background: var(--pr-white); }

/* ---------- Header row: heading + subtitle, download button ---------- */
.pr-market__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 36px;
}
.pr-market__heading {
	margin: 0 0 10px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 32px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-market__subtitle {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 1.4;
	color: #5D6372;
}
.pr-market__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	flex: 0 0 auto;
	background: var(--pr-navy);
	color: var(--pr-white);
	border-radius: 12px;
	padding: 19px 32px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	text-decoration: none;
	white-space: nowrap;
	transition: background .15s ease;
}
.pr-market__btn:hover,
.pr-market__btn:focus { background: #1a2660; color: var(--pr-white); }
.pr-market__btn.is-disabled { opacity: .5; cursor: not-allowed; pointer-events: none; }

/* ---------- 2×2 card grid ---------- */
.pr-market__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 55px 27px;
}
.pr-market__card {
	display: flex;
	flex-direction: column;
	background: var(--pr-white);
	border: 1px solid #E9ECF1;
	border-radius: 16px;
	box-shadow: 0 2px 14px rgba(12, 24, 67, 0.04);
	overflow: hidden;
}
.pr-market__card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 24px 28px;
	border-bottom: 1px solid #EEF0F5;
}
.pr-market__card-title {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 19px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-market__card-hint {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
	white-space: nowrap;
}
.pr-market__card-body {
	flex: 1 1 auto;
	padding: 28px;
}
.pr-market__empty {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-size: 14px !important;
	color: #5D6372;
}

/* ---------- Card: Area Price Trend ---------- */
.pr-market__price-row {
	display: flex;
	align-items: center;
	gap: 14px;
}
.pr-market__price {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 30px !important;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-market__change {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	color: #3C7843;
	white-space: nowrap;
}
.pr-market__caption {
	margin: 12px 0 0;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
}
.pr-market__chart { margin-top: 14px; }
.pr-market__chart-svg {
	display: block;
	width: 100%;
	height: 64px;
}
.pr-market__chart-axis {
	display: flex;
	justify-content: space-between;
	margin-top: 12px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #7B8292;
}

/* ---------- Card: Absorption Rate ---------- */
.pr-market__rate-row {
	display: flex;
	align-items: baseline;
	gap: 12px;
}
.pr-market__rate-label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
}
.pr-market__bars { margin-top: 20px; }
.pr-market__bars-row {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 29px;
	height: 71px;
}
.pr-market__bar {
	width: 53px;
	background: var(--pr-navy);
	border-radius: 6px;
}
.pr-market__bar.is-muted { background: #868C9F; }
.pr-market__bars-axis {
	display: flex;
	justify-content: space-between;
	margin-top: 12px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #7B8292;
}

/* ---------- Card: Resale Comparables ---------- */
.pr-market__card-body--list { padding: 0 28px 8px; }
.pr-market__sale {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 21px 0;
	border-bottom: 1px solid #EFF1F5;
}
.pr-market__sale:last-child { border-bottom: 0; }
.pr-market__sale-name {
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: #1C2236;
}
.pr-market__sale-detail {
	margin-top: 5px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
}
.pr-market__sale-price {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	white-space: nowrap;
}

/* ---------- Card: Price per m² Comparison ---------- */
.pr-market__cmp { margin-bottom: 21px; }
.pr-market__cmp-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 10px;
}
.pr-market__cmp-label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
}
.pr-market__cmp-value {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 16px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	white-space: nowrap;
}
.pr-market__cmp-bar {
	height: 11px;
	background: #ECEEF3;
	border-radius: 999px;
	overflow: hidden;
}
.pr-market__cmp-bar span {
	display: block;
	height: 100%;
	background: var(--pr-navy);
	border-radius: 999px;
}
.pr-market__cmp-bar span.is-muted { background: #9BA1B1; }
.pr-market__cmp-note {
	margin: 20px 0 0;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
}

/* Responsive */
@media (max-width: 1024px) {
	.pr-market__grid { grid-template-columns: 1fr; gap: 24px; }
	.pr-market__bars-row { gap: 18px; }
	.pr-market__bar { width: 44px; }
}
@media (max-width: 600px) {
	.pr-market { padding: 40px 0; }
	.pr-market__top { flex-wrap: wrap; margin-bottom: 24px; }
	.pr-market__btn { width: 100%; }
	.pr-market__heading { font-size: 25px !important; }
	.pr-market__card-head { padding: 18px 20px; }
	.pr-market__card-title { font-size: 17px !important; }
	.pr-market__card-body { padding: 20px; }
	.pr-market__card-body--list { padding: 0 20px 6px; }
	.pr-market__price { font-size: 26px !important; }
	.pr-market__bars-row { gap: 10px; }
	.pr-market__bar { width: 28px; }
	.pr-market__sale { padding: 16px 0; }
}

/* =====================================================
   SECTION 9 — DEVELOPER TRACK RECORD
   ===================================================== */

.pr-dtr { padding: 60px 0; }

/* Shared white card */
.pr-dtr__card {
	background: var(--pr-white);
	border: 1px solid #E9ECF1;
	border-radius: 20px;
	box-shadow: 0 2px 14px rgba(12, 24, 67, 0.04);
}

/* ---------- Top card: heading + 3 stat cards ---------- */
section.pr-section.pr-dtr {
    background-color: #F7F8FA;
}
.pr-dtr__card--stats {
	padding: 46px 46px 44px;
	margin-bottom: 30px;
}
.pr-dtr__heading {
	margin: 0 0 10px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 32px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-dtr__subtitle {
	margin: 0 0 32px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 1.4;
	color: #5D6372;
	padding-bottom: 28px;
}

.pr-dtr__stats-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.3fr);
	gap: 28px;
}
.pr-dtr__stat-card {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 30px;
	border: 1px solid #E9ECF1;
	border-radius: 12px;
}
.pr-dtr__stat-chip {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	background: #F0F1F4;
	border-radius: 16px;
	color: var(--pr-navy);
}
.pr-dtr__stat-num {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 40px !important;
	line-height: 1.1;
	color: var(--pr-navy);
}
.pr-dtr__stat-label {
	margin-top: 12px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	line-height: 1.35;
	color: #5D6372;
}

/* Right stat card: two progress meters */
.pr-dtr__stat-card--meters {
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	gap: 26px;
}
.pr-dtr__meter-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 16px;
}
.pr-dtr__meter-label {
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 18px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-dtr__meter-value {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 28px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	white-space: nowrap;
}
.pr-dtr__meter-bar {
	height: 10px;
	background: #ECEEF3;
	border-radius: 999px;
	overflow: hidden;
}
.pr-dtr__meter-bar span {
	display: block;
	height: 100%;
	background: var(--pr-navy);
	border-radius: 999px;
}
.pr-dtr__meter-note {
	margin-top: 14px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #5D6372;
}

/* ---------- Bottom 2-col ---------- */
.pr-dtr__bottom {
	display: grid;
	grid-template-columns: minmax(0, 684fr) minmax(0, 589fr);
	gap: 34px;
	align-items: start;
}

/* Navy download buttons */
.pr-dtr__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	background: var(--pr-navy);
	color: var(--pr-white);
	border-radius: 12px;
	padding: 20px 32px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1;
	letter-spacing: -0.01em;
	text-decoration: none;
	white-space: nowrap;
	transition: background .15s ease;
}
.pr-dtr__btn:hover,
.pr-dtr__btn:focus { background: #1a2660; color: var(--pr-white); }
.pr-dtr__btn--block { width: 100%; }
.pr-dtr__btn.is-disabled { opacity: .5; cursor: not-allowed; pointer-events: none; }

/* LEFT card: map + meta + analytics */
.pr-dtr__left { overflow: hidden; }

.pr-dtr__map {
	width: 100%;
	height: 407px;
	background: #EAEEF3;
}
.pr-dtr__map iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}
.pr-dtr__map-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #6E7691;
	font-family: var(--pr-font-geist);
	font-size: 14px !important;
	text-align: center;
	padding: 20px;
}

.pr-dtr__map-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 24px 28px;
	border-bottom: 1px solid #E9ECF1;
}
.pr-dtr__map-title {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-dtr__map-addr {
	margin-top: 5px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #5D6372;
}

/* Area analytics */
.pr-dtr__analytics { padding: 28px; background: #F7F8FA; }
.pr-dtr__analytics-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 26px;
}
.pr-dtr__analytics-title {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 20px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-dtr__growth {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	color: var(--pr-navy);
	white-space: nowrap;
}

.pr-dtr__analytics-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 14px;
}
.pr-dtr__astat-value {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 28px !important;
	letter-spacing: -0.01em;
	line-height: 1.15;
	color: var(--pr-navy);
}
.pr-dtr__astat-label {
	margin-top: 6px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #5D6372;
}

.pr-dtr__chart { margin-bottom: 22px; }
.pr-dtr__chart-svg {
	display: block;
	width: 100%;
	height: 64px;
}
.pr-dtr__chart-axis {
	display: flex;
	justify-content: space-between;
	margin-top: 12px;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #9A9FAC;
}

/* RIGHT card: address + infrastructure */
.pr-dtr__right { padding: 30px; }

.pr-dtr__right-title {
	margin: 0 0 20px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 28px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-dtr__overline {
	margin-bottom: 16px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 13px !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #5D6372;
}
/* The infrastructure overline (after the divider) is a step lighter */
.pr-dtr__divider ~ .pr-dtr__overline { color: #7B8292; }
.pr-dtr__address {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--pr-font-geist);
	font-weight: 500 !important;
	font-size: 18px !important;
	letter-spacing: -0.01em;
	color: #1C2236;
}
.pr-dtr__address-pin {
	flex: 0 0 auto;
	display: inline-flex;
	color: #AA8A46;
}
.pr-dtr__divider {
	height: 1px;
	background: #E9ECF1;
	margin: 24px -30px; /* full-bleed across the card */
}

.pr-dtr__infra {
	list-style: none;
	margin: 0;
	padding: 0;
}
.pr-dtr__infra-row {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 19px 0;
	border-bottom: 1px solid #EFF1F5;
}
.pr-dtr__infra-row:last-child { border-bottom: 0; padding-bottom: 4px; }
.pr-dtr__infra-chip {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	background: #F0F1F4;
	border-radius: 12px;
	color: var(--pr-navy);
}
.pr-dtr__infra-text {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.pr-dtr__infra-name {
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}
.pr-dtr__infra-detail {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 15px !important;
	color: #5D6372;
}
.pr-dtr__infra-pill {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 36px;
	padding: 0 16px;
	background: #F7F8FA;
	border-radius: 999px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	color: #1C2236;
	white-space: nowrap;
}
.pr-dtr__infra-pill svg { color: #7B8292; }
.pr-dtr__infra-empty {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-size: 14px !important;
	color: #6E7691;
}

/* Responsive */
@media (max-width: 1100px) {
	.pr-dtr__stats-grid { grid-template-columns: 1fr; gap: 16px; }
	.pr-dtr__bottom { grid-template-columns: 1fr; }
	.pr-dtr__map { height: 340px; }
}
@media (max-width: 768px) {
	.pr-dtr { padding: 40px 0; }
	.pr-dtr__card--stats { padding: 24px 20px 28px; margin-bottom: 20px; }
	.pr-dtr__heading { font-size: 25px !important; }
	.pr-dtr__subtitle { font-size: 14px !important; margin-bottom: 20px; }
	.pr-dtr__stat-card { padding: 18px; gap: 14px; }
	.pr-dtr__stat-chip { width: 48px; height: 48px; }
	.pr-dtr__stat-num { font-size: 32px !important; }
	.pr-dtr__stat-label { margin-top: 6px; }
	.pr-dtr__meter-value { font-size: 24px !important; }
	.pr-dtr__bottom { gap: 20px; }
	.pr-dtr__map { height: 260px; }
	.pr-dtr__map-row { flex-wrap: wrap; padding: 18px 20px; }
	.pr-dtr__map-row .pr-dtr__btn { width: 100%; }
	.pr-dtr__analytics { padding: 20px; }
	.pr-dtr__astat-value { font-size: 24px !important; }
	.pr-dtr__right { padding: 20px; }
	.pr-dtr__right-title { font-size: 23px !important; }
	.pr-dtr__divider { margin: 24px -20px; }
	.pr-dtr__infra-row { flex-wrap: wrap; }
	.pr-dtr__infra-pill { margin-left: 60px; }
}

/* =====================================================
   SECTION 11 — BUILDING DETAILS
   ===================================================== */

.pr-building-details { padding: 60px 0; background: var(--pr-white); }

.pr-bd__heading {
	margin: 0 0 36px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 27px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}

/* One rounded card holding the two spec tables */
.pr-bd__card {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	background: var(--pr-white);
	border: 1px solid #E9ECF1;
	border-radius: 16px;
	box-shadow: 0 2px 14px rgba(12, 24, 67, 0.04);
	overflow: hidden;
}
.pr-bd__table { min-width: 0; }
.pr-bd__table + .pr-bd__table { border-left: 1px solid #EEF0F5; }

.pr-bd__row {
	min-height: 64px;
	padding: 14px 34px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	border-bottom: 1px solid #EEF0F5;
}
.pr-bd__table .pr-bd__row:last-child { border-bottom: 0; }

.pr-bd__row--head {
	background: #F7F8FA;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 17px !important;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
}

.pr-bd__label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 1.4;
	color: #5D6372;
	min-width: 0;
}
.pr-bd__value {
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 17px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-navy);
	text-align: right;
	white-space: nowrap;
}

/* Responsive */
@media (max-width: 900px) {
	.pr-bd__heading { font-size: 26px !important; margin-bottom: 24px; }
	.pr-bd__card { grid-template-columns: 1fr; }
	.pr-bd__table + .pr-bd__table { border-left: 0; border-top: 1px solid #EEF0F5; }
	.pr-bd__row { min-height: 56px; padding: 12px 20px; }
}
@media (max-width: 600px) {
	.pr-building-details { padding: 40px 0; }
	.pr-bd__label { font-size: 15px !important; }
	.pr-bd__value { font-size: 16px !important; white-space: normal; }
}

/* =====================================================
   SECTION 12 + 13 — DEVELOPER PROFILE + BANK PARTNERS
   ===================================================== */

.pr-dev { padding: 60px 0; background: #F7F8FA; }

/* Navy band card */
.pr-dev__card {
	background: var(--pr-navy);
	border-radius: 24px;
	padding: 50px;
	color: var(--pr-white);
}

/* Header: icon chip + name + tagline */
.pr-dev__header {
	display: flex;
	align-items: center;
	gap: 16px;
}
.pr-dev__chip {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	background: #242F56;
	border-radius: 18px;
	color: var(--pr-white);
}
.pr-dev__name {
	margin: 0;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 30px !important;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}
.pr-dev__tagline {
	margin: 6px 0 0;
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #9EA3B4;
}

/* Dividers */
.pr-dev__divider {
	height: 1px;
	background: #2E385D;
	margin: 38px 0;
}
.pr-dev__divider--soft { background: #222C54; }

/* Stats: 4 columns with meter underlines */
.pr-dev__stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 30px;
}
.pr-dev__stat {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.pr-dev__stat-label {
	font-family: var(--pr-font-geist);
	font-weight: 400 !important;
	font-size: 14px !important;
	color: #9EA3B4;
}
.pr-dev__stat-value {
	margin-top: 14px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 30px !important;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--pr-white);
	white-space: nowrap;
}
.pr-dev__stat-meter {
	display: block;
	margin-top: 26px;
	height: 3px;
	background: #2E385D;
	border-radius: 999px;
	overflow: hidden;
}
.pr-dev__stat-meter span {
	display: block;
	height: 100%;
	background: var(--pr-white);
	border-radius: 999px;
}

/* Bank Partners */
.pr-dev__banks-title {
	margin: 0 0 18px;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 14px !important;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}
.pr-dev__banks-row {
	display: flex;
	align-items: center;
	gap: 15px;
	flex-wrap: wrap;
}
.pr-dev__bank {
	display: inline-flex;
	align-items: center;
	gap: 13px;
	height: 50px;
	padding: 0 20px;
	background: #1D2850;
	border: 1px solid #333D62;
	border-radius: 12px;
	white-space: nowrap;
}
.pr-dev__bank-badge {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 7px;
	font-family: var(--pr-font-geist);
	font-weight: 700 !important;
	font-size: 12px !important;
	color: var(--pr-white);
}
.pr-dev__bank-name {
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	color: var(--pr-white);
}

/* Responsive */
@media (max-width: 1024px) {
	.pr-dev__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 30px; }
}
@media (max-width: 600px) {
	.pr-dev { padding: 40px 0; }
	.pr-dev__card { padding: 28px 24px; border-radius: 18px; }
	.pr-dev__chip { width: 54px; height: 54px; border-radius: 14px; }
	.pr-dev__name { font-size: 24px !important; }
	.pr-dev__divider { margin: 26px 0; }
	.pr-dev__stats { grid-template-columns: 1fr; gap: 22px; }
	.pr-dev__stat-value { margin-top: 8px; font-size: 26px !important; }
	.pr-dev__stat-meter { margin-top: 14px; }
	.pr-dev__bank { height: 46px; padding: 0 16px; }
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

/* Tablet: right card flows below the left column */
@media (max-width: 1100px) {
	.pr-hero__title { font-size: 42px !important; }
	/* tiles narrow down — let labels wrap instead of overflowing */
	.pr-hero-tile__head { white-space: normal; }
	.pr-hero-tile__head span { min-width: 0; }
	.pr-hero__card {
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
		max-width: 455px;
		margin-top: 28px;
	}
	.pr-hero__left {
		width: 100%;
		max-width: none;
	}
}

/* Mobile */
@media (max-width: 600px) {
	.pr-hero__wrap { padding: 32px 0 36px; }
	.pr-hero__badge { height: 36px; padding: 0 18px; font-size: 13px !important; }
	.pr-hero__title { font-size: 32px !important; }
	.pr-hero__location { font-size: 16px !important; gap: 10px; }
	.pr-hero-tiles { grid-template-columns: 1fr; }
	.pr-hero-tile { min-height: 0; }
	.pr-hero-tile + .pr-hero-tile { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.45); }
	.pr-hero-price__value { font-size: 26px !important; }
	.pr-hero-zoning { display: flex; flex-direction: column; }
	.pr-hero-zoning__seg { min-height: 0; padding: 12px 16px; justify-content: space-between; }
	.pr-hero-zoning__seg + .pr-hero-zoning__seg { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.45); }

	.pr-hero__card { width: 100%; max-width: none; padding: 20px; }
	.pr-rcard__title { font-size: 18px !important; margin-bottom: 18px; }
	.pr-rcard__row-label, .pr-rcard__row-value { font-size: 15px !important; padding: 0 12px; }
	.pr-hero-strip { gap: 16px; }
	.pr-hero-strip__item { font-size: 13px !important; }
}

/* =====================================================
   STICKY SECTION NAV
   Appears after the hero scrolls past; fixed at top.
   Visibility + active state driven by project-redesign.js.
   ===================================================== */
.pr-stickynav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: var(--pr-white);
	border-bottom: 1px solid #E9ECF1;
	box-shadow: 0 2px 14px rgba(12, 24, 67, 0.06);
	/* Hidden until JS adds .is-visible — kept measurable (no display:none). */
	transform: translateY(-100%);
	opacity: 0;
	visibility: hidden;
	transition: transform .28s ease, opacity .28s ease, visibility .28s ease;
}
.pr-stickynav.is-visible {
	transform: none;
	opacity: 1;
	visibility: visible;
}

.pr-stickynav__inner {
	width: min(var(--pr-container-max), calc(100% - 40px));
	max-width: max-content;
	margin: 0 auto;
	display: flex;
	align-items: stretch;
	gap: 4px;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;          /* Firefox */
	-ms-overflow-style: none;       /* IE/Edge */
	scroll-behavior: smooth;
}
.pr-stickynav__inner::-webkit-scrollbar { display: none; }

.pr-stickynav__link {
	display: inline-flex;
	align-items: center;
	height: 60px;
	padding: 0 16px;
	flex: 0 0 auto;
	font-family: var(--pr-font-geist);
	font-weight: 600 !important;
	font-size: 15px !important;
	letter-spacing: -0.01em;
	line-height: 1;
	white-space: nowrap;
	color: #5D6372;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: color .2s ease, border-color .2s ease;
}
.pr-stickynav__link:hover,
.pr-stickynav__link:focus-visible {
	color: var(--pr-navy);
}
.pr-stickynav__link.is-active {
	color: var(--pr-navy);
	border-bottom-color: var(--pr-navy);
	font-weight: 700 !important;
}

/* Offset anchored jumps for the fixed bar (hash deep-links). */
.pr-project-wrapper [data-pr-section] { scroll-margin-top: 72px; }

@media (max-width: 1024px) {
	.pr-stickynav__link { height: 54px; padding: 0 13px; font-size: 14px !important; }
	.pr-project-wrapper [data-pr-section] { scroll-margin-top: 64px; }
}
@media (max-width: 600px) {
	.pr-stickynav__inner { width: 100%; padding: 0 12px; }
	.pr-stickynav__link { height: 50px; padding: 0 11px; font-size: 13.5px !important; }
}
