@charset "UTF-8";
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; 
  counter-reset: figures;
}

article, aside, footer, header, nav, section {
  display: block; }

h1 {
  font-size: 2em;
  margin: .67em 0; }

figcaption, figure, main {
  display: block; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace,monospace;
  font-size: 1em; }

a {
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b, strong {
  font-weight: inherit; }

b, strong {
  font-weight: bolder; }

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

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

audio, video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button, input {
  overflow: visible; }

button, select {
  text-transform: none; }

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

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

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: .35em .75em .625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

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

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

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

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none; }

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

details, menu {
  display: block; }

summary {
  display: list-item; }

canvas {
  display: inline-block; }

template {
  display: none; }

[hidden] {
  display: none; }

html, html * {
  margin: 0;
  padding: 0; }

@font-face {
  font-family: 'Lato';
  src: url("/css/fonts/Lato/LatoLatin-Bold.eot");
  /* IE9 Compat Modes */
  src: url("/css/fonts/Lato/LatoLatin-Bold.eot?#iefix") format("embedded-opentype"), url("/css/fonts/Lato/LatoLatin-Bold.woff2") format("woff2"), url("/css/fonts/Lato/LatoLatin-Bold.woff") format("woff"), url("/css/fonts/Lato/LatoLatin-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: bold;
  text-rendering: optimizeLegibility; }
@font-face {
  font-family: 'Lato';
  src: url("/css/fonts/Lato/LatoLatin-Italic.eot");
  /* IE9 Compat Modes */
  src: url("/css/fonts/Lato/LatoLatin-Italic.eot?#iefix") format("embedded-opentype"), url("/css/fonts/Lato/LatoLatin-Italic.woff2") format("woff2"), url("/css/fonts/Lato/LatoLatin-Italic.woff") format("woff"), url("/css/fonts/Lato/LatoLatin-Italic.ttf") format("truetype");
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }
@font-face {
  font-family: 'LatoLight';
  src: url("/css/fonts/Lato/LatoLatin-Light.eot");
  /* IE9 Compat Modes */
  src: url("/css/fonts/Lato/LatoLatin-Light.eot?#iefix") format("embedded-opentype"), url("/css/fonts/Lato/LatoLatin-Light.woff2") format("woff2"), url("/css/fonts/Lato/LatoLatin-Light.woff") format("woff"), url("/css/fonts/Lato/LatoLatin-Light.ttf") format("truetype");
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }
@font-face {
  font-family: 'Lato';
  src: url("/css/fonts/Lato/LatoLatin-Regular.eot");
  /* IE9 Compat Modes */
  src: url("/css/fonts/Lato/LatoLatin-Regular.eot?#iefix") format("embedded-opentype"), url("/css/fonts/Lato/LatoLatin-Regular.woff2") format("woff2"), url("/css/fonts/Lato/LatoLatin-Regular.woff") format("woff"), url("/css/fonts/Lato/LatoLatin-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }
html, body, h1 {
  font-family: 'Lato', Verdana, sans-serif; }

@media screen and (min-width: 680px) {
  @keyframes teaserTopLogo {
    0% {
      transform: scale(0, 1); }
    70% {
      transform: scale(0, 1); }
    100% {
      transform: scale(1, 1); } }
  @keyframes teaserTopH1 {
    0% {
      transform: translate(0, -300px); }
    30% {
      transform: translate(0, -300px); }
    100% {
      transform: translate(0, 0px); } }
  @keyframes slogan {
    0% {
      opacity: 0; }
    21% {
      opacity: 0; }
    31% {
      opacity: 1; }
    100% {
      opacity: 1; } }
  @keyframes keyWord1 {
    0% {
      opacity: 0; }
    32% {
      opacity: 0; }
    42% {
      opacity: 1; }
    100% {
      opacity: 1; } }
  @keyframes keyWord2 {
    0% {
      opacity: 0; }
    42% {
      opacity: 0; }
    52% {
      opacity: 1; }
    100% {
      opacity: 1; } }
  @keyframes keyWord3 {
    0% {
      opacity: 0; }
    52% {
      opacity: 0; }
    62% {
      opacity: 1; }
    100% {
      opacity: 1; } }
  @keyframes arrowDown {
    0% {
      opacity: 0; }
    62% {
      opacity: 0; }
    72% {
      opacity: 1; }
    100% {
      opacity: 1; } }
  html.cssanimations body.home div#teaser-top div#teaser-logo {
    transform: scale(0, 1);
    animation: 1s teaserTopLogo;
    animation-fill-mode: forwards; }
  html.cssanimations body.home div#teaser-top h1 {
    animation: 0.6s teaserTopH1 cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-fill-mode: forwards; }
  html.cssanimations body.home div#teaser-bottom p.slogan {
    opacity: 0;
    animation: 7.5s slogan;
    animation-fill-mode: forwards; }
  html.cssanimations body.home div#teaser-bottom p.slogan-key-words span:nth-child(1) {
    opacity: 0;
    animation: 8s keyWord1;
    animation-fill-mode: forwards; }
  html.cssanimations body.home div#teaser-bottom p.slogan-key-words span:nth-child(2) {
    opacity: 0;
    animation: 8s keyWord2;
    animation-fill-mode: forwards; }
  html.cssanimations body.home div#teaser-bottom p.slogan-key-words span:nth-child(3) {
    opacity: 0;
    animation: 8s keyWord3;
    animation-fill-mode: forwards; }
  html.cssanimations body.home div#teaser-bottom a#arrow-down svg {
    opacity: 0;
    animation: 8s arrowDown;
    animation-fill-mode: forwards; } }
