:root {
	--mcs-page-gradient: linear-gradient(to right, #fdf6eb, #f8d7a3, #ffb84d, #ff9f4d, #ff6600, #ff4500, #f8d7a3, #fdf6eb);
	--mcs-panel-bg: linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0.88) 55%, rgba(255, 255, 255, 0.88) 100%);
	--mcs-heading: #2e1902;
	--mcs-accent: #fe8500;
	--mcs-text: #474747;
	--mcs-brown: #3a1f04;
	--mcs-line: rgba(46, 25, 2, 0.1);
	--mcs-line-strong: rgba(46, 25, 2, 0.16);
	--mcs-shadow: 0 18px 40px rgba(46, 25, 2, 0.06);
	--mcs-radius: 24px;
}

.content-area,
footer {
	background: var(--mcs-page-gradient);
}

.mcs-suburb-template,
.mcs-suburb-template *,
.mcs-suburb-template *::before,
.mcs-suburb-template *::after {
	box-sizing: border-box;
}

.mcs-suburb-template {
	width: 100vw;
	max-width: 100%;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 24px 0 40px;
	background: var(--mcs-page-gradient);
	overflow-x: clip;
}

.mcs-suburb-template .site-container {
	width: 100%;
	max-width: none;
	padding-inline: 30px;
}

.mcs-section {
	margin-bottom: 5px;
}

.mcs-panel {
	padding: 36px;
	border: 1px solid rgba(255, 255, 255, 0.85);
	border-radius: var(--mcs-radius);
	background: var(--mcs-panel-bg);
	box-shadow: var(--mcs-shadow);
}

.mcs-panel-content {
	width: min(100%, 1300px);
	margin-inline: auto;
	min-width: 0;
}

.mcs-panel-content--wide {
	width: min(100%, 1300px);
}

.mcs-service-hero {
	margin-top: -60px;
}

.mcs-hero-panel {
	padding-top: 130px;
	padding-bottom: 60px;
}

.mcs-suburb-template h1,
.mcs-suburb-template h2,
.mcs-suburb-template h3,
.mcs-suburb-template h4 {
	margin: 0;
	font-weight: 700;
	color: var(--mcs-heading);
	line-height: 1.12;
}

.mcs-suburb-template h1 {
	font-size: 45px;
	letter-spacing: -0.03em;
}

.mcs-suburb-template h2 {
	font-size: 34px;
	letter-spacing: -0.03em;
}

.mcs-suburb-template h3 {
	font-size: 20px;
}

.mcs-suburb-template p,
.mcs-suburb-template li,
.mcs-suburb-template summary,
.mcs-suburb-template label,
.mcs-suburb-template input,
.mcs-suburb-template select,
.mcs-suburb-template textarea {
	font-size: 14px;
	line-height: 1.7;
	color: var(--mcs-text);
}

.mcs-accent-text {
	color: var(--mcs-accent);
}

.mcs-kicker {
	margin: 0 0 12px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--mcs-heading);
}

.mcs-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	max-width: 100%;
	margin-bottom: 18px;
}

.mcs-chip {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 14px;
	border: 1px solid var(--mcs-line);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.7);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--mcs-heading);
}

.mcs-button-row,
.mcs-final-cta-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
}

.mcs-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	min-height: 68px;
	padding: 12px 26px;
	border-radius: 999px;
	border: 1px solid transparent;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	transition: background-color 0.22s ease, border-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease;
}

.mcs-button--accent {
	background: var(--mcs-accent);
	color: #ffffff;
	box-shadow: 0 10px 24px rgba(254, 133, 0, 0.18);
}

.mcs-button--accent:hover,
.mcs-button--accent:focus-visible {
	background: #f07c00;
	color: #ffffff;
}

.mcs-button--brown {
	background: var(--mcs-brown);
	color: #ffffff;
}

.mcs-button--brown:hover,
.mcs-button--brown:focus-visible {
	background: #2d1802;
	color: #ffffff;
}

.mcs-button--full {
	width: 100%;
}

