* {
    margin: 0;
    padding: 0;
}

html, body {
    height: 100%;
}

body {
    background-color: #FFF;
    background: #0e1720 url('images/ggnwall.png') no-repeat top center fixed;
    background-size: cover;
    font-family: Roboto, Arial, Helvetica, sans-serif;
    font-size: 13px;
    color: #FFF;
}

table {
    margin: 0 auto 0 auto;
}

@font-face {
    font-family: 'Roboto';
    src: url(fonts/roboto-regular.ttf);
    src: url(fonts/roboto-regular.woff);
}

a {
    color: #CCC;
    text-decoration: none;
    transition: all 150ms ease-in;
}

a:hover {
    color: #69c077;
    text-decoration: underline;
}

#head, #foot {
    position: absolute;
    height: 6%;
    min-height: 25px;
    width: 100%;
    text-align: center;
}

#head {
    top: 160px;
}

#foot {
    bottom: 0;
    text-align: center;
}

#maincontent {
    width: 100%;
    height: 88%;
}

#logo {
    height: 60px;
    width: 244px;
    background-image: url('images/logo.png');
    background-repeat: no-repeat;
    background-position: top left;
    padding: 50px 0px 0px 0px;
}

.inputtext {
    margin-left: 5px;
    padding: 4px;
    width: 200px;
    font-family: "arial", "helvetica", "sans-serif";
    font-size: 1.2em;
    color: #1D1D1D;
    border: 2px solid rgba(29, 29, 29, 0.9);
    border-radius: 5px;
    transition: all 200ms ease-in;
}

.inputtext:hover, .inputtext:focus {
    border: 2px solid #A5D5EC;
    outline: none;
}

input[type="text"]:invalid, input[type="password"]:invalid {
    border-right: 2px solid red;
}

input.submit {
    padding: 3px;
    font-size: 1.2em;
    background: rgba(43, 78, 102, 0.7);
    border: solid thin #c6e6f6;
    color: white;
    border-radius: 2px;
    transition: all 250ms ease-in;
}

input.submit:hover {
    box-shadow: 3px 3px 3px black;
    background: rgb(43, 78, 102);
}

#submit_tr {
    height: 50px;
}

#extranotes {
    position: relative;
    top: -50px;
    left: 35px;
}

#extrafootnotes {
    position: relative;
    top: -50px;
    left: 35px;
}

.linkbox {
    display: inline-block;
    margin-bottom: 10px;
}

.hidden {
    display: none !important;
}

.info {
    color: green;
    font-weight: bold;
}

.warning {
    display: inline-block;
    padding: 5px 15px;
    margin: 2px auto;
    background-color: #EDC2DB;
    color: #C92020;
    font-weight: 700;
    border: 1px solid #C92020;
}

#tdwrap {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    padding: 30px 20px 15px 20px;
    position: relative;
    overflow: hidden;
    text-align: center;
    border: 1px solid rgba(198, 230, 246, 0.1);
    border-radius: 10px;
    box-shadow: 0px 0px 10px #000;
    background: #1c3145;
    background: rgba(28, 49, 69, 0.8);
    background: linear-gradient(to bottom, rgba(69, 106, 132, 0.9) 0%, rgba(43, 78, 102, 0.9) 2%, rgba(28, 49, 69, 0.9) 23%, rgba(28, 49, 69, 0.9) 73%, rgba(43, 78, 102, 0.9) 98%, rgba(69, 106, 132, 0.9) 100%);
}

#tdwrap #congrats a {
    display: inline;
}

#regform table {
    width: 250px;
    margin: 0 auto;
    position: relative;
    top: -25px;
}

#recaptcha_area {
    background-color: white;
    width: 333px;
    margin: 0 auto;
}

/* jquery.alerts css */
#popup_container {
    font-family: Arial, sans-serif;
    font-size: 12px;
    min-width: 300px; /* Dialog will be no smaller than this */
    max-width: 600px; /* Dialog will wrap after this width */
    background: #FFF;
    border: solid 5px #999;
    color: #000;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

#popup_title {
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    line-height: 1.75em;
    color: #666;
    background: #CCC url(images/title.gif) top repeat-x;
    border: solid 1px #FFF;
    border-bottom: solid 1px #999;
    cursor: default;
    padding: 0em;
    margin: 0em;
}

#popup_content {
    background: 16px 16px no-repeat url(images/info.gif);
    padding: 1em 1.75em;
    margin: 0em;
}

#popup_content.alert {
    background-image: url(images/info.gif);
}

#popup_content.confirm {
    background-image: url(images/important.gif);
}

#popup_content.prompt {
    background-image: url(images/help.gif);
}

#popup_message {
    padding-left: 48px;
}

#popup_panel {
    text-align: center;
    margin: 1em 0em 0em 1em;
}

#popup_prompt {
    margin: .5em 0em;
}

/**** Tablet and Mobile Backgrounds *****/
@media screen and (max-width: 1099px) and (min-width: 801px) {
    body {
        background: #0e1720 url('images/ggnwall-tablet.png') no-repeat top center fixed;
        background-size: cover;
    }
}

@media screen and (max-width: 800px) {
    body {
        background: #0e1720 url('images/ggnwall-mobile.jpg') no-repeat top center fixed;
        background-size: cover;
    }

    #tdwrap {
        max-width: 280px;
    }
}
