@charset "UTF-8";

/**
 * White theme for reveal.js. This is the opposite of the 'black' theme.
 *
 * By Hakim El Hattab, http://hakim.se
 */

@import url(../../lib/font/source-sans-pro/source-sans-pro.css);

@font-face {
	font-family: "SunSans";
	src: url('sunlt500.woff') format("woff"), url('sunlt500.woff2') format("woff2");
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: "SunSans";
	src: url('sunlt500.woff') format("woff"), url('sunlt500.woff2') format("woff2");
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: "SunSans";
	src: url('sunlt500.woff') format("woff"), url('sunlt500.woff2') format("woff2");
	font-weight: 800;
	font-style: normal;
}

section.has-dark-background, section.has-dark-background h1, section.has-dark-background h2, section.has-dark-background h3, section.has-dark-background h4, section.has-dark-background h5, section.has-dark-background h6 {
	color: #fff;
}

/*********************************************
 * GLOBAL STYLES
 *********************************************/

body {
	background: #fff;
	background-color: #fff;
}

.reveal {
	font-family: "Source Sans Pro", Helvetica, sans-serif;
	font-size: 38px;
	font-weight: normal;
	color: #222;
}

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

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

.reveal h1, .reveal h2, .reveal h3, .reveal h4, .reveal h5, .reveal h6 {
	margin: 0 0 20px 0;
	color: #222;
	font-family: "SunSans", "Source Sans Pro", Helvetica, 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: 1.6em;
}

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

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

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

.reveal h1 {
	text-shadow: none;
}

.reveal p {
	margin: 20px 0;
	line-height: 1.3;
}

.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;
	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: 90%;
	margin: 20px auto;
	text-align: left;
	font-size: 0.55em;
	font-family: monospace;
	line-height: 1.2em;
	word-wrap: break-word;
	box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.3);
}

.reveal code {
	font-family: monospace;
}

