/** Shopify CDN: Minification failed

Line 344:0 Unexpected "}"

**/
/* =====================================================================
   AstroIndie storefront, v3
   Festival colour on warm white, with a night-sky band where the brand's
   own figure (the North Indian kundli) is drawn. Rozha One for headings,
   Mukta for everything read. The sindoor-to-saffron gradient is kept for
   the one action that moves a visitor forward; gold belongs to the sky.
   Built phone first: every rule below is the phone layout, and wider
   screens are added with min-width queries.
   ===================================================================== */
:root{
  --surface:#FFFFFF;
  --surface-2:#FFF6E8;
  --surface-3:#FDF0F5;
  --petal:#FDE7EE;
  --petal-ink:#9D174D;
  --ink-2:#3F3558;
  --muted:#645B7A;
  --line:#EFE3CF;
  --line-2:#F6EEDF;
  --night:#1C1030;
  --gold:#FCD34D;
  --gold-2:#F59E0B;
  --gold-ink:#9A3412;
  --peacock:#0E7490;
  --leaf:#15803D;
  --violet:#6D28D9;
  --on-deep:#F6F1FF;
  --muted-deep:#C9BFE0;
  --line-deep:rgba(246,241,255,.16);
  --grad:linear-gradient(100deg,var(--rani) 0%,var(--saffron) 100%);
  --grad-gold:linear-gradient(100deg,#FDE68A 0%,#FCD34D 45%,#F59E0B 100%);
  --grad-soft:linear-gradient(160deg,#FFF3DC 0%,#FDEAF0 60%,#F1ECFD 100%);
  --sky:radial-gradient(120% 70% at 85% 0%,rgba(214,36,93,.34),transparent 60%),
        radial-gradient(90% 60% at 0% 100%,rgba(245,158,11,.22),transparent 62%),
        linear-gradient(180deg,var(--deep) 0%,var(--night) 100%);
  --shadow:0 1px 2px rgba(60,30,90,.06),0 10px 28px -16px rgba(60,30,90,.32);
  --shadow-lg:0 2px 6px rgba(60,30,90,.06),0 30px 60px -28px rgba(60,30,90,.5);
  --shadow-pop:0 18px 40px -16px rgba(200,23,93,.55);
  --f-disp:"Rozha One","Yeseva One",Georgia,serif;
  --f-body:"Mukta",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-deva:"Mukta","Noto Sans Devanagari",system-ui,sans-serif;
  --f-sacred:"Mukta","Noto Sans Devanagari",system-ui,sans-serif;
  --wrap:1180px;
  --gutter:clamp(16px,4.6vw,40px);
  --header-h:60px;
  --r-lg:28px;
  --r:20px;
  --r-sm:14px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  /* names older sections still use */
  --paper:var(--surface);
  --gold-deep:var(--saffron);
  --indigo:var(--deep);
  --sindoor:var(--rani);
  --ivory:var(--bg);
  --text-night:var(--on-deep);
  --muted-night:var(--muted-deep);
  --line-night:var(--line-deep);
  interpolate-size:allow-keywords;
}
@media (min-width:961px){:root{--header-h:68px}}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
/* Colour schemes, and why they are declared this way.
   Phone browsers in dark mode "force-darken" any page that does not say it
   handles dark mode itself: they invert its colours, which turned the cream
   header grey, the buttons maroon and the gold lettering brown. Chrome stops
   when told "only light", but Samsung Internet does not: it stops only for a
   page that declares both schemes and answers the prefers-color-scheme
   question in its stylesheet. So the page root declares "light dark" and has a
   prefers-color-scheme rule (below); everything inside the page stays in the
   light colours, because the stylesheet sets every colour itself. The dark
   design is used only when the visitor picks it (or Theme settings say to
   follow the phone). */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 14px);color-scheme:light dark;background:var(--bg)}
html body,html .jk-root,html :is(input,select,textarea){color-scheme:light dark}
html[data-theme="dark"],html[data-theme="dark"] body,html[data-theme="dark"] .jk-root,html[data-theme="dark"] :is(input,select,textarea){color-scheme:dark}
/* a phone in dark mode draws the little calendar and clock icons in date and time fields white: keep them visible on the light fields */
@media (prefers-color-scheme:dark){html:not([data-theme="dark"]) ::-webkit-calendar-picker-indicator{filter:invert(1) brightness(.45)}}
@media (prefers-color-scheme:dark){html:not([data-theme="dark"]){--os-dark:1;background:var(--bg)}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;
  padding-bottom:env(safe-area-inset-bottom,0px);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  -webkit-tap-highlight-color:transparent;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--f-disp);font-weight:400;line-height:1.12;margin:0;text-wrap:balance;color:var(--ink)}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--saffron);outline-offset:3px;border-radius:4px}
[lang="sa"],:not(html)[lang="hi"],.deva{font-family:var(--f-deva);font-weight:500}
.skip{position:absolute;left:-9999px;top:8px;display:inline-flex;align-items:center;min-height:44px;background:var(--deep);color:#fff;padding:8px 16px;z-index:100;border-radius:10px;font-weight:700}
.skip:focus{left:12px}
.gwrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gutter)}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hl{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}
.ai-ico{display:block;width:24px;height:24px;flex:0 0 auto}

