@import url("https://use.typekit.net/kdv6fyr.css");
@import url(vendor/normalize.css);
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  40% {
    transform: perspective(400px) rotateX(-10deg); }
  70% {
    transform: perspective(400px) rotateX(10deg); }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }

@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  40% {
    transform: perspective(400px) rotateY(-10deg); }
  70% {
    transform: perspective(400px) rotateY(10deg); }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }

button, [type='button'], [type='reset'], [type='submit'], .button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #EF5255;
  border: 0;
  border-radius: 6px;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 1em;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1;
  padding: 0.75em 1.5em;
  text-align: center;
  text-decoration: none;
  transition: background-color 150ms ease, color 150ms ease;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap; }
  button:hover, button:focus, [type='button']:hover, [type='button']:focus, [type='reset']:hover, [type='reset']:focus, [type='submit']:hover, [type='submit']:focus, .button:hover, .button:focus {
    background-color: #ed3b3e;
    color: #FFF; }
  button:disabled, [type='button']:disabled, [type='reset']:disabled, [type='submit']:disabled, .button:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
    button:disabled:hover, [type='button']:disabled:hover, [type='reset']:disabled:hover, [type='submit']:disabled:hover, .button:disabled:hover {
      background-color: #0C8DB7; }

.button--secondary {
  background-color: transparent;
  border: 3px solid #0C8DB7;
  color: #0C8DB7; }
  .button--secondary:hover, .button--secondary:focus {
    background-color: #0C8DB7; }

@media (max-width: 500px) {
  button, [type='button'], [type='reset'], [type='submit'], .button {
    font-size: .8em; } }

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

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

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

input,
select,
textarea {
  display: block;
  font-family: "abril-text", Georgia, serif;
  font-size: 1.4em; }

[type='color'], [type='date'], [type='datetime'], [type='datetime-local'], [type='email'], [type='month'], [type='number'], [type='password'], [type='search'], [type='tel'], [type='text'], [type='time'], [type='url'], [type='week'], input:not([type]), textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 3px;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
  margin-bottom: 0.75em;
  padding: 0.5em;
  transition: border-color 150ms ease;
  width: 100%; }
  [type='color']:hover, [type='date']:hover, [type='datetime']:hover, [type='datetime-local']:hover, [type='email']:hover, [type='month']:hover, [type='number']:hover, [type='password']:hover, [type='search']:hover, [type='tel']:hover, [type='text']:hover, [type='time']:hover, [type='url']:hover, [type='week']:hover, input:not([type]):hover, textarea:hover {
    border-color: #b1b1b1; }
  [type='color']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='email']:focus, [type='month']:focus, [type='number']:focus, [type='password']:focus, [type='search']:focus, [type='tel']:focus, [type='text']:focus, [type='time']:focus, [type='url']:focus, [type='week']:focus, input:not([type]):focus, textarea:focus {
    border-color: #0C8DB7;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06), 0 0 5px rgba(10, 123, 159, 0.7);
    outline: none; }
  [type='color']:disabled, [type='date']:disabled, [type='datetime']:disabled, [type='datetime-local']:disabled, [type='email']:disabled, [type='month']:disabled, [type='number']:disabled, [type='password']:disabled, [type='search']:disabled, [type='tel']:disabled, [type='text']:disabled, [type='time']:disabled, [type='url']:disabled, [type='week']:disabled, input:not([type]):disabled, textarea:disabled {
    background-color: #f2f2f2;
    cursor: not-allowed; }
    [type='color']:disabled:hover, [type='date']:disabled:hover, [type='datetime']:disabled:hover, [type='datetime-local']:disabled:hover, [type='email']:disabled:hover, [type='month']:disabled:hover, [type='number']:disabled:hover, [type='password']:disabled:hover, [type='search']:disabled:hover, [type='tel']:disabled:hover, [type='text']:disabled:hover, [type='time']:disabled:hover, [type='url']:disabled:hover, [type='week']:disabled:hover, input:not([type]):disabled:hover, textarea:disabled:hover {
      border: 1px solid #ddd; }
  [type='color']::-webkit-input-placeholder, [type='date']::-webkit-input-placeholder, [type='datetime']::-webkit-input-placeholder, [type='datetime-local']::-webkit-input-placeholder, [type='email']::-webkit-input-placeholder, [type='month']::-webkit-input-placeholder, [type='number']::-webkit-input-placeholder, [type='password']::-webkit-input-placeholder, [type='search']::-webkit-input-placeholder, [type='tel']::-webkit-input-placeholder, [type='text']::-webkit-input-placeholder, [type='time']::-webkit-input-placeholder, [type='url']::-webkit-input-placeholder, [type='week']::-webkit-input-placeholder, input:not([type])::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    color: #8f8f8f; }
  [type='color']:-ms-input-placeholder, [type='date']:-ms-input-placeholder, [type='datetime']:-ms-input-placeholder, [type='datetime-local']:-ms-input-placeholder, [type='email']:-ms-input-placeholder, [type='month']:-ms-input-placeholder, [type='number']:-ms-input-placeholder, [type='password']:-ms-input-placeholder, [type='search']:-ms-input-placeholder, [type='tel']:-ms-input-placeholder, [type='text']:-ms-input-placeholder, [type='time']:-ms-input-placeholder, [type='url']:-ms-input-placeholder, [type='week']:-ms-input-placeholder, input:not([type]):-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: #8f8f8f; }
  [type='color']::placeholder, [type='date']::placeholder, [type='datetime']::placeholder, [type='datetime-local']::placeholder, [type='email']::placeholder, [type='month']::placeholder, [type='number']::placeholder, [type='password']::placeholder, [type='search']::placeholder, [type='tel']::placeholder, [type='text']::placeholder, [type='time']::placeholder, [type='url']::placeholder, [type='week']::placeholder, input:not([type])::placeholder, textarea::placeholder {
    color: #8f8f8f; }

textarea {
  resize: vertical; }

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

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

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

html {
  box-sizing: border-box; }

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

html,
body {
  height: 100%; }

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

dl {
  margin: 0; }

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

dd {
  margin: 0; }

figure {
  margin: 0; }

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

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

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

td {
  border-bottom: 1px solid #ddd;
  padding: 0.75em 0;
  text-align: center; }
  td.-left {
    text-align: left; }
  td.-crossed_out {
    text-decoration: line-through;
    color: #999; }
  td.-grayed_out {
    color: #999; }

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

@media (max-width: 700px) {
  table {
    font-size: .6rem; } }

body {
  color: #444;
  font-family: "abril-text", Georgia, serif;
  font-size: 1.4em;
  line-height: 1.5;
  letter-spacing: .1px; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "abril-text", Georgia, serif;
  font-size: 1.25em;
  line-height: 1.2;
  margin: 0 0 0.75em; }

p, ul {
  margin: 0 0 0.75em; }

a {
  color: #0C8DB7;
  text-decoration: none;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: #096a89; }

hr {
  border-bottom: 1px solid #ddd;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

.small {
  font-size: 80%; }

ul {
  list-style: square; }

body {
  background-image: url("/images/layout/bg.png");
  background-size: 20vh; }

.page-section__wrapper {
  width: 100vw;
  min-height: calc(100vh - 50px);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-align: stretch;
      align-items: stretch; }
  @media (min-width: 1024px) {
    .page-section__wrapper {
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: justify;
          justify-content: space-between; } }
  @media (min-width: 1280px) {
    .page-section__wrapper {
      max-width: 1280px;
      margin: 0 auto; } }

.page-section__image {
  text-align: center;
  padding: 2rem 0; }
  @media (min-width: 1024px) {
    .page-section__image {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-line-pack: center;
          align-content: center;
      padding: 0;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: justify;
          justify-content: space-between;
      width: 10vw;
      -ms-flex-align: stretch;
          align-items: stretch; } }
  .page-section__image .page-section__image--horizontal {
    max-width: 90%; }
    @media (min-width: 768px) {
      .page-section__image .page-section__image--horizontal {
        max-width: 60%; } }
    @media (min-width: 1024px) {
      .page-section__image .page-section__image--horizontal {
        display: none; } }
  .page-section__image .page-section__image--vertical {
    width: 70%;
    display: none;
    -ms-flex-item-align: start;
        align-self: flex-start;
    padding: 8rem 0 4rem; }
    @media (min-width: 1024px) {
      .page-section__image .page-section__image--vertical {
        display: block; } }

.page-section__action {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  margin-top: 2rem; }

.page-section__inner {
  width: 100vw;
  padding: 2rem; }
  @media (min-width: 1024px) {
    .page-section__inner {
      width: 90vw;
      max-width: 1000px;
      padding: 8rem 2rem 5rem; } }

@media (max-width: 1024px) {
  .page-section--sub-page .page-section__image {
    margin-top: 140px; } }

.page-header-mobile .page-header-mobile-sky {
  position: fixed;
  top: 0;
  width: 100vw;
  height: 60px;
  background: #ACE2F7;
  background-image: linear-gradient(to bottom, #71C4EC 0%, #ACE2F7 100%);
  opacity: .9; }

.page-header-mobile .page-header-mobile-logo {
  position: fixed;
  top: -32px;
  left: calc(50vw - 100px);
  width: 200px;
  height: 200px;
  background-image: url("/images/hero/IoR_illustration.svg");
  background-repeat: no-repeat;
  background-position: center;
  z-index: 100; }

.page-header-mobile .page-header-mobile-text {
  padding-top: 150px;
  text-align: center; }
  .page-header-mobile .page-header-mobile-text img {
    width: 80%;
    max-width: 500px; }

.page-header {
  display: none; }

@media (min-width: 700px) and (min-height: 650px) {
  .page-header-mobile {
    display: none; }
  .page-header {
    display: block;
    min-height: 25vh; }
    .page-header--hero {
      position: fixed;
      min-height: 90vh; }
    .page-header__sky {
      position: absolute;
      top: 0;
      width: 100vw;
      height: 8vw;
      background: #ACE2F7;
      background-image: linear-gradient(to bottom, #71C4EC 0%, #ACE2F7 100%);
      opacity: .9; }
      .page-header--hero .page-header__sky {
        height: 200px; }
    .page-header__logo {
      position: absolute;
      top: -0.5vw;
      left: 40vw;
      width: 20vw;
      height: 20vw;
      background-image: url("/images/hero/IoR_illustration.svg");
      background-repeat: no-repeat;
      background-position: center;
      z-index: 100; }
      .page-header--hero .page-header__logo {
        top: -120px;
        left: calc(50vw - 350px);
        width: 700px;
        height: 700px; }
    .page-header__logo-text {
      display: none; }
      .page-header--hero .page-header__logo-text {
        display: block; }
      .page-header__logo-text img {
        width: 700px;
        margin: 550px 0; } }

.footer {
  background-color: rgba(10, 14, 19, 0.8);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
  -ms-flex-align: start;
      align-items: flex-start;
  color: #999;
  text-align: center;
  font-size: 1rem; }
  .footer .footer-signature, .footer .footer-social, .footer .footer-newsletter {
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-preferred-size: 250px;
        flex-basis: 250px;
    padding: 2rem; }
  .footer .footer-signature img {
    filter: grayscale(100%);
    max-width: 125px;
    display: block;
    margin: 0 auto; }
  .footer .footer-signature .colophon {
    padding-top: 1rem; }

.footer-social__list {
  list-style: none;
  margin: 0;
  padding: 0; }

.footer-social__list-item {
  display: inline; }

.footer-social__list-link {
  width: 40px;
  height: 40px;
  display: inline-block;
  text-indent: -999em;
  background: transparent url(/images/footer/social_sprite.png) no-repeat; }
  .footer-social__list-link.-twitter {
    background-position: 0px 0; }
  .footer-social__list-link.-facebook {
    background-position: -40px 0; }
  .footer-social__list-link.-github {
    background-position: -80px 0; }
  .footer-social__list-link.-instagram {
    background-position: -120px 0; }
  .footer-social__list-link.-medium {
    background-position: -160px 0; }
  .footer-social__list-link:hover {
    background-position-y: -40px; }

.footer-social .footer-navigation {
  padding-top: 1rem; }
  .footer-social .footer-navigation__list {
    list-style: none;
    margin: 0;
    padding: 0; }

.footer-newsletter p, .footer-newsletter input, .footer-newsletter label {
  font-size: 1rem;
  font-weight: 400; }

.footer-newsletter input {
  max-width: 250px;
  margin: .5rem auto; }

.footer-newsletter .button {
  background: transparent;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-family: 'Adonis-web';
  font-weight: 700; }
  .footer-newsletter .button:hover, .footer-newsletter .button:focus {
    background-color: #0a7192;
    color: white;
    opacity: .8; }

#menuToggle {
  display: block;
  position: fixed;
  top: 15px;
  left: 25px;
  z-index: 200;
  -webkit-user-select: none;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none; }

#menuToggle input {
  display: block;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0;
  /* hide this */
  z-index: 210;
  /* and place it over the hamburger */
  -webkit-touch-callout: none; }

/*
 * Just a quick hamburger
 */
#menuToggle span {
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #096787;
  border-radius: 3px;
  z-index: 200;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease; }

#menuToggle span:first-child {
  transform-origin: 0% 0%; }

#menuToggle span:nth-last-child(2) {
  transform-origin: 0% 100%; }

/*
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#menuToggle input:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: #096787; }

/*
 * But let's hide the middle one.
 */
#menuToggle input:checked ~ span:nth-last-child(3) {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2); }

/*
 * Ohyeah and the last one should go the other direction
 */
#menuToggle input:checked ~ span:nth-last-child(2) {
  transform: rotate(-45deg) translate(0, -1px); }

/*
 * Make this absolute positioned
 * at the top left of the screen
 */
#menu {
  position: absolute;
  width: 300px;
  margin: -100px 0 0 -50px;
  padding: 50px;
  padding-top: 125px;
  height: 110vh;
  background: white;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  /* to stop flickering of text in safari */
  transform-origin: 0% 0%;
  transform: translate(-100%, 0);
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1); }

#menu li {
  font-size: 22px; }

#menu li > a {
  display: block;
  width: 100%;
  padding: 10px 0; }

/*
 * And let's slide it in from the left
 */
#menuToggle input:checked ~ ul {
  transform: none; }

