/* London Technology Summit 2014
-----------------------------------------------------*/

/* Main
-----------------------------------------------------*/
body {
    margin: 0;
    padding: 0;
    min-width: 1032px;
}
.inner * {
    font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
}
.inner, nav {
    width: 1002px;
    margin: 0 auto;
}
.inner {
    font-size: 17px;
    line-height: 28px;
    color: #636363;
}
.inner a {
    color: #dd1100;
    text-decoration: none;
}
.inner a:hover {
    color: #bb0000;
}
.inner p {
    margin: 0 0 20px;
}
.inner img {
    border: 0;
}
.inner h1 {
    font-size: 52px;
    color: #eea428;
    text-transform: uppercase;
    font-weight: 300;
    margin: 20px 0;
}
.inner h2 {
    font-size: 20px;
    color: #dd1100;
    font-weight: 400;
}
.inner h2 {
    text-transform: uppercase;
}
#overview .inner h2, #schedule .inner h2 {
    margin: 40px 0 5px;
}
#faq .inner h2 {
    margin: 20px 0 5px;
}
.left {
    width: 662px;
    display: inline-block;
    vertical-align: top;
    margin: 0 20px 0 0;
}
.right {
    width: 314px;
    display: inline-block;
    vertical-align: top;
    font-size: 15px;
    line-height: 23px;
}

/* Header
-----------------------------------------------------*/
header {
    background: #ff8842;

}
#overview header {
    padding: 90px 0;
}
.subpage header {
    padding: 30px 0;
}
header .inner {
    position: relative;
}
header .one-day {
    color: #fff;
    margin: 0;
    text-transform: uppercase;
}
header .date {
    color: #d51101;
    text-transform: uppercase;
    font-weight: 400;
    margin: 0 0 5px 0;
}
#overview .date {
    font-size: 21px;
}
.subpage .date {
    font-size: 15px;
    display: block;
}
header .inner h1 {
    text-transform: uppercase;
    color: #fff;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}
#overview header h1 {
    font-size: 63px;
}
.subpage header h1 {
    font-size: 52px;
}
header h1 span {
    color: #d51101;
    font-weight: 600;
}
header .tagline {
    color: #fff;
    font-weight: 300;
    text-transform: uppercase;
    line-height: 1;
    margin: 10px 0 0 0;
}
#overview .tagline {
    font-size: 33px;
    height: 40px;
}
.subpage .tagline {
    font-size: 24px;
    letter-spacing: 1px;
    display: inline-block;
}
.subpage header img {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px 0 0;
}
.subpage .heading-wrapper {
    display: inline-block;
    vertical-align: middle;
}
header .right-pod {
    position: absolute;
    right: -200px;
    top: -87px;
}
header .list {
    list-style: none;
    margin: -33px 0 0 0;
    padding: 0;
    text-align: center;
    width: 619px;
}
header .list li {
    margin: 0;
    padding: 0;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 300;
    display: inline-block;
}
header .list li:after {
    content: "";
    width: 5px;
    height: 5px;
    background: #636363;
    border-radius: 10px;
    vertical-align: middle;
    display: inline-block;
    margin: 0 8px;
}
header .list .first:before {
    width: 15px;
    content: "";
    display: inline-block;
}
header .list .second:before {
    width: 22px;
    content: "";
    display: inline-block;
}

header .list .last:after {
    background: transparent;
}

/* navigation
-----------------------------------------*/
nav {
    position: relative;
}
#overview nav {
    margin: 0 auto -25px;
}
.subpage nav {
    margin: 0 auto -20px;
}
nav .inner {
    width: auto;
    margin: 0;
    background: #fb851e;
    display: inline-block;
    color: #fff;
}
nav .inner a {
    color: #fff;
    text-transform: uppercase;
    display: inline-block;
}
#overview nav .inner a {
    font-size: 20px;
    padding: 10px 15px;
}
.subpage nav .inner a {
    font-size: 15px;
    padding: 5px 12px;
}
nav .pipe {
    width: 0;
    display: inline-block;
    border-left: 1px solid #fff;
    vertical-align: middle;
}
#overview .pipe {
    height: 23px;
}
.subpage .pipe {
    height: 14px;
}
#overview .overview, #schedule .schedule, #faq .faq {
    color: #f8daa8;
}
#overview .overview:hover, #schedule .schedule:hover, #faq .faq:hover {
    color: #bb0000;
}

