/* Warm ivory and sage presentation palette for the marketing website. */
/* Marketing presentation only; the /home application and its styles are unchanged. */
:root{--cream:#f5f1e8;--ink:#2c2c2c;--muted:#5c5c5c;--line:#d9dece;--ochre:#67745b}
body,header{background:var(--cream)}header{height:82px;border-bottom:0}header .wordmark{color:var(--ink)}em{color:var(--ochre)}
.practice{background:#eee8dc}.closing{background:#d9dece}.closing-arch{border-color:#8a987f;box-shadow:0 0 0 22px #d9dece,0 0 0 23px #8a987f55}
.journey{height:740vh;position:relative;background:var(--cream)}.journey-sticky{height:100vh;position:sticky;top:0;overflow:hidden;background:var(--cream)}#house-canvas{position:absolute;width:100%;height:100%;inset:0;display:block}
.journey-copy{position:absolute;top:47%;transform:translateY(-50%);left:54%;width:40%;max-width:580px;pointer-events:none;transition:opacity .15s}.journey-copy a{pointer-events:auto}.journey-copy h1{font-size:clamp(50px,5.7vw,90px);line-height:1.09;letter-spacing:-2.8px;margin-bottom:25px}.journey-copy .intro{font-size:14px;line-height:1.7;color:var(--muted);max-width:330px;margin-bottom:25px}.journey-copy .eyebrow{font-size:9px;letter-spacing:1.6px;color:var(--muted)}.journey-copy .button{min-height:44px}
.scroll-invitation{position:absolute;bottom:35px;left:6%;font-size:8px;letter-spacing:1.5px;color:var(--muted)}#journey-status{position:absolute;top:22px;left:6%;font-size:10px;color:var(--muted)}#motion-toggle{position:absolute;right:5%;top:24px;border:0;border-bottom:1px solid #999b92;background:none;padding:5px 0;color:var(--muted);font-size:9px}
.journey-sticky.inside .journey-copy{left:4%;top:auto;bottom:30px;transform:none;width:29%;max-width:360px;padding:22px;background:#faf7f0f5;border:1px solid var(--line)}.journey-sticky.inside h1{font-size:35px;letter-spacing:-1.3px;line-height:1.12;margin-bottom:14px}.journey-sticky.inside .eyebrow{margin-bottom:16px}.journey-sticky.inside .intro{font-size:12px;margin-bottom:18px}.journey-sticky.inside .scroll-invitation{display:none}.journey-sticky.inside .button{padding:13px 17px;font-size:10px}.journey-static{height:100vh}.concept-label{display:none}
@media(max-width:1000px) and (min-width:651px){header nav{gap:20px}.journey-copy{left:52%;width:43%}.journey-copy h1{font-size:clamp(46px,5.8vw,58px)}.journey-sticky.inside .journey-copy{width:36%;padding:18px}.journey-sticky.inside h1{font-size:30px}.journey-sticky.inside .intro{font-size:11px}}
@media(max-width:650px){header{height:72px}.journey-copy{top:7%;transform:none;left:7%;width:86%}.journey-copy h1{font-size:44px;letter-spacing:-1.8px;line-height:1.07;margin-bottom:16px}.journey-copy h1 br{display:initial}.journey-copy .eyebrow{margin-bottom:16px;font-size:8px}.journey-copy .intro{font-size:12px;margin-bottom:18px}.journey-copy .button{font-size:10px;padding:12px 17px}.journey-sticky.inside .journey-copy{bottom:20px;left:5%;width:90%;max-width:none;padding:16px}.journey-sticky.inside h1{font-size:28px;margin-bottom:10px}.journey-sticky.inside h1 br{display:none}.journey-sticky.inside .eyebrow{margin-bottom:9px}.journey-sticky.inside .intro{font-size:11px;line-height:1.6;margin-bottom:12px;max-width:none}.journey-sticky.overview .journey-copy{top:35px;bottom:auto}#motion-toggle{top:12px;right:6%;font-size:8px}.scroll-invitation{bottom:24px;font-size:7px}#journey-status{top:auto;bottom:15px;max-width:180px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.journey-copy{transition:none}}

/* Complete homepage: one neutral palette, readable controls and a direct route past the tour. */
a:focus-visible,button:focus-visible,summary:focus-visible,[role=tabpanel]:focus-visible{outline:2px solid #475569;outline-offset:5px}
.tour-skip{position:absolute;right:5%;bottom:30px;font-size:12px;text-decoration:underline;text-underline-offset:5px;padding:10px 0;z-index:2}
.inside .tour-skip{display:none}
#motion-toggle{min-height:44px;font-size:11px}
.note-demo{background:#fff;box-shadow:none}.demo-top,.note-tabs,.practice-rows a{border-color:var(--line)}
.note-tabs button{min-height:44px;font-size:12px}.note-tabs [aria-selected=true]{border-color:var(--ink)}
.note-status,.row-number{color:var(--muted)}.lines i{background:var(--line)}
.care-copy>p,.practice-intro,.life-heading p:last-child,.founder-copy>p:not(.eyebrow){font-size:15px}
.practice-rows p{font-size:14px}.practice-rows a:hover h3{text-decoration:underline;text-underline-offset:5px}
.questions{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;background:#e8ede2}
.questions details{border-bottom:1px solid #c9d0c0;padding:18px 0}
.questions summary{cursor:pointer;min-height:44px;padding:9px 0;font-size:16px}
.questions details p{font-size:14px;color:var(--muted);max-width:550px;margin:12px 0}
.questions .text-link{display:inline-block;padding:10px 0;margin-right:22px;text-decoration:underline;text-underline-offset:4px}
.closing>.text-link{display:inline-block;padding:14px}.closing-arch{opacity:.6}
footer>div{flex-wrap:wrap}footer a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:650px){.questions{grid-template-columns:1fr;gap:12px}.tour-skip{right:7%;bottom:10px;font-size:10px;background:#faf7f0e8;padding:7px}.scroll-invitation{display:none}.questions summary{font-size:15px}.closing h2{font-size:54px}.life-heading h2 br{display:initial}}
/* Real product captures bring the room metaphor back to healthcare software. */
.phone-shell{background:#24282b;padding:6px;border:1px solid #757b80;border-radius:30px;box-shadow:0 20px 45px #243c4820,0 2px 5px #243c4820;overflow:hidden}
.phone-shell img{display:block;width:100%;height:auto;border-radius:24px;background:#faf7f0}
.hero-product-proof{position:absolute;left:34%;bottom:17%;width:clamp(142px,14vw,220px);margin:0;transform:rotate(-5deg);z-index:1}
.hero-product-proof a{display:block}.hero-product-proof figcaption{font-size:9px;letter-spacing:1.3px;line-height:1.7;text-align:center;margin-top:16px;color:var(--ink);transform:rotate(5deg)}.hero-product-proof figcaption span{letter-spacing:0;color:var(--muted)}
.product{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:10%;background:#edf1e7;scroll-margin-top:20px}
.product h2{font-size:clamp(40px,4.4vw,66px);line-height:1.13;letter-spacing:-1.7px;margin:0 0 25px}.product-intro{font-size:18px;line-height:1.7;max-width:470px;color:var(--muted)}
.platform-note{font-size:12px;line-height:1.8;margin:24px 0 32px;color:var(--muted)}.platform-note strong{font-weight:500;color:var(--ink)}
.product-tabs{display:flex;border-bottom:1px solid #bbc8cc;gap:25px;margin-bottom:24px}.product-tabs button{font:inherit;font-size:13px;border:0;border-bottom:2px solid transparent;padding:12px 0;background:none;color:var(--muted);cursor:pointer}.product-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}
#product-panel{min-height:145px;max-width:460px}#product-panel h3{font-size:20px;margin-bottom:12px}#product-panel p{font-size:14px;line-height:1.8;color:var(--muted)}
.product-device{margin:0 auto;max-width:285px;width:100%;position:relative}.product-device .phone-shell{border-radius:40px;padding:8px}.product-device .phone-shell img{border-radius:32px}.product-device figcaption{text-align:center;font-size:10px;line-height:1.8;color:var(--muted);margin-top:22px}
@media(min-width:651px) and (max-width:1000px){.hero-product-proof{left:31%;width:145px;bottom:14%}.product{gap:7%}.product-intro{font-size:16px}.product-device{max-width:240px}}
@media(max-width:650px){.hero-product-proof{left:auto;right:8%;bottom:12%;width:135px;transform:rotate(5deg)}.hero-product-proof figcaption{transform:rotate(-5deg);font-size:8px;margin-top:9px}.hero-product-proof .phone-shell{border-radius:23px;padding:4px}.hero-product-proof img{border-radius:19px}.product{grid-template-columns:1fr;gap:38px}.product-intro{font-size:16px}.product-tabs{gap:25px}.product-device{max-width:250px}.product h2{font-size:40px}#product-panel{min-height:130px}.hero-product-proof{pointer-events:auto}}
@media(max-height:650px) and (min-width:651px){.hero-product-proof{width:130px;bottom:10%}}

/* A single portrait phone, carried through the tour. */
.hero-product-proof{left:4%;bottom:15%;width:clamp(145px,13vw,190px);transform:rotate(-6deg);transition:left .7s ease,bottom .7s ease,width .7s ease,transform .7s ease;isolation:isolate}
.hero-product-proof .phone-shell{position:relative;z-index:1}.hero-product-proof>a{position:relative;z-index:1}.hero-product-proof figcaption{position:relative;z-index:4;transform:none}
.holding-hand{position:absolute;left:-22%;top:26%;width:145%;height:auto;z-index:0;pointer-events:none}.holding-thumb{position:absolute;left:-11%;top:51%;width:31%;z-index:3;pointer-events:none}
.tour-phone-camera,.phone-map{position:absolute;inset:6px;border-radius:24px;overflow:hidden;background:#171b1c;opacity:0;transition:opacity .25s;pointer-events:none}.phone-map{background:#e8eded}.phone-map iframe{width:100%;height:100%;border:0}.map-address{position:absolute;bottom:0;left:0;right:0;padding:16px 10px;background:#faf7f0;color:var(--ink);display:grid;gap:5px;font-size:11px}.map-address span{font-size:9px}
#phone-viewfinder{width:100%;height:100%;display:block}.camera-top{position:absolute;top:8%;left:8%;right:8%;display:flex;align-items:center;gap:5px;color:white;font:8px Inter,sans-serif;letter-spacing:1px}.camera-dot{width:5px;height:5px;background:#e57070;border-radius:50%}.camera-quality{margin-left:auto;font-size:6px}.camera-focus{position:absolute;inset:37% 27%;border:1px solid #ffffff60;border-radius:4px}.camera-bottom{position:absolute;bottom:5%;left:0;width:100%;display:flex;align-items:center;flex-direction:column;gap:10px;color:white;font:8px Inter,sans-serif}.camera-bottom i{width:27px;height:27px;border:2px solid white;border-radius:50%;background:#cf6262;box-shadow:inset 0 0 0 3px #171b1c}.camera-bottom small{font-size:6px;letter-spacing:1px}
.phone-travelling .hero-product-proof{left:calc(100% - 240px);bottom:14%;width:180px;transform:rotate(3deg)}
.hero-product-proof[data-mode=video] .tour-phone-camera,.hero-product-proof[data-mode=map] .phone-map{opacity:1}.hero-product-proof[data-mode=video] .phone-shell>img,.hero-product-proof[data-mode=map] .phone-shell>img{opacity:0}
@media(min-width:651px) and (max-width:1000px){.hero-product-proof{left:3%;width:140px;bottom:14%}.phone-travelling .hero-product-proof{left:calc(100% - 185px);width:140px}}
@media(max-width:650px){.hero-product-proof{left:5%;right:auto;width:118px;bottom:12%;transform:rotate(-5deg)}.phone-travelling .hero-product-proof{left:calc(100% - 145px);bottom:calc(100% - 370px);width:115px;transform:rotate(2deg)}.tour-phone-camera,.phone-map{inset:4px;border-radius:19px}.hero-product-proof figcaption{font-size:7px}.map-address{padding:9px 6px;font-size:8px}.map-address span{font-size:7px}.camera-quality{display:none}}
@media(prefers-reduced-motion:reduce){.hero-product-proof,.tour-phone-camera,.phone-map{transition:none}}
.holding-hand{top:-28%}.hero-product-proof figcaption{position:absolute;top:-38px;left:0;right:0;margin:0;font-size:8px;line-height:1.6}.phone-travelling .hero-product-proof figcaption{top:-32px}
.holding-hand{top:0;left:-20%;width:136%}.holding-thumb{left:-9%;top:59%;width:29%}
.holding-hand{overflow:visible}
.phone-map iframe{height:calc(100% - 62px)}.map-address{min-height:62px;box-sizing:border-box}
@media(max-width:650px){.phone-map iframe{height:calc(100% - 46px)}.map-address{min-height:46px}}
.hero-product-proof figcaption{display:none}
/* Rendered anatomical grip; the app and live view sit inside its clear screen. */
.hero-product-proof .holding-hand,.hero-product-proof .holding-thumb{display:none}
.hero-product-proof .held-phone-render{position:absolute;left:-68.5%;top:-11.4%;width:224.1%;height:auto;max-width:none;z-index:0;pointer-events:none}
.hero-product-proof .phone-shell{padding:0;border:0;border-radius:12%;aspect-ratio:457/922;height:auto;background:transparent;box-shadow:none;overflow:hidden}
.hero-product-proof .phone-shell>img{width:100%;height:100%;position:absolute;inset:0;object-fit:fill;border-radius:0}
.hero-product-proof .tour-phone-camera,.hero-product-proof .phone-map{inset:0;border-radius:0}
.phone-travelling .hero-product-proof{transform:translate(var(--sway-x,0px),var(--sway-y,0px)) rotate(calc(3deg + var(--sway-angle,0deg)))}
.phone-notification{position:absolute;z-index:5;top:7%;left:4%;right:4%;padding:8px;background:#f4f6f4f5;border:1px solid #d7dfdc;border-radius:10px;color:#243d35;box-shadow:0 3px 12px #162c3020;opacity:0;transform:translateY(-120%);transition:transform .35s ease,opacity .25s;pointer-events:none}.phone-notification.visible{opacity:1;transform:translateY(0)}.phone-notification>span{display:flex;justify-content:space-between;font:500 12px 'Playfair Display',serif}.phone-notification small{font:6px Inter,sans-serif;letter-spacing:.6px;align-self:center;color:#61716b}.phone-notification p{font:8px/1.5 Inter,sans-serif;margin:4px 0 0}
@media(max-width:650px){.phone-notification{padding:5px;border-radius:7px}.phone-notification>span{font-size:9px}.phone-notification p{font-size:6px}.phone-notification small{font-size:5px}}
@media(prefers-reduced-motion:reduce){.phone-notification{transition:none}.phone-travelling .hero-product-proof{transform:rotate(0)}}
/* Left-hand 3D grip stays on the same side throughout the walk. */
.hero-product-proof .held-phone-model{position:absolute;left:-80%;top:-12.4%;width:260%;height:524.8%;max-width:none;pointer-events:none;z-index:0}
.hero-product-proof .phone-shell{border-radius:10%;background:#232b2e;box-shadow:0 0 0 4px #232b2e}
.phone-travelling .hero-product-proof{left:4%;bottom:14%;transform:translate(var(--sway-x,0px),var(--sway-y,0px)) perspective(800px) rotateY(var(--sway-angle,0deg)) rotate(calc(-3deg + var(--sway-angle,0deg)))}
@media(max-width:650px){.phone-travelling .hero-product-proof{left:5%;bottom:calc(100% - 370px)}}
@media(min-width:651px){.journey-sticky.inside .journey-copy{left:auto;right:4%}}
@media(max-width:650px){.journey-sticky.inside .journey-copy{z-index:3}}

/* Pin the tour from the first scroll; navigation overlays its opening frame. */
body>header{position:absolute;top:0;left:0;width:100%;z-index:4}
@media(max-width:650px){.journey-sticky:not(.inside) .journey-copy{top:max(90px,10%)}}
