/*
 background: #931420
*/

/* normalize.css */
main { display: block; }
hr { box-sizing: content-box; height: 0; overflow: visible; display: block; height: 1px; border: 0; border-top: 1px solid #ccc;  margin: 1em 0; padding: 0; }
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }
strong { font-weight: bolder; }
audio, canvas, iframe, img, svg, video { vertical-align: middle; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
textarea { overflow: auto; resize: vertical; }

a { background-color: transparent; color: #931420; }
a:hover { background: #FFA; }


html {
  color: #222;
  font-size: 1.05em;
  font-family: 'ainslie', Verdana, sans-serif;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background: #F9F9F9;
}

p {
  color: #222;
  background-color: #F9F9F9;
  margin-left: 1em;
}
label { display: block; font-weight: bolder; text-align: left;}
input { display: block; }

#tfrm {
	min-width: 10em;
	border: 1px solid #004063;
}
#tfrm h4, #tfrm a {
	margin-top: 0;
	color: #004063;
}
#tfrm div {
	padding: 2em 2em;
	background-color: #f1efea;
}
#tfrm label {
	min-width: 6em;
	color: #004063;	
}
#tfrm p {
	color: #004063;
	background-color: inherit;
	font-family: Arial, Helvetica, sans-serif;
}
#tfrm input {
	width: calc(100% - 2.5em);
	margin: 0 0 1em 1em;
}
#tfrm input[type=date] {
	width: 50%;
}
#tfrm input.half {
	width: 50%;
}
#tfrm select {
	margin: 0 0 1em 1em;
	min-width: 50%;
	max-width: calc(100% - 2.5em);
}
#tfrm textarea {
	width:calc(100% - 2.5em);
	margin: 0 1em 2em 1em;
	height: 8em;
	padding: 0.4em;
	font-size: 90%
}
#tfrm .frmtxt, .invalid {
	display: inline-block;
	width: auto;
	background-color: #f1efea;
	border: none;
	margin: 0;
}
.invalid {
	color: red;
}
#student-submit {
	text-align: center;
	display: block;
	margin: 2em auto !important;
	width: 50% !important;
	min-width: 13em;
	font-weight: bold;
	padding: 0.5em;
	background-color: #FFF;
	color: #004063;
	border: 2px solid #004063;
}
#student-submit:hover {
	text-decoration: underline;
}
fieldset { border: 1 px solid #004063; padding:1em; margin: 2em 0; }
legend { color:#FFF; font-weight: bold; padding: 3px; background-color: #004063; border: 3px solid #f1efea; padding: 0 0.4em; text-align: center;}

#tfrm div.approval-checkbox {
	padding: 0.4em;
	margin: 0.5em;
	border: 1px solid #004063;
	text-align: right;
	background-color: #FFF;
}
#tfrm div.approval-checkbox input {
	display: inline; margin: 0 0.5em; width: auto;
}
#tfrm div.approval-checkbox label {
	min-width: auto;
	text-align: inherit;
	color: #931420;	
}

#tfrm2 legend { background-color: #931420; }
#tfrm2 input { color: #931420; border-color: #931420; width: 10em !important;}

h1,h2,h3,h4 {
  color: #931420;	
  line-height: 1.1;
  margin-top: 0.4em;
}
h1 {
  font-size: 2.5em;
  margin: 0.4em 0;
}
h2 { font-size: 2.1em; margin-left: 0.2em; }
h3 { font-size: 1.7em; margin-left: 0.6em; }
@media only screen and (max-width: 420px) {
	h1 { font-size: 1.8em; }
	h2 { font-size: 1.6em; margin-left: 0.1em; }
	h3 { font-size: 1.4em; margin-left: 0.3em; }
	p { margin-left: .4em;}
	#tfrm div { padding: .5em; }

}

.fwpic {
	display: block;
	height: 33vw;
}
.fwpic img {
	width: 100%;
	height: 100%;
	aspect-ratio: 1800 / 600;
}

.mw, #yt, #wy, #hta {
	margin: 0 auto;
	padding: 0 .3em;
	max-width: 42em;
}

div#sia {
	background-color: #f1efea;
	padding: 1em;
	border: 1px solid #b4babe;
}
div#sia p {
	background-color: inherit;
}

select.fixedwidth {
	font-variant-numeric: tabular-nums lining-nums;
}

span.ballot-empty {
	color: #931420;
	cursor: not-allowed;
}
span.ballot-checked {
	color: green;
	cursor: pointer;
}
span.ballot-empty, span.ballot-checked {
	font-weight: bold;
	font-size: 120%;
	background-color: #FFF;
	padding: 0 2px;
}
img#logo {
	width: 240px;
	margin: 1em auto 2em auto;
	display: block;
}

@media only screen and (min-width: 421px) and (max-width: 800px) {
	.mw { padding: 0 .6em; } 
	fieldset { border: 3px solid #004063; padding:.1em; margin: .2em 0; }
	div { margin: none;}
}
@media only screen and (min-width: 801px) and (max-width: 1200px) { .mw { padding: 0 .9em; } }
@media only screen and (min-width: 1201px) { .mw { padding: 0 1.2em; } }

.fw, #bx {
	padding: .3em;
}
.fw img {
	padding: -3.em;
}
.rdbox {
	background: #931420;
	color: #FFF;
}
.rdbox h2, .rdbox h3 {
	color: #FFF;
}
.rdbox a {
	color: white;
	text-decoration: none;
}
.rdbox a:hover {
	background: none;
	text-decoration: underline;
}

