:root {
  --ff-sans: 'Poppins', sans-serif;

  --fw-light: 200;
  --fw-normal: 400;
  --fw-bold: 600;

  --fs-400: 0.9275rem;
  --fs-500: 1.5rem;
  --fs-600: 1.625rem;
  --fs-900: 2.5rem;

  --clr-neutral-900: hsl(234, 12%, 34%);
  --clr-neutral-800: hsl(229, 6%, 66%);
  --clr-neutral-100: hsl(0, 0%, 98%);

  --clr-teal: hsl(180, 58%, 56%);
  --clr-red: hsl(0, 70%, 60%);
  --clr-blue: hsl(212, 75%, 62%);
  --clr-yellow: hsl(34, 89%, 65%);
}

*,
*::before,
*::after {
  box-sizing: border-box;
  /* border: 2px solid red; */
}

html {
  font-family: var(--ff-sans);
  font-weight: var(--fw-normal);
  color: var(--clr-neutral-900);
  line-height: 1.7;
}

body {
  margin: 0;
  padding-block-end: 6rem;
}

h1,h2,h3 {
  color: var(--clr-neutral-900);
  line-height: 1.2;
}

.wrapper {
  padding-inline: 2rem;
  max-width: 1280px;
  margin-inline: auto;
}

.wrapper--narrow {
  max-width: 550px;
}

header {
  text-align: center;
  margin-block: 4rem;
}

h1 {
  font-weight: var(--fw-light);
  font-size: var(--fs-900);
}

h1 span {
  font-weight: var(--fw-bold);
}

header > p {
  font-size: var(--fs-500);
}

.layout-grid {
  --gap: 1rem;
  display: grid;
  gap: var(--gap);
}

@media (min-width: 800px) {
  .layout-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.layout-grid > * {
  flex: 1;
}

.col {
  /* border: 4px solid dodgerblue; */
  display: grid;
  align-content: center;
  gap: var(--gap);
}

.card {
  --br: 0.325rem;
  padding: 2rem;
  border-top: var(--br) solid;
  border-radius: var(--br);
  box-shadow: 0 1rem 1.5rem -0.5rem rgb(0 50 100 / 0.15);
}

.card__title {
  font-size: var(--fs-600);
  margin: 0;
}

.card__img {
  display: block;
  margin-left: auto;
  margin-top: 2rem;
}

.border-teal {
  border-color: var(--clr-teal);
}
.border-red {
  border-color: var(--clr-red);
}
.border-yellow {
  border-color: var(--clr-yellow);
}
.border-blue {
  border-color: var(--clr-blue);
}
