@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-Regular.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-Italic.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-Medium.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-MediumItalic.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-Semibold.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: italic;
    font-weight: 600;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-SemiboldItalic.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-Bold.woff") format("woff")
}

@font-face {
    font-family: 'Lato';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url("assets/fonts/LatoLatin-BoldItalic.woff") format("woff")
}

@font-face {
    font-family: "FontAwesome6Pro-Light";
    src: url("assets/fonts/Font Awesome 6 Pro-Light-300.otf") format("opentype")
}

@font-face {
    font-family: "Lato-Black";
    src: url("assets/fonts/Lato-Black.ttf") format("truetype")
}

@font-face {
    font-family: "Lato-Bold";
    src: url("assets/fonts/Lato-Bold.ttf") format("truetype")
}

@font-face {
    font-family: "Lato-Light";
    src: url("assets/fonts/Lato-Light.ttf") format("truetype")
}

@font-face {
    font-family: "Lato-LightItalic";
    src: url("assets/fonts/Lato-LightItalic.ttf") format("truetype")
}

@font-face {
    font-family: "Lato-Regular";
    src: url("assets/fonts/Lato-Regular.ttf") format("truetype")
}

@font-face {
    font-family: "Lato-Thin";
    src: url("assets/fonts/Lato-Thin.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-Black";
    src: url("assets/fonts/MPLUS1p-Black.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-Bold";
    src: url("assets/fonts/MPLUS1p-Bold.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-ExtraBold";
    src: url("assets/fonts/MPLUS1p-ExtraBold.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-Light";
    src: url("assets/fonts/MPLUS1p-Light.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-Medium";
    src: url("assets/fonts/MPLUS1p-Medium.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-Regular";
    src: url("assets/fonts/MPLUS1p-Regular.ttf") format("truetype")
}

@font-face {
    font-family: "MPLUS1p-Thin";
    src: url("assets/fonts/MPLUS1p-Thin.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Black";
    src: url("assets/fonts/MPLUSRounded1c-Black.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Bold";
    src: url("assets/fonts/MPLUSRounded1c-Bold.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-ExtraBold";
    src: url("assets/fonts/MPLUSRounded1c-ExtraBold.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Light";
    src: url("assets/fonts/MPLUSRounded1c-Light.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Medium";
    src: url("assets/fonts/MPLUSRounded1c-Medium.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Regular";
    src: url("assets/fonts/MPLUSRounded1c-Regular.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Thin";
    src: url("assets/fonts/MPLUSRounded1c-Thin.ttf") format("truetype")
}

@font-face {
    font-family: "RoundedMplus1c-Black";
    src: url("assets/fonts/MPLUS1p-Black.ttf") format("truetype")
}

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: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

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
}

.wrapper {
    background-color: #F9F8F7;
    overflow-x: hidden
}

.content {
    clear: none;
    padding: 0 1rem;
    margin: 0 auto 1.6em auto;
    max-width: 50rem
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

html {
    box-sizing: border-box
}

*,
*:before,
*:after {
    box-sizing: inherit
}

body {
    margin: 0;
    padding: 0;
    color: #000;
    background-color: #44375B;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 1.2em;
    line-height: 1.6em;
    overflow-x: hidden
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 1.2em;
    font-weight: bold;
    line-height: 1.6em;
    page-break-after: avoid;
    margin: 1.6em 0 0 0
}

h1 {
    font-size: 2.4em;
    line-height: 1;
    margin: 1.6em 0
}

@media only screen and (min-width: 900px) {
    h1 {
        font-size: 3.6em
    }
}

h2 {
    font-size: 1.8em;
    line-height: 1;
    margin: 3.2em 0 1.6em 0
}

h4 {
    font-style: italic;
    font-weight: inherit
}

h5 {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-style: italic;
    font-weight: inherit
}

h6 {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-weight: inherit
}

p {
    margin: 0
}

p+p {
    text-indent: 1em
}

ol,
ul {
    list-style-position: outside;
    margin: 0 0 1.6em 1em
}

ol {
    list-style-type: decimal
}

ul {
    list-style-type: disc
}

ul ul,
ol ol,
blockquote ul ul,
blockquote ol ol {
    margin-bottom: 0
}

ol ol {
    list-style-type: lower-alpha
}

blockquote {
    margin: 1.6em 0;
    padding: 0 1em
}

blockquote p:first-of-type {
    text-indent: 0
}

blockquote p:last-child,
blockquote ol:last-child,
blockquote ul:last-child {
    margin-bottom: 0
}

dl {
    margin: 1.6em 0
}

dt {
    font-weight: bold
}

dd {
    margin: 0 0 1.6em 0
}

hr {
    border: 0;
    margin: 1.6em auto;
    text-align: center
}

hr:after {
    content: ""
}

hr+p {
    text-indent: 0
}

sup,
sub {
    line-height: 100%;
    font-size: .7em
}

sup {
    vertical-align: super
}

sub {
    vertical-align: sub
}

a {
    color: #A33347
}

em {
    font-style: italic
}

strong {
    font-weight: bold
}

input[type="text"],
textarea {
    padding: 0.75em 0.75em;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    color: inherit;
    border: 1.5px solid #999;
    display: block;
    margin: 1.6em 0;
    width: 100%;
    box-sizing: border-box
}

input[type="text"][type="submit"],
textarea[type="submit"] {
    width: auto
}

select {
    padding: 0.75em 0.75em;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    color: inherit;
    border: 1.5px solid #999;
    margin: 1.6em 0;
    box-sizing: border-box
}

p>select,
li>select,
dd>select,
td>select,
th>select,
span>select {
    font-family: inherit;
    line-height: 1;
    margin: 0;
    padding: 0
}

textarea {
    min-height: 4.8em
}

p img:only-child {
    margin: 1.6em auto;
    display: block
}

p,
p+p {
    margin-bottom: 1.6em;
    text-indent: 0
}

.masthead {
    background-color: #EEECE8;
    border-bottom: 1.5px solid #AEA793;
    color: #A33347;
    font-family: "Lato", Roboto, Arial, sans-serif;
    text-align: left
}

.masthead:after {
    content: "";
    display: block;
    clear: both
}

.masthead a {
    color: #A33347;
    text-decoration: none
}

.masthead .masthead-logo {
    display: inline-block;
    margin-right: 0.5rem;
    margin-left: 0.5rem;
    max-height: 5rem;
    vertical-align: middle;
    width: 2.5rem;
    width: 14.5rem
}

.masthead .masthead-logo img {
    max-height: 5rem;
    max-width: 100%;
    vertical-align: middle
}

.masthead .masthead-logo svg {
    vertical-align: middle
}

.masthead ul {
    display: inline-block;
    vertical-align: middle;
    list-style-type: none;
    margin: 0 auto;
    padding: 0.5rem 0.5rem 0.5rem 0;
    text-align: left;
    min-height: 5rem
}

.masthead ul li {
    display: none;
    vertical-align: middle
}

@media only screen and (min-width: 600px) {
    .masthead ul li {
        align-items: center;
        display: inline-flex;
        margin: 0 0.25em 0 0
    }

    .masthead ul li:after {
        content: "•";
        color: #A33347;
        margin-left: 0.5em
    }

    .masthead ul li:last-of-type:after {
        content: normal
    }
}

.nav-buttons {
    align-items: flex-end;
    display: flex;
    position: absolute;
    top: 0;
    margin: 0;
    left: 0
}

.nav-back-button {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    color: #A33347;
    background-color: #EEECE8;
    border: 1.5px solid #ccc;
    border-radius: .1rem;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    margin: 0.5rem 0 0.5rem 0.5rem;
    display: none
}

[href="#nav"] {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    color: #A33347;
    background-color: #EEECE8;
    border: 1.5px solid #ccc;
    border-radius: .1rem;
    padding: 0.25rem 0.5rem;
    text-decoration: none;
    margin: 0.5rem
}

.js-nav-open [href="#nav"] {
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5)
}

.nav-buttons {
    position: fixed;
    z-index: 1
}

.js-nav-open [href="#nav"] {
    z-index: inherit
}

.visuallyhidden {
    position: fixed
}

#nav {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: .8em;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    background-color: #F9F8F7;
    border-top: 1.5px solid #AEA793
}

.js-nav-open #nav {
    overflow-y: auto
}

.js-nav #nav {
    border-top: none;
    border-right: 1.5px solid #AEA793;
    max-width: 30rem;
    position: absolute;
    top: 0;
    left: 0
}

.js-nav #nav {
    position: fixed;
    z-index: 2
}

#nav .search {
    background-color: #F9F8F7
}

#nav .search input {
    width: 90%;
    padding: 0.75rem 1rem;
    border: 0;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    overflow-x: hidden;
    background-color: #F9F8F7
}

#nav .nav-list ol,
#nav .nav-list ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    background-color: #F9F8F7
}

#nav .nav-list ol li,
#nav .nav-list ul li {
    padding: 0;
    width: 100%;
    color: #44375B
}

#nav .nav-list ol li a,
#nav .nav-list ul li a {
    display: inline-block;
    width: 100%;
    padding: 0 1.5rem 0 1rem;
    color: #44375B;
    text-decoration: none
}

#nav .nav-list ol li a:hover,
#nav .nav-list ol li a:focus,
#nav .nav-list ol li a:active,
#nav .nav-list ul li a:hover,
#nav .nav-list ul li a:focus,
#nav .nav-list ul li a:active {
    color: inherit
}

#nav .nav-list ol li:hover,
#nav .nav-list ol li:focus,
#nav .nav-list ol li:active,
#nav .nav-list ul li:hover,
#nav .nav-list ul li:focus,
#nav .nav-list ul li:active {
    color: #A33347;
    background-color: #F9F8F7
}

#nav .nav-list ol li.active,
#nav .nav-list ul li.active {
    background-color: #F9F8F7
}

#nav .nav-list ol li.active a,
#nav .nav-list ul li.active a {
    color: #6B549E
}

#nav .nav-list ol li.active li a,
#nav .nav-list ul li.active li a {
    color: #6B549E
}

#nav .nav-list ol ol,
#nav .nav-list ol ul,
#nav .nav-list ul ol,
#nav .nav-list ul ul {
    max-height: none;
    transition: max-height 0.5s ease-out;
    background-color: #F9F8F7;
    overflow-x: hidden;
    overflow-y: hidden
}

#nav .nav-list ol ol li a,
#nav .nav-list ol ul li a,
#nav .nav-list ul ol li a,
#nav .nav-list ul ul li a {
    display: inline-block;
    width: 100%;
    color: #6B549E;
    padding-left: 2rem
}

#nav .nav-list ol ol li a:hover,
#nav .nav-list ol ol li a:focus,
#nav .nav-list ol ol li a:active,
#nav .nav-list ol ul li a:hover,
#nav .nav-list ol ul li a:focus,
#nav .nav-list ol ul li a:active,
#nav .nav-list ul ol li a:hover,
#nav .nav-list ul ol li a:focus,
#nav .nav-list ul ol li a:active,
#nav .nav-list ul ul li a:hover,
#nav .nav-list ul ul li a:focus,
#nav .nav-list ul ul li a:active {
    color: inherit
}

#nav .nav-list ol ol li:hover,
#nav .nav-list ol ol li:focus,
#nav .nav-list ol ol li:active,
#nav .nav-list ol ul li:hover,
#nav .nav-list ol ul li:focus,
#nav .nav-list ol ul li:active,
#nav .nav-list ul ol li:hover,
#nav .nav-list ul ol li:focus,
#nav .nav-list ul ol li:active,
#nav .nav-list ul ul li:hover,
#nav .nav-list ul ul li:focus,
#nav .nav-list ul ul li:active {
    color: #BD3B52;
    background-color: #F9F8F7
}

#nav .nav-list ol ol ol li a,
#nav .nav-list ol ol ul li a,
#nav .nav-list ol ul ol li a,
#nav .nav-list ol ul ul li a,
#nav .nav-list ul ol ol li a,
#nav .nav-list ul ol ul li a,
#nav .nav-list ul ul ol li a,
#nav .nav-list ul ul ul li a {
    padding-left: 3rem
}

#nav .nav-list ol li:hover+ol,
#nav .nav-list ol li:active+ol,
#nav .nav-list ol li:focus+ol,
#nav .nav-list ol li:hover+ul,
#nav .nav-list ol li:active+ul,
#nav .nav-list ol li:focus+ul,
#nav .nav-list ol li:hover>ol,
#nav .nav-list ol li:active>ol,
#nav .nav-list ol li:focus>ol,
#nav .nav-list ol li:hover>ul,
#nav .nav-list ol li:active>ul,
#nav .nav-list ol li:focus>ul,
#nav .nav-list ol ol.active,
#nav .nav-list ol ul.active,
#nav .nav-list ul li:hover+ol,
#nav .nav-list ul li:active+ol,
#nav .nav-list ul li:focus+ol,
#nav .nav-list ul li:hover+ul,
#nav .nav-list ul li:active+ul,
#nav .nav-list ul li:focus+ul,
#nav .nav-list ul li:hover>ol,
#nav .nav-list ul li:active>ol,
#nav .nav-list ul li:focus>ol,
#nav .nav-list ul li:hover>ul,
#nav .nav-list ul li:active>ul,
#nav .nav-list ul li:focus>ul,
#nav .nav-list ul ol.active,
#nav .nav-list ul ul.active {
    height: auto;
    transition: max-height 1s ease-in;
    max-height: 500em
}

#nav .nav-list ol ol:hover,
#nav .nav-list ol ul:hover,
#nav .nav-list ol ol:active,
#nav .nav-list ol ul:active,
#nav .nav-list ol ol:focus,
#nav .nav-list ol ul:focus,
#nav .nav-list ol ol.active,
#nav .nav-list ol ul.active,
#nav .nav-list ul ol:hover,
#nav .nav-list ul ul:hover,
#nav .nav-list ul ol:active,
#nav .nav-list ul ul:active,
#nav .nav-list ul ol:focus,
#nav .nav-list ul ul:focus,
#nav .nav-list ul ol.active,
#nav .nav-list ul ul.active {
    height: auto;
    max-height: 500em
}

