@charset "utf-8";

/* ====================================================================================================
	@font-face
==================================================================================================== */

/* Montserrat
============================================================================= */
@font-face{font-family:"Montserrat";src:url("../fonts/montserrat/montserrat-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Montserrat";src:url("../fonts/montserrat/montserrat-medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"Montserrat";src:url("../fonts/montserrat/montserrat-semibold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"Montserrat";src:url("../fonts/montserrat/montserrat-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Montserrat";src:url("../fonts/montserrat/montserrat-extrabold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}

/* Exo 2
================================================================================ */
/* @font-face{font-family:"Exo 2";src:local("Exo 2"),local("Exo2-Regular"),url(../fonts/exotwo/exo2.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Exo 2";src:local("Exo 2 Medium"),local("Exo2-Medium"),url(../fonts/exotwo/exo2medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"Exo 2";src:local("Exo 2 Semi Bold"),local("Exo2-SemiBold"),url(../fonts/exotwo/exo2semibold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"Exo 2";src:local("Exo 2 Bold"),local("Exo2-Bold"),url(../fonts/exotwo/exo2bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap} */

/* Open Sans
================================================================================ */
/* @font-face{font-family:"Open Sans";src:url("../fonts/opensans/opensans-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Open Sans";src:url("../fonts/opensans/opensans-medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"Open Sans";src:url("../fonts/opensans/opensans-semibold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"Open Sans";src:url("../fonts/opensans/opensans-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Open Sans";src:url("../fonts/opensans/opensans-extrabold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap} */


/* ====================================================================================================
	reset styles
==================================================================================================== */
*,*::before,*::after{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}html{height:100%;scrollbar-gutter:stable}body{min-height:100vh;height:100%;margin:0;scrollbar-gutter:stable;-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}:where(h1,h2,h3,h4,h5,h6,p,ul,ol,dl,p,table,address,pre,iframe,form){margin-block:0}:where(ul,ol){padding-left:0;list-style:none}:where(dd){margin-left:0}:where(blockquote,figure){margin:0}:where(sub),:where(sup){position:relative;vertical-align:baseline;font-size:75%;line-height:0}:where(sub){bottom:-.25rem}:where(sup){top:.5rem}:where(a){background-color:transparent;color:inherit;text-decoration:none}:where(address){font-style:normal}:where(pre),:where(code),:where(kbd),:where(samp){font-family:monospace}:where(abbr[title]){border-bottom:none;text-decoration:underline;text-decoration:underline dotted}:where(img){display:block;width:100%;max-width:100%;border-style:none}:where(table){width:100%;border-collapse:collapse;border-spacing:0}:where(fieldset){margin-left:0;padding:0;border:none}input,textarea,select,button{outline:none;font:inherit}label[for]{cursor:pointer}button,[type="button"],[type="reset"],[type="submit"]{border:none;user-select:none;-webkit-appearance:none;appearance:none;cursor:pointer}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{-moz-appearance:textfield;-webkit-appearance:none;appearance:none;height:auto;margin:0}[type="search"]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-.125rem}textarea{resize:vertical}svg *[fill]{fill:currentColor}svg *[stroke]{stroke:currentColor}svg *{transition-property:fill,stroke}:where(iframe){border:none}[hidden]{display:none!important}@media (prefers-reduced-motion:no-preference){html,:has(:target){scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){*,::before,::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* ====================================================================================================
	variables
==================================================================================================== */
:root {
	--white-color: hsl(0 0% 100%);
	--black-color: hsl(0 0% 0%);

	--text-color: hsl(204 4% 23%);
	--main-color: hsl(227 81% 31%);
	--main-color-light: hsl(227 54% 52%);
	--accent-color: hsl(6 100% 61%);

	--light-bg: hsl(210 33% 98%);
	--border-color: hsl(0 0% 83%);
	--grey-color: hsl(0 0% 50%);

	--form-disabled: hsl(0 0% 0% / .42);

	--container-center-padding-inline: .875rem;
	--container-center-padding-block-index: clamp(2.875rem, 2.195rem + 3.4vw, 5rem);
	--border-radius: .25rem;

	--th-td-padding-block : 1.25rem;
	--th-td-padding-inline : .938rem;

	--main-font: "Montserrat";
}


/* ====================================================================================================
	layouts
==================================================================================================== */
body {
	min-width: 2rem; /* 320px */
	color: var(--text-color);
	font: normal normal 400 1rem/1.2 var(--main-font), sans-serif;
}

.wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	overflow: hidden;
}

.wrapper::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background: url(../images/bg.svg) no-repeat right top;
	background-size: 35vmax auto;
}

:where(.container-center) {
	width: 100%;
	max-width: 82.5rem;
	margin-inline: auto;
	padding-inline: var(--container-center-padding-inline);
}

/* @media desktop-first
================================================================================ */
@media (max-width: 87.48rem) {

	:where(.container-center) {
		max-width: 71.25rem;
	}

}

@media (max-width: 74.98rem) {

	:where(.container-center) {
		max-width: 60rem;
	}

}

@media (max-width: 61.98rem) {

	:where(.container-center) {
		max-width: none;
	}

}

/* container-flex
================================================================================ */
:where(.container-flex) {
	display: flex;
	flex-wrap: wrap;
}

:where(.container-flex) > * {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: auto;
	max-width: none;
	align-self: auto;
	order: 0;
}


/* main
================================================================================ */
.main {
	flex-grow: 1;
	padding-block: 3.75rem;


	/* background: #FFCCFF; */
}


/* ====================================================================================================
	common elements and effects
==================================================================================================== */

/* up-page
================================================================================ */
.up-page {
	display: block;
	position: fixed;
	right: 1.875rem;
	bottom: 6.25rem;
	z-index: 200;
	width: 3.75rem;
	height: 3.75rem;
	border: .063rem solid hsl(0 0% 100% / .2);
	border-radius: var(--border-radius);
	background: var(--main-color) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='hsl(0 0% 100%)'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z'/%3E%3C/svg%3E") no-repeat center / auto 1.875rem;
	visibility: hidden;
	opacity: 0;
	transition: visibility .2s linear .02s,
				opacity .2s linear .02s,
				background-color .2s linear .02s;
	cursor: pointer;
}

@media (max-width: 74.98rem) {

	.up-page {
		display: none;
	}

}

@media (hover: hover) and (pointer: fine) {

	.up-page:hover {
		background-color: var(--accent-color);
	}

}

.up-page:active {
	background-color: var(--grey-color);
}

/* messengers
================================================================================ */
:where(.tg) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='hsl(227 81% 31%)' viewBox='0 0 543.001 450'%3E%3Cpath d='M37.329 193.722c145.76-63.505 242.957-105.372 291.59-125.6C467.774 10.367 496.626.335 515.432.004c4.137-.073 13.385.952 19.375 5.813 5.059 4.104 6.45 9.649 7.117 13.54.666 3.892 1.495 12.757.836 19.684-7.525 79.06-40.084 270.924-56.648 359.474-7.01 37.47-20.81 50.033-34.17 51.262-29.036 2.672-51.085-19.19-79.208-37.624-44.006-28.847-68.867-46.804-111.583-74.953-49.366-32.531-17.364-50.411 10.77-79.631 7.36-7.65 135.294-124.013 137.77-134.57.31-1.32.597-6.24-2.326-8.84-2.924-2.597-7.24-1.71-10.353-1.002-4.413 1.002-74.714 47.468-210.902 139.4-19.955 13.702-38.03 20.378-54.223 20.028-17.853-.386-52.194-10.094-77.723-18.393-31.313-10.178-56.2-15.56-54.032-32.846 1.128-9.003 13.527-18.211 37.196-27.624z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
	transition: all .2s linear .02s;
}

@media (hover: hover) and (pointer: fine) {

	:where(.tg):hover {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='hsl(0 0% 100%)' viewBox='0 0 543.001 450'%3E%3Cpath d='M37.329 193.722c145.76-63.505 242.957-105.372 291.59-125.6C467.774 10.367 496.626.335 515.432.004c4.137-.073 13.385.952 19.375 5.813 5.059 4.104 6.45 9.649 7.117 13.54.666 3.892 1.495 12.757.836 19.684-7.525 79.06-40.084 270.924-56.648 359.474-7.01 37.47-20.81 50.033-34.17 51.262-29.036 2.672-51.085-19.19-79.208-37.624-44.006-28.847-68.867-46.804-111.583-74.953-49.366-32.531-17.364-50.411 10.77-79.631 7.36-7.65 135.294-124.013 137.77-134.57.31-1.32.597-6.24-2.326-8.84-2.924-2.597-7.24-1.71-10.353-1.002-4.413 1.002-74.714 47.468-210.902 139.4-19.955 13.702-38.03 20.378-54.223 20.028-17.853-.386-52.194-10.094-77.723-18.393-31.313-10.178-56.2-15.56-54.032-32.846 1.128-9.003 13.527-18.211 37.196-27.624z'/%3E%3C/svg%3E") !important;
	}

}


:where(.max) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' fill='none'%3E%3Cpath stroke='hsl(227 81% 31%)' stroke-width='1.7' d='M7.145.85c3.388 0 6.066 2.748 6.066 6.17v.003a6.066 6.066 0 0 1-6.032 6.086c-.652 0-1.055-.048-1.406-.16-.35-.112-.704-.306-1.229-.685l-.665-.48-.504.647c-.198.254-.732.577-1.25.686a1.4 1.4 0 0 1-.27.031 8.8 8.8 0 0 0-.287-1.899l-.167-.635C1.132 9.591.85 8.531.85 6.984.85 3.501 3.705.85 7.145.85Z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
	transition: all .2s linear .02s;
}

@media (hover: hover) and (pointer: fine) {

	:where(.max):hover {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' fill='none'%3E%3Cpath stroke='hsl(0 0% 100%)' stroke-width='1.7' d='M7.145.85c3.388 0 6.066 2.748 6.066 6.17v.003a6.066 6.066 0 0 1-6.032 6.086c-.652 0-1.055-.048-1.406-.16-.35-.112-.704-.306-1.229-.685l-.665-.48-.504.647c-.198.254-.732.577-1.25.686a1.4 1.4 0 0 1-.27.031 8.8 8.8 0 0 0-.287-1.899l-.167-.635C1.132 9.591.85 8.531.85 6.984.85 3.501 3.705.85 7.145.85Z'/%3E%3C/svg%3E") !important;
	}

}

/* typography
================================================================================ */
/* h1 - h6
============================================================ */
/* .middle h1 {
	margin: 2.5rem 0 1.875rem;
	color: #000;
	font-weight: 600;
	font-size: 2.5rem;
	line-height: 1.2;
} */

/* .middle h1::after {
	content: "";
	display: block;
	width: 4.375rem;
	height: 3px;
	margin: .938rem 0 0;
	background: green;
} */

.middle h2 {
	margin: 0 0 .938rem;
	color: var(--black-color);
	font-weight: 600;
	font-size: clamp(1.5rem, 1.26rem + 1.2vw, 2.25rem);
	line-height: 1.2;
	text-transform: uppercase;
	text-align: center;

	/* background: red; */
}

.middle h2::after {
	content: "";
	display: block;
	width: 3.75rem;
	height: .0125rem;
	margin: .938rem auto 1.25rem;
	background: var(--accent-color);
}

/* text elements
============================================================ */
.middle :where(p) {
	margin: 0 0 1rem;
	line-height: 1.5;
}

.middle p a {
	color: var(--main-color);
	text-decoration: underline;
}

@media (hover: hover) and (pointer: fine) {

	.middle p a:hover {
		text-decoration: none;
	}

}

.middle p a:active {
	color: var(--grey-color);
	text-decoration: none;
}

strong,
.bold {
	font-weight: 600;
}


.sub-title-index {
	margin: 0 0 3.125rem;
	color: var(--grey-color);
	font-size: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
	line-height: 1.3;
	text-align: center;

	/* background: #ccc; */
}

/* ul
============================================================ */
/* .main :where(ul:not([class])) {
	margin-block: 1.25rem;
}

.main :where(ul:not([class])) li {
	position: relative;
	z-index: 1;
	margin-bottom: .313rem;
	padding-left: 1.25rem;
	line-height: 1.3;
}

.main :where(ul:not([class])) li::before {
	content: "";
	position: absolute;
	top: .563rem;
	left: 0;
	width: .5rem;
	height: .125rem;
	background: var(--accent-color);
}

.main :where(ul:not([class])) li a {
	display: inline-block;
	color: var(--accent-color);
	text-decoration: underline;
}

@media (hover: hover) and (pointer: fine) {

	.main :where(ul:not([class])) li a:hover {
		text-decoration: none;
	}

}

.main :where(ul:not([class])) li a:active {
	color:  var(--grey-color);
}

.main :where(ul:not([class])) ul {
	margin-block: .625rem;
} */

/* btn
============================================================ */
/* btn a
======================================== */
.btn a {
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: .875rem 1.5rem .75rem;
	overflow: hidden;
	border-radius: var(--border-radius);
	background: var(--accent-color);
	color: var(--white-color);
	font-weight: 400;
	font-size: .875rem;
	text-transform: uppercase;
	transition: all .3s .02s ease;
}

.btn a::before,
.btn a::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 1.25rem;
	height: 1.25rem;
	background-color: var(--main-color);
	border-radius: 50%;
	transition: 0.5s ease-in-out;
	z-index: -1;
}

.btn a::before {
	left: -1.25rem;
	transform: translate(-50%, -50%);
}

.btn a::after {
	right: -1.25rem;
	transform: translate(50%, -50%);
}

@media (hover: hover) and (pointer: fine) {

	.btn a:hover::before {
		animation: criss-cross-left 0.8s both;
		animation-direction: alternate;
	}

	.btn a:hover::after{
		animation: criss-cross-right 0.8s both;
		animation-direction: alternate;
	}

}

@-webkit-keyframes criss-cross-left {
	0% {
		left: -1.25rem;
	}

	50% {
		left: 50%;
		width: 1.25rem;
		height: 1.25rem;
	}

	100% {
		left: 50%;
		width: 23.438rem;
		height: 23.438rem;
	}
}

@keyframes criss-cross-left {
	0% {
		left: -1.25rem;
	}

	50% {
		left: 50%;
		width: 1.25rem;
		height: 1.25rem;
	}

	100% {
		left: 50%;
		width: 23.438rem;
		height: 23.438rem;
	}
}

@-webkit-keyframes criss-cross-right {
	0% {
		right: -1.25rem;
	}

	50% {
		right: 50%;
		width: 1.25rem;
		height: 1.25rem;
	}

	100% {
		right: 50%;
		width: 23.438rem;
		height: 23.438rem;
	}
}

@keyframes criss-cross-right {
	0% {
		right: -1.25rem;
	}

	50% {
		right: 50%;
		width: 1.25rem;
		height: 1.25rem;
	}

	100% {
		right: 50%;
		width: 23.438rem;
		height: 23.438rem;
	}
}

/* glightbox
============================================================ */
.glightbox-container {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999999 !important;
	overflow: hidden;
	touch-action: none;
	text-size-adjust: 100%;
	backface-visibility: hidden;
	outline: none;
}

.glightbox-container.inactive {
	display: none;
}

.glightbox-container .gcontainer {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 9999;
	overflow: hidden;
}

.glightbox-container .gslider {
	transition: transform 0.4s ease;
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
	position: relative;
	overflow: hidden;
	display: flex !important;
	justify-content: center;
	align-items: center;
	transform: translate3d(0, 0, 0);
}

.glightbox-container .gslide {
	width: 100%;
	position: absolute;
	user-select: none;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
}

.glightbox-container .gslide.current {
	opacity: 1;
	z-index: 99999;
	position: relative;
}

.glightbox-container .gslide.prev {
	opacity: 1;
	z-index: 9999;
}

.glightbox-container .gslide-inner-content {
	width: 100%;
}

.glightbox-container .ginner-container {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	max-width: 100%;
	margin: auto;
	height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
	width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
	flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
	max-width: 100% !important;
}

.gslide iframe,
.gslide video {
	outline: none !important;
	border: none;
	min-height: 165px;
	touch-action: auto;
}

.gslide:not(.current) {
	pointer-events: none;
}

.gslide-image {
	align-items: center;
	overflow: hidden;
	border-radius: var(--border-radius);
}

.gslide-image img {
	max-height: 100vh;
	display: block;
	padding: 0;
	float: none;
	outline: none;
	border: none;
	user-select: none;
	max-width: 100vw;
	width: auto;
	height: auto;
	object-fit: cover;
	touch-action: none;
	margin: auto;
	min-width: 200px;
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
	width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
	width: auto;
	max-width: 100%;
}

.gslide-image img.zoomable {
	position: relative;
}

.gslide-image img.dragging {
	cursor: grabbing !important;
	transition: none;
}

.gslide-video {
	position: relative;
	max-width: 100vh;
	width: 100% !important;
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
	display: none;
}

.gslide-video .gvideo-wrapper {
	width: 100%;
	/* max-width: 160vmin; */
	margin: auto;
}

.gslide-video::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(255, 0, 0, 0.34);
	display: none;
}

