html {
  font-size: 19px;
  scroll-behavior: smooth
}

body {
  text-align: left;
  font-family: 'Open Sans', Tahoma, Verdana, Lucida Sans, Helvetica, Arial, sans-serif
}

body.dyslexic {
  letter-spacing: 0.12rem;
  word-spacing: 0.16rem;
  line-height: 1.5rem;
  font-family: Arial
}

body.-js-enabled .-no-js {
  display: none!important
}

body:not(.-js-enabled) *.-need-js {
  display: none!important
}

svg.svg-background {
  z-index: -1;
  position: fixed
}

svg.svg-background path.c1 {
  fill: #00779E
}

svg.svg-background path.c2 {
  fill: #0099cc
}

svg.svg-background path.c3 {
  fill: #66D9FF
}

header, main, footer {
  display: flex;
  position: relative
}

footer {
  color: white;
  position: relative
}

hr {
  border-bottom: 1px solid #00779E;
  width: 100%;
  margin: 0 15px
}

h1 {
  font-size: 2.5rem;
  font-weight: 300;
  width: 100%
}

h2 {
  font-size: 2rem;
  font-weight: 300;
  color: white;
  padding: 1rem 15px;
  margin-bottom: 0rem
}

h3, h3 > button {
  font-size: 1.39rem;
  font-weight: 300;
  color: black;
  margin-bottom: 0rem
}

#help-tab h3 {
  margin-bottom: 2.25rem
}

h3.h3-underline {
  display: inline-block;
  padding-bottom: 0.5rem;
  margin-bottom: 2rem;
  border-bottom: 4px solid #00779E
}

footer h3.h3-underline {
  color: white;
  margin-bottom: 1rem
}

section.section-side > h4 {
  background-color: #0099cc;
  margin: -0.5rem;
  padding: 1rem 0.5rem;
  font-size: 1.2835rem;
  font-weight: 300;
  margin-bottom: 1rem
}

nav[aria-label="Glossary controls"] > div > p {
  padding-top: calc(0.5rem + 4px);
  padding-bottom: calc(0.5rem + 4px)
}

div.div-warning {
  border-radius: 1rem 1rem 0rem 0rem;
  color: white;
  background-color: #e00000
}

div.div-header {
  margin-top: 3rem;
  border-radius: 1rem 1rem 0rem 0rem;
  background-color: white;
  box-shadow: 0 0.1rem 3rem rgba(0,0,0,.175)
}

div.div-footer {
  overflow: hidden;
  margin-bottom: 4rem;
  border-radius: 0rem 0rem 1rem 1rem;
  background-color: #002633;
  box-shadow: 0 1rem 3rem rgba(0,0,0,.175)
}

div.div-main {
  padding-bottom: 2rem;
  background-color: white
}

div.div-main > div > div {
  margin-bottom: 2rem
}

div.div-header > div:not(.div-nav), div.div-footer > div {
  padding: 0.75rem 0rem
}

div.div-title {
  padding: 0.25rem 0rem;
  text-align: center;
  color: #002633
}

@media (min-width:768px) {
  div.div-title {
  text-align: left
  }
}

div.div-title:before {
  content: "";
  top: -0.75rem;
  left: 0.75rem;
  position: relative;
  height: 1px;
  width: calc(100% - 1.5rem);
  background-color: #002633
}

div.div-nav {
  background-color: #005C7A;
  margin-bottom: 2rem
}

div.div-aside {
  display: flex;
  flex-wrap: wrap
}

figure.figure-download {
  display: flex;
  flex-direction: column;
  align-content: center;
  height: calc(100% - 2rem);
  justify-content: center;
  border: 1px solid #949494;
  padding: 1rem;
  padding-top: 2rem;
  text-align: center;
  position: relative;
  margin-bottom: 0;
  margin-top: 2rem
}

section:not(:last-child) {
  margin-bottom: 2rem
}

section.section-side {
  padding: 0.5rem;
  border: 1px solid #949494
}

section.section-side:first-of-type {
  margin-top: 2rem
}

@media (min-width: 768px) {
  section.section-side:first-of-type {
  margin-top: 0rem
  }
}

a {
  color: #00779E;
  font-size: 1rem;
  border-bottom: 4px solid transparent;
  text-decoration: none;
  font-weight: 700;
  cursor: pointer
}

body.dyslexic a {
  font-weight: 900
}

footer ul > li > a {
  display: block;
  padding: 0.25rem;
  width: 100%
}

a:hover:not(.a-img) {
  color: white!important;
  border-color: white!important;
  text-decoration: none!important;
  background-color: #595959!important
}

a:focus:not(.a-img) {
  background-color: #ffc107!important;
  text-decoration: none!important;
  outline: none!important;
  color: black!important;
  border-color: black!important
}