#nav .nav-title {
    color: #44375B;
    font-size: 1.8em;
    font-weight: bold;
    line-height: 1.2em;
    margin: 1rem 0;
    padding: 0 1rem
}

#nav .nav-title a {
    color: #44375B;
    text-decoration: none
}

.has-children {
    position: relative
}

[data-toggle] {
    position: absolute;
    top: 0;
    right: 0;
    background-color: transparent;
    border: none;
    color: #BD3B52;
    font-size: 1.25em;
    padding: 0.333em 0.5em;
    margin: 0 0 0 -0.5rem;
    height: 1em
}

[data-toggle]:focus {
    outline: none
}

[data-toggle]:hover {
    cursor: pointer;
    background-color: transparent
}

[data-toggle]:after {
    color: #A33347
}

[data-toggle].show-children:after {
    color: #A33347
}

[data-nav-close] {
    background-color: transparent;
    font-size: 2.4em
}

[data-nav-close]:after {
    content: "×"
}

[data-nav-close]:hover {
    background-color: transparent
}

[data-toggle-nav] {
    background-color: transparent;
    right: 0
}

[data-toggle-nav]:after {
    content: "+"
}

[data-toggle-nav].show-children:after {
    content: "−"
}

[data-toggle-nav]:hover {
    background-color: transparent
}

.no-file.has-children {
    cursor: pointer
}

#nav .search {
    display: flex;
    justify-content: space-between;
    width: 100%
}

#nav .search input {
    box-sizing: border-box;
    color: #333;
    display: inline-block;
    width: auto
}

#nav .search input.search-box {
    flex-grow: 2;
    flex-shrink: 2;
    border: 1pt solid #ccc;
    margin: 1em 0.5rem 1em 1em
}

#nav .search input[type="submit"] {
    background-color: #44375B;
    color: white;
    cursor: pointer;
    margin: 1em 1rem 1em 0.5rem
}

.content .search {
    display: flex;
    justify-content: space-between;
    width: 100%
}

.content .search input {
    box-sizing: border-box;
    color: #333;
    display: inline-block;
    width: auto;
    margin: 1rem 0
}

.content .search input.search-box {
    flex-grow: 2;
    flex-shrink: 2;
    border: 1pt solid #ccc;
    margin: 1em 0.5rem 1em 1em;
    margin: 0 1rem 0 0
}

.content .search input[type="submit"] {
    background-color: #44375B;
    color: white;
    cursor: pointer;
    border: 0;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    margin: 0;
    padding: 0 0.5rem
}

.search-results ul {
    list-style-type: none;
    margin: 1.6em 0
}

mark {
    background-color: #ffd54d;
    color: inherit;
    border-radius: .1rem
}

[data-markjs="unmark"] mark {
    background-color: inherit
}

.search-results-summary {
    margin: 1.6em 0;
    padding: .8em;
    background-color: #D0FFFF;
    border-radius: .1rem
}

.search-page-notice {
    margin: 1.6em 0;
    padding: .8em;
    background-color: #FFFFBD;
    border-radius: .1rem
}

.search-page-notice *:last-child {
    margin-bottom: 0
}

.search-progress-placeholder {
    background-color: #D0FFFF;
    border-radius: .1rem;
    color: #000;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: .84em;
    margin: 1.6em 0;
    padding: .8em
}

.search-progress-placeholder *:last-child {
    margin-bottom: 0
}

.search-results-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #F9F8F7;
    box-shadow: 0px 0px 10px #999;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: .84em;
    padding: 1rem
}

.search-results-nav h2 {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 1.2em;
    font-weight: normal;
    margin: 0 0 1rem 0;
    text-align: left
}

.search-results-nav h2 .search-results-nav-term {
    font-weight: bold
}

.search-results-nav[data-hidden="true"] {
    height: 3em
}

.search-results-nav .search-results-nav-hide {
    position: absolute;
    top: 1rem;
    right: 3rem
}

.search-results-nav .search-results-nav-close {
    position: absolute;
    top: 1rem;
    right: 1rem
}

.search-results-nav .search-results-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: auto;
    max-height: 40vh
}

.search-results-nav .search-results-list li a {
    text-decoration: none
}

#footer {
    clear: both;
    bottom: 0;
    background-color: #44375B;
    font-family: "Lato", Roboto, Arial, sans-serif;
    border-top: 1.5px solid #44375B;
    margin: 1.6em 0 0 0;
    width: 100%;
    box-sizing: border-box;
    color: #000
}

.footer-content {
    clear: both;
    max-width: 50rem;
    margin: auto;
    padding: 1.6em 1em
}

#footer p,
#footer ol,
#footer ul {
    color: #000;
    font-size: .84em;
    line-height: 1.6em;
    margin: 0;
    text-indent: 0
}

#footer p a,
#footer ol a,
#footer ul a {
    color: #000;
    text-decoration: underline
}

[role="tab"] {
    position: relative;
    padding-right: 1.6em
}

[role="tab"]:hover {
    cursor: pointer
}

[role="tab"] a {
    color: #44375B;
    text-decoration: none
}

[role="tab"] a:first-of-type {
    margin-right: 0.4em
}

[role="tab"]:after {
    position: absolute;
    top: 0;
    right: 0
}

[role="tabpanel"] {
    clear: both
}

[data-accordion="closed"] {
    font-size: 1.2em
}

[data-accordion="closed"]:after {
    content: "+"
}

[data-accordion="open"] {
    margin-top: 1.6em
}

[data-accordion="open"]:after {
    content: "−"
}

[aria-expanded="false"] {
    display: none
}

.accordion-show-all-button-wrapper {
    margin-top: 1.6em;
    text-align: right
}

a.accordion-show-all-button {
    border-radius: .1rem;
    border: 1px solid #999;
    color: #999;
    cursor: pointer;
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: .6em;
    letter-spacing: 0.05em;
    line-height: 1;
    padding: 0.2em 0.3em;
    text-transform: uppercase
}

a.accordion-show-all-button+* {
    clear: both
}

[data-accordion-page='none'] .accordion-show-all-button-wrapper {
    display: none
}

.wrapper.cover .content {
    margin: 0 auto;
    padding: 0
}

.wrapper.cover .content h1 {
    line-height: 0;
    font-size: 0
}

p.cover,
.wrapper div.cover {
    max-height: 90vh;
    max-width: 100vw;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    text-indent: 0
}

img.cover {
    max-height: 90vh;
    max-width: 100vw;
    border: 1.5px solid #ccc
}

.previous-publications-page .content {
    margin: 3.2em auto 0 auto;
    text-align: center
}

.previous-publications-page .content p {
    text-indent: 0;
    margin-bottom: .8em;
    text-align: center;
    hyphens: none
}

.previous-publications-page .content h1 {
    text-align: center;
    font-size: 2.4em
}

.previous-publications-page .content h2,
.previous-publications-page .content h3,
.previous-publications-page .content h4,
.previous-publications-page .content h5,
.previous-publications-page .content h6 {
    font-size: 1.2em
}

.titlepage .content,
.title-page .content,
.halftitle-page .content,
.half-title-page .content {
    margin: 3.2em auto 0 auto;
    text-align: center
}

.titlepage p,
.title-page p,
.halftitle-page p,
.half-title-page p {
    text-indent: 0;
    hyphens: none;
    text-align: center
}

.titlepage .half-title-page-title,
.titlepage .halftitle-page-title,
.titlepage .halftitlepage-title,
.titlepage .title-page-title,
.titlepage .titlepage-title,
.title-page .half-title-page-title,
.title-page .halftitle-page-title,
.title-page .halftitlepage-title,
.title-page .title-page-title,
.title-page .titlepage-title,
.halftitle-page .half-title-page-title,
.halftitle-page .halftitle-page-title,
.halftitle-page .halftitlepage-title,
.halftitle-page .title-page-title,
.halftitle-page .titlepage-title,
.half-title-page .half-title-page-title,
.half-title-page .halftitle-page-title,
.half-title-page .halftitlepage-title,
.half-title-page .title-page-title,
.half-title-page .titlepage-title {
    font-weight: bold;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 2.4em;
    line-height: 1;
    margin: 0;
    string-set: book-title content()
}

.titlepage .title-page-subtitle,
.titlepage .titlepage-subtitle,
.title-page .title-page-subtitle,
.title-page .titlepage-subtitle,
.halftitle-page .title-page-subtitle,
.halftitle-page .titlepage-subtitle,
.half-title-page .title-page-subtitle,
.half-title-page .titlepage-subtitle {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 2.4em;
    line-height: 1;
    margin: .8em 0 1.6em 0;
    string-set: book-subtitle content()
}

.titlepage .title-page-author,
.titlepage .titlepage-author,
.title-page .title-page-author,
.title-page .titlepage-author,
.halftitle-page .title-page-author,
.halftitle-page .titlepage-author,
.half-title-page .title-page-author,
.half-title-page .titlepage-author {
    font-size: 2.4em;
    line-height: 1;
    margin: 1.6em 0;
    string-set: book-author content()
}

.titlepage .title-page-publisher,
.titlepage .titlepage-publisher,
.title-page .title-page-publisher,
.title-page .titlepage-publisher,
.halftitle-page .title-page-publisher,
.halftitle-page .titlepage-publisher,
.half-title-page .title-page-publisher,
.half-title-page .titlepage-publisher {
    text-indent: 0;
    margin: 0 0 1.6em 0;
    line-height: 1
}

.titlepage .title-page-logo,
.titlepage .titlepage-logo,
.title-page .title-page-logo,
.title-page .titlepage-logo,
.halftitle-page .title-page-logo,
.halftitle-page .titlepage-logo,
.half-title-page .title-page-logo,
.half-title-page .titlepage-logo {
    display: block;
    max-width: 5rem;
    max-width: 5rem
}

.titlepage .title-page-logo img,
.titlepage .titlepage-logo img,
.title-page .title-page-logo img,
.title-page .titlepage-logo img,
.halftitle-page .title-page-logo img,
.halftitle-page .titlepage-logo img,
.half-title-page .title-page-logo img,
.half-title-page .titlepage-logo img {
    width: 100%
}

.copyright-page p {
    text-indent: 0;
    margin: 0 0 .8em 0
}

.dedication-page .content {
    margin-top: 3.2em
}

p.dedication {
    text-indent: 0;
    text-align: center
}

.dedication+p {
    text-indent: 0;
    margin-top: 1.6em
}

.epigraph-page .content {
    margin-top: 3.2em
}

.epigraph {
    text-indent: 0;
    padding: 0 2em
}

.epigraph-source {
    text-indent: 0;
    padding: 0 2em;
    text-align: right;
    font-style: italic
}

.epigraph-source em {
    font-style: normal
}

.epigraph-source+p {
    text-indent: 0;
    margin-top: 1.6em
}

.contents-page .content ol,
.contents-page .content ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.contents-page .content ol li ol,
.contents-page .content ol li ul,
.contents-page .content ul li ol,
.contents-page .content ul li ul {
    margin-left: 1em
}

.contents-page .content ol li a,
.contents-page .content ul li a {
    text-decoration: none
}

.content #markdown-toc,
.content .markdown-toc {
    font-family: "Lato", Roboto, Arial, sans-serif;
    list-style-type: none;
    border: 1.5px solid #999;
    padding: .8em .5em;
    margin: 0 0 1.6em 0
}

.content #markdown-toc>li>a,
.content .markdown-toc>li>a {
    font-weight: bold
}

.content #markdown-toc li,
.content .markdown-toc li {
    margin: 0
}

.content #markdown-toc li ol,
.content #markdown-toc li ul,
.content .markdown-toc li ol,
.content .markdown-toc li ul {
    margin-bottom: 0
}

.content #markdown-toc li a,
.content .markdown-toc li a {
    text-decoration: none
}

.content #markdown-toc.markdown-toc-wide,
.content .markdown-toc.markdown-toc-wide {
    box-sizing: border-box;
    float: none;
    width: 100%;
    max-width: none
}

@media (min-width: 600px) {

    .content #markdown-toc.markdown-toc-wide,
    .content .markdown-toc.markdown-toc-wide {
        columns: 2
    }
}

.bibliography {
    text-indent: 0;
    margin: 1.6em 0
}

.bibliography+p {
    text-indent: 0
}

ul.bibliography {
    list-style-type: none;
    padding: 0;
    margin: 1.6em 0
}

ul.bibliography li {
    text-indent: -2em;
    margin-left: 2em
}

.box {
    background-color: #ccc;
    border-radius: .1rem;
    box-sizing: border-box;
    color: inherit;
    font-weight: inherit;
    font-size: inherit;
    border: 1.5px solid #ccc;
    margin: 1.6em 0;
    padding: .8em
}

.box p:last-of-type {
    margin-bottom: 0
}

.box+p {
    text-indent: 0
}

.box h1:first-of-type,
.box h2:first-of-type,
.box h3:first-of-type,
.box h4:first-of-type,
.box h5:first-of-type,
.box h6:first-of-type {
    margin-top: 0
}

.box li p:last-of-type {
    margin-bottom: 0
}

.box dl:first-of-type {
    margin-top: 0
}

.box dl:last-of-type {
    margin-bottom: 0
}

p.box {
    text-indent: 0
}

ol.box,
ul.box {
    padding: .8em .8em .8em 1.6em
}

button {
    font-size: initial;
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    color: #F9F8F7;
    line-height: 100%;
    text-decoration: none;
    background-color: #44375B;
    padding: 0.2rem 0.4rem;
    margin: 0;
    text-align: center;
    text-indent: 0;
    border-radius: .1rem;
    cursor: pointer;
    border: none
}

