﻿
header {
    margin: 0 auto;
    text-align: center;
    background: #27c6ed;
    color: #fff;
    padding: 1em;
    font-size: 1em;
    text-align: left;
    margin: 0 auto;
}

    header .container {
        position: relative;
        max-width: 1200px;
        margin: 0 auto;
    }

.submitting {
    display: none;
}

.registration-container form {
    text-align: center;
}

    .registration-container form legend {
        font-weight: 700;
    }

    .registration-container form .btn.btn-primary {
        width: 320px;
    }


.registration-container .consentstatement {
    text-align: left;
}

    .registration-container .consentstatement label {
        background: #EE4853;
        display: block;
        padding: .5em 0;
        text-align: center;
    }


.registration-container input[type='text'],
.registration-container input[type='tel'],
.registration-container input[type='email'],
.registration-container select {
    width: 320px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 15px;
}

.registration-container .gender-control {
    display: flex;
    flex-direction: row;
    align-items: center;
    align-content: space-between;
    max-width: 320px;
    margin: 0 auto;
}

    .registration-container .gender-control label {
        width: 45%;
        background: #fff;
        color: #333;
        font-weight: normal;
        border-radius: 100px;
        font-size: 1rem;
        padding: 10px 0;
        margin: 0 10px;
        display: block !important;
    }

@media(max-width: 700px) {
    .registration-container .gender-control label {
        background: #27c6ed;
        color: #fff;
    }
}

.registration-container form .gender-control label input[type='radio'] {
    display: inline;
}

.registration-container .field-validation-error {
    color: red;
    font-weight: 700;
}

.registration-container .umbraco-forms-fieldset:not(:first-of-type) {
    display: none;
}

.registration-container .page-0 .umbraco-forms-navigation,
.registration-container .page-0 .umbraco-forms-field:not(:first-of-type):not(.titleanddescription) {
    display: none;
}

.registration-container .addresslookup {
    margin-top: .5em;
}

    .registration-container .addresslookup input.postcode-input {
        width: 200px;
        margin-right: 5px;
    }

    .registration-container .addresslookup .btn {
        vertical-align: top;
    }


.registration-container form input[type='radio'] {
    display: none;
}

#getaddress_error_message {
    color: white;
    font-weight: 700;
    background-color: red;
    padding: 10px;
}

footer {
    text-align: center;
}

    footer a {
        display: inline-block;
        margin: 0 20px;
        color: #333;
    }

.reward-status form {
    max-width: 320px;
    margin: 1em auto;
}

fieldset {
    border: none;
}

.reward-status h1 {
    padding: 0.5em 0;
}

.reward-status p {
    text-align: left;
}

.reward-status .summary {
    max-width: 500px;
    margin: 2em auto;
}

    .reward-status .summary p {
        font-size: 2em;
        padding: 0 1em;
    }

.reward-status .detailed {
    display: none;
    max-width: 1024px;
    margin: 0 auto;
}


.reward-status .summary ul.status-checks {
    flex-direction: column;
    align-content: space-between;
    margin: 0;
    padding: 0;
}

    .reward-status .summary ul.status-checks li {
        display: none;
        background: #27c6ed;
        max-width: 90%;
        text-align: left;
        line-height: 75px;
        border-radius: 100px;
        color: #fff;
        list-style: none;
        margin: 1em auto;
    }

        .reward-status .summary ul.status-checks li span {
            padding-left: 25px;
        }

        .reward-status .summary ul.status-checks li img {
            min-width: 50px;
            float: right;
            min-height: 50px;
            margin: 12px 20px;
        }


.reward-status .detailed h3 {
    background: #145ec7;
    color: #fff;
    padding: 1em;
}

.reward-status .detailed p,
.reward-status .detailed table {
    margin: .5em 1em;
}

    .reward-status .detailed table thead tr th {
        background: #b3d7e0;
        border-bottom: solid 1px #333;
        padding: 1em;
    }

    .reward-status .detailed table tr:nth-child(even) td {
        background-color: #eee;
    }

.reward-status .help-block {
    font-size: .8em;
    font-weight: 200;
}

.reward-status .btn.btn-primary {
    font-size: 1em;
    min-width: 0;
    text-decoration: none;
    text-align: center;
}

.reward-status table {
    border: solid 1px #333;
    padding: 0;
    width: 95%;
    font-size: .9em;
}


    .reward-status table td {
        margin: 0;
        padding: 1em;
    }

.reward-status small {
    text-align: justify;
    font-size: .8em;
}

.reward-status h3 {
    margin: 2em 0;
}


@media(max-width: 1025px) {
    .reward-status .detailed table {
        margin: .5em auto;
    }

    .reward-status .summary ul.status-checks li {
        line-height: 50px;
    }

        .reward-status .summary ul.status-checks li img {
            min-width: 25px;
            min-height: 25px;
        }

    .reward-status .summary p {
        font-size: 1.5em;
    }
}

@media(max-width: 767px) {
    .reward-status table .message,
    .reward-status table .lastupdated {
        display: none;
    }
}

footer {
    margin: 5em 0 0;
    padding: 2em;
    background: #b3d7e0;
}

.footer-statement {
    background: #b3d7e0;
    font-size: .8em;
    color: #666;
    padding: 2em;
    min-height: 200px;
}

    .footer-statement p {
        margin: 0;
    }

/* A progress circle */

.intro-content {
    padding-top: 1em;
}

.circle-wrap {
    margin: 50px auto;
    width: 150px;
    height: 150px;
    background: #e6e2e7;
    border-radius: 50%;
    font-size: .7em;
}

    .circle-wrap .circle .mask,
    .circle-wrap .circle .fill {
        width: 150px;
        height: 150px;
        position: absolute;
        border-radius: 50%;
    }

    .circle-wrap .circle .mask {
        clip: rect(0px, 150px, 150px, 75px);
    }

        .circle-wrap .circle .mask .fill {
            clip: rect(0px, 75px, 150px, 0px);
            background-color: #27c6ed;
        }

        .circle-wrap .circle .mask.full,
        .circle-wrap .circle .fill {
            animation: fill ease-in-out 3s;
            transform: rotate(180deg);
        }

@keyframes fill {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(180deg);
    }
}

.circle-wrap .inside-circle {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background: #fff;
    line-height: 130px;
    text-align: center;
    margin-top: 10px;
    margin-left: 10px;
    position: absolute;
    z-index: 100;
    font-weight: 700;
    font-size: 2em;
}

#getaddress_input-error {
    display: none !important;
}

/* End a progress circle */
@media(max-width: 700px) {
    #postcode-lookup {
        margin-top: 1.25em
    }

    .registration-container .addresslookup input.postcode-input {
        width: 120px;
    }
}

.reward-status-icon {
    position: fixed;
    top: 40%;
    right: 22%;
    width: 50px;
    background: #145ec7;
    height: 50px;
    text-align: center;
    border-radius: 100%;
    padding-top: 15px;
    box-shadow: 0 0 50px #145ec7;
    z-index: 100;
}

@media(max-width: 1440px) {
    .reward-status-icon {
        right: 5%;
    }
}

@media(max-width: 769px) {
    .reward-status-icon {
        width: 75px;
        height: 75px;
        box-shadow: 0 0 25px #145ec7;
        right: 5%;
        top: 8%;
    }

        .reward-status-icon img {
            max-width: 50%;
        }
}


@media(max-width: 500px) {
    .reward-status-icon {
        width: 50px;
        padding-top: 7px;
        height: 50px;
        right: 5%;
        top: 5%;
    }

        .reward-status-icon img {
            max-width: 50%;
        }
}
