html, body, main
{
    height: 100%;
}

body {
    margin: 0;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
}

#page {
    min-height: 100%;
    min-height: -moz-calc(100% - 426px);
    min-height: -webkit-calc(100% - 426px);
    min-height: calc(100% - 426px);
    height: auto !important;
    height: 100%
}

#header {
    background: rgba(0,0,0,1);
    border-top: 5px solid #ffc800;
    backface-visibility: hidden;
    display: table;
    padding: 0 40px;
    -webkit-backface-visibility: hidden;
    -webkit-transition: opacity 1000ms ease-in;
    -moz-transition: opacity 1000ms ease-in;
    -ms-transition: opacity 1000ms ease-in;
    -o-transition: opacity 1000ms ease-in;
    transition: opacity 1000ms ease-in;
    width: 100%;
    width: -moz-calc(100% - 80px);
    width: -webkit-calc(100% - 80px);
    width: calc(100% - 80px);
}

#banner {
    display: table-cell;
    vertical-align: middle;
    width: 200px;
}

#banner img {
    height: auto;
    max-height: 50px;
}

#portal {
    color: #ffffff;
    padding: 22px 12px;
    letter-spacing: .05em;
    text-transform: uppercase;
    font-family: 'Lato', sans-serif;
    font-size: 13px;
    font-weight: bold;
    line-height: normal;
    text-decoration: none;
    display: table-cell;
    vertical-align: middle;
}

#nav {
	text-align:center;
	background: rgba(0,0,0,0.9);
    display: table-cell;
    vertical-align: middle;
    float: right;
}

ul.sf-menu
{
  display: block;
  color: #FFF;
  font-size: 14px;
  text-transform: uppercase;
  text-align: left;
  position: relative;
  font-weight: normal;
  margin: 0;
}

ul.sf-menu span {
  display: block;
    color: #ffffff;
    padding: 22px 20px;
    letter-spacing: .05em;
    text-transform: uppercase;
    font-family: 'Lato', sans-serif;
    font-size: 13px;
    font-weight: bold;
    line-height: normal;
    text-decoration: none;
}

ul.sf-menu a {
  display: block;
    color: #ffffff;
    padding: 22px 12px;
    letter-spacing: .05em;
    text-transform: uppercase;
    font-family: 'Lato', sans-serif;
    font-size: 13px;
    font-weight: bold;
    line-height: normal;
    text-decoration: none;
}

ul.sf-menu li.menulevel1 {
  display: inline-block;
  cursor: pointer;
  position: relative;
}

ul.sf-menu li.menulevel1:nth-of-type(11)
{
    display: none;
}

ul.sf-menu li.menulevel1:hover
{
    background-color: #ffc800;
	color: #FFF;
}

ul.sf-menu li.menulevel1 a:hover
{
    color: #fff;
}

ul.sf-menu li li a
{
    padding: 10px 15px 10px 10px;
}

ul.submenu {
  text-align: left;
  display: none;
  position: absolute;
  left: 0;
  top: 30px;
  margin: 0 auto;
  background: rgba(0, 0, 0, 0.75);
  /*padding: 10px;*/
}

ul.submenu li {
  display: block;
  padding-left: 5px;
  color:#FFF;
  background-color: #000;
}

ul.submenu li:hover
{
    background-image:linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 100%), linear-gradient(to bottom, rgba(255, 200, 0, 1) 0%, rgba(255, 200, 0, 1) 100%);
    background-clip: content-box, padding-box;
}

ul.submenu li a {
  transition: color 0.8s ease;
  -moz-transition: color 0.8s ease;
  -webkit-transition: color 0.8s ease;
  color:#FFF;
}

ul.submenu:hover {
  display: block;
}

ul.submenu li:hover a {
  color: #FFF;
}

.mobilemenubutton {
    display: none;
    position: absolute;
    top: 25px;
    left: 10px;
}

#btnMobileMenu
{
  padding: 9px 10px;
  background-color: transparent;
  background-image: none;
  border: 0;
  box-sizing: border-box;
}
#btnMobileMenu:hover
{
  cursor: pointer;
  background-color: transparent;
}
#mobileBanner
{
    display: none;
}
.mobilenav {
    display: none;
    margin-bottom: -50px;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999;
}

#closeLink {
    position: relative;
    top: 10px;
    display: block;
    width: 22px;
    height: 2px;
    background: #ffffff;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -ms-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}

#closeLink:before {
    top: 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    color: #FFF;
}

#closeLink:after {
    top: -1px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
    color: #FFF;
}

.icon-bar {
  background-color: #FFF;
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.icon-bar + .icon-bar {
  margin-top: 6px;
}

#content {
    width: 960px;
    padding: 40px 0;
    margin: 0 auto;
    /*margin-top: 65px;*/
}

div.button {
    height: auto;
    padding: 12px 16px;
    background: #cccbc6;
    color: #333333 !important;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: .1em;
    white-space: normal;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: normal;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
    text-align: center;
    margin-top: 25px;
    width: 85px;
}

.wsite-button.wsite-button-highlight {
    background: #ffc800;
}
.wsite-button.wsite-button-highlight a {
    background: #ffc800;
    color: #ffffff !important;
}

div.button a {
    color: #000;
}


div.button a:hover {
    color: #000;
}

#footer {
    width: 100%;
    background: #222121;
    font-size: 13px;
    color: #ffffff;
    padding: 75px 0 60px;
}

.footerContent {
    width: 960px;
    padding-top: 75px;
    margin: 0 auto;
}

