@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@200..900&display=swap');
html, body { margin: 0; padding: 0; height: 100%; background: white; font-size: 19px }
* { font-family: "Source Sans 3", sans-serif; }
p { margin: 0 0 1em 0; }
#container { max-width: 1024px; padding: 0.5cm 1cm; margin: auto; border-top: 10px solid #5455ff }
.section { background: white; padding: 1em 2em; }
#header { display: flex; }
#logo { height: 80px; margin-right: 1em }

h1, h2, h3, h4 { margin: 0; font-weight: normal }
h1 { font-size: 18pt; font-weight: bold }
h2 { font-size: 18pt; }

input[type=file] { cursor: pointer; }
input[type=text], input[type=email], input[type=number], textarea, select { font-size: 12pt; }
input[type=submit], a.button { background: #5455ff; color: white; font-size: 1rem; padding: 0.1cm 0.2cm; border-radius: 6px; border: solid 0.8px rgba(31, 35, 40, 0.15); cursor: pointer; }
a.button { text-decoration: none; display: inline-block }

a { color: #5455ff }
table { border-collapse: collapse }

h1 a { color: black; text-decoration: none }
h1 a:hover { text-decoration: underline }

.hidden, .hidden-submit { display: none !important }
.centered { margin: auto }

div.question details { background-color: whitesmoke; border-left: 0.4em solid #5455ff; margin: 0.5em 0; }
div.question summary { cursor: pointer; padding: 0.5em 1em; font-weight: 500; }
div.question summary::marker { font-size: 0.8em; }
div.question content { padding: 0.2em 1.4em 1px 1.4em; display: block; }

div.note { background-color: whitesmoke; border-left: 0.4em solid #5455ff; margin: 0.5em 0; padding: 0.5em 1em; }
div.note p { margin: 0.5em 0 0 0 }

#errors, .error { color: red }

@media screen and (max-width: 640px) {
    #container { padding: 0.5cm 0; }
}