@font-face {
  font-family: 'omega-font';
  font-weight: normal;
  font-style: normal;
  src: url('../fonts/omegact/omegact-regular-webfont.eot');
  src: url('../fonts/omegact/omegact-regular-webfont.eot') format('embedded-opentype'), url('../fonts/omegact/omegact-regular-webfont.woff') format('woff'), url('../fonts/omegact/omegact-regular-webfont.ttf') format('truetype'), url('../fonts/omegact/omegact-regular-webfont.svg#CreativeBlockBBBold') format('svg');
}

@font-face {
  font-family: 'omega-font-bold';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/omegact/omegact-bold-webfont.eot');
    src: url('../fonts/omegact/omegact-bold-webfont.eot') format('embedded-opentype'), url('../fonts/omegact/omegact-bold-webfont.woff') format('woff'), url('../fonts/omegact/omegact-bold-webfont.woff2') format('woff2'), url('../fonts/omegact/omegact-bold-webfont.ttf') format('truetype'), url('../fonts/omegact/omegact-bold-webfont.svg') format('svg');
}

@font-face {
  font-family: 'omega-font-light';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/omegact/omegact-light-webfont.eot');
    src: url('../fonts/omegact/omegact-light-webfont.eot') format('embedded-opentype'), url('../fonts/omegact/omegact-light-webfont.woff') format('woff'), url('../fonts/omegact/omegact-light-webfont.woff2') format('woff2'), url('../fonts/omegact/omegact-light-webfont.ttf') format('truetype'), url('../fonts/omegact/omegact-light-webfont.svg') format('svg');
}

@font-face {
  font-family: 'austin-semibold-italic';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/austin/Austin-SemiboldItalic-Web.eot');
    src: url('../fonts/austin/Austin-SemiboldItalic-Web.eot') format('embedded-opentype'), url('../fonts/austin/Austin-SemiboldItalic-Web.woff') format('woff'), url('../fonts/austin/Austin-SemiboldItalic-Web.woff2') format('woff2'), url('../fonts/austin/Austin-SemiboldItalic-Web.ttf') format('truetype'), url('../fonts/austin/Austin-SemiboldItalic-Web.svg') format('svg');
}

@font-face {
  font-family: 'icomoon';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/icomoon/icomoon.eot');
    src: url('../fonts/icomoon/icomoon.eot') format('embedded-opentype'), url('../fonts/icomoon/icomoon.woff') format('woff'), url('../fonts/icomoon/icomoon.woff2') format('woff2'), url('../fonts/icomoon/icomoon.ttf') format('truetype'), url('../fonts/icomoon/icomoon.svg') format('svg');
}

html,
body {
  font-family: 'omega-font';
  overflow-x: hidden;
  width: 100%;
  margin: 0;
  background-color: #f2f2f2;
  -webkit-font-smoothing: antialiased;
}

body {
  background: #f2f2f2;
}

h1,
h2,
h3,
h4 {
  font-size: inherit;
  font-weight: inherit;
  display: inherit;
  margin: inherit;
}

*:focus {
  outline: 0;
  box-shadow: none;
}

.hidden {
  display: none;
}

.desktop {
  display: none;
}

.heading {
  position: relative;
}

.heading .black-mist {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .5);
}

.heading img:not(.desktop) {
  display: block;
  width: 100%;
}

.heading .title {
  font-family: 'omega-font-bold';
  font-size: 30px;
  position: absolute;
  top: 50%;
  width: 100%;
  margin: 0 auto;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  text-align: center;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: white;
}

.heading .title p:not(.subtitle) {
  margin: 0 auto;
}

.heading .subtitle {
  font-family: 'omega-font';
  font-size: 16px;
  position: absolute;
  top: 100%;
  left: 50%;
  width: 80%;
  -webkit-transform: translate3d(-50%, 0, 0);
          transform: translate3d(-50%, 0, 0);
}

.title-red {
  font-size: 25px;
  margin-bottom: 20px;
  text-transform: uppercase;
  color: #c40d2e;
}

.title-red.hr:after {
  display: block;
  width: 100%;
  height: 1px;
  margin: 8.33333333% 0 8.33333333% 0;
  content: '';
  background: #f0f0f0;
}

header .header-fix {
  position: absolute;
  z-index: 1000;
  top: 0;
  width: 100%;
  max-width: 1600px;
  padding: 10px 0;
  transition: .5s;
  color: white;
}

header .header-fix .burger {
  cursor: pointer;
}

header .header-fix .burger-menu {
  font-family: 'omega-font-bold';
  position: absolute;
  z-index: 1000;
  top: 20px;
  left: 20px;
  display: none;
  padding: 40px 70px;
  letter-spacing: .07em;
  text-transform: uppercase;
  background: black;
}

