body {
  opacity: 0;
  font-family: Montserrat, sans-serif;
  font-size: 1.25rem;
  color: rgba(255,255,255,0.98);
  text-shadow: 1px 1px 3px rgba(0,0,0,0.2);
  overflow: hidden;
  background-color: #bbe2ff;
  overscroll-behavior-y: none;
}

html {
  height: -webkit-fill-available;
}

.background {
  position: absolute;
  top: 0; bottom: 0; left: 0; right: 0;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="margin:auto;background:rgba(255, 255, 255, 0);display:block;z-index:1;position:relative" width="160" height="454" preserveAspectRatio="xMidYMid" viewBox="0 0 160 454"><g transform="translate(80,227) scale(-1,-1) translate(-80,-227)"><g transform="translate(205.55563146649718,129.60906917454207) scale(100)" opacity="0.4"><path d="M1.5413299999999996 0 C1.5413299999999996 0.3654699999999999 1.600132797611877 0.5018286956789011 1.4173977976118772 0.8183349999999998 S1.0871713043210987 1.1520959356150686 0.770665 1.3348309356150685 S0.36547 1.6366699999999998 1.0021713383802492e-16 1.6366699999999998 S-0.45415869567890077 1.5175659356150686 -0.7706649999999995 1.3348309356150687 S-1.2346627976118767 1.1348413043210992 -1.4173977976118768 0.8183350000000005 S-1.5413299999999996 0.3654700000000001 -1.5413299999999996 1.8875848509297895e-16 S-1.6001327976118773 -0.5018286956789006 -1.4173977976118775 -0.8183349999999995 S-1.087171304321099 -1.1520959356150682 -0.7706650000000005 -1.3348309356150683 S-0.3654700000000002 -1.6366699999999998 -3.0065140151407475e-16 -1.6366699999999998 S0.4541586956789 -1.5175659356150688 0.7706649999999988 -1.3348309356150692 S1.2346627976118765 -1.1348413043210992 1.4173977976118766 -0.8183350000000007 S1.5413299999999996 -0.3654700000000003 1.5413299999999996 -3.775169701859579e-16" fill="%239dab98" stroke-width="0"><animateTransform attributeName="transform" type="rotate" dur="100s" repeatCount="indefinite" values="0;60"></animateTransform></path></g><g transform="translate(230.66675775979664,110.13088300945047) scale(100)" opacity="0.4"><path d="M1.8495959999999998 0 C1.8495959999999998 0.43856399999999995 1.9201593571342526 0.6021944348146813 1.7008773571342526 0.9820019999999998 S1.3046055651853186 1.3825151227380823 0.9247980000000001 1.6017971227380823 S0.43856400000000006 1.9640039999999999 1.202605606056299e-16 1.9640039999999999 S-0.5449904348146809 1.8210791227380825 -0.9247979999999995 1.6017971227380825 S-1.481595357134252 1.361809565185319 -1.7008773571342521 0.9820020000000006 S-1.8495959999999998 0.4385640000000002 -1.8495959999999998 2.2651018211157477e-16 S-1.9201593571342528 -0.6021944348146808 -1.7008773571342528 -0.9820019999999994 S-1.304605565185319 -1.3825151227380819 -0.9247980000000007 -1.601797122738082 S-0.4385640000000003 -1.9640039999999999 -3.607816818168897e-16 -1.9640039999999999 S0.54499043481468 -1.821079122738083 0.9247979999999987 -1.6017971227380832 S1.4815953571342517 -1.3618095651853193 1.700877357134252 -0.9820020000000008 S1.8495959999999998 -0.4385640000000004 1.8495959999999998 -4.530203642231495e-16" fill="%232297a0" stroke-width="0"><animateTransform attributeName="transform" type="rotate" dur="50s" repeatCount="indefinite" values="0;60"></animateTransform></path></g><g transform="translate(290.93346086371525,63.383236213230674) scale(100)" opacity="0.4"><path d="M2.5894343999999996 0 C2.5894343999999996 0.6139895999999998 2.6882230999879533 0.8430722087405536 2.3812282999879533 1.3748027999999994 S1.826447791259446 1.9355211718333152 1.2947172 2.242515971833315 S0.6139896 2.7496055999999993 1.6836478484788185e-16 2.7496055999999993 S-0.7629866087405532 2.549510771833315 -1.2947171999999991 2.242515971833315 S-2.074233499987953 1.9065333912594462 -2.381228299987953 1.3748028000000005 S-2.5894343999999996 0.6139896000000001 -2.5894343999999996 3.1711425495620467e-16 S-2.6882230999879533 -0.8430722087405531 -2.3812282999879537 -1.374802799999999 S-1.8264477912594466 -1.9355211718333145 -1.294717200000001 -2.2425159718333147 S-0.6139896000000004 -2.7496055999999993 -5.050943545436454e-16 -2.7496055999999993 S0.762986608740552 -2.5495107718333156 1.294717199999998 -2.242515971833316 S2.0742334999879524 -1.9065333912594464 2.3812282999879524 -1.3748028000000008 S2.5894343999999996 -0.6139896000000005 2.5894343999999996 -6.342285099124093e-16" fill="%233869c5" stroke-width="0"><animateTransform attributeName="transform" type="rotate" dur="33.333333333333336s" repeatCount="indefinite" values="0;60"></animateTransform></path></g></g></svg>')
      no-repeat center center fixed;
  ;
  background-size: cover;
  background-blend-mode: multiply;
}
.background:before {
  content: '';
  position: absolute;
  top: 0; bottom: 0; left: 0; right: 0;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="margin:auto;background:rgba(255, 255, 255, 0);display:block;z-index:1;position:relative" width="1536" height="454" preserveAspectRatio="xMidYMid" viewBox="0 0 1536 454"><g transform="translate(768,227) scale(1,1) translate(-768,-227)"><g transform="translate(1192.787334653171,-102.49883204384003) scale(100)" opacity="0.4"><path d="M5.214719999999999 0 C5.214719999999999 1.2364799999999998 5.413665147867497 1.697816908728617 4.795425147867497 2.7686399999999995 S3.678183091271382 3.897839993622787 2.60736 4.516079993622787 S1.2364800000000002 5.53728 3.390606113991328e-16 5.53728 S-1.5365369087286156 5.134319993622787 -2.607359999999998 4.516079993622787 S-4.177185147867496 3.839463091271384 -4.795425147867496 2.7686400000000018 S-5.214719999999999 1.2364800000000005 -5.214719999999999 6.386190156449684e-16 S-5.413665147867497 -1.697816908728616 -4.795425147867498 -2.7686399999999987 S-3.678183091271384 -3.8978399936227857 -2.6073600000000017 -4.516079993622786 S-1.236480000000001 -5.53728 -1.0171818341973983e-15 -5.53728 S1.536536908728613 -5.134319993622788 2.607359999999996 -4.516079993622789 S4.177185147867495 -3.8394630912713845 4.795425147867495 -2.7686400000000027 S5.214719999999999 -1.2364800000000011 5.214719999999999 -1.2772380312899369e-15" fill="%239dab98" stroke-width="0"><animateTransform attributeName="transform" type="rotate" dur="100s" repeatCount="indefinite" values="0;60"></animateTransform></path></g><g transform="translate(1277.7448015838054,-168.39859845260804) scale(100)" opacity="0.4"><path d="M6.257663999999999 0 C6.257663999999999 1.4837759999999998 6.4963981774409945 2.03738029047434 5.754510177440995 3.322367999999999 S4.41381970952566 4.677407992347344 3.1288320000000005 5.419295992347345 S1.4837760000000002 6.644735999999999 4.068727336789593e-16 6.644735999999999 S-1.843844290474339 6.161183992347345 -3.1288319999999983 5.419295992347346 S-5.012622177440994 4.6073557095256605 -5.754510177440994 3.3223680000000018 S-6.257663999999999 1.4837760000000004 -6.257663999999999 7.663428187739622e-16 S-6.496398177440995 -2.0373802904743386 -5.754510177440996 -3.3223679999999978 S-4.4138197095256615 -4.6774079923473435 -3.1288320000000023 -5.419295992347344 S-1.4837760000000009 -6.644735999999999 -1.2206182010368778e-15 -6.644735999999999 S1.843844290474336 -6.161183992347346 3.1288319999999956 -5.419295992347347 S5.012622177440993 -4.607355709525661 5.754510177440993 -3.3223680000000027 S6.257663999999999 -1.4837760000000013 6.257663999999999 -1.5326856375479243e-15" fill="%232297a0" stroke-width="0"><animateTransform attributeName="transform" type="rotate" dur="50s" repeatCount="indefinite" values="0;60"></animateTransform></path></g><g transform="translate(1481.6427222173274,-326.55803783365127) scale(100)" opacity="0.4"><path d="M8.760729599999998 0 C8.760729599999998 2.0772863999999993 9.094957448417393 2.852332406664076 8.056314248417394 4.651315199999998 S6.179347593335922 6.548371189286281 4.3803648 7.587014389286281 S2.0772863999999998 9.302630399999998 5.696218271505429e-16 9.302630399999998 S-2.5813820066640747 8.62565758928628 -4.380364799999997 7.587014389286282 S-7.01767104841739 6.450297993335924 -8.05631424841739 4.651315200000002 S-8.760729599999998 2.0772864 -8.760729599999998 1.072879946283547e-15 S-9.094957448417393 -2.8523324066640736 -8.056314248417394 -4.651315199999996 S-6.179347593335924 -6.54837118928628 -4.380364800000002 -7.5870143892862805 S-2.077286400000001 -9.302630399999998 -1.7088654814516288e-15 -9.302630399999998 S2.5813820066640694 -8.625657589286284 4.380364799999993 -7.587014389286285 S7.017671048417389 -6.4502979933359255 8.05631424841739 -4.6513152000000035 S8.760729599999998 -2.0772864000000015 8.760729599999998 -2.145759892567094e-15" fill="%233869c5" stroke-width="0"><animateTransform attributeName="transform" type="rotate" dur="33.333333333333336s" repeatCount="indefinite" values="0;60"></animateTransform></path></g></g></svg>')
      no-repeat
      center center
      fixed
  ;
  mix-blend-mode: multiply;
  background-size: cover;        
}