html.cssvhunit body.home div#teaser-top {
  padding: 15vh 5% 0 5%;
  box-sizing: border-box;
  height: 56vh; }
  html.cssvhunit body.home div#teaser-top div#teaser-logo svg {
    width: 20vh;
    height: 20vh; }
  html.cssvhunit body.home div#teaser-top h1 {
    font-size: 4.4vh;
    margin-top: 4vh; }
html.cssvhunit body.home div#teaser-bottom {
  padding: 6vh 5%;
  font-weight: bold;
  font-size: 3vh;
  height: 42vh;
  box-sizing: border-box; }
  html.cssvhunit body.home div#teaser-bottom p.slogan {
    font-size: 3.8vh; }
  html.cssvhunit body.home div#teaser-bottom p.slogan-key-words {
    margin-bottom: 2vh;
    font-size: 3.4vh; }
  html.cssvhunit body.home div#teaser-bottom a#arrow-down {
    margin: 4vh auto auto auto;
    width: 8vh;
    height: 8vh; }
  html.cssvhunit body.home div#teaser-bottom a#arrow-down svg {
    width: 8vh;
    height: 8vh; }

.home {
  width: 100%;
  text-align: center; }
  .home div#teaser-top {
    background-color: #083e4c;
    padding: 5rem 5% 3rem 5%;
    border-bottom: 0.75rem solid #52a7e9; }
    .home div#teaser-top div#teaser-logo svg {
      width: 6rem;
      height: 6rem; }
    .home div#teaser-top h1 {
      color: #fff;
      font-size: 1.6rem;
      margin: 1rem auto 0 auto; }
  .home div#teaser-bottom {
    padding: 3rem 5% 5rem 5%;
    font-weight: bold;
    font-size: 1rem; }
    .home div#teaser-bottom p.slogan {
      margin: 0 auto 0 auto;
      font-size: 1.25rem;
      padding-bottom: 0;
      color: #222; }
    .home div#teaser-bottom p.slogan-key-words :nth-child(1) {
      color: #4598d8; }
    .home div#teaser-bottom p.slogan-key-words :nth-child(2) {
      color: #083e4c; }
    .home div#teaser-bottom p.slogan-key-words :nth-child(3) {
      color: #98d11c; }
    .home div#teaser-bottom p.slogan-key-words {
      margin-bottom: 1em;
      padding-top: 0; }
    .home div#teaser-bottom p.slogan-key-words span {
      margin-right: .5em; }
    .home div#teaser-bottom p.slogan-key-words span:nth-child(3) {
      margin-right: 0; }
    .home div#teaser-bottom a#arrow-down {
      display: block;
      margin: 3rem auto 1rem auto;
      height: 3rem;
      width: 3rem; }
    .home div#teaser-bottom a#arrow-down:hover svg #arrow-down-circle {
      fill: #e6e6e6; }
    .home div#teaser-bottom a#arrow-down:hover svg #arrow-down-arrow {
      stroke: #888; }
    .home div#teaser-bottom a#arrow-down svg {
      height: 3rem;
      width: 3rem; }
  .home div#about-image {
    width: 90%;
    max-width: 300px;
    display: inline-block;
    padding-right: 2rem; }
    .home div#about-image img {
      width: 100%;
      margin-top: 1rem; }
  .home p.about-text {
    text-align: left;
    vertical-align: top;
    padding-top: 2.5rem;
    margin-bottom: 3rem;
    max-width: 22rem;
    width: 100%;
    font-size: 1rem;
    color: #222;
    display: inline-block; }
    .home p.about-text b {
      color: #222; }
  .home p.more {
    padding-bottom: 1.5rem;
    display: inline-block; }
  .home section#features ul {
    display: block;
    overflow: hidden;
    margin: 0 auto;
    list-style-type: none;
    padding: 0; }
    .home section#features ul li.feature {
      clear: both;
      display: inline-block;
      width: 100%;
      margin: 1rem 0;
      vertical-align: top; }
      .home section#features ul li.feature div.feature-icon {
        width: 20%;
        float: left;
        padding-right: 5%; }
        .home section#features ul li.feature div.feature-icon svg {
          width: 100%;
          height: 100%; }
      .home section#features ul li.feature section.feature-description {
        display: inline-block;
        width: 75%;
        text-align: left;
        color: #777; }
        .home section#features ul li.feature section.feature-description h3 {
          font-size: 1rem;
          margin-bottom: .25em;
          color: #222; }
  .home section#course-list ul {
    display: block;
    overflow: hidden;
    max-width: 500px;
    margin: 0 auto;
    list-style-type: none;
    padding: 0;
    padding-bottom: 2rem; }
    .home section#course-list ul li {
      float: left;
      width: 45%; }
      .home section#course-list ul li a:hover {
        background-color: #fcfcfc; }
      .home section#course-list ul li a {
        margin: .5rem 0;
        padding: .5rem 0;
        width: 100%;
        display: block; }
        .home section#course-list ul li a div.course-icon {
          height: 5rem;
          padding: 0 0 .75rem 0; }
          .home section#course-list ul li a div.course-icon svg {
            height: 100%;
            transition: transform .5s; }
        .home section#course-list ul li a h3 {
          display: block;
          width: 100%;
          font-size: 1rem;
          color: #222; }
    .home section#course-list ul li a:hover h3 {
      color: #000; }
    .home section#course-list ul li a:hover div.course-icon svg {
      transform: scale(-1, 1); }
    .home section#course-list ul li:nth-child(odd) {
      margin-right: 10%; }
  @media screen and (min-width: 500px) {
    .home section#features ul {
      max-width: 1000px; }
      .home section#features ul li.feature {
        width: 45%; }
        .home section#features ul li.feature div.feature-icon {
          float: none;
          padding-bottom: 5%;
          padding-right: 0;
          width: 5rem;
          margin: 0 auto; }
        .home section#features ul li.feature section.feature-description {
          width: 100%;
          text-align: center; }
      .home section#features ul li.feature:nth-child(odd) {
        margin-right: 5%; } }
  @media screen and (min-width: 680px) {
    .home section#features ul li.feature {
      width: 38%; }
    .home section#features ul li.feature:nth-child(odd) {
      margin-right: 10%; }
    .home section#course-list ul {
      max-width: 700px; }
      .home section#course-list ul li {
        width: 28%;
        margin-right: 7%; }
      .home section#course-list ul li:nth-child(odd) {
        margin-right: 7%; }
      .home section#course-list ul li:nth-child(3n) {
        margin-right: 0%; } }
  @media screen and (min-width: 1024px) {
    .home section#features ul li.feature {
      width: 20%;
      margin-right: 5%; }
    .home section#features ul li.feature:nth-child(odd) {
      margin-right: 5%; }
    .home section#features ul li.feature:nth-child(4n) {
      margin-right: 0%; }
    .home section#course-list ul {
      max-width: 1024px; }
      .home section#course-list ul li {
        width: 21%;
        margin-right: 5%; }
      .home section#course-list ul li:nth-child(odd) {
        margin-right: 5%; }
      .home section#course-list ul li:nth-child(3n) {
        margin-right: 5%; }
      .home section#course-list ul li:nth-child(4n) {
        margin-right: 0%; } }