.reveal pre code {
	display: block;
	padding: 5px;
	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 a {
	color: #2a76dd;
	text-decoration: none;
	-webkit-transition: color 0.15s ease;
	-moz-transition: color 0.15s ease;
	transition: color 0.15s ease;
}

.reveal a:hover {
	color: #6ca0e8;
	text-shadow: none;
	border: none;
}

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

.reveal section img {
	margin: 15px 0px;
	background: rgba(255, 255, 255, 0.12);
	border: 4px solid #222;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}

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

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

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

.reveal .controls .navigate-left, .reveal .controls .navigate-left.enabled {
	border-right-color: #2a76dd;
}

.reveal .controls .navigate-right, .reveal .controls .navigate-right.enabled {
	border-left-color: #2a76dd;
}

.reveal .controls .navigate-up, .reveal .controls .navigate-up.enabled {
	border-bottom-color: #2a76dd;
}

.reveal .controls .navigate-down, .reveal .controls .navigate-down.enabled {
	border-top-color: #2a76dd;
}

.reveal .controls .navigate-left.enabled:hover {
	border-right-color: #6ca0e8;
}

.reveal .controls .navigate-right.enabled:hover {
	border-left-color: #6ca0e8;
}

.reveal .controls .navigate-up.enabled:hover {
	border-bottom-color: #6ca0e8;
}

.reveal .controls .navigate-down.enabled:hover {
	border-top-color: #6ca0e8;
}

.reveal .progress {
	background: rgba(0, 0, 0, 0.2);
}

.reveal .progress span {
	background: #2a76dd;
	-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);
}

/**
 * prism.js Coy theme for JavaScript, CoffeeScript, CSS and HTML
 * Based on https://github.com/tshedor/workshop-wp-theme (Example: http://workshop.kansan.com/category/sessions/basics or http://workshop.timshedor.com/category/sessions/basics);
 * @author Tim  Shedor
 */

code[class*="language-"], pre[class*="language-"] {
	color: black;
	background: none;
	font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
	text-align: left;
	white-space: pre;
	word-spacing: normal;
	word-break: normal;
	word-wrap: normal;
	line-height: 1.5;
	-moz-tab-size: 4;
	-o-tab-size: 4;
	tab-size: 4;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

pre[class*="language-"] {
	position: relative;
	margin: 0.5em 0;
	box-shadow: -1px 0px 0px 0px #358ccb, 0px 0px 0px 1px #dfdfdf;
	border-left: 10px solid #358ccb;
	background-color: #fdfdfd;
	background-image: linear-gradient(transparent 50%, rgba(69, 142, 209, 0.04) 50%);
	background-size: 3em 3em;
	background-origin: content-box;
	overflow: visible;
	padding: 0;
}

code[class*="language"] {
	max-height: inherit;
	height: 100%;
	padding: 0 1em;
	display: block;
	overflow: auto;
}

:not(pre) > code[class*="language-"], pre[class*="language-"] {
	background-color: #fdfdfd;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 1em;
}

:not(pre) > code[class*="language-"] {
	position: relative;
	padding: 0.2em;
	border-radius: 0.3em;
	color: #c92c2c;
	border: 1px solid rgba(0, 0, 0, 0.1);
	display: inline;
	white-space: normal;
}

pre[class*="language-"]:before, pre[class*="language-"]:after {
	content: "";
	z-index: -2;
	display: block;
	position: absolute;
	bottom: 0.75em;
	left: 0.18em;
	width: 40%;
	height: 20%;
	max-height: 13em;
	box-shadow: 0px 13px 8px #979797;
	-webkit-transform: rotate(-2deg);
	-moz-transform: rotate(-2deg);
	-ms-transform: rotate(-2deg);
	-o-transform: rotate(-2deg);
	transform: rotate(-2deg);
}

:not(pre) > code[class*="language-"]:after, pre[class*="language-"]:after {
	right: 0.75em;
	left: auto;
	-webkit-transform: rotate(2deg);
	-moz-transform: rotate(2deg);
	-ms-transform: rotate(2deg);
	-o-transform: rotate(2deg);
	transform: rotate(2deg);
}

.token.comment, .token.block-comment, .token.prolog, .token.doctype, .token.cdata {
	color: #7D8B99;
}

.token.punctuation {
	color: #5F6364;
}

.token.property, .token.tag, .token.boolean, .token.number, .token.function-name, .token.constant, .token.symbol, .token.deleted {
	color: #c92c2c;
}

.token.selector, .token.attr-name, .token.string, .token.char, .token.function, .token.builtin, .token.inserted {
	color: #2f9c0a;
}

.token.operator, .token.entity, .token.url, .token.variable {
	color: #a67f59;
	background: rgba(255, 255, 255, 0.5);
}

.token.atrule, .token.attr-value, .token.keyword, .token.class-name {
	color: #1990b8;
}

.token.regex, .token.important {
	color: #e90;
}

.language-css .token.string, .style .token.string {
	color: #a67f59;
	background: rgba(255, 255, 255, 0.5);
}

.token.important {
	font-weight: normal;
}

.token.bold {
	font-weight: bold;
}

.token.italic {
	font-style: italic;
}

.token.entity {
	cursor: help;
}

.namespace {
	opacity: 0.7;
}

@media screen and (max-width: 767px) {
	pre[class*="language-"]:before, pre[class*="language-"]:after {
		bottom: 14px;
		box-shadow: none;
	}
}

.token.tab:not(:empty):before, .token.cr:before, .token.lf:before {
	color: #e0d7d1;
}

pre[class*="language-"].line-numbers {
	padding-left: 0;
}

pre[class*="language-"].line-numbers code {
	padding-left: 3.8em;
}

pre[class*="language-"].line-numbers .line-numbers-rows {
	left: 0;
}

pre[class*="language-"][data-line] {
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 0;
}

pre[data-line] code {
	position: relative;
	padding-left: 4em;
}

pre .line-highlight {
	margin-top: 0;
}

pre[data-line] {
	position: relative;
	padding: 1em 0 1em 3em;
}

.line-highlight {
	position: absolute;
	left: 0;
	right: 0;
	padding: inherit 0;
	margin-top: 1em;
	background: rgba(153, 122, 102, 0.08);
	background: linear-gradient(to right, rgba(153, 122, 102, 0.1) 70%, rgba(153, 122, 102, 0));
	pointer-events: none;
	line-height: inherit;
	white-space: pre;
}

.line-highlight:before, .line-highlight[data-end]:after {
	content: attr(data-start);
	position: absolute;
	top: 0.4em;
	left: 0.6em;
	min-width: 1em;
	padding: 0 0.5em;
	background-color: rgba(153, 122, 102, 0.4);
	color: #f5f2f0;
	font: bold 65%/1.5 sans-serif;
	text-align: center;
	vertical-align: 0.3em;
	border-radius: 999px;
	text-shadow: none;
	box-shadow: 0 1px white;
}

.line-highlight[data-end]:after {
	content: attr(data-end);
	top: auto;
	bottom: 0.4em;
}

.reveal pre {
	box-shadow: none;
	width: 100%;
}

.reveal .slides section.to-top {
	top: 0 !important;
}

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

.line-through {
	text-decoration: line-through;
	text-line-through-color: red;
}

.reveal code {
	font-family: "Fira Code", Menlo, Consolas, monospace;
}

.line-highlight {
	background: linear-gradient(to right, rgba(243, 246, 49, 0.35) 70%, rgba(243, 246, 49, 0.65));
}

pre[class*="language-"] {
	border-left: 2px solid #358ccb;
}

.reveal p.tableblock {
	margin: 0;
}

td.halign-right p {
	text-align: right;
}

.reveal th.halign-right {
	text-align: right;
}

.reveal pre code {
	max-height: 500px;
}

.highlighted {
	color: white;
	background-color: rgba(100, 100, 100, 0.75);
	text-align: left;
	max-width: 50%;
	margin-left: -10%;
}

#slide-lance-armstrong table td {
	text-align: left;
	padding: 0 0.5em 0 0.5em;
	border-bottom: 0;
	border-left: 3px solid rgba(100, 100, 100, 0.75);
	font-size: 0.8em;
}

#slide-lance-armstrong table table td {
	text-align: left;
	padding: 0 0.5em 0 0.5em;
	border: 0;
}