button:hover {
    background-color: #14111b
}

a.button,
em.button,
strong.button,
span.button {
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    color: #F9F8F7;
    line-height: 100%;
    text-decoration: none;
    background-color: #44375B;
    padding: 0.2rem 0.4rem;
    margin: 0;
    text-align: center;
    text-indent: 0;
    border-radius: .1rem;
    cursor: pointer;
    border: none
}

a.button:hover,
em.button:hover,
strong.button:hover,
span.button:hover {
    background-color: #14111b
}

p.button,
ol.button,
ul.button,
li.button,
blockquote.button,
table.button,
div.button,
h1.button,
h2.button,
h3.button,
h4.button,
h5.button,
h6.button {
    text-indent: 0
}

p.button a,
ol.button a,
ul.button a,
li.button a,
blockquote.button a,
table.button a,
div.button a,
h1.button a,
h2.button a,
h3.button a,
h4.button a,
h5.button a,
h6.button a {
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    color: #F9F8F7;
    line-height: 100%;
    text-decoration: none;
    background-color: #44375B;
    padding: 0.2rem 0.4rem;
    margin: 0;
    text-align: center;
    text-indent: 0;
    border-radius: .1rem;
    cursor: pointer;
    border: none;
    padding: 0.4em 0.6em;
    margin: 1.6em 0
}

p.button a:hover,
ol.button a:hover,
ul.button a:hover,
li.button a:hover,
blockquote.button a:hover,
table.button a:hover,
div.button a:hover,
h1.button a:hover,
h2.button a:hover,
h3.button a:hover,
h4.button a:hover,
h5.button a:hover,
h6.button a:hover {
    background-color: #14111b
}

p.button+p,
ol.button+p,
ul.button+p,
li.button+p,
blockquote.button+p,
table.button+p,
div.button+p,
h1.button+p,
h2.button+p,
h3.button+p,
h4.button+p,
h5.button+p,
h6.button+p {
    text-indent: 0
}

p.button a,
ol.button a,
ul.button a,
li.button a,
blockquote.button a,
table.button a,
div.button a,
h1.button a,
h2.button a,
h3.button a,
h4.button a,
h5.button a,
h6.button a {
    margin: 0
}

button.show-hide {
    margin-bottom: 1.6em
}

button.copy-to-clipboard {
    background-color: #F9F8F7;
    border: 1.5px solid #999;
    box-shadow: none;
    color: #999;
    font-weight: normal;
    margin-left: 1rem
}

code {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 90%;
    line-height: 1.6em;
    white-space: pre-wrap;
    padding: 0.1em 0.3em;
    border-radius: 0.2em
}

pre {
    border-radius: 0.2em;
    margin: 1.6em 0;
    padding: .8em;
    clear: left
}

pre code {
    padding: 0
}

pre+p {
    text-indent: 0
}

div[class*="highlighter-"]+p {
    text-indent: 0
}

.highlight .hll,
.highlighter-rouge .hll {
    background-color: #ffc
}

.highlight .c,
.highlighter-rouge .c {
    color: #8f5902;
    font-style: italic
}

.highlight .err,
.highlighter-rouge .err {
    color: #a40000;
    border: 1px solid #ef2929
}

.highlight .g,
.highlighter-rouge .g {
    color: #000
}

.highlight .k,
.highlighter-rouge .k {
    color: #204a87;
    font-weight: bold
}

.highlight .l,
.highlighter-rouge .l {
    color: #000
}

.highlight .n,
.highlighter-rouge .n {
    color: #000
}

.highlight .o,
.highlighter-rouge .o {
    color: #ce5c00;
    font-weight: bold
}

.highlight .x,
.highlighter-rouge .x {
    color: #000
}

.highlight .p,
.highlighter-rouge .p {
    color: #000000;
    font-weight: bold
}

.highlight .cm,
.highlighter-rouge .cm {
    color: #8f5902;
    font-style: italic
}

.highlight .cp,
.highlighter-rouge .cp {
    color: #8f5902;
    font-style: italic
}

.highlight .c1,
.highlighter-rouge .c1 {
    color: #8f5902;
    font-style: italic
}

.highlight .cs,
.highlighter-rouge .cs {
    color: #8f5902;
    font-style: italic
}

.highlight .gd,
.highlighter-rouge .gd {
    color: #a40000
}

.highlight .ge,
.highlighter-rouge .ge {
    color: #000000;
    font-style: italic
}

.highlight .gr,
.highlighter-rouge .gr {
    color: #ef2929
}

.highlight .gh,
.highlighter-rouge .gh {
    color: #000080;
    font-weight: bold
}

.highlight .gi,
.highlighter-rouge .gi {
    color: #00A000
}

.highlight .go,
.highlighter-rouge .go {
    color: #000000;
    font-style: italic
}

.highlight .gp,
.highlighter-rouge .gp {
    color: #8f5902
}

.highlight .gs,
.highlighter-rouge .gs {
    color: #000000;
    font-weight: bold
}

.highlight .gu,
.highlighter-rouge .gu {
    color: #800080;
    font-weight: bold
}

.highlight .gt,
.highlighter-rouge .gt {
    color: #a40000;
    font-weight: bold
}

.highlight .kc,
.highlighter-rouge .kc {
    color: #204a87;
    font-weight: bold
}

.highlight .kd,
.highlighter-rouge .kd {
    color: #204a87;
    font-weight: bold
}

.highlight .kn,
.highlighter-rouge .kn {
    color: #204a87;
    font-weight: bold
}

.highlight .kp,
.highlighter-rouge .kp {
    color: #204a87;
    font-weight: bold
}

.highlight .kr,
.highlighter-rouge .kr {
    color: #204a87;
    font-weight: bold
}

.highlight .kt,
.highlighter-rouge .kt {
    color: #204a87;
    font-weight: bold
}

.highlight .ld,
.highlighter-rouge .ld {
    color: #000
}

.highlight .m,
.highlighter-rouge .m {
    color: #0000cf;
    font-weight: bold
}

.highlight .s,
.highlighter-rouge .s {
    color: #4e9a06
}

.highlight .na,
.highlighter-rouge .na {
    color: #c4a000
}

.highlight .nb,
.highlighter-rouge .nb {
    color: #204a87
}

.highlight .nc,
.highlighter-rouge .nc {
    color: #000
}

.highlight .no,
.highlighter-rouge .no {
    color: #000
}

.highlight .nd,
.highlighter-rouge .nd {
    color: #5c35cc;
    font-weight: bold
}

.highlight .ni,
.highlighter-rouge .ni {
    color: #ce5c00
}

.highlight .ne,
.highlighter-rouge .ne {
    color: #cc0000;
    font-weight: bold
}

.highlight .nf,
.highlighter-rouge .nf {
    color: #000
}

.highlight .nl,
.highlighter-rouge .nl {
    color: #f57900
}

.highlight .nn,
.highlighter-rouge .nn {
    color: #000
}

.highlight .nx,
.highlighter-rouge .nx {
    color: #000
}

.highlight .py,
.highlighter-rouge .py {
    color: #000
}

.highlight .nt,
.highlighter-rouge .nt {
    color: #204a87;
    font-weight: bold
}

.highlight .nv,
.highlighter-rouge .nv {
    color: #000
}

.highlight .ow,
.highlighter-rouge .ow {
    color: #204a87;
    font-weight: bold
}

.highlight .w,
.highlighter-rouge .w {
    color: #f8f8f8;
    text-decoration: underline
}

.highlight .mf,
.highlighter-rouge .mf {
    color: #0000cf;
    font-weight: bold
}

.highlight .mh,
.highlighter-rouge .mh {
    color: #0000cf;
    font-weight: bold
}

.highlight .mi,
.highlighter-rouge .mi {
    color: #0000cf;
    font-weight: bold
}

.highlight .mo,
.highlighter-rouge .mo {
    color: #0000cf;
    font-weight: bold
}

.highlight .sb,
.highlighter-rouge .sb {
    color: #4e9a06
}

.highlight .sc,
.highlighter-rouge .sc {
    color: #4e9a06
}

.highlight .sd,
.highlighter-rouge .sd {
    color: #8f5902;
    font-style: italic
}

.highlight .s2,
.highlighter-rouge .s2 {
    color: #4e9a06
}

.highlight .se,
.highlighter-rouge .se {
    color: #4e9a06
}

.highlight .sh,
.highlighter-rouge .sh {
    color: #4e9a06
}

.highlight .si,
.highlighter-rouge .si {
    color: #4e9a06
}

.highlight .sx,
.highlighter-rouge .sx {
    color: #4e9a06
}

.highlight .sr,
.highlighter-rouge .sr {
    color: #4e9a06
}

.highlight .s1,
.highlighter-rouge .s1 {
    color: #4e9a06
}

.highlight .ss,
.highlighter-rouge .ss {
    color: #4e9a06
}

.highlight .bp,
.highlighter-rouge .bp {
    color: #3465a4
}

.highlight .vc,
.highlighter-rouge .vc {
    color: #000
}

.highlight .vg,
.highlighter-rouge .vg {
    color: #000
}

.highlight .vi,
.highlighter-rouge .vi {
    color: #000
}

.highlight .il,
.highlighter-rouge .il {
    color: #0000cf;
    font-weight: bold
}

dl.dialogue dt {
    clear: both;
    float: left;
    min-width: 2em;
    padding-right: .25em
}

dl.dialogue dt:after {
    content: ": "
}

dl.dialogue dd {
    margin: 0 0 0 2.25em
}

.figure {
    clear: both;
    page-break-inside: avoid;
    background-color: inherit;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    font-weight: inherit;
    margin: 1.6em 0;
    padding: 0
}

.figure p {
    clear: both;
    text-align: left;
    page-break-inside: avoid;
    page-break-before: avoid;
    hyphens: none
}

.figure p:last-of-type {
    margin-bottom: 0
}

.figure img,
.figure p img {
    display: block;
    margin: 0 auto;
    width: 100%
}

.figure.web-max-height-none img,
.figure.web-max-height-none p img {
    max-height: none
}

.figure .figure-body .figure-images {
    text-align: center;
    margin-bottom: 1.6em
}

.figure .figure-body .figure-html,
.figure .figure-body .figure-md {
    margin-bottom: 1.6em
}

.figure .figure-body .description {
    display: none
}

.figure .figure-body .caption {
    line-height: 1.6em;
    margin: 0;
    text-align: left;
    text-indent: 0
}

.figure .figure-body .caption .figure-reference {
    font-weight: bold
}

.figure .caption,
.figure p:nth-child(2),
.figure p:nth-child(2)+p,
.figure p:nth-child(2)+p+p,
.figure p:nth-child(2)+p+p+p,
.figure p:nth-child(2)+p+p+p+p {
    padding: 0;
    text-align: left;
    text-indent: 0
}

.figure.thumbnail,
.figure.web-thumbnail {
    max-width: 25%;
    float: right;
    margin: 0 0 0 1em;
    padding: 0
}

.figure.thumbnail img,
.figure.web-thumbnail img {
    padding: 0
}

.image-with-caption {
    font-size: .84em;
    margin: 1.6em 0;
    text-align: left
}

.image-with-caption img {
    display: block;
    margin: 1.6em auto;
    max-height: 80vh;
    max-width: 100%
}

.image-with-caption+p {
    text-indent: 0
}

.glossary {
    color: inherit
}

.glossary dt {
    float: left;
    color: inherit
}

.glossary dt:after {
    content: ":\00a0"
}

.glossary dd ul,
.glossary dd ol {
    clear: left
}

.highlighter,
a[href="highlighter"] {
    background-color: yellow;
    color: inherit;
    border-radius: .1rem
}

.reference-index,
.reference-index-manual {
    margin-left: 1em;
    list-style-type: none
}

.reference-index ul,
.reference-index ol,
.reference-index-manual ul,
.reference-index-manual ol {
    list-style-type: none
}

.reference-index li,
.reference-index-manual li {
    text-indent: -1em
}

.reference-index li li,
.reference-index-manual li li {
    margin: 0
}

.reference-index li a,
.reference-index-manual li a {
    text-decoration: none
}

.reference-index li a:after,
.reference-index-manual li a:after {
    content: ", "
}

.reference-index li a:last-of-type:after,
.reference-index-manual li a:last-of-type:after {
    content: ""
}

.reference-index li a.indexed,
.reference-index-manual li a.indexed {
    color: inherit;
    text-decoration: none
}

.reference-index li a:first-of-type,
.reference-index-manual li a:first-of-type {
    margin-left: .5em
}

.reference-index li a.index-range-from:after,
.reference-index-manual li a.index-range-from:after {
    content: "–"
}

.reference-index .duplicate,
.reference-index-manual .duplicate {
    display: none
}

.index-target {
    float: left
}

.fractions {
    -moz-font-feature-settings: "frac";
    -ms-font-feature-settings: "frac";
    -o-font-feature-settings: "frac";
    -webkit-font-feature-settings: "frac";
    font-feature-settings: "frac";
    font-style: inherit
}

.MathJax_Display,
.mjpage__block {
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 0 0.4em 0
}

.MathJax_Display.visuallyhidden,
.mjpage__block.visuallyhidden {
    padding: 0
}

.mjpage__block math {
    margin-left: auto;
    margin-right: auto
}

.sidenote {
    font-family: "Lato", Roboto, Arial, sans-serif;
    clear: both;
    min-width: 5em;
    margin: 0 0 0.5em;
    padding: .8em;
    text-indent: 0;
    font-size: .7em;
    line-height: 1.12em;
    font-style: inherit;
    position: relative
}

@media only screen and (min-width: 600px) {
    .sidenote {
        float: right;
        margin: 0 0 0.5em 0.5em;
        max-width: 16.6666666667rem
    }
}

@media only screen and (min-width: 1200px) {
    .sidenote {
        margin: 0 -10rem .8em 2rem
    }
}

