@charset "UTF-8";
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
img, legend {
  border: 0;
}

legend, td, th {
  padding: 0;
}

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, optgroup, strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: .67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -.5em;
}

sub {
  bottom: -.25em;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre, textarea {
  overflow: auto;
}

code, kbd, pre, samp {
  font-family: monospace,monospace;
  font-size: 1em;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: .35em .625em .75em;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*
* — Sprites —
*/
.extended-nav .ui-accordion-header .ui-icon, .site-footer .social-nav a:before, #page-nav .nav li:before, .modal .close-modal .icon, .page-sponsors .sponsor .icon:before, .competencies-filter .toggle-competencies:after {
  background: url(../images/sprites/sprite.png) no-repeat;
}

.backgroundsize .extended-nav .ui-accordion-header .ui-icon, .extended-nav .ui-accordion-header .backgroundsize .ui-icon, .backgroundsize .site-footer .social-nav a:before, .site-footer .social-nav .backgroundsize a:before, .backgroundsize #page-nav .nav li:before, #page-nav .nav .backgroundsize li:before, .backgroundsize .modal .close-modal .icon, .modal .close-modal .backgroundsize .icon, .backgroundsize .page-sponsors .sponsor .icon:before, .page-sponsors .sponsor .backgroundsize .icon:before, .backgroundsize .competencies-filter .toggle-competencies:after, .competencies-filter .backgroundsize .toggle-competencies:after {
  background-image: url(../images/sprites/sprite-retina.png);
  background-size: auto 100px;
}

.page-sessions #section-tracks .icon {
  background: url(../images/sprites/sprite-tracks.png) no-repeat;
}

.backgroundsize .page-sessions #section-tracks .icon, .page-sessions #section-tracks .backgroundsize .icon {
  background-image: url(../images/sprites/sprite-tracks-retina.png);
  background-size: auto 100px;
}

/**
* ==================================================
*		Utility Classes
* ==================================================
*/
.clearfix:after {
  clear: both;
  content: '';
  display: block;
}

.offscreen {
  display: block;
  left: -999999px;
  position: absolute;
  top: -999999px;
}

.no-wrap {
  white-space: nowrap;
}

body.scroll-disabled {
  height: 100%;
  overflow: hidden;
}

.img-wrap img {
  display: block;
  height: auto;
  width: 100%;
}

.reinvent-case {
  text-transform: none;
}

html {
  box-sizing: border-box;
}

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

/**
* ==================================================
*		Additional Baseline Resets
* ==================================================
*/
*,
*:before,
*:after {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  background: #000;
  font-size: 62.5%;
}

