:root {
  font-size: 1.2rem;
  color: #8992b0;
  letter-spacing: 0.05rem;
  margin: 2.3em 7.4em 2.2em 7.4em;
  font-family: "Roboto", sans-serif;
  line-height: 1.7rem;
}

* {
  box-sizing: border-box;
}

body * + * {
  margin-top: 1.5rem;
}

body {
  /* background-color: rgb(240, 240, 240); */
  background-color: white;
  /* background-color: #f9f9f9; */
  margin: 0;
  font-size: 1.2rem;
  max-width: 1095px;
}

header {
  height: 60px;
  display: flex;
  justify-content: space-between;
  /* border: 1px solid tan; */
  width: 100%;
}

.logo-container {
  /* border: 1px solid red; */
  /* below width had to be added for safari compatibility */
  width: 100px;
}

.logo-container > img {
  overflow: hidden;
  object-fit: cover;
  height: 100%;
  /* border: 1px solid orange; */
  animation: fade-in 700ms ease-in-out both;
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* come back to this */
.nav-button:hover {
  cursor: pointer;
  color: #008c86;
}

.main-nav {
  height: 100%;
  margin: 0;
  /* border: 1px solid green; */
}
.main-nav > ul {
  height: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.main-nav > ul li {
  margin: 0;
  padding-left: 1.32em;
  padding-right: 1.32em;
  list-style: none;
  /* border: 1px solid red; */
}

#about-nav-animation {
  animation: fade-in-top 400ms ease-in-out both;
  animation-delay: 350ms;
}
#portfolio-nav-animation {
  animation: fade-in-top 400ms ease-in-out both;
  animation-delay: 425ms;
}
#contact-nav-animation {
  animation: fade-in-top 400ms ease-in-out both;
  animation-delay: 575ms;
}

#resume {
  animation: fade-in-top 400ms ease-in-out both;
  animation-delay: 650ms;
}

@keyframes fade-in-top {
  0% {
    transform: translateY(-15px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

.main-nav > ul li a {
  text-decoration: none;
  color: inherit;
}

#resume {
  color: #008c86;
  border: #008c86 solid 1px;
  border-radius: 1em;
  padding: 0.3em 0.8em;
  margin-left: 1.32em;
  width: 135px;
  text-align: center;
}

#resume:hover {
  color: white;
  background-color: #008c86;
  border: #008c86 solid 1px;
  cursor: pointer;
}

/*  */
/* intro section */
/*  */

.intro {
  /* border: silver 1px solid; */
  margin-top: 16vh;
  /* margin-bottom: 7em; */
  /* need to switch to padding to get proper scroll-to */
  padding-bottom: 7em;
}

.lead-in {
  color: #008c86;
  font-size: 1.3rem;
  /* border: 1px solid orange; */
  animation: fade-in-bottom 500ms ease-in-out both;
  animation-delay: 1300ms;
}

.name {
  margin-top: 0.9rem;
  color: #ccd6f6;
  font-size: 2.5em;
  font-weight: 500;
  line-height: 3.4rem;
  /* border: 1px solid purple; */
  animation: fade-in-bottom 500ms ease-in-out both;
  animation-delay: 1375ms;
}

.name + div {
  margin-top: 0.35rem;
  color: #8992b0;
  font-size: 2.5em;
  /* border: 1px solid green; */
  line-height: 3.4rem;
  font-weight: 500;
  animation: fade-in-bottom 500ms ease-in-out both;
  animation-delay: 1450ms;
}

.intro-blurb {
  margin-top: 0.8rem;
  width: 530px;
  /* border: 1px solid yellowgreen; */
  animation: fade-in-bottom 500ms ease-in-out both;
  animation-delay: 1525ms;
}

@keyframes fade-in-bottom {
  0% {
    transform: translateY(25px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
/*  */
/*  */

.title + div {
  margin-top: 1.65rem;
  /* border: 1px solid green; */
}

section {
  visibility: hidden;
  opacity: 0;
  transition: all 500ms linear;
  /* border: purple solid 1px; */
  margin-top: 0;
  padding-bottom: 2.8rem;
  padding-top: 2.7rem;
}

section + section {
  /* margin-top: 5.5rem; */
  /* need to switch to padding to get proper scroll-to */
  /* padding-bottom: 5.5rem; */
}

section {
  /* need to switch to padding to get proper scroll-to */
  /* padding-bottom: 5.5rem; */
}

.in-viewport {
  visibility: visible;
  opacity: 1;
}

.about-me-flex {
  display: flex;
  width: 100%;
  height: 100%;
  /* border: 1px solid pink; */
}

.intro-and-skills-flex {
  width: 60%;
  /* border: 1px solid red; */
  padding-right: 2.3rem;
}

.about-me-intro {
  /* border: 1px solid grey; */
}

.skills {
  display: flex;
  flex-direction: column;
  height: 211px;
  /* border: 1px solid blue; */
  margin-top: 1.3rem;
}

.listed-skills-flex {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  /* border: 1px solid purple; */
  list-style-type: square;
  padding-left: 22px;
  margin-left: 0;
  min-height: 0rem;
  margin-top: 1.3rem;
  margin-bottom: 0;
  width: 100%;
}

.listed-skills-flex li {
  margin-right: 17%;
  margin-top: 0;
  margin-bottom: 0.9rem;
}

/* to color bullets */
/* .listed-skills-flex li::before {
  content: "\2022";
  color: #008c86;
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
} */

.profile-image-container {
  margin-top: 0;
  width: 40%;
  position: relative;
  z-index: 5;
  /* border: 1px solid red; */
}

.my-photo-container {
  /* border: 1px solid pink; */
  /* width: 91%; */
  width: 85%;
  position: relative;
  /* height: auto; */
  left: 30px;
  display: flex;
}

.my-photo-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  /* background-color: #7fffd4; */
  /* background-color: #07aaa2 */
  /* border-radius: 1rem; */
  z-index: 50;
  visibility: 1;
  opacity: 1;
  transition: all 250ms ease-in-out;
}

#photo-overlay-hovered {
  visibility: hidden;
  opacity: 0;
}

.my-photo {
  /* border: 1px solid rgb(0, 47, 255); */
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
  /* filter: brightness(1);
  filter: saturate(1.1); */
  /* border-radius: 1rem; */
}

.my-photo-container > img {
  width: 100%;
  margin-top: 0;
}

.profile-image-background {
  margin-top: 0;
  position: absolute;
  top: 30px;
  left: 60px;
  width: 85%;
  background-color: #008c86;
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
  z-index: -1;
  transition: all 250ms ease-in-out;
  /* border-radius: 1rem; */
}

#profile-background-hovered {
  /* transform: translateX(-10px) translateY(-10px); */
  transform: translateX(11px) translateY(11px);
  transform-origin: 0% 0%;
}

.profile-image-background-two {
  margin-top: 0;
  position: absolute;
  top: -30px;
  left: 0px;
  width: 85%;
  /* background-color: #667094; */
  background-color: #008c86;
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
  z-index: -1;
  transition: all 250ms ease-in-out;
  /* border-radius: 1rem; */
}

#profile-background-two-hovered {
  /* transform: translateX(10px) translateY(10px); */
  transform: translateX(-11px) translateY(-11px);
  transform-origin: 0% 0%;
}

