body { .page { div.login-wrapper { display: flex; align-items: center; justify-content: center; height: auto; min-height: 1000px; max-width: 700px; margin: 0 auto; div.login { text-align: center; flex: 0 0 auto; h1 { color: #2636F9; font-size: 3.5em; font-weight: bold; } h2 { margin: 30px 10px 0px 10px; font-size: 2em; font-weight: bold; color: #333; } button.login { margin-top: 30px; color: #2636F9; font-size: 1.3em; background-color: white; padding: 7px 35px; border: 0px; &:hover, &:active { color: white; background-color: #2636F9; } } } } div.dates-wrapper { div.dates { h2 { color: #2636F9; font-size: 3.3em; font-weight: bold; text-align: center; } form { div.month-row { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; div.month-button { -webkit-flex-grow: 1; flex-grow: 1; label.radio-inline { text-align: center; color: #333; padding: 10px; font-size: 1.2em; width: 100%; } input[type="radio"] { display: none; &:checked + label.radio-inline { color: #fff; background-color: #4589F7; border: 0px; } } } } div.years { margin-top: 20px; text-align: center; label.radio-inline { color: #333; padding: 9px; font-size: 1.6em; } input[type="radio"] { display: none; &:checked + label.radio-inline { color: #4589F7; font-weight: bold; } } } } } } div.photos-wrapper { h4 { color: #2636F9; font-size: 1em; text-align: center; margin-bottom: 0px; } h2 { margin-top: 0px; color: #2636F9; font-size: 2.3em; font-weight: bold; text-align: center; } div.photos { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; div.photo { margin: 3px 8px; width: 54px; height: 74px; div.title { color: #333; font-size: 0.7em; text-align: center; } img { height: 54px; width: 54px; } canvas { width: 54px; height: 54px; } } } } } }