﻿body {
    margin: 0px;
    padding: 0px;
    font-family: 'Century Gothic', 'Open Sans', Sans-Serif !important;
    font-style: normal;
    text-align: left;
}

.top-banner {
    background-color: #224272;
    padding-top: 50px;
    height: 20px;
    text-align: right;
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
}

nav {
    display: none;
    margin: 0;
    width: 100%;
    box-sizing: border-box;
    position: relative;
}

    nav ul {
        position: relative;
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    nav li {
        margin: 0;
        padding: 0;
        text-align: left;
    }

    nav a {
        display: block;
        margin: 0;
        padding: 0.75em 1em;
        color: white;
        text-decoration: none;
        font-size: 1em;
    }

    /* first level */
    nav > ul > li {
        border-bottom: 1px solid #fff;
        background-color: #224272;
    }

        nav > ul > li:hover, nav > ul > li:active {
            background-color: #4c70a6;
        }

        nav > ul > li:hover,
        nav > ul > li:active {
            background-color: #4f73a9;
        }

        nav > ul > li.selected {
            background-color: #405e91;
        }

        nav > ul > li:hover > a {
            background-color: #4f73a9;
            text-decoration: none;
        }

#mobile-nav-opener {
    position: absolute;
    left: 0px;
    top: 0px;
    background: url('mobile-nav-opener.svg') 17px 19px no-repeat;
    width: 60px;
    height: 50px;
    cursor: pointer;
    margin: 10px;
}

.main-banner-container, .main-body {
    background-position: top left;
    background-repeat: no-repeat;
    text-align: left;
}

.scroller {
    position: relative;
    z-index: 1;
    top: 70px;
    left: 0;
    right: 0;
}

.main-banner-container {
    background-color: #405e91;
    height: 248px;
    background-image: url('Images/left-banner-logo-top.png');
}

    .main-banner-container > .main-banner {
        height: 248px;
    }

        .main-banner-container > .main-banner > .title {
            color: white;
            font-size: 1.75em;
            text-align: left;
            padding-top: 20px;
            padding-right: 5%;
            padding-bottom: 15px;
            float: right;
            text-align: right;
            color: #8dacdd;
        }

            .main-banner-container > .main-banner > .title .strapline {
                font-size: 0.5em;
                color: white;
            }


.main-body {
    background-color: white;
    background-image: url('Images/left-banner-logo-bottom.png');
    padding-top: 40px;
    min-height: 300px;
}

main {
    width: 95%;
    padding-left: 2%;
    padding-right: 2%;
    margin: 0em;
    padding-bottom: 2em;
}

    main p {
        color: #777;
        line-height: 1.2em;
        font-size: 1.1em;
        margin-top: 0.5em;
        margin-bottom: 1em;
        padding-left: 1em;
    }

article {
    width: 96%;
    padding-left: 2%;
    padding-right: 2%;
    font-weight: 300;
    padding-bottom: 2em;
}

h1, h2, h3 {
    color: #375b91;
    font-size: 2em;
    font-weight: normal;
    margin: 0em;
}

h1 {
    color: #375b91 !important;
    height: 2em !important;
    font-size: 1.5em !important;
}

h2 {
    font-size: 1.1em;
    color: #666 !important;
    margin-top: 0.2em !important;
    margin-bottom: 0.1em !important;
    font-weight: bold !important;
    font-size: 1.5em !important;
}

img {
    margin-right: 1em;
}

article p {
    font-size: 0.8em !important;
    color: #333333;
    max-width: 1024px;
    margin-top: 0.3em;
    margin-bottom: 1em;
}

aside, section {
    width: 95%;
    padding-left: 2%;
    padding-right: 2%;
}

    aside table tr {
        font-size: 0.8em;
        color: #333333;
    }

    aside table td {
        vertical-align: top;
        padding-bottom: 2em;
        padding-right: 1%;
    }


label {
    padding-left: 10px;
}

/*footer styles -------------------------------------------------*/
.footer {
    background-color: #e2e8f7;
    clear: both;
    float: left;
    padding-top: 10px;
    padding-bottom: 5px;
    width: 100%;
}

    .footer .top, .footer .bottom {
        color: #2a4c7e;
        float: right;
        font-size: 30px;
        float: right;
        padding-right: 20px;
    }

    .footer .bottom {
        font-size: 14px !important;
        text-align: right;
        clear: right;
        padding-right: 20px;
    }

    .footer a {
        color: #338c91;
        text-decoration: none;
    }

        .footer a:hover {
            color: #333333;
        }


.bounding-box, .response-box {
    -moz-border-radius: 0.3em;
    border-radius: 0.3em;
    background-color: #EEEEEE;
    padding: 1em;
    margin-left: 5%;
    margin-bottom: 1%;
    width: 120px;
}

.response-box {
    width: 96%;
}

.infotable {
    background-color: white;
    border-collapse: separate;
    border-spacing: 0.75em;
}

    .infotable td {
        -moz-border-radius: 0.3em;
        border-radius: 0.3em;
        background-color: #a5c0ed;
        padding: 8px;
    }

        .infotable td.bcol1 {
            background-color: #c4e1c4;
        }

        .infotable td.bcol2 {
            background-color: #e5e0c5;
        }

        .infotable td.bcol3 {
            background-color: #e9cee9;
        }