.project {
  display: flex;
  /* border: 1px solid tan; */
  height: 900px;
}

.project + .project {
  margin-top: 3.5rem;
}

.title {
  font-size: 1.65rem;
  /* font-weight: 500; */
  /* border: 1px solid red; */
}

.title > span {
  font-size: 1.6rem;
  color: #008c86;
  margin-right: 0.3em;
}

.project-image-container {
  position: relative;
}

.slideshow-container {
  /* border: 1px solid red; */
}

/*  */

.swiper {
  width: 100%;
  height: 100%;
  /* border: 1px solid purple !important; */
}

.swiper-slide {
  overflow: hidden;
  text-align: center;
  /* font-size: 15px; */
  background: #fff;
  margin-top: 0;
  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  /* margin-right: 0 !important; */
  /* border: 1px solid red !important; */
  /* object-fit: fill; */
}

.swiper-slide img {
  display: block;
  width: 100%;
  /* height: auto; */
  position: absolute !important;
  top: 0 !important;
  /* border: 1px solid teal; */
  /* object-fit: fill; */
  /* border: 1px solid orange; */
}

.swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0px;
  width: 100%;
  padding-top: 25px;
  padding-bottom: 20px;
  padding-right: 30%;
  padding-left: 30%;
  margin-right: auto;
  margin-left: auto;
}

.swiper-pagination-bullet {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  font-size: 1rem;
  color: transparent;
  width: 15px !important;
  height: 15px !important;
  opacity: 1 !important;
  background-color: rgba(0, 0, 0, 0.2) !important;
}

.swiper-pagination-bullet-active {
  /* color: white; */
  background-color: rgb(0, 155, 155) !important;
}

.swiper-button-prev {
  color: rgb(0, 140, 134) !important;
  left: 5.1% !important;
  /* top: 428px !important; */
  z-index: 100 !important;
  /* border: 1px solid orange; */
  font-weight: 100 !important;
  transition: all 250ms ease-in-out;
}

.swiper-button-next {
  color: rgb(0, 140, 134) !important;
  right: 5.1% !important;
  /* top: 428px !important; */
  z-index: 100 !important;
  font-weight: 100 !important;
  transition: all 250ms ease-in-out;
}

.swiper-button-prev:hover {
  color: rgb(7, 170, 162) !important;
}

.swiper-button-next:hover {
  color: rgb(7, 170, 162) !important;
}

.swiper-button-prev::after {
  font-size: 75px !important;
  z-index: 100 !important;
  /* border: 1px solid red; */
}

.swiper-button-next::after {
  font-size: 75px !important;
  z-index: 100 !important;
}

.swiper-button-disabled {
  opacity: 1 !important;
  color: rgb(0, 140, 134, 0.3) !important;
}

.project-odd > .project-image-container {
  align-self: flex-end;
  overflow: hidden;
  border-radius: 2em;
  /* margin-left: -400px; */
  /* height: 557px;
  min-height: 557px;
  max-height: 557px; */
  width: 100%;
  min-width: 670px;
  max-width: 670px;
  z-index: 50;
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
  /* transition: all 300ms ease-in-out; */
  border: rgb(189, 189, 189, 0.2) 1px solid;
}

/* will not move left befond 1036px */

/* .project-odd > .project-image-container:hover { */
/* animation: scale-up-br 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both; */
/* transform: scale(1.02); */
/* } */

/* @keyframes scale-up-br {
  0% {
    transform: scale(1);
    transform-origin: 100% 100%;
  }
  100% {
    transform: scale(1.1);
    transform-origin: 100% 100%;
  }
} */

.project-odd > .project-details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0px;
  overflow: hidden;
  height: 500px;
  z-index: 10;
  color: white;
  background-color: rgb(120, 163, 170, 0.55);
  padding: 1.7em 2.1em;
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
}

.project-even > .project-image-container {
  text-align: right;
  position: relative;
  width: 62%;
  right: 0;
  margin-left: -50px;
  align-self: flex-end;
  height: 475px;
  border-radius: 1.5em;
  /* object-fit: cover; */
  overflow: hidden;
  max-width: 600px;
  z-index: 50;
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
}

.project-even > .project-details {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: calc(44% + 0px);
  /* object-fit: cover; */
  overflow: hidden;
  height: 475px;
  z-index: 10;
  color: white;
  background-color: rgb(120, 163, 170, 0.6);
  padding: 1.5em 2em;
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
}

