body {
  quotes: "\201e" "\201c" "\201a" "\2018";

  line-height: 1.25;

  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
  font-weight: 300;
  font-size: 14pt;
}

footer,
.clear {
  clear: both;
}

.unimportant {
  color: #8087C8;
  color: rgba(255, 255, 255, 0.5);
}

.page .unimportant {
  color: #6F6F6F;
}

.placeholder {
  font-style: italic;
  color: #6F6F6F;
}

.small, footer, figcaption {
  font-size: 0.8em;
}

p,
ul,
ol {
  margin: 0.5em 0;
}

pre,
kbd,
samp,
code {
  font-size: 0.8em;
}

pre {
  padding: 0.5em;
  border: 2px solid #A0A0A0;
}

pre kbd,
pre samp,
pre code {
  font-size: 1em;
}

pre span.blue {
  color: #0000BB;
}

pre span.red {
  color: #FF4040;
}

pre span.green {
  color: #40AA40;
}

div.success,
p.success,
div.warning,
p.warning,
div.error,
p.error {
  margin: 1em 0;
  padding: 0.5em 1em;

  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
  font-weight: 300;
}

div.success,
p.success {
  background-color: #6FCC6F;
}

div.warning,
p.warning {
  background-color: #F0E060;
}

div.error,
p.error {
  background-color: #FF6F6F;
}

div.success a,
p.success a,
div.warning a,
p.warning a,
div.error a,
p.error a {
  color: inherit;
  text-decoration: underline;
}

span.success,
span.error {
  font-weight: bold;
}

span.success {
  color: #6FCC6F;
}

span.error {
  color: #FF6F6F;
}

.shariff ul {
  list-style-type: none;

  padding: 0;
  margin: 0;
}

section.issue .shariff li {
  display: inline-block;

  margin: 1em 0 0 1em;
}

section.issue .shariff a {
  display: inline-block;
  position: relative;

  text-decoration: none;
}

section.issue .shariff a span.fa {
  display: block;

  width: 1.5em;
  padding: 0.5em;

  border-radius: 0.25em;
  border: 1px solid #CCCCCC;
  border-color: rgba(255, 255, 255, 0.75);

  text-align: center;
}

section.issue .shariff a span.share_text {
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.75em;
  
  margin: 0 auto;
  width: 0;
  
  overflow: hidden;
  opacity: 0;
  
  text-align: center;
  
  transition: opacity 0.5s, bottom 0.5s;
}

section.issue .shariff a:hover span.share_text {
  left: -5em;
  bottom: -1.2em;

  width: 12.5em;

  opacity: 1;
}

.page .shariff {
  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
}

.page .shariff ul {
  display: table;
  table-layout: fixed;
  
  margin: 0;
  
  width: 100%;
  
  border-spacing: 2px;
  border-collapse: separate;
}

.page .shariff li {
  display: table-cell;
  
  border: none;
  border-bottom: 2px solid #FFFFFF;
  border-color: #009EE3;
  background-color: #FFFFFF;
  
  transition: color 1s, background-color 1s;
}

.page .shariff li span.fa {
  color: inherit;
  
  transition: color 1s;
}

.page .shariff li:hover {
  color: inherit;
  background-color: #009EE3;
}

.page .shariff li:hover span.fa {
  color: #FFFFFF;
}

.page .shariff a {
  display: block;

  width: auto;
  padding: 0.25em 0.5em;
  
  text-align: center;
  
  color: inherit;
}

.page .shariff a:hover {
  color: inherit;
  text-decoration: none;
}

.page .shariff a span.share_text {
  display: block;
  font-size: 80%;
}

@media (min-width: 600px) {
  .page .shariff ul {
    margin: 0 -0.5em;
    
    width: calc(100% + 1em);
    
    border-spacing: 0.5em;
  }
}

@media (min-width: 700px) {
  .page .shariff ul {
    margin: 0 -1em;
    
    width: calc(100% + 2em);
    
    border-spacing: 1em;
  }

  .page .shariff a span.share_text {
    font-size: 100%;
  }
}

@media (min-width: 900px) {
  .page .shariff a {
    text-align: left;
  }

  .page .shariff a span.share_text {
    display: inline;
    
    padding-left: 1ex;
  }
}

