@charset "UTF-8";
@font-face {
	font-family: "BitumRegular";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: local("BitumRegular"), local("Bitum-Regular"), url("../fonts/bitum-regular.woff2") format("woff2"), url("../fonts/bitum-regular.woff") format("woff");
}
@font-face {
	font-family: "BitumRegularItalic";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: local("BitumRegularItalic"), local("Bitum-Regular-Italic"), url("../fonts/bitum-regular-italic.woff2") format("woff2"), url("../fonts/bitum-regular-italic.woff") format("woff");
}
@font-face {
	font-family: "Manrope";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: local("Manrope"), local("Manrope-Medium"), url("../fonts/Manrope-Medium.woff2") format("woff2"), url("../fonts/Manrope-Medium.woff") format("woff");
}
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	        text-size-adjust: 100%;
}

body {
	margin: 0;
	color: #000000;
	background: #fff;
}

input[type=submit],
input[type=button],
button,
a {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
	transition: 200ms;
	cursor: pointer;
}

img {
	height: auto;
	max-width: 100%;
	transition: 200ms;
	transition-property: opacity;
	vertical-align: middle;
}
img[data-src] {
	position: absolute;
	opacity: 0;
}

article,
aside,
figure,
footer,
header,
main,
nav {
	display: block;
}

ul,
ol,
dl {
	list-style: none;
}

blockquote,
embed,
fieldset,
figure,
iframe,
img,
legend,
object,
address,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl,
cite {
	padding: 0;
	border: 0;
	margin: 0;
	font-weight: normal;
	font-style: normal;
}

html {
	font: normal 400 100%/1.6 "BitumRegular", sans-serif;
}

nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

a {
	text-decoration: none;
	color: #000000;
}
a:hover {
	color: inherit;
}
a[href^="mailto:"], a[href^="tel:"] {
	white-space: nowrap;
}

sup,
sub {
	font-size: 60%;
}

.font\:manrope {
	font-family: "Manrope", sans-serif;
}
.font\:italic {
	font-family: "BitumRegularItalic", sans-serif;
}

.text\:1 {
	font-size: 0.675rem;
	line-height: 1.437037037;
}
.text\:3 {
	font-size: 0.933125rem;
	line-height: 1.4152712659;
	letter-spacing: -0.00933125rem;
}

::selection {
	color: #ffffff;
	background: #009926;
}

.screen-reader-text {
	position: absolute;
	overflow: hidden;
	width: 1px;
	height: 1px;
	padding: 0;
	border: 0;
	margin: 0;
	clip: rect(1px, 1px, 1px, 1px);
}

.studio__nav .subnav-active, .related header h2, .show-project-list .projects__filters--index, .projects__filters li:hover,
.projects__filters .active {
	text-decoration: underline;
	text-decoration-thickness: 0.0625rem;
	text-underline-offset: 0.5rem;
}

.card div {
	position: relative;
}
.card figure {
	aspect-ratio: 506/374;
}
.card figure + figure {
	z-index: 2;
	position: absolute;
	opacity: 0;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
.card img {
	transition: unset;
}
.card__rollover--in-progress:hover figure:first-child {
	opacity: 0;
}
.card__rollover--in-progress:hover figure + figure {
	opacity: 1;
}
.card__rollover--in-progress:hover img {
	opacity: 0.25;
	filter: grayscale(100%);
}
.card__rollover--in-progress:hover * {
	color: #adadad;
}
.card.thumbnail-visible figure + figure {
	opacity: 1;
}
.card .vignette img {
	object-fit: contain;
	background-size: contain;
}
.card__details {
	margin: 0.4375rem 0 0 0;
}
.card__details,
.card__details > div {
	align-items: baseline;
}
.card__details > div ul {
	margin: 0 0 0 0.75rem;
}
.card__details > div ul li:not(:last-child)::after {
	content: ", ";
	margin: 0 0.25rem 0 0;
}

.contact > div {
	padding: 8.25rem 0.9375rem 11.375rem 0.9375rem;
}
.contact .social-handle {
	margin: 0 0 1.25rem 0;
}
.contact a {
	display: block;
}
.contact__hours p:last-line {
	color: #999999;
}
.contact__details {
	flex-direction: column;
}
.contact__details--main > div {
	gap: 2.5rem;
}
.contact__details--main > div figure {
	width: 100%;
}
.contact__details--map {
	margin: 1.3125rem 0;
}
.contact__details--map figure {
	aspect-ratio: 616/498;
}
.contact aside {
	width: 40%;
}
.contact aside figure {
	aspect-ratio: 192/238;
	margin: 3.4375rem 0 0 0;
	width: 100%;
}

.page-template-tpl-contact main {
	min-height: calc(100vh - 3.125rem);
}

.energy-data__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 0.625rem;
	row-gap: 1.5rem;
	width: 80%;
}

.error404 main {
	min-height: calc(100vh - 3.1875rem);
}
.error404 main .studio__lead--standfirst {
	width: 14.5625rem;
}

.studio__image-text > .flex {
	gap: 8rem;
}
.studio__image-text aside {
	width: 100%;
}
.studio__image-text aside img {
	object-position: right;
	width: auto;
	height: 100%;
}
.studio__image-text article {
	max-width: 19.5rem;
	width: 100%;
}
.studio__image-text figure {
	aspect-ratio: 505/673;
	width: 100%;
}

