/*
Theme Name: Saluja Infra 2025
Description: Custom block-theme child theme for Saluja Infra.
Author: Saluja Infra
Template: twentytwentyfive
Version: 1.0.0
Text Domain: saluja-infra-2025
*/

:root {
	--SID-color-primary: var(--wp--preset--color--primary, #164832);
	--SID-color-accent: var(--wp--preset--color--accent, #f16b24);
	--SID-color-contrast: var(--wp--preset--color--contrast, #111);
	--SID-color-surface: var(--wp--preset--color--surface, #f5f4ef);
	--SID-color-base: var(--wp--preset--color--base, #fff);
	--SID-font-family: var(--wp--preset--font-family--manrope, Manrope, sans-serif);
	--SID-content-width: 1200px;
	--SID-transition: 180ms ease;
	--SID-transition-emphasis: 200ms ease;
}

@font-face {
	font-family: Manrope;
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("../twentytwentyfive/assets/fonts/manrope/Manrope-VariableFont_wght.woff2") format("woff2");
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--SID-font-family) !important;
}

.wp-site-blocks {
	font-family: var(--SID-font-family);
	padding-right: 0;
	padding-left: 0;
}

.SID-project-share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 20px;
}

.SID-project-share__label {
	width: 100%;
	color: var(--SID-color-contrast);
	font-size: .82rem;
	font-weight: 700;
}

.SID-project-share__link {
	display: inline-flex;
	width: 44px;
	height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 25%, transparent);
	border-radius: 50%;
	background: var(--SID-color-base);
	color: var(--SID-color-primary);
	font: inherit;
	font-size: .85rem;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.SID-project-share__icon {
	display: block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	object-fit: contain;
}

.SID-project-share__link:hover,
.SID-project-share__link:focus-visible {
	border-color: var(--SID-color-primary);
	background: var(--SID-color-base);
	color: var(--SID-color-contrast);
}

.SID-project-share__status {
	flex-basis: 100%;
	font-size: .8rem;
}

.SID-site-header {
	position: relative;
	z-index: 5;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 7px 0;
	border: 0;
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-contrast) 8%, transparent);
	border-radius: 0;
	background: var(--SID-color-base);
	box-shadow: 0 3px 14px color-mix(in srgb, var(--SID-color-contrast) 7%, transparent);
}

/* Stick the template-part wrapper so the header can remain fixed beyond its own height. */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 1000;
	transition: transform 180ms ease;
}

.wp-site-blocks > header.wp-block-template-part.SID-header-hidden {
	transform: translateY(-100%);
}

body.admin-bar .wp-site-blocks > header.wp-block-template-part {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .wp-site-blocks > header.wp-block-template-part {
		top: 46px;
	}
}

.SID-site-header__inner {
	display: grid !important;
	width: min(var(--SID-content-width), 100%);
	max-width: var(--SID-content-width);
	margin: 0 auto !important;
	padding: 0 14px;
	box-sizing: border-box;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	margin-bottom: 0 !important;
}

.SID-site-header__brand,
.SID-site-header__navigation {
	margin-block: 0 !important;
}

.SID-site-logo {
	margin: 0;
	flex: 0 0 46px;
}

.SID-site-logo img {
	display: block;
	width: 46px;
	height: auto;
	max-height: 46px;
	object-fit: contain;
}

.SID-brand {
	align-items: center;
	gap: 9px;
}

.SID-brand__text p {
	margin: 0;
}

.SID-brand__name {
	white-space: nowrap;
	font-size: .93rem;
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1.15;
}

.SID-brand__name a {
	color: var(--SID-color-contrast);
	text-decoration: none;
}

.SID-brand__tagline {
	margin-top: 3px !important;
	color: var(--SID-color-primary);
	font-size: .46rem;
	font-weight: 800;
	letter-spacing: .035em;
	line-height: 1.1;
	text-transform: uppercase;
}

.SID-site-header__navigation {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
	min-width: 0;
	flex-basis: auto !important;
	margin: 0 !important;
	gap: 10px;
}

.SID-site-header__brand {
	min-width: 0;
	flex-basis: auto !important;
	margin: 0 !important;
}

.SID-site-header .wp-block-navigation {
	flex: 0 1 auto;
	justify-content: flex-end;
}

.SID-site-header .wp-block-navigation__container {
	align-items: flex-start;
	gap: 10px;
}

.SID-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
	display: none;
}

.SID-site-header .wp-block-navigation__responsive-container-open {
	display: flex;
	padding: 8px;
	color: var(--SID-color-primary);
}

.SID-site-header .wp-block-navigation__responsive-container.is-menu-open {
	padding: 24px;
	background: var(--SID-color-base);
}

.SID-site-header .wp-block-navigation-item__content {
	white-space: nowrap;
	padding: 8px 0;
	color: var(--SID-color-contrast);
	font-size: .88rem;
}

.SID-site-header .wp-block-navigation-item__content:hover,
.SID-site-header .wp-block-navigation-item__content:focus {
	color: var(--SID-color-primary);
	text-decoration: underline;
	text-decoration-color: var(--SID-color-accent);
	text-underline-offset: 6px;
}

.SID-header-cta {
	display: none;
	align-items: center;
	justify-content: flex-end;
	margin: 0 !important;
	flex-shrink: 0;
}

.SID-site-header .SID-header-cta {
	display: none !important;
}

.SID-header-cta .wp-block-button {
	margin: 0;
}

.SID-header-cta .wp-block-button__link,
.SID-button--dark .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	border: 1px solid var(--SID-color-primary);
	border-radius: 7px;
	background: var(--SID-color-primary) !important;
	color: var(--SID-color-base) !important;
	font-size: .88rem;
	font-weight: 700;
	padding: 12px 20px;
	line-height: 1.2;
	white-space: nowrap;
}

.SID-button--dark .wp-block-button__link:hover,
.SID-header-cta .wp-block-button__link:hover {
	background: #10110f;
}

.SID-home .SID-hero {
	min-height: 390px !important;
	background-color: var(--SID-color-primary);
}

.SID-hero .wp-block-cover__image-background {
	object-position: center 57%;
	filter: saturate(1.22) contrast(1.04) brightness(1.08);
}

.SID-hero .wp-block-cover__background {
	background: linear-gradient(90deg, color-mix(in srgb, var(--SID-color-base) 93%, transparent) 0%, color-mix(in srgb, var(--SID-color-base) 82%, transparent) 34%, color-mix(in srgb, var(--SID-color-base) 28%, transparent) 58%, color-mix(in srgb, var(--SID-color-primary) 10%, transparent) 100%) !important;
	opacity: 1 !important;
}

.SID-hero__content {
	width: min(var(--SID-content-width), calc(100% - 48px)) !important;
	max-width: var(--SID-content-width) !important;
	padding-top: 54px;
	padding-bottom: 58px;
	color: var(--SID-color-primary);
}

.SID-hero__content .wp-block-columns {
	align-items: center !important;
	gap: 18px;
	margin-bottom: 0;
}

.SID-hero__copy {
	flex-basis: 58% !important;
}

.SID-hero__coming-soon {
	flex-basis: 42% !important;
}

.SID-eyebrow {
	margin-bottom: 10px;
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.SID-hero h1 {
	max-width: 590px;
	margin: 0 0 13px;
	color: var(--SID-color-contrast);
	font-size: clamp(3.2rem, 6.2vw, 5.25rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: .9;
}

.SID-hero h1 br {
	display: block;
}

.SID-accent {
	color: var(--SID-color-accent);
}

.SID-hero__copy > p:not(.SID-eyebrow) {
	max-width: 430px;
	margin-top: 0;
	color: var(--SID-color-contrast);
	line-height: 1.35;
}

.SID-hero__copy .wp-block-buttons {
	gap: 12px;
	margin-top: 18px;
}

.SID-hero__copy .wp-block-button__link {
	border-radius: 6px;
	padding: 11px 19px;
	font-size: .83rem;
}

.SID-button--dark .wp-block-button__link {
	background: var(--SID-color-primary) !important;
	color: var(--SID-color-base) !important;
}

.SID-button--outline .wp-block-button__link {
	border: 1px solid var(--SID-color-accent);
	border-radius: 7px;
	background: var(--SID-color-base) !important;
	color: var(--SID-color-primary) !important;
	font-size: .88rem;
	font-weight: 700;
	padding: 12px 20px;
}

.SID-launch-badge {
	width: fit-content;
	margin-left: auto;
	min-width: 230px;
	padding: 19px 27px 15px;
	transform: rotate(-7deg) skew(-4deg);
	clip-path: polygon(4% 7%, 17% 10%, 19% 0, 31% 8%, 38% 1%, 48% 8%, 61% 0, 66% 8%, 82% 2%, 83% 11%, 98% 8%, 95% 21%, 100% 30%, 95% 40%, 100% 53%, 94% 63%, 100% 74%, 90% 81%, 94% 94%, 77% 91%, 72% 100%, 61% 93%, 50% 100%, 41% 93%, 28% 100%, 25% 92%, 9% 97%, 12% 84%, 0 78%, 7% 66%, 0 55%, 7% 44%, 1% 32%, 9% 24%);
	background: var(--SID-color-accent);
	box-shadow: none;
	color: var(--SID-color-base);
	text-align: center;
}

.SID-launch-badge__small {
	margin: 0;
	color: var(--SID-color-primary);
	font-size: 1.15rem;
	font-weight: 800;
	font-style: italic;
	letter-spacing: .03em;
	line-height: 1;
	text-transform: uppercase;
}

.SID-launch-badge__title {
	margin: 0 !important;
	color: var(--SID-color-base);
	font-size: clamp(2.25rem, 4vw, 3.5rem);
	font-style: italic;
	font-weight: 900;
	letter-spacing: -.06em;
	line-height: .9;
	text-transform: uppercase;
}

.SID-launch-badge__ribbon {
	width: fit-content;
	margin: 3px auto 0 !important;
	padding: 4px 18px;
	transform: skew(-7deg);
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
	font-size: .95rem;
	font-style: italic;
	font-weight: 900;
	line-height: 1.1;
	text-transform: uppercase;
}

.SID-benefits {
	position: relative;
	z-index: 2;
	width: min(1120px, calc(100% - 64px)) !important;
	margin: -31px auto 0 !important;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 5%, transparent);
	border-radius: 12px;
	background: color-mix(in srgb, var(--SID-color-base) 97%, transparent);
	box-shadow: 0 8px 26px color-mix(in srgb, var(--SID-color-contrast) 13%, transparent);
}

.SID-benefits__grid {
	gap: 0;
	margin: 0;
	padding: 18px 10px;
}

.SID-benefit {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin: 0 !important;
	padding: 8px 14px;
	border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
}

.SID-benefit:last-child {
	border-right: 0;
}

.SID-benefit__icon {
	margin: 0;
	color: var(--SID-color-primary);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
}

.SID-benefit__label {
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .82rem;
	font-weight: 700;
	line-height: 1.3;
}

.SID-about {
	padding-top: 58px;
	padding-bottom: 45px;
}

.SID-about__columns {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.5fr) minmax(190px, .9fr);
	align-items: center !important;
	gap: 24px;
	margin-bottom: 0;
}

.SID-about__visual {
	width: auto !important;
	flex-basis: auto !important;
}

.SID-about__copy {
	width: auto !important;
	flex-basis: auto !important;
}

.SID-about__reasons {
	width: auto !important;
	flex-basis: auto !important;
}

.SID-about__visual {
	position: relative;
}

.SID-about__image {
	margin: 0;
}

.SID-about__image img {
	width: 100%;
	height: 270px;
	border: 3px solid var(--SID-color-base);
	border-radius: 13px;
	object-fit: cover;
	object-position: center 65%;
	box-shadow: 0 7px 22px color-mix(in srgb, var(--SID-color-contrast) 14%, transparent);
}

.SID-about__image-caption {
	position: absolute;
	bottom: 28px;
	left: -12px;
	max-width: 260px;
	margin: 0;
	padding: 13px 22px;
	transform: rotate(-4deg);
	background: var(--SID-color-accent);
	color: var(--SID-color-base);
	font-size: 1.15rem;
	font-style: italic;
	font-weight: 900;
	text-transform: uppercase;
}

.SID-about__copy h2 {
	margin-top: 0;
	margin-bottom: 12px;
	font-size: clamp(1.9rem, 3vw, 2.7rem);
	letter-spacing: -.045em;
	line-height: 1.05;
}

.SID-about__copy > p:not(.SID-eyebrow) {
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .94rem;
	line-height: 1.65;
}

.SID-about__reasons {
	border-left: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	padding-left: 18px;
}

.SID-reason {
	align-items: center;
	gap: 12px;
	padding: 13px 0;
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
}

.SID-reason:last-child {
	border-bottom: 0;
}

.SID-reason__icon {
	display: grid;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	margin: 0;
	place-items: center;
	border: 1px solid var(--SID-color-accent);
	border-radius: 50%;
	color: var(--SID-color-accent);
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1;
}

.SID-reason > p:not(.SID-reason__icon) {
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .82rem;
	line-height: 1.35;
}

.SID-projects {
	padding: 5px 24px 75px;
}

.SID-projects > .SID-eyebrow {
	margin-bottom: 22px;
	text-align: center;
}

.SID-projects > .SID-eyebrow::before,
.SID-projects > .SID-eyebrow::after {
	display: inline-block;
	width: 22px;
	height: 1px;
	margin: 0 10px 4px;
	background: var(--SID-color-accent);
	content: "";
}

.SID-project-grid {
	gap: 22px;
}

.SID-project {
	overflow: hidden;
	margin: 0 !important;
	border-radius: 12px;
	background: var(--SID-color-base);
	box-shadow: 0 8px 26px color-mix(in srgb, var(--SID-color-contrast) 10%, transparent);
}

.SID-project__image {
	margin: 0;
}

.SID-project__image img {
	display: block;
	width: 100%;
	height: 170px;
	object-fit: cover;
	object-position: center 60%;
}

.SID-project:nth-child(1) .SID-project__image img {
	object-position: 18% 58%;
}

.SID-project:nth-child(2) .SID-project__image img {
	object-position: 54% 58%;
}

.SID-project:nth-child(3) .SID-project__image img {
	object-position: 86% 58%;
}

.SID-project__details {
	position: relative;
	margin: -30px 12px 12px;
	padding: 14px 16px 12px;
	border-radius: 10px;
	background: color-mix(in srgb, var(--SID-color-base) 97%, transparent);
	box-shadow: 0 3px 12px color-mix(in srgb, var(--SID-color-contrast) 7%, transparent);
}

.SID-project__location {
	margin: 0 0 3px;
	color: var(--SID-color-primary);
	font-size: .75rem;
	font-weight: 600;
}

.SID-project__details h3 {
	margin: 0 0 3px;
	color: var(--SID-color-contrast);
	font-size: 1.2rem;
}

.SID-project__details > p:not(.SID-project__location, .SID-project__status) {
	margin: 0 0 10px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .82rem;
}

.SID-project__status {
	width: fit-content;
	margin: 0;
	padding: 4px 12px;
	border-radius: 20px;
	background: color-mix(in srgb, var(--SID-color-accent) 8%, var(--SID-color-base));
	color: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
	font-size: .7rem;
	font-weight: 700;
}

.SID-contact {
	padding: 60px 24px;
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
	text-align: center;
}

.SID-contact h2 {
	margin: 0 0 8px;
	font-size: clamp(2rem, 4vw, 3.2rem);
	letter-spacing: -.04em;
}

.SID-contact > p {
	margin-top: 0;
}

.SID-contact .wp-block-buttons {
	justify-content: center;
}

.SID-contact .wp-block-button__link {
	border-radius: 7px;
	background: var(--SID-color-base) !important;
	color: var(--SID-color-primary) !important;
	font-weight: 700;
}

@media (min-width: 761px) {
	.SID-site-header__inner {
		padding-right: 0;
		padding-left: 0;
		grid-template-columns: minmax(220px, .9fr) minmax(0, 2.1fr);
		gap: 12px;
	}

	.SID-site-logo {
		flex-basis: 54px;
	}

	.SID-site-logo img {
		width: 54px;
		max-height: 54px;
	}

	.SID-brand__name {
		font-size: 1.02rem;
	}

	.SID-brand__tagline {
		font-size: .52rem;
	}

	.SID-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: block;
	}

	.SID-site-header .wp-block-navigation__responsive-container-open {
		display: none;
	}

	.SID-site-header .wp-block-navigation__container {
		align-items: center;
		flex-wrap: nowrap;
		gap: 12px !important;
	}

	.SID-site-header .wp-block-navigation-item__content {
		font-size: .77rem;
	}

	.SID-site-header .SID-header-cta {
		display: flex !important;
	}

	.SID-header-cta .wp-block-button__link {
		padding: 10px 13px;
		font-size: .78rem;
	}
}

@media (min-width: 961px) {
	.SID-site-header__inner {
		padding-right: 0;
		padding-left: 0;
		grid-template-columns: minmax(230px, .9fr) minmax(0, 2.1fr);
		gap: 22px;
	}

	.SID-site-header__navigation {
		gap: 18px;
	}

	.SID-site-header .wp-block-navigation__container {
		gap: clamp(12px, 1.8vw, 27px) !important;
	}

	.SID-site-header .wp-block-navigation-item__content {
		font-size: .88rem;
	}

	.SID-header-cta .wp-block-button__link {
		padding: 12px 20px;
		font-size: .88rem;
	}
}

.SID-contact-hero {
	min-height: 285px !important;
	overflow: hidden;
}

.SID-contact-hero .wp-block-cover__image-background {
	object-position: center 54%;
	filter: saturate(1.15) contrast(1.02);
}

.SID-contact-hero .wp-block-cover__background {
	background: linear-gradient(90deg, color-mix(in srgb, var(--SID-color-base) 93%, transparent) 0%, color-mix(in srgb, var(--SID-color-base) 84%, transparent) 39%, color-mix(in srgb, var(--SID-color-base) 42%, transparent) 72%, color-mix(in srgb, var(--SID-color-base) 12%, transparent) 100%) !important;
	opacity: 1 !important;
}

.SID-contact-hero__content {
	width: calc(100% - 36px) !important;
	margin: 0 auto !important;
	padding: 28px 0 42px;
	color: var(--SID-color-contrast);
}

.SID-contact-hero__content > * {
	max-width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	text-align: left;
}

.SID-contact-hero__content .SID-eyebrow {
	margin: 0 0 9px;
	color: var(--SID-color-primary);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.SID-contact-hero h1 {
	max-width: 720px !important;
	margin: 0 0 10px;
	font-size: clamp(2.15rem, 9vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -.06em;
	line-height: 1;
}

.SID-contact-page .SID-accent {
	color: var(--SID-color-accent);
}

.SID-contact-hero__description {
	width: 100%;
	max-width: 510px !important;
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .88rem;
	line-height: 1.5;
}

.SID-contact-benefits {
	position: relative;
	z-index: 2;
	width: calc(100% - 24px) !important;
	margin: 24px auto 32px !important;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 7%, transparent);
	border-radius: 12px;
	background: var(--SID-color-base);
	box-shadow: 0 8px 26px color-mix(in srgb, var(--SID-color-contrast) 10%, transparent);
}

.SID-contact-benefits__grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 7px;
}

