body {
	overflow-x: hidden;
}

header {
	position: fixed;
	z-index: 100;
	width: 100%;
	background-color: transparent;
	transition: background-color 0.6s ease-in-out;
}

header.solid,
.post-template-default header,
.jobs-template-default header,
.project-template-default header {
	background-color: var(--wp--preset--color--contrast);
}

.post-template-default header,
.jobs-template-default header,
.project-template-default header {
	position: relative;
}

.skip-link {
	display: none !important;
}

.wp-block-button__link.wp-element-button:not(.wp-block-cover .wp-block-button__link:not(:hover),
	.highlights .wp-block-button__link, .light .wp-block-button__link):not(:hover) {
	color: var(--wp--preset--color--accent-1);
}

.wp-block-buttons.blue .wp-block-button__link.wp-element-button:not(.wp-block-cover .wp-block-button__link:not(:hover),
	.highlights .wp-block-button__link,
	.light .wp-block-button__link):not(:hover) {
	color: var(--wp--preset--color--accent-5);
}

.grey .wp-block-button.is-style-outline a:not(:hover) {
	color: var(--wp--preset--color--contrast) !important;
}


.wp-block-buttons.blue .wp-block-button.is-style-outline a:before {
	background: var(--wp--preset--color--accent-5);
}


.dark .wp-block-button__link.wp-element-button:not(.wp-block-cover .wp-block-button__link:not(:hover),
	.dark .highlights .wp-block-button__link, .light .wp-block-button__link):not(:hover) {
	color: var(--wp--preset--color--contrast);
}

.service-portfolio .wp-block-button__link,
.project-portfolio .details a,
.wp-block-button.is-style-outline a,
.wp-block-button.is-style-fill a,
.news-media a.wp-block-read-more,
.service-portfolio .wp-block-cover a.wp-block-read-more,
.frm_button_submit.frm_final_submit {
	position: relative;
	border: none;
	backface-visibility: hidden;
	text-transform: uppercase;
}

.service-portfolio .wp-block-cover a.wp-block-read-more {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.wp-block-button.is-style-fill a {
	background-color: transparent !important;
}

.stk-block-content .wp-block-button.is-style-outline a:not(:hover) {
	color: var(--wp--preset--color--contrast) !important;
}

.stk-block-content .wp-block-button.is-style-outline a:before {
	background: var(--wp--preset--color--contrast);
}

.frm_button_submit.frm_final_submit {
	background: transparent !important;
	border: none !important;
	color: var(--wp--preset--color--accent-1) !important;
	font-weight: 500 !important;
	letter-spacing: 1px;
	transition: all 0.3s ease-in-out;
}

.frm_button_submit.frm_final_submit:hover {
	transition: all 0.3s ease-in-out;
	color: var(--wp--preset--color--base) !important;
	transform: translateY(-3px);
}

.service-portfolio .wp-block-button.is-style-outline a:before,
.service-portfolio .wp-block-cover a.wp-block-read-more::before,
.project-portfolio .details a:before,
.wp-block-button.is-style-outline a:before,
.wp-block-button.is-style-fill a:before,
.news-media a.wp-block-read-more:before,
.frm_button_submit.frm_final_submit::after {
	transition: all 0.3s ease-in-out;
	content: "";
	position: absolute;
	inset: 0;
	background: var(--wp--preset--color--base);
	backface-visibility: hidden;
	clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%, 0 0, 1px 1px, 1px calc(100% - 1px), calc(100% - 1px) calc(100% - 1px), calc(100% - 1px) calc(12px + 0.41px), calc(100% - 12px - 0.41px) 1px, 1px 1px);
}

.wp-block-button.is-style-outline a:before,
.news-media a.wp-block-read-more:before,
.frm_button_submit.frm_final_submit::after {
	background: var(--wp--preset--color--accent-1);
}

.wp-block-button.dark.is-style-outline a:before {
	background: var(--wp--preset--color--contrast);
}

.wp-block-cover .wp-block-button.is-style-outline a:before,
.service-portfolio .wp-block-cover a.wp-block-read-more:before,
.has-accent-1-background-color .wp-block-button.is-style-outline a:before,
.has-accent-1-background-color .wp-block-button.is-style-outline a:before,
.featured-news-block li .wp-block-group a.wp-block-read-more:before {
	background: var(--wp--preset--color--base);
	transition: all 0.3s ease-in-out;
}

.service-portfolio .wp-block-button__link:hover:before,
.project-portfolio .details a:hover::before,
.wp-block-button.is-style-outline a:hover:before,
.solid.wp-block-button.is-style-outline a::before,
.wp-block-button.is-style-fill a:hover:before,
.wp-block-button.is-style-fill a:before,
.news-media a.wp-block-read-more:hover:before,
.featured-news-block li .wp-block-group a.wp-block-read-more:hover:before,
.service-portfolio .wp-block-cover a.wp-block-read-more:hover:before,
.frm_button_submit.frm_final_submit:hover::after {
	background: var(--wp--preset--color--accent-1);
	clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
	z-index: -1;
}

.news-media a.wp-block-read-more:hover {
	color: var(--wp--preset--color--base) !important;
}

.wp-block-button.is-style-fill a:before {
	background: var(--wp--preset--color--contrast);
}

.has-accent-5-background-color .wp-block-button.is-style-outline a:before,
.grey .wp-block-button.is-style-outline a:before {
	background: var(--wp--preset--color--contrast);
	transition: all 0.3s ease-in-out;
}