@media (prefers-reduced-motion) {
  .background, .background:before {
    background: #6c9dc2;
  }
}

main {
  filter: contrast(120%) saturate(75%);
  position: absolute;
  width: 80%;
  max-width: 60rem;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  height: calc(100% - 7.8rem);
  margin-top: 3.9rem;
  margin-bottom: 3.9rem;
  background: rgba(255, 255, 255, 0.05) linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 2%, rgba(128, 122, 117, 0.25) 33%, rgba(128, 122, 117, 0.25) 50%, rgba(128, 122, 117, 0.25) 67%, rgba(0, 0, 0, 0) 98%,  rgba(0, 0, 0, 0));
  box-shadow: 0 8px 32px 0 #1f26875e;
  box-shadow: inset 1px 1px 0.12px #ffffff66, 1px 1px 3px #0000001a;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  border-radius: 5px;
  border: 0.5px #ffffff2e;
  border: 2px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.075),
  inset 0px 0px 26px 10px rgba(244, 220, 210,0.02);
  overflow: hidden;
}

main > .scrollable {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  overflow-x: hidden;
  overflow-y: auto;
  scroll-behavior: smooth;
  margin: 1rem;
  padding: 2.333rem;
}

.scrollable {
  --scrollbar-width: 0.667rem;
  --mask-height: 3.33rem;
  padding-bottom: var(--mask-height);
  --mask-image-content: linear-gradient( to bottom, transparent, black var(--mask-height), black calc(100% - var(--mask-height)), transparent );
  --mask-size-content: calc(100% - var(--scrollbar-width)) 100%;
  --mask-image-scrollbar: linear-gradient(black, black);
  --mask-size-scrollbar: var(--scrollbar-width) 100%;
  -webkit-mask-image: var(--mask-image-content), var(--mask-image-scrollbar);
  -webkit-mask-size: var(--mask-size-content), var(--mask-size-scrollbar);
  -webkit-mask-position: 0 0, 100% 0;
  -webkit-mask-repeat: no-repeat, no-repeat;
  -moz-mask-image: var(--mask-image-content), var(--mask-image-scrollbar);
  -moz-mask-size: var(--mask-size-content), var(--mask-size-scrollbar);
  -moz-mask-position: 0 0, 100% 0;
  -moz-mask-repeat: no-repeat, no-repeat;
  mask-image: var(--mask-image-content), var(--mask-image-scrollbar);
  mask-size: var(--mask-size-content), var(--mask-size-scrollbar);
  mask-position: 0 0, 100% 0;
  mask-repeat: no-repeat, no-repeat;
  scrollbar-gutter: stable both-edges;
}