.SID-contact-benefits__grid > .wp-block-column {
	display: flex;
	align-items: center;
	gap: 8px;
	width: auto !important;
	margin: 0 !important;
	padding: 9px 6px;
	border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	flex-basis: auto !important;
}

.SID-contact-benefits__grid > .wp-block-column:last-child {
	border-right: 0;
}

.SID-contact-benefits__grid > .wp-block-column:nth-child(even) {
	border-right: 0;
}

.SID-contact-benefits__grid > .wp-block-column:nth-child(odd) {
	border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
}

.SID-contact-benefits__grid > .wp-block-column:nth-child(-n+2) {
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
}

.SID-contact-benefits__grid > .wp-block-column > span {
	display: grid;
	width: 30px;
	height: 30px;
	flex: 0 0 30px;
	place-items: center;
	border-radius: 50%;
	background: color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base));
	color: var(--SID-color-primary);
	font-size: .95rem;
	font-weight: 900;
}

.SID-contact-benefits strong,
.SID-contact-benefits small {
	display: block;
}

.SID-contact-benefits strong {
	color: var(--SID-color-contrast);
	font-size: .68rem;
	font-weight: 800;
	line-height: 1.3;
}

.SID-contact-benefits small {
	margin-top: 3px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .58rem;
	line-height: 1.3;
}

.SID-contact-main {
	width: calc(100% - 28px) !important;
	padding: 20px 0 25px;
	margin-right: auto !important;
	margin-left: auto !important;
}

.SID-contact-main__columns {
	align-items: stretch !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 15px;
	margin: 0;
}

.SID-contact-form-card {
	box-sizing: border-box;
	width: 100%;
	flex-basis: 100% !important;
	margin: 0 !important;
	padding: 20px 16px;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	border-radius: 11px;
	background: var(--SID-color-base);
	box-shadow: 0 5px 20px color-mix(in srgb, var(--SID-color-contrast) 6%, transparent);
}

.SID-contact-form-card > .SID-eyebrow {
	margin: 0 0 8px;
	color: var(--SID-color-primary);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.SID-contact-form-card h2 {
	margin: 0 0 18px;
	color: var(--SID-color-contrast);
	font-size: 1.7rem;
	font-weight: 800;
	line-height: 1.08;
}

.SID-contact-form__fields {
	display: grid;
	grid-template-columns: 1fr;
	gap: 11px;
}

.SID-contact-form {
	margin: 0 !important;
}

.SID-contact-form__meta {
	display: none;
}

.SID-contact-form .SID-contact-form__field {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	min-width: 0;
	margin: 0 !important;
	gap: 6px !important;
}

.SID-contact-form .SID-contact-form__field > br {
	display: none !important;
}

.SID-contact-form .SID-contact-form__field label {
	display: block !important;
	flex: 0 0 auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--SID-color-contrast);
	font-size: .76rem;
	font-weight: 750;
	line-height: 1.4 !important;
}

.SID-contact-form__field label span {
	color: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
}

.SID-contact-form .SID-contact-form__field input,
.SID-contact-form .SID-contact-form__field select,
.SID-contact-form .SID-contact-form__field textarea {
	box-sizing: border-box;
	display: block !important;
	flex: 0 0 auto !important;
	width: 100%;
	height: auto !important;
	min-height: 42px !important;
	margin: 0 !important;
	margin-block-start: 0 !important;
	padding: 10px 12px;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	border-radius: 5px;
	background: var(--SID-color-base);
	color: var(--SID-color-contrast);
	font: inherit;
	font-size: .77rem;
	line-height: 1.35;
}

.SID-contact-form__field input::placeholder,
.SID-contact-form__field textarea::placeholder {
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	opacity: 1;
}

.SID-contact-form__field input:focus,
.SID-contact-form__field select:focus,
.SID-contact-form__field textarea:focus {
	border-color: var(--SID-color-primary);
	outline: 3px solid color-mix(in srgb, var(--SID-color-primary) 18%, transparent);
	outline-offset: 1px;
}

.SID-contact-form__field--message {
	grid-column: auto;
}

.SID-contact-form__field textarea {
	min-height: 100px;
	resize: vertical;
}

.SID-contact-form__honeypot {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: 0 !important;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.SID-contact-form__recaptcha-error {
	margin: 12px 0 0;
	color: #9b1c1c;
	font-size: .9rem;
}

.SID-contact-form__submit {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 13px 0 0;
	padding: 12px 18px;
	border: 1px solid var(--SID-color-accent);
	border-radius: 24px;
	background: var(--SID-color-accent);
	color: var(--SID-color-base);
	cursor: pointer;
	font: inherit;
	font-size: .82rem;
	font-weight: 800;
}

.SID-contact-form__submit:hover {
	border-color: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
	background: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
}

.SID-contact-form__submit:focus-visible,
.SID-contact-visit__link:focus-visible {
	outline: 3px solid var(--SID-color-primary);
	outline-offset: 3px;
}

.SID-contact-form__privacy {
	margin: 8px 0 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .68rem;
	line-height: 1.4;
}

.SID-contact-form__notice {
	margin: 0 0 15px;
	padding: 11px 13px;
	border-radius: 6px;
	font-size: .8rem;
	line-height: 1.45;
}

.SID-contact-form__notice--success {
	border: 1px solid color-mix(in srgb, var(--SID-color-accent) 30%, var(--SID-color-base));
	background: color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base));
	color: var(--SID-color-primary);
}

.SID-contact-form__notice--error {
	border: 1px solid color-mix(in srgb, var(--SID-color-accent) 30%, var(--SID-color-base));
	background: color-mix(in srgb, var(--SID-color-accent) 8%, var(--SID-color-base));
	color: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
}

/* Dedicated project site visit request page. */
.SID-site-visit-page {
	padding-bottom: clamp(48px, 7vw, 88px);
	background: linear-gradient(180deg, color-mix(in srgb, var(--SID-color-surface) 82%, var(--SID-color-base)), var(--SID-color-base) 440px);
}

.SID-site-visit-hero {
	position: relative;
	isolation: isolate;
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(54px, 8vw, 100px) max(24px, calc((100vw - var(--SID-content-width)) / 2)) clamp(42px, 6vw, 72px);
	overflow: hidden;
	background: radial-gradient(ellipse at 88% 5%, color-mix(in srgb, var(--SID-color-accent) 19%, transparent), transparent 31%), linear-gradient(125deg, color-mix(in srgb, var(--SID-color-primary) 92%, #000), var(--SID-color-primary) 68%, color-mix(in srgb, var(--SID-color-primary) 82%, #658c64));
}

.SID-site-visit-hero > .SID-eyebrow,
.SID-site-visit-form-card > .SID-eyebrow {
	margin: 0 0 12px;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.SID-site-visit-hero > * {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.SID-site-visit-hero > .SID-eyebrow {
	margin-left: 0 !important;
	margin-right: 0 !important;
	color: color-mix(in srgb, var(--SID-color-accent) 80%, var(--SID-color-base));
}

.SID-site-visit-hero h1 {
	position: relative;
	z-index: 1;
	max-width: 760px;
	margin: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	color: var(--SID-color-base);
	font-size: clamp(2.5rem, 6vw, 4.8rem);
	font-weight: 850;
	letter-spacing: -.055em;
	line-height: .98;
}

.SID-site-visit-hero__accent {
	color: var(--SID-color-accent);
}

.SID-site-visit-hero__intro {
	position: relative;
	z-index: 1;
	max-width: 660px;
	margin: 18px 0 0 !important;
	color: color-mix(in srgb, var(--SID-color-base) 84%, transparent);
	font-size: clamp(1rem, 1.5vw, 1.16rem);
	line-height: 1.65;
}

.SID-site-visit-layout {
	box-sizing: border-box;
	display: grid;
	width: min(1200px, calc(100% - 48px)) !important;
	max-width: 1200px !important;
	grid-template-columns: minmax(0, 1.55fr) minmax(270px, .85fr);
	align-items: stretch;
	column-gap: clamp(20px, 3vw, 36px) !important;
	row-gap: clamp(20px, 3vw, 36px) !important;
	margin: clamp(24px, 4vw, 44px) auto 0 !important;
}

.SID-site-visit-layout.alignwide {
	margin-left: auto !important;
	margin-right: auto !important;
}

.SID-site-visit-layout > .SID-site-visit-form-card,
.SID-site-visit-layout > .SID-site-visit-aside {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: none !important;
	margin: 0 !important;
}

.SID-site-visit-form-card {
	box-sizing: border-box;
	padding: clamp(22px, 3.5vw, 42px);
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 11%, var(--SID-color-base));
	border-radius: 18px;
	background: var(--SID-color-base);
	box-shadow: 0 18px 50px color-mix(in srgb, var(--SID-color-primary) 9%, transparent);
}

.SID-site-visit-form-card > .wp-block-shortcode,
.SID-site-visit-form-card .SID-site-visit-form {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.SID-site-visit-form-card .SID-site-visit-form > * {
	margin-block-end: 0 !important;
}

.SID-site-visit-form-card h2 {
	margin: 0 0 24px;
	color: var(--SID-color-contrast);
	font-size: clamp(1.45rem, 2vw, 1.9rem);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.15;
}

.SID-site-visit-form__fields {
	display: grid !important;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 16px !important;
	row-gap: 12px !important;
}

.SID-site-visit-form__fields > .SID-contact-form__field {
	display: grid !important;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: none !important;
	align-content: start !important;
	justify-content: stretch !important;
	grid-template-columns: minmax(0, 1fr);
	grid-auto-rows: min-content;
	row-gap: 6px !important;
	margin: 0 !important;
}

.SID-site-visit-form__fields > .SID-contact-form__field > br {
	display: none !important;
}

.SID-site-visit-form__fields input,
.SID-site-visit-form__fields select,
.SID-site-visit-form__fields textarea {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
}

.SID-site-visit-form__field--project,
.SID-site-visit-form__field--email,
.SID-site-visit-form .SID-contact-form__field--message {
	grid-column: 1 / -1;
}

.SID-site-visit-form .SID-contact-form__field label {
	display: block;
	margin: 0 !important;
	font-size: .8rem;
}

.SID-site-visit-form .SID-contact-form__field input,
.SID-site-visit-form .SID-contact-form__field select,
.SID-site-visit-form .SID-contact-form__field textarea {
	min-height: 48px;
	margin: 0 !important;
	padding: 12px 14px;
	border-radius: 8px;
	font-size: .86rem;
}

.SID-site-visit-form .SID-contact-form__field textarea {
	min-height: 112px;
}

.SID-site-visit-form__optional {
	margin-left: 4px;
	color: color-mix(in srgb, var(--SID-color-contrast) 58%, var(--SID-color-base));
	font-size: .72rem;
	font-weight: 500;
}

.SID-site-visit-form .SID-contact-form__submit {
	display: flex;
	width: 100%;
	min-height: 50px;
	margin: 16px 0 0 !important;
	border-radius: 9px;
	background: linear-gradient(120deg, var(--SID-color-accent), color-mix(in srgb, var(--SID-color-accent) 82%, var(--SID-color-contrast))) !important;
	box-shadow: 0 7px 18px color-mix(in srgb, var(--SID-color-accent) 22%, transparent);
	font-size: .9rem;
	transition: background-color var(--SID-transition), box-shadow var(--SID-transition), border-color var(--SID-transition);
}

.SID-site-visit-form .SID-contact-form__submit:hover,
.SID-site-visit-form .SID-contact-form__submit:focus-visible {
	border-color: color-mix(in srgb, var(--SID-color-accent) 72%, var(--SID-color-contrast));
	background: color-mix(in srgb, var(--SID-color-accent) 84%, var(--SID-color-contrast)) !important;
	box-shadow: 0 9px 22px color-mix(in srgb, var(--SID-color-accent) 30%, transparent);
}

.SID-site-visit-form .SID-contact-form__privacy {
	margin: 8px 0 0 !important;
	font-size: .74rem;
}

.SID-site-visit-aside {
	position: relative;
	box-sizing: border-box;
	align-self: stretch;
	overflow: hidden;
	padding: clamp(26px, 3vw, 38px);
	border-radius: 18px;
	border: 1px solid color-mix(in srgb, var(--SID-color-accent) 18%, var(--SID-color-base));
	background: linear-gradient(145deg, color-mix(in srgb, var(--SID-color-accent) 7%, var(--SID-color-base)), var(--SID-color-base) 68%);
	box-shadow: 0 14px 38px color-mix(in srgb, var(--SID-color-primary) 8%, transparent);
	color: var(--SID-color-contrast);
}

.SID-site-visit-aside::after {
	position: absolute;
	z-index: 0;
	right: -52px;
	bottom: -76px;
	width: 220px;
	height: 220px;
	border: 1px solid color-mix(in srgb, var(--SID-color-accent) 27%, transparent);
	border-radius: 50%;
	box-shadow: 0 0 0 26px color-mix(in srgb, var(--SID-color-accent) 4%, transparent), 0 0 0 54px color-mix(in srgb, var(--SID-color-accent) 3%, transparent);
	content: "";
	pointer-events: none;
}

.SID-site-visit-aside > * {
	position: relative;
	z-index: 1;
}

.SID-site-visit-aside > .SID-eyebrow {
	margin: 0 0 16px;
	color: var(--SID-color-accent);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.SID-site-visit-aside h2 {
	max-width: 300px;
	margin: 0 0 14px;
	color: var(--SID-color-primary);
	font-size: clamp(1.6rem, 2.6vw, 2.2rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.05;
}

.SID-site-visit-aside > p:not(.SID-eyebrow) {
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 76%, var(--SID-color-base));
	font-size: .9rem;
	line-height: 1.7;
}

.SID-site-visit-aside__steps {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 12px;
	margin: 24px 0 0;
	padding-left: 22px;
	color: color-mix(in srgb, var(--SID-color-contrast) 78%, var(--SID-color-base));
	font-size: .86rem;
	line-height: 1.55;
}

.SID-site-visit-aside__steps li::marker {
	color: var(--SID-color-accent);
	font-weight: 850;
}

.SID-site-visit-aside__contact {
	position: relative;
	z-index: 1;
	margin-top: 38px;
	padding: 18px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, var(--SID-color-base));
	border-radius: 12px;
	background: color-mix(in srgb, var(--SID-color-base) 78%, var(--SID-color-surface));
}

.SID-site-visit-aside__contact-label {
	margin: 0 0 9px;
	color: color-mix(in srgb, var(--SID-color-contrast) 62%, var(--SID-color-base));
	font-size: .72rem;
	font-weight: 750;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.SID-site-visit-aside__contact > p:last-child {
	margin: 0;
	font-size: .96rem;
	font-weight: 700;
	line-height: 1.9;
}

.SID-site-visit-aside__contact a {
	color: var(--SID-color-primary);
	text-decoration-color: var(--SID-color-accent);
	text-underline-offset: 3px;
}

@media (max-width: 820px) {
	.SID-site-visit-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.SID-site-visit-aside {
		min-height: 280px;
	}
}

@media (max-width: 600px) {
	.SID-site-visit-layout {
		width: calc(100% - 32px) !important;
	}

	.SID-site-visit-hero {
		padding-top: 48px;
	}

	.SID-site-visit-form__fields {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 13px !important;
	}

	.SID-site-visit-form__field--project,
	.SID-site-visit-form__field--email,
	.SID-site-visit-form .SID-contact-form__field--message {
		grid-column: auto;
	}

	.SID-site-visit-form-card,
	.SID-site-visit-aside {
		border-radius: 14px;
	}
}

.SID-contact-aside {
	display: flex;
	width: 100%;
	flex-basis: 100% !important;
	flex-direction: column;
	gap: 13px;
	margin: 0 !important;
}

.SID-contact-aside__image {
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 9px;
}

.SID-contact-aside__image img {
	display: block;
	width: 100%;
	height: 185px;
	object-fit: cover;
}

.SID-contact-info {
	padding: 17px;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	border-radius: 9px;
	background: var(--SID-color-surface);
}

.SID-contact-info > .SID-eyebrow {
	margin: 0 0 12px;
	color: var(--SID-color-primary);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.SID-contact-info__item {
	align-items: flex-start !important;
	gap: 12px;
	margin: 0 0 13px !important;
}

.SID-contact-info__item:last-child {
	margin-bottom: 0 !important;
}

.SID-contact-info__item > span {
	display: grid;
	width: 31px;
	height: 31px;
	flex: 0 0 31px;
	place-items: center;
	border-radius: 50%;
	background: color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base));
	color: var(--SID-color-primary);
	font-weight: 800;
}

.SID-contact-info__item strong,
.SID-contact-info__item a,
.SID-contact-info__item p {
	display: block;
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .8rem;
	line-height: 1.45;
}

.SID-contact-info__item strong {
	font-weight: 800;
}

.SID-contact-info__item a {
	color: var(--SID-color-primary);
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.SID-contact-info__social {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid color-mix(in srgb, var(--SID-color-contrast) 10%, transparent);
	color: var(--SID-color-contrast);
	font-size: .8rem;
}

.SID-contact-social-icons {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0;
}

.SID-contact-social-icons a {
	display: block;
	width: 28px;
	height: 28px;
}

.SID-contact-social-icons img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.SID-contact-visit {
	display: grid;
	width: calc(100% - 28px) !important;
	grid-template-columns: 1fr;
	gap: 12px;
	margin: 0 auto 40px !important;
}

.SID-contact-visit__map {
	position: relative;
	min-height: 175px;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	border-radius: 9px;
	background-color: var(--SID-color-surface);
	background-image: linear-gradient(28deg, transparent 47%, color-mix(in srgb, var(--SID-color-base) 92%, transparent) 48% 52%, transparent 53%), linear-gradient(148deg, transparent 42%, color-mix(in srgb, var(--SID-color-base) 82%, transparent) 43% 47%, transparent 48%), repeating-linear-gradient(0deg, transparent 0 35px, color-mix(in srgb, var(--SID-color-primary) 13%, transparent) 36px 38px), repeating-linear-gradient(90deg, transparent 0 44px, color-mix(in srgb, var(--SID-color-primary) 12%, transparent) 45px 47px);
}

.SID-contact-visit__road {
	position: absolute;
	width: 130%;
	height: 18px;
	border: 4px solid var(--SID-color-base);
	border-right: 0;
	border-left: 0;
	background: color-mix(in srgb, var(--SID-color-surface) 75%, var(--SID-color-base));
}

.SID-contact-visit__road--one {
	top: 34%;
	left: -10%;
	transform: rotate(-12deg);
}

.SID-contact-visit__road--two {
	top: 62%;
	left: -18%;
	transform: rotate(19deg);
}

.SID-contact-visit__pin {
	position: absolute;
	top: 40%;
	left: 52%;
	display: grid;
	width: 43px;
	height: 43px;
	place-items: center;
	border: 3px solid var(--SID-color-base);
	border-radius: 50% 50% 50% 0;
	background: var(--SID-color-accent);
	box-shadow: 0 3px 10px color-mix(in srgb, var(--SID-color-contrast) 25%, transparent);
	color: var(--SID-color-base);
	font-size: 1.4rem;
	transform: rotate(-45deg);
}

.SID-contact-visit__map-label {
	position: absolute;
	right: 12px;
	bottom: 11px;
	padding: 6px 9px;
	border-radius: 4px;
	background: color-mix(in srgb, var(--SID-color-base) 92%, transparent);
	color: var(--SID-color-primary);
	font-size: .68rem;
	font-weight: 800;
}

.SID-contact-visit__details {
	padding: 20px 18px;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	border-radius: 9px;
	background: var(--SID-color-base);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--SID-color-contrast) 5%, transparent);
}

.SID-contact-visit__details .SID-eyebrow {
	margin: 0 0 8px;
	color: var(--SID-color-primary);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.SID-contact-visit__details h2 {
	margin: 0 0 7px;
	color: var(--SID-color-primary);
	font-size: 1.35rem;
	font-weight: 800;
}

.SID-contact-visit__details > p:not(.SID-eyebrow) {
	margin: 0 0 15px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .78rem;
	line-height: 1.55;
}

.SID-contact-visit__link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 14px;
	border: 1px solid var(--SID-color-primary);
	border-radius: 22px;
	color: var(--SID-color-primary);
	font-size: .75rem;
	font-weight: 800;
	text-decoration: none;
}

.SID-contact-visit__link:hover {
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
}

.SID-contact-faq {
	display: grid;
	width: calc(100% - 28px) !important;
	grid-template-columns: 1fr;
	gap: 16px;
	margin-right: auto !important;
	margin-left: auto !important;
	padding: 28px 0 30px;
	border-top: 1px solid color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface));
}

.SID-contact-faq__intro .SID-eyebrow {
	margin: 0 0 8px;
	color: var(--SID-color-primary);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.SID-contact-faq__intro h2 {
	margin: 0 0 10px;
	color: var(--SID-color-primary);
	font-size: clamp(1.7rem, 3vw, 2.2rem);
	font-weight: 800;
	line-height: 1.1;
}

.SID-contact-faq__intro > p:not(.SID-eyebrow) {
	margin: 0 0 14px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .8rem;
	line-height: 1.55;
}

.SID-contact-faq__list {
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	border-radius: 8px;
	background: var(--SID-color-base);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--SID-color-contrast) 5%, transparent);
}