body#view-article header#main-header {
  display: none; }
body#view-article article#article-wrapper {
  width: 100%;
  max-width: 720px;
  margin: 2rem auto;
  overflow: hidden;
  /* -------------------- relatedArticles ------------------*/
  /* -------------------- bibliography  ------------------*/
  /* -------------------- footer -------------------------*/ }
  body#view-article article#article-wrapper div#breadcrumb {
    text-align: center; }
    body#view-article article#article-wrapper div#breadcrumb ul li {
      display: inline-block; }
    body#view-article article#article-wrapper div#breadcrumb ul li:nth-child(1):after {
      content: "//";
      color: #52a7e9;
      padding: 0 .5rem; }
  body#view-article article#article-wrapper div#content {
    counter-reset: h2;
    /* ------------------ heading structure ----------------*/ }
    body#view-article article#article-wrapper div#content h2 {
      counter-reset: h3; }
    body#view-article article#article-wrapper div#content h3 {
      counter-reset: h4; }
    body#view-article article#article-wrapper div#content h4 {
      counter-reset: h5; }
    body#view-article article#article-wrapper div#content h5 {
      counter-reset: h6; }
    body#view-article article#article-wrapper div#content h2:before {
      counter-increment: h2;
      content: counter(h2) ". "; }
    body#view-article article#article-wrapper div#content h3:before {
      counter-increment: h3;
      content: counter(h2) "." counter(h3) ". "; }
    body#view-article article#article-wrapper div#content h4:before {
      counter-increment: h4;
      content: counter(h2) "." counter(h3) "." counter(h4) ". "; }
    body#view-article article#article-wrapper div#content h5:before {
      counter-increment: h5;
      content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) ". "; }
    body#view-article article#article-wrapper div#content h6:before {
      counter-increment: h6;
      content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) ". "; }
    body#view-article article#article-wrapper div#content h2.nocount:before, body#view-article article#article-wrapper div#content h3.nocount:before, body#view-article article#article-wrapper div#content h4.nocount:before, body#view-article article#article-wrapper div#content h5.nocount:before, body#view-article article#article-wrapper div#content h6.nocount:before {
      content: "";
      counter-increment: none; }
    body#view-article article#article-wrapper div#content h1, body#view-article article#article-wrapper div#content h2, body#view-article article#article-wrapper div#content h3, body#view-article article#article-wrapper div#content h4, body#view-article article#article-wrapper div#content h5, body#view-article article#article-wrapper div#content h6 {
      margin: 2em 0 1em 0;
      font-size: 1.2em;
      text-align: left;
      width: 94%;
      padding: 0 3%; }
    body#view-article article#article-wrapper div#content h1 {
      font-size: 1.5em;
      text-align: center;
      margin: .3em 0 1.5em 0; }
    body#view-article article#article-wrapper div#content h2 {
      font-size: 1.2em; }
    body#view-article article#article-wrapper div#content div.text {
      /*----------------------- tables -----------------------*/
      /* --------------------   images  ----------------------*/ }
      body#view-article article#article-wrapper div#content div.text .MJXc-display {
        margin: 1.5em 0;
        overflow-x: auto;
        overflow-y: hidden; }
      body#view-article article#article-wrapper div#content div.text p {
        text-align: justify;
        line-height: 1.7em;
        margin: 1em auto;
        width: 94%;
        padding: 0 3%; }
      body#view-article article#article-wrapper div#content div.text a.citation-mark sup {
        color: #0e597a;
        font-size: .8em; }
      body#view-article article#article-wrapper div#content div.text dfn {
        font-weight: bold;
        color: #000;
        font-style: normal; }
      body#view-article article#article-wrapper div#content div.text ul {
        list-style-type: none;
        width: 88%;
        padding: 0.2em 9%; }
        body#view-article article#article-wrapper div#content div.text ul li {
          text-align: left;
          line-height: 1.5em;
          padding: .25em 1em;
          text-indent: -1.5em; }
        body#view-article article#article-wrapper div#content div.text ul li:before {
          padding-right: .5em;
          content: "• ";
          color: #52a7e9;
          /* or whatever color you prefer */ }
      body#view-article article#article-wrapper div#content div.text ol {
        width: 88%;
        padding: 0.2em 9%; }
      body#view-article article#article-wrapper div#content div.text ol li {
        text-align: left;
        line-height: 1.7em;
        padding: .25em 1em .25em .5em; }
      body#view-article article#article-wrapper div#content div.text div.important {
        width: 94%;
        background-color: #f9f9f9;
        margin: 1em auto;
        box-sizing: border-box;
        padding: 1.5em 3.6%; }
      body#view-article article#article-wrapper div#content div.text div.important p {
        margin: 0;
        padding: 0; }
      body#view-article article#article-wrapper div#content div.text .MathJax_Display {
        overflow-x: auto;
        overflow-y: hidden; }
      body#view-article article#article-wrapper div#content div.text table {
        max-width: 100%;
        text-align: center;
        margin: 1.5em auto;
        border-spacing: 2px;
        border-collapse: separate; }
        body#view-article article#article-wrapper div#content div.text table tr:nth-child(odd) td {
          background-color: #e2f9c5; }
        body#view-article article#article-wrapper div#content div.text table tr:nth-child(even) td {
          background-color: #d0f2a6; }
        body#view-article article#article-wrapper div#content div.text table td, body#view-article article#article-wrapper div#content div.text table th {
          padding: 0.3em 1em; }
        body#view-article article#article-wrapper div#content div.text table th {
          background-color: #92C850;
          font-weight: bold; }
      body#view-article article#article-wrapper div#content div.text figure {
        margin: 1.5em auto;
        box-sizing: border-box;
        text-align: center;
        width: 94%;
        padding: 0 3.6%;
        background-color: #f9f9f9;
        overflow: auto; }
        body#view-article article#article-wrapper div#content div.text figure img, body#view-article article#article-wrapper div#content div.text figure object, body#view-article article#article-wrapper div#content div.text figure video {
          width: 90%;
          max-width: 500px;
          margin: 1em auto; }
        body#view-article article#article-wrapper div#content div.text figure figcaption {
          text-align: left;
          text-align: justify;
          counter-increment: figures;
          line-height: 1.5em;
          margin: 1em 0; }
        body#view-article article#article-wrapper div#content div.text figure figcaption:before {
          content: "Fig. " counter(figures) " - ";
          font-weight: bold; }
    body#view-article article#article-wrapper div#content div#heading-structure {
      text-align: center;
      margin-top: 5%; }
      body#view-article article#article-wrapper div#content div#heading-structure ul {
        width: auto;
        list-style-type: none;
        display: inline-block;
        text-align: center;
        line-height: 1.3em;
        border: 1px #ddd solid;
        padding: 2em;
        font-size: .9em;
        margin-bottom: 3%; }
        body#view-article article#article-wrapper div#content div#heading-structure ul li {
          text-align: left;
          line-height: 1.7em; }
        body#view-article article#article-wrapper div#content div#heading-structure ul li.h3 {
          margin-left: 1em; }
        body#view-article article#article-wrapper div#content div#heading-structure ul li.h4 {
          margin-left: 2em; }
      body#view-article article#article-wrapper div#content div#heading-structure p {
        text-align: center;
        margin-bottom: .5em; }
  body#view-article article#article-wrapper section#related-articles {
    padding: 0 3%;
    padding-top: 5rem;
    clear: both; }
    body#view-article article#article-wrapper section#related-articles h2 {
      text-align: left;
      margin-left: 2em;
      margin-bottom: 1em;
      color: #000;
      font-size: 1.2em; }
    body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item:hover {
      cursor: pointer;
      background-color: #f9f9f9; }
      body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item:hover p.related-articles-description span.related-articles-course {
        color: #000; }
    body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item {
      background-color: #fcfcfc;
      margin: .25rem 0;
      overflow: hidden;
      padding: 0; }
      body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item a {
        display: block;
        overflow: hidden;
        padding: .5rem 5%; }
        body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item a div.related-articles-icon {
          float: left;
          display: inline-block;
          width: 20%;
          height: 20%;
          max-width: 80px;
          max-height: 80px; }
          body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item a div.related-articles-icon svg {
            width: 100%;
            height: 100%; }
        body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item a p.related-articles-description {
          display: inline-block;
          max-width: 400px;
          width: 70%;
          text-align: left;
          float: left;
          padding: 1rem 5%; }
          body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item a p.related-articles-description span {
            display: block; }
          body#view-article article#article-wrapper section#related-articles ul#related-articles-list li.related-articles-item a p.related-articles-description span.related-articles-course {
            font-weight: bold;
            color: #222; }
  body#view-article article#article-wrapper section#bibliography {
    padding: 0 3%;
    padding-top: 5rem;
    color: #222; }
    body#view-article article#article-wrapper section#bibliography h2 {
      text-align: left;
      margin-left: 2em;
      margin-bottom: 1em;
      color: #000;
      font-size: 1.2em; }
    body#view-article article#article-wrapper section#bibliography table#citation-list {
      margin: 1.3em 0;
      overflow: hidden;
      width: 100%;
      font-size: 1em; }
      body#view-article article#article-wrapper section#bibliography table#citation-list td {
        text-align: left;
        line-height: 1.5em;
        padding: 0.25em .3em; }
        body#view-article article#article-wrapper section#bibliography table#citation-list td span:after {
          content: ".";
          padding-right: .5em; }
        body#view-article article#article-wrapper section#bibliography table#citation-list td span.title {
          font-style: italic; }
        body#view-article article#article-wrapper section#bibliography table#citation-list td span.spec:after {
          content: ""; }
      body#view-article article#article-wrapper section#bibliography table#citation-list td.index {
        padding-right: 0em;
        vertical-align: top; }
  body#view-article article#article-wrapper footer {
    margin-top: 3em; }
    body#view-article article#article-wrapper footer a {
      font-size: 1em;
      padding: 1em .5em; }
      body#view-article article#article-wrapper footer a svg {
        width: 1.5em;
        height: 1.5em;
        margin-bottom: -.4em; }
        body#view-article article#article-wrapper footer a svg #arrow-down-circle {
          display: none; }
        body#view-article article#article-wrapper footer a svg #arrow-down-arrow {
          stroke: #0e597a; }
    body#view-article article#article-wrapper footer a:hover svg #arrow-down-arrow {
      stroke: #4598d8; }
    body#view-article article#article-wrapper footer div.prev-button a {
      float: left;
      margin-left: 1em; }
      body#view-article article#article-wrapper footer div.prev-button a svg {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg); }
    body#view-article article#article-wrapper footer div.next-button a {
      float: right; }
      body#view-article article#article-wrapper footer div.next-button a svg {
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg); }
  body#view-article article#article-wrapper div#back-to-top {
    position: absolute;
    right: 3em;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .1s;
    -ms-transition: opacity .1s;
    -moz-transition: opacity .1s;
    -o-transition: opacity .1s; }
    body#view-article article#article-wrapper div#back-to-top a {
      position: fixed;
      padding: .8em 1em;
      width: 1em;
      text-align: center;
      background-color: #52a7e9;
      top: 0em;
      color: #000;
      color: #083e4c;
      border-bottom-left-radius: 10px; }
  body#view-article article#article-wrapper div#back-to-top.active {
    opacity: 1;
    visibility: visible; }