.inset-tagline {
  font-size: 1.25rem;
  color: #008c86;
  /* font-size: 1.15rem;
  color: #008c86; */
}

.project-name {
  margin-top: 1rem;
  font-size: 1.66rem;
  font-weight: 200;
  /* margin-top: 0.5rem;
  font-size: 1.55rem;
  font-weight: 200; */
}

.description-odd {
  margin-top: 1rem;
  margin-bottom: 0;
  font-size: 1.2rem;
  line-height: 1.85rem;
  /*   margin-top: 0.5rem;
  margin-bottom: 0;
  font-size: 1.1rem; */
}

.description-even {
  margin-top: 1.1rem;
  margin-bottom: 0;
  font-size: 1.1rem;
  padding-right: 1.5rem;
}

.tech-container {
  width: 100%;
  /* border: 1px solid red; */
  margin-top: 1.1rem;
  padding-top: 0;
  color: #8992b0;
}

.tech {
  display: flex;
  /* justify-content: space-between; */
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin-top: 0;
  margin: 0;
}

.tech-odd {
  justify-content: flex-start;
  /* border: 1px solid red; */
  /* justify-content: flex-end; */
}

.tech-odd > li {
  font-size: 1.2rem;
  margin-top: 1.1rem;
  margin-top: 0;
  margin-right: 1.1rem;
  /* border: 1px solid purple; */
  /*   font-size: 1.1rem;
  margin-top: 1rem;
  margin-top: 0;
  margin-right: 1.1rem; */
}

/* .tech-odd > li:first-child {
  margin-right: 0rem;
  margin-top: 0rem;
} */

.tech-even {
  justify-content: flex-start;
}

.tech-even > li {
  font-size: 1.1rem;
  margin-top: 1.1rem;
  margin-top: 0;
  margin-right: 1.3rem;
}

.tech-even > li:last-child {
  margin-right: 0rem;
  margin-top: 0rem;
}

.links {
  width: 100%;
  /* border: 1px solid green; */
  margin-top: 1.1rem;
  /* margin-bottom: 3.5rem; */
}

.links > ul {
  display: flex;
  list-style: none;
  margin-bottom: 0;
  /* border: 1px solid yellow; */
  padding: 0;
  margin: 0;
}

.links > ul li {
  font-size: 1.2rem;
  margin: 0em;
  margin-top: 0;
  /* border: 1px solid red; */
}

.links > ul li + li {
  font-size: 1.2rem;
  /* margin: 0em 0em 0em 1em; */
  margin-top: 0;
  /* border: 1px solid red; */
  margin-top: -2px;
}

.links-odd > ul {
  justify-content: flex-start;
  /*  */
  /* justify-content: flex-end; */
}

.links-odd > ul li {
  margin-right: 1rem;
  margin-left: 0;
  /* border: 1px pink solid; */
}

.links-even > ul {
  justify-content: flex-start;
}

.links-even > ul > li {
  margin-right: 1rem;
  margin-left: 0;
  /* border: 1px pink solid; */
}

.project-link-image-container {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.links img {
  width: 35px;
  /* border: 1px solid red; */
  /* transition: all 100ms ease-in-out; */
}

/* .links-odd > ul li:hover {
  transform: scale(1.1);
} */

/*  */
/* sidebar */
/*  */
.sidebar {
  position: fixed;
  bottom: 150px;
  left: 55px;
  animation: fade-in-sidebar 700ms ease-in-out both;
  animation-delay: 2.05s;
}

@keyframes fade-in-sidebar {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.sidebar::after {
  position: absolute;
  content: ".";
  color: transparent;
  width: 100px;
  height: 300px;
  border-right: #667094 3px solid;
  right: 13px;
  top: 188px;
}

.sidebar > ul {
  padding: 0;
  margin: 0;
}

.sidebar > ul li a {
}

.sidebar-icon {
  width: 30px;
}

/*  */
/*  */
/* animate sidebar icons on hover */
#icons-transition-container {
  position: relative;
  margin-top: 0.7em;
  margin-bottom: 0.7em;
  list-style: none;
}

#icons-transition-container a + a {
  margin-top: 0;
  position: absolute;
  left: 0;
  opacity: 1;
}

.bottom img {
  opacity: 0;
  transition: all 200ms ease-in-out;
}

.top img {
  opacity: 1;
  transition: all 200ms ease-in-out;
}

.top img:hover {
  opacity: 0;
  transform: translateY(-5px) scale(1.04);
}

#show-bottom-icon {
  opacity: 1;
  transform: translateY(-5px) scale(1.04);
}

/* animate project description links on hover */
#icons-transition-container-project-description {
  position: relative;
}

#icons-transition-container-project-description a + a {
  margin-top: 0;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 1;
}

.project-description-link-bottom img {
  opacity: 0;
  transition: all 200ms ease-in-out;
}

.project-description-link-top img {
  opacity: 1;
  transition: all 200ms ease-in-out;
}

.project-description-link-top img:hover {
  opacity: 0;
  transform: scale(1.04);
}

#show-project-description-link-bottom-icon {
  opacity: 1;
  transform: scale(1.04);
}

/* footer section */
.footer-links {
  /* border: 1px solid red; */
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1.5rem;
  margin-bottom: 15.5rem;
  width: 217px;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}

.personal-site-links {
  /* border: 1px solid violet; */
  /* margin-top: 0.9rem; */
  margin-top: 0;
  display: block;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.personal-site-github-link {
  width: 25px;
}

/* animate footer links on hover */
#show-new-footer-link1,
#show-new-footer-link2,
#show-new-footer-link3 {
  display: none;
}

.previously-sidebar-footer-icon {
  width: 31px;
}

#footer-icons-container {
  position: relative;
  list-style: none;
  margin-left: auto;
  margin-right: auto;
  /* border: 1px solid orange; */
}

