@layer theme {
  :root,:host {
  --font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --spacing:.25rem;
  --default-font-family:var(--font-sans);
  --default-mono-font-family:var(--font-mono)}
}

@layer base {
  *,:after,:before,::backdrop {
  box-sizing:border-box;
  border:0 solid;
  margin:0;
  padding:0}

::file-selector-button {
  box-sizing:border-box;
  border:0 solid;
  margin:0;
  padding:0}

html,:host {
  -webkit-text-size-adjust:100%;
  tab-size:4;
  line-height:1.5;
  font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
  font-feature-settings:var(--default-font-feature-settings,normal);
  font-variation-settings:var(--default-font-variation-settings,normal);
  -webkit-tap-highlight-color:transparent}

hr {
  height:0;
  color:inherit;
  border-top-width:1px}

abbr:where([title]) {
  -webkit-text-decoration:underline dotted;
  text-decoration:underline dotted}

h1,h2,h3,h4,h5,h6 {
  font-size:inherit;
  font-weight:inherit}

a {
  color:inherit;
  -webkit-text-decoration:inherit;
  -webkit-text-decoration:inherit;
  -webkit-text-decoration:inherit;
  -webkit-text-decoration:inherit;
  text-decoration:inherit}

b,strong {
  font-weight:bolder}

code,kbd,samp,pre {
  font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
  font-feature-settings:var(--default-mono-font-feature-settings,normal);
  font-variation-settings:var(--default-mono-font-variation-settings,normal);
  font-size:1em}

small {
  font-size:80%}

sub,sup {
  vertical-align:baseline;
  font-size:75%;
  line-height:0;
  position:relative}

sub {
  bottom:-.25em}

sup {
  top:-.5em}

table {
  text-indent:0;
  border-color:inherit;
  border-collapse:collapse}

:-moz-focusring {
  outline:auto}

progress {
  vertical-align:baseline}

summary {
  display:list-item}

ol,ul,menu {
  list-style:none}

img,svg,video,canvas,audio,iframe,embed,object {
  vertical-align:middle;
  display:block}

img,video {
  max-width:100%;
  height:auto}

button,input,select,optgroup,textarea {
  font:inherit;
  font-feature-settings:inherit;
  font-variation-settings:inherit;
  letter-spacing:inherit;
  color:inherit;
  opacity:1;
  background-color:#0000;
  border-radius:0}

::file-selector-button {
  font:inherit;
  font-feature-settings:inherit;
  font-variation-settings:inherit;
  letter-spacing:inherit;
  color:inherit;
  opacity:1;
  background-color:#0000;
  border-radius:0}

:where(select:is([multiple],[size])) optgroup {
  font-weight:bolder}

:where(select:is([multiple],[size])) optgroup option {
  padding-inline-start:20px}

::file-selector-button {
  margin-inline-end:4px}

::placeholder {
  opacity:1}

@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {
  ::placeholder {
  color:currentColor}

@supports (color:color-mix(in lab, red, red)) {
  ::placeholder {
  color:color-mix(in oklab, currentcolor 50%, transparent)}
}
}

textarea {
  resize:vertical}

::-webkit-search-decoration {
  -webkit-appearance:none}

::-webkit-date-and-time-value {
  min-height:1lh;
  text-align:inherit}

::-webkit-datetime-edit {
  display:inline-flex}

::-webkit-datetime-edit-fields-wrapper {
  padding:0}

::-webkit-datetime-edit {
  padding-block:0}

::-webkit-datetime-edit-year-field {
  padding-block:0}

::-webkit-datetime-edit-month-field {
  padding-block:0}

::-webkit-datetime-edit-day-field {
  padding-block:0}

::-webkit-datetime-edit-hour-field {
  padding-block:0}

::-webkit-datetime-edit-minute-field {
  padding-block:0}

::-webkit-datetime-edit-second-field {
  padding-block:0}

::-webkit-datetime-edit-millisecond-field {
  padding-block:0}

::-webkit-datetime-edit-meridiem-field {
  padding-block:0}

::-webkit-calendar-picker-indicator {
  line-height:1}

:-moz-ui-invalid {
  box-shadow:none}

button,input:where([type=button],[type=reset],[type=submit]) {
  appearance:button}

::file-selector-button {
  appearance:button}

::-webkit-inner-spin-button {
  height:auto}

::-webkit-outer-spin-button {
  height:auto}

[hidden]:where(:not([hidden=until-found])) {
  display:none!important}
}

@layer components;
  @layer utilities {
  .relative {
  position:relative}

.start {
  inset-inline-start:var(--spacing)}

.grid {
  display:grid}

.table {
  display:table}
}

