/*!
 * Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2024 Fonticons, Inc.
 */
@font-face {
 font-family: 'Font Awesome 6 Free';
 font-style: normal;
 font-weight: 900;
 font-display: block;
 src: 
  url("/theme/fonts/fa-solid-900.woff2") format("woff2"), 
  url("/theme/fonts/fa-solid-900.ttf") format("truetype");
}

.fas {
 font-family: 'Font Awesome 6 Free';
 -moz-osx-font-smoothing: grayscale;
 -webkit-font-smoothing: antialiased;
 display: var(--fa-display, inline-block);
 font-style: normal;
 font-variant: normal;
 line-height: 1;
 text-rendering: auto;
}

.fa-envelope::before {
 content: "\f0e0";
}

/* null margins and padding to give good cross-browser baseline */
html,body,div,p,
h1,h2,h3,h4,
main,section,footer,header,nav {
 margin:0;
 padding:0;
}

*, *:after, *:before {
 box-sizing:border-box;
 flex:1 0 auto;
}

@media (max-width:480px) {
 /* Fix for pre "viewport <meta>" mobile browsers */
 * {
  -webkit-text-size-adjust:none;
  -ms-text-size-adjust:none;
 }
}

hr {
 /*
  HR in my code are for semantic breaks in topic/section, NOT
  style/presenation, so hide them from screen.css users
 */
 display:none;
}

html, 
body {
 height:100%;
}

body {
 display:flex;
 flex-direction:column;
 font:normal 1em/1.5 tahoma,arial,helvetica,sans-serif;
 padding:1em;
}

body > * {
 flex-grow:0;
 width:100%;
 max-width:52.5em;
 margin:0 auto;
}

header {
 margin-bottom:1.5em;
}

#top {
 flex-grow:1;
}

footer {
 padding:0 0 1em 0;
}

h1 {
 float:left;
 font:bold 2.75em/1 tahoma,arial,helvetica,sans-serif;
 padding-bottom:0.25em;
}

h1 small {
 font:normal 0.375em/1.25 tahoma,arial,helvetica,sans-serif;
 display:block;
}

h1 a,
h1 a:visited {
 color:#000; 
 text-decoration:none;
}	

h2 {
 font:bold 1.25em/1.25 tahoma,arial,helvetica,sans-serif;
 padding-bottom:0.5em;
}

h3 {
 padding-bottom:0.5em;
}	

p {
 padding-bottom:1em;
}

.email span {
 position:absolute;
 left:-999em;
 top:-999em;
}

ul {
 margin-top:0;
}

dl {
 margin-top:0;
}
		 
dt {
 font-weight:bold;
}

dd {
 padding-bottom:0.5em;
}

#mainMenu ul {
 list-style:none;
 text-align:right;
 padding-top:0.75em;
}

#mainMenu li {
 display:inline;
}

#mainMenu a {
 display:inline-block;
 width:11em;
 text-align:center;
 text-decoration:none;
 margin:0.25em 0 0.5em 0.2em;
 padding:0.5em 0;
 text-transform:uppercase;
}

#mainMenu a,
#mainMenu a:visited {
 color:#000;
}	