a.a-img {
  display: inline-block;
  border: 4px solid transparent;
  padding: 4px;
  outline: 4px solid transparent
}

a.a-img:hover {
  outline-color: white;
  border-color: #595959
}

a.a-img:focus {
  outline-color: #ffc107;
  border-color: black
}

footer a:not(.a-corner) {
  color: white
}

a.a-circle {
  border-radius: 50%;
  height: 3.5rem;
  width: 3.5rem;
  background-color: #00779E;
  font-size: 1.25rem;
  border: 4px solid transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0.5rem
}

a.a-corner {
  display: flex;
  align-items: center;
  font-size: 1.25rem;
  position: fixed;
  background-color: white;
  height: 3rem;
  z-index: 3000;
  min-width: 3.5rem;
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important
}

a.a-corner > span {
  display: none;
  font-size: 1rem
}

a.a-corner.a-left > span {
  margin-left: 1rem
}

a.a-corner.a-right > span {
  margin-right: 1rem
}

a.a-corner:hover > span, a.a-corner:focus > span {
  display: block
}

a.a-top {
  top: 0;
  border-top: 4px solid transparent;
  border-bottom: none
}

a.a-bottom {
  bottom: 0rem
}

a.a-left {
  left: 0;
  padding-left: 1rem;
  padding-right: 1.5rem
}

a.a-right {
  right: 0;
  padding-right: 1rem;
  padding-left: 1.5rem
}

a.a-top.a-left {
  border-radius: 0 0 3rem 0
}

a.a-top.a-right {
  border-radius: 0 0 0 3rem
}

a.a-bottom.a-left {
  border-radius: 0 3rem 0 0
}

a.a-tool {
  width: 100%;
  height: 100%;
  padding: 4px;
  border: none;
  color: white;
  display: block;
  font-size: 0.6rem
}

a.a-tool > span {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  justify-content: space-evenly;
  align-items: center;
  flex-direction: column;
  border: 4px solid transparent
}

a.a-tool:hover > span {
  border-color: white
}

a.a-tool:focus > span {
  border-color: black
}

a.a-landscape {
  padding: 0.5rem;
  position: relative
}

a.a-landscape:before {
  content: '';
  width: 100%;
  height: calc(100% + 5px);
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #949494
}

ul#nav-site-menu a.a-nav-home {
  padding: 0.5rem;
  width: 100%
}

@media (min-width: 768px) {
  ul#nav-site-menu a.a-nav-home {
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #949494
  }
}

h3.h3-home {
  text-align: center;
  position: relative;
  top: 1.5rem
}

@media (min-width: 768px) {
  h3.h3-home {
  text-align: left;
  margin-left: 15px
  }
}

h3.h3-home > a {
  padding: 0.5rem;
  background-color: white;
  position: relative;
  top: -0.8rem
}

kbd {
  background-color: #005C7A;
  color: white
}

ul, ol {
  font-size: 1rem;
  break-inside: avoid
}

ul.ul-warning {
  margin-bottom: 0rem;
  position: relative;
  left: -15px;
  font-size: 1.2632rem
}

ul.ul-nobullets, ol.ol-nobullets {
  list-style: none;
  padding-left: 0rem;
  margin-bottom: 0rem
}

p + ul.ul-text, p + ol.ol-text {
  margin-top: -1.25rem;
  margin-bottom: 2.25rem
}

ul.ul-text:last-child, ol.ol-text:last-child {
  margin-bottom: 0
}

ul.ul-tool {
  width: 100%
}

ul.ul-text > li:not(:first-child), ol.ol-text > li:not(:first-child) {
  margin-top: 0.5rem
}

li {
  max-width: 70ch;
  break-inside: avoid-column
}

li.li-warning:not(:first-child):before {
  content: "";
  left: calc(-2.14285714em + 15px);
  margin: 0.5rem 0rem;
  position: relative;
  display: inline-block;
  height: 1px;
  width: calc(100% + 2.14285714em);
  background-color: white
}

li.li-tool {
  width: 5rem;
  height: 5rem;
  margin: 15px
}

li.li-warning > span.fa-li {
  top: auto
}

ol#table-of-content {
  background-color: #F2F2F2;
  padding: 0.5rem;
  padding-left: 2rem;
  border: 1px solid #949494;
  column-count: 1;
  margin-bottom: 0;
  height: 100%
}

@media (min-width: 992px) {
  ol#table-of-content {
  column-count: 2;
  column-gap: 3rem
  }
}

ol#table-of-content > li > a {
  display: inline
}

ol.ol-landscape > li {
  display: inline;
  margin: 1px;
  border: 1px solid #949494
}

ol.ol-landscape > li > a {
  padding: 0.5rem;
  display: block
}