#footer-icons-container a + a {
  /* border: 1px solid black; */
  margin-top: 0;
  position: absolute;
  top: 0;
  left: auto;
  right: auto;
  opacity: 1;
}

.site-links-appearing-at-smaller-widths {
  margin: 0;
  position: relative;
  /* border: 1px solid black; */
  list-style: none;
}

.site-links-appearing-at-smaller-widths a + a {
  position: absolute;
  bottom: 0px;
  /* border: 1px solid purple; */
  margin: 0;
}

.footer-link-bottom img {
  opacity: 0;
  transition: all 200ms ease-in-out;
  /* border: 1px solid teal; */
  margin: 0;
}

.footer-link-top img {
  opacity: 1;
  transition: all 200ms ease-in-out;
  /* border: 1px solid blue; */
  margin: 0;
}

.footer-link-top img:hover {
  opacity: 0;
  transform: scale(1.04);
}

#show-footer-link-bottom-icon {
  opacity: 1;
  transform: scale(1.04);
}
/*  */
/*  */
/*  */
/*  */

.contact-me-paragraph {
  width: 767px;
}

#hello-button {
  text-align: center;
  margin-top: 1.65rem;
  display: block;
  color: #008c86;
  border: #008c86 solid 1px;
  border-radius: 1em;
  padding: 0.3em 0.8em;
  width: 145px;
  text-decoration: none;
}

#hello-button:hover {
  color: white;
  background-color: #008c86;
  border: #008c86 solid 1px;
  cursor: pointer;
}

.built-by {
  color: #008c86;
  width: 100%;
  text-align: center;
  margin-top: 4rem;
}

/*  */

/* hamburger nav stuff */
#hamburger-li {
  height: 100%;
  /* border: 1px solid orange; */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.55rem 0;
  margin: 0;
}

.hamburger-nav {
  display: none;
}

#nav-icon3:hover {
  /* background-color: rgb(137, 146, 176, 0.7); */
}

/*  */
/*  */
#nav-icon3 {
  /* border: 1px solid purple; */
  width: 42px;
  height: 100%;
  position: relative;
  transform: rotate(0deg);
  transition: 450ms ease-in-out;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}

#nav-icon3 span {
  margin-top: 0;
  display: block;
  position: absolute;
  height: 5px;
  width: 100%;
  background: #008c86;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: 225ms ease-in-out;
  /* border: 1px solid red; */
}

#nav-icon3 span:nth-child(1) {
  top: 0px;
}

#nav-icon3 span:nth-child(2),
#nav-icon3 span:nth-child(3) {
  top: 15px;
}

#nav-icon3 span:nth-child(4) {
  top: 30px;
}

#nav-icon3.open span:nth-child(1) {
  top: 15px;
  width: 0%;
  left: 50%;
}

#nav-icon3.open span:nth-child(2) {
  transform: rotate(45deg);
}

#nav-icon3.open span:nth-child(3) {
  transform: rotate(-45deg);
}

#nav-icon3.open span:nth-child(4) {
  top: 15px;
  width: 0%;
  left: 50%;
}

/*  */
/*  */

.nav-dropdown {
  display: none;
  /* position: absolute; */
  /* border: 1px solid orangered; */
  background-color: rgb(137, 146, 176, 0.7);
  box-shadow: 0 3px 10px rgba(147, 147, 147, 0.1);
}

.nav-dropdown > ul {
  /* padding: 1.5rem; */
  padding: 0;
}

.nav-dropdown ul > li {
  list-style: none;
  /* border: 1px solid red; */
  padding-left: 1.5rem;
  /* padding-right: 1.5rem; */
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  /* text-align: right; */
}

#first-li-dropdown {
  padding-top: 1rem;
}

.nav-dropdown ul > li + li {
  margin-top: 0;
}

#resume-dropdown {
  padding-bottom: 1rem;
}

.nav-dropdown ul > li:hover {
  /* background-color: rgb(0, 140, 134, 0.4); */
  background-color: rgba(6, 165, 157, 0.4);
}

.nav-dropdown ul > li:hover > a {
  color: black;
}

.nav-dropdown ul > li > a {
  text-decoration: none;
  color: white;
}

.expand-project-button {
  display: none;
}

/*  */
/*  */
/*  */
/* project elements (description and image) */
/*! min width media queries */
@media only screen and (min-width: 1310px) {
  .project-odd > .project-image-container {
    margin-left: -315px !important;
  }
}

@media only screen and (min-width: 1294px) {
  .project-odd > .project-image-container {
    height: 557px !important;
    min-height: 557px !important;
    max-height: 557px !important;
  }
}
/* ! */

@media only screen and (max-width: 1378px) {
  .project-odd > .project-details {
    padding: 1.59em 1.99em;
  }

  .inset-tagline {
    font-size: 1.23rem;
  }

  .project-name {
    margin-top: 0.9rem;
    font-size: 1.64rem;
  }

  .description-odd {
    margin-top: 0.9rem;
    font-size: 1.18rem;
    line-height: 1.88rem;
  }

  .tech-container {
    width: 55%;
    /* border: red 1px solid; */
    margin-top: 0.9rem;
    padding-left: 1.1rem;
  }

  .tech {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: square;
    /* border: 1px solid purple; */
    height: 77px;
  }

  .tech-odd > li:first-child {
    margin-top: 0rem;
  }

  .tech-odd > li {
    font-size: 1.18rem;
    margin-top: 1.2rem;
    margin-top: 0;
    margin-right: 3rem;
  }

  .links {
    margin-top: 0.9rem;
  }

  .links img {
    width: 30px;
  }
}