h1, h2, h3, h4, h5, h6, header, footer, .sansSerif, figcaption {
  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
  font-weight: 300;
}

.sansSerif ul {
	list-style-type: circle;
}

h1, h2, h3, h4, h5, h6 {
  margin: 1em 0 0.25em 0;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;
}

hgroup h1:not(:first-child),
hgroup h2:not(:first-child),
hgroup h3:not(:first-child),
hgroup h4:not(:first-child),
hgroup h5:not(:first-child),
hgroup h6:not(:first-child) {
  margin-top: 0;
}

hgroup h1:not(:last-child),
hgroup h2:not(:last-child),
hgroup h3:not(:last-child),
hgroup h4:not(:last-child),
hgroup h5:not(:last-child),
hgroup h6:not(:last-child) {
  margin-bottom: 0;
}

article.comment h2 {
  margin: 0.5em 0 0.25em 0;
}

@media (min-width: 600px) {
  h1 {
    font-size: 3em;
  }

  article.comment h1 {
    font-size: 2em;
  }
}

@media (min-width: 800px) {
  h1 {
    font-size: 4em;
  }

  article.comment h1 {
    font-size: 2.5em;
  }
}

hr {
  display: block;
  margin: 1em 0;

  height: 0;
  width: 100%;

  border: none;
  border-top: 2pt solid #FFFFFF;
}

.page hr {
  width: 33%;

  border-top: 1pt solid #000000;
}

.page hr.big {
  margin: 2em 0;

  width: 100%;

  border-top: 3pt double #000000;
}

hr.textSeparator {
  width: 100%;
  height: auto;

  border: none;
  
  color: inherit;
}

hr.textSeparator:before {
  content: '~';
  display: block;

  width: 100%;

  text-align: center;
  font-size: 150%;
}

.page hr.textSeparator:before {
  color: #009EE3;
}

cite {
  font-style: italic;
}

blockquote {
  margin: 0;
}

q:before,
blockquote p:first-child:before {
  content: open-quote;
}

q:after,
blockquote p:last-child:after {
  content: close-quote;
}

a {
  color: inherit;

  transition: color 0.25s;
}

a.icon {
  display: inline-block;
  padding: 0.25em 0.5em;
  border-radius: 0.25em;

  border: 1px solid #CCCCCC;
  border-color: rgba(255, 255, 255, 0.75);

  text-decoration: none;

  transition: background-color 1s, color 1s, border-color 1s;
}

a.icon:hover {
  color: #025C9D;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
  text-decoration: none;
}

a.icon:before {
  font-family: FontAwesome;

  padding-right: 0.125em;
}

a.icon.pdf:before {
  content: '\f1c1  ';
}

a.icon.online:before {
  content: '\f0ac  ';
}

a.icon.people:before {
  content: '\f0c0  ';
}

div.iconLinks {
  display: inline-table;

  border-spacing: 0 1em;
}

p.iconLinkColumn {
  display: table-row;
}

p.iconLinkColumn a.icon {
  display: table-cell;

  padding: 0.5em 0.75em;

  text-align: left;
}

p.iconLinkColumn a.icon:before {
  padding-right: 0.25em;
}

a.sidenote,
a.footnote,
a.sidenote:hover,
a.footnote:hover {
  text-decoration: none !important;
}

a.footnote {
  position: relative;
  top: -0.5em;

  line-height:0;
  vertical-align: baseline;

  font-size: 0.8em;
}

.page a.footnote {
  color: #009EE3 !important;
}

section p a {
  text-decoration: underline;
}

header a, footer a, .page a, .plainLinks a {
  text-decoration: none;
}

header a:hover, footer a:hover, .page a:hover, .plainLinks a:hover {
  text-decoration: underline;
}

.page a,
.page a:hover {
  color: #009EE3;
}

.page footer a {
  color: inherit;
}

.page h1 a,
.page h2 a,
.page h3 a,
.page h4 a,
.page h5 a,
.page h6 a {
  color: inherit;
  text-decoration: none;
}

.page h1 a:hover,
.page h2 a:hover,
.page h3 a:hover,
.page h4 a:hover,
.page h5 a:hover,
.page h6 a:hover {
  text-decoration: none;
}

table {
  width: 100%;
  margin: 1em auto;
}

