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

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 {
  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 {
  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;
}

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;
}
button, [type='button'], [type='reset'], [type='submit'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #0024b3;
  border: 0;
  border-radius: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Avenir Next", "Avenir", "Segoe UI", "Lucida Grande", "Helvetica Neue", "Helvetica", "Fira Sans", "Roboto", "Noto", "Droid Sans", "Cantarell", "Oxygen", "Ubuntu", "Franklin Gothic Medium", "Century Gothic", "Liberation Sans", sans-serif;
  font-size: 1em;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1;
  padding: 0.75em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transition: background-color 150ms ease;
  transition: background-color 150ms ease;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}

button:hover, button:focus, [type='button']:hover, [type='button']:focus, [type='reset']:hover, [type='reset']:focus, [type='submit']:hover, [type='submit']:focus {
  background-color: white;
  color: #0024b3;
}

.btn_wrap {
  display: table;
  margin: 3em auto;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .btn_wrap {
    margin: 7em auto;
  }
}

@media only screen and (min-width: 1440px) {
  .btn_wrap {
    margin: 10em auto;
  }
}

.btn_wrap a.btn {
  background-color: #0024b3;
  box-shadow: 0.75em 0.75em rgba(0, 18, 89, 0.5);
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-weight: 600;
  line-height: 1.5;
  margin: 0 1.5em 1.5em;
  padding: 1.5em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transition: background-color 150ms ease, color 150ms ease;
  transition: background-color 150ms ease, color 150ms ease;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: normal;
}

@media only screen and (min-width: 768px) {
  .btn_wrap a.btn {
    padding: 1.875em 2.625em;
    min-width: 12em;
  }
}

.btn_wrap a.btn:hover, .btn_wrap a.btn:focus {
  background-color: white;
  color: #0024b3;
  text-decoration: none;
}

.btn_wrap a.btn span {
  display: inline-block;
}

@media only screen and (min-width: 768px) {
  .btn_wrap a.btn span:before {
    content: ' | ';
    padding: 0 .25em;
  }
}

fieldset {
  background-color: transparent;
  border: 0;
  margin: 0;
  padding: 0;
}

legend {
  font-weight: 600;
  margin-bottom: 0.375em;
  padding: 0;
}

label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.375em;
}

input,
select,
textarea {
  display: block;
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Avenir Next", "Avenir", "Segoe UI", "Lucida Grande", "Helvetica Neue", "Helvetica", "Fira Sans", "Roboto", "Noto", "Droid Sans", "Cantarell", "Oxygen", "Ubuntu", "Franklin Gothic Medium", "Century Gothic", "Liberation Sans", sans-serif;
  font-size: 1em;
}

[type='color'], [type='date'], [type='datetime'], [type='datetime-local'], [type='email'], [type='month'], [type='number'], [type='password'], [type='search'], [type='tel'], [type='text'], [type='time'], [type='url'], [type='week'], input:not([type]), textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #0024b3;
  border-radius: 0;
  box-sizing: border-box;
  margin-bottom: 0.75em;
  padding: 0.5em;
  -webkit-transition: border-color 150ms ease;
  transition: border-color 150ms ease;
  width: 100%;
}

[type='color']:hover, [type='date']:hover, [type='datetime']:hover, [type='datetime-local']:hover, [type='email']:hover, [type='month']:hover, [type='number']:hover, [type='password']:hover, [type='search']:hover, [type='tel']:hover, [type='text']:hover, [type='time']:hover, [type='url']:hover, [type='week']:hover, input:not([type]):hover, textarea:hover {
  border-color: #8091d9;
}

[type='color']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='email']:focus, [type='month']:focus, [type='number']:focus, [type='password']:focus, [type='search']:focus, [type='tel']:focus, [type='text']:focus, [type='time']:focus, [type='url']:focus, [type='week']:focus, input:not([type]):focus, textarea:focus {
  border-color: #0024b3;
  outline: none;
}

[type='color']::-webkit-input-placeholder, [type='date']::-webkit-input-placeholder, [type='datetime']::-webkit-input-placeholder, [type='datetime-local']::-webkit-input-placeholder, [type='email']::-webkit-input-placeholder, [type='month']::-webkit-input-placeholder, [type='number']::-webkit-input-placeholder, [type='password']::-webkit-input-placeholder, [type='search']::-webkit-input-placeholder, [type='tel']::-webkit-input-placeholder, [type='text']::-webkit-input-placeholder, [type='time']::-webkit-input-placeholder, [type='url']::-webkit-input-placeholder, [type='week']::-webkit-input-placeholder, input:not([type])::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #667bd1;
}

[type='color']:-ms-input-placeholder, [type='date']:-ms-input-placeholder, [type='datetime']:-ms-input-placeholder, [type='datetime-local']:-ms-input-placeholder, [type='email']:-ms-input-placeholder, [type='month']:-ms-input-placeholder, [type='number']:-ms-input-placeholder, [type='password']:-ms-input-placeholder, [type='search']:-ms-input-placeholder, [type='tel']:-ms-input-placeholder, [type='text']:-ms-input-placeholder, [type='time']:-ms-input-placeholder, [type='url']:-ms-input-placeholder, [type='week']:-ms-input-placeholder, input:not([type]):-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #667bd1;
}

[type='color']::placeholder, [type='date']::placeholder, [type='datetime']::placeholder, [type='datetime-local']::placeholder, [type='email']::placeholder, [type='month']::placeholder, [type='number']::placeholder, [type='password']::placeholder, [type='search']::placeholder, [type='tel']::placeholder, [type='text']::placeholder, [type='time']::placeholder, [type='url']::placeholder, [type='week']::placeholder, input:not([type])::placeholder, textarea::placeholder {
  color: #667bd1;
}

textarea {
  resize: vertical;
}

[type=checkbox], [type=radio] {
  display: inline;
  margin-right: 0.375em;
}

[type="file"] {
  margin-bottom: 0.75em;
  width: 100%;
}

select {
  margin-bottom: 0.75em;
  width: 100%;
}

