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

:root {
  /* Color */
  --color-grey-400: hsl(212, 6%, 44%);
  --color-grey-500: hsl(234, 12%, 34%);
  --color-white: hsl(0, 0%, 100%);
  --color-red: hsl(0, 78%, 62%);
  --color-cyan: hsl(180, 62%, 55%);
  --color-blue: hsl(212, 86%, 64%);
  --color-orange: hsl(34, 97%, 64%);

  /* Spacing */
  --space-100: 0.5rem; /* 8px */
  --space-200: 1rem; /* 16px */
  --space-300: 1.5rem; /* 24px */
  --space-400: 2rem; /* 32px */
  --space-500: 2.5rem; /* 40px */

  /* Font family */
  --font-family: "Poppins", sans-serif;

  /* Font weights */
  --font-extra-light: 200;
  --font-regular: 400;
  --font-semi-bold: 600;

  /* Font size */
  --font-size-sm: 0.8125rem; /* 13px */
  --font-size-md: 0.9375rem; /* 15px */
  --font-size-lg: 1.25rem; /* 20px */
  --font-size-xl: 1.5rem; /* 24px */
  --font-size-2xl: 2.25rem; /* 36px */

  /* Line height */
  --line-height-tight: 135%;
  --line-height-normal: 140%;
  --line-height-relaxed: 160%;

  /* Letter spacing */
  --letter-spacing-none: 0;
  --letter-spacing-wide: 0.25px;
}

body {
  font-family: var(--font-family);
}

.light-grey {
  color: var(--color-grey-400);
}

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

.text-preset-1 {
  font-weight: var(--font-semi-bold);
  font-size: var(--font-size-xl);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-wide);
}

.text-preset-2 {
  font-weight: var(--font-extra-light);
  font-size: var(--font-size-xl);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-wide);
}

.text-preset-3 {
  font-weight: var(--font-semi-bold);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-none);
}

.text-preset-4 {
  font-weight: var(--font-regular);
  font-size: var(--font-size-md);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-none);
}

.text-preset-5 {
  font-weight: var(--font-regular);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-relaxed);
  letter-spacing: var(--letter-spacing-none);
}

.container {
  width: 100%;
  max-width: 1120px;
  min-height: 100vh;
  padding: 6.375rem 1rem;
  margin: 0 auto;
}

.four-card__header {
  color: var(--color-grey-500);
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: var(--space-200);
}

.four-card__title span {
  display: block;
}

.four-card__text {
  max-width: 55ch;
  margin-inline: auto;
}

.four-card__content {
  margin-top: 4.625rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-400);
}

.four-card__card {
  display: flex;
  flex-direction: column;
  padding: var(--space-400);
  gap: var(--space-400);
  border-radius: var(--space-100);
  box-shadow: 0px 15px 30px -11px hsla(213, 47%, 67%, 0.5);
  width: 19.625rem;
  min-height: 15.625rem;
}

.four-card__column {
  display: flex;
  flex-direction: column;
  gap: var(--space-400);
}

.four-card__card-icon {
  align-self: flex-end;
  width: 64px;
  height: 64px;
  margin-bottom: 15px;
}

.four-card__card--cyan {
  border-top: 0.25rem solid var(--color-cyan);
}

.four-card__card--red {
  border-top: 0.25rem solid var(--color-red);
}

.four-card__card--orange {
  border-top: 0.25rem solid var(--color-orange);
}

.four-card__card--blue {
  border-top: 0.25rem solid var(--color-blue);
}

@media screen and (min-width: 48rem) {
  .text-preset-1,
  .text-preset-2 {
    font-size: var(--font-size-2xl);
  }

  .four-card__card {
    width: 19.625rem;
  }

  .four-card__column {
    flex-direction: row;
  }
}

@media screen and (min-width: 90rem) {
  .text-preset-1,
  .text-preset-2 {
    font-size: var(--font-size-2xl);
  }

  .four-card__content {
    flex-direction: row;
  }

  .four-card__card {
    width: 21.875rem;
  }

  .four-card__column {
    flex-direction: column;
  }
}