#footer .footerRow {
    display: block;
    margin: 0 auto;
    width: 960px;
}

#footer .footerColumn {
    display: inline-block;
    padding: 10px 0;
    vertical-align: top;
    width: 33%;
}

#footer div.footerColumn h2 {
    color: #989794;
    margin: 0;
    padding-bottom: 15px;
}
 
#authrep {
    width: 960px;
    /*padding-top: 40px;*/
    padding-bottom: 75px;
    margin: 0 auto;
    text-align: right;
}

.errormsg, .warningmsg {
    color: #ee0101;
}

#audio div.audioFiles, #video, div.videoFiles, #progressnotes
{
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
  padding: 0;
  text-align: center;
}

#progressnotes {
    width: 100%;
}

div.videoFiles
{
  width: 300px;
}

#audio div.audioFiles, #video, div.videoFiles h2
{
  text-align: left;
}

#horsetabs li a {
    margin: 0;
}

#horsename {
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
}

#horselist {
    display: inline-block;
    vertical-align: middle;
}
#horselist select {
    font-size: 16px;
}

video:hover {
   cursor:  pointer;
}

.bannerAdvert img {
  max-width: 100%;
}

.bannerRight {
  float: right;
  margin-bottom: 25px;
  width: 200px;
  height: 100px;
}

.bannerRight img {
  max-width: 200px;
}

.clearfix:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

* html .clearfix {
    height: 1%;
}

@media only screen and (max-width: 1680px) {
    #nav {
        max-width: 1055px;
    }

    ul.sf-menu {
        padding: 0;
    }
}

@media only screen and (max-width: 768px)
{
    img {
        max-width: 100%;
    }
    #header {
        height: 70px;
    }
    #banner {
        display: block;
        text-align: center;
        padding: 10px 0;
    }
    #nav {
        display: none;
    }

    .mobile-nav label.hamburger span:before { top: 0; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
    .mobile-nav label.hamburger span:after { top: -1px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); }
 

    .mobilemenubutton {
        display: block;
    }
    .mobilenav {
        width: 100%;
    }
    ul.mobilemenu
    {
        text-align: center;
        padding: 0 40px;
        padding-top: 40px;
        background-color:rgba(0,0,0,0.9);
        color: #FFF;
        margin: 0;
    }
    ul.mobilemenu li
    {
        display: block;
        padding: 10px 0;
        font-size: 14px;
        text-transform: uppercase;
        font-family: 'Lato', sans-serif;
        font-weight: bold;
        width: 100%;
    }
    ul.mobilemenu a
    {
          text-decoration: none;
          color: inherit;
    }

    #content {
        width: 100%;
    }

    #footer div.footerRow {
        display: block;
        margin: 0 auto;
        padding: 0 25px;
        width: 100%;
        width: -moz-calc(100% - 50px);
        width: -webkit-calc(100% - 50px);
        width: calc(100% - 50px);
    }

    #footer div.footerColumn {
        display: block;
        width: 100%;
    }

    #footer div.footerContent img {
        max-width: 100%;
    }

    .footerContent {
        width: 100%;
    }

    #authrep {
        margin-top: 50px;
        padding: 40px 25px;
        width: -moz-calc(100% - 50px);
        width: -webkit-calc(100% - 50px);
        width: calc(100% - 50px);
    }

    table.responsivetable, table.responsivetable thead, table.responsivetable tbody, table.responsivetable th, table.responsivetable td, table.responsivetable tr {
        display: block;
        border: none;
    }
  
    table.responsivetable thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
  
    table.responsivetable tr {
        border: 1px solid #ccc;
        margin-bottom: 10px;
        }
  
    table.responsivetable tr:last-child td {
        padding-bottom: 6px;
    }
  
    table.responsivetable td {
        /* Behave  like a "row" */
        border: none;
        border-bottom: 1px solid #dbdad8;
        position: relative;
        padding-left: 70px;
        text-transform: none;
        padding-bottom: 6px;
        padding-top: 6px;
    }

      table.responsivetable td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        left: 6px;
        width: 60px;
        padding-right: 10px;
        white-space: nowrap;
      }

      table.responsivetable.myhorses td {
          padding-left: 10px;
      }

    table.responsivetable.racehistory td:nth-of-type(1):before {
        content: "Date";
    }

    table.responsivetable.racehistory td:nth-of-type(2):before {
        content: "Location";
    }

    table.responsivetable.racehistory td:nth-of-type(3):before {
        content: "Position";
    }

    table.responsivetable.racehistory td:nth-of-type(4):before {
        content: "Race";
    }

    table.responsivetable.racehistory td:nth-of-type(5):before {
        content: "Distance";
    }

    table.responsivetable.location td:nth-of-type(1):before {
        content: "Status";
    }

    table.responsivetable.location td:nth-of-type(2):before {
        content: "Date";
    }

    table.responsivetable.location td:nth-of-type(3):before {
        content: "Property";
    }

    table.responsivetable.myaccounts td:nth-of-type(1):before {
        content: "Account Code";
    }

    table.responsivetable.myaccounts td:nth-of-type(2):before {
        content: " ";
    }

    table.responsivetable.myaccounts td:nth-of-type(3):before {
        content: "Account Name";
    }

    table.responsivetable.myaccounts td:nth-of-type(4):before {
        content: "Action";
    }

    table.responsivetable.myaccounts td {
        padding-left: 115px;
    }

    #videoPop #videoFile {
        height: 300px;
        width: 300px;
    }
}