body {
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  font-family: "AvenirNextLTW01-Regular", verdana, sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

em {
  font-style: italic;
}

sup {
  font-size: .5em;
  line-height: 1em;
  vertical-align: super;
}

figure {
  margin: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

ol,
ul {
  padding: 0;
  margin: 0;
}

h1, h2, h3, h4, h5, h6,
strong, b {
  font-weight: normal;
}

/**
* ==================================================
*		Grid Framework
* ==================================================
*/
.central-column {
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  width: 100%;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.central-column:after {
  content: " ";
  display: block;
  clear: both;
}

@media screen and (min-width: 48em) {
  .central-column {
    max-width: 100%;
  }
}

@media screen and (min-width: 64.0625em) {
  .central-column {
    max-width: calc( 100vw - 152px);
    padding: 0;
  }
}

@media screen and (min-width: 87.5em) {
  .central-column {
    max-width: 124.8rem;
    margin-left: auto;
    margin-right: auto;
  }
  .central-column:after {
    content: " ";
    display: block;
    clear: both;
  }
}

/**
* ==================================================
*		Grid Framework - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .col-1-1 {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .col-1-2 {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
    float: left;
    width: 50%;
  }
  .col-1-3 {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
    float: left;
    width: 33.33333%;
  }
  .col-r {
    float: right;
  }
}

/**
* ==================================================
*		Grid Framework - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .col-main {
    width: 85.71429%;
  }
  .col-1-1 {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
  }
  .col-1-2 {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
    float: left;
    width: 50%;
  }
  .col-1-3 {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
    float: left;
    width: 33.33333%;
  }
  .col-r {
    float: right;
  }
}

/**
* ==================================================
*		Standard Typography
* ==================================================
*/
.body-copy p,
.body-copy ul,
.body-copy ol {
  font-size: 16px;
  font-size: 1.6rem;
  color: #d8d8d8;
  line-height: 1.375em;
  margin-top: 0;
  margin-bottom: 1.375em;
}

.headline-s1 {
  font-size: 16px;
  font-size: 1.6rem;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid #fff;
  clear: both;
  display: inline-block;
  letter-spacing: .25em;
  line-height: 1.4em;
  margin: 0 0 0 -10px;
  padding: 14px 6px 12px 10px;
  text-transform: uppercase;
  position: relative;
  z-index: 2;
}

.headline-s2 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: .25em;
  line-height: 1.4em;
  text-transform: uppercase;
  margin: 0;
}

.headline-s3, .sponsor-modal .modal-paging a {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  letter-spacing: .15em;
  line-height: 1.375em;
  margin: 0 0 .875em;
  text-transform: uppercase;
}

.headline-s4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  line-height: 1.375em;
  margin: 0 0 .875em;
}

.register-now,
.body-copy .register-now, .site-header .site-nav .nav-item-register a {
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  background: #fd9526;
  box-shadow: none;
  color: #fff;
  display: inline-block;
  padding: 12px 10px 14px;
  box-shadow: none;
}

.register-now:hover, .site-header .site-nav .nav-item-register a:hover {
  background: #ff7600;
}

.emphatic-link,
.body-copy .emphatic-link {
  color: #fd9526;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  box-shadow: none;
}

.emphatic-link:hover,
.body-copy .emphatic-link:hover {
  box-shadow: inset 0 -1px 0 0 #fd9526;
}

.last {
  margin-bottom: 0;
}

.button,
.body-copy .button {
  font-size: 16px;
  font-size: 1.6rem;
  border: 1px solid #fff;
  box-shadow: none;
  box-shadow: none;
  color: #000;
  display: inline-block;
  line-height: 1em;
  padding: 0 22px 0 0;
  position: relative;
}

.button:before,
.body-copy .button:before {
  background-color: rgba(0, 0, 0, 0.4);
  background-image: url(../images/sprites/arrow-white.png);
  display: block;
  position: absolute;
  right: 0;
  content: '';
  width: 22px;
  height: 22px;
  top: 0;
  transition: background-position .5s;
}

.backgroundsize .button:before, .backgroundsize
.body-copy .button:before {
  background-image: url(../images/sprites/arrow-white-retina.png);
  background-size: 22px auto;
}

.button:hover:before,
.body-copy .button:hover:before {
  background-position: 22px 0;
}

.button span,
.body-copy .button span {
  display: inline-block;
  background: #fff;
  padding: 3px 10px;
}

.new-badge {
  background: #fd9526;
  color: #fff;
  display: inline-block;
  padding: 4px 6px 2px 8px;
  margin-left: 7px;
}

/** Headline Bumps */
.bump-wrap {
  display: inline-block;
  padding-bottom: 22px;
  position: relative;
}

.bump,
.body-copy .bump {
  font-size: 12px;
  font-size: 1.2rem;
  color: #2c2c2c;
  background: #fff;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  display: inline-block;
  line-height: 14px;
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: .08em;
  text-indent: .08em;
}

.bump-r {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0;
  padding: 4px 10px;
}

.bump-l {
  margin: 0 0 0 -10px;
  padding: 5px 10px 3px;
}

.bump-solo {
  padding: 5px 12px 4px;
  margin: 0 auto;
}

/** Images */
.img-wrap {
  position: relative;
}

.img-wrap img {
  display: block;
  height: auto;
  width: 100%;
}

.img-wrap + .img-wrap {
  margin-top: 28px;
}

/** Numbered Content */
.number-list li,
.body-copy .number-list li {
  padding: 0;
}

.number-list li:before,
.body-copy .number-list li:before {
  display: none;
}

.number-list li .number-entry,
.body-copy .number-list li .number-entry {
  margin-bottom: 2em;
}

.number-list li:last-of-type .number-entry,
.body-copy .number-list li:last-of-type .number-entry {
  margin-bottom: 0;
}

.number-entry,
.body-copy .number-entry {
  color: #fff;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  margin-bottom: .75em;
}

.number-entry .number,
.body-copy .number-entry .number {
  display: inline-block;
  font-size: 48px;
  font-size: 4.8rem;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  margin-right: 10px;
  width: 40px;
  height: 43px;
  line-height: 43px;
  position: absolute;
}

.number-entry .number-text,
.body-copy .number-entry .number-text {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  letter-spacing: .15em;
  line-height: 1.375em;
  text-transform: uppercase;
  display: block;
  padding-left: 40px;
}

/** Formatted Lists eg. 2015 Sessions */
.list li,
.body-copy .list li {
  margin: 0 0 1.375em;
  padding: 0;
}

.list li:before,
.body-copy .list li:before {
  display: none;
}

.list li:last-of-type,
.body-copy .list li:last-of-type {
  margin-bottom: 0;
}

.list li:last-of-type p,
.body-copy .list li:last-of-type p {
  margin-bottom: 0;
}

.list .date,
.body-copy .list .date {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  display: block;
  letter-spacing: .04em;
}

.list .time,
.body-copy .list .time {
  letter-spacing: .08em;
}

.list .name,
.body-copy .list .name {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  letter-spacing: .04em;
  font-weight: 700;
  margin: 0;
}

.list .name a,
.body-copy .list .name a {
  box-shadow: none;
}

.list .name a:hover,
.body-copy .list .name a:hover {
  color: #fd9526;
}

.list .desc,
.body-copy .list .desc {
  letter-spacing: .04em;
  margin: 0;
}

/** Rules */
.rule-wrap {
  clear: both;
  padding-top: 40px;
}

.rule {
  background: rgba(255, 255, 255, 0.6);
  height: 1px;
}

.section-rule {
  clear: both;
  margin: 0 0 0 -10px;
}

.short-rule {
  width: 100px;
  margin: 0 0 14px -10px;
}

/** Breaks */
.desktop-break {
  display: none;
}

/** For link replacements due to laggy analytics code */
.pseudo-link {
  cursor: pointer;
}

/** Body Copy Standard Tags */
.body-copy strong {
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
}

.body-copy p.last,
.body-copy ul.last,
.body-copy ol.last {
  margin-bottom: 0;
}

.body-copy ul, .body-copy ol {
  list-style: none;
}

.body-copy ul li {
  padding: 0 0 0 28px;
  position: relative;
}

.body-copy ul li:before {
  content: '\2022';
  position: absolute;
  left: 0;
}

.body-copy ul ul li {
  padding: 0 0 0 11px;
}

.body-copy ul ul li:before {
  content: '-';
}

.body-copy a {
  padding-bottom: 1px;
  box-shadow: inset 0 -1px 0 0 #d8d8d8;
}

.body-copy a:hover {
  box-shadow: none;
}

/** Color Updates for white backgrounds */
.body-copy-dark {
  color: #2c2c2c;
}

.body-copy-dark .headline-s1 {
  border-color: #2c2c2c;
  background: #fff;
}

.body-copy-dark p,
.body-copy-dark ul,
.body-copy-dark ol {
  color: #2c2c2c;
}

.body-copy-dark a {
  box-shadow: inset 0 -1px 0 0 #2c2c2c;
}

.body-copy-dark .button {
  border-color: #2c2c2c;
}

.body-copy-dark .button:before {
  background-color: rgba(255, 255, 255, 0.4);
  background-image: url(../images/sprites/arrow-black.png);
}

.backgroundsize .body-copy-dark .button:before {
  background-image: url(../images/sprites/arrow-black-retina.png);
}

.body-copy-dark .button span {
  background: #2c2c2c;
  color: #fff;
}

.body-copy-dark .bump {
  background: #2c2c2c;
  color: #fff;
}

.body-copy-dark .rule {
  background: #2c2c2c;
}

/**
* ==================================================
*		Standard Typography - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .headline-s1,
  .body-copy .headline-s1 {
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: .45em;
    line-height: 1em;
  }
  .headline-s2 {
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: .32em;
  }
  .register-now,
  .body-copy .register-now {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 16px 14px 20px;
  }
  .list .name {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .rule-wrap {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .body-copy .img-wrap {
    border: 3px solid #fff;
  }
}

/**
* ==================================================
*		Standard Typography - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .headline-s4 {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .register-now,
  .body-copy .register-now {
    padding: 23px 14px 27px;
  }
  .bump-wrap {
    padding-bottom: 22px;
  }
  .bump,
  .body-copy .bump {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .list .date,
  .body-copy .list .date {
    display: inline-block;
    width: 260px;
  }
  .bump-l {
    padding: 7px 12px 4px;
  }
  .bump-r {
    padding: 5px 12px 3px;
  }
  .bump-solo {
    padding: 7px 14px 5px;
  }
  .rule-wrap {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
    padding-top: 50px;
  }
  .mobile-break {
    display: none;
  }
  .desktop-break {
    display: inline;
  }
}

/**
* ==================================================
*		Header Bar
* ==================================================
*/
.site-header {
  background: #000;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 400;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transition: background 1s, opacity .5s, -webkit-transform .5s;
  transition: background 1s, opacity .5s, transform .5s;
}

.js .site-header {
  opacity: 0;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.js .loaded .site-header {
  opacity: 1;
  -webkit-transform: none;
  transform: none;
}

.scrolled .site-header {
  background: #000;
}

.site-header .site-branding {
  display: block;
  float: left;
  padding: 10px;
  margin-left: -10px;
}

.site-header .site-branding img {
  display: block;
  width: auto;
  height: 20px;
}

.site-header .toggle-menu {
  display: block;
  padding: 13px 10px;
  position: absolute;
  right: 10px;
  top: 0;
}

.site-header .toggle-menu .icon {
  height: 14px;
  width: 20px;
  position: relative;
}

.site-header .toggle-menu .icon .spoke {
  background-color: #fff;
  border-radius: 2px;
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  opacity: 1;
  width: 100%;
  transition: .25s ease-in-out;
}

.site-header .toggle-menu .icon .spoke-1 {
  top: 0;
}

.site-header .toggle-menu .icon .spoke-2,
.site-header .toggle-menu .icon .spoke-3 {
  top: 6px;
}

.site-header .toggle-menu .icon .spoke-3 {
  opacity: 0;
}

.site-header .toggle-menu .icon .spoke-4 {
  top: 12px;
}

.site-header .toggle-menu.active .icon .spoke {
  background: #808080;
}

.site-header .toggle-menu.active .icon .spoke-1,
.site-header .toggle-menu.active .icon .spoke-4 {
  opacity: 0;
}

.site-header .toggle-menu.active .icon .spoke-2 {
  transform: rotate(45deg);
}

.site-header .toggle-menu.active .icon .spoke-3 {
  transform: rotate(-45deg);
  opacity: 1;
}

.site-header .site-nav {
  font-size: 0;
  float: right;
  margin: 0 30px 0 0;
}

.no-csscalc .site-header .site-nav {
  margin-right: 40px;
}

.site-header .site-nav li {
  font-size: 12px;
  font-size: 1.2rem;
  display: none;
}

.site-header .site-nav a {
  border: 1px solid transparent;
  display: inline-block;
  padding: 6px 6px 9px;
}

.site-header .site-nav .nav-item-current a,
.site-header .site-nav li a:hover {
  border: 1px solid #fff;
}

.site-header .site-nav .nav-item-register {
  display: inline-block;
  padding: 0;
  margin-left: 16px;
}

.site-header .site-nav .nav-item-register a {
  border: none;
}

.site-header .site-nav .nav-item-register a:hover {
  border: none;
}

/**
* ==================================================
*		Header Bar - Mobile Only
* ==================================================
*/
@media screen and (max-width: 47.9375em) {
  .site-header .central-column {
    max-width: 100%;
  }
}

/**
* ==================================================
*		Header Bar - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .site-header .inner {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .site-header .site-branding {
    padding: 13px 10px;
  }
  .site-header .site-branding img {
    height: 28px;
  }
  .site-header .site-nav .nav-item-register a {
    font-size: 16px;
    font-size: 1.6rem;
    height: auto;
    padding: 16px 14px 20px;
  }
  .site-header .toggle-menu {
    padding: 18px 10px 17px;
  }
  .site-header .toggle-menu .icon {
    height: 20px;
    width: 26px;
  }
  .site-header .toggle-menu .icon .spoke {
    height: 3px;
  }
  .site-header .toggle-menu .icon .spoke-2,
  .site-header .toggle-menu .icon .spoke-3 {
    top: 8px;
  }
  .site-header .toggle-menu .icon .spoke-4 {
    top: 16px;
  }
}

/**
* ==================================================
*		Header Bar - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .site-header {
    background: #000;
    background: rgba(0, 0, 0, 0.6);
  }
  .site-header .site-branding {
    padding: 21px 10px;
  }
  .site-header .site-branding img {
    width: 150px;
    height: auto;
  }
  .site-header .site-nav {
    margin: 0;
  }
  .no-csscalc .site-header .site-nav {
    margin-right: 76px;
  }
  .site-header .site-nav li {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    padding-left: 0;
    padding: 20px 1px;
  }
  .site-header .site-nav .nav-item-register a {
    height: auto;
    padding: 27px 14px 30px;
  }
  .site-header .toggle-menu {
    float: none;
    padding: 28px 25px;
  }
  .site-header .toggle-menu .icon {
    height: 20px;
    width: 26px;
  }
  .site-header .toggle-menu .icon .spoke {
    height: 3px;
  }
  .site-header .toggle-menu .icon .spoke-2,
  .site-header .toggle-menu .icon .spoke-3 {
    top: 8px;
  }
  .site-header .toggle-menu .icon .spoke-4 {
    top: 16px;
  }
}

/**
* ==================================================
*		Header Bar - Desktop 2
* ==================================================
*/
@media screen and (min-width: 75em) {
  .site-header .site-nav li {
    padding: 20px 8px;
  }
}

/**
* ==================================================
*		Extended Navigation
* ==================================================
*/
.extended-nav {
  background: #000;
  bottom: 0;
  overflow-y: scroll;
  position: fixed;
  right: 0;
  top: 40px;
  width: 100%;
  transition: transform .5s;
  -ms-transform: translateX(100%);
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  z-index: 400;
}

.no-csstransforms .extended-nav {
  width: 275px;
  margin-right: -275px;
}

.extended-nav.active {
  -ms-transform: none;
  -webkit-transform: none;
  transform: none;
}

.no-csstransforms .extended-nav.active {
  margin: 0;
}

.extended-nav .inner {
  padding: 10px 20px 0;
}

.extended-nav li {
  list-style: none;
}

.extended-nav .nav-item-ancestor > a {
  color: #fd9526;
}

.extended-nav .nav-item-has-children {
  border-top: 1px solid #222;
}

.extended-nav .ui-accordion-header {
  border: none;
  background: none;
  border-radius: 0;
  color: #fff;
  margin: 0;
  outline: none;
  padding: 10px 0;
}

.extended-nav .ui-accordion-header .ui-icon {
  opacity: .66;
  display: block;
  height: 10px;
  width: 14px;
  position: absolute;
  top: 50%;
  right: -1px;
  margin-top: -5px;
  left: auto;
  transform-origin: center center;
  -webkit-transition: -webkit-transform .5s, opacity .5s;
  transition: transform .5s, opacity .5s;
}

.extended-nav .ui-accordion-header-active .ui-icon {
  opacity: 1;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.extended-nav .ui-accordion-content {
  background: none;
  border: none;
  border-radius: 0;
  padding: 0 0 14px;
}

.extended-nav .ui-accordion-content a {
  color: #a8a8a8;
  padding: 7px 0;
}

.extended-nav a {
  display: block;
  padding: 13px 0;
  position: relative;
}

.extended-nav a:hover {
  color: #fd9526;
}

.extended-nav .nav-item-current > a {
  color: #fd9526;
}

.extended-nav .nav-item-after-hours {
  border-bottom: 1px solid #222;
}

.extended-nav .nav-item-login,
.extended-nav .nav-item-register {
  background: #2c2c2c;
  margin: 0 -20px;
  padding: 0 20px;
  width: auto;
}

.extended-nav .nav-item-register {
  color: #fd9526;
}

/**
* ==================================================
*		Extended Nav - Mobile 2
* ==================================================
*/
@media screen and (min-width: 40em) {
  .extended-nav {
    width: auto;
  }
  .extended-nav .inner {
    padding: 10px 33px 26px 26px;
  }
  .extended-nav li {
    width: 216px;
  }
  .extended-nav .nav-item-login,
  .extended-nav .nav-item-register {
    margin: 0 -33px 0 -26px;
    padding: 0 33px 0 26px;
  }
}

/**
* ==================================================
*		Extended Nav - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .extended-nav {
    top: 55px;
  }
}

/**
* ==================================================
*		Extended Nav - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .extended-nav {
    width: auto;
    top: 76px;
  }
}

/**
* ==================================================
*		Footer
* ==================================================
*/
.site-footer {
  position: relative;
  padding-bottom: 10px;
  padding-top: 15px;
  z-index: 300;
}

.site-footer .row + .row {
  margin-top: 20px;
}

.site-footer .footer-nav {
  color: #a8a8a8;
  float: left;
  font-size: 0;
  margin-left: -10px;
  width: 40%;
}

.site-footer .footer-nav a {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  padding: 5px 10px;
}

.site-footer .footer-nav a:hover span {
  box-shadow: inset 0 -1px 0 0 #a8a8a8;
}

.site-footer .reg-tools {
  float: right;
  font-size: 0;
  clear: right;
  margin-bottom: 30px;
  padding-top: 4px;
}

.site-footer .reg-tools li {
  display: inline-block;
}

.site-footer .reg-tools a {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  padding: 10px;
}

.site-footer .reg-tools a:hover span {
  box-shadow: inset 0 -1px 0 0 #fff;
}

.site-footer .nav-item-register {
  background: #fd9526;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  margin: -18px 0 0 10px;
}

.site-footer .nav-item-register a {
  padding: 12px 10px 14px;
}

.site-footer .nav-item-register a:hover {
  background: #ff7600;
}

.site-footer .nav-item-register a:hover span {
  box-shadow: none;
}

.site-footer .aws-link {
  display: block;
  padding: 10px;
  margin-left: -10px;
  float: left;
  clear: left;
}

.site-footer .aws-link img {
  display: block;
  height: auto;
  width: 96px;
}

.site-footer .connect-tools {
  float: right;
  padding-top: 13px;
}

.site-footer .mobile-app-cta {
  font-size: 18px;
  font-size: 1.8rem;
  color: #a8a8a8;
  float: left;
  padding: 10px;
  margin-right: 40px;
}

.site-footer .social-nav {
  float: left;
  font-size: 0;
  margin-right: -10px;
}

.site-footer .social-nav li {
  display: inline-block;
}

.site-footer .social-nav a {
  display: inline-block;
  padding: 10px;
}

.site-footer .social-nav a:before {
  content: '';
  display: block;
  height: 25px;
  width: 25px;
}

.site-footer .social-nav .nav-item-twitter a:before {
  background-position: -75px 3px;
}

.site-footer .social-nav .nav-item-twitter a:hover:before {
  background-position: -75px -47px;
}

.site-footer .social-nav .nav-item-instagram a:before {
  background-position: -100px 0;
}

.site-footer .social-nav .nav-item-instagram a:hover:before {
  background-position: -100px -50px;
}

.site-footer .social-nav .nav-item-youtube a:before {
  background-position: -125px 0;
  width: 21px;
}

.site-footer .social-nav .nav-item-youtube a:hover:before {
  background-position: -125px -50px;
}

.site-footer .social-nav .nav-item-facebook a:before {
  background-position: -150px 0;
  width: 13px;
}

.site-footer .social-nav .nav-item-facebook a:hover:before {
  background-position: -150px -50px;
}

/**
* ==================================================
*		Footer - Desktop
* ==================================================
*/
@media screen and (min-width: 48em) {
  .site-footer {
    padding-top: 3px;
  }
  .site-footer .row {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .site-footer .row + .row {
    margin-top: 0;
  }
  .site-footer .footer-nav {
    margin-left: -22px;
    padding-top: 5px;
  }
  .site-footer .footer-nav li {
    display: inline-block;
    margin: 0 12px;
  }
  .site-footer .footer-nav a {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 10px;
  }
  .site-footer .reg-tools a {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .site-footer .nav-item-register {
    margin: -18px 0 0 17px;
  }
  .site-footer .nav-item-register a {
    padding: 27px 12px 29px;
  }
  .site-footer .aws-link {
    display: block;
    padding: 10px;
    float: left;
    clear: left;
  }
  .site-footer .aws-link img {
    width: 132px;
  }
  .site-footer .connect-tools {
    padding-top: 16px;
  }
}

/**
* ==================================================
*		Masthead - Base
* ==================================================
*/
.page-header {
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.page-agenda .page-header {
  background-image: url(../images/agenda/aws-reinvent-agenda-hero-packed-conference-room-mobile.jpg);
}

.page-training .page-header {
  background-image: url(../images/training/aws-reinvent-training-hero-smiling-technician-coaches-attendee-mobile.jpg);
}

.page-sessions .page-header, .page-keynotes .page-header, .page-pressroom .page-header {
  background-image: url(../images/sessions/aws-reinvent-sessions-hero-presenters-panel-mobile.jpg);
  background-position: center top;
}

.page-certifications .page-header {
  background-image: url(../images/certifications/aws-reinvent-certifications-hero-development-team-collaborating-mobile.jpg);
}

.page-activities .page-header {
  background-image: url(../images/activities/aws-reingent-activities-hero-presenter-at-whiteboard-mobile.jpg);
}

.page-global-partner-summit .page-header {
  background-image: url(../images/activities/global-partner-summit/aws-reinvent-global-partner-summit-hero-panel-discussion-mobile.jpg);
}

.page-inustry-pre-day .page-header, .page-mobile .page-header {
  background-image: url(../images/sessions/aws-reinvent-technicaldeepdive-mobile-hero-1.jpg);
}

.page-hackathon .page-header {
  background-image: url(../images/activities/hackathon/aws-reinvent-hackathon-hero-hackers-collaborating-mobile.jpg);
}

.page-gameday .page-header {
  background-image: url(../images/activities/gameday/aws-reinvent-gameday-hero-circuitry-mobile.jpg);
}

.page-security-jam .page-header {
  background-image: url(../images/sessions/aws-reinvent-technicaldeepdive-mobile-hero-1.jpg);
}

.page-after-hours .page-header {
  background-image: url(../images/after-hours/aws-reinvent-after-hours-hero-attendees-celebrate-confetti-mobile.jpg);
}

.page-resources .page-header {
  background-image: url(../images/resources/aws-reinvent-resources-hero-bean-bag-lounge-mobile.jpg);
}

.page-sponsors .page-header {
  background-image: url(../images/sponsors/aws-reinvent-sponsors-hero-crowded-conference-hall-mobile.jpg);
}

.page-sponsorship .page-header {
  background-image: url(../images/sponsors/aws-reinvent-sponsorship-hero-crowded-conference-hall-mobile.jpg);
}

.page-replay .page-header {
  background-image: url(../images/after-hours/replay/aws-reinvent-replay-hero-cell-phone-lights-crowd-mobile.jpg);
}

.page-pub-crawl .page-header {
  background-image: url(../images/after-hours/pub-crawl/aws-reinvent-pubcrawl-hero-mobile.jpg);
}

.page-executive-summit .page-header {
  background-image: url(../images/executive-summit/aws-reinvent-executive-summit-hero-presenter-mobile.jpg);
}

.page-travel .page-header {
  background-image: url(../images/travel/aws-reinvent-travel-hero-las-vegas-venetian-hotel-interior-mobile.jpg);
  background-position: center bottom;
}

.page-terms .page-header {
  background-image: url(../images/terms/aws-reinvent-terms-hero-amazon-logo-mobile.jpg);
}

.page-header .text-wrap {
  display: -webkit-box;
  display: -moz-box;
  display: box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -moz-box-align: center;
  -spec-box-align: center;
  box-align: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -o-align-items: center;
  -spec-align-items: center;
  align-items: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -spec-box-pack: center;
  box-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  -spec-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  padding: 40px 0 0;
  height: 480px;
}

.page-header .bump-wrap {
  padding: 0;
}

.no-flexbox .page-header .bump-wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.no-flexbox.no-csstransforms .page-header .bump-wrap {
  margin-top: -42px;
  left: 20%;
}

.page-header .page-headline {
  font-size: 18px;
  font-size: 1.8rem;
  border: 1px solid #fff;
  display: inline-block;
  font-family: "AvenirNextLTW01-Regular", verdana, sans-serif;
  letter-spacing: .25em;
  line-height: 1.36em;
  margin: 0;
  max-width: 280px;
  padding: 12px 8px 11px 13px;
  text-align: center;
  text-transform: uppercase;
}

.page-header .bump {
  font-size: 14px;
  font-size: 1.4rem;
  color: #2c2c2c;
  position: absolute;
  margin: 0;
}

.page-header .bump-left {
  left: 0;
  bottom: 100%;
  padding: 4px 10px 1px;
}

.page-header .bump-right {
  right: 0;
  top: 100%;
  padding: 3px 10px 2px;
}

/**
* ==================================================
*		Masthead - Mobile 2
* ==================================================
*/
@media screen and (min-width: 40em) {
  .page-agenda .page-header {
    background-image: url(../images/agenda/aws-reinvent-agenda-hero-packed-conference-room.jpg);
  }
  .page-training .page-header {
    background-image: url(../images/training/aws-reinvent-training-hero-smiling-technician-coaches-attendee.jpg);
    background-position: left center;
  }
  .page-sessions .page-header, .page-keynotes .page-header, .page-pressroom .page-header {
    background-image: url(../images/sessions/aws-reinvent-sessions-hero-presenters-panel.jpg);
  }
  .page-certifications .page-header {
    background-image: url(../images/certifications/aws-reinvent-certifications-hero-development-team-collaborating.jpg);
  }
  .page-activities .page-header {
    background-image: url(../images/activities/aws-reingent-activities-hero-presenter-at-whiteboard.jpg);
  }
  .page-global-partner-summit .page-header {
    background-image: url(../images/activities/global-partner-summit/aws-reinvent-global-partner-summit-hero-panel-discussion.jpg);
  }
  .page-global-partner-summit .page-header, .page-mobile .page-header {
    background-image: url(../images/sessions/aws-reinvent-technicaldeepdive-hero-1.jpg);
  }
  .page-hackathon .page-header {
    background-image: url(../images/activities/hackathon/aws-reinvent-hackathon-hero-hackers-collaborating.jpg);
  }
  .page-gameday .page-header {
    background-image: url(../images/activities/gameday/aws-reinvent-gameday-hero-circuitry.jpg);
  }
  .page-security-jam .page-header {
    background-image: url(../images/sessions/aws-reinvent-technicaldeepdive-hero-1.jpg);
  }
  .page-after-hours .page-header {
    background-image: url(../images/after-hours/aws-reinvent-after-hours-hero-attendees-celebrate-confetti.jpg);
  }
  .page-resources .page-header {
    background-image: url(../images/resources/aws-reinvent-resources-hero-bean-bag-lounge.jpg);
  }
  .page-sponsors .page-header {
    background-image: url(../images/sponsors/aws-reinvent-sponsors-hero-crowded-conference-hall.jpg);
  }
  .page-sponsorship .page-header {
    background-image: url(../images/sponsors/aws-reinvent-sponsorship-hero-crowded-conference-hall.jpg);
  }
  .page-replay .page-header {
    background-image: url(../images/after-hours/replay/aws-reinvent-replay-hero-cell-phone-lights-crowd.jpg);
  }
  .page-industry-pre-day .page-header {
    background-image: url(../images/sessions/aws-reinvent-technicaldeepdive-hero-1.jpg);
  }
  .page-pub-crawl .page-header {
    background-image: url(../images/after-hours/pub-crawl/aws-reinvent-pubcrawl-hero.jpg);
  }
  .page-executive-summit .page-header {
    background-image: url(../images/executive-summit/aws-reinvent-executive-summit-hero-presenter.jpg);
    background-position: right center;
  }
  .page-travel .page-header {
    background-image: url(../images/travel/aws-reinvent-travel-hero-las-vegas-venetian-hotel-interior.jpg);
  }
  .page-terms .page-header {
    background-image: url(../images/terms/aws-reinvent-terms-hero-amazon-logo.jpg);
  }
}

/**
* ==================================================
*		Masthead - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-header \
 .page-headline {
    font-size: 28px;
    font-size: 2.8rem;
    letter-spacing: .45em;
    max-width: 728px;
    padding: 14px 6px 12px 10px;
  }
}

/**
* ==================================================
*		Masthead - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-header .text-wrap {
    padding: 76px 0 0;
    height: 410px;
  }
  .page-header .bump-wrap .no-flexbox.no-csstransforms {
    margin-top: -42px;
  }
  .page-header .page-headline {
    font-size: 36px;
    font-size: 3.6rem;
    border: 3px solid #fff;
    max-width: 984px;
    padding: 16px 3px 14px 19px;
  }
  .page-header .bump {
    font-size: 20px;
    font-size: 2rem;
  }
  .page-header .bump-left {
    padding: 10px 28px 7px;
  }
  .page-header .bump-right {
    padding: 7px 28px 10px;
  }
}

/**
* ==================================================
*		Wave Pattern Backgrounds
* ==================================================
*/
.wave-pattern {
  background: url(../images/backgrounds/wave-white-2.png) center center no-repeat;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.wave-1 .wave-pattern {
  background-image: url(../images/backgrounds/wave-white-1.png);
}

.wave-2 .wave-pattern {
  background-image: url(../images/backgrounds/wave-white-2.png);
}

.wave-3 .wave-pattern {
  background-image: url(../images/backgrounds/wave-white-3.png);
}

.page-header .wave-pattern {
  background-position: center -100px;
}

.sections .wave-pattern {
  background-position: center -700px;
}

/**
* ==================================================
*		Page Intro - Base
* ==================================================
*/
.page-intro {
  background: #fff;
}

.page-intro .central-column {
  padding-top: 40px;
  padding-bottom: 40px;
}

.page-intro .register-now {
  position: absolute;
  right: 20px;
  top: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.no-csstransforms .page-intro .register-now {
  margin-top: -20px;
}

.page-intro h3 {
  margin-bottom: .5625em;
}

.page-intro .col-1-2 {
  padding-bottom: 20px;
}

.page-intro .col-1-2:last-of-type {
  padding-bottom: 0;
}

/**
* ==================================================
*		Page Intro - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-intro .col-1-2 {
    padding-bottom: 0;
  }
  .page-intro .section-header {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
}

/**
* ==================================================
*		Page Intro - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-intro .central-column {
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .page-intro .register-now {
    padding: 23px 14px 27px;
    right: 1.53061%;
  }
  .no-csstransforms .page-intro .register-now {
    margin-top: -35px;
  }
  .page-intro .section-header {
    position: absolute;
    top: 0;
  }
  .page-intro .headline-s1 {
    background: #fff;
    top: -25px;
  }
  .page-intro .col-1-2 {
    padding-bottom: 0;
  }
}

/**
* ==================================================
*		In-page Sidebar Nav - Base
* ==================================================
*/
#page-nav {
  display: none;
  position: relative;
  pointer-events: none;
  z-index: 200;
}

#page-nav .page-nav-inner {
  position: absolute;
  padding-top: 140px;
  width: 100%;
}

#page-nav .page-nav-inner.affix-top .nav li:first-of-type a {
  color: #fff;
}

#page-nav .page-nav-inner.affix-top .nav li:first-of-type:before {
  display: block;
}

#page-nav .page-nav-inner.affix {
  position: fixed;
  top: 0;
}

#page-nav .nav {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 14.28571%;
  float: left;
  font-size: 16px;
  font-size: 1.6rem;
  pointer-events: auto;
  position: absolute;
  right: 0;
  color: #a8a8a8;
  list-style: none;
  line-height: 1.375em;
}

#page-nav .nav li {
  padding: 5px 0 5px 24px;
  position: relative;
}

#page-nav .nav li:before {
  background-position: -50px -50px;
  content: '';
  display: none;
  height: 36px;
  left: 0;
  margin-top: -18px;
  position: absolute;
  top: 50%;
  width: 6px;
}

