/* Community Insights section, scoped to #pch-ci so nothing leaks into the theme.
   Follows the live site: Roboto, #222 headings, #5c727d text, #49caef accent.
   The scorecard sits on a deep-blue band (the footer's blue, darkened) so the
   key numbers read first. Resets use :where() to stay at ID-level specificity. */

#pch-ci {
	--pch-ink: #222222;
	--pch-text: #5c727d;
	--pch-link: #08729a;
	--pch-accent: #49caef;
	--pch-rule: #e3eaee;
	--pch-soft: #f4f7f9;
	--pch-dot: #8aa0ad;
	--pch-surface: #ffffff;
	--pch-good: #0b7a3e;
	--pch-good-bg: #e5f4ea;
	--pch-bad: #b3261e;
	--pch-bad-bg: #fbeceb;
	--pch-night: #10223a;
	--pch-night-2: #1c3d66;
	--pch-on-night: #ffffff;
	--pch-on-night-2: #a9bfcd;
	--pch-good-night: #6ee7a8;
	--pch-bad-night: #ff9d92;

	display: block;
	clear: both;
	box-sizing: border-box;
	width: 100%;
	margin: 44px 0 24px;
	padding: 0;
	font-family: Roboto, system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.55;
	color: var(--pch-text);
	text-align: left;
	-webkit-font-smoothing: antialiased;
}
#pch-ci :where(*, *::before, *::after) { box-sizing: border-box; border-width: 0; border-style: solid; border-color: var(--pch-rule); }
#pch-ci :where(h2, h3, h4, p, ul, ol, li, dl, dt, dd, figure, table, details, summary) { margin: 0; padding: 0; }
#pch-ci :where(h2, h3, h4) { font-family: inherit; color: var(--pch-ink); text-transform: none; letter-spacing: normal; font-style: normal; }
#pch-ci :where(ul, ol, li) { list-style: none; }
#pch-ci :where(li)::before, #pch-ci :where(li)::after { content: none; }
#pch-ci :where(dt, dd) { float: none; font-weight: inherit; }
#pch-ci :where(summary) { background: none; border-width: 0; }
#pch-ci :where(a) { color: var(--pch-link); text-decoration: none; box-shadow: none; background: none; }
#pch-ci :where(a:hover) { text-decoration: underline; text-underline-offset: 3px; }
#pch-ci :where(button) {
	font: inherit; color: inherit; background: none; border-width: 0; border-radius: 0; margin: 0; padding: 0;
	cursor: pointer; text-transform: none; letter-spacing: normal; box-shadow: none; line-height: inherit;
	min-height: 0; width: auto; height: auto; text-align: inherit;
}
#pch-ci :where(img) { display: block; max-width: 100%; height: auto; border-width: 0; box-shadow: none; border-radius: 0; padding: 0; margin: 0; }
#pch-ci :where(table) { border-collapse: collapse; border-width: 0; width: 100%; background: none; margin: 0; }
#pch-ci :where(th, td) { border-width: 0; background: none; padding: 0; text-align: left; vertical-align: middle; }
#pch-ci :where(svg) { display: block; overflow: visible; max-width: none; height: auto; border-width: 0; margin: 0; }
#pch-ci :where(a, button, summary, [tabindex]):focus-visible { outline: 2px solid var(--pch-link); outline-offset: 2px; border-radius: 4px; }
#pch-ci [hidden] { display: none !important; }
#pch-ci .pch-ci-sr {
	position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
#pch-ci .pch-ci-arrow { display: inline-block; width: .62em; height: .62em; margin-right: .28em; vertical-align: .08em; }

/* ── Badges (direction: green = cheaper for the buyer, red = pricier) ── */
#pch-ci .pch-ci-badge {
	display: inline-flex; align-items: center; gap: 0; padding: 2px 8px; border-radius: 999px;
	font-size: 12px; font-weight: 500; line-height: 1.5; white-space: nowrap; font-variant-numeric: tabular-nums;
}
#pch-ci .pch-ci-badge.is-good { color: var(--pch-good); background: var(--pch-good-bg); }
#pch-ci .pch-ci-badge.is-bad { color: var(--pch-bad); background: var(--pch-bad-bg); }
#pch-ci .pch-ci-badge.is-even { color: var(--pch-text); background: var(--pch-soft); }

