@CHARSET "UTF-8";

body{
  margin:0;
  font-family: Carlito, Caladea, Calibri, arial, verdana, geneva, tahoma, sans-serif;
 	font-size: 1em;
 	text-align: left;
 	text-color: black;
	color: black;
  background-color: transparent;
  width: 100%;
  height: 100%;
  zoom: 100%;
}

.header {
  width: 100%;
  position:absolute; 
  top:0px; 
  left:0px; 
  height:86px; 
  overflow:hidden;
  box-shadow: 0px 1px 1px gray;
  -moz-box-shadow: 0px 1px 1px gray;
  -webkit-box-shadow: 0px 1px 1px gray;
  background-color: #e6e6e8;
 	line-height: 86px;
 	vertical-align: bottom;
}

headercont {
  display: -webkit-box;  
  display: -moz-box;    
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  font-size: 1.2em;
  flex-flow: row wrap;
  align-items: flex-start;
  padding: 10px;
}

.headeritem-logo {
  flex-grow: 0;
  margin-right: 20px;
}

.main{
	position: absolute;
	top: 87px;
  left: 0px;
  bottom: 0px;
	width: 100%;
  overflow: auto;
}

maincont {
  display: -webkit-box;  
  display: -moz-box;    
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-flow: row wrap;
  align-items: stretch;
  justify-content: space-evenly;
  align-content: flex-start;
  padding: 8px;
}

mainitemcontainer {
	width: 47em;
}

.mainitem {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: 1fr auto;
  column-gap: 5px;
  row-gap: 5px;
  flex-grow: 0;
  justify-content: flex-start;
  background-color: rgb(217, 230, 242);
  color: black;
  box-shadow: 1px 1px 1px gray;
  -moz-box-shadow: 1px 1px 1px gray;
  -webkit-box-shadow: 1px 1px 1px gray;
  border-radius: 5px;
	text-decoration: none;
  font-size: 1.7em;
}

mainitemcontainer > .mainitem {
  width: 100%;
  margin: 8px;
}

.mainitem > a:link, .mainitem > a:active, .mainitem > a:focus, .mainitem > a:visited, .mainitem > a:hover {
	text-decoration: none;
  color: black;
	border: 0px;
}

.title {
  grid-column-start: 1;
  grid-column-end: span 2;
  grid-row-start: 1;
  grid-row-end: 1;
  background: transparent;
  text-align: center;
  color: #1b7b7e;
 	font-weight: bold;
  font-size: 1.5em;
}

.logo {
  grid-column-start: 1;
  grid-column-end: 1;
  grid-row-start: 2;
  grid-row-end: 2;
  background: transparent;
  padding: 5px;
}

.desc {
  grid-column-start: 2;
  grid-column-end: 2;
  grid-row-start: 2;
  grid-row-end: 2;
  background: transparent;
  padding: 5px;
}

.apptitle {
  display: -webkit-box;  
  display: -moz-box;    
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: center;
  align-items: center;
  padding: 8px;
}

.apptitletext {
  background-color: transparent;
  color: #1b7b7e;
 	font-weight: bold;
  font-size: 2.6em;
}

.appdesc {
  display: -webkit-box;  
  display: -moz-box;    
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  align-content: flex-start;
  justify-content: flex-start;
  align-items: center;
  padding: 8px;
}

.appdescimg {
  flex: 0 0 42em;
  align: center;
}

.appdesctext {
  flex: 1;
  background-color: transparent;
  color: black;
  font-size: 1.7em;
  padding-left: 10px;
}

.sectiontitle {
	background-image:linear-gradient(to left, white, #b3ecff);
  height: 50px;
 	line-height: 50px;
 	vertical-align: middle;
 	font-size: 1.8em;
 	font-weight: bold;
 	padding-left: 8px;
}

@media (max-width: 80em) {
  .appdesc {
    display: -webkit-box;  
    display: -moz-box;    
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: flex-start;
    justify-content: flex-start;
    padding: 8px;
  }

  .appdescimg {
    align: center;
    flex: 0 0 auto;
  }

  .appdesctext {
    background-color: transparent;
    color: black;
    font-size: 1.7em;
  }
}

productcontent {
  font-size: 1.6em;
  color: black;
 	font-style: italic;
	text-decoration: none;
  align-items: stretch;
}

.products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(30em, 1fr));
  background-color: transparent;
  padding: 5px;
  grid-gap: 1em
}

.logobox {
	position: relative;
	float: left;
  width: 12%;
	height: 100%;
  padding-left: 15px;
  padding-top: 10px;
 	line-height: 86px;
 	vertical-align: middle;
	border: 0px;
}

.menubox {
	position: relative;
	float: left;
	height: 100%;
  padding-left: 8%;
  padding-top: 40px;
	border: 0px;
}