#page-nav .nav .active,
#page-nav .nav a:hover {
  color: #fff;
}

#page-nav .nav .active:before {
  display: block;
}

/**
* ==================================================
*		In-page Sidebar Nav - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  #page-nav {
    display: block;
  }
}

/**
* ==================================================
*		Section Framework - Base
* ==================================================
*/
.sections {
  overflow: hidden;
  padding: 40px 0;
  position: relative;
  background: #000;
  background: -webkit-linear-gradient(#000, #333);
  background: -o-linear-gradient(#000, #333);
  background: -moz-linear-gradient(#000, #333);
  background: linear-gradient(#000, #333);
}

.page-section {
  padding: 40px 0;
  z-index: 2;
  position: relative;
  background-size: cover;
  background-position: center center;
}

.page-section.section-has-rule {
  padding-bottom: 0;
}

.page-section.section-poster {
  padding: 40px 0;
}

.section-first {
  padding-top: 0;
}

.section-last {
  padding-bottom: 0;
}

.subsection {
  padding: 20px 0;
}

.subsection-first {
  padding-top: 0;
}

.subsection-last {
  padding-bottom: 0;
}

.section-header {
  margin-bottom: 20px;
  position: relative;
}

.section-header .headline-s3 {
  margin-bottom: 0;
}

.col {
  padding-top: 20px;
  padding-bottom: 20px;
}

.col-first {
  padding-top: 0;
}

.col-last {
  padding-bottom: 0;
}

.col-img {
  margin: 0 -20px;
}

/**
* ==================================================
*		Section Framework - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-section.section-poster {
    margin: 0;
    padding: 80px 0;
  }
  .page-section.section-poster .text {
    max-width: 480px;
    margin: 0 auto;
  }
  .page-section.section-poster .button-wrap {
    text-align: center;
  }
  .col {
    padding-top: 0;
    padding-bottom: 0;
  }
  .col-img {
    margin: 0;
  }
  .section-header .inner {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .section-header .intro-text {
    width: 50%;
  }
}

/**
* ==================================================
*		Section Framework - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .sections {
    padding: 130px 0;
  }
  .page-section {
    padding: 50px 0;
  }
  .section-first {
    padding-top: 0;
  }
  .section-last {
    padding-bottom: 0;
  }
  .subsection {
    padding: 25px 0;
  }
  .subsection-first {
    padding-top: 0;
  }
  .subsection-last {
    padding-bottom: 0;
  }
  .section-header {
    margin-bottom: 36px;
  }
  .section-header .inner {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
  }
  .section-header .intro-text {
    width: 50%;
  }
}

/**
* ==================================================
*		Schedule Section - Base
* ==================================================
*/
.section-schedule .headline-s1 {
  margin-bottom: 0;
}

.section-schedule .headline-s1 .date {
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  color: #a8a8a8;
  letter-spacing: .09em;
  margin-right: .5em;
  text-transform: none;
}

.section-schedule .event {
  letter-spacing: .08em;
  margin-bottom: 20px;
}

.section-schedule .event .time p {
  margin: 0;
}

.section-schedule .event .desc {
  overflow: hidden;
}

.section-schedule .event .desc p {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 0;
}

.section-schedule .event .desc span {
  font-size: 14px;
  font-size: 1.4rem;
}

.section-schedule .event .desc .name {
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
}

.section-schedule .event .desc .name a {
  box-shadow: none;
}

.section-schedule .event ul {
  margin-bottom: 0;
}

.section-schedule .event li {
  margin-bottom: 7px;
  padding: 0;
}

.section-schedule .event li:before {
  display: none;
}

.section-schedule .event li:last-of-type {
  margin-bottom: 0;
}

.section-schedule .event.event-session .name {
  color: #fd9526;
}

.section-schedule .event.event-session .name a:hover {
  box-shadow: inset 0 -1px 0 0 #fd9526;
}

.section-schedule .event.event-after-hours .name {
  color: #008fff;
}

.section-schedule .event.event-after-hours .name a:hover {
  box-shadow: inset 0 -1px 0 0 #008fff;
}

.section-schedule .event.event-other a:hover {
  box-shadow: inset 0 -1px 0 0 #fff;
}

.section-schedule .event:last-of-type {
  margin-bottom: 0;
}

/**
* ==================================================
*		Schedule Section - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .section-schedule .event {
    margin-bottom: 20px;
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .section-schedule .event .desc .name {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

/**
* ==================================================
*		Schedule Section - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .section-schedule .event {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
    letter-spacing: .08em;
  }
  .section-schedule .event .time {
    float: left;
    padding-top: 1px;
    width: 220px;
  }
}

/**
* ==================================================
*		Modals - Base
* ==================================================
*/
.modal-ground {
  background: #000;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.modal {
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity .5s, visibility 0s .5s, pointer-events 0s .5s;
}

.modal.active {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition: opacity .5s, visibility 0s, pointer-events 0s;
}

.modal strong {
  color: #FF7F00;
  font-weight: bold;
}

.modal .modal-scroll {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  overflow-y: scroll;
  z-index: 1;
}

.modal .modal-content {
  position: relative;
  padding: 40px 0;
}

.modal .page-section,
.modal .col {
  padding: 0;
}

.modal .modal-tools {
  position: relative;
  z-index: 2;
}

.modal .close-modal {
  background: #000;
  border: 1px solid #fff;
  box-shadow: none;
  display: block;
  height: 30px;
  position: absolute;
  right: 20px;
  top: 20px;
  width: 30px;
}

.modal .close-modal .icon {
  background-position: -180px -5px;
  height: 16px;
  left: 50%;
  margin: -8px 0 0 -8px;
  position: absolute;
  top: 50%;
  width: 16px;
}

.modal .close-modal:hover {
  background: #fff;
}

.modal .close-modal:hover .icon {
  background-position: -180px -55px;
}

.modal .modal-meta {
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  letter-spacing: 0.15em;
  margin: 20px 0 10px;
}

.modal .modal-meta span {
  border-left: 1px solid #848484;
  padding-left: 20px;
  padding-right: 10px;
}

.modal .modal-meta span:first-child {
  border-left: none;
  padding-left: 0;
}

.modal .modal-meta span strong {
  color: white;
  text-transform: uppercase;
}

/**
* ==================================================
*   Modals - mobile
* ==================================================
*/
@media screen and (min-width: 23em){
  body.page-training .modal .modal-meta span {
  border-left: none;
  padding-left: 0;
  padding-right: 10px;
  display:block;
}
}

/**
* ==================================================
*		Modals - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .modal .col-main {
    width: 100%;
  }
  .modal .col-1-2 {
    float: left;
    width: 50%;
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .modal .modal-meta {
    margin-bottom: .75em;
    margin-top: 2.75em;
  }
}

/**
* ==================================================
*		Modals - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .modal .close-modal {
    right: 0;
    top: 56px;
    height: 50px;
    width: 50px;
  }
  .modal .close-modal .icon {
    background-position: -175px 0;
    height: 26px;
    margin: -13px 0 0 -13px;
    width: 26px;
  }
  .modal .close-modal:hover .icon {
    background-position: -175px -50px;
  }
  .modal .modal-meta {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .modal .modal-content {
    padding: 56px 0;
  }
}

/**
* ==================================================
*		Sponsor Modals - Base
* ==================================================
*/
.sponsor-modals {
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity .5s, visibility 0s .5s, pointer-events 0s .5s;
}

.sponsor-modals.active {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition: opacity .5s, visibility 0s, pointer-events 0s;
}

.sponsor-modal .close-modal {
  right: 20px;
  border-color: #2c2c2c;
  background: #fff;
  top: 20px;
}

.sponsor-modal .close-modal .icon {
  background-position: -180px -55px;
}

.sponsor-modal .close-modal:hover {
  background: #2c2c2c;
}

.sponsor-modal .close-modal:hover .icon {
  background-position: -180px -5px;
}

.sponsor-modal .central-column {
  padding: 20px;
}

.sponsor-modal .modal-content {
  background: #fff;
  margin: 0 auto;
  padding: 0;
  position: relative;
}

.sponsor-modal .image {
  padding: 60px 20px 20px;
  text-align: center;
}

.sponsor-modal .image img {
  max-height: 200px;
  max-width: 240px;
  height: auto;
  width: auto;
}

.sponsor-modal .text {
  padding: 20px;
}

.sponsor-modal .sponsor-header {
  margin-bottom: 40px;
}

.sponsor-modal .headline-s4 {
  font-size: 22px;
  font-size: 2.2rem;
  margin-bottom: 6px;
}

.sponsor-modal .level {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 10px;
}

.sponsor-modal .description {
  border-top: 1px solid #2c2c2c;
  padding-top: 10px;
}

.sponsor-modal .modal-paging {
  clear: both;
  padding: 0 20px 15px;
}

.sponsor-modal .modal-paging a {
  margin: 0;
  color: #d8d8d8;
  transition: color .5s;
  box-shadow: none;
}

.sponsor-modal .modal-paging a:hover {
  color: #2c2c2c;
}

.sponsor-modal .modal-paging .prev {
  float: left;
}

.sponsor-modal .modal-paging .next {
  float: right;
}

/**
* ==================================================
*		Sponsor Modals - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .sponsor-modal .central-column {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 1180px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .sponsor-modal .cols {
    font-size: 0;
  }
  .sponsor-modal .image,
  .sponsor-modal .text {
    display: inline-block;
    padding: 40px 0 20px;
    vertical-align: middle;
    width: 50%;
  }
  .sponsor-modal .image {
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
  }
  .sponsor-modal .text {
    padding-right: 20px;
  }
  .sponsor-modal header.sponsor-header a {
    font-size:1.7rem;
  }

}

/**
* ==================================================
*		Sponsor Modals - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .sponsor-modal .close-modal {
    right: 50px;
    top: 50px;
  }
  .sponsor-modal .close-modal .icon {
    background-position: -175px -50px;
  }
  .sponsor-modal .close-modal:hover .icon {
    background-position: -175px 0;
  }
  .sponsor-modal .modal-content {
    margin: 0 auto;
    padding: 0;
    position: relative;
  }
  .sponsor-modal .image,
  .sponsor-modal .text {
    padding: 50px 0 36px;
  }
  .sponsor-modal .image {
    padding-left: 50px;
    padding-right: 50px;
  }
  .sponsor-modal .text {
    padding-right: 50px;
  }
  body.page-after-hours .sponsor-modal .text {
    padding-left: 50px;
  }

  .sponsor-modal .sponsor-header {
    margin-bottom: 60px;
  }
  .sponsor-modal .headline-s4 {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .sponsor-modal .link {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .sponsor-modal .level {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 1.375em;
  }
  .sponsor-modal .description {
    padding-top: 20px;
  }
  .sponsor-modal .modal-paging {
    padding: 0 50px 20px;
  }
}

/**
* ==================================================
*		Wave Parallax Module // Home and 404
* ==================================================
*/
.wave-parallax {
  background: #000 url(../images/backgrounds/wave-fallback-mobile.jpg) center center/cover no-repeat;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-perspective: 1600px;
  -moz-perspective: 1600px;
  perspective: 1600px;
}

.wave-parallax .layers {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}

.no-csstransforms3d .wave-parallax .layers {
  display: none;
}

.wave-parallax .layer {
  position: absolute;
  bottom: -100px;
  right: -100px;
  top: -100px;
  left: -100px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.wave-parallax .layer-1 {
  background: url(../images/backgrounds/wave-orange.png) center center no-repeat;
  -webkit-transform: translateZ(-100px);
  -moz-transform: translateZ(-100px);
  -ms-transform: translateZ(-100px);
  -o-transform: translateZ(-100px);
  transform: translateZ(-100px);
}

.wave-parallax .layer-2 {
  background: url(../images/backgrounds/wave-white.png) center center no-repeat;
}

.wave-parallax .layer-3 {
  background: url(../images/backgrounds/wave-blue.png) center center no-repeat;
  -webkit-transform: translateZ(200px);
  -moz-transform: translateZ(200px);
  -ms-transform: translateZ(200px);
  -o-transform: translateZ(200px);
  transform: translateZ(200px);
}

.wave-parallax::before {
  /* never visible - this is used in jQuery to check the device type */
  content: 'web';
  display: none;
}

.touch .wave-parallax::before {
  /* never visible - this is used in jQuery to check the device type */
  content: 'mobile';
}

.wave-parallax + .text-wrap {
  pointer-events: none;
}

/**
* ==================================================
*		Wave Parallax Module - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .wave-parallax {
    background-image: url(../images/backgrounds/wave-fallback.jpg);
  }
}

/**
* ==================================================
*		Wave Parallax Module - Tablet
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .csstransforms3d .wave-parallax {
    background-image: none;
  }
  .csstransforms3d .wave-parallax .layers {
    display: block;
  }
}

/**
* ==================================================
*		Template adjustment for white background // Terms and Sponsors
* ==================================================
*/
.page-template-pale .page-intro {
  background: #2c2c2c;
}

.page-template-pale .sections {
  background: #fff;
}

.page-template-pale #page-nav .page-nav-inner.affix-top .nav li:first-of-type a {
  color: #2c2c2c;
}

.page-template-pale #page-nav .nav li:before {
  background-position: -50px 0;
}

.page-template-pale #page-nav .nav .active,
.page-template-pale #page-nav .nav a:hover {
  color: #2c2c2c;
}

.page-template-pale .wave-pattern {
  display: none;
}

/**
* ==================================================
*		Home - Base
* ==================================================
*/
.page-home .page-header .wave-pattern {
  display: none;
}

.page-home .page-header .page-headline span {
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  letter-spacing: 0;
}

.page-home .sections {
  padding-bottom: 0;
}

.page-home .col-main {
  width: 100%;
}

.page-home .page-section .headline-s1 {
  margin-bottom: .8em;
}

.page-home #section-features .subsection,
.page-home #section-features .col,
.page-home #section-pass .subsection,
.page-home #section-pass .col,
.page-home #section-certifications .subsection,
.page-home #section-certifications .col,
.page-home #section-travel .subsection,
.page-home #section-travel .col,
.page-home #section-activities .subsection,
.page-home #section-activities .col {
  padding-bottom: 0;
}

.page-home #section-features .headline-s2 {
  margin-bottom: 1.375em;
}

