/**
 * Solarized Light theme for reveal.js.
 * Author: Achim Staebler
 */
@import url(../../lib/font/league-gothic/league-gothic.css);
@import url(https://fonts.googleapis.com/css?family=Quicksand:400,600);
@import url(https://fonts.googleapis.com/css?family=Lato:400,600);
@import url(https://fonts.googleapis.com/css?family=Overpass+Mono:600);
/**
 * Solarized colors by Ethan Schoonover
 */
html * {
  color-profile: sRGB;
  rendering-intent: auto; }

/*********************************************
 * GLOBAL STYLES
 *********************************************/
body {
  background: #fff8da;
  background-color: #fff8da; }

.reveal {
  font-family: "Lato", sans-serif;
  font-size: 50px;
  font-weight: normal;
  color: #000000; }

::selection {
  color: #fff;
  background: #d33682;
  text-shadow: none; }

::-moz-selection {
  color: #fff;
  background: #d33682;
  text-shadow: none; }

.reveal .slides section,
.reveal .slides section > section {
  line-height: 1.3;
  font-weight: inherit; }

/*********************************************
 * HEADERS
 *********************************************/
.reveal h1,
.reveal h2,
.reveal h3,
.reveal h4,
.reveal h5,
.reveal h6 {
  margin: 0 0 2px 0;
  color: #252525;
  font-family: "Quicksand", sans-serif;
  font-weight: 600;
  line-height: 0.9;
  letter-spacing: normal;
  text-transform: uppercase;
  text-shadow: none;
  word-wrap: break-word; }

.reveal h1 {
  font-size: 3.77em; }

.reveal h2 {
  font-size: 1.8em; }

.reveal h3 {
  font-size: 1.55em; }

.reveal h4 {
  font-size: 1em; }

/*********************************************
 * OTHER
 *********************************************/
.reveal p {
  margin: 2px 0;
  line-height: 1.3; }

/* 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 blockquote {
  display: block;
  position: relative;
  width: 70%;
  margin: 2px auto;
  padding: 5px;
  font-style: italic;
  background: rgba(255, 255, 255, 0.05);
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2); }

.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: 100%;
  max-height: 95%;
  background-color: #252525;
  text-align: left;
  font-size: 0.8em;
  font-family: monospace;
  line-height: 1.2em;
  word-wrap: break-word;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.15); }

.reveal code {
  font-family: monospace;
  text-transform: none; }

.reveal pre code {
  display: block;
  padding: 5px;
  overflow: hidden;
  max-height: 95%;
  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;
  font-size: smaller; }

.reveal sub {
  vertical-align: sub;
  font-size: smaller; }

.reveal small {
  display: inline-block;
  font-size: 0.6em;
  line-height: 1.2em;
  vertical-align: top; }

.reveal small * {
  vertical-align: top; }

/*********************************************
 * LINKS
 *********************************************/
.reveal a {
  color: #268bd2;
  text-decoration: none;
  -webkit-transition: color .15s ease;
  -moz-transition: color .15s ease;
  transition: color .15s ease; }

.reveal a:hover {
  color: #78b9e6;
  text-shadow: none;
  border: none; }

.reveal .roll span:after {
  color: #fff;
  background: #1a6091; }

/*********************************************
 * IMAGES
 *********************************************/
.reveal section img {
  margin: 15px 0px; }

.reveal section img.plain {
  border: 0;
  box-shadow: none; }

.reveal a img {
  -webkit-transition: all .15s linear;
  -moz-transition: all .15s linear;
  transition: all .15s linear; }

.reveal a:hover img {
  background: rgba(255, 255, 255, 0.2);
  border-color: #268bd2;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.55); }

/*********************************************
 * NAVIGATION CONTROLS
 *********************************************/
.reveal .controls {
  color: #268bd2; }

/*********************************************
 * PROGRESS BAR
 *********************************************/
.reveal .progress {
  background: rgba(0, 0, 0, 0.2);
  color: #268bd2; }

.reveal .progress span {
  -webkit-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
  -moz-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
  transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985); }

/*********************************************
 * PRINT BACKGROUND
 *********************************************/
@media print {
  .backgrounds {
    background-color: #fff8da; } }

/*********************************************
 * SPAN OVERRIDE
 *********************************************/
.reveal span.larger-text {
  font-size: 80px !important; }

.annotation {
  position: absolute;
  bottom: 2px;
  color: #252525;
  font-size: .85em;
  width: 100%;
  font-family: 'Overpass Mono', sans-serif; }

.topic-annotation {
  position: absolute;
  top: 2px;
  color: #252525;
  font-size: .95em;
  font-weight: 600;
  width: 100%; }

h1.title:nth-child(2) {
  font-size: 2.35em !important;
  font-weight: 100 !important; }

.conference {
  margin-top: 35px !important;
  padding-left: 5px; }

#title-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%; }

.delightful-title {
  animation: text-shadow 1.5s ease-in-out infinite;
  line-height: 1;
  margin-bottom: 80px !important;
  font-size: 4em !important;
  font-family: 'Lato', sans-serif;
  color: #ffffff !important; }

.delightful-bounce {
  animation: text-shadow 1.5s ease-in-out infinite; }

#job-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  margin-top: 30px;
  font-family: 'Quicksand', sans-serif;
  font-size: .85em;
  width: 100%; }

.mango-highlight {
  color: #ffcb2e; }

.white-highlight {
  color: #ffffff; }

@keyframes text-shadow {
  0% {
    transform: translateY(0);
    text-shadow: 0 0 0 #ffa62e, 
 0 0 0 #ffcb2e, 
 0 0 0 #ffec2e, 
 0 0 0 #fefc4b; }
  20% {
    transform: translateY(-1em);
    text-shadow: 0 0.125em 0 #ffa62e, 
 0 0.25em 0 #ffcb2e, 
 0 -0.125em 0 #ffec2e, 
 0 -0.25em 0 #fefc4b; }
  40% {
    transform: translateY(0.5em);
    text-shadow: 0 -0.0625em 0 #ffa62e, 
 0 -0.125em 0 #ffcb2e, 
 0 0.0625em 0 #ffec2e, 
 0 0.125em 0 #fefc4b; }
  60% {
    transform: translateY(-0.25em);
    text-shadow: 0 0.03125em 0 #ffa62e, 
 0 0.0625em 0 #ffcb2e, 
 0 -0.03125em 0 #ffec2e, 
 0 -0.0625em 0 #fefc4b; }
  80% {
    transform: translateY(0);
    text-shadow: 0 0 0 #ffa62e, 
 0 0 0 #ffcb2e, 
 0 0 0 #ffec2e, 
 0 0 0 #fefc4b; } }

@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important; } }

.simple-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%; }

.centered {
  justify-content: center; }

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

.function-type-title {
  margin-bottom: 80px !important; }

.gif-sneak-peek {
  border: 10px solid #252525;
  background-size: cover;
  flex-basis: 25%;
  padding: 30px;
  font-weight: 600 !important; }

.new-gif-sneak-peek {
  border: 10px solid #ffffff;
  color: #ffffff;
  font-weight: 600 !important; }

.white-background {
  background-color: #ffffff; }

.func-type-summary .client-func-gif,
.func-type-summary .orchestrator-func-gif,
.func-type-summary .activity-func-gif {
  color: #ffffff !important; }

.orchestrator-func-gif {
  background-image: url("../../assets/conductor.gif");
  background-size: cover; }

.lumpia-process-gif {
  background-image: url("../../assets/lumpia-process.webp");
  background-size: cover;
  background-position: center; }

.lumpia-process-gif-contain {
  background-image: url("../../assets/lumpia-process.webp");
  background-size: contain; }

.waiting-gif {
  background-image: url("../../assets/waiting.webp");
  background-size: cover;
  background-position: center; }

.monitor-pattern-gif {
  background-image: url("../../assets/monitor-pattern.gif");
  background-size: cover;
  background-position: center; }

.push-button-gif {
  background-image: url("../../assets/push-button.gif");
  background-size: cover;
  background-position: center; }

.aggregator-gif {
  background-image: url("../../assets/data-flow.gif");
  background-size: cover;
  background-position: center; }
