/* Port of the supplied ShinyButton effect for the site's existing links and buttons. */
@property --nv-shiny-angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}
@property --nv-shiny-offset {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}
@property --nv-shiny-width {
  syntax: '<percentage>';
  initial-value: 5%;
  inherits: false;
}
.nv-glanz {
  --nv-shiny-bg: #0E0E12;
  --nv-shiny-highlight: #1474B8;
  --nv-shiny-glow: #86CAFF;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid transparent !important;
  border-radius: 999px;
  color: #fff !important;
  background: linear-gradient(var(--nv-shiny-bg),var(--nv-shiny-bg)) padding-box,
    conic-gradient(from calc(var(--nv-shiny-angle) - var(--nv-shiny-offset)),transparent,
      var(--nv-shiny-highlight) var(--nv-shiny-width),#fff calc(var(--nv-shiny-width) * 2),
      var(--nv-shiny-highlight) calc(var(--nv-shiny-width) * 3),transparent calc(var(--nv-shiny-width) * 4)) border-box !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
  animation: nv-shiny-angle 3s linear infinite;
  transition: --nv-shiny-width .8s cubic-bezier(.25,1,.5,1),
    --nv-shiny-offset .8s cubic-bezier(.25,1,.5,1),box-shadow .25s ease;
}
.nv-glanz-blau {
  --nv-shiny-bg: #11639C;
  --nv-shiny-highlight: #5BC4FF;
  --nv-shiny-glow: #B7E9FF;
}
.nv-glanz::before,.nv-glanz::after {
  content: '';
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
}
.nv-glanz::before {
  opacity: .38;
  background: radial-gradient(circle at 2px 2px,#fff .55px,transparent .75px) 0 0/6px 6px;
  mask-image: conic-gradient(from calc(var(--nv-shiny-angle) + 45deg),#000,transparent 12% 88%,#000);
}
.nv-glanz::after {
  inset: -140% -35%;
  background: linear-gradient(-50deg,transparent 38%,var(--nv-shiny-glow) 50%,transparent 62%);
  mask-image: radial-gradient(circle at bottom,transparent 40%,#000);
  opacity: .2;
  animation: nv-shiny-sweep 7.5s linear infinite;
}
.nv-glanz:is(:hover,:focus-visible) {
  --nv-shiny-width: 20%;
  --nv-shiny-offset: 95deg;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.2),0 10px 25px -18px rgba(20,116,184,.65);
}
.nv-glanz:is(:hover,:focus-visible)::after { opacity: .5; }
.nv-glanz:active { transform: translateY(1px); }
.nv-glanz:disabled { cursor: not-allowed; opacity: .58; }
@keyframes nv-shiny-angle { to { --nv-shiny-angle: 360deg; } }
@keyframes nv-shiny-sweep { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .nv-glanz,.nv-glanz::after { animation: none; transition: none; }
}
