/* Required */
body {
    margin: 0;
    height: 100%;
    color: #343d40;
}

#wrapper {
    height: 100vh;
    display: grid;
    grid-template-rows: 100px 1fr 75px;
}

#main {
    overflow-y: scroll;
}

#header {
    background-color: #ffffff;
    display: flex;
    justify-content: center;
}

#main {
    background-color: #f2f2f2;
}

#footer {
    background-color: #ffffff;
}

.error-header {
    color: #305a7a;
}

.text-h1 {
    font-size: 6rem;
    font-weight: 300;
    line-height: 6rem;
    letter-spacing: -0.01562em;
}
.text-h2 {
    font-size: 3.75rem;
    font-weight: 300;
    line-height: 3.75rem;
    letter-spacing: -0.00833em;
}
.text-h3 {
    font-size: 3rem;
    font-weight: 400;
    line-height: 3.125rem;
    letter-spacing: normal;
}
.text-h4 {
    font-size: 2.125rem;
    font-weight: 400;
    line-height: 2.5rem;
    letter-spacing: 0.00735em;
}
.text-h5 {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2rem;
    letter-spacing: normal;
}
.text-h6 {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 2rem;
    letter-spacing: 0.0125em;
}

.text-gray {
    color: #7e8990;
}

.radio-item {
    display: inline-block;
    position: relative;
    padding: 0 6px;
    margin: 10px 0 0;
}

.radio-item input[type='radio'] {
    display: none;
}

.radio-item label {
    font-weight: normal;
}

.radio-item label:before {
    content: " ";
    display: inline-block;
    position: relative;
    top: 5px;
    margin: 0 5px 0 0;
    width: 20px;
    height: 20px;
    border-radius: 11px;
    border: 2px solid #274e6d;
    background-color: transparent;
}

.radio-item input[type=radio]:checked + label:after {
    border-radius: 11px;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 9px;
    left: 10px;
    content: " ";
    display: block;
    background: #274e6d;
}
