/* Brand source: cloud/frontend/src/styles.css. Public editorial adaptation. */
:root { color-scheme: light; --green:#175c49; --deep:#104638; --ink:#182822; --muted:#58665f; --paper:#f6f5ef; --line:#d8dfd5; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--paper); font-synthesis:none; text-rendering:optimizeLegibility; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
body { margin:0; min-width:320px; }
a { color:inherit; text-underline-offset:5px; }
button { font:inherit; color:inherit; }
a, button, summary { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #a96719; outline-offset:5px; border-radius:3px; }
h1,h2,h3,p,figure { margin:0; }
h1,h2 { font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.045em; }
h1 { font-size:clamp(56px,5.4vw,82px); line-height:1.04; }
h2 { font-size:clamp(38px,3.8vw,56px); line-height:1.12; }
em { font-weight:400; color:var(--green); }
p { line-height:1.75; }
.wrap { width:min(1240px,calc(100% - 112px)); margin-inline:auto; }
.eyebrow { font-size:10px; font-weight:650; letter-spacing:.16em; line-height:1.6; color:var(--green); }
.skip-link { position:absolute; top:8px; left:8px; padding:16px; background:white; transform:translateY(-160%); z-index:10; }
.skip-link:focus { transform:none; }
.preview-notice { padding:6px 20px; background:#e7ede3; text-align:center; font-size:11px; color:#405448; }
.preview-notice a { margin-left:12px; }
.site-header { min-height:100px; display:flex; align-items:center; justify-content:space-between; gap:26px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; gap:11px; align-items:center; font-family:Georgia,serif; font-size:32px; letter-spacing:-1.5px; text-decoration:none; color:var(--green); }
.brand-mark { width:35px; height:35px; display:grid; place-items:center; border-radius:11px; background:var(--green); color:white; font-size:32px; padding-bottom:4px; }
.brand-dot { color:#729676; }
#navigation { display:flex; align-items:center; gap:30px; font-size:12px; }
#navigation a { text-decoration:none; padding:12px 0; }
#navigation a:hover { color:var(--green); text-decoration:underline; }
#navigation .nav-app { margin-left:26px; padding:11px 17px; border:1px solid #82968a; border-radius:4px; font-weight:600; }
.nav-app span { margin-left:17px; }
.menu-toggle { display:none; }
.hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:44px; padding-block:82px 74px; }
.hero .eyebrow { display:flex; align-items:center; gap:9px; margin-bottom:28px; }
.status-dot { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px #e4eadf; }
.hero-intro { margin-top:26px; max-width:440px; color:var(--muted); font-size:16px; line-height:1.8; }
.hero-actions { margin-top:33px; display:flex; align-items:center; flex-wrap:wrap; gap:25px; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:27px; border:1px solid var(--green); border-radius:4px; min-height:49px; padding:14px 20px; background:var(--green); color:white; font-size:12px; font-weight:600; text-decoration:none; transition:background .18s,transform .18s; }
.button:hover { background:var(--deep); transform:translateY(-2px); }
.button:active { transform:translateY(0); }
.button span { font-size:18px; line-height:1; }
.text-link { display:inline-flex; align-items:center; gap:15px; min-height:44px; font-size:12px; font-weight:600; text-decoration:none; }
.text-link:hover { text-decoration:underline; }
.hero-footnote { font-size:10px; margin-top:17px; color:var(--muted); }
.product-figure { position:relative; padding:17px 6px 0 10px; }
.product-window { transform:rotate(1.5deg); background:#fff; border:1px solid #cad4c9; border-radius:9px; overflow:hidden; box-shadow:0 25px 60px -32px #45665366; }
.window-bar { display:flex; gap:15px; align-items:center; justify-content:space-between; padding:13px 13px; font-size:9px; background:#f2f4ee; border-bottom:1px solid #dce2d8; color:#4c5f50; }
.window-dots { color:#8c9a8b; font-size:8px; letter-spacing:2px; }
.demo-label { font-size:7px; letter-spacing:.08em; }
.product-tour { position:relative; min-height:430px; background:#f0f3ec; overflow:hidden; }
.product-screen { position:absolute; inset:0; display:flex; opacity:0; transform:translateX(8px); animation:product-tour 6s linear infinite; will-change:opacity,transform; }
.product-screen-patients { animation-delay:1.5s; }
.product-screen-scores { animation-delay:3s; }
.product-screen-report { animation-delay:4.5s; }
.product-window:hover .product-screen { animation-play-state:paused; }
@keyframes product-tour { 0%,22% { opacity:1; transform:translateX(0); } 25%,100% { opacity:0; transform:translateX(-8px); } }
.product-sidebar { width:49px; flex-shrink:0; background:#124936; color:#dce8d7; display:flex; align-items:center; flex-direction:column; gap:25px; padding-top:14px; font-size:17px; }
.product-sidebar .product-logo { font:28px Georgia,serif; color:#fff; margin-bottom:10px; }
.product-sidebar .active { background:#38654f; width:29px; height:29px; display:grid; place-items:center; border-radius:5px; }
.product-main { min-width:0; width:100%; padding:22px; background:#f0f3ec; overflow:hidden; }
.product-breadcrumb { font-size:7px; letter-spacing:.1em; color:#5f7062; }
.product-breadcrumb span { margin:0 7px; }
.product-title { display:flex; align-items:center; justify-content:space-between; gap:10px; font:16px Georgia,serif; margin-block:12px 19px; }
.status-pill { flex-shrink:0; background:#e6ebda; padding:5px 8px; border-radius:20px; font:8px Arial,sans-serif; color:#4d5e34; }
.dashboard-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:10px; }
.metric-card { min-height:130px; padding:18px; background:#fff; border:1px solid #dfe4da; border-radius:6px; }
.metric-card > span { display:block; font-size:7px; letter-spacing:.1em; text-transform:uppercase; color:#617062; }
.metric-card strong { display:block; margin:13px 0 8px; font:25px Georgia,serif; color:#244b3a; }
.metric-card small { display:block; font-size:9px; line-height:1.5; color:#657068; }
.activity-card { display:flex; align-items:center; gap:12px; margin-top:12px; padding:15px 17px; background:#e5ebdf; border-radius:6px; color:#35523e; }
.activity-card .activity-icon { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:#fff; color:var(--green); }
.activity-card strong,.activity-card small { display:block; }
.activity-card strong { font-size:10px; }
.activity-card small { margin-top:4px; font-size:8px; color:#657263; }
.patient-list { display:grid; gap:9px; }
.patient-list > div { display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:12px; min-height:66px; padding:11px 13px; background:#fff; border:1px solid #dfe4da; border-radius:6px; }
.patient-avatar { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#e3eadc; color:#31543f; font:14px Georgia,serif; }
.patient-list p,.patient-list strong,.patient-list small { display:block; }
.patient-list strong { font-size:10px; }
.patient-list small,.patient-list time { margin-top:4px; font-size:8px; color:#69756c; }
.score-card { padding:5px 16px; background:#fff; border:1px solid #dfe4da; border-radius:6px; }
.score-row { display:grid; grid-template-columns:1fr auto; align-items:end; gap:5px 12px; padding:16px 0; border-bottom:1px solid #e4e8df; }
.score-row:last-child { border-bottom:0; }
.score-row strong,.score-row small { display:block; }
.score-row strong { font-size:10px; }
.score-row small { margin-top:4px; font-size:8px; color:#69756c; }
.score-row > span { font:13px Georgia,serif; color:#31543f; }
.score-row i { grid-column:1/-1; height:5px; overflow:hidden; border-radius:5px; background:#e8ece3; }
.score-row i::after { content:''; display:block; width:var(--score); height:100%; border-radius:inherit; background:#76936a; }
.document { background:#fffdf8; padding:22px; border:1px solid #e0e3d8; }
.document-kicker { font-size:7px; letter-spacing:.12em; color:#596c59; }
.document > p { margin-top:13px; font-size:9px; line-height:1.65; color:#4f5d53; }
.document-note { display:flex; gap:10px; margin-top:16px; padding:10px 12px; border-left:2px solid #95a782; background:#edf1e7; }
.document-note > span { color:#47613b; }
.document-note p { margin:0; font-size:9px; }
.floating-note { display:flex; align-items:center; gap:10px; padding:14px 20px; background:#fffefa; border:1px solid #d9dfd1; box-shadow:0 9px 28px #254c3212; border-radius:6px; position:absolute; right:-17px; bottom:32px; transform:rotate(-2deg); }
.note-icon { display:grid; place-items:center; width:30px; height:30px; color:var(--green); background:#e8eee1; border-radius:50%; }
.floating-note strong,.floating-note div > span { display:block; }
.floating-note strong { font-size:11px; font-weight:600; }
.floating-note div > span { margin-top:4px; font-size:9px; color:#5f6b58; }
.product-figure figcaption { font-size:8px; color:#5c6a5d; text-align:center; padding-top:23px; }
.principles { display:flex; align-items:center; justify-content:space-between; gap:20px; border-block:1px solid var(--line); padding-block:23px; font-size:11px; color:#51604f; }
.principles span::before { content:'✦'; color:#6a855d; margin-right:13px; }
.section { padding-block:100px; }
.approach { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:start; }
.section .eyebrow { margin-bottom:24px; }
.approach-copy { padding-top:34px; max-width:490px; color:var(--muted); font-size:14px; }
.approach-copy .lead { font-size:20px; line-height:1.65; color:#273e32; margin-bottom:20px; }
.journey { background:var(--deep); color:#f7f6eb; padding:75px 0 38px; }
.journey .eyebrow { color:#becdb2; margin-bottom:22px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:45px; }
.section-heading > p { font-size:13px; color:var(--muted); max-width:360px; padding-bottom:4px; }
.journey .section-heading > p { color:#cedbcd; }
.journey-steps { display:grid; grid-template-columns:repeat(4,1fr); list-style:none; padding:0; margin:55px 0 28px; gap:28px; counter-reset:steps; }
.journey-steps li { border-top:1px solid #557967; padding-top:20px; }
.step-number { font:14px Georgia,serif; color:#cbd7bb; }
.journey-steps h3 { font:26px Georgia,serif; letter-spacing:-.025em; margin:26px 0 12px; }
.journey-steps p { font-size:12px; color:#d2ded0; max-width:220px; }
.journey-caption { color:#becfbe; font-size:10px; border-top:1px solid #557967; padding-top:21px; }
.feature-grid { display:grid; grid-template-columns:1fr 1fr; column-gap:75px; margin-top:40px; }
.feature-grid article { padding:35px 0; border-top:1px solid var(--line); }
.feature-icon { font:23px Georgia,serif; color:var(--green); display:block; height:40px; }
.feature-grid h3 { font:27px Georgia,serif; letter-spacing:-.025em; margin:10px 0 14px; }
.feature-grid p { font-size:14px; color:var(--muted); max-width:470px; }
.feature-tag { display:inline-block; font-size:10px; color:#486043; margin-top:20px; padding:5px 9px; border:1px solid #d4ddca; border-radius:3px; }
.trust { display:grid; grid-template-columns:.85fr 1.15fr; background:#e7ebdf; }
.trust-visual { display:flex; align-items:center; flex-direction:column; justify-content:center; padding:50px 40px; background:#dce4d3; text-align:center; color:#315337; }
.trust-monogram { position:relative; font:170px Georgia,serif; letter-spacing:-18px; line-height:1.2; }
.trust-monogram > span { font-size:65px; position:absolute; top:0; right:-35px; letter-spacing:0; color:#678558; }
.trust-rule { width:55px; height:1px; background:#708965; margin:20px 0; }
.trust-visual p { font:25px/1.3 Georgia,serif; }
.trust-copy { padding:55px 62px; }
.trust-copy .eyebrow { margin-bottom:25px; }
.trust-copy > p:not(.eyebrow) { color:#465640; font-size:14px; margin-top:25px; }
.trust-benefits { display:grid; gap:15px; list-style:none; padding:0; margin:27px 0 20px; }
.trust-benefits li { padding-top:14px; border-top:1px solid #c5d1bd; }
.trust-benefits strong,.trust-benefits span { display:block; }
.trust-benefits strong { font-size:12px; color:#294c35; }
.trust-benefits span { margin-top:5px; font-size:11px; line-height:1.55; color:#52624f; }
.beta-note { border-left:2px solid #69875d; padding-left:18px; margin:25px 0 18px; }
.beta-note strong { font-size:12px; font-weight:650; }
.beta-note p { font-size:12px; margin-top:8px; line-height:1.7; color:#465640; }
.faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:75px; }
.faq > div > p:not(.eyebrow) { margin-top:22px; font-size:13px; color:var(--muted); }
.faq-list details { border-top:1px solid var(--line); }
.faq-list details:last-child { border-bottom:1px solid var(--line); }
.faq-list summary { display:flex; list-style:none; justify-content:space-between; gap:20px; align-items:center; font-size:14px; font-weight:550; min-height:70px; padding:18px 0; cursor:pointer; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary:hover { color:var(--green); }
.faq-list summary span { font-size:22px; font-weight:300; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details > p { font-size:13px; color:var(--muted); padding:0 25px 23px 0; }
.final-cta { background:var(--deep); color:#f7f6eb; text-align:center; padding:85px 0 75px; }
.final-cta .eyebrow { color:#bccfb3; }
.final-cta h2 { font-size:clamp(52px,5.5vw,76px); margin:25px 0; }
.final-cta em { color:#c5d4b7; }
.final-cta p:not(.eyebrow) { font-size:14px; color:#d0decb; margin-bottom:28px; }
.button-light { background:#f4f4e9; color:var(--deep); border-color:#f4f4e9; }
.button-light:hover { background:#e3edda; }
.cta-note { display:block; font-size:10px; color:#c0d1ba; margin-top:15px; }
.site-footer { padding-top:50px; }
.footer-top { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; padding-bottom:40px; }
.footer-top .brand { font-size:28px; }
.footer-top p:not(.eyebrow) { font-size:12px; color:var(--muted); margin-top:15px; }
.footer-top > div:last-child { min-width:260px; padding-top:10px; }
.footer-top > div:last-child > a { display:block; font-size:12px; margin-top:18px; width:fit-content; }
.footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; align-items:center; border-top:1px solid var(--line); padding:23px 0 28px; font-size:10px; color:var(--muted); }
.footer-bottom nav { display:flex; gap:25px; }
.legal-page { max-width:820px; padding-block:65px 100px; }
.legal-page h1 { font-size:52px; margin:20px 0 38px; }
.legal-page h2 { font-size:29px; margin:35px 0 18px; }
.legal-page > p { margin-bottom:20px; }
.legal-page .text-link { margin-top:35px; }
@media (min-width:1500px) { .hero { gap:70px; padding-block:100px; } }
@media (max-width:1100px) { .wrap { width:calc(100% - 64px); } #navigation { gap:20px; } #navigation .nav-app { margin-left:0; } .hero { gap:25px; padding-block:65px; } h1 { font-size:62px; } .hero-actions { gap:15px; } .hero-intro { font-size:15px; } .document { padding:20px 16px; } .product-main { padding:18px 14px; } .product-title { font-size:14px; } .floating-note { right:-8px; } .approach { gap:40px; } .trust-copy { padding:42px; } }
@media (max-width:799px) { .wrap { width:calc(100% - 40px); } .site-header { min-height:80px; flex-wrap:wrap; padding-block:18px; position:relative; } .brand { font-size:28px; } .menu-toggle:not([hidden]) { display:flex; align-items:center; gap:15px; min-height:44px; border:1px solid #879b89; background:transparent; border-radius:4px; padding:10px 14px; font-size:12px; } #navigation { flex-basis:100%; display:grid; gap:0; padding-top:10px; } #navigation { display:none; } .enhanced #navigation.is-open { display:grid; } #navigation a { padding:14px 0; } #navigation .nav-app { width:fit-content; margin-top:12px; } .hero { grid-template-columns:1fr; padding-top:49px; gap:34px; padding-bottom:40px; } .hero-copy { max-width:530px; } h1 { font-size:66px; } .hero .eyebrow { font-size:9px; margin-bottom:24px; } .hero-intro { max-width:480px; font-size:15px; } .hero-actions { margin-top:26px; gap:20px; } .hero-footnote { margin-top:13px; } .product-figure { max-width:530px; width:100%; justify-self:center; padding-inline:12px; } .product-tour { min-height:420px; } .document { padding:22px; } .document > p { font-size:10px; } .document-kicker { font-size:8px; } .floating-note { right:3px; } .principles { gap:14px; padding-block:19px; flex-wrap:wrap; font-size:10px; } .principles span::before { margin-right:8px; } .section { padding-block:66px; } .approach { grid-template-columns:1fr; gap:20px; } .approach-copy { padding:0; max-width:100%; } .approach-copy .lead { font-size:18px; } .section-heading { align-items:flex-start; flex-direction:column; gap:20px; } .section-heading > p br { display:none; } .journey { padding:57px 0 30px; } .journey-steps { grid-template-columns:1fr 1fr; gap:28px; margin-top:33px; } .journey-steps h3 { margin-top:17px; font-size:25px; } .journey-steps p { max-width:100%; } .feature-grid { column-gap:30px; margin-top:30px; } .feature-grid h3 { font-size:25px; } .feature-grid p { font-size:13px; } .trust { grid-template-columns:1fr; } .trust-visual { min-height:230px; padding:35px; flex-direction:row; gap:48px; text-align:left; } .trust-monogram { font-size:116px; letter-spacing:-10px; } .trust-monogram > span { font-size:45px; right:-27px; } .trust-rule { display:none; } .trust-visual p { font-size:23px; } .trust-copy { padding:37px 28px; } .faq { grid-template-columns:1fr; gap:30px; } .faq > div > p:not(.eyebrow) br { display:none; } .faq-list summary { font-size:14px; } .final-cta { padding-block:66px; } .footer-top > div:last-child { min-width:0; } .footer-bottom { font-size:11px; gap:23px; } .footer-bottom nav { gap:18px; } }
@media (max-width:420px) { h1 { font-size:53px; } h2 { font-size:38px; } .hero-actions { gap:10px 18px; } .hero .eyebrow { font-size:8px; letter-spacing:.1em; } .product-tour { min-height:400px; } .product-sidebar { width:35px; gap:22px; } .product-main { padding:15px 10px; } .product-title { font-size:12px; } .dashboard-grid { gap:7px; } .metric-card { min-height:118px; padding:12px; } .metric-card strong { font-size:20px; } .activity-card { padding:12px; } .patient-list > div { grid-template-columns:30px 1fr auto; gap:8px; padding:9px; } .patient-avatar { width:28px; height:28px; } .score-card { padding-inline:11px; } .score-row { padding-block:13px; } .document { padding:17px 14px; } .document > p { font-size:9px; } .window-bar { padding:11px 9px; gap:6px; } .demo-label { font-size:6px; } .floating-note { padding:12px; bottom:33px; } .feature-grid { grid-template-columns:1fr; gap:0; } .feature-grid article { padding-block:28px; } .trust-visual { gap:35px; } .trust-visual p { font-size:20px; } .footer-top { flex-direction:column; } .preview-notice { font-size:10px; padding-inline:12px; } .preview-notice a { display:inline-block; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; animation:none !important; } .product-screen { opacity:0; transform:none; } .product-screen-report { opacity:1; } }
@media (max-width:420px) { .trust-visual { padding:30px 18px; gap:25px; } .trust-monogram { font-size:100px; } .trust-copy { min-width:0; } }