ul#nav-site-menu {
  display: flex;
  list-style: none;
  padding: 0;
  width: calc(100% + 30px);
  background-color: #F2F2F2;
  margin: -15px;
  margin-top: 0;
  border: 1px solid #949494
}

ul#nav-site-menu > li {
  width: 100%;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  position: relative
}

@media (min-width: 768px) {
  body:not(.-js-enabled) ul#nav-site-menu > li {
  align-content: flex-start
  }
}

@media (min-width: 768px) {
  ul#nav-site-menu > li:first-child {
  width: 20%
  }
}

@media (min-width: 768px) {
  ul#nav-site-menu {
  border-right: 0
  }
}

ul#nav-site-menu a.nav-a:not(.a-nav-home) {
  padding: 0.5rem;
  width: calc(100% - (0.5rem + 8px + 1.15rem))
}

ul#nav-site-menu a.nav-a.current-topic, ul#nav-site-menu a.sub-ul-a-nav.current-page {
  color: white;
  background-color: #005C7A
}

@media (min-width: 768px) {
  body:not(.-js-enabled) ul#nav-site-menu a.nav-a {
  height: 4rem
  }
}

@media (min-width: 768px) {
  body:not(.-js-enabled) ul#nav-site-menu a.nav-a:after {
  content: '';
  width: 100%;
  border-bottom: 1px solid #949494;
  position: absolute;
  left: 0;
  top: calc(4rem - 1px)
  }
}

ul.ul-nav-sub-ul {
  list-style: none;
  padding-left: 0;
  width: 100%
}

@media (min-width: 768px) {
  body.-js-enabled ul.ul-nav-sub-ul {
  position: absolute
  }
}

@media (min-width: 768px) {
  ul.ul-nav-sub-ul {
  top: calc(100% + 1px);
  width: calc(100% + 2px);
  left: 0;
  z-index: 3000
  }
}

@media (min-width: 768px) {
  body:not(.-js-enabled) ul.ul-nav-sub-ul {
  height: calc(100% - 5rem);
  border-left: 1px solid #949494
  }
}

@media (min-width: 768px) {
  body.-js-enabled ul.ul-nav-sub-ul:before {
  content: '';
  background-color: #F2F2F2;
  height: calc(100% + 1rem);
  width: 100%;
  z-index: -1;
  position: absolute;
  top: -0.5rem;
  left: -1px;
  border: 1px solid #949494;
  border-top: none
  }
}

ul.ul-nav-sub-ul a {
  padding: 0.5rem;
  padding-left: 1.5rem;
  display: block
}

@media (min-width: 768px) {
  ul.ul-nav-sub-ul a {
  padding-left: 0.5rem
  }
}

ul.ul-concepts {
  width: calc(100% - 2.14285714em)
}

@media (min-width: 768px) {
  ul.ul-concepts {
  width: calc(50% - 2.14285714em - 7px)
  }
}

@media (min-width: 768px) {
  ul.ul-concepts.ul-concepts-cans {
  column-count: 2;
  column-gap: calc(2.14285714em + 15px);
  width: calc(100% - 2.14285714em)
  }
}

li.db-result ul, li.db-result ol {
  padding: 0;
  width: 100%;
  list-style: none
}

li.db-result ul:not(.ul-text) > li, li.db-result ol > li {
  border: 1px solid black;
  display: inline-block;
  border-radius: 5rem;
  padding: 0rem 1rem;
  margin: 0.25rem
}

footer address {
  width: 100%
}

@media (min-width: 992px) {
  footer address {
  width: 8.5rem
  }
}

dt {
  font-size: 1rem
}

dd + dt {
  margin-top: 1rem
}

footer dl {
  margin: -0.5rem
}

dd {
  display: inline-block
}

dl#dl-page-summary {
  display: flex;
  justify-content: space-between;
  color: white
}

dl#dl-page-summary div {
  margin-bottom: 1rem
}

dl#dl-page-summary dt {
  font-size: 0.85rem
}

dl#dl-page-summary dd {
  font-size: 0.85rem;
  display: block
}

dl#dl-page-summary a {
  font-size: 0.85rem;
  color: white
}

dl.dl-glossary {
  border: 1px solid #949494;
  border-top: none;
  padding: 1rem
}

dl.dl-landscape {
  width: 100%;
  overflow: hidden;
  margin-top: 0rem;
  margin-bottom: 1rem
}

dl.dl-landscape:first-of-type {
  margin-top: 0
}

dt.dt-landscape {
  padding: 1rem 0 0 0;
  background-color: white;
  margin-top: 0;
  width: 100%;
  position: relative
}

dt.dt-landscape.lvl-0 {
  padding-left: 0
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-0 {
  padding-left: 0%;
  padding-right: 60%
  }
}