@media only screen and (min-width: 100rem) {
    .sidenote {
        max-width: 25rem;
        margin-right: -27rem
    }
}

h1+.sidenote+p,
h2+.sidenote+p,
h3+.sidenote+p,
h4+.sidenote+p,
h5+.sidenote+p,
h6+.sidenote+p,
h1+.sidenote+.sidenote+p,
h2+.sidenote+.sidenote+p,
h3+.sidenote+.sidenote+p,
h4+.sidenote+.sidenote+p,
h5+.sidenote+.sidenote+p,
h6+.sidenote+.sidenote+p,
h1+.sidenote+.sidenote+.sidenote+p,
h2+.sidenote+.sidenote+.sidenote+p,
h3+.sidenote+.sidenote+.sidenote+p,
h4+.sidenote+.sidenote+.sidenote+p,
h5+.sidenote+.sidenote+.sidenote+p,
h6+.sidenote+.sidenote+.sidenote+p {
    text-indent: 0
}

p+.sidenote+p {
    text-indent: 1em
}

p+.sidenote+p {
    text-indent: 0
}

.sidenote p {
    line-height: inherit;
    color: inherit
}

.box .sidenote {
    margin-right: -13.25em
}

@media only screen and (max-width: 600px) {
    .box .sidenote {
        margin-right: inherit
    }
}

.footnote {
    cursor: pointer
}

.footnotes {
    margin: 3.2em 0 0 0;
    padding: 1.6em 0;
    border-top: 1.5px solid #ccc;
    color: #999
}

.footnotes p {
    text-indent: 0
}

.footnotes .reverse-footnote-arrow {
    vertical-align: bottom
}

.footnotes .reverse-footnote-arrow path {
    fill: #A33347
}

.footnote-detail {
    z-index: 1;
    position: absolute;
    margin-top: 1.6em;
    max-width: 50rem;
    margin-left: auto;
    margin-right: auto;
    left: 1em;
    right: 1em;
    background-color: #F9F8F7;
    font-family: "Lato", Roboto, Arial, sans-serif;
    line-height: 1.6em;
    border: 1.5px solid #44375B;
    padding: .8em;
    box-shadow: 1px 2px 7px grey;
    border-radius: .1rem
}

.footnote-detail p {
    margin-bottom: 0
}

.sidenote.contains-footnote .footnote-detail {
    left: 0;
    right: 0
}

@media only screen and (min-width: 900px) {
    .footnote-detail {
        left: 4.1666666667rem;
        right: 4.1666666667rem
    }
}

.footnotes {
    color: #333
}

.footnotes .reversefootnote {
    text-decoration: none
}

.footnote-detail .reversefootnote {
    background: #44375B;
    border-radius: 1em;
    border: 0;
    color: #F9F8F7;
    font-family: sans-serif;
    text-decoration: none;
    position: absolute;
    right: -1em;
    text-align: center;
    top: -1em;
    width: 2em;
    height: 2em;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.footnote-detail .reversefootnote:before {
    content: "×";
    font-size: 2em
}

.footnote-detail .reversefootnote+.reversefootnote {
    display: none
}

sup:target {
    padding-top: 3.5em
}

.first {
    text-indent: 0;
    margin-top: 1.6em
}

.chapter-number {
    display: block;
    font-size: 2.4em;
    line-height: 3.2em;
    margin: 0 0 1.6em 0;
    text-align: center;
    font-style: inherit;
    font-weight: inherit
}

.pullquote {
    text-indent: 0;
    font-size: 2.4em;
    line-height: 1;
    text-align: center;
    margin: 1.6em 0
}

.pullquote+p {
    text-indent: 0
}

p.source {
    font-size: .84em;
    line-height: 1.6em;
    margin: 0 0 1.6em 0;
    text-indent: 0;
    page-break-before: avoid
}

em.source,
strong.strong,
span.source {
    display: block;
    page-break-before: avoid;
    margin: 0 0 1.6em 0;
    font-size: .84em;
    font-weight: inherit
}

table {
    border-collapse: collapse;
    margin: 1.6em 0;
    font-size: .84em;
    width: 100%
}

@media (max-width: 600px) {
    table {
        display: block;
        overflow-x: auto
    }
}

table.scrolling-table {
    display: block;
    overflow-x: auto
}

thead,
th,
.table-subhead {
    page-break-after: avoid;
    font-weight: bold
}

th,
td {
    border: 1.5px solid #999;
    padding: .8em
}

th p,
th ol,
th ul,
td p,
td ol,
td ul {
    margin: 0;
    padding: 0
}

th ol,
th ul,
td ol,
td ul {
    list-style-position: inside
}

.table-row-stub {
    font-weight: bold
}

.table-caption {
    page-break-after: avoid;
    font-style: italic;
    text-indent: 0;
    margin: 1.6em 0 0 0
}

.table-caption em {
    font-style: normal
}

.letter p {
    text-indent: 0;
    margin-bottom: 1.6em
}

.letter .valediction {
    text-indent: 0;
    margin: 1.6em 0;
    page-break-before: avoid;
    page-break-inside: avoid
}

.letter .valediction+p {
    text-indent: 0
}

.verse {
    text-indent: 0;
    margin: 1.6em 0
}

.verse+p {
    text-indent: 0
}

ul.verse {
    list-style-type: none;
    padding: 0;
    margin: 1.6em 0
}

ul.verse li {
    text-indent: -2em;
    margin-left: 2em
}

ul.verse li.indent-1 {
    margin-left: 3em
}

ul.verse li.indent-2 {
    margin-left: 4em
}

ul.verse li.indent-3 {
    margin-left: 5em
}

ul.verse li.indent-4 {
    margin-left: 6em
}

ul.verse li.indent-5 {
    margin-left: 7em
}

ul.verse li.indent-6 {
    margin-left: 8em
}

ul.verse li.indent-7 {
    margin-left: 9em
}

ul.verse li.indent-8 {
    margin-left: 10em
}

ul.verse li.indent-9 {
    margin-left: 11em
}

ul.verse li.indent-10 {
    margin-left: 12em
}

ul.verse li.indent-11 {
    margin-left: 13em
}

ul.verse li.indent-12 {
    margin-left: 14em
}

ul.verse li.indent-13 {
    margin-left: 15em
}

ul.verse li.indent-14 {
    margin-left: 16em
}

ul.verse li.indent-15 {
    margin-left: 17em
}

ul.verse li.indent-16 {
    margin-left: 18em
}

ul.verse li.indent-17 {
    margin-left: 19em
}

ul.verse li.indent-18 {
    margin-left: 20em
}

ul.verse li.indent-19 {
    margin-left: 21em
}

ul.verse li.indent-20 {
    margin-left: 22em
}

ul.verse li.indent-21 {
    margin-left: 23em
}

ul.verse li.indent-22 {
    margin-left: 24em
}

ul.verse li.indent-23 {
    margin-left: 25em
}

ul.verse li.indent-24 {
    margin-left: 26em
}

ul.verse li.indent-25 {
    margin-left: 27em
}

ul.verse li.indent-26 {
    margin-left: 28em
}

ul.verse li.indent-27 {
    margin-left: 29em
}

ul.verse li.indent-28 {
    margin-left: 30em
}

ul.verse li.indent-29 {
    margin-left: 31em
}

ul.verse li.indent-30 {
    margin-left: 32em
}

ul.verse li.indent-31 {
    margin-left: 33em
}

ul.verse li.indent-32 {
    margin-left: 34em
}

ul.verse li.indent-33 {
    margin-left: 35em
}

ul.verse li.indent-34 {
    margin-left: 36em
}

ul.verse li.indent-35 {
    margin-left: 37em
}

ul.verse li.indent-36 {
    margin-left: 38em
}

ul.verse li.indent-37 {
    margin-left: 39em
}

ul.verse li.indent-38 {
    margin-left: 40em
}

ul.verse li.indent-39 {
    margin-left: 41em
}

ul.verse li.indent-40 {
    margin-left: 42em
}

ul.verse li.indent-41 {
    margin-left: 43em
}

ul.verse li.indent-42 {
    margin-left: 44em
}

ul.verse li.indent-43 {
    margin-left: 45em
}

ul.verse li.indent-44 {
    margin-left: 46em
}

ul.verse li.indent-45 {
    margin-left: 47em
}

ul.verse li.indent-46 {
    margin-left: 48em
}

ul.verse li.indent-47 {
    margin-left: 49em
}

ul.verse li.indent-48 {
    margin-left: 50em
}

ul.verse li.indent-49 {
    margin-left: 51em
}

ul.verse li.indent-50 {
    margin-left: 52em
}

ul.verse li.indent-51 {
    margin-left: 53em
}

ul.verse li.indent-52 {
    margin-left: 54em
}

ul.verse li.indent-53 {
    margin-left: 55em
}

ul.verse li.indent-54 {
    margin-left: 56em
}

ul.verse li.indent-55 {
    margin-left: 57em
}

ul.verse li.indent-56 {
    margin-left: 58em
}

ul.verse li.indent-57 {
    margin-left: 59em
}

ul.verse li.indent-58 {
    margin-left: 60em
}

ul.verse li.indent-59 {
    margin-left: 61em
}

ul.verse li.indent-60 {
    margin-left: 62em
}

blockquote.verse {
    color: inherit;
    margin-top: 0;
    width: 100%;
    padding: 0
}

blockquote.verse h1,
blockquote.verse h2,
blockquote.verse h3,
blockquote.verse h4,
blockquote.verse h5,
blockquote.verse h6 {
    margin-bottom: 1em
}

blockquote.verse ul {
    margin-bottom: 0
}

ul.verse li {
    white-space: pre-wrap
}

ul.verse li h1,
ul.verse li h2,
ul.verse li h3,
ul.verse li h4,
ul.verse li h5,
ul.verse li h6 {
    display: inline
}

ul.verse li h1 {
    margin-left: -1.4em
}

ul.verse li h2 {
    margin-left: -1.85em
}

ul.verse li h3 {
    margin-left: -2.75em
}

ul.verse li h4 {
    margin-left: -2.75em
}

ul.verse li h5 {
    margin-left: -2.75em
}

ul.verse li h6 {
    margin-left: -2.75em
}

ul.verse li:empty {
    line-height: 100%
}

ul.verse li:empty:after {
    content: " "
}

.video {
    font-family: "Lato", Roboto, Arial, sans-serif;
    margin: 0 0 1em 0;
    position: relative
}

.video img {
    width: 100%
}

.video .video-description {
    margin-top: 1.6em;
    text-align: left
}

.video .video-wrapper {
    position: relative
}

.video .video-wrapper:before {
    content: "\25b6";
    cursor: pointer;
    position: absolute;
    font-size: 3.6em;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    color: white;
    opacity: 0.5
}

.video .video-wrapper.video-no-image {
    width: 100%;
    padding-bottom: 56.25%;
    background-color: #999;
    border-radius: .1rem
}

.video .video-wrapper.contains-iframe {
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    height: 0
}

.video .video-wrapper.contains-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.video+p {
    text-indent: 0
}

.video .video-options {
    margin-top: 1rem;
    position: relative
}

.video .video-options .video-options-button {
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    color: #F9F8F7;
    line-height: 100%;
    text-decoration: none;
    background-color: #44375B;
    padding: 0.2rem 0.4rem;
    margin: 0;
    text-align: center;
    text-indent: 0;
    border-radius: .1rem;
    cursor: pointer;
    border: none;
    display: block;
    margin: 0 auto
}

.video .video-options .video-options-button:hover {
    background-color: #14111b
}

.video .video-options .video-options-content {
    background-color: #F9F8F7;
    font-family: "Lato", Roboto, Arial, sans-serif;
    line-height: 1.6em;
    border: 1.5px solid #44375B;
    padding: .8em;
    box-shadow: 1px 2px 7px grey;
    border-radius: .1rem;
    background-color: #F9F8F7;
    margin-top: 1rem
}

.video .video-options .video-options-content.js-video-options-content {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 1rem;
    visibility: hidden
}

.video .video-options .video-options-content.js-video-options-content.js-video-options-content-visible {
    visibility: visible;
    z-index: 1
}

.video .video-options .video-options-content>:last-child {
    margin-bottom: 0
}

.pagination {
    clear: both;
    font-family: "Lato", Roboto, Arial, sans-serif;
    margin: auto;
    padding: 1rem;
    position: fixed;
    bottom: 0;
    background-color: #F9F8F7;
    border-top: 1.5px solid #ccc;
    width: 100%
}

@media only screen and (min-width: 1200px) {
    .pagination {
        position: inherit;
        background-color: transparent;
        border-top: none;
        width: auto
    }
}

.pagination::after {
    content: "";
    display: block;
    clear: both
}

.pagination a {
    text-decoration: none
}

.pagination .pagination-previous,
.pagination .pagination-next {
    width: 50%
}

@media only screen and (min-width: 1200px) {

    .pagination .pagination-previous,
    .pagination .pagination-next {
        position: fixed;
        bottom: 2rem;
        width: 70%
    }
}

.pagination .pagination-previous .pagination-marker,
.pagination .pagination-next .pagination-marker {
    background-color: #F9F8F7;
    padding: 0.5rem;
    border-radius: .1rem
}

.pagination .pagination-previous {
    float: left;
    left: 2rem;
    max-width: 20rem;
    padding-right: 0.5rem
}

.pagination .pagination-next {
    float: right;
    right: 2rem;
    max-width: 20rem;
    padding-left: 0.5rem;
    text-align: right
}

.question {
    page-break-inside: avoid;
    padding: 0;
    margin: 1.6em 0
}

.question .figure {
    padding-left: 0;
    padding-right: 0
}

.question .check-answer-button {
    display: none
}

.js-mcq .question .check-answer-button {
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    line-height: 1.6em;
    padding: .8em 1.6em;
    background-color: #44375B;
    color: white;
    border: 0;
    border-radius: .1rem;
    cursor: pointer
}

.js-mcq .feedback-label {
    margin-top: 1.6em;
    background-color: #ccc;
    padding: .8em;
    border-radius: .1rem .1rem 0 0
}

.quiz-group {
    counter-reset: quiz-group 0 quiz 0 question 0
}

.quiz {
    counter-reset: quiz
}

.quiz-group .quiz {
    counter-reset: none
}

.quiz:before {
    counter-increment: quiz-group
}

.quiz:only-child:before {
    content: normal
}

.quiz .question {
    counter-reset: question;
    margin-left: 1em
}

.quiz .question:before {
    counter-increment: quiz;
    content: counter(quiz) ".";
    float: left;
    margin-right: 0.25em;
    margin-left: -1em
}

.quiz .question:only-of-type:before {
    content: normal
}

.quiz .question ol.sub-questions {
    list-style-type: none
}

.quiz .question ol.sub-questions li:before {
    counter-increment: question;
    content: counter(quiz) "."counter(question) " "
}

.quiz-group .quiz-group-total-marks {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-weight: bold;
    text-align: right
}

.quiz .quiz-total-marks {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-weight: bold;
    text-align: right
}

.question li {
    clear: right
}

.question em.marks,
.question strong.marks {
    font-style: normal;
    font-weight: normal;
    float: right;
    margin-left: 1em;
    text-indent: 0
}

.question .question-total-marks {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-weight: bold;
    text-align: right
}

.question .question-total-marks:before {
    content: "["
}

.question .question-total-marks:after {
    content: "]"
}

.question input.fill-in-blank {
    display: inline;
    width: 8em;
    padding: 0.2em;
    line-height: 1;
    margin: 0;
    border-width: 0 0 1.5px 0
}

.mcq-options {
    margin-bottom: 0
}

.mcq-options [type="checkbox"] {
    display: inline-block;
    width: auto;
    margin: 0 .8em 0 0;
    cursor: pointer
}

.mcq-options label {
    display: block;
    cursor: pointer
}

.mcq-feedback {
    display: none
}

.js-mcq .mcq-options {
    list-style-type: none;
    margin-left: 0
}

.js-mcq .mcq-options li {
    margin-bottom: .8em;
    margin-left: -0.8em;
    padding: 0 .8em;
    border: .1rem solid transparent;
    border-radius: .1rem
}

.js-mcq .mcq-options .selected {
    border-color: #44375B
}

.js-mcq .mcq-feedback {
    display: block;
    position: relative;
    list-style-type: none;
    margin-left: 0;
    background-color: #ccc;
    border-radius: 0 0 .1rem .1rem
}

.js-mcq .mcq-feedback li {
    display: none;
    padding: 0 .8em .8em .8em
}

.js-mcq .mcq-feedback .mcq-feedback-show {
    display: block
}

#nav .wordpress-link {
    display: none
}