.gslide-video.playing::before {
	display: none;
}

.gslide-video.fullscreen {
	max-width: 100% !important;
	min-width: 100%;
	height: 75vh;
}

.gslide-video.fullscreen video {
	max-width: 100% !important;
	width: 100% !important;
}

.gslide-inline {
	background: var(--white-color);
	text-align: left;
	max-height: calc(100vh - 40px);
	overflow: auto;
	max-width: 100%;
	margin: auto;
}

.gslide-inline .ginlined-content {
	padding: 20px;
	width: 100%;
}

.gslide-inline .dragging {
	cursor: grabbing !important;
	transition: none;
}

.ginlined-content {
	overflow: auto;
	display: block !important;
	opacity: 1;
}

.gslide-external {
	display: flex;
	width: 100%;
	min-width: 100%;
	background: var(--white-color);
	padding: 0;
	overflow: auto;
	max-height: 75vh;
	height: 100%;
}

.gslide-media {
	display: flex;
	width: auto;
}

.zoomed .gslide-media {
	box-shadow: none !important;
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
	margin: 0 auto;
	flex-direction: column;
}

.gslide-description {
	position: relative;
	flex: 1 0 100%;
}

.gslide-description.description-left,
.gslide-description.description-right {
	max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
	margin: 0 auto;
	width: 100%;
}

