* {
   margin: 0;
}

html, body {
   height: 100%;
}

body {
   font-family: Quicksand, serif;
   background-color: whitesmoke;
   display: flex;
   flex-direction: column;
}

/* NAVIGATION */

nav {
   padding: 1em 0;
   background-color: #2D2D34;
   display: flex;
   align-items: center;
   justify-content: space-between;
}

nav, nav a:link, nav a:visited, .btn-toggle {
   color: #F1E4E8;
}

.logo-title {
   display: flex;
   align-items: center;
   margin-left: 1rem;
}

nav img {
   width: 20%;
}

nav h1 {
   font-family: Calistoga, sans-serif;
   font-weight: normal;
   font-size: 2.5rem;
   line-height: auto;
   letter-spacing: .125rem;
   padding-left: .75rem;
}

nav ul {
   display: flex;
   list-style-type: none;
   text-align: center;
   font-size: 1.1rem;
}

nav li {
   padding-right: 1.8rem;
}

nav a:link {
   text-decoration: none;
}

nav a:hover, a:visited, .active-link {
   color: #B97375;
}

.active-link {
   font-weight:bold;
}

/* MAIN */

h2 {
   font-family: Calistoga, sans-serif;
   font-weight: normal;
   font-size: 2.5rem;
   text-align: center;
   color: #B97375;
   padding-bottom: .75em;
}

p {
   padding-bottom: 1em;
   margin: auto 25%;
   text-align: left;
}

footer {
   width: 100%;
   text-align: center;
   color: #2D2D34;
   background-color: #CEB1BE;
   padding: 1em 0;
   border-top: 3px solid #2D2D34;
   font-weight: 700;
}


/* PROJECTS */

.projects-class {
   background: linear-gradient(0deg, #F1E4E8, #F5F5F5);
}

.project-main-title {
   padding: 1.5rem 0 1rem 0;
   font-size: 3rem;
}

.projects-main-text {
   line-height: 1.75rem;
   font-weight: 500;
}

.project-container {
   display: flex;
   flex-direction: column;
   margin: 2rem 10%;
}

.individual-project {
   display: flex;
   gap: 2rem;
   margin: 1rem 0;
   background-color: whitesmoke;
   border: 3px solid #F1E4E8;
   border-radius: 25px;
   padding: 1rem;
   align-items: center;
}

.individual-project img {
   max-width: 250px;
}

.project-title {
   display: block;
   font-weight: 600;
   font-size: 1.25rem;
   margin-bottom: 0.5rem;
}

.individual-project p {
   margin: 0;
}

.projects-class a:link {
   color: black;
}

.projects-class a:hover, a:visited, .active-link {
   color: #B97375;
}

/* MOBILE 1024px */

@media (max-width: 1024px) {

   nav ul {
      font-size: 1rem;
   }

   h2 {
      font-size: 2rem;
   }

   p {
      margin: auto 10%;
   }

   .individual-project {
      flex-wrap: wrap;
      justify-content: center;
   }

   .individual-project-right h3, p {
      text-align: center;
   }

   .individual-project-right p {
      line-height: 1.75rem;
   }

   footer {
      font-size: .8rem;
   }
}

/* MOBILE BUTTON TOGGLE */

.btn-toggle {
   display: none;
   font-size: 2rem;
   padding-right: 2rem;
}

/* MOBILE 850px */

@media (max-width: 850px) {
   nav {
      display: flex;
      flex-direction: column;
      padding: 1em;
   }

   .logo-title {
      display: flex;
      align-items: center;
      width: 100%;
   }

   nav h1 {
      font-size: 2rem;
   }

   nav img {
      width: 10%;
   }

   .btn-toggle {
      display: block;
      background: none;
      border: none;
      cursor: pointer;
      font-size: 2rem;
      padding-left: 1em;
   }

   .links {
      overflow: hidden;
      max-height: 0;
      flex-direction: column;
      text-align: left;
      gap: .5rem;
      margin-top: 1rem;
      width: 100%;
      transition: max-height 0.3s ease-out;
      font-weight: 500;
   }
   
   .links.active {
      max-height: 500px;
   }

   li {
      padding-bottom: 1em;
   }
}