html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	padding-inline-start: 0px;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1; 
	background: url(../images/bg-container.jpg) repeat 50% 80%;
	background-attachment:scroll;
	background-size: auto;
	padding-top: 0px;
	font: 16px 'Open Sans', Arial, Helvetica, sans-serif;
}
ul {
	list-style:square;
	margin-left: 30px;
	margin-bottom: 13px;
}
ol {
	list-style:none;
	margin-left: 30px;
	margin-bottom: 13px;
}


li {
	padding-bottom: 7px;
}

blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

lineblock {
	background-color: #0c001a;
	color: rgb(218, 215, 255);
	border: #0c001a;
	border-radius: 3px;
	padding: 2px;
}

#invert {
	filter: invert(1)
}

html {
  box-sizing: border-box;
  background: #10091a;
}
*, *:before, *:after {
  box-sizing: inherit;
}


a {
	text-decoration: none;
	color: #fff;
}
a:hover {
	text-decoration: underline;
}

.container:after,
.blocks:after,
.person:after,
.news:after {
	content: "";
	display: table;
	clear: both;
}

iframe {
	width: 100%;
	height: 675px;
	margin-bottom: 20px;
}


/* Slick properties */
.slick-track {
	width: 100%;
}
/**/


/*/
/* Header */

.container_header {
	width: 100%;
	background: #151a1fc9;
	position: fixed;
	z-index: 100;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(05px);
	display: flex;
    flex-wrap: wrap;
	align-items: flex-start;
  	justify-content: flex-end;
}

.container_header nav {
	float: right;
	height: 40px;
	border-left-style: solid;
	border-left-width: 1px;
	border-left-color: #8e959c;
}

.st0{fill:#272727;}
.st1{fill:#ffffff;}

/* SVG home button */
#home {
	margin-right: 5px;
	margin-left: 5px;
	border-width: 1px;
	height: 40px;
}

#home:hover .st1 {
	margin-top: 4px;
	fill: url(#header-shape-gradient-hover) rgb(144, 144, 144);
}

#home:active .st1 {
	margin-top: 4px;
	fill: url(#header-shape-gradient-active) rgb(144, 144, 144);
}

/* SVG back button */
.arrow-back{fill:#ffffff;}
#back {
	border-width: 1px;
	height: 40px; 
}

#back:hover .arrow-back {
	margin-top: 4px;
	fill: url(#header-shape-gradient-hover) rgb(144, 144, 144);
}

#back:active .arrow-back {
	margin-top: 4px;
	fill: url(#header-shape-gradient-active) rgb(144, 144, 144);
}
/* end */

/* SVG toggle button */
#switch-theme {
	margin-right: 5px;
	margin-left: 5px;
	border-width: 1px;
	height: 40px;
}
#theme1 {
	margin-right: 5px;
	margin-left: 5px;
	border-width: 1px;
	height: 40px;
	display: none;
}

svg:hover {
	filter: drop-shadow(0px 0px 5px rgba(94, 66, 255, 0.925)); 
	-webkit-filter: drop-shadow(0px 0px 5px rgba(94, 66, 255, 0.925)); 
}

#switch-theme:hover .st1 {
	margin-top: 4px;
	fill: url(#header-shape-gradient-hover) rgb(144, 144, 144);
}

#switch-theme:active .st1 {
	margin-top: 4px;
	fill: url(#header-shape-gradient-active) rgb(144, 144, 144);
}

#switch-theme:hover .st0,
#switch-theme:active .st0 {fill:rgb(255, 255, 255)}
/**/

.dropbtn {
	background-color: #4caf4f00;
	color: #ffffff;
	border: none;
	padding: 0 5px 0 10px;
	cursor: pointer;
	height: 37px;
	font: inherit;
	cursor: default;
}

.dropbtn img {
	margin-top: 6px;
	margin-right: 5px;
	margin-left: 5px;
}

.dropdown {
	display: inline-block;
}

.dropdown-content {
	display: none;
	position: absolute;
	background-color: #10091a;
	min-width: 60px;
	z-index: 99;
}


.dropdown-content a {
	color: rgb(255, 255, 255);
	padding: 9.5px 18px;
	text-decoration: none;
	display: block;
}