.gslide-description p {
	margin-bottom: 12px;
}

.gslide-description p:last-child {
	margin-bottom: 0;
}

.zoomed .gslide-description {
	display: none;
}

.glightbox-button-hidden {
	display: none;
}


/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/
.glightbox-mobile .glightbox-container .gslide-description {
	height: auto !important;
	width: 100%;
	position: absolute;
	bottom: 0;
	padding: 19px 11px;
	max-width: 100vw !important;
	order: 2 !important;
	max-height: 78vh;
	overflow: auto !important;
	background: linear-gradient(to bottom, hsl(0 0% 9% / 0) 0%, hsl(0 0% 9% /.75) 100%);
	transition: opacity 0.3s linear;
	padding-bottom: 50px;
}

.glightbox-mobile .glightbox-container .gslide-title {
	color: var(--white-color);
	font-size: 1em;
}

.glightbox-mobile .glightbox-container .gslide-desc {
	color: var(--border-color);
}

.glightbox-mobile .glightbox-container .gslide-desc a {
	color: var(--white-color);
	font-weight: bold;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
	color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
	color: var(--white-color);
	opacity: 0.4;
}

.gdesc-open .gslide-media {
	transition: opacity 0.5s ease;
	opacity: 0.4;
}

.gdesc-open .gdesc-inner {
	padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
	transition: opacity 0.5s ease;
	opacity: 1;
}

.greset {
	transition: all 0.3s ease;
}

.gabsolute {
	position: absolute;
}

.grelative {
	position: relative;
}

.glightbox-desc {
	display: none !important;
}

.glightbox-open {
	overflow: hidden;
}

.gloader {
	height: 25px;
	width: 25px;
	animation: lightboxLoader 0.8s infinite linear;
	border: 2px solid var(--white-color);
	border-right-color: transparent;
	border-radius: 50%;
	position: absolute;
	display: block;
	z-index: 9999;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 47%;
}

.goverlay {
	width: 100%;
	height: calc(100vh + 1px);
	position: fixed;
	top: -1px;
	left: 0;
	background: var(--black-color);
	will-change: opacity;
}

.glightbox-mobile .goverlay {
	background: var(--black-color);
}

.gprev,
.gnext,
.gclose {
	z-index: 99999;
	cursor: pointer;
	width: 26px;
	height: 44px;
	border: none;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.gprev svg,
.gnext svg,
.gclose svg {
	display: block;
	width: 25px;
	height: auto;
	margin: 0;
	padding: 0;
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
	opacity: 0.1;
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
	stroke: var(--white-color);
}

.gbtn.focused {
	outline: 2px solid #0f3d81;
}

iframe.wait-autoplay {
	opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
	opacity: 0 !important;
}


/*Skin */

.glightbox-clean .gslide-description {
	background: var(--white-color);
}

.glightbox-clean .gdesc-inner {
	padding: 22px 20px;
}

.glightbox-clean .gslide-title {
	font-size: 1em;
	font-weight: normal;
	font-family: arial;
	color: var(--black-color);
	margin-bottom: 19px;
	line-height: 1.4em;
}

.glightbox-clean .gslide-desc {
	font-size: 0.86em;
	margin-bottom: 0;
	font-family: arial;
	line-height: 1.4em;
}

.glightbox-clean .gslide-video {
	background: var(--black-color);
}

.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
	background-color: hsl(0 0% 9% /.75);
	border-radius: 4px;
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
	fill: var(--white-color);
}

.glightbox-clean .gprev {
	position: absolute;
	top: -100%;
	left: 30px;
	width: 40px;
	height: 50px;
}

.glightbox-clean .gnext {
	position: absolute;
	top: -100%;
	right: 30px;
	width: 40px;
	height: 50px;
}

.glightbox-clean .gclose {
	width: 35px;
	height: 35px;
	top: 15px;
	right: 10px;
	position: absolute;
}

.glightbox-clean .gclose svg {
	width: 18px;
	height: auto;
}

.glightbox-clean .gclose:hover {
	opacity: 1;
}


/*CSS Animations*/

.gfadeIn {
	animation: gfadeIn 0.5s ease;
}

.gfadeOut {
	animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
	animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
	animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
	animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
	animation: gslideInRight 0.3s ease;
}

.gzoomIn {
	animation: gzoomIn 0.5s ease;
}

.gzoomOut {
	animation: gzoomOut 0.5s ease;
}