.index-item {
	border-bottom: 0.0625rem solid #000000;
}
.index-item > * {
	padding: 0.9375rem 0 0.75rem 0;
	position: relative;
}
.index-item > *:hover {
	text-decoration: unset;
}
.index-item > a:hover * {
	color: #009926;
}
.index-item > div * {
	color: #999999;
}
.index-item > div .index-item__title::after {
	content: none;
}
.index-item__title {
	width: 100%;
}
.index-item__title::after {
	content: "View project";
	position: absolute;
	left: auto;
	right: 0;
	color: #999999;
	font-size: 0.675rem;
	line-height: 1.437037037;
}
.index-item > div .index-item__title::after {
	content: "In progress";
}
.index-item__category {
	width: 9.5%;
}
.index-item__type {
	width: 30.19%;
}
.index-item__type li:not(:last-child)::after {
	content: ", ";
	margin: 0 0.1875rem 0 0;
}
.index-item__status, .index-item__year {
	width: 10%;
}
.index-item__case-study {
	width: 8.66%;
}
.index-item__energy-data {
	width: 100%;
}
.index-item__energy-data > div > p:last-child {
	padding: 0 0.75rem 0 0;
}
.index-item__energy-data span {
	display: block;
}
.index-item__energy-data span + span {
	margin: -0.3125rem 0 0 0;
}
.index-item__energy-data > * {
	gap: 1.25rem;
}

.landing {
	cursor: url("../images/cursor-down.svg"), auto;
	height: 100vh;
	padding: 0.5rem 0 1.5625rem 0;
}
.landing > div {
	flex-direction: column;
	height: 100%;
}
.landing__copy > div {
	width: 100%;
}
.landing__logo {
	pointer-events: none;
}
.landing__logo path,
.landing__logo polygon {
	fill: #000000;
	opacity: 0.03;
	transition: fill 750ms ease, opacity 750ms ease;
}

.transition-logo .landing__logo path,
.transition-logo .landing__logo polygon {
	fill: #000000;
	opacity: 0.03;
}

.lightbox {
	background: rgba(249, 249, 249, 0.94);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 75;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 250ms ease, visibility 250ms ease;
}
.lightbox *:not(.lightbox__close) {
	cursor: none;
}
.lightbox .swiper,
.lightbox figure {
	height: 100%;
}
.lightbox figure {
	margin: 0 auto;
}
.lightbox figure .cover {
	object-fit: contain;
	background-size: contain;
}
.lightbox .wrap {
	display: flex;
}
.lightbox .swiper {
	height: 100%;
}
.lightbox > div,
.lightbox .swiper-wrapper,
.lightbox .swiper-slide {
	height: 100%;
	width: 100%;
}
.lightbox .swiper-slide {
	background: rgba(249, 249, 249, 0.94);
	display: flex;
	align-items: center;
	padding: 7.1875rem 0;
}
.lightbox__close {
	cursor: pointer;
}
.lightbox__header {
	position: fixed;
	top: 0;
	left: 0;
	height: auto !important;
	width: 100%;
	padding: 1.25rem 0;
	z-index: 10;
}
.lightbox__header > div {
	gap: 2.125rem;
	justify-content: flex-end;
}
.lightbox figure {
	position: relative;
}
.lightbox figure img {
	width: 100%;
}
.lightbox figcaption {
	opacity: 0;
	margin: 0.75rem auto 0 auto;
	transition: opacity 250ms ease;
	position: absolute;
}
.lightbox .swiper-slide-fully-visible figcaption {
	opacity: 1;
}
.lightbox .swiper-navigation > * {
	position: fixed;
	top: 0;
	left: 0;
	width: 50vw;
	height: 100vh;
	z-index: 2;
}
.lightbox .swiper-navigation > * + * {
	left: auto;
	right: 0;
	z-index: 1;
}
.lightbox .swiper-prev:hover .custom-cursor,
.lightbox .swiper-next:hover .custom-cursor {
	opacity: 1;
}