/* Firefox */
.scrollable {
  scrollbar-width: auto;
  scrollbar-color: #a1bacd #74a2c5;
}

/* Chrome, Edge, and Safari */
.scrollable::-webkit-scrollbar {
  width: 0.667rem;
}

.scrollable::-webkit-scrollbar-track {
  background: transparent;
}

.scrollable::-webkit-scrollbar-thumb {
  background-color: rgba(255,255,255, 0.25);
  border-radius: 10px;
  width: 1rem;
  background-clip: content-box;
}

@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 0.5s;
  }
}

main > .back.button {
  animation: fadeIn 0.5s ease-out;
}

section {
  clear: both;
  display: none;
}

section.open {
  display: block;
}

article {
  margin-bottom: 2rem;
}

p {
  margin-top: 0.667rem;
  margin-bottom: 0.667rem;
}

h1 { font-size: 3.052rem; letter-spacing: 0.133rem; font-weight: bold; font-variant: small-caps; text-shadow: 0px 0px 4px #fff; text-align: center;
}
h2 {font-size: 1.953rem; font-style: italic; margin: 1rem 0; user-select: none}
h2:before, h2:after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1.333rem;
  height: 1px;
  border-top: 1px solid #bbb;
  border-left: 2px solid #bbb;
  border-bottom: 1px solid #fff;
  filter: blur(0.333px);
  border-right: 2px solid #fff;
}
h2:before {
  margin-right: 0.333rem;
}
h2:after {
  margin-left: 0.333rem;
}