@keyframes lightboxLoader {
	0% {
		transform: rotate(0deg);
	}

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

@keyframes gfadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes gfadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

@keyframes gslideInLeft {
	from {
		opacity: 0;
		transform: translate3d(-60%, 0, 0);
	}

	to {
		visibility: visible;
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}

@keyframes gslideOutLeft {
	from {
		opacity: 1;
		visibility: visible;
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(-60%, 0, 0);
		opacity: 0;
		visibility: hidden;
	}
}

@keyframes gslideInRight {
	from {
		opacity: 0;
		visibility: visible;
		transform: translate3d(60%, 0, 0);
	}

	to {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}

@keyframes gslideOutRight {
	from {
		opacity: 1;
		visibility: visible;
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(60%, 0, 0);
		opacity: 0;
	}
}

@keyframes gzoomIn {
	from {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}

	to {
		opacity: 1;
	}
}

@keyframes gzoomOut {
	from {
		opacity: 1;
	}

	50% {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}

	to {
		opacity: 0;
	}
}

@media (min-width: 769px) {
	.glightbox-container .ginner-container {
		width: auto;
		height: auto;
		flex-direction: row;
	}

	.glightbox-container .ginner-container.desc-top .gslide-description {
		order: 0;
	}

	.glightbox-container .ginner-container.desc-top .gslide-image,
	.glightbox-container .ginner-container.desc-top .gslide-image img {
		order: 1;
	}

	.glightbox-container .ginner-container.desc-left .gslide-description {
		order: 0;
	}

	.glightbox-container .ginner-container.desc-left .gslide-image {
		order: 1;
	}

	.gslide-image img {
		max-height: 97vh;
		max-width: 100%;
	}

	.gslide-image img.zoomable {
		cursor: zoom-in;
	}

	.zoomed .gslide-image img.zoomable {
		cursor: grab;
	}

	.gslide-inline {
		max-height: 95vh;
	}

	.gslide-external {
		max-height: 100vh;
	}

	.gslide-description.description-left,
	.gslide-description.description-right {
		max-width: 275px;
	}

	.glightbox-open {
		height: auto;
	}

	.goverlay {
		background: hsl(0 0% 9% /.92);
	}

	.glightbox-clean .gslide-media {
		box-shadow: 1px 2px 9px 0px hsl(0 0% 9% /.65);
	}

	.glightbox-clean .description-left .gdesc-inner,
	.glightbox-clean .description-right .gdesc-inner {
		position: absolute;
		height: 100%;
		overflow-y: auto;
	}

	.glightbox-clean .gprev,
	.glightbox-clean .gnext,
	.glightbox-clean .gclose {
		background-color: hsl(0 0% 9% /.32);
	}

	.glightbox-clean .gprev:hover,
	.glightbox-clean .gnext:hover,
	.glightbox-clean .gclose:hover {
		background-color: hsl(0 0% 9% /.7);
	}

	.glightbox-clean .gprev {
		top: 45%;
	}

	.glightbox-clean .gnext {
		top: 45%;
	}
}

@media (min-width: 992px) {
	.glightbox-clean .gclose {
		opacity: 0.7;
		right: 20px;
	}
}

@media screen and (max-height: 420px) {
	.goverlay {
		background: var(--black-color);
	}
}


/* .glightbox {
	position: relative;
	z-index: 1;
}

.glightbox::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	width: 3.75rem;
	height: 3.75rem;
	border-radius: var(--border-radius);
	background: hsl(0 0% 9% / .5) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='hsl(0 0% 100%)' viewBox='0 -960 960 960'%3E%3Cpath d='M779.38-153.85 528.92-404.31q-30 25.54-69 39.54t-78.38 14q-96.1 0-162.67-66.53-66.56-66.53-66.56-162.57 0-96.05 66.53-162.71 66.53-66.65 162.57-66.65 96.05 0 162.71 66.56Q610.77-676.1 610.77-580q0 41.69-14.77 80.69t-38.77 66.69l250.46 250.47zM381.54-390.77q79.61 0 134.42-54.81 54.81-54.8 54.81-134.42t-54.81-134.42q-54.81-54.81-134.42-54.81-79.62 0-134.42 54.81-54.81 54.8-54.81 134.42t54.81 134.42q54.8 54.81 134.42 54.81m-20-93.85V-560h-75.39v-40h75.39v-75.38h40V-600h75.38v40h-75.38v75.38z'/%3E%3C/svg%3E") no-repeat center / auto 2.5rem;
	visibility: hidden;
	opacity: 0;
	transition: all .3s .02s linear;
}

@media (hover: hover) and (pointer: fine) {

	.glightbox:hover::before {
		visibility: visible;
		opacity: 1;
	}

} */

/* cta
============================================================ */
.cta {
	display: flex;
	align-items: center;
	
	/* background: palegoldenrod; */
}


.cta span {
	margin-right: .625rem;
	color: var(--accent-color);
	font-weight: 600;
}


.cta a {
	flex-basis: 2.5rem;
	width: 2.5rem;
	height: 2.5rem;
	margin-left: .625rem;
	border: .063rem solid var(--main-color);
	border-radius: 100%;
	background-color: var(--white-color);
}

.cta a:active {
	border-color: var(--border-color);
	background-color: var(--border-color);
}


.cta .tg {
	/* background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='hsl(6 100% 61%)' viewBox='0 0 543.001 450'%3E%3Cpath d='M37.329 193.722c145.76-63.505 242.957-105.372 291.59-125.6C467.774 10.367 496.626.335 515.432.004c4.137-.073 13.385.952 19.375 5.813 5.059 4.104 6.45 9.649 7.117 13.54.666 3.892 1.495 12.757.836 19.684-7.525 79.06-40.084 270.924-56.648 359.474-7.01 37.47-20.81 50.033-34.17 51.262-29.036 2.672-51.085-19.19-79.208-37.624-44.006-28.847-68.867-46.804-111.583-74.953-49.366-32.531-17.364-50.411 10.77-79.631 7.36-7.65 135.294-124.013 137.77-134.57.31-1.32.597-6.24-2.326-8.84-2.924-2.597-7.24-1.71-10.353-1.002-4.413 1.002-74.714 47.468-210.902 139.4-19.955 13.702-38.03 20.378-54.223 20.028-17.853-.386-52.194-10.094-77.723-18.393-31.313-10.178-56.2-15.56-54.032-32.846 1.128-9.003 13.527-18.211 37.196-27.624z'/%3E%3C/svg%3E"); */
	background-size: auto 1rem;
}

@media (hover: hover) and (pointer: fine) {

	.cta .tg:hover {
		border-color: hsl(200 100% 40%);
		background-color: hsl(200 100% 40%);
	}

}


.cta .max {
	/* background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' fill='none'%3E%3Cpath stroke='hsl(6 100% 61%)' stroke-width='1.7' d='M7.145.85c3.388 0 6.066 2.748 6.066 6.17v.003a6.066 6.066 0 0 1-6.032 6.086c-.652 0-1.055-.048-1.406-.16-.35-.112-.704-.306-1.229-.685l-.665-.48-.504.647c-.198.254-.732.577-1.25.686a1.4 1.4 0 0 1-.27.031 8.8 8.8 0 0 0-.287-1.899l-.167-.635C1.132 9.591.85 8.531.85 6.984.85 3.501 3.705.85 7.145.85Z'/%3E%3C/svg%3E"); */
	background-size: auto 1.125rem;
	background-position: calc(50% + .063rem) center;
}

@media (hover: hover) and (pointer: fine) {

	.cta .max:hover {
		border-color: hsl(275 100% 50%);
		background-color: hsl(275 100% 50%);
	}

}


/* ========================================================================================
	pushy menu (for mobile)
======================================================================================== */
.pushy {
	position: fixed;
	top: 2.875rem;
	width: 100%;
	height: 100%;
	overflow: auto;
	z-index: 7;
	box-shadow: 0 3px 5px 0 rgba(0, 0, 0, .25);
		-webkit-overflow-scrolling: touch;
	background: var(--white-color);
}

/* Menu Movement */
.pushy-left {
	transform: translate3d(-100%, 0, 0);
}

.pushy-open-left .push {
	transform: translate3d(100%, 0, 0);
}

.pushy-open-left .pushy {
	transform: translate3d(0, 0, 0);
}

.pushy-open-left .pushy-content {
	visibility: visible;
}

/* Menu Transitions */
.pushy,
.push {
	transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99);
}

.pushy-content {
	transition: visibility 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99);
}


.pushy.pushy-left {
	left: 0;
}

.pushy-content {
	padding: 2.5rem 0 0 2.5rem;
	visibility: hidden;

	/* background: palegoldenrod; */
}

.pushy-link a {
	display: block;
	padding: 1rem 1.25rem;
	border-radius: var(--border-radius) 0 0 var(--border-radius);
	color: var(--black-color);
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.2;
	text-transform: uppercase;
	transition: all .3s linear;
}

.pushy-link a:active {
	background: var(--light-bg);
	color: var(--accent-color);
}



/* ========================================================================================
	header
======================================================================================== */
.header {
	position: relative;
	z-index: 8;
	background: transparent;
	transition: all .2s ease,
				background 0 ease;

	/* background: #FFCC00; */
}

@media (max-width: 61.98rem) {

	.header {
		position: fixed;
		z-index: 8;
		width: 100%;
	}

}

@media (min-width: 61.98rem) { 

	.header.sticking {
		position: fixed;
		z-index: 8;
		width: 100%;
		box-shadow: 0 0 .188rem rgba(0, 0, 0, .3);
		background: var(--white-color);
	}

}

.header .container-center {
	padding-block: 1.25rem;
	display: flex;
	align-items: center;
	transition: padding .2s ease;

	/* background: green; */
}

@media (max-width: 61.98rem) {

	.header .container-center {
		max-width: 100%;
		padding-block: .25rem;
		box-shadow: 0 0 .188rem rgba(0, 0, 0, .3);
		background: var(--white-color);
		align-items: center;
	}

}

.header.sticking .container-center {
	padding-block: .625rem;
}

/* logo
============================================ */
.logo {
	flex-basis: 10.625rem;
	max-width: 10.625rem;
	margin: 0 2.5rem 0 0;
	transition: all .2s ease;

	/* background: #ccc; */
}

@media (max-width: 61.98rem) {

	.header .logo {
		flex-basis: 6.25rem;
		max-width: 6.25rem;
	}

}

.header.sticking .logo {
	flex-basis: 6.25rem;
	max-width: 6.25rem;
}

/* nav
============================================ */
/* .nav {
	background: brown;
} */

@media (max-width: 61.98rem) {

	.nav {
		display: none;
	}

}

.nav-ul {
	display: flex;
}

.nav-ul > li {
	margin: 0 .625rem;
}

.nav-ul > li > a {
	display: block;
	position: relative;
	z-index: 1;
	padding: 1rem 0;
	overflow: hidden;
	color: var(--black-color);
	font-weight: 500;
	font-size: 1rem;
	transition: color .3s .02s linear,
				font-size .2s ease,
				perspective(.063rem) translateZ(0);

	/* background: #ccc; */
}

.nav-ul > li > a::before {
	content: "";
	position: absolute;
	z-index: -1;
	right: 50%;
	bottom: .375rem;
	left: 50%;
	background: var(--accent-color);
	height: 2px;
	transition-property: left, right;
	transition-duration: .3s;
	transition-timing-function: ease-out;
}

.header.sticking .nav-ul > li > a {
	font-size: 1rem;
}

/* .nav-ul > li.active > a::before, */
/* .nav-ul > li.opened > a::before, */
/* .nav-ul > li.focus > a::before, */
.nav-ul > li > a:hover::before,
.nav-ul > li > a:active::before
/* .-nav-ul > li > a:focus::before */ {
	left: 0;
	right: 0;
}

/* contacts-h
============================================ */
.contacts-h {
	margin: 0 0 0 auto;
	display: flex;
	justify-content: flex-end;
	align-items: center;

	/* background: #777; */
}

@media (max-width: 61.98rem) {

	.contacts-h {
		margin: 0 .625rem 0 auto;
	}

}

/* ======= phone-h ======= */
.phone-h {
	margin-right: 1.25rem;

	/* background: orange; */
}

@media (max-width: 61.98rem) {

	.phone-h {
		margin-right: 0;
	}

}

.header.sticking .phone-h {
	margin-right: 1.25rem;
}

.phone-h a {
	display: inline-block;
	color: var(--black-color);
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.2;
	transition: color .3s .02s ease,
				font-size .2s ease;
}

@media (max-width: 61.98rem) {

	.phone-h a {
		display: block;
		width: 2rem;
		height: 2rem;
		border-radius: 100%;
		border: .063rem solid var(--main-color);
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='hsl(227 81% 31%)'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M20.01 15.38c-1.23 0-2.42-.2-3.53-.56-.35-.12-.74-.03-1.01.24l-1.57 1.97c-2.83-1.35-5.48-3.9-6.89-6.83l1.95-1.66c.27-.28.35-.67.24-1.02-.37-1.11-.56-2.3-.56-3.53 0-.54-.45-.99-.99-.99H4.19C3.65 3 3 3.24 3 3.99 3 13.28 10.73 21 20.01 21c.71 0 .99-.63.99-1.18v-3.45c0-.54-.45-.99-.99-.99z'/%3E%3C/svg%3E") no-repeat center / auto 1.125rem;		font-size: 0;
		line-height: 0;

	}

}

.header.sticking .phone-h a {
	font-size: 1rem;
}

@media (hover: hover) and (pointer: fine) {

	.phone-h a:hover {
		color: var(--accent-color);
	}

}

.phone-h a:active {
	color: var(--accent-color);
}

/* ======= mess-h ======= */
.mess-h {
	display: flex;
	align-items: center;
	
	/* background: palegoldenrod; */
}


.mess-h a {
	flex-basis: 2.25rem;
	width: 2.25rem;
	height: 2.25rem;
	margin-left: .625rem;
	border: .063rem solid var(--main-color);
	border-radius: 100%;
	background-color: var(--white-color);
	background-size: auto .875rem;
}

@media (max-width: 61.98rem) {

	.mess-h a {
		flex-basis: 2rem;
		width: 2rem;
		height: 2rem;
		margin-left: .5rem;
	}

}

.header.sticking .mess-h a {
	flex-basis: 1.875rem;
	width: 1.875rem;
	height: 1.875rem;
	margin-left: .5rem;
}

.mess-h a:active {
	border-color: var(--border-color);
	background-color: var(--border-color);
}


.mess-h .tg {
	background-size: auto .875rem;
}

@media (max-width: 61.98rem) {

	.mess-h .tg {
		background-size: auto .75rem;
	}

}

.header.sticking .mess-h .tg {
	background-size: auto .75rem;
}

@media (hover: hover) and (pointer: fine) {

	.mess-h .tg:hover {
		border-color: hsl(200 100% 40%);
		background-color: hsl(200 100% 40%);
	}

}


.mess-h .max {
	background-size: auto 1rem;
	background-position: calc(50% + .063rem) center;
}

@media (max-width: 61.98rem) {

	.mess-h .max {
		background-size: auto .875rem;
	}

}

.header.sticking .mess-h .max {
	background-size: auto .875rem;
}

@media (hover: hover) and (pointer: fine) {

	.mess-h .max:hover {
		border-color: hsl(275 100% 50%);
		background-color: hsl(275 100% 50%);
	}

}

/* pushy-button
============================================ */
.pushy-button {
	display: none;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: none;
	background: 0 0;
	cursor: pointer;
}

@media (max-width: 61.98rem) {

	.pushy-button {
		display: block;
	}

}

.pushy-button span {
	display: block;
	position: relative;
	margin: auto;
	transition: all .3s ease;
	transform: rotate(180deg);
}

.pushy-button span::after,
.pushy-button span::before {
	content: "";
	position: absolute;
	left: 0;
	top: -.5rem;
	transform-origin: .125rem center;
	transition: all .3s ease;
}

.pushy-button span::after {
	top: .5rem;
}

.pushy-button span,
.pushy-button span::after,
.pushy-button span::before {
	width: 1.625rem;
	height: .188rem;
	background-color: var(--text-color);
	backface-visibility: hidden;
}

.pushy-button span::before {
	width: 1.125rem;
	left: .5rem;
	background-color: var(--accent-color);
}


.pushy-button-close > span {
	transform: rotate(45deg);
}

.pushy-button-close > span::before {
	top: 0;
	left: 0;
	transform: rotate(0);
	background-color: var(--text-color);

	/* background: green; */
}

.pushy-button-close > span::after {
	top: -.625rem;
	left: .688rem;
	transform: rotate(90deg);

	/* background: red; */
}

/* ========================================================================================
	footer
======================================================================================== */
.footer {
	position: relative;
	z-index: 1;
	overflow: hidden;
	background: var(--black-color);
}

.rotateme {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: .2;
	animation-name: rotateme;
	animation-duration: 20s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

@keyframes rotateme {

	from {
			transform: rotate(0deg);
		}
	
		to {
			transform: rotate(360deg);
		}

}

/* main-footer
============================================================================= */
/* .main-footer {
	background: paleturquoise;
} */

.main-footer .container-center {
	padding-block: 3.125rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;

	/* background: #5e35b1; */
}

/* mf-1
============================================ */
.mf-1 {
	flex-basis: 50%;
	width: 50%;
	padding: 0 5rem 0 0;

	/* background: #303f9f; */
}

@media (max-width: 61.98rem) {

	.mf-1 {
		flex-basis: 100%;
		width: 100%;
		margin-bottom: 2.5rem;
		padding: 0;
		text-align: center;
	}

}

/* ======= logo-f ======= */
.logo-f {
	display: block;
	width: 10.625rem;
	margin: 0 0 2.5rem;

	/*background: #33CCFF;*/
}

@media (max-width: 61.98rem) {

	.logo-f {
		margin: 0 auto 1.5rem;
	}

}

/* ======= slogan-f ======= */
.slogan-f {
	color: var(--white-color);
	font-size: 1.125rem;
	line-height: 1.5;
}

/* mf-2
============================================ */
.mf-2 {
	flex-basis: 50%;
	width: 50%;
	padding: .375rem 0 0;
	color: var(--white-color);
	font-weight: 500;
	font-size: 1.25rem;
	line-height: 1.5;
	display: flex;
	flex-wrap: wrap;

	/* background: #00bfa5; */
}

@media (max-width: 61.98rem) {

	.mf-2 {
		flex-basis: 100%;
		width: 100%;
		padding: 0;
	}

}

.mf-2 div {
	flex-basis: 50%;
	width: 50%;
	margin-bottom: 1rem;
}

@media (max-width: 61.98rem) {

	.mf-2 .tel-f,
	.mf-2 .mail-f {
		padding-right: 2rem;
		text-align: right;

		/* background: palegreen; */
	}

	.mf-2 .mess-f,
	.mf-2 .adr-f {
		padding-left: 2rem;

		/* background: palevioletred; */
	}

}

@media (max-width: 35.98rem) {

	.mf-2 div {
		flex-basis: 13.75rem;
		width: 13.75rem;
		margin-inline: auto !important;
		padding: 0 !important;
		text-align: left !important;
	}


}


.mf-2 a:not(.tg, .max),
.mf-2 span {
	padding-left: 2.25rem;
	transition: all .3s .02s linear;
	background-repeat: no-repeat;
	background-position: 0 .25rem;
	background-size: auto 1rem;
	display: inline-block;
	color: var(--white-color);
	font-weight: 400;
	font-size: 1.125rem;
	text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {

	.mf-2 a:not(.tg, .max):hover {
		color: var(--main-color-light);
		text-decoration: none;
	}

}

.mf-2 a:not(.tg, .max):active {
	color: var(--main-color-light);
	text-decoration: none;
}

.tel-f a {
	font-weight: 500;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='hsl(0 0% 100%)'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M20.01 15.38c-1.23 0-2.42-.2-3.53-.56-.35-.12-.74-.03-1.01.24l-1.57 1.97c-2.83-1.35-5.48-3.9-6.89-6.83l1.95-1.66c.27-.28.35-.67.24-1.02-.37-1.11-.56-2.3-.56-3.53 0-.54-.45-.99-.99-.99H4.19C3.65 3 3 3.24 3 3.99 3 13.28 10.73 21 20.01 21c.71 0 .99-.63.99-1.18v-3.45c0-.54-.45-.99-.99-.99z'/%3E%3C/svg%3E");
	background-size: auto 1.125rem;
}


.mess-f {
	display: flex;
	align-items: center;
	
	/* background: palegoldenrod; */
}


.mess-f a {
	flex-basis: 2.25rem;
	width: 2.25rem;
	height: 2.25rem;
	margin-right: .625rem;
	border: .063rem solid var(--white-color);
	border-radius: 100%;
	background-color: transparent;
}

.mess-f a:active {
	border-color: var(--border-color);
	background-color: var(--border-color);
}


.mess-f .tg {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='hsl(0 0% 100%)' viewBox='0 0 543.001 450'%3E%3Cpath d='M37.329 193.722c145.76-63.505 242.957-105.372 291.59-125.6C467.774 10.367 496.626.335 515.432.004c4.137-.073 13.385.952 19.375 5.813 5.059 4.104 6.45 9.649 7.117 13.54.666 3.892 1.495 12.757.836 19.684-7.525 79.06-40.084 270.924-56.648 359.474-7.01 37.47-20.81 50.033-34.17 51.262-29.036 2.672-51.085-19.19-79.208-37.624-44.006-28.847-68.867-46.804-111.583-74.953-49.366-32.531-17.364-50.411 10.77-79.631 7.36-7.65 135.294-124.013 137.77-134.57.31-1.32.597-6.24-2.326-8.84-2.924-2.597-7.24-1.71-10.353-1.002-4.413 1.002-74.714 47.468-210.902 139.4-19.955 13.702-38.03 20.378-54.223 20.028-17.853-.386-52.194-10.094-77.723-18.393-31.313-10.178-56.2-15.56-54.032-32.846 1.128-9.003 13.527-18.211 37.196-27.624z'/%3E%3C/svg%3E");
	background-size: auto .75rem;
}

@media (hover: hover) and (pointer: fine) {

	.mess-f .tg:hover {
		border-color: hsl(200 100% 40%);
		background-color: hsl(200 100% 40%);
	}

}


.mess-f .max {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' fill='none'%3E%3Cpath stroke='hsl(0 0% 100%)' stroke-width='1.7' d='M7.145.85c3.388 0 6.066 2.748 6.066 6.17v.003a6.066 6.066 0 0 1-6.032 6.086c-.652 0-1.055-.048-1.406-.16-.35-.112-.704-.306-1.229-.685l-.665-.48-.504.647c-.198.254-.732.577-1.25.686a1.4 1.4 0 0 1-.27.031 8.8 8.8 0 0 0-.287-1.899l-.167-.635C1.132 9.591.85 8.531.85 6.984.85 3.501 3.705.85 7.145.85Z'/%3E%3C/svg%3E");
	background-size: auto .938rem;
	background-position: calc(50% + .063rem) center;
}

@media (hover: hover) and (pointer: fine) {

	.mess-f .max:hover {
		border-color: hsl(275 100% 50%);
		background-color: hsl(275 100% 50%);
	}

}


.mail-f a {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='hsl(0 0% 100%)' viewBox='0 -960 800 800'%3E%3Cpath d='M400-160q-83 0-156-31.5T117-277 31.5-404 0-560t31.5-156T117-843t127-85.5T400-960t156 31.5T683-843t85.5 127T800-560v58q0 59-40.5 100.5T660-360q-35 0-66-15t-52-43q-29 29-65.5 43.5T400-360q-83 0-141.5-58.5T200-560t58.5-141.5T400-760t141.5 58.5T600-560v58q0 26 17 44t43 18 43-18 17-44v-58q0-134-93-227t-227-93-227 93-93 227 93 227 227 93h200v80zm0-280q50 0 85-35t35-85-35-85-85-35-85 35-35 85 35 85 85 35'/%3E%3C/svg%3E");
	background-position: 0 .375rem;
	text-decoration: underline;
}

.adr-f span {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='20' fill='hsl(0 0% 100%)' viewBox='0 -960 640 800'%3E%3Cpath d='M320-560q33 0 56.5-23.5T400-640t-23.5-56.5T320-720t-56.5 23.5T240-640t23.5 56.5T320-560m0 294q122-112 181-203.5T560-632q0-109-69.5-178.5T320-880t-170.5 69.5T80-632q0 71 59 162.5T320-266m0 106Q159-297 79.5-414.5T0-632q0-150 96.5-239T320-960t223.5 89T640-632q0 100-79.5 217.5T320-160m0-480'/%3E%3C/svg%3E");
	background-position: 0 .125rem;
	font-size: 1rem;
}

/* bottom-footer
============================================================================= */
.bottom-footer {
	border-top: .063rem solid rgba(255, 255, 255, .2);
}

.bottom-footer .container-center {
	padding-block: 1.25rem;
	color: var(--border-color);
	font-size: .875rem;
	line-height: 1.5;
	text-align: center;

	/* background: #CCFFFF; */
}


/* ========================================================================================
	index
======================================================================================== */
/* slider-index
============================================================================= */
.slider-index {
	margin-bottom: clamp(3.125rem, 2.525rem + 3vw, 5rem);
	background: linear-gradient(to right, hsl(210 33% 98%), hsl(0 0% 100% / 0));

	/* background: paleturquoise; */
}

@media (max-width: 61.98rem) {

	.slider-index {
		margin-top: 3.5rem;
	}

}

.slider-index .container-center {
	display: flex;
	width: calc(82.5rem - 10%);

	/* background: #ccc; */
}

@media (max-width: 87.48rem) {

	.slider-index .container-center {
		width: calc(71.25rem - 8%);
	}

}

@media (max-width: 74.98rem) {

	.slider-index .container-center {
		width: calc(60rem - 10%);
	}

}

@media (max-width: 61.98rem) {

	.slider-index .container-center {
		width: 100%;
	}

}

/* content-si
============================================ */
.content-si {
	position: relative;
	flex-basis: 60%;
	max-width: 60%;
	padding-block: clamp(2.75rem, 1.63rem + 5.6vw, 6.25rem);

	/* border: 2px solid plum; */
}

@media (max-width: 47.98rem) {

	.content-si {
		flex-basis: 100%;
		max-width: 100%;
	}

}

.title-content-si {
	margin: 0 0 1.25rem;
	overflow: hidden;

	/* background: pink; */
}

.sub-title-content-si {
	display: block;
	margin: 0 0 1.25rem;
	font-weight: 600;
	font-size: clamp(1rem, 0.88rem + 0.6vw, 1.375rem);

	/* background: red; */
}

.text-content-si {
	margin: 0 0 3.125rem;
	font-size: clamp(1rem, 0.92rem + 0.4vw, 1.25rem);
	line-height: 1.3;

	/* background: red; */
}

@media (max-width: 35.98rem) {

	.text-content-si br {
		display: none;
	}

}


.cd-words-wrapper {
	display: inline-block;
	position: relative;
	text-align: left;
}

.cd-words-wrapper b {
	display: inline-block;
	position: absolute;
	white-space: nowrap;
	left: 0;
	top: 0;
	color: var(--black-color);
	font-weight: 700;
	font-size: clamp(1.25rem, 0.93rem + 1.6vw, 2.25rem);
	line-height: 1.3;
}

.cd-words-wrapper b.is-visible {
	position: relative
}

.no-js .cd-words-wrapper b {
	opacity: 0
}

.no-js .cd-words-wrapper b.is-visible {
	opacity: 1
}

.cd-headline.clip span {
	display: inline-block;
	padding: .2em 0
}

.cd-headline.clip .cd-words-wrapper {
	overflow: hidden;
	vertical-align: top
}

.cd-headline.clip .cd-words-wrapper::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: .125rem;
	height: 100%;
	background-color: rgba(211, 211, 211, 1)
}

.cd-headline.clip b {
	opacity: 0
}

.cd-headline.clip b.is-visible {
	opacity: 1
}

@media (max-width: 61.98rem) {

	.cd-words-wrapper b {
		font-weight: 600;
	}

}

/* img-si
============================================ */
.img-si {
	flex-basis: 40%;
	max-width: 40%;
	/* padding-left: 5rem; */
	display: flex;
	justify-content: flex-end;
	align-items: center;

	/* background: palegoldenrod; */
}

@media (max-width: 47.98rem) {

	.img-si {
		display: none;
	}

}

.img-si img {
	height: calc(100% - 5rem);
}

/* services-index
============================================================================= */
.services-index {
	margin-bottom: clamp(3.125rem, 2.525rem + 3vw, 5rem);

	/* background: #99CCFF; */
}

.services-index .container-center {
	padding-inline: 5%;

	/* background: #CCFFFF; */
}

@media (max-width: 61.98rem) {

	.services-index .container-center {
		padding-inline: var(--container-center-padding-inline);
	}

}


.grid-services-index {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.25rem;

	/* background: #ccc; */
}

@media (max-width: 61.98rem) {

	.grid-services-index {
		padding: 0 0 1.25rem;
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
	}


	.grid-services-index::-webkit-scrollbar {
		-webkit-appearance: none;
	}

	.grid-services-index::-webkit-scrollbar:vertical {
		width: .375rem;
	}

	.grid-services-index::-webkit-scrollbar:horizontal {
		height: .375rem;
	}

	.grid-services-index::-webkit-scrollbar-thumb {
		background-color: var(--main-color);
		border-radius: var(--border-radius);
		border: .125rem solid var(--white-color);
	}

	.grid-services-index::-webkit-scrollbar-track {
		border-radius: var(--border-radius);
		background-color: var(--white-color);
	}

}

.cell-services-index {
	flex-basis: calc((100% - 1.25rem * (2 - 1) ) / 2);
	max-width: calc((100% - 1.25rem * (2 - 1) ) / 2);
	padding: 1.875rem;
	border-radius: var(--border-radius);
	box-shadow: 0 .5rem .5rem -.5rem rgba(0, 0, 0, .3);
	background: var(--light-bg);
	display: flex;
	flex-direction: column;
}

@media (max-width: 61.98rem) {

	.cell-services-index {
		min-width: 18.75rem;
	}

}

/* .cell-services-index:nth-child(3) {
	margin-left: 17%;
}

@media (max-width: 61.98rem) {

	.cell-services-index:nth-child(3) {
		margin-left: 0;
	}

} */


.ico-price-csi {
	display: flex;
	align-items: center;
	margin: 0 0 1.5rem;
}

.ico-csi {
	position: relative;
	z-index: 1;
	flex-basis: 5rem;
	max-width: 5rem;
	height: 5rem;
	margin: 0 1.875rem 0 0;
}

@media (max-width: 61.98rem) {

	.ico-csi {
		flex-basis: 4.375rem;
		max-width: 4.375rem;
		height: 4.375rem;
		margin: 0 1.25rem 0 0;
	}

}

.ico-csi::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	border-radius: 33% 66% 70% 30%/49% 62% 38% 51% !important;
	background: linear-gradient(to right bottom, var(--main-color-light), var(--main-color));
}

.ico-csi img {
	position: relative;
	top: 1.5rem;
	left: 1.125rem;
	max-width: 2.5rem;

	/* background: #ccc; */
}

@media (max-width: 61.98rem) {

	.ico-csi img {
		position: relative;
		top: 1.25rem;
		left: 1rem;
		max-width: 2rem;
	}

}


.price-csi {
	color: var(--grey-color);
	font-weight: 500;
	font-size: 1.375rem;
}

@media (max-width: 61.98rem) {

	.price-csi {
		font-size: 1.25rem;
	}

}


.title-csi {
	margin: 0 0 1.25rem;
	color: var(--black-color);
	font-weight: 500;
	font-size: 1.625rem;
	line-height: 1.2;

	/* background: #ccc; */
}


.text-csi {
	line-height: 1.5;
}

.text-csi::before {
	content: "";
	display: block;
	width: 3.125rem;
	height: 2px;
	margin: 0 0 1.25rem;
	background: var(--main-color-light);
}

/* about-index
============================================================================= */
.about-index {
	margin-bottom: clamp(3.75rem, 2.15rem + 8vw, 8.75rem);

	/* background: palegreen; */
}

/* .about-index .container-center {
	background: peru;
} */

/* left-about-index
============================================ */
.left-about-index {
	flex-basis: 50%;
	width: 50%;
	padding: 2.5rem;
	border: .063rem solid var(--border-color);
	border-radius: var(--border-radius) 0 0 var(--border-radius);
}

@media (max-width: 61.98rem) {

	.left-about-index {
		flex-basis: 100%;
		max-width: 100%;
		margin: 0 0 2.5rem;
		padding: 0;
		border: none;
	}

}

.left-about-index h2 {
	text-align: left;
}

.left-about-index h2::after {
	margin: .938rem 0 1.875rem;
}

.left-about-index .sub-title-index {
	text-align: left;

	/* background: #ccc; */
}

@media (max-width: 61.98rem) {

	.left-about-index .sub-title-index {
		margin: 0 0 1.25rem !important;
	}

}


.left-about-index .cta {
	margin-top: 1.875rem;
}

/* right-about-index
============================================ */
.right-about-index {
	flex-basis: 50%;
	width: 50%;
	border-radius: 0 var(--border-radius) var(--border-radius) 0;
	background: radial-gradient(var(--main-color-light), var(--main-color));
	position: relative;
	display: flex;
	flex-wrap: wrap;
}

@media (max-width: 61.98rem) {

	.right-about-index {
		flex-basis: 100%;
		max-width: 100%;
		border-radius: var(--border-radius);
	}

}

.right-about-index::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 5rem);
	height: .063rem;
	background: hsl(0 0% 100% / .3);
}