.mcs-button--small {
	min-height: 50px;
	padding-inline: 18px;
	font-size: 13px;
}

.mcs-hero-panel .mcs-panel-content--wide,
.mcs-quote-panel .mcs-panel-content--wide {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 0.92fr);
	gap: 34px;
	align-items: center;
}

.mcs-hero-copy,
.mcs-hero-media,
.mcs-quote-showcase,
.mcs-quote-form-wrap,
.mcs-coverage-copy,
.mcs-map-card {
	min-width: 0;
}

.mcs-hero-copy h1 {
	max-width: 500px;
}

.mcs-hero-description {
	max-width: 60ch;
	margin: 18px 0 0;
}

.mcs-hero-media img,
.mcs-quote-image img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 24px;
	object-fit: cover;
}

.mcs-hero-media img {
	min-height: 520px;
	max-height: 590px;
}

.mcs-review-pill {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 22px;
	padding: 10px 18px;
	border: 1px solid var(--mcs-line);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.72);
	font-size: 12px;
}

.mcs-review-stars {
	letter-spacing: 0.12em;
	color: var(--mcs-accent);
}

.mcs-review-pill span:last-child {
	font-size: 11px;
	line-height: 1.25;
}

.mcs-logo-panel {
	padding-block: 22px;
	overflow: hidden;
}

.mcs-logo-panel .mcs-panel-content {
	width: 100%;
	max-width: none;
}

.mcs-marquee {
	position: relative;
	overflow: hidden;
	mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}

.mcs-marquee-track {
	display: flex;
	align-items: center;
	gap: 50px;
	width: max-content;
	animation: mcsMarquee 38s linear infinite;
}

.mcs-marquee:hover .mcs-marquee-track {
	animation-play-state: paused;
}

.mcs-marquee-item {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: var(--mcs-logo-width, 110px);
}

.mcs-marquee-item img {
	width: 100%;
	max-height: 48px;
	object-fit: contain;
	filter: saturate(0.98);
}

.mcs-split-heading {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: 32px;
	align-items: start;
	margin-bottom: 26px;
}

.mcs-heading-group--wide {
	max-width: 860px;
	margin-bottom: 26px;
}

.mcs-heading-group--narrow {
	max-width: 760px;
	margin: 0 auto 26px;
	text-align: center;
}

.mcs-heading-group p:last-child,
.mcs-split-heading > p {
	margin: 14px 0 0;
}

.mcs-card-grid {
	display: grid;
	gap: 18px;
}

.mcs-card-grid--six {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mcs-card-grid--four {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mcs-card-grid--three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mcs-card {
	padding: 28px 22px;
	border: 1px solid var(--mcs-line);
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0.72));
	box-shadow: 0 8px 18px rgba(46, 25, 2, 0.03);
	transition: border-color 0.22s ease, box-shadow 0.22s ease, background-color 0.22s ease;
}

.mcs-card:hover,
.mcs-card:focus-within {
	border-color: var(--mcs-line-strong);
	box-shadow: 0 12px 22px rgba(46, 25, 2, 0.05);
}

.mcs-icon-card,
.mcs-industry-card,
.mcs-help-card {
	text-align: center;
}

.mcs-compact-grid .mcs-card {
	padding: 24px 18px;
}

.mcs-compact-grid .mcs-icon-card h3 {
	font-size: 17px;
	line-height: 1.22;
}

.mcs-compact-grid .mcs-icon-card p {
	font-size: 13px;
	line-height: 1.55;
}

.mcs-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 14px;
	color: var(--mcs-accent);
}

