body, form, header, main, div, table, td, label, span, input, select, option
{ font-family: Arial, Helvetica, sans-serif; }
body {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
body, input, select, option { font-size: 20px; }
main {
    border: 1px solid gray;
    border-radius: 10px;
    padding: 20px;
    margin: 20px;
}
header, section, div {
    vertical-align: top;
    margin: 10px 1px;
}
header { text-align: center; }
div { width: 900px; }
table, td {
    border-collapse: collapse;
    border: none;
    text-align: center;
}
label { margin: 0 5px; }
select { text-align: center; }
.header {
    font-size: 40px;
    font-weight: bolder;
    text-shadow: 0 0 10px slategray;
}
.field, .checkbox {
    padding: 5px 10px;
    margin: 5px 10px;
    text-align: center;
}
.field {
    border: none;
    border-bottom: 1px solid gray;
    height: 40px;
}
.checkbox {
    height: 35px;
    width: 25px;
}
.asterisk {
    font-weight: bolder;
    color: red;
}
.message {
    font-size: 14px;
    color: red;
}
.interest td, .interest input, 
.followup td, .followup input
{ text-align: left; }
input.button {
    border: 1px solid gray;
    border-radius: 10px;
    padding: 20px 100px;
    margin: 20px;
}
div.button { text-align: center; }
#fname, #lname, #refname, #bdate, #mobile, #addr,
#work, #other, #fdate { text-transform: uppercase; }
#fname, #lname, #refname, #other { width: 400px; }
#bdate, #mobile, #fdate, #ftime { width: 190px; }
#email { width: 360px; }
#addr { width: 505px; }
#work { width: 300px; }
#refname { width: 400px; }