@media (max-width: 35.98rem) {

	.right-about-index::before {
		width: calc(100% - 5rem);
	}

}

.top-rai {
	flex-basis: 100%;
	width: 100%;
	height: 50%;
	padding: 2.5rem clamp(2.5rem, 1.7rem + 4vw, 5rem) 2.5rem clamp(7.5rem, 5.74rem + 8.8vw, 13rem);
	background: url(../icons/ico-top-ra.svg) no-repeat left clamp(2.5rem, 1.3rem + 6vw, 6.25rem) center;
	background-size: auto clamp(2.875rem, 2.195rem + 3.4vw, 5rem);
	color: var(--white-color);
	font-weight: 500;
	font-size: clamp(1.5rem, 1.26rem + 1.2vw, 2.25rem);
	display: flex;
	align-items: center;
}

@media (max-width: 61.98rem) {

	.top-rai {
		height: auto;
		min-height: 8.75rem;
	}

}


.bottom-rai {
	flex-basis: 100%;
	width: 100%;
	height: 50%;
	padding: 2.5rem clamp(7.5rem, 5.74rem + 8.8vw, 13rem) 2.5rem clamp(2.5rem, 1.7rem + 4vw, 5rem);
	background: url(../icons/ico-bottom-rai.svg) no-repeat right clamp(2.5rem, 1.3rem + 6vw, 6.25rem) center;
	background-size: auto clamp(2.875rem, 2.195rem + 3.4vw, 5rem);
	color: var(--white-color);
	font-weight: 500;
	font-size: clamp(1.125rem, 0.765rem + 1.8vw, 2.25rem);
	display: flex;
	align-items: center;
}