.ribbon {
  background-color: #EF5255;
  overflow: hidden;
  white-space: nowrap;
  /* top right corner */
  position: fixed;
  right: -60px;
  top: 22px;
  width: 200px;
  transform: rotate(45deg);
  box-shadow: 0 0 10px #888; }
  .ribbon a {
    border: 1px solid #faa;
    color: #fff;
    display: block;
    font: bold 81.25% 'Helvetica Neue', Helvetica, Arial, sans-serif;
    margin: 1px 0;
    padding: 10px 50px;
    text-align: center;
    text-decoration: none;
    text-shadow: 0 0 5px #444; }
    .ribbon a:hover {
      color: #E0F3FA; }

article.text-only .wrapper {
  padding: 3rem;
  font-size: 1rem;
  max-width: 1024px;
  margin: 0 auto; }

article.text-only h3 {
  margin-top: 4rem; }

article.text-only .tickets-overview {
  margin-top: 2rem; }

#home .page-section__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-line-pack: end;
      align-content: flex-end;
  -ms-flex-align: end;
      align-items: flex-end;
  height: 50vh;
  width: 100vw;
  max-width: 100vw;
  padding-bottom: 2vh; }

#home .page-section__image {
  display: none; }

.home--intro {
  text-align: center;
  width: 100%;
  z-index: -10; }
  .home--intro h1, .home--intro h2 {
    margin: 0; }
  .home--intro h1 {
    font-size: .8em; }
  .home--intro h1.isleofruby {
    animation-duration: 3s;
    animation-name: changeopacity;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    letter-spacing: 0px; }
  .home--intro h1.iloveruby {
    animation-duration: 3s;
    animation-name: changeopacityreversed;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    margin-top: -1.35rem;
    letter-spacing: .9px; }

@keyframes changeopacity {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes changeopacityreversed {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
  .home--intro h2 {
    font-size: 1em; }

@media (min-width: 700px) and (min-height: 650px) {
  #home .page-section__inner {
    height: 100vh; } }

.home--intro-tickets {
  padding-bottom: 1rem;
  margin: 0; }

.home--intro-link {
  display: block;
  padding-top: 1rem;
  font-size: 14px;
  text-decoration: underline; }

.page-section--cfp {
  background: linear-gradient(180deg, rgba(140, 208, 240, 0.2), rgba(140, 208, 240, 0.4)); }

.page-section--speakers {
  background: linear-gradient(180deg, rgba(140, 208, 240, 0.2), rgba(140, 208, 240, 0.4)); }

.speaker-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
  -ms-flex-direction: column;
      flex-direction: column; }
  @media (min-width: 475px) {
    .speaker-list {
      -ms-flex-direction: row;
          flex-direction: row; } }
  .speaker-list__item {
    box-sizing: border-box;
    padding: 20px 0; }
    @media (min-width: 475px) {
      .speaker-list__item {
        -ms-flex-preferred-size: 33%;
            flex-basis: 33%;
        max-width: 33%; } }
    @media (min-width: 1024px) {
      .speaker-list__item {
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
        max-width: 25%; } }

.speaker-avatar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 2em; }
  @media (max-width: 475px) {
    .speaker-avatar {
      -ms-flex-direction: column;
          flex-direction: column; } }
  .speaker-avatar__caption {
    -ms-flex: 1;
        flex: 1; }
    @media (max-width: 475px) {
      .speaker-avatar__caption {
        text-align: center; } }
  .speaker-avatar__name {
    font-size: 2.5rem;
    margin-bottom: 0; }
  .speaker-avatar__photo {
    width: 20%;
    margin-right: 1em;
    border: 2px solid white;
    border-radius: 50%; }
    @media (max-width: 475px) {
      .speaker-avatar__photo {
        width: 60%;
        margin-right: 0;
        margin-bottom: 1em; } }
  .speaker-avatar__twitter, .speaker-avatar__company {
    margin-bottom: 0; }
  .speaker-avatar__company {
    color: #6a6a6a; }

.speaker-avatar--list {
  margin-bottom: 0; }
  .speaker-avatar--list .speaker-avatar__photo {
    width: 65%;
    margin-right: 0; }
    @media (max-width: 475px) {
      .speaker-avatar--list .speaker-avatar__photo {
        margin-bottom: 0.5em; } }
  .speaker-avatar--list .speaker-avatar__name {
    font-size: 1.3rem; }

.session {
  margin: 3em 0; }

.page-section--location {
  background: linear-gradient(180deg, rgba(250, 250, 252, 0.7), rgba(250, 250, 252, 0.5)); }
  .page-section--location .page-section__inner img, .page-section--location .page-section__inner iframe {
    border: 1rem solid white; }
  .page-section--location .page-section__inner .photos {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-line-pack: end;
        align-content: flex-end;
    -ms-flex-align: stretch;
        align-items: stretch; }
    .page-section--location .page-section__inner .photos .photos-item {
      -ms-flex-positive: 1;
          flex-grow: 1;
      -ms-flex-preferred-size: 250px;
          flex-basis: 250px; }
  .page-section--location .page-section__inner .logo {
    padding: 2rem;
    text-align: center; }
    .page-section--location .page-section__inner .logo img {
      border: none;
      max-width: 150px; }

.page-section--sub-page
.page-section__wrapper {
  min-height: auto; }
  .page-section--sub-page
.page-section__wrapper .page-section__inner {
    padding: 2rem; }

.page-section--schedule {
  background-color: #F0ECEB; }

.page-section--sponsors {
  background: linear-gradient(180deg, rgba(10, 163, 173, 0.1), rgba(10, 163, 173, 0.5)); }

.sponsor-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start;
  list-style-type: none; }
  @media (min-width: 475px) {
    .sponsor-list {
      -ms-flex-direction: row;
          flex-direction: row; } }
  .sponsor-list--tier3 .sponsor-list__item {
    width: 350px; }
  .sponsor-list--tier5 .sponsor-list__item {
    width: 250px; }
  .sponsor-list .sponsor-list__item {
    padding: 20px; }

.sponsor-info {
  font-size: 1.5rem; }
