@font-face {
  font-family: Changan;
  src: url("/static/fonts/Changan-Light.woff2");
  font-weight: 300;
}

@font-face {
  font-family: Changan;
  src: url("/static/fonts/Changan-Regular.woff2");
  font-weight: normal;
}

@font-face {
  font-family: Changan;
  src: url("/static/fonts/Changan-Bold.woff2");
  font-weight: bold;
}

@font-face {
  font-family: Helios;
  src: url("/static/fonts/Helios-Light.woff2");
  font-weight: 300;
}

@font-face {
  font-family: Helios;
  src: url("/static/fonts/Helios-Regular.woff2");
  font-weight: normal;
}

@font-face {
  font-family: Helios;
  src: url("/static/fonts/Helios-Bold.woff2");
  font-weight: bold;
}

:root{
	--blue:#0B457F;
	--light-blue:#EDF3FD;
	--red:#E30613;
}

html{height:100%;}
body{position:relative;min-height:100%;padding-bottom:calc(150px + 4vw);}

*{margin:0;padding:0;font-family:Changan;box-sizing:border-box;}
a{text-decoration:none;transition:0.2s;color:var(--blue);}
a:hover{text-decoration:none;}
img{display:block;max-width:100%;height:auto;}
ul{margin-left:20px;margin-bottom:25px;}
ul li{margin-bottom:15px;}

