/**
 * Neighbourhood layout v3: proof before every ask (docs/CONVERSION-RESEARCH.md).
 *
 * Loaded only by single-neighbourhood-layout3.php. Every value comes from tokens.css.
 * Mobile first: phone styles, then 600 px and 900 px.
 *
 * Top to bottom: hero with the rating line and one button, sticky in-page nav, cream facts
 * band, intro beside a photo, a photo (or cream quote panel) beside every section, the results
 * card on a photo, homes for sale, our sales, client reviews, questions, the navy contact band,
 * and on phones a call bar fixed to the bottom.
 *
 * Photos: no radius. On desktop they bleed to the edge of the window, not the content column.
 * No tint beyond the 40% navy gradient on the hero and results photos.
 */

.seymour-l3 {
	--seymour-l3-nav-height: 52px;
	--seymour-l3-sticky-top: 0px;
}

/* In-page links land below the sticky nav. */
.seymour-l3 [id] {
	scroll-margin-top: calc(var(--seymour-l3-nav-height) + var(--seymour-l3-sticky-top) + var(--space-4));
}

@media (prefers-reduced-motion: no-preference) {
	html:has(.seymour-l3) {
		scroll-behavior: smooth;
	}
}

/* ------------------------------------------------------------------
 * Bands.
 * ------------------------------------------------------------------ */

.seymour-l3-band {
	padding-bottom: var(--space-section);
	padding-top: var(--space-section);
}

.seymour-l3-band--cream {
	background: var(--cream);
}

/* White text bands next to each other share one gap. */
.seymour-l3-band--text + .seymour-l3-band--text {
	padding-top: 0;
}

.seymour-l3-band h2,
.seymour-l3-split__text h2 {
	margin-top: 0;
}

.seymour-l3-measure {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--measure);
}

.seymour-l3-measure > :last-child,
.seymour-l3-split__text > :last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------------------
 * Hero. The photo edge to edge with the eyebrow and H1, then a white bar with
 * the rating line, the one button and the mobile number, all in the first screen.
 * ------------------------------------------------------------------ */