.select-list-wrapper {
    position: relative
}

.select-list-wrapper .select-list.select-option-correct+.select-list-marker {
    background-color: #D0FFFF;
    border-radius: 1.6em;
    color: #000;
    height: 1.6em;
    line-height: 1.3;
    margin: 0 .4em;
    padding: .2em .4em;
    position: absolute;
    right: -1.12em;
    top: -0.8em
}

.select-list-wrapper .select-list.select-option-incorrect+.select-list-marker {
    background-color: #FFECB5;
    border-radius: 1.6em;
    color: #000;
    height: 1.6em;
    line-height: 1.3;
    margin: 0 .4em;
    padding: .2em .4em;
    position: absolute;
    right: -1.12em;
    top: -0.8em
}

.slides {
    clear: both;
    margin-bottom: 2em;
    background-color: #F9F8F7
}

.slides .summary {
    display: none
}

.slides .figure {
    clear: none;
    margin: 0 0 .8em 0;
    padding: .8em;
    border: 1.5px solid #ccc
}

.slides .figure .figure-body .figure-images {
    width: 100%
}

.slides .figure .figure-body .description {
    display: none;
    margin-bottom: 0
}

.slides .figure .figure-body .title {
    display: block;
    font-weight: bold;
    color: #44375B;
    margin-bottom: 0
}

.slides .figure .figure-body .caption {
    display: block;
    margin-bottom: 0
}

.slides .figure-source {
    display: none
}

.slides .figure-summary-meta {
    font-family: "Lato", Roboto, Arial, sans-serif;
    margin-top: .8em;
    padding: .8em 0 0 0;
    clear: both
}

.slides .figure-summary-meta .figure-reference {
    font-weight: bold
}

.slides .figure-summary-meta .caption {
    display: block
}

.slides .figure-summary-meta .figure-source {
    display: block
}

.slides .figure-summary-meta .figure-source p.source {
    margin: 0
}

.box .slides .figure-summary-meta {
    background-color: inherit
}

.slides:before,
.slides:after {
    content: " ";
    display: table
}

.slides:after {
    clear: both
}

.nav-slides {
    color: #A33347;
    background-color: #7c738c;
    padding: .4em 0;
    box-sizing: border-box
}

.nav-slides * {
    box-sizing: inherit
}

.nav-slides a {
    color: #A33347;
    background-color: #F9F8F7;
    border: .2em solid #F9F8F7;
    display: block;
    overflow: hidden
}

.nav-slides a:hover,
.nav-slides a:active,
.nav-slides a:focus {
    outline: .4em solid #25232a
}

@media (min-width: 1200px) {
    .nav-slides {
        padding: 0;
        max-width: 8em;
        width: 8em;
        float: right;
        margin-right: -8em
    }
}

.nav-slides ol {
    display: flex;
    justify-content: center;
    margin: 0;
    list-style-type: none
}

@media (min-width: 1200px) {
    .nav-slides ol {
        display: block
    }
}

.nav-slides li {
    padding: 0 .4em;
    flex-basis: 15%;
    max-width: 15%;
    display: inline-block
}

.nav-slides li img {
    background: #F9F8F7;
    max-width: 100%;
    object-fit: contain;
    padding: 0.1em
}

@supports (display: flex) {
    .nav-slides li img {
        padding: 0
    }
}

@media (min-width: 1200px) {
    .nav-slides li {
        padding: .8em;
        max-width: 100%;
        width: 100%
    }

    .nav-slides li img {
        border: .4em solid #F9F8F7;
        width: 100%;
        max-width: 100%
    }
}

.nav-slides .slide-current a {
    outline: .4em solid #4a4554
}

@media (min-width: 1200px) {
    .nav-slides .slide-current a {
        outline-width: .8em
    }
}

@media (min-width: 1200px) {

    .nav-slides a:hover,
    .nav-slides a:active,
    .nav-slides a:focus {
        outline-width: .8em
    }
}

.nav-slides a .slide-thumbnail-text {
    font-size: 0.75em;
    font-family: "Lato", Roboto, Arial, sans-serif;
    display: inline-block
}

@media (min-width: 1200px) {
    .nav-slides a .slide-thumbnail-text {
        width: 8.65em
    }
}

@media (min-width: 1200px) {
    .nav-slides.nav-slides-many {
        max-width: 6em;
        margin-right: -6em
    }

    .nav-slides.nav-slides-many li {
        padding: .5333333333em
    }

    .nav-slides.nav-slides-many a:hover,
    .nav-slides.nav-slides-many a:active,
    .nav-slides.nav-slides-many a:focus {
        outline-width: .5333333333em
    }

    .nav-slides.nav-slides-many .slide-current a {
        outline-width: .5333333333em
    }
}

@media (min-width: 1200px) {
    .nav-slides.nav-slides-portrait {
        max-width: 3em;
        margin-right: -3em
    }

    .nav-slides.nav-slides-portrait li {
        padding: .4em
    }

    .nav-slides.nav-slides-portrait a:hover,
    .nav-slides.nav-slides-portrait a:active,
    .nav-slides.nav-slides-portrait a:focus {
        outline-width: .4em
    }

    .nav-slides.nav-slides-portrait .slide-current a {
        outline-width: .4em
    }
}

@media (min-width: 1200px) {
    .nav-slides.nav-slides-many-many {
        float: none;
        margin: 0;
        max-width: none;
        padding: .4em 0;
        width: 100%
    }

    .nav-slides.nav-slides-many-many ol {
        display: flex
    }

    .nav-slides.nav-slides-many-many li {
        padding: 0 .4em;
        max-width: 15%
    }

    .nav-slides.nav-slides-many-many a {
        outline-width: medium
    }

    .nav-slides.nav-slides-many-many a .slide-thumbnail-text {
        width: auto
    }

    .nav-slides.nav-slides-many-many a:hover,
    .nav-slides.nav-slides-many-many a:active,
    .nav-slides.nav-slides-many-many a:focus {
        outline-width: medium
    }

    .nav-slides.nav-slides-many-many .slide-current,
    .nav-slides.nav-slides-many-many .slide-current a {
        outline-width: medium
    }

    .nav-slides.nav-slides-many-many.nav-slides-portrait {
        max-width: none;
        margin: 0
    }

    .nav-slides.nav-slides-many-many.nav-slides-portrait li {
        padding: 0 .4em
    }

    .nav-slides.nav-slides-many-many.nav-slides-portrait a:hover,
    .nav-slides.nav-slides-many-many.nav-slides-portrait a:active,
    .nav-slides.nav-slides-many-many.nav-slides-portrait a:focus {
        outline-width: medium
    }

    .nav-slides.nav-slides-many-many.nav-slides-portrait .slide-current,
    .nav-slides.nav-slides-many-many.nav-slides-portrait .slide-current a {
        outline-width: medium
    }
}

#nav .docs-list-title {
    padding: 0 2em
}

.smallcaps {
    -moz-font-feature-settings: "smcp", "onum";
    -ms-font-feature-settings: "smcp", "onum";
    -o-font-feature-settings: "smcp", "onum";
    -webkit-font-feature-settings: "smcp", "onum";
    font-feature-settings: "smcp", "onum";
    font-style: inherit;
    font-weight: inherit
}

.allsmallcaps {
    -moz-font-feature-settings: "c2sc", "smcp", "onum";
    -ms-font-feature-settings: "c2sc", "smcp", "onum";
    -o-font-feature-settings: "c2sc", "smcp", "onum";
    -webkit-font-feature-settings: "c2sc", "smcp", "onum";
    font-feature-settings: "c2sc", "smcp", "onum";
    font-style: inherit;
    font-weight: inherit
}

.shrink {
    font-size: 0.7em
}

span.keep-together,
em.keep-together,
strong.keep-together {
    white-space: nowrap
}

.controls {
    display: flex;
    margin-left: 1rem
}

.controls>div {
    margin-right: 1em
}

.annotator {
    position: fixed;
    right: 0;
    z-index: 1
}

.annotator label {
    display: block;
    padding: 0 .8em
}

.annotator label:first-of-type {
    margin-top: .8em;
    border-radius: .1rem 0 0 0
}

.annotator label:last-of-type {
    margin-bottom: .8em;
    border-radius: 0 0 .1rem 0
}

.annotator label svg {
    fill: #F9F8F7;
    stroke: #999;
    stroke-width: 1.5px;
    width: 2rem;
    -moz-user-select: none
}

.annotator iframe {
    display: none;
    height: 100vh;
    position: fixed;
    right: 0;
    top: 0;
    width: 16em;
    max-width: 70vw;
    z-index: 1000;
    border-left: 1.5px solid #ccc
}

.annotator .annotator-toggle-sidebar:checked~iframe {
    display: block
}

.annotator .annotator-toggle-sidebar:checked~label.annotator-toggle-sidebar svg {
    fill: #44375B;
    stroke: #ccc
}

.annotator .annotator-toggle-sidebar:checked~label.annotator-toggle-sidebar,
.annotator .annotator-toggle-sidebar:checked~label.annotator-show-annotations {
    width: 19.2em;
    max-width: 80vw;
    text-align: left
}

.annotator .annotator-show-annotations:checked~label.annotator-show-annotations svg {
    fill: #44375B;
    stroke: #ccc
}

.annotator input[type='checkbox'] {
    display: none
}

.annotator [data-tooltip-description]:after {
    content: attr(data-tooltip-description);
    display: none
}

.annotator [data-tooltip-description] {
    position: relative
}

.annotator [data-tooltip-description]:hover:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    border-width: 4px 6px 0 6px;
    margin-left: -4px;
    border-style: solid;
    border-color: #D0FFFF transparent transparent transparent;
    transform: translateY(-50%) rotate(-90deg);
    z-index: 100
}

.annotator [data-tooltip-description]:hover:after {
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    z-index: 100;
    pointer-events: none;
    border-radius: .1rem;
    color: #000;
    background-color: #D0FFFF;
    border: 1.5px solid #D0FFFF;
    font-size: .6em;
    line-height: 1.6em;
    width: 16em;
    max-width: 50vw;
    padding: .8em;
    transform: translateX(-100%) translateY(-50%)
}

.annotator-frame .annotator-toolbar {
    top: 5rem
}

.annotator-frame .annotator-toolbar button {
    border-style: solid !important
}

.language-select {
    color: #333;
    cursor: pointer;
    text-align: right;
    z-index: 100
}

.language-select .language-select-list {
    background-color: #F9F8F7;
    font-family: "Lato", Roboto, Arial, sans-serif;
    line-height: 1.6em;
    border: 1.5px solid #44375B;
    padding: .8em;
    box-shadow: 1px 2px 7px grey;
    border-radius: .1rem;
    background-color: #F9F8F7;
    list-style-type: none;
    margin-top: -1rem
}

.language-select .language-select-list li {
    display: block
}

.language-select .language-select-list li a {
    color: #A33347
}

.language-select .language-select-list li:after {
    content: normal
}

.language-select .language-select-list {
    display: none
}

.language-select:hover .language-select-list {
    display: block;
    position: fixed
}

