@import url('./font.css');

:root {
	--container: 1510px;
	--white: #fff;
	--black: #000;
	--grey: #F1F1F1;
	--grey-hover: #dddddd;
	--border-grey: #EDEBEB;
	--footer-grey: #7F7F7F;
	--text: #484848;
	--dark: #13121F;
    --dark2: #030C0A;
	--dark-20: rgba(19, 18, 31, 0.2);
	--violet: #9069FF;
    --green: #3F9580;
    --green-dark: #276c5b;
	--font: 'Fixel Text';
	
	--all-in: all 0.25s ease-in;
	--all-out: all 0.25s ease-out;
	--all-inout: all 0.25s ease-in-out;
}

body {
	color: var(--text);
}

html, body {
	padding: 0px;
	margin: 0px;
	line-height: 1.5;
	position: relative;
	font-family: var(--font);
}

*, ::before, ::after {
	box-sizing: border-box;
}

input, textarea, select, button, option {
	outline: none;
	font-family: var(--font);
}

textarea {
	resize: none;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	padding: 0px;
	margin: 0px;
	position: relative;
	z-index: 2;
	font-weight: bold;
	font-family: var(--font);
	color: var(--dark);
	/*font-feature-settings: "pnum" on,"lnum" on;*/
}

h1, .h1 {
	font-size: 60px;
}

h2, .h2 {
	font-size: 48px;
}

h3, .h3 {
	
}

h4, .h4 {
	
}

h5, .h5 {
	
}

h6, .h6 {
	
}

p {
	margin: 0px;
}

ul, ol {
	margin: 0px;
	
}

img {
	max-width: 100%;
	height: auto;
}

p {
	line-height: 1.5;
	font-weight: 400;
	
}

p a, ul a, ol a {
	
}

p a:hover, ul a:hover, ol a:hover {
	
}

blockquote {
	
}

blockquote a {
	
}

.medium {
	font-weight: 500;
}

.semi {
	font-weight: 600;
}

.bold {
	font-weight: bold;
}

.uppercase {
	text-transform: uppercase;
}

.flex-col {
	display: flex;
	flex-direction: column;
}

.flex-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.gap-4 {
	gap: 4px;
}

.gap-8 {
	gap: 8px;
}

.gap-12 {
	gap: 12px;
}

.gap-16 {
	gap: 16px;
}

.gap-18 {
	gap: 18px;
}

.gap-20 {
	gap: 20px;
}

.gap-24 {
	gap: 24px;
}

.gap-32 {
	gap: 32px;
}

.gap-24-32 {
	gap: 24px 32px;
}

.gap-40 {
	gap: 40px;
}

.gap-24-44 {
	gap: 24px 44px;
}

.grid {
	display: grid;
}

.grid-2 {
	grid-template-columns: 1fr 1fr;
}

.grid-3 {
	grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
	grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
	grid-template-columns: repeat(5, 1fr);
}

.container {
	width: 100%;
	max-width: var(--container);
	margin-left: auto;
	margin-right: auto;
	position: relative;
	box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
}

.full-container {
	width: 100%;
	max-width: 100%;
	position: relative;
	box-sizing: border-box;
	padding-left: 10px;
	padding-right: 10px;
}

.img-cover {
	overflow: hidden;
}

.img-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: top;
}

.img-contain img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	vertical-align: top;
}

a, button, input[type="submit"], input[type="button"] {
	transition: var(--all-out);
	outline: none;
	cursor: pointer;
}

a:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
	transition: var(--all-in);
}

.clear {
	width: 0px;
	height: 0px;
	float: none !important;
	clear: both !important;
}

.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

.but a, .but button, .but input {

}

.but a:hover, .but button:hover, .but input:hover {

}

/*--------*/

/**/

header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background: var(--white);
	z-index: 10;
}

header .box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

header .box .logo {
	width: 100%;
	max-width: 345px;
}

header .box .logo img {
	width: 100%;
	max-width: 194px;
	height: 40px;
	vertical-align: top;
}

header .box .contacts {
	display: flex;
	align-items: center;
	gap: 20px;
}

.social {
	display: flex;
	gap: 4px;
	align-items: center;
}

.social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--grey);
	text-decoration: none;
}

.social a:hover {
	background: var(--grey-hover);
}

.social a img {
	vertical-align: top;
}

.call-but a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	height: 48px;
	padding: 3px 3px 3px 18px;
	border-radius: 24px;
	text-decoration: none;
	background: var(--grey);
	
	color: var(--text);
	font-size: 14px;
	line-height: normal;
	white-space: nowrap;
	min-width: 225px;
	position: relative;
	overflow: hidden;
}

.call-but a:hover {
	color: var(--white);
}

.call-but a::after {
	position: absolute;
	top: 3px;
	right: 3px;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--dark2);
	scale: 1;
	transition: var(--all-inout);
	content: "";
	z-index: 1;
}

.call-but a span {
	position: relative;
	z-index: 2;
}

.call-but a:hover::after {
	scale: 10;
}

.call-but a span.icon {
	width: 100%;
	height: 42px;
	max-width: 42px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	flex-shrink: 0;
	background: transparent;
	transition: var(--all-inout);
}

.call-but a:hover span.icon {
	background: var(--white);
}

.call-but a span.icon img {
	transition: var(--all-inout);
}

