@import url("https://use.typekit.net/fdd8cio.css");
html {
  font-size: 16px;
  font-family: heebo, sans-serif, "Twemoji Country Flags";
  font-weight: 300;
  font-style: normal; }

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 0.25em 0;
  font-family: bicyclette, sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  overflow-wrap: anywhere; }

h1 {
  font-size: 2.5rem; }

h2 {
  font-size: 2rem; }

h3 {
  font-size: 1.75rem; }

h4 {
  font-size: 1.5rem; }

h5 {
  font-size: 1.25rem; }

h6 {
  font-size: 1rem; }

p, ol, ul, table, figure, blockquote {
  margin: 0 0 1rem 0; }

a {
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

img {
  max-width: 100%;
  height: auto; }

hr {
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.25); }

pre {
  padding: 0.5rem;
  border-radius: 3px;
  overflow-x: auto; }

strong {
  font-weight: 700; }

ol, ul {
  padding-left: 2rem; }

address {
  font-style: normal; }

address ul {
  padding-left: 0;
  list-style: none;
  font-style: normal; }

blockquote {
  padding-left: 1rem;
  border-left: 2px solid rgba(0, 0, 0, 0.25); }

figure {
  display: inline-block;
  padding: 0.5rem;
  border: 1px solid rgba(0, 0, 0, 0.25); }
  figure figcaption p {
    margin: 0; }

table {
  width: 100%;
  border-collapse: collapse; }
  table th {
    padding: 0.5rem;
    border-bottom: 1px solid transparent;
    border-color: rgba(0, 0, 0, 0.5); }
  table td {
    padding: 0.5rem;
    border-bottom: 1px solid transparent;
    border-color: rgba(0, 0, 0, 0.25); }

.calendar th {
  text-align: left; }

.calendar td:first-child {
  width: 10%; }

.calendar td:nth-child(2) {
  width: 15%; }

.compo-heading {
  font-size: 1.25rem; }

.button {
  font-family: bicyclette, sans-serif;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 0.04em; }

dl dt {
  font-weight: 600; }

dl dd {
  margin-left: 2rem; }

iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9; }

.news h2 {
  margin-bottom: 2rem; }

.news article {
  margin-bottom: 2rem; }

#home .news {
  margin-top: 2rem; }
  #home .news h2 {
    margin-bottom: 0.5rem; }

ul#visitors {
  padding-left: 0; }
  ul#visitors li {
    list-style: none;
    margin-bottom: 0.5em; }
    ul#visitors li img {
      width: 2em;
      height: 2em;
      border-radius: 50%;
      margin-right: 0.5em;
      user-select: none;
      vertical-align: middle; }
    ul#visitors li > a {
      vertical-align: middle; }
    ul#visitors li .flag {
      margin-left: 0.5em;
      vertical-align: middle;
      user-select: none; }

.pill {
  display: inline;
  font-weight: bold;
  text-transform: uppercase;
  border-radius: 50px;
  padding: 0.02rem 0.75rem;
  padding-bottom: 0;
  font-size: 0.75rem; }
