﻿/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #b0b0b0;
}

html {
    overflow-y: scroll;
}

body 
{
    background: url(/images/responsive/bg-noise.png);
    font-size: 1em;
    line-height: 1.375; /*22px for 16px text*/
}

/* Push jQuery mobile Ajax "page" beneath the main header, regardless of resoulution */
.ui-mobile [data-role=page], .ui-mobile [data-role=dialog], .ui-page {
    top: auto;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */
img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
    resize: vertical;
}

.left { float: left; }
.right { float: right; }

/* ==========================================================================
   GGL custom styles
   ========================================================================== */
/* TODO: Would be good to sort through these styles and order them better - combine reused styles better */
a { text-decoration: none; }
/*a:hover { text-decoration: underline; }*/

h1, h2, h3, h4, h5, h6 { font-weight: normal; margin: 0; }
h3 { font-weight: bold; }

/* Form controls */
.form-controls { padding: 1em; text-align: center; }
.form-control-row { margin-bottom: 2em; }
/* Text inputs */
.txt { border: 1px solid #b2b2b2; border-radius: .25em; /*4px*/ padding: 0.5em 3%; }
.txt-large { /* Move styles from appv2 page */ }
/* Checkboxes */
.ui-checkbox .ui-btn-icon-left .ui-btn-inner { padding-left: 4em; line-height: 2; }
.ui-checkbox .ui-btn-icon-left .ui-icon { left: 0; margin-top: -1.5em; }
.ui-checkbox .ui-icon:before { 
    background-color: white;
    border: 5px solid rgba(255,255,255,0.2);
    font-family: FontAwesome;
    font-size: 24px;
    content: "\f00c"; /*Tick: fa-check*/
    padding: .5em;
}
.ui-checkbox-off .ui-icon:before {
    color: white;
}
.ui-checkbox-on .ui-icon:before {
    color: green;
}
.ui-checkbox-on .ui-icon {
    /*width: 32px!important; 
    height: 32px!important; 
    margin-left: -20px !important; 
    margin-top: -15px !important; 
    box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; 
    -webkit-border-radius: 0 !important; border-radius: 0 !important;*/ 
    /*background: url(http://www.surveyshare.com/images/icons/check.png) 50% 50% no-repeat;*/
    background: none;
}
.ui-icon-checkbox-off {
    background-image: none;
}
.ui-checkbox .ui-btn { background: #f5f5f5; /* This should match the content background */ border: 0; }
.ui-checkbox .ui-btn:hover { color: inherit; }
.ui-checkbox .ui-btn-text { font-weight: normal; }
/* Buttons */
.btn { border: 0; padding: .5em; }
/* This might be the default button style now */
.btn-block { background: rgb(51,102,153); border: 5px solid rgba(51,102,153,0.2); border-radius: 4px; color: #fff !important; display: block; font-weight: bold; margin: 0 auto; padding: .25em; }
.btn-submit { background: rgb(116,190,69); border: 5px solid rgba(116,190,69,0.2); padding: 0; }
#BlankCenterbtn input[disabled],
.smartbutton[disabled] { 
    opacity: .25;
}

/* Search box */
.searchContainer { position: relative; margin-bottom: .5em; }
.txtSearch { padding-right: 15%; width: 82%; }
.btnSearch { background-image: url(/images/responsive/icon-search.png); background-repeat: no-repeat; background-position: center center; border-radius: 0em 0.25em .25em 0em; display: block; position: absolute; right: -1px; top: 1px; text-indent: -9999px; width: 2.5em; /*40px*/ }
/* Input File upload controls */
div.fileinputs {
	position: relative;
}
div.fakefile 
{
    margin-bottom: -4em;
	position: relative;
	top: -2.6em;
	z-index: 1;
}
input.inputfile {
	position: relative;
	-moz-opacity:0 ;
	filter:alpha(opacity: 0);
	opacity: 0;
	/*z-index: 2;
	display: none;*/
}
.registration #btnUpload { display: none !important; }
#FileUploadData { height: 3.5em; cursor: pointer; }

.wrap { margin: 0 auto; max-width: 75em; /*1200px*/ max-width: 75rem; padding: 0 .5em; overflow: hidden; position: relative; }

.banner { text-align: center; line-height: 1.1; background-color: white; }
#eventLogo img { padding: 10px 0; }
.banner .fullimg {
    display: none;
    max-height: 80px;
}
.banner .smallimg {
    /*display: block;
    margin: auto;*/
    max-height: 60px;
}
.loginContainer { border-left: 1px solid; float: right; font-size: 93.75%; /*15px*/ margin: 0 0 1em; padding: .25em 0 .25em 1em; text-align: right; }
.loginContainer .txt, .loginContainer .btn { margin-left: .5em; }
/*Not showing event title at all on small screens at the moment?*/
#eventTitleSmall {
    display: none;
}
#eventTitleLarge {
    display: none;
    font-size: 1.5em; /*Was 1.6875em/27px without line-height*/
    line-height: 1.4;
}
#headerLinks {
    font-size: 0.9em;
    position: relative;
    padding-bottom: .5em;
}
#headerLinks a { color: #fff;}
#headerLinks .emailDownloads {
    background: url(/images/responsive/icon-email-downloads.png) no-repeat 93% 3px;
    padding-right : 25px;
}
#headerLinks .edit {
    background: url(/images/responsive/icon-edit-pencil-white.png) no-repeat 85% 0px;
    padding-right: 20px;
}
/*#headerLinks #loginNameText {
    color: #2d2d2d;
}*/
#headerLinks .separator {
    border-right: solid 1px #fff;
    padding-top : 4px;
    margin-right: 10px;
}
#headerLinks .logout .close {
    font-size: 1.2em;
}
.eventDetails { border-top: 1px solid; }

/*@media only screen and (min-width: 321px) {
    #headerLinks .separator { margin-bottom: 18px; }
}*/
@media only screen and (max-width: 48.74em) {
    .eventDetails { margin-top:0; }
    #headerLinks { padding-top: .5em; top: 0; }
    /*#headerLinks .separator { padding-top: 10px; }*/
    #headerLinks .logout-container { border: none; }
    #headerLinks .change-event { display: block; margin-top: 1em; }
}
@media only screen and (min-width: 48.75em) {
    .banner .fullimg {display: block;}
    .banner .smallimg {display: none;}
    .eventDetails {margin-top:1.5em;}
    #eventTitleLarge {display: block;}
}

#Homepage { padding-top: .5em; }

.colspanHalf { float: left; width: 48%; margin-left: 4%; }

