* {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box}
body {margin:0; padding:0; font-family:sans-serif; color:#222}
a {color:#25408f; text-decoration:none}
a:hover {text-decoration:underline}
img {border:0}
h1,h2,h3,h4,h5,h6 {margin:0 0 16px 0; color:#222}
h1 {font-size:1.5em; text-align:left}
h2 {font-size:1.25em; text-align:left}
  h2 span {font-size:.7em}
h3 {font-size:1.125em; margin-bottom:3px; text-align:left}
h4 {font-size:1em; text-align:left; color:#444}
h4 span {font-weight:normal}
h5 {font-size:1em; text-align:left}
h6 {font-size:1em; text-align:left}
p {text-align:left}
/*ul,ol {text-align:left}
li {line-height:1.25em; padding-bottom:10px}*/
address {font-style:normal}
hr {clear:both; width:94.5%; border:0; height:1px; background-image:-webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); background-image:-moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); background-image:-ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0)); background-image:-o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0))}

/* =======================================================================
   ============ default layout - optimized for small screens =============
   ======================================================================= */

.container {position:relative; width:100%; max-width:1024px; min-height:800px; margin:0 auto}
header {display:inline-block; position:relative; width:94%; min-height:120px; margin:0 3%; padding:0; text-align:center; z-index:5}

.content {display:inline-block; width:94%; margin:0 3%; padding:16px 0; background:#fff; text-align:center}
  .column1,.column2 {display:inline-block; position:relative; width:100%; margin:0; line-height:1.5em; text-align:left}
  .full-col {width:100%}
  .split-col {display:inline-block; position:relative; width:100%; margin:0; text-align:left}
  .col-box {display:inline-block; position:relative; max-width:300px; margin:0; text-align:left}
  .main {display:inline-block; width:100%; margin:0; text-align:left}
  .sidebar {display:inline-block; width:300px; margin:16px 0 0; padding:10px 4px 4px 16px; vertical-align:top; text-align:left; list-style:none; border:1px solid #ddd; border-radius:4px}
.content-box {display:inline-block; position:relative; width:94.5%; text-align:left; line-height:1.5em}
.content-box h2 span {font-size:.85em}

.f-body {clear:both; position:relative; width:100%}
.f-container {position:relative; width:100%; max-width:1024px; margin:0 auto; padding-bottom:40px}
footer {display:inline-block; position:relative; width:94%; margin:0 3%; background:url(images/footer-mark.png) no-repeat center top; text-align:center; z-index:5; border-radius:0 0 8px 8px}

/* generic styles */
.wait {display:none}
.text-left {text-align:left}
.clear {clear:both}
.left {float:left}
.right {float:right}
.center {text-align:center}
.flow {display:inline-block; vertical-align:top}
.half {width:49%}
.full {width:100%}
.image {width:auto; max-width:94.5%; height:auto}
.image-left,.image-right {display:block; width:auto; max-width:94.5%; height:auto; padding:0 0 5px 0}
.alert {color:#c00}
.bold {font-weight:bold}
.emphasis {font-style:italic}
.small {font-size:.8125em}
.vsmall {font-size:12px; font-weight:normal}
.medium {font-size:.9375em}
.no-margin {margin:0; padding:0}

.register {width:100%; margin:20px 0; text-align:center}
.register a {display:inline-block; padding:10px 20px; background:#333; font-weight:bold; color:#eee; text-decoration:none; border-radius:4px}
.register a:visited {color:#eee}
.register a:hover {background:#000; color:#fff; text-decoration:none}

.key {float:left; clear:both; height:28px; margin:0; padding:2px 0 0 30px}

.grads {width:100%; border:0; padding-bottom:32px; font-size:.875em}
.grads th {padding:0 20px 0 0}
.grads td {height:25px; border-bottom:1px dotted #999}
.yay {background:url(images/sprite-status.png) 0 0 no-repeat}
.may {background:url(images/sprite-status.png) 0 -25px no-repeat}
.nay {background:url(images/sprite-status.png) 0 -50px no-repeat}
.fbg {background:url(images/sprite-status.png) 0 -75px no-repeat}
.grads td.row-heading {height:50px; font-weight:bold}

.funding {float:left; clear:both; width:98%; margin-bottom:50px; border-top:1px solid #000}
.funding td {width:33.33%; border-bottom:1px dotted #999; text-align:left}

/* Forms */
form {display:inline-block; width:94.5%; max-width:300px; padding-bottom:10px; border-bottom:1px dotted #999; text-align:left}
form fieldset {display:inline-block; width:100%; margin:20px 0 0; padding:0; border:0; text-align:left}
form legend {display:inline-block; width:100%; margin:0; padding:0 0 10px 0; background:transparent; font-size:1.25em; line-height:1em}
form legend span {font-size:.6875em}
form label {display:inline-block; width:100%; text-align:left; font:bold .875em sans-serif; color:#666}
form label.check-label {float:left; width:90%; margin-bottom:10px; padding-top:4px}
form .input,form .semi-input,form select {display:inline-block; width:99.95%; max-width:300px; height:30px; margin-bottom:10px; font-size:16px; color:#222}
form textarea {display:inline-block; width:99.95%; height:200px; margin-bottom:10px; font-size:1em}
form .semi-input,form .range {width:130px}
form .date-select {width:33.3%; max-width:100px}
form .phone-pre {display:inline-block; width:36px; height:30px; margin:0 4px 10px 0; font-size:16px; color:#222}
form .phone-num {display:inline-block; width:48px; height:30px; margin:0 4px 10px 0; font-size:16px; color:#222}
form .phone-type {display:inline-block; width:160px; height:30px; margin-bottom:10px; font-size:16px; color:#222}
form .join {display:inline-block; width:31px; height:30px; line-height:30px; text-align:center}
form .check {float:left; clear:both; margin:5px 5px 5px 0}
form .check-text {float:left; margin:1px 16px 5px 0}
form .rebtn {float:left; clear:both; width:auto; height:40px; margin:6px 0; padding:0 30px; font:bold 1em sans-serif; color:#222}
form a {border-bottom:1px dotted #39c; color:#39c; text-decoration:none}
form p {width:100%; margin:10px 0; padding:0; text-align:left; font-weight:bold}
#dinner-guest,#golf-tourney {float:left; width:94%; padding-left:6%}
#dinner-guest p,#golf-tourney p {margin:0; padding:0; font-weight:normal}
.newline,#dinner-guest,#golf-tourney {display:none}

/* =======================================================================
   ========== responsive adjustments as screen size increases ============
   ======================================================================= */

@media only screen and (min-width:644px) {
  .image-left {float:left; padding:0 15px 5px 0}
  .image-right {float:right; padding:0 0 5px 15px}
  .split-col {float:left; width:50%; max-width:430px}
  .f-nav li {width:165px}
  form {max-width:600px}
}

@media only screen and (min-width:750px) {
  header {position:relative; height:256px}
  .content {padding:40px 0}
  .column1 {float:left; width:46%; padding-right:4%}
  .column2 {float:left; width:50%}
  .col-box {float:left; width:46%; max-width:580px; padding-right:4%}
  .col-1 {float:left; padding:0 20px 0 0}
  .col-2 {float:left}
  .split-col {float:left; width:44.6%; max-width:430px; margin-left:4.4%}
  .full-col {width:95.85%; margin:0 2.075%}
  .main {float:left; width:60%; max-width:580px; margin-left:40px}
  .iHide {display:inline-block}
}