.dropdown-content a:hover {
	background: linear-gradient(180deg, #5044ff, #ff5185);
	box-shadow: 0px 0px 5px 1px rgba(107, 81, 255, 0.7);
	text-decoration: none;
	cursor: pointer;
}

.dropdown-content a:active {
	background: linear-gradient(180deg, #500191, #5044ff);
	box-shadow: 0px 0px 5px 1px rgba(107, 81, 255, 0.7);
	text-decoration: none;
	cursor: pointer;
}

.dropdown:hover .dropdown-content {
	display: block;
}

.dropdown:hover .dropbtn {
	background: none;
}
.dropdown:hover .dropbtn img {
	filter: brightness(110%) drop-shadow(0px 0px 5px rgba(107, 81, 255, 0.7)) contrast(150%);
}

.separator {
	height: 2px;
	margin-top: 40px; 
	width: 100%; 
	background: linear-gradient(90deg, rgba(65, 45, 247, 0.329) 0%, rgba(255, 25, 25, 0.342) 100%); 
	box-shadow: 0 0 6px 3px #ff010e1e; 
	position: fixed; 
	z-index: 20;
	backdrop-filter: saturate(380%) blur(05px);
	-webkit-backdrop-filter: saturate(380%) blur(05px);
}

.progress {
	height: 2px;
	margin-top: 40px; 
	width: 0%; 
	background: linear-gradient(90deg, rgb(117, 0, 250) 0%, rgb(255, 0, 0) 100%);
	box-shadow: 0 0 6px 3px #4b4849b6; 
	position: fixed; 
	z-index: 20;
	backdrop-filter: saturate(380%) blur(05px);
	-webkit-backdrop-filter: saturate(380%) blur(05px);
}

/*/
/* main container */
.container {
	width: 100%;
	margin: 0 auto;
}

.main {
	height: 100%;
	color: #fff;
	text-align: center;
	padding-top: 100px;
}


.avatar_main img {
	border-width: 1px;
	border-color: white;
	margin-bottom: 10px;
	border-radius: 10px;
	z-index: 2;
	position: relative;
}

.avatar_main img:hover {
	box-shadow: 0 0 10px 3px #b600da54;
	filter: brightness(120%);
	border-radius: 10px;
	cursor: pointer;
}

.main h1 {
	font-size: 24px;
	margin: 0 0 00px;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 5px;
	position: relative;
	z-index: 2;
	text-shadow: 1px 1px 32px #5d21bc;
}
.main h2 {
	font-size: 16px;
	font-weight: 100;
	font-style: italic;
	margin: 0 0 80px;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 55px;
	position: relative;
	z-index: 2;
}

.main h3 {
	font-size: 16px;
	font-weight: 100;
	font-style: italic;
	margin: 0 0 80px;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 100px;
	position: relative;
	z-index: 2;
}

.main p {
	font-size: 20px;
	line-height: 36px;
	font-weight: bold;
	max-width: 715px;
	margin: 0 auto 25px;
	padding: 20px;
	position: relative;
	z-index: 2;
}

.icons {
	display: flex;
    flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
	width: 100%;
	height: 100%;
	margin-top: -30px;
	padding-bottom: 70px;
	position: relative;
}

.icon1 {
	float: left;
	margin-right: 20px;
	margin-left: 20px;
	margin-bottom: 90px;
	position: relative;
	background: url(../images/icon1.svg) no-repeat 50%;
	background-size: 100px;
	width: 250px;
	height: 100px;
}

.icon2 {
	float: left;
	margin-right: 20px;
	margin-left: 20px;
	margin-bottom: 120px;
	position: relative;
	background: url(../images/icon2.svg) no-repeat 50%;
	background-size: 100px;
	width: 250px;
	height: 100px;
}

.icon3 {
	float: left;
	margin-right: 20px;
	margin-left: 20px;
	margin-bottom: 90px;
	position: relative;
	background: url(../images/icon3.svg) no-repeat 50%;
	background-size: 100px;
	width: 250px;
	height: 100px;
}

.icon_text {
	float: bottom;
	max-width: 250px;
	position: relative;
	z-index: 2;
	padding-top: 100px;
}

/*/
/* Whole article block */
.container_article {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.blog_block {
	max-width: 1200px;
	min-width: 0px;
	width: 100%;
	height: 100%;
	background-color: #0e0513;
	padding: 20px;
	border-radius: 8px;
	margin: 10px;
}

.title_block {
	float: left;
	height: 150px;
	min-width: 0px;
	text-align: left;
	padding-bottom: 40px;

}

.title_block_bottom {
	float: left;
	width: 70%;
	max-width: 700px;
	margin-bottom: 50px;
	display:inline;
}

.article {
	height: 100%;
	color: #fff;
	text-align: center;
	padding-top: 100px;
	padding-bottom: 30px;
}

.profile_picture img {
	border-width: 1px;
	border-color: white;
	margin-bottom: 20px;
	margin-top: 20px;
	margin-right: 13px;
	border-radius: 10px;
	float: left;
}

.profile_picture img:hover {
	box-shadow: 0 0 10px 3px #441220;
	border-radius: 10px;
}

.text_block {
	padding-top: 80px; 
	width: 100%; 
	text-align: left; 
}

.article h0 {
	font-size: 12px;
	float: left;
	text-align: left;
	max-width: 900px;
	width: 100%;
	margin-bottom: 15px;
	
}

.article h1 {
	font-size: 30px;
	font-weight: bold;
	max-width: 900px;
	margin-right: 10px;
	text-align: left;
}
.article h2 {
	font-size: 14px;
	margin-top: 25px;
	color: rgb(158, 157, 235);
	float: left;
	width: 100%;
	text-align: left;
}

.article h3 {
	font-size: 12px;
	font-weight: 200;
	margin-right: 10px;
	color: rgb(190, 177, 211);
	margin-top: 1px;
	float: left;
	text-align: left;
}

.article h4 {
	font-size: 18px;
	font-weight: bold;
	margin-top: 20px;
	margin-bottom: 10px;
	width: 100%;
	color: rgb(255, 255, 255);
	float: left;

}

.article h {
	font-size: 22px;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 20px;
	display: block;
	width: 100%;
	color: rgb(255, 255, 255);
	border-bottom: red;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	padding-bottom: 5px;
}

.article text {
	font-size: 16px;
	color: rgb(255, 255, 255);
	margin-top: 1px;
	float: left;
	width: 100%;
}

.article text img {
	width: 100%;
	max-width: 1200px;
	height: 100%;
	padding-top: 0px;
	padding-bottom: 30px;
	display: block; 
	margin-left: auto; 
	margin-right: auto;
}

.article p {
	margin-top: 10px;
	margin-bottom: 20px;
	position: relative;
	width: 100%;
}

.legend {
	text-align: center; 
	width: 100%; 
	margin-top: -28px; 
	font-size: 14px; 
	font-style: italic; 
	margin-bottom: 30px;
}

#table {
	margin-top: 2px; 
}

.article .table-block {
	display: block;
	overflow: auto;
	width: 100%;
	align-items: center;
	margin-bottom: 30px;
}

.article table {
	background-color: #10091a; 
	color: white;
	margin: 0 auto;
	font-size: 11px;
}

.article table td,
.article table th {
	padding-left: 10px;
	padding-right: 10px;
	border: none;
	text-align: left;
}

.article table th {
	background-color: rgb(20, 0, 66);
	font-weight: bold;
	padding-top: 3px;
	padding-bottom: 3px;
}

.article strong {
	font-weight: bold;
}

.article italic {
	font-style: italic;
}

.article tags {
	margin-top: 40px;
	display: block;
}

.article tag {
	color: rgb(204, 220, 250);
	background-color: #7698ff3e;
	font-size: 11px;
	margin: 2px;
	border-radius: 5px;
	padding-top: 1px;
	padding-bottom: 1px;
	padding-left: 5px;
	padding-right: 5px;
}

.article_bottom_button {
	height: 60px;
	color: #fff;
	text-align: center;
	padding-top: 12px;
	position: relative;
	z-index: 3;
}
#next_prev_buttton {
	background: linear-gradient(320deg, rgb(87, 0, 58) 0%, rgb(11, 11, 148) 48%, rgb(38, 2, 184) 100%); 
	color: #FFFFFF; 
	padding: 10px; 
	border-radius: 5px;
	margin: 12px;
}

#next_prev_buttton:hover {
	background: linear-gradient(320deg, rgb(167, 1, 111) 0%,rgb(6, 6, 225) 48%, rgb(60, 11, 255) 100%);
	box-shadow: 0 0 7px 2px rgba(55, 0, 252, 0.467);
	cursor: pointer;
}

