@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 300;
    src: url(./fonts/Source+Sans+Pro_300_normal.eot); /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdq.eot */
    src: local('☺'),
        url(./fonts/Source+Sans+Pro_300_normal.eot?#iefix) format('embedded-opentype'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdq.eot */
        url(./fonts/Source+Sans+Pro_300_normal.woff2) format('woff2'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu.woff2 */
        url(./fonts/Source+Sans+Pro_300_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff */
        url(./fonts/Source+Sans+Pro_300_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdr3cOWxw.ttf */
        url(./fonts/Source+Sans+Pro_300_normal.svg#Source+Sans+Pro_300_normal) format('svg'); /* http://fonts.gstatic.com/l/font?kit=6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdp&skey=e2b26fc7e9e1ade8&v=v12#SourceSansPro */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 400;
    src: url(./fonts/Source+Sans+Pro_400_normal.eot); /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7h.eot */
    src: local('☺'),
        url(./fonts/Source+Sans+Pro_400_normal.eot?#iefix) format('embedded-opentype'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7h.eot */
        url(./fonts/Source+Sans+Pro_400_normal.woff2) format('woff2'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2 */
        url(./fonts/Source+Sans+Pro_400_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff */
        url(./fonts/Source+Sans+Pro_400_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7gujVj9w.ttf */
        url(./fonts/Source+Sans+Pro_400_normal.svg#Source+Sans+Pro_400_normal) format('svg'); /* http://fonts.gstatic.com/l/font?kit=6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7i&skey=1e026b1c27170b9b&v=v12#SourceSansPro */
}

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 600;
    src: url(./fonts/Source+Sans+Pro_600_normal.eot); /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdq.eot */
    src: local('☺'),
        url(./fonts/Source+Sans+Pro_600_normal.eot?#iefix) format('embedded-opentype'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdq.eot */
        url(./fonts/Source+Sans+Pro_600_normal.woff2) format('woff2'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2 */
        url(./fonts/Source+Sans+Pro_600_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdo.woff */
        url(./fonts/Source+Sans+Pro_600_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v12/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdr3cOWxw.ttf */
        url(./fonts/Source+Sans+Pro_600_normal.svg#Source+Sans+Pro_600_normal) format('svg'); /* http://fonts.gstatic.com/l/font?kit=6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdp&skey=227a890402fab339&v=v12#SourceSansPro */
}

html {
  font-size: 21px; }

body {
  transition: background-color 1s; }

/*!
 * Bootstrap v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: "Source Code Pro"; }

*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

 figcaption, footer, main, nav, section {
  display: block; }

body {
  margin: 0;
  font-family: "Source Sans Pro";
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff; }
  @media (max-width: 1200px) {
    body {
      font-size: calc(0.73rem + 0.36vw) ; } }

[tabindex="-1"]:focus {
  outline: 0 !important; }

h1, h2, h3 {
  margin-top: 0;
  margin-bottom: 1rem; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }


ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem; }


ul ul {
  margin-bottom: 0; }

dt {
  font-weight: 400; }

dd {
  margin-bottom: .5rem;
  margin-left: 0; }

blockquote {
  margin: 0 0 1rem; }


strong {
  font-weight: bolder; }

a {
  color: #111;
  text-decoration: none;
  background-color: transparent; }
  a:hover {
    color: black;
    text-decoration: underline; }

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
    color: inherit;
    text-decoration: none; }
  a:not([href]):not([tabindex]):focus {
    outline: 0; }

pre,
code {
  font-family: "Source Code Pro";
  font-size: 1em; }

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto; }

img {
  vertical-align: middle;
  border-style: none; }

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom; }

button {
  border-radius: 0; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0; }

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox; }

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal; }
  @media (max-width: 1200px) {
    legend {
      font-size: calc(0.78rem + 0.96vw) ; } }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button; }

[hidden] {
  display: none !important; }

h1, h2, h3,
.h1, .h2, .h3 {
  margin-bottom: 1rem;
  font-family: "Source Sans Pro";
  font-weight: 600;
  line-height: 1.2; }

h1, .h1 {
  font-size: 2.5rem; }
  @media (max-width: 1200px) {
    h1, .h1 {
      font-size: calc(0.88rem + 2.16vw) ; } }

h2, .h2 {
  font-size: 2rem; }
  @media (max-width: 1200px) {
    h2, .h2 {
      font-size: calc(0.83rem + 1.56vw) ; } }

h3, .h3 {
  font-size: 1.75rem; }
  @media (max-width: 1200px) {
    h3, .h3 {
      font-size: calc(0.805rem + 1.26vw) ; } }

 .display-lh, .display-rv {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2; }
  @media (max-width: 1200px) {
     .display-lh, .display-rv {
      font-size: calc(1.23rem + 6.36vw) ; } }

.blockquote {
  margin-bottom: 2rem;
  font-size: 1rem; }
  @media (max-width: 1200px) {
    .blockquote {
      font-size: calc(0.73rem + 0.36vw) ; } }

.blockquote-footer {
  display: block;
  font-size: 1rem;
  color: #111; }
  @media (max-width: 1200px) {
    .blockquote-footer {
      font-size: calc(0.73rem + 0.36vw) ; } }
  .blockquote-footer::before {
    content: "\2014\00A0"; }

.img-fluid, .diagram-element img, .hardware-element img, .txrx-element img, .single-test-element img, .duo-test-element img, .glasses-element img, .glasses-test-element img {
  max-width: 100%;
  height: auto; }

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-break: break-word; }
  a > code {
    color: inherit; }

pre {
  display: block;
  font-size: 87.5%;
  color: #212529; }
  pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal; }

.container {
  width: 100%;
  padding-right: 2.5rem;
  padding-left: 2.5rem;
  margin-right: auto;
  margin-left: auto; }
  @media (min-width: 576px) {
    .container {
      max-width: 540px; } }
  @media (min-width: 768px) {
    .container {
      max-width: 650px; } }
  @media (min-width: 992px) {
    .container {
      max-width: 750px; } }
  @media (min-width: 1200px) {
    .container {
      max-width: 1140px; } }

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -2.5rem;
  margin-left: -2.5rem; }

 .diagram-title, .col-12, .diagram-element, .hardware-element, .txrx-element, .single-test-element, .duo-test-element, .glasses-element, .glasses-test-element, .col-sm-7, .col-xl-5, .col-xl-6 {
  position: relative;
  width: 100%;
  padding-right: 2.5rem;
  padding-left: 2.5rem; }

 .diagram-title {
  flex: 0 0 50%;
  max-width: 50%; }

.col-12, .diagram-element, .hardware-element, .txrx-element, .single-test-element, .duo-test-element, .glasses-element, .glasses-test-element {
  flex: 0 0 100%;
  max-width: 100%; }

@media (min-width: 576px) {

   .diagram-title {
    flex: 0 0 25%;
    max-width: 25%; }

   .diagram-element {
    flex: 0 0 50%;
    max-width: 50%; }

  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; } }
@media (min-width: 992px) {

   .hardware-element, .txrx-element, .single-test-element, .duo-test-element, .glasses-element, .glasses-test-element {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; } }
@media (min-width: 1200px) {

   .diagram-title {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }

   .diagram-element {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }

  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }

  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0; }
  to {
    background-position: 0 0; } }

@keyframes spinner-border {
  to {
    transform: rotate(360deg); } }

@keyframes spinner-grow {
  0% {
    transform: scale(0); }
  50% {
    opacity: 1; } }

 .display-lh, .display-rv {
  display: none !important; }

.d-flex {
  display: flex !important; }
@media (min-width: 768px) {

   .display-lh, .display-rv {
    display: block !important; } }
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.justify-content-between {
  justify-content: space-between !important; }

.align-items-end {
  align-items: flex-end !important; }

.h-100 {
  height: 100% !important; }

.mb-0 {
  margin-bottom: 0 !important; }

 .hardware-element img, .txrx-element img, .single-test-element img, .duo-test-element img, .glasses-element img, .glasses-test-element img {
  margin-bottom: 3rem !important; }


.py-5,
.diagram-element img {
  padding-top: 6rem !important; }


.py-5,
.diagram-element img {
  padding-bottom: 6rem !important; }
@media (min-width: 992px) {

  
  .hardware-element,
  .txrx-element,
  .single-test-element,
  .duo-test-element,
  .glasses-element,
  .glasses-test-element {
    padding-right: 0 !important; }

  
  .hardware-element,
  .txrx-element,
  .single-test-element,
  .duo-test-element,
  .glasses-element,
  .glasses-test-element {
    padding-left: 0 !important; }

   .hardware-element:nth-child(even), .txrx-element:nth-child(even), .single-test-element:nth-child(even), .duo-test-element:nth-child(even), .glasses-element:nth-child(even), .glasses-test-element:nth-child(even) {
    margin-right: -6rem !important; }

   .hardware-element:nth-child(odd), .txrx-element:nth-child(odd), .single-test-element:nth-child(odd), .duo-test-element:nth-child(odd), .glasses-element:nth-child(odd), .glasses-test-element:nth-child(odd) {
    margin-left: -6rem !important; } }

.text-right {
  text-align: right !important; }

.text-white {
  color: #fff !important; }

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important; }

  a:not(.btn) {
    text-decoration: underline; }

  pre {
    white-space: pre-wrap !important; }

  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid; }

  
  img {
    page-break-inside: avoid; }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; }

  @page {
    size: a3; }
  body {
    min-width: 992px !important; }

  .container {
    min-width: 992px !important; } }
ul {
  padding-left: 1rem;
  margin-bottom: 1.5rem; }

ul > li {
  list-style-type: square; }

ul ul > li {
  list-style-type: none; }

p {
  margin-bottom: 1.5rem; }

h1, h2, h3 {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 0; }
  @media (max-width: 1200px) {
    h1, h2, h3 {
      font-size: calc(0.73rem + 0.36vw) ; } }

h3 {
  font-weight: 400; }

@media (min-width: 992px) {
  .pvht2thirds-m1 {
    padding-top: calc(66.7vh - 1rem) !important; }

  .pvhb2thirds-m2 {
    padding-bottom: calc(66.7vh - 2rem) !important; }

  .pvht2thirds-m3 {
    padding-top: calc(66.7vh - 3rem) !important; }

  .pvht2thirds {
    padding-top: 66.7vh !important; } }
.pvht100 {
  padding-top: 100vh !important; }

.pvht500 {
  padding-top: 500vh !important; }

.vh100-t1r-b5 {
  padding-top: calc(100vh - 1rem - 6rem) !important;
  padding-bottom: 6rem !important; }

.bg-gradient-start {
  background: linear-gradient(black, white); }

.bg-gradient-end {
  background: linear-gradient(white, black); }

.bg-black {
  background-color: black; }

.bg-gradient-01 {
  background-image: url("/assets/lennart-melzer/grundlagen-2/colors-01a.jpg"), url("/assets/lennart-melzer/grundlagen-2/colors-01b.jpg");
  background-blend-mode: overlay;
  background-size: cover; }

.bg-gradient-02 {
  background-image: url("/assets/lennart-melzer/grundlagen-2/gradient-01a.jpg"), url("/assets/lennart-melzer/grundlagen-2/gradient-01b.jpg");
  background-blend-mode: overlay;
  background-size: cover; }

.bg-gradient-04 {
  background-image: url("/assets/lennart-melzer/grundlagen-2/colors-02a.jpg"), url("/assets/lennart-melzer/grundlagen-2/colors-02b.jpg");
  background-blend-mode: overlay;
  background-size: cover; }

.bg-gradient-03 {
  background-image: url("/assets/lennart-melzer/grundlagen-2/gradient-02a.jpg"), url("/assets/lennart-melzer/grundlagen-2/gradient-02b.jpg");
  background-blend-mode: overlay;
  background-size: cover; }

@media (min-width: 1200px) {
  .two-text-columns {
    columns: 2; } }
.diagram-element {
  align-items: flex-end;
  display: flex; }

.dialog-list dt, .dialog-list dd {
  display: inline; }
.dialog-list dt {
  margin-right: 0.25rem; }
.dialog-list dt:before {
  content: '';
  display: block; }

.display-wrapper {
  position: relative;
  overflow: hidden; }

.display-lh {
  position: absolute;
  left: -3rem;
  bottom: -5.5rem;
  line-height: 1;
  transform: rotate(270deg) scale(1.5);
  transform-origin: top left;
  user-select: none;
  pointer-events: none; }

.display-rv {
  position: absolute;
  right: 1rem;
  bottom: 0rem;
  line-height: 1;
  transform: scale(1.5);
  transform-origin: top right;
  user-select: none;
  pointer-events: none; }
