:root{--bg:#f6f7f9;--panel:#ffffff;--text:#15181d;--muted:#5b6472;--accent:#1d5fd1;--bubble-user:#1d5fd1;--bubble-bot:#ffffff;--border:#e2e5ea}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;font-size:20px;line-height:1.5}.shell{max-width:860px;margin:0 auto;min-height:100vh;flex-direction:column;padding:0 16px}.shell,.top{display:flex}.top{align-items:baseline;justify-content:space-between;padding:28px 0 16px;border-bottom:1px solid var(--border)}.brand{font-size:32px;font-weight:800;letter-spacing:-.5px}.brand span{color:var(--accent)}.tag{font-size:17px}.tag,.top a{color:var(--muted)}.top a{font-size:16px}.chat{flex:1 1;padding:24px 0;display:flex;flex-direction:column;gap:16px}.msg{max-width:80%;padding:14px 18px;border-radius:18px;white-space:pre-wrap;word-wrap:break-word}.msg.user{align-self:flex-end;background:var(--bubble-user);color:#fff;border-bottom-right-radius:6px}.msg.bot{align-self:flex-start;background:var(--bubble-bot);border:1px solid var(--border);border-bottom-left-radius:6px}.msg.bot a{color:var(--accent);word-break:break-all}.msg.error{border-color:#e4a2a2;background:#fff5f5}.status{align-self:flex-start;font-size:17px;font-style:italic;padding-left:6px}.empty,.status{color:var(--muted)}.empty{margin:auto 0;text-align:center}.empty p{margin:6px 0}.composer{position:-webkit-sticky;position:sticky;bottom:0;display:flex;gap:10px;padding:16px 0 28px;background:var(--bg)}.composer input{flex:1 1;font-size:20px;padding:14px 18px;border:1px solid var(--border);border-radius:14px;outline:none}.composer input:focus{border-color:var(--accent)}.composer button{font-size:20px;padding:0 24px;border:0;border-radius:14px;background:var(--accent);color:#fff;font-weight:600;cursor:pointer}.composer button:disabled{opacity:.5;cursor:default}table.log{width:100%;border-collapse:collapse;font-size:16px;margin:24px 0;background:var(--panel)}table.log td,table.log th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:top}table.log th{color:var(--muted);font-weight:600}table.log td.url{word-break:break-all;max-width:260px;color:var(--muted)}.composer button.attach{background:var(--panel);border:1px solid var(--border);padding:0 16px;font-size:22px}.thumb{display:block;max-width:240px;max-height:180px;border-radius:10px;margin-bottom:8px}.pending-photo{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:16px}.pending-photo img{width:48px;height:48px;object-fit:cover;border-radius:8px}.hosted-banner{margin-top:16px;padding:12px 16px;border-radius:12px;background:#eef4ff;color:#23407a;font-size:16px}.landing{max-width:1040px;margin:0 auto;padding:0 16px 48px}.landing-nav{display:flex;align-items:center;justify-content:space-between;padding:24px 0}.landing-nav .nav-link{color:var(--muted);font-size:17px;text-decoration:none;border:1px solid var(--border);padding:8px 14px;border-radius:10px;background:var(--panel)}.landing-nav .nav-link:hover{color:var(--text)}.hero{padding:48px 0 32px;max-width:760px}.eyebrow{color:var(--accent);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px}.hero h1{font-size:clamp(36px,6vw,60px);line-height:1.05;letter-spacing:-1.2px;margin:0 0 20px}.lede{font-size:clamp(18px,2.2vw,22px);color:var(--muted);margin:0 0 28px}.cta-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-block;font-size:18px;font-weight:600;padding:14px 22px;border-radius:12px;border:1px solid var(--border);background:var(--panel);color:var(--text);text-decoration:none;cursor:pointer}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn:disabled{opacity:.6;cursor:default}.video-wrap{margin:24px 0 56px;border-radius:18px;overflow:hidden;border:1px solid var(--border);background:#0f1724;aspect-ratio:16/9}.video-wrap iframe,.video-wrap video{width:100%;height:100%;border:0;display:block}.video-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#c9d3e3;text-align:center;padding:24px}.video-placeholder strong{color:#fff;font-size:22px}.video-placeholder span{font-size:17px;max-width:460px}.features{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-bottom:56px}@media (max-width:960px){.features{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.features{grid-template-columns:1fr}}.feature{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:22px}.feature h2{font-size:20px;margin:0 0 8px}.feature p{font-size:17px;color:var(--muted);margin:0}.for-cities{max-width:760px;margin-bottom:56px}.early-access h2,.for-cities h2{font-size:28px;letter-spacing:-.4px;margin:0 0 12px}.early-access>p,.for-cities p{font-size:18px;color:var(--muted);margin:0 0 20px}.early-access{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:32px;max-width:760px}.waitlist{display:grid;grid-gap:14px;gap:14px;max-width:480px}.waitlist label{display:grid;grid-gap:6px;gap:6px;font-size:16px;font-weight:600}.waitlist .optional{color:var(--muted);font-weight:400}.waitlist input{font-size:18px;padding:12px 14px;border:1px solid var(--border);border-radius:10px}.waitlist input:focus{outline:none;border-color:var(--accent)}.waitlist .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.waitlist button{justify-self:start}.waitlist-done{font-size:18px;font-weight:600;color:#1f6b3a}.waitlist-error{color:#a23a3a;margin:0;font-size:16px}.fine-print{margin:0}.fine-print,.landing-footer{color:var(--muted);font-size:14px}.landing-footer{margin-top:56px;padding-top:24px;border-top:1px solid var(--border)}.landing-footer p{margin:0 0 6px;max-width:760px}@media (max-width:600px){.hero{padding-top:24px}.early-access{padding:22px}.btn{width:100%;text-align:center}}