/* ── Hero band: title, lede and scorecard ── */
#pch-ci .pch-ci-hero {
	position: relative; overflow: hidden; padding: 26px 26px 24px; border-radius: 14px; color: var(--pch-on-night-2);
	background:
		radial-gradient(520px 220px at 92% -20%, rgba(73, 202, 239, .28), transparent 70%),
		linear-gradient(rgba(73, 202, 239, .05) 1px, transparent 1px) 0 0 / 28px 28px,
		linear-gradient(90deg, rgba(73, 202, 239, .05) 1px, transparent 1px) 0 0 / 28px 28px,
		linear-gradient(135deg, var(--pch-night) 0%, #15304f 55%, var(--pch-night-2) 100%);
}
#pch-ci .pch-ci-eyebrow { font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--pch-accent); }
#pch-ci .pch-ci-title { margin-top: 4px; font-size: 27px; line-height: 1.2; font-weight: 500; color: var(--pch-on-night); text-wrap: balance; }
#pch-ci .pch-ci-lede { margin-top: 8px; max-width: 78ch; font-size: 15px; line-height: 1.6; color: #cfdce5; }
#pch-ci .pch-ci-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin-top: 20px; }
#pch-ci .pch-ci-kpi {
	display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 14px 16px 13px; border-radius: 10px;
	background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .11);
}
#pch-ci .pch-ci-kpi dt { font-size: 11.5px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--pch-on-night-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#pch-ci .pch-ci-kpi-value { font-size: 30px; line-height: 1.1; font-weight: 600; color: var(--pch-on-night); font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
#pch-ci .pch-ci-kpi-value small { font-size: 15px; font-weight: 500; color: var(--pch-on-night-2); letter-spacing: 0; }
#pch-ci .pch-ci-kpi-value .is-good { color: var(--pch-good-night); }
#pch-ci .pch-ci-kpi-value .is-bad { color: var(--pch-bad-night); }
#pch-ci .pch-ci-kpi-viz { margin-top: 2px; }
#pch-ci .pch-ci-kpi-sub { margin-top: auto; padding-top: 4px; font-size: 12.5px; line-height: 1.4; color: var(--pch-on-night-2); }
#pch-ci .pch-ci-kpi-sub .pch-ci-badge.is-good { color: var(--pch-good-night); background: rgba(110, 231, 168, .14); }
#pch-ci .pch-ci-kpi-sub .pch-ci-badge.is-bad { color: var(--pch-bad-night); background: rgba(255, 157, 146, .15); }
#pch-ci .pch-ci-kpi-sub .pch-ci-badge.is-even { color: var(--pch-on-night); background: rgba(255, 255, 255, .1); }

/* Range bar (prices or sizes): a tick per plan, the lowest glows. */
#pch-ci .pch-ci-range { position: relative; display: block; height: 34px; margin: 0 5px; }
#pch-ci .pch-ci-range-track { position: absolute; left: 0; right: 0; top: 7px; height: 4px; border-radius: 2px; background: rgba(255, 255, 255, .16); }
#pch-ci .pch-ci-range-tick { position: absolute; top: 3px; width: 2px; height: 12px; margin-left: -1px; border-radius: 1px; background: rgba(255, 255, 255, .7); }
#pch-ci .pch-ci-range-tick.is-low { top: 2px; width: 12px; height: 12px; margin-left: -6px; border-radius: 50%; background: var(--pch-accent); box-shadow: 0 0 0 3px rgba(73, 202, 239, .28), 0 0 12px rgba(73, 202, 239, .6); }
#pch-ci .pch-ci-range-lo, #pch-ci .pch-ci-range-hi, #pch-ci .pch-ci-strip-lo, #pch-ci .pch-ci-strip-hi {
	position: absolute; bottom: 0; font-size: 11px; line-height: 1; color: var(--pch-on-night-2); font-variant-numeric: tabular-nums;
}
#pch-ci .pch-ci-range-lo, #pch-ci .pch-ci-strip-lo { left: -5px; }
#pch-ci .pch-ci-range-hi, #pch-ci .pch-ci-strip-hi { right: -5px; }