.SID-contact-faq__list details {
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface));
}

.SID-contact-faq__list details:last-child {
	border-bottom: 0;
}

.SID-contact-faq__list summary {
	position: relative;
	padding: 13px 42px 13px 16px;
	color: var(--SID-color-contrast);
	cursor: pointer;
	font-size: .8rem;
	font-weight: 750;
	line-height: 1.4;
	list-style: none;
}

.SID-contact-faq__list summary::-webkit-details-marker {
	display: none;
}

.SID-contact-faq__list summary::after {
	position: absolute;
	top: 50%;
	right: 16px;
	color: var(--SID-color-primary);
	content: "+";
	font-size: 1.15rem;
	transform: translateY(-50%);
}

.SID-contact-faq__list details[open] summary::after {
	content: "−";
}

.SID-contact-faq__list details > p {
	max-width: 68ch;
	margin: 0;
	padding: 2px 18px 17px 16px;
	color: color-mix(in srgb, var(--SID-color-contrast) 70%, var(--SID-color-base));
	font-size: .82rem;
	line-height: 1.65;
}

.SID-contact-faq__list details > p a {
	color: var(--SID-color-primary);
	font-weight: 700;	
	text-decoration-color: var(--SID-color-accent);
	text-underline-offset: 3px;
}

@media (min-width: 601px) {
	.SID-contact-hero {
		min-height: 310px !important;
	}

	.SID-contact-hero__content {
		width: min(var(--SID-content-width), calc(100% - 48px)) !important;
		padding: 34px 0 52px;
	}

	.SID-contact-hero h1 {
		font-size: clamp(2.15rem, 3.5vw, 3.15rem);
	}

	.SID-contact-hero__description {
		font-size: .98rem;
	}

	.SID-contact-benefits {
		width: calc(100% - 36px) !important;
	}

	.SID-contact-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.SID-contact-benefits__grid > .wp-block-column:nth-child(even) {
		border-right: 0;
	}

	.SID-contact-benefits__grid > .wp-block-column:nth-child(odd) {
		border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	}

	.SID-contact-benefits__grid > .wp-block-column:nth-child(-n+2) {
		border-bottom: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
	}

	.SID-contact-benefits__grid > .wp-block-column:nth-child(n+3) {
		border-bottom: 0;
	}

	.SID-contact-main,
	.SID-contact-visit,
	.SID-contact-faq {
		width: calc(100% - 36px) !important;
	}

	.SID-contact-form-card {
		padding: 27px;
	}

	.SID-contact-form-card h2 {
		font-size: clamp(1.7rem, 3vw, 2.35rem);
	}

	.SID-contact-form__fields {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 13px 15px;
	}

	.SID-contact-form__field--message {
		grid-column: 1 / -1;
	}

	.SID-contact-aside__image img {
		height: 215px;
	}

	.SID-contact-info {
		padding: 20px 22px;
	}

	.SID-contact-visit {
		grid-template-columns: 1fr;
		gap: 20px;
		margin-bottom: 58px !important;
	}

	.SID-contact-visit__map {
		min-height: 220px;
	}

	.SID-contact-faq {
		gap: 20px;
		padding: 28px 0 30px;
	}
}

@media (min-width: 901px) {
	.SID-contact-benefits {
		width: min(var(--SID-content-width), calc(100% - 64px)) !important;
	}

	.SID-contact-benefits__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		padding: 12px 8px;
	}

	.SID-contact-benefits__grid > .wp-block-column {
		gap: 11px;
		padding: 8px 14px;
	}

	.SID-contact-benefits__grid > .wp-block-column:nth-child(n) {
		border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
		border-bottom: 0;
	}

	.SID-contact-benefits__grid > .wp-block-column:last-child {
		border-right: 0;
	}

	.SID-contact-benefits__grid > .wp-block-column > span {
		width: 38px;
		height: 38px;
		flex-basis: 38px;
		font-size: 1.15rem;
	}

	.SID-contact-benefits strong {
		font-size: .76rem;
	}

	.SID-contact-benefits small {
		font-size: .65rem;
	}

	.SID-contact-main {
		width: min(var(--SID-content-width), calc(100% - 48px)) !important;
		padding: 30px 0 25px;
	}

	.SID-contact-main__columns {
		flex-wrap: nowrap !important;
		gap: 22px;
	}

	.SID-contact-form-card {
		width: auto;
		flex-basis: 58% !important;
	}

	.SID-contact-aside {
		width: auto;
		flex-basis: 42% !important;
	}

	.SID-contact-visit,
	.SID-contact-faq {
		width: min(var(--SID-content-width), calc(100% - 48px)) !important;
	}

	.SID-contact-faq {
		grid-template-columns: minmax(0, .75fr) minmax(0, 1.5fr);
		gap: 38px;
		padding: 36px 0 30px;
	}
}

/* Full-page venture plots landing page. */
.SID-home h1,
.SID-home h2,
.SID-home h3,
.SID-contact-page h1,
.SID-contact-page h2,
.SID-contact-page h3,
.SID-footer h3 {
	font-family: var(--SID-font-family);
	letter-spacing: -.045em;
}

.SID-home h2 {
	margin-top: 0;
	margin-bottom: 14px;
	font-size: clamp(1.8rem, 3vw, 2.65rem);
	font-weight: 800;
	line-height: 1.08;
}

.SID-home p {
	font-family: var(--SID-font-family);
}

.SID-home .SID-hero {
	min-height: 460px !important;
	overflow: hidden;
}

.SID-home .SID-hero > .wp-block-cover__inner-container {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	flex: 0 0 100%;
}

.SID-hero .wp-block-cover__image-background {
	object-position: 61% center;
	filter: saturate(1.34) contrast(1.02) brightness(1.08);
}

.SID-hero .wp-block-cover__background {
	background: linear-gradient(90deg, color-mix(in srgb, var(--SID-color-base) 90%, transparent) 0%, color-mix(in srgb, var(--SID-color-base) 79%, transparent) 60%, color-mix(in srgb, var(--SID-color-base) 52%, transparent) 100%) !important;
	opacity: 1 !important;
}

.SID-hero__content {
	display: block;
	position: relative;
	z-index: 2;
	width: calc(100% - 38px) !important;
	max-width: var(--SID-content-width) !important;
	margin: 0 auto !important;
	padding: 38px 0 118px;
	color: var(--SID-color-contrast);
}

.SID-hero__copy {
	width: 100%;
	text-align: left;
}

.SID-hero__copy > * {
	margin-left: 0 !important;
	margin-right: 0 !important;
	text-align: left;
}

.SID-hero__content > .SID-eyebrow {
	margin: 0 0 12px;
	color: var(--SID-color-primary);
}

.SID-hero__copy > .SID-eyebrow {
	margin: 0 0 8px;
	color: var(--SID-color-primary);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.SID-eyebrow::before {
	display: inline-block;
	width: 24px;
	height: 2px;
	margin: 0 9px 4px 0;
	background: currentColor;
	content: "";
}

.SID-hero h1 {
	max-width: 390px;
	margin: 0 0 10px;
	font-size: clamp(2.3rem, 7vw, 2.9rem);
	font-weight: 800;
	letter-spacing: -.065em;
	line-height: .96;
}

.SID-hero__description {
	max-width: 335px;
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .88rem;
	font-weight: 550;
	line-height: 1.45;
}

.SID-hero__buttons {
	gap: 9px;
	margin-top: 13px;
}

.SID-hero__buttons .wp-block-button__link {
	padding: 10px 13px;
	font-size: .74rem;
}

.SID-button--orange .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 11px;
	border: 1px solid color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
	border-radius: 24px;
	background: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast)) !important;
	color: var(--SID-color-base) !important;
	padding: 12px 21px;
	font-size: .85rem;
	font-weight: 800;
	line-height: 1.2;
	white-space: nowrap;
}

.SID-button--orange .wp-block-button__link:hover {
	background: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast)) !important;
}

.SID-hero a:focus-visible {
	outline: 3px solid var(--SID-color-contrast);
	outline-offset: 4px;
}

.SID-hero .SID-button--light-outline .wp-block-button__link:focus-visible {
	outline-color: color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
}

.SID-button--light-outline .wp-block-button__link,
.SID-button--green-outline .wp-block-button__link,
.SID-button--orange-outline .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border: 1px solid var(--SID-color-primary);
	border-radius: 24px;
	background: var(--SID-color-base) !important;
	color: var(--SID-color-primary) !important;
	padding: 11px 19px;
	font-size: .82rem;
	font-weight: 800;
	line-height: 1.2;
	white-space: nowrap;
}

.SID-button--orange-outline .wp-block-button__link {
	border-color: var(--SID-color-accent);
}

.SID-button--green-outline .wp-block-button__link:hover,
.SID-button--light-outline .wp-block-button__link:hover {
	background: var(--SID-color-primary) !important;
	color: var(--SID-color-base) !important;
}

.SID-button--orange-outline .wp-block-button__link:hover {
	background: var(--SID-color-accent) !important;
	color: var(--SID-color-base) !important;
}

.SID-hero__coming-soon {
	position: absolute;
	display: grid;
	right: 18px;
	bottom: 22px;
	width: 190px !important;
	min-height: 100px;
	max-width: 190px;
	flex: 0 0 190px !important;
	align-content: center;
	justify-items: center;
	padding: 12px;
	transform: rotate(-5deg) scale(.82);
	transform-origin: bottom right;
	color: var(--SID-color-base);
	text-align: center;
	text-transform: uppercase;
}

.SID-hero__coming-soon::before,
.SID-hero__coming-soon::after {
	position: absolute;
	z-index: -1;
	inset: 15% -4%;
	background: var(--SID-color-primary);
	box-shadow: 0 9px 20px color-mix(in srgb, var(--SID-color-primary) 25%, transparent);
	content: "";
	transform: skewX(-9deg);
}

.SID-hero__coming-soon::after {
	inset: 8% -7%;
	z-index: -2;
	background: var(--SID-color-accent);
	clip-path: polygon(4% 18%, 100% 0, 92% 82%, 0 100%);
	transform: rotate(-3deg);
}

.SID-hero__coming-soon p {
	position: relative;
	margin: 0;
	font-weight: 900;
	font-style: italic;
	line-height: .9;
}

.SID-hero__badge-kicker {
	align-self: end;
	font-size: 1rem;
	text-shadow: 1px 2px 0 var(--SID-color-primary);
}

.SID-hero__badge-title {
	color: var(--SID-color-base);
	font-size: 2.2rem;
	letter-spacing: -.06em;
	text-shadow: 2px 3px 0 color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast));
}

.SID-hero__badge-note {
	margin-top: 4px !important;
	padding: 5px 12px;
	background: var(--SID-color-contrast);
	font-size: .72rem;
	letter-spacing: .03em;
}

.SID-hero__leaves {
	position: absolute;
	z-index: 1;
	top: 0;
	left: -72px;
	width: 125px;
	height: 165px;
	border-radius: 0 0 100% 0;
	background: radial-gradient(ellipse at 8% 8%, var(--SID-color-primary) 0 11%, transparent 12%), radial-gradient(ellipse at 35% 10%, var(--SID-color-primary) 0 10%, transparent 11%), radial-gradient(ellipse at 12% 35%, var(--SID-color-primary) 0 12%, transparent 13%), radial-gradient(ellipse at 45% 35%, var(--SID-color-primary) 0 11%, transparent 12%);
	transform: rotate(-15deg);
	opacity: .86;
}

/* Homepage feature project hero */
.SID-featured-hero {
	position: relative;
	display: flex;
	min-height: 500px;
	align-items: center;
	overflow: hidden;
	background: var(--SID-color-surface);
	color: var(--SID-color-contrast);
}

.SID-featured-hero__image,
.SID-featured-hero__shade {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.SID-featured-hero__image {
	object-fit: cover;
	object-position: center;
	filter: saturate(1.12) contrast(1.04) brightness(1.04);
}

.SID-featured-hero__shade {
	background: linear-gradient(90deg, rgba(255, 255, 255, .80) 0%, rgba(255, 255, 255, .80) 34%, rgba(255, 255, 255, .70) 58%, rgba(255, 255, 255, .20) 82%, transparent 100%);
}

.SID-featured-hero__inner {
	position: relative;
	z-index: 1;
	display: flex;
	width: min(1200px, calc(100% - 48px));
	align-items: center;
	justify-content: space-between;
	gap: clamp(28px, 6vw, 90px);
	margin: 0 auto;
	padding: clamp(74px, 9vw, 120px) 0 clamp(88px, 10vw, 132px);
}

.SID-featured-hero__copy {
	position: relative;
	z-index: 1;
	max-width: 690px;
	flex: 1 1 58%;
}

.SID-featured-hero .SID-eyebrow {
	display: inline-flex;
	align-items: center;
	margin: 0 0 20px;
	padding: 8px 13px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 22%, transparent);
	border-radius: 999px;
	background: color-mix(in srgb, var(--SID-color-base) 78%, transparent);
	color: var(--SID-color-primary);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.SID-featured-hero h1 {
	max-width: 720px;
	margin: 0 0 20px;
	font-size: clamp(3.2rem, 7vw, 6.2rem);
	font-weight: 800;
	background: linear-gradient(105deg, var(--SID-color-primary) 0%, var(--SID-color-primary) 46%, var(--SID-color-accent) 76%, var(--SID-color-accent) 100%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.055em;
	line-height: .94;
	text-wrap: balance;
}

.SID-featured-hero__description {
	max-width: 520px;
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 82%, var(--SID-color-base));
	font-size: clamp(1rem, 1.5vw, 1.18rem);
	line-height: 1.6;
}

.SID-featured-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin-top: 28px;
}

.SID-featured-hero__button {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 20px;
	border: 1px solid transparent;
	border-radius: 8px;
	font-size: .88rem;
	font-weight: 800;
	text-decoration: none;
	transition: color var(--SID-transition), background-color var(--SID-transition), border-color var(--SID-transition), box-shadow var(--SID-transition);
}