.content-width{max-width:1560px;margin:0 auto;padding:0 20px;}
.text{max-width:970px;margin:0 auto;line-height:1.4;color:var(--blue);}
.opacity55{opacity:0.55;}
.text p{margin-bottom:25px;}
.text a:not(.btn){border-bottom:1px solid;line-height:1;}
.btns_block{display:flex;gap:10px;}
.btn{background:var(--blue);border:1px solid var(--blue);color:#fff;border-radius:10px;padding:20px 30px;text-transform:uppercase;font-size:14px;font-weight:bold;text-decoration:none;min-width:15.5vw;text-align:center;line-height:1;white-space:nowrap;cursor:pointer;display:inline-block;}
.btn_small{padding:10px 20px;font-size:12px;min-width:auto;}

.btn_transparent{background:none;border-color:#fff;}
.btn_transparent:hover{background:rgba(255,255,255,0.15);}

.btn_white{background:#fff;color:var(--blue);}
.btn_white:hover{background:rgba(255,255,255,0.8);}

.none{display:none;}
.fullwidth{width:100% !important;}
.cur_ico:after{content:' ₸';}

.location_icon{display:flex;align-items:center;gap:15px;margin-left:39px;}
.location_icon:before{content:"";background:url(/static/img/svg/location.svg) no-repeat center;width:24px;min-width:24px;height:25px;display:block;margin-left:-39px;}

.calendar_icon{background:url(/static/img/svg/calendar.svg) no-repeat left center;padding-left:45px;line-height:25px;display:inline-block;}

.map_icon{display:inline-flex;align-items:center;gap:15px;margin-left:39px;}
.map_icon:before{content:"";background:url(/static/img/svg/map.svg) no-repeat center;width:24px;min-width:24px;height:25px;display:block;margin-left:-39px;}

.mail_icon{display:inline-flex;align-items:center;gap:15px;margin-left:39px;}
.mail_icon:before{content:"";background:url(/static/img/svg/mail.svg) no-repeat center;width:24px;min-width:24px;height:15px;display:block;margin-left:-39px;}

/* table */
table{border-collapse:collapse;width:100%;margin-bottom:25px;}
table th,table td{padding:15px 25px;border:1px solid rgba(11, 69, 127, 0.15);}
table th{background:var(--light-blue);color:var(--blue);}

.table caption{border-bottom:2px solid rgba(11,69,127);padding:22px 45px 18px 45px;text-align:left;font-weight:bold;font-size:24px;text-transform:uppercase;}
.table td{padding:20px 2vw;font-size:20px;vertical-align:top;border-bottom:1px solid rgba(11,69,127,0.25);}
.table td p{margin-bottom:10px;}
.table .calendar_icon{display:table-caption;}
.table .location_icon{opacity:0.55;font-size:16px;margin-bottom:0;}
.table .location_icon + a{font-size:12px;text-transform:uppercase;color:var(--blue);border-bottom:1px solid;font-weight:bold;margin-left:35px;}

.table.no-v-border caption{padding:22px 0 18px 45px;}
.table.no-v-border td{padding:20px 0;border-left:0;border-right:0;}


/* Header */
header{position:fixed;top:0;z-index:2;width:100%;background:#fff;padding:20px 0;color:var(--blue);}
header a{color:var(--blue);font-size:14px;text-transform:uppercase;text-decoration:none;font-weight:bold;}
header .content-width{position:relative;display:flex;justify-content:space-between;align-items:center;}
header .logo img{width:8.6vw;max-width:165px;}
header nav{display:flex;justify-content:space-between;gap:1.7vw;margin:0 2vw;}
header .header_links{display:flex;gap:30px;align-items:center;}
header .langs{display:flex;line-height:1;}
header .langs a:not(:last-child){border-right:1px solid;margin-right:10px;padding-right:10px;}
header .btn{padding:10px 20px;font-size:12px;min-width:auto;}

main{padding-top:70px;}

.main_visual{position:relative;width:100%;height:45vw;display:flex;align-items:center;justify-content:center;}
.main_visual picture{position:absolute;left:0;top:0;width:100%;height:100%;background:#000;}
.main_visual picture img{width:100%;height:100%;object-fit:cover;opacity:0.75;}
.main_visual .text_block{position:relative;left:0;}
.main_visual .text_block .content-width{display:flex;flex-direction:column;gap:3vw;}
.main_visual .text_block h1{font-size:4.2vw;color:#fff;text-transform:uppercase;max-width:52%;line-height:1;font-weight:bold;}
.main_visual .text_block .event_data{color:#fff;font-size:20px;display:flex;line-height:0.7;}
.main_visual .text_block .event_data div:not(:last-child){border-right:1px solid rgba(255,255,255,0.6);margin-right:30px;padding-right:30px;}
.main_visual .text_block .event_data p{margin-top:20px;font-size:24px;font-weight:bold;text-transform:uppercase;}
.main_visual .text_block .btn_white{border-color:#fff;}


.block_title{color:var(--blue);font-size:16px;text-transform:uppercase;font-weight:bold;margin-bottom:20px;}
.block_title:before{content:"";display:inline-block;width:11px;height:11px;background:var(--blue);border-radius:2px;margin-right:15px;}
h2, .h2{font-size:34px;color:var(--blue);font-weight:bold;text-transform:uppercase;margin-bottom:20px;}
h3, .h3{font-size:24px;color:var(--blue);font-weight:bold;text-transform:uppercase;margin-bottom:20px;}


.about{padding-bottom:35vw;padding-top:5vw;background-position:bottom center;background-size:100% auto;background-repeat:no-repeat;}

.program{background:#F7F7F7;padding:5vw 0;display:flex;justify-content:center;}
.program .content-width{background:#fff;padding:4vw 20px;border-radius:35px;width:100%;margin-left:20px;margin-right:20px;}
.program .table td:first-child{width:10.4vw;min-width:10.4vw;padding-right:2vw;}
.program .table td:nth-child(3){width:12vw;font-size:12px;color:#1D1D1D;}


#map{width:100%;height:45vw;min-height:700px;}
.location{position:relative;}
.location .text{position:absolute;max-width:585px;padding:60px;top:5vw;background:#fff;padding:3vw;border-radius:20px;}
.location .text h4{margin-bottom:25px;font-size:20px;}
.location .text p{margin-bottom:15px;}


.route{background:var(--blue);color:#fff;padding-top:4vw;}
.route .content-width{display:flex;gap:4vw;}
.route .block_title{color:#fff;}
.route .block_title:before{background:#fff;}
.route .rubric_image{max-width:50%;min-width:45%;}
.route .text{color:#fff;}
.route .text h2{color:#fff;}
.route .table td{border-left:2px solid #fff;padding:0 0 0 30px;width:50%;line-height:1;}
.route .table td p:first-child{font-size:14px;font-weight:300;text-transform:uppercase;margin-bottom:15px;line-height:1.2;}
.route .table td p:last-child{margin-bottom:0;font-size:34px;font-weight:bold;text-transform:uppercase;}

.route .content-width:nth-child(2){border-top:1px solid rgba(255,255,255,0.25);margin-top:4vw;}
.route .items{display:flex;gap:3vw;align-items:center;margin:2vw 0;}
.route .items .item{display:flex;align-items:center;gap:1vw;}
.route .items .item .item_name{font-size:2.5vw;font-weight:bold;white-space:nowrap;}
.route .items .item .item_note{font-size:0.84vw;font-weight:300;text-transform:uppercase;}
.route .items .sep{width:1px;min-width:1px;height:80%;background:#fff;opacity:0.25;}


.requirements{padding:5vw 0 3vw;}
.requirements .text{text-align:center;}
.requirements .items{display:flex;gap:20px;flex-wrap:wrap;justify-content:space-evenly;margin-top:4vw;}
.requirements .items .item{background:#F5F5F5;border-radius:15px;padding:2vw 3vw;width:calc(33.3333% - 20px);min-width:30%;color:var(--blue);}
.requirements .items .item_icon{margin-bottom:35px;}
.requirements .items .item_name{font-size:24px;text-transform:uppercase;margin-bottom:15px;}
.requirements .items .item_note{font-size:14px;opacity:0.55;}


.faq{padding:5vw 0 5vw;background:#D9D9D9;}
.faq .text{text-align:center;}
.faq .items{text-align:left;}
.faq .items .item{border-bottom:2px solid var(--blue);padding:20px 0;}
.faq .items .item .question{font-size:20px;font-weight:bold;position:relative;cursor:pointer;}
.faq .items .item .question:after{content:"+";display:block;width:30px;line-height:30px;text-align:center;border-radius:5px;color:#fff;font-weight:400;font-size:24px;position:absolute;right:0;top:0;background:var(--blue);}
.faq .items .item.active .question:after{content:"-";}
.faq .items .item .answer{display:none;padding-top:20px;}
.faq .items .item .answer p:last-child{margin-bottom:10px;}


.partners{padding:5vw 0 5vw;}
.partners .text{text-align:center;}
.partners .items{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;margin-top:4vw;}
.partners .items .item{border:1px solid #D8D8D8;border-radius:15px;display:flex;padding:25px 35px;justify-content:center;align-items:center;width:236px;height:135px;}


footer{position:absolute;width:100%;bottom:0;background:#1D1D1D;padding:3vw 0 2vw;color:#fff;text-align:center;font-size:12px;}
footer nav{text-align:center;margin:2vw 0;display:flex;align-items:center;justify-content:center;}
footer nav a{color:#fff;font-size:12px;}
footer nav a:not(:last-child):after{content:"";width:1px;height:10px;background:#fff;margin:0 15px -2px;display:inline-block;}
footer nav a:hover{opacity:0.5;}

/* PAGES */

.page_header{background:var(--blue);padding:4vw;margin-bottom:4vw;}
.page_header h1{color:#fff;text-align:center;margin:0;}

/* FORM */

.form{display:flex;gap:40px;flex-wrap:wrap;}
.form .row{width:calc(50% - 20px);}
.form .row > *:last-child{margin-bottom:0;}
.form .row label{color:rgba(11,69,127,0.55);display:block;margin-bottom:15px;}

.form .row input,.form .row .input,
.form .row select{border:1px solid rgba(11,69,127,0.25);background:#fff;color:var(--blue);border-radius:10px;padding:0 30px;font-size:14px;text-transform:uppercase;font-weight:bold;width:100%;display:block;height:54px;line-height:54px;margin-bottom:10px;position:relative;}

.form .row input:focus-visible,.form .row select:focus-visible{outline:none;box-shadow:0 0 10px rgba(11,69,127,0.1);}

.form .row .select{position:relative;width:100%;margin-bottom:10px;}
.form .row .select select{width:100%;margin-bottom:0;-webkit-appearance: none;appearance: none;}
.form .row .select:after{content:"";background:url(/static/img/svg/select_arrow.svg) no-repeat center;display:block;width:12px;height:7.5px;top:50%;margin-top:-4px;right:15px;position:absolute;}

.form .row.error input, .form .row.error .input,
.form .row.error select, .form .row.error .select{border-color:rgba(227,6,19,0.35);box-shadow:0 0 10px rgba(227, 6, 19, 0.1);}

.form .row.birthday .flex .select:nth-child(1){max-width:110px;padding-right:0;}
.form .row.birthday .flex .select:nth-child(1) select{padding-left:15px;}
.form .row.birthday .flex .select:nth-child(2){padding-right:0;}
.form .row.birthday .flex .select:nth-child(3){max-width:115px;padding-right:0;}

.form .row .checkbox{display:flex;gap:10px;align-items:center;}
.form .row .checkbox input{width:20px;height:20px;margin:0;}
.form .row .checkbox label{display:inline;margin:0 0 -2px 0;cursor:pointer;color:var(--blue);}

.form .row .disabled,.form .row :disabled{background:#f7f7f7;}

.form .row ul{margin:0;}
.form .row li{text-align:center;cursor:pointer;margin:0;}
.form .row li.active{background:var(--blue);color:#fff;cursor:pointer;}

.form .row .flex{display:flex;gap:12px;justify-content:space-between;}

.form .row .note{font-size:12px;color:rgba(11,69,127,0.55);}
.form .row a{border-bottom:1px solid;}
.form .row a:hover{border-color:transparent;}

.form .errorMessage{font-size:12px;color:#E30613;background:url(/static/img/svg/error.svg) no-repeat left top;padding:1px 0 1px 25px;margin:10px 0;}

.checkbox_list{width:100%;margin-top:20px;}
.checkbox_list .row{width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;border:1px solid rgba(11, 69, 127, 0.15);padding:20px 30px;margin-bottom:15px;border-radius:10px;color:var(--blue);font-size:16px;font-weight:700;text-transform:uppercase;}
.checkbox_list .row.active{background:#EDF3FD;overflow:hidden;}
.checkbox_list .dop_text{padding:50px 90px;border:1px solid rgba(11, 69, 127, 0.15);color:var(--blue);position:relative;margin:0 -31px;bottom:-21px;display:none;width:100%;background:#fff;width:calc(100% + 62px);font-weight:normal;text-transform:none;}
.checkbox_list .dop_text h4{margin-bottom:15px;}
.checkbox_list .dop_text p{margin-bottom:15px;}
.checkbox_list .dop_text ul{margin-left:20px;margin-bottom:25px;}
.checkbox_list .dop_text li{text-align:left;margin-bottom:5px;}
.checkbox_list .dop_text :last-child{margin-bottom:0;}


/* REG */
.event_reg .h3{border-bottom:2px solid;padding-bottom:20px;margin-bottom:50px;background:url(/static/img/svg/flag.svg) no-repeat left top;padding-left:40px;width:100%;}
.event_reg .h3.personal_data{background-image:url(/static/img/svg/account.svg);margin-bottom:0;}

.content .content-width{display:flex;gap:6vw;}
.left_col{width:100%;}
.right_col{width:360px;min-width:360px;}
.right_col .fixed_content{position:sticky;top:100px;border:1px solid #0B457F26;box-shadow:0 0 25px rgba(11, 69, 127, 0.05);color:var(--blue);border-radius:15px;overflow:hidden;}
.right_col .fixed_content .checkout-info{padding:30px;}
.right_col .fixed_content .checkout-info p{margin-bottom:15px;}
.right_col .fixed_content .checkout-info p:last-child{margin-bottom:0;}
.right_col .fixed_content .checkout-total{padding:30px;background:#EDF3FD;}


/* PROFILE */
.page_profile table td{text-align:center;font-size:16px;color:var(--blue);}
.page_profile table td:first-child{text-align:left;font-weight:bold;}
.page_profile .content > .content-width{flex-direction:row-reverse;}

.account-nav{background:#fff;padding:30px 0;}
.account-nav .item{padding:0 40px;}
.account-nav .item a{display:block;color:var(--blue);font-size:14px;font-weight:bold;text-transform:uppercase;padding:20px 0;border-bottom:1px solid var(--light-blue);padding-left:35px;background-repeat:no-repeat;background-position:left center;}
.account-nav .item.account a{background-image:url(/static/img/svg/account.svg);}
.account-nav .item.settings a{background-image:url(/static/img/svg/settings.svg);}
.account-nav .item.races a{background-image:url(/static/img/svg/cycle.svg);}
.account-nav .item.logout a{color:var(--red);background-image:url(/static/img/svg/logout.svg);}

.account-nav .item:not(.active) a:hover{opacity:0.6;}
.account-nav .item.active{background:var(--light-blue);margin-top:-1px;}
.account-nav .item.active a,.account-nav .item:last-child a{border-bottom:0;}

/* results */
#results .filters{display:none;}
#results .filter_block{justify-content:space-between;flex-wrap:nowrap;}


@media screen and (max-width:768px)
{
	body{font-size:12px;}
	
	.btn{padding:15px 22px;border-radius:8px;font-size:10px;min-width:auto;width:100%;}
	.btn_small{padding:12px 18px;}
	
	h2, .h2{font-size:16px;margin-bottom:15px;}
	h3, .h3{font-size:15px;margin-bottom:15px;}
	
	.block_title{font-size:10px;margin-bottom:5px;}
	
	.page_header{padding:20px;margin-bottom:25px;}
	
	header{padding:15px 0;}
	header .logo img{width:auto;max-width:130px;}
	header nav{display:none;}
	header .header_links a{display:none;}
	header .header_links a:first-child{display:inline;}
	
	main{padding-top:50px;}
	
	.main_visual{height:480px;align-items:end;padding-bottom:25px;}
	.main_visual .text_block h1{font-size:30px;max-width:none;}
	.main_visual .text_block .event_data{font-size:14px;}
	.main_visual .text_block .event_data div:not(:last-child){margin-right:20px;padding-right:20px;}
	.main_visual .text_block .event_data p{font-size:12px;margin-top:10px;line-height:1.2;}	
	
	.program{padding:25px 0;background:#fff;}
	.program .content-width{margin:0;padding:0 20px;}
	.program .table td{width:100%;}
	.program .table td:first-child{font-size:12px;padding-bottom:0;width:100%;}
	.program .table td:nth-child(3){width:100%;}
	.program .table td + td{padding-top:5px;}
	
	.table .location_icon{font-size:12px;}
	.table .location_icon + a{font-size:10px;}
	
	.calendar_icon{background-size:15px auto;}
	.location_icon{background-size:15px auto;gap:8px;}
	
	
	table.table th{display:none;}
	table.table caption{font-size:12px;}
	table.table td{display:block;border-width:0;width:100%;padding-right:0;padding-left:0;font-size:14px;}
	table.table td:last-child{border-bottom-width:1px;}
	table.table.no-v-border caption{padding:8px 0 5px 25px;}
	table.table.no-v-border td{padding:10px 0 15px;}
	
	
	#map{height:400px;min-height:400px;}
	.location .text{position:relative;top:0;padding:25px 0;}
	.location .text h4{font-size:14px;margin-bottom:15px;}
	.location .text p{margin-bottom:10px;}
	
	.route{padding:25px 0;}
	.route .content-width{flex-wrap:wrap;gap:30px;}
	.route .rubric_image{max-width:80%;margin:0 auto;}
	.route .table td{padding-left:15px;display:table-cell;}
	.route .table td p:first-child{font-size:10px;margin-bottom:10px;}
	.route .table td p:last-child{font-size:16px;}
	.route .items{flex-wrap:wrap;margin:0;}	
	.route .items .sep{display:none;}
	.route .items .item{flex-direction:column;align-items:start;width:30%;min-width:30%;}	
	.route .items .item .item_name{font-size:16px;}
	.route .items .item .item_note{font-size:10px;}
	.route .content-width:nth-child(2){display:block;padding-top:20px;}
	
	.requirements{padding:25px 0;}
	.requirements .items .item{width:100%;padding:24px 28px;}
	.requirements .items .item_icon{width:30px;height:30px;object-fit:contain;float:left;margin-right:11px;margin-bottom:15px;}
	.requirements .items .item_name{font-weight:bold;font-size:16px;margin-top:5px;}
	.requirements .items .item_note{clear:both;font-size:12px;}
	
	.faq{padding:25px 0;}
	.faq .items .item{padding:10px 0;border-width:1px;}
	.faq .items .item .question{font-size:14px;padding-right:35px;}
	.faq .items .item .question:after{width:25px;line-height:25px;font-size:16px;}
	.faq .items .item .answer{padding-top:10px;padding-right:35px;}
	
	.partners{padding:25px 0;}
	.partners .items{gap:10px;}
	.partners .items .item{width:45%;height:auto;padding:20px 30px;}
	
	footer{padding:25px 0;}
	footer nav{flex-direction:column;gap:7px;margin-bottom:15px;}
	footer nav a:not(:last-child):after{display:none;}
	
	
	.form{gap:15px;}
	.form .row{width:100%;}
	.form .row label{margin-bottom:10px;}
	.form .row input, .form .row .input, .form .row select{padding:0 15px;height:45px;line-height:45px;font-size:12px;}
	.form .row .checkbox input{width:15px;height:15px;}
	.form .row .note{font-size:10px;}
	
	.checkbox_list .row{font-size:12px;padding:12px 15px;margin-bottom:10px;}
	.checkbox_list .checkbox{max-width:70%;}
	.checkbox_list .row .price{white-space:nowrap;}
	.checkbox_list .dop_text{margin:0 -16px;width:calc(100% + 32px);padding:20px;bottom:-13px;}
	.checkbox_list .dop_text h4{margin-bottom:10px;}
	
	
	.content .content-width{gap:25px;flex-wrap:wrap;}
	.right_col{min-width:auto;width:100%;}
	.right_col .fixed_content .checkout-info{padding:20px;}
	.right_col .fixed_content .checkout-total{padding:20px;}
	.event_reg .h3{padding-bottom:10px;padding-left:25px;background-size:16px;margin-bottom:20px;}
	
	
	.page_profile .content > .content-width{flex-direction:column-reverse;}
	.account-nav{position:relative;padding:0;}
	.account-nav:after{content:"";position:absolute;right:20px;top:19px;background:url(/static/img/svg/select_arrow.svg) no-repeat center;width:12px;height:8px;}
	.account-nav .item{padding:0 25px;display:none;}
	.account-nav .item a{padding:15px 0 15px 35px;font-size:12px;background-size:20px 20px;}
	.account-nav .item.active{display:block;}
	
	.page_profile table tr{display:block;}
	.page_profile table td{text-align:left;padding:0 0 10px;font-size:14px;}
	.page_profile table td:last-child{margin-bottom:20px;flex-wrap:wrap;}
	.page_profile table td:last-child .btn_small{width:100%;margin-top:-10px;}
	.page_profile table tr:last-child td{border:0;}
	.page_profile table tr td{position:relative;display:flex;justify-content:space-between;gap:30px;font-weight:normal !important;margin-bottom:5px;}
	.page_profile table tr td:after{content:". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";position:absolute;top:0px;left:0;font-weight:100;}
	.page_profile table tr td span{background:#fff;position:relative;z-index:1;padding-left:5px;}
	.page_profile table tr td span:first-child{font-weight:bold;padding-right:5px;padding-left:0;}
	.page_profile table tr td span:last-child{text-align:right;}
	
	#results .filter_block{flex-direction:column;margin-bottom:20px;}
	#results .table{width:calc(100% + 40px);margin-left:-20px;padding-right:20px;padding-left:20px;overflow:auto;}
	#results .table th,
	#results .table td{padding:2vw 2vw;font-size:14px;}
}