.mcs-card-icon svg {
	width: 40px;
	height: 40px;
	stroke: currentColor;
	stroke-width: 1.6;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mcs-card p {
	margin: 10px 0 0;
}

.mcs-note {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-top: 28px;
}

.mcs-note::before {
	content: "";
	display: block;
	flex: 0 0 8px;
	align-self: stretch;
	border-radius: 99px;
	background: var(--mcs-accent);
}

.mcs-note p {
	margin: 0;
	font-weight: 600;
	color: var(--mcs-heading);
}

.mcs-service-card-grid {
	align-items: stretch;
}

.mcs-service-card {
	padding: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.mcs-service-card__media {
	display: block;
	aspect-ratio: 1.56 / 1;
	overflow: hidden;
}

.mcs-service-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mcs-service-card__body {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 18px 20px;
}

.mcs-service-card__body h3 {
	font-size: 18px;
	line-height: 1.25;
}

.mcs-service-card__body h3 a,
.mcs-service-card__link {
	text-decoration: none;
}

.mcs-service-card__body h3 a {
	color: var(--mcs-heading);
}

.mcs-service-card__link {
	flex: 0 0 auto;
	font-size: 13px;
	font-weight: 700;
	color: var(--mcs-accent);
}

.mcs-service-card__body h3 a:hover,
.mcs-service-card__body h3 a:focus-visible,
.mcs-service-card__link:hover,
.mcs-service-card__link:focus-visible {
	color: var(--mcs-accent);
}

.mcs-help-card {
	grid-column: 1 / -1;
	width: 100%;
	margin-top: 24px;
	padding: 0;
	border-radius: var(--mcs-radius, 24px);
	border: 1px solid var(--mcs-line);
	background: linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0.92) 100%);
	box-shadow: 0 10px 24px rgba(46, 25, 2, 0.04);
	overflow: hidden;
}

.mcs-help-card__body {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	width: 100%;
	padding: 24px 34px;
	text-align: left;
}

.mcs-help-card__info {
	flex: 1 1 auto;
}

.mcs-help-card h3 {
	margin: 0;
	font-size: 22px;
	font-weight: 700;
	color: var(--mcs-heading);
	line-height: 1.25;
}

.mcs-help-card h3 span,
.mcs-help-card__sub {
	display: inline-block;
	margin-left: 10px;
	font-size: 16px;
	font-weight: 500;
	color: var(--mcs-text);
}

.mcs-help-card__actions {
	display: flex;
	align-items: center;
	gap: 14px;
	flex: 0 0 auto;
}

.mcs-help-card__actions .mcs-button {
	white-space: nowrap;
}

.mcs-quote-divider--inline {
	margin: 0;
	padding: 0 4px;
}

.mcs-quote-divider--inline::before {
	display: none;
}

.mcs-quote-divider--inline span {
	font-size: 13px;
	font-weight: 700;
	color: var(--mcs-text);
	opacity: 0.75;
}

@media (max-width: 900px) {
	.mcs-help-card__body {
		flex-direction: column;
		text-align: center;
		padding: 24px 20px;
		gap: 18px;
	}

	.mcs-help-card h3 span,
	.mcs-help-card__sub {
		display: block;
		margin-left: 0;
		margin-top: 6px;
	}

	.mcs-help-card__actions {
		flex-direction: column;
		width: 100%;
		gap: 10px;
	}

	.mcs-help-card__actions .mcs-button {
		width: 100%;
	}

	.mcs-quote-divider--inline {
		margin: 2px 0;
	}
}

.mcs-review-embed {
	margin-top: 8px;
}

.mcs-review-fallback {
	text-align: center;
}

.mcs-coverage-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(380px, 0.92fr);
	gap: 34px;
	align-items: center;
}

.mcs-coverage-copy > p:last-of-type {
	margin-top: 18px;
}

.mcs-coverage-columns {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px 26px;
	margin-top: 18px;
}

.mcs-area-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcs-area-list li {
	position: relative;
	padding-left: 18px;
	margin-top: 10px;
}

.mcs-area-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--mcs-accent);
	transform: translateY(-50%);
}

.mcs-map-card {
	padding: 0;
	border: 1px solid var(--mcs-line);
	border-radius: 24px;
	overflow: hidden;
	background: #ffffff;
	box-shadow: 0 8px 18px rgba(46, 25, 2, 0.03);
}