.page table {
  width: auto;
}

table th,
table td {
  padding: 0.25em 0.5em;

  border: 1px solid currentColor;
}

table th {
  font-weight: bold;
}

ul.noStyle,
ol.noStyle {
  list-style-type: none;
  padding-left: 0;
}

p.columns,
ul.columns,
ol.columns {
  column-width: 10em;
  -moz-column-width: 10em;
  -webkit-column-width: 10em;
  column-gap: 2em;
  -moz-column-gap: 2em;
  -webkit-column-gap: 2em;
}

ol.columns > li, ul.columns > li {
    break-inside: avoid;
    /* Needed because no browser understands break-inside */
    page-break-inside: avoid;
}

/*
List items don't render correctly in columns bei webkit/blink browsers, so the
following Voodoo is necessary :/
https://bugs.webkit.org/show_bug.cgi?id=23053
*/
ul.columns,
ol.columns {
  list-style-type: none;
  padding: 0;
}

ul.columns li,
ol.columns li {
  padding-left: 1em;
}

ul.columns.noStyle li,
ol.columns.noStyle li {
  padding-left: 0;
}

ul.columns li:before,
ol.columns li:before {
  content: '\25cf ';
  position: relative;
  left: -1em;

  display: inline-block;

  width: 0;
}

ul.columns.noStyle li:before,
ol.columns.noStyle li:before {
  content: none;
}
/*
End of Voodoo
*/

ul.spacious,
ol.spacious {
    line-height: 1.5;
}

.contentFrame > img,
.contentFrame > p > img,
.contentFrame > figure,
.contentFrame > figure > img {
  max-width: 100%;
}

.page ul.toc li.entry a {
  color: inherit;
  text-decoration: none;
}

.page ul.toc li.entry > a > span {
  transition: color 0.25s;
}

.page ul.toc li.entry > a:hover > span {
  color: #009EE3;
  text-decoration: none;
}

.page ul.toc li.entry > a:hover > span.webExclusive {
  color: #FFFFFF;
}

.page ul.toc li.entry.active > a > span.title {
  color: #009EE3;
}

.page > h2,
.page > h3,
.page > h4,
.page > h5,
.page > h6,
.page > div > h2,
.page > div > h3,
.page > div > h4,
.page > div > h5,
.page > div > h6 {
  font-family: "Times New Roman", "Liberation Serif", liberation_serif, serif;
  margin-bottom: 0.2em;
  font-weight: normal;
}

