﻿
@import url("General.css");


@media screen and (min-width: 800px) {

    /*#region LAYOUT */

    html, body {
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        background-color: #fff;
        font-family: OpenSans-SemiBold, sans-serif;
        position: relative;
    }

    .page-wrapper {
        display: block;
        position: relative;
        box-sizing: border-box;
        overflow: auto;
        width: 100%;
    }

        .page-wrapper > div {
            display: block;
            position: relative;
            box-sizing: border-box;
            padding: 1em;
            margin: 0 auto;
        }

    /*#region Header */

    .page-header .logo {
        display: block;
        position: relative;
        box-sizing: border-box;
        padding: 1em .5em;
        max-width: 300px;
        margin: 0 auto;
    }

        .page-header .logo a {
            text-decoration: none;
            outline: 0;
            text-align: center;
        }

        .page-header .logo img {
            width: 100%;
            height: auto;
        }

    /*#endregion */

    /*#region Portal Form */

    .portal-form {
        display: block;
        box-sizing: border-box;
        height: auto;
        overflow: hidden;
        text-align: left;
        vertical-align: middle;
    }

        .portal-form > div {
            margin-top: 2em;
        }

        .portal-form .ctrlbox {
            margin-bottom: 2em;
            display: block;
            overflow: visible;
            padding: 0;
        }

        .portal-form input[type=text], .portal-form input[type=email], .portal-form input[type=password] {
            display: inline-block;
            border: 0;
            border-bottom: 1px solid #444;
            width: 95%;
            outline: 0;
            background-color: transparent;
        }

        .portal-form .input-wrapper {
            display: block;
            box-sizing: border-box;
            color: #666;
        }

            .portal-form .input-wrapper > input {
                display: inline-block;
                margin-left: 1em;
                width: 85%;
            }

        .portal-form .marketing-wrapper label {
            background-image: none;
            background-color: transparent;
            color: #666;
            font-size: small;
            padding: .15em;
            margin: .25em 0em;
        }

        .portal-form .portal-form-submit-button {
            display: block;
            padding: .5em 1em;
            margin-top: 1.5em;
            border: 1px solid transparent;
            color: #fff;
            background-color: #be2438;
            width: 100%;
            outline: 0;
            cursor: pointer;
            text-align: center;
        }

        .portal-form .form-links {
            display: block;
            position: relative;
            overflow: hidden;
            text-align: center;
        }

            .portal-form .form-links a {
                display: block;
                text-decoration: none;
                font-size: 12pt;
                vertical-align: middle;
                padding: .5em 0em;
            }

        .portal-form .validation-summary {
            padding: 1em;
        }

        .portal-form .validation-summary-errors ul {
            padding: 0;
            margin: 0;
            font-size: .9em;
        }

            .portal-form .validation-summary-errors ul li {
                padding: .25em 0em;
                color: #be2438;
                font-weight: bold;
                text-align: center;
            }

        .portal-form .field-validation-error {
            display: block;
            font-size: .75em;
            color: #be2438;
            padding-top: .25em;
        }

    .portal-form-close {
        display: none;
    }

    /*#endregion */

    /*#region Tiny Form - a form with only a input and button */

    .tiny-form .input-wrapper {
        display: inline-block;
        position: relative;
        box-sizing: border-box;
        text-align: left;
        width: 300px;
        margin: .5em 0em;
        padding: 0;
        border: 1px solid silver;
    }

        .tiny-form .input-wrapper input[type=text],
        .tiny-form .input-wrapper input[type=email],
        .tiny-form .input-wrapper input[type=password] {
            display: inline-block;
            padding: .25em;
            outline: 0;
            border: 1px solid #fff;
            vertical-align: middle;
            width: 75%;
        }

        .tiny-form .input-wrapper > button {
            display: inline-block;
            padding: .27em .5em;
            text-align: center;
            background-color: #000;
            color: #fff;
            border: 1px solid #000;
            cursor: pointer;
            vertical-align: middle;
            max-width: 25%;
            float: right;
        }


    /*#endregion */

    .header-image {
        text-align: center;
        padding: .5em;
    }

        .header-image span {
            font-size: 60pt;
            color: #000;
        }

    .portal-wrapper {
        margin: 0 auto;
        width: 300px;
        padding: 1em .5em;
    }

    /*#endregion */

    /*#region  REGISTRATION WIDGET */

    #registration-widget {
        display: block;
        margin: 0 auto;
        box-sizing: border-box;
        overflow: hidden;
        max-width: 300px;
        min-width: 300px;
        padding: .5em;
        background-color: #fff;
        border: 1px solid transparent;
        border-radius: 5px;
    }

        #registration-widget > h1 {
            text-align: center;
        }

        #registration-widget .widget-links {
            display: block;
            text-align: center;
            margin-top: 1.5em;
        }

            #registration-widget .widget-links a {
                display: inline-block;
                text-decoration: none;
                outline: 0;
                font-size: 12pt;
            }

    /*#endregion */

    /*#region LOG IN WIDGET */

    #login-widget {
        display: block;
        margin: 0 auto;
        box-sizing: border-box;
        overflow: hidden;
        width: 300px;
        padding: .5em;
        background-color: #fff;
        border: 1px solid transparent;
        border-radius: 5px;
    }

    /*#endregion */

    /*#region REGISTRATION - Response Page */

    #registration-response h1 {
        padding: 0;
        margin: 0em;
        text-align: left;
    }

    #registration-response h3 {
        padding: 0;
        margin: 0em;
        text-align: left;
    }

    #registration-response p {
        font-family: OpenSans-Regular, sans-serif;
        margin: 0;
        padding: .25em 0em;
    }

    #registration-response a {
        text-decoration: none;
        outline: 0;
    }

    /* flex container*/

    #registration-response {
        display: flex;
        position: relative;
        flex-flow: row nowrap;
        justify-content: space-between;
        align-items: stretch;
        max-width: 1024px;
        margin: 0 auto;
        text-align: center;
        padding: 1em;
    }

        #registration-response > div:first-child {
            display: block;
            position: relative;
            box-sizing: border-box;
            flex: 0 1 auto;
        }

        #registration-response > .image-wrapper img {
            width: 100%;
            height: auto;
        }

        #registration-response > .content-wrapper {
            display: block;
            position: relative;
            box-sizing: border-box;
            padding: 1em;
            flex: 0 1 auto;
        }

            #registration-response > .content-wrapper .newsletter-wrapper {
                padding: 1em;
                margin: 1em 0;
            }

                #registration-response > .content-wrapper .newsletter-wrapper h3 {
                    text-align: left;
                }

                #registration-response > .content-wrapper .newsletter-wrapper p {
                    text-align: left;
                    font-size: 11pt;
                }

                #registration-response > .content-wrapper .newsletter-wrapper form {
                    display: block;
                    position: relative;
                    box-sizing: border-box;
                    padding: 1em 0em;
                    text-align: left;
                }

                    #registration-response > .content-wrapper .newsletter-wrapper form input[type=email] {
                        padding: .25em;
                        outline: 0;
                        width: 250px;
                        border: 1px solid silver;
                    }

                    #registration-response > .content-wrapper .newsletter-wrapper form .reg-small-button {
                        border: 0;
                        outline: 0;
                        background-color: #000;
                        color: #fff;
                        padding: .35em;
                        cursor: pointer;
                    }

            #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder > div:first-child {
                float: left;
                font-size: 25pt;
                padding: .25em;
            }

            #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder p {
                text-align: left;
                font-family: OpenSans-Regular, sans-serif;
                margin: 0;
                padding: .25em 0em;
                font-size: 11pt;
            }

                #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder p a {
                    text-align: left;
                    font-family: OpenSans-Regular, sans-serif;
                    margin: 0;
                    padding: .25em 0em;
                    font-size: 11pt;
                    color: #0078d7;
                }

                    #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder p a:hover {
                        text-align: left;
                        font-family: OpenSans-Regular, sans-serif;
                        margin: 0;
                        padding: .25em 0em;
                        font-size: 11pt;
                        color: #a6111f;
                    }

            #registration-response > .content-wrapper .cs-wrapper {
                margin: 2em 0em;
            }

                #registration-response > .content-wrapper .cs-wrapper p {
                    text-align: center;
                    font-family: OpenSans-Regular, sans-serif;
                    margin: 0;
                    padding: .25em 0em;
                    font-size: 11pt;
                }

                    #registration-response > .content-wrapper .cs-wrapper p a {
                        font-family: OpenSans-Regular, sans-serif;
                        margin: 0;
                        padding: .25em 0em;
                        font-size: 11pt;
                        color: #0078d7;
                    }

                        #registration-response > .content-wrapper .cs-wrapper p a:hover {
                            font-family: OpenSans-Regular, sans-serif;
                            margin: 0;
                            padding: .25em 0em;
                            font-size: 11pt;
                            color: #a6111f;
                        }

        #registration-response #reg-error-reason {
            font-family: OpenSans-SemiBold, sans-serif;
            font-style: italic;
            color: #a6111f;
            margin: 1em 0em;
        }

    /*#endregion */

    /*#region VERIFICATION */

    #verification-response {
        display: block;
        position: relative;
        box-sizing: border-box;
        max-width: 500px;
        margin: 0 auto;
        padding: 1em;
    }

        #verification-response > .content-wrapper h1 {
            text-align: center;
        }

        #verification-response > .content-wrapper h3 {
            text-align: center;
        }

        #verification-response > .content-wrapper > p {
            text-align: center;
            font-family: OpenSans-Regular, sans-serif;
            font-size: 12pt;
        }

            #verification-response > .content-wrapper > p > a {
                display: inline-block;
                text-decoration: none;
                outline: 0;
                padding: 1em;
                border: 1px solid transparent;
                border-radius: 10px;
                font-family: OpenSans-SemiBold;
                font-size: 14pt;
            }

                #verification-response > .content-wrapper > p > a:hover {
                    color: #fff;
                }

        #verification-response > .content-wrapper > .cs-wrapper p {
            font-family: OpenSans-Regular, sans-serif;
            font-size: 12pt;
            text-align: center;
        }

            #verification-response > .content-wrapper > .cs-wrapper p > a {
                font-family: OpenSans-SemiBold, sans-serif;
                font-size: 11pt;
                text-decoration: none;
                text-align: center;
                outline: 0;
                color: #0078d7;
            }

                #verification-response > .content-wrapper > .cs-wrapper p > a:hover {
                    font-family: OpenSans-SemiBold, sans-serif;
                    font-size: 11pt;
                    text-decoration: none;
                    text-align: center;
                    outline: 0;
                    color: #0078d7;
                }

    /*#endregion */

    /*#region RECOVER PASSWORD */

    .recover-password-header h1 {
        text-align: left;
        padding-bottom: .5em;
    }

    .recover-password-header p {
        font-family: OpenSans-Light, sans-serif;
        padding: .25em 0;
        margin: 0;
        text-align: left;
        font-size: 11pt;
    }

    #recovery-container a {
        text-decoration: none;
    }

    .recovery-email-response-header h1 {
        text-align: center;
    }

    #home-link-button {
        text-decoration: none;
        outline: 0;
        text-align: center;
    }

    /*#endregion */

    /*#region  RESET PASSWORD */

    #reset-container {
        display: block;
        overflow: hidden;
        margin: 0 auto;
        max-width: 500px;
        min-width: 300px;
        text-align: center;
        padding: 2em .5em;
        background-color: #fff;
        border: 1px solid transparent;
        border-radius: 5px;
    }

        #reset-container > form {
            margin: 0 auto;
            width: 300px;
        }

        #reset-container .reset-pass-error {
            color: #be2438;
        }

        #reset-container .image-wrapper {
            max-width: 150px;
            margin: 0 auto;
        }

            #reset-container .image-wrapper > img {
                width: 100%;
                height: auto;
            }

    /*#endregion */

}