.mcs-map-card iframe {
	display: block;
	width: 100%;
	min-height: 540px;
	border: 0;
}

.mcs-faq-list {
	display: grid;
	gap: 16px;
}

.mcs-faq-item {
	padding: 0 22px;
	border: 1px solid var(--mcs-line);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0 8px 18px rgba(46, 25, 2, 0.03);
}

.mcs-faq-item summary {
	position: relative;
	padding: 20px 36px 20px 0;
	font-weight: 700;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
	color: var(--mcs-heading);
}

.mcs-faq-item summary::-webkit-details-marker {
	display: none;
}

.mcs-faq-item summary::after {
	content: "+";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 24px;
	line-height: 1;
	color: var(--mcs-accent);
}

.mcs-faq-item[open] summary::after {
	content: "−";
}

.mcs-faq-item p {
	margin: 0 0 20px;
}

.mcs-quote-panel {
	align-items: stretch;
	overflow: hidden;
}

.mcs-quote-showcase {
	display: grid;
	grid-template-rows: auto auto;
	gap: 8px;
	position: relative;
	padding-top: 26px;
}

.mcs-quote-copy {
	padding: 54px 44px 48px;
	border-radius: 28px 28px 0 0;
	background: var(--mcs-brown);
}

.mcs-quote-copy .mcs-kicker {
	color: rgba(255, 255, 255, 0.84);
}

.mcs-quote-copy h2,
.mcs-quote-copy p {
	color: #ffffff;
}

.mcs-quote-copy p {
	margin: 18px 0 0;
	max-width: 38ch;
}

.mcs-quote-image img {
	height: 320px;
	max-height: 320px;
	min-height: 0;
	border-radius: 0 0 28px 28px;
}

.mcs-quote-form-wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 18px 0 10px;
	position: relative;
	z-index: 1;
}

.mcs-quote-form-intro p {
	margin: 0 0 18px;
	max-width: 38ch;
	color: var(--mcs-heading);
}

.mcs-quote-form {
	padding: 30px;
	border: 1px solid rgba(254, 133, 0, 0.22);
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 255, 255, 0.92));
	box-shadow: 0 18px 36px rgba(46, 25, 2, 0.08);
}

.mcs-quote-form .ff-t-container {
	gap: 14px;
}

.mcs-quote-form .ff-el-input--label label,
.mcs-quote-form .ff-el-input--label.ff-el-is-required label {
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 700;
	color: var(--mcs-heading);
}

.mcs-quote-form .ff-el-form-control,
.mcs-quote-form input[type="text"],
.mcs-quote-form input[type="email"],
.mcs-quote-form input[type="tel"],
.mcs-quote-form select,
.mcs-quote-form textarea {
	min-height: 56px;
	padding: 14px 18px;
	border: 1px solid rgba(254, 133, 0, 0.28) !important;
	border-radius: 18px;
	background: #ffffff;
	box-shadow: none;
	color: var(--mcs-heading);
}

.mcs-quote-form .ff-el-form-control:focus,
.mcs-quote-form input[type="text"]:focus,
.mcs-quote-form input[type="email"]:focus,
.mcs-quote-form input[type="tel"]:focus,
.mcs-quote-form select:focus,
.mcs-quote-form textarea:focus {
	border-color: var(--mcs-accent) !important;
	box-shadow: 0 0 0 3px rgba(254, 133, 0, 0.12) !important;
	outline: none;
}

.mcs-quote-form textarea {
	min-height: 120px;
}

.mcs-quote-form .ff-btn-submit:not(.ff_btn_no_style),
.mcs-quote-form .ff-btn.ff-btn-submit,
.mcs-quote-form button.ff-btn-submit {
	width: 100%;
	min-height: 60px;
	border-radius: 999px;
	border: 1px solid transparent !important;
	background: var(--mcs-accent) !important;
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(254, 133, 0, 0.18);
}

