/*!
 * 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;*/
 font-display: swap;
 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-angle-up::before {
 content: "\f106"; 
}

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

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

/* null margins and padding to give good cross-browser baseline */
html,body,div,p,
h1,h2,h3,h4,h5,h6,
ul,ol,li,
dl,dt,dd,
form,fieldset,caption,
table,tr,td,th,
address,blockquote,img,
picture,figure,figcaption {
 margin:0;
 padding:0;
}

img, fieldset {
 border:none;
}

*, *: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;
 padding:0 min(2em, 3vw);
 font:normal 1em/1.5 tahoma,arial,helvetica,sans-serif;
}

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

#top {
 flex-grow:1;
}

h1 {
 float:left;
 font:bold 195%/150% arial,helvetica,sans-serif;
}

h1 small {
 font:bold 60%/125% tahoma,arial,helvetica,sans-serif;
 display:block;
}

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

h2 {
 font:bold 145%/125% tahoma,arial,helvetica,sans-serif;
}

h3 {
 font:bold 125%/125% tahoma,arial,helvetica,sans-serif;
}

h4 {
 font:bold 105%/125% tahoma,arial,helvetica,sans-serif;
}

h2,
h3,
h4 {
 padding-bottom:0.5em;
}

p {
 padding-bottom:1em;
}

a {
 color:#006600;
}

main a:visited,
aside a:visited {
 color:#344700; 
}

.categories a:visited {
 color:#000;
}

a:focus,
a:hover {
 transition:0.2s;
}

footer a:focus,
footer a:hover {
 background:#FFF;
}


h1 a:hover,
h1 a:focus {
 color:#000;
 background:#FFF;
}

li {
 padding-bottom:0.25em;
}

.fa-language {
 font-size:1.5em;
 line-height:1.1em;
}

.backToTop {
 float:right;
 font:bold 175%/150% arial,helvetica,sans-serif;
 text-decoration:none;
 padding-top:0.5em;
}

.backToTop a:visited {
 color:#2C5781;
}

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

figcaption {
 padding-bottom:1em;
}

picture.plate {
 margin:0 auto;
}

picture.plate img {
 display:block;
 max-width:100%;
 height:auto;
 padding-bottom:1em;
}

picture.leadingPlate,
picture.trailingPlate {
 float:right;
 display:block;
 max-width:50%;
 padding:0 0 1em 1em;
}

picture.leadingPlate {
 float:left;
 padding:0 1em 1em 0;
}

picture.leadingPlate img,
picture.trailingPlate img {
 display:block;
 max-width:100%;
 height:auto;
}

picture p {
 padding-top:1em;
 padding-bottom:0;
}
 
header,
#top,
footer {
 background:#FFF;
 padding:1em;
 margin:0 auto;
}

#top {
 padding-top:0;
}

header {
 padding:1em 0;
}

footer {
 padding:1em;
 border-top:2px solid #E7EDF3; 
}

footer p {
 padding-bottom:0;
}

dt {
 font-weight:bold;
}

dl {
 padding-bottom:1em;
}

main ul {
 padding:0 0 1em 2em;
}

.email {
 display:block;
}

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

dt {
 font-weight:bold;
}

dl {
 margin-top:0;
}

dd {
 padding-bottom:0.5em;
}

#mainMenu ul {
 list-style:none;
 text-align:right;
 padding-left:0;
}

#mainMenu li {
 display:inline;
}

#mainMenu a {
 font-size:0.8em;
 display:inline-block;
 width:15em;
 text-align:center;
 text-decoration:none;
 margin:0.25em 0 0.5em 0.2em;
 padding:0.5em 0;
 color:#FFF;
 background:#006600;
 text-transform:uppercase;
}

#mainMenu a:hover,
#mainMenu a:focus {
 font-weight:bold;
}

a {
 color:#006600;
}

a:visited {
 color:#344700; 
}

a:focus,
a:hover {
 background:#FFF9D0;
 color:#007A00;
}

@media (max-width:47.5em) {
 h1,
 #mainMenu ul {
  float:none;
  text-align:center;
 }
 #mainMenu ul {
  padding:1em 0;
  max-width:90em;
 }
 picture.leadingPlate,
 picture.trailingPlate {
  float:none;
  max-width:100%;
  padding:0 0 1em 0;
 }
 #top {
  padding:0;
 }
 header {
  padding:1em 0 0 0;
 }
 footer {
  padding:1em 0;
}

@media (max-width:22em) {
 .backToTop {
  float:none;
  display:block;
  padding:0 0 1em 0;
 }
}
