/**
 * The primary stylesheet for the Kindy Dance Time theme.
 *
 * @file
 */

* { margin: 0; padding: 0; border: 0; outline: 0; list-style: none; }

/* @group Layout */
    #wrapperinner { padding-bottom: 10px; }
    html, body, #wrapperinner, #wrapperouter { min-width: 955px; }
    #doc {
        width: 955px;
        margin: 0 auto;
        position: relative;
    }
    #hd, #bd, #ft { clear: both; }
    #slogan { float: left; width: 324px; }
    #hd h1 { display: block; float: left; padding: 4px 0 0 1px; }
    #con {
        width: 424px;
        float: right;
    }
    div#extra {
        width: 528px;
        float: left;
        position: relative;
    }
    #nav {
        width: 200px;
        position: relative;
        float: right;
        clear: left;
    }
    #sidebar {
        clear: both;
        width: 511px;
        padding-right: 20px;
    }
    #pic {
        float: left;
        margin: -69px 0 0 0;
    }
    #hd .badge-coming-soon { position: absolute; top: 60px; right: 40px;}

    #nav, #con {
        margin-top: 45px;
    }
    #con #breadcrumbs, #con #msg {
        padding-bottom: 1em;
    }
    #con #msg p {
        margin: 0;
    }
    #con .section {
        position: relative;
        margin-bottom: 20px;
    }

    /* Sufficient clearance at the bottom of the page */
    #ft { margin-top: 45px; }
    #con { margin-bottom: 55px; }

    .clear { display: block; clear: both; }
/* @end */

/* @group Colours */

    /* The Orange bit */
    #top-wrapper { background: #ef7c00; padding: 1px ; }

    /* The Purple bit */
    #wrapperouter {
            background: #5F67EE url(../images/bg-top.jpg) no-repeat;
            background-position: center top;
    }

    /* The blue bit */
    #wrapperinner {
            background: url(../images/bg-bottom.gif) no-repeat center bottom;
    }
    html, body { background: #1A7EEB; }

    body { color: white; }

    .links a { text-decoration: none; }
    .links a:link, .links a:visited { color: #C6CFE8; }
    .links a:hover, .links a:focus, .links a:active, .links a.active { color: #ffA94F; }
/* @end */


/* @group Typography */

    body { font-family: "Trebuchet MS", sans-serif; font-size: 12px; }

    #con h1 {
        margin-bottom: 10px;
    }

    #con h3 {
        margin: 1em 0 1ex 0;
    }
    #con .accordion h3 {
        margin: 1ex 0;
    }

    #ft { font-size: 10px; }
    #ft a, #ft a:link, #ft a:visited
    { color: inherit !important; color: white; text-decoration: none; }
    #ft a:hover, #ft a:focus, #ft a:active { text-decoration: underline; }
    #ft i a, #ft i a:link, #ft i a:hover, #ft i a:focus, #ft i a:active { text-decoration: none; font-style: normal;}

    #ft a i, #ft a strong { font-style: normal; font-weight: normal; }
    #ft a:hover i, #ft a:focus i { color: #FF8E14; }

    #ft img.logo { vertical-align: middle; padding-left: 1em; }


    #slogan, .primary-links li { font-family: Frederick, "Trebuchet MS", sans-serif;}

    #slogan { font-size: 38px; }
    ul.primary-links li { display: block; font-size: 20px; position: relative; line-height: 20px; margin-bottom: 7px; }


    .content h1 { color: #3b73b9; font-size: 26px; line-height: 28px; letter-spacing: -1; font-family: Frederick, "Trebuchet MS", sans-serif; font-weight: normal; }
    .content h2 { color: #3b73b9; }
    .content h3 { color: #3b73b9; }

    p, ul, ol { margin: 0 0 1em 0; line-height: 1.7; }

    ul,
    ul > li { list-style: disc; }
    ol,
    ol > li { list-style: decimal; }

    li ul, li ol {
        margin-left: 1.5em;
    }

    #con a:link { color: #223872; }
    #con a:visited, #con a:active { color: #c6cfe8 }
    #con a:hover, #con a:focus { font-style: italic; }
/* @end */

/* @group Staff articles */
    .staff {
        font-size: 92%;
    }
    .staff, .minimize, .accordion {
        border-bottom: #b6bbec 1px solid;
    }
    .staff h3, .faq h3, .accordion h3, .minimize h3 {
        font-size: 110%;
        line-height: 23px;
        height: auto !important; min-height: 23px; height: 23px;
    }
    .staff.jquery-opener .hd h3 {
        width: 400px;
        padding: 1px 5px;
    }
    .staff.jquery-opener-open {
        background: #8891e2;
    }
    .staff .bd {
        border-bottom: #b6bbec 1px solid;
    }
    .staff .staff-photo {
        display: block;
        width: 110px; min-height: 60px;
        margin: 0 10px 0 0;
        padding: 15px 0 0 0;
        float: left; clear: right;
    }
    .staff .body {
        display: block;
        width: 230px;
        float: left;
        clear: right;
    }
/* @end */
/* @group Accordions, etc. */
    .jquery-opener .hd,
    .accordion .hd {
        position: relative;
    }
    .jquery-accordion .jquery-accordion-button {
        position: absolute;
        top: 0; right: 0;
        padding: 0;
    }
    body .staff .jquery-accordion-button,
    body .faq .jquery-accordion-button,
    body#termdates .jquery-opener-button {
        margin: 8px 5px 0 5px;
        position: absolute; top: 0; right: 0;
    }
/* @end */


/* @group Page specific styles*/
    .faq h3 {
        color: #195299;
        font-weight: normal;
    }

    #termdates .exp h3 {
        margin: 2em 0 3ex 0;
        color: #132f7c;
        font-size: 100%;
    }
    #termdates .bd table {
        margin-bottom: 0;
    }
    #termdates .bd table td {
        padding: 1ex 0;
        vertical-align: top;
    }
    #termdates .bd table strong {
        color: #132f7c;
        padding-right: 3em;
    }

    p.directions {
        margin: 1em 0;
        padding: 0;
    }

    .locations .minimize .clickable {
        padding-bottom: 3px;
    }
    .locations .minimize .clickable h2 {
        width: 405px;
    }
    body#locations td.sdetails {
        padding-right: 1ex;
    }
    body#locations td.details {
        padding-right: 1ex;
        width: 9em;
    }