.has-lightbox {
	overflow: hidden;
}
.has-lightbox .lightbox {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

[data-image-index] {
	cursor: pointer;
}

.acf-map {
	aspect-ratio: 617/479;
	height: 100%;
	width: 100% !important;
}

.news {
	padding: 0.5rem 0 11.375rem 0;
}
.news__header {
	padding: 0 0 7rem 0;
	position: -webkit-sticky;
	position: sticky;
	pointer-events: none;
	top: 0.5rem;
	z-index: 49;
}
.news__header > * {
	pointer-events: none;
}
.news .custom-cursor {
	position: fixed; /* follow viewport */
	top: 0;
	left: 0;
	pointer-events: none; /* don’t block mouse events */
	transform: translate(-50%, -50%); /* center via transform origin */
	opacity: 0; /* hidden by default */
	transition: opacity 0.2s ease;
}
.news .swiper-navigation {
	cursor: none;
}
.news .swiper-navigation > * {
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	z-index: 2;
}
.news .swiper-navigation > * + * {
	left: auto;
	right: 0;
	z-index: 1;
}
.news .swiper-prev:hover .custom-cursor,
.news .swiper-next:hover .custom-cursor {
	opacity: 1;
}
.news__article {
	border-bottom: 0.0625rem solid #000000;
	margin: 0 0 1.375rem 0;
}
.news__article > div > div {
	align-items: flex-end;
}
.news__article header {
	margin: 0 0 1.1875rem 0;
}
.news__article .swiper {
	margin: 0;
	width: 100%;
}
.news__article time {
	display: block;
}

.readmore-wrapper {
	margin-top: -1rem !important;
}
.readmore-wrapper.is-open {
	margin-top: unset !important;
}

.projects__index > *:not(ul) {
	background: #ffffff;
	gap: 0.625rem;
	margin: 0 0 4.375rem 0;
	position: -webkit-sticky;
	position: sticky;
	padding-top: 6.25rem;
	top: 0;
	z-index: 49;
}

.project {
	padding: 0.5rem 0 9.25rem 0;
}
.project h1 {
	pointer-events: none;
	z-index: 59;
}
.project figure {
	cursor: url("../images/cursor.png") 20 20, auto;
	opacity: 1;
	transition: opacity 400ms ease;
}
.project .swiper figure {
	cursor: grab;
}
.project__synopsis {
	max-width: 92.5rem;
}
.project__synopsis--text {
	max-width: 31.875rem;
	width: 100%;
}
.project__synopsis aside li p:first-child {
	width: 8.875rem;
}
.project__text .project__synopsis--text {
	padding-top: 0;
	padding-bottom: 0;
}
.project__section:not(:last-child):not(.project__section--title) {
	margin-bottom: 6.5rem;
}
.project__section--multi-images {
	width: 100%;
}
.project__section--multi-images .grid {
	gap: 0.625rem;
	height: 100%;
}
.project__section--multi-images .grid\:1 {
	grid-template-columns: unset;
}
.project__section--multi-images .grid\:2 {
	grid-template-columns: 1fr 1fr;
}
.project__section--multi-images .grid\:3 {
	grid-template-columns: 1fr 1fr 1fr;
}
.project__section--multi-images .grid\:4 {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.project__section--title {
	padding: 0 0.9375rem;
	height: 85vh;
}
.project__section--title > * {
	align-items: center;
	justify-content: center;
	height: 100%;
}
.project__section--title h1 {
	margin: auto 0;
}
.project__section--images {
	width: 100%;
}
.project__section--images figcaption {
	max-width: calc(100% - 3.75rem);
	width: 100%;
}
.project__section--details {
	margin-left: auto;
	max-width: 92.5rem;
}
.project__section--details > div > div > div {
	width: 20%;
}
.project__section--details > div > div > div p {
	padding: 0 0.625rem 0 0;
}
.project__section--details > div > div {
	padding: 1.375rem 0 1.5625rem 0;
}
.project__pull-quote, .project__wide-image, .project__images-text {
	margin-left: auto;
	max-width: 92.5rem;
}
.project__wide-image figcaption {
	margin: 0.5rem 0 0 0;
}
.project__full-width-image figcaption {
	width: auto;
}
.project__pull-quote cite {
	display: block;
	margin: 0.25rem 0 0 0;
}

.swiper-project__footer {
	align-items: center;
}
.swiper-project__footer > * {
	margin: 0.75rem 0 0 0;
}
.swiper-project__footer:empty {
	display: none;
}

.projects {
	padding: 0 0 13.625rem 0;
	position: relative;
	z-index: 1;
}
.projects__grid {
	opacity: 1;
}
.projects__index {
	display: none;
	opacity: 0;
}
.projects__grid, .projects__index {
	transition: opacity 250ms ease;
	min-height: 100vh;
}
.projects [data-filter] {
	cursor: pointer;
}
.projects__filters {
	gap: 0.875rem;
	margin: 0 0 3.3125rem 0;
	pointer-events: none;
	position: -webkit-sticky;
	position: sticky;
	padding: 1.25rem 0.9375rem 1.3125rem 0.9375rem;
	background: #ffffff;
	top: 3.3125rem;
	z-index: 50;
}
.projects__filters li {
	cursor: pointer;
	pointer-events: all;
}
.hide-project-grid .projects__grid {
	opacity: 0;
}

.home {
	overflow: hidden;
}
.home .site-logo,
.home .projects__filters {
	transition: opacity 250ms ease;
}
.home .site-logo {
	display: block;
	pointer-events: none;
}
.home .landing__logo path,
.home .landing__logo polygon {
	fill: #009926;
	opacity: 1;
}

.has-projects .site-nav li::after,
.has-projects .site-nav a {
	color: #000000 !important;
}
.has-projects .site-logo,
.has-projects .projects__filters {
	pointer-events: all;
	opacity: 1;
	color: #000000 !important;
}
.has-projects .landing__logo path,
.has-projects .landing__logo polygon {
	fill: #000000;
	opacity: 0.03;
}

.show-project-list .projects__index {
	opacity: 1;
}
.show-project-list .projects__filters--featured {
	text-decoration: unset;
}

.related::before {
	content: " ";
	display: block;
	margin: 0 auto;
	border-top: 0.0625rem solid #000000;
	width: calc(100% - 1.875rem);
	padding: 0 0 1.9375rem 0;
}
.related header {
	margin: 0 0 4.125rem 0;
}
.related .projects__index {
	display: block;
	opacity: 1;
	min-height: auto;
}

.site-footer {
	background: #fcfcfc;
	padding: 1.25rem 0 1.1875rem 0;
	position: relative;
	z-index: 1;
}
.site-footer .flex {
	gap: 0.125rem;
}

.site-header {
	background: #ffffff;
	padding: 1.25rem 0;
	transition: background 250ms ease;
	position: fixed;
	left: 0;
	top: 0;
	pointer-events: none;
	width: 100%;
	z-index: 50;
}
.site-header li,
.site-header .site-logo {
	pointer-events: all;
}
.site-header\:contrast .site-header a, .site-header\:contrast.home .site-nav a {
	color: #000000;
}
.site-header\:contrast .site-header li::after, .site-header\:contrast.home .site-nav li::after {
	color: #000000;
}
.site-header\:contrast .site-header .is-active, .site-header\:contrast.home .site-nav .is-active {
	font-family: "BitumRegularItalic", sans-serif;
}

.site-logo {
	display: block;
}

.site-nav {
	margin: 0 0 0 auto;
}
.site-nav li:not(:last-child)::after {
	content: ", ";
	margin: 0 0.25rem 0 0;
}
.site-nav li:hover,
.site-nav .is-active {
	font-family: "BitumRegularItalic", sans-serif;
}

.home .site-nav a,
.home .site-nav li::after {
	color: #009926;
	transition: color 250ms ease;
}

.splash {
	top: 0;
	left: 0;
	opacity: 1;
	cursor: none;
	position: fixed;
	transition: opacity 500ms ease;
	z-index: 100;
}
.splash, .splash__logo,
.splash figure {
	height: 100dvh;
	width: 100vw;
}
.splash .ar {
	background: unset;
}
.splash figure {
	z-index: 1;
	position: fixed;
}
.splash__logo {
	padding: 0.5rem 0.9375rem;
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 100%;
	z-index: 20;
}
.splash__logo * {
	fill: #009926;
}
.splash__logo svg {
	position: fixed;
	top: 50%;
	left: 50%;
	padding: 0 0.9375rem;
	transform: translate(-50%, -50%);
	width: 100%;
}

#logo {
	transition: opacity 500ms ease;
}

.hide-logo #logo {
	opacity: 0;
}