.has-accent-1-background-color .wp-block-button.is-style-outline a {
	color: var(--wp--preset--color--base);
}

.has-accent-1-background-color .wp-block-button.is-style-outline a:hover,
.has-accent-5-background-color .wp-block-button.is-style-outline a:hover,
.has-accent-3-background-color .wp-block-button.is-style-outline a:hover,
.has-accent-6-background-color .light .wp-block-button.is-style-outline a:hover {
	color: var(--wp--preset--color--accent-1);
}

.has-accent-5-background-color .wp-block-button.is-style-outline.hover-blue-text a:hover {
	color: var(--wp--preset--color--accent-3) !important;
}

.has-accent-1-background-color .wp-block-button.is-style-outline a:hover:before,
.has-accent-5-background-color .wp-block-button.is-style-outline a:hover:before {
	background: var(--wp--preset--color--base);
	transition: all 0.3s ease-in-out;
}

.has-accent-5-background-color .light .wp-block-button.is-style-outline a:before,
.has-accent-3-background-color .light .wp-block-button.is-style-outline a:before,
.has-accent-6-background-color .light .wp-block-button.is-style-outline a:before {
	background: var(--wp--preset--color--base);
}

.has-accent-5-background-color .light .wp-block-button.is-style-outline a:not(:hover),
.has-accent-3-background-color .light .wp-block-button.is-style-outline a:not(:hover),
.has-accent-6-background-color .light .wp-block-button.is-style-outline a:not(:hover) {
	color: var(--wp--preset--color--base);
}

.wp-block-button.is-style-outline a {
	z-index: 10;
}

.wp-block-button__link,
.project-portfolio .details a,
.featured-news-block li .wp-block-group a {
	transition: all 0.3s ease-in-out;
}

.wp-block-button__link:hover,
.project-portfolio .details a:hover,
.featured-news-block li .wp-block-group a:hover {
	transition: all 0.3s ease-in-out;
	transform: translateY(-4px) !important;
}

.wp-block-button.is-style-outline a:hover {
	color: var(--wp--preset--color--base);
	background-color: transparent;
}

.service-portfolio .wp-block-cover span.has-black-background-color {
	transition: all 0.3s ease;
}

.service-portfolio .wp-block-cover:hover span.has-black-background-color {
	opacity: 0.8;
}

.service-portfolio .wp-block-cover .wp-block-cover__inner-container {
	max-height: var(--wp--preset--font-size--large);
	transition: max-height 0.8s ease;
}

.service-portfolio .wp-block-cover:nth-child(8) .wp-block-cover__inner-container {
	max-height: 3rem;
}

.service-portfolio .wp-block-cover:hover .wp-block-cover__inner-container {
	max-height: 300px;
}

.service-portfolio .wp-block-cover p:nth-child(2),
.service-portfolio .wp-block-cover div.intro,
.service-portfolio .wp-block-cover .wp-block-buttons,
.service-portfolio .wp-block-cover a.wp-block-read-more {
	transform: translateY(200px);
	transition: transform 0.6s ease;
}

.service-portfolio .wp-block-cover:hover p:nth-child(2),
.service-portfolio .wp-block-cover:hover div.intro {
	position: unset;
	transform: translateY(0);
	transition: transform 0.6s ease;
}

.service-portfolio .wp-block-cover:hover .wp-block-buttons,
.service-portfolio .wp-block-cover:hover .wp-block-read-more {
	position: unset;
	transform: translateY(0);
	transition: transform 0.6s ease 0.2s;
}

.service-portfolio .title-only .wp-block-cover:hover .wp-block-buttons {
	transition: transform 0.6s ease 0s;
}

.category-filter {
	list-style: none;
	padding: 0;
}

.category-filter a {
	text-decoration: none;
	display: inline-block;
	padding: 4px 10px;
	border: 1px solid var(--wp--preset--color--contrast);
	text-transform: uppercase;
}

.filters-column .category-filter a {
	padding: 4px 6px;
}

.category-filter a.active,
.category-filter a:hover {
	background-color: var(--wp--preset--color--contrast);
	color: #fff;
}

.line-pattern {
	position: relative;
	width: 100%;
}

.line-pattern::before {
	content: "";
	width: 50%;
	height: 16px;
	background-image: url(/wp-content/uploads/2025/01/bkg-pattern-red.svg);
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	bottom: 0;
	right: 0;
}

.line-pattern.white::before {
	background-image: url(/wp-content/uploads/2025/02/bkg-pattern-white.svg);
}

.line-pattern.blue::before {
	background-image: url(/wp-content/uploads/2025/01/bkg-pattern-blue.svg);
	bottom: auto;
	right: auto;
	top: 0;
	left: 0;
}

.line-pattern.left::before {
	bottom: 0;
	right: auto;
	top: auto;
	left: 0;
}

.line-pattern.top::before {
	bottom: auto;
	right: 0;
	top: 0;
	left: auto;
}

.line-pattern.dark-red::before {
	background-image: url(/wp-content/uploads/2025/01/line-pattern-dark-red.svg);
}

.line-pattern+div>.line-pattern::before {
	display: none;
}

.project-portfolio li {
	overflow: hidden;
}

.project-portfolio li .work-block .details h3,
.project-portfolio li .work-block .details .is-meta-field,
.project-portfolio li .work-block .details a {
	opacity: 0;
	transform: translateY(200px);
	transition: all 0.4s ease;
}

