body {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100vh;
  margin: 0;
  font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
  letter-spacing: normal;
  color: black;
  background-color: white;
  font-size: 18px;
}

header, footer, section {
  width: 90%;
  max-width: 1000px;
  margin: auto;
}

footer, header {
  flex-shrink: 0;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin: 1rem auto;
}

section {
  flex: 1 0 auto;
}

header {
  font-size: 18px;
}

footer {
  padding-bottom: 1rem;
  font-size: 1.1rem;
  padding-top: 2rem;
  border-top: 1px solid lightgrey;
}

footer a {
  color: rgb(109, 109, 109);
  text-decoration: none;
  font-weight: normal;
}

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

footer > span:first-child {
  font-weight: 700;
}

footer > span:first-child a {
  font-weight: 700;
  color: black;
}

footer > span:first-child > span > a {
  font-weight: normal;
  margin-left: 2em;
}

header h1 {
  display: inline;
  margin: 0 2rem 0  0;
  font-size: 24px;
}

header h1 a {
  color: black;
  text-decoration: none;
}

header h1 a:hover {
  text-decoration: underline;
}

header span {
  color: rgb(109, 109, 109);
  flex-shrink: 0
}

header nav {
  display: inline;
}

header nav ul {
  margin: 0;
  padding: 0;
}

header nav ul li {
  display: inline-block;
  padding: 0 .5rem;
}

header nav ul li a {
  color: rgb(8, 117, 226);
  text-decoration: none;
}

header nav ul li a:hover, header nav ul li a.active {
  text-decoration: underline;
}

.generic {
  max-width: 40rem;
  margin: auto;
}

.generic h1 {
  font-size: 5rem;
  text-align: center;
}

.generic p {
  font-size: 21px;
  font-family: "Hoefler Text", "Noto Serif", Garamond, "Times New Roman", serif;
  line-height: 1.4;
}

section p {
  margin: 0 0 1em 0;
}

ul.events li {
  display: block;
  padding: 0 .5rem;
  margin-top: 3em;
  border-top: 1px solid rgb(109, 109, 109);
  padding-top: 1rem;
}

.events li:first-child {
  margin-top: 0;
  border-top: 0;
}

section ul li a {
  color: black;
  text-decoration: none;
}

section ul li a:hover {
  text-decoration: underline;
}

.events p, .events div {
  font-size: 21px;
  font-family: "Hoefler Text", "Noto Serif", Garamond, "Times New Roman", serif;
}

.events p {
  line-height: 1.4;
}

.date::before {
  top: 2px;
  display: inline-block;
  content: "";
  width: 18px;
  height: 18px;
  background-image: url(/calendar.svg);
  position: relative;
  margin-right: 0.25em;
}

.date {
  font-size: 20px;
}

.place {
  padding-left: 20px;
  position: relative;
  margin-bottom: 1rem;
  clear: right;
}

.place::before {
  top: 2px;
  display: inline-block;
  content: "";
  width: 18px;
  height: 18px;
  background-image: url(/geo-alt.svg);
  background-repeat: no-repeat;
  position: absolute;
  left: 0px;
  margin-right: 0.25em;
}

.box {
  float: right;
  margin: 1rem 0 1rem 1rem;
}
.box span {
  display: block;
  margin-top: .5ex;
}

.youtube {
  width: 800px;
  height: 450px;
  margin: auto;
}
iframe {
  width: 800px;
  height: 450px;
}
/* Fonts ------------------------------------- */

/*
 * Chrome renders extra-wide &nbsp; characters for the Hoefler Text font.
 * This results in a jumping cursor when typing in both the classic editor and
 * block editor. The following font-face override fixes the issue by manually
 * inserting a custom font that includes just a Hoefler Text space replacement
 * for that character instead.
 */
 @font-face {
	font-family: NonBreakingSpaceOverride;
	src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff");
}

/* ----------------------------------------------
Inter variable font. Usage:

@supports (font-variation-settings: normal) {
	html { font-family: 'Inter var', sans-serif; }
}
---------------------------------------------- */

@font-face {
	font-family: "Inter var";
	font-weight: 100 900; /* stylelint-disable-line font-weight-notation */
	font-style: normal;
	font-display: swap;
	src: url(/fonts/inter/Inter-upright-var.woff2) format("woff2");
}

@font-face {
	font-family: "Inter var";
	font-weight: 100 900; /* stylelint-disable-line font-weight-notation */
	font-style: italic;
	font-display: swap;
	src: url(/fonts/inter/Inter-italic-var.woff2) format("woff2");
}
