/*

 * CSS

 * arrowww (WebTalkTo v.16)

 * Feb-Mar 2020

 * By Maxim & Drew

 */


/* - - - - - - - - - - - - - - - - - - - -

    General

   - - - - - - - - - - - - - - - - - - - - */

:root {
	--themeColorBlack: #13181e;
	--themeColorOrange: #ff4d00;
	--themeColorWhite: #ffffff;
	--themeColorBlue: #1e4dfc;
	--themeColorYellow: #ffc507;
	--fontLight: 'Light', sans-serif;
	--fontRegular: 'Regular', sans-serif;
	--fontSemiBold: 'SemiBold', sans-serif;

	/*  - - START  MCW - -  */

--McwFontRegular: 'MCW Regular', sans-serif;
--McwFontBook: 'MCW Book', sans-serif;
--McwFontMedium: 'MCW Medium', sans-serif;
--McwFontSemibold: 'MCW Semibold', sans-serif;
--McwFontBold: 'MCW Bold', sans-serif;

--McwLightColor: #ffffff;
--McwDarkColor: #0F0F0F;

--McwTextualContentWidth: 690px;
--McwCenteringForImgWrap: auto;

/*  - - END  MCW - -  */
}
::selection {
    background: rgba(255, 77, 0, 0.3);
    color: var(--themeColorBlack);
    text-shadow: none;
}
::-moz-selection {
    background: rgba(255, 77, 0, 0.3);
    color: var(--themeColorBlack);
    text-shadow: none;
}
body ::selection {
	background-color: transparent;
}
.text-selection-yellow ::selection {
	background-color: rgba(255, 198, 0, 0.3);
}
.text-selection-blue ::selection {
	background-color: rgba(30, 77, 252, 0.3);
}
.text-selection-orange ::selection {
	background-color: rgba(255, 77, 0, 0.3);
}
.text-selection-black ::selection {
	background-color: rgba(19, 24, 30, 0.3);
}
@font-face {
	font-family: "Light";
	src: url("../fonts/Light.woff") format("woff");
	font-weight: normal;
    font-style: normal;
}
@font-face {
	font-family: "Regular";
	src: url("../fonts/Regular.woff") format("woff");
	font-weight: normal;
    font-style: normal;
}
@font-face {
	font-family: "SemiBold";
	src: url("../fonts/SemiBold.woff") format("woff");
	font-weight: normal;
    font-style: normal;
}
@media only screen and (min-width: 1026px) {
	::-webkit-scrollbar {
		width: 0;
	}
}

/*  - - START  MCW - -  */

@font-face {
	font-family: "MCW Regular";
	src: url("../fonts/mcw_regular.woff2") format("woff2");
}
@font-face {
	font-family: "MCW Book";
	src: url("../fonts//mcw_book.woff2") format("woff2");
}
@font-face {
	font-family: "MCW Medium";
	src: url("../fonts//mcw_medium.woff2") format("woff2");
}
@font-face {
	font-family: "MCW Semibold";
	src: url("../fonts//mcw_semibold.woff2") format("woff2");
}
@font-face {
	font-family: "MCW Bold";
	src: url("../fonts//mcw_bold.woff2") format("woff2");
}

/*  - - END  MCW - -  */