.formtable {
    border-spacing: 0px;
    border-collapse: collapse;
}

    .formtable th {
        -moz-border-radius: 0.3em;
        border-radius: 0.3em;
        font-size: 1em;
        line-height: 1.75em;
        padding-left: 0.25em;
        background-color: #7798ce;
        color: white;
    }

    .formtable td {
        padding: 0.3em;
        color: #666666;
        vertical-align: top;
        font-size: 11px;
        text-align: right;
        padding-right: 25px;
    }

        .formtable td table {
            -moz-border-radius: 0.3em;
            border-radius: 0.3em;
            background-color: #a2d2d5;
            padding: 0.5em;
        }

            .formtable td table td {
                text-align: left;
                color: #333333;
            }

        .formtable td.btn {
            text-align: right;
        }

    .formtable .pad-top {
        padding-top: 2em;
    }

    .formtable td.label {
        font-size: 12px;
        min-width: 90px;
        text-align: left;
    }

    .formtable input[type="text"], .formtable select, .formtable textarea, .formtable .labelTextbox {
        -moz-border-radius: 0.3em;
        border-radius: 0.3em;
        border: 1px solid #8396d5;
        width: 140px;
        padding: 0.5em;
        font-weight: bold;
        font-size: 11px;
        color: Black;
    }

    .formtable input[type="submit"], .formtable input[type="button"] {
        -moz-border-radius: 0.3em;
        border-radius: 0.3em;
        background-color: #999999;
        color: #FFFFFF;
        min-width: 60px;
        padding: 0.5em;
        font-size: 1.2em;
        font-weight: bold;
        text-decoration: none;
        cursor: pointer;
        border-style: none;
        min-width: 100px;
        outline: 0;
    }

        .formtable input[type="submit"]:hover, .formtable input[type="button"]:hover {
            background-color: #666666;
        }


/*Form Valdation styles =================================================================*/
.invalid {
    background-image: url('Images/cross.gif');
    background-position: bottom right;
    background-repeat: no-repeat;
}

.invalid-input {
    outline: none;
    border-color: red !important;
    box-shadow: 0 0 5px red;
}

.valid {
    background-image: url('Images/tick.gif');
    background-position: bottom right;
    background-repeat: no-repeat;
}

.focussed {
    outline: none;
    border-color: green !important;
    box-shadow: 0 0 5px green;
}


/* landscape phone */
@media screen and (min-width:30em) {
    .main-banner-container > .main-banner > .title {
        font-size: 3em;
        padding-top: 0.6em;
        padding-right: 3%;
        padding-bottom: 15px;
        float: right;
        text-align: right;
        color: #8dacdd;
    }

        .main-banner-container > .main-banner > .title > .strapline {
            font-size: 0.5em;
            color: white;
        }

    .bounding-box {
        width: 180px;
    }

    .response-box {
        width: 480px;
    }

    .formtable td.label {
        min-width: 115px;
    }

    .formtable input[type="text"], .formtable select, .formtable textarea, .formtable .labelTextbox {
        width: 230px;
    }
}


/*iPad portrate */
@media screen and (min-width:48em) {

    .main-banner-container > .main-banner {
        background-image: url('Images/banner-right-ipad.png');
        background-repeat: no-repeat;
        background-position: right;
    }

        .main-banner-container > .main-banner > .title {
            font-size: 3.5em;
            float: right;
            padding-right: 5%;
            text-align: right;
            color: #8dacdd;
        }

            .main-banner-container > .main-banner > .title > .strapline {
                font-size: 0.75em;
                color: white;
            }

    main {
        width: 46%;
        float: left;
    }

    aside {
        float: left;
        width: 45%;
        padding-top: 2em;
    }

    .bounding-box {
        width: 180px;
    }

    .response-box {
        width: 500px;
    }

    .formtable td.label {
        min-width: 115px;
    }

    .formtable input[type="text"], .formtable select, .formtable textarea, .formtable .labelTextbox {
        width: 250px;
    }
}
/* web browser and iPad landscape */
@media screen and (min-width:64em) {

    body {
        margin: 0px;
        padding: 0px;
        font-family: 'Century Gothic', 'Open Sans', Sans-Serif !important;
    }

    .main-banner-container > .main-banner {
        background-image: url('Images/banner-right.png');
        background-repeat: no-repeat;
        background-position: right;
    }

        .main-banner-container > .main-banner > .title {
            font-size: 3.5em;
            padding-top: 0.6em;
            padding-right: 5%;
            padding-bottom: 0px;
            float: right;
            text-align: right;
            color: #8dacdd;
        }

            .main-banner-container > .main-banner > .title > .strapline {
                font-size: 0.75em;
                color: white;
            }

    main {
        width: 46%;
        float: left;
    }

    aside, section {
        float: left;
        width: 45%;
    }

    aside {
        padding-top: 2em;
    }

    #mobile-nav-opener {
        display: none;
    }

    nav {
        display: block;
        position: absolute;
        width: 50%;
        top: 25px;
        left: 10px;
    }

        /* first level */
        nav > ul > li {
            border: none;
            float: left;
        }

            nav > ul > li:hover, nav > ul > li:active {
                background-color: #224272;
            }

            nav > ul > li:hover,
            nav > ul > li:active {
                background-color: #4f73a9;
            }

            nav > ul > li.selected {
                background-color: #405e91;
            }

            nav > ul > li:hover > a {
                background-color: #4f73a9;
                text-decoration: none;
            }

    .bounding-box {
        width: 190px;
    }

    .response-box {
        width: 500px;
    }

    .formtable td.label {
        min-width: 120px;
    }

    .formtable input[type="text"], .formtable select, .formtable textarea, .formtable .labelTextbox {
        width: 250px;
    }
}
/*#captcha {
    height: 40px;
    width:300px;
    margin:0px;
    text-align:left;
}*/