.SID-featured-hero__button--primary {
	border-color: color-mix(in srgb, var(--SID-color-accent) 82%, #d95b00);
	background: linear-gradient(115deg, var(--SID-color-accent), color-mix(in srgb, var(--SID-color-accent) 82%, #d95b00));
	box-shadow: 0 8px 22px color-mix(in srgb, var(--SID-color-accent) 28%, transparent);
	color: var(--SID-color-base);
}

.SID-featured-hero__button--secondary {
	border-color: color-mix(in srgb, var(--SID-color-primary) 55%, transparent);
	background: color-mix(in srgb, var(--SID-color-base) 88%, transparent);
	color: var(--SID-color-primary);
	backdrop-filter: blur(5px);
}

.SID-featured-hero__button--primary:hover {
	border-color: var(--SID-color-accent);
	background: color-mix(in srgb, var(--SID-color-accent) 88%, #d95b00);
	box-shadow: 0 10px 24px color-mix(in srgb, var(--SID-color-accent) 34%, transparent);
	color: var(--SID-color-base);
}

.SID-featured-hero__button--secondary:hover {
	border-color: var(--SID-color-base);
	background: var(--SID-color-base);
	color: #10110f;
}

.SID-featured-hero a:focus-visible {
	outline: 3px solid var(--SID-color-base);
	outline-offset: 4px;
}

@media (max-width: 640px) {
	.SID-featured-hero {
		min-height: 490px;
		align-items: flex-end;
	}

	.SID-featured-hero__shade {
		background: linear-gradient(0deg, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .93) 46%, rgba(255, 255, 255, .65) 74%, rgba(255, 255, 255, .10) 100%);
	}

	.SID-featured-hero__inner {
		box-sizing: border-box;
		width: min(100% - 40px, 1200px);
		align-items: flex-start;
		gap: 18px;
		padding: 54px 0 42px;
	}

	.SID-featured-hero__copy {
		max-width: none;
	}

	.SID-featured-hero__actions {
		width: 100%;
		min-width: 0;
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.SID-featured-hero__button {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

}

.SID-benefits {
	position: relative;
	z-index: 4;
	width: calc(100% - 28px) !important;
	margin: -48px auto 0 !important;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 7%, transparent);
	border-radius: 16px;
	background: color-mix(in srgb, var(--SID-color-base) 97%, transparent);
	box-shadow: 0 7px 24px color-mix(in srgb, var(--SID-color-contrast) 12%, transparent);
}

.SID-benefits__grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 8px;
}

.SID-benefit {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	margin: 0 !important;
	padding: 10px 7px;
	border: 0;
	width: auto !important;
	flex-basis: auto !important;
}

.SID-benefit:nth-child(odd) {
	border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
}

.SID-benefit:nth-child(-n+2) {
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
}

.SID-benefit:last-child {
	border: 0;
}

.SID-benefit__icon {
	display: grid;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	margin: 0;
	place-items: center;
	border-radius: 50%;
	background: var(--SID-color-surface);
	color: var(--SID-color-primary);
	font-size: 1.35rem;
	font-weight: 800;
	line-height: 1;
}

.SID-benefit p {
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .7rem;
	font-weight: 750;
	line-height: 1.25;
}

.SID-section {
	padding: 42px 18px;
}

.SID-about {
	padding-top: 42px;
	padding-bottom: 42px;
}

.SID-about__layout {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 22px;
	margin: 0;
}

.SID-about__copy {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-about__visual {
	position: relative;
	width: 100%;
	flex-basis: 100% !important;
}

.SID-eyebrow--green {
	margin: 0 0 10px;
	color: var(--SID-color-primary);
}

.SID-about__copy h2,
.SID-venture__copy h2,
.SID-highlights__copy h2,
.SID-process__intro h2,
.SID-testimonials__intro h2 {
	margin: 0 0 12px;
	color: var(--SID-color-primary);
	font-size: clamp(1.9rem, 3.1vw, 2.65rem);
	font-weight: 800;
	letter-spacing: -.05em;
	line-height: 1.06;
}

.SID-about__copy > p:not(.SID-eyebrow),
.SID-venture__copy > p:not(.SID-eyebrow),
.SID-highlights__copy > p:not(.SID-eyebrow) {
	max-width: 470px;
	margin: 0 0 17px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .88rem;
	line-height: 1.55;
}

.SID-about__image {
	margin: 0;
}

.SID-about__image img {
	display: block;
	width: 100%;
	height: 245px;
	border-radius: 12px;
	object-fit: cover;
	object-position: 60% 58%;
	box-shadow: 0 8px 25px color-mix(in srgb, var(--SID-color-contrast) 13%, transparent);
}

.SID-about__trust {
	position: absolute;
	bottom: 12px;
	left: 10px;
	align-items: center;
	gap: 10px;
	padding: 10px 15px;
	border-radius: 7px;
	background: var(--SID-color-base);
	box-shadow: 0 5px 18px color-mix(in srgb, var(--SID-color-contrast) 16%, transparent);
}

.SID-about__trust p {
	margin: 0;
	color: var(--SID-color-contrast);
	font-size: .7rem;
	line-height: 1.35;
}

.SID-about__trust-icon {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	color: var(--SID-color-primary);
	font-size: 1.5rem;
}

.SID-dots {
	position: absolute;
	z-index: -1;
	width: 88px;
	height: 106px;
	background-image: radial-gradient(var(--SID-color-accent) 1.7px, transparent 2px);
	background-size: 13px 13px;
	opacity: .7;
}

.SID-dots--about {
	top: 13px;
	left: -45px;
}

.SID-venture {
	padding: 42px 18px;
	background: var(--SID-color-surface);
}

.SID-venture__layout {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 22px;
	margin: 0;
}

.SID-venture__copy {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-venture__cards {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-venture__cards > .wp-block-columns {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	margin: 0;
}

.SID-venture-card {
	height: 100%;
	min-height: auto;
	padding: 15px;
	border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 4%, transparent);
	border-radius: 11px;
	background: var(--SID-color-base);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--SID-color-contrast) 5%, transparent);
	text-align: center;
}

.SID-round-icon {
	display: grid;
	width: 43px;
	height: 43px;
	margin: 0 auto 10px;
	place-items: center;
	border-radius: 50%;
	color: var(--SID-color-base);
	font-size: 1.35rem;
	font-weight: 800;
}

.SID-round-icon--orange {
	background: var(--SID-color-accent);
}

.SID-round-icon--green {
	background: var(--SID-color-primary);
}

.SID-venture-card h3 {
	min-height: auto;
	margin: 0 0 7px;
	color: var(--SID-color-contrast);
	font-size: .83rem;
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1.2;
}

.SID-venture-card p {
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .73rem;
	line-height: 1.35;
}

.SID-trust-band {
	position: relative;
	overflow: hidden;
	padding: 37px max(24px, calc((100vw - var(--SID-content-width)) / 2)) 32px;
	background: var(--SID-color-primary) url("assets/images/plotted-community-sunset.jpg") center 62% / cover no-repeat;
	color: var(--SID-color-base);
}

.SID-trust-band::before {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, color-mix(in srgb, var(--SID-color-primary) 95%, transparent), color-mix(in srgb, var(--SID-color-primary) 78%, transparent) 57%, color-mix(in srgb, var(--SID-color-primary) 45%, transparent));
	content: "";
}

/* Subtle color gradients add depth without reducing text contrast. */
.SID-header-cta .wp-block-button__link,
.SID-button--dark .wp-block-button__link {
	background: linear-gradient(115deg, var(--SID-color-primary), var(--SID-color-primary)) !important;
	box-shadow: 0 4px 12px color-mix(in srgb, var(--SID-color-primary) 16%, transparent);
}

.SID-header-cta .wp-block-button__link:hover,
.SID-button--dark .wp-block-button__link:hover {
	background: linear-gradient(115deg, var(--SID-color-primary), var(--SID-color-primary)) !important;
}

.SID-button--orange .wp-block-button__link,
.SID-contact-form__submit {
	background: linear-gradient(115deg, var(--SID-color-accent), var(--SID-color-accent)) !important;
	box-shadow: 0 4px 12px color-mix(in srgb, var(--SID-color-accent) 17%, transparent);
}

.SID-button--orange .wp-block-button__link:hover,
.SID-contact-form__submit:hover {
	background: linear-gradient(115deg, var(--SID-color-accent), color-mix(in srgb, var(--SID-color-accent) 78%, var(--SID-color-contrast))) !important;
}

.SID-benefits,
.SID-contact-benefits,
.SID-venture-card,
.SID-contact-form-card,
.SID-contact-faq__list,
.SID-contact-visit__details {
	background-image: linear-gradient(135deg, color-mix(in srgb, var(--SID-color-surface) 76%, var(--SID-color-base)), color-mix(in srgb, var(--SID-color-base) 0%, transparent) 46%);
}

.SID-benefit__icon,
.SID-contact-benefits__grid > .wp-block-column > span,
.SID-contact-info__item > span {
	background: linear-gradient(145deg, var(--SID-color-surface), color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base)));
}

.SID-round-icon--orange {
	background: linear-gradient(145deg, var(--SID-color-accent), var(--SID-color-accent));
}

.SID-round-icon--green {
	background: linear-gradient(145deg, var(--SID-color-primary), var(--SID-color-primary));
}

.SID-contact-info {
	background: linear-gradient(135deg, var(--SID-color-surface), color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base)));
}

.SID-contact-faq__list details[open] summary {
	background: linear-gradient(90deg, color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base)), var(--SID-color-base));
}

.SID-site-header .wp-block-navigation-item__content,
.SID-footer a,
.SID-button--dark .wp-block-button__link,
.SID-header-cta .wp-block-button__link,
.SID-button--orange .wp-block-button__link,
.SID-button--light-outline .wp-block-button__link,
.SID-button--green-outline .wp-block-button__link,
.SID-button--orange-outline .wp-block-button__link,
.SID-contact-form__submit,
.SID-contact-visit__link,
.SID-contact-faq__list summary {
	transition: color var(--SID-transition), background-color var(--SID-transition), border-color var(--SID-transition), box-shadow var(--SID-transition), text-decoration-color var(--SID-transition);
}

.SID-contact-form__field input,
.SID-contact-form__field select,
.SID-contact-form__field textarea {
	transition: border-color var(--SID-transition), box-shadow var(--SID-transition), background-color var(--SID-transition);
}

.SID-benefit__icon,
.SID-contact-benefits__grid > .wp-block-column > span,
.SID-round-icon,
.SID-contact-info__item > span {
	transition: box-shadow var(--SID-transition-emphasis);
}

.SID-benefit:hover .SID-benefit__icon,
.SID-contact-benefits__grid > .wp-block-column:hover > span,
.SID-venture-card:hover .SID-round-icon,
.SID-contact-info__item:hover > span {
	box-shadow: 0 4px 10px color-mix(in srgb, var(--SID-color-primary) 14%, transparent);
}

.SID-contact-faq__list summary:hover {
	color: var(--SID-color-primary);
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.SID-site-header .wp-block-navigation-item__content,
	.SID-footer a,
	.SID-button--dark .wp-block-button__link,
	.SID-header-cta .wp-block-button__link,
	.SID-button--orange .wp-block-button__link,
	.SID-button--light-outline .wp-block-button__link,
	.SID-button--green-outline .wp-block-button__link,
	.SID-button--orange-outline .wp-block-button__link,
	.SID-contact-form__submit,
	.SID-contact-visit__link,
	.SID-contact-faq__list summary,
	.SID-contact-form__field input,
	.SID-contact-form__field select,
	.SID-contact-form__field textarea,
	.SID-benefit__icon,
	.SID-contact-benefits__grid > .wp-block-column > span,
	.SID-round-icon,
	.SID-contact-info__item > span {
		transition: none;
	}
}

.SID-trust-band > * {
	position: relative;
	z-index: 1;
}

.SID-eyebrow--gold {
	margin: 0 0 7px;
	color: var(--SID-color-accent);
}

.SID-trust-band h2 {
	margin: 0 0 24px;
	color: var(--SID-color-base);
	font-size: clamp(1.8rem, 3.3vw, 2.65rem);
	font-weight: 800;
	line-height: 1.08;
}

.SID-trust-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 0;
}

.SID-trust-grid > .wp-block-column {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 0;
	padding: 4px 9px;
	border: 0;
}

.SID-trust-grid > .wp-block-column:nth-child(odd) {
	padding-left: 0;
}

.SID-trust-grid > .wp-block-column:nth-child(even) {
	border: 0;
}

.SID-trust-grid > .wp-block-column:first-child {
	padding-left: 0;
}

.SID-trust-icon {
	display: grid;
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 50%;
	background: var(--SID-color-base);
	color: var(--SID-color-primary);
	font-size: 1.1rem;
	font-weight: 900;
}

.SID-trust-grid h3 {
	margin: 0 0 6px;
	color: var(--SID-color-base);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.25;
}

.SID-trust-grid p {
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-base) 82%, transparent);
	font-size: .65rem;
	line-height: 1.35;
}

.SID-highlights {
	padding-top: 42px;
	padding-bottom: 42px;
}

.SID-highlights > .wp-block-columns {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 22px;
	margin: 0;
}

.SID-highlights__copy {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-gallery {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: 145px 110px;
	gap: 8px;
}

.SID-gallery__image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	margin: 0;
	border-radius: 9px;
	object-fit: cover;
}

.SID-gallery__image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	border-radius: inherit;
	object-fit: cover;
}

.SID-gallery__image--road {
	grid-row: 1 / 3;
}

.SID-gallery__image--road img {
	object-position: 15% 65%;
}

.SID-gallery__image--plots {
	grid-column: 2 / 4;
}

.SID-gallery__image--plots img {
	object-position: 70% 35%;
}

.SID-gallery__image--marker img {
	object-position: 76% 72%;
}

.SID-gallery__image--detail img {
	object-position: 44% 76%;
}

.SID-highlights .wp-block-gallery.SID-gallery {
	width: 100%;
	max-width: none;
	margin: 0;
	gap: 10px;
}

.SID-gallery > .SID-gallery__image {
	position: relative;
	min-width: 0;
	height: 100%;
	min-height: 0;
	margin: 0 !important;
	overflow: hidden;
	border-radius: 12px;
	background: #e9ece8;
	box-shadow: 0 8px 24px rgba(20, 45, 31, .1);
}

.SID-gallery__image--plots .wp-element-caption {
	position: absolute;
	left: 14px;
	bottom: 14px;
	width: fit-content;
	max-width: calc(100% - 28px);
	margin: 0;
	padding: 8px 12px;
	border-radius: 6px;
	background: rgba(255, 255, 255, .94);
	color: var(--SID-color-primary);
	font-size: .75rem;
	font-weight: 800;
	line-height: 1.3;	
}

.SID-process {
	padding: 40px 18px;
	background: var(--SID-color-surface);
}

.SID-process > .wp-block-columns {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 22px;
	margin: 0;
}

