/*
Colors used

Text Color (Dark Gray): #2b2b2b;
Primary Color (Purple): #357b70;
Secondary Color (Orange): #e0b354;
 */

 :root {
   --primary-color: #357b70;
   --secondary-color: #e0b354;
   --dark-grey: #2b2b2b;
   --visited-color: #05676e;
   --white: #ffffff;
   --black: #000000;
   --active-color: #489c79;
   --lightgrey: #D3D3D3;
   --light-font: 400;
   --heavy-font: 700;
   --body-font-size: 16px;
   --h1-font-size: 30px;
   --h2-font-size: 24px;
   --h3-font-size: 18px;
   --small-screen-h1-font-size: 22px
 }

body {
  font-family: 'Poppins', sans-serif;
  font-weight: var(--light-font);
  font-size: var(--body-font-size);
  line-height: 1.6;
}

h1 {
  font-size: var(--h1-font-size);
  font-weight: var(--heavy-font);
}

h2 {
  font-size: var(--h2-font-size);
  font-weight: var(--heavy-font);
}

h3 {
  font-size: var(--h3-font-size);
  font-weight: var(--heavy-font);
}

a {
  color: var(--primary-color);
}

a:visited {
  color: var(--visited-color);
}

.button:visited {
  color: var(--white);
}

a:hover, a:focus {
  text-decoration: none;
}

a:active {
  color: var(--active-color);
}

* {
  box-sizing: border-box;
}

button, .button {
  /* overwrites browser defaults and resets the border */
  border: none;
  display: inline-block;
  font-family: inherit;
  background-color: var(--primary-color);
  color: var(--white);
  text-decoration: none;
  padding: 10px;
  border-radius: 3px;
  border-bottom: 2px solid rgba(0, 0, 0, 0.3);
  transition: 0.2s opacity;
}

button:hover, button:focus, .button:hover, .button:focus {
  cursor: pointer;
  opacity: 0.8;
}

.button__secondary {
  background-color: var(--secondary-color);
  color: var(--dark-grey);
}

.page-header {
  display: flex;
  width: 100%;
  padding: 20px;
}

.page-header__item {
  flex: 0 1 200px;
}

.page-header__item:last-child {
  flex-grow: 1;
  text-align: right;
}

.navigation-list {
  list-style-type: none;
}

.navigation-list li {
  display: inline-block;
  margin-left: 15px;
}

.navigation-list__item--active {
  text-decoration: none;
}

.profile__portrait {
  float: left;
  width: 250px;
  margin-right: 40px;
  border-radius: 50%;
}

.about-me,
.contact-info,
#contact-form {
  max-width: 700px;
  margin: 0 auto;
  text-align: center;
}

.bold-span {
  font-weight: var(--heavy-font);
}

.profile {
  max-width: 700px;
  margin: 0 auto;
}

.experience-table {
  max-width: 700px;
  margin: 0 auto;
  text-align: center;
}

.page-footer {
  text-align: center;
  clear: both;
  display: flex;
  flex-direction: column;
}

.page-title {
  text-align: center;
}

.grid {
  padding-left: 7%;
  padding-right: 7%;
}

.grid__item {
  display: inline-block;
  border-radius: 10%;
  padding: 5%;
  width: 33%;
}

.grid__image {
  object-fit: cover;
  object-position: 50% 50%;
  width: 96%;
  max-height: 96%;
  min-width: 250px;
}

.social-media > a {
  text-decoration: none;
}

@supports (display: grid) {
 .grid {
   display: grid;
   /* grid-template-columns: 300px 300px 300px; fractions are better than pixels -- they are responsive */
   grid-template-columns: 1fr 1fr 1fr;
   grid-gap: 20px;
   margin: 0;

 }
 .grid__item {
   background-color: var(--lightgrey);
   color: var(--black);
   width: auto;
   min-height: auto;
   margin: 0;
 }
}

#freepik-link {
  text-align: center
}

@media all and (max-width: 500px) {
  .grid {
    grid-template-columns: 1fr;
  }
}

@media all and (min-width: 500px) and (max-width: 750px){
  .grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media all and (max-width: 750px){
  .grid {
    grid-gap: 10px;
  }
  .grid__item:last-child {
    grid-column: auto / auto;
    grid-row: auto / auto;
  }
  h1 {
    font-size: var(--small-screen-h1-font-size);
  }
}

@keyframes cloud-move {
  from {
    transform: translate(0, 50px);
  }
  to {
    transform: translate(200px, 50px);
  }
}

#path16, #path18, #path20, #path22 {
  animation: 20s cloud-move infinite alternate linear;
}