.box  
{
    background: white;
    border: .0625em solid #ddd; /*1px*/
    border-left-width: .3125em; /*5px*/
    display: block;
    margin-bottom: 0.88em;
    padding: 1.25em 1em;
    position: relative;
}
a.box { color: #b0b0b0; }
/*a.box:hover { text-decoration: none; }*/

h1 small { font-size: .5em; /*16px;*/ font-weight: normal; color: #999; }

.subheading { border-bottom: 1px solid #d9d9d9; clear: both; padding: .5em 0; }
.paging { padding: 1em 0 .5em; }

.strapline { color: #777; font-size: 87.5%; /*14px*/ font-style: italic; font-weight: bold; margin-bottom: -1em; }

.leader { font-weight: bold; }

.notificationError { color: #c00; }
.notificationNeutral { color: #999; }
.notificationSuccess { color: #71a001; }

.close { font-weight: bold; }

/* Paging controls */


/* ==========================================================================
   Home page
   ========================================================================== */
/*.btnCorner { background: url(/images/responsive/btn-corner.png) no-repeat right bottom; position: absolute; bottom: 0; right: 0; width: 37px; height: 37px; }*/

blockquote { background: #f3f3f3; border: 1px solid #d8d8d8; color: #999; padding: 0 1em; position: relative; }
#containerMessages { padding-bottom: 1em; }

.quoteCorner { background: url(/images/responsive/speech-grey-left.png) no-repeat left bottom; position: absolute; bottom: -23px; /* Height of the image */ left: -1px; /* To ensure it lines up with the border */ width: 26px; height: 23px; }

/* Box Headings */
.icon { background-position: left center; background-repeat: no-repeat; padding: .25em 0 .25em 50px; }
.colspanHalf .icon { background-position: center bottom; margin-bottom: .25em; text-align: center; padding: 0 0 46px 0; /* For images 41px high */ }

#delegateList {
    min-height: 220px;
}
#delegateList .delegateText {
    padding-left : 3%;
}
#delegateList .img {
    display: none;
}
#delegateList .listBlocks li .img,
.listSpeakers .listBlocks li .img {
    margin-right: 5px;
}
#delegateList li {
    display: block;
    min-width : 220px;
}

#confirmuser {
    font-size: 0.8em;
}
#confirmuser a {
    float: right;
}

/* messagesNotification */
#messagesNotification { margin: -.5em 0 0; }
	
/* Lists made up of blocks, vertically arranged */
/* Images are 70px x 70px - so height is calculated by: li padding top + bottom + h2/h2 line heights */
/* HACK: But what do we do about long text? */
.listBlocks, .listBlocks ul { list-style: none; overflow: hidden; padding: 0; }
.listBlocks li { border: 1px solid #d8d8d8; margin-bottom: .75em; overflow: hidden; position: relative; padding: .4125em 1.25em .8125em 4.625em; }
.listBlocks li li { border-width: 0; padding: 0; }
.listBlocks img { position: absolute; left: 0; top: 0; max-height: 62px; max-width: 62px; }
.listBlocks h2, .listBlocks h3 { line-height: 1.375; /* 22px */ }
.listBlocks h2 { font-size: 90%; /*16px*/ font-weight: bold; }
.overlay h2, .listBlocks h3 { font-weight: bold; font-size: 80%; /*15px*/ }
.overlay .listBlocks li { padding-right: 0; }

.downloadDesc { font-size: 0.875em; margin: 4px 0 15px 0; }
.listFiles { font-size: .875em; /*14px*/ margin: 0; /* Was 0 0 -.75em to cancel out the last list item's margin-bottom without affecting items which don't display files */ }
#ulFiles li { min-height: 1.5em; }

/* Addresses as lists */
.address { list-style: none; padding: 0; }
.address .city { font-weight: bold; }

/* Resources box */
.containerResources .notificationSuccess { display: block; }

/* Speakers/Exhibitors boxes */
.containerContent .listSpeakers .img,
.containerContent .listExhibitors .img {
    display: none;
}

/* Twitter */
.containerTwitter { background: #00b9f4; border: 1px solid #0099ca; color: White !important; margin-bottom: 2em; /* To ensure the follow link is visible */ }
.containerTwitter p { margin: 0; }
.containerTwitter a { color: white !important; }
#twitterFollow { background: url(/images/logo-x-black-24x25.png) no-repeat right center; color: #00b9f4; position: absolute; top: 106%; right: 0; padding-right: 2em; margin-right: 2.5em; }
.containerTwitter .quoteCorner { background-image: none; /*url(/images/responsive/speech-babyblue.png); bottom: -21px; /* Height of the image * / height: 21px; left: auto; right: -1px;*/ }

@media only screen and (min-width: 321px) {
    #delegateList .img {
        display: block;
    }
    .containerContent .listSpeakers .img,
    .containerContent .listExhibitors .img {
        display: block;
        margin-right: .5em;
    }
}
@media only screen and (min-width: 48.74em) and (max-width: 58em) {
    #delegateList .img {
        display: none;
    }
    #delegateList .delegateContact {
        width: 33%;
    }
    #delegateList .delegateDetails {
        width: 66%;
    }
}
@media only screen and (min-width: 48.75em) {    
    #delegateList li {
        min-width : 200px;
    }
}

/* ==========================================================================
   Overlay pages
   ========================================================================== */
.overlay { background: white; margin-bottom: 1em; padding: 0; position: relative; }
#headerOverlay { overflow: hidden; }
#headerOverlay h1 { font-size: 3em; border-left: 6px solid; line-height: 1; padding: 1em .5em .1875em .375em; /*48px 18px 9px 24px*/ }
#headerOverlay h2 { border-bottom: 1px solid #d9d9d9; clear: both; padding: .5em 0; }
.subnav { list-style: none; padding-left: 1em; /* Was 1.8125em think for: 29px = 5px border + 24px padding-left on h1 */ }
/*.subnavContentTab { margin: 1.5em 0 1.5em 1.6em; }*/
.subnav li a { border-bottom: 1px solid #d8d8d8; display: block; padding: .75em 0; }
/* TODO: Might need to handle this better as not supported by old IE */
.subnav :not(.selected) { color: #777; }
.overlay .close
{
    font-size: 1.5em;
    line-height: 2.25;
    padding: 0.25em 0.5em;
    position: absolute;
    right: 0;
    top: 0;
}
.overlay article { color: #777; padding: 0 1em; }
@media only screen and (min-width: 48.75em) {
    #headerOverlay h1 {
        padding-left: .75em;
        font-size: 3.6em;
        padding-bottom: .08em;
    }
}
.overlay header .icon { padding-right: 3.25em; }

/* ==========================================================================
   Agenda
   ========================================================================== */
.agenda #dateTabs { font-weight: bold; }
.agenda #list { margin: 2em 0 0 1.5em; }
.agenda #list .row {
    padding-bottom: .75em;
    border-bottom: solid 1px;
    margin-bottom: .75em;
    clear: both;
    line-height: 1;
    overflow: hidden;
}
.agenda #list .rowNoBorder { border-bottom: none; }
.agenda #list .desc div p { margin: .5em 0 0; }
/*.agenda span,*/
.agenda strong {
    display: block;
}
.agenda .overlayItem br {
    display:inline;
    line-height:normal;
    height:auto;
}

.agenda #list a {
    font-size : 0.9em;
    line-height: 0.9em;
    font-weight: bold;
}
.agenda .time {
    font-weight: bold;
    float : left;
    padding-left: 0.8em;
    width: 6.5%;
}
.agenda .desc {
    float: left;
    text-align: left;
    padding: 0 0 0 0.8em;
    width: 89%;
}
.agenda #list .title {
   padding: 0.1em 0.333em 0.333em 0.7em;
   margin: 0.8em 0;
}
.agenda ul.agendaTabs {
    border-bottom: solid 2px #7ac943;
    clear: both;
    display: block;
    list-style: none;
    margin-left: 3%;
    overflow: hidden;
    padding-left: 0px;
    width: 97%;
}
.agenda ul.agendaTabs li {
    display: block;
    float: left;
    background: #e3e3e3;
    padding: 0.5em 1%;
    margin: 0.5em 1% 0 0;
    width : 100%;
    text-align: center;
    min-width : 134px;
    font-weight: bold;
    cursor: pointer;
    font-size: 0.85em;
}
.agenda ul.agendaTabs li.selected,
.agenda ul.agendaTabs #current {
    background: #2d2d2d;
    color: white;
}

ul.agendaTabs #current a {
    color: white !important;
}
.agenda li.selected,
.agenda #current {
    background : blue;
}
#btnCreateMeeting.smartbutton { float:none; width:100%; margin:0 0 4px 0; }
#btnFinishEditingTimes.smartbutton { float:none; width:100%; margin:0 0 4px 0; }

.agendaTabContainer {
    position:relative;
    width: 97%;
    margin: 1em 0 1em 3%;
}
.agendaTabContainer .agendaItemsOverlay {
    position:absolute;
    top:0px; left:0px;
    padding: 0;
    width:100%;
}
.agendaTabContainer .overlayItem {
    border:1px solid #bbbbbb;
    background:#f8f8f8;
    position:absolute;
    font-size:75%;
    display:block;
    overflow:hidden;
}

#selectedMeetingRoom { display:block; padding:4px; width:100%; border:1px solid #888888; color:#222222; }

