﻿/*************************
/ Core Resets
/************************/

html,
*
{
    padding: 0;
    margin: 0;
    border: 0;
}

body 
{
    font-size:10pt;
    font-family:Helvetica,Arial,Sans-Serif;
}


.user-markup-content-container 
{
    line-height:1.4;
}

.user-markup-content-container p
{
    margin-bottom:1em;
}

.user-markup-content-container h2 {
        color: #2770B8;
}

ul, ol 
{
    margin:0;   
    padding:0;
}

li 
{
    list-style:none;
}

select 
{
    padding:1px;
    border:1px solid #cccccc;
}

.user-markup-content-container, .terms-conditions-content
{
    line-height:1.4;
}

.user-markup-content-container p, .terms-conditions-content p
{
    margin-bottom:1em;
}

.user-markup-content-container h2 {
    color: #2770B8;
}

.user-markup-content-container ul, .user-markup-content-container ol {
    margin: 1em auto 1em 3em;
    list-style-type: square;
}

.user-markup-content-container ul li {
    list-style-type: square;
    margin-bottom: 0.5em;
}






a,
a:link,
a:visited
{
    text-decoration: none;
    color:#0066CC;
}

a:hover
{
    text-decoration: underline;
}


h1 
{
    color:#000;
    font-size:2.5em;
    font-weight:bold;
    margin-bottom:0.5em;
    margin-top:0.5em;
}

.cufon-ready #main-content h1 
{
    letter-spacing:-0.07em;
}

h2 
{
    margin-top:1em;
    font-size:1.5em;
    margin-bottom:0.5em;
    color:#666;
}

.cufon-ready #main-content h2
{
    letter-spacing:-0.05em;
}

h3
{
    margin-top:1em;
    font-size:1.1em;
    font-weight:bold;
    margin-bottom:0.5em;
    color:#666;
}

.cufon-ready #left-bar-content h3,
.cufon-ready .catalogue-page h3
{
    letter-spacing:-0.05em;
}





/***********
 * User Menu
 **********/

#status
{
    position: absolute;
    top: 22px;
    right: 30px;
}

#status .username
{
    position: absolute;
    top: 4px;
    right: 30px;
    font-size:0.8em;
    color:#666666;
}


#status .username
{
    clear: both;
    text-align: right;
    padding-top: 3px;
}

#status li
{
    list-style-type: none;
    display:inline-block;
    margin-left:0.5em;
    *display: inline;
    *zoom:1;
}

#status li .link 
{
    display:block;
}

#status a:hover
{
    text-decoration: none;
}

#status .last a
{
}

#main-content
{
    vertical-align:top;
    display:inline-block;
    *display:inline;
    *zoom:1;
    width:658px;
    padding-left:20px;
}



#website-page-wrapper 
{
    line-height:1.4;
}




/*************************
/ Common Theme Elements
/************************/


/*** Error box ***/
.error-box 
{
    border: 1px solid #FF8888;
    background-color:#FFF0F0;
    margin: 0 auto 2em;
    padding: 1em;
    width: 66%;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}

.error-box .error-heading 
{
    font-weight:bold;
    margin-bottom:0.5em;
}



/*** Logged in status controls ***/
.status-controls 
{
    position:relative;
}
.status-controls .inner 
{
    font-size:0.8em;
    top:0.5em;
    position:absolute;
    right:1em;
    width:100%;
    text-align:right;
}
.status-controls .inner * 
{
    display:inline;
}
.status-controls .inner > div {
    margin-left:1em;
}
.management-edit-link-container 
{
    position: relative;
}
.management-edit-link-container a 
{
    position: absolute;
    right: 0;
    top: -3em;
}

#aspnetForm {
    padding: 10px 0px;
    width: 90%;
    margin: 0px auto;
    max-width: 800px;
}

@media only screen and (max-width: 900px) {
	#aspnetForm {
	    width: 95%;
	}
}


/*************************
/ Fields
/************************/
.clear-link-ct 
{
    display:none;
}

fieldset,
.order-form-inner-container
{
    padding:1em;
    background-color: #F1F1F1;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;

    border: 1px solid #DDDDDD;
}

.register-page .order-form-inner-container {
    border:none;
    padding:0;
}

.field,
.address-control-container > div
{   
    margin-bottom:0.5em;
}

.field.last
{
    margin-bottom:0;
}

.field label.error,
.voucher-error 
{
    display:block;
    color: Red;
}

.field-required
{
    color: Red;   
}

.field .pretext-container 
{
    margin-bottom:0.5em;
}

.field-input-container 
{
    display: inline-block;
    vertical-align:top;
   /* width: 33em;*/
}

.field-price .field-input-container {
    margin-top: 0.3em;

}

.field-input-container label.error {
    margin-top: 3px;
}

.field-input-container select.textbox-input {
    width: 20.7em;
}

.field-input-container span.radio
{
    margin-right:1em;
}

.field-input-container span.radio input
{
    margin-right:0.3em;
}

.ie6 .field-input-container span.radio input,
.ie7 .field-input-container span.radio input
{
    margin-right:0em;
}

.ie6 .field-input-container,
.ie7 .field-input-container 
{
    display: inline;
    zoom:1;
}

.field .field-label,
.field > label,
label.field-description 
{       
    display: inline-block;
    margin-right: 0.7em;
    margin-top: 0.3em;
    width: 11em;
    text-align: right;
    vertical-align:top;
}

.ie6 .field .field-label,
.ie7 .field .field-label,
.ie6 .field > label,
.ie7 .field > label,
.ie6 label.field-description,
.ie7 label.field-description 
{
    display: inline;
    zoom:1;
}

.field .textbox-input 
{
    width:20em;
    border:1px solid #cccccc;
    padding: 0.3em;
    display:inline-block;
}

.field-input-container .textbox-input.error {
    border-color: #FF8888;
}

.field .textbox-input.short-input 
{
    width:11.8em;
}
.field select 
{
    padding:2px;
    border:1px solid #cccccc;   
}

.field .check-container {
    margin-top: 0.4em;
}

