:root {
	--white: #fff;
	--black: #000;
	--blue: #0077ff;
	--gray: #959697;
	--red: #ff6c6c;
}

body {
	color: var(--white);
	font-family: "VK Sans Display";
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 130%;
	background-color: var(--black);
}

.body-wrapper {
	position: relative;
	overflow: hidden;
}

.container {
	width: 1366px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 50px;
}

.section {
	padding: 40px 0;
}

.text-60 {
	font-size: 60px;
	line-height: 90%;
}

.text-46 {
	font-size: 46px;
	line-height: 110%;
}

.text-30 {
	font-size: 30px;
	line-height: 110%;
}

.text-28 {
	font-size: 28px;
	line-height: 120%;
}

.text-24 {
	font-size: 24px;
	line-height: 130%;
}

.text-20 {
	font-size: 20px;
	line-height: 130%;
}

.text-16 {
	font-size: 16px;
	line-height: 130%;
}

.fw-600 {
	font-weight: 600;
}

.fw-500 {
	font-weight: 500;
}

.gray-text {
	color: var(--gray);
}

.btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	cursor: pointer;
	padding: 12px 24px;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	font-weight: 500;
	border-radius: 16px;
	color: var(--white);
	background-color: #000;
	border: 1px solid transparent;
}

.btn_blue {
	background-color: var(--blue);
}

.btn_gray {
	background-color: rgba(255, 255, 255, 0.08);
}

.btn_wide {
	width: 100%;
}

.btn:hover {
	border-color: #fff;
}

.footer {
	padding-bottom: 40px;
}

.footer__text {
	text-align: center;
	margin: 0 auto;
	max-width: 590px;
}

.entrance__wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 20px 0 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	z-index: 1;
}

.entrance__bg {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 1200px;
	width: 110%;
	height: 100%;
	z-index: -1;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	pointer-events: none;
	user-select: none;
}

.entrance__bg img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: center;
	object-position: center;
}

.entrance__logo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 60px;
}

.entrance__desc {
	margin-top: 20px;
	max-width: 500px;
	text-align: center;
}

.entrance__btn {
	margin-top: 60px;
}

.entrance__title {
	width: 100%;
	max-width: 600px;
	text-align: center;
}

.entrance__title-underline {
	position: relative;
}

.entrance__title-underline svg {
	position: absolute;
	bottom: 0px;
	left: 0;
}

.entrance__title-char svg {
	margin-bottom: -10px;
}

.advantages__slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 40px;
	border-radius: 30px;
	background-color: #2c2d2e;
	height: auto;
}

.advantages__icon {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 50px;
}

.advantages__name {
	margin-bottom: 18px;
}

.advantages__pagination {
	display: none;
}

.speakers__title {
	margin-bottom: 40px;
	text-align: center;
}

.speakers__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 620fr 180fr 410fr;
	grid-template-columns: 620fr 180fr 410fr;
	gap: 30px;
}

.speakers__card {
	padding: 40px;
	border-radius: 30px;
	background-color: #2c2d2e;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.speakers__card::after {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	background: -webkit-gradient(linear, left bottom, left top, from(#0077ff), color-stop(120%, #7cedf8));
	background: linear-gradient(0deg, #0077ff 0%, #7cedf8 120%);
	opacity: 0;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	pointer-events: none;
}

.speakers__card:hover::after {
	opacity: 1;
}

.speakers__card:nth-child(4n + 1) {
	grid-column: span 2;
}

.speakers__card:nth-child(4n + 4) {
	grid-column: span 2;
}

.speakers__popup {
	display: none;
	padding: 32px;
	background-color: #2c2d2e;
	border-radius: 30px;
	color: #fff;
	width: 100%;
	max-width: 640px;
}

.speakers__popup .f-button.is-close-btn {
	top: 25px !important;
	right: 25px !important;
	--f-button-svg-stroke-width: 4;
	--f-button-bg: rgba(0, 0, 0, 0.3) !important;
}

.speakers__popup-title {
	margin-bottom: 12px;
	padding-right: 40px;
}

.speakers__card-title {
	margin-bottom: auto;
}

.speakers__author {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 16px;
	margin-top: 54px;
}

.speakers__author-photo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 47px;
	height: 47px;
	min-width: 47px;
	border-radius: 50%;
	overflow: hidden;
}

.speakers__author-photo img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

.speakers__btn {
	display: none;
	margin-top: 32px;
}

.speakers__author-position {
	font-size: 13px;
	line-height: 110%;
	margin-top: 5px;
}