.SID-process__intro {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-process__steps {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-steps {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px 12px;
	margin: 0;
}

.SID-step {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 !important;
	text-align: center;
}

.SID-step__number {
	display: grid;
	width: 30px;
	height: 30px;
	margin-bottom: 8px;
	place-items: center;
	border-radius: 50%;
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
	font-size: .68rem;
	font-weight: 800;
}

.SID-step__number--orange {
	background: var(--SID-color-accent);
}

.SID-step__icon {
	display: grid;
	width: 48px;
	height: 48px;
	margin-bottom: 7px;
	place-items: center;
	border-radius: 50%;
	background: var(--SID-color-base);
	color: var(--SID-color-primary);
	font-size: 1.65rem;
	box-shadow: 0 4px 14px color-mix(in srgb, var(--SID-color-contrast) 8%, transparent);
}

.SID-step h3 {
	margin: 0 0 4px;
	color: var(--SID-color-contrast);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1.2;
}

.SID-step p {
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .68rem;
	line-height: 1.35;
}

.SID-step .SID-step__number {
	margin: 0 0 8px;
	color: var(--SID-color-base);
	font-size: .68rem;
	line-height: 1;
}

.SID-step .SID-step__icon {
	margin: 0 0 7px;
	color: var(--SID-color-primary);
	font-size: 1.65rem;
	line-height: 1;
}

.SID-testimonials {
	padding-top: 64px;
	padding-bottom: 64px;
}

.SID-testimonials > .wp-block-columns {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 22px;
	margin: 0;
}

.SID-testimonials__intro {
	width: 100%;
	flex-basis: 100% !important;
}

.SID-testimonials__intro > p:not(.SID-eyebrow) {
	max-width: 360px;
	margin: 16px 0 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .95rem;
	line-height: 1.7;
	text-align: left;
}

.SID-testimonial-list {
	display: grid;
	grid-template-columns: 1fr;
	align-items: stretch;
	gap: 18px;
	width: 100%;
	flex-basis: 100% !important;
}

.SID-testimonial {
	position: relative;
	display: flex;
	min-height: 225px;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	padding: 28px 26px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, var(--SID-color-surface));
	border-radius: 18px;
	background: linear-gradient(145deg, var(--SID-color-base), color-mix(in srgb, var(--SID-color-surface) 48%, var(--SID-color-base)));
	box-shadow: 0 14px 36px color-mix(in srgb, var(--SID-color-contrast) 8%, transparent);
	text-align: left;
}

.SID-testimonial::before {
	position: absolute;
	top: 0;
	left: 26px;
	width: 42px;
	height: 3px;
	background: var(--SID-color-primary);
	content: "";
}

.SID-testimonial--orange::before {
	background: var(--SID-color-accent);
}

.SID-testimonial__kicker {
	margin: 0 0 22px !important;
	color: var(--SID-color-primary);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.SID-testimonial__kicker span {
	margin: 0 5px;
	color: var(--SID-color-accent);
}

.SID-testimonial h3 {
	width: 100%;
	margin: 0 0 12px;
	color: var(--SID-color-primary);
	font-size: clamp(1.15rem, 1.5vw, 1.4rem);
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1.2;
	text-align: left;
}

.SID-testimonial > p {
	width: 100%;
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .88rem;
	line-height: 1.6;
	text-align: left;
}

.SID-final-cta {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	justify-content: space-between;
	gap: 15px;
	padding: 27px 20px;
	background: linear-gradient(100deg, var(--SID-color-primary), var(--SID-color-primary) 65%, var(--SID-color-primary));
	color: var(--SID-color-base);
}

.SID-final-cta__copy h2 {
	margin: 0 0 5px;
	color: var(--SID-color-base);
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.1;
}

.SID-final-cta__copy p {
	margin: 0;
	color: color-mix(in srgb, var(--SID-color-base) 86%, transparent);
	font-size: .82rem;
	line-height: 1.45;
}

.SID-final-cta .wp-block-buttons {
	flex: 0 0 auto;
	margin: 0;
}

.SID-footer {
	padding: 28px 20px 12px;
	background: var(--SID-color-base);
	color: var(--SID-color-contrast);
}

.SID-footer__columns {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	margin: 0;
}

.SID-footer__columns > .wp-block-column {
	margin: 0;
	padding: 0 8px 0 0;
	border: 0;
}

.SID-footer__columns > .wp-block-column:first-child {
	padding-left: 0;
}

.SID-footer__brand {
	grid-column: 1 / -1;
}

.SID-footer__social {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.SID-footer__social h3 {
	margin: 0;
}

.SID-footer .SID-site-logo img {
	width: 48px;
}

.SID-footer .SID-brand__name {
	font-size: .95rem;
}

.SID-footer .SID-brand__tagline {
	font-size: .48rem;
}

.SID-footer h3 {
	margin: 0 0 11px;
	color: var(--SID-color-primary);
	font-size: .88rem;
	font-weight: 800;
	letter-spacing: -.02em;
}

.SID-footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.SID-footer li,
.SID-footer__contact p {
	margin: 0 0 7px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .73rem;
	line-height: 1.35;
}

.SID-footer__contact .SID-footer__whatsapp-wrap {
	margin: 14px 0 0;
}

.SID-footer .SID-footer__whatsapp {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	padding: 7px 8px 7px 17px;
	border: 1px solid #108b5c;
	border-radius: 12px;
	background: linear-gradient(135deg, #159a62, #087a61);
	box-shadow: 0 7px 18px rgba(7, 94, 84, .2), inset 0 1px 0 rgba(255, 255, 255, .22);
	color: #fff;
	font-size: .78rem;
	font-weight: 800;
	line-height: 1;
	transition: background-color var(--SID-transition), border-color var(--SID-transition), box-shadow var(--SID-transition);
}

.SID-footer .SID-footer__whatsapp-icon {
	display: grid;
	width: 32px;
	height: 32px;
	margin-left: auto;
	place-items: center;
	border-radius: 50%;
	background: #fff;
}

.SID-footer .SID-footer__whatsapp-icon img {
	display: block;
	width: 19px;
	height: 19px;
}

.SID-footer .SID-footer__whatsapp:hover {
	border-color: #075e54;
	background: linear-gradient(135deg, #118252, #066451);
	box-shadow: 0 8px 21px rgba(7, 94, 84, .26), inset 0 1px 0 rgba(255, 255, 255, .18);
	color: #fff;
}

.SID-footer .SID-footer__whatsapp:focus-visible {
	outline: 3px solid var(--SID-color-accent);
	outline-offset: 3px;
}

.SID-floating-whatsapp {
	position: fixed;
	right: max(22px, env(safe-area-inset-right));
	bottom: max(22px, env(safe-area-inset-bottom));
	z-index: 999;
	display: grid;
	width: 62px;
	height: 62px;
	place-items: center;
	border: 1px solid #108b5c;
	border-radius: 50%;
	background: linear-gradient(135deg, #159a62, #087a61);
	box-shadow: 0 5px 18px rgba(7, 94, 84, .3), inset 0 1px 0 rgba(255, 255, 255, .22);
	transition: transform var(--SID-transition), box-shadow var(--SID-transition);
}

.SID-floating-whatsapp img {
	display: block;
	width: 46px;
	height: 46px;
	filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .2));
}

.SID-floating-whatsapp:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 22px rgba(7, 94, 84, .38), inset 0 1px 0 rgba(255, 255, 255, .22);
}

.SID-floating-whatsapp:focus-visible {
	outline: 3px solid var(--SID-color-accent);
	outline-offset: 4px;
}

@media (max-width: 600px) {
	.SID-floating-whatsapp {
		right: max(16px, env(safe-area-inset-right));
		bottom: max(16px, env(safe-area-inset-bottom));
		width: 56px;
		height: 56px;
	}

	.SID-floating-whatsapp img {
		width: 42px;
		height: 42px;
	}
}

.SID-footer a {
	color: inherit;
	text-decoration: none;
}

.SID-footer a:hover {
	color: var(--SID-color-accent);
}

.SID-footer__social-icons {
	display: flex;
	gap: 8px;
	margin: 0;
}

.SID-footer__social-icons a {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 4px;
	background: transparent;
}

.SID-footer__social-icons img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.SID-footer__copyright {
	margin: 15px 0 0;
	padding-top: 11px;
	border-top: 1px solid color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface));
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .65rem;
	text-align: center;
}

@media (min-width: 761px) {
	.SID-home .SID-hero {
		min-height: 440px !important;
	}

	.SID-hero__content {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		width: min(var(--SID-content-width), calc(100% - 48px)) !important;
		padding-top: 42px;
		padding-bottom: 68px;
	}

	.SID-hero__copy {
		width: auto;
		min-width: 0;
		flex: 1 1 58%;
	}

	.SID-hero__coming-soon {
		position: relative;
		right: auto;
		bottom: auto;
		width: clamp(210px, 33vw, 290px) !important;
		max-width: 32%;
		min-height: 145px;
		flex: 0 1 clamp(210px, 33vw, 290px) !important;
		padding: 18px;
		transform: rotate(-6deg);
		transform-origin: center;
	}

	.SID-hero__badge-kicker {
		font-size: clamp(1.25rem, 2.2vw, 1.8rem);
	}

	.SID-hero__badge-title {
		font-size: clamp(2.3rem, 4vw, 4rem);
	}

	.SID-hero__badge-note {
		font-size: clamp(.9rem, 1.5vw, 1.2rem);
	}

	.SID-hero__leaves {
		left: -55px;
	}

	.SID-benefits {
		width: calc(100% - 42px) !important;
		margin-top: -58px !important;
	}

	.SID-benefits__grid {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		grid-template-columns: none;
		padding: 13px 10px;
	}

	.SID-benefits .SID-benefits__grid > .wp-block-column {
		width: auto !important;
		min-width: 0;
		flex: 1 1 0% !important;
	}

	.SID-benefit {
		justify-content: center;
		gap: 11px;
		padding: 9px 10px;
		border-right: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
		border-bottom: 0;
	}

	.SID-benefit__icon {
		flex-basis: 38px;
		width: 38px;
		height: 38px;
		font-size: 1.45rem;
	}

	.SID-benefit p {
		font-size: .74rem;
	}

	.SID-section {
		padding: 62px 24px;
	}

	.SID-about {
		padding-top: 62px;
		padding-bottom: 52px;
	}

	.SID-about__layout {
		flex-direction: row !important;
		align-items: center !important;
		gap: 28px;
	}

	.SID-about__copy {
		width: auto;
		flex-basis: 43% !important;
	}

	.SID-about__visual {
		width: auto;
		flex-basis: 57% !important;
	}

	.SID-about__image img {
		height: 300px;
	}

	.SID-about__trust {
		left: -24px;
	}

	.SID-venture__layout {
		flex-wrap: wrap !important;
	}

	.SID-venture__copy,
	.SID-venture__cards {
		flex-basis: 100% !important;
	}

	.SID-venture__cards > .wp-block-columns {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 12px;
	}

	.SID-venture-card {
		min-height: 190px;
		padding: 16px 12px;
	}

	.SID-venture-card h3 {
		min-height: 36px;
	}

	.SID-trust-band {
		padding: 37px max(24px, calc((100vw - var(--SID-content-width)) / 2)) 32px;
	}

	.SID-trust-grid {
		row-gap: 18px;
	}

	.SID-trust-grid > .wp-block-column {
		gap: 12px;
		padding: 4px 16px;
	}

	.SID-trust-grid > .wp-block-column:nth-child(odd) {
		padding-left: 0;
		border-right: 1px solid color-mix(in srgb, var(--SID-color-base) 24%, transparent);
	}

	.SID-trust-grid > .wp-block-column:nth-child(even) {
		border: 0;
	}

	.SID-trust-grid > .wp-block-column:nth-child(2) {
		border: 0;
	}

	.SID-trust-icon {
		flex-basis: 36px;
		width: 36px;
		height: 36px;
		font-size: 1.35rem;
	}

	.SID-trust-grid h3 {
		font-size: .82rem;
	}

	.SID-trust-grid p {
		font-size: .7rem;
	}

	.SID-highlights {
		padding-top: 48px;
		padding-bottom: 50px;
	}

	.SID-highlights > .wp-block-columns,
	.SID-process > .wp-block-columns,
	.SID-testimonials > .wp-block-columns {
		flex-direction: row !important;
		align-items: center !important;
	}

	.SID-highlights > .wp-block-columns {
		display: grid !important;
		grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
		align-items: center !important;
		gap: clamp(28px, 4vw, 54px);
	}

	.SID-highlights__copy,
	.SID-highlights__gallery-column {
		width: auto;
		min-width: 0;
		flex-basis: auto !important;
	}

	.SID-gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-template-rows: 210px 160px;
		gap: 12px;
	}

	.SID-gallery__image--road { grid-column: 1 / 2; grid-row: 1 / 3; }
	.SID-gallery__image--plots { grid-column: 2 / 4; grid-row: 1 / 2; }
	.SID-gallery__image--marker { grid-column: 2 / 3; grid-row: 2 / 3; }
	.SID-gallery__image--detail { grid-column: 3 / 4; grid-row: 2 / 3; }

	.SID-process {
		padding: 43px max(24px, calc((100vw - var(--SID-content-width)) / 2)) 48px;
	}

	.SID-process > .wp-block-columns {
		gap: 25px;
	}

	.SID-process__intro,
	.SID-testimonials__intro {
		width: auto;
		flex-basis: 32% !important;
	}

	.SID-process__steps {
		width: auto;
		flex-basis: 68% !important;
	}

	.SID-steps {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px 12px;
	}

	.SID-testimonials {
		padding-top: 48px;
		padding-bottom: 49px;
	}

	.SID-testimonials > .wp-block-columns {
		gap: 24px;
	}

	.SID-testimonial-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: auto;
		flex-basis: 68% !important;
	}

	.SID-final-cta {
		align-items: center;
		flex-direction: row;
		gap: 24px;
		padding: 26px max(24px, calc((100vw - var(--SID-content-width)) / 2));
	}

	.SID-final-cta__copy {
		max-width: 70%;
	}

	.SID-desktop-only {
		display: initial;
	}

	.SID-footer {
		padding: 31px max(24px, calc((100vw - var(--SID-content-width)) / 2)) 14px;
	}

	.SID-footer__columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px 24px;
	}

	.SID-footer__columns > .wp-block-column {
		min-width: 0;
		padding: 4px 18px;
		border-right: 1px solid color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface));
	}

	.SID-footer__columns > .wp-block-column:first-child {
		padding-left: 0;
	}

	.SID-footer__columns > .wp-block-column:nth-child(2) {
		border: 0;
	}

	.SID-footer__social {
		grid-column: 1 / -1;
	}
}

@media (min-width: 782px) {
	.SID-steps {
		display: flex !important;
		flex-direction: row !important;
		grid-template-columns: none;
		gap: 12px;
	}
}

@media (min-width: 901px) {
	.SID-home .SID-hero {
		min-height: 420px !important;
	}

	.SID-hero__content {
		gap: 30px;
		padding-top: 48px;
		padding-bottom: 72px;
	}

	.SID-hero__copy {
		flex-basis: 58%;
	}

	.SID-hero__coming-soon {
		width: clamp(240px, 32vw, 365px) !important;
		min-height: 172px;
		max-width: 365px;
		flex-basis: clamp(240px, 32vw, 365px) !important;
		padding: 22px 24px;
	}

	.SID-benefits {
		width: min(1100px, calc(100% - 64px)) !important;
	}

	.SID-about__layout {
		gap: 48px;
	}

	.SID-venture {
		padding: 48px max(24px, calc((100vw - var(--SID-content-width)) / 2)) 54px;
	}

	.SID-trust-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		row-gap: 0;
	}

	@media (min-width: 1024px) {
		.SID-venture__layout {
			display: grid !important;
			grid-template-columns: minmax(0, 43fr) minmax(0, 57fr);
			align-items: center !important;
			gap: 30px;
		}

		.SID-venture__copy,
		.SID-venture__cards {
			width: auto;
			min-width: 0;
			flex-basis: auto !important;
		}
	}

	.SID-trust-grid > .wp-block-column:nth-child(odd) {
		padding-left: 16px;
		border-right: 1px solid color-mix(in srgb, var(--SID-color-base) 24%, transparent);
	}

	.SID-trust-grid > .wp-block-column:first-child {
		padding-left: 0;
	}

	.SID-trust-grid > .wp-block-column:nth-child(even) {
		border-right: 1px solid color-mix(in srgb, var(--SID-color-base) 24%, transparent);
	}

	.SID-trust-grid > .wp-block-column:last-child {
		border: 0;
	}

	.SID-gallery {
		grid-template-rows: 132px 132px;
	}

	.SID-footer__columns {
		display: grid !important;
		grid-template-columns: minmax(0, 1.65fr) minmax(0, .9fr) minmax(0, 1.25fr) minmax(0, .85fr);
		align-items: start;
		gap: 20px;
	}

	.SID-footer__columns > .wp-block-column {
		box-sizing: border-box;
		padding: 4px 18px;
		border-right: 1px solid color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface));
	}

	.SID-footer__columns > .wp-block-column:last-child {
		border: 0;
	}

	.SID-footer__columns > .wp-block-column:nth-child(2) {
		border-right: 1px solid color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface));
	}

	.SID-footer__brand {
		grid-column: auto;
	}

	.SID-footer__social {
		grid-column: auto;
		display: block;
	}

	.SID-footer__social h3 {
		margin: 0 0 11px;
	}

	.SID-footer {
		padding-top: 36px;
		padding-bottom: 18px;
	}

	.SID-footer .SID-site-logo img {
		width: 58px !important;
	}

	.SID-footer .SID-brand__name {
		font-size: 1.05rem;
	}

	.SID-footer .SID-brand__tagline {
		font-size: .56rem;
	}

	.SID-footer h3 {
		margin-bottom: 13px;
		font-size: 1rem;
	}

	.SID-footer li,
	.SID-footer__contact p {
		margin-bottom: 9px;
		font-size: .85rem;
		line-height: 1.45;
	}

	.SID-footer__social-icons {
		gap: 10px;
	}

	.SID-footer__social-icons a {
		width: 31px;
		height: 31px;
		font-size: .82rem;
	}

	.SID-footer__copyright {
		margin-top: 19px;
		padding-top: 14px;
		font-size: .75rem;
	}
}

@media (max-width: 760px) {
	.SID-footer__social {
		display: block;
		grid-column: 1 / -1;
		margin-top: 2px;
		padding-top: 16px;
		border-top: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, var(--SID-color-surface));
	}

	.SID-footer__social h3 {
		margin: 0 0 10px;
	}

	.SID-footer__social-icons {
		gap: 10px;
	}

	.SID-footer__social-icons a {
		width: 40px;
		height: 40px;
		place-items: center;
		border: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, var(--SID-color-surface));
		border-radius: 50%;
		background: color-mix(in srgb, var(--SID-color-primary) 4%, var(--SID-color-base));
	}

	.SID-footer__social-icons img {
		width: 21px;
		height: 21px;
	}

	.SID-trust-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.SID-trust-grid > .wp-block-column {
		min-width: 0;
		padding: 12px 10px;
		border: 1px solid color-mix(in srgb, var(--SID-color-base) 18%, transparent);
		border-radius: 8px;
		background: color-mix(in srgb, var(--SID-color-primary) 36%, transparent);
	}

	.SID-trust-grid > .wp-block-column:nth-child(odd),
	.SID-trust-grid > .wp-block-column:nth-child(even) {
		padding-left: 10px;
		border: 1px solid color-mix(in srgb, var(--SID-color-base) 18%, transparent);
	}

	.SID-steps {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.SID-step {
		min-width: 0;
		padding: 14px 10px;
		border: 1px solid color-mix(in srgb, var(--SID-color-contrast) 12%, var(--SID-color-base));
		border-radius: 9px;
		background: var(--SID-color-base);
		box-shadow: 0 4px 14px color-mix(in srgb, var(--SID-color-contrast) 5%, transparent);
	}
}

@media (min-width: 761px) {
	.SID-benefits .SID-benefits__grid > .SID-benefit {
		border-bottom: 0;
	}
}

.SID-project-details {
	width: min(var(--SID-content-width), calc(100% - 40px));
	margin: 36px auto;
}

.SID-project-details__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	margin: 0;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, var(--SID-color-surface));
	border-radius: 12px;
	background: color-mix(in srgb, var(--SID-color-primary) 10%, var(--SID-color-surface));
}

.SID-project-details__item {
	min-width: 0;
	padding: 18px;
	background: var(--SID-color-base);
}

.SID-project-details__item dt {
	margin-bottom: 6px;
	color: color-mix(in srgb, var(--SID-color-contrast) 62%, var(--SID-color-base));
	font-size: .78rem;
	font-weight: 600;
}

.SID-project-details__item dd {
	margin: 0;
	color: var(--SID-color-primary);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.45;
}

.SID-project-gallery {
	margin-top: 32px;
}

.SID-project-gallery h2 {
	margin: 0 0 16px;
	color: var(--SID-color-primary);
	font-size: clamp(1.4rem, 2vw, 1.9rem);
}

.SID-project-gallery__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.SID-project-gallery__item {
	margin: 0;
	overflow: hidden;
	border-radius: 10px;
	background: var(--SID-color-surface);
}

.SID-project-gallery__image {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform 240ms ease-in-out;
}

.SID-project-gallery__item:hover .SID-project-gallery__image {
	transform: scale(1.025);
}

.SID-project-gallery__admin-preview {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 10px 0;
}

.SID-project-gallery__admin-preview img {
	width: 80px;
	height: 80px;
	object-fit: cover;
}

@media (max-width: 760px) {
	.SID-project-details__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.SID-project-details__item {
		padding: 14px;
	}

	.SID-project-gallery__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}
}

@media (max-width: 420px) {
	.SID-project-details__list,
	.SID-project-gallery__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	.SID-project-gallery__image {
		transition: none;
	}
}

.SID-project-archive__hero {
	padding: 72px 24px 56px;
	background: linear-gradient(120deg, color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-surface)), var(--SID-color-surface) 68%);
}

.SID-project-archive__intro {
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.SID-project-archive__intro > .SID-eyebrow {
	margin-bottom: 12px;
}

.SID-project-archive__title {
	margin: 0;
	color: var(--SID-color-primary);
	font-size: clamp(2.5rem, 5vw, 4.25rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.SID-project-archive__description {
	max-width: 620px;
	margin: 16px auto 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: clamp(1rem, 1.5vw, 1.12rem);
	line-height: 1.65;
}

.SID-project-archive__body {
	padding-top: 34px;
	padding-bottom: 76px;
}

.SID-project-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 9px;
	margin: 0 0 32px;
}

.SID-project-filter {
	display: inline-flex;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	padding: 8px 17px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 18%, var(--SID-color-base));
	border-radius: 24px;
	background: var(--SID-color-base);
	color: var(--SID-color-primary);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
	transition: background-color 240ms ease-in-out, color 240ms ease-in-out, border-color 240ms ease-in-out;
}

.SID-project-filter:hover,
.SID-project-filter.is-active {
	border-color: var(--SID-color-primary);
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
}

.SID-project-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 350px));
	justify-content: center;
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.SID-project-grid > .wp-block-post {
	min-width: 0;
	margin: 0;
}

.SID-project-card {
	display: flex;
	height: 100%;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 9%, var(--SID-color-surface));
	border-radius: 14px;
	background: var(--SID-color-base);
	box-shadow: 0 8px 24px color-mix(in srgb, var(--SID-color-contrast) 7%, transparent);
	transition: transform 240ms ease-in-out, box-shadow 240ms ease-in-out;
}

.SID-project-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 32px color-mix(in srgb, var(--SID-color-contrast) 12%, transparent);
}

.SID-project-card__image {
	display: block;
	margin: 0;
	overflow: hidden;
	background: var(--SID-color-surface);
	aspect-ratio: 3 / 2;
}

.SID-project-card__image a {
	display: block;
	height: 100%;
}

.SID-project-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 360ms ease-in-out;
}

.SID-project-card:hover .SID-project-card__image img {
	transform: scale(1.035);
}

.SID-project-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: 20px 21px 22px;
}

.SID-project-card__type {
	display: inline-flex;
	margin: 0 0 10px;
	padding: 5px 10px;
	border-radius: 20px;
	background: color-mix(in srgb, var(--SID-color-primary) 8%, var(--SID-color-base));
	color: var(--SID-color-primary);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .035em;
}

.SID-project-card__type a {
	color: inherit;
	text-decoration: none;
}

.SID-project-card__title {
	margin: 0 0 12px;
	color: var(--SID-color-contrast);
	font-size: clamp(1.2rem, 1.7vw, 1.45rem);
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1.25;
}

.SID-project-card__title a {
	color: inherit;
	text-decoration: none;
}

.SID-project-card__title a:hover {
	color: var(--SID-color-primary);
}

.SID-project-card__meta {
	width: 100%;
	margin: 0 0 15px;
}

.SID-project-card__location {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 12px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .82rem;
}

.SID-project-card__location-icon {
	display: inline-grid;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	place-items: center;
	color: var(--SID-color-accent);
}

.SID-project-card__location-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.SID-project-card__specs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, var(--SID-color-surface));
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, var(--SID-color-surface));
}

.SID-project-card__specs p {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 3px;
	margin: 0;
}

.SID-project-card__specs p span {
	color: color-mix(in srgb, var(--SID-color-contrast) 62%, var(--SID-color-base));
	font-size: .68rem;
}

.SID-project-card__specs p strong {
	color: var(--SID-color-primary);
	font-size: .8rem;
	line-height: 1.4;
}

.SID-project-card__status {
	width: fit-content;
	margin: 12px 0 0;
	padding: 5px 11px;
	border-radius: 20px;
	background: color-mix(in srgb, var(--SID-color-primary) 9%, var(--SID-color-base));
	color: var(--SID-color-primary);
	font-size: .7rem;
	font-weight: 800;
}

