:root {
  --animation-duration: 0.3s;

  --gradient-contrast-colour: rgba(0, 0, 0, 0.7);

  --paper-background: rgba(255, 255, 255);

  --card-background: rgba(255, 255, 255, 0.85);
  --card-contrast-colour-light: rgba(0, 0, 0, 0.25);
  --card-contrast-colour: rgba(0, 0, 0, 0.6);
  --card-contrast-colour-dark: rgba(0, 0, 0, 0.7);
  --box-shadow: 0px 10px 15px 5px rgba(0, 0, 0, 0.1);

  --divider-colour: rgba(0, 0, 0, 0.1);

  --border-radius-big: 44px;
  --border-radius-small: 22px;

  --margin-small: 12px;
  --margin-big: 24px;
  --padding-small: 12px;
  --padding-big: 24px;

  --mobile-page-width: 100%;
  --mobile-padding: 0px 18px;
  --mobile-font-size: 1rem;

  --desktop-page-width: 70%;
  --desktop-padding: 0px 12px;
  --desktop-font-size: 1.25rem;

  --icon-regular-width-height: 48px;
}

a {
  text-decoration: none;
}

body {
  color: var(--gradient-contrast-colour);
  font-family: "Open Sans", sans-serif;
  background-image: url("../assets/floral.png");
  background-size: 100%;
  background-repeat: repeat-y;
}

footer {
  color: var(--gradient-contrast-colour);
  text-align: center;
  margin: var(--margin-big) 0px var(--margin-big) 0px;
}

.content-wrapper {
  width: 100%;
}

.content {
  width: var(--desktop-page-width);
  padding: var(--desktop-padding);
  font-size: var(--desktop-font-size);
}

.content > :not(:first-child) {
  margin-top: var(--margin-small);
  margin-bottom: var(--margin-small);
}

.content > :first-child {
  margin-top: 0px;
  margin-bottom: var(--margin-small);
}

@media only screen and (max-width: 1000px) {
  .content {
    width: var(--mobile-page-width);
    padding: var(--mobile-padding);
    font-size: var(--mobile-font-size);
  }

  body {
    background-size: auto 100% !important;
  }
}

.paper {
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius-small);
  background-color: var(--paper-background);
  padding: var(--padding-big);
  color: var(--card-contrast-colour);
}

.paper.full-width {
  width: 100%;
}

.card {
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius-small);
  background-color: var(--card-background);
  padding: var(--padding-big);
  color: var(--card-contrast-colour);
  moz-transition: all var(--animation-duration) ease-out;
  -o-transition: all var(--animation-duration) ease-out;
  -webkit-transition: all var(--animation-duration) ease-out;
  transition: all var(--animation-duration) ease-out;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
  grid-gap: 1rem;
  gap: 1rem;
}

@media only screen and (max-width: 1000px) {
  .card {
    grid-template-columns: 1fr;
    grid-gap: 1rem;
    gap: 1rem;
  }
}

.card:hover {
  transform: scale(1.05);
}

.card.full-width {
  width: 100%;
}

.card-link-text {
  color: var(--card-contrast-colour-dark);
  text-align: left;
}

.card-link-text:hover {
  color: black;
  font-weight: 600;
}

.card-link-image {
  height: var(--icon-regular-width-height);
  width: var(--icon-regular-width-height);
  margin: -6px 12px 0px 12px;
}

.sk-divider {
  border-top: 2px solid var(--divider-colour);
  width: 100%;
  margin: var(--margin-big) 0px;
}