.field .check-container label 
{
    margin-left:0.4em;
}

.ie6 .field .check-container label,
.ie7 .field .check-container label 
{
    margin-left:0;
    
}

.radio input 
{
    background-color:transparent;
}

.personal-address-form > .field > label 
{
    display:none;
}

.address-control-container .secondary-label 
{
    width:2.85em;
}

.form-caption 
{
    margin-top:1em;
}

.field .help-container {
    width: 450px;
    color: #666;
}

.field .newsletter-more-options .option-label
{
    margin-top: 0.75em;
    margin-bottom: 0.25em;
    margin-left: 0;
    display: block;
}


/*************************
/ Events Homepage
/************************/


/** Upcoming Events control **/
.default-page .upcoming-events {  
    width: 210px;
    font-size:0.9em;
}


.default-page .upcoming-events .event .location 
{
    font-size:0.9em;
}

.default-page .upcoming-events ul 
{
    margin:0;
}
.default-page .upcoming-events ul li {
    cursor: pointer;
    display: block;
    margin-bottom: 0.5em;
}
.default-page .upcoming-events li.hover {
    background-color: #F5FCFE;
}
.default-page .upcoming-events .datetime 
{
    background-color:#ffffff;
    border: 1px solid #cccccc;
    display: inline-block;
    position: relative;
    text-align: center;
    vertical-align: top;
    width: 35px;
    z-index: 2;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: 1px 1px 3px #ccc;
    -webkit-box-shadow: 1px 1px 3px #ccc;
    box-shadow: 1px 1px 3px #ccc;
}

.ie6 .default-page .upcoming-events .datetime,
.ie7 .default-page .upcoming-events .datetime 
{
    display:inline;
    zoom:1;
}

.default-page .upcoming-events .datetime span {
    display: block;
}
.default-page .upcoming-events .datetime .month {
    color: #FFFFFF;
    background-color:#009FD0;
    line-height: 1.4em;
    font-size: 0.9em;   
}
.default-page .upcoming-events .datetime .day {
    color: #404040;
    font-size: 1.2em;
    line-height:1.5em;    
}

.default-page .upcoming-events a:hover, 
.default-page .upcoming-events a:link, 
.default-page .upcoming-events a:visited {
    text-decoration: none;
}


.default-page .upcoming-events .event {
    display: inline-block;
    padding-left:5px;
    vertical-align: top;
    width: 162px;
}

.ie6 .default-page .upcoming-events .event,
.ie7 .default-page .upcoming-events .event 
{
    display:inline;
    zoom:1;
}

.default-page .upcoming-events .event .inner {
    padding-left: 0.5em;
}
.default-page .upcoming-events .event .inner a {
    display: inline-block;
}
.default-page .upcoming-events .event .location {
    color: #666666;
    white-space:nowrap;
}
.default-page .upcoming-events .view-more {
    text-align: right;
}



/*************************
/ Upcoming Events list
/************************/
.whatson-page #website-page-wrapper h2 
{
    padding:0.5em;
    background-color:#336699;
    -moz-border-radius: 5px;
    -webkit-border-radius:5px;
    border-radius: 5px;
    font-weight:bold;
    color:#ffffff;
}

.ie7 .whatson-page #website-page-wrapper h2 
{
    padding:0.25em;
}

.whatson-page #website-page-wrapper .item 
{
    padding:1.2em;
    border-bottom:1px dotted #888888;
}
.whatson-page #website-page-wrapper  .item-odd {
    background-color:#efefef;
}
.whatson-page #website-page-wrapper h3 
{
    margin-top:0;
}

.whatson-page #website-page-wrapper h4 
{
    display:none;
}
.whatson-page .course-start-date p,
.whatson-page .schedule-venue p,
.whatson-page .course-price p
{
    font-size:0.9em;
    font-weight:bold;
}
.whatson-page .course-duration
{
    display:none;
}

.whatson-page .favourites-button-container 
{
    display:none;
}

.whatson-page .course-info 
{
    position:relative;
}

.whatson-page .course-price {
    position: absolute;
    right: 0;
    text-align: right;
    top: 0;
    width: 15em;
}
.whatson-page .group2 
{
    text-align:right;
}

.whatson-page .course-summary 
{
    margin-top:1em;
    width: 100%;
    text-align:left;
}

.whatson-page .course-controls {
    margin-top:0.5em;
}

.ie6 .whatson-page .course-summary,
.ie7 .whatson-page .course-summary 
{
    display: inline;
    zoom:1;
}

.ie6 .whatson-page .course-controls,
.ie7 .whatson-page .course-controls  
{
    zoom:1;
    margin-left: 0;
}

.whatson-page .places-left-container {
    display:inline-block;
    margin-right:1em;
}

.whatson-page .registration-button-container 
{
    text-align:right;
    display:inline-block;
}

.whatson-page .location select 
{
    margin-left:0.5em;
}




.whatson-page .pager-wrapper {
	margin-top: 1.4em;
}

.whatson-page .pager-wrapper ul:after,
.whatson-page .pager-wrapper ul:before {
    clear: both;
}


.whatson-page .pager-wrapper ul {
    display: inline;
    list-style: none;
    margin: 0;
    padding: 0;
}

.whatson-page .pager-wrapper .page-tag {
    display: none;
}


.whatson-page .pager-wrapper li {
    float: left;
    margin: 0px 3px;
}


.whatson-page .pager-wrapper a.next-pager,
.whatson-page .pager-wrapper a.previous-pager {
    float: left;
    margin: 0px 3px;
}


/*************************
/ Course/Event page
/************************/
.evt-page p.summary 
{
    margin-bottom:2em;
}


.evt-page .course-schedule
{
    margin-top:1em;
    margin-bottom:2em;
}

.evt-page .schedule-loading
{
    display:none;
    width: 100%;
    height:7em;
}

.evt-page .loader
{
    vertical-align: middle;
}

.evt-page .loading
{  
    font-size: 1.25em;
    vertical-align:middle;
    text-align:center; 
    line-height:6em;   
}

.evt-page .schedule-controls .schedule-control
{
    display: inline-block;
}

