/* Main theme style.
** 
**  Copyright (c) 2019-2021 Michael Roland <mi.roland@gmail.com>
**  
**  This Source Code Form is subject to the terms of the Mozilla Public
**  License, v. 2.0. If a copy of the MPL was not distributed with this
**  file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
/* Theme styles.
** 
**  Copyright (c) 2019-2025 Michael Roland <mi.roland@gmail.com>
**  
**  This Source Code Form is subject to the terms of the Mozilla Public
**  License, v. 2.0. If a copy of the MPL was not distributed with this
**  file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
/* Theme default colors.
** 
**  Copyright (c) 2019-2025 Michael Roland <mi.roland@gmail.com>
**  
**  This Source Code Form is subject to the terms of the Mozilla Public
**  License, v. 2.0. If a copy of the MPL was not distributed with this
**  file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
/* Customized site colors.
** 
*/
/* Default theme fonts.
** 
**  Copyright (c) 2019-2021 Michael Roland <mi.roland@gmail.com>
**  
**  This Source Code Form is subject to the terms of the Mozilla Public
**  License, v. 2.0. If a copy of the MPL was not distributed with this
**  file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
/* Theme fonts.
** 
**  Copyright (c) 2019-2021 Michael Roland <mi.roland@gmail.com>
**  
**  This Source Code Form is subject to the terms of the Mozilla Public
**  License, v. 2.0. If a copy of the MPL was not distributed with this
**  file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
/*

Note: You can safely override this file by placing your own font definitions into
      "assets/scss/_fonts.scss"

*/
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url("../webfonts/open-sans-v17-latin-300.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans Light"), local("OpenSans-Light"), url("../webfonts/open-sans-v17-latin-300.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-300.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-300.woff") format("woff"), url("../webfonts/open-sans-v17-latin-300.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-300.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url("../webfonts/open-sans-v17-latin-regular.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans Regular"), local("OpenSans-Regular"), url("../webfonts/open-sans-v17-latin-regular.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-regular.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-regular.woff") format("woff"), url("../webfonts/open-sans-v17-latin-regular.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-regular.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url("../webfonts/open-sans-v17-latin-700.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans Bold"), local("OpenSans-Bold"), url("../webfonts/open-sans-v17-latin-700.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-700.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-700.woff") format("woff"), url("../webfonts/open-sans-v17-latin-700.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-700.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url("../webfonts/open-sans-v17-latin-800.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans ExtraBold"), local("OpenSans-ExtraBold"), url("../webfonts/open-sans-v17-latin-800.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-800.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-800.woff") format("woff"), url("../webfonts/open-sans-v17-latin-800.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-800.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url("../webfonts/open-sans-v17-latin-300italic.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans Light Italic"), local("OpenSans-LightItalic"), url("../webfonts/open-sans-v17-latin-300italic.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-300italic.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-300italic.woff") format("woff"), url("../webfonts/open-sans-v17-latin-300italic.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-300italic.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url("../webfonts/open-sans-v17-latin-italic.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans Italic"), local("OpenSans-Italic"), url("../webfonts/open-sans-v17-latin-italic.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-italic.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-italic.woff") format("woff"), url("../webfonts/open-sans-v17-latin-italic.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-italic.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url("../webfonts/open-sans-v17-latin-700italic.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans Bold Italic"), local("OpenSans-BoldItalic"), url("../webfonts/open-sans-v17-latin-700italic.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-700italic.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-700italic.woff") format("woff"), url("../webfonts/open-sans-v17-latin-700italic.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-700italic.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url("../webfonts/open-sans-v17-latin-800italic.eot");
  /* IE9 Compat Modes */
  src: local("Open Sans ExtraBold Italic"), local("OpenSans-ExtraBoldItalic"), url("../webfonts/open-sans-v17-latin-800italic.eot?#iefix") format("embedded-opentype"), url("../webfonts/open-sans-v17-latin-800italic.woff2") format("woff2"), url("../webfonts/open-sans-v17-latin-800italic.woff") format("woff"), url("../webfonts/open-sans-v17-latin-800italic.ttf") format("truetype"), url("../webfonts/open-sans-v17-latin-800italic.svg#OpenSans") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 400;
  src: url("../webfonts/roboto-mono-v7-latin-regular.eot");
  /* IE9 Compat Modes */
  src: local("Roboto Mono"), local("RobotoMono-Regular"), url("../webfonts/roboto-mono-v7-latin-regular.eot?#iefix") format("embedded-opentype"), url("../webfonts/roboto-mono-v7-latin-regular.woff2") format("woff2"), url("../webfonts/roboto-mono-v7-latin-regular.woff") format("woff"), url("../webfonts/roboto-mono-v7-latin-regular.ttf") format("truetype"), url("../webfonts/roboto-mono-v7-latin-regular.svg#RobotoMono") format("svg");
  /* Legacy iOS */ }

@font-face {
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 700;
  src: url("../webfonts/roboto-mono-v7-latin-700.eot");
  /* IE9 Compat Modes */
  src: local("Roboto Mono Bold"), local("RobotoMono-Bold"), url("../webfonts/roboto-mono-v7-latin-700.eot?#iefix") format("embedded-opentype"), url("../webfonts/roboto-mono-v7-latin-700.woff2") format("woff2"), url("../webfonts/roboto-mono-v7-latin-700.woff") format("woff"), url("../webfonts/roboto-mono-v7-latin-700.ttf") format("truetype"), url("../webfonts/roboto-mono-v7-latin-700.svg#RobotoMono") format("svg");
  /* Legacy iOS */ }

/******************************************************************************\
 * 
 * Base style
 * 
\******************************************************************************/
html {
  background-color: #000; }

body {
  font-family: "Open Sans", sans-serif;
  color: #000;
  background-color: #fff; }

.font-weight-light {
  font-weight: 300; }

.font-weight-normal {
  font-weight: 400; }

.font-weight-bold {
  font-weight: 700; }

a {
  color: #0084BB;
  text-decoration: none; }

a:hover,
a:focus,
a:focus-within {
  color: #00719e;
  text-decoration: underline; }

.text-light a {
  color: #fff; }

.text-light a:hover,
.text-light a:focus,
.text-light a:focus-within {
  color: #00a7e5; }

@media (max-width: 991.98px) {
  .container-fluid-lg {
    width: 100%;
    max-width: none; } }

.bg-dark {
  background-color: #000 !important; }

/******************************************************************************\
 * 
 * Main navigation menu
 * 
\******************************************************************************/
#main-navigation {
  min-height: 55px; }

#main-navigation,
#main-navigation .dropdown-menu,
#main-navigation .dropdown-item {
  font-family: "Open Sans", sans-serif;
  font-weight: 300; }

.fixed-top-lg {
  z-index: 1030; }

.ml-auto {
  display: inline-block !important; }

.navbar-grow-right {
  flex-grow: 0; }

.navbar-brand {
  padding: 0;
  overflow: hidden; }

.navbar-brand .navbar-brand-text {
  display: inline-block;
  max-width: 250px;
  padding: 10px 0 9px;
  font-size: 1.25rem;
  line-height: 1;
  white-space: nowrap;
  color: #fff;
  text-decoration: none; }

@media (max-width: 300px) {
  .navbar-brand .navbar-brand-text {
    max-width: 0; } }

.navbar-brand .navbar-brand-icon {
  display: inline-block;
  border-top: 0px none;
  border-bottom: 0px none;
  padding: 0 10px 0 0;
  margin: 0;
  vertical-align: bottom;
  color: #fff;
  text-decoration: none; }

.navbar-brand .navbar-brand-icon img {
  padding: 0;
  margin: 0; }

.navbar-nav {
  padding-top: 1.0rem;
  padding-bottom: 0.5rem; }

.navbar-nav li.nav-item {
  list-style-type: none;
  display: inline; }

.navbar-nav .nav-item .nav-link {
  color: #999999; }

.navbar-nav .nav-item.active .nav-link,
.navbar-nav .nav-item:active .nav-link {
  color: #fff;
  background-color: #0084BB; }

.navbar-nav .nav-item.child-active .nav-link {
  color: #fff; }

.navbar-nav .nav-item .nav-link:hover,
.navbar-nav .nav-item .nav-link:focus,
.navbar-nav .nav-item.child-active .nav-link:hover,
.navbar-nav .nav-item.child-active .nav-link:focus {
  color: #000;
  background-color: #fff; }

.navbar-nav .nav-item .nav-link {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  display: block; }

.navbar-nav .dropdown-menu {
  color: #fff;
  background-color: #000;
  display: block;
  border: 0px none;
  border-radius: 0;
  padding: 0;
  margin: 0; }

.navbar-nav .dropdown:hover > .dropdown-menu,
.navbar-nav .dropdown:focus > .dropdown-menu,
.navbar-nav .dropdown:focus-within > .dropdown-menu,
.navbar-nav .dropright:hover > .dropdown-menu,
.navbar-nav .dropright:focus > .dropdown-menu,
.navbar-nav .dropright:focus-within > .dropdown-menu {
  display: block; }

.navbar-nav .dropdown-item {
  color: #999999;
  background-color: transparent;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }

.navbar-nav .dropdown-menu .dropdown-menu .dropdown-item {
  padding-left: 2.5rem; }

.navbar-nav .dropdown-item.active,
.navbar-nav .dropdown-item:active {
  color: #fff;
  background-color: #0084BB; }

.navbar-nav .dropdown-item.child-active {
  color: #fff; }

.navbar-nav .dropdown-item:hover,
.navbar-nav .dropdown-item:focus,
.navbar-nav .dropdown-item:focus-within {
  color: #000;
  background-color: #fff; }

.navbar-nav .dropdown-item.disabled,
.navbar-nav .dropdown-item:disabled {
  color: #555555;
  background-color: transparent; }

.navbar-nav .dropdown-toggle::after {
  content: '\f0d7';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  padding-left: 0.25em;
  border: 0;
  margin: 0;
  vertical-align: baseline; }

.caret::before {
  content: '\f0da';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  padding-left: 0.5em; }

.dropdown-menu .caret::before {
  content: '\f0d7';
  padding-left: 0.25em; }

.dropdown-menu .dropdown-menu .caret::before {
  content: '\f0da'; }

#main-language-navbar {
  text-align: right; }

#main-language-navbar .dropdown-menu {
  display: inline-block;
  position: relative;
  right: 0;
  left: auto;
  min-width: 5rem;
  text-align: center; }

#main-language-navbar .dropdown .dropdown-item {
  display: inline; }

#main-language-navbar .dropdown-toggle {
  display: none; }

#main-language-navbar .dropdown-toggle::before {
  content: '\f0ac';
  display: inline-block;
  position: relative;
  height: 20px;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1.5rem;
  line-height: 1;
  padding: 0;
  margin: 0 0.255em 0 0;
  vertical-align: top; }

.navbar-toggler-area button {
  margin-left: .25em; }

.navbar-language-icon::before {
  content: '\f0ac';
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1.5rem;
  line-height: 1.25;
  padding: 0;
  margin: 0;
  width: 1.25em;
  height: 1.25em;
  vertical-align: middle; }

@media (min-width: 992px) {
  body {
    padding-top: 55px; }
  /*
    :target::before {
        content: "";
        display: block;
        height: 55px;
        margin: -55px 0 0;
    }
    */
  :target {
    scroll-margin-top: 55px; }
  .collapse:target::before,
  .collapsing:target::before {
    display: none;
    height: 0;
    margin: 0; }
  .collapse:target,
  .collapsing:target {
    scroll-margin-top: 0; }
  .fixed-top-lg {
    position: fixed;
    top: 0;
    right: 0;
    left: 0; }
  .navbar-nav {
    padding-top: 0;
    padding-bottom: 0; }
  .navbar-nav .nav-item {
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent; }
  .navbar-nav .nav-item.active,
  .navbar-nav .nav-item:active {
    border-bottom-color: #0084BB; }
  .navbar-nav .nav-item.child-active {
    border-bottom-color: #fff; }
  .navbar-nav .nav-item:hover,
  .navbar-nav .nav-item:focus,
  .navbar-nav .nav-item:focus-within {
    border-bottom-color: #999999; }
  .navbar-nav .nav-item .nav-link {
    padding-top: 3px;
    padding-bottom: 3px; }
  .navbar-nav .nav-item .nav-link:hover,
  .navbar-nav .nav-item .nav-link:focus,
  .navbar-nav .nav-item.child-active .nav-link:hover,
  .navbar-nav .nav-item.child-active .nav-link:focus {
    color: #fff;
    background-color: transparent; }
  .navbar-nav .nav-item.active .nav-link,
  .navbar-nav .nav-item:active .nav-link {
    background-color: transparent; }
  .navbar-nav .dropdown > .dropdown-menu,
  .navbar-nav .dropright > .dropdown-menu {
    background-color: #fff;
    display: none;
    border: 1px solid rgba(0, 0, 0, 0.25);
    border-radius: 0.25rem;
    padding: 0.5rem 0;
    margin: 0.125rem 0 0; }
  .navbar-nav .dropright > .dropdown-menu {
    top: -0.625rem; }
  .navbar-nav .dropdown-item {
    color: #000;
    background-color: transparent; }
  .navbar-nav .dropdown-menu .dropdown-menu .dropdown-item {
    padding-left: 1.5rem; }
  .navbar-nav .dropdown-item.active,
  .navbar-nav .dropdown-item:active {
    color: #fff;
    background-color: #0084BB; }
  .navbar-nav .dropdown-item.child-active {
    color: #fff;
    background-color: #999999; }
  .navbar-nav .dropdown-item:hover,
  .navbar-nav .dropdown-item:focus,
  .navbar-nav .dropdown-item:focus-within {
    color: #000;
    background-color: #cccccc; }
  .navbar-nav .dropdown-item.disabled,
  .navbar-nav .dropdown-item:disabled {
    color: #555555;
    background-color: transparent; }
  .dropdown-menu .caret::before {
    content: '\f0da';
    padding-left: 0.5em; }
  #main-language-navbar {
    text-align: left; }
  #main-language-navbar .navbar-nav .nav-item {
    border-bottom-color: transparent; }
  #main-language-navbar .navbar-nav .nav-item:hover .nav-link,
  #main-language-navbar .navbar-nav .nav-item:focus .nav-link {
    color: #fff; }
  #main-language-navbar .dropdown-menu {
    display: none;
    position: absolute; }
  #main-language-navbar .dropdown:hover > .dropdown-menu,
  #main-language-navbar .dropdown:focus > .dropdown-menu,
  #main-language-navbar .dropdown:focus-within > .dropdown-menu,
  #main-language-navbar .dropright:hover > .dropdown-menu,
  #main-language-navbar .dropright:focus > .dropdown-menu,
  #main-language-navbar .dropright:focus-within > .dropdown-menu {
    display: block; }
  #main-language-navbar .dropdown .dropdown-item {
    display: block; }
  #main-language-navbar .dropdown-toggle {
    display: block;
    pointer-events: none;
    cursor: default; } }

/******************************************************************************\
 * 
 * Breadcrumb navigation
 * 
\******************************************************************************/
#main-breadcrumb .breadcrumb {
  font-size: 0.75rem;
  background: none;
  border-radius: 0;
  margin: 0;
  padding: 0 1rem; }

.breadcrumb .breadcrumb-item {
  color: #000;
  list-style: none;
  height: 1.5em;
  margin: 0;
  padding-left: 0;
  padding-right: 0.5em; }

.breadcrumb .breadcrumb-item::before {
  content: '\f054';
  color: #999999;
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1.1em;
  padding-left: 0;
  padding-right: 0.5em; }

.breadcrumb .breadcrumb-item a {
  color: #fff;
  background-color: #00a7e5;
  border-radius: 0.25em;
  padding: 0.3em 0.75em;
  text-decoration: none; }

.breadcrumb .breadcrumb-item a:hover,
.breadcrumb .breadcrumb-item a:focus,
.breadcrumb .breadcrumb-item a:focus-within {
  background-color: #0084BB;
  text-decoration: none; }

.breadcrumb .breadcrumb-item.breadcrumb-home {
  font-size: 1.5em;
  line-height: 1; }

.breadcrumb .breadcrumb-item.breadcrumb-home::before {
  content: '';
  display: none; }

.breadcrumb .breadcrumb-item.breadcrumb-home a {
  color: #00a7e5;
  background: none;
  border-radius: 0;
  padding: 0; }

.breadcrumb .breadcrumb-item.breadcrumb-home a:hover,
.breadcrumb .breadcrumb-item.breadcrumb-home a:focus,
.breadcrumb .breadcrumb-item.breadcrumb-home a:focus-within {
  color: #0084BB; }

/******************************************************************************\
 * 
 * Main content
 * 
\******************************************************************************/
#main {
  padding-left: 0;
  padding-right: 0; }

#main.error-404 {
  padding-bottom: 2.0rem; }

#main .container {
  padding-top: 1.5rem;
  margin-bottom: 2.0rem; }

#main p,
#main ul,
#main ol {
  text-align: justify;
  margin-top: 0.75rem;
  margin-bottom: 0.75rem; }

#main p + p {
  margin-top: 0.75rem; }

#main h1, #main .h1 {
  font-size: 2.0rem;
  font-weight: 800;
  border-bottom: 2px solid #000;
  padding-top: 1.0rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0.8rem; }

#main h2, #main .h2 {
  font-size: 1.8rem;
  font-weight: 800;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  margin-top: 1.5rem;
  margin-bottom: 0; }

#main h3, #main .h3,
#main h4, #main .h4,
#main h5, #main .h5,
#main h6, #main .h6 {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 1.5rem;
  margin-bottom: 0; }

