/**
 * Page Banner — same banner as the Properties archive heading
 * (Archive/Luxe/search.css .mshm-luxe-heading): warm tint, faded logo mark,
 * eyebrow with accent line + tick, vertical hairline. Fonts differ by request:
 * lead word Poiret One 400, heading Montserrat 700 (self-hosted below).
 */

@font-face {
	font-family: "Poiret One";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("fonts/poiret-one-400.woff2") format("woff2");
}

@font-face {
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("fonts/montserrat-700.woff2") format("woff2");
}

.mainsail-page-banner {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	min-height: clamp(260px, 13.7vw + 209px, 400px);
	margin-bottom: 8px;
	padding: 135px 0 40px;
	background: #faf8f5;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* Two classes: beats the theme/Havenlytics `img` resets without !important. */
.mainsail-page-banner .mainsail-page-banner__mark {
	position: absolute;
	top: -10px;
	right: 2%;
	width: auto;
	height: clamp(260px, 13.7vw + 209px, 400px);
	opacity: 0.13;
	filter: grayscale(1);
	pointer-events: none;
	z-index: 0;
}

.mainsail-page-banner__inner {
	position: relative;
	z-index: 1;
	width: min(1140px, calc(100vw - 64px));
	margin: 0 auto;
	padding-left: 26px;
}

.mainsail-page-banner__inner::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: -12px;
	left: 0;
	width: 1px;
	background: #d8d8d8;
}

.mainsail-page-banner__eyebrow {
	position: relative;
	display: inline-block;
	margin-bottom: 18px;
	font: 500 13.5px/1 "Roboto", Arial, Helvetica, sans-serif;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #171717;
}

.mainsail-page-banner__eyebrow::after {
	content: "";
	position: absolute;
	bottom: -11px;
	right: 0;
	width: 100vw;
	height: 1px;
	background: var(--mainsail-color-accent, #24bef5);
	opacity: 0.45;
}

.mainsail-page-banner__eyebrow::before {
	content: "";
	position: absolute;
	bottom: -12px;
	right: 0;
	width: 52px;
	height: 3px;
	background: var(--mainsail-color-accent, #24bef5);
	z-index: 1;
}

/* Scoped to the banner (0,2,0) so it beats Kadence's h1 margin rules. */
.mainsail-page-banner .mainsail-page-banner__title {
	margin: 0;
	font-family: "Montserrat", Arial, Helvetica, sans-serif;
	font-weight: 700;
	/* Montserrat Bold runs much wider than the Cormorant used on the archive,
	   so the scale is smaller; long headings wrap instead of overflowing. */
	font-size: clamp(2rem, 5.2vw, 4.25rem);
	line-height: 1.05;
	letter-spacing: 0;
	color: #171717;
	text-transform: uppercase;
	overflow-wrap: anywhere;
}

.mainsail-page-banner__title > span {
	font-family: "Poiret One", "Montserrat", Arial, sans-serif;
	font-weight: 400;
}

.mainsail-page-banner__title strong {
	font-weight: 700;
}

@media (max-width: 768px) {
	.mainsail-page-banner {
		padding: 130px 0 28px;
	}

	.mainsail-page-banner .mainsail-page-banner__mark {
		width: 70%;
		opacity: 0.06;
	}
}

/* Locations page: the banner replaces the grid's own "Explore / Featured
   Locations" heading (the region filter pills below it stay). */
body.mainsail-has-page-banner .mainsail-fc-luxegrid__heading,
body.mainsail-has-page-banner .mainsail-fc-luxegrid__heading-wrap::before {
	display: none;
}