@media only screen and (max-width: 1327px) {
  .project-odd > .project-details {
    padding: 1.55em 1.95em;
  }

  .inset-tagline {
    font-size: 1.13rem;
  }

  .project-name {
    margin-top: 0.67rem;
    font-size: 1.55rem;
  }

  .description-odd {
    margin-top: 0.67rem;
    font-size: 1.125rem;
    line-height: 1.77rem;
  }

  .tech-container {
    width: 60%;
    /* border: red 1px solid; */
    margin-top: 0.67rem;
    padding-left: 1.1rem;
  }

  .tech {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: square;
    /* border: 1px solid purple; */
    height: 75px;
  }

  .tech-odd > li:first-child {
    margin-top: 0rem;
  }

  .tech-odd > li {
    font-size: 1.125rem;
    /* margin-top: 1rem; */
    margin-top: 0;
    margin-right: 2.7rem;
  }

  .links {
    margin-top: 1.1rem;
  }
}

@media only screen and (min-width: 986px) and (max-width: 1293px) {
  .project {
    height: 890px;
  }

  .project-odd > .project-image-container {
    height: 532px !important;
    min-height: 532px !important;
    max-height: 532px !important;
    width: 640px;
    max-width: 640px;
    min-width: 640px;
  }

  .inset-tagline {
    font-size: 1.125rem;
  }

  .project-name {
    margin-top: 0.6rem;
    font-size: 1.5rem;
  }

  .description-odd {
    margin-top: 0.6rem;
    font-size: 1.12rem;
    line-height: 1.65rem;
  }

  .tech-container {
    width: 60%;
    /* border: red 1px solid; */
    margin-top: 0.6rem;
    padding-left: 1.1rem;
  }

  .tech {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: square;
    /* border: 1px solid purple; */
    height: 73px;
  }

  .tech-odd > li:first-child {
    margin-top: 0rem;
  }

  .tech-odd > li {
    font-size: 1.12rem;
    /* margin-top: 1rem; */
    margin-top: 0;
    margin-right: 3rem;
  }

  .links {
    margin-top: 0.75rem;
  }
}

@media only screen and (max-width: 1263px) {
  /*! adjustment for projects with more text in the description */
  #project-3,
  #project-4 {
    height: 925px;
  }

  .inset-tagline {
    font-size: 1.125rem;
  }

  .project-name {
    margin-top: 0.6rem;
    font-size: 1.5rem;
  }

  .description-odd {
    margin-top: 0.6rem;
    font-size: 1.113rem;
    line-height: 1.77rem;
  }

  .tech-container {
    width: 60%;
    /* border: red 1px solid; */
    margin-top: 0.6rem;
    padding-left: 1.1rem;
  }

  .tech {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: square;
    /* border: 1px solid purple; */
    height: 76px;
  }

  .tech-odd > li:first-child {
    margin-top: 0rem;
  }

  .tech-odd > li {
    font-size: 1.113rem;
    /* margin-top: 1rem; */
    margin-top: 0;
    margin-right: 3rem;
  }

  .links {
    margin-top: 1.1rem;
  }
}

@media only screen and (max-width: 1215px) {
  .project-odd > .project-details {
    height: 450px;
    min-height: 450px;
    max-height: 450px;
  }

  .tech-container {
    width: 80%;
    /* border: red 1px solid; */
    margin-top: 0.6rem;
    padding-left: 1.1rem;
  }

  .tech {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: square;
    /* border: 1px solid purple; */
    height: 35px;
  }

  .tech-odd > li:first-child {
    margin-top: 0rem;
  }

  .tech-odd > li {
    font-size: 1.113rem;
    /* margin-top: 1rem; */
    margin-top: 0;
    margin-right: 3.3rem;
  }

  .links {
    margin-top: 0.95rem;
  }
}

@media only screen and (max-width: 1140px) {
  /*! adjustment for projects with more text in the description */
  #project-3 > .project-details,
  #project-4 > .project-details {
    height: 460px;
    min-height: 460px;
    max-height: 460px;
  }

  .project-odd > .project-details {
    height: 425px;
    min-height: 425px;
    max-height: 425px;
  }
}

@media only screen and (max-width: 1098px) {
  /*! adjustment for projects with more text in the description */
  /*! adjustment for projects with more text in the description */
  #project-3,
  #project-4 {
    height: 890px;
  }
  /*! adjustment for projects with more text in the description */
  #project-3 > .project-details,
  #project-4 > .project-details {
    height: 425px;
    min-height: 425px;
    max-height: 425px;
  }
}

@media only screen and (max-width: 1063px) {
  /*! adjustment for projects with more text in the description */
  #project-3,
  #project-4 {
    position: relative;
  }

  .project {
    position: relative;
  }

  .links {
    position: absolute;
    left: 510px;
    top: 286px;
    margin-top: 0.95rem;
  }
}

@media only screen and (max-width: 1035px) {
  /*! adjustment for projects with more text in the description */
  #project-3 > .project-details,
  #project-4 > .project-details {
    height: 415px;
    min-height: 415px;
    max-height: 415px;
  }

  .project-odd > .project-details {
    height: 415px;
    min-height: 415px;
    max-height: 415px;
  }
}

@media only screen and (min-width: 936px) and (max-width: 985px) {
  /*! adjustment for projects with more text in the description */
  #project-3,
  #project-4 {
    display: flex;
    flex-direction: column;
    height: auto;
  }

  /*! adjustment for projects with more text in the description */
  #project-3 > .project-details,
  #project-4 > .project-details {
    height: auto;
    min-height: auto;
    max-height: 1000px;
  }

  .project {
    position: static;
    display: flex;
    flex-direction: column;
    height: auto;
  }
  .project-odd > .project-image-container {
    height: 540px !important;
    min-height: 540px !important;
    max-height: 540px !important;
    width: 650px;
    min-width: 650px;
    max-width: 650px;
  }

  .project-odd > .project-details {
    width: 650px;
    min-width: 650px;
    max-width: 650px;
    height: auto;
    min-height: auto;
    max-height: 1000px;
  }

  .links {
    position: static;
    margin-top: 0.7rem;
  }
}