.page-home #section-features strong {
  color: #fd9526;
}

.page-home #section-pass {
  background: rgba(44, 44, 44, 0.9);
  padding: 40px 0;
  text-align: center;
}

.page-home #section-pass img {
  margin-bottom: 14px;
}

.page-home #section-pass .headline-s1 {
  margin-bottom: 0;
}

.page-home #section-pass .cost {
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  margin-bottom: 0;
}

.page-home #section-pass .register-now {
  display: block;
  text-align: center;
  max-width: 280px;
  margin: 20px auto 0;
}

.page-home #section-training {
  background-image: url(../images/home/aws-reinvent-instructor-using-white-board.jpg);
}

.page-home #section-sponsors {
  background: #fff;
  font-size: 0;
  padding-bottom: 20px;
}

.page-home #section-sponsors .col-text {
  padding-bottom: 40px;
}

.page-home #section-sponsors .col-text .button {
  margin-bottom: 10px;
  margin-right: 10px;
}

.page-home #section-sponsors .sponsors .section-header {
  text-align: center;
}

.page-home #section-sponsors .sponsor {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  margin-bottom: 20px;
  width: 50%;
}

.page-home #section-sponsors .sponsor img {
  width: auto;
  height: auto;
  max-width: 120px;
  max-height: 60px;
}

