/**
 * Copyright 2021 Tksoft Inc.
 * tksoft.com
 * All Rights Reserved.
 * Author: Troy Korjuslommi
 * ID: DSD8
 * 
 */

/**
 * Copyright 2024 Tksoft Inc.
 * http://tksoft.com
 * All Rights Reserved.
 * Author: Troy Korjuslommi
 */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
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: 0px;
  padding: 0px;
  border: 0px;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/**
 * link: unvisited
 * visited
 * hover
 * active
 */
a, a:link, a:visited, a:hover, a:active {
  color: #f20000;
  /* text-decoration:none; */ }

header {
  display: -webkit-flex;
  display: flex;
  -webkit-order: 20;
  -moz-order: 20;
  order: 20; }

main {
  display: -webkit-flex;
  display: flex;
  -webkit-order: 30;
  -moz-order: 30;
  order: 30; }

footer {
  display: -webkit-flex;
  display: flex;
  -webkit-order: 40;
  -moz-order: 40;
  order: 40; }

@media only screen and (max-width: calc(5in - 1px)) {
  nav {
    display: -webkit-flex;
    display: flex;
    -webkit-order: 10;
    -moz-order: 10;
    order: 10; } }

@media only screen and (min-width: 5in) {
  nav {
    display: -webkit-flex;
    display: flex;
    -webkit-order: 50;
    -moz-order: 50;
    order: 50; } }

