:root {
  --color-key: #9e67d5;
  --color-primary-alt: #bd94e6;
  --color-primary-tint: #523c68;
  --color-brand-on-dark: #9e67d5;
  --color-primary-fg: #141018;
  --color-highlight: #23e123;
  --color-accent-contrast: #141018;
  --color-base: #141217;
  --color-raised: #2b2037;
  --color-body: #f7f6f8;
  --color-secondary-text: #a89eb3;
  --color-border: #3b3243;
  --color-dark: #0d0b0f;
  --color-dark-raised: #1c1622;
  --color-dark-fg: #f5f4f6;
  --color-dark-fg-muted: #b3abba;
  --radius-default: 5px;
  --radius-large: 10px;
  --radius-button: 5px;
  --case-cta: none;
  --tracking-cta: 0;
  --font-weight-cta: 600;
  --font-display: 'Fira Sans', 'Segoe UI', system-ui, Roboto, sans-serif;
  --font-text: 'Fira Sans', 'Segoe UI', system-ui, Roboto, sans-serif;
  --text-h1: clamp(1.8rem, 3.4vw, 2.5rem);
  --text-h2: clamp(1.4rem, 2.4vw, 1.9rem);
  --text-h3: 1.15rem;
  --font-weight-title: 700;
  --tracking-title: -0.02em;
  --leading-title: 1.25;
  --case-overline: uppercase;
  --tracking-label: .12em;
  --color-label: #9e67d5;
  --text-body: 1rem;
  --leading-base: 1.5;
  --container-content: 1145px;
  --spacing-section: 5.5rem;
  --shadow-sm: 0 2px 12px rgba(0,0,0,.08);
  --shadow-strong: 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-body);
  line-height: var(--leading-base);
  color: var(--color-body);
  background: var(--color-base);
}
img,svg,video {
  max-width: 100%;
  height: auto;
  display: block;
}
h1,h2,h3,h4 {
  font-family: var(--font-display);
  font-weight: var(--font-weight-title);
  line-height: var(--leading-title);
  margin: 0 0 .6em;
  color: var(--color-body);
  letter-spacing: var(--tracking-title);
  hyphens: manual;
}
h1{font-size:var(--text-h1)}
h2 {
  font-size: var(--text-h2);
}
h3 {
  font-size: var(--text-h3);
  line-height: 1.3;
}
h4{font-size:1.05rem;line-height:1.35}
p{margin:0 0 1em}
a{color:var(--color-key);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-body);
}
.order-bottom{width:min(100% - 2.5rem,var(--container-content));margin-inline:auto}
.cursor-y{width:min(100% - 2.5rem,48rem)}
.grid-5{padding-block:var(--spacing-section)}
.shrink-wide{background:var(--color-raised)}
.h-screen {
  background: var(--color-dark);
  color: var(--color-dark-fg);
}
.h-screen h1,.h-screen h2,.h-screen h3,.h-screen h4 {
  color: inherit;
}
.h-screen a {
  color: var(--color-brand-on-dark);
}
.h-screen .delay-visible,.h-screen .px-decimal {
  color: var(--color-dark-fg-muted);
}
.h-screen .cursor-right {
  color: var(--color-brand-on-dark);
}
.not-sr-max{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.5rem;border-radius:var(--radius-button);background:var(--color-key);color:var(--color-primary-fg);font-weight:var(--font-weight-cta);text-transform:var(--case-cta);letter-spacing:var(--tracking-cta);line-height:1.25;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s}
.not-sr-max:hover{background:var(--color-primary-alt);color:var(--color-primary-fg)}
.not-sr-max:active{transform:translateY(1px)}
.container-primary{background:transparent;color:var(--color-key);border-color:currentColor}
.container-primary:hover{background:var(--color-key);color:var(--color-primary-fg);border-color:var(--color-key)}
.truncate-2xl{background:var(--color-highlight);color:var(--color-accent-contrast)}
.truncate-2xl:hover{background:var(--color-highlight);color:var(--color-accent-contrast);filter:brightness(.92)}
.left-scroll {
  background: var(--color-dark-fg);
  color: var(--color-dark);
}
.left-scroll:hover{background:#fff;color:var(--color-dark)}
.order-24 {
  padding: .55rem 1.1rem;
  font-size: .9rem;
}
.opacity-cover{padding:1rem 2rem;font-size:1.05rem}
.h-screen .not-sr-max:not(.container-primary):not(.truncate-2xl):not(.left-scroll){background:var(--color-brand-on-dark);color:var(--color-dark)}
.h-screen .not-sr-max:not(.container-primary):not(.truncate-2xl):not(.left-scroll):hover{background:var(--color-dark-fg);color:var(--color-dark)}
.h-screen .container-primary{color:var(--color-dark-fg);border-color:var(--color-dark-fg-muted)}
.h-screen .container-primary:hover{background:var(--color-dark-fg);color:var(--color-dark);border-color:var(--color-dark-fg)}
.flex-end{display:grid;gap:1.5rem}
.decoration-x{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
.my-6 {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr));
}
.min-h {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,12rem),1fr));
}
.mx-dark{grid-template-columns:repeat(2,1fr)}
.pb-visible {
  grid-template-columns: repeat(3,1fr);
}
.pt-1{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.pt-1{grid-template-columns:repeat(2,1fr)}.pb-visible {
  grid-template-columns: repeat(2,1fr);
}}
@media (max-width:560px){.mx-dark,.pb-visible,.pt-1{grid-template-columns:1fr}}
.order-6 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.order-6>*{min-width:0}
.order-6.mx-dark>*{flex:0 0 calc((100% - 1.5rem)/2)}
.order-6.pb-visible>*{flex:0 0 calc((100% - 3rem)/3)}
.order-6.pt-1>* {
  flex: 0 0 calc((100% - 4.5rem)/4);
}
@media (max-width:960px){.order-6.pb-visible>*,.order-6.pt-1>*{flex-basis:calc((100% - 1.5rem)/2)}}
@media (max-width:560px){.order-6.mx-dark>*,.order-6.pb-visible>*,.order-6.pt-1>*{flex-basis:100%}}
.delay-visible {
  font-size: 1.15rem;
  color: var(--color-secondary-text);
}
.cursor-right{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:var(--tracking-label);text-transform:var(--case-overline);color:var(--color-label);margin-bottom:.75rem}
.px-decimal {
  color: var(--color-secondary-text);
}
.origin-square{text-align:center}
.w-full {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}
@media (max-width:640px){.grid-5 {
  padding-block: calc(var(--spacing-section) * .7);
}}
.shrink-visible {
  background: var(--color-base);
  border-bottom: 1px solid var(--color-border);
  z-index: 20;
}
.pb-lg{position:sticky;top:0}
.delay-min{font-size:.82rem}
.text-medium{background:var(--color-key);color:var(--color-primary-fg)}
.ml-black{background:var(--color-dark);color:var(--color-dark-fg)}
.delay-half {
  background: var(--color-raised);
  color: var(--color-secondary-text);
  border-bottom: 1px solid var(--color-border);
}
.m-start {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding: .45rem 0;
}
.cursor-12 {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  color: inherit;
  min-width: 0;
  max-width: 100%;
}
.cursor-12:hover {
  color: inherit;
  text-decoration: underline;
}
.max-w-left {
  margin-left: auto;
}
.sr-black {
  display: inline-flex;
  width: .9rem;
  height: .9rem;
  opacity: .85;
  flex: none;
}
.sr-black svg{width:100%;height:100%}
.transition {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-height: 4.5rem;
}
.rotate-8 {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  max-width: 100%;
}
.pt-normal{height:auto;width:auto;max-height:2.25rem}
.mt-row {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.my-scroll{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}
.w-bottom {
  color: var(--color-body);
  font-weight: 500;
  padding: .25rem 0;
  border-bottom: 2px solid transparent;
}
.w-bottom:hover,.ml-16{color:var(--color-key);border-bottom-color:var(--color-key)}
.scale{display:none}
.scale:focus-visible + .bg-sm{outline:2px solid var(--color-key);outline-offset:4px}
.bg-sm {
  display: none;
  flex: none;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  white-space: nowrap;
  line-height: 1.2;
  flex-direction: column;
  gap: 5px;
  padding: .5rem;
  cursor: pointer;
}
.mt-16 {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--color-body);
  border-radius: 2px;
}
@media (max-width:860px){
.scale {
  display: block;
}
.transition {
  gap: .75rem;
}
.max-w-left {
  display: none;
}
.m-start{justify-content:center;gap:1rem}
.bg-sm{display:flex}
.mt-row {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  padding: 1.25rem;
  background: var(--color-base);
  border-bottom: 1px solid var(--color-border);
  box-shadow: var(--shadow-sm);
}
.transition {
  position: relative;
}
.scale:checked ~ .mt-row {
  display: flex;
}
.my-scroll {
  flex-direction: column;
  gap: .75rem;
}
}
.pb-wrap {
  padding: 0 clamp(.75rem,2vw,1.25rem) clamp(.75rem,2vw,1.25rem);
}
.absolute-1{max-width:calc(var(--container-content) + 6rem);margin-inline:auto;padding:clamp(1.75rem,5vw,3.25rem) clamp(1.25rem,5vw,3.5rem) 1.5rem;border-radius:calc(var(--radius-large) + 8px)}
.grid-10 .absolute-1 {
  background: var(--color-dark);
  color: var(--color-dark-fg);
}
.col-full .absolute-1 {
  background: var(--color-raised);
  border: 1px solid var(--color-border);
}
.cursor-decimal {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
}
.tracking-end{display:inline-flex;margin-bottom:.9rem}
.rounded-col{height:auto;width:auto;max-height:2.25rem}
.h-hidden {
  max-width: 24rem;
  margin: 0;
  opacity: .75;
}
.whitespace{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem 1.75rem}
.p-visible {
  color: inherit;
  font-weight: 500;
}
.p-visible:hover{color:var(--color-key)}
.grid-10 .p-visible:hover{color:var(--color-brand-on-dark)}
.border-black {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 2rem;
  margin: 2.25rem 0 0;
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-border);
  font-size: .95rem;
}
.grid-10 .border-black{border-color:rgba(255,255,255,.14)}
.overflow{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 2rem;margin-top:1.5rem;font-size:.82rem;opacity:.7}
.mr-start{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.25rem}
.break-bottom{position:fixed;z-index:50;inset-inline:1rem;bottom:1rem;max-width:76rem;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);margin-inline:auto;display:grid;grid-template-columns:minmax(8rem,.8fr) minmax(0,2fr) minmax(15rem,1.2fr);align-items:center;gap:1.4rem;overflow:auto;overscroll-behavior:contain;padding:1.05rem 1.35rem;background:var(--color-base);color:var(--color-body);border:1px solid var(--color-border);border-inline-start:4px solid var(--color-key);box-shadow:var(--shadow-sm);font-size:.9rem;line-height:1.45;overflow-wrap:anywhere}
.break-bottom[hidden]{display:none}
.gap-bottom{min-width:0;padding-inline-end:1.2rem;border-inline-end:1px solid var(--color-border)}
.mr-sm{margin:0 0 .35rem;font-family:var(--font-display);font-size:1rem;font-weight:var(--font-weight-title);line-height:1.3}
.clearfix-visible{display:inline-block;max-width:100%;color:var(--color-key);font-size:.82rem;text-decoration:underline;text-underline-offset:.18em}
.clearfix-visible:hover {
  color: var(--color-primary-alt);
}
.sr{min-width:0;margin:0}
.container-wide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;min-width:0}
.sr-dark {
  min-width: 0;
  min-height: 44px;
  padding: .7rem .75rem;
  background: var(--color-raised);
  color: var(--color-body);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-button);
  font-weight: var(--font-weight-cta);
  font-size: .88rem;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.sr-dark:hover {
  background: var(--color-key);
  border-color: var(--color-key);
  color: var(--color-primary-fg);
}
.sr-dark:focus-visible,.clearfix-visible:focus-visible {
  outline: 3px solid var(--color-key);
  outline-offset: 3px;
}
@media(max-width:900px){.break-bottom{grid-template-columns:minmax(0,1fr) minmax(14rem,1fr);gap:1rem}.gap-bottom {
  grid-column: 1/-1;
  border-inline-end: 0;
  padding-inline-end: 0;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}.mr-sm{margin:0}}