@media screen and (max-width: 400px) {
  body#view-article article#article-wrapper div#content div.text p {
    line-height: 1.5em; } }
@media print {
  #main-header, #mobile-navigation-bar, #course-nav, #main-footer, #related-articles {
    display: none !important; }

  article.articleWrapper {
    box-sizing: border-box;
    width: 100%;
    float: none !important;
    overflow-y: visible;
    font-size: .8em;
    padding: 0 2%; } }
#contact p.error {
  padding: 1em;
  color: #dd3745;
  font-weight: bold; }
#contact p.status {
  margin: 1em auto;
  padding: 1em;
  font-weight: bold;
  color: #98d11c; }
#contact div.g-recaptcha {
  margin: 1em auto; }
#contact form#contact-form {
  text-align: center;
  width: 100%; }
  #contact form#contact-form fieldset {
    border: none;
    text-align: left;
    margin: 1rem auto;
    width: 100%; }
    #contact form#contact-form fieldset > * {
      display: block;
      width: 100%; }
    #contact form#contact-form fieldset label {
      font-weight: bold;
      padding: 1.5em 0 .5em 0; }
    #contact form#contact-form fieldset input, #contact form#contact-form fieldset textarea, #contact form#contact-form fieldset select {
      padding: 1%;
      width: 98%;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px;
      box-shadow: none;
      border: 2px solid #e4e4e4; }
    #contact form#contact-form fieldset select, #contact form#contact-form fieldset input#submit-button {
      background-color: #f9f9f9;
      color: #222; }
    #contact form#contact-form fieldset select:hover, #contact form#contact-form fieldset input#submit-button:hover {
      background-color: #f0f0f0;
      cursor: pointer; }
    #contact form#contact-form fieldset input#submit-button {
      width: 8rem;
      margin-top: 1.5rem;
      margin: 1.5rem auto 0 auto;
      max-width: 100%; }

