/* Quick and scrappy build done just to get something up. Obviously needs a refactor, but it works! */
/* You can find me at bobbyadamson.com and email at bobby@bobbyadamson.com */
/* Thanks for checking it out */

@font-face {
    font-family: 'Harry-Potter';
    src:  url('fonts/Harry-Potter.ttf.woff') format('woff'),
    url('fonts/Harry-Potter.ttf.svg#Harry-Potter') format('svg'),
    url('fonts/Harry-Potter.ttf.eot'),
    url('fonts/Harry-Potter.eot?#iefix') format('embedded-opentype'); 
    font-weight: normal;
    font-style: normal;
}
body {
    background: url('images/bg-body.jpg') no-repeat top center;
    padding-bottom: 20px;
}
body, input {
    background-color: #000;
    color: #fff;
    font-family: 'Cinzel';
    font-size: 16px;
    text-align: center;
}
h1, label {
    font-weight: normal;
}
h1 {
    margin: 45px auto 10px;
    background: url('images/Title_3.png') no-repeat;
    background-size: cover;
    width: 438px;
    /*padding-bottom: 35.74%;*/
    /*position: relative;*/
    height: 81px;
    text-indent: -9999px;
    display: block;
}
body h1 + p {
    margin: 0 auto 20px;
    padding: 0 15px;
    color: #C3C3C3;
    max-width: 600px;
    display: block;
    font-size: 14px;
}
.question {
    position: relative;
    margin: 0 auto;
    display: inline-block;
    height: auto;
    overflow: hidden;
    font-size: 0;
    width: 100%;
    max-width: 600px;
    z-index: 10;
}
.question > * {
    font-size: 16px;
}
.inputContainer, button {
    border: 1px solid #2d6a7f;
    border-radius: 3px;
    padding: 10px;
}
.left {
    float: left;
    width: 100%;
    margin-right: -85px; /* The size of the fixed block. */
}
.right {
    float: left;
    width: 85px; /* The size of the fixed block. */
}
.inputContainer {
    margin-right: 100px;
    overflow: hidden;
    padding: 0;
}
input {
    font-family: 'Cinzel';
    text-align: left;
    background-color: rgba(0, 0, 0, .4);
    display: inline-block;
    width: 100%;
    border: none;
    padding: 10px;
}
input:focus ~ label, input:valid ~ label {
    opacity: 0;
}
label {
    position: absolute;
    left: 10px;
    top: 16px;
    -webkit-transition: opacity .3s ease;
    -o-transition: opacity .3s ease;
    transition: opacity .3s ease;
    font-family: 'Cinzel';
    font-size: 10px;
    color: #fff;
}
label:hover {
    cursor: pointer;
}
button {
    font-family: 'Cinzel';
    font-weight: bold;
    background-color: #2d6a7f;
    color: #fff;
    font-size: 16px;
    width: 85px;
    -webkit-transition: background-color .2s ease, border-color .2s ease;
    -o-transition: background-color .2s ease, border-color .2s ease;
    transition: background-color .2s ease, border-color .2s ease;
}
button:focus + label, button:active + label {
    opacity: 0;
}
button:hover {
    cursor: pointer;
    background-color: #3a839c;
    border-color: #3a839c;
}
.ball {
    width: 60%;
    position: relative;
    margin: 20px auto 0;
    left: -20px;
    font-size: 0;
    max-width: 400px;
}
.ball p {
    font-family: 'Cinzel';
    color: #3a839c;
    text-transform: none;
    font-size: 16px;
    padding: 13% 21% 0 19%;
    line-height: 1.2em;
}
.spacer {
    position: relative;
    padding-top: 100%;
}
.ball:before {
    content: '';
      display: inline-block;
      height: 100%;
      vertical-align: middle;
      margin-right: -0.25em;
}
.ball:after {
    content: '';
    width: 126%;
    height: 126%;
    background: url('images/Ring_175opt.png') no-repeat;
    background-size: cover;
    display: block;
    position: absolute;
    top: -12%;
    left: -12%;
    -webkit-animation: spin 110s;
    -o-animation: spin 110s;
    animation: spin 110s;
}
.circle {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border: 13px solid transparent;
    /*box-shadow: inset 0 0 100px rgba(0,0,0,1), 0 0 150px rgba(0,0,0,.9);*/
    border-radius: 100%;
    background: rgba(0,0,0,.8);
    overflow: hidden;
    background-image: url('images/gifs/Smoke.gif');
    background-size: cover;
}
.circle:before {
      content: '';
      display: inline-block;
      height: 100%;
      vertical-align: middle;
      /*margin-right: -2%;*/
     }
p {
    display: inline-block;
    vertical-align: middle;
    border-radius: 100%;
    font-size: 20px;
}

