/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.2
*/
html {
  color: #000;
  background: #FFF;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}

body {
  font: 13px/1.231 arial, helvetica, clean, sans-serif;
  *font-size: small;
  *font: x-small;
}

table {
  font-size: inherit;
  font: 100%;
}

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%;
}

body {
  text-align: center;
}

#ft {
  clear: both;
}

#doc, #doc2, #doc3, #doc4, .yui-t1, .yui-t2, .yui-t3, .yui-t4, .yui-t5, .yui-t6, .yui-t7 {
  margin: auto;
  text-align: left;
  width: 57.69em;
  *width: 56.25em;
  min-width: 750px;
}

#doc2 {
  width: 73.076em;
  *width: 71.25em;
}

#doc3 {
  margin: auto 10px;
  width: auto;
}

#doc4 {
  width: 74.923em;
  *width: 73.05em;
}

.yui-b {
  position: relative;
}

.yui-b {
  _position: static;
}

#yui-main .yui-b {
  position: static;
}

#yui-main {
  width: 100%;
}

.yui-t1 #yui-main, .yui-t2 #yui-main, .yui-t3 #yui-main {
  float: right;
  margin-left: -25em;
}

.yui-t4 #yui-main, .yui-t5 #yui-main, .yui-t6 #yui-main {
  float: left;
  margin-right: -25em;
}

.yui-t1 .yui-b {
  float: left;
  width: 12.30769em;
  *width: 12em;
}

.yui-t1 #yui-main .yui-b {
  margin-left: 13.30769em;
  *margin-left: 13.05em;
}

.yui-t2 .yui-b {
  float: left;
  width: 13.8461em;
  *width: 13.5em;
}

.yui-t2 #yui-main .yui-b {
  margin-left: 14.8461em;
  *margin-left: 14.55em;
}

.yui-t3 .yui-b {
  float: left;
  width: 23.0769em;
  *width: 22.5em;
}

.yui-t3 #yui-main .yui-b {
  margin-left: 24.0769em;
  *margin-left: 23.62em;
}

.yui-t4 .yui-b {
  float: right;
  width: 13.8456em;
  *width: 13.5em;
}

.yui-t4 #yui-main .yui-b {
  margin-right: 14.8456em;
  *margin-right: 14.55em;
}

.yui-t5 .yui-b {
  float: right;
  width: 18.4615em;
  *width: 18em;
}

.yui-t5 #yui-main .yui-b {
  margin-right: 19.4615em;
  *margin-right: 19.125em;
}

.yui-t6 .yui-b {
  float: right;
  width: 23.0769em;
  *width: 22.5em;
}

.yui-t6 #yui-main .yui-b {
  margin-right: 24.0769em;
  *margin-right: 23.62em;
}

.yui-t7 #yui-main .yui-b {
  display: block;
  margin: 0 0 1em 0;
}

#yui-main .yui-b {
  float: none;
  width: auto;
}

.yui-gb .yui-u, .yui-g .yui-gb .yui-u, .yui-gb .yui-g, .yui-gb .yui-gb, .yui-gb .yui-gc, .yui-gb .yui-gd, .yui-gb .yui-ge, .yui-gb .yui-gf, .yui-gc .yui-u, .yui-gc .yui-g, .yui-gd .yui-u {
  float: left;
}

.yui-g .yui-u, .yui-g .yui-g, .yui-g .yui-gb, .yui-g .yui-gc, .yui-g .yui-gd, .yui-g .yui-ge, .yui-g .yui-gf, .yui-gc .yui-u, .yui-gd .yui-g, .yui-g .yui-gc .yui-u, .yui-ge .yui-u, .yui-ge .yui-g, .yui-gf .yui-g, .yui-gf .yui-u {
  float: right;
}

.yui-g div.first, .yui-gb div.first, .yui-gc div.first, .yui-gd div.first, .yui-ge div.first, .yui-gf div.first, .yui-g .yui-gc div.first, .yui-g .yui-ge div.first, .yui-gc div.first div.first {
  float: left;
}

.yui-g .yui-u, .yui-g .yui-g, .yui-g .yui-gb, .yui-g .yui-gc, .yui-g .yui-gd, .yui-g .yui-ge, .yui-g .yui-gf {
  width: 49.1%;
}