header .header-fix .burger-menu a {
  display: block;
  margin: 15px 0;
  text-decoration: none;
  color: white;
}

header .header-fix .burger-menu .close {
  position: absolute;
  top: 25px;
  left: 25px;
  cursor: pointer;
}

header .header-fix .burger-menu .close:before {
  font-family: 'icomoon';
  content: '\e905';
}

header .header-fix a.logo-link {
  text-decoration: none;
  color: white;
}

header .header-fix .live-button {
  font-family: 'omega-font-bold';
  font-size: 12px;
  margin-right: 20px;
  padding: 10px 20px;
  transition: .2s;
  text-decoration: none;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #c40d2e;
  background: white;
}

header .header-fix .live-button:before {
  font-family: 'icomoon';
  font-size: 8px;
  margin-right: 3px;
  content: '\e90c';
}

header .header-fix .live-button:hover {
  color: white;
  background: #c40d2e;
}

header .header-sticky {
  position: fixed;
  z-index: 1000;
  top: 0;
  width: 100%;
  max-width: 1600px;
  height: 60px;
  transition: .2s;
  -webkit-transform: translate3d(0, -81px, 0);
          transform: translate3d(0, -81px, 0);
  background: white;
}

header .header-sticky.headroom--top,
header .header-sticky.headroom--pinned {
  -webkit-transform: translate3d(0, -81px, 0);
          transform: translate3d(0, -81px, 0);
}

header .header-sticky.headroom--unpinned {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

header .header-sticky .header-content {
  width: 100%;
  height: 100%;
}

header .header-sticky .header-item {
  position: relative;
  display: block;
  float: left;
  height: 100%;
}

header .header-sticky .header-item:nth-of-type(1) {
  width: 25%;
  border-bottom: 1px solid #f0f0f0;
}

header .header-sticky .header-item:nth-of-type(2) {
  width: 50%;
  border-bottom: 1px solid #f0f0f0;
}

header .header-sticky .header-item:nth-of-type(3) {
  width: 25%;
}

header .header-sticky .burger,
header .header-sticky .close {
  position: absolute;
  top: 50%;
  left: 20px;
  cursor: pointer;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
}

header .header-sticky .burger:before,
header .header-sticky .close:before {
  font-family: 'icomoon';
  font-size: 20px;
  content: '\e904';
}

header .header-sticky .close {
  display: none;
}

header .header-sticky .close:before {
  font-size: 20px;
  content: '\e905';
}

header .header-sticky .burger-menu {
  position: absolute;
  display: none;
  width: 100%;
  background: black;
}

header .header-sticky .burger-menu a {
  font-family: 'omega-font-bold';
  display: block;
  margin: 20px 0 20px 30px;
  text-decoration: none;
  text-transform: uppercase;
  color: white;
}

header .header-sticky .logo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}

header .header-sticky .logo:before {
  font-family: 'icomoon';
  font-size: 60px;
  content: '\e90a';
  color: #c40d2e;
}

header .header-sticky .live-button {
  font-family: 'omega-font-bold';
  font-size: 13px;
  position: absolute;
  width: 100%;
  height: 100%;
  transition: .2s;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: white;
  border-bottom: 1px solid #c40d2e;
  background: #c40d2e;
}

header .header-sticky .live-button .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}

header .header-sticky .live-button .icon:before {
  font-family: 'icomoon';
  font-size: 10px;
  margin-right: 7px;
  content: '\e90c';
}

header .header-sticky .live-button:hover {
  color: #c40d2e;
  border-bottom-color: #f0f0f0;
  background: white;
}

header .header-fix .header-content {
  display: table;
  width: 100%;
  table-layout: fixed;
}

header .header-fix .header-item {
  display: table-cell;
  vertical-align: middle;
}

header .header-fix .header-item .burger:before {
  font-family: 'icomoon';
  font-size: 20px;
  margin-left: 20px;
  content: '\e904';
  cursor: pointer;
}

header .header-fix .header-item .logo:before {
  font-family: 'icomoon';
  font-size: 60px;
  content: '\e90a';
}

header .header-fix .header-item:nth-child(2) {
  text-align: center;
}

header .header-fix .header-item:nth-child(3) {
  position: relative;
  text-align: right;
}

footer {
  font-size: 11px;
  text-align: center;
  color: #7f7f7f;
}

footer .grey-part {
  margin: 0 auto;
  padding: 5px 0 5px 0;
  background: #e8e8e8;
}

footer .grey-part .legal {
  display: none;
}

footer .grey-part a {
  color: #7f7f7f;
}

footer .grey-part a:nth-of-type(1) {
  margin-right: 10px;
}

footer .grey-part a:nth-of-type(2) {
  margin: 0 10px;
}

footer .grey-part a:nth-of-type(3) {
  margin-left: 10px;
}