/* @end */


/* @group Testimonials */
.testimonial {
    background: #5e82e3;
    margin-bottom: 30px;
    font-size: 11px;
    /* padding: 10px; */
}
.testimonial .bd {
    padding: 10px 10px 0 10px;
}
.testimonial .meta {
    color: #223872;
    font-weight: bold;
    padding: 0 10px 10px 10px;
    position: relative;
}
.testimonial a.reload {
    display: block;
    width: 20px;
    height: 20px;
    text-indent: -9999px;
    position: absolute;
    top: 0px; right: 0px;
    background: url(../images/arrow.gif) no-repeat top left;
}
.testimonial.loading a.reload {
    background-image: url(../images/arrow-loading.gif);
}

.testimonial1 { width: 370px; margin-left: 70px; }
.testimonial2 { width: 285px; margin-left: 90px; }
.testimonial3 { width: 289px; margin-left: 120px; }
.testimonial4 { width: 285px; margin-left: 45px; }
.testimonial5 { width: 289px; margin-left: 75px; }
.testimonial6 { width: 285px; margin-left: 90px; }
.testimonial7 { width: 289px; margin-left: 120px; }
.testimonial8 { width: 285px; margin-left: 45px; }
.testimonial .testimonial { width: auto !important; margin: 0 !important; }
/* @end */


#findaclass { width: 165px; margin-bottom: 35px; }

#map.active { display: block; height: 357px; width: 357px; }
#map.active .bubble {
    color: #3b73b9;
}
.bubble .name, .adr .name { font-weight: bold; }

.classes { padding: 2em 0 0 0 ; }
.classes ul { padding: 1em 0 1em 2em; }
/* @end */

/* @group Tables */

    #con table {
        border-collapse: collapse;
        width: 100%;
        margin-bottom: 2em;
    }
    #con table thead {
        color: #3b73b9;
    }
    #con table thead {
        color: #233e85;
    }
    #con table tbody {
        border-top: 1px solid white;
        border-bottom: 1px solid white;
        padding: 1em 0;
    }
    #con table tbody tr {
        /* border-bottom: 1px solid #dde; /* */
    }

    #con table td, #con table th {
        padding: 1ex 2ex 1ex 0;
        text-align: left;
        vertical-align: top;
    }
    #con .classes table td.cmd {
        width: 26%;
    }

    #con .classes a:hover { font-style: normal; }

    #con table td:first-child {
        color: #233e85;
    }

    #con table .distance {
        text-align: right;
    }

    .highlight-rows .highlight-row {
        background-color: #6d74ed;
    }

    table .payment.amount.total {
        border-top: 3px double #555CDB;
    }
    #con table .payment.amount td {
        padding-right: 100px;
        text-align: right;
    }