@media only screen and (min-width: 935px) and (max-width: 935px) {
  /*! adjustment for projects with more text in the description */
  #project-3,
  #project-4 {
    display: flex;
    flex-direction: column;
    height: auto;
  }

  /*! adjustment for projects with more text in the description */
  #project-3 > .project-details,
  #project-4 > .project-details {
    height: auto;
    min-height: auto;
    max-height: 1000px;
    position: static;
  }

  .project-odd > .project-image-container {
    height: 603px !important;
    min-height: 603px !important;
    max-height: 603px !important;
  }

  .project {
    position: static;
  }

  .links {
    position: static;
    margin-top: 0.7rem;
  }
}

@media only screen and (max-width: 935px) {
  /*! adjustment for projects with more text in the description */
  #project-3,
  #project-4 {
    display: flex;
    flex-direction: column;
    height: auto;
  }

  /*! adjustment for projects with more text in the description */
  #project-3 > .project-details,
  #project-4 > .project-details {
    height: auto;
    min-height: auto;
    max-height: 1000px;
    position: static;
  }

  .project {
    display: flex;
    flex-direction: column;
    height: auto;
  }

  .project-odd > .project-image-container {
    height: 603px;
    min-height: 603px;
    max-height: 603px;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
  }

  .project-odd > .project-details {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    height: auto;
    min-height: auto;
    max-height: 1000px;
  }

  .project {
    position: static;
  }

  .links {
    position: static;
    margin-top: 0.7rem;
  }
}

@media only screen and (max-width: 592px) {
  .tech-odd > li {
    margin-right: 3rem;
  }
}

@media only screen and (max-width: 527px) {
  .tech-odd > li {
    margin-right: 2.65rem;
  }
}

@media only screen and (max-width: 471px) {
  .tech-container {
    width: 80%;
  }

  .tech {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: square;
    /* border: 1px solid purple; */
    height: 69px;
  }

  .links {
    position: static;
    margin-top: 0.73rem;
  }
}

@media only screen and (max-width: 365px) {
  .tech {
    height: 106px;
  }

  .links {
    position: static;
    margin-top: 0.77rem;
  }
}

/*  */
/*  */
/*  */
/* reduce project box font sizes */
@media only screen and (max-width: 1098px) {
  .inset-tagline {
    font-size: 1.13rem;
  }

  .project-name {
    font-size: 1.53rem;
  }

  .description-odd {
    font-size: 1.08rem;
  }

  .description-even {
    font-size: 1.08rem;
  }

  .tech-odd > li {
    font-size: 1.08rem;
  }

  .tech-even > li {
    font-size: 1.08rem;
  }
}

@media only screen and (max-width: 780px) {
  .inset-tagline {
    font-size: 1.11rem;
  }

  .project-name {
    font-size: 1.51rem;
  }

  .description-odd {
    font-size: 1.05rem;
  }

  .description-even {
    font-size: 1.05rem;
  }

  .tech-odd > li {
    font-size: 1.05rem;
  }

  .tech-even > li {
    font-size: 1.05rem;
  }
}

@media only screen and (max-width: 733px) {
  .project-odd > .project-details {
    padding: 1.4em 1.8em;
  }
}

@media only screen and (max-width: 650px) {
  .project-odd > .project-details {
    padding: 1.3em 1.7em;
  }

  .inset-tagline {
    font-size: 1.08rem;
  }

  .project-name {
    font-size: 1.48rem;
  }

  .description-odd {
    font-size: 1.02rem;
  }

  .description-even {
    font-size: 1.02rem;
  }

  .tech-odd > li {
    font-size: 1.02rem;
  }

  .tech-even > li {
    font-size: 1.02rem;
  }
}

@media only screen and (max-width: 578px) {
  .project-odd > .project-details {
    padding: 1.2em 1.6em;
  }

  .inset-tagline {
    font-size: 1.06rem;
  }

  .project-name {
    font-size: 1.46rem;
  }

  .description-odd {
    font-size: 1rem;
  }

  .description-even {
    font-size: 1rem;
  }

  .tech-odd > li {
    font-size: 1rem;
  }

  .tech-even > li {
    font-size: 1rem;
  }
}

/*  */
/*  */
/*  */
/* reduce all font sizes (except project boxes */
@media only screen and (max-width: 1098px) {
  body {
    font-size: 1.15rem;
  }

  .lead-in {
    font-size: 1.35rem;
  }

  .title {
    font-size: 1.6rem;
  }

  .title > span {
    font-size: 1.55rem;
  }
}

@media only screen and (max-width: 780px) {
  body {
    font-size: 1.12rem;
  }

  .lead-in {
    font-size: 1.32rem;
  }

  .title {
    font-size: 1.57rem;
  }

  .title > span {
    font-size: 1.52rem;
  }
}

@media only screen and (max-width: 650px) {
  body {
    font-size: 1.08rem;
  }

  .lead-in {
    font-size: 1.28rem;
  }

  .title {
    font-size: 1.53rem;
  }

  .title > span {
    font-size: 1.48rem;
  }
}

@media only screen and (max-width: 578px) {
  body {
    font-size: 1.03rem;
  }

  .lead-in {
    font-size: 1.23rem;
  }

  .title {
    font-size: 1.48rem;
  }

  .title > span {
    font-size: 1.43rem;
  }
}

@media only screen and (max-width: 539px) {
  body {
    font-size: 1rem;
  }

  .lead-in {
    font-size: 1.2rem;
  }

  .title {
    font-size: 1.45rem;
  }

  .title > span {
    font-size: 1.4rem;
  }
}

/*  */
/*  */
/*  */
/* adjust all borders */
@media only screen and (max-width: 935px) {
  :root {
    margin: 2.2em 5.4em 2.2em 5.4em;
  }
}

@media only screen and (max-width: 832px) {
  :root {
    margin: 2.2em 4.4em 2.2em 4.4em;
  }
}

@media only screen and (max-width: 650px) {
  :root {
    margin: 2.2em 3.4em 2.2em 3.4em;
  }
}