.yui-gb .yui-u, .yui-g .yui-gb .yui-u, .yui-gb .yui-g, .yui-gb .yui-gb, .yui-gb .yui-gc, .yui-gb .yui-gd, .yui-gb .yui-ge, .yui-gb .yui-gf, .yui-gc .yui-u, .yui-gc .yui-g, .yui-gd .yui-u {
  width: 32%;
  margin-left: 1.99%;
}

.yui-gb .yui-u {
  *margin-left: 1.9%;
  *width: 31.9%;
}

.yui-gc div.first, .yui-gd .yui-u {
  width: 66%;
}

.yui-gd div.first {
  width: 32%;
}

.yui-ge div.first, .yui-gf .yui-u {
  width: 74.2%;
}

.yui-ge .yui-u, .yui-gf div.first {
  width: 24%;
}

.yui-g .yui-gb div.first, .yui-gb div.first, .yui-gc div.first, .yui-gd div.first {
  margin-left: 0;
}

.yui-g .yui-g .yui-u, .yui-gb .yui-g .yui-u, .yui-gc .yui-g .yui-u, .yui-gd .yui-g .yui-u, .yui-ge .yui-g .yui-u, .yui-gf .yui-g .yui-u {
  width: 49%;
  *width: 48.1%;
  *margin-left: 0;
}

.yui-g .yui-gb div.first, .yui-gb .yui-gb div.first {
  *margin-right: 0;
  *width: 32%;
  _width: 31.7%;
}

.yui-g .yui-gc div.first, .yui-gd .yui-g {
  width: 66%;
}

.yui-gb .yui-g div.first {
  *margin-right: 4%;
  _margin-right: 1.3%;
}

.yui-gb .yui-gc div.first, .yui-gb .yui-gd div.first {
  *margin-right: 0;
}

.yui-gb .yui-gb .yui-u, .yui-gb .yui-gc .yui-u {
  *margin-left: 1.8%;
  _margin-left: 4%;
}

.yui-g .yui-gb .yui-u {
  _margin-left: 1%;
}

.yui-gb .yui-gd .yui-u {
  *width: 66%;
  _width: 61.2%;
}

.yui-gb .yui-gd div.first {
  *width: 31%;
  _width: 29.5%;
}

.yui-g .yui-gc .yui-u, .yui-gb .yui-gc .yui-u {
  width: 32%;
  _float: right;
  margin-right: 0;
  _margin-left: 0;
}

.yui-gb .yui-gc div.first {
  width: 66%;
  *float: left;
  *margin-left: 0;
}

.yui-gb .yui-ge .yui-u, .yui-gb .yui-gf .yui-u {
  margin: 0;
}

.yui-gb .yui-gb .yui-u {
  _margin-left: 0.7%;
}

.yui-gb .yui-g div.first, .yui-gb .yui-gb div.first {
  *margin-left: 0;
}

.yui-gc .yui-g .yui-u, .yui-gd .yui-g .yui-u {
  *width: 48.1%;
  *margin-left: 0;
}

s .yui-gb .yui-gd div.first {
  width: 32%;
}

.yui-g .yui-gd div.first {
  _width: 29.9%;
}

.yui-ge .yui-g {
  width: 24%;
}

.yui-gf .yui-g {
  width: 74.2%;
}

.yui-gb .yui-ge div.yui-u, .yui-gb .yui-gf div.yui-u {
  float: right;
}

.yui-gb .yui-ge div.first, .yui-gb .yui-gf div.first {
  float: left;
}

.yui-gb .yui-ge .yui-u, .yui-gb .yui-gf div.first {
  *width: 24%;
  _width: 20%;
}

.yui-gb .yui-ge div.first, .yui-gb .yui-gf .yui-u {
  *width: 73.5%;
  _width: 65.5%;
}

.yui-ge div.first .yui-gd .yui-u {
  width: 65%;
}

.yui-ge div.first .yui-gd div.first {
  width: 32%;
}

#bd:after, .yui-g:after, .yui-gb:after, .yui-gc:after, .yui-gd:after, .yui-ge:after, .yui-gf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

#bd, .yui-g, .yui-gb, .yui-gc, .yui-gd, .yui-ge, .yui-gf {
  zoom: 1;
}

figure {
  margin: 0;
  padding: 0;
}