.project-portfolio li .work-block:hover .details h3,
.project-portfolio li .work-block:hover .details .is-meta-field,
.project-portfolio li .work-block:hover .details a {
	opacity: 1;
	transform: translateY(0);
}

.project-portfolio li .work-block:hover .details a {
	transition: all 0.4s ease 0.1s
}

.project-portfolio li .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.project-portfolio li .logo {
	width: 100%;
	text-align: right;
	padding-right: 2rem;
	transform: translateY(-1.25rem);
}

.project-portfolio li .logo img {
	max-width: 124px;
	width: 100%;
	height: auto;
	margin-bottom: 1rem;
}

.arrow-container {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
}

.arrow {
	width: 45px;
	height: 45px;
	position: absolute;
	top: 2rem;
	margin: auto;
	transition: ease-in;
	animation: down 1.5s infinite;
	-webkit-animation: bounce 1.5s infinite;
	opacity: 0;
}

.arrow::before {
	content: "";
	position: absolute;
	top: 11px;
	left: 13px;
	width: 18px;
	height: 18px;
	border-left: 2px solid var(--wp--preset--color--accent-3);
	border-bottom: 2px solid var(--wp--preset--color--accent-3);
	transform: rotate(-45deg);
}

@keyframes bounce {
	0% {
		transform: translate(0);
	}

	20% {
		transform: translateY(15px);
	}

	40% {
		transform: translate(0);
	}
}

@-webkit-keyframes bounce {
	0% {
		transform: translate(0);
	}

	20% {
		transform: translateY(15px);
	}

	40% {
		transform: translate(0);
	}
}

.arrow.fade-in {
	opacity: 1;
	transition: 1s all ease-in;
}

.arrow.fade-out {
	opacity: 0;
	transition: 0.5s all ease-out;
}


ul.wp-block-navigation__submenu-container li a:hover {
	color: var(--wp--preset--color--accent-1) !important;
	text-decoration: none;
}

.stk-block-carousel__slider img {
	pointer-events: none !important;
}

ul.wp-block-list>li {
	list-style-type: none;
	padding-left: 0.45rem;
}

ul.wp-block-list {
	list-style-type: none;
	padding-left: 0;
	margin-left: 0;
}

.has-accent-5-background-color ul.wp-block-list>li::before {
	color: var(--wp--preset--color--accent-3);
}

.has-accent-3-background-color ul.wp-block-list>li::before {
	color: var(--wp--preset--color--accent-6);
}

.has-custom-navy-background-color ul.wp-block-list>li::before {
	color: var(--wp--preset--color--accent-6);
}

ul.floating-list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

ul.floating-list>li::before {
	display: none !important;
}

ul.floating-list li {
	list-style: none;
	padding: 0.25rem 0.65rem !important;
	background-color: var(--wp--preset--color--accent-3);
	color: var(--wp--preset--color--base);
	margin: 0;
}

ul.floating-list.links {
	gap: 1rem 0.5rem;
}

ul.floating-list.links li {
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	padding: 0 !important;
	margin: 0 !important;
}

ul.floating-list.links li a {
	text-decoration: none;
	border: 1px solid var(--wp--preset--color--contrast);
	padding: 0.25rem 0.65rem;
	transition: 0.5s all ease-out;
}

ul.floating-list.links li a:hover {
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--contrast);
	transition: 0.5s all ease-out;
}

h2.wp-block-heading.is-style-default {
	position: relative;
}

h2.wp-block-heading.is-style-default::after {
	content: '/';
	color: var(--wp--preset--color--accent-5);
	font-size: inherit;
	margin-left: 1.4rem;
}

h2.wp-block-heading.is-style-default.blue::after {
	color: var(--wp--preset--color--accent-5) !important;
}

h2.wp-block-heading.is-style-default.red::after {
	color: var(--wp--preset--color--accent-1) !important;
}

h2.wp-block-heading.is-style-default.navy::after {
	color: var(--wp--preset--color--accent-3) !important;
}

.has-accent-5-background-color h2.wp-block-heading.is-style-default::after,
.has-accent-3-background-color h2.wp-block-heading.is-style-default::after,
.has-custom-navy-background-color h2.wp-block-heading.is-style-default::after {
	color: var(--wp--preset--color--base);
}

h2.has-base-color.wp-block-heading.is-style-default::after {
	color: var(--wp--preset--color--base);
}

.profiles .stk-block-carousel__buttons {
	margin-top: -80px;
	margin-right: -30px;
}

.profiles p+p {
	margin-block-start: 0.5rem !important;
}

.featured-news-block li {
	position: relative;
}

.featured-news-block li .wp-block-group {
	position: absolute;
	bottom: 2rem;
	left: 2rem;
	z-index: 1;
}

.featured-news-block li .wp-block-group .wp-block-post-excerpt__excerpt {
	color: var(--wp--preset--color--base);
}

.quick-news-block h3 {
	position: relative;
}

.quick-news-block h3::after {
	content: '>';
	content: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='12' viewBox='0 0 7 12' fill='none'%3E%3Cpath d='M0.479492 0.520508L5.95899 6L0.479492 11.4795' stroke='%237D8798' stroke-linejoin='round'/%3E%3C/svg%3E");
	margin-left: 0.6rem;
	/* Adjust spacing as needed */
}

.quick-news-block ul li+li {
	padding-top: 2rem;
	border-top: 1px solid var(--wp--preset--color--accent-2);
}

.cross-blue,
.cross-red {
	position: relative;
	width: 100% !important;
}