@media only screen and (max-width: 578px) {
  :root {
    margin: 2.2em 2.4em 2.2em 2.4em;
  }
}

@media only screen and (max-width: 508px) {
  :root {
    margin: 1.2em 1.4em 1.2em 1.4em;
  }
}

@media only screen and (max-width: 420px) {
  :root {
    margin: 1.2em 1.4em 1.2em 1.4em;
  }
}

/*  */
/*  */
/*  */
/* navigation bar */
@media only screen and (max-width: 1040px) {
  #resume {
    margin-left: 1.22em;
  }
}

@media only screen and (max-width: 1000px) {
  .main-nav {
    display: none;
    /* border: 1px solid red; */
  }
  .hamburger-nav {
    display: inline-block;
    animation: fade-in-top 400ms ease-in-out both;
    animation-delay: 375ms;
  }

  @keyframes fade-in-top {
    0% {
      transform: translateY(-15px);
      opacity: 0;
    }
    100% {
      transform: translateY(0);
      opacity: 1;
    }
  }

  /*  */
  .lead-in {
    animation-delay: 1025ms;
  }

  .name {
    animation-delay: 1100ms;
  }

  .name + div {
    animation-delay: 1175ms;
  }

  .intro-blurb {
    animation-delay: 1250ms;
  }

  @keyframes fade-in-bottom {
    0% {
      transform: translateY(25px);
      opacity: 0;
    }
    100% {
      transform: translateY(0);
      opacity: 1;
    }
  }

  .sidebar {
    animation-delay: 1775ms;
  }

  @keyframes fade-in-sidebar {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
}

@media only screen and (max-width: 935px) {
  header {
    height: 55px;
    /* border: 1px solid tan; */
  }

  #hamburger-li {
    height: 100%;
    /* border: 1px solid orange; */
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.36rem 0;
    margin: 0;
  }
}

@media only screen and (max-width: 780px) {
  header {
    height: 50px;
    /* border: 1px solid tan; */
  }

  #hamburger-li {
    padding: 0.24rem 0;
  }
}

/*  */
/*  */
/*  */
/*  */
/* sidebar */
@media only screen and (max-width: 935px) {
  .sidebar {
    display: none;
  }

  #show-new-footer-link1,
  #show-new-footer-link2,
  #show-new-footer-link3 {
    display: block;
  }

  #footer-icons-container {
    margin-left: 0;
    margin-right: 0;
  }
}

/*  */
/*  */
/*  */
/* center body at largest widths */
@media only screen and (min-width: 1320px) {
  body {
    margin: 0 auto;
  }
}

/*  */
/*  */
/*  */
/* hide second project-sentence at lower screen widths */
@media only screen and (max-width: 715px) {
  .second-project-sentence {
    visibility: hidden;
    opacity: 0;
    background-color: rgb(128, 128, 128, 0.8);
    position: absolute;
  }

  .expand-project-button {
    display: contents;
    color: rgb(149, 29, 149);
    white-space: nowrap;
  }

  .expand-project-button:hover {
    color: rgb(129, 23, 129);
    background-color: grey;
    cursor: pointer;
  }

  #show-sentence {
    visibility: visible;
    opacity: 1;
    position: static;
    background-color: transparent;
  }
}

/*  */
/*  */
/*  */
/* about me section */
@media only screen and (max-width: 1263px) {
  .listed-skills-flex li {
    margin-right: 15%;
  }
  .skills {
    width: 80%;
    height: 161px;
  }
}

@media only screen and (max-width: 1010px) {
  .about-me-flex {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: relative;
  }

  .intro-and-skills-flex {
    width: 100%;
    padding-right: 0rem;
  }

  .profile-image-container {
    position: absolute;
    right: 3px;
    top: 283px;
    /* width: 45%; */
    width: 290px;
    z-index: 5;
  }

  .skills {
    width: 55%;
    height: 278px;
  }

  .listed-skills-flex li {
    margin-right: 21%;
  }
}

@media only screen and (max-width: 969px) {
  .skills {
    width: 52%;
  }

  .listed-skills-flex li {
    margin-right: 18%;
  }
}

@media only screen and (max-width: 935px) {
  .listed-skills-flex li {
    margin-right: 24%;
  }

  .profile-image-container {
    top: 281px;
  }
}

@media only screen and (max-width: 900px) {
  .listed-skills-flex li {
    margin-right: 19%;
  }
}

@media only screen and (max-width: 873px) {
  .profile-image-container {
    right: 13px;
    width: 310px;
  }

  .skills {
    width: 40%;
    height: 410px;
  }
}

@media only screen and (max-width: 846px) {
  .profile-image-container {
    top: 313px;
  }
}

@media only screen and (max-width: 832px) {
  .profile-image-container {
    top: 281px;
  }
}

@media only screen and (max-width: 808px) {
  .profile-image-container {
    top: 314px;
  }
}

@media only screen and (max-width: 728px) {
  .profile-image-container {
    top: 348px;
    /* width: 55%; */
  }
}

@media only screen and (max-width: 708px) {
  .profile-image-container {
    width: 57.8%;
  }
}

@media only screen and (max-width: 667px) {
  .profile-image-container {
    top: 380px;
  }
}

