   /* ========================================================================== 
   General
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap');
html {
	font-size:0.9375em;
}
@media (min-width:768px) {
	html {
		font-size:0.9em;
	}
}
@media (min-width:992px) {
	html {
		font-size:0.95em;
	}
}
@media (min-width:1280px) {
	html {
		font-size:1em;
	}
}
@media (min-width:1600px) {
	html {
		font-size:1em;
	}
}
body {
	color:#333;
}
h2 {
	font-weight:700;
	}
img {
	display:block; 
	max-width:100%;
	}
a, button {
	cursor:pointer;
	}
a {
	color:#6181FF;
	text-decoration:none;
	}
a:hover {
	color:#fff;
	border-bottom:none;
	text-decoration:none;
	}
*, *:after, *:before {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.container-fluid {
	max-width:1600px;
}
/* Block Padding  */
@media (min-width:1460px) {
	.main {
		padding-left:20px;
		padding-right:20px;
	}
}
@media screen and (min-width:1134px) and (max-width:1459px) {
	.main {
		padding-left:40px;
		padding-right:40px;
	}
}
@media screen and (min-width:960px) and (max-width:1133px) {
	.main {
		padding-left:30px;
		padding-right:30px;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.main {
		padding-left:20px;
		padding-right:20px;
	}
}
@media screen and (max-width:767px) {
	.main {
		padding-left:15px;
		padding-right:15px;
	}
}

/* ========================================================================== 
   Text Styles
   ========================================================================== */
.c-blue, .codetext.c-blue {
	color:#587FFF;
}
.c-gray {
	color:#114258;
}
.c-white {
	color:#FFF;
}
.block-title, .block-subtitle {
	font-weight:700;
	font-family: 'Montserrat';
}
.block-title.title-blue {
	color:#4764E6;
}
.block-title.title-white, .block-subtitle.title-white {
	color:#fff;
}
.program-subtitle {
	font-weight:400;
	margin-bottom:20px;
}
.main p u {
	text-decoration:none;
	border-bottom:2px solid #333;
	font-weight:500;
}

/* ========================================================================== 
   Text Sizes
   ========================================================================== */
.program-title h1 {
	font-family: 'Montserrat';
	font-weight:700;
	color:#fff;
	margin-bottom:20px;
	transition: all 0.1s linear;
	text-transform: uppercase;
}
.program-title h2 {
	font-family: 'Montserrat';
	font-weight:600;
	color:#fff;
	margin-bottom:50px;
	transition: all 0.1s linear;
	text-transform: uppercase;
}
.program-title p, .program-title label {
	font-family: 'Montserrat';
	font-weight:500;
	text-transform:uppercase;
	color:#85C8FF;
}
.program-title p span, .program-title label span {
	color:#FFF;
}
@media (min-width:1460px) {
	.program-title label {
		font-size:1.6em;
		line-height:1.4;
		margin-bottom:20px;
	}
	.program-title h1 {
		font-size:3.5em;
		line-height:1.2;
		letter-spacing: 2px;
	}
	.program-title h2 {
		font-size:2em;
		line-height:1.2;
		letter-spacing: 2px;
	}
	.program-title p {
		font-size:1.05em;
		line-height:1.35;
		letter-spacing: 1px;
	}
	.main p, .main ol {
		font-size: 1.35em;
	}
	.footer span {
		font-size: 1.25em;
	}
	.block-title {
		font-size:3.4em;
		margin-bottom:50px;
	}
	.block-subtitle {
		font-size:2.6em;
		margin-bottom:50px;
	}
	.program-subtitle {
		font-size:1.6em;
	}
}
@media screen and (min-width:1134px) and (max-width:1459px) {
	.program-title label {
		font-size:1.4em;
		line-height:1.4;
		margin-bottom:20px;
	}
	.program-title h1 {
		font-size:3.6em;
		line-height:1.2;
		letter-spacing: 2px;
	}
	.program-title p {
		font-size:1.05em;
		line-height:1.35;
		letter-spacing: 1px;
	}
	.main p, .main ol {
		font-size: 1.35em;
	}
	.footer span {
		font-size: 1.25em;
	}
	.block-title {
		font-size:3.3em;
		margin-bottom:50px;
	}
	.block-subtitle {
		font-size:2.5em;
		margin-bottom:50px;
	}
	.program-subtitle {
		font-size:1.5em;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.program-title label {
		font-size:1.3em;
		line-height:1.4;
	}
	.program-title h1 {
		font-size:3.2em;
		line-height:1.3;
		letter-spacing: 2px;
	}
	.main p, .main ol {
		font-size: 1.25em;
	}
	.footer span {
		font-size: 1.2em;
	}
	.block-title {
		font-size:3.2em;
		margin-bottom:40px;
	}
	.block-subtitle {
		font-size:2.4em;
		margin-bottom:30px;
	}
	.program-subtitle {
		font-size:1.4em;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.program-title label {
		font-size:1.2em;
		line-height:1.4;
		margin-bottom:30px;
	}
	.program-title h1 {
		font-size:2.4em;
		line-height:1.2;
	}
	.main p, .main ol {
		font-size: 1.25em;
	}
	.footer span {
		font-size: 1.2em;
	}
	.block-title {
		font-size:2.6em;
		margin-bottom:40px;
	}
	.block-subtitle {
		font-size:1.8em;
		margin-bottom:30px;
	}
	.program-subtitle {
		font-size:1.3em;
	}
}
@media (max-width:767px) {
	.program-title label {
		font-size:1.1em;
		line-height:1.3;
		margin-bottom:20px;
	}
	.program-title h1 {
		font-size:2em;
		line-height:1.25;
	}
	.main p, .main ol {
		font-size: 1.2em;
	}
	.footer span {
		font-size: 1.15em;
	}
	.block-title {
		font-size:2em;
		margin-bottom:30px;
	}
	.block-subtitle {
		font-size:1.4em;
		margin-bottom:30px;
	}
	.program-subtitle {
		font-size:1.3em;
	}
}

/* ==========================================================================
 Header
   ========================================================================== */
.header-over {
	position:relative;
	background: linear-gradient(0deg, #4A1FA8  0%, #15034A 100%);
	background:radial-gradient(at left top, #001773 0%, #005AC9 20%, #3564E9 45%, #001773 65%, #001773 100%);
	background-size:cover;
	z-index:0;
}
.header-wrapper {
	position:relative;
	z-index:0;
}
.title-window {
	position:relative;
	z-index:0;
	width:100%;
	text-align:center;
	height:90px;
}
.title-window label {
	font-family: 'Montserrat';
	font-weight:500;
	color:#85C8FF;
	line-height:1.1;
	font-size:1.25em;
	text-transform:uppercase;
}
.title-window p {
	font-family: 'Montserrat';
	font-weight:500;
	color:#85C8FF;
	line-height:1.35;
	font-size:1.1em;
	text-transform:uppercase;
}
.logo-window {
	position:absolute;
}
.program-title-wrapper	{
	width:100%;
	height:auto;
	position:relative;
	z-index:10;
}
.program-title {
	margin-bottom:0;
	padding-bottom:0;
}
.row-title {
	position:relative;
	z-index:100;
}
.window {
	position:relative;
	z-index:0;
	width:100%;
	background:url(../img/bg.png) top center no-repeat;
	background-size:cover;
	border-radius: 20px;
}
.window_header {
	position:relative;
	z-index:3;
	width:100%;
	padding: 0 30px;
}
.window_main {
	position:relative;
	z-index:3;
	width:100%;
	padding: 0 30px;
}
.window_footer {
	position:relative;
	z-index:3;
	width:100%;
}
@media (min-width:1680px) {
	.header-over {
		width:100%;
		height:100vh;
		padding:20px;
	}
	.window {
		height:100%;
	}
	.logo-window {
		left:30px;
		top:30px;
	}
	.logo-window .logosvg {
		width:160px;
	}
	.window_header {
		height:100px;
	}
	.window_main {
		height:calc(100% - 190px);
		padding:0 60px;
	}
	.window_footer {
		height:90px;
	}
	.program-title {
		padding-top:0;
	}
	.t-mobile {
		display:none;
	}
}
@media screen and (min-width:1460px) and (max-width:1679px) {
	.header-over {
		width:100%;
		height:100vh;
		padding:20px;
	}
	.window {
		height:100%;
	}
	.logo-window {
		left:30px;
		top:30px;
	}
	.logo-window .logosvg {
		width:150px;
	}
	.window_header {
		height:100px;
	}
	.window_main {
		height:calc(100% - 190px);
		padding:0 50px;
	}
	.window_footer {
		height:90px;
	}
	.program-title {
		padding-top:0;
	}
	.t-mobile {
		display:none;
	}
}
@media screen and (min-width:1134px) and (max-width:1459px) {
	.header-over {
		width:100%;
		height:100vh;
		padding:20px 40px;
	}
	.window {
		height:100%;
	}
	.logo-window {
		left:30px;
		top:20px;
	}
	.logo-window .logosvg {
		width:150px;
	}
	.window_header {
		height:100px;
	}
	.window_main {
		height:calc(100% - 190px);
		padding:0 30px;
	}
	.window_footer {
		height:90px;
	}
	.t-mobile {
		display:none;
	}
}
@media screen and (min-width:960px) and (max-width:1133px) {
	.header-over {
		width:100%;
		height:100vh;
		padding:10px 30px;
	}
	.window {
		height:100%;
	}
	.logo-window {
		left:30px;
		top:30px;
	}
	.logo-window .logosvg {
		width:150px;
	}
	.window_header {
		height:100px;
	}
	.window_main {
		height:calc(100% - 190px);
		padding:0 30px;
	}
	.window_footer {
		height:90px;
	}
	.program-title {
		padding-top:150px;
	}
	.t-mobile {
		display:none;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.header-over {
		width:100%;
		padding:10px 20px;
	}
	.logo-window {
		left:25px;
		top:25px;
	}
	.logo-window .logosvg {
		width:130px;
	}
	.window_header {
		height:100px;
	}
	.window_main {
		padding:0 25px;
	}
	.window_footer {
		height:90px;
	}
	.t-mobile {
		display:none;
	}
	.program-title {
		padding-top:150px;
	}
	.t-mobile {
		display:none;
	}
}
@media screen and (min-width:768px) and (max-width:959px) and (orientation:landscape) {
	.header-over {
		height:auto;
	}
	.window {
		height:auto;
	}
	.window_main {
		height:100%;
	}
}
@media screen and (min-width:768px) and (max-width:959px) and (orientation:portrait) {
	.header-over {
		height:100vh;
	}
	.window {
		height:100%;
	}
	.window_main {
		height:calc(100% - 190px);
	}
}
@media screen and (max-width:767px) {
	.header-over {
		width:100%;
		padding:10px 15px;
	}
	.logo-window {
		left:20px;
		top:20px;
	}
	.logo-window .logosvg {
		width:120px;
	}
	.window_header {
		height:100px;
	}
	.window_main {
		padding:0 20px 20px 20px;
	}
	.window_footer {
		padding:0 20px;
	}
	.title-window label, .t-desktop {
		display:none;
	}
}
@media screen and (max-width:767px) and (orientation:landscape) {
	.header-over {
		height:auto;
	}
	.window {
		height:auto;
	}
	.window_main {
		height:auto;
	}
}
@media screen and (max-width:767px) and (orientation:portrait) {
	.header-over {
		height:100vh;
	}
	.window {
		height:100%;
	}
	.window_footer {
		height:100px;
	}
	.window_main {
		height:calc(100% - 200px);
	}
}

/* ========================================================================== 
   Browser Small
   ========================================================================== */
.browser_small {
	width:100%;
	height:auto;
	min-height:200px;
	border-radius:20px;
	border:2px solid rgba(70,100,230,0.75); /*#9C8FC2*/
	margin-bottom:30px;
}
.browser_small.browser-blue {
	width:100%;height:auto;min-height:200px; border:2px solid rgba(70,100,230,0.5);
}
.browser_small-top {
	position:relative;
	height:45px;
	border-radius: 10px 10px 0 0;
}
.browser_small-body {
	color:#333;
	min-height:240px;
}
.browser_small-body p {
	line-height:1.35;
	font-weight:400;
}
.browser_small-body label {
	font-family: 'Montserrat';
	font-weight:500;
	color:#4764E6;
}
@media (min-width:1460px) {
	.browser_small-body {
		padding: 20px 30px 30px 30px;
	}
	.browser_small-body p {
		font-size:1.25em;
	}
	.browser_small-body label {
		font-size:4em;
	}
}
@media screen and (min-width:1134px) and (max-width:1459px) {
	.browser_small-body {
		padding: 20px 30px 30px 30px;
	}
	.browser_small-body p {
		font-size:1.25em;
	}
	.browser_small-body label {
		font-size:3.8em;
	}
}
@media screen and (min-width:960px) and (max-width:1133px) {
	.browser_small-body {
		padding: 20px 25px 20px 25px;
	}
	.browser_small-body p {
		font-size:1.2em;
	}
	.browser_small-body label {
		font-size:3.2em;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.browser_small-body {
		padding: 20px 25px 20px 25px;
	}
	.browser_small-body p {
		font-size:1.2em;
	}
	.browser_small-body label {
		font-size:3em;
	}
}
@media (max-width:767px) {
	.browser_small-body {
		padding: 20px 20px 15px 20px;
	}
	.browser_small-body p {
		font-size:1.15em;
	}
	.browser_small-body label {
		font-size:2.8em;
	}	
}

/* ========================================================================== 
   Practic
   ========================================================================== */
.practic {
	text-align:center;
	padding: 0 10px;
	margin-bottom:30px;
}
.practic p {
	font-weight:300;
}
.practic-img {
	width:100%;
	text-align:center;
}
.practic-img svg {
	width:100%;
	margin: 0 auto;
}

@media (min-width:1460px) {
	.row-balls {
		margin-top:10px;
		margin-bottom:50px;
	}
	.practic p {
		font-size:1.25em;
	}
	.practic-img {
		margin: 20px 0 40px 0;
	}
	.practic-img svg {
		max-width: 200px;
	}
}
@media screen and (min-width:1134px) and (max-width:1459px) {
	.row-balls {
		margin-top:10px;
		margin-bottom:50px;
	}
	.practic p {
		font-size:1.25em;
	}
	.practic-img {
		margin: 20px 0 40px 0;
	}
	.practic-img svg {
		max-width: 200px;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.row-balls {
		margin-top:5px;
		margin-bottom:40px;
	}
	.practic p {
		font-size:1.2em;
	}
	.practic-img {
		margin: 20px 0 30px 0;
	}
	.practic-img svg {
		max-width: 180px;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.row-balls {
		margin-top:5px;
		margin-bottom:40px;
	}
	.practic p {
		font-size:1.2em;
	}
	.practic-img {
		margin: 20px 0 30px 0;
	}
	.practic-img svg {
		max-width: 160px;
	}
}
@media (max-width:767px) {
	.row-balls {
		margin-top:0;
		margin-bottom:30px;
	}
	.practic p {
		font-size:1.15em;
	}
	.practic-img {
		margin: 10px 0 30px 0;
	}
	.practic-img svg {
		max-width: 150px;
	}
}

/* ========================================================================== 
   Program Section
   ========================================================================== */
.program_section {
	position:relative;
	background:#001773;
}
@media (min-width:1134px) {
	.section_1 {
		padding-top:80px;
		padding-bottom:40px;
	}
	.section_2 {
		padding-top:40px;
		padding-bottom:40px;
	}
	.section_3 {
		padding-top:80px;
		padding-bottom:80px;
	}
	.section_4 {
		padding-top:80px;
		padding-bottom:40px;
	}
	.section_5 {
		padding-top:80px;
		padding-bottom:40px;
	}
	.section_6 {
		padding-top:40px;
		padding-bottom:80px;
	}
	.section_7 {
		padding-top:80px;
		padding-bottom:40px;
	}
	.section_8 {
		padding-top:80px;
		padding-bottom:20px;
	}
	.section_9 {
		padding-top:100px;
		padding-bottom:0;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.section_1 {
		padding-top:60px;
		padding-bottom:30px;
	}
	.section_2 {
		padding-top:30px;
		padding-bottom:30px;
	}
	.section_3 {
		padding-top:60px;
		padding-bottom:60px;
	}
	.section_4 {
		padding-top:30px;
		padding-bottom:30px;
	}
	.section_5 {
		padding-top:60px;
		padding-bottom:30px;
	}
	.section_6 {
		padding-top:30px;
		padding-bottom:60px;
	}
	.section_7 {
		padding-top:60px;
		padding-bottom:30px;
	}
	.section_8 {
		padding-top:60px;
		padding-bottom:20px;
	}
	.section_9 {
		padding-top:60px;
		padding-bottom:0;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.section_1 {
		padding-top:50px;
		padding-bottom:25px;
	}
	.section_2 {
		padding-top:25px;
		padding-bottom:25px;
	}
	.section_3 {
		padding-top:50px;
		padding-bottom:50px;
	}
	.section_4 {
		padding-top:50px;
		padding-bottom:25px;
	}
	.section_5 {
		padding-top:50px;
		padding-bottom:25px;
	}
	.section_6 {
		padding-top:25px;
		padding-bottom:50px;
	}
	.section_7 {
		padding-top:50px;
		padding-bottom:25px;
	}
	.section_8 {
		padding-top:50px;
		padding-bottom:20px;
	}
	.section_9 {
		padding-top:50px;
		padding-bottom:0;
	}
}
@media (max-width:767px) {
	.section_1 {
		padding-top:40px;
		padding-bottom:20px;
	}
	.section_2 {
		padding-top:20px;
		padding-bottom:20px;
	}
	.section_3 {
		padding-top:40px;
		padding-bottom:40px;
	}
	.section_4 {
		padding-top:40px;
		padding-bottom:20px;
	}
	.section_5 {
		padding-top:40px;
		padding-bottom:20px;
	}
	.section_6 {
		padding-top:20px;
		padding-bottom:40px;
	}
	.section_7 {
		padding-top:40px;
		padding-bottom:20px;
	}
	.section_8 {
		padding-top:40px;
		padding-bottom:20px;
	}
	.section_9 {
		padding-top:40px;
		padding-bottom:0;
	}
}

/* ========================================================================== 
   About Section
   ========================================================================== */
.about_section {
	background:#001773;
}
.browser_wrapper {
	position:relative;
	background:#fff;
	border-radius: 20px;
}
.browser_wrapper.browser-1:before {
	position:absolute; 
	content:''; 
	background-image:url(../img/dots1.svg); 
	background-repeat:no-repeat; 
}
.browser_wrapper.browser-2:before {
	position:absolute; 
	content:''; 
	background-image:url(../img/dots2.svg); 
	background-repeat:no-repeat; 
}
.browser_wrapper.browser-3:before {
	position:absolute; 
	content:''; 
	background-image:url(../img/dots3.svg); 
	background-repeat:no-repeat; 
}
@media (min-width:1134px) {
	.about_section {
		padding-top:10px;
		padding-bottom:10px;
	}
	.browser_wrapper {
		padding:110px 30px 110px 30px;
	}
	.browser_wrapper:before {
		left:40px; 
		top:40px; 
		width:105px; 
		height:25px; 
		background-size:auto 25px;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.about_section {
		padding-top:10px;
		padding-bottom:10px;
	}
	.browser_wrapper {
		padding:100px 25px 80px 25px;
	}
	.browser_wrapper:before {
		left:40px; 
		top:40px; 
		width:105px; 
		height:25px; 
		background-size:auto 25px;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.about_section {
		padding-top:0;
		padding-bottom:0;
	}
	.browser_wrapper {
		padding:70px 20px 40px 20px;
	}
	.browser_wrapper:before {
		left:30px; 
		top:30px; 
		width:105px; 
		height:20px; 
		background-size:auto 20px;
	}
}
@media (max-width:767px) {
	.about_section {
		padding-top:0;
		padding-bottom:0;
	}
	.browser_wrapper {
		padding:70px 10px 30px 10px;
	}
	.browser_wrapper:before {
		left:20px; 
		top:20px; 
		width:105px; 
		height:25px; 
		background-size:auto 15px;
	}
}

/* ========================================================================== 
 Icon
   ========================================================================== */
.icon_card {
	transition: all 0.15s ease-out;
	color:#333;
}
.icon_card label {
	font-weight:400;
}
@media (min-width:1134px) {
	.icon_card {
		padding: 10px 10px 20px 0;
		min-height:80px;
		margin-bottom:20px;
	}
	.icon_card label {
		padding-left:90px;
		font-size:1.35em;
	}
	.icon_card img {
		width:100%;
		max-width:64px;
		height:auto;
		position:absolute;
		top:15px;
		left:0;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.icon_card {
		padding: 10px 10px 20px 0;
		min-height:70px;
		margin-bottom:20px;
	}
	.icon_card label {
		padding-left:80px;
		font-size:1.25em;
	}
	.icon_card img {
		width:100%;
		max-width:56px;
		height:auto;
		position:absolute;
		top:15px;
		left:0;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.icon_card {
		padding: 10px 10px 15px 0;
		min-height:60px;
		margin-bottom:20px;
	}
	.icon_card label {
		padding-left:60px;
		font-size:1.25em;
	}
	.icon_card img {
		width:100%;
		max-width:48px;
		height:auto;
		position:absolute;
		top:15px;
		left:0;
	}
}
@media (max-width:767px) {
	.icon_card {
		padding: 10px 5px 5px 0;
		min-height:48px;
		margin-bottom:20px;
	}
	.icon_card label {
		padding-left:60px;
		padding-top:5px;
		padding-bottom:10px;
		font-size:1.15em;
	}
	.icon_card img {
		width:100%;
		max-width:48px;
		height:auto;
		position:absolute;
		top:15px;
		left:0;
	}
}

/* ========================================================================== 
 Program Block 2
   ========================================================================== */
.competences_card {
	transition: all 0.15s ease-out;
	color:#fff;
}
.competences_card.card-border {
	background:#001773;
	border:2px solid #4D70E0;
	border-radius:20px;
}
.dir {
	transition: all 0.15s ease-out;
}
.dir p {
		font-weight:400;
	}
.competences_card dt {
	text-transform:uppercse;
	font-family: 'Montserrat';
	font-weight:500;
	color:#fff;
}
@media (min-width:1134px) {
	.competences_card {
		padding: 35px 30px 20px 30px;
		min-height:180px;
		margin-bottom:20px;
	}
	.competences_card dl {
		padding-left:100px;
		padding-top:5px;
		padding-bottom:20px;
		font-size:1.25em;
		font-weight:400;
	}
	.competences_card img {
		width:100%;
		max-width:48px;
		height:auto;
		position:absolute;
		top:45px;
		left:45px;
	}
	.dir {
		min-height:50px;
		margin-bottom:20px;
	}
	.dir p {
		padding-left:60px;
		padding-top:5px;
		font-size:1.35em;
	}
	.dir img {
		width:100%;
		max-width:48px;
		height:auto;
		margin-bottom:10px;
		position:absolute;
		top:0;
		left:0;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.competences_card {
		padding: 25px 25px 20px 25px;
		min-height:180px;
		margin-bottom:20px;
	}
	.competences_card dl {
		padding-left:60px;
		padding-top:5px;
		padding-bottom:20px;
		font-size:1.25em;
	}
	.competences_card img {
		width:100%;
		max-width:48px;
		height:auto;
		position:absolute;
		top:35px;
		left:25px;
	}
	.dir {
		min-height:50px;
		margin-bottom:20px;
	}
	.dir p {
		padding-left:60px;
		padding-top:5px;
		font-size:1.3em;
	}
	.dir img {
		width:100%;
		max-width:48px;
		height:auto;
		margin-bottom:10px;
		position:absolute;
		top:0;
		left:0;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.competences_card {
		padding: 25px 25px 15px 25px;
		min-height:180px;
		margin-bottom:20px;
	}
	.competences_card dl {
		padding-left:50px;
		padding-top:5px;
		padding-bottom:20px;
		font-size:1.2em;
	}
	.competences_card img {
		width:100%;
		max-width:32px;
		height:auto;
		position:absolute;
		top:35px;
		left:30px;
	}
	.dir {
		min-height:40px;
		margin-bottom:20px;
	}
	.dir p {
		padding-left:50px;
		font-size:1.25em;
	}
	.dir img {
		width:100%;
		max-width:32px;
		height:auto;
		margin-bottom:10px;
		position:absolute;
		top:0;
		left:0;
	}
}
@media (max-width:767px) {
	.competences_card {
		padding: 20px 20px 10px 20px;
		min-height:150px;
		margin-bottom:20px;
	}
	.competences_card dl {
		padding-left:0;
		padding-top:5px;
		padding-bottom:20px;
		font-size:1.2em;
	}
	.competences_card img {
		width:100%;
		max-width:32px;
		height:auto;
		margin-bottom:10px;
		position:relative;
	}
	.dir {
		margin-bottom:20px;
	}
	.dir p {
		padding-left:50px;
		font-size:1.2em;
	}
	.dir img {
		width:100%;
		max-width:32px;
		height:auto;
		position:absolute;
		top:5px;
		left:0;
	}
}

/* ========================================================================== 
 Admission
   ========================================================================== */
.admission {
	background:#0C4359;
	position:relative;
	background:radial-gradient(at bottom left, #15034A 0%, #00104F 35%, #001773 65%, #001773 100%);
}

/* ========================================================================== 
   Program Marq
   ========================================================================== */
.program-marq-small {
	padding: 14px 24px;
	border-radius: 50px;
	background: transparent;
	color:#fff;
	font-weight:400;
	margin-bottom:15px;
	margin-right:10px;
}
.program-marq-small.border-red {
	border: 1px dashed #E57171;
}
.program-marq-small.border-blue {
	border: 1px dashed #8E8EFC;
}
.program-marq-small.border-green {
	border: 1px dashed #5FD0A2;
}
.program-marq-small.program-marq-title {
	text-transform:uppercase;
	padding: 10px 20px;
	border-radius: 50px;
	background: transparent;
	margin-bottom:15px;
	margin-right:10px;
}
.program-marq-small.program-marq-title.program-marq-red {
	color:#fff;
	border:1px dashed #E57171;
}
.program-marq-small.program-marq-title.program-marq-green {
	color:#fff;
	border:1px dashed #5FD0A2;
}
.program-marq-small.program-marq-title.program-marq-blue {
	color:#fff;
	border:1px dashed #8E8EFC;
}
.program-marq-small {
	font-size:1.25em;
}
@media (min-width:1134px) {
	.marq-wrapper {
		margin-bottom:10px;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.marq-wrapper {
		margin-bottom:20px;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.marq-wrapper {
		margin-bottom:25px;
	}
}
@media (max-width:767px) {
	.marq-wrapper {
		margin-bottom:25px;
	}
}

/* ========================================================================== 
   Timeline
   ========================================================================== */
.timeline {line-height: 1.4em; list-style: none; margin: 0; padding: 0; width: 100%;}
.timeline h1, .timeline h2, .timeline h3, .timeline h4, .timeline h5, .timeline h6 {line-height: inherit;}
.timeline-item {padding-left: 40px; position: relative;}
.timeline-item:last-child {padding-bottom: 0;}
.timeline-info {font-size: 0.85em; font-weight: 500; letter-spacing: 2px; margin: 0 0 .5em 0; text-transform: uppercase; color:rgba(255,255,255,0.75);}
.timeline-centered .timeline-info {font-size: 0.8em; font-weight: 500; letter-spacing: 2px; margin: 0 0 .5em 0; text-transform: uppercase; color:#333;}
.timeline-marker {position: absolute; top: 0; bottom: 0; left: 0; width: 15px;}
.timeline-marker:before {background: rgba(255,255,255,1); border: 3px solid transparent; border-radius: 100%; content: ""; display: block; height: 15px; position: absolute; top: 4px; left: 0; width: 15px; transition: background 0.3s ease-in-out, border 0.3s ease-in-out;}
.timeline-marker:after {content: ""; width: 3px; background: rgba(255,255,255,0.5); display: block; position: absolute; top: 24px; bottom: 0; left: 6px;}
.timeline-marker.blue-marker:before {background: rgba(255,255,255,1); border: 3px solid transparent; border-radius: 100%; content: ""; display: block; height: 15px; position: absolute; top: 4px; left: 0; width: 15px; transition: background 0.3s ease-in-out, border 0.3s ease-in-out;}
.timeline-marker.blue-marker:after {content: ""; width: 3px; background: rgba(255,255,255,0.5); display: block; position: absolute; top: 24px; bottom: 0; left: 6px;}
.timeline-item:last-child .timeline-marker:after {content: none;}
.timeline-item:not(.period):hover .timeline-marker:before {background: transparent; border: 3px solid rgba(255,255,255,1);}
.timeline-item:not(.period):hover .timeline-marker.blue-marker:before {background: rgba(255,255,255,1); border: 3px solid rgba(255,255,255,1);}
.timeline-content {padding-bottom: 40px;}
.timeline-content p:last-child {margin-bottom: 0;}
.timeline-centered .timeline-content {font-size:0.9em;}
.period {padding: 0;}
.period .timeline-info {display: none;}
.period .timeline-marker:before {background:transparent; content:""; width:15px; height:auto; border:none; border-radius:0; top:0; bottom:30px; position:absolute; border-top:3px solid #fff; border-bottom: 3px solid #fff;}
.period .timeline-marker:after {content: ""; height: 32px; top: auto;}
.period .timeline-content {padding: 40px 0 70px;}
.period .timeline-title {margin: 0;}
@media (min-width: 768px) {
 .timeline-split .timeline, .timeline-centered .timeline {display: table;}
 .timeline-split .timeline-item, .timeline-centered .timeline-item {display: table-row;  padding: 0;}
 .timeline-split .timeline-info, .timeline-centered .timeline-info,  .timeline-split .timeline-marker,  .timeline-centered .timeline-marker,  .timeline-split .timeline-content,  .timeline-centered .timeline-content,  .timeline-split .period .timeline-info,  .timeline-centered .period .timeline-info {display: table-cell;   vertical-align: top;}
 .timeline-split .timeline-marker, .timeline-centered .timeline-marker {position: relative;}
 .timeline-split .timeline-content, .timeline-centered .timeline-content {padding-left: 30px;}
 .timeline-split .timeline-info, .timeline-centered .timeline-info {padding-right: 30px;}
 .timeline-split .period .timeline-title, .timeline-centered .period .timeline-title {position: relative;   left: -45px;}
}
@media (min-width: 992px) {
 .timeline-centered,  .timeline-centered .timeline-item,  .timeline-centered .timeline-info,  .timeline-centered .timeline-marker,  .timeline-centered .timeline-content {display: block;  margin: 0;
  padding: 0;}
 .timeline-centered .timeline-item {padding-bottom: 40px;  overflow: hidden;}
 .timeline-centered .timeline-marker {position: absolute;  left: 50%;  margin-left: -7.5px;}
 .timeline-centered .timeline-info,
 .timeline-centered .timeline-content {width: 50%;}
 .timeline-centered > .timeline-item:nth-child(odd) .timeline-info {float: left;  text-align: right;  padding-right: 30px;}
 .timeline-centered > .timeline-item:nth-child(odd) .timeline-content {float: right;  text-align: left;  padding-left: 30px;}
 .timeline-centered > .timeline-item:nth-child(even) .timeline-info {float: right; text-align: left;  padding-left: 30px;}
 .timeline-centered > .timeline-item:nth-child(even) .timeline-content {float: left; text-align: right; padding-right: 30px;}
 .timeline-centered > .timeline-item.period .timeline-content {float: none; padding: 0; width: 100%; text-align: center;}
 .timeline-centered .timeline-item.period {padding: 50px 0 90px;}
 .timeline-centered .period .timeline-marker:after {height: 30px;bottom: 0;top: auto;}
 .timeline-centered .period .timeline-title {left: auto;}
}
.marker-outline .timeline-marker:before {background: transparent; border-color: #FF6B6B;}
.marker-outline .timeline-item:hover .timeline-marker:before {background: #FF6B6B;}
.timeline-content-sub {padding:20px 30px 20px 30px;background:#f4f4f4;}
.timeline-content-sub.content-blue {padding:20px 30px 20px 30px;background:#007AC6;color:#fff;}
.timeline-content {
	color:#fff;
}
.timeline-content p {
	font-weight:400;
	line-height:1.35;
}
.timeline-title {
	font-weight:500;
	font-size:0.85em;
	text-transform:uppercase;
	color:#85B0FF;
	margin-bottom:15px;
}
@media (min-width:1134px) {
	.timeline-content p {
		font-size:1.4em;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.timeline-content p {
		font-size:1.35em;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.timeline-content p {
		font-size:1.3em;
	}
}
@media (max-width:767px) {
	.timeline-content p {
		font-size:1.2em;
		font-weight:300;
	}
}

/* ==========================================================================
 Buttons
   ========================================================================== */
.btn {
	padding:20px 40px;
	border-radius:50px;
	font-weight:600;
	line-height:1.35;
	font-size:1.25em;
	text-transform:uppercase;
	background-color:#4764E6;
	border:0;
	color:#fff;
	transition: background 0.3s ease-in-out;
}
.btn:hover {
	background-color:#6181FF;
	color:#fff;
}

/* ========================================================================== 
 Footer
   ========================================================================== */
.footer {
	color:#fff;
}
.copyright {
	padding-top:10px;
	padding-bottom:40px;
}
.copyright .social-media a {
	width:40px; 
	height:40px; 
	border-radius:99%; 
	background:transparent; 
	transition:.4s ease;
	border-bottom:0;
	text-decoration:none;
}
.copyright .social-media a i {
	color:#fff; 
	font-size:1.2rem; 
	line-height:40px;
}
.copyright .social-media a:hover {
	background:#8C7FFF;
}
.copyright .social-media a:hover i {
	color:#fff;
}
.social-network {
	position:relative;
}
.vkontakte:before {
	position:absolute; 
	left:0; 
	top:0; 
	content:''; 
	width:40px; 
	height:40px; 
	background-image:url(../img/vk.svg); 
	background-repeat:no-repeat; 
	background-size:auto 40px;
}
.telegram:before {
	position:absolute; 
	left:0; 
	top:0; 
	content:''; 
	width:40px; 
	height:40px; 
	background-image:url(../img/telegram.svg); 
	background-repeat:no-repeat; 
	background-size:auto 40px;
}

/* ==========================================================================
 Tabs
   ========================================================================== */
.nav-item  {
	margin-right:20px;
}
.nav.nav-tabs .nav-item a {
	
}
.nav-item .nav-link  {
	font-weight:600;
	text-transform:uppercase;
	border: 2px solid #4764E6;
	border-radius:50px;
	color:#4764E6;
	background:transparent;
	margin-bottom:15px;
	transition: background 0.3s ease-in-out, border 0.3s ease-in-out;
}
.nav-item .nav-link:hover  {
	border: 2px solid #fff;
	color:#fff;
}
.nav-item .nav-link.active {
	border: 2px solid #4764E6;
	border-radius:50px;
	color:#fff;
	background:#4764E6;
	transition: background 0.3s ease-in-out, border 0.3s ease-in-out;
}
.nav-tabs {
	border-bottom:0;
}
.tab-pane.show.active {
	opacity: 1;
	transition: opacity 0.85s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .tab-pane.fade {
    transition: none;
  }
}
.tab-pane.fade:not(.show) {
  opacity: 0;
}

@media (min-width:1134px) {
	.nav-item .nav-link  {
		font-size:1.35em;
		padding: 10px 25px;
	}
}
@media screen and (min-width:959px) and (max-width:1133px) {
	.nav-item .nav-link  {
		font-size:1.3em;
		padding: 10px 20px;
	}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.nav-item .nav-link  {
		font-size:1.25em;
		padding: 10px 20px;
	}
}
@media (max-width:767px) {
	.nav-item .nav-link  {
		font-size:1.2em;
		padding: 10px 15px;
	}
}

.fact {
	position:relative;
	z-index:1;
	width:100%;
}
@media (min-width:768px) {
	.fact_wrap	{
		grid-row-gap:20px;
		flex-direction:column;
		flex:none;
		display:flex;
	}
	.fact {
		flex-direction:column;
		flex:none;
		justify-content:space-between;
		width:100%;
		height:180px;
		display:flex;
		position:-webkit-sticky;
		position:sticky;
		top:90px;
	}
}
@media (max-width:767px) {
	.fact {
		width:100%;
		height:auto;
		display:block;
		margin-bottom:20px;
	}
}

/* ==========================================================================
 Partners
   ========================================================================== */
.partner img {
	width:100%;
	max-width:300px;
	margin: 0 auto;
}

/* ========================================================================== 
	To Top
========================================================================== */
.back-to-top {
	position: fixed; 
	width: 56px; 
	height: 56px; 
	border: 1.5px solid rgba(255,255,255,0.6);
	border-radius:50%; 
	right: 15px; 
	bottom: 15px; 
	z-index: 1100;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-transform:rotate(270deg);
	transform:rotate(270deg);
	mix-blend-mode: difference;
}
.back-to-top img {
	opacity:0.6;
}
.back-to-top:hover {
	border: 1.5px solid rgba(255,255,255,1);
}
.back-to-top:hover img {
	opacity:1;
}
@media (max-width: 768px) {
	.back-to-top {
		bottom: 15px;
	}
}
#button {
	transition: opacity .5s, visibility .5s;
	opacity: 0;
	visibility: hidden;
}
#button.show {
	opacity: 1;
	visibility: visible;
}

/* ========================================================================== 
   Video
   ========================================================================== */
.header__video-wrapp  {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    overflow:hidden;
	z-index:0;
	border-radius:20px;
}
.header__video-box {
    text-align:center;
    margin:0 -1000px;
    height:100%;
}
.header__video {
    display: inline-block;
    height: 100%;
    transform: translateX(10%);
    min-height: 768px;
}
.gradient-overlay {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:radial-gradient(circle, rgba(0,35,175,0.6) 10%, rgba(0,35,175,0.7) 30%, rgba(0,35,175,0.8) 40%, rgba(0,35,175,0.9) 50%, rgba(0,35,175,1) 70%, rgba(0,35,175,1) 100%);
	z-index:1;
	border-radius:20px;
}