#next_prev_buttton_inactive {
	background: linear-gradient(320deg, rgb(27, 27, 27) 0%,rgb(50, 50, 50) 48%, rgb(69, 68, 68) 100%); 
	color: #FFFFFF; 
	padding: 10px; 
	border-radius: 5px;
	margin: 12px;
}
#next_prev_buttton_inactive {
	cursor: default;
}

.prev_button {
	float: left;
}

.next_button {
	float: right;
}
/*/
/* Code blocks */
.code-toggle {
	text-align: center; 
	width: 100%;
	background: linear-gradient(90deg, rgba(129, 0, 250, 0.479) 0%, rgba(255, 25, 25, 0.562) 100%);
	color: white;
	opacity: 0.8;
	margin-bottom: 30px;
}

.code-toggle:hover {
	filter: brightness(150%);
	opacity: 1;
	cursor: pointer;
}

.code-toggle:active {
	filter: brightness(80%) contrast(120%);
}

.code_block {
	background: #10091a;
	overflow: auto;
	width: 100%;
	height: auto;
	border-radius: 5px;
	box-shadow: rgba(69, 59, 87, 0.5) 0px 0px 5px;
	padding: 10px;
	margin-bottom: 30px;
	text-align: left;
	position: relative;
	font-size: 14px;
}