#main h3, #main .h3 {
  font-size: 1.5rem;
  font-weight: 800; }

#main h4, #main .h4 {
  font-size: 1.25rem;
  font-weight: 800; }

#main h5, #main .h5 {
  font-size: 1.25rem;
  font-weight: 700; }

#main h6, #main .h6 {
  font-size: 1.0rem;
  font-weight: 700; }

#main article > h2:first-child,
#main .row:first-child div > h2:first-child {
  margin-top: 0; }

#main article > h3:first-child,
#main article > h4:first-child,
#main article > h5:first-child,
#main article > h6:first-child,
#main article .row:first-child div > h3:first-child,
#main article .row:first-child div > h4:first-child,
#main article .row:first-child div > h5:first-child,
#main article .row:first-child div > h6:first-child {
  margin-top: 0.5rem; }

#main ul {
  list-style-type: square;
  padding-left: 2.0rem; }

#main li {
  margin-top: 0.4rem;
  margin-bottom: 0.4rem; }

#main li > *:first-child {
  margin-top: 0; }

#main li > *:last-child {
  margin-bottom: 0; }

#main table {
  width: 100%;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000; }

#main p + table {
  margin-top: 1.0rem; }

#main thead tr {
  background-color: #000;
  color: #fff;
  border-bottom: 2px solid #000; }

