html, body {
    height: 100%;
}

body {
    min-width: 320px;
    margin: 0;
    font-family: 'Open Sans', Verdana, Geneva, sans-serif;
    background-color: #F4F9F2;
}

* {
    color: #262626;
}

a {
    text-decoration: none;
    color: #3c67dd;
}

.template {
    display: none;
}

.wrap {
    width: 500px;
    max-width: 100%;
    min-height: 100%;
    margin: 0 auto;
    background-color: #fff;
}

@media (min-width: 500px) {
    .wrap {
        box-sizing: border-box;
        border-left: 1px solid #808080;
        border-right: 1px solid #808080;
    }
}

header .title {
    display: block;
    height: 80px;
    line-height: 75px;
    background-color: #E5DDB6;
    text-align: center;
    font-size: 30px;
    color: white;
    text-shadow: 2px 2px 2px #282828;
}

header .subtitle {
    padding: 10px 10px 30px 10px;
}

main .domain {
    display: block;
    height: 50px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-top: -1px;
    line-height: 50px;
    text-align: center;
    color: inherit;
}

main .domain:hover {
    background-color: #eee;
}

nav {
    height: 60px;
    line-height: 60px;
    text-align: center
}

nav .side {
    display: block;
    float: right;
    width: 50%;
    color: inherit;
}

nav .side:hover {
    background-color: #eee;
}

.mailing {
    padding: 20px 0;
    border-top: 1px solid #ccc;
    text-align: center;
    background-color: #f2f8f3;
}

.mailing input {
    width: calc(100% - 30px);
    height: 50px;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 5px;
    font-size: 20px;
}

.mailing input[type='email'] {
    margin: 10px 0;
    border: 2px solid #afd5ba;
    background-color: #fcfdfc;
}

.mailing input[type='submit'] {
    padding: 10px;
    border: 0;
    cursor: pointer;
    background-color: #cb9a9a;
    color: #fdfcfc;
}

.purchased {
    padding: 10px;
    background-color: #808080;
    text-align: center;
    font-size: 12px;
    color: #f5f5f5;
}

footer {
    padding: 20px;
    text-align: center;
}
