:root{--navy:#0b1627;--ink:#162841;--muted:#536981;--line:#d9e4ed;--teal:#159e91;--mint:#d9f5ee;--paper:#f5f9fc;--card:#fff;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.58 system-ui,"Segoe UI",Arial,sans-serif}a{color:inherit}img{max-width:100%}.shell{width:min(100% - 48px,1280px);margin-inline:auto}.skip{position:absolute;left:16px;top:-80px;z-index:20;background:var(--navy);color:#fff;padding:10px 14px}.skip:focus{top:10px}
.site-header{position:relative;z-index:5;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.identity{display:flex;align-items:center}.identity img{width:220px;height:auto;display:block}.site-header nav{display:flex;align-items:center;gap:30px;font-size:.91rem;font-weight:680}.site-header nav a{text-decoration:none}.site-header nav a:hover{color:var(--teal)}.site-header nav .nav-results{padding:10px 15px;border:1px solid #b8d8d1;border-radius:9px;color:#087c71}.nav-results span{margin-left:7px}
.hero{min-height:600px;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);align-items:center;gap:72px;padding-top:72px;padding-bottom:85px}.kicker{display:flex;align-items:center;gap:9px;margin:0 0 18px;font-size:.74rem;line-height:1.4;letter-spacing:.16em;font-weight:800;color:#178a81}.live-dot{width:8px;height:8px;border-radius:50%;background:#25bea9;box-shadow:0 0 0 4px #dbf6f0}.hero h1{max-width:760px;margin:0;font-size:clamp(3.15rem,5vw,5.2rem);line-height:1.07;letter-spacing:-.06em;font-weight:790}.hero h1 em{color:#0a968b;font-style:normal}.hero-lede{max-width:610px;margin:27px 0 28px;font-size:1.12rem;line-height:1.75;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:49px;padding:12px 18px;border-radius:9px;text-decoration:none;font-weight:750;font-size:.94rem;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--navy);color:#fff}.button.primary:hover{background:#183552}.button.secondary{border:1px solid #c7d7e3;background:#fff;color:var(--ink)}.hero-note{margin:20px 0 0;color:#728498;font-size:.82rem}
.hero-visual{position:relative;padding:26px;border-radius:25px;background:#10233a;color:#f5fcff;box-shadow:0 24px 80px #163b5a24;overflow:hidden}.hero-visual:before{content:"";position:absolute;right:-130px;top:-140px;width:360px;height:360px;border-radius:50%;background:#188d8770;filter:blur(80px)}.visual-top{position:relative;display:flex;align-items:center;justify-content:space-between;color:#9cc3cb;margin-bottom:24px}.visual-label{font-size:.72rem;letter-spacing:.17em;font-weight:800}.visual-spark{font-size:1.45rem;color:#48dbce}.visual-query{position:relative;display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #49647e;border-radius:12px;background:#182f48;font-size:.95rem;font-weight:650}.query-dot{width:10px;height:10px;border-radius:50%;background:#5ee4c7}.query-arrow{margin-left:auto;color:#61d9cd}.visual-stack{position:relative;display:grid;gap:10px;margin:20px 0 18px}.visual-stack>div{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;background:#223950;color:#e5f0f7;font-size:.91rem}.visual-stack>div>span:last-child{margin-left:auto;color:#6adac6}.type-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid #4aa99e;border-radius:8px;color:#76e9d5;font-size:.69rem;font-weight:850}.visual-publish{position:relative;display:flex;align-items:center;gap:13px;border-radius:12px;padding:16px;background:#d9f5ee;color:#143b42}.publish-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#0d897e;color:#fff;font-weight:800}.visual-publish strong,.visual-publish small{display:block}.visual-publish small{color:#56777d}.publish-arrow{margin-left:auto;color:#0b8d7e}
.principle-strip{background:#e7f2f2;border-block:1px solid #d5e7e7}.principle-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:67px;font-size:.75rem;letter-spacing:.13em;font-weight:800;color:#47706e}.principle-inner i{height:1px;flex:1;background:#b5d3cf}
.section{padding-top:100px;padding-bottom:105px}.section-intro{max-width:810px}.section h2,.diagram-section h2,.final-cta h2{margin:0;font-size:clamp(2.15rem,3.5vw,3.4rem);line-height:1.15;letter-spacing:-.045em}.section-intro>p:last-child{margin:18px 0 0;color:var(--muted);font-size:1.02rem}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:43px}.route-card{display:flex;flex-direction:column;min-height:290px;padding:26px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 34px #0b35500a}.route-number{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:#0b9185}.route-card h3{margin:29px 0 9px;font-size:1.37rem;line-height:1.2}.route-card p{margin:0;color:var(--muted);font-size:.91rem}.route-detail{margin-top:auto;padding-top:28px;color:#197f76;font-size:.79rem;font-weight:750}
.diagram-section{padding:94px 0 102px;background:#eaf1f6;border-block:1px solid #dce8ef}.diagram-intro{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:29px}.diagram-intro>div{max-width:720px}.diagram-intro p:last-child{color:var(--muted);margin:18px 0 0}.text-link{flex-shrink:0;color:#0c8178;font-weight:760;text-underline-offset:5px}.diagram-frame{display:block;overflow:hidden;border:1px solid #c8d9e8;border-radius:15px;background:#fff;box-shadow:0 18px 48px #153d5a13}.diagram-frame img{display:block;width:100%;height:auto}.diagram-caption{display:flex;justify-content:space-between;gap:20px;margin-top:13px;color:#657b92;font-size:.78rem}
.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:43px}.access-grid>div{border-top:3px solid #add6d0;padding:22px 18px 8px 0}.access-grid h3{margin:19px 0 8px;font-size:1.16rem}.access-grid p{margin:0;color:var(--muted);font-size:.91rem}.access-grid a{color:#087f75}.access-status{font-size:.7rem;font-weight:800;letter-spacing:.11em;color:#0b887d}.access-status.conditional{color:#396b96}.access-status.planned{color:#8b6d39}
.final-cta{background:#d9f1eb;padding:68px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.final-cta p:last-child{margin:15px 0 0;color:#426b6e}.footer{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:107px;font-size:.78rem;color:#66798d}.footer a{color:#0b8175;font-weight:700}
@media(max-width:950px){.hero{grid-template-columns:1fr;gap:40px;padding-top:62px}.hero-visual{max-width:650px}.route-grid,.access-grid{grid-template-columns:1fr}.route-card{min-height:0}.route-detail{margin-top:8px}.principle-inner{flex-wrap:wrap;justify-content:center;padding-block:18px}.principle-inner i{display:none}}
@media(max-width:670px){.shell{width:min(100% - 30px,1280px)}.header-inner{min-height:80px;align-items:flex-start;padding-block:12px;flex-direction:column;gap:8px}.identity img{width:178px}.site-header nav{width:100%;justify-content:space-between;gap:10px;font-size:.78rem}.site-header nav .nav-results{padding:7px 9px}.hero{padding-block:50px 65px}.hero h1{font-size:clamp(2.8rem,12vw,4rem)}.hero-lede{font-size:1rem}.hero-visual{padding:17px}.section{padding-block:72px}.diagram-section{padding-block:73px}.diagram-intro{display:block}.text-link{display:inline-block;margin-top:20px}.diagram-frame{overflow:auto}.diagram-frame img{min-width:840px}.diagram-caption{display:block}.diagram-caption span{display:block;margin-top:4px}.cta-inner{align-items:flex-start;flex-direction:column}.footer{align-items:flex-start;flex-direction:column;padding-block:26px;gap:8px}}

/* Conversation examples and native Android history. */
.showcase{padding-bottom:84px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin:44px 0 60px}.benefit-grid article{border-top:1px solid #b8d6d1;padding-top:22px}.benefit-index{color:#10887c;font-weight:800;font-size:.8rem}.benefit-grid h3{margin:14px 0 8px;font-size:1.2rem}.benefit-grid p{margin:0;color:var(--muted);font-size:.94rem}.case-studies{display:grid;gap:64px}.case-study{margin:0}.case-study figcaption{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:22px}.case-study figcaption>div{max-width:790px}.case-label{font-size:.72rem;font-weight:800;letter-spacing:.13em;color:#14867c}.case-study h3{font-size:1.7rem;line-height:1.2;letter-spacing:-.025em;margin:10px 0}.case-study figcaption p{margin:0;color:var(--muted)}.screenshot-frame{display:block;background:#fff;border:1px solid #c9d9e5;border-radius:15px;overflow:hidden;box-shadow:0 18px 45px #153d5a12}.screenshot-frame img{display:block;width:100%;height:auto}.image-note{font-size:.79rem;line-height:1.65;color:#63768b;margin:13px 0 0}.connection-note{margin-top:46px;border-left:3px solid #15a391;padding:20px 24px;background:#e8f3f0;border-radius:0 10px 10px 0}.connection-note p{margin:7px 0 0;color:var(--muted);font-size:.92rem}.connection-note a{color:#087d71}.android-section{background:#10233a;color:#f1f8fc;padding:96px 0}.android-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:85px;align-items:center}.android-copy .kicker{color:#68d9c8}.android-copy h2{margin:0;font-size:clamp(2.3rem,3.8vw,3.65rem);line-height:1.12;letter-spacing:-.04em}.android-lede{font-size:1.08rem;color:#b8cbdc;margin:24px 0 30px}.history-benefits{display:grid;grid-template-columns:1fr 1fr;gap:28px}.history-benefits article{border-top:1px solid #36516a;padding-top:16px}.history-benefits h3{font-size:1.04rem;margin:0 0 8px}.history-benefits p{font-size:.91rem;color:#b8cbdc;margin:0}.android-copy .image-note{color:#a5bacd;margin-top:30px}.android-capture{margin:0;text-align:center}.android-capture img{max-height:850px;width:auto;border-radius:14px;box-shadow:0 24px 60px #0006;border:1px solid #43586b}.android-capture figcaption{color:#b8cbdc;font-size:.83rem;margin-top:18px}.android-capture a{color:#77e4d1;text-underline-offset:4px}
@media(max-width:950px){.benefit-grid{gap:24px}.android-layout{grid-template-columns:1fr;gap:48px}.android-capture img{max-height:720px}.case-study figcaption{align-items:flex-start;flex-direction:column;gap:16px}}
@media(max-width:670px){.site-header nav{flex-wrap:wrap;justify-content:flex-start;gap:14px}.benefit-grid{grid-template-columns:1fr;margin-block:32px 44px}.case-studies{gap:45px}.case-study h3{font-size:1.45rem}.history-benefits{grid-template-columns:1fr;gap:22px}.android-section{padding-block:70px}.screenshot-frame{border-radius:8px}.android-capture img{max-height:620px}}

.mobile-intro{max-width:850px}.mobile-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:46px}.mobile-gallery figure{margin:0;min-width:0}.mobile-gallery figure>a{display:block;line-height:0}.mobile-gallery img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #52667b;box-shadow:0 18px 42px #0003}.mobile-gallery figcaption{padding-top:22px}.mobile-gallery .case-label{color:#68d9c8}.mobile-gallery h3{font-size:1.27rem;line-height:1.3;margin:12px 0}.mobile-gallery p{font-size:.93rem;color:#b8cbdc;margin:0 0 15px}.mobile-gallery figcaption>a{font-size:.85rem;color:#77e4d1;text-underline-offset:4px}.mobile-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:56px}.mobile-details article{border-top:1px solid #36516a;padding-top:20px}.mobile-details h3{margin:0 0 10px;font-size:1.1rem}.mobile-details p{margin:0;color:#b8cbdc;font-size:.93rem}.mobile-footnote{color:#a5bacd;margin-top:30px}
@media(max-width:950px){.mobile-gallery{gap:18px}.mobile-gallery h3{font-size:1.08rem}.mobile-details{gap:22px}}
@media(max-width:670px){.mobile-gallery,.mobile-details{grid-template-columns:1fr}.mobile-gallery{gap:46px}.mobile-gallery figure{max-width:420px;margin-inline:auto}.mobile-gallery h3{font-size:1.27rem}.mobile-details{gap:28px}}

/* Request sequence diagrams. */
.flow-choices{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.flow-choices button{padding:12px 22px;border:1px solid #a9c9c3;border-radius:9px;background:white;color:var(--ink);font:inherit;font-weight:750;cursor:pointer}.flow-choices button[aria-pressed="true"]{background:var(--navy);color:white;border-color:var(--navy)}.flow-choices button:focus-visible,.flow-preview:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.flow-panel{margin:0 0 32px}.flow-panel[hidden]{display:none}.flow-panel h3{margin:0 0 10px;font-size:1.5rem}.flow-panel figcaption p{color:var(--muted);margin:0 0 16px}.flow-actions{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:20px;font-weight:700;color:#087d71}.flow-preview{display:block;max-height:680px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:white}.flow-preview img{display:block;width:100%;height:auto}.mobile-footnote a{color:#77e4d1}@media(max-width:670px){.flow-preview img{min-width:1000px}.flow-preview{max-height:480px}.flow-actions{gap:12px}}

.flow-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:32px 0}.flow-detail{min-width:0;padding:22px;border:1px solid var(--line);border-radius:12px;background:white}.flow-detail h4{font-size:1.15rem;margin:0 0 12px}.flow-detail img{width:100%;height:auto;display:block;border:1px solid var(--line);margin:16px 0}.flow-detail .flow-actions{margin:16px 0 0;gap:16px}@media(max-width:670px){.flow-detail-grid{grid-template-columns:1fr}}

.module-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:white}.module-table{width:100%;border-collapse:collapse;text-align:left;font-size:.93rem}.module-table caption{text-align:left;padding:18px 22px;color:var(--muted)}.module-table th,.module-table td{padding:18px 22px;border-top:1px solid var(--line);vertical-align:top}.module-table thead{background:var(--navy);color:white}.module-table tbody th{font-weight:650}.module-table code{font-size:.83rem;overflow-wrap:anywhere}.module-table tbody tr:nth-child(even){background:#f4f9fb}.module-table td:nth-child(2){min-width:180px}.module-table td:last-child{min-width:340px}.module-table-wrap:focus-visible{outline:3px solid var(--teal);outline-offset:4px}

.qr-screen-example{margin:28px 0;padding:24px;border:1px solid var(--line);border-radius:12px;background:#fff}.qr-screen-example h4{font-size:1.25rem;margin:0 0 12px}.qr-screen-example img{display:block;width:min(100%,961px);height:auto;border:2px solid #000;margin:20px 0}.qr-screen-example p{color:var(--muted)}