#code-bash {
	margin-top: -25px;
	width: 100%;
}

.copy-tooltip {
	font-size: 12px;
	width: 135px;
	height: 20px;
	float: right;
	position: relative;
	margin-bottom: -34px;
	margin-right: 30px;
	z-index: 1;
	opacity: 1;
	color: rgb(255, 255, 255);
	display: none;
	background-color: #10091adc;
	box-shadow: 0 0 5px 3px #10091adc;
}

.clipboard {
	background: #10091a url(/images/clipboard.png) no-repeat;
	background-size: 18px;
	width: 18px;
	height: 25px;
	float: right;
	position: relative;
	margin-top: 34px;
	margin-bottom: -34px;
	margin-right: 10px;
	z-index: 1;
}
.clipboard:hover {
	box-shadow: 0 0 6px 3px #ffffff4c;
	cursor: pointer;
}

.code_block pre {
    line-height: 125%;
    float: left;
	color: #ffffff;
}

/**/

/*
/* Mid section */
/**/
.text_middle {
	position: "relative";
	z-index: 5;
}

.text_middle p{
	text-align: center; 
	font-weight: bold; 
	font-size: 18px;
	line-height: 30px; 
	color: rgb(255, 255, 255); 
	position: relative;
	z-index: 5;
}

#outline p {
	margin-bottom: -60px;
}

#inline p {
	margin-bottom: 20px;
}

.container_mid {
	width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 3;
	text-align: center;
	color: #ffffff;
}

.middle {
	background: #0e0513;
	padding-top: 80px;
	position: relative;
	z-index: 4;
	margin: 5px auto;
	width: 100%;
	max-width: 1200px;
	margin-bottom: 50px;
	border-radius: 8px;
}
/**/

/*Projects blocks*/
#projects {
	margin-bottom: 20px;
	margin-left: 65px;
	margin-right: 50px;
	height: 100%;
	display: flex;
    flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
}

#projects .block {
	background: linear-gradient(320deg, rgba(68, 0, 36, 0.267), rgba(31, 0, 153, 0.295));
	border: #00125423;
	border-style: solid;
	border-width: 1px;
	border-radius: 8px;
	float: left;
	width: 100%;
	max-width: 408px;
	margin-bottom: 48px;
	margin-top: 10px;
	padding: 14px;
	margin-right: 30px;
	position: relative;
}