.ie6 .evt-page .schedule-controls .schedule-control,
.ie7 .evt-page .schedule-controls .schedule-control
{
    display: inline;
    zoom:1;
}

.evt-page .schedule-controls .timezone-control select
{
    width: 270px;
}

.evt-page .schedule-controls .location-control select
{
    width: 190px;
}

.evt-page .schedule-control-column-one
{
    width: 45%;
    vertical-align:top;
}
.evt-page .schedule-control-column-two
{
     width: 55%;
     vertical-align:top;
     text-align:right;
     *margin-right:-1px;
}


.evt-page .schedule-control > *
{
    vertical-align:middle;
}

.evt-page .schedule-controls label
{
    margin-right:0.4em;
}

.evt-page .schedule .empty-schedule 
{
    padding:1em;
    margin-top:0.7em;
    text-align:center;
    background-color:#F3F3F3;   
}

.evt-page .schedule ul li 
{
    margin-top: 0.7em;
    padding: 0.7em;
    list-style-type:none;
    background-color:#F3F3F3;
    border-left: 0.75em solid #336699;
 }

.evt-page .schedule-container .column
{
    display: inline-block;
    vertical-align: top;

}

.ie6 .evt-page .schedule-container .column,
.ie7 .evt-page .schedule-container .column 
{
    display: inline;
    zoom:1;
}

.evt-page .schedule .column-one
{
    width:9%;
}


.evt-page .schedule .column-two
{
    width: 70%;
}

.evt-page .schedule .column-three
{
    width:21%;
    text-align:center;
    *margin-right:-1px;
}


.evt-page .schedule-container-no-register .column-three
{
    display:none;
}

.evt-page .schedule .details-container {
    margin-top:0.5em;
}

.evt-page .schedule .description
{
    font-weight: bold;
}


.evt-page .schedule .datetime 
{
    text-align: center;
    width: 2.75em;
    background-color:#FFFFFF;
}

.evt-page .schedule .datetime span 
{
    display: block;
}


.evt-page .schedule .day 
{
    border-color: #336699;
    border-style: solid;
    border-width: 0 1px 1px;
    color: #444444;
}

.evt-page .schedule .day 
{
    font-size:1.4em;
    line-height:1.4em;
}

.evt-page .schedule .location, 
.evt-page .schedule .presenter 
{
    display:inline;
}

.evt-page .schedule .location 
{
    margin-right:0.75em;
}

.evt-page .schedule .month 
{
    font-size:0.8em;
    background-color: #336699;
    color: #FFFFFF;
}

.evt-page .schedule
{
    margin-bottom:0.5em;
}

.ie6 .evt-page .show-more,
.ie7 .evt-page .show-more 
{
    display:inline;
    zoom:1;
}

.evt-page .schedule-footer .column
{
    width:50%;
}

.evt-page .schedule-footer .column-right 
{
    text-align:right;
}



.evt-page .schedule-content .show-more
{
    padding-left: 2em;
    position: relative;
    vertical-align: middle;
    display: inline-block;
    *display:inline;
    *zoom:1;
}

.evt-page .schedule-content .show-more
{
    margin-right: 2em;
}


.evt-page .schedule-content .show-more-box {
    background-color: #336699;
    color: #FFFFFF;
    display: block;
    *display:inline;
    *zoom:1;
    position: absolute;
    left: 0;
    top: 0.05em;
    height: 1.3em;
    line-height: 1;
    text-align: center;
    vertical-align: middle;
    width: 1.4em;
}

.evt-page .schedule-content .show-more-box span {
    line-height: 1em;
    position: relative;
    top: 0.12em;
    margin-top:-0.05em;
    display:block;
}

.evt-page .schedule-content a .show-more-box span, 
.evt-page .schedule-content a:hover .show-more-box span, 
.evt-page .schedule-content a:link .show-more-box span,
.evt-page .schedule-content a:visited .show-more-box span
{
    text-decoration:none !important;
}


.evt-page #website-page-wrapper h2 
{
    border-bottom: 1px dotted #AAAAAA;
    padding-bottom:0.2em;
}

.evt-page .course-descriptive-info-list .course-descriptive-info-item .return-to-top
{
    float:right;
    margin-right:1em;
}



/*************************
/ Register page (single page signup)
/************************/

.register-page .register-for-details 
{
    background-color: #F1F1F1;
    padding: 1em;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;

}

.register-page .register-for-details .price {
    margin-top: 5px;

}

.register-page .register-for-details h3 
{
    /*margin:0;*/
}

.register-page .submit-container 
{
    margin-top:1.5em;
}


/*************************
/ Registered page (signup success page)
/************************/

.registered-page .course-name 
{
    font-weight:bold;
}

.registered-page p
{
    margin-bottom:1.25em;
}
.registered-page ul 
{
    margin-top:2em;
}

.registered-page li 
{
    margin-bottom:0.5em;
}





/*************************
/ Checkout pages
/************************/

/*** Wizard steps (header) ***/

.wizard-step 
{
    background:url(../images/cart-steps.gif) no-repeat scroll 0 0 transparent;
    list-style:none;
    display:inline-block;
    height:24px;
    padding: 5px 15px 2px 15px;
}

.ie6 .wizard-step, 
.ie7 .wizard-step 
{
    display:inline;
    zoom:1;
}

.wizard-step .step-label 
{
    display:block;
    margin-top:3px;
}

.wizard-step .divider 
{
    display:none;
}


.wizard-steps-container 
{
    border-bottom:0.3em solid #CCCCCC;
    margin-bottom:1.5em;
}


.wizard-steps-container .label  
{
    display:none;
}