.seymour-l3-hero__media {
	align-items: flex-end;
	background: var(--navy-100);
	display: flex;
	min-height: 48vh;
	min-height: 48svh;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.seymour-l3-hero__image {
	border-radius: 0;
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center 55%;
	position: absolute;
	width: 100%;
}

.seymour-l3-hero__video {
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center 55%;
	position: absolute;
	width: 100%;
}

@media (prefers-reduced-motion: reduce) {
	.seymour-l3-hero__video {
		display: none;
	}
}

/* Bottom-up navy, 40% at most, for legibility only. */
.seymour-l3-hero__media::after {
	background: linear-gradient(to top, rgba(30, 58, 95, 0.4) 0%, rgba(30, 58, 95, 0.4) 25%, rgba(30, 58, 95, 0) 70%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.seymour-l3-hero__text {
	padding-bottom: var(--space-6);
	padding-top: var(--space-9);
	position: relative;
	z-index: 1;
}

.seymour-l3-hero__eyebrow {
	color: var(--white);
	margin: 0 0 var(--space-3);
}

.seymour-l3-hero__title {
	color: var(--white);
	font-size: var(--fs-h1);
	line-height: var(--lh-tight);
	margin: 0;
	max-width: 18ch;
}

/* Five words or fewer: the display size the style guide keeps for neighbourhood heroes. */
.seymour-l3-hero__title--display {
	font-size: var(--fs-display);
	line-height: var(--lh-display);
}

.seymour-l3-hero--no-photo .seymour-l3-hero__media {
	min-height: 0;
}

.seymour-l3-hero--no-photo .seymour-l3-hero__media::after {
	display: none;
}

.seymour-l3-hero--no-photo .seymour-l3-hero__eyebrow {
	color: var(--gold-800);
}

.seymour-l3-hero--no-photo .seymour-l3-hero__title {
	color: var(--navy);
}

.seymour-l3-hero__bar {
	background: var(--white);
	border-bottom: 1px solid var(--line);
	padding-bottom: var(--space-5);
	padding-top: var(--space-4);
}

.seymour-l3-hero__bar-inner {
	display: grid;
	gap: var(--space-4);
}

.seymour-l3-hero__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2) var(--space-5);
	margin: 0;
}

.seymour-l3-hero__actions .seymour-button {
	width: 100%;
}

.seymour-l3-hero__phone {
	align-items: center;
	color: var(--navy);
	display: inline-flex;
	font-weight: var(--weight-medium);
	gap: var(--space-2);
	min-height: var(--touch-target);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.seymour-l3-hero__phone:hover {
	color: var(--navy-900);
	text-decoration-color: var(--gold-500);
}

.seymour-l3-hero__phone .seymour-icon {
	flex: none;
	height: var(--icon-size-button);
	width: var(--icon-size-button);
}

@media (min-width: 600px) {
	.seymour-l3-hero__actions .seymour-button {
		width: auto;
	}
}

@media (min-width: 900px) {
	.seymour-l3-hero__media {
		min-height: 58vh;
		min-height: 58svh;
	}

	.seymour-l3-hero__text {
		padding-bottom: var(--space-7);
	}

	.seymour-l3-hero__bar {
		padding-bottom: var(--space-5);
		padding-top: var(--space-5);
	}

	.seymour-l3-hero__bar-inner {
		align-items: center;
		column-gap: var(--space-7);
		grid-template-columns: minmax(0, 1fr) auto;
	}
}

/* ------------------------------------------------------------------
 * The rating line: gold star, "4.9 from 55 Google reviews", the link, the date.
 * ------------------------------------------------------------------ */

.seymour-review-line {
	margin: 0;
}

.seymour-review-line--full {
	align-items: baseline;
	color: var(--ink);
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-1) var(--space-2);
}

.seymour-review-line__star {
	color: var(--gold-500);
	font-size: 20px;
	line-height: 1;
}

.seymour-review-line__text {
	color: var(--navy);
	font-weight: var(--weight-semibold);
}

.seymour-review-line__link,
.seymour-review-line--inline a {
	color: var(--navy);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.seymour-review-line__link:hover,
.seymour-review-line--inline a:hover {
	text-decoration-color: var(--gold-500);
}

.seymour-review-line__date {
	color: var(--grey-600);
	font-size: var(--fs-meta);
}

/* ------------------------------------------------------------------
 * Sticky in-page nav. Sticks to the top once the hero has scrolled away
 * (the site header scrolls with the page). Scrolls sideways on phones.
 * ------------------------------------------------------------------ */

.seymour-l3-nav {
	background: var(--white);
	border-bottom: 1px solid var(--line);
	position: sticky;
	top: var(--seymour-l3-sticky-top);
	z-index: 80;
}

.seymour-l3-nav.is-stuck {
	box-shadow: 0 2px 8px rgba(30, 58, 95, 0.08);
}

/* The WordPress toolbar, for logged-in previews. It scrolls away on phones under 600 px. */
@media (min-width: 601px) {
	.admin-bar .seymour-l3 {
		--seymour-l3-sticky-top: 46px;
	}
}

@media (min-width: 783px) {
	.admin-bar .seymour-l3 {
		--seymour-l3-sticky-top: 32px;
	}
}

.seymour-l3-nav__inner {
	align-items: center;
	display: flex;
	gap: var(--space-5);
	min-height: var(--seymour-l3-nav-height);
	padding-left: 0;
	padding-right: 0;
}

.seymour-l3-nav__list {
	display: flex;
	flex: 1 1 auto;
	gap: var(--space-5);
	list-style: none;
	margin: 0;
	min-width: 0;
	overflow-x: auto;
	padding: 0 max(var(--gutter), 16px);
	scrollbar-width: none;
	white-space: nowrap;
}

.seymour-l3-nav__list::-webkit-scrollbar {
	display: none;
}

.seymour-l3-nav__list li {
	margin: 0;
}

.seymour-l3-nav__link {
	align-items: center;
	border-bottom: 2px solid transparent;
	box-sizing: border-box;
	color: var(--navy);
	display: inline-flex;
	font-size: var(--fs-nav);
	font-weight: var(--weight-medium);
	letter-spacing: var(--tracking-eyebrow);
	min-height: var(--seymour-l3-nav-height);
	padding-top: 2px;
	text-decoration: none;
	text-transform: uppercase;
}

.seymour-l3-nav__link:hover,
.seymour-l3-nav__link[aria-current] {
	border-bottom-color: var(--gold-500);
	color: var(--navy);
}

/* On phones the fixed call bar carries the ask, so the nav button hides. */
.seymour-l3-nav__ask {
	display: none;
}

/* The ask in the sticky section bar and in the bar under the hero ("Request a showing", "Talk to
 * Jethro about ..."), like the Contact agent tab: deep navy with a gold trim, gold with navy text
 * on hover (Kaz, October 21, 2026). The white asks on navy bands (--light) stay white. */
.seymour-button.seymour-l3-nav__ask,
.seymour-button.seymour-l3-ask:not(.seymour-button--light) {
	background: var(--footer-bg);
	border-color: var(--footer-gold);
	color: var(--white);
}

.seymour-button.seymour-l3-nav__ask:hover,
.seymour-button.seymour-l3-nav__ask:focus-visible,
.seymour-button.seymour-l3-ask:not(.seymour-button--light):hover,
.seymour-button.seymour-l3-ask:not(.seymour-button--light):focus-visible {
	background: var(--footer-gold);
	border-color: var(--footer-gold);
	color: var(--footer-bg);
}

@media (min-width: 900px) {
	.seymour-l3-nav__inner {
		padding-left: max(var(--gutter), 16px);
		padding-right: max(var(--gutter), 16px);
	}

	.seymour-l3-nav__list {
		gap: var(--space-6);
		padding: 0;
	}

	.seymour-l3-nav__ask {
		display: inline-flex;
		flex: none;
		font-size: var(--fs-meta);
		min-height: 38px;
		padding: var(--space-2) var(--space-4);
	}
}

/* ------------------------------------------------------------------
 * Facts band. Cream, the boundaries as a labelled line, up to three statistics.
 * ------------------------------------------------------------------ */

.seymour-l3-facts {
	background: var(--cream);
	padding-bottom: var(--space-7);
	padding-top: var(--space-7);
}

.seymour-l3-facts__inner {
	display: grid;
	gap: var(--space-6);
}

.seymour-l3-facts__boundaries {
	border-top: 1px solid var(--gold-500);
	padding-top: var(--space-4);
}

.seymour-l3-facts__boundaries .seymour-eyebrow {
	margin: 0 0 var(--space-2);
}

.seymour-l3-facts__line {
	color: var(--navy);
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h3);
	font-variation-settings: var(--font-serif-settings);
	font-weight: var(--weight-regular);
	line-height: 1.35;
	margin: 0;
}

.seymour-l3-stats {
	display: grid;
	gap: var(--space-5);
	grid-template-columns: minmax(0, 1fr);
	margin: 0;
}

.seymour-l3-stat {
	border-top: 1px solid var(--line);
	display: flex;
	flex-direction: column;
	padding-top: var(--space-4);
}

.seymour-l3-stat dd {
	margin-left: 0;
}

.seymour-l3-stat__value {
	color: var(--navy);
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h1);
	font-variant-numeric: tabular-nums;
	font-variation-settings: var(--font-serif-settings);
	font-weight: var(--weight-regular);
	line-height: var(--lh-tight);
	margin: 0 0 var(--space-2);
	order: -1;
}

