.elementor-2815 .elementor-element.elementor-element-1ebc3838{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-533e623c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-27e5a7e3{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-6758fee3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-65ecf0a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-22a1dee1{text-align:start;}.elementor-2815 .elementor-element.elementor-element-48262cdc{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-56eb1ffd{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-2b5d50d9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-770d91c8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-57b70a5b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-73f0cd1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-2a185e78{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-7b446be9{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-6c387b7f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-70d95576{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-9ddc462{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-7a51265c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-4ccbc84c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-6758a13c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-4e0e4874{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-7dcf6654{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-58cbfac1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2815 .elementor-element.elementor-element-7b674fca{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS */.mav-project {
	--mav-red: #D2232A;
	--mav-red-dark: #B51D23;
	--mav-navy: #1B2233;
	--mav-ink: #1B1D21;
	--mav-body: #596175;
	--mav-muted: #9DA6B8;
	--mav-line: #E3E5E8;
	--mav-panel: #F5F5F5;
	--mav-display: "Barlow Condensed", "Arial Narrow", Arial, sans-serif;
	--mav-text: "Barlow", "Helvetica Neue", Arial, sans-serif;
	font-family: var(--mav-text);
	color: var(--mav-body);
}
.e-con.mav-project,
.mav-project .e-con { --gap: 0px; --row-gap: 0px; --column-gap: 0px; }
.e-con.mav-project { padding: 0; display: block; }
.mav-project .mav-hero,
.mav-project .mav-facts-band,
.mav-project .mav-content { display: block; width: 100%; }
.mav-project .e-con.mav-wrap,
.mav-project .mav-wrap {
	width: 100%;
	max-width: 1232px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 16px;
	padding-right: 16px;
}
.mav-project .elementor-widget:not(:last-child) { margin-bottom: 0; }
.mav-project .elementor-widget-shortcode .elementor-shortcode > *:first-child { margin-top: 0; }

/* Shared type */
.mav-project h1, .mav-project h2, .mav-project h3,
.mav-project .mav-eyebrow, .mav-project .mav-eyebrow .elementor-heading-title,
.mav-project .elementor-button, .mav-project .mav-crumbs, .mav-project .mav-fact dt {
	font-family: var(--mav-display);
	text-transform: uppercase;
}
.mav-project h1, .mav-project h2, .mav-project h3,
.mav-project .mav-h2 .elementor-heading-title {
	color: var(--mav-ink);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: 0.01em;
	margin: 0;
	text-wrap: balance;
}
.mav-project .mav-eyebrow,
.mav-project .mav-eyebrow .elementor-heading-title {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--mav-red);
	font-weight: 600;
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0.18em;
	margin: 0;
}
.mav-project .mav-eyebrow::before,
.mav-project .mav-eyebrow .elementor-heading-title::before {
	content: "";
	width: 28px;
	height: 2px;
	background: var(--mav-red);
	flex: none;
}
.mav-project .mav-eyebrow .elementor-heading-title::before { display: block; }
.mav-project .elementor-widget.mav-eyebrow::before { display: none; }

/* Buttons */
.mav-project .mav-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.mav-project .mav-actions > .elementor-widget { width: auto; margin: 0; }
.mav-project .elementor-widget-button .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 0;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.1em;
	line-height: 1.2;
	padding: 14px 28px;
	border: 2px solid var(--mav-red);
	background: var(--mav-red);
	color: #fff;
	fill: #fff;
	transition: background .2s, color .2s, border-color .2s;
	white-space: nowrap;
}
.mav-project .elementor-widget-button .elementor-button:hover,
.mav-project .elementor-widget-button .elementor-button:focus { background: var(--mav-red-dark); border-color: var(--mav-red-dark); color: #fff; }
.mav-project .elementor-widget.mav-btn-ghost .elementor-button { background: transparent; border-color: #fff; }
.mav-project .elementor-widget.mav-btn-ghost .elementor-button:hover,
.mav-project .elementor-widget.mav-btn-ghost .elementor-button:focus { background: #fff; color: var(--mav-navy); border-color: #fff; }
.mav-project .elementor-widget.mav-btn-outline .elementor-button { background: transparent; color: var(--mav-red); }
.mav-project .elementor-widget.mav-btn-outline .elementor-button:hover,
.mav-project .elementor-widget.mav-btn-outline .elementor-button:focus { background: var(--mav-red); color: #fff; }
.mav-project a:focus-visible, .mav-project .elementor-button:focus-visible { outline: 2px solid var(--mav-red); outline-offset: 3px; }

/* Hero */
.mav-project .mav-hero {
	background: var(--mav-navy);
	color: #fff;
	position: relative;
	overflow: hidden;
	padding: 0;
}
.mav-project .mav-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(90deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 96px);
	pointer-events: none;
}
.mav-project .mav-hero > .mav-wrap {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 56px;
	align-items: center;
	padding-top: 72px;
	padding-bottom: 80px;
}
.mav-project .mav-hero-copy { display: flex; flex-direction: column; gap: 0; padding: 0; }
.mav-project .mav-crumbs {
	display: block;
	font-size: 14px;
	letter-spacing: 0.08em;
	color: var(--mav-muted);
	margin-bottom: 28px;
}
.mav-project .mav-crumbs a { color: var(--mav-muted); text-decoration: none; }
.mav-project .mav-crumbs a:hover { color: #fff; }
.mav-project .mav-crumbs span { margin-inline: 8px; color: var(--mav-red); }
.mav-project .mav-title .elementor-heading-title,
.mav-project .mav-title-accent .elementor-heading-title {
	font-family: var(--mav-display);
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: 0.01em;
	font-size: clamp(44px, 6.2vw, 78px);
	color: #fff;
	margin: 0;
	text-wrap: balance;
}
.mav-project .mav-title { margin-top: 18px; }
.mav-project .mav-title-accent .elementor-heading-title { color: var(--mav-red); }
.mav-project .mav-lede,
.mav-project .mav-lede p {
	color: #E9EAEC;
	font-family: var(--mav-text);
	font-size: 19px;
	line-height: 1.65;
	max-width: 52ch;
	margin: 0;
}
.mav-project .mav-lede { margin-top: 22px; }
.mav-project .mav-hero .mav-actions { margin-top: 34px; }

.mav-project .mav-photo-col { position: relative; padding: 0; }
.mav-project .mav-photo { position: relative; }
.mav-project .mav-photo::before {
	content: "";
	position: absolute;
	left: -14px;
	top: -14px;
	width: 72px;
	height: 72px;
	border-left: 4px solid var(--mav-red);
	border-top: 4px solid var(--mav-red);
	z-index: 1;
}
.mav-project .mav-photo img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	aspect-ratio: 475 / 427;
	object-fit: cover;
	border: 1px solid rgba(255,255,255,0.18);
}
.mav-project .mav-photo .widget-image-caption,
.mav-project .mav-photo figcaption {
	text-align: left;
	font-family: var(--mav-display);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--mav-muted);
	margin-top: 12px;
	line-height: 1.4;
}

/* Facts strip */
.mav-project .mav-facts-band { background: var(--mav-panel); border-bottom: 1px solid var(--mav-line); padding: 0; }
.mav-project .mav-wrap.mav-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mav-project .mav-fact {
	padding: 28px 28px 30px;
	border-left: 1px solid var(--mav-line);
	display: flex;
	flex-direction: column;
	gap: 8px;
	justify-content: center;
	min-height: 128px;
}
.mav-project .mav-fact:first-child { border-left: 0; padding-left: 0; }
.mav-project .mav-fact-label .elementor-heading-title {
	font-family: var(--mav-display);
	text-transform: uppercase;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.3;
	letter-spacing: 0.16em;
	color: var(--mav-body);
}
.mav-project .mav-fact-value .elementor-heading-title {
	font-family: var(--mav-display);
	font-weight: 700;
	font-size: 34px;
	line-height: 1;
	color: var(--mav-ink);
	text-transform: uppercase;
	font-variant-numeric: tabular-nums;
}

/* Body */
.mav-project .mav-content { padding: 0; }
.mav-project .mav-content > .mav-wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 64px;
	padding-top: 84px;
	padding-bottom: 96px;
	align-items: start;
}
.mav-project .mav-main { display: block; padding: 0; min-width: 0; }

/* Post content: H2 + paragraphs (overview), H2 + bulleted list (scope cards) */
.mav-project .mav-overview h2 {
	font-size: clamp(32px, 3.6vw, 44px);
	margin: 14px 0 22px;
}
.mav-project .mav-overview h2:not(:first-child) { margin-top: 64px; }
/* Section label: any H3 in the post content shows as the small red label (e.g. "Overview", "What we did") */
.mav-project .mav-overview h3 {
	display: flex;
	align-items: center;
	margin: 64px 0 14px;
	color: var(--mav-red);
	font-family: var(--mav-display);
	text-transform: uppercase;
	font-weight: 600;
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0.18em;
	background: linear-gradient(var(--mav-red), var(--mav-red)) left center / 28px 2px no-repeat;
	padding-left: 40px;
}
.mav-project .mav-overview h3:first-child { margin-top: 0; }
.mav-project .mav-overview h3 + h2,
.mav-project .mav-overview h3 + h2:not(:first-child) { margin-top: 0; }
.mav-project .mav-overview,
.mav-project .mav-overview p {
	font-family: var(--mav-text);
	font-size: 19px;
	line-height: 1.65;
	color: #4A4F57;
}
.mav-project .mav-overview p { margin: 0 0 1em; max-width: 64ch; }
.mav-project .mav-overview ul {
	list-style: disc;
	margin: 0 0 1em;
	padding-left: 1.25em;
	max-width: 64ch;
}
.mav-project .mav-overview ul li {
	margin: 0 0 0.6em;
	font-size: 19px;
	line-height: 1.65;
	color: #4A4F57;
}
.mav-project .mav-overview ul li::marker { color: var(--mav-red); }
.mav-project .mav-overview ul li strong,
.mav-project .mav-overview ul li b {
	font-weight: 700;
	color: var(--mav-ink);
}

/* Sidebar card */
.mav-project .mav-card {
	position: sticky;
	top: 140px;
	background: var(--mav-panel);
	border-top: 3px solid var(--mav-red);
	padding: 28px;
	display: block;
}
.mav-project .mav-card-title .elementor-heading-title {
	font-family: var(--mav-display);
	text-transform: uppercase;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: var(--mav-ink);
	margin: 0 0 6px;
}
.mav-project .mav-summary { display: block; margin: 0 0 24px; padding: 0; }
.mav-project .mav-row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--mav-line);
}
.mav-project .mav-row > .elementor-widget { width: auto; }
.mav-project .mav-dt .elementor-heading-title,
.mav-project .mav-dd .elementor-heading-title {
	font-family: var(--mav-text);
	text-transform: none;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--mav-body);
}
.mav-project .mav-dd .elementor-heading-title { color: var(--mav-ink); font-weight: 600; text-align: right; }
.mav-project .mav-card .mav-stack { display: grid; gap: 12px; padding: 0; }
.mav-project .mav-card .mav-stack > .elementor-widget { margin: 0; width: 100%; }
.mav-project .mav-card .elementor-button-wrapper,
.mav-project .mav-card .elementor-button { width: 100%; }

/* Responsive */
@media (max-width: 1000px) {
	.mav-project .mav-hero > .mav-wrap { grid-template-columns: 1fr; gap: 48px; padding-top: 56px; padding-bottom: 64px; }
	.mav-project .mav-photo-col { max-width: 520px; margin-left: 14px; }
	.mav-project .mav-content > .mav-wrap { grid-template-columns: 1fr; gap: 56px; }
	.mav-project .mav-card { position: static; }
	.mav-project .mav-wrap.mav-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mav-project .mav-fact:nth-child(3) { border-left: 0; padding-left: 0; }
	.mav-project .mav-fact:nth-child(n+3) { border-top: 1px solid var(--mav-line); }
}
@media (max-width: 720px) {
	.mav-project .mav-fact { padding: 22px 16px; min-height: 0; }
	.mav-project .mav-fact-value .elementor-heading-title { font-size: 28px; }
}
@media (max-width: 420px) {
	.mav-project .mav-wrap.mav-facts { grid-template-columns: 1fr; }
	.mav-project .mav-fact { border-left: 0; padding-left: 0; }
	.mav-project .mav-fact + .mav-fact { border-top: 1px solid var(--mav-line); }
}
@media (prefers-reduced-motion: reduce) {
	.mav-project * { transition: none !important; }
}

/* Full-width layout on Project pages (overrides Astra's boxed container only for single projects) */
body.single-project.ast-separate-container { background-color: #fff; }
body.single-project .site-content > .ast-container { max-width: none; width: 100%; padding: 0; margin: 0; display: block; }
body.single-project #primary { margin: 0; padding: 0; width: 100%; }
body.single-project .elementor-location-single { padding: 0 !important; margin: 0; background: transparent; box-shadow: none; }
.e-con.mav-project { width: 100%; max-width: none; }/* End custom CSS */