/* intro
-----------------------------------------*/
.intro-pod {
    padding: 60px 0 40px;
}
.intro-text {
    color: #fb851e;
    font-size: 24px;
    line-height: 35px;
    font-weight: 300;
    width: 555px;
}
.registration-closed {
    color: #767676;
    font-size: 24px;
    line-height: 35px;
    font-weight: 300;
    width: 555px;
    background: #fdf6e0;
    padding: 25px;
    margin: 0 0 30px -25px !important;
}
.register {
    text-transform: uppercase;
    font-size: 20px;
}
.register .button {
    margin: 0 0 0 10px;
}
.subpage header .button {
    margin: 0 0 0 15px;
}

a.button, input.button, .button {
    background: #dd1100;
    color: #fff;
    font-size: 18px;
    padding:  10px 20px;
    font-weight: 400;
    border: 0;
    text-transform: uppercase;
    display: inline-block;
}
a.button:hover, input.button:hover {
    background: #bb0000;
    color: #fff;
    cursor: pointer;
}
.content {
    background: #f1f1f1;
}
#overview .content {
    padding: 20px 0 164px;
}
.subpage .content {
    padding: 55px 0 164px;
}
.london-photo {
    margin: 45px 0 0 0 !important;
}
.locations-table {
    background: #fff;
    box-sizing: border-box;
    font-size: 15px;
    color: #636363;
    border-collapse: collapse;
    table-layout: fixed;
    border: 1px solid #c5c5c5;
    margin: 47px 0 0 0;
}
.locations-table td {
    border-top: 1px solid #c5c5c5;
    border-bottom: 1px solid #c5c5c5;
    white-space: nowrap;
}
td.start-date {
    color: #eea428;
    vertical-align: top;
    padding: 11px 21px 11px 26px;
}
.location {
    padding: 11px 31px 11px 0;
}
.city {
    color: #dd1100;
    font-weight: 600;
    display: block;
}
.special-focus {
    padding: 11px 26px 11px 0;
}
.focus {
    color: #a3a3a3;
    font-size: 11px;
    display: block;
    line-height: 1.4;
    text-transform: uppercase;
}

/* schedule & overview lists
------------------------------------*/
#schedule .inner ul, #overview .inner .left ul {
    list-style: none;
    padding: 0;
}
#schedule .left ul, #overview .left ul {
    margin: 0 0 0 10px;
}
#schedule .left ul.no-bullet ul.bullets {
    margin: 0;
}
#schedule .left ul.no-bullet ul.bullets li {
    margin-left: 20px;
    margin-bottom: 0px;
    list-style-type: disc;
}
#overview .left li, #schedule .left li {
    margin: 0 0 13px 0;
}
#schedule .right ul {
    margin: 0 0 0 7px;
    font-size: 15px;
    line-height: 30px;
}
#schedule .inner li:before, #overview .left li:before {
    content: "";
    background: #fb851e;
    display: inline-block;
    position: relative;
    border-radius: 10px;
}
#schedule .left li:before, #overview .left li:before {
    width: 5px;
    height: 5px;
    margin: 0 5px 0 -10px;
    top: -2px;
}
#schedule .right li:before {
    border-radius: 10px;
    width: 3px;
    height: 3px;
    margin: 0 3px 0 -7px;
    top: -3px;
}



#schedule .inner ul.no-bullet li:before{
    content: "";
    background: #F1F1F1;
    display: inline-block;
    position: relative;
    border-radius: 10px;
}
#schedule .left ul.no-bullet li:before {
    width: 5px;
    height: 5px;
    margin: 0 5px 0 -10px;
    top: -2px;
}