.seymour-l3-stat__label {
	color: var(--ink);
	font-weight: var(--weight-medium);
}

/* Meta text on cream stays at 15 px or larger (STYLE-GUIDE.md section 2). */
.seymour-l3-stat__meta,
.seymour-l3-homes__note {
	color: var(--grey-600);
	font-size: max(var(--fs-meta), 15px);
	margin: var(--space-1) 0 0;
}

@media (min-width: 600px) {
	.seymour-l3-stats--2,
	.seymour-l3-stats--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.seymour-l3-facts {
		padding-bottom: var(--space-8);
		padding-top: var(--space-8);
	}

	.seymour-l3-facts__inner {
		align-items: start;
		column-gap: var(--space-8);
		grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
	}

	.seymour-l3-facts__inner > :only-child {
		grid-column: 1 / -1;
		max-width: var(--measure);
	}

	.seymour-l3-stats--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ------------------------------------------------------------------
 * Photo-and-text bands: the intro and every section.
 * Phones: the photo edge to edge, then the text. Desktop: two columns, the photo
 * bleeding to the window edge on its side, the text lined up with the content column.
 * ------------------------------------------------------------------ */

.seymour-l3-split-band {
	padding-bottom: var(--space-section);
}

.seymour-l3-split {
	display: grid;
}

.seymour-l3-split__text {
	box-sizing: border-box;
	min-width: 0;
	padding: var(--space-6) max(var(--gutter), 16px) 0;
}

.seymour-l3-split__text > * {
	max-width: var(--measure);
}

.seymour-l3-split-band--no-aside .seymour-l3-split__text {
	padding-top: var(--space-section);
}

.seymour-l3-photo {
	margin: 0;
}

.seymour-l3-photo__image,
.seymour-l3-photo img {
	aspect-ratio: 4 / 3;
	border-radius: 0;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

/* A photo shown a second time: framed lower so it reads as a different picture. */
.seymour-l3-photo--recrop .seymour-l3-photo__image {
	object-position: center 80%;
}

.seymour-l3-photo__caption {
	color: var(--grey-600);
	font-size: var(--fs-meta);
	line-height: 1.5;
	margin-top: var(--space-3);
	padding: 0 max(var(--gutter), 16px);
}

/* The cream panel, when the page has run out of photos. Words from the section beside it. */
.seymour-l3-panel {
	align-items: center;
	background: var(--cream);
	border-top: 1px solid var(--gold-500);
	box-sizing: border-box;
	display: flex;
	padding: var(--space-7) max(var(--gutter), 16px);
}

.seymour-l3-panel__quote {
	border: 0;
	color: var(--navy);
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h3);
	font-style: italic;
	font-variation-settings: var(--font-serif-settings);
	font-weight: var(--weight-regular);
	line-height: 1.35;
	margin: 0;
	max-width: 32ch;
	padding: 0;
	width: auto;
}

.seymour-l3-panel__quote p {
	margin: 0;
}

/* The intro: the neighbourhood's name and opening words in a narrow serif column. */
.seymour-l3-intro__text {
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-variation-settings: var(--font-serif-settings);
}

.seymour-l3-intro__text > p:first-of-type {
	color: var(--navy);
	font-size: var(--fs-lead);
	line-height: 1.5;
}

.seymour-l3-intro__text h4 {
	font-family: var(--font-sans);
}

@media (min-width: 900px) {
	.seymour-l3-split-band {
		container-type: inline-size;
		padding-top: var(--space-section);
	}

	.seymour-l3-split-band + .seymour-l3-split-band {
		padding-top: 0;
	}

	.seymour-l3-split {
		align-items: start;
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}

	.seymour-l3-split-band--aside-right .seymour-l3-split {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}

	.seymour-l3-intro .seymour-l3-split {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.seymour-l3-split__aside,
	.seymour-l3-split__text {
		grid-row: 1;
	}

	/* Photo on the left: it fills column 1 to the left edge; the text keeps the container's right edge. */
	.seymour-l3-split-band--aside-left .seymour-l3-split__aside {
		grid-column: 1;
	}

	.seymour-l3-split-band--aside-left .seymour-l3-split__text {
		grid-column: 2;
		padding: 0 max(var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter))) 0 var(--space-8);
		padding: 0 max(var(--gutter), calc((100cqw - var(--container)) / 2 + var(--gutter))) 0 var(--space-8);
	}

	/* Photo on the right: the mirror image. */
	.seymour-l3-split-band--aside-right .seymour-l3-split__aside {
		grid-column: 2;
	}

	.seymour-l3-split-band--aside-right .seymour-l3-split__text {
		grid-column: 1;
		padding: 0 var(--space-8) 0 max(var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter)));
		padding: 0 var(--space-8) 0 max(var(--gutter), calc((100cqw - var(--container)) / 2 + var(--gutter)));
	}

	.seymour-l3-split-band--no-aside .seymour-l3-split__text {
		grid-column: 1 / -1;
		margin: 0 auto;
		max-width: var(--container);
		padding: 0 max(var(--gutter), 16px);
		width: 100%;
	}

	/* The photo stays in view while long text beside it scrolls. */
	.seymour-l3-split__aside {
		position: sticky;
		top: calc(var(--seymour-l3-nav-height) + var(--seymour-l3-sticky-top) + var(--space-5));
	}

	.seymour-l3-photo__image,
	.seymour-l3-photo img {
		aspect-ratio: auto;
		height: clamp(420px, 72vh, 720px);
	}

	/* A small or very wide photo keeps its own shape, so it is never blown up. */
	.seymour-l3-photo--natural .seymour-l3-photo__image,
	.seymour-l3-photo--natural img {
		height: auto;
		max-height: 720px;
	}

	.seymour-l3-split-band--aside-left .seymour-l3-photo__caption {
		padding: 0 var(--space-5) 0 max(var(--gutter), 16px);
	}

	.seymour-l3-split-band--aside-right .seymour-l3-photo__caption {
		padding: 0 max(var(--gutter), 16px) 0 var(--space-5);
		text-align: right;
	}

	.seymour-l3-panel {
		min-height: clamp(360px, 56vh, 560px);
		padding: var(--space-8);
	}

	.seymour-l3-split-band--aside-left .seymour-l3-panel {
		justify-content: flex-end;
		padding-left: max(var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter)));
		padding-left: max(var(--gutter), calc((100cqw - var(--container)) / 2 + var(--gutter)));
	}

	.seymour-l3-split-band--aside-right .seymour-l3-panel {
		padding-right: max(var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter)));
		padding-right: max(var(--gutter), calc((100cqw - var(--container)) / 2 + var(--gutter)));
	}

	.seymour-l3-panel__quote {
		font-size: var(--fs-h2);
	}
}