.mcs-quote-form .ff-btn-submit:not(.ff_btn_no_style):hover,
.mcs-quote-form .ff-btn-submit:not(.ff_btn_no_style):focus-visible,
.mcs-quote-form .ff-btn.ff-btn-submit:hover,
.mcs-quote-form .ff-btn.ff-btn-submit:focus-visible,
.mcs-quote-form button.ff-btn-submit:hover,
.mcs-quote-form button.ff-btn-submit:focus-visible {
	background: #f07c00 !important;
	color: #ffffff !important;
}

.mcs-quote-divider {
	position: relative;
	margin: 18px 0 20px;
	text-align: center;
}

.mcs-quote-divider::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	border-top: 1px solid var(--mcs-line);
}

.mcs-quote-divider span {
	position: relative;
	display: inline-block;
	padding: 0 12px;
	background: transparent;
	font-size: 14px;
	font-weight: 700;
	color: var(--mcs-text);
}

.mcs-final-cta {
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.mcs-final-cta-buttons {
	justify-content: center;
}

[data-mcs-reveal] {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity 0.55s ease, transform 0.55s ease;
}

[data-mcs-reveal].is-visible {
	opacity: 1;
	transform: translateY(0);
}

[data-mcs-reveal="hero"] {
	transition-delay: 0.08s;
}

@keyframes mcsMarquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(calc(-50% - 25px));
	}
}

