:root {
	--bg: #1b1b1b;
	--text: #999
}

[data-theme="light"] {
	--bg: #fff;
	--text: #333
}

@font-face {
	font-family: "Tiempos Headline Bold";
	src: url("../fonts/tiempos-headline-web-bold.woff2") format("woff2"),
		url("../fonts/tiempos-headline-web-bold.woff") format("woff");
	font-weight: bold;
	font-style: normal;
	font-display: block;
}

@font-face {
	font-family: "Founders Grotesk Text Light";
	src: local('Founders Grotesk Text Light'), local('Founders-Grotesk-Text-Light'),
		url("../fonts/founders-grotesk-text-light.woff2") format("woff2"),
		url("../fonts/founders-grotesk-text-light.woff") format("woff");
	font-weight: initial;
	font-style: normal;
	font-display: auto;
}

@font-face {
	font-family: "Founders Grotesk Text Regular";
	src: local('Founders Grotesk Text Regular'), local('Founders-Grotesk-Text-Regular'),
		url("../fonts/founders-grotesk-text-regular.woff2") format("woff2"),
		url("../fonts/founders-grotesk-text-regular.woff") format("woff");
	font-weight: initial;
	font-style: normal;
	font-display: auto;
}

@font-face {
	font-family: "Founders Grotesk Text Medium";
	src: local('Founders Grotesk Text Medium'), local('Founders-Grotesk-Text-Medium'),
		url("../fonts/founders-grotesk-text-medium.woff2") format("woff2"),
		url("../fonts/founders-grotesk-text-medium.woff") format("woff");
	font-weight: initial;
	font-style: normal;
	font-display: auto;
}

html {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
	width: 100%;
	height: 100%;
	overscroll-behavior-y: none;
}

