body * {
    box-sizing: border-box;
    font-family: 'Roboto', sans-serif;
}
.form {
    width: 50%;
    min-width: 300px;
    max-width: 700px;
    background-color: white;
    box-shadow: 0 0 10px 0 #c3c3c3;
    padding: 3em;
    margin: 30px auto;
}

.form p {
    display: block;
    width: 100%;
    position: relative;
}

.form p label {
    display: block;
    position: absolute;
    color: #222222;
    opacity: .8;
    pointer-events: none;

    font-size: .7em;
    top: 5px;
    left: 10px;
}

.form p input {
    display: block;
    width: 100%;
    outline: none;
    font-size: 1.3em;
    padding: 20px 10px 10px;
    border-radius: 8px;
    border: 1px solid #c3c3c3;
}

.form.no-padding {
    padding: 0;
}

.header {
    background-color: #009ddc;
    color: white;
    font-size: 1.2em;
    padding: 20px;
    text-align: center;
}

.loginBtn, .btn-submit {
    color: white;
    background-color: #3d3d3d;
    font-size: 1.3em;
    width: 100%;
    padding: .5em 1em;
    display: block;
    text-decoration: none;
    text-align: center;
    border-radius: 16px;
    border: none;
    cursor: pointer;
}

.btn-submit {
    margin-bottom: .5em;
}

.brandingImg {
    width: 100%;
}

.challengerLogo {
    max-width: 200px;
    margin: auto;
}

.circle {
    border-radius: 100%;
}

.errorlist {
    background-color: rgba(255, 0, 0, .1);
    border-radius: .5em;
    color: red;
    padding: 1em;
}

.errorlist li {
    list-style: none;
}

.google-btn {
    display: block;
    padding: .5em;
    font-size: 1.2em;
    background-color: #de5246;
    color: white;
    text-decoration: none;
    text-align: center;
    margin: 1em 0;
    border-radius: 16px;
}

.text-center {
    text-align: center;
}

.link {
    text-decoration: none;
    color: #009ddc;
}

.margin-top-bottom {
    margin: 5px 0;
}

.margin-top {
    margin-top: 10px;
}

.margin-top-lg {
    margin-top: 25px;
}

.margin-bottom-lg {
    margin-bottom: 25px;
}

.flex {
    display: flex;
}

.flex-1 {
    flex: 1 1 0%;
    position: relative;
}

.flex-center {
    justify-content: center;
    align-items: center;
}

.spaced-content > *:not(:last-child) {
    margin-right: 15px;
}

.btn-warn {
    color: white;
    background-color: #fc4e27;
    font-size: 1.2em;
    border: none;
    width: 100%;
    padding: .5em;
    display: block;
    text-decoration: none;
    text-align: center;
}

.block-warn {
    background-color: rgba(252, 78, 39, .1);
    border-radius: .5em;
    color: #fc4e27;
    padding: 1em;
}

.info {
    margin-bottom: 1em;
}

.info .label {
    font-weight: bold;
    font-size: 1.1em;
}

.info .data {
    font-weight: lighter;
}

.section {
    padding: 20px;
}

.select-content-btn {
    border: 5px solid #ff9a80;
    border-radius: 100%;
    padding: 15px;
    transition: border .2s ease-in;
}

.select-content-btn:hover {
    border: 5px solid #fc4e27;
}

.select-content-btn img {
    width: 100%;
}

.text-success {
    color: #29b300;
}

.font-bold {
    font-weight: 700;
}

@media (max-width: 450px) {
    body {
        margin: 0;
    }

    .form {
        width: 94%;
        padding: 0.5rem 1rem;
    }
}
