/* ----------------------
    Reset
------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: normal;
  font-style: normal;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

article, aside, figure, footer, header, hgroup, nav, section {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}

html {
  -webkit-text-size-adjust: none;
}

/* :focus {
  outline: 0;
} */

object, embed {
  outline: 0;
}

body {
  line-height: 1;
  color: black;
  background: white;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: separate;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
}

blockquote, q {
  quotes: "" "";
}


/* Clearfix */

.group:after {
  content:"";
  visibility: hidden;
  clear:both;
  display: block;
  font-size: 0;
}

/* ----------------------
    Typography
------------------------- */

/* Headings */

h1, h2, h3 {
  font-family: 'Droid Sans', sans-serif;
  color: #fff;
}

h1 {
  /*font-size: 5.56em;*/
  font-size: 3em;
}

h2 {
  font-size: 1.125em;
}

/* Paragraphs, Links, List Items */

p, a, li {
  font-family: 'Droid Sans', sans-serif;
  font-size: 1em;
  line-height: 1.5;
  color: #fff;
}

p {
  margin-bottom: 20px;
}
/*
p:last-of-type {
  margin-bottom: 0;
}*/

p:only-of-type {
  margin-bottom: 0;
}

a {
  color: #7cba2a;
  -webkit-transition: color 0.2s ease-in-out;
     -moz-transition: color 0.2s ease-in-out;
      -ms-transition: color 0.2s ease-in-out;
          transition: color 0.2s ease-in-out;
}

a:hover, a:focus {
  color: #479c18;
}

.title {
  display: block;
  margin-bottom: 10px;
  font-family: 'Droid Sans', sans-serif;
  font-size: 1.375em;
  color: #fff;
}

.section-title {
  margin-bottom: 40px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 4px;
}

.name {
  display: block;
  color: #7cba2a;
  font-family: 'Droid Sans', sans-serif;
  font-size: 1.375em;
}

.social-handle {
  display: block;
  margin-bottom: 10px;
  font-family: 'Droid Sans', sans-serif;
  text-decoration: none;
}

.meta {
  display: block;
  /*margin-bottom: 15px;*/
  color: #ff006c;
  font-family: 'Droid Sans', sans-serif;
}

.description {
}

/* ----------------------
    UI
------------------------- */

.button {
  display: block;
  padding: 15px 20px;
  color: #fff;
  background: #7cba2a;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out;
          transition: all 0.2s ease-in-out;
}

.button:hover, .button:focus {
  color: #fff;
  background: #479c18;
}


/* ----------------------
    Layout
------------------------- */

body {
  background: #181a17;
}

.wrap {
  width: 90%;
  max-width: 1024px;
  padding: 0 5%;
  margin: 0 auto;
}

/*-- Header --*/

.header {
  background: #000;
  padding: 50px 0;
  background: url(../images/background.jpg) bottom left no-repeat #000;
  background-size: cover;
}

.header h1 {
  margin-bottom: 40px;
}

.header h1 span {
  display: block;
  margin-top: 10px;
  font-family: 'Droid Sans', sans-serif;
}

.header p, .header a, .header li {
  text-shadow: 0px 0px 2px #000;
}

.header a {
  color: #fff;
}

.header .description {
  margin-bottom: 40px;
}

.event-details {

}

.event-details li {
  margin-bottom: 40px;
}

.event-details li:last-of-type {
  margin-bottom: 0px;
}

.event-details > li {
  display: inline-block;
  vertical-align: top;
  margin-right: 50px;
  padding-left: 47px;
}

.event-details li li {
  margin-bottom: 10px;
}

.event-details li li:last-of-type {
  margin-bottom: 0;
}

.event-details .title {
  line-height: 32px;
  margin-left: -47px;
}

.event-details .title:before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 32px;
  margin-right: 15px;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-size: 32px;
}

.dates .title:before {
  background-image: url(../images/time-icon.png);
}

.venue .title:before {
  background-image: url(../images/location-icon.png);
}