.overlay .key { padding-left:40px; }
.overlay .key .item { overflow:hidden; margin-bottom:4px; }
.overlay .key .item .color { float:left; width:16px; height:16px; }
.overlay .key .item .color.local { background:#f8f8f8; border:1px solid #BBBBBB; }
.overlay .key .item .color.other { background:#AEF8A6; border:1px solid #BEF8B6; }
.overlay .key .item .name { float:left; font-size:0.85em; margin-left:5px; }

.agendaTabContainer .overlayItem.other {
    background:#aef8a6;
    border:1px solid #bef8b6;
    cursor: default;
}
.agendaTabContainer .overlayItem .container {
    padding:8px;
    display:block;
}
.agendaTabContainer .overlayItem .desc {
    display:none;
}
.agenda .agendaItems {
    border-bottom: 1px solid #9a9a9a;
    display: block;
    list-style-type: none;
    padding: 0;
    margin:0;
}
.agenda .agendaItems li {
    border-top: solid 1px #e3e3e3;
    font-weight: bold; 
    min-height: 1.2em; /*Was 27px*/
    padding-top: 5px; 
    overflow: hidden;
    display: block;
    width: 100%;
}
.agenda .agendaItems li.selected {
    background: #ebebeb;
}
.agenda .agendaItems li.selected div {
    padding-left: 2%;
}
/*.agenda .agendaItems li.selected span {
    font-size: 1.2em;
}*/
.agenda .agendaItems li.head {
    border-top: solid 1px #9a9a9a;
}
.agenda .agendaItems li.selected.head {
    padding-left: 0;
}
@media only screen and (min-width: 48.75em) {
    /*.agenda .colspan2 {
        margin-top: -70px;
    }*/
    .agenda #dateTabs {
        padding-top: 90px;
    }
    .agenda ul.agendaTabs li {
        width: 17%;
    }
    #btnCreateMeeting.smartbutton { float:right; width:auto; margin:0 }
    #btnFinishEditingTimes.smartbutton { float:right; width:auto; margin:0; }

    /*.agenda ul.agendaTabs {
        margin-top : 3em;
    }*/
}

/* ==========================================================================
   Content Tabs
   ========================================================================== */
#contentTabOverview h1,
.content-tab-header,
.content-tab-footer,
.content-tab-person,
.cat .row { 
    clear:both;
    overflow: hidden;
}
#contentTabOverview h1 { margin-bottom: .5em; }
.content-tab-header { margin: 1.5em 0; }
.content-tab-footer { border-top: 1px solid #ccc; padding: 1em 0; }

.cat-block .block { display: none; /* Rob S has asked for cat headers to be removed */ }
.cat .block { float: none; font-size: 14px; font-weight: normal; margin-bottom: .25em; padding: .5em 1em; }
.cat-desc { margin: 1em; }
/* For Download types, we hide the cat descriptions as it loads all Downloads initially */
.content-tab-downloads .cat-desc { display:none; }
.cat h2.block { text-transform: uppercase; }
.cat h3.block { opacity: .5; }
.cat h4.block { background: #ccc; /* Should this be in dynamic.css? */ }
.no-cat { border-top: 1px solid #ccc; padding-top: 1em; }

#content-tab-controls { margin-bottom: 1em; }

.content-tab-download,
.content-tab-person
{
    border: 1px solid #ccc;
    margin: 0.5em 1em 2em;
    margin-bottom: 1em;
    overflow: hidden;
    padding: 1em;
}
.content-tab-image { float: left; margin: 0 4% 1em 0; width: 15%; }
.content-tab-image img { max-width: 100%; }
.content-tab-desc { float: left; width: 80%; }
.content-tab-desc .downloadFiles li { margin-top: .3333em; }
.downloadFiles { margin-bottom: 0; padding-left: 1em; }
.downloadFiles small { font-size: 85%; }
.uploaded { font-size: 90%; color: #8d8d8d; display: none; }

.downloadFiles .downloads a {
    background: none repeat scroll 0 0 #2d2d2d;
    border-radius: 5px;
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 13px;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 6px 0;
    text-align: center;
    text-decoration: none;
    width: 275px;
}
.downloadFiles .downloads a:hover { color: #fff; }
.downloadFiles .downloads a.nodownload {
    cursor: default;
    font-weight: normal;
    text-decoration: none;
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 35px;
    height: 0;
    overflow: hidden;
}
.video-container iframe {
    position: absolute;
    top:0;
    left: 50%;
    width: 100%;
    height: 100%;
}

/* ==========================================================================
   Delegates
   ========================================================================== */
#confirmuserdel {
    font-size: 0.8em;
}
#confirmuserdel a {
    float: right;
}

.delegates .listBlocks li {
    padding: 0;
}

.delegates .listDelegates li {
    display: block;
    min-width : 240px
}
.delegates .delegateDetails {
    float: left;
    padding: 0;
    font-size: 0.9em;
}
.delegates #headerOverlay h1 {
    padding-left: 6.5%;
}
.delegates .delegateDetails h2 {
    padding-top: 0.5em;
}
.delegates .delegateDetails h4 {
    font-size: 75%;
}
.delegates .delegateContact {
    /*background: #ebebeb;*/
}
.delegates .delegateContact a {
     min-width: 22px;
     border-left: 1px solid #d0d2d3;
     width: 48.5%; /* If showing more elements then we need to change this? */
     height: 62px;
     float: left;
     margin: 0 auto;
     display: block;
}
.delegates .useLocatorFalse a { width: 99%; }
.delegateContact a.info {
    background: url(/images/responsive/icon-addtonetwork.png) no-repeat .5em center;
}
.delegateContact a.info.innetwork {
    background: url(/images/responsive/delegateInfoGreen.png) no-repeat .5em center;
    cursor: default;
}
.delegateContact a.cal {
    background: url(/images/responsive/icon-meeting.png) no-repeat center center;
}
.delegateContact a.msg {
    background: url(/images/responsive/icon-message.png) no-repeat center center;
}
.delegateContact a.msg {
    background: url(/images/responsive/icon-message.png) no-repeat center center;
}

.locate {
    background: url(/images/responsive/icon-locate.png) no-repeat center center;
}

.delegates .listBlocks li .delegateDetails {
    min-height: 62px;
    width: 70%;
    position: relative;
    z-index: 1;
}
.delegates .delegateText {
    float: left;
    padding-left: 5%;
    width: 55%;
}
.delegates .listBlocks li .delegateContact {
    float: left;
    min-height: 62px;
    width: 29%;
    padding-left: 1%;
}
.delegates .listBlocks,
#delegateList .listBlocks  {
    overflow: visible;
}
.delegates .listBlocks > li,
#delegateList .listBlocks > li {
    overflow: visible;
}
.delegates .listBlocks > li > div,
#delegateList .listBlocks > li > div {
    overflow: hidden;
}
.delegates .listBlocks li {
    min-height: 62px;
}
.delegates .listDelegates li {
    width: 99%;
}
.delegateOnline, .delegateRecent {
    background: url(/images/responsive/icon-online.png) no-repeat;
    height: 30px;
    width: 30px;
    position: absolute;
    z-index:5;
    top: -10px;
    left: -10px;
}
.delegateRecent { background: url(/images/responsive/icon-recent.png) no-repeat; }
.delegates #headerOverlay h1 {
    padding-left: 3%;
}
.delegateinfo .avatarContainer { text-align: center; }
.delegateinfo .delegateContact {
    margin-top: 20px;
}
.delegateinfo .delegateContact a {
    background-position: .5em center;
    border: 1px solid #999;
    border-radius: .25em;
    padding: .5em .5em .5em 2.5em;
    margin: .5em;
    display: block;
}
.delegateinfo a.twitter,
.delegateinfo a.linkedIn
{
    background-position: center center;
    background-repeat: no-repeat;
    float: left;
    text-indent: -9999em;
    width: 49%;
}
.delegateinfo a.twitter {
    background-image: url(/images/logo-x-black-24x25.png);
}
.delegateinfo a.linkedIn {
    background-image: url(/images/logo-linkedin-light-bg.png);
}
.delegateinfo .regFields {
    overflow: hidden;
    margin-bottom: 1em; 
}
.regFields ul { padding: 0; list-style: none; }
.regFields li { float: left; width: 49%; padding-bottom: 1em; }
.regFields .odd { border-right: 1px solid #ccc; clear: left; }
.regFields .even { padding-left: 2%; width: 47%; }
.regFields .item .label {
    font-size:90%;
    font-weight:bold;
}
.regFields .item .value {
    font-size:85%;
}

#confirmuserinfo {
    font-size: 0.8em;
}
#confirmuserinfo h2 {
    font-size: 1.6em;
}
#confirmuserinfo a {
    float: right;
}
@media only screen and (min-width: 321px) {
    /* Show in 2 columns */
    .delegateinfo .delegateContact a {
        float: left;
        margin: 1.5em 0 1.5em 3%;
        width: 36.5%;
    }
    .delegateinfo .delegateContact a:nth-child(odd) { clear: both; } /* Force a row */
    
    /*.delegateinfo .useLocatorTrue a { width : 48%; }
    .delegateinfo .useLocatorFalse a { width : 48%; }*/
}
@media only screen and (min-width: 48.75em) {
    /* Show in 4 columns */
    .delegateinfo .delegateContact a {
        width: 17%;
    }
    .delegateinfo .delegateContact a:nth-child(odd) { clear: none; }

    .delegates .listDelegates li {
        width: 46.5%;
        margin-left: 2%;
    }
    .delegates p.noresults {
        margin-left: 3.2%;
        width: 93%;
    }
    .delegates #headerOverlay h2 {
        margin-left: 4%;
        width: 93%;
    }
    .delegates .searchContainer .txtSearch {
        min-width: 12.5em;
        float: right;
        margin-top: 0px;
        margin-bottom: 0px;
        height: 1.8em;
    }
    .delegates .btnSearch {
        height: 2.8em;
        margin-top: 0px;
    }
    .delegates #headerOverlay h1 {
        padding-left: 5%;
    }
}