#slide-bad-example-2 table td {
	text-align: left;
	padding: 0 0.5em 0 0.5em;
	border-bottom: 0;
	border-left: 3px solid rgba(100, 100, 100, 0.75);
	font-size: 0.8em;
}

#slide-bad-example-2 table table td {
	text-align: left;
	padding: 0 0.5em 0 0.5em;
	border: 0;
}

#slide-lance-armstrong table table td p, #slide-lance-armstrong table table td img {
	margin: 0;
}

#slide-computing-snapshots table {
	margin-top: 10%;
}

#slide-computing-snapshots table td {
	border-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
}

iframe.twitter-tweet {
	transform: scale(2) translateY(30%) !important;
	display: inline !important;
}

twitterwidget {
	display: inline !important;
	zoom: 200%;
}

@-webkit-keyframes zoom {
		from {
		-webkit-transform: scale(0.75, 0.75);
	}
		to {
		-webkit-transform: scale(1, 1);
	}
	}

@keyframes zoom {
		from {
		transform: scale(0.75, 0.75);
	}
		to {
		transform: scale(1, 1);
	}
	}

#slide-about-you img {
	-webkit-animation: zoom 50s;
	animation: zoom 50s;
}

#slide-thank-you table td, #slide-thank-you table th {
	border-bottom: 0 !important;
}

.attribution {
	position: fixed;
	bottom: 3em;
	right: 2em;
	max-width: 100%;
}

.attribution p {
	font-size: 0.4em;
	text-align: center;
}

section[data-background-image] {
	height: 300px;
}

section[data-background-image] .attribution {
	bottom: -5em;
}

.highlighted a {
	color: white;
	font-weight: bold;
	font-style: italic;
}

#otherTalks {
	margin-top: 100px;
}

#otherTalks td {
	font-size: 0.7em;
}

.bottom {
	margin-top: 15% !important;
}

#slide-lance-one .highlighted {
	margin-top: 30%;
}

#slide-goldilocks .attribution {
	bottom: 0em !important;
}

.slide-background.title {
	background: bottom url('u19-bg-01.jpg');
	background-size: cover;
}

.title h1, .author small {
	color: white;
}

.footer {
	position: fixed;
	bottom: 0;
	left: 1em;
	color: white;
}

.footer p {
	font-family: "SunSans", "Source Sans Pro", Helvetica, sans-serif;
}

section[data-background-image="./images/redbg.jpg"], section[data-background-image="./images/redbg.jpg"] h1, section[data-background-image="./images/redbg.jpg"] h2, section[data-background-image="./images/redbg.jpg"] h3, section[data-background-image="./images/redbg.jpg"] h4, section[data-background-image="./images/redbg.jpg"] h5, section[data-background-image="./images/redbg.jpg"] h6 {
	color: #fff;
}

section#slide-bad-example-1 {
	top: 0 !important;
}

#night {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	cursor: none;
	z-index: 1000;
	pointer-events: none;
}