ul,
ol {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.entry-content ul,
.entry-content ol,
.row ul,
.row ol {
  margin: 1.5em 0 1.5em 1.5em;
  padding: 0;
}

.entry-content ul,
.row ul {
  list-style: disc;
}

.entry-content ol,
.row ol {
  list-style: decimal;
}

.entry-content li > ul,
.entry-content li > ol,
.row li > ul,
.row li > ol {
  margin-top: 0;
  margin-bottom: 0;
}

dl {
  margin: 0;
}

dt {
  font-weight: 600;
  margin: 0;
}

dd {
  margin: 0;
}

figure {
  margin: 0;
}

img,
picture {
  margin: 0;
  max-width: 100%;
}

table {
  border-collapse: collapse;
  margin: 0.75em 0;
  table-layout: fixed;
  width: 100%;
}

th {
  border-bottom: 1px solid #bfbfbf;
  font-weight: 600;
  padding: 0.75em 0;
  text-align: left;
}

td {
  border-bottom: 1px solid white;
  padding: 0.75em 0;
}

tr,
td,
th {
  vertical-align: middle;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
@font-face {
  font-family: 'Poppins';
  src: url("../fonts/Poppins-Regular.woff") format("woff"), url("../fonts/Poppins-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Poppins';
  src: url("../fonts/Poppins.woff") format("woff"), url("../fonts/Poppins.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Source Code Pro';
  src: url("../fonts/SourceCodePro-Regular.woff") format("woff"), url("../fonts/SourceCodePro-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Source Code Pro';
  src: url("../fonts/SourceCodePro-Semibold.woff") format("woff"), url("../fonts/SourceCodePro-Semibold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}

body {
  color: #0024b3;
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Avenir Next", "Avenir", "Segoe UI", "Lucida Grande", "Helvetica Neue", "Helvetica", "Fira Sans", "Roboto", "Noto", "Droid Sans", "Cantarell", "Oxygen", "Ubuntu", "Franklin Gothic Medium", "Century Gothic", "Liberation Sans", sans-serif;
  font-size: 1em;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Avenir Next", "Avenir", "Segoe UI", "Lucida Grande", "Helvetica Neue", "Helvetica", "Fira Sans", "Roboto", "Noto", "Droid Sans", "Cantarell", "Oxygen", "Ubuntu", "Franklin Gothic Medium", "Century Gothic", "Liberation Sans", sans-serif;
  line-height: 1.2;
  margin: 0 0 0.375em;
}

h2 {
  font-size: 2em;
  letter-spacing: -0.046875em;
}

@media only screen and (min-width: 768px) {
  h2 {
    font-size: 3em;
  }
}

@media only screen and (min-width: 1024px) {
  h2 {
    font-size: 3.75em;
  }
}

@media only screen and (min-width: 1280px) {
  h2 {
    font-size: 4.5em;
  }
}

h3 {
  font-size: 3em;
  letter-spacing: -0.0625em;
}

@media only screen and (min-width: 768px) {
  h3 {
    font-size: 5em;
  }
}

@media only screen and (min-width: 1024px) {
  h3 {
    font-size: 4.5em;
  }
}

h4 {
  font-weight: normal;
  font-size: 1.5em;
  text-transform: uppercase;
  letter-spacing: -0.0625em;
}

p, ul {
  margin: 0 0 1.5em;
  line-height: 1.75em;
  font-size: .875em;
}

@media only screen and (min-width: 768px) {
  p, ul {
    font-size: inherit;
  }
}

blockquote {
  font-size: 1.875em;
  font-style: italic;
  font-family: "Times New Roman", "Times", "Georgia", "Cambria", serif;
  margin: 0 auto 1.5em;
  line-height: 1.25em;
  text-align: center;
}

a {
  color: #0024b3;
  text-decoration: underline;
  -webkit-transition: color 150ms ease;
  transition: color 150ms ease;
}

a:active, a:focus, a:hover {
  text-decoration: none;
}

hr {
  border-bottom: 2px solid #0024b3;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0;
  width: 33%;
}

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

:focus {
  outline: rgba(255, 43, 93, 0.5) dotted 1px;
}

.visuallyhidden, #masthead h1 {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.social li {
  float: left;
  margin-right: .5em;
}

.social li .icon {
  width: 1em;
  height: 1em;
}

/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  overflow-x: hidden;
}

body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

.wrapper, .page_speaker .speaker-content, .page_about #organisation, .page-code_conduct #code_conduct, .page-venue #venue article {
  max-width: 95em;
  margin: 0 auto;
}

.padding, body main, .page_speaker .speaker-content {
  padding-left: 1.5em;
  padding-right: 1.5em;
}

@media only screen and (min-width: 1024px) {
  .padding, body main, .page_speaker .speaker-content {
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
}

body {
  background-image: url("../img/bg_pattern_white.png");
  background-position: center top;
  background-repeat: repeat;
}

body main {
  padding-top: 8em;
  margin-left: -3.75rem;
  margin-right: -3.75rem;
  width: calc(100% + 7.5rem);
}

body main::after {
  clear: both;
  content: "";
  display: block;
}

@media only screen and (min-width: 768px) {
  body main {
    padding-top: 12.5em;
  }
}

@media only screen and (min-width: 1024px) {
  body main {
    padding-top: 14em;
  }
}

@media only screen and (min-width: 1280px) {
  body main {
    padding-top: 16em;
  }
}

body main > article {
  text-align: center;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 1280px) {
  body main > article {
    width: calc(75% - 6.5625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1440px) {
  body main > article {
    width: calc(66.6666666667% - 6.25rem);
    float: left;
    margin-left: 3.75rem;
  }
}

body main > article .entry-content {
  margin-bottom: 3em;
}

@media only screen and (min-width: 768px) {
  body main > article .entry-content {
    text-align: left;
    margin-bottom: 5em;
  }
}

@media only screen and (min-width: 1024px) {
  body main > article .entry-content {
    margin-bottom: 7em;
  }
}

@media only screen and (min-width: 1280px) {
  body main > article .entry-content {
    margin-bottom: 10em;
  }
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
#masthead {
  height: 8em;
  background: -webkit-linear-gradient(top, white 0%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to bottom, white 0%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );
  position: fixed;
  width: 100%;
  z-index: 4;
}

#masthead #site-branding {
  position: absolute;
  left: 1.5em;
  top: 15px;
  z-index: 1;
}

@media only screen and (min-width: 1024px) {
  #masthead #site-branding {
    left: 3.75em;
    top: 20px;
  }
}

#masthead #site-branding svg {
  color: #ff2b5d;
  display: block;
  height: 50px;
  -webkit-transition: color 150ms;
  transition: color 150ms;
  width: 140px;
}

#masthead #site-branding svg:hover, #masthead #site-branding svg:active {
  color: #0024b3;
}

.home #masthead #site-branding svg:hover, .home #masthead #site-branding svg:active {
  color: white;
}

@media only screen and (max-width: 1024px) {
  #masthead.toggled {
    position: fixed;
    height: 100%;
    /* Logo white when mobile menu is open */
  }
  #masthead.toggled #site-branding svg {
    color: white;
  }
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
@media only screen and (min-width: 1024px) {
  #site-navigation {
    position: absolute;
    top: 0;
    right: 0;
  }
}

@media only screen and (max-width: 1024px) {
  .toggled #site-navigation {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    background-color: #ff2b5d;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

#site-navigation ul {
  display: none;
  margin-bottom: 2em;
  background-color: #ff2b5d;
}

@media only screen and (min-width: 1024px) {
  #site-navigation ul {
    background-color: inherit;
  }
}

#site-navigation ul li {
  text-align: center;
}

@media only screen and (min-width: 1024px) {
  #site-navigation ul li {
    float: left;
    text-align: inherit;
  }
}

#site-navigation ul li a {
  color: white;
  display: block;
  font-weight: bold;
  font-size: 1.5em;
  line-height: 2.5em;
  letter-spacing: -1px;
  padding: 0 1.25em;
  text-transform: uppercase;
  text-decoration: none;
  margin: .25em 1.5em;
}

@media only screen and (min-width: 1024px) {
  #site-navigation ul li a {
    color: #ff2b5d;
    font-size: 1em;
    margin: 0;
    line-height: 4.7em;
  }
}

#site-navigation ul li a:hover, #site-navigation ul li a:active {
  color: #0024b3;
  text-decoration: none;
}

.home #site-navigation ul li a:hover, .home #site-navigation ul li a:active {
  color: white;
}

#site-navigation ul li a.alt {
  color: white;
  padding: 0 4em;
  -webkit-transition: background-color 150ms;
  transition: background-color 150ms;
  background-color: #ff2b5d;
  margin: 0 1.5em;
}

@media only screen and (min-width: 1024px) {
  #site-navigation ul li a.alt {
    margin: 0 0 0 2em;
  }
}

.home #site-navigation ul li a.alt {
  color: #0024b3;
}

#site-navigation ul li a.alt:hover, #site-navigation ul li a.alt:active {
  background: white;
  color: #0024b3;
}

/*--------------------------------------------------------------
# Menu toggle
--------------------------------------------------------------*/
#masthead button {
  position: absolute;
  right: 15px;
  top: 15px;
  z-index: 1;
}

.menu-toggle,
.toggled #site-navigation ul {
  display: block;
}

@media only screen and (min-width: 1024px) {
  .menu-toggle {
    display: none;
  }
  #site-navigation ul {
    display: block;
  }
}

/*--------------------------------------------------------------
# Hamburger menu
--------------------------------------------------------------*/
#masthead button {
  background-color: transparent;
  text-indent: -99999px;
  height: 50px;
  width: 50px;
}

#masthead button:hover, #masthead button:focus {
  background-color: transparent;
  color: initial;
}

#masthead button.is-active span {
  background: white;
  background: 0 0;
}

#masthead button.is-active span:before, #masthead button.is-active span:after {
  background: white;
  -webkit-transition-delay: 0s, .15s;
          transition-delay: 0s, .15s;
}

#masthead button.is-active span:before {
  top: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

#masthead button.is-active span:after {
  bottom: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

#masthead button span {
  display: block;
  position: absolute;
  top: 24px;
  left: 10px;
  right: 10px;
  height: 2px;
  background: #ff2b5d;
  -webkit-transition: background 0s .15s;
  transition: background 0s .15s;
}

#masthead button span:before, #masthead button span:after {
  background-color: #ff2b5d;
  content: '';
  display: block;
  position: absolute;
  left: 0;
  height: 2px;
  width: 100%;
  -webkit-transition-duration: .15s, .15s;
          transition-duration: .15s, .15s;
  -webkit-transition-delay: .15s, 0s;
          transition-delay: .15s, 0s;
}

#masthead button span:before {
  -webkit-transition-property: top, -webkit-transform;
  transition-property: top, -webkit-transform;
  transition-property: top, transform;
  transition-property: top, transform, -webkit-transform;
  top: -10px;
}

#masthead button span:after {
  bottom: -10px;
  -webkit-transition-property: bottom, -webkit-transform;
  transition-property: bottom, -webkit-transform;
  transition-property: bottom, transform;
  transition-property: bottom, transform, -webkit-transform;
}

/*--------------------------------------------------------------
# Homepage
--------------------------------------------------------------*/
body.home {
  background-color: #ff2b5d;
  color: white;
  background-image: url("../img/bg_mobile.jpg"), url("../img/bg_pattern_pink.png");
  background-position: center top, center top;
  background-size: 100%, auto;
  background-repeat: no-repeat, repeat;
  /*--------------------------------------------------------------
  # Lineup
  --------------------------------------------------------------*/
  /*--------------------------------------------------------------
  # Lineup Adjustemnts
  --------------------------------------------------------------*/
  /*--------------------------------------------------------------
  # Sponsors
  --------------------------------------------------------------*/
  /*--------------------------------------------------------------
  # Video
  --------------------------------------------------------------*/
}

@media only screen and (min-width: 768px) {
  body.home {
    background-image: url("../img/bg_main.png"), url("../img/bg_pattern_pink.png");
  }
}

body.home #masthead {
  background: -webkit-linear-gradient(top, #0024b3 0%, rgba(0, 36, 179, 0.5) 30%, rgba(0, 36, 179, 0) 100%);
  background: linear-gradient(to bottom, #0024b3 0%, rgba(0, 36, 179, 0.5) 30%, rgba(0, 36, 179, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0024b3', endColorstr='#000024b3',GradientType=0 );
}

body.home .entry-content strong {
  font-size: 1.5em;
  letter-spacing: -.06125em;
}

@media only screen and (min-width: 1024px) {
  body.home .entry-content .btn_wrap {
    margin-left: 15%;
  }
}

body.home #lineup {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

body.home #lineup .lineup_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media only screen and (min-width: 1024px) {
  body.home #lineup .lineup_container {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

body.home #lineup article {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  margin-top: 2.5em;
}