/* ------------------------------------------------------------------
 * Author note: the italic paragraph at the end of the page's text.
 * ------------------------------------------------------------------ */

.seymour-l3-author {
	border-top: 1px solid var(--line);
	color: var(--grey-600);
	margin-top: var(--space-6);
	padding-top: var(--space-5);
}

.seymour-l3-author p {
	margin: 0;
}

/* ------------------------------------------------------------------
 * Results card: a white card on a full-bleed photo, numbered rows, every row
 * dated and sourced. The ask again below the card.
 * ------------------------------------------------------------------ */

.seymour-l3-results {
	background: var(--navy);
	overflow: hidden;
	padding-bottom: var(--space-section);
	padding-top: var(--space-section);
	position: relative;
}

.seymour-l3-results__image {
	border-radius: 0;
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center 50%;
	position: absolute;
	width: 100%;
}

/* The hero again: framed lower so it reads as a different picture. */
.seymour-l3-results__image--hero {
	object-position: center 85%;
}

.seymour-l3-results::after {
	background: linear-gradient(to top, rgba(30, 58, 95, 0.4) 0%, rgba(30, 58, 95, 0.4) 100%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.seymour-l3-results--no-photo::after {
	display: none;
}

.seymour-l3-results__inner {
	position: relative;
	z-index: 1;
}

.seymour-l3-results__card {
	background: var(--white);
	box-sizing: border-box;
	max-width: 640px;
	padding: var(--space-6) var(--space-5);
}

.seymour-l3-results__title {
	margin: 0;
}

.seymour-l3-results__list {
	list-style: none;
	margin: var(--space-5) 0 0;
	padding: 0;
}

.seymour-l3-result {
	border-top: 1px solid var(--line);
	display: grid;
	gap: var(--space-4);
	grid-template-columns: auto minmax(0, 1fr);
	margin: 0;
	padding: var(--space-5) 0;
}

.seymour-l3-result:last-child {
	padding-bottom: 0;
}

.seymour-l3-result__number {
	color: var(--gold-500);
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h3);
	font-variant-numeric: tabular-nums;
	font-variation-settings: var(--font-serif-settings);
	line-height: 1.4;
	min-width: 2ch;
}

.seymour-l3-result__body p {
	margin: 0;
}

.seymour-l3-result__value {
	color: var(--navy);
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h1);
	font-variant-numeric: tabular-nums;
	font-variation-settings: var(--font-serif-settings);
	line-height: var(--lh-tight);
}

