/* OS Journey: a patient-facing sequence in the site's turquoise product world. */
.osj-page { --accent:#11b09c; }
.osj-logo { width:155px; height:auto; max-height:68px; object-fit:contain; object-position:left; background:none; padding:0; }
.osj-cover .product-cover-heading { grid-template-columns:1.35fr 1fr; gap:8vw; }
.osj-cover h1 { font-size:clamp(48px,5.4vw,90px); }
.osj-cover .button.lime,.osj-invitation .button.lime { background:#11b09c; color:#062c29; }
.osj-cover-link { display:block; width:fit-content; margin-top:25px; font-size:13px; }
.osj-cover-baseline { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #162c2420; padding:23px 0; margin-top:65px; font:10px var(--head); letter-spacing:.09em; color:#47736b; }
.osj-experience { --step:0; position:relative; overflow:hidden; background:#081b1c; color:#e9f5f1; }
.osj-experience:before { content:''; pointer-events:none; position:absolute; inset:0; background:radial-gradient(ellipse at 80% 50%,#11b09c18,transparent 58%),linear-gradient(120deg,transparent 50%,#1dc6b907); }
.osj-experience-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; position:relative; }
.osj-experience-heading h2 { font-size:clamp(39px,4.4vw,69px); line-height:1.08; margin:22px 0 0; }
.osj-experience-heading h2 em { color:#6ad8c3; font-style:normal; }
.osj-experience .eyebrow { color:#82bdb5; }
.osj-concept { border:1px solid #74d4bf40; color:#7fb6af; padding:11px 14px; font-size:9px; letter-spacing:.09em; white-space:nowrap; }
.osj-stops { display:grid; grid-template-columns:repeat(5,1fr); position:relative; margin:55px 0 15px; border-bottom:1px solid #79b0aa32; }
.osj-stops button { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:13px; padding:12px 0 22px; border:0; color:#7a9e9e; background:transparent; cursor:pointer; font:inherit; }
.osj-stops button span { font:10px monospace; letter-spacing:.1em; }
.osj-stops button strong { font:500 16px var(--head); }
.osj-stops button[aria-selected=true] { color:#c4fff0; }
.osj-stops button[aria-selected=true] span { color:#1ad1b3; }
.osj-stops button:focus-visible { outline:1px solid #51d4ba; outline-offset:5px; }
.osj-track-light { position:absolute; bottom:-1px; left:calc(var(--step) * 20%); width:20%; height:2px; background:linear-gradient(90deg,#17cfb3,#17cfb333); box-shadow:0 0 20px #17cfb355; }
.osj-stage { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:6vw; min-height:620px; align-items:center; }
.osj-copy { padding:55px 0; max-width:610px; }
.osj-copy h3 { font:500 clamp(31px,3.1vw,48px)/1.13 var(--head); letter-spacing:-.045em; margin:24px 0; }
.osj-copy>p { color:#9fbab9; font-size:16px; line-height:1.85; max-width:540px; }
.osj-copy ul { list-style:none; margin:27px 0 35px; padding:0; }
.osj-copy li { border-top:1px solid #91c0b71f; padding:13px 0 13px 19px; color:#c4dcd6; font-size:13px; position:relative; }
.osj-copy li:before { content:'↗'; color:#11b09c; position:absolute; left:0; }
.osj-owner { color:#639b94; display:block; font:9px var(--head); letter-spacing:.08em; }
.osj-copy>.text-link { display:block; margin-top:20px; width:fit-content; font-size:13px; }
.osj-copy:focus-visible { outline:1px solid #6ad8c3; outline-offset:10px; }
.osj-visual { position:relative; min-height:620px; display:flex; align-items:center; justify-content:center; padding-bottom:98px; perspective:1200px; }
.osj-halo { position:absolute; width:100%; aspect-ratio:1; max-width:560px; border-radius:50%; top:5%; left:0; background:radial-gradient(circle,#0d9e9338,transparent 64%); pointer-events:none; }
.osj-orbit { pointer-events:none; position:absolute; width:110%; height:44%; border:1px solid #48e1c224; border-left-color:#72edd677; border-radius:50%; top:30%; left:-5%; transform:rotate(-23deg); }
.osj-orbit-b { width:87%; height:62%; top:16%; left:7%; transform:rotate(26deg); border-style:dashed; border-color:#73ccb019; }
.osj-device-host { position:relative; z-index:2; transform:rotateY(-10deg) rotateX(5deg) rotateZ(3deg); filter:drop-shadow(25px 26px 30px #0007); margin-top:25px; }
.osj-device { width:285px; min-height:440px; border:1px solid #759d9599; border-radius:31px; background:linear-gradient(135deg,#254544,#102e2c 18%,#091f21 83%,#547773); padding:8px; box-shadow:inset -3px -2px 0 #142f2b,inset 3px 0 0 #b4d6c74a; }
.osj-device-top { height:30px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; font:7px monospace; color:#9bbcba; letter-spacing:.12em; }
.osj-device-top>i { width:6px; height:6px; border:1px solid #3f8b82; background:#152c2b; border-radius:50%; }
.osj-screen { position:relative; border-radius:17px; background:#e8f1ec; padding:23px 18px 16px; min-height:386px; color:#153f3b; overflow:hidden; }
.osj-screen-kicker { font:6.5px var(--head); color:#638b7f; letter-spacing:.1em; }
.osj-screen h4 { font:600 23px/1.15 var(--head); margin:12px 0 8px; letter-spacing:-.04em; }
.osj-screen>p { font-size:9px; line-height:1.5; color:#69837a; margin:0 0 20px; }
.osj-screen-card { display:flex; flex-direction:column; background:#f9fcf8; border:1px solid #c7dcd1; border-radius:8px; padding:12px 13px; margin-top:8px; gap:4px; }
.osj-screen-card>span { font:7px var(--head); letter-spacing:.07em; color:#319581; }
.osj-screen-card strong { font:600 12px/1.5 var(--head); }
.osj-screen-card small { color:#81948c; font-size:9px; }
.osj-screen-status { display:flex; align-items:center; gap:6px; font:8px var(--head); margin-top:18px; color:#318b79; }
.osj-screen-status i { width:4px; height:4px; background:#11b09c; border-radius:50%; }
.osj-device-foot { height:14px; display:flex; align-items:end; justify-content:center; }
.osj-device-foot i { height:2px; width:70px; background:#6d8f85; border-radius:2px; }
.osj-device-terminal,.osj-device-checkout { border-radius:17px; width:310px; position:relative; }
.osj-device-terminal:after,.osj-device-checkout:after { content:''; position:absolute; bottom:-24px; left:14%; width:72%; height:24px; background:linear-gradient(90deg,#1b3937,#476964,#183936); transform:perspective(200px) rotateX(12deg); border-bottom:1px solid #69978a; }
.osj-device-terminal .osj-screen,.osj-device-checkout .osj-screen { border-radius:9px; }
.osj-device-terminal .osj-screen-card:first-of-type { background:#11b09c; color:#063f36; border-color:#11b09c; }
.osj-device-terminal .osj-screen-card:first-of-type :is(span,small) { color:#195c50; }
.osj-device-stay .osj-screen-card:first-of-type { background:#d8e8ba; border-color:#c7daa3; }
.osj-data-link { position:absolute; bottom:13px; left:0; right:0; display:flex; flex-direction:column; align-items:center; z-index:3; }
.osj-data-link>span { color:#6dada2; font-size:9px; }
.osj-stream { height:34px; width:27px; position:relative; margin:5px 0; border-left:1px solid #6ff9d54d; border-right:1px solid #92c9e338; overflow:hidden; }
.osj-stream i { position:absolute; width:4px; height:10px; left:-2px; top:-10px; background:#35d9b6; box-shadow:0 0 9px #28efcf; }
.osj-stream i+i { left:auto; right:-2px; top:auto; bottom:-10px; background:#b1e2ec; box-shadow:0 0 9px #b1e2ec; }
.osj-data-link>a { display:flex; flex-direction:column; align-items:center; gap:8px; }
.osj-data-link img { width:154px; height:auto; }
.osj-data-link small { font:7px var(--head); color:#a1bbb1; letter-spacing:.1em; }
.osj-playback { display:flex; align-items:center; justify-content:space-between; gap:30px; border-top:1px solid #80b0a52b; padding-top:23px; position:relative; }
.osj-playback>div { display:flex; gap:12px; }
.osj-playback button { font:12px var(--head); padding:14px 18px; border:1px solid #80b0a544; background:none; color:#b7d9cf; cursor:pointer; }
.osj-playback button span { display:inline-block; margin-left:25px; }
.osj-playback .osj-play { color:#093a32; background:#74dcc1; border-color:#74dcc1; }
.osj-playback button:disabled { opacity:.45; cursor:default; }
.osj-playback button:focus-visible { outline:2px solid #74dcc1; outline-offset:4px; }
.osj-playback>p { font-size:11px; color:#7ba79d; }
.osj-prototype-note { font-size:10px; line-height:1.7; color:#63928a; margin:21px 0 0; max-width:790px; position:relative; }
.osj-modules h2,.osj-connections h2,.osj-roadmap h2 { font-size:clamp(38px,4.1vw,65px); line-height:1.09; }
.osj-modules .heading-split>p { max-width:410px; font-size:16px; color:#677b70; line-height:1.8; }
.osj-module-list { margin-top:65px; }
.osj-module-list article { display:grid; grid-template-columns:60px 1.1fr 1fr; align-items:start; gap:40px; border-top:1px solid #547f6228; padding:32px 0; }
.osj-module-list .eyebrow { color:#3c8b7a; font-size:10px; }
.osj-module-list h3 { font:500 clamp(22px,2vw,31px)/1.2 var(--head); letter-spacing:-.04em; margin:14px 0 0; max-width:430px; }
.osj-module-list article>p { margin:0; font-size:14px; line-height:1.85; color:#64796d; }
.osj-module-list .index { color:#77a092; font:12px monospace; padding-top:2px; }
.osj-connections { display:grid; grid-template-columns:1fr 1fr; gap:9vw; color:#eff5ea; background:#0e1916; }
.osj-connections>div>p { max-width:500px; font-size:16px; line-height:1.9; color:#90a69a; }
.osj-connections h2 { margin:23px 0; }
.osj-connected-list>a { display:grid; grid-template-columns:83px 1fr 12px; gap:25px; padding:28px 0; border-top:1px solid #c8dcd523; align-items:start; }
.osj-connected-list>a>img { width:83px; height:36px; object-fit:contain; filter:brightness(0) invert(1); }
.osj-connected-list>a>div>span { color:#11b09c; font-size:10px; }
.osj-connected-list h3 { font:500 18px/1.3 var(--head); margin:9px 0; letter-spacing:-.02em; }
.osj-connected-list p { color:#7c998e; font-size:12px; line-height:1.8; margin:0; }
.osj-connected-list>a>span { color:#5fbda4; }
.osj-roadmap { display:grid; grid-template-columns:1fr 1fr; gap:9vw; }
.osj-roadmap h2 { margin:25px 0; }
.osj-roadmap>div>p { max-width:510px; font-size:16px; line-height:1.85; color:#648174; }
.osj-roadmap .text-link { display:inline-block; font-size:13px; margin-top:25px; color:#126f5d; }
.osj-roadmap small { display:block; font-size:10px; color:#7b9287; line-height:1.8; margin-top:14px; max-width:420px; }
.osj-roadmap ol { list-style:none; margin:0; padding:0; }
.osj-roadmap li { padding:25px 0; border-top:1px solid #40695728; }
.osj-roadmap li>span { font:9px var(--head); color:#418d78; }
.osj-roadmap li h3 { font:500 25px/1.2 var(--head); letter-spacing:-.03em; margin:15px 0; }
.osj-roadmap li p { font-size:14px; line-height:1.8; color:#647d70; }
.osj-invitation { background:#d7eee6; }
.osj-invitation h2 { font-size:clamp(42px,5vw,79px); line-height:1.07; margin:25px 0 35px; }
body.motion-enabled .osj-track-light { transition:left .7s cubic-bezier(.2,.7,.2,1)!important; }
body.motion-enabled .osj-running .osj-device-host { animation:osjFloat 7s ease-in-out infinite!important; }
body.motion-enabled .osj-running .osj-halo { animation:osjGlow 6s ease-in-out infinite!important; }
body.motion-enabled .osj-running .osj-orbit-a { animation:osjOrbit 14s ease-in-out infinite!important; }
body.motion-enabled .osj-running .osj-stream i { animation:osjSend 1.8s linear infinite!important; }
body.motion-enabled .osj-running .osj-stream i+i { animation:osjReceive 2.1s linear infinite!important; }
body.motion-enabled .osj-running .osj-screen-card { animation:osjCard .65s both var(--card-delay)!important; }
body.motion-enabled .osj-running .osj-copy>* { animation:osjText .55s both!important; }
@keyframes osjFloat { 0%,100%{transform:translateY(0) rotateY(-10deg) rotateX(5deg) rotateZ(3deg)}50%{transform:translateY(-15px) rotateY(-3deg) rotateX(2deg) rotateZ(1deg)} }
@keyframes osjGlow { 0%,100%{opacity:.6;transform:scale(.95)}50%{opacity:1;transform:scale(1.06)} }
@keyframes osjOrbit { 0%,100%{transform:rotate(-23deg) scaleY(1)}50%{transform:rotate(-12deg) scaleY(.87)} }
@keyframes osjSend { to{transform:translateY(50px)} }
@keyframes osjReceive { to{transform:translateY(-50px)} }
@keyframes osjCard { from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)} }
@keyframes osjText { from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)} }
@media(max-width:1100px){.osj-cover .product-cover-heading{grid-template-columns:1.2fr 1fr;gap:45px}.osj-stage{gap:35px}.osj-visual{min-height:605px}.osj-copy>p{font-size:14px}.osj-concept{font-size:8px;max-width:225px;white-space:normal;line-height:1.7}.osj-stops button strong{font-size:13px}.osj-module-list article{grid-template-columns:35px 1fr 1fr;gap:25px}.osj-connections,.osj-roadmap{gap:45px}.osj-connected-list>a{grid-template-columns:65px 1fr 10px;gap:15px}.osj-connected-list>a>img{width:65px}}
@media(max-width:760px){
 .osj-cover .product-cover-heading{grid-template-columns:1fr;gap:25px}.osj-cover h1{font-size:clamp(44px,10.5vw,62px)}.osj-logo{width:135px}.osj-cover-baseline{margin-top:40px;font-size:8px;flex-wrap:wrap;gap:12px}.osj-cover-baseline>span:last-child{display:none}
 .osj-experience{padding:60px 22px 40px}.osj-experience-heading{align-items:start;flex-direction:column;gap:25px}.osj-experience-heading h2{font-size:39px}.osj-concept{font-size:8px;max-width:none;padding:9px}.osj-stops{margin:35px 0 0}.osj-stops button{padding:12px 0 18px;gap:10px}.osj-stops button strong{font-size:9px;font-weight:500}.osj-stops button span{font-size:9px}
 .osj-stage{grid-template-columns:1fr;gap:0}.osj-copy{padding:35px 0 12px;min-height:450px}.osj-copy h3{font-size:32px;margin:20px 0}.osj-copy .eyebrow{font-size:8px}.osj-copy>p{font-size:14px;line-height:1.8}.osj-copy ul{margin:23px 0}.osj-copy li{font-size:11px;padding:11px 0 11px 16px}.osj-owner{font-size:8px;line-height:1.7}.osj-visual{min-height:595px}.osj-device{width:266px}.osj-device-terminal,.osj-device-checkout{width:282px}.osj-halo{top:6%}.osj-orbit{width:104%;left:-2%}.osj-data-link{bottom:10px}
 .osj-playback{flex-direction:column;align-items:start;gap:13px;padding-top:20px}.osj-playback>div{width:100%;gap:8px}.osj-playback button{padding:13px 11px;font-size:10px;flex:1}.osj-playback button span{margin-left:10px}.osj-playback>p{font-size:10px;margin:0}.osj-prototype-note{font-size:9px;line-height:1.8}
 .osj-modules .heading-split{display:block}.osj-modules .heading-split>p{font-size:14px;margin-top:25px}.osj-module-list{margin-top:35px}.osj-module-list article{grid-template-columns:24px 1fr;gap:15px;padding:27px 0}.osj-module-list article>p{grid-column:2;font-size:13px}.osj-module-list h3{font-size:25px}.osj-module-list .eyebrow{font-size:9px}
 .osj-connections,.osj-roadmap{grid-template-columns:1fr;gap:35px}.osj-connections>div>p,.osj-roadmap>div>p{font-size:14px}.osj-connections h2,.osj-modules h2,.osj-roadmap h2{font-size:37px}.osj-connected-list>a{grid-template-columns:65px 1fr 10px;gap:16px}.osj-connected-list h3{font-size:17px}.osj-connected-list p{font-size:12px}.osj-roadmap li h3{font-size:25px}.osj-invitation h2{font-size:42px}.osj-invitation .button{font-size:11px}
}
@media(max-width:380px){.osj-experience{padding-left:18px;padding-right:18px}.osj-experience-heading h2{font-size:35px}.osj-copy h3{font-size:30px}.osj-copy{min-height:490px}.osj-stops button strong{font-size:8px}}

/* Reception concept: translatable editorial copy, native keyboard-accessible details. */
.osj-terminal{display:grid;grid-template-columns:1.05fr 1fr;gap:7vw;align-items:center;background:#eef4f0;color:#14332e}
.osj-terminal-copy{min-width:0;max-width:650px}
.osj-terminal .eyebrow{color:#287365;font-size:14px;letter-spacing:.12em}
.osj-terminal h2{font:500 clamp(36px,4vw,66px)/1.07 var(--head);letter-spacing:-.05em;margin:24px 0}
.osj-terminal-intro{font-size:16px;line-height:1.85;color:#536f65;max-width:560px;margin:0 0 36px}
.osj-terminal-features{border-bottom:1px solid #214c3930}
.osj-terminal-features details{border-top:1px solid #214c3930;position:relative}
.osj-terminal-features summary{display:flex;align-items:baseline;gap:20px;list-style:none;cursor:pointer;padding:23px 0;min-height:64px}
.osj-terminal-features summary::-webkit-details-marker{display:none}
.osj-terminal-features summary:focus-visible{outline:2px solid #078571;outline-offset:5px}
.osj-terminal-index{font:14px var(--head);color:#587d70}
.osj-terminal-features h3{margin:0;font:500 clamp(18px,1.5vw,23px)/1.35 var(--head);letter-spacing:-.025em;flex:1}
.osj-terminal-plus{font-size:24px;line-height:1;font-weight:300;color:#237b67;transition:transform .3s}
.osj-terminal-features details[open] .osj-terminal-plus{transform:rotate(45deg)}
.osj-terminal-features details[open] h3{color:#087661}
.osj-terminal-features details>p{font-size:16px;line-height:1.85;color:#536f65;margin:0 25px 25px 38px;max-width:510px}
.osj-terminal-figure{width:100%;max-width:560px;margin:0;justify-self:center;min-width:0}
.osj-terminal-art{position:relative;overflow:hidden;background:#081b1c;isolation:isolate}
.osj-terminal-art img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}
.osj-terminal-label{position:absolute;left:22px;top:22px;color:#c5e7df;background:#0a292bce;border:1px solid #72c8b950;padding:9px 12px;font-size:14px;line-height:1.5;max-width:calc(100% - 44px)}
.osj-terminal-figure figcaption{font-size:14px;line-height:1.75;color:#5d786c;margin-top:16px;max-width:520px}
.osj-terminal+.osj-modules{padding-top:70px;border-top:1px solid #53746024}
body.motion-enabled:not(.motion-paused) .osj-terminal-features details[open]>p{animation:osjText .4s both!important}
@media(max-width:1000px){.osj-terminal{gap:35px;grid-template-columns:1fr 1fr}.osj-terminal h2{font-size:42px}.osj-terminal-features summary{gap:12px}.osj-terminal-features details>p{margin-left:29px;margin-right:0}.osj-terminal-label{left:14px;top:14px;max-width:calc(100% - 28px)}}
@media(max-width:760px){.osj-terminal{grid-template-columns:1fr;gap:38px}.osj-terminal h2{font-size:clamp(36px,9vw,50px)}.osj-terminal-figure{max-width:440px}.osj-terminal-intro{margin-bottom:28px}.osj-terminal-features h3{font-size:20px}.osj-terminal-features summary{padding:20px 0}.osj-terminal+.osj-modules{padding-top:55px}}
@media(prefers-reduced-motion:reduce){.osj-terminal-plus{transition:none}body.motion-enabled:not(.motion-paused) .osj-terminal-features details[open]>p{animation:none!important}}