#projects .block:hover {
	background: linear-gradient(320deg, rgba(91, 0, 61, 0.616), rgba(9, 9, 121, 0.692), rgba(46, 1, 226, 0.651), rgba(91, 0, 61, 0.616), rgba(9, 9, 121, 0.692), rgba(46, 1, 226, 0.651));
	background-size: 500% 100%;
	box-shadow: 0 0 10px 3px #4f005441;
	cursor: pointer;
/**	animation: gradient 16s linear infinite; **/
}

#projects .block:first-child {
	margin-left: 0;
}

#projects #image {border-radius: 8px; width: 25px; height: 35px; opacity: 0.5;}
#projects #image:hover {filter: brightness(150%); border-radius: 8px; box-shadow: 0 0 8px 3px #ac30f326; opacity: 0.8;}

#projects .image {
	margin-bottom: 13px;
}
#projects .text {
	float: left;
	width: 100%;
	text-align: left;
}
#projects .phrase {
	color: #b3b3ff;
	font-weight: 600;
	font-size: 18px;
	margin-bottom: 6px;
}
#projects .info {
	color: #aa98b1;
	margin-bottom: 20px;
	font-weight: 400;
	font-size: 12px;
}
#projects .desc {
	color: #c8ccd0;
	font-size: 14px;
}

#projects .block:hover img {
	transform: scale(1.07);
	-webkit-transform: scale(1.07);
	-o-transform: scale(1.07);
	-moz-transform: scale(1.07);
	-ms-transform: scale(1.07);
	transition: all 0.25s ease-in-out;
	filter: brightness(80%);
}

#projects .image {
	vertical-align: top;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

#projects .image img {
	width: 100%;
	height: 100%;
	transform: scale(1);
	-webkit-transform: scale(1);
	-o-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transition: all 0.25s ease-in-out;
}
/**/

/*videos blocks*/
#videos {
	margin-bottom: 20px;
	margin-left: 65px;
	margin-right: 50px;
	height: 100%;
	display: flex;
    flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
}

#videos .block {
	background: linear-gradient(217deg, #00268d62, rgba(255,0,0,0) 70.71%),
	linear-gradient(127deg, #2a004182, #1c0004af 70.71%),
	linear-gradient(336deg, #00145e7c, rgba(0,0,255,0) 70.71%);
	border: #00125423;
	border-style: solid;
	border-width: 1px;
	border-radius: 8px;
	float: left;
	width: 100%;
	max-width: 250px;
	margin-bottom: 48px;
	margin-top: 10px;
	padding: 14px;
	margin-right: 30px;
	position: relative;
}

#videos .block:hover {
	background: linear-gradient(217deg, #002a9e, rgba(255,0,0,0) 70.71%),
	linear-gradient(127deg, #32004d, #26000b 70.71%),
	linear-gradient(336deg, #00145e, rgba(0, 0, 255, 0.775) 70.71%);
	box-shadow: 0 0 10px 3px #4f005441;
	cursor: pointer;
/**	animation: gradient 16s linear infinite; **/
}

#videos .block:first-child {
	margin-left: 0;
}

#videos #image {border-radius: 8px; width: 25px; height: 35px; opacity: 0.5;}
#videos #image:hover {filter: brightness(150%); border-radius: 8px; box-shadow: 0 0 8px 3px #ac30f326; opacity: 0.8;}

#videos .image {
	margin-bottom: 13px;
}
#videos .text {
	float: left;
	width: 100%;
	text-align: left;
}
#videos .phrase {
	color: #b3b3ff;
	font-weight: 600;
	font-size: 18px;
	margin-bottom: 6px;
}
#videos .info {
	color: #f3dafd;
	margin-bottom: 20px;
	font-weight: 400;
	font-size: 12px;
}
#videos .desc {
	color: #c8ccd0;
	font-size: 14px;
}

#videos .block:hover .phrase {
	color: #b3bcff;
}

#videos .block:hover .info {
	color: #f3dafd;
}

#videos .block:hover .desc {
	color: #ffffff;
}

