/* ################################################################################ */
/* CSS reset - Make css defaults the same across browsers */
html, body, div, span, object, iframe,
a, img, p, blockquote, pre, abbr, acronym, address, code,
h1, h2, h3, h4, h5, h6,
ul, ol, li, dl, dt, dd, q,
fieldset, form, label, legend
table, tbody, thead, tfoot, th, tr, td, caption {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

html, body { height: 100%; }
:focus { outline: 0; }

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {	outline: none; }
a img { border: none; }

/* ################################################################################ */
/* Site defaults */

body {
	margin: 0;
	padding: 0;
	font-family: Arial, verdana, sans-serif;
	font-size: 62.5%;
	color: #333;
	/* background: #8c8c8c; */
	background: #EFEFEF;
}

a, a:visited { color: #0081C8; text-decoration: underline; }
a:hover { color: #D92231; text-decoration: underline; }

hr {
	height: 1px;
	margin: 5px 0 0 0;
	border: 0;
	color: #ccc;
	background-color: #ccc;
}

blockquote {
	padding: 0 0 10px 10px;
}

th {
	text-align: left;
	font-weight: bold;
}

td { vertical-align: top; }

li { margin-left: 20px; }

input.submit,
input.reset,
button {
	padding: 2px 5px;
	color: #000;
	border: 1px solid #666;
	background-color: #EEE;
}

ul {
	list-style: none;
}

ul.list {
	list-style: circle;
}

.error {
	color: #D00;
}

/* for clearing floated elements */
.clear { clear: both; }

/* ################################################################################ */
/* Shell */

#container {
	margin: 0 auto;
	width: 1020px;
	background: url(images/containerBG.jpg) repeat-y 0 0;
}

#container {
 	background: url(images/containerHomeBG.jpg) repeat-y 0 0;
}

body#downloads #container {
	background: url(images/containerAgendaBG.jpg) repeat-y 0 0;
}

#innerContainer {
	margin: 0 9px 0 11px;
}

#mastHead {
	position: relative;
	height: 94px;
	background: #FFF;
	padding: 18px 0 0 25px;
	
}

#headerText {
	padding: 0;
	font-size: 1.8em;
}

#headerText a,
#headerText a:visited,
#headerText a:hover {
	font-family: Arial;
	color: #36C;
	text-decoration: none;
	text-transform: none;
}

#headerText a strong,
#headerText a:visited strong,
#headerText a:hover strong {
	font-size: 133%;
	color: #333;
}

#MLlogo {
	position: absolute;
	top: 20px;
	left: 37px;
}

#MLlocation {
	position: absolute;
	top: 0px;
	right: 0px;
}

#MLhome {
	position: absolute;
	top: 5px;
	right: 20px;
	font-size: 1.1em;
	color: #333;
}

#content {
	margin: 0;
}

/* -------------------------------------------------------------------------------- */
/* content background/banner images */

#content {
	background: url(images/banner.jpg) no-repeat 0 0;
}

#home #content {
	background-image: url(images/bannerHome.jpg);
}

#leftCol {
	width: 226px;
	margin-top: 20px;
	padding: 13px 0 0 0;
	float: left;
	background: url(images/leftColTopBG2009.gif) no-repeat 0 0;
}

#mainCol {
	width: 555px;
	float: left;
	clear: none;
	padding-bottom: 20px;
}

body#downloads #mainCol {
	width: 770px;
}

#mainCol .block {
	padding: 0 20px 20px 35px;
}

#mainCol .block {
	margin-top: 20px;
}

#rightCol .block {
	margin-top: 10px;
}

#rightCol {
	width: 215px;
	float: right;
	clear: none;
}

#rightCol .block {
	padding: 10px 25px 0 20px;
	
}


.breakout {
	margin: 20px 0 20px 0;
	padding: 20px;
	background: #EAE9C1;
}

.breakout.top {
	margin-top: 50px;
}

.breakingNews { 
	margin: 5px 0 20px 0;
	padding: 20px;
	background: #E5E3B1 url(images/breakingNewsBG.gif) repeat-x 0 0; 
	border-top: 1px solid #AAAAAA;
}

.breakingNews a { text-decoration: none; font-weight: bold; }