/* ==========================================================================
   Engage
   ========================================================================== */
.engage #pageTabs {
    display: block;
}
.engage #pageTabs ul {
    list-style: none;
    padding-left: 1.8125em;
}
.engage #headerOverlay h2 {
    margin-left: 25px;
    width: 93%;
}
.engage #engage {
    margin-right: 2%;
    margin-left: 2%;
}
.engage #registration .clear {
    clear: none !important;
}
.engage #pageTabs ul li a { 
    border-bottom: 1px solid #d8d8d8; 
    display: block; 
    padding: .75em 0; 
}
.engage #BlankCenterbtn input {
    float: right;
    margin-bottom : 10px;
}
.engage #main {
    margin-top : 20px;
}
.engage #main #panelHolder > div {
    overflow: hidden;
    background: #f1f7fb;
    border-top: solid 1px #dbdbdb;
    border-bottom: solid 1px #dbdbdb;
    margin: 1em 0;
    padding: 1em 2%;
    font-size: 0.9em;
}
.engage #main #panelHolder > div > span {
    font-weight: bold;
}
.engage #main #panelHolder .quizout > span {
    font-weight: normal;
}
.engage #main #panelHolder > div > span .ui-input-text {
    width: 99%;
}
.engage #main #panelHolder > div > span textarea {
    font-size: 0.8em;
}
.engage #main #panelHolder > div > span .smartbutton {
    margin: 20px 0 0;
    cursor: pointer;
    display: block;
    width: 100%;
}
.engage #main #panelHolder > div > span input {
    width: 100% !important;
    font-size: 0.8em;
}
.engage #main #panelHolder br {
    height: 0px !important;
    display: none;
}
.engage #main #panelHolder .quizout br,
.engage #main #panelHolder .quizTitle br {
    height: 10px !important;
    display: block;
}
.engage #main #panelHolder .ui-select a {
    background: #fff;
    float: left;
    width: 100%;
}
.engage #main #panelHolder .ui-select .ui-btn-inner {
    padding: 0.4em 20px;
    font-size: 1em;
}
.engage #main #panelHolder > div > span .small {
    display: block;
    font-weight: normal;
    font-size: 0.9em;
    margin: 10px 0 20px;
}
.engage #main #panelHolder .RadChart {
    width : 96% !important;
}
.engage #main #panelHolder .TimeofDay span.colon {
    display: none;
}
.engage .FreeTextMedium textarea {
    width: 75% !important;
 }
@media only screen and (min-width: 48.75em) {
    .engage .FreeTextMedium textarea {
        width: 50% !important;
     }
    .engage #pageTabs {
        display: block;
        width: 32%;
        float: left;
    }
    .engage #engage {
        float: right;
        width: 64%;
        margin-right: 2%;
        margin-left: 2%;
    }
    .engage #headerOverlay h2 {
        margin-left: 53px;
        width: 93%;
    }
    .engage #main #panelHolder .ui-select a {
        width: 40%;
    }
    .engage #main #panelHolder > div > span .ui-input-text {
        width: 35%;
    }
    .engage #main #panelHolder > div > span .smartbutton {
        width: 30%;
    }
    .engage #main #panelHolder .ui-select a {
        float: left;
        width: 40%;
    }
    .engage #main #panelHolder .TimeofDay .ui-select {
        width: 20%;
        float: left;
        display: block;
        overflow: hidden;
    }
    .engage #main #panelHolder .TimeofDay .ui-select a {
        width: 90%;
        margin-left: 5%;
    }
    .engage #main #panelHolder .TimeofDay span.colon {
        display: block;
        float: left;
        font-size: 1.4em;
        margin: 0;
        height : 40px;
        line-height: 50px;
    }
}

/* ==========================================================================
   Forums
   ========================================================================== */
/* Attachments on Forums, etc. */
#docList { width: 100%; }
#docList .type { font-weight: bold; }
#docList .uploadedDate { font-size: 75%; }
#docList .edit,
#docList .delete { display: none; /* Don't display on mobile sites, presently */ }
/*    background: url(/images/icon-edit.gif) no-repeat 0 center;
    padding: 1px 19px;
}
#docList .delete { background-image: url(/images/icon-delete.gif); }*/
#docList .mediaHolder { text-align: center; }

#attachmentButtons { text-align: center; display: none; }
/*#attachmentButtons a { margin-right: 1em; }
.dynmedia, .dynpresentation, .dynimage, .dyndocument, .dyninvoice, .dynlink {
    background-position: 0 center;
    background-repeat: no-repeat;
    margin-bottom: 4px;
    padding-left: 19px;
}
.dyndocument { background-image: url("/images/icon-dyndocument.gif"); }
.dynimage { background-image: url("/images/icon-dynimage.gif"); }
.dynmedia { background-image: url("/images/icon-dynmedia.gif"); }
.dynpresentation { background-image: url("/images/icon-dynpres.gif"); }*/