.cross-blue::after,
.cross-red::after {
	content: "";
	display: block;
	width: 16.25rem;
	height: 16.25rem;
	position: absolute;
	z-index: 1;
	left: 0;
	bottom: 0;
	background-image: url(/wp-content/uploads/2025/01/img-blue-cross.svg);
	background-size: cover;
}

.cross-red::after {
	background-image: url(/wp-content/uploads/2025/01/img-red-cross.svg);
}

.cross-blue img,
.cross-red img {
	padding: 0 0 4rem 4rem;
}

.cross-red.flip img {
	padding: 0 4rem 4rem 0;
}

.cross-red.flip::after {
	left: auto;
	right: 0;
}

.stk-block-content .cover img {
	width: 100%;
}

.inner-banner {
	height: 52vh;
	min-height: 500px;
	background-position: center bottom;
	position: relative;
	align-items: center;
	display: flex;
}

.inner-banner::before {
	content: "";
	height: 100%;
	width: 100%;
	display: block;
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0) 62%, rgb(0, 0, 0) 79%, rgb(0, 0, 0) 100%);
	opacity: 0.6;
	z-index: 0;
}

.inner-banner.with-text {
	height: 75vh;
	min-height: 704px;
}

.inner-banner.with-text::before {
	background-color: #000;
}

.inner-banner.with-text .wp-block-group {
	max-width: var(--wp--style--global--content-size);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}


@keyframes slide {
	from {
		transform: translateX(0);

	}

	to {
		transform: translateX(-100%);

	}
}

.logos {
	overflow: hidden;
	white-space: nowrap;
	position: relative;
	display: block !important;
}

.logos:hover .logos-slide {
	animation-play-state: paused;
}

.logos-slide {
	display: inline-block !important;
	max-width: none !important;
	vertical-align: middle;
}

.logos-slide.ready {
	animation: 45s slide infinite linear;
}

.logos-slide figure {
	display: inline-block !important;
	margin: 0 2rem;
	width: auto !important;
	vertical-align: middle;
}

.logos-slide figure img {
	max-height: 36px;
	width: auto;
	max-width: none;
	vertical-align: middle;
}

.logos-slide.auto figure img {
	max-height: none;
}

.logos-slide figure.limit-height img {
	max-height: 24px;
}

.points+.our-businesses,
.points+.our-businesses+.logos {
	background-color: var(--wp--preset--color--base) !important;
}

.project-portfolio ul.sectors {
	flex-direction: column;
}

.project-portfolio ul.sectors ul {
	padding: 0;
	display: flex;
	margin-top: 0.6rem;
	gap: 0.8rem
}

.project-portfolio ul.sectors>li>a {
	border: none !important;
	padding: 0 !important;
	pointer-events: none !important;
	font-weight: 500;
}

.project-filters.mini .category-filter a {
	font-size: 0.85rem;
}

.object-fit-img .wp-block-image img {
	margin-bottom: var(--wp--preset--spacing--80);
}

.entry-content .carousel {
	overflow: hidden;
}

.entry-content .carousel-inner {
	width: 100%;
	animation: scroll 60s linear infinite;
	/* Adjust animation duration as needed */
}

.entry-content .carousel-inner figure {
	flex: 0 0 auto;
	/* Prevent flex items from shrinking or growing */
}

/* Keyframes for scrolling right to left */
@keyframes scroll {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(calc(-1 * var(--translate-distance)));
		/* Move inner container to the left by 50% */
	}
}

/* Reverse carousel (left to right) */
.entry-content .carousel.reverse .carousel-inner {
	animation: scroll-reverse 60s linear infinite;
}

@keyframes scroll-reverse {
	0% {
		transform: translateX(calc(-1 * var(--translate-distance)));
		/* Start from the left */
	}

	100% {
		transform: translateX(0%);
		/* Move inner container to the right */
	}
}

body.page-template-default header {
	background-color: var(--wp--preset--color--contrast);
}

body.page-template-default .entry-content {
	margin-top: 0;
	padding-top: 86px;
}

.main-projects-grid a.wp-block-read-more {
	font-size: 1rem !important;
}

.main-projects-grid .logo {
	display: none;
}

.no-projects {
	display: none;
}

.no-projects.show {
	display: block;
}

.limit-intros p {
	max-width: 285px;
}

.shadow-text {
	position: relative;
}

.shadow-text::after {
	content: "";
	font-size: clamp(124px, 12vw, 14.688rem);
	line-height: clamp(124px, 12vw, 14.688rem);
	font-family: var(--wp--preset--font-family--instrument-sans);
	font-weight: 700;
	color: rgba(0, 0, 0, 0.04);
	position: absolute;
	bottom: -1.8vw;
	right: 2rem;
}

.shadow-text.brc::after {
	content: "BRC";
}

.shadow-text.browns::after {
	content: "BROWNS";
}

.shadow-text.cma::after {
	content: "CMA";
}

.shadow-text.recycling::after {
	content: "RECYCLING";
}

.shadow-text.rent::after {
	content: "RENT";
}

.shadow-text.eph::after {
	content: "EPH";
}

.shadow-text.grange::after {
	content: "GRANGE";
}

.shadow-text.esg::after {
	content: "ESG";
}

.shadow-text.skipz::after {
	content: "SKIPZ";
}

.shadow-text.whelan::after {
	content: "WHELAN";
}

.shadow-text.widingaruwa::after {
	content: "WIDI NGARUWA";
}

.set-2 .stk-block-carousel__dots,
.set-2 .stk-block-carousel__buttons {
	display: none;
}

.full-width-cover-container {
	overflow: hidden;
}