/**
* ==================================================
*		Home - Mobile 2
* ==================================================
*/
@media screen and (max-width: 39.9375em) {
  .page-home .page-intro .headline-s1 {
    font-size: 22px;
    font-size: 2.2rem;
    border: none;
    padding: 0;
    margin: 0;
  }
}

@media screen and (min-width: 40em) {
  .page-home #section-sponsors {
    padding-bottom: 0;
  }
  .page-home #section-sponsors .sponsor {
    width: 33.3333%;
    margin-bottom: 40px;
  }
  .page-home #section-sponsors .sponsor img {
    max-width: 140px;
    max-height: 80px;
  }
}

/**
* ==================================================
*		Home - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-home #section-features .headline-s2 {
    margin-bottom: 1.57em;
  }
  .page-home #section-pass {
    padding: 30px 0;
  }
  .page-home #section-pass .col {
    padding-bottom: 10px;
    padding-top: 10px;
    width: 100%;
  }
  .page-home #section-sponsors .col-text {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
    width: 50%;
  }
  .page-home #section-sponsors .sponsors {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
}

/**
* ==================================================
*		Home - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-home .page-header .text-wrap {
    height: 640px;
  }
  .page-home .page-header .page-headline {
    font-size: 48px;
    font-size: 4.8rem;
    padding: 22px 6px 13px 29px;
    text-transform: none;
  }
  .page-home #section-pass {
    padding: 66px 0;
    text-align: left;
  }
  .page-home #section-pass .col {
    padding-top: 0;
    padding-bottom: 0;
    width: 50%;
  }
  .page-home #section-pass .pitch {
    display: inline-block;
  }
  .page-home #section-pass .cost {
    font-size: 22px;
    font-size: 2.2rem;
    color: #fff;
    display: inline-block;
    letter-spacing: .45em;
    font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
    margin-bottom: .57em;
  }
  .page-home #section-pass .opening {
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    display: inline-block;
    font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
    letter-spacing: .15em;
    margin-bottom: 0;
    text-transform: uppercase;
  }
  .page-home #section-pass .register-now {
    margin: 0 24px 0 0;
    float: left;
  }
  .page-home .page-intro .central-column {
    padding-top: 52px;
  }
  .page-home #section-sponsors .col-text {
    float: left;
    width: 35.71429%;
  }
  .page-home #section-sponsors .sponsors {
    padding-top: 11px;
    float: left;
    width: 64.28571%;
  }
}

/**
* ==================================================
*		Home - Desktop 2
* ==================================================
*/
@media screen and (min-width: 75em) {
  .page-home #section-sponsors .sponsor {
    width: 25%;
  }
  .page-home #section-pass .col,
  .page-home .col-1-2 {
    float: left;
    margin-right: 7.14286%;
    width: 42.85714%;
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .page-home .col-img {
    float: left;
    width: 50%;
    margin: 0;
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .page-home .col-img.col-r {
    float: right;
  }
}

/**
* ==================================================
*		/Certifications - Base
* ==================================================
*/
.page-certifications #section-benefits .col {
  padding-top: 0;
}