@media screen and (max-width: 799px) {

    /*#region LAYOUT */

    html, body {
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        background-color: #fff;
        font-family: OpenSans-SemiBold, sans-serif;
        position: relative;
    }

    .page-wrapper {
        display: block;
        position: relative;
        box-sizing: border-box;
        overflow: auto;
        width: 100%;
    }

        .page-wrapper > div {
            display: block;
            position: relative;
            box-sizing: border-box;
            margin: 0 auto;
        }

    /*#region Header */

    .page-header .logo {
        display: block;
        position: relative;
        box-sizing: border-box;
        padding: 1em .5em;
        max-width: 300px;
        margin: 0 auto;
    }

        .page-header .logo a {
            text-decoration: none;
            outline: 0;
            text-align: center;
        }

        .page-header .logo img {
            width: 100%;
            height: auto;
        }

    /*#endregion */

    /*#region Portal Form */

    .portal-form {
        display: block;
        box-sizing: border-box;
        height: auto;
        overflow: hidden;
        text-align: left;
        vertical-align: middle;
    }

        .portal-form > div {
            margin-top: 2em;
        }

        .portal-form .ctrlbox {
            margin-bottom: 2em;
            display: block;
            overflow: visible;
            padding: 0;
        }

        .portal-form input[type=text], .portal-form input[type=email], .portal-form input[type=password] {
            display: inline-block;
            border: 0;
            border-bottom: 1px solid #444;
            width: 95%;
            outline: 0;
            background-color: transparent;
        }

        .portal-form .input-wrapper {
            display: block;
            box-sizing: border-box;
            color: #666;
        }

            .portal-form .input-wrapper > input {
                display: inline-block;
                margin-left: 1em;
                width: 85%;
            }

        .portal-form .marketing-wrapper label {
            background-image: none;
            background-color: transparent;
            color: #666;
            font-size: small;
            padding: .15em;
            margin: .25em 0em;
        }

        .portal-form .portal-form-submit-button {
            display: block;
            padding: .5em 1em;
            margin-top: 1.5em;
            border: 1px solid transparent;
            color: #fff;
            background-color: #be2438;
            width: 100%;
            outline: 0;
            cursor: pointer;
            text-align: center;
        }

        .portal-form .form-links {
            display: block;
            position: relative;
            overflow: hidden;
            text-align: center;
        }

            .portal-form .form-links a {
                display: block;
                text-decoration: none;
                font-size: 12pt;
                vertical-align: middle;
                padding: .5em 0em;
            }

        .portal-form .validation-summary {
            padding: 1em;
        }

        .portal-form .validation-summary-errors ul {
            padding: 0;
            margin: 0;
            font-size: .9em;
        }

            .portal-form .validation-summary-errors ul li {
                padding: .25em 0em;
                color: #be2438;
                font-weight: bold;
                text-align: center;
            }

        .portal-form .field-validation-error {
            display: block;
            font-size: .75em;
            color: #be2438;
            padding-top: .25em;
        }

    .portal-form-close {
        display: none;
    }

    /*#endregion */

    /*#region Tiny Form - a form with only a input and button */

    .tiny-form .input-wrapper {
        display: inline-block;
        position: relative;
        box-sizing: border-box;
        text-align: left;
        width: 275px;
        margin: .5em 0em;
        padding: 0;
        border: 1px solid silver;
    }

        .tiny-form .input-wrapper input[type=text],
        .tiny-form .input-wrapper input[type=email],
        .tiny-form .input-wrapper input[type=password] {
            display: inline-block;
            padding: .25em;
            outline: 0;
            border: 1px solid #fff;
            vertical-align: middle;
            width: 65%;
        }

        .tiny-form .input-wrapper > button {
            display: inline-block;
            padding: .27em .5em;
            text-align: center;
            background-color: #000;
            color: #fff;
            border: 1px solid #000;
            cursor: pointer;
            vertical-align: middle;
            max-width: 25%;
            float: right;
        }


    /*#endregion */

    .header-image {
        text-align: center;
        padding: .5em;
    }

        .header-image span {
            font-size: 60pt;
            color: #000;
        }

    .portal-wrapper {
        display:block;
        position:relative;
        box-sizing:border-box;
        margin: 0 auto;
        width:100%;
        padding:1em;

    }

    /*#endregion */

    /*#region  REGISTRATION WIDGET */

    #registration-widget {
        display: block;
        margin: 0 auto;
        box-sizing: border-box;
        overflow: hidden;
        max-width: 300px;
        min-width: 300px;
        padding: .5em;
        background-color: #fff;
        border: 1px solid transparent;
        border-radius: 5px;
    }

        #registration-widget > h1 {
            text-align: center;
        }

        #registration-widget .widget-links {
            display: block;
            text-align: center;
            margin-top: 1.5em;
        }

            #registration-widget .widget-links a {
                display: inline-block;
                text-decoration: none;
                outline: 0;
                font-size: 12pt;
            }

    /*#endregion */

    /*#region LOG IN WIDGET */

    #login-widget {
        display: block;
        margin: 0 auto;
        box-sizing: border-box;
        overflow: hidden;
        width: 300px;
        padding: .5em;
        background-color: #fff;
        border: 1px solid transparent;
        border-radius: 5px;
    }

    /*#endregion */

    /*#region REGISTRATION - Response Page */

    #registration-response h1 {
        padding: 0;
        margin: 0em;
        text-align: left;
        font-size:large;
    }

    #registration-response h3 {
        padding: 0;
        margin: 0em;
        text-align: left;
        font-size:medium;
    }

    #registration-response p {
        font-family: OpenSans-Regular, sans-serif;
        margin: 0;
        padding: .25em 0em;
    }

    #registration-response a {
        text-decoration: none;
        outline: 0;
    }

    /* flex container*/

    #registration-response {
        display: flex;
        position: relative;
        flex-flow: row nowrap;
        justify-content: space-between;
        align-items: stretch;
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }

        #registration-response > div:first-child {
            display: none;
            position: relative;
            box-sizing: border-box;
            flex: 0 1 auto;
        }

        #registration-response > .image-wrapper img {
            width: 100%;
            height: auto;
        }

        #registration-response > .content-wrapper {
            display: block;
            position: relative;
            box-sizing: border-box;
            padding: 1em;
            flex: 1 1 100%;
            width:100%;
        }

            #registration-response > .content-wrapper .newsletter-wrapper {
                padding: 1em;
                margin: 1em 0;
            }

                #registration-response > .content-wrapper .newsletter-wrapper h3 {
                    text-align: left;
                }

                #registration-response > .content-wrapper .newsletter-wrapper p {
                    text-align: left;
                    font-size: 11pt;
                }

                #registration-response > .content-wrapper .newsletter-wrapper form {
                    display: block;
                    position: relative;
                    box-sizing: border-box;
                    padding: 1em 0em;
                    text-align: left;
                }

                    #registration-response > .content-wrapper .newsletter-wrapper form input[type=email] {
                        display:inline-block;
                        padding: .25em;
                        outline: 0;
                        width: 180px;
                        border: 1px solid silver;
                    }

                    #registration-response > .content-wrapper .newsletter-wrapper form .reg-small-button {
                        border: 0;
                        outline: 0;
                        background-color: #000;
                        color: #fff;
                        text-align:center;
                        padding: .35em;
                        cursor: pointer;
                    }

            #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder > div:first-child {
                float: left;
                font-size: 25pt;
                padding: .25em;
            }

            #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder p {
                text-align: left;
                font-family: OpenSans-Regular, sans-serif;
                margin: 0;
                padding: .25em 0em;
                font-size: 11pt;
            }

                #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder p a {
                    text-align: left;
                    font-family: OpenSans-Regular, sans-serif;
                    margin: 0;
                    padding: .25em 0em;
                    font-size: 11pt;
                    color: #0078d7;
                }

                    #registration-response > .content-wrapper .marketing-wrapper .marketing-reminder p a:hover {
                        text-align: left;
                        font-family: OpenSans-Regular, sans-serif;
                        margin: 0;
                        padding: .25em 0em;
                        font-size: 11pt;
                        color: #a6111f;
                    }

            #registration-response > .content-wrapper .cs-wrapper {
                margin: 2em 0em;
            }

                #registration-response > .content-wrapper .cs-wrapper p {
                    text-align: center;
                    font-family: OpenSans-Regular, sans-serif;
                    margin: 0;
                    padding: .25em 0em;
                    font-size: 11pt;
                }

                    #registration-response > .content-wrapper .cs-wrapper p a {
                        font-family: OpenSans-Regular, sans-serif;
                        margin: 0;
                        padding: .25em 0em;
                        font-size: 11pt;
                        color: #0078d7;
                    }

                        #registration-response > .content-wrapper .cs-wrapper p a:hover {
                            font-family: OpenSans-Regular, sans-serif;
                            margin: 0;
                            padding: .25em 0em;
                            font-size: 11pt;
                            color: #a6111f;
                        }

        #registration-response #reg-error-reason {
            font-family: OpenSans-SemiBold, sans-serif;
            font-style: italic;
            color: #a6111f;
            margin: 1em 0em;
        }

    /*#endregion */

    /*#region VERIFICATION */

    #verification-response {
        display: block;
        position: relative;
        box-sizing: border-box;
        max-width: 500px;
        margin: 0 auto;
        padding: 1em;
    }

        #verification-response > .content-wrapper h1 {
            text-align: center;
        }

        #verification-response > .content-wrapper h3 {
            text-align: center;
        }

        #verification-response > .content-wrapper > p {
            text-align: center;
            font-family: OpenSans-Regular, sans-serif;
            font-size: 12pt;
        }

            #verification-response > .content-wrapper > p > a {
                display: inline-block;
                text-decoration: none;
                outline: 0;
                padding: 1em;
                border: 1px solid transparent;
                border-radius: 10px;
                font-family: OpenSans-SemiBold;
                font-size: 14pt;
            }

                #verification-response > .content-wrapper > p > a:hover {
                    color: #fff;
                }

        #verification-response > .content-wrapper > .cs-wrapper p {
            font-family: OpenSans-Regular, sans-serif;
            font-size: 12pt;
            text-align: center;
        }

            #verification-response > .content-wrapper > .cs-wrapper p > a {
                font-family: OpenSans-SemiBold, sans-serif;
                font-size: 11pt;
                text-decoration: none;
                text-align: center;
                outline: 0;
                color: #0078d7;
            }

                #verification-response > .content-wrapper > .cs-wrapper p > a:hover {
                    font-family: OpenSans-SemiBold, sans-serif;
                    font-size: 11pt;
                    text-decoration: none;
                    text-align: center;
                    outline: 0;
                    color: #0078d7;
                }

    /*#endregion */

    /*#region RECOVER PASSWORD */

    .recover-password-header h1 {
        font-size:18pt;
        text-align: center;
        padding-bottom: .5em;
    }

    .recover-password-header p {
        font-family: OpenSans-Light, sans-serif;
        padding: .25em 0;
        margin: 0;
        text-align: left;
        font-size: 11pt;
    }

    #recovery-container a {
        text-decoration: none;
    }

    .recovery-email-response-header h1 {
        font-size:18pt;
        text-align: center;
    }

    #home-link-button {
        text-decoration: none;
        outline: 0;
        text-align: center;
    }

    /*#endregion */

    /*#region  RESET PASSWORD */

    #reset-container {
        display: block;
        overflow: hidden;
        margin: 0 auto;
        max-width: 500px;
        min-width: 300px;
        text-align: center;
        padding: 2em .5em;
        background-color: #fff;
        border: 1px solid transparent;
        border-radius: 5px;
    }

        #reset-container > form {
            margin: 0 auto;
            width: 300px;
        }

        #reset-container .reset-pass-error {
            color: #be2438;
        }

        #reset-container .image-wrapper {
            max-width: 150px;
            margin: 0 auto;
        }

            #reset-container .image-wrapper > img {
                width: 100%;
                height: auto;
            }

    /*#endregion */



}