html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

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

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

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

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

body { margin: 0; padding: 0; font-family: "Noto Sans", Helvetica, sans-serif; font-size: 16px; line-height: 22px; color: #0e375e; }

.grid { *zoom: 1; max-width: 960px; _width: 960px; padding-left: 10px; padding-right: 10px; margin-left: auto; margin-right: auto; }
.grid:after { content: ""; display: table; clear: both; }
@media (max-width: 940px) { .grid { max-width: 480px; padding-left: 10px; padding-right: 10px; margin-left: auto; margin-right: auto; }
  .grid:after { content: ""; display: table; clear: both; } }

section { position: relative; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-position: top center; background-color: white; width: 100%; text-align: center; height: auto; -webkit-transition: height 0.5; -moz-transition: height 0.5; -o-transition: height 0.5; transition: height 0.5; padding-top: 75px; padding-bottom: 75px; }
section.image { padding: 0; }

h1 { font-family: "museo-slab", "Museo Slab", "Museo", "Noto Sans", sans-serif; font-size: 47px; line-height: 58px; margin-bottom: 20px; }

h4 { font-family: "Noto Sans", Helvetica, sans-serif; text-transform: uppercase; font-size: 16px; padding-bottom: 10px; margin-bottom: 30px; background: -webkit-gradient(linear, 50% 0%, 50% 2, color-stop(50%, #3499b7), color-stop(100%, #3499b7)); background: -webkit-linear-gradient(#3499b7 1px, #3499b7 2px); background: -moz-linear-gradient(#3499b7 1px, #3499b7 2px); background: -o-linear-gradient(#3499b7 1px, #3499b7 2px); background: linear-gradient(#3499b7 1px, #3499b7 2px); background-size: 20px 2px; background-position: 50% 100%; background-repeat: no-repeat; }

p { font-family: "Noto Sans", Helvetica, sans-serif; }

a, a:visited { color: #00c07d; text-decoration: none; }

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

.template, .hidden { display: none !important; }

ul { list-style: none; }

input[type=email], input[type=text], textarea { font-family: "Noto Serif", Georgia, serif; font-style: italic; font-size: 16px; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; background: none; -webkit-border-radius: 0; -moz-border-radius: 0; -ms-border-radius: 0; -o-border-radius: 0; border-radius: 0; border-bottom: 2px solid white; }

input[type=button], input[type=submit], button, a.button { display: inline-block; font-family: "Noto Sans", Helvetica, sans-serif; font-size: 12px; -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-user-select: none; -moz-user-select: none; user-select: none; -webkit-border-radius: 3px; -moz-border-radius: 3px; -ms-border-radius: 3px; -o-border-radius: 3px; border-radius: 3px; border: none; padding: 12px 20px; -webkit-transition-property: all; -moz-transition-property: all; -o-transition-property: all; transition-property: all; -webkit-transition-duration: 0.25s; -moz-transition-duration: 0.25s; -o-transition-duration: 0.25s; transition-duration: 0.25s; background-color: #04ba76; color: white; }
input[type=button]:active, input[type=button]:hover, input[type=submit]:active, input[type=submit]:hover, button:active, button:hover, a.button:active, a.button:hover { cursor: pointer; text-decoration: none; background-color: #00d88d; }
input[type=button].inverse, input[type=submit].inverse, button.inverse, a.button.inverse { background-color: white; color: #04ba76; }
input[type=button].inverse:active, input[type=button].inverse:hover, input[type=submit].inverse:active, input[type=submit].inverse:hover, button.inverse:active, button.inverse:hover, a.button.inverse:active, a.button.inverse:hover { color: rgba(4, 186, 118, 0.4); }
input[type=button].small, input[type=submit].small, button.small, a.button.small { font-size: 11px; padding: -4px -4px; }

div.overlap-triangle { width: 0px; height: 0px; border-style: solid; border-width: 20px 20px 0 20px; border-color: #aaaaaa transparent transparent transparent; position: absolute; top: -1px; left: 50%; margin-left: -20px; }

@media (max-width: 940px) { p, li { font-size: 12px; line-height: 20px; } }

section h1, section a { color: #04ba76; }
section h4, section p { color: #0e375e; }

section.dark h1, section.dark h2, section.dark h3, section.dark h4, section.dark p, section.dark a, section.dark li { color: white; }

#menu { position: fixed; top: 0; display: block; z-index: 2048; height: 80px; width: 100%; padding-top: 22px; padding-bottom: 0; background-color: rgba(18, 67, 82, 0.97); }
#menu li { display: inline-block; margin-right: 25px; }
#menu li a { font-family: "Noto Sans", Helvetica, sans-serif; color: #00d88d; font-size: 15px; vertical-align: middle; }
#menu li a.selected { color: white; }
#menu .logo svg { -webkit-transition: fill 0.1s linear; -moz-transition: fill 0.1s linear; -o-transition: fill 0.1s linear; transition: fill 0.1s linear; fill: #00d88d; height: 100%; width: 120px; vertical-align: middle; }
#menu .logo.selected svg { fill: white; }
#menu .logo:hover svg { fill: white; }
#menu .tickets { font-size: 15px; padding: 7px 12px; float: right; }
@media (min-width: 940px) { #menu .mobile { display: none; } }
@media (max-width: 940px) { #menu { -webkit-user-select: none; -moz-user-select: none; user-select: none; padding-top: 0; overflow: hidden; height: auto; min-height: 75px; max-height: 75px; -webkit-transition: max-height 0.3s ease-out; -moz-transition: max-height 0.3s ease-out; -o-transition: max-height 0.3s ease-out; transition: max-height 0.3s ease-out; }
  #menu .mobile-menu-title { text-decoration: none; cursor: pointer; position: absolute; color: white; }
  #menu .mobile-menu-button { position: relative; cursor: pointer; }
  #menu .mobile-menu-button svg { -webkit-transition: fill 0.1s linear; -moz-transition: fill 0.1s linear; -o-transition: fill 0.1s linear; transition: fill 0.1s linear; fill: #04ba76; float: left; margin-top: 18px; margin-left: -70px; }
  #menu.menu-open .mobile-menu-button svg, #menu .mobile-menu-button:hover svg { fill: white; }
  #menu .tickets { margin-top: 18px; }
  #menu li a, #menu .mobile-menu-title { font-family: "museo-slab", "Museo Slab", "Museo", "Noto Sans", sans-serif; font-size: 50px; line-height: 75px; }
  #menu li { display: block; }
  #menu li a:hover { text-decoration: none; color: #3499b7; }
  #menu .logo svg { display: none; }
  #menu .mobile-menu-title { display: block; position: absolute; opacity: 1; z-index: 1; }
  #menu ul { visibility: hidden; z-index: 10; }
  #menu.menu-open { background: url(/img/menu-mobile-separators.png); max-height: 750px; }
  #menu.menu-open ul { visibility: visible; }
  #menu.menu-open .mobile-menu-title { display: none; } }

#sponsors { background-color: #eef4f6; }
#sponsors h4 { width: 100%; float: left; margin-right: 2.12766%; display: inline; background: -webkit-gradient(linear, 50% 0%, 50% 2, color-stop(50%, #ffffff), color-stop(100%, #ffffff)); background: -webkit-linear-gradient(#ffffff 1px, #ffffff 2px); background: -moz-linear-gradient(#ffffff 1px, #ffffff 2px); background: -o-linear-gradient(#ffffff 1px, #ffffff 2px); background: linear-gradient(#ffffff 1px, #ffffff 2px); background-size: 100% 2px; background-position: 50% 100%; background-repeat: no-repeat; padding-bottom: 30px; margin-bottom: 30px; }
#sponsors .tier1 a, #sponsors .tier2 a { display: block; margin-bottom: 20px; height: 100px; }
#sponsors .tier1 a span, #sponsors .tier2 a span { display: inline-block; vertical-align: middle; height: 100%; width: 0; }
#sponsors .tier1 a img, #sponsors .tier1 a svg, #sponsors .tier1 a object, #sponsors .tier2 a img, #sponsors .tier2 a svg, #sponsors .tier2 a object { display: inline-block; vertical-align: middle; margin: auto; display: inline; max-width: 100%; max-height: 100%; }
#sponsors .tier1 a { width: 23.40426%; float: left; margin-right: 2.12766%; display: inline; margin-right: -100%; }
#sponsors .tier1 a:nth-child(4n + 1) { margin-left: 0%; clear: left; }
#sponsors .tier1 a:nth-child(4n + 2) { margin-left: 25.53191%; clear: none; }
#sponsors .tier1 a:nth-child(4n + 3) { margin-left: 51.06383%; clear: none; }
#sponsors .tier1 a:nth-child(4n + 4) { margin-left: 76.59574%; clear: none; }
#sponsors .tier2 a { width: 14.89362%; float: left; margin-right: 2.12766%; display: inline; margin-right: -100%; }
#sponsors .tier2 a:nth-child(6n + 1) { margin-left: 0%; clear: left; }
#sponsors .tier2 a:nth-child(6n + 2) { margin-left: 17.02128%; clear: none; }
#sponsors .tier2 a:nth-child(6n + 3) { margin-left: 34.04255%; clear: none; }
#sponsors .tier2 a:nth-child(6n + 4) { margin-left: 51.06383%; clear: none; }
#sponsors .tier2 a:nth-child(6n + 5) { margin-left: 68.08511%; clear: none; }
#sponsors .tier2 a:nth-child(6n + 6) { margin-left: 85.10638%; clear: none; }
#sponsors .tier1 { margin-bottom: 45px; }

#footer { padding: 0; }
#footer .top { padding-top: 45px; background-color: #0d2b35; padding-bottom: 25px; }
#footer .top h2 { margin-bottom: 20px; }
#footer .bottom { padding-top: 25px; background-color: #0a2129; padding-bottom: 15px; }
#footer .grid > div { white-space: nowrap; text-align: left; font-size: 12px; line-height: 20px; }
#footer .grid > div a { text-decoration: underline; }
#footer .grid > div h2 { font-weight: bold; }
#footer i { font-size: 13px; }
#footer p { color: #81cbcc; }
#footer a { color: white; }
#footer a:hover, #footer a:active { color: #00d88d; }
#footer .icon img { width: 90%; }
#footer .copy { padding-top: 25px; text-align: left; font-size: 12px; color: #81cbcc; }
#footer .signup ::-webkit-input-placeholder { color: #81cbcc; }
#footer .signup :-moz-placeholder { color: #81cbcc; }
#footer .signup ::-moz-placeholder { color: #81cbcc; }
#footer .signup :-ms-input-placeholder { color: #81cbcc; }
#footer .signup input[type=email] { width: 100%; display: block; margin-left: -1px; font-size: 12px; padding-bottom: 10px; color: #00d88d; border-color: #81cbcc; border-width: 1px; }
#footer .signup input[type=submit] { display: block; padding: 0; margin: 0; margin-top: 12px; color: #81cbcc; font-size: 12px; background: transparent; }
#footer .signup input[type=submit]:hover, #footer .signup input[type=submit]:active { color: #00d88d; }
@media (min-width: 940px) { #footer .grid > div:nth-child(1) { width: 31.91489%; float: left; margin-right: 2.12766%; }
  #footer .grid > div:nth-child(2) { width: 14.89362%; float: left; margin-right: 2.12766%; }
  #footer .grid > div:nth-child(3) { width: 23.40426%; float: left; margin-right: 2.12766%; }
  #footer .grid > div:nth-child(4) { width: 23.40426%; float: left; margin-right: 2.12766%; float: right; margin-right: 0; } }
@media (max-width: 940px) { #footer .grid { padding-left: 40px; padding-right: 40px; max-width: 100%; }
  #footer .grid > div { margin-bottom: 15px; width: 47.82609%; float: left; margin-right: 4.34783%; }
  #footer .grid > div:nth-child(2) { float: right; margin-right: 0; }
  #footer .grid > div:nth-child(4) { float: right; margin-right: 0; } }

#top { height: 480px; padding: 208px 0 130px 0; background-color: #07262f; }
#top .backstretch { background-color: #07262f; }

.sessions > #top { background-image: url(/img/section/top-sessions.jpg); }

.speakers > #top { background-image: url(/img/section/top-speakers.jpg); }

.education > #top { background-image: url(/img/section/top-education.jpg); }

.schedule > #top { background-image: url(/img/section/top-schedule.jpg); }

.about > #top { background-image: url(/img/section/top-about.jpg); }

.workshops > #top { background-image: url(/img/section/top-workshops.jpg); }

#subhead { background-color: #3499b7; }
#subhead p { padding-left: 8.51064%; padding-right: 8.51064%; line-height: 30px; color: white; letter-spacing: 0.5px; }

#sponsor img, #sponsor h1, #sponsor h2, #sponsor h3, #sponsor h4, #sponsor div { margin-top: 50px; }
#sponsor img:first-child { max-width: 50%; max-height: 200px; }
#sponsor span.big { font-family: "museo-slab", "Museo Slab", "Museo", "Noto Sans", sans-serif; font-size: 36px; line-height: 56px; }
#sponsor .link { background: -webkit-gradient(linear, 50% 0%, 50% 1, color-stop(0%, #eeeeee), color-stop(100%, #eeeeee)); background: -webkit-linear-gradient(#eeeeee 0px, #eeeeee 1px); background: -moz-linear-gradient(#eeeeee 0px, #eeeeee 1px); background: -o-linear-gradient(#eeeeee 0px, #eeeeee 1px); background: linear-gradient(#eeeeee 0px, #eeeeee 1px); background-size: 82.97872% 1px; background-position: 50% 50%; background-repeat: no-repeat; }
#sponsor .links h2 { margin-bottom: 20px; }
#sponsor .links a { display: block; font-size: 12px; }