.has-splash {
	overflow: hidden;
}

.hide-splash .splash {
	opacity: 0;
}

.prevent-splash .splash {
	display: none;
}
.studio__lead--image {
	margin: 0 0 1.75rem 0;
	width: 61.11%;
}
.studio__lead figure {
	aspect-ratio: 300/427;
}
.studio__lead figcaption {
	display: block;
}

.studio__sticky-group {
	align-items: flex-start;
}
.studio__sticky-group > .flex {
	gap: 4.625rem;
}
.studio__sticky-group figure {
	aspect-ratio: 491/671;
}
.studio__sticky-group aside {
	width: 47.12%;
}
.studio__sticky-group aside img {
	object-position: right;
	width: auto;
	height: 100%;
}
.studio__sticky-group article {
	width: 29.5625rem;
}

.studio__nav {
	pointer-events: none;
	position: -webkit-sticky;
	position: sticky;
	top: 3.3125rem;
	z-index: 55;
	padding: 1.3125rem 0.9375rem 1.3125rem 0.9375rem;
}
.studio__nav li {
	cursor: pointer;
	pointer-events: all;
}
.studio__nav li.subnav-active {
	color: #000000;
}

.studio__text-section figure {
	aspect-ratio: 361/481;
	margin: 2.125rem 0 0 0;
	width: calc(100% + 3.4375rem);
}
.studio__text-section:not(:last-child) {
	margin: 0 0 3.5rem 0;
}

.studio {
	padding: 8.25rem 0 14.375rem 0;
}
.studio__sticky-group-section:not(:last-child) {
	margin: 0 0 17.625rem 0 !important;
}
.studio__sections > div:not(:last-child) {
	margin: 0 0 17.625rem 0;
}
.studio__sticky-image {
	margin: 0;
	position: -webkit-sticky;
	position: sticky;
	aspect-ratio: 491/671;
	top: 2.375rem;
	overflow: hidden;
}
.studio__sticky-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	transition: opacity 125ms ease;
	opacity: 0;
}
.studio__sticky-image img.active {
	opacity: 1 !important;
}
.studio__footer-lists {
	column-gap: 1rem;
}
.studio__footer-lists div + div {
	margin: 1.125rem 0 0 0;
}
.studio li::before {
	content: none !important;
}

.studio__text-gallery article {
	max-width: 19.5rem;
	width: 100%;
}
.studio__text-gallery aside {
	width: 100%;
}
.studio__text-gallery aside figure {
	aspect-ratio: 492/369;
}
.studio__text-gallery aside img {
	display: block;
	margin: 0 0 0 auto;
	height: 100%;
}
.studio__text-gallery .swiper-slide {
	cursor: pointer;
	background: #ffffff;
}
.studio__text-gallery .swiper-pagination {
	display: block;
	margin: 0 0 0 auto;
}
.studio__text-gallery .swiper-project__footer {
	margin: 0.4375rem 0 0 auto;
}
.studio__text-gallery .swiper-project__footer figcaption {
	margin: 0 0 0 0;
}

.ar {
	overflow: hidden;
	position: relative;
}
.ar\:gallery {
	aspect-ratio: 616/413;
}

.copy > *:not(:last-child):not(li) {
	margin: 0 0 1rem 0;
}
.copy\:rg > *:not(:last-child):not(li) {
	margin: 0 0 1.25rem 0;
}
.copy ul {
	list-style: none;
}
.copy li::before {
	content: "—";
	margin: 0 0.375rem 0 0;
}

.custom-cursor {
	position: fixed;
	pointer-events: none;
	opacity: 0;
}

.desktop {
	display: none;
}

/**
 * Swiper 11.2.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 10, 2025
 */
/* FONT_START */
/* FONT_END */
:root {
	--swiper-theme-color: #007aff;
	/*
	--swiper-preloader-color: var(--swiper-theme-color);
	--swiper-wrapper-transition-timing-function: initial;
	*/
}

:host {
	position: relative;
	display: block;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}

.swiper {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	/* Fix of Webkit flickering */
	z-index: 1;
	display: block;
}

.swiper-vertical > .swiper-wrapper {
	flex-direction: column;
}

.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: flex;
	transition-property: transform;
	transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
	box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
	transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
	touch-action: pan-y;
}

.swiper-vertical {
	touch-action: pan-x;
}

.swiper-slide {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	transition-property: transform;
	display: block;
}

.swiper-slide-invisible-blank {
	visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
	height: auto;
}

.swiper-autoheight .swiper-wrapper {
	align-items: flex-start;
	transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
	perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
	transform-style: preserve-3d;
}

.swiper-3d {
	perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
	transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
	overflow: auto;
	scrollbar-width: none;
	/* For Firefox */
	-ms-overflow-style: none;
	/* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
	display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
	-webkit-scroll-snap-type: x mandatory;
	        scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
	-webkit-scroll-snap-type: y mandatory;
	        scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
	-webkit-scroll-snap-type: none;
	        scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
	content: "";
	flex-shrink: 0;
	order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: center center;
	scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
	-webkit-margin-start: var(--swiper-centered-offset-before);
	        margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
	height: 100%;
	min-height: 1px;
	width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
	-webkit-margin-before: var(--swiper-centered-offset-before);
	        margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
	width: 100%;
	min-width: 1px;
	height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
	background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
	width: 42px;
	height: 42px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -21px;
	margin-top: -21px;
	z-index: 10;
	transform-origin: 50%;
	box-sizing: border-box;
	border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
	border-radius: 50%;
	border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
	animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
	--swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
	--swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
/* Slide styles end */
.swiper-virtual .swiper-slide {
	-webkit-backface-visibility: hidden;
	transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
	height: 1px;
	width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
	width: 1px;
	height: var(--swiper-virtual-size);
}

:root {
	--swiper-navigation-size: 44px;
	/*
	--swiper-navigation-top-offset: 50%;
	--swiper-navigation-sides-offset: 10px;
	--swiper-navigation-color: var(--swiper-theme-color);
	*/
}

.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	top: var(--swiper-navigation-top-offset, 50%);
	width: calc(var(--swiper-navigation-size) / 44 * 27);
	height: var(--swiper-navigation-size);
	margin-top: calc(0px - var(--swiper-navigation-size) / 2);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
	opacity: 0.35;
	cursor: auto;
	pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
	opacity: 0;
	cursor: auto;
	pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
	display: none !important;
}