.breakingNews img {
	margin: 0 16px 20px 0;
	float: left;
}



/* ------------------ */

#speakersKey .left {
    float: left;
    padding: 0 20px 20px 0;
    width: 129px;
}
#speakersKey .right {
    border-bottom: 1px dotted #CCCCCC;
    float: left;
    margin: 0 0 20px;
    padding: 0 0 20px;
    width: 340px;
	font-size: 1.1em;
    line-height: 1.33em;
    
}
#speakersKey span.bold {
    color: #449BC9;
    font-size: 14px;
    font-weight: bold;
}
#speakersKey h1 {
    color: #666;
    font-size: 16px;
    font-weight: normal;
    margin: 0;
    padding: 0 0 2px;
}
#speakersKey h2 {
    color: #A2B033;
    font-size: 14px;
    font-weight: bold;
    margin: 0;
    padding: 0 0 2px;
}
#speakersKey h3 {
    color: #333;
    font-size: 14px;
    font-weight: bold;
    margin: 0;
    padding: 0 0 2px;
}
#speakersKey a {
    color: #0081C8;
    text-decoration: none;
}
#speakersKey a:hover {
    text-decoration: underline;
}


/* -------------------------------------------------------------------------------- */
/* homepage columns */

#mainCol {
	width: 545px;
}

#mainCol .block {
	padding: 0 20px 20px 35px;
}

#rightCol {
	width: 225px;
}

#rightCol .block {
	padding: 10px 19px 0 19px;
}

/* -------------------------------------------------------------------------------- */
/* to compensate for insufficient content in #mainCol .block and force page to be proper height for Speakers Slideshow */

body#contact #mainCol .block {
	padding-bottom: 630px;
}

body#newsAndCoverage #mainCol .block {
	padding-bottom: 230px;
}

body#preConfTraining #mainCol .block {
	padding-bottom: 100px;
}

#footer {
	padding: 0 0 30px 15px;
	background: #EFEFEF url(images/footerBG.jpg) no-repeat 0 0;
	
}

#footer {
	background: #EFEFEF url(images/footerHomeBG.jpg) no-repeat 0 0;
}

/*body#agenda #footer,
body#downloads #footer {
	background: #8c8c8c url(images/footerAgendaBG.jpg) no-repeat 0 0;
}
*/
#footer p {
	padding: 20px 0 0 0;
	font-size: 1.1em;
	color: #333;	
}

#footer a {
	color: #333;
	text-decoration: underline;
}


/* ################################################################################ */
/* Content */

#mainCol p,
#rightCol p {
	font-size: 1.2em;
	line-height: 1.33em;
	padding: 5px 0 8px 0;
}

p span {
	font-weight: bold;
}

h1, h2, p.disclaimer {
	color: #D92231;
	font-weight: bold;
}

h1 {
	padding: 12px 0 8px 0;
	font-size: 1.5em;
	text-transform: uppercase;
}

body#home #content h1 {
	font-size: 1.8em;
}

h1 span,
body#home h1 {
	text-transform: none;
}

h1 span.dayTitle {
	color: #333;
	text-transform: uppercase;
}

h1.news { padding-bottom: 0; color: #A0AD43; }
	
h2 {
	padding: 5px 0 0 0;
	font-size: 1.4em;
}

h2 span {
	color: #333;
}

h2.rule {
	border-bottom: 1px solid #999;
}

h3, h4 {
	font-weight: bold;
	color: #333;
}

h3 {
	margin: 0;
	padding: 10px 0 0 0;
	font-size: 1.3em;
}

h4 {
	margin: 0;
	padding: 10px 0 0 0;
	font-size: 1.2em;
}

p span.newsDate { padding-right: 15px; }

/* -------------------------------------------------------------------------------- */
/* slideshows */

#twitterWidget {
	width: 166px !important;
	height: 100px !important;
	position: relative;
	margin-top: 30px;
	margin-left: 30px;
}

#socialmedia {
	width: 200px !important;
	height: 15px !important;
	position: relative;
	
	margin-left: 0px;
}

#socialmedia h2 { 
	color:#000;
	padding: 20px 0 0 0;
	
}

#socialmedia img {
	
margin-right:5px;
	
}


#sponsoredBy {
	clear: both;
	margin-top: 30px;
}