h3 {font-size: 1.563rem; font-weight: bold; margin: 0.667rem 0;}
h4 {font-size: 1.563rem;}
h5 {font-size: 1.25rem;}

.answered {font-style: italic}
.answered ~ * {font-size: 1rem}

main header p {
  text-align: center;
  font-style: italic;
  opacity: 0.86;
}

a-line {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 0.66rem 0;
  filter: blur(0.333px);
}
a-line:before, a-line:after {
  content: '';
  flex: 1;
  border-top: 1px solid #bbb;
  border-bottom: 1px solid #fff;
}
a-line:before {
  border-left: 2px solid #bbb;
}
a-line:after {
  border-left: 2px solid #fff;
}
a-line:before:not(:empty) {
  margin-right: 0.5em;
}
a-line:after:not(:empty) {
  margin-left: 0.5em;
}

main nav {
  text-align: center;
  margin-bottom: 1.333rem;
  user-select: none;
}
nav ul li {
  display: inline-block;
}
nav ul li:not(:last-child):after {
  content: '|';
  margin: 0.667rem;
  padding: 0;
}

a[href] {
  cursor: pointer;
}

i,em {font-style:italic}

.back.button {
  position:absolute;
  top: 0.667rem;
  left: 0.667rem;
  width: 1.5rem;
  height: 1.5rem;
  z-index: 2;
  background: url('back-button.svg');
  background-size: cover;
  opacity: 0.5;
  filter: drop-shadow(0 0 1.5px #fff);
}

.back.button:hover, .back.button:focus {
  opacity: 1;
  filter: drop-shadow(0 0 1px #fff);
  transition: opacity 0.3s ease-in;
}

a:focus {
  outline: 2px solid rgba(255,255,255,0.333);
  outline-offset: 2px;
  border-radius: 3px;
}

a[href^="http"], a[href^="./"] {
  text-decoration: rgba(255,255,255, 0.5) underline;
}

a[data-lightbox] {
  display: inline-block;
  margin-top: 0.667em;
  margin-right: 0.333em;
  padding-top: 0.3rem;
}

a[data-lightbox] > img {
  border-width: 2px;
  border-style: outset;
  opacity: 0.667;
}

dialog.lightbox {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: max-content;
  height: max-content;
}

dialog.lightbox::backdrop {
  background-color: rgba(0,0,0,0.94);
}

#sigma-img1 img {
  object-fit: cover;
  width: 100%;
  height: calc(100vh - 0.25rem);
  height: calc(100svh - 0.25rem);
  max-height: -webkit-fill-available;
}

figure {
  width: 500px;
}

figure > a:first-child {
  display: block;
  width: max-content;
  height: max-content;
  padding-top: 0.3rem;
  padding-bottom: 0.3rem;
}

figure img {
  opacity: 0.667;
}

figure img.outset {
  border-width: 2px;
  border-style: outset;
}

figure img.dim.outset {
  border-color: rgba(255,255,255,0.3);
}

figure a img:hover, a:focus img, a[data-lightbox] img:hover {
  opacity: 0.94;
  transition: opacity 0.15s ease-in;
}

figcaption {
  opacity: 0.667;
}

figcaption :not(:first-child) {
  font-size: 1rem;
}

figcaption :first-child * {
  font-size: 1.25rem;
}

figcaption ul {
  text-align: right;
}
figcaption ul li {
  display: inline-block;
}
figcaption ul li:not(:last-child):after {
  content: ',';
  margin-right: 0.5em;
}

.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.right.aligned {
  text-align: right;
}

.right.floated ~ * {
  clear: both;
}

.right.floated {
  float: right;
  clear: initial;
}

ul.inline {
  padding-left: 0.75rem;
}

ul.inline > li {
  display: inline;
  padding-right: 0.75rem;
}

ul.disc > li:before {
  content: "\2022";
  padding-right: 0.75rem;
  font-size: 1.953rem;
  position: relative;
  top: 0.125rem;
}

a-fleuron:before {
  display: inline-block;
  content: "\2767";
  font-size: 1.87rem;
  text-shadow: 0px 0px 4px #fff;
  margin-left: 0.675rem;
  margin-right: 0.675rem;
  opacity: 0.675;
 }

.fleuron {
  text-align: center;
  clear: both;
}

.mobile-fleuron {
  display: none;
}

#SIGMA, #HERMES {
  margin-bottom: 0.667rem;
}