.swiper-button-prev svg,
.swiper-button-next svg {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transform-origin: center;
}

.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
	transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
	left: var(--swiper-navigation-sides-offset, 10px);
	right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: var(--swiper-navigation-sides-offset, 10px);
	left: auto;
}

.swiper-button-lock {
	display: none;
}

/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
	font-family: swiper-icons;
	font-size: var(--swiper-navigation-size);
	text-transform: none !important;
	letter-spacing: 0;
	font-variant: initial;
	line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
	content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: var(--swiper-navigation-sides-offset, 10px);
	left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
	content: "next";
}

/* Navigation font end */
:root {
	/*
	--swiper-pagination-color: var(--swiper-theme-color);
	--swiper-pagination-left: auto;
	--swiper-pagination-right: 8px;
	--swiper-pagination-bottom: 8px;
	--swiper-pagination-top: auto;
	--swiper-pagination-fraction-color: inherit;
	--swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
	--swiper-pagination-progressbar-size: 4px;
	--swiper-pagination-bullet-size: 8px;
	--swiper-pagination-bullet-width: 8px;
	--swiper-pagination-bullet-height: 8px;
	--swiper-pagination-bullet-border-radius: 50%;
	--swiper-pagination-bullet-inactive-color: #000;
	--swiper-pagination-bullet-inactive-opacity: 0.2;
	--swiper-pagination-bullet-opacity: 1;
	--swiper-pagination-bullet-horizontal-gap: 4px;
	--swiper-pagination-bullet-vertical-gap: 6px;
	*/
}

.swiper-pagination {
	position: relative;
	text-align: center;
	transition: 300ms opacity;
	transform: translate3d(0, 0, 0);
	z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
	opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
	display: none !important;
}

/* Common Styles */
/* Bullets */
.swiper-pagination-bullets-dynamic {
	overflow: hidden;
	font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transform: scale(0.33);
	position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
	transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
	transform: scale(0.33);
}

.swiper-pagination-bullet {
	width: 0.4375rem;
	height: 0.4375rem;
	display: inline-block;
	border: 0.0625rem solid #999999;
}

button.swiper-pagination-bullet {
	border: none;
	margin: 0;
	padding: 0;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
}

.swiper-pagination-bullet:only-child {
	display: none !important;
}

.swiper-pagination-bullet-active {
	background: #999999;
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
	right: var(--swiper-pagination-right, 8px);
	left: var(--swiper-pagination-left, auto);
	top: 50%;
	transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
	display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	display: inline-block;
	transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transition: 200ms transform, 200ms right;
}

