html {
  height: 100%;
  font-family: "Rubik", sans-serif;
  scroll-behavior: smooth;
}

body {
  min-height: 100%;
  display: grid;
  grid-template-rows: auto;
  font-size: 120%;
}

body.elements-2 {
  grid-template-rows: 1fr auto;
}

body.elements-3 {
  grid-template-rows: auto 1fr auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto Slab", sans-serif;
}

em {
  color: inherit;
}

.section-full {
  min-height: 100vh;
  min-height: -webkit-fill-available;
  min-height: fill-available;
}

.hamburger {
  font-size: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
  display: block;
  width: 24px;
  padding: 0;
  cursor: pointer;
}

.hamburger-line {
  display: block;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  background-color: #999;
}

.hamburger-line + .hamburger-line {
  margin-top: 4px;
}

.hamburger:hover .hamburger-line,
.hamburger:focus .hamburger-line,
.hamburger:active .hamburger-line {
  background-color: #666;
}

.index-hamburger {
  opacity: 0.8;
}

.index-hamburger .hamburger-line {
  background-color: white;
  opacity: 0.5;
}

.index-hamburger:hover .hamburger-line {
  background-color: white;
  opacity: 0.7;
}
.section-first {
  padding-top: 70px;
}

.fitVids-wrapperOuter {
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.fitVids-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.fitVids-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@keyframes jump {
  0% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

.scroll-hint {
  position: absolute;
  width: 30px;
  height: 30px;
  left: calc(50% - 15px);
  top: calc(100% - 40px);
  animation: jump 0.75s infinite alternate ease-in-out;
}

.scroll-hint svg {
  width: 100%;
  height: 100%;
}

.uk-section-secondary a {
  text-decoration: underline;
}

@media (min-width: 960px) {
  .uk-margin-remove-top\@s {
    margin-top: 0 !important;
  }

  .uk-margin-remove-bottom\@s {
    margin-bottom: 0 !important;
  }
  .uk-margin-large-bottom\@m {
    margin-bottom: 30px !important;
  }
}

.index-title {
  font-size: 2rem;
}

@media (min-width: 960px) {
  .index-title {
    font-size: 2.23125rem;
  }
}

.top-social-nav li a {
  padding-left: 4px;
  padding-right: 4px;
  opacity: 0.5;
}

.top-social-nav li a:hover {
  opacity: 0.7;
}

.top-social-nav svg {
  fill: white;
  height: 22px;
  width: auto;
}

.site-logo svg {
  width: 1em;
  margin-right: 0.25em;
  max-width: unset;
}

.index-logo {
  opacity: 0.8;
}

.contact-form {
  max-width: 720px;
}

.statute-text {
  counter-reset: h1;
}

.statute-text h1::before {
  counter-increment: h1;
  content: counter(h1) ". ";
}

.statute-text h1 {
  counter-reset: h2;
}

.statute-text h2::before {
  counter-increment: h2;
  content: counter(h1) "." counter(h2) ". ";
}

.statute-text h1 + ol {
  counter-reset: h2;
  list-style: none;
}

.statute-text h1 + ol > li::before {
  display: inline-block;
  counter-increment: h2;
  content: counter(h1) "." counter(h2) ". ";
  margin-right: 0.5em;
}

.statute-text h2 + ol {
  counter-reset: h3;
  list-style: none;
}

.statute-text h2 + ol > li::before {
  display: inline-block;
  counter-increment: h3;
  content: counter(h1) "." counter(h2) "." counter(h3) ". ";
  margin-right: 0.5em;
}

.statute-text ol > li {
  margin-bottom: 20px;
}

.statute-text ol > li p {
  display: inline-block;
}

.statute-text ol > li > ul > li {
  margin-bottom: 5px;
}

.join-form {
  max-width: 800px;
}

.content-container {
  max-width: 70ch;
  margin-left: auto;
  margin-right: auto;
}