html {
    -webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
*, *:before, *:after {
	-webkit-box-sizing: inherit;
	   -moz-box-sizing: inherit;
	        box-sizing: inherit;
}
body {
	overflow-x: hidden;
	background: #f4efef;
	color: var(--themeColorBlack);
	margin: 0;
	 -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body * {
	cursor: none !important;
}
html {
    height: 100%;
}
a {
	color: inherit;
    text-decoration: none;
	background-color: transparent;
    -webkit-text-decoration-skip: objects;
	-webkit-tap-highlight-color: transparent;
}
a:active, a:hover {
    outline-width: 0;
}
[data-links-hover] a {
	transition: opacity 0.3s ease; /* !!! */
}
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	width: 100%;
	height: auto;
	max-width: fit-content;
}


.clear-both {
	clear: both;
    height: 1px;
}



/*  - - - - - - - - - - - - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - -

    MCW

	- - - - - - - - - - - - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - -  */

	.mixed-content-wrap {
		/* background: var(--McwLightColor); */
		color: var(--McwDarkColor);
		 -webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		width: 100%;
		max-width: 100%;
		position: relative;
		overflow: hidden;
		margin: 0 auto;
		padding: 20px 0;
	}
	.mixed-content-wrap a {
		color: inherit;
		text-decoration: none;
		cursor: pointer;
		display: inline-block;
		position: relative;
		background-color: transparent;
		-webkit-text-decoration-skip: objects;
		-webkit-tap-highlight-color: transparent;
	}
	.mixed-content-wrap a:active, .mixed-content-wrap a:hover {
		outline-width: 0;
	}
	.mixed-content-wrap a:before {
		content: "";
		position: absolute;
		top: -1px;
		width: 100%;
		height: 100%;
		border-bottom: 1px solid;
		transition: width 0.5s cubic-bezier(0.6, 0.07, 0.06, 0.6);
	}
	.mixed-content-wrap a:hover:before {
		width: 0;
	}
	.mixed-content-wrap a:after {
		content: "";
		position: absolute;
		top: -1px;
		right: 0;
		width: 0;
		height: 100%;
		border-bottom: 1px solid;
		transition: width 0.5s cubic-bezier(0.6, 0.07, 0.06, 0.6);
		transition-delay: 250ms;
	}
	.mixed-content-wrap a:hover:after {
		width: 100%;
	}
	.mixed-content-wrap img {
		max-width: 100%;
		height: auto;
	}
	.mixed-content-wrap .clear-both {
		clear: both;
		height: 1px;
	}
	.text-wrap {
		max-width: var(--McwTextualContentWidth);
		position: relative;
		margin: 0 auto;
		font-family: var(--McwFontRegular);
		font-style: normal;
		font-size: 20px;
		font-weight: 450;
		line-height: 142%;
		letter-spacing: -0.2px;
		padding: 0 20px;
	}
	.img-wrap {
		line-height: 0;
		margin: 30px auto 0;
		position: relative;
		padding: 0 20px 30px;
		max-width: 1440px;
	}
	.mcw-full-width {
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	.content-width-for-wrap {
		max-width: var(--McwTextualContentWidth);
		margin-left: var(--McwCenteringForImgWrap);
		margin-right: var(--McwCenteringForImgWrap);
	}
	.mixed-content-wrap > .img-wrap:first-child {
		margin-top: 0;
	}
	.mixed-content-wrap > .text-wrap:first-child > p:first-child {
		font-family: var(--McwFontBook);
		font-size: 24px;
		font-style: normal;
		font-weight: 500;
		line-height: 118%; /* 33.04px */
		letter-spacing: -0.56px;
	}
	.img-container {
		position: relative;
		display: inline-block;
	}
	.i-wrap {
		line-height: 0;
		margin: 0 auto;
		position: relative;
		max-width: 1400px;
	}
	.i-wrap .img-container {
		/* max-width: 1400px; */
		/* will remove spacings between images */ display: flex;
	}
	.spacing { /* i-wrap top and bottom in project with text */
		height: 40px;
	}
	.mixed-content-wrap video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
		width: 100%;
		height: auto;
		max-width: fit-content;
	}
	.mixed-content-wrap audio {
		vertical-align: middle;
	}
	.two-imgs, .three-imgs, .four-imgs  {
		display: table;
	}
	.two-imgs .img-container {
		max-width: 49.8%;
	}
	.two-imgs .img-container:nth-child(1) {
		float: left;
	}
	.two-imgs .img-container:nth-child(2) {
		float: right;
	}
	.three-imgs .img-container {
		max-width: 33.3%;
	}
	.three-imgs .img-container {
		padding-right: 5px;
	}
	.four-imgs .img-container {
		max-width: 25%;
		padding-right: 5px;
	}
	.first-imgs {
		margin-bottom: 5px;
		padding-bottom: 0;
	}
	.middle-imgs {
		margin-top: 0!important;
		margin-bottom: 5px;
		padding-bottom: 0;
	}
	.last-imgs {
		margin-top: 0!important;
	}
	
	@media screen and (max-width: 770px) {
		.four-imgs .img-container {
			max-width: 49.5%;
			padding-right: 0;
			padding-bottom: 1%;
		}
		.first-four-imgs, .middle-four-imgs {
			margin-bottom: 0!important;
		}
		.four-imgs .img-container:nth-child(1), .four-imgs .img-container:nth-child(3) {
			float: left;
		}
		.four-imgs .img-container:nth-child(2), .four-imgs .img-container:nth-child(4) {
			float: right;
		}
	}
	@media screen and (max-width: 430px) {
		.img-wrap {
			margin: 20px 0 40px;
		}
		/*
		.two-imgs .img-container:nth-child(1) {
			float: none;
			margin-bottom: 20px;
		}
		.two-imgs .img-container:nth-child(2) {
			float: none;
		}
		.two-imgs .img-container {
			max-width: 100%;
		}
		*/
		
		.three-imgs .img-container {
		max-width: 100%;
		}
		.three-imgs .img-container {
			padding-right: 0;
			margin-bottom: 5px;
		}
	}
	
	
	/*  - - - - - - - - - - - - - - - - - - - -
	
		Typography (text-wrap)
	
		- - - - - - - - - - - - - - - - - - - -  */
	
	.text-wrap h1, .text-wrap h2, .text-wrap h3 {
		position: relative;
		max-width: 90%;
	}
	.text-wrap h2, .text-wrap h1 {
		margin: 110px 0 1px;
		/*padding-bottom: 20px;*/
		font-family: var(--McwFontMedium);
		font-style: normal;
		font-weight: 500;
		line-height: 92%; /* 53.664px */
		letter-spacing: -2.333px;
	}
	.text-wrap h1 {
		font-size: 72px;
	}
	.text-wrap h2 {
		font-size: 52px;
	}
	.text-wrap h3 {
		margin: 42px 0 1px;
		font-family: var(--McwFontSemibold);
		font-size: 22px;
		font-style: normal;
		font-weight: 500;
		line-height: 92%;
		letter-spacing: -0.6px;
	}
	.text-wrap h2+p, .text-wrap h3+p  {
		margin: 12px 0 1px;
	  }
	.text-wrap p {
		margin: 32px 0 1px;
	}
	strong {
		font-weight: bold;
	}
	em {
		font-style: italic;
	}
	.text-wrap ul {
		margin: 20px 0 1px;
		padding-left: 20px;
		list-style-type: disc;
	}
	.text-wrap ul li {
		margin-top: 12px;
	}
	hr {
		clear: both;
		width: 40%;
		height: 1px;
		border: transparent;
		margin-top: 80px;
		margin-bottom: 80px;
		background: var(--McwDarkColor);
	}
	.dot-hr {
		clear: both;
		width: 4px;
		height: 4px;
		border-radius: 50%;
		background: var(--McwDarkColor);
		margin: 40px auto;
	}
	.text-wrap blockquote {
		position: relative;
		min-height: 36px;
		margin: 0 0 0 30px;
		font-style: italic;
	}
	.text-wrap blockquote:before {
		content: '\"';
		font-family: cursive;
		position: absolute;
		left: -46px;
		font-size: 92px;
		line-height: 0.8;
		height: 100%;
		overflow: hidden;
	}
	.blockquote-info {
		font-size: 16px;
		font-style: italic;
		margin: 10px 0 1px
	}
	.left-line-section {
		position: relative;
		padding-left: 20px;
		border-left: 1px solid var(--McwDarkColor);
	}
	.left-line-section::first-letter {
		font-size: 42px;
		line-height: 0.8em;
	}
	pre {
		overflow: auto;
		padding: 20px;
		margin: 30px 0 1px;
		white-space: pre;
		border-left: 1px solid;
	}
	.text-wrap pre code > p:first-child {
		margin-top: 0;
	}
	code {
		line-height: 1.3;
		font-size: 15px;
		font-family: monospace;
	}
	.image-caption {
		font-family: var(--McwFontRegular);
		line-height: 150%;
		margin: 22px auto 0;
		font-size: 14px;
		text-align: center;
		max-width: 90%;
	}
	.image-caption p:first-of-type {
		margin-top: 0;
	}
	.image-caption p {
		margin: 7px 0 1px;
	}
	
	@media screen and (max-width: 770px) {
		hr {
			margin-top: 66px;
			margin-bottom: 66px;
		}
		.dot-hr {
			margin: 88px auto;
		}
	}
	@media screen and (max-width: 416px) {
		.text-wrap h3 {
			font-size: 30px;
			line-height: 35px;
		}
		.text-wrap h2, .text-wrap h1 {
			font-size: 60px;
			line-height: 60px;
		}
	}






/* END new styles */






.mixed-content-wrap-in { /* !!! */
	opacity: 1;
	transform: translate3d(0, 0, 0);
	pointer-events: auto;
}
.mixed-content-wrap .text-wrap:last-child {
  margin-bottom: 100px;
}


.more-link, .link-underline-visible {
	position: relative;
}
.big-title .more-link span {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    border-bottom: 2px solid;
    -webkit-transition: width 0.3s ease;
    -moz-transition: width 0.3s ease;
    -o-transition: width 0.3s ease;
    transition: width 0.3s ease;
}
.more-link:hover span {
	width: 100%;
}
.link-underline-visible:hover {
	font-style: italic;
	opacity: 0.5;
}
.link-underline-visible span {
    position: absolute;
		top: 0;
    left: 0;
    width: 100%;
		height: 92%;
    border-bottom: 2px solid;
    -webkit-transition: width 0.3s ease;
    -moz-transition: width 0.3s ease;
    -o-transition: width 0.3s ease;
    transition: width 0.3s ease;
}
.link-underline-visible:hover span {
	width: 0;
}
.shadow-for-image img {
  /* Usefull if site BG is white
	box-shadow: 0 0 1px rgba(19, 24, 30, 0.43); */
}

.decor-shapes-wrap {
	overflow: hidden;
	position: absolute;
	width: 100vw;
	height: 100vh;
    top: 0;
    left: 0;
}
.decor-shapes-wrap svg {
	/*transition: all 1.8s cubic-bezier(0.82, 0.05, 0.55, 0.98);*/ /* !!! */
	transition: transform 1s cubic-bezier(.23, 1, .82, 1); /* !!! */
}
.decor-circle, .decor-triangle, .decor-square {
	position: absolute;
	fill: none;
	stroke-miterlimit: 10;
}
.decor-circle {
	stroke: var(--themeColorOrange);
    width: 911px;
	opacity: 0.4;
    left: 50%;
    top: 50%;
    transform: translate(-100%, -30%);
}
.decor-triangle {
	stroke: #7a7a7a;
    width: 1583px;
    opacity: 0.3;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -34%);
}
.decor-square {
	stroke: var(--themeColorBlue);
    width: 906px;
    opacity: 0.3;
    left: 50%;
    top: 50%;
    transform: translate(-35%, -56%);
}

