@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap);
.contact > .container {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contact form {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 480px;
	width: 100%;
}
.home .container {
	position: relative;
	overflow: hidden;
}
.home .bg {
	position: absolute;
	top: 0;
	right: -35%;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-image: url('/static/images/binoculars.jpg');
	background-size: 60%;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0.15;
}
.home .content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-bottom: 24px;
}

.home .search {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 582px;
	margin: 0 auto;
}
.home .search form {
	width: 100%;
}
.home .search .title {
	text-align: center;
	margin-bottom: 16px;
}
.home .search input {
	padding-left: 10px;
}

@media only screen and (max-width: 1024px) {
	.home .bg {
		width: 150%;
		right: -70%;
		background-size: contain;
	}
}
.partner .content {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	position: relative;
}
.partner .info {
	display: flex;
	justify-content: space-between;
}
.partner .top-picture {
	width: 164px;
	height: 164px;
	background-size: 80%;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 50%;
	margin: 0 auto;
	background-color: white;
}
.partner .top-picture::before {
	content: '';
	position: absolute;
	left: 0;
	top: 82px;
	width: 100%;
	height: 1px;
	background: var(--blue);
	z-index: -1;
}
.partner .info .basic {
	display: flex;
	align-items: center;
}
.partner .info .share {
	margin-left: 24px;
}
.partner .info .share img {
	width: 20px;
}
.partner .info .contact {
	display: flex;
	flex-wrap: wrap;
}
.partner .info .contact .description {
	padding: 10px 16px 10px 26px;
	position: relative;
}
.partner .info .contact .description::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	content: '';
	width: 16px;
	height: 16px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
.partner .info .contact .description:nth-child(1)::before {
	background-image: url('/static/images/phone.svg');
}
.partner .info .contact .description:nth-child(2)::before {
	background-image: url('/static/images/mailing.svg');
}

.partner .about {
	margin-top: 48px;
}
.partner .about .description {
	text-align: justify;
}

.partner .map-wrapper {
	margin: 32px 0;
}
.partner .map-wrapper .label {
	padding-bottom: 8px;
}
.partner .map {
	position: relative;
	height: 400px;
}

@media only screen and (max-width: 680px) {
	.partner .info {
		flex-direction: column;
	}
	.partner .social-media {
		margin-top: 32px;
	}
}
.partners .search {
	flex: 1;
	padding: 0 24px;
}
.partners .search form {
	width: 100%;
}
.partners .search input {
	padding-left: 10px;
}

.partners .content {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}
.partners .content.businesses {
	justify-content: flex-start;
}

.partners .partner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 300px;
	margin: 16px;
}
.partners .partner .picture {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background-size: 90%;
	background-repeat: no-repeat;
	background-position: center;
	flex-shrink: 0;
}
.partners .partner .info {
	display: flex;
	flex-direction: column;
	padding-left: 16px;
	overflow: hidden;
	width: 100%;
}
.partners .partner .name {
	font-size: 19px;
	font-weight: bold;
	color: var(--blue);
	overflow: hidden;
	text-overflow: ellipsis;
}
.partners .partner .type {
	font-size: 16px;
	font-weight: normal;
	color: var(--grey);
}

.partners .businesses.content {
	margin-bottom: 48px;
}
.partners .business {
	padding: 16px;
}

.partners .pagination {
	margin: 48px 0;
}