.SID-project-card__status--coming-soon {
	background: color-mix(in srgb, var(--SID-color-accent) 10%, var(--SID-color-base));
	color: color-mix(in srgb, var(--SID-color-accent) 82%, var(--SID-color-contrast));
}

.SID-project-card__status--sold {
	background: color-mix(in srgb, var(--SID-color-contrast) 7%, var(--SID-color-base));
	color: color-mix(in srgb, var(--SID-color-contrast) 72%, var(--SID-color-base));
}

.SID-project-card__excerpt {
	margin: 0 0 16px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
	font-size: .83rem;
	line-height: 1.6;
}

.SID-project-card__excerpt:empty {
	display: none;
}

.SID-project-card__link {
	margin-top: auto;
	color: var(--SID-color-primary);
	font-size: .82rem;
	font-weight: 800;
	text-decoration: none;
}

.SID-project-card__link:hover {
	color: var(--SID-color-accent);
}

.SID-project-pagination {
	gap: 9px;
	margin-top: 38px;
}

.SID-project-pagination a,
.SID-project-pagination .page-numbers {
	display: inline-flex;
	min-width: 38px;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	padding: 7px 11px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 16%, var(--SID-color-base));
	border-radius: 20px;
	color: var(--SID-color-primary);
	text-decoration: none;
}

.SID-project-pagination .current {
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
}

.SID-project-archive__empty {
	padding: 48px 24px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, var(--SID-color-surface));
	border-radius: 14px;
	background: var(--SID-color-surface);
	text-align: center;
}

.SID-project-archive__empty h2 {
	margin: 0 0 10px;
	color: var(--SID-color-primary);
	font-size: clamp(1.5rem, 3vw, 2.1rem);
}

.SID-project-archive__empty p {
	margin: 0 auto 20px;
	color: color-mix(in srgb, var(--SID-color-contrast) 68%, var(--SID-color-base));
}

.SID-project-archive__empty .wp-block-buttons {
	justify-content: center;
}

.SID-project-archive__cta,
.SID-project-single__cta {
	padding: clamp(46px, 6vw, 72px) 24px;
	background: var(--SID-color-primary);
	color: var(--SID-color-base);
}

.SID-project-archive__cta-inner,
.SID-project-single__cta-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

.SID-project-archive__cta-copy h2,
.SID-project-single__cta-copy h2 {
	max-width: 720px;
	margin: 0;
	color: var(--SID-color-base);
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	letter-spacing: -.04em;
	line-height: 1.2;
}

.SID-project-archive__cta .SID-eyebrow,
.SID-project-single__cta .SID-eyebrow {
	margin: 0 0 8px;
	color: color-mix(in srgb, var(--SID-color-base) 78%, transparent);
}

.SID-project-archive__cta .SID-button--light .wp-block-button__link,
.SID-project-single__cta .SID-button--light .wp-block-button__link {
	border: 1px solid var(--SID-color-base);
	background: var(--SID-color-base) !important;
	color: var(--SID-color-primary) !important;
}

.SID-project-archive__cta .SID-button--light .wp-block-button__link:hover,
.SID-project-single__cta .SID-button--light .wp-block-button__link:hover {
	border-color: var(--SID-color-accent);
	background: var(--SID-color-accent) !important;
	color: var(--SID-color-base) !important;
}

.SID-project-single__hero {
	position: relative;
	padding: clamp(42px, 6vw, 78px) 24px;
	background: radial-gradient(ellipse at 92% 8%, color-mix(in srgb, var(--SID-color-accent) 12%, transparent), transparent 32%), linear-gradient(120deg, #f2f5ef, #fbfaf7 72%);
}

.SID-project-single {
	--wp--style--block-gap: 0;
}

.SID-project-single__hero-grid {
	display: grid !important;
	grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
	align-items: center;
	gap: clamp(32px, 5vw, 78px);
	margin: 0;
}

.SID-project-single__hero-grid > .wp-block-column {
	width: auto !important;
	min-width: 0;
	margin: 0;
}

.SID-project-single__breadcrumb {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 36px;
	color: color-mix(in srgb, var(--SID-color-contrast) 55%, var(--SID-color-base));
	font-size: .76rem;
}

.SID-project-single__eyebrow {
	margin: 0 0 12px;
	color: color-mix(in srgb, var(--SID-color-primary) 72%, var(--SID-color-accent));
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.SID-project-single__breadcrumb p {
	margin: 0;
}

.SID-project-single__breadcrumb a {
	color: var(--SID-color-primary);
	font-weight: 700;
	text-decoration: none;
}

.SID-project-single__breadcrumb .wp-block-post-terms,
.SID-project-single__breadcrumb .wp-block-post-terms a {
	color: color-mix(in srgb, var(--SID-color-contrast) 62%, var(--SID-color-base));
}

.SID-project-single__title {
	margin: 0 0 18px;
	color: var(--SID-color-primary);
	font-size: clamp(2rem, 5.5vw, 4.4rem);
	font-weight: 800;
	letter-spacing: -.065em;
	line-height: .98;
	white-space: nowrap;
}

.SID-project-single__type {
	display: inline-flex;
	width: fit-content;
	margin: 0 0 20px;
	padding: 7px 13px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 18%, transparent);
	border-radius: 999px;
	background: color-mix(in srgb, var(--SID-color-base) 74%, transparent);
	color: var(--SID-color-primary);
	font-size: .76rem;
	font-weight: 700;
}

.SID-project-single__type a {
	color: inherit;
	text-decoration: none;
}

.SID-project-single__excerpt {
	max-width: 480px;
	margin: 0 0 22px !important;
	color: color-mix(in srgb, var(--SID-color-contrast) 72%, var(--SID-color-base));
	font-size: clamp(1rem, 1.4vw, 1.12rem);
	line-height: 1.75;
}

.SID-project-single__featured {
	margin: 0;
	overflow: hidden;
	border: 8px solid var(--SID-color-base);
	border-radius: 28px;
	background: var(--SID-color-surface);
	box-shadow: 0 30px 80px color-mix(in srgb, var(--SID-color-primary) 17%, transparent);
	aspect-ratio: 1.12 / 1;
}

.SID-project-single__featured img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.SID-project-single__actions {
	align-items: center;
	gap: 12px;
	margin-top: 24px;
}

.SID-project-single__actions .wp-block-button__link {
	min-height: 50px;
	padding: 13px 22px;
	border-radius: 9px;
	font-size: .9rem;
	font-weight: 800;
	letter-spacing: .01em;
	box-shadow: 0 7px 18px color-mix(in srgb, var(--SID-color-primary) 20%, transparent);
	transition: box-shadow var(--SID-transition), background-color var(--SID-transition), border-color var(--SID-transition), color var(--SID-transition);
}

.SID-project-single__actions .SID-button--dark .wp-block-button__link {
	background: linear-gradient(135deg, color-mix(in srgb, var(--SID-color-primary) 88%, #000), var(--SID-color-primary) 58%, color-mix(in srgb, var(--SID-color-primary) 82%, #6d9d68)) !important;
}

.SID-project-single__actions .SID-button--dark .wp-block-button__link:hover,
.SID-project-single__actions .SID-button--dark .wp-block-button__link:focus-visible {
	box-shadow: 0 10px 22px color-mix(in srgb, var(--SID-color-primary) 28%, transparent);
}

.SID-project-single__actions .SID-project-single__plan-visit .wp-block-button__link {
	border: 1px solid color-mix(in srgb, var(--SID-color-accent) 88%, var(--SID-color-contrast)) !important;
	background: var(--SID-color-accent) !important;
	box-shadow: 0 5px 14px color-mix(in srgb, var(--SID-color-accent) 24%, transparent);
	color: var(--SID-color-base) !important;
}

.SID-project-single__actions .SID-project-single__plan-visit .wp-block-button__link:hover,
.SID-project-single__actions .SID-project-single__plan-visit .wp-block-button__link:focus-visible {
	border-color: color-mix(in srgb, var(--SID-color-accent) 72%, var(--SID-color-contrast)) !important;
	background: color-mix(in srgb, var(--SID-color-accent) 84%, var(--SID-color-contrast)) !important;
	box-shadow: 0 7px 18px color-mix(in srgb, var(--SID-color-accent) 30%, transparent);
}

.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link {
	border-color: var(--SID-color-primary) !important;
	background: linear-gradient(135deg, color-mix(in srgb, var(--SID-color-primary) 88%, #000), var(--SID-color-primary) 58%, color-mix(in srgb, var(--SID-color-primary) 82%, #6d9d68)) !important;
	box-shadow: 0 7px 18px color-mix(in srgb, var(--SID-color-primary) 20%, transparent);
	color: var(--SID-color-base) !important;
}

.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link:hover,
.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link:focus-visible {
	border-color: var(--SID-color-primary) !important;
	background: var(--SID-color-primary) !important;
	box-shadow: 0 9px 21px color-mix(in srgb, var(--SID-color-primary) 28%, transparent);
}

.SID-project-single__intro .wp-block-shortcode {
	max-width: 470px;
	margin: 0;
}

.SID-project-single__intro .SID-project-card__meta {
	box-sizing: border-box;
	margin: 0;
	padding: 16px 18px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, transparent);
	border-radius: 14px;
	background: color-mix(in srgb, var(--SID-color-base) 88%, transparent);
	box-shadow: 0 8px 24px color-mix(in srgb, var(--SID-color-primary) 5%, transparent);
}

.SID-project-single__intro .SID-project-card__location { font-size: .86rem; }
.SID-project-single__intro .SID-project-card__specs p strong { font-size: .9rem; }
.SID-project-single__intro .SID-project-card__status { margin-bottom: 0; }

.SID-project-single__content {
	box-sizing: border-box;
	max-width: 1120px !important;
	margin: 0 auto !important;
	padding: clamp(28px, 3.5vw, 44px) 24px 72px;
}

.SID-project-single__content-section {
	margin-block-start: 0 !important;
	background: var(--SID-color-surface);
}

.SID-project-single__content-title {
	box-sizing: border-box;
	max-width: 900px;
	margin: 0 auto 24px;
	padding-bottom: 14px;
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, transparent);
	color: var(--SID-color-primary);
	font-size: clamp(1.65rem, 2.8vw, 2.2rem);
	font-weight: 750;
	letter-spacing: -.035em;
	line-height: 1.15;
}

.SID-project-single__content-title::before {
	display: block;
	width: 34px;
	height: 3px;
	margin-bottom: 12px;
	background: var(--SID-color-accent);
	content: "";
}

.SID-project-single__content > .wp-block-post-content {
	box-sizing: border-box;
	max-width: 900px !important;
	margin: 0 auto !important;
	font-size: 1.06rem;
	line-height: 1.9;
}

.SID-project-single__content > .wp-block-post-content > :first-child {
	margin-top: 0;
}

.SID-project-single__content > .wp-block-post-content h2,
.SID-project-single__content > .wp-block-post-content h3 {
	margin-top: 2em;
	color: var(--SID-color-primary);
	letter-spacing: -.035em;
}

.SID-project-single__content > .wp-block-post-content h2 { font-size: clamp(1.65rem, 3vw, 2.15rem); }
.SID-project-single__content > .wp-block-post-content h3 { font-size: 1.4rem; }
.SID-project-single__content > .wp-block-post-content ul { padding-left: 1.3em; }
.SID-project-single__content > .wp-block-post-content li::marker { color: var(--SID-color-accent); }
.SID-project-single__content > .wp-block-post-content figure img { border-radius: 14px; }

.SID-project-single .SID-project-details {
	width: 100%;
	margin: 56px 0 0;
}

.SID-project-single .SID-project-gallery { margin-top: 56px; }
.SID-project-single .SID-project-gallery h2 { margin-bottom: 22px; font-size: clamp(1.8rem, 3vw, 2.4rem); }
.SID-project-single .SID-project-gallery__grid { gap: 18px; }
.SID-project-single .SID-project-gallery__item { border-radius: 14px; }

.SID-project-single__cta-copy p:not(.SID-eyebrow) {
	margin: 8px 0 0;
	color: color-mix(in srgb, var(--SID-color-base) 82%, transparent);
}

@media (max-width: 900px) {
	.SID-project-grid {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 350px));
		gap: 18px;
	}
}

@media (max-width: 760px) {
	.SID-project-archive__hero {
		padding: 54px 20px 40px;
	}

	.SID-project-archive__body {
		padding-top: 26px;
		padding-bottom: 52px;
	}

	.SID-project-grid {
		gap: 15px;
	}

	.SID-project-card__body {
		padding: 16px;
	}

	.SID-project-card__title {
		font-size: 1.12rem;
	}

	.SID-project-single__hero {
		padding: 32px 18px 38px;
	}

	.SID-project-single__hero-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
	}

	.SID-project-single__intro {
		order: 0;
	}

	.SID-project-single__title {
		font-size: clamp(1.7rem, 8vw, 3rem);
		letter-spacing: -.055em;
	}

	.SID-project-single__media {
		order: 1;
	}

	.SID-project-single__featured {
		aspect-ratio: 16 / 10;
		border-width: 5px;
		border-radius: 20px;
	}

	.SID-project-single__breadcrumb {
		margin-bottom: 16px;
	}

	.SID-project-single__actions {
		margin-top: 20px;
	}

	.SID-project-single__actions .wp-block-button,
	.SID-project-single__actions .wp-block-button__link {
		width: 100%;
	}

	.SID-project-single__content {
		padding: 24px 16px 48px;
	}

	.SID-project-single__content > .wp-block-post-content {
		font-size: 1rem;
	}

	.SID-project-single__cta-inner,
	.SID-project-archive__cta-inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
	}
}

@media (max-width: 520px) {
	.SID-project-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.SID-project-card__image {
		aspect-ratio: 16 / 10;
	}

	.SID-project-filters {
		justify-content: flex-start;
		gap: 7px;
	}

	.SID-project-filter {
		min-height: 36px;
		padding: 7px 12px;
		font-size: .75rem;
	}

	.SID-project-details__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.SID-project-gallery__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.SID-project-filter,
	.SID-project-card,
	.SID-project-card__image img {
		transition: none;
	}

	.SID-project-card:hover,
	.SID-project-card:hover .SID-project-card__image img {
		transform: none;
	}
}

.SID-site-header .SID-mobile-enquire {
	display: none;
}