.intro-highlight strong {
	font-weight: 300;
	color: var(--wp--preset--color--accent-3);
}

.sustainability-highlights .has-accent-3-background-color h2.wp-block-heading.is-style-default::after,
.sustainability-highlights .has-accent-3-background-color ul.wp-block-list>li::before,
ul.blue.wp-block-list>li::before {
	color: var(--wp--preset--color--accent-5);
}

.sustainability-highlights .has-accent-6-background-color h2.wp-block-heading.is-style-default::after,
.sustainability-highlights .has-accent-6-background-color ul.wp-block-list>li::before {
	color: var(--wp--preset--color--accent-3);
}

.job-toolbar {
	z-index: 20;
}

.project-tags ul {
	padding: 0;
}

.project-tags ul {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}

.project-tags li,
.tags span {
	background-color: var(--wp--preset--color--accent-4);
	display: inline-block;
	margin: 0 6px 6px 0;
	padding: 4px 8px 2px 8px;
}

.project-tags li,
.tags-list span {
	display: inline-block;
}

.project-tags li {
	margin: 0;
}

.project-categories p {
	color: var(--wp--preset--color--accent-1);
}

ul.project-scope-of-works {
	display: grid;
	list-style: none;
	padding: 0;
	gap: 0.6rem;
}

ul.project-scope-of-works li {
	display: block;
	text-align: center;
	background-color: rgba(86, 198, 230, 0.2);
	padding: 1rem;
}

ul.project-scope-of-works li strong {
	font-family: var(--wp--preset--font-family--rubik);
	font-size: 1.875rem;
	display: block;
	color: var(--wp--preset--color--accent-3);
	font-weight: 400;
}

ul.project-images {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1rem;
	padding: 0;
	list-style: none;
	padding: 0;
}


ul.project-images.grid li img {
	width: 100%;
	object-fit: cover;
	display: block;
	max-height: 276px;
	min-height: 276px;
}

ul.project-images li svg {
	position: absolute;
	z-index: 10;
	top: 10px;
	right: 10px;
	background-color: rgba(0, 0, 0, 0.3);
	padding: 4px;
	border-radius: 4px;
	opacity: 0;
	transition: all 0.3s ease-in-out;
}

ul.project-images li:hover svg {
	opacity: 1;
	transform: scale(1.5);
}

.tags-list span:not(:last-child)::after {
  content: ",\00a0";
}

.post-template-default.single ol {
	padding-left: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--30);
}

body.page-id-412 main .clients-partners,
body.page-id-412 main .clients-partners .wp-block-group,
body.page-id-448 main .clients-partners,
body.page-id-448 main .clients-partners .wp-block-group,
body.page-id-446 main .clients-partners,
body.page-id-446 main .clients-partners .wp-block-group {
	background-color: var(--wp--preset--color--base) !important;
}

body.page-id-412 main .social-procurement {
	background-color: var(--wp--preset--color--accent-4) !important;
}

body.jobs-template-default main .wp-block-list {
	margin: 2rem 0;
	padding-left: 0.6rem;
}

.current-jobs li {
	position: relative;
}

.current-jobs li a.wp-block-read-more {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 10;
}

.current-jobs li h3 {
	transition: transform 0.6s ease-in-out;
}

.current-jobs li:hover h3 {
	transform: translateY(-1rem);
	transition: transform 0.3s ease-in-out;
}

.job-state {
	display: flex;
}

.job-state::after {
	content: ",\00a0";
}

.job-state .value {
	padding-left: 0.6rem;
}

.job-list ul,
.project-list ul {
	padding-left: 0.6em;
}

.job-list ul li,
.project-list ul li {
	margin-bottom: 0.6rem;
	padding-left: 0.4rem;
}

.job-list ul,
.project-list ul {
	list-style-type: none;
	padding-left: 0;
}

ul.sitemap,
ul.sitemap ul {
	padding-left: 0;
	list-style: none;
}

ul.wp-block-list>li,
.job-list ul li,
.project-list ul li,
ul.sitemap li {
	padding-left: 1.15rem;
	position: relative;
}

ul.wp-block-list>li::before,
.job-list ul li::before,
.project-list ul li::before,
ul.sitemap li::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "+";
	color: var(--wp--preset--color--accent-1);
	font-weight: 700;
	display: inline-block;
}


.frm-g-recaptcha {
	margin-top: 2rem;
}

.target-email,
#frm_field_47_container,
#frm_field_94_container,
#field_un8ok {
	display: none;
}

.frm_message {
	padding: 2rem 0 0 0 !important;
}

.frm_message h2 {
	margin-top: 1rem !important;
	margin-bottom: 1rem !important;
	color: var(--wp--preset--color--accent-1) !important;
}

.frm_message p {
	font-size: 1.15rem;
	padding: 1rem 0;
	margin: 0 !important;
	padding-bottom: 0 !important;
}

.large a {
	font-size: var(--wp--preset--font-size--large);
}

.contact-form input[type=text],
.contact-form input[type=email],
.contact-form input[type=tel],
.contact-form textarea {
	background-color: #fff !important;
}

.contact-form .frm-g-recaptcha {
	margin-top: 0;
}

.sitemap li {
	margin-top: 0.6rem;
}

.sitemap li a {
	text-decoration: none;
}

.frm_form_field select {
	width: auto;
}

.with_frm_style .frm_checkbox label input[type=checkbox] {
	width: 2rem !important;
	height: 2rem !important;
}