@media (max-width: 61.98rem) {

	.bottom-rai {
		height: auto;
		min-height: 8.75rem;
	}

	.bottom-rai br:first-child {
		display: none;
	}

}

/* registry-index
============================================================================= */
.registry-index {
	margin-bottom: clamp(5rem, 4.6rem + 2vw, 6.25rem);

	/* background: peachpuff; */
}

.registry-index .container-flex {
	max-width: 80%;
	margin-inline: auto;
	align-items: center;

/* 	background: red; */
}

@media (max-width: 61.98rem) {

	.registry-index .container-flex {
		max-width: 100%;
	}

}

/* left-registry-index
============================================ */
.left-registry-index {
	flex-basis: 50%;
	width: 50%;
	padding-right: 5rem;

	/* background: pink; */
}

@media (max-width: 61.98rem) {

	.left-registry-index {
		flex-basis: 100%;
		width: 100%;
		margin: 0 0 2.5rem;
		padding: 0;
		background: transparent;
		order: 2;
	}

}

.left-registry-index .glightbox {
	position: relative;
	display: block;
	z-index: 1;
	width: 20rem;
	max-width: 90%;
	margin-inline: auto;
	border: .063rem solid var(--border-color);
	border-radius: var(--border-radius);
}

.left-registry-index .glightbox::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	transform: translate(-50%, -50%);
	width: 31.25rem;
	height: 31.25rem;
	border-radius: 33% 66% 70% 30%/49% 62% 38% 51% !important;
	background: linear-gradient(to right bottom, var(--main-color-light), var(--main-color));
}

