.ntz-microsite-shell {
	font-family: var(--ntz-body-font), sans-serif;
	color: #111827;
	background: #fff;
}

.ntz-microsite-shell *,
.ntz-microsite-shell *::before,
.ntz-microsite-shell *::after {
	box-sizing: border-box;
}

.ntz-microsite-shell img {
	display: block;
	max-width: 100%;
}

.ntz-microsite-shell .ntz-section__inner {
	width: min(100% - 32px, var(--ntz-container));
	margin: 0 auto;
}

.ntz-microsite-shell .ntz-section {
	position: relative;
	overflow: hidden;
}

.ntz-microsite-shell .ntz-section h2 {
	font-size: clamp(34px, 4.2vw, 54px);
	margin-bottom: 18px;
}

.ntz-microsite-shell h1,
.ntz-microsite-shell h2,
.ntz-microsite-shell h3 {
	font-family: var(--ntz-heading-font), serif;
	line-height: 1.05;
	margin: 0 0 16px;
	color: inherit;
}

.ntz-microsite-shell p,
.ntz-microsite-shell li,
.ntz-microsite-shell figcaption,
.ntz-microsite-shell cite {
	line-height: 1.7;
	font-size: 16px;
}

.ntz-microsite-shell .ntz-eyebrow,
.ntz-microsite-shell .ntz-section-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 18px;
	padding: 7px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.65);
	color: var(--ntz-primary);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ntz-microsite-shell .ntz-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
	gap: 40px;
	align-items: center;
}

.ntz-microsite-shell .ntz-section-hero-has-bg {
	position: relative;
	background-repeat: no-repeat;
}

.ntz-microsite-shell .ntz-section-hero-has-bg .ntz-hero__content,
.ntz-microsite-shell .ntz-section-hero-has-bg h1,
.ntz-microsite-shell .ntz-section-hero-has-bg p:not(.ntz-section-footer p),
.ntz-microsite-shell .ntz-section-hero-has-bg .ntz-eyebrow {
	color: #fff;
}

.ntz-microsite-shell .ntz-section-hero-has-bg .ntz-eyebrow {
	background: rgba(255, 255, 255, 0.16);
}

.ntz-microsite-shell .ntz-hero h1 {
	font-size: clamp(44px, 7vw, 86px);
}

.ntz-microsite-shell .ntz-hero p {
	max-width: 56ch;
	font-size: 18px;
	margin-bottom: 24px;
}

.ntz-microsite-shell .ntz-hero__content:only-child {
	grid-column: 1 / -1;
	max-width: 720px;
}

.ntz-microsite-shell .ntz-hero__media img,
.ntz-microsite-shell .ntz-gallery-card img {
	width: 100%;
	border-radius: var(--ntz-radius);
	object-fit: cover;
	box-shadow: 0 28px 60px rgba(15, 23, 42, 0.2);
}

.ntz-microsite-shell .ntz-hero__media {
	padding: 18px;
	border-radius: calc(var(--ntz-radius) + 8px);
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
}

.ntz-microsite-shell .ntz-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 13px 20px;
	border-radius: 999px;
	background: var(--ntz-primary);
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	box-shadow: 0 18px 35px rgba(15, 23, 42, 0.16);
}

.ntz-microsite-shell .ntz-card,
.ntz-microsite-shell .ntz-cta-box,
.ntz-microsite-shell .ntz-quote {
	padding: 28px;
	border-radius: var(--ntz-radius);
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.ntz-microsite-shell .ntz-card {
	border: 1px solid rgba(148, 163, 184, 0.16);
}

.ntz-microsite-shell .ntz-grid {
	display: grid;
	gap: 20px;
}

.ntz-microsite-shell .ntz-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ntz-microsite-shell .ntz-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ntz-microsite-shell .ntz-gallery-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.ntz-microsite-shell .ntz-gallery-card {
	margin: 0;
}

.ntz-microsite-shell .ntz-gallery-card figcaption {
	margin-top: 10px;
	color: #475569;
}

.ntz-microsite-shell .ntz-section-gallery .ntz-gallery-card {
	padding: 18px;
	border-radius: calc(var(--ntz-radius) + 2px);
	background: #fff;
	box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08);
}

.ntz-microsite-shell .ntz-section-gallery-showcase .ntz-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 100%;
}

.ntz-microsite-shell .ntz-section-gallery-showcase .ntz-card img {
	width: 100%;
	max-width: 260px;
	margin: 0 auto;
	object-fit: contain;
	box-shadow: none;
}

.ntz-microsite-shell .ntz-quote {
	background: rgba(255, 255, 255, 0.08);
	position: relative;
	padding-top: 68px;
}

.ntz-microsite-shell .ntz-quote cite {
	display: block;
	margin-top: 14px;
	font-style: normal;
	font-weight: 700;
}

.ntz-microsite-shell .ntz-quote p {
	margin: 0;
}

.ntz-microsite-shell .ntz-quote__icon {
	position: absolute;
	top: 20px;
	left: 24px;
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--ntz-secondary);
	color: #111827;
	font-size: 12px;
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.14);
}