dt.dt-landscape.lvl-1 {
  padding-left: 10%
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-1 {
  padding-left: 20%;
  padding-right: 40%
  }
}

dt.dt-landscape.lvl-2 {
  padding-left: 20%
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-2 {
  padding-left: 40%;
  padding-right: 20%
  }
}

dt.dt-landscape.lvl-3 {
  padding-left: 30%
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-3 {
  padding-left: 60%;
  padding-right: 0%
  }
}

dd.dd-landscape.lvl-0 + dt.dt-landscape:not(.lvl-0),
                dd.dd-landscape.lvl-1 + dt.dt-landscape:not(.lvl-1),
                dd.dd-landscape.lvl-2 + dt.dt-landscape:not(.lvl-2),
                dd.dd-landscape.lvl-3 + dt.dt-landscape:not(.lvl-3) {
  padding-top: 3rem
}

dt.dt-landscape:not(.lvl-0):before {
  content: '';
  position: absolute;
  display: block;
  border-bottom: 1px solid black;
  border-left: 1px solid black;
  width: 10%;
  height: 9999rem;
  bottom: calc((100% - 1rem) / 2);
  pointer-events: none
}

dd.dd-landscape.lvl-0 + dt.dt-landscape:not(.lvl-0):before,
                dd.dd-landscape.lvl-1 + dt.dt-landscape:not(.lvl-1):before,
                dd.dd-landscape.lvl-2 + dt.dt-landscape:not(.lvl-2):before,
                dd.dd-landscape.lvl-3 + dt.dt-landscape:not(.lvl-3):before {
  bottom: calc((100% - 3rem) / 2)
}

dt.dt-landscape.lvl-1:before {
  left: 5%
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-1:before {
  left: 10%
  }
}

dt.dt-landscape.lvl-2:before {
  left: 15%
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-2:before {
  left: 30%
  }
}

dt.dt-landscape.lvl-3:before {
  left: 25%
}

@media (min-width: 768px) {
  dt.dt-landscape.lvl-3:before {
  left: 50%
  }
}

dd.dd-landscape {
  padding: 1rem;
  margin-bottom: 0;
  background-color: white;
  position: relative;
  top: -1px;
  width: 100%
}

dd.dd-landscape:before {
  content: '';
  position: absolute;
  top: -1px;
  right: 0;
  height: calc(100% + 2px);
  width: 100%;
  border: 1px solid #949494;
  z-index: -1
}

dd.dd-landscape.lvl-1 {
  padding-left: calc(10% + 1rem)
}

@media (min-width: 768px) {
  dd.dd-landscape.lvl-1 {
  padding-left: calc(20% + 1rem)
  }
}

dd.dd-landscape.lvl-1:before {
  width: 90%
}

@media (min-width: 768px) {
  dd.dd-landscape.lvl-1:before {
  width: 80%
  }
}

dd.dd-landscape.lvl-2 {
  padding-left: calc(20% + 1rem)
}

@media (min-width: 768px) {
  dd.dd-landscape.lvl-2 {
  padding-left: calc(40% + 1rem)
  }
}

dd.dd-landscape.lvl-2:before {
  width: 80%
}

@media (min-width: 768px) {
  dd.dd-landscape.lvl-2:before {
  width: 60%
  }
}

dd.dd-landscape.lvl-3 {
  padding-left: calc(30% + 1rem)
}

@media (min-width: 768px) {
  dd.dd-landscape.lvl-3 {
  padding-left: calc(60% + 1rem)
  }
}

dd.dd-landscape.lvl-3:before {
  width: 70%
}

@media (min-width: 768px) {
  dd.dd-landscape.lvl-3:before {
  width: 40%
  }
}

dt.dt-concepts.d-none + dd.dd-concepts {
  display: none
}