.wizard-step0 { background-position:left -25px; }
.wizard-step1 { background-position:left -75px; }
.wizard-step2 { background-position:left -125px; }
.wizard-step3 { background-position:left -175px; }
.wizard-step4 { background-position:left -225px; }
.wizard-step0-current { background-position:left 0px; }
.wizard-step1-current { background-position:left -50px; }
.wizard-step2-current { background-position:left -100px; }
.wizard-step3-current { background-position:left -150px; }
.wizard-step4-current { background-position:left -200px; }
.wizard-step-current { background-color: #cccccc;}
.wizard-step-complete { color: #ccc;}

.checkout-page #website-page-wrapper h2 
{
    margin-top:0;
}

/*** Common checkout page styles ***/
.checkout-page .type-existing {
    margin-bottom:1.5em;
}

.checkout-page .type-new {
    margin-bottom: 0.3em;
}

.checkout-page .checkout-step 
{
    margin-bottom:2em;
}

/*** Shopping Cart/Registrations ***/
.checkout-page .shopping-cart 
{
    margin-top:1.25em;
}

.checkout-page .checkout-registrations-step h2 {
    display: none;
}
.checkout-page .shopping-cart-registration {
    position: relative;
}

.checkout-page .shopping-cart-items {
    -moz-border-radius: 5px;
    -webkit-border-radius:5px;
    border-radius: 5px;
    border: 1px solid #EAEAEA;
    padding: 6px;
}

.checkout-page .shopping-cart fieldset 
{
    border:none;
    background-color:#F3F3F3;
}

.checkout-page .shopping-cart h3 {
    background-color: #336699;
    color:White;
    font-size: 13px;
    margin:0;
    padding: 8px 0 8px 15px;
}
.checkout-page .registration-info {
    padding-bottom: 10px;
    padding-left: 15px;
    padding-top: 10px;
    background-color:#F3F3F3;
}

.checkout-page .registration-info * 
{
    font-size:1em;
    margin:0;
}

.checkout-page .info-item 
{
    margin-bottom:0.5em;
}

.checkout-page .info-item *
{
    display:inline-block;
}

.ie6 .checkout-page .info-item *, 
.ie7 .checkout-page .info-item * 
{
    display:inline;
    zoom:1;
}

.checkout-page .info-item h4 {
    width:7em;
}

.ie6 .checkout-page .info-item h4, 
.ie7 .checkout-page .info-item h4 
{
    display:inline;
    zoom:1;
}

.checkout-page .attendee-header-row {
    background-color: #595959;
    color: #FFFFFF;
    padding: 8px 15px 8px 15px;
    width: inherit;
}
.checkout-page .attendee-heading 
{
    display:inline-block;
    width:70%;
    vertical-align:top;
}

.ie6 .checkout-page .attendee-heading, 
.ie7 .checkout-page .attendee-heading 
{
    display:inline;
    zoom:1;
}

.checkout-page .attendee-remove-cell 
{
    display:inline-block;
    width:29%;
    text-align:right;
    vertical-align:top;
}

.ie6 .checkout-page .attendee-remove-cell, 
.ie7 .checkout-page .attendee-remove-cell 
{
    display:inline;
    zoom:1;
}

.checkout-page .remove-attendee-link {
    border-bottom: 1px dashed #FFFFFF;
    color: #FFFFFF;
}
.checkout-page .remove-attendee-link:hover, 
.checkout-page .registration-controls a:hover {
    border-bottom-style: solid;
    text-decoration: none;
}
.checkout-page .registration-controls {
    right: 16px;
    top: 8px;
    position:absolute;
}
.checkout-page .registration-controls a {
    border-bottom: 1px dashed #FFFFFF;
    color:#ffffff;
}


.checkout-page .registration-attendee-controls 
{
    background-color:#F3F3F3;
    padding:8px;
    padding-left:15px;
}

.checkout-page .add-course-link-container 
{
    margin-top:1.5em;
}

.checkout-page .previous-button 
{
    float:left;
}

.ie7 .checkout-page .previous-button 
{
    float:none;
}




/*** Order Details ***/

.field-bill-to label.field-label {
    margin-top: -2px;
}

.checkout-page .order fieldset {
    padding:0;
    border:none;
    background-color:transparent;
}

.checkout-page .order-form-inner-container 
{
    margin-bottom:1.25em;
}

.checkout-page .field-bill-to .type-radio label 
{
    margin-right:2em;
}

.checkout-page .field-terms-conditions > label, 
.checkout-page .field-terms-conditions > a
{
    display: inline;
    margin: 0;
    vertical-align: bottom;
    width:auto;
    cursor: pointer;
}

.checkout-page .field-terms-conditions label.error 
{
    width:auto;
    display:block;
}

.checkout-page .field-payment-type label 
{
    margin-top:0.2em;
}
.checkout-page .field-payment-type select 
{
    width:20.7em;
}

.checkout-page .field-terms-conditions input {
    margin-right: 6px !important;
    top: -2px !important;
}

.checkout-page .field-terms-conditions {
    margin-bottom: 0px;
}



/*** Order Review ***/
.checkout-page #website-page-wrapper .checkout-review-step h4 
{
    margin-top:1em;
    margin-bottom:0.5em;
}

.checkout-page .order-details-container 
{
    margin-bottom:2em;
}

.events-checkout-page .terms-conditions
{
    margin-top:1em;
}

.checkout-page .terms-conditions-content 
{
    font-size:0.8em;
    margin-top:2em;
    margin-bottom:2em;
    padding:1em;
    padding-left:0;
    padding-right:0;
    border-top:1px dotted #999999;
    border-bottom:1px dotted #999999;   
}
.checkout-page .terms-conditions-content h2,
.checkout-page .terms-conditions-content h3,
.checkout-page .terms-conditions-content h4
{
    margin-top:1em;
    margin-bottom:0.5em;
}

.checkout-page .order-lines-table
{
    width:100%;
}

.checkout-page .order-lines-table th,
.checkout-page .order-lines-table td
{
    padding-top: 0.7em;
    padding-bottom: 0.7em;
}

.checkout-page .order-lines-table th
{
    font-weight: bold;
}
.checkout-page .amount-cell
{
    text-align: right;
    vertical-align:top;
}

.checkout-page .order-subtotal-row td
{
    padding-top: 1.7em;
}

.checkout-page .order-lines-row td
{
    border-bottom-width:1px;
    border-bottom-style: solid;
    border-top-width:1px;
    border-top-style: solid;
    border-color:#BBBBBB;
}

.checkout-page .order-lines-table td.description-cell {
    white-space:nowrap;
}

.checkout-page .order-lines-table .line-registrant
{
    font-style:italic;
}

.checkout-page .order-lines-table .line-discounts,
.checkout-page .order-lines-table .line-base-price
{
    font-size:90%;
}

.checkout-page .order-lines-table .line-discounts
{
    margin-top:0.4em;
}


.checkout-page .order-lines-table .order-total-row td.description-cell,
.checkout-page .order-lines-table .order-total-row td.amount-cell
{
    font-weight: bold;
    border-top-style: double;
    border-top-width: 3px;  
    border-color:#BBBBBB;
}

#website-page-wrapper .checkout-review-step .payment-instructions
{
    margin-top:2em;
    font-weight:bold;
}


#website-page-wrapper .payment-instructions p,
#website-page-wrapper .payment-instructions .payment-info
{
    margin-top:1em;
}
#website-page-wrapper .payment-instructions em
{
    color: #e36c0a;
}
#website-page-wrapper .payment-instructions .payment-info label,
#website-page-wrapper .payment-instructions .payment-info span.value
{
    vertical-align: top;
    /*margin-left:9.5em;*/
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    *display: inline;
}

#website-page-wrapper .payment-instructions .payment-info label
{
    width: 8em;
}

.checkout-review-step .ls-alternate-bill-to
{
    padding: 1em;
    border: 1px solid #89B5E2;
    border-radius: 0.5em;
    background-color: #F0F7FD;
}
.checkout-review-step .ls-alternate-bill-to em
{
    font-style: italic;
}




/*************************
/ Catalogue list
/************************/

.catalogue-page p 
{
    margin-bottom:1.5em;
}

.catalogue-page .header-container .category-quick-links {
    margin-bottom:1em;
}

.catalogue-page #website-page-wrapper h3 
{
    padding:4px;
    border-color: #c6c6c6;
    border-style: solid;
    border-width: 1px;
    background-color:#ffffff;
    -moz-border-radius: 5px;
    -webkit-border-radius:5px;
    border-radius: 5px;
    font-weight:bold;
}

.catalogue-page .catalogue-category-current h3 
{
    display:none;
}

.catalogue-page #website-page-wrapper h3 span
{
    display:block;
    background-color: #336699;
    padding: 0.4em;
    padding-left:0.6em;
    color:#ffffff;
}
.catalogue-page table 
{
    width:100%;
}
.catalogue-page .catalogue-category 
{
    margin-bottom:2em;
}

.catalogue-page .catalogue-category-list
{
    margin-bottom:0;
}

.catalogue-page .course-name-cell,
.catalogue-page .course-name-column 
{
    width:60%;
}
.catalogue-page .course-duration-cell,
.catalogue-page .course-duration-column {
    width:20%;
}
.catalogue-page .course-price-cell,
.catalogue-page .course-price-column {
    width:20%;
}

.catalogue-page td 
{
    padding:0.5em;
}
.catalogue-page .course-row-odd
{
    background-color:#F3F3F3;
}

.catalogue-page .header-table 
{
    background-color:#c6c6c6;
    color:#ffffff;
    font-weight:bold;
}




/*************************
/ Venues list
/************************/

.venues-page p a:visited 
{
    text-decoration:none;
}

.venues-page #website-page-wrapper h3 
{
    margin-top:0.5em;
    margin-bottom:0;
    margin-right:1em;
    font-size:1em;
}

.venues-page .venue-list 
{
    font-size:0.9em;
}

.venues-page .info-item * 
{
    display:inline;
}

.venues-page .venue-item {
    border-bottom: 1px dotted #D6F4FA;
    padding: 1em;
    padding-left:0;
    padding-right:0;
    overflow:hidden;
}

.venues-page .details 
{
    display:inline-block;
    width:50%;
    vertical-align:top;
    font-size:0.9em;
    float: left;
}
.venues-page .no-map .details {
    width: 100%;
}
.venues-page .physical-address h3 
{
    display:none;
}
.venues-page .details li 
{
    margin-top:0.5em;
}
.venues-page .map-image
{
    width: 45%;
    float: right;
    text-align: right;
    display:none;
    width:39%;
    vertical-align:top;
    text-align:right;
}
.venues-page .header {
    margin-bottom: 0.5em;
    padding-bottom: 0.4em;
    position: relative;
}
.venues-page .header .controls {
    position: absolute;
    right: 0;
    top: 0.2em;
}
.venues-page #website-page-wrapper .header h2 {
    display: inline;
    margin: 0;
    padding: 0;
}
.venues-page .infoItem {
    margin-bottom: 0.75em;
}



/*************************
/ Login
/************************/
.website-page .login 
{
    width: 22.5em;
    margin: 0 auto;
    padding:1.5em;
    padding-bottom:1em;
    border:1px solid #D6F4FA;
    background-color:#F5FCFE;
    -moz-border-radius: 5px;
    -webkit-border-radius:5px;
    border-radius: 5px;
}

.website-page .login .heading 
{
    display:none;
}

.website-page .login .login-field 
{
    margin-bottom:0.5em;
}

.website-page .login .login-field label
{
    display:inline-block;
    width:6.5em;
}

.website-page .login .buttons 
{
    text-align:right;
}

.website-page .login .login-field input 
{
    padding:3px;
    border:1px solid #BFE8F0;
    width:15em;
}

.website-page .login .forgot-link-container,
.website-page .login .remember-me 
{
    margin-left:6.8em;
    margin-bottom:0.3em;
}

.field .check-container input,
.website-page .login .remember-me input,
.field-terms-conditions input {
    width: 14px;
    padding: 0;
    margin:0;
    vertical-align: bottom;
    position: relative;
    top: -2px;
    *overflow: hidden;
}

.website-page .login .forgot-link-container div {
    margin-bottom:0.3em;   
}

.website-page .login .remember-me label {
    margin-left:0.5em;
}


/*************************
/ Password reset
/************************/
.events .control-heading
{
    width: 30em;
    margin: 0 auto;
    margin-bottom:2em;
    text-align:center;
}

.events .reset-control
{
    width: 26em;
    margin: 0 auto;
    margin-bottom:4em;
    padding:1.5em;
    padding-bottom:1em;
    border:1px solid #D6F4FA;
    background-color:#F5FCFE;
    -moz-border-radius: 5px;
    -webkit-border-radius:5px;
    border-radius: 5px; 
}
.events .reset-control .reset-field 
{
    margin-bottom:1em;
}

.events .reset-control .reset-field label
{
    display:inline-block;
    width:4.5em;
}

.events .reset-control .reset-field input 
{
    padding:3px;
    border:1px solid #BFE8F0;
    width:21em;
}

.events .reset-control .buttons 
{
    text-align:center;
}


.password-reset-page .links 
{
    margin-top:4em;
}




/*************************
/ Register Interest page
/************************/

.register-interest-page .submit-container 
{
    margin-top:1.5em;
}



@media (max-width: 700px) {
    .register-interest-page fieldset {
        min-width: 0;
    }

    .register-interest-page .textbox-input {
        box-sizing: border-box;
    }

    .register-interest-page .field-input-container,
    .register-interest-page .field-input-container .textbox-input {
        max-width: 100%;
        width: 100%;
    }

    .register-interest-page .field > label {
        width: 100%;
        text-align: left;
    }

    .register-interest-page .field .help-container {
        width: 100%;
    }
}


/*************************
/ Buttons
/************************/

.website-button,
.website-link-button,
.website-link-button:link,
.website-link-button:visited
{
    display: inline-block;
    *display:inline;
    *zoom:1;
    color: #ffffff;
    cursor:pointer;
    font-family:Helvetica,Arial,Sans-serif;
    font-weight:bold;
    font-size:10pt;
    padding: 6px 10px;
    text-align:center;
    line-height:12pt;
    border: 1px solid #ccc;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    color: black;
    background-color: #e5e5e5;
}


.website-button:hover,
.website-link-button:hover {
    background-color: #ccc;
    text-decoration: none;
}

.field-input-container .apply-voucher-button {
    padding: 3px 7px;
}

.ie7 .website-link-button 
{
    padding-top:7px;
    height:18px;
}

.button-upcoming-courses 
{
    margin-right:1em;
}
.checkout-page .cancel-button {
    margin-right:1em;
}


/**************
 * Recaptcha  *
 **************/
#recaptcha_image 
{
    margin-top:1em;
    margin-bottom:1em;
}
#recaptcha-control img 
{
    border:1px solid #cccccc;
}
                
#recaptcha-control label 
{
    margin-bottom:0.5em;
    text-align:left;
    width:auto;
}
#recaptcha-control .field-input-container 
{
    display:block;
}
input#recaptcha_response_field
{
    width:292px;
    padding:4px;
}

/*************************
/ JQuery UI theme overrides
/************************/

.ui-autocomplete.ui-corner-all
{
     -moz-border-radius: 3px; 
     -webkit-border-radius: 3px; 
     border-radius: 3px; 
}

.ui-autocomplete a.ui-corner-all
{
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    cursor: pointer;
}

.ui-autocomplete.ui-widget-content
{ 
    background-image:none; 
    background-color:#ffffff; 
}

.ui-autocomplete
{
    text-align: left;
    font-size: 1em;
    font-family: Arial,sans-serif;
}

.ui-menu .ui-menu-item
{ 
    list-style:none; 
}

.ui-menu .ui-menu-item a
{
	display: block;
	padding: 2px .4em;
	line-height: 1.5;
    min-height: 0;
    font-weight: 400;
	text-decoration: none;
}

.ui-menu .ui-menu-item a.ui-state-focus
{
    border: 1px solid #999;
    background: #3875d7;
    font-weight: 400;
    color: #fff;
}

.ui-menu .ui-menu-header
{
    color: grey;
    list-style:none; 
}

.ui-menu .ui-menu-header span
{
    display: block;
    line-height: 1.5;
    padding: 0.2em 0.4em;
    text-decoration: none;
}


#section-nav .ls-view-all {
border: 1px solid #CCC;
border-width: 0 1px;
background-color: #EFEFEF;
}


