@font-face {
  font-family: "Figtree-Medium";
  src: url("./assets/fonts/static/Figtree-Medium.ttf");
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Figtree-ExtraBold";
  src: url("./assets/fonts/static/Figtree-ExtraBold.ttf");
  font-weight: 800;
  font-display: swap;
}

:root {
  --color-primary: hsl(47, 88%, 63%);
  --bgc-blogCard: hsl(0, 0%, 100%);

  --color-heavy-text: hsl(0, 0%, 7%);
  --color-light-text: hsl(0, 0%, 42%);
  --color-shadow: hsl(0, 0%, 0%);

  --font-family-base: "Figtree-Medium", sans-serif;
  --font-family-heading: "Figtree-ExtraBold", sans-serif;
  --font-size-base: 1rem;

  --spacing-sm: 0.75rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.4rem;
  --border-radius-base: 1rem;
}

body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-md);

  padding: var(--spacing-sm);

  min-height: 100vh;

  background-color: var(--color-primary);

  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  color: var(--color-light-text);
}

.blogCard {
  display: flex;
  flex-direction: column;

  box-sizing: border-box;
  width: min(100%, 25rem);
  padding: var(--spacing-lg);
  gap: var(--spacing-sm);

  border: 0.1rem solid black;
  border-radius: var(--border-radius-base);

  background-color: var(--bgc-blogCard);
  color: var(--color-light-text);

  box-shadow: 0.625rem 0.625rem 0 0 var(--color-shadow);
}

.blogCard__header {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.blogCard__image {
  width: 100%;

  margin-block-end: var(--spacing-sm);
  border-radius: var(--border-radius-base);
}

.blogCard__category {
  padding: 0.3rem 0.5rem;
  border-radius: 0.3rem;
  display: inline;

  background-color: var(--color-primary);
}

.blogCard__title,
.blogCard__author-name,
.blogCard__category,
.blogCard__footer-link {
  font-family: var(--font-family-heading);
  color: var(--color-heavy-text);
}

.blogCard__title:hover {
  cursor: pointer;
}

.blogCard__title:active {
  color: var(--color-primary);
}

.blogCard__footer-text {
  font-size: 0.8rem;
}

.blogCard__author {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
}

.blogCard__author-avatar {
  width: 2.8rem;
}
