.clearfix {
  zoom: 1;
}

.clearfix:before,
.clearfix:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.clearfix:after {
  clear: both;
}

.grid {
  position: relative;
  zoom: 1;
  margin-right: -20px;
  margin-left: -20px;
}

.grid:before,
.grid:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid:after {
  clear: both;
}

.grid>.col {
  padding-right: 20px;
  padding-left: 20px;
}

.grid>.cel,
.grid .grid-item {
  padding: 20px;
}

.grid-large {
  position: relative;
  zoom: 1;
  margin-right: -25px;
  margin-left: -25px;
}

.grid-large:before,
.grid-large:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-large:after {
  clear: both;
}

.grid-large>.col {
  padding-right: 25px;
  padding-left: 25px;
}

.grid-large>.cel,
.grid-large .grid-item {
  padding: 25px;
}

.grid-medium {
  position: relative;
  zoom: 1;
  margin-right: -1em;
  margin-left: -1em;
}

.grid-medium:before,
.grid-medium:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-medium:after {
  clear: both;
}

.grid-medium>.col {
  padding-right: 1em;
  padding-left: 1em;
}

.grid-medium>.cel,
.grid-medium .grid-item {
  padding: 1em;
}

.grid-small {
  position: relative;
  zoom: 1;
  margin-right: -0.5em;
  margin-left: -0.5em;
}

.grid-small:before,
.grid-small:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-small:after {
  clear: both;
}

.grid-small>.col {
  padding-right: 0.5em;
  padding-left: 0.5em;
}

.grid-small>.cel,
.grid-small .grid-item {
  padding: 0.5em;
}

.grid-mini {
  position: relative;
  zoom: 1;
  margin-right: -1px;
  margin-left: -1px;
}

.grid-mini:before,
.grid-mini:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-mini:after {
  clear: both;
}

.grid-mini>.col {
  padding-right: 1px;
  padding-left: 1px;
}

.grid-mini>.cel,
.grid-mini .grid-item {
  padding: 1px;
}

.grid-6 {
  position: relative;
  zoom: 1;
  margin-right: -3px;
  margin-left: -3px;
}

.grid-6:before,
.grid-6:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-6:after {
  clear: both;
}

.grid-6>.col {
  padding-right: 3px;
  padding-left: 3px;
}

.grid-6>.cel,
.grid-6 .grid-item {
  padding: 3px;
}

.grid-zero {
  position: relative;
  zoom: 1;
  margin-right: 0;
  margin-left: 0;
}

.grid-zero:before,
.grid-zero:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-zero:after {
  clear: both;
}

.grid-zero>.col {
  padding-right: 0;
  padding-left: 0;
}

.grid-zero>.cel,
.grid-zero .grid-item {
  padding: 0;
}

.grid-responsive {
  position: relative;
  zoom: 1;
  position: relative;
  zoom: 1;
  position: relative;
  zoom: 1;
  position: relative;
  zoom: 1;
  position: relative;
  zoom: 1;
}

.grid-responsive:before,
.grid-responsive:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-responsive:after {
  clear: both;
}

@media (max-width: 767px) {
  .grid-responsive {
    margin-right: 5px;
    margin-left: 5px;
  }

  .grid-responsive>.col {
    padding-right: 5px;
    padding-left: 5px;
  }

  .grid-responsive>.cel,
  .grid-responsive .grid-item {
    padding: 5px;
  }
}

.grid-responsive:before,
.grid-responsive:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-responsive:after {
  clear: both;
}

@media (min-width: 768px) and (max-width: 1023px) {
  .grid-responsive {
    margin-right: -5px;
    margin-left: -5px;
  }

  .grid-responsive>.col {
    padding-right: 5px;
    padding-left: 5px;
  }

  .grid-responsive>.cel,
  .grid-responsive .grid-item {
    padding: 5px;
  }
}