/* Mini bars: $/sq ft here vs city and county. */
#pch-ci .pch-ci-bars { display: grid; gap: 5px; }
#pch-ci .pch-ci-bars-row { display: grid; grid-template-columns: 66px minmax(0, 1fr) 38px; align-items: center; gap: 8px; font-size: 11.5px; line-height: 1.2; }
#pch-ci .pch-ci-bars-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--pch-on-night-2); }
#pch-ci .pch-ci-bars-track { display: block; height: 6px; }
#pch-ci .pch-ci-bars-fill { display: block; height: 6px; border-radius: 0 3px 3px 0; background: rgba(255, 255, 255, .38); }
#pch-ci .pch-ci-bars-value { text-align: right; color: var(--pch-on-night); font-variant-numeric: tabular-nums; }
#pch-ci .is-here .pch-ci-bars-label { color: var(--pch-on-night); font-weight: 500; }
#pch-ci .is-here .pch-ci-bars-fill { background: var(--pch-accent); box-shadow: 0 0 10px rgba(73, 202, 239, .5); }

/* Sparkline: average price vs each model's first tracked price. */
#pch-ci .pch-ci-spark { position: relative; display: block; height: 34px; color: var(--pch-accent); }
#pch-ci .pch-ci-spark svg { width: 100%; height: 34px; }
#pch-ci .pch-ci-spark-area { fill: rgba(73, 202, 239, .16); }
#pch-ci .pch-ci-spark.is-flat { color: rgba(255, 255, 255, .35); }
#pch-ci .pch-ci-spark-end { position: absolute; right: -4px; width: 9px; height: 9px; margin-top: -4.5px; border-radius: 50%; background: var(--pch-accent); box-shadow: 0 0 0 3px rgba(73, 202, 239, .25); }

/* Dot strip: every priced community in the city by $/sq ft. */
#pch-ci .pch-ci-strip { position: relative; display: block; height: 34px; margin: 0 6px; }
#pch-ci .pch-ci-strip-line { position: absolute; left: 0; right: 0; top: 8px; height: 2px; background: rgba(255, 255, 255, .16); }
#pch-ci .pch-ci-strip-dot { position: absolute; top: 5px; width: 8px; height: 8px; margin-left: -4px; border-radius: 50%; background: rgba(255, 255, 255, .4); }
#pch-ci .pch-ci-strip-dot.is-here { top: 2px; width: 14px; height: 14px; margin-left: -7px; z-index: 1; background: var(--pch-accent); box-shadow: 0 0 0 3px rgba(73, 202, 239, .28), 0 0 12px rgba(73, 202, 239, .6); }

/* ── Content blocks ── */
#pch-ci .pch-ci-block { margin-top: 34px; scroll-margin-top: 90px; }
#pch-ci .pch-ci-head, #pch-ci .pch-ci-carousel-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
#pch-ci .pch-ci-head > div, #pch-ci .pch-ci-carousel-head > div { min-width: 0; }
#pch-ci h3 { font-size: 20px; line-height: 1.3; font-weight: 500; }
#pch-ci h4 { font-size: 15px; line-height: 1.35; font-weight: 500; }
#pch-ci .pch-ci-sub { margin-top: 2px; font-size: 13.5px; line-height: 1.45; max-width: 72ch; }
#pch-ci .pch-ci-note { margin-top: 10px; font-size: 13px; }
#pch-ci .pch-ci-muted { font-size: 13px; color: var(--pch-text); }
#pch-ci .pch-ci-kicker { font-size: 11.5px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }

/* ── Carousels ── */
#pch-ci .pch-ci-arrows { display: flex; flex: none; gap: 6px; }
#pch-ci .pch-ci-arrows button {
	display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%;
	border: 1px solid var(--pch-rule); background: var(--pch-surface); color: var(--pch-ink); transition: border-color .15s, opacity .15s;
}
#pch-ci .pch-ci-arrows button:hover:not(:disabled) { border-color: var(--pch-accent); }
#pch-ci .pch-ci-arrows button:disabled { opacity: .35; cursor: default; }
#pch-ci .pch-ci-track {
	position: relative; display: flex; gap: 12px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; overscroll-behavior-x: contain;
	scrollbar-width: none; padding: 2px 1px 6px; margin: -2px -1px 0;
}
#pch-ci .pch-ci-track::-webkit-scrollbar { display: none; }
#pch-ci .pch-ci-track > li { position: relative; flex: 0 0 auto; scroll-snap-align: start; }
#pch-ci .is-scrollable.at-start .pch-ci-track { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 56px), transparent); }
#pch-ci .is-scrollable.at-end .pch-ci-track { -webkit-mask-image: linear-gradient(90deg, transparent, #000 56px); mask-image: linear-gradient(90deg, transparent, #000 56px); }
#pch-ci .is-scrollable:not(.at-start):not(.at-end) .pch-ci-track { -webkit-mask-image: linear-gradient(90deg, transparent, #000 56px, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(90deg, transparent, #000 56px, #000 calc(100% - 56px), transparent); }

/* ── Price history ── */
#pch-ci .pch-ci-chart {
	position: relative; min-height: 200px; padding: 12px 14px 6px; border: 1px solid var(--pch-rule);
	border-radius: 10px; background: var(--pch-surface);
}
#pch-ci .pch-ci-chart-note { font-size: 13px; margin-bottom: 4px; color: var(--pch-ink); }
#pch-ci .pch-ci-chart svg text { font-family: inherit; font-size: 11px; fill: var(--pch-text); }
#pch-ci .pch-ci-chart .pch-ci-axis-strong { fill: var(--pch-ink); font-weight: 500; }
#pch-ci .pch-ci-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; transition: stroke-width .15s; }
#pch-ci .pch-ci-series { transition: opacity .15s; }
#pch-ci .pch-ci-chart.has-focus .pch-ci-series { opacity: .14; }
#pch-ci .pch-ci-chart.has-focus .pch-ci-series.is-focus { opacity: 1; }
#pch-ci .pch-ci-chart.has-focus .pch-ci-series.is-focus .pch-ci-line { stroke-width: 3; }
#pch-ci .pch-ci-tip {
	position: absolute; z-index: 3; pointer-events: none; min-width: 120px; max-width: 220px; padding: 7px 10px;
	border-radius: 6px; background: #222; color: #fff; font-size: 12px; line-height: 1.45;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .18); transform: translate(-50%, calc(-100% - 12px)); white-space: normal;
}
#pch-ci .pch-ci-tip b { display: block; font-weight: 500; font-size: 13px; }
#pch-ci .pch-ci-tip span { color: #d7e0e5; }

#pch-ci .pch-ci-legend { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
#pch-ci .pch-ci-key {
	display: inline-flex; align-items: center; gap: 7px; padding: 5px 10px; min-height: 32px;
	border: 1px solid var(--pch-rule); border-radius: 999px; background: var(--pch-surface);
	font-size: 13px; line-height: 1.2; color: var(--pch-ink);
}
#pch-ci .pch-ci-key:hover { border-color: var(--pch-dot); }
#pch-ci .pch-ci-key[aria-pressed="true"] { border-color: var(--pch-ink); background: var(--pch-soft); }
#pch-ci .pch-ci-key-price { color: var(--pch-text); font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-swatch { display: inline-block; flex: none; width: 16px; height: 3px; border-radius: 2px; background: var(--pch-c, #8aa0ad); vertical-align: middle; }
#pch-ci .pch-ci-swatch.is-dashed { background: repeating-linear-gradient(90deg, var(--pch-c) 0 5px, transparent 5px 8px); }

