

 @import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans&family=Noto+Sans&display=swap');
 /*********************************************
  * GLOBAL STYLES
  *********************************************/


 body {
   background-image: linear-gradient(to bottom, #515b61, #f5f5f5 60%);
   background-color: #222; }


 .reveal {
  font-family: 'IBM Plex Sans', sans-serif;
   font-size: 33px;
   font-weight: normal;
   color: #2e2e2e; }

 ::selection {
   color: #fff;
   background: #005ec9;
   text-shadow: none; }
 
 .reveal .slides > section,
 .reveal .slides > section > section {
   line-height: 1.2;
   font-weight: inherit; }
 
 /*********************************************
  * HEADERS
  *********************************************/
 .reveal h1,
 .reveal h2,
 .reveal h3,
 .reveal h4,
 .reveal h5,
 .reveal h6 {
   margin: 0 0 20px 0;
   color: #2e2e2e;
  font-family: 'IBM Plex Sans', sans-serif;
   font-weight: 600;
   line-height: 1.2;
   letter-spacing: normal;
   text-transform: uppercase;
   text-shadow: none;
   word-wrap: break-word; }
 
 .reveal h1 {
   font-size: 2em; }
 
 .reveal h2 {
   font-size: 1.6em; }
 
 .reveal h3 {
   font-size: 1.3em; }
 
 .reveal h4 {
   font-size: 1em; }
 
 .reveal h1 {
   text-shadow: none; }

 
 /* Ensure certain elements are never larger than the slide itself */
 .reveal img,
 .reveal video,
 .reveal iframe {
   max-width: 95%;
   max-height: 95%; }
 
 .reveal strong,
 .reveal b {
   font-weight: bold; }
 
 .reveal em {
   font-style: italic; }
 
 .reveal ol,
 .reveal dl,
 .reveal ul {
   display: inline-block;
   text-align: left;
   margin: 0 0 0 1em; }
 
 .reveal ol {
   list-style-type: decimal; }
 
 .reveal ul {
   list-style-type: disc; }
 
 .reveal ul ul {
   list-style-type: square; }
 
 .reveal ul ul ul {
   list-style-type: circle; }
 
 .reveal ul ul,
 .reveal ul ol,
 .reveal ol ol,
 .reveal ol ul {
   display: block;
   margin-left: 40px; }
 
 .reveal dt {
   font-weight: bold; }
 
 .reveal dd {
   margin-left: 40px; }
 
 .reveal q,
 .reveal blockquote {
   quotes: none; }
 
 .reveal blockquote {
   display: block;
   position: relative;
   width: 70%;
   margin: 20px auto;
   padding: 5px;
   font-style: italic;
   font-family: monospace;
   background-color: #bdbdbd52; }
 
 .reveal blockquote p:first-child,
 .reveal blockquote p:last-child {
   display: inline-block; }
 
 .reveal q {
   font-style: italic; }
 
 .reveal pre {
   display: block;
   position: relative;
   width: 90%;
   margin: 20px auto;
   text-align: left;
   font-size: 0.55em;
   font-family: monospace;
   line-height: 1.2em;
   word-wrap: break-word;
 } 
 .reveal code {
   font-family: monospace; }
 
 .reveal pre code {
   display: block;
   padding: 15px 25px;
   overflow: auto;
   max-height: 400px;
   word-wrap: normal; }
 
 .reveal table {
   margin: auto;
   border-collapse: collapse;
   border-spacing: 0; }
 
 .reveal table th {
   font-weight: bold; }
 
 .reveal table th,
 .reveal table td {
   text-align: left;
   padding: 0.2em 0.5em 0.2em 0.5em;
   border-bottom: 1px solid; }
 
 .reveal table th[align="center"],
 .reveal table td[align="center"] {
   text-align: center; }
 
 .reveal table th[align="right"],
 .reveal table td[align="right"] {
   text-align: right; }
 
 .reveal table tbody tr:last-child th,
 .reveal table tbody tr:last-child td {
   border-bottom: none; }
 
 .reveal sup {
   vertical-align: super; }
 
 .reveal sub {
   vertical-align: sub; }
 
 .reveal small {
   display: inline-block;
   font-size: 0.6em;
   line-height: 1.2em;
   vertical-align: top; }
 
 .reveal small * {
   vertical-align: top; }
  
 .reveal section img {
   margin: 15px 0px;
   background: rgba(255, 255, 255, 0.12);
   border: 1px solid #484848;
   box-shadow: 0 0 15px rgba(0, 0, 0, 0.15); }
  
   .reveal .footer {
    color: #807c7c;
    position: absolute;
    bottom: 1em;
    left: 1em;
    font-size: 0.4em;
  }