p.form-note {
	margin-top: 0 !important;
}

/* Lightbox Styles */
.lightbox {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.9);
	justify-content: center;
	align-items: center;
	opacity: 0;
	transition: opacity 0.5s ease;
	margin: 0;
}

.lightbox.show {
	display: flex;
	opacity: 1;
}

.lightbox.line-pattern::before {
	max-width: 644px;
}

.lightbox-content {
	max-width: 90%;
	max-height: 80%;
}

.lightbox-close {
	position: absolute;
	top: 20px;
	right: 30px;
	color: var(--wp--preset--color--base);
	font-size: 40px;
	cursor: pointer;
	transition: color 0.5s ease;
}

.lightbox-prev,
.lightbox-next {
	position: absolute;
	top: 50%;
	font-size: 30px;
	color: var(--wp--preset--color--base);
	background: none;
	border: none;
	cursor: pointer;
	z-index: 1001;
	transform: translateY(-50%);
	transition: color 0.5s ease;
}

.lightbox-prev:hover,
.lightbox-next:hover,
.lightbox-close:hover {
	color: var(--wp--preset--color--accent-1);
}

.lightbox-prev {
	left: 10px;
}

.lightbox-next {
	right: 10px;
}

a.lightbox-link {
	cursor: zoom-in;
}

.no-statistics .col-statistics {
	display: none;
}

.frm_error {
	margin-top: 4px !important;
	color: var(--wp--preset--color--accent-1) !important;
}

.block .cat-item-23 {
	display: none;
	pointer-events: none;
}

/* Project Gallery */

.project-portfolio .wp-block-post-featured-image {
	overflow: hidden;
	position: relative;
}

.project-portfolio .wp-block-post-featured-image::before {
	content: "";
	display: block;
	background-color: #fff;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	transform: translateX(0);
	transition: transform 1s ease;
	transition: transform 1.2s cubic-bezier(0.25, 1, 0.5, 1);
}

.project-portfolio li.active .wp-block-post-featured-image::before {
	transform: translateX(100%);
}

.project-portfolio li.reverse .wp-block-post-featured-image::before {
	transform: translateX(0);
}

.project-portfolio .gallery ul li figure {
	height: 540px !important;
	object-fit: cover;
}

.project-portfolio .main-projects-grid .gallery ul {
	gap: 0.6rem;
}

.project-portfolio .main-projects-grid .gallery ul li figure {
	height: 380px !important;
}

.project-portfolio .gallery ul>li:not(.not-active):nth-child(5n+3) figure,
.project-portfolio .gallery ul>li:not(.not-active):nth-child(5n+4) figure,
.project-portfolio .gallery ul>li:not(.not-active):nth-child(5n+5) figure {
	height: 300px !important;
}

.project-portfolio .gallery ul li:not(.not-active):nth-child(5n-4) {
	grid-column: span 2;
}

.project-portfolio li.not-active {
	display: none;
}

.project-portfolio ul.wp-block-categories {
	display: flex;
	flex-direction: row;
	gap: 1rem;
	flex-wrap: wrap;
}

.project-portfolio ul.wp-block-categories ul {
	flex-wrap: wrap;
}

.project-portfolio .work-block {
	position: relative;
}

.project-portfolio .details {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 0 20px;
	box-sizing: border-box;
	z-index: 2;
	flex-direction: column;
}

.project-portfolio .work-block::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.9);
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0s 0.3s;
}

.project-portfolio .work-block:hover::before {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.3s ease;
}

.project-portfolio .work-block img {
	position: relative;
	z-index: 0;
}

.project-portfolio #loadMoreButton {
	cursor: pointer;
	display: none;
}


footer {
	margin: 0;
}

footer .sub-footer a {
	text-decoration: none;
}

@media (min-width: 600px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}
}

@media (min-width: 782px) {
	.sticky-filters {
		top: 7rem;
	}

	.full-width-cover .wp-block-cover {
		position: absolute;
		height: 100%;
		width: 725px;
		max-width: calc(44vw - var(--wp--preset--spacing--50));
		right: 0;
	}

	.full-width-cover .half .wp-block-cover {
		width: 960px;
	}

	.object-fit-img .wp-block-image {
		position: absolute;
		top: 0;
		height: 100%;
		overflow: hidden;
	}

	.full-width-cover .wp-block-column:first-child {
		min-height: 480px;
		justify-content: left;
		display: flex;
		height: 100%;
		align-items: center;
	}
}

@media (min-width: 1024px) {
	.set-4 .stk-block-carousel__dots,
	.set-4 .stk-block-carousel__buttons {
		display: none;
	}
}