@media (max-width: 74.98rem) {

	.left-registry-index .glightbox::after {
		width: 28.75rem;
		height: 28.75rem;
	}

}

@media (max-width: 61.98rem) {

	.left-registry-index .glightbox::after {
		width: 31.25rem;
		height: 31.25rem;
	}

}

/* right-registry-index
============================================ */
.right-registry-index {
	flex-basis: 50%;
	width: 50%;
	padding-left: 2.875rem;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.3;

	/* background: #ccc; */
}

@media (max-width: 61.98rem) {

	.right-registry-index {
		flex-basis: 100%;
		max-width: 100%;
		margin-bottom: 3.75rem;
		padding-left: 0;
		text-align: center;
	}

}

.right-registry-index span {
	display: block;
	margin: 0 0 .938rem;
	color: var(--grey-color);
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.3;
}

.right-registry-index .btn {
	margin-top: 2.5rem;
}

/* portfolio-index
============================================================================= */
.portfolio-index {
	margin-bottom: 5rem;
	
	/* background: peachpuff; */
}

/* .portfolio-index .container-center {
	background: purple;
} */


.grid-portfolio-index {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 2.5rem;

	/* background: #ccc; */
}

@media (max-width: 61.98rem) {

	.grid-portfolio-index {
		margin: 0 0 1.25rem;
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
	}

	.grid-portfolio-index::-webkit-scrollbar {
		-webkit-appearance: none;
	}

	.grid-portfolio-index::-webkit-scrollbar:vertical {
		width: .375rem;
	}

	.grid-portfolio-index::-webkit-scrollbar:horizontal {
		height: .375rem;
	}

	.grid-portfolio-index::-webkit-scrollbar-thumb {
		background-color: var(--main-color);
		border-radius: var(--border-radius);
		border: .125rem solid var(--white-color);
	}

	.grid-portfolio-index::-webkit-scrollbar-track {
		border-radius: var(--border-radius);
		background-color: var(--white-color);
	}

}