.social {
    position: absolute;
    right: 0;
    top: 262px;
    z-index: 11;
}

.social a {
    display: block;
    font-size: 0;
    width: 40px;
    height: 40px;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
    border-radius: 2px;
    background: blue;
    margin-bottom: 10px;
}
.social a:last-child {
    margin-bottom: 0;
}
.social a:after {
    display: inline-block;
    height: 100%;
    content: '';
    /*margin-right: -2.5px;*/
    vertical-align: middle;
}
.social .facebook {
    background: #3b5998;
    text-align: center
}
.social .facebook:before {
    content: '';
    background-image: url('images/icons/icon-facebook@2x.png');
    width: 10px;
    height: 20px;
    background-size: cover;
    display: inline-block;
    vertical-align: middle;
}
.social .twitter {
    background: #55acee;
}
.social .twitter:before {
    content: '';
    background-image: url('images/icons/icon-twitter@2x.png');
    width: 20px;
    height: 17px;
    background-size: cover;
    display: inline-block;
    vertical-align: middle;
}

.back {
    margin: 20px auto 0;
    color: #C3C3C3;
    /*text-decoration: none;*/
    display: block;
}

h2 {
    font-family: 'Cinzel';
    margin-bottom: 0;
}

h2 ~ p {
    text-transform: none;
    display: block;
    color: #C3C3C3;
    margin-top: 5px;
}

ul {
    list-style: none;
    text-align: left;
    max-width: 900px;
    display: inline-block;
    margin-top: 0;
    font-size: 0;
    padding-left:0;margin-left:0;
    text-align: center;
    width: 100%;
}

ul li {
    color: #fff;
    margin-top: 5px;
    display: inline-block;
    width: 100%;
    padding: 0 2%;
    max-width:200px;

}

ul li > * {
    width: 100%;
    display: block;
    font-size: 16px;
    margin: 0 auto 0px;
    color: #C3C3C3;
    text-align: center;
    -webkit-transition: color 1s;
    -o-transition: color 1s;
    transition: color 1s;
    text-decoration: none;
}

ul li p {
    font-size: 12px;
}

ul li img {
    margin-bottom: 10px;
}

ul li a:hover {
    color: #fff;
}

p.creditLink, li, p, h1 + p {
    font-size: 16px;
    color: #C3C3C3;
    font-family: 'Cinzel';
    text-transform: uppercase;
    margin-top: 60px;
    position: relative;
    z-index: 10;
}

.about h2 {
    margin: 0 auto 16px;
    color: #C3C3C3;
}
.about p {
    max-width: 500px;
    margin: 0 auto 13px;
}

.creditLink a {
    color: #C3C3C3;
}

h3 {
    font-weight: normal;
    font-size: 14px;
    width: 80px;
    margin-left: -20px;
}

@media screen and (min-width: 520px) {
    .social {
        left:50%;
        margin-left: 240px;
    }
    .social a {
        border-radius: 2px;
    }
    .ball p {
        font-size: 24px;
    }
}

@media screen and (min-width: 520px) {
    .about ul li {
        display: inline-block;
        width: 29%;
    }
    label {
        font-size: 16px;
        top: 12px;
    }
}

@media screen and (min-width: 768px) {
    h1 {
        font-size: 70px;
    }
    p {
        font-size: 40px;
    }
    h2 + p, h2 + p + p, h2 + p + p + p {
        font-size: 16px;
    }
    .ball p {
        /*font-size: 40px;*/
        padding: 25% 20% 0;
    }
}

@media screen and (min-width: 1000px) {
    body {
        background-size: 100%;
        background-position: center center;
    }
}

@keyframes spin {
    from {
        -ms-transform: rotate(0deg); /* IE 9 */
        -ms-transform-origin: center center; /* IE 9 */
        -webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
        -webkit-transform-origin: center center; /* Chrome, Safari, Opera */
        transform: rotate(0deg);
        transform-origin: center center;
    }
    to {
        -ms-transform: rotate(360deg); /* IE 9 */
        -ms-transform-origin: center center; /* IE 9 */
        -webkit-transform: rotate(360deg); /* Chrome, Safari, Opera */
        -webkit-transform-origin: center center; /* Chrome, Safari, Opera */
        transform: rotate(360deg);
        transform-origin: center center;
    }
}

.pulse {
    -webkit-animation: pulse 2s;
    -o-animation: pulse 2s;
    animation: pulse 2s;
}

@keyframes pulse {
    0% {
        opacity: 1;
    }
    20% {
        opacity: .3;
    }
    40% {
        opacity: 1;
    }
    60% {
        opacity: .4;
    }
    70% {
        opacity: .9;
    }
    80% {
        opacity: 0;
    }
    95% {
        opacity:0;
    }
    100% {
        opacity: 1;
    }
}