:root {
  /* Color */
  --color-text: #000000;
  --color-link: #686868;
  --color-rule: #e5e5e5;
  --color-rule-subtle: #ccc;
  --color-code-background: #f8f8f8;
  /* Typography */
  --font-family-body: "Libre Franklin", "Helvetica", "Liberation Sans", Arial, sans-serif;
  --font-size-body: 20px;
  --line-height-body: 1.55;
  --font-weight-light: 300;
  --font-weight-bold: 700;
  --font-weight-heavy: 800;
  /* Layout and spacing */
  --layout-content-width: 755px;
  --space-container-inline: 20px;
  --space-column-gap: 3.8%;
  --space-body-copy: 1.25em;
  --space-list-item-block: 0.4em;
  /* Borders */
  --border-rule: solid 2px var(--color-rule);
  --border-topbar: solid 10px var(--color-rule);
  --border-section: thin dotted var(--color-rule-subtle);
}

/* ==================================================================================================================== */
/* ! The 1140px Grid V2 by Andy Taylor \ http://cssgrid.net \ http://www.twitter.com/andytlr \ http://www.andytlr.com   */
/* ==================================================================================================================== */
.container {
  padding-left: var(--space-container-inline);
  padding-right: var(--space-container-inline);
}

.row {
  width: 100%;
  max-width: var(--layout-content-width);
  min-width: var(--layout-content-width);
  margin: 0 auto;
  overflow: hidden;
}

.onecol,
.twocol,
.threecol,
.fourcol,
.fivecol,
.sixcol,
.sevencol,
.eightcol,
.ninecol,
.tencol,
.elevencol {
  margin-right: var(--space-column-gap);
  float: left;
  min-height: 1px;
}

.row .onecol {
  width: 4.85%;
}

.row .twocol {
  width: 13.45%;
}

.row .threecol {
  width: 22.05%;
}

.row .fourcol {
  width: 30.75%;
}

.row .fivecol {
  width: 39.45%;
}

.row .sixcol {
  width: 48%;
}

.row .sevencol {
  width: 56.75%;
}

.row .eightcol {
  width: 65.4%;
}

.row .ninecol {
  width: 74.05%;
}

.row .tencol {
  width: 82.7%;
}

.row .elevencol {
  width: 91.35%;
}

.row .twelvecol {
  width: 100%;
  float: left;
}

.last {
  margin-right: 0px;
}