#main thead tr a {
  color: #fff; }

#main tbody tr:nth-child(even) {
  background-color: #eeeeee; }

#main th,
#main td {
  padding: 0.25rem 0.625rem; }

#main blockquote {
  margin: 0.75rem 1px;
  padding: 0.25rem 1.0rem;
  font-style: italic;
  border-left: 5px solid #0084BB;
  border-right: 5px solid transparent; }

#main blockquote > *:first-child {
  margin-top: 0; }

#main blockquote > *:last-child {
  margin-bottom: 0; }

#main .block-figure.float-right {
  padding-left: 1.0rem; }

#main .block-figure.float-left {
  padding-right: 1.0rem; }

/******************************************************************************\
 * 
 * Featured content
 * 
\******************************************************************************/
.featured {
  padding-bottom: 2.0rem;
  margin-bottom: 0; }

#main .featured .container {
  padding-bottom: 0;
  margin-bottom: 0; }

.featured.featured-background {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.featured.featured-background.featured-normal:nth-child(odd),
.featured.featured-background.featured-invert:nth-child(even) {
  text-shadow: 0 0 1px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3), 0 0 4px rgba(0, 0, 0, 0.4), 0 0 8px rgba(0, 0, 0, 0.4), 0 0 16px rgba(0, 0, 0, 0.8); }