svg.language-select-icon {
    -moz-user-select: none
}

svg.language-select-icon path {
    fill: #44375B
}

.bookmarks {
    color: #000;
    text-align: right
}

.bookmarks,
.bookmarks * {
    box-sizing: border-box
}

.bookmarks .history-icon {
    display: none
}

.bookmarks-modal {
    background-color: #F9F8F7;
    font-family: "Lato", Roboto, Arial, sans-serif;
    line-height: 1.6em;
    border: 1.5px solid #44375B;
    padding: .8em;
    box-shadow: 1px 2px 7px grey;
    border-radius: .1rem;
    background-color: #F9F8F7;
    border-color: #ccc;
    display: none;
    list-style-type: none;
    padding: 0;
    overflow: auto;
    position: fixed;
    top: 50%;
    left: 50%;
    height: 25em;
    max-height: 80vh;
    max-width: 80vw;
    transform: translate(-50%, -50%);
    width: 25em
}

.bookmarks-modal,
.bookmarks-modal * {
    box-sizing: border-box
}

.bookmarks-modal .bookmarks-list .bookmarks-list-content,
.bookmarks-modal .bookmarks-list .last-locations-list-content,
.bookmarks-modal .last-locations-list .bookmarks-list-content,
.bookmarks-modal .last-locations-list .last-locations-list-content {
    position: relative;
    visibility: hidden;
    z-index: -1
}

.bookmarks-modal .bookmarks-list.bookmarks-list-open .bookmarks-list-content,
.bookmarks-modal .bookmarks-list.bookmarks-list-open .last-locations-list-content,
.bookmarks-modal .last-locations-list.bookmarks-list-open .bookmarks-list-content,
.bookmarks-modal .last-locations-list.bookmarks-list-open .last-locations-list-content {
    position: relative;
    visibility: visible;
    z-index: 1
}

.bookmarks-modal .last-locations-list .last-locations-list-header {
    left: 50% !important
}

.bookmarks-modal .last-locations-list.bookmarks-list-header-open .last-locations-list-header {
    color: #000
}

.bookmarks-modal .bookmarks-list .bookmarks-list-header-open {
    color: #000
}

.bookmarks-modal .bookmarks-list,
.bookmarks-modal .last-locations-list {
    margin: 0;
    padding: 0;
    text-align: left;
    position: absolute;
    top: 2.7rem;
    left: 0;
    right: 0
}

.bookmarks-modal .bookmarks-list .bookmarks-list-header,
.bookmarks-modal .bookmarks-list .last-locations-list-header,
.bookmarks-modal .last-locations-list .bookmarks-list-header,
.bookmarks-modal .last-locations-list .last-locations-list-header {
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1.5px solid #ccc;
    color: #A33347;
    cursor: pointer;
    font-size: 0.8em;
    height: 2.7rem;
    letter-spacing: 0.05em;
    line-height: 1;
    padding: 0.5em;
    text-align: center;
    text-transform: uppercase;
    width: 50%;
    position: absolute;
    top: -2.7rem;
    left: 0;
    right: 50%
}

.bookmarks-modal .bookmarks-list .bookmarks-list-header.bookmarks-list-header-open,
.bookmarks-modal .bookmarks-list .last-locations-list-header.bookmarks-list-header-open,
.bookmarks-modal .last-locations-list .bookmarks-list-header.bookmarks-list-header-open,
.bookmarks-modal .last-locations-list .last-locations-list-header.bookmarks-list-header-open {
    border-bottom-color: #F9F8F7;
    color: #000;
    cursor: auto
}

.bookmarks-modal .bookmarks-list .bookmarks-list-header,
.bookmarks-modal .last-locations-list .bookmarks-list-header {
    border-right: 1.5px solid #ccc
}

.bookmarks-modal .bookmarks-list .bookmarks-list-tip,
.bookmarks-modal .bookmarks-list .last-locations-list-tip,
.bookmarks-modal .last-locations-list .bookmarks-list-tip,
.bookmarks-modal .last-locations-list .last-locations-list-tip {
    color: #999;
    font-size: 0.8em;
    line-height: 1.6em;
    min-height: 4em;
    padding: 1em;
    text-align: center
}

.bookmarks-modal .bookmarks-list ul,
.bookmarks-modal .last-locations-list ul {
    margin: 0;
    padding: 1em
}

.bookmarks-modal .bookmarks-list ul:empty,
.bookmarks-modal .last-locations-list ul:empty {
    margin: 0;
    min-height: 0;
    padding: 0
}

.bookmarks-modal .bookmarks-list ul li,
.bookmarks-modal .last-locations-list ul li {
    display: block;
    font-size: 0.9em;
    line-height: 1;
    margin-bottom: 2em
}

.bookmarks-modal .bookmarks-list ul li:last-child,
.bookmarks-modal .last-locations-list ul li:last-child {
    margin-bottom: 0
}

.bookmarks-modal .bookmarks-list ul li a,
.bookmarks-modal .last-locations-list ul li a {
    color: #A33347;
    text-decoration: none
}

.bookmarks-modal .bookmarks-list ul li .bookmark-title,
.bookmarks-modal .last-locations-list ul li .bookmark-title {
    color: #999;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 0.7em;
    letter-spacing: 0.05em;
    text-transform: uppercase
}

.bookmarks-modal .bookmarks-list ul li .bookmark-title::after,
.bookmarks-modal .last-locations-list ul li .bookmark-title::after {
    color: #999;
    content: "\2022";
    font-size: 1rem;
    font-style: normal;
    margin: 0 0.25em
}

.bookmarks-modal .bookmarks-list ul li .bookmark-date,
.bookmarks-modal .last-locations-list ul li .bookmark-date {
    color: #999;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 0.7em;
    letter-spacing: 0.05em;
    text-transform: uppercase
}

.bookmarks-modal .bookmarks-list ul li .bookmark-page,
.bookmarks-modal .last-locations-list ul li .bookmark-page {
    display: inline-block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 0.85em;
    font-weight: 600
}

.bookmarks-modal .bookmarks-list ul li .bookmark-section,
.bookmarks-modal .last-locations-list ul li .bookmark-section {
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 0.9em;
    font-weight: 600
}

.bookmarks-modal .bookmarks-list ul li .bookmark-section::before,
.bookmarks-modal .last-locations-list ul li .bookmark-section::before {
    color: #999;
    content: "\2022";
    font-size: 1rem;
    font-style: normal;
    margin: 0 0.25em
}

.bookmarks-modal .bookmarks-list ul li .bookmark-description,
.bookmarks-modal .last-locations-list ul li .bookmark-description {
    display: block;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 0.9em;
    line-height: 1.2;
    margin: .4em 0
}

.bookmarks-modal .bookmarks-list ul li .bookmark-delete,
.bookmarks-modal .last-locations-list ul li .bookmark-delete {
    float: right
}

.bookmarks-modal .bookmarks-list ul li.bookmarks-delete-all,
.bookmarks-modal .last-locations-list ul li.bookmarks-delete-all {
    text-align: center
}

.bookmarks-modal .bookmarks-list ul li.bookmarks-delete-all:only-child,
.bookmarks-modal .last-locations-list ul li.bookmarks-delete-all:only-child {
    display: none
}

.bookmarks-modal .bookmarks-list ul li:after,
.bookmarks-modal .last-locations-list ul li:after {
    content: normal
}

.bookmarks-modal .bookmarks-list ul li svg,
.bookmarks-modal .last-locations-list ul li svg {
    display: inline-block;
    height: 0.75em;
    margin-left: 0.5em;
    width: 0.75em
}

.bookmarks-modal .bookmarks-list ul li svg path,
.bookmarks-modal .last-locations-list ul li svg path {
    fill: #44375B
}

svg[class*="icon"] {
    -moz-user-select: none
}

svg[class*="icon"].bookmark-icon {
    cursor: pointer
}

svg[class*="icon"].bookmark-icon .bookmark-icon-fill {
    fill: #F9F8F7
}

svg[class*="icon"].bookmark-icon .bookmark-icon-outline {
    fill: #44375B
}

svg[class*="icon"].history-icon path {
    fill: #44375B
}

.bookmark-button {
    background: none;
    border: none;
    cursor: pointer;
    float: left;
    height: 1.6em;
    opacity: 0.8;
    padding: 0;
    flex-direction: column;
    justify-content: center;
    display: none
}

.bookmark-button svg {
    width: 1em;
    height: 1em;
    position: absolute;
    left: 0
}

@media only screen and (min-width: 900px) {
    .bookmark-button svg {
        left: auto;
        transform: translateX(-2em)
    }
}

.bookmark-button:hover {
    background-color: transparent
}

.bookmark-button:hover svg .bookmark-icon-fill {
    fill: #F9F8F7
}

.bookmark-button:hover svg .bookmark-icon-outline {
    fill: #44375B
}

.content .bookmark-pending>.bookmark-button {
    display: flex;
    z-index: 1;
    position: var(--bookmark-button-position);
    left: calc(var(--bookmark-button-position-x) + 1em);
    top: var(--bookmark-button-position-y)
}

.content .bookmark-pending>.bookmark-button svg {
    width: 2em;
    height: 2em;
    left: 0;
    transform: none
}

.content .bookmark-pending .visuallyhidden {
    display: none
}

[data-bookmarked] .bookmark-button {
    display: flex
}

[data-bookmarked] svg[class*="icon"].bookmark-icon .bookmark-icon-fill {
    fill: #44375B
}

[data-bookmarked] svg[class*="icon"].bookmark-icon .bookmark-icon-outline {
    fill: #44375B
}

.last-location-prompt {
    align-items: center;
    background: #A33347;
    border: 1.5px solid #A33347;
    border-radius: .1rem 0 0 .1rem;
    color: #F9F8F7;
    display: flex;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: 1rem;
    height: 1.6em;
    line-height: 1.6em;
    margin: .125em -0.3em 0.25rem 0;
    padding: 0.1rem 0.5rem;
    position: fixed;
    top: 3.5rem;
    right: 0;
    transition: transform 0.5s, z-index 1.5s;
    transform: translateX(100%)
}

.last-location-prompt a {
    color: #F9F8F7;
    text-decoration: none;
    white-space: nowrap
}

.last-location-prompt.last-location-prompt-open {
    transform: translateX(0);
    z-index: 0
}

.last-location-prompt button {
    background-color: transparent;
    color: #F9F8F7;
    font-size: 0.9rem;
    padding-bottom: 0.4rem
}

.home .history-icon {
    visibility: hidden
}

#share-links {
    background-color: #F9F8F7;
    font-family: "Lato", Roboto, Arial, sans-serif;
    line-height: 1.6em;
    border: 1.5px solid #44375B;
    padding: .8em;
    box-shadow: 1px 2px 7px grey;
    border-radius: .1rem;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 30rem;
    max-width: 90%;
    z-index: 2000
}

#share-links .share-links-close {
    position: absolute;
    top: -0.75rem;
    right: -0.75rem;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: end;
    color: transparent;
    background-color: #fff;
    border-radius: 2rem;
    border: 1.5px solid #44375B;
    cursor: pointer
}

#share-links .share-links-close::before {
    color: #44375B;
    content: "\00D7";
    display: inline-block;
    font-size: 2rem;
    position: absolute;
    text-align: center;
    width: 1.8rem;
    top: -0.25rem
}

#share-links ul {
    list-style-type: none;
    margin: 0
}

#share-links ul .share-link {
    margin-bottom: 0.25rem
}

#share-links ul .share-link:last-child {
    margin-bottom: 0
}

#share-links ul .share-link .share-link-content {
    text-decoration: none
}

#share-links ul .share-link .share-link-content:hover svg path {
    fill: #44375B
}

#share-links ul .share-link .share-link-icon {
    display: inline-block;
    margin-right: 0.5rem;
    vertical-align: middle;
    width: 1rem
}

#share-links ul .share-link .share-link-icon svg path {
    fill: #999
}

#share-links ul .share-link .share-link-label {
    line-height: 1
}

.share-button {
    cursor: pointer
}

.share-button svg.share-icon {
    width: 1rem
}

.share-button svg.share-icon path {
    stroke: #44375B;
    fill: none
}

.share-button svg.share-icon.active path {
    fill: #44375B
}

@media print {

    [href="#nav"],
    .masthead,
    .pagination,
    a.accordion-show-all-button,
    svg.history-icon {
        display: none
    }

    [data-accordion="open"]:after,
    [data-accordion="closed"]:after {
        content: normal
    }

    body {
        background: none;
        font-size: 1rem
    }

    .wrapper {
        background: none
    }

    .content,
    .footer-content {
        max-width: 60em
    }

    h1 {
        background: none;
        color: #000
    }

    .reverse-footnote-arrow {
        width: 1rem;
        height: 1rem
    }

    #footer {
        background: none;
        color: #000
    }

    #footer p {
        color: #000
    }

    .sidenote {
        display: block;
        float: right;
        max-width: 40%;
        margin-bottom: 1.6em
    }
}

.wrapper {
    overflow: visible
}

p,
p+p {
    margin-bottom: 1.5rem
}

.chapter-opener-number {
    font-size: 3.4375rem;
    font-weight: 400;
    line-height: 1.2;
    color: #BD3B52
}

@media only screen and (min-width: 900px) {
    .chapter-opener-number {
        font-size: 10.25rem
    }
}

h1 {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.2;
    color: #44375B
}

@media only screen and (min-width: 900px) {
    h1 {
        font-size: 4rem
    }
}

.chapter h1 .chapter-opener-title {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.2;
    color: #F9F8F7
}

@media only screen and (min-width: 900px) {
    .chapter h1 .chapter-opener-title {
        font-size: 4rem
    }
}

.chapter h1 .chapter-opener-subheadline {
    font-size: 1.375rem;
    font-weight: 400;
    line-height: 1.2;
    color: #9E8BCA
}

