html {
	font-size: 0.069446vw;
	overflow-x: hidden;
}
body {
	padding: 0;
	margin: 0;
	overflow-x: hidden;
	font-family: 'Evolventa';
	background: var(--Main-blue-dark);
	color: var(--White);
}
:root {
	--White: #fff;
	--Text: #7D7E8A;
	--Accent: #FB985B;
	--Accent-blue: #191A2F;
	--Main-blue-dark: #10101E;
}
h1,h2,h3,h4,h5,p {
	margin: 0;
	padding: 0;
}
:active, :hover, :focus {
    outline: 0;
    outline-offset: 0;
}
a {
	text-decoration: none;
	display: block;
	font-size: 12rem;
	font-weight: 700;
	color: var(--White);
	letter-spacing: 0.36rem;
	text-transform: uppercase;
}
h1 {
	font-size: 60rem;
	font-weight: 400;
	text-transform: uppercase;
}
h2 {
	font-size: 56rem;
	font-weight: 400;
	text-transform: uppercase;
}
h3 {
	font-size: 37rem;
	font-weight: 400;
	text-transform: uppercase;
}
h4 {
	font-size: 22rem;
	font-weight: 400;
	text-transform: uppercase;
}
h5 {
	font-size: 14rem;
	font-weight: 700;
	text-transform: uppercase;
}
p {
	font-size: 14rem;
}
img {
	width: 100%;
	display: block;
}
.btn {
	font-size: 14rem;
	font-weight: 700;
	text-transform: uppercase;
	padding: 14rem 21rem;
	width: max-content;
	background: linear-gradient(90deg,rgba(251, 152, 91, 1) 0%, rgba(251, 152, 91, 1) 50%, rgba(255, 137, 64, 1) 51%, rgba(255, 137, 64, 1) 100%);
	background-size: 200%;
	background-position: 0% 0%;
	color: var(--Accent-blue);
	letter-spacing: 0.42rem;
	transition: 0.4s;
	display: flex;
	align-items: center;
	gap: 10rem;
	line-height: normal;
	transition: 0.4s;
}
.btn img {
	width: 8rem;
}
.container {
	position: relative;
	width: 1200rem;
	margin: auto;
}
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 21;
	background: transparent;
	transition: 0.4s;
}
header.fixed {
	background: #10101E;
}
header.fixed .header_overlay {
	border-bottom: 1rem solid transparent;
}
.header_overlay {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 15rem 0;
	border-bottom: 1rem solid rgba(255, 255, 255, 0.10);
	transition: 0.4s;
}
.header_logo {
	width: 175rem;
}
.header_nav {
	display: flex;
	align-items: center;
	gap: 45rem;
}
.header_nav a {
	transition: 0.4s;
}
.header_btn {
	padding: 12rem 26rem;
}
span {
	color: var(--Accent);
}
.hero_overlay {
	display: flex;
	justify-content: space-between;
	height: calc(100vh - 200rem);
	padding: 100rem 0;
	align-items: flex-end;
}
.hero_content {
	width: 363rem;
}
.hero_title {
	width: 730rem;
}
.hero_btn {
	margin-top: 30rem;
}
.hero {
	background-size: cover;
	position: relative;
}
.hero:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	letter-spacing: 0;
	top: 0;
	z-index: 1;
	background: linear-gradient(0deg, rgba(16, 16, 30, 0.60) 0%, rgba(16, 16, 30, 0.60) 100%);
}
.hero_overlay {
	position: relative;
	z-index: 2;
}
.hero_overlay:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: -120rem;
	width: 100vw;
	height: 393rem;
	z-index: -1;
	background: linear-gradient(180deg, rgba(16, 16, 30, 0.00) 0%, rgba(16, 16, 30, 0.90) 90%);
}
.services {
	padding: 120rem 0;
}
.services_title span {
	display: block;
	margin-left: 75rem;
}
.services_overlay {
	display: flex;
	margin-top: 35rem;
	gap: 25rem;
}
.services_item {
	width: 333rem;
	position: relative;
	padding: 25rem;
	transition: 0.4s;
}
.services_item_image {
	width: 100%;
	background-size: cover;
	height: 250rem;
	background-position: center;
}
.services_item_content {
	display: flex;
	flex-direction: column;
	margin-top: 35rem;
	min-height: calc(100% - 285rem);
}
.services_item_descr {
	margin: 14rem 0 50rem;
	color: rgba(255, 255, 255, 0.70);
	text-transform: none;
	letter-spacing: normal;
	font-weight: 400;
}
.services_item_btn {
	display: flex;
	align-items: center;
	margin-top: auto;
	color: var(--Accent);
	gap: 20rem;
	width: max-content;
	font-size: 14rem;
	position: relative;
}
.services_item_btn:before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(100% + 3rem);
	width: 100%;
	height: 1rem;
	background-color: var(--Accent);
	transition: 0.4s;
}
.services_item_btn svg {
	width: 10rem;
	height: auto;
	transition: 0.4s;
	transform: translate(0rem, 0rem);
}
.services_item_btn svg path {
	stroke: var(--Accent);
}
.about {
	padding: 120rem 0;
	background: var(--Accent-blue);
}
.about_overlay {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.about_content {
	width: 705rem;
}
.about_content_text {
	margin-top: 15rem;
	color: var(--Text);
}
.about_content_items {
	display: flex;
	align-items: center;
	margin-top: 20rem;
	gap: 100rem;
}
.about_content_items_number {
	font-size: 80rem;
	text-transform: uppercase;
	color: var(--Accent);
}
.about_content_items_item {
	display: flex;
	align-items: center;
	gap: 20rem;
}
.about_content_title {
	text-transform: none;
}
.about_content_items_descr {
	width: 100rem;
}
.about_gallery {
	display: flex;
	width: 100vw;
	align-items: center;
	gap: 30rem;
	margin: 60rem 0 60rem -120rem;
}
.about_gallery img {
	width: 276rem;
}
.about_items {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.about_items_item {
	display: flex;
	align-items: flex-start;
	gap: 15rem;
}
.about_items_item_icon {
	width: 25rem;
}
.about_items_item_content {
	width: 250rem;
}
.about_items_item_text {
	margin-top: 4rem;
	color: var(--Text);
}
.goal {
	padding: 95rem 0;
	text-align: center;
}
.goal_title {
	width: 1000rem;
	margin: auto;
}
.goal_note {
	margin: 42rem 0;
	font-size: 22rem;
	color: var(--Text);
}
.goal_btn {
	margin: auto;
}
.steps {
	padding: 120rem 0;
	background: var(--Accent-blue);
}
.steps_title {
	text-align: center;	
}
.steps_overlay {
	display: flex;
	align-items: flex-start;
	margin-top: 60rem;
	flex-wrap: wrap;
	gap: 78rem 68rem;
	position: relative;
	z-index: 2;
}
.steps_overlay:before {
	content: "";
	position: absolute;
	top: 105rem;
    z-index: -1;
	left: 0rem;
	width: 1200rem;
	background-image: url(img/steps_line.svg);
	background-size: cover;
	height: 339rem;
	display: block;
}
.steps_item {
	width: 338rem;
}
.steps_item:nth-child(4) {
	order: 6;
}
.steps_item:nth-child(5) {
	order: 5;
}
.steps_item:nth-child(6) {
	order: 4;
}
.steps_item_number {
	color: var(--Accent);
	font-size: 60rem;
	font-weight: 400;
	text-transform: uppercase;
}
.steps_item_circle {
	margin: 15rem 0 20rem;
	width: 24rem;
}
.steps_item_title {
	font-size: 20rem;
}
.steps_item_content {
	display: flex;
	flex-direction: column;
	margin-top: 10rem;
}
.steps_item_content {
	color: var(--Text);
}
.steps_btn {
	margin: 60rem auto 0;
}
.projects {
	padding: 120rem 0;
}
.projects_head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.projects_item {
	width: 1100rem;
	height: 576rem;
	background-size: cover;
	padding: 50rem;
	display: flex!important;
	flex-direction: column;
	align-items: flex-end;
	justify-content: flex-end;
	position: relative;
}
.projects_item_image {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-size: cover;
	background-position: center;
}
.projects_item_content {
	background: var(--Accent-blue, #191A2F);
	padding: 50rem;
	width: 400rem;
	position: relative;
}
.projects_item_tags {
	display: flex;
	align-items: center;
	gap: 15rem;
}
.projects_item_tags_item {
	color: var(--Accent);
	font-size: 12rem;
	font-weight: 700;
	letter-spacing: 0.36rem;
	text-transform: uppercase;
}
.projects_item_title {
	font-size: 27rem;
	margin: 15rem 0 20rem;
}
.projects_item_descr {
	color: var(--Text);
}
.projects_item_btn {
	padding: 14rem 25rem;
	font-size: 14rem;
	font-weight: 700;
	letter-spacing: 0.42rem;
	text-transform: uppercase;
	color: var(--Accent);
	border: 1rem solid var(--Accent);
	margin-top: 30rem;
	width: max-content;
	transition: 0.4s;
}
.projects_overlay {
	margin-top: 30rem;
}
.reviews {
	padding: 70rem 0 120rem;
}
.reviews_title {
	text-align: center;
}
.reviews_item {
	padding: 30rem 35rem 25rem;
	background: var(--Accent-blue);
	width: 317rem;
	display: flex!important;
	flex-direction: column;
	margin: 0 10rem;
	height: inherit;
}
.reviews_item_icon {
	width: 42rem;
}
.reviews_item_text {
	margin-top: 23rem;
	margin-bottom: 100rem;
	font-size: 20rem;
}
.reviews_item_info {
	display: flex;
	align-items: center;
	gap: 15rem;
	border-top: 1rem solid rgba(255, 255, 255, 0.10);
	padding-top: 25rem;
	margin-top: auto;
}
.reviews_item_avatar {
	width: 41rem;
}
.reviews_item_content {
	width: 261rem;
}
.reviews_item_name {
	letter-spacing: 0.48rem;
	text-transform: uppercase;
	font-size: 16rem;
}
.reviews_item_position {
	color: var(--Text);
	margin-top: 2rem;
}
.slick-arrow:before {
	content: "";
	background-image: url(img/slick_arrow.svg);
	background-size: cover;
	width: 33rem;
    height: 13rem;
    position: absolute;
    top: calc(50% - 7rem);
}
.slick-arrow {
	width: 35rem;
	height: 35rem;
	display: block;
	border: 1rem solid var(--Accent);
	border-radius: 100%;
	position: absolute;
	top: calc(50% - 18rem);
	z-index: 9;
	background: var(--Main-blue-dark);
	cursor: pointer;
}
.slick-arrow.left {
	left: -20rem;
}
.slick-arrow.right {
	right: -20rem;
}
.slick-arrow.left:before {
	left: -20rem;
}
.slick-arrow.right:before {
	right: -20rem;
	transform: rotate(180deg);
}
.reviews_overlay .slick-track {
	display: flex!important;
}
.reviews_overlay {
	margin-top: 40rem;
}
.slick-dots {
	display: flex;
	align-items: center;
	padding: 0;
	justify-content: center;
	gap: 11rem;
	margin-top: 40rem;
}
.slick-dots button {
	display: none;
}
.slick-dots li {
	display: block;
	width: 11rem;
	height: 11rem;
	border: 2rem solid var(--Accent);
	border-radius: 100%;
	background: transparent;
	transition: 0.4s;
}
.slick-dots .slick-active {
	background: var(--Accent);
}
.contacts {
	background-size: cover;
	padding: 120rem 0;
	position: relative;
}
.contacts_overlay {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.contacts_info {
	width: 600rem;
}
.contacts_info_items {
	margin-top: 60rem;
	display: flex;
	flex-direction: column;
	gap: 28rem;
}
.contacts_info_item {
	display: flex;
	align-items: center;
	gap: 13rem;
}
.contacts_info_item_icon {
	width: 36rem;
}
.contacts_info_item_label {
	color: var(--Accent);
	font-size: 12rem;
	font-weight: 700;
	letter-spacing: 0.36rem;
	text-transform: uppercase;
}
.contacts_info_item_value {
	font-size: 20rem;
	margin-top: 3rem;
	font-weight: 400;
	text-transform: none;
}
.contacts_form {
	width: 333rem;
	background: linear-gradient(229deg, rgba(25, 26, 47, 0.80) 0%, #191A2F 100%);
	padding: 70rem 50rem;
	text-align: center;
}
.contacts_form_input {
	border: 1rem solid rgba(255, 255, 255, 0.10);
	padding: 15rem 20rem;
	width: calc(100% - 40rem);
	background: transparent;
	margin-bottom: 15rem;
	font-family: 'Evolventa';
	font-size: 14rem;
	color: var(--White);
	transition: 0.4s;
}
.contacts_form_input::-webkit-input-placeholder {
    font-family: 'Evolventa';
    font-size: 14rem;
    font-weight: 400;
   	color: var(--Text);
} 
.contacts_form_input::-moz-placeholder {
    font-family: 'Evolventa';
    font-size: 14rem;
    color: rgba(255, 255, 255, 0.5);
    color: var(--Text);
}
.contacts_form_input:focus {
	border: 1rem solid var(--White);
}
.contacts_form_text {
	margin-top: 10rem;
	color: var(--Text);
}
.contacts_form_wrapper {
	margin-top: 30rem;
}
.contacts_form_submit {
	background: var(--Accent);
	padding: 13rem 20rem;
	color: var(--Accent-blue);
	font-size: 14rem;
	font-weight: 700;
	letter-spacing: 0.42rem;
	text-transform: uppercase;
	font-family: 'Evolventa';
	border: none;
	width: 100%;
	background: linear-gradient(90deg,rgba(251, 152, 91, 1) 0%, rgba(251, 152, 91, 1) 50%, rgba(255, 137, 64, 1) 51%, rgba(255, 137, 64, 1) 100%);
	background-size: 200%;
	background-position: 0% 0%;
	transition: 0.4s;
	cursor: pointer;
}
.contacts_form_title {
	font-size: 24rem;
}
.contacts:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: linear-gradient(233deg, rgba(9, 9, 18, 0.00) 0%, #090912 90%);
}
footer {
	padding: 35rem 0;
}
.footer_overlay {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer_logo {
	width: 120rem;
}
.footer_logo img {
	width: 100%;
}
.footer_dev {
	display: flex;
	align-items: center;
	font-size: 14rem;
	gap: 7rem;
}
.footer_dev a {
	font-size: 14rem;
	text-transform: none;
	font-weight: 400;
	text-decoration: underline;
}
.footer_copyright span {
	color: var(--White);
}
.portfolio_head {
	background-size: cover;
	position: relative;
}
.portfolio_head_overlay {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 543rem;
	gap: 30rem;
	position: relative;
	z-index: 2;
}
.portfolio_head:before {
	content: "";
	border-radius: 974px;
	background: rgba(16, 16, 30, 0.60);
	filter: blur(67px);
	width: 874rem;
	height: 365rem;
	left: calc(50% - 437rem);
	top: calc(50% - 183rem);
	position: absolute;
	display: block;
}
.portfolio_head:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: block;
	background: linear-gradient(0deg, rgba(16, 16, 30, 0.60) 0%, rgba(16, 16, 30, 0.60) 100%);
}
.portfolio {
	padding: 60rem 0 100rem;
}
.portfolio_nav {
	display: flex;
	align-items: center;
	gap: 40rem;
	padding-bottom: 11rem;
	border-bottom: 1rem solid rgba(255, 255, 255, 0.10);
}
.portfolio_nav a {
	font-size: 12rem;
	font-weight: 700;
	letter-spacing: 0.36rem;
	text-transform: uppercase;
	position: relative;
	transition: 0.4s;
}
.portfolio_nav a:before {
	content: "";
	position: absolute;
	top: calc(100% + 11rem);
	width: 100%;
	height: 2rem;
	background: transparent;
}
.portfolio_nav a.active {
	color: var(--Accent);
}
.portfolio_nav a.active:before {
	background: var(--Accent);
}
.portfolio_overlay {
	margin-top: 80rem;
}
.portfolio_item {
	padding-top: 100rem;
	margin-top: 100rem;
	border-top: 1rem solid rgba(255, 255, 255, 0.10);
}
.portfolio_item:first-child {
	padding-top: 0;
	margin-top: 0;
	border: none;
}
.portfolio_item_loc {
	display: flex;
	align-items: center;
	padding: 6rem 16rem;
	background: var(--Accent-blue);
	gap: 15rem;
	width: max-content;
}
.portfolio_item_loc img {
	width: 20rem;
}
.portfolio_item_title {
	margin-top: 22rem;
	font-size: 40rem;
}
.portfolio_item_info {
	display: flex;
	align-items: center;
	gap: 120rem;
	margin: 45rem 0;
}
.portfolio_item_info_item {
	display: flex;
	align-items: flex-start;
	gap: 20rem;
}
.portfolio_item_info_item_icon {
	width: 34rem;
}
.portfolio_item_info_item_label {
	color: var(--Accent);
	font-size: 12rem;
	font-weight: 700;
	letter-spacing: 0.36rem;
	text-transform: uppercase;
}
.portfolio_item_info_item_value {
	font-size: 18rem;
	margin-top: 4rem;
}
.portfolio_item_descr {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 20rem;
}
.portfolio_item_descr p {
	color: var(--Text);
	width: 590rem;
}
.portfolio_item_gallery {
	display: flex;
	gap: 23rem;
	margin-top: 50rem;
	position: relative;
	overflow: hidden;
}
.portfolio_item_gallery_item {
	position: relative;
	cursor: pointer;
}
.portfolio_item_gallery_item:before {
	content: "";
	display: block;
	background-image: url(img/portfolio_item_gallery_icon.svg);
	background-size: cover;
	width: 44rem;
	height: 44rem;
	position: absolute;
	left: calc(50% - 22rem);
	top: calc(50% - 22rem);
	transition: 0.4s;
	opacity: 0;
	pointer-events: none;
}
.portfolio_item_gallery_image {
	width: 221rem;
	height: 220rem;
	object-fit: cover;
	object-position: center;
}
.portfolio_item_gallery_more {
	position: absolute;
	width: 221rem;
	height: 100%;
	right: 3rem;
	top: 0;
	background: rgba(251, 152, 91, 0.30);
	backdrop-filter: blur(1.5px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 15rem;
	cursor: pointer;
}
.portfolio_item_gallery_more_icon {
	width: 44rem;
}
.portfolio_item_gallery_more_text {
	font-weight: 700;
	letter-spacing: 0.42rem;
	text-transform: uppercase;
}
.services_head {
	background-size: cover;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 447rem;
}
.services_head:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg, rgba(16, 16, 30, 0.60) 0%, rgba(16, 16, 30, 0.60) 100%);
}
.services_head:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 257rem;
	background: linear-gradient(180deg, rgba(16, 16, 30, 0.00) 0%, rgba(16, 16, 30, 0.64) 90%);
}
.services_head_title {
	position: relative;
	z-index: 2;
}
.services_page {
	padding: 100rem 0 120rem;
}
.services_item_page {
	display: flex;
	justify-content: space-between;
	padding-top: 100rem;
	margin-top: 100rem;
	border-top: 1rem solid rgba(125, 126, 138, 0.30);
}
.services_item_page:first-child {
	margin-top: 0;
	padding-top: 0;
	border: none;
}
.services_item_page:nth-child(even) {
	flex-direction: row-reverse;
}
.services_item_page_image {
	width: 560rem;
}
.services_item_page_content {
	width: 560rem;
}
.services_item_page_title {
	font-size: 31rem;
	border-bottom: 1rem solid  rgba(125, 126, 138, 0.30);
	padding-bottom: 10rem;
	margin-bottom: 20rem;
}
.services_item_page_include {
	padding-bottom: 20rem;
	margin-bottom: 20rem;
	border-bottom: 1rem solid  rgba(125, 126, 138, 0.30);
}
.services_item_page_include_text {
	font-size: 18rem;
}
.services_item_page_include_note {
	color: var(--Accent);
	margin-top: 12rem;
}
.services_item_page_include_items {
	margin-top: 12rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 4rem;
}
.services_item_page_include_items p{
	width: 263rem;
	display: flex;
	align-items: center;
	gap: 10rem;
}
.services_item_page_include_items p:before {
	content: "";
	width: 4rem;
	height: 4rem;
	border-radius: 100%;
	display: block;
	position: relative;
	top: -2rem;
	background: var(--White);
}
.services_item_page_description h5 {
	font-size: 18rem;
	text-transform: none;
	font-weight: 400;
}
.services_item_page_description p {
	margin-top: 10rem;
	color: var(--Text);
}
.services_item_page_advantages {
	display: flex;
	align-items: flex-start;
	gap: 25rem 20rem;
	margin: 40rem 0;
	flex-wrap: wrap;
}
.services_item_page_advantages_item {
	display: flex;
	align-items: flex-start;
	gap: 15rem;
}
.services_item_page_advantages_item_icon {
	width: 25rem;
}
.services_item_page_advantages_item_content {
	width: 229rem;
}
.services_item_page_advantages_item_title {
	text-transform: uppercase;
	font-weight: 700;
}
.services_item_page_advantages_item_text {
	margin-top: 4rem;
	color: var(--Text);
}
.services_item_page_action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 40rem;
	border-top: 1rem solid rgba(125, 126, 138, 0.30);
}
.services_item_page_action_text {
	width: 326rem;
}
.services_item_page_variants {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40rem;
}
.services_item_page_variants_item {
	padding: 30rem 25rem;
	background: var(--Accent-blue);
	width: 220rem;
}
.services_item_page_variants_title {
	font-size: 16rem;
	margin-bottom: 11rem;
}
.services_item_page_variants_item_text {
	margin-top: 4rem;
	display: flex;
	align-items: center;
	gap: 10rem;
	color: var(--Text);
}
.services_item_page_variants_item_text span {
	color: var(--Text);
	width: 206rem;
}
.services_item_page_variants_item_text:before {
	content: "";
	width: 4rem;
	height: 4rem;
	display: block;
	border-radius: 100%;
	background: var(--White);
}
.burger {
	display: none;
}
.hidden {
	overflow: hidden;
}
.wpcf7 form .wpcf7-response-output {
	display: none;
}
.wpcf7-spinner {
	display: none;
}
.modal_overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(16, 16, 30, 0.60);
	backdrop-filter: blur(3.5px);
	z-index: 31;
}
.modal_content {
	position: fixed;
	top: calc(50% - 234rem);
	left: calc(50% - 216rem);
	width: 333rem;
	padding: 70rem 50rem;
	z-index: 32;
	background: var(--Accent-blue);
	text-align: center;
}
.modal_close {
	position: absolute;
	top: 15rem;
	right: 15rem;
	width: 24rem;
	cursor: pointer;
}
.modal_subtitle {
	margin-top: 10rem;
	color: var(--Text);
}
.modal_form {
	margin-top: 30rem;
}
.modal {
	display: none;
}
.fixed_btn {
	position: fixed;
	bottom: 30rem;
	right: 30rem;
	width: 68rem;
	height: 68rem;
	border-radius: 100%;
	background: var(--Accent);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 9;
}
.fixed_btn:before {
	content: "";
	width: calc(100% + 22rem);
	height: calc(100% + 22rem);
	top: -11rem;
	left: -11rem;
	border-radius: 100%;
	display: block;
	z-index: -1;
	background: rgba(251, 152, 91, 0.20);
	position: absolute;
	-webkit-animation: fixed_btn 7s infinite linear;
    animation: fixed_btn 7s infinite linear;

}
@-webkit-keyframes fixed_btn {
    0% {
        transform: scale(1.0);
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1.0);
    }
}
.fixed_btn_text {
	color: var(--White);
	text-align: center;
	font-size: 12rem;
	font-weight: 700;
	line-height: 130%;
	text-transform: uppercase;
    position: absolute;
    left: calc(50% - 25rem);
    top: calc(50% - 13rem);
    width: 50rem;
    opacity: 0;
    transition: 1s;
} 
.fixed_btn_icon {
	width: 36rem;
    position: absolute;
    left: calc(50% - 18rem);
    top: calc(50% - 18rem);
    opacity: 0;
    transition: 1s;
}
.fixed_btn_icon.active {
	opacity: 1;
}
.fixed_btn_text.active {
	opacity: 1;
}
.modal_cf {
	display: none;
}
.modal_cf_overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(12, 16, 40, 0.60);
	backdrop-filter: blur(3.5px);
	z-index: 41;
}
.modal_cf_content {
	position: fixed;
	top: calc(50% - 60rem);
	left: calc(50% - 283rem);
	z-index: 42;
	width: 508rem;
	padding: 20rem 50rem 20rem 20rem;
	background: var(--Accent-blue);
	display: flex;
	align-items: center;
	gap: 25rem;
}
.modal_cf_close {
	position: absolute;
	top: 15rem;
	right: 15rem;
	width: 15rem;
	cursor: pointer;
}
.modal_cf_icon {
	width: 75rem;
}
.modal_cf_wrapper {
	width: 400rem;
}
.modal_cf_text {
	margin-top: 3rem;
	color: var(--Text);
}
.animate {
  opacity: 0;
  transition: 1.5s;
}
.animate.show {
  opacity: 1;
}
/* Прибирає стрілочки у Chrome, Safari, Edge, Opera */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Прибирає стрілочки у Firefox */
input[type=number] {
  -moz-appearance: textfield;
}
.wpcf7-not-valid-tip {
	display: none;
}
.thank {
	background-size: cover;
	position: relative;
	background-position: center;
}
.thank_overlay {
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 30rem;
	text-align: center;
	position: relative;
	z-index: 2;
}
.thank:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	letter-spacing: 0;
	top: 0;
	z-index: 1;
	background: linear-gradient(0deg, rgba(16, 16, 30, 0.60) 0%, rgba(16, 16, 30, 0.60) 100%);
}
.fixed_btn_content {
	position: absolute;
	left: -300rem;
	top: -30rem;
	padding: 18rem 20rem;
	background-color: var(--White);
	border-radius: 10rem;
	width: 220rem;
}
.fixed_btn_content_title {
	color: var(--Main-blue-dark);
}
.fixed_btn_content_text {
	color: var(--Text);
	font-size: 12rem;
	text-transform: none;
	font-weight: 400;
	margin-top: 6rem;
	width: 195rem;
}
.fixed_btn_content_item {
	display: none;
}
.fixed_btn_content_item:first-child {
	display: block;
}
.fixed_btn_content:before {
	content: "";
	position: absolute;
	right: -14rem;
    bottom: 20rem;
	width: 16rem;
	height: 16rem;
	background-image: url(img/fixed_btn_content_arrow.svg);
	background-size: cover;
}
@media screen and (min-width: 768px) {
	.btn:hover {
		background-position: 100% 0;
	}
	.header_nav a:hover {
		color: var(--Accent);
	}
	.services_item:hover {
		background-color: var(--Accent-blue);
	}
	.services_item:hover .services_item_btn:before {
		width: 0rem;
	}
	.services_item:hover .services_item_btn svg {
		transform: translate(5rem, -5rem);
	}
	.contacts_form_submit:hover {
		background-position: 100% 0;
	}
	.projects_item_btn:hover {
		background: var(--Accent);
		color: var(--Accent-blue);
	}
	.contacts_info_item_value:hover {
		text-decoration: underline;
	}
	.contacts_info_item_value_time:hover {
		text-decoration: none;
	}
	.footer_dev_link:hover {
		text-decoration: none;
	}
	.portfolio_nav a:hover {
		color: var(--Accent);
	}
	.portfolio_item_gallery_item:hover:before {
		opacity: 1;
	}
}
@media screen and (max-width: 768px) {
	html {
		font-size: 0.13021vw;
	}
	.container {
		width: 708rem;
	}
	.header_nav {
		position: fixed;
		top: 0;
		left: -100vw;
		width: calc(100vw - 60rem);
		height: calc(100vh - 200rem);
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 45rem;
		padding: 100rem 30rem;
		background: #10101E;
		z-index: -1;
		transition: 0.4s;
	}
	.header_nav.show {
		left: 0rem;
	}
	.burger {
		display: flex;
		width: 25rem;
		height: 14rem;
		flex-direction: column;
		justify-content: space-between;
		position: relative;
		z-index: 9;
	}
	.fixed_btn_content {
		display: none;
	}
	.burger span {
		width: 100%;
		height: 1rem;
		border-radius: 30rem;
		background-color: var(--White);
		display: block;
		opacity: 1;
		transition: 0.4s;
	}
	.burger:before,.burger:after {
		content: "";
		width: 100%;
		height: 1rem;
		border-radius: 30rem;
		background-color: var(--White);
		display: block;
		transition: 0.4s;
		transform: rotate(0deg);
		position: relative;
		top: 0rem;
	}
	.burger.active span {
		opacity: 0;
	}
	.burger.active:after {
		transform: rotate(-45deg);
		top: -6rem;
	}
	.burger.active:before {
		transform: rotate(45deg);
		top: 7rem;
	}
	.header_logo {
		width: 148rem;
		position: relative;
		z-index: 11;
	}
	.header_btn {
		margin-left: auto;
		margin-right: 20rem;
		position: relative;
		z-index: 11;
	}
	.hero:before {
		height: 500rem;
		position: relative;
		background-image: url(img/hero_bg.png);
		display: block;
		background-size: cover;
	}
	.hero_overlay {
		height: auto;
		padding: 50rem;
		width: calc(100% - 40rem);
		margin-left: -30rem;
		flex-direction: column;
		background: #191A2F;
	}
	.hero_overlay:before {
		display: none;
	}
	.hero {
		background: none!important;
	}
	.hero:after {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		height: 500rem;
		top: 0;
		z-index: 2;
		left: 0;
		background: linear-gradient(0deg, rgba(16, 16, 30, 0.60) 0%, rgba(16, 16, 30, 0.60) 100%);
	}
	h1 {
		font-size: 54rem;
	}
	.hero_title {
		width: auto;
	}
	.hero_content {
		width: auto;
		margin-top: 30rem;
	}
	.services {
		padding: 80rem 0;
	}
	.services_overlay {
		flex-direction: column;
		gap: 30rem;
	}
	.services_item:before {
		display: none;
	}
	.services_item {
		width: 100%;
		padding: 0 0 30rem 0;
		border-bottom: 1rem solid rgba(255, 255, 255, 0.10);
	}
	.services_item_image {
		height: 330rem;
	}
	.services_item_descr {
		margin: 14rem 0 40rem;
	}
	.services_item:last-child {
		padding-bottom: 0;
		border: none;
	}
	.about {
		padding: 80rem 0;
	}
	.about_overlay {
		flex-direction: column;
	}
	.about_content_title {
		margin-top: 40rem;
	}
	.about_gallery img {
    	width: 216rem;
	}
	.about_items {
		flex-wrap: wrap;
		gap: 35rem 0;
	}
	.goal {
		padding: 80rem 0;
	}
	.goal_title {
		font-size: 30rem;
		width: auto;
	}
	.steps {
		padding: 80rem 0;
	}
	h2 {
		font-size: 48rem;
	}
	.steps_overlay {
		gap: 50rem;
		flex-direction: column;
	}
	.steps_item {
		width: auto;
		display: flex;
		align-items: flex-start;
		gap: 15rem;
	}
	.steps_item_circle {
		order: -1;
	}
	.steps_overlay:before {
		display: none;
	}
	.steps_overlay:after {
		content: "";
		position: absolute;
		left: 11rem;
		width: 2rem;
		height: 100%;
		background: #3F2B2A;
		display: block;
		top: 0;
		z-index: -1;
	}
	.projects {
	    padding: 80rem 0 65rem;
	}
	.projects_item {
		width: 708rem;
		height: auto;
		padding: 0;
	}
	.projects_item_image {
		position: relative;
		width: 100%;
		height: 466rem;
	}
	.projects_item_content {
		width: calc(100% - 80rem);
		padding: 40rem;
	}
	.projects_overlay .slick-arrow {
		top: 200rem;
	}
	.reviews {
		padding: 65rem 0 80rem;
	}
	.reviews_item {
		width: 275rem;
	}
	.reviews_item_text {
		margin-bottom: 40rem;
	}
	.slick-arrow.right {
    	right: -8rem;
	}
	.slick-arrow.left {
	    left: -8rem;
	}
	.contacts {
		padding: 80rem 0;
		background-position: right;
	}
	.contacts_overlay {
		flex-direction: column;
	}
	.contacts_info {
		width: auto;
	}
	.contacts_info_items {
		margin-top: 30rem;
		gap: 20rem;
	}
	.contacts_form {
		margin-top: 40rem;
		width: calc(100% - 80rem);
		padding: 50rem 40rem;
		text-align: left;
	}
	.footer_overlay {
		flex-direction: column;
		gap: 20rem;
	}
	.portfolio_head_overlay  {
		height: 420rem;
		gap: 15rem;
	}
	.portfolio {
	    padding: 50rem 0 80rem;
	}
	.portfolio_overlay {
	    margin-top: 50rem;
	}
	.portfolio_item_title {
	    margin-top: 15rem;
	    font-size: 30rem;
	}
	.portfolio_item_info {
	    gap: 30rem 50rem;
	    margin: 35rem 0;
	    flex-wrap: wrap;
	}
	.portfolio_item_info_item {
		width: 300rem;
	}
	.portfolio_item_descr {
		gap: 15rem;
	}
	.portfolio_item_descr p {
		width: 100%;
	}
	.portfolio_item_gallery {
		overflow: hidden;
	}
	.portfolio_item_gallery_more {
		right: 0;
	}
	.portfolio_item {
    	padding-top: 60rem;
    	margin-top: 60rem;
	}
	.services_head {
		height: 420rem;
	}
	.services_head_title {
		font-size: 48rem;
	}
	.services {
        padding: 60rem 0;
    }
    .services_item_page {
    	flex-direction: column;
    	padding-top: 40rem;
    	margin-top: 40rem;
    }
    .services_item_page_image {
    	width: 100%;
    	height: 520rem;
    	object-fit: cover;
    	object-position: center;
    }
    .services_item_page_content {
    	width: 100%;
    	margin-top: 40rem;
    }
    .services_item_page_action_text {
    	width: 476rem;
	}
	.services_item_page:nth-child(even) {
	    flex-direction: column;
	}
	.services_item_page_variants_item {
		width: 294rem;
	}
	.services_page {
		padding: 60rem 0 80rem;
	}
}
@media screen and (max-width: 480px) {
	html {
        font-size: 0.2667vw;
    }
    .container {
        width: 335rem;
    }
    .hero:before {
    	height: 292rem;
    }
    .hero:after {
    	height: 292rem;
    }
    .header_logo {
    	width: 120rem;
    }
    .header_btn {
    	display: none;
    }
    h1 {
    	font-size: 27rem;
    }
    .hero_overlay {
    	padding: 40rem 20rem;
    	width: 100%;
    	margin-left: -20rem;
    }
    .hero_content  {
    	margin-top: 17rem;
    }
    .btn {
    	padding: 12rem 20rem;
    }
    .services_title span {
    	margin-left: 0;
    }
    h2 {
    	font-size: 28rem;
    }
    .services_overlay {
    	margin-top: 25rem;
    	gap: 20rem;
    }
    .services_item_image {
        height: 250rem;
    }
    .services_item_descr {
        margin: 14rem 0 30rem;
    }
    .services_item_btn {
    	font-size: 12rem;
    }
    .services_item {
    	padding-bottom: 25rem;
    }
    .about {
        padding: 60rem 0;
    }
    .about_content {
    	width: auto;
    }
    .about_content_items {
    	margin-top: 15rem;
    	gap: 60rem;
    	align-items: flex-start;
    }
    .about_content_title {
    	margin-top: 15rem;
    	font-size: 18rem;
    }
    .about_content_items_item {
    	flex-direction: column;
    	align-items: flex-start;
    	gap: 5rem;
    }
    .about_content_items_number {
    	font-size: 45rem;
    }
    .about_gallery img {
        width: 96rem;
    } 
    .about_gallery {
    	margin: 30rem 0;
    	gap: 15rem;
    }
    .about_items_item_content {
    	width: 293rem;
	} 
	.about_items {
		gap: 25rem;
	}
	.goal {
        padding: 60rem 0;
    }
    .goal_title {
    	font-size: 20rem;
    }
    .goal_note {
    	margin: 25rem 0;
    	font-size: 14rem;
	}
	.steps {
        padding: 60rem 0;
    }
    .steps_overlay {
    	margin-top: 40rem;
    }
    .projects {
    	padding: 60rem 0 20rem;
    }
    .projects_head {
    	flex-direction: column;
    	gap: 15rem;
    }
    .projects_item {
    	width: 335rem;
    }
    .projects_overlay .slick-arrow {
    	top: 88rem;
    }
    .slick-arrow {
    	width: 26rem;
    	height: 26rem;
    }
    .slick-arrow:before {
    	width: 23rem;
    }
    .slick-arrow.left:before {
        left: -14rem;
    }
    .slick-arrow.right:before {
    	right: -14rem;
    }
	.slick-arrow.left {
        left: 0rem;
    }
    .slick-arrow.right {
    	right: 0;
    }
    .projects_item_image {
    	height: 220rem;
    }
    .projects_item_content {
    	padding: 20rem;
    	width: calc(100% - 40rem);
    	text-align: center;
    }
    .projects_item_tags {
    	justify-content: center;
    }
    .projects_item_btn {
    	margin: 30rem auto 0;
    }
    .projects_item_title {
    	font-size: 20rem;
    }
    .reviews {
        padding: 20rem 0 60rem;
    }
    .reviews_overlay {
    	margin-top: 30rem;
    }
    .reviews_item_icon {
    	width: 34rem;
    }
    .reviews_item_text {
    	font-size: 16rem;
    }
    .reviews_item_name {
    	font-size: 14rem;
    }
    .reviews_item_avatar {
    	width: 38rem;
    }
    .reviews_item_position {
    	font-size: 12rem;
    }
    .reviews_item {
    	padding: 30rem 20rem 20rem;
    	width: 295rem;
    }
    .slick-dots {
    	margin-top: 30rem;
    }
    .reviews_item_info {
    	padding-top: 20rem;
    }
    .steps_item {
    	flex-wrap: wrap;
    	gap: 5rem 15rem;
    }
    .steps_item_wrapper {
    	margin-left: auto;
    	width: 294rem;
    }
    .steps_item_number {
    	font-size: 45rem;
    }
    .steps_item_title {
    	font-size: 18rem;
	}
	.steps_overlay {
		gap: 30rem;
	}
	.steps_btn {
    	margin: 40rem auto 0;
	}
	.contacts {
        padding: 60rem 0;
        background-position: 77%;
    }
    .contacts_info_item_value {
    	font-size: 18rem;
    }
    .contacts_form {
        margin-top: 40rem;
        width: calc(100% - 40rem);
        padding: 30rem 20rem;
        text-align: center;
    }
    .contacts_form_text {
    	font-size: 12rem;
    }
    .contacts_form_wrapper {
    	margin-top: 25rem;
    }
    .portfolio_head_overlay {
    	height: 272rem;
    }
    .portfolio_head:after {
    	background: linear-gradient(0deg, rgba(16, 16, 30, 0.30) 0%, rgba(16, 16, 30, 0.30) 100%);
    }
    .portfolio_head:before {
    	display: none;
    }
    .portfolio {
    	padding: 40rem 0 60rem;
    }
    .portfolio_nav {
    	gap: 30rem;
    }
    .portfolio_overlay {
        margin-top: 40rem;
    }
    .portfolio_item_loc img {
	    width: 15rem;
	}
	.portfolio_item_loc {
		font-size: 12rem;
	}
	.portfolio_item_title {
		font-size: 24rem;
	}
	.portfolio_item_info {
		margin: 20rem 0;
		gap: 20rem;
		align-items: flex-start;
	}
	.portfolio_item_info_item {
        width: 157rem;
    } 
    .portfolio_item_info_item_icon {
    	width: 30rem;
    }
    .portfolio_item_info_item_value {
    	font-size: 16rem;
    }
    .portfolio_item_gallery {
    	margin-top: 30rem;
    	gap: 15rem;
    }
    .portfolio_item_gallery_image {
    	width: 160rem;
    	height: 160rem;
    }
    .portfolio_item_gallery_more {
    	width: 160rem;
    }
    .portfolio_item_gallery_more_text {
    	font-size: 12rem;
    	text-align: center;
    }
    .portfolio_item_gallery_more_icon {
    	width: 35rem;
	}
	.portfolio_item {
        padding-top: 50rem;
        margin-top: 50rem;
    }
    .services_head {
        height: 272rem;
    }
    .services_head_title {
        font-size: 27rem;
    }
    .services_item_page_image {
    	height: 280rem;
    }
    .services_page {
		padding: 20rem 0 60rem;
	}
	.services_item_page_title {
		font-size: 24rem;
	}
	.services_item_page_content {
		margin-top: 30rem;
	}
	.services_item_page_include_items p {
		width: 313rem;
	}
	.services_item_page_advantages {
		margin: 30rem 0;
	}
	.services_item_page_advantages_item_content {
	    width: 293rem;
	}
	.services_item_page_action {
		padding-top: 30rem;
		flex-direction: column;
		align-items: flex-start;
		gap: 20rem;
	}
	.services_item_page_action_text {
		width: auto;
	}
	.services_item_page_variants {
		flex-direction: column;
		gap: 20rem;
		margin-bottom: 30rem;
	}
	.services_item_page_variants_item {
		width: 285rem;
	}
	.services_item_page_variants_title {
		margin-bottom: 15rem;
	}
	.services_item_page_variants_item_text span {
		width: 271rem;
	}
	.services_item_page_variants_item_text:before {
		position: relative;
		top: -2rem;
	}
	.slick-dots li {
		width: 9rem;
		height: 9rem;
	}
	.contacts_form_input {
		font-size: 12rem;
		padding: 14rem 20rem;
	}
	.contacts_form_submit {
		font-size: 12rem;
	}
	.fixed_btn {
		width: 52rem;
		height: 52rem;
		bottom: 20rem;
		right: 20rem;
	}
	.fixed_btn_icon {
		width: 30rem;
		top: calc(50% - 15rem);
		left: calc(50% - 15rem);
	}
	.fixed_btn_text {
		font-size: 10rem;
		top: calc(50% - 11rem);
	}
	.modal_content {
		padding: 40rem 20rem;
		left: 20rem;
    	width: 295rem;
    	top: calc(50% - 210rem);
	}
	.modal_cf_content {
    	flex-direction: column;
    	padding: 20rem;
    	width: 295rem;
    	gap: 20rem;
    	left: 20rem;
    	top: calc(50% - 90rem);
    }
    .modal_cf_wrapper {
    	width: auto;
    	text-align: center;
    }
    .modal_content {
    	padding: 40rem 20rem;
    	width: 295rem;
    	left: 20rem;
    }
}