.page p {
  margin: 0;

  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

@media (min-width: 600px) {
  .page p {
    text-align: justify;
  }
}

.page p + p,
.page p + blockquote p,
.page blockquote + blockquote p,
.page aside.sidenote + p,
.page aside.infobox + p {
  text-indent: 1em;
}

.page p.noIndent,
.page div.noParagraphIndent p,
.page p.noTextFlow + p,
.page aside.infobox p {
  text-indent: 0;
}

.page p.margins,
.page div.paragraphMargins p,
.page aside.infobox p {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

.page p.centered,
.page div.paragraphsCentered p {
  text-align: center;
}

figure {
  margin: 0 1em 0.5em 1em;
}

figure[style="float:left"] {
  margin-left: 0;
}

figure[style="float:right"] {
  margin-right: 0;
}

p + figure {
  margin-top: 0.5em;
}

.page > p img,
.page > figure {
  margin: 1em 0;
  width: 100%;
}

.page > figure img {
  max-width: 100%;
}

.page div.literature {
  margin-top: 1em;
}

.page div.literature p {
  margin: 0.5em 0 0.5em 1em;

  text-indent: -1em;
}

.page div.footnotes {
  font-size: 0.8em;
}

.page div.footnotes ol,
.page div.footnotes ul {
  padding-left: 2em;
}

.page div.footnotes li {
  margin-bottom: 0.25em;
}

@keyframes flashFootnote {
  from {
    background-color: transparent;
  }

  25% {
    background-color: #009EE3;
  }

  to {
    background-color: transparent;
  }
}

.page div.footnotes li.flash {
  animation: flashFootnote 1.5s linear 0.5s;
}

.page div.footnotes li a {
  cursor: pointer;
}

.page div.footnotes li span.footnoteBacklink {
  color: #009EE3;
  cursor: pointer;
  border-radius: 0.125em;
}

.page div.footnotes li span.footnoteBacklink:hover {
  color: #FFFFFF;
  background-color: #009EE3;
}

.page div.footnotes li cite {
  font-style: normal;
}

.page div.footnotes li cite:nth-last-of-type(2):before {
  content: open-quote;
}

.page div.footnotes li cite:nth-last-of-type(2):after {
  content: close-quote;
}

article.page {
  font-family: "Times New Roman", "Liberation Serif", liberation_serif, serif;
  font-weight: normal;
}

article.page hgroup {
  margin-bottom: 1.5em;
}

article.page > p:first-of-type:first-letter {
  float: left;

  margin: 0 0 -1px 0;
  padding: 0.05em 0 0 0;

  line-height: 0.5em;

  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
  font-weight: 300;
  font-size: 7em;
  font-style: normal;
}

article.page > p:first-of-type > q:first-child:before {
  /* Need to remove this "open-quote" because browsers then make a drop-cap out of it. */
  content: none;
}

article.page > p:first-of-type > q:first-child:after {
  /* Need to set this manually, because "open/close-quote" count quotes and the opening quote misses (see above). */
  content: "\201c";
}

article.page > p:last-of-type:after {
  content: "φ";

  float: right;
  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
  font-weight: 300;
  color: #009EE3;
}

article.page aside.sidenote,
article.page aside.infobox {
  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
  font-weight: 300;
}

article.page aside.sidenote {
  margin: 0 1em;

  font-size: 0.8em;
}

article.page aside.infobox {
  margin: 1em 0;
  padding: 1em;

  border: 1px solid #009EE3;
}

article.page aside.sidenote span.indicator {
  display: block;
  float: left;

  margin: -0.25em 0;

  min-width: 0.66em;

  font-size: 3em;
}

form {
  font-family: weblysleek_uilight, "Segoe UI", sans-serif;
}

form label,
form div.field {
  display: block;
  margin-bottom: 1em;
}

form label.fake,
form div.field.fake {
  display: none;
}

@media (min-width: 600px) {
  form label,
  form div.field {
    box-sizing: border-box;
    display: inline-block;

    padding-right: 1em;

    width: 50%;
  }

  form label:nth-child(odd),
  form div.field:nth-child(odd) {
    padding-left: 0;
    padding-right: 0.5em;
  }

  form label:nth-child(even),
  form div.field:nth-child(even) {
    padding-left: 0.5em;
    padding-right: 0;
  }

  form label:only-child,
  form div.field:only-child {
    padding-left: 0;
    padding-right: 0;
    margin-left: 25%;
  }

  form label.big,
  form div.field.big {
    display: block;

    padding-right: 0;

    width: 100%;
  }
}

form label > span.title,
form div.field > span.title {
  display: block;

  font-weight: bold;
}

form label > span.title:after,
form div.field > span.title:after {
  content: ':';
}

form label > span.error,
form div.field > span.error {
  font-size: 0.8em;
}

form input.text,
form textarea {
  box-sizing: border-box;
  padding: 0.25em;

  width: 100%;

  color: #000000;
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;

  transition: background-color 1s;
}

.page form input.text,
.page form textarea {
  color: inherit;
  border-color: #CCCCCC;
  background-color: #CCCCCC;
}

form textarea {
  min-height: 10em;

  resize: vertical;
}

form input.text:focus,
form textarea:focus {
  color: #FFFFFF;
  background-color: transparent;
}

.page form input.text:focus,
.page form textarea:focus {
  color: inherit;
  background-color: #FFFFFF;
}

form div.buttons {
  margin: 1em 0;
  text-align: center;
}

form button {
  margin: 0 0.5em;
  padding: 0.25em 0.5em;

  border: none;
  border-bottom: 2px solid #FFFFFF;
  background-color: transparent;

  transition: color 1s, background-color 1s;
}

.page form button {
  border-color: #009EE3;
  background-color: #FFFFFF;
}

form button:hover,
form button:focus,
form button:active {
  color: #000000;
  background-color: #FFFFFF;
}

.page form button:hover,
.page form button:focus,
.page form button:active {
  color: inherit;
  background-color: #009EE3;
}