@media handheld, only screen and (max-width: 550px) {
  body {
    -webkit-text-size-adjust: none;
  }
  .row,
  body,
  .container {
    width: 100%;
    min-width: 0;
    margin-left: 0px;
    margin-right: 0px;
    padding-left: 0px;
    padding-right: 0px;
  }
  .row .onecol,
  .row .twocol,
  .row .threecol,
  .row .fourcol,
  .row .fivecol,
  .row .sixcol,
  .row .sevencol,
  .row .eightcol,
  .row .ninecol,
  .row .tencol,
  .row .elevencol,
  .row .twelvecol {
    width: auto;
    float: none;
    margin-left: 0px;
    margin-right: 0px;
    padding-left: var(--space-container-inline);
    padding-right: var(--space-container-inline);
  }
}
@font-face {
  font-family: "Libre Franklin";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("fonts/libre-franklin-latin-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Libre Franklin";
  font-style: italic;
  font-weight: 400 800;
  font-display: swap;
  src: url("fonts/libre-franklin-latin-italic.woff2") format("woff2");
}
body {
  font-family: var(--font-family-body);
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  text-align: left;
}
@media (max-width: 550px) {
  body {
    font-size: 0.85em;
  }
}

a:link {
  text-decoration: none;
  color: var(--color-link);
}

a:visited {
  text-decoration: none;
  color: var(--color-link);
}

a:hover {
  text-decoration: underline;
}

a:active {
  text-decoration: underline;
  color: var(--color-text);
}

/* The header */
nav {
  display: block;
  margin: 0.625em 0;
  font-size: 1em;
  line-height: 1.7em;
}
nav > .row {
  display: flex;
  align-items: center;
}
nav .shingle {
  font-size: 1.7em;
  font-weight: bold;
  text-align: left;
  padding-left: 0.15em;
}
nav .shingle a {
  text-decoration: none;
  font-weight: bold;
  color: var(--color-text);
}
nav .shingle a:hover {
  color: var(--color-link);
}
nav .links {
  text-align: right;
}
nav .nav-menu {
  display: none;
}
nav .links ul {
  float: right;
  list-style-type: none;
}
nav .links li {
  float: left;
  list-style-position: inside;
  margin-left: 0.5em;
  font-size: 0.9em;
  font-weight: var(--font-weight-light);
}
nav .links li a {
  text-decoration: none;
}
nav .links li a:hover {
  text-decoration: underline;
}
@media (max-width: 550px) {
  nav > .row {
    justify-content: space-between;
    flex-wrap: nowrap;
    overflow: visible;
  }
  nav .row .fivecol,
  nav .row .sevencol {
    float: none;
    width: auto;
  }
  nav .shingle {
    float: none;
    margin-bottom: 0;
    padding-left: 0;
  }
  nav .links {
    min-width: 0;
    position: relative;
  }
  nav .desktop-nav {
    display: none;
  }
  nav .nav-menu {
    display: block;
  }
  nav .nav-menu-toggle {
    display: flex;
    width: 32px;
    height: 32px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  nav .nav-menu-toggle:focus-visible {
    outline: 2px solid var(--color-link);
    outline-offset: 3px;
  }
  nav .hamburger {
    display: flex;
    width: 20px;
    flex-direction: column;
    gap: 4px;
  }
  nav .hamburger span {
    height: 2px;
    background: var(--color-link);
  }
  nav .nav-drawer {
    inset: 0 0 0 auto;
    box-sizing: border-box;
    width: min(14rem, 80vw);
    height: 100dvh;
    max-height: none;
    margin: 0;
    padding: 1em 1.25em;
    border: 0;
    border-left: 1px solid var(--color-rule-subtle);
    background: #fff;
    text-align: left;
  }
  nav .nav-drawer::backdrop {
    background: color-mix(in srgb, var(--color-link) 18%, transparent);
  }
  nav .nav-drawer-header {
    display: flex;
    margin-bottom: 0.75em;
    padding-bottom: 0.5em;
    align-items: center;
    justify-content: space-between;
    border-bottom: var(--border-rule);
    color: var(--color-text);
    font-size: 1.15em;
    font-weight: bold;
  }
  nav .nav-menu-close {
    position: relative;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  nav .nav-menu-close span::before,
  nav .nav-menu-close span::after {
    position: absolute;
    top: 15px;
    right: 6px;
    width: 20px;
    height: 2px;
    background: var(--color-link);
    content: "";
  }
  nav .nav-menu-close span::before {
    transform: rotate(45deg);
  }
  nav .nav-menu-close span::after {
    transform: rotate(-45deg);
  }
  nav .nav-menu-close:focus-visible {
    outline: 2px solid var(--color-link);
    outline-offset: 2px;
  }
  nav .nav-drawer ul {
    float: none;
  }
  nav .nav-drawer li {
    float: none;
    margin: 0;
    border-bottom: var(--border-section);
    font-size: 1em;
  }
  nav .nav-drawer li a {
    display: block;
    padding: 0.65em 0;
    color: var(--color-link);
  }
}

.topbar {
  border-bottom: var(--border-topbar);
  margin-top: 0.625em;
  margin-bottom: 20px;
}

.detailborderbumper {
  border-bottom: var(--border-rule);
  margin: 0.5em 0 0.5em 0;
}

#detailborderbumper {
  clear: both;
  border-bottom: var(--border-rule);
  margin: 0.5em 10em 0.5em 4.5em;
}

.content h1 {
  font-weight: var(--font-weight-heavy);
  font-size: 2.2em;
  margin: 0 0 0.1em 0;
  line-height: 130%;
}

.talk-detail {
  max-width: 64rem;
}

.talk-detail header {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 0;
}

.talk-detail header + section {
  margin-top: 24px;
}

.talk-detail header > h1 {
  margin-bottom: 0;
}

.talk-detail-subtitle {
  max-width: 42ch;
  margin: 0;
  font-size: 1.15em;
  font-weight: var(--font-weight-light);
  line-height: 1.3;
}

.talk-detail #detailpubdate p {
  margin: 0;
}

.talk-detail section {
  margin-top: 2.5em;
}

.talk-detail h2 {
  margin-bottom: 0.5em;
  font-size: 1.15em;
  font-weight: var(--font-weight-bold);
}

.talk-detail-deck,
.talk-detail-video-embed {
  box-sizing: border-box;
  display: block;
  width: 100%;
  aspect-ratio: var(--talk-deck-aspect-ratio, 4 / 3);
  border: var(--border-rule);
}

.talk-detail-video-embed {
  aspect-ratio: 16 / 9;
}

.talk-detail-text {
  border-top: var(--border-rule);
  padding: 0.75em 0;
}

.talk-detail-text summary {
  cursor: pointer;
}

.talk-detail-text-content {
  max-width: 68ch;
  margin-top: 1.25em;
  font-size: 1em;
  font-weight: var(--font-weight-light);
  line-height: var(--line-height-body);
}

.talk-detail-text-content section + section {
  margin-top: 1.5em;
}

.talk-detail-text-content h3 {
  font-size: 1em;
}

.talk-detail-text-content pre {
  overflow-x: auto;
  white-space: pre-wrap;
}

.talk-transcript {
  list-style: none;
  margin: 0;
  padding: 0;
}

.talk-transcript li {
  display: grid;
  gap: 0.75em;
  grid-template-columns: 4em minmax(0, 1fr);
  margin-bottom: 0.8em;
}

.talk-transcript time {
  font-variant-numeric: tabular-nums;
  font-weight: 500;
}

.talk-detail video {
  display: block;
  width: 100%;
}

@media (max-width: 550px) {
  .talk-detail header {
    gap: 8px;
  }

  .talk-transcript li {
    grid-template-columns: 1fr;
    gap: 0.15em;
  }
}

img,
video,
object,
embed {
  max-width: 100%;
}

img,
video {
  height: auto;
}

picture.photo,
picture.photo img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
}