.left.padded {
  padding-left: 0.115rem;
}

@media (max-width:715px) {
  html {
    font-size: 0.83em;
  }

  main {
    width: 98%;
    margin-top: 1.5%;
    margin-bottom: 0;
    height: 98%;
  }

  .back.button {
    width: 2.66rem;
    height: 2.66rem;
  }

  nav ul li {
    display: block;
    width: 50%;
    margin-top: 0.133rem;
  }
  
  nav ul li:after {
    display: none;
  }

  nav ul li:nth-child(even) {
    text-align: left;
    margin-left: calc(50% - 1.33rem);
  }

  nav ul li:nth-child(odd) {
    text-align: right;
    margin-left: 0.33rem;
  }

  .mobile-fleuron {
    display: flex;
    font-size: 1.7rem;
    text-shadow: 0px 0px 4px #fff;
    margin-top: -1.23rem;
  }

  .prefleuron, .fleuron {
    display: none;
  }

  a-fleuron:before {
    opacity: 0.75;
  }

  figure {
    width: 100%;
  }

  figure img {
    width: 80vw;
  }

  .right.floated {
    float: none;
    clear: none;
  }

  a[data-lightbox] {
    margin-left: auto;
    margin-right: auto;
    display: block;
    width: fit-content;
  }

  article:last-child {
    margin-bottom: 4rem;
  }
}
@media (max-width:411px) {
  html {
    font-size: clamp(0.1rem, 2.3vw + 0.1rem, 1rem);
  }
}
@media (max-width:177px) {
  html {
    font-size: clamp(0.1rem, 1.5vw + 0.1rem, 1rem);
  }
  h1 {
    font-size: calc(1rem + (100vw / 33))
  }
}
@media (max-height:715px) and (orientation:landscape) {
  main {
    margin-top: 1.5%;
    height: 94%;
  }
  .lightbox img {
    height: 100vh !important;
    height: 100svh !important;
  }
}
@media (orientation:portrait) {
  .lightbox img {
    width: 100vw !important;
    height: fit-content !important;
  }
}