.grid-responsive:before,
.grid-responsive:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-responsive:after {
  clear: both;
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .grid-responsive {
    margin-right: -10px;
    margin-left: -10px;
  }

  .grid-responsive>.col {
    padding-right: 10px;
    padding-left: 10px;
  }

  .grid-responsive>.cel,
  .grid-responsive .grid-item {
    padding: 10px;
  }
}

.grid-responsive:before,
.grid-responsive:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-responsive:after {
  clear: both;
}

@media (min-width: 1280px) and (max-width: 1439px) {
  .grid-responsive {
    margin-right: -20px;
    margin-left: -20px;
  }

  .grid-responsive>.col {
    padding-right: 20px;
    padding-left: 20px;
  }

  .grid-responsive>.cel,
  .grid-responsive .grid-item {
    padding: 20px;
  }
}

.grid-responsive:before,
.grid-responsive:after {
  display: table;
  content: "";
  zoom: 1;
  *display: inline;
}

.grid-responsive:after {
  clear: both;
}

@media (min-width: 1440px) {
  .grid-responsive {
    margin-right: -20px;
    margin-left: -20px;
  }

  .grid-responsive>.col {
    padding-right: 20px;
    padding-left: 20px;
  }

  .grid-responsive>.cel,
  .grid-responsive .grid-item {
    padding: 20px;
  }
}

.col,
.cel,
.grid-item {
  position: relative;
  float: left;
}

.col img,
.cel img,
.grid-item img {
  display: inline-block;
  width: 100%;
  height: auto;
}

.col .img-static,
.cel .img-static,
.grid-item .img-static {
  width: auto;
}

.span-content {
  width: calc(100% - 340px);
}

@media (max-width: 767px) {
  .span-content {
    width: 100%;
  }
}

.span-sidebar {
  width: 340px;
  min-height: 250px;
  float: right;
  padding-top: 1.5em;
}

@media (max-width: 767px) {
  .span-sidebar {
    display: none;
  }
}

.span-1 {
  width: 8.3333333333%;
}

.span-2 {
  width: 16.6666666667%;
}

.span-3 {
  width: 25%;
}

.span-4,
.grid-item {
  width: 33.3333333333%;
}

.span-5 {
  width: 41.6666666667%;
}

.span-6 {
  width: 50%;
}

.span-7 {
  width: 58.3333333333%;
}

.span-8 {
  width: 66.6666666667%;
}

.span-9 {
  width: 75%;
}

.span-10 {
  width: 83.3333333333%;
}

.span-11 {
  width: 91.6666666667%;
}

.span-12 {
  width: 100%;
}