#pch-ci .pch-ci-carousel--changes { margin-top: 18px; }
#pch-ci .pch-ci-carousel--changes .pch-ci-carousel-head { align-items: center; margin-bottom: 8px; }
#pch-ci .pch-ci-chg {
	display: grid; gap: 2px; width: 188px; padding: 11px 14px 10px; border: 1px solid var(--pch-rule); border-radius: 10px;
	background: var(--pch-surface); font-size: 13px; line-height: 1.35;
}
#pch-ci .pch-ci-chg-model { display: flex; align-items: center; gap: 7px; min-width: 0; }
#pch-ci .pch-ci-chg-model a { font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#pch-ci .pch-ci-chg-amt { margin-top: 4px; font-size: 22px; line-height: 1.15; font-weight: 600; color: var(--pch-ink); font-variant-numeric: tabular-nums; white-space: nowrap; }
#pch-ci .is-cut .pch-ci-chg-amt { color: var(--pch-good); }
#pch-ci .is-increase .pch-ci-chg-amt { color: var(--pch-bad); }
#pch-ci .is-priced .pch-ci-chg-amt, #pch-ci .is-removed .pch-ci-chg-amt { font-size: 18px; padding-block: 2px 1px; }
#pch-ci .is-removed .pch-ci-chg-amt { color: var(--pch-text); }
#pch-ci .pch-ci-chg-now { color: var(--pch-ink); font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-chg time { font-size: 12px; }

#pch-ci details > summary { display: inline-block; cursor: pointer; color: var(--pch-link); font-size: 13.5px; font-weight: 500; list-style: none; }
#pch-ci details > summary::-webkit-details-marker { display: none; }
#pch-ci details > summary::before { content: "+"; display: inline-block; width: 14px; font-weight: 400; }
#pch-ci details[open] > summary::before { content: "–"; }
#pch-ci .pch-ci-table { margin-top: 10px; }
#pch-ci .pch-ci-table-scroll { margin-top: 8px; overflow-x: auto; }
#pch-ci .pch-ci-table table { min-width: 460px; font-size: 14px; font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-table th, #pch-ci .pch-ci-table td { padding: 7px 12px 7px 0; border-bottom: 1px solid var(--pch-rule); white-space: nowrap; }
#pch-ci .pch-ci-table thead th { font-size: 12px; font-weight: 500; color: var(--pch-text); }
#pch-ci .pch-ci-table tbody th { font-weight: 500; }

/* ── Same plan, other communities ── */
#pch-ci .pch-ci-carousel--plans .pch-ci-track { align-items: stretch; }
#pch-ci .pch-ci-plan-sum {
	display: flex; flex-direction: column; justify-content: center; gap: 6px; width: 210px; padding: 18px; border-radius: 12px;
	color: var(--pch-on-night-2); background: radial-gradient(240px 160px at 100% 0, rgba(73, 202, 239, .25), transparent 70%), linear-gradient(150deg, var(--pch-night), var(--pch-night-2));
}
#pch-ci .pch-ci-plan-sum .pch-ci-kicker { color: var(--pch-accent); }
#pch-ci .pch-ci-sum-big { font-size: 46px; line-height: 1; font-weight: 600; color: var(--pch-on-night); font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
#pch-ci .pch-ci-sum-big .pch-ci-arrow { width: .42em; height: .42em; vertical-align: .2em; }
#pch-ci .pch-ci-plan-sum.is-bad .pch-ci-arrow { color: var(--pch-bad-night); }
#pch-ci .pch-ci-plan-sum.is-good .pch-ci-arrow { color: var(--pch-good-night); }
#pch-ci .pch-ci-sum-text { font-size: 13.5px; line-height: 1.45; color: #cfdce5; }

