
@font-face {
  font-family: 'Comfortaa';
  font-weight: normal;
  src: url('comfortaa.ttf') format('truetype');
}
@font-face {
  font-family: 'Comfortaa';
  font-weight: bold;
  src: url('comfortaa-bold.ttf') format('truetype');
}
html {
    height: 100%;
}

body {
    height: 100%;
    background-color: #777e88;
    color: white;
    font-family: 'Comfortaa', sans-serif;
    line-height: 1.6em;
    font-size: 11px;
    overflow-x: hidden;
}

input[type=submit], a.button {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #993399), to(#662266));
    background: -webkit-linear-gradient(top, #993399 5%, #662266 100%);
    background: -o-linear-gradient(top, #993399 5%, #662266 100%);
    background: linear-gradient(to bottom, #993399 5%, #662266 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #ccd4dd), to(#777e88));
    background: -webkit-linear-gradient(top, #ccd4dd 5%, #777e88 100%);
    background: -o-linear-gradient(top, #ccd4dd 5%, #777e88 100%);
    background: linear-gradient(to bottom, #ccd4dd 5%, #777e88 100%);
    margin-top: 5px;
    border: hidden;
    border-radius: 6px;
    padding: 5px 20px;
    color: white;
    -webkit-box-shadow: 1px 2px 8px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 1px 2px 8px 0px rgba(0, 0, 0, 0.1);
}

input[type=submit]:hover, a.button:hover {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #aa44aa), to(#772277));
    background: -webkit-linear-gradient(top, #aa44aa 5%, #772277 100%);
    background: -o-linear-gradient(top, #aa44aa 5%, #772277 100%);
    background: linear-gradient(to bottom, #aa44aa 5%, #772277 100%);
    color: white;
}

a.button {
  display: inline-block;
    -webkit-box-shadow: 1px 2px 8px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 1px 2px 8px 0px rgba(0, 0, 0, 0.3);
    padding: 5px 14px 4px 14px;
    margin-top:1em;
}

input[type=submit]:active {
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translateY(2px);
    -ms-transform: translateY(2px);
    transform: translateY(2px);
}

input[type=submit]:focus {
    outline: none;
}


#main {
    overflow-x: hidden;
    position: relative;
}

a {
    color: #555c66;
    text-decoration: none;
    font-weight: bold;
}

a:hover, a.active {
    color: #993399;
}

article, footer {
    width: 90vw;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

footer a {
    color: white;
}

footer {
    text-align: center;
    padding-bottom: 15px;
}

article {
    border-radius: 2px;
    background: #ccd4dd;
    color: #777e88;
    margin-bottom: 10px;
    padding: 2vw;
}

section {
    background: white no-repeat;
    border-radius: 2px;
    padding: 2vw;
    padding-top: 32vw;
    margin-bottom: 2vw;
}

section:last-of-type {
    margin-bottom: 0;
}

section ul {
    padding-top: 5px;
    padding-left: 25px;
}

section li {
    line-height: 1.4em;
}

h1 {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 130%;
    font-weight: bold;
}

.hidden h1 {
    padding-top: 10px;
}

h2 {
    padding-top: 7px;
    font-weight: bold;
}

h3 {
    padding-top: 4px;
    font-weight: bold;
}

h1+h2 {
    padding-top: 0;
}

p {
    padding-top: 3px;
}

td {
    vertical-align: top;
}

td.space {
    padding-left: 7px;
}

.error {
    color: red;
}

@media screen and (min-width: 831px) {
    body {
        font-size: 10px;
    }
    article {
        font-size: 12px;
        padding: 12px;
    }
    section {
        line-height: 1.6em;
        min-height: 180px;
        padding: 15px 15px 18px 295px;
        margin-bottom: 10px;
    }
    section.right {
        background-position: right top;
        padding: 15px 295px 15px 15px;
    }
}

@media screen and (max-width: 830px) {
    section {
        background-size: 90vw 30vw;
    }
}