.featured.featured-background.featured-normal:nth-child(even),
.featured.featured-background.featured-invert:nth-child(odd) {
  text-shadow: 0 0 1px rgba(255, 255, 255, 0.2), 0 0 2px rgba(255, 255, 255, 0.3), 0 0 4px rgba(255, 255, 255, 0.4), 0 0 8px rgba(255, 255, 255, 0.4), 0 0 16px rgba(255, 255, 255, 0.8); }

.featured.featured-normal:nth-child(odd),
.featured.featured-invert:nth-child(even) {
  background-color: #0084BB;
  color: #fff; }

.featured.featured-normal:nth-child(even),
.featured.featured-invert:nth-child(odd) {
  background-color: transparent;
  color: #000; }

.featured.featured-normal:nth-child(odd) a,
.featured.featured-invert:nth-child(even) a {
  color: #33c5ff;
  text-decoration: none; }

.featured.featured-normal:nth-child(odd) a:hover,
.featured.featured-normal:nth-child(odd) a:focus,
.featured.featured-normal:nth-child(odd) a:focus-within,
.featured.featured-invert:nth-child(even) a:hover,
.featured.featured-invert:nth-child(even) a:focus,
.featured.featured-invert:nth-child(even) a:focus-within {
  color: #fff;
  text-decoration: underline; }

#main .featured.featured-normal:nth-child(odd) h1,
#main .featured.featured-invert:nth-child(even) h1 {
  border-bottom-color: #fff; }

#main .featured.featured-background.featured-normal:nth-child(odd) h1,
#main .featured.featured-background.featured-invert:nth-child(even) h1 {
  box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 8px 4px -4px rgba(0, 0, 0, 0.1); }

#main .featured.featured-background.featured-normal:nth-child(even) h1,
#main .featured.featured-background.featured-invert:nth-child(odd) h1 {
  border-bottom-color: #000;
  box-shadow: 0 2px 1px -1px rgba(255, 255, 255, 0.2), 0 8px 4px -4px rgba(255, 255, 255, 0.1); }