a, p, span {
  color: #050505; }

html, body, * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #050505; }
  @media only screen and (max-width: calc(5in - 1px)) {
    html, body, * {
      font: 100% San Francisco, Palatino, Helvetica; } }
  @media only screen and (min-width: 5in) {
    html, body, * {
      font: 100% San Francisco, Palatino, Helvetica; } }
body {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: calc( 100vw - 7px);
  max-width: calc( 100vw - 7px);
  display: -webkit-flex;
  display: flex;
  -moz-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  background: #fcfcfc; }

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  margin: 1rem 0rem 0.3rem 0rem; }

h1 {
  font-size: 1.7rem; }

h2 {
  font-size: 1.5rem; }

h3 {
  font-size: 1.4rem; }

h4 {
  font-size: 1.3rem; }

h5 {
  font-size: 1.2rem; }

h6 {
  font-size: 1.1rem; }

@media only screen and (min-width: 5in) {
  h1 {
    font-size: 1.8rem; }
  h2 {
    font-size: calc( 1.8rem * .91); }
  h3 {
    font-size: calc( 1.8rem * .84); }
  h4 {
    font-size: calc( 1.8rem * .78); }
  h5 {
    font-size: calc( 1.8rem * .72); }
  h6 {
    font-size: calc( 1.8rem * .66); } }

form {
  display: -webkit-flex;
  display: flex;
  -moz-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  -moz-justify-content: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  /**
	* min-widths for form elements.
	*/
  /*
  * before: {
  * content: "(*) Required."
  *}
  */ }
  form input, form textarea, form select, form option {
    font-size: 1.0rem; }
  form input[type='text'] {
    min-width: 10rem; }
  form input[type='email'] {
    min-width: 10rem; }
  form input[type='password'] {
    min-width: 10rem; }
  form textarea {
    width: 100%;
    margin: 0.8rem 0.1rem 0.8rem 0.1rem; }
    @media only screen and (min-width: 5in) {
      form textarea {
        margin: 0.5rem 1rem 0.5rem 0.1rem; } }
  form input:required:after {
    content: ' *'; }
  form div.submit {
    display: -webkit-flex;
    display: flex;
    -moz-flex-direction: row;
    -webkit-flex-direction: row;
    flex-direction: row;
    -moz-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center; }
  form input[type='submit'] {
    margin: 1.5rem 1.0rem 2.0rem 1.0rem;
    padding: 0.7rem 0.7rem 0.7rem 0.7rem;
    border: 1px solid #ff6600;
    border-radius: 1.0rem; }
  form input[type='submit']:focus {
    font-weight: bold; }
  form input[type='submit']:target {
    background-color: darkgray; }
  form label {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    align-items: stretch; }
    form label > input, form label > button, form label > div {
      margin: 0.8rem 0.1rem 0.8rem 0.1rem; }

main {
  padding: 0.5rem 1.0rem 0.5rem 0.5rem; }
  @media only screen and (min-width: 5in) {
    main {
      padding: 0.8rem 2.5rem 1.5rem 1.5rem; } }
nav {
  font: 1.2rem San Francisco, Palatino, Helvetica;
  font-variant: small-caps;
  background: #ffffff;
  color: #c60000;
  display: block;
  text-align: center;
  margin: 0rem 0rem 0rem 0rem;
  padding: 0.2rem;
  /**
	 * https://www.w3schools.com/css/css_list.asp
	 */ }
  @media only screen and (min-width: 5in) {
    nav {
      font: 0.9rem San Francisco, Palatino, Helvetica; } }
  @media only screen and (min-width: 5in) {
    nav {
      padding: 0.5rem; } }
  nav a, nav a:link, nav a:visited, nav a:hover, nav a:active {
    text-decoration: none; }
  nav ul, nav ol {
    list-style-type: none;
    line-height: 1.5rem;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -moz-flex-flow: column;
    -webkit-flex-flow: column;
    flex-flow: column;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (min-width: 5in) {
      nav ul, nav ol {
        -moz-flex-flow: row nowrap;
        -webkit-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -moz-justify-content: space-between;
        -webkit-justify-content: space-between;
        justify-content: space-between; } }
    nav ul li, nav ol li {
      display: inline-block;
      width: 100%;
      padding: 0.3rem;
      box-shadow: 0.1rem 0.1rem 0.1rem #e6e6e6; }
      @media only screen and (min-width: 5in) {
        nav ul li, nav ol li {
          width: auto;
          padding: 1.0rem; } }
    @media only screen and (min-width: 5in) {
      nav ul li + li:before, nav ol li + li:before {
        content: ""; } }
footer, header {
  display: block;
  text-align: center;
  color: #050505;
  background: #fcfcfc;
  width: calc( 100vw - 7px);
  padding: 0.3rem;
  line-height: 1.8rem; }
  @media only screen and (min-width: 5in) {
    footer, header {
      padding: 1.0rem; } }
body {
  padding: 0px;
  margin: 0px;
  border: 0px; }
  body nav {
    display: none; }
  body header {
    display: flex;
    position: -webkit-sticky;
    position: sticky;
    top: 0px;
    padding: 5px 0px 0px 0px;
    margin: 0rem;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column; }
    body header hr {
      padding: 0px;
      margin: 5px 0px 5px 0px;
      border: 0px;
      border-top: 1px solid darkgray; }
    body header div {
      display: flex;
      -moz-flex-direction: row;
      -webkit-flex-direction: row;
      flex-direction: row;
      -moz-justify-content: space-between;
      -webkit-justify-content: space-between;
      justify-content: space-between; }
      body header div div {
        display: inline-flex; }
        body header div div div {
          display: flex;
          display: inline-flex;
          -webkit-align-items: flex-end;
          align-items: flex-end;
          -moz-justify-content: flex-end;
          -webkit-justify-content: flex-end;
          justify-content: flex-end;
          font-size: 18pt;
          font-weight: bold; }
          body header div div div img {
            display: flex;
            height: auto;
            padding-right: 1.0rem; }
          body header div div div img.logo {
            width: 50px; }
          body header div div div img.name {
            width: 200px; }
    body header div:first-child div {
      display: flex;
      margin: 0px 0px 0px 10px; }
  body main {
    display: flex;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    min-height: 90vh; }
    body main segment {
      -moz-flex-direction: column;
      -webkit-flex-direction: column;
      flex-direction: column;
      display: flex;
      max-width: 95vw;
      -webkit-align-items: center;
      align-items: center; }
      body main segment h1 {
        font-weight: bold; }
        @media only screen and (max-width: calc(5in - 1px)) {
          body main segment h1 {
            font-size: 18pt; } }
        @media only screen and (min-width: 5in) {
          body main segment h1 {
            font-size: 20pt; } }
      body main segment div {
        display: block;
        max-width: 40rem;
        line-height: 20pt;
        margin-top: 10pt;
        font-size: 16pt; }
        body main segment div div, body main segment div p {
          line-height: inherit;
          margin-top: inherit;
          font-size: inherit; }
  body ul.slist {
    display: inline; }
    body ul.slist li {
      display: inline; }
    body ul.slist li::after {
      content: ","; }
    body ul.slist li:last-child::after {
      content: '.'; }
  body nav {
    display: -webkit-flex;
    display: flex;
    -webkit-order: 100;
    -moz-order: 100;
    order: 100; }
  body footer {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    position: -webkit-sticky;
    position: sticky;
    bottom: 0px; }
  body footer, body footer div, body footer p {
    color: white;
    background: #222222;
    font-family: times,serif; }