.call-but a:hover span.icon img {
	filter: brightness(0);
}

header .menu-box {
	padding: 0 148px;
	background: url('../images/green-header-menu-bg.svg') bottom center / auto 130px no-repeat;
	height: 108px;
}

header .menu-box > div {
	height: 100%;
}

header .menu-box #head-menu {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	list-style: none;
	padding: 0;
	height: 100%;
}

header .menu-box #head-menu a {
	width: 140px;
	height: 42px;
	border: 1px solid var(--border-grey);
	background: transparent;
	display: flex;
	align-items: center;
	justify-content: center;

	color: var(--white);
	font-size: 14px;
	line-height: normal;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 24px;
}

header .menu-box #head-menu a:hover, header .menu-box #head-menu li.current-menu-item a {
	border-color: var(--white);
	background: var(--white);
	color: var(--black);
}

/*--------*/

/**/

footer {
	padding-bottom: 10px;
	overflow: hidden;
}

footer .full-container {
	padding-top: 164px;
}

footer .full-container .name {
	text-align: center;
	color: var(--dark);
	text-align: center;
	font-size: 340px;
	line-height: 0.85;
	opacity: 0.05;
	position: absolute;
	left: 50%;
	top: 0;
	z-index: 1;
	transform: translateX(-50%);
	width: 1920px;
}

footer .box {
	border-radius: 60px;
	background: url('../images/f6ef4541619dbe524c37dce830ad3d63481bad4e.webp') center center / cover no-repeat;
	overflow: hidden;
	position: relative;
	z-index: 2;
	padding: 140px 0 40px;
	display: flex;
	flex-direction: column;
	gap: 140px;
}

footer .box::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: var(--dark2);
	backdrop-filter: blur(4px);
	overflow: hidden;
    opacity: 0.95;
}

footer .box::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 241px;
    transform: translateX(-50%);
	width: 90%;
    height: 507px;
	border-radius: 1677px;
    background: rgba(91, 214, 184, 0.90);
    filter: blur(200px);
    opacity: 0.9;
}

footer .box > * {
	position: relative;
	z-index: 2;
}

footer .box .copyright {
	color: var(--white);
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	line-height: 18px;
}

footer .box .contacts {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 100px
}

footer .box .contacts .item {
	display: flex;
	flex-direction: column;
	gap: 18px;
	align-items: center;
}

footer .box .contacts .item .title {
	color: var(--grey);
	text-align: center;
	font-size: 40px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: -1.6px;
}

footer .box .contacts .item .text {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

footer .box .contacts .item .text a {
	text-decoration: none;
	color: var(--grey);
	text-align: center;
	font-size: 24px;
	font-weight: 500;
	line-height: normal;
	letter-spacing: -0.96px;
}

footer .box .contacts .item .text a {
	/*text-decoration: underline;*/
	color: var(--white);
}

footer .box .contacts .item .social {
	gap: 12px;
}

/*--------*/

/**/

section.text-block {
	padding-bottom: 180px;
	padding-top: 90px;
}

section.text-block .title {
	color: var(--dark);
	text-align: center;
	font-size: 60px;
	line-height: 150%;
	letter-spacing: -2.4px;
	text-transform: uppercase;
	font-weight: 400;
}

section.text-block p {
	color: var(--footer-grey);
	font-size: 36px;
	font-weight: 300;
	line-height: 150%;
	letter-spacing: -1.44px;
	text-align: center;
}

/*--------*/

/**/

section.contact-us {
	padding: 90px 0;
}

section.contact-us .box {
	display: grid;
  	grid-template-columns: 973px auto;
  	gap: 40px;
}

section.contact-us .box .info {
	padding-top: 0;
	width: 100%;
	max-width: 100%;
	flex-shrink: 0;
}

section.contact-us .box .info .inner {
	border-radius: 60px;
	background: url('../images/310d320a8deaccfa55d4bed9c9bb4ffe246d0fdb.webp') center center / cover no-repeat;
	position: relative;
	padding: 80px 60px 60px;
    overflow: hidden;
}

section.contact-us .box .info .inner::before {
	background: rgba(3, 12, 10, 0.9);
	backdrop-filter: blur(10px);
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	border-radius: 60px;
}

section.contact-us .box .info .inner::after {
    width: 599px;
    height: 599px;
	border-radius: 599px;
    background: #5BD6B8;
    filter: blur(165px);
    content: "";
    position: absolute;
    top: 44px;
    right: -44px;
    opacity: 0.7;
}

section.contact-us .box .info .inner .title {
	position: relative;
	z-index: 2;
	color: var(--white);
	font-size: 64px;
	font-weight: 100;
	line-height: 100%;
	letter-spacing: -2.56px;
	max-width: 508px;
}

section.contact-us .box .info .inner .title strong, section.contact-us .box .info .inner .title b {
	font-weight: 500;
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15);
}

section.contact-us .box .info .inner .award {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-end;
	gap: 14px;
	max-width: 426px;
}

section.contact-us .box .info .inner .award img {
	filter: drop-shadow(3.13px 9.389px 15.648px rgba(0, 0, 0, 0.35));
	max-width: 140px;
}

section.contact-us .box .info .inner .award p {
	color: var(--grey);
	font-size: 20px;
	font-weight: 300;
	line-height: 120%;
	letter-spacing: -0.8px;
}