.ntz-microsite-shell .ntz-contact-list {
	list-style: none;
	padding: 0;
	margin: 18px 0 0;
	display: grid;
	gap: 10px;
}

.ntz-microsite-shell .ntz-section-footer p {
	margin: 0;
	text-align: center;
}

.ntz-microsite-shell .ntz-section-houses {
	background: #faf9f8;
}

.ntz-microsite-shell .ntz-houses-heading {
	margin-bottom: 12px;
}

.ntz-microsite-shell .ntz-houses-intro {
	margin: 0 0 28px;
	max-width: 60ch;
	color: #475569;
}

.ntz-microsite-shell .ntz-houses-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.ntz-microsite-shell .ntz-empty-card {
	grid-column: 1 / -1;
	padding: 42px 34px;
	border-radius: calc(var(--ntz-radius) + 6px);
	background: linear-gradient(135deg, #111827 0%, #1f2937 100%);
	color: #fff;
	text-align: center;
	box-shadow: 0 24px 50px rgba(15, 23, 42, 0.22);
}

.ntz-microsite-shell .ntz-empty-card h3 {
	font-size: clamp(28px, 3vw, 40px);
	margin-bottom: 12px;
}

.ntz-microsite-shell .ntz-empty-card p {
	margin: 0 auto;
	max-width: 48ch;
	color: rgba(255, 255, 255, 0.8);
}

.ntz-microsite-shell .ntz-empty-card__icon {
	width: 76px;
	height: 76px;
	margin: 0 auto 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.12);
	color: var(--ntz-secondary);
	font-size: 30px;
}

.ntz-microsite-shell .house-item.block {
	overflow: hidden;
	position: relative;
	background: #fff;
	transition: 0.3s ease-out;
	border: 1px solid #ebebeb;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.ntz-microsite-shell .house-item.block:hover figure::before {
	background: rgba(0, 0, 0, 0.4);
}

.ntz-microsite-shell .house-item.block:hover figure span {
	color: #fff;
}

.ntz-microsite-shell .house-item.block .simplefavorite-button {
	line-height: 1;
	font-size: 18px;
	border-radius: 50%;
	border: none;
	background: #fff;
	padding: 0;
	margin-left: auto;
	color: #111827;
}

.ntz-microsite-shell .house-item.block .new-title {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 0 10px;
	gap: 10px;
}

.ntz-microsite-shell .house-item.block figure {
	position: relative;
	margin-bottom: 0;
	height: 220px;
}

.ntz-microsite-shell .house-item.block figure::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: 0.3s ease-out;
	background: rgba(0, 0, 0, 0);
}

.ntz-microsite-shell .house-item.block figure span {
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	color: rgba(255, 255, 255, 0);
	width: fit-content;
	height: fit-content;
	position: absolute;
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	transition: 0.3s ease-out;
}

.ntz-microsite-shell .house-item.block figure .category {
	position: absolute;
	left: 14px;
	bottom: 14px;
	padding: 7px 12px;
	border-radius: 999px;
	background: rgba(17, 24, 39, 0.82);
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.ntz-microsite-shell .house-item.block figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ntz-microsite-shell .house-item.block .content {
	display: flex;
	flex-direction: column;
	padding: 15px;
	font-weight: 300;
	color: #3c3c3c;
}

.ntz-microsite-shell .house-item.block .content .inline-specs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.ntz-microsite-shell .house-item.block .content .inline-specs i {
	opacity: 0.6;
	font-size: 60%;
}

.ntz-microsite-shell .house-item.block .content .address {
	margin-bottom: 0;
	line-height: 1.6;
}

.ntz-microsite-shell .house-item.block .content .price {
	font-size: 22px;
	font-weight: 600;
	color: #000;
	margin-bottom: 0;
}

.ntz-microsite-shell .ntz-about-card {
	display: grid;
	grid-template-columns: minmax(260px, 0.92fr) minmax(0, 1.08fr);
	gap: 28px;
	align-items: center;
}

.ntz-microsite-shell .ntz-about-card__media img,
.ntz-microsite-shell .ntz-about-split__media img {
	width: 100%;
	min-height: 320px;
	border-radius: calc(var(--ntz-radius) + 6px);
	object-fit: cover;
	box-shadow: 0 24px 52px rgba(15, 23, 42, 0.14);
}

.ntz-microsite-shell .ntz-about-card__content p:last-child,
.ntz-microsite-shell .ntz-about-split .ntz-card p:last-child {
	margin-bottom: 0;
}

.ntz-microsite-shell .ntz-about-split__intro {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

@media (max-width: 900px) {
	.ntz-microsite-shell .ntz-hero,
	.ntz-microsite-shell .ntz-grid-3,
	.ntz-microsite-shell .ntz-grid-2,
	.ntz-microsite-shell .ntz-gallery-grid,
	.ntz-microsite-shell .ntz-houses-grid,
	.ntz-microsite-shell .ntz-about-card {
		grid-template-columns: 1fr;
	}

	.ntz-microsite-shell .ntz-hero h1 {
		font-size: clamp(40px, 11vw, 62px);
	}

	.ntz-microsite-shell .ntz-about-card__media img,
	.ntz-microsite-shell .ntz-about-split__media img {
		min-height: 240px;
	}
}
