/* STYLE SHEET */

/* GENERAL INFORMATION */

body{
  margin:0;
  background-color: #E5E4EA;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300; 
  cursor: none;

}
hr {
  border:#364e3e double;
}
.circle-cursor {
  position: absolute;
  width: 30px;
  height: 30px;
  background-color: #bababdc0;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: transform 0.1s ease;
}
@keyframes shake {
  25% {
    transform: rotate(calc(var(--angle) * -1));
  }

  50% {
    transform: rotate(var(--angle));
  }

  100% {
    transform: rotate(0deg);
  }
}
.display {
  display: grid;
  grid-template-columns: 17% 10%;
  text-decoration: none;
  text-align: center;
  margin-bottom: 1px;
  padding: 1px;
  font-size: 20px;
}
.HOVER {
  --width: 100%;
  --time: 0.9s;
  position: relative;
  display: inline-block;
  height: 1em;
  padding: 1em;
  text-decoration: none;
  color: #364e3e;
  background: #92A998;
  overflow: hidden;
}
.HOVER text {
  position: relative;
  z-index: 5;
  transition: color var(--time);
}
.HOVER:hover text {
  color: #92A998;
}
.HOVER span {
  position: absolute;
  display: block;
  content: "";
  z-index: 0;
  width: 0;
  height: 0;
  border-radius: 100%;
  background: #364e3e;
  transform: translate(-50%, -50%);
  transition: width var(--time), padding-top var(--time);
}
.HOVER:hover span {
  width: calc(var(--width) * 2.25);
  padding-top: calc(var(--width) * 2.25);
}
.HOVER.FLASH:hover text {
  color: #364e3e;
}
.link{
  position: absolute;
  right: 10px;
  bottom: 10px;
  font-size: 1rem;
}
/* NAV STYLES */
nav{
  background-color: #92A998;
  font-size: 35px;
  padding:0.5em;
  display: flex;
  align-items: center;
}
.pages{
  display: flex;
  margin-left: auto;
}
.pages a{
  padding-right: .5em;
  padding-left: .5em;
  text-decoration: none;
  color: black;
}
nav img{
  align-content: center;
}
.sparkle {
  max-width: 6em;
  color: black;
  margin: auto auto;
}
.u-hover--sparkle {
  box-sizing: border-box;
  position: relative;
  padding: 0.2em;
  font-size:40px;
}
.u-hover--sparkle::before,
.u-hover--sparkle::after {
  content: '';
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  transform-origin: center;
}
.u-hover--sparkle::before {
  border-bottom: 0.1em solid white;
  transform: scale3d(0, 1, 1);
}
.u-hover--sparkle:hover::before,
.u-hover--sparkle:hover::after {
  transform: scale3d(1, 1, 1);
  transition: transform 900ms;
}
/* FOOTER STYLE */
footer{
  background-color: #92A998;
  margin-top: 2em;
  padding-top: 1em;
  color:white;
  text-align: center;
}
footer p{
  font-size: 15px;
  color:white;
}
.fa-regular, fa-envelope{
  font-size:25px;
  padding:-2em;
}
.footerDark{
  display:flex;
  align-items: center;
  background-color: #364e3e;
  padding: 1em 2em;
  margin-top:.5em;
}
.footerLight{
  text-align: center;
  display:flex;
  flex-direction: column;
  justify-content: center;
}
footer h5{
  font-size: 18px;
  font-weight: normal;
  margin: .5em;
}
.email{
  font-size: 20px;
  display:flex;
  justify-content: center;
  flex-direction: row;
  padding-bottom: .5em;
}
.email h5{
  color:white; 
}
.email a{
  text-decoration: none;
  padding: .5em;
  color: black;
}
.email i{
  display:flex;
  align-items: center;
  padding: .5em .6em;
}
.link{
  display:flex;
  align-items: center;
  text-align: left;
  font-size:20px;
}
.icon {
  float:left;
}
ul {
  transform: translate(0%, 0%);
  display:flex;
  justify-content: center;
  margin:0%;
}
/* reset.css */
ul{
  padding: 0;
}
ul li {
  list-style: none;
  margin: 0px 5px;
}