.page-certifications #section-benefits .col-first {
  padding-bottom: 0;
}

.page-certifications .list {
  margin: 0;
}

.page-certifications #section-certification-snipe {
  background: rgba(44, 44, 44, 0.9);
  text-align: center;
  padding: 30px 0;
}

.page-certifications #section-certification-snipe .col {
  padding-bottom: 10px;
  padding-top: 10px;
  width: 100%;
}

.page-certifications #section-certification-snipe #section-badge img {
  display: inline-block;
  width: 200px;
  height: auto;
}

.page-certifications #section-certification-snipe .headline-s2 {
  margin-bottom: 14px;
}

.page-certifications .reception-details .label,
.page-certifications .reception-details .details {
  color: #fff;
  letter-spacing: .04em;
}

.page-certifications .reception-details .label {
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
}


/**
* ==================================================
*		/Certifications - Mobile 2
* ==================================================
*/
@media screen and (min-width: 40em) {
  .page-certifications .reception-details .label,
  .page-certifications .reception-details .details {
    font-size: 18px;
    font-size: 1.8rem;
    float: left;
    width: 50%;
  }
  .page-certifications .reception-details .label {
    font-family: "AvenirNextLTW01-Regular", verdana, sans-serif;
  }
  .page-certifications .reception-details .details {
    font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  }
}

/**
* ==================================================
*		/Certifications - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-certifications #section-certification-snipe #section-badge img {
    width: 300px;
  }
}

/**
* ==================================================
*		/Certifications - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-certifications #section-certification-snipe {
    padding: 66px 0;
    text-align: left;
  }
  .page-certifications #section-certification-snipe .col {
    padding-bottom: 0;
    padding-top: 0;
    width: 50%;
  }
  .page-certifications #section-certification-snipe #section-badge {
    text-align: center;
  }
}

/**
* ==================================================
*		/executive-summit
* ==================================================
*/
.page-executive-summit #section-intro .subsection,
.page-executive-summit #section-intro .col {
  padding-bottom: 0;
}

/**
* ==================================================
*		/global-partner-summit
* ==================================================
*/
.page-global-partner-summit #section-attendance .col {
  padding-bottom: 0;
}

/**
* ==================================================
*   /industry-pre-day
* ==================================================
*/
.page-industry-pre-day #section-attendance .col {
  padding-bottom: 0;
}

/**
* ==================================================
*		/replay
* ==================================================
*/
.page-replay .page-header .page-headline {
  text-transform: none;
}

/**
* ==================================================
*   /pub-crawl
* ==================================================
*/
.page-pub-crawl .page-header .page-headline {
  text-transform: none;
}

/**
* ==================================================
*		/resources
* ==================================================
*/
.page-resources .subsection,
.page-resources .col {
  padding-top: 0;
}

.page-resources #section-travel,
.page-resources #section-event-detail,
.page-resources #section-additional-information {
  padding-top: 20px;
}

/**
* ==================================================
*		/resources - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-resources .page-intro .feeds,
  .page-resources .page-intro .blogs {
    float: left;
    width: 50%;
  }
  .page-resources #section-justification-letter .short-rule {
    margin-top: 28px;
    margin-bottom: 40px;
  }
  .page-resources #section-justification-letter .subsection {
    margin-bottom: 0;
  }
  .page-resources #section-justification-letter p, .page-resources #section-reserved-seat-faq p, .page-resources #section-reserved-seat-faq ul{
    max-width: 900px;
  }
  .page-resources #section-justification-letter ul {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
  }
  .page-resources #section-justification-letter ul li {
    margin-bottom: 1.375em;
  }
}

/**
* ==================================================
*		/sessions - Base
* ==================================================
*/
.page-sessions #section-intro .subsection,
.page-sessions #section-intro .col {
  padding-top: 0;
}

.page-sessions #section-levels h3 span {
  display: block;
  text-transform: none;
  font-family: "AvenirNextLTW01-Medium", verdana, sans-serif;
  color: #2bd69d;
  letter-spacing: 0;
}

.page-sessions #section-offerings .subsection,
.page-sessions #section-offerings .col {
  padding-top: 0;
}

.page-sessions #section-tracks .section-header {
  margin-bottom: 40px;
}

.page-sessions #section-tracks .tags {
  color: #2bd69d;
  font-family: "AvenirNextLTW01-Medium", verdana, sans-serif;
}

.page-sessions #section-tracks .icon {
  height: 75px;
  margin-bottom: 14px;
  width: 100px;
  opacity: .7;
}

.page-sessions #section-tracks .icon-alexa {
  background-position: -1186px 0;
  width: 62px;
}

.page-sessions #section-tracks .icon-architecture {
  background-position: -1256px 0;
  width: 61px;
}

.page-sessions #section-tracks .icon-data-analytics {
  background-position: -75px 0;
  width: 61px;
}

.page-sessions #section-tracks .icon-business-apps {
  background-position: -150px 0;
  width: 77px;
}

.page-sessions #section-tracks .icon-cdn {
  width: 73px;
}

.page-sessions #section-tracks .icon-compute {
  background-position: -250px 0;
  width: 62px;
}

.page-sessions #section-tracks .icon-containers {
  background-position: -325px 0;
  width: 69px;
}

.page-sessions #section-tracks .icon-databases {
  background-position: -400px 0;
  width: 65px;
}

.page-sessions #section-tracks .icon-dev-tools {
  background-position: -475px 0;
  width: 74px;
}

.page-sessions #section-tracks .icon-enterprise {
  background-position: -550px 0;
  width: 64px;
}

.page-sessions #section-tracks .icon-iot {
  background-position: -625px 0;
  width: 67px;
}

.page-sessions #section-tracks .icon-machine-learning {
  background-position: -700px 0;
  width: 50px;
}

.page-sessions #section-tracks .icon-mobile {
  background-position: -750px 0;
  width: 67px;
}

.page-sessions #section-tracks .icon-networking {
  background-position: -825px 0;
  width: 65px;
}

.page-sessions #section-tracks .icon-security {
  background-position: -900px 0;
  width: 57px;
}

.page-sessions #section-tracks .icon-security-services {
  background-position: -1325px 0;
  width: 69px;
}

.page-sessions #section-tracks .icon-storage {
  background-position: -1050px 0;
  width: 66px;
}

.page-sessions #section-tracks .icon-serverless-computing {
  background-position: -975px 0;
  width: 67px;
}

.page-sessions #section-tracks .icon-windows {
  background-position: -1125px 0;
  width: 60px;
}

.page-sessions #section-workshops {
  background: rgba(0, 0, 0, 0.4);
}

.page-sessions #section-chats-demos .col {
  padding-top: 0;
}

.page-sessions #section-revisit-2015 .list {
  margin-bottom: 0;
}

.page-sessions #section-revisit-2015 .col {
  padding-top: 0;
}

/**
* ==================================================
*		/sessions - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-sessions #section-tracks .col-1-2 {
    margin-bottom: 40px;
  }
  .page-sessions #section-tracks .col-1-2:last-of-type {
    margin-bottom: 0;
  }
}

/**
* ==================================================
*		/sponsors - Base
* ==================================================
*/
.page-sponsors .sections {
  padding-top: 0;
}

.page-sponsors .page-section {
  padding: 0 0 20px 0;
}

.page-sponsors .section-last {
  padding: 0;
}

