@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:ital,wght@0,100..900;1,100..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Radio+Canada+Big:ital,wght@0,400..700;1,400..700&display=swap');
html{
	height: 100%;
	width: 100%;
	margin: 0;
	-webkit-overflow-scrolling:touch;
}
body{
	margin: 0;
	color: #000000;
	font-size: 14px;
	line-height: 1.2;
	font-family: "Inter", sans-serif;
	position: relative;
	width: 100%;
	-webkit-overflow-scrolling: touch;
	background: #fff;
	min-height: 100%;
	min-width: 320px;
}
.fonts{
	font-family: "Inter Tight", sans-serif;
	font-family: "Radio Canada Big", sans-serif;

}
body.active{
	overflow: hidden;
}
h1, h2, h3, h4, h5, h6{
	margin: 0 0 30px 0;
	font-weight: 700;
	color: #040404;
	line-height: 1.2;
}
h1{
	font-weight: 700;
	font-size: 72px;
}
h2{
	font-size: 48px;
}
h3{
	font-size: 30px;
}
h4{
	font-size: 24px;
}
h5{
	font-size: 20px;
}
h6{
	font-size: 16px;
}
p {
	font-weight: 400;
	font-size: 16px;
	color: #fff;
	line-height: normal;
	margin: 0 0 25px 0;
}
p strong{
	font-weight: 500;
	font-size: 20px;
	line-height: 1.2;
}
p a{
	text-decoration: underline;
	text-decoration-skip-ink: none;
	color: #fff;
}
p a:hover{
	text-decoration: none;
}
p:last-child{
	margin-bottom: 0px;
}
img{
	display: block;
	max-width: 100%;
}
a {
	outline: none;
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
}
ul{
	padding: 0;
	margin: 0;
}
li{
	list-style: none;
}
/*== buttons
---------------------------------*/
button{
	margin:0;
	padding:0;
	border:none;
	background:none;
	cursor:pointer;
	overflow:visible;
	width:auto;
	outline: none;
	box-shadow: none;
	font-family: inherit;
}
button:hover , button:focus , button:active{
	outline: none;
	text-decoration: none;
}
/*== inputs
---------------------------------*/
input{
	outline: none;
	border: none;
}

textarea{
	height: 80px;
	outline: none;
}
.b-input-text{
	width: 100%;
	height: 52px;
	background: rgba(255, 255, 255, 0.42);
	mix-blend-mode: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #333333;
	transition: 0.3s;
	padding: 0 15px 0 33px;

}
.b-input-text::-webkit-input-placeholder{
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #A7A7A7;
}
.b-input-text:-moz-placeholder{
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #A7A7A7;
}
.b-input-text.error{
	border-color: #EF4231;
}
textarea{
	height: 80px;
	outline: none;
	resize: none;
}
.b-textarea{
	width: 100%;
	height: 180px;
	background: #FFFFFF;
	border: 1px solid #CAD1D7;

	border-radius: 10px;
	padding: 20px 30px;
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #888888;	
}
.b-textarea::-webkit-input-placeholder{
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #888888;	
}
.b-textarea:-moz-placeholder{
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #888888;		
}
/*== checkbox , raido
---------------------------------*/
.b-checkbox{

}
.b-checkbox input[type="checkbox"]{
    display: none;
}
.b-checkbox input[type="checkbox"] + label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0;
}
.b-checkbox input[type="checkbox"] + label span{
	background: #fff;
	border: 1px solid #6e3adb;
	border-radius: 4px;
	width: 20px;
	height: 20px;
	position: relative;
	margin: 0 11px 0 0;
	flex-shrink: 0;
	cursor: pointer;
}
.b-checkbox input[type="checkbox"]:checked + label span{
	background: #fff url("../images/check.svg") center no-repeat;
}
.b-checkbox input[type="checkbox"] + label i{
	padding: 0px 0 0 0;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.14286;
	color: #414141;
	font-style: normal;
	cursor: pointer;
}
.b-checkbox input[type="checkbox"] + label i a{
	font-weight: 600;
	font-size: 13px;
	line-height: 1.66667;
	color: #24192c;
	text-decoration: underline;
	margin: 0 0 0 5px;
}
.b-checkbox input[type="checkbox"] + label i a:hover , .b-checkbox input[type="checkbox"] + label i a:focus , .b-checkbox input[type="checkbox"] + label i a:active{
	text-decoration: none;
	opacity: 0.8;
	transition: 0.3s;
}
.b-check{
	margin: 10px 0 0 0;
}
.b-check input[type="checkbox"]{
    display: none;
}
.b-check input[type="checkbox"] + label span{
	width: 11px;
	height: 11px;
	color: rgba(36, 39, 52, 0.35);
	font-size: 11px;
	flex-shrink: 0;
	margin: 2px 4px 0 0;
	cursor: pointer;
}
.b-check input[type="checkbox"] + label{
    cursor: pointer;
    margin: 0;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}