#pch-ci .pch-ci-plan {
	display: flex; flex-direction: column; gap: 6px; width: 290px; padding: 14px 16px 12px; border: 1px solid var(--pch-rule);
	border-radius: 12px; background: var(--pch-surface);
}
#pch-ci .pch-ci-plan-top { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
#pch-ci .pch-ci-plan-top h4 { font-size: 18px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#pch-ci .pch-ci-plan-here { flex: none; font-size: 14px; font-weight: 500; color: var(--pch-ink); font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-plan-spec { font-size: 12.5px; }
#pch-ci .pch-ci-plan-stat { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 7px; margin-top: 4px; font-size: 13px; line-height: 1.35; }
#pch-ci .pch-ci-plan-stat strong { font-size: 24px; line-height: 1.1; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--pch-ink); }
#pch-ci .pch-ci-plan-stat.is-bad strong { color: var(--pch-bad); }
#pch-ci .pch-ci-plan-stat.is-good strong { color: var(--pch-good); font-size: 20px; }
#pch-ci .pch-ci-ladder { position: relative; height: 44px; margin: 4px 8px 0; }
#pch-ci .pch-ci-ladder-track { position: absolute; left: 0; right: 0; top: 21px; height: 2px; border-radius: 2px; background: var(--pch-rule); }
#pch-ci .pch-ci-ladder-dot { position: absolute; top: 17px; width: 10px; height: 10px; margin-left: -5px; border-radius: 50%; background: var(--pch-dot); box-shadow: 0 0 0 2px var(--pch-surface); }
#pch-ci .pch-ci-ladder-dot.is-here { top: 14px; width: 16px; height: 16px; margin-left: -8px; z-index: 1; background: var(--pch-accent); box-shadow: 0 0 0 2px var(--pch-surface), 0 0 0 5px rgba(73, 202, 239, .25); }
#pch-ci .pch-ci-ladder-dot.is-here span { position: absolute; bottom: 19px; left: 50%; transform: translateX(-50%); font-size: 11px; font-weight: 500; line-height: 1; color: var(--pch-link); }
#pch-ci .pch-ci-ladder-lo, #pch-ci .pch-ci-ladder-hi { position: absolute; bottom: 0; font-size: 11px; line-height: 1; font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-ladder-lo { left: -8px; }
#pch-ci .pch-ci-ladder-hi { right: -8px; }
#pch-ci .pch-ci-plan-list li { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding: 5px 0; border-top: 1px solid var(--pch-rule); font-size: 13px; }
#pch-ci .pch-ci-plan-list a { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
#pch-ci .pch-ci-plan-price { flex: none; color: var(--pch-ink); font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-plan-rest { font-size: 12px; line-height: 1.45; }

/* ── Size vs price ── */
#pch-ci .pch-ci-space { display: grid; grid-template-columns: 250px minmax(0, 1fr); border: 1px solid var(--pch-rule); border-radius: 12px; overflow: hidden; background: var(--pch-surface); }
#pch-ci .pch-ci-space-stat { display: flex; flex-direction: column; gap: 4px; padding: 20px; background: var(--pch-soft); }
#pch-ci .pch-ci-space-stat .pch-ci-kicker { color: var(--pch-link); }
#pch-ci .pch-ci-big { font-size: 40px; line-height: 1.05; font-weight: 600; color: var(--pch-ink); font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
#pch-ci .pch-ci-big--word { font-size: 26px; letter-spacing: 0; }
#pch-ci .pch-ci-best { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin-top: auto; padding-top: 14px; font-size: 14px; }
#pch-ci .pch-ci-best a { font-weight: 500; }
#pch-ci .pch-ci-chart--space { min-height: 0; border: 0; border-radius: 0; padding: 10px 12px 4px; }