.list-numbers {
	position: absolute;
    font-size: 50%;
    right: 100%;
    top: -0.5em;
    letter-spacing: -0.03em;
}

.BTT {
	opacity: 0;
    transform: translate3d(0, 100px, 0) rotateY(40deg);
    transition: transform 2.1s cubic-bezier(.215,.61,.355,1), opacity 1.2s cubic-bezier(.215,.61,.355,1);
}
.BTT.come-in {
	opacity: 1;
	transform: translate3d(0, 0, 0) rotateY(0deg);
}

#content {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	transition: transform 1s cubic-bezier(.23, 1, .82, 1);
}
@media screen and (max-width: 1245px) { /* !!! */
	#content {
		position: inherit;
	}
}



/* - - - - - - - - - - - - - - - - - - - -

    feedback

   - - - - - - - - - - - - - - - - - - - - */

.feedback-wrap {
	background: rgba(244, 239, 242, 0.96);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 10;
	transition: opacity 0.4s ease; /* !!! */
	/*transform: translateX(100%);*/ /* !!! */
	opacity: 0; /* !!! */
	pointer-events: none; /* !!! */
}
.feedback-wrap-in {
	/*transform: translateX(0%);*/ /* !!! */
	opacity: 1; /* !!! */
	pointer-events: auto; /* !!! */
}
.feedback-container {
    position: relative;
    width: 90%;
		max-width: 1600px;
		margin: 0 auto;
    top: 50%;
    transform: translate3d(0, -50%, 0);
}
.feedback-message {
    font-size: 10vw;
    font-family: var(--fontLight);
	letter-spacing: -0.08em;
	line-height: 0.73em;
	margin-bottom: 0.3em;
}
@media screen and (min-width: 1900px) {
	.feedback-message {
	 font-size: 190px;
	}
}
.feedback-message-small-text {
	font-family: var(--fontLight);
	    letter-spacing: -0.045em;
	    font-size: 18px;
}


/* - - - - - - - - - - - - - - - - - - - -

    loader

   - - - - - - - - - - - - - - - - - - - - */