.page-sponsors .sponsors {
  font-size: 0;
}

.page-sponsors .section-header .rule {
  transform: translateY(-25px);
  padding-top: 0;
  position: relative;
  z-index: 1;
}

.page-sponsors .sponsor {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 20px;
  text-align: center;
  transition: opacity .2s;
  position: relative;
}

.page-sponsors .sponsor img {
  max-width: 100px;
  max-height: 60px;
  height: auto;
  width: auto;
}

.page-sponsors .sponsor a {
  box-shadow: none;
}

.page-sponsors .sponsor a:hover .icon {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

.page-sponsors .sponsor .icon {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #2c2c2c;
  display: block;
  height: 51px;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 51px;
  margin: -25px 0 0 -25px;
  opacity: 0;
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
  -webkit-transition: -webkit-transform .3s, opacity .3s;
  transition: transform .3s, opacity .3s;
}

.page-sponsors .sponsor .icon:before {
  display: block;
  content: '';
  background-position: -229px -4px;
  height: 27px;
  left: 50%;
  margin: -13px 0 0 -13px;
  position: absolute;
  top: 50%;
  width: 27px;
}

.page-sponsors #section-diamond .sponsor,
.page-sponsors #section-platinum .sponsor,
.page-sponsors #section-gold-premium .sponsor,
.page-sponsors #section-gold .sponsor,
.page-sponsors #section-technology .sponsor,
.page-sponsors #section-silver .sponsor {
  width: 50%;
}

.page-sponsors .sponsor-list ul {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  margin-bottom: 0;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
}

.page-sponsors .sponsor-list li {
  padding: 0;
  transition: opacity .2s;
}

.page-sponsors .sponsor-list li:before {
  display: none;
  padding: 0;
}

/** Competency Filter */
.competencies-filter .controls {
  padding: 28px 0 20px;
}

.competencies-filter a {
  box-shadow: none;
}

.competencies-filter .toggle-competencies {
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  letter-spacing: .15em;
  line-height: 1.375em;
  margin: 0 40px 0 0;
  padding-right: 22px;
  position: relative;
  text-transform: uppercase;
}

.competencies-filter .toggle-competencies:after {
  background-position: 0 -50px;
  display: block;
  height: 10px;
  content: '';
  width: 14px;
  position: absolute;
  top: 50%;
  right: -1px;
  margin-top: -7px;
  left: auto;
  transform-origin: center center;
  -webkit-transition: -webkit-transform .5s;
  transition: transform .5s;
}

.competencies-filter .toggle-competencies.active:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.competencies-filter .rule-wrap {
  display: none;
}

.competencies-filter .current-filter {
  color: #d8d8d8;
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  letter-spacing: .15em;
  line-height: 1.375em;
  text-transform: uppercase;
  transition: color .5s;
}

.competencies-filter .current-filter.full {
  color: #2c2c2c;
}

.competencies-filter .options-panel {
  position: relative;
  margin-left: -10px;
  z-index: 200;
}

.competencies-filter .options-panel.active .options {
  opacity: 1;
  pointer-events: auto;
  margin-top: 0;
}

.competencies-filter .options-panel .options {
  position: absolute;
  border: 1px solid #2c2c2c;
  padding: 20px 10px;
  background: #fff;
  opacity: 0;
  margin-top: -10px;
  pointer-events: none;
  transition: opacity .5s, margin-top .5s, pointer-events 0s;
}

.competencies-filter .options-panel ul {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}

.competencies-filter .options-panel li {
  padding: 10px 0 0;
}

.competencies-filter .options-panel li:before {
  display: none;
}

.competencies-filter .options-panel a {
  color: #2c2c2c;
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "Avenir Next LT W01 Bold", verdana, sans-serif;
  letter-spacing: .15em;
  line-height: 1.375em;
  margin: 0;
  position: relative;
  text-transform: uppercase;
  transition: color .5s;
}

.competencies-filter .options-panel a.active, .competencies-filter .options-panel a:hover {
  color: #d8d8d8;
}

.competencies-filter .options-panel .clear-selection {
  color: #d8d8d8;
  position: absolute;
  bottom: 10px;
  right: 10px;
  cursor: default;
}

.competencies-filter.active .options-panel a {
  color: #d8d8d8;
}

.competencies-filter.active .options-panel a.active, .competencies-filter.active .options-panel a:hover {
  color: #2c2c2c;
}

.competencies-filter.active .options-panel .clear-selection {
  color: #2c2c2c;
  cursor: pointer;
}

.competencies-filter.active .options-panel .clear-selection:hover {
  color: #d8d8d8;
}

.filtered .sponsor {
  opacity: .2;
}

.filtered .sponsor-entry {
  opacity: .2;
}

.filter-big-data .comp-big-data,
.filter-devops .comp-devops,
.filter-digital-media .comp-digital-media,
.filter-financial .comp-financial,
.filter-government .comp-government,
.filter-healthcare .comp-healthcare,
.filter-iot .comp-iot,
.filter-life-sciences .comp-life-sciences,
.filter-marketing-commerce .comp-marketing-commerce,
.filter-ms-exchange .comp-ms-exchange,
.filter-ms-sharepoint .comp-ms-sharepoint,
.filter-migration .comp-migration,
.filter-mobile .comp-mobile,
.filter-networking .comp-networking,
.filter-oracle .comp-oracle,
.filter-security .comp-security,
.filter-storage .comp-storage {
  opacity: 1;
}

/**
* ==================================================
*		/sponsors - Mobile 2
* ==================================================
*/
@media screen and (min-width: 40em) {
  .page-sponsors #section-diamond .sponsor,
  .page-sponsors #section-platinum .sponsor,
  .page-sponsors #section-gold-premium .sponsor,
  .page-sponsors #section-technology .sponsor,
  .page-sponsors #section-gold .sponsor,
  .page-sponsors #section-silver .sponsor {
    width: 33.3333%;
  }
  .page-sponsors .sponsor {
    margin-bottom: 40px;
  }
  .page-sponsors .sponsor img {
    max-width: 140px;
    max-height: 80px;
  }
  .page-sponsors .sponsor-list ul {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
  }
  .page-sponsors .options-panel ul {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
  }
}

/**
* ==================================================
*		/sponsors - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-sponsors #section-silver .sponsor,
  .page-sponsors #section-technology .sponsor {
    width: 25%;
  }
  .page-sponsors .sponsor {
    margin-bottom: 56px;
  }
  .page-sponsors .sponsor img {
    max-width: 180px;
    max-height: 100px;
  }

 .page-sponsors #section-silver .sponsor img {
    max-width: 150px;
    max-height: 100px;
  }
  .page-sponsors .sponsor-list {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
  .page-sponsors .sponsor-list ul {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4;
  }
  .competencies-filter .inner {
    padding-left: 1.53061%;
    padding-right: 1.53061%;
  }
}

/**
* ==================================================
*		/sponsors - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-sponsors .sponsors {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
  }
  .page-sponsors .sponsor {
    padding: 0 10px;
  }
  .competencies-filter {
    margin-bottom: 30px;
  }
  .competencies-filter .inner {
    padding-left: 1.78571%;
    padding-right: 1.78571%;
  }
  .competencies-filter .current-filter {
    display: inline-block;
  }
  .competencies-filter .rule-wrap {
    display: block;
    padding: 28px 0 0;
  }
  .competencies-filter .options-panel ul {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4;
  }
}

/**
* ==================================================
*		/become-a-sponsor
* ==================================================
*/
.page-sponsorship #section-intro .subsection,
.page-sponsorship #section-intro .col {
  padding-bottom: 0;
}

.page-sponsorship #section-sponsorship-contract strong {
  color: #fd9526;
}

.page-sponsorship #section-sponsors {
  background: rgba(44, 44, 44, 0.9);
}

.page-sponsorship #section-sponsors .headline-s2 {
  margin-bottom: 14px;
}

.page-sponsorship #section-booth-selection .section-header p {
  margin-top: 1.375em;
}

.page-sponsorship .body-copy p.last {
  margin-bottom: 50px;
}

/**
* ==================================================
*		/terms
* ==================================================
*/
.page-terms .page-section p {
  max-width: 740px;
}

/**
* ==================================================
*		/training
* ==================================================
*/
@media screen and (max-width: 47.9375em) {
  .page-training #section-bootcamps .subsection,
  .page-training #section-bootcamps .col,
  .page-training #section-introductory .subsection,
  .page-training #section-introductory .col,
  .page-training #section-advanced .subsection,
  .page-training #section-advanced .col,
  .page-training #section-expert .subsection,
  .page-training #section-expert .col,
  .page-training #section-certification-readiness .subsection,
  .page-training #section-certification-readiness .col {
    padding-top: 0;
  }
  .page-training .headline-s1 {
    min-width: 120px;
    text-align: center;
  }
}

/**
* ==================================================
*		/training - Desktop
* ==================================================
*/
@media screen and (min-width: 64.0625em) {
  .page-training #section-introductory .col,
  .page-training #section-advanced .col,
  .page-training #section-expert .col,
  .page-training #section-certification-readiness .col {
    margin-bottom: 0;
    margin-top: -14px;
    padding-bottom: 14px;
    padding-top: 14px;
    transition: background .5s;
  }
  .page-training #section-introductory .button,
  .page-training #section-advanced .button,
  .page-training #section-expert .button,
  .page-training #section-certification-readiness .button {
    opacity: 0;
    transition: opacity .5s;
  }
  .page-training #section-introductory .modal-link:hover .col,
  .page-training #section-advanced .modal-link:hover .col,
  .page-training #section-expert .modal-link:hover .col,
  .page-training #section-certification-readiness .modal-link:hover .col {
    background: rgba(44, 44, 44, 0.9);
  }
  .page-training #section-introductory .modal-link:hover .button,
  .page-training #section-advanced .modal-link:hover .button,
  .page-training #section-expert .modal-link:hover .button,
  .page-training #section-certification-readiness .modal-link:hover .button {
    opacity: 1;
  }
}

/**
* ==================================================
*		/travel
* ==================================================
*/
.page-travel .page-header .wave-pattern {
  display: none;
}

.page-travel #section-hotels .col-1-3 h3,.page-travel #section-hotels2 .col-1-3 h3 {
  margin-bottom: .5625em;
}

.page-travel #section-hotels .img-wrap, .page-travel #section-hotels2 .img-wrap {
  margin: 0 -20px 10px;
}