.twitter .title:before {
  background-image: url(../images/twitter-icon.png);
}



/*-- Notice --*/

.notice {
  background: #fff;
  padding: 20px 0;
  text-align: center;
}

.notice p {
  color: #7cba2a;
  margin-bottom: 20px;
}

.notice .button {
  width: 160px;
  margin: 0 auto;
}



/*-- Keynote Speaker --*/

.keynote-speaker {
  padding: 50px 0;
  background: #272925;
}


/*-- Speakers --*/

.speakers {
  padding: 50px 0;
  background: #181a17;
}

.speakers .speaker-list li:nth-of-type(2n+1) {
  clear: both;
}

.speaker-list {/*
  text-align: center;*/
}

.speaker {
  display: block;
  margin-bottom: 60px;
}

.speaker .img-container {
  float: left;
  width: 100px;
  height: 100px;
  margin-right: 20px;
  text-align: center;
}

.speaker .img-container img {
  width: 100%;
  align: center;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
     -moz-transition:    -moz-transform 0.3s ease-in-out;
      -ms-transition:     -ms-transform 0.3s ease-in-out;
          transition:         transform 0.3s ease-in-out;
  -webkit-border-radius: 100px;
          border-radius: 100px;
  filter: grayscale(1);
}

.speaker:hover .img-container img {
  -webkit-transform: scale(1.0667);
     -moz-transform: scale(1.0667);
      -ms-transform: scale(1.0667);
          transform: scale(1.0667);
  filter: grayscale(0);
}


.speaker .details {
  display: block;
  margin-left: 120px;
}

.speaker .description {
  clear: both;
  float: none;
  margin: 15px 0;
  margin-left: 120px;
}


/*-- Tickets --*/

.tickets {
  padding: 50px 0;
  background: #000;
}

.ticket-options {
  margin-bottom: 40px;
}

.ticket-options .option {
  margin-bottom: 20px;
}

.ticket-options .name, .ticket-options .description {
  float: left;
  width: 60%;
  margin-right: 5%;
}

.ticket-options .name {
  font-size: 1.1em;
}

.ticket-options .price {
  position: relative;
  top: -30px;
  float: right;
  width: 35%;
  color: #fff;
  font-family: 'Droid Sans', sans-serif;
  font-size: 2.5em;
  line-height: 1;
  text-align: right;
}

.price .currency {
  position: relative;
  top: -18px;
  color: #ff006c;
  font-size: 0.375em;
}

.speakers .button,
.tickets .button {
  width: 140px;
  margin: 0 auto;
}

/* -- In-Kind Sponsor -- */

.inkind-sponsor {
  padding: 50px 0;
  text-align: center;
}

.inkind-sponsor .logo {
  margin-bottom: 30px;
}

.inkind-sponsor .name {
  margin-bottom: 20px;
}

/*-- Contact --*/

.contact {
  padding: 50px 0;
  background: #7cba2a;
}

.contact ul {
  text-align: center;
}

.contact li {
  display: block;
  vertical-align: top;
  margin-bottom: 20px;
}

.contact li:last-of-type {
  margin-bottom: 0;
}

.contact li, .contact a {
  color: #fff;
}

.contact a {
  display: block;
}

/*-- Footer --*/

.footer {
  padding: 20px 0;
}

.footer a {
  display: block;
  margin-bottom: 20px;
  font-size: 0.75em;
  text-decoration: none;
}



/* -- Retina Styles -- */

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {

  .dates .title:before {
    background-image: url(../images/time-icon-2x.png);
  }

  .venue .title:before {
    background-image: url(../images/location-icon-2x.png);
  }

  .twitter .title:before {
    background-image: url(../images/twitter-icon-2x.png);
  }

}

/* -- Banner -- */

.banner {
  background-color: #02A0BC;
  color: white;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  padding: 0.5em 2em;
}

.banner a {
  color: inherit;
  font-weight: inherit;
}