@media(max-width:560px){
.break-bottom{inset-inline:.5rem;bottom:.5rem;grid-template-columns:minmax(0,1fr);gap:.55rem;padding:.75rem .85rem;font-size:.84rem;line-height:1.4}
.gap-bottom{flex-wrap:wrap;gap:.15rem .8rem}
.mr-sm{font-size:.92rem}
.sr-dark{min-height:40px;padding:.5rem .6rem}
}
.inset-lg{padding:2.25rem;background:var(--color-raised);border:1px solid var(--color-border);border-radius:var(--radius-large);min-width:0}
.visible-cover .inset-lg{text-align:center}
.break-pointer {
  margin: 0;
  overflow-wrap: anywhere;
}
.content-2 {
  margin: .75rem 0 0;
  color: var(--color-secondary-text);
  overflow-wrap: anywhere;
}
.z-0{color:inherit}
.sr-fit {
  display: grid;
  gap: 1rem;
  margin-top: 1.75rem;
  text-align: start;
}
.container-center {
  display: grid;
  gap: .35rem;
  min-width: 0;
}
.visible-auto {
  font-size: .9rem;
  font-weight: 600;
}
.static-0 {
  width: 100%;
  min-width: 0;
  padding: .7rem .9rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-default);
  background: var(--color-base);
}
.static-0:focus{outline:2px solid var(--color-key);outline-offset:1px}
.space-primary {
  resize: vertical;
}
.p-bold {
  justify-self: start;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.visible-cover .p-bold {
  justify-self: center;
}
@media (max-width:480px){
.inset-lg{padding:1.25rem}
}
.overflow-contain {
  padding-block: calc(var(--spacing-section) * .85);
  background: var(--color-base);
  color: var(--color-body);
  overflow-wrap: anywhere;
}
.leading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.25rem;
  border-top: 1px solid var(--color-border);
  padding-top: 1rem;
}
.row-10 .leading{border-top:3px solid var(--color-key)}
.ml {
  margin: 0;
  max-width: 34rem;
  color: var(--color-key);
}
.ml-0{font-size:.8rem;text-align:right;color:var(--color-secondary-text);max-width:18rem}
.mb-half{max-width:20ch;font-size:calc(var(--text-h1) * 1.18);margin:1.5rem 0 2rem;line-height:1.08}
.inline{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-border)}
.font {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.2rem;
}
.row-pointer {
  font-size: 1.05rem;
  margin: 0;
  color: var(--color-secondary-text);
}
.rounded-xl{max-width:100%;text-align:center;white-space:normal}
.decoration-end {
  display: inline-flex;
  gap: .75rem;
  align-items: baseline;
  font-weight: 600;
  max-width: 100%;
  text-decoration: underline;
  text-underline-offset: .3em;
}
.sr-y{margin:0;min-width:0}
.space-2{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-default)}
.grow-12 {
  padding-top: .8rem;
  color: var(--color-secondary-text);
  font-size: .85rem;
  border-bottom: 1px solid var(--color-border);
  padding-bottom: .8rem;
}
@media (max-width:700px){.ml-0 {
  display: none;
}.inline {
  grid-template-columns: 1fr;
}.mb-half{font-size:var(--text-h1);max-width:24ch}.font {
  max-width: 40rem;
}.space-2 {
  aspect-ratio: 4/3;
}}
.skew-quarter {
  max-width: 44rem;
  margin-bottom: 2.5rem;
}
.relative-medium .skew-quarter {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.h-black{gap:2.5rem 3rem}
.row .mb-between{border-top:2px solid var(--color-key);padding-top:1.25rem}
.order{font-size:1.15rem;margin-bottom:.6rem}
.self-around{margin:0;line-height:1.7}
.ease-gray-900{margin-bottom:2.5rem}
.shrink-snug {
  list-style: none;
  padding: 0;
  margin: 0;
}
.px{grid-template-columns:minmax(0,1fr);max-width:36rem;margin-inline:auto}
.not-sr-medium{display:flex;flex-direction:column;padding:1.75rem;background:var(--color-raised);border-radius:var(--radius-large);border:1px solid var(--color-border);transition:transform .2s,box-shadow .2s}
.not-sr-medium:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-sm);
}
.shrink-bottom{color:var(--color-key);margin-bottom:1rem}
.shrink-bottom svg{width:2rem;height:2rem}
.row-1 {
  color: var(--color-secondary-text);
  flex-grow: 1;
}