.forumhome #headerOverlay h2 {
    color: #565656;
    border-bottom: 0px;
    font-size: 1.1em;
    font-weight: normal;
    padding-top: 1.8em;
}
#sortResultsBy-button{
    border-bottom-width: 0px;
}
#forumCount {
    font-size: 0.85em;
}
.forum #btnEditTopic {
    font-weight: normal !important;
    font-size: 0.8em;
    padding-left: 1em;
}
.forum #controls .txtSearch {
    margin-bottom: 10px;
    height: 1.8em;
    margin-top: 10px;
}
.forum #controls .btnSearch {
    height: 2.8em;
    margin-top: 10px;
}
.forum .article,
.forum .articlestyle {
    overflow: hidden;
    background: #f1f7fb;
    border-top: solid 1px #dbdbdb;
    border-bottom: solid 1px #dbdbdb;
    margin: 1em 0;
}
.forum .row.head {
    display: block;
    overflow: hidden;
    margin-top : 0.8em;
    font-size : 0.9em;
    text-transform: uppercase;
    padding: 0.2em 0;
}
.forum .article .threads {
    margin-top: 1.5em;
    margin-bottom: 0.8em;
}
.forum .row .threads .content {
    font-size: 0.9em;
}
.forum .row .threads .content a.title {
    display: none;
}
.forum .row.head .first {
    text-align: center;
}
.forum .row.head .threads {
    margin-top: 0em;
}
.forum .row.head .last {
    text-align: right;
}
.forum .article .last {
    text-align: center;
}
.forum .first img {
    margin: 1em auto;
    width: 70px;
    display: block;
}
.forum a.title {
    font-size: 1.3em;
    font-weight: normal;
}
.forum .activityBy {
    display: none;
}
.forum .startedBy,
.forum .datePosted {
    font-size: 0.75em;
}
.forum .datePosted span {
    font-weight: bold;
}
.forum .article .replies {
    width: 100%;
    font-size: 0.75em;
    margin-top: 28px;
    margin-bottom : 10px;
}
.forum img.commentimg {
    max-width: 100%;
    display: block;
    margin: 0.8em auto;
}
.forum .replycount {
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
}
.forum .article .time {
    color: inherit;
}
.forum .addcomment a,
.forum .replycount a {
    text-transform: none;
    font-size : 1.15em;
    font-weight: normal;
    display: block;
}
.forum .row.head .threads .head {
    margin-left : 3.33333%;
}

.forum #controls {
    margin-top: 0em;
}
.forum ul.paging {
    list-style-type: none;
    display: block;
    visibility: hidden;
}
.forum ul.paging li {
    display: inline;
}
.forum ul.paging {
    list-style-type: none;
    display: block;
    padding: 0;
    width: 100%;
    text-align: center;
    margin: 1em 0 0 0;
    display: none
}
.forum ul.paging li {
    display: inline;
}
.forum #resultSort {
    display: none;
}
/* forum "mobile first" bits... */
.forum .col {
    float: none;
}
.forum .row.head {
    display: none;
}
.forum .article .first {
    display: none;
}
.forum .article .threads {
    padding-left: 2.5%;
    margin-top : 5px;
}
@media only screen and (min-width: 48.75em) {
    .forum ul.paging {
        list-style-type: none;
        display: block;
        padding: 0;
        text-align: left;
    }
    .forum .first {
        width: 10%;
        min-width: 55px;
    }
    .forum .threads {
        width: 67%;
    }
    .forum .last {
        width: 15%;
    }
    .forum #controls {
        float: right;
        margin-top: -45px;
        margin-right: 0em;
        width: 80%;
    }
    .forum #controls .btnSearch {
        height: 2.8em;
        margin-top: 0px;
    }
    .forum #controls .txtSearch {
        width: 15em;
        float: right;
        margin-top: 0px;
        margin-bottom: 0px;
        height: 1.8em;
    }
    .forum .ui-select .ui-btn-inner {
        font-size: 0.85em;
    }
    .forum .ui-select {
        clear: both;
        width: 11em;
        float: right;
    }
    /* overriding the forum "mobile first" bits n bobs*/
    .forum .col {
        float: left;
    }
    .forum .row.head {
        display: block;
    }
    .forum .article .first {
        display: block;
    }
    .forum .article .threads {
        padding-left: 2.5%;
        margin-top : 5px;
    }
}
/* ==========================================================================
   View posts
   ========================================================================== */
.viewposts #headerOverlay h2 {
    font-size: 1.4em;
    padding: 0;
    margin-bottom: 0em;
    text-align: left;
    border-bottom: 0;
}
.viewposts .subheading { font-size: 1.5em; }
.viewposts header small {
    font-size: 0.95em;
    margin-left: 4.4%;
    width: 98%;
    text-align: center;
    display: none;
}
.viewposts #discussion .first {
    text-align: center;
}
.viewposts ul.paging {
    clear: both;
    font-size: 0.9em;
    margin-left: 4.4%;
    margin-top: 0.25em;
    display: none;
}
.viewposts #discussion {
    overflow: hidden;
}
.viewposts .colspan2 {
    width: 100%;
}
.viewposts .article .first {
    padding-bottom : 1em;
}
.viewposts .article .colspan2 {
    padding-top: 1em;
    padding-bottom : 1em;
}
.viewposts #postreply {
    background: url(/images/responsive/icon-forum.png) no-repeat center right;
    display: block;
    font-size: .625em;
    margin: -.25em auto 0;
    padding: 15px 45px 15px 0;
    text-align: center;
    text-transform: uppercase;
    width: 104px;
}
.viewposts #reply {
    margin-top: 1em;
}
.viewposts #reply .colspan2 {
    margin-right: 0;
}
.viewposts #reply {
     background: #f5f5f5;
     overflow: hidden;
     padding-top: 0.5em;
     margin-bottom: 1em;
}
.viewposts #reply .first label {
    padding-top: 0.2em;
    font-size: 0.9em;
    font-weight: bold;
}
.viewposts #reply .smartbutton {
    float: right;
    margin-bottom: 1.5em;
}
.viewposts #reply textarea {
    width: 100%;
    height: 125px;
}
.viewposts #replies .responseBy {
    font-size: 0.75em;
    text-align: left;
    padding: 1em 0;
}
.viewposts #replies .responseBy strong {
    font-weight: bold;
}

.viewposts #replies .removePost {
    background: url(/images/icon-forum-remove.png) no-repeat center right;
    display: inline;
    height: 44px;
    width: 44px;
    border: none;
    padding: 0;
}

.viewposts #replies .thumbsUp {
    background: url(/images/icon-forum-thumb.png) no-repeat center right;
    display: inline;
    height: 44px;
    width: 44px;
    border: none;
    padding: 0;
}

.viewposts #replies .thumbsUpClosed {
    background: url(/images/icon-forum-thumb-grey.png) no-repeat center right;
    display: inline;
    height: 44px;
    width: 44px;
    border: none;
    padding: 0;
}

#pnlShowRemoveButton {
    float: right !important;
}

#pnlShowVoting {
    float: right !important;
    width: 90px !important;
}

#pnlShowVoting .thumbCount {
    float: left !important;
    margin-top: 5px;
    margin-right: 8px;
    background-color: #023466;
    -webkit-border-radius: 999px; 
	-moz-border-radius: 999px; 
	border-radius: 999px; 

}

.viewposts #replies .thumbCount {
    color: white;
    text-align: center;
    font-size: 120%;
    height: 36px;
    width: 36px;
    padding: 0;
}


.viewposts #replies .thumbCount .number {
    display: block;
    line-height: 37px;
}


.viewposts #replies table {
    width: 100%;
}
.viewposts h4.comments {
    font-size: 1em;
    font-weight: bold;
    margin-bottom : 0.5em;
}
.viewposts ul#blFeedback {
    list-style-type: none;
    padding-left: 0;
    padding-top: 0.5em;
    font-size: 1.2em;
    text-align: center;
}
.viewposts .alternate.article {
    background-color: #fff;
}
.viewposts .even.article .ui-btn-up-c {
    background: #fff !important;
}
.viewposts .even.article .ui-btn-hover-c {
    background: #fff !important;
}
.viewposts .startedBy {
    padding-top: 1.5em;
}
.viewposts .separator {
    display: none;
}
@media only screen and (min-width: 48.75em) {
    .viewposts #postreply {
        float: right;
    }
    .viewposts header small {
        margin-top: -20px;
        text-align: right;
        padding-right: 10px;
        padding-right: 1.4%;
        margin-left: 0;
    }
    .viewposts #headerOverlay h2 {
        font-size: 1.7em;
        text-align: left;
        padding: 0.8em 0 0 0;
    }
    .viewposts .colspan2 {
        width: 85%;
    }
    .viewposts #reply .first {
 	    width: 7%;
    }
    .viewposts #reply .colspan2 {
        margin-right: 0;
        width: 88%;
    }
    .viewposts #reply .first label {
        text-align: right;
    }    
    .viewposts #replies .responseBy {
        float: left;
    }
    .viewposts .separator {
        display: inline;
        margin: 0 1em;
    }
}