figure {
  margin: 0;
  padding: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.biotext p {
  margin-bottom: var(--space-body-copy);
  font-weight: var(--font-weight-light);
}
.biotext h2 {
  font-weight: var(--font-weight-bold);
}

#detailbody {
  margin: 0 1.1em 1.1em 0em;
  text-align: left;
}
#detailbody p {
  margin-bottom: var(--space-body-copy);
  font-weight: var(--font-weight-light);
}
#detailbody .twelvecol > img,
#detailbody .twelvecol > video:first-child,
#detailbody .twelvecol > picture:first-child,
#detailbody .twelvecol > figure:first-child {
  display: block;
  margin-bottom: var(--space-body-copy) !important;
}
#detailbody .chart-embed {
  margin-bottom: var(--space-body-copy);
}
#detailbody strong, #detailbody b {
  font-weight: var(--font-weight-bold);
}
#detailbody h2 {
  font-size: 1.15em;
  font-weight: bold;
  margin: 1.5em 0 0.3em 0;
}
#detailbody ol, #detailbody ul {
  margin-bottom: var(--space-body-copy);
  margin-left: 0.8em;
}
#detailbody li {
  margin-bottom: var(--space-list-item-block);
  margin-left: 0.8em;
}
#detailbody ul li {
  list-style-type: disc;
}
#detailbody ol li {
  list-style-type: decimal;
}
#detailbody blockquote {
  margin-bottom: 1.15em;
  background: var(--color-code-background) none repeat scroll 0 0;
  margin-left: 1.2em;
  line-height: 1.3em;
  padding: 1em;
  font-family: monospace;
}
#detailbody pre {
  margin-left: 1em;
  line-height: 1.3em;
}

#detailpubdate p {
  margin-bottom: 1.5em;
  font-size: 0.8em;
  font-weight: var(--font-weight-light);
}

.latimes-tour video {
  width: 100%;
  height: auto;
}

@media (max-width: 480px) {
  figure.latimes-tour {
    margin-left: 0;
    margin-right: 0;
  }
  #headline .twelvecol,
  #detailpubdate .twelvecol,
  #detailbody .twelvecol {
    margin: 0;
    padding: 0;
  }
}
ul.bullets {
  padding-left: 0;
}
ul.bullets li {
  min-height: 1.5em;
  padding: var(--space-list-item-block) 0 var(--space-list-item-block) 0;
  line-height: 1.5em;
  font-size: 1em;
  list-style-type: square;
  list-style-position: outside;
}

.interiorlist p.description {
  font-size: 1em;
  margin: 0 0 0.5em 0;
}
.interiorlist .catalog-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.interiorlist .section-hed {
  font-weight: var(--font-weight-bold);
  font-size: 1.1em;
  margin: 0.4em 0 0.2em;
  padding: 0.05em 0 0.25em;
  border-bottom: var(--border-section);
}
.interiorlist .listitem {
  min-height: 1.5em;
  padding-top: var(--space-list-item-block);
  padding-bottom: var(--space-list-item-block);
  line-height: 1.5em;
  list-style-type: none;
  font-size: 1em;
}
@media (max-width: 480px) {
  .interiorlist .listitem {
    padding-left: 0;
  }
}
.interiorlist .listitem h2 {
  font-weight: var(--font-weight-bold);
}