.seymour-l3-result__label {
	color: var(--ink);
	font-weight: var(--weight-medium);
	margin-top: var(--space-1);
}

.seymour-l3 .seymour-l3-result__detail {
	margin-top: var(--space-1);
}

.seymour-l3 .seymour-l3-result__meta {
	color: var(--grey-600);
	font-size: var(--fs-meta);
	margin-top: var(--space-2);
}

.seymour-l3-results__note {
	background: var(--cream);
	color: var(--ink);
	font-size: max(var(--fs-meta), 15px);
	margin: var(--space-5) 0 0;
	padding: var(--space-4);
}

.seymour-l3-results__ask {
	margin: var(--space-6) 0 0;
}

.seymour-l3-results__inner > .seymour-l3-results__ask:first-child {
	margin-top: 0;
}

/* White button for photos and navy bands. */
.seymour-button--light {
	background: var(--white);
	border-color: var(--white);
	color: var(--navy);
}

.seymour-button--light:hover {
	background: var(--navy-100);
	border-color: var(--navy-100);
	color: var(--navy);
}

.seymour-l3-results--no-photo .seymour-button--light {
	border-color: var(--white);
}

@media (min-width: 900px) {
	.seymour-l3-results {
		padding-bottom: var(--space-9);
		padding-top: var(--space-9);
	}

	.seymour-l3-results__card {
		padding: var(--space-7);
	}
}

/* ------------------------------------------------------------------
 * Homes for sale, our sales.
 * ------------------------------------------------------------------ */

.seymour-l3-homes__action {
	margin: var(--space-5) 0 var(--space-3);
}

.seymour-l3-sales__empty {
	color: var(--grey-600);
	margin: 0;
}

/* ------------------------------------------------------------------
 * Client reviews: three quotes, each under a gold star row, with the name and their line.
 * ------------------------------------------------------------------ */

.seymour-l3-reviews__grid {
	display: grid;
	gap: var(--space-5);
	margin-top: var(--space-5);
}

