slide.img-top-center img {
    display: block;
    margin-left: auto;
    margin-right: auto
}

slide .center {
    display: block;
    margin-left: auto;
    margin-right: auto
}

em, i  {
  font-style: italic;
}

strong {
  font-weight: bold;
}

.two-images img{
    max-width: 49%;
}

.three-images img{
    max-width: 32%;
}

span.codesnippet, code {
    font-family: 'Source Code Pro', 'Courier New', monospace;
    font-size: 90%;
    background-color: #f1f3f3;
    color: #e83278;
    margin: 6px 0px;
    border-radius: 4px;
    padding: 0px 4px;
}

a  {
    color: #1a8dad !important;
    border-bottom: 0px solid rgba(42, 124, 223, 0.5) !important;
}

a:hover {
    color: #1a8dad !important;
    border-bottom: 1px solid #1a8dad !important;
}


slides footer.source {
 font-size: 14pt;
 position: absolute;
    position: absolute;
    bottom: 80px;
    left: 60px;
    line-height: 1.9;
    width: 80%;
}


slides footer.source::before {
    content: 'Source';
    font-weight: bold;
}

pre {
    background-color: #f2f2f2;
    width: 115%;
    left: -60px;
    box-shadow: 0px 2px 11px #bbb;
    max-height: 480px;
    overflow: scroll;
}

pre b {
    font-weight: normal;
}

pre > code {
    background-color: initial;
    color: initial;
    white-space: pre-wrap;       /* css-3 */
     white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */
     white-space: -pre-wrap;      /* Opera 4-6 */
     white-space: -o-pre-wrap;    /* Opera 7 */
     word-wrap: break-word;       /* Internet Explorer 5.5+ */
}

slide.title-slide {
    background-color: #425052 !important;
}

body {
     font-family: Acumin Pro !important;
}

slides > slide {
   font-family: Acumin Pro !important;
   transition: all 0.4s !important;
}

slide:not(.segue) {
    background-image: url(../../figures/wasp_bg.svg);
    background-repeat: repeat-x;
    background-position-y: 100%;
    background-size: 10% 10%;
}



slide::after {
    bottom: -21px !important;
    left: 0px !important;
    padding-left: 40px;
    background-image: url(../../figures/wasp_white.svg);
    background-size: 300px;
    background-repeat: no-repeat;
    background-position-y: 0%;
    background-position-x: 90%;
    width: 100%;
    height: 10%;
}

slides > slide.dark {
    background: #425052 !important;
}

.segue, slides > slide.dark {
    background-color: #425052 !important;
    background-image: url(../../figures/wasp_white.svg) !important;
    background-size: 350px !important;
    background-repeat: no-repeat !important;
    background-position-y: 90% !important;
    background-position-x: 40px !important;
}

.logoslide {
    background-color: #425052 !important;
    background-image: none !important;
}

h1 {
    font-family: Industry;
    text-transform: uppercase;
    line-height: 1 !important;
}

h2 {
    font-family: Industry;
    line-height: 1 !important;
    color: #425052;
}

h3 {
    line-height: 1 !important;
}

.title-slide hgroup h1 {
    font-size: 55px;
    line-height: 1;
    color: white;
}

.title-slide hgroup h2 {
    color: #b3bebd;
}

.title-slide hgroup p {
    font-size: 28px;
    color: #b3bebd;
    line-height: 1.3;
    margin-top: 2em;
}


img {
    max-width: 100%;
    max-height: 500px;
}

article.acks img {

    max-height: 100px;
    padding: 20px;
    /* max-width: 25%; */
    position: relative;
    top: 100px;
}

article.floaty img {
    float: left;
    max-width: 49%;
}

.title-slide hgroup {
    bottom: 200px;
}

.segue {
    padding: 60px 40px !important;
}

pre {
    font-size: 16px;
    line-height: 16px;
}

.columns-2 img {
    max-height: 470px;
}

article {
    max-height: 480px;
}

slides > slide > hgroup + article {
    margin-top: 25px;
}

.thank-you-slide > p {
    position: absolute;
    right: 80px;
    font-size: 24pt;
    line-height: 1;
    bottom: 55px;
}