/*****************************************
 * Search
 ****************************************/
#ls-search-form 
{
    background-color: #f8f8f8;
    border: 1px solid #E0E0E0;
    border-radius: 0.5em 0.5em 0.5em 0.5em;
    position:relative;
    box-shadow: 1px 1px 1px #EEEEEE;
}
        
#ls-search-form .ls-content
{
    overflow:hidden;
    position:relative;
}
    
#ls-search-form .ls-content-inner
{
    padding: 1.5em;
    padding-bottom:1em;
    position:relative;
    z-index:10;
}        
                
#ls-search-form .ls-controls 
{
    padding-bottom: 1em;
    padding-right: 1.5em;
    position: relative;
    text-align: right;
    z-index: 100;
}
        
#ls-search-form .ls-search-simple .ls-simple a,
#ls-search-form .ls-search-advanced .ls-advanced a
{
    font-weight:bold;
    color:#555555;
}
        
#ls-search-form select 
{
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:1em;
}      
        
#website-page-wrapper #ls-search-options 
{
    margin-top:0.5em;
    font-size:0.8em;
}
        
#website-page-wrapper #ls-advanced-search-options 
{
    font-size:0.8em;
    color: #555555;
    margin-top:1em;
    margin-left:1em;
    display:none;
}
        
#ls-search-form .ls-search-advanced #ls-advanced-search-options 
{
    display:block;
}