#videos .block:hover img {
	transform: scale(1.07);
	-webkit-transform: scale(1.07);
	-o-transform: scale(1.07);
	-moz-transform: scale(1.07);
	-ms-transform: scale(1.07);
	transition: all 0.25s ease-in-out;
	filter: brightness(80%);
}

#videos .image {
	vertical-align: top;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

#videos .image img {
	width: 100%;
	height: 100%;
	transform: scale(1);
	-webkit-transform: scale(1);
	-o-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transition: all 0.25s ease-in-out;
}
/**/

/*visualizations blocks*/
#visualizations {
	margin-bottom: 20px;
	margin-left: 65px;
	margin-right: 50px;
	height: 100%;
	display: flex;
    flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
}

#visualizations .block {
	background: linear-gradient(217deg, #00268d62, rgba(255,0,0,0) 70.71%),
	linear-gradient(127deg, #2a004182, #1c0004af 70.71%),
	linear-gradient(336deg, #00145e7c, rgba(0,0,255,0) 70.71%);
	border: #00125423;
	border-style: solid;
	border-width: 1px;
	border-radius: 8px;
	float: left;
	width: 100%;
	max-width: 250px;
	margin-bottom: 48px;
	margin-top: 10px;
	padding: 14px;
	margin-right: 30px;
	position: relative;
}

#visualizations .block:hover {
	background: linear-gradient(217deg, #002a9e, rgba(255,0,0,0) 70.71%),
	linear-gradient(127deg, #32004d, #26000b 70.71%),
	linear-gradient(336deg, #00145e, rgba(0, 0, 255, 0.775) 70.71%);
	box-shadow: 0 0 10px 3px #4f005441;
	cursor: pointer;
/**	animation: gradient 16s linear infinite; **/
}

#visualizations .block:first-child {
	margin-left: 0;
}

#visualizations #image {border-radius: 8px; width: 25px; height: 35px; opacity: 0.5;}
#visualizations #image:hover {filter: brightness(150%); border-radius: 8px; box-shadow: 0 0 8px 3px #ac30f326; opacity: 0.8;}

#visualizations .image {
	margin-bottom: 13px;
}
#visualizations .text {
	float: left;
	width: 100%;
	text-align: left;
}
#visualizations .phrase {
	color: #b3b3ff;
	font-weight: 600;
	font-size: 18px;
	margin-bottom: 6px;
}
#visualizations .info {
	color: #f3dafd;
	margin-bottom: 20px;
	font-weight: 400;
	font-size: 12px;
}
#visualizations .desc {
	color: #c8ccd0;
	font-size: 14px;
}

#visualizations .block:hover .phrase {
	color: #b3bcff;
}

#visualizations .block:hover .info {
	color: #f3dafd;
}

#visualizations .block:hover .desc {
	color: #ffffff;
}

#visualizations .block:hover img {
	transform: scale(1.07);
	-webkit-transform: scale(1.07);
	-o-transform: scale(1.07);
	-moz-transform: scale(1.07);
	-ms-transform: scale(1.07);
	transition: all 0.25s ease-in-out;
	filter: brightness(80%);
}

#visualizations .image {
	vertical-align: top;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

#visualizations .image img {
	width: 100%;
	height: 100%;
	transform: scale(1);
	-webkit-transform: scale(1);
	-o-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transition: all 0.25s ease-in-out;
}
/**/


/*Recomendation blocks*/
#recomendation {
	max-width: 275px; 
	margin-left: 15px; 
	margin-right: 15px; 
	margin-bottom: 0px;
}

#recomendation .phrase{
	color: #ffffff;
	position: absolute;
	bottom: -6px;
	z-index: 2;
	background-color: #170c22d7;
	padding: 5px;
	font-size: 15px;
	margin-right: 14px;
	display: none;
	animation: fadein 0.5s;
	width: 100%;
}

#recomendation .image {
    margin-bottom: 0px;
	overflow: hidden;
}

#recomendation img {
	filter: brightness(100%);
	transform: scale(1.06);
	-webkit-transform: scale(1.06);
	-o-transform: scale(1.06);
	-moz-transform: scale(1.06);
	-ms-transform: scale(1.06);
	transition: all 0.25s;
}