/* Fraction */
.swiper-pagination-fraction {
	color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */
.swiper-pagination-progressbar {
	background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
	position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background: var(--swiper-pagination-color, var(--swiper-theme-color));
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: scale(0);
	transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
	width: 100%;
	height: var(--swiper-pagination-progressbar-size, 4px);
	left: 0;
	top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
	width: var(--swiper-pagination-progressbar-size, 4px);
	height: 100%;
	left: 0;
	top: 0;
}

.swiper-pagination-lock {
	display: none;
}

:root {
	/*
	--swiper-scrollbar-border-radius: 10px;
	--swiper-scrollbar-top: auto;
	--swiper-scrollbar-bottom: 4px;
	--swiper-scrollbar-left: auto;
	--swiper-scrollbar-right: 4px;
	--swiper-scrollbar-sides-offset: 1%;
	--swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
	--swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
	--swiper-scrollbar-size: 4px;
	*/
}

/* Zoom container styles start */
.swiper-zoom-container {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

/* Zoom container styles end */
.swiper-slide-zoomed {
	cursor: move;
	touch-action: none;
}

/* a11y */
.swiper .swiper-notification {
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
	opacity: 0;
	z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
	transition-timing-function: ease-out;
	margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
	flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
	flex-wrap: wrap;
	flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
	transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
	pointer-events: none;
	transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-fade .swiper-slide-active {
	pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper.swiper-cube {
	overflow: visible;
}

.swiper-cube .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
	visibility: hidden;
	transform-origin: 0 0;
	width: 100%;
	height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
	transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
	pointer-events: auto;
	visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 100%;
	opacity: 0.6;
	z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
	content: "";
	background: #000;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
	pointer-events: auto;
	visibility: visible;
}

/* Cube slide shadows start */
/* Cube slide shadows end */
.bg\:body {
	background: #000000;
}
.bg\:light {
	background: #ffffff;
}
.bg\:primary {
	background: #009926;
}
.bg\:light-tint {
	background: #F6F6F6;
}
.bg\:grey {
	background: #999999;
}
.bg\:placeholder {
	background: var(--vignette);
}

.colour\:body {
	color: #000000;
}
.colour\:light {
	color: #ffffff;
}
.colour\:primary {
	color: #009926;
}
.colour\:light-tint {
	color: #F6F6F6;
}
.colour\:grey {
	color: #999999;
}
.colour\:placeholder {
	color: var(--vignette);
}

.cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background-size: cover;
}

.flex {
	display: flex;
}

.grid {
	display: grid;
}
.grid\:2 {
	grid-template-columns: repeat(1, 1fr);
	column-gap: 1.5rem;
	row-gap: 2.875rem;
}
.grid\:4 {
	grid-template-columns: repeat(20.6%, 10%, 10%, 20.5%);
}

.spacious {
	justify-content: space-between;
}

.unlock {
	overflow: auto;
}

.uppercase {
	text-transform: uppercase;
}

.wrap {
	padding: 0 0.9375rem;
}
.wrap\:indent {
	padding: 0 0.9375rem;
}
.wrap\:offset {
	padding: 0 0.9375rem;
}

.has-js :focus {
	outline: none;
}
.has-tab-focus :focus {
	outline: 2px auto #009926;
}
@media screen and (min-width: 630px) {
	.grid\:2 {
		grid-template-columns: repeat(2, 1fr);
		column-gap: 1.3125rem;
		row-gap: 2rem;
	}
}
@media screen and (min-width: 860px) {
	.text\:1 {
		font-size: 1rem;
		line-height: 1.4160935351;
		letter-spacing: -0.0090875rem;
	}
	.text\:2 {
		font-size: 0.70875rem;
		line-height: 1.4373897707;
	}
	.text\:3 {
		font-size: 1.38375rem;
		line-height: 1.4001806685;
		letter-spacing: -0.02075625rem;
	}
	.text\:4 {
		font-size: 0.5625rem;
		line-height: 1.8111111;
		letter-spacing: -0.005625rem;
	}
	.text\:x-lg {
		font-size: 6.155rem;
		line-height: 1.9340348037;
		letter-spacing: -0.2038575rem;
	}
	.card__details {
		margin: 0.8125rem 0 0 0;
	}
	.card__details > div {
		flex-direction: column;
	}
	.contact > div {
		padding: 8.75rem 0.9375rem 4.375rem 9.0625rem;
	}
	.contact__details {
		flex-direction: row;
		margin: 0 0 0 auto;
		max-width: 92.5rem;
		gap: 7.875rem;
	}
	.contact__details--main {
		width: 61.35%;
	}
	.contact__details--map {
		margin: 2.5rem 0 0 0;
	}
	.contact aside {
		width: 23.3125rem;
	}
	.contact aside figure {
		max-width: 15.9375rem;
	}
	.page-template-tpl-contact main {
		min-height: calc(100vh - 2rem);
	}
	.energy-data__grid {
		grid-template-columns: repeat(4, 1fr);
	}
	.error404 main {
		min-height: calc(100vh - 1.875rem);
	}
	.error404 main .studio__lead--standfirst {
		width: 22.5625rem;
	}
	.studio__image-text aside {
		width: 49.46%;
	}
	.studio__image-text article {
		max-width: unset;
		width: 24.1875rem;
	}
	.index-item > * {
		gap: 0.625rem;
	}
	.index-item__title h2,
.index-item__title p,
.index-item__title ul,
.index-item__title li:last-child, .index-item__category h2,
.index-item__category p,
.index-item__category ul,
.index-item__category li:last-child, .index-item__type h2,
.index-item__type p,
.index-item__type ul,
.index-item__type li:last-child {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.index-item__title::after {
		content: none;
	}
	.index-item__title {
		width: 30.76%;
	}
	.index-item > div .index-item__title::after {
		content: none;
	}
	.index-item__location {
		width: 10.28%;
	}
	.index-item__energy-data {
		width: 49.51%;
	}
	.index-item__energy-data > div {
		flex-wrap: wrap;
	}
	.index-item__energy-data > div > p:not(:last-child) {
		width: calc(50% - 0.625rem);
	}
	.index-item__energy-data > div > p:last-child {
		width: calc(50% - 0.625rem);
	}
	.index-item__energy-data > * {
		gap: 0.625rem;
	}
	.landing {
		padding: 0.5rem 0 1.375rem 0;
	}
	.landing__copy {
		border-bottom: 0.0625rem solid #009926;
		padding: 0 0 3.75rem 0;
	}
	.landing__copy > div {
		max-width: 31.875rem;
	}
	.landing__logo {
		position: fixed;
		top: auto;
		bottom: 1rem;
		left: 50%;
		transform: translateX(-50%);
		width: calc(100% - 1.875rem);
		z-index: 49;
	}
	.lightbox .swiper {
		margin: auto 0;
	}
	.lightbox__header > div {
		gap: 4.25rem;
	}
	.lightbox__header {
		padding: 0.5rem 0;
	}
	.news {
		padding: 0.5rem 0 23.625rem 0;
	}
	.news__header {
		z-index: 51;
	}
	.news__article {
		padding: 0 3.5rem 4.375rem 0;
		margin: 0 0 3.875rem 0;
	}
	.news__article > div > div {
		align-items: flex-end;
		gap: 7.875rem;
	}
	.news__article .swiper {
		max-width: 61.25rem;
		width: 62.6%;
	}
	.news__article .swiper + div {
		width: 23.3125rem;
	}
	.readmore-wrapper {
		display: block;
		margin-top: -1.625rem !important;
	}
	.project h1 {
		position: -webkit-sticky;
		position: sticky;
		top: 0.5rem;
	}
	.project__synopsis {
		gap: 3rem;
		margin: 6.875rem 0 0 0;
	}
	.project__synopsis aside {
		width: 22.0625rem;
	}
	.project__synopsis aside li p:first-child {
		width: 6.625rem;
	}
	.project__section:not(:last-child):not(.project__section--title) {
		margin-bottom: 6.625rem;
	}
	.project__section--multi-images {
		width: 59.25%;
	}
	.project__section--multi-images .grid {
		gap: 1.25rem;
	}
	.project__section--images {
		width: 59.25%;
	}
	.project__section--text {
		width: 22.0625rem;
		padding-right: 3.3125rem;
	}
	.project__section--details {
		margin-left: 0;
	}
	.project__section--details > div > div {
		border-top: 0.0625rem solid #000000;
		border-bottom: 0.0625rem solid #000000;
	}
	.project__section--details-heading {
		padding-top: 0.25rem;
	}
	.project__pull-quote, .project__wide-image, .project__images-text {
		margin-left: 0;
	}
	.project__images-text > div {
		gap: 4rem;
	}
	.project__full-width-image figcaption {
		margin: 0.75rem 0 0 13.125rem;
	}
	.project__pull-quote blockquote {
		width: 37.125rem;
	}
	.project__pull-quote cite {
		margin: 0.5rem 0 0 0;
	}
	[data-status] {
		margin: 1.0625rem 0 0 0;
	}
	.projects__grid, .projects__index {
		max-width: 92.5rem;
		margin: 0 0 0 auto;
		padding: 8.75rem 0 0 0;
	}
	.projects__filters {
		background: unset;
		gap: 1.375rem;
		padding: 0 0 0 9.0625rem;
		margin: 0 0 15rem 0;
		top: 0.5rem;
		position: absolute;
		z-index: 51;
	}
	.fixed-filters .projects__filters {
		position: fixed;
		top: 0;
		padding: 0.5rem 1.25rem 0.5rem 14.0625rem;
		width: 100%;
	}
	.related header {
		margin: 0 0 2.375rem 0;
		max-width: 92.5rem;
	}
	.related header h2 {
		text-decoration: unset;
	}
	.site-footer {
		padding: 0.4375rem 0;
	}
	.site-footer .flex {
		gap: 0.25rem;
	}
	.site-header {
		background: rgba(255, 255, 255, 0.2);
		padding: 0.5rem 0;
	}
	.site-header\:contrast.home .site-header {
		background: rgba(255, 255, 255, 0.2);
	}
	.home .site-header {
		background: rgba(255, 255, 255, 0);
	}
	.studio__lead {
		margin: 0 0 0 auto;
	}
	.studio__lead > div {
		gap: 1.25rem;
	}
	.studio__lead--standfirst {
		padding: 0 5rem 0 0;
		width: 50rem;
	}
	.studio__lead--image {
		margin: 0;
		width: 27.11%;
	}
	.studio__lead figcaption {
		margin: 0.4375rem 0 0 0;
	}
	.studio__nav {
		margin: 0 0 4.375rem 0;
		padding: 0.6875rem 0;
		max-width: 92.5rem;
		top: 0;
	}
	.studio__nav.wrap\:indent {
		padding-top: 0.5rem;
		padding-bottom: 0.6875rem;
	}
	.studio__nav .subnav-active {
		text-decoration: unset;
	}
	.studio__nav li:not(:last-child) {
		margin: 0 0.125rem 0 0;
	}
	.studio__nav li:not(:last-child)::after {
		content: ", ";
	}
	.studio__text-section:not(:last-child) {
		padding: 0;
		margin: 0 0 24.625rem 0;
	}
	.studio {
		padding: 8.5rem 0 25.3125rem 0;
	}
	.studio__sticky-group-section:not(:last-child) {
		min-height: 100vh;
		margin: 0 0 15.25rem 0 !important;
	}
	.studio__sections > div:not(:last-child) {
		min-height: 100vh;
		margin: 0 0 15.25rem 0;
	}
	.studio__sections {
		margin: 0 0 0 0;
		max-width: 96.1875rem;
		width: 100%;
	}
	.studio__sticky-image {
		width: 47.12%;
	}
	.studio__footer-lists {
		padding: 1rem 0 0 0;
	}
	.studio__footer-lists h2 {
		margin: 0 0 0.125rem 0;
	}
	.studio__footer-lists div + div {
		margin: 0.875rem 0 0 0;
	}
	.studio__text-gallery article {
		max-width: unset;
		width: 26.5rem;
	}
	.studio__text-gallery aside {
		width: 48.14%;
	}
	.copy > *:not(:last-child):not(li) {
		margin: 0 0 1.625rem 0;
	}
	.desktop {
		display: block;
	}
	.ghost {
		opacity: 0;
	}
	.mobile {
		display: none;
	}
	.wrap\:indent {
		padding: 0 0.9375rem 0 9.0625rem;
	}
	.wrap\:offset {
		padding: 0 0.9375rem 0 9.0625rem;
	}
}
@media screen and (min-width: 1080px) {
	.card__details > div {
		flex-direction: row;
	}
	.contact > div {
		padding: 8.75rem 3rem 4.375rem 14.0625rem;
	}
	.index-item__energy-data > div {
		flex-wrap: nowrap;
	}
	.index-item__energy-data > div > p:not(:last-child) {
		width: 6.0625rem;
	}
	.index-item__energy-data > div > p:last-child {
		width: 12.3125rem;
	}
	.index-item__energy-data > * {
		gap: 1.25rem;
	}
	.projects__filters {
		padding: 0 0 0 14.0625rem;
	}
	.wrap\:indent {
		padding: 0 0.9375rem 0 14.0625rem;
	}
	.wrap\:offset {
		padding: 0 0.9375rem 0 10.375rem;
	}
}
@media screen and (min-width: 1430px) {
	.studio__image-text article {
		min-width: 27rem;
	}
}
@media screen and (min-width: 1500px) {
	.index-item > .spacious {
		justify-content: flex-end;
	}
	.index-item__title {
		margin: 0 auto 0 0;
	}
	.index-item__category {
		max-width: 7.4375rem;
	}
	.index-item__type {
		max-width: 13.9375rem;
	}
	.index-item__energy-data {
		max-width: 39rem;
	}
	.projects__grid, .projects__index {
		margin: 0;
		max-width: unset;
	}
	.projects__grid .grid\:2 {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media screen and (max-width: 860px) {
	.text\:mb-small {
		font-size: 0.675rem;
		line-height: 1.437037037;
	}
	.text\:mb-tiny {
		font-size: 0.535625rem;
		line-height: 1.4410735123;
	}
	.text\:mb-title {
		font-size: 1.316875rem;
		line-height: 1.415282392;
		letter-spacing: -0.01316875rem;
	}
	.contact .text\:2 {
		font-size: 0.675rem;
		line-height: 1.437037037;
	}
	.contact__details--main > div > * {
		width: 50%;
	}
	.studio__image-text > .flex {
		gap: 1.9375rem;
		flex-direction: column-reverse;
	}
	.index-item:last-child {
		border-bottom: unset;
	}
	.index-item:first-child {
		border-top: 0.0625rem solid #000000;
	}
	.index-item > a {
		flex-direction: column;
	}
	.index-item__title {
		align-items: baseline;
		display: flex;
		flex-direction: column;
		width: 50%;
	}
	.index-item__title ul {
		display: flex;
		gap: 0.125rem;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.index-item__title ul li:not(:last-child)::after {
		content: ", ";
	}
	.index-item__energy-data > div > p:last-child {
		align-items: baseline;
		display: flex;
		gap: 0.375rem;
	}
	.index-item__energy-data > div > p:last-child .uppercase {
		text-transform: unset;
	}
	.index-item__energy-data > div > p:last-child .uppercase + * {
		color: #999999;
	}
	.index-item__energy-data > div > p:last-child .uppercase::after {
		content: ":";
	}
	.landing__copy {
		position: fixed;
		top: auto;
		left: 50%;
		bottom: 1.5625rem;
		transform: translateX(-50%);
		width: calc(100% - 1.875rem);
		margin: auto 0 0 0;
	}
	.landing__copy > div {
		font-size: 1.316875rem;
		line-height: 1.415282392;
		letter-spacing: -0.01316875rem;
	}
	.lightbox .swiper,
.lightbox figure {
		height: auto;
	}
	.news__article > div > div {
		flex-direction: column;
	}
	.news__article header {
		background: #ffffff;
		width: 100vw;
		margin: 0 0 0 -0.9375rem;
		padding: 1.3125rem 0.9375rem;
		position: -webkit-sticky;
		position: sticky;
		top: 3.3125rem;
		z-index: 5;
	}
	.news__article .swiper + div {
		padding: 1.375rem 0 6.125rem 0;
		max-width: 13.625rem;
	}
	.projects__index > div.flex {
		display: none;
	}
	.project .swiper {
		width: calc(100% - 1.875rem);
	}
	.project__synopsis {
		flex-direction: column-reverse;
	}
	.project__synopsis--text {
		padding: 1.375rem 3.4375rem 1.25rem 0;
	}
	.project__synopsis aside {
		border-top: 0.0625rem solid #000000;
		border-bottom: 0.0625rem solid #000000;
		padding: 1.375rem 0 1.25rem 0;
	}
	.project__synopsis aside li {
		align-items: baseline;
	}
	.project__section--multi-images .grid {
		padding: 0 0.9375rem;
	}
	.project__section--text {
		margin: 0 0 0 auto;
		max-width: 13.625rem;
	}
	.project__section--text {
		padding: 0.9375rem 0.9375rem 0 0;
	}
	.project__section--details::before {
		border-top: 0.0625rem solid #000000;
	}
	.project__section--details::after {
		border-bottom: 0.0625rem solid #000000;
	}
	.project__section--details::before, .project__section--details::after {
		content: " ";
		width: calc(100% - 1.875rem);
		margin: 0 auto;
		display: block;
	}
	.project__section--details > div > div > div {
		width: 42.6%;
	}
	.project__section--details > div > div > div p {
		padding: 0 0 0.125rem 0;
	}
	.project__section--details > div > div {
		column-gap: 1.5rem;
		row-gap: 1.1875rem;
		flex-wrap: wrap;
		margin: 0 0 0 auto;
		width: 13.625rem;
	}
	.project__section--details-heading {
		position: absolute;
		left: 0.9375rem;
		width: 8.875rem !important;
	}
	.project__pull-quote .wrap\:indent, .project__wide-image .wrap\:indent, .project__images-text .wrap\:indent {
		padding: 0;
	}
	.project__images-text > div {
		flex-direction: column;
	}
	.project__wide-image figcaption {
		margin: 0.75rem 0 0 0;
		padding: 0 0.9375rem;
	}
	.project__full-width-image figcaption {
		margin: 0.5rem 0 0 0;
		padding: 0 0.9375rem;
	}
	.project__full-width-image .wrap {
		padding: 0;
	}
	.project__pull-quote blockquote {
		margin: 0 0 0 auto;
		width: 13.625rem;
	}
	.project__pull-quote {
		padding: 0 0.9375rem;
	}
	.related::before {
		content: none;
	}
	.site-footer * {
		color: #000000;
	}
	.studio__lead > div {
		flex-direction: column;
	}
	.studio__lead--standfirst {
		margin: 0 0 11.375rem 0;
	}
	.studio__lead figcaption {
		margin: 0.5rem 0 0 0;
	}
	.studio__sticky-group figure {
		margin: 2.1875rem 0 0 0;
		position: relative;
		width: 100%;
	}
	.studio__sticky-group article {
		max-width: 19.5rem;
		width: 100%;
	}
	.studio__sticky-copy {
		width: 100%;
	}
	.studio__sticky-copy > .flex {
		flex-direction: column;
	}
	.studio__nav {
		background: #ffffff;
	}
	.studio__nav ul {
		padding: 1.25rem 0;
		gap: 0.75rem;
	}
	.studio__nav + div {
		margin: 1.625rem 0 0 0;
	}
	.studio__text-section {
		padding: 0 3.4375rem 0 0;
	}
	.studio__text-gallery > .flex {
		gap: 3.9375rem;
		flex-direction: column;
	}
	.studio__text-gallery .swiper-slide {
		width: 100% !important;
	}
}
@media (hover: hover) {
	.card > div:hover figure + figure,
.card a:hover figure + figure {
		opacity: 1;
	}
	.project figure:hover {
		opacity: 0.9;
	}
	.project .swiper figure:hover {
		opacity: 1;
	}
	.studio__nav li:hover {
		color: #000000;
	}
}
/*# sourceMappingURL=main.css.map */