.page-travel #section-hotels .price, .page-travel #section-hotels2 .price {
  font-size: 40px;
  font-size: 4rem;
  margin-bottom: .3em;
  line-height: 1em;
}

.page-travel #section-hotels .price .number, .page-travel #section-hotels2 .price .number {
  color: #fff;
  font-size: 40px;
  font-size: 4rem;
  letter-spacing: -.04em;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
}

.page-travel #section-hotels .price .unit, .page-travel #section-hotels2 .price .unit {
  font-size: 16px;
  font-size: 1.6rem;
  color: #a8a8a8;
  letter-spacing: .08em;
}

.page-travel #section-airline .img-wrap {
  margin: 0 0 20px;
}

.page-travel .discount-code {
  width: 150px;
}

.page-travel .discount-code .bump,
.page-travel .discount-code .headline-s1 {
  margin: 0;
  display: block;
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}

/**
* ==================================================
*		/travel - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-travel #section-hotels .img-wrap, .page-travel #section-hotels2 .img-wrap {
    margin: 0 0 14px;
  }
}

/**
* ==================================================
*		/travel - Desktop
* ==================================================
*/
@media screen and (min-width: 64em) {
  .page-travel #section-hotels, .page-travel #section-hotels2 {
    margin-bottom: 60px;
  }
  .page-travel #section-hotels .price, .page-travel #section-hotels2 .price {
    font-size: 48px;
    font-size: 4.8rem;
  }
  .page-travel #section-hotels .price .number, .page-travel #section-hotels2 .price .number {
    font-size: 48px;
    font-size: 4.8rem;
  }
  .page-travel #section-airline .img-wrap {
    margin-bottom: 32px;
  }
  .page-travel .discount-code .headline-s1 {
    font-size: 22px;
    font-size: 2.2rem;
    padding-left: 10px;
  }
}

/**
* ==================================================
*		/error
* ==================================================
*/
/**
* ==================================================
*		/error - Tablet
* ==================================================
*/
@media screen and (min-width: 48em) {
  .page-error .page-header {
    height: 100vh;
    max-height: 600px;
  }
  .page-error .text-wrap {
    height: 100%;
  }
}


/**
* ==================================================
*		NEW BY ALEC
* ==================================================
*/


.list .name, .body-copy .list .name{
  color:#BF7BCD;
}


/**
* ==================================================
*   NEW BY RICH
* ==================================================
*/
body.page-training .modal ul li a strong{
  box-shadow: none;
}

body.page-training .reglink {
  color:#fd9526;
}

body.page-sponsorship .page-intro .headline-s3.marginTop {
  margin-top:40px;
}
body.page-sponsorship #section-intro ul {
  margin-top:.75em;
}

#section-hotels .img-wrap .soldout, #section-hotels2 .img-wrap .soldout {

    left: 0;
    position: absolute;
    top: 0;
    z-index: 300;
}

body.page-terms .bump-wrap #line-height-over-ride {
  line-height: 22px;
}

#session-catalog-banner{
background-color: #2c2c2c;
text-align:center;
padding-top: 40px;
padding-bottom:40px;
}

.af5k-entry .af5ktime, .af5k-course-item .af5k-km-mile {
  font-weight:bold;
}

.af5k-entry .af5kdesc, .af5k-course-item .af5k-locator {
  margin-bottom:10px;
}

.modal-af5k .modal-content .af5k-raceinfo {
  margin-bottom: 40px;
}

#section-ngo .hackathon-sponsor {
  float:left;
}

#section-ngo p.sponsor-text {
  padding-top:100px;
}

#section-harley-ride a {
  box-shadow:none;
}

/*  Pub Crawl  - base  */
.page-pub-crawl .pub-listing {
  display: inline-block;
  margin-bottom: 20px;
  padding:0;
  text-align: left;
  vertical-align: top;
  position: relative;
}

.headline-s3.pubs3 {
  margin: 0 0 .375em;
}

h4.pub-sponsor {
    font-family: "AvenirNextLTW01-Regular",verdana,sans-serif;
    font-size: 1.55rem;
    letter-spacing: 0.15em;
    line-height: 1.3em;
    margin: 0 0 0.875em;
}

p.pub-offerings {
  margin-bottom:.70em;
  font-style:italic;
  font-size:1.4rem;
}

/* pub crawl - tablet */
@media screen and (min-width: 48em) {

.page-pub-crawl .pub-listing {
  width: 49%;
  padding:0 20px 0 0;
}

}

/* pub crawl - desktop  */
@media screen and (min-width: 64em) {

.page-pub-crawl .pub-listing {
  width: 32%;
}

}

/*homepage sponsor logo */

body.page-home p.sponsor-tag {
  padding-left:160px;
  padding-top: 20px;
  position: relative;
  font-size: 1.375rem;
}

body.page-executive-summit p.sponsor-tag {
  font-size: 1.375rem;
  margin-bottom: 10px;
}

body.page-home p.sponsor-tag img {
  position:absolute;
  left:0;
  top:0;
  width:150px;
}


body.page-home h4.sponsor-h4, body.page-executive-summit h4.sponsor-h4 {
  margin-bottom:10px;font-weight:bold;
}

/* reserved seating page */
.page-resources .orange-bold, .page-keynotes .orange-bold {
  color: #fd9526;
}

.page-resources .question-section {
  margin-bottom: 20px;
}

.page-resources img.reserved-img {
  width:100%;
  max-width:500px;
  margin-bottom: 20px;
  display:block;
}


/* reserved seating - desktop  */
@media screen and (min-width: 64em) {
.page-resources .question-section {
  margin-bottom: 50px;
}
}

/* live stream reg on front page */
.live-stream-reg .central-column {
  padding-top:20px;
}
.headline-ls-s1 {
    font-size: 1.6rem;
    letter-spacing: 0.45em;
    line-height: 1.4em;
    text-transform: uppercase;
    z-index: 2;
    clear: both;
    display: inline-block;
}

.ls-reg-main {
  text-align: center;
  margin-bottom:1px;
  padding-bottom: 30px;
  width:100%;
}

.ls-reg-main p {
  color: #fff;
}
.ls-reg-main h2 {
  margin-bottom: 40px
}

#ls-reg-form input {
  border:1px solid #000;
  color:#000;
  margin:10px 20px 10px 0px;
  width:100%;
}
#ls-reg-form input#email {
  padding-left:10px;
}

.ls-register-now {
  font-size: 12px;
  font-size: 1.8rem;
  font-family: "Avenir Next LT W01 Demi", verdana, sans-serif;
  background-color: #c9c9c9;
  box-shadow: none;
  color: #000;
  display: inline-block;
  padding: 5px 15px;
  border: none;
  margin-bottom:7px;
}

.ls-register-now:hover {
  background: #a0a0a0;
}

.live-stream-reg {
  background:#0099FF none repeat scroll 0 0;
}

body.page-confirmation .page-intro{
  padding: 50px 0;
}
body.page-confirmation .col-main {
  margin: 0 auto;
}

body.page-confirmation .page-header .text-wrap {
  height:265px;
}

/* live stream reg - tablet */

@media screen and (min-width: 48em) {
#ls-reg-form input {
  display: inline-block;
  margin:0 20px 0 10px;
  width:auto;
}
#ls-reg-form input#email {
  width:35%;
}
}

/* live stream reg - desktop */

@media screen and (min-width: 64em) {
.headline-ls-s1 {
    font-size: 2.2rem;
    line-height: 1em;
  }
.ls-reg-main {
  width:75%;
  margin: 0 auto;
}
.ls-register-now {
  font-size: 14px;
  font-size: 1.4rem;
}
}


/* Keynotes page */

.page-keynotes .col-main {
  width: 100%;
}

.key-subloc {
  margin-left:20px;
}

.col-twothirds {
  padding-left: 1.53061%;
  padding-right: 1.53061%;
  float: left;
  width: 100%;
}

.key-date {
  margin-top:50px;
}

.keynote-spkr {
  width:100%;
}

.speaker-img{
  margin-bottom: 15px;
}

#section-viewingloc strong {
  font-weight: 700;
}

/* Keynotes page - desktop */
@media screen and (min-width: 64em) {
.col-twothirds {
  width: 80%;
}
.keynote-spkr {
  width:60%;
}
}

/* Video */

#playerWrap {
  width:100%;
  border: 1px solid #fff;
}

/*tablet */

@media screen and (min-width: 48em) {
#playerWrap {
  width:90%;
  margin:0 auto;
  height:500px;
}
iframe#player {
  height:100%;
}
  }

/*desktop */
@media screen and (min-width: 64em) {
  #playerWrap {
  width:75%;
  height:500px;
}
}

/* Press Room page */

div.releases p {
  border-left: 3px solid #fd9526;
  margin-bottom: 16px;
  padding-left: 10px;
  padding-right: 0; 
}

.pr-imagewrap {
  width:100%;
  display: inline-block;
  position: relative;
  text-align: center;
  vertical-align: middle;
  margin-bottom: 20px;
  padding: 0 10px;
}

.pr-imagewrap img {
  width:100%;
}

/* Press Room - tablet */
@media screen and (min-width: 48em) {
  .pr-imagewrap {
    width:33%;
  }
}

/* Press Room - desktop */
@media screen and (min-width: 64em) {
  }
/**********************/
/* Homepage - stages */
/*********************/
.page-header.live-stream-hero {
  background-image: url('../images/home/Live-Stream--Hero-Mobile.jpg');
}

.keynote-playback {
  background: #000 none repeat scroll 0 0;
}
.keynote-playback .central-column {
  padding-top: 20px;
  text-align: center;
}
.playback-main {
  text-align: center;
}
.playback-main h2 {
  margin-bottom: 40px;
}

.playback1 img, .playback-main .col img {
  width:100%;
  border: #fff 2px solid;
  margin-bottom:20px;
}

@media screen and (min-width: 40em) {
.page-header.live-stream-hero {
  background-image: url('../images/home/Live-Stream--Hero.jpg');
}
}

@media screen and (min-width: 48em) {

/* Version 2 */
.playback1 img {
  width:auto;
}
/*version 3*/
.playback-main .col img {
  width:80%;
}
}

@media screen and (min-width: 64em) {
/* Version 2 */
.playback-main .col img {
  width:100%;
}
}


/**********************************/
/*     MOBILE APP Page            */
/**********************************/
.page-mobile .body-copy .img-wrap {
  border: none;
  width:60%;
  margin:0 auto;
}

#section-applist a:hover {
  color: #fd9526;
}

.page-mobile .col p {
  text-align: center;
}