#ft {
  margin-top: 1em;
  font-size: 0.8em;
  border-top: var(--border-rule);
  padding-top: 0.4em;
  margin-bottom: 1em;
  padding-top: 0.5em;
}
#ft .twelvecol {
  display: flex;
  justify-content: space-between;
}
#ft .footer-revision {
  margin-left: auto;
  white-space: nowrap;
}
@media (max-width: 550px) {
  #ft {
    font-size: 0.65em;
  }
}

/* Pygments styles for source code in posts */
.source .hll {
  background-color: #ffffcc;
  margin: 0 -12px;
  padding: 0 12px;
}

#detailbody .source {
  overflow-x: auto;
  margin-bottom: 1.25em;
  border: 1px solid var(--color-rule);
  border-radius: 4px;
  background-color: #fff;
}

#detailbody .source pre,
#detailbody .source code {
  margin: 0;
  padding: 10px 7px;
  font-family: "IBM Plex Mono", "Droid Sans Mono", monospace;
  font-size: 1rem;
  line-height: 1.3em;
  white-space: pre;
}

@media (max-width: 875px) {
  #detailbody .source pre,
  #detailbody .source code {
    font-size: 0.85em;
  }
}

.source .c {
  color: #408080;
  font-style: italic;
} /* Comment */
.source .err {
  border: 1px solid #ff0000;
} /* Error */
.source .k {
  color: #008000;
  font-weight: bold;
} /* Keyword */
.source .o {
  color: #666666;
} /* Operator */
.source .cm {
  color: #408080;
  font-style: italic;
} /* Comment.Multiline */
.source .cp {
  color: #bc7a00;
} /* Comment.Preproc */
.source .c1 {
  color: #408080;
  font-style: italic;
} /* Comment.Single */
.source .cs {
  color: #408080;
  font-style: italic;
} /* Comment.Special */
.source .gd {
  color: #a00000;
} /* Generic.Deleted */
.source .ge {
  font-style: italic;
} /* Generic.Emph */
.source .gr {
  color: #ff0000;
} /* Generic.Error */
.source .gh {
  color: #000080;
  font-weight: bold;
} /* Generic.Heading */
.source .gi {
  color: #00a000;
} /* Generic.Inserted */
.source .go {
  color: #808080;
} /* Generic.Output */
.source .gp {
  color: #000080;
  font-weight: bold;
} /* Generic.Prompt */
.source .gs {
  font-weight: bold;
} /* Generic.Strong */
.source .gu {
  color: #800080;
  font-weight: bold;
} /* Generic.Subheading */
.source .gt {
  color: #0040d0;
} /* Generic.Traceback */
.source .kc {
  color: #008000;
  font-weight: bold;
} /* Keyword.Constant */
.source .kd {
  color: #008000;
  font-weight: bold;
} /* Keyword.Declaration */
.source .kn {
  color: #008000;
  font-weight: bold;
} /* Keyword.Namespace */
.source .kp {
  color: #008000;
} /* Keyword.Pseudo */
.source .kr {
  color: #008000;
  font-weight: bold;
} /* Keyword.Reserved */
.source .kt {
  color: #b00040;
} /* Keyword.Type */
.source .m {
  color: #666666;
} /* Literal.Number */
.source .s {
  color: #ba2121;
} /* Literal.String */
.source .na {
  color: #7d9029;
} /* Name.Attribute */
.source .nb {
  color: #008000;
} /* Name.Builtin */
.source .nc {
  color: #0000ff;
  font-weight: bold;
} /* Name.Class */
.source .no {
  color: #880000;
} /* Name.Constant */
.source .nd {
  color: #aa22ff;
} /* Name.Decorator */
.source .ni {
  color: #999999;
  font-weight: bold;
} /* Name.Entity */
.source .ne {
  color: #d2413a;
  font-weight: bold;
} /* Name.Exception */
.source .nf {
  color: #0000ff;
} /* Name.Function */
.source .nl {
  color: #a0a000;
} /* Name.Label */
.source .nn {
  color: #0000ff;
  font-weight: bold;
} /* Name.Namespace */
.source .nt {
  color: #008000;
  font-weight: bold;
} /* Name.Tag */
.source .nv {
  color: #19177c;
} /* Name.Variable */
.source .ow {
  color: #aa22ff;
  font-weight: bold;
} /* Operator.Word */
.source .w {
  color: #bbbbbb;
} /* Text.Whitespace */
.source .mf {
  color: #666666;
} /* Literal.Number.Float */
.source .mh {
  color: #666666;
} /* Literal.Number.Hex */
.source .mi {
  color: #666666;
} /* Literal.Number.Integer */
.source .mo {
  color: #666666;
} /* Literal.Number.Oct */
.source .sb {
  color: #ba2121;
} /* Literal.String.Backtick */
.source .sc {
  color: #ba2121;
} /* Literal.String.Char */
.source .sd {
  color: #ba2121;
  font-style: italic;
} /* Literal.String.Doc */
.source .s2 {
  color: #ba2121;
} /* Literal.String.Double */
.source .se {
  color: #bb6622;
  font-weight: bold;
} /* Literal.String.Escape */
.source .sh {
  color: #ba2121;
} /* Literal.String.Heredoc */
.source .si {
  color: #bb6688;
  font-weight: bold;
} /* Literal.String.Interpol */
.source .sx {
  color: #008000;
} /* Literal.String.Other */
.source .sr {
  color: #bb6688;
} /* Literal.String.Regex */
.source .s1 {
  color: #ba2121;
} /* Literal.String.Single */
.source .ss {
  color: #19177c;
} /* Literal.String.Symbol */
.source .bp {
  color: #008000;
} /* Name.Builtin.Pseudo */
.source .vc {
  color: #19177c;
} /* Name.Variable.Class */
.source .vg {
  color: #19177c;
} /* Name.Variable.Global */
.source .vi {
  color: #19177c;
} /* Name.Variable.Instance */
.source .il {
  color: #666666;
} /* Literal.Number.Integer.Long */