/* ---------- surfaces ---------- */
.paper{background:var(--bg);color:var(--ink)}
.section{padding-block:clamp(48px,8vw,104px)}
.section--tint{background:var(--surface-2)}
.section--white{background:var(--surface)}
.night{background:var(--sky);color:var(--on-deep);position:relative;isolation:isolate}
.night h1,.night h2,.night h3,.night h4{color:#fff}
.night a{color:var(--on-deep)}
.night a.gbtn--gold,a.gbtn--gold{color:#3B1D06}
.night a.gbtn--buy{color:#fff}
.stars{display:none}

/* ---------- section heading ---------- */
.head{max-width:46rem;margin-bottom:clamp(24px,4vw,44px)}
.head--center{margin-inline:auto;text-align:center}
.head h2{font-size:clamp(1.85rem,6.4vw,2.9rem)}
.head .gsub{margin-top:10px;font-size:1.06rem;color:var(--muted)}
.night .head .gsub{color:var(--muted-deep)}
.mark{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;padding:4px 12px;border-radius:999px;
  background:#FFF1D2;color:#92400E;font-weight:700;font-size:.86rem;line-height:1.3}
.mark[lang="sa"]{font-family:var(--f-deva);font-size:.95rem;font-weight:500}
.night .mark{background:rgba(255,255,255,.1);color:var(--gold)}
.lede{font-size:clamp(1.04rem,1.6vw,1.18rem);color:var(--ink-2)}
html.ai-hi .ai-en-only{display:none}
/* the PDF maker measures fonts with a 1 x 1 image placed inline beside a word: keep it inline (see assets/jk-engine.js, downloadPDF) */
body > div > img[width="1"][height="1"]{display:inline;max-width:none}
/* ---------- buttons ---------- */
.gbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:48px;
  font-family:var(--f-body);font-weight:700;font-size:1.02rem;letter-spacing:.005em;line-height:1.15;text-align:center;white-space:nowrap;
  padding:.85em 1.5em;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;
  transition:transform .18s var(--ease),box-shadow .25s var(--ease),background-color .2s,color .2s,border-color .2s,filter .2s;
  -webkit-user-select:none;user-select:none}
.gbtn:active{transform:scale(.97)}
.gbtn--buy,.gbtn--gold{background:var(--grad);color:#fff;border:0;padding:calc(.85em + 2px) calc(1.5em + 2px);box-shadow:var(--shadow-pop);overflow:hidden;isolation:isolate}
.gbtn--buy:hover,.gbtn--gold:hover{filter:brightness(1.06) saturate(1.05);color:#fff;box-shadow:0 22px 44px -16px rgba(200,23,93,.65)}
.gbtn--gold{background:var(--grad-gold);color:#3B1D06;box-shadow:0 16px 34px -16px rgba(245,158,11,.7)}
.gbtn--gold:hover{color:#3B1D06}
.gbtn--ink{background:var(--deep);color:#fff;border-color:var(--deep)}
.gbtn--ink:hover{background:#3B2560;border-color:#3B2560;color:#fff}
.gbtn--ghost{background:var(--surface);color:var(--ink);border-color:var(--line)}
.gbtn--ghost:hover{border-color:var(--rani);color:var(--rani)}
.night .gbtn--ghost{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.3)}
.night .gbtn--ghost:hover{border-color:#fff;color:#fff}
.gbtn--block{width:100%}
.gbtn--lg{font-size:1.1rem;min-height:56px;padding:1em 1.8em}
.gbtn[disabled]{opacity:.5;cursor:not-allowed}
.gbtn.is-busy{opacity:.78;pointer-events:none}
.gbtn__price{display:inline-flex;align-items:center;padding-left:.75em;margin-left:.15em;border-left:1.5px solid rgba(255,255,255,.45);font-weight:800}
.gbtn svg{width:18px;height:18px}

.link{font-weight:700;color:var(--rani);text-decoration:underline;text-decoration-color:rgba(214,36,93,.35);text-decoration-thickness:2px;
  text-underline-offset:4px;padding:11px 0;display:inline-block}
.link:hover{text-decoration-color:var(--rani)}
.night .link{color:var(--gold);text-decoration-color:rgba(252,211,77,.45)}

/* ---------- prices ---------- */
.ai-price{display:flex;align-items:baseline;gap:6px 8px;flex-wrap:wrap}
.ai-price b{font-family:var(--f-disp);font-weight:400;font-size:1.7rem;line-height:1;color:var(--ink)}
.ai-price s{color:var(--muted);font-size:.95rem}
.ai-price em{font-style:normal;font-weight:700;font-size:.78rem;color:#fff;background:var(--leaf);border-radius:999px;padding:2px 8px;line-height:1.4}
.price{font-family:var(--f-disp);font-size:clamp(2.4rem,9vw,3.2rem);line-height:1;color:var(--ink)}
.price-note{font-size:.95rem;color:var(--muted);margin-bottom:16px}
.stop__price{font-family:var(--f-disp);font-size:1.4rem}
.stop__meta{font-size:.88rem;color:var(--muted)}

/* ---------- ticks ---------- */
.ai-checks{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}
.ai-checks li{position:relative;padding-left:28px;font-size:.98rem;line-height:1.45;color:var(--ink)}
.ai-checks li::before{content:"";position:absolute;left:0;top:2px;width:19px;height:19px;border-radius:50%;
  background:color-mix(in srgb,var(--acc,var(--leaf)) 16%,#fff) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23211634' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/11px no-repeat}
.ai-badge{display:inline-block;font-weight:700;font-size:.8rem;padding:2px 10px;border-radius:999px;background:#FFF1D2;color:#92400E}
.contents{list-style:none;margin:0;padding:0;columns:1;column-gap:28px;font-size:.98rem}
.contents li{break-inside:avoid;padding:5px 0 5px 26px;position:relative}
.contents li::before{content:"";position:absolute;left:0;top:.62em;width:16px;height:16px;border-radius:50%;
  background:#DCFCE7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315803D' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/10px no-repeat}
@media (min-width:640px){.contents{columns:2}}

/* ---------- light / dark switch ---------- */
.tsw{display:inline-flex;flex:0 0 auto;gap:2px;padding:3px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line)}
.tsw button{display:inline-flex;align-items:center;gap:5px;min-height:38px;padding:8px 18px;border:0;border-radius:999px;background:transparent;
  font:inherit;font-weight:700;font-size:.92rem;line-height:1;color:var(--muted);cursor:pointer;transition:background-color .2s,color .2s}
.tsw button:hover{color:var(--ink)}
.tsw button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(60,30,90,.2)}
/* ---------- top strip: announcement + light / dark ---------- */
.announce{background:var(--grad);color:#fff;font-size:.88rem;font-weight:600;line-height:1.35;letter-spacing:.005em}
.announce a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.55);text-underline-offset:3px}
.announce__in{position:relative;display:flex;align-items:center;gap:10px;max-width:var(--wrap);min-height:38px;margin:0 auto;padding:4px var(--gutter)}
.announce__msg{flex:1;min-width:0;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.announce__long{display:none}
.announce__short{display:inline}
.announce__tools{flex:0 0 auto;display:flex;align-items:center;gap:8px}
.announce__lang{position:relative;display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:4px 11px 4px 8px;border-radius:999px;
  border:1px solid rgba(255,255,255,.5);background:#fff;color:#9F1239;font:inherit;font-weight:700;font-size:.84rem;line-height:1;cursor:pointer}
.announce__lang::after{content:"";position:absolute;inset:-8px -4px}
.announce__lang svg{width:16px;height:16px}
.announce__lang [lang="hi"]{font-family:var(--f-deva);font-size:.9rem}
.announce__lang:hover{background:#FFF1F2}
.announce__theme{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 11px 4px 9px;
  border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.14);color:#fff;
  font:inherit;font-weight:700;font-size:.8rem;line-height:1;cursor:pointer}
.announce__theme::after{content:"";position:absolute;inset:-8px -6px}
.announce__theme:hover{background:rgba(255,255,255,.26)}
.announce__theme svg{width:15px;height:15px}
.announce__theme .i-sun{display:none}
html[data-theme="dark"] .announce__theme .i-sun{display:block}
html[data-theme="dark"] .announce__theme .i-moon{display:none}
.announce--bare{background:var(--sky);border-bottom:1px solid rgba(255,255,255,.06)}
.announce--bare .announce__in{justify-content:flex-end;min-height:40px}
/* phones: the light / dark button is the icon alone, so the message keeps its room */
@media (max-width:520px){.announce__theme [data-theme-label]{display:none}.announce__theme{padding:4px 8px;min-width:32px;justify-content:center}}
@media (min-width:761px){
  .announce__long{display:inline}.announce__short{display:none}
  .announce__msg{text-align:center}
  .announce__msg{padding-inline:210px}
  .announce__tools{position:absolute;right:var(--gutter);top:50%;transform:translateY(-50%)}
}

/* ---------- header ---------- */
/* Shopify wraps every section in a div, so the wrapper is what must stick */
#shopify-section-header{position:sticky;top:0;z-index:50}
.site-header{position:relative;z-index:50;background:color-mix(in srgb,var(--bg) 96%,transparent);border-bottom:1px solid transparent;color:var(--ink);
  padding-top:env(safe-area-inset-top,0px);transition:box-shadow .3s var(--ease),border-color .3s}
.site-header.is-scrolled{border-bottom-color:var(--line);box-shadow:0 10px 30px -22px rgba(60,30,90,.45)}
.site-header .gwrap{display:flex;align-items:center;gap:8px;min-height:var(--header-h)}
.logo{display:inline-flex;align-items:center;gap:9px;min-height:44px;text-decoration:none;color:var(--ink);margin-right:auto;min-width:0}
.logo img{max-height:40px;width:auto}
.logo .logo__mark{width:30px;height:30px;border-radius:8px}
.logo__word{font-family:var(--f-disp);font-size:1.48rem;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;text-decoration:none}
.nav{display:none}
.header-icons{display:flex;gap:2px;align-items:center}
.header-cta{min-height:44px;padding:.55em 1.05em;font-size:.95rem;margin-right:4px;box-shadow:0 10px 20px -12px rgba(200,23,93,.6)}
.icon-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--ink);text-decoration:none;position:relative;border-radius:12px}
.icon-link svg{width:24px;height:24px}
.icon-link:hover{color:var(--rani)}
.icon-link--account{display:none}
.cart-count{position:absolute;top:2px;right:0;min-width:19px;height:19px;border-radius:10px;background:var(--rani);color:#fff;font-size:.7rem;display:inline-grid;place-items:center;padding:0 5px;font-weight:700}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;background:none;border:0;color:var(--ink);padding:8px;cursor:pointer;min-width:44px;min-height:44px;border-radius:12px}
.menu-toggle svg{width:28px;height:28px}
.menu-toggle .i-close{display:none}
.menu-toggle[aria-expanded="true"] .i-open{display:none}
.menu-toggle[aria-expanded="true"] .i-close{display:block}
@media (min-width:421px){.icon-link--account{display:inline-flex}}
@media (max-width:370px){.logo__word{font-size:1.3rem}.header-cta{padding:.5em .85em;font-size:.88rem}}
@media (min-width:961px){
  .site-header{background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px)}
  .site-header .gwrap{gap:22px}
  .logo__word{font-size:1.62rem}
  .nav{display:flex;gap:22px;align-items:center}
  .nav a{position:relative;text-decoration:none;font-weight:600;font-size:1rem;color:var(--ink-2);padding:8px 0;white-space:nowrap}
  .nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:2px;background:var(--rani);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
  .nav a:hover,.nav a[aria-current="page"]{color:var(--rani)}
  .nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
  .header-icons{gap:10px}
  .header-cta{padding:.6em 1.2em}
  .menu-toggle{display:none}
}
@media (min-width:961px) and (max-width:1180px){.nav{gap:15px}.nav a{font-size:.95rem}}

/* ---------- phone menu: a sheet under the header ---------- */
.drawer,.drawer[hidden]{display:none}
@media (max-width:960px){
  .drawer:not([hidden]){display:block;position:fixed;left:0;right:0;bottom:0;top:var(--drawer-top,var(--header-h));z-index:49;
    background:var(--bg);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    padding:14px var(--gutter) calc(28px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
  html.menu-open,html.menu-open body{overflow:hidden}
}
.drawer__cta{display:flex;flex-direction:column;gap:3px;line-height:1.2;padding:15px 18px!important;font-size:1.1rem;white-space:normal}
.drawer__cta small{font-size:.82rem;font-weight:600;opacity:.92}
.drawer__cta2{display:flex;flex-direction:column;gap:2px;line-height:1.2;margin-top:10px;padding:12px 18px!important;font-size:1.02rem;white-space:normal}
.drawer__cta2 small{font-size:.82rem;font-weight:600;color:var(--muted)}
.drawer__theme{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;font-weight:700;color:var(--ink-2)}
.drawer__h{margin:24px 0 8px;font-size:.92rem;font-weight:700;color:var(--muted)}
.drawer__menu a{display:flex;align-items:center;min-height:52px;font-family:var(--f-disp);font-size:1.3rem;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
/* the reports as cards: round picture, name, price */
.drawer__reps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.drawer__reps a{display:flex;flex-direction:column;align-items:center;gap:7px;min-height:44px;padding:14px 8px 12px;border-radius:18px;text-align:center;
  border:1px solid color-mix(in srgb,var(--rani) 14%,var(--line));background:var(--surface);color:var(--ink);text-decoration:none;box-shadow:0 8px 18px -14px rgba(150,30,80,.5)}
.drawer__pic{width:58px;height:58px;border-radius:50%;overflow:hidden;display:grid;place-items:center;box-shadow:0 0 0 3px var(--surface),0 0 0 4px color-mix(in srgb,var(--gold) 45%,transparent)}
.drawer__pic img{width:100%;height:100%;object-fit:cover}
.drawer__reps b{font-size:.95rem;font-weight:700;line-height:1.22;text-wrap:balance}
.drawer__reps em{margin-top:auto;font-style:normal;font-weight:800;color:var(--rani);font-size:.95rem}
.drawer__reps a:active,.drawer__tools a:active,.drawer__foot a:active{background:var(--petal)}
.drawer__tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.drawer__tools a{display:flex;align-items:center;gap:10px;min-height:52px;padding:6px 12px;border:1px solid var(--line);
  border-radius:var(--r-sm);background:var(--surface);color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem;line-height:1.2}
.drawer__tico{flex:0 0 32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--rani);background:radial-gradient(circle at 34% 28%,#fff,#FBD3DE)}
.drawer__tico .ai-ico{width:17px;height:17px}
.drawer__foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.drawer__foot a{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:48px;padding:6px 14px;border-radius:999px;
  border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:700;font-size:.95rem}
/* ---------- hero: the night sky with the kundli ---------- */
.ai-invocation{font-family:var(--f-sacred);color:#B45309;font-size:1.12rem;letter-spacing:.03em;margin:0 0 12px;line-height:1.3}
.hero{position:relative;overflow:hidden;isolation:isolate;background:var(--sky);color:var(--on-deep)}
.hero__toran{position:relative;z-index:3}
.ai-toran{height:40px;background-repeat:repeat-x;background-size:auto 40px;background-position:center top;position:relative;z-index:2;pointer-events:none;margin-bottom:-10px}
@media (min-width:641px){.ai-toran{height:52px;background-size:auto 52px;margin-bottom:-14px}}
/* a quiet field of stars, drawn once */
.hero__stars{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.7;
  background-image:
    radial-gradient(1.2px 1.2px at 12% 22%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 28% 64%,#FDE68A 50%,transparent 51%),
    radial-gradient(1.4px 1.4px at 44% 12%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 62% 48%,#fff 50%,transparent 51%),
    radial-gradient(1.2px 1.2px at 76% 82%,#FDE68A 50%,transparent 51%),radial-gradient(1px 1px at 88% 30%,#fff 50%,transparent 51%),
    radial-gradient(1px 1px at 8% 86%,#fff 50%,transparent 51%),radial-gradient(1.3px 1.3px at 54% 92%,#fff 50%,transparent 51%),
    radial-gradient(1px 1px at 36% 38%,#FDE68A 50%,transparent 51%),radial-gradient(1px 1px at 94% 64%,#fff 50%,transparent 51%);
  background-size:340px 300px}
.hero__in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"intro art" "copy copy" "moat moat";
  align-items:center;column-gap:12px;padding-block:clamp(14px,4vw,64px) clamp(28px,6vw,72px)}
.hero__intro{grid-area:intro;position:relative;z-index:2;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.hero__copy{grid-area:copy;position:relative;z-index:2;min-width:0;display:flex;flex-direction:column;align-items:flex-start;margin-top:10px}
/* Shri Ganesha has his own corner: top right on a phone, the right column on a computer */
.hero__art{grid-area:art;position:relative;z-index:1;pointer-events:none}
.hero__art .gan,.hero__art .sky{display:block;width:clamp(150px,46vw,210px);height:auto;aspect-ratio:1;margin:-6px -8px -6px 0}
.hero__inv{margin:0;font-family:var(--f-sacred);font-size:1rem;line-height:1.35;letter-spacing:.03em;color:var(--gold);opacity:.95}
.hero__badge{display:inline-flex;align-items:center;gap:6px;margin:0;padding:5px 11px;white-space:nowrap;border-radius:999px;border:1px solid rgba(252,211,77,.45);
  background:rgba(252,211,77,.1);color:#FDE68A;font-weight:700;font-size:.9rem;letter-spacing:.02em;line-height:1.2}
.hero__badge span{color:var(--gold)}
.hero__h{margin-top:0;color:#fff;font-size:clamp(2.2rem,10vw,4.2rem);line-height:1.04;letter-spacing:-.005em}
.hero__l1,.hero__l2{display:block}
.hero__l2{color:#FCD34D;padding-bottom:.06em}
.hero__lede{max-width:30rem;margin:14px 0 0;font-size:clamp(1.02rem,1.7vw,1.2rem);line-height:1.55;color:#E4DCF5}
.hero__cta{display:grid;gap:14px;margin-top:22px;width:100%;max-width:30rem}
.hero__cta .gbtn--buy{width:100%;font-size:1.12rem}
.hero__alt{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hero__link{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.06);color:#fff;font-weight:700;font-size:.94rem;line-height:1.2;text-align:center;text-decoration:none;transition:background-color .2s,border-color .2s}
.hero__link .ai-ico{width:19px;height:19px;color:var(--gold)}
@media (max-width:430px){.hero__link .ai-ico{display:none}.hero__link{font-size:.92rem;padding:8px 6px}}
.hero__link:hover{background:rgba(255,255,255,.12);border-color:rgba(252,211,77,.5)}
.hero__note{margin:12px 0 0;font-size:.9rem;color:var(--muted-deep)}
.hero__ll{grid-area:moat;position:relative;z-index:2;margin-top:28px;width:100%;max-width:32rem}
@media (min-width:640px){.hero__cta .gbtn--buy{width:auto;justify-self:start}}
@media (min-width:960px){
  .hero__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"intro art" "copy art" "moat moat";column-gap:clamp(24px,4vw,64px);
    align-items:start;padding-block:clamp(40px,5vw,72px) clamp(44px,5vw,72px)}
  .hero__intro{align-self:end}
  .hero__copy{margin-top:18px}
  /* Shri Ganesha fills his half, level with the heading */
  .hero__art{align-self:center;justify-self:center;width:100%;display:flex;justify-content:center}
  .hero__art .gan,.hero__art .sky{width:min(500px,100%);margin:0}
  .hero__ll{align-self:start;margin-top:34px}
}
}

/* the kundli */
.sky{display:block;width:100%;height:100%;overflow:visible}
.sky__ring{fill:none;stroke:rgba(252,211,77,.35);stroke-width:1}
.sky__ticks line{stroke:rgba(252,211,77,.5);stroke-width:1.4;stroke-linecap:round}
.sky__line{fill:none;stroke:var(--gold);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.sky__line--sq{stroke-width:2.6}
.sky__nums text{fill:rgba(201,191,224,.75);font:500 10px var(--f-body);text-anchor:middle}
.sky__pl text{fill:#fff;font:600 15px var(--f-deva);text-anchor:middle}
.sky__dot{filter:drop-shadow(0 0 10px rgba(252,211,77,.8))}

/* the life line: three ticks, then the next window */
.ll{margin:0;max-width:32rem}
.ll__track{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.45fr);text-align:center}
.ll__track::before{content:"";position:absolute;left:11%;right:17%;top:10px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--deep) 0 60%,var(--rani) 84% 100%);opacity:.5;transform-origin:left}
.ll__track li{position:relative;min-width:0;padding:0 2px}
.ll__track i{display:block;width:22px;height:22px;margin:0 auto 8px;border-radius:50%;position:relative;z-index:1}
.ll__pt--past i{background:var(--deep) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.ll__pt--next i{background:var(--bg);border:5px solid var(--rani)}
.ll__pt--next i::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:2px solid var(--rani);opacity:0}
.ll__track b{display:block;font-size:.86rem;font-weight:700;line-height:1.2;color:var(--ink)}
.ll__track time{display:block;margin-top:2px;font-size:.8rem;line-height:1.25;color:var(--muted)}
.ll__pt--next b{color:var(--rani)}
.ll figcaption{margin-top:12px;font-size:.84rem;color:var(--muted);text-align:center}
@media (min-width:640px){.ll__track b{font-size:.94rem}.ll__track time{font-size:.86rem}.ll figcaption{text-align:left}}
/* on the night sky */
.hero .ll__track::before{background:linear-gradient(90deg,var(--gold) 0 58%,#FB7195 84% 100%);opacity:.55}
.hero .ll__pt--past i{background-color:var(--gold);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232A1845' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}
.hero .ll__pt--next i{background:var(--night);border-color:#FB7195}
.hero .ll__pt--next i::after{border-color:#FB7195}
.hero .ll__track b{color:#fff}
.hero .ll__pt--next b{color:#FDA4BC}
.hero .ll__track time,.hero .ll figcaption{color:var(--muted-deep)}
.hero .ll{padding:16px 12px 14px;border-radius:var(--r);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}
@media (min-width:960px){.hero .ll{padding:18px 16px 14px}}

.hero__lang{display:inline-flex;align-items:center;gap:4px;margin-left:2px;padding:1px 9px;border-radius:999px;border:1px solid rgba(252,211,77,.35);color:var(--gold);font-weight:600;white-space:nowrap}
.hero__lang span{font-family:var(--f-deva)}

/* short points under the button, each with its symbol */
.hero__chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;padding:0}
.hero__chips li{display:inline-flex;align-items:center;gap:7px;font-size:.92rem;font-weight:600;color:#E4DCF5}
.hero__chips .ai-ico{width:18px;height:18px;color:var(--gold);flex:0 0 auto}

/* the free tools as four round symbols, on a card that overlaps the night band */
.hero:has(+ .quick) .hero__in{padding-bottom:calc(clamp(30px,6vw,72px) + 40px)}
.quick{position:relative;z-index:3;margin-top:-44px;padding-inline:var(--gutter)}
.quick__in{list-style:none;margin:0 auto;padding:14px 6px 12px;max-width:min(var(--wrap),760px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;
  border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:0 18px 40px -22px rgba(42,24,69,.55)}
.quick__a{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:44px;padding:4px 2px;border-radius:14px;text-decoration:none;color:var(--ink);text-align:center}
.quick__ico{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:var(--rani);
  background:radial-gradient(circle at 34% 28%,#fff 0%,#FFE9EF 50%,#FBD3DE 100%);box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 55%,transparent) inset,0 6px 14px -8px rgba(150,30,80,.55);
  transition:transform .3s var(--ease)}
.quick__ico .ai-ico{width:25px;height:25px;stroke-width:1.7}
.quick__t{font-size:.8rem;font-weight:700;line-height:1.2;text-wrap:balance}
.quick__a:active .quick__ico{transform:scale(.94)}
.quick__a:focus-visible{outline:3px solid var(--rani);outline-offset:2px}
@media (hover:hover){.quick__a:hover .quick__ico{transform:translateY(-3px)}.quick__a:hover{color:var(--rani)}}
@media (min-width:640px){.quick__in{padding:18px 12px 14px}.quick__ico{width:62px;height:62px}.quick__t{font-size:.9rem}}
html[data-theme="dark"] .quick__ico{color:#FDA4BC;background:radial-gradient(circle at 34% 28%,#4A2238 0%,#341528 55%,#24101F 100%)}

/* Shri Ganesha: the lines draw themselves in, the halo turns, the glow breathes */
.gan{display:block;overflow:visible}
.gan__lines path,.gan__lines circle{stroke-dasharray:1;stroke-dashoffset:0}
.gan__halo{transform-origin:100px 100px}
@media (prefers-reduced-motion:no-preference){
  .gan__lines path,.gan__lines circle{stroke-dashoffset:1;animation:ganDraw 1.8s cubic-bezier(.45,0,.2,1) forwards}
  .gan__lines :nth-child(n+4){animation-delay:.25s}.gan__lines :nth-child(n+6){animation-delay:.5s}.gan__lines :nth-child(n+10){animation-delay:.8s}.gan__lines :nth-child(n+12){animation-delay:1s}
  .gan__fill,.gan__tilak{opacity:0;animation:ganIn .6s ease-out 1.7s forwards}
  .gan__halo{animation:ganTurn 90s linear infinite}
  .gan__glow{transform-origin:100px 98px;animation:ganBreathe 5s ease-in-out 2s infinite}
}
@keyframes ganDraw{to{stroke-dashoffset:0}}
@keyframes ganIn{to{opacity:1}}
@keyframes ganTurn{to{transform:rotate(360deg)}}
@keyframes ganBreathe{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}

/* how a forecast is made: five symbols left to right; on a phone a tap opens them top to bottom */
.moat{grid-area:moat;position:relative;z-index:2;width:100%;margin-top:24px;padding:14px 12px 16px;border-radius:22px;
  background:rgba(255,255,255,.06);border:1px solid rgba(252,211,77,.28);cursor:pointer;-webkit-tap-highlight-color:transparent}
.moat__top{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;margin:0 0 6px;padding:0 4px;border:0;background:none;
  color:inherit;font:inherit;text-align:left;cursor:pointer}
.moat__top:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:10px}
.moat__h{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
html.ai-hi .moat__h{letter-spacing:0;font-size:.95rem}
.moat__more{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;font-size:.8rem;font-weight:700;color:#FDE68A;white-space:nowrap}
.moat__more .ai-ico{width:15px;height:15px;transform:rotate(90deg);transition:transform .3s var(--ease)}
.moat__more-c{display:none}
.moat.is-open .moat__more-o{display:none}.moat.is-open .moat__more-c{display:inline}
.moat.is-open .moat__more .ai-ico{transform:rotate(-90deg)}
/* the row */
.moat__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;position:relative}
.moat__steps::before{content:"";position:absolute;left:10%;right:10%;top:21px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,rgba(252,211,77,.85),rgba(251,113,149,.9))}
.moat__steps li{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;text-align:center}
.moat__ico{position:relative;z-index:1;flex:0 0 auto;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--gold);
  background:#2A1845;border:1.5px solid rgba(252,211,77,.75);box-shadow:0 0 0 4px rgba(42,24,69,.95)}
.moat__ico .ai-ico{width:21px;height:21px;stroke-width:1.8}
.moat__steps li.is-end .moat__ico{color:#fff;background:#D6245D;background-image:var(--grad);border-color:transparent;box-shadow:0 0 0 4px rgba(42,24,69,.95),0 0 22px rgba(251,113,149,.55)}
.moat__t{min-width:0;display:flex;flex-direction:column;gap:2px}
.moat__t b{font-size:.76rem;font-weight:700;line-height:1.2;color:#fff;text-wrap:balance}
.moat__t small{display:none;font-size:.84rem;line-height:1.35;color:var(--muted-deep)}
.moat__steps li.is-end b{color:#FDE68A}
/* opened (phones): the same steps, top to bottom, with their small lines */
.moat.is-open .moat__steps{grid-template-columns:minmax(0,1fr);gap:14px;padding:4px 4px 0}
.moat.is-open .moat__steps::before{left:21px;right:auto;width:2px;height:auto;top:22px;bottom:22px;background:linear-gradient(180deg,rgba(252,211,77,.85),rgba(251,113,149,.9))}
.moat.is-open .moat__steps li{flex-direction:row;gap:14px;text-align:left}
.moat.is-open .moat__t b{font-size:1rem}
.moat.is-open .moat__t small{display:block}
/* a spark runs from the first step to the last, again and again */
.moat__pulse{position:absolute;left:0;top:0;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 10px 3px rgba(252,211,77,.8);opacity:0;z-index:1;pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  .moat__pulse{animation:moatRun 3.6s cubic-bezier(.55,0,.35,1) 2s infinite}
  .moat__steps li{animation:ai-rise .6s var(--ease-out) both;animation-delay:calc(.35s + var(--i,0) * .1s)}
  .moat.is-turning .moat__steps li{animation:ai-rise .45s var(--ease-out) both;animation-delay:calc(var(--i,0) * .06s)}
}
@keyframes moatRun{0%{transform:translate(0,0);opacity:0}8%{opacity:1}88%{opacity:1}100%{transform:translate(var(--rx,0px),var(--ry,0px));opacity:0}}
@media (min-width:640px){.moat__t b{font-size:.86rem}}
/* a computer has room for the small lines in the row itself, so nothing to open */
@media (min-width:960px){
  .moat{cursor:default;margin-top:40px;padding:20px 24px 22px}
  .moat__top{pointer-events:none;margin-bottom:12px}
  .moat__more{display:none}
  .moat__steps{gap:16px}
  .moat__t b{font-size:1rem}
  .moat__t small{display:block;font-size:.86rem}
  .moat__ico{width:52px;height:52px}
  .moat__steps::before{top:25px}
}
/* phones: the five steps say what the intro line says, so the line steps aside */
@media (max-width:639px){.hero__lede{display:none}}
@media (max-width:639px){.hero__badge{font-size:.78rem}}
@media (max-width:370px){.hero__badge{white-space:normal}}
@media (max-width:360px){.moat{padding-inline:6px}.moat__steps{gap:2px}.moat__ico{width:40px;height:40px}.moat__steps::before{top:19px}}
/* step 3 is a marker for today on the timeline, not something the visitor fills in: a hollow ring with a soft pulse */
.moat__steps li.is-now .moat__ico{border-style:dashed;background:rgba(42,24,69,.95)}
.moat__steps li.is-now .moat__ico::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1.5px solid rgba(252,211,77,.55);opacity:0}
@media (prefers-reduced-motion:no-preference){.moat__steps li.is-now .moat__ico::after{animation:moatNow 2.4s ease-out 1.5s infinite}}
@keyframes moatNow{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.35);opacity:0}}
/* ---------- the reports ---------- */
.rg{padding-block:clamp(40px,7vw,88px)}
.rg__head{margin-bottom:clamp(18px,3vw,32px)}
.rg__head h2{font-size:clamp(1.9rem,7vw,2.8rem)}
.rg__head p{margin:8px 0 0;color:var(--ink-2);font-size:1.02rem}
@media (min-width:900px){.rg__head{text-align:center}}

/* Diwali, in season */
.rg__season{display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px 14px;align-items:center;margin:16px 0 0;padding:16px 16px 16px 12px;
  border-radius:var(--r);text-decoration:none;overflow:hidden;box-shadow:var(--shadow-lg)}
.rg__diya{width:56px;height:56px;align-self:start}
.rg__stext b{display:block;font-family:var(--f-disp);font-weight:400;font-size:1.32rem;line-height:1.15;color:#fff}
.rg__stext .rg__sline{display:none;margin-top:4px;font-size:.92rem;line-height:1.45;color:var(--muted-deep)}
.rg__spts{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px}
.rg__spts span{display:inline-flex;align-items:center;gap:6px;font-size:.86rem;font-weight:600;line-height:1.25;color:#F3E8FF}
.rg__spts .ai-ico{width:16px;height:16px;color:var(--gold);flex:0 0 auto}
@media (min-width:700px){.rg__stext .rg__sline{display:block}.rg__spts{display:none}}
.rg__sbuy{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line-deep)}
.rg__sbuy .ai-price b{color:#fff;font-size:1.6rem}
.rg__sbuy .ai-price s{color:var(--muted-deep)}
.rg__sbuy .ai-price em{display:none}
.rg__sbuy .gbtn{min-height:44px;padding:.6em 1.2em;font-size:.96rem}
@media (min-width:760px){
  .rg__season{grid-template-columns:72px minmax(0,1fr) auto;padding:18px 22px;gap:18px}
  .rg__diya{width:72px;height:72px;align-self:center}
  .rg__sbuy{grid-column:auto;margin:0;padding:0;border:0}
}

/* the large card: a report cover */
.rg__feat{position:relative;display:grid;grid-template-columns:minmax(0,1fr);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg)}
.rg__cover{position:relative;display:flex;align-items:center;gap:14px;min-height:118px;padding:20px 20px 18px;color:var(--gold);overflow:hidden;
  border-bottom:1px solid var(--line-deep);
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23FCD34D' stroke-opacity='.28' stroke-width='1.2'%3E%3Crect x='10' y='10' width='180' height='180' rx='10'/%3E%3Cpath d='M14 14 186 186M186 14 14 186M100 10 190 100 100 190 10 100Z'/%3E%3C/svg%3E") right -46px center/210px no-repeat,
    radial-gradient(70% 120% at 100% 50%,rgba(252,211,77,.14),transparent 70%)}
.rg__cover .ai-ico{width:40px;height:40px;padding:8px;box-sizing:content-box;border-radius:16px;background:rgba(252,211,77,.12);border:1px solid rgba(252,211,77,.3)}
.rg__cover span{font-family:var(--f-deva);font-size:clamp(1.7rem,7vw,2.6rem);font-weight:600;line-height:1.1;color:var(--gold)}
.rg__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rg__fbody{display:flex;flex-direction:column;padding:18px 20px 20px}
.rg__badge{align-self:flex-start;margin-bottom:10px;padding:3px 11px;border-radius:999px;background:rgba(252,211,77,.16);color:var(--gold);font-size:.82rem;font-weight:700}
.rg__feat h3{font-size:clamp(1.8rem,7.4vw,2.4rem);line-height:1.08}
.rg__feat h3 a{color:#fff;text-decoration:none}
.rg__feat h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.rg__feat:has(h3 a:focus-visible){outline:3px solid var(--gold);outline-offset:3px}
.rg__feat h3 a:focus-visible{outline:none}
.rg__fline{margin:10px 0 14px;font-size:1rem;line-height:1.5;color:#DCD3F0;max-width:36rem}
.rg__pts{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px;padding:0}
.rg__pts li{display:inline-flex;align-items:center;gap:5px;padding:4px 11px 4px 8px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  font-size:.88rem;font-weight:600;color:#fff;line-height:1.3}
.rg__pts .ai-ico{width:15px;height:15px;color:var(--gold);stroke-width:2.6}
.rg__ffoot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line-deep)}
.rg__ffoot .ai-price{flex-direction:column;align-items:flex-start;gap:2px}
.rg__ffoot .ai-price b{color:#fff;font-size:2.1rem}
.rg__ffoot .ai-price s{color:var(--muted-deep);font-size:.92rem}
.rg__ffoot .ai-price em{display:none}
.rg__ffoot .gbtn{min-height:50px;padding:.8em 1.35em}
@media (min-width:760px){
  .rg__feat{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  .rg__cover{flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:16px;padding:32px;border-bottom:0;border-right:1px solid var(--line-deep);
    background-position:right -70px top -50px,center;background-size:300px,cover}
  .rg__cover .ai-ico{width:46px;height:46px}
  .rg__fbody{padding:clamp(24px,3.4vw,40px)}
  .rg__ffoot .ai-price{flex-direction:row;align-items:baseline;gap:10px}
  .rg__ffoot .ai-price em{display:inline-block}
}

/* the other reports: vertical cards, two to a row on a phone */
.rg__or{display:flex;align-items:center;gap:12px;margin:clamp(30px,5vw,48px) 0 14px;font-family:var(--f-disp);font-weight:400;font-size:clamp(1.3rem,5vw,1.7rem);line-height:1.2;color:var(--ink)}
.rg__or::before,.rg__or::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line) 30%,var(--line) 70%,transparent)}
.rg__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rg__item{display:flex;min-width:0}
.rg__card{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding:16px 10px 12px;
  border-radius:20px;background:var(--surface);border:1px solid color-mix(in srgb,var(--rani) 14%,var(--line));
  box-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 10px 26px -18px rgba(150,30,80,.45);text-decoration:none;color:inherit;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .2s}
.rg__card:active{transform:scale(.98)}
.rg__card:focus-visible{outline:3px solid var(--rani);outline-offset:2px}
/* the round picture: the product's own image, or the drawn seal */
.rg__pic{width:78px;height:78px;flex:0 0 auto;border-radius:50%;overflow:hidden;display:grid;place-items:center;
  box-shadow:0 0 0 4px var(--surface),0 0 0 5px color-mix(in srgb,var(--gold) 45%,transparent),0 10px 22px -10px rgba(150,30,80,.5)}
.rg__pic img{width:100%;height:100%;object-fit:cover}
.emb{position:relative;width:100%;height:100%;display:grid;place-items:center;border-radius:50%;color:var(--rani);
  background:radial-gradient(circle at 34% 28%,#fff 0%,#FFE9EF 46%,#FBD3DE 100%)}
.emb__ring{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#C8962B;stroke-width:1.4;opacity:.75}
.emb__ring line{stroke-width:1.6;stroke-linecap:round}
.emb .ai-ico{position:relative;width:42%;height:42%;stroke-width:1.6}
.rg__pill{display:inline-flex;align-items:center;gap:4px;margin-top:12px;padding:3px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--rani) 40%,transparent);
  color:var(--rani-ink,#B3124E);font-size:.76rem;font-weight:700;line-height:1.3;white-space:nowrap}
.rg__pill .ai-ico{width:13px;height:13px;stroke-width:2}
.rg__pill--tag{border-color:transparent;background:#FFF1D2;color:#92400E}
.rg__name{display:block;margin-top:9px;font-size:1.16rem;font-weight:800;line-height:1.18;letter-spacing:-.005em;color:var(--ink);text-wrap:balance}
.rg__q{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:5px;font-size:.8rem;font-weight:500;line-height:1.35;color:var(--muted)}
.rg__price{margin-top:auto;padding-top:10px}
.rg__price .ai-price{flex-direction:row;align-items:baseline;justify-content:center;gap:6px}
.rg__price .ai-price b{font-size:1.32rem}
.rg__price .ai-price s{font-size:.8rem}
.rg__price .ai-price em{display:none}
.rg__btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;margin-top:10px;padding:6px 10px;border-radius:12px;
  background:var(--grad);color:#fff;font-weight:700;font-size:.92rem;line-height:1.15;box-shadow:0 8px 16px -10px rgba(200,23,93,.7)}
.rg__note{margin:20px auto 0;max-width:40rem;text-align:center;font-size:.96rem;color:var(--muted)}
@media (hover:hover){
  .rg__card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -24px rgba(150,30,80,.55);border-color:color-mix(in srgb,var(--rani) 32%,var(--line))}
  .rg__card:hover .emb .ai-ico{transform:scale(1.06)}
  .emb .ai-ico{transition:transform .35s var(--ease)}
}
@media (max-width:360px){.rg__list{gap:10px}.rg__card{padding:14px 8px 10px}.rg__pic{width:68px;height:68px}.rg__name{font-size:1.04rem}}
@media (min-width:640px){.rg__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media (min-width:1000px){
  .rg__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
  .rg__card{padding:22px 16px 16px}
  .rg__pic{width:92px;height:92px}
  .rg__name{font-size:1.24rem}
  .rg__q{font-size:.9rem}
}

/* product cards (collections, search) */
.grid-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:16px}
.card-p{text-decoration:none;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--surface);box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s}
.card-p:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.card-p__img{aspect-ratio:16/10;background:var(--sky);display:grid;place-items:center;overflow:hidden}
.card-p__img img{width:100%;height:100%;object-fit:cover}
.card-p__img .deva{font-size:2rem;text-align:center;padding:12px;color:var(--gold)}
.card-p__body{padding:16px 18px}
.card-p h3{font-size:1.3rem}
.card-p__problem{font-size:.92rem;color:var(--rani);font-weight:700;margin:0 0 4px}
.card-p .stop__price{font-size:1.2rem;margin-top:6px;display:block}

/* phones: the big card's line kept to two lines; its points carry symbols */
@media (max-width:639px){.rg__fline{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
/* ---------- how fine-tuning works, beside a real page ---------- */
.fl{padding-block:clamp(32px,6vw,72px) clamp(40px,7vw,88px)}
.tune{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding:clamp(24px,5vw,52px) clamp(18px,4.4vw,52px);border-radius:var(--r-lg);
  background:var(--grad-soft);border:1px solid var(--line);position:relative;overflow:hidden}
.tune__copy h2{font-size:clamp(1.85rem,6.8vw,2.7rem);line-height:1.08;margin:0 0 10px}
.tune__lede{margin:0 0 22px;font-size:1.06rem;color:var(--ink-2);max-width:34rem}
.tune__steps{list-style:none;counter-reset:st;margin:0;padding:0;display:grid;gap:18px;max-width:34rem;position:relative}
.tune__steps li{counter-increment:st;position:relative;padding-left:52px;min-height:36px}
.tune__steps li::before{content:counter(st);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;
  background:var(--grad);color:#fff;font-family:var(--f-disp);font-size:1.08rem;box-shadow:0 8px 18px -10px rgba(200,23,93,.7)}
.tune__steps li:not(:last-child)::after{content:"";position:absolute;left:17px;top:40px;bottom:-16px;width:2px;border-radius:2px;
  background:color-mix(in srgb,var(--rani) 32%,transparent);transform-origin:top}
.tune__steps b{display:block;font-size:1.08rem;line-height:1.3;color:var(--ink)}
.tune__steps span:not(.tune__ico){display:block;margin-top:3px;font-size:.98rem;line-height:1.5;color:var(--ink-2)}
.tune__note{margin:20px 0 0;max-width:34rem;font-size:.94rem;color:var(--muted)}
.tune__cta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 22px;margin-top:22px}
.tune__proof{display:block;position:relative;width:100%;padding:0;border:0;background:none;cursor:zoom-in;font:inherit;text-align:left;color:inherit}
.tune__sheet{display:block;position:relative;max-height:250px;overflow:hidden;border-radius:16px;background:var(--surface);border:1px solid var(--line);
  box-shadow:var(--shadow-lg);transform:rotate(-1.4deg);transition:transform .45s var(--ease)}
.tune__sheet::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(180deg,transparent,var(--surface))}
.tune__sheet img{width:100%;height:auto}
.tune__cap{display:block;margin-top:12px;font-size:.88rem;font-weight:600;color:var(--ink-2);text-align:center}
.tune__proof:hover .tune__sheet{transform:rotate(0) translateY(-3px)}
@media (min-width:900px){
  .tune{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4vw,64px);align-items:center}
  .tune__sheet{max-height:470px;transform:rotate(1.6deg)}
}

/* the older dark price card, still available in the editor */
.fl__card{display:grid;grid-template-columns:minmax(0,1fr);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);margin-top:clamp(18px,2.6vw,28px)}
.fl__body{padding:clamp(22px,4.4vw,52px)}
.fl__body h2{font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.06;margin:0 0 14px}
.fl__body h2 em{display:block;font-style:normal;color:var(--gold);font-size:.6em;line-height:1.2;margin-top:10px}
.fl__lede{color:var(--muted-deep);font-size:1.06rem;max-width:40rem;margin:0}
.fl__feat{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:15px}
.fl__feat li{display:flex;gap:14px;align-items:flex-start}
.fl__ico{flex:0 0 42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(252,211,77,.14);color:var(--gold)}
.fl__ico svg{width:22px;height:22px}
.fl__feat li > span:last-child{color:var(--muted-deep);font-size:.98rem;line-height:1.45}
.fl__feat b{display:block;color:#fff;font-size:1.06rem;line-height:1.3}
.fl__buy{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:clamp(22px,3.4vw,40px);background:var(--surface);color:var(--ink)}
.fl__name{margin:0;font-weight:700;font-size:.95rem;color:var(--rani)}
.fl__buy .ai-price b{font-size:3rem}
.fl__buy small{color:var(--muted);font-size:.9rem;line-height:1.4}
.fl__buy .link,.night .fl__buy .link{align-self:center;color:var(--rani)}
.fl__covers{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:14px 0 0;border-top:1px dashed var(--line)}
.fl__covers li{font-size:.84rem;font-weight:600;color:var(--ink-2);background:var(--surface-2);border-radius:999px;padding:3px 10px}
@media (min-width:900px){.fl__card{grid-template-columns:minmax(0,1.5fr) minmax(300px,.9fr)}}

/* ---------- the free Kundli, in a section of its own ---------- */
.hk{position:relative;background:var(--grad-soft)}
.hk--form{background:var(--surface-2)}
.hk__grid{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "form";row-gap:18px;padding-block:clamp(36px,6vw,72px);position:relative;z-index:1}
.hk__head{grid-area:head;min-width:0}
.hk__form{grid-area:form;min-width:0}
.hk__more{grid-area:more}
.hk h1{font-size:clamp(2rem,8.4vw,3.9rem);line-height:1.05}
.hk h2,.hk--form h2{font-size:clamp(1.85rem,6.8vw,2.6rem);line-height:1.1}
.hk .lede{font-size:1.04rem;color:var(--ink-2);margin:12px 0 0;max-width:34rem}
.hk__ticks{list-style:none;margin:20px 0 0;padding:0;display:none;gap:10px}
.hk__ticks li{display:flex;gap:10px;align-items:flex-start;font-size:1rem;color:var(--ink-2)}
.hk__ticks li::before{content:"";flex:0 0 22px;height:22px;border-radius:50%;margin-top:2px;
  background:var(--leaf) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.hk--form .ai-disclaimer{display:none}
@media (min-width:961px){
  .hk--form .hk__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);grid-template-areas:"head form";align-items:start;column-gap:clamp(24px,5vw,64px)}
  .hk--form .hk__head{position:sticky;top:calc(var(--header-h) + 24px)}
  .hk__ticks{display:grid}
  .hk--form .ai-disclaimer{display:block;margin-top:18px}
}
.hk.is-live .hk__grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"form";padding-block:16px 40px}
.hk.is-live .hk__head,.hk.is-live .hk__more,.hk.is-live .hk__bg,.hk.is-live .ai-invocation{display:none}
.hk__formhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px clamp(16px,3vw,26px) 0;margin:0;font-weight:700;font-size:1.06rem;color:var(--ink)}
.hk__formhead span{font-size:.84rem;font-weight:700;color:var(--leaf);white-space:nowrap;background:#DCFCE7;border-radius:999px;padding:2px 10px}
.hk.is-live .hk__formhead{display:none}
/* the ad visitor's form: short and direct */
.hk .jk-root #form > .eyebrow,.hk .jk-root #formTitle,.hk .jk-root #formSub,.hk .jk-root #modewrap{display:none!important}
.hk .jk-root .fields{padding-top:2px}

/* the calculator's frame */
.frame{position:relative;background:var(--surface);padding:clamp(4px,1.2vw,10px);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}
.frame__corner{display:none}
.frame__status{margin:0;padding:12px;font-size:.95rem;color:var(--muted);text-align:center}
.frame:not(.is-ready) .frame__status::before{content:"";display:inline-block;width:14px;height:14px;margin-right:8px;vertical-align:-2px;border-radius:50%;
  border:2px solid var(--line);border-top-color:var(--rani);animation:ai-spin .9s linear infinite}
.frame.is-ready .frame__status{display:none}
.frame .jk-root{background:transparent;border-radius:20px}
.frame .jk-root #form{border:0;padding:clamp(16px,3vw,26px)}
.frame__iframe{display:block;width:100%;height:900px;border:0}
.hk.is-live .frame{padding:0;border:0;box-shadow:none;background:transparent}
/* before the engine script arrives, show only what it will show */
.jk-root:not([data-preview]) #grpReports{display:none}
.jk-root[data-mode]:not([data-mode="kundali"]):not([data-preview]) #grpTools{display:none}
.frame:not(.is-ready) .jk-root #formTitle,.frame:not(.is-ready) .jk-root #formSub{visibility:hidden}
/* readable labels and thumb-sized targets in the calculator form */
body .jk-root .f label{font-size:12.5px;letter-spacing:.08em}
body .jk-root .modelab{font-size:12px}
body .jk-root .eyebrow{font-size:12.5px}
body .jk-root #report .eyebrow{font-size:12px}
body .jk-root #ac div em{font-size:12px}
body .jk-root .btn{min-height:44px}
body .jk-root .vswitch .btn{font-size:12px}
body .jk-root .btn.linkish{min-height:44px;white-space:normal;text-align:left}
body .jk-root .f input:not([type="date"]):not([type="time"]),body .jk-root .f select{min-height:48px}
body .jk-root #bar .btn{min-height:44px;font-size:12px}
body .jk-root .modes button,body .jk-root .ex button,body .jk-root #samples button{min-height:44px}
body .jk-root #togMan{min-height:44px}
/* the page's own heading already names the tool: the calculator need not repeat it */
.tl-tool .jk-root #form > .eyebrow,.tl-tool .jk-root #formTitle,.tl-tool .jk-root #formSub,.tl-tool .jk-root #modewrap,
.ft-tool .jk-root #form > .eyebrow,.ft-tool .jk-root #formSub{display:none!important}

/* ---------- after a free Kundli: keep it, then the full report ---------- */
.ai-leadcard{margin:0 0 22px;padding:16px 18px;border-radius:var(--r);background:#fff;border:2px solid #FDE7EE;box-shadow:var(--shadow);display:grid;gap:10px}
.ai-leadcard h3{font-size:1.25rem;margin:0}
.ai-leadcard p{margin:0;color:var(--ink-2);font-size:.95rem}
.ai-leadcard form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:end}
.ai-leadcard label{display:grid;gap:4px;font-size:.85rem;font-weight:600;color:var(--ink-2)}
.ai-leadcard input{font:inherit;font-size:16px;min-height:48px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);width:100%}
.ai-leadcard input.is-bad{border-color:var(--rani);background:#FDE7EE}
.ai-leadcard .gbtn{padding:.8em 1.3em}
.ai-leadcard .ai-ok{color:var(--leaf);font-weight:600}
.ai-leadcard .ai-bad{color:var(--rani);font-size:.9rem;min-height:1em}
.ai-leadcard .ai-bad:empty{display:none}
@media (min-width:701px){.ai-leadcard form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}}
.ai-freecard{border-color:#FFE3A3;background:linear-gradient(135deg,#FFF8E6,#fff 60%)}
.ai-freecard__top{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap}
.ai-freecard__top>div{flex:1 1 240px;min-width:0}
.ai-freecard__top .gbtn{width:100%;display:inline-flex;align-items:center;gap:8px;padding:.85em 1.4em;font-size:1rem}
.ai-freecard__or{border-top:1px dashed var(--line);padding-top:10px;font-size:.9rem!important}
.ai-freecard__mailbtn{display:block;border:0;background:none;padding:10px 0;font:inherit;font-size:.95rem;font-weight:600;
  color:var(--rani);text-decoration:underline;text-underline-offset:3px;cursor:pointer;justify-self:center}
.ai-freecard__mail{display:none}
.ai-freecard.is-mail .ai-freecard__mail{display:grid;gap:10px}
.ai-freecard.is-mail .ai-freecard__mailbtn{display:none}
@media (min-width:701px){
  .ai-freecard__top .gbtn{width:auto}
  .ai-freecard__mailbtn{display:none}
  .ai-freecard__mail{display:block}
}
.jk-root .ai-freecard .gbtn svg{display:inline-block;width:18px;height:18px;flex:0 0 18px;max-width:none}
.ai-next{margin:26px 0 8px;padding:clamp(18px,3vw,28px);border-radius:var(--r-lg);background:var(--grad-soft);border:1px solid var(--line)}
.ai-next h3{font-size:clamp(1.5rem,2.6vw,2rem);margin:6px 0 6px}
.ai-next > p{color:var(--ink-2);margin:0 0 16px;max-width:44rem}
.ai-nextflag{display:grid;grid-template-columns:minmax(0,1fr);margin:0 0 18px;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.ai-nextflag__body{padding:18px 20px}
.ai-nextflag__kind{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px!important;font-family:var(--f-disp);font-size:1.5rem;line-height:1.1;color:#fff}
.ai-nextflag .ai-checks{margin:0}
.ai-nextflag .ai-checks li{color:var(--on-deep)}
.ai-nextflag .ai-checks li::before{background-color:rgba(255,255,255,.9)}
.ai-nextflag__buy{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:18px 20px;background:rgba(255,255,255,.07);border-top:1px solid var(--line-deep)}
.ai-nextflag .ai-price b{color:#fff;font-size:2.2rem}
.ai-nextflag .ai-price s{color:var(--muted-deep)}
.ai-nextflag small{color:var(--muted-deep);font-size:.86rem;line-height:1.35}
.ai-next__or{margin:0 0 10px!important;font-weight:700;font-size:.95rem;color:var(--muted)}
@media (min-width:861px){.ai-nextflag{grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr)}.ai-nextflag__buy{border-top:0;border-left:1px solid var(--line-deep)}}
.jk-root .ai-next a.gbtn,.jk-root .ai-leadcard .gbtn{color:#fff;font-size:.98rem}
.jk-root .ai-next a.link{color:var(--rani)}
.jk-root .ai-next h3,.jk-root .ai-leadcard h3{font-family:var(--f-disp);color:var(--ink);line-height:1.15}
.jk-root .ai-next p,.jk-root .ai-leadcard p{margin:0 0 10px}
.jk-root .ai-next .ai-sol p.ai-sol__promise{margin:0 0 12px}

/* a report as the answer to one worry (after the free Kundli, tool pages) */
.ai-sols{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(12px,2vw,20px)}
@media (min-width:641px){.ai-sols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1001px){.ai-sols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ai-next .ai-sols--three{grid-template-columns:minmax(0,1fr)}
@media (min-width:861px){.ai-next .ai-sols--three{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ai-sols--one{max-width:560px}
.ai-sol{--acc:var(--rani);position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  padding:20px;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s,border-color .2s;min-width:0}
.ai-sol:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.ai-sol__top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ai-sol__kind{font-weight:700;font-size:.92rem;color:var(--acc)}
.ai-sol h3{font-size:clamp(1.3rem,2.2vw,1.55rem);line-height:1.15;margin:0 0 8px}
.ai-sol__promise{font-size:.98rem;color:var(--ink-2);margin:0 0 12px}
.ai-sol__foot{margin-top:auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:14px;border-top:1px dashed var(--line)}
.ai-sol__meta{display:block;font-size:.84rem;color:var(--muted);line-height:1.3}
.ai-sol__foot .gbtn{width:100%;padding:.7em 1.2em;font-size:.96rem}
@media (min-width:641px){.ai-sol__foot .gbtn{width:auto;margin-left:auto}}
.ai-sols-note{text-align:center;color:var(--muted);margin:26px auto 0;max-width:40rem;font-size:.98rem}

/* free Kundli, folded behind one button (home page) */
.hk--fold:not(.is-open) .hk__grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head";justify-items:center;text-align:center}
.hk--fold:not(.is-open) .hk__head{position:static;max-width:38rem}
.hk--fold:not(.is-open) .hk .lede,.hk--fold:not(.is-open) .lede{margin-inline:auto}
.hk--fold:not(.is-open) .hk__ticks{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-top:16px}
.hk--fold:not(.is-open) .hk__ticks li{font-size:.94rem;text-align:left}
.hk--fold:not(.is-open) .ai-disclaimer{display:none}
.hk__open{margin-top:24px;gap:10px;min-width:min(100%,300px)}
.hk__open .ai-ico{width:20px;height:20px;flex:0 0 auto}
.hk--fold.is-open .hk__form{animation:hkIn .5s var(--ease) both}
@keyframes hkIn{from{opacity:0;transform:translateY(14px)}}
@media (prefers-reduced-motion:reduce){.hk--fold.is-open .hk__form{animation:none}}

/* the steps carry a symbol instead of a number */
.tune__steps li{padding-left:58px;min-height:44px}
.tune__steps li::before{content:none}
.tune__ico{position:absolute;left:0;top:-2px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--grad);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--rani) 14%,transparent),0 8px 16px -8px rgba(200,23,93,.7)}
.tune__ico .ai-ico{width:21px;height:21px;stroke-width:1.9}
.tune__steps li:not(:last-child)::after{left:20px;top:46px}
/* phones: the step titles with their symbols say it; the longer lines show on a computer */
@media (max-width:639px){
  .tune__steps span:not(.tune__ico){display:none}
  .tune__steps{gap:22px}
  .tune__steps li{display:flex;align-items:center;min-height:42px}
  .tune__steps li:not(:last-child)::after{top:44px;bottom:-22px}
}

/* a standard report beside yours */
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:34rem;margin-top:4px}
.cmp__c{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px 14px;border-radius:18px;border:1px solid var(--line);background:var(--surface)}
.cmp__c b{font-size:1rem;line-height:1.25;color:var(--ink)}
.cmp__c span:not(.cmp__ico){font-size:.88rem;line-height:1.4;color:var(--muted)}
.cmp__ico{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;margin-bottom:4px;background:var(--surface-3);color:var(--muted)}
.cmp__ico .ai-ico{width:20px;height:20px}
.cmp__c--them{opacity:.92}
.cmp__c--them b{color:var(--ink-2)}

.cmp__c--us{border-color:transparent;background:var(--sky);box-shadow:0 18px 34px -20px rgba(42,24,69,.8)}
.cmp__c--us b{color:#fff}
.cmp__c--us span:not(.cmp__ico){color:#E4DCF5}
.cmp__c--us .cmp__ico{background:var(--grad);color:#fff;box-shadow:0 0 18px rgba(251,113,149,.5)}
/* ---------- trust strip ---------- */
.ai-trust{background:var(--surface);border-block:1px solid var(--line)}
.ai-trust ul{list-style:none;margin:0 auto;padding:22px var(--gutter);max-width:var(--wrap);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
.ai-trust li{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;font-size:.88rem;line-height:1.35;color:var(--muted)}
.ai-trust li b{display:block;color:var(--ink);font-size:.98rem;margin-bottom:1px}
.ai-trust__sub{display:block}
.ai-trust .ico{flex:0 0 auto;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#FFF1D2;color:var(--gold-ink)}
.ai-trust .ico .ai-ico,.ai-trust .ico svg{width:20px;height:20px}
@media (min-width:900px){.ai-trust ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-block:24px}.ai-trust li{flex-direction:row;text-align:left;gap:12px;font-size:.94rem;align-items:center}.ai-trust .ico{width:46px;height:46px}}

/* ---------- questions ---------- */
.faq{max-width:52rem;margin:0 auto;display:grid;gap:10px}
.faq details,.fold > details{interpolate-size:allow-keywords}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:0 18px;transition:box-shadow .3s,border-color .3s}
.faq details[open]{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--rani) 22%,var(--line))}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;min-height:60px;padding:14px 0;font-weight:700;font-size:1.05rem;line-height:1.35;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:0 0 30px;height:30px;margin-left:auto;border-radius:50%;background:var(--petal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D6245D' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat;
  transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .rte{padding:0 0 18px;color:var(--ink-2)}

/* ---------- footer ---------- */
.site-footer{background:var(--sky);color:var(--muted-deep);font-size:.98rem;padding:clamp(44px,6vw,80px) 0 calc(96px + env(safe-area-inset-bottom,0px))}
.site-footer a{color:var(--on-deep);text-decoration:none}
.site-footer a:hover{color:var(--gold)}
.footer-grid{display:grid;grid-template-columns:minmax(0,1fr)}
.footer-brand{margin-bottom:22px}
.footer-grid h4{font-family:var(--f-body);font-weight:700;font-size:1rem;color:var(--gold);margin:0}
.footer-grid ul{list-style:none;padding:0;margin:0}
.footer-grid li a{display:flex;align-items:center;min-height:44px;padding:6px 0;line-height:1.3;overflow-wrap:anywhere}
/* phones: each group folds, so the footer is three tidy rows until opened */
.fcol{border-top:1px solid var(--line-deep)}
.fcol:last-child{border-bottom:1px solid var(--line-deep)}
.fcol summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:56px;cursor:pointer}
.fcol summary::-webkit-details-marker{display:none}
.fcol summary::after{content:"";width:10px;height:10px;margin-right:6px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:translateY(-3px) rotate(45deg);transition:transform .3s var(--ease)}
.fcol[open] summary::after{transform:translateY(2px) rotate(225deg)}
.fcol ul{padding-bottom:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
.footer-brand .logo__word{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.footer-brand .logo__word{font-size:2rem;background:linear-gradient(100deg,#FB7195 0%,#FDBA74 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer-brand p{margin-top:12px;max-width:24rem}
.footer-blessing{font-family:var(--f-sacred);color:var(--gold);font-size:1.1rem;margin-top:12px}
.footer-pay{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.footer-pay span{font-size:.8rem;font-weight:700;border:1px solid var(--line-deep);border-radius:8px;padding:3px 9px;color:var(--on-deep)}
.footer-legal{margin-top:30px;padding-top:20px;border-top:1px solid var(--line-deep);display:flex;gap:14px 18px;justify-content:space-between;flex-wrap:wrap;font-size:.88rem}
.footer-legal p{margin:0;max-width:44rem}
.footer-policies a,.footer-legal .ai-business a{display:inline-flex;align-items:center;min-height:44px;padding:0}
.footer-policies{display:flex;flex-wrap:wrap;gap:0 18px}
.ai-business{font-size:.88rem;line-height:1.5;max-width:30rem}
.ai-business p{margin:0 0 4px}
.ai-business a{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media (min-width:900px){
  .site-footer{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}
  .footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
  .footer-brand{margin:0}
  .fcol,.fcol:last-child{border:0}
  .fcol summary{min-height:0;margin-bottom:10px;cursor:default;pointer-events:none}
  .fcol summary::after{display:none}
  .fcol ul{display:block;padding:0}
  .footer-grid li a{min-height:36px;padding:4px 0}
  .footer-legal{margin-top:40px}
}
.ai-disclaimer{margin:12px 0 0;font-size:.86rem;line-height:1.45;color:var(--muted)}

/* phones: four symbols in a row, the title under each (the longer line shows on a computer) */
@media (max-width:899px){
  .ai-trust ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 4px;padding-block:18px}
  .ai-trust li{gap:7px}
  .ai-trust__sub{display:none}
  .ai-trust li b{font-size:.78rem;line-height:1.2;margin:0;text-wrap:balance}
}
/* ---------- a report's own page ---------- */
.pr-hero{background:linear-gradient(180deg,#FFF3E2 0%,var(--bg) 340px)}
.pr-hero .gwrap{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start;padding-block:14px clamp(36px,6vw,72px)}
.pr-grid{grid-template-areas:"intro" "buy" "extra"}
.pr-intro{grid-area:intro;min-width:0}.pr-hero .buybox{grid-area:buy}.pr-extra{grid-area:extra;min-width:0}
.crumbs{display:none;font-size:.9rem;color:var(--muted);margin-bottom:18px}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--rani)}
.pr-id{display:flex;align-items:center;gap:14px}
.pr-cover{flex:0 0 64px;height:64px;border-radius:18px;display:grid;place-items:center;background:var(--sky);color:var(--gold);box-shadow:0 14px 28px -16px rgba(42,24,69,.8);
  position:relative;overflow:hidden}
.pr-cover .ai-ico{width:30px;height:30px}
.pr-cover span{display:none}
.pr-idtxt{min-width:0}
.pr-kicker{margin:0 0 2px;font-weight:700;font-size:.96rem;line-height:1.3;color:var(--rani)}
.pr-hero h1{font-size:clamp(1.95rem,8.4vw,3.2rem);line-height:1.06}
.pr-h1-sub{display:block;font-family:var(--f-body);font-weight:600;font-size:clamp(.94rem,1.6vw,1.12rem);color:var(--ink-2);letter-spacing:0;margin-top:6px;line-height:1.35}
.pr-hero .lede{color:var(--ink-2);font-size:1.06rem;margin:14px 0 12px;max-width:36rem}
.pr-facts{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}
.pr-facts li{display:inline-flex;align-items:center;gap:6px;padding:5px 11px 5px 9px;border-radius:999px;background:var(--surface);border:1px solid var(--line);
  font-size:.88rem;font-weight:600;color:var(--ink-2);line-height:1.3}
.pr-facts .ai-ico{width:16px;height:16px;color:var(--rani)}
@media (min-width:901px){
  .pr-hero .gwrap{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);grid-template-areas:"intro buy" "extra buy";grid-template-rows:auto 1fr;gap:20px clamp(24px,4.5vw,64px);
    padding-block:clamp(20px,3vw,44px) clamp(40px,6vw,72px)}
  .crumbs{display:block}
  .pr-cover{flex-basis:96px;height:112px;border-radius:20px;align-content:center;gap:6px}
  .pr-cover .ai-ico{width:34px;height:34px}
  .pr-cover span{display:block;font-family:var(--f-deva);font-size:.8rem;font-weight:600;text-align:center;line-height:1.15;padding:0 6px;color:var(--gold)}
  .pr-id{gap:20px}
  .pr-hero .lede{font-size:1.15rem;margin:18px 0 14px}
}

/* the order box */
.buybox{background:var(--surface);color:var(--ink);border-radius:var(--r-lg);padding:20px 18px;position:relative;box-shadow:var(--shadow-lg);border:1px solid var(--line)}
@media (min-width:901px){.buybox{position:sticky;top:calc(var(--header-h) + 16px);padding:clamp(22px,2.6vw,30px)}}
.buybox::before{content:"";position:absolute;left:24px;right:24px;top:-1px;height:3px;border-radius:0 0 3px 3px;background:var(--grad)}
.buybox__h{font-size:1.6rem;margin-bottom:10px}
.buybox .price{margin:0;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.buybox .price s{font-family:var(--f-body);font-size:1.1rem;color:var(--muted)}
.buybox .price em{font-family:var(--f-body);font-style:normal;font-weight:700;font-size:.86rem;color:#fff;background:var(--leaf);border-radius:999px;padding:2px 10px;align-self:center}
.buybox .price-note{margin:6px 0 16px}
.buybox fieldset{border:0;padding:0;margin:0 0 14px;min-width:0}
.buybox legend{font-weight:700;font-size:1.05rem;margin-bottom:2px;padding:0}
.buybox .ghint{font-size:.9rem;color:var(--muted);margin:0 0 10px}
.buybox__actions{display:grid;gap:10px}
.buybox__small{font-size:.88rem;color:var(--muted);margin:14px 0 0;text-align:center}
.buybox__small a{padding:12px 0;color:inherit}
.buybox .ai-disclaimer{text-align:center}
.owned-badge{display:inline-flex;align-items:center;gap:8px;background:#DCFCE7;color:#166534;border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:700;margin-bottom:12px}
.ai-prefill{display:none;font-size:.92rem;background:#DCFCE7;color:#14532D;border-radius:12px;padding:9px 12px;margin:0 0 12px}
.ai-prefill.is-on{display:block}
.ai-safe{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:14px;font-size:.88rem;color:var(--ink-2)}
.ai-safe span{display:inline-flex;align-items:center;gap:5px}
.ai-safe svg{width:16px;height:16px;color:var(--leaf)}
.ai-guarantee{margin-top:14px;padding:10px 12px;border-radius:12px;background:#FFF1D2;color:#78350F;font-size:.92rem;text-align:center}
.pr-retired h2{font-size:1.6rem;margin:0 0 10px}
.pr-retired p{color:var(--ink-2)}
.pr-retired .gbtn{white-space:normal}

/* fields */
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;min-width:0}
.field label,.field__l{font-size:.92rem;font-weight:600;color:var(--ink-2)}
.field__opt{font-weight:400;color:var(--muted)}
.field input,.field select,.field textarea{font:inherit;font-size:16px;min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--surface-2);color:var(--ink);width:100%;transition:border-color .2s,box-shadow .2s,background-color .2s}
.field select{-webkit-appearance:none;appearance:none;padding-right:34px;
  background:var(--surface-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23645B7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 1.5 6 6l4.5-4.5'/%3E%3C/svg%3E") no-repeat right 13px center/11px}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--rani);background-color:#fff;box-shadow:0 0 0 4px rgba(214,36,93,.14)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field__hint{margin:4px 0 0;font-size:.92rem;line-height:1.45;color:var(--ink-2)}
.field__check{display:flex;gap:10px;align-items:center;min-height:48px;margin:-4px 0 12px;font-size:.96rem;font-weight:500;color:var(--ink-2);cursor:pointer;flex-wrap:wrap}
.field__check input{width:22px;height:22px;flex:0 0 22px;margin:0;accent-color:var(--rani)}
/* day / month / year and hour / minute / AM-PM */
.dparts{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.1fr) minmax(0,1.05fr);gap:8px}
.dparts--time{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr)}
.dparts select{font:inherit;font-size:16px;min-height:50px;padding:10px 26px 10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--surface-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23645B7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 1.5 6 6l4.5-4.5'/%3E%3C/svg%3E") no-repeat right 10px center/11px;
  color:var(--ink);width:100%;min-width:0;-webkit-appearance:none;appearance:none;text-overflow:ellipsis}
.dparts select:focus{outline:none;border-color:var(--rani);box-shadow:0 0 0 4px rgba(214,36,93,.14)}
.dparts select:invalid,.dparts select.is-empty{color:var(--muted)}
.dparts.is-off{opacity:.45}
/* a choice of two, e.g. the report language */
.seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line)}
.seg label{position:relative;display:block;cursor:pointer}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span{display:flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;font-weight:700;font-size:1rem;color:var(--muted);transition:background-color .2s,color .2s,box-shadow .2s}
.seg input:checked + span{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(60,30,90,.22)}
.seg input:focus-visible + span{outline:3px solid var(--saffron);outline-offset:1px}
/* birth-place search */
.city-wrap{position:relative}
.city-list{position:absolute;left:0;right:0;top:100%;margin-top:4px;z-index:20;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);
  box-shadow:0 18px 40px -18px rgba(33,22,52,.45);max-height:264px;overflow-y:auto}
.city-list[hidden]{display:none}
.city-opt{display:flex;align-items:baseline;gap:8px;min-height:48px;padding:12px 14px;cursor:pointer;font-size:1rem;border-bottom:1px solid var(--line-2)}
.city-opt:last-child{border-bottom:0}
.city-opt b{font-weight:600}
.city-opt span{color:var(--muted);font-size:.9rem}
.city-opt em{margin-left:auto;font-style:normal;font-size:.8rem;color:var(--muted)}
.city-opt.is-active,.city-opt:hover{background:var(--petal)}
.city-note{font-size:.86rem;color:var(--muted);min-height:1em}
.city-note.is-ok{color:var(--leaf)}
.city-note.is-err{color:var(--rani)}

/* the two steps */
.fsteps{list-style:none;display:flex;gap:8px;margin:0 0 18px;padding:0;font-size:.92rem;font-weight:600;color:var(--muted)}
.fsteps li{flex:1;display:flex;align-items:center;gap:8px;padding:0 0 10px;position:relative}
.fsteps li::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px;background:var(--line)}
.fsteps li::before{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px;background:var(--grad);z-index:1;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.fsteps b{flex:0 0 24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--line);color:var(--ink-2);font-size:.82rem;line-height:1;transition:background-color .3s,color .3s}
.fsteps li.is-on{color:var(--ink)}
.fsteps li.is-on::before,.fsteps li.is-done::before{transform:scaleX(1)}
.fsteps li.is-on b{background:var(--rani);color:#fff}
.fsteps li.is-done b{background:var(--leaf);color:#fff}
form:not(.is-steps) > .fsteps{display:none}
.buybox .step[hidden],.buybox [data-step-next][hidden],.step__sum[hidden]{display:none}
.buybox fieldset.step{margin:0;min-width:0}
form:not(.is-steps) fieldset.step{margin-top:6px}
.step__next{margin-top:4px}
.step__sum{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:10px 6px 10px 14px;border-radius:12px;background:var(--surface-2);font-size:.92rem;line-height:1.4;color:var(--ink-2)}
.step__sum span{flex:1;min-width:0}
.step__edit{flex:0 0 auto;min-height:44px;padding:0 10px;border:0;background:none;font:inherit;font-weight:700;color:var(--rani);cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* life events inside the form */
.ai-tune{margin:0 0 16px;border:2px solid transparent;border-radius:var(--r);background:linear-gradient(var(--surface),var(--surface)) padding-box,var(--grad) border-box}
.ai-tune summary{list-style:none;display:flex;align-items:flex-start;gap:10px;min-height:48px;padding:13px 14px;cursor:pointer;font-weight:700;font-size:1rem}
.ai-tune summary::-webkit-details-marker{display:none}
.ai-tune summary::before{content:"+";flex:0 0 24px;height:24px;margin-top:1px;border-radius:50%;display:grid;place-items:center;background:var(--grad);color:#fff;font-weight:700;line-height:1;transition:transform .3s var(--ease)}
.ai-tune[open] summary::before{content:"\2212";transform:rotate(180deg)}
.ai-tune__t{flex:1;min-width:0}
.ai-tune__t small{display:block;margin-top:3px;font-size:.88rem;font-weight:500;line-height:1.35;color:var(--ink-2)}
.ai-tune__o{flex:0 0 auto;margin-top:1px;padding:2px 9px;border-radius:999px;background:#FFF1D2;color:#92400E;font-size:.8rem;font-weight:700}
.ai-tune__o.is-on{background:#DCFCE7;color:#166534}
.ai-tune__in{padding:2px 14px 14px}
.ai-tune__row{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed var(--line)}
.ai-tune__row:last-child{border-bottom:0;padding-bottom:0}
.ai-tune__row > select{width:100%;min-width:0;min-height:50px;padding:10px 30px 10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;font-size:16px;color:var(--ink);
  -webkit-appearance:none;appearance:none;
  background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23645B7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 1.5 6 6l4.5-4.5'/%3E%3C/svg%3E") no-repeat right 12px center/11px}
.ai-tune__row .dparts select{background-color:var(--surface)}
.ai-tune__row select:focus{outline:none;border-color:var(--rani);box-shadow:0 0 0 4px rgba(214,36,93,.14)}
.ai-tune__add{min-height:44px;padding:0 2px;border:0;background:none;cursor:pointer;font:inherit;font-weight:700;font-size:.94rem;color:var(--rani);text-decoration:underline;text-underline-offset:3px}

/* tap-to-open rows */
.fold{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:0 18px;max-width:40rem}
.fold--wide{max-width:46rem;margin-inline:auto}
.fold > details{border-bottom:1px solid var(--line)}
.fold > details:last-child{border-bottom:0}
.fold summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 0;cursor:pointer;font-weight:700;font-size:1.04rem;line-height:1.3;color:var(--ink)}
.fold summary::-webkit-details-marker{display:none}
.fold summary::after{content:"";flex:0 0 10px;height:10px;margin:0 4px 4px auto;border-right:2px solid var(--rani);border-bottom:2px solid var(--rani);transform:rotate(45deg);transition:transform .3s var(--ease),margin .3s}
.fold details[open] > summary::after{transform:rotate(-135deg);margin-bottom:-4px}
.fold summary:focus-visible{outline:2px solid var(--rani);outline-offset:2px;border-radius:6px}
.fold__in{padding:0 0 18px;color:var(--ink-2);line-height:1.6}
.fold__in > p{margin:0 0 12px}
.fold__in > :last-child{margin-bottom:0}
.fold__in .ai-checks{margin:0;--acc:var(--leaf)}
.fold__in .contents{font-size:1rem}
.fold__in.rte h2{font-size:1.3rem;margin:1.1em 0 .4em}
.fold__in.rte h3{font-size:1.12rem;margin:1em 0 .3em}
.fold__steps{margin:0 0 12px;padding-left:1.3em;display:grid;gap:8px}
.fold__steps b{color:var(--ink)}
.fold .ai-shots{margin-bottom:6px}
@media (max-width:900px){.fold{max-width:none}.fold__in .contents{columns:1}}

/* sample pages: a strip that scrolls sideways */
.ai-shots{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 14px;margin:0 -4px;scrollbar-width:thin}
.ai-shot{flex:0 0 min(74%,280px);scroll-snap-align:start;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--shadow);cursor:zoom-in;padding:0;text-align:left;font:inherit;color:inherit}
.ai-shot img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top}
.ai-shot figcaption,.ai-shot span{display:block;padding:10px 12px;font-size:.9rem;font-weight:600;color:var(--ink-2);border-top:1px solid var(--line-2)}

.pr-faq{padding-block:clamp(32px,5vw,56px)}
.pr-faq__h,.pr-others__h{font-size:clamp(1.6rem,5.4vw,2rem);margin:0 0 16px;text-align:center}
.pr-others{padding-block:clamp(28px,4vw,48px)}
/* the other reports: round pictures in a row that slides sideways on a phone */
.pr-others__l{list-style:none;margin:0 calc(var(--gutter) * -1);padding:4px var(--gutter) 10px;display:grid;grid-auto-flow:column;grid-auto-columns:128px;gap:10px;
  overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);-webkit-overflow-scrolling:touch;scrollbar-width:none}
.pr-others__l::-webkit-scrollbar{display:none}
.pr-others__l li{scroll-snap-align:start;display:flex}
.pr-others__l a{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:14px 8px 12px;border-radius:18px;
  border:1px solid color-mix(in srgb,var(--rani) 14%,var(--line));background:var(--surface);color:var(--ink);text-decoration:none;
  box-shadow:0 10px 22px -18px rgba(150,30,80,.5);transition:transform .25s var(--ease),border-color .2s}
.pr-others__pic{width:64px;height:64px;border-radius:50%;overflow:hidden;display:grid;place-items:center;box-shadow:0 0 0 3px var(--surface),0 0 0 4px color-mix(in srgb,var(--gold) 45%,transparent)}
.pr-others__pic img{width:100%;height:100%;object-fit:cover}
.pr-others__l b{font-size:.88rem;font-weight:700;line-height:1.22;text-wrap:balance}
.pr-others__price{margin-top:auto;font-weight:800;color:var(--rani);font-size:.95rem}
.pr-others__l a:hover{border-color:var(--rani);transform:translateY(-2px)}
.pr-others__l a:focus-visible{outline:3px solid var(--rani);outline-offset:2px}
@media (min-width:900px){.pr-others__l{margin:0;padding:4px 0;grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));overflow:visible}}
.inside{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(24px,5vw,64px)}
.inside h2{font-size:clamp(1.8rem,3vw,2.4rem)}
.inside__side p{color:var(--muted);margin-top:12px}
@media (min-width:761px){.inside{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}

/* ---------- report language: the first choice in the order form ---------- */
.langpick{border:0;margin:0 0 18px;padding:0;min-width:0;border-radius:var(--r);transition:box-shadow .4s var(--ease)}
.langpick__h{padding:0;margin:0 0 10px;font-weight:700;font-size:1rem;line-height:1.3;color:var(--ink)}
.langpick__h span[lang="hi"]{display:block;margin-top:1px;font-family:var(--f-deva);font-weight:600;font-size:.9rem;color:var(--muted)}
html.ai-hi .langpick__en{display:none}
html.ai-hi .langpick__h span[lang="hi"]{margin:0;font-size:1rem;font-weight:700;color:var(--ink)}
.langpick__opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.langpick__opt{position:relative;display:block;cursor:pointer;min-width:0}
.langpick__opt input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.langpick__card{display:flex;align-items:center;gap:10px;min-height:66px;padding:10px 12px;border-radius:var(--r-sm);border:1.5px solid var(--line);background:var(--surface-2);
  transition:border-color .25s,background-color .25s,box-shadow .25s,transform .2s var(--ease)}
.langpick__glyph{flex:0 0 38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--surface);color:var(--muted);
  font-family:var(--f-disp);font-size:1.15rem;line-height:1;border:1px solid var(--line);transition:background-color .25s,color .25s,border-color .25s}
.langpick__glyph[lang="hi"]{font-family:var(--f-deva);font-weight:700;font-size:1.25rem}
.langpick__txt{min-width:0;line-height:1.2}
.langpick__txt b{display:block;font-size:1.06rem;color:var(--ink)}
.langpick__txt small{display:block;margin-top:2px;font-size:.8rem;color:var(--muted)}
.langpick__opt input:checked + .langpick__card{border-color:transparent;background:linear-gradient(var(--surface),var(--surface)) padding-box,var(--grad) border-box;
  box-shadow:0 10px 22px -14px rgba(200,23,93,.55)}
.langpick__opt input:checked + .langpick__card .langpick__glyph{background:var(--grad);color:#fff;border-color:transparent}
.langpick__opt input:focus-visible + .langpick__card{outline:3px solid var(--saffron);outline-offset:2px}
.langpick__opt:active .langpick__card{transform:scale(.98)}
.langpick.is-flash{box-shadow:0 0 0 4px rgba(214,36,93,.25)}
@media (max-width:400px){.langpick__glyph{flex-basis:32px;height:32px;font-size:1rem}.langpick__card{gap:8px;padding:10px}}
@media (max-width:340px){.langpick__glyph{display:none}}
.pr-facts__lang{padding:0!important;border-color:color-mix(in srgb,var(--rani) 35%,var(--line))!important}
.pr-facts__lang a{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 11px 4px 9px;color:var(--rani);text-decoration:none;font-weight:700}
.pr-facts__lang a::after{content:"";position:absolute;inset:-6px -2px}
.pr-facts__lang span{font-family:var(--f-deva)}
#buy.is-hi .field label,#buy.is-hi .field__l,#buy.is-hi .fsteps,#buy.is-hi .ai-tune summary,#buy.is-hi .field__hint{font-family:var(--f-deva)}

/* the free Kundli and the tools: the engine's language row, made the first thing to choose */
body .jk-root .langrow{justify-content:space-between;gap:10px;margin:0 0 16px;padding:10px 10px 10px 14px;border-radius:var(--r-sm);
  background:var(--surface-2);border:1px solid var(--line)}
body .jk-root .langrow .modelab{font-size:14px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--ink)}
body .jk-root .langrow .langsw{display:inline-flex;gap:3px;padding:3px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
body .jk-root .langrow .langsw .btn{min-height:40px;padding:6px 16px;border:0;border-radius:999px;background:transparent;color:var(--muted);
  font-size:15px;font-weight:700;letter-spacing:0;text-transform:none;box-shadow:none}
body .jk-root .langrow .langsw .btn[lang="hi"]{font-family:var(--f-deva)}
body .jk-root .langrow .langsw .btn[aria-pressed="true"]{background:var(--grad);color:#fff}

/* errors shown at the field they belong to, not in a passing browser bubble */
.field.is-invalid input,.field.is-invalid select,.field.is-invalid .dparts select{border-color:#B91C1C;background-color:#FEF2F2;box-shadow:0 0 0 3px rgba(185,28,28,.12)}
.field__err{display:flex;align-items:flex-start;gap:6px;margin:6px 0 0;font-size:.9rem;font-weight:600;line-height:1.35;color:#B91C1C}
.field__err::before{content:"!";flex:0 0 18px;height:18px;margin-top:1px;border-radius:50%;display:grid;place-items:center;background:#B91C1C;color:#fff;font-size:.72rem;font-weight:800}
html[data-theme="dark"] .field.is-invalid input,html[data-theme="dark"] .field.is-invalid select{border-color:#F87171;background-color:#3A1620}
html[data-theme="dark"] .field__err{color:#FCA5A5}
html[data-theme="dark"] .field__err::before{background:#F87171;color:#1F1830}
@media (prefers-reduced-motion:no-preference){.field__err{animation:ai-rise .3s var(--ease-out)}}

/* the calculator: thumb-sized controls and readable small print on every screen */
body .jk-root .f input,body .jk-root .f select{min-height:48px}
body .jk-root #samples button,body .jk-root .ex button{font-size:13px;min-height:44px}
body .jk-root .langrow .langsw .btn{min-height:44px}
html[data-theme="dark"] body .jk-root .modes button[aria-pressed="true"]{background:#D6245D;border-color:#D6245D;color:#fff}
body .jk-root .row2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
body .jk-root .row2 > .f,body .jk-root .f input,body .jk-root .f select{min-width:0;max-width:100%}
@media (max-width:360px){
  .frame{padding:2px;border-radius:var(--r)}
  .frame .jk-root #form{padding:14px 12px}
  body .jk-root .row2{gap:8px}
  .hk__formhead{padding-inline:12px}
}
.jk-root .modes button,.jk-root .modes a{min-width:44px;justify-content:center}
/* ---------- sticky bars and WhatsApp ---------- */
.ai-sticky{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;gap:12px;
  padding:9px 9px 9px 16px;border-radius:20px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line);
  -webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px);
  box-shadow:0 20px 44px -18px rgba(42,24,69,.55);transform:translateY(calc(100% + 30px));transition:transform .22s cubic-bezier(.4,0,1,1)}
.ai-sticky.is-on{transform:none;transition:transform .45s var(--ease-out)}
.ai-sticky__txt{flex:1;min-width:0;line-height:1.25}
.ai-sticky__txt b{display:block;font-size:.98rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-sticky__txt span{display:block;font-size:.84rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-sticky .ai-price b{font-size:1.4rem}
.ai-sticky .gbtn{min-height:46px;padding:.7em 1.15em;font-size:.98rem;box-shadow:0 10px 22px -12px rgba(200,23,93,.7)}
.ai-sticky--full .ai-sticky__txt b{white-space:normal;font-size:.95rem;line-height:1.2}
.ai-sticky--full .gbtn{white-space:nowrap}
@media (min-width:961px){.ai-sticky--mobile{display:none}}
.ai-wa{position:fixed;right:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:61;display:flex;align-items:center;gap:8px;
  background:#0E7A43;color:#fff;border-radius:999px;padding:12px;text-decoration:none;font-weight:700;font-size:.95rem;
  box-shadow:0 14px 28px -12px rgba(0,0,0,.5);transition:opacity .25s,transform .35s var(--ease)}
.ai-wa svg{width:26px;height:26px}
.ai-wa span{display:none}
body.has-sticky .ai-wa{transform:translateY(-76px)}
body.has-sticky .ai-wa.is-away{transform:translateY(-76px) scale(.8)}
html.menu-open .ai-wa,html.menu-open .ai-sticky{visibility:hidden}
@media (max-width:960px){.ai-wa.is-away{opacity:0;transform:scale(.8);pointer-events:none}}
@media (min-width:641px){.ai-wa span{display:inline}.ai-wa{padding:11px 16px 11px 12px}.ai-wa svg{width:24px;height:24px}}
.ga-toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,16px);opacity:0;z-index:90;
  max-width:min(92vw,520px);background:var(--deep);color:var(--on-deep);border-radius:var(--r-sm);
  padding:14px 18px;font-size:.98rem;line-height:1.45;box-shadow:0 20px 40px -18px rgba(0,0,0,.6);transition:opacity .3s,transform .3s var(--ease)}
.ga-toast.is-on{opacity:1;transform:translate(-50%,0)}
.ga-toast.is-bad{background:#9D174D}
body.has-sticky .ga-toast{bottom:calc(96px + env(safe-area-inset-bottom,0px))}

/* ---------- a sample page, enlarged ---------- */
dialog.ai-zoom{border:0;padding:0;background:transparent;max-width:min(96vw,760px);max-height:94vh;overflow:auto;border-radius:14px}
dialog.ai-zoom::backdrop{background:rgba(28,16,48,.78);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
dialog.ai-zoom img{width:100%;height:auto;border-radius:14px}
dialog.ai-zoom button{position:sticky;top:8px;float:right;margin:8px;background:#fff;color:var(--ink);border:0;border-radius:999px;width:44px;height:44px;font-size:24px;cursor:pointer;box-shadow:var(--shadow)}

/* ---------- leaving? one offer ---------- */
dialog.ai-exit{border:0;padding:0 0 14px;border-radius:var(--r-lg);max-width:min(94vw,470px);background:var(--surface);color:var(--ink);overflow:hidden;
  box-shadow:0 30px 80px -20px rgba(40,10,60,.5);text-align:left}
dialog.ai-exit::backdrop{background:rgba(28,16,48,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.ai-exit__top{padding:22px 26px 18px;color:var(--on-deep);background:var(--sky)}
.ai-exit__kicker{margin:0 0 6px;font-size:.9rem;font-weight:700;color:var(--gold)}
dialog.ai-exit h2{font-family:var(--f-disp);font-size:1.65rem;line-height:1.15;margin:0;padding-right:26px}
dialog.ai-exit .ai-exit__top h2{color:#fff}
.ai-exit__facts{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.ai-exit__facts li{padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-size:.84rem;font-weight:600;color:#fff}
.ai-exit__body{padding:18px 26px 0}
dialog.ai-exit .ai-exit__body p{margin:0 0 12px;color:var(--ink-2);font-size:1rem}
dialog.ai-exit .ai-checks{margin:0 0 14px}
.ai-exit__price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin:0 0 14px;padding:12px 14px;border-radius:var(--r-sm);background:var(--surface-2)}
.ai-exit__price b{font-family:var(--f-disp);font-weight:400;font-size:1.9rem;line-height:1;color:var(--ink)}
.ai-exit__price s{color:var(--muted)}
.ai-exit__price span{flex-basis:100%;font-size:.88rem;color:var(--muted)}
.ai-exit__acts{display:grid;gap:10px}
.ai-exit__acts .gbtn{width:100%;justify-content:center;white-space:normal}
.ai-exit__close{position:absolute;top:8px;right:10px;border:0;background:none;font-size:1.8rem;line-height:1;color:#fff;opacity:.85;cursor:pointer;padding:8px;z-index:1}
.ai-exit__no{display:block;margin:8px auto 0;border:0;background:none;color:var(--muted);font:inherit;font-size:.92rem;cursor:pointer;padding:10px;text-decoration:underline}
dialog.ai-exit--plain .ai-exit__top{background:none;color:var(--ink);padding-bottom:0}
dialog.ai-exit--plain .ai-exit__top h2{color:var(--ink)}
dialog.ai-exit--plain .ai-exit__close{color:var(--muted)}
@media (max-width:640px){
  dialog.ai-exit{margin:auto 0 0;max-width:100vw;width:100%;border-radius:var(--r-lg) var(--r-lg) 0 0;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
}

/* ---------- language: held back for a moment while Hindi goes in ---------- */
html.ai-hi-wait body{opacity:0;animation:aiHiShow .01s linear 1.6s forwards}
html.js body{transition:opacity .18s ease-out}
@keyframes aiHiShow{to{opacity:1}}

/* ---------- language: the first-visit question ---------- */
.ai-lang{position:fixed;inset:auto 0 0 0;width:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--on-deep);overflow:visible}
.ai-lang::backdrop{background:rgba(18,8,36,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.ai-lang__in{position:relative;overflow:hidden;isolation:isolate;padding:26px 20px calc(22px + env(safe-area-inset-bottom,0px));border-radius:26px 26px 0 0;
  background:var(--sky);box-shadow:0 -20px 60px -20px rgba(0,0,0,.5);text-align:center}
.ai-lang__in::before{content:"";position:absolute;top:9px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:4px;background:rgba(255,255,255,.22)}
.ai-lang__sky{position:absolute;inset:0;z-index:-1;opacity:.7;pointer-events:none;
  background-image:radial-gradient(1.2px 1.2px at 12% 22%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 78% 18%,#FDE68A 50%,transparent 51%),
    radial-gradient(1.3px 1.3px at 44% 70%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 90% 62%,#fff 50%,transparent 51%),
    radial-gradient(1px 1px at 22% 84%,#FDE68A 50%,transparent 51%),radial-gradient(260px 160px at 50% -40px,rgba(252,211,77,.16),transparent 70%);
  background-size:320px 260px,320px 260px,320px 260px,320px 260px,320px 260px,100% 100%;background-repeat:repeat,repeat,repeat,repeat,repeat,no-repeat}
.ai-lang__brand{margin:6px 0 0;font-family:var(--f-disp);font-size:1.15rem;line-height:1;color:var(--gold);letter-spacing:.01em}
.ai-lang__h{margin:12px 0 0;color:#fff;font-size:clamp(1.6rem,7vw,2rem);line-height:1.15}
.ai-lang__h span{display:block}
.ai-lang__h span[lang="hi"]{margin-top:4px;font-family:var(--f-deva);font-weight:600;font-size:.8em;color:#FDE68A}
.ai-lang__p{max-width:24rem;margin:10px auto 0;font-size:.95rem;line-height:1.5;color:var(--muted-deep)}
.ai-lang__p span,.ai-lang__foot span{display:block;font-family:var(--f-deva)}
.ai-lang__opts{display:grid;gap:10px;max-width:24rem;margin:20px auto 0}
.ai-lang__opt{display:grid;grid-template-columns:48px minmax(0,1fr) 22px;align-items:center;gap:14px;width:100%;min-height:72px;padding:12px 16px 12px 12px;
  border-radius:18px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#fff;font:inherit;text-align:left;cursor:pointer;
  transition:background-color .2s,border-color .2s,transform .2s var(--ease)}
.ai-lang__opt:hover{background:rgba(255,255,255,.12);border-color:rgba(252,211,77,.55)}
.ai-lang__opt:active{transform:scale(.985)}
.ai-lang__opt:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ai-lang__glyph{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(252,211,77,.14);border:1px solid rgba(252,211,77,.35);
  color:var(--gold);font-family:var(--f-disp);font-size:1.4rem;line-height:1}
.ai-lang__opt[lang="hi"] .ai-lang__glyph{font-family:var(--f-deva);font-weight:600;font-size:1.6rem}
.ai-lang__txt b{display:block;font-size:1.18rem;font-weight:700;line-height:1.2}
.ai-lang__opt[lang="hi"] .ai-lang__txt b{font-family:var(--f-deva);font-size:1.3rem}
.ai-lang__txt small{display:block;margin-top:2px;font-size:.88rem;color:var(--muted-deep)}
.ai-lang__opt[lang="hi"] small{font-family:var(--f-deva)}
.ai-lang__go{color:var(--gold)}
.ai-lang__go .ai-ico{width:20px;height:20px}
.ai-lang__opt.is-busy{pointer-events:none}
.ai-lang__opt.is-busy .ai-lang__go{border:2px solid rgba(252,211,77,.3);border-top-color:var(--gold);border-radius:50%;width:20px;height:20px;animation:aiSpin .8s linear infinite}
.ai-lang__opt.is-busy .ai-lang__go .ai-ico{display:none}
@keyframes aiSpin{to{transform:rotate(360deg)}}
.ai-lang__foot{margin:16px 0 0;font-size:.84rem;line-height:1.45;color:var(--muted-deep)}
/* in: rises from the bottom (a phone) or settles in the middle (a computer); out faster */
.ai-lang[open] .ai-lang__in{animation:aiSheetIn .45s cubic-bezier(.2,.8,.2,1) both}
.ai-lang[open]::backdrop{animation:aiFade .35s ease-out both}
.ai-lang.is-closing .ai-lang__in{animation:aiSheetOut .22s ease-in both}
.ai-lang.is-closing::backdrop{animation:aiFade .22s ease-in reverse both}
@keyframes aiSheetIn{from{transform:translateY(100%)}}
@keyframes aiSheetOut{to{transform:translateY(100%)}}
@keyframes aiFade{from{opacity:0}}
@media (min-width:700px){
  .ai-lang{inset:0;margin:auto;width:min(460px,calc(100% - 48px));height:fit-content}
  .ai-lang__in{border-radius:26px;padding:34px 30px 26px;box-shadow:0 40px 90px -30px rgba(0,0,0,.6)}
  .ai-lang__in::before{display:none}
  @keyframes aiSheetIn{from{opacity:0;transform:translateY(16px) scale(.97)}}
  @keyframes aiSheetOut{to{opacity:0;transform:translateY(8px) scale(.98)}}
}
@media (prefers-reduced-motion:reduce){
  .ai-lang[open] .ai-lang__in,.ai-lang[open]::backdrop,.ai-lang.is-closing .ai-lang__in,.ai-lang.is-closing::backdrop{animation:none}
}
html[data-theme="dark"] .announce__lang{background:#2A1845;color:#FDE68A;border-color:rgba(253,230,138,.45)}
.ai-lang__in:focus{outline:none}
.ai-lang:not([open]){display:none}
.ai-lang.is-fallback{z-index:1000;box-shadow:0 0 0 100vmax rgba(18,8,36,.6)}
.ai-lang__opt.is-current{border-color:rgba(252,211,77,.7);background:rgba(252,211,77,.12)}
.ai-lang__opt.is-current .ai-lang__go{color:#FDE68A}

/* ---------- the leaving offer: two choices ---------- */
dialog.ai-offer{overflow:hidden}
.ai-offer__top{position:relative;padding:22px 24px 18px;background:var(--sky);color:#fff;overflow:hidden}
.ai-offer__top::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;
  background:radial-gradient(circle,rgba(252,211,77,.28),transparent 65%);pointer-events:none}
.ai-offer__kicker{margin:0 0 6px;font-size:.88rem;font-weight:700;color:var(--gold)}
dialog.ai-offer h2{margin:0;padding-right:28px;font-family:var(--f-disp);font-size:1.6rem;line-height:1.15;color:#fff}
.ai-offer__body{padding:16px 18px 0}
.ai-offer__card{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 16px 14px;border-radius:18px;text-decoration:none;color:var(--ink);
  border:1.5px solid var(--line);background:var(--surface);transition:transform .2s var(--ease),border-color .2s}
.ai-offer__card:active{transform:scale(.985)}
.ai-offer__card:focus-visible{outline:3px solid var(--rani);outline-offset:2px}
.ai-offer__card--main{border-color:color-mix(in srgb,var(--rani) 55%,transparent);background:linear-gradient(160deg,#FFF6E6 0%,#FFEFF3 100%);
  box-shadow:0 14px 30px -20px rgba(200,23,93,.6)}
.ai-offer__tag{position:absolute;top:-11px;left:14px;padding:3px 10px;border-radius:999px;background:var(--grad);color:#fff;font-size:.74rem;font-weight:800;letter-spacing:.02em}
.ai-offer__row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.ai-offer__name{font-size:1.12rem;font-weight:800;line-height:1.2}
.ai-offer__price{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap}
.ai-offer__price b{font-family:var(--f-disp);font-weight:400;font-size:1.6rem;line-height:1;color:var(--rani)}
.ai-offer__price s{font-size:.92rem;color:var(--muted)}
.ai-offer__line{font-size:.92rem;line-height:1.4;color:var(--ink-2)}
.ai-offer__code{display:inline-block;padding:1px 8px;border:1.5px dashed var(--rani);border-radius:8px;background:#fff;color:var(--rani);
  font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:800;font-size:.9rem;letter-spacing:.06em}
.ai-offer__go{width:100%;justify-content:center;margin-top:6px;min-height:48px}
.ai-offer__copy{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:44px;margin:6px 0 0;border:0;background:none;
  color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}
.ai-offer__copy span{font-weight:800;color:var(--rani);letter-spacing:.05em}
.ai-offer__copy.is-done{color:var(--leaf)}
.ai-offer__or{display:flex;align-items:center;gap:10px;margin:14px 0 12px;color:var(--muted);font-size:.84rem;font-weight:700}
.ai-offer__or::before,.ai-offer__or::after{content:"";flex:1;height:1px;background:var(--line)}
.ai-offer__card--two .ai-offer__price b{color:var(--ink)}
dialog.ai-offer .ai-exit__no{margin-top:8px;min-height:44px}
html[data-theme="dark"] .ai-offer__card--main{background:linear-gradient(160deg,#33240F 0%,#3A1828 100%)}
html[data-theme="dark"] .ai-offer__code{background:var(--surface)}
/* on the order form, after taking the offer */
.ai-coupon-note{margin:0 0 12px;padding:9px 12px;border-radius:12px;border:1.5px dashed color-mix(in srgb,var(--rani) 55%,transparent);
  background:#FFF1F4;color:var(--ink);font-size:.92rem;font-weight:600}
.ai-coupon-note span{color:var(--rani)}
.ai-coupon-note code{font-weight:800;color:var(--rani);letter-spacing:.05em}
html[data-theme="dark"] .ai-coupon-note{background:#3A1828}
.ai-offer__top:focus{outline:none}

/* ---------- a short message at the bottom of the screen ---------- */
.ai-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:1200;max-width:min(92vw,420px);padding:12px 18px;border-radius:14px;
  background:#2A1845;color:#fff;font-weight:700;font-size:.95rem;line-height:1.35;text-align:center;box-shadow:0 18px 40px -16px rgba(0,0,0,.55);
  transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:opacity .22s ease-in,transform .22s ease-in}
.ai-toast.is-on{opacity:1;transform:translate(-50%,0);transition:opacity .35s var(--ease-out),transform .35s var(--ease-out)}
.ai-offer__card.is-done .ai-offer__go{background:var(--leaf,#15803D);background-image:none}

/* ---------- after paying: check your inbox ---------- */
.ai-paid__in{padding:28px 24px 6px;text-align:center}
.ai-paid__in:focus{outline:none}
.ai-paid__ico{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 12px;border-radius:50%;color:#fff;background:var(--grad);box-shadow:0 12px 26px -12px rgba(200,23,93,.7)}
.ai-paid__ico svg{width:30px;height:30px}
dialog.ai-paid h2{padding:0;font-size:1.5rem;color:var(--ink)}
dialog.ai-paid p{margin:10px 0 0;color:var(--ink-2)}
.ai-paid__mail{font-size:.95rem}
.ai-paid__mail b{color:var(--ink);overflow-wrap:anywhere}
.ai-paid__tips{list-style:none;margin:14px 0 0;padding:12px 14px;border-radius:14px;background:var(--surface-2);text-align:left;font-size:.9rem;color:var(--ink-2)}
.ai-paid__tips li + li{margin-top:6px}
.ai-paid__ok{width:100%;justify-content:center;margin:16px 0 4px}
dialog.ai-paid .ai-exit__close{color:var(--muted)}
.ai-mailnote{display:flex;gap:12px;align-items:flex-start;margin:16px 0;padding:14px 16px;border-radius:16px;border:1.5px solid color-mix(in srgb,var(--rani) 30%,var(--line));background:var(--surface-2)}
.ai-mailnote p{margin:0;font-size:.95rem}
.ai-mailnote__ico{flex:0 0 40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--grad)}
.ai-mailnote__ico svg{width:20px;height:20px}
/* ---------- page heroes (free tools, tool pages, my reports, about, account) ---------- */
.page-hero{position:relative;overflow:hidden;background:var(--sky);color:var(--on-deep)}
.page-hero h1,.page-hero h2{color:#fff}
.page-hero .gwrap{position:relative;padding-block:22px 22px}
.page-hero h1{font-size:clamp(1.95rem,8vw,3.4rem);line-height:1.06}
.page-hero .pr-h1-sub{color:var(--muted-deep)}
.page-hero .lede{color:#E4DCF5;font-size:1rem;max-width:40rem;margin-top:8px}
.page-hero a{color:#fff}
.page-hero .lede a.link{color:var(--gold)}
.page-hero .mark{background:rgba(255,255,255,.1);color:var(--gold)}
.page-hero .ai-invocation{color:var(--gold)}
.page-hero::after{content:"";position:absolute;right:-60px;top:-40px;width:240px;height:240px;pointer-events:none;opacity:.22;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23FCD34D' stroke-width='1.6'%3E%3Crect x='10' y='10' width='180' height='180' rx='10'/%3E%3Cpath d='M14 14 186 186M186 14 14 186M100 10 190 100 100 190 10 100Z'/%3E%3C/svg%3E") center/contain no-repeat}
@media (min-width:641px){
  .page-hero .gwrap{padding-block:clamp(32px,6vw,72px) clamp(28px,4vw,48px)}
  .page-hero .lede{font-size:1.12rem;margin-top:12px}
  .page-hero::after{width:340px;height:340px;right:-40px;top:-60px}
}
.chips{display:none;flex-wrap:wrap;gap:8px;margin-top:22px}
@media (min-width:641px){.chips{display:flex}}
.chip{display:inline-flex;align-items:center;min-height:44px;font-weight:700;font-size:.95rem;padding:8px 16px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#fff;text-decoration:none;background:rgba(255,255,255,.06);cursor:pointer;transition:background-color .2s,border-color .2s}
.chip span{font-family:var(--f-deva);color:var(--gold);margin-right:6px;font-weight:500}
.chip[aria-current="true"],.chip:hover{border-color:transparent;color:#fff;background:var(--grad)}
.chip[aria-current="true"] span,.chip:hover span{color:#fff}
.ai-toolnav{display:flex;flex-wrap:nowrap;gap:8px;margin:16px calc(var(--gutter) * -1) 0;padding:2px var(--gutter) 6px;overflow-x:auto;scrollbar-width:none}
.ai-toolnav::-webkit-scrollbar{display:none}
.ai-toolnav a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:6px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);
  color:#fff;text-decoration:none;font-weight:600;font-size:.94rem}
.ai-toolnav a[aria-current="page"]{background:var(--grad);border-color:transparent}
@media (min-width:641px){.ai-toolnav{flex-wrap:wrap;overflow:visible;margin-inline:0;padding-inline:0}}
.ai-tool-hero .lede{max-width:44rem}
@media (max-width:640px){.ai-tool-hero .lede{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}
.overlap{margin-top:-8px}
.tl-more{padding-block:clamp(24px,4vw,48px)}
.tl-rel{padding-block:clamp(28px,4vw,48px)}
.tl-rel .ai-sols{max-width:40rem;margin-inline:auto}

/* ---------- about ---------- */
.ab{padding-block:clamp(28px,5vw,56px)}
.ab__in{max-width:46rem}
.ab__in > h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 12px}
.ab__in > .rte{color:var(--ink-2)}
.ab__img{width:112px;height:112px;border-radius:50%;overflow:hidden;margin:0 0 18px;box-shadow:var(--shadow)}
.ab__img img{width:100%;height:100%;object-fit:cover}
.ab__fold{margin:28px 0 0}
.ab__actions{display:flex;flex-wrap:wrap;gap:10px}
.ab__actions .gbtn{overflow-wrap:anywhere;white-space:normal}
.about__sig{font-family:var(--f-disp);font-size:1.4rem;margin-top:18px;color:var(--rani)}
.about__sig small{display:block;font-family:var(--f-body);font-size:.9rem;color:var(--muted);margin-top:2px}
.ai-about-cols{display:grid;grid-template-columns:1fr;gap:clamp(24px,4vw,56px)}
.ai-about-cols h2{font-size:clamp(1.5rem,2.4vw,2rem);margin:6px 0 16px}
@media (min-width:861px){.ai-about-cols{grid-template-columns:1fr 1fr}}
.ai-about-list li{margin-bottom:10px}
.ai-contactcard{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--grad-soft);border-radius:var(--r-lg);padding:clamp(22px,4vw,40px)}
.ai-contactcard h2{font-size:clamp(1.5rem,2.4vw,2rem)}
.ai-contactcard p{margin:6px 0 0;color:var(--ink-2)}
.ai-contactcard__actions{display:flex;gap:10px;flex-wrap:wrap}

/* ---------- my reports ---------- */
.lib{display:grid;gap:14px}
.lib__item{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px 18px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.lib__item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--grad)}
.lib__ico{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--petal);color:var(--rani);margin-right:8px;vertical-align:middle}
.lib__ico .ai-ico{width:18px;height:18px}
.lib__item h3{font-size:1.4rem;margin-top:6px}
.lib__item .deva{color:var(--rani);font-size:.95rem;vertical-align:middle}
.lib__for{color:var(--ink-2);font-size:.98rem;margin:6px 0 0}
.lib__order{color:var(--muted);font-size:.88rem;margin:4px 0 0}
.lib__item--pending{opacity:.85}
.lib__item--pending::before{background:var(--line)}
.lib__actions{display:flex;gap:4px 16px;flex-wrap:wrap;align-items:center}
@media (min-width:701px){.lib__item{grid-template-columns:minmax(0,1fr) auto;padding:20px 24px}}
.empty{text-align:center;padding:40px 20px;border:2px dashed var(--line);border-radius:var(--r);background:var(--surface)}
.empty h2{font-size:1.8rem;margin-bottom:10px}
.empty p{color:var(--muted)}

/* ---------- contact ---------- */
.ai-contact{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:start}
.ai-contact__ways{display:grid;gap:12px}
.ai-contact__ways a{display:flex;gap:12px;align-items:center;min-height:56px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px;text-decoration:none;box-shadow:var(--shadow);font-weight:600}
.ai-contact__ways a:hover{border-color:var(--rani)}
.ai-contact__ways small{display:block;font-weight:400;color:var(--muted)}
.ai-contact__biz{margin-top:8px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-sm)}
.ai-contact__biz h2{font-size:1.1rem;margin:0 0 8px}
.ai-contact__pol{margin:10px 0 0;font-size:.88rem}
@media (min-width:801px){.ai-contact{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}}

/* ---------- generic content, cart, account ---------- */
.rte{line-height:1.7}
.rte h2{font-size:1.8rem;margin:1.4em 0 .5em}
.rte h3{font-size:1.4rem;margin:1.2em 0 .4em}
.rte a{color:var(--rani)}
.rte img{margin:1.2em 0;border-radius:var(--r-sm)}
.rte ul,.rte ol{padding-left:1.3em}
.narrow{max-width:46rem;margin:0 auto}
.page-title{font-size:clamp(2rem,7vw,3rem);margin-bottom:22px}
.cartv2{max-width:44rem}
.cart-items{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.cart-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px 18px 8px;box-shadow:var(--shadow)}
.cart-item__top{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.cart-item__t{font-family:var(--f-disp);font-size:1.35rem;line-height:1.2;color:var(--ink);text-decoration:none}
.cart-item__p{font-family:var(--f-disp);font-weight:400;font-size:1.35rem;white-space:nowrap}
.cart-item__v{margin:2px 0 0;font-size:.92rem;color:var(--muted)}
.cart-item__d{margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:6px;font-size:.95rem}
.cart-item__d div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:10px}
.cart-item__d dt{color:var(--muted)}
.cart-item__d dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.cart-item__foot{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:6px;font-size:.92rem;color:var(--muted)}
.cart-item__q{margin-right:auto}
.cart-item__q a{color:var(--rani);font-weight:600;padding:12px 0}
.cart-item__x{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-weight:600}
.cart-item__x:hover{color:var(--rani)}
.cart-foot{display:flex;justify-content:flex-end;margin-top:18px}
.cart-foot__box{width:100%;display:grid;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
.cart-foot__n{font-size:.88rem;color:var(--muted);margin:0;text-align:center}
.cart-total{display:flex;justify-content:space-between;font-family:var(--f-disp);font-size:1.6rem}
@media (min-width:641px){.cart-foot__box{width:min(100%,400px)}.cart-item__d div{grid-template-columns:8.2rem minmax(0,1fr)}}
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{text-align:left;font-weight:600;font-size:.88rem;color:var(--muted);border-bottom:1px solid var(--line);padding:10px 8px}
.cart-table td{border-bottom:1px solid var(--line);padding:18px 8px;vertical-align:top}
.form-card{max-width:30rem;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,4vw,38px);box-shadow:var(--shadow-lg)}
.form-card h1{font-size:2rem;margin-bottom:14px}
.errors{background:#FDE7EE;color:#9D174D;padding:12px 14px;border-radius:12px;margin-bottom:14px;font-size:.95rem}
.errors ul{margin:0;padding-left:1.2em}
.success{background:#DCFCE7;color:#14532D;padding:12px 14px;border-radius:12px;margin-bottom:14px}
.table{width:100%;border-collapse:collapse;font-size:.98rem}
.table th,.table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}
.pagination{display:flex;gap:10px;justify-content:center;margin-top:34px}
.pagination a,.pagination span{display:inline-flex;align-items:center;min-height:44px;padding:6px 14px;border:1px solid var(--line);border-radius:12px;text-decoration:none;background:var(--surface)}
.search-form{display:flex;gap:10px;margin-bottom:30px}
.search-form input{flex:1;font:inherit;font-size:16px;min-height:48px;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
.nf-links{display:grid;gap:10px;margin-top:22px}
@media (min-width:641px){.nf-links{display:flex;flex-wrap:wrap;justify-content:center}}
.ai-apps{padding-block:24px}
/* ===== older sections, still available in the theme editor ===== */
.hk__chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 12px 5px 6px;
  font-size:.88rem;font-weight:600;color:var(--ink-2);box-shadow:var(--shadow);margin-bottom:16px}
.hk__chip b{background:var(--leaf);color:#fff;border-radius:999px;padding:1px 9px;font-size:.78rem;letter-spacing:.04em}
.hk h1{font-size:clamp(2.2rem,5.2vw,3.9rem);line-height:1.05}
.hk .lede{font-size:clamp(1.05rem,1.6vw,1.22rem);color:var(--ink-2);margin:16px 0 0;max-width:34rem}
.hk__ticks{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.hk__ticks li{display:flex;gap:10px;align-items:flex-start;font-size:1.02rem;color:var(--ink-2)}
.hk__ticks li::before{content:"";flex:0 0 22px;height:22px;border-radius:50%;margin-top:2px;
  background:var(--leaf) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.hk__next{margin-top:26px;padding:16px 18px;border-radius:var(--r-sm);background:rgba(255,255,255,.7);border:1px solid var(--line);font-size:1rem;color:var(--ink-2)}
.hk__next b{color:var(--ink)}
.hk__next a{white-space:nowrap}
.hk__lede-m{display:none}
/* the complete chart, as the wide card */
.ai-flag{margin-top:clamp(18px,2.5vw,26px);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-lg)}
.ai-flag__body{padding:clamp(24px,4vw,44px)}
.ai-flag__body h3{font-size:clamp(1.7rem,3vw,2.4rem);margin:6px 0 10px}
.ai-flag__body p{color:var(--muted-deep);max-width:36rem}
.ai-flag .ai-checks li{color:var(--on-deep)}
.ai-flag .ai-checks li::before{background-color:rgba(255,255,255,.9)}
.ai-flag__buy{padding:clamp(24px,4vw,44px);display:flex;flex-direction:column;justify-content:center;gap:12px;background:rgba(255,255,255,.06);border-left:1px solid var(--line-deep)}
.ai-flag .ai-price b{color:#fff;font-size:2.6rem}
.ai-flag .ai-price s{color:var(--muted-deep)}
.ai-flag__buy small{color:var(--muted-deep);font-size:.9rem}
@media (max-width:860px){.ai-flag{grid-template-columns:1fr}.ai-flag__buy{border-left:0;border-top:1px solid var(--line-deep)}}
.ai-sols-note{text-align:center;color:var(--muted);margin:26px auto 0;max-width:40rem;font-size:.98rem}

/* ---------- sample report gallery ---------- */
.ai-sample{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(24px,4vw,56px);align-items:center}
.ai-sample__copy h2{font-size:clamp(1.9rem,3.4vw,2.7rem)}
.ai-sample__copy p{color:var(--ink-2);margin-top:12px}
.ai-shots{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 16px;margin:0 -4px;scrollbar-width:thin}
.ai-shot{flex:0 0 min(78%,300px);scroll-snap-align:start;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--shadow);cursor:zoom-in;padding:0;text-align:left;font:inherit;color:inherit}
.ai-shot img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top}
.ai-shot figcaption,.ai-shot span{display:block;padding:10px 12px;font-size:.9rem;font-weight:600;color:var(--ink-2);border-top:1px solid var(--line-2)}
.ai-sample__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.ai-sample__note{font-size:.85rem;color:var(--muted);margin-top:10px}
@media (max-width:900px){.ai-sample{grid-template-columns:minmax(0,1fr)}}
/* ---------- legacy hero (kept for other templates) ---------- */
.ghero{overflow:hidden}
.ghero .gwrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,5vw,72px);align-items:center;
  padding-block:clamp(40px,7vw,96px)}
.ghero__shloka{font-family:var(--f-deva);color:#FCD34D;font-size:1.25rem;margin:0}
.ghero__gloss{font-style:italic;color:var(--muted-deep);font-size:.95rem;margin:4px 0 22px}
.ghero h1{font-size:clamp(2.3rem,5vw,4rem)}
.ghero .lede{font-size:clamp(1.05rem,1.5vw,1.2rem);color:var(--muted-deep);max-width:34rem;margin:20px 0 30px}
.ghero__cta{display:flex;gap:14px;flex-wrap:wrap}
.ghero__facts{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px 36px;margin:40px 0 0;padding-top:22px;border-top:1px solid var(--line-deep)}
.ghero__facts div{display:flex;flex-direction:column}
.ghero__facts dt{font-family:var(--f-disp);font-size:1.5rem;color:#FCD34D;order:1}
.ghero__facts dd{margin:0;font-size:.88rem;color:var(--muted-deep);order:2}
.ghero__chart{position:relative;max-width:520px;justify-self:center;width:100%}
@media (max-width:900px){
  .ghero .gwrap{grid-template-columns:1fr}
  .ghero__chart{display:none}
  .ghero__facts{grid-template-columns:repeat(3,1fr);gap:8px 18px}
}
.kundali{width:100%;height:auto;overflow:visible}
.kundali .k-halo{fill:rgba(252,211,77,.07)}
.kundali .k-line{fill:none;stroke:#FCD34D;stroke-width:1.3;stroke-dasharray:1;stroke-dashoffset:1;animation:k-draw 1.6s cubic-bezier(.6,.05,.3,1) forwards}
.kundali .k-line--ring{stroke-width:.8;stroke-opacity:.6;animation-duration:2.2s}
.kundali .k-line--d1{animation-delay:.35s}.kundali .k-line--d2{animation-delay:.5s}.kundali .k-line--dia{animation-delay:.7s}
.kundali .k-ticks{stroke:#FCD34D;stroke-opacity:.45;stroke-width:.8;fill:none}
.kundali .k-rashi{fill:#FCD34D;fill-opacity:.8;font-family:var(--f-deva);font-size:13px}
.kundali .k-num{fill:var(--muted-deep);font-family:var(--f-body);font-size:11px;text-anchor:middle;opacity:0;animation:k-fade .6s ease 1.6s forwards}
.kundali .k-pl{fill:#fff;font-family:var(--f-deva);font-size:17px;text-anchor:middle;opacity:0;animation:k-fade .7s ease forwards}
@keyframes k-draw{to{stroke-dashoffset:0}}
@keyframes k-fade{to{opacity:1}}
@media (prefers-reduced-motion:reduce){.kundali .k-line{animation:none;stroke-dashoffset:0}.kundali .k-num,.kundali .k-pl{animation:none;opacity:1}}

/* ---------- live chart section (legacy, still available) ---------- */
.live__grid{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.live__side{position:sticky;top:calc(var(--header-h) + 24px)}
.live__side h2{font-size:clamp(1.9rem,3vw,2.5rem)}
.live__side p{color:var(--muted);margin-top:12px}
.live__points{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}
.live__points li{padding:12px 14px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);font-size:.98rem}
.live__points b{font-family:var(--f-disp);font-weight:400;color:var(--ink);display:block;font-size:1.1rem}
@media (max-width:900px){.live__grid{grid-template-columns:1fr}.live__side{position:static}}

/* ---------- free tools ---------- */
.tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tool{padding:22px;border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid var(--line-deep);display:flex;flex-direction:column;text-decoration:none;transition:background-color .2s,border-color .2s}
.tool:hover{background:rgba(255,255,255,.1);border-color:rgba(252,211,77,.5)}
.tool__deva{font-family:var(--f-deva);color:#FCD34D;font-size:1.3rem;line-height:1.2}
.tool h3{font-size:1.4rem;margin:6px 0 8px;color:#fff}
.tool p{color:var(--muted-deep);font-size:.98rem;margin:0 0 16px;flex:1}
.tool .link{align-self:flex-start}
@media (max-width:900px){.tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.tools{grid-template-columns:1fr}}

/* ---------- steps (how it works) ---------- */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,3vw,28px);counter-reset:s}
.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:var(--shadow)}
.steps li::before{content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--grad);color:#fff;
  font-family:var(--f-disp);font-size:1.4rem;margin-bottom:14px}
.steps h3{font-size:1.4rem;margin-bottom:6px}
.steps p{color:var(--ink-2);font-size:1rem;margin:0}
@media (max-width:760px){.steps{grid-template-columns:1fr}}

/* ---------- about ---------- */
.about{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(28px,5vw,72px);align-items:center}
.about__img{aspect-ratio:4/5;border-radius:24px;overflow:hidden;background:var(--grad-soft);display:grid;place-items:center;position:relative;box-shadow:var(--shadow-lg)}
.about__img img{width:100%;height:100%;object-fit:cover}
.about__mono{font-family:var(--f-deva);font-size:9rem;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.about h2{font-size:clamp(1.9rem,3.4vw,2.7rem)}
.about .rte{margin-top:16px;color:var(--ink-2)}
@media (max-width:760px){.about{grid-template-columns:1fr}.about__img{max-width:300px}}

/* ---------- reviews (owner-entered, real only) ---------- */
.ai-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ai-review{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}
.ai-review .stars-row{color:#D97706;letter-spacing:2px;font-size:1.05rem}
.ai-review blockquote{margin:0;font-size:1.02rem;color:var(--ink)}
.ai-review figcaption{margin-top:auto;font-size:.9rem;color:var(--muted)}
.ai-review figcaption b{color:var(--ink)}
@media (max-width:900px){.ai-reviews{grid-template-columns:1fr}}

/* ---------- cta band ---------- */
.band{text-align:center}
.band h2{font-size:clamp(1.9rem,4vw,3rem);max-width:40rem;margin:0 auto}
.band p{color:var(--muted-deep);margin:14px auto 26px;max-width:34rem;font-size:1.08rem}

/* ================= dharmic touches ================= */
.hk__bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.hk__grid{position:relative;z-index:1}
.hk__chakra{position:absolute;width:min(620px,62vw);aspect-ratio:1;left:-150px;top:30px;color:#B45309;opacity:.12;animation:ai-spin 240s linear infinite}
@media (max-width:760px){.hk__chakra{width:320px;left:auto;right:-120px;top:26px;opacity:.12}}
.hk.is-live .hk__bg,.hk.is-live .ai-invocation{display:none}
.ai-chakra{display:block;width:100%;height:100%}
.ai-chakra__t,.ai-chakra__om{font-family:var(--f-sacred)}
@keyframes ai-spin{to{transform:rotate(360deg)}}
.ai-diya{display:block;width:100%;height:100%;overflow:visible}
.ai-diya__flame{transform-box:view-box;transform-origin:60px 55px;animation:ai-flicker 2.6s ease-in-out infinite}
.ai-diya__glow{transform-box:view-box;transform-origin:60px 46px;animation:ai-glow 3.2s ease-in-out infinite}
@keyframes ai-flicker{0%,100%{transform:scale(1,1) skewX(0)}20%{transform:scale(.97,1.05) skewX(1.5deg)}45%{transform:scale(1.03,.96) skewX(-2deg)}70%{transform:scale(.98,1.06) skewX(1deg)}}
@keyframes ai-glow{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
@media (prefers-reduced-motion:reduce){.hk__chakra,.about__chakra .ai-chakra,.ai-diya__flame,.ai-diya__glow{animation:none!important}}
.band__diya{width:84px;height:84px;margin:0 auto 4px}

/* rooted in tradition */
.ai-dharma-sec{position:relative;background:linear-gradient(180deg,#FFF6E6 0%,#FFFCF6 100%);overflow:hidden}
.ai-dharma-sec__rangoli{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(circle at 0 0,rgba(245,158,11,.16) 0 140px,transparent 141px),
  radial-gradient(circle at 100% 100%,rgba(214,36,93,.09) 0 180px,transparent 181px)}
.ai-dharma-sec .gwrap{position:relative}
.ai-dharma-sec__diya{width:80px;height:80px;margin:0 auto 2px}
.ai-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}
.ai-pillar{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 20px 20px;box-shadow:var(--shadow);position:relative}
.ai-pillar::before{content:"";position:absolute;left:20px;right:20px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--grad)}
.ai-pillar svg{width:40px;height:40px;color:#B45309;margin-bottom:10px;display:block}
.ai-pillar h3{font-size:1.25rem;margin-bottom:6px}
.ai-pillar p{margin:0;color:var(--ink-2);font-size:.98rem;line-height:1.5}
@media (max-width:960px){.ai-pillars{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ai-pillars{grid-template-columns:1fr;gap:12px}.ai-pillar{padding:18px 18px 16px;display:grid;grid-template-columns:40px 1fr;column-gap:14px}.ai-pillar svg{grid-row:span 2;margin:2px 0 0}}
.ai-devata{margin-top:clamp(34px,5vw,56px);text-align:center}
.ai-devata__head h3{font-size:clamp(1.4rem,2.4vw,1.9rem)}
.ai-devata__head p{max-width:40rem;margin:8px auto 0;color:var(--ink-2)}
.ai-devata__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px;margin-top:26px}
.ai-devata__item{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px}
.ai-medal{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;position:relative;overflow:hidden;
  background:radial-gradient(circle at 50% 38%,#FFF9EC,#FDE3B8 72%);box-shadow:0 0 0 3px #fff,0 0 0 6px #E9B949,0 16px 30px -14px rgba(146,64,14,.55)}
.ai-medal img{width:100%;height:100%;object-fit:cover}
.ai-medal .ai-medal__om{position:absolute;top:18px;left:0;right:0;font-family:var(--f-sacred);color:#D97706;font-size:1.5rem;line-height:1}
.ai-medal .ai-medal__deva{font-family:var(--f-sacred);font-size:2.3rem;color:#9A3412;line-height:1.1;margin-top:14px}
.ai-medal::after{content:"";position:absolute;inset:9px;border-radius:50%;border:1px dashed rgba(180,83,9,.35);pointer-events:none}
.ai-devata__item figcaption{display:flex;flex-direction:column;gap:2px;line-height:1.35}
.ai-devata__item b{font-size:1.08rem}
.ai-devata__item figcaption span{color:var(--ink-2);font-size:.92rem}
.ai-devata__item em{font-style:normal;font-family:var(--f-sacred);color:#9A3412;font-size:1.05rem;margin-top:4px}
.ai-devata__item small{color:var(--muted);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
@media (max-width:640px){
  .ai-devata__row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:calc(var(--gutter) * -1);padding:6px var(--gutter) 12px}
  .ai-devata__item{flex:0 0 58%;scroll-snap-align:center}
  .ai-medal{width:128px;height:128px}
  .ai-medal .ai-medal__deva{font-size:2rem}
}
.ai-closing{text-align:center;font-family:var(--f-sacred);color:#B45309;font-size:1.3rem;margin:34px 0 0}

/* long read + aside (reports and tools) */
.ai-longread__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.ai-longread__text h2{font-size:clamp(1.5rem,2.4vw,2rem);margin:0 0 12px}
.ai-longread__text h2:not(:first-child){margin-top:30px}
.ai-longread__text table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.98rem;background:#fff;border-radius:12px;overflow:hidden}
.ai-longread__text th,.ai-longread__text td{border-bottom:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}
.ai-longread__text th{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#FFF6E6}
@media (max-width:860px){.ai-longread__grid{grid-template-columns:1fr}}
.ai-dharma-aside{position:sticky;top:calc(var(--header-h) + 18px);background:linear-gradient(180deg,#FFF6E6,#fff);border:1px solid #F3D9A4;border-radius:20px;padding:20px 20px 16px;text-align:center;box-shadow:var(--shadow)}
.ai-dharma-aside__diya{width:64px;height:64px;margin:0 auto}
.ai-dharma-aside__h{font-family:var(--f-disp);font-size:1.3rem;margin:4px 0 12px}
.ai-dharma-aside ul{list-style:none;margin:0;padding:0;text-align:left;display:grid;gap:12px}
.ai-dharma-aside li{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;line-height:1.4}
.ai-dharma-aside li svg{flex:0 0 26px;width:26px;height:26px;color:#B45309}
.ai-dharma-aside__foot{font-family:var(--f-sacred);color:#B45309;margin:14px 0 0}
@media (max-width:860px){.ai-dharma-aside{position:static}}

.about__chakra{width:86%;aspect-ratio:1;color:#B45309;opacity:.85}
.about__chakra .ai-chakra{animation:ai-spin 300s linear infinite}
.about__more{margin-top:14px}

/* ---------- hero: fine-tuning first, the full report as the action ---------- */
.hk--v2 .hk__grid{grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);align-items:start}
.hk--v2 .hk__head{align-self:start}
.hk--v2 h1{font-size:clamp(2.1rem,3.9vw,3rem);line-height:1.1}
.hk--v2 h1 .hl{display:block}
.hk--v2 .hk__head .lede{display:block;max-width:35rem;margin-top:14px}
.hk--v2 .hk__lede-m{display:none!important}
.hk__cta{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin-top:22px}
.hk__free{font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:color-mix(in srgb,var(--rani) 45%,transparent)}
.hk__free:hover{color:var(--rani)}
.hk__ctanote{margin:10px 0 0;font-size:.9rem;color:var(--muted)}
.hk--v2 .hk__more{margin-top:4px}
.hk--v2 .hk__ticks{margin-top:18px}
/* =====================================================================
   Dark theme: only the visitor's own choice (the switch in the top strip),
   or their phone's setting until they choose. The same festival colours on a
   deep aubergine night. Text meets WCAG AA.
   ===================================================================== */
html[data-theme="dark"]{
  --bg:#1C1529; --ink:#F6F1FF; --surface:#261D3A; --surface-2:#2D2343; --surface-3:#31203A; --petal:#3A1828; --ink-2:#DCD3F0; --muted:#ADA3C6;
  --line:#3A2F55; --line-2:#2C2342;
  --rani:#FB7195; --saffron:#FB923C; --saffron-ink:#FBBF24; --marigold:#FBBF24; --peacock:#22D3EE; --leaf:#4ADE80; --violet:#C4B5FD;
  --deep:#2A1845; --night:#100A1A;
  --grad:linear-gradient(100deg,#D6245D 0%,#C2410C 100%);
  --grad-soft:linear-gradient(160deg,#2B2011 0%,#33162A 60%,#221B42 100%);
  --shadow:0 1px 2px rgba(0,0,0,.5),0 12px 30px -18px rgba(0,0,0,.85);
  --shadow-lg:0 2px 4px rgba(0,0,0,.5),0 28px 60px -30px rgba(0,0,0,.9)}
html[data-theme="dark"] .hl,html[data-theme="dark"] .logo__word{background:linear-gradient(100deg,#FB7195 0%,#FDBA74 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="dark"] .site-footer{border-top:1px solid var(--line-2)}
html[data-theme="dark"] .mark,html[data-theme="dark"] .ai-badge,html[data-theme="dark"] .rg__tag{background:#3B2A0C;color:#FCD34D}
html[data-theme="dark"] .gbtn--ink{background:#F6F1FF;border-color:#F6F1FF;color:#211634}
html[data-theme="dark"] .gbtn--ink:hover{background:#fff;border-color:#fff;color:#211634}
html[data-theme="dark"] .link{text-decoration-color:rgba(251,113,149,.4)}
html[data-theme="dark"] .night .link{color:var(--gold)}
html[data-theme="dark"] .cart-count{background:#D6245D}
html[data-theme="dark"] .ai-price em,html[data-theme="dark"] .buybox .price em{background:#15803D;color:#fff}
html[data-theme="dark"] .hk__ticks li::before{background-color:#15803D}
html[data-theme="dark"] .city-list,html[data-theme="dark"] .ai-leadcard,html[data-theme="dark"] dialog.ai-zoom button,html[data-theme="dark"] .pagination a,html[data-theme="dark"] .pagination span{background:var(--surface);color:var(--ink)}
html[data-theme="dark"] .ai-leadcard{border-color:#4A1F33}
html[data-theme="dark"] .ai-freecard{border-color:#5A4312;background:linear-gradient(135deg,#2E2212,var(--surface) 60%)}
html[data-theme="dark"] .field input:focus,html[data-theme="dark"] .field select:focus,html[data-theme="dark"] .field textarea:focus{background-color:var(--surface)}
html[data-theme="dark"] .field select,html[data-theme="dark"] .dparts select,html[data-theme="dark"] .ai-tune__row > select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23ADA3C6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 1.5 6 6l4.5-4.5'/%3E%3C/svg%3E")}
html[data-theme="dark"] .ai-trust .ico{background:#3B2A0C;color:#FCD34D}
html[data-theme="dark"] .ai-checks li::before{background-color:color-mix(in srgb,var(--acc,var(--leaf)) 78%,#fff)}
html[data-theme="dark"] .ai-nextflag .ai-checks li::before{background-color:rgba(255,255,255,.9)}
html[data-theme="dark"] .ai-prefill,html[data-theme="dark"] .owned-badge,html[data-theme="dark"] .success,html[data-theme="dark"] .ai-tune__o.is-on,html[data-theme="dark"] .hk__formhead span{background:#14391F;color:#86EFAC}
html[data-theme="dark"] .ai-guarantee,html[data-theme="dark"] .ai-tune__o{background:#3B2A0C;color:#FCD34D}
html[data-theme="dark"] .errors,html[data-theme="dark"] .ai-leadcard input.is-bad{background:#43182A;color:#FDA4AF}
html[data-theme="dark"] .city-opt.is-active,html[data-theme="dark"] .city-opt:hover{background:#43182A}
html[data-theme="dark"] .pr-hero{background:linear-gradient(180deg,#1E1428 0%,var(--bg) 340px)}
html[data-theme="dark"] .tsw button[aria-pressed="true"],html[data-theme="dark"] .seg input:checked + span{background:#3A2F55;box-shadow:none}
html[data-theme="dark"] .ai-shot img,html[data-theme="dark"] .tune__sheet img{filter:brightness(.92)}
html[data-theme="dark"] .jk-root .ai-leadcard .gbtn--ink{color:#211634}
html[data-theme="dark"] .ll__pt--past i{background-color:#6D4FA3}
html[data-theme="dark"] .ll__track::before{background:linear-gradient(90deg,#6D4FA3 0 60%,var(--rani) 84% 100%)}
html[data-theme="dark"] .hero .ll__pt--past i{background-color:var(--gold)}
html[data-theme="dark"] .rg__tile,html[data-theme="dark"] .drawer__ico,html[data-theme="dark"] .lib__ico{background:#3A1828;color:#FDA4BC}
html[data-theme="dark"] .emb{color:#FDA4BC;background:radial-gradient(circle at 34% 28%,#4A2238 0%,#341528 55%,#24101F 100%)}
html[data-theme="dark"] .emb__ring{stroke:#E0B355;opacity:.6}
html[data-theme="dark"] .rg__pill{color:#FDA4BC;border-color:rgba(253,164,188,.45)}
html[data-theme="dark"] .rg__pill--tag{background:#3B2A0C;color:#FCD34D}
html[data-theme="dark"] .rg__card{border-color:var(--line);box-shadow:0 10px 26px -18px rgba(0,0,0,.8)}
html[data-theme="dark"] .ai-dharma-sec{background:linear-gradient(180deg,#1E1626 0%,var(--bg) 100%)}
html[data-theme="dark"] .ai-dharma-aside{background:linear-gradient(180deg,#2E2212,var(--surface));border-color:#5A4312}
html[data-theme="dark"] .ai-longread__text th{background:var(--surface-2)}
html[data-theme="dark"] .ai-pillar,html[data-theme="dark"] .ai-longread__text table,html[data-theme="dark"] .hk__chip{background:var(--surface);color:var(--ink)}
html[data-theme="dark"] .ai-exit__price{background:var(--surface-2)}
html[data-theme="dark"] .pr-hero .pr-facts li{background:var(--surface)}
html[data-theme="dark"] .drawer__tico{color:#FDA4BC;background:#3A1828}
/* =====================================================================
   Motion. One orchestrated moment on arrival (the kundli draws itself, the
   grahas take their houses, the life line runs to the next window), then
   motion only where it answers the visitor: a row opening, a step changing,
   the menu arriving, a card lifting under the pointer. Sections ease in once
   as they reach the screen. All of it is off for anyone who asks the system
   for less motion, and nothing is hidden when scripts do not run.
   ===================================================================== */
@keyframes ai-spin{to{transform:rotate(360deg)}}
@keyframes ai-draw{to{stroke-dashoffset:0}}
@keyframes ai-fade{from{opacity:0}to{opacity:1}}
@keyframes ai-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes ai-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.12)}100%{opacity:1;transform:scale(1)}}
@keyframes ai-grow-x{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ai-grow-y{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes ai-ring{0%{opacity:.7;transform:scale(.8)}100%{opacity:0;transform:scale(1.9)}}
@keyframes ai-breathe{0%,100%{filter:drop-shadow(0 0 6px rgba(252,211,77,.55))}50%{filter:drop-shadow(0 0 16px rgba(252,211,77,.95))}}
@keyframes ai-shine{0%,72%{transform:translateX(-120%) skewX(-18deg)}100%{transform:translateX(320%) skewX(-18deg)}}
@keyframes ai-sheet{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes ai-step{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
@keyframes ai-up{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
@keyframes ai-flicker{0%,100%{transform:scale(1,1) skewX(0)}20%{transform:scale(.97,1.05) skewX(1.5deg)}45%{transform:scale(1.03,.96) skewX(-2deg)}70%{transform:scale(.98,1.06) skewX(1deg)}}
@keyframes ai-glow{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}

/* the diya flame flickers wherever a diya is drawn */
.ai-diya{display:block;width:100%;height:100%;overflow:visible}
.ai-diya__flame{transform-box:view-box;transform-origin:60px 55px}
.ai-diya__glow{transform-box:view-box;transform-origin:60px 46px}
.sky__pl text{transform-box:fill-box;transform-origin:center}

@media (prefers-reduced-motion:no-preference){
  .ai-diya__flame{animation:ai-flicker 2.6s ease-in-out infinite}
  .ai-diya__glow{animation:ai-glow 3.2s ease-in-out infinite}

  /* arrival: the hero */
  .hero__copy > *{animation:ai-rise .8s var(--ease-out) both}
  .hero__copy > :nth-child(2){animation-delay:.06s}
  .hero__copy > :nth-child(3){animation-delay:.14s}
  .hero__copy > :nth-child(4){animation-delay:.22s}
  .hero__copy > :nth-child(5){animation-delay:.3s}
  .sky__line,.sky__ring{stroke-dasharray:1;stroke-dashoffset:1;animation:ai-draw 1.4s var(--ease) forwards}
  .sky__ring{animation-duration:2.2s;animation-delay:.1s}
  .sky__line--sq{animation-delay:.15s}
  .sky__line--d1{animation-delay:.5s}
  .sky__line--d2{animation-delay:.62s}
  .sky__line--dia{animation-delay:.8s}
  .sky__ticks,.sky__nums{animation:ai-fade .8s ease 1.2s both}
  .sky__pl text{animation:ai-pop .55s var(--ease-out) both;animation-delay:calc(1.15s + var(--d,0) * .11s)}
  .sky__dot{transform-box:fill-box;transform-origin:center;animation:ai-pop .6s var(--ease-out) 2.1s both,ai-breathe 4.5s ease-in-out 2.8s infinite}
  .sky__glow{animation:ai-fade 2s ease .3s both}
  .hero .ll__track::before{transform:scaleX(0);animation:ai-grow-x 1s var(--ease) .55s forwards}
  .hero .ll__pt{animation:ai-rise .6s var(--ease-out) both;animation-delay:calc(.6s + var(--i,0) * .16s)}
  .ll__pt--next i::after{animation:ai-ring 2.4s ease-out 1.8s infinite}

  /* the one loud button catches the light now and then */
  .gbtn--shine::after{content:"";position:absolute;top:0;bottom:0;left:0;width:34%;z-index:-1;pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);transform:translateX(-120%) skewX(-18deg);
    animation:ai-shine 6.5s ease-in-out 2.6s infinite}

  /* sections ease in once as they arrive */
  html.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
  html.js [data-reveal].is-in{opacity:1;transform:none}
  html.js [data-reveal-group] > *{opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);
    transition-delay:calc(var(--i,0) * 60ms)}
  html.js [data-reveal-group].is-in > *{opacity:1;transform:none}
  html.js .tune__steps li:not(:last-child)::after{transform:scaleY(0);transition:transform .8s var(--ease) calc(var(--i,0) * 160ms + .3s)}
  html.js .tune__steps.is-in li::after{transform:scaleY(1)}
  html.js .tune__steps .tune__ico{transform:scale(.6);transition:transform .5s var(--ease-out) calc(var(--i,0) * 160ms)}
  html.js .tune__steps.is-in .tune__ico{transform:none}
  html.js .tune__proof[data-reveal]{transform:translateY(26px) rotate(2deg)}
  html.js .tune__proof[data-reveal].is-in{transform:none}

  /* answers to what the visitor does */
  .drawer:not([hidden]){animation:ai-sheet .28s var(--ease-out)}
  .drawer:not([hidden]) .drawer__reps a{animation:ai-rise .45s var(--ease-out) both;animation-delay:calc(.05s + var(--i,0) * 35ms)}
  .buybox .step:not([hidden]){animation:ai-step .4s var(--ease-out)}
  .ai-prefill.is-on{animation:ai-rise .5s var(--ease-out)}
  .ai-next,.ai-leadcard{animation:ai-rise .6s var(--ease-out) both}
  dialog.ai-exit[open]{animation:ai-up .35s var(--ease-out)}
  dialog.ai-zoom[open]{animation:ai-fade .25s ease}
  .gbtn--buy:hover{transform:translateY(-1px)}
  .gbtn--buy:active{transform:scale(.97)}
}
/* rows that open, opening smoothly where the browser can animate it */
@supports selector(::details-content){
  @media (prefers-reduced-motion:no-preference){
    .faq details::details-content,.fold > details::details-content,.ai-tune::details-content{
      height:0;overflow:clip;transition:height .38s var(--ease),content-visibility .38s allow-discrete}
    .faq details[open]::details-content,.fold > details[open]::details-content,.ai-tune[open]::details-content{height:auto}
  }
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media (prefers-reduced-motion:no-preference){.hero__art{animation:ai-rise .9s var(--ease-out) both}}
@media print{
  .ai-sticky,.ai-wa,.ai-samplebar,.ai-next,.ai-leadcard,dialog.ai-exit{display:none!important}
}
.ai-samplebar{position:sticky;top:0;z-index:45;background:var(--grad);color:#fff;padding:10px 18px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;font-family:var(--f-body);font-weight:600}
.ai-samplebar a{background:#fff;color:#9D174D;border-radius:999px;padding:6px 14px;text-decoration:none;font-weight:700;white-space:nowrap}