#agreement {
	border: 1px solid gray;
	background-color: #EEE;
	padding: 1em;
}
#agreement p {
	background: none;
}

footer {
	text-align: center;
	margin: 4em 1em 2em 1em;
	border-top: 1px dotted gray;
}

/* change text-selection style. cannot combine */
::-moz-selection { background: #931420; text-shadow: none; color: white; }
::selection { background: #931420; text-shadow: none; color: white; }

p.blu {
	color: #004063; font-style: italic; font-weight: bolder;
}
h2.blu {
	color: #004063;
}


#cta, #cta2 {
	background-color: #eae6dc;
	padding: 1.5em;
	margin-top: 1em;
}

#cta input, #cta2 input, #cthx button {
	width: 17vw;
	height: 4vw;
	min-height: 2.5em;
	padding: 1vw;
	margin: 1vw;
	min-width: 10em;
	color: #FFF;
	font-size: 125%;
	font-weight: bolder;
	border: 2px solid #eae6dc;	
	background-color:  #004063;
	-webkit-box-shadow: 5px 5px 8px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 5px 5px 8px 0px rgba(0,0,0,0.5);
	box-shadow: 5px 5px 8px 0px rgba(0,0,0,0.5);
	cursor: pointer;
	transition: border 0.5s ease;
	transition: font-size 0.5s ease;
	transition: box-shadow 0.5s ease;
}

#cta input:hover, #cta2 input:hover, #cthx button:hover {
	font-size: 135%;
	border: 2px solid #004063;
	-webkit-box-shadow: 5px 9px 11px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 5px 9px 11px 0px rgba(0,0,0,0.5);
	box-shadow: 5px 9px 11px 0px rgba(0,0,0,0.5);
}


@media only screen and (min-width: 801px) {
	section.unpad {
		position: relative;
		margin-top: -9em;
		margin-bottom: 2em;
	}
	section.unpad h2, section.unpad div.upbord {
		width: 100%;
		padding: 1vw;
		background-color: #FFF;
	}
	section.unpad h2 {
		margin: 0 0 0 -.475em;
		opacity: .92;
		border: 2px solid #999;
		border-bottom: 1px dotted #BBB;
		border-radius: 9px 9px 0px 0px;
		-moz-border-radius: 9px 9px 0px 0px;
		-webkit-border-radius: 9px 9px 0px 0px;
	}
	section.unpad div.upbord {
		margin: 0 0 0 -1em;
		border: 2px solid #999;
		border-top: 0;
		border-radius: 0px 0px 9px 9px;
		-moz-border-radius: 0px 0px 9px 9px;
		-webkit-border-radius: 0px 0px 9px 9px;
	}
	section.unpad div.upbord p:first-child {
		margin-top: 0;
	}
	section.unpad p {
		background-color: #FFF;
	}
	section.unpad .collapse p {
		background-color: #eae6dc;
	}
}

table { border-collapse: collapse; border-spacing: 0; margin-bottom: 1em; }
table td { border: 1px solid #BBB; padding: 0.2em 0.5em; }

.btn {
	font-family: Helvetica, Arial, san-serif;
	font-size: 70%;
	text-transform: uppercase;
	margin: 2px 8px 2px 0;
}


.x { /* flexbox container */
    display: -ms-flexbox; display: -webkit-flex; display: flex;
    -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
    -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center;
    -webkit-align-items: center; -ms-flex-align: center; align-items: center;
}


.inner-content {
  padding: 0 1.2rem;
}

.content {
  max-height: 0em;
  transition: 0.3s linear 0s;
  overflow: hidden;
}

.collapse + .collapse a.toggler {
  /* border-top: 1px solid rgba(255, 255, 255, 0.7); */
}

.collapse:target .content {
  max-height: none;
}

.collapse:target a.toggler:before {
  transform: rotate(90deg);
}


	



#hta {
	margin-bottom: 3em;
}

#ct div {
	margin: 0 1em;
	text-align: center;
}

#ctsm div {
	padding: 0 1em;
}

/* Style adjustments for high resolution devices
@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {

}
 */
 
/* Print styles */ @media print {
    *,*::after,*::before {
        background: #fff !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important
    }

    a,a:visited {
        text-decoration: underline
    }

    a[href]::after {
        content: " (" attr(href) ")"
    }

    a[href^="#"]::after,a[href^="javascript:"]::after {
        content: ""
    }

    thead {
        display: table-header-group
    }

    img,tr {
        page-break-inside: avoid
    }

    h2,h3,p {
        orphans: 3;
        widows: 3
    }

    h2,h3 {
        page-break-after: avoid
    }

	.collapse-content { width: 99%; margin: 1em auto; }
	.content { max-height: none; } 
	.collapse { background: none; border: 1px solid #BBB; margin: 0.5em 0; }
	.collapse a.toggler:before { transform: rotate(90deg); }

}

/* screen reader only class if needed */
.sr-only {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

