:root {
  --color-main: #317c6b;
  --color-primary-alt: #1d5346;
  --color-primary-tint: #a7d3c8;
  --color-brand-on-dark: #3d9883;
  --color-on-primary: #ffffff;
  --color-accent: #b63a57;
  --color-accent-fg: #ffffff;
  --color-page: #f8fcfb;
  --color-surface: #ffffff;
  --color-fg: #233834;
  --color-dim: #5c756f;
  --color-stroke: #d8e3e1;
  --color-dark: #142420;
  --color-dark-surface: #203732;
  --color-inverse-text: #f4f6f5;
  --color-inverse-muted: #abbab7;
  --radius-default: 3px;
  --radius-large: 6px;
  --radius-button: 3px;
  --case-btn: none;
  --tracking-btn: 0;
  --font-weight-cta: 600;
  --font-title: 'Montserrat', 'Gill Sans', 'Segoe UI', system-ui, sans-serif;
  --font-text: 'Open Sans', system-ui, sans-serif;
  --text-xxl: clamp(1.8rem, 3.4vw, 2.5rem);
  --text-xl: clamp(1.4rem, 2.4vw, 1.9rem);
  --text-lg: 1.15rem;
  --font-weight-bold: 600;
  --tracking-heading: -0.02em;
  --leading-tight: 1.25;
  --case-eyebrow: uppercase;
  --tracking-overline: .12em;
  --color-overline: #317c6b;
  --text-md: 1rem;
  --leading-normal: 1.5;
  --container-content: 1120px;
  --spacing-section: 4.5rem;
  --shadow-sm: 0 2px 12px rgba(0,0,0,.08);
  --shadow-2: 0 24px 60px rgba(0,0,0,.12);
}
*,*::before,*::after {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  overflow-wrap: anywhere;
  font-family: var(--font-text);
  font-size: var(--text-md);
  line-height: var(--leading-normal);
  color: var(--color-fg);
  background: var(--color-page);
}
img,svg,video {
  max-width: 100%;
  height: auto;
  display: block;
}
h1,h2,h3,h4 {
  font-family: var(--font-title);
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-tight);
  margin: 0 0 .6em;
  color: var(--color-fg);
  letter-spacing: var(--tracking-heading);
  hyphens: manual;
}
h1 {
  font-size: var(--text-xxl);
}
h2 {
  font-size: var(--text-xl);
}
h3 {
  font-size: var(--text-lg);
  line-height: 1.3;
}
h4 {
  font-size: 1.05rem;
  line-height: 1.35;
}
p {
  margin: 0 0 1em;
}
a {
  color: var(--color-main);
  text-decoration: none;
}
@media (min-width:481px){
a[href^="tel:"] {
  white-space: nowrap;
}
}
a:hover {
  color: var(--color-primary-alt);
}
ul,ol {
  margin: 0 0 1em;
  padding-left: 1.25em;
}
button,input,textarea,select {
  font: inherit;
  color: inherit;
}
::selection {
  background: var(--color-primary-tint);
  color: var(--color-fg);
}
.align-third {
  width: min(100% - 2.5rem,var(--container-content));
  margin-inline: auto;
}
.inset-decimal {
  width: min(100% - 2.5rem,48rem);
}
.align-scroll {
  padding-block: var(--spacing-section);
}
.py-0 {
  background: var(--color-surface);
}
.relative-16 {
  background: var(--color-dark);
  color: var(--color-inverse-text);
}
.relative-16 h1,.relative-16 h2,.relative-16 h3,.relative-16 h4 {
  color: inherit;
}
.relative-16 a {
  color: var(--color-brand-on-dark);
}
.relative-16 .shrink-visible,.relative-16 .object-none {
  color: var(--color-inverse-muted);
}
.relative-16 .order-tight {
  color: var(--color-brand-on-dark);
}
.delay-5 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .8rem 1.5rem;
  border-radius: var(--radius-button);
  background: var(--color-main);
  color: var(--color-on-primary);
  font-weight: var(--font-weight-cta);
  text-transform: var(--case-btn);
  letter-spacing: var(--tracking-btn);
  line-height: 1.25;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background .2s,color .2s,border-color .2s,transform .2s;
}
.delay-5:hover {
  background: var(--color-primary-alt);
  color: var(--color-on-primary);
}
.delay-5:active {
  transform: translateY(1px);
}
.content-dark {
  background: transparent;
  color: var(--color-main);
  border-color: currentColor;
}
.content-dark:hover {
  background: var(--color-main);
  color: var(--color-on-primary);
  border-color: var(--color-main);
}
.inset-20 {
  background: var(--color-accent);
  color: var(--color-accent-fg);
}
.inset-20:hover {
  background: var(--color-accent);
  color: var(--color-accent-fg);
  filter: brightness(.92);
}
.items-auto {
  background: var(--color-inverse-text);
  color: var(--color-dark);
}
.items-auto:hover {
  background: #fff;
  color: var(--color-dark);
}
.fixed-cover {
  padding: .55rem 1.1rem;
  font-size: .9rem;
}
.px-24 {
  padding: 1rem 2rem;
  font-size: 1.05rem;
}
.relative-16 .delay-5:not(.content-dark):not(.inset-20):not(.items-auto) {
  background: var(--color-brand-on-dark);
  color: var(--color-dark);
}
.relative-16 .delay-5:not(.content-dark):not(.inset-20):not(.items-auto):hover {
  background: var(--color-inverse-text);
  color: var(--color-dark);
}
.relative-16 .content-dark {
  color: var(--color-inverse-text);
  border-color: var(--color-inverse-muted);
}
.relative-16 .content-dark:hover {
  background: var(--color-inverse-text);
  color: var(--color-dark);
  border-color: var(--color-inverse-text);
}
.select-pointer {
  display: grid;
  gap: 1.5rem;
}
.order-normal {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr));
}
.absolute {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr));
}
.text-min {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,12rem),1fr));
}
.left-quarter {
  grid-template-columns: repeat(2,1fr);
}
.flex {
  grid-template-columns: repeat(3,1fr);
}
.translate-normal {
  grid-template-columns: repeat(4,1fr);
}
@media (max-width:960px){
.translate-normal {
  grid-template-columns: repeat(2,1fr);
}
.flex {
  grid-template-columns: repeat(2,1fr);
}
}
@media (max-width:560px){
.left-quarter,.flex,.translate-normal {
  grid-template-columns: 1fr;
}
}
.overflow-half {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.overflow-half>* {
  min-width: 0;
}
.overflow-half.left-quarter>* {
  flex: 0 0 calc((100% - 1.5rem)/2);
}
.overflow-half.flex>* {
  flex: 0 0 calc((100% - 3rem)/3);
}
.overflow-half.translate-normal>* {
  flex: 0 0 calc((100% - 4.5rem)/4);
}
@media (max-width:960px){
.overflow-half.flex>*,.overflow-half.translate-normal>* {
  flex-basis: calc((100% - 1.5rem)/2);
}
}
@media (max-width:560px){
.overflow-half.left-quarter>*,.overflow-half.flex>*,.overflow-half.translate-normal>* {
  flex-basis: 100%;
}
}
.shrink-visible {
  font-size: 1.15rem;
  color: var(--color-dim);
}
.order-tight {
  display: inline-block;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: var(--tracking-overline);
  text-transform: var(--case-eyebrow);
  color: var(--color-overline);
  margin-bottom: .75rem;
}
.object-none {
  color: var(--color-dim);
}
.sr-20 {
  text-align: center;
}
.leading {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}
@media (max-width:640px){
.align-scroll {
  padding-block: calc(var(--spacing-section) * .7);
}
}
.w-min {
  position: relative;
  z-index: 20;
  background: var(--color-page);
}
.ease-around {
  border-bottom: 1px solid var(--color-stroke);
}
.col {
  display: grid;
  grid-template-columns: minmax(0,1fr) 13rem minmax(0,1fr);
  align-items: center;
  min-height: 5.5rem;
}
.hidden {
  grid-column: 2;
  grid-row: 1;
  justify-self: center;
  position: relative;
  z-index: 1;
  display: inline-flex;
  max-width: 100%;
}
.shrink-gray-500 {
  height: auto;
  width: auto;
  max-height: 2.5rem;
}
.place-6 {
  grid-column: 1/-1;
  grid-row: 1;
  display: grid;
  grid-template-columns: minmax(0,1fr) 13rem minmax(0,1fr);
  align-items: center;
}
.place-20 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sticky {
  grid-column: 1;
  justify-content: flex-end;
}
.inset-bold {
  grid-column: 3;
  justify-content: flex-start;
}
.top-third {
  color: var(--color-fg);
  font-size: .95rem;
  font-weight: 500;
  letter-spacing: .02em;
}
.top-third:hover,.basis-bottom {
  color: var(--color-main);
}
.font {
  font-weight: 700;
  border-bottom: 2px solid var(--color-main);
  padding-bottom: .1rem;
}
.fixed-5 {
  display: none;
}
.fixed-5:focus-visible + .list {
  outline: 2px solid var(--color-main);
  outline-offset: 4px;
}
.list {
  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;
}
.not-sr-end {
  display: block;
  width: 24px;
  height: 2px;
  border-radius: 2px;
  background: var(--color-fg);
}
@media (max-width:1020px){
.col {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  min-height: 4.5rem;
}
.fixed-5 {
  display: block;
}
.list {
  display: flex;
}
.place-6 {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  flex-direction: column;
  align-items: stretch;
  gap: .75rem;
  padding: 1.25rem;
  background: var(--color-page);
  border-bottom: 1px solid var(--color-stroke);
  box-shadow: var(--shadow-sm);
}
.fixed-5:checked ~ .place-6 {
  display: flex;
}
.place-20 {
  flex-direction: column;
  align-items: flex-start;
  gap: .75rem;
}
}
.items-sm {
  padding-block: calc(var(--spacing-section) * .8) 1.5rem;
  background: var(--color-surface);
  color: var(--color-fg);
  overflow-wrap: anywhere;
  border-top: 1px solid var(--color-stroke);
}
.origin-black {
  display: grid;
  grid-template-columns: minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);
  gap: 3rem;
  padding-bottom: 2rem;
}
.my-wide {
  font-family: var(--font-title);
  font-size: 1.15rem;
  line-height: 1.65;
  margin: 0;
  max-width: 30rem;
}
.space {
  font-size: .8rem;
  color: var(--color-dim);
  font-family: var(--font-text);
  font-weight: 600;
  letter-spacing: var(--tracking-overline);
  text-transform: var(--case-eyebrow);
  margin-bottom: 1rem;
}
.col-top {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .65rem;
}
.justify {
  min-width: 0;
}
.sr-screen {
  color: var(--color-fg);
  font-size: .9rem;
}
.sr-screen:hover {
  color: var(--color-main);
  text-decoration: underline;
  text-underline-offset: .3em;
}
.min-h-min {
  font-family: var(--font-title);
  font-size: clamp(2.5rem,8.8vw,7.5rem);
  font-weight: var(--font-weight-bold);
  line-height: 1.08;
  letter-spacing: var(--tracking-heading);
  padding-block: 2rem;
  border-block: 1px solid var(--color-stroke);
}
.mt-muted {
  font-size: clamp(2rem,4.6vw,4.5rem);
  line-height: 1.1;
  text-wrap: balance;
}
.translate-gray-500 .min-h-min {
  border-top: 4px double var(--color-main);
}
.flex-relaxed {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 1.3rem;
  padding-top: 1.2rem;
  font-size: .8rem;
  color: var(--color-dim);
}
.sr-1 {
  max-width: 36rem;
}
.p-0 {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1rem;
  max-width: 100%;
}
.leading-2xl {
  font-weight: 600;
  color: var(--color-fg);
}
@media (max-width:760px){
.origin-black {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 2rem 1rem;
}
.my-wide {
  grid-column: 1/-1;
  max-width: 40rem;
}
.min-h-min {
  font-size: clamp(2.2rem,11vw,4rem);
  padding-block: 1.5rem;
}
.mt-muted {
  font-size: clamp(1.6rem,7vw,2.6rem);
}
.p-0 {
  flex-direction: column;
}
}
.min-h-white {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 50;
  padding: 1rem 0;
  box-shadow: var(--shadow-sm);
}
.items-4 {
  bottom: 0;
}
.order {
  background: var(--color-dark);
  color: var(--color-inverse-text);
}
.sr-row {
  background: var(--color-surface);
  color: var(--color-fg);
  border-top: 1px solid var(--color-stroke);
}
.min-h-white[hidden] {
  display: none;
}
.align-center {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
.sr-xl {
  margin: 0;
  font-size: .95rem;
}
.truncate-dark {
  color: inherit;
  text-decoration: underline;
  margin-left: .35rem;
}
.opacity-lg {
  display: flex;
  gap: .75rem;
  flex-shrink: 0;
}
.order .z-normal {
  border-color: var(--color-page);
}
.order .z-normal:not(.content-dark) {
  background: var(--color-brand-on-dark);
  color: var(--color-dark);
  border-color: transparent;
}
.order .content-dark.z-normal {
  color: var(--color-page);
}
@media (max-width:720px){
.min-h-white {
  padding: .7rem 0;
}
.align-center {
  flex-direction: column;
  align-items: stretch;
  gap: .6rem;
}
.sr-xl {
  font-size: .84rem;
  line-height: 1.4;
}
.opacity-lg {
  justify-content: flex-end;
}
}
.fixed-disc {
  padding: 2.25rem;
  background: var(--color-surface);
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-large);
  min-width: 0;
}
.flex-tight .fixed-disc {
  text-align: center;
}
.row-min {
  margin: 0;
  overflow-wrap: anywhere;
}
.row-row {
  margin: .75rem 0 0;
  color: var(--color-dim);
  overflow-wrap: anywhere;
}
.shrink-1 {
  color: inherit;
}
.shadow-pointer {
  display: grid;
  gap: 1rem;
  margin-top: 1.75rem;
  text-align: start;
}
.place-primary {
  display: grid;
  gap: .35rem;
  min-width: 0;
}
.delay-1 {
  font-size: .9rem;
  font-weight: 600;
}
.space-auto {
  width: 100%;
  min-width: 0;
  padding: .7rem .9rem;
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-default);
  background: var(--color-page);
}
.space-auto:focus {
  outline: 2px solid var(--color-main);
  outline-offset: 1px;
}
.skew-y {
  resize: vertical;
}
.rotate-quarter {
  justify-self: start;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.flex-tight .rotate-quarter {
  justify-self: center;
}
@media (max-width:480px){
.fixed-disc {
  padding: 1.25rem;
}
}
.w-bottom {
  padding-block: calc(var(--spacing-section) * .85);
  background: var(--color-page);
  color: var(--color-fg);
  overflow-wrap: anywhere;
}
.order-left {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.25rem;
  border-top: 1px solid var(--color-stroke);
  padding-top: 1rem;
}
.min-h-6 .order-left {
  border-top: 3px solid var(--color-main);
}
.top {
  margin: 0;
  max-width: 34rem;
  color: var(--color-main);
}
.mr-wrap {
  font-size: .8rem;
  text-align: right;
  color: var(--color-dim);
  max-width: 18rem;
}
.grow-screen {
  max-width: 20ch;
  font-size: calc(var(--text-xxl) * 1.18);
  margin: 1.5rem 0 2rem;
  line-height: 1.08;
}
.relative-gray-100 {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,2.1fr);
  gap: clamp(1.5rem,4vw,4rem);
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-stroke);
}
.origin-half {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.2rem;
}
.ring-20 {
  font-size: 1.05rem;
  margin: 0;
  color: var(--color-dim);
}
.px-5 {
  max-width: 100%;
  text-align: center;
  white-space: normal;
}
.gap-1 {
  display: inline-flex;
  gap: .75rem;
  align-items: baseline;
  font-weight: 600;
  max-width: 100%;
  text-decoration: underline;
  text-underline-offset: .3em;
}
.ring-square {
  margin: 0;
  min-width: 0;
}
.min-h-gray-100 {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: var(--radius-default);
}
.visible-muted {
  padding-top: .8rem;
  color: var(--color-dim);
  font-size: .85rem;
  border-bottom: 1px solid var(--color-stroke);
  padding-bottom: .8rem;
}
@media (max-width:700px){
.mr-wrap {
  display: none;
}
.relative-gray-100 {
  grid-template-columns: 1fr;
}
.grow-screen {
  font-size: var(--text-xxl);
  max-width: 24ch;
}
.origin-half {
  max-width: 40rem;
}
.min-h-gray-100 {
  aspect-ratio: 4/3;
}
}
.max-w-decimal {
  max-width: 44rem;
  margin-bottom: 2.5rem;
}
.bg-y .max-w-decimal {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.tracking-left {
  gap: 2.5rem 3rem;
}
.px-8 .mb-10 {
  border-top: 2px solid var(--color-main);
  padding-top: 1.25rem;
}
.leading-visible {
  font-size: 1.15rem;
  margin-bottom: .6rem;
}
.relative-hidden {
  margin: 0;
  line-height: 1.7;
}
.origin-cover {
  overflow-wrap: anywhere;
}
.flex-auto>* {
  min-width: 0;
}
.mt-bottom {
  max-width: 24ch;
}
.justify-third {
  color: var(--color-dim);
}
.w-8 {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.decoration-contain {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,.8fr);
  gap: 3rem;
  align-items: end;
  margin-bottom: 3rem;
}
.grid-relaxed {
  margin: 0;
  max-width: 48ch;
}
.justify-contain {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 2px solid var(--color-fg);
}
.cursor-visible {
  display: grid;
  grid-template-columns: 4rem minmax(0,.85fr) minmax(0,1.15fr);
  gap: 2rem;
  padding: 1.7rem 0;
  border-bottom: 1px solid var(--color-stroke);
  align-items: start;
}
.cursor-24 {
  font-size: 2.1rem;
  line-height: 1.1;
  color: var(--color-main);
  font-family: var(--font-title);
}
.border-fit {
  margin: 0;
  font-size: clamp(1.2rem,2.2vw,1.8rem);
}
.justify-third {
  margin: 0;
}
.origin-3 {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  align-items: center;
  margin-top: 2rem;
}
.mr-left {
  max-width: 56ch;
  margin: 0;
  color: var(--color-dim);
}
.w-8 {
  flex-shrink: 0;
}
@media(max-width:700px){
.decoration-contain {
  grid-template-columns: 1fr;
  gap: 1rem;
}
.cursor-visible {
  grid-template-columns: 2.5rem minmax(0,1fr);
  gap: .8rem 1rem;
}
.justify-third {
  grid-column: 2;
}
.cursor-24 {
  grid-row: 1/3;
  font-size: 1.7rem;
}
.origin-3 {
  align-items: flex-start;
  flex-direction: column;
}
.w-8 {
  flex-shrink: 1;
}
}
.select-3 {
  overflow-wrap: anywhere;
}
.m-third>* {
  min-width: 0;
}
.rounded-wide {
  max-width: 24ch;
}
.translate-tight {
  color: var(--color-dim);
}
.block-scroll {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.p-normal {
  max-width: 48rem;
  margin-bottom: 3rem;
}
.ring-auto {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 2px solid var(--color-fg);
}
.sticky-auto {
  display: grid;
  grid-template-columns: 5rem minmax(0,1.5fr) minmax(0,.8fr);
  gap: 2rem;
  padding: 2rem 0;
  border-bottom: 1px solid var(--color-stroke);
  align-items: start;
}
.decoration-24 {
  font-family: var(--font-title);
  font-size: clamp(2.5rem,5vw,4rem);
  letter-spacing: -.06em;
  line-height: 1;
  color: var(--color-main);
}
.list-3 {
  font-size: clamp(1.2rem,2.2vw,1.7rem);
}
.translate-tight {
  margin: 0;
  max-width: 57ch;
}
.object {
  min-width: 0;
}
.inset {
  border-left: 1px solid var(--color-stroke);
  padding-left: 1.5rem;
  min-width: 0;
}
.pt-secondary {
  font-size: .75rem;
  letter-spacing: .05em;
  color: var(--color-dim);
  display: block;
  margin-bottom: .7rem;
}
.inset p {
  font-size: .95rem;
  margin: 0;
  line-height: 1.7;
}
@media(max-width:760px){
.sticky-auto {
  grid-template-columns: 3rem minmax(0,1fr);
  gap: 1rem;
}
.decoration-24 {
  font-size: 2.5rem;
}
.inset {
  grid-column: 2;
  border-left: 0;
  border-top: 1px solid var(--color-stroke);
  padding: 1rem 0 0;
}
.pt-secondary {
  margin-bottom: .3rem;
}
}
.skew-left {
  padding-block: calc(var(--spacing-section) * .8);
  background: var(--color-page);
  overflow-wrap: anywhere;
}
.inline-sm {
  display: grid;
  grid-template-columns: minmax(0,2fr) minmax(0,1fr);
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-large);
  overflow: hidden;
  background: var(--color-surface);
}
.ease-4 {
  padding: clamp(1.5rem,4vw,3.5rem);
  min-width: 0;
}
.self {
  color: var(--color-main);
}
.grow-dark {
  max-width: 24ch;
}
.divide-3 {
  color: var(--color-dim);
  max-width: 38rem;
  margin: 1.2rem 0 0;
}
.hidden-sm {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(1.5rem,3vw,2.8rem);
  background: var(--color-dark);
  color: var(--color-inverse-text);
  border-left: 2px dashed var(--color-inverse-muted);
  min-width: 0;
}
.justify-normal {
  font-size: .8rem;
  letter-spacing: var(--tracking-overline);
  text-transform: var(--case-eyebrow);
  color: var(--color-inverse-muted);
}
.px {
  color: var(--color-inverse-text);
  font-weight: 600;
  font-size: 1.2rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  max-width: 100%;
  line-height: 1.4;
}
.px:hover {
  color: var(--color-brand-on-dark);
  text-decoration: underline;
  text-underline-offset: .3em;
}
.mx-decimal {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.4rem;
  height: 3.4rem;
  font-size: 2rem;
  line-height: 1;
  border: 1px solid var(--color-inverse-muted);
  border-radius: 50%;
}
@media (max-width:680px){
.inline-sm {
  grid-template-columns: 1fr;
}
.hidden-sm {
  border-left: 0;
  border-top: 2px dashed var(--color-inverse-muted);
  gap: 1.2rem;
}
.px {
  flex-direction: row;
  align-items: center;
  font-size: 1.05rem;
  gap: 1.2rem;
}
.mx-decimal {
  flex: none;
  width: 2.6rem;
  height: 2.6rem;
  font-size: 1.6rem;
}
}
.left-x {
  padding-block: calc(var(--spacing-section) * .8);
}
.px-2xl {
  background: var(--color-surface);
}
.mb-secondary {
  background: var(--color-main);
  color: var(--color-on-primary);
}
.mb-secondary .row-relaxed,.mb-secondary .overflow-gray-900 {
  color: var(--color-on-primary);
}
.order-right {
  border-bottom: 1px solid var(--color-stroke);
}
.shrink {
  text-align: center;
}
.opacity-6 {
  font-size: .85rem;
  margin-bottom: .75rem;
  opacity: .8;
}
.translate {
  margin: 0 .5rem;
}
.self-circle {
  opacity: .7;
}
.row-relaxed {
  margin-bottom: .5rem;
}
.clearfix {
  margin: 0;
  font-size: 1.1rem;
  opacity: .85;
  max-width: 40rem;
}
.shrink .clearfix {
  margin-inline: auto;
}
.z-between {
  min-width: 0;
}
.duration-between {
  max-width: 54rem;
  margin-bottom: 2rem;
}
.mx-disc {
  overflow-wrap: anywhere;
}
.min-h-20 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.2rem;
}
.min-h-around {
  min-width: 0;
  overflow-wrap: anywhere;
}
.min-h-around h3 {
  margin: 0 0 .6rem;
  font-size: 1.2rem;
}
.min-h-around p {
  margin: 0;
  line-height: 1.7;
}
.basis-end {
  display: block;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .04em;
  margin-bottom: .7rem;
  color: var(--color-dim);
  overflow-wrap: anywhere;
}
.min-h-20 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.min-h-around {
  border: 1px solid var(--color-stroke);
  padding: 1.6rem;
  border-radius: var(--radius-default);
}
@media (max-width: 700px){
.min-h-20 {
  grid-template-columns: minmax(0, 1fr);
}
.min-h-around {
  grid-template-columns: minmax(0, 1fr);
  gap: .5rem;
}
}
.text-relaxed {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}
.overflow-black .left-pointer {
  order: 2;
}
.left-pointer {
  position: relative;
  padding: 0 3rem 3rem 0;
}
.overflow-black .left-pointer {
  padding: 0 0 3rem 3rem;
}
.cursor-16 {
  border-radius: var(--radius-large);
  object-fit: cover;
}
.origin-muted {
  width: 100%;
  aspect-ratio: 9/11;
}
.items-light {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 55%;
  aspect-ratio: 5/4;
  border: 6px solid var(--color-page);
  box-shadow: var(--shadow-2);
}
.overflow-black .items-light {
  right: auto;
  left: 0;
}
.block-min {
  color: var(--color-dim);
  margin-bottom: 1.5rem;
}
.decoration-medium {
  list-style: none;
  margin: 0 0 1.75rem;
  padding: 1.25rem 0;
  border-top: 1px solid var(--color-stroke);
  border-bottom: 1px solid var(--color-stroke);
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 2.5rem;
}
.w {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.ring-medium {
  font-family: var(--font-title);
  font-size: 1.75rem;
  color: var(--color-main);
}
.overflow-medium {
  font-size: .85rem;
  color: var(--color-dim);
}
@media (max-width:860px){
.text-relaxed {
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
.overflow-black .left-pointer {
  order: 0;
}
}
.tracking-screen {
  max-width: 46rem;
}
.order-muted .tracking-screen {
  margin-left: auto;
  margin-right: auto;
}
.order-muted .relative-between {
  text-align: center;
}
.relative-between {
  margin-bottom: 1.5rem;
}
.align-top {
  margin: 0 0 1.1rem;
  line-height: 1.7;
}
.scale-primary {
  font-size: 1.15rem;
  margin: 1.75rem 0 .75rem;
}
.inline-row {
  margin: 0;
  padding-left: 1.25rem;
  display: grid;
  gap: .5rem;
}
.mr-normal::marker {
  color: var(--color-main);
}
.basis-xl {
  padding-block: calc(var(--spacing-section) * .9) calc(var(--spacing-section) * .7);
}
.left-center {
  border-bottom: 4px solid var(--color-main);
}
.text-scroll {
  border-bottom: 4px solid var(--color-accent);
}
.scale-half {
  border-bottom: 1px solid var(--color-stroke);
}
.border-cover {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 2rem 4rem;
  align-items: end;
}
.h {
  margin: 0;
  font-size: calc(var(--text-xxl) * 1.05);
}
.m-scroll {
  margin: 0 0 .35rem;
  max-width: 34rem;
}
@media (max-width:760px){
.border-cover {
  grid-template-columns: 1fr;
  gap: 1rem;
}
}
.max-w-disc {
  overflow-wrap: anywhere;
}
.rounded-primary>* {
  min-width: 0;
}
.ml {
  max-width: 24ch;
}
.items-tight {
  color: var(--color-dim);
}
.m-sm {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.decoration-normal {
  max-width: 54rem;
  margin-bottom: 3rem;
}
.ml {
  font-size: clamp(2rem,4vw,3.4rem);
}
.rounded-primary {
  display: grid;
  grid-template-columns: minmax(0,.65fr) minmax(0,1.6fr);
  gap: clamp(2rem,6vw,6rem);
  align-items: start;
}
.ease-visible {
  border-left: 3px solid var(--color-main);
  padding-left: 1.5rem;
}
.delay-12 {
  font-family: var(--font-title);
  font-size: 1.5rem;
  line-height: 1.35;
}
.row-col {
  margin: 1.8rem 0;
}
.row-col div {
  margin-bottom: 1.2rem;
}
.row-col dt,.scale-normal {
  font-size: .8rem;
  color: var(--color-dim);
  margin: 0 0 .4rem;
}
.row-col dd {
  font-size: 1.15rem;
  margin: 0;
}
.transition {
  list-style: none;
  margin: .7rem 0 0;
  padding: 0;
}
.transition li {
  padding: .6rem 0;
  border-top: 1px solid var(--color-stroke);
  font-size: .9rem;
}
.select-bottom {
  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(--color-stroke);
}
.ring {
  font-family: var(--font-title);
  font-size: clamp(2rem,5vw,3.5rem);
  line-height: 1.1;
  color: var(--color-main);
  letter-spacing: -.05em;
}
.shadow-gray-900 {
  font-size: clamp(1.3rem,2.1vw,1.75rem);
}
.items-tight {
  line-height: 1.9;
  margin: 0;
  max-width: 62ch;
}
.static-top {
  min-width: 0;
}
@media(max-width:760px){
.rounded-primary {
  grid-template-columns: 1fr;
}
.ease-visible {
  padding: 1.2rem 0 1.2rem 1.2rem;
  border-top: 1px solid var(--color-stroke);
  border-bottom: 1px solid var(--color-stroke);
}
.row-col {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 2.5rem;
  margin: 1.2rem 0;
}
.row-col div {
  margin: 0;
}
.transition {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1rem;
}
.transition li {
  border-top: 0;
  padding: 0;
}
.select-bottom {
  grid-template-columns: 2.5rem minmax(0,1fr);
  gap: 1rem;
}
.ring {
  font-size: 2rem;
}
}
.truncate-snug {
  overflow-wrap: anywhere;
}
.flex-md>* {
  min-width: 0;
}
.rotate-x {
  max-width: 24ch;
}
.order-start {
  color: var(--color-dim);
}
.sticky-full {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.mb-gray-500 {
  margin-bottom: 2.5rem;
}
.rotate-x {
  max-width: 28ch;
}
.flex-md {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: clamp(2rem,5vw,5rem);
  align-items: start;
}
.opacity-wrap {
  margin: 0;
  display: grid;
  grid-template-columns: 1rem minmax(0,1fr);
  column-gap: 1rem;
}
.inline-scroll {
  grid-column: 2;
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  border-radius: var(--radius-large);
}
.h-right {
  grid-column: 2;
  margin-top: 1rem;
  font-size: .85rem;
  color: var(--color-dim);
  padding-top: .8rem;
  border-top: 1px solid var(--color-stroke);
}
.opacity-wrap::before {
  content: '';
  grid-row: 1;
  grid-column: 1;
  background: var(--color-main);
  border-radius: var(--radius-default);
}
.mb-disc {
  list-style: none;
  padding: 0;
  margin: 2rem 0;
}
.items {
  position: relative;
  padding: 1.2rem 0 1.2rem 3rem;
  border-top: 1px solid var(--color-stroke);
}
.w-left {
  position: absolute;
  left: 0;
  top: 1.2rem;
  border: 1px solid var(--color-stroke);
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  display: grid;
  place-items: center;
  font-size: .8rem;
  color: var(--color-main);
}
.space-wide {
  font-size: 1.15rem;
}
.order-start {
  margin: 0;
}
.sticky-full {
  display: inline-flex;
  gap: 1.5rem;
  padding-bottom: .5rem;
  border-bottom: 1px solid currentColor;
  font-weight: 700;
}
.sticky-full span {
  font-size: 1.5rem;
  line-height: 1;
}
@media(max-width:760px){
.flex-md {
  grid-template-columns: 1fr;
}
.inline-scroll {
  aspect-ratio: 4/3;
}
.opacity-wrap {
  grid-template-columns: .5rem minmax(0,1fr);
  column-gap: .6rem;
}
}
.skew {
  max-width: 52rem;
  margin-bottom: 2.5rem;
}
.px-fit {
  margin-bottom: 1rem;
}
.mr-disc {
  margin-bottom: 0;
}
.select-max {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: stretch;
}
.border-normal {
  position: relative;
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding-inline-end: 1.5rem;
}
.border-normal:last-child {
  padding-inline-end: 0;
}
.border-normal:not(:last-child)::before {
  content: "";
  position: absolute;
  inset-inline-start: 1.5rem;
  inset-inline-end: 0;
  top: 1.5rem;
  height: 2px;
  background: var(--color-stroke);
}
.align-disc {
  position: relative;
  display: grid;
  place-items: center;
  flex: none;
  width: 3rem;
  height: 3rem;
  border: 2px solid var(--color-main);
  border-radius: 50%;
  background: var(--color-page);
  color: var(--color-fg);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  margin-bottom: 1.5rem;
}
.space-col {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
.grid-normal {
  font-size: 1.2rem;
  line-height: 1.35;
  margin: 0 0 .8rem;
  overflow-wrap: anywhere;
}
.max-w-normal {
  color: var(--color-dim);
  margin: 0 0 1.5rem;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.cursor-third {
  margin-top: auto;
  padding-top: 1rem;
  border-top: 2px solid var(--color-stroke);
}
.border-24 {
  font-size: .8rem;
  font-weight: 700;
  margin: 0 0 .4rem;
  overflow-wrap: anywhere;
}
.align-3 {
  font-size: .95rem;
  margin: 0;
  overflow-wrap: anywhere;
  hyphens: auto;
}
@media(max-width:1000px){
.select-max {
  display: block;
}
.border-normal {
  display: grid;
  grid-template-columns: 3rem minmax(0,1fr);
  gap: 1.25rem;
  padding: 0 0 2rem;
}
.border-normal:last-child {
  padding-bottom: 0;
}
.border-normal:not(:last-child)::before {
  inset-inline-start: 1.5rem;
  inset-inline-end: auto;
  top: 1.5rem;
  bottom: 0;
  width: 2px;
  height: auto;
}
.align-disc {
  margin: 0;
}
.cursor-third {
  margin-top: 0;
}
.skew {
  margin-bottom: 2rem;
}
}
@media(max-width:400px){
.border-normal {
  gap: .8rem;
}
}
.z-contain .order-16 {
  max-width: 46rem;
}
.left-scroll .order-16 {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3rem;
  align-items: start;
}
.order-24 {
  margin-bottom: 1.5rem;
}
.visible {
  border-bottom: 1px solid var(--color-stroke);
  padding: .25rem 0;
}
.mx-gray-100 {
  cursor: pointer;
  padding: .9rem 2rem .9rem 0;
  font-weight: 600;
  list-style: none;
  position: relative;
}
.mx-gray-100::-webkit-details-marker {
  display: none;
}
.mx-gray-100::after {
  content: "+";
  position: absolute;
  right: 0;
  top: .7rem;
  font-size: 1.4rem;
  color: var(--color-main);
  transition: transform .2s;
}
.visible[open] .mx-gray-100::after {
  transform: rotate(45deg);
}
.hidden-left {
  margin: 0 0 1rem;
  color: var(--color-dim);
}
@media (max-width:860px){
.left-scroll .order-16 {
  grid-template-columns: 1fr;
  gap: 1rem;
}
}
.sticky-8 {
  padding-block: calc(var(--spacing-section) * .7);
  background: var(--color-page);
  overflow-wrap: anywhere;
}
.grow-2 {
  display: grid;
  grid-template-columns: minmax(0,1.8fr) minmax(0,1fr);
  background: var(--color-surface);
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-large);
  overflow: hidden;
}
.left-max {
  min-width: 0;
  padding: clamp(1.5rem,4.5vw,4rem);
  border-top: 4px solid var(--color-main);
}
.inset-muted .left-max {
  border-top: 0;
  border-left: 4px solid var(--color-main);
}
.mb-relaxed {
  color: var(--color-main);
}
.inset-hidden {
  max-width: 22ch;
  font-size: calc(var(--text-xxl) * .88);
  line-height: 1.15;
}
.ease {
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--color-dim);
  max-width: 38rem;
  margin: 1.2rem 0 0;
}
.divide-end {
  margin: 0;
  min-width: 0;
  display: flex;
  padding: .8rem;
}
.w-black {
  width: 100%;
  height: 100%;
  min-height: 12rem;
  object-fit: cover;
  border-radius: var(--radius-default);
  aspect-ratio: 4/5;
}
@media (max-width:700px){
.grow-2 {
  grid-template-columns: 1fr;
}
.inset-hidden {
  font-size: var(--text-xxl);
}
.divide-end {
  padding: 0 1.25rem 1.25rem;
}
.w-black {
  aspect-ratio: 16/7;
  height: auto;
  min-height: 0;
}
.ease {
  font-size: 1rem;
}
}
.pt {
  max-width: 40rem;
  margin-bottom: 2rem;
}
.opacity {
  list-style: none;
  margin: 0;
  padding: 0;
}
.col-dark {
  display: flex;
  flex-direction: column;
  background: var(--color-surface);
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-large);
  overflow: hidden;
}
.duration-cover {
  display: block;
}
.place-dark {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
}
.object-right {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  padding: 1.25rem;
  flex-grow: 1;
}
.shrink-screen {
  font-size: .8rem;
  color: var(--color-dim);
  text-transform: uppercase;
  letter-spacing: .06em;
}
.grid-light {
  font-size: 1.2rem;
  margin: 0;
}
.divide {
  color: var(--color-fg);
}
.divide:hover {
  color: var(--color-main);
}
.delay-contain {
  color: var(--color-dim);
  margin: 0;
  flex-grow: 1;
}
.skew-contain {
  font-weight: 600;
  font-size: .9rem;
}
.p-medium {
  padding-block: calc(var(--spacing-section) * .85);
  background: var(--color-page);
  overflow-wrap: anywhere;
}
.rotate {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  margin-bottom: 1.5rem;
}
.mr-1 {
  font-size: .8rem;
  font-weight: 600;
  text-transform: var(--case-eyebrow);
  letter-spacing: var(--tracking-overline);
  color: var(--color-main);
  max-width: 75%;
}
.decoration-0 {
  height: 1px;
  flex: 1;
  background: var(--color-stroke);
}
.duration-dark .decoration-0 {
  height: 3px;
  background: var(--color-main);
}
.leading-bottom {
  font-size: calc(var(--text-xxl) * 1.2);
  line-height: 1.1;
  max-width: 24ch;
  margin: 0;
  padding-bottom: 1.8rem;
}
.list-black {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.6fr);
  gap: 2rem;
  align-items: start;
  border-top: 1px solid var(--color-stroke);
  padding-top: 1.3rem;
}
.grid-y {
  font-size: .8rem;
  color: var(--color-dim);
  font-weight: 600;
  max-width: 24rem;
}
.top-8 {
  grid-template-columns: minmax(0,1fr);
}
.select-dark {
  font-size: 1.1rem;
  line-height: 1.7;
  color: var(--color-dim);
  max-width: 42rem;
  margin: 0;
}
@media (max-width:640px){
.leading-bottom {
  font-size: var(--text-xxl);
}
.list-black {
  grid-template-columns: 1fr;
  gap: 1rem;
}
.grid-y {
  display: none;
}
.select-dark {
  font-size: 1rem;
}
}
.tracking-secondary {
  max-width: 42rem;
  margin: 0 auto 2.5rem;
  text-align: center;
}
.align-tight {
  margin-bottom: 0;
}
.content-wide {
  display: grid;
  gap: 1.5rem;
  align-items: start;
}
.block-circle .content-wide {
  grid-template-columns: minmax(0,3fr) minmax(0,2fr);
}
.my-relaxed .content-wide {
  max-width: 46rem;
  margin: 0 auto;
}
.top-24 {
  display: grid;
  gap: 1.75rem;
  min-width: 0;
  padding: 2rem;
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-large);
  background: var(--color-page);
}
.align-10 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: .25rem 1rem;
  margin-bottom: .65rem;
}
.max-w-xl {
  font-weight: 600;
}
.translate-8 {
  font-family: var(--font-title);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-main);
  white-space: nowrap;
}
.min-h-pointer {
  display: block;
  width: 100%;
  height: 1.5rem;
  margin: 0;
  accent-color: var(--color-main);
  cursor: pointer;
}
.min-h-pointer:focus-visible,.space-full:focus-visible {
  outline: 3px solid var(--color-main);
  outline-offset: 3px;
}
.not-sr-wide {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: .75rem;
  margin-top: .35rem;
  font-size: .8rem;
  color: var(--color-dim);
}
.col-screen {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.align-gray-100 {
  margin-bottom: .8rem;
  padding: 0;
  font-weight: 600;
}
.flex-around {
  display: grid;
}
.delay {
  display: flex;
  align-items: center;
  gap: .75rem;
  cursor: pointer;
}
.py-col .delay {
  padding: .7rem 0;
  border-top: 1px solid var(--color-stroke);
}
.py-col .delay:last-child {
  border-bottom: 1px solid var(--color-stroke);
}
.cursor-3 .flex-around {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
}
.cursor-3 .delay {
  gap: .55rem;
  padding: .55rem .95rem;
  border: 1px solid var(--color-stroke);
  border-radius: 999px;
  background: var(--color-surface);
}
.cursor-3 .delay:has(:checked) {
  border-color: var(--color-main);
  box-shadow: inset 0 0 0 1px var(--color-main);
}
.space-full {
  flex-shrink: 0;
  width: 1.15rem;
  height: 1.15rem;
  margin: 0;
  accent-color: var(--color-main);
  cursor: pointer;
}
.items-bottom {
  flex: 1;
  min-width: 0;
}
.left-normal {
  color: var(--color-dim);
  font-size: .92rem;
  white-space: nowrap;
}
.place-hidden {
  min-width: 0;
  padding: 2rem;
  border: 1px solid var(--color-stroke);
  border-top: 4px solid var(--color-main);
  border-radius: var(--radius-large);
  background: var(--color-surface);
  box-shadow: var(--shadow-sm);
}
.block-circle .place-hidden {
  position: sticky;
  top: 6rem;
}
.sr-6 {
  margin: 0 0 .35rem;
  color: var(--color-dim);
  font-size: .85rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.ml-primary {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .2rem .6rem;
  margin: 0 0 1.25rem;
}
.decoration {
  font-family: var(--font-title);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-fg);
  overflow-wrap: anywhere;
}
.hidden-half {
  color: var(--color-dim);
  font-size: .95rem;
}
.rounded-10 {
  display: grid;
  gap: .5rem;
  margin: 0 0 1.25rem;
  padding: 1rem 0 0;
  border-top: 1px solid var(--color-stroke);
  list-style: none;
  font-size: .92rem;
}
.w-gray-900 {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}
.w-gray-900[hidden] {
  display: none;
}
.list-primary {
  min-width: 0;
  color: var(--color-dim);
}
.scale {
  display: block;
  font-size: .8rem;
  opacity: .85;
}
.decoration-12 {
  font-weight: 600;
  white-space: nowrap;
}
.gap-quarter {
  margin: 0 0 1.5rem;
  color: var(--color-dim);
  font-size: .85rem;
}
.left-12 {
  width: 100%;
}
@media(max-width:860px){
.block-circle .content-wide {
  grid-template-columns: minmax(0,1fr);
}
.block-circle .place-hidden {
  position: static;
}
}
@media(max-width:480px){
.top-24,.place-hidden {
  padding: 1.35rem;
}
.decoration {
  font-size: 2rem;
}
}
.mt-secondary {
  padding-block: var(--spacing-section);
  background: var(--color-page);
  color: var(--color-fg);
  overflow-wrap: anywhere;
}
.select-medium {
  border-top: 1px solid var(--color-stroke);
  padding-top: 1.7rem;
}
.truncate-20 {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 2rem;
  align-items: start;
  margin-bottom: 2rem;
}
.clearfix-10 {
  color: var(--color-main);
  max-width: 26rem;
}
.align {
  margin: 0;
  color: var(--color-dim);
  font-size: .95rem;
  max-width: 36rem;
}
.mt-around {
  font-size: calc(var(--text-xl) * 1.45);
  line-height: 1.12;
  max-width: 23ch;
  margin-bottom: 1.6rem;
}
.origin-secondary .mt-around {
  margin-left: 12%;
}
.w-fit {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  padding: .9rem 0 1.2rem;
  border-bottom: 2px solid var(--color-main);
  font-weight: 600;
  font-size: clamp(1.1rem,2.8vw,1.8rem);
  line-height: 1.35;
  color: var(--color-main);
}
.w-fit:hover {
  color: var(--color-primary-alt);
  text-decoration: underline;
  text-underline-offset: .3em;
}
.decoration-tight {
  font-size: 2.5rem;
  line-height: 1;
  flex: none;
}
@media (max-width:640px){
.truncate-20 {
  grid-template-columns: 1fr;
  gap: .6rem;
  margin-bottom: 1.5rem;
}
.mt-around {
  font-size: calc(var(--text-xl) * 1.15);
}
.origin-secondary .mt-around {
  margin-left: 0;
}
.w-fit {
  gap: 1rem;
}
.decoration-tight {
  font-size: 1.8rem;
}
}
.mb-dark {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 3rem;
  align-items: start;
}
.my-muted .pb-black {
  order: 1;
}
.my-muted .border-12 {
  order: 2;
}
.p-circle {
  margin: 1.5rem 0 0;
  display: grid;
  gap: .75rem;
}
.gap-circle {
  display: grid;
  grid-template-columns: minmax(0,8rem) minmax(0,1fr);
  gap: 1rem;
}
.shadow-6 {
  font-weight: 600;
  color: var(--color-dim);
  font-size: .9rem;
}
.not-sr-white {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}
.decoration-bottom {
  margin-top: 1.5rem;
  height: 12rem;
  border-radius: var(--radius-large);
  background: repeating-linear-gradient(45deg,var(--color-surface),var(--color-surface) 12px,var(--color-page) 12px,var(--color-page) 24px);
  border: 1px solid var(--color-stroke);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-main);
}
.bg-contain svg {
  width: 2.5rem;
  height: 2.5rem;
}
.pb-black {
  display: grid;
  gap: 1rem;
  padding: 2rem;
  background: var(--color-surface);
  border-radius: var(--radius-large);
  border: 1px solid var(--color-stroke);
}
.opacity-5 {
  display: grid;
  gap: .35rem;
  min-width: 0;
}
.object-end {
  font-size: .9rem;
  font-weight: 600;
}
.align-visible {
  width: 100%;
  min-width: 0;
  padding: .7rem .9rem;
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-default);
  background: var(--color-page);
}
.align-visible:focus {
  outline: 2px solid var(--color-main);
  outline-offset: 1px;
}
.overflow-16 {
  resize: vertical;
}
.pb-start {
  justify-self: start;
  max-width: 100%;
  overflow-wrap: anywhere;
}
@media (max-width:860px){
.mb-dark {
  grid-template-columns: minmax(0,1fr);
}
.my-muted .pb-black,.my-muted .border-12 {
  order: 0;
}
}
.border-12,.pb-black {
  min-width: 0;
  overflow-wrap: anywhere;
}
@media(max-width:480px){
.gap-circle {
  grid-template-columns: minmax(0,1fr);
  gap: .25rem;
}
.p-circle {
  gap: 1rem;
}
.pb-black {
  padding: 1.25rem;
}
}
.leading-24 .mb-dark {
  grid-template-columns: minmax(0,1fr);
}
.leading-24 .border-12 {
  max-width: 46rem;
}
.justify-scroll {
  margin-top: 2rem;
}
.w-gray-100 {
  max-width: 46rem;
}
.content-y {
  font-size: .85rem;
  color: var(--color-dim);
}
.visible-pointer {
  font-size: 1.05rem;
}
.skew-end {
  margin-top: 2rem;
}
.clearfix-wide {
  font-size: 1.3rem;
}
.inline-1 {
  color: var(--color-fg);
}
.row-2 {
  background: var(--color-surface);
  overflow-wrap: anywhere;
}
.cursor-muted {
  max-width: 56rem;
  background: var(--color-page);
  border: 1px solid var(--color-stroke);
  border-top: 3px solid var(--color-main);
  border-radius: 0 0 var(--radius-default) var(--radius-default);
  box-shadow: var(--shadow-sm);
  padding: clamp(1.25rem,4vw,3.5rem);
}
.m-10 {
  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(--color-stroke);
  font-size: .85rem;
}
.truncate-white {
  color: var(--color-dim);
  min-width: 0;
}
.tracking-contain {
  margin: 0;
  text-align: right;
  color: var(--color-fg);
  min-width: 0;
}
.py {
  max-width: 66ch;
  margin-inline: auto;
}
.h-xs {
  font-size: 1.1rem;
  line-height: 1.8;
  white-space: pre-line;
  margin: 0 0 2.5rem;
}
.flex-secondary {
  margin-top: 2.25rem;
}
.justify-primary {
  font-size: clamp(1.2rem,1.8vw,1.55rem);
  line-height: 1.35;
  margin: 0 0 .9rem;
  scroll-margin-top: 8rem;
}
.scale-end {
  color: var(--color-fg);
  text-decoration: underline;
  text-decoration-color: var(--color-stroke);
  text-decoration-thickness: 1px;
  text-underline-offset: .25em;
}
.scale-end:hover {
  color: var(--color-main);
  text-decoration-color: currentColor;
}
.scale-end:focus-visible,.justify-primary:focus {
  outline: 2px solid var(--color-main);
  outline-offset: 5px;
}
.not-sr-around {
  font-size: 1rem;
  line-height: 1.85;
  white-space: pre-line;
  margin: 0 0 1rem;
}
.not-sr-around:last-child {
  margin-bottom: 0;
}
@media(max-width:480px){
.cursor-muted {
  padding: 1.25rem 1rem;
}
.m-10 {
  flex-direction: column;
  gap: .3rem;
  margin-bottom: 1.75rem;
}
.tracking-contain {
  text-align: left;
}
.h-xs {
  font-size: 1.05rem;
  margin-bottom: 1.75rem;
}
.flex-secondary {
  margin-top: 1.75rem;
}
.not-sr-around {
  line-height: 1.75;
}
}
.border-y {
  overflow-wrap: anywhere;
}
.block-12 {
  max-width: 72rem;
}
.absolute-10 {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.6fr);
  gap: 3rem;
  align-items: start;
  padding-bottom: 3rem;
}
.ml-min {
  margin: 0;
  padding-left: 1rem;
  border-left: 3px solid var(--color-main);
}
.static-circle {
  color: var(--color-dim);
  font-size: .8rem;
  margin-bottom: .35rem;
}
.col-24 {
  margin: 0;
  color: var(--color-fg);
  font-size: .95rem;
  font-weight: 600;
}
.fixed-start {
  min-width: 0;
  font-size: clamp(1.1rem,1.6vw,1.3rem);
  line-height: 1.65;
  margin: 0;
  white-space: pre-line;
}
.my-right {
  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(--color-stroke);
  padding-block: 2rem;
}
.my-right:last-child {
  border-bottom: 1px solid var(--color-stroke);
}
.divide-between {
  font-family: var(--font-title);
  font-size: 2.7rem;
  line-height: 1;
  font-weight: var(--font-weight-bold);
  color: var(--color-main);
  font-variant-numeric: tabular-nums;
}
.basis-black {
  font-size: clamp(1.1rem,1.6vw,1.35rem);
  line-height: 1.4;
  margin: 0;
  min-width: 0;
  scroll-margin-top: 8rem;
}
.m-disc {
  color: var(--color-fg);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: .25em;
}
.m-disc:hover {
  color: var(--color-main);
  text-decoration-color: currentColor;
}
.m-disc:focus-visible,.basis-black:focus {
  outline: 2px solid var(--color-main);
  outline-offset: 5px;
}
.left-top {
  min-width: 0;
  max-width: 65ch;
}
.list-0 {
  font-size: 1rem;
  line-height: 1.8;
  white-space: pre-line;
  margin: 0 0 1rem;
}
.list-0:last-child {
  margin-bottom: 0;
}
@media(max-width:860px){
.absolute-10 {
  grid-template-columns: minmax(0,1fr);
  gap: 1.5rem;
  padding-bottom: 2rem;
}
.my-right {
  grid-template-columns: 2.5rem minmax(0,1fr);
  gap: 1rem 1.25rem;
}
.divide-between {
  font-size: 2rem;
}
.left-top {
  grid-column: 2;
}
.basis-black {
  align-self: center;
}
}
@media(max-width:480px){
.my-right {
  padding-block: 1.5rem;
  gap: 1rem;
}
.left-top {
  grid-column: 1/-1;
}
.divide-between {
  font-size: 1.8rem;
}
}
.self-xl {
  overflow-wrap: anywhere;
}
.duration {
  display: grid;
  grid-template-columns: minmax(12rem,19rem) minmax(0,44rem);
  gap: clamp(2rem,5vw,5rem);
  justify-content: center;
  align-items: start;
}
.sticky-normal {
  min-width: 0;
  position: sticky;
  top: 7rem;
  padding-top: .35rem;
}
.pb-wrap {
  margin: 0 0 1.75rem;
  padding: 0 0 1.5rem;
  border-bottom: 2px solid var(--color-main);
}
.font-screen {
  font-size: .75rem;
  letter-spacing: .05em;
  color: var(--color-dim);
  margin-bottom: .4rem;
}
.z-max {
  margin: 0;
  font-size: .95rem;
  font-weight: 600;
  color: var(--color-fg);
}
.block-gray-500 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: .3rem;
}
.min-h {
  min-width: 0;
}
.duration-half {
  display: grid;
  grid-template-columns: 1.65rem minmax(0,1fr);
  gap: .65rem;
  align-items: baseline;
  padding: .55rem .2rem;
  color: var(--color-fg);
  font-size: .85rem;
  line-height: 1.45;
  border-bottom: 1px solid var(--color-stroke);
}
.duration-half:hover {
  color: var(--color-main);
  text-decoration: underline;
  text-underline-offset: .2em;
}
.duration-half:focus-visible {
  outline: 2px solid var(--color-main);
  outline-offset: 3px;
}
.absolute-12 {
  color: var(--color-dim);
  font-size: .72rem;
  font-variant-numeric: tabular-nums;
}
.border-left {
  min-width: 0;
}
.block-top {
  font-size: clamp(1.1rem,1.5vw,1.25rem);
  line-height: 1.7;
  margin: 0 0 2.5rem;
  white-space: pre-line;
}
.mx-wide {
  padding-block: 1.8rem;
  border-top: 1px solid var(--color-stroke);
}
.mx-wide:last-child {
  padding-bottom: 0;
}
.duration-none {
  font-size: clamp(1.15rem,1.6vw,1.45rem);
  line-height: 1.35;
  margin: 0 0 1rem;
  scroll-margin-top: 8rem;
}
.duration-none:focus {
  outline: 2px solid var(--color-main);
  outline-offset: 5px;
}
.block {
  font-size: 1rem;
  line-height: 1.8;
  white-space: pre-line;
  margin: 0 0 1rem;
}
.block:last-child {
  margin-bottom: 0;
}
@media(max-width:780px){
.duration {
  grid-template-columns: minmax(0,1fr);
  gap: 2rem;
}
.sticky-normal {
  position: static;
  padding: 1.25rem;
  background: var(--color-surface);
  border: 1px solid var(--color-stroke);
  border-radius: var(--radius-default);
}
.pb-wrap {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}
.block-gray-500 {
  grid-template-columns: repeat(2,minmax(0,1fr));
  column-gap: 1.25rem;
}
.block-top {
  margin-bottom: 1.75rem;
}
}
@media(max-width:480px){
.block-gray-500 {
  grid-template-columns: minmax(0,1fr);
}
.mx-wide {
  padding-block: 1.5rem;
}
}
.origin-circle {
  background: var(--color-surface);
  padding-block: 1.5rem calc(var(--spacing-section) * .65);
}
.decoration-8 {
  min-width: 0;
}
.overflow {
  margin: 0;
}
.inline-col {
  width: 100%;
  aspect-ratio: 5/2;
  object-fit: cover;
}
.not-sr-square {
  position: relative;
  margin: -3rem clamp(1rem,4vw,4rem) 0;
  padding: clamp(1.25rem,4.5vw,4rem);
  background: var(--color-page);
  border: 1px solid var(--color-stroke);
}
.order-6 {
  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;
}
.order-6:focus-visible {
  outline: 2px solid var(--color-main);
  outline-offset: 4px;
}
.order-light {
  display: block;
}
.basis-visible {
  font-size: clamp(2rem,4vw,3.8rem);
  max-width: 23ch;
  overflow-wrap: anywhere;
  margin-bottom: .65em;
}
.py-contain {
  font-size: clamp(1.05rem,1.5vw,1.25rem);
  line-height: 1.65;
  max-width: 56ch;
  color: var(--color-dim);
  margin-bottom: 2rem;
}
.p-xs {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1.5rem;
  border-top: 1px solid var(--color-stroke);
  padding-top: 1.25rem;
  font-size: .8rem;
  color: var(--color-dim);
}
.sr {
  font-weight: 600;
  color: var(--color-fg);
  min-width: 0;
}
.overflow:not(:has(img)) {
  display: none;
}
.decoration-8:not(:has(img)) .not-sr-square {
  margin-top: 0;
}
@media(max-width:700px){
.inline-col {
  aspect-ratio: 8/5;
}
.not-sr-square {
  margin: -1.25rem .65rem 0;
  padding: 1.25rem;
}
.order-6 {
  margin-bottom: 1rem;
}
.py-contain {
  margin-bottom: 1.5rem;
}
.sr {
  flex-basis: 100%;
}
}
.object-min {
  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(--color-stroke);
}
.visible-secondary {
  min-width: 0;
}
.top-3 {
  display: block;
  font-size: .8rem;
  color: var(--color-main);
  margin-bottom: 1rem;
  font-variant-numeric: tabular-nums;
}
.shadow-1 {
  font-size: clamp(1.25rem,2vw,1.7rem);
  line-height: 1.4;
  max-width: 22ch;
  overflow-wrap: anywhere;
}
.z {
  max-width: 66ch;
  font-size: 1.05rem;
  line-height: 1.85;
  min-width: 0;
  overflow-wrap: anywhere;
}
.place-relaxed {
  margin-bottom: 1.35rem;
}
.place-relaxed:last-child {
  margin: 0;
}
.justify-screen {
  padding: 1.5rem 1.5rem 1.5rem 2.75rem;
  background: var(--color-surface);
  border-left: 2px solid var(--color-main);
  margin: 1.5rem 0 0;
  border-radius: 0 var(--radius-default) var(--radius-default) 0;
}
.left {
  padding-left: .25rem;
  margin-bottom: .6rem;
}
.left:last-child {
  margin: 0;
}
.left::marker {
  color: var(--color-main);
}
.cursor-bold {
  padding: 2.5rem;
  background: var(--color-surface);
  border-radius: var(--radius-large);
  margin-left: calc((100% + 2 * clamp(2rem,5vw,5rem)) / 3);
}
.visible-gray-500 {
  font-family: var(--font-title);
  font-size: 1.25rem;
  line-height: 1.65;
  margin: 0;
  overflow-wrap: anywhere;
}
@media(max-width:760px){
.object-min {
  grid-template-columns: minmax(0,1fr);
  gap: 1rem;
  padding-block: 1.5rem 2rem;
}
.top-3 {
  margin-bottom: .5rem;
}
.shadow-1 {
  max-width: none;
  margin: 0;
}
.cursor-bold {
  margin-left: 0;
  padding: 1.5rem;
}
.z {
  font-size: 1rem;
}
}