footer .red-part {
  font-size: 16px;
  position: relative;
  padding: 20px 0;
  text-transform: uppercase;
  background: #c40d2e;
}

footer .red-part a {
  width: 100%;
  text-decoration: none;
  color: white;
}

.calendar-page {
  max-width: 1600px;
  margin: 0 auto;
  background: white;
}

.calendar-page .page-wrapper {
  width: 83.33333333%;
  margin: 16.66666667% auto;
}

.calendar-page .block-table .row {
  position: relative;
  margin: 30px 0;
}

.calendar-page .block-table .row:after {
  display: block;
  width: 100%;
  height: 1px;
  margin-top: 30px;
  content: '';
  background: #f0f0f0;
}

.calendar-page .block-table .row.table-header {
  display: none;
}

.calendar-page .block-table .row.active .sport,
.calendar-page .block-table .row.active .date {
  vertical-align: baseline;
}

.calendar-page .block-table p {
  margin: 5px 0;
}

.calendar-page .block-table a {
  text-decoration: none;
  color: inherit;
}

.calendar-page .block-table .sport {
  font-family: 'omega-font-bold';
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #1e1e1e;
}

.calendar-page .block-table .sport.swimming:before {
  content: '\e90e';
}

.calendar-page .block-table .sport:before {
  font-family: 'icomoon';
  font-size: 25px;
  margin-right: 10px;
  vertical-align: sub;
}

.calendar-page .block-table .sport.swimming:before {
    content: '\e90e';
    width: 33px;
    float: left;
    margin-top: -3px;
}

.calendar-page .block-table .sport.diving:before {
    content: '\e906';
    width: 33px;
    float: left;
    margin-top: -3px;
}

.calendar-page .block-table .sport.artistic-swimming:before {
    content: '\e903';
    width: 33px;
    float: left;
    margin-top: -3px;
}

    .calendar-page .block-table .sport.high-diving:before {
        content: '\e909';
        width: 30px;
        float: left;
        margin-top: -3px;
        font-size: 20px;
        margin-left: 3px;
    }

.calendar-page .block-table .sport.water-polo:before {
    content: '\e90f';
    width: 33px;
    float: left;
    margin-top: -3px;
}

.calendar-page .block-table .sport.open-water:before {
    content: '\e90b';
    width: 33px;
    float: left;
    margin-top: -3px;
}

    .calendar-page .block-table .sport.athletics:before {
        content: '\e910';
        width: 33px;
        float: left;
        margin-top: -3px;
        font-size: 22px;
    }



    .calendar-page .block-table .sport.bobsleigh---skeleton:before {
        content: '\e911';
        width: 33px;
        float: left;
        margin-top: -3px;
        font-size: 22px;
    }

.calendar-page .block-table .detail {
  font-family: 'omega-font-bold';
  font-size: 18px;
  position: relative;
  margin-top: 15px;
  text-transform: uppercase;
  color: #c40d2e;
}

.calendar-page .block-table .detail a {
  position: relative;
}

.calendar-page .block-table .detail a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  transition: .2s;
  background: transparent;
}

.calendar-page .block-table .detail a:hover:after {
  background: #c40d2e;
}

