@font-face {
    font-family: "PPL";
    src: url("fonts/ppl.woff2") format('woff2');
}

body{
    /* background-color: #fffff8; */
    color: #111;
    font-family: "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
    /* font-family: 'helvetica neue', helvetica, sans-serif; */
}

h1,h2,h3 {
    line-height:1.2;
}

a {
    color: #00449e;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}


article {
  counter-reset: section;
  counter-reset: subsection;
  counter-reset: figure;
}

.anim {
    transition: transform 0.1s ease;
}
.anim-fade {
    transition: opacity 0.1s ease;
}
.anim-all {transition: all 0.1s ease;}

img {
    break-inside: avoid;
}

figure > figcaption {
    line-break: loose;
}

.sidenote {
    line-break: loose;
}

.line-break-anywhere {
    line-break: anywhere;
}

.sidenote code {
    line-break: anywhere;
}

.sidenote a.reflink {
    line-break: normal;
}

.lb-normal { line-break: normal; }
.lb-strict { line-break: strict; }
.lb-loose { line-break: loose; }
.ws-nowrap { white-space: nowrap;}
.ws-normal { white-space: normal; }

table {
    border-collapse: collapse;
    text-align: left;
    vertical-align: top;
}

td, th {
    vertical-align: baseline;
    padding: 0.5em;
}

thead th {
    border-bottom: 1px black solid;
    padding: 0.3em 0.5em;
}

h1, h2 {
    page-break-inside: avoid;
    page-break-after: avoid;
}

tbody.stripe > :nth-child(odd) > td {
  background-color: #eee;
}

table {
    font-size: 0.8rem;
}

/* [todo] tidy this to be more semantic less functional-CSS. */

figure {
    border-left: 3px solid transparent;
}

figure:hover {
    border-left-color: #96ccff;
}

.marginnote, figcaption {
    border-left: 3px solid transparent;
}

:hover > .marginnote, :hover > figcaption {
  border-left-color: #96ccff;
}

.citations:hover {
    background-color: #96ccff;
}

.hover-b--light-blue:hover,
.hover-b--light-blue:focus {
  border-color: #96ccff;
}
.hover-b--light-blue:hover > figcaption {
    border-color: #96ccff;
}


.mh300 {
    max-height: 300px;
}

.user-select-none {
    -webkit-user-select: none;  /* Chrome all / Safari all */
    -moz-user-select: none;     /* Firefox all */
    -ms-user-select: none;      /* IE 10+ */
    user-select: none;          /* Likely future */
  }