/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}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}[type="button"],[type="reset"],[type="submit"],button{-webkit-appearance:button}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checklist"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* screenreader */
.sr-only, .m-sr-only {border:0; clip:rect(0, 0, 0, 0); height:1px; overflow:hidden; padding:0; position:absolute; white-space:nowrap; width:1px}
.sr-only-focusable:active,.sr-only-focusable:focus {clip:auto; height:auto; overflow:visible; position:static; white-space:normal; width:auto}
#skipnav {background-color: #2c713c; display: inline-block; color: #fff; left: 0; padding: 0.5em 1em; position: absolute; text-decoration: none; top: 0; z-index: 10}

:root {
	--keiser_blue: #123a5c;
	--keiser_blue2: #38658b;
	--light: #ffffff;
}
html {background-color: var(--light); scroll-behavior: smooth; height: 100%} 
body {background-color: var(--keiser_blue); color: var(--light); font-family:sans-serif; min-height: 100%; overflow-x: hidden}
h1, h2, h3, h4, h5, h6, p, ol, ul {margin: 1rem 0}
h1, h2, h3, h4, h5, h6 {line-height: 1}
li {line-height: 1; margin: 0.5rem 0}
h2.small {font-size: 1.25rem}
a {color: inherit}
img {height: auto; max-width: 100%}
.container {padding: 0 1rem}
.center {text-align: center; text-wrap: balance}
.center ul {display: inline-block; margin: 0; text-align: left}
img.center {display: block; margin: 1rem auto}
#form {background-color: var(--light); color: var(--keiser_blue); padding: 2em 1em; position:relative; z-index: 1}
#form h2 {color: inherit; font-size: 2rem; font-weight: bold; margin: 0 0 0.5em; text-align: center}
#form .disclaimer {font-size: 0.85rem text-align: center}
.fieldset, .field {margin: 1em 0}
.field {display: block}
input, select {background-color: var(--light); border: 1px solid var(--keiser_blue); border-radius: 0.5em; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.15); box-sizing: border-box; padding: 1rem; height: auto; width: 100%;}
input.submitbtn, .button {background-color: var(--keiser_blue); color: var(--light); cursor: pointer; display: block; margin: 2rem auto 1rem; padding: 1rem 2rem; width: auto}
[name="comments"] {display: none}
::placeholder {color: black; opacity: 1}		
#form .logo {display: block; margin: -4rem 0 1rem 0; width: 16rem}
#hero .container {padding: 0}
#hero_copy {aspect-ratio: 1.832; background-image: url('img/hero/hero_960.jpg'); background-position: center; background-size: cover; padding: 2rem 0}
#hero_copy h1 {font-size: 3rem; font-style: italic; line-height: 1; text-align: center; text-transform: uppercase}
body:has(#thanks), main:has(#thanks), #thanks {display: flex; flex-direction: column}
main:has(#thanks), #thanks {flex-grow: 1}
#thanks {background-image: url('img/hero/hero_960.jpg'); background-position: center; background-size: cover; justify-content: center; padding: 8rem 0; position: relative}
#thanks::before {background-color: #00000060; content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
#thanks .container {position: relative}
.section {margin: 4rem 0}
.section.bg {background-color: var(--keiser_blue2); margin: 0; padding: 3rem 0}
.section.bg2 {background-color: var(--light); color: var(--keiser_blue)}
#copy::before {border-color: transparent var(--keiser_blue); border-style: solid; border-width: 8rem 1920px 0px 0px; bottom: 100%; content: ''; left: 0px; position: absolute; right: 0px}
.imgs {display: flex; gap: 1rem}
.imgs figure, .imgs figcaption {margin: 1rem 0}
.imgs figcaption {font-size: 1.25rem; font-weight: bold}
#events {background-image: url(img/events.jpg); background-position: center; background-size: cover}
.event {background-color: var(--light); border: 1px solid var(--keiser_blue); border-radius: 1rem; margin: 2em auto; padding: 1em; text-align: center}
.event .date {font-size: 1.5rem; font-weight: bold}
.event .icon {display: block; height: 4rem; margin: 1rem auto; object-fit: contain; width: 4rem}
.event h3 {font-size: 1.25rem}
.events.gfx .event {background-color: transparent; border: none; padding: 0}
#footer {padding: 1rem 0; text-align: center}
#footer .logo {display: block; margin: 1rem auto}

@media (min-width:60rem){
	body {margin: 0 auto; max-width: 120rem}
	ol.cols, ul.cols {column-count: 2; column-gap: 2rem}
	.cols li {margin-top: 0; break-inside: avoid}
	.container {margin: 0 auto; max-width: 80rem}
	.fieldset {align-items: end; display: flex; gap: 1rem}
	.fieldset .field {flax-basis: 100%; margin: 0}
	#hero {background-image: url('img/hero/hero_1920.jpg'); background-position: center; background-size: cover; padding: 2rem 0}
	#hero .container {display: flex; gap: 4rem; padding: 0 1rem}
	#form {background-color: #ffffffbf; border-radius: 1rem; box-sizing: border-box; flex-basis: calc(100% / 3); flex-shrink: 0}
	#hero_copy {align-items: end; aspect-ratio: auto; background-image: none !important; display: flex; flex-direction: column; flex-grow: 1; justify-content: space-between; padding: 0}
	#hero_copy h1 {font-size: 6rem; text-align: left; width: min-content}	
	#thanks {background-image: url('img/hero/hero_1920.jpg')}
	.columns {display: flex; gap: 4rem}
	.column {flex-basis: 100%}
	.row {align-items: center; display: flex; gap: 4rem}
	.row .copyholder, .row .imgholder {flex-basis: 100%}
	.row .imgholder.onethird {flex-basis: calc(100% / 3)}
	.row .copyholder {flex-grow: 1}
	.events {display: flex; gap: 1rem; justify-content: center}
	.events.gfx {align-items: center}
	.event {flex-basis: calc(100% / 3); margin: 0}
	.imgs figure {margin: 0}
	#footer {text-align: left}
	#footer .container {align-items: center; display: flex; gap: 2rem}
	#footer .logo {margin: 0}
}