:root {
  /* colors */
  --yellow: hsl(47, 88%, 63%);
  --white: hsl(0, 0%, 100%);
  --gray-500: hsl(0, 0%, 42%);
  --gray-950: hsl(0, 0%, 7%);

  /* fonts */
  --font-size-1: 1.4rem;
  --font-size-2: 1.6rem;
  --font-size-3: 2.4rem;

  /* spacing */
  --spacing-1: 4px;
  --spacing-2: 8px;
  --spacing-3: 12px;
  --spacing-4: 24px;

  --line-height-1: 1.5;
}

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

html {
  font-size: 62.5%;
  font-family: "Figtree", serif;
}

img {
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}

body {
  display: flex;
  justify-self: center;
  align-items: center;
  min-height: 100vh;
  background-color: var(--yellow);
}

.card {
  min-width: 327px;
  max-width: 383px;
  margin: 150px var(--spacing-4);
  padding: var(--spacing-4);
  background-color: var(--white);
  border-top: 1px solid var(--gray-950);
  border-left: 1px solid var(--gray-950);
  border-radius: 20px;
  box-shadow: 8px 8px 0px 0px rgba(0, 0, 0, 1);
}

.card__hero {
  height: 200px;
  margin-bottom: var(--spacing-4);
  border-radius: 10px;
  overflow: hidden;
}

.card__category {
  display: inline-block;
  padding: var(--spacing-1) var(--spacing-3);
  margin-bottom: var(--spacing-3);
  font-size: var(--font-size-1);
  font-weight: 800;
  background-color: var(--yellow);
  color: var(--gray-950);
  border-radius: 4px;
}

.card__date {
  margin-bottom: var(--spacing-3);
  font-size: var(--font-size-1);
  font-weight: 500;
  color: var(--gray-950);
}

.card__title {
  margin-bottom: var(--spacing-3);
  font-size: var(--font-size-3);
  font-weight: 800;
  color: var(--gray-950);
  transition: color 0.3s ease;
  cursor: pointer;
}

.card__title:hover {
  color: var(--yellow);
}

.card__description {
  margin-bottom: var(--spacing-4);
  font-size: var(--font-size-2);
  color: var(--gray-500);
}

.card__footer {
  display: flex;
  align-items: center;
}

.card__footer img {
  width: 32px;
  height: 32px;
  margin-right: var(--spacing-3);
}

.card__footer p {
  display: inline-block;
  font-size: var(--font-size-1);
  font-weight: 800;
  color: var(--gray-950);
}
