*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,body{
  min-height:100%;
}
body{
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  line-height: 25px;
}
body.bg{
  background-image: url('/images/bg-posters.jpg?v=2');
  background-size:cover;
  background-attachment:fixed;
  background-position:center center;
  color:#FFF;
}

img{
  border: 0;
  max-width:100%;
}

a{
  text-decoration: none;
  cursor:pointer;
  transition:.7s color, .7s background-color;
  color:#D90000;
}
a:focus{
  outline: none;
}
a:hover{
  transition:.3s color, .3s background-color;
}



h2{
  font-size: 30px;
  line-height: 40px;
  margin: 0 0 10px 0;
  text-transform:uppercase;
}
h3{
  font-size: 25px;
  line-height: 35px;
  margin: 50px 0 10px 0;
  text-transform:uppercase;
}
h3:first-child{
  margin-top:0;
}

p{
  margin-bottom: 15px;
}

ul, ol{
  margin: 0 0 15px 30px;
}

.clear{ clear: both; }

.container{
  margin: 0 auto;
  width: 96%;
  max-width: 935px;
  position:relative;
}

.container.wide{
  max-width: 1200px;
}
.container.content{
  background-color:rgba(20,36,72,.8);
  padding: 50px;
}
.container.margined{
  margin-top: 40px;
}



.nav{
  background-color:rgba(20,36,72,.8);
  margin: 20px 0;
  padding: 10px 0;
  height: 60px;
  position:relative;
}


.nav ul{
  list-style-type:none;
  margin: 0;
  text-align:center;
  color:#D90000;
}
.nav ul li{
  display:inline;
}
.nav ul li a{
  color:#fff;
  padding: 0 10px;
  border-right: 1px solid #D90000;
  font-size: 19px;
  line-height: 40px;
}
.nav ul li:last-child a{
  border-right:0;
}
.nav ul li a.current{
  font-weight:bold;
}

.nav .tagline{
  color:#EE3883;
  padding-top: 40px;
  text-align:center;
}
.nav .tagline img{
  display:inline-block;
  width: 60%;
}

.header{
  clear:both;
  text-align:center;
  padding: 10px 0 30px 0;
  color:#FFF;
  text-transform:uppercase;
}
.header img{
  width: 700px;
  max-width: 80%;
}

.date{
  background-color: #CA2535;
  color:#FFF;
  text-align:center;
  font-size: 30px;
  line-height: 30px;
  padding: 15px;
}

.photo{
  background-color:#000;
}
.photo img{
  display:block;
}

.bold{
  font-weight:700;
}

.buttons{
  background-color:rgba(255,255,255,.6);
  text-align:center;
}
.buttons a{
  display: inline-block;
  background-color: #D90000;
  color:#FFF;
  font-size: 30px;
  line-height:35px;
  text-align:center;
  border-radius: 100%;
  height: 220px;
  width: 220px;
  text-transform:uppercase;
  position:relative;
  padding-top: 60px;
  margin: 30px;
  transition:.7s all;
}
.buttons a:hover{
  width: 250px;
  height: 250px;
  padding-top: 70px;
  margin: 20px;
  transition:.3s all;
}



.footer{
  margin-top: 50px;
  padding: 20px;
  color:#fff;
  font-size: 14px;
  font-weight:400;
  text-align:center;
}
.footer img{
  width: 70%;
  max-width: 500px;
}
.footer a{
  color:#fff;
}
.footer .billing{
  font-size: 20px;
  line-height:25px;
  margin-bottom: 40px;
  text-transform:uppercase;
}
.footer .billing .large{
  font-size: 40px;
  line-height:45px;
}
.footer .billing .med{
  font-size: 30px;
  line-height: 35px;
}
.footer .billing img{
  margin: 10px 0 20px 0;
  height: 80px;
}


.register{
  background-color:rgba(20,36,72,.8);
  padding: 50px;
  color:#fff;
  font-size: 30px;
  line-height: 40px;
  font-weight:400;
  text-align:center;
  margin-top: 40px;
}


.button{
  background-color: #D90000;
  color:#FFF;
  padding: 10px 30px;
  border:0;
  text-transform:uppercase;
  font-family: 'Oswald', sans-serif;
  font-size: 20px;
  cursor:pointer;
}



.creative{
  margin-bottom: 50px;
  border-bottom: 1px solid #666;
  padding-bottom: 50px;
}
.creative:last-child{
  border-bottom:0;
}
.creative img{
  float: right;
  width: 30%;
  margin: 0 0 20px 30px;
}
.creative h3{
  font-size: 30px;
  line-height: 35px;
  margin: 0 0 10px 0;
}




table{
  border-collapse:collapse;
}
table tr:first-child td, table tr .heading{
  background-color: #D90000 !important;
  color:#FFF !important;
}
table tr td{
  padding: 5px 10px;
  border-bottom: 1px solid #FFF;
}
table tr:nth-child(2n+2) td{
  /*background-color:#f1f1f1;*/
}
table p:last-child{
  margin:0;
}


.partners{
  display:flex;
  flex-wrap:wrap;
}
.partners a{
  display:block;
  width: 40%;
  margin: 20px 5%;
  height: 150px;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center center;
  background-color:#FFF;
  border: 15px solid #FFF;
  border-radius: 5px;
}

.price{
  display:block;
  font-size: 18px;
  color:#D90000;
}

.packagelogo{
  float:right;
  max-width: 20%;
  margin: 0 0 10px 40px;
}

.pressrelease{
  background-color:#FFF;
  padding: 40px;
  margin-bottom: 30px;
  text-align:center;
  font-size: 18px;
  line-height: 35px;
}


.formlabel{
  margin-top: 15px;
}

.input{
  width:100%;
  padding: 10px;
  border:0;
}

.terms{
  font-size: 12px;
  line-height: 18px;
}