.menuitem > a:link, .menuitem > a:active, .menuitem > a:focus, .menuitem > a:visited {
  flex-grow: 1;
  margin: 12px;
	text-decoration: none;
 	font-size: 1.6em;
 	font-weight: bold;
  color: black;
	border: 0px;
}

.menuitem > a:hover {
  flex-grow: 1;
  margin: 12px;
	text-decoration: none;
 	font-size: 1.6em;
 	font-weight: bold;
  color: black;
  border-style: solid;
  border-width: 0px 0px 5px 0px;
  border-color: red;
  cursor:pointer;
}

.menuitemdisabled > a:visited, .menuitemdisabled > a:link,  .menuitemdisabled > a:hover,  .menuitemdisabled > a:active,  .menuitemdisabled > a:focus {
  flex-grow: 1;
  margin: 12px;
	text-decoration: none;
 	font-size: 1.6em;
 	font-weight: bold;
  color: gray;
	border: 0px;
  cursor: default;
}


.menuiteminactive {
	position: relative;
	float: left;
	height: 100%;
  padding-left: 25px;
	border: 0px;
 	font-size: 1.3em;
 	font-weight: bold;
  color: gray;
}

.footer{
  position:absolute; 
  bottom:0px; 
  left:0px; 
  right: 0px; 
  height: 20px;
 	line-height: 20px;
 	vertical-align: middle;
 	text-align: center;
  font-size: 0.8em;
  color: darkgray;
  overflow:hidden
}

div#titlebox {
  width:90%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
 	-moz-box-shadow: 3px 3px 2px black;
 	-webkit-box-shadow: 3px 3px 2px black;
  box-shadow: 3px 3px 2px black;
  font-family: serif;
 	font-style: italic;
 	color: white;
 	background: #426caf;
  padding: 10px;
 	font-weight: normal;
 	line-height: 1.5;
}

.producttitle {
	position: relative;
 	font-weight: bold;
 	font-size: 1.4em;
  width: 100%;
 	text-align: center;
  color: #27a3a5;
 	line-height: 60px;
 	vertical-align: middle;
}

.productcontent {
	position: relative;
  width: 100%;
  height: 63%;
  padding: 0px;
}

.productlogo {
	position: relative;
	float: left;
  height: 100%;
  width: 25%;
 	text-align: center;
}

.productdesc {
	position: relative;
	float: right;
  width: 65%;
 	font-size: 1.1em;
  font-style: italic;
 	text-align: left;
}

.producttitle > a:link, .producttitle > a:active, .producttitle > a:focus, .producttitle > a:visited {
	position: relative;
 	font-weight: bold;
 	font-size: 1.2em;
  width: 100%;
  height: 50%;
  margin-bottom: 10px;
 	text-align: center;
  color: #27a3a5;
	text-decoration: none;
}

.producttitle > a:hover {
	position: relative;
 	font-weight: bold;
 	font-size: 1.2em;
  width: 100%;
  height: 50%;
  margin-bottom: 10px;
 	text-align: center;
  color: #27a3a5;
	text-decoration: none;

  border-style: solid;
  border-width: 0px 0px 5px 0px;
  border-color: #186667;
  cursor:pointer;
}

.pagetitle {
 color: #1b7b7e;
 width: 100%;
 margin-bottom: 10px;
 text-align: center;
 font-size: 1.2em;
 font-weight: bold;
}

.infocontent {
	position: relative;
	width: 100%;
  top: 30px;
 	font-size: 1.2em;
	text-align: center;
}

.infocontent > a:hover {
	position: relative;
	width: 90%;
	left: 5%;
  top: 20px;
 	font-size: 1.6em;
  overflow: hidden;
	text-align: center;
}

.posterbox {
  position: relative;
  width: 90%;
  height:450px;
  background: #d5f5f6;
  padding: 15px;
 	text-align: left;
 	font-size: 1.1em;
  margin:5% auto;
}

.privacy {
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
  background-color: rgb(217, 230, 242);
  color: black;
  box-shadow: 1px 1px 1px gray;
  -moz-box-shadow: 1px 1px 1px gray;
  -webkit-box-shadow: 1px 1px 1px gray;
  border-radius: 5px;
  padding: 10px;
  font-size: 1.6em;
  color: black;
  text-align: left;
}

.about {
  width: 90%;
  margin-left: 5%;
  margin-right: 5%;
  background-color: rgb(217, 230, 242);
  color: black;
  box-shadow: 1px 1px 1px gray;
  -moz-box-shadow: 1px 1px 1px gray;
  -webkit-box-shadow: 1px 1px 1px gray;
  border-radius: 5px;
  padding: 10px;
  font-size: 1.6em;
  color: black;
  text-align: center;
}

ul > li,ol > li {
  margin: .4em 0;
  line-height: 1.10;
  text-align: justify;
}
