@font-face {
  font-family:Care Sans;
  src:url('/health_public_site/static/fonts/dm-sans-400.ttf') format('truetype');
  font-weight:400;
  font-display:swap
}

@font-face {
  font-family:Care Sans;
  src:url('/health_public_site/static/fonts/dm-sans-700.ttf') format('truetype');
  font-weight:600 900;
  font-display:swap
}

:root {
  --bg:#070c19;
  --panel:#101929;
  --ink:#f4f7ff;
  --muted:#a0aec6;
  --faint:#73849e;
  --line:#ffffff16;
  --blue:#5689ff;
  --cyan:#66efd9;
  --violet:#a191ff;
  --sans:'Care Sans',Arial,sans-serif
}

* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:106px
}
body {
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased
}
button,input {
  font:inherit
}
button,a,summary {
  -webkit-tap-highlight-color:transparent
}
a {
  color:inherit;
  text-decoration:none
}
button {
  cursor:pointer
}
button:focus-visible,a:focus-visible,summary:focus-visible {
  outline:3px solid var(--cyan);
  outline-offset:5px
}
img {
  display:block;
  max-width:100%
}
h1,h2,h3,p {
  margin:0
}
h1,h2,h3 {
  line-height:1.08;
  letter-spacing:-.05em;
  font-weight:700
}
p {
  color:var(--muted)
}
button {
  color:inherit
}
canvas {
  display:block
}
.shell {
  width:calc(100% - 112px);
  max-width:1380px;
  margin-inline:auto
}
.skip {
  position:fixed;
  top:-80px;
  left:20px;
  z-index:100;
  padding:12px 24px;
  background:white;
  color:#111
}
.skip:focus {
  top:12px
}
.gradient-text {
  background:linear-gradient(110deg,#fff 0%,#90b7ff 30%,#87efdc 62%,#b5a4ff 95%);
  background-size:180% auto;
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  animation:color-drift 9s ease-in-out infinite alternate
}
.icon {
  display:inline-block;
  width:22px;
  height:22px;
  flex:none;
  background:currentColor;
  mask:var(--icon) center/contain no-repeat;
  -webkit-mask:var(--icon) center/contain no-repeat
}
.i-heart-pulse {
  --icon:url('/health_public_site/static/icons/heart-pulse.svg')
}
.i-calendar {
  --icon:url('/health_public_site/static/icons/calendar.svg')
}
.i-users {
  --icon:url('/health_public_site/static/icons/users.svg')
}
.i-shield-check {
  --icon:url('/health_public_site/static/icons/shield-check.svg')
}
.i-activity {
  --icon:url('/health_public_site/static/icons/activity.svg')
}
.i-clipboard-check {
  --icon:url('/health_public_site/static/icons/clipboard-check.svg')
}
.i-video {
  --icon:url('/health_public_site/static/icons/video.svg')
}
.i-credit-card {
  --icon:url('/health_public_site/static/icons/credit-card.svg')
}
.i-message-square {
  --icon:url('/health_public_site/static/icons/message-square.svg')
}
.i-gauge {
  --icon:url('/health_public_site/static/icons/gauge.svg')
}
.i-stethoscope {
  --icon:url('/health_public_site/static/icons/stethoscope.svg')
}
.i-check {
  --icon:url('/health_public_site/static/icons/check.svg')
}
.i-clock {
  --icon:url('/health_public_site/static/icons/clock.svg')
}
.i-pill {
  --icon:url('/health_public_site/static/icons/pill.svg')
}
.i-globe {
  --icon:url('/health_public_site/static/icons/globe.svg')
}

.site-header {
  position:sticky;
  top:0;
  z-index:50;
  background:#070c19d9;
  backdrop-filter:blur(24px);
  border-bottom:1px solid var(--line)
}
.header-shell {
  width:calc(100% - 112px);
  max-width:1380px;
  margin:auto;
  display:flex;
  align-items:center;
  gap:28px;
  min-height:88px
}
.brand {
  display:inline-flex;
  align-items:center;
  gap:9px;
  flex:none
}
.brand>img {
  width:37px;
  height:37px;
  filter:brightness(1.8)
}
.brand>span {
  font-size:28px;
  font-weight:700;
  letter-spacing:-.055em;
  line-height:1
}
.brand-dot {
  color:#78e6d7
}
.site-header nav {
  margin-left:auto;
  display:flex;
  gap:27px;
  align-items:center
}
.site-header nav>a,.sign-in {
  font-size:12px;
  color:#bcc8dc;
  white-space:nowrap;
  transition:color .2s
}
.site-header nav>a:hover,.sign-in:hover {
  color:#fff
}
.header-actions {
  display:flex;
  align-items:center;
  gap:25px
}
.sign-in .arrow {
  font-size:15px;
  margin-left:8px
}
.button {
  position:relative;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:26px;
  min-height:56px;
  padding:17px 23px;
  border-radius:9px;
  font-weight:700;
  font-size:13px;
  line-height:1.5;
  border:1px solid transparent;
  transition:transform .25s,box-shadow .25s,background .25s;
  isolation:isolate
}
.button.primary {
  background:linear-gradient(125deg,#6f95ff,#4879fa 60%,#6d7af7);
  border-color:#a4beff55;
  color:white;
  box-shadow:0 4px 20px #547fff25,inset 0 1px #ffffff30
}
.button.primary:before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(110deg,transparent 10%,#ffffff24 45%,transparent 70%);
  background-size:220% 100%;
  z-index:-1;
  animation:button-light 7s ease-in-out infinite
}
.button.primary:hover {
  box-shadow:0 9px 35px #547fff55;
  transform:translateY(-3px)
}
.button.ghost {
  border-color:#ffffff22;
  background:#ffffff05;
  color:#e2eafb
}
.button.ghost:hover {
  background:#ffffff0c;
  transform:translateY(-3px);
  border-color:#ffffff44
}
.button.small {
  font-size:11px;
  min-height:42px;
  padding:11px 16px;
  gap:18px;
  border-radius:7px
}
.arrow {
  font-size:21px;
  font-weight:400;
  line-height:1;
  transition:transform .2s
}
.button:hover .arrow {
  transform:translate(2px,-2px)
}
.menu-toggle {
  display:none;
  border:1px solid var(--line);
  background:#ffffff05;
  border-radius:7px;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px
}
.menu-toggle span {
  height:1px;
  width:17px;
  background:var(--ink)
}
.eyebrow {
  display:flex;
  align-items:center;
  gap:11px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.17em;
  color:#aebbd2;
  line-height:1.6
}
.status-dot {
  position:relative;
  display:inline-block;
  width:6px;
  height:6px;
  flex:none;
  border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 12px #66efd999
}
.status-dot:after {
  content:'';
  position:absolute;
  inset:-5px;
  border:1px solid #66efd933;
  border-radius:50%;
  animation:dot-pulse 3s ease-out infinite
}
.hero {
  position:relative;
  isolation:isolate;
  overflow:clip;
  min-height:770px
}
.hero-grid {
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:linear-gradient(#6a90c808 1px,transparent 1px),linear-gradient(90deg,#6a90c808 1px,transparent 1px);
  background-size:76px 76px;
  mask-image:linear-gradient(black,transparent)
}
.hero-aurora {
  position:absolute;
  z-index:-1;
  pointer-events:none;
  border-radius:50%;
  filter:blur(65px);
  opacity:.38;
  animation:aurora-drift 16s ease-in-out infinite alternate
}
.aurora-one {
  width:680px;
  height:680px;
  right:-70px;
  top:-150px;
  background:radial-gradient(ellipse,#2449b78c,transparent 68%)
}
.aurora-two {
  width:640px;
  height:400px;
  left:20%;
  bottom:-150px;
  background:radial-gradient(ellipse,#088c828c,transparent 70%);
  animation-delay:-8s
}
.hero-layout {
  position:relative;
  display:grid;
  grid-template-columns:1.03fr 1fr;
  align-items:center;
  gap:0;
  padding-block:60px 35px;
  min-height:685px
}
.hero-copy {
  position:relative;
  z-index:4;
  padding-bottom:10px
}
.hero h1 {
  font-size:clamp(60px,6.6vw,101px);
  letter-spacing:-.066em;
  line-height:1.02;
  margin:27px 0 28px
}
.hero-description {
  max-width:460px;
  font-size:15px;
  line-height:1.9;
  color:#a4b2ca
}
.hero-actions {
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:32px;
  flex-wrap:wrap
}
.hero-proof {
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:37px;
  font-size:10px;
  line-height:1.7;
  color:#8292ad
}
.hero-proof strong {
  color:#b0c0d7;
  font-weight:400
}
.proof-stack {
  display:flex;
  padding-left:0
}
.proof-stack .icon {
  box-sizing:content-box;
  width:15px;
  height:15px;
  padding:8px;
  margin-left:5px;
  color:#819abf
}
.proof-stack {
  border:1px solid var(--line);
  border-radius:30px;
  padding:3px 7px;
  background:#ffffff03
}
.hero-bottom {
  position:relative;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:16px 0 30px
}
.scroll-cue {
  display:flex;
  align-items:center;
  gap:14px;
  color:#8291aa;
  font-size:9px;
  letter-spacing:.07em
}
.scroll-line {
  width:45px;
  height:1px;
  background:linear-gradient(90deg,#6ceddc,transparent);
  position:relative;
  overflow:hidden
}
.scroll-line:after {
  content:'';
  position:absolute;
  inset:0;
  background:#a7fff1;
  transform:translateX(-100%);
  animation:scan 3.5s ease-in-out infinite
}
.motion-toggle {
  display:flex;
  align-items:center;
  gap:8px;
  color:#91a2bd;
  font-size:9px;
  background:#ffffff04;
  border:1px solid var(--line);
  padding:8px 12px;
  border-radius:30px;
  min-height:34px
}
.motion-toggle:hover {
  color:#fff;
  border-color:#ffffff44
}
.motion-symbol {
  font-size:11px;
  min-width:12px
}
.network-scene {
  position:relative;
  min-height:600px;
  perspective:1100px;
  isolation:isolate;
  margin-left:-26px
}
.network-canvas {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:.9;
  z-index:-1
}
.scene-halo {
  position:absolute;
  inset:12% 0 9%;
  border-radius:50%;
  background:radial-gradient(ellipse,#376ad033 0%,#244b9a14 40%,transparent 67%);
  filter:blur(20px)
}
.scene-content {
  position:absolute;
  inset:0;
  transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transform-style:preserve-3d;
  transition:transform .8s cubic-bezier(.2,.7,.2,1)
}
.core-node {
  position:absolute;
  left:49%;
  top:48%;
  transform:translate(-50%,-50%);
  width:138px;
  height:138px;
  display:grid;
  place-items:center;
  z-index:3
}
.core-face {
  width:109px;
  height:109px;
  border:1px solid #c1e9ff5e;
  border-radius:29px;
  background:linear-gradient(135deg,#3a639255,#102e57b3);
  box-shadow:0 0 60px #5d9dff33,inset 0 0 25px #8ddfff17;
  backdrop-filter:blur(15px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  transform:rotate(-8deg);
  animation:core-breathe 5s ease-in-out infinite alternate
}
.core-face>.icon {
  width:43px;
  height:43px;
  color:#a9f8ed;
  filter:drop-shadow(0 0 10px #6bfff4b3)
}
.core-face>span {
  font-size:8px;
  letter-spacing:.18em;
  font-weight:700;
  color:#d8f6ff
}
.core-ring {
  position:absolute;
  inset:-19px;
  border:1px solid #81dbff28;
  border-radius:50%;
  box-shadow:0 0 40px #81dbff08;
  animation:core-ripple 5s ease-in-out infinite
}
.core-ring:before,.core-ring:after {
  content:'';
  position:absolute;
  inset:-27px;
  border:1px solid #81dbff12;
  border-radius:50%
}
.core-ring:after {
  inset:-54px;
  border-style:dashed;
  animation:rotate 80s linear infinite
}
.scene-card {
  position:absolute;
  display:grid;
  grid-template-columns:34px 1fr;
  gap:10px 11px;
  padding:18px;
  border:1px solid #a4ceff33;
  border-radius:13px;
  background:linear-gradient(125deg,#1d304fe3,#101a2dde);
  box-shadow:0 20px 60px #0004,inset 0 1px #ffffff0b;
  backdrop-filter:blur(24px);
  z-index:4;
  animation:float 7s ease-in-out infinite;
  transform:translateZ(25px)
}
.scene-card small {
  display:block;
  font-size:7px;
  letter-spacing:.1em;
  color:#7f9ec5;
  font-weight:700
}
.scene-card strong {
  display:block;
  font-size:11px;
  letter-spacing:-.02em;
  font-weight:700;
  color:#e4efff;
  margin-top:4px
}
.scene-icon {
  height:34px;
  width:34px;
  border:1px solid #88b8ff28;
  background:#508bff16;
  border-radius:9px;
  color:#89b6ff;
  display:grid;
  place-items:center
}
.scene-icon .icon {
  width:18px;
  height:18px
}
.scene-icon.mint {
  background:#59d8bd13;
  border-color:#71f3d627;
  color:#79dcca
}
.scene-icon.violet {
  background:#a184ff13;
  border-color:#a184ff27;
  color:#b6a3fc
}
.scene-clinical {
  top:49px;
  left:24px;
  width:286px;
  animation-delay:-1s
}
.scene-visit {
  top:224px;
  right:-15px;
  width:256px;
  animation-delay:-3s
}
.scene-billing {
  left:25px;
  bottom:44px;
  width:269px;
  animation-delay:-5s
}
.scene-card-foot {
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  font-size:7px;
  color:#99adcb;
  gap:8px;
  border-top:1px solid #ffffff0b;
  padding-top:10px
}
.vital-wave {
  grid-column:1/-1;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:3px;
  position:relative;
  overflow:hidden
}
.vital-wave i {
  width:3px;
  height:7px;
  border-radius:5px;
  background:#6db4ff;
  box-shadow:0 0 6px #5eaaff4d;
  animation:wave 2.2s ease-in-out infinite
}
.vital-wave i:nth-child(4n) {
  height:24px;
  background:#7aedd9;
  animation-delay:-.5s
}
.vital-wave i:nth-child(6n) {
  height:38px;
  animation-delay:-1.1s
}
.vital-wave i:nth-child(3n) {
  height:17px;
  animation-delay:-1.6s
}
.vital-wave:after {
  content:'';
  position:absolute;
  inset:0;
  width:35%;
  background:linear-gradient(90deg,transparent,#7ceeff14,transparent);
  animation:scan 3s linear infinite
}
.mini-calendar {
  display:flex;
  gap:8px;
  grid-column:1/-1;
  margin-top:4px
}
.mini-calendar>span {
  font-size:9px;
  color:#728aaa;
  background:#ffffff04;
  border:1px solid #ffffff09;
  border-radius:6px;
  flex:1;
  text-align:center;
  padding:8px 0
}
.mini-calendar>.selected {
  color:#b1ffeb;
  background:#4adeb916;
  border-color:#4adeb957;
  box-shadow:0 0 14px #4adeb90f
}
.mini-appointment {
  grid-column:1/-1;
  border-top:1px solid #ffffff0c;
  padding-top:12px;
  display:flex;
  align-items:center;
  gap:8px;
  color:#a1b5ce;
  font-size:8px
}
.mini-appointment>.icon {
  width:12px;
  height:12px;
  margin-left:auto;
  color:#7de8cd
}
.mini-avatar {
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#9ae9ff14;
  color:#8ecfc8
}
.mini-avatar .icon {
  width:12px;
  height:12px
}
.billing-progress {
  grid-column:1/-1;
  height:4px;
  background:#ffffff0d;
  border-radius:20px;
  margin:12px 0 4px;
  overflow:hidden
}
.billing-progress>span {
  display:block;
  width:74%;
  height:100%;
  background:linear-gradient(90deg,#719cff,#ba91ff);
  box-shadow:0 0 10px #af86ff;
  animation:progress-flow 5s ease-in-out infinite
}
.orbit-label {
  position:absolute;
  display:flex;
  align-items:center;
  gap:8px;
  color:#87a2c3;
  font-size:8px;
  letter-spacing:.02em;
  white-space:nowrap
}
.orbit-label .icon {
  width:13px;
  height:13px
}
.label-one {
  right:12px;
  top:127px;
  animation:float 9s ease-in-out infinite
}
.label-two {
  right:33px;
  bottom:92px;
  animation:float 8s ease-in-out infinite reverse
}
.scene-spark {
  position:absolute;
  border-radius:50%;
  width:5px;
  height:5px;
  background:#8ae7ff;
  box-shadow:0 0 20px #8ae7ff,0 0 4px #fff;
  animation:spark 4s ease-in-out infinite
}
.spark-one {
  top:155px;
  right:35%
}
.spark-two {
  bottom:128px;
  left:15px;
  animation-delay:-2s
}
.scene-caption {
  position:absolute;
  bottom:0;
  right:15px;
  font-size:8px;
  color:#667f9c;
  letter-spacing:.05em
}
.capability-ribbon {
  border-block:1px solid var(--line);
  background:#0c1220;
  padding-block:26px
}
.capability-ribbon .shell {
  display:flex;
  justify-content:space-between;
  gap:22px;
  flex-wrap:wrap
}
.capability-ribbon .shell>span {
  display:flex;
  align-items:center;
  gap:9px;
  color:#8497b1;
  font-size:11px
}
.capability-ribbon .icon {
  width:17px;
  height:17px;
  color:#7195c2
}
.site-footer {
  padding-block:45px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-top:1px solid var(--line)
}
.site-footer .brand>span {
  font-size:23px
}
.site-footer .brand>img {
  width:30px;
  height:30px
}
.site-footer p {
  font-size:10px;
  margin-top:10px;
  color:#71849f
}
.footer-links {
  display:flex;
  gap:28px;
  align-items:center
}
.footer-links>a {
  font-size:11px;
  color:#a1b0c7
}
.footer-links .arrow {
  font-size:15px;
  margin-left:10px
}
.site-footer small {
  font-size:9px;
  color:#647795
}
.vu-client {
  --cyan:#80dccb;
  --violet:#de9dcb;
  --blue:#6daafa
}
.vu-client .hero-aurora.aurora-one {
  background:radial-gradient(ellipse,#7e347566,transparent 68%);
  right:-100px
}
.vu-client .hero-aurora.aurora-two {
  background:radial-gradient(ellipse,#267a9977,transparent 70%);
  left:30%;
  bottom:-100px
}
.vu-client .gradient-text {
  background-image:linear-gradient(110deg,#e8fdff,#88dbe9 35%,#afcaff 65%,#e8b3d7)
}
.vu-client .primary {
  background:linear-gradient(115deg,#447fb8,#357b9c 55%,#387d8e);
  border-color:#9dddff55
}
.tenant-brand {
  display:flex;
  align-items:center;
  gap:17px;
  flex:none
}
.tenant-logo {
  display:block;
  background:#f6fafb;
  border-radius:7px;
  padding:6px 11px
}
.tenant-logo img {
  width:134px;
  height:auto
}
.tenant-brand-label {
  font-size:10px;
  color:#8097af;
  max-width:85px;
  line-height:1.4;
  border-left:1px solid var(--line);
  padding-left:16px
}
.vu-client .header-shell {
  gap:24px
}
.vu-client .site-header nav {
  gap:24px
}
.language-toggle {
  display:flex;
  align-items:center;
  gap:3px;
  font-size:10px;
  color:#7b91ac
}
.language-toggle>a {
  padding:5px 8px;
  border-radius:5px
}
.language-toggle>a[aria-current=true] {
  background:#a3dfff15;
  color:#bde8f3
}
.parent-link {
  font-size:10px;
  color:#97bbd0;
  display:inline-flex;
  gap:10px;
  align-items:center;
  margin-bottom:36px;
  max-width:460px
}
.parent-link .arrow {
  font-size:16px;
  flex:none
}
.parent-link:hover {
  color:#ddfaff
}
.tenant-hero h1 {
  font-size:clamp(54px,5.9vw,90px);
  margin-top:22px
}
.tenant-hero .hero-description {
  font-size:14px;
  max-width:460px
}
.tenant-hero .hero-proof {
  max-width:400px;
  font-size:10px;
  margin-top:25px;
  gap:10px
}
.tenant-hero .hero-proof .icon {
  width:16px;
  height:16px;
  color:#73c3be
}
.tenant-hero .hero-layout {
  padding-top:42px
}
.vu-client .core-face {
  background:linear-gradient(135deg,#44709577,#203b4ab3);
  box-shadow:0 0 70px #70c9bf2b,inset 0 0 25px #a1dfd817
}
.vu-client .core-face>.icon {
  color:#bfdee9
}
.vu-client .core-face>span {
  color:#ffcff1
}
.vu-client .core-ring {
  border-color:#c694d930
}
.vu-client .scene-icon.violet {
  color:#e4afd5
}
.vu-client .tenant-brand-label {
  font-size:9px
}
.vu-client .hero-bottom {
  padding-top:8px
}

@keyframes float {
  0%,100% {
    translate:0 0
  }
  50% {
    translate:0 -12px
  }

}
@keyframes rotate {
  to {
    transform:rotate(360deg)
  }

}
@keyframes dot-pulse {
  0% {
    transform:scale(.8);
    opacity:.7
  }
  80%,100% {
    transform:scale(1.7);
    opacity:0
  }

}
@keyframes color-drift {
  to {
    background-position:100% 50%
  }

}
@keyframes aurora-drift {
  to {
    translate:-30px 40px;
    scale:1.15
  }

}
@keyframes core-breathe {
  to {
    box-shadow:0 0 80px #5d9dff55,inset 0 0 30px #8ddfff27;
    translate:0 -7px
  }

}
@keyframes core-ripple {
  50% {
    scale:1.07;
    opacity:.5
  }

}
@keyframes wave {
  50% {
    transform:scaleY(.45);
    opacity:.55
  }

}
@keyframes scan {
  0% {
    transform:translateX(-100%)
  }
  100% {
    transform:translateX(350%)
  }

}
@keyframes progress-flow {
  0%,100% {
    width:38%;
    opacity:.6
  }
  70% {
    width:97%;
    opacity:1
  }

}
@keyframes spark {
  50% {
    opacity:.2;
    scale:.6
  }

}
@keyframes button-light {
  0%,60% {
    background-position:100% 0
  }
  100% {
    background-position:-120% 0
  }

}

@media(min-width:1550px) {
  .hero-layout {
    min-height:750px
  }
  .network-scene {
    min-height:670px
  }
  .scene-clinical {
    left:65px;
    top:70px;
    width:300px
  }
  .scene-visit {
    right:0;
    top:270px;
    width:275px
  }
  .scene-billing {
    left:80px;
    bottom:70px
  }
  .hero {
    min-height:850px
  }

}

@media(max-width:1150px) {
  .shell,.header-shell {
    width:calc(100% - 64px)
  }
  .header-shell {
    gap:22px
  }
  .site-header nav {
    gap:21px
  }
  .header-actions {
    gap:20px
  }
  .hero h1 {
    font-size:70px
  }
  .hero-description {
    font-size:14px
  }
  .network-scene {
    min-height:590px
  }
  .scene-clinical {
    width:260px;
    left:8px;
    top:58px
  }
  .scene-visit {
    width:231px;
    right:-6px;
    top:236px
  }
  .scene-billing {
    width:235px;
    left:10px;
    bottom:61px
  }
  .scene-card {
    padding:15px
  }
  .scene-card strong {
    font-size:10px
  }
  .label-one {
    top:151px;
    right:0;
    font-size:7px
  }
  .label-two {
    right:6px;
    bottom:108px;
    font-size:7px
  }
  .hero-actions .button {
    font-size:12px;
    gap:19px;
    padding:16px 20px
  }
  .hero .eyebrow {
    font-size:8px
  }
  .core-node {
    left:46%;
    top:49%;
    scale:.85
  }
  .tenant-brand-label {
    display:none
  }
  .tenant-hero h1 {
    font-size:65px
  }
  .tenant-hero .hero-description {
    font-size:13px
  }
  .parent-link {
    font-size:9px;
    margin-bottom:31px
  }
  .vu-client .header-shell {
    gap:20px
  }
  .vu-client .site-header nav {
    gap:20px
  }
  .vu-client .header-actions {
    gap:17px
  }
  .capability-ribbon .shell {
    gap:18px
  }
  .capability-ribbon .shell>span {
    font-size:10px;
    gap:7px
  }
  .site-footer {
    gap:20px
  }
  .footer-links {
    gap:18px
  }
  .footer-links>a {
    font-size:10px
  }

}

@media(max-width:900px) {
  .header-shell {
    min-height:77px;
    flex-wrap:wrap;
    gap:0
  }
  .site-header nav {
    order:3;
    flex-basis:100%;
    display:none;
    margin:0;
    padding:22px 0;
    border-top:1px solid var(--line)
  }
  .site-header nav.is-open {
    display:flex
  }
  .header-actions {
    margin-left:auto
  }
  .menu-toggle {
    display:flex
  }
  .brand>span {
    font-size:25px
  }
  .brand>img {
    width:33px;
    height:33px
  }
  .hero-layout {
    grid-template-columns:1fr 1fr;
    min-height:650px
  }
  .hero h1 {
    font-size:61px
  }
  .hero-description {
    font-size:13px
  }
  .hero-actions .button {
    font-size:10px;
    padding:14px 17px;
    min-height:48px;
    gap:14px
  }
  .hero-proof {
    font-size:9px;
    gap:12px
  }
  .proof-stack {
    padding:2px 5px
  }
  .proof-stack .icon {
    width:12px;
    height:12px;
    padding:6px;
    margin-left:0
  }
  .network-scene {
    min-height:535px;
    margin-left:-24px
  }
  .scene-clinical {
    width:233px;
    left:13px;
    top:28px
  }
  .scene-card {
    padding:13px;
    grid-template-columns:28px 1fr;
    gap:8px
  }
  .scene-icon {
    width:28px;
    height:28px;
    border-radius:7px
  }
  .scene-icon .icon {
    width:16px;
    height:16px
  }
  .scene-card strong {
    font-size:9px
  }
  .scene-card small {
    font-size:6px
  }
  .scene-visit {
    width:206px;
    right:-2px;
    top:210px
  }
  .scene-billing {
    width:210px;
    left:5px;
    bottom:37px
  }
  .scene-card-foot {
    font-size:6px
  }
  .core-node {
    left:39%;
    top:48%;
    scale:.7
  }
  .mini-calendar {
    gap:5px
  }
  .mini-calendar>span {
    font-size:8px;
    padding:7px 0
  }
  .label-one {
    top:165px;
    font-size:6px;
    right:3px
  }
  .label-two {
    right:0;
    bottom:83px;
    font-size:6px;
    max-width:105px;
    white-space:normal
  }
  .orbit-label .icon {
    width:10px;
    height:10px
  }
  .scene-caption {
    font-size:6px;
    right:0
  }
  .hero {
    min-height:auto
  }
  .capability-ribbon .shell {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
  }
  .capability-ribbon .shell>span {
    font-size:11px
  }
  .tenant-hero h1 {
    font-size:55px
  }
  .tenant-hero .hero-description {
    font-size:12px
  }
  .tenant-hero .hero-proof {
    font-size:9px
  }
  .parent-link {
    font-size:9px
  }
  .tenant-hero .eyebrow {
    font-size:7px
  }
  .site-footer {
    flex-wrap:wrap
  }
  .site-footer>small {
    flex-basis:100%
  }
  .vu-client .footer-links {
    flex-wrap:wrap
  }
  .vu-client .header-actions {
    gap:15px
  }

}

@media(max-width:640px) {
  html {
    scroll-padding-top:100px
  }
  .shell,.header-shell {
    width:calc(100% - 40px)
  }
  .header-shell {
    min-height:72px
  }
  .brand>span {
    font-size:25px
  }
  .brand>img {
    width:32px;
    height:32px
  }
  .header-actions {
    gap:16px
  }
  .header-actions>.button {
    display:none
  }
  .sign-in {
    font-size:10px
  }
  .sign-in .arrow {
    font-size:14px
  }
  .menu-toggle {
    height:36px;
    width:36px
  }
  .site-header nav {
    flex-direction:column;
    align-items:flex-start;
    gap:22px
  }
  .site-header nav>a {
    font-size:14px
  }
  .hero-layout {
    grid-template-columns:1fr;
    padding-block:47px 20px;
    gap:13px;
    min-height:0
  }
  .hero h1 {
    font-size:clamp(54px,12vw,75px);
    letter-spacing:-.065em;
    line-height:1.02;
    margin-top:24px;
    margin-bottom:25px
  }
  .hero .eyebrow {
    font-size:7px;
    letter-spacing:.12em;
    gap:10px
  }
  .hero-description {
    font-size:13px;
    line-height:1.85;
    max-width:440px
  }
  .hero-actions {
    margin-top:28px;
    gap:12px
  }
  .hero-actions .button {
    font-size:11px;
    gap:18px;
    padding:16px 19px;
    min-height:51px
  }
  .hero-proof {
    margin-top:27px;
    font-size:9px
  }
  .hero-proof .proof-stack .icon {
    height:13px;
    width:13px;
    padding:7px
  }
  .network-scene {
    width:100%;
    max-width:450px;
    margin:0 auto;
    min-height:530px
  }
  .scene-clinical {
    top:38px;
    left:0;
    width:230px
  }
  .scene-visit {
    right:0;
    top:220px;
    width:210px
  }
  .scene-billing {
    left:0;
    bottom:26px;
    width:220px
  }
  .scene-card {
    padding:14px;
    grid-template-columns:30px 1fr;
    gap:9px
  }
  .scene-card strong {
    font-size:9px
  }
  .scene-card small {
    font-size:6px
  }
  .scene-card-foot {
    font-size:7px
  }
  .core-node {
    top:48%;
    left:40%;
    scale:.75
  }
  .scene-icon {
    width:30px;
    height:30px
  }
  .label-one {
    top:171px;
    right:0;
    font-size:7px;
    max-width:125px
  }
  .label-two {
    right:0;
    bottom:75px;
    font-size:7px;
    max-width:102px
  }
  .scene-caption {
    bottom:-9px;
    font-size:7px;
    right:5px
  }
  .hero-bottom {
    padding:22px 0 23px
  }
  .scroll-cue {
    font-size:7px;
    gap:9px;
    max-width:205px
  }
  .scroll-line {
    width:25px
  }
  .motion-toggle {
    font-size:8px;
    padding:7px 9px;
    min-height:32px;
    white-space:nowrap
  }
  .motion-symbol {
    font-size:10px
  }
  .aurora-one {
    right:-250px;
    top:150px
  }
  .aurora-two {
    left:-150px;
    bottom:0
  }
  .capability-ribbon {
    padding-block:22px
  }
  .capability-ribbon .shell {
    grid-template-columns:1fr 1fr;
    gap:17px 20px
  }
  .capability-ribbon .shell>span {
    font-size:10px;
    gap:9px
  }
  .capability-ribbon .icon {
    width:16px;
    height:16px
  }
  .site-footer {
    padding-block:35px;
    align-items:flex-start;
    gap:25px
  }
  .site-footer .brand>span {
    font-size:24px
  }
  .footer-links {
    flex-direction:column;
    align-items:flex-start;
    gap:15px
  }
  .footer-links>a {
    font-size:10px
  }
  .site-footer small {
    font-size:8px
  }
  .tenant-logo {
    padding:6px 8px
  }
  .tenant-logo img {
    width:126px
  }
  .vu-client .header-actions {
    gap:14px
  }
  .language-toggle {
    font-size:10px
  }
  .language-toggle>a {
    padding:5px 7px
  }
  .tenant-hero .hero-layout {
    padding-top:28px
  }
  .parent-link {
    font-size:9px;
    line-height:1.7;
    margin-bottom:28px;
    max-width:310px;
    gap:8px
  }
  .tenant-hero h1 {
    font-size:clamp(50px,11.7vw,73px);
    line-height:1.08
  }
  .tenant-hero .hero-description {
    font-size:13px
  }
  .tenant-hero .hero-actions {
    gap:10px
  }
  .tenant-hero .hero-actions .button {
    font-size:10px;
    gap:14px;
    padding:15px 17px
  }
  .tenant-hero .hero-proof {
    font-size:9px;
    line-height:1.8
  }
  .vu-client .hero-bottom {
    gap:12px;
    padding-top:25px
  }
  .vu-client .motion-toggle {
    font-size:7px;
    gap:5px
  }
  .vu-client .scroll-cue {
    font-size:7px;
    max-width:175px
  }
  .vu-client .scroll-line {
    width:18px
  }
  .vu-client .network-scene {
    margin-top:10px
  }
  .tenant-brand-label {
    display:none
  }

}

/* Motion controls also pause CSS decoration;
 the JS pauses the canvas and flow. */
.motion-paused *,.motion-paused *:before,.motion-paused *:after {
  animation-play-state:paused!important
}
.motion-paused .scene-content {
  transform:none!important
}
.motion-paused .reveal {
  opacity:1!important;
  transform:none!important
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .reveal {
    opacity:1!important;
    transform:none!important
  }
  .scene-content {
    transform:none!important
  }

}

/* Connected product sections */
.section {
  padding:110px 0
}
.section-heading {
  max-width:820px;
  margin-bottom:48px
}
.section-heading h2,.final-cta h2 {
  font-size:clamp(36px,4.8vw,66px);
  line-height:1.08;
  letter-spacing:-2.6px;
  margin:22px 0
}
.section-heading p {
  color:#9baac3;
  font-size:18px;
  line-height:1.7;
  max-width:660px
}
.bento-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:22px
}
.bento {
  position:relative;
  overflow:hidden;
  min-height:370px;
  padding:38px;
  border:1px solid #ffffff13;
  border-radius:26px;
  background:radial-gradient(ellipse at 95% 0%,#164d7044,transparent 65%),#0c1425;
  transition:transform .35s,border-color .35s
}
.bento:hover {
  transform:translateY(-6px);
  border-color:#75d6ff66
}
.bento:nth-child(2) {
  background:radial-gradient(ellipse at 100% 0%,#723df044,transparent 65%),#0c1425
}
.bento:nth-child(4) {
  background:radial-gradient(ellipse at 100% 0%,#12847744,transparent 65%),#0c1425
}
.feature-icon {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:13px;
  color:#70dafa;
  background:#56b8ff12;
  border:1px solid #56b8ff30
}
.feature-icon .icon {
  width:24px;
  height:24px
}
.bento h3 {
  position:relative;
  font-size:27px;
  letter-spacing:-.8px;
  max-width:340px;
  margin:32px 0 14px
}
.bento p {
  position:relative;
  max-width:400px;
  line-height:1.8;
  color:#a4b1c7;
  font-size:15px
}
.bento small {
  display:block;
  margin-top:28px;
  color:#64d9e4;
  font-size:10px;
  letter-spacing:1.7px
}
.bento-art {
  position:absolute;
  width:210px;
  height:160px;
  right:15px;
  top:0;
  opacity:.65
}
.graphic-orbits {
  position:absolute;
  inset:18px;
  transform:rotate(-25deg)
}
.graphic-orbits:before,.graphic-orbits:after,.graphic-orbits i {
  content:'';
  position:absolute;
  inset:10px;
  border:1px solid #72dcff30;
  border-radius:50%;
  animation:orbit-spin 22s linear infinite
}
.graphic-orbits:after {
  inset:27px -12px;
  transform:rotate(60deg);
  border-color:#8b85ff55
}
.graphic-orbits i:before {
  content:'';
  position:absolute;
  top:17px;
  left:5px;
  background:#6ee6fa;
  border-radius:50%;
  width:7px;
  height:7px;
  box-shadow:0 0 20px #6ee6fa
}
.graphic-orbits span {
  position:absolute;
  inset:38px 52px;
  display:grid;
  place-items:center;
  border:1px solid #7bdfff55;
  border-radius:18px;
  background:#1c3e5c80;
  box-shadow:0 0 50px #3795fe33;
  transform:rotate(25deg)
}
.graphic-orbits .icon {
  width:32px;
  height:32px;
  color:#84e5ff
}
.graphic-bars {
  height:120px;
  display:flex;
  align-items:flex-end;
  gap:8px;
  padding:20px;
  transform:rotate(-10deg)
}
.graphic-bars i {
  width:14px;
  height:var(--bar);
  border-radius:4px;
  background:linear-gradient(#7cf0ed,#3d70e944);
  box-shadow:0 0 20px #60caff20;
  animation:bar-breathe 4s ease-in-out infinite alternate
}
.graphic-bars i:nth-child(2n) {
  animation-delay:-2s
}
@keyframes bar-breathe {
  to {
    transform:scaleY(.75);
    transform-origin:bottom
  }

}
@keyframes orbit-spin {
  to {
    rotate:360deg
  }

}
.product-section {
  background:radial-gradient(ellipse at 50% 60%,#172b5144,transparent 65%);
  border-top:1px solid #ffffff08;
  border-bottom:1px solid #ffffff08
}
.product-demo {
  border:1px solid #49638755;
  border-radius:24px;
  overflow:hidden;
  background:#0d1628;
  box-shadow:0 40px 130px #0005,0 0 90px #467cff0b
}
.demo-top {
  display:flex;
  align-items:center;
  gap:22px;
  padding:20px 28px;
  border-bottom:1px solid #ffffff0c;
  color:#9faec7;
  font-size:10px;
  letter-spacing:1.7px
}
.demo-dots {
  color:#536781;
  letter-spacing:6px
}
.demo-caption {
  margin-left:auto;
  letter-spacing:0;
  color:#6e829f
}
.demo-tabs {
  display:flex;
  padding:24px 32px 0;
  gap:12px
}
.demo-tabs button {
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:#9facbf;
  font:inherit;
  font-size:14px;
  padding:12px 22px;
  cursor:pointer;
  transition:.25s
}
.demo-tabs button[aria-selected=true] {
  color:#8de6ff;
  background:#18304a;
  border-color:#5fdaff33;
  box-shadow:0 5px 24px #0003
}
.demo-panel {
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:70px;
  padding:42px
}
.demo-panel[hidden] {
  display:none
}
.demo-copy h3 {
  font-size:34px;
  letter-spacing:-1px;
  line-height:1.15;
  margin:24px 0 16px
}
.demo-copy p {
  font-size:15px;
  line-height:1.8;
  color:#a3b1c9
}
.demo-note {
  display:block;
  margin-top:24px;
  color:#62d8d1;
  font-size:12px
}
.demo-schedule {
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px
}
.demo-schedule:before {
  position:absolute;
  content:'';
  width:1px;
  top:30px;
  bottom:30px;
  left:32px;
  background:linear-gradient(#67d7f5,#7c79f933)
}
.schedule-row {
  position:relative;
  display:flex;
  align-items:center;
  gap:20px;
  padding:24px 20px;
  border:1px solid #ffffff0d;
  background:linear-gradient(110deg,#162740,#131e33);
  border-radius:15px;
  animation:panel-in .45s both
}
.schedule-row:nth-child(2) {
  animation-delay:.08s
}
.schedule-row:nth-child(3) {
  animation-delay:.16s
}
.schedule-time {
  font-size:12px;
  color:#72dcec;
  min-width:40px
}
.schedule-row strong {
  display:block;
  font-size:15px
}
.schedule-row small {
  display:block;
  margin-top:8px;
  font-size:12px;
  color:#8194b1
}
.row-check {
  margin-left:auto;
  color:#6adaca
}
.product-disclaimer {
  font-size:12px;
  color:#8091aa;
  text-align:center;
  margin-top:25px;
  line-height:1.6
}
@keyframes panel-in {
  from {
    opacity:0;
    transform:translateY(12px)
  }
  to {
    opacity:1;
    transform:none
  }

}
.journey {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
  position:relative
}
.journey:before {
  content:'';
  position:absolute;
  height:1px;
  background:linear-gradient(90deg,#4cdde2,#8765e6);
  top:29px;
  left:30px;
  right:100px
}
.journey article {
  position:relative
}
.journey-number {
  position:relative;
  display:grid;
  place-items:center;
  width:60px;
  height:60px;
  border:1px solid #5bd7e555;
  border-radius:50%;
  background:#0b1829;
  color:#7be4ee;
  box-shadow:0 0 40px #37baff16;
  font-size:14px
}
.journey h3 {
  font-size:23px;
  margin:30px 0 13px
}
.journey p {
  color:#91a2bd;
  font-size:14px;
  line-height:1.8
}
.final-cta {
  position:relative;
  overflow:hidden;
  border:1px solid #7898e72b;
  background:#0c1528;
  border-radius:30px;
  text-align:center;
  padding:90px 30px;
  margin-bottom:90px
}
.final-cta>* {
  position:relative
}
.final-cta .cta-glow {
  position:absolute;
  width:500px;
  height:500px;
  border-radius:50%;
  background:#4651ee30;
  filter:blur(85px);
  left:calc(50% - 250px);
  top:-200px
}
.final-cta p {
  color:#a5b2cc;
  margin:25px 0 32px
}
.access-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px
}
.access-card {
  padding:40px;
  border-radius:24px;
  border:1px solid #58cccb30;
  background:radial-gradient(ellipse at top right,#28606744,transparent),#0d1827
}
.access-card>.icon {
  width:34px;
  height:34px;
  color:#67e2dd
}
.access-card h3 {
  font-size:28px;
  letter-spacing:-.8px
}
.access-card p {
  color:#a3b5c5;
  line-height:1.8;
  max-width:400px;
  margin-bottom:28px
}
.access-notes {
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:70px;
  margin-top:54px;
  padding-top:32px;
  border-top:1px solid #ffffff15
}
.access-notes h3 {
  font-size:18px
}
.access-notes p {
  font-size:14px;
  color:#a0aec2;
  line-height:1.8
}
.access-notes a {
  font-size:14px;
  color:#7ce2d8
}
.reveal {
  transition:opacity .7s,transform .7s
}
.reveal.pending {
  opacity:0;
  transform:translateY(24px)
}

@media(max-width:900px) {
  .section {
    padding:75px 0
  }
  .demo-panel {
    gap:28px;
    padding:30px
  }
  .demo-copy h3 {
    font-size:29px
  }
  .bento {
    padding:28px
  }
  .bento-art {
    right:-35px;
    opacity:.4
  }
  .journey {
    gap:20px
  }
  .access-notes {
    gap:30px
  }
  .section-heading h2,.final-cta h2 {
    letter-spacing:-1.7px
  }

}

@media(max-width:640px) {
  .bento-grid,.demo-panel,.access-grid,.access-notes {
    grid-template-columns:1fr
  }
  .section {
    padding:64px 0
  }
  .section-heading {
    margin-bottom:30px
  }
  .bento {
    min-height:340px
  }
  .bento h3 {
    font-size:26px
  }
  .bento-art {
    right:0;
    opacity:.6
  }
  .demo-top {
    padding:18px 16px;
    font-size:8px;
    gap:10px
  }
  .demo-caption {
    font-size:9px
  }
  .demo-tabs {
    padding:17px 12px 0;
    gap:3px
  }
  .demo-tabs button {
    font-size:11px;
    padding:12px 10px;
    flex:1
  }
  .demo-panel {
    padding:24px;
    gap:24px
  }
  .demo-copy h3 {
    font-size:28px
  }
  .schedule-row {
    padding:19px 14px;
    gap:10px
  }
  .journey {
    grid-template-columns:1fr 1fr;
    gap:28px
  }
  .journey:before {
    display:none
  }
  .journey h3 {
    margin-top:20px;
    font-size:21px
  }
  .final-cta {
    border-radius:22px;
    padding:65px 22px;
    margin-bottom:60px
  }
  .final-cta h2 {
    font-size:39px
  }
  .access-card {
    padding:28px
  }
  .access-notes {
    gap:24px
  }
  .section-heading p {
    font-size:16px
  }

}

@media(prefers-reduced-motion:reduce) {
  .reveal.pending {
    opacity:1;
    transform:none
  }
  .graphic-orbits:before,.graphic-orbits:after,.graphic-orbits i,.graphic-bars i,.schedule-row {
    animation:none
  }

}