pre[data-lang]:after {
    -webkit-border-top-right-radius: 0px;
    -moz-border-radius-topright: 0px;
    border-top-right-radius: 0px;
    -webkit-border-bottom-left-radius: 8px;
    -moz-border-radius-bottomleft: 8px;
    border-bottom-left-radius: 8px;
    background-color: #f1f3f3;
    color: #53504F;
    font-size: 90%;
    font-family: Industry;
}


.checklist input {
    zoom: 2;
}

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

table {
  /*width: 100%;*/
  border-left: none;
  border-right: none;
  border-collapse: collapse;
  text-align: left;
  margin-bottom: 24px;
  background: #f2f2f2;
  color: #445052;
  font-family: 'Source Code Pro', 'Courier New', monospace;
}

table th {
  border-bottom: 1px solid #767676;
  font-weight: 700;
}
table td {
  opacity: 1;
}
table thead {
  font-weight: 700;
}
table tr:last-child td, table tr:last-child th{
  border-bottom: 1px solid #528CA6;
}
table tr:not(:last-child) td {
  border-bottom: 1px solid #528CA6;
}
table tr.selected td {
  background-color: #528CA6;
}

table tr th,
table tr td {
/*  padding: 16px;*/
  text-align: left;
  font-size: 12px !important;
  padding: 0.5em 0.2em;
  white-space: nowrap;
}

table:not(.dashed) tbody > tr:hover td {
  background: rgba(40, 160, 255, 0.1);
}

article.columns-2 pre {
    border-radius: 0px 20px 20px 0px;
}

slides footer.source > ul {
  list-style: decimal-leading-zero;
}

ul > li:before {
    content: '';
    margin-left: inherit;
    position: relative;
    font-weight: 600;
}

code.output:after {
    content: "output";
    /*background-color: #eee;*/
    right: 20px;
    top: 0px;
    height: 20px;
    position: absolute;
    /*font-size: 16pt;*/
    /*color: white;*/
    padding: 0px 40px;
    /*text-transform: uppercase;*/
    /*border-bottom-right-radius: 5px;*/
    /*box-shadow: 0px 2px 11px #bbb;*/
}

ol, ul {
    list-style: initial;
}

ul li {
    margin-bottom: 0.2em;
    line-height: 1;
}


.logoslide .logo {
    position: relative;
    /* min-height: 100%; */
    /* min-width: 383px; */
    height: 100%;
    width: 100%;
    top: 15%;
}

.logoslide svg {
    position: absolute;
    width: 100%;
    height: 100%;
  }

.logoslide > article {
    width: 100%;
}

path#W {
  -webkit-animation-duration: 2s;
  -webkit-animation-delay: 1s;
  -webkit-animation-iteration-count: 1;
}

path#A {
  -webkit-animation-duration: 2s;
  -webkit-animation-delay: 1.5s;
  -webkit-animation-iteration-count: 1;
}

path#S {
  -webkit-animation-duration: 2s;
  -webkit-animation-delay: 1.5s;
  -webkit-animation-iteration-count: 1;
}

path#P {
  -webkit-animation-duration: 2s;
  -webkit-animation-delay: 1.5s;
  -webkit-animation-iteration-count: 1;
}

@keyframes mymove {
    from {
        y: -1000;
        opacity: 0;}
    to {y: 0.9;
        opacity: 1;}
}

@keyframes myblur {
    from {
        filter: blur(4px);
    }
    to {
        filter: blur(0px);
    }
}

rect#vert {
  opacity: 0;
  -webkit-animation: mymove 3s;
  -webkit-animation-delay: 2s;
  -webkit-animation-duration: 3s;
  -webkit-animation-iteration-count: 1;
  animation-fill-mode: forwards
}

g#textgroup {
  -webkit-animation-duration: 2s;
  -webkit-animation-delay: 2s;
  -webkit-animation-iteration-count: 1;
}

iframe {
  max-height: 400px;
  border: 2px solid #3F8DA9;
  box-shadow: 0px 2px 11px #bbb;
}

span.result {
    font-size: 7em;
    color: red;
    font-family: Industry;
}

.tablescroll {
    overflow-x: overlay;
}

slide.fullwidth img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

slide.fullwidth pre {
  position: relative;
  top: 380px;
}

slide.cfrot {
  background: #0A0A0A;
}

.rules {
    font-size: .35em;
    bottom: 120px;
    position: absolute;
    width: 50%;
}