.cell-portfolio-index {
	position: relative;
	flex-basis: calc((100% - 1rem * (4 - 1) ) / 4);
	max-width: calc((100% - 1rem * (4 - 1) ) / 4);
}

@media (max-width: 61.98rem) {

	.cell-portfolio-index {
		flex-basis: 18.75rem;
		min-width: 18.75rem;
	}

}


.cell-portfolio-index .carousel {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	padding: 0;
	white-space: nowrap;
	clip-path: inset(100%);
	clip: rect(0 0 0 0);
	overflow: hidden;
}

.cell-portfolio-index > a {
	position: relative;
	z-index: 1;
	height: 100%;
	overflow: hidden;
	padding: 3.75rem .938rem;
	border: .063rem solid rgba(211, 211, 211, .5);
	border-radius: .25rem;
	background: var(--light-bg);
	transition: background .3s .02s linear;
	display: flex;
	align-items: center;

	/* background: red; */
}

.cell-portfolio-index > a::before,
.cell-portfolio-index > a::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform-origin: center;
}

.cell-portfolio-index > a::before {
	border-top: .063rem solid var(--accent-color);
	border-bottom: .063rem solid var(--accent-color);
	transform: scale3d(0, .9, .9);
}

.cell-portfolio-index > a::after {
	border-left: .063rem solid var(--accent-color);
	border-right: .063rem solid var(--accent-color);
	transform: scale3d(.9, 0, .9);
}

.cell-portfolio-index > a img {
	position: relative;
	z-index: -1;
	width: auto;
	max-width: 75%;
	max-height: 3.125rem;
	margin: 0 auto;
	filter: gray;
		-webkit-filter: grayscale(1);
	transition: all .3s .02s ease;
}

.cell-portfolio-index > a:hover,
.cell-portfolio-index > a:active,
.cell-portfolio-index > a:focus {
	background: var(--white-color);
}

.cell-portfolio-index > a:hover::before,
.cell-portfolio-index > a:hover::after {
	transform: scale3d(1, 1, 1);
		-webkit-transform: scale3d(1, 1, 1);
	transition: -webkit-transform 0.5s;
		-webkit-transition: -webkit-transform 0.5s;
	transition: transform .5s;
	transition: transform .5s,
				-webkit-transform 0.5s;
}

.cell-portfolio-index > a:hover img,
.cell-portfolio-index > a:active img,
.cell-portfolio-index > a:focus img {
	filter: none;
		-webkit-filter: grayscale(0);
}


.grid-portfolio-index + p {
	font-weight: 500;
	text-align: center;
}