dd.dd-concepts {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

dl.process-legend {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  border: 1px solid #949494;
  padding: 0.5rem
}

@media (min-width: 992px) {
  dl.process-legend {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: stretch;
  justify-content: space-between
  }
}

dt.dt-legend {
  width: 50%;
  margin-top: 0
}

@media (min-width: 992px) {
  dt.dt-legend {
  width: 25%
  }
}

dt.dt-legend > dfn, .dl-process-type {
  padding: 0.2rem 0.5rem;
  border-radius: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.3rem
}

.dl-process-type {
  border: 1px solid #949494;
  display: inline-flex;
  margin-right: 1rem;
  margin-top: 0
}

dt.dt-legend + dd {
  width: 100%
}

@media (min-width: 992px) {
  dt.dt-legend + dd {
  width: 65%
  }
}

dt.entry > dfn, .dl-process-type.entry {
  background-color: #66D9FF;
  color: black
}

dt.assessment > dfn, .dl-process-type.assessment {
  background-color: #0099cc;
  color: white
}

dt.decision > dfn, .dl-process-type.decision {
  background-color: #00779E;
  color: white
}

dt.outcome > dfn, .dl-process-type.outcome {
  background-color: #002633;
  color: white
}

dl.dl-process {
  padding: 0.5rem;
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  margin-bottom: 0
}

@media (min-width: 768px) {
  dl.dl-process {
  padding-left: 0.5rem
  }
}

dl.dl-process-white {
  background-color: white
}

dl.dl-process-grey {
  background-color: #F2F2F2
}

dl.dl-process > dt {
  position: relative;
  width: 100%
}

dl.dl-process > dt:last-of-type button {
  margin-bottom: 0
}

dd > dl.dl-process > dt:before {
  content: '';
  position: absolute;
  border-left: 1px solid black;
  border-bottom: 1px solid black;
  width: 0.5rem;
  height: 99999rem;
  bottom: 50%;
  left: -0.5rem
}

@media (min-width: 768px) {
  dd > dl.dl-process > dt:before {
  width: 1.5rem;
  left: -1.5rem
  }
}

dl.dl-process > dd {
  padding: 0.5rem;
  padding-top: 1rem;
  padding-left: 1rem;
  overflow: hidden;
  width: 100%;
  padding-right: 0;
  margin-bottom: 0;
  padding-bottom: 0
}

@media (min-width: 768px) {
  dl.dl-process > dd {
  padding-left: 2rem
  }
}

button {
  font-size: 1rem;
  background-color: #005C7A;
  color: white;
  position: relative;
  padding: 4px;
  font-weight: 400;
  border: none;
  cursor: default!important;
  text-align: left
}

button[disabled] {
  background-color: #F2F2F2;
  color: #4F4F4F
}

button.button-accordian {
  background-color: white;
  color: #005C7A;
  border: 1px solid #949494;
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center
}

button.button-accordian[aria-expanded='false'] {
  margin-bottom: 0.5rem
}

button:not([disabled])[aria-expanded='true'] {
  background-color: #66D9FF;
  color: black
}

button > * {
  border: 4px solid transparent;
  padding: 0.25rem;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between
}

button:not([disabled]):hover, button:not([disabled]):focus {
  outline: none;
  border-radius: 0rem;
  border-color: transparent;
  box-shadow: none !important
}

button:not([disabled]):hover {
  color: white
}

button:not([disabled]):hover {
  background-color: #595959
}

button:not([disabled]):focus {
  background-color: #ffc107
}

button:not([disabled]):hover > * {
  border-color: white
}

button:not([disabled]):focus > * {
  border-color: black;
  color: black
}

button.reset-form {
  margin: 1.5rem 0rem;
  width: 100%
}

h3 > button.button-accordian[aria-expanded='false'] {
  margin-bottom: 0rem
}

h3 > button.button-accordian[aria-expanded='true'] {
  margin-bottom: 1rem
}

button.dt-button {
  padding: 4px;
  margin-bottom: 0
}

button.dt-button > * {
  width: calc(100% - 30px);
  margin-left: 30px
}

@media (min-width: 768px) {
  button.dt-button > * {
  width: calc(100% - 50px);
  margin-left: 50px
  }
}

button.dt-button:before {
  content: '';
  height: calc(100% + 2px);
  width: 30px;
  top: -1px;
  left: -1px;
  position: absolute;
  border: 1px solid #949494
}

@media (min-width: 768px) {
  button.dt-button:before {
  width: 50px
  }
}

button.dt-button[aria-expanded='true'] {
  border-bottom-color: transparent
}

button.button-accordian[aria-expanded='false'].dt-button {
  margin-bottom: 0
}

button.button-nav[aria-expanded] {
  margin-bottom: 0;
  width: calc(0.5rem + 8px + 1.15rem)
}

button.button-nav {
  border-right: 0;
  border-bottom: 0
}

button.button-nav[aria-expanded='true'] {
  border-bottom: 1px solid #949494
}

@media (min-width: 768px) {
  button.button-nav {
  border-top: 0;
  border-bottom: 0;
  border-right: 1px solid #949494
  }
}

button.button-nav > * {
  position: absolute;
  top: 4px;
  left: 4px;
  width: calc(100% - 8px);
  height: calc(100% - 8px)
}

button.button-accordian span:not(.sr-only) + i.i-accordian {
  margin-left: 0.5rem
}

button.button-accordian i.i-accordian:before {
  content: '\f107'
}

button.button-accordian[aria-expanded='true'] i.i-accordian:before {
  content: '\f106'
}

button.button-accordian[disabled] i.i-accordian {
  visibility: hidden
}

p > i.fa-exclamation-circle {
  margin-right: 0.5rem;
  color: #e00000
}

i.i-download {
  font-size: 3rem;
  padding: 0.5rem;
  color: #008000;
  background-color: white;
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%)
}