.seymour-l3-review {
	background: var(--white);
	border-top: 1px solid var(--gold-500);
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: var(--space-6) var(--space-5);
}

/* A gold opening quote mark. Not stars: these are written testimonials, not ratings. */
.seymour-l3-review__mark {
	color: var(--gold-500);
	font-family: var(--font-serif);
	font-size: 48px;
	line-height: 0.6;
	margin: 0 0 var(--space-3);
}

.seymour-l3-review__quote {
	border: 0;
	color: var(--ink);
	flex: 1 1 auto;
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-lead);
	font-variation-settings: var(--font-serif-settings);
	line-height: 1.5;
	margin: 0;
	padding: 0;
	width: auto;
}

.seymour-l3-review__quote p {
	margin: 0;
}

.seymour-l3-review__by {
	border-top: 1px solid var(--line);
	display: flex;
	flex-direction: column;
	gap: var(--space-1);
	margin-top: var(--space-5);
	padding-top: var(--space-4);
}

.seymour-l3-review__name,
.seymour-l3-contact__name {
	font-style: normal;
	font-weight: var(--weight-semibold);
}

.seymour-l3-review__name {
	color: var(--navy);
}

.seymour-l3-review__descriptor {
	color: var(--grey-600);
	font-size: var(--fs-meta);
}

.seymour-l3-reviews__line {
	margin-top: var(--space-6);
}

@media (min-width: 900px) {
	.seymour-l3-reviews__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.seymour-l3-review {
		padding: var(--space-6);
	}
}

/* ------------------------------------------------------------------
 * Questions: native details and summary, no script.
 * ------------------------------------------------------------------ */

.seymour-l3-faq {
	border-top: 1px solid var(--line);
	margin-top: var(--space-5);
}

.seymour-l3-faq__item {
	border-bottom: 1px solid var(--line);
}

.seymour-l3-faq__question {
	align-items: center;
	color: var(--navy);
	cursor: pointer;
	display: flex;
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h3);
	font-variation-settings: var(--font-serif-settings);
	font-weight: var(--weight-medium);
	gap: var(--space-4);
	justify-content: space-between;
	line-height: var(--lh-heading);
	list-style: none;
	min-height: var(--touch-target);
	padding: var(--space-4) 0;
}

.seymour-l3-faq__question::-webkit-details-marker {
	display: none;
}

/* A plus that turns into a minus. Gold hairlines. */
.seymour-l3-faq__question::after {
	background:
		linear-gradient(var(--gold-500), var(--gold-500)) center / 16px 1.5px no-repeat,
		linear-gradient(var(--gold-500), var(--gold-500)) center / 1.5px 16px no-repeat;
	content: "";
	flex: none;
	height: 16px;
	width: 16px;
}

.seymour-l3-faq__item[open] > .seymour-l3-faq__question::after {
	background: linear-gradient(var(--gold-500), var(--gold-500)) center / 16px 1.5px no-repeat;
}

.seymour-l3-faq__question:focus-visible {
	outline: var(--focus-ring);
	outline-offset: var(--focus-offset);
}

.seymour-l3-faq__answer {
	padding-bottom: var(--space-5);
}

.seymour-l3-faq__answer > :last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------------------
 * Contact band ("Ask a question"): white text on the footer's look (Kaz, October 21, 2026),
 * on every page that has it: home, neighbourhoods, listings, the MLS listing pages, blog
 * posts. Flat deep navy, the gold accent bar along the top and brand gold for its gold text.
 * No photo: the footer just below carries the skyline (Kaz, October 21, 2026).
 * The form, and beside it one seller's words and the phone numbers, each labelled.
 * ------------------------------------------------------------------ */

.seymour-l3-contact {
	--gold-200: var(--footer-gold);
	background: var(--footer-bg);
	color: var(--white);
	padding-bottom: var(--space-section);
	padding-top: var(--space-section);
	position: relative;
}

.seymour-l3-contact::before {
	background: var(--footer-accent);
	content: "";
	height: var(--footer-accent-height);
	inset: 0 0 auto;
	position: absolute;
	z-index: 1;
}

@media print {
	.seymour-l3-contact::before {
		display: none;
	}
}

.seymour-l3-contact__inner {
	display: grid;
	gap: var(--space-7);
}

.seymour-l3-contact__title {
	color: var(--footer-gold); /* Gold on every page and pop-up (Kaz, October 26, 2026). */
	margin: 0 0 var(--space-5);
}

.seymour-l3-contact a {
	color: var(--white);
	text-decoration-color: var(--gold-200);
}

.seymour-l3-contact a:hover {
	color: var(--gold-200);
}