/* @end */

.section .section-edit {
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1.8em;
}

/**
 * Hide stuff on screen
 */
#hd #slogan,
#hd h1
{ visibility: hidden; }

.access { display: none; }
@media aural {
    .access {
        display: block;
    }
}

.geo { display: none; }

body.home p, body.home ul, body.home ol {
    line-height: 1.5;
}

body #con table tbody {
    padding: 0;
    background-color: #6d74ed;
    border-color: #555CDB;
}
body #con table th:first-child,
body #con table td:first-child
{
    padding-left: 1em;
}
body #con form table thead tr.heading td,
body #con form table thead tr.heading th {
	padding-left: 0;
}
body #con form table thead tr.heading h3 {
	margin: 0;
}

body #con .form form table .form-field input {
    border-color: #AFB2F5;
}

.form-errors ul.errorlist,
.form-field .errorlist {
    margin: 0;
    float: none;
    color: #7E094B;
    font-style: italic;
}
table .form-field .errorlist {
    font-size: 0.9em;
    margin: 1ex 0 0 0;
}

.bd h1 .typo {
    background-position: -2px 0;
}
.typo {
    text-indent: -999em;
}

hr {
    border-bottom: 1px solid #233e85;
}

.stage.past { color: white; }
.stage.current { color: #233e85; }

.adr { color: #233e85; }
.adr .country-name { display: none; }


/** Account menu **/
#login p {
    margin: 0;
}
#login a {
    color: white;
}
#login.loggedin {
    margin-right: 100px;
    width: 300px;
}
#login.loggedin p, #login.loggedin a {
    float: left;
    line-height: 1.7;
}
#login.loggedin a {
    float: right;
}
#login .options { clear:both; font-size: 0.8em; line-height: 1.2em;}
#login .options ul, #login .options li {
    display: inline; list-style: none;
}
#login.loggedin a:link, #login.loggedin a:visited {
    color: white;
    text-transform: uppercase;
}
#login.loggedin .options a {
    display: block;
    width: 109px;
    float: left;
    padding: 15px 10px 24px 3px;
    margin: 2px 0 0 0;
    line-height: 13px;
    font-size: 13px;
    text-decoration: none;
    text-align: center;
}
#login.loggedin .options a:link,
#login.loggedin .options a:visited,
#login.loggedin .options a:active {
    background: url(../images/bg-button-large.png) no-repeat top left;
    color: white;
}
#login.loggedin .options a:focus,
#login.loggedin .options a:hover {
    background: url(../images/bg-button-large.png) no-repeat top right;
    color: white;
}

/** Account menu **/
#login p {
    margin: 0;
}
#login a {
    color: white;
}
#login.loggedin {
    margin-right: 100px;
    width: 300px;
}
#login.loggedin p, #login.loggedin a {
    float: left;
    line-height: 1.7;
}
#login.loggedin a {
    float: right;
}
#login .options { clear:both; font-size: 0.8em; line-height: 1.2em;}
#login .options ul, #login .options li {
    display: inline; list-style: none;
}
#login.loggedin a:link, #login.loggedin a:visited {
    color: white;
    text-transform: uppercase;
}
#login.loggedin .options a {
    display: block;
    width: 109px;
    float: left;
    padding: 15px 10px 24px 3px;
    margin: 2px 0 0 0;
    line-height: 13px;
    font-size: 13px;
    text-decoration: none;
    text-align: center;
}
#login.loggedin .options a:link,
#login.loggedin .options a:visited,
#login.loggedin .options a:active {
    background: url(../images/bg-button-large.png) no-repeat top left;
    color: white;
}
#login.loggedin .options a:focus,
#login.loggedin .options a:hover {
    background: url(../images/bg-button-large.png) no-repeat top right;
    color: white;
}

#fb {
    position: absolute;
    top: 14px;
    left: 326px;
    width: 50px;
    height: 30px;
    overflow: hidden;
}