#ls-advanced-search-options .ls-field label
{
    width:12em;
    text-align:right;
    padding-right:1em;
}

#ls-search-form #ls-advanced-search-options .ls-pre-text
{
    text-shadow: 0 0 0 transparent, 0 1px 0 #FFFFFF;
    font-weight: bold;
    margin-bottom: 0.75em;
}
        
#ls-search-form #ls-search-text 
{
    display:block;
    border: 1px solid #CCCCCC;
    box-shadow: 0 1px 0 #EEEEEE inset, 0 1px 0 rgba(255, 255, 255, 0.2);
    color: #333333;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 1.3em;
    padding: 0.5em;
    border-radius: 0.3em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;            
    width:100%;
}
        
#website-page-wrapper #ls-search-response 
{
    margin-top:2em;
}
        
#ls-search-response em 
{
    font-weight:bold;
    font-style:normal;
}
        
#website-page-wrapper #ls-search-response .ls-search-error,
#website-page-wrapper #ls-search-response .ls-search-no-results
{
    padding:1em;
    background-color:#efefef;
    color:#333333;
    text-align:center;
}

#ls-search-response .ls-search-results-header {
    border-bottom: 1px solid #CCCCCC;
    font-size: 0.9em;
    margin-bottom: 1em;
    padding: 0.5em;
    text-align: right;
}

