@font-face {
  font-family:'spartan';
    src:url('fonts/spartan.eot');
    src:url('fonts/spartan.eot#iefix') format('embedded-opentype'),
        url('fonts/spartan.woff2') format('woff2'),
        url('fonts/spartan.woff') format('woff');
  }
@font-face {
  font-family:'Source Sans';
    src:url('fonts/sourcesanspro-regular.eot');
    src:url('fonts/sourcesanspro-regular.eot#iefix') format('embedded-opentype'),
        url('fonts/sourcesanspro-regular.woff2') format('woff2'),
        url('fonts/sourcesanspro-regular.woff') format('woff');
  }
@font-face {
  font-family:'Source Sans Bold';
    src:url('fonts/sourcesanspro-bold.eot');
    src:url('fonts/sourcesanspro-bold.eot#iefix') format('embedded-opentype'),
        url('fonts/sourcesanspro-bold.woff2') format('woff2'),
        url('fonts/sourcesanspro-bold.woff') format('woff');
  }
@font-face {
  font-family:'Source Sans Italic';
    src:url('fonts/sourcesanspro-italic.eot');
    src:url('fonts/sourcesanspro-italic.eot#iefix') format('embedded-opentype'),
        url('fonts/sourcesanspro-italic.woff2') format('woff2'),
        url('fonts/sourcesanspro-italic.woff') format('woff');
  }
@font-face {
  font-family:'icon';
    src:url('fonts/icon.eot?v=1');
    src:url('fonts/icon.eot?v=1#iefix') format('embedded-opentype'),
        url('fonts/icon.woff?v=1') format('woff');
  font-weight:normal;
  font-style:normal;
  }

body {
  font:18px/32px spartan;
  }
h2 {
  font-size:36px;
  line-height:48px;
  }
h3 {
  font-size:26px;
  }
  .prose h3 { line-height:42px; }

h4 {
  font-size:22px;
  line-height:36px;
  }
footer h4 {
  font-size:18px;
  line-height:32px;
  }

.sans,
.prose a,
.prose {
  font-family:'Source Sans';
  font-weight:normal;
  line-height:28px;
  }
.prose .strong,
.prose strong {
  font-family:'Source Sans Bold';
  font-weight:normal;
  }
em,
.prose em {
  font-family:'Source Sans Italic';
  font-weight:normal;
  }
.fixed.fixed {
  position:fixed;
  }
