PageSourceSearch

https://astrologyapi-pages.pages.dev/

html astrologyapi-pages.pages.dev collected 2026-10-03 05:38:01 UTC 688,537 bytes, 1,050 lines download raw bytes

1<!DOCTYPE html><html class="scroll-smooth" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>Astrology API — Birth Charts, Horoscopes &amp; AI Readings</title><meta name="description" content="Ship astrology features fast with one API: birth charts, Kundli, horoscopes, tarot, PDF reports, and AI readings. 300+ endpoints, 99.99% uptime. Start free."/><link rel="canonical" href="https://astrologyapi.com/"/><meta property="og:type" content="website"/><meta property="og:url" content="https://astrologyapi.com/"/><meta property="og:title" content="Astrology API — Birth Charts, Horoscopes &amp; AI Readings"/><meta property="og:description" content="Ship astrology features fast with one API: birth charts, Kundli, horoscopes, tarot, PDF reports, and AI readings. 300+ endpoints, 99.99% uptime. Start free."/><meta property="og:image" content="https://astrologyapi.com/imgs/astrologyAPI.png"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Astrology API — Birth Charts, Horoscopes &amp; AI Readings"/><meta name="twitter:description" content="Ship astrology features fast with one API: birth charts, Kundli, horoscopes, tarot, PDF reports, and AI readings. 300+ endpoints, 99.99% uptime. Start free."/><meta name="twitter:image" content="https://astrologyapi.com/imgs/astrologyAPI.png"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://astrologyapi.com/#organization","name":"AstrologyAPI","url":"https://astrologyapi.com/","logo":"https://astrologyapi.com/imgs/logo2.svg","description":"Developer-first astrology platform: 300+ REST API endpoints for birth charts, Kundli, horoscopes, transits, tarot, PDF reports, and AI readings."},{"@type":"WebSite","@id":"https://astrologyapi.com/#website","name":"AstrologyAPI","url":"https://astrologyapi.com/","publisher":{"@id":"https://astrologyapi.com/#organization"}},{"@type":"SoftwareApplication","name":"AstrologyAPI","applicationCategory":"DeveloperApplication","operatingSystem":"Any","url":"https://astrologyapi.com/","description":"REST API platform for astrology products. Vedic and Western calculations, AI chat grounded in birth charts, MCP server for LLMs, and white-label PDF reports.","offers":{"@type":"Offer","price":"0","priceCurrency":"USD","description":"Free credits on signup, no credit card required."},"provider":{"@id":"https://astrologyapi.com/#organization"}}]}</script>
1<link rel="preconnect" href="https://vz-5adf132b-5e9.b-cdn.net" class="jsx-c3f93000431c9cd0"/><link rel="dns-prefetch" href="https://player.mediadelivery.net" class="jsx-c3f93000431c9cd0"/><meta name="next-head-count" content="17"/><link rel="apple-touch-icon" sizes="57x57" href="/favicon/apple-icon-57x57.png"/><link rel="apple-touch-icon" sizes="60x60" href="/favicon/apple-icon-60x60.png"/><link rel="apple-touch-icon" sizes="72x72" href="/favicon/apple-icon-72x72.png"/><link rel="apple-touch-icon" sizes="76x76" href="/favicon/apple-icon-76x76.png"/><link rel="apple-touch-icon" sizes="114x114" href="/favicon/apple-icon-114x114.png"/><link rel="apple-touch-icon" sizes="120x120" href="/favicon/apple-icon-120x120.png"/><link rel="apple-touch-icon" sizes="144x144" href="/favicon/apple-icon-144x144.png"/><link rel="apple-touch-icon" sizes="152x152" href="/favicon/apple-icon-152x152.png"/><link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-icon-180x180.png"/><link rel="icon" type="image/png" sizes="192x192" href="/favicon/android-chrome-192x192.png"/><link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png"/><link rel="icon" type="image/png" sizes="96x96" href="/favicon/favicon-96x96.png"/><link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png"/><meta name="msapplication-TileColor" content="#ffffff"/><meta name="msapplication-TileImage" content="/favicon/ms-icon-144x144.png"/><meta name="theme-color" content="#ffffff"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link href="https://api.fontshare.com/v2/css?f[]=clash-display@400,500,600,700&amp;display=swap" rel="stylesheet"/>
1<script src="https://demo-worker.sheetal-rathi.workers.dev/birth-chart-widget.js" strategy="lazyOnload"></script>
1<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/07e97c3af449fac7.css" as="style" crossorigin=""/><link rel="stylesheet" href="/_next/static/css/07e97c3af449fac7.css" crossorigin="" data-n-g=""/><noscript data-n-css=""></noscript>
1<script defer="" crossorigin="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script>
1<script src="/_next/static/chunks/webpack-5004356805d1bb28.js" defer="" crossorigin=""></script>
1<script src="/_next/static/chunks/framework-18d294c404ec4fd7.js" defer="" crossorigin=""></script>
1<script src="/_next/static/chunks/main-d9b797f05a76f928.js" defer="" crossorigin=""></script>
1<script src="/_next/static/chunks/pages/_app-35330178d61213a2.js" defer="" crossorigin=""></script>
1<script src="/_next/static/chunks/96957-06c05b84a2f4fa3d.js" defer="" crossorigin=""></script>
1<script src="/_next/static/chunks/pages/index-70f730adf5989213.js" defer="" crossorigin=""></script>
1<script src="/_next/static/f_-_rERxrDatyZ7O3CGyT/_buildManifest.js" defer="" crossorigin=""></script>
1<script src="/_next/static/f_-_rERxrDatyZ7O3CGyT/_ssgManifest.js" defer="" crossorigin=""></script>
1<style id="__jsx-15aa96cfb3f8b3a7">.perspective-container.jsx-15aa96cfb3f8b3a7{-webkit-perspective:1e3px;-moz-perspective:1e3px;perspective:1e3px;-webkit-perspective-origin:50%50%;-moz-perspective-origin:50%50%;perspective-origin:50%50%}.flowing-grid.jsx-15aa96cfb3f8b3a7{background-image:-webkit-linear-gradient(left,var(--border-color)1.5px,transparent 1.5px),-webkit-linear-gradient(top,var(--border-color)1.5px,transparent 1.5px);background-image:-moz-linear-gradient(left,var(--border-color)1.5px,transparent 1.5px),-moz-linear-gradient(top,var(--border-color)1.5px,transparent 1.5px);background-image:-o-linear-gradient(left,var(--border-color)1.5px,transparent 1.5px),-o-linear-gradient(top,var(--border-color)1.5px,transparent 1.5px);background-image:linear-gradient(to right,var(--border-color)1.5px,transparent 1.5px),linear-gradient(to bottom,var(--border-color)1.5px,transparent 1.5px);-webkit-background-size:60px 60px;-moz-background-size:60px 60px;-o-background-size:60px 60px;background-size:60px 60px;height:350%;width:350%;left:-125%;top:-125%;-webkit-transform:rotatex(55deg)translatey(0)translatez(0);-moz-transform:rotatex(55deg)translatey(0)translatez(0);transform:rotatex(55deg)translatey(0)translatez(0);-webkit-transform-origin:50%50%;-moz-transform-origin:50%50%;-ms-transform-origin:50%50%;-o-transform-origin:50%50%;transform-origin:50%50%;-webkit-animation:flow 5s linear infinite;-moz-animation:flow 5s linear infinite;-o-animation:flow 5s linear infinite;animation:flow 5s linear infinite;opacity:.6;will-change:transform,filter}.dark .flowing-grid.jsx-15aa96cfb3f8b3a7{opacity:.6;-webkit-filter:url(#wave-distortion)drop-shadow(0 0 2px var(--accent-primary));filter:url(#wave-distortion)drop-shadow(0 0 2px var(--accent-primary))}@-webkit-keyframes flow{from{-webkit-transform:rotatex(55deg)translatey(0);transform:rotatex(55deg)translatey(0)}to{-webkit-transform:rotatex(55deg)translatey(120px);transform:rotatex(55deg)translatey(120px)}}@-moz-keyframes flow{from{-moz-transform:rotatex(55deg)translatey(0);transform:rotatex(55deg)translatey(0)}to{-moz-transform:rotatex(55deg)translatey(120px);transform:rotatex(55deg)translatey(120px)}}@-o-keyframes flow{from{transform:rotatex(55deg)translatey(0)}to{transform:rotatex(55deg)translatey(120px)}}@keyframes flow{from{-webkit-transform:rotatex(55deg)translatey(0);-moz-transform:rotatex(55deg)translatey(0);transform:rotatex(55deg)translatey(0)}to{-webkit-transform:rotatex(55deg)translatey(120px);-moz-transform:rotatex(55deg)translatey(120px);transform:rotatex(55deg)translatey(120px)}}@media(max-width:768px){.flowing-grid.jsx-15aa96cfb3f8b3a7{-webkit-background-size:30px 30px;-moz-background-size:30px 30px;-o-background-size:30px 30px;background-size:30px 30px}}</style><style id="__jsx-c3f93000431c9cd0">.hero-film-frame.jsx-c3f93000431c9cd0{background:#10172f;-webkit-box-shadow:0 40px 90px -50px rgba(15,23,42,.45),0 12px 30px -18px rgba(15,23,42,.2);-moz-box-shadow:0 40px 90px -50px rgba(15,23,42,.45),0 12px 30px -18px rgba(15,23,42,.2);box-shadow:0 40px 90px -50px rgba(15,23,42,.45),0 12px 30px -18px rgba(15,23,42,.2)}.dark .hero-film-frame.jsx-c3f93000431c9cd0{-webkit-box-shadow:0 40px 90px -50px rgba(0,0,0,.9);-moz-box-shadow:0 40px 90px -50px rgba(0,0,0,.9);box-shadow:0 40px 90px -50px rgba(0,0,0,.9)}.hero-film-pill.jsx-c3f93000431c9cd0{color:#111827;background:rgba(255,255,255,.94);-webkit-box-shadow:0 10px 30px rgba(0,0,0,.25);-moz-box-shadow:0 10px 30px rgba(0,0,0,.25);box-shadow:0 10px 30px rgba(0,0,0,.25)}.hero-modal-backdrop.jsx-c3f93000431c9cd0{background:rgba(8,10,20,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-modal-close.jsx-c3f93000431c9cd0{color:#f8fafc;background:rgba(15,23,42,.7);border:1px solid rgba(255,255,255,.16)}@media(prefers-reduced-motion:reduce){.hero-film-pill.jsx-c3f93000431c9cd0{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important}}</style><style id="__jsx-b217c39370714247">@-webkit-keyframes marquee{0%{-webkit-transform:translatex(0);transform:translatex(0)}100%{-webkit-transform:translatex(-50%);transform:translatex(-50%)}}@-moz-keyframes marquee{0%{-moz-transform:translatex(0);transform:translatex(0)}100%{-moz-transform:translatex(-50%);transform:translatex(-50%)}}@-o-keyframes marquee{0%{-o-transform:translatex(0);transform:translatex(0)}100%{-o-transform:translatex(-50%);transform:translatex(-50%)}}@keyframes marquee{0%{-webkit-transform:translatex(0);-moz-transform:translatex(0);-o-transform:translatex(0);transform:translatex(0)}100%{-webkit-transform:translatex(-50%);-moz-transform:translatex(-50%);-o-transform:translatex(-50%);transform:translatex(-50%)}}@-webkit-keyframes marquee-reverse{0%{-webkit-transform:translatex(-50%);transform:translatex(-50%)}100%{-webkit-transform:translatex(0);transform:translatex(0)}}@-moz-keyframes marquee-reverse{0%{-moz-transform:translatex(-50%);transform:translatex(-50%)}100%{-moz-transform:translatex(0);transform:translatex(0)}}@-o-keyframes marquee-reverse{0%{-o-transform:translatex(-50%);transform:translatex(-50%)}100%{-o-transform:translatex(0);transform:translatex(0)}}@keyframes marquee-reverse{0%{-webkit-transform:translatex(-50%);-moz-transform:translatex(-50%);-o-transform:translatex(-50%);transform:translatex(-50%)}100%{-webkit-transform:translatex(0);-moz-transform:translatex(0);-o-transform:translatex(0);transform:translatex(0)}}.animate-marquee{-webkit-animation:marquee 40s linear infinite;-moz-animation:marquee 40s linear infinite;-o-animation:marquee 40s linear infinite;animation:marquee 40s linear infinite}.animate-marquee-reverse{-webkit-animation:marquee-reverse 40s linear infinite;-moz-animation:marquee-reverse 40s linear infinite;-o-animation:marquee-reverse 40s linear infinite;animation:marquee-reverse 40s linear infinite}</style><style id="__jsx-2274f9b712eba5da">.bento-card-animation{-webkit-animation:bentoReveal.55s cubic-bezier(.22,1,.36,1)both;-moz-animation:bentoReveal.55s cubic-bezier(.22,1,.36,1)both;-o-animation:bentoReveal.55s cubic-bezier(.22,1,.36,1)both;animation:bentoReveal.55s cubic-bezier(.22,1,.36,1)both;opacity:0}
1@-webkit-keyframes bentoReveal{from{opacity:0;-webkit-transform:translatey(24px)scale(.97);transform:translatey(24px)scale(.97)}to{opacity:1;-webkit-transform:translatey(0)scale(1);transform:translatey(0)scale(1)}}@-moz-keyframes bentoReveal{from{opacity:0;-moz-transform:translatey(24px)scale(.97);transform:translatey(24px)scale(.97)}to{opacity:1;-moz-transform:translatey(0)scale(1);transform:translatey(0)scale(1)}}@-o-keyframes bentoReveal{from{opacity:0;-o-transform:translatey(24px)scale(.97);transform:translatey(24px)scale(.97)}to{opacity:1;-o-transform:translatey(0)scale(1);transform:translatey(0)scale(1)}}@keyframes bentoReveal{from{opacity:0;-webkit-transform:translatey(24px)scale(.97);-moz-transform:translatey(24px)scale(.97);-o-transform:translatey(24px)scale(.97);transform:translatey(24px)scale(.97)}to{opacity:1;-webkit-transform:translatey(0)scale(1);-moz-transform:translatey(0)scale(1);-o-transform:translatey(0)scale(1);transform:translatey(0)scale(1)}}.bento-expand-icon{-webkit-transition:-webkit-transform.35s ease,border-color.35s ease,color.35s ease;-moz-transition:-moz-transform.35s ease,border-color.35s ease,color.35s ease;-o-transition:-o-transform.35s ease,border-color.35s ease,color.35s ease;transition:-webkit-transform.35s ease,border-color.35s ease,color.35s ease;transition:-moz-transform.35s ease,border-color.35s ease,color.35s ease;transition:-o-transform.35s ease,border-color.35s ease,color.35s ease;transition:transform.35s ease,border-color.35s ease,color.35s ease}.group\/card:hover .bento-expand-icon{-webkit-transform:scale(1.12)rotate(12deg);-moz-transform:scale(1.12)rotate(12deg);-ms-transform:scale(1.12)rotate(12deg);-o-transform:scale(1.12)rotate(12deg);transform:scale(1.12)rotate(12deg);border-color:rgba(255,196,107,.55);color:#ffc46b}.xv-frame{--xv-ink:#1b1d38;--xv-ink-soft:#5a5f78;--xv-surface:#ffffff;--xv-wash:#f5f4fa;--xv-line:rgba(27, 29, 56, 0.12);--xv-line-strong:rgba(27, 29, 56, 0.26);--xv-accent:var(--accent-primary);--xv-accent-soft:rgba(var(--accent-primary-rgb), 0.12);--xv-on-accent:var(--accent-contrast-text);--xv-gold:#b7791f;--xv-gold-soft:rgba(215, 150, 40, 0.16);--xv-cool:#0e7fa6;--xv-rose:#d0417f;--xv-good:#23875a;--xv-good-soft:rgba(35, 135, 90, 0.12);--xv-bad:#cc4639;--xv-bad-soft:rgba(204, 70, 57, 0.12);--xv-glow:rgba(var(--accent-primary-rgb), 0.35);position:relative;width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;isolation:isolate;color:var(--xv-ink);background:var(--xv-wash);-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.dark .xv-frame{--xv-ink:#eeeaf7;--xv-ink-soft:#a29fb4;--xv-surface:#15151b;--xv-wash:#0b0b10;--xv-line:rgba(255, 255, 255, 0.11);--xv-line-strong:rgba(255, 255, 255, 0.24);--xv-gold:#f2b44f;--xv-gold-soft:rgba(242, 180, 79, 0.16);--xv-cool:#5ec4e6;--xv-rose:#ff80b5;--xv-good:#5dd08f;--xv-good-soft:rgba(93, 208, 143, 0.14);--xv-bad:#ff7b6b;--xv-bad-soft:rgba(255, 123, 107, 0.14);--xv-glow:rgba(var(--accent-primary-rgb), 0.32)}.xv-stage{display:block;width:100%;height:100%;overflow:visible}.xv-mono{font-family:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-variant-numeric:tabular-nums}.xv-glyph{font-family:"Apple Symbols","Segoe UI Symbol","Noto Sans Symbols","Noto Sans Symbols 2","DejaVu Sans",sans-serif;font-style:normal;font-weight:400;font-variant-emoji:text}.xv-panel{background:var(--xv-surface);border:1px solid var(--xv-line);-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;color:var(--xv-ink)}.xv-panel-head{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:8px;padding:6px 9px;border-bottom:1px solid var(--xv-line);font-size:9px;line-height:12px}.xv-panel-title{font-weight:700;letter-spacing:.04em;color:var(--xv-ink)}.xv-panel-meta{color:var(--xv-ink-soft)}.xv-chip{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;
1height:16px;padding:0 7px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;border:1px solid var(--xv-line-strong);background:var(--xv-surface);color:var(--xv-ink);font-size:9.5px;font-weight:600;line-height:1;white-space:nowrap}.xv-chip-accent{color:var(--xv-accent);background:var(--xv-accent-soft);border-color:var(--xv-accent)}.xv-chip-gold{color:var(--xv-gold);background:var(--xv-gold-soft);border-color:var(--xv-gold)}.xv-chip-good{color:var(--xv-good);background:var(--xv-good-soft);border-color:var(--xv-good)}.xv-chip-bad{color:var(--xv-bad);background:var(--xv-bad-soft);border-color:var(--xv-bad)}.xv-chip-lead{font-weight:800}.xv-frame:not(.xv-live),.xv-frame:not(.xv-live) *{-webkit-animation-play-state:paused!important;-moz-animation-play-state:paused!important;-o-animation-play-state:paused!important;animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.xv-frame,.xv-frame *{-webkit-animation:none!important;-moz-animation:none!important;-o-animation:none!important;animation:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important}.bento-card-animation{-webkit-animation:none;-moz-animation:none;-o-animation:none;animation:none;opacity:1}}</style><style id="__jsx-4694bff8ed215a33">.ga-root{--ga-ink:#0f172a;--ga-ink-soft:#475569;--ga-ink-faint:#5b6679;--ga-surface:#ffffff;--ga-wash:#f6f7fb;--ga-line:#e2e8f0;--ga-line-strong:#cbd5e1;--ga-accent:var(--accent-primary);--ga-accent-ink:#4f4ae6;--ga-accent-soft:rgba(var(--accent-primary-rgb), 0.1);--ga-accent-mid:rgba(var(--accent-primary-rgb), 0.22);--ga-on-accent:var(--accent-contrast-text);--ga-good:#15803d;--ga-good-soft:rgba(21, 128, 61, 0.1);--ga-warn:#b45309;--ga-warn-soft:rgba(180, 83, 9, 0.08);--ga-shadow:0 1px 2px rgba(15, 23, 42, 0.04),
2        0 18px 40px -22px rgba(15, 23, 42, 0.22);--ga-code-bg:#11181f;--ga-code-head:#1a222c;--ga-code-line:#32404f;--ga-code-ink:#c9d5e0;--ga-code-soft:#8a9bac;--ga-code-active:#22303e;--ga-code-key:#7dd3fc;--ga-code-str:#9df5a8;--ga-code-num:#f0b866;--ga-code-punct:#7b8a9c;--ga-code-cmd:#c4b5fd;--ga-code-focus:#7dd3fc;--ga-band-bg:#0b0c1d;--ga-band-card:rgba(255, 255, 255, 0.035);--ga-band-ink:#eef0fb;--ga-band-soft:#a9aec8;--ga-band-line:rgba(255, 255, 255, 0.1);--ga-band-accent:#a9a6ff;--ga-band-accent-rgb:169, 166, 255;color:var(--ga-ink);overflow-x:clip}.dark .ga-root{--ga-ink:#f0f0f0;--ga-ink-soft:#a8a8a8;--ga-ink-faint:#8f8f8f;--ga-surface:#111111;--ga-wash:#0a0a0a;--ga-line:#293034;--ga-line-strong:#3b464c;--ga-accent-ink:var(--accent-primary);--ga-accent-soft:rgba(var(--accent-primary-rgb), 0.1);--ga-accent-mid:rgba(var(--accent-primary-rgb), 0.24);--ga-good:#5dd08f;--ga-good-soft:rgba(93, 208, 143, 0.12);--ga-warn:#f2b44f;--ga-warn-soft:rgba(242, 180, 79, 0.08);--ga-shadow:0 18px 40px -24px rgba(0, 0, 0, 0.8);--ga-code-bg:#0c1116;--ga-code-head:#131a21;--ga-code-line:#26313c;--ga-band-bg:#0a0b17;--ga-band-line:rgba(255, 255, 255, 0.09);--ga-band-accent:var(--accent-primary);--ga-band-accent-rgb:var(--accent-primary-rgb)}.ga-mono{font-family:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-variant-numeric:tabular-nums}.ga-link{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--ga-accent-ink);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-transition:gap.2s ease;-moz-transition:gap.2s ease;-o-transition:gap.2s ease;transition:gap.2s ease}.ga-link:hover{gap:10px}.ga-root a:focus-visible,.ga-root button:focus-visible,.ga-root [tabindex="0"]:focus-visible{outline:2px solid var(--ga-accent);outline-offset:2px}.ga-panel{background:var(--ga-surface);border:1px solid var(--ga-line);-webkit-border-radius:16px;-moz-border-radius:16px;border-radius:16px;-webkit-box-shadow:var(--ga-shadow);-moz-box-shadow:var(--ga-shadow);box-shadow:var(--ga-shadow);min-width:0}.ga-panel-head{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;
2-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--ga-line);font-size:12px;line-height:18px}.ga-panel-title{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-weight:800;color:var(--ga-ink)}.ga-panel-meta{color:var(--ga-ink-faint);font-size:12px}.ga-live-dot{width:8px;height:8px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:var(--ga-good);-webkit-box-shadow:0 0 0 3px var(--ga-good-soft);-moz-box-shadow:0 0 0 3px var(--ga-good-soft);box-shadow:0 0 0 3px var(--ga-good-soft)}.ga-reserve{display:grid}.ga-reserve>*{grid-area:1/1;min-width:0}.ga-ghost{visibility:hidden;pointer-events:none}.ga-tabs{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px}.ga-tab{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:6px;padding:8px 14px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;border:1px solid var(--ga-line);background:var(--ga-wash);color:var(--ga-ink-soft);font-size:13px;line-height:18px;font-weight:700;-webkit-transition:border-color.2s,background.2s,color.2s;-moz-transition:border-color.2s,background.2s,color.2s;-o-transition:border-color.2s,background.2s,color.2s;transition:border-color.2s,background.2s,color.2s}.ga-tab:hover{border-color:var(--ga-accent)}.ga-tab[aria-selected="true"]{background:var(--ga-accent);border-color:var(--ga-accent);color:var(--ga-on-accent)}.ga-tab-sub{font-size:11px;font-weight:600;opacity:.8}.ga-switch{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;padding:6px 8px 6px 12px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;border:1px solid var(--ga-line);background:var(--ga-surface);font-size:13px;font-weight:700;color:var(--ga-ink)}.ga-switch-state{min-width:24px;font-size:12px;color:var(--ga-ink-soft)}.ga-switch-track{position:relative;width:38px;height:22px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;background:var(--ga-line-strong);-webkit-transition:background.2s;-moz-transition:background.2s;-o-transition:background.2s;transition:background.2s;-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}.ga-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#fff;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.25);-moz-box-shadow:0 1px 2px rgba(0,0,0,.25);box-shadow:0 1px 2px rgba(0,0,0,.25);-webkit-transition:-webkit-transform.2s;-moz-transition:-moz-transform.2s;-o-transition:-o-transform.2s;transition:-webkit-transform.2s;transition:-moz-transform.2s;transition:-o-transform.2s;transition:transform.2s}.ga-switch[aria-checked="true"] .ga-switch-track{background:var(--ga-accent)}.ga-switch[aria-checked="true"] .ga-switch-track::after{-webkit-transform:translatex(16px);-moz-transform:translatex(16px);-ms-transform:translatex(16px);-o-transform:translatex(16px);transform:translatex(16px)}.ga-chip{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;padding:3px 9px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;border:1px solid var(--ga-line);background:var(--ga-wash);color:var(--ga-ink-soft);font-size:11px;line-height:16px;font-weight:600;max-width:100%}
2.ga-chat-body{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:16px;padding:18px 16px 16px}.ga-msg-user{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end;max-width:88%;padding:10px 14px;-webkit-border-radius:14px 14px 4px 14px;-moz-border-radius:14px 14px 4px 14px;border-radius:14px 14px 4px 14px;background:var(--ga-accent);color:var(--ga-on-accent);font-size:14px;line-height:21px;font-weight:600}.ga-msg-ai{-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch;-webkit-border-radius:4px 14px 14px 14px;-moz-border-radius:4px 14px 14px 14px;border-radius:4px 14px 14px 14px;border:1px solid var(--ga-line);background:var(--ga-wash);padding:12px 14px 12px}.ga-msg-meta{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;line-height:16px;color:var(--ga-ink-faint)}.ga-msg-meta b{color:var(--ga-ink);font-weight:800}.ga-pulse{width:6px;height:6px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:var(--ga-accent);-webkit-animation:gaPulse 1s ease-in-out infinite;-moz-animation:gaPulse 1s ease-in-out infinite;-o-animation:gaPulse 1s ease-in-out infinite;animation:gaPulse 1s ease-in-out infinite}.ga-answer{font-size:15px;line-height:25px;color:var(--ga-ink);margin:0}.ga-claim{color:inherit;text-decoration:none;background:var(--ga-accent-soft);border-bottom:1.5px solid var(--ga-accent);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;padding:1px 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone;cursor:pointer;-webkit-transition:background.15s;-moz-transition:background.15s;-o-transition:background.15s;transition:background.15s}.ga-claim.is-active{background:var(--ga-accent-mid)}.ga-cite{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:17px;height:17px;margin-left:4px;padding:0 4px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;background:var(--ga-accent);color:var(--ga-on-accent);font-size:11px;line-height:1;font-weight:800;vertical-align:2px}.ga-caret{display:inline-block;width:2px;height:1.05em;margin-left:2px;vertical-align:-2px;background:var(--ga-accent);-webkit-animation:gaBlink.9s steps(1)infinite;-moz-animation:gaBlink.9s steps(1)infinite;-o-animation:gaBlink.9s steps(1)infinite;animation:gaBlink.9s steps(1)infinite}.ga-typing{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:4px;padding:8px 0}.ga-typing i{width:6px;height:6px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:var(--ga-ink-faint);-webkit-animation:gaBounce 1s ease-in-out infinite;-moz-animation:gaBounce 1s ease-in-out infinite;-o-animation:gaBounce 1s ease-in-out infinite;animation:gaBounce 1s ease-in-out infinite}.ga-typing i:nth-child(2){-webkit-animation-delay:.15s;-moz-animation-delay:.15s;-o-animation-delay:.15s;animation-delay:.15s}.ga-typing i:nth-child(3){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;-o-animation-delay:.3s;animation-delay:.3s}.ga-verdict{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;margin-top:12px;padding:3px 10px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;font-size:12px;line-height:18px;font-weight:700;-webkit-transition:opacity.3s;-moz-transition:opacity.3s;-o-transition:opacity.3s;transition:opacity.3s}.ga-verdict.is-good{color:var(--ga-good);background:var(--ga-good-soft)}.ga-verdict.is-warn{color:var(--ga-warn);background:var(--ga-warn-soft)}.ga-verdict.is-hidden{opacity:0}
2.ga-ev-list{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:8px;padding:14px;margin:0;list-style:none}.ga-ev-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;padding:10px 12px;-webkit-border-radius:12px;-moz-border-radius:12px;border-radius:12px;border:1px solid var(--ga-line);background:var(--ga-surface);cursor:default;-webkit-transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,-webkit-transform.3s;-moz-transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,-moz-transform.3s;-o-transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,-o-transform.3s;transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,-webkit-transform.3s;transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,-moz-transform.3s;transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,-o-transform.3s;transition:border-color.15s,background.15s,box-shadow.15s,opacity.3s,transform.3s}.ga-ev-row.is-pending{opacity:.38;-webkit-transform:translatey(4px);-moz-transform:translatey(4px);-ms-transform:translatey(4px);-o-transform:translatey(4px);transform:translatey(4px)}.ga-ev-row.is-active{border-color:var(--ga-accent);background:var(--ga-accent-soft);-webkit-box-shadow:0 0 0 3px var(--ga-accent-soft);-moz-box-shadow:0 0 0 3px var(--ga-accent-soft);box-shadow:0 0 0 3px var(--ga-accent-soft)}.ga-ev-num{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:24px;height:24px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;background:var(--ga-accent);color:var(--ga-on-accent);font-size:12px;font-weight:800}.ga-ev-row.is-pending .ga-ev-num{background:var(--ga-line-strong);color:var(--ga-ink-soft)}.ga-ev-top{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:8px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.ga-ev-src{font-size:12px;line-height:18px;font-weight:700;color:var(--ga-accent-ink);word-wrap:anywhere;overflow-wrap:anywhere}.ga-ev-label{font-size:11px;line-height:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ga-ink-faint)}.ga-ev-value{margin-top:2px;font-size:14px;line-height:20px;font-weight:700;color:var(--ga-ink)}.ga-empty{margin:14px;padding:18px 16px;-webkit-border-radius:12px;-moz-border-radius:12px;border-radius:12px;border:1.5px dashed var(--ga-warn);background:var(--ga-warn-soft);-webkit-align-self:start;-ms-flex-item-align:start;align-self:start}.ga-empty-title{font-size:15px;line-height:22px;font-weight:800;color:var(--ga-ink)}.ga-empty p{margin-top:6px;font-size:13px;line-height:20px;color:var(--ga-ink-soft)}.ga-strip{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:8px 10px;font-size:13px;line-height:20px;color:var(--ga-ink-soft)}.ga-strip-item{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:6px;padding:6px 12px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;border:1px solid var(--ga-line);background:var(--ga-surface);color:var(--ga-ink-soft);-webkit-transition:border-color.2s;-moz-transition:border-color.2s;-o-transition:border-color.2s;transition:border-color.2s}.ga-strip-item:hover{border-color:var(--ga-accent)}.ga-strip-item b{color:var(--ga-ink);font-weight:800}.ga-code{background:var(--ga-code-bg);border:1px solid var(--ga-code-line);-webkit-border-radius:16px;-moz-border-radius:16px;border-radius:16px;overflow:hidden;min-width:0;color:var(--ga-code-ink)}.ga-code-head{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;padding:8px 10px;background:var(--ga-code-head);border-bottom:1px solid var(--ga-code-line)}.ga-code-tabs{-webkit-box-flex:1;-webkit-flex:1 1 auto;-moz-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none;padding:2px;margin:-2px}@media(max-width:639px){.ga-code-tabs{-webkit-mask-image:-webkit-linear-gradient(left,#000 82%,transparent);-webkit-mask-image:-moz-linear-gradient(left,#000 82%,transparent);-webkit-mask-image:-o-linear-gradient(left,#000 82%,transparent);-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:-webkit-linear-gradient(left,#000 82%,transparent);mask-image:-moz-linear-gradient(left,#000 82%,transparent);mask-image:-o-linear-gradient(left,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent)}}.ga-code-tab{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none;padding:5px 10px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;border:1px solid transparent;color:var(--ga-code-soft);font-size:12px;line-height:16px;font-weight:700;white-space:nowrap}.ga-code-tab[aria-selected="true"]{color:#e3edf5;background:var(--ga-code-active);border-color:var(--ga-code-line)}.ga-code-tab:focus-visible,.ga-copy:focus-visible{outline-color:var(--ga-code-focus)!important}.ga-code-title{padding:5px 4px;font-size:12px;line-height:16px;font-weight:700;color:#e3edf5;white-space:nowrap}.ga-copy{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none;margin-left:auto;padding:5px 10px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;border:1px solid var(--ga-code-line);background:var(--ga-code-bg);color:#e3edf5;font-size:12px;line-height:16px;font-weight:700;min-width:64px}.ga-copy.is-copied{color:#9df5a8}.ga-copy.is-failed{color:#fca5a5}.ga-pre{margin:0;padding:14px 16px;overflow-x:auto;font-size:12.5px;line-height:1.7;white-space:pre;color:var(--ga-code-ink)}.ga-code-note{padding:10px 16px 12px;border-top:1px solid var(--ga-code-line);font-size:12px;line-height:18px;color:var(--ga-code-soft)}.ga-tok-k{color:var(--ga-code-key)}.ga-tok-s{color:var(--ga-code-str)}.ga-tok-n{color:var(--ga-code-num)}.ga-tok-p{color:var(--ga-code-punct)}.ga-tok-f{color:var(--ga-code-key)}.ga-tok-cmd{color:var(--ga-code-cmd)}.ga-trace{position:relative;list-style:none;margin:0;padding:18px 16px 18px 16px}.ga-step{position:relative;padding-left:30px;padding-bottom:18px;-webkit-transition:opacity.45s ease,-webkit-transform.45s ease;-moz-transition:opacity.45s ease,-moz-transform.45s ease;-o-transition:opacity.45s ease,-o-transform.45s ease;transition:opacity.45s ease,-webkit-transform.45s ease;transition:opacity.45s ease,-moz-transform.45s ease;transition:opacity.45s ease,-o-transform.45s ease;transition:opacity.45s ease,transform.45s ease}.ga-step:last-child{padding-bottom:0}.ga-step::before{content:"";position:absolute;
2left:7px;top:18px;bottom:0;width:2px;background:var(--ga-line)}.ga-step:last-child::before{display:none}.ga-step.is-in::before{background:-webkit-linear-gradient(var(--ga-accent),var(--ga-line));background:-moz-linear-gradient(var(--ga-accent),var(--ga-line));background:-o-linear-gradient(var(--ga-accent),var(--ga-line));background:linear-gradient(var(--ga-accent),var(--ga-line))}.ga-step.is-out{opacity:.22;-webkit-transform:translatey(6px);-moz-transform:translatey(6px);-ms-transform:translatey(6px);-o-transform:translatey(6px);transform:translatey(6px)}.ga-node{position:absolute;left:0;top:2px;width:16px;height:16px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;border:2px solid var(--ga-line-strong);background:var(--ga-surface)}.ga-step.is-in .ga-node{border-color:var(--ga-accent);background:var(--ga-accent);-webkit-box-shadow:0 0 0 4px var(--ga-accent-soft);-moz-box-shadow:0 0 0 4px var(--ga-accent-soft);box-shadow:0 0 0 4px var(--ga-accent-soft)}.ga-step-label{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;font-size:11px;line-height:18px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ga-ink-faint);margin-bottom:6px}.ga-step-text{font-size:14px;line-height:22px;color:var(--ga-ink)}.ga-mini{background:var(--ga-code-bg);border:1px solid var(--ga-code-line);-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;padding:10px 12px;margin:0;font-size:12px;line-height:1.65;color:var(--ga-code-ink);overflow-x:auto;white-space:pre}.ga-val{font-weight:800;color:var(--ga-accent-ink);background:var(--ga-accent-soft);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:0 1px}.ga-badge-good{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;padding:2px 9px;-webkit-border-radius:999px;-moz-border-radius:999px;border-radius:999px;background:var(--ga-good-soft);color:var(--ga-good);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:none}.ga-ghost-btn{padding:4px 10px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;border:1px solid var(--ga-line);font-size:12px;font-weight:700;color:var(--ga-ink-soft);background:var(--ga-surface)}.ga-ghost-btn:hover{border-color:var(--ga-accent);color:var(--ga-ink)}.ga-compat{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:6px 14px;font-size:13px;line-height:20px;font-weight:700;color:var(--ga-ink-soft)}.ga-band{position:relative;overflow:hidden;isolation:isolate;-webkit-border-radius:24px;-moz-border-radius:24px;border-radius:24px;background:var(--ga-band-bg);border:1px solid var(--ga-band-line);color:var(--ga-band-ink)}.ga-band::before{content:"";position:absolute;inset:0;z-index:-1;background:-webkit-radial-gradient(15%0%,60%50%,rgba(var(--ga-band-accent-rgb),.16),transparent 70%),-webkit-radial-gradient(100%100%,40%40%,rgba(125,211,252,.08),transparent 70%),-webkit-radial-gradient(12%22%,1px 1px,rgba(255,255,255,.5),transparent),-webkit-radial-gradient(72%12%,1px 1px,rgba(255,255,255,.45),transparent),-webkit-radial-gradient(88%38%,1px 1px,rgba(255,255,255,.35),transparent),-webkit-radial-gradient(34%64%,1px 1px,rgba(255,255,255,.3),transparent),-webkit-radial-gradient(58%86%,1px 1px,rgba(255,255,255,.35),transparent);background:-moz-radial-gradient(15%0%,60%50%,rgba(var(--ga-band-accent-rgb),.16),transparent 70%),-moz-radial-gradient(100%100%,40%40%,rgba(125,211,252,.08),transparent 70%),-moz-radial-gradient(12%22%,1px 1px,rgba(255,255,255,.5),transparent),-moz-radial-gradient(72%12%,1px 1px,rgba(255,255,255,.45),transparent),-moz-radial-gradient(88%38%,1px 1px,rgba(255,255,255,.35),transparent),-moz-radial-gradient(34%64%,1px 1px,rgba(255,255,255,.3),transparent),-moz-radial-gradient(58%86%,1px 1px,rgba(255,255,255,.35),transparent);background:-o-radial-gradient(15%0%,60%50%,rgba(var(--ga-band-accent-rgb),.16),transparent 70%),-o-radial-gradient(100%100%,40%40%,rgba(125,211,252,.08),transparent 70%),-o-radial-gradient(12%22%,1px 1px,rgba(255,255,255,.5),transparent),-o-radial-gradient(72%12%,1px 1px,rgba(255,255,255,.45),transparent),-o-radial-gradient(88%38%,1px 1px,rgba(255,255,255,.35),transparent),-o-radial-gradient(34%64%,1px 1px,rgba(255,255,255,.3),transparent),-o-radial-gradient(58%86%,1px 1px,rgba(255,255,255,.35),transparent);background:radial-gradient(60%50%at 15%0%,rgba(var(--ga-band-accent-rgb),.16),transparent 70%),radial-gradient(40%40%at 100%100%,rgba(125,211,252,.08),transparent 70%),radial-gradient(1px 1px at 12%22%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 72%12%,rgba(255,255,255,.45),transparent),radial-gradient(1px 1px at 88%38%,rgba(255,255,255,.35),transparent),radial-gradient(1px 1px at 34%64%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 58%86%,rgba(255,255,255,.35),transparent)}.ga-band-soft{color:var(--ga-band-soft)}.ga-rail{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.ga-rail i{display:block;height:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background:var(--ga-band-line);overflow:hidden;position:relative}.ga-rail i::after{content:"";position:absolute;inset:0;background:var(--ga-band-accent);-webkit-transform:scalex(0);-moz-transform:scalex(0);-ms-transform:scalex(0);-o-transform:scalex(0);transform:scalex(0);-webkit-transform-origin:left;-moz-transform-origin:left;-ms-transform-origin:left;-o-transform-origin:left;transform-origin:left;-webkit-transition:-webkit-transform.6s ease;-moz-transition:-moz-transform.6s ease;-o-transition:-o-transform.6s ease;transition:-webkit-transform.6s ease;transition:-moz-transform.6s ease;transition:-o-transform.6s ease;transition:transform.6s ease}.ga-rail i.is-on::after{-webkit-transform:scalex(1);-moz-transform:scalex(1);-ms-transform:scalex(1);-o-transform:scalex(1);transform:scalex(1)}.ga-stages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:14px}@media(min-width:768px){.ga-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.ga-stages{grid-template-columns:repeat(3,minmax(0,1fr))}}.ga-stage{position:relative;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:10px;min-width:0;padding:16px;-webkit-border-radius:16px;-moz-border-radius:16px;border-radius:16px;background:var(--ga-band-card);border:1px solid var(--ga-band-line);-webkit-transition:opacity.5s ease,border-color.4s ease,box-shadow.4s ease,background.4s ease;-moz-transition:opacity.5s ease,border-color.4s ease,box-shadow.4s ease,background.4s ease;-o-transition:opacity.5s ease,border-color.4s ease,box-shadow.4s ease,background.4s ease;transition:opacity.5s ease,border-color.4s ease,box-shadow.4s ease,background.4s ease}.ga-stage.is-idle{opacity:.42}.ga-stage.is-active{border-color:rgba(var(--ga-band-accent-rgb),.7);background:rgba(var(--ga-band-accent-rgb),.07);-webkit-box-shadow:0 0 0 4px rgba(var(--ga-band-accent-rgb),.1),0 20px 50px -30px rgba(var(--ga-band-accent-rgb),.8);-moz-box-shadow:0 0 0 4px rgba(var(--ga-band-accent-rgb),.1),0 20px 50px -30px rgba(var(--ga-band-accent-rgb),.8);box-shadow:0 0 0 4px rgba(var(--ga-band-accent-rgb),.1),0 20px 50px -30px rgba(var(--ga-band-accent-rgb),.8)}.ga-stage-head{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:10px}.ga-stage-num{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;
2-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:26px;height:26px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;border:1px solid var(--ga-band-line);font-size:12px;font-weight:800;color:var(--ga-band-soft);-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}.ga-stage.is-active .ga-stage-num,.ga-stage.is-done .ga-stage-num{background:var(--ga-band-accent);border-color:var(--ga-band-accent);color:#0b0c1d}.ga-stage-title{font-size:15px;line-height:20px;font-weight:800;color:var(--ga-band-ink)}.ga-stage-text{font-size:14px;line-height:21px;color:var(--ga-band-ink)}.ga-stage-meta{font-size:11.5px;line-height:17px;color:var(--ga-band-soft);word-wrap:anywhere;overflow-wrap:anywhere}.ga-stage-code{margin:0;padding:10px 12px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;background:rgba(0,0,0,.35);border:1px solid var(--ga-band-line);font-size:12px;line-height:1.65;color:var(--ga-code-ink);white-space:pre;overflow-x:auto}.ga-call{display:grid;grid-template-columns:minmax(0,auto)minmax(40px,1fr)auto;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;font-size:12px;line-height:18px}.ga-call-name{color:var(--ga-code-key);white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.ga-call-bar{height:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;background:var(--ga-band-line);overflow:hidden}.ga-call-bar i{display:block;height:100%;background:var(--ga-code-key);-webkit-transform-origin:left;-moz-transform-origin:left;-ms-transform-origin:left;-o-transform-origin:left;transform-origin:left}.ga-stage.is-active .ga-call-bar i{-webkit-animation:gaFill.9s cubic-bezier(.3,.7,.3,1)both;-moz-animation:gaFill.9s cubic-bezier(.3,.7,.3,1)both;-o-animation:gaFill.9s cubic-bezier(.3,.7,.3,1)both;animation:gaFill.9s cubic-bezier(.3,.7,.3,1)both}.ga-stage.is-active .ga-call:nth-child(2) .ga-call-bar i{-webkit-animation-duration:1.15s;-moz-animation-duration:1.15s;-o-animation-duration:1.15s;animation-duration:1.15s}.ga-stage.is-active .ga-call:nth-child(3) .ga-call-bar i{-webkit-animation-duration:.75s;-moz-animation-duration:.75s;-o-animation-duration:.75s;animation-duration:.75s}.ga-stage.is-idle .ga-call-bar i{-webkit-transform:scalex(0);-moz-transform:scalex(0);-ms-transform:scalex(0);-o-transform:scalex(0);transform:scalex(0)}.ga-call-ok{color:#9df5a8;font-weight:700}.ga-write-line{display:block;height:8px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;background:rgba(255,255,255,.14);-webkit-transform-origin:left;-moz-transform-origin:left;-ms-transform-origin:left;-o-transform-origin:left;transform-origin:left}.ga-stage.is-active .ga-write-line{-webkit-animation:gaFill 1.2s ease-out both;-moz-animation:gaFill 1.2s ease-out both;-o-animation:gaFill 1.2s ease-out both;animation:gaFill 1.2s ease-out both}.ga-stage.is-active .ga-write-line:nth-child(2){-webkit-animation-delay:.25s;-moz-animation-delay:.25s;-o-animation-delay:.25s;animation-delay:.25s}.ga-stage.is-active .ga-write-line:nth-child(3){-webkit-animation-delay:.5s;-moz-animation-delay:.5s;-o-animation-delay:.5s;animation-delay:.5s}.ga-stage.is-idle .ga-write-line{-webkit-transform:scalex(0);-moz-transform:scalex(0);-ms-transform:scalex(0);-o-transform:scalex(0);transform:scalex(0)}.ga-cite-row{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:8px;font-size:13px;line-height:19px;color:var(--ga-band-ink)}.ga-cite-row .ga-cite{background:var(--ga-band-accent);color:#0b0c1d;margin-left:0;-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none;vertical-align:0}.ga-cite-src{margin-left:auto;padding-left:6px;font-size:11px;color:var(--ga-code-key);white-space:nowrap}.ga-ship{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}@media(min-width:1024px){.ga-ship{grid-template-columns:repeat(3,minmax(0,1fr))}}.ga-ship-tile{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:10px;min-width:0;padding:18px;-webkit-border-radius:16px;-moz-border-radius:16px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid var(--ga-band-line)}.ga-ship-title{font-size:17px;line-height:22px;font-weight:800;color:var(--ga-band-ink)}.ga-ship-body{font-size:14px;line-height:21px;color:var(--ga-band-soft)}.ga-ship-line{margin:0;padding:9px 11px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;background:rgba(0,0,0,.4);border:1px solid var(--ga-band-line);font-size:12px;line-height:18px;color:var(--ga-code-ink);white-space:pre-wrap;word-wrap:anywhere;overflow-wrap:anywhere}.ga-band .ga-link{color:var(--ga-band-accent)}.ga-band-cta-secondary{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;height:40px;padding:0 16px;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;border:1px solid rgba(255,255,255,.22);font-weight:700;font-size:15px;color:var(--ga-band-ink);-webkit-transition:border-color.2s,background.2s;-moz-transition:border-color.2s,background.2s;-o-transition:border-color.2s,background.2s;transition:border-color.2s,background.2s}.ga-band-cta-secondary:hover{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.05)}.ga-band a:focus-visible,.ga-band button:focus-visible{outline-color:var(--ga-band-accent)}@-webkit-keyframes gaPulse{0%,100%{opacity:.35}50%{opacity:1}}@-moz-keyframes gaPulse{0%,100%{opacity:.35}50%{opacity:1}}@-o-keyframes gaPulse{0%,100%{opacity:.35}50%{opacity:1}}@keyframes gaPulse{0%,100%{opacity:.35}50%{opacity:1}}@-webkit-keyframes gaBlink{0%,50%{opacity:1}51%,100%{opacity:0}
2}@-moz-keyframes gaBlink{0%,50%{opacity:1}51%,100%{opacity:0}}@-o-keyframes gaBlink{0%,50%{opacity:1}51%,100%{opacity:0}}@keyframes gaBlink{0%,50%{opacity:1}51%,100%{opacity:0}}@-webkit-keyframes gaBounce{0%,100%{-webkit-transform:translatey(0);transform:translatey(0);opacity:.5}50%{-webkit-transform:translatey(-3px);transform:translatey(-3px);opacity:1}}@-moz-keyframes gaBounce{0%,100%{-moz-transform:translatey(0);transform:translatey(0);opacity:.5}50%{-moz-transform:translatey(-3px);transform:translatey(-3px);opacity:1}}@-o-keyframes gaBounce{0%,100%{-o-transform:translatey(0);transform:translatey(0);opacity:.5}50%{-o-transform:translatey(-3px);transform:translatey(-3px);opacity:1}}@keyframes gaBounce{0%,100%{-webkit-transform:translatey(0);-moz-transform:translatey(0);-o-transform:translatey(0);transform:translatey(0);opacity:.5}50%{-webkit-transform:translatey(-3px);-moz-transform:translatey(-3px);-o-transform:translatey(-3px);transform:translatey(-3px);opacity:1}}@-webkit-keyframes gaFill{from{-webkit-transform:scalex(0);transform:scalex(0)}to{-webkit-transform:scalex(1);transform:scalex(1)}}@-moz-keyframes gaFill{from{-moz-transform:scalex(0);transform:scalex(0)}to{-moz-transform:scalex(1);transform:scalex(1)}}@-o-keyframes gaFill{from{-o-transform:scalex(0);transform:scalex(0)}to{-o-transform:scalex(1);transform:scalex(1)}}@keyframes gaFill{from{-webkit-transform:scalex(0);-moz-transform:scalex(0);-o-transform:scalex(0);transform:scalex(0)}to{-webkit-transform:scalex(1);-moz-transform:scalex(1);-o-transform:scalex(1);transform:scalex(1)}}@media(prefers-reduced-motion:reduce){.ga-root,.ga-root *{-webkit-animation:none!important;-moz-animation:none!important;-o-animation:none!important;animation:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important}}</style><style id="__jsx-907a2b1e75a536a8">.video-facade-pill.jsx-907a2b1e75a536a8{color:#111827;background:rgba(255,255,255,.94);-webkit-box-shadow:0 10px 30px rgba(15,23,42,.18);-moz-box-shadow:0 10px 30px rgba(15,23,42,.18);box-shadow:0 10px 30px rgba(15,23,42,.18)}@media(prefers-reduced-motion:reduce){.video-facade-trigger.jsx-907a2b1e75a536a8 img.jsx-907a2b1e75a536a8,.video-facade-pill.jsx-907a2b1e75a536a8{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important}}</style><style id="__jsx-c3fe2f14ba365b2">.explainer-link.jsx-c3fe2f14ba365b2{text-underline-offset:4px}.explainer-link.jsx-c3fe2f14ba365b2:hover{text-decoration:underline}.explainer-link-arrow.jsx-c3fe2f14ba365b2{-webkit-transition:-webkit-transform 200ms ease;-moz-transition:-moz-transform 200ms ease;-o-transition:-o-transform 200ms ease;transition:-webkit-transform 200ms ease;transition:-moz-transform 200ms ease;transition:-o-transform 200ms ease;transition:transform 200ms ease}.explainer-link.jsx-c3fe2f14ba365b2:hover .explainer-link-arrow.jsx-c3fe2f14ba365b2{-webkit-transform:translatey(2px);-moz-transform:translatey(2px);-ms-transform:translatey(2px);-o-transform:translatey(2px);transform:translatey(2px)}.explainer-frame{-webkit-box-shadow:0 24px 80px rgba(15,23,42,.08),0 8px 24px rgba(15,23,42,.05);-moz-box-shadow:0 24px 80px rgba(15,23,42,.08),0 8px 24px rgba(15,23,42,.05);box-shadow:0 24px 80px rgba(15,23,42,.08),0 8px 24px rgba(15,23,42,.05)}.dark .explainer-frame{-webkit-box-shadow:0 24px 80px rgba(0,0,0,.24),0 8px 24px rgba(0,0,0,.14);-moz-box-shadow:0 24px 80px rgba(0,0,0,.24),0 8px 24px rgba(0,0,0,.14);box-shadow:0 24px 80px rgba(0,0,0,.24),0 8px 24px rgba(0,0,0,.14)}@media(prefers-reduced-motion:reduce){.explainer-link-arrow.jsx-c3fe2f14ba365b2{-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}}</style><style id="__jsx-e3256b72c2403e32">.pg-pipe{display:grid;grid-template-columns:1.06fr 34px 1.1fr 34px .98fr;-webkit-box-align:stretch;-webkit-align-items:stretch;-moz-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}@media(max-width:1023px){.pg-pipe{grid-template-columns:1fr}.pg-conn{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);margin:2px auto}}.pg-conn{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;width:34px;height:34px;position:relative;margin-top:18px}.pg-conn .pg-dot{position:absolute;top:50%;left:0;width:8px;height:8px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:var(--accent-primary);-webkit-transform:translate(-2px,-50%);-moz-transform:translate(-2px,-50%);-ms-transform:translate(-2px,-50%);-o-transform:translate(-2px,-50%);transform:translate(-2px,-50%);opacity:0}
2.pg-conn.pg-go .pg-dot{-webkit-animation:pgDash.5s ease-in forwards;-moz-animation:pgDash.5s ease-in forwards;-o-animation:pgDash.5s ease-in forwards;animation:pgDash.5s ease-in forwards}@-webkit-keyframes pgDash{0%{opacity:0;left:0}15%{opacity:1}85%{opacity:1}100%{opacity:0;left:30px}}@-moz-keyframes pgDash{0%{opacity:0;left:0}15%{opacity:1}85%{opacity:1}100%{opacity:0;left:30px}}@-o-keyframes pgDash{0%{opacity:0;left:0}15%{opacity:1}85%{opacity:1}100%{opacity:0;left:30px}}@keyframes pgDash{0%{opacity:0;left:0}15%{opacity:1}85%{opacity:1}100%{opacity:0;left:30px}}.pg-jrow{color:#64748b;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;padding:0 8px;white-space:pre-wrap;word-break:break-word;opacity:0;-webkit-transform:translatey(4px);-moz-transform:translatey(4px);-ms-transform:translatey(4px);-o-transform:translatey(4px);transform:translatey(4px);-webkit-transition:opacity.25s,-webkit-transform.25s,background.2s,box-shadow.2s;-moz-transition:opacity.25s,-moz-transform.25s,background.2s,box-shadow.2s;-o-transition:opacity.25s,-o-transform.25s,background.2s,box-shadow.2s;transition:opacity.25s,-webkit-transform.25s,background.2s,box-shadow.2s;transition:opacity.25s,-moz-transform.25s,background.2s,box-shadow.2s;transition:opacity.25s,-o-transform.25s,background.2s,box-shadow.2s;transition:opacity.25s,transform.25s,background.2s,box-shadow.2s}.pg-jrow.pg-in{opacity:1;-webkit-transform:none;-moz-transform:none;-ms-transform:none;-o-transform:none;transform:none}.pg-jrow[data-field]{cursor:pointer}.pg-jrow.pg-hl{background:rgba(125,211,252,.12);-webkit-box-shadow:inset 2px 0 0#7dd3fc;-moz-box-shadow:inset 2px 0 0#7dd3fc;box-shadow:inset 2px 0 0#7dd3fc}.pg-part{opacity:0;-webkit-transform:translatey(10px)scale(.98);-moz-transform:translatey(10px)scale(.98);-ms-transform:translatey(10px)scale(.98);-o-transform:translatey(10px)scale(.98);transform:translatey(10px)scale(.98);-webkit-transition:opacity.35s,-webkit-transform.35s,box-shadow.2s,outline-color.2s;-moz-transition:opacity.35s,-moz-transform.35s,box-shadow.2s,outline-color.2s;-o-transition:opacity.35s,-o-transform.35s,box-shadow.2s,outline-color.2s;transition:opacity.35s,-webkit-transform.35s,box-shadow.2s,outline-color.2s;transition:opacity.35s,-moz-transform.35s,box-shadow.2s,outline-color.2s;transition:opacity.35s,-o-transform.35s,box-shadow.2s,outline-color.2s;transition:opacity.35s,transform.35s,box-shadow.2s,outline-color.2s;outline:2px solid transparent;outline-offset:2px;cursor:pointer}.pg-part.pg-in{opacity:1;-webkit-transform:none;-moz-transform:none;-ms-transform:none;-o-transform:none;transform:none}.pg-part.pg-hl{outline-color:#7dd3fc;-webkit-box-shadow:0 0 0 4px rgba(125,211,252,.18);-moz-box-shadow:0 0 0 4px rgba(125,211,252,.18);box-shadow:0 0 0 4px rgba(125,211,252,.18)}.pg-part-svg{opacity:0;-webkit-transition:opacity.35s;-moz-transition:opacity.35s;-o-transition:opacity.35s;transition:opacity.35s;cursor:pointer}.pg-part-svg.pg-in{opacity:1}.pg-status{opacity:0;-webkit-transition:opacity.3s;-moz-transition:opacity.3s;-o-transition:opacity.3s;transition:opacity.3s}.pg-status.pg-on{opacity:1}.pg-hint{opacity:0;-webkit-transition:opacity.4s;-moz-transition:opacity.4s;-o-transition:opacity.4s;transition:opacity.4s}.pg-hint.pg-on{opacity:1}@media(prefers-reduced-motion:reduce){.pg-jrow,.pg-part,.pg-part-svg{-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.pg-conn.pg-go .pg-dot{-webkit-animation:none;-moz-animation:none;-o-animation:none;animation:none}}</style><style id="__jsx-1fa9972e203a246c">@-webkit-keyframes ctaPulse{0%{-webkit-transform:scale(1);transform:scale(1);opacity:.5}70%{-webkit-transform:scale(1.22);transform:scale(1.22);opacity:0}
2100%{-webkit-transform:scale(1.22);transform:scale(1.22);opacity:0}}@-moz-keyframes ctaPulse{0%{-moz-transform:scale(1);transform:scale(1);opacity:.5}70%{-moz-transform:scale(1.22);transform:scale(1.22);opacity:0}100%{-moz-transform:scale(1.22);transform:scale(1.22);opacity:0}}@-o-keyframes ctaPulse{0%{-o-transform:scale(1);transform:scale(1);opacity:.5}70%{-o-transform:scale(1.22);transform:scale(1.22);opacity:0}100%{-o-transform:scale(1.22);transform:scale(1.22);opacity:0}}@keyframes ctaPulse{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:.5}70%{-webkit-transform:scale(1.22);-moz-transform:scale(1.22);-o-transform:scale(1.22);transform:scale(1.22);opacity:0}100%{-webkit-transform:scale(1.22);-moz-transform:scale(1.22);-o-transform:scale(1.22);transform:scale(1.22);opacity:0}}.cta-pulse-wrap{position:relative;display:inline-block}.cta-pulse-wrap::before{content:"";position:absolute;inset:-4px;-webkit-border-radius:12px;-moz-border-radius:12px;border-radius:12px;border:2px solid var(--accent-primary,#f59e0b);-webkit-animation:ctaPulse 2.2s ease-out infinite;-moz-animation:ctaPulse 2.2s ease-out infinite;-o-animation:ctaPulse 2.2s ease-out infinite;animation:ctaPulse 2.2s ease-out infinite;pointer-events:none}@media(prefers-reduced-motion:reduce){.cta-pulse-wrap::before{-webkit-animation:none;-moz-animation:none;-o-animation:none;animation:none;opacity:0}}</style><style data-href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300;400;600;700;900&display=swap">@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff) format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff) format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff) format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff) format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nAkw.woff) format('woff')}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmhdu3cOWxy40.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwkxdu3cOWxy40.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmxdu3cOWxy40.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;
2src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmRdu3cOWxy40.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu3cOWxw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lujVj9_mf.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qPK7lujVj9_mf.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNK7lujVj9_mf.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qO67lujVj9_mf.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lujVj9_mf.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lujVj9_mf.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7lujVj9w.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhdu3cOWxy40.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwkxdu3cOWxy40.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmxdu3cOWxy40.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;
2src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRdu3cOWxy40.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu3cOWxw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmhdu3cOWxy40.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwkxdu3cOWxy40.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmxdu3cOWxy40.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRdu3cOWxy40.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu3cOWxw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmhdu3cOWxy40.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwkxdu3cOWxy40.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmxdu3cOWxy40.woff2) format('woff2');
2unicode-range:U+1F00-1FFF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmBdu3cOWxy40.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmRdu3cOWxy40.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlxdu3cOWxw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}</style><style data-href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap">@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:200;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lCR_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ17CR_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCR_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0XCR_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ37Dh_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ3CDh_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lDh_T.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KU7NSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_907NSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;
2src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_d0nNSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KUnNSQ.woff) format('woff')}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIuaomQNQcsA88c7O9yZ4KMCoOg4Koz4yOqhNnZR-AHYA.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIuaomQNQcsA88c7O9yZ4KMCoOg4Koz4yGqhNnZR-AHYA.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIuaomQNQcsA88c7O9yZ4KMCoOg4Koz4yCqhNnZR-AHYA.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIuaomQNQcsA88c7O9yZ4KMCoOg4Koz4y6qhNnZR-A.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yygg_vbd-E.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yygg_vbd-E.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yygg_vbd-E.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yygg_vb.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}</style></head><body>
vendor: 67 bytes, line 2
2<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
2GTM-MN5C2S8K
vendor: 82 bytes, line 2
2" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
2<div id="__next"><div class="relative bg-[#0C0C2B] w-full min-h-screen font-plus_jakarta_sans"><div class="absolute overflow-hidden h-full w-full"><div class="w-full hero-mesh-backdrop overflow-x-hidden absolute top-0 left-0 "><div class="mesh-orb mesh-orb--one"></div><div class="mesh-orb mesh-orb--two"></div><div class="mesh-orb mesh-orb--three"></div><div class="mesh-orb mesh-orb--four"></div></div></div><div class="relative z-[60] flex min-h-11 w-full items-center overflow-hidden py-2" style="--announcement-link-color:#4f46e5;--announcement-link-hover-color:#312e81;background:var(--tertiary-bg);color:#101135"><div class="mx-auto flex h-full w-full max-w-8xl flex-wrap md:flex-nowrap items-center justify-center gap-2 px-4 text-center font-plus_jakarta_sans text-[11px] font-semibold leading-[1.35] tracking-normal sm:text-[12px] md:px-6 md:text-[14px] md:leading-[1.45]"><span class="min-w-0 opacity-90 break-words md:break-normal">🏠 <a class="text-[var(--announcement-link-color)] transition-colors hover:text-[var(--announcement-link-hover-color)]" href="/astro-ai/vastu-api">Vastu API</a> and ✋ <a class="text-[var(--announcement-link-color)] transition-colors hover:text-[var(--announcement-link-hover-color)]" href="/palm-reading-api">Palmistry API</a> are now live. Ship them in your app today.</span><a class="group relative hidden md:inline-flex flex-shrink-0 whitespace-nowrap text-[var(--announcement-link-color)] transition-colors hover:text-[var(--announcement-link-hover-color)]" href="/signup">Get Started<span aria-hidden="true"> →</span><span class="absolute -bottom-1 left-0 h-px w-full origin-left scale-x-0 bg-[var(--announcement-link-color)] transition-transform duration-200 group-hover:scale-x-100"></span></a></div></div><nav class="absolute bg-transparent border-transparent left-0 z-[50] w-full transition-all duration-500 py-4" style="top:44px"><div class="mx-0 md:mx-auto flex w-full max-w-8xl items-center gap-4 px-4 md:px-6 lg:gap-8 justify-between"><div class="w-fit bg-primary-bg z-[20] flex items-center gap-2 md:gap-4 lg:max-w-[220px]"><button class="text-primary-text lg:hidden p-2 hover:bg-secondary-bg/50 rounded-lg transition-colors" aria-label="Open navigation menu"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="4" x2="20" y1="12" y2="12"></line><line x1="4" x2="20" y1="6" y2="6"></line><line x1="4" x2="20" y1="18" y2="18"></line></svg></button><a class="flex items-center group pl-auto" href="/"><img src="/imgs/logo2.svg" alt="AstrologyAPI" class="w-[160px] lg:w-[180px] transition-transform group-hover:scale-105"/></a></div><div class="relative hidden items-center justify-center gap-8 lg:flex"><button type="button" class="group relative flex items-center gap-2 py-2 text-sm font-black transition-all text-primary-text hover:text-primary-text" aria-expanded="false"><span>Products</span><svg xmlns="http://www.w3.org/2000/svg" class="h-3 w-3 fill-current transition-transform duration-300 text-inherit opacity-40 group-hover:rotate-180" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg></button><button type="button" class="group relative flex items-center gap-2 py-2 text-sm font-black transition-all text-primary-text hover:text-primary-text" aria-expanded="false"><span>Astro AI</span><svg xmlns="http://www.w3.org/2000/svg" class="h-3 w-3 fill-current transition-transform duration-300 text-inherit opacity-40 group-hover:rotate-180" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg></button><button type="button" class="group relative flex items-center gap-2 py-2 text-sm font-black transition-all text-primary-text hover:text-primary-text" aria-expanded="false"><span>Developers</span><svg xmlns="http://www.w3.org/2000/svg" class="h-3 w-3 fill-current transition-transform duration-300 text-inherit opacity-40 group-hover:rotate-180" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg></button><a class="py-2 text-sm font-black text-primary-text transition-all hover:text-accent-primary flex items-center gap-2" href="/pricing">Pricing</a><a class="py-2 text-sm font-black text-primary-text transition-all hover:text-accent-primary flex items-center gap-2" href="/blog">Blog</a></div><div class="ml-auto hidden items-center gap-4 lg:flex lg:flex-nowrap"><button class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl border border-border-color text-primary-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 rounded-lg h-10 text-sm font-semibold flex justify-between"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="h-4 w-4"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg><span class="text-xs font-bold opacity-60 px-2">Search docs</span></button><a class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl border border-border-color text-primary-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 h-10 text-xs font-black" href="/login">Sign in</a><a class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl border border-border-color text-primary-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 h-10 text-xs font-black" href="/contact-sales">Contact sales</a><a class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl bg-
2accent-primary text-accent-contrast-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 h-10 text-xs font-black min-w-20" href="/signup">Get API Key</a></div><div class="flex items-center gap-4 lg:hidden"><button class="text-primary-text p-2 hover:bg-secondary-bg rounded-lg transition-colors" aria-label="Open search"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="w-6 h-6"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></button><a class="text-xs font-black text-primary-text" href="/login">Sign in</a></div></div></nav><div class="max-w-[100vw] mx-auto relative flex flex-col overflow-hidden bg-primary-bg"><div class="flex flex-col w-full gap-24 py-24 relative"><div class="jsx-15aa96cfb3f8b3a7 fixed inset-0 w-full h-full pointer-events-none z-1 bg-primary-bg overflow-hidden"><div class="jsx-15aa96cfb3f8b3a7 absolute inset-0 perspective-container"><div style="filter:url(#wave-distortion)" class="jsx-15aa96cfb3f8b3a7 absolute inset-0 flowing-grid"></div><div class="jsx-15aa96cfb3f8b3a7 absolute inset-0 bg-gradient-to-t from-primary-bg via-transparent to-primary-bg opacity-100"></div><div class="jsx-15aa96cfb3f8b3a7 absolute inset-0 bg-gradient-to-r from-primary-bg via-transparent to-primary-bg opacity-40 ml-[-10%]"></div></div></div><section class="jsx-c3f93000431c9cd0 relative z-10 overflow-hidden pt-10 md:pt-20"><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 "><div class="mx-auto flex max-w-4xl flex-col items-center text-center"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:20ms;opacity:0;transform:translateY(30px)" class=""><span class="jsx-c3f93000431c9cd0 inline-flex items-center rounded-lg border border-accent-primary/20 bg-accent-surface px-4 py-1.5 text-xs font-bold uppercase tracking-[0.2em] text-accent-primary">Developer-First Astrology Platform</span></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:40ms;opacity:0;transform:translateY(30px)" class=""><h1 class="text-4xl sm:text-5xl md:text-6xl font-black font-heading tracking-tight leading-[1.1] text-primary-text mt-8 text-primary-text leading-[1.05] tracking-tight text-balance">Build Smarter Astrology<!-- --> <span class="jsx-c3f93000431c9cd0 text-transparent bg-clip-text bg-gradient-to-r from-accent-primary via-indigo-400 to-primary-text sm:block">Products, Faster.</span></h1></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:60ms;opacity:0;transform:translateY(30px)" class=""><p class="text-base leading-relaxed text-secondary-text mt-6 max-w-2xl text-lg leading-relaxed text-secondary-text md:text-xl">Birth charts, Kundli, transits, horoscopes, and AI readings — all under one API key. <!-- -->3,000+<!-- --> products across<!-- --> <!-- -->50<!-- --> countries already ship on AstrologyAPI.</p></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:80ms;opacity:0;transform:translateY(30px)" class=""><div class="jsx-c3f93000431c9cd0 mt-9 flex w-full flex-col items-stretch justify-center gap-3 sm:w-auto sm:flex-row sm:items-center sm:gap-4"><button type="button" class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl bg-
2accent-primary text-accent-contrast-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95   h-12 px-8 text-lg font-black">Get API Key — Free</button><button type="button" class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl border border-border-color text-primary-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95   h-12 px-8 text-primary-text">View Documentation</button></div></div></div><figure class="jsx-c3f93000431c9cd0 mx-auto mt-12 max-w-6xl md:mt-16"><div class="jsx-c3f93000431c9cd0 hero-film-frame relative aspect-video w-full overflow-hidden rounded-2xl border border-divider-color md:rounded-[28px]"><img src="https://vz-5adf132b-5e9.b-cdn.net/5361b17b-26e4-477f-8cfb-afead19178a6/thumbnail.jpg" alt="" aria-hidden="true" loading="eager" fetchpriority="high" decoding="async" referrerPolicy="strict-origin-when-cross-origin" class="jsx-c3f93000431c9cd0 absolute inset-0 h-full w-full object-cover"/><button type="button" aria-label="Watch with sound: How AstrologyAPI works (1:42)" class="jsx-c3f93000431c9cd0 group absolute inset-0 flex items-end justify-start p-4 text-left focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent-primary sm:p-6"><span class="jsx-c3f93000431c9cd0 hero-film-pill flex items-center gap-3 rounded-full py-1.5 pl-1.5 pr-4 text-sm font-bold transition-transform duration-300 group-hover:scale-105 sm:py-2 sm:pl-2 sm:pr-5"><span class="jsx-c3f93000431c9cd0 flex h-8 w-8 items-center justify-center rounded-full bg-accent-primary text-accent-contrast-text sm:h-10 sm:w-10"><svg width="14" height="16" viewBox="0 0 14 16" fill="currentColor" aria-hidden="true" class="jsx-c3f93000431c9cd0"><path d="M2 1.6C2 .8 2.86.32 3.53.73l9.2 5.66c.65.4.65 1.33 0 1.72l-9.2 5.66C2.86 14.18 2 13.7 2 12.9V1.6Z" class="jsx-c3f93000431c9cd0"></path></svg></span><span class="jsx-c3f93000431c9cd0">Watch with sound<span class="jsx-c3f93000431c9cd0 ml-2 font-medium opacity-60">1:42</span></span></span></button></div><figcaption class="jsx-c3f93000431c9cd0 mt-4 text-center text-sm text-tertiary-text">How it works in <!-- -->1:42<!-- -->: one birth date becomes Vedic, Western, KP, numerology, tarot and more.</figcaption></figure></div></section><div class="w-full border-y border-divider-color py-8 relative z-10"><div class="max-w-5xl mx-auto px-6 grid grid-cols-2 md:grid-cols-4 gap-6 md:gap-0 md:divide-x md:divide-divider-color"><div class="flex flex-col items-center justify-center text-center px-4 py-2"><span class="text-3xl md:text-4xl font-black text-primary-text tracking-tight">300+</span><span class="text-xs font-bold text-tertiary-text uppercase tracking-widest mt-1">API Endpoints</span></div><div class="flex flex-col items-center justify-center text-center px-4 py-2"><span class="text-3xl md:text-4xl font-black text-primary-text tracking-tight">100M+</span><span class="text-xs font-bold text-tertiary-text uppercase tracking-widest mt-1">Daily API Calls</span></div><div class="flex flex-col items-center justify-center text-center px-4 py-2"><span class="text-3xl md:text-4xl font-black text-primary-text tracking-tight">50</span><span class="text-xs font-bold text-tertiary-text uppercase tracking-widest mt-1">Countries</span></div><div class="flex flex-col items-center justify-center text-center px-4 py-2"><span class="text-3xl md:text-4xl font-black text-primary-text tracking-tight">99.99%</span><span class="text-xs font-bold text-tertiary-text uppercase tracking-widest mt-1">Uptime SLA</span></div></div></div><section id="" class="bg-primary-bg py-12 md:py-16 border-y border-divider-color z-2 relative"><div class="jsx-b217c39370714247 flex flex-col space-y-12"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:translateY(30px)" class="text-center max-w-3xl mx-auto px-2 md:px-0"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text mb-4 text-2xl md:text-3xl font-black">Trusted by global brands and astrology-native platforms</h3><p class="text-base leading-relaxed text-secondary-text max-w-2xl mx-auto opacity-70 leading-relaxed font-medium">From Snap and Bumble to Shaadi.com and AstroTalk — global tech companies, media, matrimonial platforms, and astrology-native products rely on AstrologyAPI.</p></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:20ms;opacity:0;transform:translateY(30px)" class="flex flex-col space-y-6"><p class="text-xs leading-normal font-semibold text-secondary-text text-center font-bold tracking-widest text-tertiary-text uppercase">Trusted globally by</p><div class="relative overflow-hidden w-full" style="mask-image:linear-gradient(to right, transparent, white 10%, white 90%, transparent)"><div class="flex whitespace-nowrap animate-marquee hover:[animation-play-state:paused]" style="animation-duration:50s"><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/snap.svg" alt="Snap" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/msn.svg" alt="MSN" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/shaadi.svg" alt="Shaadi.com" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/bumble.svg" alt="Bumble" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/happn.png" alt="happn" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/aaj-tak.png" alt="Aaj Tak" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/itc.svg" alt="ITC" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/cycle-agarbatties.svg" alt="Cycle Pure Agarbatties" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/vedicrishii.svg" alt="VedicRishi" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/upastrology.svg" alt="upastrology" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/astrotalk.svg" alt="AstroTalk" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/snap.svg" alt="Snap" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/msn.svg" alt="MSN" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/shaadi.svg" alt="Shaadi.com" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/bumble.svg" alt="Bumble" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/happn.png" alt="happn" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/aaj-tak.png" alt="Aaj Tak" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/itc.svg" alt="ITC" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/cycle-agarbatties.svg" alt="Cycle Pure Agarbatties" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/vedicrishii.svg" alt="VedicRishi" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/upastrology.svg" alt="upastrology" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/astrotalk.svg" alt="AstroTalk" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/snap.svg" alt="Snap" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/msn.svg" alt="MSN" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/shaadi.svg" alt="Shaadi.com" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/bumble.svg" alt="Bumble" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/happn.png" alt="happn" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/aaj-tak.png" alt="Aaj Tak" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/itc.svg" alt="ITC" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/cycle-agarbatties.svg" alt="Cycle Pure Agarbatties" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/vedicrishii.svg" alt="VedicRishi" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/upastrology.svg" alt="upastrology" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div><div class="flex-shrink-0 mx-10 h-7 flex items-center justify-center"><img src="/v1/client-logos/astrotalk.svg" alt="AstroTalk" class="h-full w-auto object-contain opacity-50 grayscale hover:opacity-80 hover:grayscale-0 transition-all duration-300"/></div></div></div></div></div></section><section class="w-full overflow-hidden"><div class="pt-6 md:pt-10 px-4 md:px-0 relative z-10"><div class="max-w-7xl mx-auto"><div class="text-center max-w-4xl mx-auto mb-16 px-4"><div class="inline-block px-4 py-1.5 rounded-full bg-accent-primary/10 border border-accent-primary/20 mb-6"><span class="text-[10px] font-black text-accent-primary uppercase tracking-[0.2em]">WHAT YOU CAN BUILD</span></div><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text mb-8 text-4xl md:text-6xl font-black leading-tight">One API Platform. Every Astrology Product.</h2><p class="text-lg sm:text-xl leading-relaxed text-secondary-text opacity-80 leading-relaxed font-medium">Birth charts, AI readings, PDF reports, compatibility scores, and more — all from one integration.</p></div></div></div><div class="h-20 bg-gradient-to-b from-transparent to-primary-bg relative z-10 pointer-events-none -mb-1"></div><div class="bg-primary-bg pb-6 md:pb-10 px-4 md:px-0 relative z-10"><div class="max-w-7xl mx-auto"><div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6 auto-rows-auto md:auto-rows-[200px] grid-flow-row-dense"><div class="lg:col-span-2 lg:row-span-2 sm:col-span-2 md:row-span-2 group bento-card-animation" style="animation-delay:0ms">
2<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
3          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
4          transition-all duration-500 p-3 flex
5          flex-col
6          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
7              transition-transform duration-700 group-hover:scale-[1.03]
8              w-full flex-1 min-h-[300px]"><div aria-hidden="true" data-xv="birth-chart" class="xv-frame  "><style>[data-xv="birth-chart"] .bc-layout{display:flex;flex-direction:column-reverse;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 10px}
9[data-xv="birth-chart"] .bc-wheel{width:100%;max-width:300px;aspect-ratio:1/1;flex-shrink:0}
10[data-xv="birth-chart"] .bc-json{width:100%;max-width:300px;flex-shrink:0;overflow:hidden}
11@media (min-width:768px){[data-xv="birth-chart"] .bc-layout{flex-direction:row;height:100%;padding:10px;gap:10px}[data-xv="birth-chart"] .bc-wheel{width:auto;height:100%;max-height:330px;max-width:calc(100% - 292px)}[data-xv="birth-chart"] .bc-json{width:282px}}
12[data-xv="birth-chart"] .bc-code{margin:0;padding:6px 0 7px;font-size:9px;line-height:13px;letter-spacing:-0.3px;white-space:pre;color:var(--xv-ink-soft)}
13[data-xv="birth-chart"] .bc-code > div{padding:0 8px}
14[data-xv="birth-chart"] .bc-key{color:var(--xv-ink-soft)}
15[data-xv="birth-chart"] .bc-str{color:var(--xv-ink);font-weight:600}
16[data-xv="birth-chart"] .bc-num{color:var(--xv-accent);font-weight:600}
17[data-xv="birth-chart"] .bc-status{display:inline-flex;align-items:center;gap:4px;color:var(--xv-good);font-weight:700}
18[data-xv="birth-chart"] .bc-status::before{content:"";width:5px;height:5px;border-radius:999px;background:var(--xv-good)}
19[data-xv="birth-chart"] .bc-input{padding:5px 9px;border-bottom:1px solid var(--xv-line);font-size:9px;line-height:12px;color:var(--xv-ink-soft)}
20[data-xv="birth-chart"] .bc-input b{color:var(--xv-ink);font-weight:600}
21[data-xv="birth-chart"] .bc-planet{transform-box:fill-box;transform-origin:center}
22[data-xv="birth-chart"] .bc-aspect{transition:stroke-width .35s ease}
23.group\/card:hover [data-xv="birth-chart"] .bc-aspect{stroke-width:2}
24[data-xv="birth-chart"] .bc-hnum{transition:fill .35s ease}
25.group\/card:hover [data-xv="birth-chart"] .bc-hnum{fill:var(--xv-ink)}
26@keyframes xv-bc-p0{0%{opacity:0;transform:translate(10.48px,43.87px) scale(0.5)}5%{opacity:0;transform:translate(10.48px,43.87px) scale(0.5)}6.5%{opacity:1;transform:translate(10.48px,43.87px) scale(0.7)}12.5%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
27@keyframes xv-bc-m0{0%{opacity:0;stroke-width:1.4}10%{opacity:0;stroke-width:1.4}12.5%{opacity:1;stroke-width:3}18%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
28@keyframes xv-bc-p1{0%{opacity:0;transform:translate(31.54px,-32.24px) scale(0.5)}9.2%{opacity:0;transform:translate(31.54px,-32.24px) scale(0.5)}10.7%{opacity:1;transform:translate(31.54px,-32.24px) scale(0.7)}16.7%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
29@keyframes xv-bc-m1{0%{opacity:0;stroke-width:1.4}14.2%{opacity:0;stroke-width:1.4}16.7%{opacity:1;stroke-width:3}22.2%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
30@keyframes xv-bc-p2{0%{opacity:0;transform:translate(28.83px,34.68px) scale(0.5)}13.4%{opacity:0;transform:translate(28.83px,34.68px) scale(0.5)}14.9%{opacity:1;transform:translate(28.83px,34.68px) scale(0.7)}20.9%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
31@keyframes xv-bc-m2{0%{opacity:0;stroke-width:1.4}18.4%{opacity:0;stroke-width:1.4}20.9%{opacity:1;stroke-width:3}26.4%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
32@keyframes xv-bc-p3{0%{opacity:0;transform:translate(20.94px,39.94px) scale(0.5)}17.6%{opacity:0;transform:translate(20.94px,39.94px) scale(0.5)}19.1%{opacity:1;transform:translate(20.94px,39.94px) scale(0.7)}25.1%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
33@keyframes xv-bc-m3{0%{opacity:0;stroke-width:1.4}22.6%{opacity:0;stroke-width:1.4}25.1%{opacity:1;stroke-width:3}30.6%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
34@keyframes xv-bc-p4{0%{opacity:0;transform:translate(41.36px,-17.98px) scale(0.5)}21.8%{opacity:0;transform:translate(41.36px,-17.98px) scale(0.5)}23.3%{opacity:1;transform:translate(41.36px,-17.98px) scale(0.7)}29.3%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
35@keyframes xv-bc-m4{0%{opacity:0;stroke-width:1.4}26.8%{opacity:0;stroke-width:1.4}29.3%{opacity:1;stroke-width:3}34.8%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
36@keyframes xv-bc-p5{0%{opacity:0;transform:translate(20.46px,-40.19px) scale(0.5)}26%{opacity:0;transform:translate(20.46px,-40.19px) scale(0.5)}27.5%{opacity:1;transform:translate(20.46px,-40.19px) scale(0.7)}33.5%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
37@keyframes xv-bc-m5{0%{opacity:0;stroke-width:1.4}31%{opacity:0;stroke-width:1.4}33.5%{opacity:1;stroke-width:3}39%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
38@keyframes xv-bc-p6{0%{opacity:0;transform:translate(44.52px,-7.24px) scale(0.5)}30.2%{opacity:0;transform:translate(44.52px,-7.24px) scale(0.5)}31.7%{opacity:1;transform:translate(44.52px,-7.24px) scale(0.7)}37.7%{opacity:1;transform:translate(0px,0px) scale(1)}91%{opacity:1;transform:translate(0px,0px) scale(1)}95%{opacity:0;transform:translate(0px,0px) scale(1)}100%{opacity:0;transform:translate(0px,0px) scale(1)}}
39@keyframes xv-bc-m6{0%{opacity:0;stroke-width:1.4}35.2%{opacity:0;stroke-width:1.4}37.7%{opacity:1;stroke-width:3}43.2%{opacity:1;stroke-width:1.4}91%{opacity:1;stroke-width:1.4}95%{opacity:0;stroke-width:1.4}100%{opacity:0;stroke-width:1.4}}
40
41@keyframes xv-bc-l1{0%{opacity:0;transform:translateX(-6px);background-color:transparent}5%{opacity:0;transform:translateX(-6px);background-color:transparent}7.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}16%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
42@keyframes xv-bc-l2{0%{opacity:0;transform:translateX(-6px);background-color:transparent}9.2%{opacity:0;transform:translateX(-6px);background-color:transparent}11.7%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}20.2%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
43@keyframes xv-bc-l3{0%{opacity:0;transform:translateX(-6px);background-color:transparent}13.4%{opacity:0;transform:translateX(-6px);background-color:transparent}15.9%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}24.4%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
44@keyframes xv-bc-l4{0%{opacity:0;transform:translateX(-6px);background-color:transparent}17.6%{opacity:0;transform:translateX(-6px);background-color:transparent}20.1%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}28.6%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
45@keyframes xv-bc-l5{0%{opacity:0;transform:translateX(-6px);background-color:transparent}21.8%{opacity:0;transform:translateX(-6px);background-color:transparent}24.3%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}32.8%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
46@keyframes xv-bc-l6{0%{opacity:0;transform:translateX(-6px);background-color:transparent}26%{opacity:0;transform:translateX(-6px);background-color:transparent}28.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}37%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
47@keyframes xv-bc-l7{0%{opacity:0;transform:translateX(-6px);background-color:transparent}30.2%{opacity:0;transform:translateX(-6px);background-color:transparent}32.7%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}41.2%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
48@keyframes xv-bc-l8{0%{opacity:0;transform:translateX(-6px);background-color:transparent}35%{opacity:0;transform:translateX(-6px);background-color:transparent}37.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}46%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
49@keyframes xv-bc-l9{0%{opacity:0;transform:translateX(-6px);background-color:transparent}38%{opacity:0;transform:translateX(-6px);background-color:transparent}40.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}49%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
50@keyframes xv-bc-l10{0%{opacity:0;transform:translateX(-6px);background-color:transparent}44%{opacity:0;transform:translateX(-6px);background-color:transparent}46.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}55%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
51@keyframes xv-bc-l11{0%{opacity:0;transform:translateX(-6px);background-color:transparent}44%{opacity:0;transform:translateX(-6px);background-color:transparent}46.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}55%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
52@keyframes xv-bc-l12{0%{opacity:0;transform:translateX(-6px);background-color:transparent}50%{opacity:0;transform:translateX(-6px);background-color:transparent}52.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}61%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
53@keyframes xv-bc-l13{0%{opacity:0;transform:translateX(-6px);background-color:transparent}56%{opacity:0;transform:translateX(-6px);background-color:transparent}58.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}67%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
54@keyframes xv-bc-l14{0%{opacity:0;transform:translateX(-6px);background-color:transparent}44%{opacity:0;transform:translateX(-6px);background-color:transparent}46.5%{opacity:1;transform:none;background-color:var(--xv-accent-soft)}55%{opacity:1;transform:none;background-color:transparent}91%{opacity:1;transform:none;background-color:transparent}95%{opacity:0;transform:none;background-color:transparent}100%{opacity:0;transform:none;background-color:transparent}}
55
56@keyframes xv-bc-x-asc{0%{stroke:var(--xv-line-strong);stroke-width:1}35%{stroke:var(--xv-line-strong);stroke-width:1}39%{stroke:var(--xv-accent);stroke-width:2.2}47%{stroke:var(--xv-ink);stroke-width:1.6}91%{stroke:var(--xv-ink);stroke-width:1.6}95%{stroke:var(--xv-line-strong);stroke-width:1}100%{stroke:var(--xv-line-strong);stroke-width:1}}
57@keyframes xv-bc-x-dsc{0%{stroke:var(--xv-line-strong);stroke-width:1}35%{stroke:var(--xv-line-strong);stroke-width:1}39%{stroke:var(--xv-accent);stroke-width:2.2}47%{stroke:var(--xv-ink);stroke-width:1.6}91%{stroke:var(--xv-ink);stroke-width:1.6}95%{stroke:var(--xv-line-strong);stroke-width:1}100%{stroke:var(--xv-line-strong);stroke-width:1}}
58@keyframes xv-bc-x-mc{0%{stroke:var(--xv-line-strong);stroke-width:1}38%{stroke:var(--xv-line-strong);stroke-width:1}42%{stroke:var(--xv-accent);stroke-width:2.2}50%{stroke:var(--xv-ink);stroke-width:1.6}91%{stroke:var(--xv-ink);stroke-width:1.6}95%{stroke:var(--xv-line-strong);stroke-width:1}100%{stroke:var(--xv-line-strong);stroke-width:1}}
59@keyframes xv-bc-x-ic{0%{stroke:var(--xv-line-strong);stroke-width:1}38%{stroke:var(--xv-line-strong);stroke-width:1}42%{stroke:var(--xv-accent);stroke-width:2.2}50%{stroke:var(--xv-ink);stroke-width:1.6}91%{stroke:var(--xv-ink);stroke-width:1.6}95%{stroke:var(--xv-line-strong);stroke-width:1}100%{stroke:var(--xv-line-strong);stroke-width:1}}
60@keyframes xv-bc-asc-label{0%{opacity:0}
6037%{opacity:0}41%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
61@keyframes xv-bc-mc-label{0%{opacity:0}40%{opacity:0}44%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
62@keyframes xv-bc-a0{0%{stroke-dashoffset:108;opacity:0}44%{stroke-dashoffset:108;opacity:0}44.8%{stroke-dashoffset:108;opacity:1}51%{stroke-dashoffset:0;opacity:1}91%{stroke-dashoffset:0;opacity:1}95%{stroke-dashoffset:0;opacity:0}100%{stroke-dashoffset:0;opacity:0}}
63@keyframes xv-bc-a1{0%{stroke-dashoffset:84;opacity:0}50%{stroke-dashoffset:84;opacity:0}50.8%{stroke-dashoffset:84;opacity:1}57%{stroke-dashoffset:0;opacity:1}91%{stroke-dashoffset:0;opacity:1}95%{stroke-dashoffset:0;opacity:0}100%{stroke-dashoffset:0;opacity:0}}
64@keyframes xv-bc-a2{0%{stroke-dashoffset:62;opacity:0}56%{stroke-dashoffset:62;opacity:0}56.8%{stroke-dashoffset:62;opacity:1}63%{stroke-dashoffset:0;opacity:1}91%{stroke-dashoffset:0;opacity:1}95%{stroke-dashoffset:0;opacity:0}100%{stroke-dashoffset:0;opacity:0}}</style><div class="bc-layout"><div class="xv-panel bc-json"><div class="xv-panel-head"><span class="xv-panel-title"><span class="xv-mono">POST /western_horoscope</span></span><span class="xv-panel-meta"><span class="bc-status">200 OK</span></span></div><div class="bc-input"><b>6 Aug 1984 · 12:31 EDT</b> · New York · Placidus</div><div class="bc-code xv-mono"><div><span>{</span></div><div style="animation:xv-bc-l1 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;sun&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Leo&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">14.37</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">10</span><span>},</span></div><div style="animation:xv-bc-l2 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;moon&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Sagittarius&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">16.56</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">2</span><span>},</span></div><div style="animation:xv-bc-l3 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;mercury&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Virgo&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">10.68</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">11</span><span>},</span></div><div style="animation:xv-bc-l4 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;venus&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Leo&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">28.61</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">10</span><span>},</span></div><div style="animation:xv-bc-l5 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;mars&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Scorpio&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">24.44</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">1</span><span>},</span></div><div style="animation:xv-bc-l6 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;jupiter&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Capricorn&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">3.96</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">3</span><span>},</span></div><div style="animation:xv-bc-l7 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;saturn&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Scorpio&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">10.18</span><span>,</span><span class="bc-key">&quot;house&quot;</span><span>:</span><span class="bc-num">1</span><span>},</span></div><div style="animation:xv-bc-l8 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;ascendant&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Scorpio&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">0.94</span><span>},</span></div><div style="animation:xv-bc-l9 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;midheaven&quot;</span><span>:</span><span>{</span><span class="bc-key">&quot;sign&quot;</span><span>:</span><span class="bc-str">&quot;Leo&quot;</span><span>,</span><span class="bc-key">&quot;deg&quot;</span><span>:</span><span class="bc-num">6.78</span><span>},</span></div><div style="animation:xv-bc-l10 10s ease-out infinite both"><span> </span><span class="bc-key">&quot;aspects&quot;</span><span>:</span><span>
64[</span></div><div style="animation:xv-bc-l11 10s ease-out infinite both"><span>  {</span><span class="bc-key">&quot;p1&quot;</span><span>:</span><span class="bc-str">&quot;Sun&quot;</span><span>,</span><span class="bc-key">&quot;type&quot;</span><span>:</span><span class="bc-str">&quot;trine&quot;</span><span>,</span><span class="bc-key">&quot;p2&quot;</span><span>:</span><span class="bc-str">&quot;Moon&quot;</span><span>},</span></div><div style="animation:xv-bc-l12 10s ease-out infinite both"><span>  {</span><span class="bc-key">&quot;p1&quot;</span><span>:</span><span class="bc-str">&quot;Sun&quot;</span><span>,</span><span class="bc-key">&quot;type&quot;</span><span>:</span><span class="bc-str">&quot;square&quot;</span><span>,</span><span class="bc-key">&quot;p2&quot;</span><span>:</span><span class="bc-str">&quot;Saturn&quot;</span><span>},</span></div><div style="animation:xv-bc-l13 10s ease-out infinite both"><span>  {</span><span class="bc-key">&quot;p1&quot;</span><span>:</span><span class="bc-str">&quot;Mercury&quot;</span><span>,</span><span class="bc-key">&quot;type&quot;</span><span>:</span><span class="bc-str">&quot;sextile&quot;</span><span>,</span><span class="bc-key">&quot;p2&quot;</span><span>:</span><span class="bc-str">&quot;Saturn&quot;</span><span>}</span></div><div style="animation:xv-bc-l14 10s ease-out infinite both"><span> ]</span></div><div><span>}</span></div></div></div><div class="bc-wheel"><svg viewBox="0 0 300 300" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><circle cx="150" cy="150" r="138" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="150" cy="150" r="114" fill="none" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="150" cy="150" r="98" fill="none" stroke="var(--xv-line)" stroke-width="1"></circle><circle cx="150" cy="150" r="60" fill="var(--xv-wash)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><line x1="247.78" y1="208.61" x2="268.36" y2="220.95" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="263.98" y1="151.87" x2="287.98" y2="152.26" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="249.65" y1="94.63" x2="270.63" y2="82.97" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="208.61" y1="52.22" x2="220.95" y2="31.64" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="151.87" y1="36.02" x2="152.26" y2="12.02" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="94.63" y1="50.35" x2="82.97" y2="29.37" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="52.22" y1="91.39" x2="31.64" y2="79.05" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="36.02" y1="148.13" x2="12.02" y2="147.74" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="50.35" y1="205.37" x2="29.37" y2="217.03" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="91.39" y1="247.78" x2="79.05" y2="268.36" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="148.13" y1="263.98" x2="147.74" y2="287.98" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="205.37" y1="249.65" x2="217.03" y2="270.63" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="247.78" y1="208.61" x2="252.07" y2="211.18" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="252.51" y1="199.87" x2="255.21" y2="201.18" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="256.47" y1="190.74" x2="261.14" y2="192.53" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="259.62" y1="181.31" x2="262.5" y2="182.13" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="261.93" y1="171.64" x2="266.84" y2="172.58" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="263.39" y1="161.8" x2="266.37" y2="162.11" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="263.98" y1="151.87" x2="268.98" y2="151.95" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="263.71" y1="141.93" x2="266.71" y2="141.72" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="262.58" y1="132.05" x2="267.52" y2="131.26" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="260.58" y1="122.31" x2="263.49" y2="121.58" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="257.75" y1="112.77" x2="262.48" y2="111.14" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="254.1" y1="103.52" x2="256.83" y2="102.3" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="249.65" y1="94.63" x2="254.02" y2="92.2" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="244.44" y1="86.15" x2="246.93" y2="84.47" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="238.52" y1="78.16" x2="242.4" y2="75.01" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="231.92" y1="70.72" x2="234.08" y2="68.64" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="224.7" y1="63.88" x2="227.98" y2="60.11" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="216.91" y1="57.7" x2="218.67" y2="55.27" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="208.61" y1="52.22" x2="211.18" y2="47.93" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="199.87" y1="47.49" x2="201.18" y2="44.79" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="190.74" y1="43.53" x2="192.53" y2="38.86" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="181.31" y1="40.38" x2="182.13" y2="37.5" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="171.64" y1="38.07" x2="172.58" y2="33.16" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="161.8" y1="36.61" x2="162.11" y2="33.63" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="151.87" y1="36.02" x2="151.95" y2="31.02" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="141.93" y1="36.29" x2="141.72" y2="33.29" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="132.05" y1="37.42" x2="131.26" y2="32.48" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="122.31" y1="39.42" x2="121.58" y2="36.51" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="112.77" y1="42.25" x2="111.14" y2="37.52" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="103.52" y1="45.9" x2="102.3" y2="43.17" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="94.63" y1="50.35" x2="92.2" y2="45.98" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="86.15" y1="55.56" x2="84.47" y2="53.07" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="78.16" y1="61.48" x2="75.01" y2="57.6" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="70.72" y1="68.08" x2="68.64" y2="65.92" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="63.88" y1="75.3" x2="60.11" y2="72.02" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="57.7" y1="83.09" x2="55.27" y2="81.33" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="52.22" y1="91.39" x2="47.93" y2="88.82" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="47.49" y1="100.13" x2="44.79" y2="98.82" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="43.53" y1="109.26" x2="38.86" y2="107.47" stroke="var(--xv-line)" stroke-width="0.8"></line>
64<line x1="40.38" y1="118.69" x2="37.5" y2="117.87" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="38.07" y1="128.36" x2="33.16" y2="127.42" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="36.61" y1="138.2" x2="33.63" y2="137.89" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="36.02" y1="148.13" x2="31.02" y2="148.05" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="36.29" y1="158.07" x2="33.29" y2="158.28" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="37.42" y1="167.95" x2="32.48" y2="168.74" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="39.42" y1="177.69" x2="36.51" y2="178.42" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="42.25" y1="187.23" x2="37.52" y2="188.86" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="45.9" y1="196.48" x2="43.17" y2="197.7" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="50.35" y1="205.37" x2="45.98" y2="207.8" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="55.56" y1="213.85" x2="53.07" y2="215.53" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="61.48" y1="221.84" x2="57.6" y2="224.99" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="68.08" y1="229.28" x2="65.92" y2="231.36" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="75.3" y1="236.12" x2="72.02" y2="239.89" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="83.09" y1="242.3" x2="81.33" y2="244.73" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="91.39" y1="247.78" x2="88.82" y2="252.07" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="100.13" y1="252.51" x2="98.82" y2="255.21" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="109.26" y1="256.47" x2="107.47" y2="261.14" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="118.69" y1="259.62" x2="117.87" y2="262.5" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="128.36" y1="261.93" x2="127.42" y2="266.84" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="138.2" y1="263.39" x2="137.89" y2="266.37" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="148.13" y1="263.98" x2="148.05" y2="268.98" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="158.07" y1="263.71" x2="158.28" y2="266.71" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="167.95" y1="262.58" x2="168.74" y2="267.52" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="177.69" y1="260.58" x2="178.42" y2="263.49" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="187.23" y1="257.75" x2="188.86" y2="262.48" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="196.48" y1="254.1" x2="197.7" y2="256.83" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="205.37" y1="249.65" x2="207.8" y2="254.02" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="213.85" y1="244.44" x2="215.53" y2="246.93" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="221.84" y1="238.52" x2="224.99" y2="242.4" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="229.28" y1="231.92" x2="231.36" y2="234.08" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="236.12" y1="224.7" x2="239.89" y2="227.98" stroke="var(--xv-line)" stroke-width="0.8"></line><line x1="242.3" y1="216.91" x2="244.73" y2="218.67" stroke="var(--xv-line)" stroke-width="0.8"></line><text x="271.16" y="184.6" font-size="14" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♈︎</text><text x="272.23" y="119.39" font-size="14" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♉︎</text><text x="240.55" y="62.38" font-size="14" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♊︎</text><text x="184.6" y="28.84" font-size="14" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♋︎</text><text x="119.39" y="27.77" font-size="14" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♌︎</text><text x="62.38" y="59.45" font-size="14" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♍︎</text><text x="28.84" y="115.4" font-size="14" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♎︎</text><text x="27.77" y="180.61" font-size="14" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♏︎</text><text x="59.45" y="237.62" font-size="14" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♐︎</text><text x="115.4" y="271.16" font-size="14" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♑︎</text><text x="180.61" y="272.23" font-size="14" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♒︎</text><text x="237.62" y="240.55" font-size="14" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♓︎</text><line x1="97.17" y1="178.44" x2="49.62" y2="204.03" stroke="var(--xv-line)" stroke-width="1"></line><line x1="120.71" y1="202.37" x2="94.35" y2="249.49" stroke="var(--xv-line)" stroke-width="1"></line><line x1="187.73" y1="196.66" x2="221.68" y2="238.64" stroke="var(--xv-line)" stroke-width="1"></line><line x1="205.25" y1="173.39" x2="254.98" y2="194.43" stroke="var(--xv-line)" stroke-width="1"></line><line x1="202.83" y1="121.56" x2="250.38" y2="95.97" stroke="var(--xv-line)" stroke-width="1"></line><line x1="179.29" y1="97.63" x2="205.65" y2="50.51" stroke="var(--xv-line)" stroke-width="1"></line><line x1="112.27" y1="103.34" x2="78.32" y2="61.36" stroke="var(--xv-line)" stroke-width="1"></line><line x1="94.75" y1="126.61" x2="45.02" y2="105.57" stroke="var(--xv-line)" stroke-width="1"></line><text x="47.21" y="175.9" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">1</text><text x="74.44" y="224.34" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">2</text><text x="128.52" y="253.8" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">3</text><text x="190.39" y="248" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">4</text><text x="234.67" y="213.78" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">5</text><text x="253.88" y="171.08" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">6</text><text x="252.79" y="124.1" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">7</text><text x="225.56" y="75.66" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">8</text><text x="171.48" y="46.2" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">9</text><text x="109.61" y="52" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">10</text><text x="65.33" y="86.22" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">11</text><text x="46.12" y="128.92" font-size="9.6" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="bc-hnum xv-mono">12</text><line x1="90" y1="150" x2="6" y2="150" stroke="var(--xv-ink)" stroke-width="1.6" stroke-linecap="round" style="animation:xv-bc-x-asc 10s ease-out infinite both"></line><line x1="210" y1="150" x2="290" y2="150" stroke="var(--xv-ink)" stroke-width="1.6" stroke-linecap="round" style="animation:xv-bc-x-dsc 10s ease-out infinite both"></line><line x1="143.89" y1="90.31" x2="135.35" y2="6.75" stroke="var(--xv-ink)" stroke-width="1.6" stroke-linecap="round" style="animation:xv-bc-x-mc 10s ease-out infinite both"></line><line x1="156.11" y1="209.69" x2="164.25" y2="289.27" stroke="var(--xv-ink)" stroke-width="1.6" stroke-linecap="round" style="animation:xv-bc-x-ic 10s ease-out infinite both"></line><text x="24.48" y="160.98" font-size="9.6" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" style="animation:xv-bc-asc-label 10s ease-out infinite both">ASC</text><text x="150.35" y="24" font-size="9.6" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" style="animation:xv-bc-mc-label 10s ease-out infinite both">MC</text><line x1="136.06" y1="91.64" x2="108.04" y2="192.88" stroke="var(--xv-cool)" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="108 108" class="bc-aspect" style="animation:xv-bc-a0 10s ease-out infinite both;stroke-dashoffset:0"></line><line x1="136.06" y1="91.64" x2="90.78" y2="159.63" stroke="var(--xv-bad)" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="84 84" class="bc-aspect" style="animation:xv-bc-a1 10s ease-out infinite both;stroke-dashoffset:0"></line><line x1="111.64" y1="103.86" x2="90.78" y2="159.63" stroke="var(--xv-cool)" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="3 3" class="bc-aspect" style="animation:xv-bc-a2 10s ease-out infinite both"></line><g><line x1="123.52" y1="39.12" x2="125.61" y2="47.87" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m0 10s ease-out infinite both"></line><g class="bc-planet" style="animation:xv-bc-p0 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="136.06" cy="91.64" r="2" fill="var(--xv-ink)"></circle><circle cx="130.95" cy="70.24" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="130.95" y="70.24" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">☉︎</text></g></g><g><line x1="70.27" y1="231.48" x2="76.56" y2="225.05" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m1 10s ease-out infinite both"></line><g class="bc-planet" style="animation:xv-bc-p1 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="108.04" cy="192.88" r="2" fill="var(--xv-ink)"></circle><circle cx="92.65" cy="208.61" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="92.65" y="208.61" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">☽︎</text></g></g><g><line x1="77.12" y1="62.34" x2="82.87" y2="69.26" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m2 10s ease-out infinite both"></line><g class="bc-planet" style="animation:xv-bc-p2 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="111.64" cy="103.86" r="2" fill="var(--xv-ink)"></circle><circle cx="97.58" cy="86.95" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="97.58" y="86.95" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">☿︎</text></g></g><g><line x1="97.06" y1="49.04" x2="101.24" y2="57.01" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m3 10s ease-out infinite both"></line>
64<g class="bc-planet" style="animation:xv-bc-p3 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="122.14" cy="96.86" r="2" fill="var(--xv-ink)"></circle><circle cx="111.92" cy="77.38" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="111.92" y="77.38" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♀︎</text></g></g><g><line x1="45.46" y1="195.46" x2="53.71" y2="191.87" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m4 10s ease-out infinite both"></line><g class="bc-planet" style="animation:xv-bc-p4 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="94.98" cy="173.92" r="2" fill="var(--xv-ink)"></circle><circle cx="74.8" cy="182.7" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="74.8" y="182.7" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♂︎</text></g></g><g><line x1="98.28" y1="251.59" x2="102.36" y2="243.57" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m5 10s ease-out infinite both"></line><g class="bc-planet" style="animation:xv-bc-p5 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="122.78" cy="203.47" r="2" fill="var(--xv-ink)"></circle><circle cx="112.8" cy="223.08" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="112.8" y="223.08" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♃︎</text></g></g><g><line x1="37.48" y1="168.31" x2="46.36" y2="166.86" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round" style="animation:xv-bc-m6 10s ease-out infinite both"></line><g class="bc-planet" style="animation:xv-bc-p6 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="90.78" cy="159.63" r="2" fill="var(--xv-ink)"></circle><circle cx="69.06" cy="163.17" r="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></circle><text x="69.06" y="163.17" font-size="15" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♄︎</text></g></g><circle cx="150" cy="150" r="1.6" fill="var(--xv-ink-soft)"></circle></svg></div></div></div></div><div class="relative z-10 flex flex-col justify-end px-3 pt-3 pb-1"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
65              text-lg md:text-xl">Birth Chart API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
66              line-clamp-2">Planet positions, house cusps, aspects, and elements — everything in a natal chart, clean JSON ready to render.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-1 lg:row-span-2  md:row-span-2 group bento-card-animation" style="animation-delay:55ms"><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
67          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
68          transition-all duration-500 p-3 flex
69          flex-col
70          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
71              transition-transform duration-700 group-hover:scale-[1.03]
72              w-full flex-1 min-h-[160px]"><div aria-hidden="true" data-xv="kundli" class="xv-frame  "><style>[data-xv="kundli"] .ku-line{stroke-dasharray:100 100}
73[data-xv="kundli"] .ku-seg{transform-box:fill-box;transform-origin:left center}
74[data-xv="kundli"] .ku-pop{transform-box:fill-box;transform-origin:center}
75[data-xv="kundli"] .ku-pl{transition:fill .3s ease}
76.group\/card:hover [data-xv="kundli"] .ku-pl{fill:var(--xv-accent)}
77@keyframes xv-ku-frame{0%{stroke-dashoffset:100}1%{stroke-dashoffset:100}10%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
78@keyframes xv-ku-n0{0%{opacity:0}8%{opacity:0}11%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
79@keyframes xv-ku-n1{0%{opacity:0}8.5%{opacity:0}11.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
80@keyframes xv-ku-n2{0%{opacity:0}9%{opacity:0}12%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
81@keyframes xv-ku-n3{0%{opacity:0}9.5%{opacity:0}12.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
82@keyframes xv-ku-n4{0%{opacity:0}10%{opacity:0}13%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
83@keyframes xv-ku-n5{0%{opacity:0}10.5%{opacity:0}13.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
84@keyframes xv-ku-n6{0%{opacity:0}11%{opacity:0}14%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
85@keyframes xv-ku-n7{0%{opacity:0}11.5%{opacity:0}14.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
86@keyframes xv-ku-n8{0%{opacity:0}12%{opacity:0}
8615%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
87@keyframes xv-ku-n9{0%{opacity:0}12.5%{opacity:0}15.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
88@keyframes xv-ku-n10{0%{opacity:0}13%{opacity:0}16%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
89@keyframes xv-ku-n11{0%{opacity:0}13.5%{opacity:0}16.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
90@keyframes xv-ku-lagna{0%{opacity:0;transform:translateY(4px)}10%{opacity:0;transform:translateY(4px)}14%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(4px)}100%{opacity:0;transform:translateY(4px)}}
91@keyframes xv-ku-moon{0%{opacity:0;transform:translateY(4px)}19.5%{opacity:0;transform:translateY(4px)}23.5%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(4px)}100%{opacity:0;transform:translateY(4px)}}
92@keyframes xv-ku-bal{0%{opacity:0;transform:translateY(4px)}23%{opacity:0;transform:translateY(4px)}27%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(4px)}100%{opacity:0;transform:translateY(4px)}}
93@keyframes xv-ku-p0{0%{opacity:0;transform:translateY(-10px)}16%{opacity:0;transform:translateY(-10px)}19%{opacity:1;transform:translateY(1px)}20.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
94@keyframes xv-ku-p1{0%{opacity:0;transform:translateY(-10px)}18%{opacity:0;transform:translateY(-10px)}21%{opacity:1;transform:translateY(1px)}22.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
95@keyframes xv-ku-p2{0%{opacity:0;transform:translateY(-10px)}20%{opacity:0;transform:translateY(-10px)}23%{opacity:1;transform:translateY(1px)}24.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
96@keyframes xv-ku-p3{0%{opacity:0;transform:translateY(-10px)}22%{opacity:0;transform:translateY(-10px)}25%{opacity:1;transform:translateY(1px)}26.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
97@keyframes xv-ku-p4{0%{opacity:0;transform:translateY(-10px)}24%{opacity:0;transform:translateY(-10px)}27%{opacity:1;transform:translateY(1px)}28.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
98@keyframes xv-ku-p5{0%{opacity:0;transform:translateY(-10px)}26%{opacity:0;transform:translateY(-10px)}29%{opacity:1;transform:translateY(1px)}30.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
99@keyframes xv-ku-p6{0%{opacity:0;transform:translateY(-10px)}28%{opacity:0;transform:translateY(-10px)}31%{opacity:1;transform:translateY(1px)}32.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
100@keyframes xv-ku-p7{0%{opacity:0;transform:translateY(-10px)}30%{opacity:0;transform:translateY(-10px)}33%{opacity:1;transform:translateY(1px)}34.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
101@keyframes xv-ku-p8{0%{opacity:0;transform:translateY(-10px)}32%{opacity:0;transform:translateY(-10px)}35%{opacity:1;transform:translateY(1px)}36.2%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
102@keyframes xv-ku-axis{0%{opacity:0}34%{opacity:0}36.5%{opacity:1}45%{opacity:1}49%{opacity:0}
102100%{opacity:0}}
103@keyframes xv-ku-s0{0%{transform:scaleX(0)}37%{transform:scaleX(0)}40%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
104@keyframes xv-ku-s1{0%{transform:scaleX(0)}37.7%{transform:scaleX(0)}40.7%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
105@keyframes xv-ku-s2{0%{transform:scaleX(0)}38.4%{transform:scaleX(0)}41.4%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
106@keyframes xv-ku-s3{0%{transform:scaleX(0)}39.1%{transform:scaleX(0)}42.1%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
107@keyframes xv-ku-s4{0%{transform:scaleX(0)}39.8%{transform:scaleX(0)}42.8%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
108@keyframes xv-ku-s5{0%{transform:scaleX(0)}40.5%{transform:scaleX(0)}43.5%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
109@keyframes xv-ku-s6{0%{transform:scaleX(0)}41.2%{transform:scaleX(0)}44.2%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
110@keyframes xv-ku-s7{0%{transform:scaleX(0)}41.9%{transform:scaleX(0)}44.9%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
111@keyframes xv-ku-s8{0%{transform:scaleX(0)}42.6%{transform:scaleX(0)}45.6%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
112@keyframes xv-ku-labels{0%{opacity:0}44%{opacity:0}47.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
113@keyframes xv-ku-now{0%{opacity:0;transform:translateX(-71.98px)}44%{opacity:0;transform:translateX(-71.98px)}47%{opacity:1;transform:translateX(-71.98px)}64%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(0px)}100%{opacity:0;transform:translateX(0px)}}
114@keyframes xv-ku-cur{0%{fill:var(--xv-surface)}63%{fill:var(--xv-surface)}
11466.5%{fill:var(--xv-accent)}91%{fill:var(--xv-accent)}95%{fill:var(--xv-surface)}100%{fill:var(--xv-surface)}}
115@keyframes xv-ku-chip{0%{opacity:0;transform:translateY(5px)}65%{opacity:0;transform:translateY(5px)}69%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}</style><svg viewBox="0 0 276 268" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><text x="8" y="12" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central"><tspan font-weight="700" fill="var(--xv-ink)">6 Jul 1993 · 08:00 IST</tspan><tspan> · New Delhi</tspan></text><g><rect x="8" y="24" width="168" height="168" fill="var(--xv-surface)"></rect><path d="M 8 24 H 176 V 192 H 8 Z" fill="none" stroke="var(--xv-ink)" stroke-width="1.3" stroke-linejoin="round" pathLength="100" class="ku-line" style="animation:xv-ku-frame 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 8 24 L 176 192" fill="none" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linejoin="round" pathLength="100" class="ku-line" style="animation:xv-ku-frame 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 176 24 L 8 192" fill="none" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linejoin="round" pathLength="100" class="ku-line" style="animation:xv-ku-frame 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 92 24 L 176 108 L 92 192 L 8 108 Z" fill="none" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linejoin="round" pathLength="100" class="ku-line" style="animation:xv-ku-frame 10s ease-in-out infinite both;stroke-dashoffset:0"></path><text x="92" y="94.14" font-size="9" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n0 10s ease-out infinite both">4</text><text x="50" y="55.92" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n1 10s ease-out infinite both">5</text><text x="39.92" y="66" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n2 10s ease-out infinite both">6</text><text x="78.14" y="108" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n3 10s ease-out infinite both">7</text><text x="39.92" y="150" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n4 10s ease-out infinite both">8</text><text x="50" y="160.08" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n5 10s ease-out infinite both">9</text><text x="92" y="121.86" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n6 10s ease-out infinite both">10</text><text x="134" y="160.08" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n7 10s ease-out infinite both">11</text><text x="144.08" y="150" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n8 10s ease-out infinite both">12</text><text x="105.86" y="108" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n9 10s ease-out infinite both">1</text><text x="144.08" y="66" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n10 10s ease-out infinite both">2</text><text x="134" y="55.92" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-ku-n11 10s ease-out infinite both">3</text><text x="92" y="46.24" font-size="9" font-weight="800" letter-spacing="0.04em" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" style="animation:xv-ku-lagna 10s ease-out infinite both">Asc</text><line x1="21.44" y1="150" x2="160.04" y2="73" stroke="var(--xv-gold)" stroke-width="1" stroke-dasharray="2 3" style="animation:xv-ku-axis 10s ease-out infinite both;opacity:0"></line><g class="ku-pop" style="animation:xv-ku-p0 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="134" y="39.12" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Su</text></g><g class="ku-pop" style="animation:xv-ku-p1 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="92" y="154.2" font-size="10.5" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central">Mo</text></g><g class="ku-pop" style="animation:xv-ku-p2 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="50" y="39.12" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Ma</text></g><g class="ku-pop" style="animation:xv-ku-p3 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="92" y="61.24" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Me</text></g><g class="ku-pop" style="animation:xv-ku-p4 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="21.44" y="66" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Ju</text></g><g class="ku-pop" style="animation:xv-ku-p5 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="160.04" y="59" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Ve</text></g><g class="ku-pop" style="animation:xv-ku-p6 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="134" y="177.72" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Sa</text></g><g class="ku-pop" style="animation:xv-ku-p7 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="21.44" y="150" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Ra</text></g><g class="ku-pop" style="animation:xv-ku-p8 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="160.04" y="73" font-size="10.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="ku-pl">Ke</text></g></g><g><g style="animation:xv-ku-lagna 10s ease-out infinite both"><text x="185" y="62" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">LAGNA</text><text x="185" y="76" font-size="12" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Karka</text><text x="185" y="89" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">21°42′</text></g><g style="animation:xv-ku-moon 10s ease-out infinite both"><text x="185" y="110" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">MOON</text><text x="185" y="124" font-size="12" font-weight="800" fill="var(--xv-accent)" dominant-baseline="central">Shravana</text><text x="185" y="137" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Makara · pada 2</text></g><g style="animation:xv-ku-bal 10s ease-out infinite both"><text x="185" y="158" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">BALANCE</text><text x="185" y="172" font-size="11" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Moon 6y 0m</text><text x="185" y="185" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">at birth</text></g></g><g><text x="268" y="203" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" text-anchor="end" dominant-baseline="central">VIMSHOTTARI DASHA</text><rect x="8" y="211" width="260" height="12" rx="3" fill="var(--xv-wash)" stroke="var(--xv-line)" stroke-width="1"></rect><rect x="8" y="211" width="21.67" height="12" fill="var(--xv-accent-soft)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s0 10s ease-out infinite both"></rect><rect x="29.67" y="211" width="15.17" height="12" fill="var(--xv-accent-soft)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s1 10s ease-out infinite both"></rect><rect x="44.83" y="211" width="39" height="12" fill="var(--xv-accent-soft)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s2 10s ease-out infinite both"></rect><rect x="83.83" y="211" width="34.67" height="12" fill="var(--xv-accent)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s3 10s ease-out infinite both, xv-ku-cur 10s ease-out infinite both"></rect><rect x="118.5" y="211" width="41.17" height="12" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s4 10s ease-out infinite both"></rect><rect x="159.67" y="211" width="36.83" height="12" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s5 10s ease-out infinite both"></rect><rect x="196.5" y="211" width="15.17" height="12" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s6 10s ease-out infinite both"></rect><rect x="211.67" y="211" width="43.33" height="12" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s7 10s ease-out infinite both"></rect><rect x="255" y="211" width="13" height="12" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8" class="ku-seg" style="animation:xv-ku-s8 10s ease-out infinite both"></rect><rect x="8" y="211" width="8.64" height="12" fill="var(--xv-ink-soft)" fill-opacity="0.28"></rect><g style="animation:xv-ku-labels 10s ease-out infinite both"><g><text x="18.83" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Mo</text><text x="18.83" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">10</text></g><g>
115<text x="37.25" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Ma</text><text x="37.25" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">7</text></g><g><text x="64.33" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Ra</text><text x="64.33" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">18</text></g><g><text x="101.17" y="231" font-size="9" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central">Ju</text><text x="101.17" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">16</text></g><g><text x="139.08" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Sa</text><text x="139.08" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">19</text></g><g><text x="178.08" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Me</text><text x="178.08" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">17</text></g><g><text x="204.08" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Ke</text><text x="204.08" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">7</text></g><g><text x="233.33" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Ve</text><text x="233.33" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">20</text></g><g><text x="261.5" y="231" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">Su</text><text x="261.5" y="242" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">6</text></g></g><g style="animation:xv-ku-now 10s cubic-bezier(0.45, 0, 0.25, 1) infinite both"><line x1="88.62" y1="207" x2="88.62" y2="226" stroke="var(--xv-ink)" stroke-width="1.4" stroke-linecap="round"></line><path d="M 85.12 203 H 92.12 L 88.62 207.5 Z" fill="var(--xv-ink)"></path><text x="94.62" y="203" font-size="9" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">now</text></g><g class="ku-pop" style="animation:xv-ku-chip 10s ease-out infinite both"><rect x="8" y="251" width="226.89" height="15" rx="7.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="14" y="258.5" font-size="9.5" font-weight="600" fill="var(--xv-accent)" dominant-baseline="central" class="">Mahadasha: Jupiter · Antardasha: Saturn</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end p-3 pt-2 pb-3"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
116              text-lg md:text-xl">Kundali API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
117              line-clamp-4">Comprehensive Vedic charts — all divisional charts, Vimshottari dasha, Shadbala, Ashtakvarga, Bhavbala, and Gochara.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-1 lg:row-span-2  md:row-span-2 group bento-card-animation" style="animation-delay:110ms">
117<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
118          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
119          transition-all duration-500 p-3 flex
120          flex-col
121          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
122              transition-transform duration-700 group-hover:scale-[1.03]
123              w-full flex-1 min-h-[160px]"><div aria-hidden="true" data-xv="compatibility" class="xv-frame  "><style>[data-xv="compatibility"] .co-fill{transform-box:fill-box;transform-origin:left center}
124[data-xv="compatibility"] .co-pop{transform-box:fill-box;transform-origin:center}
125[data-xv="compatibility"] .co-track{transition:fill .3s ease}
126.group\/card:hover [data-xv="compatibility"] .co-track{fill:var(--xv-line-strong)}
127@keyframes xv-co-p0{0%{opacity:0;transform:translateX(-8px)}2%{opacity:0;transform:translateX(-8px)}6%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(-8px)}100%{opacity:0;transform:translateX(-8px)}}
128@keyframes xv-co-p1{0%{opacity:0;transform:translateX(8px)}4.5%{opacity:0;transform:translateX(8px)}8.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(8px)}100%{opacity:0;transform:translateX(8px)}}
129@keyframes xv-co-moon{0%{opacity:0}8%{opacity:0}11.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
130@keyframes xv-co-f0{0%{transform:scaleX(0)}13%{transform:scaleX(0)}16.5%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
131@keyframes xv-co-s0{0%{opacity:0}14.5%{opacity:0}17%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
132@keyframes xv-co-c0{0%{opacity:0}14.75%{opacity:0}15.75%{opacity:1}18.95%{opacity:1}19.45%{opacity:0}100%{opacity:0}}
133@keyframes xv-co-f1{0%{transform:scaleX(0)}17.2%{transform:scaleX(0)}20.7%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
134@keyframes xv-co-s1{0%{opacity:0}18.7%{opacity:0}21.2%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
135@keyframes xv-co-c1{0%{opacity:0}18.95%{opacity:0}19.95%{opacity:1}23.15%{opacity:1}23.65%{opacity:0}100%{opacity:0}}
136@keyframes xv-co-f2{0%{transform:scaleX(0)}21.4%{transform:scaleX(0)}24.9%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
137@keyframes xv-co-s2{0%{opacity:0}22.9%{opacity:0}
13725.4%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
138@keyframes xv-co-c2{0%{opacity:0}23.15%{opacity:0}24.15%{opacity:1}27.35%{opacity:1}27.85%{opacity:0}100%{opacity:0}}
139@keyframes xv-co-f3{0%{transform:scaleX(0)}25.6%{transform:scaleX(0)}29.1%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
140@keyframes xv-co-s3{0%{opacity:0}27.1%{opacity:0}29.6%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
141@keyframes xv-co-c3{0%{opacity:0}27.35%{opacity:0}28.35%{opacity:1}31.55%{opacity:1}32.05%{opacity:0}100%{opacity:0}}
142@keyframes xv-co-f4{0%{transform:scaleX(0)}29.8%{transform:scaleX(0)}33.3%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
143@keyframes xv-co-s4{0%{opacity:0}31.3%{opacity:0}33.8%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
144@keyframes xv-co-c4{0%{opacity:0}31.55%{opacity:0}32.55%{opacity:1}35.75%{opacity:1}36.25%{opacity:0}100%{opacity:0}}
145@keyframes xv-co-f5{0%{transform:scaleX(0)}34%{transform:scaleX(0)}37.5%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
146@keyframes xv-co-s5{0%{opacity:0}35.5%{opacity:0}38%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
147@keyframes xv-co-c5{0%{opacity:0}35.75%{opacity:0}36.75%{opacity:1}39.95%{opacity:1}40.45%{opacity:0}100%{opacity:0}}
148@keyframes xv-co-f6{0%{transform:scaleX(0)}38.2%{transform:scaleX(0)}41.7%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
149@keyframes xv-co-s6{0%{opacity:0}39.7%{opacity:0}42.2%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
150@keyframes xv-co-c6{0%{opacity:0}39.95%{opacity:0}40.95%{opacity:1}44.15%{opacity:1}44.65%{opacity:0}100%{opacity:0}}
151@keyframes xv-co-f7{0%{transform:scaleX(0)}42.4%{transform:scaleX(0)}45.9%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
152@keyframes xv-co-s7{0%{opacity:0}43.9%{opacity:0}
15246.4%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
153@keyframes xv-co-c7{0%{opacity:0}44.15%{opacity:0}45.65%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
154@keyframes xv-co-ring{0%{stroke-dashoffset:138.23}13%{stroke-dashoffset:138.23}16.5%{stroke-dashoffset:134.39}17.2%{stroke-dashoffset:134.39}20.7%{stroke-dashoffset:126.71}21.4%{stroke-dashoffset:126.71}24.9%{stroke-dashoffset:120.95}25.6%{stroke-dashoffset:120.95}29.1%{stroke-dashoffset:105.59}29.8%{stroke-dashoffset:105.59}33.3%{stroke-dashoffset:86.39}34%{stroke-dashoffset:86.39}37.5%{stroke-dashoffset:63.36}38.2%{stroke-dashoffset:63.36}41.7%{stroke-dashoffset:63.36}42.4%{stroke-dashoffset:63.36}45.9%{stroke-dashoffset:32.64}91%{stroke-dashoffset:32.64}95%{stroke-dashoffset:138.23}100%{stroke-dashoffset:138.23}}
155@keyframes xv-co-verdict{0%{opacity:0;transform:scale(0.9)}50%{opacity:0;transform:scale(0.9)}53.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.9)}100%{opacity:0;transform:scale(0.9)}}
156@keyframes xv-co-manglik{0%{opacity:0;transform:scale(0.9)}54%{opacity:0;transform:scale(0.9)}57.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.9)}100%{opacity:0;transform:scale(0.9)}}
157@keyframes xv-co-note{0%{opacity:0}58%{opacity:0}61.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}</style><svg viewBox="0 0 276 268" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><g style="animation:xv-co-p0 10s ease-out infinite both"><g class=""><rect x="8" y="6" width="83.63" height="15" rx="7.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="14" y="13.5" font-size="9.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="">Aarav · Hasta</text></g><text x="14" y="31" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" style="animation:xv-co-moon 10s ease-out infinite both">Kanya Moon</text></g><g style="animation:xv-co-p1 10s ease-out infinite both"><g class=""><rect x="122" y="6" width="78.12" height="15" rx="7.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="128" y="13.5" font-size="9.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="">Diya · Swati</text></g><text x="128" y="31" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" style="animation:xv-co-moon 10s ease-out infinite both">Tula Moon</text></g><g fill="none" stroke="var(--xv-rose)" stroke-width="1.2"><circle cx="101.63" cy="13.5" r="3.4"></circle><circle cx="106.63" cy="13.5" r="3.4"></circle></g></g><g><text x="8" y="55" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">ASHTAKOOT</text><text x="211" y="55" font-size="9" fill="var(--xv-ink-soft)" text-anchor="end" dominant-baseline="central">score / max</text><g><text x="8" y="71" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Varna</text><rect x="80" y="68" width="12" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="68" width="12" height="6" rx="3" fill="var(--xv-good)" class="co-fill" style="animation:xv-co-f0 10s ease-out infinite both"></rect><text x="211" y="71" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s0 10s ease-out infinite both">1/1</text></g><g><text x="8" y="87" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Vashya</text><rect x="80" y="84" width="24" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="84" width="24" height="6" rx="3" fill="var(--xv-good)" class="co-fill" style="animation:xv-co-f1 10s ease-out infinite both"></rect><text x="211" y="87" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s1 10s ease-out infinite both">2/2</text></g><g><text x="8" y="103" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Tara</text><rect x="80" y="100" width="36" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="100" width="18" height="6" rx="3" fill="var(--xv-gold)" class="co-fill" style="animation:xv-co-f2 10s ease-out infinite both"></rect><text x="211" y="103" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s2 10s ease-out infinite both">1.5/3</text></g><g><text x="8" y="119" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Yoni</text><rect x="80" y="116" width="48" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="116" width="48" height="6" rx="3" fill="var(--xv-good)" class="co-fill" style="animation:xv-co-f3 10s ease-out infinite both"></rect><text x="211" y="119" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s3 10s ease-out infinite both">4/4</text></g><g><text x="8" y="135" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Graha Maitri</text><rect x="80" y="132" width="60" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="132" width="60" height="6" rx="3" fill="var(--xv-good)" class="co-fill" style="animation:xv-co-f4 10s ease-out infinite both"></rect><text x="211" y="135" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s4 10s ease-out infinite both">5/5</text></g><g><text x="8" y="151" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Gana</text><rect x="80" y="148" width="72" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="148" width="72" height="6" rx="3" fill="var(--xv-good)" class="co-fill" style="animation:xv-co-f5 10s ease-out infinite both"></rect><text x="211" y="151" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s5 10s ease-out infinite both">6/6</text></g><g><text x="8" y="167" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Bhakoot</text><rect x="80" y="164" width="84" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect>
157<circle cx="83" cy="167" r="3" fill="var(--xv-bad)" class="co-pop" style="animation:xv-co-f6 10s ease-out infinite both"></circle><text x="211" y="167" font-size="9.5" font-weight="700" fill="var(--xv-bad)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s6 10s ease-out infinite both">0/7</text></g><g><text x="8" y="183" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Nadi</text><rect x="80" y="180" width="96" height="6" rx="3" fill="var(--xv-line)" class="co-track"></rect><rect x="80" y="180" width="96" height="6" rx="3" fill="var(--xv-good)" class="co-fill" style="animation:xv-co-f7 10s ease-out infinite both"></rect><text x="211" y="183" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono" style="animation:xv-co-s7 10s ease-out infinite both">8/8</text></g></g><g><text x="243" y="76" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">GUNAS</text><circle cx="243" cy="112" r="22" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="5"></circle><circle cx="243" cy="112" r="22" fill="none" stroke="var(--xv-accent)" stroke-width="5" stroke-linecap="round" stroke-dasharray="138.23 138.23" transform="rotate(-90 243 112)" style="animation:xv-co-ring 10s ease-out infinite both;stroke-dashoffset:32.64"></circle><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c0 10s linear infinite both;opacity:0">1</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c1 10s linear infinite both;opacity:0">3</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c2 10s linear infinite both;opacity:0">4.5</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c3 10s linear infinite both;opacity:0">8.5</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c4 10s linear infinite both;opacity:0">13.5</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c5 10s linear infinite both;opacity:0">19.5</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c6 10s linear infinite both;opacity:0">19.5</text><text x="243" y="109" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-co-c7 10s linear infinite both;opacity:1">27.5</text><text x="243" y="122" font-size="9" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">/36</text></g><g><g class="co-pop" style="animation:xv-co-verdict 10s ease-out infinite both"><rect x="8" y="206" width="178.78" height="15" rx="7.5" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="18.75" y="213.5" font-size="9.5" font-weight="800" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central">✓</text><text x="26.5" y="213.5" font-size="9.5" font-weight="700" fill="var(--xv-good)" dominant-baseline="central" class="">Very good match · 27.5 of 36</text></g><g class="co-pop" style="animation:xv-co-manglik 10s ease-out infinite both"><rect x="8" y="226" width="156.74" height="15" rx="7.5" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="18.75" y="233.5" font-size="9.5" font-weight="800" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central">✓</text><text x="26.5" y="233.5" font-size="9.5" font-weight="600" fill="var(--xv-good)" dominant-baseline="central" class="">Manglik: neither partner</text></g><text x="8" y="256" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" style="animation:xv-co-note 10s ease-out infinite both">Bhakoot 2/12 dosha cancelled: lords are friends</text></g></svg></div></div><div class="relative z-10 flex flex-col justify-end p-3 pt-2 pb-3"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
158              text-lg md:text-xl">Compatibility API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
159              line-clamp-4">Ashtakoot Guna Milan and Dashkoot for Vedic. Full synastry and composite charts for Western. Both traditions, one integration.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:165ms">
159<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
160          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
161          transition-all duration-500 p-3 flex
162          flex-col md:flex-row
163          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
164              transition-transform duration-700 group-hover:scale-[1.03]
165              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="horoscope" class="xv-frame  "><style>[data-xv="horoscope"] .hs-deva{font-family:'Plus Jakarta Sans','Kohinoor Devanagari','Devanagari Sangam MN','Nirmala UI','Noto Sans Devanagari','Mangal',sans-serif}
166[data-xv="horoscope"] .hs-taml{font-family:'Plus Jakarta Sans','Tamil Sangam MN','Nirmala UI','Noto Sans Tamil','Latha',sans-serif}
167[data-xv="horoscope"] .hs-tab{transition:fill .35s ease}
168.group\/card:hover [data-xv="horoscope"] .hs-tab{fill:var(--xv-ink)}
169@keyframes xv-hs-card{0%{opacity:0;transform:translateY(-12px)}1.5%{opacity:0;transform:translateY(-12px)}6%{opacity:1;transform:translateY(0px)}95.5%{opacity:1;transform:translateY(0px)}98.5%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
170@keyframes xv-hs-flash{24.5%{opacity:0}26.5%{opacity:1}32.5%{opacity:0}49.5%{opacity:0}51.5%{opacity:1}57.5%{opacity:0}74.5%{opacity:0}76.5%{opacity:1}82.5%{opacity:0}}
171@keyframes xv-hs-t0{0%{opacity:0;transform:translateY(3px)}5.5%{opacity:0;transform:translateY(3px)}8.5%{opacity:1;transform:translateY(0px)}22%{opacity:1;transform:translateY(0px)}25%{opacity:0;transform:translateY(3px)}100%{opacity:0;transform:translateY(3px)}}
172@keyframes xv-hs-c0{0%{opacity:0}3.5%{opacity:0}6%{opacity:1}22.5%{opacity:1}25%{opacity:0}100%{opacity:0}}
173@keyframes xv-hs-t1{0%{opacity:0;transform:translateY(3px)}25%{opacity:0;transform:translateY(3px)}28%{opacity:1;transform:translateY(0px)}47%{opacity:1;transform:translateY(0px)}50%{opacity:0;transform:translateY(3px)}100%{opacity:0;transform:translateY(3px)}}
174@keyframes xv-hs-c1{0%{opacity:0}25%{opacity:0}27.5%{opacity:1}47.5%{opacity:1}50%{opacity:0}100%{opacity:0}}
175@keyframes xv-hs-t2{0%{opacity:0;transform:translateY(3px)}50%{opacity:0;transform:translateY(3px)}53%{opacity:1;transform:translateY(0px)}72%{opacity:1;transform:translateY(0px)}75%{opacity:0;transform:translateY(3px)}100%{opacity:0;transform:translateY(3px)}}
176@keyframes xv-hs-c2{0%{opacity:0}50%{opacity:0}52.5%{opacity:1}72.5%{opacity:1}75%{opacity:0}100%{opacity:0}}
177@keyframes xv-hs-t3{0%{opacity:0;transform:translateY(3px)}75%{opacity:0;transform:translateY(3px)}78%{opacity:1;transform:translateY(0px)}92.5%{opacity:1;transform:translateY(0px)}95.5%{opacity:0;transform:translateY(3px)}100%{opacity:0;transform:translateY(3px)}}
178@keyframes xv-hs-c3{0%{opacity:0}75%{opacity:0}77.5%{opacity:1}93%{opacity:1}95.5%{opacity:0}100%{opacity:0}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><defs><linearGradient id="xv-hs-wall" x1="0" y1="0" x2="0.4" y2="1"><stop offset="0" style="stop-color:var(--xv-accent);stop-opacity:0.14"></stop><stop offset="1" style="stop-color:var(--xv-accent);stop-opacity:0.02"></stop></linearGradient></defs><path d="M 10 174 V 23 Q 10 7 26 7 H 168 Q 184 7 184 23 V 174" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></path><path d="M 14 174 V 23 Q 14 11 26 11 H 168 Q 180 11 180 23 V 174 Z" fill="url(#xv-hs-wall)"></path><rect x="80" y="16" width="34" height="7" rx="3.5" fill="var(--xv-line-strong)"></rect><text x="97" y="33" font-size="9.2" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">Thursday, 24 September</text><text x="97" y="50" font-size="24" font-weight="700" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.5">7:30</text><rect x="23" y="135" width="148" height="12" rx="6" fill="var(--xv-surface)" fill-opacity="0.7" stroke="var(--xv-line)"></rect><rect x="31" y="150" width="132" height="9" rx="4.5" fill="var(--xv-surface)" fill-opacity="0.45" stroke="var(--xv-line)"></rect></g><g style="animation:xv-hs-card 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><rect x="17" y="64" width="160" height="66" rx="10" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></rect><rect x="17" y="64" width="160" height="66" rx="10" fill="none" stroke="var(--xv-accent)" stroke-width="1.4" style="animation:xv-hs-flash 10s ease-out infinite both;opacity:0"></rect><rect x="26" y="71" width="14" height="14" rx="4" fill="var(--xv-accent)"></rect><text x="33" y="78.2" font-size="10" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♌︎</text><text x="45" y="78" font-size="9.2" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">HOROSCOPE</text><text x="168" y="78" font-size="9.2" fill="var(--xv-ink-soft)" text-anchor="end" dominant-baseline="central">now</text><g class="" style="animation:xv-hs-t0 10s ease-out infinite both;opacity:0"><text x="26" y="94" font-size="10.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Leo · Today</text><text x="26" y="108" font-size="9.5" fill="var(--xv-ink)" dominant-baseline="central">Speak up at work — your ideas</text><text x="26" y="120.5" font-size="9.5" fill="var(--xv-ink)" dominant-baseline="central">land well. Evening is for friends.</text></g><g class="hs-deva" style="animation:xv-hs-t1 10s ease-out infinite both;opacity:1"><text x="26" y="94" font-size="11.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">सिंह · आज</text><text x="26" y="108" font-size="10.5" fill="var(--xv-ink)" dominant-baseline="central">काम पर खुलकर बोलें — आपके विचार</text><text x="26" y="120.5" font-size="10.5" fill="var(--xv-ink)" dominant-baseline="central">
178सराहे जाएंगे। शाम दोस्तों के नाम।</text></g><g class="" style="animation:xv-hs-t2 10s ease-out infinite both;opacity:0"><text x="26" y="94" font-size="10.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Leo · Hoy</text><text x="26" y="108" font-size="9.5" fill="var(--xv-ink)" dominant-baseline="central">Habla claro en el trabajo: tus</text><text x="26" y="120.5" font-size="9.5" fill="var(--xv-ink)" dominant-baseline="central">ideas brillan. Tarde con amigos.</text></g><g class="hs-taml" style="animation:xv-hs-t3 10s ease-out infinite both;opacity:0"><text x="26" y="94" font-size="10.6" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">சிம்மம் · இன்று</text><text x="26" y="108" font-size="9.6" fill="var(--xv-ink)" dominant-baseline="central">வேலையில் தயங்காமல் பேசுங்கள்</text><text x="26" y="120.5" font-size="9.6" fill="var(--xv-ink)" dominant-baseline="central">மாலை நண்பர்களுடன் மகிழுங்கள்.</text></g></g><g><text x="194" y="15" font-size="9.2" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">SIGN</text><rect x="194" y="24" width="48" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="205" y="32.8" font-size="11" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♌︎</text><text x="214" y="32.5" font-size="9.6" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Leo</text><text x="194" y="56" font-size="9.2" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">PERIOD</text><rect x="194" y="64" width="132" height="18" rx="9" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></rect><rect x="196" y="66" width="40" height="14" rx="7" fill="var(--xv-accent)"></rect><text x="216" y="73" font-size="9.2" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central">Daily</text><text x="260" y="73" font-size="9.2" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="hs-tab">Weekly</text><text x="304" y="73" font-size="9.2" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="hs-tab">Monthly</text><text x="194" y="100" font-size="9.2" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">LANGUAGE</text><g><rect x="194" y="110" width="63" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="225.5" y="118.5" font-size="9.4" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="">English</text><g style="animation:xv-hs-c0 10s ease-out infinite both;opacity:0"><rect x="194" y="110" width="63" height="17" rx="8.5" fill="var(--xv-accent)"></rect><text x="225.5" y="118.5" font-size="9.4" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="">English</text></g></g><g><rect x="263" y="110" width="63" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="294.5" y="118.5" font-size="10" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="hs-deva">हिंदी</text><g style="animation:xv-hs-c1 10s ease-out infinite both;opacity:1"><rect x="263" y="110" width="63" height="17" rx="8.5" fill="var(--xv-accent)"></rect><text x="294.5" y="118.5" font-size="10" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="hs-deva">हिंदी</text></g></g><g><rect x="194" y="131" width="63" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="225.5" y="139.5" font-size="9.4" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="">Español</text><g style="animation:xv-hs-c2 10s ease-out infinite both;opacity:0"><rect x="194" y="131" width="63" height="17" rx="8.5" fill="var(--xv-accent)"></rect><text x="225.5" y="139.5" font-size="9.4" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="">Español</text></g></g><g><rect x="263" y="131" width="63" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="294.5" y="139.5" font-size="10" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="hs-taml">தமிழ்</text><g style="animation:xv-hs-c3 10s ease-out infinite both;opacity:0"><rect x="263" y="131" width="63" height="17" rx="8.5" fill="var(--xv-accent)"></rect><text x="294.5" y="139.5" font-size="10" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="hs-taml">தமிழ்</text></g></g><text x="194" y="160" font-size="9.2" fill="var(--xv-ink-soft)" dominant-baseline="central">+18 more languages</text></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
179              text-base md:text-lg">Horoscopes API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
180              line-clamp-2">Daily, weekly, and monthly horoscopes from sun sign and ascendant — in 22+ languages.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-1 lg:row-span-1   group bento-card-animation" style="animation-delay:220ms">
180<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
181          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
182          transition-all duration-500 p-3 flex
183          flex-col
184          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
185              transition-transform duration-700 group-hover:scale-[1.03]
186              w-full h-[100px] flex-shrink-0"><div aria-hidden="true" data-xv="transits" class="xv-frame  "><style>[data-xv="transits"] .tr-pop{transform-box:fill-box;transform-origin:center}
187[data-xv="transits"] .tr-trail{stroke-dasharray:100 100}
188[data-xv="transits"] .tr-tick{transition:stroke .35s ease}
189.group\/card:hover [data-xv="transits"] .tr-tick{stroke:var(--xv-ink-soft)}
190@keyframes xv-tr-sat{0%{opacity:0;transform:translateX(-108.56px)}2.5%{opacity:0;transform:translateX(-108.56px)}6.25%{opacity:1;transform:translateX(-108.56px)}8.75%{opacity:1;transform:translateX(-108.56px);animation-timing-function:cubic-bezier(0.45,0,0.3,1)}27.5%{opacity:1;transform:translateX(-178.52px)}31.25%{opacity:1;transform:translateX(-178.52px);animation-timing-function:cubic-bezier(0.45,0,0.3,1)}53.75%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}93.75%{opacity:0;transform:translateX(0px)}100%{opacity:0;transform:translateX(0px)}}
191@keyframes xv-tr-rx{0%{opacity:0}5%{opacity:0}8.125%{opacity:1}27.5%{opacity:1}30.625%{opacity:0}100%{opacity:0}}
192@keyframes xv-tr-trail{0%{stroke-dashoffset:100}31.25%{stroke-dashoffset:100;animation-timing-function:cubic-bezier(0.45,0,0.3,1)}53.75%{stroke-dashoffset:0}88.75%{stroke-dashoffset:0;opacity:1}93.75%{stroke-dashoffset:0;opacity:0}
192100%{stroke-dashoffset:100;opacity:0}}
193@keyframes xv-tr-pulse{0%{opacity:0;transform:scale(1)}53.125%{opacity:0;transform:scale(1)}54.375%{opacity:0.9;transform:scale(1)}65%{opacity:0;transform:scale(2.6)}100%{opacity:0;transform:scale(2.6)}}
194@keyframes xv-tr-now{0%{opacity:0}3.75%{opacity:0}8.125%{opacity:1}88.75%{opacity:1}93.75%{opacity:0}100%{opacity:0}}
195@keyframes xv-tr-sd{0%{opacity:0;transform:translateY(-3px)}26.25%{opacity:0;transform:translateY(-3px)}30.625%{opacity:1;transform:translateY(0px)}88.75%{opacity:1;transform:translateY(0px)}93.75%{opacity:0;transform:translateY(-3px)}100%{opacity:0;transform:translateY(-3px)}}
196@keyframes xv-tr-exact{0%{opacity:0;transform:translateY(-3px)}53.75%{opacity:0;transform:translateY(-3px)}58.125%{opacity:1;transform:translateY(0px)}88.75%{opacity:1;transform:translateY(0px)}93.75%{opacity:0;transform:translateY(-3px)}100%{opacity:0;transform:translateY(-3px)}}
197@keyframes xv-tr-status{0%{opacity:0}2.5%{opacity:0}6.25%{opacity:1}53.125%{opacity:1}55.625%{opacity:0}100%{opacity:0}}
198@keyframes xv-tr-alert{0%{opacity:0;transform:scale(0.85)}54.375%{opacity:0;transform:scale(0.85)}57.5%{opacity:1;transform:scale(1.04)}60%{opacity:1;transform:scale(1)}88.75%{opacity:1;transform:scale(1)}93.75%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
199@keyframes xv-tr-natal{0%{stroke-width:1.2}53.75%{stroke-width:1.2}56.25%{stroke-width:2.6}
19963.75%{stroke-width:1.6}88.75%{stroke-width:1.6}93.75%{stroke-width:1.2}100%{stroke-width:1.2}}</style><svg viewBox="0 0 276 100" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><text x="10" y="11" font-size="9.2" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">TRANSIT ALERTS</text><g style="animation:xv-tr-status 8s ease-out infinite both;opacity:0"><rect x="10" y="21" width="112" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="18" y="29.5" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">Watching <tspan class="xv-glyph" font-size="12">♄︎</tspan> <!-- -->→<!-- --> natal <tspan class="xv-glyph" font-size="12">☽︎</tspan></text></g><g class="tr-pop" style="animation:xv-tr-alert 8s ease-out infinite both"><rect x="10" y="21" width="150" height="17" rx="8.5" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="18" y="29.5" font-size="9.5" font-weight="700" fill="var(--xv-on-accent)" dominant-baseline="central"><tspan class="xv-glyph" font-size="12">♄︎</tspan> <tspan class="xv-glyph" font-size="12">☌︎</tspan> natal <tspan class="xv-glyph" font-size="12">☽︎</tspan> <!-- -->·<!-- --> exact 14 Apr 2027</text></g><text x="259.05" y="58" font-size="9.4" font-weight="600" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central">natal <tspan class="xv-glyph" font-size="12">☽︎</tspan> <tspan class="xv-mono">18°31′</tspan></text><text x="13" y="76" font-size="12" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♈︎</text><line x1="26" y1="76" x2="262" y2="76" stroke="var(--xv-line-strong)" stroke-width="1"></line><line x1="26" y1="73" x2="26" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="42.86" y1="73" x2="42.86" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="59.71" y1="73" x2="59.71" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="76.57" y1="73" x2="76.57" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="93.43" y1="70" x2="93.43" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="110.29" y1="73" x2="110.29" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="127.14" y1="73" x2="127.14" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="144" y1="73" x2="144" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="160.86" y1="73" x2="160.86" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="177.71" y1="70" x2="177.71" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="194.57" y1="73" x2="194.57" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="211.43" y1="73" x2="211.43" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="228.29" y1="73" x2="228.29" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="245.14" y1="73" x2="245.14" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><line x1="262" y1="70" x2="262" y2="76" stroke="var(--xv-line-strong)" stroke-width="1" class="tr-tick"></line><text x="93.43" y="63" font-size="9.2" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">10°</text><text x="177.71" y="63" font-size="9.2" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">15°</text><line x1="58.53" y1="76" x2="237.05" y2="76" stroke="var(--xv-accent)" stroke-width="2" stroke-linecap="round" pathLength="100" class="tr-trail" style="animation:xv-tr-trail 8s linear infinite both;stroke-dashoffset:0"></line><line x1="237.05" y1="63" x2="237.05" y2="85" stroke="var(--xv-ink)" stroke-width="1.6" stroke-linecap="round" style="animation:xv-tr-natal 8s ease-out infinite both"></line><line x1="58.53" y1="79" x2="58.53" y2="83" stroke="var(--xv-ink-soft)" stroke-width="1" style="animation:xv-tr-sd 8s ease-out infinite both"></line><text x="128.49" y="92" font-size="9.2" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-tr-now 8s ease-out infinite both">24 Sep</text><text x="58.53" y="92" font-size="9.2" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-tr-sd 8s ease-out infinite both">SD 11 Dec</text><text x="237.05" y="92" font-size="9.2" font-weight="700" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-tr-exact 8s ease-out infinite both">14 Apr</text><circle cx="237.05" cy="76" r="8.5" fill="none" stroke="var(--xv-accent)" stroke-width="1.4" class="tr-pop" style="animation:xv-tr-pulse 8s ease-out infinite both;opacity:0"></circle><g style="animation:xv-tr-sat 8s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="237.05" cy="76" r="8.5" fill="var(--xv-surface)" stroke="var(--xv-accent)" stroke-width="1.3"></circle><text x="237.05" y="76.5" font-size="11.5" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♄︎</text><text x="247.05" y="66" font-size="11" font-weight="400" fill="var(--xv-accent)" dominant-baseline="central" class="xv-glyph" style="animation:xv-tr-rx 8s ease-out infinite both;opacity:0">℞</text></g></svg></div></div><div class="relative z-10 flex flex-col justify-end px-2 pt-2 pb-0"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
200              text-sm md:text-base">Powerful Transits API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
201              line-clamp-2">Personal, global, and progression transits, plus HD gates.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-1 lg:row-span-1   group bento-card-animation" style="animation-delay:275ms">
201<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
202          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
203          transition-all duration-500 p-3 flex
204          flex-col
205          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
206              transition-transform duration-700 group-hover:scale-[1.03]
207              w-full h-[100px] flex-shrink-0"><div aria-hidden="true" data-xv="progressions" class="xv-frame  "><style>[data-xv="progressions"] .pg-orbit{transform-origin:50px 50px}
208[data-xv="progressions"] .pg-self{transform-box:fill-box;transform-origin:center}
209[data-xv="progressions"] .pg-track{transition:stroke .35s ease}
210.group\/card:hover [data-xv="progressions"] .pg-track{stroke:var(--xv-accent)}
211@keyframes xv-pg-orbit{0%{opacity:0;transform:rotate(553.58deg)}3.333%{opacity:0;transform:rotate(553.58deg)}6.667%{opacity:1;transform:rotate(553.58deg)}8.889%{opacity:1;transform:rotate(553.58deg);animation-timing-function:cubic-bezier(0.5,0,1,1)}15%{opacity:1;transform:rotate(466.49deg);animation-timing-function:linear}21.111%{opacity:1;transform:rotate(382.3deg);animation-timing-function:linear}27.222%{opacity:1;transform:rotate(283.07deg);animation-timing-function:linear}33.333%{opacity:1;transform:rotate(183.56deg);animation-timing-function:linear}39.444%{opacity:1;transform:rotate(97.69deg);animation-timing-function:cubic-bezier(0,0,0.3,1)}45.556%{opacity:1;transform:rotate(0deg);animation-timing-function:linear}90%{opacity:1;transform:rotate(0deg)}94.444%{opacity:0;transform:rotate(0deg)}100%{opacity:0;transform:rotate(0deg)}}
212@keyframes xv-pg-upright{0%{opacity:0;transform:rotate(-553.58deg)}3.333%{opacity:0;transform:rotate(-553.58deg)}6.667%{opacity:1;transform:rotate(-553.58deg)}8.889%{opacity:1;transform:rotate(-553.58deg);animation-timing-function:cubic-bezier(0.5,0,1,1)}15%{opacity:1;transform:rotate(-466.49deg);animation-timing-function:linear}21.111%{opacity:1;transform:rotate(-382.3deg);animation-timing-function:linear}27.222%{opacity:1;transform:rotate(-283.07deg);animation-timing-function:linear}33.333%{opacity:1;transform:rotate(-183.56deg);animation-timing-function:linear}39.444%{opacity:1;transform:rotate(-97.69deg);animation-timing-function:cubic-bezier(0,0,0.3,1)}45.556%{opacity:1;transform:rotate(0deg);animation-timing-function:linear}90%{opacity:1;transform:rotate(0deg)}94.444%{opacity:0;transform:rotate(0deg)}100%{opacity:0;transform:rotate(0deg)}}
213@keyframes xv-pg-odo{0%{opacity:0;transform:translateY(144px)}3.333%{opacity:0;transform:translateY(144px)}6.667%{opacity:1;transform:translateY(144px)}8.889%{opacity:1;transform:translateY(144px);animation-timing-function:cubic-bezier(0.5,0,1,1)}15%{opacity:1;transform:translateY(120px);animation-timing-function:linear}21.111%{opacity:1;transform:translateY(96px);animation-timing-function:linear}27.222%{opacity:1;transform:translateY(72px);animation-timing-function:linear}33.333%{opacity:1;transform:translateY(48px);animation-timing-function:linear}39.444%{opacity:1;transform:translateY(24px);animation-timing-function:cubic-bezier(0,0,0.3,1)}45.556%{opacity:1;transform:translateY(0px);animation-timing-function:linear}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(0px)}100%{opacity:0;transform:translateY(0px)}}
214@keyframes xv-pg-wedge{0%{opacity:0}45.556%{opacity:0}50%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
215@keyframes xv-pg-pulse{0%{opacity:0;transform:scale(1)}45%{opacity:0;transform:scale(1)}46.111%{opacity:0.9;transform:scale(1)}55.556%{opacity:0;transform:scale(2.4)}100%{opacity:0;transform:scale(2.4)}}
216@keyframes xv-pg-chip{0%{opacity:0;transform:scale(0.85)}47.778%{opacity:0;transform:scale(0.85)}50.556%{opacity:1;transform:scale(1.04)}52.778%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}</style><svg viewBox="0 0 276 100" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><circle cx="50" cy="50" r="45" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="50" cy="50" r="31" fill="var(--xv-wash)" stroke="var(--xv-line-strong)" stroke-width="1"></circle>
216<path d="M 50 95 A 45 45 0 0 0 72.5 88.97 L 65.5 76.85 A 31 31 0 0 1 50 81 Z" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1" style="animation:xv-pg-wedge 9s ease-out infinite both"></path><line x1="19" y1="50" x2="5" y2="50" stroke="var(--xv-line)" stroke-width="1"></line><line x1="23.15" y1="65.5" x2="11.03" y2="72.5" stroke="var(--xv-line)" stroke-width="1"></line><line x1="34.5" y1="76.85" x2="27.5" y2="88.97" stroke="var(--xv-line)" stroke-width="1"></line><line x1="50" y1="81" x2="50" y2="95" stroke="var(--xv-line)" stroke-width="1"></line><line x1="65.5" y1="76.85" x2="72.5" y2="88.97" stroke="var(--xv-line)" stroke-width="1"></line><line x1="76.85" y1="65.5" x2="88.97" y2="72.5" stroke="var(--xv-line)" stroke-width="1"></line><line x1="81" y1="50" x2="95" y2="50" stroke="var(--xv-line)" stroke-width="1"></line><line x1="76.85" y1="34.5" x2="88.97" y2="27.5" stroke="var(--xv-line)" stroke-width="1"></line><line x1="65.5" y1="23.15" x2="72.5" y2="11.03" stroke="var(--xv-line)" stroke-width="1"></line><line x1="50" y1="19" x2="50" y2="5" stroke="var(--xv-line)" stroke-width="1"></line><line x1="34.5" y1="23.15" x2="27.5" y2="11.03" stroke="var(--xv-line)" stroke-width="1"></line><line x1="23.15" y1="34.5" x2="11.03" y2="27.5" stroke="var(--xv-line)" stroke-width="1"></line><text x="13.29" y="59.84" font-size="10" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♈︎</text><text x="23.13" y="76.87" font-size="10" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♉︎</text><text x="40.16" y="86.71" font-size="10" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♊︎</text><text x="59.84" y="86.71" font-size="10" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♋︎</text><text x="76.87" y="76.87" font-size="10" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♌︎</text><text x="86.71" y="59.84" font-size="10" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♍︎</text><text x="86.71" y="40.16" font-size="10" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♎︎</text><text x="76.87" y="23.13" font-size="10" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♏︎</text><text x="59.84" y="13.29" font-size="10" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♐︎</text><text x="40.16" y="13.29" font-size="10" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♑︎</text><text x="23.13" y="23.13" font-size="10" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♒︎</text><text x="13.29" y="40.16" font-size="10" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♓︎</text><text x="59.84" y="86.71" font-size="10" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph " style="animation:xv-pg-wedge 9s ease-out infinite both">♋︎</text><circle cx="50" cy="50" r="21" fill="none" stroke="var(--xv-line-strong)" stroke-width="1" stroke-dasharray="2 3" class="pg-track"></circle><line x1="56.99" y1="20.83" x2="56.06" y2="24.72" stroke="var(--xv-ink)" stroke-width="1.4" stroke-linecap="round"></line><circle cx="54.89" cy="29.58" r="2.2" fill="none" stroke="var(--xv-ink)" stroke-width="1"></circle><circle cx="50" cy="50" r="1.4" fill="var(--xv-ink-soft)"></circle><circle cx="50.04" cy="71" r="7.5" fill="none" stroke="var(--xv-accent)" stroke-width="1.3" class="pg-self" style="animation:xv-pg-pulse 9s ease-out infinite both;opacity:0"></circle><g class="pg-orbit" style="animation:xv-pg-orbit 9s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><g class="pg-self" style="animation:xv-pg-upright 9s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><circle cx="50.04" cy="71" r="7.5" fill="var(--xv-accent)"></circle><text x="50.04" y="71.3" font-size="10.5" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">☽︎</text></g></g></g><text x="106" y="11" font-size="9.2" font-weight="700" letter-spacing="0.04em" fill="var(--xv-ink-soft)" dominant-baseline="central">PROGRESSED MOON</text><text x="106" y="23" font-size="9.2" fill="var(--xv-ink-soft)" dominant-baseline="central">b. 6 Aug 1984 <!-- -->·<!-- --> New York</text><g><defs><clipPath id="xv-pg-odo-clip"><rect x="104" y="31" width="70" height="24"></rect></clipPath></defs><g clip-path="url(#xv-pg-odo-clip)"><g style="animation:xv-pg-odo 9s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><text x="106" y="-101" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">1984</text><text x="106" y="-77" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">1991</text><text x="106" y="-53" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">1998</text><text x="106" y="-29" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">2005</text><text x="106" y="-5" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">2012</text><text x="106" y="19" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">2019</text><text x="106" y="43" font-size="22" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" letter-spacing="-0.5">2027</text></g></g></g><g class="pg-self" style="animation:xv-pg-chip 9s ease-out infinite both"><rect x="106" y="63" width="152" height="18" rx="9" fill="var(--xv-accent)"></rect><text x="114" y="72" font-size="9.6" font-weight="700" fill="var(--xv-on-accent)" dominant-baseline="central"><tspan class="xv-glyph" font-size="12">☽︎</tspan> enters <tspan class="xv-glyph" font-size="12">♋︎</tspan> Cancer <!-- -->·<!-- --> Aug 2027</text></g><text x="106" y="91" font-size="9.2" fill="var(--xv-ink-soft)" dominant-baseline="central">Secondary <!-- -->·<!-- --> 1 day = 1 year</text></svg></div></div><div class="relative z-10 flex flex-col justify-end px-2 pt-2 pb-0"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
217              text-sm md:text-base">Progressions / Arc API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
218              line-clamp-2">Secondary progressions and solar arc directions, with interpretations.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:330ms">
218<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
219          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
220          transition-all duration-500 p-3 flex
221          flex-col md:flex-row
222          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
223              transition-transform duration-700 group-hover:scale-[1.03]
224              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="astrocartography" class="xv-frame  "><style>[data-xv="astrocartography"] .ac-line{stroke-dasharray:100 100}
225[data-xv="astrocartography"] .ac-pop{transform-box:fill-box;transform-origin:center}
226[data-xv="astrocartography"] .ac-bar{transform-box:fill-box;transform-origin:left center}
227[data-xv="astrocartography"] .ac-line{transition:stroke-width .35s ease}
228.group\/card:hover [data-xv="astrocartography"] .ac-line{stroke-width:1.9}
229@keyframes xv-ac-l0{0%{stroke-dashoffset:100}3%{stroke-dashoffset:100}12%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
230@keyframes xv-ac-t0{0%{opacity:0}6%{opacity:0}9%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
231@keyframes xv-ac-l1{0%{stroke-dashoffset:100}6%{stroke-dashoffset:100}15%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
232@keyframes xv-ac-t1{0%{opacity:0}9%{opacity:0}12%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
233@keyframes xv-ac-l2{0%{stroke-dashoffset:100}9%{stroke-dashoffset:100}18%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
234@keyframes xv-ac-t2{0%{opacity:0}12%{opacity:0}
23415%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
235@keyframes xv-ac-l3{0%{stroke-dashoffset:100}12%{stroke-dashoffset:100}21%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
236@keyframes xv-ac-t3{0%{opacity:0}15%{opacity:0}18%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
237@keyframes xv-ac-l4{0%{stroke-dashoffset:100}15%{stroke-dashoffset:100}24%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
238@keyframes xv-ac-t4{0%{opacity:0}18%{opacity:0}21%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
239@keyframes xv-ac-l5{0%{stroke-dashoffset:100}18%{stroke-dashoffset:100}27%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
240@keyframes xv-ac-t5{0%{opacity:0}21%{opacity:0}24%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
241@keyframes xv-ac-l6{0%{stroke-dashoffset:100}21%{stroke-dashoffset:100}30%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
242@keyframes xv-ac-t6{0%{opacity:0}24%{opacity:0}27%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
243@keyframes xv-ac-l7{0%{stroke-dashoffset:100}24%{stroke-dashoffset:100}33%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
244@keyframes xv-ac-t7{0%{opacity:0}27%{opacity:0}30%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
245@keyframes xv-ac-pin0{0%{opacity:0;transform:translateY(-6px) scale(0.6)}35%{opacity:0;transform:translateY(-6px) scale(0.6)}37.5%{opacity:1;transform:translateY(0px) scale(1.15)}39%{opacity:1;transform:translateY(0px) scale(1)}91%{opacity:1;transform:translateY(0px) scale(1)}95%{opacity:0;transform:translateY(0px) scale(1)}100%{opacity:0;transform:translateY(0px) scale(1)}}
246@keyframes xv-ac-pin1{0%{opacity:0;transform:translateY(-6px) scale(0.6)}33%{opacity:0;transform:translateY(-6px) scale(0.6)}35.5%{opacity:1;transform:translateY(0px) scale(1.15)}37%{opacity:1;transform:translateY(0px) scale(1)}91%{opacity:1;transform:translateY(0px) scale(1)}95%{opacity:0;transform:translateY(0px) scale(1)}100%{opacity:0;transform:translateY(0px) scale(1)}}
247@keyframes xv-ac-pin2{0%{opacity:0;transform:translateY(-6px) scale(0.6)}34%{opacity:0;transform:translateY(-6px) scale(0.6)}36.5%{opacity:1;transform:translateY(0px) scale(1.15)}38%{opacity:1;transform:translateY(0px) scale(1)}91%{opacity:1;transform:translateY(0px) scale(1)}95%{opacity:0;transform:translateY(0px) scale(1)}100%{opacity:0;transform:translateY(0px) scale(1)}}
248@keyframes xv-ac-pulse{0%{opacity:0;transform:scale(1)}38%{opacity:0;transform:scale(1)}39%{opacity:0.9;transform:scale(1)}47%{opacity:0;transform:scale(3)}100%{opacity:0;transform:scale(3)}}
249@keyframes xv-ac-card{0%{opacity:0;transform:translateY(6px)}39%{opacity:0;transform:translateY(6px)}43%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(6px)}100%{opacity:0;transform:translateY(6px)}}
250@keyframes xv-ac-bar{0%{transform:scaleX(0)}42%{transform:scaleX(0)}49%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
251@keyframes xv-ac-r0{0%{opacity:0;transform:translateX(6px)}42%{opacity:0;transform:translateX(6px)}45%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
252@keyframes xv-ac-r1{0%{opacity:0;transform:translateX(6px)}43.5%{opacity:0;transform:translateX(6px)}46.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
253@keyframes xv-ac-r2{0%{opacity:0;transform:translateX(6px)}45%{opacity:0;transform:translateX(6px)}48%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><defs><clipPath id="xv-ac-map"><rect x="4" y="13" width="258" height="94.6" rx="6"></rect></clipPath></defs><rect x="4" y="13" width="258" height="94.6" rx="6" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></rect><g clip-path="url(#xv-ac-map)"><path d="M 25.5 13 V 107.6 M 47 13 V 107.6 M 68.5 13 V 107.6 M 90 13 V 107.6 M 111.5 13 V 107.6 M 133 13 V 107.6 M 154.5 13 V 107.6 M 176 13 V 107.6 M 197.5 13 V 107.6 M 219 13 V 107.6 M 240.5 13 V 107.6 M 4 24.47 H 262 M 4 45.97 H 262 M 4 88.97 H 262" fill="none" stroke="var(--xv-line)" stroke-width="0.6"></path><path d="M 4 67.47 H 262" stroke="var(--xv-line-strong)" stroke-width="0.6" stroke-dasharray="2 2"></path>
253<path d="M 14.03 18.38 L 16.18 17.3 L 20.84 16.37 L 24.07 16.73 L 29.08 17.23 L 32.67 17.59 L 36.25 17.73 L 40.55 17.3 L 44.13 17.73 L 49.15 18.16 L 54.17 18.73 L 58.47 18.73 L 62.77 18.88 L 64.92 18.38 L 68.5 18.02 L 70.65 19.09 L 72.08 17.66 L 74.23 18.38 L 74.59 19.81 L 71.37 21.24 L 68.5 21.96 L 65.63 23.75 L 65.28 25.18 L 66.71 26.62 L 69.93 27.19 L 72.08 27.91 L 74.02 28.05 L 74.23 29.63 L 76.03 30.56 L 76.38 28.41 L 77.82 27.33 L 77.46 25.18 L 77.1 22.82 L 79.97 22.82 L 82.83 23.75 L 83.19 25.18 L 85.7 25.54 L 86.78 24.32 L 88.57 25.9 L 89.28 27.33 L 91.79 28.77 L 93.01 30.06 L 92.51 30.63 L 90 31.49 L 87.13 31.49 L 85.34 32.14 L 86.78 32.35 L 86.56 33.78 L 89.28 34.5 L 87.49 34.86 L 85.7 35.58 L 84.63 35.58 L 82.48 36.29 L 82.48 37.51 L 81.4 37.94 L 79.97 38.37 L 79.82 39.16 L 78.89 39.88 L 78.32 40.95 L 78.68 42.03 L 77.82 42.74 L 76.38 43.6 L 74.95 44.68 L 74.74 45.97 L 75.6 48.26 L 75.45 49.34 L 74.81 49.41 L 74.23 48.48 L 73.66 47.4 L 73.45 46.33 L 72.44 45.97 L 71.01 45.68 L 69.22 45.75 L 68.86 46.54 L 67.78 46.47 L 65.99 46.18 L 64.92 46.54 L 63.48 47.54 L 63.13 48.91 L 62.91 51.34 L 64.06 53.64 L 65.28 54.42 L 67.07 54.14 L 67.78 53.71 L 68.21 52.42 L 69.93 52.06 L 70.79 52.27 L 70.29 53.85 L 69.79 55.28 L 69.58 56.07 L 71.37 56.07 L 72.8 56.57 L 73.3 57.08 L 73.09 59.58 L 73.88 60.59 L 74.95 61.16 L 76.03 60.66 L 77.1 60.8 L 77.6 61.38 L 77.24 62.31 L 76.74 62.09 L 75.81 62.24 L 75.31 61.59 L 73.66 61.59 L 72.44 60.59 L 71.58 59.58 L 70.44 58.22 L 69.22 57.86 L 67.43 57.43 L 65.99 56.14 L 64.56 56.22 L 63.13 56 L 61.33 55.28 L 59.18 54.42 L 57.39 53.13 L 57.54 51.84 L 57.03 50.77 L 55.24 49.34 L 54.6 48.33 L 53.45 47.47 L 52.59 46.68 L 52.02 45.32 L 50.73 44.68 L 50.94 45.97 L 51.66 46.68 L 52.59 47.76 L 53.02 48.83 L 53.95 50.12 L 54.53 50.91 L 54.02 50.77 L 52.73 49.69 L 52.52 48.48 L 51.16 47.26 L 50.08 46.11 L 49.29 44.68 L 49.01 44.03 L 48.08 43.1 L 46.57 42.67 L 45.71 41.31 L 45.21 40.38 L 44.28 39.16 L 43.92 38.08 L 44.06 36.29 L 44.13 34.36 L 43.7 32.85 L 44.85 32.42 L 43.49 31.71 L 41.98 31.06 L 40.91 30.2 L 39.62 28.41 L 38.4 26.98 L 36.61 25.69 L 34.82 25.18 L 32.67 24.61 L 29.8 24.32 L 27.65 23.75 L 25.5 23.61 L 24.21 24.97 L 22.63 25.76 L 20.84 26.76 L 19.05 27.48 L 16.9 28.05 L 15.11 28.41 L 17.62 27.33 L 19.41 25.54 L 17.76 25.26 L 16.9 24.61 L 14.89 24.04 L 14.53 22.82 L 15.11 22.1 L 17.62 21.24 L 16.18 21.17 L 13.89 20.53 L 15.11 19.81 Z M 80.68 11.57 L 85.7 10.13 L 93.58 8.7 L 104.33 7.63 L 115.08 7.98 L 120.1 9.06 L 118.67 11.57 L 119.38 13.72 L 117.23 15.87 L 117.23 17.09 L 115.08 18.38 L 110.07 18.88 L 106.48 20.31 L 104.33 20.88 L 102.9 22.82 L 101.47 24.47 L 98.96 23.89 L 97.17 22.89 L 96.09 21.6 L 95.02 19.95 L 94.66 18.38 L 96.45 17.3 L 93.94 16.58 L 92.87 15.15 L 90 13.14 L 85.7 12.79 Z M 75.31 14.65 L 78.53 15.29 L 82.12 16.8 L 84.27 17.16 L 84.98 18.38 L 87.85 19.59 L 88.93 19.95 L 87.13 20.74 L 86.06 21.24 L 86.78 22.17 L 85.34 22.53 L 83.91 21.89 L 81.76 21.96 L 80.33 21.24 L 77.1 21.24 L 78.89 20.6 L 80.33 19.59 L 80.68 18.59 L 78.53 17.87 L 76.74 17.3 L 74.23 17.44 L 69.58 16.94 L 68.86 16.08 L 72.08 14.94 Z M 48.08 16.23 L 48.79 17.66 L 52.73 18.16 L 57.39 18.02 L 60.26 17.8 L 60.04 16.87 L 58.11 16.58 L 56.32 15.01 L 52.02 15.15 Z M 43.42 14.43 L 42.7 16.01 L 44.85 16.58 L 47.72 16.01 L 48.43 14.79 L 46.28 14.08 Z M 90.5 33.35 L 91.15 32.28 L 91.86 31.13 L 93.15 30.49 L 92.94 31.42 L 94.59 32.14 L 95.23 33.42 L 94.44 34 L 93.01 33.86 Z M 40.98 31.06 L 43.06 31.35 L 44.64 32.78 L 43.42 32.49 Z M 72.16 51.77 L 73.37 51.49 L 74.59 50.91 L 75.95 51.13 L 77.6 51.92 L 78.82 52.42 L 79.82 52.99 L 78.82 53.21 L 77.32 53.21 L 77.6 52.63 L 76.74 52.06 L 75.31 51.7 L 74.09 51.41 L 73.16 51.84 Z M 79.68 54.28 L 80.83 53.21 L 82.19 53.21 L 83.41 53.78 L 83.98 54.14 L 82.76 54.42 L 81.83 54.85 L 80.4 54.35 Z M 77.6 61.38 L 78.18 61.16 L 78.89 59.94 L 79.61 59.44 L 81.19 59.01 L 81.9 58.65 L 81.76 59.73 L 82.83 59.23 L 84.05 59.94 L 86.42 60.23 L 88.21 59.87 L 89.28 60.66 L 90.36 61.52 L 91.79 63.17 L 93.58 63.17 L 95.38 63.88 L 96.31 64.6 L 97.17 66.18 L 96.95 67.47 L 98.24 68.33 L 100.75 68.47 L 102.9 69.47 L 104.69 69.62 L 106.48 70.91 L 107.77 71.41 L 108.06 72.84 L 107.77 73.92 L 106.48 75.35 L 105.41 76.78 L 105.05 78.58 L 104.91 80.22 L 104.12 82.02 L 103.62 83.23 L 102.9 83.95 L 101.11 84.17 L 99.68 84.67 L 98.24 86.1 L 98.17 87.89 L 97.17 89.33 L 96.31 90.26 L 94.8 91.69 L 93.66 92.48 L 92.15 92.55 L 91.94 93.48 L 91.65 94.84 L 90 95.27 L 88.42 95.27 L 88.28 96.49 L 86.42 96.85 L 86.92 97.93 L 86.2 99.57 L 84.63 100.65 L 85.7 101.87 L 84.05 103.44 L 83.55 104.45 L 83.91 105.09 L 83.19 104.95 L 82.48 106.02 L 81.4 106.17 L 79.61 104.88 L 78.89 102.58 L 79.82 100.43 L 80.33 98.28 L 80.18 97.21 L 80.33 95.78 L 80.4 94.13 L 81.26 92.55 L 81.69 90.76 L 81.83 88.61 L 82.26 86.82 L 82.55 84.31 L 82.69 82.16 L 82.62 80.51 L 81.76 79.86 L 79.61 78.79 L 78.32 77.36 L 77.24 75.71 L 76.17 73.56 L 74.95 71.77 L 74.81 70.69 L 75.67 69.62 L 75.02 68.54 L 7
2535.67 67.11 L 76.24 66.18 L 76.53 65.32 L 77.53 64.46 L 77.6 63.17 L 77.24 62.31 Z M 126.55 41.02 L 126.69 39.88 L 126.19 39.52 L 126.62 38.08 L 126.69 37.01 L 126.41 36.51 L 127.63 36.08 L 130.13 36.36 L 131.71 36.36 L 132.07 35.58 L 132.14 34.5 L 131.42 33.71 L 129.78 33.21 L 129.63 32.64 L 130.85 32.49 L 131.85 32.64 L 132.07 31.92 L 133.14 31.99 L 134.07 31.49 L 134.15 30.99 L 135.29 30.7 L 136.08 30.27 L 136.44 29.48 L 137.66 29.13 L 139.09 28.98 L 139.31 28.41 L 138.95 27.69 L 138.81 26.76 L 140.38 26.19 L 140.53 27.19 L 140.81 27.41 L 140.02 28.05 L 140.88 28.77 L 141.96 28.48 L 143.18 28.84 L 144.82 28.41 L 146.26 28.19 L 147.19 28.48 L 148.19 27.91 L 148.12 26.76 L 148.7 26.19 L 149.84 26.47 L 150.49 25.69 L 149.84 25.04 L 151.63 24.75 L 153.43 24.68 L 154.5 24.54 L 153.43 24.11 L 151.99 24.18 L 149.48 24.54 L 148.98 24.11 L 148.27 23.54 L 148.41 22.46 L 149.13 21.74 L 150.56 21.03 L 151.13 20.6 L 150.34 20.31 L 148.91 20.45 L 148.19 21.17 L 147.19 21.89 L 145.76 22.75 L 145.33 23.75 L 146.26 24.32 L 146.47 24.9 L 145.54 25.33 L 144.9 26.26 L 144.68 26.9 L 143.39 27.26 L 142.32 27.76 L 141.96 27.12 L 141.46 26.19 L 141.03 25.33 L 140.53 24.83 L 139.81 25.18 L 138.73 25.83 L 137.66 25.76 L 137.01 25.26 L 136.73 24.11 L 136.58 23.18 L 137.16 22.46 L 138.73 21.96 L 140.53 21.24 L 141.82 20.31 L 142.68 19.09 L 144.11 18.38 L 145.9 17.59 L 147.69 17.23 L 149.84 16.73 L 151.63 16.58 L 153.43 16.65 L 155.22 17.09 L 156.65 17.66 L 158.8 17.95 L 161.67 18.88 L 162.74 19.81 L 164.18 20.02 L 164.68 18.73 L 165.97 18.59 L 167.4 18.88 L 170.98 18.3 L 172.42 18.52 L 175.28 18.16 L 176.72 17.44 L 179.23 17.87 L 181.02 18.38 L 182.45 18.16 L 182.09 16.94 L 181.02 16.3 L 182.09 15.29 L 183.88 15.08 L 185.32 15.29 L 184.96 16.58 L 185.68 18.38 L 186.75 18.02 L 186.03 16.73 L 187.47 16.01 L 188.9 15.65 L 191.05 16.01 L 192.48 16.94 L 193.56 15.87 L 191.05 14.79 L 194.63 14.43 L 196.07 13.72 L 199.65 13.07 L 203.23 12.64 L 207.53 12.28 L 210.4 12.71 L 213.27 13.29 L 214.34 14.65 L 217.57 14.79 L 221.15 15.15 L 224.02 14.79 L 225.45 15.51 L 227.6 16.23 L 232.62 16.23 L 234.77 15.36 L 237.63 15.65 L 240.5 16.15 L 242.65 16.65 L 245.52 16.58 L 247.67 17.16 L 249.1 17.59 L 252.68 17.59 L 254.83 17.23 L 258.42 17.37 L 260.57 17.73 L 262 18.09 L 262 20.88 L 260.93 21.17 L 260.21 22.6 L 258.06 23.18 L 255.19 24.47 L 251.97 24.25 L 250.53 24.61 L 249.96 25.9 L 249.1 26.04 L 249.96 27.19 L 249.1 28.19 L 247.67 29.34 L 246.59 29.84 L 245.3 30.92 L 244.8 29.48 L 244.66 27.69 L 245.37 26.04 L 246.23 25.9 L 248.03 24.83 L 249.1 23.89 L 250.18 23.03 L 247.67 23.32 L 246.23 23.18 L 244.08 24.83 L 241.58 25.04 L 239.07 24.97 L 236.2 24.9 L 234.05 25.54 L 232.26 26.98 L 231.18 28.62 L 232.62 28.7 L 233.69 29.48 L 234.34 30.06 L 233.69 31.49 L 233.55 32.71 L 232.26 33.93 L 231.18 35.07 L 229.89 36.29 L 228.32 36.79 L 227.24 36.79 L 226.67 37.15 L 225.95 38.08 L 226.02 38.66 L 224.73 39.52 L 225.74 41.09 L 225.74 42.03 L 225.09 42.38 L 224.02 42.67 L 223.52 42.53 L 223.66 41.31 L 223.52 40.38 L 222.58 40.38 L 222.44 39.16 L 220.79 39.02 L 219.93 39.45 L 220.08 38.23 L 218.64 38.94 L 217.57 39.45 L 217.42 40.02 L 218.14 40.59 L 218.64 40.88 L 219.72 40.45 L 220.79 40.81 L 219.57 41.45 L 218.57 42.38 L 219.22 43.1 L 219.72 44.18 L 220.36 44.75 L 219.93 45.68 L 220.43 46.11 L 220.08 47.04 L 219.29 48.05 L 218.64 49.05 L 217.93 49.84 L 216.85 50.55 L 215.78 51.13 L 214.84 51.49 L 214.34 51.56 L 213.12 51.99 L 212.05 52.49 L 211.62 52.06 L 210.62 51.99 L 209.47 52.78 L 208.82 53.85 L 209.33 54.71 L 210.26 55.86 L 210.97 56.65 L 211.33 58.01 L 211.12 59.23 L 210.04 59.94 L 209.33 60.66 L 208.11 61.3 L 208.11 60.09 L 207.18 59.87 L 206.32 58.72 L 205.31 58.36 L 204.67 57.86 L 204.09 58.87 L 204.09 60.09 L 204.6 60.87 L 204.95 62.24 L 205.6 62.52 L 206.46 63.17 L 207.1 64.03 L 207.1 65.03 L 207.68 66.46 L 207.18 66.54 L 205.6 65.46 L 204.95 64.24 L 204.88 62.81 L 203.74 61.73 L 203.45 60.66 L 203.74 59.01 L 203.38 57.79 L 203.02 55.64 L 202.66 55.36 L 201.8 55.71 L 200.65 56 L 200.51 54.35 L 199.87 53.13 L 199.15 52.63 L 198.93 51.84 L 198.36 51.34 L 197.64 51.77 L 196.78 51.84 L 195.35 52.06 L 194.99 52.99 L 193.92 53.56 L 192.77 54.71 L 191.91 55.57 L 191.05 56.22 L 190.48 56.57 L 190.41 57.94 L 190.19 59.23 L 190.19 60.09 L 189.55 60.8 L 188.97 61.38 L 188.4 61.73 L 187.83 61.
25302 L 187.32 59.44 L 186.68 58.29 L 186.25 57.08 L 185.6 55.64 L 185.17 53.85 L 185.17 52.78 L 185.03 52.2 L 184.74 52.35 L 183.74 52.63 L 182.59 51.49 L 183.31 51.27 L 182.38 50.77 L 181.38 50.34 L 180.87 49.55 L 179.23 49.34 L 177.15 49.41 L 174.93 49.12 L 174.07 48.98 L 173.42 48.05 L 172.27 48.4 L 171.34 48.19 L 169.91 47.47 L 168.98 46.33 L 167.9 45.97 L 167.62 46.54 L 167.76 47.26 L 168.62 48.26 L 168.98 48.98 L 169.26 49.69 L 169.77 49.91 L 169.98 49.12 L 170.48 50.12 L 171.77 50.12 L 172.85 49.26 L 173.35 48.62 L 173.42 49.62 L 173.99 50.34 L 175.14 50.7 L 175.86 51.34 L 174.93 52.85 L 174.35 53.85 L 173.35 54.64 L 172.42 55.28 L 170.41 56.14 L 168.26 57 L 166.54 57.86 L 165.25 58.29 L 164.18 58.36 L 163.67 56.86 L 163.6 55.71 L 162.67 54.21 L 161.81 52.92 L 161.02 51.92 L 160.52 50.41 L 159.66 49.55 L 158.73 48.05 L 158.08 47.33 L 157.8 47.33 L 157.58 47.54 L 156.79 47.04 L 156.36 46.04 L 156.15 45.11 L 157.51 45.04 L 158.01 44.18 L 158.44 43.17 L 158.73 42.03 L 158.94 41.24 L 157.94 41.09 L 156.51 41.6 L 154.86 41.38 L 153.78 41.24 L 152.64 40.88 L 151.92 40.02 L 152.14 39.23 L 151.78 38.73 L 152.57 38.51 L 153.71 38.16 L 153.85 37.94 L 155.43 38.01 L 157.01 37.37 L 158.23 37.58 L 160.52 38.16 L 162.03 38.08 L 162.81 37.65 L 162.74 36.94 L 161.67 36.29 L 160.23 35.5 L 159.88 35 L 159.16 35 L 158.08 35.22 L 157.01 35.58 L 156.29 34.93 L 157.08 34.43 L 155.57 34.07 L 154.64 34.64 L 154.21 35.22 L 153.57 35.72 L 153.43 36.36 L 153 36.94 L 153.07 37.44 L 153.71 37.87 L 153.07 38.08 L 151.92 38.37 L 151.06 38.16 L 150.06 38.3 L 149.7 38.66 L 149.2 38.51 L 149.41 39.23 L 149.84 39.88 L 150.2 40.45 L 149.56 40.66 L 149.34 41.31 L 148.84 40.95 L 148.55 41.02 L 148.12 40.38 L 148.27 39.95 L 147.83 39.37 L 147.26 39.02 L 146.9 38.51 L 146.9 37.51 L 146.26 37.01 L 145.4 36.51 L 144.47 36.29 L 143.89 35.79 L 143.39 35.07 L 142.82 34.79 L 141.89 34.93 L 141.82 35.5 L 141.89 35.86 L 142.75 36.29 L 143.03 37.01 L 143.82 37.44 L 144.47 37.8 L 145.26 38.08 L 146.26 38.66 L 146.19 38.94 L 145.33 38.51 L 144.9 39.02 L 145.26 39.59 L 144.54 40.31 L 144.25 40.09 L 144.4 39.3 L 144.04 38.8 L 143.68 38.59 L 143.1 38.23 L 142.32 37.87 L 141.74 37.51 L 140.95 37.08 L 140.53 36.65 L 140.31 36.01 L 139.31 35.65 L 138.38 36.08 L 137.66 36.58 L 136.58 36.36 L 136.01 36.29 L 135.29 36.65 L 135.22 37.44 L 134.43 37.94 L 133.65 38.08 L 133.07 38.73 L 132.79 39.23 L 133.07 39.66 L 132.57 40.09 L 132.43 40.52 L 131.78 40.88 L 131.35 41.09 L 129.85 41.17 L 129.2 41.6 L 128.56 41.31 L 128.41 40.88 L 127.7 40.81 L 127.27 40.95 Z M 141.89 40.31 L 144.18 40.02 L 143.82 41.17 Z M 138.88 39.52 L 139.88 39.37 L 140.02 38.08 L 139.81 36.65 L 139.16 37.15 L 139.02 38.37 Z M 120.75 52.42 L 121.39 50.41 L 122.39 49.26 L 123.54 47.69 L 124.83 47.33 L 125.98 46.11 L 126.12 44.82 L 126.84 43.67 L 128.06 43.03 L 128.77 41.81 L 129.2 41.74 L 129.85 42.24 L 131.42 42.31 L 132.28 41.88 L 133.86 41.31 L 135.29 41.09 L 136.8 41.17 L 138.38 40.95 L 139.95 40.74 L 140.81 41.02 L 140.95 41.38 L 140.53 41.6 L 140.95 42.24 L 140.24 42.89 L 140.81 43.24 L 141.24 43.75 L 142.17 43.96 L 143.97 44.32 L 144.32 44.96 L 146.55 45.75 L 147.33 45.25 L 147.41 44.39 L 148.48 43.89 L 149.63 44.1 L 150.85 44.61 L 151.56 44.82 L 153.71 45.32 L 154.57 44.89 L 155.86 44.89 L 156.15 45.11 L 156.36 46.04 L 156.22 46.4 L 156.79 47.26 L 157.3 48.05 L 157.73 48.91 L 158.51 50.27 L 158.44 50.91 L 159.3 51.7 L 159.8 53.35 L 160.66 54.57 L 161.09 55.93 L 161.52 56.43 L 162.53 57.15 L 163.32 58.08 L 164.03 58.51 L 163.89 59.15 L 164.96 60.01 L 166.4 59.73 L 168.05 59.37 L 169.62 58.94 L 169.69 59.94 L 169.41 60.87 L 168.69 61.95 L 167.83 63.6 L 167.11 64.46 L 165.97 65.89 L 163.96 67.68 L 162.96 68.76 L 161.88 69.33 L 161.24 70.76 L 160.81 72.05 L 161.24 73.2 L 161.45 74.71 L 162.03 75.49 L 162.1 77.64 L 161.81 78.65 L 159.8 80.08 L 159.02 80.94 L 157.94 81.66 L 158.23 82.88 L 158.44 84.24 L 156.72 85.6 L 156.36 86.24 L 156.51 87.68 L 155.43 88.54 L 154.57 89.76 L 153.21 90.97 L 151.92 91.69 L 150.7 91.83 L 149.2 91.76 L 147.41 92.41 L 146.47 92.12 L 146.19 91.83 L 146.12 90.76 L 145.83 89.9 L 145.11 88.32 L 144.18 86.89 L 143.68 85.53 L 143.39 83.88 L 142.6 82.37 L 141.46 80.22 L 141.39 79.15 L 141.82 77.43 L 142.75 76.21 L 142.89 75.28 L 142.25 73.85 L 141.82 71.84 L 141.74 71.62 L 140.95 70.26 L 139.88 69.19 L 139.45 67.97 L 139.67 66.61 L 139.95 65.25 L 139.38 64.53 L 139.09 64.03 L 138.09 64.24 L 137.23 64.39 L 136.15 62.88 L 134.94 62.95 L 133.79 63.17 L 132.64 63.67 L 130.92 63.88 L 129.7 63.74 L 127.63 64.31 L 126.34 63.53 L 124.83 62.59 L 124.04 61.81 L 123.54 61.09 L 122.47 59.8 L 121.96 59.23 L 121.03 58.58 L 120.82 57.43 L 120.46 56.93 L 121.03 56.29 L 121.32 55.14 L 121.46 54.21 L 121.25 53.42 Z M 168.33 76.07 L 169.12 78.5 L 168.76 78.5 L 168.48 80.01 L 167.69 81.8 L 166.76 85.24 L 165.39 85.81 L 164.32 84.81 L 164.03 83.31 L 164.82 81.87 L 164.53 79.94 L 164.82 79.08 L 166.18 78.65 L 167.26 77.21 Z M 128.92 31.56 L 129.99 31.35 L 131.28 31.2 L 133.65 3
2530.99 L 134 30.63 L 133.43 30.34 L 134.22 29.77 L 133.22 29.41 L 133.07 29.05 L 132.57 28.41 L 131.85 27.62 L 131.14 27.33 L 131.71 26.26 L 130.64 26.12 L 130.85 25.47 L 129.42 25.47 L 128.92 26.4 L 128.99 27.12 L 128.56 27.05 L 129.13 27.91 L 129.56 28.19 L 130.56 28.12 L 130.71 28.84 L 130.85 29.27 L 129.7 29.34 L 130.06 29.99 L 129.35 30.34 L 129.99 30.56 L 130.85 30.63 L 130.56 30.85 L 129.78 30.92 Z M 128.56 30.06 L 128.7 29.27 L 128.56 28.77 L 129.06 28.48 L 128.56 27.91 L 127.63 27.84 L 126.98 28.27 L 126.91 28.62 L 125.83 28.62 L 125.98 29.27 L 126.41 29.56 L 125.91 30.13 L 125.69 30.49 L 126.91 30.49 L 128.06 30.13 Z M 117.02 20.88 L 115.8 20.53 L 117.23 19.88 L 120.1 20.02 L 121.89 19.81 L 122.61 20.31 L 123.25 20.81 L 122.25 21.39 L 119.6 22.03 L 117.95 21.74 L 116.73 21.67 Z M 170.27 16.23 L 172.78 16.87 L 174.21 16.8 L 173.13 15.51 L 174.57 14.08 L 177.43 13.14 L 181.73 12.43 L 178.87 12.64 L 174.57 13.14 L 172.42 14.08 L 170.98 15.15 Z M 225.95 43.67 L 226.31 45.04 L 227.17 44.96 L 227.6 43.67 L 227.24 43.1 L 228.32 42.89 L 229.54 42.67 L 229.89 43.24 L 230.47 43.1 L 231.04 42.89 L 231.54 42.6 L 232.62 42.46 L 233.26 42.31 L 233.98 41.88 L 233.76 41.09 L 234.05 40.02 L 234.62 39.3 L 234.7 38.59 L 234.34 37.8 L 233.55 37.94 L 233.33 38.59 L 233.19 39.23 L 233.05 40.02 L 232.26 40.66 L 231.4 41.09 L 231.04 40.74 L 230.54 41.52 L 230.11 41.95 L 228.39 41.95 L 227.6 42.24 L 226.81 42.89 Z M 233.33 37.8 L 234.19 37.51 L 235.7 37.37 L 237.28 36.51 L 237.13 35.72 L 235.48 35.58 L 234.55 34.93 L 234.34 36.22 L 233.55 36.44 L 233.26 36.94 Z M 234.84 34.5 L 235.77 33.93 L 235.63 32.21 L 236.49 32.35 L 235.84 30.77 L 235.63 29.27 L 235.2 28.55 L 234.91 29.13 L 234.7 30.34 L 234.84 32.35 L 234.7 33.42 Z M 219.07 50.91 L 219.72 51.77 L 220.36 49.84 L 220.08 49.34 L 219.5 49.84 Z M 210.83 53.71 L 212.19 53.06 L 212.55 53.42 L 211.83 54.35 L 210.9 54.21 Z M 190.19 62.95 L 190.26 61.45 L 190.41 60.44 L 191.05 61.23 L 191.7 62.24 L 191.27 63.02 L 190.55 63.24 Z M 201.23 63.45 L 202.88 63.74 L 203.88 64.89 L 204.95 65.89 L 205.81 66.1 L 207.25 67.11 L 207.96 68.83 L 208.97 69.76 L 208.82 71.62 L 207.96 71.7 L 206.32 70.33 L 205.31 69.04 L 204.38 67.47 L 203.74 66.25 L 202.66 65.1 L 201.3 63.96 Z M 208.39 72.34 L 209.25 71.77 L 210.62 71.98 L 212.19 72.41 L 213.7 72.41 L 215.06 72.99 L 214.99 73.7 L 213.48 73.41 L 211.98 73.27 L 210.4 73.06 L 209.25 72.77 Z M 211.12 66.32 L 211.55 66.03 L 212.69 65.68 L 213.98 65.17 L 214.84 64.17 L 215.7 63.6 L 216.64 62.52 L 217.35 63.17 L 218.43 63.67 L 217.85 64.24 L 217.49 64.6 L 217.49 66.18 L 218.28 66.75 L 217.28 67.47 L 217.21 68.18 L 216.49 69.19 L 216.21 70.33 L 215.35 70.41 L 214.49 69.9 L 213.05 69.69 L 211.98 69.55 L 211.91 68.69 L 211.19 67.83 Z M 218.57 71.41 L 219.29 71.41 L 219.29 69.47 L 219.93 70.91 L 220.94 70.69 L 219.86 68.9 L 221.37 68.04 L 219.57 68.26 L 219.07 67.04 L 220.94 66.82 L 222.66 66.32 L 221.87 67.04 L 219.65 66.54 L 218.86 67.47 L 218.5 68.76 L 218.14 69.47 Z M 219.43 54.21 L 220.36 54.35 L 220.65 55.21 L 220.08 56.07 L 220.36 56.79 L 221.15 57.58 L 221.94 58.15 L 221.8 58.72 L 220.86 57.94 L 220.22 57.51 L 219.43 57.22 L 219 56.29 L 218.86 55.71 L 219.29 55.43 Z M 220.43 62.45 L 221.51 61.88 L 222.94 60.44 L 223.59 61.52 L 223.44 62.95 L 222.87 63.45 L 222.01 63.02 L 221.44 62.09 Z M 222.08 58.44 L 223.01 59.44 L 222.58 60.3 L 222.08 59.58 Z M 226.88 68.4 L 227.89 67.75 L 229.11 68.11 L 229.25 69.47 L 230.11 69.9 L 231.47 68.54 L 232.76 68.97 L 234.05 69.33 L 235.84 69.9 L 236.99 70.62 L 237.56 71.41 L 238.78 71.84 L 238.49 72.77 L 239.14 73.27 L 240 73.99 L 241.07 74.85 L 240.57 75.14 L 238.99 74.71 L 237.71 73.27 L 236.7 72.91 L 235.7 73.49 L 235.77 73.92 L 234.84 74.06 L 234.05 73.99 L 232.76 73.27 L 231.83 73.49 L 232.26 72.48 L 231.83 71.34 L 229.89 70.69 L 228.82 70.05 L 228.17 70.41 L 227.53 69.55 L 228.32 69.19 L 227.46 68.61 Z M 214.27 83.16 L 214.63 86.1 L 214.84 86.32 L 215.42 88.61 L 215.92 90.11 L 215.49 91.55 L 216.64 92.55 L 217.93 92.48 L 219 91.76 L 221.58 91.76 L 222.66 90.9 L 224.09 90.62 L 225.45 90.19 L 227.1 90.04 L 228.03 90.4 L 229.25 90.9 L 229.89 92.19 L 230.4 92.48 L 231.54 91.76 L 231.83 92.48 L 231.18 92.98 L 232.62 93.05 L 233.05 93.41 L 233.76 94.7 L 235.91 95.27 L 236.85 94.63 L 237.85 95.42 L 238.64 94.84 L 240.43 94.34 L 240.57 93.05 L 241.29 91.83 L 242.29 90.62 L 242.72 89.11 L 243.08 87.68 L 242.72 86.24 L 242.58 85.6 L 241.15 83.81 L 240.14 83.45 L 239.5 82.09 L 237.92 81.08 L 237.63 80.08 L 237.2 79.15 L 237.13 78.15 L 236.49 77.64 L 235.84 76.64 L 235.2 75.14 L 234.77 76 L 234.48 77.14 L 234.41 79.08 L 233.76 80.01 L 232.83 79.94 L 231.76 79.01 L 230.4 78.36 L 230.11 78 L 230.97 76.28 L 230.4 76 L 229.75 76.21 L 228.53 75.71 L 227.89 75.64 L 227.1 76.14 L 226.31 76.71 L 225.74 78.15 L 224.59 77.72 L 223.37 77.64 L 222.66 78.29 L 222.15 79.15 L 221.58 79.86 L 220.65 80.01 L 220.15 80.87 L 219.65 81.59 L 218.36 81.8 L 217.14 82.3 L 216.28 82.45 L 215.13 83.09 Z M 236.63 96.64 L 239.28 96.78 L 239.21 98 L 238.28 98.71 L 237.13 97.93 Z M 256.77 92.12 L 257.99 93.05 L 258.63 94.13 L 259.13 94.41 L 260.5 94.63 L 260.93 94.49 L 259.99 95.63 L 259.13 97.07 L 258.56 97.28 L 258.13 97.07 L 258.56 96.35 L 257.84 95.56 L 258.27 94.7 L 258.06 93.84 L 257.06 92.77 Z M 256.77 96.49 L 257.92 97.07 L 257.56 97.78 L 256.77 98.57 L 255.69 99.29 L 255.26 100.36 L 254.33 100.86 L 252.33 100.43 L 252.61 99.86 L 253.69 99 L 255.26 98.14 L 255.91 97.35 Z" fill="var(--xv-ink)" fill-opacity="0.13" stroke="var(--xv-ink)" stroke-opacity="0.16" stroke-width="0.5" stroke-linejoin="round"></path><path d="M 166.68 35.58 L 168.48 34.14 L 169.91 33.78 L 170.98 33.93 L 170.98 35.07 L 169.77 35.58 L 169.05 35.72 L 169.77 36.51 L 170.77 37.51 L 170.84 38.59 L 171.63 39.37 L 171.34 40.74 L 169.55 41.17 L 168.12 40.52 L 167.97 39.66 L 168.4 38.66 L 167.83 37.51 L 167.04 36.65 Z" fill="var(--xv-surface)"></path><path d="M 95.83 13 V 107.6" fill="none" stroke="var(--xv-rose)" stroke-width="1.4" stroke-opacity="1" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l0 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 55.01 13 V 107.6" fill="none" stroke="var(--xv-cool)" stroke-width="1" stroke-opacity="0.6" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l1 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 184.01 13 V 107.6" fill="none" stroke="var(--xv-cool)" stroke-width="1.4" stroke-opacity="1" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l2 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 224.83 13 V 107.6" fill="none" stroke="var(--xv-rose)" stroke-width="1" stroke-opacity="0.6" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l3 10s ease-in-out infinite both;stroke-dashoffset:0"></path>
253<path d="M 90.9 107.6 L 93.3 106.17 L 95.4 104.73 L 97.26 103.3 L 98.92 101.87 L 100.43 100.43 L 101.8 99 L 103.07 97.57 L 104.25 96.13 L 105.35 94.7 L 106.38 93.27 L 107.35 91.83 L 108.27 90.4 L 109.14 88.97 L 109.98 87.53 L 110.78 86.1 L 111.55 84.67 L 112.29 83.23 L 113.02 81.8 L 113.72 80.37 L 114.4 78.93 L 115.07 77.5 L 115.73 76.07 L 116.38 74.63 L 117.01 73.2 L 117.64 71.77 L 118.27 70.33 L 118.89 68.9 L 119.51 67.47 L 120.13 66.03 L 120.76 64.6 L 121.38 63.17 L 122.01 61.73 L 122.65 60.3 L 123.3 58.87 L 123.95 57.43 L 124.62 56 L 125.31 54.57 L 126.01 53.13 L 126.73 51.7 L 127.48 50.27 L 128.25 48.83 L 129.05 47.4 L 129.89 45.97 L 130.76 44.53 L 131.68 43.1 L 132.65 41.67 L 133.68 40.23 L 134.78 38.8 L 135.95 37.37 L 137.22 35.93 L 138.6 34.5 L 140.11 33.07 L 141.77 31.63 L 143.63 30.2 L 145.72 28.77 L 148.13 27.33 L 150.94 25.9 L 154.32 24.47 L 158.57 23.03 L 164.35 21.6 L 174.32 20.17 L 183.89 19.74" fill="none" stroke="var(--xv-cool)" stroke-width="1.4" stroke-opacity="1" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l4 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 145.58 107.6 L 146.68 106.17 L 147.67 104.73 L 148.57 103.3 L 149.39 101.87 L 150.15 100.43 L 150.85 99 L 151.5 97.57 L 152.11 96.13 L 152.68 94.7 L 153.22 93.27 L 153.74 91.83 L 154.23 90.4 L 154.7 88.97 L 155.14 87.53 L 155.57 86.1 L 155.99 84.67 L 156.39 83.23 L 156.79 81.8 L 157.17 80.37 L 157.54 78.93 L 157.91 77.5 L 158.26 76.07 L 158.62 74.63 L 158.97 73.2 L 159.31 71.77 L 159.65 70.33 L 159.99 68.9 L 160.33 67.47 L 160.67 66.03 L 161.02 64.6 L 161.36 63.17 L 161.7 61.73 L 162.05 60.3 L 162.4 58.87 L 162.76 57.43 L 163.13 56 L 163.5 54.57 L 163.88 53.13 L 164.27 51.7 L 164.68 50.27 L 165.09 48.83 L 165.53 47.4 L 165.97 45.97 L 166.44 44.53 L 166.93 43.1 L 167.44 41.67 L 167.99 40.23 L 168.56 38.8 L 169.17 37.37 L 169.82 35.93 L 170.52 34.5 L 171.28 33.07 L 172.1 31.63 L 173 30.2 L 173.99 28.77 L 175.09 27.33 L 176.32 25.9 L 177.71 24.47 L 179.32 23.03 L 181.18 21.6 L 183.4 20.17 L 186.09 18.73 L 189.47 17.3 L 193.92 15.87 L 200.32 14.43 L 211.93 13" fill="none" stroke="var(--xv-rose)" stroke-width="1" stroke-opacity="0.6" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l5 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 46.09 107.6 L 44.99 106.17 L 44 104.73 L 43.1 103.3 L 42.28 101.87 L 41.52 100.43 L 40.82 99 L 40.17 97.57 L 39.56 96.13 L 38.99 94.7 L 38.44 93.27 L 37.93 91.83 L 37.44 90.4 L 36.97 88.97 L 36.53 87.53 L 36.09 86.1 L 35.68 84.67 L 35.27 83.23 L 34.88 81.8 L 34.5 80.37 L 34.13 78.93 L 33.76 77.5 L 33.4 76.07 L 33.05 74.63 L 32.7 73.2 L 32.36 71.77 L 32.02 70.33 L 31.67 68.9 L 31.33 67.47 L 30.99 66.03 L 30.65 64.6 L 30.31 63.17 L 29.97 61.73 L 29.62 60.3 L 29.26 58.87 L 28.91 57.43 L 28.54 56 L 28.17 54.57 L 27.79 53.13 L 27.39 51.7 L 26.99 50.27 L 26.57 48.83 L 26.14 47.4 L 25.7 45.97 L 25.23 44.53 L 24.74 43.1 L 24.22 41.67 L 23.68 40.23 L 23.11 38.8 L 22.5 37.37 L 21.85 35.93 L 21.15 34.5 L 20.39 33.07 L 19.57 31.63 L 18.67 30.2 L 17.68 28.77 L 16.58 27.33 L 15.35 25.9 L 13.96 24.47 L 12.35 23.03 L 10.49 21.6 L 8.27 20.17 L 5.58 18.73 M 260.2 17.3 L 255.74 15.87 L 249.35 14.43 L 237.73 13" fill="none" stroke="var(--xv-rose)" stroke-width="1.4" stroke-opacity="1" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l6 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 19.13 107.6 L 16.72 106.17 L 14.63 104.73 L 12.77 103.3 L 11.11 101.87 L 9.6 100.43 L 8.22 99 L 6.95 97.57 L 5.78 96.13 L 4.68 94.7 M 261.65 93.27 L 260.68 91.83 L 259.76 90.4 L 258.89 88.97 L 258.05 87.53 L 257.25 86.1 L 256.48 84.67 L 255.73 83.23 L 255.01 81.8 L 254.31 80.37 L 253.62 78.93 L 252.95 77.5 L 252.3 76.07 L 251.65 74.63 L 251.01 73.2 L 250.38 71.77 L 249.76 70.33 L 249.13 68.9 L 248.51 67.47 L 247.89 66.03 L 247.27 64.6 L 246.64 63.17 L 246.01 61.73 L 245.38 60.3 L 244.73 58.87 L 244.07 57.43 L 243.4 56 L 242.72 54.57 L 242.02 53.13 L 241.29 51.7 L 240.55 50.27 L 239.78 48.83 L 238.98 47.4 L 238.14 45.97 L 237.27 44.53 L 236.35 43.1 L 235.38 41.67 L 234.35 40.23 L 233.25 38.8 L 232.07 37.37 L 230.8 35.93 L 229.43 34.5 L 227.92 33.07 L 226.26 31.63 L 224.4 30.2 L 222.3 28.77 L 219.9 27.33 L 217.09 25.9 L 213.7 24.47 L 209.45 23.03 L 203.67 21.6 L 193.71 20.17 L 184.14 19.74" fill="none" stroke="var(--xv-cool)" stroke-width="1" stroke-opacity="0.6" stroke-linecap="round" stroke-linejoin="round" pathLength="100" class="ac-line" style="animation:xv-ac-l7 10s ease-in-out infinite both;stroke-dashoffset:0"></path></g><text x="95.83" y="7" font-size="9.2" font-weight="700" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" style="animation:xv-ac-t0 10s ease-out infinite both"><tspan class="xv-glyph" font-size="10.5">♀︎</tspan>MC</text><text x="55.01" y="7" font-size="9.2" font-weight="700" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" style="animation:xv-ac-t1 10s ease-out infinite both"><tspan class="xv-glyph" font-size="10.5">♃︎</tspan>IC</text><text x="184.01" y="7" font-size="9.2" font-weight="700" fill="var(--xv-cool)" text-anchor="middle" dominant-baseline="central" style="animation:xv-ac-t2 10s ease-out infinite both"><tspan class="xv-glyph" font-size="10.5">♃︎</tspan>MC</text><text x="224.83" y="7" font-size="9.2" font-weight="700" fill="var(--xv-rose)" text-anchor="middle" dominant-baseline="central" style="animation:xv-ac-t3 10s ease-out infinite both"><tspan class="xv-glyph" font-size="10.5">♀︎</tspan>IC</text><circle cx="139.12" cy="33.52" r="3.2" fill="none" stroke="var(--xv-accent)" stroke-width="1.2" class="ac-pop" style="animation:xv-ac-pulse 10s ease-out infinite both;opacity:0"></circle><g class="ac-pop" style="animation:xv-ac-pin0 10s ease-out infinite both"><circle cx="139.12" cy="33.52" r="3.4" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="1.2"></circle></g><g class="ac-pop" style="animation:xv-ac-pin1 10s ease-out infinite both"><circle cx="224" cy="40.54" r="2.6" fill="var(--xv-ink)" stroke="var(--xv-surface)" stroke-width="1.2"></circle></g><g class="ac-pop" style="animation:xv-ac-pin2 10s ease-out infinite both"><circle cx="159.39" cy="68.39" r="2.6" fill="var(--xv-ink)" stroke="var(--xv-surface)" stroke-width="1.2"></circle></g></g><g><g><line x1="269" y1="60" x2="279" y2="60" stroke="var(--xv-rose)" stroke-width="1.6" stroke-opacity="1" stroke-linecap="round"></line><text x="283" y="60" font-size="9.2" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central"><tspan class="xv-glyph" font-size="11">♀︎</tspan> Venus</text></g><g><line x1="269" y1="74" x2="279" y2="74" stroke="var(--xv-cool)" stroke-width="1.6" stroke-opacity="1" stroke-linecap="round"></line><text x="283" y="74" font-size="9.2" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central"><tspan class="xv-glyph" font-size="11">♃︎</tspan> Jupiter</text></g><g>
253<line x1="269" y1="90" x2="279" y2="90" stroke="var(--xv-ink-soft)" stroke-width="1.6" stroke-opacity="1" stroke-linecap="round"></line><text x="283" y="90" font-size="9.2" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">MC ASC</text></g><g><line x1="269" y1="103" x2="279" y2="103" stroke="var(--xv-ink-soft)" stroke-width="1" stroke-opacity="0.6" stroke-linecap="round"></line><text x="283" y="103" font-size="9.2" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">IC DSC</text></g></g><g style="animation:xv-ac-card 10s ease-out infinite both"><rect x="4" y="115" width="156" height="56" rx="8" fill="var(--xv-surface)" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="1"></rect><text x="13" y="127" font-size="11.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Zurich<tspan font-size="9.4" font-weight="600" fill="var(--xv-ink-soft)">, CH</tspan></text><text x="13" y="141" font-size="9.4" font-weight="600" fill="var(--xv-cool)" dominant-baseline="central"><tspan class="xv-glyph" font-size="11">♃︎</tspan> Jupiter ASC <tspan fill="var(--xv-ink-soft)">· 42 km</tspan></text><text x="13" y="155" font-size="9.4" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Growth &amp; luck</text><text x="151" y="133" font-size="21" font-weight="800" fill="var(--xv-accent)" text-anchor="end" dominant-baseline="central" class="xv-mono">98</text><text x="151" y="150" font-size="9.2" fill="var(--xv-ink-soft)" text-anchor="end" dominant-baseline="central">/100</text><rect x="13" y="163" width="138" height="3" rx="1.5" fill="var(--xv-line)"></rect><rect x="13" y="163" width="135.24" height="3" rx="1.5" fill="var(--xv-accent)" class="ac-bar" style="animation:xv-ac-bar 10s ease-out infinite both"></rect></g><g><text x="170" y="121" font-size="9.2" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">BEST CITY PER LINE</text><g style="animation:xv-ac-r0 10s ease-out infinite both"><rect x="166" y="128.5" width="164" height="15" rx="7.5" fill="var(--xv-accent-soft)"></rect><text x="172" y="136" font-size="9.2" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">1</text><text x="183" y="136" font-size="9.6" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Zurich</text><text x="240" y="136" font-size="9.2" font-weight="600" fill="var(--xv-cool)" dominant-baseline="central"><tspan class="xv-glyph" font-size="10.5">♃︎</tspan> <!-- -->ASC</text><text x="324" y="136" font-size="9.6" font-weight="800" fill="var(--xv-accent)" text-anchor="end" dominant-baseline="central" class="xv-mono">98</text></g><g style="animation:xv-ac-r1 10s ease-out infinite both"><text x="172" y="151" font-size="9.2" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">2</text><text x="183" y="151" font-size="9.6" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Seoul</text><text x="240" y="151" font-size="9.2" font-weight="600" fill="var(--xv-rose)" dominant-baseline="central"><tspan class="xv-glyph" font-size="10.5">♀︎</tspan> <!-- -->IC</text><text x="324" y="151" font-size="9.6" font-weight="800" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono">94</text></g><g style="animation:xv-ac-r2 10s ease-out infinite both"><text x="172" y="166" font-size="9.2" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">3</text><text x="183" y="166" font-size="9.6" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Nairobi</text><text x="240" y="166" font-size="9.2" font-weight="600" fill="var(--xv-rose)" dominant-baseline="central"><tspan class="xv-glyph" font-size="10.5">♀︎</tspan> <!-- -->DSC</text><text x="324" y="166" font-size="9.6" font-weight="800" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono">94</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
254              text-base md:text-lg">AstroCartoGraphy API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
255              line-clamp-2">Planetary lines for every coordinate — the four angles, parans, and city scoring.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:385ms">
255<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
256          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
257          transition-all duration-500 p-3 flex
258          flex-col md:flex-row
259          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
260              transition-transform duration-700 group-hover:scale-[1.03]
261              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="human-design" class="xv-frame  "><style>[data-xv="human-design"] .hd-ch{stroke-dasharray:100 100;transition:stroke-width .3s ease}
262[data-xv="human-design"] .hd-pop{transform-box:fill-box;transform-origin:center}
263.group\/card:hover [data-xv="human-design"] .hd-ch{stroke-width:2.4}
264@keyframes xv-hd-o0{0%{opacity:0;transform:scale(0.7)}2%{opacity:0;transform:scale(0.7)}5.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
265@keyframes xv-hd-o1{0%{opacity:0;transform:scale(0.7)}2.5%{opacity:0;transform:scale(0.7)}6%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
266@keyframes xv-hd-o2{0%{opacity:0;transform:scale(0.7)}3%{opacity:0;transform:scale(0.7)}6.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
267@keyframes xv-hd-o3{0%{opacity:0;transform:scale(0.7)}3.5%{opacity:0;transform:scale(0.7)}7%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
268@keyframes xv-hd-o4{0%{opacity:0;transform:scale(0.7)}4%{opacity:0;transform:scale(0.7)}7.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
269@keyframes xv-hd-o5{0%{opacity:0;transform:scale(0.7)}4.5%{opacity:0;transform:scale(0.7)}8%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
270@keyframes xv-hd-o6{0%{opacity:0;transform:scale(0.7)}5%{opacity:0;transform:scale(0.7)}8.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
271@keyframes xv-hd-o7{0%{opacity:0;transform:scale(0.7)}5.5%{opacity:0;transform:scale(0.7)}9%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
272@keyframes xv-hd-o8{0%{opacity:0;transform:scale(0.7)}6%{opacity:0;transform:scale(0.7)}9.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(0.7)}100%{opacity:0;transform:scale(0.7)}}
273@keyframes xv-hd-skel{0%{opacity:0}7%{opacity:0}12%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
274@keyframes xv-hd-c0{0%{stroke-dashoffset:100}12%{stroke-dashoffset:100}16%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
275@keyframes xv-hd-c1{0%{stroke-dashoffset:100}17%{stroke-dashoffset:100}21%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
276@keyframes xv-hd-c2{0%{stroke-dashoffset:100}22%{stroke-dashoffset:100}26%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
277@keyframes xv-hd-c3{0%{stroke-dashoffset:100}27%{stroke-dashoffset:100}31%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
278@keyframes xv-hd-f-head{0%{opacity:0}15.5%{opacity:0}18.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
279@keyframes xv-hd-f-ajna{0%{opacity:0}15.5%{opacity:0}18.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
280@keyframes xv-hd-f-throat{0%{opacity:0}20.5%{opacity:0}23.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
281@keyframes xv-hd-f-g{0%{opacity:0}
28125.5%{opacity:0}28.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
282@keyframes xv-hd-f-sacral{0%{opacity:0}25.5%{opacity:0}28.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
283@keyframes xv-hd-f-root{0%{opacity:0}30.5%{opacity:0}33.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
284@keyframes xv-hd-pulse{0%{opacity:0;transform:scale(1)}43.5%{opacity:0;transform:scale(1)}44.5%{opacity:1;transform:scale(1)}52.5%{opacity:0;transform:scale(1.6)}100%{opacity:0;transform:scale(1.6)}}
285@keyframes xv-hd-type{0%{opacity:0;transform:translateY(5px)}34%{opacity:0;transform:translateY(5px)}38%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}
286@keyframes xv-hd-r0{0%{opacity:0;transform:translateX(6px)}38%{opacity:0;transform:translateX(6px)}41%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
287@keyframes xv-hd-r1{0%{opacity:0;transform:translateX(6px)}40.5%{opacity:0;transform:translateX(6px)}43.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
288@keyframes xv-hd-r2{0%{opacity:0;transform:translateX(6px)}43%{opacity:0;transform:translateX(6px)}46%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
289@keyframes xv-hd-r3{0%{opacity:0;transform:translateX(6px)}45.5%{opacity:0;transform:translateX(6px)}48.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
290@keyframes xv-hd-list{0%{opacity:0}49%{opacity:0}
29052.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><g fill="none" stroke="var(--xv-line-strong)" stroke-width="0.7" stroke-linecap="round" stroke-linejoin="round" style="animation:xv-hd-skel 10s ease-out infinite both"><path d="M 75 15 L 75 29"></path><path d="M 82 15 L 82 29"></path><path d="M 89 15 L 89 29"></path><path d="M 75 34.42 L 75 56"></path><path d="M 82 42 L 82 56"></path><path d="M 89 34.42 L 89 56"></path><path d="M 75 72 L 75 89.69"></path><path d="M 82 72 L 82 84"></path><path d="M 89 72 L 89 89.69"></path><path d="M 66 97 L 70 67"></path><path d="M 70 60 L 10.6 117.2"></path><path d="M 70 67 L 16.1 120.7"></path><path d="M 94 60 L 153.4 117.2"></path><path d="M 94 64 L 147.9 120.7"></path><path d="M 94 68 L 111 103"></path><path d="M 98 97 L 108.2 107.2"></path><path d="M 107 112 L 21.6 124.2"></path><path d="M 142.4 124.2 L 117 112"></path><path d="M 66 97 L 16.1 120.7"></path><path d="M 75 104.31 L 75 123"></path><path d="M 82 110 L 82 123"></path><path d="M 89 104.31 L 89 123"></path><path d="M 66 97 L 70 127"></path><path d="M 70 127 L 16.1 120.7"></path><path d="M 70 135 L 23.8 128.4"></path><path d="M 94 133 L 140.2 128.4"></path><path d="M 75 140 L 75 155"></path><path d="M 82 140 L 82 155"></path><path d="M 89 140 L 89 155"></path><path d="M 8.4 138.2 L 70 168"></path><path d="M 13.9 134.7 L 70 163"></path><path d="M 19.4 131.2 L 70 158"></path><path d="M 94 158 L 144.6 131.2"></path><path d="M 94 163 L 150.1 134.7"></path><path d="M 94 168 L 155.6 138.2"></path><path d="M 70 127 L 63 97 L 70 67"></path></g><path d="M 75 15 L 75 29" fill="none" stroke="var(--xv-ink)" stroke-width="1.5" stroke-linecap="round" pathLength="100" class="hd-ch" style="animation:xv-hd-c0 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 75 34.42 L 75 56" fill="none" stroke="var(--xv-ink)" stroke-width="1.5" stroke-linecap="round" pathLength="100" class="hd-ch" style="animation:xv-hd-c1 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 82 110 L 82 123" fill="none" stroke="var(--xv-ink)" stroke-width="1.5" stroke-linecap="round" pathLength="100" class="hd-ch" style="animation:xv-hd-c2 10s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 82 140 L 82 155" fill="none" stroke="var(--xv-ink)" stroke-width="1.5" stroke-linecap="round" pathLength="100" class="hd-ch" style="animation:xv-hd-c3 10s ease-in-out infinite both;stroke-dashoffset:0"></path><g class="hd-pop" style="animation:xv-hd-o0 10s ease-out infinite both"><polygon points="82,2 94,15 70,15" stroke-linejoin="round" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></polygon><polygon points="82,2 94,15 70,15" stroke-linejoin="round" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-hd-f-head 10s ease-out infinite both"></polygon></g><g class="hd-pop" style="animation:xv-hd-o1 10s ease-out infinite both"><polygon points="70,29 94,29 82,42" stroke-linejoin="round" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></polygon><polygon points="70,29 94,29 82,42" stroke-linejoin="round" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-hd-f-ajna 10s ease-out infinite both"></polygon></g><g class="hd-pop" style="animation:xv-hd-o2 10s ease-out infinite both"><rect x="70" y="56" width="24" height="16" rx="2" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></rect><rect x="70" y="56" width="24" height="16" rx="2" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-hd-f-throat 10s ease-out infinite both"></rect></g><g class="hd-pop" style="animation:xv-hd-o3 10s ease-out infinite both"><polygon points="82,84 98,97 82,110 66,97" stroke-linejoin="round" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></polygon><polygon points="82,84 98,97 82,110 66,97" stroke-linejoin="round" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-hd-f-g 10s ease-out infinite both"></polygon></g><g class="hd-pop" style="animation:xv-hd-o4 10s ease-out infinite both"><polygon points="113,100 121,112 105,112" stroke-linejoin="round" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></polygon></g><g class="hd-pop" style="animation:xv-hd-o5 10s ease-out infinite both"><rect x="70" y="123" width="24" height="17" rx="2" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></rect><rect x="70" y="123" width="24" height="17" rx="2" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-hd-f-sacral 10s ease-out infinite both"></rect></g><g class="hd-pop" style="animation:xv-hd-o6 10s ease-out infinite both"><polygon points="4,113 26,127 4,141" stroke-linejoin="round" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></polygon></g><g class="hd-pop" style="animation:xv-hd-o7 10s ease-out infinite both"><polygon points="160,113 138,127 160,141" stroke-linejoin="round" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></polygon></g><g class="hd-pop" style="animation:xv-hd-o8 10s ease-out infinite both"><rect x="70" y="155" width="24" height="16" rx="2" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="1.2"></rect><rect x="70" y="155" width="24" height="16" rx="2" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-hd-f-root 10s ease-out infinite both"></rect></g><rect x="70" y="123" width="24" height="17" rx="2" fill="none" stroke="var(--xv-accent)" stroke-width="1.4" class="hd-pop" style="animation:xv-hd-pulse 10s ease-out infinite both;opacity:0"></rect></g><g><g style="animation:xv-hd-type 10s ease-out infinite both"><text x="174" y="14" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">TYPE</text><text x="174" y="32" font-size="15" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Generator</text><line x1="174" y1="50" x2="322" y2="50" stroke="var(--xv-line)" stroke-width="1"></line></g><g style="animation:xv-hd-r0 10s ease-out infinite both"><text x="174" y="63" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">STRATEGY</text><text x="240" y="63" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">To respond</text></g><g style="animation:xv-hd-r1 10s ease-out infinite both"><text x="174" y="81" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">AUTHORITY</text><text x="240" y="81" font-size="10.5" font-weight="700" fill="var(--xv-accent)" dominant-baseline="central">Sacral</text></g><g style="animation:xv-hd-r2 10s ease-out infinite both"><text x="174" y="99" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">PROFILE</text><text x="240" y="99" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono">2/4</text></g><g style="animation:xv-hd-r3 10s ease-out infinite both"><text x="174" y="117" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">DEFINITION</text><text x="240" y="117" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Split</text></g><g style="animation:xv-hd-list 10s ease-out infinite both"><text x="174" y="142" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">CHANNELS</text><text x="174" y="157" font-size="9" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono">64-47 · 17-62 · 2-14 · 3-60</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
291              text-base md:text-lg">Human Design API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
292              line-clamp-2">Generate complete BodyGraph profiles and compatibility insights from birth data. Use the core, chart, analysis, and interpretation endpoints across a single Human Design workflow.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:440ms">
292<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
293          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
294          transition-all duration-500 p-3 flex
295          flex-col md:flex-row
296          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
297              transition-transform duration-700 group-hover:scale-[1.03]
298              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="palmistry" class="xv-frame  "><style>[data-xv="palmistry"] .pa-line{stroke-dasharray:100 100;transition:stroke-width .35s ease}
299[data-xv="palmistry"] .pa-bar{transform-box:fill-box;transform-origin:left center}
300[data-xv="palmistry"] .pa-pop{transform-box:fill-box;transform-origin:center}
301.group\/card:hover [data-xv="palmistry"] .pa-line{stroke-width:1.81}
302@keyframes xv-pa-scan{0%{opacity:0;transform:translateY(0px)}2.5%{opacity:0;transform:translateY(0px)}4.375%{opacity:1;transform:translateY(10px)}15.625%{opacity:1;transform:translateY(150px)}17.5%{opacity:0;transform:translateY(160px)}100%{opacity:0;transform:translateY(160px)}}
303@keyframes xv-pa-l0{0%{stroke-dashoffset:100}17.5%{stroke-dashoffset:100}26.25%{stroke-dashoffset:0}88.75%{stroke-dashoffset:0}93.75%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
304@keyframes xv-pa-r0{0%{opacity:0;transform:translateX(6px)}23.125%{opacity:0;transform:translateX(6px)}26.875%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}93.75%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
305@keyframes xv-pa-b0{0%{transform:scaleX(0)}24.375%{transform:scaleX(0)}31.875%{transform:scaleX(1)}88.75%{transform:scaleX(1)}93.75%{transform:scaleX(0)}100%{transform:scaleX(0)}}
306@keyframes xv-pa-l1{0%{stroke-dashoffset:100}25%{stroke-dashoffset:100}33.75%{stroke-dashoffset:0}88.75%{stroke-dashoffset:0}93.75%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
307@keyframes xv-pa-r1{0%{opacity:0;transform:translateX(6px)}30.625%{opacity:0;transform:translateX(6px)}34.375%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}93.75%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
308@keyframes xv-pa-b1{0%{transform:scaleX(0)}31.875%{transform:scaleX(0)}39.375%{transform:scaleX(1)}88.75%{transform:scaleX(1)}93.75%{transform:scaleX(0)}100%{transform:scaleX(0)}}
309@keyframes xv-pa-l2{0%{stroke-dashoffset:100}32.5%{stroke-dashoffset:100}41.25%{stroke-dashoffset:0}88.75%{stroke-dashoffset:0}93.75%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
310@keyframes xv-pa-r2{0%{opacity:0;transform:translateX(6px)}38.125%{opacity:0;transform:translateX(6px)}41.875%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}93.75%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
311@keyframes xv-pa-b2{0%{transform:scaleX(0)}39.375%{transform:scaleX(0)}46.875%{transform:scaleX(1)}88.75%{transform:scaleX(1)}93.75%{transform:scaleX(0)}100%{transform:scaleX(0)}}
312@keyframes xv-pa-l3{0%{stroke-dashoffset:100}40%{stroke-dashoffset:100}48.75%{stroke-dashoffset:0}88.75%{stroke-dashoffset:0}93.75%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
313@keyframes xv-pa-r3{0%{opacity:0;transform:translateX(6px)}45.625%{opacity:0;transform:translateX(6px)}49.375%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}93.75%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
314@keyframes xv-pa-b3{0%{transform:scaleX(0)}46.875%{transform:scaleX(0)}54.375%{transform:scaleX(1)}88.75%{transform:scaleX(1)}93.75%{transform:scaleX(0)}100%{transform:scaleX(0)}}
315@keyframes xv-pa-done{0%{opacity:0}50%{opacity:0}53.75%{opacity:1}88.75%{opacity:1}93.75%{opacity:0}100%{opacity:0}}
316@keyframes xv-pa-type{0%{opacity:0;transform:scale(0.85)}53.75%{opacity:0;transform:scale(0.85)}58.125%{opacity:1;transform:scale(1)}88.75%{opacity:1;transform:scale(1)}93.75%{opacity:0;transform:scale(0.85)}100%{opacity:0;transform:scale(0.85)}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="xv-pa-scan-grad" x1="0" y1="0" x2="0" y2="1"><stop offset="0" style="stop-color:var(--xv-accent);stop-opacity:0"></stop><stop offset="1" style="stop-color:var(--xv-accent);stop-opacity:0.35"></stop></linearGradient></defs><rect x="6" y="6" width="118" height="162" rx="6" fill="var(--xv-surface)"></rect><g transform="translate(17.11 12) scale(1.55)"><path d="M 23 97 L 21.6 90 C 13.6 87.6 11.56 79.09 8.94 71.25 Q 3.84 58.48 0.21 45.11 A 4.3 4.3 0 0 1 8.19 41.89 L 13.6 55.4 Q 15.3 59.6 17.2 59.4 Q 18.5 56 18.6 49 L 17.8 18 A 4.5 4.5 0 0 1 26.8 18 L 28.4 49 Q 28.75 50.6 29.1 47.5 L 29.4 12.1 A 4.6 4.6 0 0 1 38.6 12.1 L 38.9 47.5 Q 39.25 50.1 39.6 48.5 L 40.85 15.8 A 4.3 4.3 0 0 1 49.45 15.8 L 48.9 48.5 Q 49.25 53.6 49.6 52 L 51.9 29.1 A 3.6 3.6 0 0 1 59.1 29.1 L 57.4 52 C 59.6 62 60.2 76 56.6 89.6 L 55 97" fill="var(--xv-wash)" stroke="var(--xv-ink)" stroke-width="0.77" stroke-linejoin="round" stroke-linecap="round"></path><path d="M 20.33 36.22 Q 23.07 37.22 25.81 36.22" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 19.97 25.57 Q 22.71 26.57 25.45 25.57" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 31.26 33.1 Q 34 34.1 36.74 33.1" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 31.26 21.1 Q 34 22.1 36.74 21.1" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 41.97 35.18 Q 44.57 36.18 47.17 35.18" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 42.24 24.08 Q 44.84 25.08 47.44 24.08" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 52.04 42.46 Q 54.22 43.46 56.4 42.46" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 52.64 34.51 Q 54.82 35.51 57 34.51" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 3.4 55.6 Q 7 56.2 10.6 53.6" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 23.4 88.2 Q 38.6 91 55.6 88.2" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.52" stroke-linecap="round"></path><path d="M 58.9 60.4 C 50 60 40.5 59.4 33.8 55.6 Q 30.6 53.6 29.4 50.8" fill="none" stroke="var(--xv-rose)" stroke-width="1.48" stroke-linecap="round" pathLength="100" class="pa-line" style="animation:xv-pa-l0 8s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 18.4 57.8 C 28 60 39 63.2 51.6 69.6" fill="none" stroke="var(--xv-cool)" stroke-width="1.48" stroke-linecap="round" pathLength="100" class="pa-line" style="animation:xv-pa-l1 8s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 18.4 58.4 C 26 63 29.6 73 28.6 82 Q 28.1 86 26.9 89.6" fill="none" stroke="var(--xv-good)" stroke-width="1.48" stroke-linecap="round" pathLength="100" class="pa-line" style="animation:xv-pa-l2 8s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 39.2 88 C 38 77 36 65.4 34.3 56.4" fill="none" stroke="var(--xv-gold)" stroke-width="1.48" stroke-linecap="round" pathLength="100" class="pa-line" style="animation:xv-pa-l3 8s ease-in-out infinite both;stroke-dashoffset:0"></path></g><g style="animation:xv-pa-scan 8s linear infinite both;opacity:0"><rect x="7" y="-4" width="116" height="10" fill="url(#xv-pa-scan-grad)"></rect><line x1="7" y1="6" x2="123" y2="6" stroke="var(--xv-accent)" stroke-width="1.2"></line></g><path d="M 6 16 V 6 H 16 M 114 6 H 124 V 16 M 124 158 V 168 H 114 M 16 168 H 6 V 158" fill="none" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round"></path><rect x="134" y="8" width="9" height="11" rx="1.5" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.9"></rect><path d="M 136 16 l 2 -2.5 l 1.5 1.5 l 1.5 -2" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.8"></path><text x="148" y="13.5" font-size="9" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono">
316palm.jpg</text><text x="262" y="13.5" font-size="9" font-weight="700" fill="var(--xv-good)" text-anchor="end" dominant-baseline="central" style="animation:xv-pa-done 8s ease-out infinite both">4 lines found</text><line x1="134" y1="24" x2="262" y2="24" stroke="var(--xv-line)" stroke-width="1"></line><text x="134" y="40" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">LINE</text><text x="184" y="40" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">CONFIDENCE</text><g style="animation:xv-pa-r0 8s ease-out infinite both"><line x1="134" y1="58" x2="144" y2="58" stroke="var(--xv-rose)" stroke-width="2.6" stroke-linecap="round"></line><text x="150" y="58" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Heart</text><rect x="184" y="56" width="104" height="4" rx="2" fill="var(--xv-line)"></rect><rect x="184" y="56" width="85.28" height="4" rx="2" fill="var(--xv-rose)" class="pa-bar" style="animation:xv-pa-b0 8s ease-out infinite both"></rect><text x="322" y="58" font-size="10" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono">82%</text></g><g style="animation:xv-pa-r1 8s ease-out infinite both"><line x1="134" y1="75" x2="144" y2="75" stroke="var(--xv-cool)" stroke-width="2.6" stroke-linecap="round"></line><text x="150" y="75" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Head</text><rect x="184" y="73" width="104" height="4" rx="2" fill="var(--xv-line)"></rect><rect x="184" y="73" width="79.04" height="4" rx="2" fill="var(--xv-cool)" class="pa-bar" style="animation:xv-pa-b1 8s ease-out infinite both"></rect><text x="322" y="75" font-size="10" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono">76%</text></g><g style="animation:xv-pa-r2 8s ease-out infinite both"><line x1="134" y1="92" x2="144" y2="92" stroke="var(--xv-good)" stroke-width="2.6" stroke-linecap="round"></line><text x="150" y="92" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Life</text><rect x="184" y="90" width="104" height="4" rx="2" fill="var(--xv-line)"></rect><rect x="184" y="90" width="94.64" height="4" rx="2" fill="var(--xv-good)" class="pa-bar" style="animation:xv-pa-b2 8s ease-out infinite both"></rect><text x="322" y="92" font-size="10" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono">91%</text></g><g style="animation:xv-pa-r3 8s ease-out infinite both"><line x1="134" y1="109" x2="144" y2="109" stroke="var(--xv-gold)" stroke-width="2.6" stroke-linecap="round"></line><text x="150" y="109" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Fate</text><rect x="184" y="107" width="104" height="4" rx="2" fill="var(--xv-line)"></rect><rect x="184" y="107" width="66.56" height="4" rx="2" fill="var(--xv-gold)" class="pa-bar" style="animation:xv-pa-b3 8s ease-out infinite both"></rect><text x="322" y="109" font-size="10" font-weight="700" fill="var(--xv-ink)" text-anchor="end" dominant-baseline="central" class="xv-mono">64%</text></g><g class="pa-pop" style="animation:xv-pa-type 8s ease-out infinite both"><rect x="134" y="124" width="188" height="42" rx="8" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="145" y="136" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">ELEMENT</text><text x="145" y="153" font-size="16" font-weight="800" fill="var(--xv-accent)" dominant-baseline="central">Air</text>
316<line x1="200" y1="133" x2="200" y2="157" stroke="var(--xv-accent)" stroke-opacity="0.35" stroke-width="0.8"></line><text x="210" y="138" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Square palm</text><text x="210" y="152" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Long fingers</text></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
317              text-base md:text-lg">Palmistry API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
318              line-clamp-2">AI palm reading from a photo — lines, hand shape, mounts, and meanings.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:495ms"><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
319          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
320          transition-all duration-500 p-3 flex
321          flex-col md:flex-row
322          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
323              transition-transform duration-700 group-hover:scale-[1.03]
324              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="face-reading" class="xv-frame  "><style>[data-xv="face-reading"] .fr-draw{stroke-dasharray:100 100}
325[data-xv="face-reading"] .fr-pop{transform-box:fill-box;transform-origin:center}
326[data-xv="face-reading"] .fr-bar{transform-box:fill-box;transform-origin:left center}
327[data-xv="face-reading"] .fr-mesh{transition:stroke-opacity .35s ease}
328.group\/card:hover [data-xv="face-reading"] .fr-mesh{stroke-opacity:.75}
329@keyframes xv-fr-scan{0%{opacity:0;transform:translateY(0px)}2.222%{opacity:0;transform:translateY(0px)}3.889%{opacity:1;transform:translateY(10px)}15%{opacity:1;transform:translateY(150px)}16.667%{opacity:0;transform:translateY(160px)}100%{opacity:0;transform:translateY(160px)}}
330@keyframes xv-fr-bar{0%{transform:scaleX(0)}2.222%{transform:scaleX(0)}16.667%{transform:scaleX(1)}90%{transform:scaleX(1)}94.444%{transform:scaleX(0)}100%{transform:scaleX(0)}}
331@keyframes xv-fr-id{0%{opacity:0}16.667%{opacity:0}20%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
332@keyframes xv-fr-lm0{0%{opacity:0;transform:scale(0.6)}17.778%{opacity:0;transform:scale(0.6)}20.222%{opacity:1;transform:scale(1.1)}22.222%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
333@keyframes xv-fr-lm1{0%{opacity:0;transform:scale(0.6)}20.556%{opacity:0;transform:scale(0.6)}23%{opacity:1;transform:scale(1.1)}25%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
334@keyframes xv-fr-lm2{0%{opacity:0;transform:scale(0.6)}23.333%{opacity:0;transform:scale(0.6)}25.778%{opacity:1;transform:scale(1.1)}27.778%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
335@keyframes xv-fr-lm3{0%{opacity:0;transform:scale(0.6)}26.111%{opacity:0;transform:scale(0.6)}28.556%{opacity:1;transform:scale(1.1)}30.556%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
336@keyframes xv-fr-mesh{0%{opacity:0}
33626.667%{opacity:0}32.222%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
337@keyframes xv-fr-f0{0%{opacity:0;transform:translateY(-5px)}31.111%{opacity:0;transform:translateY(-5px)}34.444%{opacity:1;transform:translateY(0px)}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(-5px)}100%{opacity:0;transform:translateY(-5px)}}
338@keyframes xv-fr-f1{0%{opacity:0;transform:translateY(-5px)}34.444%{opacity:0;transform:translateY(-5px)}37.778%{opacity:1;transform:translateY(0px)}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(-5px)}100%{opacity:0;transform:translateY(-5px)}}
339@keyframes xv-fr-f2{0%{opacity:0;transform:translateY(-5px)}37.778%{opacity:0;transform:translateY(-5px)}41.111%{opacity:1;transform:translateY(0px)}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(-5px)}100%{opacity:0;transform:translateY(-5px)}}
340@keyframes xv-fr-f3{0%{opacity:0;transform:translateY(-5px)}41.111%{opacity:0;transform:translateY(-5px)}44.444%{opacity:1;transform:translateY(0px)}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(-5px)}100%{opacity:0;transform:translateY(-5px)}}
341@keyframes xv-fr-oval{0%{stroke-dashoffset:100}31.111%{stroke-dashoffset:100}37.778%{stroke-dashoffset:0}90%{stroke-dashoffset:0}94.444%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
342@keyframes xv-fr-mid{0%{stroke-dashoffset:100}37.778%{stroke-dashoffset:100}43.333%{stroke-dashoffset:0}90%{stroke-dashoffset:0}94.444%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
343@keyframes xv-fr-rl{0%{opacity:0}44.444%{opacity:0}47.778%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
344@keyframes xv-fr-r0{0%{opacity:0;transform:scale(0.6)}46.111%{opacity:0;transform:scale(0.6)}48.556%{opacity:1;transform:scale(1.1)}50.556%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
345@keyframes xv-fr-r1{0%{opacity:0;transform:scale(0.6)}48.889%{opacity:0;transform:scale(0.6)}51.333%{opacity:1;transform:scale(1.1)}53.333%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
346@keyframes xv-fr-r2{0%{opacity:0;transform:scale(0.6)}51.667%{opacity:0;transform:scale(0.6)}54.111%{opacity:1;transform:scale(1.1)}56.111%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
347@keyframes xv-fr-u0{0%{opacity:0}44.444%{opacity:0}47.778%{opacity:1}46.667%{opacity:1}48.889%{opacity:0}
347100%{opacity:0}}
348@keyframes xv-fr-u1{0%{opacity:0}44.444%{opacity:0}47.778%{opacity:1}49.444%{opacity:1}51.667%{opacity:0}100%{opacity:0}}
349@keyframes xv-fr-u2{0%{opacity:0}44.444%{opacity:0}47.778%{opacity:1}52.222%{opacity:1}54.444%{opacity:0}100%{opacity:0}}
350@keyframes xv-fr-ex{0%{opacity:0;transform:translateX(-6px)}55%{opacity:0;transform:translateX(-6px)}58.889%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-6px)}100%{opacity:0;transform:translateX(-6px)}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="xv-fr-scan-grad" x1="0" y1="0" x2="0" y2="1"><stop offset="0" style="stop-color:var(--xv-accent);stop-opacity:0"></stop><stop offset="1" style="stop-color:var(--xv-accent);stop-opacity:0.35"></stop></linearGradient></defs><rect x="6" y="6" width="118" height="162" rx="6" fill="var(--xv-surface)"></rect><g fill="none" stroke="var(--xv-ink)" stroke-width="1.1" stroke-linecap="round" stroke-linejoin="round"><path d="M 53 129 C 53 137 52.5 143 51.5 148 C 49 155 36 157 20 163"></path><path d="M 77 129 C 77 137 77.5 143 78.5 148 C 81 155 94 157 110 163"></path><path d="M 35.4 79 C 30.5 77 29 84 30.2 89.5 C 31.2 94 33.4 96.5 36.4 96" fill="var(--xv-wash)"></path><path d="M 94.6 79 C 99.5 77 101 84 99.8 89.5 C 98.8 94 96.6 96.5 93.6 96" fill="var(--xv-wash)"></path><path d="M 36 66 C 34.5 76 34.5 88 37 100 C 40 117 51 133 65 133 C 79 133 90 117 93 100 C 95.5 88 95.5 76 94 66 C 88 52 76 47.5 65 47.5 C 54 47.5 42 52 36 66 Z" fill="var(--xv-wash)"></path><path d="M 36 70 C 29.5 56 33 30 65 27 C 97 30 100.5 56 94 70"></path><path d="M 58 28.2 C 50 33 43 42 39.5 55" stroke="var(--xv-ink-soft)" stroke-opacity="0.55" stroke-width="0.8"></path><path d="M 44 75 Q 51 70.5 59 73.5" stroke-width="1.3"></path><path d="M 86 75 Q 79 70.5 71 73.5" stroke-width="1.3"></path><g><path d="M 45.5 82 Q 52 76.4 58.5 82 Q 52 85.6 45.5 82 Z"></path><circle cx="52" cy="81.3" r="2.1" fill="var(--xv-ink)" stroke="none"></circle></g><g><path d="M 71.5 82 Q 78 76.4 84.5 82 Q 78 85.6 71.5 82 Z"></path><circle cx="78" cy="81.3" r="2.1" fill="var(--xv-ink)" stroke="none"></circle></g><path d="M 61.6 79 L 60.2 98.5" stroke="var(--xv-ink-soft)" stroke-opacity="0.7" stroke-width="0.9"></path><path d="M 58 101 Q 61 104.2 65 103.5 Q 69 104.2 72 101"></path><path d="M 56 114 Q 60.5 111.8 65 113.3 Q 69.5 111.8 74 114" stroke="var(--xv-ink)" stroke-opacity="1" stroke-width="1.1"></path><path d="M 56 114.3 Q 65 116.6 74 114.3" stroke="var(--xv-ink)" stroke-opacity="1" stroke-width="1.1"></path><path d="M 59.5 117.8 Q 65 120.6 70.5 117.8" stroke="var(--xv-ink-soft)" stroke-opacity="0.7" stroke-width="0.9"></path></g><g><path d="M 35.2 84 L 37 100 M 37 100 L 46.9 122.9 M 46.9 122.9 L 65 133 M 65 133 L 83.1 122.9 M 83.1 122.9 L 93 100 M 93 100 L 94.8 84 M 65 47.5 L 59 73.5 M 65 47.5 L 71 73.5 M 59 73.5 L 65 78 M 71 73.5 L 65 78 M 44 75 L 45.5 82 M 86 75 L 84.5 82 M 45.5 82 L 35.2 84 M 84.5 82 L 94.8 84 M 58.5 82 L 65 78 M 71.5 82 L 65 78 M 58.5 82 L 58 101 M 71.5 82 L 72 101 M 65 78 L 65 103.5 M 58 101 L 65 103.5 M 65 103.5 L 72 101 M 35.2 84 L 58 101 M 94.8 84 L 72 101 M 58 101 L 56 114 M 72 101 L 74 114 M 65 103.5 L 65 113.3 M 56 114 L 46.9 122.9 M 74 114 L 83.1 122.9 M 56 114 L 37 100 M 74 114 L 93 100 M 65 119.3 L 65 133" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.4" stroke-width="0.6" class="fr-mesh" style="animation:xv-fr-mesh 9s ease-out infinite both"></path><ellipse cx="65" cy="90.25" rx="43.25" ry="30.5" fill="none" stroke="var(--xv-cool)" stroke-width="1" pathLength="100" class="fr-draw" transform="rotate(-90 65 90.25)" style="animation:xv-fr-oval 9s ease-in-out infinite both;stroke-dashoffset:0"></ellipse><line x1="65" y1="36" x2="65" y2="143" stroke="var(--xv-cool)" stroke-width="0.9" pathLength="100" class="fr-draw" style="animation:xv-fr-mid 9s ease-in-out infinite both;stroke-dashoffset:0"></line><g style="animation:xv-fr-lm0 9s ease-out infinite both" class="fr-pop"><circle cx="44" cy="75" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="59" cy="73.5" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="71" cy="73.5" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="86" cy="75" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="45.5" cy="82" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="58.5" cy="82" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="71.5" cy="82" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="84.5" cy="82" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle></g><g style="animation:xv-fr-lm1 9s ease-out infinite both" class="fr-pop"><circle cx="65" cy="78" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="65" cy="103.5" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="58" cy="101" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="72" cy="101" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle></g><g style="animation:xv-fr-lm2 9s ease-out infinite both" class="fr-pop"><circle cx="56" cy="114" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="74" cy="114" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="65" cy="113.3" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="65" cy="119.3" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle></g><g style="animation:xv-fr-lm3 9s ease-out infinite both" class="fr-pop"><circle cx="65" cy="47.5" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="35.2" cy="84" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="94.8" cy="84" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="37" cy="100" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="93" cy="100" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="46.9" cy="122.9" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="83.1" cy="122.9" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle><circle cx="65" cy="133" r="1.35" fill="var(--xv-accent)" stroke="var(--xv-surface)" stroke-width="0.5"></circle></g></g><g style="animation:xv-fr-scan 9s linear infinite both;opacity:0"><rect x="7" y="-4" width="116" height="10" fill="url(#xv-fr-scan-grad)"></rect><line x1="7" y1="6" x2="123" y2="6" stroke="var(--xv-accent)" stroke-width="1.2"></line></g><path d="M 6 16 V 6 H 16 M 114 6 H 124 V 16 M 124 158 V 168 H 114 M 16 168 H 6 V 158" fill="none" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round"></path><g><rect x="134" y="8" width="9" height="11" rx="1.5" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.9"></rect><circle cx="138.5" cy="12" r="1.6" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.8"></circle><path d="M 135.6 17.6 Q 138.5 14.2 141.4 17.6" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.8"></path><text x="148" y="13.5" font-size="9" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono">face.jpg</text><rect x="134" y="24" width="128" height="2" rx="1" fill="var(--xv-line)"></rect><rect x="134" y="24" width="128" height="2" rx="1" fill="var(--xv-accent)" class="fr-bar" style="animation:xv-fr-bar 9s linear infinite both"></rect><text x="134" y="37" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono" style="animation:xv-fr-id 9s ease-out infinite both">face_id: a1b2c3d4e5f6</text><text x="134" y="54" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">FEATURES</text><g style="animation:xv-fr-f0 9s ease-out infinite both">
350<rect x="134" y="61" width="77" height="16" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="142" y="69" font-size="9.5" dominant-baseline="central"><tspan fill="var(--xv-ink-soft)" font-weight="600">Shape · </tspan><tspan fill="var(--xv-ink)" font-weight="800" class="">Oval</tspan></text></g><g style="animation:xv-fr-f1 9s ease-out infinite both"><rect x="216" y="61" width="84" height="16" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="224" y="69" font-size="9.5" dominant-baseline="central"><tspan fill="var(--xv-ink-soft)" font-weight="600">Eyes · </tspan><tspan fill="var(--xv-ink)" font-weight="800" class="">Almond</tspan></text></g><g style="animation:xv-fr-f2 9s ease-out infinite both"><rect x="134" y="81" width="91" height="16" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="142" y="89" font-size="9.5" dominant-baseline="central"><tspan fill="var(--xv-ink-soft)" font-weight="600">Symmetry · </tspan><tspan fill="var(--xv-ink)" font-weight="800" class="xv-mono">92%</tspan></text></g><g style="animation:xv-fr-f3 9s ease-out infinite both"><rect x="230" y="81" width="88" height="16" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="238" y="89" font-size="9.5" dominant-baseline="central"><tspan fill="var(--xv-ink-soft)" font-weight="600">Nose · </tspan><tspan fill="var(--xv-ink)" font-weight="800" class="">Straight</tspan></text></g><text x="134" y="111" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central" style="animation:xv-fr-rl 9s ease-out infinite both">READINGS</text><g><g style="animation:xv-fr-u0 9s ease-out infinite both;opacity:0"><rect x="134" y="118" width="51.06" height="17" rx="8.5" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><text x="159.53" y="126.5" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">Career</text></g><g class="fr-pop" style="animation:xv-fr-r0 9s ease-out infinite both"><rect x="134" y="118" width="51.06" height="17" rx="8.5" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="159.53" y="126.5" font-size="9.5" font-weight="700" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central">Career</text></g></g><g><g style="animation:xv-fr-u1 9s ease-out infinite both;opacity:0"><rect x="190.06" y="118" width="40.04" height="17" rx="8.5" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><text x="210.08" y="126.5" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">Love</text></g><g class="fr-pop" style="animation:xv-fr-r1 9s ease-out infinite both"><rect x="190.06" y="118" width="40.04" height="17" rx="8.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="210.08" y="126.5" font-size="9.5" font-weight="700" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central">Love</text></g></g><g><g style="animation:xv-fr-u2 9s ease-out infinite both;opacity:0"><rect x="235.1" y="118" width="51.06" height="17" rx="8.5" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><text x="260.63" y="126.5" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">Wisdom</text></g><g class="fr-pop" style="animation:xv-fr-r2 9s ease-out infinite both"><rect x="235.1" y="118" width="51.06" height="17" rx="8.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="260.63" y="126.5" font-size="9.5" font-weight="700" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central">Wisdom</text></g></g><text x="291.16" y="126.5" font-size="9" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono" style="animation:xv-fr-rl 9s ease-out infinite both">+7</text><g style="animation:xv-fr-ex 9s ease-out infinite both"><rect x="134" y="143" width="2" height="24" rx="1" fill="var(--xv-accent)"></rect><text x="142" y="149" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">/face-reading/career</text><text x="142" y="161" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Leads by steady competence.</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
351              text-base md:text-lg">Face Reading API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
352              line-clamp-2">AI face reading from a photo — face shape, features, symmetry, and life-area readings.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-1 lg:row-span-1   group bento-card-animation" style="animation-delay:550ms">
352<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
353          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
354          transition-all duration-500 p-3 flex
355          flex-col
356          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
357              transition-transform duration-700 group-hover:scale-[1.03]
358              w-full h-[100px] flex-shrink-0"><div aria-hidden="true" data-xv="numerology" class="xv-frame  "><style>[data-xv="numerology"] .nu-pop{transform-box:fill-box;transform-origin:center}
359[data-xv="numerology"] .nu-ring{transition:stroke-width .35s ease}
360.group\/card:hover [data-xv="numerology"] .nu-ring{stroke-width:2.4}
361@keyframes xv-nu-seg0{3%{opacity:1}47%{opacity:1}50%{opacity:0}100%{opacity:0}}
362@keyframes xv-nu-d0-0{0%{opacity:0;transform:translateY(-7px)}3.5%{opacity:0;transform:translateY(-7px)}5.5%{opacity:1;transform:translateY(0px)}45.5%{opacity:1;transform:translateY(0px)}47.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
363@keyframes xv-nu-f0-0{0%{opacity:0}3.5%{opacity:0}4.3%{opacity:1}8%{opacity:0}100%{opacity:0}}
364@keyframes xv-nu-d0-1{0%{opacity:0;transform:translateY(-7px)}4.8%{opacity:0;transform:translateY(-7px)}6.8%{opacity:1;transform:translateY(0px)}45.5%{opacity:1;transform:translateY(0px)}47.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
365@keyframes xv-nu-f0-1{0%{opacity:0}4.8%{opacity:0}
3655.6%{opacity:1}9.3%{opacity:0}100%{opacity:0}}
366@keyframes xv-nu-d0-2{0%{opacity:0;transform:translateY(-7px)}6.1%{opacity:0;transform:translateY(-7px)}8.1%{opacity:1;transform:translateY(0px)}45.5%{opacity:1;transform:translateY(0px)}47.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
367@keyframes xv-nu-f0-2{0%{opacity:0}6.1%{opacity:0}6.9%{opacity:1}10.6%{opacity:0}100%{opacity:0}}
368@keyframes xv-nu-d0-3{0%{opacity:0;transform:translateY(-7px)}7.4%{opacity:0;transform:translateY(-7px)}9.4%{opacity:1;transform:translateY(0px)}45.5%{opacity:1;transform:translateY(0px)}47.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
369@keyframes xv-nu-f0-3{0%{opacity:0}7.4%{opacity:0}8.2%{opacity:1}11.9%{opacity:0}100%{opacity:0}}
370@keyframes xv-nu-d0-4{0%{opacity:0;transform:translateY(-7px)}8.7%{opacity:0;transform:translateY(-7px)}10.7%{opacity:1;transform:translateY(0px)}45.5%{opacity:1;transform:translateY(0px)}47.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
371@keyframes xv-nu-f0-4{0%{opacity:0}8.7%{opacity:0}9.5%{opacity:1}13.2%{opacity:0}100%{opacity:0}}
372@keyframes xv-nu-c0-0{0%{opacity:0;transform:translateX(-3px)}11%{opacity:0;transform:translateX(-3px)}13.5%{opacity:1;transform:translateX(0px)}45%{opacity:1;transform:translateX(0px)}47.5%{opacity:0;transform:translateX(-3px)}100%{opacity:0;transform:translateX(-3px)}}
373@keyframes xv-nu-c0-1{0%{opacity:0;transform:translateX(-3px)}14%{opacity:0;transform:translateX(-3px)}16.5%{opacity:1;transform:translateX(0px)}45%{opacity:1;transform:translateX(0px)}47.5%{opacity:0;transform:translateX(-3px)}100%{opacity:0;transform:translateX(-3px)}}
374@keyframes xv-nu-c0-2{0%{opacity:0;transform:translateX(-3px)}17%{opacity:0;transform:translateX(-3px)}19.5%{opacity:1;transform:translateX(0px)}45%{opacity:1;transform:translateX(0px)}47.5%{opacity:0;transform:translateX(-3px)}100%{opacity:0;transform:translateX(-3px)}}
375@keyframes xv-nu-r0{0%{opacity:0;transform:scale(0.4)}18.5%{opacity:0;transform:scale(0.4)}21.5%{opacity:1;transform:scale(1)}44.5%{opacity:1;transform:scale(1)}47.5%{opacity:0;transform:scale(0.4)}100%{opacity:0;transform:scale(0.4)}}
376@keyframes xv-nu-l0{0%{opacity:0;transform:translateX(6px)}19.5%{opacity:0;transform:translateX(6px)}22.5%{opacity:1;transform:translateX(0px)}44.5%{opacity:1;transform:translateX(0px)}47.5%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
377@keyframes xv-nu-seg1{0%{opacity:0}50%{opacity:0}53%{opacity:1}97%{opacity:1}100%{opacity:0}}
378@keyframes xv-nu-d1-0{0%{opacity:0;transform:translateY(-7px)}53.5%{opacity:0;transform:translateY(-7px)}55.5%{opacity:1;transform:translateY(0px)}95.5%{opacity:1;transform:translateY(0px)}97.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
379@keyframes xv-nu-f1-0{0%{opacity:0}53.5%{opacity:0}54.3%{opacity:1}58%{opacity:0}100%{opacity:0}}
380@keyframes xv-nu-d1-1{0%{opacity:0;transform:translateY(-7px)}54.8%{opacity:0;transform:translateY(-7px)}56.8%{opacity:1;transform:translateY(0px)}95.5%{opacity:1;transform:translateY(0px)}97.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
381@keyframes xv-nu-f1-1{0%{opacity:0}54.8%{opacity:0}
38155.6%{opacity:1}59.3%{opacity:0}100%{opacity:0}}
382@keyframes xv-nu-d1-2{0%{opacity:0;transform:translateY(-7px)}56.1%{opacity:0;transform:translateY(-7px)}58.1%{opacity:1;transform:translateY(0px)}95.5%{opacity:1;transform:translateY(0px)}97.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
383@keyframes xv-nu-f1-2{0%{opacity:0}56.1%{opacity:0}56.9%{opacity:1}60.6%{opacity:0}100%{opacity:0}}
384@keyframes xv-nu-d1-3{0%{opacity:0;transform:translateY(-7px)}57.4%{opacity:0;transform:translateY(-7px)}59.4%{opacity:1;transform:translateY(0px)}95.5%{opacity:1;transform:translateY(0px)}97.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
385@keyframes xv-nu-f1-3{0%{opacity:0}57.4%{opacity:0}58.2%{opacity:1}61.9%{opacity:0}100%{opacity:0}}
386@keyframes xv-nu-d1-4{0%{opacity:0;transform:translateY(-7px)}58.7%{opacity:0;transform:translateY(-7px)}60.7%{opacity:1;transform:translateY(0px)}95.5%{opacity:1;transform:translateY(0px)}97.5%{opacity:0;transform:translateY(-7px)}100%{opacity:0;transform:translateY(-7px)}}
387@keyframes xv-nu-f1-4{0%{opacity:0}58.7%{opacity:0}59.5%{opacity:1}63.2%{opacity:0}100%{opacity:0}}
388@keyframes xv-nu-c1-0{0%{opacity:0;transform:translateX(-3px)}61%{opacity:0;transform:translateX(-3px)}63.5%{opacity:1;transform:translateX(0px)}95%{opacity:1;transform:translateX(0px)}97.5%{opacity:0;transform:translateX(-3px)}100%{opacity:0;transform:translateX(-3px)}}
389@keyframes xv-nu-c1-1{0%{opacity:0;transform:translateX(-3px)}64%{opacity:0;transform:translateX(-3px)}66.5%{opacity:1;transform:translateX(0px)}95%{opacity:1;transform:translateX(0px)}97.5%{opacity:0;transform:translateX(-3px)}100%{opacity:0;transform:translateX(-3px)}}
390@keyframes xv-nu-r1{0%{opacity:0;transform:scale(0.4)}68.5%{opacity:0;transform:scale(0.4)}71.5%{opacity:1;transform:scale(1)}94.5%{opacity:1;transform:scale(1)}97.5%{opacity:0;transform:scale(0.4)}100%{opacity:0;transform:scale(0.4)}}
391@keyframes xv-nu-l1{0%{opacity:0;transform:translateX(6px)}69.5%{opacity:0;transform:translateX(6px)}72.5%{opacity:1;transform:translateX(0px)}94.5%{opacity:1;transform:translateX(0px)}97.5%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}</style><svg viewBox="0 0 276 100" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><rect x="8" y="7" width="136" height="17" rx="8.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><g><text x="46" y="15.5" font-size="9.5" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">Pythagorean</text><g style="animation:xv-nu-seg0 10s ease-in-out infinite both"><rect x="10" y="9" width="72" height="13" rx="6.5" fill="var(--xv-accent)"></rect><text x="46" y="15.5" font-size="9.5" font-weight="700" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central">Pythagorean</text></g></g><g><text x="114" y="15.5" font-size="9.5" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">Chaldean</text><g style="animation:xv-nu-seg1 10s ease-in-out infinite both;opacity:0"><rect x="86" y="9" width="56" height="13" rx="6.5" fill="var(--xv-accent)"></rect><text x="114" y="15.5" font-size="9.5" font-weight="700" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central">Chaldean</text></g></g></g><g><g><rect x="8" y="31" width="21" height="21" rx="4" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><rect x="8" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f0-0 10s ease-out infinite both;opacity:0"></rect><rect x="8" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f1-0 10s ease-out infinite both;opacity:0"></rect><text x="18.5" y="42" font-size="12.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">A</text><line x1="18.5" y1="54" x2="18.5" y2="57" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linecap="round"></line></g><g><rect x="34" y="31" width="21" height="21" rx="4" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><rect x="34" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f0-1 10s ease-out infinite both;opacity:0"></rect><rect x="34" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f1-1 10s ease-out infinite both;opacity:0"></rect><text x="44.5" y="42" font-size="12.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">R</text><line x1="44.5" y1="54" x2="44.5" y2="57" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linecap="round"></line></g><g><rect x="60" y="31" width="21" height="21" rx="4" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><rect x="60" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f0-2 10s ease-out infinite both;opacity:0"></rect><rect x="60" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f1-2 10s ease-out infinite both;opacity:0"></rect><text x="70.5" y="42" font-size="12.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">J</text><line x1="70.5" y1="54" x2="70.5" y2="57" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linecap="round"></line></g><g><rect x="86" y="31" width="21" height="21" rx="4" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><rect x="86" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f0-3 10s ease-out infinite both;opacity:0"></rect><rect x="86" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f1-3 10s ease-out infinite both;opacity:0"></rect><text x="96.5" y="42" font-size="12.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">U</text><line x1="96.5" y1="54" x2="96.5" y2="57" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linecap="round"></line></g><g><rect x="112" y="31" width="21" height="21" rx="4" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><rect x="112" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f0-4 10s ease-out infinite both;opacity:0"></rect><rect x="112" y="31" width="21" height="21" rx="4" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.2" style="animation:xv-nu-f1-4 10s ease-out infinite both;opacity:0"></rect><text x="122.5" y="42" font-size="12.5" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">N</text><line x1="122.5" y1="54" x2="122.5" y2="57" stroke="var(--xv-line-strong)" stroke-width="1" stroke-linecap="round"></line></g></g><text x="8" y="88" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">sum</text><path d="M 118 88 C 132 88 140 78 149 76" fill="none" stroke="var(--xv-line-strong)" stroke-width="1" stroke-dasharray="2 2.5"></path><circle cx="173" cy="70" r="21" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1.5" class="nu-ring"></circle><g><g><text x="18.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d0-0 10s ease-out infinite both">1</text><text x="44.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d0-1 10s ease-out infinite both">9</text><text x="70.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d0-2 10s ease-out infinite both">1</text><text x="96.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d0-3 10s ease-out infinite both">3</text><text x="122.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d0-4 10s ease-out infinite both">5</text></g><g><text x="32" y="88" font-size="11.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-c0-0 10s ease-out infinite both">19</text><text x="52" y="88" font-size="11.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-c0-1 10s ease-out infinite both"><tspan fill="var(--xv-ink-soft)" font-weight="600">→ </tspan>10</text><text x="86" y="88" font-size="11.5" font-weight="800" fill="var(--xv-accent)" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-c0-2 10s ease-out infinite both"><tspan fill="var(--xv-ink-soft)" font-weight="600">→ </tspan>1</text></g><g><text x="173" y="71" font-size="23" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono nu-pop" style="animation:xv-nu-r0 10s ease-out infinite both">1</text><g style="animation:xv-nu-l0 10s ease-out infinite both"><text x="202" y="64" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Expression</text><text x="202" y="77" font-size="9.5" fill="var(--xv-ink-soft)" dominant-baseline="central">number</text></g></g></g><g><g><text x="18.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d1-0 10s ease-out infinite both;opacity:0">1</text><text x="44.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d1-1 10s ease-out infinite both;opacity:0">2</text><text x="70.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d1-2 10s ease-out infinite both;opacity:0">1</text><text x="96.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d1-3 10s ease-out infinite both;opacity:0">6</text><text x="122.5" y="65" font-size="13" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-d1-4 10s ease-out infinite both;opacity:0">5</text></g><g><text x="32" y="88" font-size="11.5" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-c1-0 10s ease-out infinite both;opacity:0">15</text><text x="52" y="88" font-size="11.5" font-weight="800" fill="var(--xv-accent)" dominant-baseline="central" class="xv-mono" style="animation:xv-nu-c1-1 10s ease-out infinite both;opacity:0"><tspan fill="var(--xv-ink-soft)" font-weight="600">→ </tspan>6</text></g><g><text x="173" y="71" font-size="23" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono nu-pop" style="animation:xv-nu-r1 10s ease-out infinite both;opacity:0">6</text><g style="animation:xv-nu-l1 10s ease-out infinite both;opacity:0"><text x="202" y="64" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Name number</text><text x="202" y="77" font-size="9.5" fill="var(--xv-ink-soft)" dominant-baseline="central">compound 15</text></g></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end px-2 pt-2 pb-0"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
392              text-sm md:text-base">Numerology API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
393              line-clamp-2">Pythagorean, Chaldean, Vedic, and Kabbalah — life path to Lo Shu grid.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-1 lg:row-span-1   group bento-card-animation" style="animation-delay:605ms">
393<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
394          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
395          transition-all duration-500 p-3 flex
396          flex-col
397          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
398              transition-transform duration-700 group-hover:scale-[1.03]
399              w-full h-[100px] flex-shrink-0"><div aria-hidden="true" data-xv="tarot" class="xv-frame  "><style>[data-xv="tarot"] .ta-card,[data-xv="tarot"] .ta-side{transform-box:fill-box;transform-origin:center}
400[data-xv="tarot"] .ta-inner{transition:stroke-width .35s ease,stroke-opacity .35s ease}
401.group\/card:hover [data-xv="tarot"] .ta-inner{stroke-width:1.2;stroke-opacity:1}
402@keyframes xv-ta-deal0{0%{opacity:0;transform:translate(152.5px,-24px) scale(0.53) rotate(6deg)}2.5%{opacity:0;transform:translate(152.5px,-24px) scale(0.53) rotate(6deg)}4%{opacity:1;transform:translate(152.5px,-24px) scale(0.53) rotate(6deg)}9.375%{opacity:1;transform:translate(0px,0px) scale(1) rotate(0deg)}88.75%{opacity:1;transform:translate(0px,0px) scale(1) rotate(0deg)}94.375%{opacity:0;transform:translate(152.5px,-24px) scale(0.53) rotate(6deg)}100%{opacity:0;transform:translate(152.5px,-24px) scale(0.53) rotate(6deg)}}
403@keyframes xv-ta-back0{0%{opacity:1;transform:scaleX(1)}16.25%{opacity:1;transform:scaleX(1)}18.25%{opacity:1;transform:scaleX(0)}18.375%{opacity:0;transform:scaleX(0)}100%{opacity:0;transform:scaleX(0)}}
404@keyframes xv-ta-face0{0%{transform:scaleX(0)}18.25%{transform:scaleX(0)}20.25%{transform:scaleX(1)}100%{transform:scaleX(1)}}
405@keyframes xv-ta-row0{0%{opacity:0;transform:translateX(6px)}19.375%{opacity:0;transform:translateX(6px)}23.125%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}94.375%{opacity:0;transform:translateX(0px)}100%{opacity:0;transform:translateX(0px)}}
406@keyframes xv-ta-deal1{0%{opacity:0;transform:translate(105.5px,-24px) scale(0.53) rotate(6deg)}4.75%{opacity:0;transform:translate(105.5px,-24px) scale(0.53) rotate(6deg)}6.25%{opacity:1;transform:translate(105.5px,-24px) scale(0.53) rotate(6deg)}11.625%{opacity:1;transform:translate(0px,0px) scale(1) rotate(0deg)}88.75%{opacity:1;transform:translate(0px,0px) scale(1) rotate(0deg)}94.375%{opacity:0;transform:translate(105.5px,-24px) scale(0.53) rotate(6deg)}100%{opacity:0;transform:translate(105.5px,-24px) scale(0.53) rotate(6deg)}}
407@keyframes xv-ta-back1{0%{opacity:1;transform:scaleX(1)}25%{opacity:1;transform:scaleX(1)}27%{opacity:1;transform:scaleX(0)}27.125%{opacity:0;transform:scaleX(0)}100%{opacity:0;transform:scaleX(0)}}
408@keyframes xv-ta-face1{0%{transform:scaleX(0)}27%{transform:scaleX(0)}29%{transform:scaleX(1)}100%{transform:scaleX(1)}}
409@keyframes xv-ta-row1{0%{opacity:0;transform:translateX(6px)}28.125%{opacity:0;transform:translateX(6px)}31.875%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}94.375%{opacity:0;transform:translateX(0px)}100%{opacity:0;transform:translateX(0px)}}
410@keyframes xv-ta-deal2{0%{opacity:0;transform:translate(58.5px,-24px) scale(0.53) rotate(6deg)}7%{opacity:0;transform:translate(58.5px,-24px) scale(0.53) rotate(6deg)}8.5%{opacity:1;transform:translate(58.5px,-24px) scale(0.53) rotate(6deg)}13.875%{opacity:1;transform:translate(0px,0px) scale(1) rotate(0deg)}88.75%{opacity:1;transform:translate(0px,0px) scale(1) rotate(0deg)}94.375%{opacity:0;transform:translate(58.5px,-24px) scale(0.53) rotate(6deg)}100%{opacity:0;transform:translate(58.5px,-24px) scale(0.53) rotate(6deg)}}
411@keyframes xv-ta-back2{0%{opacity:1;transform:scaleX(1)}33.75%{opacity:1;transform:scaleX(1)}35.75%{opacity:1;transform:scaleX(0)}35.875%{opacity:0;transform:scaleX(0)}100%{opacity:0;transform:scaleX(0)}}
412@keyframes xv-ta-face2{0%{transform:scaleX(0)}35.75%{transform:scaleX(0)}37.75%{transform:scaleX(1)}100%{transform:scaleX(1)}}
413@keyframes xv-ta-row2{0%{opacity:0;transform:translateX(6px)}36.875%{opacity:0;transform:translateX(6px)}40.625%{opacity:1;transform:translateX(0px)}88.75%{opacity:1;transform:translateX(0px)}94.375%{opacity:0;transform:translateX(0px)}100%{opacity:0;transform:translateX(0px)}}</style><svg viewBox="0 0 276 100" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><rect x="8" y="16" width="40" height="68" rx="3.5" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2.5 2.5"></rect><rect x="55" y="16" width="40" height="68" rx="3.5" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2.5 2.5"></rect><rect x="102" y="16" width="40" height="68" rx="3.5" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2.5 2.5"></rect><g><g transform="translate(173.2 11.2)"><g><rect x="0" y="0" width="21" height="36" rx="3.5" fill="var(--xv-surface)"></rect><rect x="0" y="0" width="21" height="36" rx="3.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><rect x="3" y="3" width="15" height="30" rx="2" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.6"></rect><circle cx="10.5" cy="18" r="4.2" fill="none" stroke="var(--xv-accent)" stroke-width="0.9"></circle><path d="M 10.5 10.44 V 25.56 M 2.94 18 H 18.06" stroke="var(--xv-accent)" stroke-opacity="0.7" stroke-width="0.8"></path></g></g><g transform="translate(171.6 9.6)"><g><rect x="0" y="0" width="21" height="36" rx="3.5" fill="var(--xv-surface)"></rect><rect x="0" y="0" width="21" height="36" rx="3.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><rect x="3" y="3" width="15" height="30" rx="2" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.6"></rect><circle cx="10.5" cy="18" r="4.2" fill="none" stroke="var(--xv-accent)" stroke-width="0.9"></circle><path d="M 10.5 10.44 V 25.56 M 2.94 18 H 18.06" stroke="var(--xv-accent)" stroke-opacity="0.7" stroke-width="0.8"></path></g></g><g transform="translate(170 8)"><g><rect x="0" y="0" width="21" height="36" rx="3.5" fill="var(--xv-surface)"></rect><rect x="0" y="0" width="21" height="36" rx="3.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><rect x="3" y="3" width="15" height="30" rx="2" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.6"></rect><circle cx="10.5" cy="18" r="4.2" fill="none" stroke="var(--xv-accent)" stroke-width="0.9"></circle><path d="M 10.5 10.44 V 25.56 M 2.94 18 H 18.06" stroke="var(--xv-accent)" stroke-opacity="0.7" stroke-width="0.8"></path></g></g></g><g transform="translate(8 16)"><g class="ta-card" style="animation:xv-ta-deal0 8s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><g class="ta-side" style="animation:xv-ta-face0 8s ease-out infinite both"><g><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-surface)" stroke="var(--xv-ink)" stroke-opacity="0.55" stroke-width="0.9"></rect><rect x="3" y="3" width="34" height="62" rx="2" fill="none" stroke="var(--xv-gold)" stroke-opacity="0.7" stroke-width="0.6" class="ta-inner"></rect><g transform="rotate(180 20 34)"><g fill="none" stroke-linecap="round" stroke-linejoin="round"><text x="20" y="10.5" font-size="9.3" font-weight="700" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central">
413XVII</text><path d="M 20 21 L 18.55 27.49 L 12.93 23.93 L 16.49 29.55 L 10 31 L 16.49 32.45 L 12.93 38.07 L 18.55 34.51 L 20 41 L 21.45 34.51 L 27.07 38.07 L 23.51 32.45 L 30 31 L 23.51 29.55 L 27.07 23.93 L 21.45 27.49 Z" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1"></path><path d="M 9 18.8 V 23.2 M 6.8 21 H 11.2 M 31.5 19.8 V 24.2 M 29.3 22 H 33.7 M 8.5 38.2 V 41.8 M 6.7 40 H 10.3 M 31 39.2 V 42.8 M 29.2 41 H 32.8" stroke="var(--xv-gold)" stroke-width="0.8"></path><path d="M 6 52 q 3.5 -2.4 7 0 t 7 0 t 7 0 t 7 0 t 7 0 M 6 57 q 3.5 -2.4 7 0 t 7 0 t 7 0 t 7 0 t 7 0" stroke="var(--xv-cool)" stroke-width="0.9"></path></g></g></g></g><g class="ta-side" style="animation:xv-ta-back0 8s ease-in infinite both;opacity:0"><g><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-surface)"></rect><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><rect x="3" y="3" width="34" height="62" rx="2" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.6"></rect><circle cx="20" cy="34" r="8" fill="none" stroke="var(--xv-accent)" stroke-width="0.9"></circle><path d="M 20 19.6 V 48.4 M 5.6 34 H 34.4" stroke="var(--xv-accent)" stroke-opacity="0.7" stroke-width="0.8"></path></g></g></g></g><g transform="translate(55 16)"><g class="ta-card" style="animation:xv-ta-deal1 8s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><g class="ta-side" style="animation:xv-ta-face1 8s ease-out infinite both"><g><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-surface)" stroke="var(--xv-ink)" stroke-opacity="0.55" stroke-width="0.9"></rect><rect x="3" y="3" width="34" height="62" rx="2" fill="none" stroke="var(--xv-gold)" stroke-opacity="0.7" stroke-width="0.6" class="ta-inner"></rect><g><g fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M 15.8 18 H 24.2 Q 24.2 24.2 20 24.2 Q 15.8 24.2 15.8 18 Z M 20 24.2 V 28.5 M 17 28.5 H 23 M 7.3 31 H 15.7 Q 15.7 37.2 11.5 37.2 Q 7.3 37.2 7.3 31 Z M 11.5 37.2 V 41.5 M 8.5 41.5 H 14.5 M 24.3 31 H 32.7 Q 32.7 37.2 28.5 37.2 Q 24.3 37.2 24.3 31 Z M 28.5 37.2 V 41.5 M 25.5 41.5 H 31.5" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1"></path><path d="M 8 47 Q 14 51 20 47.5 Q 26 51 32 47" stroke="var(--xv-good)" stroke-width="0.8"></path><path d="M 6 58 H 34" stroke="var(--xv-ink-soft)" stroke-width="0.8"></path><circle cx="12" cy="55.5" r="1.4" fill="var(--xv-rose)" stroke="none"></circle><circle cx="20" cy="55.5" r="1.4" fill="var(--xv-good)" stroke="none"></circle><circle cx="28" cy="55.5" r="1.4" fill="var(--xv-rose)" stroke="none"></circle></g></g></g></g><g class="ta-side" style="animation:xv-ta-back1 8s ease-in infinite both;opacity:0"><g><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-surface)"></rect><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><rect x="3" y="3" width="34" height="62" rx="2" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.6"></rect><circle cx="20" cy="34" r="8" fill="none" stroke="var(--xv-accent)" stroke-width="0.9"></circle><path d="M 20 19.6 V 48.4 M 5.6 34 H 34.4" stroke="var(--xv-accent)" stroke-opacity="0.7" stroke-width="0.8"></path></g></g></g></g><g transform="translate(102 16)"><g class="ta-card" style="animation:xv-ta-deal2 8s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><g class="ta-side" style="animation:xv-ta-face2 8s ease-out infinite both"><g><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-surface)" stroke="var(--xv-ink)" stroke-opacity="0.55" stroke-width="0.9"></rect><rect x="3" y="3" width="34" height="62" rx="2" fill="none" stroke="var(--xv-gold)" stroke-opacity="0.7" stroke-width="0.6" class="ta-inner"></rect><g><g fill="none" stroke-linecap="round" stroke-linejoin="round"><text x="20" y="10.5" font-size="9.3" font-weight="700" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central">VII</text><path d="M 8 22 Q 20 15 32 22" stroke="var(--xv-gold)" stroke-width="1"></path><circle cx="14" cy="19.2" r="0.8" fill="var(--xv-gold)" stroke="none"></circle><circle cx="20" cy="18" r="0.8" fill="var(--xv-gold)" stroke="none"></circle><circle cx="26" cy="19.2" r="0.8" fill="var(--xv-gold)" stroke="none"></circle><path d="M 10 22 V 40 M 30 22 V 40" stroke="var(--xv-ink-soft)" stroke-width="0.8"></path><circle cx="20" cy="27" r="2.8" stroke="var(--xv-ink)" stroke-width="0.9"></circle><path d="M 16.5 33 H 23.5 L 24.5 40 H 15.5 Z" stroke="var(--xv-ink)" stroke-width="0.9"></path><rect x="8" y="40" width="24" height="8" rx="1" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1"></rect><path d="M 7 58 V 54 Q 7 51.5 10 51.5 H 16 V 58 Z" fill="var(--xv-ink)" stroke="var(--xv-ink)" stroke-width="0.8"></path><path d="M 33 58 V 54 Q 33 51.5 30 51.5 H 24 V 58 Z" fill="var(--xv-surface)" stroke="var(--xv-ink)" stroke-width="0.8"></path></g></g></g></g><g class="ta-side" style="animation:xv-ta-back2 8s ease-in infinite both;opacity:0"><g><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-surface)"></rect><rect x="0" y="0" width="40" height="68" rx="3.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><rect x="3" y="3" width="34" height="62" rx="2" fill="none" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.6"></rect><circle cx="20" cy="34" r="8" fill="none" stroke="var(--xv-accent)" stroke-width="0.9"></circle><path d="M 20 19.6 V 48.4 M 5.6 34 H 34.4" stroke="var(--xv-accent)" stroke-opacity="0.7" stroke-width="0.8"></path></g></g></g></g><g><g style="animation:xv-ta-row0 8s ease-out infinite both"><text x="152" y="57" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">Past</text><text x="196" y="57" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">The Star</text><g><rect x="241" y="50" width="28" height="14" rx="7" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="255" y="57" font-size="9.3" font-weight="700" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central">Rev.</text></g></g><g style="animation:xv-ta-row1 8s ease-out infinite both"><text x="152" y="73" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">Present</text><text x="196" y="73" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Three of Cups</text></g><g style="animation:xv-ta-row2 8s ease-out infinite both"><text x="152" y="89" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">Future</text><text x="196" y="89" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">The Chariot</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end px-2 pt-2 pb-0"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
414              text-sm md:text-base">Tarot API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
415              line-clamp-2">Full 78-card engine — Celtic Cross, 3-card, and Yes/No spreads.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:660ms">
415<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
416          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
417          transition-all duration-500 p-3 flex
418          flex-col md:flex-row
419          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
420              transition-transform duration-700 group-hover:scale-[1.03]
421              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="kp-lalkitab" class="xv-frame  "><style>[data-xv="kp-lalkitab"] .kp-pop{transform-box:fill-box;transform-origin:center}
422[data-xv="kp-lalkitab"] .kp-grid{stroke-dasharray:100 100}
423[data-xv="kp-lalkitab"] .kp-seg{transition:stroke .35s ease}
424.group\/card:hover [data-xv="kp-lalkitab"] .kp-seg{stroke:var(--xv-line-strong)}
425@keyframes xv-kp-pointer{0%{opacity:0;transform:translateX(-44px)}2.222%{opacity:0;transform:translateX(-44px)}8.889%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-44px)}100%{opacity:0;transform:translateX(-44px)}}
426@keyframes xv-kp-lv0{0%{opacity:0}11.111%{opacity:0}14.444%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
427@keyframes xv-kp-lt0{0%{opacity:0;transform:translateX(-4px)}11.111%{opacity:0;transform:translateX(-4px)}14.444%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-4px)}100%{opacity:0;transform:translateX(-4px)}}
428@keyframes xv-kp-c0{0%{opacity:0;transform:scale(0.6)}12.222%{opacity:0;transform:scale(0.6)}14.667%{opacity:1;transform:scale(1.12)}16.667%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
429@keyframes xv-kp-lv1{0%{opacity:0}17.778%{opacity:0}21.111%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
430@keyframes xv-kp-lt1{0%{opacity:0;transform:translateX(-4px)}17.778%{opacity:0;transform:translateX(-4px)}21.111%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-4px)}100%{opacity:0;transform:translateX(-4px)}}
431@keyframes xv-kp-c1{0%{opacity:0;transform:scale(0.6)}18.889%{opacity:0;transform:scale(0.6)}21.333%{opacity:1;transform:scale(1.12)}23.333%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
432@keyframes xv-kp-lv2{0%{opacity:0}24.444%{opacity:0}27.778%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
433@keyframes xv-kp-lt2{0%{opacity:0;transform:translateX(-4px)}24.444%{opacity:0;transform:translateX(-4px)}27.778%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-4px)}100%{opacity:0;transform:translateX(-4px)}}
434@keyframes xv-kp-c2{0%{opacity:0;transform:scale(0.6)}25.556%{opacity:0;transform:scale(0.6)}28%{opacity:1;transform:scale(1.12)}30%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
435@keyframes xv-kp-lv3{0%{opacity:0}31.111%{opacity:0}34.444%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
436@keyframes xv-kp-lt3{0%{opacity:0;transform:translateX(-4px)}31.111%{opacity:0;transform:translateX(-4px)}34.444%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-4px)}100%{opacity:0;transform:translateX(-4px)}}
437@keyframes xv-kp-c3{0%{opacity:0;transform:scale(0.6)}32.222%{opacity:0;transform:scale(0.6)}34.667%{opacity:1;transform:scale(1.12)}36.667%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
438@keyframes xv-kp-grid{0%{stroke-dashoffset:100;opacity:1}40%{stroke-dashoffset:100;opacity:1}47.778%{stroke-dashoffset:0;opacity:1}90%{stroke-dashoffset:0;opacity:1}94.444%{stroke-dashoffset:0;opacity:0}
438100%{stroke-dashoffset:0;opacity:0}}
439@keyframes xv-kp-box{0%{opacity:0}38.889%{opacity:0}42.222%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
440@keyframes xv-kp-h1{0%{opacity:0}46.667%{opacity:0}50.556%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
441@keyframes xv-kp-dots{0%{opacity:0}45.556%{opacity:0}48.889%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
442@keyframes xv-kp-sun{0%{opacity:0;transform:scale(0.6)}48.889%{opacity:0;transform:scale(0.6)}51.333%{opacity:1;transform:scale(1.12)}53.333%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
443@keyframes xv-kp-csl{0%{opacity:0;transform:translateX(-6px)}36.667%{opacity:0;transform:translateX(-6px)}40.556%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-6px)}100%{opacity:0;transform:translateX(-6px)}}
444@keyframes xv-kp-lk{0%{opacity:0;transform:translateX(-6px)}51.111%{opacity:0;transform:translateX(-6px)}55%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-6px)}100%{opacity:0;transform:translateX(-6px)}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><text x="8" y="10" font-size="9.2" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">KP <!-- -->·<!-- --> CUSP 7</text><text x="72" y="10" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central"><tspan class="xv-glyph" font-size="12">♋︎</tspan> <tspan class="xv-mono">8°48′03″</tspan></text><g><rect x="8" y="25" width="150" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="8" y="25" width="150" height="8" rx="1.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8" style="animation:xv-kp-lv0 9s ease-out infinite both"></rect><rect x="8" y="37" width="16.67" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="24.67" y="37" width="66.66" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="91.33" y="37" width="66.67" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="24.67" y="37" width="66.66" height="8" rx="1.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8" style="animation:xv-kp-lv1 9s ease-out infinite both"></rect><rect x="24.67" y="49" width="10.55" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="35.22" y="49" width="9.45" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="44.67" y="49" width="3.89" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="48.56" y="49" width="11.11" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="59.67" y="49" width="3.33" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="63" y="49" width="5.56" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="68.56" y="49" width="3.88" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="72.44" y="49" width="10" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="82.44" y="49" width="8.89" height="8" rx="1.5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="0.8" class="kp-seg"></rect><rect x="48.56" y="49" width="11.11" height="8" rx="1.5" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="0.8" style="animation:xv-kp-lv2 9s ease-out infinite both"></rect><text x="165" y="29" font-size="9.5" font-weight="700" fill="var(--xv-accent)" dominant-baseline="central" style="animation:xv-kp-lt0 9s ease-out infinite both">Cancer</text><text x="165" y="41" font-size="9.5" font-weight="700" fill="var(--xv-accent)" dominant-baseline="central" style="animation:xv-kp-lt1 9s ease-out infinite both">Pushya</text><text x="165" y="53" font-size="9.5" font-weight="700" fill="var(--xv-accent)" dominant-baseline="central" style="animation:xv-kp-lt2 9s ease-out infinite both">Venus sub</text><g style="animation:xv-kp-pointer 9s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><path d="M 48.5 19 L 55.5 19 L 52 24 Z" fill="var(--xv-accent)"></path><line x1="52" y1="24" x2="52" y2="59" stroke="var(--xv-accent)" stroke-width="1.4" stroke-linecap="round"></line></g></g><g><text x="8" y="67" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">LORD CHAIN</text><g><rect x="8" y="78" width="44" height="24" rx="12" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><g class="kp-pop" style="animation:xv-kp-c0 9s ease-out infinite both"><rect x="8" y="78" width="44" height="24" rx="12" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="30" y="90" font-size="11" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central"><tspan class="xv-glyph" font-size="13">☽︎</tspan> <!-- -->Mo</text></g><text x="30" y="111" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">sign</text></g><g><rect x="62" y="78" width="44" height="24" rx="12" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><g class="kp-pop" style="animation:xv-kp-c1 9s ease-out infinite both"><rect x="62" y="78" width="44" height="24" rx="12" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="84" y="90" font-size="11" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central"><tspan class="xv-glyph" font-size="13">♄︎</tspan> <!-- -->Sa</text></g><text x="84" y="111" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">
444star</text><text x="57" y="90" font-size="11" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">›</text></g><g><rect x="116" y="78" width="44" height="24" rx="12" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><g class="kp-pop" style="animation:xv-kp-c2 9s ease-out infinite both"><rect x="116" y="78" width="44" height="24" rx="12" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="138" y="90" font-size="11" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central"><tspan class="xv-glyph" font-size="13">♀︎</tspan> <!-- -->Ve</text></g><text x="138" y="111" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">sub</text><text x="111" y="90" font-size="11" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">›</text></g><g><rect x="170" y="78" width="44" height="24" rx="12" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.8" stroke-dasharray="2 2"></rect><g class="kp-pop" style="animation:xv-kp-c3 9s ease-out infinite both"><rect x="170" y="78" width="44" height="24" rx="12" fill="var(--xv-accent)" stroke="var(--xv-accent)" stroke-width="0.8"></rect><text x="192" y="90" font-size="11" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central"><tspan class="xv-glyph" font-size="13">♂︎</tspan> <!-- -->Ma</text></g><text x="192" y="111" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">sub-sub</text><text x="165" y="90" font-size="11" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">›</text></g></g><g style="animation:xv-kp-csl 9s ease-out infinite both"><rect x="8" y="126" width="2" height="30" rx="1" fill="var(--xv-accent)"></rect><text x="17" y="134" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Cuspal sub lord, cusp 7</text><text x="17" y="148" font-size="11" font-weight="800" fill="var(--xv-accent)" dominant-baseline="central"><tspan class="xv-glyph" font-size="13">♀︎</tspan> Venus</text></g><g><g style="animation:xv-kp-box 9s ease-out infinite both"><rect x="222" y="56" width="102" height="114" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></rect><text x="231" y="67" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">LAL KITAB</text><rect x="235" y="76" width="76" height="76" rx="2" fill="none" stroke="var(--xv-line-strong)" stroke-width="1"></rect></g><path d="M 273 76 L 292 95 L 273 114 L 254 95 Z" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" style="animation:xv-kp-h1 9s ease-out infinite both"></path><path d="M 235 76 L 311 152 M 311 76 L 235 152 M 273 76 L 311 114 L 273 152 L 235 114 Z" fill="none" stroke="var(--xv-line-strong)" stroke-width="0.9" pathLength="100" class="kp-grid" style="animation:xv-kp-grid 9s ease-in-out infinite both;stroke-dashoffset:0"></path><g style="animation:xv-kp-dots 9s ease-out infinite both"><circle cx="273" cy="137.56" r="1.8" fill="var(--xv-ink-soft)"></circle><circle cx="287.44" cy="82.33" r="1.8" fill="var(--xv-ink-soft)"></circle><circle cx="292" cy="82.33" r="1.8" fill="var(--xv-ink-soft)"></circle><circle cx="296.56" cy="82.33" r="1.8" fill="var(--xv-ink-soft)"></circle><circle cx="304.67" cy="95" r="1.8" fill="var(--xv-ink-soft)"></circle><circle cx="292" cy="145.67" r="1.8" fill="var(--xv-ink-soft)"></circle><circle cx="254" cy="145.67" r="1.8" fill="var(--xv-ink-soft)"></circle></g><g class="kp-pop" style="animation:xv-kp-sun 9s ease-out infinite both"><text x="266.16" y="95" font-size="14" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">☉︎</text><text x="280.6" y="95" font-size="12" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♄︎</text></g><g style="animation:xv-kp-lk 9s ease-out infinite both"><text x="273" y="161" font-size="9.5" font-weight="700" fill="var(--xv-gold)" text-anchor="middle" dominant-baseline="central"><tspan class="xv-glyph" font-size="11">☉︎</tspan> H1 <!-- -->·<!-- --> Pakka Ghar</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
445              text-base md:text-lg">KP &amp; Lalkitab API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
446              line-clamp-2">KP sub-lords and cusps, Lalkitab charts, multiple ayanamshas.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:715ms">
446<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
447          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
448          transition-all duration-500 p-3 flex
449          flex-col md:flex-row
450          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
451              transition-transform duration-700 group-hover:scale-[1.03]
452              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="vastu" class="xv-frame  "><style>[data-xv="vastu"] .va-wall{stroke-dasharray:100 100}
453[data-xv="vastu"] .va-pop{transform-box:fill-box;transform-origin:center}
454[data-xv="vastu"] .va-grid{transform-origin:84px 86px}
455[data-xv="vastu"] .va-needle{transform-origin:84px 86px}
456[data-xv="vastu"] .va-bar{transform-box:fill-box;transform-origin:left center}
457[data-xv="vastu"] .va-gridline{transition:stroke-opacity .35s ease}
458.group\/card:hover [data-xv="vastu"] .va-gridline{stroke-opacity:1}
459@keyframes xv-va-wall{0%{stroke-dashoffset:100}1%{stroke-dashoffset:100}10%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
460@keyframes xv-va-bar{0%{transform:scaleX(0)}1%{transform:scaleX(0)}10%{transform:scaleX(1)}91%{transform:scaleX(1)}95%{transform:scaleX(0)}100%{transform:scaleX(0)}}
461@keyframes xv-va-id{0%{opacity:0}10%{opacity:0}13%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
462@keyframes xv-va-grid{0%{opacity:0;transform:rotate(-18deg) scale(1.08)}11%{opacity:0;transform:rotate(-18deg) scale(1.08)}20%{opacity:1;transform:rotate(0deg) scale(1)}91%{opacity:1;transform:rotate(0deg) scale(1)}95%{opacity:0;transform:rotate(-18deg) scale(1.08)}100%{opacity:0;transform:rotate(-18deg) scale(1.08)}}
463@keyframes xv-va-needle{0%{transform:rotate(-150deg)}11%{transform:rotate(-150deg)}18%{transform:rotate(12deg)}21%{transform:rotate(-4deg)}23%{transform:rotate(0deg)}100%{transform:rotate(0deg)}}
464@keyframes xv-va-tint0{0%{opacity:0}23%{opacity:0}
46426.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
465@keyframes xv-va-badge0{0%{opacity:0;transform:scale(0.2)}23%{opacity:0;transform:scale(0.2)}25.5%{opacity:1;transform:scale(1.25)}27.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
466@keyframes xv-va-row0{0%{opacity:0;transform:translateX(8px)}24%{opacity:0;transform:translateX(8px)}27.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(8px)}100%{opacity:0;transform:translateX(8px)}}
467@keyframes xv-va-tint1{0%{opacity:0}28.5%{opacity:0}32%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
468@keyframes xv-va-badge1{0%{opacity:0;transform:scale(0.2)}28.5%{opacity:0;transform:scale(0.2)}31%{opacity:1;transform:scale(1.25)}33%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
469@keyframes xv-va-row1{0%{opacity:0;transform:translateX(8px)}29.5%{opacity:0;transform:translateX(8px)}33%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(8px)}100%{opacity:0;transform:translateX(8px)}}
470@keyframes xv-va-tint2{0%{opacity:0}34%{opacity:0}37.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
471@keyframes xv-va-badge2{0%{opacity:0;transform:scale(0.2)}34%{opacity:0;transform:scale(0.2)}36.5%{opacity:1;transform:scale(1.25)}38.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
472@keyframes xv-va-row2{0%{opacity:0;transform:translateX(8px)}35%{opacity:0;transform:translateX(8px)}38.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(8px)}100%{opacity:0;transform:translateX(8px)}}
473@keyframes xv-va-tint3{0%{opacity:0}39.5%{opacity:0}43%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
474@keyframes xv-va-badge3{0%{opacity:0;transform:scale(0.2)}39.5%{opacity:0;transform:scale(0.2)}42%{opacity:1;transform:scale(1.25)}44%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
475@keyframes xv-va-row3{0%{opacity:0;transform:translateX(8px)}40.5%{opacity:0;transform:translateX(8px)}44%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(8px)}100%{opacity:0;transform:translateX(8px)}}
476@keyframes xv-va-tint4{0%{opacity:0}45%{opacity:0}48.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
477@keyframes xv-va-badge4{0%{opacity:0;transform:scale(0.2)}45%{opacity:0;transform:scale(0.2)}47.5%{opacity:1;transform:scale(1.25)}49.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
478@keyframes xv-va-row4{0%{opacity:0;transform:translateX(8px)}46%{opacity:0;transform:translateX(8px)}49.5%{opacity:1;transform:translateX(0px)}91%{opacity:1;transform:translateX(0px)}95%{opacity:0;transform:translateX(8px)}100%{opacity:0;transform:translateX(8px)}}
479@keyframes xv-va-dial{0%{stroke-dashoffset:78.41}52%{stroke-dashoffset:78.41}64%{stroke-dashoffset:0}91%{stroke-dashoffset:0}95%{stroke-dashoffset:78.41}100%{stroke-dashoffset:78.41}}
480@keyframes xv-va-score{0%{opacity:0}61%{opacity:0}64.5%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><rect x="24" y="26" width="120" height="120" fill="var(--xv-surface)"></rect><rect x="104" y="106" width="40" height="40" fill="var(--xv-good-soft)" style="animation:xv-va-tint0 10s ease-out infinite both"></rect><rect x="24" y="106" width="46" height="40" fill="var(--xv-good-soft)" style="animation:xv-va-tint1 10s ease-out infinite both"></rect><rect x="108" y="26" width="36" height="36" fill="var(--xv-good-soft)" style="animation:xv-va-tint2 10s ease-out infinite both"></rect><rect x="64" y="26" width="32" height="30" fill="var(--xv-bad-soft)" style="animation:xv-va-tint3 10s ease-out infinite both"></rect><rect x="64" y="66" width="40" height="40" fill="var(--xv-good-soft)" style="animation:xv-va-tint4 10s ease-out infinite both"></rect><rect x="68" y="70" width="32" height="32" fill="none" stroke="var(--xv-ink-soft)" stroke-opacity="0.5" stroke-width="0.8" stroke-dasharray="1.5 2.5" rx="2"></rect><g stroke="var(--xv-ink-soft)" stroke-width="0.8" fill="none" stroke-opacity="0.7"><rect x="29" y="131" width="20" height="11" rx="2"></rect><line x1="29" y1="134.5" x2="49" y2="134.5"></line><rect x="108" y="138" width="32" height="5" rx="1"></rect><circle cx="116" cy="140.5" r="1.6"></circle><circle cx="123" cy="140.5" r="1.6"></circle><ellipse cx="72" cy="34" rx="3.2" ry="4"></ellipse><rect x="120" y="30" width="12" height="7" rx="1.5"></rect><path d="M 28 99 h 26 M 28 99 v -10 h 26 v 10"></path></g><g fill="none" stroke-linecap="square"><rect x="24" y="26" width="120" height="120" stroke="var(--xv-ink)" stroke-width="1.8" pathLength="100" class="va-wall" style="animation:xv-va-wall 10s ease-in-out infinite both;stroke-dashoffset:0"></rect><path d="M 64 26 V 106 M 64 56 H 96 V 26 M 108 26 V 62 H 144 M 104 70 H 144 M 104 104 H 144 M 70 106 V 146 M 104 106 V 146 M 24 106 H 76 M 94 106 H 144" stroke="var(--xv-ink)" stroke-opacity="0.72" stroke-width="1.1" pathLength="100" class="va-wall" style="animation:xv-va-wall 10s ease-in-out infinite both;stroke-dashoffset:0"></path></g><line x1="144" y1="80" x2="144" y2="94" stroke="var(--xv-surface)" stroke-width="2.6"></line><path d="M 144 80 A 12 12 0 0 0 132 92" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.8"></path><text x="44" y="48" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.1">Living</text><text x="80" y="47" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.1">Toilet</text><text x="126" y="50" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.1">Puja</text><text x="121" y="96" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.4">Entrance</text><text x="44" y="117" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.1">Master</text><text x="44" y="127" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.1">bed</text><text x="124" y="130" font-size="9" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" letter-spacing="-0.4">Kitchen</text></g><g class="va-grid" style="animation:xv-va-grid 10s cubic-bezier(0.22, 1, 0.36, 1) infinite both"><rect x="21" y="23" width="126" height="126" fill="none" stroke="var(--xv-accent)" stroke-width="1" rx="3"></rect><g class="va-gridline" stroke="var(--xv-accent)" stroke-opacity="0.75" stroke-width="1" stroke-dasharray="3 3"><line x1="64" y1="23" x2="64" y2="149"></line><line x1="21" y1="66" x2="147" y2="66"></line></g><g class="va-gridline" stroke="var(--xv-accent)" stroke-opacity="0.75" stroke-width="1" stroke-dasharray="3 3"><line x1="104" y1="23" x2="104" y2="149"></line>
480<line x1="21" y1="106" x2="147" y2="106"></line></g><text x="15" y="16" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">NW</text><text x="84" y="16" font-size="9" font-weight="800" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono">N</text><text x="153" y="16" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">NE</text><text x="13" y="86" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">W</text><text x="155" y="86" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">E</text><text x="15" y="156" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">SW</text><text x="84" y="156" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">S</text><text x="153" y="156" font-size="9" font-weight="800" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central" class="xv-mono">SE</text></g><g><circle cx="84" cy="86" r="10.5" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></circle><g class="va-needle" style="animation:xv-va-needle 10s ease-in-out infinite both"><path d="M 84 77 L 87 86 L 81 86 Z" fill="var(--xv-accent)"></path><path d="M 84 95 L 87 86 L 81 86 Z" fill="var(--xv-ink-soft)" fill-opacity="0.55"></path></g><circle cx="84" cy="86" r="1.2" fill="var(--xv-surface)"></circle></g><g class="va-pop" style="animation:xv-va-badge0 10s ease-out infinite both"><g><circle cx="137" cy="113" r="5.5" fill="var(--xv-good)"></circle><path d="M 134.4 113.2 L 136.3 115.1 L 139.7 111.1" fill="none" stroke="var(--xv-surface)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></g></g><g class="va-pop" style="animation:xv-va-badge1 10s ease-out infinite both"><g><circle cx="63" cy="139" r="5.5" fill="var(--xv-good)"></circle><path d="M 60.4 139.2 L 62.3 141.1 L 65.7 137.1" fill="none" stroke="var(--xv-surface)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></g></g><g class="va-pop" style="animation:xv-va-badge2 10s ease-out infinite both"><g><circle cx="137" cy="33" r="5.5" fill="var(--xv-good)"></circle><path d="M 134.4 33.2 L 136.3 35.1 L 139.7 31.1" fill="none" stroke="var(--xv-surface)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></g></g><g class="va-pop" style="animation:xv-va-badge3 10s ease-out infinite both"><g><circle cx="89" cy="33" r="5.5" fill="var(--xv-bad)"></circle><path d="M 87 31 L 91 35 M 91 31 L 87 35" fill="none" stroke="var(--xv-surface)" stroke-width="1.5" stroke-linecap="round"></path></g></g><g class="va-pop" style="animation:xv-va-badge4 10s ease-out infinite both"><g><circle cx="97" cy="73" r="5.5" fill="var(--xv-good)"></circle><path d="M 94.4 73.2 L 96.3 75.1 L 99.7 71.1" fill="none" stroke="var(--xv-surface)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></g></g><g><rect x="166" y="9" width="9" height="11" rx="1.5" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.9"></rect><path d="M 168 17 l 2 -2.5 l 1.5 1.5 l 1.5 -2" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.8"></path><text x="180" y="15" font-size="9" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central" class="xv-mono">floorplan.png</text><text x="166" y="38" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono" style="animation:xv-va-id 10s ease-out infinite both">vastu_id: vst_8f92</text><rect x="166" y="24" width="96" height="2" rx="1" fill="var(--xv-line)"></rect><rect x="166" y="24" width="96" height="2" rx="1" fill="var(--xv-accent)" class="va-bar" style="animation:xv-va-bar 10s ease-in-out infinite both"></rect><g class="" style="animation:xv-va-row0 10s ease-out infinite both"><rect x="166" y="50" width="129.19" height="15" rx="7.5" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="176.75" y="57.5" font-size="9.5" font-weight="800" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central">✓</text><text x="184.5" y="57.5" font-size="9.5" font-weight="600" fill="var(--xv-good)" dominant-baseline="central" class="">Kitchen · SE · Agni</text></g><g class="" style="animation:xv-va-row1 10s ease-out infinite both"><rect x="166" y="66.5" width="107.15" height="15" rx="7.5" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="176.75" y="74" font-size="9.5" font-weight="800" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central">✓</text><text x="184.5" y="74" font-size="9.5" font-weight="600" fill="var(--xv-good)" dominant-baseline="central" class="">Master bed · SW</text></g><g class="" style="animation:xv-va-row2 10s ease-out infinite both"><rect x="166" y="83" width="123.68" height="15" rx="7.5" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="176.75" y="90.5" font-size="9.5" font-weight="800" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central">✓</text><text x="184.5" y="90.5" font-size="9.5" font-weight="600" fill="var(--xv-good)" dominant-baseline="central" class="">Puja · NE · Ishana</text></g><g class="" style="animation:xv-va-row3 10s ease-out infinite both"><rect x="166" y="99.5" width="156.74" height="15" rx="7.5" fill="var(--xv-bad-soft)" stroke="var(--xv-bad)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="176.75" y="107" font-size="9.5" font-weight="800" fill="var(--xv-bad)" text-anchor="middle" dominant-baseline="central">✗</text><text x="184.5" y="107" font-size="9.5" font-weight="600" fill="var(--xv-bad)" dominant-baseline="central" class="">Toilet · N · Kubera zone</text></g><g class="" style="animation:xv-va-row4 10s ease-out infinite both"><rect x="166" y="116" width="112.66" height="15" rx="7.5" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="176.75" y="123.5" font-size="9.5" font-weight="800" fill="var(--xv-good)" text-anchor="middle" dominant-baseline="central">✓</text><text x="184.5" y="123.5" font-size="9.5" font-weight="600" fill="var(--xv-good)" dominant-baseline="central" class="">Brahmasthan open</text></g><circle cx="184" cy="151" r="16" fill="none" stroke="var(--xv-line)" stroke-width="4"></circle><circle cx="184" cy="151" r="16" fill="none" stroke="var(--xv-accent)" stroke-width="4" stroke-linecap="round" stroke-dasharray="78.41 100.53" transform="rotate(-90 184 151)" style="animation:xv-va-dial 10s cubic-bezier(0.3, 0.8, 0.3, 1) infinite both;stroke-dashoffset:0"></circle><g style="animation:xv-va-score 10s ease-out infinite both"><text x="184" y="151.5" font-size="13" font-weight="800" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">78</text><text x="208" y="140" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">VASTU SCORE /100</text><text x="208" y="153" font-size="10" font-weight="700" fill="var(--xv-good)" dominant-baseline="central">Good — minor fixes</text><text x="208" y="166" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Remedy: move WC to NW</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
481              text-base md:text-lg">Vastu API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
482              line-clamp-2">
482Upload a floor plan and get a room-by-room Vastu reading — directions, scores, and remedies.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:770ms"><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
483          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
484          transition-all duration-500 p-3 flex
485          flex-col md:flex-row
486          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
487              transition-transform duration-700 group-hover:scale-[1.03]
488              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="muhurta" class="xv-frame  "><style>[data-xv="muhurta"] .mu-pop{transform-box:fill-box;transform-origin:center}
489[data-xv="muhurta"] .mu-cal{transition:stroke .35s ease}
490.group\/card:hover [data-xv="muhurta"] .mu-cal rect:first-child{stroke:var(--xv-accent)}
491@keyframes xv-mu-ev0{2.5%{opacity:1;transform:translateY(0px)}22.5%{opacity:1;transform:translateY(0px)}25%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}
492@keyframes xv-mu-d0-3{0%{opacity:0;transform:scale(0.6)}3.5%{opacity:0;transform:scale(0.6)}6%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
493@keyframes xv-mu-d0-11{0%{opacity:0;transform:scale(0.6)}4.2%{opacity:0;transform:scale(0.6)}6.7%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
494@keyframes xv-mu-d0-21{0%{opacity:0;transform:scale(0.6)}4.9%{opacity:0;transform:scale(0.6)}7.4%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
495@keyframes xv-mu-d0-22{0%{opacity:0;transform:scale(0.6)}5.6%{opacity:0;transform:scale(0.6)}8.1%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
496@keyframes xv-mu-d0-25{0%{opacity:0;transform:scale(0.6)}6.3%{opacity:0;transform:scale(0.6)}8.8%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
497@keyframes xv-mu-d0-26{0%{opacity:0;transform:scale(0.6)}7%{opacity:0;transform:scale(0.6)}9.5%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
498@keyframes xv-mu-pick0{0%{opacity:0;transform:scale(1.5)}11.5%{opacity:0;transform:scale(1.5)}14.5%{opacity:1;transform:scale(1)}21.5%{opacity:1;transform:scale(1)}24.5%{opacity:0;transform:scale(1.5)}100%{opacity:0;transform:scale(1.5)}}
499@keyframes xv-mu-res0{0%{opacity:0;transform:translateX(6px)}13%{opacity:0;transform:translateX(6px)}16%{opacity:1;transform:translateX(0px)}21.5%{opacity:1;transform:translateX(0px)}24.5%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
500@keyframes xv-mu-ev1{0%{opacity:0;transform:translateY(5px)}25%{opacity:0;transform:translateY(5px)}27.5%{opacity:1;transform:translateY(0px)}47.5%{opacity:1;transform:translateY(0px)}50%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}
501@keyframes xv-mu-d1-4{0%{opacity:0;transform:scale(0.6)}28.5%{opacity:0;transform:scale(0.6)}31%{opacity:1;transform:scale(1)}47%{opacity:1;transform:scale(1)}49.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
502@keyframes xv-mu-d1-11{0%{opacity:0;transform:scale(0.6)}29.2%{opacity:0;transform:scale(0.6)}31.7%{opacity:1;transform:scale(1)}47%{opacity:1;transform:scale(1)}49.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
503@keyframes xv-mu-d1-22{0%{opacity:0;transform:scale(0.6)}29.9%{opacity:0;transform:scale(0.6)}32.4%{opacity:1;transform:scale(1)}47%{opacity:1;transform:scale(1)}49.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
504@keyframes xv-mu-d1-25{0%{opacity:0;transform:scale(0.6)}30.6%{opacity:0;transform:scale(0.6)}33.1%{opacity:1;transform:scale(1)}47%{opacity:1;transform:scale(1)}49.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
505@keyframes xv-mu-pick1{0%{opacity:0;transform:scale(1.5)}36.5%{opacity:0;transform:scale(1.5)}39.5%{opacity:1;transform:scale(1)}46.5%{opacity:1;transform:scale(1)}49.5%{opacity:0;transform:scale(1.5)}100%{opacity:0;transform:scale(1.5)}}
506@keyframes xv-mu-res1{0%{opacity:0;transform:translateX(6px)}38%{opacity:0;transform:translateX(6px)}41%{opacity:1;transform:translateX(0px)}46.5%{opacity:1;transform:translateX(0px)}49.5%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
507@keyframes xv-mu-ev2{0%{opacity:0;transform:translateY(5px)}50%{opacity:0;transform:translateY(5px)}52.5%{opacity:1;transform:translateY(0px)}72.5%{opacity:1;transform:translateY(0px)}75%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}
508@keyframes xv-mu-d2-8{0%{opacity:0;transform:scale(0.6)}53.5%{opacity:0;transform:scale(0.6)}56%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
509@keyframes xv-mu-d2-12{0%{opacity:0;transform:scale(0.6)}54.2%{opacity:0;transform:scale(0.6)}56.7%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
510@keyframes xv-mu-d2-18{0%{opacity:0;transform:scale(0.6)}54.9%{opacity:0;transform:scale(0.6)}57.4%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
511@keyframes xv-mu-d2-19{0%{opacity:0;transform:scale(0.6)}55.6%{opacity:0;transform:scale(0.6)}58.1%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
512@keyframes xv-mu-d2-25{0%{opacity:0;transform:scale(0.6)}56.3%{opacity:0;transform:scale(0.6)}58.8%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
513@keyframes xv-mu-d2-26{0%{opacity:0;transform:scale(0.6)}57%{opacity:0;transform:scale(0.6)}59.5%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
514@keyframes xv-mu-pick2{0%{opacity:0;transform:scale(1.5)}61.5%{opacity:0;transform:scale(1.5)}64.5%{opacity:1;transform:scale(1)}71.5%{opacity:1;transform:scale(1)}74.5%{opacity:0;transform:scale(1.5)}100%{opacity:0;transform:scale(1.5)}}
515@keyframes xv-mu-res2{0%{opacity:0;transform:translateX(6px)}63%{opacity:0;transform:translateX(6px)}66%{opacity:1;transform:translateX(0px)}71.5%{opacity:1;transform:translateX(0px)}74.5%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
516@keyframes xv-mu-ev3{0%{opacity:0;transform:translateY(5px)}75%{opacity:0;transform:translateY(5px)}77.5%{opacity:1;transform:translateY(0px)}97.5%{opacity:1;transform:translateY(0px)}100%{opacity:0;transform:translateY(5px)}}
517@keyframes xv-mu-d3-11{0%{opacity:0;transform:scale(0.6)}78.5%{opacity:0;transform:scale(0.6)}81%{opacity:1;transform:scale(1)}97%{opacity:1;transform:scale(1)}99.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
518@keyframes xv-mu-d3-12{0%{opacity:0;transform:scale(0.6)}79.2%{opacity:0;transform:scale(0.6)}81.7%{opacity:1;transform:scale(1)}97%{opacity:1;transform:scale(1)}99.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
519@keyframes xv-mu-d3-19{0%{opacity:0;transform:scale(0.6)}79.9%{opacity:0;transform:scale(0.6)}82.4%{opacity:1;transform:scale(1)}97%{opacity:1;transform:scale(1)}99.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
520@keyframes xv-mu-d3-22{0%{opacity:0;transform:scale(0.6)}80.6%{opacity:0;transform:scale(0.6)}83.1%{opacity:1;transform:scale(1)}97%{opacity:1;transform:scale(1)}99.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
521@keyframes xv-mu-d3-25{0%{opacity:0;transform:scale(0.6)}81.3%{opacity:0;transform:scale(0.6)}83.8%{opacity:1;transform:scale(1)}97%{opacity:1;transform:scale(1)}99.5%{opacity:0;transform:scale(0.6)}100%{opacity:0;transform:scale(0.6)}}
522@keyframes xv-mu-pick3{0%{opacity:0;transform:scale(1.5)}86.5%{opacity:0;transform:scale(1.5)}89.5%{opacity:1;transform:scale(1)}96.5%{opacity:1;transform:scale(1)}99.5%{opacity:0;transform:scale(1.5)}100%{opacity:0;transform:scale(1.5)}}
523@keyframes xv-mu-res3{0%{opacity:0;transform:translateX(6px)}88%{opacity:0;transform:translateX(6px)}91%{opacity:1;transform:translateX(0px)}96.5%{opacity:1;transform:translateX(0px)}99.5%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g class="mu-cal"><g class=""><rect x="6" y="6" width="174" height="148" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></rect><text x="15" y="18" font-size="9" font-weight="700" letter-spacing="0.06em" fill="var(--xv-ink-soft)" dominant-baseline="central">FEBRUARY 2027</text><text x="171" y="18" font-size="9" fill="var(--xv-ink-soft)" text-anchor="end" dominant-baseline="central" class="xv-mono">New Delhi</text></g><text x="25.3" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">S</text><text x="47.9" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">M</text><text x="70.5" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">T</text><text x="93.1" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">W</text><text x="115.7" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">T</text><text x="138.3" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">F</text><text x="160.9" y="34" font-size="9" font-weight="700" fill="var(--xv-ink-soft)" text-anchor="middle" dominant-baseline="central">S</text><rect x="83.1" y="42.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d0-3 10s ease-out infinite both;opacity:1"></rect><rect x="105.7" y="62.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d0-11 10s ease-out infinite both;opacity:1"></rect><rect x="15.3" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d0-21 10s ease-out infinite both;opacity:1"></rect><rect x="37.9" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d0-22 10s ease-out infinite both;opacity:1"></rect><rect x="105.7" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d0-25 10s ease-out infinite both;opacity:1"></rect><rect x="128.3" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d0-26 10s ease-out infinite both;opacity:1"></rect><rect x="105.7" y="42.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d1-4 10s ease-out infinite both;opacity:0"></rect><rect x="105.7" y="62.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d1-11 10s ease-out infinite both;opacity:0"></rect><rect x="37.9" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d1-22 10s ease-out infinite both;opacity:0"></rect><rect x="105.7" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d1-25 10s ease-out infinite both;opacity:0"></rect><rect x="37.9" y="62.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d2-8 10s ease-out infinite both;opacity:0"></rect><rect x="128.3" y="62.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d2-12 10s ease-out infinite both;opacity:0"></rect><rect x="105.7" y="82.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d2-18 10s ease-out infinite both;opacity:0"></rect><rect x="128.3" y="82.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d2-19 10s ease-out infinite both;opacity:0"></rect><rect x="105.7" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d2-25 10s ease-out infinite both;opacity:0"></rect><rect x="128.3" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d2-26 10s ease-out infinite both;opacity:0"></rect><rect x="105.7" y="62.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d3-11 10s ease-out infinite both;opacity:0"></rect><rect x="128.3" y="62.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d3-12 10s ease-out infinite both;opacity:0"></rect><rect x="128.3" y="82.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d3-19 10s ease-out infinite both;opacity:0"></rect><rect x="37.9" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d3-22 10s ease-out infinite both;opacity:0"></rect><rect x="105.7" y="102.5" width="20" height="17" rx="4" fill="var(--xv-gold-soft)" stroke="var(--xv-gold)" stroke-width="1" class="mu-pop" style="animation:xv-mu-d3-25 10s ease-out infinite both;opacity:0"></rect><text x="47.9" y="51.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">1</text><text x="70.5" y="51.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">2</text><text x="93.1" y="51.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">3</text><text x="115.7" y="51.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">4</text><text x="138.3" y="51.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">5</text><text x="160.9" y="51.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">6</text><text x="25.
5233" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">7</text><text x="47.9" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">8</text><text x="70.5" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">9</text><text x="93.1" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">10</text><text x="115.7" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">11</text><text x="138.3" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">12</text><text x="160.9" y="71.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">13</text><text x="25.3" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">14</text><text x="47.9" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">15</text><text x="70.5" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">16</text><text x="93.1" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">17</text><text x="115.7" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">18</text><text x="138.3" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">19</text><text x="160.9" y="91.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">20</text><text x="25.3" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">21</text><text x="47.9" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">22</text><text x="70.5" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">23</text><text x="93.1" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">24</text><text x="115.7" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">25</text><text x="138.3" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">26</text><text x="160.9" y="111.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">27</text><text x="25.3" y="131.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central" class="xv-mono">28</text><g class="mu-pop" style="animation:xv-mu-pick0 10s ease-out infinite both;opacity:1"><rect x="104.7" y="61.5" width="22" height="19" rx="5" fill="var(--xv-accent)"></rect><text x="115.7" y="71.5" font-size="9.5" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono">11</text></g><g class="mu-pop" style="animation:xv-mu-pick1 10s ease-out infinite both;opacity:0"><rect x="36.9" y="101.5" width="22" height="19" rx="5" fill="var(--xv-accent)"></rect><text x="47.9" y="111.5" font-size="9.5" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono">22</text></g><g class="mu-pop" style="animation:xv-mu-pick2 10s ease-out infinite both;opacity:0"><rect x="127.3" y="81.5" width="22" height="19" rx="5" fill="var(--xv-accent)"></rect><text x="138.3" y="91.5" font-size="9.5" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono">19</text></g><g class="mu-pop" style="animation:xv-mu-pick3 10s ease-out infinite both;opacity:0"><rect x="127.3" y="61.5" width="22" height="19" rx="5" fill="var(--xv-accent)"></rect><text x="138.3" y="71.5" font-size="9.5" font-weight="800" fill="var(--xv-on-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono">12</text></g></g><text x="190" y="38" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">EVENT</text><text x="190" y="83" font-size="9" font-weight="700" letter-spacing="0.08em" fill="var(--xv-ink-soft)" dominant-baseline="central">BEST MUHURTA</text><g><g style="animation:xv-mu-ev0 10s ease-out infinite both;opacity:1"><rect x="190" y="49" width="140" height="20" rx="10" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><g fill="none" stroke="var(--xv-accent)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"><circle cx="200.8" cy="59.5" r="3.4"></circle><circle cx="205.2" cy="59.5" r="3.4"></circle></g><text x="214" y="59" font-size="11" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Marriage</text><text x="8" y="166" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">POST /monthly_muhurta/marriage</text><text x="330" y="166" font-size="9" fill="var(--xv-gold)" font-weight="700" text-anchor="end" dominant-baseline="central">6 auspicious dates</text></g><g style="animation:xv-mu-res0 10s ease-out infinite both;opacity:1"><text x="190" y="98" font-size="12" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Thu, 11 Feb 2027</text><rect x="190" y="106" width="101.8" height="19" rx="9.5" fill="var(--xv-accent)"></rect><text x="198" y="115.5" font-size="11" font-weight="700" fill="var(--xv-on-accent)" dominant-baseline="central" class="xv-mono">11:42 – 13:37</text><text x="190" y="135" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Revati nakshatra</text><text x="190" y="147" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Vrishabha lagna · Shukla 5</text></g></g><g><g style="animation:xv-mu-ev1 10s ease-out infinite both;opacity:0"><rect x="190" y="49" width="140" height="20" rx="10" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><path fill="none" stroke="var(--xv-accent)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round" d="M 198.5 59 L 203 54.5 L 207.5 59 M 199.8 58 V 63 H 206.2 V 58 M 202 63 V 60.5 H 204 V 63"></path><text x="214" y="59" font-size="11" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Griha Pravesh</text><text x="8" y="166" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">POST /monthly_muhurta/griha_pravesh</text><text x="330" y="166" font-size="9" fill="var(--xv-gold)" font-weight="700" text-anchor="end" dominant-baseline="central">4 auspicious dates</text></g><g style="animation:xv-mu-res1 10s ease-out infinite both;opacity:0"><text x="190" y="98" font-size="12" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Mon, 22 Feb 2027</text><rect x="190" y="106" width="101.8" height="19" rx="9.5" fill="var(--xv-accent)"></rect><text x="198" y="115.5" font-size="11" font-weight="700" fill="var(--xv-on-accent)" dominant-baseline="central" class="xv-mono">11:55 – 12:54</text><text x="190" y="135" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Uttara Phalguni</text><text x="190" y="147" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Vrishabha lagna · Krishna 2</text></g></g><g><g style="animation:xv-mu-ev2 10s ease-out infinite both;opacity:0"><rect x="190" y="49" width="140" height="20" rx="10" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><g fill="none" stroke="var(--xv-accent)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"><path d="M 198 61 V 58.5 L 200 55.5 H 205.5 L 208 58.5 V 61 Z"></path><circle cx="200.4" cy="61.6" r="1.2"></circle><circle cx="205.6" cy="61.6" r="1.2"></circle></g><text x="214" y="59" font-size="11" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Vehicle purchase</text><text x="8" y="166" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">POST /monthly_muhurta/vehicle_purchase</text><text x="330" y="166" font-size="9" fill="var(--xv-gold)" font-weight="700" text-anchor="end" dominant-baseline="central">6 auspicious dates</text></g><g style="animation:xv-mu-res2 10s ease-out infinite both;opacity:0"><text x="190" y="98" font-size="12" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Fri, 19 Feb 2027</text><rect x="190" y="106" width="101.8" height="19" rx="9.5" fill="var(--xv-accent)"></rect><text x="198" y="115.5" font-size="11" font-weight="700" fill="var(--xv-on-accent)" dominant-baseline="central" class="xv-mono">09:35 – 11:10</text><text x="190" y="135" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Pushya nakshatra</text><text x="190" y="147" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Mesha lagna · Shukla 13</text></g></g><g><g style="animation:xv-mu-ev3 10s ease-out infinite both;opacity:0"><rect x="190" y="49" width="140" height="20" rx="10" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></rect><g fill="none" stroke="var(--xv-accent)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"><rect x="198" y="57" width="10" height="7" rx="1.2"></rect><path d="M 201 57 V 55 H 205 V 57 M 198 60 H 208"></path></g><text x="214" y="59" font-size="11" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Business start</text><text x="8" y="166" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">POST /monthly_muhurta/business_start</text><text x="330" y="166" font-size="9" fill="var(--xv-gold)" font-weight="700" text-anchor="end" dominant-baseline="central">5 auspicious dates</text></g><g style="animation:xv-mu-res3 10s ease-out infinite both;opacity:0"><text x="190" y="98" font-size="12" font-weight="800" fill="var(--xv-ink)" dominant-baseline="central">Fri, 12 Feb 2027</text><rect x="190" y="106" width="101.8" height="19" rx="9.5" fill="var(--xv-accent)"></rect><text x="198" y="115.5" font-size="11" font-weight="700" fill="var(--xv-on-accent)" dominant-baseline="central" class="xv-mono">11:38 – 13:34</text><text x="190" y="135" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Ashwini nakshatra</text><text x="190" y="147" font-size="9" fill="var(--xv-ink-soft)" dominant-baseline="central">Vrishabha lagna · Shukla 6</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
524              text-base md:text-lg">Muhurta &amp; Panchang API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
525              line-clamp-2">Auspicious dates and time windows for 18 life events, plus daily panchang — tithi, nakshatra, yoga, and more.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:825ms">
525<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
526          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
527          transition-all duration-500 p-3 flex
528          flex-col md:flex-row
529          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
530              transition-transform duration-700 group-hover:scale-[1.03]
531              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="chat" class="xv-frame  "><style>[data-xv="chat"] .ch-cover{transform-box:fill-box;transform-origin:right center}
532[data-xv="chat"] .ch-pop{transform-box:fill-box;transform-origin:center}
533[data-xv="chat"] .ch-chip rect{transition:stroke-opacity .35s ease}
534.group\/card:hover [data-xv="chat"] .ch-chip rect{stroke-opacity:1}
535@keyframes xv-ch-user{0%{opacity:0;transform:translateY(6px)}2%{opacity:0;transform:translateY(6px)}6%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(6px)}100%{opacity:0;transform:translateY(6px)}}
536@keyframes xv-ch-typing{0%{opacity:0}9.5%{opacity:0}11.5%{opacity:1}19%{opacity:1}20.5%{opacity:0}100%{opacity:0}}
537@keyframes xv-ch-dot0{0%{transform:translateY(0px)}10.5%{transform:translateY(0px)}11.9%{transform:translateY(-2.5px)}13.3%{transform:translateY(0px)}14.7%{transform:translateY(0px)}16.1%{transform:translateY(-2.5px)}17.5%{transform:translateY(0px)}100%{transform:translateY(0px)}}
538@keyframes xv-ch-dot1{0%{transform:translateY(0px)}11.7%{transform:translateY(0px)}13.1%{transform:translateY(-2.5px)}14.5%{transform:translateY(0px)}15.9%{transform:translateY(0px)}17.3%{transform:translateY(-2.5px)}18.7%{transform:translateY(0px)}100%{transform:translateY(0px)}}
539@keyframes xv-ch-dot2{0%{transform:translateY(0px)}12.9%{transform:translateY(0px)}14.3%{transform:translateY(-2.5px)}15.7%{transform:translateY(0px)}17.1%{transform:translateY(0px)}18.5%{transform:translateY(-2.5px)}19.9%{transform:translateY(0px)}100%{transform:translateY(0px)}}
540@keyframes xv-ch-answer{0%{opacity:0;transform:translateY(4px)}19.5%{opacity:0;transform:translateY(4px)}22.5%{opacity:1;transform:translateY(0px)}91%{opacity:1;transform:translateY(0px)}95%{opacity:0;transform:translateY(4px)}100%{opacity:0;transform:translateY(4px)}}
541@keyframes xv-ch-line0{0%{transform:scaleX(1)}22%{transform:scaleX(1)}29.5%{transform:scaleX(0)}100%{transform:scaleX(0)}}
542@keyframes xv-ch-line1{0%{transform:scaleX(1)}29.5%{transform:scaleX(1)}36.5%{transform:scaleX(0)}100%{transform:scaleX(0)}}
543@keyframes xv-ch-line2{0%{transform:scaleX(1)}36.5%{transform:scaleX(1)}44.5%{transform:scaleX(0)}100%{transform:scaleX(0)}}
544@keyframes xv-ch-label{0%{opacity:0}46%{opacity:0}49%{opacity:1}91%{opacity:1}95%{opacity:0}100%{opacity:0}}
545@keyframes xv-ch-chip0{0%{opacity:0;transform:scale(0.7)}48%{opacity:0;transform:scale(0.7)}50%{opacity:1;transform:scale(1.06)}51.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
546@keyframes xv-ch-chip1{0%{opacity:0;transform:scale(0.7)}50%{opacity:0;transform:scale(0.7)}52%{opacity:1;transform:scale(1.06)}53.5%{opacity:1;transform:scale(1)}91%{opacity:1;transform:scale(1)}95%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><circle cx="17" cy="18" r="11" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-width="1"></circle><path d="M 17 12 Q 17 18 23 18 Q 17 18 17 24 Q 17 18 11 18 Q 17 18 17 12 Z" fill="var(--xv-accent)"></path><circle cx="25" cy="26" r="2.6" fill="var(--xv-good)" stroke="var(--xv-wash)" stroke-width="1.2"></circle><text x="34" y="13" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">Astrologer</text><text x="34" y="25" font-size="9.5" fill="var(--xv-ink-soft)" dominant-baseline="central">AI · reads your birth chart</text></g><g style="animation:xv-ch-user 10s ease-out infinite both"><path d="M 149 50 H 315 Q 324 50 324 59 V 67 Q 324 70 321 70 H 149 Q 140 70 140 61 V 59 Q 140 50 149 50 Z" fill="var(--xv-accent)"></path><text x="151" y="60" font-size="10" font-weight="500" fill="var(--xv-on-accent)" dominant-baseline="central">Is this a good year to change jobs?</text></g><g style="animation:xv-ch-typing 10s ease-out infinite both;opacity:0"><path d="M 15 78 H 39 Q 48 78 48 87 V 89 Q 48 98 39 98 H 9 Q 6 98 6 95 V 87 Q 6 78 15 78 Z" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></path><circle cx="18" cy="88" r="2.2" fill="var(--xv-ink-soft)" style="animation:xv-ch-dot0 10s ease-in-out infinite both"></circle><circle cx="27" cy="88" r="2.2" fill="var(--xv-ink-soft)" style="animation:xv-ch-dot1 10s ease-in-out infinite both"></circle><circle cx="36" cy="88" r="2.2" fill="var(--xv-ink-soft)" style="animation:xv-ch-dot2 10s ease-in-out infinite both"></circle></g><g style="animation:xv-ch-answer 10s ease-out infinite both"><path d="M 15 78 H 253 Q 262 78 262 87 V 120 Q 262 129 253 129 H 9 Q 6 129 6 126 V 87 Q 6 78 15 78 Z" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></path><text x="16" y="91" font-size="10.5" fill="var(--xv-ink)" dominant-baseline="central"><tspan font-weight="400">
546Yes — a strong window. Jupiter transits your</tspan></text><text x="16" y="104" font-size="10.5" fill="var(--xv-ink)" dominant-baseline="central"><tspan font-weight="700" fill="var(--xv-accent)">10th house of career</tspan><tspan font-weight="400"> from </tspan><tspan font-weight="700" fill="var(--xv-accent)">30 Jun 2026</tspan><tspan font-weight="400"> to</tspan></text><text x="16" y="117" font-size="10.5" fill="var(--xv-ink)" dominant-baseline="central"><tspan font-weight="700" fill="var(--xv-accent)">26 Jul 2027</tspan><tspan font-weight="400"> — a once-in-12-years push to move.</tspan></text><rect x="14" y="84" width="244" height="14" fill="var(--xv-surface)" class="ch-cover" style="animation:xv-ch-line0 10s linear infinite both;transform:scaleX(0)"></rect><rect x="14" y="97" width="244" height="14" fill="var(--xv-surface)" class="ch-cover" style="animation:xv-ch-line1 10s linear infinite both;transform:scaleX(0)"></rect><rect x="14" y="110" width="244" height="14" fill="var(--xv-surface)" class="ch-cover" style="animation:xv-ch-line2 10s linear infinite both;transform:scaleX(0)"></rect></g><g><g style="animation:xv-ch-label 10s ease-out infinite both"><circle cx="11" cy="140" r="4.5" fill="var(--xv-good)"></circle><path d="M 8.9 140.2 L 10.5 141.8 L 13.2 138.6" fill="none" stroke="var(--xv-surface)" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"></path><text x="20" y="140" font-size="9.5" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">Grounded in your chart</text></g><g class="ch-chip ch-pop" style="animation:xv-ch-chip0 10s ease-out infinite both"><rect x="6" y="149" width="110" height="17" rx="8.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="18" y="157.5" font-size="11" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♃︎</text><text x="27" y="157.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">10th house transit</text></g><g class="ch-chip ch-pop" style="animation:xv-ch-chip1 10s ease-out infinite both"><rect x="122" y="149" width="92" height="17" rx="8.5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="134" y="157.5" font-size="11" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-glyph ">♏︎</text><text x="143" y="157.5" font-size="9.5" font-weight="600" fill="var(--xv-ink)" dominant-baseline="central">Scorpio rising</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
547              text-base md:text-lg">Chat API</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
548              line-clamp-2">A personal astrologer in your app — AI chat grounded in the user&#x27;s actual birth chart.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div><div class="lg:col-span-2 lg:row-span-1 sm:col-span-2  group bento-card-animation" style="animation-delay:880ms"><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-0 h-full relative overflow-hidden backdrop-blur-md bg-transparent
549          border-border-color rounded-xl hover:border-accent-primary/30 cursor-pointer
550          transition-all duration-500 p-3 flex
551          flex-col md:flex-row
552          hover:bg-secondary-bg/5 group/card"><div class="relative z-10 overflow-hidden rounded-lg
553              transition-transform duration-700 group-hover:scale-[1.03]
554              w-full h-[176px] md:h-full md:w-[55%] flex-shrink-0"><div aria-hidden="true" data-xv="mcp" class="xv-frame  "><style>[data-xv="mcp"] .mc-draw{stroke-dasharray:100 100}
555[data-xv="mcp"] .mc-pop{transform-box:fill-box;transform-origin:center}
556[data-xv="mcp"] .mc-server{transition:stroke-width .35s ease}
557.group\/card:hover [data-xv="mcp"] .mc-server{stroke-width:1.8}
558@keyframes xv-mc-q{0%{opacity:0;transform:translateY(5px)}2.222%{opacity:0;transform:translateY(5px)}6.667%{opacity:1;transform:translateY(0px)}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}
559@keyframes xv-mc-call{0%{opacity:0;transform:translateX(-6px)}9.444%{opacity:0;transform:translateX(-6px)}13.333%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(-6px)}100%{opacity:0;transform:translateX(-6px)}}
560@keyframes xv-mc-req{0%{stroke-dashoffset:100}13.333%{stroke-dashoffset:100}17.222%{stroke-dashoffset:0}90%{stroke-dashoffset:0}94.444%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
561@keyframes xv-mc-reqp{0%{opacity:0;transform:translateX(0px)}13.333%{opacity:0;transform:translateX(0px)}13.889%{opacity:1;transform:translateX(0px)}17.222%{opacity:1;transform:translateX(38px)}18.111%{opacity:0;transform:translateX(38px)}100%{opacity:0;transform:translateX(38px)}}
562@keyframes xv-mc-pulse{0%{opacity:0;transform:scale(1)}17.222%{opacity:0.9;transform:scale(1)}23.889%{opacity:0;transform:scale(1.18)}100%{opacity:0;transform:scale(1.18)}}
563@keyframes xv-mc-busy{0%{opacity:0.35}17.222%{opacity:0.35}18.333%{opacity:1}20%{opacity:0.35}21.111%{opacity:1}22.778%{opacity:0.35}22.778%{opacity:1}100%{opacity:1}}
564@keyframes xv-mc-reqh{0%{opacity:0}
56416.111%{opacity:0}17.222%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
565@keyframes xv-mc-res{0%{stroke-dashoffset:100}22.778%{stroke-dashoffset:100}26.667%{stroke-dashoffset:0}90%{stroke-dashoffset:0}94.444%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}
566@keyframes xv-mc-resh{0%{opacity:0}25.556%{opacity:0}26.667%{opacity:1}90%{opacity:1}94.444%{opacity:0}100%{opacity:0}}
567@keyframes xv-mc-resp{0%{opacity:0;transform:translateX(0px)}22.778%{opacity:0;transform:translateX(0px)}23.333%{opacity:1;transform:translateX(0px)}26.667%{opacity:1;transform:translateX(-21px)}27.556%{opacity:0;transform:translateX(-21px)}100%{opacity:0;transform:translateX(-21px)}}
568@keyframes xv-mc-result{0%{opacity:0;transform:translateX(6px)}26.111%{opacity:0;transform:translateX(6px)}30%{opacity:1;transform:translateX(0px)}90%{opacity:1;transform:translateX(0px)}94.444%{opacity:0;transform:translateX(6px)}100%{opacity:0;transform:translateX(6px)}}
569@keyframes xv-mc-answer{0%{opacity:0;transform:translateY(5px)}32.778%{opacity:0;transform:translateY(5px)}37.222%{opacity:1;transform:translateY(0px)}90%{opacity:1;transform:translateY(0px)}94.444%{opacity:0;transform:translateY(5px)}100%{opacity:0;transform:translateY(5px)}}
570@keyframes xv-mc-chip0{0%{opacity:0;transform:scale(0.7)}37.222%{opacity:0;transform:scale(0.7)}39.444%{opacity:1;transform:scale(1.06)}41.111%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
571@keyframes xv-mc-chip1{0%{opacity:0;transform:scale(0.7)}39.444%{opacity:0;transform:scale(0.7)}41.667%{opacity:1;transform:scale(1.06)}43.333%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
572@keyframes xv-mc-node0{0%{opacity:0;transform:scale(0.3)}2.222%{opacity:0;transform:scale(0.3)}5.556%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(0.3)}100%{opacity:0;transform:scale(0.3)}}
573@keyframes xv-mc-node1{0%{opacity:0;transform:scale(0.3)}9.444%{opacity:0;transform:scale(0.3)}12.778%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(0.3)}100%{opacity:0;transform:scale(0.3)}}
574@keyframes xv-mc-node2{0%{opacity:0;transform:scale(0.3)}26.111%{opacity:0;transform:scale(0.3)}29.444%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(0.3)}100%{opacity:0;transform:scale(0.3)}}
575@keyframes xv-mc-node3{0%{opacity:0;transform:scale(0.3)}32.778%{opacity:0;transform:scale(0.3)}36.111%{opacity:1;transform:scale(1)}90%{opacity:1;transform:scale(1)}94.444%{opacity:0;transform:scale(0.3)}100%{opacity:0;transform:scale(0.3)}}
576@keyframes xv-mc-rail{0%{stroke-dashoffset:100}2.222%{stroke-dashoffset:100}32.778%{stroke-dashoffset:0}90%{stroke-dashoffset:0}94.444%{stroke-dashoffset:100}100%{stroke-dashoffset:100}}</style><svg viewBox="0 0 330 174" preserveAspectRatio="xMidYMid meet" class="xv-stage " xmlns="http://www.w3.org/2000/svg"><g><path d="M 12 8.5 Q 12 14 17.5 14 Q 12 14 12 19.5 Q 12 14 6.5 14 Q 12 14 12 8.5 Z" fill="var(--xv-accent)"></path><text x="21" y="14" font-size="10" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central">AI assistant</text><line x1="82" y1="9" x2="82" y2="19" stroke="var(--xv-line-strong)" stroke-width="1"></line><text x="88" y="14" font-size="9.3" fill="var(--xv-ink-soft)" dominant-baseline="central">Claude · ChatGPT · any LLM</text></g><g><line x1="12" y1="41" x2="12" y2="132" stroke="var(--xv-line)" stroke-width="1.5"></line><line x1="12" y1="41" x2="12" y2="132" stroke="var(--xv-accent)" stroke-opacity="0.6" stroke-width="1.5" pathLength="100" class="mc-draw" style="animation:xv-mc-rail 9s linear infinite both;stroke-dashoffset:0"></line><g><circle cx="12" cy="41" r="3.6" fill="var(--xv-wash)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="12" cy="41" r="3.6" fill="var(--xv-accent)" class="mc-pop" style="animation:xv-mc-node0 9s ease-out infinite both"></circle></g><g><circle cx="12" cy="73" r="3.6" fill="var(--xv-wash)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="12" cy="73" r="3.6" fill="var(--xv-accent)" class="mc-pop" style="animation:xv-mc-node1 9s ease-out infinite both"></circle></g><g><circle cx="12" cy="105" r="3.6" fill="var(--xv-wash)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="12" cy="105" r="3.6" fill="var(--xv-accent)" class="mc-pop" style="animation:xv-mc-node2 9s ease-out infinite both"></circle></g><g><circle cx="12" cy="132" r="3.6" fill="var(--xv-wash)" stroke="var(--xv-line-strong)" stroke-width="1"></circle><circle cx="12" cy="132" r="3.6" fill="var(--xv-accent)" class="mc-pop" style="animation:xv-mc-node3 9s ease-out infinite both"></circle></g></g><g style="animation:xv-mc-q 9s ease-out infinite both"><rect x="24" y="28" width="158" height="26" rx="7" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="31" y="36" font-size="9.5" font-weight="500" fill="var(--xv-ink)" dominant-baseline="central">Where was the Moon at 6:14 am,</text><text x="31" y="46.5" font-size="9.5" font-weight="500" fill="var(--xv-ink)" dominant-baseline="central">12 March 1991, Pune?</text></g><g style="animation:xv-mc-call 9s ease-out infinite both"><rect x="24" y="60" width="188" height="26" rx="5" fill="var(--xv-surface)" stroke="var(--xv-line)" stroke-width="1"></rect><text x="31" y="68" font-size="9.3" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">astrology.<tspan fill="var(--xv-ink)" font-weight="700">get_planet_positions</tspan>(</text><text x="42.16" y="78.5" font-size="9.3" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">{ <tspan fill="var(--xv-ink)">date, time, place</tspan> })</text></g><g><line x1="212" y1="73" x2="254" y2="73" stroke="var(--xv-line)" stroke-width="1.2"></line><path d="M 212 73 H 254" fill="none" stroke="var(--xv-accent)" stroke-width="1.2" pathLength="100" class="mc-draw" style="animation:xv-mc-req 9s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 249 69.8 L 254 73 L 249 76.2" fill="none" stroke="var(--xv-accent)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round" style="animation:xv-mc-reqh 9s ease-out infinite both"></path><circle cx="214" cy="73" r="2.6" fill="var(--xv-accent)" style="animation:xv-mc-reqp 9s ease-in-out infinite both;opacity:0"></circle></g><g><rect x="256" y="56" width="68" height="66" rx="8" fill="none" stroke="var(--xv-accent)" stroke-width="1.5" class="mc-pop" style="animation:xv-mc-pulse 9s ease-out infinite both;opacity:0"></rect><rect x="256" y="56" width="68" height="66" rx="8" fill="var(--xv-surface)" stroke="var(--xv-accent)" stroke-width="1.1" class="mc-server"></rect><g><rect x="273" y="65" width="34" height="7.5" rx="2" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.9"></rect>
576<circle cx="278" cy="68.75" r="1.4" fill="var(--xv-good)" style="animation:xv-mc-busy 9s linear infinite both"></circle><line x1="286" y1="68.75" x2="302" y2="68.75" stroke="var(--xv-ink-soft)" stroke-width="0.8"></line></g><g><rect x="273" y="75" width="34" height="7.5" rx="2" fill="none" stroke="var(--xv-ink-soft)" stroke-width="0.9"></rect><circle cx="278" cy="78.75" r="1.4" fill="var(--xv-good)" style="animation:xv-mc-busy 9s linear infinite both"></circle><line x1="286" y1="78.75" x2="302" y2="78.75" stroke="var(--xv-ink-soft)" stroke-width="0.8"></line></g><text x="290" y="97" font-size="9.5" font-weight="700" fill="var(--xv-ink)" text-anchor="middle" dominant-baseline="central">MCP server</text><text x="290" y="110" font-size="9.3" fill="var(--xv-accent)" text-anchor="middle" dominant-baseline="central" class="xv-mono">astrology</text></g><g><line x1="256" y1="105" x2="231" y2="105" stroke="var(--xv-line)" stroke-width="1.2"></line><path d="M 256 105 H 231" fill="none" stroke="var(--xv-accent)" stroke-width="1.2" pathLength="100" class="mc-draw" style="animation:xv-mc-res 9s ease-in-out infinite both;stroke-dashoffset:0"></path><path d="M 236 101.8 L 231 105 L 236 108.2" fill="none" stroke="var(--xv-accent)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round" style="animation:xv-mc-resh 9s ease-out infinite both"></path><circle cx="254" cy="105" r="2.6" fill="var(--xv-accent)" style="animation:xv-mc-resp 9s ease-in-out infinite both;opacity:0"></circle></g><g style="animation:xv-mc-result 9s ease-out infinite both"><rect x="24" y="92" width="205" height="26" rx="5" fill="var(--xv-accent-soft)" stroke="var(--xv-accent)" stroke-opacity="0.55" stroke-width="0.8"></rect><text x="31" y="100" font-size="9.3" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">{&quot;name&quot;:<tspan fill="var(--xv-ink)">&quot;Moon&quot;</tspan>,&quot;sign&quot;:<tspan fill="var(--xv-accent)" font-weight="700">&quot;Capricorn&quot;</tspan>,</text><text x="36.58" y="110.5" font-size="9.3" fill="var(--xv-ink-soft)" dominant-baseline="central" class="xv-mono">&quot;normDegree&quot;:<tspan fill="var(--xv-accent)" font-weight="700">6.3728</tspan>}</text></g><g><text x="24" y="132" font-size="10.5" font-weight="700" fill="var(--xv-ink)" dominant-baseline="central" style="animation:xv-mc-answer 9s ease-out infinite both">The Moon was at <tspan fill="var(--xv-accent)">6°22′22″ Capricorn</tspan>.</text><g class="mc-pop" style="animation:xv-mc-chip0 9s ease-out infinite both"><rect x="24" y="145" width="134" height="16" rx="8" fill="var(--xv-good-soft)" stroke="var(--xv-good)" stroke-opacity="0.55" stroke-width="0.8"></rect><path d="M 31.5 153.2 L 33.8 155.5 L 37.8 150.8" fill="none" stroke="var(--xv-good)" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path><text x="43" y="153" font-size="9.3" font-weight="600" fill="var(--xv-good)" dominant-baseline="central">calculated, not guessed</text></g><g class="mc-pop" style="animation:xv-mc-chip1 9s ease-out infinite both"><rect x="164" y="145" width="86" height="16" rx="8" fill="var(--xv-surface)" stroke="var(--xv-line-strong)" stroke-width="0.8"></rect><text x="171" y="153" font-size="9.3" font-weight="600" fill="var(--xv-ink-soft)" dominant-baseline="central">sidereal · Lahiri</text></g></g></svg></div></div><div class="relative z-10 flex flex-col justify-end md:flex-1 p-3 md:p-4 py-2"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text font-black leading-tight mb-1
577              text-base md:text-lg">MCP Server</h3><p class="text-sm leading-normal text-secondary-text leading-snug opacity-80
578              line-clamp-2">Connect Claude, ChatGPT, or any LLM to real ephemeris data. No hallucinated charts.</p></div><div class="bento-expand-icon absolute top-3 right-3 z-30 w-7 h-7 rounded-full flex items-center justify-center border border-primary-text dark:border-accent-primary text-primary-text dark:text-accent-primary backdrop-blur-sm"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg></div></div></div></div></div></div></section><section id="" class="bg-primary-bg text-center pt-16 md:pt-28 overflow-hidden"><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 "><div class="flex flex-col md:flex-row items-end justify-between gap-4 mb-20 md:mb-32"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:translateX(-30px)" class="flex-1"><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-4xl md:text-6xl font-black mb-6">Add a revenue stream in days, not months.</h2><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 leading-relaxed">Building astrology from scratch means months of edge cases, versioning headaches, and data maintenance. AstrologyAPI gives you production-grade engines on day one.</p></div></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:20ms;opacity:0;transform:translateY(30px)" class=""><div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-32 md:mb-40"><div class="flex flex-col space-y-3 bg-primary-bg rounded-md border border-border-color p-2 px-4 transition-all duration-300 hover:border-accent-primary/30 hover:bg-accent-surface/20"><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest text-[10px]">ROI</p><div class="text-4xl lg:text-5xl font-black text-primary-text tabular-nums font-plus_jakarta_sans">384%</div><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 text-[13px] leading-relaxed">Customer projects drive this return over three years by unlocking efficiency gains.</p></div><div class="flex flex-col space-y-3 bg-primary-bg rounded-md border border-border-color p-2 px-4 transition-all duration-300 hover:border-accent-primary/30 hover:bg-accent-surface/20"><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest text-[10px]">REVENUE INCREASE</p><div class="text-4xl lg:text-5xl font-black text-primary-text tabular-nums font-plus_jakarta_sans">$3.9M</div><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 text-[13px] leading-relaxed">Consolidated astrology projects drove this in revenue gains by streamlining work.</p></div><div class="flex flex-col space-y-3 bg-primary-bg rounded-md border border-border-color p-2 px-4 transition-all duration-300 hover:border-accent-primary/30 hover:bg-accent-surface/20"><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest text-[10px]">HOURS SAVED</p><div class="text-4xl lg:text-5xl font-black text-primary-text tabular-nums font-plus_jakarta_sans">92,400</div><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 text-[13px] leading-relaxed">Organizations saved these hours with Astrology API, reducing manual work at scale.</p></div><div class="flex flex-col space-y-3 bg-primary-bg rounded-md border border-border-color p-2 px-4 transition-all duration-300 hover:border-accent-primary/30 hover:bg-accent-surface/20"><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest text-[10px]">PAYBACK</p><div class="text-4xl lg:text-5xl font-black text-primary-text tabular-nums font-plus_jakarta_sans">&lt; 6 MO</div><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 text-[13px] leading-relaxed">Customers reached payback in under six months, making it a proven investment.</p></div></div></div></div></section><section id="" class="bg-primary-bg relative z-10 overflow-hidden"><style>
579.sw-theme-ivory {
580  --sw-bg: #fbf7ef; --sw-raised: #ffffff; --sw-sunken: #f3eadb;
581  --sw-border: #e8dcc6;
581 --sw-line: #e6d9c2; --sw-text: #2e1d12; --sw-muted: #76604f;
582  --sw-accent: #a8481f; --sw-accent-ink: #fffaf2; --sw-accent-soft: #f6e4d4;
583  --sw-rose: #b3395c; --sw-sky: #2c6390; --sw-leaf: #3a7a4b; --sw-gold: #9a6a12;
584}
585.sw-theme-sage {
586  --sw-bg: #f2f5f0; --sw-raised: #ffffff; --sw-sunken: #e6ece2;
587  --sw-border: #d6dfd0; --sw-line: #d9e2d3; --sw-text: #16281d; --sw-muted: #536659;
588  --sw-accent: #2b6a4e; --sw-accent-ink: #f2fbf5; --sw-accent-soft: #dcebe1;
589  --sw-rose: #b3395c; --sw-sky: #2c6390; --sw-leaf: #2b6a4e; --sw-gold: #946510;
590}
591.sw-theme-dusk {
592  --sw-bg: #f9f2f5; --sw-raised: #ffffff; --sw-sunken: #f1e5eb;
593  --sw-border: #ebdbe3; --sw-line: #eadbe2; --sw-text: #33172a; --sw-muted: #775768;
594  --sw-accent: #a3365f; --sw-accent-ink: #fff6fa; --sw-accent-soft: #f5dfe8;
595  --sw-rose: #a3365f; --sw-sky: #3b5f9a; --sw-leaf: #3a7a4b; --sw-gold: #946510;
596}
597.sw-theme-midnight {
598  --sw-bg: #151a33; --sw-raised: #1f2749; --sw-sunken: #10142a;
599  --sw-border: #2c3563; --sw-line: #2e3868; --sw-text: #eef0fb; --sw-muted: #a8afd3;
600  --sw-accent: #e9c46a; --sw-accent-ink: #1a1a2e; --sw-accent-soft: rgba(233, 196, 106, 0.16);
601  --sw-rose: #f59ab4; --sw-sky: #93c5fd; --sw-leaf: #8fd8a8; --sw-gold: #e9c46a;
602}
603.sw-theme-ink {
604  --sw-bg: #12161b; --sw-raised: #1b2128; --sw-sunken: #0c0f13;
605  --sw-border: #28313b; --sw-line: #2c3540; --sw-text: #e8edf2; --sw-muted: #9aa7b4;
606  --sw-accent: #7fd0e0; --sw-accent-ink: #0a1518; --sw-accent-soft: rgba(127, 208, 224, 0.14);
607  --sw-rose: #f59ab4; --sw-sky: #7fd0e0; --sw-leaf: #8fd8a8; --sw-gold: #efc86e;
608}
609.dark .sw-theme-ivory {
610  --sw-bg: #18130e; --sw-raised: #241c14; --sw-sunken: #110d09;
611  --sw-border: #372b20; --sw-line: #3a2e22; --sw-text: #f3e9dc; --sw-muted: #b39f89;
612  --sw-accent: #eb9a63; --sw-accent-ink: #1a120b; --sw-accent-soft: rgba(235, 154, 99, 0.16);
613  --sw-rose: #f28aa6; --sw-sky: #8cc0e8; --sw-leaf: #8fcf9c; --sw-gold: #e9c46a;
614}
615.dark .sw-theme-sage {
616  --sw-bg: #0f1612; --sw-raised: #17221b; --sw-sunken: #0a100c;
617  --sw-border: #243429; --sw-line: #26372c; --sw-text: #e2eee6; --sw-muted: #98ad9f;
618  --sw-accent: #7cc49a; --sw-accent-ink: #0b1510; --sw-accent-soft: rgba(124, 196, 154, 0.15);
619  --sw-rose: #f28aa6; --sw-sky: #8cc0e8; --sw-leaf: #7cc49a; --sw-gold: #e9c46a;
620}
621.dark .sw-theme-dusk {
622  --sw-bg: #1a1016; --sw-raised: #26171f; --sw-sunken: #120a0f;
623  --sw-border: #3a2432; --sw-line: #3d2635; --sw-text: #f5e6ee; --sw-muted: #c1a1b2;
624  --sw-accent: #ec8fb4; --sw-accent-ink: #1e0f17; --sw-accent-soft: rgba(236, 143, 180, 0.15);
625  --sw-rose: #ec8fb4; --sw-sky: #9bb8ef; --sw-leaf: #8fcf9c; --sw-gold: #e9c46a;
626}
627.dark .sw-theme-midnight {
628  --sw-bg: #0f1328; --sw-raised: #1a2043; --sw-sunken: #0a0d1e; --sw-border: #252d57; --sw-line: #283061;
629}
630.dark .sw-theme-ink {
631  --sw-bg: #0c0f13; --sw-raised: #161c22; --sw-sunken: #07090c; --sw-border: #222a33; --sw-line: #252e38;
632}
633
634/* ------------------------------ marquee ------------------------------ */
635
636.wall-viewport {
637  --wall-fade-top: 48px;
638  --wall-fade-bottom: 96px;
639  height: 600px;
640  overflow: hidden;
641  overflow: clip; /* focus() must never scroll the wall itself */
642  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 var(--wall-fade-top), #000 calc(100% - var(--wall-fade-bottom)), transparent 100%);
643  mask-image: linear-gradient(to bottom, transparent 0, #000 var(--wall-fade-top), #000 calc(100% - var(--wall-fade-bottom)), transparent 100%);
644}
645@media (min-width: 1024px) {
646  .wall-viewport { height: 720px; }
647}
648.wall-track {
649  display: flex;
650  flex-direction: column;
651  will-change: transform;
652  animation: wallScroll var(--wall-duration, 60s) linear infinite;
653}
654.wall-track-down { animation-direction: reverse; }
655.wall-column:hover .wall-track,
656.wall-column:focus-within .wall-track,
657.wall-paused .wall-track,
658.wall-paused .wall-ticker-track {
659  animation-play-state: paused;
660}
661@keyframes wallScroll {
662  from { transform: translate3d(0, 0, 0); }
663  to { transform: translate3d(0, -50%, 0); }
664}
665.wall-copy {
666  display: flex;
667  flex-direction: column;
668  gap: 20px;
669  padding-bottom: 20px;
670}
671
672/* ------------------------------ card chrome ------------------------------ */
673
674.sw-card {
675  position: relative;
676  display: flex;
677  flex-direction: column;
678  gap: 14px;
679  padding: 16px 16px 0;
680  border-radius: 20px;
681  border: 1px solid var(--sw-border);
682  background: var(--sw-bg);
683  color: var(--sw-text);
684  font-size: 13px;
685  line-height: 1.45;
686  overflow: hidden;
687  box-shadow: 0 1px 2px rgba(20, 16, 40, 0.06), 0 18px 36px -20px rgba(20, 16, 40, 0.3);
688  transition: box-shadow 0.3s ease, border-color 0.3s ease;
689}
690.sw-card:hover,
691.sw-card:focus-within {
692  border-color: color-mix(in srgb, var(--sw-accent) 45%, var(--sw-border));
693  box-shadow: 0 1px 2px rgba(20, 16, 40, 0.08), 0 24px 44px -20px rgba(20, 16, 40, 0.38);
694}
695.dark .sw-card {
696  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.02), 0 24px 48px -24px rgba(0, 0, 0, 0.9);
697}
698.dark .sw-card:hover,
699.dark .sw-card:focus-within {
700  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.03), 0 28px 56px -24px rgba(0, 0, 0, 0.95);
701}
702.sw-card :focus { outline: none; }
703.sw-card :focus-visible {
704  outline: 2px solid var(--sw-accent);
705  outline-offset: 2px;
706}
707
708.sw-appbar { display: flex; align-items: center; gap: 8px;
708 min-height: 26px; }
709.sw-monogram {
710  display: inline-flex; align-items: center; justify-content: center;
711  width: 26px; height: 26px; border-radius: 8px; flex: none;
712  background: var(--sw-accent); color: var(--sw-accent-ink);
713  font-size: 12px; font-weight: 800; letter-spacing: -0.02em;
714}
715.sw-appname { font-size: 14px; font-weight: 700; letter-spacing: -0.01em; }
716.sw-appmeta { margin-left: auto; font-size: 11px; color: var(--sw-muted); white-space: nowrap; }
717
718.sw-muted { color: var(--sw-muted); }
719.sw-accent { color: var(--sw-accent); }
720.sw-label {
721  font-size: 11px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase;
722  color: var(--sw-muted);
723}
724.sw-title { font-size: 16px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.25; }
725.sw-num { font-variant-numeric: tabular-nums; }
726.sw-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
727.sw-panel {
728  background: var(--sw-raised);
729  border: 1px solid var(--sw-line);
730  border-radius: 14px;
731}
732.sw-well { background: var(--sw-sunken); border-radius: 12px; }
733.sw-hair { border-color: var(--sw-line); }
734
735/* Segmented control */
736.sw-seg { display: flex; gap: 2px; padding: 3px; border-radius: 11px; background: var(--sw-sunken); }
737.sw-seg-btn {
738  flex: 1; min-width: 0; height: 30px; padding: 0 8px; border-radius: 8px;
739  font-size: 12px; font-weight: 600; color: var(--sw-muted);
740  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
741  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
742}
743.sw-seg-btn:hover { color: var(--sw-text); }
744.sw-seg-btn[aria-pressed='true'],
745.sw-seg-btn[aria-selected='true'] {
746  background: var(--sw-raised); color: var(--sw-text);
747  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12), 0 0 0 1px var(--sw-line);
748}
749
750/* Buttons, inputs, chips */
751.sw-btn {
752  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
753  height: 36px; padding: 0 14px; border-radius: 10px;
754  font-size: 13px; font-weight: 700;
755  background: var(--sw-accent); color: var(--sw-accent-ink);
756  transition: filter 0.2s ease, transform 0.15s ease;
757}
758.sw-btn:hover { filter: brightness(1.06); }
759.sw-btn:active { transform: scale(0.98); }
760.sw-btn:disabled { opacity: 0.55; cursor: default; }
761.sw-input {
762  height: 36px; min-width: 0; padding: 0 12px; border-radius: 10px;
763  background: var(--sw-raised); color: var(--sw-text);
764  border: 1px solid var(--sw-line); font-size: 13px;
765  transition: border-color 0.2s ease;
766}
767.sw-input::placeholder { color: var(--sw-muted); }
768.sw-input:focus-visible { outline-offset: 0; }
769.sw-chip {
770  display: inline-flex; align-items: center; gap: 4px;
771  height: 24px; padding: 0 9px; border-radius: 999px;
772  font-size: 11px; font-weight: 600; white-space: nowrap;
773  background: var(--sw-accent-soft); color: var(--sw-accent);
774}
775.sw-chip-quiet { background: var(--sw-sunken); color: var(--sw-muted); }
776
777/* ---------------------------- powered-by strip ---------------------------- */
778
779.sw-footer {
780  position: relative;
781  height: 48px;
782  margin: 0 -16px;
783  border-top: 1px solid var(--sw-line);
784  font-size: 11px;
785}
786.sw-footer-layer {
787  position: absolute; inset: 0;
788  display: flex; align-items: center; gap: 8px;
789  padding: 0 16px;
790  transition: opacity 0.25s ease, transform 0.25s ease;
791}
792.sw-footer-meta { color: var(--sw-muted); }
793.sw-footer-api {
794  flex-direction: column; align-items: flex-start; justify-content: center; gap: 1px;
795  padding: 0 14px;
796  opacity: 0; transform: translateY(6px); background: var(--sw-accent-soft);
797}
798.sw-card:hover .sw-footer-meta,
799.sw-card:focus-within .sw-footer-meta { opacity: 0; transform: translateY(-6px); }
800.sw-card:hover .sw-footer-api,
801.sw-card:focus-within .sw-footer-api { opacity: 1; transform: none; }
802@media (hover: none) {
803  .sw-footer-meta { display: none; }
804  .sw-footer-api { opacity: 1; transform: none; }
805}
806.sw-api-tag {
807  flex: none; font-size: 11px; font-weight: 700; line-height: 1.3; color: var(--sw-accent);
808}
809.sw-api-links { display: flex; align-items: center; gap: 12px; min-width: 0; max-width: 100%; }
810.sw-api-link {
811  display: inline-block; min-width: 0; max-width: 100%;
812  font-size: 11px; font-weight: 600; letter-spacing: -0.01em;
813  color: var(--sw-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
814  text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 3px;
815  transition: text-decoration-color 0.2s ease;
816}
817.sw-api-link:hover { text-decoration-color: currentColor; }
818
819/* ------------------------------ motion bits ------------------------------ */
820
821.sw-fade-swap { animation: swFadeSwap 0.35s cubic-bezier(0.22, 1, 0.36, 1) both; }
822@keyframes swFadeSwap {
823  from { opacity: 0; transform: translateY(5px); }
824  to { opacity: 1; transform: none; }
825}
826.sw-ease { transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
827.wall-ticker-track {
828  display: inline-flex; white-space: nowrap;
829  animation: wallTicker 36s linear infinite;
830}
831@keyframes wallTicker {
832  from { transform: translateX(0); }
833  to { transform: translateX(-50%); }
834}
835.sw-typing-dot { animation: swTypingDot 1s ease-in-out infinite; }
836.sw-typing-dot:nth-child(2) { animation-delay: 0.15s; }
837.sw-typing-dot:nth-child(3) { animation-delay: 0.3s; }
838@keyframes swTypingDot {
839  0%, 100% { opacity: 0.3; transform: translateY(0); }
840  50% { opacity: 1; transform: translateY(-3px); }
841}
842.sw-draw-line {
843  stroke-dasharray: 400;
844  stroke-dashoffset: 400;
845  animation: swDraw 0.9s ease forwards;
846}
847@keyframes swDraw { to { stroke-dashoffset: 0; } }
848
849
850/* ------------------------------ tarot ------------------------------ */
851.tarot-scene { perspective: 700px; color: var(--sw-accent); }
852.tarot-inner {
853  position: relative; display: block; width: 100%; height: 100%;
854  transform-style: preserve-3d; transform: rotateY(180deg);
855  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
856}
857.tarot-inner.is-up { transform: rotateY(0deg); }
858.tarot-face {
859  position: absolute; inset: 0; display: block; border-radius: 12px;
860  backface-visibility: hidden; -webkit-backface-visibility: hidden;
861  border: 1px solid var(--sw-line);
862  background: linear-gradient(165deg, var(--sw-raised), var(--sw-sunken));
863  padding: 4px;
864}
865.tarot-back { transform: rotateY(180deg); }
866.tarot-scene:hover .tarot-inner.is-up { transform: rotateY(-8deg); }
867
868/* ----------------------------- widget bits ----------------------------- */
869.horo-sign {
870  background: var(--sw-raised); color: var(--sw-accent);
871  box-shadow: inset 0 0 0 1px var(--sw-line);
872  transition: background-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
873}
874.horo-sign:hover { box-shadow: inset 0 0 0 1px var(--sw-accent); }
875.horo-sign[aria-checked='true'] {
876  background: var(--sw-accent); color: var(--sw-accent-ink); box-shadow: none;
877}
878.horo-sign:active { transform: scale(0.94); }
879
880.match-avatar {
881  display: inline-flex; align-items: center; justify-content: center; flex: none;
882  width: 32px; height: 32px; border-radius: 999px;
883  background: var(--sw-accent-soft); color: var(--sw-accent);
884  font-size: 13px; font-weight: 800;
885}
886
887.kundli-chart {
888  border-radius: 6px;
889  background: var(--sw-raised);
890}
891.kundli-num { font-size: 11px; font-weight: 600; color: var(--sw-muted); pointer-events: none; }
892.kundli-asc {
893  font-size: 11px; font-weight: 700; color: var(--sw-accent);
894  letter-spacing: 0.04em; pointer-events: none;
895}
896.kundli-planet {
897  display: inline-flex; align-items: center; justify-content: center;
898  min-width: 26px; height: 22px; padding: 0 5px; border-radius: 7px;
899  font-size: 12px; font-weight: 800; color: var(--sw-text);
900  transition: left 0.7s cubic-bezier(0.22, 1, 0.36, 1), top 0.7s cubic-bezier(0.22, 1, 0.36, 1),
901    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.2s ease, color 0.2s ease;
902}
903.kundli-planet:hover { background: var(--sw-accent-soft); }
904.kundli-planet[aria-pressed='true'] { background: var(--sw-accent); color: var(--sw-accent-ink); }
905.kundli-badge {
906  display: inline-flex; align-items: center; justify-content: center; flex: none;
907  width: 36px; height: 36px; border-radius: 10px;
908  background: var(--sw-accent-soft); color: var(--sw-accent);
909  font-size: 13px; font-weight: 800;
910}
911
912.chat-bubble { padding: 9px 12px; border-radius: 14px; font-size: 13px; line-height: 1.45; }
913.chat-user { background: var(--sw-accent); color: var(--sw-accent-ink); border-bottom-right-radius: 4px; }
914.chat-assistant {
915  background: var(--sw-raised); color: var(--sw-text);
916  border: 1px solid var(--sw-line); border-bottom-left-radius: 4px;
917}
918.chat-suggest {
919  width: 100%; min-height: 36px; padding: 7px 12px; border-radius: 10px; text-align: left;
920  font-size: 12px; font-weight: 600; color: var(--sw-text);
921  background: var(--sw-raised); border: 1px solid var(--sw-line);
922  transition: border-color 0.2s ease, opacity 0.2s ease;
923}
924.chat-suggest:hover:not(:disabled) { border-color: var(--sw-accent); }
925.chat-suggest:disabled { opacity: 0.55; cursor: default; }
926
927.numero-tiles {
928  display: flex; gap: 4px; height: 44px; overflow: hidden;
929  -webkit-mask-image: linear-gradient(to right, #000 85%, transparent);
930  mask-image: linear-gradient(to right, #000 85%, transparent);
931}
932.numero-tile {
933  flex: none; display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
934  width: 28px; height: 44px; border-radius: 8px;
935  background: var(--sw-raised); box-shadow: inset 0 0 0 1px var(--sw-line);
936  line-height: 1.2;
937}
938.numero-result {
939  flex: none; display: inline-flex; align-items: center; justify-content: center;
940  width: 60px; height: 60px; border-radius: 16px;
941  background: var(--sw-accent); color: var(--sw-accent-ink);
942  font-size: 32px; font-weight: 800; font-variant-numeric: tabular-nums;
943}
944
945.moon-glow { border-radius: 999px; filter: drop-shadow(0 0 14px rgba(244, 241, 230, 0.22)); }
946.moon-day {
947  display: flex; flex-direction: column; align-items: center; gap: 3px;
948  padding: 6px 0; border-radius: 10px;
949  transition: background-color 0.2s ease;
950}
951.moon-day:hover { background: var(--sw-raised); }
952.moon-day[aria-pressed='true'] { background: var(--sw-raised); box-shadow: inset 0 0 0 1px var(--sw-accent); }
953
954.dasha-seg {
955  display: flex; align-items: center; justify-content: center; min-width: 0;
956  border-radius: 6px; overflow: hidden;
957  font-size: 11px; font-weight: 700;
958  background: var(--sw-sunken); color: var(--sw-muted);
959  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
960}
961.dasha-seg[data-state='past'] { background: color-mix(in srgb, var(--sw-muted) 22%, var(--sw-sunken)); }
962.dasha-seg[data-state='now'] { background: var(--sw-accent-soft); color: var(--sw-accent); }
963.dasha-seg:hover { box-shadow: inset 0 0 0 1px var(--sw-accent); }
964.dasha-seg[aria-pressed='true'] { background: var(--sw-accent); color: var(--sw-accent-ink); }
965.dasha-now {
966  position: absolute; top: -4px; bottom: -4px; width: 2px; margin-left: -1px;
967  border-radius: 2px; background: var(--sw-text); pointer-events: none;
968}
969.dasha-ad {
970  display: flex; justify-content: space-between; gap: 8px;
971  padding: 5px 10px; border-radius: 8px; font-size: 12px;
972  background: var(--sw-raised); box-shadow: inset 0 0 0 1px var(--sw-line);
973}
974.dasha-ad[data-state='done'] { color: var(--sw-muted); background: transparent; }
975.dasha-ad[data-state='now'] { box-shadow: inset 0 0 0 1.5px var(--sw-accent); }
976
977.muhurta-event {
978  height: 32px; border-radius: 9px; font-size: 12px; font-weight: 600;
979  background: var(--sw-raised); color: var(--sw-text);
980  box-shadow: inset 0 0 0 1px var(--sw-line);
981  transition: background-color 0.2s ease, color 0.2s ease;
982}
983.muhurta-event:hover { box-shadow: inset 0 0 0 1px var(--sw-accent); }
984.muhurta-event[aria-pressed='true'] { background: var(--sw-accent); color: var(--sw-accent-ink); box-shadow: none; }
985.muhurta-day {
986  display: inline-flex; align-items: center; justify-content: center; justify-self: center;
987  width: 28px; height: 26px; border-radius: 8px; font-size: 12px;
988  transition: background-color 0.25s ease, color 0.25s ease;
989}
990.muhurta-day[data-state='good'] {
991  background: var(--sw-accent-soft); color: var(--sw-accent); font-weight: 700;
992  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--sw-accent) 40%, transparent);
993}
994.muhurta-day[data-state='pick'] { background: var(--sw-accent); color: var(--sw-accent-ink); font-weight: 800; }
995
996.palm-frame {
997  width: 104px; height: 150px; padding: 4px; border-radius: 14px;
998  background: var(--sw-sunken);
999}
1000.palm-line { transition: stroke-width 0.3s ease, stroke-opacity 0.3s ease; }
1001.palm-row {
1002  display: flex; align-items: center; gap: 8px; width: 100%;
1003  height: 34px; padding: 0 10px; border-radius: 10px;
1004  transition: background-color 0.2s ease;
1005}
1006.palm-row:hover { background: var(--sw-raised); }
1007.palm-row[aria-pressed='true'] { background: var(--sw-raised); box-shadow: inset 0 0 0 1px var(--sw-line); }
1008
1009@media (prefers-reduced-motion: reduce) {
1010  .wall-track,
1011  .wall-ticker-track,
1012  .sw-typing-dot,
1013  .sw-fade-swap { animation: none; }
1014  .sw-draw-line { animation: none; stroke-dashoffset: 0; }
1015  .wall-copy-duplicate { display: none; }
1016  .wall-viewport {
1017    height: auto;
1018    -webkit-mask-image: none;
1019    mask-image: none;
1020  }
1021  .sw-card, .sw-card *, .sw-footer-layer { transition: none !important; }
1022}
1023</style><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 "><div class="max-w-2xl mb-12"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:translateX(-30px)" class=""><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest mb-4">BUILT WITH ASTROLOGYAPI</p><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-4xl md:text-6xl font-black mb-6">The interfaces developers ship with our APIs</h2><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 leading-relaxed">Each card is a screen from an app you could build on AstrologyAPI, with real chart data. Hover or tap a card to try it and see which endpoint powers it.</p></div></div></div><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-10"><div class="wall-viewport flex gap-5 "><div class="wall-column flex-1 min-w-0 sm:hidden"><div class="wall-track "><div class="wall-copy"><article class="sw-card sw-theme-dusk" aria-label="Sunward, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Sw</span><span class="sw-appname">Sunward</span><span class="sw-appmeta">Thu, 24 Sep 2026</span></header><div role="radiogroup" aria-label="Zodiac sign" class="grid grid-cols-6 gap-1.5"><button type="button" role="radio" aria-checked="false" aria-label="Aries" title="Aries" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♈︎</button><button type="button" role="radio" aria-checked="false" aria-label="Taurus" title="Taurus" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♉︎</button><button type="button" role="radio" aria-checked="false" aria-label="Gemini" title="Gemini" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♊︎</button><button type="button" role="radio" aria-checked="false" aria-label="Cancer" title="Cancer" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♋︎</button><button type="button" role="radio" aria-checked="true" aria-label="Leo" title="Leo" tabindex="0" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♌︎</button><button type="button" role="radio" aria-checked="false" aria-label="Virgo" title="Virgo" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♍︎</button><button type="button" role="radio" aria-checked="false" aria-label="Libra" title="Libra" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♎︎</button><button type="button" role="radio" aria-checked="false" aria-label="Scorpio" title="Scorpio" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♏︎</button><button type="button" role="radio" aria-checked="false" aria-label="Sagittarius" title="Sagittarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♐︎</button><button type="button" role="radio" aria-checked="false" aria-label="Capricorn" title="Capricorn" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♑︎</button><button type="button" role="radio" aria-checked="false" aria-label="Aquarius" title="Aquarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♒︎</button><button type="button" role="radio" aria-checked="false" aria-label="Pisces" title="Pisces" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♓︎</button></div><div class="sw-panel p-3.5 flex flex-col gap-2" aria-live="polite"><div class="flex items-baseline justify-between gap-2"><span class="sw-title sw-fade-swap">Leo</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Jul 23 – Aug 22</span></div><span class="sw-chip self-start">Focus · <!-- -->Opportunity</span>
1023<p class="sw-fade-swap text-[13px] leading-[1.5] min-h-[58px] sm:min-h-[78px]">Jupiter in your sign keeps doors open. The Sun in your 3rd house favours an overdue call.</p></div><div class="flex flex-wrap gap-1.5"><span class="sw-chip sw-chip-quiet">☉︎ Sun in Libra</span><span class="sw-chip sw-chip-quiet">☽︎ Moon in Pisces</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Daily readings · refreshed 05:30 IST</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/horoscope/sun_sign_prediction/daily/:zodiacName" class="sw-api-link sw-mono" title="sun_sign_prediction/daily/:zodiacName docs" aria-label="sun_sign_prediction/daily/:zodiacName API docs">sun_sign_prediction/daily/leo</a></span></div></footer></article><article class="sw-card sw-theme-ink" aria-label="Ecliptica, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">E</span><span class="sw-appname">Ecliptica</span><span class="sw-appmeta">Placidus · Tropical</span></header><div class="sw-seg " role="group" aria-label="Chart layer"><button type="button" class="sw-seg-btn" aria-pressed="true">Natal</button><button type="button" class="sw-seg-btn" aria-pressed="false">Transits</button></div><svg viewBox="0 0 240 240" class="w-full h-auto" role="img" aria-label="Natal chart wheel"><circle cx="120" cy="120" r="116" fill="var(--sw-sunken)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="94" fill="var(--sw-bg)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="48" fill="none" stroke="var(--sw-line)"></circle><g><line x1="200.62" y1="168.33" x2="219.49" y2="179.64" stroke="var(--sw-line)"></line><text x="220.96" y="148.84" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♈︎</text></g><g><line x1="213.99" y1="121.54" x2="235.98" y2="121.9" stroke="var(--sw-line)"></line><text x="221.85" y="94.49" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♉︎</text></g><g><line x1="202.17" y1="74.34" x2="221.4" y2="63.66" stroke="var(--sw-line)"></line><text x="195.45" y="46.98" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♊︎</text></g><g><line x1="168.33" y1="39.38" x2="179.64" y2="20.51" stroke="var(--sw-line)"></line><text x="148.84" y="19.04" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♋︎</text></g><g><line x1="121.54" y1="26.01" x2="121.9" y2="4.02" stroke="var(--sw-line)"></line><text x="94.49" y="18.15" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♌︎</text></g><g><line x1="74.34" y1="37.83" x2="63.66" y2="18.6" stroke="var(--sw-line)"></line><text x="46.98" y="44.55" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♍︎</text></g><g><line x1="39.38" y1="71.67" x2="20.51" y2="60.36" stroke="var(--sw-line)"></line><text x="19.04" y="91.16" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♎︎</text></g><g><line x1="26.01" y1="118.46" x2="4.02" y2="118.1" stroke="var(--sw-line)"></line><text x="18.15" y="145.51" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♏︎</text></g><g><line x1="37.83" y1="165.66" x2="18.6" y2="176.34" stroke="var(--sw-line)"></line><text x="44.55" y="193.02" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♐︎</text></g><g><line x1="71.67" y1="200.62" x2="60.36" y2="219.49" stroke="var(--sw-line)"></line><text x="91.16" y="220.96" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♑︎</text></g><g><line x1="118.46" y1="213.99" x2="118.1" y2="235.98" stroke="var(--sw-line)"></line><text x="145.51" y="221.85" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♒︎</text></g><g><line x1="165.66" y1="202.17" x2="176.34" y2="221.4" stroke="var(--sw-line)"></line><text x="193.02" y="195.45" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♓︎</text></g><line x1="4" y1="120" x2="72" y2="120" stroke="var(--sw-accent)" stroke-width="1.5"></line><line x1="108.2" y1="4.6" x2="115.12" y2="72.25" stroke="var(--sw-accent)" stroke-width="1.5" stroke-opacity="0.6"></line><text x="30" y="114" font-size="11.5" font-weight="700" fill="var(--sw-accent)">AC</text><text x="126.22" y="62.33" font-size="11.5" font-weight="700" fill="var(--sw-accent)" text-anchor="middle" dominant-baseline="central" fill-opacity="0.8">MC</text><g><line x1="108.85" y1="73.31" x2="86.43" y2="154.31" class="sw-draw-line" stroke="var(--sw-leaf)" stroke-width="1.6"></line><line x1="108.85" y1="73.31" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-rose)" stroke-width="1.6"></line><line x1="89.31" y1="83.09" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-sky)" stroke-width="1.6"></line><g class="sw-fade-swap"><line x1="99.33" y1="33.43" x2="98.17" y2="28.57" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="101.42" y="42.19" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☉︎</text>
1023<circle cx="108.85" cy="73.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="57.75" y1="183.61" x2="54.26" y2="187.18" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="64.05" y="177.18" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☽︎</text><circle cx="86.43" cy="154.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="63.1" y1="51.56" x2="59.91" y2="47.72" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="68.86" y="58.48" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☿︎</text><circle cx="89.31" cy="83.09" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="78.67" y1="41.18" x2="76.35" y2="36.75" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="82.85" y="49.15" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♀︎</text><circle cx="97.71" cy="77.49" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="38.38" y1="155.49" x2="33.8" y2="157.48" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="46.64" y="151.9" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♂︎</text><circle cx="75.98" cy="139.14" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="79.62" y1="199.31" x2="77.35" y2="203.77" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="83.71" y="191.29" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♃︎</text><circle cx="98.22" cy="162.78" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="32.15" y1="134.29" x2="27.22" y2="135.09" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="41.04" y="132.85" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♄︎</text><circle cx="72.62" cy="127.71" r="2.2" fill="var(--sw-accent)"></circle></g></g></svg><ul class="flex flex-col gap-1.5" aria-live="polite"><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-leaf)"></span><span class="flex-1 truncate">☉︎ trine ☽︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->2°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-rose)"></span><span class="flex-1 truncate">☉︎ square ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->4°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-sky)"></span><span class="flex-1 truncate">☿︎ sextile ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->0°30′</span></li></ul><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Aug 1984 · 12:31 · New York</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Grahaline, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">G</span><span class="sw-appname">Grahaline</span><span class="sw-appmeta">Birth chart</span></header><div class="sw-seg " role="group" aria-label="Chart"><button type="button" class="sw-seg-btn" aria-pressed="true">Lagna D1</button><button type="button" class="sw-seg-btn" aria-pressed="false">Navamsa D9</button></div><div class="relative w-full aspect-square kundli-chart"><svg viewBox="0 0 100 100" preserveAspectRatio="none" class="absolute inset-0 w-full h-full" aria-hidden="true"><path d="M 0.5 0.5 H 99.5 V 99.5 H 0.5 Z M 0.5 0.5 L 99.5 99.5 M 99.5 0.5 L 0.5 99.5 M 50 0.5 L 99.5 50 L 50 99.5 L 0.5 50 Z" fill="none" stroke="var(--sw-accent)" stroke-opacity="0.55" stroke-width="1.2" vector-effect="non-scaling-stroke"></path><path d="M 50 0.5 L 75 25 L 50 50 L 25 25 Z" fill="var(--sw-accent)" fill-opacity="0.07"></path></svg><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;
1023top:41.75%" aria-hidden="true">4</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:19%" aria-hidden="true">5</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:25%" aria-hidden="true">6</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:41.75%;top:50%" aria-hidden="true">7</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:75%" aria-hidden="true">8</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:81%" aria-hidden="true">9</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:58.25%" aria-hidden="true">10</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:81%" aria-hidden="true">11</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:75%" aria-hidden="true">12</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:58.25%;top:50%" aria-hidden="true">1</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:25%" aria-hidden="true">2</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:19%" aria-hidden="true">3</span><span class="kundli-asc absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:31%" aria-hidden="true">Asc</span><button type="button" aria-pressed="false" aria-label="Sun, house 12" class="kundli-planet absolute" style="left:75%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)">Su</button><button type="button" aria-pressed="true" aria-label="Moon, house 7" class="kundli-planet absolute" style="left:50%;top:77.5%;transform:translate(-50%, -50%) translate(0px, 0px)">Mo</button><button type="button" aria-pressed="false" aria-label="Mars, house 2" class="kundli-planet absolute" style="left:25%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)">Ma</button><button type="button" aria-pressed="false" aria-label="Mercury, house 1" class="kundli-planet absolute" style="left:50%;top:18%;transform:translate(-50%, -50%) translate(0px, 0px)">Me</button><button type="button" aria-pressed="false" aria-label="Jupiter, house 3" class="kundli-planet absolute" style="left:8.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 0px)">Ju</button><button type="button" aria-pressed="false" aria-label="Venus, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, -11px)">Ve</button><button type="button" aria-pressed="false" aria-label="Saturn, house 8" class="kundli-planet absolute" style="left:75%;top:92%;transform:translate(-50%, -50%) translate(0px, 0px)">Sa</button><button type="button" aria-pressed="false" aria-label="Rahu, house 5" class="kundli-planet absolute" style="left:8.5%;top:75%;transform:translate(-50%, -50%) translate(0px, 0px)">Ra</button><button type="button" aria-pressed="false" aria-label="Ketu, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 11px)">Ke</button></div><div class="sw-panel px-3.5 py-3 flex items-center gap-3 h-[80px]" aria-l
1023ive="polite"><span class="kundli-badge">Mo</span><span class="flex flex-col min-w-0 sw-fade-swap leading-snug"><span class="text-[13px] font-bold truncate">Moon<!-- --> <span class="font-medium sw-muted">· House <!-- -->7</span></span><span class="text-[12px] truncate">Makara 15°19′</span><span class="text-[12px] sw-muted truncate">Shravana nakshatra · pada 2</span></span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Jul 1993 · 08:00 · New Delhi</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/horo_chart/:chart_id" class="sw-api-link sw-mono" title="horo_chart/:chart_id docs" aria-label="horo_chart/:chart_id API docs">horo_chart/D1</a><a href="/developers/v1/vedic/planets" class="sw-api-link sw-mono" title="planets docs" aria-label="planets API docs">planets</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Ask Vela, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">V</span><span class="sw-appname">Ask Vela</span><span class="sw-appmeta">Scorpio rising</span></header><div class="h-[228px] overflow-hidden flex flex-col justify-end gap-2.5" aria-live="polite"><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-end items-end"><div class="chat-bubble chat-user">Is this a good year to change jobs?</div></div><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-start"><div class="chat-bubble chat-assistant">Yes, it is a strong window. Jupiter moves through your 10th house of career from 30 Jun 2026 to 26 Jul 2027.</div><div class="flex flex-wrap gap-1"><span class="sw-chip">♃︎ Jupiter in 10th</span><span class="sw-chip">Scorpio rising</span></div></div></div><div class="flex flex-col gap-1.5"><span class="sw-label">Ask next</span><div class="flex flex-col gap-1.5 min-h-[78px]"><button type="button" class="chat-suggest">When should I ask for a raise?</button><button type="button" class="chat-suggest">Anything to watch out for?</button></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Answers cite your birth chart</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/chat-api" class="sw-api-link sw-mono" title="api/chat docs" aria-label="api/chat API docs">api/chat</a><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-dusk" aria-label="Pairwise, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">P</span><span class="sw-appname">Pairwise</span><span class="sw-appmeta">Kundli milan</span></header><div class="flex items-center gap-3"><span class="flex flex-none" aria-hidden="true"><span class="match-avatar ">A</span><span class="match-avatar -ml-2">D</span></span><span class="flex flex-col min-w-0 leading-snug"><span class="text-[14px] font-bold">Aarav<!-- --> &amp; <!-- -->Diya</span><span class="text-[11px] sw-muted truncate">Hasta<!-- --> × <!-- -->Swati<!-- --> · <!-- -->Kanya<!-- --> × <!-- -->Tula<!-- --> Moon</span></span></div><div class="sw-seg " role="group" aria-label="Result view"><button type="button" class="sw-seg-btn" aria-pressed="true">Summary</button><button type="button" class="sw-seg-btn" aria-pressed="false">8 kootas</button></div><div class="sw-panel p-3.5 h-[206px]" aria-live="polite"><div class="flex flex-col items-center gap-2"><div class="relative" style="width:180px;height:96px"><svg width="180" height="96" viewBox="0 0 180 96" aria-hidden="true"><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-sunken)" stroke-width="12" stroke-linecap="round"></path><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-accent)" stroke-width="12" stroke-linecap="round" stroke-dasharray="219.91" stroke-dashoffset="51.92"></path></svg><div class="absolute inset-x-0 bottom-0 flex flex-col items-center leading-none"><span class="text-[30px] font-extrabold sw-num tracking-tight">27.5<span class="text-[14px] font-semibold sw-muted"> / <!-- -->36</span></span></div></div><span class="sw-chip">Strong match</span><ul class="flex flex-col gap-1 self-stretch"><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Bhakoot dosha cancelled</li><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Neither is Manglik</li></ul></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Ashtakoot · North Indian method</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/match_ashtakoot_points" class="sw-api-link sw-mono" title="match_ashtakoot_points docs" aria-label="match_ashtakoot_points API docs">match_ashtakoot_points</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Nightdeck, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">N</span><span class="sw-appname">Nightdeck</span><span class="sw-appmeta">Card of the day</span></header><div class="flex gap-4 items-center"><button type="button" aria-label="The Star. Draw another card" class="tarot-scene flex-none rounded-xl" style="width:104px;
1023height:166px"><span class="tarot-inner is-up"><span class="tarot-face tarot-back" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="0.8"><rect x="5" y="5" width="50" height="86" rx="4"></rect><polygon points="30,36 31.72,43.84 38.49,39.51 34.16,46.28 42,48 34.16,49.72 38.49,56.49 31.72,52.16 30,60 28.28,52.16 21.51,56.49 25.84,49.72 18,48 25.84,46.28 21.51,39.51 28.28,43.84" fill="currentColor" fill-opacity="0.25"></polygon><circle cx="30" cy="48" r="18" stroke-opacity="0.6"></circle><circle cx="30" cy="48" r="24" stroke-opacity="0.35"></circle></svg></span><span class="tarot-face tarot-front" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="52" height="88" rx="3.5" stroke-opacity="0.5"></rect><text x="30" y="14" text-anchor="middle" font-size="7.5" font-weight="700" fill="currentColor" stroke="none" letter-spacing="0.5">XVII</text><g><g><polygon points="30,27 31.91,35.38 39.19,30.81 34.62,38.09 43,40 34.62,41.91 39.19,49.19 31.91,44.62 30,53 28.09,44.62 20.81,49.19 25.38,41.91 17,40 25.38,38.09 20.81,30.81 28.09,35.38" fill="currentColor" fill-opacity="0.18"></polygon><polygon points="14,18.5 14.99,21.01 17.5,22 14.99,22.99 14,25.5 13.01,22.99 10.5,22 13.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="46,18.5 46.99,21.01 49.5,22 46.99,22.99 46,25.5 45.01,22.99 42.5,22 45.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="12,46.5 12.99,49.01 15.5,50 12.99,50.99 12,53.5 11.01,50.99 8.5,50 11.01,49.01" fill="currentColor" stroke="none"></polygon><polygon points="48,46.5 48.99,49.01 51.5,50 48.99,50.99 48,53.5 47.01,50.99 44.5,50 47.01,49.01" fill="currentColor" stroke="none"></polygon><path d="M 10 70 Q 20 66 30 70 T 50 70 M 12 76 Q 22 72 32 76 T 50 76"></path></g></g></svg></span></span></button><div class="flex flex-col gap-1.5 min-w-0" aria-live="polite"><span class="sw-label">Major · XVII</span><span class="sw-title sw-fade-swap">The Star</span><span class="text-[11px] font-semibold sw-accent">Hope · Renewal · Calm</span><p class="text-[13px] leading-snug">After a hard stretch, things settle. Rest and let hope back in.</p></div></div><p class="text-[11px] sw-muted -mt-1">Tap the card to draw again</p><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Rider–Waite–Smith · 78 cards</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/tarot/tarot_predictions" class="sw-api-link sw-mono" title="tarot_predictions docs" aria-label="tarot_predictions API docs">tarot_predictions</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Tithi Today, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">T</span><span class="sw-appname">Tithi Today</span><span class="sw-appmeta">New Delhi</span></header><div class="flex flex-col gap-0.5"><span class="text-[11px] sw-muted">Thu, 24 Sep 2026</span><span class="sw-title">Bhadrapada Shukla Trayodashi</span></div><div class="sw-seg " role="group" aria-label="Panchang view"><button type="button" class="sw-seg-btn" aria-pressed="true">Panchang</button><button type="button" class="sw-seg-btn" aria-pressed="false">Timings</button></div><div class="sw-panel px-3.5 py-2.5 h-[204px]" aria-live="polite"><dl class="flex flex-col sw-fade-swap"><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] "><dt class="text-[12px] sw-muted">Tithi</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Trayodashi</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 23:18</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Nakshatra</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhanishta</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 10:34</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Yoga</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhriti</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">
1023till 15:53</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Karana</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Kaulava</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 11:09</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Vara</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Guruvara</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Thursday</span></dd></div></dl></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Lahiri ayanamsa · Amanta month</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/advanced_panchang" class="sw-api-link sw-mono" title="advanced_panchang docs" aria-label="advanced_panchang API docs">advanced_panchang</a></span></div></footer></article></div><div class="wall-copy wall-copy-duplicate" aria-hidden="true"><article class="sw-card sw-theme-dusk" aria-label="Sunward, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Sw</span><span class="sw-appname">Sunward</span><span class="sw-appmeta">Thu, 24 Sep 2026</span></header><div role="radiogroup" aria-label="Zodiac sign" class="grid grid-cols-6 gap-1.5"><button type="button" role="radio" aria-checked="false" aria-label="Aries" title="Aries" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♈︎</button><button type="button" role="radio" aria-checked="false" aria-label="Taurus" title="Taurus" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♉︎</button><button type="button" role="radio" aria-checked="false" aria-label="Gemini" title="Gemini" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♊︎</button><button type="button" role="radio" aria-checked="false" aria-label="Cancer" title="Cancer" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♋︎</button><button type="button" role="radio" aria-checked="true" aria-label="Leo" title="Leo" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♌︎</button><button type="button" role="radio" aria-checked="false" aria-label="Virgo" title="Virgo" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♍︎</button><button type="button" role="radio" aria-checked="false" aria-label="Libra" title="Libra" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♎︎</button><button type="button" role="radio" aria-checked="false" aria-label="Scorpio" title="Scorpio" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♏︎</button><button type="button" role="radio" aria-checked="false" aria-label="Sagittarius" title="Sagittarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♐︎</button><button type="button" role="radio" aria-checked="false" aria-label="Capricorn" title="Capricorn" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♑︎</button><button type="button" role="radio" aria-checked="false" aria-label="Aquarius" title="Aquarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♒︎</button><button type="button" role="radio" aria-checked="false" aria-label="Pisces" title="Pisces" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♓︎</button></div><div class="sw-panel p-3.5 flex flex-col gap-2" aria-live="polite"><div class="flex items-baseline justify-between gap-2"><span class="sw-title sw-fade-swap">Leo</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Jul 23 – Aug 22</span></div><span class="sw-chip self-start">Focus · <!-- -->Opportunity</span>
1023<p class="sw-fade-swap text-[13px] leading-[1.5] min-h-[58px] sm:min-h-[78px]">Jupiter in your sign keeps doors open. The Sun in your 3rd house favours an overdue call.</p></div><div class="flex flex-wrap gap-1.5"><span class="sw-chip sw-chip-quiet">☉︎ Sun in Libra</span><span class="sw-chip sw-chip-quiet">☽︎ Moon in Pisces</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Daily readings · refreshed 05:30 IST</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/horoscope/sun_sign_prediction/daily/:zodiacName" class="sw-api-link sw-mono" title="sun_sign_prediction/daily/:zodiacName docs" aria-label="sun_sign_prediction/daily/:zodiacName API docs" tabindex="-1">sun_sign_prediction/daily/leo</a></span></div></footer></article><article class="sw-card sw-theme-ink" aria-label="Ecliptica, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">E</span><span class="sw-appname">Ecliptica</span><span class="sw-appmeta">Placidus · Tropical</span></header><div class="sw-seg " role="group" aria-label="Chart layer"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Natal</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Transits</button></div><svg viewBox="0 0 240 240" class="w-full h-auto" role="img" aria-label="Natal chart wheel"><circle cx="120" cy="120" r="116" fill="var(--sw-sunken)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="94" fill="var(--sw-bg)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="48" fill="none" stroke="var(--sw-line)"></circle><g><line x1="200.62" y1="168.33" x2="219.49" y2="179.64" stroke="var(--sw-line)"></line><text x="220.96" y="148.84" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♈︎</text></g><g><line x1="213.99" y1="121.54" x2="235.98" y2="121.9" stroke="var(--sw-line)"></line><text x="221.85" y="94.49" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♉︎</text></g><g><line x1="202.17" y1="74.34" x2="221.4" y2="63.66" stroke="var(--sw-line)"></line><text x="195.45" y="46.98" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♊︎</text></g><g><line x1="168.33" y1="39.38" x2="179.64" y2="20.51" stroke="var(--sw-line)"></line><text x="148.84" y="19.04" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♋︎</text></g><g><line x1="121.54" y1="26.01" x2="121.9" y2="4.02" stroke="var(--sw-line)"></line><text x="94.49" y="18.15" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♌︎</text></g><g><line x1="74.34" y1="37.83" x2="63.66" y2="18.6" stroke="var(--sw-line)"></line><text x="46.98" y="44.55" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♍︎</text></g><g><line x1="39.38" y1="71.67" x2="20.51" y2="60.36" stroke="var(--sw-line)"></line><text x="19.04" y="91.16" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♎︎</text></g><g><line x1="26.01" y1="118.46" x2="4.02" y2="118.1" stroke="var(--sw-line)"></line><text x="18.15" y="145.51" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♏︎</text></g><g><line x1="37.83" y1="165.66" x2="18.6" y2="176.34" stroke="var(--sw-line)"></line><text x="44.55" y="193.02" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♐︎</text></g><g><line x1="71.67" y1="200.62" x2="60.36" y2="219.49" stroke="var(--sw-line)"></line><text x="91.16" y="220.96" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♑︎</text></g><g><line x1="118.46" y1="213.99" x2="118.1" y2="235.98" stroke="var(--sw-line)"></line><text x="145.51" y="221.85" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♒︎</text></g><g><line x1="165.66" y1="202.17" x2="176.34" y2="221.4" stroke="var(--sw-line)"></line><text x="193.02" y="195.45" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♓︎</text></g><line x1="4" y1="120" x2="72" y2="120" stroke="var(--sw-accent)" stroke-width="1.5"></line><line x1="108.2" y1="4.6" x2="115.12" y2="72.25" stroke="var(--sw-accent)" stroke-width="1.5" stroke-opacity="0.6"></line><text x="30" y="114" font-size="11.5" font-weight="700" fill="var(--sw-accent)">AC</text><text x="126.22" y="62.33" font-size="11.5" font-weight="700" fill="var(--sw-accent)" text-anchor="middle" dominant-baseline="central" fill-opacity="0.8">MC</text><g><line x1="108.85" y1="73.31" x2="86.43" y2="154.31" class="sw-draw-line" stroke="var(--sw-leaf)" stroke-width="1.6"></line><line x1="108.85" y1="73.31" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-rose)" stroke-width="1.6"></line><line x1="89.31" y1="83.09" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-sky)" stroke-width="1.6"></line><g class="sw-fade-swap"><line x1="99.33" y1="33.43" x2="98.17" y2="28.57" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="101.42" y="42.19" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☉︎</text>
1023<circle cx="108.85" cy="73.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="57.75" y1="183.61" x2="54.26" y2="187.18" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="64.05" y="177.18" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☽︎</text><circle cx="86.43" cy="154.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="63.1" y1="51.56" x2="59.91" y2="47.72" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="68.86" y="58.48" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☿︎</text><circle cx="89.31" cy="83.09" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="78.67" y1="41.18" x2="76.35" y2="36.75" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="82.85" y="49.15" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♀︎</text><circle cx="97.71" cy="77.49" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="38.38" y1="155.49" x2="33.8" y2="157.48" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="46.64" y="151.9" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♂︎</text><circle cx="75.98" cy="139.14" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="79.62" y1="199.31" x2="77.35" y2="203.77" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="83.71" y="191.29" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♃︎</text><circle cx="98.22" cy="162.78" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="32.15" y1="134.29" x2="27.22" y2="135.09" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="41.04" y="132.85" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♄︎</text><circle cx="72.62" cy="127.71" r="2.2" fill="var(--sw-accent)"></circle></g></g></svg><ul class="flex flex-col gap-1.5" aria-live="polite"><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-leaf)"></span><span class="flex-1 truncate">☉︎ trine ☽︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->2°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-rose)"></span><span class="flex-1 truncate">☉︎ square ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->4°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-sky)"></span><span class="flex-1 truncate">☿︎ sextile ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->0°30′</span></li></ul><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Aug 1984 · 12:31 · New York</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs" tabindex="-1">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Grahaline, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">G</span><span class="sw-appname">Grahaline</span><span class="sw-appmeta">Birth chart</span></header><div class="sw-seg " role="group" aria-label="Chart"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Lagna D1</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Navamsa D9</button></div><div class="relative w-full aspect-square kundli-chart"><svg viewBox="0 0 100 100" preserveAspectRatio="none" class="absolute inset-0 w-full h-full" aria-hidden="true"><path d="M 0.5 0.5 H 99.5 V 99.5 H 0.5 Z M 0.5 0.5 L 99.5 99.5 M 99.5 0.5 L 0.5 99.5 M 50 0.5 L 99.5 50 L 50 99.5 L 0.5 50 Z" fill="none" stroke="var(--sw-accent)" stroke-opacity="0.55" stroke-width="1.2" vector-effect="non-scaling-stroke"></path><path d="M 50 0.5 L 75 25 L 50 50 L 25 25 Z" fill="var(--sw-accent)" fill-opacity="0.07"></path></svg><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;
1023top:41.75%" aria-hidden="true">4</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:19%" aria-hidden="true">5</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:25%" aria-hidden="true">6</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:41.75%;top:50%" aria-hidden="true">7</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:75%" aria-hidden="true">8</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:81%" aria-hidden="true">9</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:58.25%" aria-hidden="true">10</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:81%" aria-hidden="true">11</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:75%" aria-hidden="true">12</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:58.25%;top:50%" aria-hidden="true">1</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:25%" aria-hidden="true">2</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:19%" aria-hidden="true">3</span><span class="kundli-asc absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:31%" aria-hidden="true">Asc</span><button type="button" aria-pressed="false" aria-label="Sun, house 12" class="kundli-planet absolute" style="left:75%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Su</button><button type="button" aria-pressed="true" aria-label="Moon, house 7" class="kundli-planet absolute" style="left:50%;top:77.5%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Mo</button><button type="button" aria-pressed="false" aria-label="Mars, house 2" class="kundli-planet absolute" style="left:25%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Ma</button><button type="button" aria-pressed="false" aria-label="Mercury, house 1" class="kundli-planet absolute" style="left:50%;top:18%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Me</button><button type="button" aria-pressed="false" aria-label="Jupiter, house 3" class="kundli-planet absolute" style="left:8.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Ju</button><button type="button" aria-pressed="false" aria-label="Venus, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, -11px)" tabindex="-1">Ve</button><button type="button" aria-pressed="false" aria-label="Saturn, house 8" class="kundli-planet absolute" style="left:75%;top:92%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Sa</button><button type="button" aria-pressed="false" aria-label="Rahu, house 5" class="kundli-planet absolute" style="left:8.5%;top:75%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Ra</button><button type="button" aria-pressed="false" aria-label="Ketu, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 11px)" tabindex="-1">Ke</button></div><div class="sw-panel px-3.5 py-3 flex items-center gap-3 h-[80px]" aria-l
1023ive="polite"><span class="kundli-badge">Mo</span><span class="flex flex-col min-w-0 sw-fade-swap leading-snug"><span class="text-[13px] font-bold truncate">Moon<!-- --> <span class="font-medium sw-muted">· House <!-- -->7</span></span><span class="text-[12px] truncate">Makara 15°19′</span><span class="text-[12px] sw-muted truncate">Shravana nakshatra · pada 2</span></span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Jul 1993 · 08:00 · New Delhi</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/horo_chart/:chart_id" class="sw-api-link sw-mono" title="horo_chart/:chart_id docs" aria-label="horo_chart/:chart_id API docs" tabindex="-1">horo_chart/D1</a><a href="/developers/v1/vedic/planets" class="sw-api-link sw-mono" title="planets docs" aria-label="planets API docs" tabindex="-1">planets</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Ask Vela, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">V</span><span class="sw-appname">Ask Vela</span><span class="sw-appmeta">Scorpio rising</span></header><div class="h-[228px] overflow-hidden flex flex-col justify-end gap-2.5" aria-live="polite"><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-end items-end"><div class="chat-bubble chat-user">Is this a good year to change jobs?</div></div><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-start"><div class="chat-bubble chat-assistant">Yes, it is a strong window. Jupiter moves through your 10th house of career from 30 Jun 2026 to 26 Jul 2027.</div><div class="flex flex-wrap gap-1"><span class="sw-chip">♃︎ Jupiter in 10th</span><span class="sw-chip">Scorpio rising</span></div></div></div><div class="flex flex-col gap-1.5"><span class="sw-label">Ask next</span><div class="flex flex-col gap-1.5 min-h-[78px]"><button type="button" class="chat-suggest" tabindex="-1">When should I ask for a raise?</button><button type="button" class="chat-suggest" tabindex="-1">Anything to watch out for?</button></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Answers cite your birth chart</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/chat-api" class="sw-api-link sw-mono" title="api/chat docs" aria-label="api/chat API docs" tabindex="-1">api/chat</a><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs" tabindex="-1">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-dusk" aria-label="Pairwise, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">P</span><span class="sw-appname">Pairwise</span><span class="sw-appmeta">Kundli milan</span></header><div class="flex items-center gap-3"><span class="flex flex-none" aria-hidden="true"><span class="match-avatar ">A</span><span class="match-avatar -ml-2">D</span></span><span class="flex flex-col min-w-0 leading-snug"><span class="text-[14px] font-bold">Aarav<!-- --> &amp; <!-- -->Diya</span><span class="text-[11px] sw-muted truncate">Hasta<!-- --> × <!-- -->Swati<!-- --> · <!-- -->Kanya<!-- --> × <!-- -->Tula<!-- --> Moon</span></span></div><div class="sw-seg " role="group" aria-label="Result view"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Summary</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">8 kootas</button></div><div class="sw-panel p-3.5 h-[206px]" aria-live="polite"><div class="flex flex-col items-center gap-2"><div class="relative" style="width:180px;height:96px"><svg width="180" height="96" viewBox="0 0 180 96" aria-hidden="true"><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-sunken)" stroke-width="12" stroke-linecap="round"></path><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-accent)" stroke-width="12" stroke-linecap="round" stroke-dasharray="219.91" stroke-dashoffset="51.92"></path></svg><div class="absolute inset-x-0 bottom-0 flex flex-col items-center leading-none"><span class="text-[30px] font-extrabold sw-num tracking-tight">27.5<span class="text-[14px] font-semibold sw-muted"> / <!-- -->36</span></span></div></div><span class="sw-chip">Strong match</span><ul class="flex flex-col gap-1 self-stretch"><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Bhakoot dosha cancelled</li><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Neither is Manglik</li></ul></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Ashtakoot · North Indian method</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/match_ashtakoot_points" class="sw-api-link sw-mono" title="match_ashtakoot_points docs" aria-label="match_ashtakoot_points API docs" tabindex="-1">match_ashtakoot_points</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Nightdeck, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">N</span><span class="sw-appname">Nightdeck</span><span class="sw-appmeta">Card of the day</span></header><div class="flex gap-4 items-center"><button type="button" aria-label="The Star. Draw another card" class="tarot-scene flex-none rounded-xl" style="width:104px;
1023height:166px" tabindex="-1"><span class="tarot-inner is-up"><span class="tarot-face tarot-back" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="0.8"><rect x="5" y="5" width="50" height="86" rx="4"></rect><polygon points="30,36 31.72,43.84 38.49,39.51 34.16,46.28 42,48 34.16,49.72 38.49,56.49 31.72,52.16 30,60 28.28,52.16 21.51,56.49 25.84,49.72 18,48 25.84,46.28 21.51,39.51 28.28,43.84" fill="currentColor" fill-opacity="0.25"></polygon><circle cx="30" cy="48" r="18" stroke-opacity="0.6"></circle><circle cx="30" cy="48" r="24" stroke-opacity="0.35"></circle></svg></span><span class="tarot-face tarot-front" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="52" height="88" rx="3.5" stroke-opacity="0.5"></rect><text x="30" y="14" text-anchor="middle" font-size="7.5" font-weight="700" fill="currentColor" stroke="none" letter-spacing="0.5">XVII</text><g><g><polygon points="30,27 31.91,35.38 39.19,30.81 34.62,38.09 43,40 34.62,41.91 39.19,49.19 31.91,44.62 30,53 28.09,44.62 20.81,49.19 25.38,41.91 17,40 25.38,38.09 20.81,30.81 28.09,35.38" fill="currentColor" fill-opacity="0.18"></polygon><polygon points="14,18.5 14.99,21.01 17.5,22 14.99,22.99 14,25.5 13.01,22.99 10.5,22 13.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="46,18.5 46.99,21.01 49.5,22 46.99,22.99 46,25.5 45.01,22.99 42.5,22 45.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="12,46.5 12.99,49.01 15.5,50 12.99,50.99 12,53.5 11.01,50.99 8.5,50 11.01,49.01" fill="currentColor" stroke="none"></polygon><polygon points="48,46.5 48.99,49.01 51.5,50 48.99,50.99 48,53.5 47.01,50.99 44.5,50 47.01,49.01" fill="currentColor" stroke="none"></polygon><path d="M 10 70 Q 20 66 30 70 T 50 70 M 12 76 Q 22 72 32 76 T 50 76"></path></g></g></svg></span></span></button><div class="flex flex-col gap-1.5 min-w-0" aria-live="polite"><span class="sw-label">Major · XVII</span><span class="sw-title sw-fade-swap">The Star</span><span class="text-[11px] font-semibold sw-accent">Hope · Renewal · Calm</span><p class="text-[13px] leading-snug">After a hard stretch, things settle. Rest and let hope back in.</p></div></div><p class="text-[11px] sw-muted -mt-1">Tap the card to draw again</p><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Rider–Waite–Smith · 78 cards</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/tarot/tarot_predictions" class="sw-api-link sw-mono" title="tarot_predictions docs" aria-label="tarot_predictions API docs" tabindex="-1">tarot_predictions</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Tithi Today, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">T</span><span class="sw-appname">Tithi Today</span><span class="sw-appmeta">New Delhi</span></header><div class="flex flex-col gap-0.5"><span class="text-[11px] sw-muted">Thu, 24 Sep 2026</span><span class="sw-title">Bhadrapada Shukla Trayodashi</span></div><div class="sw-seg " role="group" aria-label="Panchang view"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Panchang</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Timings</button></div><div class="sw-panel px-3.5 py-2.5 h-[204px]" aria-live="polite"><dl class="flex flex-col sw-fade-swap"><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] "><dt class="text-[12px] sw-muted">Tithi</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Trayodashi</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 23:18</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Nakshatra</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhanishta</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 10:34</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Yoga</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhriti</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">
1023till 15:53</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Karana</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Kaulava</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 11:09</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Vara</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Guruvara</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Thursday</span></dd></div></dl></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Lahiri ayanamsa · Amanta month</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/advanced_panchang" class="sw-api-link sw-mono" title="advanced_panchang docs" aria-label="advanced_panchang API docs" tabindex="-1">advanced_panchang</a></span></div></footer></article></div></div></div><div class="wall-column flex-1 min-w-0 hidden sm:block"><div class="wall-track "><div class="wall-copy"><article class="sw-card sw-theme-dusk" aria-label="Sunward, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Sw</span><span class="sw-appname">Sunward</span><span class="sw-appmeta">Thu, 24 Sep 2026</span></header><div role="radiogroup" aria-label="Zodiac sign" class="grid grid-cols-6 gap-1.5"><button type="button" role="radio" aria-checked="false" aria-label="Aries" title="Aries" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♈︎</button><button type="button" role="radio" aria-checked="false" aria-label="Taurus" title="Taurus" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♉︎</button><button type="button" role="radio" aria-checked="false" aria-label="Gemini" title="Gemini" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♊︎</button><button type="button" role="radio" aria-checked="false" aria-label="Cancer" title="Cancer" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♋︎</button><button type="button" role="radio" aria-checked="true" aria-label="Leo" title="Leo" tabindex="0" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♌︎</button><button type="button" role="radio" aria-checked="false" aria-label="Virgo" title="Virgo" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♍︎</button><button type="button" role="radio" aria-checked="false" aria-label="Libra" title="Libra" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♎︎</button><button type="button" role="radio" aria-checked="false" aria-label="Scorpio" title="Scorpio" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♏︎</button><button type="button" role="radio" aria-checked="false" aria-label="Sagittarius" title="Sagittarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♐︎</button><button type="button" role="radio" aria-checked="false" aria-label="Capricorn" title="Capricorn" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♑︎</button><button type="button" role="radio" aria-checked="false" aria-label="Aquarius" title="Aquarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♒︎</button><button type="button" role="radio" aria-checked="false" aria-label="Pisces" title="Pisces" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♓︎</button></div><div class="sw-panel p-3.5 flex flex-col gap-2" aria-live="polite"><div class="flex items-baseline justify-between gap-2"><span class="sw-title sw-fade-swap">Leo</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Jul 23 – Aug 22</span></div><span class="sw-chip self-start">Focus · <!-- -->Opportunity</span>
1023<p class="sw-fade-swap text-[13px] leading-[1.5] min-h-[58px] sm:min-h-[78px]">Jupiter in your sign keeps doors open. The Sun in your 3rd house favours an overdue call.</p></div><div class="flex flex-wrap gap-1.5"><span class="sw-chip sw-chip-quiet">☉︎ Sun in Libra</span><span class="sw-chip sw-chip-quiet">☽︎ Moon in Pisces</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Daily readings · refreshed 05:30 IST</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/horoscope/sun_sign_prediction/daily/:zodiacName" class="sw-api-link sw-mono" title="sun_sign_prediction/daily/:zodiacName docs" aria-label="sun_sign_prediction/daily/:zodiacName API docs">sun_sign_prediction/daily/leo</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Grahaline, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">G</span><span class="sw-appname">Grahaline</span><span class="sw-appmeta">Birth chart</span></header><div class="sw-seg " role="group" aria-label="Chart"><button type="button" class="sw-seg-btn" aria-pressed="true">Lagna D1</button><button type="button" class="sw-seg-btn" aria-pressed="false">Navamsa D9</button></div><div class="relative w-full aspect-square kundli-chart"><svg viewBox="0 0 100 100" preserveAspectRatio="none" class="absolute inset-0 w-full h-full" aria-hidden="true"><path d="M 0.5 0.5 H 99.5 V 99.5 H 0.5 Z M 0.5 0.5 L 99.5 99.5 M 99.5 0.5 L 0.5 99.5 M 50 0.5 L 99.5 50 L 50 99.5 L 0.5 50 Z" fill="none" stroke="var(--sw-accent)" stroke-opacity="0.55" stroke-width="1.2" vector-effect="non-scaling-stroke"></path><path d="M 50 0.5 L 75 25 L 50 50 L 25 25 Z" fill="var(--sw-accent)" fill-opacity="0.07"></path></svg><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:41.75%" aria-hidden="true">4</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:19%" aria-hidden="true">5</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:25%" aria-hidden="true">6</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:41.75%;top:50%" aria-hidden="true">7</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:75%" aria-hidden="true">8</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:81%" aria-hidden="true">9</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:58.25%" aria-hidden="true">10</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:81%" aria-hidden="true">11</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:75%" aria-hidden="true">12</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:58.25%;top:50%" aria-hidden="true">1</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:25%" aria-hidden="true">2</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:19%" aria-hidden="true">3</span><span class="kundli-asc absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:31%" aria-hidden="true">Asc</span><button type="button" aria-pressed="false" aria-label="Sun, house 12" class="kundli-planet absolute" style="left:75%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)">Su</button><button type="button" aria-pressed="true" aria-label="Moon, house 7" class="kundli-planet absolute" style="left:50%;top:77.5%;transform:translate(-50%, -50%) translate(0px, 0px)">Mo</button><button type="button" aria-pressed="false" aria-label="Mars, house 2" class="kundli-planet absolute" style="left:25%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)">Ma</button><button type="button" aria-pressed="false" aria-label="Mercury, house 1" class="kundli-planet absolute" style="left:50%;
1023top:18%;transform:translate(-50%, -50%) translate(0px, 0px)">Me</button><button type="button" aria-pressed="false" aria-label="Jupiter, house 3" class="kundli-planet absolute" style="left:8.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 0px)">Ju</button><button type="button" aria-pressed="false" aria-label="Venus, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, -11px)">Ve</button><button type="button" aria-pressed="false" aria-label="Saturn, house 8" class="kundli-planet absolute" style="left:75%;top:92%;transform:translate(-50%, -50%) translate(0px, 0px)">Sa</button><button type="button" aria-pressed="false" aria-label="Rahu, house 5" class="kundli-planet absolute" style="left:8.5%;top:75%;transform:translate(-50%, -50%) translate(0px, 0px)">Ra</button><button type="button" aria-pressed="false" aria-label="Ketu, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 11px)">Ke</button></div><div class="sw-panel px-3.5 py-3 flex items-center gap-3 h-[80px]" aria-l
1023ive="polite"><span class="kundli-badge">Mo</span><span class="flex flex-col min-w-0 sw-fade-swap leading-snug"><span class="text-[13px] font-bold truncate">Moon<!-- --> <span class="font-medium sw-muted">· House <!-- -->7</span></span><span class="text-[12px] truncate">Makara 15°19′</span><span class="text-[12px] sw-muted truncate">Shravana nakshatra · pada 2</span></span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Jul 1993 · 08:00 · New Delhi</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/horo_chart/:chart_id" class="sw-api-link sw-mono" title="horo_chart/:chart_id docs" aria-label="horo_chart/:chart_id API docs">horo_chart/D1</a><a href="/developers/v1/vedic/planets" class="sw-api-link sw-mono" title="planets docs" aria-label="planets API docs">planets</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Nightdeck, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">N</span><span class="sw-appname">Nightdeck</span><span class="sw-appmeta">Card of the day</span></header><div class="flex gap-4 items-center"><button type="button" aria-label="The Star. Draw another card" class="tarot-scene flex-none rounded-xl" style="width:104px;height:166px"><span class="tarot-inner is-up"><span class="tarot-face tarot-back" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="0.8"><rect x="5" y="5" width="50" height="86" rx="4"></rect><polygon points="30,36 31.72,43.84 38.49,39.51 34.16,46.28 42,48 34.16,49.72 38.49,56.49 31.72,52.16 30,60 28.28,52.16 21.51,56.49 25.84,49.72 18,48 25.84,46.28 21.51,39.51 28.28,43.84" fill="currentColor" fill-opacity="0.25"></polygon><circle cx="30" cy="48" r="18" stroke-opacity="0.6"></circle><circle cx="30" cy="48" r="24" stroke-opacity="0.35"></circle></svg></span><span class="tarot-face tarot-front" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="52" height="88" rx="3.5" stroke-opacity="0.5"></rect><text x="30" y="14" text-anchor="middle" font-size="7.5" font-weight="700" fill="currentColor" stroke="none" letter-spacing="0.5">XVII</text><g><g><polygon points="30,27 31.91,35.38 39.19,30.81 34.62,38.09 43,40 34.62,41.91 39.19,49.19 31.91,44.62 30,53 28.09,44.62 20.81,49.19 25.38,41.91 17,40 25.38,38.09 20.81,30.81 28.09,35.38" fill="currentColor" fill-opacity="0.18"></polygon><polygon points="14,18.5 14.99,21.01 17.5,22 14.99,22.99 14,25.5 13.01,22.99 10.5,22 13.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="46,18.5 46.99,21.01 49.5,22 46.99,22.99 46,25.5 45.01,22.99 42.5,22 45.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="12,46.5 12.99,49.01 15.5,50 12.99,50.99 12,53.5 11.01,50.99 8.5,50 11.01,49.01" fill="currentColor" stroke="none"></polygon><polygon points="48,46.5 48.99,49.01 51.5,50 48.99,50.99 48,53.5 47.01,50.99 44.5,50 47.01,49.01" fill="currentColor" stroke="none"></polygon><path d="M 10 70 Q 20 66 30 70 T 50 70 M 12 76 Q 22 72 32 76 T 50 76"></path></g></g></svg></span></span></button><div class="flex flex-col gap-1.5 min-w-0" aria-live="polite"><span class="sw-label">Major · XVII</span><span class="sw-title sw-fade-swap">The Star</span><span class="text-[11px] font-semibold sw-accent">Hope · Renewal · Calm</span><p class="text-[13px] leading-snug">After a hard stretch, things settle. Rest and let hope back in.</p></div></div><p class="text-[11px] sw-muted -mt-1">Tap the card to draw again</p><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Rider–Waite–Smith · 78 cards</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/tarot/tarot_predictions" class="sw-api-link sw-mono" title="tarot_predictions docs" aria-label="tarot_predictions API docs">tarot_predictions</a></span></div></footer></article><article class="sw-card sw-theme-sage" aria-label="Namecraft, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Nc</span><span class="sw-appname">Namecraft</span><span class="sw-appmeta">Name number</span></header><form class="flex gap-2"><label for=":R8lnsm:" class="sr-only">Full name</label><input id=":R8lnsm:" type="text" maxLength="24" autoComplete="off" spellcheck="false" placeholder="Full name" class="sw-input flex-1" value="Arjun"/><button type="submit" class="sw-btn">Calculate</button></form><div class="sw-seg " role="group" aria-label="Numerology system"><button type="button" class="sw-seg-btn" aria-pressed="true">Pythagorean</button><button type="button" class="sw-seg-btn" aria-pressed="false">Chaldean</button></div><div class="numero-tiles" aria-hidden="true"><span class="numero-tile sw-fade-swap" style="animation-delay:0ms"><span class="text-[12px] font-bold">A</span><span class="text-[11px] sw-accent sw-num font-semibold">1</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:30ms"><span class="text-[12px] font-bold">R</span><span class="text-[11px] sw-accent sw-num font-semibold">
10239</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:60ms"><span class="text-[12px] font-bold">J</span><span class="text-[11px] sw-accent sw-num font-semibold">1</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:90ms"><span class="text-[12px] font-bold">U</span><span class="text-[11px] sw-accent sw-num font-semibold">3</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:120ms"><span class="text-[12px] font-bold">N</span><span class="text-[11px] sw-accent sw-num font-semibold">5</span></span></div><div class="sw-panel p-3.5 flex items-center gap-3.5" aria-live="polite"><span class="numero-result sw-fade-swap">1</span><span class="flex flex-col min-w-0 gap-0.5"><span class="text-[14px] font-bold">The Leader</span><span class="text-[12px] leading-snug sw-muted">Independent and original. Happiest starting things.</span><span class="text-[11px] sw-mono sw-muted">19 → 10 → 1</span></span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Pythagorean &amp; Chaldean tables</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/numero_table" class="sw-api-link sw-mono" title="numero_table docs" aria-label="numero_table API docs">numero_table</a></span></div></footer></article></div><div class="wall-copy wall-copy-duplicate" aria-hidden="true"><article class="sw-card sw-theme-dusk" aria-label="Sunward, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Sw</span><span class="sw-appname">Sunward</span><span class="sw-appmeta">Thu, 24 Sep 2026</span></header><div role="radiogroup" aria-label="Zodiac sign" class="grid grid-cols-6 gap-1.5"><button type="button" role="radio" aria-checked="false" aria-label="Aries" title="Aries" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♈︎</button><button type="button" role="radio" aria-checked="false" aria-label="Taurus" title="Taurus" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♉︎</button><button type="button" role="radio" aria-checked="false" aria-label="Gemini" title="Gemini" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♊︎</button><button type="button" role="radio" aria-checked="false" aria-label="Cancer" title="Cancer" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♋︎</button><button type="button" role="radio" aria-checked="true" aria-label="Leo" title="Leo" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♌︎</button><button type="button" role="radio" aria-checked="false" aria-label="Virgo" title="Virgo" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♍︎</button><button type="button" role="radio" aria-checked="false" aria-label="Libra" title="Libra" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♎︎</button><button type="button" role="radio" aria-checked="false" aria-label="Scorpio" title="Scorpio" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♏︎</button><button type="button" role="radio" aria-checked="false" aria-label="Sagittarius" title="Sagittarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♐︎</button><button type="button" role="radio" aria-checked="false" aria-label="Capricorn" title="Capricorn" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♑︎</button><button type="button" role="radio" aria-checked="false" aria-label="Aquarius" title="Aquarius" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♒︎</button><button type="button" role="radio" aria-checked="false" aria-label="Pisces" title="Pisces" tabindex="-1" class="horo-sign h-9 rounded-[10px] text-[17px] leading-none flex items-center justify-center">♓︎</button></div><div class="sw-panel p-3.5 flex flex-col gap-2" aria-live="polite"><div class="flex items-baseline justify-between gap-2"><span class="sw-title sw-fade-swap">Leo</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Jul 23 – Aug 22</span></div><span class="sw-chip self-start">Focus · <!-- -->Opportunity</span>
1023<p class="sw-fade-swap text-[13px] leading-[1.5] min-h-[58px] sm:min-h-[78px]">Jupiter in your sign keeps doors open. The Sun in your 3rd house favours an overdue call.</p></div><div class="flex flex-wrap gap-1.5"><span class="sw-chip sw-chip-quiet">☉︎ Sun in Libra</span><span class="sw-chip sw-chip-quiet">☽︎ Moon in Pisces</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Daily readings · refreshed 05:30 IST</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/horoscope/sun_sign_prediction/daily/:zodiacName" class="sw-api-link sw-mono" title="sun_sign_prediction/daily/:zodiacName docs" aria-label="sun_sign_prediction/daily/:zodiacName API docs" tabindex="-1">sun_sign_prediction/daily/leo</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Grahaline, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">G</span><span class="sw-appname">Grahaline</span><span class="sw-appmeta">Birth chart</span></header><div class="sw-seg " role="group" aria-label="Chart"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Lagna D1</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Navamsa D9</button></div><div class="relative w-full aspect-square kundli-chart"><svg viewBox="0 0 100 100" preserveAspectRatio="none" class="absolute inset-0 w-full h-full" aria-hidden="true"><path d="M 0.5 0.5 H 99.5 V 99.5 H 0.5 Z M 0.5 0.5 L 99.5 99.5 M 99.5 0.5 L 0.5 99.5 M 50 0.5 L 99.5 50 L 50 99.5 L 0.5 50 Z" fill="none" stroke="var(--sw-accent)" stroke-opacity="0.55" stroke-width="1.2" vector-effect="non-scaling-stroke"></path><path d="M 50 0.5 L 75 25 L 50 50 L 25 25 Z" fill="var(--sw-accent)" fill-opacity="0.07"></path></svg><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:41.75%" aria-hidden="true">4</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:19%" aria-hidden="true">5</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:25%" aria-hidden="true">6</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:41.75%;top:50%" aria-hidden="true">7</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:19%;top:75%" aria-hidden="true">8</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:25%;top:81%" aria-hidden="true">9</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:58.25%" aria-hidden="true">10</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:81%" aria-hidden="true">11</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:75%" aria-hidden="true">12</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:58.25%;top:50%" aria-hidden="true">1</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:81%;top:25%" aria-hidden="true">2</span><span class="kundli-num absolute -translate-x-1/2 -translate-y-1/2" style="left:75%;top:19%" aria-hidden="true">3</span><span class="kundli-asc absolute -translate-x-1/2 -translate-y-1/2" style="left:50%;top:31%" aria-hidden="true">Asc</span><button type="button" aria-pressed="false" aria-label="Sun, house 12" class="kundli-planet absolute" style="left:75%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Su</button><button type="button" aria-pressed="true" aria-label="Moon, house 7" class="kundli-planet absolute" style="left:50%;top:77.5%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Mo</button><button type="button" aria-pressed="false" aria-label="Mars, house 2" class="kundli-planet absolute" style="left:25%;top:8%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Ma</button><button type="button" aria-pressed="false" aria-label="Mercury, house 1" class="kundli-planet absolute" style="left:50%;
1023top:18%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Me</button><button type="button" aria-pressed="false" aria-label="Jupiter, house 3" class="kundli-planet absolute" style="left:8.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Ju</button><button type="button" aria-pressed="false" aria-label="Venus, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, -11px)" tabindex="-1">Ve</button><button type="button" aria-pressed="false" aria-label="Saturn, house 8" class="kundli-planet absolute" style="left:75%;top:92%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Sa</button><button type="button" aria-pressed="false" aria-label="Rahu, house 5" class="kundli-planet absolute" style="left:8.5%;top:75%;transform:translate(-50%, -50%) translate(0px, 0px)" tabindex="-1">Ra</button><button type="button" aria-pressed="false" aria-label="Ketu, house 11" class="kundli-planet absolute" style="left:91.5%;top:25%;transform:translate(-50%, -50%) translate(0px, 11px)" tabindex="-1">Ke</button></div><div class="sw-panel px-3.5 py-3 flex items-center gap-3 h-[80px]" aria-l
1023ive="polite"><span class="kundli-badge">Mo</span><span class="flex flex-col min-w-0 sw-fade-swap leading-snug"><span class="text-[13px] font-bold truncate">Moon<!-- --> <span class="font-medium sw-muted">· House <!-- -->7</span></span><span class="text-[12px] truncate">Makara 15°19′</span><span class="text-[12px] sw-muted truncate">Shravana nakshatra · pada 2</span></span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Jul 1993 · 08:00 · New Delhi</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/horo_chart/:chart_id" class="sw-api-link sw-mono" title="horo_chart/:chart_id docs" aria-label="horo_chart/:chart_id API docs" tabindex="-1">horo_chart/D1</a><a href="/developers/v1/vedic/planets" class="sw-api-link sw-mono" title="planets docs" aria-label="planets API docs" tabindex="-1">planets</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Nightdeck, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">N</span><span class="sw-appname">Nightdeck</span><span class="sw-appmeta">Card of the day</span></header><div class="flex gap-4 items-center"><button type="button" aria-label="The Star. Draw another card" class="tarot-scene flex-none rounded-xl" style="width:104px;height:166px" tabindex="-1"><span class="tarot-inner is-up"><span class="tarot-face tarot-back" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="0.8"><rect x="5" y="5" width="50" height="86" rx="4"></rect><polygon points="30,36 31.72,43.84 38.49,39.51 34.16,46.28 42,48 34.16,49.72 38.49,56.49 31.72,52.16 30,60 28.28,52.16 21.51,56.49 25.84,49.72 18,48 25.84,46.28 21.51,39.51 28.28,43.84" fill="currentColor" fill-opacity="0.25"></polygon><circle cx="30" cy="48" r="18" stroke-opacity="0.6"></circle><circle cx="30" cy="48" r="24" stroke-opacity="0.35"></circle></svg></span><span class="tarot-face tarot-front" aria-hidden="true"><svg viewBox="0 0 60 96" width="100%" height="100%" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="52" height="88" rx="3.5" stroke-opacity="0.5"></rect><text x="30" y="14" text-anchor="middle" font-size="7.5" font-weight="700" fill="currentColor" stroke="none" letter-spacing="0.5">XVII</text><g><g><polygon points="30,27 31.91,35.38 39.19,30.81 34.62,38.09 43,40 34.62,41.91 39.19,49.19 31.91,44.62 30,53 28.09,44.62 20.81,49.19 25.38,41.91 17,40 25.38,38.09 20.81,30.81 28.09,35.38" fill="currentColor" fill-opacity="0.18"></polygon><polygon points="14,18.5 14.99,21.01 17.5,22 14.99,22.99 14,25.5 13.01,22.99 10.5,22 13.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="46,18.5 46.99,21.01 49.5,22 46.99,22.99 46,25.5 45.01,22.99 42.5,22 45.01,21.01" fill="currentColor" stroke="none"></polygon><polygon points="12,46.5 12.99,49.01 15.5,50 12.99,50.99 12,53.5 11.01,50.99 8.5,50 11.01,49.01" fill="currentColor" stroke="none"></polygon><polygon points="48,46.5 48.99,49.01 51.5,50 48.99,50.99 48,53.5 47.01,50.99 44.5,50 47.01,49.01" fill="currentColor" stroke="none"></polygon><path d="M 10 70 Q 20 66 30 70 T 50 70 M 12 76 Q 22 72 32 76 T 50 76"></path></g></g></svg></span></span></button><div class="flex flex-col gap-1.5 min-w-0" aria-live="polite"><span class="sw-label">Major · XVII</span><span class="sw-title sw-fade-swap">The Star</span><span class="text-[11px] font-semibold sw-accent">Hope · Renewal · Calm</span><p class="text-[13px] leading-snug">After a hard stretch, things settle. Rest and let hope back in.</p></div></div><p class="text-[11px] sw-muted -mt-1">Tap the card to draw again</p><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Rider–Waite–Smith · 78 cards</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/tarot/tarot_predictions" class="sw-api-link sw-mono" title="tarot_predictions docs" aria-label="tarot_predictions API docs" tabindex="-1">tarot_predictions</a></span></div></footer></article><article class="sw-card sw-theme-sage" aria-label="Namecraft, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Nc</span><span class="sw-appname">Namecraft</span><span class="sw-appmeta">Name number</span></header><form class="flex gap-2"><label for=":R95nsm:" class="sr-only">Full name</label><input id=":R95nsm:" type="text" maxLength="24" autoComplete="off" spellcheck="false" placeholder="Full name" class="sw-input flex-1" tabindex="-1" value="Arjun"/><button type="submit" class="sw-btn" tabindex="-1">Calculate</button></form><div class="sw-seg " role="group" aria-label="Numerology system"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Pythagorean</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Chaldean</button></div><div class="numero-tiles" aria-hidden="true"><span class="numero-tile sw-fade-swap" style="animation-delay:0ms"><span class="text-[12px] font-bold">A</span><span class="text-[11px] sw-accent sw-num font-semibold">1</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:30ms"><span class="text-[12px] font-bold">R</span><span class="text-[11px] sw-accent sw-num font-semibold">
10239</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:60ms"><span class="text-[12px] font-bold">J</span><span class="text-[11px] sw-accent sw-num font-semibold">1</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:90ms"><span class="text-[12px] font-bold">U</span><span class="text-[11px] sw-accent sw-num font-semibold">3</span></span><span class="numero-tile sw-fade-swap" style="animation-delay:120ms"><span class="text-[12px] font-bold">N</span><span class="text-[11px] sw-accent sw-num font-semibold">5</span></span></div><div class="sw-panel p-3.5 flex items-center gap-3.5" aria-live="polite"><span class="numero-result sw-fade-swap">1</span><span class="flex flex-col min-w-0 gap-0.5"><span class="text-[14px] font-bold">The Leader</span><span class="text-[12px] leading-snug sw-muted">Independent and original. Happiest starting things.</span><span class="text-[11px] sw-mono sw-muted">19 → 10 → 1</span></span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Pythagorean &amp; Chaldean tables</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/numero_table" class="sw-api-link sw-mono" title="numero_table docs" aria-label="numero_table API docs" tabindex="-1">numero_table</a></span></div></footer></article></div></div></div><div class="wall-column flex-1 min-w-0 hidden sm:block"><div class="wall-track wall-track-down"><div class="wall-copy"><article class="sw-card sw-theme-ink" aria-label="Ecliptica, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">E</span><span class="sw-appname">Ecliptica</span><span class="sw-appmeta">Placidus · Tropical</span></header><div class="sw-seg " role="group" aria-label="Chart layer"><button type="button" class="sw-seg-btn" aria-pressed="true">Natal</button><button type="button" class="sw-seg-btn" aria-pressed="false">Transits</button></div><svg viewBox="0 0 240 240" class="w-full h-auto" role="img" aria-label="Natal chart wheel"><circle cx="120" cy="120" r="116" fill="var(--sw-sunken)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="94" fill="var(--sw-bg)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="48" fill="none" stroke="var(--sw-line)"></circle><g><line x1="200.62" y1="168.33" x2="219.49" y2="179.64" stroke="var(--sw-line)"></line><text x="220.96" y="148.84" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♈︎</text></g><g><line x1="213.99" y1="121.54" x2="235.98" y2="121.9" stroke="var(--sw-line)"></line><text x="221.85" y="94.49" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♉︎</text></g><g><line x1="202.17" y1="74.34" x2="221.4" y2="63.66" stroke="var(--sw-line)"></line><text x="195.45" y="46.98" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♊︎</text></g><g><line x1="168.33" y1="39.38" x2="179.64" y2="20.51" stroke="var(--sw-line)"></line><text x="148.84" y="19.04" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♋︎</text></g><g><line x1="121.54" y1="26.01" x2="121.9" y2="4.02" stroke="var(--sw-line)"></line><text x="94.49" y="18.15" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♌︎</text></g><g><line x1="74.34" y1="37.83" x2="63.66" y2="18.6" stroke="var(--sw-line)"></line><text x="46.98" y="44.55" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♍︎</text></g><g><line x1="39.38" y1="71.67" x2="20.51" y2="60.36" stroke="var(--sw-line)"></line><text x="19.04" y="91.16" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♎︎</text></g><g><line x1="26.01" y1="118.46" x2="4.02" y2="118.1" stroke="var(--sw-line)"></line><text x="18.15" y="145.51" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♏︎</text></g><g><line x1="37.83" y1="165.66" x2="18.6" y2="176.34" stroke="var(--sw-line)"></line><text x="44.55" y="193.02" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♐︎</text></g><g><line x1="71.67" y1="200.62" x2="60.36" y2="219.49" stroke="var(--sw-line)"></line><text x="91.16" y="220.96" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♑︎</text></g><g><line x1="118.46" y1="213.99" x2="118.1" y2="235.98" stroke="var(--sw-line)"></line><text x="145.51" y="221.85" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♒︎</text></g><g><line x1="165.66" y1="202.17" x2="176.34" y2="221.4" stroke="var(--sw-line)"></line><text x="193.02" y="195.45" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♓︎</text></g><line x1="4" y1="120" x2="72" y2="120" stroke="var(--sw-accent)" stroke-width="1.5"></line><line x1="108.2" y1="4.6" x2="115.12" y2="72.25" stroke="var(--sw-accent)" stroke-width="1.5" stroke-opacity="0.6"></line><text x="30" y="114" font-size="11.5" font-weight="700" fill="var(--sw-accent)">AC</text><text x="126.22" y="62.33" font-size="11.5" font-weight="700" fill="var(--sw-accent)" text-anchor="middle" dominant-baseline="central" fill-opacity="0.8">MC</text><g><line x1="108.85" y1="73.31" x2="86.43" y2="154.31" class="sw-draw-line" stroke="var(--sw-leaf)" stroke-width="1.6"></line><line x1="108.85" y1="73.31" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-rose)" stroke-width="1.6"></line><line x1="89.31" y1="83.09" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-sky)" stroke-width="1.6"></line><g class="sw-fade-swap"><line x1="99.33" y1="33.43" x2="98.17" y2="28.57" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="101.42" y="42.19" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☉︎</text>
1023<circle cx="108.85" cy="73.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="57.75" y1="183.61" x2="54.26" y2="187.18" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="64.05" y="177.18" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☽︎</text><circle cx="86.43" cy="154.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="63.1" y1="51.56" x2="59.91" y2="47.72" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="68.86" y="58.48" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☿︎</text><circle cx="89.31" cy="83.09" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="78.67" y1="41.18" x2="76.35" y2="36.75" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="82.85" y="49.15" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♀︎</text><circle cx="97.71" cy="77.49" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="38.38" y1="155.49" x2="33.8" y2="157.48" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="46.64" y="151.9" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♂︎</text><circle cx="75.98" cy="139.14" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="79.62" y1="199.31" x2="77.35" y2="203.77" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="83.71" y="191.29" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♃︎</text><circle cx="98.22" cy="162.78" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="32.15" y1="134.29" x2="27.22" y2="135.09" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="41.04" y="132.85" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♄︎</text><circle cx="72.62" cy="127.71" r="2.2" fill="var(--sw-accent)"></circle></g></g></svg><ul class="flex flex-col gap-1.5" aria-live="polite"><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-leaf)"></span><span class="flex-1 truncate">☉︎ trine ☽︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->2°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-rose)"></span><span class="flex-1 truncate">☉︎ square ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->4°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-sky)"></span><span class="flex-1 truncate">☿︎ sextile ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->0°30′</span></li></ul><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Aug 1984 · 12:31 · New York</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-dusk" aria-label="Pairwise, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">P</span><span class="sw-appname">Pairwise</span><span class="sw-appmeta">Kundli milan</span></header><div class="flex items-center gap-3"><span class="flex flex-none" aria-hidden="true"><span class="match-avatar ">A</span><span class="match-avatar -ml-2">D</span></span><span class="flex flex-col min-w-0 leading-snug"><span class="text-[14px] font-bold">Aarav<!-- --> &amp; <!-- -->Diya</span><span class="text-[11px] sw-muted truncate">Hasta<!-- --> × <!-- -->Swati<!-- --> · <!-- -->Kanya<!-- --> × <!-- -->Tula<!-- --> Moon</span></span></div><div class="sw-seg " role="group" aria-label="Result view"><button type="button" class="sw-seg-btn" aria-pressed="true">Summary</button><button type="button" class="sw-seg-btn" aria-pressed="false">8 kootas</button></div>
1023<div class="sw-panel p-3.5 h-[206px]" aria-live="polite"><div class="flex flex-col items-center gap-2"><div class="relative" style="width:180px;height:96px"><svg width="180" height="96" viewBox="0 0 180 96" aria-hidden="true"><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-sunken)" stroke-width="12" stroke-linecap="round"></path><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-accent)" stroke-width="12" stroke-linecap="round" stroke-dasharray="219.91" stroke-dashoffset="51.92"></path></svg><div class="absolute inset-x-0 bottom-0 flex flex-col items-center leading-none"><span class="text-[30px] font-extrabold sw-num tracking-tight">27.5<span class="text-[14px] font-semibold sw-muted"> / <!-- -->36</span></span></div></div><span class="sw-chip">Strong match</span><ul class="flex flex-col gap-1 self-stretch"><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Bhakoot dosha cancelled</li><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Neither is Manglik</li></ul></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Ashtakoot · North Indian method</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/match_ashtakoot_points" class="sw-api-link sw-mono" title="match_ashtakoot_points docs" aria-label="match_ashtakoot_points API docs">match_ashtakoot_points</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Lunet, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">L</span><span class="sw-appname">Lunet</span><span class="sw-appmeta">New Delhi · 21:00</span></header><div class="flex items-center gap-4" aria-live="polite"><div class="moon-glow flex-none"><svg width="96" height="96" viewBox="0 0 96 96" aria-hidden="true" class=""><circle cx="48" cy="48" r="47" fill="var(--sw-sunken)"></circle><path d="M 48 1 A 47 47 0 0 1 48 95 A 42.53 47 0 0 1 48 1 Z" fill="#f4f1e6"></path></svg></div><div class="flex flex-col gap-1 min-w-0 sw-fade-swap"><span class="text-[11px] sw-muted">Thu<!-- -->, <!-- -->24<!-- --> Sep<!-- --> · Tonight</span><span class="sw-title">Waxing Gibbous</span><span class="text-[13px]"><span class="font-bold sw-accent sw-num">95<!-- -->%</span> lit · <!-- -->13.5<!-- --> days</span><span class="text-[12px] sw-muted">Moon in <!-- -->Pisces</span></div></div><div class="grid grid-cols-2 gap-2"><div class="sw-panel px-3 py-2 flex flex-col"><span class="text-[11px] sw-muted">Moonrise</span><span class="text-[15px] font-bold sw-num">16:53</span></div><div class="sw-panel px-3 py-2 flex flex-col"><span class="text-[11px] sw-muted">Moonset</span><span class="text-[15px] font-bold sw-num">03:39</span></div></div><div class="grid grid-cols-7 gap-1" role="group" aria-label="Day"><button type="button" aria-pressed="false" aria-label="Tue 22 September, Waxing Gibbous" class="moon-day"><span class="text-[11px] sw-muted">Tu</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 5.99 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">22</span></button><button type="button" aria-pressed="false" aria-label="Wed 23 September, Waxing Gibbous" class="moon-day"><span class="text-[11px] sw-muted">We</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 7.2 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">23</span></button><button type="button" aria-pressed="true" aria-label="Thu 24 September, Waxing Gibbous" class="moon-day"><span class="text-[11px] sw-muted">Th</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 8.14 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">24</span></button><button type="button" aria-pressed="false" aria-label="Fri 25 September, Waxing Gibbous" class="moon-day"><span class="text-[11px] sw-muted">Fr</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 8.77 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">25</span></button><button type="button" aria-pressed="false" aria-label="Sat 26 September, Full Moon" class="moon-day"><span class="text-[11px] sw-muted">Sa</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><circle cx="10" cy="10" r="9" fill="#f4f1e6"></circle></svg><span class="text-[12px] font-semibold sw-num">26</span></button><button type="button" aria-pressed="false" aria-label="Sun 27 September, Waning Gibbous" class="moon-day"><span class="text-[11px] sw-muted">Su</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 0 10 19 A 8.8 9 0 0 0 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">27</span></button><button type="button" aria-pressed="false" aria-label="Mon 28 September, Waning Gibbous" class="moon-day"><span class="text-[11px] sw-muted">Mo</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 0 10 19 A 8.16 9 0 0 0 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">28</span></button></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Full moon Sat 26 Sep, 22:19</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/lunar_metrics" class="sw-api-link sw-mono" title="lunar_metrics docs" aria-label="lunar_metrics API docs">lunar_metrics</a></span></div></footer></article></div><div class="wall-copy wall-copy-duplicate" aria-hidden="true"><article class="sw-card sw-theme-ink" aria-label="Ecliptica, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">E</span><span class="sw-appname">Ecliptica</span><span class="sw-appmeta">Placidus · Tropical</span></header><div class="sw-seg " role="group" aria-label="Chart layer"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Natal</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Transits</button></div><svg viewBox="0 0 240 240" class="w-full h-auto" role="img" aria-label="Natal chart wheel">
1023<circle cx="120" cy="120" r="116" fill="var(--sw-sunken)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="94" fill="var(--sw-bg)" stroke="var(--sw-line)"></circle><circle cx="120" cy="120" r="48" fill="none" stroke="var(--sw-line)"></circle><g><line x1="200.62" y1="168.33" x2="219.49" y2="179.64" stroke="var(--sw-line)"></line><text x="220.96" y="148.84" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♈︎</text></g><g><line x1="213.99" y1="121.54" x2="235.98" y2="121.9" stroke="var(--sw-line)"></line><text x="221.85" y="94.49" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♉︎</text></g><g><line x1="202.17" y1="74.34" x2="221.4" y2="63.66" stroke="var(--sw-line)"></line><text x="195.45" y="46.98" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♊︎</text></g><g><line x1="168.33" y1="39.38" x2="179.64" y2="20.51" stroke="var(--sw-line)"></line><text x="148.84" y="19.04" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♋︎</text></g><g><line x1="121.54" y1="26.01" x2="121.9" y2="4.02" stroke="var(--sw-line)"></line><text x="94.49" y="18.15" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♌︎</text></g><g><line x1="74.34" y1="37.83" x2="63.66" y2="18.6" stroke="var(--sw-line)"></line><text x="46.98" y="44.55" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♍︎</text></g><g><line x1="39.38" y1="71.67" x2="20.51" y2="60.36" stroke="var(--sw-line)"></line><text x="19.04" y="91.16" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♎︎</text></g><g><line x1="26.01" y1="118.46" x2="4.02" y2="118.1" stroke="var(--sw-line)"></line><text x="18.15" y="145.51" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♏︎</text></g><g><line x1="37.83" y1="165.66" x2="18.6" y2="176.34" stroke="var(--sw-line)"></line><text x="44.55" y="193.02" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-rose)">♐︎</text></g><g><line x1="71.67" y1="200.62" x2="60.36" y2="219.49" stroke="var(--sw-line)"></line><text x="91.16" y="220.96" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-leaf)">♑︎</text></g><g><line x1="118.46" y1="213.99" x2="118.1" y2="235.98" stroke="var(--sw-line)"></line><text x="145.51" y="221.85" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-gold)">♒︎</text></g><g><line x1="165.66" y1="202.17" x2="176.34" y2="221.4" stroke="var(--sw-line)"></line><text x="193.02" y="195.45" font-size="11.5" text-anchor="middle" dominant-baseline="central" fill="var(--sw-sky)">♓︎</text></g><line x1="4" y1="120" x2="72" y2="120" stroke="var(--sw-accent)" stroke-width="1.5"></line><line x1="108.2" y1="4.6" x2="115.12" y2="72.25" stroke="var(--sw-accent)" stroke-width="1.5" stroke-opacity="0.6"></line><text x="30" y="114" font-size="11.5" font-weight="700" fill="var(--sw-accent)">AC</text><text x="126.22" y="62.33" font-size="11.5" font-weight="700" fill="var(--sw-accent)" text-anchor="middle" dominant-baseline="central" fill-opacity="0.8">MC</text><g><line x1="108.85" y1="73.31" x2="86.43" y2="154.31" class="sw-draw-line" stroke="var(--sw-leaf)" stroke-width="1.6"></line><line x1="108.85" y1="73.31" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-rose)" stroke-width="1.6"></line><line x1="89.31" y1="83.09" x2="72.62" y2="127.71" class="sw-draw-line" stroke="var(--sw-sky)" stroke-width="1.6"></line><g class="sw-fade-swap"><line x1="99.33" y1="33.43" x2="98.17" y2="28.57" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="101.42" y="42.19" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☉︎</text><circle cx="108.85" cy="73.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="57.75" y1="183.61" x2="54.26" y2="187.18" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="64.05" y="177.18" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☽︎</text><circle cx="86.43" cy="154.31" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="63.1" y1="51.56" x2="59.91" y2="47.72" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="68.86" y="58.48" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">☿︎</text><circle cx="89.31" cy="83.09" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="78.67" y1="41.18" x2="76.35" y2="36.75" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="82.85" y="49.15" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♀︎</text><circle cx="97.71" cy="77.49" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="38.38" y1="155.49" x2="33.8" y2="157.48" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="46.64" y="151.9" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♂︎</text><circle cx="75.98" cy="139.14" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="79.62" y1="199.31" x2="77.35" y2="203.77" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="83.71" y="191.29" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♃︎</text><circle cx="98.22" cy="162.78" r="2.2" fill="var(--sw-accent)"></circle></g><g class="sw-fade-swap"><line x1="32.15" y1="134.29" x2="27.22" y2="135.09" stroke="var(--sw-accent)" stroke-width="1.4"></line><text x="41.04" y="132.85" font-size="14" text-anchor="middle" dominant-baseline="central" fill="var(--sw-text)">♄︎</text><circle cx="72.62" cy="127.71" r="2.2" fill="var(--sw-accent)"></circle></g></g></svg>
1023<ul class="flex flex-col gap-1.5" aria-live="polite"><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-leaf)"></span><span class="flex-1 truncate">☉︎ trine ☽︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->2°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-rose)"></span><span class="flex-1 truncate">☉︎ square ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->4°11′</span></li><li class="flex items-center gap-2 text-[12px] sw-fade-swap"><span class="inline-block w-3 h-[3px] rounded-full flex-none" style="background:var(--sw-sky)"></span><span class="flex-1 truncate">☿︎ sextile ♄︎</span><span class="sw-muted sw-mono text-[11px]">orb <!-- -->0°30′</span></li></ul><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Aug 1984 · 12:31 · New York</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs" tabindex="-1">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-dusk" aria-label="Pairwise, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">P</span><span class="sw-appname">Pairwise</span><span class="sw-appmeta">Kundli milan</span></header><div class="flex items-center gap-3"><span class="flex flex-none" aria-hidden="true"><span class="match-avatar ">A</span><span class="match-avatar -ml-2">D</span></span><span class="flex flex-col min-w-0 leading-snug"><span class="text-[14px] font-bold">Aarav<!-- --> &amp; <!-- -->Diya</span><span class="text-[11px] sw-muted truncate">Hasta<!-- --> × <!-- -->Swati<!-- --> · <!-- -->Kanya<!-- --> × <!-- -->Tula<!-- --> Moon</span></span></div><div class="sw-seg " role="group" aria-label="Result view"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Summary</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">8 kootas</button></div><div class="sw-panel p-3.5 h-[206px]" aria-live="polite"><div class="flex flex-col items-center gap-2"><div class="relative" style="width:180px;height:96px"><svg width="180" height="96" viewBox="0 0 180 96" aria-hidden="true"><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-sunken)" stroke-width="12" stroke-linecap="round"></path><path d="M 20 86 A 70 70 0 0 1 160 86" fill="none" stroke="var(--sw-accent)" stroke-width="12" stroke-linecap="round" stroke-dasharray="219.91" stroke-dashoffset="51.92"></path></svg><div class="absolute inset-x-0 bottom-0 flex flex-col items-center leading-none"><span class="text-[30px] font-extrabold sw-num tracking-tight">27.5<span class="text-[14px] font-semibold sw-muted"> / <!-- -->36</span></span></div></div><span class="sw-chip">Strong match</span><ul class="flex flex-col gap-1 self-stretch"><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Bhakoot dosha cancelled</li><li class="flex items-center gap-2 text-[12px]"><svg width="14" height="14" viewBox="0 0 14 14" aria-hidden="true" class="flex-none"><circle cx="7" cy="7" r="7" fill="var(--sw-accent-soft)"></circle><path d="M4 7.2 6.1 9.2 10 5" fill="none" stroke="var(--sw-accent)" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Neither is Manglik</li></ul></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Ashtakoot · North Indian method</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/match_ashtakoot_points" class="sw-api-link sw-mono" title="match_ashtakoot_points docs" aria-label="match_ashtakoot_points API docs" tabindex="-1">match_ashtakoot_points</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Lunet, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">L</span><span class="sw-appname">Lunet</span><span class="sw-appmeta">New Delhi · 21:00</span></header><div class="flex items-center gap-4" aria-live="polite"><div class="moon-glow flex-none"><svg width="96" height="96" viewBox="0 0 96 96" aria-hidden="true" class=""><circle cx="48" cy="48" r="47" fill="var(--sw-sunken)"></circle><path d="M 48 1 A 47 47 0 0 1 48 95 A 42.53 47 0 0 1 48 1 Z" fill="#f4f1e6"></path></svg></div><div class="flex flex-col gap-1 min-w-0 sw-fade-swap"><span class="text-[11px] sw-muted">Thu<!-- -->, <!-- -->24<!-- --> Sep<!-- --> · Tonight</span><span class="sw-title">Waxing Gibbous</span><span class="text-[13px]"><span class="font-bold sw-accent sw-num">95<!-- -->%</span> lit · <!-- -->13.5<!-- --> days</span><span class="text-[12px] sw-muted">Moon in <!-- -->Pisces</span></div></div><div class="grid grid-cols-2 gap-2"><div class="sw-panel px-3 py-2 flex flex-col"><span class="text-[11px] sw-muted">Moonrise</span><span class="text-[15px] font-bold sw-num">16:53</span></div><div class="sw-panel px-3 py-2 flex flex-col"><span class="text-[11px] sw-muted">Moonset</span><span class="text-[15px] font-bold sw-num">03:39</span></div></div><div class="grid grid-cols-7 gap-1" role="group" aria-label="Day"><button type="button" aria-pressed="false" aria-label="Tue 22 September, Waxing Gibbous" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">Tu</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 5.99 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">22</span></button><button type="button" aria-pressed="false" aria-label="Wed 23 September, Waxing Gibbous" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">We</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 7.2 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">23</span></button><button type="button" aria-pressed="true" aria-label="Thu 24 September, Waxing Gibbous" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">Th</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 8.14 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">24</span></button><button type="button" aria-pressed="false" aria-label="Fri 25 September, Waxing Gibbous" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">Fr</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 1 10 19 A 8.77 9 0 0 1 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">25</span></button><button type="button" aria-pressed="false" aria-label="Sat 26 September, Full Moon" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">Sa</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><circle cx="10" cy="10" r="9" fill="#f4f1e6"></circle></svg><span class="text-[12px] font-semibold sw-num">26</span></button><button type="button" aria-pressed="false" aria-label="Sun 27 September, Waning Gibbous" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">Su</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 0 10 19 A 8.8 9 0 0 0 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">27</span></button><button type="button" aria-pressed="false" aria-label="Mon 28 September, Waning Gibbous" class="moon-day" tabindex="-1"><span class="text-[11px] sw-muted">Mo</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class=""><circle cx="10" cy="10" r="9" fill="var(--sw-sunken)"></circle><path d="M 10 1 A 9 9 0 0 0 10 19 A 8.16 9 0 0 0 10 1 Z" fill="#f4f1e6"></path></svg><span class="text-[12px] font-semibold sw-num">28</span></button></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Full moon Sat 26 Sep, 22:19</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/lunar_metrics" class="sw-api-link sw-mono" title="lunar_metrics docs" aria-label="lunar_metrics API docs" tabindex="-1">lunar_metrics</a></span></div></footer></article></div></div></div><div class="wall-column flex-1 min-w-0 hidden lg:block"><div class="wall-track "><div class="wall-copy"><article class="sw-card sw-theme-sage" aria-label="Dashaboard, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">D</span><span class="sw-appname">Dashaboard</span><span class="sw-appmeta">Vimshottari</span></header><div class="sw-panel p-3.5 flex flex-col gap-2"><span class="sw-label">Running now</span><span class="flex items-baseline gap-2 flex-wrap"><span class="sw-title">Jupiter<!-- --> <span class="sw-muted font-semibold">›</span> <!-- -->Saturn</span><span class="text-[11px] sw-muted">Maha › Antar</span></span><span class="text-[12px] sw-num">
102328 Aug 2026 – 10 Mar 2029</span><span class="h-1.5 rounded-full overflow-hidden" style="background:var(--sw-sunken)" aria-hidden="true"><span class="block h-full rounded-full" style="width:4%;background:var(--sw-accent)"></span></span><span class="text-[11px] sw-muted">2.9<!-- -->% of the Saturn antardasha done</span></div><div class="flex flex-col gap-1.5"><div class="relative flex h-9 gap-[3px]" role="group" aria-label="Mahadashas"><button type="button" aria-pressed="false" aria-label="Moon mahadasha, Birth – 10 Jul 1999" title="Moon" class="dasha-seg" data-state="past" style="flex-grow:6.009999999999991;flex-basis:0"></button><button type="button" aria-pressed="false" aria-label="Mars mahadasha, 10 Jul 1999 – 10 Jul 2006" title="Mars" class="dasha-seg" data-state="past" style="flex-grow:7;flex-basis:0"></button><button type="button" aria-pressed="false" aria-label="Rahu mahadasha, 10 Jul 2006 – 9 Jul 2024" title="Rahu" class="dasha-seg" data-state="past" style="flex-grow:18;flex-basis:0">Ra</button><button type="button" aria-pressed="true" aria-label="Jupiter mahadasha, 9 Jul 2024 – 9 Jul 2040" title="Jupiter" class="dasha-seg" data-state="now" style="flex-grow:16;flex-basis:0">Ju</button><button type="button" aria-pressed="false" aria-label="Saturn mahadasha, 9 Jul 2040 – 10 Jul 2059" title="Saturn" class="dasha-seg" data-state="future" style="flex-grow:19;flex-basis:0">Sa</button><button type="button" aria-pressed="false" aria-label="Mercury mahadasha, 10 Jul 2059 – 9 Jul 2076" title="Mercury" class="dasha-seg" data-state="future" style="flex-grow:17;flex-basis:0">Me</button><button type="button" aria-pressed="false" aria-label="Ketu mahadasha, 9 Jul 2076 – 10 Jul 2083" title="Ketu" class="dasha-seg" data-state="future" style="flex-grow:7;flex-basis:0"></button><span class="dasha-now" style="left:calc(0.3691 * (100% - 18px) + 9px)" aria-hidden="true"></span></div><div class="relative h-4 text-[11px] sw-muted sw-num" aria-hidden="true"><span class="absolute left-0">1993</span><span class="absolute -translate-x-1/2 font-semibold sw-accent" style="left:calc(0.3691 * (100% - 18px) + 9px)">Now</span><span class="absolute right-0">2083</span></div></div>
1023<div class="h-[146px]" aria-live="polite"><div class="flex flex-col gap-1.5 sw-fade-swap"><span class="flex items-baseline justify-between gap-2"><span class="text-[14px] font-bold">Jupiter<!-- --> mahadasha</span><span class="text-[11px] sw-muted whitespace-nowrap">16 yrs</span></span><span class="text-[12px] sw-muted sw-num">9 Jul 2024 – 9 Jul 2040<!-- --> · <!-- -->Running now</span><ul class="flex flex-col gap-1 pt-1"><li class="dasha-ad" data-state="done"><span class="font-semibold">Jupiter</span><span class="sw-num">9 Jul 2024 – 28 Aug 2026</span></li><li class="dasha-ad" data-state="now"><span class="font-semibold">Saturn</span><span class="sw-num">28 Aug 2026 – 10 Mar 2029</span></li><li class="dasha-ad" data-state="next"><span class="font-semibold">Mercury</span><span class="sw-num">10 Mar 2029 – 16 Jun 2031</span></li></ul></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Jul 1993 · 08:00 · New Delhi</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/major_vdasha" class="sw-api-link sw-mono" title="major_vdasha docs" aria-label="major_vdasha API docs">major_vdasha</a><a href="/developers/v1/vedic/current_vdasha" class="sw-api-link sw-mono" title="current_vdasha docs" aria-label="current_vdasha API docs">current_vdasha</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Ask Vela, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">V</span><span class="sw-appname">Ask Vela</span><span class="sw-appmeta">Scorpio rising</span></header><div class="h-[228px] overflow-hidden flex flex-col justify-end gap-2.5" aria-live="polite"><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-end items-end"><div class="chat-bubble chat-user">Is this a good year to change jobs?</div></div><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-start"><div class="chat-bubble chat-assistant">Yes, it is a strong window. Jupiter moves through your 10th house of career from 30 Jun 2026 to 26 Jul 2027.</div><div class="flex flex-wrap gap-1"><span class="sw-chip">♃︎ Jupiter in 10th</span><span class="sw-chip">Scorpio rising</span></div></div></div><div class="flex flex-col gap-1.5"><span class="sw-label">Ask next</span><div class="flex flex-col gap-1.5 min-h-[78px]"><button type="button" class="chat-suggest">When should I ask for a raise?</button><button type="button" class="chat-suggest">Anything to watch out for?</button></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Answers cite your birth chart</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/chat-api" class="sw-api-link sw-mono" title="api/chat docs" aria-label="api/chat API docs">api/chat</a><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Shubh Dates, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">S</span><span class="sw-appname">Shubh Dates</span><span class="sw-appmeta">New Delhi</span></header><div class="grid grid-cols-2 gap-1.5" role="group" aria-label="Event"><button type="button" aria-pressed="true" class="muhurta-event">Marriage</button><button type="button" aria-pressed="false" class="muhurta-event">Griha Pravesh</button><button type="button" aria-pressed="false" class="muhurta-event">Vehicle</button><button type="button" aria-pressed="false" class="muhurta-event">Business</button></div><div class="sw-panel p-3"><div class="flex items-center justify-between mb-2"><span class="text-[13px] font-bold">February 2027</span><span class="flex items-center gap-1.5 text-[11px] sw-muted"><span class="w-2 h-2 rounded-full" style="background:var(--sw-accent-soft);box-shadow:inset 0 0 0 1px var(--sw-accent)"></span>Auspicious</span></div><div class="grid grid-cols-7 gap-y-1 text-center" aria-hidden="true"><span class="text-[11px] sw-muted font-semibold">S</span><span class="text-[11px] sw-muted font-semibold">M</span><span class="text-[11px] sw-muted font-semibold">T</span><span class="text-[11px] sw-muted font-semibold">W</span><span class="text-[11px] sw-muted font-semibold">T</span><span class="text-[11px] sw-muted font-semibold">F</span><span class="text-[11px] sw-muted font-semibold">S</span><span></span><span class="muhurta-day sw-num" data-state="plain">1</span><span class="muhurta-day sw-num" data-state="plain">2</span><span class="muhurta-day sw-num" data-state="good">3</span><span class="muhurta-day sw-num" data-state="plain">4</span><span class="muhurta-day sw-num" data-state="plain">5</span><span class="muhurta-day sw-num" data-state="plain">6</span><span class="muhurta-day sw-num" data-state="plain">7</span><span class="muhurta-day sw-num" data-state="plain">8</span><span class="muhurta-day sw-num" data-state="plain">
10239</span><span class="muhurta-day sw-num" data-state="plain">10</span><span class="muhurta-day sw-num" data-state="pick">11</span><span class="muhurta-day sw-num" data-state="plain">12</span><span class="muhurta-day sw-num" data-state="plain">13</span><span class="muhurta-day sw-num" data-state="plain">14</span><span class="muhurta-day sw-num" data-state="plain">15</span><span class="muhurta-day sw-num" data-state="plain">16</span><span class="muhurta-day sw-num" data-state="plain">17</span><span class="muhurta-day sw-num" data-state="plain">18</span><span class="muhurta-day sw-num" data-state="plain">19</span><span class="muhurta-day sw-num" data-state="plain">20</span><span class="muhurta-day sw-num" data-state="good">21</span><span class="muhurta-day sw-num" data-state="good">22</span><span class="muhurta-day sw-num" data-state="plain">23</span><span class="muhurta-day sw-num" data-state="plain">24</span><span class="muhurta-day sw-num" data-state="good">25</span><span class="muhurta-day sw-num" data-state="good">26</span><span class="muhurta-day sw-num" data-state="plain">27</span><span class="muhurta-day sw-num" data-state="plain">28</span></div><span class="sr-only">Auspicious dates: <!-- -->3 February, 11 February, 21 February, 22 February, 25 February, 26 February</span></div><div class="flex flex-col gap-0.5 sw-fade-swap" aria-live="polite"><span class="text-[11px] sw-muted">Best window · <!-- -->Thu, 11 Feb 2027</span><span class="text-[20px] font-extrabold sw-num tracking-tight sw-accent">11:42 – 13:37</span><span class="text-[12px] sw-muted">Revati<!-- --> · <!-- -->Vrishabha lagna · Shukla 5</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Muhurta by nakshatra, tithi and lagna</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/monthly_muhurta/marriage" class="sw-api-link sw-mono" title="monthly_muhurta/marriage docs" aria-label="monthly_muhurta/marriage API docs">monthly_muhurta/marriage</a></span></div></footer></article></div><div class="wall-copy wall-copy-duplicate" aria-hidden="true"><article class="sw-card sw-theme-sage" aria-label="Dashaboard, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">D</span><span class="sw-appname">Dashaboard</span><span class="sw-appmeta">Vimshottari</span></header><div class="sw-panel p-3.5 flex flex-col gap-2"><span class="sw-label">Running now</span><span class="flex items-baseline gap-2 flex-wrap"><span class="sw-title">Jupiter<!-- --> <span class="sw-muted font-semibold">›</span> <!-- -->Saturn</span><span class="text-[11px] sw-muted">Maha › Antar</span></span><span class="text-[12px] sw-num">28 Aug 2026 – 10 Mar 2029</span><span class="h-1.5 rounded-full overflow-hidden" style="background:var(--sw-sunken)" aria-hidden="true"><span class="block h-full rounded-full" style="width:4%;background:var(--sw-accent)"></span></span><span class="text-[11px] sw-muted">2.9<!-- -->% of the Saturn antardasha done</span></div><div class="flex flex-col gap-1.5"><div class="relative flex h-9 gap-[3px]" role="group" aria-label="Mahadashas"><button type="button" aria-pressed="false" aria-label="Moon mahadasha, Birth – 10 Jul 1999" title="Moon" class="dasha-seg" data-state="past" style="flex-grow:6.009999999999991;flex-basis:0" tabindex="-1"></button><button type="button" aria-pressed="false" aria-label="Mars mahadasha, 10 Jul 1999 – 10 Jul 2006" title="Mars" class="dasha-seg" data-state="past" style="flex-grow:7;flex-basis:0" tabindex="-1"></button><button type="button" aria-pressed="false" aria-label="Rahu mahadasha, 10 Jul 2006 – 9 Jul 2024" title="Rahu" class="dasha-seg" data-state="past" style="flex-grow:18;flex-basis:0" tabindex="-1">Ra</button><button type="button" aria-pressed="true" aria-label="Jupiter mahadasha, 9 Jul 2024 – 9 Jul 2040" title="Jupiter" class="dasha-seg" data-state="now" style="flex-grow:16;flex-basis:0" tabindex="-1">Ju</button><button type="button" aria-pressed="false" aria-label="Saturn mahadasha, 9 Jul 2040 – 10 Jul 2059" title="Saturn" class="dasha-seg" data-state="future" style="flex-grow:19;flex-basis:0" tabindex="-1">Sa</button><button type="button" aria-pressed="false" aria-label="Mercury mahadasha, 10 Jul 2059 – 9 Jul 2076" title="Mercury" class="dasha-seg" data-state="future" style="flex-grow:17;flex-basis:0" tabindex="-1">Me</button><button type="button" aria-pressed="false" aria-label="Ketu mahadasha, 9 Jul 2076 – 10 Jul 2083" title="Ketu" class="dasha-seg" data-state="future" style="flex-grow:7;flex-basis:0" tabindex="-1"></button><span class="dasha-now" style="left:calc(0.3691 * (100% - 18px) + 9px)" aria-hidden="true"></span></div><div class="relative h-4 text-[11px] sw-muted sw-num" aria-hidden="true"><span class="absolute left-0">1993</span><span class="absolute -translate-x-1/2 font-semibold sw-accent" style="left:calc(0.3691 * (100% - 18px) + 9px)">Now</span><span class="absolute right-0">2083</span></div></div>
1023<div class="h-[146px]" aria-live="polite"><div class="flex flex-col gap-1.5 sw-fade-swap"><span class="flex items-baseline justify-between gap-2"><span class="text-[14px] font-bold">Jupiter<!-- --> mahadasha</span><span class="text-[11px] sw-muted whitespace-nowrap">16 yrs</span></span><span class="text-[12px] sw-muted sw-num">9 Jul 2024 – 9 Jul 2040<!-- --> · <!-- -->Running now</span><ul class="flex flex-col gap-1 pt-1"><li class="dasha-ad" data-state="done"><span class="font-semibold">Jupiter</span><span class="sw-num">9 Jul 2024 – 28 Aug 2026</span></li><li class="dasha-ad" data-state="now"><span class="font-semibold">Saturn</span><span class="sw-num">28 Aug 2026 – 10 Mar 2029</span></li><li class="dasha-ad" data-state="next"><span class="font-semibold">Mercury</span><span class="sw-num">10 Mar 2029 – 16 Jun 2031</span></li></ul></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">6 Jul 1993 · 08:00 · New Delhi</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/major_vdasha" class="sw-api-link sw-mono" title="major_vdasha docs" aria-label="major_vdasha API docs" tabindex="-1">major_vdasha</a><a href="/developers/v1/vedic/current_vdasha" class="sw-api-link sw-mono" title="current_vdasha docs" aria-label="current_vdasha API docs" tabindex="-1">current_vdasha</a></span></div></footer></article><article class="sw-card sw-theme-midnight" aria-label="Ask Vela, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">V</span><span class="sw-appname">Ask Vela</span><span class="sw-appmeta">Scorpio rising</span></header><div class="h-[228px] overflow-hidden flex flex-col justify-end gap-2.5" aria-live="polite"><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-end items-end"><div class="chat-bubble chat-user">Is this a good year to change jobs?</div></div><div class="sw-fade-swap flex flex-col gap-1.5 max-w-[88%] self-start"><div class="chat-bubble chat-assistant">Yes, it is a strong window. Jupiter moves through your 10th house of career from 30 Jun 2026 to 26 Jul 2027.</div><div class="flex flex-wrap gap-1"><span class="sw-chip">♃︎ Jupiter in 10th</span><span class="sw-chip">Scorpio rising</span></div></div></div><div class="flex flex-col gap-1.5"><span class="sw-label">Ask next</span><div class="flex flex-col gap-1.5 min-h-[78px]"><button type="button" class="chat-suggest" tabindex="-1">When should I ask for a raise?</button><button type="button" class="chat-suggest" tabindex="-1">Anything to watch out for?</button></div></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Answers cite your birth chart</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/chat-api" class="sw-api-link sw-mono" title="api/chat docs" aria-label="api/chat API docs" tabindex="-1">api/chat</a><a href="/developers/v1/western/western_horoscope" class="sw-api-link sw-mono" title="western_horoscope docs" aria-label="western_horoscope API docs" tabindex="-1">western_horoscope</a></span></div></footer></article><article class="sw-card sw-theme-ivory" aria-label="Shubh Dates, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">S</span><span class="sw-appname">Shubh Dates</span><span class="sw-appmeta">New Delhi</span></header><div class="grid grid-cols-2 gap-1.5" role="group" aria-label="Event"><button type="button" aria-pressed="true" class="muhurta-event" tabindex="-1">Marriage</button><button type="button" aria-pressed="false" class="muhurta-event" tabindex="-1">Griha Pravesh</button><button type="button" aria-pressed="false" class="muhurta-event" tabindex="-1">Vehicle</button><button type="button" aria-pressed="false" class="muhurta-event" tabindex="-1">Business</button></div><div class="sw-panel p-3"><div class="flex items-center justify-between mb-2"><span class="text-[13px] font-bold">February 2027</span><span class="flex items-center gap-1.5 text-[11px] sw-muted"><span class="w-2 h-2 rounded-full" style="background:var(--sw-accent-soft);box-shadow:inset 0 0 0 1px var(--sw-accent)"></span>Auspicious</span></div><div class="grid grid-cols-7 gap-y-1 text-center" aria-hidden="true"><span class="text-[11px] sw-muted font-semibold">S</span><span class="text-[11px] sw-muted font-semibold">M</span><span class="text-[11px] sw-muted font-semibold">T</span><span class="text-[11px] sw-muted font-semibold">W</span><span class="text-[11px] sw-muted font-semibold">T</span><span class="text-[11px] sw-muted font-semibold">F</span><span class="text-[11px] sw-muted font-semibold">S</span><span></span><span class="muhurta-day sw-num" data-state="plain">1</span><span class="muhurta-day sw-num" data-state="plain">2</span><span class="muhurta-day sw-num" data-state="good">3</span><span class="muhurta-day sw-num" data-state="plain">4</span><span class="muhurta-day sw-num" data-state="plain">5</span><span class="muhurta-day sw-num" data-state="plain">6</span><span class="muhurta-day sw-num" data-state="plain">7</span><span class="muhurta-day sw-num" data-state="plain">8</span><span class="muhurta-day sw-num" data-state="plain">
10239</span><span class="muhurta-day sw-num" data-state="plain">10</span><span class="muhurta-day sw-num" data-state="pick">11</span><span class="muhurta-day sw-num" data-state="plain">12</span><span class="muhurta-day sw-num" data-state="plain">13</span><span class="muhurta-day sw-num" data-state="plain">14</span><span class="muhurta-day sw-num" data-state="plain">15</span><span class="muhurta-day sw-num" data-state="plain">16</span><span class="muhurta-day sw-num" data-state="plain">17</span><span class="muhurta-day sw-num" data-state="plain">18</span><span class="muhurta-day sw-num" data-state="plain">19</span><span class="muhurta-day sw-num" data-state="plain">20</span><span class="muhurta-day sw-num" data-state="good">21</span><span class="muhurta-day sw-num" data-state="good">22</span><span class="muhurta-day sw-num" data-state="plain">23</span><span class="muhurta-day sw-num" data-state="plain">24</span><span class="muhurta-day sw-num" data-state="good">25</span><span class="muhurta-day sw-num" data-state="good">26</span><span class="muhurta-day sw-num" data-state="plain">27</span><span class="muhurta-day sw-num" data-state="plain">28</span></div><span class="sr-only">Auspicious dates: <!-- -->3 February, 11 February, 21 February, 22 February, 25 February, 26 February</span></div><div class="flex flex-col gap-0.5 sw-fade-swap" aria-live="polite"><span class="text-[11px] sw-muted">Best window · <!-- -->Thu, 11 Feb 2027</span><span class="text-[20px] font-extrabold sw-num tracking-tight sw-accent">11:42 – 13:37</span><span class="text-[12px] sw-muted">Revati<!-- --> · <!-- -->Vrishabha lagna · Shukla 5</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Muhurta by nakshatra, tithi and lagna</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/monthly_muhurta/marriage" class="sw-api-link sw-mono" title="monthly_muhurta/marriage docs" aria-label="monthly_muhurta/marriage API docs" tabindex="-1">monthly_muhurta/marriage</a></span></div></footer></article></div></div></div><div class="wall-column flex-1 min-w-0 hidden xl:block"><div class="wall-track wall-track-down"><div class="wall-copy"><article class="sw-card sw-theme-ivory" aria-label="Tithi Today, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">T</span><span class="sw-appname">Tithi Today</span><span class="sw-appmeta">New Delhi</span></header><div class="flex flex-col gap-0.5"><span class="text-[11px] sw-muted">Thu, 24 Sep 2026</span><span class="sw-title">Bhadrapada Shukla Trayodashi</span></div><div class="sw-seg " role="group" aria-label="Panchang view"><button type="button" class="sw-seg-btn" aria-pressed="true">Panchang</button><button type="button" class="sw-seg-btn" aria-pressed="false">Timings</button></div><div class="sw-panel px-3.5 py-2.5 h-[204px]" aria-live="polite"><dl class="flex flex-col sw-fade-swap"><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] "><dt class="text-[12px] sw-muted">Tithi</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Trayodashi</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 23:18</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Nakshatra</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhanishta</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 10:34</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Yoga</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhriti</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 15:53</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Karana</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Kaulava</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 11:09</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Vara</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Guruvara</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Thursday</span></dd></div></dl></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Lahiri ayanamsa · Amanta month</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/advanced_panchang" class="sw-api-link sw-mono" title="advanced_panchang docs" aria-label="advanced_panchang API docs">advanced_panchang</a></span></div></footer></article><article class="sw-card sw-theme-ink" aria-label="Skyfeed, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Sf</span><span class="sw-appname">Skyfeed</span><span class="sw-appmeta">05:30 IST</span></header><div class="sw-seg " role="group" aria-label="Zodiac"><button type="button" class="sw-seg-btn" aria-pressed="true">Tropical</button><button type="button" class="sw-seg-btn" aria-pressed="false">Sidereal</button></div>
1023<div class="sw-panel px-3.5 py-1" aria-live="polite"><div class="flex items-baseline justify-between gap-3 py-2 sw-fade-swap "><span class="text-[12px] sw-muted"><span class="sw-accent">☉︎</span> <!-- -->Sun</span><span class="text-[15px] font-bold sw-num">Libra 0°58′</span></div><div class="flex items-baseline justify-between gap-3 py-2 sw-fade-swap border-t sw-hair"><span class="text-[12px] sw-muted"><span class="sw-accent">☽︎</span> <!-- -->Moon</span><span class="text-[15px] font-bold sw-num">Aquarius 28°12′</span></div></div><div class="sw-well overflow-hidden py-2.5" aria-hidden="true"><div class="wall-ticker-track"><span class="inline-flex"><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☉︎</span> <!-- -->Libra 0°58′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☽︎</span> <!-- -->Aquarius 28°12′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☿︎</span> <!-- -->Libra 20°56′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♀︎</span> <!-- -->Scorpio 6°55′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♂︎</span> <!-- -->Cancer 27°34′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♃︎</span> <!-- -->Leo 18°18′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♄︎</span> <!-- -->Aries 12°07′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♅︎</span> <!-- -->Gemini 5°37′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♆︎</span> <!-- -->Aries 3°04′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♇︎</span> <!-- -->Aquarius 3°11′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☊︎</span> <!-- -->Aquarius 28°05′</span></span><span class="inline-flex"><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☉︎</span> <!-- -->Libra 0°58′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☽︎</span> <!-- -->Aquarius 28°12′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☿︎</span> <!-- -->Libra 20°56′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♀︎</span> <!-- -->Scorpio 6°55′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♂︎</span> <!-- -->Cancer 27°34′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♃︎</span> <!-- -->Leo 18°18′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♄︎</span> <!-- -->Aries 12°07′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♅︎</span> <!-- -->Gemini 5°37′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♆︎</span> <!-- -->Aries 3°04′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♇︎</span> <!-- -->Aquarius 3°11′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☊︎</span> <!-- -->Aquarius 28°05′</span></span></div></div><p class="text-[12px] sw-muted -mt-1 min-h-[36px]"><span class="font-semibold" style="color:var(--sw-text)">℞ Retrograde:</span> <!-- -->Saturn, Uranus, Neptune, Pluto</p><span class="sr-only">Sun Libra 0°58′; Moon Aquarius 28°12′; Mercury Libra 20°56′; Venus Scorpio 6°55′; Mars Cancer 27°34′; Jupiter Leo 18°18′; Saturn Aries 12°07′ retrograde; Uranus Gemini 5°37′ retrograde; Neptune Aries 3°04′ retrograde; Pluto Aquarius 3°11′ retrograde; Node Aquarius 28°05′</span><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">24 Sep 2026 · 05:30 IST</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/planets/tropical" class="sw-api-link sw-mono" title="planets/tropical docs" aria-label="planets/tropical API docs">planets/tropical</a></span></div></footer></article><article class="sw-card sw-theme-sage" aria-label="Palmprint, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Pp</span><span class="sw-appname">Palmprint</span><span class="sw-appmeta">Scan result</span></header><div class="flex gap-3 items-stretch"><div class="palm-frame flex-none" aria-hidden="true"><svg viewBox="-4 4 70 96" width="100%" height="100%" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M 23 97 L 21.6 90 C 13.6 87.6 11.56 79.09 8.94 71.25 Q 3.84 58.48 0.21 45.11 A 4.3 4.3 0 0 1 8.19 41.89 L 13.6 55.4 Q 15.3 59.6 17.2 59.4 Q 18.5 56 18.6 49 L 17.8 18 A 4.5 4.5 0 0 1 26.8 18 L 28.4 49 Q 28.75 50.6 29.1 47.5 L 29.4 12.1 A 4.6 4.6 0 0 1 38.6 12.1 L 38.9 47.5 Q 39.25 50.1 39.6 48.5 L 40.85 15.8 A 4.3 4.3 0 0 1 49.45 15.8 L 48.9 48.5 Q 49.25 53.6 49.6 52 L 51.9 29.1 A 3.6 3.6 0 0 1 59.1 29.1 L 57.4 52 C 59.6 62 60.2 76 56.6 89.6 L 55 97" fill="var(--sw-raised)" stroke="var(--sw-muted)" stroke-width="0.9"></path><path d="M 58.9 60.4 C 50 60 40.5 59.4 33.8 55.6 Q 30.6 53.6 29.4 50.8" stroke="var(--sw-rose)" stroke-width="2.4" stroke-opacity="1" class="palm-line"></path><path d="M 18.4 57.8 C 28 60 39 63.2 51.6 69.6" stroke="var(--sw-sky)" stroke-width="1.4" stroke-opacity="0.45" class="palm-line"></path><path d="M 18.4 58.4 C 26 63 29.6 73 28.6 82 Q 28.1 86 26.9 89.6" stroke="var(--sw-leaf)" stroke-width="1.4" stroke-opacity="0.45" class="palm-line"></path><path d="M 39.2 88 C 38 77 36 65.4 34.3 56.4" stroke="var(--sw-gold)" stroke-width="1.4" stroke-opacity="0.45" class="palm-line"></path></svg></div><ul class="flex flex-col gap-1 flex-1 min-w-0" role="group" aria-label="Palm lines"><li><button type="button" aria-pressed="true" class="palm-row"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-rose)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Heart line</span><span class="text-[11px] sw-num sw-muted">82<!-- -->%</span></button></li><li><button type="button" aria-pressed="false" class="palm-row"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-sky)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Head line</span><span class="text-[11px] sw-num sw-muted">76<!-- -->%</span></button></li><li><button type="button" aria-pressed="false" class="palm-row"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-leaf)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Life line</span><span class="text-[11px] sw-num sw-muted">91<!-- -->%</span></button></li><li><button type="button" aria-pressed="false" class="palm-row"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-gold)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Fate line</span><span class="text-[11px] sw-num sw-muted">64<!-- -->%</span></button></li></ul></div>
1023<div class="sw-panel px-3.5 py-3 min-h-[84px]" aria-live="polite"><p class="text-[13px] leading-snug sw-fade-swap">Curves up between index and middle finger: warm and open with people you trust.</p></div><div class="flex items-center gap-2 flex-wrap"><span class="sw-chip">Air hand</span><span class="text-[12px] sw-muted">Square palm, long fingers</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Left hand · 4 major lines found</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/palm-reading-api/major-lines" class="sw-api-link sw-mono" title="major-lines docs" aria-label="major-lines API docs">major-lines</a><a href="/developers/v1/palm-reading-api/hand-type" class="sw-api-link sw-mono" title="hand-type docs" aria-label="hand-type API docs">hand-type</a></span></div></footer></article></div><div class="wall-copy wall-copy-duplicate" aria-hidden="true"><article class="sw-card sw-theme-ivory" aria-label="Tithi Today, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">T</span><span class="sw-appname">Tithi Today</span><span class="sw-appmeta">New Delhi</span></header><div class="flex flex-col gap-0.5"><span class="text-[11px] sw-muted">Thu, 24 Sep 2026</span><span class="sw-title">Bhadrapada Shukla Trayodashi</span></div><div class="sw-seg " role="group" aria-label="Panchang view"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Panchang</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Timings</button></div><div class="sw-panel px-3.5 py-2.5 h-[204px]" aria-live="polite"><dl class="flex flex-col sw-fade-swap"><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] "><dt class="text-[12px] sw-muted">Tithi</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Trayodashi</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 23:18</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Nakshatra</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhanishta</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 10:34</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Yoga</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Dhriti</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 15:53</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Karana</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Kaulava</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">till 11:09</span></dd></div><div class="grid grid-cols-[76px_1fr] gap-2 py-[7px] border-t sw-hair"><dt class="text-[12px] sw-muted">Vara</dt><dd class="flex items-baseline justify-between gap-2 min-w-0"><span class="text-[13px] font-semibold truncate">Guruvara</span><span class="text-[11px] sw-muted sw-num whitespace-nowrap">Thursday</span></dd></div></dl></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Lahiri ayanamsa · Amanta month</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/vedic/advanced_panchang" class="sw-api-link sw-mono" title="advanced_panchang docs" aria-label="advanced_panchang API docs" tabindex="-1">advanced_panchang</a></span></div></footer></article><article class="sw-card sw-theme-ink" aria-label="Skyfeed, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Sf</span><span class="sw-appname">Skyfeed</span><span class="sw-appmeta">05:30 IST</span></header><div class="sw-seg " role="group" aria-label="Zodiac"><button type="button" class="sw-seg-btn" aria-pressed="true" tabindex="-1">Tropical</button><button type="button" class="sw-seg-btn" aria-pressed="false" tabindex="-1">Sidereal</button></div>
1023<div class="sw-panel px-3.5 py-1" aria-live="polite"><div class="flex items-baseline justify-between gap-3 py-2 sw-fade-swap "><span class="text-[12px] sw-muted"><span class="sw-accent">☉︎</span> <!-- -->Sun</span><span class="text-[15px] font-bold sw-num">Libra 0°58′</span></div><div class="flex items-baseline justify-between gap-3 py-2 sw-fade-swap border-t sw-hair"><span class="text-[12px] sw-muted"><span class="sw-accent">☽︎</span> <!-- -->Moon</span><span class="text-[15px] font-bold sw-num">Aquarius 28°12′</span></div></div><div class="sw-well overflow-hidden py-2.5" aria-hidden="true"><div class="wall-ticker-track"><span class="inline-flex"><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☉︎</span> <!-- -->Libra 0°58′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☽︎</span> <!-- -->Aquarius 28°12′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☿︎</span> <!-- -->Libra 20°56′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♀︎</span> <!-- -->Scorpio 6°55′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♂︎</span> <!-- -->Cancer 27°34′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♃︎</span> <!-- -->Leo 18°18′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♄︎</span> <!-- -->Aries 12°07′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♅︎</span> <!-- -->Gemini 5°37′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♆︎</span> <!-- -->Aries 3°04′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♇︎</span> <!-- -->Aquarius 3°11′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☊︎</span> <!-- -->Aquarius 28°05′</span></span><span class="inline-flex"><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☉︎</span> <!-- -->Libra 0°58′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☽︎</span> <!-- -->Aquarius 28°12′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☿︎</span> <!-- -->Libra 20°56′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♀︎</span> <!-- -->Scorpio 6°55′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♂︎</span> <!-- -->Cancer 27°34′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♃︎</span> <!-- -->Leo 18°18′</span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♄︎</span> <!-- -->Aries 12°07′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♅︎</span> <!-- -->Gemini 5°37′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♆︎</span> <!-- -->Aries 3°04′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">♇︎</span> <!-- -->Aquarius 3°11′<span class="sw-muted"> ℞</span></span><span class="text-[12px] sw-mono px-3 whitespace-nowrap"><span class="sw-accent">☊︎</span> <!-- -->Aquarius 28°05′</span></span></div></div><p class="text-[12px] sw-muted -mt-1 min-h-[36px]"><span class="font-semibold" style="color:var(--sw-text)">℞ Retrograde:</span> <!-- -->Saturn, Uranus, Neptune, Pluto</p><span class="sr-only">Sun Libra 0°58′; Moon Aquarius 28°12′; Mercury Libra 20°56′; Venus Scorpio 6°55′; Mars Cancer 27°34′; Jupiter Leo 18°18′; Saturn Aries 12°07′ retrograde; Uranus Gemini 5°37′ retrograde; Neptune Aries 3°04′ retrograde; Pluto Aquarius 3°11′ retrograde; Node Aquarius 28°05′</span><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">24 Sep 2026 · 05:30 IST</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/western/planets/tropical" class="sw-api-link sw-mono" title="planets/tropical docs" aria-label="planets/tropical API docs" tabindex="-1">planets/tropical</a></span></div></footer></article><article class="sw-card sw-theme-sage" aria-label="Palmprint, an example app screen"><header class="sw-appbar"><span class="sw-monogram" aria-hidden="true">Pp</span><span class="sw-appname">Palmprint</span><span class="sw-appmeta">Scan result</span></header><div class="flex gap-3 items-stretch"><div class="palm-frame flex-none" aria-hidden="true"><svg viewBox="-4 4 70 96" width="100%" height="100%" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M 23 97 L 21.6 90 C 13.6 87.6 11.56 79.09 8.94 71.25 Q 3.84 58.48 0.21 45.11 A 4.3 4.3 0 0 1 8.19 41.89 L 13.6 55.4 Q 15.3 59.6 17.2 59.4 Q 18.5 56 18.6 49 L 17.8 18 A 4.5 4.5 0 0 1 26.8 18 L 28.4 49 Q 28.75 50.6 29.1 47.5 L 29.4 12.1 A 4.6 4.6 0 0 1 38.6 12.1 L 38.9 47.5 Q 39.25 50.1 39.6 48.5 L 40.85 15.8 A 4.3 4.3 0 0 1 49.45 15.8 L 48.9 48.5 Q 49.25 53.6 49.6 52 L 51.9 29.1 A 3.6 3.6 0 0 1 59.1 29.1 L 57.4 52 C 59.6 62 60.2 76 56.6 89.6 L 55 97" fill="var(--sw-raised)" stroke="var(--sw-muted)" stroke-width="0.9"></path><path d="M 58.9 60.4 C 50 60 40.5 59.4 33.8 55.6 Q 30.6 53.6 29.4 50.8" stroke="var(--sw-rose)" stroke-width="2.4" stroke-opacity="1" class="palm-line"></path><path d="M 18.4 57.8 C 28 60 39 63.2 51.6 69.6" stroke="var(--sw-sky)" stroke-width="1.4" stroke-opacity="0.45" class="palm-line"></path><path d="M 18.4 58.4 C 26 63 29.6 73 28.6 82 Q 28.1 86 26.9 89.6" stroke="var(--sw-leaf)" stroke-width="1.4" stroke-opacity="0.45" class="palm-line"></path><path d="M 39.2 88 C 38 77 36 65.4 34.3 56.4" stroke="var(--sw-gold)" stroke-width="1.4" stroke-opacity="0.45" class="palm-line"></path></svg></div><ul class="flex flex-col gap-1 flex-1 min-w-0" role="group" aria-label="Palm lines"><li><button type="button" aria-pressed="true" class="palm-row" tabindex="-1"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-rose)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Heart line</span><span class="text-[11px] sw-num sw-muted">82<!-- -->%</span></button></li><li><button type="button" aria-pressed="false" class="palm-row" tabindex="-1"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-sky)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Head line</span><span class="text-[11px] sw-num sw-muted">76<!-- -->%</span></button></li><li><button type="button" aria-pressed="false" class="palm-row" tabindex="-1"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-leaf)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Life line</span><span class="text-[11px] sw-num sw-muted">91<!-- -->%</span></button></li><li><button type="button" aria-pressed="false" class="palm-row" tabindex="-1"><span class="w-2.5 h-2.5 rounded-full flex-none" style="background:var(--sw-gold)"></span><span class="flex-1 text-left text-[12px] font-semibold truncate">Fate line</span><span class="text-[11px] sw-num sw-muted">64<!-- -->%</span></button></li></ul></div>
1023<div class="sw-panel px-3.5 py-3 min-h-[84px]" aria-live="polite"><p class="text-[13px] leading-snug sw-fade-swap">Curves up between index and middle finger: warm and open with people you trust.</p></div><div class="flex items-center gap-2 flex-wrap"><span class="sw-chip">Air hand</span><span class="text-[12px] sw-muted">Square palm, long fingers</span></div><footer class="sw-footer"><div class="sw-footer-layer sw-footer-meta" aria-hidden="true">Left hand · 4 major lines found</div><div class="sw-footer-layer sw-footer-api"><span class="sw-api-tag">Powered by</span><span class="sw-api-links"><a href="/developers/v1/palm-reading-api/major-lines" class="sw-api-link sw-mono" title="major-lines docs" aria-label="major-lines API docs" tabindex="-1">major-lines</a><a href="/developers/v1/palm-reading-api/hand-type" class="sw-api-link sw-mono" title="hand-type docs" aria-label="hand-type API docs" tabindex="-1">hand-type</a></span></div></footer></article></div></div></div></div></div></section><section id="astro-ai" class="ga-root relative w-full bg-primary-bg py-6 md:py-10"><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 relative z-10"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:translateX(-30px)" class="max-w-3xl mb-14 md:mb-20"><p class="ga-eyebrow mb-4">ASTRO AI</p><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text mb-6 text-4xl md:text-6xl font-black">AI Astrology, Grounded in Real Data.</h2><p class="text-base leading-relaxed text-secondary-text max-w-2xl">Our AI calls the astrology API before it writes. Every claim in an answer points back to a value the API calculated, so you and your users can check it.</p></div><div class="flex flex-col gap-20 md:gap-28"><div><div class="grid grid-cols-1 lg:grid-cols-12 gap-4 lg:gap-10 items-end mb-8"><div class="lg:col-span-6"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text text-3xl md:text-4xl font-black leading-tight">An astrologer that shows its work.</h3></div><div class="lg:col-span-6"><p class="text-base leading-relaxed text-secondary-text leading-relaxed">The Chat API fetches the chart first, then answers. Hover or tab to a highlighted claim to see the calculated value behind it, then switch grounding off to see what a model writes without it.</p><div class="flex flex-wrap gap-x-6 gap-y-2 mt-3"><a class="ga-link" href="/astro-ai/chat-api">Explore Chat API<!-- --> <span aria-hidden="true">→</span></a></div></div></div><div class="flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 mb-5"><div class="ga-tabs" role="tablist" aria-label="Example questions"><button id="ga-chat-tab-career" type="button" role="tab" aria-selected="true" aria-controls="ga-chat-panel" tabindex="0" class="ga-tab">Career timing<span class="ga-tab-sub">Vedic</span></button><button id="ga-chat-tab-match" type="button" role="tab" aria-selected="false" aria-controls="ga-chat-panel" tabindex="-1" class="ga-tab">Compatibility<span class="ga-tab-sub">Vedic</span></button><button id="ga-chat-tab-western" type="button" role="tab" aria-selected="false" aria-controls="ga-chat-panel" tabindex="-1" class="ga-tab">Promotion year<span class="ga-tab-sub">Western</span></button></div><button type="button" role="switch" aria-checked="true" class="ga-switch self-start sm:self-auto">Grounding<span class="ga-switch-state" aria-hidden="true">On</span><span class="ga-switch-track" aria-hidden="true"></span></button></div><div id="ga-chat-panel" role="tabpanel" aria-labelledby="ga-chat-tab-career" class="grid grid-cols-1 lg:grid-cols-12 gap-4 lg:gap-5"><div class="ga-panel lg:col-span-7 flex flex-col"><div class="ga-panel-head"><span class="ga-panel-title"><span class="ga-live-dot" aria-hidden="true"></span>Astro AI Chat</span><span class="ga-reserve"><span class="ga-chip ">Kundli · 6 Jul 1993 · 08:00 IST · New Delhi</span><span class="ga-chip ga-ghost" aria-hidden="true">Aarav (Hasta) + Diya (Swati)</span><span class="ga-chip ga-ghost" aria-hidden="true">Natal chart · Scorpio rising · whole-sign houses</span></span></div><div class="ga-chat-body flex-1"><div class="ga-reserve justify-items-end"><div class="ga-msg-user ">Is this a good time for me to change jobs?</div><div class="ga-msg-user ga-ghost" aria-hidden="true">Are Aarav and Diya a good match for marriage?</div><div class="ga-msg-user ga-ghost" aria-hidden="true">Is this a good year to go for a promotion?</div></div><div class="ga-msg-ai">
1023<div class="ga-msg-meta" aria-live="polite"><b>Astro AI</b><span class="inline-flex items-center gap-1.5">Answered from <!-- -->3<!-- --> calculated facts</span></div><div class="ga-reserve"><div class="ga-ghost" aria-hidden="true"><p class="ga-answer">Yes, if you plan it. You have just entered <span class="ga-claim">the Saturn sub-period of your Jupiter dasha, which runs from 28 Aug 2026 to 10 Mar 2029<span class="ga-cite">1</span></span>, and Saturn <span class="ga-claim">rules your Moon sign, Makara<span class="ga-cite">2</span></span>. Saturn is also <span class="ga-claim">moving through Meena, the 3rd house from your Moon, until 3 Jun 2027<span class="ga-cite">3</span></span>, a classic placement for effort paying off. Use the months before June 2027 for a well-prepared move rather than a sudden leap.</p></div><div class="ga-ghost" aria-hidden="true"><p class="ga-answer">Career timing depends on your birth chart, and I don&#x27;t have it, so I can only speak generally. Many astrologers look at the running dasha and at Saturn and Jupiter transits over the 10th house before a job change. Saturn tends to reward preparation, so a planned move is usually wiser than a sudden one.</p></div><div class="ga-ghost" aria-hidden="true"><p class="ga-answer">On the numbers, yes. They score <span class="ga-claim">27.5 of 36 points<span class="ga-cite">1</span></span>, well above the usual minimum of 18. The one weak spot is <span class="ga-claim">Bhakoot, at 0 of 7, because Kanya and Tula sit 2/12 from each other<span class="ga-cite">2</span></span>, but that dosha is treated as cancelled here because <span class="ga-claim">the two Moon-sign lords, Mercury and Venus, are friends<span class="ga-cite">3</span></span>. <span class="ga-claim">Neither of them is Manglik<span class="ga-cite">4</span></span>, so there is no Mangal dosha to weigh.</p></div><div class="ga-ghost" aria-hidden="true"><p class="ga-answer">I can&#x27;t score this match without both birth charts. A Vedic check usually compares the two Moon signs and nakshatras across eight factors (Ashtakoot, out of 36 points) and looks for Manglik dosha. As a rule of thumb, 18 points or more is considered acceptable.</p></div><div class="ga-ghost" aria-hidden="true"><p class="ga-answer">Yes, this is one of your stronger years for it. With <span class="ga-claim">Scorpio rising, Leo is your 10th house<span class="ga-cite">1</span></span> of career and reputation, and <span class="ga-claim">Jupiter is in Leo from 30 Jun 2026 to 26 Jul 2027<span class="ga-cite">2</span></span>, a transit that comes round about once every 12 years. <span class="ga-claim">Jupiter is retrograde from 14 Dec 2026 to 14 Apr 2027<span class="ga-cite">3</span></span>, so make the ask before mid-December or after mid-April.</p></div><div class="ga-ghost" aria-hidden="true"><p class="ga-answer">For a promotion question I&#x27;d want to know which house Jupiter is moving through in your chart, and I don&#x27;t have your chart. Jupiter changes sign roughly once a year, and its pass through your 10th house is traditionally the best window for career moves. If you share your birth time and place, I can be specific.</p></div><div><p class="ga-answer" aria-busy="false">Yes, if you plan it. You have just entered <a href="#ga-ev-career-1" class="ga-claim " aria-describedby="ga-ev-career-1">the Saturn sub-period of your Jupiter dasha, which runs from 28 Aug 2026 to 10 Mar 2029<span class="ga-cite"><span class="sr-only">source </span>1</span></a>, and Saturn <a href="#ga-ev-career-2" class="ga-claim " aria-describedby="ga-ev-career-2">rules your Moon sign, Makara<span class="ga-cite"><span class="sr-only">source </span>2</span></a>. Saturn is also <a href="#ga-ev-career-3" class="ga-claim " aria-describedby="ga-ev-career-3">moving through Meena, the 3rd house from your Moon, until 3 Jun 2027<span class="ga-cite"><span class="sr-only">source </span>3</span></a>, a classic placement for effort paying off. Use the months before June 2027 for a well-prepared move rather than a sudden leap.</p></div></div><span class="ga-verdict is-good ">3 claims · each one cites its source</span></div></div></div><section class="ga-panel lg:col-span-5 flex flex-col" aria-label="Evidence"><div class="ga-panel-head"><span class="ga-panel-title">Evidence</span><span class="ga-panel-meta">3 of 3 facts · computed by the API</span></div><div class="ga-reserve flex-1"><ol class="ga-ev-list ga-ghost" aria-hidden="true"><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">1</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->1<!-- -->, from endpoint </span>current_vdasha</span><span class="ga-ev-label">Running dasha</span></div><div class="ga-ev-value">
1023Jupiter › Saturn · 28 Aug 2026 – 10 Mar 2029</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">2</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->2<!-- -->, from endpoint </span>planets</span><span class="ga-ev-label">Natal Moon</span></div><div class="ga-ev-value">Makara, Shravana · sign lord Saturn</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">3</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->3<!-- -->, from endpoint </span>planets</span><span class="ga-ev-label">Transit Saturn</span></div><div class="ga-ev-value">Meena · 3rd from Moon · until 3 Jun 2027</div></div></li></ol><ol class="ga-ev-list ga-ghost" aria-hidden="true"><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">1</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->1<!-- -->, from endpoint </span>match_ashtakoot_points</span><span class="ga-ev-label">Guna Milan</span></div><div class="ga-ev-value">27.5 of 36 · minimum 18</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">2</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->2<!-- -->, from endpoint </span>match_ashtakoot_points</span><span class="ga-ev-label">Bhakoot</span></div><div class="ga-ev-value">0 of 7 · Kanya–Tula, 2/12</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">3</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->3<!-- -->, from endpoint </span>match_ashtakoot_points</span><span class="ga-ev-label">Graha Maitri</span></div><div class="ga-ev-value">5 of 5 · Mercury and Venus are friends</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">4</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->4<!-- -->, from endpoint </span>match_manglik_report</span><span class="ga-ev-label">Manglik</span></div><div class="ga-ev-value">Aarav: no · Diya: no</div></div></li></ol><ol class="ga-ev-list ga-ghost" aria-hidden="true"><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">1</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->1<!-- -->, from endpoint </span>western_horoscope</span><span class="ga-ev-label">Ascendant</span></div><div class="ga-ev-value">Scorpio · whole-sign houses · Leo is the 10th</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">2</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->2<!-- -->, from endpoint </span>planets/tropical</span><span class="ga-ev-label">Transit Jupiter</span></div><div class="ga-ev-value">Leo · 30 Jun 2026 – 26 Jul 2027</div></div></li><li class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">3</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->3<!-- -->, from endpoint </span>tropical_transits/monthly</span><span class="ga-ev-label">Retrograde</span></div><div class="ga-ev-value">Jupiter Rx · 14 Dec 2026 – 14 Apr 2027</div></div></li></ol><ol class="ga-ev-list"><li id="ga-ev-career-1" tabindex="0" class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">1</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->1<!-- -->, from endpoint </span>current_vdasha</span><span class="ga-ev-label">Running dasha</span></div><div class="ga-ev-value">Jupiter › Saturn · 28 Aug 2026 – 10 Mar 2029</div></div></li><li id="ga-ev-career-2" tabindex="0" class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">2</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->2<!-- -->, from endpoint </span>planets</span><span class="ga-ev-label">Natal Moon</span></div><div class="ga-ev-value">Makara, Shravana · sign lord Saturn</div></div></li><li id="ga-ev-career-3" tabindex="0" class="ga-ev-row  "><span class="ga-ev-num" aria-hidden="true">3</span><div class="min-w-0"><div class="ga-ev-top"><span class="ga-ev-src ga-mono"><span class="sr-only">Fact <!-- -->3<!-- -->, from endpoint </span>planets</span><span class="ga-ev-label">Transit Saturn</span></div><div class="ga-ev-value">Meena · 3rd from Moon · until 3 Jun 2027</div></div></li></ol></div></section></div><div class="ga-strip mt-5"><span class="font-bold">Ship it as</span><a class="ga-strip-item" href="/astro-ai/chat-api"><b>Widget</b><span>three lines of JavaScript</span></a><a class="ga-strip-item" href="/developers/v1/chat-api"><b>REST</b><span>token-by-token streaming</span></a><a class="ga-strip-item" href="/astro-ai/chat-api"><b>React / Flutter SDK</b><span>birth details kept for the session</span></a></div></div><div><div class="grid grid-cols-1 lg:grid-cols-12 gap-4 lg:gap-10 items-end mb-8"><div class="lg:col-span-6"><h3 class="text-2xl sm:text-3xl font-bold font-heading leading-snug text-primary-text text-3xl md:text-4xl font-black leading-tight">Give any agent a real ephemeris.</h3></div><div class="lg:col-span-6"><p class="text-base leading-relaxed text-secondary-text leading-relaxed">Point your MCP client at one URL. When a question needs chart data, the agent calls a tool and answers from the result instead of from memory.</p><div class="flex flex-wrap gap-x-6 gap-y-2 mt-3"><a class="ga-link" href="/developers/v1/mcp-server">MCP docs<!-- --> <span aria-hidden="true">→</span></a><a class="ga-link" href="/astro-ai/mcp-server">MCP Server<!-- --> <span aria-hidden="true">→</span></a></div></div></div><div class="grid grid-cols-1 lg:grid-cols-12 gap-4 lg:gap-5"><div class="lg:col-span-6 flex flex-col gap-4 min-w-0"><div class="ga-code"><div class="ga-code-head"><div role="tablist" aria-label="MCP client" class="ga-code-tabs flex gap-1.5"><button id="ga-mcp-tab-claude-code" type="button" role="tab" aria-selected="true" aria-controls="ga-mcp-p
1023anel" tabindex="0" class="ga-code-tab">Claude Code</button><button id="ga-mcp-tab-claude-desktop" type="button" role="tab" aria-selected="false" aria-controls="ga-mcp-panel" tabindex="-1" class="ga-code-tab">Claude Desktop</button><button id="ga-mcp-tab-cursor" type="button" role="tab" aria-selected="false" aria-controls="ga-mcp-panel" tabindex="-1" class="ga-code-tab">Cursor</button><button id="ga-mcp-tab-curl" type="button" role="tab" aria-selected="false" aria-controls="ga-mcp-panel" tabindex="-1" class="ga-code-tab">cURL</button></div><button type="button" class="ga-copy  " aria-label="Copy snippet"><span aria-live="polite">Copy</span></button></div><div id="ga-mcp-panel" role="tabpanel" aria-labelledby="ga-mcp-tab-claude-code"><pre class="ga-pre ga-mono" tabindex="0"><code><span class="ga-tok-cmd">claude</span> mcp add<!-- --> <span class="ga-tok-f">--transport</span> http astrology https://mcp.astrologyapi.com/mcp<!-- --> <span class="ga-tok-f">--header</span> <span class="ga-tok-s">&quot;x-astrologyapi-key: YOUR_API_KEY&quot;</span></code></pre><p class="ga-code-note">Replace YOUR_API_KEY with your key, then run claude mcp list to check the connection.</p></div></div><div class="ga-code"><div class="ga-code-head"><span class="ga-code-title">Check the connection</span><button type="button" class="ga-copy  " aria-label="Copy snippet"><span aria-live="polite">Copy</span></button></div><pre class="ga-pre ga-mono" tabindex="0"><code><span class="ga-tok-cmd">curl</span> <span class="ga-tok-f">-X</span> POST https://mcp.astrologyapi.com/mcp \
1024 <!-- --> <span class="ga-tok-f">-H</span> <span class="ga-tok-s">&quot;Content-Type: application/json&quot;</span> \
1025 <!-- --> <span class="ga-tok-f">-d</span> &#x27;<span class="ga-tok-p">{</span>
1026    <span class="ga-tok-k">&quot;jsonrpc&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;2.0&quot;</span><span class="ga-tok-p">,</span>
1027    <span class="ga-tok-k">&quot;id&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">1</span><span class="ga-tok-p">,</span>
1028    <span class="ga-tok-k">&quot;method&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;tools/list&quot;</span>
1029  <span class="ga-tok-p">}</span>&#x27;</code></pre><p class="ga-code-note">tools/list returns every tool the agent can call, each with its input schema.</p></div><div class="flex flex-col gap-2 px-1"><p class="text-sm text-secondary-text"><span class="ga-mono font-bold text-primary-text">109 tools · Vedic + Western</span><span class="mx-2" aria-hidden="true">·</span>one URL: <span class="ga-mono">mcp.astrologyapi.com/mcp</span></p><div class="ga-compat"><span class="text-tertiary-text font-semibold">Works with</span><span>Claude</span><span>ChatGPT</span><span>Cursor</span><span>LangChain</span><span>CrewAI</span><span>AutoGen</span></div></div></div><div class="lg:col-span-6 min-w-0"><section class="ga-panel h-full" aria-label="Agent trace"><div class="ga-panel-head"><span class="ga-panel-title"><span class="ga-live-dot" aria-hidden="true"></span>Agent trace<span class="ga-panel-meta font-normal">one turn, over MCP</span></span><button type="button" class="ga-ghost-btn">Replay</button></div><ol class="ga-trace"><li class="ga-step is-in"><span class="ga-node" aria-hidden="true"></span><div class="ga-step-label">User</div><p class="ga-step-text">Which ayanamsha does my Vedic chart use? Born 1 Nov 1976, 7:45 pm IST, at 19.17° N, 73.70° E.</p></li><li class="ga-step is-in"><span class="ga-node" aria-hidden="true"></span><div class="ga-step-label">Agent → MCP server · tool call</div><pre class="ga-mini ga-mono" tabindex="0"><span class="ga-tok-cmd">tools/call</span> <span class="ga-tok-s">birth_details</span>
1030<span class="ga-tok-p">{</span> <span class="ga-tok-k">&quot;day&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">1</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;month&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">11</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;year&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">1976</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;hour&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">19</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;min&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">45</span><span class="ga-tok-p">,</span>
1031  <span class="ga-tok-k">&quot;lat&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">19.17</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;lon&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">73.7</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;tzone&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">5.5</span> <span class="ga-tok-p">}</span></pre></li><li class="ga-step is-in"><span class="ga-node" aria-hidden="true"></span><div class="ga-step-label">MCP server → agent · result</div><pre class="ga-mini ga-mono" tabindex="0"><span class="ga-tok-p">{</span> <span class="ga-tok-k">&quot;year&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">1976</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;month&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">11</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;day&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">1</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;hour&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">19</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;minute&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">45</span><span class="ga-tok-p">,</span>
1032  <span class="ga-tok-k">&quot;latitude&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">19.17</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;longitude&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">73.7</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;timezone&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">5.5</span><span class="ga-tok-p">,</span>
1033  <span class="ga-tok-k">&quot;ayanamsha&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-n">23.5335</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;sunrise&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-p">…</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;sunset&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-p">…</span> <span class="ga-tok-p">}</span></pre></li><li class="ga-step is-in"><span class="ga-node" aria-hidden="true"></span><div class="ga-step-label">Agent answer<span class="ga-badge-good">calculated, not guessed</span></div><p class="ga-step-text">
1033Lahiri, at <span class="ga-val">23.5335°</span> for your birth moment (<span class="ga-val">19:45</span> at <span class="ga-val">UTC+5:30</span>, <span class="ga-val">19.17° N, 73.70° E</span>). Subtract it from tropical longitudes to get your sidereal positions.</p></li></ol></section></div></div></div><div class="ga-band px-5 py-8 sm:px-8 md:px-12 md:py-14"><div class="max-w-2xl mb-8"><h3 class="text-3xl md:text-5xl font-black leading-tight tracking-tight text-white mb-4">Anatomy of a grounded answer</h3><p class="ga-band-soft text-base leading-relaxed">The career question from above, step by step. The model only writes once the chart data is in its context.</p></div><div class="ga-rail mb-4" aria-hidden="true"><i class="is-on"></i><i class="is-on"></i><i class="is-on"></i><i class="is-on"></i><i class="is-on"></i><i class="is-on"></i></div><ol class="ga-stages" data-stage="7"><li class="ga-stage is-done"><div class="ga-stage-head"><span class="ga-stage-num" aria-hidden="true">1</span><h4 class="ga-stage-title">Question in</h4></div><div class="flex flex-col gap-2"><p class="ga-stage-text">“Is this a good time for me to change jobs?”</p><p class="ga-stage-meta ga-mono">1993-07-06 08:00 IST · New Delhi</p></div></li><li class="ga-stage is-done"><div class="ga-stage-head"><span class="ga-stage-num" aria-hidden="true">2</span><h4 class="ga-stage-title">Intent parsed</h4></div><pre class="ga-stage-code ga-mono" tabindex="0">topic:  career.timing
1034system: vedic
1035needs:  dasha<span class="ga-tok-p">,</span> moon<span class="ga-tok-p">,</span> transits</pre></li><li class="ga-stage is-done"><div class="ga-stage-head"><span class="ga-stage-num" aria-hidden="true">3</span><h4 class="ga-stage-title">Endpoints fire in parallel</h4></div><div class="flex flex-col gap-2.5"><div class="ga-call ga-mono"><span class="ga-call-name">current_vdasha</span><span class="ga-call-bar" aria-hidden="true"><i></i></span><span class="ga-call-ok">200</span></div><div class="ga-call ga-mono"><span class="ga-call-name">planets · natal</span><span class="ga-call-bar" aria-hidden="true"><i></i></span><span class="ga-call-ok">200</span></div><div class="ga-call ga-mono"><span class="ga-call-name">planets · transit</span><span class="ga-call-bar" aria-hidden="true"><i></i></span><span class="ga-call-ok">200</span></div><p class="ga-stage-meta">Sent at the same time, not one by one.</p></div></li><li class="ga-stage is-done"><div class="ga-stage-head"><span class="ga-stage-num" aria-hidden="true">4</span><h4 class="ga-stage-title">Chart context assembled</h4></div><pre class="ga-stage-code ga-mono" tabindex="0"><span class="ga-tok-p">{</span> <span class="ga-tok-k">&quot;dasha&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;Jupiter&gt;Saturn&quot;</span><span class="ga-tok-p">,</span>
1036  <span class="ga-tok-k">&quot;ad_end&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;10-3-2029&quot;</span><span class="ga-tok-p">,</span>
1037  <span class="ga-tok-k">&quot;moon&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;Makara&quot;</span><span class="ga-tok-p">,</span> <span class="ga-tok-k">&quot;lord&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;Saturn&quot;</span><span class="ga-tok-p">,</span>
1038  <span class="ga-tok-k">&quot;saturn&quot;</span><span class="ga-tok-p">:</span> <span class="ga-tok-s">&quot;Meena (3rd)&quot;</span> <span class="ga-tok-p">}</span></pre></li><li class="ga-stage is-done"><div class="ga-stage-head"><span class="ga-stage-num" aria-hidden="true">5</span><h4 class="ga-stage-title">The model writes</h4></div><div class="flex flex-col gap-2.5"><div class="flex flex-col gap-2" aria-hidden="true"><span class="ga-write-line" style="width:92%"></span><span class="ga-write-line" style="width:78%"></span><span class="ga-write-line" style="width:55%"></span></div><p class="ga-stage-meta">Only from the context above.</p><p class="ga-stage-meta">No chart value is made up.</p></div></li><li class="ga-stage is-done"><div class="ga-stage-head"><span class="ga-stage-num" aria-hidden="true">6</span><h4 class="ga-stage-title">Delivered with citations</h4></div><div class="flex flex-col gap-2"><p class="ga-stage-text font-bold">Yes, if you plan it.</p><div class="ga-cite-row"><span class="ga-cite">1</span><span>
1038Saturn sub-period to 10 Mar 2029</span><span class="ga-cite-src ga-mono">current_vdasha</span></div><div class="ga-cite-row"><span class="ga-cite">2</span><span>Saturn rules your Moon sign</span><span class="ga-cite-src ga-mono">planets</span></div><div class="ga-cite-row"><span class="ga-cite">3</span><span>Saturn in the 3rd from your Moon</span><span class="ga-cite-src ga-mono">planets</span></div></div></li></ol><div class="mt-14 md:mt-16"><h4 class="text-2xl md:text-3xl font-black text-white mb-5">Ways to ship</h4><div class="ga-ship"><div class="ga-ship-tile"><p class="ga-ship-title">Chat widget</p><p class="ga-ship-body">Add a chat bubble to your site with three lines of JavaScript. You set position, colour and the opening message.</p><a class="ga-link mt-auto pt-1" href="/astro-ai/chat-api">Chat API<!-- --> <span aria-hidden="true">→</span></a></div><div class="ga-ship-tile"><p class="ga-ship-title">REST + SDK</p><p class="ga-ship-body">Stream answers token by token into your own UI, or use the React / Flutter SDK and pass birth details once per session.</p><pre class="ga-ship-line ga-mono" tabindex="0">POST https://json-chat.astrologyapi.com/api/chat</pre><a class="ga-link mt-auto pt-1" href="/developers/v1/chat-api">Chat API docs<!-- --> <span aria-hidden="true">→</span></a></div><div class="ga-ship-tile"><p class="ga-ship-title">MCP for agents</p><p class="ga-ship-body">109 tools across Vedic and Western astrology, for Claude, ChatGPT, Cursor or your own agent.</p><pre class="ga-ship-line ga-mono" tabindex="0">claude mcp add --transport http astrology https://mcp.astrologyapi.com/mcp --header &quot;x-astrologyapi-key: YOUR_API_KEY&quot;</pre><a class="ga-link mt-auto pt-1" href="/developers/v1/mcp-server">MCP docs<!-- --> <span aria-hidden="true">→</span></a></div></div></div><div class="mt-12 flex flex-col sm:flex-row items-stretch sm:items-center justify-center gap-3"><a class="h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl bg-
1038accent-primary text-accent-contrast-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 px-7 text-base" href="/signup">Get API Key — Free</a><a class="ga-band-cta-secondary justify-center" href="/astro-ai/chat-api">Explore the Chat API<!-- --> <span aria-hidden="true">→</span></a></div></div></div></div></section><section id="" class="relative z-10"><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 "><div class="jsx-c3fe2f14ba365b2 grid items-center gap-10 lg:grid-cols-[minmax(0,2fr)_minmax(0,3fr)] lg:gap-16"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:translateX(-30px)" class=""><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest mb-4">THE TWO-MINUTE VERSION</p><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-4xl md:text-5xl font-black mb-6 text-balance">New here? Watch this first.</h2><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 leading-relaxed mb-8">Send a birth date, time and place. Get back charts, horoscopes and reports for Vedic and Western astrology, calculated to the arcsecond. Watch the short explainer, then press Run in the playground below and see a response come back.</p><a href="#playground" class="jsx-c3fe2f14ba365b2 explainer-link inline-flex items-center gap-2 text-sm font-bold text-accent-primary">Jump to the playground<svg width="14" height="14" viewBox="0 0 14 14" fill="none" aria-hidden="true" class="jsx-c3fe2f14ba365b2 explainer-link-arrow"><path d="M7 2v10M3 8l4 4 4-4" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" class="jsx-c3fe2f14ba365b2"></path></svg></a></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:80ms;opacity:0;transform:scale(0.8)" class=""><div style="aspect-ratio:16 / 9" class="jsx-907a2b1e75a536a8 video-facade relative w-full overflow-hidden bg-black explainer-frame rounded-[28px] border border-divider-color"><button type="button" aria-label="Play video: What is AstrologyAPI? A two-minute explainer (1:52)" class="jsx-907a2b1e75a536a8 video-facade-trigger group absolute inset-0 h-full w-full cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent-primary"><img src="https://vz-5adf132b-5e9.b-cdn.net/fbbca14d-477c-4f1d-a580-69f748487968/thumbnail.jpg" alt="" loading="lazy" decoding="async" referrerPolicy="strict-origin-when-cross-origin" class="jsx-907a2b1e75a536a8 absolute inset-0 h-full w-full object-cover transition-transform duration-700 ease-out group-hover:scale-[1.02]"/><span class="jsx-907a2b1e75a536a8 absolute inset-0 bg-black/0 transition-colors duration-300 group-hover:bg-black/10"></span><span class="jsx-907a2b1e75a536a8 absolute inset-0 flex items-center justify-center"><span class="jsx-907a2b1e75a536a8 video-facade-pill flex items-center gap-3 rounded-full py-2 pl-2 pr-5 text-sm font-bold transition-transform duration-300 group-hover:scale-105"><span class="jsx-907a2b1e75a536a8 flex h-10 w-10 items-center justify-center rounded-full bg-accent-primary text-accent-contrast-text"><svg width="14" height="16" viewBox="0 0 14 16" fill="currentColor" aria-hidden="true" class="jsx-907a2b1e75a536a8"><path d="M2 1.6C2 .8 2.86.32 3.53.73l9.2 5.66c.65.4.65 1.33 0 1.72l-9.2 5.66C2.86 14.18 2 13.7 2 12.9V1.6Z" class="jsx-907a2b1e75a536a8"></path></svg></span><span class="jsx-907a2b1e75a536a8">Watch the explainer<span class="jsx-907a2b1e75a536a8 ml-2 font-medium opacity-60">1:52</span></span></span></span></button></div></div></div></div></section><section id="playground" class="bg-primary-bg relative z-10 overflow-hidden"><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 "><div class="max-w-2xl mb-12"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:translateX(-30px)" class=""><p class="text-base leading-relaxed text-accent-primary font-bold text-xs tracking-widest mb-4">API PLAYGROUND</p><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-4xl md:text-6xl font-black mb-6">Code in Minutes. Ship in Hours.</h2><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-70 leading-relaxed">Run a real endpoint. Watch the response become the product — then hover the JSON to see exactly which field renders which pixel.</p></div></div><div class="flex flex-wrap gap-2 mb-6" role="tablist"><button type="button" role="tab" aria-selected="true" class="text-[13px] font-bold px-4 py-2 rounded-full transition-colors duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent-primary bg-accent-primary text-accent-contrast-text">Birth Chart</button><button type="button" role="tab" aria-selected="false" class="text-[13px] font-bold px-4 py-2 rounded-full transition-colors duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent-primary bg-secondary-bg text-secondary-text border border-border-color hover:border-accent-primary/50">Daily Horoscope</button><button type="button" role="tab" aria-selected="false" class="text-[13px] font-bold px-4 py-2 rounded-full transition-colors duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent-primary bg-secondary-bg text-secondary-text border border-border-color hover:border-accent-primary/50">Transits</button><button type="button" role="tab" aria-selected="false" class="text-[13px] font-bold px-4 py-2 rounded-full transition-colors duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent-primary bg-secondary-bg text-secondary-text border border-border-color hover:border-accent-primary/50">Kundli</button><button type="button" role="tab" aria-selected="false" class="text-[13px] font-bold px-4 py-2 rounded-full transition-colors duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent-primary bg-secondary-bg text-secondary-text border border-border-color hover:border-accent-primary/50">Numerology</button></div><div class="pg-pipe"><div class="flex flex-col min-w-0"><p class="text-[10px] font-bold tracking-widest text-tertiary-text mb-2 ml-1">1 · REQUEST</p><div class="rounded-2xl overflow-hidden flex flex-col flex-1" style="background:#11181f;border:1px solid #32404f"><div class="flex items-center gap-1.5 px-3 py-2" style="background:#1a222c;border-bottom:1px solid #32404f"><button type="button" aria-pressed="true" class="text-[11px] font-bold px-2.5 py-1 rounded-md transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-[#7dd3fc]" style="color:#e3edf5;background:#22303e;border:1px solid #32404f">JavaScript</button><button type="button" aria-pressed="false" class="text-[11px] font-bold px-2.5 py-1 rounded-md transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-[#7dd3fc]" style="color:#8296a8;border:1px solid transparent">Python</button><button type="button" aria-pressed="false" class="text-[11px] font-bold px-2.5 py-1 rounded-md transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-[#7dd3fc]" style="color:#8296a8;border:1px solid transparent">cURL</button><button type="button" class="ml-auto inline-flex items-center gap-1.5 text-xs font-black px-4 py-1.5 rounded-lg bg-accent-primary text-accent-contrast-text transition-opacity hover:opacity-90 disabled:opacity-50 disabled:cursor-wait focus:outline-none focus-visible:ring-2 focus-visible:ring-accent-primary"><span class="inline-block" style="width:0;height:0;border-left:7px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent"></span>Run</button></div><pre class="m-0 px-4 py-3 overflow-x-auto flex-1 text-[11.5px] leading-[1.75]" style="font-family:ui-monospace, &quot;SF Mono&quot;, SFMono-Regular, Menlo, Consolas, monospace;color:#c9d5e0"><span>const res = await fetch(</span><span style="color:#9df5a8">&#x27;https://api.astrologyapi.com/v1/western/planets&#x27;</span><span>, {
1039  method: </span><span style="color:#9df5a8">&#x27;POST&#x27;</span><span>,
1040  headers: {
1041    </span><span style="color:#9df5a8">&#x27;Authorization&#x27;</span><span>: </span><span style="color:#9df5a8">&#x27;Basic &#x27;</span><span> + btoa(</span><span style="color:#9df5a8">&#x27;userId:apiKey&#x27;</span><span>),
1042    </span><span style="color:#9df5a8">&#x27;Content-Type&#x27;</span><span>: </span><span style="color:#9df5a8">&#x27;application/json&#x27;</span><span>
1043  },
1044  body: JSON.stringify({
1045    day: 4, month: 3, year: 1990, hour: 10, min: 10,
1046    lat: 19.07, lon: 72.87, tzone: 5.5
1047  })
1048});
1049
1050const data = await res.json(); </span><span style="color:#5b6b7b">// → step 2</span><span></span></pre></div></div><div class="pg-conn "><svg viewBox="0 0 34 34" aria-hidden="true"><path d="M2 17 H26 M21 11 L28 17 L21 23" fill="none" stroke="var(--tertiary-text)" stroke-width="1.6" stroke-linecap="round"></path></svg><span class="pg-dot"></span></div><div class="flex flex-col min-w-0"><p class="text-[10px] font-bold tracking-widest text-tertiary-text mb-2 ml-1">2 · RESPONSE</p><div class="rounded-2xl overflow-hidden flex flex-col flex-1" style="background:#11181f;border:1px solid #32404f"><div class="flex items-center gap-2 flex-wrap px-3 py-2 min-h-[37px]" style="background:#1a222c;border-bottom:1px solid #32404f"><span class="text-[10px] font-black px-2 py-0.5 rounded" style="background:#193a2a;color:#7ee787">POST</span><span class="text-[11px]" style="font-family:ui-monospace, Menlo, monospace;color:#c9d5e0">/v1/western/planets</span><span class="pg-status  ml-auto text-[10.5px] font-black" style="color:#7ee787">200 OK ·<!-- --> <span class="tabular-nums" style="font-family:ui-monospace, Menlo, monospace;color:#8296a8">
10500ms</span></span></div><div class="px-3 py-3 overflow-y-auto flex-1 text-[11.5px] leading-[1.7]" style="font-family:ui-monospace, &quot;SF Mono&quot;, Menlo, Consolas, monospace;max-height:400px"><div class="pg-jrow pg-in" style="color:#5b6b7b">// press Run to fire the request</div></div></div></div><div class="pg-conn "><svg viewBox="0 0 34 34" aria-hidden="true"><path d="M2 17 H26 M21 11 L28 17 L21 23" fill="none" stroke="var(--tertiary-text)" stroke-width="1.6" stroke-linecap="round"></path></svg><span class="pg-dot"></span></div><div class="flex flex-col min-w-0"><p class="text-[10px] font-bold tracking-widest text-tertiary-text mb-2 ml-1">3 · PRODUCT</p><div class="rounded-2xl border border-border-color bg-secondary-bg flex-1 flex items-center justify-center p-4"><div class="rounded-2xl w-full max-w-[300px] p-4" style="background:#182a44;border:1px solid #31527c"><span class="text-[9px] font-bold tracking-widest" style="color:#7dd3fc">NATAL WHEEL</span><svg viewBox="0 0 200 200" class="w-full block" aria-hidden="true"><circle cx="100" cy="100" r="94" fill="none" stroke="#3b5c88" stroke-width="1.5"></circle><circle cx="100" cy="100" r="78" fill="none" stroke="#3b5c88" stroke-width="1"></circle><circle cx="100" cy="100" r="50" fill="none" stroke="#2e4a70" stroke-width="1"></circle><g><line x1="22" y1="100" x2="6" y2="100" stroke="#3b5c88" stroke-width="1"></line><line x1="50" y1="100" x2="22" y2="100" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="32" y1="139" x2="19" y2="147" stroke="#3b5c88" stroke-width="1"></line><line x1="57" y1="125" x2="32" y2="139" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="61" y1="168" x2="53" y2="181" stroke="#3b5c88" stroke-width="1"></line><line x1="75" y1="143" x2="61" y2="168" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="100" y1="178" x2="100" y2="194" stroke="#3b5c88" stroke-width="1"></line><line x1="100" y1="150" x2="100" y2="178" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="139" y1="168" x2="147" y2="181" stroke="#3b5c88" stroke-width="1"></line><line x1="125" y1="143" x2="139" y2="168" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="168" y1="139" x2="181" y2="147" stroke="#3b5c88" stroke-width="1"></line><line x1="143" y1="125" x2="168" y2="139" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="178" y1="100" x2="194" y2="100" stroke="#3b5c88" stroke-width="1"></line><line x1="150" y1="100" x2="178" y2="100" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="168" y1="61" x2="181" y2="53" stroke="#3b5c88" stroke-width="1"></line><line x1="143" y1="75" x2="168" y2="61" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="139" y1="32" x2="147" y2="19" stroke="#3b5c88" stroke-width="1"></line><line x1="125" y1="57" x2="139" y2="32" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="100" y1="22" x2="100" y2="6" stroke="#3b5c88" stroke-width="1"></line><line x1="100" y1="50" x2="100" y2="22" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="61" y1="32" x2="53" y2="19" stroke="#3b5c88" stroke-width="1"></line><line x1="75" y1="57" x2="61" y2="32" stroke="#2e4a70" stroke-width="0.7"></line></g><g><line x1="32" y1="61" x2="19" y2="53" stroke="#3b5c88" stroke-width="1"></line><line x1="57" y1="75" x2="32" y2="61" stroke="#2e4a70" stroke-width="0.7"></line></g><line x1="23" y1="114" x2="19" y2="114" stroke="#3b5c88" stroke-width="0.8"></line><line x1="27" y1="127" x2="23" y2="128" stroke="#3b5c88" stroke-width="0.8"></line><line x1="40" y1="150" x2="37" y2="153" stroke="#3b5c88" stroke-width="0.8"></line><line x1="50" y1="160" x2="47" y2="163" stroke="#3b5c88" stroke-width="0.8"></line><line x1="73" y1="173" x2="72" y2="177" stroke="#3b5c88" stroke-width="0.8"></line><line x1="86" y1="177" x2="86" y2="181" stroke="#3b5c88" stroke-width="0.8"></line><line x1="114" y1="177" x2="114" y2="181" stroke="#3b5c88" stroke-width="0.8"></line><line x1="127" y1="173" x2="128" y2="177" stroke="#3b5c88" stroke-width="0.8"></line><line x1="150" y1="160" x2="153" y2="163" stroke="#3b5c88" stroke-width="0.8"></line><line x1="160" y1="150" x2="163" y2="153" stroke="#3b5c88" stroke-width="0.8"></line><line x1="173" y1="127" x2="177" y2="128" stroke="#3b5c88" stroke-width="0.8"></line><line x1="177" y1="114" x2="181" y2="114" stroke="#3b5c88" stroke-width="0.8"></line><line x1="177" y1="86" x2="181" y2="86" stroke="#3b5c88" stroke-width="0.8"></line><line x1="173" y1="73" x2="177" y2="72" stroke="#3b5c88" stroke-width="0.8"></line><line x1="160" y1="50" x2="163" y2="47" stroke="#3b5c88" stroke-width="0.8"></line><line x1="150" y1="40" x2="153" y2="37" stroke="#3b5c88" stroke-width="0.8"></line><line x1="127" y1="27" x2="128" y2="23" stroke="#3b5c88" stroke-width="0.8"></line><line x1="114" y1="23" x2="114" y2="19" stroke="#3b5c88" stroke-width="0.8"></line><line x1="86" y1="23" x2="86" y2="19" stroke="#3b5c88" stroke-width="0.8"></line><line x1="73" y1="27" x2="72" y2="23" stroke="#3b5c88" stroke-width="0.8"></line><line x1="50" y1="40" x2="47" y2="37" stroke="#3b5c88" stroke-width="0.8"></line><line x1="40" y1="50" x2="37" y2="47" stroke="#3b5c88" stroke-width="0.8"></line><line x1="27" y1="73" x2="23" y2="72" stroke="#3b5c88" stroke-width="0.8"></line><line x1="23" y1="86" x2="19" y2="86" stroke="#3b5c88" stroke-width="0.8"></line><line x1="6" y1="100" x2="50" y2="100" stroke="#7dd3fc" stroke-width="1.6"></line><text x="9" y="96" font-size="6.5" fill="#7dd3fc" font-weight="bold">ASC</text><text x="17" y="122" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♈︎</text><text x="39" y="161" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♉︎</text><text x="78" y="183" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♊︎</text><text x="122" y="183" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♋︎</text><text x="161" y="161" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♌︎</text><text x="183" y="122" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♍︎</text><text x="183" y="78" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♎︎</text><text x="161" y="39" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♏︎</text><text x="122" y="17" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♐︎</text><text x="78" y="17" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♑︎</text><text x="39" y="39" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♒︎</text><text x="17" y="78" font-size="9" fill="#79a5d4" text-anchor="middle" dominant-baseline="central">♓︎</text><line x1="92" y1="174" x2="92" y2="178" stroke="#5eead4" stroke-width="1"></line><line x1="173" y1="86" x2="177" y2="85" stroke="#5eead4" stroke-width="1"></line><line x1="123" y1="170" x2="124" y2="174" stroke="#5eead4" stroke-width="1"></line><line x1="109" y1="173" x2="110" y2="177" stroke="#5eead4" stroke-width="1"></line><line x1="140" y1="162" x2="142" y2="165" stroke="#5eead4" stroke-width="1"></line>
1050<line x1="62" y1="163" x2="60" y2="167" stroke="#5eead4" stroke-width="1"></line><line x1="29" y1="81" x2="25" y2="80" stroke="#5eead4" stroke-width="1"></line><line class="pg-part-svg  " data-field="asp-mo-ve" x1="149" y1="90" x2="106" y2="150" stroke="#f87171" stroke-width="1.3" opacity="0.9"></line><line class="pg-part-svg  " data-field="asp-mo-ma" x1="149" y1="90" x2="127" y2="142" stroke="#38bdf8" stroke-width="1.3" opacity="0.9"></line><line class="pg-part-svg  " data-field="asp-me-sa" x1="115" y1="148" x2="52" y2="87" stroke="#4fd1c5" stroke-width="1.3" opacity="0.9"></line><line class="pg-part-svg  " data-field="asp-ma-ju" x1="127" y1="142" x2="74" y2="143" stroke="#38bdf8" stroke-width="1.3" opacity="0.9"></line><g class="pg-part-svg  " data-field="su" tabindex="0"><text x="93" y="164" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">☉︎</text><circle cx="95" cy="150" r="2" fill="#5eead4"></circle><circle cx="93" cy="164" r="11" fill="transparent"></circle></g><g class="pg-part-svg  " data-field="mo" tabindex="0"><text x="163" y="88" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">☽︎</text><circle cx="149" cy="90" r="2" fill="#5eead4"></circle><circle cx="163" cy="88" r="11" fill="transparent"></circle></g><g class="pg-part-svg  " data-field="me" tabindex="0"><text x="120" y="161" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">☿︎</text><circle cx="115" cy="148" r="2" fill="#5eead4"></circle><circle cx="120" cy="161" r="11" fill="transparent"></circle></g><g class="pg-part-svg  " data-field="ve" tabindex="0"><text x="108" y="164" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">♀︎</text><circle cx="106" cy="150" r="2" fill="#5eead4"></circle><circle cx="108" cy="164" r="11" fill="transparent"></circle></g><g class="pg-part-svg  " data-field="ma" tabindex="0"><text x="135" y="154" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">♂︎</text><circle cx="127" cy="142" r="2" fill="#5eead4"></circle><circle cx="135" cy="154" r="11" fill="transparent"></circle></g><g class="pg-part-svg  " data-field="ju" tabindex="0"><text x="67" y="155" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">♃︎</text><circle cx="74" cy="143" r="2" fill="#5eead4"></circle><circle cx="67" cy="155" r="11" fill="transparent"></circle></g><g class="pg-part-svg  " data-field="sa" tabindex="0"><text x="38" y="83" font-size="11" fill="#e8f1fb" text-anchor="middle" dominant-baseline="central">♄︎</text><circle cx="52" cy="87" r="2" fill="#5eead4"></circle><circle cx="38" cy="83" r="11" fill="transparent"></circle></g></svg></div></div></div></div><p class="pg-hint  text-center text-xs text-tertiary-text mt-5">Now hover — any JSON field ↔ any part of the product. Each highlights the other.</p><div class="flex flex-wrap justify-center gap-3 mt-6"><a href="/signup" class="text-[13px] font-black px-6 py-2.5 rounded-xl bg-accent-primary text-accent-contrast-text transition-opacity hover:opacity-90">Get API Key — Free</a><a href="/developers/v1/postman-collection" class="text-[13px] font-black px-6 py-2.5 rounded-xl border border-border-color bg-secondary-bg text-secondary-text transition-colors hover:border-accent-primary/50">Run in Postman</a></div></div></section><section class="relative w-full overflow-hidden py-6 md:py-10"><div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 relative z-10"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:0ms;opacity:0;transform:scale(0.8)" class="text-center mb-16 md:mb-24"><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text mb-6 text-4xl md:text-6xl font-black">What developers say</h2><p class="text-base leading-relaxed text-secondary-text max-w-2xl mx-auto">From indie developers to regional platforms — real feedback from teams in production.</p></div><div class="grid grid-cols-1 md:grid-cols-3 gap-6 mb-16 items-start"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:20ms;opacity:0;transform:translateY(30px)" class="">
1050<div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-6 bg-secondary-bg/20 border-border-color rounded-3xl p-8 flex flex-col hover:bg-secondary-bg/30 transition-all duration-500 h-full "><div class="flex gap-1 mb-6"><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span></div><blockquote class="flex-1 mb-8"><p class="text-base leading-relaxed text-primary-text italic leading-relaxed font-medium">&quot;<!-- -->We&#x27;d been maintaining our own ephemeris wrapper for two years and it was a constant tax. We switched over in a weekend and deleted thousands of lines of code. The birth chart JSON is clean enough to render straight into our UI.<!-- -->&quot;</p></blockquote><div class="flex items-center gap-4 pt-6 border-t border-divider-color/30"><div class="w-12 h-12 rounded-full overflow-hidden bg-tertiary-bg border border-border-color grayscale opacity-60 hover:grayscale-0 hover:opacity-100 transition-all duration-500"><img src="https://i.pravatar.cc/150?u=alex" alt="Alex Rivera" class="w-full h-full object-cover"/></div><div><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-sm font-black uppercase tracking-tight">Alex Rivera</h2><div class="flex items-center gap-2"><p class="text-xs leading-normal font-semibold text-secondary-text font-bold opacity-60">Celestia App</p><span class="w-1 h-1 rounded-full bg-border-color"></span>
1050<p class="text-xs leading-normal font-semibold text-secondary-text font-bold opacity-60">USA</p></div></div></div></div></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:40ms;opacity:0;transform:translateY(30px)" class=""><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-6 bg-secondary-bg/20 border-border-color rounded-3xl p-8 flex flex-col hover:bg-secondary-bg/30 transition-all duration-500 h-full md:py-12 md:translate-y-4"><div class="flex gap-1 mb-6"><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span></div><blockquote class="flex-1 mb-8"><p class="text-base leading-relaxed text-primary-text italic leading-relaxed font-medium">&quot;<!-- -->Our two-person content team used to lose every Friday writing the following week&#x27;s horoscopes. Now the daily feeds are generated from real transit data, and they spend that time on the product instead. Honestly, readers noticed before we announced anything — the horoscopes got more specific.<!-- -->&quot;</p></blockquote><div class="flex items-center gap-4 pt-6 border-t border-divider-color/30"><div class="w-12 h-12 rounded-full overflow-hidden bg-tertiary-bg border border-border-color grayscale opacity-60 hover:grayscale-0 hover:opacity-100 transition-all duration-500"><img src="https://i.pravatar.cc/150?u=sarah" alt="Sarah Chen" class="w-full h-full object-cover"/></div><div><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-sm font-black uppercase tracking-tight">Sarah Chen</h2><div class="flex items-center gap-2"><p class="text-xs leading-normal font-semibold text-secondary-text font-bold opacity-60">AstroConnect</p><span class="w-1 h-1 rounded-full bg-border-color"></span>
1050<p class="text-xs leading-normal font-semibold text-secondary-text font-bold opacity-60">Singapore</p></div></div></div></div></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:60ms;opacity:0;transform:translateY(30px)" class=""><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-6 bg-secondary-bg/20 border-border-color rounded-3xl p-8 flex flex-col hover:bg-secondary-bg/30 transition-all duration-500 h-full "><div class="flex gap-1 mb-6"><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span><span class="text-accent-primary text-sm">★</span></div><blockquote class="flex-1 mb-8"><p class="text-base leading-relaxed text-primary-text italic leading-relaxed font-medium">&quot;<!-- -->I connected the MCP server to our Claude agent in an afternoon — no SDK, no glue code. Watching it pull real planetary positions instead of inventing them was the moment we knew we could ship the assistant.<!-- -->&quot;</p></blockquote><div class="flex items-center gap-4 pt-6 border-t border-divider-color/30"><div class="w-12 h-12 rounded-full overflow-hidden bg-tertiary-bg border border-border-color grayscale opacity-60 hover:grayscale-0 hover:opacity-100 transition-all duration-500"><img src="https://i.pravatar.cc/150?u=marco" alt="Marco Rossi" class="w-full h-full object-cover"/></div><div><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-sm font-black uppercase tracking-tight">Marco Rossi</h2><div class="flex items-center gap-2"><p class="text-xs leading-normal font-semibold text-secondary-text font-bold opacity-60">StarGuide</p><span class="w-1 h-1 rounded-full bg-border-color"></span>
1050<p class="text-xs leading-normal font-semibold text-secondary-text font-bold opacity-60">Italy</p></div></div></div></div></div></div><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:40ms;opacity:0;transform:translateY(30px)" class="flex flex-wrap justify-center gap-4"><div><div class="px-6 py-3 bg-secondary-bg/40 border border-border-color rounded-full hover:border-accent-primary/40 transition-all group flex items-center gap-3"><span class="text-sm font-bold text-secondary-text group-hover:text-primary-text transition-colors">How AstroConnect reduced astrology build time by 80%</span><span class="text-accent-primary group-hover:translate-x-1 transition-transform"></span></div></div><div><div class="px-6 py-3 bg-secondary-bg/40 border border-border-color rounded-full hover:border-accent-primary/40 transition-all group flex items-center gap-3"><span class="text-sm font-bold text-secondary-text group-hover:text-primary-text transition-colors">Scale Story: 10M API calls/mo with 99.9% uptime</span><span class="text-accent-primary group-hover:translate-x-1 transition-transform"></span></div></div></div></div></section><section class="relative w-full overflow-hidden py-16 md:py-24 bg-primary-bg"><div class="max-w-6xl mx-auto px-6 relative z-10"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:20ms;opacity:0;transform:translateY(30px)" class=""><div class="bg-secondary-bg border border-border-color rounded-xl transition-all p-6 p-0 border-accent-primary/20 bg-accent-surface/30 rounded-[3rem] overflow-hidden shadow-2xl relative group"><div class="text-center items-center justify-center w-full flex flex-col p-10 lg:p-16 gap-4"><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text text-3xl lg:text-5xl font-black">Pay only for<!-- --> <span class="text-accent-primary">what you use.</span></h2><p class="text-base leading-relaxed text-secondary-text text-secondary-text opacity-80 leading-relaxed max-w-2xl">No monthly commitments. Top up your wallet and pay per API call — whether you&#x27;re at 1,000 calls or 10 million.</p><div class="flex flex-col sm:flex-row items-center justify-center gap-4 pt-6"><a href="/signup"><button class="bg-accent-primary text-accent-contrast-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl">Get API Key — Free</button></a><a href="/pricing"><button class="border border-border-color text-primary-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl">View Full Pricing Table</button></a></div></div></div></div><div class="mt-12 flex flex-col md:flex-row items-center justify-center gap-2 text-center"><p class="text-base leading-relaxed text-secondary-text font-bold">Need a custom plan for massive scale?</p><a href="/contact"><span class="text-primary-text font-black underline underline-offset-8 cursor-pointer hover:text-accent-primary transition-colors">Talk to Support<!-- --> →</span></a></div></div></section><section class="jsx-1fa9972e203a246c relative w-full overflow-hidden py-6 md:py-10"><div class="jsx-1fa9972e203a246c absolute inset-0 z-0 pointer-events-none overflow-hidden"><div class="jsx-1fa9972e203a246c absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-full max-w-2xl opacity-[0.05]"><svg viewBox="0 0 800 800" fill="none" xmlns="http://www.w3.org/2000/svg" class="jsx-1fa9972e203a246c w-full h-full animate-[spin_180s_linear_infinite]"><circle cx="400" cy="400" r="150" stroke="currentColor" stroke-width="0.5" class="jsx-1fa9972e203a246c text-accent-primary"></circle><circle cx="400" cy="400" r="220" stroke="currentColor" stroke-width="0.3" stroke-dasharray="4 8" class="jsx-1fa9972e203a246c text-accent-primary"></circle><circle cx="400" cy="400" r="300" stroke="currentColor" stroke-width="0.5" stroke-dasharray="10 20" class="jsx-1fa9972e203a246c text-info-color"></circle><path d="M400 0V800M0 400H800" stroke="currentColor" stroke-width="0.2" class="jsx-1fa9972e203a246c text-accent-primary"></path></svg></div></div><div class="jsx-1fa9972e203a246c max-w-7xl mx-auto px-4 sm:px-6 md:px-10 lg:px-20 xl:px-32 relative z-10"><div style="transition:all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);transition-delay:20ms;opacity:0;transform:scale(0.8)" class="text-center max-w-4xl mx-auto flex flex-col items-center"><h2 class="text-3xl sm:text-4xl md:text-5xl font-extrabold font-heading tracking-tight leading-tight text-primary-text mb-6 md:text-[56px] font-black leading-tight tracking-tighter">Start Shipping Astrology in Minutes</h2><p class="text-base leading-relaxed text-secondary-text mb-10 max-w-2xl mx-auto opacity-70 leading-relaxed font-medium">
1050Sandbox access in minutes, self-serve. Birth charts, AI readings, and PDF reports — all from one API key.</p><div class="jsx-1fa9972e203a246c flex flex-col sm:flex-row items-center justify-center gap-4 mb-8 w-full sm:w-auto"><a class="w-full sm:w-auto" href="/signup"><button class="jsx-1fa9972e203a246c h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl bg-accent-primary text-accent-contrast-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 px-8 py-4 text-base min-w-[200px] mx-auto">Get API Key — Free</button></a><a class="w-full sm:w-auto" href="/demo-schedule"><button class="jsx-1fa9972e203a246c h-10 px-4 py-2.5 font-semibold rounded-lg transition-all flex items-center justify-center active:scale-95 focus:outline-none focus:ring-2 focus:ring-accent-primary/20 backdrop-blur-xl border border-border-color text-primary-text hover:brightness-110 transition-all hover:-translate-y-0.5 active:scale-95 px-8 py-4 text-base min-w-[200px] mx-auto">Schedule Demo</button></a></div><div class="jsx-1fa9972e203a246c flex flex-wrap items-center justify-center gap-y-2 gap-x-6 text-tertiary-text font-bold"><div class="jsx-1fa9972e203a246c flex items-center gap-2"><span class="jsx-1fa9972e203a246c text-accent-primary text-[10px]">✔</span><span class="jsx-1fa9972e203a246c text-[10px] uppercase tracking-widest whitespace-nowrap">No credit card required</span></div><div class="jsx-1fa9972e203a246c flex items-center gap-2"><span class="jsx-1fa9972e203a246c text-accent-primary text-[10px]">✔</span><span class="jsx-1fa9972e203a246c text-[10px] uppercase tracking-widest whitespace-nowrap">150<!-- --> free credits on signup</span></div><div class="jsx-1fa9972e203a246c flex items-center gap-2"><span class="jsx-1fa9972e203a246c text-accent-primary text-[10px]">✔</span><span class="jsx-1fa9972e203a246c text-[10px] uppercase tracking-widest whitespace-nowrap">Cancel anytime</span></div></div></div></div></section></div></div></div><footer class="relative z-[30] bg-primary-bg font-plus_jakarta_sans text-primary-text border-t border-border-color overflow-hidden"><div class="absolute inset-0 pointer-events-none overflow-hidden opacity-50"><div class="absolute top-0 right-0 w-[600px] h-[600px] bg-accent-primary/5 rounded-full blur-[120px] -mr-48 -mt-48"></div><div class="absolute bottom-0 left-0 w-[400px] h-[400px] bg-info-color/5 rounded-full blur-[100px] -ml-24 -mb-24"></div></div><div class="relative mx-auto flex w-full max-w-7xl flex-col gap-20 px-6 pb-12 pt-20 lg:px-0"><div class="grid gap-10 sm:grid-cols-2 lg:grid-cols-5"><div class="space-y-8"><h3 class="text-xs font-black uppercase tracking-[0.3em] text-primary-text/40">Products</h3><ul class="space-y-4"><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/products/astrology-json-api">Astrology API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/products/astrology-pdf-api">PDF API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/horoscope-api">Horoscope API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/products/geo-location-api">Geo Location API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/products/astro-pages">AstroPages</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/products/astrocartography-api">Astrocartography API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/products/human-design-api">Human Design API</a></li></ul></div><div class="space-y-8"><h3 class="text-xs font-black uppercase tracking-[0.3em] text-primary-text/40">Astro AI</h3><ul class="space-y-4"><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/astro-ai/chat-api">Astro-Chat API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/palm-reading-api">Palmistry API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/face-reading-api">Face Reading API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/astro-ai/vastu-api">Vastu API</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/astro-ai/mcp-server">MCP Servers</a></li></ul></div><div class="space-y-8"><h3 class="text-xs font-black uppercase tracking-[0.3em] text-primary-text/40">Solutions</h3><ul class="space-y-4"><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/vedic-astrology">Vedic Astrology</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/western-astrology">Western Astrology</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/horoscope-api">Horoscope</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/numerology-api">Numerology</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/tarot-card-api">Tarot Readings</a></li></ul></div><div class="space-y-8"><h3 class="text-xs font-black uppercase tracking-[0.3em] text-primary-text/40">Developers</h3><ul class="space-y-4"><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/developers/v1">
1050Get Started Guide</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/developers/v1/api-reference">API Reference</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/developers/v1/guides">Guides &amp; Tutorials</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/blog">Blog</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/developers/v1/sdk-reference">Download SDK</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/developers/v1/postman-collection">Postman Collection</a></li></ul></div><div class="space-y-8"><h3 class="text-xs font-black uppercase tracking-[0.3em] text-primary-text/40">More Links</h3><ul class="space-y-4"><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/pricing">Pricing</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/about-us">About Us</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/contact">Contact Us</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/demo-schedule">Schedule a Demo</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/legal/privacy-policy">Privacy Policy</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/legal/terms-service">Terms of Use</a></li><li><a class="text-sm font-bold text-secondary-text transition-all hover:text-accent-primary flex items-center group" href="/legal/refund-and-cancellation">Refund and Cancellation</a></li></ul></div></div><div class="flex flex-col items-start justify-between gap-8 border-t border-border-color pt-10 text-xs text-secondary-text md:flex-row md:items-center"><div class="flex flex-col gap-4"><a class="group" href="/"><img src="/imgs/logo2.svg" alt="AstrologyAPI" class="h-8 transition-transform group-hover:scale-105"/></a><p class="font-medium opacity-60 italic">The astrology API trusted by 3,000+ products worldwide.</p></div><div class="flex flex-col md:items-end gap-4"><div class="flex items-center gap-6"><a class="transition-colors hover:text-accent-primary font-bold uppercase tracking-widest" href="/legal/privacy-policy">Privacy</a><a class="transition-colors hover:text-accent-primary font-bold uppercase tracking-widest" href="/legal/terms-service">Terms</a><a class="transition-colors hover:text-accent-primary font-bold uppercase tracking-widest" href="/legal/refund-and-cancellation">Refunds</a></div><p class="font-bold opacity-40">© <!-- -->2026<!-- --> AstrologyAPI. All rights reserved.</p></div></div></div></footer></div>
1050<script id="__NEXT_DATA__" type="application/json" crossorigin="">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"f_-_rERxrDatyZ7O3CGyT","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[{"strategy":"afterInteractive","async":true,"src":"https://www.googletagmanager.com/gtag/js?id=G-9T750QNQP1"},{"strategy":"afterInteractive","children":"\n      window.dataLayer = window.dataLayer || [];\n            function gtag(){dataLayer.push(arguments);}\n            gtag('js', new Date());\n\n            gtag('config', 'G-9T750QNQP1');\n     \n      "},{"async":true,"strategy":"afterInteractive","dangerouslySetInnerHTML":{"__html":"\n              (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\nnew Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\nj=d.createElement(s),dl=l!='dataLayer'?'\u0026l='+l:'';j.async=true;j.src=\n'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n})(window,document,'script','dataLayer','GTM-MN5C2S8K');\n              "}}]}</script>
1050</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.