.loader-bg {
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 100;
	background-position: center center;
	background-size: cover;
	pointer-events: none;
	transform: scale(1.12);
	transition: transform 2s cubic-bezier(0.82, 0.05, 0.55, 0.98) 0.8s;
}
.contact .loader-bg, .about .loader-bg { /* !!! */
	top: -5%;
}
.loader-bg-in, .loader-bg-outro {
	transform: scale(1.1);
}
.loader-bg:after {
	content: "";
	background: var(--themeColorBlack);
	position: fixed;
	top: 100%;
	bottom: -50%;
	left: 100%;
	right: -50%;
	transition: none;
	border-radius: 50%;
}
.loader-bg-in:after {
	top: -80%;
    left: -80%;
	transition: all 0.9s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.loader-bg-out:after {
	bottom: 90%;
    right: 90%;
	transition: all 0.9s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.loader-bg-outro:after {
	background: var(--themeColorYellow);
}
.loader-icon {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    margin-left: -63px;
    margin-left: -3.3vw;
    margin-top: -63px;
    margin-top: -3.3vw;
    transform: translate(120%, 50%);
    z-index: 101;
	transition: transform 0.7s cubic-bezier(0.82, 0.05, 0.55, 0.98);
	pointer-events: none;
	mix-blend-mode: difference; /* !!! */
}
.loader-icon-in {
	transform: translate(50%, 50%);
}
.loader-icon-out {
	transform: translate(-20%, 50%);
}
.loader-icon svg {
	fill: var(--themeColorOrange);
    width: 126px;
    width: 6.6vw;
    height: auto;
}
.loader-icon-in svg {
	-webkit-animation: loader-icon-anime 2s infinite;
	   -moz-animation: loader-icon-anime 2s infinite;
		 -o-animation: loader-icon-anime 2s infinite;
		    animation: loader-icon-anime 2s infinite;
}

.content-loader-icon {
    //transform: translate(50%, 106%);
	transform: translateX(50%) translateY(calc(100% + 3.3vw));
	transition: all 0.3s cubic-bezier(0.82, 0.05, 0.55, 0.98); /* !!! */
}
.content-loader-icon-in {
	transform: translate(50%, 99%);
	opacity: 1; /* !!! */
}
.content-loader-icon-in svg {
	-webkit-animation: loader-icon-anime 2s infinite;
	   -moz-animation: loader-icon-anime 2s infinite;
		 -o-animation: loader-icon-anime 2s infinite;
		    animation: loader-icon-anime 2s infinite;
}
.content-loader-icon-out {
	transform: translate(50%, 106%);
	opacity: 0; /* !!! */
}

@-webkit-keyframes loader-icon-anime {
0% {transform: rotate(135deg) scale(0.9)}
55% {transform: rotate(495deg) scale(1)}
90% {transform: rotate(495deg) scale(0.9)}
100% {transform: rotate(495deg) scale(0.9)}
}
@-moz-keyframes loader-icon-anime {
0% {transform: rotate(135deg) scale(0.9)}
55% {transform: rotate(495deg) scale(1)}
90% {transform: rotate(495deg) scale(0.9)}
100% {transform: rotate(495deg) scale(0.9)}
}
@-o-keyframes loader-icon-anime {
0% {transform: rotate(135deg) scale(0.9)}
55% {transform: rotate(495deg) scale(1)}
90% {transform: rotate(495deg) scale(0.9)}
100% {transform: rotate(495deg) scale(0.9)}
}
@keyframes loader-icon-anime {
	0% {transform: rotate(135deg) scale(0.9)}
	55% {transform: rotate(495deg) scale(1)}
	90% {transform: rotate(495deg) scale(0.9)}
	100% {transform: rotate(495deg) scale(0.9)}
}

@media screen and (min-width: 1900px) {
	.loader-icon {
	margin-left: -63px;
    margin-top: -63px;
	}
	.loader-icon svg {
    width: 126px;
}
}
@media screen and (max-width: 1026px) {
	.loader-icon {
	margin-left: -34px;
    margin-top: -34px;
	}
	.loader-icon svg {
    width: 68px;
}
/* !!! */
/*.content-loader-icon {
		transform: translateX(50%) translateY(calc(100% + 34px));
}*/
}


/* - - - - - - - - - - - - - - - - - - - -

    intro

   - - - - - - - - - - - - - - - - - - - - */

.intro-logotype {
	position: fixed;
	line-height: 1;
    z-index: 101;
    top: 50%;
    left: 50%;
	transform: translate(90vw, -50%) scaleX(2);
	font-size: 18vw;
    font-family: var(--fontLight);
    letter-spacing: -0.08em;
	transition: transform 1.2s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.intro-logotype-in {
	transform: translate(-50%, -50%);
}
.intro-logotype-out {
	transform: translate(-150vw, -50%) scaleX(1.3);
}
.www-anime {
	position: relative;
}
.www-anime svg {
	width: 22%;
    height: auto;
    position: absolute;
	z-index: -1;
    left: 0;
    bottom: 0.22em;
	fill: var(--themeColorOrange);
	transform: rotate(135deg);
	animation: intro-icon-anime 3s infinite;
	animation-timing-function: ease;
}
@keyframes intro-icon-anime {
	0% {left: 0;transform: rotate(0deg)}
	30% {left: 82%;transform: rotate(360deg)}
	100% {left: 0;transform: rotate(0deg)}
}

.intro-small-text {
    position: absolute;
    letter-spacing: -0.045em;
	font-size: 1.8vw;
		transform: translate(46em, -0.3em) scaleX(3);
    transition: transform 1.4s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.intro-small-text-in {
	transform: translate(30vw, -0.3em);
	transform: translate(17em, -0.3em);
}
.intro-small-text-out {
	transform: translate(40vw, -0.3em) scaleX(1.1);
}
@media screen and (min-width: 1900px) {
	.intro-logotype {
	 font-size: 344px;
	}
	.intro-small-text {
		font-size: 34px;
	}
	.intro-small-text-in {
		transform: translate(17em, -0.3em);
	}
	.intro-small-text-out {
		transform: translate(23em, -0.3em) scaleX(1.1);
	}
}
@media screen and (max-width: 766px) {
	.intro-logotype {
    font-size: 24vw;
	}
	.intro-small-text {
    font-size: 2.7vw;
	transform: translate(34em, -0.3em) scaleX(3);
	}
	.intro-logotype-out {
    transform: translate(-185vw, -50%) scaleX(1.3);
	}
	//.intro-small-text-in {
		transform: translate(13.3em, -0.3em);
}
.intro-small-text-in {
	transform: translate(0.6em, -0.3em);
}
	//.intro-small-text-out {
		transform: translate(15.3em, -0.3em) scaleX(1.1);
}
.intro-small-text-out {
	transform: translate(9em, -0.3em) scaleX(1.1);
}
}


/* - - - - - - - - - - - - - - - - - - - -

    thank you

   - - - - - - - - - - - - - - - - - - - - */

.thank-you-wrap {
    position: relative;
		overflow: hidden;
}
.thank-you-heart {
	width: 116px;
	width: 6.2vw;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.thank-you-wrap svg {
    fill: var(--themeColorOrange);
		-webkit-animation: thank-you-pulse 1.2s infinite;
       -moz-animation: thank-you-pulse 1.2s infinite;
         -o-animation: thank-you-pulse 1.2s infinite;
            animation: thank-you-pulse 1.2s infinite;
}
@-webkit-keyframes thank-you-pulse {
0% {transform: scale(0.6);}
75% {transform: scale(1);}
90% {transform: scale(1);}
100% {transform: scale(0.6);}
}
@-moz-keyframes thank-you-pulse {
0% {transform: scale(0.6);}
75% {transform: scale(1);}
90% {transform: scale(1);}
100% {transform: scale(0.6);}
}
@-o-keyframes thank-you-pulse {
0% {transform: scale(0.6);}
75% {transform: scale(1);}
90% {transform: scale(1);}
100% {transform: scale(0.6);}
}
@keyframes thank-you-pulse {
	0% {transform: scale(0.6);}
	75% {transform: scale(1);}
	90% {transform: scale(1);}
	100% {transform: scale(0.6);}
}

.thank-you-text {
    font-size: 5vw;
		animation: thank-you-rotate 80s infinite linear;
		letter-spacing: 0.1em;
}

.design-and-csd {
	color: var(--themeColorYellow);
	font-family: var(--fontLight);
	letter-spacing: -15px;
	letter-spacing: 0.1em;
	line-height: 0.73em;
	pointer-events: none;
	font-size: 3vw;
	/*animation: thank-you-rotate 80s infinite linear;*/ /* !!! */
}
.landing .design-and-csd { /* !!! */
	animation: thank-you-rotate 80s infinite linear;
}
.dac-container {  /* !!! */
	z-index: 1;
	//left: 70%;
	//top: 4em;
	left: 0vw;
	top: 50vh;
	position: fixed; /* !!! */
	transition: transform 1s cubic-bezier(.23, 1, .82, 1);
	mix-blend-mode: difference;
	display: none; /* !!! */
}
.landing .dac-container { /* !!! */
	display: block;
}
@media screen and (max-width: 1245px) { /* !!! */
	.dac-container {
		transition: transform .06s cubic-bezier(.23, 1, .82, 1);
	}
}
@keyframes thank-you-rotate {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

@media screen and (min-width: 1900px) {
	.thank-you-text {
	    font-size: 95px;
	}
	.design-and-csd {
	    font-size: 56px;
	}
	.thank-you-heart {
		width: 116px;
	}
}
@media screen and (max-width: 1364px) {
	.design-and-csd {
	    font-size: 41px;
	}
}
@media screen and (max-width: 756px) {
	.thank-you-text {
	    font-size: 38px;
	}
	.design-and-csd {
	    font-size: 31px;
		//left: 53%; /* !!! */
	}
	.thank-you-heart {
		width: 47px;
	}
}
@media screen and (max-width: 470px) {
	//.dac-container {
		left: calc(100% - 161px);
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    publisher

   - - - - - - - - - - - - - - - - - - - - */

body.publisher {
	background: #eff4f4;
	height: unset;
}
.publisher .meta-wrap {
    position: absolute;
		top: 0;
}
.publisher .meta-container {
	max-width: 100%;
    width: 95%;
    top: unset;
    transform: unset;
}
.publisher .big-title {
    font-size: 26vw;
		margin-top: 0.2em;
}
.publisher .two-inline-wrap {
    margin: 20vw auto 0;
}
.publiser-data-container {
	background: rgba(244, 239, 239, 0.96);
    box-shadow: -5px 36px 57px rgba(0, 0, 0, 0.2);
    line-height: 1.3!important;
    font-size: 28px;
    font-family: var(--fontLight);
    letter-spacing: -0.045em;
    padding: 7px 68px 38px;
}
.publiser-data-single-field {
	margin: 60px 0 0 0;
}
input, textarea, select {
	display: block;
    margin: 5px 0 0 0;
    background: transparent;
    font: inherit;
    width: 100%;
    border: none;
    border-bottom: 1px solid #cdd3e4;
    padding: 12px 0;
    line-height: 1!important;
		font-family: var(--fontRegular);
    letter-spacing: -0.06em;
}
textarea:focus, select:focus, input:focus {
		outline-color: transparent;
		outline: none;
}
input::placeholder, textarea::placeholder {
  color: #9183a0;
}
label {
	display: block;
    font-size: 16px;
}

.contact input, .contact textarea {
    margin: 0;
    width: 100%;
    border-bottom: none;
    padding: 0;
    font-family: var(--fontLight);
    letter-spacing: inherit;
    line-height: inherit!important;
	color: #9183a0;
}
textarea {
	padding-top: 0.1em!important;
}
.contact input::placeholder, .contact textarea::placeholder {
  color: var(--themeColorBlack);
}
.contact a.button {
    margin: 0.9em 0 0 0;
    padding: 0 2em;
    height: 2.5em;
    line-height: 2.5em;
    font-size: 0.4em;
    font-family: var(--fontLight);
}

a.button {
	overflow: hidden;
	position: relative;
	display: inline-block;
	border-radius: 3px;
    margin: 30px 0 0 0;
    cursor: pointer;
    text-align: center;
    padding: 0 42px;
    height: 60px;
    line-height: 59px;
    outline-color: transparent;
    font-size: 17px;
	letter-spacing: -0.045em;
	background: #cde4cd;
	font-family: var(--fontRegular);
    color: #4d4d4b;
	transition: all 0.6s ease;

}
a.button:hover {
	box-shadow: -5px 6px 17px rgba(0, 0, 0, 0.2);
}
a.button:before {
    content: "";
    position: absolute;
    border-bottom: none;
    bottom: 0;
    left: 0;
    width: 4%;
    height: 10%;
    border-radius: 50%;
    transform: translateX(-102%);
    background: #add0d1;
    -webkit-transition: transform 0.6s ease;
       -moz-transition: transform 0.6s ease;
         -o-transition: transform 0.6s ease;
            transition: all 0.6s ease;
}
a.button:hover:before {
	transform: translateX(0);
    width: 150%;
    height: 150%;
    border-radius: 1%;
}
a.button span {
	z-index: 1;
    position: relative;
}


/* - - - - - - - - - - - - - - - - - - - -

    testimonials

   - - - - - - - - - - - - - - - - - - - - */

.testimonials .text-wrap {
	margin-bottom: 100px;
    background: #f1f4ef;
	padding: 3.27vw;
	transform: rotate(-25deg);
}
@media screen and (min-width: 1900px) {
.testimonials .text-wrap {
    padding: 62px;
}
}
.quote-section-who-said {
    margin: 30px 0 1px;
    overflow: hidden;
}
.quote-section-who-said img {
    max-width: 100px;
    width: 100%;
    float: left;
    margin-right: 20px;
    margin-bottom: 2px;
    border-radius: 50%;
}
.quote-section-who-said-text {
    margin-top: 25px;
}
.quote-section-who-said-name {
    font-size: 22px;
}
.quote-section-who-said-description {
    font-size: 14px;
}


/* - - - - - - - - - - - - - - - - - - - -

    cursor

   - - - - - - - - - - - - - - - - - - - - */

.cursor {
	position: fixed;
    z-index: 1000;
	top: -38px;
		width: 41px;
    width: 2.157vw;
    height: 38px;
    height: 2vw;
	transform-origin: right;
    pointer-events: none;
    background-image: url(../images/cursor.svg);
	background-repeat: no-repeat;
	mix-blend-mode: difference;
}
.cursor-over-a:before {
    content: "";
	position: absolute;
	right: -8px;
	right: -0.42vw;
    bottom: -8px;
    bottom: -0.42vw;
	width: 20px;
	width: 1.053vw;
    height: 20px;
    height: 1.053vw;
    border-radius: 50%;
    transition: none;
    -webkit-animation: pulse 0.9s infinite;
	   -moz-animation: pulse 0.9s infinite;
		 -o-animation: pulse 0.9s infinite;
		    animation: pulse 0.9s infinite;
}
@media screen and (min-width: 1900px) {
	.cursor {
	    width: 41px;
	    height: 38px;
	}
	.cursor-over-a:before {
		width: 20px;
	    height: 20px;
			right: -8px;
		    bottom: -8px;
		}
}
/* !!! */
/*@media screen and (max-width: 1245px) {
	.cursor {
		display: none;
	}
}*/
@-webkit-keyframes pulse {
	0% {box-shadow: 0 0 0 0 var(--themeColorOrange)}
	75% {box-shadow: 0 0 0 15px rgba(0, 0, 0, 0)}
	100% {box-shadow: 0 0 0 0 rgba(0, 0, 0, 0)}
}
@-moz-keyframes pulse {
	0% {box-shadow: 0 0 0 0 var(--themeColorOrange)}
	75% {box-shadow: 0 0 0 15px rgba(0, 0, 0, 0)}
	100% {box-shadow: 0 0 0 0 rgba(0, 0, 0, 0)}
}
@-o-keyframes pulse {
	0% {box-shadow: 0 0 0 0 var(--themeColorOrange)}
	75% {box-shadow: 0 0 0 15px rgba(0, 0, 0, 0)}
	100% {box-shadow: 0 0 0 0 rgba(0, 0, 0, 0)}
}
@keyframes pulse {
	0% {box-shadow: 0 0 0 0 var(--themeColorOrange)}
	75% {box-shadow: 0 0 0 15px rgba(0, 0, 0, 0)}
	100% {box-shadow: 0 0 0 0 rgba(0, 0, 0, 0)}
}


/* - - - - - - - - - - - - - - - - - - - -

    scroll-progress

   - - - - - - - - - - - - - - - - - - - - */

.scroll-progress {
	position: fixed;
	z-index: 1;
    width: 5px;
    height: 100%;
    background: var(--themeColorOrange);
	transform: translate(0, 100%); /* !!! */
	transition: transform 1s cubic-bezier(.23, 1, .82, 1); /* !!! */
}

@media screen and (max-width: 1026px) {
	.scroll-progress {
		display: none;
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    Typography

   - - - - - - - - - - - - - - - - - - - - */

p {
	margin: 30px 0 1px;
}
strong {
    font-family: var(--fontSemiBold);
}
em {
    font-style: italic;
}
.em-orange {
	color:var(--themeColorOrange)
}
ul {
	margin: 30px 0 1px;
    padding-left: 20px;
	list-style-type: disc;
}


img {
	max-width: 100%;
	height: auto;
}

.img-details-container {
	z-index: 1;
    position: fixed;
	/*background: var(--themeColorBlack);*/ /* !!! */
    padding: 62px;
	padding: 3.27vw;
	font-family: var(--fontLight);
    letter-spacing: -0.08em;
	line-height: 1;
	max-width: 28vw;
	width: 100%;
	top: 0;
	left: -38vw;
	pointer-events: none;
	/*border-radius: 6px;*/ /* !!! */
	/*overflow: hidden;*/ /* !!! */
}
.img-details-container:before { /* !!! */
	z-index: -1;
	content: "";
	position: absolute;
	background: var(--themeColorBlack);
	border-radius: 6px;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: all 0.3s cubic-bezier(0.82, 0.05, 0.55, 0.98);
	opacity: 1;
}
.img-details-container-out:before { /* !!! */
	transition: none;
	transform: translate(-80px, 40px) scaleY(1.15);
	opacity: 0;
}
.img-details-container > * {
	color: #8f8f8f;
}
.img-details-date {
	font-size: 0.9vw;
	margin-bottom: 37px;
	margin-bottom: 1.73em;
	margin-bottom: 1.3em;
}
.img-details-title {
		font-size: 2vw;
    font-family: var(--fontRegular);
    margin-bottom: 37px;
    margin-bottom: 0.8em;
		letter-spacing: -0.06em;
}
.img-details-delivery {
	font-size: 1.1vw;
}
.img-details-delivery span {
	display: inline-block;
}

@media screen and (min-width: 1900px) {
 .img-details-container {
	max-width: 532px;
	 padding: 62px;
}
	.img-details-date {
	font-size: 17px;
	margin-bottom: 20px;
}
.img-details-title {
	font-size: 38px;
	margin-bottom: 37px;
}
.img-details-delivery {
	font-size: 21px;
}
}
@media screen and (max-width: 1245px) {
	.img-details-container {
		display: none;
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    menu

   - - - - - - - - - - - - - - - - - - - - */

.mobile-menu-icon {
	position: fixed;
	width: 50px;
	height: 50px;
	top: 21px;
	left: 10px;
	z-index: 1;
	display: none;
	mix-blend-mode: difference;
}
.mobile-menu-icon svg {
	fill: var(--themeColorOrange);
}
@media only screen and (max-width: 1022px) {
	.mobile-menu-icon {
		display: block;
	}
}

.menu {
	display: block;
    background: rgba(244, 239, 242, 0.96);
    width: 100%;
    height: 100%;
    top: 0;
    z-index: 11;
    position: fixed;
    overflow-x: hidden;
    overflow-y: scroll;
    transform: translate3d(-100%, 0, 0);
    transition: transform 0.7s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.menu::-webkit-scrollbar {
		width: 0;
	}
@media only screen and (max-width: 1026px) {
	.menu::-webkit-scrollbar {
		width: auto;
	}
}
.menu-active {
    transform: translate3d(0, 0, 0);
	transition: transform 0.7s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.menu-container {
	transform: translateY(-50%);
    top: 50%;
    position: absolute;
	left: 1em;
}
.menu-single {
    display: block;
	position: relative;
    font-size: 24vw;
    font-family: var(--fontLight);
    letter-spacing: -0.08em;
    color: var(--themeColorBlack);
    line-height: 0.9em;
}
.mobile-menu-close-icon {
    position: absolute;
    z-index: 1;
    width: 50px;
    height: 50px;
    bottom: 21px;
    right: 14px;
}
.mobile-menu-close-icon svg {
    fill: #f4f0f2;
    border-radius: 50%;
    background: var(--themeColorOrange);
}
.menu-projects-total {
    position: absolute;
    font-size: 46%;
    right: -1.4em;
    top: -0.5em;
    color: var(--themeColorOrange);
    letter-spacing: -0.03em;
}


/* - - - - - - - - - - - - - - - - - - - -

    nav

   - - - - - - - - - - - - - - - - - - - - */

.nav {
	z-index: 2;
    position: fixed;
    width: 100%;
    top: 70px;
	top: 2.4em;
    line-height: 0;
    font-size: 1.526vw;
    font-family: var(--fontRegular);
	font-family: var(--fontLight);
	letter-spacing: -0.045em;
}
.nav a {
	position: relative;
	display: inline-block;
	color: var(--themeColorBlack);
	height: 33px;
	margin-right: 70px;
	margin-right: 2.3em;
}
.nav-a-active {
	text-decoration: underline;
	text-decoration-color: var(--themeColorOrange);
}
.nav-left-container {
	position: absolute;
	left: 84px;
	left: 2.9em;
}
.nav-middle-container {
	position: absolute;
	right: 17em;
	display: none;
}
.projects .nav-middle-container {
	display: block;
}
.nav-right-container {
	position: absolute;
	right: 84px;
	right: 2.9em;
	font-family: var(--fontSemiBold);
	letter-spacing: -0.03em;
}
.nav .nav-right-container a {
	margin-right: 0;
}
.projects-total {
	position: absolute;
    font-size: 67%;
    right: -1.4em;
    top: -0.5em;
    color: var(--themeColorOrange);
    letter-spacing: -0.03em;
}

@media screen and (min-width: 1900px) {
 .nav {
    font-size: 29px;
	}
}
@media screen and (max-width: 1245px) {
	.nav {
    font-size: 19px;
	}
}
@media screen and (max-width: 1022px) {
	.nav-left-container, .nav-middle-container {
		display: none !important;
	}
	.nav-right-container {
		right: 50%;
		transform: translate(50%, 0);
	}
}
@media screen and (max-width: 766px) {
	.nav {
    top: 35px;
}
	.mobile-menu-icon {
    top: 11px;
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    right-fixed-block: social-links / right-nav

   - - - - - - - - - - - - - - - - - - - - */

.right-fixed-block {
	z-index: 2;
    position: fixed;
	width: max-content;
    transform: rotate(90deg);
    transform-origin: 100% 100%;
    right: 70px;
    right: 2.4em;
	bottom: 5em;
    line-height: 0;
    font-size: 1.526vw;
    font-family: var(--fontRegular);
    font-family: var(--fontLight);
    letter-spacing: -0.045em;
}
.project .social-links-wrap, .lab .social-links-wrap, .publisher .social-links-wrap {
	display: none;
}
.right-nav-wrap {
	top: 18em;
    bottom: unset!important;
	display: none;
}
.project-with-lab .right-nav-wrap {
	display: block;
}
@media screen and (min-width: 1900px) {
 .right-fixed-block {
    font-size: 29px;
	}
}
@media screen and (max-width: 1245px) {
	.right-fixed-block {
    font-size: 19px;
	}
}
.right-fixed-block a {
	position: relative;
	display: inline-block;
	color: var(--themeColorBlack);
	margin-right: 43px;
	margin-right: 1.49em;
}
@media screen and (max-width: 1022px) {
.right-fixed-block {
    right: 1.6em;
    bottom: 0.5em;
}
}
@media screen and (max-width: 766px) {
.right-fixed-block {
    right: 0.7em;
}
}


/* - - - - - - - - - - - - - - - - - - - -

    landing-curve-text

   - - - - - - - - - - - - - - - - - - - - */

	 .landing-curve-text {
	 	position: absolute;
	     width: 150vw;
			 /*transform: translate(-42vw, -67vw);*/ /* !!! */
		 pointer-events: none;
		 z-index: -1;
		 font-size: 2em;
		 transition: transform 1s cubic-bezier(.23, 1, .82, 1); /* !!! */
		 top: -28vw;
		 left: -41vw;
	 }

	 .landing-curve-text path {
	 fill: transparent;
	 }
	 .landing-curve-text text {
	 fill: var(--themeColorOrange);
	     font-family: var(--fontLight);
	     letter-spacing: -0.08em;
		 transition: all 2.1s cubic-bezier(0.82, 0.05, 0.55, 0.98);
		 transform: translateX(0vw);
		 opacity: 1;
	 }
	 .landing-curve-text-before text {
       letter-spacing: 3em;
			 transform: translateX(-3vw);
			 opacity: 0;
	 }
	 @media screen and (max-width: 1245px) {
	 	.landing-curve-text {
			transition: transform .4s cubic-bezier(.23, 1, .82, 1); /* !!! */
	 }
 }
	 	@media screen and (max-width: 770px) {
	 	.landing-curve-text {
			top: -122vw;
			left: -164vw;
			width: 250vw;
	 }
 }
	 		@media screen and (max-width: 416px) {
	 	.landing-curve-text {
			width: 446vw;
			top: -103vw;
			left: -237vw;
	 }
	 }


/* - - - - - - - - - - - - - - - - - - - -

    meta

   - - - - - - - - - - - - - - - - - - - - */

.meta-wrap {
	width: 100vw;
	height: 94vh;
	/*TO DO: fix for phones*/
	min-height: 722px; /*94% of 768px*/
    position: relative;
		overflow: hidden;
}
.not-found .meta-wrap {
	height: 100vh;
	}
.project .meta-wrap {
	width: 70%;
	float: left;
}
.meta-container {
    position: relative;
    width: 90%;
	max-width: 2400px;
		margin: 0 auto;
    top: 50%;
    transform: translate3d(0, -50%, 0);
}
.more-projects-container {
    position: relative;
    width: 100%;
    padding: 17vw 0;
}
.meta-craft {
	position: relative;
    display: inline-block;
    margin-bottom: 1.3em;
    font-family: var(--fontLight);
    letter-spacing: -0.045em;
    font-size: 28px;
	font-size: 1.5vw;
}
.project-meta-craft-two {
	margin-left: 0.6em;
	display: none;
}
.meta-craft-number {
    position: absolute;
    font-size: 65%;
    right: -1.2em;
    top: -0.1em;
    letter-spacing: -0.03em;
}
.big-title {
	text-align: left;
    font-size: 10vw;
    font-family: var(--fontLight);
	letter-spacing: -0.08em;
	line-height: 0.73em;
	-webkit-hyphens: auto;
  	   -moz-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
}
.big-title span {
	display: inline-block;
	transition: transform 1s cubic-bezier(.23, 1, .82, 1); /* !!! */
}
.big-title-sub {
	font-size: 5.95vw;
	letter-spacing: -0.087em;
	/*transform: translate3d(-18px, 0.5em, 0);*/ /* !!! */
	position: relative;
	left: -18px;
	top: 0.5em;
}
.big-title-large-sub {
	/*transform: translate3d(-15px, 0px, 0);*/ /* !!! */
	position: relative;
	left: -15px;
}
.meta-description {
	max-width: 700px;
	margin-top: 3em;
    font-family: var(--fontRegular);
    letter-spacing: -0.045em;
    font-size: 16px;
}
.meta-wrap-right {
		width: 30%;
    height: 94vh;
    float: right;
    //background: #ccd;
	position: relative;
	/*TO DO: fix for phones*/
	min-height: 722px; /*94% of 768px*/
}
.meta-date {
	position: relative;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    display: inline-block;
    font-size: 6vw;
    letter-spacing: -0.08em;
    line-height: 0.73em;
    font-family: var(--fontLight);
}
.meta-date-year {
    position: absolute;
    font-size: 60%;
    right: -1.2em;
    top: -0.5em;
    letter-spacing: -0.03em;
}
.meta-delivered {
	position: absolute;
    font-family: var(--fontLight);
    letter-spacing: -0.045em;
    line-height: 0.99em;
    font-size: 32px;
	font-size: 1.7vw;
    left: 0;
    bottom: 50px;
}

@media screen and (min-width: 1900px) {
	.big-title {
	 font-size: 190px;
	}
	.big-title-sub {
	font-size: 113px;
	}
	.meta-date {
    font-size: 114px;
	}
	.meta-delivered {
    font-size: 32px;
	}
	.meta-craft {
    font-size: 28px;
	}
}
@media screen and (max-width: 1026px) {
	.meta-delivered {
    font-size: 18px;
	}
	.meta-craft {
    font-size: 15px;
}
}

@media screen and (max-width: 740px) {
	.big-title {
	 font-size: 74px;
	}
	.meta-date {
    font-size: 45px;
	}
	.meta-wrap-right {
    display: none;
	}
	.project .meta-wrap {
    width: 100%;
	}
	.project-meta-craft-two {
	display: inline-block;
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    project footer

   - - - - - - - - - - - - - - - - - - - - */

.project-footer {
	margin: 15vw auto;
	position: relative;
}
.project-footer-big-title {
	color: var(--themeColorBlue);
	text-align: center;
	font-style: italic;
}
.project-footer-big-title span {
	display: block;
	margin-bottom: 0.4em;
}
.please-check {
	line-height: 0;
    font-size: 1.526vw;
    letter-spacing: -0.045em;
	text-align: center;
    font-family: var(--fontLight);
	margin-bottom: 2em;
}
.medium-title {
    font-size: 6.61vw;
	letter-spacing: -0.08em;
	line-height: 0.73em;
	text-align: center;
    font-family: var(--fontLight);
}
.medium-title span {
	display: inline-block;
}
.medium-title-sub {
	font-size: 3.5vw;
	letter-spacing: -0.087em;
}
.project-footer .thank-you-wrap {
	position: absolute;
    overflow: unset;
	left: 50%;
	transform: translate(-22vw, -100%);
}
.project-footer .thank-you-text {
	font-family: var(--fontLight);
    line-height: 0.73em;
	font-size: 2vw;
}

.project-details-container {
	z-index: 1;
    position: fixed;
    background: #f0f4ef;
	box-shadow: -5px 36px 57px rgba(0, 0, 0, 0.2);
    line-height: 0;
    max-width: 38vw;
	left: -38vw; /* !!! */
	top: 0;
	opacity: 0;
	pointer-events: none;
}

@media screen and (min-width: 1900px) {
	.medium-title {
	 font-size: 126px;
	}
	.medium-title-sub {
	font-size: 67px;
	}
	.please-check {
	font-size: 29px;
	}
	.project-details-container {
    max-width: 700px;
	}
}
@media screen and (max-width: 1245px) {
	.project-details-container {
    display: none;
	}
}
@media screen and (max-width: 740px) {
	.medium-title {
	 font-size: 49px;
	}
	.medium-title-sub {
    font-size: 26px;
	}
	.please-check {
    font-size: 12px;
	}
	.project-footer {
		margin: 20vw auto;
	}
	.project-footer .thank-you-text {
    font-size: 15px;
}
	.project-footer .thank-you-heart {
		width: 32px;
	}
	.project-footer .thank-you-wrap {
		transform: translate(-129px, -81%);
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    two-inline

   - - - - - - - - - - - - - - - - - - - - */

.two-inline-wrap {
  position: relative;
	width: 90%;
	max-width: 1836px;
	margin: 0 auto;
}
.landing .two-inline-wrap {
	max-width: 2036px;
}
.two-inline-single-container {
	position: relative;
	width: 918px;
    max-width: 50%;
	line-height: 0;
	padding: 9px;
	float: left;
	transition: transform 0.2s cubic-bezier(0.82, 0.05, 0.55, 0.98); /* !!! */
}
.landing .two-inline-single-container {
	width: 1018px;
	height: 764px;
}
.lab .two-inline-single-container {
	width: 918px;
	height: 689px;
}
@media screen and (min-width: 766px) {/* !!! */
	.landing .two-inline-single-container:nth-child(4n+0) img,
	.landing .two-inline-single-container:nth-child(4n+1) img {
		-webkit-transform-origin-x: right;
		-webkit-transform-origin-y: top;
	}
}
.two-inline-single-container img {
	/*transform: scale(0.5, 0.5);*/ /* !!! */
	transform: scale(0.5); /* !!! */
	/*transition: 1s;*/ /* !!! */
	transition: transform 1s cubic-bezier(.23, 1, .82, 1); /* !!! */
	border-radius: 8px; /* !!! */
}
.publisher .two-inline-single-container img { /* !!! */
	transform: unset;
}
/* !!! */
.two-inline-single-container:first-child img {
	transform: translateY(150px);
}
/* !!! */
/*.landing .two-inline-single-container img {
	transform: scale(0.5, 0.5);
	transform: scale(0.8);
	transition: 1s;
}*/
/*.two-inline-single-container:hover img {
transform: scale(1);
}*/

@media screen and (max-width: 2240px) {
	.landing .two-inline-single-container, .lab .two-inline-single-container {
		height: calc(45vw * 0.75);
	}
}

@media screen and (max-width: 766px) {
 .two-inline-single-container {
     max-width: 100%;
	 float: none;
	 height: auto !important;
}
	.two-inline-single-container img {
		transition: transform 0.7s cubic-bezier(.23, 1, .82, 1); /* !!! */
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    page-without-meta

   - - - - - - - - - - - - - - - - - - - - */

.page-without-meta {
	width: 90%;
	max-width: 2400px;
    position: relative;
    margin: 250px auto;
	margin: 2em auto;
    font-size: 6.61vw;
    font-family: var(--fontLight);
    letter-spacing: -0.08em;
    line-height: 0.73em;
}
.about .page-without-meta {
	margin-bottom: 0;
}
.page-without-meta-container {
	margin-bottom: 170px;
    margin-bottom: 1.323em;
}
.page-without-meta-container > span {
	display: block;
    margin-bottom: 0.3em;
    position: relative;
}
.page-without-meta-label {
	font-family: var(--fontLight);
    letter-spacing: -0.045em;
    font-size: 32px;
    margin-bottom: 60px;
    margin-bottom: 3.1vw;
    line-height: 1;
}
@media screen and (min-width: 1900px) {
	.page-without-meta {
		font-size: 126px;
	}
}
@media screen and (max-width: 756px) {
	.page-without-meta {
		font-size: 50px;
	}
	.page-without-meta-label {
    font-size: 22px;
	}
}


/* - - - - - - - - - - - - - - - - - - - -

    anime

   - - - - - - - - - - - - - - - - - - - - */

.anime {
	transition: all 1.1s cubic-bezier(0.82, 0.05, 0.55, 0.98) !important;
}
.img-details-container .anime {
	transition: all 0.7s cubic-bezier(0.82, 0.05, 0.55, 0.98) !important;
}
.anime-out {
	transition: none !important;
	transform: translate(-80px, 1em) scaleY(1.15);
	opacity: 0 !important;
}
.anime-out.big-title-sub {
	transform: translate(-40px, 1.7em) scaleY(1.15);
}
.menu-container.anime-out { /* !!! */
	transform: translate(-80px, -40%) scaleY(1.15);
}

.details-anime { /* !!! */
	transition: all 0.7s cubic-bezier(0.82, 0.05, 0.55, 0.98);
}
.details-anime-out { /* !!! */
	transition: none;
	transform: translate(-80px, 1em) scaleY(1.15);
	opacity: 0;
}


/* - - - - - - - -  E N D  - - - - - - - - */