i.i-tool {
  font-size: 1.5rem
}

i.fa-times-circle {
  color: #e00000
}

i.fa-check-circle {
  color: #008000
}

span.span-input-hint {
  display: block;
  color: #595959
}

span.n-checked {
  color: white;
  border-radius: 0.25rem;
  background-color: #e00000;
  width: 1.45rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 1.45rem;
  height: 1.45rem;
  float: right;
  font-size: 1.2632rem
}

span.n-checked:empty {
  display: none
}

input.form-control {
  outline-offset: 0px;
  border: 1px solid #005C7A;
  height: auto;
  padding: 0.75rem;
  padding-left: calc(0.75rem + 3px);
  padding-right: calc(0.75rem + 3px);
  transition: none;
  margin-top: 3px;
  max-width: 30rem
}

input.form-control:hover {
  outline: 4px solid #595959 !important;
  border-color: white;
  border-radius: 0rem
}

input.form-control:focus {
  outline: 4px solid #ffc107 !important;
  border: 4px solid black;
  border-radius: 0rem;
  box-shadow: none;
  margin-top: 0;
  padding-left: 0.75rem;
  padding-right: 0.75rem
}

input.form-control:not(:valid) {
  background-color: #FFF7DB
}

form input:not([type=checkbox]):last-of-type {
  margin-bottom: 3px
}

fieldset input:not([type=checkbox]):not(:last-of-type) {
  margin-bottom: calc(1rem + 3px)
}

fieldset input:not([type=checkbox]):focus {
  margin-bottom: 1rem
}

fieldset input:not([type=checkbox]):last-of-type:focus {
  margin-bottom: 0
}

input[type=checkbox] {
  width: 48px;
  height: 48px;
  opacity: 0;
  z-index: -1;
  position: absolute;
  margin-right: 0.5rem
}

input[type=checkbox] + label {
  display: flex;
  align-items: center
}

input[type=checkbox] + label:before {
  content: '';
  color: #008000;
  font: 30px FontAwesome;
  position: relative;
  left: 0px;
  margin-right: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 2px solid black;
  flex-shrink: 0
}

input[type=checkbox]:hover + label:before {
  box-shadow: 0 0 0 4px #595959
}

input[type=checkbox]:focus + label:before {
  box-shadow: 0 0 0 4px #ffc107;
  border: 4px solid black
}

input[type=checkbox]:checked + label:before {
  content: '\f14a'
}

input[type=radio] + label {
  border: 1px solid #949494;
  padding: 4px;
  border-radius: 0.3rem 0.3rem 0 0;
  border-bottom: none;
  padding-bottom: calc(6px);
  margin-bottom: -2px;
  display: inline-flex
}

input[type=radio]:checked + label {
  background-color: white
}

input[type=radio]:checked + label:after {
  background-color: white;
  content: '';
  position: relative
}

input[type=radio]:not(:checked) + label {
  background-color: #F2F2F2;
  padding-bottom: 4px
}

input[type=radio]:hover + label {
  background-color: #595959
}

input[type=radio]:focus + label {
  background-color: #ffc107
}

input[type=radio] + label > span {
  border: 4px solid transparent;
  padding: 0.5rem
}

input[type=radio]:hover + label > span {
  border-color: white;
  color: white
}

input[type=radio]:focus + label > span {
  border-color: black;
  color: black
}

input[type=radio].input-concept + label > span {
  border: 2px solid transparent;
  padding: 0.25rem;
  border-radius: 2rem
}

input[type=radio].input-concept + label {
  border-radius: 2rem;
  padding: 0.25rem;
  padding-bottom: 0.25rem;
  border: 1px solid #00779E;
  margin: 0.25rem
}

input[type=radio].input-concept:not(:checked) + label {
  background-color: white
}

input[type=radio].input-concept:checked + label {
  background-color: #00779E;
  color: white
}

input[type=radio].input-concept:hover + label {
  background-color: #595959;
  color: white;
  border-color: #949494
}

input[type=radio].input-concept:hover + label > span {
  border-color: white
}

input[type=radio].input-concept:focus + label {
  background-color: #ffc107;
  color: black;
  border-color: black
}

input[type=radio].input-concept:focus + label > span {
  border-color: black
}

input[type=checkbox].country-tab + label {
  display: inline-flex;
  width: 100%
}

@media (min-width: 576px) {
  input[type=checkbox].country-tab + label {
  width: 45%
  }
}

@media (min-width: 768px) {
  input[type=checkbox].country-tab + label {
  width: 22.5%
  }
}