/* ==========================================================================
   Locator
   ========================================================================== */
.delegateContact a { background-position: center center; background-repeat: no-repeat; }
.viewProfile    { background-image: url(/images/responsive/icon-go-dark-on-transparent.png) }
.locateActive   { background-image: url(/images/responsive/icon-locator-active.png); background-size: 36px; }
.locateInactive { background-image: url(/images/responsive/icon-locator-inactive.png); background-size: 36px; }

/* Location map */
.mapholder {
    position: relative;
    overflow: hidden;
}
.mapholder img.map {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    max-width: 100%;
}
.mapholder img.person {
    position: absolute;
    top: 10%;
    left: 10%;
    z-index: 2;
    display: none;
}

.loading{display:block; margin:0 auto; position:absolute;}
.map{background: #fff; position:relative; width:90%; height:600px; line-height:0; overflow:hidden; margin:0 auto; box-shadow:0px 0px 10px #000; margin-bottom:15px;}
.mapInner{position:absolute; z-index:1;}
.mapInner .tile{width:256px; height:256px; float:left; background:#fff;}
.mapInner .tile img{height:auto; display:block; width:auto;}
.radius{width:10px; height:10px; position:absolute; background-image:url(/images/responsive/blueRadius.png); background-size: cover; z-index:3;}
.user{position:absolute; width:20px; height:38px; border-radius:10px; background-image:url(/images/responsive/bluePin.png); background-size:cover; display:none;}
.radius.currentUser{background-image:url(/images/responsive/greenRadius.png);}
.radius.currentUser .user{background-image:url(/images/responsive/greenPin.png); display: none;}
.radius.currentZone{background-image:none !important;}
.radius.currentZone .user{background-image:url(/images/responsive/zone.png);}
.zoom{position:relative; float:right; margin-right:20px; width:50px; height:210px; z-index:2; top:30px;}
.zoomBG{height:210px; width:12px; margin:0 auto; background-color:#fff; border:1px solid #000; z-index:1; position:relative; box-shadow:0px 0px 5px #333;}
.zoomBar{position:absolute; top:170px; width:48px; height:30px; background-color:#fff; border:1px solid #000; left:0px; z-index:2; box-shadow:0px 0px 5px #333;}
.locateMe{width:50px; height:50px; background-image:url(/images/responsive/icon-target-green.png); background-repeat:no-repeat; background-position:center; border-radius:5px; position:absolute; right:20px; top:270px; z-index:3;}
.floorChangeContainer{width:50px; position:absolute; right:20px; top:335px; z-index:3;}
.floorChange{width:50px; height:50px; margin-bottom:10px;}

.menuIcon{display:block; width:30px; height:30px; background-color:#506C84; background-image:url(/images/responsive/icon-menu.png); background-repeat:no-repeat; border-radius:0px 5px 5px 0px; position:absolute; right:-30px;}
.menuWrapper{float:left; width:100%;}
.leftMenu{position:absolute; z-index:4; left:0px; top:0px; width:30%; color:#fff; padding:20px; line-height:1em; text-shadow:none; background-color:#506C84;}
.menuTabs{border:2px solid #fff; border-radius:5px; width:100%; position:relative; z-index:2;}
.menuTabs a{width:50%; background:#fff; color:#003366; display:block; float:left; padding:10px 0px; text-align:center;}
.menuTabs a.active{color:#fff !important; background-color:#506C84;}
.tabs {position: relative; z-index:1}
.tab{width:100%; position:absolute; display:none;}
.zoneMenuItem{background:#fff; padding:10px 0px; color:#000; margin:10px 0px; width:100%; overflow:hidden;}
.zoneMenuItem .zoneInfo{float:left; height:40px; padding:0px 10px;}
.zoneMenuItem .zoneInfo p{margin:3px 0px 0px 0px;}
.zoneMenuItem .zoneLocate{float:right; background-image:url(/images/responsive/icon-locate.png); background-repeat:no-repeat; background-position:center; display:block; width:50px; height:40px; border-left:1px solid #ccc;}

.keyItem{background:#fff; padding:3%; color:#000; margin:10px 0px; width:94%; overflow:hidden;}
.keyItem .zoneInfo{float:left; height:40px; width:65%; border-right:1px solid #ccc;}
.keyItem .zoneInfo p{margin:3px 0px 0px 0px;}
.keyItem .keyIcon{float:right; display:block; width:50px; height:40px; text-align:center; color:#fff; line-height:40px;}

#zoom1 {position: absolute;  width:8960px;}
.locator #rect1 {width: 8960px;}

/* ==========================================================================
   Notes
   ========================================================================== */
.notes #headerOverlay {
    margin-bottom : 1em;
}
#alertareanotes {
    margin-bottom : 20px;
    width : 90%;
    display: block;
}
.notes #addnote {
    width: 96%;
    float: right;
    transition: width 0.5s;
    -moz-transition: width 0.5s;
    -webkit-transition: width 0.5s;
    -o-transition: width 0.5s;
}
.notes #addnote .newnote {
    padding: 1em;
    background: #f5f5f5;
    overflow: hidden;
}
.notes .colspan2 {
    width: 94%;
    margin-left: 4%;
    margin-bottom : 2em;
}
.notes #addnote textarea {
    border-radius: 5px;
    height: 250px;
    transition: height 0.5s;
    -moz-transition: height 0.5s;
    -webkit-transition: height 0.5s;
    -o-transition: height 0.5s;
}
.notes #addnote .smartbutton {
    float: right;
    margin-top: 0.5em;
}
.notes #addnote label {
    font-size : 1.2em;
    font-weight: normal;
}
/*
    has notes...
*/
.notes.hasnotes #addnote .newnote {
    background: #f5f5f5;
    padding: 1em;
}
.notes.hasnotes .colspan2 {
    width: 94%;
    margin-left: 4%;
    margin-bottom : 2em;
}
.notes.hasnotes #addnote textarea {
    height: 125px;
}
.notes #notesList {
    clear: both;
    float: right;
    width: 100%;
}
.notes #notesList .note {
    clear: both;
    margin-top: 1em;
    background: #eef3f7;
    display: block;
    padding: 1em;
    border: solid 1px #c7d9eb;
}
.notes #notesList .noteTime {
    display: block;
    width: 97%;
    padding: 0.5em;
    float: right;
    text-align: right;
    position: relative;
    z-index: 1;
    top: -1px;
    font-size: 0.8em;
    margin-bottom : 0.5em;
}
.notes #notesList .noteTime.alternate {
    float: left;
    background: url(/images/responsive/notebottom.png) no-repeat 95% 0px;
    text-align: left;
}

/* ==========================================================================
   Registration
   ========================================================================== */
.registration #registerForm fieldset,
.registration p {
    padding: 0.25em 5%;
}
.registration #registerForm fieldset .ui-input-datebox .ui-btn-icon-notext {
    margin-top: -13px !important;
}
.registration #registerForm fieldset.fullwidth textarea {
    min-height: 150px
}
.registration #registerForm .smartbutton {
    margin: 0.75em 5%;
}
.registration #registerForm .smartbutton {
    float: left;
    font-size : 1.2em;
    padding : 0.4em 1em;
}
.registration #registerForm {
    padding-bottom: 1em;
}
.registration #headerOverlay h1 {
    padding-left: 3.9%;
}
.registration #registerForm fieldset label {
    font-size: 1.1em;
}
.reminder #alertareareminder {
    margin-top: 15px;
}
.alertarea,
.error ul,
.registration #profilePicForm #blFeedback {
    background: #f2dedf;
    width: 80%;
    padding: 0.5em 5%;
    margin:  0 auto 10px !important;
    text-align: center;
    border: 1px solid #f0d1d7;
    color: #b55044;
    list-style-type: none;
}
.alertarea.success {
    background: #dff0d8;
    color: #468847;
    border-color: #d6e9c6;
}
.registration #profilePicForm {
    margin-bottom: 1em;
    background: url(/images/nophoto.png) no-repeat center center;
    min-height: 450px;
}