body {
	font-family: Founders Grotesk Text Light, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
	position: relative;
	width: 100%;
	min-width: 320px;
	background-color: var(--bg, #1b1b1b);
	color: var(--text, #999);
	font-size: 100%;
	line-height: 1.5;
	overflow-x: hidden;
	word-wrap: break-word;
	font-feature-settings: "onum" 1, "tnum" 1, "kern" 1, "liga";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overscroll-behavior-y: none;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: 200%;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1154 1154' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='%23FFF' stroke-width='.25' fill='none' fill-rule='evenodd' opacity='.04' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='408' cy='745' r='238'/%3E%3Ccircle cx='745' cy='408' r='238'/%3E%3Ccircle cx='373' cy='780' r='288'/%3E%3Ccircle cx='780' cy='373' r='288'/%3E%3Cpath d='M338 338c-131 0-238 107-238 238s107 238 238 238 238-107 238-238-106-238-238-238zm476 0c-131 0-238 107-238 238s107 238 238 238 238-107 238-238-105-238-237-238h-1z'/%3E%3Ccircle cx='288' cy='576' r='288'/%3E%3Cpath d='M864 288c-159 0-288 129-288 288s129 288 288 288 288-129 288-288-130-288-287-288h-1z'/%3E%3Ccircle cx='408' cy='408' r='238'/%3E%3Ccircle cx='745' cy='745' r='238'/%3E%3Ccircle cx='373' cy='373' r='288'/%3E%3Ccircle cx='780' cy='780' r='288'/%3E%3Ccircle cx='576' cy='338' r='238'/%3E%3Ccircle cx='576' cy='814' r='238'/%3E%3Ccircle cx='576' cy='288' r='288'/%3E%3Ccircle cx='576' cy='864' r='288'/%3E%3Ccircle cx='576' cy='577' r='477'/%3E%3Cpath d='M1101 577c0-288-233-521-521-521S59 289 59 577s233 521 521 521c284 0 521-236 521-524v3z'/%3E%3C/g%3E%3C/svg%3E");
	-webkit-transition: background-color 0.4s ease, color 0.4s ease;
	-moz-transition: background-color 0.4s ease, color 0.4s ease;
	-ms-transition: background-color 0.4s ease, color 0.4s ease;
	-o-transition: background-color 0.4s ease, color 0.4s ease;
	transition: background-color 0.4s ease, color 0.4s ease;
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.fadeIn {
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
}

@media screen and (max-width: 767px) {
	body {
		background-size: 400%;
	}
}

.body_lock-scroll {
	overflow-y: hidden;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.body_custom-cursor {
	cursor: none;
}

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

.container-fluid {
	padding-left: 120px;
	padding-right: 120px;
}

.container {
	padding-left: 25px;
	padding-right: 25px;
}

.row {
	margin-left: -25px;
	margin-right: -25px;
}

.col,
[class*='col-'] {
	padding-left: 25px;
	padding-right: 25px;
}

.no-gutters {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.page-wrapper {
	z-index: 50;
}

@media screen and (max-width: 1400px) {
	.container-fluid {
		padding-left: 80px;
		padding-right: 80px;
	}
}

@media screen and (max-width: 1200px) {
	.container-fluid {
		padding-left: 50px;
		padding-right: 50px;
	}
}

@media screen and (max-width: 991px) {

	.container-fluid,
	.container {
		padding-left: 30px;
		padding-right: 30px;
	}

	.row {
		margin-left: -15px;
		margin-right: -15px;
	}

	.col,
	[class*='col-'] {
		padding-left: 15px;
		padding-right: 15px;
	}
}


.bg-white {
	background-color: #ffffff;
}

.bg-light {
	background-color: #f2f2f2;
}

.bg-dark {
	background-color: var(--bg, #1b1b1b);
	-webkit-transition: background-color 0.4s ease, color 0.4s ease;
	-moz-transition: background-color 0.4s ease, color 0.4s ease;
	-ms-transition: background-color 0.4s ease, color 0.4s ease;
	-o-transition: background-color 0.4s ease, color 0.4s ease;
	transition: background-color 0.4s ease, color 0.4s ease;

}

.bg-dark-2 {
	background-color: #191919;
	-webkit-transition: background-color 0.4s ease, color 0.4s ease;
	-moz-transition: background-color 0.4s ease, color 0.4s ease;
	-ms-transition: background-color 0.4s ease, color 0.4s ease;
	-o-transition: background-color 0.4s ease, color 0.4s ease;
	transition: background-color 0.4s ease, color 0.4s ease;

}

.bg-black {
	background-color: #151515;
}

.bg-black-0 {
	background-color: #0f0f0f;
}

.bg-black-1 {
	background-color: #121212;
}


div[class*='bg-image-'] {
	background-size: cover;
	background-position: center center;
}


.button {
	position: relative;
	display: inline-block;
	border-radius: 100px;
	padding: 20px 60px;
	font-size: 12px;
	letter-spacing: .125em;
	text-transform: uppercase;
	text-align: center;
	-webkit-transition: all 0.6s ease;
	-moz-transition: all 0.6s ease;
	-ms-transition: all 0.6s ease;
	-o-transition: all 0.6s ease;
	transition: all 0.6s ease;
	cursor: pointer;
	color: #fff;
	background: #131313;
	outline: none;
	border: none;
	text-decoration: none;
	overflow: hidden;
	border: 1px solid #131313;
	font-family: Founders Grotesk Text Medium, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
}


.button:before,
.button:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	background: #bc956a;
	z-index: -1;
	transform: translate3D(0, -100%, 0);
	-webkit-transition: all 0.6s ease;
	-moz-transition: all 0.6s ease;
	-ms-transition: all 0.6s ease;
	-o-transition: all 0.6s ease;
	transition: all 0.6s ease;
}

.button:before {
	background: #131313;
	z-index: -2;
	border-radius: 100px;
	transform: translate3D(0, 0, 0);
}

.button:hover,
.button:focus {
	color: #fff;
	transform: translate3D(0, 0, 0);
}

.button:hover:after {
	transform: translate3D(0, 0, 0);
	-webkit-transition: all 0.6s ease;
	-moz-transition: all 0.6s ease;
	-ms-transition: all 0.6s ease;
	-o-transition: all 0.6s ease;
	transition: all 0.6s ease;
}

.button:after {
	top: 0;
	z-index: -1;
	transform: translate3D(-101%, 0, 0);
}

.button:hover:after {
	transform: translate3D(0, 0, 0);
	-webkit-transition: all 0.6s ease;
	-moz-transition: all 0.6s ease;
	-ms-transition: all 0.6s ease;
	-o-transition: all 0.6s ease;
	transition: all 0.6s ease;
}

@media only screen and (max-width: 767px) {
	.button {
		width: 100%;
		font-size: 10px;
	}
}

.button:focus {
	outline: none;
}

.cursor {
	position: fixed;
	top: 0;
	left: 0;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	z-index: 10000;
	display: none;
}

.cursor__follower {
	position: relative;
	width: 48px;
	height: 48px;
	border-radius: 100%;
}

.cursor__follower svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 100%;
}

.cursor__follower svg #inner,
.cursor__follower svg #outer {
	fill: none;
	stroke-linecap: butt;
}

.cursor__follower svg #inner {
	stroke-width: 2px;
	stroke: rgba(255, 255, 255, 0.4);
	fill: #fff;
	fill-opacity: 0;
	opacity: 0.4;
	-webkit-transition: stroke ease .4s;
	-moz-transition: stroke ease .4s;
	-ms-transition: stroke ease .4s;
	-o-transition: stroke ease .4s;
	transition: stroke ease .4s;
}

.cursor__follower svg #outer {
	stroke-width: 3px;
	stroke: #fff;
}


.figure-logo {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 200px;
	height: 200px;
	padding: 30px;
}

@media screen and (max-width: 1200px) {
	.figure-logo {
		width: 170px;
		height: 170px;
		max-width: 100%;
	}
}

.work_row {
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	transition: border 0.4s ease;
	-webkit-transition: border 0.4s ease;
	-moz-transition: border 0.4s ease;
	-ms-transition: border 0.4s ease;
	-o-transition: border 0.4s ease;
	transition: border 0.4s ease;
}

.row .figure-logo:nth-of-type(1),
.row .figure-logo:nth-of-type(2),
.row .figure-logo:nth-of-type(3) {
	border-right: 1px solid rgba(255, 255, 255, 0.05);
	-webkit-transition: border 0.4s ease;
	-moz-transition: border 0.4s ease;
	-ms-transition: border 0.4s ease;
	-o-transition: border 0.4s ease;
	transition: border 0.4s ease;
}

body:not([data-theme="light"]) .work_logo path,
body:not([data-theme="light"]) .work_logo circle,
body:not([data-theme="light"]) .work_logo rect,
body:not([data-theme="light"]) .work_logo polygon {
	fill: #999;
	-webkit-transition: fill 0.4s ease;
	-moz-transition: fill 0.4s ease;
	-ms-transition: fill 0.4s ease;
	-o-transition: fill 0.4s ease;
	transition: fill 0.4s ease;
}

@media screen and (max-width: 991px) {

	.row .figure-logo:nth-of-type(1),
	.row .figure-logo:nth-of-type(2) {
		border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	}

	.row .figure-logo:nth-of-type(2),
	.row .figure-logo:nth-of-type(4) {
		border-right: 0;
	}
}


.figure-portfolio {
	position: relative;
	display: block;
	background-image: none;
}

figure {
	margin: 0;
}

.figure-portfolio:hover,
.figure-portfolio:focus {
	opacity: 1;
}

/*.figure-portfolio__content {
	text-align: right;
}*/


.figure-portfolio__content h3 {
	margin-top: 10px;
	margin-bottom: 0;
	color: #fff;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
	font-size: 16px;
	font-family: Founders Grotesk Text Regular, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
}

figcaption {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	opacity: 0;
	z-index: 99;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	-ms-transition: opacity 0.4s ease;
	-o-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

[data-post-id="1"] figcaption {
	background: rgba(255, 153, 42, 0.6);
}

[data-post-id="2"] figcaption {
	background: rgba(234, 67, 53, 0.6);
}

[data-post-id="3"] figcaption {
	background: rgba(13, 28, 41, 0.6);
}

[data-post-id="4"] figcaption {
	background: rgba(28, 51, 195, 0.6);
}

[data-post-id="5"] figcaption {
	background: rgba(255, 49, 118, 0.6);
}

[data-post-id="6"] figcaption {
	background: rgba(208, 148, 63, 0.6);
}

[data-post-id="7"] figcaption {
	background: rgba(2, 178, 253, 0.6);
}

[data-post-id="8"] figcaption {
	background: rgba(13, 28, 41, 0.6);
}

[data-post-id="9"] figcaption {
	background: rgba(103, 117, 244, 0.6);
}

[data-post-id="0"] figcaption {
	background: rgba(41, 158, 193, 0.6)
}

figcaption svg {
	max-width: 10%;
	opacity: 0;
	margin: 0 auto;
	height: 100%;
	transform: none !important;
	-webkit-transition: all .6s ease;
	-moz-transition: all .6s ease;
	-ms-transition: all .6s ease;
	-o-transition: all .6s ease;
	transition: all .6s ease;
}

.figure-portfolio:hover figcaption svg {
	opacity: 1;
	max-width: 25%;
}

.figure-portfolio:hover figcaption {
	opacity: 1;
}

@media screen and (max-width: 991px) {
	figcaption {
		display: none;
	}
}

.reveal,
.reveal::after,
.reveal::before {
	animation-delay: 0s;
	animation-duration: 2.0s;
	animation-fill-mode: forwards;
	animation-timing-function: cubic-bezier(0.285, 0.105, 0.465, 1.015);
}

.reveal {
	position: relative;
}

.reveal::after {
	content: "";
	position: absolute;
	z-index: 999;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #bc956a;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	transform-origin: 0 50%;
	pointer-events: none;
	animation-name: revealer-img;
}

@keyframes revealer {

	0%,
	50% {
		transform-origin: 0 50%;
	}

	60% {
		transform-origin: 100% 50%;
	}

	60% {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}

	100% {
		transform-origin: 100% 50%;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
}

.focus-in {
	animation: fadeIn 0.8s ease 0s forwards;
}

@keyframes revealer-img {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}

	50% {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
	}

	100% {
		-webkit-transform: translateX(101%);
		transform: translateX(101%);
	}
}

.figure-portfolio__wrapper-img .lazy img {
	animation-delay: 0.85s;
	opacity: 0;
	vertical-align: baseline;
	margin-top: -15px;
}

.lazy img {
	transform: none;
	outline: 1px solid transparent;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	will-change: transform;
	perspective: 1px;
}

.badge {
	display: inline-block;
	border-radius: 50%;
	padding: 5px;
	margin: 10px;
	border: 4px double #bc956a;
	position: absolute;
	background: #191919;
	top: 7%;
	right: 8%;
	z-index: 99;
	will-change: transform;
	-webkit-transition: background ease .2s, border ease .4s;
	-moz-transition: background ease .2s, border ease .4s;
	-ms-transition: background ease .2s, border ease .4s;
	-o-transition: background ease .2s, border ease .4s;
	transition: background ease .2s, border ease .4s;
}

@media screen and (max-width: 1200px) {
	.badge {
		display: none;
	}
}

.badge:before {
	content: "";
	position: absolute;
	width: 60%;
	height: 60%;
	border: 1px dashed #777;
	border-radius: 50%;
	top: 20%;
	left: 20%;
	z-index: -1;
	background: #1b1b1b;
	-webkit-transition: background ease .2s, border ease .4s;
	-moz-transition: background ease .2s, border ease .4s;
	-ms-transition: background ease .2s, border ease .4s;
	-o-transition: background ease .2s, border ease .4s;
	transition: background ease .2s, border ease .4s;
}

.badge svg {
	transform: rotate(7deg);
}

.circleText {
	position: relative;
	transform-origin: 150px 150px;
	animation: spin 60s linear infinite;
}

@keyframes spin {
	100% {
		transform: rotate(360deg);
	}
}

.badge-border {
	fill: #bc956a;
	font-size: 27px;
	font-weight: 500;
	-webkit-transition: fill ease .4s;
	-moz-transition: fill ease .4s;
	-ms-transition: fill ease .4s;
	-o-transition: fill ease .4s;
	transition: fill ease .4s;
}

.badge-title {
	fill: #fff;
	font-family: "Tiempos Headline Bold", serif;
	font-size: 60px;
	font-weight: 700;
	-webkit-transition: fill ease .4s;
	-moz-transition: fill ease .4s;
	-ms-transition: fill ease .4s;
	-o-transition: fill ease .4s;
	transition: fill ease .4s;
}

.badge:after {
	content: "";
	width: 110%;
	height: 110%;
	position: absolute;
	border-radius: 50%;
	top: -5%;
	left: -5%;
	z-index: -999;
	border: 2px dotted #fff;
	animation: spin 60s linear reverse infinite;
	box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 2px, rgba(0, 0, 0, 0.06) 0px 4px 4px, rgba(0, 0, 0, 0.06) 0px 8px 8px, rgba(0, 0, 0, 0.06) 0px 16px 16px;
	-webkit-transition: border ease .4s;
	-moz-transition: border ease .4s;
	-ms-transition: border ease .4s;
	-o-transition: border ease .4s;
	transition: border ease .4s;
}


.footer {
	position: relative;
	background-color: #131313;
	-webkit-transition: background ease .4s, color ease .4s;
	-moz-transition: background ease .4s, color ease .4s;
	-ms-transition: background ease .4s, color ease .4s;
	-o-transition: background ease .4s, color ease .4s;
	transition: background ease .4s, color ease .4s;
}

.footer a {
	color: var(--text, #999);
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

.footer a:hover,
.elsewhere a:hover {
	color: #fff;
}

.footer__area-primary {
	padding-top: 160px;
	padding-bottom: 160px;
}

.footer__area-secondary .footer__col:nth-child(1) {
	text-align: left;
}

.footer__area-secondary .footer__col:nth-child(2) {
	text-align: right;
	align-self: center;
}

.footer__area-secondary .footer__col:nth-child(2) p {
	margin: 0;
}


.footer__area-secondary {
	padding-top: 50px;
	padding-bottom: 50px;
}


@media screen and (max-width: 1200px) {
	.footer__area-primary {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.footer__area-secondary {
		padding-top: 30px;
		padding-bottom: 30px;
	}
}

@media screen and (max-width: 991px) {
	.footer__area-primary {
		padding-top: 60px;
		padding-bottom: 50px;
	}

	.footer__area-primary .footer__col {
		margin-bottom: 30px;
	}

	.footer__area-secondary {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.footer__area-secondary .footer__col:nth-child(1) {
		text-align: center;
		margin-bottom: 10px;
	}

	.footer__area-secondary .footer__col:nth-child(2) {
		text-align: center;
	}
}


.figure-property {
	width: 100%;
}

.figure-property__headline {
	width: 100%;
	height: 1px;
	background-color: rgba(255, 255, 255, 0.1);
	margin-bottom: 20px;
	-webkit-transition: background-color ease .4s;
	-moz-transition: background-color ease .4s;
	-ms-transition: background-color ease .4s;
	-o-transition: background-color ease .4s;
	transition: background-color ease .4s;
}

.figure-property__wrapper-heading_bold h6 {
	margin-bottom: 10px;
	color: #bc956a;
	font-size: 10px;
	font-family: Founders Grotesk Text Regular, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: .125em;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

.figure-property__list {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.figure-property__item {
	display: block;
	padding: 8px 0;
	font-size: 14px;
}

@media screen and (max-width: 991px) {}


.form {
	width: 100%;
}

.form__submit {
	margin-top: 10px;
}

.form__col {
	margin-top: 15px;
	margin-bottom: 15px;
}

.form__col_submit {
	margin-top: 30px;
	margin-bottom: 0;
}

.form__error {
	display: inline-block;
	font-size: 14px;
	color: red;
	text-align: left;
	position: relative;
	top: -20px;
}

@media only screen and (max-width: 992px) {
	.form__col_submit {
		text-align: left;
	}
}


.js-grid {
	z-index: 9;
}

.grid__item_no-fancy:nth-of-type(3) {
	margin-top: 0 !important;
}

.grid_50 {
	margin-left: -50px;
	margin-right: -50px;
}

.grid__item_50 {
	padding-left: 50px;
	padding-right: 50px;
	margin-bottom: 100px;
}

.grid__item_50:nth-of-type(3) {
	margin-top: 200px;
}

.grid__item_50:last-of-type {
	margin-bottom: 0;
}

.grid_100 {
	margin-left: -100px;
	margin-right: -100px;
}

.grid__item_100 {
	padding-left: 100px;
	padding-right: 100px;
	margin-bottom: 200px;
}

.grid__item_100:nth-of-type(2) {
	margin-top: 200px;
}

@media screen and (max-width: 991px) {
	.grid__item_100:nth-of-type(2) {
		margin-top: 0px;
	}
}

.grid__item_100:last-of-type {
	margin-bottom: 0;
}

.grid__item_120 {
	padding-left: 120px;
	padding-right: 120px;
	margin-bottom: 240px;
}

.grid__item_120:nth-of-type(3) {
	margin-top: 240px;
}

.grid__item_120:last-of-type {
	margin-bottom: 0;
}

.grid_team {
	margin-left: -60px;
	margin-right: -60px;
}

.grid__item_team {
	padding-left: 60px;
	padding-right: 60px;
	margin-bottom: 100px;
}

.grid__item_team:nth-of-type(3) {
	margin-top: 100px;
}

.grid__item_team:last-of-type {
	margin-bottom: 0;
}

@media screen and (max-width: 1400px) {
	.grid__item_120 {
		padding-left: 80px;
		padding-right: 80px;
		margin-bottom: 160px;
	}

	.grid__item_120:nth-of-type(3) {
		margin-top: 160px;
	}

	.grid_100 {
		margin-left: -50px;
		margin-right: -50px;
	}
}

@media screen and (max-width: 1200px) {
	.grid_120 {
		margin-left: -50px;
		margin-right: -50px;
	}

	.grid__item_120 {
		padding-left: 50px;
		padding-right: 50px;
		margin-bottom: 100px;
	}

	.grid__item_120:nth-of-type(3) {
		margin-top: 100px;
	}
}

@media screen and (max-width: 991px) {

	.grid_120,
	.grid_100,
	.grid_50 {
		margin-left: -15px;
		margin-right: -15px;
	}

	.grid__item_120,
	.grid__item_100,
	.grid__item_50 {
		padding-left: 15px;
		padding-right: 15px;
		margin-bottom: 100px;
	}

	.grid__item_120:nth-of-type(3),
	.grid__item_100:nth-of-type(3),
	.grid__item_50:nth-of-type(3) {
		margin-top: 0;
	}
}

input[type=checkbox] {
	display: none;
}

input[type=checkbox]+label {
	height: 36px;
	width: 36px;
	display: inline-block;
	cursor: pointer;
	opacity: 0;
	-webkit-animation: fadeIn .4s .6s forwards;
	animation: fadeIn .4s .6s forwards;
	pointer-events: all;
	margin: 0;
}

.theme {
	height: 36px;
}

[data-theme="light"] input[type=checkbox]+label:before {
	content: "";
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 89 89' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M44.79 88.216c-24.262 0-44-19.738-44-44C.79 21.878 17.513 3.097 39.692.532c1.332-.174 2.637.363 3.5 1.375a4.005 4.005 0 0 1 .813 3.676 31.952 31.952 0 0 0-1.215 8.633c0 17.645 14.355 32 32 32 2.852 0 5.754-.408 8.629-1.215a4.012 4.012 0 0 1 3.676.809 3.998 3.998 0 0 1 1.379 3.502C85.907 71.491 67.128 88.216 44.79 88.216z' fill='%234A6B9B' fill-rule='nonzero'/%3E%3C/svg%3E");
	height: 36px;
	width: 36px;
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	display: inline-block;
	cursor: pointer;
}

input[type=checkbox]+label:before {
	content: "";
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 97 97' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M48.5 26.5c-12.133 0-22 9.869-22 22s9.867 22 22 22c12.129 0 22-9.869 22-22s-9.871-22-22-22zm0 50c-2.211 0-4 1.791-4 4v12a3.999 3.999 0 1 0 8 0v-12c0-2.209-1.793-4-4-4zm-28-28c0-2.209-1.793-4-4-4h-12c-2.211 0-4 1.791-4 4s1.789 4 4 4h12c2.207 0 4-1.791 4-4zm28-28c2.207 0 4-1.791 4-4v-12a3.999 3.999 0 1 0-8 0v12c0 2.209 1.789 4 4 4zm44 24h-12c-2.211 0-4 1.791-4 4s1.789 4 4 4h12c2.207 0 4-1.791 4-4s-1.793-4-4-4zM23.043 68.299l-8.484 8.486a3.997 3.997 0 0 0 0 5.656 3.985 3.985 0 0 0 2.828 1.172 3.988 3.988 0 0 0 2.828-1.172l8.484-8.486a3.997 3.997 0 0 0 0-5.656 3.997 3.997 0 0 0-5.656 0zm48.082-38.426a3.985 3.985 0 0 0 2.828-1.172l8.486-8.486a3.997 3.997 0 0 0 0-5.656 3.998 3.998 0 0 0-5.656 0l-8.486 8.486a3.997 3.997 0 0 0 0 5.656 3.988 3.988 0 0 0 2.828 1.172zm-48.082-1.172a3.988 3.988 0 0 0 2.828 1.172 3.988 3.988 0 0 0 2.828-1.172 3.997 3.997 0 0 0 0-5.656l-8.484-8.486a3.997 3.997 0 0 0-5.656 0 3.998 3.998 0 0 0 0 5.656l8.484 8.486zm50.91 39.598a3.997 3.997 0 0 0-5.656 0 3.998 3.998 0 0 0 0 5.656l8.488 8.486a3.985 3.985 0 0 0 2.828 1.172 3.988 3.988 0 0 0 2.828-1.172 3.997 3.997 0 0 0 0-5.656l-8.488-8.486z' fill='%23FFF' fill-rule='nonzero'/%3E%3C/svg%3E");
	height: 36px;
	width: 36px;
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	display: inline-block;
}


.header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 500;
	padding-top: 48px;
}

.header_white .logo {
	color: #ffffff;
}

.header_white .logo:focus {
	color: #ffffff;
}

.header_white .header__burger-line {
	background-color: #ffffff;
}

.header_white .menu>li a {
	color: #ffffff;
}

.header_white .menu>li:not(.menu-item-has-children)>a:before {
	background-color: #ffffff;
}

.header_white .menu .sub-menu {
	background-color: #181818;
}

.header_fixed {
	position: fixed;
	pointer-events: none;
}

.header__col-left {
	position: relative;
}

.header__col-right {
	padding-right: 0;
}

@media screen and (max-width: 1400px) {
	.header {
		padding-top: 50px;
	}

	.header__wrapper-menu {
		padding: 80px 80px 40px;
	}

	.header__wrapper-overlay-widgets {
		padding: 80px 80px 60px;
	}

	.header__overlay-menu-back {
		top: 50px;
		left: 70px;
	}
}

@media screen and (max-width: 1200px) {
	.header {
		padding-top: 40px;
	}

	.header__wrapper-menu {
		padding: 50px 50px 30px;
	}

	.header__wrapper-overlay-widgets {
		padding: 50px 50px 40px;
	}

	.header__wrapper-property {
		margin-bottom: 40px;
	}

	.header__overlay-menu-back {
		top: 40px;
		left: 40px;
	}
}

@media screen and (max-width: 991px) {
	.header__burger-line {
		margin: 3px 0;
	}

	.header__burger-line:nth-child(1) {
		max-width: 30px;
	}

	.header__burger-line:nth-child(2) {
		max-width: 20px;
	}

	.header__wrapper-menu {
		padding: 0;
		width: 100%;
		padding: 50px 0;
	}

	.header__wrapper-overlay-menu {
		flex-wrap: wrap;
		text-align: center;
		padding: 50px 30px;
	}

	.header__wrapper-overlay-widgets {
		border-top: 1px solid rgba(214, 215, 217, 0.2);
		background-color: initial;
		padding: 50px 0;
	}

	.header__overlay-menu-back {
		top: 25px;
		left: 25px;
		font-size: 33px !important;
	}
}

@media screen and (max-width: 991px) {
	.header {
		padding-top: 20px;
	}
}


.lazy {

	background-image: url('../img/load.svg');
	background-repeat: no-repeat;
	background-position: 50% 50%;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.lazy__img:not(img) {
	background-size: cover;
	background-position: center center;
}

.lazy-bg {
	width: 100%;
	height: 100%;
}


.logo {
	display: block;
	width: 48px;
	background: transparent;
	pointer-events: all;
}

.logo svg {
	height: 48px;
	width: 48px;
}

@media screen and (max-width: 991px) {
	.logo {
		width: 36px;
	}

	.logo svg {
		height: 36px;
		width: 36px;
	}
}

/* Dark mode logo styles (default) */
.logo_bar {
	fill: #fff;
	stroke: #fff;
	stroke-width: 5px;
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;
	fill-opacity: 0;
	animation: logo-draw 2s ease forwards, logo-fill 1s ease 2s forwards;
	transition: fill .4s ease, stroke .4s ease;
}

.logo_tip {
	fill: #bc956a;
	stroke: #bc956a;
	stroke-width: 5px;
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;
	fill-opacity: 0;
	animation: logo-draw 2s ease forwards, logo-fill 1s ease 2s forwards;
	transition: fill .4s ease, stroke .4s ease;
}

/* Light mode logo styles */
[data-theme="light"] .logo_bar {
	fill: #333;
	stroke: #333;
	transition: fill .4s ease, stroke .4s ease;
}

[data-theme="light"] .logo_tip {
	fill: #5B96D6;
	stroke: #5B96D6;
	transition: fill .4s ease, stroke .4s ease;
}

/* Hover effects */
.logo:hover .logo_tip {
	fill: #999;
	stroke: #999;
	transition: fill .4s ease, stroke .4s ease;
}

[data-theme="light"] .logo:hover .logo_tip {
	fill: #666;
	stroke: #666;
	transition: fill .4s ease, stroke .4s ease;
}

/* Animation keyframes */
@keyframes logo-draw {
	0% {
		stroke-dashoffset: 1000;
	}

	100% {
		stroke-dashoffset: 0;
	}
}

@keyframes logo-fill {
	0% {
		fill-opacity: 0;
	}

	100% {
		fill-opacity: 1;
		stroke-width: 0;
	}
}

/* Static state for when animations are complete */
.static .logo_bar,
.static .logo_tip {
	animation: none !important;
	fill-opacity: 1 !important;
	stroke-width: 0 !important;
	stroke-dashoffset: 0 !important;
}

.static {
	opacity: 1 !important;
	animation: none !important;
	fill-opacity: 1 !important;
}


.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: -1;
}

.overlay_dark {
	background-color: #151515;
	opacity: .4;
	mix-blend-mode: multiply;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

.overlay_black {
	background-color: #333333;
	opacity: .8;
}

.overlay_white {
	background-color: #ffffff;
	opacity: .95;
}

.overlay_white-solid {
	background-color: #ffffff;
	opacity: 1;
}


.art-parallax,
[data-art-parallax] {
	position: relative;
	overflow: hidden;
}

.art-parallax>img,
[data-art-parallax]>img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.art-parallax__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-transition: background-color ease .4s;
	-moz-transition: background-color ease .4s;
	-ms-transition: background-color ease .4s;
	-o-transition: background-color ease .4s;
	transition: background-color ease .4s;
}


[data-art-parallax="data-art-parallax"] {
	background: url('../img/load.svg') 50% 50% no-repeat;
}


.preloader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	opacity: 0;
	visibility: hidden;
	z-index: 400;
}

.preloader__curtain {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.preloader__curtain {
	background-color: #131313;
}

[data-theme="light"] .preloader__curtain {
	background-color: #E7ECEF;
}


.project-backgrounds {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	background-color: #131313;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: background-color ease .4s;
	-moz-transition: background-color ease .4s;
	-ms-transition: background-color ease .4s;
	-o-transition: background-color ease .4s;
	transition: background-color ease .4s;
}

.project-backgrounds__background {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}

.project-backgrounds__background.active,
.project-backgrounds__background.selected {
	opacity: 1;
	visibility: visible;
}

.project-backgrounds__overlay {
	z-index: 0 !important;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}


.smooth-scroll {
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
}

[data-os-animation] {
	opacity: 0;
	visibility: hidden;
}


section {
	position: relative;
}

.section-portfolio {
	overflow: hidden;
	background-color: #191919;
	-webkit-transition: background-color ease .4s;
	-moz-transition: background-color ease .4s;
	-ms-transition: background-color ease .4s;
	-o-transition: background-color ease .4s;
	transition: background-color ease .4s;
}

.section-portfolio__header {
	max-width: 1200px;
}

.section-contact {
	background-color: #191919;
	-webkit-transition: background-color ease .4s;
	-moz-transition: background-color ease .4s;
	-ms-transition: background-color ease .4s;
	-o-transition: background-color ease .4s;
	transition: background-color ease .4s;
}

.section-fullheight {
	display: flex;
}

.section-fullheight__inner {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 100vh;
	padding-top: 200px;
	padding-bottom: 200px;
}

@media screen and (max-width: 767px) {
	.section-masthead {
		max-height: 100svh;
	}

	.section-fullheight__inner {
		min-height: 100svh;
	}
}

.section_pt-large {
	padding-top: 300px;
}

.section_pt {
	padding-top: 200px;
}

.section_pt-small {
	padding-top: 100px;
}

.section_p-xs {
	padding: 50px 25px;
}

.section_p-xs-t-0 {
	padding: 0 25px 50px;
}

.section_pb {
	padding-bottom: 200px;
}

.section_pb-small {
	padding-bottom: 100px;
}

.section_pb-large {
	padding-bottom: 300px;
}

.section_mt-large {
	margin-top: 300px;
}

.section_mt {
	margin-top: 200px;
}

.section_mt-small {
	margin-top: 100px;
}

.section_mb {
	margin-bottom: 200px;
}

.section_mb-small {
	margin-bottom: 100px;
}

.section_mb-large {
	margin-bottom: 300px;
}

.section__header h2 {
	margin-bottom: 10px;
	/*	text-wrap: balance;*/
}

.section__header h3:last-of-type {
	margin-bottom: 0;
}

/*  .section__headline {
 display: block;
 height: 1px;
 margin-bottom: 2em;
 } */


.section__headline {
	font-size: 0;
	line-height: 0;
	margin: 0 10px 0 0;
}

.section__headline:before,
.section__headline:after {
	content: '';
	display: inline-block;
	height: 1px;
}

.section__headline:before {
	border-left: 5px solid #bc956a;
	;
	border-right: 5px solid #bc956a;
	margin-right: 5px;
	width: 15px;
	animation-delay: 0.6s;
	-webkit-transition: border ease .4s;
	-moz-transition: border ease .4s;
	-ms-transition: border ease .4s;
	-o-transition: border ease .4s;
	transition: border ease .4s;
}

.section__headline:after {
	background: #bc956a;
	width: 40px;
	animation-delay: 0.8s;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.subheading {
	display: inline-block;
	font-size: 10px;
	letter-spacing: .125em;
	font-weight: normal;
	display: flex;
	margin-bottom: 20px;
	z-index: -1;
	display: flex;
	align-items: center;
}

.subheading span {
	font-family: Founders Grotesk Text Regular, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-size: 10px;
	font-weight: normal;
	letter-spacing: .125em;
	margin-bottom: 0;
	color: #bc956a;
	display: inline-block;
	text-transform: uppercase;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}


.section_h-100 {
	height: 100px;
	max-height: 100vh;
}

.section_h-200 {
	height: 200px;
	max-height: 100vh;
}

.section_h-300 {
	height: 300px;
	max-height: 100vh;
}

.section_h-400 {
	height: 400px;
	max-height: 100vh;
}

.section_h-500 {
	height: 500px;
	max-height: 100vh;
}

.section_h-600 {
	height: 600px;
	max-height: 100vh;
}

.section_h-700 {
	height: 700px;
	max-height: 100vh;
}

.section_h-800 {
	height: 800px;
	max-height: 100vh;
}

.section_h-900 {
	height: 900px;
	max-height: 100vh;
}

.section_h-100vh {
	height: 100vh;
}

.section__content {
	margin-top: 50px;
}

.section_w-container-right {
	max-width: 100%;
	width: calc(100% - ((100vw - 1140px) / 2) - 25px);
	margin-left: auto;
	text-align: left;
}

.section_w-container-left {
	max-width: 100%;
	width: calc(100% - ((100vw - 1140px) / 2) - 25px);
	margin-right: auto;
	text-align: right;
}

@media screen and (max-width: 1200px) {
	.section_pt-large {
		padding-top: 240px;
	}

	.section_pt {
		padding-top: 140px;
	}

	.section_pt-small {
		padding-top: 70px;
	}

	.section_pb {
		padding-bottom: 140px;
	}

	.section_pb-small {
		padding-bottom: 70px;
	}

	.section_pb-large {
		padding-bottom: 240px;
	}

	.section_mt-large {
		margin-top: 240px;
	}

	.section_mt {
		margin-top: 140px;
	}

	.section_mt-small {
		margin-top: 70px;
	}

	.section_mb {
		margin-bottom: 140px;
	}

	.section_mb-small {
		margin-bottom: 70px;
	}

	.section_mb-large {
		margin-bottom: 240px;
	}

	.section-fullheight__inner {
		padding-top: 140px;
		padding-bottom: 140px;
	}

	.section__headline {
		max-width: 80px;
	}

	.section_w-container-right,
	.section_w-container-left {
		width: 100%;
		text-align: center;
	}
}

@media screen and (max-width: 991px) {
	.section_pt-large {
		padding-top: 120px;
	}

	.section_pt {
		padding-top: 100px;
	}

	.section_pt-small {
		padding-top: 50px;
	}

	.section_pb {
		padding-bottom: 100px;
	}

	.section_pb-small {
		padding-bottom: 50px;
	}

	.section_pb-large {
		padding-bottom: 120px;
	}

	.section_mt-large {
		margin-top: 120px;
	}

	.section_mt {
		margin-top: 100px;
	}

	.section_mt-small {
		margin-top: 50px;
	}

	.section_mb {
		margin-bottom: 100px;
	}

	.section_mb-small {
		margin-bottom: 50px;
	}

	.section_mb-large {
		margin-bottom: 120px;
	}

	.section-fullheight__inner {
		padding-top: 120px;
		padding-bottom: 120px;
	}

	.section__content {
		margin-top: 30px;
	}
}

@media screen and (max-width: 767px) {
	.section_pt-large {
		padding-top: 100px;
	}

	.section_pt {
		padding-top: 80px;
	}

	.section_pt-small {
		padding-top: 40px;
	}

	.section_pb {
		padding-bottom: 80px;
	}

	.section_pb-small {
		padding-bottom: 40px;
	}

	.section_pb-large {
		padding-bottom: 100px;
	}

	.section_mt-large {
		margin-top: 100px;
	}

	.section_mt {
		margin-top: 80px;
	}

	.section_mt-small {
		margin-top: 40px;
	}

	.section_mb {
		margin-bottom: 80px;
	}

	.section_mb-small {
		margin-bottom: 40px;
	}

	.section_mb-large {
		margin-bottom: 100px;
	}

	.section-fullheight__inner {
		padding-top: 80px;
		padding-bottom: 80px;
	}

	.section_h-100 {
		max-height: 70vh;
	}

	.section_h-200 {
		max-height: 70vh;
	}

	.section_h-300 {
		max-height: 70vh;
	}

	.section_h-400 {
		max-height: 70vh;
	}

	.section_h-500 {
		max-height: 70vh;
	}

	.section_h-600 {
		max-height: 70vh;
	}

	.section_h-700 {
		max-height: 70vh;
	}

	.section_h-800 {
		max-height: 70vh;
	}

	.section_h-900 {
		max-height: 70vh;
	}
}


.contact-sidebar h3 {
	margin-bottom: 10px;
	font-size: 14px;
	font-family: Founders Grotesk Text Regular, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
	color: #fff;
}

.skills ul {
	list-style: none;
	padding-left: 0;

	margin-bottom: 80px;

	padding-bottom: 0px;
}

.elsewhere ul {
	list-style: none;
	padding-left: 0;
	margin-bottom: 0px;
	padding-top: 0px;
	padding-bottom: 0px;
}

.skills li,
.elsewhere li {
	font-size: 14px;
	padding: 8px 0;
}

.contact-form label {
	display: block;
	font-size: 14px;
	font-family: Founders Grotesk Text Regular, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
	color: #fff;
	line-height: 1.5;
	margin-bottom: 5px;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

input {
	border: 1px solid rgba(255, 255, 255, 0.1);
	outline: none;
	padding: 10px;
	border-radius: 4px;
	width: 100%;
	margin-bottom: 12px;
	/* Reduced from 20px to 12px */
	background: rgba(255, 255, 255, 0.02);
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
	color: var(--text, #999);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input:hover,
textarea:hover {
	border: 1px solid rgba(255, 255, 255, 0.2);
}

textarea {
	border: 1px solid rgba(255, 255, 255, 0.1);
	outline: none;
	padding: 10px;
	border-radius: 4px;
	width: 100%;
	height: 240px;
	margin-bottom: 12px;
	/* Reduced from 20px to 12px */
	background: rgba(255, 255, 255, 0.02);
	color: var(--text, #999);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

input:focus,
textarea:focus {
	background: #fff;
	color: #1b1b1b;
	-webkit-animation: shadowPulse 2s infinite ease;
	animation: shadowPulse 2s infinite ease;
}

@media screen and (max-width: 767px) {
	.submit-button {
		margin-bottom: 80px;
		width: 100%;
	}
}


.section-composition {
	display: flex;
}

.section-composition__primary {
	display: flex;
	align-items: flex-start;
	padding: 200px 120px 200px 240px;
	flex: 1 1 auto;
	flex-direction: column;
	margin-top: -60px;
	z-index: 99;
	background: #1b1b1b;
	-webkit-animation: revealer 1.4s reverse forwards;
	animation: revealer 1.4s reverse forwards;
	box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 2px, rgba(0, 0, 0, 0.06) 0px 4px 4px, rgba(0, 0, 0, 0.06) 0px 8px 8px, rgba(0, 0, 0, 0.06) 0px 16px 16px;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.section-composition__image {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 200px 120px;
	flex: 1 1 auto;
}

.section-composition__content {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 100%;
	max-width: 640px;
	flex: 1 0 33vw;
	padding: 310px 120px 210px;
	flex-direction: column;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.section-composition__content .figure-property {
	margin-bottom: 100px;
}


.section-composition__counter {
	align-self: flex-start;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: .125em;
	text-transform: uppercase;
	margin-bottom: 20px;
}

@media screen and (max-width: 1400px) {

	.section-composition__primary,
	.section-composition__content {
		padding: 120px 80px;
	}

	.section-composition__counter {
		font-size: 12px;
	}
}

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

	.section-composition__primary,
	.section-composition__content {
		padding: 80px 30px;
	}

	.section-composition__primary {
		margin-top: 0px;
		box-shadow: none;
	}
}

@media screen and (max-width: 991px) {
	.section-composition {
		flex-direction: column;
		justify-content: center;
	}

	.section-composition__content {
		align-items: center;
		justify-content: center;
		max-width: 100%;
		flex: 1 0 100%;
		padding: 80px 30px;
	}

	.section-composition__counter {
		align-self: unset;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		margin-bottom: 20px;
	}

	.section-composition__image {
		padding: 30px 30px 80px;
	}
}


.section-content__inner>*:last-child {
	margin-bottom: 0;
}

.section-content__inner p,
.work-detail-request {
	font-size: 20px;
	text-wrap: balance;
	text-wrap: pretty;
}

@media screen and (max-width: 767px) {

	.section-content__inner p,
	.work-detail-request {
		font-size: 18px;
		letter-spacing: -.003em;
	}
}

.section-content__main-content {
	margin-top: 100px;
	margin-bottom: -50px;
}

.section-content__wrapper-item {
	margin-bottom: 50px;
}

.section-content__main-content_no-header {
	margin-top: 0 !important;
}

.section-content__inner_header {
	margin-bottom: 0;
}

@media screen and (max-width: 991px) {
	.section-content__main-content {
		margin-top: 60px;
		margin-bottom: -30px;
	}

	.section-content__wrapper-item {
		margin-bottom: 30px;
	}
}


.section-image__content {
	margin-top: 40px;
}

.section-image h5 {
	display: block;
	width: 100%;
	margin-top: 1em;
	margin-bottom: 0;
}

.work-examples {
	margin-top: -60px;
}

@media screen and (max-width: 1200px) {
	.work-examples {
		margin-top: 0px;
	}
}


.section-intro.text-center .section-intro__header,
.section-intro.text-center .section-intro__headline {
	margin-left: auto;
	margin-right: auto;
}

.section-intro__header {
	max-width: 1200px;
	opacity: 0;
	-webkit-animation: fadeIn .1s forwards .8s;
	animation: fadeIn .1s forwards .8s;
}

.section-intro {
	min-height: 100vh;
	display: flex;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.section-intro {
		min-height: 100svh;
	}
}

.section-intro__header h1 {
	margin-top: 0;
	font-size: 54px;
	font-weight: 700;
	line-height: 1.25;
	color: #fff;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

.section-intro .lead {
	margin-top: 0;
	margin-bottom: 2em;
	font-size: 24px;
	line-height: 1.5;
	text-wrap: balance;
	text-wrap: pretty;
}

.section-intro__headline {
	width: 100%;
	max-width: 120px;
	height: 1px;
	background-color: #bc956a;
	-webkit-transition: background-color ease .4s;
	-moz-transition: background-color ease .4s;
	-ms-transition: background-color ease .4s;
	-o-transition: background-color ease .4s;
	transition: background-color ease .4s;
}

@media screen and (max-width: 1200px) {
	.section-intro__header h1 {
		font-size: 48px;
	}

}

@media screen and (max-width: 991px) {
	.section-intro__header h1 {
		font-size: 36px;
	}

	.section-intro__header .lead {
		font-size: 22px;
	}
}

@media screen and (max-width: 767px) {
	.section-intro__header h1 {
		font-size: 26px;
	}


	.section-intro__header .lead {
		font-size: 20px;
		letter-spacing: -.003em;
	}
}

.scroll-content {
	height: 100%;
}

.icon-scroll-line {
	width: 1px;
	position: fixed;
	will-change: transform;
	bottom: 0;
	right: 60px;
	z-index: 9999;
	pointer-events: none;
	height: 22.50015rem;
}

@media screen and (max-width: 1400px) {
	.icon-scroll-line {
		right: 40px;
	}
}

@media screen and (max-width: 1200px) {
	.icon-scroll-line {
		right: 25px;
	}
}

@media screen and (max-width: 991px) {
	.icon-scroll-line {
		right: 15px;
	}
}


.icon-scroll-line:after,
.icon-scroll-line:before {
	width: 1px;
	content: "";
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
	pointer-events: none;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.icon-scroll-line:before {
	bottom: 0;
	background: rgba(255, 255, 255, 0.15);
	z-index: 15;
}

.icon-scroll-line:after {
	background: #eee;
	height: 4.50003rem;
	z-index: 16;
	-webkit-animation: iconscroll 2s ease-in-out infinite;
	-ms-animation: iconscroll 2s ease-in-out infinite;
	animation: iconscroll 2s ease-in-out infinite;
}

@media screen and (max-width: 767px) {
	.icon-scroll-line {
		display: none;
	}
}

.nub {
	display: none;
	width: 100%;
	height: 50px;
}

@media screen and (max-width: 767px) {
	.nub {
		display: flex;
		background-repeat: no-repeat;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		z-index: 99999;
		bottom: 0;
		background-position-x: 50%;
		-webkit-animation: in-bottom 0.8s ease-in-out 1.4s both;
		animation: in-bottom 0.8s ease-in-out 1.4s both;
		-webkit-transition: all 0.4s ease;
		-moz-transition: all 0.4s ease;
		-ms-transition: all 0.4s ease;
		-o-transition: all 0.4s ease;
		transition: all 0.4s ease;
	}

	.section-masthead .nub {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 212 50'%3E%3Cpath fill='%231b1b1b' d='M212 50c-18.7-.8-37.3-9.1-51.6-25-15-16.6-34.7-25-54.4-25-19.7 0-39.4 8.4-54.4 25C37.3 40.9 18.7 49.2 0 50'/%3E%3C/svg%3E");
	}

	.section-intro .nub {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 212 50'%3E%3Cpath fill='%23191919' d='M212 50c-18.7-.8-37.3-9.1-51.6-25-15-16.6-34.7-25-54.4-25-19.7 0-39.4 8.4-54.4 25C37.3 40.9 18.7 49.2 0 50'/%3E%3C/svg%3E");
	}

	.nub svg {
		margin: 0 auto;
		padding: 0;
		text-align: center;
		display: inline-flex;
		justify-content: center;
		align-items: center;
		width: 16px;
		-webkit-animation: fade_move_down 2s ease-in-out 2s infinite;
		-moz-animation: fade_move_down 2s ease-in-out 2s infinite;
		animation: fade_move_down 2s ease-in-out 2s infinite;
		opacity: 0;
		fill: #fff;
		-webkit-transition: all 0.6s ease;
		-moz-transition: all 0.6s ease;
		-ms-transition: all 0.6s ease;
		-o-transition: all 0.6s ease;
		transition: all 0.6s ease;
	}

}

@-webkit-keyframes fade_move_down {
	0% {
		-webkit-transform: translate(0, 0px);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		-webkit-transform: translate(0, 8px);
		opacity: 0;
	}
}

@keyframes fade_move_down {
	0% {
		transform: translate(0, 0px);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: translate(0, 8px);
		opacity: 0;
	}
}

@-webkit-keyframes in-bottom {
	0% {
		-webkit-transform: translateY(50px);
		transform: translateY(50px);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes in-bottom {
	0% {
		-webkit-transform: translateY(50px);
		transform: translateY(50px);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.bg-text {
	font-size: 530px;
	line-height: 530px;
	color: rgba(255, 255, 255, 0.01);
	position: absolute;
	border: 0;
	letter-spacing: -8px;
	white-space: nowrap;
	font-weight: 700;
	font-family: "Tiempos Headline Bold", serif;
	user-select: none;
	will-change: transform;
	text-transform: none;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	-webkit-transform-origin: right center;
	transform-origin: right center;
	top: calc(100% + 480px);
	right: 240px;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

@media screen and (max-width: 767px) {
	.bg-text {
		display: none;
	}
}

@keyframes iconscroll {
	0% {
		opacity: 0;
	}

	20% {
		opacity: 1;
	}

	45% {
		opacity: 1;
	}

	100% {
		opacity: 0;
		top: calc(100% - 4.50003rem);
	}
}


.section-masthead__header {
	max-width: 1140px;
	margin: 0 auto;
	text-align: center;
}

.section-masthead__header h1 {
	margin: 0;
}

.section-masthead__header .section__headline {
	margin: 0 auto;
}

.section-masthead__header h2 {
	margin-top: 100px;
}

.section-masthead_fullheight h1 {
	letter-spacing: -.015em;
}

.section-masthead_fullheight-halfscreen .section-masthead__background {
	position: relative;
	min-height: 100vh;
}

.section-masthead_fullheight-halfscreen-reverse {
	flex-direction: row-reverse;
}

.section-masthead__wrapper-property {
	margin-right: 70px;
	margin-bottom: 70px;
}

.section-masthead__wrapper-property:last-of-type {
	margin-right: 0;
}

.section-masthead__properties {
	margin-top: 70px;
	margin-bottom: -70px;
}

.section-masthead__background_bottom {
	margin-top: 100px;
}

.section-masthead__background_fullscreen {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin-top: 0;
}

.section-masthead__overlay {
	z-index: 0;
	opacity: .6;
}

.section-masthead__properties_bottom {
	position: absolute;
	bottom: 70px;
	left: 120px;
}

.section-masthead__content {
	width: 100%;
}

.section-masthead__inner {
	position: relative;
	z-index: 50;
}

@media screen and (max-width: 1400px) {
	.section-masthead__properties_bottom {
		left: 80px;
		bottom: 50px;
	}
}

@media screen and (max-width: 1200px) {
	.section-masthead__wrapper-property {
		margin-right: 30px;
	}

	.section-masthead__properties_bottom {
		left: 50px;
	}

	.section-masthead__background_bottom {
		margin-top: 80px;
	}
}

@media screen and (max-width: 991px) {
	.section-masthead__wrapper-property {
		margin-right: 0;
	}

	.section-masthead__wrapper-property {
		margin-bottom: 30px;
	}

	.section-masthead__properties {
		margin-top: 30px;
		margin-bottom: -30px;
	}

	.section-masthead__properties_bottom {
		position: relative;
		left: auto;
		bottom: auto;
	}

	.section-masthead_fullheight-halfscreen {
		padding-top: 100px;
		flex-wrap: wrap;
	}

	.section-masthead_fullheight-halfscreen .section-fullheight__inner {
		min-height: unset;
		padding-top: 0;
		padding-bottom: 0;
	}

	.section-masthead_fullheight-halfscreen .section-masthead__background {
		margin-top: 80px;
	}

	.section-masthead__background_bottom {
		width: 100%;
		margin-top: 80px;
	}
}

@media screen and (max-width: 767px) {
	.section-masthead__header h2 {
		margin-top: 30px;
		font-size: 20px;
	}

	.section-masthead_fullheight-halfscreen {
		padding-top: 80px;
	}

	.section-masthead_fullheight-halfscreen .section-masthead__background {
		min-height: 0;
		height: 900px;
		max-height: 70vh;
		margin-top: 60px;
	}

	.section-masthead__background_bottom {
		margin-top: 60px;
	}
}


.spinner {
	position: fixed;
	bottom: calc(var(--fix-bar-vh, 30px) + 15px);
	width: 36px;
	height: 36px;
	z-index: 10000;
	background-image: url('../img/load.svg');
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	opacity: 0;
	visibility: hidden;
}


.social {
	list-style-type: none;
	padding: 0;
	margin: 0;
	margin: -8px;
}

.social__item {
	display: inline-block;
	margin: 8px;
}

.social__item a {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background-color: transparent;
	width: 36px;
	height: 36px;
	fill: #999;
	background-image: none;
}

.social__item svg {
	width: 16px;
	height: 16px;
	fill: #999;
}


.linkedin a:hover svg {
	fill: #0077b5;
}

.dribbble a:hover svg {
	fill: #ea4c89;
}

.instagram a:hover svg {
	fill: #f10274;
}

.twitter a:hover svg {
	fill: #1da1f2;
}

.codepen a:hover svg {
	fill: #fff;
}


.split-text,
.split-chars {
	opacity: 0;
	visibility: hidden;
}


.split-chars__line {
	display: inline;
	overflow: hidden;
}

.split-chars__char {
	overflow: visible;
}




h1 {
	font-size: 84px;
	font-weight: 700;
	line-height: 1.25;
	font-family: "Tiempos Headline Bold", serif;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

h2 {
	color: #fff;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.125;
	/*	text-wrap: balance;*/
	font-family: "Tiempos Headline Bold", serif;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

h4 {
	font-size: 22px;
	font-family: Founders Grotesk Text Regular, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
	color: #fff;
	line-height: 1.5;
	margin-bottom: 0;
	letter-spacing: -0.03125rem;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

@media screen and (max-width: 767px) {

	h4 {
		font-size: 20px;
	}
}

h5 {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.5;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

h6 {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

p {
	margin-bottom: 2em;
}

strong {
	font-weight: 600;
}

small {
	font-size: 14px;
}

.heading-light {
	font-weight: 300;
}

a {
	color: inherit;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

a:hover,
a:focus {
	text-decoration: none;
	color: inherit;
}

a:focus {
	color: inherit;
	outline: none;
}

@media screen and (max-width: 1400px) {
	h1 {
		font-size: 72px;
	}

	h2 {
		font-size: 36px;
	}

	h3 {
		font-size: 24px;
	}

	h5 {
		font-size: 16px;
	}

	h6 {
		font-size: 16px;
	}
}

@media screen and (max-width: 991px) {
	h1 {
		font-size: 54px;
	}

	h2 {
		font-size: 26px;
		margin-bottom: 0;
	}

	h3 {
		font-size: 19px;
	}

	h5 {
		font-size: 16px;
	}

	h6 {
		font-size: 16px;
	}

	small {
		display: inline-block;
		font-size: 12px;
	}
}

@media screen and (max-width: 767px) {
	h1 {
		font-size: 38px;
	}
}


.text-left {
	text-align: left !important;
}

.text-left .section__headline {
	margin-right: auto;
}

.text-center {
	text-align: center !important;
}

.text-center .section__headline {
	margin-left: auto;
	margin-right: auto;
}

.text-right {
	text-align: right !important;
}

.text-right .section__headline {
	margin-left: auto;
}

.row-80 {
	margin-left: -40px;
	margin-right: -40px;
}

.overflow {
	position: relative;
	overflow: hidden;
}

.overflow__curtain {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 50;
}

.overflow__content {
	width: 100%;
	height: 100%;
}

.position-relative {
	position: relative;
}

.color-white {
	color: #ffffff !important;
}

.color-black {
	color: #0f0f0f !important;
}

.color-dark {
	color: #181818 !important;
}

.blurred {
	-webkit-filter: blur(7px);
	filter: blur(7px);
}

.of-cover {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.of-contain {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.split-line {
	overflow: hidden;
}

.hidden {
	opacity: 0;
	visibility: hidden;
}

.no-gutters {
	padding-left: 0;
	padding-right: 0;
}

.grayscale {
	-webkit-filter: grayscale(70%);
	filter: grayscale(70%);
}

.h-100 {
	height: 100%;
}

.lockhover .menu-overlay>li>a:not(.selected) {
	opacity: .2;
	pointer-events: none;
}

.lockhover .menu-overlay .sub-menu>li>a:not(.selected) {
	opacity: .2;
	pointer-events: none;
}

#js-webgl {
	display: none;
	width: 1px;
	height: 1px;
}


.section-nav-projects {
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.section-nav-projects .section-nav-projects__inner_prev {
	padding-left: 120px;
	padding-right: 80px;
}

.section-nav-projects .section-nav-projects__inner_next {
	padding-left: 80px;
	padding-right: 120px;
}

.section-nav-projects__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	padding-top: 100px;
	padding-bottom: 100px;
	height: 100%;
	color: #fff;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
	z-index: 50;
	background-image: none;
}

.section-nav-projects__inner h3 {
	margin-top: 30px;
	margin-bottom: 0;
	font-size: 32px;
	font-family: "Tiempos Headline Bold", serif;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1.25em;
	filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.8));
	text-wrap: balance;
}

.section-nav-projects:after {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 1px;
	height: 100%;
	background-color: #131313;
	z-index: 1;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.section-nav-projects__inner:hover {
	opacity: 1;
	color: #fff;
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

.section-nav-projects__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	border-radius: 100%;
	-webkit-animation: shadowPulse 2s infinite ease;
	animation: shadowPulse 2s infinite ease;

}

.section-nav-projects__inner_next .section-nav-projects__arrow {
	background: rgba(0, 0, 0, 0.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpolygon fill='%23fff' points='6.26,24 18.26,12 6.26,0 5.74,0.519 17.222,12 5.74,23.48'/%3E%3C/svg%3E") no-repeat;
	background-position: 53%;
	background-size: 25% 25% !important;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.section-nav-projects__inner_prev .section-nav-projects__arrow {
	background: rgba(0, 0, 0, 0.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpolygon fill='%23fff' points='17.74,24 5.741,12 17.74,0 18.26,0.519 6.778,12 18.26,23.48'/%3E%3C/svg%3E") no-repeat;
	background-position: 47%;
	background-size: 25% 25% !important;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

.section-nav-projects__inner:hover .section-nav-projects__arrow {
	background-color: rgba(0, 0, 0, 0.4);
}

.section-nav-projects__inner_prev h3 {
	text-align: right;
	color: #fff;
}

.section-nav-projects__inner_next h3 {
	text-align: left;
	color: #fff;
}

.shadowPulse {
	-webkit-animation: shadowPulse 2s infinite ease;
	animation: shadowPulse 2s infinite ease;
}

@-webkit-keyframes shadowPulse {
	from {
		-webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.1);
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.1);
	}

	to {
		-webkit-box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
		box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
	}
}

@keyframes shadowPulse {
	from {
		-webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.1);
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.1);
	}

	to {
		-webkit-box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
		box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
	}
}

.section-nav-projects__backgrounds {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.section-nav-projects__background {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.2;
	background-size: cover;
	background-position: center center;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

.section-nav-projects__background:nth-of-type(1) {
	left: 0;
	width: 50%;
}

.section-nav-projects__background:nth-of-type(2) {
	left: 50%;
	width: 50%;
}

.section-nav-projects__background.active,
.section-nav-projects__background.selected {
	opacity: 0.4;
	visibility: visible;
	z-index: 1;
}

.section-nav-projects__overlay {
	z-index: 0;
}

.section-nav-projects__label {
	position: absolute;
	z-index: 1;
	font-size: 10px;
	font-family: Founders Grotesk Text Medium, Helvetica Neue, Segoe UI, Helvetica, Arial, sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: .125em;
	color: rgba(255, 255, 255, 0.6);
	-webkit-transition: color ease .4s;
	-moz-transition: color ease .4s;
	-ms-transition: color ease .4s;
	-o-transition: color ease .4s;
	transition: color ease .4s;
}

.section-nav-projects__label_next {
	top: 120px;
	left: 80px;
}

.section-nav-projects__label_prev {
	top: 120px;
	right: 80px;
}

@media screen and (max-width: 1400px) {
	.section-nav-projects .section-nav-projects__inner_prev {
		padding-left: 80px;
		padding-right: 80px;
	}

	.section-nav-projects .section-nav-projects__inner_next {
		padding-left: 80px;
		padding-right: 80px;
	}

	.section-nav-projects__arrow {
		width: 60px;
		height: 60px;
	}
}

@media screen and (max-width: 1200px) {
	.section-nav-projects .section-nav-projects__inner_prev {
		padding-left: 50px;
		padding-right: 60px;
	}

	.section-nav-projects .section-nav-projects__inner_next {
		padding-left: 60px;
		padding-right: 50px;
	}

	.section-nav-projects__label_next {
		left: 60px;
		top: 90px;
	}

	.section-nav-projects__label_prev {
		top: 90px;
		right: 60px;
	}

	.section-nav-projects__inner {
		padding-top: 80px;
		padding-bottom: 80px;
	}
}

@media screen and (max-width: 991px) {
	.section-nav-projects__arrow {
		width: 50px;
		height: 50px;
		background-size: 25% 25% !important;
	}

	.section-nav-projects__inner {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.section-nav-projects__inner h3 {
		margin-bottom: 0;
		font-size: 20px;
		margin-top: 1em;
	}

	.section-nav-projects__label_next {
		top: 70px;
	}

	.section-nav-projects__label_prev {
		top: 70px;
	}
}

@media screen and (max-width: 767px) {
	.section-nav-projects .section-nav-projects__inner_prev {
		padding-right: 30px;
		padding-left: 30px;
	}

	.section-nav-projects .section-nav-projects__inner_next {
		padding-right: 30px;
		padding-left: 30px;
	}

	.section-nav-projects__label {
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		top: auto;
		margin-bottom: 0;
	}

	.section-nav-projects__inner {
		flex-direction: column;
		align-items: flex-start;
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.section-nav-projects__inner h3 {
		margin-bottom: 0;
		margin-top: 0;
		font-size: 18px;
		text-align: left;
	}

	.section-nav-projects__arrow {
		order: -1;
		background-size: 25% 25% !important;
		margin-bottom: 1.5em;
		align-self: center;
	}
}

/*.aside-counters {
	margin-bottom:2rem;
}*/
.counter__number.js-counter__number {
	font-size: 72px;
	color: #fff;
	font-family: 'Tiempos Headline Bold';
	text-align: center;
	line-height: 1;
	white-space: nowrap;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

@media screen and (max-width: 1420px) {
	.counter__number.js-counter__number {
		font-size: 60px;
	}
}

@media screen and (max-width: 767px) {
	.counter__number.js-counter__number {
		font-size: 54px;
		margin-bottom: 20px;
	}
}

.counter__number.js-counter__number.percentage:after {
	content: '%';
	font-size: 50%;
	vertical-align: super;
}

.counter__number.js-counter__number.million:after {
	content: 'M';
}

.counter__number.js-counter__number.times:after {
	content: '×';
}

.counter__number.js-counter__number.plus:before {
	content: '+';
}

[data-theme="light"] .counter__label h6,
[data-theme="light"] .counter__number.js-counter__number {
	color: #4A6B9B;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

.counter {
	padding: 40px 0;
}

.aside-counters__wrapper-item:nth-of-type(even) {
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

[data-theme="light"] .aside-counters__wrapper-item:nth-of-type(even) {
	border-top: 1px solid #E7ECEF;
	border-bottom: 1px solid #E7ECEF;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

.counter__label h6 {
	font-size: 18px;
	font-family: 'Tiempos Headline Bold';
	color: #fff;
	margin-bottom: 0;
	text-wrap: balance;
	text-wrap: pretty;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

.counter__label p {
	margin-bottom: 0;
	font-size: 18px;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

@media screen and (max-width: 767px) {
	.counter__label h6 {
		font-size: 16px;
	}

	.counter__label p {
		margin-bottom: 0;
		font-size: 16px;
	}
}

[data-theme="light"] {
	background-color: #fff;
	color: #576072;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1154 1154' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='%23000' stroke-width='.25' fill='none' fill-rule='evenodd' opacity='.08' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='408' cy='745' r='238'/%3E%3Ccircle cx='745' cy='408' r='238'/%3E%3Ccircle cx='373' cy='780' r='288'/%3E%3Ccircle cx='780' cy='373' r='288'/%3E%3Cpath d='M338 338c-131 0-238 107-238 238s107 238 238 238 238-107 238-238-106-238-238-238zm476 0c-131 0-238 107-238 238s107 238 238 238 238-107 238-238-105-238-237-238h-1z'/%3E%3Ccircle cx='288' cy='576' r='288'/%3E%3Cpath d='M864 288c-159 0-288 129-288 288s129 288 288 288 288-129 288-288-130-288-287-288h-1z'/%3E%3Ccircle cx='408' cy='408' r='238'/%3E%3Ccircle cx='745' cy='745' r='238'/%3E%3Ccircle cx='373' cy='373' r='288'/%3E%3Ccircle cx='780' cy='780' r='288'/%3E%3Ccircle cx='576' cy='338' r='238'/%3E%3Ccircle cx='576' cy='814' r='238'/%3E%3Ccircle cx='576' cy='288' r='288'/%3E%3Ccircle cx='576' cy='864' r='288'/%3E%3Ccircle cx='576' cy='577' r='477'/%3E%3Cpath d='M1101 577c0-288-233-521-521-521S59 289 59 577s233 521 521 521c284 0 521-236 521-524v3z'/%3E%3C/g%3E%3C/svg%3E");
}

[data-theme="light"] .logo:hover .logo_tip {
	fill: #f17b8d;
	stroke: #f17b8d;
}

[data-theme="light"] .section-masthead__header h1 {
	filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.6));
}

[data-theme="light"] .section-intro__header h1,
[data-theme="light"] .figure-portfolio__content h3,
[data-theme="light"] h2,
[data-theme="light"] h4 {
	color: #4A6B9B;
}

[data-theme="light"] .subheading span,
[data-theme="light"] .figure-property__wrapper-heading_bold h6 {
	color: #5b96d6;
}

[data-theme="light"] .section__headline:before {
	border-left: 5px solid #f17b8d;
	border-right: 5px solid #f17b8d;
}

[data-theme="light"] .section__headline:after {
	background: #f17b8d;
	-webkit-transition: background ease .4s;
	-moz-transition: background ease .4s;
	-ms-transition: background ease .4s;
	-o-transition: background ease .4s;
	transition: background ease .4s;
}

[data-theme="light"] .logo_bar {
	fill: #4A6B9B;
	stroke: #4A6B9B;
}

[data-theme="light"] .logo_tip {
	fill: #5b96d6;
	stroke: #5b96d6;
}

[data-theme="light"] .section-portfolio,
[data-theme="light"] .bg-dark-2,
[data-theme="light"] .section-contact {
	background-color: #F7F9FC;
}

[data-theme="light"] .bg-text {
	color: rgba(255, 255, 255, 0.7);
}

[data-theme="light"] .bg-dark {
	background-color: #fff;
}

[data-theme="light"] .section-nav-projects__background {
	opacity: 0.4;
}

[data-theme="light"] .section-nav-projects__label {
	color: rgba(255, 255, 255, 0.8);
}

[data-theme="light"] .section-nav-projects__background.active,
[data-theme="light"] .section-nav-projects__background.selected {
	opacity: 0.6;
}

[data-theme="light"] .section-nav-projects:after {
	background: rgba(255, 255, 255, 0.4);
}

[data-theme="light"] .section-nav-projects {
	background: #576072;
}

[data-theme="light"] .button {
	border-color: #E7ECEF;
	color: #4A6B9B;
	background: #E7ECEF;
}

[data-theme="light"] .button:hover {
	color: #E7ECEF;
}


[data-theme="light"] .button:after {
	background: #4A6B9B;
}

[data-theme="light"] .button:before {
	background: #E7ECEF;
	z-index: -2;
	transform: translate3D(0, 0, 0);
}


[data-theme="light"] .footer {
	background: #E7ECEF;
}

[data-theme="light"] .codepen a:hover svg {
	fill: #000;
}

[data-theme="light"] .section-masthead__overlay {
	background-color: transparent;
}

[data-theme="light"] .overlay_dark,
[data-theme="light"] .section-masthead__overlay {
	display: none;
}

[data-theme="light"] .icon-scroll-line:before {
	background: rgba(0, 0, 0, 0.1);
}

[data-theme="light"] .icon-scroll-line:after {
	background: #4A6B9B;
}

[data-theme="light"] .section-masthead .nub {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 212 50'%3E%3Cpath fill='%23FFFFFF' d='M212 50c-18.7-.8-37.3-9.1-51.6-25-15-16.6-34.7-25-54.4-25-19.7 0-39.4 8.4-54.4 25C37.3 40.9 18.7 49.2 0 50'/%3E%3C/svg%3E");
}

[data-theme="light"] .section-intro .nub {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 212 50'%3E%3Cpath fill='%23F7F9FC' d='M212 50c-18.7-.8-37.3-9.1-51.6-25-15-16.6-34.7-25-54.4-25-19.7 0-39.4 8.4-54.4 25C37.3 40.9 18.7 49.2 0 50'/%3E%3C/svg%3E");
}

[data-theme="light"] .section-masthead .nub svg,
[data-theme="light"] .section-intro .nub svg {
	fill: #4A6B9B;
}

[data-theme="light"] .social__item svg {
	fill: #576072;
}

[data-theme="light"] .footer a {
	color: #576072;
}

[data-theme="light"] .footer a:hover,
[data-theme="light"] .elsewhere a:hover {
	color: #5b96d6;
}

[data-theme="light"] .reveal::after {
	background-color: #5b96d6;
}

[data-theme="light"] .badge {
	border: 4px double #5b96d6;
	background: #fff;
}

[data-theme="light"] .badge:before {
	border: 1px dashed #5b96d6;
	background: #F7F9FC;
}

[data-theme="light"] .badge-border {
	fill: #f17b8d;
}

[data-theme="light"] .badge-title {
	fill: #4A6B9B;
}

[data-theme="light"] .badge:after {
	border: 2px dotted #5b96d6;
}

[data-theme="light"] .cursor__follower svg #inner {
	stroke: #4A6B9B;
	fill: #4A6B9B;
}

[data-theme="light"] .cursor__follower svg #outer {
	stroke-width: 3px;
	stroke: #4A6B9B;

}

[data-theme="light"] .lazy,
[data-theme="light"] [data-art-parallax="data-art-parallax"] {
	background-image: url('../img/load2.svg');
}

[data-theme="light"] .spinner {
	background-image: url('../img/load2.svg');
}

[data-theme="light"] .section-composition__primary {
	background: #fff;
}

.section-portfolio [data-art-parallax="data-art-parallax"],
.section-portfolio .grid__item .lazy {
	background-image: none !important;
	background-color: transparent;
	overflow: hidden;
}

[data-theme="light"] .work_logo {
	fill: #576072;
}

[data-theme="light"] .work_row {
	border-color: #E7ECEF;
}

[data-theme="light"] .row .figure-logo:nth-of-type(1),
[data-theme="light"] .row .figure-logo:nth-of-type(2),
[data-theme="light"] .row .figure-logo:nth-of-type(3) {
	border-color: #E7ECEF;
}

[data-theme="light"] .figure-property__headline {
	background-color: rgba(0, 0, 0, 0.15);
}

[data-theme="light"] label {
	color: #4A6B9B;
}

[data-theme="light"] input {
	border: 1px solid rgba(0, 0, 0, 0.15);
	background: rgba(255, 255, 255, 0.6);
	color: #576072;
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
}

[data-theme="light"] textarea {
	border: 1px solid rgba(0, 0, 0, 0.15);
	background: rgba(255, 255, 255, 0.6);
	-webkit-transition: all ease .4s;
	-moz-transition: all ease .4s;
	-ms-transition: all ease .4s;
	-o-transition: all ease .4s;
	transition: all ease .4s;
	color: #576072;
}

[data-theme="light"] .contact-sidebar h3 {
	color: #5b96d6;
}

[data-theme="light"] input:hover,
[data-theme="light"] textarea:hover {
	border: 1px solid #5b96d6;
}

[data-theme="light"] input:focus,
[data-theme="light"] textarea:focus {
	background: #fff;
	border: 1px solid #4A6B9B;
}

@media screen and (max-width: 991px) {
	.figure-logo {
		width: 50%;
	}

	[data-theme="light"] .work_row,
	[data-theme="light"] .row .figure-logo:nth-of-type(1),
	[data-theme="light"] .row .figure-logo:nth-of-type(2),
	[data-theme="light"] .row .figure-logo:nth-of-type(3) {
		border-color: #E7ECEF;
	}
}

/* Simple Logo Animation - 1.5s duration, every 10s */
.logo svg {
	animation: logo-simple-pulse 10s ease-in-out infinite;
}

/* Simple pulse animation */
@keyframes logo-simple-pulse {

	0%,
	85%,
	100% {
		transform: scale(1);
	}

	90% {
		transform: scale(1.1);
	}

	95% {
		transform: scale(0.95);
	}
}

/* Light mode version */
[data-theme="light"] .logo svg {
	animation: logo-simple-pulse-light 10s ease-in-out infinite;
}

@keyframes logo-simple-pulse-light {

	0%,
	85%,
	100% {
		transform: scale(1);
	}

	90% {
		transform: scale(1.1);
	}

	95% {
		transform: scale(0.95);
	}
}

/* Dark mode icon hover (sun icon) */
input[type=checkbox]+label:hover:before {
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 97 97' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M48.5 26.5c-12.133 0-22 9.869-22 22s9.867 22 22 22c12.129 0 22-9.869 22-22s-9.871-22-22-22zm0 50c-2.211 0-4 1.791-4 4v12a3.999 3.999 0 1 0 8 0v-12c0-2.209-1.793-4-4-4zm-28-28c0-2.209-1.793-4-4-4h-12c-2.211 0-4 1.791-4 4s1.789 4 4 4h12c2.207 0 4-1.791 4-4zm28-28c2.207 0 4-1.791 4-4v-12a3.999 3.999 0 1 0-8 0v12c0 2.209 1.789 4 4 4zm44 24h-12c-2.211 0-4 1.791-4 4s1.789 4 4 4h12c2.207 0 4-1.791 4-4s-1.793-4-4-4zM23.043 68.299l-8.484 8.486a3.997 3.997 0 0 0 0 5.656 3.985 3.985 0 0 0 2.828 1.172 3.988 3.988 0 0 0 2.828-1.172l8.484-8.486a3.997 3.997 0 0 0 0-5.656 3.997 3.997 0 0 0-5.656 0zm48.082-38.426a3.985 3.985 0 0 0 2.828-1.172l8.486-8.486a3.997 3.997 0 0 0 0-5.656 3.998 3.998 0 0 0-5.656 0l-8.486 8.486a3.997 3.997 0 0 0 0 5.656 3.988 3.988 0 0 0 2.828 1.172zm-48.082-1.172a3.988 3.988 0 0 0 2.828 1.172 3.988 3.988 0 0 0 2.828-1.172 3.997 3.997 0 0 0 0-5.656l-8.484-8.486a3.997 3.997 0 0 0-5.656 0 3.998 3.998 0 0 0 0 5.656l8.484 8.486zm50.91 39.598a3.997 3.997 0 0 0-5.656 0 3.998 3.998 0 0 0 0 5.656l8.488 8.486a3.985 3.985 0 0 0 2.828 1.172 3.988 3.988 0 0 0 2.828-1.172 3.997 3.997 0 0 0 0-5.656l-8.488-8.486z' fill='%23bc956a' fill-rule='nonzero'/%3E%3C/svg%3E");
}

/* Light mode icon hover (moon icon) */
[data-theme="light"] input[type=checkbox]+label:hover:before {
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 89 89' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M44.79 88.216c-24.262 0-44-19.738-44-44C.79 21.878 17.513 3.097 39.692.532c1.332-.174 2.637.363 3.5 1.375a4.005 4.005 0 0 1 .813 3.676 31.952 31.952 0 0 0-1.215 8.633c0 17.645 14.355 32 32 32 2.852 0 5.754-.408 8.629-1.215a4.012 4.012 0 0 1 3.676.809 3.998 3.998 0 0 1 1.379 3.502C85.907 71.491 67.128 88.216 44.79 88.216z' fill='%23f17b8d' fill-rule='nonzero'/%3E%3C/svg%3E");
}

/* CAPTCHA Refresh Button Styles */
.captcha-refresh {
	background: none;
	border: none;
	cursor: pointer;
	margin-left: 8px;
	padding: 0;
	border-radius: 3px;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
	width: 20px;
	height: 20px;
	outline: none;
	vertical-align: baseline;
	line-height: 1;
}

.captcha-refresh:focus {
	outline: none;
	border: none;
}

.captcha-refresh:active {
	outline: none;
	border: none;
}

.captcha-refresh svg {
	width: 12px;
	height: 12px;
	fill: #fff;
	transition: fill 0.3s ease;
	display: block;
}

/* Dark mode */
.captcha-refresh {
	color: #fff;
}

.captcha-refresh:hover svg {
	fill: #bc956a;
}

/* Light mode */
[data-theme="light"] .captcha-refresh svg {
	fill: #4A6B9B;
}

[data-theme="light"] .captcha-refresh:hover svg {
	fill: #f17b8d;
}

[data-theme="light"] .captcha-refresh {
	color: #576072;
}

/* Remove number input arrows */
#captcha::-webkit-outer-spin-button,
#captcha::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

#captcha[type=number] {
	-moz-appearance: textfield;
	/* Firefox */
	appearance: none;
}

/* Remove placeholder text */
#captcha::placeholder {
	color: transparent;
}

/* Text Selection Colors */
::selection {
	background-color: #bc956a !important;
	/* Gold accent color from your theme */
	color: #ffffff !important;
	/* White text */
}

/* Firefox compatibility */
::-moz-selection {
	background-color: #bc956a !important;
	color: #ffffff !important;
}

/* Light mode selection colors */
[data-theme="light"] ::selection {
	background-color: #f17b8d !important;
	/* Pink accent color from light mode */
	color: #ffffff !important;
	/* White text */
}

[data-theme="light"] ::-moz-selection {
	background-color: #f17b8d !important;
	color: #ffffff !important;
}

/* Video Styles */
@media (max-width: 768px) {
	#project-video {
		max-width: 100% !important;
		width: 100% !important;
	}
	#play-button {
		width: 60px !important;
		height: 60px !important;
	}
	#play-button svg {
		width: 30px !important;
		height: 30px !important;
	}
}

/* iOS Liquid Glass Play Button */
#play-button {
	position: relative;
	overflow: hidden;
}

#play-button::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.05) 100%);
	border-radius: 50%;
	opacity: 0;
	transition: opacity 0.3s ease;
}

#play-button:hover {
	transform: translate(-50%, -50%) scale(1.1);
	background: rgba(255,255,255,0.15);
	border-color: rgba(255,255,255,0.3);
	box-shadow: 0 12px 40px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.3);
}

#play-button:hover::before {
	opacity: 1;
}

#play-button:active {
	transform: translate(-50%, -50%) scale(0.95);
	transition: transform 0.1s ease;
}

#play-button svg {
	position: relative;
	z-index: 1;
	transition: transform 0.3s ease;
}

#play-button:hover svg {
	transform: scale(1.1);
}

/* Methodology Page Styles */
.methodology-phases {
	margin: 4rem 0;
}

.methodology-phase {
	display: flex;
	align-items: flex-start;
	margin-bottom: 3rem;
	gap: 2rem;
}

.methodology-phase:last-child {
	margin-bottom: 0;
}

.phase-number {
	flex-shrink: 0;
	width: 60px;
	height: 60px;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	font-weight: 700;
	color: white;
	margin-top: 0.5rem;
}

.phase-content h3 {
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 1rem;
	color: #ffffff;
}

.phase-content p {
	margin-bottom: 1.5rem;
	color: #cccccc;
	line-height: 1.6;
}

.phase-content ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.phase-content li {
	position: relative;
	padding-left: 1.5rem;
	margin-bottom: 0.5rem;
	color: #cccccc;
}

.phase-content li:before {
	content: "→";
	position: absolute;
	left: 0;
	color: #667eea;
	font-weight: bold;
}

.methodology-principles {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 2rem;
	margin: 2rem 0;
}

.principle-item {
	background: rgba(255, 255, 255, 0.05);
	border-radius: 12px;
	padding: 1.5rem;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.principle-item h5 {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 0.75rem;
	color: #ffffff;
}

.principle-item p {
	margin: 0;
	color: #cccccc;
	line-height: 1.5;
	font-size: 0.95rem;
}

.methods-categories {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 1.5rem;
	margin: 2rem 0;
}

.method-category {
	background: rgba(102, 126, 234, 0.1);
	border-radius: 8px;
	padding: 1.25rem;
	border: 1px solid rgba(102, 126, 234, 0.2);
}

.method-category h5 {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: #667eea;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.method-category p {
	margin: 0;
	color: #cccccc;
	line-height: 1.5;
	font-size: 0.9rem;
}

.process-steps {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 1.5rem;
	margin: 2rem 0;
}

.process-step {
	background: rgba(255, 255, 255, 0.03);
	border-radius: 8px;
	padding: 1.25rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	transition: all 0.3s ease;
}

.process-step:hover {
	background: rgba(255, 255, 255, 0.05);
	border-color: rgba(102, 126, 234, 0.2);
	transform: translateY(-2px);
}

.process-step h5 {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 0.75rem;
	color: #667eea;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.process-step p {
	margin: 0;
	color: #cccccc;
	line-height: 1.5;
	font-size: 0.95rem;
}

.design-principles {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 2rem;
	margin: 2rem 0;
}

.principles-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 2rem;
	margin: 3rem 0;
}

.principle-item {
	padding: 1.5rem;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: all 0.3s ease;
}

.principle-item:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(102, 126, 234, 0.3);
	transform: translateY(-2px);
}

.principle-item h5 {
	font-size: 1.2rem;
	font-weight: 600;
	margin-bottom: 1rem;
	color: #ffffff;
}

.principle-item p {
	color: #cccccc;
	line-height: 1.6;
	margin: 0;
}

.tools-categories {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 2rem;
	margin: 3rem 0;
}

.tool-category {
	padding: 1.5rem;
	background: rgba(255, 255, 255, 0.03);
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.tool-category h5 {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 1rem;
	color: #ffffff;
}

.tool-category ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.tool-category li {
	position: relative;
	padding-left: 1.2rem;
	margin-bottom: 0.5rem;
	color: #cccccc;
	font-size: 0.9rem;
}

.tool-category li:before {
	content: "•";
	position: absolute;
	left: 0;
	color: #667eea;
	font-weight: bold;
}

.methodology-cta {
	text-align: center;
	padding: 3rem 2rem;
	background: linear-gradient(135deg, rgba(102, 126, 234, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
	border-radius: 16px;
	border: 1px solid rgba(102, 126, 234, 0.2);
	margin: 4rem 0;
}

.methodology-cta h4 {
	font-size: 1.8rem;
	font-weight: 600;
	margin-bottom: 1rem;
	color: #ffffff;
}

.methodology-cta p {
	color: #cccccc;
	margin-bottom: 2rem;
	line-height: 1.6;
}

.methodology-cta .button {
	margin-top: 1rem;
}

/* Responsive Design for Methodology */
@media (max-width: 768px) {
	.methodology-phase {
		flex-direction: column;
		gap: 1rem;
		text-align: center;
	}
	
	.phase-number {
		align-self: center;
	}
	
	.principles-grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	
	.tools-categories {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	
	.methodology-cta {
		padding: 2rem 1rem;
	}
}
