:root {
  color-scheme: light;
  --vs-navy-950: #0E1A2C;
  --vs-navy-900: #111F34;
  --vs-navy-850: #15253C;
  --vs-navy:     #17253B;
  --vs-navy-800: #1A2F4D;
  --vs-navy-700: #23405F;
  --vs-navy-600: #2A4B72;
  --vs-cobalt-700: #1F3E86;
  --vs-cobalt:     #244BA5;
  --vs-cobalt-500: #3560B8;
  --vs-azure:      #3F72C8;
  --vs-sky:        #7FA6E0;
  --vs-azure-200:  #9DBBEE;
  --vs-amber:      #E9C77E;
  --vs-amber-700:  #9A6B1F;
  --vs-peach:      #F2B98A;
  --vs-mist:       #D8E3EF;
  --vs-mist-2:     #C6D5E6;
  --vs-stone:      #F4F2EE;
  --vs-stone-deep: #EAE5DA;
  --vs-paper:      #FDFCFA;
  --vs-white:      #FFFFFF;
  --vs-slate:      #4A566B;
  --vs-cloud:      #C3CCD9;
  --vs-cloud-2:    #DCE4F4;
  --c-bg: var(--vs-paper);
  --c-panel: var(--vs-stone);
  --c-panel-deep: var(--vs-stone-deep);
  --c-card: var(--vs-white);
  --c-pastel: var(--vs-mist);
  --c-dark: var(--vs-navy);
  --c-dark-deep: var(--vs-navy-900);
  --c-text: var(--vs-navy);
  --c-text-muted: var(--vs-slate);
  --c-on-dark: #FFFFFF;
  --c-on-dark-muted: var(--vs-cloud);
  --c-on-accent-grad: var(--vs-cloud-2);
  --c-link: var(--vs-cobalt);
  --c-link-on-dark: #FFFFFF;
  --c-accent: var(--vs-cobalt);
  --c-on-accent: #FFFFFF;
  --c-accent-hover: var(--vs-amber);
  --c-on-accent-hover: var(--vs-navy);
  --c-tag: var(--vs-amber);
  --c-on-tag: var(--vs-navy);
  --c-line: rgba(23, 37, 59, .12);
  --c-line-strong: rgba(23, 37, 59, .24);
  --c-line-on-dark: rgba(255, 255, 255, .18);
  --c-line-control: rgba(23, 37, 59, .54);
  --c-line-control-on-dark: rgba(255, 255, 255, .36);
  --c-focus: var(--vs-cobalt);
  --c-focus-on-dark: var(--vs-amber);
  --c-long: var(--vs-cobalt);
  --c-short: var(--vs-amber-700);
  --c-long-on-dark: var(--vs-azure-200);
  --c-short-on-dark: var(--vs-amber);
  --g-brand: linear-gradient(100deg, #111F34 0%, #15253C 25%, #1A2F4D 50%, #23405F 75%, #2A4B72 100%);
  --g-accordion: linear-gradient(104deg, #1F3E86 15%, #3560B8 88%);
  --g-scrim: linear-gradient(to top, rgba(17,31,52,.55) 0%, rgba(17,31,52,.25) 30%, rgba(17,31,52,0) 55%);
  --g-hero-fallback:
    radial-gradient(18% 26% at 56% 42%, rgba(242,185,138,.85) 0%, rgba(233,199,126,.30) 45%, rgba(63,114,200,0) 100%),
    radial-gradient(10% 14% at 72% 82%, rgba(242,185,138,.30) 0%, rgba(242,185,138,0) 100%),
    radial-gradient(55% 70% at 88% 30%, rgba(63,114,200,.85) 0%, rgba(63,114,200,0) 70%),
    radial-gradient(60% 90% at -5% 55%, #0E1A2C 0%, rgba(14,26,44,0) 70%),
    linear-gradient(100deg, #111F34 0%, #15253C 22%, #1A2F4D 42%, #23405F 60%, #2A4B72 78%, #244BA5 100%);
  --g-inner-hero:
    radial-gradient(18% 26% at 56% 42%, rgba(242,185,138,.26) 0%, rgba(233,199,126,.09) 45%, rgba(63,114,200,0) 100%),
    radial-gradient(10% 14% at 72% 82%, rgba(242,185,138,.09) 0%, rgba(242,185,138,0) 100%),
    radial-gradient(55% 70% at 88% 30%, rgba(63,114,200,.85) 0%, rgba(63,114,200,0) 70%),
    radial-gradient(60% 90% at -5% 55%, #0E1A2C 0%, rgba(14,26,44,0) 70%),
    linear-gradient(100deg, #111F34 0%, #15253C 22%, #1A2F4D 42%, #23405F 60%, #2A4B72 78%, #244BA5 100%);
  --g-footer:
    radial-gradient(55% 85% at 100% 0%, rgba(36,75,165,.40) 0%, rgba(36,75,165,0) 60%),
    radial-gradient(40% 60% at 0% 100%, rgba(233,199,126,.14) 0%, rgba(233,199,126,0) 60%),
    linear-gradient(100deg, #111F34 0%, #15253C 30%, #1A2F4D 60%, #23405F 85%, #2A4B72 100%);
  --grid-size: 48px;
  --grid-line-dark: rgba(255, 255, 255, .07);
  --grid-line-light: rgba(23, 37, 59, .05);
  --plus-tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath fill='%23fff' d='M9 11.3h6v1.4H9zM11.3 9h1.4v6h-1.4z'/%3E%3C/svg%3E");
  --font-sans: "Inter VS", "Helvetica Neue", Arial, system-ui, sans-serif;
  --font-serif: "Libre Caslon Display", "Bodoni 72", Didot, Georgia, serif;
  --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600;
  --fs-display: 80px;        --lh-display: 1;        --ls-display: -0.03em;
  --fs-display-inner: 56px;  --lh-display-inner: 1.04; --ls-display-inner: -0.028em;
  --fs-h1: 40px;   --lh-h1: 1.1;   --ls-h1: -0.022em;
  --fs-h2: 24px;   --lh-h2: 1.25;  --ls-h2: -0.015em;
  --fs-h3: 18px;   --lh-h3: 1.3;   --ls-h3: -0.006em;
  --fs-lede: 18px; --lh-lede: 1.5;
  --fs-body: 16px; --lh-body: 1.6;
  --fs-small: 15px; --lh-small: 1.5;
  --fs-ui: 14px;   --lh-ui: 16px;  --ls-ui: 0.005em;
  --fs-eyebrow: 12px; --lh-eyebrow: 16px; --ls-eyebrow: 0.12em;
  --fs-legal: 13px; --lh-legal: 1.6;
  --fs-stat: 72px;  --lh-stat: 1;
  --fs-badge: 20px; --badge: 40px;
  --frame: 10px;
  --gap-panel: 10px;
  --container: 1330px;
  --pad-panel-y: 80px;
  --pad-panel-x: 24px;
  --gutter: 20px;
  --measure: 62ch;
  --measure-lede: 730px;
  --hero-title-max: 910px;
  --nav-top: 15px;
  --nav-side: 40px;
  --nav-h: 54px;
  --scroll-offset: 88px;
  --grid-gap-lede: 96px;
  --tile-min: clamp(520px, 76vh, 800px);
  --r-panel: 10px;
  --r-card: 10px;
  --r-nav: 20px;
  --r-pill: 999px;
  --r-small: 6px;
  --s-1: 4px;  --s-2: 8px;  --s-3: 10px; --s-4: 12px; --s-5: 16px; --s-6: 20px; --s-7: 24px;
  --s-8: 32px; --s-9: 40px; --s-10: 48px; --s-11: 64px; --s-12: 80px; --s-13: 96px; --s-14: 124px;
  --btn-pad: 8px 14px;
  --btn-pad-sm: 7px 12px;
  --shadow-nav: 0 1px 2px rgba(17,31,52,.05), 0 8px 24px rgba(17,31,52,.07);
  --ease-out: cubic-bezier(0.165, 0.84, 0.44, 1);
  --ease-draw: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 150ms;
  --dur-base: 200ms;
  --dur-acc: 300ms;
  --dur-menu: 300ms;
  --dur-card: 500ms;
  --dur-reveal: 900ms;
  --reveal-shift: 32px;
  --reveal-delay: 100ms;
  --reveal-stagger: 80ms;
  --z-hero: 0; --z-content: 1; --z-nav: 1000; --z-menu: 1001; --z-tip: 1500; --z-skip: 2000;
}

@media (max-width: 1024px) {
  :root {
    --fs-display: 56px;       --lh-display: 1.04;
    --fs-display-inner: 44px; --lh-display-inner: 1.06;
    --fs-h1: 36px;
    --fs-h2: 22px;
    --fs-lede: 17px;
    --fs-ui: 15px;
    --fs-stat: 56px;
    --pad-panel-y: 64px;
    --pad-panel-x: 20px;
    --gutter: 10px;
    --nav-side: 24px;
    --grid-gap-lede: 72px;
    --btn-pad: 9px 14px;
  }
}

@media (max-width: 767px) {
  :root {
    --fs-display: 44px;       --lh-display: 1.05;
    --fs-display-inner: 36px; --lh-display-inner: 1.08;
    --fs-h1: 30px;            --lh-h1: 1.13;
    --fs-h2: 20px;
    --fs-h3: 16px;            --lh-h3: 1.35;
    --fs-lede: 16px;
    --fs-stat: 48px;
    --fs-badge: 16px; --badge: 28px;
    --pad-panel-y: 40px;
    --pad-panel-x: 16px;
    --nav-side: 20px;
    --scroll-offset: 96px;
    --grid-gap-lede: 48px;
  }
}

@media (max-width: 400px) {
  :root {
    --fs-display: 40px;
    --fs-display-inner: 34px;
    --fs-h1: 28px; --lh-h1: 1.15;
    --fs-stat: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root { --dur-acc: 0.01ms; --dur-menu: 0.01ms; --dur-reveal: 0.01ms; --reveal-shift: 0px; }
}
*, *::before, *::after { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-padding-top: var(--scroll-offset);
  interpolate-size: allow-keywords;
}
@media (prefers-reduced-motion: no-preference) {
  html.vs-smooth { scroll-behavior: smooth; }
}

body {
  margin: 0;
  min-height: 100vh;
  background: var(--c-bg);
  color: var(--c-text);
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  font-weight: 400;
  font-optical-sizing: auto;
  font-kerning: normal;
  font-variant-ligatures: common-ligatures;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 400; font-size: inherit; line-height: inherit; }
:where(p, ul, ol, dl, figure, blockquote) { margin: 0; }
:where(p, ul, ol) + :where(p, ul, ol) { margin-top: .9em; }
:where(ul, ol) { padding-left: 20px; }
img, svg, video, canvas { max-width: 100%; }
img { display: block; height: auto; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; }
table { border-collapse: collapse; }
[hidden] { display: none !important; }
template { display: none !important; }
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
summary::marker { content: ""; }

a { color: var(--c-link); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
a:hover { text-decoration-thickness: 2px; }

::selection { background: var(--vs-mist-2); color: var(--vs-navy); }

.vs-nowrap { white-space: nowrap; }

.vs-sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
  white-space: nowrap; border: 0;
}
main { position: relative; display: block; }
main > :not(.vs-hero) { position: relative; z-index: var(--z-content); }
main:has(> .vs-hero:not(.vs-hero--static):not(.vs-hero--compact))::after {
  content: "";
  position: absolute;
  top: 100vh; top: 100svh;
  left: 0; right: 0; bottom: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(253,252,250,0) 0%, rgba(253,252,250,0) 5%, var(--c-bg) 13%);
}
main > :last-child { margin-bottom: 0; }
.vs-title {
  font-size: var(--fs-h1);
  line-height: var(--lh-h1);
  letter-spacing: var(--ls-h1);
  font-weight: 400;
  text-wrap: balance;
  color: var(--c-text);
}
.vs-title > span { display: block; }
.vs-title__sub { color: var(--c-text-muted); }

.vs-eyebrow {
  display: block;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--c-text-muted);
}

.vs-lede {
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--c-text-muted);
  text-wrap: pretty;
  max-width: var(--measure);
}
.vs-lede p { text-wrap: pretty; }

.vs-note {
  font-size: var(--fs-legal);
  line-height: var(--lh-legal);
  letter-spacing: .005em;
  color: var(--c-text-muted);
  max-width: 70ch;
  text-wrap: pretty;
}
:where(*) + :where(.vs-note) { margin-top: 16px; }
.vs-note--center { text-align: center; margin-inline: auto; }
.vs-note a { color: inherit; }
.vs-note a:hover { color: var(--c-link); }

.vs-text-link {
  color: var(--c-link);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
  transition: color var(--dur-fast) ease;
}
.vs-text-link:hover { color: var(--vs-navy); text-decoration-thickness: 2px; }

.vs-container { width: 100%; max-width: var(--container); margin-inline: auto; }

.vs-sec-head > .vs-eyebrow { margin-bottom: 16px; }
.vs-sec-head > .vs-title + .vs-lede { margin-top: 24px; }
.vs-sec-head--center { text-align: center; max-width: var(--measure-lede); margin-inline: auto; }
.vs-sec-head--center > .vs-title + .vs-lede { margin-top: 34px; }
.vs-sec-head--center .vs-lede { margin-inline: auto; max-width: var(--measure-lede); }
@media (max-width: 767px) {
  .vs-lede.is-long,
  .vs-sec-head--center .vs-lede.is-long { text-align: left; }
}
@media (min-width: 320px) {
  .vs-lede--balance:not(.is-long) { text-wrap: balance; }
}

.vs-btn-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.vs-tag-row { display: flex; flex-wrap: wrap; gap: 8px; }
[data-surface="dark"] { color: var(--c-on-dark); }
[data-surface="dark"] .vs-eyebrow,
[data-surface="dark"] .vs-note,
[data-surface="dark"] .vs-lede,
[data-surface="dark"] .vs-title__sub { color: var(--c-on-dark-muted); }
[data-surface="dark"] .vs-title { color: var(--c-on-dark); }
[data-surface="dark"] a:not(.vs-btn) { color: var(--c-link-on-dark); }
[data-surface="dark"] a:not(.vs-btn):hover { color: var(--vs-amber); }
[data-surface="dark"] .vs-text-link { color: #fff; }
[data-surface="dark"] .vs-text-link:hover { color: var(--vs-amber); }
[data-surface="light"] { color: var(--c-text); }
[data-surface="light"] .vs-eyebrow,
[data-surface="light"] .vs-note,
[data-surface="light"] .vs-lede,
[data-surface="light"] .vs-title__sub { color: var(--c-text-muted); }
[data-surface="light"] .vs-title { color: var(--c-text); }
:focus-visible { outline: 2px solid var(--c-focus); outline-offset: 3px; }
:focus:not(:focus-visible) { outline: none; }
[data-surface="dark"] :focus-visible,
[data-surface="dark"]:focus-visible,
.vs-acc__item[open] :focus-visible { outline-color: var(--c-focus-on-dark); }
[data-surface="light"] :focus-visible { outline-color: var(--c-focus); }
summary:focus-visible { outline-offset: -4px; }
main[tabindex="-1"]:focus { outline: none; }

.vs-skip {
  position: fixed;
  top: 12px; left: 12px;
  z-index: var(--z-skip);
  padding: 10px 16px;
  border-radius: var(--r-pill);
  background: var(--vs-navy);
  color: #fff;
  font-size: var(--fs-ui);
  line-height: var(--lh-ui);
  font-weight: 500;
  text-decoration: none;
  clip-path: inset(50%);
  width: 1px; height: 1px; overflow: hidden; white-space: nowrap;
}
.vs-skip:focus, .vs-skip:focus-visible {
  clip-path: none; width: auto; height: auto; overflow: visible;
  outline: 2px solid var(--vs-amber); outline-offset: 2px;
}
.vs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 34px;
  padding: var(--btn-pad);
  border: 1px solid transparent;
  border-radius: var(--r-pill);
  background: transparent;
  color: var(--c-text);
  font-family: var(--font-sans);
  font-size: var(--fs-ui);
  line-height: var(--lh-ui);
  font-weight: 500;
  letter-spacing: var(--ls-ui);
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background-color var(--dur-base) ease, color var(--dur-base) ease, border-color var(--dur-base) ease;
}
.vs-btn:hover { text-decoration: none; }
.vs-btn:active { transform: translateY(1px); }
.vs-btn:focus-visible { outline-offset: 2px; }
.vs-btn[aria-disabled="true"], .vs-btn:disabled { opacity: .4; pointer-events: none; }

.vs-btn--accent { background: var(--c-accent); color: var(--c-on-accent); }
.vs-btn--accent:hover, .vs-btn--accent:focus-visible { background: var(--c-accent-hover); color: var(--c-on-accent-hover); }

.vs-btn--solid { background: #fff; color: var(--vs-navy); }
.vs-btn--solid:hover, .vs-btn--solid:focus-visible { background: var(--vs-amber); color: var(--vs-navy); }

.vs-btn--outline-light { border-color: rgba(255,255,255,.5); color: #fff; }
.vs-btn--outline-light:hover, .vs-btn--outline-light:focus-visible { background: rgba(255,255,255,.14); color: #fff; }

.vs-btn--outline { border-color: var(--vs-navy); color: var(--vs-navy); }
.vs-btn--outline:hover, .vs-btn--outline:focus-visible { background: var(--vs-navy); color: #fff; }

.vs-btn--quiet { border-color: var(--c-line-control); color: var(--c-text); padding: var(--btn-pad-sm); min-height: 32px; }
.vs-btn--quiet:hover, .vs-btn--quiet:focus-visible { background: #fff; border-color: var(--vs-navy); }
[data-surface="dark"] .vs-btn--quiet { border-color: var(--c-line-control-on-dark); color: #fff; }
[data-surface="dark"] .vs-btn--quiet:hover,
[data-surface="dark"] .vs-btn--quiet:focus-visible { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.6); }

.vs-btn--quiet-light { background: #fff; color: var(--vs-navy); padding: var(--btn-pad-sm); min-height: 32px; }
.vs-btn--quiet-light:hover, .vs-btn--quiet-light:focus-visible { background: var(--vs-amber); }

.vs-btn--block { display: flex; width: 100%; }
.vs-btn__ext { font-size: .9em; line-height: 1; }
.vs-arrow {
  display: inline-block;
  width: .75em;
  height: .5em;
  vertical-align: .12em;
  overflow: visible;
  flex: none;
}
.vs-arrow path { stroke-width: 1.4; }
.vs-arrow--ne { width: .6em; height: .6em; vertical-align: 0; }
.vs-copy { display: inline-flex; align-items: center; gap: 10px; vertical-align: middle; }
.vs-copy__btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 5px 11px;
  border: 1px solid var(--c-line-strong);
  border-radius: var(--r-pill);
  background: transparent;
  color: var(--c-text);
  font-size: 13px;
  line-height: 16px;
  font-weight: 500;
  letter-spacing: .01em;
  white-space: nowrap;
  -webkit-tap-highlight-color: transparent;
  transition: background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease;
}
.vs-copy__btn:hover { background: #fff; border-color: var(--vs-navy); }
.vs-copy__btn:active { transform: translateY(1px); }
.vs-copy__btn:focus-visible { outline-offset: 2px; }
.vs-copy__icon { display: block; flex: none; width: 12px; height: 12px; }
.vs-copy__status { font-size: 13px; line-height: 16px; font-weight: 500; color: var(--c-text-muted); }
[data-surface="dark"] .vs-copy__btn { border-color: rgba(255,255,255,.32); color: #fff; }
[data-surface="dark"] .vs-copy__btn:hover { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.6); }
[data-surface="dark"] .vs-copy__status { color: var(--vs-cloud); }
@media (max-width: 767px) { .vs-copy__btn { min-height: 32px; padding-block: 7px; } }
p.vs-note.vs-mail-note { margin-top: 12px; font-size: var(--fs-legal); line-height: var(--lh-legal); max-width: 60ch; }
.vs-mail-note__address { font-weight: 600; color: var(--c-text); }
[data-surface="dark"] .vs-mail-note__address { color: #fff; }

@media (max-width: 1024px) { .vs-btn { min-height: 36px; } .vs-btn--quiet, .vs-btn--quiet-light { min-height: 34px; } }
@media (max-width: 767px) { .vs-btn-row .vs-btn { min-height: 40px; } }
.vs-tag {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  gap: 6px;
  padding: 6px 12px;
  border-radius: var(--r-pill);
  border: 1px solid transparent;
  background: var(--c-tag);
  color: var(--c-on-tag);
  font-size: 13px;
  line-height: 16px;
  font-weight: 500;
  letter-spacing: .01em;
  white-space: nowrap;
}
.vs-tag--hypothetical {
  background: transparent;
  border-color: currentColor;
  color: var(--vs-slate);
  padding: 5px 10px;
  font-size: 12px;
  line-height: 14px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
[data-surface="dark"] .vs-tag--hypothetical { color: var(--vs-cloud); border-color: currentColor; }
[data-surface="light"] .vs-tag--hypothetical { color: var(--vs-slate); }
.vs-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.vs-chip,
.vs-tag--outline {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  padding: 5px 10px;
  border: 0;
  border-radius: 4px;
  background: rgba(23, 37, 59, .07);
  color: var(--c-text-muted);
  font-size: 13px;
  line-height: 16px;
  font-weight: 500;
  letter-spacing: .01em;
  white-space: normal;
}
[data-surface="dark"] .vs-chip,
[data-surface="dark"] .vs-tag--outline {
  background: rgba(255, 255, 255, .10);
  color: var(--vs-cloud);
}
.vs-badge {
  position: relative;
  z-index: 1;
  flex: none;
  display: inline-grid;
  place-items: center;
  width: var(--badge);
  height: var(--badge);
  border-radius: 50%;
  background: var(--vs-navy);
  color: #fff;
  font-family: var(--font-sans);
  font-size: var(--fs-badge);
  line-height: 1;
  font-weight: 500;
  font-style: normal;
  user-select: none;
  transition: background-color var(--dur-card) ease, color var(--dur-card) ease;
}
.vs-badge--delta { padding-top: 2px; }
.vs-badge--num {
  font-family: var(--font-serif);
  font-weight: 400;
  font-synthesis: none;
  font-size: calc(var(--fs-badge) - 2px);
  letter-spacing: .02em;
  font-variant-numeric: lining-nums;
  padding-top: 1px;
}
.vs-badge--sm { --badge: 28px; font-size: 16px; }
.vs-badge--sm.vs-badge--num { font-size: 13px; }
.vs-badge--grid { --badge: 40px; }
.vs-badge--grid > svg { display: block; width: 50%; height: 50%; }
.vs-badge--label {
  width: auto;
  height: 28px;
  padding: 0 12px;
  border-radius: var(--r-pill);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}
.js .vs-badge[data-tip] { cursor: help; }
.vs-glyph {
  --g: 14px;
  position: relative;
  display: inline-block;
  flex: none;
  width: var(--g);
  height: var(--g);
  vertical-align: -2px;
  border-radius: 2px;
  background: var(--vs-navy);
  color: #fff;
}
.vs-glyph::before, .vs-glyph::after {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  background: currentColor;
  transform: translate(-50%, -50%);
}
.vs-glyph::before { width: 58%; height: max(1.5px, calc(var(--g) * .14)); }
.vs-glyph--plus::after { width: max(1.5px, calc(var(--g) * .14)); height: 58%; }
.vs-glyph--minus::after { display: none; }
.vs-glyph--outline { background: transparent; box-shadow: inset 0 0 0 1px var(--vs-navy); color: var(--vs-navy); }
.vs-glyph--long { background: rgba(36,75,165,.12); box-shadow: inset 0 0 0 1px var(--c-long); color: var(--c-long); }
.vs-glyph--short { background: rgba(154,107,31,.12); box-shadow: inset 0 0 0 1px var(--c-short); color: var(--c-short); }
.vs-glyph--lg { --g: 28px; border-radius: 4px; }
.vs-term {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-color: rgba(23,37,59,.45);
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
  border-radius: 2px;
  white-space: nowrap;
}
.js .vs-term[tabindex] { cursor: help; }
.vs-term:hover, .vs-term.is-open { text-decoration-color: currentColor; }
[data-surface="dark"] .vs-term,
.vs-acc__item[open] .vs-term { text-decoration-color: rgba(255,255,255,.4); }
[data-surface="dark"] .vs-term:hover,
.vs-acc__item[open] .vs-term:hover { text-decoration-color: #fff; }
.vs-tips { position: static; }
.vs-tip {
  position: fixed;
  z-index: var(--z-tip);
  top: 0; left: 0;
  max-width: min(280px, calc(100vw - 24px));
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid var(--c-line);
  background: #fff;
  color: var(--vs-navy);
  box-shadow: var(--shadow-nav);
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
  white-space: normal;
  pointer-events: auto;
  opacity: 0;
  transform: translateY(2px);
  transition: opacity 120ms ease, transform 120ms ease;
}
.vs-tip.is-visible { opacity: 1; transform: none; }
.vs-tip em { font-style: italic; }
.vs-toggle {
  position: relative;
  flex: none;
  display: block;
  width: 28px;
  height: 28px;
  color: var(--vs-navy);
}
.vs-toggle::before, .vs-toggle::after {
  content: "";
  position: absolute;
  top: 0; right: 0;
  width: 28px; height: 28px;
  transition: opacity 120ms linear, border-color var(--dur-fast) ease, color var(--dur-fast) ease;
}
.vs-toggle::before { border: 1px solid var(--c-line-strong); border-radius: 50%; }
.vs-toggle::after {
  background:
    linear-gradient(currentColor, currentColor) center / 10px 1.25px no-repeat,
    linear-gradient(currentColor, currentColor) center / 1.25px 10px no-repeat;
}
summary:hover .vs-toggle { color: var(--vs-cobalt); }
summary:hover .vs-toggle::before { border-color: var(--vs-cobalt); }
details[open] > summary .vs-toggle { width: min(364px, var(--conv-max, 60%)); }
details[open] > summary .vs-toggle::before,
details[open] > summary .vs-toggle::after { opacity: 0; }

.vs-conv {
  position: absolute;
  right: 0; top: 50%;
  height: 28px;
  transform: translateY(-50%);
  overflow: visible;
  fill: #fff;
  pointer-events: none;
}
.vs-conv--full { width: 364px; max-width: 100%; }
.vs-conv--mini { width: 90px; display: none; }
.vs-conv__m {
  opacity: 0;
  transform: translateX(var(--dx, 0px));
  transition: opacity 120ms linear, transform 0s linear 120ms;
}
details[open] > summary .vs-conv__m {
  opacity: var(--o, 1);
  transform: none;
  transition: opacity 260ms var(--ease-out) var(--d, 0ms), transform 260ms var(--ease-out) var(--d, 0ms);
}
html:not(.js) details[open] > summary .vs-toggle {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 364 28' fill='%23fff'%3E%3Cg fill-opacity='0.45'%3E%3Crect x='2' y='13.28' width='6' height='1.44'/%3E%3Crect x='4.28' y='11' width='1.44' height='6'/%3E%3C/g%3E%3Cg fill-opacity='0.56'%3E%3Crect x='30.7' y='13.09' width='7.6' height='1.82'/%3E%3Crect x='33.59' y='10.2' width='1.82' height='7.6'/%3E%3C/g%3E%3Cg fill-opacity='0.67'%3E%3Crect x='59.4' y='12.9' width='9.2' height='2.21'/%3E%3Crect x='62.9' y='9.4' width='2.21' height='9.2'/%3E%3C/g%3E%3Cg fill-opacity='0.78'%3E%3Crect x='88.1' y='12.7' width='10.8' height='2.59'/%3E%3Crect x='92.2' y='8.6' width='2.59' height='10.8'/%3E%3C/g%3E%3Cg fill-opacity='0.89'%3E%3Crect x='116.8' y='12.51' width='12.4' height='2.98'/%3E%3Crect x='121.51' y='7.8' width='2.98' height='12.4'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='145.5' y='12.32' width='14' height='3.36'/%3E%3Crect x='150.82' y='7' width='3.36' height='14'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='181.5' y='7' width='1' height='14'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='204.5' y='12.32' width='14' height='3.36'/%3E%3C/g%3E%3Cg fill-opacity='0.89'%3E%3Crect x='234.8' y='12.51' width='12.4' height='2.98'/%3E%3C/g%3E%3Cg fill-opacity='0.78'%3E%3Crect x='265.1' y='12.7' width='10.8' height='2.59'/%3E%3C/g%3E%3Cg fill-opacity='0.67'%3E%3Crect x='295.4' y='12.9' width='9.2' height='2.21'/%3E%3C/g%3E%3Cg fill-opacity='0.56'%3E%3Crect x='325.7' y='13.09' width='7.6' height='1.82'/%3E%3C/g%3E%3Cg fill-opacity='0.45'%3E%3Crect x='356' y='13.28' width='6' height='1.44'/%3E%3C/g%3E%3C/svg%3E") right center / contain no-repeat;
}
html:not(.js) .vs-card[open] > summary .vs-toggle {
  width: 90px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 28' fill='%23fff'%3E%3Cg fill-opacity='0.55'%3E%3Crect x='5' y='13.04' width='8' height='1.92'/%3E%3Crect x='8.04' y='10' width='1.92' height='8'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='21' y='12.56' width='12' height='2.88'/%3E%3Crect x='25.56' y='8' width='2.88' height='12'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='44.5' y='7' width='1' height='14'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='57' y='12.56' width='12' height='2.88'/%3E%3C/g%3E%3Cg fill-opacity='0.55'%3E%3Crect x='77' y='13.04' width='8' height='1.92'/%3E%3C/g%3E%3C/svg%3E") right center / contain no-repeat;
}
.vs-card .vs-conv--full { display: none; }
.vs-card .vs-conv--mini { display: block; }
.vs-card[open] > summary .vs-toggle { width: 90px; }
@media (max-width: 767px) {
  .vs-conv--full { display: none; }
  .vs-conv--mini { display: block; }
  details[open] > summary .vs-toggle { width: 90px; }
}
.vs-panel, .vs-values, .vs-carousel, .vs-explore,
.vs-split, .vs-pair, .vs-signature, .vs-cta, .vs-inner-hero, .vs-doc {
  margin: var(--frame) var(--frame) 0;
  border-radius: var(--r-panel);
}
.vs-panel, .vs-values, .vs-carousel, .vs-explore {
  background: var(--c-panel);
  padding: var(--pad-panel-y) var(--pad-panel-x);
}
.vs-split__visual, .vs-pair__visual, .vs-explore__feature, .vs-values__wide {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: var(--r-panel);
}
.vs-pair__visual { background: var(--c-card); color: var(--c-text); }
.vs-tile--navy,
.vs-split__visual, .vs-explore__feature, .vs-values__wide { color: #fff; }
.vs-split__visual, .vs-explore__feature, .vs-values__wide { background: var(--g-brand); }
.vs-tile--navy { background: var(--vs-navy-900); }
.vs-tile--white { background: var(--c-card); color: var(--c-text); }
.vs-pair__visual:not(.vs-tile--navy) {
  box-shadow: inset 0 0 0 1px rgba(23, 37, 59, .08);
}
.vs-split__visual--stone { background: var(--c-panel-deep); color: var(--c-text); }

.vs-tile--navy::before,
.vs-split__visual::before, .vs-explore__feature::before, .vs-values__wide::before,
.vs-hero::before, .vs-inner-hero::before, .vs-signature::before, .vs-cta::before, .vs-footer__card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(var(--grid-line, var(--grid-line-dark)) 1px, transparent 1px),
    linear-gradient(90deg, var(--grid-line, var(--grid-line-dark)) 1px, transparent 1px);
  background-size: var(--grid-size) var(--grid-size);
  -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,var(--grid-mask-start, .25)), #000 85%);
  mask-image: linear-gradient(90deg, rgba(0,0,0,var(--grid-mask-start, .25)), #000 85%);
}
.vs-split__visual--stone::before { --grid-line: var(--grid-line-light); }
.vs-tile--white::before { content: none; }
.vs-plus-field {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: var(--plus-tile);
  background-size: 24px 24px;
  opacity: .22;
  -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,.45), #000 90%);
  mask-image: linear-gradient(90deg, rgba(0,0,0,.45), #000 90%);
}
.vs-nav {
  position: fixed;
  top: var(--nav-top);
  left: 0; right: 0;
  z-index: var(--z-nav);
  padding: 0 var(--nav-side);
  pointer-events: none;
}
.vs-nav__inner { position: relative; pointer-events: auto; }
.vs-nav__pill {
  display: flex;
  align-items: center;
  min-height: var(--nav-h);
  padding: 10px 12px 10px 18px;
  background: #fff;
  border: 1px solid rgba(23,37,59,.06);
  border-radius: var(--r-nav);
  transition: box-shadow var(--dur-base) ease;
}
.vs-nav.is-scrolled .vs-nav__pill,
.vs-nav.is-open .vs-nav__pill { box-shadow: var(--shadow-nav); }

.vs-nav__brand { display: inline-flex; align-items: center; flex: none; padding: 4px 0; border-radius: 4px; }
.vs-nav__brand img { width: auto; height: 20px; }

.vs-nav__links {
  display: flex;
  align-items: center;
  gap: 32px;
  margin: 0 0 0 auto;
  padding: 0;
  list-style: none;
}
.vs-nav__links li { margin: 0; }
.vs-nav__links a,
.vs-nav__menu-links a {
  color: var(--vs-navy);
  font-size: var(--fs-ui);
  line-height: var(--lh-ui);
  font-weight: 500;
  letter-spacing: var(--ls-ui);
  text-decoration: none;
  transition: color var(--dur-fast) ease;
}
.vs-nav__links a { display: inline-block; padding: 9px 0; border-radius: 4px; }
.vs-nav__links a:hover,
.vs-nav__menu-links a:hover { color: var(--vs-cobalt); }
.vs-nav__links a[aria-current="page"],
.vs-nav__menu-links a[aria-current="page"] {
  color: var(--vs-cobalt);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
}
.vs-nav__cta { margin-left: 28px; }
.vs-nav__lang {
  position: relative;
  display: flex;
  align-items: center;
  flex: none;
  gap: 8px;
  margin-left: 24px;
  padding-left: 24px;
  font-size: 13px;
  line-height: 16px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.vs-nav__lang::before {
  content: "";
  position: absolute;
  left: 0; top: 50%;
  width: 1px; height: 16px;
  margin-top: -8px;
  background: var(--c-line-strong);
}
.vs-nav__lang-current,
.vs-nav__lang a { display: inline-block; padding: 9px 0; border-radius: 4px; }
.vs-nav__lang-current { color: var(--vs-navy); font-weight: 500; }
.vs-nav__lang-sep { color: rgba(23, 37, 59, .45); }
.vs-nav__lang a {
  color: var(--vs-slate);
  font-weight: 400;
  text-decoration: none;
  transition: color var(--dur-fast) ease;
}
.vs-nav__lang a:hover { color: var(--vs-cobalt); }
.vs-nav__lang .vs-sr-only { text-transform: none; letter-spacing: normal; }

.vs-nav__burger {
  display: none;
  position: relative;
  flex: none;
  width: 40px; height: 40px;
  margin-left: auto;
  margin-right: -4px;
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--vs-navy);
  -webkit-tap-highlight-color: transparent;
}
.vs-nav__burger span {
  position: absolute;
  left: 10px;
  width: 20px; height: 2px;
  border-radius: 3px;
  background: currentColor;
  transition: transform var(--dur-base) ease, opacity var(--dur-base) ease, top var(--dur-base) ease;
}
.vs-nav__burger span:nth-child(1) { top: 13px; }
.vs-nav__burger span:nth-child(2) { top: 19px; }
.vs-nav__burger span:nth-child(3) { top: 25px; }
.vs-nav__burger[aria-expanded="true"] span:nth-child(1) { top: 19px; transform: rotate(45deg); }
.vs-nav__burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.vs-nav__burger[aria-expanded="true"] span:nth-child(3) { top: 19px; transform: rotate(-45deg); }

.vs-nav__menu {
  position: absolute;
  top: 100%;
  left: 0; right: 0;
  z-index: var(--z-menu);
  margin-top: 8px;
  max-height: 0;
  overflow: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: #fff;
  border: 1px solid rgba(23,37,59,.06);
  border-radius: var(--r-nav);
  box-shadow: var(--shadow-nav);
  transition: max-height var(--dur-menu) ease;
}
.vs-nav.is-open .vs-nav__menu {
  max-height: min(calc(100vh - 100px), 520px);
  max-height: min(calc(100dvh - 100px), 520px);
}
.vs-nav__menu-links { list-style: none; margin: 0; padding: 0; }
.vs-nav__menu-links li { margin: 0; }
.vs-nav__menu-links li + li { border-top: 1px solid var(--c-line); }
.vs-nav__menu-links a { display: block; padding: 14px 18px; font-size: 16px; line-height: 20px; }
.vs-nav__menu-links a:focus-visible { outline-offset: -3px; border-radius: 12px; }
.vs-nav__menu-cta { padding: 12px; border-top: 1px solid var(--c-line); }
.vs-nav__menu-cta .vs-btn { min-height: 44px; font-size: 16px; }

@media (max-width: 1024px) {
  .vs-nav__links { gap: 24px; }
  .vs-nav__cta { margin-left: 24px; }
  .vs-nav__lang { margin-left: 18px; padding-left: 18px; }
}
@media (max-width: 899px) {
  .vs-nav__links, .vs-nav__cta { display: none; }
  .vs-nav__burger { display: block; margin-left: 18px; }
  .vs-nav__lang { margin-left: auto; padding-left: 0; gap: 14px; }
  .vs-nav__lang::before { display: none; }
  .vs-nav__lang a { position: relative; }
  .vs-nav__lang a::after { content: ""; position: absolute; inset: -5px -14px; }
  html:not(.js) .vs-nav__burger { display: none; }
  html:not(.js) .vs-nav__pill { flex-wrap: wrap; row-gap: 6px; }
  html:not(.js) .vs-nav__cta { display: inline-flex; margin-left: 14px; }
  html:not(.js) .vs-nav__links {
    display: flex; order: 3; width: 100%; gap: 14px;
    margin: 0; overflow-x: auto; scrollbar-width: none;
  }
  html:not(.js) .vs-nav__links a { padding: 6px 0; }
}
@media (min-width: 900px) and (max-width: 959px) {
  html[lang^="it"] .vs-nav__links,
  html[lang^="it"] .vs-nav__cta { display: none; }
  html[lang^="it"] .vs-nav__burger { display: block; margin-left: 18px; }
  html[lang^="it"] .vs-nav__lang { margin-left: auto; padding-left: 0; gap: 14px; }
  html[lang^="it"] .vs-nav__lang::before { display: none; }
  html[lang^="it"] .vs-nav__lang a { position: relative; }
  html[lang^="it"] .vs-nav__lang a::after { content: ""; position: absolute; inset: -5px -14px; }
  html[lang^="it"]:not(.js) .vs-nav__burger { display: none; }
  html[lang^="it"]:not(.js) .vs-nav__pill { flex-wrap: wrap; row-gap: 6px; }
  html[lang^="it"]:not(.js) .vs-nav__cta { display: inline-flex; margin-left: 14px; }
  html[lang^="it"]:not(.js) .vs-nav__links {
    display: flex; order: 3; width: 100%; gap: 14px;
    margin: 0; overflow-x: auto; scrollbar-width: none;
  }
  html[lang^="it"]:not(.js) .vs-nav__links a { padding: 6px 0; }
}
@media (max-width: 767px) {
  .vs-nav__pill { padding: 10px 10px 10px 14px; }
  .vs-nav__brand img { height: 18px; }
  .vs-nav__burger::after { content: ""; position: absolute; inset: -2px; }
}
.vs-hero {
  position: sticky;
  top: 0;
  z-index: var(--z-hero);
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: var(--g-hero-fallback);
  background-color: var(--vs-navy-900);
}
.vs-hero::before { z-index: -2; --grid-mask-start: .25; }
.vs-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: var(--g-scrim);
}
.vs-hero__bg { position: absolute; inset: 0; z-index: -3; }
.vs-hero__canvas {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  display: block;
  opacity: 0;
  transition: opacity 1s ease;
}
.vs-hero__canvas.is-ready { opacity: 1; }
.vs-hero__canvas.is-instant { transition: none; }
.vs-hero__pairs {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  overflow: visible;
  fill: #fff;
}
.vs-pairmark { opacity: 0; animation: vs-pair-life 7.4s linear infinite; }
.vs-hero.is-paused .vs-pairmark { animation-play-state: paused; }
.vs-hero__pairs.is-static .vs-pairmark { animation: none; opacity: .3; }
@keyframes vs-pair-life {
  0%      { opacity: 0;   animation-timing-function: cubic-bezier(.45,0,.55,1); }
  16.216% { opacity: .4;  animation-timing-function: linear; }
  83.784% { opacity: .4;  animation-timing-function: cubic-bezier(.45,0,.55,1); }
  100%    { opacity: 0; }
}

.vs-hero__content {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 24px 24px 50px;
}
.vs-hero__ctas { margin-bottom: 44px; }
.vs-hero__eyebrow {
  margin: 0 0 16px;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--vs-cloud);
}
.vs-hero__title {
  max-width: var(--hero-title-max);
  margin: 0;
  color: #fff;
  font-size: var(--fs-display);
  line-height: var(--lh-display);
  letter-spacing: var(--ls-display);
  font-weight: 400;
  text-wrap: balance;
}
.vs-hero__lede {
  max-width: 46ch;
  margin-top: 20px;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--vs-cloud);
}
.vs-hero__aside {
  position: absolute;
  top: 0; right: 0; bottom: 0;
  width: 50%;
  display: grid;
  place-items: center;
  z-index: -1;
}
.vs-hero--compact {
  position: relative;
  margin: var(--frame) var(--frame) 0;
  border-radius: var(--r-panel);
  min-height: 64vh;
  min-height: 64svh;
  padding: 140px 24px 48px;
}
.vs-hero--compact > .vs-hero__content { max-width: var(--container); width: 100%; padding: 0; }
.vs-hero--compact .vs-hero__title {
  font-size: var(--fs-display-inner);
  line-height: var(--lh-display-inner);
  letter-spacing: var(--ls-display-inner);
}
.vs-hero--compact .vs-hero__ctas { margin: 28px 0 0; }
.vs-hero--static .vs-hero__canvas, .vs-hero--static .vs-hero__pairs { display: none; }
@media (max-width: 1024px) {
  .vs-hero--compact { min-height: 52svh; padding-top: 120px; }
}

@media (max-width: 767px) and (orientation: portrait) {
  .vs-hero {
    background:
      radial-gradient(38% 20% at 56% 40%, rgba(242,185,138,.85) 0%, rgba(233,199,126,.30) 45%, rgba(63,114,200,0) 100%),
      radial-gradient(22% 11% at 72% 80%, rgba(242,185,138,.30) 0%, rgba(242,185,138,0) 100%),
      radial-gradient(90% 55% at 95% 30%, rgba(63,114,200,.85) 0%, rgba(63,114,200,0) 70%),
      radial-gradient(80% 70% at -10% 55%, #0E1A2C 0%, rgba(14,26,44,0) 70%),
      linear-gradient(100deg, #111F34 0%, #15253C 22%, #1A2F4D 42%, #23405F 60%, #2A4B72 78%, #244BA5 100%);
    background-color: var(--vs-navy-900);
  }
}
@media (max-width: 767px) {
  .vs-hero { min-height: 90vh; min-height: 90svh; }
  .vs-hero__content { padding: 24px 16px 32px; }
  .vs-hero__ctas { margin: 28px 0 0; }
  .vs-hero:not(.vs-hero--compact) .vs-hero__ctas { order: 1; }
  .vs-hero__aside { display: none; }
  .vs-hero--compact { min-height: 0; padding: 104px 16px 32px; }
  .vs-hero.vs-hero--compact > .vs-hero__aside {
    display: grid;
    justify-items: start;
    position: static;
    width: auto;
    margin-bottom: 24px;
  }
  .vs-hero--compact > .vs-hero__aside .vs-v19 { display: flex; justify-content: flex-start; }
  .vs-hero__eyebrow { color: #fff; }
}
.vs-inner-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: 64vh;
  min-height: 64svh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 140px 24px 48px;
  color: #fff;
  background: var(--g-inner-hero);
  background-color: var(--vs-navy-900);
}
.vs-inner-hero__content { position: relative; max-width: var(--container); width: 100%; }
.vs-inner-hero .vs-eyebrow { margin-bottom: 16px; }
.vs-inner-hero__title {
  max-width: 18ch;
  color: #fff;
  font-size: var(--fs-display-inner);
  line-height: var(--lh-display-inner);
  letter-spacing: var(--ls-display-inner);
  text-wrap: balance;
}
.vs-inner-hero__lede {
  max-width: 46ch;
  margin-top: 20px;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--vs-cloud);
  text-wrap: pretty;
}
.vs-inner-hero .vs-btn-row { margin-top: 28px; }
@media (max-width: 1024px) {
  .vs-inner-hero { min-height: 52svh; padding-top: 120px; }
}
@media (max-width: 767px) {
  .vs-inner-hero { min-height: 0; padding: 112px 16px 32px; }
}
.vs-values__label {
  margin-top: var(--grid-gap-lede);
  text-align: center;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--c-text-muted);
  text-wrap: balance;
}
.vs-values__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gutter);
  margin-top: var(--grid-gap-lede);
  align-items: stretch;
}
.vs-values__label + .vs-values__grid { margin-top: 20px; }
.vs-values__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.vs-values__grid + .vs-note,
.vs-values__grid + .vs-values__foot { margin-top: 32px; }
.vs-values__foot { display: flex; justify-content: center; text-align: center; }
.vs-values .vs-sec-head + .vs-note { margin-top: 20px; }
.vs-providers {
  --providers-ink: #646D7F;
  --providers-gap: 56px;
  container-type: inline-size;
  margin-top: var(--s-11);
  padding-top: var(--s-10);
  border-top: 1px solid var(--c-line);
}
@supports (color: color-mix(in srgb, red, blue)) {
  .vs-providers { --providers-ink: color-mix(in srgb, var(--vs-slate) 85%, var(--vs-stone)); }
}
.vs-providers__title { margin: 0; text-align: center; text-wrap: balance; }
.vs-providers__list {
  list-style: none;
  margin: var(--s-8) 0 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--s-4) var(--providers-gap);
  color: var(--providers-ink);
}
.vs-providers__item { flex: none; margin: 0; }
.vs-providers__logo {
  display: block;
  width: var(--logo-w);
  height: var(--logo-h);
  max-width: none;
  overflow: visible;
  translate: 0 var(--logo-dy, 0px);
}
.vs-providers__item--databento { --logo-w: 147px; --logo-h: 25px; }
.vs-providers__item--sharadar  { --logo-w: 65px; --logo-h: 48px; }
.vs-providers__item--fred      { --logo-w: 101px; --logo-h: 20px; --fred-shift: 1.824px 1.983px; }
.vs-providers__item--eodhd     { --logo-w: 82px; --logo-h: 34px; --logo-dy: 1px; }
.vs-providers__item--ffiec     { --logo-w: 117px; --logo-h: 30px; --logo-dy: -1px; }

@media (max-width: 1279px) {
  .vs-providers { --providers-row1: 313px; }
  .vs-providers__list { flex-wrap: wrap; }
  .vs-providers__list::before,
  .vs-providers__list::after { content: ""; flex: 0 0 100%; height: 0; }
  .vs-providers__list::before { order: 1; }
  .vs-providers__list::after { display: none; }
  .vs-providers__item:nth-child(n+4) { order: 2; }
}
@media (max-width: 1024px) {
  .vs-providers { --providers-gap: 40px; --providers-row1: 294px; margin-top: var(--s-10); padding-top: var(--s-9); }
  .vs-providers__item--databento { --logo-w: 141px; --logo-h: 24px; --logo-dy: -1px; }
  .vs-providers__item--sharadar  { --logo-w: 62px; --logo-h: 46px; }
  .vs-providers__item--fred      { --logo-w: 91px; --logo-h: 18px; --fred-shift: 2.091px 2.201px; }
  .vs-providers__item--eodhd     { --logo-w: 75px; --logo-h: 31px; --logo-dy: 1px; }
  .vs-providers__item--ffiec     { --logo-w: 109px; --logo-h: 28px; --logo-dy: -1px; }
}
@media (max-width: 767px) {
  .vs-providers { --providers-gap: 28px; --providers-row1: 268px; margin-top: var(--s-9); padding-top: var(--s-8); }
  .vs-providers__item--databento { --logo-w: 130px; --logo-h: 22px; --logo-dy: -1px; }
  .vs-providers__item--sharadar  { --logo-w: 57px; --logo-h: 42px; }
  .vs-providers__item--fred      { --logo-w: 81px; --logo-h: 16px; --fred-shift: 2.423px 2.472px; }
  .vs-providers__item--eodhd     { --logo-w: 70px; --logo-h: 29px; --logo-dy: 1px; }
  .vs-providers__item--ffiec     { --logo-w: 101px; --logo-h: 26px; --logo-dy: -1px; }
}
@media (max-width: 639px) {
  .vs-providers { --providers-gap: 18px; --providers-row1: 252px; }
  .vs-providers__list { margin-top: var(--s-7); row-gap: var(--s-3); }
  .vs-providers__item--databento { --logo-w: 118px; --logo-h: 20px; --logo-dy: -1px; }
  .vs-providers__item--sharadar  { --logo-w: 53px; --logo-h: 39px; }
  .vs-providers__item--fred      { --logo-w: 81px; --logo-h: 16px; --fred-shift: 2.423px 2.472px; }
  .vs-providers__item--eodhd     { --logo-w: 65px; --logo-h: 27px; --logo-dy: 0px; }
  .vs-providers__item--ffiec     { --logo-w: 97px; --logo-h: 25px; --logo-dy: -1px; }
}
@media (max-width: 359px) {
  .vs-providers { --providers-gap: 12px; --providers-row1: 232px; }
  .vs-providers__item--databento { --logo-w: 112px; --logo-h: 19px; --logo-dy: 0px; }
  .vs-providers__item--sharadar  { --logo-w: 49px; --logo-h: 36px; }
  .vs-providers__item--fred      { --logo-w: 71px; --logo-h: 14px; --fred-shift: -2.765px 2.821px; }
  .vs-providers__item--eodhd     { --logo-w: 61px; --logo-h: 25px; }
  .vs-providers__item--ffiec     { --logo-w: 90px; --logo-h: 23px; --logo-dy: -1px; }
}
@media (max-width: 339px) {
  .vs-providers { --providers-row1: 161px; }
  .vs-providers__list::after { display: block; order: 3; }
  .vs-providers__item:nth-child(n+3) { order: 2; }
  .vs-providers__item:nth-child(n+4) { order: 4; }
}
@media (max-resolution: 1dppx) {
  .vs-providers__fred { translate: var(--fred-shift); }
}
@supports (width: round(1.5px, 1px)) {
  .vs-providers__item { height: round(up, var(--logo-h), 2px); }
}
@supports (width: round(1.5px, 1px)) and (width: 1cqi) {
  .vs-providers { --providers-gap: round(down, clamp(24px, 14cqi - 128px, 56px), 1px); }
  @media (max-width: 1279px) {
    .vs-providers {
      --providers-gap: round(down, max(0px, min(7cqi, 56px, (100cqi - var(--providers-row1)) / 2 - 4px)), 1px);
    }
  }
}

.vs-values__wide {
  grid-column: 1 / -1;
  min-height: 320px;
  padding: 24px;
  display: flex;
  flex-direction: column;
}

.vs-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 28px;
  padding: 24px;
  border-radius: var(--r-card);
  background: var(--c-card);
  color: var(--c-text);
  transition: background-color var(--dur-card) ease;
}
.vs-card__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  cursor: default;
}
.vs-card__head::-webkit-details-marker { display: none; }
.vs-card__title {
  font-size: var(--fs-h2);
  line-height: var(--lh-h2);
  letter-spacing: var(--ls-h2);
  color: var(--c-text);
  text-wrap: balance;
  transition: color var(--dur-card) ease;
}
.vs-card__sub {
  display: block;
  margin-top: -12px;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--c-text-muted);
  text-wrap: balance;
  transition: color var(--dur-card) ease;
}
.vs-card .vs-toggle { display: none; }
.vs-card__sub-m { display: none; }
.vs-card__sub-m + p { margin-top: 0; }
.vs-card__body {
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  color: var(--c-text-muted);
  max-width: 34ch;
  transition: color var(--dur-card) ease;
}
.vs-card__body p { text-wrap: pretty; }
.vs-card__body .vs-card__lead { text-wrap: balance; }
.vs-card__lead {
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--c-text);
  text-wrap: balance;
  transition: color var(--dur-card) ease;
}
.vs-card__lead + .vs-card__text { margin-top: 12px; }
.vs-card__body .vs-note { margin-top: 12px; }
.vs-values__grid--3 .vs-card__body { max-width: 40ch; }
@media (min-width: 768px) {
  .js .vs-card__head { pointer-events: none; }
  .js .vs-card__head .vs-badge[data-tip] { pointer-events: auto; }
  .js .vs-card__head .vs-term { pointer-events: auto; }
}
@media (hover: hover) and (min-width: 768px) {
  .vs-card:hover { background: var(--vs-navy); }
  .vs-card:hover .vs-card__title,
  .vs-card:hover .vs-card__lead { color: #fff; }
  .vs-card:hover .vs-card__body,
  .vs-card:hover .vs-card__sub,
  .vs-card:hover .vs-note { color: var(--vs-cloud); }
  .vs-card:hover .vs-badge { background: var(--vs-amber); color: var(--vs-navy); }
  .vs-card:hover .vs-term { text-decoration-color: rgba(255,255,255,.4); }
  .vs-card:hover .vs-term:hover,
  .vs-card:hover .vs-term.is-open { text-decoration-color: #fff; }
  .vs-card:hover :focus-visible { outline-color: var(--c-focus-on-dark); }
}
@media (min-width: 768px) {
  .vs-values__grid > .vs-card > .vs-card__body { min-height: var(--card-body-min, 66px); }
  @supports (grid-template-rows: subgrid) {
    .vs-values__grid > .vs-card {
      display: grid;
      grid-row: span 2;
      grid-template-rows: subgrid;
      row-gap: normal;
      align-content: start;
    }
    .vs-values__grid > .vs-card > .vs-card__head { padding-bottom: 8px; }
    .vs-values__grid > .vs-card > .vs-card__head > .vs-card__title { margin-top: auto; }
  }
  .vs-values--bottom .vs-card { justify-content: space-between; }
  @supports (grid-template-rows: subgrid) {
    .vs-values--bottom .vs-values__grid > .vs-card > .vs-card__body { align-self: end; }
  }
}
@media (min-width: 1025px) {
  .vs-values__grid--connected { position: relative; }
  .vs-values__grid--connected::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: calc(24px + var(--badge) / 2);
    left: calc(24px + var(--badge) / 2);
    right: calc((100% - 3 * var(--gutter)) / 4 - 24px - var(--badge) / 2);
    height: 1px;
    background: var(--c-line-strong);
    pointer-events: none;
  }
  .vs-values__grid--connected.vs-values__grid--3::before {
    right: calc((100% - 2 * var(--gutter)) / 3 - 24px - var(--badge) / 2);
  }
}

@media (max-width: 1024px) {
  .vs-values__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vs-values__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .vs-values__grid:not(.vs-values__grid--3) .vs-card__body { max-width: 48ch; }
}
@media (max-width: 767px) {
  .vs-values__grid, .vs-values__grid--3 { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .vs-card {
    display: block;
    padding: 0;
    overflow: clip;
    gap: 0;
  }
  .vs-card__head {
    flex-direction: row;
    align-items: center;
    gap: 12px;
    padding: 20px;
    cursor: pointer;
  }
  .vs-card__head .vs-badge { --badge: 28px; font-size: 16px; }
  .vs-card__head .vs-badge--num { font-size: 13px; }
  .vs-card__head:has(.vs-badge--label) { flex-wrap: wrap; row-gap: 6px; }
  .vs-card__head .vs-badge--label {
    display: block;
    flex: 0 0 100%;
    height: auto;
    padding: 0;
    background: none;
    color: var(--c-text-muted);
    text-align: left;
    font-size: var(--fs-eyebrow);
    line-height: var(--lh-eyebrow);
  }
  .vs-card[open] .vs-card__head .vs-badge--label { background: none; color: var(--vs-cloud-2); }
  .vs-card__title { flex: 1 1 auto; min-width: 0; font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: 500; letter-spacing: 0; }
  .vs-card__head:has(.vs-badge--label) .vs-card__title { flex-basis: 0; }
  .vs-card__sub { display: none; }
  .vs-card__sub-m {
    display: block;
    margin-bottom: 10px;
    font-size: var(--fs-eyebrow);
    line-height: var(--lh-eyebrow);
    letter-spacing: var(--ls-eyebrow);
    font-weight: 500;
    text-transform: uppercase;
    color: var(--c-text-muted);
  }
  .vs-card__sub-m + p { margin-top: 0; }
  .vs-card .vs-toggle { display: block; }
  .vs-card__body { max-width: none; padding: 0 20px 20px; font-size: var(--fs-small); }
  .vs-card[open] { background: var(--g-accordion); color: #fff; }
  .vs-card[open] .vs-card__title { color: #fff; }
  .vs-card[open] .vs-badge { background: #fff; color: var(--vs-navy); }
  .vs-card[open] .vs-card__body,
  .vs-card[open] .vs-card__text,
  .vs-card[open] .vs-note { color: var(--vs-cloud-2); }
  .vs-card[open] .vs-card__lead { color: #fff; }
  .vs-card[open] .vs-card__sub-m { color: var(--vs-cloud-2); }
  .vs-card[open] :focus-visible { outline-color: var(--c-focus-on-dark); }
  .vs-card[open] .vs-term { text-decoration-color: rgba(255,255,255,.4); }
  .vs-card[open] .vs-term:hover,
  .vs-card[open] .vs-term.is-open { text-decoration-color: #fff; }
  .vs-values__wide { min-height: 260px; padding: 16px; }
}
@media (max-width: 400px) {
  .vs-card__head { gap: 8px; }
}
.vs-card::details-content,
.vs-acc__item::details-content {
  block-size: 0;
  overflow-y: clip;
  transition: block-size var(--dur-acc) var(--ease-out), content-visibility var(--dur-acc) var(--ease-out) allow-discrete;
}
.vs-card[open]::details-content,
.vs-acc__item[open]::details-content { block-size: auto; }
.vs-no-anim .vs-card::details-content,
.vs-no-anim .vs-acc__item::details-content { transition: none !important; }
.vs-split { display: flex; gap: var(--gap-panel); }
.vs-split > * { flex: 1 1 0; min-width: 0; border-radius: var(--r-panel); }

.vs-split__visual {
  min-height: var(--tile-min);
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.vs-split__art { position: absolute; inset: 0; z-index: 0; }
.vs-split__caption {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
  max-width: 520px;
}
.vs-split__title {
  max-width: 465px;
  font-size: var(--fs-h1);
  line-height: var(--lh-h1);
  letter-spacing: var(--ls-h1);
  color: inherit;
  text-wrap: balance;
}
.vs-split__caption .vs-split__title + .vs-split__sub { margin-top: -16px; }
.vs-split__sub { font-size: var(--fs-lede); line-height: var(--lh-lede); color: var(--vs-cloud); max-width: 40ch; }
.vs-split__visual--stone .vs-split__sub { color: var(--c-text-muted); }

.vs-split__content {
  min-height: var(--tile-min);
  padding: 40px 24px;
  background: var(--c-panel);
  display: flex;
  align-items: center;
  justify-content: center;
}
.vs-split__col { width: 100%; max-width: 700px; }
.vs-split__col > .vs-btn,
.vs-split__col > .vs-btn-row { margin-top: 32px; }
.vs-split__intro {
  margin-bottom: 24px;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--c-text);
  text-wrap: pretty;
}
.vs-split__intro--muted { color: var(--c-text-muted); }
.vs-split__label { margin: 32px 0 12px; }
.vs-split__col > .vs-note { margin-top: 24px; }

@media (max-width: 1024px) {
  .vs-split__content { padding: 40px 20px; }
}
@media (max-width: 767px) {
  .vs-split { flex-direction: column; }
  .vs-split > * { flex: 0 0 auto; }
  .vs-split__visual { min-height: max(55svh, 460px); padding: 10px 10px 16px; }
  .vs-split__caption { gap: 20px; }
  .vs-split__content { min-height: 0; padding: 20px 12px; }
}
.vs-acc { display: flex; flex-direction: column; gap: 15px; }
.vs-acc__item {
  border-radius: var(--r-card);
  background: var(--c-card);
  color: var(--c-text);
  overflow: clip;
}
.vs-acc__item[open] { background: var(--g-accordion); color: #fff; }
.vs-acc__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 28px;
  cursor: pointer;
  border-radius: var(--r-card);
  -webkit-tap-highlight-color: transparent;
}
.vs-acc__title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: var(--fs-h3);
  line-height: var(--lh-h3);
  font-weight: 500;
  letter-spacing: var(--ls-h3);
  color: inherit;
}
.vs-acc__body {
  padding: 0 28px 30px;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--vs-cloud-2);
}
.vs-acc__body > * { max-width: 58ch; }
.vs-acc__body p { text-wrap: pretty; }
.vs-acc__sub { color: #fff; font-weight: 500; }
.vs-acc__sub + p { margin-top: 6px; }
.vs-acc__body a { color: #fff; }
.vs-acc__body a:hover { color: var(--vs-amber); }
.vs-faq { max-width: 700px; margin-inline: auto; --conv-max: 40%; }
.vs-faq .vs-acc { gap: 12px; }
.vs-faq .vs-acc__head { padding: 20px 24px; }
.vs-faq .vs-acc__body { padding: 0 24px 24px; }
.vs-faq .vs-acc__title { font-weight: 500; }
.vs-faq__group {
  margin: 32px 0 14px;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--c-text-muted);
}
.vs-faq > .vs-faq__group:first-child { margin-top: 0; }
.vs-split .vs-acc { --conv-max: 40%; }
.vs-acc__title { text-wrap: balance; }
.vs-faq .vs-acc__title { text-wrap: pretty; }

@media (max-width: 1024px) {
  .vs-split .vs-conv--full { display: none; }
  .vs-split .vs-conv--mini { display: block; }
  .vs-split .vs-acc__head > .vs-toggle,
  .vs-split details[open] > summary .vs-toggle { width: 90px; }
  html:not(.js) .vs-split details[open] > summary .vs-toggle {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 28' fill='%23fff'%3E%3Cg fill-opacity='0.55'%3E%3Crect x='5' y='13.04' width='8' height='1.92'/%3E%3Crect x='8.04' y='10' width='1.92' height='8'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='21' y='12.56' width='12' height='2.88'/%3E%3Crect x='25.56' y='8' width='2.88' height='12'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='44.5' y='7' width='1' height='14'/%3E%3C/g%3E%3Cg fill-opacity='1'%3E%3Crect x='57' y='12.56' width='12' height='2.88'/%3E%3C/g%3E%3Cg fill-opacity='0.55'%3E%3Crect x='77' y='13.04' width='8' height='1.92'/%3E%3C/g%3E%3C/svg%3E") right center / contain no-repeat;
  }
}

@media (max-width: 767px) {
  .vs-acc__head { padding: 20px; gap: 12px; }
  .vs-acc__body { padding: 0 20px 22px; font-size: var(--fs-body); }
}
.vs-specs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 15px; }
.vs-specs__row {
  margin: 0;
  padding: 28px;
  border-radius: var(--r-card);
  background: var(--c-card);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.vs-specs__label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--c-text-muted);
}
.vs-specs__value {
  margin: 0;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--c-text);
  text-wrap: pretty;
}
.vs-specs__row--split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto auto;
  grid-auto-flow: column;
  column-gap: 24px;
  row-gap: 8px;
}
.vs-specs__row--inline { flex-direction: row; align-items: center; gap: 16px; padding: 20px 24px; }
.vs-specs__title { font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: 500; color: var(--c-text); }
@media (max-width: 767px) {
  .vs-specs__row { padding: 20px; }
  .vs-specs__row--split { grid-template-columns: minmax(0, 1fr); grid-auto-flow: row; }
  .vs-specs__row--split dd + dt { margin-top: 12px; }
}

.vs-ledger {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--gutter);
  margin-top: 64px;
}
.vs-ledger__heading {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  font-size: var(--fs-h2);
  line-height: var(--lh-h2);
  letter-spacing: var(--ls-h2);
}
.vs-ledger__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.vs-ledger__list > li { margin: 0; }
.vs-ledger__row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 24px;
  border-radius: var(--r-card);
  background: var(--c-card);
}
.vs-ledger__title { font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: 500; color: var(--c-text); }
.vs-ledger__text { margin-top: 4px; font-size: var(--fs-small); line-height: var(--lh-small); color: var(--c-text-muted); }
@media (max-width: 767px) {
  .vs-ledger { grid-template-columns: minmax(0, 1fr); gap: 40px; margin-top: 40px; }
  .vs-ledger__row { padding: 20px; }
}

.vs-kv { margin: 0; display: flex; flex-direction: column; gap: 14px; }
.vs-kv__row { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; align-items: baseline; }
.vs-kv dt { font-size: var(--fs-ui); line-height: 20px; font-weight: 500; color: var(--c-text-muted); }
.vs-kv dd { margin: 0; color: var(--c-text); overflow-wrap: break-word; min-width: 0; }
[data-surface="dark"] .vs-kv dt { color: var(--vs-cloud); }
[data-surface="dark"] .vs-kv dd { color: #fff; }
@media (max-width: 767px) { .vs-kv__row { grid-template-columns: 30% minmax(0, 1fr); } }
.vs-pair__body:has(> .vs-kv) { container: vs-kv / inline-size; }
@container vs-kv (max-width: 400px) {
  .vs-kv__row { grid-template-columns: minmax(0, 1fr); gap: 2px; }
}
.vs-pair { display: flex; gap: var(--gap-panel); }
.vs-pair > * { flex: 1 1 50%; min-width: 0; border-radius: var(--r-panel); }
.vs-pair--mirror { flex-direction: row-reverse; }
.vs-pair__text {
  min-height: 400px;
  padding: 40px 30px 40px 40px;
  background: var(--c-pastel);
  color: var(--c-text);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 40px;
}
.vs-pair__heading .vs-eyebrow { margin-bottom: 16px; }
.vs-pair__heading .vs-title { max-width: 16em; }
.vs-pair__body { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.vs-pair__lede, .vs-pair__body > p:not(.vs-note) {
  max-width: 545px;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--c-text-muted);
  text-wrap: pretty;
}
.vs-pair__body > p + p { margin-top: -8px; }
.vs-pair__body .vs-note { margin-top: 0; }
.vs-pair__visual {
  min-height: 400px;
  padding: 24px;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1024px) {
  .vs-pair__text { padding: 30px; }
}
@media (max-width: 767px) {
  .vs-pair, .vs-pair--mirror { flex-direction: column; }
  .vs-pair > * { flex: 0 0 auto; }
  .vs-pair__text { min-height: 0; padding: 30px 16px; gap: 30px; }
  .vs-pair__visual { min-height: 360px; padding: 16px; }
}
.vs-carousel__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.vs-carousel__head .vs-lede { max-width: 520px; }
.vs-carousel__arrows { display: flex; gap: 10px; flex: none; }
html:not(.js) .vs-carousel__arrows { display: none; }
.vs-carousel__arrow {
  width: 40px; height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--vs-navy);
  -webkit-tap-highlight-color: transparent;
}
.vs-carousel__arrow svg { display: block; width: 40px; height: 40px; overflow: visible; }
.vs-carousel__arrow circle { fill: transparent; stroke: currentColor; stroke-width: 1.25; transition: fill var(--dur-fast) ease; }
.vs-carousel__arrow path { fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; transition: stroke var(--dur-fast) ease; }
.vs-carousel__arrow:hover:not(:disabled) circle { fill: var(--vs-navy); }
.vs-carousel__arrow:hover:not(:disabled) path { stroke: #fff; }
.vs-carousel__arrow:disabled { opacity: .35; cursor: default; }
.vs-carousel__arrow:focus-visible { outline-offset: 2px; }
@media (max-width: 767px) {
  .vs-carousel__arrow { position: relative; }
  .vs-carousel__arrow::after { content: ""; position: absolute; inset: -2px; border-radius: 50%; }
}

.vs-carousel__track {
  display: flex;
  gap: 15px;
  margin: 34px -6px 0;
  padding: 6px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 6px;
  scrollbar-width: none;
  border-radius: 14px;
}
.vs-carousel__track::-webkit-scrollbar { display: none; }
.vs-carousel__track:focus-visible { outline-offset: 0; }
@media (prefers-reduced-motion: no-preference) { .vs-carousel__track { scroll-behavior: smooth; } }
.vs-carousel__track + .vs-note { margin-top: 24px; }
.vs-carousel { --peek: 64px; }
.vs-carousel__card {
  position: relative;
  flex: 0 0 calc((100% - 45px - var(--peek)) / 4);
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
  scroll-snap-align: start;
}
.vs-carousel__media {
  position: relative;
  height: 400px;
  overflow: hidden;
  border-radius: var(--r-card);
  background: var(--vs-mist);
  display: grid;
}
.vs-carousel__meta {
  min-height: 88px;
  padding: 0 4px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
.vs-carousel__text { min-width: 0; }
.vs-carousel__eyebrow {
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--c-text-muted);
}
.vs-carousel__title {
  margin-top: 6px;
  font-size: var(--fs-h3);
  line-height: var(--lh-h3);
  letter-spacing: var(--ls-h3);
  color: var(--c-text);
}
.vs-carousel__link { color: inherit; text-decoration: none; }
.vs-carousel__link::after { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: var(--r-card); }
.vs-carousel__link:focus-visible { outline: none; }
.vs-carousel__link:focus-visible::after { outline: 2px solid var(--c-focus); outline-offset: 3px; }
.vs-carousel__meta .vs-btn { flex: none; }
.vs-carousel__card:hover .vs-btn--accent,
.vs-carousel__card:focus-within .vs-btn--accent { background: var(--c-accent-hover); color: var(--c-on-accent-hover); }
.vs-carousel__card:hover .vs-btn--quiet,
.vs-carousel__card:focus-within .vs-btn--quiet { background: #fff; border-color: var(--vs-navy); }
.vs-carousel__card:hover .vs-carousel__title { color: var(--vs-cobalt); }

@media (max-width: 1023px) {
  .vs-carousel__card { flex-basis: calc((100% - 15px - var(--peek)) / 2); }
}
@media (max-width: 767px) {
  .vs-carousel__head { align-items: flex-end; }
  .vs-carousel__track { margin-top: 54px; }
  .vs-carousel__card { flex-basis: 86%; }
  .vs-carousel__media { height: 250px; }
}
@media (max-width: 560px) {
  .vs-carousel__head { flex-direction: column; align-items: stretch; }
  .vs-carousel__arrows { justify-content: flex-end; margin-top: 4px; }
  .vs-carousel__track { margin-top: 20px; }
}
.vs-signature {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: clamp(560px, 80vh, 820px);
  padding: 80px 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: var(--vs-navy-900);
  color: #fff;
}
.vs-signature::before { --grid-line: rgba(255,255,255,.06); --grid-mask-start: .2; -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,.2), #000 90%); mask-image: linear-gradient(90deg, rgba(0,0,0,.2), #000 90%); }
.vs-signature__stage { position: absolute; inset: 0; z-index: 0; }
.vs-signature__caption {
  position: relative;
  z-index: 2;
  max-width: 520px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.vs-signature__caption .vs-eyebrow { margin-bottom: 16px; }
.vs-signature__title {
  font-size: var(--fs-h1);
  line-height: var(--lh-h1);
  letter-spacing: var(--ls-h1);
  color: #fff;
  text-wrap: balance;
}
.vs-signature__line {
  margin-top: 20px;
  font-size: var(--fs-lede);
  line-height: var(--lh-lede);
  color: var(--vs-cloud);
  text-wrap: pretty;
}
.vs-signature__line + .vs-signature__line { margin-top: 12px; }
.vs-signature__caption .vs-btn { margin-top: 28px; }
.vs-signature__caption .vs-note { margin-top: 20px; }
.vs-signature.vs-signature--content { display: block; min-height: 0; }
@media (max-width: 1024px) {
  .vs-signature { min-height: max(60vh, 520px); padding: 48px 20px; }
}
@media (max-width: 767px) {
  .vs-signature { min-height: 520px; padding: 40px 16px; }
}
.vs-explore > .vs-container > .vs-title { margin-bottom: 44px; }
.vs-explore__grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  column-gap: 20px;
  align-items: start;
}
.vs-explore__feature {
  min-height: 455px;
  height: 100%;
  padding: 25px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.vs-explore__art { position: absolute; inset: 0; z-index: 0; padding: 25px; }
.vs-explore__foot {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
.vs-explore__label { font-size: 14px; line-height: 16px; font-weight: 500; color: var(--vs-cloud); }
.vs-explore__feature-title {
  margin-top: 6px;
  font-size: var(--fs-h2);
  line-height: var(--lh-h2);
  letter-spacing: var(--ls-h2);
  color: #fff;
}
.vs-explore__link { color: inherit; text-decoration: none; }
[data-surface="dark"] a.vs-explore__link { color: #fff; }
.vs-explore__link::after { content: ""; position: absolute; inset: 0; z-index: 3; border-radius: var(--r-card); }
.vs-explore__link:focus-visible { outline: none; }
.vs-explore__feature:has(.vs-explore__link:focus-visible),
.vs-explore__item:has(.vs-explore__link:focus-visible) { outline: 2px solid var(--c-focus); outline-offset: 4px; }
.vs-explore__feature:has(.vs-explore__link:focus-visible) { outline-color: var(--c-focus); }
.vs-explore__feature .vs-btn { flex: none; }
.vs-explore__feature:hover .vs-btn--quiet-light,
.vs-explore__feature:focus-within .vs-btn--quiet-light { background: var(--vs-amber); }

.vs-explore__side { min-width: 0; }
.vs-explore__list { display: flex; flex-direction: column; gap: 10px; }
.vs-explore__item {
  position: relative;
  display: flex;
  gap: 20px;
  border-radius: var(--r-card);
}
.vs-explore__thumb {
  position: relative;
  flex: 0 0 calc(50% - 15px);
  height: 140px;
  overflow: hidden;
  border-radius: var(--r-card);
  background: var(--vs-mist);
  display: grid;
}
.vs-explore__thumb--navy { background: var(--vs-navy-900); }
.vs-explore__body {
  flex: 1 1 auto;
  min-width: 0;
  padding: 10px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 10px;
}
.vs-explore__title {
  font-size: var(--fs-lede);
  line-height: 1.3;
  letter-spacing: var(--ls-h3);
  color: var(--c-text);
  text-wrap: balance;
}
.vs-explore__item:hover .vs-btn--quiet,
.vs-explore__item:focus-within .vs-btn--quiet { background: #fff; border-color: var(--vs-navy); }
.vs-explore__item:hover .vs-explore__title { color: var(--vs-cobalt); }
.vs-explore__grid + .vs-note { margin-top: 24px; }
.vs-explore__list + .vs-note { margin-top: 16px; }

@media (max-width: 1024px) {
  .vs-explore__grid { grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); column-gap: 10px; }
  .vs-explore__thumb { flex-basis: 42%; height: 120px; }
  .vs-explore__item { gap: 12px; }
}
@media (max-width: 767px) {
  .vs-explore > .vs-container > .vs-title { margin-bottom: 20px; }
  .vs-explore__grid { grid-template-columns: minmax(0, 1fr); row-gap: 10px; }
  .vs-explore__feature { min-height: 350px; padding: 20px; }
  .vs-explore__art { padding: 16px; }
  .vs-explore__foot { flex-direction: column; align-items: flex-start; }
  .vs-explore__thumb { flex-basis: 35%; height: 120px; }
  .vs-explore__body { padding: 0; }
}
.vs-cta {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: clamp(28px, 2.8vw, 40px) 24px;
  background: var(--c-pastel);
  color: var(--c-text);
}
.vs-cta::before { --grid-line: var(--grid-line-light); }
.vs-cta__inner {
  max-width: var(--container);
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(32px, 5vw, 72px);
  align-items: baseline;
}
.vs-cta__lead { position: relative; padding-left: 20px; }
.vs-cta__lead::before {
  content: "";
  position: absolute;
  left: 0; top: .35em; bottom: .35em;
  width: 3px;
  border-radius: 2px;
  background: var(--c-accent);
}
.vs-cta__title { font-size: var(--fs-h2); line-height: var(--lh-h2); letter-spacing: var(--ls-h2); color: var(--c-text); text-wrap: balance; }
.vs-cta__sub { margin-top: 8px; font-size: var(--fs-small); line-height: var(--lh-small); font-weight: 500; color: var(--c-text-muted); text-wrap: balance; }
.vs-cta__body > p { max-width: 56ch; font-size: var(--fs-body); line-height: var(--lh-body); color: var(--c-text-muted); text-wrap: pretty; }
.vs-cta__body .vs-btn-row { margin-top: 20px; gap: 12px; }
.vs-cta .vs-btn--outline-light { border-color: var(--vs-navy); color: var(--vs-navy); }
.vs-cta .vs-btn--outline-light:hover,
.vs-cta .vs-btn--outline-light:focus-visible { background: var(--vs-navy); color: #fff; }
@media (max-width: 767px) {
  .vs-cta { padding: 32px 16px; }
  .vs-cta__inner { grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
}
.vs-doc { background: var(--c-panel); padding: 140px 24px 96px; }
.vs-doc__layout {
  max-width: 1120px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 220px minmax(0, 68ch);
  justify-content: center;
  gap: 72px;
}
.vs-doc__index { position: sticky; top: 110px; align-self: start; padding-top: 0; }
.vs-doc__index-title { margin-bottom: 14px; }
.vs-doc__index ol, .vs-doc__index ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.vs-doc__index li { margin: 0; }
.vs-doc__index a {
  display: block;
  font-size: var(--fs-small);
  line-height: 1.35;
  color: var(--c-text-muted);
  text-decoration: none;
  border-radius: 4px;
  transition: color var(--dur-fast) ease;
}
.vs-doc__index a:hover { color: var(--vs-cobalt); }
.vs-doc__index a[aria-current="true"] { color: var(--c-text); font-weight: 500; }
.vs-doc__header .vs-eyebrow { margin-bottom: 16px; }
.vs-doc__title { font-size: var(--fs-display-inner); line-height: var(--lh-display-inner); letter-spacing: var(--ls-display-inner); color: var(--c-text); }
.vs-doc__lede { margin-top: 20px; font-size: var(--fs-lede); line-height: var(--lh-lede); color: var(--c-text-muted); }
.vs-doc__content { font-size: var(--fs-body); line-height: var(--lh-body); color: var(--c-text); }
.vs-doc__content h2 {
  margin: 48px 0 12px;
  font-size: 24px;
  line-height: 1.25;
  letter-spacing: var(--ls-h2);
}
.vs-doc__content h3 { margin: 28px 0 8px; font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: 500; }
.vs-doc__content :where(ul, ol) { padding-left: 20px; }
.vs-doc__content li + li { margin-top: 8px; }
.vs-doc__content section > :first-child { margin-top: 48px; }
.vs-doc__content a { color: var(--c-link); }
.vs-doc__toc-head { display: none; }
.vs-doc__toc::details-content { content-visibility: visible; block-size: auto; }
@media (max-width: 1024px) {
  .vs-doc { padding: 120px 20px 64px; }
  .vs-doc__layout { grid-template-columns: minmax(0, 68ch); gap: 32px; }
  .vs-doc__index { position: static; }
  .vs-doc__index-title { display: none; }
  html:not(.js) .vs-doc__index:not(:has(.vs-doc__toc)) { display: none; }
  .js .vs-doc__index:not(:has(.vs-doc__toc)) > :is(ol, ul) { display: none; }
  .vs-doc__toc { border-radius: var(--r-card); background: var(--c-card); }
  .vs-doc__toc::details-content { content-visibility: hidden; block-size: 0; overflow: clip; }
  .vs-doc__toc[open]::details-content { content-visibility: visible; block-size: auto; }
  .vs-doc__toc-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 56px;
    padding: 12px 16px 12px 20px;
    border-radius: var(--r-card);
    cursor: pointer;
    font-size: var(--fs-ui);
    line-height: var(--lh-ui);
    font-weight: 500;
    color: var(--c-text);
    -webkit-tap-highlight-color: transparent;
  }
  .vs-doc__toc-head:focus-visible { outline-offset: -4px; }
  .vs-doc__toc-icon {
    position: relative;
    flex: none;
    width: 28px;
    height: 28px;
    border: 1px solid var(--c-line-strong);
    border-radius: 50%;
    transition: border-color var(--dur-fast) ease;
  }
  .vs-doc__toc-icon::before, .vs-doc__toc-icon::after {
    content: "";
    position: absolute;
    left: 50%; top: 50%;
    width: 10px; height: 1.25px;
    background: currentColor;
    transform: translate(-50%, -50%);
  }
  .vs-doc__toc-icon::after { transform: translate(-50%, -50%) rotate(90deg); transition: opacity var(--dur-fast) ease; }
  .vs-doc__toc[open] .vs-doc__toc-icon::after { opacity: 0; }
  .vs-doc__toc :is(ol, ul) { gap: 0; margin: 0 20px; padding: 4px 0 12px; border-top: 1px solid var(--c-line); }
  .vs-doc__toc li + li { border-top: 1px solid var(--c-line); }
  .vs-doc__index .vs-doc__toc a { padding: 11px 0; font-size: var(--fs-small); line-height: 1.35; color: var(--c-text); }
}
@media (max-width: 1024px) and (hover: hover) {
  .vs-doc__toc-head:hover .vs-doc__toc-icon { border-color: var(--vs-cobalt); color: var(--vs-cobalt); }
}
@media (max-width: 767px) {
  .vs-doc { padding: 112px 16px 48px; }
  .vs-doc__layout { gap: 28px; }
}
.vs-footer { position: relative; z-index: var(--z-content); padding: var(--frame); background: var(--c-bg); }
.vs-footer__card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: 24px;
  border-radius: var(--r-panel);
  background: var(--g-footer);
  background-color: var(--vs-navy-900);
  color: #fff;
}
.vs-footer__card::before { --grid-line: rgba(255,255,255,.05); }
.vs-footer__top { display: flex; gap: 10px; }
.vs-footer__brand { flex: 0 0 30%; min-width: 0; padding: 10px; display: flex; flex-direction: column; align-items: flex-start; }
.vs-footer__logo { display: inline-block; margin-top: 4px; border-radius: 4px; }
.vs-footer__logo img { width: auto; height: 22px; }
.vs-footer__descriptor { margin-top: 48px; font-size: var(--fs-small); line-height: var(--lh-small); color: var(--vs-cloud); }
.vs-footer__enquiries { margin-top: 28px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.vs-footer__label { font-size: 14px; line-height: 14px; font-weight: 500; color: var(--vs-cloud); }
[data-surface="dark"] a.vs-footer__email {
  color: #fff;
  font-size: 14px;
  line-height: 18px;
  font-weight: 500;
  text-decoration: none;
  overflow-wrap: break-word;
  border-radius: 3px;
  transition: color var(--dur-fast) ease;
}
[data-surface="dark"] a.vs-footer__email:hover { color: var(--vs-amber); }
.vs-footer__mail { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin: 0; }
.vs-footer__enquiries .vs-note { margin-top: 4px; max-width: 34ch; }
.vs-footer__main { flex: 1 1 auto; min-width: 0; padding: 10px; }
.vs-footer__headline { max-width: 18ch; font-size: var(--fs-h1); line-height: var(--lh-h1); letter-spacing: var(--ls-h1); color: #fff; }
.vs-footer__links {
  margin: 36px 10px 0;
  padding: 28px 0 32px;
  border-top: 1px solid var(--c-line-on-dark);
  border-bottom: 1px solid var(--c-line-on-dark);
  display: flex;
  gap: 40px;
}
.vs-footer__nav {
  flex: 1 1 auto;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}
.vs-footer__col { min-width: 0; }
.vs-footer__col-title {
  margin-bottom: 16px;
  font-size: var(--fs-eyebrow);
  line-height: var(--lh-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--vs-cloud);
}
.vs-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.vs-footer__col li { display: flex; margin: 0; }
[data-surface="dark"] .vs-footer__col a {
  display: inline-block;
  padding: 2px 0;
  color: #fff;
  font-size: 14px;
  line-height: 18px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 3px;
  transition: color var(--dur-fast) ease;
}
[data-surface="dark"] .vs-footer__col a:hover { color: var(--vs-amber); }
.vs-footer__contact { flex: 0 1 300px; min-width: 0; padding-top: 32px; }
.vs-footer__contact:not(:has(.vs-kv__row)) { display: none; }
.vs-footer__contact .vs-kv { gap: 16px; }
.vs-footer__contact .vs-kv dt { font-size: 14px; line-height: 20px; }
.vs-footer__contact .vs-kv dd { font-size: 14px; line-height: 20px; }
.vs-footer__contact .vs-kv a { text-decoration: underline; }
.vs-footer__legal { margin-top: 28px; padding: 0 10px; }
.vs-footer__legal-title {
  margin-bottom: 12px;
  font-size: 13px;
  line-height: 16px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #fff;
}
.vs-footer__legal-body { max-width: 104ch; }
.vs-footer__legal p { font-size: 13px; line-height: 1.6; color: var(--vs-cloud); }
.vs-footer__legal p + p { margin-top: 10px; }
.vs-footer__legal strong { color: #fff; font-weight: 500; }
@media (min-width: 1280px) {
  .vs-footer__legal-body {
    max-width: none;
    columns: 2;
    column-gap: 48px;
    orphans: 2;
    widows: 2;
  }
  .vs-footer__legal-body > p:first-child { margin-top: 0; }
}
.vs-footer__bottom {
  margin: 28px 10px 0;
  padding: 22px 0 6px;
  border-top: 1px solid var(--c-line-on-dark);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 18px 24px;
  font-size: 14px;
  line-height: 18px;
}
.vs-footer__copy { color: var(--vs-cloud); }
.vs-footer__statutory { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 24px; }
.vs-footer__statutory li { margin: 0; }
.vs-footer__statutory a { font-weight: 500; }
[data-surface="dark"] .vs-footer__bottom a { color: #fff; text-decoration: none; border-radius: 3px; transition: color var(--dur-fast) ease; }
[data-surface="dark"] .vs-footer__bottom a:hover { color: var(--vs-amber); }

@media (max-width: 1024px) {
  .vs-footer__top { flex-direction: column; gap: 32px; }
  .vs-footer__brand, .vs-footer__main { flex: none; }
  .vs-footer__links { flex-direction: column; gap: 32px; }
  .vs-footer__contact { padding-top: 0; }
}
@media (max-width: 767px) {
  .vs-footer__card { padding: 20px; }
  .vs-footer__brand, .vs-footer__main { padding: 0; }
  .vs-footer__descriptor { margin-top: 24px; }
  .vs-footer__nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; }
  .vs-footer__contact .vs-kv__row { grid-template-columns: 88px minmax(0, 1fr); }
  .vs-footer__links { margin: 4px 0 0; }
  .vs-footer__legal { padding: 0; }
  .vs-footer__legal p { line-height: 1.55; }
  .vs-footer__bottom { margin-inline: 0; flex-direction: column; align-items: flex-start; }
  .vs-footer__top { gap: 24px; }
  .vs-footer__brand, .vs-footer__main { display: contents; }
  .vs-footer__logo { order: 1; align-self: flex-start; margin-top: 0; }
  .vs-footer__headline { order: 2; max-width: 15ch; }
  .vs-footer__descriptor { order: 3; margin-top: 0; }
  .vs-footer__enquiries { order: 4; margin-top: 0; align-self: stretch; }
}
@media (min-width: 1600px) {
  .vs-split__caption,
  .vs-split__art > .vs-vis > :is(.vs-vis__tag, .vs-vis__caption),
  .vs-pair--mirror > .vs-pair__visual > .vs-vis--fill > :is(.vs-vis__tag, .vs-vis__caption) {
    margin-left: calc(100% + 24px + var(--gap-panel) / 2 - var(--container) / 2);
  }
  .vs-pair:not(.vs-pair--mirror) > .vs-pair__text { padding-left: max(40px, calc(50% - var(--container) / 2)); }
  .vs-footer__card { padding-inline: max(24px, calc(50% - var(--container) / 2 - 10px)); }
  .vs-hero__content { padding-left: max(24px, calc(50% - var(--container) / 2)); }
  .vs-inner-hero__content,
  .vs-hero--compact > .vs-hero__content { margin-inline: auto; }
}
@media (prefers-reduced-motion: no-preference) {
  .js .vs-reveal:not(.is-revealed) { opacity: 0; transform: translateY(var(--reveal-shift)); }
  .js .vs-reveal.is-revealed:not(.is-settled) {
    transition:
      opacity var(--dur-reveal) var(--ease-out) calc(var(--reveal-delay) + min(var(--i, 0), 4) * var(--reveal-stagger)),
      transform var(--dur-reveal) var(--ease-out) calc(var(--reveal-delay) + min(var(--i, 0), 4) * var(--reveal-stagger));
  }
}
@media (prefers-reduced-motion: reduce) {
  .vs-conv__m,
  details[open] > summary .vs-conv__m,
  .vs-nav__menu,
  .vs-nav__burger span,
  .vs-card::details-content,
  .vs-acc__item::details-content,
  .vs-tip { transition-duration: 0.01ms !important; transition-delay: 0s !important; }
  .vs-hero__canvas { transition: none; }
  .vs-pairmark { animation: none; opacity: .3; }
}

@media (forced-colors: active) {
  .vs-btn, .vs-card, .vs-acc__item, .vs-nav__pill, .vs-nav__menu, .vs-tag,
  .vs-specs__row, .vs-ledger__row, .vs-tip, .vs-carousel__media, .vs-explore__thumb { border: 1px solid CanvasText; }
  .vs-hero__canvas, .vs-hero__pairs, .vs-plus-field { display: none; }
  .vs-toggle::before { border-color: CanvasText; }
  .vs-glyph, .vs-badge { forced-color-adjust: none; }
  .vs-nav__lang::before { background: CanvasText; }
  .vs-nav__lang-current { text-decoration: underline; text-underline-offset: 6px; }
}

@media print {
  .vs-nav, .vs-skip, .vs-hero__bg, .vs-hero__pairs, .vs-carousel__arrows,
  .vs-tips, .vs-toggle, canvas, main::after { display: none !important; }
  *, *::before, *::after { box-shadow: none !important; text-shadow: none !important; }
  body { background: #fff; color: #000; }
  .vs-hero, .vs-inner-hero, .vs-signature, .vs-cta, .vs-footer__card,
  .vs-split__visual, .vs-explore__feature, .vs-values__wide, .vs-card, .vs-acc__item,
  .vs-pair__text, .vs-pair__visual, .vs-panel, .vs-values, .vs-carousel, .vs-explore, .vs-doc {
    background: #fff !important; color: #000 !important;
  }
  [data-surface="dark"], [data-surface="dark"] * { color: #000 !important; }
  .vs-hero { position: static; min-height: 0; padding-top: 24px; }
  .vs-hero::before, .vs-hero::after, .vs-inner-hero::before, .vs-split__visual::before,
  .vs-signature::before, .vs-cta::before, .vs-footer__card::before, .vs-explore__feature::before { display: none; }
  .vs-reveal { opacity: 1 !important; transform: none !important; }
  details::details-content { content-visibility: visible !important; block-size: auto !important; }
  .vs-split, .vs-pair { display: block; }
  .vs-split__visual, .vs-split__content, .vs-pair__text, .vs-pair__visual, .vs-inner-hero, .vs-signature { min-height: 0 !important; }
  a[href^="http"]:not(.vs-btn)::after { content: " (" attr(href) ")"; font-size: .85em; }
  .vs-carousel__track { flex-wrap: wrap; overflow: visible; }
  .vs-carousel__card { flex-basis: 45%; break-inside: avoid; }
  .vs-doc { margin: 0; padding: 0; }
  .vs-doc__layout { display: block; max-width: none; }
  .vs-doc__index { display: none !important; }
  .vs-doc, .vs-doc * { color: #000 !important; }
}