.uploadpic { overflow: hidden; }
.uploadpic .skip { font-weight: bold; float: right; }
.uploadpic .continue { font-weight: bold; float: right; }

.registration #profilePicForm table.formone {
    width: 70%;
    margin: auto;
    padding: 0.5em 5%;
}
.registration #profilePicForm #pnlShowProfilePic p {
    text-align: center;
}
.registration #profilePicForm table.formone td.title {
    display: none;
}
.registration .rhide {
    display: none;
}
/*.registration #FileUploadData,
.registration #btnUpload {
    width: 50% !important;
    margin: 250px auto 0px auto;
    position: relative;
    left: 24%;
    right: 50%;
    min-width : 230px;
}*/

.registration #FileUploadData,
.filebutton,
.registration #btnUpload {
    border: 0;
    display: block;
    margin: 250px auto 0px auto;
    min-width: 175px;
    position: relative;
    width: 50% !important;
}
.filebutton { margin-top: 0; }
.registration p.uploadingmsg {
    display: none;
    width: 25%;
    margin: 20px auto;
    height: 40px;
    padding-top: 210px;
    border: solid 1px #ebebeb;
    -moz-box-shadow: #ebebeb 2px 2px 2px;
    -webkit-box-shadow: #ebebeb 2px 2px 2px;
    box-shadow: #ebebeb 2px 2px 2px;
    min-width: 150px;
    background: url(/images/responsive/3.gif) no-repeat center center #fff;
}
.registration #FileUploadData.uploading {
    margin-top: 0px;
}
.registration #btnUpload {
    margin: 10px auto;
}

.registration.gotpic p.notes {
    display: none;
}
#profilePicForm.uploading,
.registration.gotpic #profilePicForm {
    background: none;
}
.registration.gotpic .blankcenter {
    width: 100%;
}
.registration.gotpic .blankcenter img {
    margin: 0px auto;
    width: 220px;
    display: block;
}
.registration.gotpic #gvUploadsPic,
.registration.gotpic #gvUploadsPic td {
     width: 100%;
}
.registration.gotpic #profilePicFormComplete {
    display: block !important;
}
.registration.gotpic #profilePicFormComplete a.smartbutton {
    margin: -1em auto 2em auto;
    display: block;
    width: 100px;
}
.registration.gotpic #profilePicForm {
    min-height : 0px;
}
.registration #tohome,
.registration #tohomeedit,
.registration #topic {
    display: none;
}
#profilePicFormComplete a.smartbutton {
    font-weight: bold;
}
#updatepassword {
    font-size: 0.8em;
    visibility: hidden;
}
.registration #registerForm #updatebtnimg {
    float: right;
    text-decoration: underline;
    display: block;
    margin-left: 4.5%;
    margin-top : 20px;
}
.registration .editrow {
    width : 95%;
    overflow : hidden;
    padding-right: 5%;
}
.registration .editrow p {
    float: left;
}
.registration #registerForm #updatebtnedit,
.registration #registerForm #registerButton {
    float: right;
}
@media only screen and (min-width: 48.75em) {
    #registerForm fieldset {
        width: 40%;
        float: left;
        padding: 0.75em 5%;
    }
    #registerForm fieldset.fullwidth {
        width: 90%;
        float: none;
        padding: 0.75em 5%;
    }
    #registerForm .smartbutton {
        float: left;
    }
   .registration #FileUploadData,
   .filebutton,
   .registration #btnUpload {
        width: 30% !important;
    }

   .registration #profilePicForm { background-position-y: 6.5em; }
}

/* ==========================================================================
   Resources
   ========================================================================== */
.listFiles { margin: 5px 0 0 4px; /* Cancels out the last list item's margin-bottom without affecting items which don't display files */ }
.resources #headerOverlay h2 {
    margin-left: 3.5%;
    width: 93%;
}
.resources .listResources  {
    width: 99%;
    margin-right: 0%;
}
.resources .listResources > li {
    width: 94.5%;
    padding: 0 1% 0 0;
    min-width: 250px;
}
.resources .listResources li div.img { 
    display: none;
    width: 62px;
    min-height: 62px;
    float: left;
    border-right: 0;
    padding : 7px;
   
}
@media only screen and (min-width: 32em) {
    .resources .listResources li div.img { display: block; }
}
.resources .listResources li div.img img { 
    max-width: 100%;
}
.resources .listResources li .resourcedetails { 
   float: left;
   padding-left: 3%;
   border-left: none;
   min-height: 62px;
   width: 80%;
}
.resources .listResources li .downloads a { 
    background: #2d2d2d; 
    -moz-border-radius: 5px; 
    -webkit-border-radius: 5px; 
    border-radius: 5px; 
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 13px;
    font-weight: bold;
    margin-top: 10px;
    padding: 6px 0;
    text-align: center;
    text-decoration: none;
    width: 275px;
}
.resources .listResources li .downloads a.nodownload {
    cursor: default;
    font-weight: normal;
    text-decoration: none;
}
.resources .listResources li .resourcedetails .uploaded { 
    font-size: 0.9em;
}
.resources .listResources li .resourcedetails h2 { 
    font-size: 1em;
}
.resources .listResources .downloads p {
    margin: 0.25em 0;
}
.resources .emailDownloads {
    display: block;
    margin: 10px auto;
    width: 85%;
}
.resources a.ok {
    float: right;
}

@media only screen and (min-width: 48.75em) {
    .resources #headerOverlay h2 {
        margin-left: 4.5%;
        width: 93%;
    }
    .resources .listBlocks li { margin-left: 3%; }
    .resources #headerOverlay h1 { 
        padding-left: 3.5%;
        width: 93%;
    }
    .resources .emailDownloads {
        margin: -60px 3% 0 5%;
        float: right;
        width: 25%;
    }
}

/* ==========================================================================
   Speakers
   ========================================================================== */
.speakers .listBlocks li {
    padding: 0;
    width: 98%;
    float: left;
    display: block;
    margin-left: 1%;
}
.speakers .listBlocks li .speakerdetails { 
    padding: 0 5px 5px 5px;
    float: left;
    width: 98%;
    display: block;
    border-left: solid 1px #d8d8d8;
}
.speakers .listDelegates li {
    display: block;
    min-width : 240px
}
.speakers .listBlocks li img {
    display: block;
    float: left;
    position: relative;
    width: 62px;
    height: 62px;
}
.speakers .listBlocks li .img {
    border-right: 0;
}
.speakers #headerOverlay h1 {
    padding-left: 3.5%;
}
/*@media only screen and (min-width: 48.75em) {
    .speakers .listBlocks li { width: 48%; }
}*/
@media only screen and (min-width: 321px) {
    .speakers .listBlocks li .speakerdetails {
        width: 76%;
    }
}

/* ==========================================================================
   Venue
   ========================================================================== */
.venue {
    min-height: 500px;
}
.venue ul.subnav a {
    font-weight: normal; 
}
.venue ul.subnav a.selected {
    font-weight: bold;   
}
.venue .floorplan {
    max-width: 100%;
    margin-bottom : 2em;
}

/* ==========================================================================
   Vote / Live Interactive
   ========================================================================== */
#li4holder { height: 100%; overflow: hidden; border: 0; }
.vote #votebuttons {
    width : 90%;
    margin: 2em 5%;
}
.vote #votebuttons a {
    background : #fff;
    border: 1px solid #2d2d2d;
    display: block;
    float: left;
    width : 100%;
    height: 180px;
    margin : 1.5em 1.5%;
}
.vote #votebuttons a div.plusicon {
    height: 100%;
    /*background: url(/images/responsive/btn-corner-purple.png) no-repeat bottom right;*/
    text-align: center;
    color: #2d2d2d;
    font-size: 1.4em;
    position: relative;
}
.vote #votebuttons a div img {
    display: block;
    float: left;
}
.vote #votebuttons a div .voteicon {
    position: absolute;
    top: 0;
    left: 0;
}
.vote #votebuttons a div span {
    display: block;
    padding: 40px 4% 0;
}
.vote #votebuttons a div span.joinnow {
    font-size: 70%;
    padding-top: 6px;
    color: #2d2d2d;
}
@media only screen and (min-width: 60em) { /*Changed from 48.75em*/
    .vote #votebuttons a {
       width : 30%; 
    }
}