@media only screen and (min-width: 900px) {
    .chapter h1 .chapter-opener-subheadline {
        font-size: 3rem
    }
}

.subheadline {
    font-size: 1.375rem;
    font-weight: 400;
    line-height: 1.2;
    color: #6B549E
}

@media only screen and (min-width: 900px) {
    .subheadline {
        font-size: 3rem
    }
}

h2 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5;
    color: #44375B
}

@media only screen and (min-width: 900px) {
    h2 {
        font-size: 2.5rem
    }
}

h3 {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.3;
    color: #6B549E
}

@media only screen and (min-width: 900px) {
    h3 {
        font-size: 2rem;
        line-height: 1.8
    }
}

h4 {
    font-size: 1.125rem;
    font-style: italic;
    font-weight: 600;
    line-height: 1.3;
    color: #BD3B52
}

@media only screen and (min-width: 900px) {
    h4 {
        font-size: 1.75rem;
        line-height: 1.8
    }
}

li,
p {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    color: #000
}

@media only screen and (min-width: 900px) {

    li,
    p {
        font-size: 1.25rem
    }
}

.feature-paragraph {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.5;
    color: #6B549E
}

@media only screen and (min-width: 900px) {
    .feature-paragraph {
        font-size: 1.7rem
    }
}

.pagination .pagination-next-text,
.pagination .pagination-previous-text {
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.3;
    color: #44375B;
    font-weight: 700;
    text-transform: uppercase
}

@media only screen and (min-width: 900px) {

    .pagination .pagination-next-text,
    .pagination .pagination-previous-text {
        font-size: 1.125rem
    }
}

sup>a {
    color: #A33347;
    font-weight: 700
}

.box sup>a {
    color: #BD3B52
}

.box h3 {
    color: #fff
}

.box h3 strong {
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.3;
    text-transform: uppercase;
    color: #BD3B52
}

@media only screen and (min-width: 900px) {
    .box h3 strong {
        font-size: 1.125rem
    }
}

.box p {
    color: #fff
}

.pullquote p {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.5;
    color: #6B549E
}

@media only screen and (min-width: 900px) {
    .pullquote p {
        font-size: 1.7rem
    }
}

.chapter-image-wrapper {
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
    height: 19rem
}

.chapter-image-wrapper img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

.chapter-opener-wrapper {
    background-color: #44375B;
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
    margin-bottom: 1.5rem
}

.chapter-opener-wrapper .chapter-opener-number {
    display: block;
    max-width: 50rem;
    margin: 0 auto;
    padding: 1rem 0 0 1rem
}

.chapter-opener-wrapper h1 {
    margin: 0 auto;
    max-width: 50rem;
    padding: 0rem 1rem 1.5rem 1rem
}

.chapter-opener-wrapper h1 .chapter-opener-title {
    display: block
}

.chapter-opener-wrapper h1 .chapter-opener-subheadline {
    display: block;
    margin-top: 0.25rem
}

@media only screen and (min-width: 1240px) {
    .chapter-opener-wrapper {
        display: grid;
        grid-template-columns: 1fr auto 1fr
    }

    .chapter-opener-wrapper .chapter-opener-number {
        align-self: center;
        justify-self: end;
        max-width: unset;
        margin: 0;
        padding: 0
    }

    .chapter-opener-wrapper h1 {
        padding: 1rem 1rem 1.5rem 1rem;
        width: 50rem;
        align-self: center
    }
}

h2 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    padding-top: 0.5rem
}

h3 {
    margin-top: 0;
    margin-bottom: 0.5rem
}

h4 {
    margin-top: 0;
    margin-bottom: 0.5rem
}

ul,
ol {
    margin: 0 0 1.5rem 1rem
}

.key-findings-wrapper {
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
    padding: 1rem;
    background-color: #EEECE8
}

.key-findings-wrapper .key-findings {
    max-width: 50rem;
    margin: auto
}

.key-findings-wrapper .key-findings [icon="1"]::before {
    content: url("assets/images/web/onion-icon-1.svg");
    height: 2rem;
    width: 2rem;
    float: left;
    margin-left: -3rem;
    position: relative;
    top: 5px
}

.key-findings-wrapper .key-findings [icon="2"]::before {
    content: url("assets/images/web/onion-icon-2.svg");
    height: 2rem;
    width: 2rem;
    float: left;
    margin-left: -3rem;
    position: relative;
    top: 5px
}

.key-findings-wrapper .key-findings [icon="3"]::before {
    content: url("assets/images/web/onion-icon-3.svg");
    height: 2rem;
    width: 2rem;
    float: left;
    margin-left: -3rem;
    position: relative;
    top: 5px
}

.key-finding-wrapper {
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
    background-color: #F9F8F7;
    padding: 1rem;
    margin-bottom: 1.5rem
}

.key-finding-wrapper .key-finding {
    max-width: 50rem;
    margin: auto;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.5;
    color: #44375B;
    font-style: normal
}

@media only screen and (min-width: 900px) {
    .key-finding-wrapper .key-finding {
        font-size: 1.7rem
    }
}

.key-finding-wrapper .key-finding strong {
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.3;
    color: #BD3B52;
    display: block;
    text-transform: uppercase
}

@media only screen and (min-width: 900px) {
    .key-finding-wrapper .key-finding strong {
        font-size: 1.125rem
    }
}

h1 {
    margin-bottom: 0.25rem;
    margin-top: 1.5rem
}

.subheadline {
    margin-bottom: 1.5rem
}

@media only screen and (min-width: 900px) {
    h1 {
        margin-top: 5rem;
        margin-bottom: 0.5rem
    }

    .subheadline {
        margin-bottom: 4rem
    }
}

.contents-page h1 {
    margin-bottom: 2.125rem
}

.contents-page ol.toc-list li {
    margin-bottom: 1.5rem
}

.contents-page ol.toc-list li span {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: center
}

.contents-page ol.toc-list li span a span {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.3;
    color: #44375B;
    margin-left: 0.5rem;
    display: flex
}

@media only screen and (min-width: 900px) {
    .contents-page ol.toc-list li span a span {
        font-size: 2rem;
        line-height: 1.8
    }
}

.contents-page ol.toc-list li span a span strong {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.2;
    color: #A33347;
    margin-left: -0.5rem
}

@media only screen and (min-width: 900px) {
    .contents-page ol.toc-list li span a span strong {
        font-size: 4rem
    }
}

.contents-page ol.toc-list li span .toc-toggle {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.2;
    color: #A33347;
    cursor: pointer
}

@media only screen and (min-width: 900px) {
    .contents-page ol.toc-list li span .toc-toggle {
        font-size: 4rem
    }
}

.contents-page ol.toc-list li li {
    margin-top: 1rem
}

.contents-page ol.toc-list li li a span {
    font-size: 1.125rem;
    font-style: italic;
    font-weight: 600;
    line-height: 1.3;
    color: #6B549E;
    display: block;
    margin-left: 3rem
}

@media only screen and (min-width: 900px) {
    .contents-page ol.toc-list li li a span {
        font-size: 1.75rem;
        line-height: 1.8
    }
}

[data-anchorjs-icon]::after {
    content: url("assets/images/web/link.svg");
    height: 2rem;
    width: 2rem;
    display: inline-block
}

.bookmarks-modal button {
    font-size: 0.8rem;
    text-transform: uppercase;
    padding: 0.3rem 0.25rem 0.25rem 0.25rem;
    margin-top: 0.5rem
}

.box {
    background-color: #44375B;
    border: none;
    margin: 0;
    padding: 1.5rem 1rem;
    margin-bottom: 1.5rem
}

.box h3 {
    display: grid;
    margin-bottom: 0
}

.box .footnote-detail p {
    color: #000
}

.box .footnote-detail .reversefootnote {
    background-color: #BD3B52
}

@media only screen and (max-width: 600px) {
    .box {
        width: 100vw;
        position: relative;
        margin-left: -50vw;
        left: 50%
    }
}

.sidebar-box {
    background-color: #44375B;
    margin-bottom: 1.5rem;
    padding: 1.25rem
}

.sidebar-box p img {
    margin: 0;
    max-width: 15rem
}

.sidebar-box h2 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    color: #fff;
    font-weight: 700;
    margin-bottom: 1.5rem;
    text-transform: uppercase
}

@media only screen and (min-width: 900px) {
    .sidebar-box h2 {
        font-size: 1.25rem
    }
}

.sidebar-box p {
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.3;
    color: #fff;
    margin-bottom: 0
}

@media only screen and (min-width: 900px) {
    .sidebar-box p {
        font-size: 1rem;
        line-height: 1.8
    }
}

@media only screen and (min-width: 800px) {
    .sidebar-box {
        float: right;
        max-width: 20rem;
        margin: 0 calc(-1 * ((100vw - 50rem) / 2 - 1rem)) 1.5rem 1rem
    }
}

@media only screen and (min-width: 1312px) {
    .sidebar-box {
        float: right;
        max-width: 30rem;
        margin: 0 calc(-1 * ((100vw - 50rem) / 2 - 1rem)) 1.5rem 1rem
    }
}

@media only screen and (min-width: 1824px) {
    .sidebar-box {
        float: right;
        max-width: 30rem;
        margin: 0 -31.5rem 1.5rem 1rem
    }
}

.definition {
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.3;
    background-color: #A33347;
    margin-bottom: 1.5rem;
    color: #fff;
    padding: 1.25rem
}

@media only screen and (min-width: 900px) {
    .definition {
        font-size: 1rem;
        line-height: 1.8
    }
}

.definition.resilience {
    background-color: #458CBD
}

.definition dl {
    margin: 0
}

.definition dl dt {
    font-size: 1.125rem;
    font-style: italic;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 0.25rem
}

@media only screen and (min-width: 900px) {
    .definition dl dt {
        font-size: 1.75rem;
        line-height: 1.8
    }
}

.definition dl dd {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    margin: 0
}

@media only screen and (min-width: 900px) {
    .definition dl dd {
        font-size: 1.25rem
    }
}

@media only screen and (min-width: 1600px) {
    .definition {
        float: left;
        max-width: 22rem;
        margin: 0 1rem 1.5rem -24rem
    }
}

.figure:not(.feature-image):not(.feature-image-left):not(.feature-image-right):not(.feature-image-wide):not(.graph-grid-figure) {
    border-top: 1.5px solid #AEA793;
    border-bottom: 1.5px solid #AEA793;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    margin: 3rem 0
}

.figure:not(.feature-image):not(.feature-image-left):not(.feature-image-right):not(.feature-image-wide):not(.graph-grid-figure) .figure-body .figure-reference {
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.8;
    color: #44375B;
    text-transform: uppercase;
    margin-bottom: 0
}

.figure:not(.feature-image):not(.feature-image-left):not(.feature-image-right):not(.feature-image-wide):not(.graph-grid-figure) .figure-body .caption {
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.3;
    color: #928369;
    text-transform: uppercase;
    margin-bottom: 0.5rem
}

@media only screen and (min-width: 900px) {
    .figure:not(.feature-image):not(.feature-image-left):not(.feature-image-right):not(.feature-image-wide):not(.graph-grid-figure) .figure-body .caption {
        font-size: 1.125rem
    }
}

.figure:not(.feature-image):not(.feature-image-left):not(.feature-image-right):not(.feature-image-wide):not(.graph-grid-figure) .figure-source .source {
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.3;
    margin-bottom: 0
}

@media only screen and (min-width: 900px) {
    .figure:not(.feature-image):not(.feature-image-left):not(.feature-image-right):not(.feature-image-wide):not(.graph-grid-figure) .figure-source .source {
        font-size: 1rem;
        line-height: 1.8
    }
}

.figure,
.figure p {
    clear: none
}

@media only screen and (min-width: 1200px) {
    .figure.feature-image-left {
        float: left;
        width: calc((100vw - 50rem) / 2 + 11rem);
        margin: 0 1.5rem 0 calc((100vw - 50rem) / -2 - 1rem)
    }

    .figure.feature-image-left .figure-body .figure-images {
        margin-bottom: 0
    }
}

@media only screen and (min-width: 1200px) {
    .figure.feature-image-right {
        float: right;
        width: calc((100vw - 50rem) / 2 + 11rem);
        margin: 0 calc((100vw - 50rem) / -2 - 1rem) 0 1.5rem
    }

    .figure.feature-image-right .figure-body .figure-images {
        margin-bottom: 0
    }
}

.figure.feature-image-wide {
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
    height: 28rem
}

.figure.feature-image-wide .figure-body,
.figure.feature-image-wide .figure-images {
    height: 100%
}

.figure.feature-image-wide img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

.figure.flourish .figure-html {
    display: grid;
    grid-template-columns: 1fr
}

@media only screen and (min-width: 800px) {
    .figure.flourish:not(.single) .figure-html {
        grid-template-columns: 1fr 1fr
    }
}

.figure.white-background svg,
.figure.white-background .flourish-embed {
    background-color: #F9F8F7
}

#footer {
    margin-top: 0
}

.footnote-detail p {
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.3
}

@media only screen and (min-width: 900px) {
    .footnote-detail p {
        font-size: 1rem;
        line-height: 1.8
    }
}

.footnote-detail .reversefootnote::before {
    position: relative;
    top: 1px
}

.footnotes {
    border-top: 1.5px solid #AEA793;
    color: #000;
    margin: 1.5rem 0 0 0;
    padding: 1.5rem 0
}

.footnotes .reverse-footnote-arrow {
    vertical-align: unset;
    height: 1.25rem;
    width: 1.25rem
}

.graph-grid .graph-grid-paragraph h5 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5;
    color: #44375B;
    font-style: normal
}

@media only screen and (min-width: 900px) {
    .graph-grid .graph-grid-paragraph h5 {
        font-size: 2.5rem
    }
}

.graph-grid .graph-grid-paragraph p strong.crime {
    color: #A33347
}

.graph-grid .graph-grid-paragraph p strong.resilience {
    color: #458CBD
}