section.contact-us .box .info .inner .image {
	position: absolute;
	z-index: 2;
	right: 0;
	bottom: 0;
	height: 100%;
	width: 415px;
}

section.contact-us .box .info .inner .image img {
	filter: drop-shadow(297px 307px 119px rgba(28, 8, 53, 0.01)) drop-shadow(190px 196px 109px rgba(28, 8, 53, 0.02)) drop-shadow(47px 49px 68px rgba(28, 8, 53, 0.21)) drop-shadow(12px 12px 38px rgba(28, 8, 53, 0.26));
	border-bottom-right-radius: 60px;
}

section.contact-us .box .contacts-info {
	margin-top: 0;
	width: 100%;
	height: 100%;
	border-radius: 60px;
	background: var(--grey);
	padding: 60px 38px;
	display: flex;
	flex-direction: column;
	gap: 38px;
}

section.contact-us .box .contacts-info p {
	color: var(--dark);
	font-size: 20px;
	font-weight: 300;
	line-height: 150%;
	letter-spacing: -0.2px;
}

section.contact-us .box .contacts-info .phone {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

section.contact-us .box .contacts-info .phone p {
	color: var(--footer-grey);
	font-size: 20px;
	font-weight: 300;
	line-height: normal;
	letter-spacing: -0.2px;
}

section.contact-us .box .contacts-info .phone a {
	color: var(--dark);
	font-size: 24px;
	font-weight: 500;
	line-height: normal;
	letter-spacing: -0.96px;
	text-decoration: none;
}

section.contact-us .box .contacts-info .phone a:hover {
	color: var(--violet);
}

section.contact-us .box .contacts-info .dop {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

section.contact-us .box .contacts-info .dop .call-but a {
	box-shadow: 0px 95px 27px 0px rgba(46, 46, 46, 0.00), 0px 61px 24px 0px rgba(46, 46, 46, 0.01), 0px 4px 8px 0px rgba(46, 46, 46, 0.09);
	background: var(--white);
	height: 54px;
	font-size: 16px;
	min-width: 250px;
}

section.contact-us .box .contacts-info .dop .call-but a::after {
	width: 48px;
  	height: 48px;
}

section.contact-us .box .contacts-info .dop .call-but a .icon {
	max-width: 48px;
	height: 48px;
	flex-shrink: 0;
}

section.contact-us .box .contacts-info .dop .social a {
	width: 54px;
	height: 54px;
	box-shadow: 0px 95px 27px 0px rgba(46, 46, 46, 0.00), 0px 61px 24px 0px rgba(46, 46, 46, 0.01), 0px 4px 8px 0px rgba(46, 46, 46, 0.09);
	background: var(--white);
}


/*--------*/

/**/

.why-we {
	padding: 90px 0;
}

.why-we h2 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

.why-we h2 + .box {
	margin-top: 60px;
	display: grid;
	grid-template-columns: 467px auto;
	gap: 40px;
}

.why-we .box .image {
	position: relative;
}

.why-we .box .image .inner {
	border-radius: 60px;
	height: 100%;
	position: absolute;
	width: 100%;
}

.why-we .box .list {
	counter-reset: ll;
}

.why-we .box .list .item {
	counter-increment: ll;
	position: relative;
	padding: 40px 0 40px 162px;
	border-bottom: 1px solid var(--footer-grey);
}

.why-we .box .list .item:first-child {
	padding-top: 0;
}

.why-we .box .list .item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.why-we .box .list .item::before {
	content: "(0"counter(ll)")";
	color: var(--footer-grey);
	font-size: 20px;
	font-weight: 400;
	line-height: 140%;
	position: absolute;
	left: 0;
	top: 52px;
}

.why-we .box .list .item:first-child::before {
	top: 12px;
}

.why-we .box .list .item button {
	color: var(--dark);
	font-size: 40px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -1.6px;
	text-transform: uppercase;
	background: none;
	border: 0;
	padding: 0;
	position: relative;
	width: 100%;
	text-align: left;
}

.why-we .box .list .item button::after {
	width: 60px;
	height: 32px;
	background-image: url('../images/acc-arrow.svg');
	background-position: right center;
	background-repeat: no-repeat;
	content: "";
	display: flex;
	position: absolute;
	right: 0px;
	top: 11px;
	padding-right: 60px;
}

.why-we .box .list .item button.active::after {
	background-image: url('../images/acc-close.svg');
}

.why-we .box .list .panel {
	max-height: 0px;
	transition: var(--all-inout);
	overflow: hidden;
}

.why-we .box .list .panel .inner {
	padding-top: 16px;
	padding-right: 207px;
}

.why-we .box .list .panel .inner > * {
	color: var(--footer-grey);
	font-size: 20px;
	font-weight: 300;
	line-height: 137%;
	letter-spacing: -0.2px;
}

/*--------*/

/**/

section.packets {
	padding: 90px 0;
}

section.packets .title {
	display: flex;
	align-items: flex-start;
	gap: 100px;
}

section.packets .title h2 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.packets .title p {
	color: var(--dark);
	font-size: 24px;
	font-weight: 400;
	line-height: 150%;
	letter-spacing: -0.96px;
	max-width: 720px;
	width: 100%;
}

section.packets .title + .box {
	margin-top: 60px;
}

section.packets .box {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

section.packets .box .item {
	border-radius: 60px;
	background: var(--grey);
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 0 32px 71px 32px;
}

section.packets .box .item .name {
	width: 100%;
	height: 88px;
	background: url('../images/green-packet-name.svg') center center no-repeat;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	color: var(--white);
	font-size: 40px;
	font-weight: 500;
	line-height: 120%;
	letter-spacing: -1.6px;

	filter: drop-shadow(0px 2.708px 5.415px rgba(46, 46, 46, 0.09)) drop-shadow(0px 10.154px 10.154px rgba(46, 46, 46, 0.08)) drop-shadow(0px 23.015px 13.538px rgba(46, 46, 46, 0.05)) drop-shadow(0px 41.292px 16.246px rgba(46, 46, 46, 0.01)) drop-shadow(0px 64.308px 18.277px rgba(46, 46, 46, 0.00));
}

section.packets .box .item .price {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 30px;
}

section.packets .box .item .price .cost {
	color: var(--dark);
	text-align: center;
	font-size: 48px;
	font-weight: 600;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.packets .box .item .price p {
	color: var(--footer-grey);
	text-align: center;
	font-size: 20px;
	font-weight: 300;
	line-height: 100%;
	letter-spacing: -0.2px;
}

section.packets .box .item .list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

section.packets .box .item .list .row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 12px 24px;
	gap: 24px;
	border-radius: 12px;
	background: var(--white);
}

section.packets .box .item .list .row > *:last-child {
	text-align: right;
}

section.packets .box .item .list .row span {
	color: var(--dark);
	font-size: 18px;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.72px;
}

section.packets .box .item .buts {
	margin-top: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
    margin-top: auto;
}

section.packets .box .item .buts a {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 56px;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	line-height: 8px;
	letter-spacing: -0.72px;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 28px;
}

section.packets .box .item .buts a:first-child {
	color: var(--dark);
	border: 2px solid var(--white);
	background: transparent;
}

section.packets .box .item .buts a:first-child:hover {
	background: var(--white);
}

section.packets .box .item .buts a:last-child {
	color: var(--white);
	background-color: var(--green);
}

section.packets .box .item .buts a:last-child:hover {
	background-color: var(--green-dark);
}

/*--------*/

/**/

section.gallery {
	padding: 90px 0;
}

section.gallery .title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

section.gallery .title h2 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.gallery .title .controls .nums {
	background: linear-gradient(89deg, #030C0A -47.59%, #5BD6B8 119.6%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
}

section.gallery .title .controls .dots ul {
	list-style: none;
	padding: 0;
	display: flex !important;
	align-items: center;
}

section.gallery .title .controls .dots ul button {
	font-size: 0;
	height: 1px;
	width: 40px;
	background: var(--dark-20);
	position: relative;
	border: 0;
	padding: 0;
	cursor: pointer;
	transition: var(--all-inout);
}

section.gallery .title .controls .dots ul .slick-active button {
	width: 100px;
}

section.gallery .title .controls .dots ul button::before {
	content: "";
	width: 100%;
	height: 3px;
	position: absolute;
	left: 0;
	top: -1px;
	opacity: 0;
	transition: var(--all-inout);
	background: linear-gradient(92deg, #030C0A -4.89%, #5BD6B8 113.83%);
	border-radius: 3px;
}

section.gallery .title .controls .dots ul .slick-active button::before {
	opacity: 1;
}

section.gallery .title + .box {
	margin-top: 60px;
}

section.gallery .box .item {
	margin: 0 20px;
	height: 600px;
	padding: 50px 0;
	transition: var(--all-inout);
}

section.gallery .box .item.slick-current.slick-center {
	padding: 0;
}

section.gallery .box .item a {
	border-radius: 60px;
	display: flex;
	width: 100%;
	height: 100%;
    position: relative;
}

section.gallery .box .item a > span {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 18px;
    background: var(--dark);
    padding: 0 24px;
    min-width: 140px;
    color: var(--white);
    font-size: 14px;
    text-transform: lowercase;
    position: absolute;
    top: 45px;
    left: 50%;
    transform: translateX(-50%);
    transition: var(--all-inout);
    opacity: 0;
    height: 36px;
}

section.gallery .box .item.slick-current a > span {
    opacity: 1;
}

section.gallery .box {
	position: relative;
}

section.gallery .box .slick-arrow {
	width: 80px;
	height: 80px;
	border-radius: 16px;
	background: var(--white);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	font-size: 0;
	z-index: 2;
	border: 0;
	filter: drop-shadow(0px 4px 8px rgba(46, 46, 46, 0.09)) drop-shadow(0px 15px 15px rgba(46, 46, 46, 0.08)) drop-shadow(0px 34px 20px rgba(46, 46, 46, 0.05)) drop-shadow(0px 61px 24px rgba(46, 46, 46, 0.01)) drop-shadow(0px 95px 27px rgba(46, 46, 46, 0.00));
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
}

section.gallery .box .slick-arrow::before {
	content: "";
	width: 100%;
	height: 100%;
	background: url('../images/green-slider-arrow.svg') center center no-repeat;
	filter: brightness(0);
	transition: var(--all-inout);
	display: flex;
}

section.gallery .box .slick-arrow.slick-prev {
	left: -15px;
}

section.gallery .box .slick-arrow.slick-next {
	right: -15px;
}

section.gallery .box .slick-arrow.slick-prev::before {
	rotate: 180deg;
}

section.gallery .box .slick-arrow:hover::before {
	filter: brightness(1);
}



/*--------*/

/**/

section.additional-info {
	padding: 90px 0;
}

section.additional-info .container {
	display: flex;
	gap: 50px;
}

section.additional-info .container .icons {
	background: linear-gradient(180deg, #030C0A -47.22%, #5BD6B8 108.33%);
	filter: drop-shadow(0px 4px 8px rgba(46, 46, 46, 0.09)) drop-shadow(0px 15px 15px rgba(46, 46, 46, 0.08)) drop-shadow(0px 34px 20px rgba(46, 46, 46, 0.05)) drop-shadow(0px 61px 24px rgba(46, 46, 46, 0.01)) drop-shadow(0px 95px 27px rgba(46, 46, 46, 0.00));
	border-radius: 40px;
	width: 100%;
	max-width: 711px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 0 34px 24px 34px;
	min-height: 216px;
	align-items: center;
	gap: 20px;
}

section.additional-info .container .icons .subtitle {
	color: #A7A7A7;
	text-align: center;
	font-size: 12px;
	font-weight: 300;
	line-height: 92%;
	letter-spacing: 4.8px;
	width: 100%;
	height: 32px;
	background: url('../images/rectangle.svg') center center no-repeat;
	padding-top: 7px;
}

section.additional-info .container .icons .list {
	margin-top: 12px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

section.additional-info .container .icons .list .item {
	width: 90px;
	height: 90px;
	border-radius: 14px;
	border: 1px solid var(--white);
	background: rgba(19, 18, 31, 0.20);
	padding: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
}

section.additional-info .container .icons .text {
	color: var(--grey);
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	line-height: 120%;
}

section.additional-info .container > .text p, section.additional-info .container > .text ol, section.additional-info .container > .text ul {
	color: var(--dark);
	font-size: 24px;
	font-weight: 400;
	line-height: 150%;
	letter-spacing: -0.96px;
}

/*--------*/

/**/

section.we-offer {
	padding: 90px 0;
}

section.we-offer h2 {
	color: var(--dark);
	text-align: center;
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.we-offer h2 + .box {
	margin-top: 60px;
}

section.we-offer .box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px;
}

section.we-offer .box a.item {
	display: flex;
	width: 100%;
	border-radius: 40px;
	background: var(--grey);
	display: flex;
	flex-direction: column;
	padding: 9px 9px 36px 9px;
	gap: 28px;
	text-decoration: none;
}

section.we-offer .box a.item .img {
	border-radius: 34px;
}

section.we-offer .box a.item .img img {
	scale: 1;
	transition: var(--all-inout);
}

section.we-offer .box a.item:hover .img img {
	scale: 1.05;
}

section.we-offer .box a.item .info {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-right: 75px;
	padding-left: 12px;
	position: relative;
}

section.we-offer .box a.item .info::after {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	content: "";
	position: absolute;
	top: 0;
	right: 7px;
	background: url('../images/arrow2.svg') center center / 17px auto no-repeat, var(--dark);
	transition: var(--all-inout);
}

section.we-offer .box a.item:hover .info::after {
	rotate: 90deg;
}

section.we-offer .box a.item .info .title {
	color: var(--dark);
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.96px;
	text-transform: uppercase;
}

section.we-offer .box a.item .info .text {
	color: var(--footer-grey);
	font-size: 14px;
	font-weight: 300;
	line-height: normal;
	text-transform: lowercase;
}

section.we-offer .box a.item:first-child {
	grid-column-start: 1;
	grid-column-end: 3;
	grid-row-start: 1;
	grid-row-end: 3;
	border-radius: 60px;
	padding: 18px 18px 72px 18px;
	gap: 70px;
}

section.we-offer .box a.item:first-child .img {
	border-radius: 50px;
}

section.we-offer .box a.item:first-child .info {
	gap: 12px;
	padding-right: 75px;
	padding-left: 13px;
}

section.we-offer .box a.item:first-child .info .title {
	font-size: 40px;
}

section.we-offer .box a.item:first-child .info .text {
	font-size: 24px;
}

section.we-offer .box a.item:first-child .info::after {
	width: 84px;
	height: 84px;
	border-radius: 50%;
	right: 24px;
	background: url('../images/arrow2.svg') center center no-repeat, var(--dark);
}

/*--------*/

/**/

section.first-block {
	padding-top: 140px;
}

section.first-block .name {
	color: var(--dark);
	text-align: center;
	text-shadow: 367px 0px 103px rgba(0, 0, 0, 0.00), 235px 0px 94px rgba(0, 0, 0, 0.00), 132px 0px 79px rgba(0, 0, 0, 0.01), 59px 0px 59px rgba(0, 0, 0, 0.02), 15px 0px 32px rgba(0, 0, 0, 0.03);
	font-size: 310px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -14.8px;
}

section.first-block .box {
	position: relative;
	padding: 0px 50px 0px 50px;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	align-items: flex-end;
	margin-top: -110px;
  	z-index: 2;
}

section.first-block .box > * {
	position: relative;
	z-index: 2;
}

section.first-block .box::after {
	width: 100%;
	height: 480px;
	border-radius: 60px;
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(268deg, rgba(144, 223, 204, 0.00) 2.01%, rgba(60, 135, 123, 0.60) 63.18%, #044740 102.84%), url('../images/310d320a8deaccfa55d4bed9c9bb4ffe246d0fdb.webp') center center / cover no-repeat;
	backdrop-filter: blur(100px);
	border-radius: 60px;
	/*rgba(144, 105, 255, 0.00)*/
}

section.first-block .box .image {
	max-height: 550px;
	margin-bottom: 50px;
}

section.first-block .box .image img {
	max-height: 550px;
	vertical-align: top;
}

section.first-block .box .info {
	display: flex;
	flex-direction: column;
	padding-bottom: 90px;
	gap: 55px;
}

section.first-block .box .info .addr {
	padding-left: 18px;
	color: var(--white);
	font-size: 12px;
	font-style: normal;
	font-weight: 300;
	line-height: 18px;
	letter-spacing: 2.4px;
	position: relative;
}

section.first-block .box .info .addr a {
	color: var(--white);
	text-decoration: none;
}

section.first-block .box .info .addr a:hover {
	text-decoration: underline;
}

section.first-block .box .info .addr::before {
	width: 12px;
	height: 14px;
	content: "";
	background: url('../images/marker.svg') center center no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

section.first-block .box .info .title {
	max-width: 476px;
}

section.first-block .box .info .title h1 {
	color: var(--white);
	font-size: 64px;
	font-weight: 100;
	line-height: 100%;
	letter-spacing: -2.56px;
}

section.first-block .box .info .title h1 strong {
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15);
	font-weight: 500;
}

section.first-block .box .slider {
	width: 406px;
	margin-left: 70px;
	height: 295px;
	border-radius: 56px;
	border: 1.5px solid var(--white);
	background: rgba(3, 12, 10, 0.30);
	backdrop-filter: blur(10px);
	margin-bottom: 90px;
	padding-bottom: 50px;
}

section.first-block .box .slider .item {
	display: flex !important;
	flex-direction: column;
	padding: 24px 32px 0 32px;
	gap: 16px;
}

section.first-block .box .slider .item .subtitle {
	color: var(--grey);
	text-align: center;
	font-size: 10px;
	font-weight: 300;
	line-height: 92%;
	letter-spacing: 4px;
}

section.first-block .box .slider .item .num {
	color: var(--white);
	text-align: center;
	font-size: 70px;
	font-style: normal;
	font-weight: 600;
	line-height: 80px;
}

section.first-block .box .slider .item .text {
	color: var(--white);
	text-align: center;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px;
}

section.first-block .box .slider .slick-dots {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	list-style: none;
	padding: 0;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	bottom: 20px;
}

section.first-block .box .slider .slick-dots button {
	padding: 0;
	background: #CCD0D1;
	transition: var(--all-inout);
	width: 10px;
	height: 10px;
	border-radius: 5px;
	border: 0;
	font-size: 0;
}

section.first-block .box .slider .slick-dots button:hover, section.first-block .box .slider .slick-dots .slick-active button {
	background: var(--white);
}

section.first-block .box .slider .slick-dots .slick-active button {
	width: 35px;
}

section.first-block .after {
	width: 100%;
	height: 80px;
	background: url('../images/rectangle53.svg') center bottom no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: -80px;
	position: relative;
	z-index: 3;
}

section.first-block .after div {
	color: #A7A7A7;
	text-align: center;
	font-size: 14px;
	font-style: normal;
	font-weight: 300;
	line-height: 18px;
	letter-spacing: 5.6px;
	display: flex;
	gap: 12px;
	align-items: center;
}

section.first-block .after div:not(:last-child)::after {
	content: "";
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #A7A7A7;
}

/*--------*/

/**/

section.breadcrumbs-block {
	padding-top: 198px;
}

section.breadcrumbs-block .breadcrumbs {
	display: inline-flex;
	gap: 16px;
	align-items: baseline;
}

section.breadcrumbs-block .breadcrumbs > span a {
	color: var(--footer-grey);
	font-size: 20px;
	font-weight: 300;
	line-height: 137%;
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 16px;
}

section.breadcrumbs-block .breadcrumbs > span a:hover {
	color: var(--violet);
}

section.breadcrumbs-block .breadcrumbs > span a::after {
	height: 14px;
	width: 6px;
	content: "";
	background: url('../images/green-slider-arrow.svg') center center / 6px 14px no-repeat;
	display: flex;
}

section.breadcrumbs-block .breadcrumbs > span > span {
	color: var(--dark);
	font-size: 20px;
	font-weight: 300;
	line-height: 137%;
}

/*--------*/

/**/

section.about-us-block {
	padding: 90px 0;
}

section.about-us-block h2 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.about-us-block h2 + .box {
	margin-top: 60px;
}

section.about-us-block .box {
	gap: 60px;
}

section.about-us-block .box .item:nth-child(2n) .text {
	order: 2;
}

section.about-us-block .box .item:nth-child(2n) .image {
	order: 1;
}

section.about-us-block .box .text {
	padding: 60px;
	border-radius: 60px;
	background: var(--grey);
}

section.about-us-block .box .text p, section.about-us-block .box .text ul, section.about-us-block .box .text ol {
	color: var(--dark);
	font-size: 24px;
	font-weight: 400;
	line-height: 150%;
}

section.about-us-block .box .text p a, section.about-us-block .box .text ul a, section.about-us-block .box .text ol a {
    color: var(--green);
    background: linear-gradient(72deg, #030C0A 15.09%, #5BD6B8 42.34%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

section.about-us-block .box .text strong {
	font-weight: 600;
}

section.about-us-block .box .image {
	position: relative;
}

section.about-us-block .box .image .inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 60px;
}

/*--------*/

/**/

section.partnership-block {
	padding: 90px 0;
}

section.partnership-block h2 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.partnership-block h2 + .box {
	margin-top: 60px;
}

section.partnership-block .box {
	gap: 120px;
}

section.partnership-block .box .item:nth-child(2n) .map {
	order: 2;
}

section.partnership-block .box .item:nth-child(2n) .text {
	order: 1;
}

section.partnership-block .box .item .form-box {
	background: #09221D;
	border-radius: 60px;
	position: relative;
	padding: 0 60px 60px;
    gap: 60px;
    overflow: hidden;
}

section.partnership-block .box .item .form-box::before {
    content: "";
    width: 720px;
    height: 585px;
    border-radius: 720px;
    background: #5BD6B8;
    filter: blur(225px);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 320px;
    opacity: 0.8;
}

section.partnership-block .box .item .form-box .title {
	height: 38px;
	width: 100%;
	background: url('../images/rectangle54.svg') top center no-repeat;
	color: #A7A7A7;
	text-align: center;
	font-size: 12px;
	font-weight: 300;
	line-height: 92%;
	letter-spacing: 4.8px;
	display: flex;
	justify-content: center;
	align-items: center;
}

section.partnership-block .box .item .form-box form {
	gap: 12px;
	display: flex;
	flex-direction: column;
}

.form-group {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.form-group input[type="text"], .form-group input[type="tel"], .form-group input[type="email"], .form-group textarea {
	width: 100%;
	border-radius: 14px;
	border: 2px solid var(--white);
	background: rgba(241, 241, 241, 0.70);
	padding: 0 24px;
	font-size: 16px;
	height: 60px;
	transition: var(--all-inout);
}

.form-group input[type="text"].wpcf7-not-valid, .form-group input[type="tel"].wpcf7-not-valid, .form-group input[type="email"].wpcf7-not-valid, .form-group textarea.wpcf7-not-valid {
	border-color: red;
}

.form-group div {
	color: var(--grey);
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	padding-left: 14px;
}

.form-group textarea {
	height: 150px;
	padding: 24px;
}

.form-group.but {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 38px;
}

.form-group.but input[type="submit"] {
	height: 56px;
	padding: 0 56px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 28px;
	color: var(--dark);
	text-align: center;
	font-size: 18px;
	line-height: normal;
	text-transform: uppercase;
	background: var(--white);
	width: fit-content;
	border: 0;
}

.form-group.but input[type="submit"]:hover {
	background: var(--grey);
}

.wpcf7-spinner {
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
}

section.partnership-block .box .item .text h3 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.partnership-block .box .item .text h3:not(:first-child) {
	margin-top: 68px;
}

section.partnership-block .box .item .text p, section.partnership-block .box .item .text ul, section.partnership-block .box .item .text ol {
	color: var(--dark);
	font-size: 24px;
	font-weight: 400;
	line-height: 150%;
}

section.partnership-block .box .item .map {
	position: relative;
}

section.partnership-block .box .item .map .inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 60px;
	overflow: hidden;
}

section.partnership-block .box .item .map .inner iframe {
	width: 100% !important;
	height: 100% !important;
	vertical-align: top;
}

section.partnership-block .box .item.contacts .text {
	gap: 50px;
}

section.partnership-block .box .item.contacts .info-item .title {
	color: var(--dark);
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
	text-transform: uppercase;
}

section.partnership-block .box .item.contacts .info-item .contacts-items a {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--footer-grey);
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
	text-decoration: none;
}

section.partnership-block .box .item.contacts .info-item .contacts-items a:hover {
	color: var(--dark);
}

section.partnership-block .box .item.contacts .info-item .contacts-items a::before {
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background-color: var(--grey);
	display: flex;
	content: "";
	flex-shrink: 0;
	background-position: center center;
	background-repeat: no-repeat;
}

section.partnership-block .box .item.contacts .info-item .contacts-items a.phone::before {
	background-image: url('../images/contacts-phone.svg');
}

section.partnership-block .box .item.contacts .info-item .contacts-items a.email::before {
	background-image: url('../images/contacts-email.svg');
}

/*--------*/

/**/

section.packets-block {
	padding: 90px 0;
}

section.packets-block h2 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.packets-block h2 + .box {
	margin-top: 60px;
}

section.packets-block .box {
	gap: 220px;
}

section.packets-block .box .item {
	display: flex;
	gap: 40px;
	justify-content: space-between;
}

section.packets-block .box .item .name {
	color: var(--dark);
	font-size: 64px;
	font-weight: 500;
	line-height: 120%;
	letter-spacing: -2.56px;
	padding-top: 20px;
}

section.packets-block .box .item .info {
	width: 100%;
	max-width: 1100px;
	flex-shrink: 0;
}

section.packets-block .box .item .info .inner {
	padding: 80px 70px;
	border-radius: 60px;
	background: var(--grey);
	display: flex;
	flex-direction: column;
	gap: 40px;
}

section.packets-block .box .item .info .inner .title {
	padding-bottom: 40px;
	border-bottom: 1px solid #7F7F7F;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

section.packets-block .box .item .info .inner .title h3 {
	color: var(--dark);
	font-size: 48px;
	font-weight: 600;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.packets-block .box .item .info .inner .title .cost {
	color: var(--dark);
	font-size: 48px;
	font-weight: 600;
	line-height: 120%;
	letter-spacing: -1.92px;
}

section.packets-block .box .item .info .inner .packet-info {
	padding-bottom: 40px;
	border-bottom: 1px solid #7F7F7F;
	columns: 2;
	gap: 12px 84px;
}

section.packets-block .box .item .info .inner .packet-info .row {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	padding: 13px 24px;
	border-radius: 12px;
	background: var(--white);
	margin-bottom: 12px;
	color: var(--dark);
	font-size: 18px;
	line-height: 100%;
	letter-spacing: -0.72px;
}

section.packets-block .box .item .info .inner .additional {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

section.packets-block .box .item .info .inner .additional .row {
	padding-bottom: 40px;
	border-bottom: 1px solid #7F7F7F;
	color: var(--dark);
	font-size: 32px;
	font-weight: 600;
	line-height: 120%;
	letter-spacing: -1.28px;
	display: flex;
	justify-content: space-between;
}

section.packets-block .box .item .info .inner .additional .row:last-child {
	padding-bottom: 0px;
	border-bottom: 0px solid #7F7F7F;
}

section.packets-block .box .item .info .contacts-info {
	border-radius: 30px;
	background: linear-gradient(93deg, #030C0A -26.72%, #5BD6B8 138.78%);
	box-shadow: 0px 95px 27px 0px rgba(46, 46, 46, 0.00), 0px 61px 24px 0px rgba(46, 46, 46, 0.01), 0px 34px 20px 0px rgba(46, 46, 46, 0.05), 0px 15px 15px 0px rgba(46, 46, 46, 0.08), 0px 4px 8px 0px rgba(46, 46, 46, 0.09);
	width: 100%;
	padding: 0 24px 18px 24px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

section.packets-block .box .item .info .contacts-info .title {
	width: 100%;
	height: 24px;
	background: url('../images/rectangle55.svg') top center no-repeat;
	color: #A7A7A7;
	text-align: center;
	font-size: 12px;
	font-weight: 300;
	line-height: 92%;
	letter-spacing: 4.8px;
	display: flex;
	justify-content: center;
	align-items: center;
}

section.packets-block .box .item .info .contacts-info .contacts {
	display: flex;
	align-items: center;
	gap: 26px;
	justify-content: center;
}

section.packets-block .box .item .info .contacts-info .contacts .call-but a {
	height: 54px;
	border-radius: 30px;
	gap: 18px;
	min-width: 235px;
}

section.packets-block .box .item .info .contacts-info .contacts .call-but a::after {
	width: 48px;
	height: 48px;
}

section.packets-block .box .item .info .contacts-info .contacts .call-but a span.icon {
  	height: 48px;
  	max-width: 48px;
}

section.packets-block .box .item .info .contacts-info .contacts .social a {
	width: 54px;
	height: 54px;
}

/*--------*/

/**/

.mobile {
	display: none;
}

.wpcf7-response-output, .wpcf7-not-valid-tip {
	display: none !important;
}



/*--------*/

/**/

.info-page {
	padding: 90px 0;
}

.info-page h1 {
	text-align: center;
	font-size: 54px;
	color: var(--dark);
}

.info-page.page-404 h1 {
	font-size: 72px;
}

.info-page p {
	font-size: 20px;
	margin-top: 24px;
	text-align: center;
}

.info-page .but {
	margin-top: 54px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.info-page .but a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 54px;
	border-radius: 28px;
	padding: 0 24px;
	font-size: 18px;
	color: var(--dark);
	text-decoration: none;
	text-transform: uppercase;
	border: 2px solid var(--grey);
}

.info-page .but a:hover {
	background: var(--grey);
}

#form.fancybox__content {
	background: #09221D;
	border-radius: 40px;
	padding: 0 !important;
}

#form.fancybox__content .modal-box {
	padding: 2rem;
	padding-top: 0;
	overflow: hidden;
	position: relative;
	border-radius: 40px;
}

#form.fancybox__content .modal-box::before {
	content: "";
	width: 720px;
	height: 585px;
	border-radius: 720px;
	background: #5BD6B8;
	filter: blur(225px);
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 320px;
	opacity: 0.8;
}

.modal-box .title {
  	height: 38px;
  	width: 100%;
  	background: url('../images/rectangle54.svg') top center no-repeat;
  	color: #A7A7A7;
  	text-align: center;
  	font-size: 12px;
  	font-weight: 300;
  	line-height: 92%;
  	letter-spacing: 4.8px;
  	display: flex;
  	justify-content: center;
  	align-items: center;
}

.modal-box .modal-form {
	margin-top: 32px;
}

.modal-box .modal-form form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/