.featured-image {
  width: 100%;
  max-width: 100%;
  height: auto; }

#main .featured p:first-child,
#main .featured div:first-child,
#main .featured table:first-child {
  margin-top: 0; }

/******************************************************************************\
 * 
 * Pagination
 * 
\******************************************************************************/
ul.pagination,
#main ul.pagination {
  list-style-type: none;
  padding-left: 0;
  text-align: center;
  margin: 2.0rem 0;
  padding: 0; }

.pagination li,
#main .pagination li {
  margin: 0;
  padding: 0; }

.pagination-bar ~ .post-preview-list,
#main .pagination-bar ~ .post-preview-list {
  margin-top: -0.5rem; }

.pagination .page-item .page-link {
  color: #0084BB;
  border-color: #cccccc; }

.pagination .page-item .page-link:hover {
  color: #fff;
  background-color: #00719e;
  border-color: #00719e;
  box-shadow: none;
  text-decoration: none; }

.pagination .page-item .page-link:focus {
  color: #0084BB;
  box-shadow: 0 0 0 0.2rem rgba(0, 113, 158, 0.5);
  text-decoration: none; }

.pagination .page-item .page-link:hover:focus {
  color: #fff; }

.pagination .page-item.active .page-link {
  color: #fff;
  background-color: #0084BB;
  border-color: #0084BB; }

.pagination .page-item.disabled .page-link {
  color: #999999;
  border-color: #cccccc; }

/******************************************************************************\
 * 
 * Table of contents
 * 
\******************************************************************************/
.toc.toc-inline nav,
#main .toc.toc-inline nav {
  display: inline; }

.toc.toc-inline ul,
#main .toc.toc-inline ul {
  display: inline;
  margin: 0;
  padding: 0; }

.toc.toc-inline ul ul,
#main .toc.toc-inline ul ul {
  font-size: 0.8em; }

.toc.toc-inline ul ul:before,
#main .toc.toc-inline ul ul:before {
  content: '('; }

.toc.toc-inline ul ul:after,
#main .toc.toc-inline ul ul:after {
  content: ')'; }

.toc.toc-inline ul ul ul,
#main .toc.toc-inline ul ul ul {
  display: none; }

.toc.toc-inline li,
#main .toc.toc-inline li,
.toc.toc-inline li li,
#main .toc.toc-inline li li {
  display: inline;
  list-style: none;
  margin: 0;
  padding: 0; }

.toc.toc-inline li:after,
#main .toc.toc-inline li:after {
  content: ' / '; }

.toc.toc-inline li:last-child:after,
#main .toc.toc-inline li:last-child:after {
  margin-left: 0;
  content: ''; }

/******************************************************************************\
 * 
 * Heading anchors
 * 
\******************************************************************************/
.heading-anchor {
  visibility: hidden;
  padding: 0 0.4em;
  font-size: 0.8em;
  color: inherit;
  text-decoration: none; }