#ls-search-response .ls-results-window 
{
    color: #AAAAAA;
    display: inline;
}
        
#ls-search-response .ls-categories 
{
    margin-bottom:0.1em;
}
        
#ls-search-response .ls-categories,
#ls-search-response .ls-meta
{
    font-size:0.8em;
}
        
#ls-search-response .ls-category-branch a,
#ls-search-response .ls-meta .ls-value a        
{
    color:green;
}

#ls-search-response .ls-search-results li
{
    margin-bottom:2em;    
}
#ls-search-response .ls-title 
{
    font-size:1.2em;
    font-weight:normal;
    margin:0;
    padding:0;
    text-transform:none;
    margin-bottom:0.1em;
}
#ls-search-response .ls-schedule,
#ls-search-response .ls-locations 
{
    display: inline-block;
}
        
#ls-search-response .ls-meta 
{
    color:gray;
    margin-top:0.3em;
}
#ls-search-response .ls-meta-item 
{
    display:inline;
    margin-right:2em;
}
     
#website-page-wrapper .ls-form .ls-field 
{
    margin-bottom:0.5em;
}
        
#website-page-wrapper .ls-form .ls-field.ls-last
{
    margin-bottom:0;
}
        
#website-page-wrapper .ls-form .ls-field label 
{
    display:inline-block;
    vertical-align:top;
    *display:inline;
    *zoom:1;
}
        
#website-page-wrapper .ls-form .ls-field .ls-value 
{
    display:inline-block;
    vertical-align:top;
    *display:inline;
    *zoom:1;
}

#ls-search-response .ls-paging 
{
    border-top: 1px solid #CCCCCC;
    margin-bottom: 2em;
    padding-top: 1em;
}

#ls-search-response .ls-paging .ls-next 
{
    text-align:right;
}

#ls-search-response .ls-paging.ls-has-previous.ls-has-next .ls-next,
#ls-search-response .ls-paging.ls-has-previous.ls-has-next .ls-previous
{
    width:50%;
    display:inline-block;
    *display:inline;
    *zoom:1;    
}



/*****************************************
 * Find a course
 ****************************************/
.findacourse-page #content h3 
{
font-size: 1.3em;
}

.findacourse-page table.ls-standard-table th,.findacourse-page table.ls-standard-table td 
{
    font-size:1em;
    text-align: left;
    padding: 5px;
}

.findacourse-page table.ls-standard-table th {
    border-bottom: none;
    font-weight: 700;
}

/*****************************************
 * Modules
 ****************************************/
#website-page-wrapper .ls-module
{
    margin-bottom:1.5em;
}

#website-page-wrapper .ls-fill-width 
{
    width:100%;
}

#website-page-wrapper .ls-module-featured .ls-content
{
    border:1px solid #F8F8F8;
    padding:1em;
    padding-top:0.6em;
    padding-bottom:0.6em;
    background-color:#fafafa;
}

/* For modern browsers */
#website-page-wrapper .ls-module-featured .ls-content:before,
#website-page-wrapper .ls-module-featured .ls-content:after {
    content:"";
    display:table;
}

#website-page-wrapper .ls-module-featured .ls-content:after {
    clear:both;
}

/* For IE 6/7 (trigger hasLayout) */
#website-page-wrapper .ls-module-featured .ls-content {
    zoom:1;
}

#website-page-wrapper .ls-module-featured .ls-content h4 
{
    margin:0;
    margin-bottom:0.5em;
    font-weight:bold;
}

#website-page-wrapper .ls-module-featured .ls-summary 
{
    margin-bottom: 1em;
}

#website-page-wrapper .ls-module-featured .ls-summary p 
{
    margin-bottom: 1em;
}

#website-page-wrapper .ls-module-featured .ls-meta 
{
    float:left;
}

#website-page-wrapper .ls-module-featured .ls-moreinfo
{
    float:right;
}

#website-page-wrapper .ls-module-featured .ls-moreinfo a
{
    border: 1px solid #d0d0d0;
    display: block;
    padding: 0.3em 1em;
}

#website-page-wrapper .ls-clear-both
{
    clear:both;
}



#website-page-wrapper .ls-module-events-list table.ls-content,
#website-page-wrapper .ls-module-filling-fast table.ls-content
{
    table-layout:fixed;
    border:0;
}

#website-page-wrapper .ls-module-filling-fast .ls-name 
{
    text-overflow:ellipsis;
    overflow:hidden;
    white-space:nowrap;   
    width:43%;
}

#website-page-wrapper .ls-module-filling-fast .ls-presenter 
{
    text-overflow:ellipsis;
    overflow:hidden;
    white-space:nowrap;   
    width:24%;
}

#website-page-wrapper .ls-module-filling-fast .ls-date
{
    width:19%;
}

#website-page-wrapper .ls-module-filling-fast .ls-places-left
{
    padding-right:0.3em;
    text-align:right;
    width:14%;
}

#website-page-wrapper .ls-module-filling-fast td.ls-places-left {
    color:#aa0000;
    font-weight:bold;
}

#website-page-wrapper .ls-module-events-list .ls-name
{
    text-overflow:ellipsis;
    overflow:hidden;
    white-space:nowrap;   
    width:65%;
}