@media only screen and (min-width: 600px) {
    .graph-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
        align-items: center
    }

    .graph-grid .graph-grid-paragraph:nth-of-type(3) {
        grid-column: 2 / 3;
        grid-row: 2 / 3
    }

    .graph-grid .graph-grid-figure:nth-of-type(4) {
        grid-column: 1 / 2;
        grid-row: 2 / 3
    }
}

.wrapper {
    overflow: visible
}

.data-table-wrapper {
    height: 85vh;
    overflow: auto;
    border-bottom: 1.5px solid #6B549E;
    border-top: 1.5px solid #6B549E;
    margin-bottom: 3rem
}

.data-table-wrapper table {
    margin: 0;
    overflow-x: visible
}

.data-table-wrapper thead {
    border-bottom: 1.5px solid #6B549E
}

.data-table-wrapper thead tr {
    border: none
}

.data-table-wrapper thead tr th {
    position: sticky;
    top: 0px;
    background-clip: padding-box;
    z-index: 2;
    border: none;
    border-bottom: 1.5px solid #6B549E;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.3;
    background-color: #EEECE8;
    color: #A33347;
    text-align: left;
    text-transform: uppercase
}

@media only screen and (min-width: 900px) {
    .data-table-wrapper thead tr th {
        font-size: 1.125rem
    }
}

.data-table-wrapper thead tr th .data-table-flex-wrapper {
    display: flex;
    justify-content: space-between
}

.data-table-wrapper thead tr th select {
    background-color: #EEECE8;
    border: none;
    color: #A33347;
    font-weight: 700;
    text-transform: uppercase;
    width: 100%
}

.data-table-wrapper thead tr th.th-33 {
    width: 33%
}

.data-table-wrapper td {
    border: none;
    border-bottom: 1.5px solid #6B549E;
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.3;
    color: #6B549E
}

@media only screen and (min-width: 900px) {
    .data-table-wrapper td {
        font-size: 1rem;
        line-height: 1.8
    }
}

.data-table-wrapper tbody tr td:first-of-type {
    position: sticky;
    left: 0px;
    background-color: #F9F8F7;
    border: none;
    border-bottom: 1.5px solid #6B549E;
    background-clip: padding-box
}

.nav-buttons {
    margin: 0.5rem
}

body[data-scrolling="top"] .nav-buttons {
    left: 1rem;
    top: 1.3rem;
    margin: 0
}

body[data-scrolling="top"] .nav-buttons .nav-button .nav-button-text {
    display: none
}

@media only screen and (min-width: 600px) {
    body[data-scrolling="top"] .nav-buttons {
        left: 2rem
    }

    body[data-scrolling="top"] .nav-buttons .nav-button .nav-button-text {
        display: inline-block
    }
}

@media only screen and (min-width: 900px) {
    body[data-scrolling="top"] .nav-buttons {
        left: calc(((100vw - 900px) / 2) + 2rem)
    }
}

@media only screen and (min-width: 1285px) {
    body[data-scrolling="top"] .nav-buttons {
        left: calc(((100vw - 1340px) / 2) + 2rem)
    }
}

.masthead {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.8rem
}

.masthead .masthead-main-area {
    align-items: center;
    display: flex;
    height: 5rem;
    justify-content: space-between;
    margin: auto;
    padding: 0 2rem;
    width: 100%
}

@media only screen and (min-width: 1200px) {
    .masthead .masthead-main-area {
        max-width: 1340px
    }
}

.masthead .masthead-main-area .masthead-menu {
    align-items: center;
    display: flex;
    width: 25%
}

.masthead .masthead-main-area .masthead-menu ul {
    min-height: 0;
    margin: 0 0 0 8rem
}

.masthead .masthead-main-area .masthead-menu ul li {
    color: #000;
    display: inline-block;
    font-weight: 900
}

.masthead .masthead-main-area .masthead-logo {
    display: grid;
    grid-template-columns: auto auto;
    column-gap: 1rem;
    width: unset
}

.masthead .masthead-main-area .masthead-logo svg {
    height: 2rem
}

@media only screen and (max-width: 730px) {
    .masthead .masthead-main-area .masthead-logo svg {
        height: 1.5rem
    }
}

.masthead .masthead-main-area .masthead-logo a:last-of-type svg {
    height: 1.5rem
}

@media only screen and (max-width: 640px) {
    .masthead .masthead-main-area .masthead-logo a:last-of-type svg {
        height: 1rem
    }
}

.masthead .masthead-main-area .masthead-search {
    align-items: center;
    display: flex;
    justify-content: end;
    width: 25%
}

.masthead .masthead-main-area .masthead-search .search {
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 1.75rem;
    position: relative
}

.masthead .masthead-main-area .masthead-search .search input {
    box-sizing: border-box;
    color: #333;
    display: inline-block;
    width: auto;
    margin: 1rem 0
}

.masthead .masthead-main-area .masthead-search .search input.search-box {
    flex-grow: 2;
    flex-shrink: 2;
    border: 1pt solid #ccc;
    margin: 1em 0.5rem 1em 1em;
    margin: 0 1rem 0 0
}

.masthead .masthead-main-area .masthead-search .search input[type="submit"] {
    background-color: #44375B;
    color: white;
    cursor: pointer;
    border: 0;
    font-family: "Lato", Roboto, Arial, sans-serif;
    font-size: inherit;
    margin: 0;
    padding: 0 0.5rem
}

@media only screen and (min-width: 600px) {
    .masthead .masthead-main-area .masthead-search .search {
        width: 20rem
    }
}

.masthead .masthead-main-area .masthead-search .search input[type="text"].search-box {
    margin: 0 1.5rem 0 0;
    padding-left: 0;
    background: #EEECE8;
    outline: none;
    border: none
}

.masthead .masthead-main-area .masthead-search .search input[type="text"].search-box::placeholder {
    color: transparent
}

@media only screen and (min-width: 600px) {
    .masthead .masthead-main-area .masthead-search .search input[type="text"].search-box {
        border-bottom: 2px solid #000
    }

    .masthead .masthead-main-area .masthead-search .search input[type="text"].search-box::placeholder {
        color: #AEA793
    }
}

.masthead .masthead-main-area .masthead-search .search input[type="text"].search-box:focus~input[type="submit"].search-submit {
    background-color: #44375B;
    background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20.2 19.2"><path d="M1,9A8,8,0,0,1,17,9a7.9,7.9,0,0,1-1.9,5.2l4.4,4.3L15,14.2A7.8,7.8,0,0,1,9,17,8,8,0,0,1,1,9Z" fill="none" stroke="%23ffffff" stroke-miterlimit="10" stroke-width="2"/></svg>')
}

.masthead .masthead-main-area .masthead-search .search input[type="submit"].search-submit {
    background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20.2 19.2"><path d="M1,9A8,8,0,0,1,17,9a7.9,7.9,0,0,1-1.9,5.2l4.4,4.3L15,14.2A7.8,7.8,0,0,1,9,17,8,8,0,0,1,1,9Z" fill="none" stroke="%2344375b" stroke-miterlimit="10" stroke-width="2"/></svg>');
    color: transparent;
    height: 26px;
    width: 26px;
    background-size: 18px 18px;
    background-position: 50%;
    background-repeat: no-repeat;
    background-color: #EEECE8;
    position: absolute;
    right: 0;
    top: 2px
}

.nav-buttons {
    background-color: #EEECE8;
    border-radius: .1rem
}

.nav-buttons .nav-button {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 152.2 121.1" style="enable-background:new 0 0 152.2 121.1" xml:space="preserve"><path style="fill:none;stroke:black;stroke-width:15;stroke-miterlimit:10" d="M0 7.5h152.2M0 61h152.2M0 113.6h152.2"/></svg>');
    border: none;
    background-position: 0.5rem;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    height: 2.5rem;
    margin: 0;
    padding-left: 2.5rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #000;
    font-size: 0.8rem;
    font-weight: 900
}

.nav-buttons .nav-share {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #000;
    font-size: 0.8rem;
    font-weight: 900;
    height: 2.5rem;
    padding: 0.25rem 0.5rem 0.25rem 0;
    cursor: pointer
}

@media only screen and (min-width: 600px) {
    .nav-buttons .nav-share {
        padding-left: 1rem
    }
}

.js-nav-open .nav-buttons .nav-button {
    background-color: transparent;
    background-image: none;
    color: transparent
}

body[data-scrolling="top"] .nav-buttons .nav-button {
    background-color: transparent;
    padding-left: 2.5rem
}

@media only screen and (min-width: 900px) {
    body[data-scrolling="top"] .nav-buttons .nav-button {
        padding-left: 3.5rem
    }
}

body[data-scrolling="top"] .nav-buttons .nav-share {
    display: none
}

@media only screen and (min-width: 420px) {
    body[data-scrolling="top"] .nav-buttons .nav-share {
        display: inline
    }
}

#nav .nav-title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 1rem 3rem 1rem 2rem
}

@media only screen and (min-width: 900px) {
    #nav .nav-title {
        font-size: 2.5rem
    }
}

#nav .controls {
    padding: 0rem 1rem
}

#nav .controls .share-button svg.share-icon path {
    stroke: #44375B;
    fill: none
}

#nav .search {
    padding: 0 0.5rem
}

#nav .search input.search-box {
    border: none;
    border-bottom: 2px solid #6B549E;
    color: #6B549E;
    padding-left: 0
}

#nav .search input.search-submit {
    background-color: #A33347
}

#nav .nav-list {
    padding-bottom: 1.5rem
}

#nav .nav-list ol li a {
    line-height: 1.6em;
    padding: 0.25rem 2.5rem 0.25rem 2rem
}

#nav .nav-list ol li a strong:first-of-type {
    display: block;
    float: left;
    margin-right: 0.5rem
}

#nav .nav-list ol li.active a {
    color: #44375B;
    background-color: #AEA793
}

#nav .nav-list ol li.active a:hover,
#nav .nav-list ol li.active a:focus,
#nav .nav-list ol li.active a:active {
    color: #A33347
}

#nav .nav-list ol li ol li a {
    font-style: italic
}

#nav .nav-list ol li.js-numbered a {
    padding-left: 2.5rem
}

#nav .nav-list ol li.js-numbered a strong:first-of-type {
    position: absolute;
    left: 1rem;
    color: #A33347
}

@media only screen and (min-width: 900px) {
    #nav .nav-list ol li.js-numbered a strong:first-of-type {
        left: 0.5rem
    }
}

#nav .nav-list ol li [data-toggle-nav] {
    right: 1rem
}

@media only screen and (min-width: 900px) {
    #nav .nav-list ol li [data-toggle-nav] {
        right: 0.5rem
    }
}

#nav .nav-list ol li [data-toggle-nav]::after {
    font-weight: 700
}

.pagination {
    clear: none;
    position: sticky;
    z-index: 2;
    background-color: #EEECE8;
    border-top: 1.5px solid #AEA793;
    display: grid;
    align-items: center;
    column-gap: 1.5rem
}

.pagination .pagination-previous {
    grid-column: 1 / 2
}

.pagination .pagination-next {
    grid-column: 2 / 3
}

.pagination :only-child {
    grid-column: 1 / 2
}

.pagination .pagination-next,
.pagination .pagination-previous {
    max-width: unset;
    width: unset;
    padding: 0
}

.pagination .pagination-next .pagination-marker,
.pagination .pagination-previous .pagination-marker {
    align-items: center;
    border-radius: 0;
    display: flex;
    gap: 0.5rem;
    padding: 0;
    background-color: #EEECE8
}

.pagination .pagination-next .pagination-marker strong::after,
.pagination .pagination-previous .pagination-marker strong::after {
    content: ' |';
    color: #BD3B52
}

.pagination .pagination-next .pagination-marker .pagination-next-arrow,
.pagination .pagination-next .pagination-marker .pagination-previous-arrow,
.pagination .pagination-previous .pagination-marker .pagination-next-arrow,
.pagination .pagination-previous .pagination-marker .pagination-previous-arrow {
    flex-shrink: 0
}

.pagination .pagination-next .pagination-marker svg,
.pagination .pagination-previous .pagination-marker svg {
    height: 2rem;
    width: 2rem
}

.pagination .pagination-next .pagination-marker {
    justify-content: flex-end
}

.pagination::after {
    content: none
}

@media only screen and (max-width: 600px) {

    .pagination .pagination-next-text,
    .pagination .pagination-previous-text {
        display: none
    }

    .pagination .pagination-next-arrow,
    .pagination .pagination-previous-arrow {
        line-height: 0
    }
}

@media only screen and (min-width: 1200px) {
    .pagination {
        position: sticky;
        background-color: #EEECE8;
        border-top: 1.5px solid #AEA793;
        width: 100%
    }

    .pagination .pagination-previous,
    .pagination .pagination-next {
        position: static
    }
}

[data-search-results="active"] .pagination {
    display: none
}

.pullquote {
    margin-top: 0;
    margin-bottom: 1.5rem;
    padding: 0
}

.pullquote.feature-quote {
    background-color: #44375B;
    padding: 1.5rem
}

.pullquote.feature-quote p {
    color: #fff
}

.search-results-nav h2 {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.5
}

@media only screen and (min-width: 900px) {
    .search-results-nav h2 {
        font-size: 1.7rem
    }
}

.search-results-nav .search-results-list {
    max-height: 25vh
}

.search-results-nav[data-hidden="true"] {
    height: 4.5rem
}

#share-links.share-hidden {
    display: none
}

#share-links .share-links-close::before {
    position: relative;
    left: 5px;
    top: 1px
}

#share-links ul .share-link .share-link-content:hover {
    color: #44375B
}

#share-links button.copy-to-clipboard {
    color: #A33347;
    border-color: #A33347
}

#share-links button.copy-to-clipboard:hover {
    color: #44375B;
    border-color: #44375B
}