.heading-anchor-icon {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1; }

.heading-anchor-icon:before {
  content: '\f0c1'; }

.featured.featured-normal:nth-child(2n+1) .heading-anchor,
.featured.featured-invert:nth-child(2n) .heading-anchor {
  color: inherit;
  text-decoration: none; }

a.heading-anchor:hover,
a.heading-anchor:focus,
a.heading-anchor:focus-within {
  color: #0084BB;
  text-decoration: none; }

.featured.featured-normal:nth-child(2n+1) a.heading-anchor:hover,
.featured.featured-normal:nth-child(2n+1) a.heading-anchor:focus,
.featured.featured-normal:nth-child(2n+1) a.heading-anchor:focus-within,
.featured.featured-invert:nth-child(2n) a.heading-anchor:hover,
.featured.featured-invert:nth-child(2n) a.heading-anchor:focus,
.featured.featured-invert:nth-child(2n) a.heading-anchor:focus-within {
  color: #33c5ff;
  text-decoration: none; }

@media (min-width: 992px) {
  .heading-anchor {
    float: left;
    margin: 0.2em 0 0 -1.8em; } }

*[id]:hover > .heading-anchor {
  visibility: visible; }

/******************************************************************************\
 * 
 * V-Card
 * 
\******************************************************************************/
.vcard {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
  padding: 0; }

.vcard-name {
  font-size: 1.25em;
  font-weight: 400;
  margin-bottom: 0.25rem;
  margin-top: 0;
  padding: 0; }

.vcard-element {
  position: relative;
  margin-right: 1.75rem; }

.vcard .vcard-element,
.vcard .vcard-element-text {
  font-size: 1.0em;
  font-weight: 300;
  margin-bottom: 0; }

.vcard-text .text-secondary,
.vcard-element-text .text-secondary {
  font-style: italic; }

.vcard-element:first-of-type,
.vcard-element-text:first-of-type {
  margin-top: 10px; }

.vcard-element:last-of-type,
.vcard-element-text:last-of-type {
  margin-bottom: 10px; }

.vcard .vcard-element:last-child,
.vcard .vcard-element-text:last-child {
  margin-bottom: 0; }

.vcard-element .vcard-text {
  position: relative;
  left: 1.75rem;
  top: 0;
  display: inline-block; }

.vcard-element .vcard-icon {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  width: 1.0rem;
  height: 1.5rem;
  margin-left: 0;
  margin-right: 0.75em;
  text-align: center;
  font-size: 1.0em;
  line-height: 1.5; }

.vcard-sociallinks,
#main .vcard-sociallinks {
  margin: 0.5em 0 0;
  padding: 0; }

.vcard-sociallinks li {
  display: inline;
  list-style: none;
  text-align: left;
  margin-left: 0.75em; }

.vcard-sociallinks li:first-child {
  margin-left: 0; }

.vcard-sociallinks li:last-child:after {
  content: '';
  margin-left: 0; }

.vcard-sociallinks li.with-icon.with-label i {
  display: inline;
  padding-right: 0.5em; }

.vcard-sociallinks li + li.with-label,
.vcard-sociallinks li.with-label + li {
  margin-left: 0.5em; }

.vcard-sociallinks li.with-label + li:before,
.vcard-sociallinks li + li.with-label:before {
  content: '\2022';
  padding-left: 0;
  padding-right: 0.5em; }

.vcard .biography {
  font-size: 0.9em;
  text-align: justify;
  margin-top: 1.0rem; }

.biography .biography-preview-button {
  line-height: 1.3;
  font-size: 0.9em;
  font-style: italic;
  text-align: left;
  overflow: hidden; }

.biography p:last-child,
#main .biography p:last-child {
  margin-bottom: 0; }

/******************************************************************************\
 * 
 * Alerts and notices
 * 
\******************************************************************************/
.alert {
  padding: 0.5rem 1.0rem; }

.alert .alert-heading {
  margin: -0.5rem -1.0rem;
  padding: 0.5rem 1.0rem; }

.alert hr {
  margin: 0.5rem -1.0rem; }

.alert .alert-heading:not(last-child) {
  margin-bottom: 0.5rem; }

.alert .alert-heading .alert-icon {
  margin-right: 0.25rem; }