#recomendation:hover {
	max-width: 275px; 
	margin-left: 15px; 
	margin-right: 15px; 
	margin-bottom: 0px;
	background-size: 380% 100%;
	animation: gradient 12s linear infinite;
}

#recomendation:hover .phrase {
	display: block;
	transition: all 1s;
}

#recomendation:hover img {
	filter: brightness(50%);
	transform: scale(1.15);
	-webkit-transform: scale(1.15);
	-o-transform: scale(1.15);
	-moz-transform: scale(1.15);
	-ms-transform: scale(1.15);
	transition: all 0.25s ease-in-out;
}

/*/
/* Featured and certifications section */
.container_bottom {
	width: 100%;
	position: relative;
}

.featured {
	z-index: 1;
	padding: 15px;
}

.featured * {
	display: inline-block;
	vertical-align: middle;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
}

.tool {
	float: left;
	margin-right: 20px;
	margin-left: 10px;
	margin-bottom: 30px;
	position: relative;
}

.featured img {
	opacity: .5;
	filter: grayscale(100%) brightness(140%) contrast(40%);
	transition: all 0.4s;
}
.featured img:hover {
	opacity: 1;
	filter: grayscale(0%);
	cursor: pointer;
	transition: all 0.4s;
}

.title_featured {
	color: gray;
	font-size: 16px;
	text-align: center;
	height: 100%;
	margin-top: 10px;
	margin-bottom: 5px;
}

.title_certifications {
	color: gray;
	font-size: 16px;
	text-align: center;
	height: 100%;
	margin-top: 10px;
	margin-bottom: 5px;
}

.certifications {
	z-index: 1;
	padding: 15px;
}

.certifications * {
	display: inline-block;
	vertical-align: middle;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
}

.certifications #badge {
	margin-right: 20px;
	margin-left: 20px;
	margin-bottom: 30px;
	position: relative;
}

.certifications img {
	opacity: .5;
	filter: grayscale(100%) brightness(140%) contrast(40%);
	transition: all 0.4s;
}
.certifications img:hover {
	opacity: 1;
	filter: grayscale(0%);
	cursor: pointer;
	transition: all 0.4s;
}

/**/
/* Botton section */
/**/
.bottom {
	background: #10091a;
	background-size: auto;
	height: 60px;
	color: #fff;
	text-align: center;
	padding-top: 12px;
	position: relative;
	z-index: 3;
}
.bottom_button{
	color: white;
	display: block;
	margin: 10px auto;
	width: 300px;
	height: 25px;
	padding: 3px;
	border-radius: 10px;
	font-size: 14px;
}

#bottom_button_1{
	background: linear-gradient(90deg, rgb(0, 37, 202) 0%, rgb(176, 0, 0) 100%);
}

#bottom_button_1:hover {
	box-shadow: 0 0 10px 3px rgba(107, 81, 255, 0.298);
	border-radius: 10px;
	filter: brightness(150%);
	cursor: pointer;
}

#bottom_button_2 {
	background: linear-gradient(90deg, rgb(76, 0, 217) 0%, rgb(193, 71, 0) 100%);
}

#bottom_button_2:hover {
	box-shadow: 0 0 10px 3px rgba(156, 81, 255, 0.17);
	border-radius: 10px;
	filter: brightness(150%);
	cursor: pointer;
}

.container_bottom a:hover {text-decoration: none;}

/**/

/*/
/* Footer */
/**/

.footer {
	background: #10091a;
	color: #fff;
	padding: 25px 0;
	position: relative;
	z-index: 9;

}

.container3 {
	display: flex;
	flex-wrap: wrap;
  	justify-content: center;
}

.social {
	font-size: 12px;
	margin-top: 10px;
	margin-bottom: 20px;
	margin-left: 20px;
	margin-right: 20px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
  	justify-content: center;
}

.social lnk {
	margin: 7px;
	width: 25px;
	height: 25px;
	float: left;
	font-size: 13px;
	background-size: 25px;
	border-radius: 3px;
	background: linear-gradient(45deg, rgb(87, 1, 161) 10%, rgb(3, 40, 172) 40%, rgb(24, 1, 70) 80%);
	justify-content: center;
}