#speakersSlideshow,
#sponsorsSlideshow {
	position: relative;
	height: 100px;
}

#speakersSlideshow {
	height: 280px;
}

#speakersGallery {
	width: 166px !important;
	height: 356px !important;
	position: relative;
	top: 30px;
	left: 30px;
}

#speakersGallery.jdGallery .slideElement {
	background-color: #ecefda;
}

.slideElement {
	top: 0px;
}

#sponsorsGallery {
	width: 200px !important;
	height: 123px !important;
	position: absolute;
	top: 200px;
	left: -18px;  /* see ie.css, line 19 for IE6 specific adjustment */
}

.imageElement {
	text-align: center;
}

/* -------------------------------------------------------------------------------- */
/* to compensate for rightCol's increase in width on homepage */

#sponsorsSlideshow #sponsorsGallery {
	left: 0px;
}

body#tumblr #sponsorsSlideshow {
	margin-top: 20px;
}

#sponsorsSlideshow h2 {
	text-align: left;
	color: #333;
}

body#home #sponsorsSlideshow h2 {
	padding: 20px 0 0 0;
}

/* -------------------------------------------------------------------------------- */
/* Register Now/Login buttons */

#mainCol #loginDownloadButton {
	margin: 0;
	padding: 0;
	width: 143px;
	height: 34px;
	border: none;
	background: url(images/buttonLogin.gif) no-repeat left top;
}

#mainCol #loginDownloads button:hover {
	background-position: right top;
}

#loginDownloads .error {
	margin-top: 10px;
	color: #900;
}

/* -------------------------------------------------------------------------------- */
/* section/page titles/button wrappers */

.sectionHeader {
	position: relative;
	margin-left: 226px;
	height: 114px;
}

#home .sectionHeader {
	height: 234px;
}

.buttonWrapper {
	position: relative;
	margin-left: 226px;
	height: 234px;
}

.sectionHeader h1 {
	position: absolute;
	left: 35px;
	top: 25px;
	color: #FFF;
	font: 28px Arial;
	text-transform: none;
}

/* -------------------------------------------------------------------------------- */
/* Register Now button positions/tweaks */

.registerNowButton {
	display: block;
	width: 186px;
	height: 40px;
	position: absolute;
	left: 346px;
	bottom: 38px;
	background: url(images/register.png) no-repeat 0 0;
}

.registerNowButton:hover { background-position: 0 -45px; }
.registerNowButton:active { background-position: 0 -90px; }

#home .registerNowButton {
	bottom: 30px;
	left: 31px;
}

.registerNowButton2 {
	display: block;
	width: 186px;
	height: 40px;
    background-position: 0 -90px;
	left: 346px;
	bottom: 38px;
	background: url(images/register.png) no-repeat 0 0;
}


#registerOnlineToday {
	position: relative;
	padding: 20px 15px;
	background: #D5DBB0;
}

#registerOnlineToday .registerNowButton {
	background-image: url(images/registerBox.jpg);
	right: 30px;
	top: 7px;
}

#registerOnlineToday h2 {
	padding: 20px 0 0 0;
	display: inline;
}

/* -------------------------------------------------------------------------------- */
/* Generic Lists */

ul.list {
	margin: 5px 0 8px 0;
}

ul.list li {
	margin: 0 0 0 15px;
	font-size: 1.2em;
	list-style: disc;
}

ul.list ul,
#mainCol ol ol {
	margin-left: 0;
}	

ul.list li ul li {
	font-size: 100%;
}

ul.list, 
ol {
	margin: 0 0 0 15px;
	padding: 5px 0 8px 0;
}

ul.list li {
	padding: 2px 0 2px 3px;
}

ul.list.bold {
	font-weight: bold;
}

li span {
	padding: 5px 0 2px 0;
	font-weight: bold;
}

ol li {
	padding: 2px 0 2px 0;
	font-size: 1.2em;
	font-weight: bold;
}

ol li span,
#rightCol ol li {
	font-weight: normal;
}

#rightCol ol {
	margin-top: 20px;
}

/* -------------------------------------------------------------------------------- */
/* event list */

ul.event {
	margin: 0 0 15px -20px;
}		