/* ==========================================================================
   Loading elements and Popovers/popups
   ========================================================================== */
#popupOverlay 
{
    background: #000;
    background: rgba(0,0,0,.5);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
}

.popup
{
    background: white;
	margin: 1em auto;
	width: 96%;
	max-width: 43.75em; /*700px*/
	overflow: hidden;
}
#newMessage-popup { width: 35em; }

#headerPopup { position: relative; }
#headerPopup .close
{
    font-size: 1em;
    /*line-height: 1;
    position: absolute;
    right: ;
    top: 0;*/
    float: right;
}
#headerPopup h1
{
    font-size: 1.25em; /*20px*/
    letter-spacing: -1px;
    padding: .25em .5em;
    text-transform: uppercase;
}
.bodyPopup { padding: 1em; }
.popup .avatar
{
    border: 1px solid #d9d9d9;
    float: right;
    margin: 0 0 1em 1em;
    max-width: 25%;
    /*min-width: 6.25em; /*100px TODO: Is this a requirement? */
}
.popup h2 {
	font-size: 1.75em; /*28px*/
	line-height: 1;
}
.popup h3
{
    border-bottom: 1px solid #d9d9d9;
    font-size: 1.125em; /*18px*/
    padding-bottom: .5em;
    margin-bottom: 1em;
    max-width: 70%; /* In conjunction with .avatar - so the border doesn't disappear under the image */
}
.popup .uploaded { font-size: .85em; margin: 0; }

#containerLoading 
{
    background: #444;
    border-radius: .375em; /*6px*/ 
    line-height: 3em;
    margin-right: -1.5em;
    margin-top: -1.5em;
    opacity: 0.75;
    position: absolute;
    left: 50%;
    top: 50%;
    text-align: center;
    width: 3em;
    z-index: 2;
}
/*#containerLoading img { margin-right: .5em; }*/

/* Meetings */
.ui-selecting { background: #d8efa2; }
/*.ui-unselecting { background: #ccc; }*/
.ui-selected { background: #8fbc27; }

/* Probably don't need all of these */
/* Popover Elements */
.popover-container
{
    display: none;
    z-index: 101;
    text-align: center;
}

.popover 
{
    position: relative;
    /*background: url('box.png') no-repeat;*/
    margin: 0 auto;
    border: 10px solid #535353;
    padding: 20px;
    padding: 0;
    background: white;
    color: black;
    overflow:hidden;
}

/* Meeting Tool */
#popoverMeeting,
#popoverBookingGrid { text-align:left; }
#popoverMeeting { /*min-width: 1000px;*/ position: fixed; top: 0; left: 0; }
#popoverBookingGrid { /*background-color:#fff; border:10px solid #222222; cursor:default; margin-top: 15px; margin-bottom: 15px; position: absolute; top: 10px; left: 10px; z-index:50; padding: 25px; overflow-y: auto;*/ display:none; /*margin-bottom: 15px; position: fixed; top: 25px; left: 10px;*/ }
#popoverMeeting .popover-body,
#popoverBookingGrid .popover-body
{ max-height: none; padding: 1em; }

.popover-head h2 
{
    background: #535353;
    color: White;
    padding-bottom: 10px;
    font-size: 1.8em;
    font-weight: bold;
    cursor: move;
    text-align: left;
    z-index:99;
}
.popover-head h2 .btn { background: #999; margin-top: 2px; vertical-align: top; }

.popover-head .close-popover
{
    position: absolute;
    top: 4px;
    right: 0;
    z-index:103;
}

.loading-container {
    z-index: 105;
    display: none; 
    background: #5b5b5b;
    color: White;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -1em 0 0 -10em; /* top was -1.5em, changed to keep it more central in the content div */
    padding: 1em 0;
    width: 20em; 
    height: 2em;
    font-weight: bold;
    text-align: center; 
}
.overlay .loading-container { display: block; }
.loading-container img { vertical-align: middle; }

.popover-body { padding: 2% 2% 0; /*13px*/ max-height: 600px; overflow: auto; }

.popover p { padding: 0 0 1em; }

.popover textarea
{
    width: 100%; /*674px*/
    height: 3em; /* Two rows seems to require 3em to be correct size - TODO: check in all browsers */
}

/* ==========================================================================
   Service alert
   ========================================================================== */
/* Is this needed? */
@media screen and (max-width:610px){
    .service-alert {
        background-position: center top;
        padding: 140px 80px 40px;
    }
}
.service-alert,
.service-page {
    color: #fff;
    text-align: center;
    background: #036 url(/images/true-offline-mode-icon.png) no-repeat 3% center;
    padding: 60px 80px;
}
.service-alert {
    display: none;
    box-sizing: border-box;
    width: 100%;
}
.service-alert > * {
    display: inline-block;
}
.service-page p {
    margin-bottom: 2.5em;
}
.service-alert p {
    margin: 10px 0;
}
.service-alert a,
.service-page a {
    color: #000;
    background: #fff;
    font-size: 26px;
    padding: 10px 50px;
    border-radius: 25px;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   Theses examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 321px) {     
    .listBlocks li .img {
        display: block;
    }   
    .listBlocks li {
        padding: 0
    }
}

@media only screen and (min-width: 48.75em) { /* 2 cols for 525px and wider */
    .overlay .searchContainer { margin-right: 1.5em; /*24px*/ margin-top: 4em; }
    .overlay .searchFields { margin-right: 1.5em; overflow:hidden; }
    .overlay .searchFields .ddItem { margin-top:.5em;}
    .overlay .searchFields .ddItem select { width:100%;}
    .overlay article { padding: 0 5em 0 0; }
    
    /* show in 2 columns */
    .overlay .listBlocks li { float: left; margin-left: 3%; }
    .overlay .listBlocks li:nth-child(odd) { clear: both; margin-left: 0; } /* Force a row */
    .overlay .listDelegates li { width: 48%; /* TODO: Check in all browsers*/ }
    .overlay .listResources li { width: 36.5%; /* TODO: Check in all browsers*/ }
    .overlay .listBlocks li li { margin-left: 0; width: 100%; float: none; }
}

@media only screen and (min-width: 48.75em) { /* 3 cols for 780px and wider - includes scrollbar */
    /* Grid System - 3 columns, each divisable in half */
    .eventDetails { border-width: 0; text-align: right; }
    
    .col { float: left; width: 32%; margin-left: 2%; }
    .colspan2 { width: 66%; }
    .overlay .colspan2 { width: 64%;}
    .colspan3 { width: 96%; }
    .first { clear: both; }

    .venue .colspan2 {
        margin-top: 2em;
    }

    .bodyPopup { padding: 2em; }

    .content-tab-image { margin:0px 1% 0 0; width: 19%; }
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

.clear { clear: both; }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
    *zoom: 1;
}

.first { margin-left: 0 !important; }
.last { margin-right: 0 !important; }

.clickable,
.close {
    cursor: pointer;
}

.horizontal li { list-style: none; display: inline-block; }
.horizontal label { display: inline; }

.rankQuestionItem {
    clear:both;
    overflow:hidden;
}

.rankQuestionItem .rankNumber, .rankQuestionItem .rankNumberEmpty {
    float:left;
}

.rankQuestionItem .rankNumber {
    padding:5px 8px; font-size:16px; font-weight:bold; border:1px solid #dbdbdb; background:#F1F7FB; border-radius:3px; color:#2F3E46; margin:10px auto 0 auto;
}

.rankQuestionItem .rankQuestion {
    margin:0 0 0 50px;
    display:block;
    overflow:hidden;
}

.rankQuestionItem .rankQuestion input {
    position:absolute;
    top:20px;
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */
    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;2128
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}