/* Matches the Pygments palette used by the Sphinx documentation sites. */
.source .c,
.source .ch,
.source .cm,
.source .cpf,
.source .c1 {
  color: #408090;
  font-style: italic;
}
.source .k,
.source .kc,
.source .kd,
.source .kn,
.source .kr,
.source .ow {
  color: #007020;
  font-weight: bold;
}
.source .m,
.source .mb,
.source .mf,
.source .mh,
.source .mi,
.source .mo,
.source .il {
  color: #208050;
}
.source .s,
.source .sa,
.source .sb,
.source .sc,
.source .sd,
.source .sh,
.source .s1,
.source .s2,
.source .ss {
  color: #4070a0;
}
.source .nb,
.source .bp {
  color: #007020;
}
.source .nc,
.source .nn,
.source .fm {
  color: #0e84b5;
  font-weight: bold;
}
.source .no,
.source .nv,
.source .vc,
.source .vg,
.source .vi,
.source .vm {
  color: #bb60d5;
}
.source .cp,
.source .kp {
  color: #007020;
}
.source .cs {
  color: #408090;
  background-color: #fff0f0;
}
.source .ges {
  font-weight: bold;
  font-style: italic;
}
.source .go {
  color: #333;
}
.source .gp {
  color: #c65d09;
  font-weight: bold;
}
.source .gt {
  color: #04d;
}
.source .kt {
  color: #902000;
}
.source .na {
  color: #4070a0;
}
.source .nd {
  color: #555;
  font-weight: bold;
}
.source .ni {
  color: #d55537;
  font-weight: bold;
}
.source .ne {
  color: #007020;
}
.source .nf {
  color: #06287e;
}
.source .nl {
  color: #002070;
  font-weight: bold;
}
.source .nt {
  color: #062873;
  font-weight: bold;
}
.source .se {
  color: #4070a0;
  font-weight: bold;
}
.source .si {
  color: #70a0d0;
  font-style: italic;
}
.source .sr {
  color: #235388;
}
.source .sx {
  color: #c65d09;
}
.error-page {
  padding-top: clamp(1.5rem, 8vw, 4.5rem);
  padding-bottom: clamp(2rem, 10vw, 6rem);
}
.error-page h1 {
  max-width: 12ch;
  font-size: clamp(2.5rem, 9vw, 5.5rem);
  line-height: 0.95;
  letter-spacing: -0.04em;
  text-wrap: balance;
}

.error-page__message {
  max-width: 33rem;
  margin-top: 1.25rem;
  font-size: 1.15em;
}
