  /********/
 /* Main */
/********/

:root {
    --main-color:#000;
    --secondary-color:#fff;
	--tertiary-color:#E1AD01;
}

#site_wrapper {
	overflow-x: hidden;
}

html, body {
	height: 100vh;
	margin: 0;
	font-family: sans-serif;
}

p, a, span {
	color: var(--main-color) !important;
	color: #000;
	font-size: 1em;
	text-decoration: none;
}

.vl {
	border-left: 1px solid #000;
	margin-top: 10vh;
	height: 80vh;
	z-index: 1;
	position: fixed;
}

  /**************/
 /* Scroll Bar */
/**************/

::-webkit-scrollbar {
    display: none;
}

  /***********/
 /* Nav Bar */
/***********/

#nav_bar {
	position: fixed;
	top: 50%;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 1;
}

@media screen and (max-aspect-ratio: 1/1) {
	#nav_bar  li{
		padding-top: 3vh;
	}
}

#nav_bar ul li a span.dot{
	margin: -0.2em 0;
	border: 0.2em solid var(--main-color) !important;
	border: #000;
	position: relative;
	display: inline-block;
	background-color: var(--main-color) !important;
	background-color: #000;
	height: 0.8em;
	width: 0.8em;
	border-radius: 40%;
	-webkit-transition: -webkit-transform .2s,background-color .5s;
	-moz-transition: -moz-transform .2s,background-color .5s;
	transition: transform .2s,background-color .5s;
	-webkit-transform-origin: 50% 50%;
	-moz-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	transform: scale(.6);
	padding: 0;
	box-shadow: 0 0 0.1em var(--secondary-color) !important;
	box-shadow: 0 0 0.1em #fff;
}

#nav_bar ul li a.is-selected span.dot{
	background-color: var(--secondary-color) !important;
	background-color: #fff;
}

#nav_bar ul li a span.label{
	position: relative;
	-webkit-transition: -webkit-transform .2s,opacity .2s;
	-moz-transition: -moz-transform .2s,opacity .2s;
	transition: transform .2s,opacity .2s;
	opacity: 0;
	-webkit-transform-origin: 100% 50%;
	-moz-transform-origin: 100% 50%;
	-ms-transform-origin: 100% 50%;
	transform-origin: 100% 50%;
	margin-left: 0.5em;
	font-weight: bold;
}

@media screen and (max-aspect-ratio: 1/1) {	
	#nav_bar ul li a span.label{
		writing-mode: tb-rl;
		-ms-transform: translateY(45%);
		transform: translateY(45%);
		
	}
}

#nav_bar ul li a:hover span.dot{
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

#nav_bar ul li a:hover span.label{
	opacity: 1;
}

ul {
	list-style: none;
	padding-left: 0.5em;
	margin-top: 0;
	margin-bottom: 0;
}

  /*****************/
 /* Contact Icons */
/*****************/

div#contact_block {
	display: inline-block;
	position: fixed;
	right: 0;
	height: 2.5em;
	top: 0.6em;
	z-index: 1;
	width: max-content;
}

.contact_icon {
	padding-right: 0.4em;
	display: inline;
	color: var(--main-color) !important;
	color: #000
}

  /**************/
 /*    Logo    */
/**************/

.logo {
	right: 0.5em;
    bottom: 0.5em;
    height: 3em;
    margin-top: 1.5em;
    z-index: 1;
}

#logo_block {
	transform: rotate(-45deg) translateX(4em) translateY(7.5em);
    background-color: rgba(80,80,80,0.8);
    position: fixed;
    bottom: 0em;
    height: 10em;
    width: 22em;
    right: 0;
    z-index: 1;
    text-align: center;
}

  /************/
 /* Headings */
/************/

p.heading {
	color: var(--main-color) !important;
	color: #000;
	display: inline-block;
	font-size: 2em;
	font-weight: bold;
	margin-top: 1.3em;
	margin-bottom: 0;
}

p.subHeading {
	color: var(--main-color) !important;
	color: #000;
	font-size: 1em;
	font-weight: bold;
	margin-top: 1.3em;
	margin-bottom: 0;
}

hr {
	/*margin: 0 0 0 50vw;*/
    border: none;
    height: 0.2em;
	width: 4em;
    color: var(--tertiary-color) !important;
	color: #fff;
    background-color: var(--tertiary-color) !important;
	background-color: #fff;
	/*-ms-transform: translateX(-50%);
	transform: translateX(-50%);*/
}

  /**************/
 /* Background */
/**************/

.background_layer {
	position: relative;
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 50vh;
	width: 100vw;
	min-width: 100vw;
	padding-bottom: 1vh;
	text-align: center;
}

.background_one {
	background-color: #808080;
}

.background_two {
	background-color: #d0d0d0;
}

.background_three {
	background-color: #a0a0a0;
}

.background_four {
	background-color: #c0c0c0;
}

.background_five {
	background-color: #707070;
}

.background_six {
	background-color: #c0c0c0;
	min-height: 100vh;
}

  /***********/
 /*  About  */
/***********/

#name {
	display: inline-block;
	font-size: 3.5em;
	font-weight: bold;
	margin-bottom: 0;
}

.about {
	font-size: 1em;
	font-weight: bold;
}


  /*************/
 /* Education */
/*************/

#education_timeline {
	padding: 1vh 1vw 1vh 0;
	display: inline-block;
}

.education {
    border-bottom: 3px solid #fff;
	display: inline-block;
	padding: 1em;
}

  /***************************/
 /* Professional Experience */
/***************************/

#prof_experience_timeline {
  padding: 1vh 1vw 1vh 0;
  display: inline-block;
}

.prof_experience {
  border-bottom: 3px solid #fff;
  display: inline-block;
  padding: 1em;
}

  /************************/
 /* Volunteer Experience */
/************************/

#vol_experience_timeline {
  padding: 1vh 1vw 1vh 0;
  display: inline-block;
}

.vol_experience {
  border-bottom: 3px solid #fff;
  display: inline-block;
  padding: 1em;
}

  /********************/
 /* Experience popup */
/********************/

.experience_popup {
	position: fixed;
	z-index: 1;
	top: 0;
	left: 0;
	height: -webkit-fill-available;
	width: -webkit-fill-available;
	background: rgba(200,200,200, 0.7);
  }
  
.experience_popup_text {
	padding: 1vh 1vw 1vh 0;
	color: #d0d0d0 !important;
	background-color: #404040;
	position: fixed;
	left: 50%;
	top: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
  }
  


  /***************/
 /* Programming */
/***************/

#programming_timeline {
  padding: 1vh 1vw 1vh 0;
  display: inline-block;
}
  
.programming {
  border-bottom: 3px solid #fff;
  display: inline-block;
  padding: 1em;
}

  /*****************/
 /* Photo Gallery */
/*****************/

#photo_gallery {
	display: inline-block;
}

.photo {
	padding: 1em 0.7em 0 0.7em;
    width: 24vw;
    height: 16vw;
	display: inline-block;
}

/* Responsive layout - makes a two column-layout instead of four columns */
@media screen and (max-width: 800px) {
  .photo {
    width: 33vw;
    height: 22vw;
	display: inline-block;
  }
}

/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
  .photo {
    width: 75vw;
    height: 46vw;
	display: inline-block;
	
  }
}

.photo img { 
	height: inherit;
    width: inherit;
    object-fit: cover;
}