ul.event li {
	padding: 2px 0 2px 0;
	font-size: 1.2em;
	list-style: none;
}

ul.event li span {
	padding-right: 3px;
}

ul.event li ul li {
	margin-left: 38px;
	font-size: 100%;
}


/* -------------------------------------------------------------------------------- */
/* Widgets */

body#speakers #speakersSlideshow {
	display: none;
}

/* ################################################################################ */
/* Main Menu */

#mainMenu {
	width: 226px;
/* 	background: #ECEFDA; */
    background: #FFF;
	
	}

#mainMenu ul {
	width: auto;
	padding: 0;
	list-style: none;
	overflow: hidden;
	}

#mainMenu ul li {
	margin: 0;
	/*white-space: nowrap;*/
	}

#mainMenu ul li a {
	margin: 0;
	height: auto; /* IE6 needs a specific height -  see /css/ie.css */
	padding: 10px 25px 8px 26px;
	font-size: 1.4em;
	text-decoration: none;
	color: #333;
	border-bottom: 1px solid #C8C8C8;
	display: block;
	}
	
#mainMenu ul li.home a {
	border-top: 1px solid #C8C8C8;
}

#mainMenu ul li a:hover {
	color: #0081C8;
	background: #F0F0F0;
	}

/* -------------------------------------------------------------------------------- */
/* On state */

body#home #mainMenu ul li.home a,
body#agenda #mainMenu ul li.agenda a,
body#keynotespeakers #mainMenu ul li.keynotespeakers a,
body#location #mainMenu ul li.location a,
body#sponsors #mainMenu ul li.sponsors a,
body#register #mainMenu ul li.register a,
body#connect #mainMenu ul li.connect a,
body#featuredsponsors #mainMenu ul li.featuredsponsors a,
body#presentations #mainMenu ul li.presentations a,
body#downloads #mainMenu ul li.downloads a {
	color: #0081C8;
	font-weight: bold;
	background: #D9D9D9;
}
	
/* ################################################################################ */
/* Tables */

table {
	width: 100%;
}

table.news { margin-top: 15px; }

/* -------------------------------------------------------------------------------- */
/* Conference Agenda */

table.agenda {
}

table.agenda td {
	padding: 8px;
	font-size: 1.1em;
	border: 3px solid #fff;
}

table.agenda td.center {
	text-align: center;
}	

table.agenda td {
	background: #ECECEC;
}

table#monday.agenda td {
	background: #d5dbb0;
}	

table.agenda td.emphasis {
	background: #A6BC09;
}

table#tuesday.agenda td.emphasis {
	background: #96A43A;
}

table.agenda td.trackSessions {
	background: #004270;
	color:#FFF;
	font-weight: bold;
	text-transform: uppercase;
	text-align: center;
}

table.agenda td.trackSessionsTime {
	background: #004270;
	color:#FFF;
	
}

table.agenda td.session {
	text-align: center;
}

table.agenda td.session span {
	display: block;
	font-weight: bold;
}


/* Conference Sponsors */

table.sptable {
}

table.sptable td {
	padding: 8px;
	font-size: 1.1em;
	border: 3px solid #fff;
}

table.sptable td.center {
	/*text-align: center;*/
}	

table.sptable td {
	background: #dedede;
}

table#monday.sptable td {
	background: #999;
}	

table.sptable td.emphasis {
	background: #A6BC09;
}

table#tuesday.sptable td.emphasis {
	background: #96A43A;
}

table.sptable td.title,
{
	background: #d4dbb1;
	text-transform: uppercase;
}

table.sptable td.Session {
	text-align: center;
}

table.sptable td.Session span {
	display: block;
	font-weight: bold;
}

/* General tables */

#mainCol table.agenda table.sptable td.Session p.speaker {
	font-size: 1.0em;
}

td.GrandBallroom,
td.UnionSquare,
td.InterContinentalBallroomAB,
td.InterContinentalBallroomC {
	width: 110px;
	text-align: center;
}

table.agenda td.GrandBallroom {
	background: #c5cc7e;
}

table.agenda td.UnionSquare {
	background: #4ca7d6;
}

table.agenda td.InterContinentalBallroomAB {
	background: #fbb442;
}

table.agenda td.InterContinentalBallroomC {
	background: #ffe085;
}

