@charset "UTF-8";
/* edited on 07-jan-21 by mrx */

@import url("../fonts/fira-sans.css");
@import url("../fonts/monserrat.css");
@import url("../fonts/source-code-pro.css");

html {
  -webkit-text-size-adjust: none; /* prevent font scaling in landscape on mobile devices */
}

/* theme variable set */
:root {
  --background-color: #FFFFFF;
  --button-background: #CCCCCC;
  --button-background_hover: #999999;
  --button-color: #666666;
  --color: #000000;
  --font-family: 'Source Code Pro', monospace;
  --font-size: 1.5vmax;
  --font-weight: 300;
  --font-weight_link: 400;
  --link-background: #EEEEEE;
  --link-background_hover: #DDDDDD;
  --link-background_visited: #F8F8F8;
  --link-color: #222222;
  --link-color_active: #FF0000;
  --link-color_hover: #666666;
  --link-color_visited: #444444;
}

/* verbose mode 
:root {
  --verbose-background-0: #333300;
  --verbose-background-1: #193319;
  --verbose-background-2: #003333;
  --verbose-background-3: #191933;
  --verbose-background-4: #330033;
  --verbose-background-5: #331919;
  --verbose-background-6: #666600;
  --verbose-background-7: #006666;
  --verbose-background-8: #660066;
} /* */

body {
  background-color: var(--background-color);
  color: var(--color);
  font-family: var(--font-family);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  margin: 6.66666vw 7.5vw 5vw 7.5vw;
  word-break: keep-all;
}

header {
  background-color: var(--verbose-background-0, --background-color);
}

header > table {
  background-color: var(--verbose-background-1, --background-color);
  width: 100%;
}

header > table tr td {
  padding: 0;
}

footer {
  background-color: var(--verbose-background-4, --background-color);
  margin: 0 -12.5vw;
}

footer > p {
  text-align: center;
}

footer > table {
  background-color: var(--verbose-background-1, --background-color);
  width: auto;
}

footer > * td {
  background-color: var(--verbose-background-5, --background-color);
  padding: 1vw 1vw 2.5vw;
  text-align: center;
}

* a {
  background-color: var(--verbose-background-8, --background-color);
  color: var(--link-color);
  font-family: var(--font-family);
  font-weight: var(--font-weight_link);
  text-decoration: none;
}

* a:link {
  background-color: var(--link-background);
}

* a:visited {
  background-color: var(--link-background_visited);
  color: var(--color);
}

* a:visited:hover {
  background-color: var(--link-background_hover);
  color: var(--link-color_hover);
}

* a:visited:active {
  color: var(--link-color_active);
}

* a:hover {
  background-color: var(--link-background_hover);
  color: var(--link-color_hover);
  font-weight: 500;
}

* a:active {
  color: var(--link-color_active);
  font-weight: 500;
}

a.button {
  background-color: var(--button-background);
  border-radius: 0.66666vmax;
  color: var(--button-color);
  padding: 1vmax 2.5vmax;
}

a.button:hover, a.button:active {
  background-color: var(--button-background_hover);
  color: var(--background-color);
  font-weight: 200;
}

a.button_round {
  border-radius: 3vmax;
  padding: 1.5vmax;
}

a.logo, a.logo:visited, a.logo:hover {
  background-color: var(--background-color);
}

a.mailto, a.mailto:visited {
  background-color: var(--background-color);
}

a.mailto:hover {
  background-color: var(--link-background_hover);
}

a.red, a.red:visited {
  color: #FF0000;
}

* h1 {
  background-color: var(--verbose-background-7, --background-color);
  font-size: 7.25vw;
}

* h6 {
  background-color: var(--verbose-background-7, --background-color);
  color: var(--link-color);
  display: inline-flex;
  font-size: 120%;
  font-weight: 500;
  margin: 0.5em 0;
}

* img {
  background-color: var(--verbose-background-3, --background-color);
  width: 100%;
}

* li {
  padding: 0.25em 0;
}

* ol {
  padding-left: 3.33333vw;
  padding-right: 6.66666vw;
}

strong {
  font-weight: 400;
}

* table {
  background-color: var(--verbose-background-1, --background-color);
}

* td {
  background-color: var(--verbose-background-5, --background-color);
  padding: 0.75vw 1.5vw 0.5vw;
}

td.right {
  text-align: right;
}

* th {
  background-color: var(--verbose-background-6, --background-color);
  border-bottom: 1px solid #FFFFFF;
  color: var(--link-color);
  font-weight: var(--font-weight_link);
  padding: 0.5vw 1.5vw;
}

* ul {
  padding-left: 3.33333vw;
  padding-right: 6.66666vw;
}

.center {
  margin:auto;
}

.disclaimer > * td {
  padding: .66666vw 1.33333vw 0 0;
}

.half-line {
  display: block;
  line-height: .5em;
}

.monospaced {
  font-family: var(--font-family);
  font-weight: var(--font-weight);
}

.monospaced strong {
  color: #000000;
}

.postcard {
  box-shadow: 0px 4px 8px 0 #00000022, 0 8px 16px 0 #00000033;
  display: block;
  margin: auto;
}

.small_cell {
  padding: 0.5vw 0.5vw;
}

.red {
  color: #FF0000;
  font-weight: 500;
}

.tab {
  padding-left: 3.33333vw;
}

.variable-width {
  font-family: 'Fira Sans', sans-serif;
  font-weight: 200;
}

.width_46 {
  width: 46vw
}