body {
    font-family: Helvetica, sans-serif;
    font-size: 1em;
}

h1 {
    font-size: 1.9em;
    font-family: times, serif;
    color: #003262;
}

h2 {
    font-size: 1.0em;
}

h3 {
    font-size: 0.9em;
}

h3.error {
    color: #ff0000;
    font-weight: normal;
    line-height: 1.1em;
}

#username, #password {
    font-family: Helvetica, sans-serif;
    font-size: 1em;
    height: 18px;
    width: 100%;
}

.help {
    text-transform: uppercase;
    padding-left: .5em;
}

small {
    font-size: .6em;
}

.debuggingInfo {
    display: none;
    color: #fff;
    font-size: .6em;
    padding-top: 30px;
    text-align: center;
}

fieldset {
    background-color: #E7EBF2;
    padding-left: 10px;
    padding-right: 20px;
}

.forScreenReaders {
    display: none;
}

/** Sizing for the DUO iframe container and frame  **/
#duo_iframe, #duo_iframe>iframe {
    width: 100%;
    height: 330px;
    min-width: 304px; 
    max-width: 470px;
    border-style: none;
}


/** All devices that understands the @media directive **/
@media screen and (min-width: 320px) {

    body {
        background-color: #3B7EA1;
        color: #003262;
        font-family: Helvetica, sans-serif;
        margin: 0;
        -webkit-text-size-adjust: none;
    }
    .wrapper {
        background: #ffffff no-repeat;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        border-top: solid #003262;
    }

    #content {
        margin-left: 10px;
        margin-right: 20px;
    }

    p {
        padding: 0;
        margin: 0;
    }

    a, a:link {
        font-weight: bold;
    }

    /* Heading tags */
    h1 {
    }

    h2 {
        text-align: left;
        color: #c4820e;
        margin: 0;
        font-weight: normal;
    }

    /* Thanks to Nate and Wes at sourceforge.net */
    h3.error {
        color: #ff0000;
        font-size: .9em;
        font-weight: normal;
        margin: 10px 0 0 0;
        line-height: 1.3em;
    }

    h3 {

    }

    h3.calnet-help {
        font-size: 1.4em;
        color: #2D637F;
        text-transform: uppercase;
    }

    a, a:link, a:visited {
        color: #2D637F;
    }

    fieldset {
        background-color: transparent;
        text-align: left;
        margin: 0;
        padding: 0;
        border: 0;
    }

    /* Form fields */
    input, select {
        border: #ccc thin solid;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px;
    }

    /*noinspection CssOptimizeSimilarProperties*/
    input:focus, textarea:focus, a:focus, select:focus {
        outline-color: #2d637f;
        outline-width: thin;
    }

    input#username, input#password, select#surrogateTarget {
        width: 100%;
        font-size: 1.4em;
        padding: 2px;
    }

    input#username, input#password {
        height: 23px;
    }


    input#username:focus, input#password:focus  {
        background-color: #f9f3d1;
    }


    label {
        font-family: Helvetica, sans-serif;
        font-size: 1em;
    }


    form label {
        display: block;
        width: 80%;
        padding: 10px 0 3px 0;
        margin: 0 0 0 0;
        text-align: left;
    }
    form label[for=surrogate] {
        float: none;
        clear: both;
        display: inline;
        padding-left: 10px;
        font-size: 1em;
    }

    /*submit button styles */
    input.button, input.btn-submit {
        background-color: #c4820e;
        -webkit-appearance: none;
        border-radius: 4px;
        display: inline-block;
        color: #ffffff;
        font-size: 1em;
        letter-spacing: .05em;
        font-weight: normal;
        padding: 2px 10px;
        margin: 20px 10px 20px 0;
        text-transform: uppercase;
    }

    input.button:hover, input.btn-submit:hover {
        background-color: #3B7EA1
    }

    input.button:active {
        position: relative;
        top: 1px;
    }

    .help {
        font-size: 0.8em;
        text-transform: uppercase;
    }

    .help-copy p {
        line-height: 140%;
        padding-bottom: 10px;
    }

    .help-copy ul {
        padding: 0 0 20px;
        font-size: .9em;
    }

    .help-copy li {
        padding: 0 0 8px 0;
    }

    .copyright {
        text-align: left;
        padding: 15px 0;
        color: #003262;
    }

    .atcal-banner {
        height: 79px;
        background: url("../images/atcal-banner.gif") no-repeat;
        border: 1px solid #000;
    }

    #successBox p {
        padding-bottom: 1em;
    }

    .infoBox {
        font-size: 80%
    }

    .debuggingInfo {
        display: none;
        color: #444;
        font-size: .6em;
        padding-top: 20px;
        text-align: center;
    }

    /*css for showing title if styles are disabled */
    .hidden {
        display: none;
    }
}
/** Specific for smart phone  sized devices **/
@media screen and (min-width: 320px) and (max-width: 480px) {
    .externalSiginLink {
        display: block;
        clear: both;
        margin-bottom: 2rem;
    }

    .wrapper {
        background-image: url(../images/b-logo-480.png);
        width: 100%;
        padding-top: 120px;
        border-top-width: 16px;
        -webkit-box-shadow: 0 10px 10px rgba(185, 193, 203, 0.5);
        -moz-box-shadow: 0 10px 10px rgba(185, 193, 203, 0.5);
        box-shadow: 0 10px 10px rgba(185, 193, 203, 0.5);
    }

    #content {
        margin-left: 10px;
        margin-right: 20px;
    }


    h2 {
        font-size: 1.3em;
        padding-bottom: 5px;
    }

    small {
        font-size: 12px;
    }

    input.button {
        margin-top: 20px;
    }

    form label {
        font-size: .95em;
    }

    .help-copy ul {
        padding-left: 40px;
    }


    .help {
        padding: 26px 90px 0 10px;
    }
}
/** Specific for large sized devices **/
@media screen and (min-width: 481px) {

    .externalSiginLink {
        float: right;
        padding: 20px 0 0;
    }


    body {
        background: #3B7EA1 url('../images/tesselation-top-right.png') no-repeat fixed top right;
    }
    body > div.tesselation {
        position: fixed;
        z-index: -1000;
        width: 452px;
        height: 244px;
        bottom:0;
        left: 0;
        background:url('../images/tesselation-bottom-left.png') no-repeat;
    }

    .wrapper {
        background-image: url(../images/b-logo.png);
        width: 580px;
        border-top-width: 18px;
        padding-top: 140px;
        -moz-border-radius-bottomleft: 10px;
        -webkit-border-bottom-left-radius: 10px;
        border-bottom-left-radius: 10px;
        -moz-border-radius-bottomright: 10px;
        -webkit-border-bottom-right-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    #content {
        margin-left: 55px;
        margin-right: 55px;
    }

    p {
        line-height: 1.5em;
    }

    h2 {
        font-size: 1.9em;
        padding-top: 10px;
        padding-bottom: 10px;
    }


    input.button, input.btn-submit {
        margin-top: 20px;
    }

    form label {
        padding-top: 15px;
    }

    input#username, input#password, select#surrogateTarget {
        font-size: 1.2em;
    }

    /*help and input button */
    .help {
        padding: 20px 40px 0 10px;
    }

    .help-copy p {
        font-size: .9em;
    }

    .help-copy ul {
        padding-left: 65px;
    }

}