@media (min-width: 1140px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none !important;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: block !important;
		width: 100%;
		position: relative;
		z-index: auto;
		background-color: inherit;
	}

	header ul.wp-block-navigation__submenu-container {
		border: none !important;
		background: transparent !important;
		border-top: 1rem solid transparent !important;
		padding: 0 !important;
	}

	header ul.wp-block-navigation__submenu-container::before {
		content: '';
		position: absolute;
		top: -6px;
		right: 14px;
		border-width: 0 12px 12px 0;
		border-style: solid;
		border-color: transparent transparent var(--wp--preset--color--base) transparent;
		transform: rotate(135deg);
	}

	header ul.wp-block-navigation__submenu-container li ul::before {
		display: none !important;
	}

	header ul.wp-block-navigation__submenu-container li ul {
		left: 100% !important;
		right: auto !important;
		margin-top: -0.75rem !important;
		border-top: 1px solid #eee !important;
	}

	header ul.wp-block-navigation__submenu-container li {
		padding: 0.15rem 0.85rem !important;
		white-space: nowrap;
		background: var(--wp--preset--color--base) !important;
		margin: 0 !important;
		border-left: 1px solid #eee !important;
		border-right: 1px solid #eee !important;
	}

	header ul.wp-block-navigation__submenu-container li:first-child {
		padding-top: 1rem !important;
	}

	header ul.wp-block-navigation__submenu-container li:last-child {
		padding-bottom: 1rem !important;
		border-bottom: 1px solid #eee !important;
	}

	header ul.wp-block-navigation__submenu-container li a {
		font-size: 0.96rem !important;
		padding: 6px;
	}

	a:focus-visible,
	button:focus-visible {
		outline: 2px solid Highlight;
		outline: 2px solid -webkit-focus-ring-color;
	}
	
	header ul ul li a.wp-block-navigation-item__content[aria-current="page"] {
		color: var(--wp--preset--color--accent-1) !important;
	}

}


@media (max-width: 1360px) {
	/* 	.service-portfolio .wp-block-cover {
		padding: 1.25rem !important;
	} */

	.service-portfolio .wp-block-cover p:nth-child(1) {
		font-size: 1.15rem !important;
	}

	.full-width-cover-container .wp-block-column:first-child .wp-block-group .wp-block-group li {
		max-width: 80%;
	}
}

@media (max-width: 1240px) {

	header .wp-block-navigation__container,
	header ul.wp-block-social-links {
		gap: 1.6rem;
	}

	.full-width-cover-container .wp-block-column:first-child .wp-block-group .wp-block-group {
		display: grid;
		gap: 0;
	}

	.full-width-cover .wp-block-column:first-child {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}
}

@media (max-width: 1139px) {

	header button.wp-block-navigation__responsive-container-open,
	header button.wp-block-navigation__responsive-container-close {
		transform: scale(1.4);
	}

	header .wp-block-navigation__responsive-container-content {
		align-items: start;
	}

	header .wp-block-navigation__container,
	header .wp-block-navigation__container li {
		width: 100%;
		align-items: start !important;
	}

	header .wp-block-navigation__container {
		gap: 1.2rem !important;
	}

	header .wp-block-navigation__container>li {
		display: block !important;
		position: relative;
	}

	header .wp-block-navigation__container>li+li {
		border-bottom: 1px solid #eee;
		padding-bottom: 1.2rem;
	}

	header .wp-block-navigation__container>li+li>a {
		font-weight: 500;
		font-size: 1.25rem;
	}

	header .wp-block-navigation__container>li button {
		position: absolute;
		top: -4px;
		right: 0;
		z-index: 10;
		width: 32px !important;
		height: 32px !important;
		outline: none;
	}

	header .wp-block-navigation__container>li button svg {
		width: 14px !important;
	}

	header .wp-block-navigation__container>li+li>ul {
		display: none !important;
		padding-left: 0 !important;
	}

	header .wp-block-navigation__container>li+li>ul a {
		font-size: 1.15rem !important;
	}

	header .wp-block-navigation__container>li button[aria-expanded="true"]+ul {
		display: flex !important;
	}

	header .wp-block-navigation__container>li+li ul {
		gap: 1.2rem !important;
		margin-bottom: 1.2rem;
	}

	header .wp-block-navigation__container>li+li ul button {
		display: none !important;
	}

	header .wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor svg {
		color: var(--wp--preset--color--accent-1);
		fill: var(--wp--preset--color--accent-1);
		transform: scale(1.4);
	}

	header ul.wp-block-social-links {
		gap: 3rem;
		margin-bottom: 2rem;
	}

	header ul.wp-block-social-links li {
		width: auto;
	}

	header .wp-block-navigation__submenu-icon {
		display: block !important;
		position: relative;
	}

	header .wp-block-navigation__submenu-icon svg {
		color: var(--wp--preset--color--accent-1);
		transform: scale(1.4);
	}

	a:focus,
	a:active,
	button:focus,
	a:focus-visible,
	button:focus-visible {
		outline: none !important;
		box-shadow: none !important;
		border: none !important;
	}

	li,
	li:focus {
		outline: none !important;
		box-shadow: none !important;
	}

	.quick-news-block h3::after {
		display: none;
	}
}

@media (max-width: 1024px) {

	.mobile-hide,
	.bookmark {
		display: none !important;
	}

	.shadow-text::after {
		display: none;
	}

	.services {
		grid-template-columns: 1fr 1fr;
	}

	.mobile-columns {
		display: grid !important;
		grid-template-columns: 1fr 1fr 1fr;
	}

	.stats .wp-block-group p br {
		display: none;
	}

	.service-portfolio .wp-block-cover {
		height: 280px;
		width: 100%;
		padding-bottom: 3rem !important;
	}

	.service-portfolio.news .wp-block-cover {
		height: auto;
	}

	.project-portfolio .gallery ul li,
	.project-portfolio .gallery ul li .wp-block-group,
	.project-portfolio .gallery ul li figure {
		height: 280px !important;
	}

	.project-portfolio li .logo img {
		display: none;
	}

	.logos-slide figure {
		margin: 0 1rem;
	}

	.logos-slide.auto figure img {
		max-height: 32px !important;
	}
	
	.mobile-custom-grid {
		grid-template-columns: 1fr 1fr;
	}

	footer .wp-block-column {
		min-width: 50%;
	}

}

