html,
body {
   margin:0;
   padding:0;
   height:100%;
   width:100%;
}
.wrapper {
    min-height:100%;
    position:relative;
    top:0;
    left:0;
    padding-bottom:135px;
}
.wrapper:before {
	content:'';
    position:fixed;
    /* Set to percentage initially as IE8 fallback */
    width:100%;
    height:100%;
    /* Overwrite the values for modern browsers */
    width:100vw;
    height:100vh;
    top:0;
    left:0;
    background: #FF9900; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(#FF4020, #FF9900); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(#FF4020, #FF9900); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(#FF4020, #FF9900); /* For Firefox 3.6 to 15 */
    background: linear-gradient(#FF4020, #FF9900); /* Standard syntax */
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
    will-change: transform;
    z-index:-1;
}

.form-container {
    width:100%;
    max-width:420px;
    background-color:#FFF;
    margin:0 auto 60px;
    padding:15px;
    border:1px solid rgba(0, 0, 0, 0.05);
    border-radius:3px;
    position:relative;
}
.form-container.inside-logo {
    border-radius:0 0 3px 3px;
    border-top:none;
}
.form-container h3 {
    font-weight:700;
    margin-top:5px;
}
.event-logo {
    text-align:center;
    width:100%;
    max-width:420px;
    margin:15px auto 0 auto;
    padding:15px;
}
.event-logo.inside-logo {
    background-color:#FFF;
    border:1px solid rgba(0, 0, 0, 0.05);
    border-bottom:none;
    border-radius:3px 3px 0 0;
}
.event-logo img {
    width:280px;
    max-width:100%;
}

.center-content {
    width: 100%;
    text-align: center;
}

/* Masthead */
.masthead {
    border:1px solid rgba(0, 0, 0, 0.05);
    border-radius:3px 3px 0 0;
    margin:15px auto 0 auto;
    max-width:420px;
    padding:15px 15px 15px 15px;
    position:relative;
    width:100%;
}
.masthead.inside-logo {
    background-color:#FFF;
    border-bottom-width:0;
}
.masthead.outside-logo {
    background-color:transparent;
    border:none;
    border-radius:0;
}

.masthead-logo {
    margin:5px 0 0 0;
    max-width:100%;
    text-align:center;
    width:100%;
}

.masthead-logo img {
    max-width:200px;
    width:100%;
}
.strapline {
    color:#FF5252;
    margin:10px 0 20px 0;
}
hr {
    color:#fafafa;
    margin-bottom:15px;
}

/* Language Icons */
.language-icons {
    text-align:right;
    margin:0 0 0 0;
    vertical-align:middle;
}

.language-icon {
    background-size:cover;
    background-repeat:no-repeat;
    display:inline-block;
    height:20px;
    margin-right:5px;
    width:30px;
}

.language-icons a:last-of-type {
    margin-right:0;
}

.DE-icon {
    background-image:url('../img/languages/german.png');
}
.EN-icon {
    background-image:url('../img/languages/english_uk.png');
}
.ES-icon {
    background-image:url('../img/languages/spanish.png');
}
.IT-icon {
    background-image:url('../img/languages/italian.png');
}
.PT-icon {
    background-image:url('../img/languages/portuguese.png');
}
.BR-icon {
    background-image:url('../img/languages/brazilian.png');
}
.CA-icon {
    background-image:url('../img/languages/catalan.png');
    border-radius: 2px;
}

/* Forms */
.btn-primary {
    width:100%;
    border:none;
    border-radius:2px;
    background-color:#FF5252;
    padding:10px 5px;
    font-weight:700;
    font-size:16px;
    -webkit-transition:background-color 0.2s;
    -moz-transition:background-color 0.2s;
    -o-transition:background-color 0.2s;
    transition:background-color 0.2s;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:active:focus
{
    background-color:#EC2A2A;
    -webkit-transition:background-color 0.2s;
    -moz-transition:background-color 0.2s;
    -o-transition:background-color 0.2s;
    transition: background-color 0.2s;
}

.btn-primary.disabled,
.btn-primary.disabled:hover,
.btn-primary.disabled:active,
.btn-primary.disabled:focus,
.btn-primary.disabled:active:focus {
    background-color:#FFA0A0;
}

/* Footer */ 
footer {
    position:absolute;
    width:100%;
    bottom: 0;
    background-color:#FF5252;
    text-align:center;
    font-size:12px;
}
footer ul {
    color:#FFF;
    list-style-type:none;
    padding:0;
}
footer ul li {
    margin-bottom:5px;
    display:block;
}
footer ul li:last-of-type {
    margin-top:10px;
}
footer a,
footer a:link,
footer a:visited,
footer a:hover,
footer a:focus,
footer a:active {
    color:#FFF;
    text-decoration:underline;
}
footer a:hover {
    color:#FFF;
}
footer a:last-of-type {
    margin-bottom:0;
}

/* Modals */
.modal-dialog{
    overflow-y: initial !important
}
.modal-header .close {
    color:#2d2d2d;
}
.modal-body {
    height: 80vh;
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}
.modal-title {
    color:#FF5252;
}
.modal .btn-default {
    color:#FFF;
    background-color:#FF5252;
    border:none;
    -webkit-transition: background-color 0.2s;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    transition: background-color 0.2s;
}
.modal .btn-default:hover,
.modal .btn-default:active,
.modal .btn-default:focus {
    background-color:#FF5252;
    -webkit-transition: background-color 0.2s;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    transition: background-color 0.2s;
}

@media screen and (min-width: 767px) {
    /* Tablet Form Container */
    .wrapper {
        padding-bottom: 65px;
    }
    .masthead {
        margin-top:45px;
    }
    .form-container {
        margin-bottom: 50px;
    }

    .event-logo {
        margin-top: 75px;
    }

    /* Tablet Footer */
    footer {
        height: 38px;
        padding-top: 10px;
    }

    footer a:hover {
        color:#FFF;
    }

    footer ul {
        text-align: center;
    }

    footer ul li {
        display: inline-block;
        padding: 0 10px 0 10px;
        margin-bottom: 0;
    }

    footer ul li:last-of-type {
        float: left;
        position: absolute;
        left: 0;
        bottom: 10px;
    }
}
