* {
  box-sizing: border-box;
}

/*
#263238 darkgray
#CFD8DC light blue gray

*/

body {
  margin: 0;
  background: #FDFDFD;
  color: #515151;
  font-size: 90%;
  line-height: 1.15;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

section {
  max-width: 19.8cm;
  margin: auto;
  padding: 0 1em;
  width: 100%;
}

header {
  width: 100%;
  float: left;
  margin: auto;
  text-align:center;
}

div {
  padding: 0 0.5em;
}

h1, h2, h3 {
  color: #515151;
}

h1 span {
  font-style: italic;
}

h1 {
  font-size: 2.747em;
  margin: 0;
  line-height: 1.1;
  text-transform: uppercase;
  padding-top: 0.2em;
}

h1 span {
  font-size: 0.33em;
  display: block;
  margin: 0.1em auto 0 auto;
  text-transform: none;
}

h2 {
  text-transform: uppercase;
  border-top: 1px solid #7F7F7F;
  font-size: .874em;
  text-align: center;
  line-height: 1;
  margin-top: 1.5em;
  margin-bottom: 0;
}

h2 span {
  background: #FDFDFD;
  position: relative;
  top: -.45em;
  padding: 0 5%;
  margin-top: -1em;
}

h3 {
  font-style: italic;
  font-weight: 700;
  font-size: 1em;
  margin-top: 0.1em;
  margin-bottom: 0.1em;
  display: inline-block; /* Allows background and padding */
  background-color: #333; /* Dark background */
  color: white;          /* White text */
  padding: 1px 8px;     /* Add some padding for visual appeal */
  border-radius: 3px;    /* Optional: rounded corners */
  -webkit-print-color-adjust: exact; /* For Chrome, Safari */
  print-color-adjust: exact;         /* Standard property */
}

h3 span {
  font-weight: normal;
  font-size: 0.9em;
}

ul {
  list-style: none;
  padding: 0;
  font-size: 0.9em;
  margin-top: 0.3em
}

li {
  padding: 0 1em 0 0.5em;
  text-wrap-style: balance;
}

a {
  color: inherit;
  text-decoration: none;
}

.ul-bullets {
  list-style: circle;
  margin-left: 1.2em;
}

.ul-bullets > li {
  padding-left: 0;
}

.flexcontent {
  display: flex;
  flex-row: row;
  flex-wrap: wrap;
}

.flexcol12 {
  width: 100%;
  float: left;
}

.flexcol8 {
  width: 67%;
  float: left;
}

.flexcol6 {
  width: 50%;
  float: left;
}

.flexcol4 {
  width: 33%;
  float: left;
}

.flexcol3 {
  width: 25%;
  float: left;
}

.margin6px {
  margin-top: 6px;
}

@media screen and (max-width: 47.5em) {
  body {
    font-size: 90%;
  }
  .flexcol8 {
    width: 100%;
  }
  .flexcol6 {
    width: 100%;
  }
  .flexcol4 {
    width: 100%;
  }
  .flexcol3 {
    width: 50%;
  }
}