@media only screen and (min-width: 768px) {
  body.home #lineup article {
    margin-top: 0;
    width: 85%;
  }
}

@media only screen and (min-width: 1024px) {
  body.home #lineup article {
    width: 46.155%;
  }
}

body.home #lineup article:nth-child(1) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

body.home #lineup article:nth-child(2) {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

body.home #lineup article:nth-child(3) {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5;
}

body.home #lineup article:nth-child(4) {
  -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
          order: 6;
}

body.home #lineup article:nth-child(5) {
  -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
          order: 9;
}

body.home #lineup article:nth-child(6) {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
}

body.home #lineup article:nth-child(7) {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

body.home #lineup article:nth-child(8) {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

body.home #lineup article:nth-child(9) {
  -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
          order: 7;
}

body.home #lineup article:nth-child(10) {
  -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
          order: 8;
}

body.home #lineup article:nth-child(11) {
  -webkit-box-ordinal-group: 12;
      -ms-flex-order: 11;
          order: 11;
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(1) {
    margin-left: 51.845%;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(1) {
    margin-top: -20em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(2) {
    margin-top: -12em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(3) {
    margin-top: 20em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(4) {
    margin-top: -12em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(5) {
    margin-top: 20em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(6) {
    margin-top: -8em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(7) {
    margin-top: 20em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(8) {
    margin-top: -12em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(9) {
    margin-top: 25em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(10) {
    margin-top: -10em;
  }
}

@media only screen and (min-width: 1280px) {
  body.home #lineup article:nth-child(11) {
    margin-top: 16em;
  }
}

body.home #lineup article:nth-child(1) .spkr_wrap:before {
  content: url("../img/nr_carin_meier_zeven.png");
}

body.home #lineup article:nth-child(2) .spkr_wrap:before {
  content: url("../img/nr_neal_ford_een.png");
}

body.home #lineup article:nth-child(3) .spkr_wrap:before {
  content: url("../img/nr_koshin_mariano_nul.png");
}

body.home #lineup article:nth-child(4) .spkr_wrap:before {
  content: url("../img/nr_ted_neward_zes.png");
}

body.home #lineup article:nth-child(5) .spkr_wrap:before {
  content: url("../img/nr_jessica_kerr_drie.png");
}

body.home #lineup article:nth-child(6) .spkr_wrap:before {
  content: url("../img/nr_koshin_mariano_nul.png");
}

body.home #lineup article:last-child .callout {
  margin-bottom: 4em;
}

body.home #lineup article .spkr_wrap:before {
  position: absolute;
  top: -3.75rem;
  right: -2.5rem;
}

@media only screen and (min-width: 768px) {
  body.home #lineup article .spkr_wrap:before {
    right: -2.5rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

body.home #sponsors {
  background-color: white;
  color: #0024b3;
  text-align: center;
}

body.home #sponsors::after {
  clear: both;
  content: "";
  display: block;
}

body.home #sponsors > section {
  padding-top: 6em;
  padding-bottom: 2em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 1024px) {
  body.home #sponsors > section {
    padding-top: 12.5em;
    padding-bottom: 7em;
  }
}

body.home #sponsors > section h2 {
  margin-bottom: 2em;
}

body.home #sponsors > section p {
  margin-bottom: 2em;
}

body.home #sponsors > section ul {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  list-style: none;
}

@media only screen and (min-width: 1024px) {
  body.home #sponsors > section ul {
    max-width: 66%;
    margin-bottom: 3em;
  }
}

body.home #sponsors > section ul li {
  margin-bottom: 3em;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding: .5em .5em;
}

@media only screen and (min-width: 768px) {
  body.home #sponsors > section ul li {
    padding: .5em 1em;
  }
}

@media only screen and (min-width: 1024px) {
  body.home #sponsors > section ul li {
    padding: .5em 1.5em;
  }
}

body.home #sponsors > section ul#partner_logos {
  max-width: 90%;
}

@media only screen and (min-width: 768px) {
  body.home #sponsors > section ul#partner_logos {
    max-width: 75%;
  }
}

@media only screen and (min-width: 1024px) {
  body.home #sponsors > section ul#partner_logos {
    max-width: 60%;
  }
}

body.home #sponsors > section ul#partner_logos li {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

@media only screen and (min-width: 768px) {
  body.home #sponsors > section ul#partner_logos li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}

@media only screen and (min-width: 1024px) {
  body.home #sponsors > section ul#sponsor_logos {
    max-width: 70%;
  }
}

body.home #sponsors > section ul#sponsor_logos li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}

@media only screen and (min-width: 768px) {
  body.home #sponsors > section ul#sponsor_logos li {
    -ms-flex-preferred-size: 33%;
        flex-basis: 33%;
  }
}

body.home #sponsors img {
  display: block;
  height: auto;
  width: 100%;
}

body.home #video {
  width: calc(100%);
  float: left;
  margin-left: 0;
  position: relative;
  position: relative;
}

body.home #video:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 56.25%;
}

body.home #video > .ratio-content, body.home #video > iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

body.home #video iframe {
  width: 100%;
  height: 100%;
}

body.home #video .videoPoster {
  background-image: url("../img/bg_video.jpg");
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  cursor: pointer;
  border: 0;
  outline: none;
  background-size: cover;
  text-indent: -999em;
  overflow: hidden;
  opacity: 1;
  -webkit-transition: opacity 800ms, height 0s;
  transition: opacity 800ms, height 0s;
  -webkit-transition-delay: 0s, 0s;
          transition-delay: 0s, 0s;
}

body.home #video .videoPoster:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80px;
  height: 80px;
  margin: -40px 0 0 -40px;
  border: 6px solid #ff2b5d;
  border-radius: 100%;
  -webkit-transition: border-color 300ms;
  transition: border-color 300ms;
}

body.home #video .videoPoster:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  margin: -25px 0 0 -15px;
  border-left: 40px solid #ff2b5d;
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  -webkit-transition: border-color 300ms;
  transition: border-color 300ms;
}

body.home #video .videoPoster:hover:before, body.home #video .videoPoster:focus:before {
  border-color: white;
}

body.home #video .videoPoster:hover:after, body.home #video .videoPoster:focus:after {
  border-left-color: white;
}

body.home #video.videoWrapperActive .videoPoster {
  opacity: 0;
  height: 0;
  -webkit-transition-delay: 0s, 800ms;
          transition-delay: 0s, 800ms;
}

body.home #video.videoWrapperActive .videoClose {
  display: block;
}

body.home #video .videoClose {
  color: white;
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  background-color: #ff2b5d;
  font: 20px/100% arial, sans-serif;
  position: absolute;
  text-decoration: none;
}

body.home #video .videoClose:hover, body.home #video .videoClose:active, body.home #video .videoClose:focus {
  background-color: #0024b3;
  color: white;
  outline: none;
}

body.home #video .videoClose:after {
  content: '✖';
}

/*--------------------------------------------------------------
# Speaker page
--------------------------------------------------------------*/
.page_speaker {
  background-image: url("../img/nr_big_3.png"), url("../img/nr_big_3_cutoff.png"), url("../img/bg_pattern_white.png");
  background-position: right top, left bottom, center top;
  background-repeat: no-repeat, no-repeat, repeat;
  background-size: 75%, auto, auto;
}

@media only screen and (min-width: 768px) {
  .page_speaker {
    background-size: auto, auto, auto;
  }
}

.page_speaker .speaker-content {
  padding-top: 6em;
}

@media only screen and (min-width: 1280px) {
  .page_speaker .speaker-content {
    padding-top: 10em;
  }
}

.page_speaker .speaker-content > article {
  text-align: left;
}

.page_speaker .speaker-content > article > header {
  margin-bottom: 3em;
  position: relative;
  margin-left: -3.75rem;
  margin-right: -3.75rem;
  width: calc(100% + 7.5rem);
}

.page_speaker .speaker-content > article > header::after {
  clear: both;
  content: "";
  display: block;
}