input[type=checkbox].country-tab + label:before {
  content: '\f14a';
  color: transparent
}

input[type=checkbox].country-tab:checked + label:before {
  color: #008000
}

select {
  margin: 3px;
  padding: 0.5rem;
  outline-offset: 0px;
  font-size: 1rem
}

select:hover {
  outline: 4px solid #595959 !important;
  border: 4px solid white;
  margin: 0
}

select:focus {
  margin: 0;
  outline: 4px solid #ffc107 !important;
  border: 4px solid black
}

@media (min-width: 768px) {
  select {
  margin: 3px calc(0.5rem + 3px)
  }
}

@media (min-width: 768px) {
  select:hover, select:focus {
  margin: 0px 0.5rem
  }
}

label {
  font-size: 1rem
}

img {
  width: 100%
}

img.gss-logo {
  max-width: 100%;
  height: 100%;
  padding: 0rem
}

@media (min-width: 576px) {
  img.gss-logo {
  padding: 0rem 2rem
  }
}

@media (min-width: 768px) {
  img.gss-logo {
  max-width: 200px;
  padding: 0rem
  }
}

img.ogl-logo {
  max-height: 3.5rem;
  width: auto;
  position: relative;
  left: -9px;
  margin-right: 1rem;
  margin-bottom: 1rem
}

.gc-max-height {
  max-height: 15rem;
  overflow-y: scroll
}

.col-12 {
  flex: auto;
  -ms-flex: auto
}

@media (min-width: 768px) {
  .w-md-auto {
  width: auto!important
  }
}

.gc-hap {
  color: white;
  background-color: #008080
}

.gc-e {
  color: white;
  background-color: black
}

.gc-asc {
  color: white;
  background-color: #A36200
}

.gc-hac {
  color: white;
  background-color: #00852C
}

.gc-h {
  color: white;
  background-color: #CC00CC
}

.gc-caj {
  color: white;
  background-color: #0066ff
}

.gc-iae {
  color: white;
  background-color: #47476B
}

.gc-m {
  color: white;
  background-color: #DC143C
}

.r--90 {
  transform: rotate(-90deg)
}

.r-90 {
  transform: rotate(90deg)
}

.gc-c-0:before {
  background-color: #ccf3ff
}

.gc-c-1:before {
  background-color: #66D9FF
}

.gc-c-2:before {
  background-color: #0099cc
}

.gc-c-3:before {
  background-color: #00779E
}

.gc-c-4:before {
  background-color: #002633
}

.gc-tab-panel {
  border: 1px solid #949494;
  padding: 0.5rem;
  width: 100%
}

p {
  max-width: 70ch;
  font-size: 1rem
}

p:not(:last-child) {
  margin-bottom: 2.25rem
}

li.db-result p:not(:last-child) {
  margin-bottom: 1rem
}

p:last-child {
  margin-bottom: 0rem
}

p.p-warning {
  padding: 0.5rem;
  border: 1px solid #e00000;
  border-left: 15px solid #e00000
}

p#number-of-results {
  font-size: 2rem;
  line-height: 2rem;
  border-bottom: 1px solid #005C7A;
  position: absolute;
  top: 0;
  width: 100%;
  padding-bottom: 0.65rem
}

@media (min-width: 768px) {
  p#number-of-results {
  margin-top: 1rem
  }
}

@media (min-width: 992px) {
  p#number-of-results {
  margin-top: 0rem;
  width: calc(100% - 15px)
  }
}

p#number-of-results > span {
  font-size: 3rem;
  font-weight: 700;
  color: #005C7A
}

dfn {
  position: relative;
  font-style: normal
}

dfn:hover > abbr[title] {
  background-color: #595959;
  color: white;
  border-color: white;
  text-decoration: none
}

abbr[title]:focus {
  background-color: #ffc107!important;
  color: black!important;
  border-color: black!important;
  text-decoration: none;
  outline: none
}

abbr[data-original-title], abbr[title] {
  border-bottom: 4px solid transparent;
  display: inline-flex;
  justify-content: center;
  align-items: center
}

abbr[title]:hover:after, abbr[title]:focus:after {
  content: attr(title);
  white-space: pre-wrap;
  display: block;
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  top: 2.5rem;
  z-index: 3000;
  text-align: left;
  width: auto;
  background-color: #005C7A;
  color: white;
  border-radius: 3px;
  padding: 0.5rem
}

abbr[title]:hover:before, abbr[title]:focus:before {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  top: 2rem;
  width: 1rem;
  height: 1rem;
  background-color: #005C7A;
  transform: rotate(45deg)
}

fieldset.fieldset-tab-controls {
  z-index: 1
}

form h5 {
  font-size: 1rem;
  margin: 1rem 0rem
}