.location__wrapper {
	background-image: url(../img/location/bg.png);
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: left center;
	background-color: #005eff;
	padding: 72px 300px;
	border-radius: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.location__btn {
	margin-top: 48px;
	position: relative;
}

.location__btn svg {
	position: absolute;
	top: calc(100% - 10px);
	left: calc(100% - 5px);
}

.location__desc {
	margin-top: 20px;
	text-align: center;
}

.location__title-underline {
	position: relative;
}

.location__title-underline svg {
	position: absolute;
	bottom: -5px;
	left: 0;
}

.fancybox__slide {
	padding: 0;
}

.popup {
	border-radius: 30px;
}


.br-mobile {
	display: none;
}

@media screen and (max-width: 1200px) {
	.location__wrapper {
		background-image: none;
		padding: 72px;
	}
}

@media screen and (max-width: 1024px) {
	.advantages__slider {
		overflow: visible;
	}

	.advantages__pagination {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 16px;
		margin-top: 20px;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.advantages__pagination .swiper-pagination-bullet {
		-webkit-transition: all ease 0.5s;
		transition: all ease 0.5s;
		background-color: #a5a7ad;
		margin: 0 !important;
	}

	.speakers__wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 12px;
	}
}

@media screen and (max-width: 768px) {
	.br-desktop {
		display: none;
	}

	.br-mobile {
		display: block;
	}

	.section {
		padding: 20px 0;
	}

	.container {
		padding: 0px 16px;
	}

	.text-60 {
		font-size: 38px;
		line-height: 110%;
	}

	.text-46 {
		font-size: 32px;
		line-height: 110%;
	}

	.text-30 {
		font-size: 24px;
		line-height: 120%;
	}

	.text-28 {
		font-size: 24px;
		line-height: 120%;
	}

	.text-20 {
		font-size: 18px;
		line-height: 120%;
	}

	.btn {
		padding: 9px 24px;
		border-radius: 12px;
	}

	.entrance__wrapper {
		padding-bottom: 140px;
	}

	.entrance__bg {
		min-width: 0;
		left: unset;
		top: unset;
		bottom: 0;
		right: 0;
		-webkit-transform: translateY(60%);
		transform: translateY(60%);
		max-height: 300px;
	}

	.entrance__logo {
		margin-bottom: 28px;
	}

	.entrance__desc {
		display: none;
	}

	.entrance__title {
		max-width: 350px;
	}

	.entrance__title-underline svg {
		width: 100%;
		bottom: -2px;
	}

	.entrance__title-char svg {
		width: 18px;
		height: 25px;
		margin-bottom: -2px;
	}

	.entrance__btn {
		margin-top: 40px;
	}

	.advantages__slide {
		padding: 24px 24px 32px;
	}

	.advantages__icon {
		margin-bottom: 32px;
	}

	.advantages__icon svg {
		width: 70px;
		height: 70px;
	}

	.speakers__title {
		margin-bottom: 24px;
		text-align: center;
	}

	.speakers__card {
		padding: 24px;
	}

	.speakers__author {
		margin-top: 32px;
	}

	.speakers__author-photo {
		min-width: 43px;
		width: 43px;
		height: 43px;
	}

	.speakers__btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-size: 14px;
	}

	.speakers__popup {
		padding: 16px 16px 40px;
		margin-top: auto;
		border-radius: 24px 24px 0 0;
		position: relative;
	}

	.speakers__popup::after {
		display: block;
		content: '';
		width: 40%;
		height: 5px;
		border-radius: 100px;
		background-color: #fff;
		position: absolute;
		bottom: 10px;
		left: 50%;
		transform: translateX(-50%);
	}

	.speakers__popup-title {
		font-size: 18px;
		line-height: 120%;
	}

	.speakers__popup .f-button.is-close-btn {
		top: 16px !important;
		right: 16px !important;
		--f-button-width: 28px;
		--f-button-height: 28px;
	}

	.speakers__popup .f-button.is-close-btn svg {
		width: 14px;
		height: 14px;
	}

	.location__wrapper {
		padding: 24px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	.location__btn {
		margin-top: 32px;
		width: 100%;
	}

	.location__btn svg {
		-webkit-transform: rotate(270deg);
		transform: rotate(270deg);
		top: -20px;
		left: calc(100% - 10px);
	}

	.location__desc {
		margin-top: 16px;
		text-align: left;
	}

	.location__desc p:not(:last-child) {
		margin-bottom: 0.8em;
	}

	.location__title-underline svg {
		width: 100%;
	}

	.footer__text {
		font-size: 13px;
		line-height: 18px;
	}

	.fancybox__slide::before,
	.fancybox__slide::after {
		margin: 0;
	}
}

.smart-captcha {
	display: none;
}

.fancybox__backdrop {
	background-color: rgba(0, 0, 0, 0.6);
}

.popup__info-desc {
	margin-top: 20px;
}