.b-check input[type="checkbox"]:checked + label span{
	width: 11px;
	height: 11px;
	color: #333333;
}
.b-check input[type="checkbox"] + label i{
	font-style: italic;
	font-weight: 400;
	font-size: 13px;
	line-height: 1;
	text-align: right;
    color: rgba(36, 39, 52, 0.35);
	cursor: pointer;
}
.b-check input[type="checkbox"]:checked + label i{
	color: #333333;
}
/*== raido
---------------------------------*/
.b-radio{
	margin: 0 0 11px 0;
}
.b-radio input[type="radio"]{
    display: none;
}
.b-radio input[type="radio"] + label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0;
}
.b-radio input[type="radio"] + label span{
	width: 16px;
	height: 16px;
	background: #FFFFFF;
	border: 1px solid #7041D2;
	border-radius: 100%;
	transition: 0.3s;
	position: relative;
	margin: 0 10px 0 0;
	flex-shrink: 0;
	cursor: pointer;
}
.b-radio input[type="radio"] + label span:after{
	position: absolute;
	top: 50%;
	left: 50%;
	content: "";
	width: 10px;
	height: 10px;
	background: #7041D2;
	border-radius: 100%;
	transform: translate(-50% , -50%);	
	opacity: 0;
	visibility: hidden;
	transition: 0.3s;
}
.b-radio input[type="radio"]:checked + label span{
	width: 16px;
	height: 16px;
	border: 1px solid #7041D2;
	border-radius: 100%;
	transition: 0.3s;
}
.b-radio input[type="radio"]:checked + label span:after{
	opacity: 1;
	visibility: visible;
	transition: 0.3s;
}
.b-radio input[type="radio"] + label i{
	font-weight: 600;
	font-size: 14px;
	line-height: 1;
	color: #414141;
	padding: 2px 0 0 0;
	font-style: normal;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
}
select{
	outline: none;
	font-family: inherit;
}
.b-select{
	border: 1px solid #6e3adb;
	border-radius: 4px;
	width: 100%;
	height: 36px;
	padding: 0 14px;
	font-weight: 400;
	font-size: 14px;
	color: #414141;
	cursor: pointer;
	background: #ffffff url(../images/select-arrow.svg);
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 13px;
	-webkit-appearance: none;
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: '';
	-ms-appearance: none;
	appearance: none !important;
}
/* End Total css ====*/
.container{
	max-width: 1010px;
	margin: 0 auto 0;
	padding: 0 15px;

}
*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.b-container{
	position: relative;
}
.main_page{
	background: #34198C;
	min-height: 100vh;
}
.b-mobile{
	display: none;
}
.preloader{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #34198c;
	z-index: 50;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: background 1.5s ease;
}
.preloader__logo{
	text-align: center;
}
.preloader__logo svg{
	transform: scale(2);
	opacity: 0;
	transition: transform 1s ease, opacity 1s ease;
}
.preloader__logo span{
	display: block;
	font-family: "Radio Canada Big", sans-serif;
	font-weight: 400;
	font-size: 24px;
	color: #fff;
	opacity: 0;
	transition: opacity 1s ease;
}


/* -------------- page index -------------- */
.header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 20;
	padding: 40px 0 0 0;
}
.header__container{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 30px;
	background: rgba(110, 58, 219, 0.45);
	border-radius: 20px;
}
.logo{
	filter: grayscale(8) brightness(1.5);
	transition: 0.3s;
}
.logo:hover{
	filter: grayscale(0) brightness(1);
}
.nav ul{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 11px;
}
.nav ul li{

}
.nav ul li a{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	font-family: "Inter Tight", sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 3.1875;
	letter-spacing: 0.04em;
	text-align: center;
	color: #fff;
	padding: 0 23px;
	border-radius: 44px;
	transition: 0.3s;
	text-decoration: none;
}
.nav ul li a:hover{
	background: #22226b;
	color: #ffffff;
}
.nav ul li a.active{
	color: #ffa6a7;
	background: transparent;
}
.nav .header__right{
	display: none;
}
.header__right{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px;
}
.header__contacts{

}
.header__contacts-item{
	font-family: "Radio Canada Big", sans-serif;
	display: block;
	font-weight: 500;
	font-size: 12px;
	line-height: 1.5;
	text-align: right;
	color: rgba(255, 255, 255, 0.8);
	text-decoration: none;
}
.header__btn{
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #7041d2;
	border-radius: 30px;
	background: #fff;
	width: 127px;
	height: 50px;
	gap: 0 7px;
	font-weight: 600;
	font-size: 14px;
	line-height: 3.64286;
	color: #054e93;
	transition: 0.3s;
}
.header__btn svg{
	width: 16.7px;
}
.header__btn:hover{
	background: #22226b;
	color: #fff;
	border-color: #22226b;
}
.header__btn:hover svg path{
	stroke: #fff;
}

