
body { font-family:"Lucida Grande", "Lucida Sans", Arial, Helvetica, sans-serif; font-size:14px; color:#666; background-color:#ececec; }

/*===== GENERIC TYPOGRAPHY ============*/

/* headers */
h1 { font-family: Helvetica, Arial, sans-serif; font-size:2.3em; font-weight:bold; margin:0 0 1em 0; color:#ff9900; }
h2 { font-family: Helvetica, Arial, sans-serif; font-size:1.43em; font-weight:bold; margin:0 0 0.4em 0; line-height:1.2em; }
h3 { font-family: Helvetica, Arial, sans-serif; font-size:1em; font-weight:bold; margin:0 0 0.8em 0; }
h4 { font-family: Helvetica, Arial, sans-serif; font-size:1.3em; font-weight:bold; margin:0 0 0.2em 0; line-height:1.3em; }
h5 { font-family: Helvetica, Arial, sans-serif; font-size:1.5em; font-weight:bold; margin:0; }

h2 span a { display:inline-block; font-size:14px; font-weight:normal; color:#999; background:url("../img/icons/arrow-small-forward-grey.gif") right center no-repeat; padding:0 10px 0 0; margin:0 0 0 5px; }

/* paragraphs */
p { line-height:1.43em; margin:0 0 1.1em 0; }
p strong { font-weight:bold; }

/* hyperlinks */
a { text-decoration:none; color:#666; font-weight:bold; }
p a { color:#ff9900; }
a:hover { text-decoration:none; color:#999; }
a img { border:1px solid #fff; }
a:hover img { border:1px solid #666; }

a.overview-link { display:block; font-weight:normal; margin:0 0 10px 0; background:url("../img/icons/arrow-small-backward-grey.gif") left 5px no-repeat; padding:0 0 0 10px; }
a:hover.overview-link { background-position:0 -45px; }
a.call-to-action { display:block; margin:0 0 30px 0; height:26px; text-indent:999em; overflow:hidden; white-space:nowrap; }
a.buyticket { width:162px; background:url("../img/buttons/button-orderticket.gif") left top no-repeat #ff9900; }
a.buyticket:hover { background-position:0 -26px; }
a.register { width:126px; background:url("../img/buttons/button-register.gif") left top no-repeat #ff9900; }
a.register:hover { background-position:0 -26px; }
a.download { width:126px; background:url("../img/buttons/button-download.gif") left top no-repeat #ff9900; }
a.download:hover { background-position:0 -26px; }
a.readmore { background:url("../img/icons/arrow-small-forward-darkgrey.gif") right 7px no-repeat; padding:0 8px 0 0; }

img.alignleft { float:left; margin:0 20px 0 0; }
img.alignright{ float:right; margin:0 0 0 20px; }

/* article styles */
.article h2 { font-size:1.6em; margin:1.2em 0 0.4em 0; }
.article h3 { font-size:1.2em; margin:0 0 0.33em 0; }
.article small { display:block; font-size:12px; margin:0 0 1em 0; }
.article ul,
.article ol { margin:0 0 1.43em 20px; }
.article ul li,
.article ol li { margin:0 0 0.43em 0; padding:0 0 0 5px; list-style-type:square; line-height:1.43em; }
.article ol li { list-style-type:decimal; }
.article ol { margin-left:23px; }
.article strong { font-weight:bold; }
.article blockquote { padding:0 0 0 20px; border-left:5px solid #ccc; line-height:1.43em; color:#999; }

/*===== MISC. STYLES ==========*/

.container { width:860px; margin:0 auto; overflow:hidden; }
.row { clear:left; overflow:hidden; padding:0 0 35px 0; }
.line { border-bottom:1px solid #ccc; margin-bottom:20px; }
.noline { border:0; }
.hide-text { overflow:hidden; white-space:nowrap; text-indent:9999em; }
.clear-left { clear:left; }
.hidden { display:none; }
.nomargin { margin-right:0!important; }
.add-margin { margin-right:240px!important; }

/*===== PAGE HEADER ===========*/

#header { height:185px; background-color:#ff9900; }
#header .container { height:185px; background:url("../img/logo-twab.gif") right top no-repeat; position:relative; }
#header .container img { float:right; }
#header .container a.hide-text { display:block; width:489px; height:96px; background-image:url("../img/brand-twab.gif"); float:left; margin:35px 0 0 0; }

/*===== PRIMARY NAVIGATION ====*/

#header ul { position:absolute; bottom:0; left:0; overflow:hidden; }
#header ul li { display:inline-block; margin:0 16px 0 0; padding:7px 0; }
#header ul li a { color:#fff; font-size:1.1em; padding:7px 0; }
#header ul li a:hover { color:#ffcc99; }
#header ul li.current { background:url("../img/navigation/tabs/tab-left.gif") left top no-repeat; padding-left:12px; }
#header ul li.current a { background:url("../img/navigation/tabs/tab-right.gif") right top no-repeat; color:#ff9900; padding-right:12px; font-size:1.2em; }

/*===== SUBNAVIGATION ====*/

#content .container #subnavigation { display:inline-block; margin:0 0 50px 0; padding:6px 0 7px 0; background-color:#ececec; }
#content .container #subnavigation { -moz-border-radius: 4px; -webkit-border-radius: 4px; -khtml-border-radius: 4px; border:0; }
#content .container #subnavigation li { display:inline-block; margin:0; padding:0; list-style:none; }
#content .container #subnavigation li a { padding:5px 12px; font-size:1.43em; font-weight:normal; margin:0 5px 0 0; }
#content .container #subnavigation li a { -moz-border-radius: 4px; -webkit-border-radius: 4px; -khtml-border-radius: 4px; border:0; }
#content .container #subnavigation li a:hover { background-color:#ccc; color:#fff; }
#content .container #subnavigation li.current a { background-color:#999; color:#fff; }

/*===== CONTENT COMPONENTS ========*/

/* generic grid structure */
#content .container { width:900px; background-color:#fff; padding:40px 0 50px 40px; }
.one-col { width:200px; }
.two-col { width:420px; }
.three-col { width:640px; }
.four-col { width:860px; }
.one-col,
.two-col,
.three-col,
.four-col { float:left; margin:0 20px 0 0; }
.four-col { margin:0; }

/* homepage - news carroussel */
#content .container .news-carroussel div { overflow:hidden; }
#content .container .news-carroussel div img { float:left; margin:0 20px 0 0; }
#content .container .news-carroussel div h4 { width:190px; float:left; margin-top:45px; }

#content .container #pager { margin:20px 0 0 443px; overflow:hidden; position:absolute; z-index:999; }
#content .container #pager a { display:inline-block; float:left; margin:0 5px 12px 0; width:10px; height:10px; background-color:#ccc; text-indent:999em; overflow:hidden; white-space:nowrap; }
#content .container #pager a.activeSlide { background-color:#ff9900; }

/* homepage - ticket feature */
#content .container .tickets,
#content .container .sideblock { background-color:#ececec; width:160px; padding:20px 20px 0 20px; }
#content .container .tickets,
#content .container .sideblock { -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border:0; }
#content .container .tickets h3,
#content .container .sideblock h3 { color:#ff9900; font-size:1.43em; }
#content .container .sideblock { margin-top: 16px;}
/* homepage - sponsor logos */
.logo { text-align:center; padding:20px 0 0 0; }
.logo img { padding: 15px; }
.logo a:hover img { border:1px solid #ccc; }

/* homepage - sponsors */
#content .container .sponsors div { width:200px; height:110px; background:url("../img/backgrounds/border-grey.gif") left top no-repeat; text-align:center; margin:0 0 15px 0; }
#content .container .sponsors div img { border:0; }
#content .container .sponsors div img.sponsor-1 { margin:30px 0 0 20px; }
#content .container .sponsors div img.sponsor-2 { margin:50px 0 0 15px; }
#content .container .sponsors div img.sponsor-3 { margin:45px 0 0 15px; }

/* homepage - speakers */
#content .container .speaker-features { overflow:hidden; margin:0 0 30px 0; }
#content .container .speaker-features img { margin:0 0 10px 0; }
#content .container .speaker-features h3 { margin:0 0 0.3em 0; font-size:1.2em; }
#content .container .speaker-features p { margin-bottom:30px; }

/* program subhome - keynote overview */
#content .container .keynote-overview div { overflow:hidden; clear:left; margin:0 0 30px 0; }
#content .container .keynote-overview div h5 a { margin:0; }
#content .container .keynote-overview div img { float:left; margin:0 20px 0 0; }

/* program subhome - speaker overview */
#content .container .speaker-overview div { width:300px; margin:0 20px 20px 0; float:left; }
#content .container .speaker-overview div img { float:left; margin:0 20px 0 0; }

/* sponsors subhome - sponsor overview */
#content .container .sponsors-details .sponsor-detail { clear:both; margin:1em 0; border-top:1px solid #ccc; overflow:hidden; padding:1em 0 1em 0; }
#content .container .sponsor-detail .sponsor-image a img { border:0; margin:0 1em 2em 0;}
#content .container .gold .sponsor-image,
#content .container .silver .sponsor-image,
#content .container .bronze .sponsor-image { float: left; width:200px; height:100px; display:block; text-align:center;}
#content .container .gold .sponsor-text,
#content .container .silver .sponsor-text,
#content .container .bronze .sponsor-text { float: left; width:350px; display:block; margin-left:15px;}
#content .container .platinum .sponsor-text { width: 590px; }

/* program subhome - session overview */
#content .container .overview-table { margin-bottom:40px; border-bottom:1px solid #ccc; width:100%; }
#content .container .overview-table tr { line-height:1.43em; }
#content .container .overview-table tr.odd { background-color:#ececec; }
#content .container .overview-table tr td { padding:12px; border-top:1px solid #ccc; vertical-align:top; }
#content .container .overview-table tr td a { display:block; }
#content .container .overview-table tr td.session-title { width:360px; color:#999; }
#content .container .overview-table tr td.session-title a { margin-bottom:4px; }
#content .container .overview-table tr td.session-title a strong { padding:2px; background-color:#999; color:#fff; font-size:10px; }
#content .container .overview-table tr td.session-title a:hover strong { background-color:#ccc; }
#content .container .overview-table tr td.session-photo { padding:12px 0 12px 12px; }
#content .container .overview-table tr td.full-name { width:180px; }
#content .container .overview-table tr td.job-title { width:180px; }
#content .container .overview-table tr td.contact-title { width:150px; }
#content .container .overview-table tr td span { color:#999; font-size:13px; }

/* program subhome - full schedule */
#content .container .full-schedule table { width:100%; margin:0 0 50px 0; }
#content .container .full-schedule table tr td img { float:left; margin:0 10px 0 0; border:1px solid #ccc; }
#content .container .full-schedule table tr td a:hover img { border:1px solid #999; }
#content .container .full-schedule table tr td a { display:block; font-weight:bold; color:#666;}
#content .container .full-schedule table tr td a:hover { color:#999; }
#content .container .full-schedule table tr td a strong { padding:2px; background-color:#999; color:#fff; font-size:10px; }
#content .container .full-schedule table tr td a:hover strong { background-color:#ccc; }
#content .container .full-schedule table tr td em { color:#999; }
#content .container .full-schedule table tr td ul { background:url("../img/icons/tag.gif") left 5px no-repeat; padding:0 0 0 22px; overflow:hidden; line-height:1.4em; margin:0 0 15px 0; }
#content .container .full-schedule table tr td ul li { display:block; float:left; margin:0 6px 0 0; padding:0 3px 0 0; background:url("../img/icons/comma.gif") right 12px no-repeat;}
#content .container .full-schedule table tr td ul li.last { padding:0; background:none; }
#content .container .full-schedule table tr td ul li a { font-size:12px; color:#999; padding:0; }
#content .container .full-schedule table tr td ul li a:hover { color:#ccc; }
#content .container .full-schedule table tr th.time { width:10%; }
#content .container .full-schedule table tr th.hall { width:30%; }
#content .container .full-schedule table tr td,
#content .container .full-schedule table tr th { border-bottom:1px solid #ccc; padding:20px 20px 10px 20px; border-right:1px solid #ccc; }
#content .container .full-schedule table tr td.inactive p,
#content .container .full-schedule table tr td.inactive p a,
#content .container .full-schedule table tr td.inactive p span { color:#ccc; }
#content .container .full-schedule table tr td.inactive strong { background-color:#ccc; }
#content .container .full-schedule table tr th p { line-height:1em; }
#content .container .full-schedule table tr td span { font-size:13px; display:block; color:#999; }
#content .container .full-schedule table tr th strong { display:block; font-weight:bold; margin:0 0 5px 0; }
#content .container .full-schedule table tr.odd td { background-color:#ececec; }

/* program subhome - session filter */
#content .container .session-filter { padding:5px 0; }
#content .container .session-filter a { color:#666; padding:1px 5px; font-size:13px; }
#content .container .session-filter a span { font-weight:normal; font-size:11px; color:#999; }
#content .container .session-filter a:hover { color:#999; }
#content .container .session-filter a.current { font-weight:normal; background-color:#999; color:#fff; }
#content .container .session-filter a.current span { color:#ccc; }
#content .container .full-schedule .session-filter { margin:0 0 50px 0; }

/* tickets subhome - tickets table */
#content .container table.prices { border-spacing: 2px; margin-bottom: 1.5em; }
#content .container table.prices td { padding: 10px; background: #ececec none; }
#content .container table.prices th { padding: 10px; font-weight: bold; background: #f7f7f7 none; }
#content .container table.prices sup { font-size: 0.65em; color: #999; font-weight:normal; }
#content .container table.prices del { color: #999; }
#content .container table.prices td.blank { background: transparent none; }
#content .container ol.conditions { font-size: 0.8em; color: #999; }

/* location subhome - image carroussel */
#content .container .image-carroussel { position:relative; width:420px; height:300px; }
#content .container .image-carroussel .image-carroussel-images { position:absolute; left:0; top:0; z-index:1; }
#content .container .image-carroussel .image-carroussel-controls #slider-next,
#content .container .image-carroussel .image-carroussel-controls #slider-prev { display:block; width:20px; height:32px; position:absolute; top:130px; background:url("../img/icons/prevlabel.gif") left top no-repeat; z-index:2; } 
#content .container .image-carroussel .image-carroussel-controls #slider-next { background-image:url("../img/icons/nextlabel.gif"); left:400px; }

/* news subhome - entry overview */
#content .container .entry { margin:0 0 30px 0; padding:30px 0 0 0; overflow:hidden; border-top:1px solid #dfdfdf; }
#content .container .entry .entry-meta { width:200px; margin:0 20px 0 0; float:left; text-align:right; font-size:0.86em; }
#content .container .entry .entry-meta .entry-date { display:inline-block; margin:0 0 20px 0; width:45px; overflow:hidden; }
#content .container .entry .entry-meta .entry-date strong,
#content .container .entry .entry-meta .entry-date span { display:block; width:45px; text-align:center; text-transform:uppercase; font-weight:bold; }
#content .container .entry .entry-meta .entry-date strong { background:url("../img/backgrounds/date-day.gif") left top no-repeat; font-size:1.6em; padding:7px 0 5px 0; }
#content .container .entry .entry-meta .entry-date span { background:url("../img/backgrounds/date-month.gif") left bottom no-repeat; font-size:0.8em; padding:3px 0 4px 0; color:#fff; }
#content .container .entry .entry-meta .entry-categories p { line-height:1.4em; }
#content .container .entry .entry-meta .entry-categories a { color:#666; }
#content .container .entry .entry-meta .entry-categories a:hover { color:#999; }
#content .container .entry .entry-content { width:420px; float:left; }
#content .container .entry .entry-content h3 { margin:0 0 20px 0; }

/* social links */
#content .container .entry .entry-content .social a { font-size:0.86em; }
#content .container .entry .entry-content .social a img { border:0; margin:0 2px 0 0; }

/* organisation subhome - contact information */
#content .container .contact-details #subnavigation { margin-bottom:20px; }  /* compensate for h2 top-margin */

/* news detail - comment thread */
#content .container .article #commentlist { margin:0; }
#content .container .article #commentlist li { list-style:none; padding:0; margin:0 0 20px 0; border-bottom:1px solid #dfdfdf; }
#content .container .article #commentlist li div { margin-bottom:3px; }
#content .container .article #commentlist li span { float:right; font-weight:normal; color:#999; margin:0 0 5px 0; font-size:12px;}

/* news detail - comment thread */
#content .container .article #commentform input { font-size:1em; border:1px solid #ccc; padding:4px; width:200px; margin:0 8px 0 0; }
#content .container .article #commentform textarea { font-size:1em; border:1px solid #ccc; padding:4px; width:200px; margin:0 8px 0 0; width:300px; height:100px; }
#content .container .article #commentform #submit { width:auto; border:0; background-color:#ff9900; color:#fff; padding:3px 7px; font-weight:bold; }
#content .container .article #commentform #submit { -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border:0; }

/*===== SUBSCRIBE ====================*/

#subscribe { background-color:#dfdfdf; }
#subscribe .container { padding:15px 0; }
#subscribe .container form label { display:inline-block; margin:0 8px 0 0; }
#subscribe .container form input.text { font-size:1em; border:1px solid #ccc; padding:4px; width:200px; margin:0 8px 0 0; }
#subscribe .container form input.submit { display:inline-block; width:93px; height:26px; border:0; background:url("../img/buttons/button-subscribe.gif") left -52px no-repeat; cursor:pointer; }
#subscribe .container form input:hover.submit { background-position:0 -78px; }

/*===== FOOTER ====================*/

#footer { padding:30px 0; background-color:#999; }
#footer .container h3,
#footer .container p { color:#fff; }
#footer .container h3 { font-size:1.43em; margin:0 0 1em 0; }

/* social media links*/
#footer .container .social { margin-bottom:20px; }
#footer .container .social div { float:left; width:200px; margin:0 20px 10px 0; }
#footer .container .social div img { float:left; margin:0 10px 0 0; border:0; }

/* ticket feature */
#footer .container a.register { background-position:0 -52px; }
#footer .container a.register:hover { background-position:0 -78px; }

/* colofon */
#footer .container .colofon p { font-size:12px; color:#ccc; text-align:center; }
#footer .container .colofon p a { color:#fff; }