@media (max-width: 760px) {
	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open {
		box-sizing: border-box;
		padding: max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
	}

	.SID-site-header .wp-block-navigation__responsive-dialog {
		width: min(100%, 520px);
		margin: 0 auto;
	}

	.SID-site-header .wp-block-navigation__responsive-container-close {
		display: grid;
		width: 48px;
		height: 48px;
		place-items: center;
		border: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, var(--SID-color-base));
		border-radius: 50%;
		background: var(--SID-color-surface);
		color: var(--SID-color-primary);
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog .wp-block-navigation__responsive-container-content {
		align-items: stretch !important;
		width: 100%;
		box-sizing: border-box;
		padding-top: 60px;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content > .wp-block-navigation__container {
		align-items: stretch !important;
		width: 100% !important;
		max-width: none;
		justify-content: flex-start;
		gap: 2px !important;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
		display: block !important;
		align-items: stretch !important;
		width: 100%;
		box-sizing: border-box;
		text-align: left !important;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
		display: flex;
		align-items: center;
		justify-content: flex-start !important;
		width: 100% !important;
		min-height: 52px;
		box-sizing: border-box;
		padding: 12px 14px;
		border-bottom: 1px solid color-mix(in srgb, var(--SID-color-contrast) 9%, var(--SID-color-base));
		border-radius: 8px;
		white-space: normal;
		font-size: 1.05rem;
		font-weight: 700;
		text-align: left !important;
		text-decoration: none;
	}

	.SID-site-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
	.SID-site-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible {
		background: color-mix(in srgb, var(--SID-color-primary) 6%, var(--SID-color-base));
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 48px !important;
		align-items: center;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation-item__content {
		width: 100% !important;
		justify-content: flex-start !important;
		grid-column: 1;
		grid-row: 1;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon {
		display: grid;
		width: 44px;
		height: 44px;
		grid-column: 2;
		grid-row: 1;
		place-items: center;
		border: 0;
		border-radius: 50%;
		background: color-mix(in srgb, var(--SID-color-primary) 7%, var(--SID-color-base));
		color: var(--SID-color-primary);
		cursor: pointer;
		transition: background-color .2s ease;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon:hover,
	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon:focus-visible {
		background: color-mix(in srgb, var(--SID-color-primary) 14%, var(--SID-color-base));
		outline: 2px solid color-mix(in srgb, var(--SID-color-primary) 45%, transparent);
		outline-offset: 2px;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon[aria-expanded="true"] svg {
		transform: rotate(180deg);
	}

	.SID-site-header .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon svg {
		width: 16px;
		height: 16px;
		transition: transform .2s ease;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation__submenu-container {
		position: static;
		width: 100% !important;
		box-sizing: border-box;
		grid-column: 1 / -1;
		margin: 6px 0 12px;
		padding: 4px 8px 4px 12px;
		border: 0;
		border-left: 2px solid color-mix(in srgb, var(--SID-color-primary) 24%, transparent);
		border-radius: 0 10px 10px 0;
		background: color-mix(in srgb, var(--SID-color-primary) 3%, var(--SID-color-base));
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-submenu.SID-mobile-submenu-collapsed > .wp-block-navigation__submenu-container {
		display: none !important;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		display: flex;
		align-items: center;
		justify-content: flex-start !important;
		width: 100% !important;
		min-height: 48px;
		box-sizing: border-box;
		padding: 10px 12px;
		border-radius: 6px;
		white-space: normal;
		font-size: .95rem;
		text-align: left !important;
		text-decoration: none;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible {
		background: color-mix(in srgb, var(--SID-color-primary) 7%, var(--SID-color-base));
		outline: none;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .SID-mobile-enquire {
		margin-top: 16px;
	}

	.SID-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .SID-mobile-enquire > .wp-block-navigation-item__content {
		justify-content: center !important;
		min-height: 52px;
		border: 0;
		border-radius: 8px;
		background: var(--SID-color-primary);
		color: var(--SID-color-base);
	}

	.SID-site-header .wp-block-navigation__container > .SID-mobile-enquire > .wp-block-navigation-item__content:hover,
	.SID-site-header .wp-block-navigation__container > .SID-mobile-enquire > .wp-block-navigation-item__content:focus-visible {
		background: var(--SID-color-primary);
		color: var(--SID-color-base);
	}

	.SID-site-header .SID-mobile-enquire {
		display: block;
	}

	@media (prefers-reduced-motion: reduce) {
		.SID-site-header .wp-block-navigation__submenu-icon,
		.SID-site-header .wp-block-navigation__submenu-icon svg {
			transition: none;
		}
	}
}

/* Dedicated About page */
.SID-about-page { --wp--style--block-gap: 0; }
.SID-about-page > .wp-block-group { margin-block-start: 0 !important; }
.SID-about-hero {
	padding: clamp(52px, 8vw, 104px) 22px clamp(64px, 9vw, 112px);
	background: linear-gradient(118deg, #f7f7f2 0%, #fff 56%, #f2f4ef 100%);
}
.SID-about-hero__layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, .9fr);
	grid-template-rows: auto auto;
	align-items: center;
	gap: 22px clamp(38px, 7vw, 96px);
	margin: 0;
}
.SID-about-hero__copy { grid-column: 1; grid-row: 1; width: 100%; }
.SID-about-hero__copy .SID-eyebrow { margin-bottom: 18px; }
.SID-about-hero__copy h1 {
	margin: 0 0 22px;
	color: var(--SID-color-primary);
	font-size: clamp(3rem, 6.2vw, 5.5rem);
	font-weight: 800;
	letter-spacing: -.065em;
	line-height: .99;
}
.SID-about-page .SID-accent { color: var(--SID-color-accent); }
.SID-about-hero__copy > p:not(.SID-eyebrow) {
	max-width: 570px;
	margin: 0 0 28px;
	color: #526057;
	font-size: clamp(1rem, 1.4vw, 1.14rem);
	line-height: 1.8;
}
.SID-about-hero__portrait { position: relative; grid-column: 2; grid-row: 1 / span 2; width: 100%; max-width: 470px; margin-left: auto; }
.SID-about-hero__image { margin: 0; }
.SID-about-hero__image img { display: block; width: 100%; aspect-ratio: 1 / 1.08; border-radius: 12px; object-fit: cover; object-position: center 30%; box-shadow: 0 14px 32px rgba(22,72,50,.11); }
.SID-about-hero__image-caption { display: flex; flex-direction: column; gap: 3px; margin: 0; padding: 13px 2px 0; color: inherit; text-align: left; }
.SID-about-hero__image-caption strong { color: var(--SID-color-primary); font-size: .98rem; font-weight: 800; letter-spacing: -.02em; }
.SID-about-hero__image-caption span { color: #718077; font-size: .78rem; line-height: 1.45; }
.SID-about-hero__leader { grid-column: 1; grid-row: 2; align-self: start; margin-top: 0; padding: 19px 0 0 20px; border-left: 2px solid var(--SID-color-accent); }
.SID-about-hero__leader .SID-eyebrow { margin-bottom: 5px; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.SID-about-hero__leader h2 { margin: 0 0 7px; color: var(--SID-color-primary); font-size: 1.25rem; font-weight: 800; letter-spacing: -.035em; }
.SID-about-hero__leader p { max-width: 500px; margin: 0; color: #65736a; font-size: .9rem; line-height: 1.7; }
.SID-about-stats { padding: 0 22px; }
.SID-about-stats__grid { position: relative; z-index: 1; margin: -30px 0 0; padding: 25px 24px; border: 1px solid #e8ece7; border-radius: 12px; background: #fff; box-shadow: 0 12px 30px rgba(23,55,37,.06); }
.SID-about-stats__grid > .wp-block-column { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 7px 20px; border-right: 1px solid #e8ece7; text-align: center; }
.SID-about-stats__grid > .wp-block-column:last-child { border-right: 0; }
.SID-about-stats__grid strong { color: var(--SID-color-primary); font-size: clamp(1.12rem,2vw,1.5rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.2; }
.SID-about-stats__grid > .wp-block-column:first-child strong { color: var(--SID-color-accent); font-size: clamp(1.55rem,2.6vw,2rem); }
.SID-about-stats__grid span { color: #718077; font-size: .78rem; line-height: 1.45; }
.SID-about-story { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(35px,8vw,110px); padding: clamp(56px,7vw,88px) 22px; }
.SID-about-story h2,.SID-about-focus h2 { margin: 0; color: var(--SID-color-primary); font-size: clamp(2.3rem,4.2vw,3.7rem); font-weight: 800; letter-spacing: -.06em; line-height: 1.05; }
.SID-about-story__body { padding-top: 26px; }
.SID-about-story__body p { margin: 0 0 20px; color: #536159; font-size: 1rem; line-height: 1.85; }
.SID-about-focus { padding: clamp(56px,7vw,82px) 22px; background: #f6f7f3; }
.SID-about-focus__heading { margin: 0 0 38px; }
.SID-about-focus__heading .SID-eyebrow { margin-bottom: 12px; }
.SID-about-focus__cards { gap: 18px; margin: 0; }
.SID-about-focus__card { position: relative; display: flex; min-height: 255px; flex-direction: column; align-items: flex-start; padding: 28px 27px; border: 1px solid #e5e9e2; border-radius: 12px; background: #fff; transition: transform var(--SID-transition), box-shadow var(--SID-transition); }
.SID-about-focus__card:hover { transform: translateY(-4px); box-shadow: 0 16px 35px rgba(23,55,37,.08); }
.SID-about-focus__number { color: #a4b4a8; font-size: .78rem; font-weight: 800; letter-spacing: .12em; }
.SID-about-focus__card h3 { margin: 24px 0 8px; color: #1d3828; font-size: 1.24rem; letter-spacing: -.03em; }
.SID-about-focus__card p { margin: 0 0 23px; color: #65736a; font-size: .9rem; line-height: 1.7; }
.SID-about-focus__card a { margin-top: auto; color: var(--SID-color-primary); font-size: .86rem; font-weight: 800; text-decoration: none; }
.SID-about-focus__card a span { color: var(--SID-color-accent); }
.SID-about-values { padding: clamp(56px,7vw,84px) 22px; text-align: center; }
.SID-about-values .SID-eyebrow { margin: 0 0 16px; }
.SID-about-values h2 { margin: 0 auto 20px; color: var(--SID-color-primary); font-size: clamp(2rem,4vw,3.35rem); letter-spacing: -.06em; line-height: 1.12; }
.SID-about-values > p:last-child { max-width: 650px; margin: 0 auto; color: #66736b; font-size: 1rem; line-height: 1.8; }
.SID-about-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: clamp(38px,5vw,62px) 30px; border-radius: 16px; background: var(--SID-color-primary); color: #fff; }
.SID-about-cta .SID-eyebrow { margin: 0 0 10px; }
.SID-about-cta h2 { margin: 0 0 8px; color: #fff; font-size: clamp(1.8rem,3vw,2.5rem); letter-spacing: -.045em; }
.SID-about-cta p:not(.SID-eyebrow) { margin: 0; color: rgba(255,255,255,.8); }
.SID-about-cta .wp-block-buttons { flex: 0 0 auto; }
@media (max-width: 780px) {
	.SID-about-hero__layout { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; align-items: stretch; gap: 22px; }
	.SID-about-hero__copy,.SID-about-hero__portrait,.SID-about-hero__leader { grid-column: 1; grid-row: auto; width: 100%; }
	.SID-about-hero__portrait { max-width: 420px; margin: 0; }
	.SID-about-hero__image img { max-height: 440px; }
	.SID-about-story { grid-template-columns: 1fr; gap: 14px; }
	.SID-about-story__body { padding-top: 0; }
	.SID-about-stats__grid { flex-wrap: wrap; gap: 0; padding: 20px; }
	.SID-about-stats__grid > .wp-block-column { flex: 1 1 30%; padding: 10px 14px; }
	.SID-about-focus__cards { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
	.SID-about-focus__cards > .wp-block-column { width: auto; margin: 0; }
	.SID-about-focus__card { min-height: 0; padding: 23px 20px; }
}
@media (max-width: 600px) {
	.SID-about-hero { padding: 36px 18px 68px; }
	.SID-about-hero__layout { gap: 18px; }
	.SID-about-hero__copy h1 { font-size: clamp(2.8rem,13vw,4rem); }
	.SID-about-hero__portrait { max-width: 100%; }
	.SID-about-stats { padding: 0 16px; }
	.SID-about-stats__grid { margin-top: -25px; padding: 16px 13px; }
	.SID-about-stats__grid > .wp-block-column { flex-basis: 100%; padding: 13px 8px; border-right: 0; border-bottom: 1px solid #e8ece7; }
	.SID-about-stats__grid > .wp-block-column:last-child { border-bottom: 0; }
	.SID-about-focus__cards { display: grid !important; grid-template-columns: 1fr; gap: 12px; }
	.SID-about-focus__cards > .wp-block-column { width: auto; margin: 0; }
	.SID-about-focus__card { min-height: 0; padding: 23px 20px; }
	.SID-about-focus__card h3 { margin-top: 16px; }
	.SID-about-cta { width: calc(100% - 32px); box-sizing: border-box; align-items: flex-start; flex-direction: column; margin: 0 auto; padding: 30px 24px; }
}

/* Keep homepage sections flush; each section controls its own internal spacing. */
.SID-home {
	--wp--style--block-gap: 0;
	gap: 0;
}
.SID-home > * + * {
	margin-block-start: 0 !important;
}

/* Remove the theme's default block gap after the site header. */
.wp-site-blocks > main {
	margin-block-start: 0 !important;
}


@media (max-width: 900px) {
	.SID-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: repeat(2, minmax(135px, 1fr));
	}
	.SID-gallery > .SID-gallery__image {
		grid-column: auto !important;
		grid-row: auto !important;
	}
}

/* Projects gallery: target the page anchor as well as the theme template classes,
   so the layout also holds when WordPress serves a saved Site Editor template. */
@media (min-width: 901px) {
	#projects .wp-block-gallery {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-template-rows: 210px 160px;
		gap: 12px;
		width: 100%;
		max-width: none;
		margin: 0;
	}

	#projects .wp-block-gallery > figure.wp-block-image {
		position: relative;
		width: 100%;
		min-width: 0;
		min-height: 0;
		height: 100%;
		margin: 0 !important;
		overflow: hidden;
		border-radius: 12px;
		background: #eef0eb;
		box-shadow: 0 8px 24px rgba(20, 45, 31, .1);
	}

	#projects .wp-block-gallery > figure.wp-block-image:nth-child(1) { grid-column: 1; grid-row: 1 / 3; }
	#projects .wp-block-gallery > figure.wp-block-image:nth-child(2) { grid-column: 2 / 4; grid-row: 1; }
	#projects .wp-block-gallery > figure.wp-block-image:nth-child(3) { grid-column: 2; grid-row: 2; }
	#projects .wp-block-gallery > figure.wp-block-image:nth-child(4) { grid-column: 3; grid-row: 2; }

	#projects .wp-block-gallery > figure.wp-block-image img {
		display: block;
		width: 100%;
		height: 100%;
		border-radius: inherit;
		object-fit: cover;
	}

	#projects .wp-block-gallery > figure.wp-block-image:nth-child(2) img {
		padding: 18px;
		box-sizing: border-box;
		background: #fff;
		object-fit: contain;
	}

	#projects .wp-block-gallery > figure.wp-block-image figcaption {
		position: absolute;
		left: 12px;
		bottom: 12px;
		width: fit-content;
		max-width: calc(100% - 24px);
		margin: 0;
		padding: 7px 10px;
		border-radius: 5px;
		background: rgba(255, 255, 255, .94);
		color: var(--SID-color-primary);
		font-size: .74rem;
		font-weight: 800;
		line-height: 1.3;
	}
}

@media (max-width: 900px) {
	#projects .wp-block-gallery {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: clamp(135px, 28vw, 220px);
		gap: 10px;
		margin: 0;
	}

	#projects .wp-block-gallery > figure.wp-block-image {
		position: relative;
		width: 100%;
		min-width: 0;
		margin: 0 !important;
		overflow: hidden;
		border-radius: 10px;
	}

	#projects .wp-block-gallery > figure.wp-block-image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	#projects .wp-block-gallery > figure.wp-block-image:nth-child(2) img {
		padding: 14px;
		box-sizing: border-box;
		background: #fff;
		object-fit: contain;
	}
}


.wp-site-blocks > main.SID-contact-page + footer {
	margin-block-start: 0 !important;
}

/* Project detail page refresh: clear hierarchy, gallery-first story, and usable photo viewer. */
.SID-project-single__title {
	max-width: 100%;
	white-space: normal;
	overflow-wrap: anywhere;
}

.SID-project-single__featured {
	min-height: 320px;
	aspect-ratio: 1.15 / 1;
}

.SID-project-single__featured img {
	min-height: 320px;
}

.SID-project-single .SID-project-details.SID-project-gallery {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(48px, 7vw, 88px) 24px;
	background: #f5f7f4;
}

.SID-project-gallery__inner {
	width: min(1200px, 100%);
	margin: 0 auto;
}

.SID-project-gallery__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 28px;
}

.SID-project-gallery__eyebrow {
	margin: 0 0 9px;
	color: var(--SID-color-accent);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.SID-project-gallery__heading h2 {
	margin: 0;
	color: var(--SID-color-primary);
	font-size: clamp(1.8rem, 3.5vw, 2.7rem);
	font-weight: 750;
	letter-spacing: -.045em;
	line-height: 1.1;
}

.SID-project-gallery__intro {
	margin: 10px 0 0;
	color: color-mix(in srgb, var(--SID-color-contrast) 65%, var(--SID-color-base));
	font-size: .98rem;
}

.SID-project-gallery__count {
	flex: 0 0 auto;
	padding: 8px 13px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 14%, transparent);
	border-radius: 999px;
	background: var(--SID-color-base);
	color: var(--SID-color-primary);
	font-size: .8rem;
	font-weight: 700;
}

.SID-project-gallery__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-rows: clamp(150px, 20vw, 245px);
	gap: 14px;
}

.SID-project-gallery__item {
	position: relative;
	display: block;
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 14px;
	background: #e8ece7;
	box-shadow: 0 8px 22px rgba(22, 54, 39, .08);
	cursor: zoom-in;
	isolation: isolate;
}

.SID-project-gallery__item:first-child {
	grid-column: span 2;
	grid-row: span 2;
}

.SID-project-gallery__item-image,
.SID-project-gallery__image {
	display: block;
	width: 100%;
	height: 100%;
}

.SID-project-gallery__item-image {
	overflow: hidden;
	border-radius: inherit;
}

.SID-project-gallery__image {
	aspect-ratio: auto;
	object-fit: cover;
	transition: transform 300ms ease;
}

.SID-project-gallery__item:hover .SID-project-gallery__image,
.SID-project-gallery__item:focus-visible .SID-project-gallery__image {
	transform: scale(1.035);
}

.SID-project-gallery__item:focus-visible {
	outline: 3px solid var(--SID-color-accent);
	outline-offset: 3px;
}

.SID-project-gallery__item-open {
	position: absolute;
	right: 12px;
	bottom: 12px;
	display: grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .62);
	border-radius: 50%;
	background: rgba(18, 42, 31, .72);
	color: #fff;
	font-size: 1.25rem;
	line-height: 1;
	opacity: 0;
	transform: translateY(4px);
	transition: opacity 180ms ease, transform 180ms ease;
	pointer-events: none;
}

.SID-project-gallery__item:hover .SID-project-gallery__item-open,
.SID-project-gallery__item:focus-visible .SID-project-gallery__item-open {
	opacity: 1;
	transform: translateY(0);
}

.SID-project-gallery__lightbox {
	position: fixed;
	box-sizing: border-box;
	width: min(1100px, calc(100% - 32px));
	max-width: none;
	max-height: min(92dvh, 900px);
	padding: 44px 72px 52px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 18px;
	background: #101813;
	color: #fff;
	box-shadow: 0 30px 100px rgba(0, 0, 0, .42);
}

.SID-project-gallery__lightbox::backdrop {
	background: rgba(9, 17, 13, .82);
	backdrop-filter: blur(5px);
}

.SID-project-gallery__lightbox-figure {
	display: flex;
	max-height: calc(92dvh - 100px);
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin: 0;
}

.SID-project-gallery__lightbox-image {
	display: block;
	max-width: 100%;
	max-height: calc(92dvh - 160px);
	border-radius: 8px;
	object-fit: contain;
}

.SID-project-gallery__lightbox-caption {
	min-height: 1.3em;
	color: rgba(255, 255, 255, .82);
	font-size: .9rem;
	text-align: center;
}

.SID-project-gallery__lightbox-count {
	position: absolute;
	bottom: 14px;
	left: 50%;
	margin: 0;
	color: rgba(255, 255, 255, .68);
	font-size: .8rem;
	transform: translateX(-50%);
}

.SID-project-gallery__close,
.SID-project-gallery__nav {
	position: absolute;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .26);
	background: rgba(255, 255, 255, .1);
	color: #fff;
	cursor: pointer;
	transition: background-color 160ms ease;
}

.SID-project-gallery__close:hover,
.SID-project-gallery__nav:hover {
	background: rgba(255, 255, 255, .2);
}

.SID-project-gallery__close {
	top: 12px;
	right: 12px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	font-size: 1.7rem;
	line-height: 1;
}

.SID-project-gallery__nav {
	top: 50%;
	width: 44px;
	height: 56px;
	border-radius: 12px;
	font-size: 2rem;
	line-height: 1;
	transform: translateY(-50%);
}

.SID-project-gallery__nav:disabled {
	opacity: .35;
	cursor: default;
}

.SID-project-gallery__nav--previous { left: 14px; }
.SID-project-gallery__nav--next { right: 14px; }

.SID-project-single__cta {
	margin-top: 0;
}

/* Distinctive close on project pages: layered forest green, an architectural ring, and a clear visit action. */
.SID-project-single__cta {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: clamp(34px, 5vw, 58px) 24px;
	background:
		radial-gradient(ellipse at 86% 48%, rgba(255, 255, 255, .07), transparent 27%),
		linear-gradient(105deg, rgba(255, 255, 255, .62) 0%, rgba(255, 255, 255, .48) 56%, rgba(255, 255, 255, .32) 100%),
		var(--SID-project-cta-image, linear-gradient(118deg, #103d2a 0%, #164832 54%, #20583d 100%));
	background-position: center;
	background-size: cover;
}

.SID-project-single__cta::before {
	position: absolute;
	top: 50%;
	right: max(5vw, calc((100vw - 1200px) / 2));
	z-index: -1;
	width: clamp(280px, 34vw, 440px);
	aspect-ratio: 1;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	box-shadow: 0 0 0 28px rgba(255, 255, 255, .035), 0 0 0 58px rgba(255, 255, 255, .025);
	content: "";
	transform: translateY(-50%);
	pointer-events: none;
}

.SID-project-single__cta-inner {
	position: relative;
	padding: clamp(28px, 4.5vw, 52px);
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 18px;
	background: rgba(0, 0, 0, .3);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	box-shadow: 0 22px 55px rgba(5, 28, 18, .16);
}

.SID-project-single__cta .SID-eyebrow {
	margin-bottom: 12px;
	color: #ffb16e;
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .16em;
}

.SID-project-single__cta-copy h2 {
	max-width: 620px;
	font-size: clamp(2rem, 4vw, 3.15rem);
	letter-spacing: -.055em;
}

.SID-project-single__cta-copy p:not(.SID-eyebrow) {
	max-width: 600px;
	margin-top: 12px;
	font-size: clamp(.98rem, 1.35vw, 1.1rem);
	line-height: 1.7;
}

.SID-project-single__cta .SID-button--light .wp-block-button__link {
	min-height: 58px;
	padding: 16px 23px;
	border: 0;
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(4, 27, 17, .2);
	font-size: .95rem;
	font-weight: 800;
	transition: box-shadow var(--SID-transition), background-color var(--SID-transition);
}

.SID-project-single__cta .SID-button--light .wp-block-button__link:hover,
.SID-project-single__cta .SID-button--light .wp-block-button__link:focus-visible {
	box-shadow: 0 15px 30px rgba(4, 27, 17, .26);
}

.SID-project-single__cta .SID-button--light-outline .wp-block-button__link {
	min-height: 58px;
	padding: 15px 22px;
	border: 1px solid rgba(255, 255, 255, .62);
	border-radius: 8px;
	background: rgba(255, 255, 255, .08) !important;
	box-shadow: 0 8px 20px rgba(4, 27, 17, .12);
	color: var(--SID-color-base) !important;
	font-size: .95rem;
	font-weight: 800;
	transition: border-color var(--SID-transition), background-color var(--SID-transition);
}

.SID-project-single__cta .SID-button--light-outline .wp-block-button__link:hover,
.SID-project-single__cta .SID-button--light-outline .wp-block-button__link:focus-visible {
	border-color: var(--SID-color-accent);
	background: color-mix(in srgb, var(--SID-color-accent) 88%, var(--SID-color-contrast)) !important;
}

@media (max-width: 760px) {
	.SID-project-single__cta {
		padding: 26px 16px;
	}

	.SID-project-single__cta-inner {
		gap: 22px;
		padding: 26px 22px;
	}

	.SID-project-single__cta::before {
		right: -125px;
		width: 280px;
	}

	.SID-project-single__cta .wp-block-buttons {
		width: 100%;
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.SID-project-single__cta .wp-block-buttons > p,
	.SID-project-single__cta .wp-block-buttons > .wp-block-button,
	.SID-project-single__cta .wp-block-buttons > p > .wp-block-button {
		width: 100%;
		margin: 0;
	}

	.SID-project-single__cta .wp-block-buttons .wp-block-button__link {
		box-sizing: border-box;
		width: 100%;
		min-height: 58px;
		justify-content: center;
	}
}

@media (max-width: 760px) {
	.SID-project-single__featured,
	.SID-project-single__featured img {
		min-height: 220px;
	}

	.SID-project-single .SID-project-details.SID-project-gallery {
		padding: 44px 18px;
	}

	.SID-project-gallery__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: clamp(135px, 32vw, 220px);
		gap: 10px;
	}

	.SID-project-gallery__item:first-child {
		grid-column: span 2;
		grid-row: span 1;
	}

	.SID-project-gallery__lightbox {
		width: calc(100% - 20px);
		padding: 56px 48px 48px;
		border-radius: 12px;
	}

	.SID-project-gallery__nav {
		width: 36px;
		height: 46px;
	}

	.SID-project-gallery__nav--previous { left: 6px; }
	.SID-project-gallery__nav--next { right: 6px; }
}

@media (max-width: 480px) {
	.SID-project-gallery__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.SID-project-gallery__grid {
		grid-auto-rows: 145px;
	}

	.SID-project-gallery__item:first-child {
		grid-row: span 2;
	}

	.SID-project-gallery__lightbox {
		padding-right: 40px;
		padding-left: 40px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.SID-project-gallery__image,
	.SID-project-gallery__item-open,
	.SID-project-gallery__close,
	.SID-project-gallery__nav {
		transition: none;
	}
}

/* Project overview hero: prioritize the title, useful facts, and a clear next step. */
.SID-project-single__hero {
	padding: clamp(38px, 5.5vw, 68px) 24px;
	background:
		radial-gradient(ellipse at 88% 12%, color-mix(in srgb, var(--SID-color-accent) 9%, transparent), transparent 34%),
		linear-gradient(115deg, #f3f6f1 0%, #fbfaf7 64%, #f8f3ed 100%);
}

.SID-project-single__hero-grid {
	grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
	align-items: center;
	gap: clamp(30px, 5vw, 72px);
}

.SID-project-single__intro {
	max-width: 520px;
}

.SID-project-single__breadcrumb {
	margin-bottom: 28px;
}

.SID-project-single__breadcrumb a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 36px;
	padding: 0 12px;
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 12%, transparent);
	border-radius: 999px;
	background: color-mix(in srgb, var(--SID-color-base) 72%, transparent);
	transition: border-color 180ms ease, background-color 180ms ease;
}

.SID-project-single__breadcrumb a:hover {
	border-color: color-mix(in srgb, var(--SID-color-primary) 32%, transparent);
	background: var(--SID-color-base);
}

.SID-project-single__eyebrow {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
	color: var(--SID-color-accent);
	font-size: .7rem;
	letter-spacing: .17em;
}

.SID-project-single__eyebrow::before {
	width: 22px;
	height: 2px;
	background: currentColor;
	content: "";
}

.SID-project-single__title {
	margin-bottom: 12px;
	font-size: clamp(2.35rem, 4.8vw, 4.1rem);
	letter-spacing: -.06em;
	line-height: 1.02;
}

.SID-project-single__type {
	margin-bottom: 16px;
	padding: 6px 12px;
	border-color: color-mix(in srgb, var(--SID-color-primary) 16%, transparent);
	background: color-mix(in srgb, var(--SID-color-primary) 5%, var(--SID-color-base));
	font-size: .72rem;
}

.SID-project-single__excerpt {
	margin-bottom: 18px !important;
	font-size: 1rem;
	line-height: 1.7;
}

.SID-project-single__intro .SID-project-card__meta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px 16px;
	margin: 0;
	padding: 14px 16px;
	border-color: color-mix(in srgb, var(--SID-color-primary) 12%, transparent);
	border-radius: 13px;
	background: color-mix(in srgb, var(--SID-color-base) 92%, transparent);
	box-shadow: 0 8px 26px color-mix(in srgb, var(--SID-color-primary) 6%, transparent);
}

.SID-project-single__intro .SID-project-card__location {
	grid-column: 1 / -1;
	margin: 0;
	padding-bottom: 10px;
	border-bottom: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, transparent);
	font-size: .82rem;
}

.SID-project-single__intro .SID-project-card__specs {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 24px;
	padding: 0;
	border: 0;
}

.SID-project-single__intro .SID-project-card__specs p {
	gap: 2px;
}

.SID-project-single__intro .SID-project-card__specs p span {
	font-size: .66rem;
}

.SID-project-single__intro .SID-project-card__specs p strong {
	font-size: .85rem;
}

.SID-project-single__intro .SID-project-card__status {
	justify-self: end;
	margin: 0;
}

.SID-project-single__intro .SID-project-card__specs .SID-project-card__status {
	align-self: center;
	margin: 0 0 0 auto;
	line-height: 1.25;
}

.SID-project-single__actions {
	gap: 10px;
	margin-top: 18px;
}

.SID-project-single__actions .wp-block-button__link {
	min-height: 46px;
	padding: 10px 13px;
	border-radius: 8px;
	font-size: .78rem;
	white-space: nowrap;
	box-shadow: 0 5px 15px color-mix(in srgb, var(--SID-color-primary) 14%, transparent);
}

.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link {
	border: 1px solid color-mix(in srgb, var(--SID-color-primary) 18%, transparent) !important;
	background: var(--SID-color-base) !important;
	box-shadow: none;
	color: var(--SID-color-primary) !important;
}

.SID-project-single__intro .SID-project-share {
	margin-top: 16px;
}

.SID-project-single__featured {
	position: relative;
	min-height: 0;
	border: 6px solid rgba(255, 255, 255, .9);
	border-radius: 22px;
	background: #e9eee8;
	box-shadow: 0 24px 64px color-mix(in srgb, var(--SID-color-primary) 16%, transparent);
	aspect-ratio: 1.28 / 1;
}

.SID-project-single__featured img {
	min-height: 0;
}

@media (max-width: 960px) {
	.SID-project-single__hero-grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 28px;
	}

	.SID-project-single__title {
		font-size: clamp(2rem, 5.2vw, 3.3rem);
	}
}

@media (max-width: 760px) {
	.SID-project-single__hero {
		padding: 30px 18px 42px;
	}

	.SID-project-single__intro {
		max-width: none;
	}

	.SID-project-single__featured {
		border-width: 4px;
		border-radius: 16px;
	}

	.SID-project-single__breadcrumb {
		margin-bottom: 20px;
	}

	.SID-project-single__actions {
		align-items: stretch;
	}

	.SID-project-single__actions .wp-block-button,
	.SID-project-single__actions .wp-block-button__link {
		width: auto;
	}

	.SID-project-single__actions .wp-block-button:first-child,
	.SID-project-single__actions .wp-block-button:first-child .wp-block-button__link {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.SID-project-single__intro .SID-project-card__meta {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.SID-project-single__intro .SID-project-card__location {
		grid-column: 1;
	}

	.SID-project-single__intro .SID-project-card__status {
		justify-self: end;
	}

	.SID-project-single__actions .wp-block-button:not(:first-child),
	.SID-project-single__actions .wp-block-button:not(:first-child) .wp-block-button__link {
		width: 100%;
	}
}

/* Mobile project page: lead with the project image and keep the main actions together. */
@media (max-width: 760px) {
	.SID-project-single__hero {
		padding: 22px 16px 34px;
		background: linear-gradient(160deg, #f3f6f1 0%, #fbfaf7 72%, #f8f3ed 100%);
	}

	.SID-project-single__hero-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
	}

	.SID-project-single__intro {
		display: contents;
	}

	.SID-project-single__intro > *,
	.SID-project-single__media {
		grid-column: 1;
		min-width: 0;
	}

	.SID-project-single__breadcrumb { grid-row: 1; margin: 0 0 18px; }
	.SID-project-single__eyebrow { grid-row: 2; margin: 0 0 7px; }
	.SID-project-single__title {
		grid-row: 3;
		margin: 0 0 10px;
		font-size: clamp(2rem, 8.5vw, 3rem);
		line-height: 1.02;
	}
	.SID-project-single__type {
		grid-row: 4;
		justify-self: start;
		margin: 0 0 16px;
	}
	.SID-project-single__media {
		grid-row: 5;
		order: initial;
		margin: 0 0 20px;
	}
	.SID-project-single__featured {
		min-height: 0;
		aspect-ratio: 16 / 10;
		border-width: 4px;
		border-radius: 15px;
	}
	.SID-project-single__featured img { min-height: 0; }
	.SID-project-single__excerpt {
		grid-row: 6;
		max-width: none;
		margin: 0 0 16px !important;
		font-size: .96rem;
		line-height: 1.6;
	}
	.SID-project-single__intro > .wp-block-shortcode {
		grid-row: 7;
		max-width: none;
		margin: 0;
	}
	.SID-project-single__actions {
		display: grid !important;
		grid-row: 8;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
		margin: 14px 0 0;
	}
	.SID-project-single__actions .wp-block-button {
		width: 100%;
		min-width: 0;
	}
	.SID-project-single__actions .wp-block-button:first-child {
		grid-column: 1 / -1;
	}
	.SID-project-single__actions .wp-block-button__link {
		box-sizing: border-box;
		width: 100%;
		min-height: 46px;
		justify-content: center;
		padding: 10px 9px;
		font-size: .78rem;
		white-space: normal;
	}
	.SID-project-single__intro .SID-project-share {
		grid-row: 9;
		align-items: center;
		gap: 8px;
		margin: 14px 0 0;
	}
	.SID-project-single__intro .SID-project-share__label {
		width: auto;
		margin-right: 2px;
		font-size: .76rem;
	}
	.SID-project-single__intro .SID-project-share__link {
		width: 36px;
		height: 36px;
	}
	.SID-project-single__intro .SID-project-card__meta {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px 14px;
	}
	.SID-project-single__intro .SID-project-card__location {
		flex: 1 0 100%;
		grid-column: auto;
	}
	.SID-project-single__intro .SID-project-card__specs { flex: 1 1 auto; }
	.SID-project-single__intro .SID-project-card__status {
		flex: 0 0 auto;
		justify-self: auto;
	}

	.SID-project-single .SID-project-details.SID-project-gallery {
		padding: 34px 16px;
	}

	.SID-project-gallery__heading {
		align-items: flex-end;
		flex-direction: row;
		gap: 12px;
		margin-bottom: 18px;
	}

	.SID-project-gallery__heading h2 { font-size: 1.65rem; }
	.SID-project-gallery__intro { max-width: 250px; font-size: .88rem; }
	.SID-project-gallery__count { padding: 7px 10px; font-size: .72rem; }
	.SID-project-gallery__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: clamp(112px, 34vw, 145px);
		gap: 8px;
	}
	.SID-project-gallery__item:first-child {
		grid-column: span 2;
		grid-row: span 1;
	}
	.SID-project-gallery__item { border-radius: 10px; }
	.SID-project-gallery__item-open { right: 8px; bottom: 8px; opacity: 1; transform: none; }
}

@media (max-width: 380px) {
	.SID-project-single__hero { padding-right: 13px; padding-left: 13px; }
	.SID-project-single .SID-project-details.SID-project-gallery { padding-right: 13px; padding-left: 13px; }
	.SID-project-single__intro .SID-project-card__meta { gap: 10px; }
	.SID-project-gallery__heading { align-items: flex-start; }
	.SID-project-gallery__heading h2 { font-size: 1.5rem; }
	.SID-project-gallery__intro { max-width: 205px; }
	.SID-project-gallery__count { flex: 0 0 auto; }
}

/* A floating, high-contrast site-visit action anchored to the project photograph. */
.SID-project-single__featured {
	position: relative;
}

.SID-project-single__plan-visit-overlay {
	position: absolute;
	z-index: 2;
	bottom: clamp(12px, 2vw, 20px);
	left: clamp(12px, 2vw, 20px);
	box-sizing: border-box;
	min-width: 190px;
	padding: 10px 12px 11px 14px;
	border: 1px solid rgba(255, 255, 255, .78);
	border-left: 3px solid var(--SID-color-accent);
	border-radius: 12px;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 12px 32px rgba(11, 33, 23, .24);
	backdrop-filter: blur(12px);
}

.SID-project-single__plan-visit-overlay::before {
	display: block;
	margin: 0 0 5px;
	color: var(--SID-color-primary);
	content: "SEE IT IN PERSON";
	font-size: .58rem;
	font-weight: 800;
	letter-spacing: .13em;
}

.SID-project-single__plan-visit-overlay .wp-block-button {
	margin: 0;
}

.SID-project-single__plan-visit-overlay .wp-block-button__link {
	display: inline-flex;
	min-height: 42px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 9px 13px;
	border: 0 !important;
	border-radius: 8px;
	background: var(--SID-color-accent) !important;
	box-shadow: 0 5px 14px color-mix(in srgb, var(--SID-color-accent) 25%, transparent);
	color: var(--SID-color-base) !important;
	font-size: .8rem;
	font-weight: 800;
	line-height: 1.15;
	text-decoration: none;
	transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

.SID-project-single__plan-visit-overlay .wp-block-button__link:hover,
.SID-project-single__plan-visit-overlay .wp-block-button__link:focus-visible {
	background: color-mix(in srgb, var(--SID-color-accent) 88%, #a33100) !important;
	box-shadow: 0 8px 18px color-mix(in srgb, var(--SID-color-accent) 34%, transparent);
	transform: translateY(-1px);
}

.SID-project-single__plan-visit-overlay .wp-block-button__link:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 3px;
}

@media (max-width: 760px) {
	.SID-project-single__plan-visit-overlay {
		bottom: 10px;
		left: 10px;
		min-width: 0;
		padding: 8px 9px 9px 11px;
		border-radius: 10px;
	}

	.SID-project-single__plan-visit-overlay::before {
		margin-bottom: 4px;
		font-size: .54rem;
	}

	.SID-project-single__plan-visit-overlay .wp-block-button__link {
		min-height: 40px;
		padding: 8px 11px;
		font-size: .76rem;
	}

	.SID-project-single__actions .SID-project-single__call-now {
		grid-column: auto;
	}
}

.SID-project-single__intro .SID-project-card__specs .SID-project-single__brochure {
	box-sizing: border-box;
	flex: 1 0 100%;
	width: 100%;
	margin-top: 3px;
	padding-top: 10px;
	border-top: 1px solid color-mix(in srgb, var(--SID-color-primary) 10%, transparent);
}

.SID-project-single__brochure-link {
	box-sizing: border-box;
	display: flex;
	width: 100%;
	min-height: 56px;
	align-items: center;
	gap: 10px;
	padding: 8px 10px;
	border: 1px solid #e1e9e2;
	border-radius: 9px;
	background: #f7f9f6;
	color: var(--SID-color-primary);
	text-decoration: none;
	box-shadow: none;
	transition: border-color 160ms ease, background-color 160ms ease;
}

.SID-project-single__brochure-link:hover {
	border-color: color-mix(in srgb, var(--SID-color-primary) 24%, #e1e9e2);
	background: #f1f5f1;
}

.SID-project-single__brochure-link:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--SID-color-accent) 70%, white);
	outline-offset: 3px;
}

.SID-project-single__brochure-icon {
	display: grid;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	place-items: center;
	border-radius: 8px;
	background: #e8f0e9;
	color: var(--SID-color-primary);
}

.SID-project-single__brochure-icon svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.55;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.SID-project-single__brochure-copy {
	display: grid;
	min-width: 0;
	gap: 3px;
}

.SID-project-single__brochure-copy strong {
	font-size: .8rem;
	font-weight: 750;
	line-height: 1.25;
}

.SID-project-single__brochure-copy small {
	color: #747d76;
	font-size: .68rem;
	line-height: 1.3;
}

.SID-project-single__brochure-download {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: auto;
	padding: 7px 9px;
	border-radius: 7px;
	background: #e7efe8;
	color: var(--SID-color-primary);
	font-size: .72rem;
	font-weight: 750;
	white-space: nowrap;
	transition: background-color 160ms ease;
}

.SID-project-single__brochure-link:hover .SID-project-single__brochure-download {
	background: #dce9de;
}

.SID-project-single__brochure-download svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

@media (max-width: 760px) {
	.SID-project-single__brochure-link {
		min-height: 54px;
		gap: 9px;
		padding: 7px 9px;
	}
}

@media (max-width: 360px) {
	.SID-project-single__actions .SID-project-single__call-now {
		grid-column: 1 / -1;
	}

	.SID-project-single__brochure-copy strong {
		font-size: .76rem;
	}

	.SID-project-single__brochure-copy small {
		font-size: .7rem;
	}

	.SID-project-single__brochure-download {
		gap: 0;
		padding: 9px;
		font-size: 0;
	}
}

.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link {
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
}

.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link:hover,
.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link:focus-visible {
	border-color: color-mix(in srgb, var(--SID-color-primary) 30%, transparent) !important;
	background: color-mix(in srgb, var(--SID-color-primary) 7%, var(--SID-color-base)) !important;
	box-shadow: 0 6px 15px color-mix(in srgb, var(--SID-color-primary) 12%, transparent);
	color: var(--SID-color-primary) !important;
	transform: translateY(-1px);
}

.SID-project-single__actions .SID-project-single__call-now .wp-block-button__link:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--SID-color-primary) 28%, transparent);
	outline-offset: 2px;
}