#website-page-wrapper table.ls-standard-table td
{
    border:0;
    border-bottom:1px solid #EDEDED; 
}

/*****************************************
 * Schedule page
 ****************************************/
.schedule-page .schedule-content .pager 
{
    text-align:center;
    margin-top:20px;
}

.schedule-page .schedule-content .pager .pager-link 
{
    margin-left:5px;
}

.schedule-page .schedule-content .pager .pager-link-next 
{
    margin-left:10px;
}

.schedule-page .schedule-content .pager .pager-link-previous 
{
    margin-right:10px;
}

.schedule-page .schedule-content .pager .pager-link-first,
.schedule-page .schedule-content .pager .pager-link-last
{
    display:none;
}

.schedule-page .empty .message 
{
    padding:1em;
}

.schedule-page .empty .return-link 
{
    margin-top:2em;
}
.schedule-page .filters {
    clear: both;
    float: left;
}
.ie7 .schedule-page .filters {
    float: none;
}
.schedule-page .filters .category,
.schedule-page .filters .location 
{
    display: inline-block;
    zoom: 1;
    *display: inline;
    margin-right: 1em;
}
.schedule-page .filters label 
{
    display: block;
}

.schedule-page .header-container {
    float:left;
}

.schedule-page .header-container,
.schedule-page .current-category-footer
{
    margin-top: 2em;
    clear:both;
}

.schedule-page .schedule-table,
.schedule-page .schedule-table td,
.schedule-page .schedule-table th
{
    border:0;
    font-size: 1em;
}


.schedule-page .schedule-content {
    clear:both;
}

.schedule-page .schedule-table th
{
    border-bottom: 1px solid #999;
    padding:0.5em;
    text-align: left;
}

.schedule-page .schedule-table td
{
    border-bottom: 1px solid #EDEDED;
    padding:0.5em;
}

.schedule-page .schedule-table td.course-schedule {
    border-left: 1px solid #EDEDED;
}

.schedule-page #content h3 
{
    font-size: 1.3em;
    margin-top: .65em;
}

.schedule-page td.course-name 
{
    width:255px;
}

.schedule-page td.course-name > a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 250px;
}


.schedule-page .course-duration 
{
    width:80px;
}

.schedule-page .course-price 
{
    width:100px;
}

.schedule-page .course-schedule 
{
    width:80px;
}

.schedule-page .schedule-table .course-duration, 
.schedule-page .schedule-table .course-price, 
.schedule-page .schedule-table .course-schedule {
font-size: 0.9em;
}


/*****************************************
 * A-Z page
 ****************************************/
.ls-az-list #content h3 
{
font-size: 1.3em;
}

.ls-az-list-page .ls-az-list-content .ls-event-list li
{
    border-bottom:1px solid #ededed;
    padding:0.4em;
}

.ls-az-list-page .ls-az-list-content .ls-letters
{
    overflow:hidden;
}

.ls-az-list-page .ls-az-list-content .ls-letter,
.ls-az-list-page .ls-az-list-content .ls-selected
{
    float:left;
    margin-right:0.3em;
    margin-top:0.3em;
    text-align:center;
    border:1px solid #d9d9d9;
    border-radius: 3px;
    width:100%;
    background-color:#f8f8f8;
}

.ls-az-list-page .ls-az-list-content .ls-letter
{
    cursor:pointer;
}

.ls-az-list-page .ls-letter a,
.ls-az-list-page .ls-selected a
{
    text-decoration:none;
    font-size: 1.1em;
}

.ls-az-list-page .ls-az-list-content .ls-selected,
.ls-az-list-page .ls-az-list-content .ls-selected a
{
    background-color:#bfbfbf;
    border-color:#bfbfbf;
    cursor:default;
}

.ls-az-list-page .ls-az-list-content .ls-selected a
{
    font-weight:bold;
    color:#FFF;
}

.ls-az-list-page .ls-az-list-content .ls-selected a:hover
{
    text-decoration:none;
}

.ls-az-list-page .ls-az-list-content .ls-small
{
    width:1.6em;
}

.ls-az-list-page .ls-az-list-content .ls-all
{
    width:3.0em;
}

.ls-az-list-page .ls-az-list-content .ls-other
{
    width:3.5em;
}

.ls-az-list-page .ls-az-list-content h3
{
    margin-top:1.2em;
}

.ls-az-list-page .ls-az-list-content .ls-heading
{
    margin-bottom:0.3em;
    color:#666;
}

.ls-az-list-page .ls-az-list-content .ls-empty-message
{
    margin-top:1.2em;
    color:#666;
}

.ls-az-list-page .ls-az-list-content .ls-event-list .ls-first
{
    border-top:1px solid #ededed;
}

/*****************************************
 * Social media
 ****************************************/
.ls-social-media-toolbox {
    margin-top: 1em;
}

.ls-social-media-toolbox  .ls-pretext {
    color: #666;
}

.ls-social-media-follow {
    margin-bottom: 1em;
}

.ls-social-media-toolbox .addthis_toolbox {
    display: inline-block;
    vertical-align: middle;
    *zoom: 1;
    *display: inline;
}

/*****************************************
 * Waiting list form
 ****************************************/
.ls-waiting-list-page .ls-waiting-list-details {
    background-color: #F1F1F1;
    border: 1px solid #D9D9D9;
    color:#333;
    margin-bottom: 2em;
    padding: 1em;
}

.ls-waiting-list-page .ls-waiting-list-details .ls-course-name {
    font-size:1.15em;
    font-weight:700;
}

.ls-waiting-list-page .submit-container {
    margin-top: 2em;
}

/*****************************************
 * Orders list
 ****************************************/

.my-orders-page .orders .orders-table td {
    padding:0.5em;
}





.activate-page .activate-control {
    margin-top: 2em;
}

.activate-page .activate-field {
   margin-bottom: 0.8em;
}

.activate-page .activate-field label {
  width: 150px;
  display: inline-block;
}

.activate-page .activate-field input {
   padding: 0.2em;
   border: 1px solid #aaaaaa;   
}

.activate-page .buttons {
   margin-top:2em
}