@media (max-width: 781px) {
	.stk-block-timeline>.stk-inner-blocks {
		padding-left: 0;
	}

	.stk-block-timeline>.stk-inner-blocks {
		column-gap: 16px;
	}

	.stk-block-timeline .stk-block-timeline__middle {
		inset-inline-start: 0px;
	}

	.stk-block-timeline>.stk-inner-blocks:after {
		inset-inline-start: 6px;
	}

	.stk-block-timeline .stk-block-timeline__middle {
		inset-block-start: 10px;
	}

	.wp-block-stackable-timeline {
		padding-bottom: var(--wp--preset--spacing--70) !important;
	}

	.stk-block-timeline__date {
		margin-bottom: var(--wp--preset--spacing--30) !important;
	}

	#custom-lightbox,
	ul.project-images li svg {
		display: none !important;
	}

	a.lightbox-link {
		pointer-events: none !important;
	}

	.main-projects-grid .gallery {
		max-height: none !important;
	}

	.line-pattern:not(.top) {
		padding-bottom: var(--wp--preset--spacing--70) !important;
	}

	.latest-projects {
		margin-top: var(--wp--preset--spacing--60) !important;
	}

	.logos {
		width: 100vw;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		transition: none !important;
		scroll-padding-left: 20px;
		padding-top: 32px;
		padding-bottom: 32px;
	}

	.logos figure {
		scroll-snap-align: start;
	}

	.logos-slide.ready {
		animation: none;
	}

	.services+.services {
		margin-top: 4vw !important;
	}

	.job-position {
		min-height: 184px !important;
	}

	.carousel-inner img {
		height: 200px !important;
	}

	.service-portfolio.capabilities {
		padding-top: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--30);
	}

	.wp-block-button.has-custom-font-size,
	.wp-block-button.has-custom-font-size a {
		font-size: 1.25rem !important;
		width: 100%;
		max-width: 264px;
	}

	.has-xx-large-font-size,
	.has-custom-2-font-size {
		font-size: 1.45rem !important;
	}

	.featured-news-block li .wp-block-group {
		left: 0;
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.featured-news-block li .wp-block-post-excerpt {
		display: none;
	}

	.cross-blue::after,
	.cross-red::after {
		width: 6.25rem;
		height: 6.25rem;
	}

	.cross-blue img,
	.cross-red img {
		padding: 0;
	}

	.profile-con {
		padding: 0 !important;
		margin-bottom: 4.85rem !important;
	}

	.profile-con img {
		width: 100%;
	}

	.profiles p+p {
		font-size: 0.8rem;
		margin-top: 0.25rem !important;
	}

	.inner-banner {
		height: 22vh;
		min-height: 240px;
	}

	.inner-banner.with-text {
		height: 34vh;
		min-height: 380px;
		align-items: end;
		padding-bottom: 2rem !important;
	}

	.project-filters.block .wp-block-categories-list {
		display: none !important;
	}

	.stats {
		display: flex !important;
		flex-wrap: wrap;
		justify-content: center
	}

	.stats .wp-block-group p {
		width: 40vw;
	}

	.full-width-cover {
		gap: 0;
	}

	.full-width-cover .wp-block-cover {
		width: calc(100vw + 3rem);
		margin-left: -3rem;
		min-height: 400px;
	}

	.mobile-columns {
		grid-template-columns: 1fr 1fr;
	}

	.mobile-columns .full-width {
		grid-column: 1 / -1;
	}

	ul.project-scope-of-works {
		grid-template-columns: 1fr 1fr;
	}

	ul.project-images.grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	ul.project-images.grid li img {
		max-height: 286px;
		min-height: 286px;
	}

	.mobile-hide {
		display: none !important;
	}

	.banner-large .wp-block-cover {
		min-height: 380px !important;
	}

	.banner-large .wp-block-cover .wp-block-cover__background {
		background: rgba(0, 0, 0, 0.6) !important;
		opacity: 1 !important;
	}
}

@media (max-width: 760px) {
	.stats + .service-portfolio {
		margin-top: var(--wp--preset--spacing--70) !important;
	}
	
	.about-stats {
		display: grid !important;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}

	.line-pattern::before {
		width: 100%;
	}

	.services {
		grid-template-columns: 1fr;
	}

	.stats .wp-block-columns {
		grid-template-columns: 1fr;
	}

	.parallax-video {
		min-height: 72vh !important;
	}

	.project-filters,
	.project-filters ul {
		flex-wrap: wrap;
	}

	.project-filters ul {
		gap: 0.5rem;
	}

	.gallery {
		max-height: calc(280px * 4 + 14vw) !important;
		overflow: hidden;
	}

	.gallery.active {
		max-height: none !important;
	}

	.gallery ul {
		display: block;
	}

	.gallery ul li+li,
	.service-portfolio .wp-block-cover+.wp-block-cover {
		margin-top: 4vw;
	}

	.gallery ul li figure,
	.gallery ul>li:not(.not-active):nth-child(5n+3) figure,
	.gallery ul>li:not(.not-active):nth-child(5n+4) figure,
	.gallery ul>li:not(.not-active):nth-child(5n+5) figure {
		height: 76vw !important;
	}

	.service-portfolio {
		max-width: var(--wp--style--global--content-size);
		margin-left: auto !important;
		margin-right: auto !important;
	}

}

/* ==================== */
/* Accessibility        */
/* ==================== */
header li:focus {
	outline: none !important;
	border: none !important;
	box-shadow: none !important;
}
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) {
	outline: none;
	box-shadow: none;
}