/*
 * Gravity Forms on navy: white labels, white fields, a white button with navy text.
 * Gravity Forms prints its colours inline on #gform_wrapper_N[data-form-index].gform-theme,
 * so these need the #contact id and one more class to win.
 */
#contact .gform_wrapper.gform-theme[data-form-index] {
	--gf-color-primary: var(--white);
	--gf-color-primary-rgb: 255, 255, 255;
	--gf-color-primary-contrast: var(--navy);
	--gf-color-primary-contrast-rgb: 30, 58, 95;
	--gf-color-primary-darker: var(--navy-100);
	--gf-color-primary-lighter: var(--white);
	--gf-ctrl-label-color-primary: var(--white);
	--gf-ctrl-label-color-secondary: var(--white);
	--gf-ctrl-label-color-tertiary: var(--gold-200);
	--gf-ctrl-label-color-req: var(--gold-200);
	--gf-ctrl-desc-color: var(--gold-200);
	--gf-color-out-ctrl-dark: var(--gold-200);
	--gf-color-out-ctrl-dark-darker: var(--white);
	--gf-color-out-ctrl-dark-lighter: var(--gold-200);
	color: var(--white);
}

.seymour-l3-contact .gform_wrapper label,
.seymour-l3-contact .gform_wrapper legend,
.seymour-l3-contact .gform_wrapper .gfield_label,
.seymour-l3-contact .gform_wrapper .gfield_description,
.seymour-l3-contact .gform_wrapper .gfield_consent_label,
.seymour-l3-contact .gform_wrapper .gform_required_legend {
	color: var(--white);
}

/* The consent line, its small print and its privacy link: frame.css sets them for forms on white
 * (ink, grey, navy) with stronger selectors, so the navy band sets them back to light colours.
 * CASL consent and the privacy link must be readable. */
.seymour-l3-contact .gform_wrapper.gform-theme--framework .gfield_consent_label {
	color: var(--white);
}

.seymour-l3-contact .gform_wrapper.gform-theme--framework .gfield_consent_description_text {
	color: var(--footer-muted);
}

.seymour-l3-contact .gform_wrapper.gform-theme--framework .gfield_consent_description_text a,
.seymour-l3-contact .gform_wrapper.gform-theme--framework .gfield_consent_description_text a:hover {
	color: var(--white);
	text-decoration-color: var(--gold-200);
}

.seymour-l3-contact .gform_wrapper .gfield_required {
	color: var(--gold-200);
}

.seymour-l3-contact .gform_wrapper input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.seymour-l3-contact .gform_wrapper textarea,
.seymour-l3-contact .gform_wrapper select {
	background: var(--white);
	border-color: var(--white);
	color: var(--ink);
}

.seymour-l3-contact .gform_wrapper .gfield_validation_message,
.seymour-l3-contact .gform_wrapper .validation_message {
	background: var(--white);
	color: var(--error);
	padding: var(--space-1) var(--space-2);
}

/* The send button: gold with navy words, the standard for buttons on navy (Kaz, October 22, 2026). */
.seymour-l3-contact .gform_wrapper,
.seymour-l3-contact .gform_wrapper.gform-theme--framework,
.seymour-l3-contact .gform_wrapper .gform_button {
	--gf-ctrl-btn-bg-color-primary: var(--footer-gold);
	--gf-ctrl-btn-border-color-primary: var(--footer-gold);
	--gf-ctrl-btn-color-primary: var(--footer-bg);
	--gf-ctrl-btn-bg-color-hover-primary: var(--gold-hover);
	--gf-ctrl-btn-border-color-hover-primary: var(--gold-hover);
	--gf-ctrl-btn-color-hover-primary: var(--footer-bg);
	--gf-ctrl-btn-bg-color-focus-primary: var(--gold-hover);
	--gf-ctrl-btn-border-color-focus-primary: var(--gold-hover);
	--gf-ctrl-btn-color-focus-primary: var(--footer-bg);
}

.seymour-l3-contact .gform_button,
.seymour-l3-contact input[type="submit"],
.seymour-l3-contact button[type="submit"] {
	background: var(--footer-gold);
	border-color: var(--footer-gold);
	color: var(--footer-bg);
}

.seymour-l3-contact .gform_button:hover,
.seymour-l3-contact input[type="submit"]:hover,
.seymour-l3-contact button[type="submit"]:hover {
	background: var(--gold-hover);
	border-color: var(--gold-hover);
	color: var(--footer-bg);
}

.seymour-l3-contact__quote {
	border-top: 1px solid var(--gold-200);
	margin: 0;
	padding-top: var(--space-5);
}