@media (max-width: 1360px) {
	.mcs-card-grid--four,
	.mcs-card-grid--three {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 1180px) {
	.mcs-hero-panel .mcs-panel-content--wide,
	.mcs-quote-panel .mcs-panel-content--wide,
	.mcs-split-heading,
	.mcs-coverage-grid {
		grid-template-columns: 1fr;
	}

	.mcs-service-hero {
		margin-top: -30px;
	}

	.mcs-map-card iframe {
		min-height: 420px;
	}
}

@media (max-width: 1120px) {
	.mcs-card-grid--four {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mcs-hero-media img {
		min-height: 420px;
	}

	.mcs-quote-copy {
		padding: 40px 34px 36px;
	}

	.mcs-coverage-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.mcs-suburb-template {
		width: 100%;
		padding: 16px 0 28px;
		margin-left: 0;
		margin-right: 0;
	}

	.mcs-suburb-template .site-container {
		padding-inline: 10px;
		overflow-x: clip;
	}

	.mcs-panel {
		padding: 22px 20px;
		overflow-x: clip;
	}

	.mcs-service-hero {
		margin-top: -18px;
	}

	.mcs-hero-panel {
		padding-top: 52px;
		padding-bottom: 20px;
	}

	.mcs-suburb-template h1 {
		font-size: 32px;
	}

	.mcs-suburb-template h2 {
		font-size: 25px;
	}

	.mcs-suburb-template h3 {
		font-size: 18px;
	}

	.mcs-suburb-template p,
	.mcs-suburb-template li,
	.mcs-suburb-template summary,
	.mcs-suburb-template label,
	.mcs-button {
		font-size: 13px;
	}

	.mcs-suburb-template input,
	.mcs-suburb-template select,
	.mcs-suburb-template textarea,
	.mcs-quote-form .ff-el-form-control,
	.mcs-quote-form input[type="text"],
	.mcs-quote-form input[type="email"],
	.mcs-quote-form input[type="tel"],
	.mcs-quote-form select,
	.mcs-quote-form textarea {
		font-size: 16px !important;
	}

	.mcs-chip-row {
		flex-wrap: nowrap;
		gap: 6px;
		margin-inline: -2px;
		padding-inline: 2px;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scrollbar-width: none;
	}

	.mcs-chip-row::-webkit-scrollbar,
	.mcs-review-pill::-webkit-scrollbar {
		display: none;
	}

	.mcs-chip {
		min-height: 28px;
		padding: 0 9px;
		font-size: 10px;
		letter-spacing: 0.01em;
		white-space: nowrap;
	}

	.mcs-button-row,
	.mcs-final-cta-buttons {
		flex-direction: column;
	}

	.mcs-button {
		width: 100%;
		min-width: 0;
		padding-inline: 18px;
	}

	.mcs-review-pill {
		flex-wrap: nowrap;
		gap: 8px;
		padding: 8px 12px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.mcs-review-stars {
		flex: 0 0 auto;
		font-size: 11px;
		letter-spacing: 0.06em;
	}

	.mcs-review-pill span:last-child {
		flex: 0 0 auto;
		font-size: 10px;
		line-height: 1.2;
	}

	.mcs-marquee-track {
		gap: 20px;
	}

	.mcs-marquee-item {
		width: max(72px, calc(var(--mcs-logo-width, 110px) * 0.72));
	}

	.mcs-card-grid--six,
	.mcs-card-grid--four,
	.mcs-card-grid--three,
	.mcs-coverage-columns {
		grid-template-columns: 1fr;
	}

	.mcs-hero-media img {
		min-height: 280px;
	}

	.mcs-service-card__body {
		flex-direction: column;
		align-items: flex-start;
		padding: 16px;
	}

	.mcs-help-card__body {
		padding: 22px 18px;
	}

	.mcs-map-card iframe {
		min-height: 280px;
	}

	.mcs-quote-copy {
		padding: 26px 22px;
	}

	.mcs-quote-image img {
		height: 220px;
		max-height: 220px;
		min-height: 0;
	}

	.mcs-quote-form {
		padding: 20px 16px;
	}

	.mcs-faq-item {
		padding-inline: 16px;
	}
}

.mcs-project-gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:30px; }
.mcs-project-gallery-card { margin:0; background:#fff; border:1px solid rgba(26,32,44,.09); box-shadow:0 12px 28px rgba(26,32,44,.08); border-radius:12px; overflow:hidden; }
.mcs-project-gallery-link { display:block; color:inherit; text-decoration:none; }
.mcs-project-gallery-link:focus-visible { outline:3px solid var(--mcs-accent); outline-offset:-3px; }
.mcs-project-gallery-card img { display:block; width:100%; height:260px; object-fit:cover; }
.mcs-project-gallery-card figcaption { padding:14px 16px 16px; font-size:14px; line-height:1.5; color:var(--global-palette5); }
@media (max-width:1024px) { .mcs-project-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) { .mcs-project-gallery-grid { grid-template-columns:1fr; } .mcs-project-gallery-card img { height:300px; } }

.mcs-lightbox { width:min(92vw,1200px); max-width:none; max-height:90vh; padding:18px; border:0; border-radius:18px; background:#111820; color:#fff; box-shadow:0 24px 80px rgba(0,0,0,.45); }
.mcs-lightbox::backdrop { background:rgba(8,12,18,.82); }
html.mcs-lightbox-open { overflow:hidden; }
.mcs-lightbox__layout { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px; }
.mcs-lightbox__figure { min-width:0; margin:0; text-align:center; }
.mcs-lightbox__image { display:block; width:auto; max-width:100%; height:auto; max-height:76vh; margin:0 auto; object-fit:contain; }
.mcs-lightbox__caption { margin:12px 0 0; color:#fff; font-size:14px; line-height:1.45; }
.mcs-lightbox__close, .mcs-lightbox__nav { display:inline-flex; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.42); border-radius:999px; background:rgba(0,0,0,.35); color:#fff; cursor:pointer; }
.mcs-lightbox__close { position:absolute; top:10px; right:10px; width:40px; height:40px; font-size:25px; line-height:1; }
.mcs-lightbox__nav { width:44px; height:44px; font-size:30px; line-height:1; }
.mcs-lightbox__close:hover, .mcs-lightbox__close:focus-visible, .mcs-lightbox__nav:hover, .mcs-lightbox__nav:focus-visible { background:rgba(255,255,255,.18); }
@media (max-width:767px) { .mcs-lightbox { width:calc(100vw - 24px); padding:38px 10px 12px; } .mcs-lightbox__layout { gap:6px; } .mcs-lightbox__nav { width:36px; height:36px; font-size:24px; } .mcs-lightbox__image { max-height:72vh; } }