@media (max-width: 467px) {
  .span-xxs-1 {
    width: 8.3333333333%;
  }

  .span-xxs-2 {
    width: 16.6666666667%;
  }

  .span-xxs-3 {
    width: 25%;
  }

  .span-xxs-4 {
    width: 33.3333333333%;
  }

  .span-xxs-5 {
    width: 41.6666666667%;
  }

  .span-xxs-6 {
    width: 50%;
  }

  .span-xxs-7 {
    width: 58.3333333333%;
  }

  .span-xxs-8 {
    width: 66.6666666667%;
  }

  .span-xxs-9 {
    width: 75%;
  }

  .span-xxs-10 {
    width: 83.3333333333%;
  }

  .span-xxs-11 {
    width: 91.6666666667%;
  }

  .span-xxs-12 {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .span-xs-1 {
    width: 8.3333333333%;
  }

  .span-xs-2 {
    width: 16.6666666667%;
  }

  .span-xs-3 {
    width: 25%;
  }

  .span-xs-4 {
    width: 33.3333333333%;
  }

  .span-xs-5 {
    width: 41.6666666667%;
  }

  .span-xs-6,
  .span-content .grid-item,
  .grid-item {
    width: 50%;
  }

  .span-xs-7 {
    width: 58.3333333333%;
  }

  .span-xs-8 {
    width: 66.6666666667%;
  }

  .span-xs-9 {
    width: 75%;
  }

  .span-xs-10 {
    width: 83.3333333333%;
  }

  .span-xs-11 {
    width: 91.6666666667%;
  }

  .span-xs-12 {
    width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .span-sm-1 {
    width: 8.3333333333%;
  }

  .span-sm-2 {
    width: 16.6666666667%;
  }

  .span-sm-3 {
    width: 25%;
  }

  .span-sm-4,
  .grid-item {
    width: 33.3333333333%;
  }

  .span-sm-5 {
    width: 41.6666666667%;
  }

  .span-sm-6 {
    width: 50%;
  }

  .span-sm-7 {
    width: 58.3333333333%;
  }

  .span-sm-8 {
    width: 66.6666666667%;
  }

  .span-sm-9 {
    width: 75%;
  }

  .span-sm-10 {
    width: 83.3333333333%;
  }

  .span-sm-11 {
    width: 91.6666666667%;
  }

  .span-sm-12,
  .span-content .grid-item {
    width: 100%;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .span-md-1 {
    width: 8.3333333333%;
  }

  .span-md-2 {
    width: 16.6666666667%;
  }

  .span-md-3 {
    width: 25%;
  }

  .span-md-4 {
    width: 33.3333333333%;
  }

  .span-md-5 {
    width: 41.6666666667%;
  }

  .span-md-6,
  .span-content .grid-item {
    width: 50%;
  }

  .span-md-7 {
    width: 58.3333333333%;
  }

  .span-md-8 {
    width: 66.6666666667%;
  }

  .span-md-9 {
    width: 75%;
  }

  .span-md-10 {
    width: 83.3333333333%;
  }

  .span-md-11 {
    width: 91.6666666667%;
  }

  .span-md-12 {
    width: 100%;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  .span-lg-1 {
    width: 8.3333333333%;
  }

  .span-lg-2 {
    width: 16.6666666667%;
  }

  .span-lg-3,
  .grid-item {
    width: 25%;
  }

  .span-lg-4,
  .span-content .grid-item {
    width: 33.3333333333%;
  }

  .span-lg-5 {
    width: 41.6666666667%;
  }

  .span-lg-6 {
    width: 50%;
  }

  .span-lg-7 {
    width: 58.3333333333%;
  }

  .span-lg-8 {
    width: 66.6666666667%;
  }

  .span-lg-9 {
    width: 75%;
  }

  .span-lg-10 {
    width: 83.3333333333%;
  }

  .span-lg-11 {
    width: 91.6666666667%;
  }

  .span-lg-12 {
    width: 100%;
  }
}

@media (min-width: 1440px) {
  .span-xl-1 {
    width: 8.3333333333%;
  }

  .span-xl-2 {
    width: 16.6666666667%;
  }

  .span-xl-3,
  .grid-item {
    width: 25%;
  }

  .span-xl-4,
  .span-content .grid-item {
    width: 33.3333333333%;
  }

  .span-xl-5 {
    width: 41.6666666667%;
  }

  .span-xl-6 {
    width: 50%;
  }

  .span-xl-7 {
    width: 58.3333333333%;
  }

  .span-xl-8 {
    width: 66.6666666667%;
  }

  .span-xl-9 {
    width: 75%;
  }

  .span-xl-10 {
    width: 83.3333333333%;
  }

  .span-xl-11 {
    width: 91.6666666667%;
  }

  .span-xl-12 {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .span-sm-min-1 {
    width: 8.3333333333%;
  }

  .span-sm-min-2 {
    width: 16.6666666667%;
  }

  .span-sm-min-3 {
    width: 25%;
  }

  .span-sm-min-4 {
    width: 33.3333333333%;
  }

  .span-sm-min-5 {
    width: 41.6666666667%;
  }

  .span-sm-min-6 {
    width: 50%;
  }

  .span-sm-min-7 {
    width: 58.3333333333%;
  }

  .span-sm-min-8 {
    width: 66.6666666667%;
  }

  .span-sm-min-9 {
    width: 75%;
  }

  .span-sm-min-10 {
    width: 83.3333333333%;
  }

  .span-sm-min-11 {
    width: 91.6666666667%;
  }

  .span-sm-min-12 {
    width: 100%;
  }
}

@media (min-width: 1024px) {
  .span-md-min-1 {
    width: 8.3333333333%;
  }

  .span-md-min-2 {
    width: 16.6666666667%;
  }

  .span-md-min-3 {
    width: 25%;
  }

  .span-md-min-4 {
    width: 33.3333333333%;
  }

  .span-md-min-5 {
    width: 41.6666666667%;
  }

  .span-md-min-6 {
    width: 50%;
  }

  .span-md-min-7 {
    width: 58.3333333333%;
  }

  .span-md-min-8 {
    width: 66.6666666667%;
  }

  .span-md-min-9 {
    width: 75%;
  }

  .span-md-min-10 {
    width: 83.3333333333%;
  }

  .span-md-min-11 {
    width: 91.6666666667%;
  }

  .span-md-min-12 {
    width: 100%;
  }
}

.thumb-height {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

@media (min-width: 1440px) {
  .thumb-height {
    height: 268px;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  .thumb-height {
    height: 235px;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .thumb-height {
    height: 264px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .thumb-height {
    height: 198px;
  }
}

@media (max-width: 767px) {
  .thumb-height {
    height: calc((50vw - 11px) * 0.8333);
  }
}

@media (min-width: 1440px) {
  .span-content .thumb-height {
    height: 274px;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  .span-content .thumb-height {
    height: 230px;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .span-content .thumb-height {
    height: 263px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .span-content .thumb-height {
    height: 330px;
  }
}

@media (max-width: 767px) {
  .span-content .thumb-height {
    height: calc((50vw - 31px) * 0.8333);
  }
}

.thumb-height-min {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

@media (min-width: 1440px) {
  .thumb-height-min {
    min-height: 285px;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  .thumb-height-min {
    min-height: 243px;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .thumb-height-min {
    min-height: 270px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .thumb-height-min {
    min-height: 201px;
  }
}

.grid-item .sponsor {
  font-weight: bold;
}

.span-day-1 {
  width: 14.2857142857%;
}

.span-day-2 {
  width: 28.5714285714%;
}

.span-day-3 {
  width: 42.8571428571%;
}

.span-day-4 {
  width: 57.1428571429%;
}

.span-day-5 {
  width: 71.4285714286%;
}

.span-day-6 {
  width: 85.7142857143%;
}

.span-day-7 {
  width: 100%;
}

.span-day-8 {
  width: 114.2857142857%;
}

.span-day-9 {
  width: 128.5714285714%;
}

.span-day-10 {
  width: 142.8571428571%;
}

.span-day-11 {
  width: 157.1428571429%;
}

.span-day-12 {
  width: 171.4285714286%;
}

.grid-flex {
  display: table;
  width: 100%;
}

.grid-flex>.col {
  display: table-cell;
  vertical-align: middle;
  float: none;
}

.grid-flex>.span-12 {
  padding-left: 0.6em;
  padding-right: 0.6em;
}

.grid-flex>.span-12:first-child {
  padding-left: 0;
}

.grid-flex>.span-12:last-child {
  padding-right: 0;
}

.grid-flex-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.grid-flex-vertical {
  display: table;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}

.grid-flex-vertical>.row {
  display: table-row;
  vertical-align: middle;
  position: relative;
}

.grid-flex-vertical .col {
  display: table-cell;
  vertical-align: middle;
  float: none;
}

.grid-flex-vertical .valign-bottom {
  vertical-align: bottom;
}

.debug .col,
.debug .cel,
.debug .grid-item {
  background: rgba(255, 0, 0, .1);
  box-shadow: 0 0 0 1px rgba(255, 0, 0, .1) inset;
}
