body, html {
    height: 100%;
}
body {
    margin: 0px auto;
    background: #3c4650;
    font-size: 16px;
    color: #3c4650;
    font-family: Arial;
    font-weight: 400;
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

h1,
h2 {
    font-size: 1.500em;
    font-weight: normal;
    margin: 0 30px;
    padding: 0;
    text-align: center;
}
h2 {
    color: #a8abae;
    font-size: 0.875em;
    padding: 10px 0 32px 0;
    -webkit-font-smoothing: antialiased;
}

#main-bg {
    height: 100%;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
#main-bg:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 50%;
    background: #5a636c;
    box-shadow: 0 0 4px rgba(0,0,0,.3);
    z-index: -2;
}
#main-bg:after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -5px 0 0 -5px;
    box-shadow: 0 0 400px 100px rgba(255,255,255,.55);
    z-index: -1;
}
#container {
    margin: auto;
    width: 680px;
    min-height: 200px;
}
#box {
    background: url('do-not-cross-line.png') top center repeat-x white;
    padding: 35px 0 0;
    position: relative;
    border: 1px #404b55 solid;
    border-radius: 5px;
    margin-bottom: 92px;
    box-shadow: 19px 0 10px -18px rgba(0,0,0,.5),
               -19px 0 10px -18px rgba(0,0,0,.5);
}
#date {
    background: #e6e6e6;
    border: #d5d5d5 1px solid;
    padding: 27px 15px 30px;
    border-left: 0;
    border-right: 0;
    text-align: center;
    min-height: 117px;
    margin-bottom: 45px;
}
#chart {
    display: inline-block;
}
#chart > div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
#chart > div > div {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 70px;
}
#numbers > div {
    font-weight: bold;
    color: #3c4650;
    font-size: 2.250em;
    text-shadow: 0 1px 0 white;
}
#labels > div {
    color: #777777;
    font-size: 0.813em;
}
#logo {
    margin: 25px auto;
    text-align: center;
}
#logo img {
    -webkit-filter: grayscale(100%) brightness(300%);
    filter: grayscale(100%) brightness(300%);
    opacity: .7;
}

#notice {
    padding: 10px 50px 0;
    font-size: 0.875em;
    display: inline-block;
    vertical-align: top;
    text-align: left;
    min-width: 390px;
    min-height: 31px;
    line-height: 1.5em;
}
body[dir=rtl] #notice {
    text-align: right;
}
#notice.error {
    color: #c53d4d;
}
#notice.notice {
    color: #339054;
}
#notice.warning {
    color: #b79514;
}
#notice ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

#subscribe {
    padding-bottom: 20px;
    text-align: center;
}
input {
    height: 34px;
    background: white;
    border: 1px #c9c9c9 solid;
    font-size: 0.938em;
    font-family: Arial;
    color: #3d3d3d;

    padding: 0 10px 2px;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    
    transition: border-color 0.3s ease;
    border-radius: 2px;
}
input[type=text]:hover,
input[type=text]:focus {
    border-color: #a6a6a6;
}
input[type=button] {
    background: #cfb31b;
    border: 0;
    cursor: pointer;
    padding: 0 15px 2px;
}
input[type=button]:hover {
    background: #dbbf25;
}
input[type=button]:active {
    transform: translateX(1px) translateY(-1px);
}
::-webkit-input-placeholder {
    color: #9b9b9b;
}
:-moz-placeholder {
    color: #9b9b9b;
}
::-moz-placeholder {
    color: #9b9b9b;
}
:-ms-input-placeholder {
    color: #9b9b9b;
}
*:focus {
    outline: none;
}

/*** MOBILE VIEW ***/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min--moz-device-pixel-ratio: 1.5),
only screen and (min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 144dpi) {
    #logo img {
        object-position: -99999px 99999px;
        background-position:  center center;
        background-repeat: no-repeat;
        background-size: 100% auto;
    }
}
