@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,400;1,300&display=swap');

/* Global Styles */

body {
  overflow-x: hidden;
  font-family: 'Roboto', sans-serif;
  background-color: #fff;
  color: #333;
  margin: 0;
  padding: 0;
}

a {
  text-decoration: none;
  color: #333;
}

h2 {
  padding-bottom: 2rem;
}

p {
  font-size: 18px;
}

li {
  font-size: 18px;
}

/* Navigation Styles */

#navbar {
  background-color: #2f3640;
  color: #f4f4f4;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#navbar #nav-left {
  font-family: 'Ubuntu', sans-serif;
}

#navbar #nav-left .fas {
  color: #c0392b;
  padding-right: 1rem;
}

#navbar #nav-left #my-name {
  border-right: 3px solid #c0392b;
  padding-right: 0.5rem;
}

#navbar #nav-left #pipe {
  color: #c0392b;
}

#navbar #nav-right {
  margin-right: 5rem;
  font-size: 20px;
}

#navbar #nav-right a {
  color: #f4f4f4;
  transition: 0.3s;
}

#navbar #nav-right a:hover {
  color: #ccc;
}

#navbar h1 {
  margin-left: 2rem;
}

#navbar #nav-right #contact-link {
  margin-left: 0.8rem;
}

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
}

/* Portfolio Styles */

#portfolio {
  margin-top: 6rem;
}

.item-img {
  height: 450px;
  width: 750px;
}

.portfolio-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-top: 2rem;
}

.portfolio-item h2 {
    font-size: 36px;
}

/* Portfolio Accordion */

.accordion {
  width: 60%;
  height: 50px;
  background-color: #2c3e50;
  color: #f4f4f4;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: 0.3s;
  outline: none;
  border: none;
  border-radius: 10px;
  margin-top: 1rem;
}

.active, 
.accordion:hover {
  background-color: #3f5a73;
}

.accordion p {
  padding-left: 2rem;
}

.accordion .fa-plus {
  padding-right: 2rem;
}

.panel {
  display: none;
  overflow: hidden;
  margin-top: 1rem;
  text-align: center;
  width: 60%;
}

.panel-contents {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.panel p {
  padding-top: 1rem;
  font-weight: 600;
  font-size: 22px;
}

.panel a {
  background-color: #2f3640;
  transition: 0.3s;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  width: 40%;
}

.panel a:hover {
  background-color: #414a58;
}

.panel a.demo-btn {
  background-color: #27ae60;
  transition: 0.3s;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  width: 25%;
}

.panel a.demo-btn:hover {
  background-color: #2ecc71;
}

.panel .fab {
  padding-right: 5px;
}

/* About Styles */

#about {
  background-color: #f4f4f4;
}

#about-section {
  margin: 0 3rem 0 3rem;
}

#about-section h2 {
  padding-top: 3rem;
  font-size: 36px;
}

#about-section p {
  font-size: 20px;
  margin-bottom: 4rem;
}

#about-section #my-github {
  background-color: #2c3e50;
  transition: 0.3s;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  width: 30%;
  margin-bottom: 2rem;
}

#about-section #my-github:hover {
  background-color: #3f5a73;
}

#about-section #my-github i {
  padding-right: 0.5rem;
}

#tech {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding-bottom: 3rem;
}

/* Tech Logos */

#tech-logos {
  background-color: #c0392b;
}

#tech-logos #row {
  display: flex;
  justify-content: space-evenly;
  padding: 2rem;
}

#tech-logos #row i {
  color: #ccc;
}

/* Footer Styles */

footer {
  background-color: #2f3640;
  color: #f4f4f4;
}

footer #footer-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 120px;
}

footer #footer-main p {
  font-size: 24px;
  margin-top: 0;
}

footer #footer-main i {
  font-size: 48px;
  margin-bottom: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
  color: #c0392b;
}

footer #footer-bottom {
  height: 50px;
}

footer #footer-bottom p {
  text-align: center;
}

/* Media Queries */

@media (max-width: 500px) {
  .item-img {
    width: 300px;
    height: 200px;
  }

  #tech {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
  }
  
  .panel a.demo-btn {
      width: 40%;
  }
}