/* -------------- main -------------- */
.main{
	padding: 210px 0 150px 0;
	position: relative;
}
video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover; /* Видео растягивается, сохраняя пропорции */
	z-index: 1; /* Отправляем видео на задний план */
}

.main .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 2;
}
.main__left{

}
.main__row{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 45px;
	margin-bottom: 40px;
}
.main__title{
	font-weight: 900;
	font-size: 50px;
	color: #fff;
}
.main__right{
	max-width: 350px;
	flex-shrink: 0;
	padding: 40px;
	background: rgba(37, 37, 171, 0.9);
	border-radius: 20px;
}
.main__right svg{
	margin-bottom: 40px;
}
.main__right p{
	font-weight: 400;
	font-size: 16px;
	line-height: inherit;
	color: #fff;
	margin: 0 0 15px 0;
}
.main__right p:last-child{
	margin: 0;
}
.main__right p b{
	font-weight: 700;
	color: #a7d98a;
}

.main__right , .main__left{
	opacity: 0;
	visibility: hidden;
	transition: 1s;
}
.main__right.show , .main__left.show{
	opacity: 1;
	visibility: visible;
}
/* -------------- section -------------- */
.section{
	padding: 80px 0;
}
.title{
	margin-bottom: 40px;
}
.title__item{
	font-weight: 900;
	font-size: 40px;
	color: #cae993;
}
.info{
	background: #071a61;
}
.row{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	justify-content: start;
	align-content: start;
	gap: 40px 54px;
}
.info__item{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px;
}
.info__item-img{
	flex-shrink: 0;
}
.info__item-text b{
	display: block;
	font-weight: 700;
	font-size: 18px;
	color: #cae993;
	margin-bottom: 10px;
}
.info__item-text p{
	font-weight: 400;
	font-size: 16px;
	color: #fff;
}
/* -------------- experience -------------- */
.experience{

}
.experience .title{
	max-width: 450px;
}
.experience__content{
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
	gap: 0 85px;
}
.experience__img{
	flex-shrink: 0;
}
.experience__text{

}
.experience .secondary-btn:not(:last-child){
	margin-bottom: 25px;
}
.secondary-btn{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 30px;
	gap: 0 7px;
	height: 50px;
	padding: 0 22px;
	background: #fff;
	font-family: "Inter Tight", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1;
	color: #000645;
	text-decoration: none;
}
.secondary-btn:hover{
	background: #22226b;
	color: #fff;
}
.secondary-btn:hover svg path{
	stroke: #fff;
}
.secondary-btn:hover svg circle{
	stroke: #fff;
}
/* -------------- footer -------------- */
.footer{
	background: #fff;
	padding: 26px 0;
}
.footer .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.copyright{
	font-weight: 500;
	font-size: 12px;
	color: #717171;
}
.footer__nav ul{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 32px;
}
.footer__nav ul li a{
	font-weight: 500;
	font-size: 12px;
	line-height: 1;
	text-decoration: underline;
	text-decoration-skip-ink: none;
	text-align: right;
	color: #717171;
}
.footer__nav ul li a:hover{
	color: #6b38d7;
}