:root {
  --blue:#0757e8;
  --navy:#062258;
  --ink:#0b1830;
  --muted:#64738c;
  --line:#dce5f1;
  --ice:#f4f8fd;
  --white:#fff}

* {
  box-sizing:border-box}

html {
  scroll-behavior:smooth}

body {
  color:var(--ink);
  background:#fff;
  margin:0;
  font-family:Arial,Helvetica Neue,sans-serif}

a {
  color:inherit;
  text-decoration:none}

.site-header {
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  z-index:20;
  background:#fffffff0;
  border-bottom:1px solid #e6edf6;
  align-items:center;
  height:84px;
  padding:0 5vw;
  display:flex;
  position:sticky;
  top:0}

.brand {
  align-items:center;
  gap:11px;
  min-width:280px;
  display:flex}

.brand-mark {
  background:var(--blue);
  color:#fff;
  border-radius:5px 13px 5px 5px;
  place-items:center;
  width:39px;
  height:39px;
  font-size:22px;
  font-weight:900;
  display:grid;
  box-shadow:0 8px 22px #0757e838}

.brand strong {
  letter-spacing:3.2px;
  font-size:15px;
  display:block}

.brand small {
  color:#728097;
  letter-spacing:.8px;
  margin-top:3px;
  font-size:10px;
  display:block}

.desktop-nav {
  gap:38px;
  margin:auto;
  font-size:13px;
  font-weight:700;
  display:flex}

.desktop-nav a {
  position:relative}

.desktop-nav a:after {
  content:"";
  background:var(--blue);
  height:2px;
  transition:all .25s;
  position:absolute;
  bottom:-9px;
  left:0;
  right:100%}

.desktop-nav a:hover:after {
  right:0}

.header-cta {
  background:var(--navy);
  color:#fff;
  border-radius:4px;
  padding:13px 17px;
  font-size:12px;
  font-weight:700}

.mobile-nav {
  display:none}

.hero {
  background:linear-gradient(118deg,#fff 0% 52%,#f3f8ff 52%,#eef5ff 100%);
  grid-template-columns:1.02fr .98fr;
  gap:5vw;
  min-height:690px;
  padding:76px 5vw 58px;
  display:grid;
  overflow:hidden}

.eyebrow,.kicker {
  text-transform:uppercase;
  letter-spacing:2.3px;
  color:var(--blue);
  font-size:11px;
  font-weight:800}

.eyebrow {
  align-items:center;
  gap:10px;
  display:flex}

.eyebrow span {
  background:var(--blue);
  width:27px;
  height:2px}

h1 {
  letter-spacing:-5px;
  margin:30px 0 26px;
  font-size:clamp(52px,6vw,88px);
  font-weight:800;
  line-height:.96}

h1 em {
  color:var(--blue);
  font-style:normal}

.hero-copy>p {
  color:#596982;
  max-width:610px;
  font-size:18px;
  line-height:1.7}

.hero-actions {
  gap:12px;
  margin:34px 0 50px;
  display:flex}

.button {
  border-radius:4px;
  padding:17px 22px;
  font-size:13px;
  font-weight:750}

.button.primary {
  background:var(--blue);
  color:#fff;
  box-shadow:0 12px 24px #0757e833}

.button.primary span {
  margin-left:24px}

.button.secondary {
  background:#fff;
  border:1px solid #c8d4e5}

.hero-proof {
  border-top:1px solid var(--line);
  gap:40px;
  max-width:610px;
  padding-top:26px;
  display:flex}

.hero-proof div {
  align-items:center;
  gap:11px;
  display:flex}

.hero-proof strong {
  color:var(--navy);
  font-size:25px}

.hero-proof span {
  color:#718098;
  text-transform:uppercase;
  letter-spacing:.6px;
  max-width:70px;
  font-size:10px;
  line-height:1.4}

.hero-visual {
  align-self:center;
  min-height:520px;
  position:relative}

.visual-grid {
  opacity:.55;
  background-image:linear-gradient(#cfe0f6 1px,#0000 1px),linear-gradient(90deg,#cfe0f6 1px,#0000 1px);
  background-size:38px 38px;
  position:absolute;
  inset:0;
  -webkit-mask-image:linear-gradient(#0000,#000 20% 80%,#0000);
  mask-image:linear-gradient(#0000,#000 20% 80%,#0000)}

.orbit {
  border:1px solid #b7cbea;
  border-radius:50%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%)}

.orbit-one {
  width:390px;
  height:390px}

.orbit-two {
  border-style:dashed;
  width:260px;
  height:260px}

.core {
  background:var(--navy);
  color:#fff;
  text-align:center;
  border:13px solid #fff;
  border-radius:50%;
  outline:1px solid #d6e3f5;
  place-content:center;
  width:160px;
  height:160px;
  display:grid;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  box-shadow:0 30px 60px #06225840}

.core span {
  font-size:53px;
  font-weight:900;
  line-height:.8}

.core small {
  letter-spacing:1.5px;
  margin-top:10px;
  font-size:8px;
  line-height:1.4}

.floating-card {
  border:1px solid #dbe7f6;
  border-left:3px solid var(--blue);
  background:#fff;
  width:155px;
  padding:14px 16px;
  position:absolute;
  box-shadow:0 15px 35px #0a295b1a}

.floating-card b {
  letter-spacing:1.8px;
  color:var(--blue);
  font-size:10px;
  display:block}

.floating-card span {
  color:#687992;
  margin-top:6px;
  font-size:11px;
  display:block}

.metric {
  background:var(--blue);
  color:#fff;
  width:154px;
  padding:15px 17px;
  position:absolute;
  bottom:5%;
  right:4%;
  box-shadow:0 18px 30px #0757e838}

.metric>span {
  letter-spacing:1.5px;
  font-size:8px}

.metric strong {
  margin:4px 0;
  font-size:36px;
  display:block}

.metric strong small {
  opacity:.6;
  font-size:13px}

.metric i {
  background:#fff;
  height:3px;
  display:block}

.intro-strip {
  background:var(--navy);
  color:#fff;
  align-items:center;
  gap:28px;
  padding:21px 5vw;
  display:flex}

.intro-strip p {
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:10px;
  font-weight:800}

.intro-strip div {
  background:#44618f;
  flex:1;
  height:1px}

.intro-strip span {
  color:#aab9d1;
  font-size:11px}

.products {
  background:#fff}

.section-heading {
  grid-template-columns:1.05fr .95fr;
  align-items:end;
  gap:8vw;
  margin-bottom:55px;
  display:grid}

.section-heading h2 {
  letter-spacing:-2.5px;
  margin:18px 0 0;
  font-size:clamp(38px,4vw,58px);
  line-height:1.08}

.section-heading>p {
  color:var(--muted);
  max-width:570px;
  font-size:16px;
  line-height:1.8}

.product-grid {
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
  grid-template-columns:repeat(4,1fr);
  display:grid}

.product-card {
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
  flex-direction:column;
  min-height:370px;
  padding:25px 23px;
  transition:all .3s;
  display:flex}

.product-card:hover {
  z-index:1;
  transform:translateY(-5px);
  box-shadow:0 18px 40px #1131621a}

.product-top {
  justify-content:space-between;
  align-items:center;
  display:flex}

.product-number {
  color:#9aa8bc;
  font-family:monospace;
  font-size:11px}

.product-tag {
  text-transform:uppercase;
  color:var(--blue);
  letter-spacing:1px;
  background:#edf4ff;
  border-radius:2px;
  padding:5px 7px;
  font-size:8px;
  font-weight:800}

.product-icon {
  width:53px;
  height:53px;
  color:var(--blue);
  letter-spacing:.4px;
  background:#f7faff;
  border:1px solid #cddcf0;
  border-radius:4px 14px 4px 4px;
  place-items:center;
  margin:31px 0 22px;
  font-size:11px;
  font-weight:900;
  display:grid}

.product-card h3 {
  margin:0 0 12px;
  font-size:18px}

.product-card p {
  color:#697991;
  margin:0;
  font-size:13px;
  line-height:1.65}

.product-card a {
  text-transform:uppercase;
  letter-spacing:.7px;
  color:var(--blue);
  margin-top:auto;
  padding-top:22px;
  font-size:10px;
  font-weight:800}

.product-card a span {
  float:right;
  font-size:13px}

.about-panel {
  background:var(--navy);
  color:#fff;
  grid-template-columns:1.12fr .88fr;
  min-height:610px;
  display:grid;
  position:relative;
  overflow:hidden}

.about-panel:after {
  content:"R";
  color:#0b3273;
  opacity:.42;
  font-size:500px;
  font-weight:900;
  line-height:1;
  position:absolute;
  bottom:-140px;
  left:43%}

.about-copy {
  z-index:1;
  padding:80px;
  position:relative}

.about-copy h2 {
  letter-spacing:-2.5px;
  margin:22px 0 28px;
  font-size:clamp(38px,4vw,60px);
  line-height:1.06}

.about-copy p {
  color:#b6c4dc;
  max-width:660px;
  font-size:14px;
  line-height:1.8}

.text-link {
  color:#fff;
  text-transform:uppercase;
  letter-spacing:1px;
  border-bottom:1px solid #638ce0;
  margin-top:27px;
  padding-bottom:8px;
  font-size:12px;
  font-weight:800;
  display:inline-block}

.text-link span {
  margin-left:25px}

.principles {
  color:var(--ink);
  z-index:2;
  background:#fff;
  margin:45px;
  padding:42px;
  position:relative}

.principles div {
  border-bottom:1px solid var(--line);
  padding:22px 5px 28px}

.principles div:last-child {
  border:0}

.principles span {
  color:var(--blue);
  font-family:monospace;
  font-size:10px}

.principles h3 {
  margin:10px 0 8px;
  font-size:19px}

.principles p {
  color:var(--muted);
  margin:0;
  font-size:12px;
  line-height:1.6}

.section-heading.compact {
  margin-bottom:40px}

.leader-grid {
  grid-template-columns:1fr 1fr;
  gap:20px;
  display:grid}

.leader-grid article {
  border:1px solid var(--line);
  background:#fff;
  align-items:center;
  gap:28px;
  padding:35px;
  display:flex}

.avatar {
  color:#fff;
  background:linear-gradient(145deg,#0d66f2,#07378f);
  border-radius:5px 30px 5px 5px;
  place-items:center;
  width:100px;
  height:112px;
  font-size:25px;
  font-weight:800;
  display:grid}

.avatar.alt {
  background:linear-gradient(145deg,#1b4076,#071c3f)}

.leader-grid article span {
  text-transform:uppercase;
  color:var(--blue);
  letter-spacing:1.5px;
  font-size:9px;
  font-weight:800}

.leader-grid h3 {
  margin:7px 0 15px;
  font-size:27px}

.leader-grid a {
  color:#64738a;
  font-size:13px}

.leader-grid a b {
  color:var(--blue);
  margin-left:16px}

.contact {
  padding-top:50px}

.contact-inner {
  background:var(--blue);
  color:#fff;
  min-height:475px;
  padding:75px 8%;
  position:relative;
  overflow:hidden}

.contact-inner h2 {
  letter-spacing:-3px;
  margin:25px 0 20px;
  font-size:clamp(40px,5vw,69px);
  line-height:1.02}

.contact-inner p {
  color:#c8dcff;
  max-width:480px;
  line-height:1.6}

.contact-inner>a {
  border-bottom:1px solid #b8d1ff;
  margin-top:24px;
  padding-bottom:9px;
  font-size:18px;
  display:inline-block}

.contact-inner>a span {
  margin-left:60px}

.contact-rings,.contact-rings:before,.contact-rings:after {
  border:1px solid #ffffff3b;
  border-radius:50%;
  position:absolute}

.contact-rings {
  width:480px;
  height:480px;
  top:-20px;
  right:-40px}

.contact-rings:before {
  content:"";
  inset:70px}

.contact-rings:after {
  content:"";
  background:#fff;
  inset:150px;
  box-shadow:0 0 0 30px #ffffff14}

footer {
  background:#f5f8fc;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:28px;
  padding:48px 5vw 30px;
  display:grid}

.footer-brand {
  min-width:0}

.footer-brand small {
  font-size:9px}

footer>p {
  text-align:right;
  color:#697991;
  font-size:13px}

footer>div {
  border-top:1px solid var(--line);
  color:#8491a5;
  text-transform:uppercase;
  letter-spacing:.5px;
  grid-column:1/-1;
  justify-content:space-between;
  padding-top:24px;
  font-size:10px;
  display:flex}

footer>div a {
  color:var(--blue);
  font-weight:800}

@media (width<=1050px) {
  .desktop-nav {
  gap:20px}

.product-grid {
  grid-template-columns:repeat(3,1fr)}

.hero {
  grid-template-columns:1fr}

.hero-visual {
  min-height:450px}

.about-copy {
  padding:55px}

.principles {
  margin:30px}

.contact-rings {
  opacity:.45}
}

@media (width<=760px) {
  .site-header {
  height:72px;
  padding:0 20px}

.brand {
  min-width:0}

.header-cta,.desktop-nav {
  display:none}

.mobile-nav {
  margin-left:auto;
  display:block;
  position:relative}

.mobile-nav summary {
  text-transform:uppercase;
  letter-spacing:1px;
  border:1px solid var(--line);
  padding:10px;
  font-size:11px;
  font-weight:800;
  list-style:none}

.mobile-nav div {
  border:1px solid var(--line);
  background:#fff;
  width:170px;
  padding:12px;
  display:grid;
  position:absolute;
  top:42px;
  right:0;
  box-shadow:0 15px 30px #183e7822}

.mobile-nav a {
  padding:10px}

.hero {
  background:linear-gradient(#fff 0 58%,#f3f8ff 58%);
  padding:55px 22px 40px}

h1 {
  letter-spacing:-3px}

.hero-actions {
  flex-direction:column}

.button {
  text-align:center}

.hero-proof {
  justify-content:space-between;
  gap:13px}

.hero-proof div {
  display:block}

.hero-proof span {
  margin-top:4px;
  display:block}

.hero-visual {
  min-height:390px}

.orbit-one {
  width:330px;
  height:330px}

.orbit-two {
  width:220px;
  height:220px}

.floating-card {
  width:130px;
  padding:10px}

.card-a {
  left:0}

.card-b {
  right:0}

.card-c {
  left:0}

.metric {
  right:0}

.intro-strip {
  padding:18px 22px}

.intro-strip span {
  display:none}

.section {
  padding:75px 22px}

.section-heading {
  margin-bottom:35px;
  display:block}

.section-heading>p {
  margin-top:22px}

.product-grid {
  grid-template-columns:1fr}

.product-card {
  min-height:330px}

.about {
  padding-left:0;
  padding-right:0}

.about-panel {
  display:block}

.about-copy {
  padding:55px 24px}

.principles {
  margin:0 24px 35px;
  padding:24px}

.leader-grid {
  grid-template-columns:1fr}

.leader-grid article {
  padding:24px}

.avatar {
  width:80px;
  height:90px}

.contact {
  padding:30px 0 0}

.contact-inner {
  min-height:500px;
  padding:60px 25px}

.contact-inner h2 {
  letter-spacing:-2px}

.contact-rings {
  width:350px;
  height:350px;
  top:auto;
  bottom:-160px;
  right:-170px}

footer {
  grid-template-columns:1fr}

footer>p {
  text-align:left}

footer>div {
  gap:12px;
  display:grid}
}

@media (prefers-reduced-motion:reduce) {
  html {
  scroll-behavior:auto}

.product-card {
  transition:none}
}

.company-logo {
  object-fit:cover;
  border-radius:50%;
  flex:none;
  width:58px;
  height:58px;
  box-shadow:0 4px 16px #0757e824}

.brand-name strong {
  letter-spacing:3.2px;
  font-size:15px;
  display:block}

.brand-name small {
  color:#728097;
  letter-spacing:.8px;
  margin-top:3px;
  font-size:10px;
  display:block}

.core {
  background:#fff;
  padding:0;
  overflow:hidden}

.core img {
  object-fit:cover;
  border-radius:50%;
  width:100%;
  height:100%}

.product-logo {
  --product:#0757e8;
  background:linear-gradient(145deg,var(--product),#061d48);
  color:#fff;
  width:68px;
  height:54px;
  box-shadow:0 9px 20px var(--product);
  border-radius:5px 18px 5px 5px;
  align-items:center;
  margin:31px 0 22px;
  display:flex;
  position:relative}

@supports (color:color-mix(in lab, red, red)) {
  .product-logo {
  box-shadow:0 9px 20px color-mix(in srgb,var(--product) 24%,transparent)}
}

.product-logo {
  overflow:hidden}

.product-logo span {
  letter-spacing:-2px;
  padding-left:11px;
  font-size:25px;
  font-weight:900}

.product-logo b {
  letter-spacing:.6px;
  border-left:1px solid #ffffff80;
  margin-left:7px;
  padding-left:7px;
  font-size:9px}

.product-logo i {
  border:1px solid #ffffff4d;
  border-radius:50%;
  width:25px;
  height:25px;
  position:absolute;
  bottom:-9px;
  right:-9px}

.logo-2 {
  --product:#009e8b}

.logo-3 {
  --product:#6639d7}

.logo-4 {
  --product:#d25135}

.logo-5 {
  --product:#0074bb}

.logo-6 {
  --product:#344db5}

.logo-7 {
  --product:#0a93c4}

.logo-8 {
  --product:#b16d08}

.logo-9 {
  --product:#00a06a}

.logo-10 {
  --product:#be3e75}

.logo-11 {
  --product:#34465f}

.logo-12 {
  --product:#4263eb}

.downloads {
  background:var(--navy);
  color:#fff;
  grid-template-columns:.78fr 1.22fr;
  align-items:start;
  gap:7vw;
  display:grid}

.download-intro {
  position:sticky;
  top:125px}

.download-intro h2 {
  letter-spacing:-3px;
  margin:24px 0;
  font-size:clamp(42px,4.5vw,66px);
  line-height:1.05}

.download-intro p {
  color:#b5c4dd;
  max-width:470px;
  font-size:14px;
  line-height:1.8}

.download-intro>a {
  text-transform:uppercase;
  letter-spacing:1px;
  border-bottom:1px solid #5278b8;
  margin-top:25px;
  padding-bottom:9px;
  font-size:11px;
  font-weight:800;
  display:inline-block}

.download-intro>a span {
  margin-left:25px}

.download-list article {
  border-bottom:1px solid #29487a;
  grid-template-columns:58px 1fr auto;
  align-items:center;
  gap:19px;
  padding:19px 0;
  display:grid}

.download-logo {
  --product:#0757e8;
  background:linear-gradient(145deg,var(--product),#061d48);
  border-radius:4px 13px 4px 4px;
  align-items:center;
  width:50px;
  height:42px;
  display:flex;
  overflow:hidden}

.download-logo span {
  padding-left:8px;
  font-size:19px;
  font-weight:900}

.download-logo b {
  border-left:1px solid #ffffff73;
  margin-left:5px;
  padding-left:5px;
  font-size:7px}

.download-list h3 {
  margin:0 0 5px;
  font-size:15px}

.download-list p {
  text-transform:uppercase;
  letter-spacing:1px;
  color:#8fa4c5;
  margin:0;
  font-size:9px}

.download-list article>a {
  text-transform:uppercase;
  letter-spacing:.9px;
  color:#a9c8ff;
  border:1px solid #35598e;
  border-radius:3px;
  padding:11px 13px;
  font-size:9px;
  font-weight:800;
  transition:all .2s}

.download-list article>a:hover {
  color:var(--navy);
  background:#fff;
  border-color:#fff}

.download-list article>a span {
  margin-left:12px}

@media (width<=1050px) {
  .desktop-nav {
  gap:15px}

.downloads {
  grid-template-columns:1fr}

.download-intro {
  position:static}

.download-list {
  margin-top:15px}
}

@media (width<=760px) {
  .company-logo {
  width:47px;
  height:47px}

.brand-name {
  display:none}

.downloads {
  display:block}

.download-list {
  margin-top:45px}

.download-list article {
  grid-template-columns:48px 1fr}

.download-list article>a {
  grid-column:2;
  width:max-content}

.footer-brand .brand-name {
  display:block}

.footer-brand .company-logo {
  width:58px;
  height:58px}
}

.purpose {
  border-top:1px solid var(--line);
  background:#fff;
  grid-template-columns:.72fr 1.28fr;
  align-items:center;
  gap:7vw;
  display:grid}

.purpose-heading h2 {
  letter-spacing:-4px;
  margin:22px 0 28px;
  font-size:clamp(48px,5.2vw,76px);
  line-height:.98}

.purpose-heading h2 em {
  color:var(--blue);
  font-style:normal}

.purpose-heading>p {
  color:var(--muted);
  max-width:430px;
  font-size:15px;
  line-height:1.8}

.purpose-cards {
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
  grid-template-columns:1fr 1fr;
  display:grid}

.purpose-cards article {
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:linear-gradient(160deg,#fff 68%,#f3f8ff);
  min-height:440px;
  padding:34px;
  position:relative}

.purpose-cards article:last-child {
  background:linear-gradient(160deg,#f7faff 68%,#eaf3ff)}

.purpose-number {
  color:#9aa9bd;
  font-family:monospace;
  font-size:11px;
  position:absolute;
  top:28px;
  right:27px}

.purpose-symbol {
  background:var(--navy);
  color:#fff;
  border-radius:50%;
  place-items:center;
  width:62px;
  height:62px;
  margin:36px 0 54px;
  font-size:27px;
  display:grid;
  box-shadow:0 0 0 10px #edf4ff}

.purpose-cards article:last-child .purpose-symbol {
  background:var(--blue)}

.purpose-cards h3 {
  letter-spacing:-.7px;
  margin:15px 0;
  font-size:24px;
  line-height:1.25}

.purpose-cards p {
  color:var(--muted);
  font-size:13px;
  line-height:1.75}

@media (width<=1050px) {
  .purpose {
  grid-template-columns:1fr}

.purpose-heading>p {
  max-width:650px}
}

@media (width<=760px) {
  .purpose {
  display:block}

.purpose-heading {
  margin-bottom:45px}

.purpose-cards {
  grid-template-columns:1fr}

.purpose-cards article {
  min-height:390px;
  padding:28px}

.purpose-symbol {
  margin:25px 0 45px}
}

.hero {
  min-height:620px;
  padding-top:62px}

.hero-copy {
  max-width:640px}

.hero-copy>p {
  max-width:560px;
  font-size:16px}

.hero-actions {
  margin:29px 0 40px}

@media (width<=760px) {
  .hero {
  padding-top:44px}

.hero h1 {
  letter-spacing:-2.4px;
  font-size:clamp(40px,12vw,52px);
  line-height:1.02}

.hero-copy>p {
  font-size:15px}

.hero-actions {
  margin:25px 0 34px}
}

.hero-proof span {
  max-width:125px}

.hero-proof span small {
  color:var(--blue);
  letter-spacing:.35px;
  margin-top:4px;
  font-size:8px;
  font-weight:800;
  line-height:1.35;
  display:block}

.card-a {
  top:16%;
  left:2%}

.card-b {
  top:23%;
  right:0}

.card-c {
  bottom:12%;
  left:5%}

.card-d {
  bottom:11%;
  right:1%}

.metric {
  text-align:center;
  width:132px;
  padding:10px 14px;
  top:2%;
  bottom:auto;
  right:36%}

.metric strong {
  margin:3px 0;
  font-size:22px}

.metric i {
  height:2px}

@media (width<=760px) {
  .hero-proof span {
  max-width:100px}

.hero-proof span small {
  font-size:7px}

.card-a {
  top:12%;
  left:0}

.card-b {
  top:20%;
  right:0}

.card-c {
  bottom:7%;
  left:0}

.card-d {
  bottom:10%;
  right:0}

.metric {
  width:104px;
  padding:7px;
  top:0;
  right:34%}

.metric strong {
  font-size:18px}

.floating-card span {
  font-size:9px}
}

.product-logo {
  border-radius:7px 20px 7px 7px;
  gap:8px;
  width:92px;
  height:62px;
  padding:8px}

.product-logo .product-symbol {
  width:42px;
  height:42px;
  color:var(--product);
  letter-spacing:0;
  background:#fff;
  border-radius:5px 13px 5px 5px;
  flex:none;
  place-items:center;
  padding:0;
  font-size:25px;
  font-weight:800;
  line-height:1;
  display:grid;
  box-shadow:inset 0 0 0 1px #06225814}

.product-logo b {
  writing-mode:vertical-rl;
  letter-spacing:1px;
  border:0;
  margin:0;
  padding:0;
  font-size:8px;
  transform:rotate(180deg)}

.product-logo i {
  display:none}

.product-card:nth-child(4) .product-symbol {
  border-left:5px solid var(--product);
  border-bottom:5px solid var(--product);
  border-radius:2px}

.product-card:nth-child(5) .product-symbol {
  border-radius:20px 5px 5px 20px}

.product-card:nth-child(6) .product-symbol {
  border-radius:4px 4px 15px 15px}

.product-card:nth-child(7) .product-symbol {
  transform:skew(-7deg)}

.product-card:nth-child(8) .product-symbol {
  clip-path:polygon(15% 0,85% 0,85% 55%,100% 55%,100% 100%,0 100%,0 55%,15% 55%)}

.product-card:nth-child(9) .product-symbol {
  border-radius:50%}

.product-card:nth-child(10) .product-symbol {
  border-radius:2px}

.product-card:nth-child(11) .product-symbol {
  outline-offset:3px;
  outline:2px solid #fff6}

.product-card:nth-child(12) .product-symbol {
  clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%)}

.download-logo {
  gap:5px;
  width:58px;
  height:48px;
  padding:5px}

.download-logo .product-symbol {
  width:33px;
  height:33px;
  color:var(--product);
  background:#fff;
  border-radius:4px 10px 4px 4px;
  flex:none;
  place-items:center;
  padding:0;
  font-size:19px;
  font-weight:800;
  line-height:1;
  display:grid}

.download-logo b {
  writing-mode:vertical-rl;
  letter-spacing:.6px;
  border:0;
  margin:0;
  padding:0;
  font-size:6px;
  transform:rotate(180deg)}

.download-list article:nth-child(9) .download-logo .product-symbol {
  border-radius:50%}

.download-list article:nth-child(7) .download-logo .product-symbol {
  transform:skew(-7deg)}

body {
  -webkit-font-smoothing:auto;
  text-rendering:optimizelegibility;
  font-synthesis:none;
  font-family:Segoe UI,Tahoma,Arial,sans-serif}

.hero-copy>p,.section-heading>p,.product-card p,.about-copy p,.principles p,.purpose-heading>p,.purpose-cards p,.download-intro p,.leader-grid a {
  color:#4e5e74}

.about-copy p,.download-intro p {
  color:#c5d0e2}

.product-card h3,.purpose-cards h3,.leader-grid h3 {
  font-weight:700}

.floating-card b,.floating-card span,.metric>span,.metric strong {
  font-family:Segoe UI,Tahoma,Arial,sans-serif}

.floating-card span {
  color:#52637b}

.metric {
  color:var(--blue);
  border:2px solid var(--blue);
  box-shadow:none;
  background:#fff}

.metric i {
  background:var(--blue)}

.product-logo {
  color:var(--product);
  border:2px solid var(--product);
  box-shadow:none;
  background:#fff}

.product-logo .product-symbol {
  border-right:1px solid var(--product);
  background:0 0}

@supports (color:color-mix(in lab, red, red)) {
  .product-logo .product-symbol {
  border-right:1px solid color-mix(in srgb,var(--product) 30%,transparent)}
}

.product-logo .product-symbol {
  box-shadow:none}

.product-logo b {
  font-weight:800}

.download-logo {
  color:#fff;
  border:2px solid var(--product);
  background:0 0}

.download-logo .product-symbol {
  color:#fff;
  border-right:1px solid var(--product);
  background:0 0}

.download-logo b {
  color:#fff;
  font-weight:800}

:root {
  --blue:#0067b8;
  --navy:#1a1a1a;
  --ink:#1a1a1a;
  --muted:#505050;
  --line:#d2d2d2;
  --ice:#f2f2f2}

body {
  color:#1a1a1a;
  background:#fff;
  font-family:Segoe UI,SegoeUI,Helvetica Neue,Arial,sans-serif}

.site-header {
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  height:56px;
  box-shadow:none;
  background:#fff;
  border-bottom:1px solid #e6e6e6;
  padding:0 5vw}

.company-logo {
  width:42px;
  height:42px;
  box-shadow:none}

.brand {
  min-width:310px}

.brand-name strong {
  letter-spacing:1.8px;
  font-size:14px}

.brand-name small {
  font-size:9px}

.desktop-nav {
  gap:26px;
  font-size:12px;
  font-weight:500}

.desktop-nav a:after {
  background:#1a1a1a;
  bottom:-7px}

.header-cta {
  background:#0067b8;
  border-radius:0;
  padding:10px 18px;
  font-size:12px}

.hero {
  text-align:center;
  background:#f2f2f2;
  min-height:0;
  padding:82px 5vw 52px;
  display:block}

.hero-copy {
  max-width:850px;
  margin:0 auto}

.eyebrow {
  letter-spacing:1.4px;
  justify-content:center}

.hero h1 {
  letter-spacing:-2.5px;
  margin:23px 0 22px;
  font-size:clamp(44px,5vw,64px);
  line-height:1.06}

.hero h1 em {
  color:#0067b8}

.hero-copy>p {
  color:#383838;
  max-width:740px;
  margin-left:auto;
  margin-right:auto;
  font-size:18px;
  line-height:1.55}

.hero-actions {
  justify-content:center;
  margin:30px 0 40px}

.button {
  border-radius:0;
  padding:12px 20px;
  font-size:14px}

.button.primary {
  box-shadow:none;
  background:#0067b8}

.button.secondary {
  background:0 0;
  border:2px solid #1a1a1a;
  padding:10px 20px}

.hero-proof {
  justify-content:center;
  max-width:760px;
  margin:0 auto;
  padding-top:24px}

.hero-proof div {
  text-align:left}

.hero-proof strong {
  font-size:22px}

.hero-proof span {
  color:#505050}

.hero-visual {
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  max-width:1180px;
  min-height:0;
  margin:55px auto 0;
  display:grid}

.visual-grid,.orbit,.core,.metric {
  display:none}

.floating-card {
  text-align:left;
  background:#fff;
  border:0;
  border-top:4px solid #0067b8;
  width:auto;
  min-height:128px;
  padding:25px;
  position:static;
  box-shadow:0 3px 10px #00000021}

.floating-card b {
  color:#0067b8;
  font-size:12px}

.floating-card span {
  color:#505050;
  margin-top:12px;
  font-size:14px}

.intro-strip {
  color:#1a1a1a;
  background:#fff;
  border-bottom:1px solid #d2d2d2;
  padding:18px 5vw}

.intro-strip div {
  background:#d2d2d2}

.intro-strip span {
  color:#505050}

.section {
  padding:88px 5vw}

.section-heading {
  gap:7vw;
  max-width:1180px;
  margin:0 auto 45px}

.section-heading h2,.about-copy h2,.purpose-heading h2,.download-intro h2,.contact-inner h2 {
  letter-spacing:-1.8px}

.section-heading h2 {
  font-size:clamp(36px,4vw,52px)}

.section-heading>p {
  color:#505050;
  font-size:16px}

.kicker,.eyebrow {
  color:#0067b8}

.product-grid {
  border:0;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  max-width:1280px;
  margin:0 auto}

.product-card {
  background:#fff;
  border:0;
  min-height:365px;
  padding:30px;
  box-shadow:0 3px 12px #00000024}

.product-card:hover {
  transform:translateY(-3px);
  box-shadow:0 6px 20px #0000002b}

.product-tag {
  color:#005a9e;
  background:#e6f2fa}

.product-card h3 {
  font-size:21px}

.product-card p {
  color:#505050;
  font-size:14px}

.product-card a {
  color:#0067b8;
  font-size:11px}

.product-logo {
  border-radius:0;
  margin:28px 0 24px}

.product-logo .product-symbol {
  border-radius:0}

.about {
  background:#fff}

.about-panel {
  color:#1a1a1a;
  background:#f2f2f2;
  max-width:1280px;
  min-height:540px;
  margin:0 auto}

.about-panel:after {
  display:none}

.about-copy {
  padding:65px}

.kicker.light {
  color:#0067b8}

.about-copy p {
  color:#505050;
  font-size:15px}

.principles {
  background:#fff;
  margin:32px;
  box-shadow:0 3px 12px #0000001f}

.text-link {
  color:#0067b8;
  border-color:#0067b8}

.purpose {
  background:#eaf4fb;
  grid-template-columns:.7fr 1.3fr}

.purpose-cards {
  border:0;
  gap:22px}

.purpose-cards article,.purpose-cards article:last-child {
  background:#fff;
  border:0;
  min-height:410px;
  box-shadow:0 3px 12px #0000001f}

.purpose-symbol,.purpose-cards article:last-child .purpose-symbol {
  box-shadow:none;
  background:#0067b8;
  border-radius:0}

.downloads {
  color:#1a1a1a;
  background:#f2f2f2;
  grid-template-columns:.72fr 1.28fr}

.download-intro {
  top:90px}

.download-intro p {
  color:#505050}

.download-intro>a {
  color:#0067b8;
  border-color:#0067b8}

.download-list {
  border-top:1px solid #c8c8c8}

.download-list article {
  background:#fff;
  border-bottom:1px solid #d2d2d2;
  margin-bottom:8px;
  padding:17px 20px;
  box-shadow:0 2px 7px #00000014}

.download-list p {
  color:#666}

.download-list article>a {
  color:#0067b8;
  border:2px solid #0067b8;
  border-radius:0}

.download-list article>a:hover {
  color:#fff;
  background:#0067b8}

.download-logo {
  color:var(--product);
  background:#fff;
  border-radius:0}

.download-logo .product-symbol,.download-logo b {
  color:var(--product)}

.leadership {
  background:#fff}

.leader-grid {
  gap:24px;
  max-width:1180px;
  margin:0 auto}

.leader-grid article {
  border:0;
  box-shadow:0 3px 12px #00000021}

.avatar,.avatar.alt {
  background:#0067b8;
  border-radius:0}

.contact {
  padding:45px 5vw 80px}

.contact-inner {
  background:#0067b8;
  max-width:1280px;
  min-height:420px;
  margin:0 auto}

.contact-rings {
  display:none}

footer {
  background:#f2f2f2}

footer>div {
  border-color:#ccc}

@media (width<=1050px) {
  .product-grid,.hero-visual {
  grid-template-columns:repeat(2,1fr)}

.downloads {
  grid-template-columns:1fr}

.download-intro {
  position:static}
}

@media (width<=760px) {
  .site-header {
  height:56px}

.hero {
  padding:58px 22px 38px}

.hero h1 {
  letter-spacing:-1.7px;
  font-size:clamp(38px,11vw,48px)}

.hero-copy>p {
  font-size:16px}

.hero-visual {
  grid-template-columns:1fr;
  margin-top:38px}

.floating-card {
  min-height:100px}

.hero-proof {
  flex-wrap:wrap}

.product-grid {
  grid-template-columns:1fr;
  gap:18px}

.section {
  padding:65px 22px}

.about-copy {
  padding:45px 24px}

.purpose {
  padding-left:22px;
  padding-right:22px}

.download-list article {
  grid-template-columns:48px 1fr}

.contact {
  padding-left:0;
  padding-right:0}

.contact-inner {
  padding:55px 25px}
}

body {
  -webkit-font-smoothing:subpixel-antialiased;
  text-rendering:auto}

h1,h2,h3,strong,b {
  font-synthesis:none;
  text-shadow:none}

.hero h1 {
  letter-spacing:-1.5px;
  font-size:clamp(40px,4.4vw,56px);
  font-weight:650}

.section-heading h2 {
  letter-spacing:-1px;
  font-size:clamp(32px,3.3vw,44px);
  font-weight:650}

.about-copy h2 {
  letter-spacing:-1px;
  font-size:clamp(34px,3.5vw,46px);
  font-weight:650}

.purpose-heading h2 {
  letter-spacing:-1.2px;
  font-size:clamp(38px,4vw,50px);
  font-weight:650}

.download-intro h2 {
  letter-spacing:-1px;
  font-size:clamp(36px,3.8vw,48px);
  font-weight:650}

.contact-inner h2 {
  letter-spacing:-1px;
  font-size:clamp(36px,4vw,50px);
  font-weight:650}

.purpose-cards h3 {
  font-size:21px}

.hero-copy>p,.section-heading>p {
  font-weight:400}

.button.primary,.header-cta {
  align-items:center;
  min-height:42px;
  padding:0 0 0 18px;
  display:inline-flex}

.button.primary span {
  background:#005a9e;
  border-left:1px solid #ffffff59;
  align-self:stretch;
  place-items:center;
  margin-left:18px;
  padding:0 14px;
  display:grid}

.button.secondary {
  align-items:center;
  min-height:42px;
  padding:0 0 0 18px;
  display:inline-flex}

.button.secondary:after {
  content:"→";
  border-left:1px solid #1a1a1a;
  align-self:stretch;
  place-items:center;
  margin-left:18px;
  padding:0 14px;
  display:grid}

.download-list article>a {
  align-items:center;
  min-height:36px;
  padding:0 0 0 12px;
  display:inline-flex}

.download-list article>a span {
  border-left:1px solid #0067b8;
  align-self:stretch;
  place-items:center;
  margin-left:12px;
  padding:0 11px;
  display:grid}

.download-list article>a:hover span {
  border-color:#fff6}

.contact-inner>a {
  border:2px solid #fff;
  align-items:center;
  min-height:44px;
  padding:0 0 0 16px;
  font-size:14px;
  font-weight:600;
  display:inline-flex}

.contact-inner>a span {
  border-left:1px solid #ffffff80;
  align-self:stretch;
  place-items:center;
  margin-left:20px;
  padding:0 14px;
  display:grid}

.hero-visual {
  background:#eef5fb;
  max-width:860px;
  min-height:520px;
  margin:45px auto 0;
  display:block;
  position:relative;
  overflow:hidden}

.hero-visual .visual-grid,.hero-visual .orbit,.hero-visual .core,.hero-visual .metric {
  display:block}

.hero-visual .floating-card {
  border:1px solid #d2d2d2;
  border-left:4px solid #0067b8;
  width:170px;
  min-height:0;
  padding:15px 17px;
  position:absolute;
  box-shadow:0 3px 10px #0000001c}

.hero-visual .floating-card b {
  font-size:11px}

.hero-visual .floating-card span {
  margin-top:7px;
  font-size:12px}

.hero-visual .card-a {
  top:15%;
  left:3%}

.hero-visual .card-b {
  top:22%;
  right:3%}

.hero-visual .card-c {
  bottom:10%;
  left:7%}

.hero-visual .card-d {
  bottom:10%;
  right:4%}

.hero-visual .metric {
  color:#0067b8;
  text-align:center;
  background:#fff;
  border:2px solid #0067b8;
  width:140px;
  padding:10px 14px;
  top:3%;
  bottom:auto;
  right:41%}

.hero-visual .core {
  border:12px solid #fff;
  border-radius:50%;
  outline:1px solid #bdd6e8;
  width:160px;
  height:160px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  box-shadow:0 12px 30px #00000024}

.hero-visual .core img {
  object-fit:cover;
  width:100%;
  height:100%}

.hero-visual .orbit-one {
  width:390px;
  height:390px}

.hero-visual .orbit-two {
  width:260px;
  height:260px}

@media (width<=760px) {
  .hero h1 {
  font-size:clamp(36px,10vw,44px)}

.section-heading h2,.about-copy h2 {
  font-size:34px}

.purpose-heading h2,.download-intro h2,.contact-inner h2 {
  font-size:38px}

.hero-visual {
  min-height:460px}

.hero-visual .orbit-one {
  width:330px;
  height:330px}

.hero-visual .orbit-two {
  width:225px;
  height:225px}

.hero-visual .core {
  width:130px;
  height:130px}

.hero-visual .floating-card {
  width:135px;
  padding:11px}

.hero-visual .floating-card span {
  font-size:9px}

.hero-visual .card-a {
  left:0}

.hero-visual .card-b {
  right:0}

.hero-visual .card-c {
  left:0}

.hero-visual .card-d {
  right:0}

.hero-visual .metric {
  width:108px;
  right:34%}

.hero-actions {
  align-items:stretch}

.button.primary,.button.secondary {
  justify-content:space-between}
}

.desktop-nav a {
  white-space:nowrap;
  background:#fff;
  border:1px solid #d2d2d2;
  align-items:center;
  height:30px;
  padding:0 0 0 10px;
  font-size:10.5px;
  font-weight:600;
  transition:border-color .15s,background .15s;
  display:inline-flex}

.desktop-nav a:after {
  content:"›";
  color:#fff;
  background:#0067b8;
  align-self:stretch;
  place-items:center;
  width:22px;
  height:auto;
  margin-left:8px;
  font-size:17px;
  line-height:1;
  display:grid;
  position:static}

.desktop-nav a:hover {
  background:#f5faff;
  border-color:#0067b8}

.desktop-nav a:hover:after {
  background:#005a9e}

.purpose-cards article {
  scroll-margin-top:80px}

section {
  scroll-margin-top:70px}

.header-cta {
  width:108px;
  min-height:36px;
  padding:0 16px;
  justify-content:center;
  font-weight:600;
  line-height:1;
  white-space:nowrap}

@media (width<=1220px) {
  .brand {
  min-width:245px}

.desktop-nav {
  gap:3px}

.desktop-nav a {
  padding-left:7px;
  font-size:10px}

.desktop-nav a:after {
  width:18px;
  margin-left:6px}

.header-cta {
  display:none}
}

.desktop-nav {
  gap:24px}

.desktop-nav a {
  background:0 0;
  border:0;
  height:auto;
  padding:4px 0;
  font-size:12px;
  font-weight:500}

.desktop-nav a:after {
  content:"›";
  color:#0067b8;
  background:0 0;
  width:auto;
  height:auto;
  margin-left:5px;
  font-size:15px;
  line-height:1;
  transition:transform .15s;
  display:inline;
  position:static}

.desktop-nav a:before {
  content:"";
  background:#0067b8;
  height:2px;
  transition:right .18s;
  position:absolute;
  bottom:0;
  left:0;
  right:100%}

.desktop-nav a:hover {
  background:0 0;
  border:0}

.desktop-nav a:hover:after {
  background:0 0;
  transform:translate(2px)}

.desktop-nav a:hover:before {
  right:0}

@media (width<=1220px) {
  .desktop-nav {
  gap:15px}

.desktop-nav a {
  padding:4px 0;
  font-size:11px}

.desktop-nav a:after {
  width:auto;
  margin-left:4px}
}

body {
  color:#242424;
  -webkit-font-smoothing:auto;
  text-rendering:optimizelegibility;
  font-weight:400}

.desktop-nav a {
  font-weight:400}

.desktop-nav a:after {
  display:none}

.desktop-nav a[href=\#downloads] {
  color:#005a9e;
  border:1px solid #0067b8;
  height:32px;
  padding:0 0 0 11px;
  font-weight:600}

.desktop-nav a[href=\#downloads]:before {
  display:none}

.desktop-nav a[href=\#downloads]:after {
  content:"↓";
  color:#fff;
  background:#0067b8;
  align-self:stretch;
  place-items:center;
  width:28px;
  height:auto;
  margin-left:10px;
  font-size:13px;
  display:grid;
  position:static;
  transform:none}

.desktop-nav a[href=\#downloads]:hover {
  background:#f5faff;
  border:1px solid #005a9e}

.desktop-nav a[href=\#downloads]:hover:after {
  background:#005a9e;
  transform:none}

h1,h2 {
  font-weight:600!important}

h3,.product-card h3,.purpose-cards h3,.leader-grid h3,.brand-name strong,.hero-proof strong {
  font-weight:600}

.hero-copy>p,.section-heading>p,.product-card p,.about-copy p,.purpose-cards p,.download-intro p {
  font-weight:400}

.kicker,.eyebrow,.floating-card b {
  font-weight:600}

.floating-card span {
  font-weight:400}

.hero .eyebrow {
  margin-bottom:28px}

.hero-copy>p {
  margin-top:0}

.desktop-nav>.nav-group {
  align-items:center;
  display:flex;
  position:relative}

.desktop-nav>.nav-group>.nav-trigger,.desktop-nav>.nav-group>.nav-trigger[href=\#downloads] {
  color:#242424;
  background:0 0;
  border:0;
  height:auto;
  padding:4px 0;
  font-size:12px;
  font-weight:500}

.desktop-nav>.nav-group>.nav-trigger:before {
  content:"";
  background:#0067b8;
  height:2px;
  transition:right .18s;
  display:block;
  position:absolute;
  bottom:0;
  left:0;
  right:100%}

.desktop-nav>.nav-group>.nav-trigger:after,.desktop-nav>.nav-group>.nav-trigger[href=\#downloads]:after {
  content:"↓";
  color:#0067b8;
  background:0 0;
  width:auto;
  height:auto;
  margin-left:5px;
  font-size:11px;
  display:inline;
  position:static;
  transform:none}

.desktop-nav>.nav-group:hover>.nav-trigger:before,.desktop-nav>.nav-group:focus-within>.nav-trigger:before {
  right:0}

.desktop-nav>.nav-group:hover>.nav-trigger:after {
  background:0 0;
  transform:translateY(2px)}

.mega-menu {
  z-index:50;
  text-align:left;
  opacity:0;
  visibility:hidden;
  background:#fff;
  width:500px;
  padding:22px;
  transition:opacity .16s,transform .16s,visibility .16s;
  position:absolute;
  top:100%;
  left:-150px;
  transform:translateY(7px);
  box-shadow:0 8px 24px #0000002e}

.download-menu {
  left:auto;
  right:-150px}

.nav-group:hover .mega-menu,.nav-group:focus-within .mega-menu {
  opacity:1;
  visibility:visible;
  transform:translateY(0)}

.mega-menu>strong {
  color:#242424;
  margin-bottom:14px;
  font-size:14px;
  font-weight:600;
  display:block}

.mega-menu>div {
  grid-template-columns:1fr 1fr;
  gap:2px 16px;
  display:grid}

.desktop-nav .mega-menu a {
  color:#333;
  background:0 0;
  border:0;
  align-items:center;
  gap:9px;
  height:auto;
  padding:9px 8px;
  font-size:12px;
  font-weight:400;
  display:flex}

.desktop-nav .mega-menu a:before,.desktop-nav .mega-menu a:after {
  display:none}

.desktop-nav .mega-menu a:hover {
  color:#005a9e;
  background:#f2f2f2;
  border:0}

.mega-menu a span {
  color:#0067b8;
  text-align:center;
  width:22px;
  font-size:16px}

.product-card,.download-list article {
  scroll-margin-top:78px}

@media (width<=1220px) {
  .desktop-nav>.nav-group>.nav-trigger,.desktop-nav>.nav-group>.nav-trigger[href=\#downloads] {
  font-size:11px}

.mega-menu {
  left:-190px}

.download-menu {
  left:auto;
  right:-120px}
}

.site-header {
  order:0}

.about {
  order:3}

.downloads {
  order:6}

.nav-preview {
  width:340px;
  padding:22px;
  left:-95px}

.nav-preview.align-right {
  left:auto;
  right:0}

.nav-preview>p {
  color:#505050;
  margin:0 0 14px;
  font-size:13px;
  line-height:1.55}

.desktop-nav .nav-preview>a {
  color:#0067b8;
  padding:8px 0;
  font-weight:600;
  display:inline-flex}

.desktop-nav .nav-preview>a:hover {
  background:0 0}

.desktop-nav .nav-preview>a span {
  width:auto;
  margin-left:6px;
  font-size:14px}

.brand-name small {
  white-space:nowrap}

.about,.purpose,.products,.downloads,.leadership,.contact {
  scroll-margin-top:68px}

@media (width<=1220px) {
  .nav-preview {
  left:-130px}

.nav-preview.align-right {
  left:auto;
  right:0}

.brand-name small {
  font-size:8px}
}

.desktop-nav>.nav-group>.nav-trigger:after,.desktop-nav>.nav-group>.nav-trigger[href=\#downloads]:after {
  content:none;
  display:none}

.download-list article>a {
  color:#0067b8;
  letter-spacing:.2px;
  text-transform:none;
  text-align:center;
  background:#fff;
  border:1px solid #0067b8;
  border-radius:7px;
  justify-content:center;
  align-items:center;
  min-width:112px;
  min-height:40px;
  padding:0 20px;
  font-size:15px;
  font-weight:600;
  line-height:1;
  transition:transform .2s,box-shadow .2s,background-color .2s,color .2s;
  display:inline-flex;
  box-shadow:0 2px 5px #0067b81f}

.download-list article>a:hover {
  color:#fff;
  background:#0067b8;
  transform:translateY(-1px)scale(1.06);
  box-shadow:0 4px 10px #0067b838}

.download-browser {
  min-width:0}

.view-switcher {
  justify-content:flex-end;
  align-items:center;
  gap:7px;
  margin-bottom:16px;
  display:flex}

.view-switcher>span {
  color:#666;
  margin-right:5px;
  font-size:12px}

.view-switcher button {
  color:#3c4856;
  cursor:pointer;
  background:#fff;
  border:1px solid #b9c5d1;
  border-radius:5px;
  align-items:center;
  gap:7px;
  height:36px;
  padding:0 13px;
  font:600 12px Segoe UI,sans-serif;
  transition:all .2s;
  display:inline-flex}

.view-switcher button:hover {
  color:#0067b8;
  border-color:#0067b8}

.view-switcher button.active {
  color:#fff;
  background:#0067b8;
  border-color:#0067b8;
  box-shadow:0 3px 8px #0067b82e}

.view-switcher i {
  width:14px;
  height:14px;
  display:inline-block}

.grid-icon {
  background:linear-gradient(currentColor 0 0) 0 0/6px 6px no-repeat,linear-gradient(currentColor 0 0) 100% 0/6px 6px no-repeat,linear-gradient(currentColor 0 0) 0 100%/6px 6px no-repeat,linear-gradient(currentColor 0 0) 100% 100%/6px 6px no-repeat}

.list-icon {
  background:linear-gradient(currentColor 0 0) 0 1px/100% 2px no-repeat,linear-gradient(currentColor 0 0) 0 6px/100% 2px no-repeat,linear-gradient(currentColor 0 0) 0 11px/100% 2px no-repeat}

.download-list.is-grid {
  border-top:0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  display:grid}

.download-list.is-grid article {
  border:1px solid #e0e5eb;
  border-radius:8px;
  grid-template-columns:58px 1fr;
  align-content:start;
  min-height:170px;
  margin:0;
  padding:22px;
  transition:transform .2s,box-shadow .2s}

.download-list.is-grid article:hover {
  transform:translateY(-3px);
  box-shadow:0 7px 18px #0000001f}

.download-list.is-grid article>a {
  grid-column:1/-1;
  width:100%;
  margin-top:18px}

@media (width<=760px) {
  .view-switcher {
  justify-content:flex-start}

.download-list.is-grid {
  grid-template-columns:1fr}

.download-list.is-grid article>a {
  grid-column:1/-1}
}

.product-view-switcher {
  max-width:1280px;
  margin:-20px auto 22px}

.product-grid.is-list {
  border:0;
  grid-template-columns:1fr;
  gap:12px;
  display:grid}

.product-grid.is-list .product-card {
  border:1px solid #e0e5eb;
  grid-template:"logo meta description action""logo title description action"/70px minmax(180px,.65fr) minmax(260px,1.35fr) auto;
  align-items:center;
  gap:5px 24px;
  min-height:0;
  padding:22px 25px;
  display:grid;
  box-shadow:0 2px 8px #00000014}

.product-grid.is-list .product-top {
  grid-area:meta;
  justify-content:flex-start;
  gap:10px}

.product-grid.is-list .product-logo {
  grid-area:logo;
  margin:0}

.product-grid.is-list h3 {
  grid-area:title;
  margin:0}

.product-grid.is-list p {
  grid-area:description;
  margin:0}

.product-grid.is-list .product-card>a {
  white-space:nowrap;
  text-align:center;
  border:1px solid #0067b8;
  border-radius:5px;
  grid-area:action;
  margin:0;
  padding:11px 14px}

.product-grid.is-list .product-card>a:hover {
  color:#fff;
  background:#0067b8}

@media (width<=900px) {
  .product-grid.is-list .product-card {
  grid-template-columns:64px 1fr auto;
  grid-template-areas:"logo meta action""logo title action""description description description"}

.product-grid.is-list p {
  margin-top:13px}
}

@media (width<=600px) {
  .product-grid.is-list .product-card {
  align-items:stretch;
  display:flex}

.product-grid.is-list .product-logo {
  margin:18px 0}

.product-grid.is-list .product-card>a {
  margin-top:20px}

.product-view-switcher {
  margin-top:-12px}
}

.hero-about {
  text-align:left;
  background:#fff;
  border-top:4px solid #0067b8;
  grid-template-columns:.8fr 1.2fr;
  gap:24px 70px;
  max-width:1280px;
  margin:62px auto 0;
  padding:48px 52px;
  display:grid;
  box-shadow:0 5px 20px #0000001a}

.hero-about h2 {
  letter-spacing:-1.5px;
  margin:13px 0 0;
  font-size:clamp(30px,3vw,45px);
  line-height:1.08}

.hero-about-copy p {
  color:#505050;
  margin:0 0 14px;
  font-size:15px;
  line-height:1.7}

.hero-principles {
  border-top:1px solid #d8e0e7;
  grid-column:1/-1;
  grid-template-columns:repeat(3,1fr);
  margin-top:12px;
  padding-top:24px;
  display:grid}

.hero-principles span {
  color:#253449;
  align-items:center;
  gap:12px;
  font-size:13px;
  font-weight:600;
  display:flex}

.hero-principles b {
  color:#0067b8;
  font:600 11px monospace}

.desktop-nav>.nav-group>.nav-trigger.active {
  color:#0067b8;
  font-weight:700}

.desktop-nav>.nav-group>.nav-trigger.active:before {
  height:3px;
  right:0}

@media (width<=760px) {
  .hero-about {
  grid-template-columns:1fr;
  gap:22px;
  margin-top:42px;
  padding:34px 24px}

.hero-principles {
  grid-template-columns:1fr;
  gap:14px}

.hero-principles span+span {
  border-left:0;
  padding-left:0}

.mobile-nav a:focus,.mobile-nav a:hover {
  color:#0067b8}
}

.hero {
  text-align:left;
  grid-template-rows:minmax(520px,auto);
  grid-template-columns:minmax(410px,.95fr) minmax(0,1.05fr);
  align-items:stretch;
  column-gap:36px;
  min-height:0;
  padding:48px 5vw;
  display:grid}

.hero-about {
  grid-area:1/1;
  align-self:stretch;
  margin:0;
  padding:34px 36px;
  display:block}

.hero-copy {
  grid-area:1/2;
  max-width:none;
  margin:0}

.hero .eyebrow {
  justify-content:flex-start}

.hero-copy>p {
  margin-left:0;
  margin-right:0}

.hero-actions {
  justify-content:flex-start}

.hero-proof {
  justify-content:flex-start;
  margin-left:0;
  margin-right:0}

.hero-visual {
  grid-area:1/2;
  align-self:stretch;
  max-width:none;
  min-height:520px;
  margin:0}

.hero-about h2 {
  margin-bottom:22px;
  font-size:clamp(26px,2.25vw,34px);
  line-height:1.14}

.hero-about-copy {
  text-align:justify;
  text-justify:inter-word;
  -webkit-hyphens:auto;
  hyphens:auto;
  margin-top:0}

.hero-about-copy p {
  margin:0 0 11px;
  font-size:13.5px;
  line-height:1.58}

.hero-principles {
  flex-direction:column;
  gap:0;
  margin-top:18px;
  padding-top:4px;
  display:flex}

.hero-principles span {
  border-bottom:1px solid #d8e0e7;
  padding:16px 0;
  font-size:14px}

.hero-principles span+span {
  border-left:0;
  padding-left:0}

.hero-principles article {
  border-bottom:1px solid #d8e0e7;
  padding:12px 0}

.hero-principles article strong {
  color:#132b4c;
  font-size:14px;
  font-weight:650;
  display:block}

.hero-principles article p {
  color:#607086;
  margin:5px 0 0;
  font-size:12px;
  line-height:1.45}

@media (width<=900px) {
  .hero {
  text-align:center;
  flex-direction:column;
  display:flex}

.hero-about {
  text-align:left;
  order:1;
  margin:0 auto}

.hero-visual {
  order:2;
  width:100%;
  margin:45px auto 0}

.hero-principles {
  grid-template-columns:1fr}
}

.cart-status {
  cursor:pointer;
  color:#0067b8!important;
  box-shadow:none!important;
  background:0 0!important;
  border:0!important;
  border-left:1px solid #c9d2dc!important;
  margin-left:8px!important;
  padding:0 0 0 14px!important;
  font-weight:650!important}

.product-actions {
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:auto;
  padding-top:22px;
  display:grid}

.product-card .product-actions>a,.product-card .product-actions>button {
  text-transform:none;
  letter-spacing:0;
  cursor:pointer;
  border:1px solid #0067b8;
  border-radius:6px;
  justify-content:center;
  align-items:center;
  min-height:40px;
  margin:0;
  padding:9px 12px;
  font:600 13px/1.15 Segoe UI,sans-serif;
  transition:all .2s;
  display:flex}

.product-card .product-actions>a {
  color:#fff;
  background:#0067b8}

.product-card .product-actions>a:hover {
  background:#005a9e;
  transform:translateY(-1px)}

.product-card .product-actions>a.enquire-button {
  color:#33465d;
  background:#fff;
  border-color:#9aa8b8}

.product-card .product-actions>a.enquire-button:hover {
  color:#0067b8;
  background:#fff;
  border-color:#0067b8}

.product-card .product-actions>a.download-button {
  color:#33465d;
  background:#fff;
  border-color:#9aa8b8}

.product-card .product-actions>a.download-button:hover {
  color:#0067b8;
  background:#fff;
  border-color:#0067b8}

.product-card .product-actions>button {
  color:#0067b8;
  background:#fff}

.product-card .product-actions>button:hover {
  background:#eaf4fb;
  transform:translateY(-1px)}

.product-card .product-actions>button.added {
  color:#126a3b;
  background:#eaf7ef;
  border-color:#18864b}

.product-grid.is-list .product-actions {
  grid-area:action;
  min-width:330px;
  margin:0;
  padding:0}

@media (width<=1100px) {
  .product-grid.is-list .product-actions {
  min-width:285px}

.product-card .product-actions>a,.product-card .product-actions>button {
  padding-left:8px;
  padding-right:8px;
  font-size:12px}
}

@media (width<=600px) {
  .product-actions {
  grid-template-columns:1fr}

.product-grid.is-list .product-actions {
  width:100%;
  min-width:0;
  margin-top:18px}

.cart-status {
  border-top:1px solid #d5dde5;
  border-left:0;
  width:100%;
  padding:9px 0 0;
  margin:8px 0 0!important}

.product-view-switcher {
  flex-wrap:wrap}
}

.product-plans {
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:20px;
  display:grid}

.product-coming-soon {
  color:#0067b8!important;
  text-transform:uppercase;
  letter-spacing:1.2px;
  margin:20px 0 0!important;
  font-size:12px!important;
  font-weight:700;
  line-height:1.2!important}

.product-card.is-plan-action-disabled .product-plans,
.product-card.is-plan-action-disabled .product-actions {
  opacity:.38;
  filter:grayscale(.75);
  pointer-events:none;
  user-select:none}

.product-card.is-plan-action-disabled .product-plans {
  margin-top:10px}

.product-plans>span {
  background:#f8fafc;
  border:1px solid #d9e1e9;
  border-radius:6px;
  flex-wrap:wrap;
  align-content:center;
  gap:2px 5px;
  min-height:54px;
  padding:9px 10px;
  display:flex}

.product-plans b {
  color:#34465d;
  text-transform:uppercase;
  letter-spacing:.5px;
  width:100%;
  font-size:11px}

.product-plans strong {
  color:#0067b8;
  font-size:15px}

.product-plans small {
  color:#69778a;
  font-size:9px;
  line-height:1.3}

.product-grid.is-list .product-card {
  grid-template-rows:auto auto auto;
  grid-template-areas:"logo meta description action""logo title description action""logo plans description action"}

.product-grid.is-list .product-plans {
  grid-area:plans;
  align-self:end;
  max-width:350px;
  margin-top:12px}

.header-cart {
  color:#005a9e;
  white-space:nowrap;
  cursor:pointer;
  background:#fff;
  border:1px solid #0067b8;
  border-radius:5px;
  align-items:center;
  gap:7px;
  height:40px;
  margin-left:8px;
  padding:0 11px;
  font:600 12px Segoe UI,sans-serif;
  display:inline-flex}

.header-cart>span {
  font-size:15px}

.header-cart b {
  color:#fff;
  background:#0067b8;
  border-radius:10px;
  place-items:center;
  min-width:20px;
  height:20px;
  padding:0 5px;
  font-size:10px;
  display:grid}

.cart-backdrop {
  z-index:1000;
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
  background:#0714277a;
  justify-content:flex-end;
  display:flex;
  position:fixed;
  inset:0}

.cart-drawer {
  color:#17263b;
  background:#fff;
  width:min(470px,100%);
  height:100%;
  padding:28px;
  overflow:auto;
  box-shadow:-14px 0 42px #0003}

.cart-heading {
  border-bottom:1px solid #dde4eb;
  justify-content:space-between;
  align-items:flex-start;
  padding-bottom:20px;
  display:flex}

.cart-heading span {
  color:#0067b8;
  letter-spacing:1.4px;
  text-transform:uppercase;
  font-size:10px;
  font-weight:700}

.cart-heading h2 {
  letter-spacing:-1px;
  margin:5px 0 0;
  font-size:30px}

.cart-heading>button {
  color:#33465d;
  cursor:pointer;
  background:#fff;
  border:1px solid #cbd4de;
  border-radius:50%;
  width:36px;
  height:36px;
  font-size:24px;
  line-height:1}

.cart-items article {
  border-bottom:1px solid #e2e8ee;
  grid-template-columns:45px 1fr auto;
  align-items:start;
  gap:13px;
  padding:20px 0;
  display:grid}

.cart-product-mark {
  color:#0067b8;
  background:#eaf4fb;
  place-items:center;
  width:42px;
  height:42px;
  font-size:20px;
  display:grid}

.cart-items h3 {
  margin:0 0 5px;
  font-size:15px}

.cart-items p {
  color:#68778a;
  margin:0;
  font-size:11px}

.cart-items article>b {
  color:#0067b8;
  font-size:13px}

.quantity-control {
  border:1px solid #c8d3df;
  border-radius:5px;
  align-items:center;
  margin-top:12px;
  display:inline-flex;
  overflow:hidden}

.quantity-control button {
  color:#0067b8;
  cursor:pointer;
  background:#f3f6f9;
  border:0;
  width:32px;
  height:30px;
  font-size:18px}

.quantity-control strong {
  text-align:center;
  min-width:34px;
  font-size:12px}

.empty-cart {
  text-align:center;
  padding:70px 20px}

.empty-cart>span {
  font-size:42px}

.empty-cart h3 {
  margin:15px 0 7px}

.empty-cart p {
  color:#68778a}

.cart-summary {
  background:#f3f7fb;
  border-radius:8px;
  margin-top:25px;
  padding:20px}

.cart-summary p {
  justify-content:space-between;
  margin:0 0 7px;
  display:flex}

.cart-summary small {
  color:#6a788b;
  font-size:10px}

.cart-summary>button,.checkout-form>button[type=submit],.checkout-success button {
  color:#fff;
  cursor:pointer;
  background:#0067b8;
  border:0;
  border-radius:5px;
  width:100%;
  min-height:44px;
  margin-top:18px;
  font-weight:650}

.checkout-form {
  padding-top:24px}

.checkout-form>p {
  color:#5c6d81;
  font-size:13px;
  line-height:1.6}

.checkout-form>label:not(.payment-option) {
  color:#33465d;
  margin-top:15px;
  font-size:12px;
  font-weight:600;
  display:block}

.checkout-form input:not([type=radio]) {
  border:1px solid #bdc9d5;
  border-radius:5px;
  width:100%;
  height:42px;
  margin-top:6px;
  padding:0 11px;
  font:14px Segoe UI,sans-serif}

.checkout-form .back-button {
  color:#0067b8;
  cursor:pointer;
  background:0 0;
  border:0;
  width:100%;
  margin-top:9px;
  font-weight:600}

.payment-option {
  cursor:pointer;
  border:1px solid #ccd6e0;
  border-radius:6px;
  align-items:center;
  gap:12px;
  margin-top:11px;
  padding:14px;
  display:flex}

.payment-option:has(input:checked) {
  background:#eff7fc;
  border-color:#0067b8}

.payment-option input {
  accent-color:#0067b8}

.payment-option span {
  flex-direction:column;
  gap:3px;
  display:flex}

.payment-option b {
  font-size:13px}

.payment-option small,.gateway-note {
  color:#6d7b8d;
  font-size:10px}

.gateway-note {
  text-align:center;
  margin-top:15px;
  line-height:1.5;
  display:block}

.checkout-success {
  text-align:center;
  padding:65px 15px}

.checkout-success>span {
  color:#178349;
  background:#e4f5eb;
  border-radius:50%;
  place-items:center;
  width:56px;
  height:56px;
  margin:auto;
  font-size:28px;
  display:grid}

.checkout-success h3 {
  font-size:21px}

.checkout-success p {
  color:#627186;
  font-size:13px;
  line-height:1.6}

@media (width<=1220px) {
  .header-cta {
  display:none}

.site-header {
  padding-left:3vw;
  padding-right:3vw}

.brand {
  min-width:250px}

.desktop-nav {
  gap:16px}
}

@media (width<=1100px) {
  .product-grid.is-list .product-card {
  grid-template-columns:64px 1fr auto;
  grid-template-areas:"logo meta action""logo title action""description description description""plans plans plans"}

.product-grid.is-list .product-plans {
  max-width:none}
}

@media (width<=760px) {
  .header-cart {
  margin-left:auto}

.product-plans {
  grid-template-columns:1fr}

.product-grid.is-list .product-plans {
  max-width:none;
  margin-top:16px}

.cart-drawer {
  padding:22px}

.cart-items article {
  grid-template-columns:40px 1fr}

.cart-items article>b {
  grid-column:2}
}

.home-landing {
  background:linear-gradient(122deg,#f8fbfe 0%,#eef6fc 54%,#e2f0fa 54%,#f7fbfe 100%);
  order:1;
  grid-template-columns:1.02fr .98fr;
  align-items:center;
  gap:6vw;
  min-height:650px;
  padding:76px 5vw;
  scroll-margin-top:56px;
  display:grid}

.home-copy {
  width:100%;
  max-width:720px}

.home-kicker {
  color:#0067b8;
  letter-spacing:1.8px;
  text-transform:uppercase;
  font-size:11px;
  font-weight:750;
  display:block}

.home-copy h2 {
  letter-spacing:-1.5px;
  margin:24px 0;
  font-size:clamp(26px,2.25vw,34px);
  line-height:1.14}

.home-copy h2 em {
  color:#0067b8;
  font-style:normal;
  display:block}

.home-copy>p {
  color:#4d6076;
  max-width:650px;
  margin:0;
  font-size:18px;
  line-height:1.65}

.home-actions {
  gap:11px;
  margin-top:31px;
  display:flex}

.home-actions a {
  border:1px solid #0067b8;
  border-radius:5px;
  justify-content:center;
  align-items:center;
  min-height:46px;
  padding:0 22px;
  font-size:13px;
  font-weight:650;
  display:inline-flex}

.home-actions a:first-child {
  color:#fff;
  background:#0067b8;
  min-height:38px;
  padding:0 18px;
  font-weight:400}

.home-actions a:last-child {
  color:#0067b8;
  background:#fff}

.home-system {
  background:#fff;
  border:1px solid #d5e1eb;
  min-height:590px;
  padding:35px;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 50px #18406324}

.home-system:before {
  content:"";
  pointer-events:none;
  background-image:linear-gradient(#0067b80f 1px,#0000 1px),linear-gradient(90deg,#0067b80f 1px,#0000 1px);
  background-size:32px 32px;
  position:absolute;
  inset:0}

.system-heading,.system-core,.system-path,.system-products {
  z-index:1;
  position:relative}

.system-heading span {
  color:#0067b8;
  letter-spacing:1.5px;
  text-transform:uppercase;
  font-size:10px;
  font-weight:750;
  display:block}

.system-heading strong {
  color:#213c59;
  max-width:420px;
  margin-top:8px;
  font-size:20px;
  line-height:1.3;
  display:block}

.system-core {
  color:#fff;
  background:#0b315d;
  align-items:center;
  gap:15px;
  width:max-content;
  margin:31px auto;
  padding:13px 19px;
  display:flex;
  box-shadow:0 9px 22px #0b315d33}

.system-core img {
  object-fit:contain;
  background:#fff;
  width:47px;
  height:47px}

.system-core span {
  max-width:120px;
  font-size:11px;
  line-height:1.4}

.system-path {
  grid-template-columns:1fr 1fr;
  gap:12px;
  display:grid}

.system-path article {
  background:#fffffff0;
  border:1px solid #d5e2ed;
  border-top:3px solid #0067b8;
  min-height:107px;
  padding:16px}

.system-path b {
  color:#93a7ba;
  font:10px monospace}

.system-path strong {
  color:#14395f;
  margin:7px 0 5px;
  font-size:15px;
  display:block}

.system-path span {
  color:#64768b;
  font-size:10px;
  line-height:1.4}

.system-products {
  flex-wrap:wrap;
  justify-content:center;
  gap:7px;
  margin-top:22px;
  display:flex}

.system-products span {
  color:#005d9f;
  text-transform:uppercase;
  letter-spacing:.5px;
  background:#e9f4fb;
  border-radius:14px;
  padding:7px 10px;
  font-size:9px;
  font-weight:700}

@media (width<=1000px) {
  .home-landing {
  grid-template-columns:1fr;
  min-height:0}

.home-copy {
  max-width:850px}

.home-copy h2 em {
  display:inline}
}

@media (width<=760px) {
  .home-landing {
  padding:58px 22px}

.home-copy h2 {
  letter-spacing:-1.5px;
  font-size:clamp(26px,8vw,34px)}

.home-copy>p {
  font-size:16px}

.home-actions {
  flex-direction:column}
}

.contact-inner.contact-form-layout {
  background:linear-gradient(132deg,#005a9e,#0078c8);
  grid-template-columns:.78fr 1.22fr;
  align-items:center;
  gap:7vw;
  min-height:590px;
  padding:68px 7%;
  display:grid}

.contact-copy {
  z-index:1;
  position:relative}

.contact-copy h2 {
  letter-spacing:-2.5px;
  margin:22px 0 18px;
  line-height:1.03}

.contact-copy .kicker.light {
  color:#ff9b9b}

.contact-copy p {
  color:#cfe5f7;
  max-width:430px;
  font-size:14px;
  line-height:1.7}

.contact-copy>a {
  color:#fff;
  border-bottom:1px solid #ffffff8c;
  margin-top:22px;
  padding-bottom:7px;
  font-size:16px;
  display:inline-block}

.contact-phone {
  color:#d8edfb;
  letter-spacing:.4px;
  margin-top:13px;
  font-size:15px;
  font-weight:600;
  display:block}

.contact-form {
  z-index:2;
  color:#20344b;
  background:#fff;
  padding:32px;
  position:relative;
  box-shadow:0 14px 38px #00254b40}

.contact-form label {
  color:#2c4159;
  text-transform:uppercase;
  letter-spacing:.45px;
  margin-bottom:17px;
  font-size:12px;
  font-weight:650;
  display:block}

.contact-form input,.contact-form textarea {
  color:#17283b;
  background:#fbfcfd;
  border:1px solid #bdcbd8;
  border-radius:5px;
  outline:none;
  width:100%;
  margin-top:7px;
  font:14px Segoe UI,sans-serif;
  transition:all .2s;
  display:block}

.contact-form input {
  height:44px;
  padding:0 12px}

.contact-form textarea {
  resize:vertical;
  min-height:126px;
  padding:11px 12px}

.contact-form input:focus,.contact-form textarea:focus {
  border-color:#0067b8;
  box-shadow:0 0 0 3px #0067b81a}

.contact-actions {
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  display:grid}

.contact-actions button {
  color:#263b51;
  cursor:pointer;
  background:#fff;
  border:1px solid #7f91a4;
  border-radius:5px;
  justify-content:center;
  align-items:center;
  gap:7px;
  min-height:43px;
  padding:8px;
  font:600 12px Segoe UI,sans-serif;
  transition:all .2s;
  display:inline-flex}

.contact-actions button:hover:not(:disabled) {
  color:#0067b8;
  border-color:#0067b8;
  transform:translateY(-1px);
  box-shadow:0 4px 10px #00447a1f}

.contact-actions button:disabled {
  cursor:not-allowed;
  opacity:.42}

.contact-actions button span {
  font-size:16px}

.contact-form>small {
  color:#6a788a;
  margin-top:13px;
  font-size:10px;
  line-height:1.45;
  display:block}

@media (width<=900px) {
  .contact-inner.contact-form-layout {
  grid-template-columns:1fr;
  gap:35px}

.contact-copy h2 br {
  display:none}
}

@media (width<=600px) {
  .contact-inner.contact-form-layout {
  padding:50px 22px}

.contact-form {
  padding:23px}

.contact-actions {
  grid-template-columns:1fr}

.contact-actions button {
  font-size:13px}
}

.contact-tabs {
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin-bottom:0;
  display:grid}

.contact-tabs button {
  color:#2b4057;
  cursor:pointer;
  background:#fff;
  border:0;
  border-radius:0;
  justify-content:center;
  align-items:center;
  gap:7px;
  min-height:42px;
  padding:7px 9px;
  font:600 12px Segoe UI,sans-serif;
  transition:all .2s;
  display:flex}

.contact-tabs button:hover {
  color:#0067b8}

.contact-tabs button.active {
  color:#005a9e;
  background:#eef7fc;
  box-shadow:inset 0 -2px #0067b8}

.contact-tabs button span {
  font-size:15px}

.contact-tabs button span svg {
  color:#16a05d;
  width:18px;
  height:18px;
  display:block}

.direct-icon svg {
  color:#16a05d;
  width:31px;
  height:31px}

.contact-tabs+.direct-message-panel {
  border-radius:0 0 6px 6px}

.direct-message-panel {
  text-align:center;
  background:#f8fafc;
  border:1px solid #d9e2ea;
  border-radius:6px;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:330px;
  padding:35px 20px;
  display:flex}

.direct-icon {
  color:#0067b8;
  background:#e5f2fa;
  border-radius:50%;
  place-items:center;
  width:55px;
  height:55px;
  font-size:25px;
  display:grid}

.direct-message-panel h3 {
  margin:18px 0 8px;
  font-size:21px}

.direct-message-panel p {
  color:#627287;
  max-width:340px;
  margin:0;
  font-size:13px;
  line-height:1.55}

.direct-message-panel button,.email-contact-form>button {
  color:#fff;
  cursor:pointer;
  background:#0067b8;
  border:0;
  border-radius:5px;
  min-width:180px;
  min-height:44px;
  margin-top:23px;
  font:650 13px Segoe UI,sans-serif}

.direct-message-panel small {
  color:#748195;
  margin-top:11px;
  font-size:10px}

.sms-contact-form {
  text-align:left;
  grid-template-columns:1fr;
  gap:14px;
  width:100%;
  margin-top:22px;
  display:grid}

.sms-contact-form[hidden] {
  display:none}

.sms-contact-form label {
  color:#34465d;
  gap:6px;
  font-size:12px;
  font-weight:600;
  display:grid}

.sms-contact-form input {
  color:#1d2c3d;
  background:#fff;
  border:1px solid #c9d4df;
  border-radius:5px;
  width:100%;
  min-height:42px;
  padding:9px 11px;
  font:400 13px Segoe UI,sans-serif}

.sms-contact-form input:focus {
  border-color:#0067b8;
  outline:2px solid #0067b826}

.direct-message-panel .sms-contact-form>button {
  grid-column:1/-1;
  justify-self:center;
  margin-top:3px}

.email-contact-form label {
  margin-bottom:15px}

.email-contact-form>button {
  width:100%;
  margin-top:2px}

.email-contact-form textarea {
  min-height:105px}

@media (width<=600px) {
  .contact-tabs {
  grid-template-columns:repeat(3,1fr)}

.contact-tabs button {
  padding-left:4px;
  padding-right:4px;
  font-size:10px}

.direct-message-panel {
  min-height:270px}

}

.metric>span {
  letter-spacing:1.5px;
  font-size:12px;
  font-weight:700}

.about-team-image {
  background:#dfe8f1;
  grid-area:2/2;
  width:100%;
  height:320px;
  margin:24px 0 0;
  position:relative;
  overflow:hidden;
  box-shadow:0 8px 24px #0e2b4e24}

.about-team-image:after {
  content:"";
  background:linear-gradient(#0000 55%,#051c3ab8);
  position:absolute;
  inset:0}

.about-team-image img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block}

.about-team-image figcaption {
  z-index:1;
  color:#fff;
  letter-spacing:.2px;
  font-size:15px;
  font-weight:600;
  position:absolute;
  bottom:25px;
  left:34px;
  right:34px}

.home-landing>.about-team-image {
  grid-area:1/2;
  width:100%;
  height:500px;
  margin:0}

@media (width<=900px) {
  .about-team-image {
  order:3;
  width:100%;
  height:320px;
  margin-top:42px}

.about-team-image figcaption {
  text-align:left;
  font-size:13px;
  bottom:20px;
  left:22px;
  right:22px}
}

@media (width<=1000px) {
  .home-landing>.about-team-image {
  grid-area:2/1;
  height:380px;
  margin-top:35px}
}

.purpose {
  background:#eaf4fb;
  justify-content:center;
  align-items:center;
  display:flex}

.purpose-cards {
  width:min(100%,1100px)}

@media (width<=760px) {
  .purpose {
  padding-left:22px;
  padding-right:22px;
  display:flex}

.purpose-cards {
  grid-template-columns:1fr}
}

.purpose-symbol,.purpose-cards article:last-child .purpose-symbol {
  width:auto;
  height:auto;
  box-shadow:none;
  color:#0067b8;
  background:0 0;
  border:0;
  border-radius:0;
  margin:10px 0 26px;
  font:300 64px/1 Segoe UI Symbol,Segoe UI,sans-serif;
  display:block}

.mission-symbol {
  font-size:58px}

.mission-symbol svg {
  width:64px;
  height:64px;
  display:block;
  overflow:visible}

.mission-ring {
  fill:none;
  stroke:#0067b8;
  stroke-width:9px}

.mission-core {
  fill:#0067b8}

.mission-arrow {
  fill:#0067b8;
  stroke:#0067b8;
  stroke-width:7px;
  stroke-linecap:round;
  stroke-linejoin:round}

.purpose-cards article,.purpose-cards article:last-child {
  text-align:left;
  border-top:4px solid #0067b8;
  grid-template-rows:120px auto auto 1fr;
  align-content:start;
  display:grid}

.purpose-cards .purpose-symbol,.purpose-cards article:last-child .purpose-symbol {
  justify-self:start;
  margin:10px 0 0}

.purpose-cards .mission-symbol {
  text-align:left;
  width:64px}

.purpose-cards .mission-symbol svg {
  margin:0;
  transform:translate(-7px)}

.products .product-suite-heading {
  background:#f7fbfe;
  border-top:4px solid #0067b8;
  border-bottom:1px solid #d6e3ed;
  align-items:center;
  gap:70px;
  margin-bottom:34px;
  padding:38px 44px;
  position:relative}

.product-suite-heading h2 {
  margin-top:14px}

.product-suite-detail {
  border-left:1px solid #b9d3e6;
  padding-left:34px}

.product-suite-detail>p {
  color:#4f6074;
  max-width:590px;
  margin:0 0 22px;
  font-size:15px;
  line-height:1.65}

.product-suite-detail ul {
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
  display:grid}

.product-suite-detail li {
  color:#263b51;
  padding-left:22px;
  font-size:13px;
  font-weight:600;
  line-height:1.45;
  position:relative}

.product-suite-detail li:before {
  content:"";
  background:#0067b8;
  width:10px;
  height:2px;
  position:absolute;
  top:.62em;
  left:0}

@media (width<=760px) {
  .products .product-suite-heading {
  padding:30px 24px;
  display:block}

.product-suite-detail {
  border-top:1px solid #b9d3e6;
  border-left:0;
  margin-top:26px;
  padding:24px 0 0}
}

.products .product-suite-heading,.products .product-view-switcher,.products .product-grid {
  width:100%;
  max-width:1280px;
  margin-left:auto;
  margin-right:auto}

.products .product-suite-heading {
  grid-template-columns:1fr 1fr}

.product-identity {
  align-items:center;
  gap:20px;
  margin-bottom:22px;
  display:flex}

.product-identity .product-logo {
  flex:none;
  margin:0}

.product-identity h3 {
  margin:0;
  font-size:21px;
  line-height:1.25}

.product-card {
  border:1px solid #dce5ed;
  border-top:3px solid #0067b8;
  transition:transform .25s,box-shadow .25s,border-color .25s;
  position:relative;
  overflow:hidden;
  box-shadow:0 8px 24px #133c5e17}

.product-card:after {
  content:"";
  pointer-events:none;
  background:radial-gradient(circle,#0067b817,#0067b800 70%);
  border-radius:50%;
  width:150px;
  height:150px;
  transition:transform .3s;
  position:absolute;
  top:-70px;
  right:-70px}

.product-card:hover {
  border-color:#a9cbe2;
  transform:translateY(-6px);
  box-shadow:0 16px 38px #133c5e29}

.product-card:hover:after {
  transform:scale(1.25)}

.product-grid.is-list .product-card {
  grid-template:"identity description action""plans description action"/minmax(250px,.8fr) minmax(260px,1.2fr) auto}

.product-grid.is-list .product-identity {
  grid-area:identity;
  margin:0}

.product-grid.is-list .product-identity .product-logo,.product-grid.is-list .product-identity h3 {
  margin:0}

.product-grid.is-list .product-plans {
  grid-area:plans}

@media (width<=1100px) {
  .product-grid.is-list .product-card {
  grid-template-columns:1fr auto;
  grid-template-areas:"identity action""description description""plans plans"}

.product-grid.is-list .product-card>p {
  margin-top:18px}
}

@media (width<=760px) {
  .products .product-suite-heading,.products .product-view-switcher,.products .product-grid {
  max-width:none}

.product-identity {
  gap:16px}

.product-identity h3 {
  font-size:20px}
}

.leadership {
  background:linear-gradient(#fff 0,#f5f9fc 100%);
  position:relative;
  overflow:hidden}

.leadership:before {
  content:"";
  pointer-events:none;
  border:1px solid #0067b81f;
  border-radius:50%;
  width:420px;
  height:420px;
  position:absolute;
  top:30px;
  right:-180px;
  box-shadow:0 0 0 70px #0067b809,0 0 0 140px #0067b806}

.leadership-heading {
  z-index:1;
  border-bottom:1px solid #cfdde8;
  grid-template-columns:1fr 1fr;
  align-items:end;
  gap:80px;
  width:100%;
  max-width:1280px;
  margin:0 auto 46px;
  padding-bottom:34px;
  display:grid;
  position:relative}

.leadership-heading h2 {
  letter-spacing:-1.6px;
  margin:16px 0 0;
  font-size:clamp(36px,3.6vw,52px);
  line-height:1.08}

.leadership-heading>p {
  color:#536579;
  max-width:590px;
  margin:0;
  font-size:16px;
  line-height:1.75}

.leadership-cards {
  z-index:1;
  gap:28px;
  max-width:1280px;
  margin:0 auto;
  position:relative}

.leadership-cards .leader-card {
  background:#fff;
  border:1px solid #d7e2eb;
  border-top:4px solid #0067b8;
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
  gap:0;
  min-height:0;
  padding:0;
  transition:transform .28s,box-shadow .28s;
  display:grid;
  position:relative;
  overflow:hidden;
  box-shadow:0 12px 32px #1237561a}

.leadership-cards .leader-card:hover {
  transform:translateY(-7px);
  box-shadow:0 22px 48px #1237562b}

.leader-content {
  flex-direction:column;
  padding:38px 34px 32px;
  display:flex}

.leader-content .leader-role {
  color:#0067b8;
  letter-spacing:1.5px;
  text-transform:uppercase;
  font-size:10px;
  font-weight:750}

.leader-content h3 {
  margin:10px 0 18px;
  font-size:31px;
  line-height:1.1}

.leader-content p {
  color:#536579;
  margin:0;
  font-size:14px;
  line-height:1.75}

.leader-content a {
  color:#0067b8;
  width:max-content;
  margin-top:auto;
  padding-top:24px;
  font-size:13px;
  font-weight:650}

.leader-content a b {
  margin-left:12px;
  transition:transform .2s;
  display:inline-block}

.leader-content a:hover b {
  transform:translate(3px,-3px)}

@media (width<=1100px) {
.leader-content {
  padding:30px 25px}

.leader-content h3 {
  font-size:27px}
}

@media (width<=820px) {
  .leadership-heading {
  grid-template-columns:1fr;
  gap:22px}

.leadership-cards {
  grid-template-columns:1fr}

}

@media (width<=560px) {
.leadership-heading h2 br {
  display:none}
}

.leadership {
  padding-top:42px;
  scroll-margin-top:56px}

.leader-content p {
  text-align:left;
  hyphens:none;
  width:100%}

@media (width<=760px) {
  .leadership {
  padding-top:34px;
  scroll-margin-top:56px}

.leader-content p {
  text-align:left}
}

.footer-brand .brand-name strong {
  white-space:nowrap}

footer>p {
  color:#52677d;
  font-size:14px}

footer>.footer-legal {
  flex-direction:column;
  grid-column:1/-1;
  align-items:flex-start;
  gap:6px;
  display:flex}

.footer-legal span:last-child {
  color:#52677d;
  letter-spacing:.7px;
  font-weight:650}

footer {
  border-top:1px solid #d2d2d2;
  grid-template-columns:1fr auto 1fr;
  gap:42px;
  padding:34px 5vw}

footer>.footer-legal {
  text-align:center;
  white-space:nowrap;
  border:0;
  grid-column:auto;
  align-items:center;
  padding:0}

footer>p {
  text-align:right;
  margin:0}

.footer-brand {
  gap:15px}

.footer-brand .company-logo {
  width:64px;
  height:64px}

.footer-brand .brand-name strong {
  letter-spacing:2.3px;
  font-size:18px}

.footer-brand .brand-name small {
  letter-spacing:.7px;
  text-transform:none;
  color:#53657a;
  margin-top:5px;
  font-size:10px;
  font-weight:600}

@media (width<=900px) {
  footer {
  grid-template-columns:1fr 1fr}

.footer-brand {
  grid-column:1}

.footer-legal {
  text-align:right!important;
  grid-column:2!important;
  align-items:flex-end!important}

footer>p {
  text-align:left;
  border-top:1px solid #d2d2d2;
  grid-column:1/-1;
  padding-top:20px}
}

@media (width<=600px) {
  footer {
  grid-template-columns:1fr;
  gap:22px}

.footer-brand,.footer-legal,footer>p {
  grid-column:1!important}

.footer-legal {
  white-space:normal;
  text-align:left!important;
  align-items:flex-start!important}

footer>p {
  padding-top:18px}
}

.site-header {
  border-bottom:1px solid #edf1f4;
  height:64px}

.site-header .brand {
  gap:13px}

.site-header .company-logo {
  width:50px;
  height:50px}

.site-header .brand-name strong {
  letter-spacing:2.1px;
  font-size:16px}

.site-header .brand-name small {
  letter-spacing:.9px;
  color:#53657a;
  font-size:10px;
  font-weight:600}

@media (width<=760px) {
  .site-header {
  height:62px}

.site-header .company-logo {
  width:48px;
  height:48px}
}

.testimonials {
  color:#fff;
  background:#073b70;
  overflow:hidden}

.trust-heading {
  grid-template-columns:1fr 1fr;
  align-items:end;
  gap:80px;
  width:100%;
  max-width:1280px;
  margin:0 auto 42px;
  display:grid}

.trust-heading h2 {
  letter-spacing:-1.7px;
  margin:16px 0 0;
  font-size:clamp(36px,3.8vw,54px);
  line-height:1.08}

.trust-heading>p {
  color:#536579;
  max-width:590px;
  margin:0;
  font-size:16px;
  line-height:1.75}

.client-grid {
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  width:100%;
  max-width:1280px;
  margin:0 auto;
  display:grid}

.client-grid article {
  background:linear-gradient(145deg,#fff,#f5f9fc);
  border:1px solid #d8e3ec;
  border-top:3px solid #0067b8;
  min-height:150px;
  padding:27px 26px 24px;
  transition:transform .25s,box-shadow .25s;
  position:relative;
  box-shadow:0 7px 20px #12375612}

.client-grid article:hover {
  transform:translateY(-5px);
  box-shadow:0 15px 32px #12375621}

.client-grid article>span {
  color:#b7cad9;
  font:700 24px/1 monospace;
  position:absolute;
  top:20px;
  right:22px}

.client-grid strong {
  color:#173b5d;
  max-width:230px;
  font-size:17px;
  display:block}

.client-grid small {
  color:#687b8d;
  margin-top:12px;
  font-size:12px;
  line-height:1.5;
  display:block}

.testimonial-heading {
  z-index:1;
  position:relative}

.testimonial-heading .kicker,.testimonial-heading>p {
  color:#b9d7f2}

.testimonial-heading h2 {
  color:#fff}

.testimonial-grid {
  z-index:1;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  width:100%;
  max-width:1280px;
  margin:0 auto;
  display:grid;
  position:relative}

.testimonial-grid>article {
  background:#ffffff13;
  border:1px solid #fff3;
  border-top:3px solid #61b8ef;
  flex-direction:column;
  min-height:350px;
  padding:30px;
  transition:transform .25s,background .25s;
  display:flex;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 40px #000f2633}

.testimonial-grid>article:hover {
  background:#ffffff1c;
  transform:translateY(-6px)}

.sample-label {
  color:#bfe2f8;
  letter-spacing:1px;
  text-transform:uppercase;
  background:#61b8ef29;
  width:max-content;
  padding:6px 8px;
  font-size:9px;
  font-weight:750}

.quote-mark {
  color:#ffffff24;
  font:100 100px/1 Georgia,serif;
  position:absolute;
  top:12px;
  right:24px}

.testimonial-grid blockquote {
  color:#fff;
  margin:38px 0 30px;
  font-size:17px;
  line-height:1.72;
  position:relative}

.testimonial-grid article>footer {
  background:0 0;
  border-top:1px solid #ffffff2e;
  margin-top:auto;
  padding:20px 0 0;
  display:block}

.testimonial-grid article>footer b,.testimonial-grid article>footer small {
  display:block}

.testimonial-grid article>footer b {
  font-size:13px}

.testimonial-grid article>footer small {
  color:#aacbe4;
  margin-top:6px;
  font-size:10px}

main {
  flex-direction:column;
  display:flex}

footer {
  order:11}

@media (width<=900px) {
  .trust-heading {
  grid-template-columns:1fr;
  gap:22px}

.client-grid,.testimonial-grid {
  grid-template-columns:1fr 1fr}

.testimonial-grid>article:last-child {
  grid-column:1/-1}
}

@media (width<=600px) {
  .client-grid,.testimonial-grid {
  grid-template-columns:1fr}

.testimonial-grid>article:last-child {
  grid-column:auto}

.trust-heading h2 br {
  display:none}
}

.client-grid,.testimonial-grid {
  scroll-snap-type:x mandatory;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  scrollbar-color:#69aeda #dceaf4;
  justify-content:flex-start;
  gap:20px;
  max-width:1280px;
  padding:4px 3px 18px;
  scroll-padding-left:3px;
  display:flex;
  overflow:auto visible}

.client-grid article {
  scroll-snap-align:start;
  flex:0 0 360px}

.testimonial-grid>article,.testimonial-grid>article:last-child {
  scroll-snap-align:start;
  flex:0 0 410px;
  grid-column:auto}

.client-grid::-webkit-scrollbar {
  height:7px}

.testimonial-grid::-webkit-scrollbar {
  height:7px}

.client-grid::-webkit-scrollbar-track {
  background:#dceaf4;
  border-radius:10px}

.testimonial-grid::-webkit-scrollbar-track {
  background:#dceaf4;
  border-radius:10px}

.client-grid::-webkit-scrollbar-thumb {
  background:#69aeda;
  border-radius:10px}

.testimonial-grid::-webkit-scrollbar-thumb {
  background:#69aeda;
  border-radius:10px}

.testimonial-grid {
  scrollbar-color:#66b9ed #ffffff24}

.testimonial-grid::-webkit-scrollbar-track {
  background:#ffffff24}

.testimonial-grid::-webkit-scrollbar-thumb {
  background:#66b9ed}

.clients,.testimonials {
  scroll-margin-top:68px}

@media (width<=1500px) {
  .desktop-nav {
  gap:11px}

.desktop-nav>.nav-group>.nav-trigger {
  font-size:11px}
}

@media (width<=1100px) {
  .site-header .brand {
  min-width:64px}

.site-header .brand-name {
  display:none}
}

main>footer {
  gap:32px;
  height:64px;
  min-height:64px;
  max-height:64px;
  padding:0 5vw;
  overflow:hidden}

main>footer .footer-brand {
  gap:13px}

main>footer .footer-brand .company-logo {
  width:50px;
  height:50px}

main>footer .footer-brand .brand-name strong {
  letter-spacing:2.1px;
  font-size:16px}

main>footer .footer-brand .brand-name small {
  margin-top:3px;
  font-size:9px;
  line-height:1.2}

main>footer>.footer-legal {
  gap:2px;
  font-size:8px;
  line-height:1.2}

main>footer>p {
  font-size:12px;
  line-height:1.2}

@media (width<=900px) {
  main>footer {
  height:auto;
  min-height:0;
  max-height:none;
  padding:18px 5vw;
  overflow:visible}
}

@media (width<=600px) {
  main>footer {
  padding:18px 22px}
}

@media (width<=950px) {
  .desktop-nav {
  gap:6px}

.desktop-nav>.nav-group>.nav-trigger {
  font-size:10px}
}

@media (width<=760px) {
  .client-grid article {
  flex-basis:82vw}

.testimonial-grid>article,.testimonial-grid>article:last-child {
  flex-basis:84vw}
}

.continuous-viewport {
  scroll-snap-type:none;
  scrollbar-width:none;
  max-width:1280px;
  padding:4px 0 18px;
  display:block;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,#0000,#000 3% 97%,#0000);
  mask-image:linear-gradient(90deg,#0000,#000 3% 97%,#0000)}

.continuous-viewport::-webkit-scrollbar {
  display:none}

.continuous-track {
  will-change:transform;
  gap:20px;
  width:max-content;
  animation:46s linear infinite trust-flow;
  display:flex}

.continuous-viewport:hover .continuous-track,.continuous-viewport:focus-within .continuous-track {
  animation-play-state:paused}

.client-track article {
  flex:none;
  width:360px}

.testimonial-track>article,.testimonial-track>article:last-child {
  background:#ffffff13;
  border:1px solid #fff3;
  border-top:3px solid #61b8ef;
  flex-direction:column;
  flex:none;
  width:410px;
  min-height:350px;
  padding:30px;
  transition:transform .25s,background .25s;
  display:flex;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 40px #000f2633}

.testimonial-track>article:hover {
  background:#ffffff1c;
  transform:translateY(-6px)}

@keyframes trust-flow {
  0% {
  transform:translate(calc(-50% - 10px))}

to {
  transform:translate(0)}
}

@media (width<=760px) {
  .client-track article {
  width:82vw}

.testimonial-track>article,.testimonial-track>article:last-child {
  width:84vw}

.continuous-track {
  animation-duration:38s}
}

@media (prefers-reduced-motion:reduce) {
  .continuous-viewport {
  overflow-x:auto;
  -webkit-mask-image:none;
  mask-image:none}

.continuous-track {
  animation:none}
}

.clients {
  background:linear-gradient(135deg,#faf8ff 0%,#f1ebff 100%)}

.clients .kicker {
  color:#6d28d9}

.clients .trust-heading h2 {
  color:#3b176f}

.clients .trust-heading>p {
  color:#655777}

.clients .client-grid article {
  background:linear-gradient(145deg,#fff 0%,#f5f0ff 100%);
  border-color:#7c3aed #ded2f4 #ded2f4;
  box-shadow:0 8px 22px #5b2c911c}

.clients .client-grid article:hover {
  box-shadow:0 16px 34px #5b2c9130}

.clients .client-grid article>span {
  color:#a78bfa}

.clients .client-grid strong {
  color:#4c1d95}

.clients .client-grid small {
  color:#6b5c7e}

.clients .continuous-viewport {
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  padding-left:0;
  padding-right:0;
  -webkit-mask-image:linear-gradient(90deg,#0000,#000 1.5% 98.5%,#0000);
  mask-image:linear-gradient(90deg,#0000,#000 1.5% 98.5%,#0000)}

.testimonials {
  color:#173b5d;
  background:#fff}

.testimonials .testimonial-heading .kicker {
  color:#0067b8}

.testimonials .testimonial-heading h2 {
  color:#123f69}

.testimonials .testimonial-heading>p {
  color:#536579}

.testimonials .continuous-viewport {
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  padding-left:0;
  padding-right:0;
  -webkit-mask-image:linear-gradient(90deg,#0000,#000 1.5% 98.5%,#0000);
  mask-image:linear-gradient(90deg,#0000,#000 1.5% 98.5%,#0000)}

.testimonial-track>article,.testimonial-track>article:last-child {
  background:linear-gradient(145deg,#fff 0%,#edf7fd 100%);
  border-color:#1684cc #cfe0ee #cfe0ee;
  box-shadow:0 8px 22px #124d7d1c}

.testimonial-track>article:hover {
  background:linear-gradient(145deg,#fff 0%,#e2f2fc 100%);
  box-shadow:0 16px 34px #124d7d2e}

.testimonials .sample-label {
  color:#0067a9;
  background:#dff1fb}

.testimonials .quote-mark {
  color:#0067b824}

.testimonials .testimonial-grid blockquote {
  color:#173b5d}

.testimonials .testimonial-grid article>footer {
  border-top-color:#c8deec}

.testimonials .testimonial-grid article>footer b {
  color:#0f4d7c}

.testimonials .testimonial-grid article>footer small {
  color:#5d7d96}

.cosmic-inspiration {
  text-align:center;
  background:linear-gradient(145deg,#06142d 0%,#0a2850 52%,#11143b 100%);
  order:2;
  padding:76px 5vw;
  overflow:hidden}

.cosmic-inspiration figure {
  width:min(100%,780px);
  margin:0 auto}

.cosmic-image-frame {
  background:linear-gradient(145deg,#61b8efcc,#9470ff66,#e6b252a6);
  padding:1px;
  position:relative;
  box-shadow:0 28px 70px #0000006b,0 0 70px #2980d233}

.cosmic-image-frame:after {
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  box-shadow:inset 0 0 70px #040d2257}

.cosmic-image-frame img {
  width:100%;
  height:auto;
  display:block}

.cosmic-inspiration figcaption {
  color:#dcecff;
  letter-spacing:0;
  margin-top:24px;
  font-size:clamp(8px,1.15vw,16px);
  font-weight:550;
  line-height:1.5;
  white-space:nowrap}

.cosmic-inspiration figcaption:before {
  content:"";
  background:linear-gradient(90deg,#46a7e8,#9b7af3);
  width:54px;
  height:2px;
  margin:0 auto 20px;
  display:block}

.hero {
  order:3}

.intro-strip {
  order:4}

.purpose {
  order:5}

.products {
  order:6}

.clients {
  order:7}

.testimonials {
  order:8}

.leadership {
  order:9}

.contact {
  order:10}

main>footer {
  order:11}

@media (width<=760px) {
  .cosmic-inspiration {
  padding:52px 22px}

.cosmic-inspiration figcaption {
  margin-top:20px;
  font-size:clamp(8px,1.15vw,10px)}
}