body#legal table#contact-information {
  line-height: 1.5em;
  text-align: left;
  display: block; }
  body#legal table#contact-information td {
    padding-bottom: .5em; }
  body#legal table#contact-information td.label {
    font-weight: bold;
    vertical-align: top;
    width: 6em; }

#error-404 section.full-width-row div#image-black-hole {
  width: 400px;
  margin: 0 auto 2rem auto;
  max-width: 90%; }
  #error-404 section.full-width-row div#image-black-hole svg {
    width: 100%;
    height: 100%; }
#error-404 section.full-width-row h1 {
  margin-bottom: 4rem; }
#error-404 section.full-width-row p {
  font-size: 1.2em; }

#maintenance section.full-width-row div#image-gears {
  width: 400px;
  margin: 0 auto 4rem auto;
  max-width: 90%; }
  #maintenance section.full-width-row div#image-gears svg {
    width: 100%;
    height: 100%; }
#maintenance section.full-width-row p {
  font-size: 1.2em; }

@media screen and (min-width: 1100px) {
  body#view-article nav#mobile-navigation-bar {
    display: none; }
  body#view-article header#main-header {
    display: block; }
  body#view-article article#article-wrapper {
    margin-top: 4rem;
    width: 70%; }
    body#view-article article#article-wrapper div#breadcrumb {
      font-size: 1.1em; }
    body#view-article article#article-wrapper div#content h1 {
      font-size: 1.6em; }
    body#view-article article#article-wrapper div#content h2 {
      font-size: 1.4em; }
  body#view-article aside#course-nav {
    width: 30%;
    max-width: 500px;
    float: right; }
    body#view-article aside#course-nav div#course:hover {
      cursor: pointer; }
      body#view-article aside#course-nav div#course:hover div#course-icon svg {
        transform: scale(-1, 1); }
    body#view-article aside#course-nav div#course {
      margin-bottom: 2em; }
      body#view-article aside#course-nav div#course div#course-icon {
        display: block;
        padding: 4rem 0 1.5rem 0; }
        body#view-article aside#course-nav div#course div#course-icon svg {
          height: 8rem;
          width: 8rem;
          transform: scale(1, 1);
          transition: transform .5s; }
      body#view-article aside#course-nav div#course p#course-current {
        background-color: #fff;
        padding: 0 0 .5em 0; }
      body#view-article aside#course-nav div#course ul#course-list li a {
        background-color: #fff; }
      body#view-article aside#course-nav div#course ul#course-list li a:hover {
        background-color: #f9f9f9; } }
