/* CSS RESET */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-weight: normal;
	font: inherit;
	vertical-align: baseline;
	font-family:Arial, Helvetica, sans-serif;
}
article, aside, figure, footer, header, nav, section, details, summary {display: block;}
html { box-sizing:border-box; }
*, *:before, *:after { box-sizing: inherit; }
body { position:relative; background-color: white; }
img { vertical-align: middle; }
@font-face { font-family: FreshScript; src: url('/css/fonts/FreshScript.otf'); }

/* ALL */
a { text-decoration:none; }
a:link, a:link:active, a:visited, a:visited:active { color:inherit; }
.b {font-weight:bold;}
.i {font-style:italic;}
.u {text-decoration:underline;}
.c {text-align:center;}
.flex-start { display:-webkit-flex; display:flex;  -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-flow:row wrap; flex-flow:row wrap; }
.flex-end { display:-webkit-flex; display:flex; -webkit-justify-content:flex-end; justify-content:flex-end; -webkit-flex-flow:row wrap; flex-flow:row wrap; }
.flex-center { display:-webkit-flex; display:flex; -webkit-justify-content:center; justify-content:center; -webkit-flex-flow:row wrap; flex-flow:row wrap; }
.flex-between { display:-webkit-flex; display:flex; -webkit-justify-content:space-between; justify-content:space-between; -webkit-flex-flow:row wrap; flex-flow:row wrap; }
.flex-around { display:-webkit-flex;  display:flex; -webkit-justify-content:space-around; justify-content:space-around; -webkit-flex-flow:row wrap; flex-flow:row wrap; }
.error { color:red; }
.success { color:green; }
.clear { clear:both; }
main { padding-bottom: 40px;}

/* HEADER */
header { background: none; padding:0.25vmin; align-items: baseline; }
header.flex-center { -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
header div.row { width: 100%; }
header div.col { padding: 1vh 2vw; }
header div.col.flex-center { -webkit-flex-wrap: nowrap; flex-wrap: nowrap;}
header span.icon { font-size: 2vw; line-height: 100%; margin-right: 0.5vw; max-width: 50px;}
header span p { color: #303030; font-size: 12px; line-height: 150%; }
header span p:first-child { font-size: 14px; font-weight: bold; letter-spacing: 1px; }
header span p:last-child {}
nav { background-color: rgba(85,85,85,1); color: rgba(255,255,255,1); }
nav a { padding: 1vh 1vw; font-size: 12px; border-bottom: 2px rgba(0,0,0,0) solid; }
nav a:hover { background-color: rgba(255,255,255,1);; color: rgba(85,85,85,1); border-bottom: 2px rgba(0,0,0,1) solid; }
nav a.current { background-color: rgba(238,238,238,1);; color: rgba(0,0,0,1); border-bottom: 2px rgba(0,0,0,1) solid; }
nav a.current:hover { background-color: rgba(0,0,0,1); color: rgba(238,238,238,1); border-bottom: 2px rgba(238,238,238,1) solid; }
nav select { display: none; margin: 1vw; width: 100%; padding: 0.5vw; font-size: 16px; }

/* FOOTER */
footer { background: rgba(46,165,251,1); width: 100%; text-align: center; padding: 1vh; color: white; border-top: 1px black solid; }
#footer { align-items: center; margin: 1vh 0; }
#footer1 { margin:1vh 0.5vw 1vh 0;}
#footer1 p:first-child { text-align:left;}
#footer1 p:last-child { text-align:right;}
#footer2 { margin:1vh 0.5vw 1vh 0; }
#footer3 { margin:1vh 0.5vw 1vh 0; }
#footer4 { margin:1vh 0.5vw 1vh 0; }

@media only screen and (max-width: 1224px) {
  header div.col { padding: 1vh 1vw; }
  header span p { color: #303030; font-size: 11px; line-height: 150%; }
  header span p:first-child { font-size: 12px; font-weight: bold; letter-spacing: 0.5px; }
}


@media only screen and (max-width: 768px) {
  nav a { display:none;} 
  nav select { display:block;}
  header.flex-center { -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header div.col:first-child { width: 100%; text-align: center; }
  header div.col:first-child img { max-width: 340px; }
  header div.col.flex-center { width: 33.33%; }
  #footer1 { width: 100%; }
  #footer1 p:first-child { text-align:center;}
  #footer1 p:last-child { text-align:center;}
}

@media only screen and (max-width: 480px) {
  header.flex-center {}
  header div.col.flex-center { width: 100%; padding: 0.5vh 0.5vw; }
  header span.icon { display: none;}  
  header div.col span:last-child { text-align: center; width: 100%;}
  #footer { flex-flow: column nowrap;}
}