/* -------------------------------------------------------------------------------- */
/* agenda table anchors */

.trackOne a,
.trackOneB a,
.trackTwo a,
.trackThree a {
	color: #333;
	text-decoration: underline;
	font-weight: bold;
}

table.agenda td.emphasis,
table.agenda tr.emphasis td {
	background: #D5DBB1;
}

/* -------------------------------------------------------------------------------- */
/* Conference Information */

table.info {
	margin: 10px 0;
}

table.info td {
	padding: 8px;
	font-size: 1.1em;
	border: 3px solid #fff;
	background: #d5dbb0;
}

table.info thead th {
	font-size: 1.2em;
	padding: 8px;
	background: #ececec;
	border: 3px solid #fff;
}

/* -------------------------------------------------------------------------------- */
/* forms */

#mainCol form {
	width: auto;
	margin: 10px 0;
	padding: 5px 20px 10px 20px;
	background: #ecefda;
	border: 1px solid #ccc;
}

#mainCol input.button,
#mainCol input.reset,
#mainCol button {
	width: 8em;
	margin: 20px 0;
	padding: 2px 5px;
	color: #000;
	border: 1px solid #666;
	background-color: #dedede;
}

#mainCol fieldset {
	margin: 10px 0;
}

#mainCol input,
#mainCol select,
#mainCol textarea {
	margin: 5px 0;
	display: block;
}

#mainCol textarea {
	width: 350px;
}

#mainCol label {
	padding-top: 10px;
	font-size: 1.2em;
	color: #666;
	display: block;
}

.required {
	color: #D92231;
}

#formErrors {
	margin: 10px 0;
	padding: 10px;
	border: 1px solid #900;
	background-color: #FDD;
	color: #900;
}

#formErrors li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-size: 1.2em;
	line-height: 1.6em;
}

form#loginDownloads {
	width: 600px;
}

/* -------------------------------------------------------------------------------- */
/* Agenda Key/Downloads Key */

#agendaKey,
#downloadsKey {
	margin: 30px 0 10px;
	padding: 10px;
	background: #ECEFDA;
}

#agendaKey h1,
#downloadsKey h1,
form#filter h1 {
	color: #333;
	font-size: 1.2em;
}

#downloadsKey h1 {
	margin-top: 0;
	padding-top: 3px;
}

#agendaKey table,
#downloadsKey table {
	width: 100%;
}

#agendaKey table td,
#downloadsKey table td,
#agendaKey table table td {
	padding: 5px 0 5px 0;
	font-size: 1.1em;
}

#agendaKey table td img,
#downloadsKey table td img {
	position: relative;
	top: 3px;
}

#agendaKey table td span,
#downloadsKey table td span {
	padding-left: 5px;
	text-transform: uppercase;
	font-weight: bold;
}

##downloadsKey table td span {
	font-weight: normal;
}

#agendaKey table td.keyGovernment {
	padding: 0;
}

#agendaKey table td.keyGovernment img {
	padding-right: 5px;
	position: relative;
	top: 3px;
}



/* -------------------------------------------------------------------------------- */
/* Hover Boxes */

a.hoverLink div {
	position: relative;
	display: none;
}

a.hoverLink:hover div {
	display: block;
}

a.hoverLink div div {
	z-index: 2;
	position: absolute;
	top: 20px;
	left: 20px;
	width: 300px;
	padding: 5px 10px;
	border: 2px solid #333;
	background: none #FFF;
	color: #333;
	font-size: .9em;
	text-decoration: none;
	text-align: left;
}

.sessionTitle {
	color: #0081C8;
	display: block;
	font-weight: bold;
}

a.hoverLink div div p {
	font-weight: normal;
}

.hoverBoxArrow {
	display: block;
	position: absolute;
	top: -20px;
	left: 20px;
	width: 27px;
	height: 20px;
	background: url(images/hoverBoxArrow.gif) no-repeat;
}

a.hoverLink {
	text-decoration: underline;
	/*color: #333;*/
}

a.hoverLink .hoverLinkRight { left: -100px; }
a.hoverLink .hoverLinkRight .hoverBoxArrow { left: 140px; }

a.hoverLink .hoverLinkBottom {
	top: auto;
	bottom: 40px;
}