aside#course-nav {
  width: 100%;
  max-width: 720px;
  margin: 0 auto 2em auto;
  -webkit-transition: max-height .5s;
  -ms-transition: max-height .5s;
  -moz-transition: max-height .5s;
  -o-transition: max-height .5s;
  transition: max-height .5s;
  overflow: hidden; }
  @media screen and (max-width: 1099px) {
    aside#course-nav {
      max-height: 0; } }
  aside#course-nav ul {
    list-style-type: none; }
  aside#course-nav div#course {
    text-align: center; }
    aside#course-nav div#course div#course-icon {
      display: none; }
    aside#course-nav div#course p#course-current {
      background-color: #f9f9f9;
      cursor: pointer;
      color: #000;
      padding: .5em 1em;
      font-weight: bold;
      font-size: 1.2em; }
      aside#course-nav div#course p#course-current svg {
        margin-right: .25em;
        margin-bottom: -.38em;
        height: 1.5em;
        width: 1.5em; }
        aside#course-nav div#course p#course-current svg #arrow-down-circle {
          display: none; }
        aside#course-nav div#course p#course-current svg #arrow-down-arrow {
          stroke: #000; }
    aside#course-nav div#course p.active svg {
      -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
      transform: rotate(180deg); }
    aside#course-nav div#course ul#course-list {
      max-height: 0;
      -webkit-transition: max-height .5s;
      -ms-transition: max-height .5s;
      -moz-transition: max-height .5s;
      -o-transition: max-height .5s;
      transition: max-height .5s;
      overflow: hidden; }
      aside#course-nav div#course ul#course-list li a {
        padding: .75em 3.1em;
        font-weight: bold;
        display: block;
        color: #222;
        background-color: #f9f9f9; }
      aside#course-nav div#course ul#course-list li:hover a {
        background-color: #f0f0f0;
        cursor: pointer;
        font-weight: bold; }
    aside#course-nav div#course ul#course-list.active {
      max-height: 20em; }
  aside#course-nav div#course.active div#course-icon svg {
    transform: scale(-1, 1); }
  aside#course-nav div#course.active p#course-current svg {
    transform: rotate(180deg); }
  aside#course-nav ul#article-list {
    border-bottom: .5em solid #fff;
    background-color: #f9f9f9;
    margin-bottom: 1em;
    list-style-type: none; }
    aside#course-nav ul#article-list li.chapter {
      background-color: #f0f0f0;
      padding: 1em 1.5em;
      font-weight: bold;
      color: #222; }
      aside#course-nav ul#article-list li.chapter svg {
        margin-right: .25em;
        margin-bottom: -.38em;
        height: 1.5em;
        width: 1.5em; }
        aside#course-nav ul#article-list li.chapter svg #arrow-down-circle {
          display: none; }
        aside#course-nav ul#article-list li.chapter svg #arrow-down-arrow {
          stroke: #000; }
    aside#course-nav ul#article-list li.article a {
      background-color: #fff;
      display: block;
      padding: .625em 1.5em;
      color: #222;
      line-height: 1.5em;
      box-sizing: border-box;
      cursor: pointer; }
    aside#course-nav ul#article-list li.article.current a, aside#course-nav ul#article-list li a:hover {
      color: #000;
      background-color: #f9f9f9; }