.alert-primary,
.alert-info {
  color: #000;
  background-color: #33c5ff;
  border-color: #0084BB; }

.alert-primary .alert-heading,
.alert-info .alert-heading {
  color: #fff;
  background-color: #0084BB; }

.alert-primary hr,
.alert-info hr {
  border-top-color: #0084BB; }

.alert-primary .alert-link,
.alert-info .alert-link {
  color: #00719e; }

.alert-secondary {
  color: #000;
  background-color: #eeeeee;
  border-color: #999999; }

.alert-secondary .alert-heading {
  color: #fff;
  background-color: #999999; }

.alert-secondary hr {
  border-top-color: #999999; }

.alert-secondary .alert-link {
  color: #00a7e5; }

.alert-success {
  color: #0a2a11;
  background-color: #eaf6ec;
  border-color: #28a745; }

.alert-success .alert-heading {
  color: #fff;
  background-color: #28a745; }

.alert-success hr {
  border-top-color: #28a745; }

.alert-success .alert-link {
  color: #1e7d34; }

.alert-warning {
  color: #332200;
  background-color: #faf3e6;
  border-color: #cc8800; }

.alert-warning .alert-heading {
  color: #fff;
  background-color: #cc8800; }

.alert-warning hr {
  border-top-color: #cc8800; }

.alert-warning .alert-link {
  color: #996600; }

.alert-danger {
  color: #370d11;
  background-color: #fcebec;
  border-color: #dc3545; }

.alert-danger .alert-heading {
  color: #fff;
  background-color: #dc3545; }

.alert-danger hr {
  border-top-color: #dc3545; }

.alert-danger .alert-link {
  color: #a52834; }

/******************************************************************************\
 * 
 * Footer
 * 
\******************************************************************************/
#footer a {
  text-decoration: none;
  color: #fff; }

#footer a:hover {
  color: #00a7e5; }

.links-footer {
  padding-top: 1.25rem;
  padding-bottom: 0.625rem;
  -ms-flex-pack: center;
  justify-content: center; }

.links-footer ul {
  margin: 0;
  padding: 0; }

.links-footer li {
  display: inline;
  list-style: none;
  margin: 0;
  padding: 0; }

.copyright-footer {
  color: #999999;
  font-size: 0.8em;
  border-top: 1px solid #555555;
  padding-top: 0.75rem;
  padding-bottom: 1.75rem;
  -ms-flex-pack: center;
  justify-content: center; }

.footer-menu {
  font-size: 0.8em; }

.footer-menu li:after {
  content: '|';
  color: #999999;
  margin-left: 0.5em;
  margin-right: 0.5em; }

.footer-menu li:last-child:after {
  content: '';
  margin-left: 0;
  margin-right: 0; }

.sociallinks-menu li {
  margin-left: 0.75em; }

.sociallinks-menu li:first-child {
  margin-left: 0; }

@media (min-width: 992px) {
  .footer-menu {
    float: left; }
  .sociallinks-menu {
    float: right; } }

/******************************************************************************\
 * 
 * Sidebar
 * 
\******************************************************************************/
#sidebar {
  margin-top: 2.5rem; }

#sidebar .sidebar-module {
  font-size: 0.9rem;
  margin-bottom: 1.5rem;
  border-top: 2px solid #000;
  padding-top: 1.5rem; }

@media (min-width: 768px) {
  #sidebar .sidebar-module {
    border-top: 0;
    padding-top: 0; } }

#sidebar .sidebar-module h1 {
  font-weight: 300;
  font-size: 1.5rem;
  border: 0;
  padding: 0;
  margin-bottom: 0.5em; }

#sidebar .sidebar-module h2,
#sidebar .sidebar-module h3,
#sidebar .sidebar-module h4,
#sidebar .sidebar-module h5,
#sidebar .sidebar-module h6 {
  font-size: 1.0rem;
  font-weight: 300;
  padding: 0;
  margin-bottom: 0.5em; }

#sidebar .sidebar-module ul {
  list-style-type: square;
  margin: 0;
  padding: 0 0 0 1.25rem; }

/******************************************************************************\
 * 
 * Buttons
 * 
\******************************************************************************/
.btn-outline-primary {
  color: #0084BB;
  border-color: #00719e;
  text-decoration: none; }

.btn-outline-primary:hover {
  color: #fff;
  background-color: #00719e;
  border-color: #00719e; }

.btn-outline-primary:focus,
.btn-outline-primary.focus,
.btn-outline-primary:focus-within {
  box-shadow: 0 0 0 0.2rem rgba(0, 113, 158, 0.5);
  text-decoration: none; }

.btn-outline-primary:not(:hover):focus,
.btn-outline-primary:not(:hover).focus,
.btn-outline-primary:not(:hover):focus-within {
  color: #0084BB; }

.btn-outline-primary:disabled,
.btn-outline-primary.disabled {
  color: #0084BB;
  background-color: transparent; }

.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #0084BB;
  border-color: #00719e; }

.btn-outline-primary:not(:disabled):not(.disabled):hover:active,
.btn-outline-primary:not(:disabled):not(.disabled):hover.active {
  background-color: #00719e; }

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 113, 158, 0.5); }

/******************************************************************************\
 * 
 * Publication listings
 * 
\******************************************************************************/
.publication-entry {
  margin-top: 1.0rem;
  margin-bottom: 1.0rem; }

.publication-entry:target {
  color: #00719e; }

.publication-citation {
  text-align: justify; }

.publication-citation .title {
  font-weight: 700;
  font-style: italic; }

.publication-buttons {
  margin: 0.5rem 0; }

.publication-buttons .btn {
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
  padding: 0.25em 1.0em;
  margin-bottom: 0.5em;
  margin-right: 0.5em; }

.publication-buttons .btn .icon + .label {
  margin-left: 0.5em; }

.publication-details .event,
.publication-details .abstract,
.publication-details .keywords,
.publication-details .bibtex {
  padding: 0.5rem 1.0rem;
  border-radius: 4px;
  border: 1px solid #999999;
  border-left-width: 5px;
  border-left-color: #0084BB; }

.publication-details .spacer {
  height: 0.75rem; }

.publication-details .spacer:last-child {
  height: 0.5rem; }

.publication-details .heading,
#main .publication-details .heading {
  margin-top: 0;
  padding-top: 0.25rem;
  margin-bottom: 0.5rem;
  font-size: 1.1em;
  font-weight: 800; }

.publication-details p,
#main .publication-details p {
  margin-top: 0.5rem;
  margin-bottom: 0;
  padding-bottom: 0; }

.publication-details .bibtex {
  background-color: #eeeeee;
  padding-left: 0;
  padding-right: 0.75rem;
  padding-bottom: 0; }

.publication-details .bibtex-data {
  font-family: "Roboto Mono", monospace;
  font-size: 0.8em;
  white-space: pre;
  overflow-x: auto;
  padding-left: 1.0rem;
  padding-bottom: 0.5rem; }

.publication-badges {
  margin: 0.125rem 0; }

.publication-badges .badge {
  font-size: 0.75rem;
  line-height: 1.5;
  border-radius: 0.2rem;
  padding: 0.25em 0.875em;
  margin-bottom: 0.125em;
  margin-right: 0.5em;
  color: #fff;
  background-color: #000; }

.publication-badges .badge-green {
  color: #fff;
  background-color: #28a745; }

.publication-badges .badge-red {
  color: #fff;
  background-color: #dc3545; }

.publication-badges .badge-yellow,
.publication-badges .badge-gold {
  color: #fff;
  background-color: #ffa107; }

.publication-badges .badge-silver {
  color: #fff;
  background-color: #aaa; }

.publication-badges .badge-custom {
  line-height: 1.5;
  border-radius: 0;
  padding: 0;
  margin-bottom: 0.125em;
  margin-right: 0.5em;
  background-color: transparent; }

.publication-badges .badge-custom .custom-icon {
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.2rem; }

.publication-badges .badge .icon + .label {
  margin-left: 0.5em; }

/******************************************************************************\
 * 
 * Content previews
 * 
\******************************************************************************/
.card-hover,
a.card-hover {
  color: #000;
  text-decoration: none;
  box-shadow: 3px 3px 7px 0 #555555;
  top: 0;
  left: 0; }

.card-hover:hover,
.card-hover:focus,
a.card-hover:hover,
a.card-hover:focus {
  box-shadow: 1px 1px 5px 0 #555555;
  top: 2px;
  left: 2px; }

.card-hover.invert-color,
a.card-hover.invert-color {
  color: #fff; }

.card-hover .link {
  color: #0084BB; }

.card-hover:hover .link,
.card-hover:focus .link,
.card-hover:focus-within .link {
  color: #00719e;
  text-decoration: underline; }

.post-preview-list > div {
  margin: 1.0rem 0 0.5rem; }

.post-preview-list {
  margin-bottom: -0.5rem; }

.post-preview-list:last-child {
  margin-bottom: 1.5rem; }

.post-preview-list .card-header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 8.0rem; }

.post-preview-list .card-header .card-title,
#main .post-preview-list .card-header .card-title {
  margin: 0;
  padding: 2rem 0 0; }

.post-preview-list .card-body {
  margin: 0;
  padding: 0.25rem 1.25rem;
  font-size: 0.9em; }

.post-preview-list .card-body > *,
#main .post-preview-list .card-body > * {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.post-preview-list .bottom-line {
  line-height: 1.3;
  font-size: 0.9em;
  font-style: italic;
  text-align: left;
  overflow: hidden; }

.post-preview-list .authored-date {
  font-style: normal;
  font-size: 1.0em; }

.post-preview-list .author,
#main .post-preview-list .author {
  margin: 0;
  padding: 0.25rem 0 0;
  font-size: 0.9em; }

/******************************************************************************\
 * 
 * Posts
 * 
\******************************************************************************/
.post-metadata .authored-date,
.post-metadata .author {
  font-size: 0.875em; }

/******************************************************************************\
 * 
 * Footnotes
 * 
\******************************************************************************/
.footnotes {
  font-size: 0.75em;
  line-height: 1.2; }

.footnotes ol {
  padding-left: 2em; }

/* Default site-specific styles.
** 
*/
.navbar-dark .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.25); }

.navbar-brand .navbar-brand-text {
  display: none; }

.navbar-brand .navbar-brand-icon {
  padding-right: 0; }

.embed-responsive-16by10::before {
  padding-top: 62.5%; }

.embed-responsive-16by10-dorftv {
  margin-bottom: -5%; }

.footnotes {
  font-size: 0.75em;
  line-height: 1.2; }

.footnotes ol {
  padding-left: 2em; }

.blog.section .card-header {
  min-height: 180px; }

.card-header:last-child {
  border-bottom: none; }

.highlight pre {
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 0.5rem;
  padding: 0.5rem; }

/*# sourceMappingURL=main.css.map */