/* -------------- about_page -------------- */
.about_page{
	background: #005a2d;
}
.topBlock{
	padding: 210px 0 80px 0;
}
.block .container{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0 49px;
}
.block .main__title{
	margin: 0 0 40px 0;
}
.block p{
	max-width: 489px;
}
.block p b{
	font-weight: 700;
	color: #a7d98a;
}
.block__right{
	flex-shrink: 0;
}
.block__xs{
	display: none;
}
/* -------------- aboutSection -------------- */
.aboutSection{

}
.aboutSection .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 40px 30px;
}
.aboutSection__text{
	max-width: 574px;
}
.aboutSection__img{
	max-width: 300px;
	flex-shrink: 0;
}
.aboutSection_1{
	background: #007948;
}
.aboutSection_2{
	background: #096d2c;
}
.aboutSection_3{
	background: #005d43;
}
.aboutSection_4{
	background: #004934;
}
/* -------------- support_page -------------- */
.support_page{
	background: #0178a3;
}
.supportOrder{
	background: #054e93;
}
.supportOrder .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.supportOrder__left{
	max-width: 479px;
}
.supportOrder__left .title{
	max-width: 376px;
}
.supportOrder__form{
	background: #6060cb;
	border-radius: 20px;
	padding: 40px;
	width: 100%;
	max-width: 350px;
}
.supportOrder__input{
	margin-bottom: 12px;
}
.supportOrder__input input{
	border: 1px solid #6e3adb;
	border-radius: 4px;
	width: 100%;
	height: 36px;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #414141;
	padding: 0 10px;
}
.supportOrder__input input::-webkit-input-placeholder{
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #414141;
}
.supportOrder__input input:-moz-placeholder{
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #414141;
}
.supportOrder__form .secondary-btn{
	width: 100%;
	color: #054e93;
}
.supportOrder__form .secondary-btn:hover{
	color: #fff;
}

.connect{
	background: #1d2e79;
}
.connect .title{

}
.connect .title__item{
	margin-bottom: 40px;
}
.connect__item{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px;
}
.connect__item-img{
	flex-shrink: 0;
	max-width: 125px;
}
.connect__item-text{

}
.connect__item-text p{
	font-weight: 400;
	font-size: 16px;
	color: #fff;
}
.connect__item-text p b{
	display: block;
	font-weight: 700;
	font-size: 18px;
	color: #cae993;
	margin-bottom: 5px;
}
.connect .col:nth-child(2) .connect__item{
	align-items: flex-start;
}
.connect__item .secondary-btn{
	width: 100%;
	max-width: 215px;
	border: 1px solid #7041d2;
	color: #7041d2;
}
.connect__item .secondary-btn:hover{
	color: #fff;
}

.questions{
	background: #054e93;
}
.questions__item{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px;
}
.questions__item-text{
	max-width: 320px;
}

/* Absolute Center Spinner */
.loading {
	position: fixed;
	z-index: 999;
	height: 2em;
	width: 2em;
	overflow: show;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

/* Transparent Overlay */
.loading:before {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(rgba(20, 20, 20, .8), rgba(0, 0, 0, .8));

	background: -webkit-radial-gradient(rgba(20, 20, 20, .8), rgba(0, 0, 0, .8));
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
	/* hide "loading..." text */
	font: 0/0 a;
	color: transparent;
	text-shadow: none;
	background-color: transparent;
	border: 0;
}

.loading:not(:required):after {
	content: '';
	display: block;
	font-size: 10px;
	width: 1em;
	height: 1em;
	margin-top: -0.5em;
	-webkit-animation: spinner 1000ms infinite linear;
	-moz-animation: spinner 1000ms infinite linear;
	-ms-animation: spinner 1000ms infinite linear;
	-o-animation: spinner 1000ms infinite linear;
	animation: spinner 1000ms infinite linear;
	border-radius: 0.5em;
	-webkit-box-shadow: rgba(255, 255, 255, 0.75) 1.5em 0 0 0, rgba(255, 255, 255, 0.75) 1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) 0 1.5em 0 0, rgba(255, 255, 255, 0.75) -1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) -1.5em 0 0 0, rgba(255, 255, 255, 0.75) -1.1em -1.1em 0 0, rgba(255, 255, 255, 0.75) 0 -1.5em 0 0, rgba(255, 255, 255, 0.75) 1.1em -1.1em 0 0;
	box-shadow: rgba(255, 255, 255, 0.75) 1.5em 0 0 0, rgba(255, 255, 255, 0.75) 1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) 0 1.5em 0 0, rgba(255, 255, 255, 0.75) -1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) -1.5em 0 0 0, rgba(255, 255, 255, 0.75) -1.1em -1.1em 0 0, rgba(255, 255, 255, 0.75) 0 -1.5em 0 0, rgba(255, 255, 255, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-moz-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-o-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.blur {
	filter: blur(10px);
}

.have-order, .no-order {
	display: none;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus {
	box-shadow: none !important;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel {
	color: #666 !important;
}

button:disabled {
	pointer-events: none;
	opacity: 0.5;
}

.btn-live-chat {
	text-decoration: none;
}

.b-order-top__cancelled {
	margin: 0 0 63px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}