/* ── Nearby ── */
#pch-ci .pch-ci-near { width: 236px; }
#pch-ci .pch-ci-near-card {
	display: flex; flex-direction: column; height: 100%; border: 1px solid var(--pch-rule); border-radius: 12px;
	overflow: hidden; background: var(--pch-surface); color: var(--pch-text); transition: border-color .15s, box-shadow .15s;
}
#pch-ci .pch-ci-near-card:hover { text-decoration: none; border-color: var(--pch-accent); box-shadow: 0 6px 18px rgba(16, 34, 58, .1); }
#pch-ci .pch-ci-near-img { position: relative; display: block; aspect-ratio: 16 / 10; max-width: 100%; background: var(--pch-night); }
#pch-ci .pch-ci-near-img img { width: 100%; height: 100%; object-fit: cover; }
#pch-ci .pch-ci-near-ph {
	display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: rgba(73, 202, 239, .75);
	background:
		linear-gradient(rgba(73, 202, 239, .08) 1px, transparent 1px) 0 0 / 18px 18px,
		linear-gradient(90deg, rgba(73, 202, 239, .08) 1px, transparent 1px) 0 0 / 18px 18px,
		linear-gradient(150deg, var(--pch-night), var(--pch-night-2));
}
#pch-ci .pch-ci-near-dist {
	position: absolute; left: 10px; top: 10px; padding: 3px 9px; border-radius: 999px; background: rgba(16, 34, 58, .82);
	color: #fff; font-size: 12px; font-weight: 500; line-height: 1.4; font-variant-numeric: tabular-nums; backdrop-filter: blur(4px);
}
#pch-ci .pch-ci-near-body { display: flex; flex-direction: column; gap: 3px; flex: 1; padding: 11px 13px 13px; font-size: 13px; line-height: 1.4; }
#pch-ci .pch-ci-near-name {
	font-size: 15px; font-weight: 500; line-height: 1.3; color: var(--pch-ink);
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
#pch-ci .pch-ci-near-card:hover .pch-ci-near-name { color: var(--pch-link); }
#pch-ci .pch-ci-near-price { margin-top: auto; padding-top: 4px; font-size: 15px; font-weight: 500; color: var(--pch-ink); font-variant-numeric: tabular-nums; }
#pch-ci .pch-ci-near-ppsf { display: flex; align-items: center; gap: 6px; font-variant-numeric: tabular-nums; }

#pch-ci .pch-ci-foot { margin-top: 26px; padding-top: 12px; border-top: 1px solid var(--pch-rule); font-size: 12px; line-height: 1.5; }

@media (max-width: 767px) {
	#pch-ci { margin-top: 32px; }
	#pch-ci .pch-ci-hero { padding: 20px 16px 16px; border-radius: 12px; }
	#pch-ci .pch-ci-title { font-size: 22px; }
	#pch-ci .pch-ci-lede { font-size: 14px; }
	#pch-ci .pch-ci-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 16px; }
	#pch-ci .pch-ci-kpi { padding: 11px 11px 10px; gap: 5px; }
	#pch-ci .pch-ci-kpi dt { font-size: 10.5px; letter-spacing: .06em; }
	#pch-ci .pch-ci-kpi-value { font-size: 22px; }
	#pch-ci .pch-ci-kpi-value small { font-size: 12px; }
	#pch-ci .pch-ci-kpi-sub { font-size: 11.5px; }
	#pch-ci .pch-ci-bars-row { grid-template-columns: 42px minmax(0, 1fr) 32px; gap: 5px; font-size: 10.5px; }
	#pch-ci .pch-ci-block { margin-top: 28px; }
	#pch-ci h3 { font-size: 18px; }
	#pch-ci .pch-ci-carousel-head .pch-ci-arrows { display: none; }
	#pch-ci .pch-ci-chart { padding: 8px 6px 4px; }
	#pch-ci .pch-ci-plan { width: min(290px, 84vw); }
	#pch-ci .pch-ci-plan-sum { width: min(200px, 60vw); padding: 16px; }
	#pch-ci .pch-ci-sum-big { font-size: 38px; }
	#pch-ci .pch-ci-near { width: min(236px, 70vw); }
	#pch-ci .pch-ci-space { grid-template-columns: minmax(0, 1fr); }
	#pch-ci .pch-ci-space-stat { padding: 16px; }
	#pch-ci .pch-ci-big { font-size: 34px; }
}
@media (prefers-reduced-motion: reduce) {
	#pch-ci * { transition: none !important; scroll-behavior: auto !important; }
}