.social lnk:hover {
	background: linear-gradient(45deg, rgb(124, 13, 221) 10%, rgb(31, 79, 252) 40%, rgb(50, 1, 148) 80%);
	box-shadow: 0 0 5px 3px rgba(31, 71, 248, 0.247);
}
.social img {
	cursor: pointer;
}

.copyright-disclaimer {
	clear: right;
	text-align: right;
	line-height: 20px;
	margin-right: 20px;
	font-size: 12px;
	color: rgb(196, 180, 253);
	float: left;
}

.foot-text {
	margin-left: 20px; 
	margin-right: 20px;
	margin-bottom: 10px;
	font-size: 12px; 
	color: #8e959c; 
	display: block;
	text-align: center;
}

.foot-text a {color: rgb(196, 180, 253);
}


/* Fade elements when screen width is too small */
@media only screen and (max-width: 1200px) {
	.article {
		padding-top: 40px;
		padding-bottom: 0px;
	}
	#recomendation .phrase {
		display: block;
	}
	.middle{
		border-radius: 0px;
		margin-bottom: 0px;
	}
	.blog_block {
		border-radius: 0px;
		margin: 0px;
	}
	.featured {
		padding: 25px;
	}
	.certifications {
		padding: 25px;
	}
}

@media only screen and (max-width: 754px) {
	#videos .block {
		max-width: 407px;
	}
	iframe {
		height: 420px;
	}
}


@media only screen and (max-width: 518px) {
	.blocks .block {
		margin-right: 10px;
	}
	.featured img {
		max-width: 85%;
		max-height: 100%;
		height: 23px;
	}
	.tool {
		margin-bottom: 25px;
		margin-right: 15px;
    	margin-left: 7.5px;
	}
	.title_featured {
		font-size: 14px;
	}
	.block {
		padding: 10px;
	}
	iframe {
		height: 290px;
	}
}

@media only screen and (max-width: 390px) {
    .nav li {
        display: none;
    }
	.article h0 {
		font-size: 10px;
	}
	.article h1 {
		font-size: 26px;
	}
	.bottom_button {
		width: 220px;
		font-size: 13px;
	}
	.footer-nav {
		max-width: 120px;
	}
	#projects .phrase {
		font-size: 16px;
	}
	#projects .info {
		font-size: 10px;
	}
	#projects .desc {
		font-size: 12px;
	}
	#projects #image {
		display: none !important;
	}
	#projects {
		margin: 0 0 20px 20px;
	}
	#videos .block {
		max-width: 350px;
		min-width: 0px;
	}
	#videos {
		margin-left: 25px;
		margin-right: 25px;
	}
	iframe {
		height: 219px;
	}
}

@media only screen and (max-width: 320px) {
    .footer-nav {
		max-width: 100px;
	}
	.blocks .phrase {
        font-size: 14px;
    }
	.blocks .info {
        font-size: 11px;
    }
	.blocks .desc {
        font-size: 12px;
    }
	.text_middle p {
		font-size: 17px;
		line-height: 20px;
	}
	.prev_button {
		font-size: 13px;
	}
	.next_button {
		font-size: 13px;
	}
	#recomendation .phrase{
		font-size: 12px;
}
}

@keyframes fade {
	0%,100% { opacity: 1; }
	50% { opacity: 0.75; filter: brightness(250%);}
  }

@keyframes fadein {
	0% {opacity: 0;}
	100% {opacity: 1;}	
}

@keyframes slideshow {
	0%    { left: 0; }
	100%  { left: -100%;}
	}

@keyframes resize {
	0% {background-size: 100%;}
	100% {background-size: 150%;}	
}

@keyframes gradient { 
	0% {
		background-position: 0 0; box-shadow: 0 0 10px 3px #6e00a141;
	  }
	  50% {
		background-position: 100% 0; box-shadow: 0 0 10px 5px #3411fd2f;
	  }
	  100% {
		background-position: 0 0; box-shadow: 0 0 10px 3px #6100a141;
	  }
	}


/*Loading overlay*/

.overlay {
	margin-top: 0px;
	margin-left: 0px;
}

#overlay:hover {
	filter: none;
	-webkit-filter: none;
}