aside#course-nav.active {
  max-height: 80rem; }

body {
  max-width: 2000px;
  margin: auto; }

p {
  line-height: 1.5em;
  padding: .5em 0; }

h1, h2, h3, h4, h5, h6 {
  line-height: 1.375em; }

h1 {
  margin-bottom: 1.5em;
  text-align: center; }

h2 {
  margin-bottom: 1.25em;
  color: #222; }

ul {
  list-style-type: none; }

a {
  color: #0e597a; }

a:hover {
  color: #4598d8; }

a.button {
  text-align: center;
  display: block;
  margin-top: 1em; }
  a.button span {
    background-color: #52a7e9;
    color: #fff;
    padding: .75em 2em;
    font-weight: bold;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px; }
  a.button span:hover {
    background-color: #4598d8; cursor: pointer }

header#main-header a {
  background-color: #083e4c;
  padding: 0.75rem 5% 0.25rem 5%;
  border-bottom: 0rem solid #52a7e9;
  transition: all .3s;
  z-index: 2;
  display: block;
  width: 90%;
  height: 2.5rem;
  cursor: pointer;
  text-align: center; }
  header#main-header a div#main-header-icon {
    display: inline-block; }
    header#main-header a div#main-header-icon svg {
      width: 1.8rem;
      height: 1.8rem;
      margin-bottom: -.4rem;
      transform: scale(1, 1);
      transition: all .5s; }
  header#main-header a p {
    display: inline-block;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1.2rem;
    margin-left: 1rem;
    font-weight: bold; }
