body {
	padding: 2em 0;
    background: #dfe6e9;
}

fieldset {
    position: relative;
	border-top-left-radius: 15px !important;
    margin-bottom: 1.5em;
    padding: 20px;
    padding-top: 50px !important;
    background: white;

    box-shadow: 0 0 10px 1px #cfdadf;
}

@media (max-width: 767px) {
    html, body {
        font-size: 16px !important;
    }

    fieldset {
        padding-top: 75px !important;
        font-size: 16px !important;
    }
}



fieldset.highlighted {
    background: beige;
    box-shadow: 0 0 10px 1px #e7e7c5;
}

legend{
    margin-left: -20px;
    background: #00b894;
    padding: 0.25em 0.75em;
    color: white;
    border-top-left-radius: 15px;
    border-bottom-right-radius: 10px;
    margin-bottom: 0;
    display: inline;
    width: auto;
    font-size: 18px;
    line-height: inherit;
    border: 0;
	box-shadow: 1px 1px 0px 1px white;
	position: absolute;
	top: 0px;
}

.form-group, .checkbox {
    margin-bottom: 1em;
}


@keyframes pageLoad {
    0% {opacity: 0; margin-top: 1em;}
    100% {opacity: 1; margin-top: 0em;}
}

@keyframes pageUnload {
    0% {opacity: 1; margin-top: 0em;}
    100% {opacity: 0; margin-top: 1em;}
}

.page-content.page-transition-in {
    animation-name: pageLoad;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-timing-function: linear;
}

.page-content.page-transition-out {
    animation-name: pageUnload;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    animation-timing-function: linear;
}

.logo {
    border-bottom: 1px solid #999;
    margin-bottom: 1em;
    padding-bottom: 1em;
}
.logo img {width: 100%}