/* Global */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  /* Primary */

  --purple-50: hsl(260, 100%, 95%);
  --purple-300: hsl(264, 82%, 80%);
  --purple-500: hsl(263, 55%, 52%);

  /* Neutral */

  --white: hsl(0, 0%, 100%);
  --grey-100: hsl(214, 17%, 92%);
  --grey-200: hsl(0, 0%, 81%);
  --grey-400: hsl(224, 10%, 45%);
  --grey-500: hsl(217, 19%, 35%);
  --blue: hsl(219, 29%, 14%);
  --black: hsl(0, 0%, 7%);
}

/* Body */
body {
  font-family: "Barlow Semi Condensed", sans-serif;
  min-height: 100vh;
}

.container {
  padding: 8rem 12rem 8rem 12rem;
  background-color: var(--grey-100);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 2rem;
}

/* Portfolio */

.portfolio {
  padding: 2rem;
  border-radius: 0.6rem;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  box-shadow: 8px 8px 20px var(--grey-400);
}

.header {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 1rem;
  z-index: 2;
}

.header img {
  width: 2.1rem;
  border-radius: 100%;
  border-style: solid;
  border-width: 2px;
}

.header div {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.portfolio h1 {
  font-weight: 500;
  font-size: 1.3rem;
  z-index: 2;
}

.portfolio p {
  font-size: 0.9rem;
  z-index: 2;
}

.header div h1 {
  font-size: 0.9rem;
}

.header div p {
  font-size: 0.8rem;
}

/* Individual User */

/* Daniel */

.portfolio__daniel {
  grid-column: 1/3;
  grid-row: 1/2;
  background-color: var(--purple-500);
  position: relative;
}

.portfolio__daniel .header img {
  border-color: var(--purple-300);
}

.portfolio__daniel h1 {
  color: var(--white);
}

.portfolio__daniel p {
  color: var(--purple-50);
}

.daniel__bg-image {
  position: absolute;
  height: 7rem;
  z-index: 1;
  top: 0rem;
  right: 5rem;
}

/* Jonathan */

.portfolio__jonathan {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: var(--grey-400);
}

.portfolio__jonathan .header img {
  border-color: var(--grey-200);
}

.portfolio__jonathan h1 {
  color: var(--white);
}

.portfolio__jonathan p {
  color: var(--grey-100);
}

/* Kira */

.portfolio__kira {
  grid-column: 4/5;
  grid-row: 1/3;
  background-color: var(--white);
}

.portfolio__kira .header img {
  border-color: var(--grey-200);
}

.portfolio__kira h1 {
  color: var(--grey-500);
}

.portfolio__kira p {
  color: var(--grey-400);
  font-weight: 400;
}

/* Jeanette */

.portfolio__jeanette {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: var(--white);
}

.portfolio__jeanette .header img {
  border-color: var(--grey-200);
}

.portfolio__jeanette h1 {
  color: var(--grey-500);
}

.portfolio__jeanette p {
  color: var(--grey-400);
  font-weight: 400;
}

/* Patrick */

.portfolio__patrick {
  grid-column: 2/4;
  grid-row: 2/3;
  background-color: var(--blue);
}

.portfolio__patrick .header img {
  border-color: var(--purple-300);
}

.portfolio__patrick h1 {
  color: var(--grey-100);
}

.portfolio__patrick p {
  color: var(--grey-200);
  font-weight: 400;
}

/* Footer */

.attribution {
  font-size: 11px;
  text-align: center;
  padding: 2rem;
  background-color: var(--grey-100);
}
.attribution a {
  color: var(--purple-500);
}

/* Media Queries */

@media screen and (max-width: 500px) {
  .container {
    padding: 4rem 1.5rem 4rem 1.5rem;
    display: flex;
    flex-direction: column;
  }
}

@media screen and (min-width: 501px) and (max-width: 775px) {
  .container {
    padding: 4rem 3rem 4rem 3rem;
    display: flex;
    flex-direction: column;
  }
}

@media screen and (min-width: 776px) and (max-width: 950px) {
  .container {
    padding: 8rem 4rem 8rem 4rem;
  }
  .portfolio {
    padding: 1rem;
  }
}

@media screen and (min-width: 951px) and (max-width: 1150px) {
  .container {
    padding: 8rem 4rem 8rem 4rem;
  }
}
