body {
  background: #007bff;
  background: linear-gradient(to right, #0062E6, #33AEFF);
  background-image: url('../img/background/prot.gif');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  --color-text: white;
  --color-number: #999;
  --color-bg: #fff;
  --color-link: #1352d1;
  --color-link-hover: whitesmoke;
  color: var(--color-text);
  background-color: var(--color-bg);
  font-family: europa, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.btn-login {
  font-size: 0.9rem;
  letter-spacing: 0.05rem;
  padding: 0.75rem 1rem;
}

.linkGradient{
  background: #17a2b8; /* fallback for old browsers */
  background: -webkit-linear-gradient(to right, #17a2b8, #007bff); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(to right, #17a2b8, #007bff); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.content {
  display: grid;
  width: 100%;
  margin: 0 auto;
  padding: 10vh 25px;
  max-width: 1050px;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-auto-rows: 200px;
  grid-gap: 4rem;
  grid-row-gap: 6rem;
  justify-content: center;
  list-style: none;
}

.content__item {
  width: 100%;
  height: 0%;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}

.content__item::before {
  color: var(--color-number);
  position: absolute;
  top: 0;
  left: 0;
}

.link {
  cursor: pointer;
  font-size: 18px;
  position: relative;
  white-space: nowrap;
  color: var(--color-text);
}

.link::before,
.link::after {
  position: absolute;
  width: 100%;
  height: 1px;
  background: currentColor;
  top: 100%;
  left: 0;
  pointer-events: none;
}

.link::before {
  content: '';
  /* show by default */
}

.link--thebe {
  font-family: angie-sans, sans-serif;
}

.link--thebe::before {
  transform-origin: 100% 50%;
  transform: scale3d(0, 1, 1);
  transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
}

.link--thebe:hover::before {
  transform-origin: 0% 50%;
  transform: scale3d(1, 2, 1);
  transition-timing-function: cubic-bezier(0.7, 0, 0.2, 1);
}

.link--thebe::after {
  content: '';
  top: calc(100% + 4px);
  transform-origin: 100% 50%;
  transform: scale3d(0, 1, 1);
  transition: transform 0.4s 0.1s cubic-bezier(0.2, 1, 0.8, 1);
}

.link--thebe:hover::after {
  transform-origin: 0% 50%;
  transform: scale3d(1, 1, 1);
  transition-timing-function: cubic-bezier(0.7, 0, 0.2, 1);
}

a {
  text-decoration: none !important;
  color: var(--color-link) !important;
  outline: none !important;
}

a:hover {
  color: var(--color-link-hover) !important;
  outline: none !important;
}

/* https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible */
a:focus {
  /* Provide a fallback style for browsers
 that don't support :focus-visible */
  outline: none !important;
  /* background: lightgrey !important; */
}

a:focus:not(:focus-visible) {
  /* Remove the focus indicator on mouse-focus for browsers
 that do support :focus-visible */
  /* background: transparent !important; */
}

a:focus-visible {
  /* Draw a very noticeable focus style for
 keyboard-focus on browsers that do support
 :focus-visible */
  outline: 2px solid red !important;
  background: transparent !important;
}