@import "_mixins.less";

/* =============================================================================
   MAIN LAYOUT
   ========================================================================== */
.wrapper {
  margin: 0 auto;
  width:960px;
  position:relative;
}
.content {padding: 50px 0;}
.content section {padding-top: 50px;}

/* =============================================================================
   BASIC STYLES
   ========================================================================== */
h2, h3, h4 {
  font-size: 5em;
  font-weight: normal;
  margin-bottom:.4em;
  letter-spacing: -.02em;
}
h3 {font-size: 4em;}
h4 {font-size:3em;}
p {
  font-size:1.6em;
  line-height:1.6em;
  margin-bottom: 1.4em;
}
.photo {
  max-width:100%;
  position:relative;
  top:-1px;
}

/* =============================================================================
   NAVIGATION
   ========================================================================== */
nav {
  padding:15px 0;
  position: fixed;
  width: 100%;
  z-index: 10;
}
.nav-item {
  display: inline-block;
  margin-right:15px;
}
.nav-link {font-size: 1.4em;}

/* =============================================================================
   HEADER
   ========================================================================== */
.header {
  padding: 100px 0 100px;
  text-align:center;
}
.logo-name {
  margin-bottom: 0;
  font-size: 10em;
  letter-spacing: -.04em;
}
.tagline {
  margin-bottom:50px;
  font-size: 2em;
  letter-spacing: -.02em;
}
.call-action-area .price {
  font-size:4em;
  vertical-align: center;
  margin-right:20px;
}
.call-action-area .call-action-link, .btn {
  position:relative;
  top:-5px;
  cursor: pointer;
  display: inline-block;
  padding: 15px 30px;
  font-size:2em;
  line-height:1em;
  vertical-align: center;
  letter-spacing: -.02em;
  .transition(all 0.3s ease-out);
}
.call-action-area .call-action-link:hover, .call-action-area .call-action-link:focus, .btn:hover, .btn:focus {top:0;}

/* =============================================================================
   ABOUT
   ========================================================================== */
.about {
  padding:19px;
  margin: 0 -20px 0;
}

/* =============================================================================
   SPEAKER
   ========================================================================== */
.speakers-item {
  position:relative;
  min-height:180px;
  padding-left: 180px;
  margin-bottom:30px;
  border-bottom:1px dashed #e7e7e7;
}
.speaker-photo {
  position:absolute;
  top:0;
  left:0;
  display: block;
  width: 120px;
  height: 120px;
}
.speech-title {
  padding-top:10px;
  font-size:2em;
  margin-bottom:1em;
}
.speech-time {
  font-size:18px;
  padding: 10px 15px;
  letter-spacing:-.03em;
}
.speakers-name{font-size:1.6em;}
.speakers-item p {font-size:1.4em;}

/* =============================================================================
   SCHEDULE
   ========================================================================== */
.schedule-tbl {padding:20px;}
.schedule-tbl table {
  border-collapse: collapse;
  font-size:1em;
}
.schedule-tbl td, .schedule-tbl th {
  position:relative;
  padding:20px 30px;
  font-size:1.4em;
  line-height:1.4em;
  text-align:left;
}
.schedule-tbl th {
  padding: 5px 30px;
  color:#2b2b2b;
  font-size:2em;
  font-weight: bolder;
}
.schedule-tbl .speaker-photo {
  position:relative;
  width: 40px;
  height: 40px;
  float:left;
  margin-right:20px;
}
.schedule-tbl .schedule-time {text-align:center;}
.schedule-slot {
  width: 250px;
  font-size:16px;
}
.speakers-company {
  display: block;
  font-size:12px;
}

/* =============================================================================
   SPONSORS  and  PARTNERS
   ========================================================================== */
.sponsor-item, .partner-item {
  display: inline-block;
  margin: 0 30px 30px 0;
}
.sponsor--link, .partner-link {
  display: block;
  width: 150px;
  height:150px;
  text-align:center;
  vertical-align: middle;
  line-height: 150px;
}

/* =============================================================================
   CONTATO
   ========================================================================== */
.form label{
  font-size:16px;
  display: block;
  margin-bottom:.5em;
}
.control-group {
  height:auto;
  clear:both;
  margin-bottom:20px;
}
.control-group-name, .control-group-email {
  clear:none;
  width:467px;
  float:left;
  margin-right:25px;
}
.control-group-email {margin-right:0;}
.form input[type=text], .form input[type=email], .form textarea{
  .box-sizing(border-box);
  display: block;
  width:100%;
  min-height:15px;
  padding:10px;
  font-size:14px;
}
.form textarea {height:300px;}
.form .btn {float:right;}



/* =============================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width : 1024px) {
  .wrapper {
    width: 100%;
    padding: 0 20px;
    .box-sizing(border-box);
  }
  .about {margin: 0;}
}

@media only screen and (min-width:320px) and (max-width : 800px) {

  /* schedule */
  .schedule-tbl {padding:1px;}
  .schedule-tbl td, .schedule-tbl th {padding:10px;}
  .schedule-tbl th {
    padding: 10px;
    font-size:1.8em;
  }
  .schedule-tbl .speaker-photo {
    width: 40px;
    height: 40px;
    margin-right:5px;
  }
  .schedule-tbl .schedule-slot {
    width: 120px;
  }
  .schedule-tbl td.schedule-slot {
    font-size:14px;
    line-height:1.2em;
  }
  .schedule-tbl .schedule-time {
    width:60px;
    padding:10px 0 10px 5px;
    text-align:left;
  }
  .schedule-tbl td.schedule-description {font-size:12px;}

  /* partners */
  .sponsor-item, .partner-item {margin: 0 5px 10px 0;}
  .sponsor--link, .partner-link {
    width: 95px;
    height:95px;
    line-height: 95px;
  }

  /* contact */
  .control-group-name, .control-group-email {
    clear:both;
    width:100%;
    float:none;
    margin-right:0;
  }
  .form .btn {margin-bottom:50px;}
}

@media only screen and (max-width : 480px) {
  /* nav */
  nav {display: none;}
  .header {padding:20px 0;}
  .logo-name {font-size: 4em;}
  .tagline {
    margin-bottom:15px;
    font-size: 1.4em;
  }
  .call-action-area .price {
    font-size:2em;
    margin: 0 0 15px;
    display: block;
  }
  .call-action-area .call-action-link, .btn {top:0;}

  h2, h3, h4 {font-size: 3em;}
  h3 {font-size: 2em;}
  h4 {font-size:1.8em;}
  p {font-size:1.4em;}

  /* content */
  .content {padding: 0;}
  .content section {padding-top: 50px;}

  /* speakers */
  .speakers-item {
    min-height:70px;
    padding-left: 70px;
  }
  .speaker-photo {
    width: 50px;
    height: 50px;
  }
  .speech-title {
    padding-top:0;
    font-size:16px;
    margin-bottom:.3em;
  }
  .speech-time {
    font-size:16px;
    padding: 0;
  }
  .speakers-bio {display: none;}
}

@media only screen and (max-width : 321px) {
  .logo-name {
    font-size: 4em;
    margin-bottom:.4em;
  }
  .schedule-tbl .schedule-description {display: none;}
  .schedule-tbl .schedule-slot {width: auto;}

  /* partners */
  .sponsor-item, .partner-item {margin: 0 12px 15px 0;}
  .sponsor--link, .partner-link {
    width: 115px;
    height:115px;
    line-height: 115px;
  }
}