ul li a {
  position: relative; 
  display: block;
  width: 60px;
  height: 60px;
  text-align: center;
  line-height: 63px;
  background: #4b6d56;
  border-radius: 50%;
  font-size: 30px;
  color: #92A998;
  transition: .5s;
}

ul li a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background:  #4545E6;
  transition: .5s;
  transform: scale(.9);
  z-index: -1;
}

ul li a:hover::before {
  transform: scale(1.1);
  box-shadow: 0 0 35px  #4545E6;
}

ul li a:hover {
  color:  #40A4FF;
  box-shadow: 0 0 5px  #4545E6;
  text-shadow: 0 0 5px  #4545E6;
}
/* INDEX PAGE */
main{
  padding: 1em 25em;
  margin-bottom: 5em;
}
main h2{
  color: #202F25;
  font-size: 40px;
}
main p{
  font-size: 25px;
}
main img{
  display:flex;
  align-content: center;
}
.web{
  display:flex;
  flex-direction: row;
  align-items: center;
  margin-top: 2em;
}
.web div{
  padding:1em;
  margin-bottom: 2em;
}
.tech{
  display:flex;
  flex-direction: row;
  align-items: center;
}
.tech div{
  padding:1em;
}
.button{
  background-color: #92A998;
  padding: 1em;
  border:none;
  font-size: 17px;
  color:#202F25;
  text-decoration: none;
  transition: transform 0.3s ease-in-out, color 0.3s ease-in-out; 
  max-height: 20px;
}
.button:hover{
  color: #92A998;
  background-color: #202F25;
  transition: transform 0.3s ease-in-out, color 0.3s ease-in-out; 
}

/* ABOUT PAGE */
.amain{
  padding: 0em 4em;
  font-size: 25px;
}
.amain h2{
  font-size:40px;
}
.resumemain{
  display:flex;
  flex-direction: column;
}
.slideshow img{
  max-height: 300px;
  width:auto;
}
.slideshow{
  display:flex;
  padding:.7%;
  justify-content: center;
}
.spacing{
  background-color: #202F25;
  width: 1%;
  margin: 0% .5%;
}

/* PROJECTS PAGE */
.pmain{
  padding: 1em 0em;
}
.pmain h2{
  color: #202F25;
  font-size: 40px;
}
.pmain p{
  font-size: 25px;
  padding:1em 4em;
}
.projects{
  text-align: center;
  margin: 1em 20em;
}
.images{
  display:flex;
  justify-content: flex-start;
  flex-direction: column;
  margin: 1em;
}
.visit{
  background-color: #364e3e;
  border-radius:  4%;
  border: black solid 1px;
  color: white;
  text-decoration: none;
  font-size: 18px;
  padding: .6em;
  margin: 1em 12em;
}
.info{
  display:flex;
  justify-content: flex-end;
  flex-direction: column;
  margin: 1em;
  padding-bottom: 10em;
}
.pabout{
  display:flex;
}
.projects h3 {
  font-size: 33px;
  margin: .5%;
}
.projects h4{
  font-size: 27px;
  margin: .2%;
}
.projects h5{
  font-size: 20px;
  margin: .2%;
}
/* IMAGE STACK */
.image-stack { 
  position: relative; 
  width: 550px; 
  height: 350px; 
} 
.image-stack img { 
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%; 
  opacity: 0; 
  transition: opacity 0.5s ease-in-out; 
} 
.image-stack img.active { 
  opacity: 1; 
} 
#nextBtn, #nextBtn1, #nextBtn2{ 
  margin-top: 20px; 
  padding: 10px 20px; 
  font-size :16px;
}

