html {
  font-family: "Nunito Sans";
  font-variation-settings: 'YTLC' 520;
  hyphens: auto;
  width: 100%;
  min-height: 100%;
  text-align: justify;
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

h1 {
  text-align: start;
  font-size: 2em;
}

h2 {
  text-align: start;
  font-size: 1.8em;
}

h3 {
  text-align: start;
  font-size: 1.6em;
}

h4 {
  text-align: start;
  font-size: 1.4em;
}

h5 {
  text-align: start;
  font-size: 1.2em;
}

h6 {
  text-align: start;
  font-size: 1em;
}

dt {
  font-weight: bolder;
}

dd {
  margin-left: 1em;
}

dfn, abbr {
  font-variant: small-caps;
  font-style: normal;
  font-weight: 500;
}

a[href] {
  text-decoration-color: transparent;
  transition: text-decoration-color 0.25s;
  color: #002d6e;
}

a[href]:hover {
  text-decoration-color: #0070fa;
}

a[href]:active {
  color: #680007;
}

a[href]:active:hover {
  text-decoration-color: #ef001f;
}

a[href]:visited {
  color: #580063;
}

a[href]:visited:hover {
  text-decoration-color: #cd00e2;
}

a[href^="http:"]::after, a[href^="https:"]::after, a[href^="//"]::after {
  font-family: "FontAwesome";
  content: "\202f\f08e";
  vertical-align: middle;
}

a[href*="methodandstructure.com/"]::after {
  content: unset;
}

@media screen {
  html {
    font-size: calc(10pt + 0.390625vw);
  }
  details summary {
    opacity: 0.5;
    transition: opacity 0.25s;
  }
  details summary:hover {
    opacity: 1;
  }
  body {
    border: none;
    margin: auto;
    padding: 0 1em;
    max-width: 70em;
    min-height: 100vh;
    display: grid;
    grid-template-rows: 20em auto 10em;
  }
  body hr {
    border: 1px solid currentColor;
    flex: 0 0 0;
    margin: 2em 0;
  }
  body > header {
    grid-row: 1;
    display: flex;
    align-items: center;
    font-size: 200%;
    font-weight: bolder;
  }
  body > header > img:first-of-type {
    display: block;
    width: auto;
    max-height: 10em;
  }
  body > main {
    grid-row: 2;
    overflow: auto;
  }
  body > main > section > * {
    flex: 0 0 100%;
    column-width: 33em;
    column-gap: 3em;
  }
  body > main > section p:first-child {
    margin-top: 0;
  }
  body > main > section > div[role="region"] {
    column-width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 3em;
  }
  body > main > section > div[role="region"] > section {
    flex: 1.5 1 20em;
    column-width: auto;
    max-width: 20em;
  }
  body > main > section > div[role="region"] > section ul {
    padding-left: 1em;
  }
  body > footer {
    grid-row: 3;
    margin: auto;
    max-width: fit-content;
    text-align: center;
  }
}

@media screen and (max-width: 1024px) {
  h1, h2, h3, h4, h5, h6 {
    text-wrap: normal;
  }
  body {
    display: block;
  }
  body > header {
    font-size: 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
  }
}

@media screen and (min-width: 1024px) {
  body[typeof~="bibo:LegalDocument"] article, body[typeof~="bibo:LegalDocument"] section {
    display: grid;
    grid-template-columns: 20ex 70ex 30ex;
  }
  body[typeof~="bibo:LegalDocument"] article > *, body[typeof~="bibo:LegalDocument"] section > * {
    grid-column: 2;
  }
  body[typeof~="bibo:LegalDocument"] article > div, body[typeof~="bibo:LegalDocument"] article section, body[typeof~="bibo:LegalDocument"] section > div, body[typeof~="bibo:LegalDocument"] section section {
    grid-column: 1 / 4;
  }
  body[typeof~="bibo:LegalDocument"] article > div, body[typeof~="bibo:LegalDocument"] section > div {
    display: grid;
    grid-template-columns: 20ex 70ex 30ex;
  }
  body[typeof~="bibo:LegalDocument"] article > div > *, body[typeof~="bibo:LegalDocument"] section > div > * {
    grid-column: 2;
  }
  body[typeof~="bibo:LegalDocument"] article aside[role="note"], body[typeof~="bibo:LegalDocument"] article figure[role="note"], body[typeof~="bibo:LegalDocument"] section aside[role="note"], body[typeof~="bibo:LegalDocument"] section figure[role="note"] {
    grid-column: 3;
    margin: 0 1em;
    font-size: 75%;
  }
  body[typeof~="bibo:LegalDocument"] article figure[role="note"] > video, body[typeof~="bibo:LegalDocument"] section figure[role="note"] > video {
    display: block;
    max-width: 100%;
    object-fit: contain;
  }
  body[typeof~="bibo:LegalDocument"] section[typeof~="skos:ConceptScheme"] > section, body[typeof~="bibo:LegalDocument"] section[typeof~="skos:Collection"] > section, body[typeof~="bibo:LegalDocument"] section[typeof~="skos:OrderedCollection"] > section {
    grid-column: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 0 1em;
  }
  body[typeof~="bibo:LegalDocument"] section[typeof~="skos:ConceptScheme"] > section section, body[typeof~="bibo:LegalDocument"] section[typeof~="skos:Collection"] > section section, body[typeof~="bibo:LegalDocument"] section[typeof~="skos:OrderedCollection"] > section section {
    display: block;
  }
  body[typeof~="bibo:LegalDocument"] section[typeof~="skos:ConceptScheme"] > section > *, body[typeof~="bibo:LegalDocument"] section[typeof~="skos:Collection"] > section > *, body[typeof~="bibo:LegalDocument"] section[typeof~="skos:OrderedCollection"] > section > * {
    flex: 1 1 30ex;
  }
}