@media only screen and (max-width: 650px) {
  .about-me-flex {
    display: inline-block;
    width: 100%;
    height: 100%;
  }

  .intro-and-skills-flex {
    width: 100%;
    padding-right: 0rem;
  }

  .skills {
    width: 100%;
    height: 215px;
    /* border: 1px solid teal; */
  }

  .listed-skills-flex li {
    margin-right: 13%;
  }

  .profile-image-container {
    /* border: 1px solid red; */
    margin-top: 2.3rem;
    width: 77%;
    z-index: 5;
    top: 0;
    right: 0;
    margin-bottom: 1rem;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
}

@media only screen and (max-width: 625px) {
  .profile-image-container {
    right: 2px;
  }
}

@media only screen and (max-width: 613px) {
  .listed-skills-flex li {
    margin-right: 10.5%;
  }
}

@media only screen and (max-width: 605px) {
  .profile-image-container {
    right: 4px;
  }
}

@media only screen and (max-width: 585px) {
  .profile-image-container {
    right: 5px;
  }
}

@media only screen and (max-width: 500px) {
  .profile-image-container {
    right: 3px;
    width: 80%;
  }
}

@media only screen and (max-width: 475px) {
  .profile-image-container {
    right: 4px;
  }

  .skills {
    height: 261px;
  }

  .listed-skills-flex li {
    margin-right: 24%;
  }
}

@media only screen and (max-width: 460px) {
  .profile-image-container {
    right: 5px;
    width: 84%;
  }
}

@media only screen and (max-width: 432px) {
  .profile-image-container {
    right: 6px;
    width: 89%;
  }
}

@media only screen and (max-width: 405px) {
  .profile-image-container {
    right: 6px;
    width: 89%;
  }
}

@media only screen and (max-width: 390px) {
  .profile-image-container {
    right: 7px;
  }
}

@media only screen and (max-width: 380px) {
  .profile-image-container {
    right: 8px;
  }
}

@media only screen and (max-width: 366px) {
  .listed-skills-flex li {
    margin-right: 20%;
  }

  .profile-image-container {
    right: 9px;
  }
}

/*  */
/*  */
/*  */
/* swiper slideshow button */
@media only screen and (max-width: 900px) {
  .swiper-pagination {
    padding-right: 29%;
    padding-left: 29%;
  }
}

@media only screen and (max-width: 785px) {
  .swiper-pagination {
    padding-right: 27%;
    padding-left: 27%;
  }

  .swiper-button-prev {
    left: 5.5% !important;
  }

  .swiper-button-next {
    right: 5.5% !important;
  }
}

@media only screen and (max-width: 730px) {
  .swiper-pagination {
    padding-right: 25.5%;
    padding-left: 25.5%;
  }

  .swiper-button-prev {
    left: 5.8% !important;
  }

  .swiper-button-next {
    right: 5.8% !important;
  }
  .swiper-button-prev::after {
    font-size: 67px !important;
  }

  .swiper-button-next::after {
    font-size: 67px !important;
  }
}

@media only screen and (max-width: 615px) {
  .swiper-pagination {
    padding-right: 24.5%;
    padding-left: 24.5%;
  }

  .swiper-pagination-bullet {
    width: 14px !important;
    height: 14px !important;
  }

  .swiper-button-prev {
    left: 6.5% !important;
  }

  .swiper-button-next {
    right: 6.5% !important;
  }
  .swiper-button-prev::after {
    font-size: 65px !important;
  }

  .swiper-button-next::after {
    font-size: 65px !important;
  }
}

@media only screen and (max-width: 450px) {
  .swiper-pagination {
    padding-right: 24%;
    padding-left: 24%;
  }

  .swiper-pagination-bullet {
    width: 13px !important;
    height: 13px !important;
  }

  .swiper-button-prev::after {
    font-size: 60px !important;
  }

  .swiper-button-next::after {
    font-size: 60px !important;
  }
}

/*  */
/*  */
/*  */
/* intro-blurb and get-in-touch (footer) blurb widths */
@media only screen and (max-width: 1038px) {
  .intro-blurb {
    width: 450px;
  }
}

@media only screen and (max-width: 1170px) {
  .contact-me-paragraph {
    width: 86.6%;
    /* border: 1px solid red; */
  }
}

@media only screen and (max-width: 752px) {
  .intro-blurb {
    width: 365px;
  }
}

@media only screen and (max-width: 650px) {
  .intro-blurb {
    width: 355px;
  }
}

@media only screen and (max-width: 620px) {
  .contact-me-paragraph {
    width: 95%;
  }
}

@media only screen and (max-width: 578px) {
  .intro-blurb {
    width: 340px;
  }
}

@media only screen and (max-width: 539px) {
  .intro-blurb {
    width: 330px;
  }
}

@media only screen and (max-width: 508px) {
  .contact-me-paragraph {
    width: 100%;
  }
}

@media only screen and (max-width: 436px) {
  .intro-blurb {
    width: 310px;
  }
}

@media only screen and (max-width: 385px) {
  .intro-blurb {
    width: 270px;
  }
}

@media only screen and (max-width: 330px) {
  .intro-blurb {
    width: 100%;
  }
}

/*  */
/*  */
/*  */
/* section padding (for aesthetic scrolling at lower widths */
@media only screen and (max-width: 1016px) {
  .footer-links {
    margin-bottom: 23rem;
  }
}

@media only screen and (max-width: 935px) {
  section {
    padding-bottom: 3rem;
    padding-top: 2.5rem;
  }
}

@media only screen and (max-width: 650px) {
  section {
    padding-bottom: 3.2rem;
    padding-top: 2.3rem;
  }
}

@media only screen and (max-width: 578px) {
  section {
    padding-bottom: 3.4rem;
    padding-top: 2.1rem;
  }

  .footer-links {
    margin-bottom: 24rem;
  }
}

@media only screen and (max-width: 508px) {
  section {
    padding-bottom: 3.5rem;
    padding-top: 2rem;
  }

  .built-by {
    margin-top: 3.5rem;
  }

  .footer-links {
    margin-bottom: 25rem;
  }
}

@media only screen and (max-width: 415px) {
  section {
    padding-bottom: 3.4rem;
    padding-top: 2.1rem;
  }

  .built-by {
    margin-top: 3rem;
  }

  .footer-links {
    margin-bottom: 23rem;
  }
}

@media only screen and (max-width: 390px) {
  .built-by {
    margin-top: 2rem;
  }

  .footer-links {
    margin-bottom: 20rem;
  }
}
