/* SnapHealth website: product roadmap, Visus and guided demonstration. */
[hidden] { display: none !important; }
.brand { width: 190px; }
.footer-brand { width: 185px; }
.main-nav { gap: clamp(16px, 2.5vw, 32px); }
.main-nav [aria-current="page"] { color: var(--sr-mint-dark); }
.intro-wordmark { width: 270px; }
.hero h1 { font-size: clamp(52px, 5.3vw, 72px); }
.hero-product-inset > .viewer-capture { border-radius: 5px; }
.viewer-capture { position: relative; overflow: hidden; aspect-ratio: 1710 / 885; background: #0d1520; }
.viewer-capture > img { display: block; width: 100%; max-width: none; height: auto; transform: translateY(-10.15%); }
.phase-tag { display: inline-flex; align-items: center; flex-shrink: 0; padding: 5px 9px; border: 1px solid #dfe5e8; border-radius: 5px; color: #5a6972; background: #f5f7f8; font-size: 10px; line-height: 1.3; font-weight: 600; white-space: nowrap; }
.phase-ready { color: #08654e; background: #e6f7f0; border-color: #c4e9db; }
.phase-next { color: #245a72; background: #ecf4f8; border-color: #d4e5ed; }
.product-demo-section { margin-bottom: 92px; scroll-margin-top: 100px; }
.demo-introduction { display: flex; align-items: center; gap: 25px; margin-bottom: 24px; }
.demo-introduction h3 { margin: 0; font-size: 24px; font-weight: 500; line-height: 1.25; letter-spacing: -.035em; }
.demo-introduction .text-link { margin-left: auto; font-size: 12px; }
.visus-demo { overflow: hidden; border: 1px solid #243644; border-radius: 14px; background: #0d1520; box-shadow: 0 24px 60px #0d152012; }
.demo-chrome { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 60px; padding: 13px 20px; color: #fff; background: #111e2a; border-bottom: 1px solid #263746; }
.demo-product { display: flex; align-items: center; gap: 8px; }
.demo-product b { font-size: 17px; letter-spacing: -.045em; }
.demo-product > span { margin-left: 8px; padding-left: 14px; color: #a6b6c3; font-size: 10px; border-left: 1px solid #40515d; }
.demo-illustration { font-size: 10px; color: #bfd0dc; }
.demo-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 300px; }
.demo-image-area { display: flex; flex-direction: column; min-width: 0; }
.demo-image-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 15px; color: #b7c8d5; font-size: 10px; background: #152332; }
.demo-image-toolbar i { color: #23d6a8; font-style: normal; margin-inline: 6px; }
.demo-capture { flex: 1; }
.demo-selection { position: absolute; z-index: 1; left: 29%; top: 20%; width: 26%; height: 43%; border: 1px solid #23d6a8; box-shadow: 0 0 0 1px #23d6a82b, 0 0 40px #23d6a812; opacity: 0; transition: opacity .35s; }
.demo-selection > span { position: absolute; left: -1px; top: -24px; color: #0d1520; background: #23d6a8; padding: 4px 7px; font-size: 9px; font-weight: 600; white-space: nowrap; }
.demo-selection > i { display: none; position: absolute; top: 0; width: 100%; height: 1px; background: #23d6a8; box-shadow: 0 0 12px #23d6a8; }
.visus-demo[data-stage="1"] .demo-selection, .visus-demo[data-stage="2"] .demo-selection, .visus-demo[data-stage="3"] .demo-selection { opacity: 1; }
.visus-demo[data-stage="2"].is-playing .demo-selection > i { display: block; animation: visus-scan 2.4s ease-in-out infinite; }
@keyframes visus-scan { 0%, 100% { top: 0; } 50% { top: 100%; } }
.demo-image-note { position: absolute; right: 15px; bottom: 15px; left: 15px; width: fit-content; max-width: calc(100% - 30px); padding: 7px 10px; border: 1px solid #ffffff30; border-radius: 5px; background: #0d1520ec; color: #d8e5ed; font-size: 10px; }
.demo-image-footer { display: flex; justify-content: space-between; gap: 10px; padding: 8px 14px; color: #9aafbe; font-size: 9px; border-top: 1px solid #263746; }
.demo-image-footer > span:first-child { display: inline-flex; align-items: center; gap: 7px; }
.demo-image-footer .status-dot { width: 5px; height: 5px; }
.demo-assistant { display: flex; flex-direction: column; min-width: 0; padding: 0 18px 16px; border-left: 1px solid #334454; background: #152331; color: #e6eff4; }
.assistant-header { display: flex; align-items: center; gap: 8px; min-height: 65px; }
.assistant-header > img { width: 105px; height: auto; margin-left: -6px; }
.assistant-brand { display:inline-flex; align-items:center; gap:2px; flex:none; color:#fff; }
.assistant-brand img { width:32px; height:32px; }
.assistant-brand strong { font-family:"Inter","Segoe UI",Arial,sans-serif; font-size:18px; font-weight:600; letter-spacing:-.055em; }
.assistant-header span { color: #a8bac7; font-family: "Inter", "Segoe UI", Arial, sans-serif; font-size: 9px; white-space: nowrap; }
.assistant-signal { width: 6px; height: 6px; margin-left: auto; background: #23d6a8; border-radius: 50%; }
.assistant-tabs { display: flex; gap: 20px; margin-bottom: 20px; border-bottom: 1px solid #31414e; color: #a5b7c6; font-size: 10px; }
.assistant-tabs > span { padding-bottom: 9px; }
.assistant-tabs > span:first-child { color: #23d6a8; border-bottom: 1px solid #23d6a8; }
.assistant-context { display: grid; gap: 5px; margin-bottom: 16px; }
.assistant-context .context-label { color: #8ca1af; font-size: 8px; letter-spacing: .12em; }
.assistant-context b { font-size: 11px; font-weight: 500; }
.assistant-context > span:last-child { color: #a5b7c6; font-size: 10px; line-height: 1.5; }
.assistant-prompt { margin-bottom: 18px; padding: 11px 12px; border: 1px solid #344b5c; border-radius: 8px 8px 2px 8px; background: #203545; color: #d8e6ee; font-size: 11px; line-height: 1.6; }
.assistant-response { min-height: 135px; margin-bottom: 18px; }
.response-label { display: flex; align-items: center; gap: 6px; color: #23d6a8; font-size: 9px; letter-spacing: .1em; font-weight: 600; }
.assistant-response p { min-height: 76px; margin: 9px 0; color: #ccdae4; font-size: 12px; line-height: 1.7; }
.response-reference { display: inline-flex; padding: 5px 8px; border: 1px solid #376758; border-radius: 4px; color: #75e1c1; background: #143c32; font-size: 9px; }
.assistant-input { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding: 10px; border: 1px solid #3e5261; border-radius: 6px; color: #9eb0bd; font-size: 10px; }
.assistant-input b { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 4px; background: #23d6a8; color: #0d1520; font-size: 15px; }
.demo-control-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 18px; border-top: 1px solid #304251; background: #101c28; }
.demo-playback { display: flex; gap: 8px; }
.demo-play, .demo-reset { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 36px; padding: 8px 12px; border: 1px solid #395160; border-radius: 5px; background: #192d3b; color: #f1f6f9; font-size: 11px; font-weight: 500; cursor: pointer; }
.demo-play > span { color: #23d6a8; }
.demo-reset { min-width: 36px; padding: 5px; font-size: 20px; }
.demo-play:hover, .demo-reset:hover { background: #284554; }
.demo-control-bar > p { margin: 0; color: #b1c3d0; font-size: 10px; }
.demo-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: #162633; }
.demo-steps button { display: flex; align-items: center; gap: 8px; min-height: 54px; padding: 10px 16px; border: 0; border-top: 2px solid #354a58; border-right: 1px solid #354a58; background: transparent; color: #b3c5d2; font-size: 10px; text-align: left; cursor: pointer; }
.demo-steps button:last-child { border-right: 0; }
.demo-steps button > span { font-size: 9px; color: #839daa; }
.demo-steps button[aria-pressed="true"] { border-top-color: #23d6a8; color: #75e1c1; background: #193a35; }
.demo-steps button[aria-pressed="true"] > span { color: #75e1c1; }
.simulation-caption { margin: 13px 0 0; color: #687780; font-size: 11px; line-height: 1.6; }
.visus-feature { padding-block: 95px; border-top: 1px solid #e7edeb; background: #f4f9f7; }
.visus-feature-grid { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 95px; }
.visus-identity { display: flex; flex-direction: column; align-items: center; padding: 28px 0; }
.visus-identity img { width: min(350px, 100%); height: auto; }
.visus-identity > span { color: #6a7e75; letter-spacing: .13em; font-size: 9px; text-align: center; }
.visus-feature-copy h2 { margin: 20px 0; font-size: clamp(36px, 4vw, 52px); line-height: 1.08; letter-spacing: -.055em; font-weight: 500; }
.visus-feature-copy > p:not(.eyebrow) { color: #58696b; font-size: 15px; line-height: 1.8; }
.visus-feature-copy .visus-availability { display: flex; align-items: flex-start; gap: 9px; font-size: 12px !important; margin-block: 23px; color: #276a55 !important; }
.visus-availability .status-dot { flex-shrink: 0; margin-top: 8px; width: 6px; height: 6px; }
.development-section { padding-block: 105px; scroll-margin-top: 65px; }
.roadmap-board { overflow: hidden; border: 1px solid #dce4e5; border-radius: 12px; box-shadow: 0 12px 35px #0d152007; }
.roadmap-board-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 18px 25px; color: #5c6c74; background: #f7f9f9; border-bottom: 1px solid #e0e6e8; font-size: 11px; }
.roadmap-board-head > span:first-child { display: flex; align-items: center; gap: 9px; color: #25383e; font-weight: 600; }
.roadmap-board-head > span:last-child { font-size: 10px; }
.roadmap-board-head i:not(.status-dot) { margin-inline: 6px; font-style: normal; }
.milestone-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid #e0e6e8; }
.milestone-tabs button { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 11px; padding: 25px; border: 0; border-right: 1px solid #e0e6e8; border-bottom: 3px solid transparent; background: #fff; text-align: left; cursor: pointer; }
.milestone-tabs button:last-child { border-right: 0; }
.milestone-tabs button[aria-selected="true"] { background: #f1faf6; border-bottom-color: #23d6a8; }
.milestone-tabs button:hover { background: #f5f9f7; }
.milestone-number { display: grid; place-items: center; flex-shrink: 0; width: 33px; height: 33px; border: 1px solid #d3dfe1; border-radius: 50%; color: #77868e; font-size: 10px; background: white; }
.milestone-number.complete { border-color: #148467; color: white; background: #148467; font-size: 16px; }
.milestone-name { display: grid; gap: 1px; }
.milestone-name b { font-size: 16px; font-weight: 600; letter-spacing: -.025em; }
.milestone-name small { color: #63777f; font-size: 10px; }
.milestone-tabs .phase-tag { margin-left: auto; font-size: 9px; }
.milestone-panel { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 65px; min-height: 340px; padding: 40px; }
.milestone-panel h3 { margin: 15px 0 17px; font-size: 34px; font-weight: 500; letter-spacing: -.05em; line-height: 1.15; }
.milestone-panel > div > p:not(.small-kicker) { max-width: 370px; margin: 0 0 22px; color: #61727b; font-size: 13px; line-height: 1.8; }
.milestone-panel .small-kicker { font-size: 9px; color: #36735e; }
.milestone-panel .text-link { font-size: 12px; }
.milestone-list { list-style: none; margin: 0; padding: 0; }
.milestone-list li { display: flex; align-items: center; gap: 13px; padding: 19px 0; border-bottom: 1px solid #e7ecec; }
.milestone-list li:last-child { border-bottom: 0; }
.milestone-list li > span { display: grid; flex-shrink: 0; place-items: center; width: 27px; height: 27px; border: 1px solid #dbe8e1; border-radius: 5px; color: #35765e; background: #f1f8f4; font-size: 10px; }
.milestone-list li > div { display: grid; gap: 5px; }
.milestone-list b { font-size: 12px; font-weight: 600; }
.milestone-list small { color: #697b82; font-size: 11px; line-height: 1.6; }
.milestone-list em { margin-left: auto; color: #526d62; font-size: 9px; font-style: normal; white-space: nowrap; }
.visus-continuity { display: flex; align-items: center; gap: 15px; padding: 20px 27px; border-top: 1px solid #dce5e1; background: #f5f9f7; text-decoration: none; }
.visus-continuity > span:not(:last-child) { display: grid; gap: 4px; }
.visus-continuity b { color: #2f5145; font-size: 12px; font-weight: 600; }
.visus-continuity small { color: #617b70; font-size: 11px; }
.visus-continuity > span:last-child { margin-left: auto; color: #087c61; font-size: 23px; }
.visus-continuity:hover { background: #ebf5ef; }
.visus-continuity > img { width:38px; height:38px; padding:3px; border-radius:7px; background:#0d1520; }
.roadmap-note { margin: 15px 0 0; color: #75848b; font-size: 11px; }
.visus-hero { padding: 85px 0 80px; }
.visus-hero-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 85px; }
.visus-hero h1 { margin: 27px 0 24px; font-weight: 500; font-size: clamp(48px, 5.2vw, 72px); line-height: 1.02; letter-spacing: -.065em; }
.visus-hero-copy > p:not(.eyebrow) { max-width: 470px; color: #607079; font-size: 15px; line-height: 1.9; }
.visus-hero .hero-actions { gap: 22px; flex-wrap: wrap; }
.visus-hero .hero-status { font-size: 10px; }
.visus-ecosystem { padding: 26px 20px; border: 1px solid #dce7e2; border-radius: 18px; background: radial-gradient(ellipse at 50% 40%, #e9f7f0, #f9fbfa 65%); }
.ecosystem-label { color: #678175; font-size: 8px; font-weight: 600; letter-spacing: .16em; text-align: center; }
.ecosystem-core { position: relative; display: grid; justify-items: center; width: 185px; margin: 32px auto 0; padding: 5px 10px 19px; border: 1px solid #c8e3d8; border-radius: 16px; background: #fff; box-shadow: 0 13px 40px #2172540b; }
.ecosystem-core > img { width: 172px; height: auto; margin: 3px 0 -25px; }
.ecosystem-core > span { color: #698076; font-family: "Inter", "Segoe UI", Arial, sans-serif; font-size: 9px; }
.ecosystem-branches { display: flex; justify-content: space-between; position: relative; width: 68%; height: 54px; margin: 0 auto; }
.ecosystem-branches::before { content: ""; position: absolute; height: 27px; width: 1px; left: 50%; top: 0; background: #94bdaa; }
.ecosystem-branches::after { content: ""; position: absolute; top: 27px; width: 100%; height: 1px; background: #94bdaa; }
.ecosystem-branches i { display: block; width: 1px; height: 27px; margin-top: 27px; background: #94bdaa; }
.ecosystem-products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.ecosystem-product { display: grid; justify-items: center; gap: 6px; padding: 17px 5px 12px; border: 1px solid #d9e4df; border-radius: 9px; background: #ffffffc9; }
.ecosystem-product b { font-size: 14px; }
.ecosystem-product small { font-size: 9px; color: #667970; }
.ecosystem-product em { padding: 3px 6px; color: #75877f; font-size: 8px; font-style: normal; }
.ecosystem-product.is-live { border-color: #8ecbb2; }
.ecosystem-product.is-live em { color: #087c61; background: #e9f8ef; border-radius: 4px; }
.ecosystem-product .status-dot, .ecosystem-node { width: 6px; height: 6px; margin-bottom: 4px; border-radius: 50%; }
.ecosystem-node { border: 1px solid #9aaea3; }
.visus-ecosystem > p { margin: 24px 0 3px; text-align: center; color: #7a8d82; font-size: 10px; line-height: 1.8; }
.visus-demo-section { padding: 80px 0; background: #f5f7f7; border-block: 1px solid #e4e9e9; }
.demo-section-heading { display: grid; grid-template-columns: 1fr .65fr; gap: 85px; align-items: end; margin-bottom: 35px; }
.demo-section-heading h2, .visus-workflow-section h2, .scope-intro h2, .visus-faq-section h2 { margin: 20px 0 0; font-size: clamp(34px, 4vw, 50px); font-weight: 500; letter-spacing: -.055em; line-height: 1.1; }
.demo-section-heading > p { margin: 0; color: #62747d; font-size: 13px; line-height: 1.9; }
.visus-workflow-section { padding: 95px 0; }
.visus-workflow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 45px; margin-top: 40px; }
.visus-workflow article { border-top: 1px solid #ccdad5; padding-top: 22px; }
.visus-workflow article > span { font-size: 9px; color: #56806c; letter-spacing: .1em; }
.visus-workflow h3 { margin: 14px 0 12px; font-weight: 500; font-size: 22px; letter-spacing: -.04em; }
.visus-workflow p { color: #63747c; font-size: 13px; line-height: 1.8; }
.clinical-note { margin-top: 35px; padding: 17px 20px; color: #496759; background: #f2f8f4; border-left: 2px solid #8cbea3; font-size: 12px; line-height: 1.8; }
.visus-scope-section { padding-block: 90px; background: #f7faf8; border-block: 1px solid #e3eae6; }
.scope-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: start; gap: 95px; }
.scope-intro > p:not(.eyebrow) { margin: 25px 0; max-width: 340px; color: #61766b; font-size: 14px; line-height: 1.9; }
.scope-list article { display: flex; gap: 20px; padding: 26px 0; border-bottom: 1px solid #dce6df; }
.scope-list article:first-child { padding-top: 0; }
.scope-list article:last-child { border-bottom: 0; padding-bottom: 0; }
.scope-number { color: #6d8d79; font-size: 10px; padding-top: 6px; }
.scope-title { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.scope-title h3 { margin: 0; font-weight: 500; font-size: 22px; letter-spacing: -.035em; }
.scope-title .phase-tag { margin-left: auto; font-size: 8px; }
.scope-list p { margin: 12px 0 0; color: #5b7266; font-size: 13px; line-height: 1.85; }
.visus-faq-section { padding: 90px 0; }
.faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; }
.faq-list details { border-bottom: 1px solid #dce4e5; }
.faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; list-style: none; padding: 22px 0; font-size: 14px; font-weight: 500; cursor: pointer; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; color: #087c61; font-size: 22px; font-weight: 400; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list p { margin: 0 30px 22px 0; color: #62747d; font-size: 13px; line-height: 1.8; }
@media (max-width: 1100px) {
 .milestone-tabs button { padding: 20px 16px; gap: 9px; }
 .milestone-tabs .phase-tag { margin-left: 42px; }
 .visus-feature-grid, .visus-hero-grid, .scope-grid { gap: 45px; }
 .milestone-panel { gap: 35px; padding: 30px; }
}
@media (max-width: 900px) {
 .demo-workspace { grid-template-columns: minmax(0, 1fr); }
 .demo-capture { flex: none; }
 .demo-assistant { display: grid; grid-template-columns: .8fr 1.2fr; column-gap: 25px; padding: 15px 22px; border-left: 0; border-top: 1px solid #344656; }
 .assistant-header { min-height: 48px; grid-column: 1; grid-row: 1; }
 .assistant-tabs { grid-column: 1; grid-row: 2; margin: 5px 0 15px; }
 .assistant-context { grid-column: 1; grid-row: 3 / 5; }
 .assistant-prompt { grid-column: 2; grid-row: 1; margin-bottom: 12px; }
 .assistant-response { grid-column: 2; grid-row: 2 / 4; min-height: 115px; margin: 0 0 10px; }
 .assistant-response p { min-height: 58px; }
 .assistant-input { grid-column: 2; grid-row: 4; }
 .demo-steps button { padding-inline: 11px; font-size: 9px; }
 .main-nav { gap: 18px; }
 .brand { width: 170px; }
 .header-inner { gap: 20px; }
 .visus-hero-grid { gap: 30px; }
 .milestone-panel { grid-template-columns: .8fr 1.2fr; gap: 25px; }
 .milestone-list em { display: none; }
 .visus-hero .hero-status { align-items: flex-start; }
}
@media (max-width: 760px) {
 .brand { width: 170px; }
 .hero h1 { font-size: clamp(49px, 11vw, 66px); }
 .intro-wordmark { width: 220px; }
 .intro-symbol { width: 50px; height: 50px; }
 .intro-brand { gap: 10px; }
 .main-nav { gap: 0; }
 .product-demo-section { margin-bottom: 60px; }
 .demo-introduction { flex-wrap: wrap; gap: 15px; }
 .demo-introduction h3 { flex: 1 1 200px; font-size: 23px; }
 .demo-introduction .text-link { margin-left: 0; }
 .demo-product > span { display: none; }
 .demo-chrome { padding: 12px; }
 .demo-product b { font-size: 15px; }
 .demo-illustration { font-size: 8px; }
 .demo-image-toolbar { padding: 10px; font-size: 8px; }
 .demo-image-toolbar > span:last-child { display: none; }
 .demo-image-note { font-size: 8px; bottom: 8px; left: 8px; }
 .demo-selection > span { font-size: 7px; top: -22px; }
 .demo-image-footer { font-size: 8px; padding: 7px 10px; }
 .demo-assistant { grid-template-columns: 1fr; padding: 12px 18px 18px; }
 .assistant-header, .assistant-tabs, .assistant-context, .assistant-prompt, .assistant-response, .assistant-input { grid-column: auto; grid-row: auto; }
 .assistant-tabs { margin-bottom: 14px; }
 .assistant-context { margin-bottom: 12px; }
 .assistant-response { min-height: 110px; margin-bottom: 15px; }
 .assistant-response p { min-height: 50px; }
 .assistant-prompt { margin-left: 30px; margin-bottom: 18px; }
 .demo-control-bar { flex-wrap: wrap; padding: 14px; gap: 10px; }
 .demo-control-bar > p { font-size: 9px; }
 .demo-play { font-size: 10px; }
 .demo-steps { grid-template-columns: repeat(2, 1fr); }
 .demo-steps button { min-height: 47px; font-size: 9px; }
 .visus-feature, .development-section { padding-block: 68px; }
 .visus-feature-grid { grid-template-columns: 1fr; gap: 25px; }
 .visus-identity { align-items: flex-start; padding: 0; }
 .visus-identity img { width: 240px; margin-left: -25px; }
 .visus-identity > span { font-size: 8px; }
 .visus-feature-copy h2 { font-size: 40px; }
 .roadmap-board-head { flex-wrap: wrap; gap: 8px; padding: 16px 18px; }
 .milestone-tabs { grid-template-columns: 1fr; }
 .milestone-tabs button { padding: 15px 18px; flex-wrap: nowrap; border-right: 0; border-bottom: 1px solid #e0e6e8; border-left: 3px solid transparent; }
 .milestone-tabs button[aria-selected="true"] { border-left-color: #23d6a8; border-bottom-color: #e0e6e8; }
 .milestone-tabs .phase-tag { margin-left: auto; }
 .milestone-panel { grid-template-columns: 1fr; gap: 15px; padding: 26px 22px; min-height: 0; }
 .milestone-panel h3 { font-size: 31px; }
 .milestone-list li { padding: 17px 0; }
 .visus-continuity { align-items: flex-start; gap: 11px; padding: 17px; }
 .visus-continuity img { width: 30px; height: 30px; flex-shrink: 0; }
 .visus-continuity small { line-height: 1.65; font-size: 10px; }
 .visus-hero { padding-block: 55px; }
 .visus-hero-grid { grid-template-columns: 1fr; gap: 42px; }
 .visus-hero h1 { font-size: 58px; }
 .visus-hero .hero-actions { gap: 18px; }
 .visus-ecosystem { max-width: 520px; width: 100%; justify-self: center; }
 .visus-demo-section, .visus-workflow-section, .visus-scope-section, .visus-faq-section { padding-block: 65px; }
 .demo-section-heading { grid-template-columns: 1fr; gap: 22px; }
 .visus-workflow { grid-template-columns: 1fr; gap: 23px; margin-top: 30px; }
 .scope-grid, .faq-grid { grid-template-columns: 1fr; gap: 40px; }
 .scope-intro > p:not(.eyebrow) { max-width: 100%; }
 .scope-title h3 { font-size: 20px; }
 .scope-title .phase-tag { margin-left: 0; }
 .scope-list article { gap: 12px; }
 .clinical-note { margin-top: 20px; }
}
@media (prefers-reduced-motion: reduce) {
 .demo-selection { transition: none; }
 .demo-selection > i { animation: none !important; }
}


/* Visus symbol: the reversed mark is the resting, primary state. */
.visus-mark-cycle { position:relative; display:block; flex:none; width:154px; height:154px; overflow:hidden; border-radius:22px; background:#0d1520; animation:visus-tile 7s ease-in-out infinite; }
.visus-mark-cycle img, .visus-identity .visus-mark-cycle img { position:absolute; inset:0; display:block; width:100%; height:100%; margin:0; object-fit:contain; }
.visus-mark-cycle .mark-reversed { opacity:1; animation:visus-reversed 7s ease-in-out infinite; }
.visus-mark-cycle .mark-standard { opacity:0; animation:visus-standard 7s ease-in-out infinite; }
@keyframes visus-tile { 0%,64%,100% { background:#0d1520; } 72%,88% { background:#f2faf7; } }
@keyframes visus-reversed { 0%,62%,92%,100% { opacity:1; transform:scale(1); } 69%,86% { opacity:0; transform:scale(.88); } }
@keyframes visus-standard { 0%,62%,92%,100% { opacity:0; transform:scale(.88); } 69%,86% { opacity:1; transform:scale(1); } }
.visus-feature { border-top:0; background:#0e1b27; color:#f5faf9; }
.visus-feature .section-eyebrow { color:#64d9b6; }
.visus-feature .visus-identity > strong { margin-top:12px; font-family:"Inter","Segoe UI",Arial,sans-serif; font-size:clamp(50px,5vw,72px); line-height:1; font-weight:600; letter-spacing:-.065em; }
.visus-feature .visus-identity > span { margin-top:13px; color:#98afa8; }
.visus-feature .visus-feature-copy > p:not(.eyebrow) { color:#bbcdc9; }
.visus-feature .visus-feature-copy .visus-availability { color:#9de8cc !important; }
.visus-feature .button-dark { color:#0d1520; background:#23d6a8; border-color:#23d6a8; }
.visus-feature .button-dark:hover { background:#7af0ce; }
.ecosystem-core { width:200px; padding:15px 12px 17px; }
.ecosystem-core .visus-mark-cycle { width:125px; height:125px; border-radius:18px; }
.ecosystem-core > strong { margin-top:5px; font-family:"Inter","Segoe UI",Arial,sans-serif; font-size:30px; font-weight:600; line-height:1; letter-spacing:-.06em; }
.ecosystem-core > span { margin-top:6px; }
.snapview-hero { padding:90px 0 78px; }
.snapview-hero-grid { display:grid; grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr); gap:55px; align-items:center; }
.snapview-hero h1 { max-width:600px; margin:27px 0 24px; font-size:clamp(49px,5vw,70px); line-height:1.05; letter-spacing:-.065em; font-weight:500; }
.snapview-hero-copy > p:not(.eyebrow) { max-width:475px; color:#607079; font-size:15px; line-height:1.85; }
.snapview-hero .hero-actions { flex-wrap:wrap; gap:20px; margin-top:28px; }
.snapview-screen { min-width:0; margin:0; padding:7px; border:1px solid #2a3b49; border-radius:14px; background:#0d1520; box-shadow:0 28px 70px #10263424; }
.snapview-screen figcaption { display:flex; align-items:center; gap:8px; padding:8px 10px 13px; color:#c7d8df; font-size:10px; letter-spacing:.08em; }
.snapview-screen figcaption b { margin-left:auto; color:#81a098; font-size:9px; font-weight:500; }
.snapview-screen .viewer-capture { border-radius:5px; }
.snapview-flow { padding:24px 0; border-block:1px solid #e4eceb; background:#f7faf9; }
.snapview-flow-grid { display:flex; align-items:center; justify-content:center; gap:clamp(18px,4vw,58px); }
.snapview-flow-grid span { display:flex; align-items:center; gap:10px; color:#188967; font-size:11px; white-space:nowrap; }
.snapview-flow-grid b { color:#1c343b; font-size:12px; letter-spacing:.07em; }
.snapview-flow-grid small { color:#6e8085; font-size:11px; }
.snapview-flow-grid i { color:#6f948a; font-style:normal; }
.snapview-features, .snapview-demo-section { padding:105px 0; scroll-margin-top:65px; }
.snapview-section-head { max-width:770px; margin-bottom:42px; }
.snapview-section-head h2 { margin:17px 0 18px; font-size:clamp(38px,4.2vw,58px); line-height:1.08; letter-spacing:-.055em; font-weight:500; }
.snapview-section-head > p:last-child { max-width:550px; color:#64767c; font-size:15px; line-height:1.8; }
.snapview-feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.snapview-feature-grid article { min-height:225px; padding:28px 30px; border:1px solid #dae5e4; border-radius:10px; background:#fff; }
.snapview-feature-grid article > span { color:#168a68; font-size:10px; font-weight:600; letter-spacing:.12em; }
.snapview-feature-grid h3 { margin:24px 0 12px; font-size:24px; line-height:1.2; letter-spacing:-.04em; font-weight:500; }
.snapview-feature-grid p { max-width:565px; margin:0; color:#61737a; font-size:13px; line-height:1.75; }
.snapview-feature-grid .snapview-feature-visus { grid-column:1 / -1; min-height:0; border-color:#1d3d39; background:#102c2c; color:#f5fbf9; }
.snapview-feature-visus > span { color:#77e7c3 !important; }
.snapview-feature-visus h3 { margin-top:14px; }
.snapview-feature-visus p { color:#bbd3ce; }
.snapview-feature-visus .text-link { display:inline-flex; margin-top:20px; color:#7de9c6; }
.snapview-demo-section { background:#f5f9f8; }
.snapview-demo-section .visus-demo { margin-top:32px; }
.snapview-next { padding:95px 0; background:#e9f4f0; }
.snapview-next-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.snapview-next h2 { margin:20px 0 0; font-size:clamp(38px,4vw,54px); line-height:1.1; font-weight:500; letter-spacing:-.055em; }
.snapview-next-grid > div:last-child p { max-width:480px; color:#536e69; font-size:14px; line-height:1.85; }
.snapview-next .button { margin-top:12px; }
@media (max-width:900px) { .snapview-hero-grid { grid-template-columns:1fr; gap:42px; } .snapview-screen { max-width:780px; } .snapview-flow-grid { flex-wrap:wrap; } }
@media (max-width:760px) { .visus-mark-cycle { width:120px; height:120px; } .visus-identity { align-items:flex-start; } .snapview-hero { padding:60px 0; } .snapview-hero h1 { font-size:clamp(45px,11vw,62px); } .snapview-screen figcaption b { display:none; } .snapview-flow-grid { display:grid; grid-template-columns:1fr; justify-items:start; gap:11px; } .snapview-flow-grid i { display:none; } .snapview-features,.snapview-demo-section { padding:70px 0; } .snapview-feature-grid,.snapview-next-grid { grid-template-columns:1fr; } .snapview-feature-grid .snapview-feature-visus { grid-column:auto; } .snapview-feature-grid article { min-height:0; padding:24px; } .snapview-next { padding:70px 0; } .snapview-next-grid { gap:20px; } }
@media (prefers-reduced-motion:reduce) { .visus-mark-cycle,.visus-mark-cycle img { animation:none !important; } .visus-mark-cycle { background:#0d1520; } .visus-mark-cycle .mark-reversed { opacity:1; transform:none; } .visus-mark-cycle .mark-standard { opacity:0; } }