a.hoverLink .hoverLinkBottom .hoverBoxArrow {
	top: auto;
	bottom: -20px;
	background-image: url(images/hoverBoxArrowDown.gif);
}

a:hover { /* IE Fix */
	border-color: white;
}

/* -------------------------------------------------------------------------------- */
/* Downloads form/filter and table */

form#filter {
	margin: 0 0 10px 0;
	padding: 0;
	background: transparent;
	border: 0;
}

form#filter h1 {
	padding: 0 10px 0 10px;
}

form#filter span {
	padding: 0 5px 0 5px;
	font-size: 1.4em;
}

form#filter h1,
form#filter span {
	position: relative;
	bottom: 5px;
}

form#filter h1,
form#filter span,
form#filter select {
	display: inline;
}

#agendaDownloads table {
	border-bottom: 1px solid #666;
}

#agendaDownloads table th {
	padding: 8px 0 8px 10px;
	background: #D5DBB0;
	font-size: 1.4em;
	border-bottom: 1px solid #666;
}

#agendaDownloads table td.time {
	border-left: 1px solid #666;
	white-space: nowrap;
}

#agendaDownloads table td {
	padding: 10px;
	font-size: 1.2em;
	background: url(images/dashedBorder.gif) repeat-y left top;
	border-bottom: 1px solid #666;
}

#agendaDownloads table td.downloads {
	width: 100px;
	border-right: 1px solid #666;
}

#agendaDownloads table td span,
#agendaDownloads table td em {
	display: block;
}

#agendaDownloads table td span {
	color: #666;
}

.videoLink {
	padding-right: 10px;
	background: url(images/popWinArrow.gif) no-repeat right top;
}

#downloadsLogin h1 {
	font-size: 1.8em;
	text-transform: none;
}

/* -------------------------------------------------------------------------------- */
/* Social Networking */

.share_twitter {
	padding: 2px 0 0 20px;
	height: 16px;
	background: url(images/share/twitter.jpg) no-repeat top left;
}

.share_facebook {
	padding: 2px 0 0 20px;
	height: 16px;
	background: url(images/share/facebook.gif) no-repeat top left;
}

.share_linkedIn {
	padding: 2px 0 0 20px;
	height: 16px;
	background: url(images/share/linkedIn.jpg) no-repeat top left;
}

/* -------------------------------------------------------------------------------- */
/* Highlight box */

#mainCol p.highlight {
	margin-bottom: 10px;
	padding: 10px;
	background-color: #EAE9C1;
	font-size: 1.4em;
	font-weight: bold;
}

/* -------------------------------------------------------------------------------- */
/* Filter */

.showMon .tues,
.showMon .wed,
.showMon .thurs,

.showTues .mon,
.showTues .wed,
.showTues .thurs,

.showWed .mon,
.showWed .tues,
.showWed .thurs,

.showThurs .mon,
.showThurs .tues,
.showThurs .wed,

.showTrackGeneral .trackTraining,
.showTrackGeneral .trackApps,
.showTrackGeneral .trackTechnology,
.showTrackGeneral .trackBestPractices,
.showTrackGeneral .trackPartner,

.showTrackTraining .trackGeneral,
.showTrackTraining .trackApps,
.showTrackTraining .trackTechnology,
.showTrackTraining .trackBestPractices,
.showTrackTraining .trackPartner,

.showTrackApps .trackGeneral,
.showTrackApps .trackTraining,
.showTrackApps .trackTechnology,
.showTrackApps .trackBestPractices,
.showTrackApps .trackPartner,

.showTrackTechnology .trackGeneral,
.showTrackTechnology .trackTraining,
.showTrackTechnology .trackApps,
.showTrackTechnology .trackBestPractices,
.showTrackTechnology .trackPartner,

.showTrackBestPractices .trackGeneral,
.showTrackBestPractices .trackTraining,
.showTrackBestPractices .trackApps,
.showTrackBestPractices .trackTechnology,
.showTrackBestPractices .trackPartner,

.showTrackPartner .trackGeneral,
.showTrackPartner .trackTraining,
.showTrackPartner .trackApps,
.showTrackPartner .trackTechnology,
.showTrackPartner .trackBestPractices

{ display: none; }