.page_speaker .speaker-content > article > header .spkr_meta {
  border-top: 1px solid #0024b3;
  font-size: .75em;
  text-transform: uppercase;
  top: 1em;
  padding: 1.5em 0;
  text-align: center;
  left: 0em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_speaker .speaker-content > article > header .spkr_meta {
    width: calc(25% - 4.6875rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_speaker .speaker-content > article > header .spkr_title {
  line-height: 1em;
  margin-top: 2rem;
  margin-bottom: 2rem;
  text-align: right;
  font-size: 3.25em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_speaker .speaker-content > article > header .spkr_title {
    font-size: 5em;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-75%, -50%);
            transform: translate(-75%, -50%);
    width: auto;
    margin: 0;
  }
}

@media only screen and (min-width: 1024px) {
  .page_speaker .speaker-content > article > header .spkr_title {
    font-size: 5em;
  }
}

@media only screen and (min-width: 1280px) {
  .page_speaker .speaker-content > article > header .spkr_title {
    font-size: 7.5em;
  }
}

.page_speaker .speaker-content > article > header blockquote {
  margin-bottom: 0;
  font-size: 1.5em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_speaker .speaker-content > article > header blockquote {
    width: calc(100% - 7.5rem);
    float: left;
    margin-left: 3.75rem;
    position: absolute;
    bottom: 0;
  }
}

@media only screen and (min-width: 1024px) {
  .page_speaker .speaker-content > article > header blockquote {
    font-size: 2em;
    width: calc(83.3333333333% - 6.875rem);
    float: left;
    margin-left: 3.75rem;
    position: absolute;
    bottom: 0;
  }
}

@media only screen and (min-width: 1440px) {
  .page_speaker .speaker-content > article > header blockquote {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_speaker .speaker-content > article > header .spkr_image {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_speaker .speaker-content > article > header .spkr_image {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
    left: calc(25% - 4.6875rem + 3.75rem);
    position: relative;
    margin-bottom: 5em;
  }
}

@media only screen and (min-width: 1024px) {
  .page_speaker .speaker-content > article > header .spkr_image {
    width: calc(41.6666666667% - 5.3125rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1280px) {
  .page_speaker .speaker-content > article > header .spkr_image {
    width: calc(36.0416666667% - 5.1015625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_speaker .speaker-content .row {
  margin-left: -3.75rem;
  margin-right: -3.75rem;
  width: calc(100% + 7.5rem);
}

.page_speaker .speaker-content .row::after {
  clear: both;
  content: "";
  display: block;
}

.page_speaker .speaker-content .row .bio {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_speaker .speaker-content .row .bio {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_speaker .speaker-content .row .bio p,
.page_speaker .speaker-content .row .bio ul {
  font-family: "Source Code Pro";
  line-height: 2.25em;
}

.page_speaker .speaker-content .row .bio li {
  padding: 1em 0;
}

.page_speaker .speaker-content .row .bio .red {
  color: #ff2b5d;
}

.page_speaker .speaker-content .row aside {
  position: relative;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_speaker .speaker-content .row aside {
    width: calc(41.6666666667% - 5.3125rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1280px) {
  .page_speaker .speaker-content .row aside {
    width: calc(25% - 4.6875rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_speaker .speaker-content .row aside p {
  line-height: 2.25em;
}

.page_speaker .speaker-content .row aside section {
  font-size: 0.8125em;
  padding-top: 1.5em;
  padding-bottom: 3em;
  border-top: 1px solid #0024b3;
  border-bottom: 1px solid #0024b3;
}

.page_speaker .speaker-content .row aside section:before {
  content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAxOSI+DQogIDxwYXRoIGZpbGw9IiMwMDI0YjMiIGQ9Ik0xMS45Ni4yMmMtLjQ2IDAtLjk1LjA0LTEuNC4xNC0uNTMuMTItMS4wNi4zLTEuNTQuNTItMS4yLjUtMi4yIDEuMy0yLjk3IDIuNC0uNS43LS44NiAxLjUtMS4xNCAyLjMyLS4yOC44Ny0uNDQgMS43NS0uNDIgMi42NiAwIC41NC4wNiAxLjEuMTggMS42My4xNi43LjQzIDEuMzYuNzUgMiAuMjMuNDUuNTMuODguNSAxLjQyIDAgLjIgMCAuMzgtLjE3LjUyLS4yOC4yNS0uNi40NS0xIC40Ny0uMzUuMDMtLjY1LS4wNy0uODUtLjQyLS4xNi0uMjYtLjE2LS41NC0uMTgtLjgyLS4wNi0uOC0uMS0xLjYyLS4yLTIuNC0uMDUtLjU3LS4zLTEuMDMtLjg3LTEuMjVsLS43My0uMi40Mi0uMmMuNS0uMjguOC0uNjYuOC0xLjI0IDAtLjgtLjItMS42LS4zNy0yLjM2LS4xLS41LS4yMi0uOTctLjE0LTEuNDguMS0uNDguNzMtLjggMS4xLS41LjE4LjE0LjMyLjM2LjQ0LjU3LjA4LjEzLjE4LjIuMzQuMjMuMzQuMDQuOC0uMy44NS0uNjcuMS0uNjItLjMtMS4zLS45LTEuNDctLjgzLS4yNS0xLjY0LS4yNS0yLjQzLjE1QzEuMiAyLjY3LjY3IDMuMzguNzUgNC4zYy4wNi42Ny4yMiAxLjMyLjM1IDEuOTYuMDguNDcuMTYuOTUuMjIgMS40LjAyLjE2LS4wMi4zLS4wOC40NC0uMTQuMzYtLjQ3LjQ4LS44LjU4LS4yNS4wNi0uMy4xMi0uMjUuMzcgMCAuMTguMDUuMzQuMDUuNTIuMDIuNC4wNC40Mi40Mi40NmguMDZjLjcuMDguOTMuNCAxIC45My4wNy43NS4wNSAxLjUuMSAyLjI0IDAgLjQyLjA3Ljg1LjIgMS4yNS4xNy42LjY2LjkgMS4xMiAxLjI1LjUzLS43IDEuNTUtMS4wNyAyLjM2LS42My43LjMuOSAxLjEzIDEuNTIgMS41Mi41LjIgMS4xNS4xIDEuNTMtLjMyLjEtLjEuMTctLjIyLjItLjM0LjI1LS42Mi4xNS0uODcuMS0xLjE1LjM1LjU2LjM1LjcuMyAxLjA2LS4xNS40Ni0uMzcuNy0uNS44My0uMTYuMS0uNTIuMjUtLjgyLjMtLjM2LjAzLS44IDAtMS4xLS4yMy0uMTUtLjEtLjM1LS4zNS0uNTctLjY3LS4xMy0uMTYtLjI1LS4zNC0uNDUtLjUycy0uNS0uMzYtLjgzLS4zNmMtMS4xNy0uMDUtMS42MiAxLjA0LTEuNjIgMS4wNC0uMTguMzctLjA0LjguMzIgMSAuMzcuMTcuOCAwIDEtLjM1IDAgMCAuMS0uMi4yLS4yLjA4LjAzLjEuMTMuMi4yNS4yLjMuNDguNzcgMS4wNCAxLjEuODQuNDcgMS41My40IDEuOS40LjY1IDAgMS4yMi0uMjUgMS42Ni0uNi42NyAxIDEuOTYgMS40OCAzLjAzLjkuNDUtLjI1LjgtLjYuOTUtMS4wMy4xNS0uNDcuMDctLjg3LS4wNC0xLjItLjEtLjM2LS40LS42OC0uNy0uNzgtLjMtLjEyLS41NC0uMS0uNzQtLjA2LS40LjA2LS43LjIyLS43LjIyLS4zNy4xOC0uNTMuNjMtLjM1IDEgLjIuMzUuNjQuNSAxIC4zIDAgMCAuMTItLjA3LjE2IDAgLjAyLjA3LS4wNi4xMy0uMzIuMjVzLS45My0uMDYtMS4xNS0uNThjLS4xLS4yMi0uMTMtLjM4LS4xLS41LjEtLjI1LjItLjgzLjEtMS4xLjE3LjE1LjMzLjQuNTguMzMuMi0uMSAxLS40NSAxLjctLjEyLjY4LjMyIDEuMiAxLjEzLjg2IDIuMy41LjU2IDEuMy44NCAxLjkuOTIuNjYuMSAxLjQuMDYgMi4wNS0uMzIuNS0uMzIuODQtLjc1IDEuMTQtMS4xLjEtLjEuMi0uMjUuMjYtLjIzLjAyLjAyLjA0LjEyLjA0LjEyLjEuNC41LjYzLjkuNTIuNC0uMS42My0uNTMuNS0uOSAwIDAtLjA3LS4yNy0uMi0uNTgtLjEtLjE0LS4xNy0uMy0uMzMtLjQ2LS4xNS0uMTYtLjQ0LS4zNi0uOC0uMzYtLjQuMDItLjY2LjItLjkuMzYtLjUuMzgtLjg3IDEuMDMtMS4yNiAxLjMtLjM4LjIzLS44OC4yNy0xLjIuMjMtLjQzLS4wNy0uNzctLjItLjk3LS40My0uMi0uMi0uNi0uNTctLjU1LTEuMzUuMDYtLjQuMi0uNi40NS0uNy0uMjcuNjYtLjEgMS4yNC4wMiAxLjQ0LjM1LjY3IDEuNDguOSAyLjAyLjU1LjU1LS4zNi44LTEuMDQgMS42LTEuNDguODQtLjQ1IDEuNi0uMiAyIC4zOC4wMy4wMi4wMy4wNC4wNS4wNmwuMDItLjAyYy4xNS0uMDguMTctLjEuNC0uMjYuNzItLjUgMS0xLjIgMS4wNC0yIC4wNi0uOC4wNi0xLjYuMDgtMi40Mi4wMi0uMzYuMS0uNzIuNDctLjkuMi0uMTMuNS0uMTUuNzUtLjIuMTYgMCAuMjItLjA1LjI0LS4ybC4xMi0xLjA0Yy0uMTUtLjA0LS4yNS0uMDYtLjM1LS4xLS41OC0uMi0uODYtLjUtLjgtMS4wNS4wOC0uNjYuMjQtMS4zLjM4LTEuOTcuMTQtLjYuMjYtMS4yLjEyLTEuODQtLjEtLjQ0LS4zMi0uODItLjctMS4xLS41LS4zNy0xLjEtLjQ3LTEuNjgtLjU3LS4zMy0uMDctLjQ3LS4yNy0uMy0uNTdsLjEtLjI3Yy4xLS4yIDAtLjQ0LS4yLS41Mi0uMzctLjE4LS43Ni0uMTQtMS4xLjEtLjU0LjQtLjU4LjkzLS40NCAxLjQ1LjE2LjYuNTggMS4wMiAxLjI1IDEuMTQuMi4wNC40LjA0LjYuMS41Ni4xNi43LjU1LjY0IDEuMS0uMDQuNC0uMTIuNzgtLjIgMS4xOC0uMTMuNjMtLjI3IDEuMjctLjIzIDEuOTIuMDMuNDQuMjMuOC42MiAxLjAyLjE4LjEyLjQuMi42Mi4zMy0uMi4wMy0uMzYuMDUtLjUyLjEtLjQzLjEzLS44LjM3LS45NS44LS4xMi4zNi0uMTguNzQtLjIgMS4xLS4wOC43NS0uMSAxLjUtLjE4IDIuMjQtLjA1LjQ2LS40Mi45LS45NC45LS40Mi0uMDMtLjc3LS4yLTEuMDctLjQ2LS4xLS4wOC0uMi0uMjQtLjItLjM2LjAzLS4zMi4wNy0uNjQuMTctLjk1LjE2LS40NC40LS44NC42LTEuMy4yNy0uNi40My0xLjIyLjUtMS44Ni4xLS43Mi4xLTEuNDIuMDMtMi4xNS0uMDgtLjYyLS4yLTEuMjMtLjQtMS44LS4yOC0uOC0uNjctMS41My0xLjE3LTIuMi0uNi0uNzgtMS4zLTEuNDQtMi4xNi0xLjk1LS43Ny0uNDYtMS42LS43Mi0yLjQ4LS44OC0uNC0uMDYtLjc4LS4xLTEuMTQtLjF6TTguNjggNi44N2MuNjYgMCAxLjEuMzggMS4zLjc0LjIzLjQuMjcuNzguMjcuNzggMCAuMDQtLjAyLjA2LS4wNi4wNmwtLjQ0LjA0Yy0uMDQgMC0uMDYtLjAyLS4wNi0uMDYgMCAwLS4wMi0uMjgtLjE4LS41NC0uMTYtLjI3LS4zOC0uNS0uOTUtLjQ3LS4yOC4wMy0uNDYuMS0uNi4yLS4xNC4xMi0uMjIuMjYtLjI4LjQtLjEzLjI4LS4xLjU0LS4xLjU0IDAgLjA0LS4wMy4wNi0uMDcuMDZsLS40My4wMmMtLjA0IDAtLjA2LS4wMi0uMDYtLjA2IDAgMC0uMDItLjM4LjE2LS44LjItLjQuNi0uODcgMS4zNS0uOWguMTN6bTYuMjcgMGguMTRjLjczLjA0IDEuMTYuNDggMS4zNC45LjE4LjQuMTYuOC4xNi44IDAgLjA1LS4wNC4wNy0uMDYuMDdsLS40Mi0uMDJjLS4wNSAwLS4wNy0uMDQtLjA3LS4wNiAwIDAgMC0uMjgtLjEtLjU0LS4wNi0uMTQtLjE0LS4yNi0uMjgtLjQtLjE0LS4xLS4zMi0uMTctLjYtLjItLjU3LS4wMy0uOC4yLS45NS40OC0uMTYuMjYtLjE4LjU0LS4xOC41NCAwIC4wNC0uMDQuMDYtLjA2LjA2bC0uNDMtLjA0Yy0uMDQgMC0uMDYtLjA0LS4wNi0uMDYgMCAwIDAtLjM4LjI2LS43Ny4xOC0uNC42Mi0uNzYgMS4zLS43NnptLTQuNCAzLjM1aDIuN2MuMDQgMCAuMDguMDQuMDYuMDgtLjA3LjcyLS42NyAxLjMtMS40IDEuMy0uNzIgMC0xLjM1LS41OC0xLjQtMS4zIDAtLjA2IDAtLjA4LjA1LS4wOHoiLz4NCjwvc3ZnPg0K");
  display: none;
  position: absolute;
  right: -80%;
  top: 0;
  width: 24px;
  height: 19px;
}

@media only screen and (min-width: 1024px) {
  .page_speaker .speaker-content .row aside section:before {
    display: block;
  }
}

@media only screen and (min-width: 1280px) {
  .page_speaker .speaker-content .row aside section:before {
    right: -50%;
  }
}

/*--------------------------------------------------------------
# Schedule
--------------------------------------------------------------*/
.page_schedule .schedule-grid {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_schedule .schedule-grid {
    width: calc(100% - 7.5rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_schedule .schedule-grid ul.sg_timeslot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}

.page_schedule .schedule-grid ul.sg_timeslot::after {
  clear: both;
  content: "";
  display: block;
}

@media only screen and (min-width: 768px) {
  .page_schedule .schedule-grid ul.sg_timeslot {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    overflow-x: inherit;
  }
}

.page_schedule .schedule-grid ul.sg_timeslot:last-of-type {
  margin-bottom: 3em;
}

@media only screen and (min-width: 768px) {
  .page_schedule .schedule-grid ul.sg_timeslot:last-of-type {
    margin-bottom: 7em;
  }
}

.page_schedule .schedule-grid ul.sg_timeslot li {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  max-width: 200px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 1.5em;
  margin-right: 1.5em;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .page_schedule .schedule-grid ul.sg_timeslot li {
    max-width: none;
    width: 20%;
  }
}

.page_schedule .schedule-grid ul.sg_timeslot li.sg_timeslot_header {
  color: #888;
  width: 30px;
  text-align: center;
  display: none;
}

@media only screen and (min-width: 768px) {
  .page_schedule .schedule-grid ul.sg_timeslot li.sg_timeslot_header {
    display: block;
    width: 80px;
  }
}

.page_schedule .schedule-grid ul.sg_timeslot li.sg_event {
  border-top: 1px solid #0024b3;
  border-bottom: 1px solid #0024b3;
}

.page_schedule .schedule-grid ul.sg_timeslot li.sg_event:after {
  background-color: #fff37e;
  bottom: 0;
  content: '';
  height: calc(100% - .125em);
  left: .75em;
  position: absolute;
  right: 0;
  top: -.75em;
  width: calc(100% - .75em);
  z-index: -1;
}

.page_schedule .schedule-grid ul.sg_timeslot li.sg_event.sg_main:after {
  background: #fff37e;
  background: -webkit-linear-gradient(30deg, #fff37e 40%, #ff5864 100%);
  background: -webkit-linear-gradient(60deg, #fff37e 40%, #ff5864 100%);
  background: linear-gradient(30deg, #fff37e 40%, #ff5864 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff37e', endColorstr='#ff5864',GradientType=1 );
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_link {
  display: block;
  height: 100%;
  text-decoration: none;
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_link:hover, .page_schedule .schedule-grid ul.sg_timeslot li .sg_event_link:active {
  text-decoration: none;
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_link:hover .sg_event_title, .page_schedule .schedule-grid ul.sg_timeslot li .sg_event_link:active .sg_event_title {
  text-decoration: underline;
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_title {
  font-style: italic;
  font-family: "Times New Roman", "Times", "Georgia", "Cambria", serif;
  font-size: 1.25em;
  line-height: 1.1em;
  margin-bottom: 4rem;
  width: 200px;
}

@media only screen and (min-width: 1024px) {
  .page_schedule .schedule-grid ul.sg_timeslot li .sg_event_title {
    font-size: 1.75em;
    width: 97%;
  }
}

@media only screen and (min-width: 1440px) {
  .page_schedule .schedule-grid ul.sg_timeslot li .sg_event_title {
    font-size: 2.25em;
  }
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_meta {
  font-size: .6875em;
  padding-top: 2em;
  padding-bottom: 1em;
  text-transform: uppercase;
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_meta .sg_event_type,
.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_meta .sg_event_speaker {
  font-weight: bold;
  margin-right: .25rem;
}

.page_schedule .schedule-grid ul.sg_timeslot li .sg_event_meta.meta_2 {
  padding-bottom: 1.5em;
  position: absolute;
  right: 0;
  bottom: 0;
}

.page_schedule .schedule-grid ul.sg_timeslot li.sg_event_empty {
  margin-right: 0;
}

@media only screen and (min-width: 768px) {
  .page_schedule .schedule-grid ul.sg_timeslot li.sg_event_empty {
    margin-right: 1.5em;
  }
}

/*--------------------------------------------------------------
# About
--------------------------------------------------------------*/
.page_about {
  background-image: url("../img/bg_about.jpg"), url("../img/bg_pattern_white.png");
  background-position: center top, center top;
  background-size: 100%, auto;
  background-repeat: no-repeat, repeat;
}

.page_about #organisation article {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

.page_about .about_grid {
  margin-left: -3.75rem;
  margin-right: -3.75rem;
  width: calc(100% + 7.5rem);
  /*--------------------------------------------------------------
    # Person
    --------------------------------------------------------------*/
  /*--------------------------------------------------------------
    # Callout
    --------------------------------------------------------------*/
}

.page_about .about_grid::after {
  clear: both;
  content: "";
  display: block;
}

.page_about .about_grid > div {
  margin-bottom: 3em;
}

@media only screen and (min-width: 768px) {
  .page_about .about_grid > div {
    margin-bottom: 5em;
  }
}

.page_about .about_grid .ag_item {
  border-top: 1px solid #0024b3;
  position: relative;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_about .about_grid .ag_item {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page_about .about_grid .ag_item {
    width: calc(33.3333333333% - 5rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1280px) {
  .page_about .about_grid .ag_item {
    width: calc(25% - 4.6875rem);
    float: left;
    margin-left: 3.75rem;
  }
  .page_about .about_grid .ag_item.ag_item_3 {
    margin-left: calc(25% - 4.6875rem + 7.5rem);
  }
  .page_about .about_grid .ag_item.ag_item_5 {
    margin-left: calc(25% - 4.6875rem + 7.5rem);
  }
}

.page_about .about_grid .ag_item .ag_item_title {
  font-size: 2em;
  position: absolute;
  top: 9rem;
  padding-right: 1em;
}

@media only screen and (min-width: 768px) {
  .page_about .about_grid .ag_item .ag_item_title {
    font-size: 2em;
  }
}

.page_about .about_grid .ag_item img {
  display: block;
  margin-bottom: 3em;
  margin-left: auto;
  width: calc(100% - 3em);
}

.page_about .about_grid .ag_item .ag_item_content {
  font-size: .875em;
}

.page_about .about_grid .ag_item .ag_item_social {
  display: block;
  font-size: .875em;
  font-family: "Source Code Pro";
  font-weight: bold;
  text-decoration: underline;
}

.page_about .about_grid .ag_item .ag_item_social:hover, .page_about .about_grid .ag_item .ag_item_social:active {
  text-decoration: none;
}

.page_about .about_grid .ag_box {
  position: relative;
  overflow: visible;
  background-position: left bottom;
  background-repeat: no-repeat;
  padding-bottom: 20em;
  background-size: contain;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_about .about_grid .ag_box {
    padding-bottom: 0;
    background-size: inherit;
  }
}

@media only screen and (min-width: 1280px) {
  .page_about .about_grid .ag_box {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page_about .about_grid .ag_box.ag_box_1 {
  background-image: url("../img/photo_legal_stuff.jpg");
}

.page_about .about_grid .ag_box.ag_box_2 {
  background-image: url("../img/photo_thanks_alumni.jpg");
}

.page_about .about_grid .ag_box .ag_box_wrap {
  margin-left: -3.75rem;
  margin-right: -3.75rem;
  width: calc(100% + 7.5rem);
}

.page_about .about_grid .ag_box .ag_box_wrap::after {
  clear: both;
  content: "";
  display: block;
}

.page_about .about_grid .ag_box .ag_box_wrap .ag_box_content {
  background-color: white;
  font-family: "Source Code Pro";
  font-size: .875em;
  padding: 40px;
  margin-bottom: 1.5em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page_about .about_grid .ag_box .ag_box_wrap .ag_box_content {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
    margin-left: calc(50% - 5.625rem + 7.5rem);
  }
}

.page_about .about_grid .ag_box .ag_box_wrap .ag_box_content p {
  line-height: 2.5em;
}

.page_about .about_grid .ag_box .ag_box_wrap .ag_box_content p:last-child {
  margin-bottom: 0;
}

.page_about .about_grid .ag_box .ag_box_wrap .ag_box_content .ag_box_title {
  font-size: 2em;
}

/*--------------------------------------------------------------
# Code of conduct
--------------------------------------------------------------*/
.page-code_conduct {
  /*--------------------------------------------------------------
  # Code of conduct
  --------------------------------------------------------------*/
}

.page-code_conduct #code_conduct article .entry-content > div {
  margin-bottom: 2.5em;
}

.page-code_conduct #code_conduct article .intro {
  font-size: 1.25em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .intro {
    width: calc(58.3333333333% - 5.9375rem);
    float: left;
    margin-left: 3.75rem;
    margin-left: calc(41.6666666667% - 5.3125rem + 7.5rem);
    margin-bottom: 5em;
  }
}

.page-code_conduct #code_conduct article .harrassment {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .harrassment {
    width: calc(58.3333333333% - 5.9375rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-code_conduct #code_conduct article .help {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .help {
    width: calc(41.6666666667% - 5.3125rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-code_conduct #code_conduct article .offensive-content {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .offensive-content {
    width: calc(33.3333333333% - 5rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-code_conduct #code_conduct article .alcohol {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .alcohol {
    width: calc(33.3333333333% - 5rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-code_conduct #code_conduct article .compliance {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .compliance {
    width: calc(33.3333333333% - 5rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-code_conduct #code_conduct article .credits {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
  margin-bottom: 3em;
}

@media only screen and (min-width: 768px) {
  .page-code_conduct #code_conduct article .credits {
    width: calc(100% - 7.5rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-code_conduct #code_conduct article h3 {
  font-size: 1.5em;
  letter-spacing: -1px;
}

/*--------------------------------------------------------------
# Venue
--------------------------------------------------------------*/
.page-venue #venue article .entry-content > div {
  margin-bottom: 2.5em;
}

.page-venue #venue article .row::after {
  clear: both;
  content: "";
  display: block;
}

.page-venue #venue article .row img {
  margin-bottom: 1.5em;
  width: 100%;
}

.page-venue #venue article .intro {
  font-size: 1.25em;
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .intro {
    width: calc(58.3333333333% - 5.9375rem);
    float: left;
    margin-left: 3.75rem;
    margin-left: calc(41.6666666667% - 5.3125rem + 7.5rem);
    margin-bottom: 5em;
  }
}

.page-venue #venue article .getting-there .col-1 {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .getting-there .col-1 {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page-venue #venue article .getting-there .col-1 {
    width: calc(58.3333333333% - 5.9375rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-venue #venue article .getting-there .col-2 {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .getting-there .col-2 {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page-venue #venue article .getting-there .col-2 {
    width: calc(41.6666666667% - 5.3125rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-venue #venue article .facilities .col-1 {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .facilities .col-1 {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page-venue #venue article .facilities .col-1 {
    width: calc(41.6666666667% - 5.3125rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-venue #venue article .facilities .col-2 {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .facilities .col-2 {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page-venue #venue article .facilities .col-2 {
    width: calc(58.3333333333% - 5.9375rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-venue #venue article .about-rotterdam .col-1 {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .about-rotterdam .col-1 {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page-venue #venue article .about-rotterdam .col-1 {
    width: calc(58.3333333333% - 5.9375rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-venue #venue article .about-rotterdam .col-2 {
  width: calc(100% - 7.5rem);
  float: left;
  margin-left: 3.75rem;
}

@media only screen and (min-width: 768px) {
  .page-venue #venue article .about-rotterdam .col-2 {
    width: calc(50% - 5.625rem);
    float: left;
    margin-left: 3.75rem;
  }
}

@media only screen and (min-width: 1024px) {
  .page-venue #venue article .about-rotterdam .col-2 {
    width: calc(41.6666666667% - 5.3125rem);
    float: left;
    margin-left: 3.75rem;
  }
}

.page-venue #venue article h3 {
  font-size: 1.5em;
  letter-spacing: -1px;
}

/*--------------------------------------------------------------
# Speaker box
--------------------------------------------------------------*/
.spkr {
  position: relative;
  margin-bottom: 6em;
}

@media only screen and (min-width: 768px) {
  .spkr {
    margin-bottom: 12.5em;
  }
}

.spkr h3 {
  padding-top: 3.75em;
  margin-bottom: .5em;
  z-index: 1;
}

@media only screen and (min-width: 768px) {
  .spkr h3 {
    padding-top: 2.25em;
    margin-bottom: 0;
  }
}

.spkr a {
  color: white;
  text-decoration: none;
  position: relative;
}

.spkr a:active, .spkr a:hover {
  text-decoration: underline;
}

.spkr .spkr_number {
  position: absolute;
  top: -3em;
}

.spkr img {
  box-shadow: 57px 57px 177px 0 rgba(255, 43, 93, 0.2);
  height: auto;
  position: absolute;
  top: 0;
}

@media only screen and (min-width: 480px) {
  .spkr img {
    max-width: 380px;
  }
}

@media only screen and (min-width: 768px) {
  .spkr img {
    max-width: none;
    right: 0;
    width: 46.155%;
  }
}

.spkr blockquote {
  position: relative;
  display: none;
  width: 80%;
}

@media only screen and (min-width: 768px) {
  .spkr blockquote {
    display: block;
  }
}

.spkr .spkr_meta {
  font-size: .75em;
  position: absolute;
  text-transform: uppercase;
  top: 1em;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  left: 50%;
  width: 100%;
  text-align: center;
}

.spkr .spkr_meta .times {
  white-space: nowrap;
}

.spkr .spkr_content {
  position: relative;
  margin-bottom: 2em;
}

@media only screen and (min-width: 768px) {
  .spkr .spkr_content {
    width: 46.155%;
  }
}

.spkr .spkr_social {
  font-family: "Source Code Pro";
  font-size: .9375em;
  font-weight: bold;
  text-transform: uppercase;
}

@media only screen and (min-width: 768px) {
  .spkr .spkr_social {
    position: absolute;
    margin-top: -2em;
    right: 0%;
  }
}

.spkr .spkr_social a {
  color: white;
  text-decoration: none;
}

.spkr .spkr_social a:hover, .spkr .spkr_social a:active {
  text-decoration: underline;
}

.spkr:before, .spkr:after {
  border-top: 1px solid white;
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100%;
  z-index: 1;
}

@media only screen and (min-width: 768px) {
  .spkr:before, .spkr:after {
    width: 46.155%;
    margin-left: 0;
  }
}

.spkr:before {
  top: 0;
}

.spkr:after {
  margin-top: 4em;
}

@media only screen and (min-width: 768px) {
  .spkr:after {
    margin-top: 0;
  }
}

.spkr_alt h3, body.home #lineup article:nth-child(3) h3, body.home #lineup article:nth-child(4) h3 {
  text-align: right;
}

.spkr_alt img, body.home #lineup article:nth-child(3) img, body.home #lineup article:nth-child(4) img {
  right: auto;
  left: 0;
}

@media only screen and (min-width: 768px) {
  .spkr_alt .spkr:before, body.home #lineup article:nth-child(3) .spkr:before, body.home #lineup article:nth-child(4) .spkr:before, .spkr_alt .spkr:after, body.home #lineup article:nth-child(3) .spkr:after, body.home #lineup article:nth-child(4) .spkr:after {
    margin-left: auto;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .spkr_alt .spkr_content, body.home #lineup article:nth-child(3) .spkr_content, body.home #lineup article:nth-child(4) .spkr_content {
    margin-left: auto;
  }
}

@media only screen and (min-width: 768px) {
  .spkr_alt .spkr_social, body.home #lineup article:nth-child(3) .spkr_social, body.home #lineup article:nth-child(4) .spkr_social {
    left: 0;
  }
}

/*--------------------------------------------------------------
# Callout box
--------------------------------------------------------------*/
.callout {
  color: #0024b3;
  position: relative;
  margin-bottom: 7.5em;
}

@media only screen and (min-width: 768px) {
  .callout {
    margin-bottom: 12.5em;
  }
}

.callout a {
  color: #0024b3;
  font-weight: bold;
}

.callout:after {
  content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAxOSI+DQogIDxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xMS45Ni4yMmMtLjQ2IDAtLjk1LjA0LTEuNC4xNC0uNTMuMTItMS4wNi4zLTEuNTQuNTItMS4yLjUtMi4yIDEuMy0yLjk3IDIuNC0uNS43LS44NiAxLjUtMS4xNCAyLjMyLS4yOC44Ny0uNDQgMS43NS0uNDIgMi42NiAwIC41NC4wNiAxLjEuMTggMS42My4xNi43LjQzIDEuMzYuNzUgMiAuMjMuNDUuNTMuODguNSAxLjQyIDAgLjIgMCAuMzgtLjE3LjUyLS4yOC4yNS0uNi40NS0xIC40Ny0uMzUuMDMtLjY1LS4wNy0uODUtLjQyLS4xNi0uMjYtLjE2LS41NC0uMTgtLjgyLS4wNi0uOC0uMS0xLjYyLS4yLTIuNC0uMDUtLjU3LS4zLTEuMDMtLjg3LTEuMjVsLS43My0uMi40Mi0uMmMuNS0uMjguOC0uNjYuOC0xLjI0IDAtLjgtLjItMS42LS4zNy0yLjM2LS4xLS41LS4yMi0uOTctLjE0LTEuNDguMS0uNDguNzMtLjggMS4xLS41LjE4LjE0LjMyLjM2LjQ0LjU3LjA4LjEzLjE4LjIuMzQuMjMuMzQuMDQuOC0uMy44NS0uNjcuMS0uNjItLjMtMS4zLS45LTEuNDctLjgzLS4yNS0xLjY0LS4yNS0yLjQzLjE1QzEuMiAyLjY3LjY3IDMuMzguNzUgNC4zYy4wNi42Ny4yMiAxLjMyLjM1IDEuOTYuMDguNDcuMTYuOTUuMjIgMS40LjAyLjE2LS4wMi4zLS4wOC40NC0uMTQuMzYtLjQ3LjQ4LS44LjU4LS4yNS4wNi0uMy4xMi0uMjUuMzcgMCAuMTguMDUuMzQuMDUuNTIuMDIuNC4wNC40Mi40Mi40NmguMDZjLjcuMDguOTMuNCAxIC45My4wNy43NS4wNSAxLjUuMSAyLjI0IDAgLjQyLjA3Ljg1LjIgMS4yNS4xNy42LjY2LjkgMS4xMiAxLjI1LjUzLS43IDEuNTUtMS4wNyAyLjM2LS42My43LjMuOSAxLjEzIDEuNTIgMS41Mi41LjIgMS4xNS4xIDEuNTMtLjMyLjEtLjEuMTctLjIyLjItLjM0LjI1LS42Mi4xNS0uODcuMS0xLjE1LjM1LjU2LjM1LjcuMyAxLjA2LS4xNS40Ni0uMzcuNy0uNS44My0uMTYuMS0uNTIuMjUtLjgyLjMtLjM2LjAzLS44IDAtMS4xLS4yMy0uMTUtLjEtLjM1LS4zNS0uNTctLjY3LS4xMy0uMTYtLjI1LS4zNC0uNDUtLjUycy0uNS0uMzYtLjgzLS4zNmMtMS4xNy0uMDUtMS42MiAxLjA0LTEuNjIgMS4wNC0uMTguMzctLjA0LjguMzIgMSAuMzcuMTcuOCAwIDEtLjM1IDAgMCAuMS0uMi4yLS4yLjA4LjAzLjEuMTMuMi4yNS4yLjMuNDguNzcgMS4wNCAxLjEuODQuNDcgMS41My40IDEuOS40LjY1IDAgMS4yMi0uMjUgMS42Ni0uNi42NyAxIDEuOTYgMS40OCAzLjAzLjkuNDUtLjI1LjgtLjYuOTUtMS4wMy4xNS0uNDcuMDctLjg3LS4wNC0xLjItLjEtLjM2LS40LS42OC0uNy0uNzgtLjMtLjEyLS41NC0uMS0uNzQtLjA2LS40LjA2LS43LjIyLS43LjIyLS4zNy4xOC0uNTMuNjMtLjM1IDEgLjIuMzUuNjQuNSAxIC4zIDAgMCAuMTItLjA3LjE2IDAgLjAyLjA3LS4wNi4xMy0uMzIuMjVzLS45My0uMDYtMS4xNS0uNThjLS4xLS4yMi0uMTMtLjM4LS4xLS41LjEtLjI1LjItLjgzLjEtMS4xLjE3LjE1LjMzLjQuNTguMzMuMi0uMSAxLS40NSAxLjctLjEyLjY4LjMyIDEuMiAxLjEzLjg2IDIuMy41LjU2IDEuMy44NCAxLjkuOTIuNjYuMSAxLjQuMDYgMi4wNS0uMzIuNS0uMzIuODQtLjc1IDEuMTQtMS4xLjEtLjEuMi0uMjUuMjYtLjIzLjAyLjAyLjA0LjEyLjA0LjEyLjEuNC41LjYzLjkuNTIuNC0uMS42My0uNTMuNS0uOSAwIDAtLjA3LS4yNy0uMi0uNTgtLjEtLjE0LS4xNy0uMy0uMzMtLjQ2LS4xNS0uMTYtLjQ0LS4zNi0uOC0uMzYtLjQuMDItLjY2LjItLjkuMzYtLjUuMzgtLjg3IDEuMDMtMS4yNiAxLjMtLjM4LjIzLS44OC4yNy0xLjIuMjMtLjQzLS4wNy0uNzctLjItLjk3LS40My0uMi0uMi0uNi0uNTctLjU1LTEuMzUuMDYtLjQuMi0uNi40NS0uNy0uMjcuNjYtLjEgMS4yNC4wMiAxLjQ0LjM1LjY3IDEuNDguOSAyLjAyLjU1LjU1LS4zNi44LTEuMDQgMS42LTEuNDguODQtLjQ1IDEuNi0uMiAyIC4zOC4wMy4wMi4wMy4wNC4wNS4wNmwuMDItLjAyYy4xNS0uMDguMTctLjEuNC0uMjYuNzItLjUgMS0xLjIgMS4wNC0yIC4wNi0uOC4wNi0xLjYuMDgtMi40Mi4wMi0uMzYuMS0uNzIuNDctLjkuMi0uMTMuNS0uMTUuNzUtLjIuMTYgMCAuMjItLjA1LjI0LS4ybC4xMi0xLjA0Yy0uMTUtLjA0LS4yNS0uMDYtLjM1LS4xLS41OC0uMi0uODYtLjUtLjgtMS4wNS4wOC0uNjYuMjQtMS4zLjM4LTEuOTcuMTQtLjYuMjYtMS4yLjEyLTEuODQtLjEtLjQ0LS4zMi0uODItLjctMS4xLS41LS4zNy0xLjEtLjQ3LTEuNjgtLjU3LS4zMy0uMDctLjQ3LS4yNy0uMy0uNTdsLjEtLjI3Yy4xLS4yIDAtLjQ0LS4yLS41Mi0uMzctLjE4LS43Ni0uMTQtMS4xLjEtLjU0LjQtLjU4LjkzLS40NCAxLjQ1LjE2LjYuNTggMS4wMiAxLjI1IDEuMTQuMi4wNC40LjA0LjYuMS41Ni4xNi43LjU1LjY0IDEuMS0uMDQuNC0uMTIuNzgtLjIgMS4xOC0uMTMuNjMtLjI3IDEuMjctLjIzIDEuOTIuMDMuNDQuMjMuOC42MiAxLjAyLjE4LjEyLjQuMi42Mi4zMy0uMi4wMy0uMzYuMDUtLjUyLjEtLjQzLjEzLS44LjM3LS45NS44LS4xMi4zNi0uMTguNzQtLjIgMS4xLS4wOC43NS0uMSAxLjUtLjE4IDIuMjQtLjA1LjQ2LS40Mi45LS45NC45LS40Mi0uMDMtLjc3LS4yLTEuMDctLjQ2LS4xLS4wOC0uMi0uMjQtLjItLjM2LjAzLS4zMi4wNy0uNjQuMTctLjk1LjE2LS40NC40LS44NC42LTEuMy4yNy0uNi40My0xLjIyLjUtMS44Ni4xLS43Mi4xLTEuNDIuMDMtMi4xNS0uMDgtLjYyLS4yLTEuMjMtLjQtMS44LS4yOC0uOC0uNjctMS41My0xLjE3LTIuMi0uNi0uNzgtMS4zLTEuNDQtMi4xNi0xLjk1LS43Ny0uNDYtMS42LS43Mi0yLjQ4LS44OC0uNC0uMDYtLjc4LS4xLTEuMTQtLjF6TTguNjggNi44N2MuNjYgMCAxLjEuMzggMS4zLjc0LjIzLjQuMjcuNzguMjcuNzggMCAuMDQtLjAyLjA2LS4wNi4wNmwtLjQ0LjA0Yy0uMDQgMC0uMDYtLjAyLS4wNi0uMDYgMCAwLS4wMi0uMjgtLjE4LS41NC0uMTYtLjI3LS4zOC0uNS0uOTUtLjQ3LS4yOC4wMy0uNDYuMS0uNi4yLS4xNC4xMi0uMjIuMjYtLjI4LjQtLjEzLjI4LS4xLjU0LS4xLjU0IDAgLjA0LS4wMy4wNi0uMDcuMDZsLS40My4wMmMtLjA0IDAtLjA2LS4wMi0uMDYtLjA2IDAgMC0uMDItLjM4LjE2LS44LjItLjQuNi0uODcgMS4zNS0uOWguMTN6bTYuMjcgMGguMTRjLjczLjA0IDEuMTYuNDggMS4zNC45LjE4LjQuMTYuOC4xNi44IDAgLjA1LS4wNC4wNy0uMDYuMDdsLS40Mi0uMDJjLS4wNSAwLS4wNy0uMDQtLjA3LS4wNiAwIDAgMC0uMjgtLjEtLjU0LS4wNi0uMTQtLjE0LS4yNi0uMjgtLjQtLjE0LS4xLS4zMi0uMTctLjYtLjItLjU3LS4wMy0uOC4yLS45NS40OC0uMTYuMjYtLjE4LjU0LS4xOC41NCAwIC4wNC0uMDQuMDYtLjA2LjA2bC0uNDMtLjA0Yy0uMDQgMC0uMDYtLjA0LS4wNi0uMDYgMCAwIDAtLjM4LjI2LS43Ny4xOC0uNC42Mi0uNzYgMS4zLS43NnptLTQuNCAzLjM1aDIuN2MuMDQgMCAuMDguMDQuMDYuMDgtLjA3LjcyLS42NyAxLjMtMS40IDEuMy0uNzIgMC0xLjM1LS41OC0xLjQtMS4zIDAtLjA2IDAtLjA4LjA1LS4wOHoiLz4NCjwvc3ZnPg0K");
  position: absolute;
  right: 0;
  top: 0;
  width: 24px;
  height: 19px;
}

.callout img {
  position: absolute;
  bottom: -2em;
  right: 0;
  z-index: -1;
  width: 95%;
}

.callout .callout_wrap {
  background-color: white;
  box-shadow: 57px 57px 177px 0 rgba(255, 246, 0, 0.2);
  padding: 3em;
}

@media only screen and (min-width: 768px) {
  .callout .callout_wrap {
    width: 46.43%;
  }
}

.callout .callout_wrap svg {
  color: white;
  position: absolute;
  height: 1.25em;
  right: 0;
  top: 0;
  width: 1.5em;
}

.callout .callout_wrap .callout_content {
  font-family: "Source Code Pro";
  font-size: .75em;
}

.callout .callout_wrap .callout_content p {
  line-height: 3em;
}

.callout .callout_wrap .callout_content p:last-child {
  margin-bottom: 0;
}

.callout .callout_wrap:after {
  border-bottom: 1px solid white;
  bottom: -4em;
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .callout .callout_wrap:after {
    width: 47.5%;
  }
}

.ca_alt img, body.home #lineup article:nth-child(8) img, body.home #lineup article:nth-child(9) img {
  left: 0em;
}

.ca_alt .callout:after, body.home #lineup article:nth-child(8) .callout:after, body.home #lineup article:nth-child(9) .callout:after {
  left: 0;
  right: auto;
}

@media only screen and (min-width: 768px) {
  .ca_alt .callout_wrap, body.home #lineup article:nth-child(8) .callout_wrap, body.home #lineup article:nth-child(9) .callout_wrap {
    margin-left: auto;
  }
}

.ca_alt .callout_wrap:after, body.home #lineup article:nth-child(8) .callout_wrap:after, body.home #lineup article:nth-child(9) .callout_wrap:after {
  right: 0;
  left: inherit;
}

/*--------------------------------------------------------------
# Footer Layout
--------------------------------------------------------------*/
aside#footer {
  clear: both;
}

aside#footer::after {
  clear: both;
  content: "";
  display: block;
}

aside#footer a {
  font-weight: bold;
  font-family: "Source Code Pro";
}

aside#footer section {
  padding: 1em;
}

@media only screen and (min-width: 768px) {
  aside#footer section {
    padding: 2em;
  }
}

@media only screen and (min-width: 1280px) {
  aside#footer section {
    padding: 3em 5em;
  }
}

aside#footer #contact {
  color: #0024b3;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  aside#footer #contact {
    width: 33.33%;
    float: left;
  }
}

aside#footer .wrap::after {
  clear: both;
  content: "";
  display: block;
}

@media only screen and (min-width: 768px) {
  aside#footer .wrap {
    width: 66.66%;
    float: left;
  }
}

aside#footer .wrap section {
  width: 100%;
}

aside#footer .wrap section::after {
  clear: both;
  content: "";
  display: block;
}

@media only screen and (min-width: 480px) {
  aside#footer .wrap section {
    width: 50%;
    float: left;
  }
}

aside#footer .wrap section p:last-child {
  border-bottom: 1px solid #fff;
  padding-bottom: 3em;
}

/*--------------------------------------------------------------
# Footer Content
--------------------------------------------------------------*/
aside#footer {
  background-color: white;
  text-align: center;
  /* Social nav */
}

@media only screen and (min-width: 1024px) {
  aside#footer {
    text-align: left;
  }
}

aside#footer .wrap {
  color: white;
  background-color: #ff2b5d;
  background-image: url("../img/bg_footer.jpg");
  background-position: center center;
  background-size: cover;
}

aside#footer .wrap a {
  color: white;
}

aside#footer .signup {
  font-family: "Source Code Pro";
  font-size: .9375em;
}

aside#footer h2 {
  font-size: 1.25em;
  text-transform: uppercase;
  padding-top: .75em;
  letter-spacing: -1px;
}

@media only screen and (min-width: 1024px) {
  aside#footer h2 {
    font-size: 1.875em;
  }
}

aside#footer ul.social {
  margin: 0 0 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
}

@media only screen and (min-width: 1024px) {
  aside#footer ul.social {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

aside#footer ul.social li {
  margin: 0 .5em;
  padding: .25em 0;
}

aside#footer ul.social a {
  border-radius: 100%;
  border: 1px solid #0024b3;
  color: #0024b3;
  display: inline-block;
  height: 2.5em;
  text-align: center;
  -webkit-transition: background-color 150ms ease;
  transition: background-color 150ms ease;
  line-height: 2.75em;
  width: 2.5em;
}

aside#footer ul.social a[href*="flickr.com"]:hover, aside#footer ul.social a[href*="flickr.com"]:focus {
  color: #ff0084;
}

aside#footer ul.social a[href^="mailto"]:hover, aside#footer ul.social a[href^="mailto"]:focus {
  color: #999;
}

aside#footer ul.social a[href*="twitter.com"]:hover, aside#footer ul.social a[href*="twitter.com"]:focus {
  color: #00aced;
}

aside#footer ul.social a[href*="youtube.com"]:hover, aside#footer ul.social a[href*="youtube.com"]:focus {
  color: #bb0000;
}

/*--------------------------------------------------------------
# Socket 
--------------------------------------------------------------*/
footer#socket {
  background-color: #0024b3;
  color: white;
  font-family: "Source Code Pro";
  text-align: center;
  padding: 1.5em;
}

footer#socket a {
  color: white;
}

footer#socket > span {
  display: block;
  font-size: .75em;
}

@media only screen and (min-width: 768px) {
  footer#socket > span {
    margin-right: 1.5em;
    display: inline;
  }
}

@media only screen and (min-width: 1024px) {
  footer#socket > span {
    margin-right: 2.5em;
  }
}

footer#socket > span:last-child {
  margin-right: 0;
}