header#main-header a:hover {
  border-bottom: 0.5rem solid #52a7e9;
  margin-bottom: 0; }
  header#main-header a:hover div#main-header-icon svg {
    transform: scale(-1, 1); }

.full-width-row {
  color: #222;
  padding: 4rem 5%; }
  .full-width-row > * {
    max-width: 724px;
    margin: auto auto; }
  .full-width-row h1 {
    margin-bottom: 1em;
    text-align: center;
    margin-top: -1rem; }
  .full-width-row b {
    color: #4598d8; }
  .full-width-row b.paragraph-heading {
    color: #000;
    padding-right: .5em; }
  .full-width-row figure.full-width-row-images {
    text-align: center;
    padding: 1rem 0; }
    .full-width-row figure.full-width-row-images img {
      padding: 2%;
      width: 29%;
      max-width: 150px; }
  .full-width-row figure.full-width-row-images.small img {
    padding: 1%;
    width: 13%;
    max-width: 80px; }

.grey {
  background-color: #f9f9f9; }

footer#main-footer {
  text-align: center;
  clear: both;
  background-color: #083e4c;
  padding: 3rem 5%;
  border-top: 0.5rem solid #52a7e9; }
  footer#main-footer nav ul {
    list-style-type: none; }
    footer#main-footer nav ul li {
      padding: .25em 0; }
    footer#main-footer nav ul a {
      color: #e2e2e2;
      font-weight: bold; }
    footer#main-footer nav ul a:hover {
      color: #fff; }

nav#mobile-navigation-bar {
  background-color: #083e4c;
  overflow: hidden;
  border-bottom: .375em solid #fff;
  display: block; }
  nav#mobile-navigation-bar div#mobile-navigation-bar-inner {
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: .7em 1em .5em 1em;
    line-height: 1.2em; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#logo {
      display: none; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#home-icon {
      float: left;
      cursor: pointer; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#hamburger-icon {
      float: right;
      cursor: pointer; }
      nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#hamburger-icon svg #hamburger-lines {
        stroke: #52a7e9; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#hamburger-icon.active svg #hamburger-rectangle, nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#hamburger-icon:hover svg #hamburger-rectangle {
      fill: #52a7e9; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#hamburger-icon.active svg #hamburger-lines, nav#mobile-navigation-bar div#mobile-navigation-bar-inner div#hamburger-icon:hover svg #hamburger-lines {
      stroke: #083e4c; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner svg {
      height: 2em;
      width: 2em; }
    nav#mobile-navigation-bar div#mobile-navigation-bar-inner p {
      color: #fff;
      display: inline;
      text-align: center;
      line-height: 2em;
      font-size: 1.2em;
      font-weight: bold; }

#outdated-browser {
  display: none; }

.no-svg #outdated-browser {
  display: block;
  background-color: #222;
  padding: .2em 2%;
  color: #fff;
  text-align: center;
  position: fixed;
  width: 96%;
  left: 0;
  right: 0;
  bottom: 0; }
  .no-svg #outdated-browser a {
    color: #52a7e9; }

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