.calendar-page .block-table .detail .multiple {
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.calendar-page .block-table .detail .multiple:before {
  position: absolute;
  bottom: -3px;
  display: block;
  width: 100%;
  height: 1px;
  margin-top: 5px;
  content: '';
  transition: .2s;
  background: transparent;
}

.calendar-page .block-table .detail .multiple.active:before {
  background: #c40d2e;
}

.calendar-page .block-table .detail .multiple:after {
  display: block;
  width: 100%;
  height: 1px;
  content: '';
  transition: .2s;
  background: transparent;
}

.calendar-page .block-table .detail .multiple + ul {
  display: none;
  margin: 30px 0 20px 0;
  padding: 0;
  list-style: none;
  background: white;
}

.calendar-page .block-table .detail .multiple + ul li {
  font-family: 'omega-font-bold';
  margin: 7px 0;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #1e1e1e;
}

.calendar-page .block-table .detail .multiple + ul li a:hover:after {
  background: #1e1e1e;
}

.calendar-page .block-table .detail .multiple + ul li:before {
  font-family: 'icomoon';
  font-size: 20px;
  margin-right: 15px;
  vertical-align: baseline;
}

.calendar-page .block-table .detail .multiple + ul li.swimming:before {
  content: '\e90e';
}

.calendar-page .block-table .detail .multiple + ul li.diving:before {
  content: '\e906';
}

.calendar-page .block-table .detail .multiple + ul li.artistic-swimming:before {
  content: '\e903';
}

.calendar-page .block-table .detail .multiple + ul li.high-diving:before {
  content: '\e909';
}

.calendar-page .block-table .detail .multiple + ul li.water-polo:before {
  content: '\e90f';
}

.calendar-page .block-table .detail .multiple + ul li.open-water:before {
  content: '\e90b';
}
    .calendar-page .block-table .detail .multiple + ul li.athletics:before {
        content: '\e910';
    }
    .calendar-page .block-table .detail .multiple + ul li.bobsleigh---skeleton:before {
        content: '\e911';
    }

.calendar-page .block-table .date {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: .04em;
  color: #555;
}

@media all and (min-width: 640px), print {
  .heading img.desktop {
    width: 100%;
  }

  .heading img.mobile {
    display: none;
  }

  .mobile {
    display: none;
  }

  .desktop {
    display: block;
  }

  .desktop.inline {
    display: inline;
  }
}

@media all and (min-width: 960px), print {
  .heading .title {
    font-size: 40px;
  }

  .heading .subtitle {
    font-size: 20px;
    margin: 15px auto 0 auto;
  }

  .title-red {
    font-family: 'omega-font-bold';
    font-size: 32px;
    letter-spacing: .04em;
  }

  .title-red.hr:after {
    display: none;
  }

  header .header-fix .header-content .burger:before {
    margin-left: 45px;
  }

  header .header-fix .header-content .logo:before {
    font-size: 100px;
  }

  header .header-fix .header-content .live-button {
    font-size: 16px;
    padding: 20px 60px;
    letter-spacing: .1em;
  }

  header .header-fix .header-content .live-button:before {
    font-size: 12px;
    margin-right: 10px;
  }

  header .header-sticky {
    height: 80px;
  }

  header .header-sticky .header-item:nth-of-type(1) {
    width: 18.75%;
  }

  header .header-sticky .header-item:nth-of-type(2) {
    width: 62.5%;
  }

  header .header-sticky .header-item:nth-of-type(3) {
    width: 18.75%;
  }

  header .header-sticky .burger {
    left: 40px;
  }

  header .header-sticky .burger:before {
    font-size: 25px;
  }

  header .header-sticky .close {
    left: 42px;
  }

  header .header-sticky .burger-menu {
    top: 0;
    left: 60px;
    width: unset;
    height: 100%;
    background: transparent;
  }

  header .header-sticky .burger-menu a {
    font-size: 20px;
    display: inline-block;
    height: 100%;
    margin: 27px 0 0 30px;
    color: black;
  }

  header .header-sticky .logo:before {
    font-size: 70px;
  }

  header .header-sticky .live-button {
    font-size: 16px;
  }

  header .header-sticky .live-button .icon {
    width: 80%;
  }

  header .header-sticky .live-button .icon:before {
    font-size: 12px;
  }

  footer {
    display: table;
    width: 100%;
  }

  footer .grey-part {
    display: table-cell;
    width: 70%;
    padding-left: 3%;
    text-align: left;
    vertical-align: middle;
  }

  footer .grey-part p,
    footer .grey-part a {
    font-size: 13px;
    display: inline-block;
  }

  footer .grey-part a {
    margin-left: 15px;
  }

  footer .red-part {
    display: table-cell;
    width: 30%;
    vertical-align: middle;
  }

  .calendar-page .page-wrapper {
    width: 75%;
    margin-top: 9.375%;
  }

  .calendar-page .block-table {
    display: table;
    width: 100%;
  }

  .calendar-page .block-table .row {
    position: relative;
    display: table-row;
  }

  .calendar-page .block-table .row.table-header {
    display: table-row;
    color: #7f7f7f;
  }

  .calendar-page .block-table .row.table-header p,
    .calendar-page .block-table .row.table-header h3 {
    padding-bottom: 15px;
    border-bottom: 1px solid #d1d1d1;
  }

  .calendar-page .block-table .row.table-header .date {
    padding: 0 1.66666667%;
  }

  .calendar-page .block-table .row .sport,
    .calendar-page .block-table .row > p,
    .calendar-page .block-table .row > h3 {
    font-size: 15px;
    display: table-cell;
    padding: .83333333% 0;
    vertical-align: baseline;
    border-bottom: 1px solid #e8e8e8;
  }

  .calendar-page .block-table .row .sport {
    position: relative;
    width: 20.83333333%;
  }

  .calendar-page .block-table .row .date {
    padding: 5px 1.66666667% 15px 1.66666667%;
  }

  .calendar-page .block-table .row .detail {
    font-size: 16px;
    width: 41.66666667%;
  }

  .calendar-page .block-table .row .detail .multiple {
    display: table-cell;
  }

  .calendar-page .block-table .row .detail .multiple:before {
    pointer-events: none;
  }

  .calendar-page .block-table .row .detail .multiple:after {
    display: none;
  }

  .calendar-page .block-table .row .detail ul {
    white-space: nowrap;
  }
}