.z1     { z-index:1; }
.z10    { z-index:10; }
.z100   { z-index:100; }
.z1000  { z-index:1000; }
.pad1xr { padding-right:10px; }
.pad2xr { padding-right:20px; }
.underline {
  border-bottom:3px solid #1b1b1b;
  }
  .dark .underline { border-color:#fff; }

.limiter {
  width:83.3333%;
  max-width:960px;
  margin:0 auto;
  }
  .splash > .limiter {
    margin-top:20px;
    margin-bottom:280px;
    }
.min-height {
  min-height:480px;
  }
input[type=text] {
  border:none;
  border-radius:3px 0 0 3px;
  }
section.splash {
  position:absolute;
  overflow-y:auto;
  height:100%;
  left:0;
  right:0;
  z-index:10;
  }
input[type='submit'] {
  font-family:spartan;
  font-size:12px;
  line-height:24px;
  }
.prose .spartan a,
.prose .spartan,
.spartan a,
.spartan { font-family:spartan; }
input[type='submit'],
.button,
button {
  -webkit-transition:all 100ms;
     -moz-transition:all 100ms;
       -o-transition:all 100ms;
          transition:all 100ms;
  }
  .fill-black.button:hover  { background-color:rgba(0,0,0,0.75); color:#fff; }
  .fill-black.button.active { background-color:rgba(0,0,0,0.25); color:#fff; }

button,
.button,
.prose .button,
[type=button],
[type=submit] {
  height:45px;
  line-height:26px;
  }
.button:hover { background-color:#1b1b1b; }

.button.icon:before,
.button.icon:after { line-height:22px; }

.label,
label {
  font-family:spartan;
  display:block;
  margin-bottom:10px;
  font-size:10px;
  line-height:13px;
  text-transform:uppercase;
  letter-spacing:2px;
  }
  .big-label { font-size:12px; }

a.dark        { color:#fff; }
a.dark.quiet.active,
a.dark.active { color:#fff; }
a.dark:hover  { color:rgba(255,255,255,0.6); }

img.contained {
  max-width:100%;
  background-size:contain;
  }
.space > *  {margin-right:10px; }
.capitalize { text-transform:capitalize; }
.uppercase  { text-transform:uppercase; }
.break-word { word-wrap:break-word; }

small,
.prose.small,
.small { font-size:14px; }

.scroll-styled::-webkit-scrollbar {
  width:5px;
  height:5px;
  border-left:0;
  background:rgba(0,0,0,0.05);
  }
.scroll-styled::-webkit-scrollbar-track {
  background:none;
  }
.scroll-styled::-webkit-scrollbar-thumb {
  background:rgba(0,0,0,0.10);
  border-radius:0;
  }
.scroll-styled::-webkit-scrollbar:hover {
  background:rgba(0,0,0,0.10);
  }
label:only-child {
  margin:0;
  }

/* Colors
---------------------------------------------- */
.fill-black { background-color:#1b1b1b; }
.fill-white { background-color:#fff; }
.fill-purple1{ background-color:rgb(231, 29, 139); }
.fill-purple2{ background-color:rgb(160, 40, 132); }
.fill-purple3{ background-color:rgb(118, 37, 101); }
.fill-purple4{ background-color:#53114c; }
.fill-purple5{ background-color:rgb(56, 16, 42); }
.color-purple1{ color:#e71d8b; }
.color-purple2{ color:#a02884; }
.color-purple3{ color:#762565; }
.color-purple4{ color:#571545; }
.color-purple5{ color:#38102a; }
a.color-purple1{ color:#e71d8b; }
a.color-purple2{ color:#a02884; }
a.color-purple3{ color:#762565; }
a.color-purple4{ color:#571545; }
a.color-purple5{ color:#38102a; }
a.dark.color-purple1:hover,
a.dark.color-purple2:hover,
a.dark.color-purple3:hover,
a.dark.color-purple4:hover,
a.dark.color-purple5:hover{ color:#fff; }
.overlay.fill-purple1{ background-color:rgba(231, 29, 139, 0.25); }
.overlay.fill-purple2{ background-color:rgba(160, 40, 132, 0.25); }
.overlay.fill-purple3{ background-color:rgba(118, 37, 101, 0.25); }
.overlay.fill-purple4{ background-color:rgba(87, 21, 69, 0.25); }
.overlay.fill-purple5{ background-color:rgba(56, 16, 42, 0.25); }

.fill-orange1 { background-color:rgb(244, 137, 50); }
.fill-orange2 { background-color:rgb(213, 87, 49); }
.fill-orange3 { background-color:#ad472c; }
.fill-orange4 { background-color:rgb(123, 43, 31); }
.fill-orange5 { background-color:#45150f; }
a.color-orange1 { color:rgb(244, 137, 50); }
a.color-orange2 { color:rgb(213, 87, 49); }
a.color-orange3 { color:#ad472c; }
a.color-orange4 { color:rgb(123, 43, 31); }
a.color-orange5 { color:#45150f; }
a.dark.color-orange1:hover,
a.dark.color-orange2:hover,
a.dark.color-orange3:hover,
a.dark.color-orange4:hover,
a.dark.color-orange5:hover{ color:#fff; }
.color-orange1 { color:#f48932; }
.color-orange2 { color:#d55731; }
.color-orange3 { color:#ad472c; }
.color-orange4 { color:#7b2b1f; }
.color-orange5 { color:#45150f; }
.overlay.fill-orange1 { background-color:rgba(244, 137, 50, 0.25); }
.overlay.fill-orange2 { background-color:rgba(213, 87, 49, 0.25); }
.overlay.fill-orange4 { background-color:rgba(123, 43, 31, 0.25); }

input[type='submit'].fill-orange2:hover { background-color:#ad472c; }
input[type='submit'].fill-orange3:hover { background-color:#7b2b1f; }
input[type='submit'].fill-orange4:hover { background-color:#ad472c; }

.fill-blue1 { background-color:rgb(51, 172, 222); }
.fill-blue2 { background-color:rgb(17, 112, 172); }
.fill-blue3 { background-color:rgb(12, 84, 138); }
.fill-blue4 { background-color:rgb(26, 58, 98); }
.fill-blue5 { background-color:rgb(25, 57, 98); }
.color-blue1 { color:#33acde; }
.color-blue2 { color:#1170ac; }
.color-blue3 { color:#0c548a; }
.color-blue4 { color:#1a3a62; }
.color-blue5 { color:#193962; }
a.color-blue1 { color:#33acde; }
a.color-blue2 { color:#1170ac; }
a.color-blue3 { color:#0c548a; }
a.color-blue4 { color:#1a3a62; }
a.color-blue5 { color:#193962; }
a.dark.color-blue1:hover,
a.dark.color-blue2:hover,
a.dark.color-blue3:hover,
a.dark.color-blue4:hover,
a.dark.color-blue5:hover{ color:#fff; }
.overlay.fill-blue1 { background-color:rgba(51, 172, 222, 0.25); }
.overlay.fill-blue2 { background-color:rgba(17, 112, 172, 0.25); }
.overlay.fill-blue3 { background-color:rgba(12, 84, 138, 0.25); }
.overlay.fill-blue4 { background-color:rgba(26, 58, 98, 0.25); }
.overlay.fill-blue5 { background-color:rgba(25, 57, 98, 0.25); }

.fill-green1 { background-color:rgb(201, 219, 64); }
.fill-green2 { background-color:rgb(143, 187, 73); }
.fill-green3 { background-color:#3c8243; }
.fill-green4 { background-color:rgb(13, 68, 36); }
.fill-green5 { background-color:#10361c; }
.color-green1 { color:#c9db40; }
.color-green2 { color:#8fbb49; }
.color-green3 { color:#3c8243; }
.color-green4 { color:#0d4424; }
.color-green5 { color:#10361c; }
a.color-green1 { color:#c9db40; }
a.color-green2 { color:#8fbb49; }
a.color-green3 { color:#3c8243; }
a.color-green4 { color:#0d4424; }
a.color-green5 { color:#10361c; }
a.dark.color-green1:hover,
a.dark.color-green2:hover,
a.dark.color-green3:hover,
a.dark.color-green4:hover,
a.dark.color-green5:hover{ color:#fff; }
.overlay.fill-green1 { background-color:rgba(201, 219, 64, 0.25); }
.overlay.fill-green2 { background-color:rgba(143, 187, 73, 0.25); }
.overlay.fill-green4 { background-color:rgba(13, 68, 36, 0.25); }

.fill-grey1 { background-color:#e6e6e4; }
.fill-grey2 { background-color:#cccccc; }
.fill-grey3 { background-color:#b3b3b3; }
.fill-grey4 { background-color:#989898; }
.fill-grey5 { background-color:#7f7f7f; }
.color-grey1 { color:#e6e6e4; }
.color-grey2 { color:#cccccc; }
.color-grey3 { color:#b3b3b3; }
.color-grey4 { color:#989898; }
.color-grey5 { color:#7f7f7f; }

.fill-dark1 { background-color:#676767; }
.fill-dark2 { background-color:#4d4f4e; }
.fill-dark3 { background-color:#333333; }
.fill-dark4 { background-color:#1b1b1b; }
.fill-dark { background-color:#080808; }
.color-dark1 { color:#676767; }
.color-dark2 { color:#4d4f4e; }
.color-dark3 { color:#333333; }
a.color-dark4,
.color-dark4 { color:#1b1b1b; }
.fill-citi   { background-color:#00b6f0; }
.fill-citi:hover,
.fill-citi.active { background-color:#003270; color:#fff; }

/* Category fills */
.fill-all                 { background-color:#ddd; }
.fill-community           { background-color:#35b6ef; }
.fill-government          { background-color:#b17ef2; }
.fill-open-data           { background-color:#96e185; }
.fill-quality-assurance   { background-color:#6cb757; }
.fill-microtasking        { background-color:#aebfd1; }
.fill-humanitarian        { background-color:#77bce5; }
.fill-mapping-tools       { background-color:#a58771; }
.fill-analysis            { background-color:#abb9ed; }
.fill-geocoding           { background-color:#fa8e6c; }
.fill-education           { background-color:#f8d671; }
.fill-openstreetmap-org   { background-color:#7092ff; }
.fill-directions          { background-color:#ea5959; }
.fill-historic            { background-color:#a2fec3; }
.fill-osm-as-software     { background-color:#32d8e0; }
.fill-vector-rendering    { background-color:#1c618a; }
.fill-multi               { background-color:#db7cf2; }
.fill-panel               { background-color:#f8d671; }

.fill-light { background-color:#f8f8f8; }

/* Splash logo
---------------------------------------------- */
.stamps {
  background-image:url('img/stamps@2x.png');
  background-size:470px 380px;
  background-repeat:no-repeat;
  width:235px;
  height:190px;
  }
  .stamps.purple  { background-position:0 0; }
  .stamps.green   { background-position:-235px 0; }
  .stamps.blue    { background-position:0 -190px; }
  .stamps.orange  { background-position:-235px -190px; }

.balloons {
  background-image:url('img/balloons@2x.png');
  background-size:240px 360px;
  background-repeat:no-repeat;
  width:240px;
  height:90px;
  }
  .balloons.purple  { background-position:0 0; }
  .balloons.green   { background-position:0 -90px; }
  .balloons.blue    { background-position:0 -180px; }
  .balloons.orange  { background-position:0 -270px; }

.block-logo {
  background-image:url('img/backgrounds/logo.png');
  background-size:290px 290px;
  background-repeat:no-repeat;
  display:inline-block;
  width:290px;
  height:290px;
  bottom:-20px;
  left:-20px;
  }
  .block-logo.block-logo:hover { color:#fff; }
  .block-logo .label {
    position:relative;
    top:85px;
    }

.block-date {
  width:140px;
  left:-50px;
  top:190px;
  }

.shadow-orange2 { box-shadow:10px 10px 0 #d55731; }
.shadow-purple3 { box-shadow:10px 10px 0 rgb(118, 37, 101); }

/* Map leaflet overrides
---------------------------------------------- */
.leaflet-container {
  background-color:#fff;
  font-size:14px;
  }
.leaflet-popup-close-button {
  display:none;
  }
.attribution {
  font-family:'Helvetica Neue', Helvetica, sans-serif;
  color:#1b1b1b;
  background:rgba(255,255,255,0.65);
  position:absolute;
  bottom:0;right:10px;
  display:inline-block;
  padding:2px 10px;
  font-size:11px;line-height:18px;
  z-index:1;
  }
  .attribution a {
    color:#1b1b1b;
    font-weight:500;
    }

/* Global
---------------------------------------------- */
nav a {
  font-size:15px;
  line-height:22px;
  }
header nav    { background-color:rgba(255,255,255,0.5); }
header nav a  { margin-right:15px; }
header nav a:hover,
header nav .active  {
  text-shadow:2px 1px 0 #fff, -2px 1px 0 #fff;
  background-image:-webkit-linear-gradient( left, currentColor 0%, currentColor 100% );
  background-image:        linear-gradient( to right, currentColor 0%, currentColor 100% );
  background-repeat:repeat-x;
  background-position:0 17px;
  background-size:100% 2px;
  }

.logo-title {
  font-size:22px;
  line-height:28px;
  }
.site-title.site-title:hover {
  color:#fff;
  }
footer .contain {
  min-height:200px;
  }
header .stamps {
  bottom:-60px;
  }
footer .stamps {
  bottom:-60px;
  }
.loading:after,
.loading:before {
  content:'';
  display:block;
  position:absolute;
  z-index:10;
  }
  .loading:before {
    background:rgba(0,0,0,0.5);
    left:0;
    top:0;
    width:100%;
    height:100%;
    }
  .loading:after {
    background:rgba(0,0,0,0.25) url(img/loading.svg) 50% 50% no-repeat;
    left:50%;
    top:50%;
    margin:-20px 0 0 -20px;
    width:50px;
    height:50px;
    border-radius:50%;
    }

/* Sponsors/Partners in the footer */
footer a img {
  opacity:0.6;
  }
footer a:hover img {
  opacity:1;
  }

/* 404 page
---------------------------------------------- */
.graphic-404 {
  background:transparent url(img/404@2x.png) no-repeat 0 0;
  display:inline-block;
  background-size:130px 230px;
  width:130px;
  height:230px;
  }

/* Frontpage
---------------------------------------------- */
.leaflet-container {
  background-color:#f0f0f0;
  font-family:'Source Sans';
  }

.map {
  height:100%;
  }
  .layer-control a { font-family:'Source Sans Bold'; }
  .info a { line-height:20px; font-size:12px; }
  .info a:first-child { border-radius:3px 3px 0 0; }
  .info a:last-child  { border-radius:0 0 3px 3px; border-bottom:none; }
  .info a:hover  { background:#1b1b1b; color:#fff; }
  .info a.active:hover,
  .info a.active { color:#fff; background:#1b1b1b; }

.marker-dot {
  width:10px;
  height:10px;
  margin-right:10px;
  }
.marker {
  border-radius:50%;
  box-shadow:inset 0 0 0 5px rgba(0,0,0,0.30);
  }
  .marker.citi  { box-shadow:inset 0 0 0 2px rgba(0,0,0,0.30); }
  .marker.hotel { box-shadow:inset 0 0 0 4px rgba(0,0,0,0.30); }

  .marker.venue {
    -webkit-animation:pulse 2s infinite;
            animation:pulse 2s infinite;
    }
  @-webkit-keyframes pulse {
    0%   { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.30), rgba(108, 142, 55,1) 0 0 0 0; }
    50%  { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.10), rgba(108, 142, 55,0) 0 0 0 15px; }
    100% { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.30); }
    }
  keyframes pulse {
    0%   { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.30), rgba(108, 142, 55,1) 0 0 0 0; }
    50%  { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.10), rgba(108, 142, 55,0) 0 0 0 15px; }
    100% { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.30); }
    }

.marker-duration.marker-duration {
  background:#1b1b1b;
  border:none;
  color:#fff;
  text-align:center;
  font-family:spartan;
  width:60px;
  height:auto;
  padding:2px; 10px;
  }

.overlay {
  background-image:radial-gradient(ellipse closest-side,rgba(0,0,0,0), rgba(0,0,0,0.25));
  }

.tooltip-container {
  bottom:-20px;
  right:-20px;
  }
.tooltip {
  background-color:#1b1b1b;
  width:200px;
  -webkit-transition:all 200ms;
     -moz-transition:all 200ms;
       -o-transition:all 200ms;
          transition:all 200ms;
  }
  .tooltip.off  { color:rgba(0,0,0,0.05); }
  .tooltip:before {
    content:'';
    bottom:-30px;
    right:20px;
    position:absolute;
    width:0;
    height:0;
    z-index:1;
    border-left:0 solid transparent;
    border-right:40px solid transparent;
    border-top:30px solid #1b1b1b;
    }

.caption {
  background-color:rgba(0,0,0,0.75);
  bottom:20px;
  left:20px;
  right:20px;
  width:auto;
  position:absolute;
  }
  .caption:before {
    content:'';
    top:-20px;
    left:20px;
    position:absolute;
    width:0;
    height:0;
    border-left:5px solid transparent;
    border-right:20px solid transparent;
    border-bottom:20px solid rgba(0,0,0,0.5);
    }

.splash p {
  font-size:26px;
  line-height:42px;
  }
.prose.spartan {
  font-size:18px;
  line-height:32px;
  }

/* Date */
.fastener {
  position:absolute;
  top:10px;
  width:5px;
  height:5px;
  }
  .fastener-left  { left:10px; }
  .fastener-right { right:10px; }

.container-date {
  height:250px;
  }

/* Sprite sheet / Images
---------------------------------------------- */
.bg {
  background-size:cover;
  background-repeat:no-repeat;
  }
  .bg-location  { background-image:url('img/backgrounds/location.png'); }

.slideshow .slide {
  background-repeat:no-repeat;
  background-size:cover;
  background-position:bottom;
  width:100%;
  height:320px
  }
  .slide-audience1  { background-image:url('img/backgrounds/audience-1.jpg'); }
  .slide-audience2  { background-image:url('img/backgrounds/audience-2.jpg'); }
  .slide-audience3  { background-image:url('img/backgrounds/audience-3.jpg'); }
  .slide-groupshot  { background-image:url('img/backgrounds/group-shot.jpg'); }
  .slide-danetalk   { background-image:url('img/backgrounds/dane-talk.jpg'); }
  .slide-talk       { background-image:url('img/backgrounds/talk.jpg'); }
  .slide-workshops  { background-image:url('img/backgrounds/workshops.jpg'); }
  .slide-workshop   { background-image:url('img/backgrounds/workshop.jpg'); }
  .slide-explore    { background-image:url('img/backgrounds/exploring-maps.jpg'); }
  .slide-disaster   { background-image:url('img/backgrounds/disaster.jpg'); }
  .slide-drone      { background-image:url('img/backgrounds/drone.jpg'); }

/* Location */
.bg-location {
  min-height:300px;
  background-position:bottom left;
  background-size:contain;
  }

.rcon:after,
.icon:before {
  font-family: 'icon';
  content:'';
  display:inline-block;
  width:20px;
  height:20px;
  font-size: 20px;
  color: inherit;
  vertical-align:top;
  -webkit-background-size:4320px 60px;
          background-size:4320px 60px;
  speak: none;
  font-style:normal;
  font-weight:normal;
  font-variant:normal;
  text-transform:none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  }
.rcon.big,
.icon.big                     { line-height:40px; }
.rcon:not(.big):after,
.icon:not(.big):before        { margin-right:5px; }
.rcon:empty:after,
.icon:empty:before            { margin:0; }

.rcon.big:after,
.icon.big:before {
  font-size: 40px;
  width:40px;
  height:40px;
  }
.rcon.arrow-left:after,
.icon.arrow-left:before   { content:'\e600'; }
.rcon.arrow-right:after,
.icon.arrow-right:before  { content:'\e601'; }
.rcon.menu:after,
.icon.menu:before         { content:'\e602'; }
.rcon.twitter:after,
.icon.twitter:before      { content:'\e603'; }
.rcon.x:after,
.icon.x:before            { content:'\e604'; }
.rcon.bicycle:after,
.icon.bicycle:before      { content:'\e605'; }

.slick-next,
.slick-prev {
  display:inline-block;
  vertical-align:middle;
  text-indent:-999em;
  width:40px;
  height:40px;
  }
  .slick-next   { background-position:0 0; }
  .slick-prev   { background-position:-40px 0; }

  .block-twitter {
    position:relative;
    top:20px;
    left:20px;
     -webkit-transition:all 100ms;
        -moz-transition:all 100ms;
          -o-transition:all 100ms;
             transition:all 100ms;
    }
    .block-twitter:hover { box-shadow:inset 0 0 0 5px rgba(0,0,0,0.10); }
    .block-twitter:after {
      content:'Follow @sotmus on Twitter';
      position:absolute;
      background:#1b1b1b;
      color:#fff;
      padding:20px;
      top:0;
      left:100%;
      width:160px;
      margin-left:25px;
      }
    .block-twitter:before {
      content:'';
      position:absolute;
      left:100%;
      top:20px;
      width:0;
      height:0;
      margin-left:5px;
      border-top:0 solid transparent;
      border-bottom:30px solid transparent;
      border-right:20px solid #1b1b1b;
      }

/* Slideshow
---------------------------------------------- */
.slick-slider {
  position:relative;
  display:block;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
   -khtml-user-select:none;
     -moz-user-select:none;
      -ms-user-select:none;
          user-select:none;
  -ms-touch-action:pan-y;
      touch-action:pan-y;
  }
.slick-list {
  position:relative;
  overflow:hidden;
  display:block;
  margin:0;
  padding:0;
  }
.slick-list.dragging {
  cursor:hand;
  }
.slick-slider .slick-track {
  -webkit-transform:translate3d(0,0,0);
     -moz-transform:translate3d(0,0,0);
      -ms-transform:translate3d(0,0,0);
       -o-transform:translate3d(0,0,0);
          transform:translate3d(0,0,0);
  }
.slick-track {
  position:relative;
  left:0;
  top:0;
  display:block;
  }
.slick-track:before,.slick-track:after {
  content:'';
  display:table;
  }
.slick-track:after {
  clear:both;
  }
.slick-slide {
  float:left;
  height:100%;
  min-height:1px;
  display:none;
  }
.slick-slide.slick-loading img {
  display:none;
  }
.slick-slide.dragging img {
  pointer-events:none;
  }
.slick-vertical .slick-slide {
  display:block;
  height:auto;
  border:1px solid transparent;
  }
.slick-prev,
.slick-next {
  background-image:url(img/sprite@2x.png);
  background-repeat:no-repeat;
  background-color:transparent;
  border-radius:50px;
  position:absolute;
  display:block;
  text-indent:-999em;
  cursor:pointer;
  top:50%;
  outline:none;
  margin:0;
  padding:0;
  margin-top:-20px;
  opacity:1;
  -webkit-background-size:80px 40px;
          background-size:80px 40px;
  }
  .slick-prev { left:10px; }
  .slick-next { right:10px; }

.slick-prev:hover,
.slick-next:hover {
  outline:none;
  background-color:transparent;
  opacity:0.75;
  }
.slick-loading .slick-track,
.slick-loading .slick-slide {
  visibility:hidden;
  }
.slick-slide img,
.slick-initialized .slick-slide {
  display:block;
  }
.show-smallscreen { display:none; }

/* Schedule display
---------------------------------------------- */
.program-header {
  position:absolute;
  width:83.3333%;
  max-width:960px;
  margin:0 auto;
  }
.program-header,
.program-header > div {
  height:50px;
  }
.program-header + div {
  margin-top:90px;
  }
.program-header.affix {
  position:fixed;
  bottom:0;
  top:0;
  -webkit-box-shadow:0 0 4px 0 rgba(0,0,0,0.10);
          box-shadow:0 0 4px 0 rgba(0,0,0,0.10);
  }

.program-blocks .program-block {
  min-height:180px;
  }
  .program-blocks .program-block:first-child { border-right-width:0; }
  .program-blocks .program-block:last-child { border-left-width:0; }

.timestamp { min-width:80px; }
.dropdown {
  top:48px;
  overflow:auto;
  max-height:240px;
  }
  .dropdown > a:last-child { border-width:0; }

.dot   { margin-right:5px; }
.faded { opacity:0.25; }

.program-blocks .highlight:first-child,
.program-blocks .highlight:last-child,
.program-blocks .highlight {
  border:1px solid rgba(0,0,0,0.1);
  border-left-width:1px;
  border-right-width:1px;
  }

/* Small screen
---------------------------------------------- */
@media only screen and (max-width:900px) {
  .program-block.program-block {
    border-left-width:0;
    border-right-width:0;
    min-height:0;
    }
    .program-block.program-block:last-child {
      border-bottom-width:0;
      }
    .program-block small {
      position:relative;
      padding:0;
      }

  .block-date       { position:absolute;top:auto;left:auto;bottom:0;right:0;}
  .hide-smallscreen { display:none; }
  .show-smallscreen { display:block; }
  .splash-island    { width:100%; margin-left:0; }
}

/* Tablet
---------------------------------------------- */
@media only screen and (max-width:770px) {
  .block-date { width:100%; position:relative; }
}

/* Mobile
---------------------------------------------- */
@media only screen and (max-width:640px) {
  .limiter { width:100%; padding:0 10px; }
  .block-logo { bottom:0; left:50%; margin:0 0 20px -145px; }
  .sotmus-sponsor        { padding:0; }
  .sotmus-sponsor > div  { display:block; }
  .container-date {
    height:110px;
    }
  .block.block {
    width:100%;
    }
  .block-twitter:after {
    opacity:1;
    margin-left:35px;
    }
  .block-twitter:before {
    opacity:1;
    margin-left:15px;
    }
  input[type=text] {
    border-radius:3px 3px 0 0;
    }
  input[type='submit'] {
    border-radius:0 0 3px 3px;
    }
  .program-header   { width:100%;left:0; }
  .program-header + div {
    margin-top:70px;
    }
}
