@font-face {
    font-family: 'Linux Libertine Display';
    src: url('third-party/fonts/LinLibertine_DR.woff') format('woff'),
         url('third-party/fonts/LinLibertine_DRah.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans Google';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('third-party/fonts/open-sans-v20-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('third-party/fonts/open-sans-v20-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('third-party/fonts/open-sans-v20-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('third-party/fonts/open-sans-v20-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('third-party/fonts/open-sans-v20-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('third-party/fonts/open-sans-v20-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans Google';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('third-party/fonts/open-sans-v20-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('third-party/fonts/open-sans-v20-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('third-party/fonts/open-sans-v20-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('third-party/fonts/open-sans-v20-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('third-party/fonts/open-sans-v20-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('third-party/fonts/open-sans-v20-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans Google';
  font-style: normal;
  font-weight: bold; /* was: 700 */
  font-display: swap;
  src: url('third-party/fonts/open-sans-v20-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('third-party/fonts/open-sans-v20-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('third-party/fonts/open-sans-v20-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('third-party/fonts/open-sans-v20-latin-700.woff') format('woff'), /* Modern Browsers */
       url('third-party/fonts/open-sans-v20-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('third-party/fonts/open-sans-v20-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* as per https://stackoverflow.com/questions/14270084/overflow-xhidden-doesnt-prevent-content-from-overflowing-in-mobile-browsers/14271049 */
html, body {
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Open Sans Google", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.vertical-text {
  transform: rotate(-90deg);
  transform-origin: left top 0;
  float: left;
  white-space: nowrap;
  position: relative;
  top: 20px;
}

.horizontal-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.jumbo-light {
  border-radius: 0rem;
  margin: 0px;
}

.jumbo-dark {
  color: white;
  background-color: #343a40;
  border-radius: 0rem;
  margin: 0px;
}

h1.freetext {
  margin-bottom: 25px;
  margin-top: 50px;
  font-weight: bold;
  font-size: 2.0rem;
}

h2.freetext {
  margin-bottom: 25px;
  margin-top: 50px;
  font-weight: bold;
}

h3.freetext {
  margin-bottom: 18px;
  margin-top: 50px;
  padding-bottom: 12px;
  border-bottom: 1px solid #ccc;
}

h5.freetext {
  color: #aec5e8;
  # original color of logo: color: #afc6e9;
  font-family: 'Linux Libertine Display', serif;
  font-size: 1.414rem;
  # font-weight: bold;
  # margin-top: 0px;
  # margin-bottom: 1px;
}

a.underline, a.underline:focus {
  text-decoration: underline;
}
a.underline:hover {
  text-decoration: none;
}

// Vertically center
.container {
  height: 100vh;
  position: relative;
}
.centerM {
  margin: 0;
  width: 100vw;
  height: 100vh;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);

  background: url('background.jpg') no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.introduction {
    height: 100vh;
    width: 100%;
//    background: url('background.jpg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative;
}

.vertical-align {
    position: relative;
    top: 45%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.image {
    box-shadow: 10px 10px 15px silver;
    margin-bottom: 20px;
}

.case th {
    border-style:solid;
    padding: 1px !important;
    height: 110px;
}

.navbar-nav {
    min-height: 55px;
    line-height: 55px;
}

.cookiealert {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    margin: 0 !important;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    border-radius: 0;
    transform: translateY(100%);
    transition: all 500ms ease-out;
    color: #ecf0f1;
    background: #212327;
}

.cookiealert.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0%);
    transition-delay: 1000ms;
}

.cookiealert a {
    text-decoration: underline
}

.cookiealert .acceptcookies {
    margin-left: 10px;
    vertical-align: baseline;
}

.icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    margin: 0px auto 1rem;

    background: rgb(197,222,234); /* Old browsers */
    background: -moz-linear-gradient(-45deg, rgba(197,222,234,1) 0%, rgba(138,187,215,1) 31%, rgba(9,56,229,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(197,222,234,1) 0%,rgba(138,187,215,1) 31%,rgba(9,56,229,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, rgba(197,222,234,1) 0%,rgba(138,187,215,1) 31%,rgba(9,56,229,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c5deea', endColorstr='#0938e5',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

    border-radius: 50%;
    border-style: solid;
    font-size: 2rem;
    color: rgba(0, 0, 0, 0.9);
}

.background-image {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    background-image: linear-gradient(rgba(20, 20, 20, 0.5), rgba(20, 20, 20, 0.5)), url("img/wallpaper.webp");
}

.blue-dot {
  height: 11px;
  width: 11px;
  margin-right: 13px;
  margin-left: 13px;
  margin-bottom: 3px;
  background-color: #0d6efd;
  // border-radius: 50%;
  display: inline-block;
}

.white-dot {
  height: 11px;
  width: 11px;
  margin-right: 13px;
  margin-left: 13px;
  margin-bottom: 3px;
  background-color: #fff;
  // border-radius: 50%;
  display: inline-block;
}

.black-dot {
  height: 11px;
  width: 11px;
  margin-right: 9px;
  // margin-left: 13px;
  margin-bottom: 3px;
  background-color: #000;
  // border-radius: 50%;
  display: inline-block;
}

.wait {
    cursor:wait;
}

.wait > * {
  pointer-events:none;
}

textarea {
  font-family:Consolas,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New, monospace;
}