.seymour-l3-contact__quote blockquote {
	border: 0;
	color: var(--white);
	font-family: var(--font-serif);
	font-optical-sizing: auto;
	font-size: var(--fs-h3);
	font-style: italic;
	font-variation-settings: var(--font-serif-settings);
	line-height: 1.4;
	margin: 0;
	padding: 0;
	width: auto;
}

.seymour-l3-contact__quote blockquote p {
	margin: 0;
}

.seymour-l3-contact__quote figcaption {
	display: flex;
	flex-direction: column;
	gap: var(--space-1);
	margin-top: var(--space-4);
}

.seymour-l3-contact__descriptor {
	color: var(--gold-200);
	font-size: var(--fs-meta);
}

.seymour-l3-contact__phones {
	display: grid;
	gap: var(--space-2);
	list-style: none;
	margin: var(--space-6) 0 0;
	padding: 0;
}

.seymour-l3-contact__phones li {
	margin: 0;
}

.seymour-l3-contact__phones .seymour-phone {
	align-items: center;
	color: var(--white);
	display: inline-flex;
	gap: var(--space-2);
	min-height: var(--touch-target);
	text-decoration: underline;
	text-decoration-color: var(--gold-200);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.seymour-l3-contact__phones .seymour-phone__label {
	color: var(--gold-200);
}

.seymour-l3-contact__phones .seymour-icon {
	flex: none;
	height: var(--icon-size-button);
	width: var(--icon-size-button);
}

@media (min-width: 900px) {
	.seymour-l3-contact__inner {
		align-items: start;
		column-gap: var(--space-9);
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}

	.seymour-l3-contact__aside {
		padding-top: var(--space-2);
	}
}

/* ------------------------------------------------------------------
 * Phone call bar, fixed to the bottom under 900 px: Call Jet and Message.
 * Hidden while the contact band is on screen. theme.css pads the body so
 * the bar never covers the footer.
 * ------------------------------------------------------------------ */

.seymour-l3-bar {
	transition: transform var(--transition), visibility var(--transition);
}

.seymour-l3-bar.is-hidden {
	transform: translateY(110%);
	visibility: hidden;
}

@media (prefers-reduced-motion: reduce) {
	.seymour-l3-bar {
		transition: none;
	}
}

/* ------------------------------------------------------------------
 * The page itself. GeneratePress pads .site-content by 40 px on each side, which
 * boxes every band 40 px short of the screen edge. The v3 body class removes it;
 * each band brings its own gutter through .seymour-container.
 * ------------------------------------------------------------------ */

.seymour-layout-v3 .site-content {
	padding-left: 0;
	padding-right: 0;
}

/* On navy, the gold submit button lightens to the light gold (the My account hover) when pressed,
 * focused or hovered (Kaz, October 22, 2026): the standard for gold buttons on navy. */
.seymour-l3-contact .gform_wrapper .gform_button:hover,
.seymour-l3-contact .gform_wrapper .gform_button:focus,
.seymour-l3-contact .gform_wrapper .gform_button:focus-visible,
.seymour-l3-contact .gform_wrapper .gform_button:active,
.seymour-l3-contact .gform_wrapper input[type="submit"]:hover,
.seymour-l3-contact .gform_wrapper input[type="submit"]:focus,
.seymour-l3-contact .gform_wrapper input[type="submit"]:active,
.seymour-l3-contact .gform_wrapper button[type="submit"]:hover,
.seymour-l3-contact .gform_wrapper button[type="submit"]:focus,
.seymour-l3-contact .gform_wrapper button[type="submit"]:active,
.seymour-l3-contact .gform_wrapper.gform-theme--framework .gform_footer .gform_button:hover,
.seymour-l3-contact .gform_wrapper.gform-theme--framework .gform_footer .gform_button:focus,
.seymour-l3-contact .gform_wrapper.gform-theme--framework .gform_footer .gform_button:active {
	background: var(--gold-hover);
	border-color: var(--gold-hover);
	color: var(--footer-bg);
}

/* The contact band's fields edged in gold on navy (Kaz, October 23, 2026). */
.seymour-l3-contact .gform_wrapper.gform-theme--framework {
	--gf-ctrl-border-color: var(--footer-gold);
	--gf-ctrl-border-color-hover: var(--footer-gold);
	--gf-ctrl-border-color-focus: var(--footer-gold);
}

.seymour-l3-contact .gform_wrapper input:not([type="submit"]):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.seymour-l3-contact .gform_wrapper textarea,
.seymour-l3-contact .gform_wrapper select {
	border-color: var(--footer-gold) !important;
}