#schedule .left ul.no-bullet li {
  margin-bottom: 0;
}

#schedule .left ul.no-bullet li#session-divider {
  margin-bottom:0px;
}

#session-divider{padding-top:20px;}

#schedule .left ul.no-bullet {
    margin: 0px 0px 0px 0px;
}

.yello-message{

 color:#EDA32C;
 display:block;
}

p.schedule-title{
  padding-bottom:0;
  margin:28px 5px 5px 0px;
  text-transform: uppercase;
}
p.schedule-title.last{
  margin:5px 5px 5px 0px;
}

p.schedule-title.middle{
  margin:53px 5px 5px 0px;
}

h2 + .speaker {
    margin: 50px 0 0 0;
}
.speaker{
    margin: 20px 0 0 0;
}
.speaker-name{ font-size:15px;}

.speaker img{
  display: inline-block;
  margin: 0 20px 0 0;
  vertical-align: middle;
}
.speaker p {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
}
.thin-gray-font{
font-weight: 100;
font-size: 14px;
line-height: 14px;
display: block;

}

div.speaker-session {
    float: left;
    padding: 0px 15px;
    color: #797979;
    font-size: 18px;
    line-height: 17px;
    font-style: italic;
    font-weight:100;
    text-transform:uppercase;
}
div.speaker-line {
    float: left;
    width: 110px;
    margin: 9px 0px 0px;
    border-bottom: 1px solid #797979;
}

div.speaker-line.first {
   margin-left: 90px;
}

.hide {
    display: none;
}
.talk {
    position: relative;
    padding: 0 0 0 15px;
    cursor: pointer;
}
.talk:hover .yello-message {
    color: #dd1100;
}
.talk::before {
    content: '+';
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
}
.talk.show::before {
    content: '-';
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
}

/* footer
------------------------------------*/
footer {
    background: #eea428;
    position: relative;
    padding: 25px 0;
}
footer .inner {
    color: #fff;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 300;
    z-index: 2;
    position: relative;
}
footer span {
    margin: -29px 10px 0 0;
    display: inline-block;
    vertical-align: middle;
}
footer .skyline {
    position: absolute;
    top: -120px;
    left: 0;
    right:0;
    margin: auto;
    z-index: 0;
}



/* Thickbox overrides and styles */

#TB_title{
    background: white;
    height: 25px;
}

#TB_window {
    border: 0;
    border-top: 6px solid #d00;
    background-color: white;
}

#TB_closeWindowButton {
    float: right;
    width: 21px;
    height: 21px;
}

#TB_closeAjaxWindow {
    background: url('/common/images/TBcloseButton_sm.gif') no-repeat 48px 5px;
    margin: 0;
    float: right;
    height: 21px;
    width: 69px;
}

body#thickboxPopup {
    background-image: none;
}

body#thickboxPopup div#pageWrapper {
    padding: 30px 20px 0 20px;
}

body#thickboxPopup table {
    margin-top: 10px;
}

body#thickboxPopup table td {
    vertical-align: top;
    padding-right: 30px;
}
#TB_title {
    background: #eee;
    height: 38px;
    border: 1px solid #ddd;
}
#TB_ajaxWindowTitle {
    font-style: normal;
    color: #737373;
    font-size: 16px;
}

/* grid
   ================================== */

.table {
    margin-top: 20px;
    display: table;
    position: relative;
    width: 100%;
}

.table .tr {
    display: table-row;
    position: relative;
    width: 100%;
}

.table .td {
    display: table-cell;
    min-height: 1px;
    padding: 0 55px 40px 0;
    position: relative;
    vertical-align: top;
    width: 340px;
}

.table .tr .td:last-of-type {
    padding-right: 0;
    width: 285px;
}

.table a {
    color: #636363;
}

.table a:hover {
    color: #dd1100;
}

.table img {
    border: 1px solid #ddd;
}
