@font-face {
	font-family: "sofia-pro";
	src: url("/fonts/sofia-pro-bold.woff2") format("woff2"), url("/fonts/sofia-pro-bold.woff") format("woff"), url("/fonts/sofia-pro-bold.ttf") format("truetype");
	font-display: auto;
	font-style: normal;
	font-weight: 700;
	font-stretch: normal;
}

@font-face {
	font-family: "sofia-pro";
	src: url("/fonts/sofia-pro.woff2") format("woff2"), url("/fonts/sofia-pro.woff") format("woff"), url("/fonts/sofia-pro.ttf") format("truetype");
	font-display: auto;
	font-style: normal;
	font-weight: 400;
	font-stretch: normal;
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {}

body {
	font-size: 1rem;
	background-color: #fff;
	overflow-x: hidden;
	padding: 0;
	margin: 0;
	color: #1c1c1b;
}

body.has--cursor,
body.has--cursor * {
	/*cursor: none;*/
}

html>body {
	font-size: 16px;
	font-size: 1em;
	line-height: 1.4;
}

body.loading {}

body.is--fixed,
body.page-template-template-fixed-page {
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

html,
body,
article,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
figure,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
q,
small,
strong,
sub,
sup,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
footer,
input,
textarea,
select {
	border: 0 none;
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

p,
ul,
ol,
label,
input,
select,
textarea,
dd,
dt,
td,
th,
a,
caption,
span,
figcaption,
legend,
option,
h4,
h5,
h6 {
	color: #1d1d1b;
	font-family: "sofia-pro", sans-serif;
	font-weight: 400;
	font-size: 1rem;
}

h1,
h2,
h3,
.listing-item .title {
	font-family: "sofia-pro", sans-serif;
	font-weight: 700;
}

b,
strong {
	font-family: "sofia-pro", sans-serif;
	font-weight: 700;
}

h1 {
	font-size: 2rem;
}

h2 {
	font-size: 1.5rem;
	letter-spacing: .1rem;
}

h3 {
	font-size: 1.25rem;
	letter-spacing: .1rem;
}

.loading--overlay.is--active {
	z-index: 1000;
	-webkit-transition: opacity 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: opacity 300ms ease;
	-o-transition: opacity 300ms ease;
	transition: opacity 300ms ease;
	opacity: 1;
}

.loading--overlay.is--fadeout {
	z-index: 1000;
	-webkit-transition: opacity 800ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: opacity 800ms ease;
	-o-transition: opacity 800ms ease;
	transition: opacity 800ms ease;
	opacity: 0;
}

.has-text-align-center {
	text-align: center;
}

.has-text-align-right {
	text-align: right;
}

.togglenav {
	position: absolute;
	right: 1em;
	text-transform: uppercase;
	color: #2a3842;
	display: block;
	display: block;
	text-decoration: none;
	top: 2.5rem;
	width: 32px;
	height: 32px;
	z-index: 20;
	line-height: 1.1;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
	box-sizing: border-box;
}

.has--darkheader .togglenav {
	top: 1rem;
}

@media screen and (min-width: 64rem) {
	.togglenav {
		display: none;
	}
}

.togglenav__inner {
	width: 32px;
	height: 2px;
	top: 8px;
	left: 4px;
	display: block;
	background-color: #1d1d1b;
	position: absolute;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.togglenav__inner:before,
.togglenav__inner:after,
.closelink:before,
.closelink:after {
	content: "";
	height: 2px;
	width: 32px;
	position: absolute;
	left: 0px;
	top: -10px;
	background-color: #1d1d1b;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.togglenav__inner:after,
.closelink:after {
	width: 32px;
	top: 10px;
}

.togglenav.is--active .togglenav__inner {
	background-color: transparent;
	opacity: 1;
}

.togglenav.is--active .togglenav__inner:before,
.closelink:before {
	transform: rotate(-135deg);
	top: 0;
	left: 0;
	height: 2px;
	background-color: #1d1d1b;
}

.togglenav.is--active .togglenav__inner:after,
.closelink:after {
	transform: rotate(135deg);
	width: 32px;
	top: 0;
	left: 0px;
	height: 2px;
	background-color: #1d1d1b;
}

.togglenav span {
	padding-right: .25rem;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.togglenav.is--active span {
	opacity: 0;
}

header[role="banner"] {
	position: fixed;
	width: 100%;
	z-index: 210;
	top: 0;
	background-color: #fff;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.has--darkheader header[role="banner"] {}

.header__inner {
	position: relative;
	height: 6rem;
	width: 100%;
	background-color: #fff;
	border-bottom: 1px solid #1d1d1b;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

@media screen and (min-width: 64rem) {
	.header__inner {
		height: 6rem;
	}
}

.has--darkheader .header__inner {
	height: 3.25rem;
}

.logo {
	position: relative;
	padding-top: 1.68rem;
	padding-bottom: 1.4rem;
	margin-left: 1.25rem;
}

@media screen and (min-width: 120rem) {
	.logo {
		padding-left: 1rem;
	}
}

.has--darkheader .logo {
	padding-top: .68rem;
	padding-bottom: .4rem;
}

.custom-logo-link {
	display: block;
	height: auto;
	width: 15rem;
	opacity: 1;
	z-index: 10;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.has--darkheader .custom-logo-link {
	width: 11rem;
}

.logo--mobile {
	opacity: 0;
	width: 5rem;
}

@media screen and (min-width: 64rem) {
	.header__inner {
		height: 7.5rem;
	}

	.custom-logo-link {
		width: 22rem;
	}

	.has--darkheader .custom-logo-link {
		width: 11rem;
	}

	.logo {
		margin: 0 1.25rem;
	}
}

@media screen and (min-width: 120rem) {
	.header__inner>* {
		max-width: 120rem;
		margin: 0 auto;
	}

	.logo {
		margin: 0 auto;
	}
}

.wrapper--navigation,
.sub-menu {
	position: fixed;
	width: 100%;
	z-index: 0;
	padding-right: 0;
	overflow: hidden;
	height: auto;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
	background-color: #fff;
	top: 6rem;
}

.has--darkheader .wrapper--navigation {
	top: 3.25rem;
}

@media screen and (min-width: 64rem) {
	.wrapper--navigation {
		border-bottom: 1px solid #1d1d1b;
	}

	.wrapper--navigation:after {
		content: "";
		width: 100%;
		height: 1px;
		background-color: #1d1d1b;
		display: block;
	}

	.wrapper--navigation,
	.sub-menu {
		top: 6rem;
	}

	.has--darkheader .wrapper--navigation,
	.has--darkheader .sub-menu {
		top: 3.25rem;
	}
}

@media screen and (min-width: 64rem) {

	.wrapper--navigation,
	.sub-menu {
		top: 7.5rem;
	}
}

@media screen and (min-width: 120rem) {
	.wrapper--header__logo-symbols {
		position: relative;
		top: -6.75rem;
	}

	.wrapper--navigation {
		max-width: none;
	}

	nav[role="navigation"] {
		max-width: 120rem;
		margin: 0 auto;
	}
}

.is--navi-active .wrapper--navigation {
	height: 3rem;
	z-index: 2;
	border-bottom: 1px solid #1d1d1b;
}

.is--navi-active .header--contact nav {
	border-color: #fff;
}

nav[aria-label="Mainnav"] {
	position: relative;
	height: 0;
}

nav[aria-label="Mainnav"].is--active {
	height: auto;
}

@media screen and (min-width: 64rem) {
	nav[aria-label="Mainnav"] {
		height: auto;
	}
}

nav[aria-label="Postnav"] {
	height: 0;
	overflow: hidden;
}

nav[aria-label="Postnav"].is--active {}

.menu {
	opacity: 1;
	margin: 0 .25rem;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.is--navi-active .menu {
	opacity: 1;
}

nav ul li {
	display: block;
	flex: 0 0 100%;
	text-align: left;
}

nav ul li a {
	width: 100%;
	margin: 0 1rem;
	color: #1d1d1b;
	text-decoration: none;
	font-size: 1.125rem;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
	position: relative;
	padding: .75rem 0;
	display: block;
}

.current-menu-ancestor>a {
	text-decoration: underline;
}

@media screen and (min-width: 64rem) {
	.menu {
		flex-wrap: nowrap;
	}

	nav ul li {
		display: inline-block;
		flex: 0 0 auto;
		text-align: center;
	}


	nav ul li a {
		width: 10rem;
	}

	nav ul.menu>li:first-child,
	nav ul.sub-menu.is-equal-length>li:first-child {
		text-align: left;
	}

	nav ul.menu>li:last-child,
	nav ul.sub-menu.is-equal-length>li:last-child {
		text-align: right;
	}
}

.is--navi-active nav ul a {
	z-index: 10;
}

.sub-menu {
	position: relative;
	top: 0;
	left: 0;
	height: 0;
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	border-bottom: 0;
}

@media screen and (min-width: 64rem) {
	.sub-menu {
		top: 50px;
		flex-wrap: nowrap;
	}
}

.current_page_item .sub-menu {
	height: auto;
}

@media screen and (min-width: 64rem) {
	.sub-menu {
		position: absolute;
	}
}

@media screen and (min-width: 48rem) {
	.sub-menu {
		left: 0;
	}
}

.sub-menu ul {
	text-align: left;
	flex-wrap: wrap;
}

.sub-menu li {
	flex: 0 0 100%;
}

@media screen and (min-width: 64rem) {
	.sub-menu li {
		flex: 0 0 auto;
	}
}

.sub-menu li:first-child {
	text-align: left;
}

.sub-menu li:last-child {
	align-self: flex-end;
}

.sub-menu li a {
	text-align: inherit;
	display: inline-block;
	margin: 0 1.25rem;
}

@media screen and (min-width: 64rem) {
	.sub-menu li a {
		margin: 0 1.25rem;
	}

	.sub-menu li:first-child a {
		margin-left: 1.25rem;
	}

	.sub-menu li:last-child a {
		margin-right: 1.25rem;
	}
}

.link--scrolldown {
	display: none;
}

footer .link--social {
	display: none;
}

.nav__link--social,
.nav__service {
	display: none;
}

img {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
}

.pageheader {
	position: relative;
}

.main--start,
.pageheader,
.page-content,
.main--project,
.main--contact {
	background-color: #ebeae9;
}

.pageheader:before {
	content: "";
	position: absolute;
	top: -68px;
	left: 0;
	width: 100%;
	height: 68px;
	background-color: #ebeae9;
}

.page-content {
	min-height: calc(100vh - 24.75rem);
}

.home.pageheader {
	padding: 0 1.375rem;
	border-bottom: 1px solid #1d1d1b;
	max-width: 120rem;
	margin: 0 auto;
}

.main--team,
.main--team .pageheader,
.main--team .page-content {
	background-color: #f5c100;
}

.pageheader__hero-image,
.wrapper--pageheader-slider {
	position: relative;
	z-index: 1;
	width: 100%;
	overflow: hidden;
	margin-top: 10.25rem;
	padding: 0 1.375rem;
	border-bottom: 1px solid #1d1d1b;
}

.wrapper--pageheader-slider {
	padding: 0;
	border-bottom: none;
}

.landscape .wrapper--pageheader-slider {
	height: calc(100vh - 10.25rem);
}

@media screen and (min-width: 64rem) {

	.pageheader__hero-image,
	.wrapper--pageheader-slider {
		margin-top: 12rem;
	}

	.landscape .wrapper--pageheader-slider {
		height: calc(100vh - 12rem);
	}

	.pageheader:before {
		top: -74px;
		height: 74px;
	}
}

@media screen and (min-width: 64rem) {
	.pageheader:before {
		top: -50px;
		height: 50px;
	}
}

.sliderslidelink {
	position: absolute;
	left: 1.375rem;
	bottom: -1.5rem;
	width: 2.25rem;
	height: 1rem;
	z-index: 200;
	animation-duration: .9s;
	animation-direction: alternate;
	animation-delay: 0s;
	animation-iteration-count: infinite;
	animation-play-state: running;
}

.sliderslidelink:before {
	content: "";
	background: url("../img/icons/arrow.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	width: 2.25rem;
	height: 1.25rem;
	display: block;
	transform: rotate(180deg);
}

.next--sliderslidelink {
	left: auto;
	right: 1.375rem;
	bottom: -1.25rem;
}

.next--sliderslidelink:before {
	transform: none;
}

@media screen and (min-width: 1024px) {

	.sliderslidelink,
	.next--sliderslidelink {
		bottom: 2.5rem;
	}

	.sliderslidelink {
		left: 2rem;
		width: 3.5rem;
	}

	.sliderslidelink:before {
		width: 3.5rem;
	}

	@keyframes arrow-left {
		0% {
			transform: translate(0, 0);
		}

		100% {
			transform: translate(-1.8rem, 0);
		}
	}

	@keyframes arrow-right {
		0% {
			transform: translate(0, 0);
		}

		100% {
			transform: translate(1.8rem, 0);
		}
	}

	.next--sliderslidelink {
		right: 2rem;
		left: auto;
	}
}

.home .pageheader__header {
	background-color: #ebeae9;
}

.main--team .pageheader:before,
.main--contact .pageheader:before,
.main--project .pageheader:before {
	display: none;
}

.pageheader__text {
	padding: 2.75rem 0rem 0;
}

.pageheader__text p,
p.text--large,
p.text--large a {
	font-size: 1.75rem;
	line-height: 1.4;
}

p.text--large {
	padding-bottom: 6rem;
}

.main--contact p.text--large {
	margin-top: 6.25rem;
	margin-bottom: .25rem;
	padding-bottom: 0;
}

@media screen and (min-width: 1024px) {
	.pageheader__hero-image {
		max-height: 54rem;
	}

	nav ul li {}

	.main--contact p.text--large {
		margin-top: 6.25rem;
		margin-bottom: 6.25rem;
	}

	.pageheader__text p,
	p.text--large,
	p.text--large a {
		font-size: 3.25rem;
	}

	.pageheader__text,
	.pageheader__headline {
		padding: 7.75rem 1.375rem 0;
	}
}

.menu {
	list-style: none;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

a {
	color: #1d1d1b;
	font-size: 1.25rem;
	/*cursor: none;*/
}

a:hover {
	text-decoration: underline;
}

main[role="main"] {
	overflow: hidden;
	z-index: 20;
	position: relative;
	padding-top: 9rem;
}

main[role="main"].home,
.single main[role="main"] {
	padding-top: 0;
}

.products--page {
	padding-top: 12rem;
}

.pageheader__header-slider.hammerslide {
	overflow: hidden;
}

.gallery__item {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.header__logo-symbols {
	position: absolute;
	width: 12.5rem;
	top: 2.5rem;
	right: 1rem;
	height: 1.625rem;
	display: none;
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.has--darkheader .header__logo-symbols {
	top: .75rem;
}

@media screen and (min-width: 64rem) {
	.header__logo-symbols {
		display: block;
	}
}

@media screen and (min-width: 64rem) {
	.header__logo-symbols {
		top: 3.5rem;
	}

	.has--darkheader .header__logo-symbols {
		top: .75rem;
	}
}

.logo-symbols {
	width: 12.5rem;
	position: absolute;
	left: 0;
	top: 0;
}

.header__logo-symbols:hover .logo-symbols .circle-one {
	animation: cOne 1.2s linear infinite;
}

.header__logo-symbols:hover .logo-symbols .circle-three {
	animation: cThree 1.2s linear infinite;
}

.header__logo-symbols:hover .logo-symbols .circle-four {
	animation: cFour 1.2s linear infinite;
}

.ticker {
	width: 100%;
	overflow: hidden;
}

.wrapper--pageheader-slider .ticker {
	position: absolute;
	z-index: 10;
}

.wp-block-columns--row-four .ticker,
.wp-block-columns--row-five .ticker {
	position: absolute;
	z-index: 10;
	top: 2rem;
	left: 1.375rem;
	right: 1.375rem;
	width: calc(100% - 2.75rem);
}

@media screen and (min-width: 1024px) {
	.wp-block-columns--row-four .ticker {
		top: 5rem;
	}
}

.wp-block-columns--row-five .ticker {
	top: 3rem;
}

.entry-content__inner>.ticker--team {
	width: calc(100% - 2.75rem);
	padding: 0;
}

.ticker--category {
	top: 10.5rem;
}

.scrolltext {
	display: inline-block;
	transition: all .2s ease-out;
	font-size: 3.25rem;
}

.ticker--contact .scrolltext,
.ticker--project .scrolltext {
	font-size: 1.25rem;
}

.entry-content__inner>.ticker--contact {
	width: calc(100% - 2.75rem);
	padding: 0;
}

@media screen and (min-width: 64rem) {
	.wrapper--pageheader-slider .scrolltext {
		font-size: 3.25rem;
	}

	.ticker--team .scrolltext,
	.ticker--single .scrolltext {
		font-size: 12.5rem;
	}

	.ticker--category .scrolltext {
		font-size: 5.5rem;
	}
}

.marquee {
	height: 6.125rem;
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
	margin: 0;
}

.ticker--team .marquee,
.ticker--category .marquee,
.ticker--single .marquee {
	height: 7.5rem;
}

.ticker--contact .marquee {
	height: 3.75rem;
}

.marquee--inner {
	display: block;
	width: 200%;
	margin: 1rem 0 1rem;
	position: absolute;
	animation: marquee 40s linear infinite;
}

@media screen and (min-width: 48rem) {
	.marquee--inner {
		animation: marquee 40s linear infinite;
	}
}

@media screen and (min-width: 64rem) {
	.marquee--inner {
		animation: marquee 40s linear infinite;
	}

	.ticker--team .marquee,
	.ticker--category .marquee,
	.ticker--single .marquee {
		height: 17.5rem;
	}
}

.marquee div {
	float: left;
	overflow: hidden;
	white-space: nowrap;
}

@keyframes marquee {
	0% {
		left: 0;
	}

	100% {
		left: -100%;
	}
}

canvas {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 200;
}

canvas.canvas--contact {
	z-index: 0;
}

.entry-content__inner {
	margin: 0 auto;
	padding-top: 7.75rem;
}

.main--contact .entry-content__inner {
	position: relative;
}

.entry-content__inner>* {
	padding: 0 1.375rem;
	max-width: 120rem;
	margin: 0 auto;
}

.wp-block-columns {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	position: relative;
}

.wp-block-columns--row-four .column-5050+.column-5050 {
	align-items: flex-end;
	margin-bottom: 2rem;
	max-width: 25rem;
}

.wp-block-columns--row-four .slidertext {
	display: none;
}

.wp-block-columns--row-four .slidertext.is--active {
	display: block;
}

.wp-block-columns--row-five {
	align-items: flex-end;
	padding-top: 4rem;
}

@media screen and (min-width: 48rem) {
	.wp-block-columns--row-five {
		padding-top: 8rem;
	}
}

@media screen and (min-width: 64rem) {
	.wp-block-columns--row-five {
		padding-top: 0;
	}
}

.column-5050 {
	flex: 0 0 100%;
	display: flex;
	flex-wrap: wrap;
}

.column--product-details {
	position: relative;
}

.column-5050>* {
	padding-top: 5rem;
}

.wp-block-columns--row-six {
	padding-top: 2rem;
	padding-bottom: 11.25rem;
}

.wp-block-columns--row-six .column-5050 {
	flex: 0 0 100%;
}

.wp-block-columns--row-six .wp-block-column.column-5050 .column-5050--left {
	padding-right: 0;
}

.wp-block-columns--row-six .wp-block-image {
	max-width: 5rem;
	width: 100%;
}

.wp-block-columns--row-six .wp-block-image {
	margin-left: 1.5rem;
	margin-right: 1.5rem;
	margin-top: .5rem;
	margin-bottom: .5rem;
}

.galleryslider {
	overflow: hidden;
	position: relative;
	flex: 0 0 100%;
}

.galleryslider.has--slider {
	cursor: grab;
}

.galleryslider__slider {
	position: absolute;
	display: block;
	margin: 0;
	padding: 0;
	-webkit-transition: transform 50ms ease-in;
	-webkit-transition-delay: ease-in, 0s;
	-moz-transition: transform 50ms ease-in;
	-o-transition: transform 50ms ease-in;
	transition: transform 50ms ease-in;
}

.galleryslider__slider.is--autosliding {
	-webkit-transition: transform 400ms ease-in;
	-webkit-transition-delay: ease-in, 0s;
	-moz-transition: transform 400ms ease-in;
	-o-transition: transform 400ms ease-in;
	transition: transform 400ms ease-in;
}

.image--slider {
	float: left;
	position: relative;
}

.image--slider:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: block;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.galleryslider__slidelink {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 2.25rem;
}

.galleryslider__slidelink--prev svg {
	transform: rotate(180deg);
}

.galleryslider__slidelink--next {
	left: auto;
	right: 0;
}

.galleryslider__slidelink.is--inactive {
	display: none;
}

@media screen and (min-width: 768px) {
	.wp-block-columns--row-six .column-5050 {
		flex: 0 0 50%;
	}
}

@media screen and (min-width: 1024px) {
	.wp-block-columns--row-six .column-5050 {
		flex: 0 0 50%;
	}

	.wp-block-columns+.wp-block-columns {
		padding-top: 11.25rem;
	}

	.wp-block-columns--row-five {
		padding-top: 0;
		margin-top: 11.25rem;
	}

	.column-5050 {
		flex: 0 0 50%;
	}

	.column-5050>* {
		padding-top: 0;
	}

	figure.column-5050--left,
	.wp-block-column.column-5050 p.column-5050--left {
		flex: 0 0 50%;
		align-self: flex-end;
	}

	.wp-block-column.column-5050 p.column-5050--left {
		padding-right: 50%;
	}

	.has--slider .wp-block-column.column-5050 p.column-5050--left {
		padding-bottom: 2rem;
	}

	figure.column-5050--right,
	div.column-5050--right,
	p.column-5050--right {
		padding-left: 50%;
		align-self: flex-end;
	}

	.column-5050 .column-5050--left.galleryslider {
		flex: 0 0 50%;
	}

	div.column-5050--right.galleryslider {
		padding-left: 0;
		margin-left: 50%;
		flex: 0 0 50%;
	}

	figure.column-5050--top {
		padding-bottom: 9.375rem;
		flex: 0 0 50%;
	}

	figure.column-5050--bottom {
		padding-top: 9.375rem;
		flex: 0 0 50%;
	}

	.wp-block-column p {
		padding-right: 1.375rem;
		text-align: justify;
	}

	.wp-block-column+.wp-block-column p {
		padding-right: 0;
		padding-left: 1.375rem;
	}

	.wp-block-columns--row-three .wp-block-column+.wp-block-column p {
		padding-left: 0;
	}

	.wp-block-columns .wp-block-column .padding-none {
		padding: 0;
	}

	.padding-bottom {
		padding-bottom: 10rem;
	}

}

figure.padding-bottom {
	flex: 0 0 100%;
}

@media screen and (min-width: 1200px) {}

.list--product-titles {
	list-style-type: none;
}

@media screen and (min-width: 85.375rem) {
	.list--product-titles {
		margin-left: 50%;
	}
}

.listitem--product-title {
	font-size: 3.25rem;
}

.listitem--product-title.is--active {
	color: #f5c100;
	text-decoration: underline;
}

.list__product-info {
	position: relative;
	overflow: hidden;
	height: 0;
	-webkit-transition: height 300ms ease-in;
	-webkit-transition-delay: ease-in, 0s;
	-moz-transition: height 300ms ease-in;
	-o-transition: height 300ms ease-in;
	transition: height 300ms ease-in;
}

.image--product {
	position: absolute;
	opacity: 0;
	z-index: 0;
	bottom: 7.25rem;
	left: 50%;
	width: 50%;
}

.text--product {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 50%;
	padding-left: 1.3475rem;
	opacity: 0;
	z-index: 0;
}

.text--product.is--clone,
.image--product.is--clone {
	position: relative;
	left: auto;
	width: 100%;
	bottom: auto;
	top: auto;
	padding-left: 0;
}

@media screen and (min-width: 64rem) {
	.image--product {
		bottom: 0;
		left: 0;
	}
}

.image--product.is--active,
.text--product.is--active {
	opacity: 1;
	z-index: 1;
}

.has--no-touchevents .has--cursor {
	cursor: none;
}

.has--no-touchevents .cursor {
	position: fixed;
	width: 1rem;
	height: 1rem;
	background-color: #f5c100;
	border-radius: 50%;
	border: 2px solid #f5c100;
	z-index: 9999;
	cursor: none;
	pointer-events: none;
	mix-blend-mode: multiply;
	background-blend-mode: multiply;
	transform: translate(-50%, -50%);
}

.has--no-touchevents .cursor.click {
	background-color: transparent;
}

.has--no-touchevents .cursor.hover {
	background-color: #000;
	border-color: #000;
}

.wrapper--slider {
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
}

.sliderlink {
	width: 3rem;
	height: 3rem;
	position: absolute;
	top: 50%;
	left: 2rem;
	display: none;
}

.history .sliderlink {
	top: .5rem;
}

@media screen and (min-width: 768px) {
	.history .sliderlink {
		top: 1.5rem;
	}
}

.sliderlink.is--active {
	display: inline-block;
}

.sliderlink--prev {
	transform: rotate(180deg);
}

.sliderlink--next {
	left: auto;
	right: 2rem;
}

.sliderlink line {
	stroke: #b41826;
}

.has--slider .display-posts-listing {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-transition: transform 500ms ease-out;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: transform 500ms ease-out;
	-o-transition: transform 500ms ease-out;
	transition: transform 500ms ease-out;
}

.listing-item__inner {
	width: 100%;
	max-width: 64rem;
	margin: 0 auto;
}

.listing-item__inner>* {
	cursor: grab;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-o-user-select: none;
	user-select: none;
}

.post-filter-nav,
.ajax-load-more-wrap,
.display-posts-listing {
	display: none;
}

.nav--category {
	position: relative;
}

.nav--category li {
	list-style-type: none;
	width: 100%;
	border-bottom: 1px solid #1d1d1b;
	padding: 2.25rem 0;
}

.nav--category li:first-child {
	border-top: 1px solid #1d1d1b;
}

.nav--category a {
	text-decoration: none;
	font-size: 2rem;
	position: relative;
	z-index: 20;
}

.nav--category a:hover,
.nav--category a.is--active {
	color: #f5c100;
}

.wp-block-image--category {
	position: absolute;
	opacity: 0;
	z-index: 0;
	top: 50%;
	left: 50%;
	display: none;
	width: auto;
	transform: translate(-50%, -45%);
	-webkit-transition: all 300ms ease;
	-webkit-transition-delay: ease, 0s;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.wp-block-image--category img {
	max-width: none;
	width: auto;
	max-height: 100%;
	height: 100%;
}

.wp-block-image--category.is--active {
	transform: translate(-50%, -50%);
	opacity: 1;
	z-index: 1;
}

@media screen and (min-width: 48rem) {
	.wp-block-image--category {
		display: block;
	}
}

.project-list,
.project-detail {
	position: relative;
	padding-top: 10rem;
}

.link-list {
	padding-top: 5rem;
}


.link-list div {
	text-align: center;
}

.project-list.is--inactive {
	display: none;
}

.project-detail {
	display: none;
	padding-top: 10rem;
}

.project-detail.is--active {
	display: block;
}

.alm-reveal,
.list--posts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0 auto 0;
	max-width: 86.25rem;
}

.category-description {
	margin-bottom: 12.5rem;
}

.ajax-load-more-wrap .alm-listing .alm-reveal li,
.post-list-item {
	flex: 0 0 100%;
	margin: 0 0 3.75rem;
}

.ajax-load-more-wrap .alm-listing .alm-reveal>li img {
	position: relative;
	border-radius: 0;
}

.alm-reveal .entry-meta,
.alm-reveal p {
	display: none;
}

.alm-reveal h3,
.post-headline {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

.alm-reveal a,
.post-headline a {
	text-decoration: none;
}

.alm-reveal li:hover a,
.post-list-item:hover {
	color: #f5c100;
	text-decoration: underline;
}

.alm-reveal li:hover h3:after,
.post-list-item .post-headline:after {
	content: "";
	background: url("../img/icons/arrow-yellow-right.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	height: 1rem;
	width: 3rem;
	display: none;
	vertical-align: middle;
}

.post-list-item:hover .post-headline__link {
	color: #f5c100;
}

.post-list-item:hover .post-headline:after {
	display: inline-block;
}

.ajax-load-more-wrap .alm-btn-wrap .alm-load-more-btn {
	background-color: transparent;
	color: #1d1d1b;
	text-decoration: underline;
}

.ajax-load-more-wrap .alm-btn-wrap .alm-load-more-btn:hover {
	background-color: transparent;
	color: #1d1d1b;
	text-decoration: underline;
}

@media screen and (min-width: 768px) {

	.ajax-load-more-wrap .alm-listing .alm-reveal li,
	.post-list-item {
		flex: 0 0 50%;
		margin: 0 0 3.75rem;
	}

	.alm-listing .alm-reveal li:nth-child(2n+1),
	.post-list-item:nth-child(2n+1) {
		padding: 0 1.125rem 0 0;
	}

	.alm-listing .alm-reveal li:nth-child(2n+2),
	.post-list-item:nth-child(2n+2) {
		padding: 0 0 0 1.125rem;
	}
}

@media screen and (min-width: 1024px) {

	.ajax-load-more-wrap .alm-listing .alm-reveal li,
	.post-list-item {
		flex: 0 0 33.33%;
		margin: 0 0 3.75rem;
	}

	.alm-listing .alm-reveal li:nth-child(3n+1),
	.post-list-item:nth-child(3n+1) {
		padding: 0 1.5rem 0 0;
	}

	.alm-listing .alm-reveal li:nth-child(3n+2),
	.post-list-item:nth-child(3n+2) {
		padding: 0 .75rem;
	}

	.alm-listing .alm-reveal li:nth-child(3n+3),
	.post-list-item:nth-child(3n+3) {
		padding: 0 0 0 1.5rem;
	}

	.project-list {
		padding-top: 5rem;
	}

	.project-detail {
		padding-top: 7rem;
	}
}

.listing-item {
	max-width: 57rem;
	margin: 0 auto;
	list-style-type: none;
}

.easy-newsletter form {
	position: relative;
	margin-top: 2rem;
	margin-bottom: 2rem;
	width: 100%;
	border-bottom: 1px solid #1d1d1b;
}

@media screen and (min-width: 48rem) {
	.easy-newsletter form {
		width: 70%;
	}
}

.textwidget .easy-newsletter .input-field {
	margin-bottom: 0;
}

.easy-newsletter .input-field input {
	width: 100%;
	font-size: 1.75rem;
}

.easy-newsletter .input-field input:focus {
	outline: none;
}

.input-submit {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0, -50%);
}

.easy-newsletter .input-submit button {
	width: 2rem;
	background: none;
	border: none;
}

.easy-newsletter label {
	display: none;
}

.easy-newsletter form input::-webkit-input-placeholder {
	color: #1d1d1b;
	opacity: 1;
}

.easy-newsletter form input::-moz-placeholder {
	color: #1d1d1b;
	opacity: 1;
}

.easy-newsletter form input:-ms-input-placeholder {
	color: #1d1d1b;
	opacity: 1;
}

.easy-newsletter .input-submit form input:-moz-placeholder {
	color: #1d1d1b;
	opacity: 1;
}

.project-detail .entry-content__inner {
	padding-top: 1.5rem;
}

.blocks-gallery-grid {
	list-style-type: none;
	max-width: 65rem;
	margin: 1.5rem auto 0;
}

.entry-content--single .blocks-gallery-item {
	padding-top: 2rem;
}

.entry-content--single .blocks-gallery-item:first-child {
	padding-top: 0;
}

.pagefooter-nav {
	max-width: 65rem;
	margin: 0 auto;
	position: relative;
	padding-bottom: 9rem;
}

.link--back-project-list {
	display: block;
	max-width: 8rem;
	margin: 3.5rem auto 0;
}

.pagefooter__postnav a[rel="next"],
.pagefooter__postnav a[rel="prev"] {
	position: absolute;
	top: -2rem;
	right: -2rem;
	width: 3.5rem;
	height: 1.25rem;
}

.link--previous-post {
	text-align: right;
}

.pagefooter__postnav svg {
	width: 3.5rem;
	height: 1.25rem;
	display: block;
}

.pagefooter__postnav a[rel="next"] {
	right: auto;
	left: 0;
}

.pagefooter__postnav a[rel="next"] svg {
	transform: rotate(180deg);
}

@media screen and (min-width: 64rem) {
	.entry-content--single .blocks-gallery-grid {
		display: grid;
		grid-template-columns: 50% 50%;
		grid-column-gap: 2rem;
		/* grid-row-gap: 2rem; */
		margin: 1.5rem auto 0;
	}

	.entry-content--single .blocks-gallery-item:nth-child(3n+1) {
		grid-column: 1/3;
	}
}

.container--team {
	padding: 8rem 1.375rem 11rem;
	position: relative;
}

.container--team .wp-block-group {
	list-style-type: none;
	width: 100%;
	border-bottom: 1px solid #1d1d1b;
	padding: 2.25rem 0;
}

.container--team .wp-block-group:first-child {
	border-top: 1px solid #1d1d1b;
}

.container--team .wp-block-group .wp-block-group__inner-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	position: relative;
}

.container--team p:nth-child(1) {
	flex: 0 0 100%;
}

.container--team p:nth-child(2) {
	flex: 0 0 100%;
}

.container--team p:nth-child(3) {
	flex: 0 0 100%;
}

.container--team .wp-block-group:hover p,
.container--team .wp-block-group.is--active p {
	color: #fff;
}

.container--team .wp-block-group:hover a,
.container--team .wp-block-group.is--active a {
	color: #fff;
}

.container--team .wp-block-image {
	position: absolute;
	max-width: 18.75rem;
	left: 50%;
	top: 100%;
	display: none;
	z-index: 5;
}

.container--team .wp-block-group:nth-child(1n+5) .wp-block-image {
	top: auto;
	bottom: 100%;
}

.container--team .wp-block-group:hover .wp-block-image,
.container--team .wp-block-group.is--active .wp-block-image {
	display: block;
}

.container--team p {
	font-size: 2rem;
	line-height: 1.1;
}

.container--team a {
	text-decoration: none;
	font-size: 1.25rem;
	line-height: 1.1;
}

@media screen and (min-width: 1024px) {
	.container--team p:nth-child(1) {
		flex: 0 0 57%;
	}

	.container--team p:nth-child(2) {
		flex: 0 0 20%;
	}

	.container--team p:nth-child(3) {
		flex: 0 0 23%;
	}

	.container--team p {
		font-size: 3.375rem;
	}
}

.columns--contact {
	padding: 5rem 1.375rem;
}

.columns--contact .wp-block-column {
	flex: 0 0 100%;
	padding-top: 2rem;
}

.columns--contact .wp-block-column p {
	padding: 0;
}

.columns--contact .wp-block-column p:first-child {
	text-decoration: underline;
}

.columns--contact a,
.main--service a {
	font-size: 1rem;
	text-decoration: none;
}

@media screen and (min-width: 1024px) {
	.columns--contact {
		padding: 5rem 1.375rem;
	}

	.columns--contact .wp-block-column {
		flex: 0 0 25%;
		padding-top: 0;
	}

	.columns--contact .wp-block-column:first-child {
		flex: 0 0 35%;
	}

	.columns--contact .wp-block-column:last-child {
		flex: 0 0 15%;
	}

	.columns--contact .wp-block-column:last-child p {
		text-align: right;
	}
}

.wrapper-footer {
	border-top: 1px solid #1d1d1b;
}

footer {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 1.5rem 1.375rem 1.375rem;
	max-width: 120rem;
	margin: 0 auto;
}

.footer__column {
	padding-top: 2rem;
}

.footer__column--1 {
	flex: 0 0 100%;
	padding-top: 0;
}

.footer__column--2 {
	flex: 0 0 100%;
	display: flex;
	flex-direction: row;
	align-items: baseline;
	justify-content: left;
}

.footer__column--3 {
	flex: 0 0 100%;
	display: flex;
	flex-direction: row;
	align-items: start;
}

.footer__column--1 p:nth-child(2) {
	padding: 1.5rem 0;
}

.footer__column--2 h3 {
	font-size: 1rem;
	text-decoration: underline;
	font-family: "sofia_proregular", sans-serif;
}

.footer__column--3 .widget_media_image {
	max-width: 2.5rem;
	padding-bottom: .5rem;
	margin-left: 1rem;
}

.footer__column--3 .widget_media_image+.widget_media_image+.widget_media_image+.widget_media_image {
	padding-bottom: 2rem;
}

.footer__column--3 li {
	width: 100%;
	text-align: left;
}

footer .menu {
	flex-wrap: wrap;
	justify-content: normal;
	margin: 0;
}

footer a {
	font-size: 1rem;
	text-decoration: none;
}

footer a:hover {
	text-decoration: underline;
}

@media screen and (min-width: 768px) {
	.footer__column {
		padding-top: 0;
	}

	.footer__column--1 {
		flex: 0 0 30%;
	}

	.footer__column--2 {
		flex: 0 0 40%;
		display: flex;
		flex-direction: row;
		align-items: baseline;
		justify-content: center;
	}

	.footer__column--3 {
		flex: 0 0 30%;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}

	.footer__column--3 li {
		width: 100%;
		text-align: right;
	}
}

.footer_image {
	height: 5rem !important;
	width: auto;
	padding: 0 1rem;
}

.main--service .pageheader__inner {
	max-width: 120rem;
	margin: 0 auto;
	padding: 0 1rem;
}

.main--service h2.pageheader__headline {
	position: relative;
	top: initial;
	left: initial;
	transform: none;
	color: #1d1d1b;
	padding-top: 2rem;
}

.main--service .entry-content__inner {
	margin: 0 auto;
}

.main--service .entry-content__inner p {
	padding-top: .7rem;
}

.main--service .entry-content__inner h3 {
	padding-top: 3rem;
}

.main--service .entry-content__inner h4 {
	padding-top: 1.5rem;
}

.main--service .entry-content__inner {
	padding-bottom: 2rem;
}

.main--service .pagefooter-nav {
	padding-bottom: 1rem;
}

@media screen and (min-width: 1400px) {
	.main--service .pageheader__inner {
		padding: 0;
	}

	.main--service .entry-content__inner {
		padding: 0 0 2rem 0;
	}
}

@media screen and (max-width: 63.94rem) {

	.pagefooter__postnav a[rel="next"],
	.pagefooter__postnav a[rel="prev"] {
		right: 0;
	}


	.home.pageheader {
		padding: 0;
	}

	.entry-content__inner {
		padding-top: 3rem;
	}

	.pageheader__hero-image,
	.wrapper--pageheader-slider {
		margin-top: 6rem;
	}

	.wp-block-columns--row-four .ticker,
	.wp-block-columns--row-five .ticker {
		top: 3rem;
	}

	.wrapper--pageheader-slider .ticker {
		top: -1.5rem;
	}

	.wp-block-columns--row-four {
		padding-top: 4rem;
	}

	.column-5050--left {
		padding-top: 1rem;
	}

	figure.column-5050--left,
	figure.column-5050--top,
	figure.column-5050--bottom,
	.wp-block-column.column-5050 p.column-5050--left {
		flex: 0 0 100%;

	}

	.wp-block-columns--row-six .column-5050>* {
		padding-top: .5rem;
	}

	.wp-block-columns--row-one .column-5050:first-child figure {
		padding-top: 0rem;
	}

	main[role="main"] {
		padding-top: 6rem;
	}

	.category-description {
		margin-bottom: 3rem;
	}

	.project-list,
	.project-detail {
		padding-top: 10rem;
	}

	.container--team {
		padding: 3rem 1.375rem 8rem;
	}
}

a[name] {
	padding-top: 7rem;
	margin-top: -7rem;
	display: inline-block;
}

.linknextproduct {
	background: url("../img/icons/arrow.svg");
	width: 4rem;
	display: inline-block;
}

.linknextproduct:hover polygon {
	fill: red;
}

.heading--large {
	font-size: 12.5rem;
}

.lazy-img {
	filter: blur(8px);
	transition: filter 0.2s ease-in;
}

.lazy-picture[data-loaded] .lazy-img {
	filter: unset;
}


.button-link {
	display: inline-block;
	margin: 20px 0;
	padding: 10px 20px;
	/* Adjust the padding as needed */
	border: 2px solid black;
	/* Black border */
	border-radius: 20px;
	/* Rounded corners */
	width: 15em;
	/* Fixed width for all buttons */
	text-align: center;
	/* Center text horizontally */
	text-decoration: none;
	/* Remove underline for links */
	color: black;
	/* Text color */

}

/* Hover effect */
.button-link:hover {
	background-color: black;
	/* Background color on hover */
	color: white;
	/* Text color on hover */
}

/* Promotions page table */
.promotions {
	margin-top: 20px;
}

.promotions h2 {
	font-size: 1.5em;
	margin-bottom: 10px;
}

.promotions table {
	width: auto;
	border-collapse: collapse;
}

.promotions td {
	text-align: left;
}


.promotions td.price {
	text-align: right;
	padding-left: 1rem;
}