fieldset > legend {
  font-size: 1.2632rem
}

fieldset.accordian > legend {
  margin-bottom: 0
}

fieldset.accordian > div {
  margin-bottom: 1rem;
  padding: 0.5rem;
  border: 1px solid #949494;
  border-top: none;
  position: relative
}

@media (min-width: 992px) {
  section#statistics-database > section:first-of-type, section#question-bank-tab > section:first-of-type {
  border-right: 1px solid #00779E;
  padding-right: 15px
  }
}

@media (min-width: 992px) {
  section#statistics-database > div:last-of-type, section#question-bank-tab > div:last-of-type {
  padding-left: 15px
  }
}

body:not(.-js-enabled) section#statistics-database > div:last-of-type {
  max-width: 100%;
  flex: 0 0 100%;
  padding-left: 0
}

section#database-results > ul > li {
  display: grid;
  grid-template-columns: 1fr 130px;
  grid-template-rows: auto auto auto auto;
  flex-direction: column;
  grid-gap: 0.5rem;
  padding-top: 1rem;
  border-top: 1px solid #00779E
}

@media (max-width: 991.98px) {
  section#database-results > ul > li {
  grid-template-columns: 1fr 1fr
  }
}

section#database-results > ul > li > p {
  grid-column: 1
}

@media (max-width: 991.98px) {
  section#database-results > ul > li > p {
  grid-column-end: 3
  }
}

section#database-results > ul > li > h4 {
  font-size: 1.2rem;
  grid-column: 1
}

@media (max-width: 991.98px) {
  section#database-results > ul > li > h4 {
  grid-column-end: 3
  }
}

section#database-results > ul > li > a {
  flex-direction: column;
  align-items: center;
  background-color: #005C7A;
  color: white;
  font-weight: 400;
  padding: 0.5rem;
  border: none;
  align-self: flex-start;
  display: flex
}

@media (min-width: 992px) {
  section#database-results > ul > li > a {
  grid-column: 2;
  grid-row: 2
  }
}

@media (min-width: 992px) {
  section#database-results > ul > li > a:first-of-type {
  grid-row: 1
  }
}

@media (max-width: 992px) {
  section#database-results > ul > li > a:first-of-type {
  grid-column: 1
  }
}

section#database-results > ul > li > button {
  align-self: flex-start;
  width: auto;
  margin-bottom: 1rem;
  grid-column: 2
}

@media (max-width: 992px) {
  section#database-results > ul > li > button {
  grid-column-start: 1;
  grid-column-end: 3
  }
}

section#database-results > ul > li > dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
  grid-column: 1
}

@media (max-width: 991.98px) {
  section#database-results > ul > li > dl {
  grid-column-end: 3
  }
}

section#database-results > ul > li > dl > div {
  margin-bottom: 1rem;
  width: 100%
}

@media (min-width: 768px) {
  section#database-results > ul > li > dl > div {
  width: 47.5%
  }
}

section#database-results dd {
  margin-bottom: 0
}

dl#database-active-filters {
  border: 1px solid #949494;
  border-top: none;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0
}

dl#database-active-filters:empty:before {
  content: 'No filters have been selected';
  padding: 0.5rem;
  font-size: 1rem
}

dl#database-active-filters dt {
  margin: 0 0.5rem -0.5rem 0.5rem;
  width: 100%;
  padding: 0.5rem 0rem
}

dl#database-active-filters dt:not(:first-of-type) {
  border-top: 1px solid #949494
}

dl#database-active-filters dd {
  margin: 0.5rem
}

section#database-results dl > dd span > span:last-child {
  margin-left: 0.5rem
}

nav.nav-pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 0;
  border-top: 3px solid #00779E;
  border-bottom: 3px solid #00779E
}

nav.nav-pagination button:first-child > span > span {
  margin-left: 0.5rem
}

nav.nav-pagination button:last-child > span > span {
  margin-right: 0.5rem
}

nav.nav-pagination label {
  margin-bottom: 0
}

nav#database-menu {
  margin-top: 4rem;
  margin-bottom: -1rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

@media (min-width: 768px) and (max-width: 991.98px) {
  nav#database-menu {
  margin-top: 5rem
  }
}

nav#database-menu p {
  padding-top: calc(0.25rem + 8px);
  padding-bottom: calc(0.25rem + 8px);
  margin-bottom: 0
}

nav#database-menu label {
  width: 100%;
  margin-bottom: 0
}

@media (min-width: 992px) {
  nav#database-menu label {
  width: auto
  }
}

nav#database-menu div {
  width: 100%
}

@media (min-width: 576px) and (max-width: 991.98px) {
  nav#database-menu div {
  width: 45%
  }
}

nav#database-menu div:not(:last-child) {
  margin-bottom: 1rem
}
