* {
	outline: none;
	box-sizing: border-box;
}
d, img, logo, content, wrap, article, aside, figure, footer, header, main, nav, section, canvas, video, fieldset, p {
	display: block;
	padding: 0;
	margin: 0;
}
[hide], [hidden], audio input[type="file"], input[type="checkbox"], input[type="radio"] {
	display: none!important;
}
html {
	margin: 0;
	background: #fff;
}
body {
	margin: 0;
	padding: 0;
	font-family: 'Montserrat';
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	color: #333;
	margin: 0;
	cursor: default;
}
a, a:active, a:focus, a:hover, a:visited {
	color: #242424;
	text-decoration: none;
}
img {
	border: none;
	max-width: 100%;
}
.h1, h1, .h2, h2, .h3, h3, .h4, h4, .h5, h5, .h6, h6 {
	font-family: Onest;
	color: #242424;
	margin: 0;
}
.h1, h1 {
	font-size: 36px;
	line-height: 26.4px;
}
.h2, h2 {
	font-size: 16px;
	line-height: 19.2px;
}
hr {
	height: 0;
	overflow: visible;
}

* {
	outline: 0;
	box-sizing: border-box;
}
a, a:active, a:focus, a:hover, a:visited {
	color: #222;
	text-decoration: none;
}
img {
	border: none;
	max-width: 100%
}
html, body {
	font-family: Roboto;
	color: #222;
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	margin: 0;
	padding: 0;
	cursor: default;
}
a[go] {
	cursor: pointer!important;
}
.h1, h1, .h2, h2, .h3, h3, .h4, h4, .h5, h5, .h6, h6 {
	font-weight: 700;
	font-family: montserrat;
	line-height: normal;
	margin: 0;
}
.h1, h1 {
	font-size: 64px;
}
.h2, h2 {
	font-size: 48px;
}
.h3, h3 {
	font-size: 36px;
}
d {
	display: block;
}
button, input, optgroup, select, textarea {
	font-family: Onest;
	font-size: 12px;
	font-weight: 400;
	line-height: 15.6px;
	color: #242424;
	margin: 0;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Thin.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-ExtraLight.woff2') format('woff2'), url('/project/local/fonts/Montserrat-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Light.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Regular.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Regular.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Medium.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-SemiBold.woff2') format('woff2'), url('/project/local/fonts/Montserrat-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Bold.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Bold.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-ExtraBold.woff2') format('woff2'), url('/project/local/fonts/Montserrat-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/project/local/fonts/Montserrat-Black.woff2') format('woff2'), url('/project/local/fonts/Montserrat-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/project/local/fonts/Roboto-Thin.woff2') format('woff2'), url('/project/local/fonts/Roboto-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/project/local/fonts/Roboto-Light.woff2') format('woff2'), url('/project/local/fonts/Roboto-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/project/local/fonts/Roboto-Regular.woff2') format('woff2'), url('/project/local/fonts/Roboto-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
d.container {
	width: 1300px;
	margin: auto;
	position: relative;
}
d.row-ab {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
d.toppage:hover {
	transform: rotate(180deg) translateY(25px);
}
d.toppage.a {
	opacity: 1;
}
d.toppage {
	position: fixed;
	right: 0;
	bottom: 0;
	width: 100px;
	height: 100px;
	cursor: pointer;
	background: url(/media/aboutme/cursor-dark.png);
	transform: rotate(180deg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center;
	transition: .3s;
	opacity: 0;
}
.firstscreen h1.title:before {
	content: "";
	display: block;
	width: 100%;
	height: 60px;
	left: 0;
	position: absolute;
	background: #ffffff;
	z-index: -1;
	border-radius: 2px;
	transition: 1.5s;
	transform: scaleX(0);
}
body.open .firstscreen h1.title:before {
	transform: scaleX(1);
	background: #9e8269;
}
d.projectItem.l .projectInner {
	flex-direction: row-reverse;
}
body > .loader {
	position: fixed;
	z-index: 999999999;
	inset: 0;
	transition: 1.4s;
	background: rgb(0 0 0 / 50%);
	opacity: 1;
	backdrop-filter: blur(50px);
}
body > .loader .bar {
	position: absolute;
	inset: 0;
	margin: auto;
	overflow: hidden;
	width: 100%;
	padding: 20px 70px;
	max-width: 867px;
	height: max-content;
	height: -moz-max-content;
}
body > .loader .bar:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background-color: #111111;
	border-radius: 2px;
	-webkit-transform: scaleX(0);
	-ms-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: center left;
	-ms-transform-origin: center left;
	transform-origin: center left;
	-webkit-animation: bodyloading 2s linear infinite forwards;
	animation: bodyloading 2s linear infinite forwards;
}

body > .loader .logo {
	width: 100%;
}
body > .loader.a {
	transform: rotate3d(1, 1, 1, 45deg) translateX(110vw)  translateY(-110vh);
	opacity: 0;
}
body > .loader.a, body > .loader.a * {
	pointer-events: none;
}
@keyframes bodyloading {
	0% {-webkit-transform: translate(0) scaleX(0);transform: translate(0) scaleX(0);}
	30% {-webkit-transform: translate(0) scaleX(1);transform: translate(0) scaleX(1);}
	100%, 80% {-webkit-transform: translate(100%) scaleX(0);transform: translate(100%) scaleX(0);}
}







d.container.years15 {
	transform: translateY(0vh);
	transition: .7s;
	margin-top: 10vh;
}

body:not(.open ) d.container.years15 {
	transform: translateY(-10vh);
}

body {
	transition: transform .4s;
}
.firstscreen {
	border-radius: 0px;
	overflow: hidden;
	transition: .9s;
	transform: scale(1);
	box-shadow: 0px 0px 0px 0px rgb(0 0 0 / 52%);
	width: 100%;
	height: calc(100vh - 200px);
	position: relative;
	color: #fff;
}
body.open .firstscreen {
	transform: scale(0.75) translateY(20vh);
	box-shadow: 0 50px 50px 10px rgb(0 0 0 / 30%);
	border-radius: 6px;
}
d.firstscreen header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	height: max-content;
	height: -moz-max-content;
	padding: 25px 30px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	z-index: 10;
}
d.firstscreen header d.logo {
	width: 180px;
	transition: 1.5s;
	transform: rotate3d(3, 17, 2, 25deg);
}
html.ready d.firstscreen header d.logo {
	transform: rotate3d(1, 1, 1, 0deg);
}
d.firstscreen header d.logo img.image_logo {
	width: 100%;
}
d.firstscreen header .navigation {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
d.firstscreen header .navigation nav {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	transition: 1.4s;
	transform: translateX(50px);
}
d.firstscreen header .navigation d.menu-item a {
	color: #fff;
	font-size: 12px;
	line-height: 18px;
	font-weight: 300;
	letter-spacing: 2px;
	padding: 5px 20px;
	text-transform: uppercase;
	opacity: .7;
	transition: .6s;
}
d.firstscreen header .navigation d.sub-menu d.menu-item {
	opacity: .5;
	transition: .4s;
}
d.firstscreen header .navigation d.sub-menu d.menu-item:hover {
	opacity: 1;
}
d.firstscreen header .navigation d.menu-item {
	width: max-content;
	width: -moz-max-content;
	position: relative;
}
d.firstscreen header .navigation d.sub-menu {
	position: absolute;
	top: 34px;
	left: 0;
	margin: auto;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 14px;
	width: max-content;
	width: -moz-max-content;
}
d.firstscreen d.background {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	z-index: 5;
	background: #222;
}
d.firstscreen d.background > img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 0px 70%;
}
d.firstscreen d.background d.overlay {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	z-index: 50;
	background: rgb(0 0 0 / 30%);
	backdrop-filter: blur(10px);
	transition: .6s;
}
html.ready .firstscreen d.background d.overlay {
	z-index: 4444444444;
}
d.firstscreen d.background d.overlay d.content {
	position: absolute;
	inset: 0;
	margin: auto;
	width: max-content;
	width: -moz-max-content;
	height: max-content;
	height: -moz-max-content;
	z-index: 70;
	text-align: center;
	pointer-events: none;
}
body.open .firstscreen d.background d.overlay {
	backdrop-filter: blur(0px);
}
d.firstscreen d.background d.overlay d.content h1.title {
	font-size: 47px;
	margin-top: 24px;
	font-family: Roboto;
	color: #fff;
	opacity: .9;
	padding: 0 50px;
	position: relative;
}
d.firstscreen d.background d.overlay d.content d.subtitle {
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 4.5px;
	font-weight: 300;
	opacity: .7;
	color: #fff;
}
d.firstscreen d.background d.overlay d.content h1.title d {
	font-size: 52px;
	font-weight: 100;
	display: block;
	margin-top: 20px;
}
d.firstscreen header .navigation d.menu-item a:hover {
	opacity: 1;
}
html.ready d.firstscreen header .navigation nav {
	transform: translateX(0px);
}
.social {
	display: flex;
	gap: 19px;
	height: 0;
	transition: 1.5s;
	transform: translateY(-100px);
	flex-direction: row;
	position: absolute;
	left: 310px;
	top: 12px;
}
html.ready d.firstscreen header  .social {
	transform: translateY(30px);
}
.social a {
	width: 32px;
	min-height: 32px;
	display: block;
	border-radius: 0px;
	background-size: 22px;
	background-repeat: no-repeat;
	background-position: center;
	transition: .5s;
	opacity: .3;
}
.social a:hover  {
	opacity: 1;
}
.social a.p {
	background-image: url("data:image/svg+xml, %3Csvg%20stroke%3D%22%23e0d0d0%22%20stroke-width%3D%221.4%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20randcolor%3D%22set%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M21.97%2018.33C21.97%2018.69%2021.89%2019.06%2021.72%2019.42C21.55%2019.78%2021.33%2020.12%2021.04%2020.44C20.55%2020.98%2020.01%2021.37%2019.4%2021.62C18.8%2021.87%2018.15%2022%2017.45%2022C16.43%2022%2015.34%2021.76%2014.19%2021.27C13.04%2020.78%2011.89%2020.12%2010.75%2019.29C9.6%2018.45%208.51%2017.52%207.47%2016.49C6.44%2015.45%205.51%2014.36%204.68%2013.22C3.86%2012.08%203.2%2010.94%202.72%209.81C2.24%208.67%202%207.58%202%206.54C2%205.86%202.12%205.21%202.36%204.61C2.6%204%202.98%203.44%203.51%202.94C4.15%202.31%204.85%202%205.59%202C5.87%202%206.15%202.06%206.4%202.18C6.66%202.3%206.89%202.48%207.07%202.74L9.39%206.01C9.57%206.26%209.7%206.49%209.79%206.71C9.88%206.92%209.93%207.13%209.93%207.32C9.93%207.56%209.86%207.8%209.72%208.03C9.59%208.26%209.4%208.5%209.16%208.74L8.4%209.53C8.29%209.64%208.24%209.77%208.24%209.93C8.24%2010.01%208.25%2010.08%208.27%2010.16C8.3%2010.24%208.33%2010.3%208.35%2010.36C8.53%2010.69%208.84%2011.12%209.28%2011.64C9.73%2012.16%2010.21%2012.69%2010.73%2013.22C11.27%2013.75%2011.79%2014.24%2012.32%2014.69C12.84%2015.13%2013.27%2015.43%2013.61%2015.61C13.66%2015.63%2013.72%2015.66%2013.79%2015.69C13.87%2015.72%2013.95%2015.73%2014.04%2015.73C14.21%2015.73%2014.34%2015.67%2014.45%2015.56L15.21%2014.81C15.46%2014.56%2015.7%2014.37%2015.93%2014.25C16.16%2014.11%2016.39%2014.04%2016.64%2014.04C16.83%2014.04%2017.03%2014.08%2017.25%2014.17C17.47%2014.26%2017.7%2014.39%2017.95%2014.56L21.26%2016.91C21.52%2017.09%2021.7%2017.3%2021.81%2017.55C21.91%2017.8%2021.97%2018.05%2021.97%2018.33Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}
.social a.t {
	background-image: url("data:image/svg+xml, %3Csvg%20stroke%3D%22%23e0d0d0%22%20stroke-width%3D%221.4%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20randcolor%3D%22set%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.39999%206.32003L15.89%203.49003C19.7%202.22003%2021.77%204.30003%2020.51%208.11003L17.68%2016.6C15.78%2022.31%2012.66%2022.31%2010.76%2016.6L9.91999%2014.08L7.39999%2013.24C1.68999%2011.34%201.68999%208.23003%207.39999%206.32003Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M10.11%2013.6501L13.69%2010.0601%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}
.social a.w {
	background-image: url("data:image/svg+xml, %3Csvg%20stroke%3D%22%23e0d0d0%22%20stroke-width%3D%221.4%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20randcolor%3D%22set%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3%2021l1.65%20-3.8a9%209%200%201%201%203.4%202.9l-5.05%20.9%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M9%2010a.5%20.5%200%200%200%201%200v-1a.5%20.5%200%200%200%20-1%200v1a5%205%200%200%200%205%205h1a.5%20.5%200%200%200%200%20-1h-1a.5%20.5%200%200%200%200%201%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}
d.svgword {
	position: relative;
}
d.svgword svg {
	opacity: 0;
}
d.svgword svg.draw {
	opacity: 1;
	height: 100%;
}
d.svgword svg {
	stroke: #e0d0d0;
	stroke-width: 1px;
	fill: transparent;
	width: 100%;
}
d.svgword.a1 {
	max-width: calc(100vw - 100px);
	position: absolute;
	inset: 0;
	margin: auto;
	opacity: .1;
	width: 1500px;
}

d.container.years15 d.row-ab.three .content ul li d.acdline {
	width: calc(100% - 180px);
	height: 0;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	gap: 16px;
}
.svgword.a4 {
	position: absolute;
	right: 0;
	top: -70px;
	width: 500px;
}
d.svgword.a4 svg {
	stroke-width: 2px;
}




.btn {
	font-size: 11px;
	line-height: 18px;
	letter-spacing: 2px;
	font-weight: 500;
	display: inline-block;
	text-decoration: none;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 15px 46px;
	background-color: transparent;
	border: none;
	color: #fff!important;
	-webkit-transition: color 0.3s ease-in, background-color 0.3s ease-in;
	-o-transition: color 0.3s ease-in, background-color 0.3s ease-in;
	transition: color 0.3s ease-in, background-color 0.3s ease-in;
	pointer-events: all;
}
.btn:after, .btn:before {
	content: '';
	display: block;
	position: absolute;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.btn:after {
	top: 0;
	left: 0;
}
.btn:before {
	bottom: 0;
	right: 0;
}
.btn span {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 20;
}
.btn span:after, .btn span:before {
	content: '';
	display: block;
	position: absolute;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	top: 50%;
	height: 1px;
	background-color: white;
}
.btn span:before {
	left: -11px;
}
.btn span:after {
	right: -11px;
}
.btn.simple:after, .btn.simple:before {
  border: 1px solid white;
  width: 100%;
  height: 100%;
}
.btn.simple span:after, .btn.simple span:before {
  width: 22px;
  -webkit-transition: background-color 0.3s ease-in;
  -o-transition: background-color 0.3s ease-in;
  transition: background-color 0.3s ease-in;
}
.btn:after, .btn:before {
  border: 1px solid transparent;
  width: 0;
  height: 0;
}
.btn:after {
  -webkit-transition: border-color 0s ease-in 1.5s, width 0.3s ease-in 1.2s, height 0.3s ease-in 0.9s;
  -o-transition: border-color 0s ease-in 1.5s, width 0.3s ease-in 1.2s, height 0.3s ease-in 0.9s;
  transition: border-color 0s ease-in 1.5s, width 0.3s ease-in 1.2s, height 0.3s ease-in 0.9s;
}
.btn:before {
  -webkit-transition: border-color 0s ease-in 0.9s, width 0.3s ease-in 0.6s, height 0.3s ease-in 0.3s;
  -o-transition: border-color 0s ease-in 0.9s, width 0.3s ease-in 0.6s, height 0.3s ease-in 0.3s;
  transition: border-color 0s ease-in 0.9s, width 0.3s ease-in 0.6s, height 0.3s ease-in 0.3s;
}
.btn span:after, .btn span:before {
  width: 0;
  -webkit-transition: width 0.3s ease-in 0s, background-color 0.3s ease-in;
  -o-transition: width 0.3s ease-in 0s, background-color 0.3s ease-in;
  transition: width 0.3s ease-in 0s, background-color 0.3s ease-in;
}
.btn.anima:after, .btn.anima:before {
  width: 100%;
  height: 100%;
}
.btn.anima:after {
  border-top-color: white;
  border-right-color: white;
  -webkit-transition: width 0.3s ease-out, height 0.3s ease-out 0.3s;
  -o-transition: width 0.3s ease-out, height 0.3s ease-out 0.3s;
  transition: width 0.3s ease-out, height 0.3s ease-out 0.3s;
}
.btn.anima:before {
  border-bottom-color: white;
  border-left-color: white;
  -webkit-transition: border-color 0s ease-out 0.4s, width 0.3s ease-out 0.6s, height 0.3s ease-out 0.9s;
  -o-transition: border-color 0s ease-out 0.4s, width 0.3s ease-out 0.6s, height 0.3s ease-out 0.9s;
  transition: border-color 0s ease-out 0.4s, width 0.3s ease-out 0.6s, height 0.3s ease-out 0.9s;
}
.btn.anima span:after, .btn.anima span:before {
  width: 22px;
  -webkit-transition: width 0.3s ease-out 1.2s, background-color 0.3s ease-in;
  -o-transition: width 0.3s ease-out 1.2s, background-color 0.3s ease-in;
  transition: width 0.3s ease-out 1.2s, background-color 0.3s ease-in;
}

.btn:hover, .btn:focus {
  color: #111111;
  background-color: white;
  text-decoration: none;
}

.btn:hover span:after, .btn:hover span:before, .btn:focus span:after, .btn:focus span:before {
  background-color: #111111;
}







a.btn.startbtn {
	margin-top: 32px;
}
a.btn:active, a.btn:focus, a.btn:hover {
	color: #222!important;
}
.firstscreen [go] {
	cursor: url(/media/aboutme/cursor.png), auto;
}
[go] {
	cursor: url(/media/aboutme/cursor-dark.png), auto;
	pointer-events: all!important;
	position: relative;
	z-index: 50;
}
[go].w4nbq8iau {
	position: absolute;
	inset: 0;
	width: 1200px;
	height: 500px;
	margin: auto;
	top: 130px;
	bottom: unset;
}
d.container.years15 > d.row-ab > d.a {
	width: 400px;
}
d.container.years15 > d.row-ab > d.b {
	width: calc(100% - 470px);
}
d.container.years15 d.row-ab {
	margin-bottom: 100px;
}
d.subtitle {
	color: #d8d8d8;
	text-transform: uppercase;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 4.5px;
	font-weight: 300;
}
h2.title {
	margin-top: 18px;
	margin-bottom: 0;
	letter-spacing: 0.2px;
	font-size: 28px;
	line-height: 32px;
	font-weight: 800;
}
d.desc {
	font-size: 18px;
	line-height: 30px;
	font-weight: 400;
	color: #7e7d7d;
}
d.svgword.a2 {
	margin-top: 40px;
}
d.counter-results, d.counter-years15 {
	background-image: url(/media/aboutme/home/9b437744429717.5812370040b1c.jpg);
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 15px;
}

.svg_mask {
	height: 100%;
	width: 100%;
	line-height: 0;
}
.svg_mask svg:not(:root) {
	overflow: hidden;
}
.svg_mask svg {
	width: 100%;
	aspect-ratio: 1;
}
.svg_mask svg mask {
	width: 100%;
	height: 100%;
}
.svg_mask svg .base {
	fill: white;
	width: 100%;
	height: 100%;
}
.svg_mask svg mask .coming-alpha {
	fill: white;
	width: 100%;
	height: 100%;
}
.svg_mask svg mask text {
	font-size: 14px;
	letter-spacing: 3.5px;
	font-weight: 300;
	font-family: "Roboto", sans-serif;
	text-transform: uppercase;
}
.counter-years15 .svg_mask svg mask .number {
	font-size: 160px;
	font-weight: 900;
}
d.counter-results .svg_mask svg {
	width: calc(50% - 1px);
	height: 200px;
}
d.counter-results d.svg_mask {
	background: rgb(0 0 0 / 30%);
	display: flex;
	gap: 0px 2px;
	flex-wrap: wrap;
}
d.counter-results {
	height: 420px;
	padding: 10px;
}
d.container.testimonials d.content d.form form a.link.arrowpr {
	width: max-content;
	text-transform: uppercase;
	margin-right: -10px;
}
d.container.years15 > d.row-ab.two d.b {
	width: 620px;
}
d.container.years15 > d.row-ab.two d.a {
	width: calc(100% - 700px);
}
d.ahgouh2 {
	color: #adadad;
	text-transform: uppercase;
	font-family: "Roboto", sans-serif;
	font-size: 12px;
	line-height: 18px;
	letter-spacing: 0.8px;
	font-weight: 300;
	text-align: center;
	margin-top: 10px;
}
d.counter-results d.svg_mask svg text.count.number {
	font-size: 62px;
	font-weight: 900;
}
d.svgword.a2 svg {
	width: calc(100% - 40px)!important;
	height: auto!important;
	stroke-width: 1.6px!important;
}
d.svgword.a3 svg {
	width: 100%;
	height: auto!important;
	stroke-width: 2.8px!important;
	position: absolute;
	top: -100px;
}
d.container.years15 > d.row-ab > d.a d.imph {
	margin-top: 40px;
	border-radius: 8px;
	overflow: hidden;
}
d.container.years15 > d.row-ab > d.a d.imph d.mcpicture {
	width: 100%;
}
d.container.years15 d.row-ab.three .content h6 {
	position: relative;
	display: inline-block;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 4.5px;
	font-weight: 300;
	font-style: normal;
	margin-top: 20px;
}
d.container.years15 d.row-ab.three .content h6:after {
	background-color: #f2f2f2;
	content: '';
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	left: calc(100% + 15px);
	width: 85px;
	height: 4px;
}
d.container.years15 d.row-ab.three .content ul {
	list-style: none;
	margin-bottom: 0;
	font-size: 16px;
	line-height: 32px;
	font-weight: 400;
	padding: 0;
}
d.container.years15 d.row-ab.three .content ul li {
	font-weight: 400;
	position: relative;
	padding-left: 20px;
	color: #7e7d7d;
	line-height: 16px;
	text-align: left;
	font-size: 11px;
	display: block;
	margin-bottom: 16px;
}
d.container.years15 d.row-ab.three .content ul li:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 7px;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #000000;
}
d.container.years15 d.row-ab.three .content ul strong {
	white-space: nowrap;
	font-weight: 600;
	color: #444;
	font-family: 'Montserrat';
	font-size: 15px;
	display: block;
	padding-bottom: 3px;
}
d.container.years15 d.row-ab.three .content ul li d.acdline:before {
	content: "";
	width: 74%;
	height: 1px;
	border-bottom: 1px dashed #e0d0d0;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a82:before {
	width: 82%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a74:before {
	width: 74%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a71:before {
	width: 71%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a92:before {
	width: 92%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a95:before {
	width: 95%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a98:before {
	width: 98%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a100:before {
	width: 100%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a41:before {
	width: 41%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a18:before {
	width: 18%;
}
d.container.years15 d.row-ab.three .content ul li d.acdline.a87:before {
	width: 87%;
}
.projectItem {
	position: relative;
	width: 100%;
	margin-bottom: 80px;
}
.projectItem .projectInner {
	position: relative;
	width: 100%;
	min-height: 420px;
	display: flex;
	align-items: center;
	overflow: hidden;
	justify-content: space-between;
}
.projectItem .bclackicon {
	position: absolute;
	top: -45px;
	width: 40px;
	height: 40px;
	z-index: 5;
}
.projectItem.r .bclackicon {
	left: 0px;
	transform: rotate(-90deg);
}
.projectItem.l .bclackicon {
	right: 0px;
	transform: rotate(90deg);
}
.projectItem .imgs {
	position: relative;
	width: calc(100% - 530px);
	aspect-ratio: 4 / 2.5;
	background: #f2f2f2;
}
.projectItem .imgs:after {
	content: "";
	width: 0px;
	position: absolute;
	right: 0;
	top: 0;
	height: 92%;
	background: #000;
	box-shadow: -6px 0px 26px 6px #000;
	margin: auto;
	bottom: 0;
}
d.projectItem.l .imgs:after {
	right: unset;
	left: 0;
}
.projectItem.l .imgs .screenshots-slider .item:first-child {
	margin-left: -50px;
}
.projectItem .content d.desc {
	margin-bottom: 0;
}
.projectItem .content {
	width: 450px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}
.projectItem.l .content {
	align-items: flex-end;
}
d.projectItem.l h3.title d.lottie.project {
	left: -84px;
	right: unset;
}
.projectItem .year {
	position: relative;
	font-size: 12px;
	line-height: 26px;
	font-weight: 300;
	margin-bottom: 10px;
	color: #111111;
}
.projectItem .year:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	height: 1px;
	width: 49px;
	background-color: #111111;
	right: 100%;
	margin-right: 15px;
	z-index: 4;
}
a.link.arrowpr span:before, a.link.arrowpr span:after {
	background-color: #111111;
}
a.link.arrowpr span:before {
	bottom: 1px;
	-webkit-transform: translateX(0px) translateY(3px) rotate(-45deg);
	-ms-transform: translateX(0px) translateY(3px) rotate(-45deg);
	transform: translateX(0px) translateY(3px) rotate(-45deg);
}
a.link.arrowpr span:after {
	top: 1px;
	-webkit-transform: translateX(0px) translateY(-3px) rotate(45deg);
	-ms-transform: translateX(0px) translateY(-3px) rotate(45deg);
	transform: translateX(0px) translateY(-3px) rotate(45deg);
}
a.link.arrowpr span {
	background-color: #111111;
}
a.link.arrowpr span:before, a.link.arrowpr span:after {
	position: absolute;
	display: block;
	right: 0;
	width: 6px;
	height: 1px;
	content: '';
}
a.link.arrowpr span {
	display: inline-block;
	position: absolute;
	top: 50%;
	margin-top: -1px;
	right: 10px;
	width: 31px;
	height: 1px;
	-webkit-transition: 0.3s ease-in;
	-o-transition: 0.3s ease-in;
	transition: 0.3s ease-in;
}
a.link.arrowpr {
	position: relative;
	display: inline-block;
	font-family: 'Roboto', sans-serif;
	font-size: 11px;
	line-height: 30px;
	letter-spacing: 2px;
	font-weight: 500;
	text-decoration: none;
	padding-right: 50px;
	color: #111111;
	cursor: pointer;
}
a.link.arrowpr:hover, a.link.arrowpr:focus {
	text-decoration: none;
	outline-color: transparent;
	color: #111111;
}
a.link.arrowpr:hover span, a.link.arrowpr:focus span {
	right: 0;
}
.projectItem a.link {
	cursor: pointer;
}
.projectItem .content a.link.arrowpr {
	padding: 15px 60px 15px 0px;
}
d.projectItem.l d.content a.link {
	padding: 15px 0px 15px 60px;
}
d.projectItem.l d.content {
	text-align: right;
}
d.projectItem.l d.content a.link span {
	padding: 0 0 0 0;
	transform: rotate(180deg);
	right: unset;
	left: 10px;
}
d.projectItem.l d.content a.link span:hover {
	left: 0;
}
.projectItem.l .year:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	height: 1px;
	width: 49px;
	background-color: #111111;
	left: 100%;
	right: unset;
	margin: 0;
	margin-left: 15px;
}
d.lasts_start {
	background: #000;
	padding: 50px 0;
}
d.lasts_start d.container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 1000px;
}
d.lasts_start d.container h2.title {
	margin: 0;
	color: #fff;
	font-weight: 100;
	font-size: 32px;
}
d.lasts_start d.container a.btn {
	margin: 0;
	opacity: .7;
	transition: .3s;
}
d.lasts_start d.container a.btn:hover {
	opacity: 1;
}
d.container.mcalan {
	margin-top: 150px;
	width: 1000px;
}
d.svgword.a5 {
	width: 90%;
	left: 19px;
	margin: auto;
	margin-top: 100px;
	margin-bottom: -212px;
	max-width: 1400px;
}
d.svgword.a6 {
	position: absolute;
	width: 650px;
	top: -94px;
	left: 155px;
}
d.svgword.a6 svg {
	stroke-width: 2.2px;
}
d.container.mcalan d.subtitle {
	color: #000000;
	text-transform: uppercase;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 4.5px;
	font-weight: 300;
	text-align: center;
	margin-bottom: 16px;
}
d.container.mcalan h2.title {
	text-align: center;
}

d.container.mcalan d.intro d.imgs .img1 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
d.container.mcalan d.intro d.imgs .img1 {
	width: 270px;
	overflow: hidden;
	border-radius: 50%;
	aspect-ratio: 1;
}
d.container.mcalan d.intro {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 50px;
}
d.container.mcalan d.intro d.content {
	width: calc(100% - 350px);
	text-align: left;
}
d.container.mcalan d.intro d.content d.subtitle {
	text-align: left;
}
d.container.mcalan d.intro d.content h2.title {
	text-align: left;
	font-size: 21px;
	margin-bottom: 10px;
}
d.container.mcalan d.intro {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 50px;
	margin-bottom: 100px;
}
d.svgword.a5 svg {
	stroke-width: 1.5px;
}
d.svgword.a5 svg {
	stroke-width: 0.6px;
}
d.container.mcalan d.intro d.imgs d.img2 img {
	width: 100%;
}
d.container.mcalan d.intro d.imgs d.img2 {
	position: absolute;
	bottom: 43px;
	left: -75px;
	z-index: 1;
	width: 200px;
}
d.container.mcalan d.intro d.imgs {
	position: relative;
}
d.container.awards d.content d.a {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 0px;
}
d.container.awards d.content d.a d.i {
	width: calc(25% - 15px);
	aspect-ratio: 3/4;
	border: 1px solid #e0d0d0;
	padding: 30px;
	box-sizing: border-box;
}
d.container.awards d.content d.a d.i img {
	object-position: center;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
d.container.awards d.content d.a d.i.x0, d.container.awards d.content d.a d.i.x6 {
	aspect-ratio: 4/2.8;
	width: 33%;
}


blockquote {
	margin: auto;
	position: relative;
	border: 0;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 230px;
	text-align: center;
	font-weight: 900;
	font-size: 23px;
	font-family: montserrat;
	padding-top: 20px;
}
blockquote d:before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 200px;
	height: 200px;
	border: 14px solid #f2f2f2;
	z-index: -1;
}
blockquote d:after {
	content: "";
	position: absolute;
	top: 16px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	color: #111111;
	background-image: url("data:image/svg+xml, %3Csvg%20stroke%3D%22%23eee%22%20stroke-width%3D%222.0%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20randcolor%3D%22set%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10%2011h-4a1%201%200%200%201%20-1%20-1v-3a1%201%200%200%201%201%20-1h3a1%201%200%200%201%201%201v6c0%202.667%20-1.333%204.333%20-4%205%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M19%2011h-4a1%201%200%200%201%20-1%20-1v-3a1%201%200%200%201%201%20-1h3a1%201%200%200%201%201%201v6c0%202.667%20-1.333%204.333%20-4%205%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 45px;
	height: 45px;
}
d.container.awards d.content d.a d.i.x5 {
	border-color: #fff;
	display: flex;
	width: 30%;
	aspect-ratio: 4 / 3.1;
}
d.container.awards d.content d.a d.i.x7, d.container.awards d.content d.a d.i.x8 {
	width: calc(50% - 10px);
	aspect-ratio: 4/2.8;
}
d.container.awards d.content d.a d.i.x0, d.container.awards d.content d.a d.i.x6 {
	aspect-ratio: 4/2.8;
}
d.svgword.a7 {
	position: absolute;
	right: 0;
	top: -40px;
	width: 700px;
}
d.svgword.a7 svg {
	stroke-width: 1.8px;
}
d.container.testimonials d.content d.form form input,
d.container.testimonials d.content d.form form textarea {
	background: #f2f2f2;
	border: 0;
	outline: none;
	padding: 25px 30px;
	resize: none;
	font-family: roboto;
	font-size: 12px;
	font-weight: 400;
	color: #555;
	width: 100%;
}
d.container.testimonials d.content {
	display: flex;
	justify-content: space-between;
}
d.container.testimonials d.content d.list {
	width: 65%;
	padding-right: 10%;
}
d.container.testimonials d.content d.form {
	min-width: 300px;
	width: 40%;
	max-width: 400px;
}
d.container.testimonials d.content d.list d.fx {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 40px;
}
d.container.testimonials d.content d.list d.fx d.l {
	display: flex;
	gap: 20px;
	align-items: center;
}
d.container.testimonials d.content d.list ul {
	padding-left: 0;
	margin: 0;
}
d.container.testimonials d.content d.list ul {
	display: flex;
	flex-direction: column;
	gap: 25px;
}
d.container.testimonials d.content d.list d.desc {
	padding: 10px 0 0 0;
	font-size: 17px;
	line-height: 24px;
	font-weight: 400;
	color: #808080;
}
d.container.testimonials d.content d.list ul li.comment {
	list-style: none;
}
d.container.testimonials d.content d.list d.fx d.l h6 {
	font-family: roboto;
	color: #111;
	font-weight: 400;
	letter-spacing: .3px;
}
d.container.testimonials d.content d.list d.fx d.l h4 {
	font-family: roboto;
}
d.container.testimonials d.content d.form form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: flex-end;
}
d.container.testimonials d.content d.form d.sticky {
	position: sticky;
	top: 50px;
}
textarea:focus {
	box-shadow: 0px 5px 1px -2px #000;
}
d.container.testimonials d.content d.form d.sticky h6 {
	font-weight: 300;
	letter-spacing: 4.2px;
	font-style: normal;
	color: #111111;
	margin-top: 6px;
	margin-bottom: 25px;
	font-family: 'Roboto';
	font-size: 14px;
}
/* кнопка «Показать другие проекты» — прозрачная, плоская */
@keyframes pmore-dots {
	0%, 80%, 100% { transform: scale(0); opacity: .4; }
	40%           { transform: scale(1); opacity: 1; }
}

d.last_project d.projects-more-wrap,
d.container.testimonials d.testimonials-more-wrap {
	display: flex;
	justify-content: center;
	margin-top: 60px;
}

d.last_project d.projects-more,
d.container.testimonials d.testimonials-more {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	padding: 18px 40px;
	background: transparent;
	color: #222;
	font-family: Montserrat;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	cursor: pointer;
	user-select: none;
	transition: opacity .25s ease;
}

d.last_project d.projects-more .pm-glow,
d.last_project d.projects-more .pm-sheen,
d.last_project d.projects-more .pm-line,
d.container.testimonials d.testimonials-more .pm-glow,
d.container.testimonials d.testimonials-more .pm-sheen,
d.container.testimonials d.testimonials-more .pm-line { display: none; }

d.last_project d.projects-more .arr,
d.container.testimonials d.testimonials-more .arr {
	display: inline-flex;
	align-items: center;
	line-height: 1;
	transition: transform .35s cubic-bezier(.2,.7,.2,1);
}
d.last_project d.projects-more .arr svg,
d.container.testimonials d.testimonials-more .arr svg { display: block; }

d.last_project d.projects-more .dots,
d.container.testimonials d.testimonials-more .dots {
	display: none;
	align-items: center;
	gap: 5px;
}
d.last_project d.projects-more .dots i,
d.container.testimonials d.testimonials-more .dots i {
	width: 5px; height: 5px;
	background: currentColor;
	border-radius: 50%;
	display: inline-block;
	animation: pmore-dots 1s ease-in-out infinite;
}
d.last_project d.projects-more .dots i:nth-child(2),
d.container.testimonials d.testimonials-more .dots i:nth-child(2) { animation-delay: .15s; }
d.last_project d.projects-more .dots i:nth-child(3),
d.container.testimonials d.testimonials-more .dots i:nth-child(3) { animation-delay: .3s; }

d.last_project d.projects-more:hover .arr,
d.container.testimonials d.testimonials-more:hover .arr {
	transform: translateX(6px);
}

d.last_project d.projects-more.hold,
d.container.testimonials d.testimonials-more.hold {
	pointer-events: none;
	opacity: .6;
}
d.last_project d.projects-more.hold .arr,
d.container.testimonials d.testimonials-more.hold .arr { display: none; }
d.last_project d.projects-more.hold .dots,
d.container.testimonials d.testimonials-more.hold .dots { display: inline-flex; }
d.pagination d {
	font-family: roboto;
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	background: #f2f2f2;
	font-size: 11px;
}
d.pagination {
	display: flex;
	gap: 8px;
}
d.svgword.a8 svg {
	stroke-width: 1.2px;
}
d.container.testimonials d.content d.list d.pagination {
	margin-top: 30px;
}
d.pagination d.a {
	background: #000;
	color: #fff;
}
d.pagination d:not(.a):hover {
	background: #ececec;
}
d.svgword.a8 {
	position: absolute;
	right: 0;
	top: -100px;
	width: calc(100% - 340px);
}
d.container.rules d.px d.subtitle {
	color: #000;
}
d.container.rules d.content d.item {
	width: calc(50% - 100px);
	display: flex;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 34px;
	position: relative;
}
d.container.rules d.content d.item > d.a {
	color: #adadad;
	padding-top: 3px;
	font-weight: 100;
}
d.container.rules d.content d.item:before {
	content: "";
	position: absolute;
	background: #f2f2f2;
	z-index: -1;
	width: calc(100% - 50px);
	height: calc(100% - 20px);
	top: 30px;
	right: 0px;
	transition: .5s;
	transform: translateY(30px);
	opacity: 0;
}
d.container.rules d.content d.item:hover:before {
	opacity: 1;
	transform: translateY(0px);
}
d.container.rules d.content d.item > d.b {
	display: flex;
	flex-direction: column;
	gap: 10px;
	border-left: 1px solid #b4b4b4;
	padding-left: 26px;
}
d.container.rules d.content d.item > d.b d.a {
	font-family: roboto;
	font-size: 20px;
	font-weight: 500;
	color: #444;
}
d.container.rules d.content d.item > d.b d.b {
	font-size: 15px;
	font-weight: 400;
	color: #939393;
	line-height: 20px;
}
d.container.rules d.content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 180px;
}
d.container.rules  d.px {
	position: relative;
	text-align: center;
}
d.svgword.a9 {
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 370px;
	top: -68px;
}
d.svgword.a9 svg {
	stroke-width: 3px;
}
d.container.rules d.prices {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	text-align: center;
	margin-top: 30px;
	margin-bottom: 100px;
}
d.container.rules d.prices d.column {
	width: 200px;
}
d.container.rules d.prices d.column d.t:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	width: 1px;
	height: 50px;
	background: #e5e5e5;
	margin: auto;
	top: 28px;
}
d.descprice {
	font-size: 16px;
	line-height: 26px;
	text-align: justify;
	border-left: 1px solid #ddd;
	padding-left: 40px;
}
d.descprice h4 {
	margin-bottom: 20px;
}
d.pricecontainer {
	width: 1100px;
	margin: auto;
}
d.container.rules d.prices d.column d.desc {
	line-height: 21px;
	font-size: 14px;
	text-align: justify;
}
d.container.rules d.prices d.column d.p {
	margin-bottom: 18px;
	font-size: 30px;
	font-weight: 900;
}
d.container.rules d.prices d.column d.t {
	margin-bottom: 80px;
	font-size: 12px;
	color: #aaa;
	position: relative;
	font-family: Montserrat;
	font-weight: 300;
	letter-spacing: .5px;
}
d.container.rules d.prices d.column a.btn.startbtn {
	color: #444!important;
}
d.container.rules d.prices d.column a.btn.startbtn::before, d.container.rules d.prices d.column a.btn.startbtn::after {
	border-color: #d4d4d4;
}
d.container.rules d.prices d.column a.btn.startbtn span::before, d.container.rules d.prices d.column a.btn.startbtn span::after {
	background-color: #d4d4d4;
}
d.pricecontainer {
	width: 1100px;
	margin: auto;
	margin-bottom: 150px;
}
d.svgword.a10 {
	position: absolute;
	width: 800px;
	left: 0;
	top: 100px;
}
d.svgword.a10 svg {
	stroke-width: 1.4px;
}
d.perfection {
	min-height: 200px;
	position: relative;
}
d.svgword.a11 {
	position: absolute;
	right: 0;
	top: -30px;
	width: 700px;
}
d.container.footer d.rowa {
	margin-top: 22px;
	width: 500px;
	color: #777;
}
d.container.footer d.rowb {
	margin-top: 40px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 100px;
	margin-bottom: 40px;
}
d.container.footer d.rowb d.bx {
	width: 160px;
}
d.container.footer d.rowb d.bx img.footer-qr {
	display: block;
	width: 100%;
	height: auto;
}
d.container.footer d.rowb d.ax {
	display: flex;
	gap: 70px;
}
d.container.footer d.rowb d.ax d.af {
	display: flex;
	flex-direction: column;
	gap: 35px;
	position: relative;
}
d.container.footer d.rowb d.ax d.af d.a {
	font-weight: 300;
	position: relative;
	color: #6e6e6e;
	letter-spacing: .6px;
	font-size: 12px;
}
d.container.footer d.rowb d.ax d.af d.a:before {
	content: "";
	position: absolute;
	width: 100px;
	top: 35px;
	height: 1px;
	background: #ddd;
}
d.container.footer d.rowb d.ax d.af a {
	color: #838383;
}
d.container.footer d.rowa d.xs {
	font-size: 9px;
	font-weight: 900;
	letter-spacing: 1px;
	text-transform: uppercase;
}
d.signature {
	width: 300px;
	position: absolute;
	right: 0;
	bottom: 30px;
	opacity: .5;
}
d.svgword.a11 svg {
	stroke-width: 1.4px;
}
point.a {
	background: #e5d6d0;
}
point {
	position: absolute;
	display: block;
	width: 100%;
	height: 0;
	pointer-events: none;
	opacity: 0;
	left: -160px;
	top: 52px;
	bottom: unset;
	z-index: -1;
	opacity: 1;
	width: 100px;
	height: 1px;
	background: #d7d7d7;
}
point d {
	position: absolute;
	top: 13px;
	bottom: 0;
	left: -60px;
	margin: auto;
	font-size: 32px;
	font-family: Montserrat;
	font-weight: 100;
	color: #d7d7d7;
	height: 30px;
	line-height: 0;
}
point[i="3"] {top: -25px;}
point[i="5"] {top: 218px; left: -300px;}
point[i="10"] {top: 0px;}

img[lazy] {
	filter: blur(10px);
}
img.ready {
	filter: none!important;
}
d.firstscreen d.background d.overlay {
	/*display: none;*/
}
d.firstscreen d.background d.mcpicture {
	height: 100%;
	background: url("data:image/webp;base64,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");
	background-size: 120%;
	background-repeat: no-repeat;
	background-position: center;
}
html:not(.ready) body, html:not(.ready) body * {
	pointer-events: none;
}
d.firstscreen d.background d.mcpicture img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}
d.projectItem h3.title {
	position: relative;
	width: max-content;
	width: -moz-max-content;
	margin-bottom: 15px;
}
d.projectItem h3.title d.lottie.project {
	position: absolute;
	bottom: -12px;
	width: 72px;
	right: -84px;
}
d.container.rules d.content d.item > d.b d.b {
	font-size: 13px;
	font-weight: 400;
	color: #939393;
	line-height: 16px;
}
d.container.rules d.content d.item {
	width: calc(50% - 10px);
	display: flex;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 34px;
	position: relative;
	text-align: justify;
}


/* layer project */
layer[name="project"] > wrap { background: #fff; overflow: hidden; }
layer[name="project"] > wrap > content { width: 100%; height: 100%; overflow: auto; }

layer[name="project"] .project-layer-stub { width: 100%; min-height: 100%; box-sizing: border-box; font-family: inherit; color: #1a1a1a; }
layer[name="project"] .project-layer-stub .dev { display: none; }
layer[name="project"] .project-layer-stub .dev-pc { display: block; }
layer[name="project"] .project-layer-stub .dev-tablet,
layer[name="project"] .project-layer-stub .dev-mobile {
	width: 100%;
	min-height: 100%;
	align-items: center;
	justify-content: center;
	font-size: 30px;
	font-weight: 600;
	text-align: center;
	padding: 40px;
	box-sizing: border-box;
	letter-spacing: -0.01em;
}
@media (max-width: 1024px) {
	layer[name="project"] .project-layer-stub .dev-pc { display: none; }
	layer[name="project"] .project-layer-stub .dev-tablet { display: flex; }
}
@media (max-width: 560px) {
	layer[name="project"] .project-layer-stub .dev-tablet { display: none; }
	layer[name="project"] .project-layer-stub .dev-mobile { display: flex; font-size: 24px; padding: 24px; }
}

/* PC-разметка слоя: шапка / слайдер / desc-full */
layer[name="project"] .pl-pc {
	box-sizing: border-box;
}
layer[name="project"] .pl-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 40px;
	padding: 40px 50px 26px;
	margin-bottom: 0;
	position: relative;
}
layer[name="project"] .pl-head .bclackicon {
	position: absolute;
	top: 107px;
	right: 56px;
	width: 40px;
	height: 40px;
	transform: rotate(-90deg);
	z-index: 5;
	pointer-events: none;
}
layer[name="project"] .pl-head > .content {
	width: auto;
	max-width: calc(100% - 220px);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
layer[name="project"] .pl-head .year { margin-bottom: 14px; }
layer[name="project"] .pl-head h3.title {
	margin-bottom: 0;
	font-family: inherit;
}
layer[name="project"] .pl-head h3.title a { cursor: default; }
layer[name="project"] a.link.arrowpr.pl-link {
	flex: 0 0 auto;
	align-self: flex-start;
	margin-top: 8px;
	padding: 15px 60px 15px 0;
	white-space: nowrap;
}

layer[name="project"] .dev-pc .pl-imgs {
	position: relative;
	width: 100%;
	height: 420px;
	margin-bottom: 28px;
	overflow: hidden;
}
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider {
	height: 100%;
	display: flex;
	gap: 14px;
	padding: 2px;
	box-sizing: border-box;
	align-items: stretch;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	cursor: grab;
}
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider::-webkit-scrollbar { display: none; }
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item {
	height: 100%;
	width: auto;
	flex: 0 0 auto;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0px 0px 0px 2px #0000000d;
	background: #fff;
}
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item:first-child { margin-left: 14px; }
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item:last-child { margin-right: 14px; }
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item .mcpicture {
	height: 100%;
	width: auto;
	display: block;
	aspect-ratio: unset !important;
	position: relative;
}
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item .mcpicture img {
	height: 100%;
	width: auto;
	display: block;
	object-fit: contain;
	aspect-ratio: unset !important;
}
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item .mcpicture img[type="thumb"] {
	position: absolute;
	inset: 0;
	filter: blur(8px);
	z-index: 0;
}
layer[name="project"] .dev-pc .pl-imgs .screenshots-slider .item .mcpicture img[type="base"] {
	position: relative;
	z-index: 1;
}

layer[name="project"] .pl-desc-full {
	padding: 60px 50px 0px;
	/* max-width: 820px; */
	margin: 0 auto;
	font-family: 'Roboto', sans-serif;
	color: #111;
	box-sizing: content-box;
}
layer[name="project"] .pl-desc-full .eyebrow {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #999;
	padding-bottom: 18px;
	margin-bottom: 26px;
	border-bottom: 1px solid #eaeaea;
}
layer[name="project"] .pl-desc-full .par {
	margin: 0 0 26px;
	text-align: justify;
	hyphens: auto;
	font-size: 17px;
	line-height: 25px;
	font-weight: 400;
	color: #7e7d7d;
}
layer[name="project"] .pl-desc-full .par.lead {
	font-size: 22px;
	font-weight: 400;
	line-height: 31px;
	color: #222;
	margin-bottom: 26px;
	text-align: left;
	letter-spacing: -0.01em;
	hyphens: manual;
	font-family: 'Montserrat';
}
layer[name="project"] .pl-desc-full .par.has-dropcap::first-letter {
	float: left;
	font-size: 60px;
	line-height: 0.9;
	font-weight: 700;
	color: #222;
	margin: 3px 12px 0 0;
	font-family: 'Montserrat';
}
layer[name="project"] .pl-desc-full .par m {
	font-weight: 700;
}
layer[name="project"] .pl-desc-full .sep {
	text-align: center;
	margin: 10px 0;
	font-size: 32px;
	letter-spacing: 0.4em;
	color: #4e4e4e;
	user-select: none;
}
layer[name="project"] .pl-desc-full .par.final {
	margin-top: 44px;
	padding-top: 28px;
	border-top: 1px solid #eaeaea;
	font-size: 22px;
	font-weight: 400;
	line-height: 31px;
	color: #222;
	margin-bottom: 26px;
	text-align: left;
	letter-spacing: -0.01em;
	hyphens: manual;
	font-family: 'Montserrat';
}

/* ---------- 00. PRELOADER — белый фон + плавное растворение ---------- */

body > .loader {
	background: #ffffff !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	transition: opacity 0.6s ease !important;
}

/* Скрытие при готовности — никаких rotate/translate, только opacity */
body > .loader.a {
	transform: none !important;
	opacity: 0 !important;
}

/* Полоска прогресса — скрыта (лоадер теперь SVG-логотип, индикатор лишний) */
body > .loader .bar:after {
	display: none !important;
}


/* ---------- 01. HERO BACKGROUND — фикс обрезки + fixed-attachment ---------- */

/* Раньше .mcpicture получал inline aspect-ratio и фиксированную ширину.
   Снимаем ограничение, растягиваем на весь .background. */
d.firstscreen d.background d.mcpicture {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: unset !important;
	background: none !important;
	overflow: hidden;
}

/* Картинка-base тянется на весь контейнер. Thumb прячем (нужен только base). */
d.firstscreen d.background d.mcpicture img[type="base"] {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
}
d.firstscreen d.background d.mcpicture img[type="thumb"] {
	display: none !important;
}

/* Background-attachment: fixed эффект.
   На самом контейнере .background фиксируем фоновую картинку.
   Картинку грузим тем же URL, что и img[type="base"], через JS-инжект (см. zz-makalister-fixes.js).
   Здесь только базовые правила. */
d.firstscreen d.background {
	background-color: #222;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	background-repeat: no-repeat;
}

/* Когда фон установлен JS-ом, mcpicture можно скрыть (для чистоты parallax-эффекта) */
d.firstscreen d.background.bg-fixed d.mcpicture {
	opacity: 0 !important;
}


/* ---------- 01a. CONTAINER YEARS15 — отключаем transform ---------- */

d.container.years15,
body:not(.open) d.container.years15 {
	transform: unset !important;
}


/* ---------- 01a2. COUNTERS — фон cover ---------- */

d.counter-results,
d.counter-years15 {
	background-size: cover;
}


/* ---------- 01b. ROW-AB STICKY — короткая колонка залипает, длинная прокручивается ---------- */

@media (min-width: 1081px) {
	d.container.years15 > d.row-ab.one,
	d.container.years15 > d.row-ab.two,
	d.container.years15 > d.row-ab.three {
		align-items: flex-start;
	}
	/* row-ab.one: слева "16 лет мастерства", справа длинный текст */
	d.container.years15 > d.row-ab.one > d.a,
	/* row-ab.three: слева фото "обо мне", справа skills-список */
	d.container.years15 > d.row-ab.three > d.a,
	/* row-ab.two: справа цифры, слева длинный текст */
	d.container.years15 > d.row-ab.two > d.b {
		position: sticky;
		top: 80px;
		align-self: flex-start;
		height: max-content;
	}
}


/* ---------- 01c. APPROACH-BLOCK — чёрная плашка между MySkills и awards ---------- */

/* В granddaniell.css .lasts_start container — flex-row для пары "title + кнопка".
   У нас кнопка убрана, текст с подзаголовком сверху и заголовком ниже — переводим в column. */
d.lasts_start.approach-block d.container {
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}
d.lasts_start.approach-block d.container d.subtitle {
	color: #c8c8c8;
}
d.lasts_start.approach-block d.container h2.title {
	text-align: left;
	max-width: 100%;
	line-height: normal;
}

/* Адаптив .lasts_start — в granddaniell.css контейнер зашит на width: 1000px.
   На узких экранах вылезает за viewport. */
@media (max-width: 1059px) {
	d.lasts_start d.container {
		width: calc(100% - 60px) !important;
		max-width: 1000px;
	}
}
@media (max-width: 640px) {
	d.lasts_start d.container {
		width: calc(100% - 32px) !important;
	}
	d.lasts_start.approach-block d.container h2.title {
		font-size: 22px;
		line-height: 28px;
	}
}


/* ============================================================
   .container.years15 — АДАПТИВ
   В granddaniell.css контейнер зашит на width: 1300px.
   Снимаем фикс ширину, на узких экранах переключаем колонки в столбик.
   ============================================================ */

/* ≤ 1339px (ноут / планшет landscape) — снимаем фикс 1300px, даём боковые поля */
@media (max-width: 1339px) {
	d.container.years15 {
		width: calc(100% - 60px) !important;
		max-width: 1300px;
	}
}

/* ≤ 1080px (планшеты и мобильные) — колонки в один столбик.
   Граница 1080 (а не 900) — потому что на 900-1080 квадрат "16" (~500px) вылезает
   из колонки .a (400px фикс из granddaniell.css). */
@media (max-width: 1080px) {
	d.container.years15 > d.row-ab {
		flex-direction: column;
		gap: 40px;
		margin-bottom: 80px !important;
	}
	d.container.years15 > d.row-ab > d.a,
	d.container.years15 > d.row-ab > d.b {
		width: 100% !important;
	}
	/* counter-блоки центрируем + квадратная форма для "16 лет мастерства" */
	d.container.years15 d.counter-years15 {
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		aspect-ratio: 1 / 1;
	}
	d.container.years15 d.counter-results {
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
}

/* ≤ 640px (мобильные) — уменьшаем боковые отступы + counter-results: 4 цифры в столбик */
@media (max-width: 640px) {
	d.container.years15 {
		width: calc(100% - 32px) !important;
	}
	d.container.years15 > d.row-ab {
		margin-bottom: 60px !important;
	}
	/* counter-results: на узких экранах 4 svg обрезали текст ("УСПЕШНЫХ ПРОЕКТ..." вместо полного).
	   Делаем по одной цифре в строку, чтобы заголовок помещался. */
	d.container.years15 d.counter-results {
		height: auto !important;
	}
	d.container.years15 d.counter-results d.svg_mask {
		flex-direction: column;
		gap: 2px 0;
	}
	d.container.years15 d.counter-results .svg_mask svg {
		width: 100% !important;
		height: 140px !important;
	}
}

/* ≤ 420px (small mobile) — минимальный padding + цифры мельче, иначе "170'237" не помещается */
@media (max-width: 420px) {
	d.container.years15 {
		width: calc(100% - 20px) !important;
	}
	d.container.years15 d.counter-results d.svg_mask svg text.count.number {
		font-size: 48px;
	}
}


/* ============================================================
   .container.awards — АДАПТИВ
   В granddaniell.css контейнер зашит на width: 1300px,
   плитки .x1-x8 в фикс % колонках (25/33/30/50). На узких экранах разваливается.
   ============================================================ */

/* ≤ 1339px — снимаем фикс ширину */
@media (max-width: 1339px) {
	d.container.awards {
		width: calc(100% - 60px) !important;
		max-width: 1300px;
	}
}

/* ≤ 1080px — чистая 2-колоночная раскладка для вертикальных дипломов (4 = 2×2, без одиночек),
   горизонтальные/большие/цитата — на всю ширину. */
@media (max-width: 1080px) {
	d.container.awards d.content d.a {
		gap: 16px;
		justify-content: flex-start;
	}
	/* Вертикальные дипломы x1-x4 — по 2 в ряд (50%). */
	d.container.awards d.content d.a d.i {
		width: calc(50% - 8px) !important;
	}
	/* Горизонтальные дипломы x0/x6, цитата x5, большие x7/x8 — на всю ширину. */
	d.container.awards d.content d.a d.i.x0,
	d.container.awards d.content d.a d.i.x6,
	d.container.awards d.content d.a d.i.x7,
	d.container.awards d.content d.a d.i.x8 {
		width: 100% !important;
		aspect-ratio: 4/3;
	}
	d.container.awards d.content d.a d.i.x5 {
		width: 100% !important;
		aspect-ratio: auto;
		min-height: 200px;
		padding: 30px 16px;
	}
	/* svgword "НАГРАД" — в granddaniell.css width:650px + left:155px, на узких вылезает вправо. */
	d.container.awards d.svgword.a6 {
		width: 100% !important;
		left: 0 !important;
		max-width: 650px;
	}
	d.container.awards d.svgword.a6 svg {
		width: 100% !important;
		height: auto !important;
	}
}

/* ≤ 640px — мобильное: дипломы по-прежнему по 2 в ряд, остальное на всю */
@media (max-width: 640px) {
	d.container.awards {
		width: calc(100% - 32px) !important;
	}
	d.container.awards h2.title {
		font-size: 22px;
		line-height: 28px;
	}
}

/* ≤ 420px — минимальный padding */
@media (max-width: 420px) {
	d.container.awards {
		width: calc(100% - 20px) !important;
	}
}


/* ---------- 01d. PROJECTS — slider псевдо-картинок + география ---------- */

/* География проектов под заголовком блока кейсов */
d.container.last_project d.geo {
	color: #999;
	font-size: 14px;
	line-height: 22px;
	font-weight: 300;
	margin-top: 28px;
}

/* Контейнер .imgs без фона и отступов — внутри горизонтальный слайдер псевдо-скриншотов */
.projectItem .imgs {
	background: transparent !important;
	overflow: hidden;
}
.projectItem .imgs .screenshots-slider {
	position: absolute;
	inset: 0;
	display: flex;
	gap: 14px;
	padding: 0;
	box-sizing: border-box;
	align-items: stretch;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	cursor: grab;
}
.projectItem .imgs .screenshots-slider::-webkit-scrollbar {
	display: none;
}
.projectItem .imgs .screenshots-slider .item {
	height: 100%;
	height: calc(100% - 4px);
	width: auto;
	flex-shrink: 0;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0px 0px 0px 2px #0000000d;
	margin: 2px;
}
.projectItem .imgs .screenshots-slider .item img,
.projectItem .imgs .screenshots-slider .item picture,
.projectItem .imgs .screenshots-slider .item picture img {
	height: 100%;
	width: auto;
	display: block;
	object-fit: contain;
}


/* ---------- 02. HERO TYPOGRAPHY — мелкие правки ---------- */

/* Subtitle (РЕЗЮМЕ · 16 ЛЕТ ОПЫТА) — красный SVG-маркер за текстом */
d.firstscreen d.background d.overlay d.content d.subtitle {
	position: relative;
	width: max-content;
	margin: auto;
}
d.firstscreen d.background d.overlay d.content d.subtitle:before {
	background-image: url("data:image/svg+xml,%3Csvg width='186' height='32' viewBox='0 0 186 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M56.6644 10.0176C41.9952 12.9675 -1.86281 21.8315 13.437 22.0336C38.5851 22.3657 62.9207 16.0779 87.7215 14.3317C97.3307 13.6551 165.769 10.007 175.5 10.0176' stroke='%23cc0000' stroke-width='19.4196' stroke-linecap='round'/%3E%3C/svg%3E%0A");
	content: "";
	width: 183px;
	display: block;
	position: absolute;
	left: -25px;
	top: -13px;
	height: 45px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	z-index: -1;
}

/* Subtitle bottom (Веб-разработчик · Автор CMS · DevOps) — чуть тоньше для иерархии */
d.firstscreen d.background d.overlay d.content h1.title d {
	font-size: 36px;
	font-weight: 200;
	letter-spacing: 0.5px;
	margin-top: 14px;
	opacity: 0.85;
}


/* ---------- 02a. FOOTER CONTACTS — расстояние между двумя номерами в одной колонке ---------- */

/* Родной gap: 35px между всеми элементами .af. Притягиваем второй <a> ближе
   к первому, не трогая отступ "лейбл → первое значение". */
d.container.footer d.rowb d.ax d.af a + a {
	margin-top: -25px;
}

/* QR ↔ контакты — родной 100px великоват, ужимаем до 70px */
d.container.footer d.rowb {
	gap: 70px;
}

d.container.footer d.mcpicture {
	background: unset;
}


/* ---------- 02b. TESTIMONIALS — мини-CTA под формой «Давай вместе» ---------- */

d.container.testimonials d.microsocial d.microcontacts {
	display: flex;
	align-items: center;
	gap: 28px;
	margin-top: 18px;
}
d.container.testimonials d.microsocial d.microcontacts d.phones {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}
d.container.testimonials d.microsocial d.microcontacts d.phones a {
	font-family: roboto;
	font-size: 14px;
	font-weight: 300;
	color: #444;
	letter-spacing: 0.3px;
	transition: color .2s;
}
d.container.testimonials d.microsocial d.microcontacts d.phones a:hover {
	color: #000;
}
d.container.testimonials d.microsocial d.microcontacts d.qr {
	width: 80px;
	flex-shrink: 0;
}
d.container.testimonials d.microsocial d.microcontacts d.qr d.mcpicture {
	background: unset;
}

/* ---------- 02b. FOOTER CONTACTS — иконки слева от лейбла ---------- */

d.container.footer d.rowb d.ax d.af d.a {
	background-size: 16px;
	background-position: 0 center;
	background-repeat: no-repeat;
	padding: 2px 0 2px 24px;
}
d.container.footer d.rowb d.ax d.af d.a:before {
	left: 24px;
}

/* НА СВЯЗИ ПО РФ / US / UK — телефонная трубка */
d.container.footer d.rowb d.ax d.af.phone d.a {
	background-image: url("data:image/svg+xml,%3Csvg%20stroke%3D%22%23333%22%20stroke-width%3D%221%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M21.97%2018.33C21.97%2018.69%2021.89%2019.06%2021.72%2019.42C21.55%2019.78%2021.33%2020.12%2021.04%2020.44C20.55%2020.98%2020.01%2021.37%2019.4%2021.62C18.8%2021.87%2018.15%2022%2017.45%2022C16.43%2022%2015.34%2021.76%2014.19%2021.27C13.04%2020.78%2011.89%2020.12%2010.75%2019.29C9.6%2018.45%208.51%2017.52%207.47%2016.49C6.44%2015.45%205.51%2014.36%204.68%2013.22C3.86%2012.08%203.2%2010.94%202.72%209.81C2.24%208.67%202%207.58%202%206.54C2%205.86%202.12%205.21%202.36%204.61C2.6%204%202.98%203.44%203.51%202.94C4.15%202.31%204.85%202%205.59%202C5.87%202%206.15%202.06%206.4%202.18C6.66%202.3%206.89%202.48%207.07%202.74L9.39%206.01C9.57%206.26%209.7%206.49%209.79%206.71C9.88%206.92%209.93%207.13%209.93%207.32C9.93%207.56%209.86%207.8%209.72%208.03C9.59%208.26%209.4%208.5%209.16%208.74L8.4%209.53C8.29%209.64%208.24%209.77%208.24%209.93C8.24%2010.01%208.25%2010.08%208.27%2010.16C8.3%2010.24%208.33%2010.3%208.35%2010.36C8.53%2010.69%208.84%2011.12%209.28%2011.64C9.73%2012.16%2010.21%2012.69%2010.73%2013.22C11.27%2013.75%2011.79%2014.24%2012.32%2014.69C12.84%2015.13%2013.27%2015.43%2013.61%2015.61C13.66%2015.63%2013.72%2015.66%2013.79%2015.69C13.87%2015.72%2013.95%2015.73%2014.04%2015.73C14.21%2015.73%2014.34%2015.67%2014.45%2015.56L15.21%2014.81C15.46%2014.56%2015.7%2014.37%2015.93%2014.25C16.16%2014.11%2016.39%2014.04%2016.64%2014.04C16.83%2014.04%2017.03%2014.08%2017.25%2014.17C17.47%2014.26%2017.7%2014.39%2017.95%2014.56L21.26%2016.91C21.52%2017.09%2021.7%2017.3%2021.81%2017.55C21.91%2017.8%2021.97%2018.05%2021.97%2018.33Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

/* МОЙ TELEGRAM */
d.container.footer d.rowb d.ax d.af.telegram d.a {
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 48' id='Layer_2' data-name='Layer 2' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23000000;stroke-linecap:round;stroke-linejoin:round;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M40.83,8.48c1.14,0,2,1,1.54,2.86l-5.58,26.3c-.39,1.87-1.52,2.32-3.08,1.45L20.4,29.26a.4.4,0,0,1,0-.65L35.77,14.73c.7-.62-.15-.92-1.07-.36L15.41,26.54a.46.46,0,0,1-.4.05L6.82,24C5,23.47,5,22.22,7.23,21.33L40,8.69a2.16,2.16,0,0,1,.83-.21Z'/%3E%3C/svg%3E");
}

/* МОЙ МАКС — без иконки, без отступа */
d.container.footer d.rowb d.ax d.af.max d.a {
	padding-left: 0;
}
d.container.footer d.rowb d.ax d.af.max d.a:before {
	left: 0;
}

/* Подпись в правом нижнем углу футера — родная версия 300px и opacity:.5.
   Под подписью — переключатель языков (3 ссылки). Сама подпись естественно
   поднимается за счёт высоты списка языков — bottom оставляем родной. */
d.signature {
	width: 240px;
	opacity: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 16px;
	position: relative;
	right: initial;
	top: initial;
	bottom: 23px;
	left: initial;
}
d.signature img {
	max-width: 100%;
	height: auto;
	display: block;
	border-bottom: 1px solid #dddddd;
	padding-bottom: 15px;
}
d.signature d.langs {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	gap: 14px;
}
d.signature d.langs a {
	color: #838383;
	font-size: 13px;
	font-weight: 300;
	letter-spacing: 0.3px;
	line-height: 1.4;
	text-decoration: none;
}

/* Текст-описание в футере — добавляем line-height для читаемости */
d.container.footer d.rowa {
	line-height: 21px;
}

/* "КОНТАКТЫ" — опускаем на 30px (родное top: -30px → 0) */
d.container.footer d.svgword.a11 {
	top: 0;
}

/* "AI РАЗРАБОТКА" — выводим справа в стиле блока СОТРУДНИЧЕСТВО (.a8).
   Родное .a9 центрированное и stroke 3px (выглядит ярко-розовым).
   Перекрываем расположение и обводку под характер фоновой надписи. */
d.container.rules d.svgword.a9 {
	left: auto;
	right: 0;
	margin: 0;
	width: calc(100% - 340px);
	top: -100px;
}
d.container.rules d.svgword.a9 svg {
	stroke-width: 1.2px;
}

/* PRICING / Choose type of Your apartments — родное text-align:center у .px
   ставит заголовок по центру. По аналогии с блоком СОТРУДНИЧЕСТВО — слева. */
d.container.rules d.px {
	text-align: left;
}
/* Родной granddaniell.css делает subtitle внутри .px чёрным.
   Возвращаем цвет в общий серый ряд subtitle сайта. */
d.container.rules d.px d.subtitle {
	color: #d8d8d8;
}

/* Колонки шире (200→240), чтобы justify в .desc не оставлял огромных дырок
   между словами. Промежутки между колонками сокращаются за счёт space-between. */
d.container.rules d.prices d.column {
	width: 245px;
}

/* Теги технологий внизу колонки (вместо родной кнопки СОТРУДНИЧАТЬ) */
d.container.rules d.prices d.column d.tech {
	display: block;
	margin-top: 24px;
	font-size: 13px;
	font-weight: 600;
	color: #2a2a2a;
	letter-spacing: 0.3px;
	text-align: center;
}


/* ============================================================
   БЛИЦ — компактный двухколоночный чек-лист в стиле основного списка
   ============================================================ */

/* В granddaniell.css есть правило `point[i="10"] {top: 0px;}` от прежнего
   использования номера. Возвращаем стандартное top как у остальных point. */
point[i="10"] {
	top: 52px;
}

d.container.rules d.content {
	margin-bottom: 60px;
}
d.container.rules d.blitz {
	margin-top: 60px;
}
d.container.rules d.blitz h2.title {
	margin-bottom: 30px;
}
d.container.rules d.blitz d.bz-list {
	/* Колонки регулируются переменной --cols (3 или 2). Чтобы вернуть 2 — поменять цифру. */
	--cols: 3;
	--col-gap: 35px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	row-gap: 4px;
	column-gap: var(--col-gap);
}
d.container.rules d.blitz d.bz-row {
	width: calc((100% - var(--col-gap) * (var(--cols) - 1)) / var(--cols));
	display: flex;
	gap: 24px;
	align-items: baseline;
	padding: 8px 0;
	border-top: 1px solid #ececec;
}
d.container.rules d.blitz d.bz-row d.bz-m {
	flex: 0 0 auto;
	width: 32px;
	font-weight: 300;
	color: #333;
	font-size: 11px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding-top: 2px;
}
d.container.rules d.blitz d.bz-row d.bz-t {
	font-family: roboto;
	font-size: 15px;
	font-weight: 400;
	color: #444;
	line-height: 22px;
	border-left: 1px solid #b4b4b4;
	padding-left: 24px;
	flex: 1;
}


/* ============================================================
   АДАПТИВ — DESKTOP-WIDE → меню перестаёт помещаться (≤1080px)
   Прячем меню целиком. Логотип не трогаем, lang остаётся.
   ============================================================ */

@media (max-width: 1080px) {
	d.firstscreen header .navigation nav > d.menu-item:not(.lang):not(.tel) {
		display: none !important;
	}
}


/* ============================================================
   TABLET (≤900px) — приглушаем гигантский H1, фон уже не fixed
   ============================================================ */

@media (max-width: 900px) {
	d.firstscreen {
		height: calc(100vh - 80px);
		min-height: 600px;
	}
	d.firstscreen header {
		padding: 18px 24px;
	}
	d.firstscreen d.background d.overlay d.content {
		width: calc(100% - 48px);
		max-width: 100%;
		text-align: center;
	}
	d.firstscreen d.background d.overlay d.content d.subtitle {
		font-size: 14px;
		letter-spacing: 3.5px;
		line-height: 20px;
	}
	d.firstscreen d.background d.overlay d.content h1.title {
		font-size: 42px;
		padding: 0 20px;
	}
	d.firstscreen d.background d.overlay d.content h1.title d {
		font-size: 28px;
		margin-top: 14px;
	}
	/* На таблете отключаем fixed-фон (iOS Safari часто бажит) */
	d.firstscreen d.background {
		background-attachment: scroll;
	}
}


/* ============================================================
   MOBILE (≤640px) — лого + lang в шапке, шрифты ЧИТАЕМЫЕ
   ============================================================ */

@media (max-width: 640px) {
	d.firstscreen {
		height: 100vh;
		min-height: 580px;
	}
	d.firstscreen header {
		padding: 16px 20px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}

	/* Логотип — НЕ сжимаем до бесконечности, держим читаемый размер */
	d.firstscreen header d.logo {
		width: 160px;
		flex-shrink: 0;
		transform: none !important;
	}
	html.ready d.firstscreen header d.logo {
		transform: none !important;
	}
	d.firstscreen header d.logo img.image_logo {
		width: 100%;
		height: auto;
		display: block;
	}

	/* Навигация: только переключатель языков */
	d.firstscreen header .navigation {
		flex-shrink: 0;
	}
	d.firstscreen header .navigation nav {
		display: flex;
		flex-direction: row;
		gap: 0;
		transform: none !important;
	}
	html.ready d.firstscreen header .navigation nav {
		transform: none !important;
	}
	d.firstscreen header .navigation d.menu-item.lang a {
		font-size: 13px;
		padding: 6px 10px;
		letter-spacing: 1.5px;
	}

	/* Hero: ЧИТАЕМЫЕ шрифты */
	d.firstscreen d.background d.overlay d.content {
		width: calc(100% - 32px);
		max-width: 100%;
		text-align: center;
	}
	d.firstscreen d.background d.overlay d.content d.subtitle {
		font-size: 14px !important;
		letter-spacing: 2.5px;
		line-height: 20px;
		font-weight: 400;
		opacity: 0.85;
	}
	d.firstscreen d.background d.overlay d.content h1.title {
		font-size: 38px;
		padding: 0 12px;
		margin-top: 18px;
		line-height: 1.15;
	}
	d.firstscreen d.background d.overlay d.content h1.title d {
		font-size: 22px;
		margin-top: 14px;
		font-weight: 300;
		line-height: 1.3;
		opacity: 0.9;
	}

	/* На мобиле fixed-фон отключаем */
	d.firstscreen d.background {
		background-attachment: scroll;
	}

	/* Outlined SVG-word "GRAND" приглушаем */
	d.firstscreen d.background d.overlay d.svgword {
		opacity: 0.25;
	}
}


/* ============================================================
   SMALL MOBILE (≤420px) — iPhone SE/mini
   Шрифты держим всё ещё читаемыми, не уменьшаем сильно.
   ============================================================ */

@media (max-width: 420px) {
	d.firstscreen header {
		padding: 14px 16px;
	}
	d.firstscreen header d.logo {
		width: 140px;
	}
	d.firstscreen header .navigation d.menu-item.lang a {
		font-size: 12px;
		padding: 5px 8px;
	}

	d.firstscreen d.background d.overlay d.content d.subtitle {
		font-size: 13px !important;
		letter-spacing: 2px;
	}
	d.firstscreen d.background d.overlay d.content h1.title {
		font-size: 32px;
		padding: 0 8px;
	}
	d.firstscreen d.background d.overlay d.content h1.title d {
		font-size: 19px;
	}
}


/* ---------- 16. FIRSTSCREEN — белый stroke у SVG-слова ---------- */

d.firstscreen d.svgword svg {
	stroke: #ffffff;
}


/* ---------- 17. AWARDS-ROW — 4 SVG-награды, ряд с равным распределением ---------- */

d.awards-row {
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 0 0 70px;
}
d.awards-row img {
	width: 200px;
	height: auto;
}


/* ---------- 18. TESTIMONIALS — снять зажатую высоту карточки + стиль подписи ---------- */

/* В temp.css на .comment стоит min/max-height: 140px — текст обрезается и
   налазит на следующую карточку. Снимаем фикс, оставляем естественную высоту. */
d.container.testimonials d.content d.list ul li.comment {
	min-height: 0 !important;
	max-height: none !important;
}

/* Подпись отзыва — отдельная мелкая строка снизу карточки, стилем под "дату" в шапке. */
d.container.testimonials d.content d.list ul li.comment > h6.sign {
	margin: 12px 0 0 85px;
	color: #adadad;
	font-family: roboto;
	font-weight: 400;
	font-size: 13px;
	letter-spacing: .5px;
}
.projectItem .imgs {
	background: unset;
}
d.projects {
	user-select: none;
}
.projectItem .imgs .swiper-slide.m, .projectItem .imgs .swiper-slide.d {
	height: 520px;
	width: auto;
}
d.projects .mcpicture {
	height: 100%;
	width: max-content;
	width: -moz-max-content;
}
d.projects .mcpicture img {
	width: auto;
	height: 100%;
}
.swiper-scrollbar.swiper-scrollbar-horizontal {
	position: static!important;
	margin-top: 30px;
	height: 1px;
}
d.container.testimonials d.descImg {
	width: 70px;
	min-width: 70px;
}
d.container.testimonials d.desc {
	display: flex;
	gap: 15px;
}
d.container.testimonials d.content d.list point {
	opacity: 0!important;
}
layer.layerTestimoonials d.contForlayer {
	height: 100%;
}
layer.layerTestimoonials d.contForlayer img {
	height: 100%;
}
layers > layer.layerTestimoonials > wrap {
	background: unset;
}

layer.mobile.layerTestimoonials d.contForlayer img {
	height: auto;
	width: 100%;
}
layer.mobile.layerTestimoonials d.contForlayer {
	height: auto;
	width: 100%;
}
layers > layer.mobile.layerTestimoonials > wrap {
	background: unset;
	height: max-content!important;
	height: -moz-max-content!important;
}
d.container.testimonials d.content d.list ul li.comment {
	min-height: 140px;
	max-height: 140px;
}


.loader-p6xz82hv {
	width: 100%;
	max-width: 600px;
	display: flex;
	align-items: flex-start;
	gap: 16px;
	border-radius: 8px;
	box-sizing: border-box;
}

d.d9dfughd9fubgs {
	min-height: 140px;
	max-height: 140px;
}

.loader-icon-p6xz82hv {
	width: 70px;
	height: 105px;
	border-radius: 4px;
	background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
	background-size: 200% 100%;
	animation: shimmer-p6xz82hv 1.6s infinite linear;
}

.loader-content-p6xz82hv {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	height: 110px;
	justify-content: space-between;
}

.loader-header-p6xz82hv {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px;
}

.loader-name-p6xz82hv {
  width: 50%;
  height: 20px;
  border-radius: 4px;
  background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
  background-size: 200% 100%;
  animation: shimmer-p6xz82hv 1.6s infinite linear;
}

.loader-meta-p6xz82hv {
  width: 20%;
  height: 12px;
  border-radius: 4px;
  background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
  background-size: 200% 100%;
  animation: shimmer-p6xz82hv 1.6s infinite linear;
}

.loader-text-p6xz82hv {
	width: 100%;
	height: 27px;
	border-radius: 4px;
	background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
	background-size: 200% 100%;
	animation: shimmer-p6xz82hv 1.6s infinite linear;
	margin-bottom: 6px;
}

@keyframes shimmer-p6xz82hv {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

d.container.testimonials a.g {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 2px;
	font-weight: 300;
}
d.container.testimonials .social {
	height: auto;
	transform: unset;
	flex-direction: row;
	position: static;
}
d.form.testimonialForm d.imph {
	border-radius: 8px;
	overflow: hidden;
}
d.microsocial .fr {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 25px;
}
d.microsocial h2.title {
	font-size: 25px;
	line-height: 28px;
	font-weight: 300;
	font-family: 'Roboto';
	width: max-content;
	background: #fff;
	border-radius: 8px;
	padding: 6px 15px;
	max-width: 260px;
	margin: 0;
}
d.microsocial {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-end;
	text-align: right;
	margin-top: -88px;
	padding: 0 20px;
	z-index: 5;
	position: relative;
}
d.microsocial a.w {
	background-image: url("data:image/svg+xml, %3Csvg%20stroke%3D%22%23222%22%20stroke-width%3D%221.4%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20randcolor%3D%22set%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3%2021l1.65%20-3.8a9%209%200%201%201%203.4%202.9l-5.05%20.9%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M9%2010a.5%20.5%200%200%200%201%200v-1a.5%20.5%200%200%200%20-1%200v1a5%205%200%200%200%205%205h1a.5%20.5%200%200%200%200%20-1h-1a.5%20.5%200%200%200%200%201%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
	opacity: .5;
}

d.microsocial a.t {
	opacity: .5;
	background-image: url("data:image/svg+xml, %3Csvg%20stroke%3D%22%23222%22%20stroke-width%3D%221.4%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20randcolor%3D%22set%22%20width%3D%2232%22%20height%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.39999%206.32003L15.89%203.49003C19.7%202.22003%2021.77%204.30003%2020.51%208.11003L17.68%2016.6C15.78%2022.31%2012.66%2022.31%2010.76%2016.6L9.91999%2014.08L7.39999%2013.24C1.68999%2011.34%201.68999%208.23003%207.39999%206.32003Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M10.11%2013.6501L13.69%2010.0601%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.loader-comment {
	width: 100%;
	height: 190px;
	border-radius: 8px;
	background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
	background-size: 200% 100%;
	animation: shimmer-f9opd1l 1.6s infinite linear;
}

.loader-name {
  width: 50%;
  height: 64px;
  border-radius: 8px;
  background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
  background-size: 200% 100%;
  animation: shimmer-f9opd1l 1.6s infinite linear;
}

.loader-button {
  width: 30%;
  height: 16px;
  border-radius: 8px;
  background: linear-gradient(90deg, #f4f4f4 25%, #e0e0e0 50%, #f4f4f4 75%);
  background-size: 200% 100%;
  animation: shimmer-f9opd1l 1.6s infinite linear;
}

@keyframes shimmer-f9opd1l {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.loader-f9opd1l {
	width: 100%;
	max-width: 500px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	border-radius: 8px;
	box-sizing: border-box;
	height: 324px;
	align-items: flex-end;
}