@media only screen and (max-width: 1024px) {
	.partners .header {
		position: relative;
		padding: 48px 0 128px 0;
	}
	.partners .search {
		position: absolute;
		left: 0;
		bottom: 48px;
		width: 100%;
		padding: 0;
	}
	.partners .partner {
		margin: 8px;
	}
}
.pre-register > .container {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.pre-register form {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 480px;
	width: 100%;
}
.util-page .content .description {
	color: var(--grey);
}
.city-select {
	display: flex;
}
.city-select.loading {
	align-items: center;
	justify-content: center;
}
.city-select .half {
	width: 100%;
}
.city-select .building.half {
	background-repeat: no-repeat;
	background: url('/static/images/building.jpg');
	background-size: cover;
	background-position: center;
}
.city-select .container {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

.city-select .container .input-wrapper {
	width: 100%;
	max-width: 400px;
	display: flex;
	flex-direction: column;
}
.city-select .container .input-wrapper .select {
	padding: 16px 0;
}
.city-select .container .input-wrapper .proceed {
	align-self: flex-end;
}

.city-select .footer a img {
	padding: 0 16px;
	transform: translate(-16px, 0);
	transition: all 0.2s ease-in-out;
}
.city-select .footer a img:hover {
	transform: translate(-16px, 0) scale(1.2);
}

@media only screen and (max-width: 1024px) {
	.city-select .content.half {
		background: url('/static/images/building.jpg');
		background-repeat: no-repeat;
		background-size: cover;
		background-position: 80vw center;
	}
	.city-select .building.half {
		display: none;
	}
	.city-select .container .input-wrapper .proceed {
		width: 100%;
	}
}
.logo-wrapper {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	z-index: 10;
}
.logo-wrapper .logo {
	width: 84px;
}

.logo-wrapper .city {
	display: flex;
	align-items: center;
}
.logo-wrapper .city .arrow {
	height: 12px;
	margin: 0 16px 0 24px;
}
.logo-wrapper .location-icon {
	display: none;
}
.logo-wrapper .location-icon img {
	width: 24px;
}

@media only screen and (max-width: 1024px) {
	.logo-wrapper .location {
		display: none;
	}
	.logo-wrapper .location-icon {
		display: unset;
	}
}
.partners-carousel {
	position: relative;
	padding: 0 48px;
}
.partners-carousel .logo {
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: 50%;
	background-position: center;
}

.partners-carousel .button {
	position: absolute;
	outline: none;
	border: none;
	background: none;
	padding: 16px;
}
.partners-carousel .back.button {
	top: 50%;
	left: 0;
	transform: translate(-16px, -50%) rotate(180deg);
}
.partners-carousel .next.button {
	top: 50%;
	right: 0;
	transform: translate(16px, -50%);
}

.partners-carousel .button .arrow {
	width: 16px;
	height: 16px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.buttonBack___1mlaL,.buttonFirst___2rhFr,.buttonLast___2yuh0,.buttonNext___2mOCa,.buttonNext___3Lm3s,.dot___3c3SI{cursor:pointer}.image___xtQGH{display:block;width:100%;height:100%}.spinner___27VUp{position:absolute;top:calc(50% - 15px);left:calc(50% - 15px);width:30px;height:30px;animation-name:spin___S3UuE;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite;border:4px solid #a9a9a9;border-top-color:#000;border-radius:30px}@keyframes spin___S3UuE{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.container___2O72F{position:relative;overflow:hidden;height:100%;width:100%}.overlay___IV4qY{position:absolute;top:0;left:0;bottom:0;right:0;opacity:0;cursor:zoom-in;transition:opacity .3s,transform .3s}.hover___MYy31,.loading___1pvNI,.zoom___3kqYk{opacity:1}.imageLoadingSpinnerContainer___3UIPD{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f4f4f4}.slide___3-Nqo{position:relative;display:block;box-sizing:border-box;height:0;margin:0;list-style-type:none}.slide___3-Nqo:focus{outline:none!important}.slideHorizontal___1NzNV{float:left}[dir=rtl] .slideHorizontal___1NzNV{direction:rtl;transform:scaleX(-1)}.slideInner___2mfX9{position:absolute;top:0;left:0;width:100%;height:100%}.focusRing___1airF{position:absolute;top:5px;right:5px;bottom:5px;left:5px;pointer-events:none;outline-width:5px;outline-style:solid;outline-color:Highlight}@media (-webkit-min-device-pixel-ratio:0){.focusRing___1airF{outline-style:auto;outline-color:-webkit-focus-ring-color}}.horizontalSlider___281Ls{position:relative;overflow:hidden}[dir=rtl] .horizontalSlider___281Ls{direction:ltr;transform:scaleX(-1)}.horizontalSliderTray___1L-0W{overflow:hidden;width:100%}.verticalSlider___34ZFD{position:relative;overflow:hidden}.verticalSliderTray___267D8{overflow:hidden}.verticalTray___12Key{float:left}.verticalSlideTrayWrap___2nO7o{overflow:hidden}.sliderTray___-vHFQ{display:block;list-style:none;padding:0;margin:0}.sliderAnimation___300FY{transition:transform .5s;transition-timing-function:cubic-bezier(.645,.045,.355,1);will-change:transform}.masterSpinnerContainer___1Z6hB{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f4f4f4}
.menu .icon {
	display: none;
}
.menu nav {
	overflow: hidden;
}
.menu nav a {
	padding: 16px 24px;
}

@media only screen and (max-width: 1024px) {
	.menu {
		z-index: 5;
	}
	.menu .icon {
		display: unset;
	}
	.menu .icon img {
		width: 20px;
	}
	.menu nav {
		width: 100%;
		height: 100vh;
		max-width: 0;
		background: white;
		position: fixed;
		top: 0;
		left: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		transition: all 0.2s ease-in-out;
	}
	.menu.opened nav {
		max-width: 100vw;
	}
	.menu nav span {
		font-size: 10vw;
	}
}
footer {
	padding: 48px 0;
}

footer .container {
	display: flex;
	justify-content: space-between;
}

footer .block {
	display: inline-block;
}

footer .social-media.block {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
footer .social-media.block .icons img {
	padding: 8px 8px 0 8px;
	transform: translate(-8px, 0);
}

footer .links a {
	display: block;
}

footer .contact.block {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
footer .contact.block .address {
	margin-top: 16px;
}

@media only screen and (max-width: 768px) {
	footer .container {
		flex-direction: column;
	}
	footer .container .block:not(:first-child) {
		margin-top: 24px;
	}
	footer .social-media.block .logo-wrapper {
		padding-bottom: 16px;	
	}
}
* {
	padding: 0;
	margin: 0;
	outline: 0;
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
	text-decoration: none;
}

:root {
	--blue: #1976D2;
	--grey: #d2d2d2;
}

::-webkit-scrollbar {
	width: 10px;
}
::-webkit-scrollbar-thumb {
	background-color: var(--blue);
}

body {
	background-color: white;
}

.fullscreen {
	width: 100%;
	height: 100vh;
}

.page {
	min-height: 100vh;
}
.page .header {
	margin-bottom: 24px;
}

.container {
	padding: 0 72px;
}
.header, .footer {
	width: 100%;
	padding: 48px 0;
}
.header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.title {
	font-size: 1.6em;
	font-weight: normal;
	color: var(--blue);
}
.label {
	font-size: 1em;
	font-weight: bold;
	color: var(--blue);
	text-transform: uppercase;
}
a {
	color: var(--blue);
}
a:hover {
	text-decoration: underline;
}
.description {
	font-size: 1em;
	font-weight: normal;
	color: var(--blue);
}
.title b, .description b {
	font-weight: bold;
}

.pagination {
	display: flex;
	justify-content: center;
}

.dropzone-wrapper {
	margin-top: 16px;
	margin-bottom: 8px;
}
.dropzone {
	border: 1.2px dashed var(--grey) !important;
	background: none !important;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

@media only screen and (max-width: 1024px) {
	.container {
		padding: 0 36px;
	}
}
