:root {
  --js-radius-base: 3px;
  --js-clr-overline: rgb(35,82,134);
  --js-gap-y: 5rem;
  --js-font-copy: 'Lora', Georgia, 'Times New Roman', serif;
  --js-clr-inverse-muted: rgb(171,178,186);
  --js-clr-border: rgb(222,224,227);
  --js-clr-copy: rgb(21,30,40);
  --js-fw-cta: 600;
  --js-clr-primary-strong: rgb(19,52,88);
  --js-font-heading: 'Montserrat', 'Gill Sans', 'Segoe UI', system-ui, sans-serif;
  --js-clr-dark-surface: rgb(38,48,59);
  --js-radius-btn: 3px;
  --js-fs-h2: clamp(1.6rem, 3vw, 2.25rem);
  --js-clr-key: rgb(35,82,134);
  --js-shadow-1: 0 10px 30px rgba(0,0,0,.06);
  --js-transform-cta: none;
  --js-max-w-main: 1187px;
  --js-clr-on-dark: rgb(244,245,246);
  --js-clr-brand-on-dark: rgb(64,133,206);
  --js-fs-h1: clamp(2rem, 4.5vw, 3.25rem);
  --js-clr-background: rgb(255,255,255);
  --js-lh-title: 1.15;
  --js-ls-button: 0;
  --js-clr-secondary: rgb(170,124,75);
  --js-ls-label: .12em;
  --js-fw-heading: 700;
  --js-clr-accent-contrast: rgb(255,255,255);
  --js-transform-eyebrow: uppercase;
  --js-fs-h3: 1.25rem;
  --js-clr-subtle: rgb(87,101,117);
  --js-clr-brand-subtle: rgb(152,185,220);
  --js-clr-on-primary: rgb(255,255,255);
  --js-clr-dark-bg: rgb(15,23,31);
  --js-radius-lg: 6px;
  --js-shadow-2: 0 24px 60px rgba(0,0,0,.12);
  --js-ls-title: -0.01em;
  --js-fs-body: 1.0625rem;
  --js-clr-raised: rgb(239,242,245);
  --js-lh-base: 1.6;
}
*,*::before,*::after {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}
body {
  overflow-wrap: anywhere;
  line-height: var(--js-lh-base);
  color: var(--js-clr-copy);
  background: var(--js-clr-background);
  margin: 0;
  font-family: var(--js-font-copy);
  font-size: var(--js-fs-body);
}
img,svg,video {
  display: block;
  max-width: 100%;
  height: auto;
}
h1,h2,h3,h4 {
  color: var(--js-clr-copy);
  font-family: var(--js-font-heading);
  line-height: var(--js-lh-title);
  font-weight: var(--js-fw-heading);
  letter-spacing: var(--js-ls-title);
  hyphens: manual;
  margin: 0 0 .6em;
}
h1 {
  font-size: var(--js-fs-h1);
}
h2 {
  font-size: var(--js-fs-h2);
}
h3 {
  line-height: 1.3;
  font-size: var(--js-fs-h3);
}
h4 {
  font-size: 1.05rem;
  line-height: 1.35;
}
p {
  margin: 0 0 1em;
}
a {
  text-decoration: none;
  color: var(--js-clr-key);
}
@media (min-width:481px){
a[href^="tel:"] {
  white-space: nowrap;
}
}
a:hover {
  color: var(--js-clr-primary-strong);
}
ul,ol {
  margin: 0 0 1em;
  padding-left: 1.25em;
}
button,input,textarea,select {
  font: inherit;
  color: inherit;
}
::selection {
  background: var(--js-clr-brand-subtle);
  color: var(--js-clr-copy);
}
.js-row-lg {
  width: min(100% - 2.5rem,var(--js-max-w-main));
  margin-inline: auto;
}
.js-p46e {
  width: min(100% - 2.5rem,48rem);
}
.js-m6f9 {
  padding-block: var(--js-gap-y);
}
.js-toggle {
  background: var(--js-clr-raised);
}
.js-c509 {
  color: var(--js-clr-on-dark);
  background: var(--js-clr-dark-bg);
}
.js-c509 h1,.js-c509 h2,.js-c509 h3,.js-c509 h4 {
  color: inherit;
}
.js-c509 a {
  color: var(--js-clr-brand-on-dark);
}
.js-c509 .js-pane,.js-c509 .js-edge-z {
  color: var(--js-clr-inverse-muted);
}
.js-c509 .js-stack {
  color: var(--js-clr-brand-on-dark);
}
.js-ct {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .8rem 1.5rem;
  border-radius: var(--js-radius-btn);
  background: var(--js-clr-key);
  color: var(--js-clr-on-primary);
  font-weight: var(--js-fw-cta);
  text-transform: var(--js-transform-cta);
  letter-spacing: var(--js-ls-button);
  line-height: 1.25;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background .2s,color .2s,border-color .2s,transform .2s;
}
.js-ct:hover {
  color: var(--js-clr-on-primary);
  background: var(--js-clr-primary-strong);
}
.js-ct:active {
  transform: translateY(1px);
}
.js-strip {
  background: transparent;
  color: var(--js-clr-key);
  border-color: currentColor;
}
.js-strip:hover {
  color: var(--js-clr-on-primary);
  background: var(--js-clr-key);
  border-color: var(--js-clr-key);
}
.js-sec2-accent {
  background: var(--js-clr-secondary);
  color: var(--js-clr-accent-contrast);
}
.js-sec2-accent:hover {
  background: var(--js-clr-secondary);
  filter: brightness(.92);
  color: var(--js-clr-accent-contrast);
}
.js-lead {
  background: var(--js-clr-on-dark);
  color: var(--js-clr-dark-bg);
}
.js-lead:hover {
  color: var(--js-clr-dark-bg);
  background: rgb(255,255,255);
}
.js-block {
  padding: .55rem 1.1rem;
  font-size: .9rem;
}
.js-box-fill {
  padding: 1rem 2rem;
  font-size: 1.05rem;
}
.js-c509 .js-ct:not(.js-strip):not(.js-sec2-accent):not(.js-lead) {
  background: var(--js-clr-brand-on-dark);
  color: var(--js-clr-dark-bg);
}
.js-c509 .js-ct:not(.js-strip):not(.js-sec2-accent):not(.js-lead):hover {
  color: var(--js-clr-dark-bg);
  background: var(--js-clr-on-dark);
}
.js-c509 .js-strip {
  border-color: var(--js-clr-inverse-muted);
  color: var(--js-clr-on-dark);
}
.js-c509 .js-strip:hover {
  background: var(--js-clr-on-dark);
  border-color: var(--js-clr-on-dark);
  color: var(--js-clr-dark-bg);
}
.js-s2fd {
  display: grid;
  gap: 1.5rem;
}
.js-list-a {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr));
}
.js-bar {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr));
}
.js-brand-v2 {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,12rem),1fr));
}
.js-chip {
  grid-template-columns: repeat(2,1fr);
}
.js-title-fit {
  grid-template-columns: repeat(3,1fr);
}
.js-top-z {
  grid-template-columns: repeat(4,1fr);
}
@media (max-width:960px){
.js-top-z {
  grid-template-columns: repeat(2,1fr);
}
.js-title-fit {
  grid-template-columns: repeat(2,1fr);
}
}
@media (max-width:560px){
.js-chip,.js-title-fit,.js-top-z {
  grid-template-columns: 1fr;
}
}
.js-u342 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.js-u342>* {
  min-width: 0;
}
.js-u342.js-chip>* {
  flex: 0 0 calc((100% - 1.5rem)/2);
}
.js-u342.js-title-fit>* {
  flex: 0 0 calc((100% - 3rem)/3);
}
.js-u342.js-top-z>* {
  flex: 0 0 calc((100% - 4.5rem)/4);
}
@media (max-width:960px){
.js-u342.js-title-fit>*,.js-u342.js-top-z>* {
  flex-basis: calc((100% - 1.5rem)/2);
}
}
@media (max-width:560px){
.js-u342.js-chip>*,.js-u342.js-title-fit>*,.js-u342.js-top-z>* {
  flex-basis: 100%;
}
}
.js-pane {
  color: var(--js-clr-subtle);
  font-size: 1.15rem;
}
.js-stack {
  font-size: .8rem;
  margin-bottom: .75rem;
  display: inline-block;
  letter-spacing: var(--js-ls-label);
  color: var(--js-clr-overline);
  font-weight: 700;
  text-transform: var(--js-transform-eyebrow);
}
.js-edge-z {
  color: var(--js-clr-subtle);
}
.js-logo {
  text-align: center;
}
.js-inner-alt {
  height: 1px;
  padding: 0;
  clip: rect(0 0 0 0);
  margin: -1px;
  width: 1px;
  overflow: hidden;
  border: 0;
  position: absolute;
}
@media (max-width:640px){
.js-m6f9 {
  padding-block: calc(var(--js-gap-y) * .7);
}
}
.js-ke1c {
  z-index: 20;
  top: 0;
  background: var(--js-clr-background);
  position: sticky;
}
.js-i038 {
  border-bottom: 1px solid var(--js-clr-border);
}
.js-s1d8 {
  box-shadow: var(--js-shadow-1);
}
.js-a655 {
  display: flex;
  align-items: center;
  gap: 2rem;
  min-height: 4.75rem;
}
.js-a6dc {
  min-width: 0;
  max-width: 40%;
  display: inline-flex;
  flex: none;
}
.js-cc1a {
  width: auto;
  height: auto;
  max-height: 2.25rem;
}
.js-cee1 {
  margin-inline: auto;
}
.js-re3c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .5rem 1.6rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.js-h223 {
  font-weight: 500;
  color: var(--js-clr-copy);
}
.js-h223:hover,.js-fa94 {
  color: var(--js-clr-key);
}
.js-fb00 {
  display: flex;
  align-items: center;
  gap: .7rem;
  flex: none;
  color: var(--js-clr-copy);
}
.js-fb00:hover {
  color: var(--js-clr-key);
}
.js-re6d {
  place-items: center;
  border-radius: 50%;
  color: var(--js-clr-on-primary);
  width: 2.6rem;
  height: 2.6rem;
  background: var(--js-clr-key);
  display: grid;
}
.js-re6d svg {
  height: 1.15rem;
  width: 1.15rem;
}
.js-gb51 {
  line-height: 1.25;
  display: flex;
  flex-direction: column;
}
.js-me5c {
  color: var(--js-clr-subtle);
  font-size: .75rem;
}
.js-bca2 {
  font-size: 1.05rem;
  white-space: nowrap;
}
.js-p395 {
  display: none;
}
.js-p395:focus-visible + .js-slot {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 4px;
}
.js-slot {
  display: none;
  flex: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 44px;
  min-height: 44px;
  padding: .5rem;
  cursor: pointer;
}
.js-n64f {
  border-radius: 2px;
  display: block;
  height: 2px;
  width: 24px;
  background: var(--js-clr-copy);
}
@media (max-width:980px){
.js-a655 {
  gap: .75rem;
  justify-content: space-between;
}
.js-p395 {
  display: block;
}
.js-slot {
  order: 3;
  display: flex;
}
.js-fb00 {
  order: 2;
  margin-inline-start: auto;
}
.js-gb51 {
  display: none;
}
.js-cee1 {
  left: 0;
  right: 0;
  border-bottom: 1px solid var(--js-clr-border);
  display: none;
  position: absolute;
  padding: 1.25rem;
  top: 100%;
  box-shadow: var(--js-shadow-1);
  background: var(--js-clr-background);
  margin: 0;
}
.js-p395:checked ~ .js-cee1 {
  display: block;
}
.js-re3c {
  flex-direction: column;
  align-items: flex-start;
  gap: .75rem;
}
}
.js-sec2 {
  padding-top: clamp(3rem,7vw,5rem);
}
.js-a387 {
  color: var(--js-clr-on-primary);
  background: var(--js-clr-key);
}
.js-tag-light {
  background: var(--js-clr-dark-bg);
  color: var(--js-clr-on-dark);
}
.js-ya43 {
  display: grid;
  grid-template-columns: minmax(0,1.6fr) minmax(0,1fr);
  gap: 2rem clamp(2rem,6vw,5rem);
  align-items: end;
  padding-bottom: clamp(2.5rem,6vw,4rem);
}
.js-layer {
  letter-spacing: var(--js-ls-title);
  font-size: clamp(2rem,5vw,3.75rem);
  font-weight: var(--js-fw-heading);
  font-family: var(--js-font-heading);
  line-height: 1.08;
  margin: 0;
}
.js-shape {
  color: inherit;
  font-size: .78rem;
  opacity: .75;
  text-transform: uppercase;
  letter-spacing: .12em;
  margin-bottom: .75rem;
}
.js-taca {
  font-weight: 700;
  display: block;
  color: inherit;
  font-size: clamp(1.3rem,2.5vw,1.7rem);
}
.js-elem-active {
  text-underline-offset: .2em;
  text-decoration: underline;
  color: inherit;
  display: block;
  margin-top: .3rem;
}
.js-taca:hover,.js-elem-active:hover {
  opacity: .8;
  color: inherit;
}
.js-gee8 {
  margin: .75rem 0 0;
  opacity: .8;
}
.js-page-auto {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 2.5rem;
  padding-block: 1.5rem;
  border-top: 1px solid rgba(255,255,255,.2);
}
.js-a387 .js-page-auto {
  border-color: color-mix(in srgb,var(--js-clr-on-primary) 25%,transparent);
}
.js-xb20 {
  font-size: 1.2rem;
  font-family: var(--js-font-heading);
  font-weight: var(--js-fw-heading);
  color: inherit;
}
.js-dot-new {
  text-wrap: balance;
  font-size: 1.05rem;
  max-width: 24rem;
}
.js-outer-stack,.js-head {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1.5rem;
  margin: 0;
  padding: 0;
}
.js-d8e0 {
  color: inherit;
}
.js-d8e0:hover {
  opacity: .75;
  color: inherit;
}
.js-n075 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .4rem 1.5rem;
  margin-inline-start: auto;
  font-size: .82rem;
  opacity: .8;
}
@media (max-width:820px){
.js-ya43 {
  align-items: start;
  grid-template-columns: minmax(0,1fr);
}
.js-n075 {
  margin-inline-start: 0;
}
}
.js-t596 {
  position: fixed;
  z-index: 50;
  inset-inline-end: 1rem;
  bottom: 1rem;
  width: min(24rem,calc(100% - 2rem));
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  overflow: auto;
  overscroll-behavior: contain;
  padding: 1.35rem;
  background: var(--js-clr-raised);
  color: var(--js-clr-copy);
  border: 1px solid var(--js-clr-border);
  border-top: 3px solid var(--js-clr-key);
  border-radius: var(--js-radius-base);
  box-shadow: var(--js-shadow-1);
  font-size: .92rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.js-t596[hidden] {
  display: none;
}
.js-t697 {
  line-height: 1.25;
  font-size: 1.18rem;
  letter-spacing: var(--js-ls-title);
  margin: 0 0 .7rem;
  font-weight: var(--js-fw-heading);
  font-family: var(--js-font-heading);
}
.js-outro-round {
  margin: 0 0 .9rem;
}
.js-stat {
  text-underline-offset: .2em;
  max-width: 100%;
  font-weight: 600;
  color: var(--js-clr-key);
  text-decoration: underline;
  display: inline-block;
}
.js-stat:hover {
  color: var(--js-clr-primary-strong);
}
.js-ke13 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .65rem;
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: 1px solid var(--js-clr-border);
}
.js-jc46 {
  min-width: 0;
  min-height: 44px;
  padding: .65rem .6rem;
  border: 1px solid var(--js-clr-border);
  border-radius: var(--js-radius-btn);
  background: var(--js-clr-background);
  color: var(--js-clr-copy);
  font-weight: var(--js-fw-cta);
  font-size: .9rem;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.js-jc46:hover {
  border-color: var(--js-clr-key);
  background: var(--js-clr-key);
  color: var(--js-clr-on-primary);
}
.js-jc46:focus-visible,.js-stat:focus-visible {
  outline: 3px solid var(--js-clr-key);
  outline-offset: 3px;
}
@media(max-width:560px){
.js-t596 {
  padding: .85rem .95rem;
  font-size: .84rem;
  bottom: .5rem;
  line-height: 1.4;
  inset-inline-end: .5rem;
  width: calc(100% - 1rem);
}
.js-t697 {
  margin-bottom: .35rem;
  font-size: 1rem;
}
.js-outro-round {
  margin-bottom: .5rem;
}
.js-ke13 {
  gap: .5rem;
  margin-top: .6rem;
  padding-top: .6rem;
}
.js-jc46 {
  min-height: 40px;
  padding: .5rem .4rem;
}
}
.js-core-center {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 3rem;
  align-items: start;
}
.js-oa35 .js-x55b {
  order: 1;
}
.js-oa35 .js-dot {
  order: 2;
}
.js-dot,.js-x55b {
  min-width: 0;
  overflow-wrap: anywhere;
}
.js-side {
  margin: 0;
}
.js-e132 {
  gap: .75rem;
  margin: 1.5rem 0 0;
  display: grid;
}
.js-copy {
  display: grid;
  grid-template-columns: minmax(0,9.5rem) minmax(0,1fr);
  gap: 1rem;
}
.js-i950 {
  color: var(--js-clr-subtle);
  font-weight: 600;
  font-size: .9rem;
}
.js-label-tight {
  min-width: 0;
  overflow-wrap: anywhere;
  margin: 0;
}
.js-qebf {
  color: inherit;
}
.js-x55b {
  display: grid;
  gap: 1rem;
  padding: 2rem;
  background: var(--js-clr-raised);
  border-radius: var(--js-radius-lg);
  border: 1px solid var(--js-clr-border);
}
.js-k9b4 {
  gap: .35rem;
  min-width: 0;
  display: grid;
}
.js-b158 {
  font-size: .9rem;
  font-weight: 600;
}
.js-naf4 {
  width: 100%;
  min-width: 0;
  padding: .7rem .9rem;
  border: 1px solid var(--js-clr-border);
  border-radius: var(--js-radius-base);
  background: var(--js-clr-background);
}
.js-naf4:focus {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 1px;
}
.js-node {
  resize: vertical;
}
.js-ib57 {
  justify-self: start;
  overflow-wrap: anywhere;
  max-width: 100%;
}
@media (max-width:860px){
.js-core-center {
  grid-template-columns: minmax(0,1fr);
}
.js-oa35 .js-x55b,.js-oa35 .js-dot {
  order: 0;
}
}
@media (max-width:480px){
.js-copy {
  grid-template-columns: minmax(0,1fr);
  gap: .25rem;
}
.js-x55b {
  padding: 1.25rem;
}
}
.js-u0bc {
  padding-block: calc(var(--js-gap-y) * .6) calc(var(--js-gap-y) * 1.1);
}
.js-y3fd {
  position: relative;
}
.js-wa6b {
  margin: 0;
}
.js-rf14 {
  aspect-ratio: 2/1;
  object-fit: cover;
  border-radius: var(--js-radius-lg);
  width: 100%;
}
.js-menu .js-rf14 {
  aspect-ratio: 16/9;
}
.js-info-muted {
  width: min(100%,32rem);
  box-shadow: var(--js-shadow-2);
  margin: -6rem 0 0 2.5rem;
  z-index: 1;
  padding: 2.25rem;
  position: relative;
  border-radius: var(--js-radius-lg);
}
.js-unit .js-info-muted {
  margin-right: 2.5rem;
  margin-left: auto;
}
.js-af40 .js-info-muted {
  color: var(--js-clr-copy);
  background: var(--js-clr-background);
}
.js-r180 .js-info-muted {
  color: var(--js-clr-on-primary);
  background: var(--js-clr-key);
}
.js-r180 .js-view-active,.js-r180 .js-kee4 {
  color: var(--js-clr-on-primary);
}
.js-h865 .js-info-muted {
  color: var(--js-clr-on-dark);
  background: var(--js-clr-dark-bg);
}
.js-h865 .js-view-active {
  color: var(--js-clr-on-dark);
}
.js-h865 .js-kee4 {
  color: var(--js-clr-brand-on-dark);
}
.js-kee4 {
  text-transform: var(--js-transform-eyebrow);
  margin-bottom: .75rem;
  font-size: .8rem;
  display: inline-block;
  letter-spacing: var(--js-ls-label);
  color: var(--js-clr-overline);
  font-weight: 700;
}
.js-view-active {
  font-size: var(--js-fs-h2);
  margin-bottom: .75rem;
}
.js-sec2-raised {
  opacity: .9;
  margin-bottom: 1.5rem;
}
@media (max-width:760px){
.js-info-muted {
  margin: -3rem 1rem 0;
  padding: 1.5rem;
  width: auto;
}
.js-unit .js-info-muted {
  margin-right: 1rem;
}
}
.js-foot-xl {
  overflow-wrap: anywhere;
}
.js-j71f {
  text-align: center;
  max-width: 50rem;
  margin: 0 auto 3rem;
}
.js-j71f h2 {
  font-size: clamp(1.8rem, 3.8vw, 3.25rem);
}
.js-box-center {
  display: grid;
  grid-template-columns: minmax(0, .6fr) minmax(0, 1.4fr);
  gap: clamp(1rem, 3vw, 3rem);
  padding: clamp(1.25rem, 3vw, 3rem);
  border-top: 1px solid var(--js-clr-border);
}
.js-box-center:nth-child(odd) {
  background: var(--js-clr-raised);
}
.js-strip-a {
  max-width: 20ch;
}
.js-line-fit {
  max-width: 70ch;
}
.js-line-fit p:last-child {
  margin-bottom: 0;
}
@media (max-width: 640px){
.js-box-center {
  grid-template-columns: minmax(0, 1fr);
}
.js-strip-a {
  max-width: none;
}
}
.js-f69a {
  max-width: 40rem;
  margin-bottom: 2.5rem;
}
.js-fig-sticky {
  margin: 0;
  list-style: none;
  padding: 0;
}
.js-mab5 {
  flex-direction: column;
  border-radius: var(--js-radius-lg);
  display: flex;
  background: var(--js-clr-background);
  overflow: hidden;
}
.js-sub-c .js-mab5 {
  border: 1px solid var(--js-clr-border);
}
.js-o55e .js-mab5 {
  box-shadow: var(--js-shadow-1);
}
.js-badge-half {
  margin: 0;
}
.js-kb94 {
  object-fit: cover;
  aspect-ratio: 10/7;
  width: 100%;
}
.js-u96a {
  flex-grow: 1;
  flex-direction: column;
  display: flex;
  padding: 1.5rem;
}
.js-panel-stack {
  margin-bottom: .4rem;
}
.js-brand-auto {
  color: var(--js-clr-subtle);
  flex-grow: 1;
}
.js-sa72 {
  font-weight: 600;
}
.js-link-ghost .js-mab5 {
  color: var(--js-clr-on-dark);
  position: relative;
  min-height: 22rem;
  justify-content: flex-end;
}
.js-link-ghost .js-badge-half {
  inset: 0;
  position: absolute;
}
.js-link-ghost .js-kb94 {
  height: 100%;
}
.js-link-ghost .js-u96a {
  background: linear-gradient(180deg,rgba(6,8,12,0) 0%,rgba(6,8,12,.85) 45%);
  flex-grow: 0;
  padding-top: 4rem;
  position: relative;
}
.js-link-ghost .js-panel-stack {
  color: inherit;
}
.js-link-ghost .js-brand-auto {
  color: inherit;
  opacity: .9;
}
.js-link-ghost .js-sa72 {
  color: inherit;
  text-decoration: underline;
}
.js-card {
  max-width: 34rem;
  grid-template-columns: minmax(0,1fr);
  margin-inline: auto;
}
.js-p03f {
  margin-bottom: 2.5rem;
  max-width: 40rem;
}
.js-y032 {
  padding: 0;
  counter-reset: none;
  list-style: none;
  margin: 0;
  display: grid;
  gap: 2rem;
}
.js-b174 .js-y032,.js-ct-compact .js-y032 {
  grid-template-columns: repeat(3,1fr);
}
.js-zone.js-b174 .js-y032,.js-zone.js-ct-compact .js-y032 {
  grid-template-columns: repeat(2,1fr);
}
.js-ref.js-b174 .js-y032,.js-ref.js-ct-compact .js-y032 {
  grid-template-columns: repeat(4,1fr);
}
.js-u230.js-b174 .js-y032,.js-u230.js-ct-compact .js-y032 {
  grid-template-columns: repeat(5,1fr);
  gap: 1.5rem;
}
.js-ct-compact .js-y032 {
  gap: 2rem 3rem;
}
.js-ct-compact .js-m346:nth-child(even) {
  margin-top: 2.5rem;
}
.js-je16 .js-y032 {
  gap: 0;
  max-width: 44rem;
}
.js-je16 .js-m346 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.5rem;
  padding-bottom: 2rem;
  position: relative;
}
.js-je16 .js-m346::before {
  background: var(--js-clr-border);
  position: absolute;
  left: 1.375rem;
  top: 3rem;
  content: "";
  width: 2px;
  bottom: 0;
}
.js-je16 .js-m346:last-child::before {
  display: none;
}
.js-media.js-je16 .js-m346::before {
  background: rgba(255,255,255,.18);
}
.js-site-v3 {
  display: inline-flex;
  align-items: center;
  font-family: var(--js-font-heading);
  font-weight: 700;
  margin-bottom: 1rem;
  justify-content: center;
}
.js-z5ce .js-site-v3 {
  border-radius: 50%;
  height: 2.75rem;
  width: 2.75rem;
  color: var(--js-clr-on-primary);
  background: var(--js-clr-key);
  font-size: 1.1rem;
}
.js-col-half .js-site-v3 {
  font-size: 3rem;
  opacity: .9;
  color: var(--js-clr-key);
  line-height: 1;
}
.js-media.js-col-half .js-site-v3 {
  color: var(--js-clr-brand-on-dark);
}
.js-o31a .js-site-v3 {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--js-radius-base);
  border: 2px solid var(--js-clr-key);
  color: var(--js-clr-key);
  font-size: 1.1rem;
}
.js-media.js-o31a .js-site-v3 {
  border-color: var(--js-clr-brand-on-dark);
  color: var(--js-clr-brand-on-dark);
}
.js-shape-bottom {
  font-size: 1.1rem;
  margin-bottom: .35rem;
}
.js-gf37 {
  color: var(--js-clr-subtle);
  font-size: .95rem;
  margin: 0;
}
.js-media .js-gf37 {
  color: var(--js-clr-inverse-muted);
}
@media (max-width:900px){
.js-b174 .js-y032,.js-ct-compact .js-y032,.js-ref.js-b174 .js-y032,.js-ref.js-ct-compact .js-y032,.js-u230.js-b174 .js-y032,.js-u230.js-ct-compact .js-y032 {
  grid-template-columns: repeat(2,1fr);
}
}
@media (max-width:640px){
.js-b174 .js-y032,.js-ct-compact .js-y032,.js-zone.js-b174 .js-y032,.js-ref.js-b174 .js-y032,.js-u230.js-b174 .js-y032,.js-zone.js-ct-compact .js-y032,.js-ref.js-ct-compact .js-y032,.js-u230.js-ct-compact .js-y032 {
  grid-template-columns: 1fr;
}
.js-ct-compact .js-m346:nth-child(even) {
  margin-top: 0;
}
}
.js-xdca {
  display: grid;
  grid-template-columns: repeat(12,minmax(0,1fr));
  align-items: center;
}
.js-xcad {
  grid-column: 1/9;
  margin: 0;
  grid-row: 1;
}
.js-ke06 .js-xcad {
  grid-column: 5/13;
}
.js-zf24 {
  aspect-ratio: 3/2;
  width: 100%;
  object-fit: cover;
  border-radius: var(--js-radius-lg);
}
.js-ct-lg {
  background: var(--js-clr-background);
  padding: clamp(1.5rem,4vw,2.75rem);
  position: relative;
  grid-row: 1;
  grid-column: 7/13;
  box-shadow: var(--js-shadow-2);
  border-radius: var(--js-radius-lg);
}
.js-ke06 .js-ct-lg {
  grid-column: 1/7;
}
.js-x972 .js-ct-lg {
  background: var(--js-clr-key);
  color: var(--js-clr-on-primary);
}
.js-n0d4 {
  letter-spacing: var(--js-ls-label);
  font-size: .8rem;
  text-transform: var(--js-transform-eyebrow);
  font-weight: 700;
  display: block;
  margin-bottom: .7rem;
  color: var(--js-clr-overline);
}
.js-x972 .js-n0d4,.js-x972 .js-pc84 {
  color: var(--js-clr-on-primary);
}
.js-pc84 {
  margin-bottom: .8rem;
}
.js-r768 {
  opacity: .9;
  margin-bottom: 1.5rem;
}
@media (max-width:820px){
.js-xdca {
  grid-template-columns: minmax(0,1fr);
}
.js-xcad,.js-ke06 .js-xcad {
  grid-column: 1;
}
.js-ct-lg,.js-ke06 .js-ct-lg {
  grid-column: 1;
  margin: -3rem 1rem 0;
  grid-row: 2;
}
}
.js-frame {
  background: var(--js-clr-background);
  overflow-wrap: anywhere;
  padding-block: calc(var(--js-gap-y) * .7);
}
.js-core {
  display: grid;
  grid-template-columns: minmax(0,1.8fr) minmax(0,1fr);
  background: var(--js-clr-raised);
  border: 1px solid var(--js-clr-border);
  border-radius: var(--js-radius-lg);
  overflow: hidden;
}
.js-ref-muted {
  padding: clamp(1.5rem,4.5vw,4rem);
  min-width: 0;
  border-top: 4px solid var(--js-clr-key);
}
.js-z751 .js-ref-muted {
  border-top: 0;
  border-left: 4px solid var(--js-clr-key);
}
.js-info {
  color: var(--js-clr-key);
}
.js-x487 {
  max-width: 22ch;
  line-height: 1.15;
  font-size: calc(var(--js-fs-h1) * .88);
}
.js-a8fc {
  line-height: 1.7;
  color: var(--js-clr-subtle);
  font-size: 1.05rem;
  margin: 1.2rem 0 0;
  max-width: 38rem;
}
.js-b6da {
  margin: 0;
  min-width: 0;
  padding: .8rem;
  display: flex;
}
.js-col-auto {
  border-radius: var(--js-radius-base);
  aspect-ratio: 4/5;
  object-fit: cover;
  height: 100%;
  width: 100%;
  min-height: 12rem;
}
@media (max-width:700px){
.js-core {
  grid-template-columns: 1fr;
}
.js-x487 {
  font-size: var(--js-fs-h1);
}
.js-b6da {
  padding: 0 1.25rem 1.25rem;
}
.js-col-auto {
  min-height: 0;
  aspect-ratio: 16/7;
  height: auto;
}
.js-a8fc {
  font-size: 1rem;
}
}
.js-k571 {
  min-width: 0;
}
.js-tdff {
  max-width: 54rem;
  margin-bottom: 2rem;
}
.js-v153 {
  overflow-wrap: anywhere;
}
.js-z9fa {
  display: grid;
  gap: 1.2rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.js-info-top {
  overflow-wrap: anywhere;
  min-width: 0;
}
.js-info-top h3 {
  font-size: 1.2rem;
  margin: 0 0 .6rem;
}
.js-info-top p {
  line-height: 1.7;
  margin: 0;
}
.js-box2-md {
  display: block;
  font-weight: 700;
  letter-spacing: .04em;
  overflow-wrap: anywhere;
  color: var(--js-clr-subtle);
  margin-bottom: .7rem;
  font-size: .8rem;
}
.js-z9fa {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.js-info-top {
  border: 1px solid var(--js-clr-border);
  padding: 1.6rem;
  border-radius: var(--js-radius-base);
}
@media (max-width: 700px){
.js-z9fa {
  grid-template-columns: minmax(0, 1fr);
}
.js-info-top {
  grid-template-columns: minmax(0, 1fr);
  gap: .5rem;
}
}
.js-v39a {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 3rem;
  align-items: center;
}
.js-badge-sub .js-p9ca {
  order: 2;
}
.js-p9ca {
  margin: 0;
}
.js-badge-fit {
  aspect-ratio: 9/8;
  width: 100%;
  object-fit: cover;
  border-radius: var(--js-radius-lg);
}
.js-c5f4 {
  color: var(--js-clr-subtle);
}
.js-btn {
  font-weight: 600;
}
@media (max-width:860px){
.js-v39a {
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
.js-badge-sub .js-p9ca {
  order: 0;
}
}
.js-logo-v2 {
  display: grid;
  grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
  gap: 2rem;
  align-items: start;
}
.js-sub-v2 {
  color: var(--js-clr-on-primary);
  padding: clamp(1.5rem,3.5vw,3rem);
  border-radius: var(--js-radius-lg);
  background: var(--js-clr-key);
}
.js-rfa8 {
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  font-size: 1.2rem;
  margin-bottom: 2rem;
}
.js-link-x {
  color: inherit;
  overflow-wrap: anywhere;
  font-size: clamp(1.5rem,2.5vw,2.2rem);
}
.js-y68e {
  font-size: .95rem;
  margin: 0;
}
.js-vf46 {
  display: grid;
  gap: .75rem;
}
.js-i0f7 {
  border: 1px solid var(--js-clr-border);
  border-radius: var(--js-radius-base);
  background: var(--js-clr-background);
  min-width: 0;
}
.js-gbbf {
  position: relative;
  display: grid;
  grid-template-columns: 1.5rem minmax(0,1fr);
  gap: .75rem;
  padding: 1.25rem 3rem 1.25rem 1.25rem;
  cursor: pointer;
  list-style: none;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.js-gbbf::-webkit-details-marker {
  display: none;
}
.js-gbbf::after {
  content: '+';
  top: 1.05rem;
  right: 1.25rem;
  font-weight: 400;
  color: var(--js-clr-key);
  position: absolute;
  font-size: 1.4rem;
}
.js-i0f7[open] .js-gbbf::after {
  content: '−';
}
.js-gbbf:focus-visible {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 3px;
}
.js-elem {
  color: var(--js-clr-subtle);
  font-size: .75rem;
  padding-top: .2rem;
}
.js-zce8 {
  padding: 0 1.25rem 1.5rem 3.5rem;
  margin: 0;
  color: var(--js-clr-subtle);
}
@media(max-width:760px){
.js-logo-v2 {
  grid-template-columns: minmax(0,1fr);
}
.js-rfa8 {
  margin-bottom: 1rem;
}
.js-zce8 {
  padding-left: 1.25rem;
}
}
.js-h501 {
  padding-block: calc(var(--js-gap-y) * .8);
}
.js-o90e {
  background: var(--js-clr-raised);
}
.js-site-muted {
  background: var(--js-clr-key);
  color: var(--js-clr-on-primary);
}
.js-site-muted .js-sec,.js-site-muted .js-grid {
  color: var(--js-clr-on-primary);
}
.js-n4bc {
  border-bottom: 1px solid var(--js-clr-border);
}
.js-b436 {
  text-align: center;
}
.js-i5b2 {
  margin-bottom: .75rem;
  font-size: .85rem;
  opacity: .8;
}
.js-page-top {
  margin: 0 .5rem;
}
.js-ga33 {
  opacity: .7;
}
.js-sec {
  margin-bottom: .5rem;
}
.js-card-first {
  opacity: .85;
  font-size: 1.1rem;
  max-width: 40rem;
  margin: 0;
}
.js-b436 .js-card-first {
  margin-inline: auto;
}
.js-tc55 {
  overflow-wrap: anywhere;
}
.js-nf37>* {
  min-width: 0;
}
.js-cell {
  max-width: 24ch;
}
.js-xf5d {
  color: var(--js-clr-subtle);
}
.js-line {
  text-align: center;
  white-space: normal;
  max-width: 100%;
}
.js-r605 {
  max-width: 54rem;
  margin-bottom: 3rem;
}
.js-cell {
  font-size: clamp(2rem,4vw,3.4rem);
}
.js-nf37 {
  display: grid;
  grid-template-columns: minmax(0,.65fr) minmax(0,1.6fr);
  gap: clamp(2rem,6vw,6rem);
  align-items: start;
}
.js-ee04 {
  padding-left: 1.5rem;
  border-left: 3px solid var(--js-clr-key);
}
.js-pf66 {
  line-height: 1.35;
  font-family: var(--js-font-heading);
  font-size: 1.5rem;
}
.js-t7d4 {
  margin: 1.8rem 0;
}
.js-t7d4 div {
  margin-bottom: 1.2rem;
}
.js-t7d4 dt,.js-page {
  color: var(--js-clr-subtle);
  font-size: .8rem;
  margin: 0 0 .4rem;
}
.js-t7d4 dd {
  font-size: 1.15rem;
  margin: 0;
}
.js-nd35 {
  margin: .7rem 0 0;
  padding: 0;
  list-style: none;
}
.js-nd35 li {
  padding: .6rem 0;
  border-top: 1px solid var(--js-clr-border);
  font-size: .9rem;
}
.js-dec0 {
  display: grid;
  grid-template-columns: 4.5rem minmax(0,1fr);
  gap: 1.5rem;
  padding: 0 0 2rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid var(--js-clr-border);
}
.js-wrap-alt {
  font-size: clamp(2rem,5vw,3.5rem);
  line-height: 1.1;
  letter-spacing: -.05em;
  font-family: var(--js-font-heading);
  color: var(--js-clr-key);
}
.js-r2c7 {
  font-size: clamp(1.3rem,2.1vw,1.75rem);
}
.js-xf5d {
  max-width: 62ch;
  margin: 0;
  line-height: 1.9;
}
.js-tf21 {
  min-width: 0;
}
@media(max-width:760px){
.js-nf37 {
  grid-template-columns: 1fr;
}
.js-ee04 {
  padding: 1.2rem 0 1.2rem 1.2rem;
  border-bottom: 1px solid var(--js-clr-border);
  border-top: 1px solid var(--js-clr-border);
}
.js-t7d4 {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 2.5rem;
  margin: 1.2rem 0;
}
.js-t7d4 div {
  margin: 0;
}
.js-nd35 {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1rem;
}
.js-nd35 li {
  border-top: 0;
  padding: 0;
}
.js-dec0 {
  grid-template-columns: 2.5rem minmax(0,1fr);
  gap: 1rem;
}
.js-wrap-alt {
  font-size: 2rem;
}
}
.js-s23b {
  margin-bottom: 2rem;
}
.js-chip-sub {
  padding: 0;
  list-style: none;
  margin: 0;
}
.js-pill {
  padding: 1.5rem;
  border-top: 3px solid var(--js-clr-key);
  background: var(--js-clr-raised);
  border-radius: 0 0 var(--js-radius-base) var(--js-radius-base);
}
.js-wce4 {
  font-size: 2rem;
  line-height: 1;
  margin-bottom: .75rem;
  color: var(--js-clr-brand-subtle);
  display: block;
  font-family: var(--js-font-heading);
}
.js-ct-x {
  color: var(--js-clr-subtle);
  margin: 0;
}
.js-view {
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: 3rem;
}
.js-s8dc {
  padding: 1.5rem 1.75rem;
  border-left: 4px solid var(--js-clr-key);
  margin: 2rem 0 0;
  border-radius: 0 var(--js-radius-base) var(--js-radius-base) 0;
  background: var(--js-clr-raised);
}
.js-pic-dark {
  font-size: 1.2rem;
  font-family: var(--js-font-heading);
  margin-bottom: .5rem;
}
.js-aa37 {
  color: var(--js-clr-subtle);
  font-style: normal;
  font-size: .9rem;
}
@media (max-width:860px){
.js-view {
  grid-template-columns: 1fr;
  gap: 1rem;
}
}
.js-grid-mini {
  color: var(--js-clr-on-dark);
  display: flex;
  overflow: hidden;
  position: relative;
  padding-block: calc(var(--js-gap-y) * .9);
  isolation: isolate;
  align-items: center;
  min-height: 18rem;
}
.js-field {
  position: absolute;
  object-fit: cover;
  z-index: -2;
  width: 100%;
  height: 100%;
  inset: 0;
}
.js-y2c6 {
  z-index: -1;
  position: absolute;
  inset: 0;
}
.js-frame-third .js-y2c6 {
  background: linear-gradient(180deg,rgba(8,10,14,.55),rgba(8,10,14,.7));
}
.js-r3b6 .js-y2c6 {
  opacity: .88;
  background: var(--js-clr-key);
}
.js-r3b6 {
  color: var(--js-clr-on-primary);
}
.js-wa13 {
  width: min(100% - 2.5rem,var(--js-max-w-main));
}
.js-body-old .js-wa13 {
  text-align: center;
}
.js-o6da {
  opacity: .85;
  margin-bottom: .75rem;
  font-size: .85rem;
}
.js-hero {
  color: inherit;
}
.js-hero:hover {
  color: inherit;
  text-decoration: underline;
}
.js-s2b2 {
  margin: 0 .5rem;
}
.js-y136 {
  opacity: .8;
}
.js-btn-compact {
  margin-bottom: .5rem;
  color: inherit;
}
.js-quote {
  margin: 0;
  max-width: 40rem;
  font-size: 1.1rem;
  opacity: .9;
}
.js-body-old .js-quote {
  margin-inline: auto;
}
.js-note {
  margin-bottom: 2.5rem;
  max-width: 40rem;
}
.js-n611 .js-note {
  text-align: center;
  margin-inline: auto;
}
.js-u3e8 {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,20rem),1fr));
  gap: 2rem 3rem;
}
.js-jefe {
  margin: 0;
}
.js-block-sticky {
  font-family: var(--js-font-heading);
  font-weight: var(--js-fw-heading);
  font-size: 1.1rem;
  margin-bottom: .5rem;
  display: flex;
  gap: .75rem;
  align-items: baseline;
}
.js-qea4 {
  flex-shrink: 0;
  font-weight: 700;
  color: var(--js-clr-key);
  font-size: .85rem;
}
.js-brand {
  color: var(--js-clr-subtle);
  margin: 0;
}
.js-r195 {
  padding-block: calc(var(--js-gap-y) * .85);
  overflow-wrap: anywhere;
  background: var(--js-clr-background);
}
.js-title {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  margin-bottom: 1.5rem;
}
.js-l0b1 {
  letter-spacing: var(--js-ls-label);
  font-weight: 600;
  color: var(--js-clr-key);
  text-transform: var(--js-transform-eyebrow);
  max-width: 75%;
  font-size: .8rem;
}
.js-bc8e {
  background: var(--js-clr-border);
  height: 1px;
  flex: 1;
}
.js-elem-light .js-bc8e {
  height: 3px;
  background: var(--js-clr-key);
}
.js-x353 {
  padding-bottom: 1.8rem;
  margin: 0;
  line-height: 1.1;
  font-size: calc(var(--js-fs-h1) * 1.2);
  max-width: 24ch;
}
.js-x2d7 {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.6fr);
  gap: 2rem;
  align-items: start;
  border-top: 1px solid var(--js-clr-border);
  padding-top: 1.3rem;
}
.js-u94d {
  max-width: 24rem;
  font-weight: 600;
  color: var(--js-clr-subtle);
  font-size: .8rem;
}
.js-lf68 {
  grid-template-columns: minmax(0,1fr);
}
.js-yd38 {
  line-height: 1.7;
  max-width: 42rem;
  color: var(--js-clr-subtle);
  margin: 0;
  font-size: 1.1rem;
}
@media (max-width:640px){
.js-x353 {
  font-size: var(--js-fs-h1);
}
.js-x2d7 {
  grid-template-columns: 1fr;
  gap: 1rem;
}
.js-u94d {
  display: none;
}
.js-yd38 {
  font-size: 1rem;
}
}
.js-intro-accent {
  margin-bottom: 2.5rem;
  max-width: 60ch;
}
.js-box2 {
  column-gap: clamp(2rem,6vw,6rem);
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin: 0;
  display: grid;
  padding: 0;
  list-style: none;
}
.js-text {
  border-top: 2px solid var(--js-clr-copy);
  min-width: 0;
  padding-block: 2rem;
}
.js-r93d {
  height: 100%;
}
.js-ib84 {
  min-height: 2.75rem;
  height: 100%;
  color: var(--js-clr-copy);
  flex-direction: column;
  display: flex;
}
.js-ib84:hover {
  color: var(--js-clr-copy);
}
.js-ib84:focus-visible {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 6px;
}
.js-flow-raised {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .4rem 1rem;
  font-size: .75rem;
  line-height: 1.6;
  color: var(--js-clr-subtle);
  margin-bottom: 1.2rem;
}
.js-flow-raised span:first-child {
  font-weight: 600;
  color: var(--js-clr-key);
}
.js-box2-top {
  font-size: clamp(1.55rem,2.8vw,2.4rem);
  margin-bottom: 1rem;
  max-width: 26ch;
}
.js-ib84:hover .js-box2-top {
  color: var(--js-clr-key);
}
.js-ctx-auto {
  font-size: 1rem;
  margin-bottom: 1.5rem;
  color: var(--js-clr-subtle);
  max-width: 60ch;
  line-height: 1.75;
}
.js-copy-loose {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .5rem 1rem;
  padding-top: 1rem;
  margin-top: auto;
  border-top: 1px solid var(--js-clr-border);
}
.js-ve65 {
  font-size: .8rem;
  color: var(--js-clr-subtle);
}
.js-gdac {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  font-size: .85rem;
  font-weight: 600;
  color: var(--js-clr-key);
  min-height: 2.75rem;
}
@media(max-width:760px){
.js-box2 {
  grid-template-columns: minmax(0,1fr);
}
.js-text {
  padding-block: 1.5rem;
}
.js-ctx-auto {
  font-size: .95rem;
}
}
.js-m680 {
  hyphens: auto;
}
.js-af16 {
  background: var(--js-clr-raised);
  padding: clamp(1.4rem,4vw,4rem);
  border: 1px solid var(--js-clr-border);
  border-radius: var(--js-radius-lg);
}
.js-i0bd {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 2rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid var(--js-clr-border);
  margin-bottom: 3rem;
}
.js-w4fa {
  font-family: var(--js-font-heading);
  overflow-wrap: anywhere;
  font-size: 1.4rem;
  min-width: 0;
}
.js-jae2 {
  font-size: .85rem;
  overflow-wrap: anywhere;
  min-width: 0;
  color: var(--js-clr-subtle);
}
.js-v1ed {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,.85fr);
  gap: clamp(2rem,5vw,5rem);
}
.js-dc24 {
  max-width: 15ch;
  font-size: clamp(1.8rem,3.5vw,3rem);
  overflow-wrap: anywhere;
}
.js-pic-auto {
  color: var(--js-clr-subtle);
  margin: 0;
  max-width: 40ch;
}
.js-list-tight {
  margin: 0;
}
.js-nfa6 {
  padding-block: 1.2rem;
  border-bottom: 1px solid var(--js-clr-border);
}
.js-nfa6:first-child {
  padding-top: 0;
}
.js-i933 {
  margin-bottom: .6rem;
  color: var(--js-clr-subtle);
  font-size: .8rem;
}
.js-e3b4 {
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 1.1rem;
}
.js-area {
  color: var(--js-clr-copy);
  text-underline-offset: .2em;
  text-decoration: underline;
}
.js-area:hover {
  color: var(--js-clr-key);
}
.js-h48c {
  font-style: normal;
}
.js-area:focus-visible {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 4px;
}
@media(max-width:760px){
.js-v1ed {
  grid-template-columns: minmax(0,1fr);
  gap: 2rem;
}
.js-i0bd {
  margin-bottom: 2rem;
  flex-wrap: wrap;
  gap: .5rem 2rem;
}
}
.js-u215 {
  display: grid;
  border-top: 1px solid var(--js-clr-border);
  gap: 1.25rem;
  margin-top: 3rem;
  padding-top: 2rem;
  min-width: 0;
}
.js-f04a {
  overflow-wrap: anywhere;
  margin: 0;
  font-size: clamp(1.2rem,2vw,1.5rem);
}
.js-z5a5 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1.25rem 2rem;
}
.js-elem-mini {
  gap: .4rem;
  display: grid;
  min-width: 0;
}
.js-hero-active {
  grid-column: 1/-1;
}
.js-r34a {
  font-size: .8rem;
  color: var(--js-clr-subtle);
}
.js-stack-tight {
  width: 100%;
  min-width: 0;
  padding: .6rem 0;
  border: 0;
  border-bottom: 1px solid var(--js-clr-border);
  border-radius: 0;
  background: transparent;
  color: var(--js-clr-copy);
  font: inherit;
}
.js-stack-tight:focus {
  outline: none;
  box-shadow: 0 1px 0 var(--js-clr-key);
  border-bottom-color: var(--js-clr-key);
}
.js-note-a {
  resize: vertical;
  min-height: 6rem;
}
.js-frame-big {
  justify-self: start;
  overflow-wrap: anywhere;
  max-width: 100%;
}
@media(max-width:760px){
.js-u215 {
  margin-top: 2rem;
}
.js-z5a5 {
  grid-template-columns: minmax(0,1fr);
}
}
.js-b8a8 {
  overflow-wrap: anywhere;
}
.js-nav-compact {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}
.js-badge-lg h2 {
  max-width: 23ch;
}
.js-afe8 {
  margin-top: 2rem;
}
.js-yd20 {
  padding-top: 1.25rem;
  border-top: 1px solid var(--js-clr-border);
}
.js-yd20 h3 {
  font-size: 1rem;
}
.js-yd20 p {
  color: var(--js-clr-subtle);
}
.js-z0a9 {
  background: var(--js-clr-raised);
  border: 1px solid var(--js-clr-border);
  padding: clamp(1.4rem, 3.5vw, 3rem);
  border-radius: var(--js-radius-base);
}
.js-nfe6 {
  border-radius: 50%;
  display: inline-flex;
  margin-bottom: 2rem;
  padding: 1rem;
  color: var(--js-clr-on-primary);
  background: var(--js-clr-key);
}
.js-nfe6 svg {
  width: 1.5rem;
  height: 1.5rem;
}
.js-veb3 {
  font-family: var(--js-font-heading);
  font-size: 1.5rem;
  font-weight: 700;
}
.js-i816 {
  margin: 0;
}
.js-i816 div {
  padding: 1rem 0;
  border-top: 1px solid var(--js-clr-border);
}
.js-i816 dt {
  margin-bottom: .5rem;
  color: var(--js-clr-subtle);
  font-size: .75rem;
}
.js-i816 dd {
  margin: 0;
}
@media (max-width: 720px){
.js-nav-compact {
  grid-template-columns: minmax(0, 1fr);
}
}
.js-panel {
  max-width: 46rem;
}
.js-elem-round {
  color: var(--js-clr-subtle);
  font-size: .85rem;
}
.js-seed {
  font-size: 1.05rem;
}
.js-a88e {
  margin-top: 2rem;
}
.js-menu-light {
  font-size: 1.3rem;
}
.js-t854 {
  color: var(--js-clr-copy);
}
.js-quote-alt {
  padding-block: calc(var(--js-gap-y) * .9) calc(var(--js-gap-y) * .7);
}
.js-k3c9 {
  border-bottom: 4px solid var(--js-clr-key);
}
.js-e3e4 {
  border-bottom: 4px solid var(--js-clr-secondary);
}
.js-ue37 {
  border-bottom: 1px solid var(--js-clr-border);
}
.js-copy-first {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 2rem 4rem;
  align-items: end;
}
.js-s14b {
  margin: 0;
  font-size: calc(var(--js-fs-h1) * 1.05);
}
.js-base {
  margin: 0 0 .35rem;
  max-width: 34rem;
}
@media (max-width:760px){
.js-copy-first {
  grid-template-columns: 1fr;
  gap: 1rem;
}
}
.js-ct-dark {
  overflow-wrap: anywhere;
}
.js-jc61 {
  display: grid;
  grid-template-columns: minmax(12rem,19rem) minmax(0,44rem);
  gap: clamp(2rem,5vw,5rem);
  justify-content: center;
  align-items: start;
}
.js-f893 {
  padding-top: .35rem;
  min-width: 0;
  position: sticky;
  top: 7rem;
}
.js-tag {
  margin: 0 0 1.75rem;
  padding: 0 0 1.5rem;
  border-bottom: 2px solid var(--js-clr-key);
}
.js-yd2f {
  color: var(--js-clr-subtle);
  font-size: .75rem;
  letter-spacing: .05em;
  margin-bottom: .4rem;
}
.js-b06d {
  margin: 0;
  font-size: .95rem;
  font-weight: 600;
  color: var(--js-clr-copy);
}
.js-z496 {
  list-style: none;
  margin: 0;
  display: grid;
  gap: .3rem;
  padding: 0;
}
.js-g3a6 {
  min-width: 0;
}
.js-outro-mini {
  display: grid;
  grid-template-columns: 1.65rem minmax(0,1fr);
  gap: .65rem;
  align-items: baseline;
  padding: .55rem .2rem;
  color: var(--js-clr-copy);
  font-size: .85rem;
  line-height: 1.45;
  border-bottom: 1px solid var(--js-clr-border);
}
.js-outro-mini:hover {
  color: var(--js-clr-key);
  text-underline-offset: .2em;
  text-decoration: underline;
}
.js-outro-mini:focus-visible {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 3px;
}
.js-layer-third {
  font-size: .72rem;
  color: var(--js-clr-subtle);
  font-variant-numeric: tabular-nums;
}
.js-m904 {
  min-width: 0;
}
.js-badge {
  margin: 0 0 2.5rem;
  font-size: clamp(1.1rem,1.5vw,1.25rem);
  line-height: 1.7;
  white-space: pre-line;
}
.js-wrap-v3 {
  padding-block: 1.8rem;
  border-top: 1px solid var(--js-clr-border);
}
.js-wrap-v3:last-child {
  padding-bottom: 0;
}
.js-u02d {
  scroll-margin-top: 8rem;
  font-size: clamp(1.15rem,1.6vw,1.45rem);
  margin: 0 0 1rem;
  line-height: 1.35;
}
.js-u02d:focus {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 5px;
}
.js-oa71 {
  margin: 0 0 1rem;
  white-space: pre-line;
  line-height: 1.8;
  font-size: 1rem;
}
.js-oa71:last-child {
  margin-bottom: 0;
}
@media(max-width:780px){
.js-jc61 {
  grid-template-columns: minmax(0,1fr);
  gap: 2rem;
}
.js-f893 {
  position: static;
  padding: 1.25rem;
  background: var(--js-clr-raised);
  border: 1px solid var(--js-clr-border);
  border-radius: var(--js-radius-base);
}
.js-tag {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}
.js-z496 {
  grid-template-columns: repeat(2,minmax(0,1fr));
  column-gap: 1.25rem;
}
.js-badge {
  margin-bottom: 1.75rem;
}
}
@media(max-width:480px){
.js-z496 {
  grid-template-columns: minmax(0,1fr);
}
.js-wrap-v3 {
  padding-block: 1.5rem;
}
}
.js-x70e {
  overflow-wrap: anywhere;
}
.js-w167 {
  max-width: 72rem;
}
.js-img-stack {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.6fr);
  gap: 3rem;
  align-items: start;
  padding-bottom: 3rem;
}
.js-meta {
  padding-left: 1rem;
  border-left: 3px solid var(--js-clr-key);
  margin: 0;
}
.js-part-soft {
  margin-bottom: .35rem;
  color: var(--js-clr-subtle);
  font-size: .8rem;
}
.js-shape-inline {
  color: var(--js-clr-copy);
  font-weight: 600;
  margin: 0;
  font-size: .95rem;
}
.js-ne8d {
  white-space: pre-line;
  min-width: 0;
  line-height: 1.65;
  margin: 0;
  font-size: clamp(1.1rem,1.6vw,1.3rem);
}
.js-wrap {
  display: grid;
  grid-template-columns: minmax(0,4rem) minmax(0,17rem) minmax(0,1fr);
  gap: clamp(1rem,2.5vw,2.5rem);
  align-items: start;
  border-top: 1px solid var(--js-clr-border);
  padding-block: 2rem;
}
.js-wrap:last-child {
  border-bottom: 1px solid var(--js-clr-border);
}
.js-author-hard {
  color: var(--js-clr-key);
  font-size: 2.7rem;
  font-weight: var(--js-fw-heading);
  line-height: 1;
  font-variant-numeric: tabular-nums;
  font-family: var(--js-font-heading);
}
.js-qfa8 {
  scroll-margin-top: 8rem;
  min-width: 0;
  font-size: clamp(1.1rem,1.6vw,1.35rem);
  margin: 0;
  line-height: 1.4;
}
.js-shape-left {
  color: var(--js-clr-copy);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: .25em;
}
.js-shape-left:hover {
  text-decoration-color: currentColor;
  color: var(--js-clr-key);
}
.js-shape-left:focus-visible,.js-qfa8:focus {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 5px;
}
.js-foot-hard {
  max-width: 65ch;
  min-width: 0;
}
.js-base-right {
  white-space: pre-line;
  line-height: 1.8;
  font-size: 1rem;
  margin: 0 0 1rem;
}
.js-base-right:last-child {
  margin-bottom: 0;
}
@media(max-width:860px){
.js-img-stack {
  grid-template-columns: minmax(0,1fr);
  gap: 1.5rem;
  padding-bottom: 2rem;
}
.js-wrap {
  grid-template-columns: 2.5rem minmax(0,1fr);
  gap: 1rem 1.25rem;
}
.js-author-hard {
  font-size: 2rem;
}
.js-foot-hard {
  grid-column: 2;
}
.js-qfa8 {
  align-self: center;
}
}
@media(max-width:480px){
.js-wrap {
  gap: 1rem;
  padding-block: 1.5rem;
}
.js-foot-hard {
  grid-column: 1/-1;
}
.js-author-hard {
  font-size: 1.8rem;
}
}
.js-j616 {
  overflow-wrap: anywhere;
  background: var(--js-clr-raised);
}
.js-block-x {
  max-width: 56rem;
  background: var(--js-clr-background);
  border: 1px solid var(--js-clr-border);
  border-top: 3px solid var(--js-clr-key);
  border-radius: 0 0 var(--js-radius-base) var(--js-radius-base);
  box-shadow: var(--js-shadow-1);
  padding: clamp(1.25rem,4vw,3.5rem);
}
.js-r41d {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 0 2.75rem;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid var(--js-clr-border);
  font-size: .85rem;
}
.js-l4d6 {
  color: var(--js-clr-subtle);
  min-width: 0;
}
.js-inner-dark {
  min-width: 0;
  margin: 0;
  color: var(--js-clr-copy);
  text-align: right;
}
.js-r388 {
  max-width: 66ch;
  margin-inline: auto;
}
.js-me80 {
  white-space: pre-line;
  margin: 0 0 2.5rem;
  line-height: 1.8;
  font-size: 1.1rem;
}
.js-r250 {
  margin-top: 2.25rem;
}
.js-note-main {
  margin: 0 0 .9rem;
  font-size: clamp(1.2rem,1.8vw,1.55rem);
  line-height: 1.35;
  scroll-margin-top: 8rem;
}
.js-gc88 {
  color: var(--js-clr-copy);
  text-decoration: underline;
  text-decoration-color: var(--js-clr-border);
  text-decoration-thickness: 1px;
  text-underline-offset: .25em;
}
.js-gc88:hover {
  text-decoration-color: currentColor;
  color: var(--js-clr-key);
}
.js-gc88:focus-visible,.js-note-main:focus {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 5px;
}
.js-strip-dark {
  font-size: 1rem;
  margin: 0 0 1rem;
  line-height: 1.85;
  white-space: pre-line;
}
.js-strip-dark:last-child {
  margin-bottom: 0;
}
@media(max-width:480px){
.js-block-x {
  padding: 1.25rem 1rem;
}
.js-r41d {
  flex-direction: column;
  gap: .3rem;
  margin-bottom: 1.75rem;
}
.js-inner-dark {
  text-align: left;
}
.js-me80 {
  margin-bottom: 1.75rem;
  font-size: 1.05rem;
}
.js-r250 {
  margin-top: 1.75rem;
}
.js-strip-dark {
  line-height: 1.75;
}
}
.js-rb38 {
  padding-block: 1.5rem calc(var(--js-gap-y) * .65);
  background: var(--js-clr-raised);
}
.js-v225 {
  min-width: 0;
}
.js-h09d {
  margin: 0;
}
.js-bec6 {
  aspect-ratio: 5/2;
  width: 100%;
  object-fit: cover;
}
.js-cf80 {
  background: var(--js-clr-background);
  position: relative;
  margin: -3rem clamp(1rem,4vw,4rem) 0;
  border: 1px solid var(--js-clr-border);
  padding: clamp(1.25rem,4.5vw,4rem);
}
.js-e472 {
  display: flex;
  align-items: center;
  gap: .65rem;
  width: fit-content;
  max-width: 100%;
  min-height: 2.75rem;
  font-size: .8rem;
  margin-bottom: 1.25rem;
  overflow-wrap: anywhere;
}
.js-e472:focus-visible {
  outline: 2px solid var(--js-clr-key);
  outline-offset: 4px;
}
.js-nav {
  display: block;
}
.js-link-narrow {
  max-width: 23ch;
  font-size: clamp(2rem,4vw,3.8rem);
  margin-bottom: .65em;
  overflow-wrap: anywhere;
}
.js-box2-hard {
  max-width: 56ch;
  margin-bottom: 2rem;
  line-height: 1.65;
  font-size: clamp(1.05rem,1.5vw,1.25rem);
  color: var(--js-clr-subtle);
}
.js-body {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1.5rem;
  border-top: 1px solid var(--js-clr-border);
  padding-top: 1.25rem;
  font-size: .8rem;
  color: var(--js-clr-subtle);
}
.js-edge-full {
  font-weight: 600;
  color: var(--js-clr-copy);
  min-width: 0;
}
.js-h09d:not(:has(img)) {
  display: none;
}
.js-v225:not(:has(img)) .js-cf80 {
  margin-top: 0;
}
@media(max-width:700px){
.js-bec6 {
  aspect-ratio: 8/5;
}
.js-cf80 {
  padding: 1.25rem;
  margin: -1.25rem .65rem 0;
}
.js-e472 {
  margin-bottom: 1rem;
}
.js-box2-hard {
  margin-bottom: 1.5rem;
}
.js-edge-full {
  flex-basis: 100%;
}
}
.js-t096 {
  display: grid;
  grid-template-columns: minmax(0,.5fr) minmax(0,1fr);
  gap: clamp(2rem,5vw,5rem);
  padding-block: 2rem 3rem;
  border-top: 1px solid var(--js-clr-border);
}
.js-t21c {
  min-width: 0;
}
.js-s298 {
  font-variant-numeric: tabular-nums;
  font-size: .8rem;
  color: var(--js-clr-key);
  display: block;
  margin-bottom: 1rem;
}
.js-xba4 {
  font-size: clamp(1.25rem,2vw,1.7rem);
  overflow-wrap: anywhere;
  line-height: 1.4;
  max-width: 22ch;
}
.js-n8a0 {
  overflow-wrap: anywhere;
  max-width: 66ch;
  min-width: 0;
  line-height: 1.85;
  font-size: 1.05rem;
}
.js-item {
  margin-bottom: 1.35rem;
}
.js-item:last-child {
  margin: 0;
}
.js-r88a {
  border-radius: 0 var(--js-radius-base) var(--js-radius-base) 0;
  padding: 1.5rem 1.5rem 1.5rem 2.75rem;
  border-left: 2px solid var(--js-clr-key);
  background: var(--js-clr-raised);
  margin: 1.5rem 0 0;
}
.js-h376 {
  padding-left: .25rem;
  margin-bottom: .6rem;
}
.js-h376:last-child {
  margin: 0;
}
.js-h376::marker {
  color: var(--js-clr-key);
}
.js-layer-center {
  border-radius: var(--js-radius-lg);
  background: var(--js-clr-raised);
  margin-left: calc((100% + 2 * clamp(2rem,5vw,5rem)) / 3);
  padding: 2.5rem;
}
.js-r187 {
  margin: 0;
  line-height: 1.65;
  font-size: 1.25rem;
  font-family: var(--js-font-heading);
  overflow-wrap: anywhere;
}
@media(max-width:760px){
.js-t096 {
  grid-template-columns: minmax(0,1fr);
  gap: 1rem;
  padding-block: 1.5rem 2rem;
}
.js-s298 {
  margin-bottom: .5rem;
}
.js-xba4 {
  max-width: none;
  margin: 0;
}
.js-layer-center {
  padding: 1.5rem;
  margin-left: 0;
}
.js-n8a0 {
  font-size: 1rem;
}
}
.js-f733 {
  display: grid;
  grid-template-columns: 5rem minmax(0,.7fr) minmax(0,1fr);
  gap: 2rem;
  align-items: center;
  padding-block: 2rem;
  border-block: 1px solid var(--js-clr-border);
}
.js-pbf9 {
  display: grid;
  place-items: center;
  width: 5rem;
  height: 5rem;
  border: 1px solid var(--js-clr-key);
  border-radius: 50%;
  font-family: var(--js-font-heading);
  font-size: 1.5rem;
  color: var(--js-clr-key);
  background: var(--js-clr-raised);
}
.js-r174 {
  min-width: 0;
}
.js-view-v2 {
  font-size: .7rem;
  margin-bottom: .5rem;
}
.js-r35d {
  margin-bottom: .3rem;
  overflow-wrap: anywhere;
  font-size: 1.4rem;
}
.js-recb {
  font-size: .85rem;
  color: var(--js-clr-subtle);
}
.js-burger {
  margin: 0;
  overflow-wrap: anywhere;
  border-left: 1px solid var(--js-clr-border);
  padding-left: 2rem;
  color: var(--js-clr-subtle);
  font-size: .95rem;
  line-height: 1.75;
}
@media(max-width:760px){
.js-f733 {
  grid-template-columns: 3.5rem minmax(0,1fr);
  gap: 1rem;
}
.js-pbf9 {
  width: 3.5rem;
  font-size: 1.1rem;
  height: 3.5rem;
}
.js-burger {
  padding: 1rem 0 0;
  border-top: 1px solid var(--js-clr-border);
  border-left: 0;
  grid-column: 1/-1;
}
}
.js-badge-loose {
  display: grid;
  grid-template-columns: minmax(0,.45fr) minmax(0,1fr);
  gap: 3rem;
  align-items: start;
}
.js-l109 {
  font-size: clamp(1.5rem,2.5vw,2.2rem);
  max-width: 15ch;
  overflow-wrap: anywhere;
}
.js-g7ec {
  list-style: none;
  border-top: 1px solid var(--js-clr-border);
  padding: 0;
  margin: 0;
}
.js-cbfc {
  display: grid;
  grid-template-columns: 2rem minmax(0,1fr);
  gap: 1rem;
  padding-block: 1.5rem;
  border-bottom: 1px solid var(--js-clr-border);
}
.js-c1b2 {
  font-variant-numeric: tabular-nums;
  color: var(--js-clr-key);
  padding-top: .2rem;
  font-size: .75rem;
}
.js-p54f {
  color: var(--js-clr-subtle);
  font-size: .75rem;
}
.js-box2-last {
  margin: .5rem 0;
  font-size: 1.3rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.js-img {
  color: var(--js-clr-copy);
}
.js-img:hover {
  color: var(--js-clr-key);
}
.js-jdf1 {
  color: var(--js-clr-key);
  white-space: nowrap;
}
.js-r5ff {
  font-size: .95rem;
  color: var(--js-clr-subtle);
  margin: 0;
}
@media(max-width:700px){
.js-badge-loose {
  grid-template-columns: minmax(0,1fr);
  gap: 1.5rem;
}
.js-l109 {
  margin: 0;
  max-width: none;
}
}