/* VastuIQ — Numerology calculators redesign (Oct 2026). Family: "Ank", light and calm.
   Ivory paper, soft ink, one pastel accent per tool (Life Path: lavender). Linked right AFTER each page's own
   <style>, so equal-specificity rules here win. The page's own tokens (--np, --np2, --np3) are re-pointed;
   the shared header's tokens (--mn, --sf, --cr …) are left alone and components are styled directly. */
:root{
  --nk:#262046;--nk2:#4A4370;--nk3:#77708F;--nline:#E7E3F1;--npaper:#FCFBFE;--ngold:#B8914A;
  --na:#6F5FD0;--na2:#8C7EE3;--na-lt:#EEEAFD;--na-wash:rgba(111,95,208,.12);
  --np:var(--na);--np2:var(--na2);--np3:var(--na);
  --ta-bg:#ECE8FD;--ta-fg:#5646BE;--tb-bg:#FDEADF;--tb-fg:#B05A28;--tc-bg:#E2F3EA;--tc-fg:#2E7752;
}

/* ── hero ── */
.page-hero{text-align:left;padding:3.4rem 1.5rem 4.6rem;
  background:radial-gradient(circle at 72% 40%,var(--na-wash),transparent 36%),
             radial-gradient(circle at 92% 82%,rgba(240,170,130,.14),transparent 30%),
             linear-gradient(170deg,#FFFFFF,#F8F6FC 70%,#F4F2FA);border-bottom:1px solid var(--nline);}
.page-hero .hero-glow{display:none;}
.nm-hero-grid{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;position:relative;z-index:2;}
.page-hero .hero-inner{text-align:left;max-width:none;margin:0;}
.page-hero .hero-tag{background:#fff;border:1px solid var(--nline);color:var(--na);box-shadow:0 2px 10px rgba(38,32,70,.05);}
.page-hero h1{color:var(--nk);font-weight:600;letter-spacing:-.01em;}
.page-hero h1 em{color:var(--na);}
.page-hero p{color:var(--nk3);margin:0 0 1.2rem;}
.page-hero .hero-curiosity{color:var(--na);margin-bottom:1.2rem;}
.page-hero .hero-pills{justify-content:flex-start;}
.page-hero .hero-pill{background:#fff;border:1px solid var(--nline);color:var(--nk2);}
.nm-ctas{margin-top:1.4rem;}
.nm-cta{display:inline-flex;align-items:center;gap:.5rem;background:var(--nk);color:#fff!important;font-weight:700;text-decoration:none;padding:.9rem 1.6rem;border-radius:999px;box-shadow:0 10px 26px rgba(38,32,70,.22);transition:transform .15s;}
.nm-cta:hover{transform:translateY(-2px);}
.nm-art{display:flex;justify-content:center;}
.nm-svg{width:min(100%,420px);height:auto;filter:drop-shadow(0 18px 30px rgba(38,32,70,.08));}

/* Life Path drawing ("Marg") */
.nm-halo{fill:var(--na-lt);opacity:.55;} .nm-halo2{fill:none;stroke:var(--nline);stroke-width:1;stroke-dasharray:3 5;}
.nm-eg{font:600 12px 'DM Sans',sans-serif;fill:var(--nk3);text-anchor:middle;letter-spacing:.04em;}
.nm-pill rect{stroke-width:1.2;} .nm-pill text{font:700 17px 'DM Sans',sans-serif;text-anchor:middle;letter-spacing:.12em;}
.nm-ta rect,.nm-ta circle{fill:var(--ta-bg);stroke:#CFC6F7;} .nm-ta text{fill:var(--ta-fg);}
.nm-tb rect,.nm-tb circle{fill:var(--tb-bg);stroke:#F4CDB4;} .nm-tb text{fill:var(--tb-fg);}
.nm-tc rect,.nm-tc circle{fill:var(--tc-bg);stroke:#B9E0CB;} .nm-tc text{fill:var(--tc-fg);}
.nm-red circle{stroke-width:1.4;}
.nm-rn{font:700 22px 'Cormorant Garamond',serif;text-anchor:middle;}
.nm-red text.nm-how{font:600 10.5px 'DM Sans',sans-serif;fill:var(--nk3);text-anchor:middle;}
.nm-line{fill:none;stroke:#BDB4E6;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;}
.nm-ring-bg{fill:#fff;stroke:var(--na-lt);stroke-width:6;}
.nm-ring{fill:none;stroke:var(--na);stroke-width:6;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transform-box:fill-box;transform-origin:center;transform:rotate(-90deg);}
.nm-fl{font:700 9.5px 'DM Sans',sans-serif;letter-spacing:.22em;fill:var(--nk3);text-anchor:middle;}
.nm-fn{font:700 46px 'Cormorant Garamond',serif;fill:var(--nk);text-anchor:middle;}
.nm-sum{font:600 12px 'DM Sans',sans-serif;fill:var(--nk2);text-anchor:middle;}
.nm-spark{fill:var(--ngold);opacity:0;transform-box:fill-box;transform-origin:center;}
/* 9 s loop: the date appears, flows down, reduces to 5 · 8 · 1, the three meet and the ring closes on 5 */
.nm-pill{animation:nmIn 9s ease-out infinite;} .nm-p1{animation-delay:.15s;} .nm-p2{animation-delay:.3s;}
@keyframes nmIn{0%{opacity:0;transform:translateY(-8px)}6%,94%{opacity:1;transform:none}100%{opacity:0}}
.nm-l0,.nm-l1,.nm-l2{animation:nmDraw1 9s ease-in-out infinite;}
@keyframes nmDraw1{0%,8%{stroke-dashoffset:100}24%,94%{stroke-dashoffset:0}100%{stroke-dashoffset:100}}
.nm-red{transform-box:fill-box;transform-origin:center;animation:nmPop 9s cubic-bezier(.3,1.5,.5,1) infinite;}
.nm-r1{animation-delay:.2s;} .nm-r2{animation-delay:.4s;}
@keyframes nmPop{0%,24%{opacity:0;transform:scale(.6)}32%,94%{opacity:1;transform:none}100%{opacity:0}}
.nm-m0,.nm-m1,.nm-m2{animation:nmDraw2 9s ease-in-out infinite;}
@keyframes nmDraw2{0%,40%{stroke-dashoffset:100}54%,94%{stroke-dashoffset:0}100%{stroke-dashoffset:100}}
.nm-ring{animation:nmRing 9s ease-in-out infinite;}
@keyframes nmRing{0%,52%{stroke-dashoffset:100}70%,94%{stroke-dashoffset:0}100%{stroke-dashoffset:100}}
.nm-final{transform-box:fill-box;transform-origin:center;animation:nmFinal 9s cubic-bezier(.3,1.4,.5,1) infinite;}
@keyframes nmFinal{0%,62%{opacity:0;transform:scale(.7)}72%,94%{opacity:1;transform:none}100%{opacity:0}}
.nm-sum{animation:nmSum 9s ease infinite;}
@keyframes nmSum{0%,68%{opacity:0}76%,94%{opacity:1}100%{opacity:0}}
.nm-spark{animation:nmSpark 9s ease infinite;} .nm-s1{animation-delay:.3s;} .nm-s2{animation-delay:.6s;}
@keyframes nmSpark{0%,70%{opacity:0;transform:scale(.3) rotate(0)}76%{opacity:1;transform:scale(1.2) rotate(45deg)}86%,94%{opacity:.8;transform:scale(1) rotate(90deg)}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){
  .nm-pill,.nm-line,.nm-red,.nm-ring,.nm-final,.nm-sum,.nm-spark{animation:none;}
  .nm-line,.nm-ring{stroke-dashoffset:0;} .nm-spark{opacity:.8;}
}

/* ── quick answer + form ── */
.answer-card{border-color:var(--nline);box-shadow:0 12px 34px rgba(38,32,70,.08);border-radius:18px;}
.answer-card-label{color:var(--na);}
.sec-card{border-color:var(--nline);box-shadow:0 10px 34px rgba(38,32,70,.07);border-radius:20px;}
.sec-hdr{background:linear-gradient(135deg,#F5F2FD,#FFFFFF);border-bottom:1px solid var(--nline);}
.sec-hdr h2{color:var(--nk);}
.sec-hdr p{color:var(--nk3);}
.sec-ic{background:var(--na-lt);border-color:#D9D1FA;}
.fi{border-color:var(--nline);background:#FBFAFE;border-radius:12px;}
.fi:focus{border-color:var(--na);box-shadow:0 0 0 3px var(--na-wash);background:#fff;}
.btn-calc{background:var(--nk);border-radius:999px;box-shadow:0 10px 26px rgba(38,32,70,.22);}
.btn-calc:hover{box-shadow:0 14px 30px rgba(38,32,70,.28);}
.calc-panel{border-color:var(--nline);border-radius:20px;}
.calc-title{color:var(--nk);}

/* ── result ── */
.results-panel{border-color:var(--nline);border-radius:22px;}
.lp-hero,.res-hero{background:radial-gradient(circle at 50% 28%,var(--na-wash),transparent 55%),linear-gradient(170deg,#FFFFFF,#F6F3FD);border-bottom:1px solid var(--nline);}
.lp-hero-bg{display:none;}
.lp-circle{background:#fff;border:6px solid var(--na-lt);box-shadow:0 0 0 2px var(--na) inset,0 12px 30px rgba(111,95,208,.18);}
.lp-num{color:var(--nk);}
.lp-name{color:var(--na);}
.lp-teaser{color:var(--nk2);}
.lp-calc-toggle{color:var(--nk3);} .lp-calc-toggle:hover{color:var(--na);}
.lp-calc-breakdown{background:#fff;border-color:var(--nline);}
.lp-calc-row{color:var(--nk2);}
.lp-calc-row.lp-calc-final{border-top-color:var(--nline);color:var(--na);}
.lp-calc-note{color:var(--nk3);}
.lp-ceremonial{color:var(--ngold);}
.rh{color:var(--nk);}
.ec{border-color:var(--nline);background:#fff;border-radius:16px;}
.energy-grid .ec:nth-child(1){background:linear-gradient(160deg,#F3F0FE,#fff);}
.energy-grid .ec:nth-child(2){background:linear-gradient(160deg,#FEF1E8,#fff);}
.energy-grid .ec:nth-child(3){background:linear-gradient(160deg,#EAF6EF,#fff);}
.tc-title{color:var(--nk);}
.tc{border-color:var(--nline);border-radius:16px;}
.tc-lock{background:rgba(252,251,254,.8);}
.lp-share-card{background:radial-gradient(circle at 50% 30%,rgba(111,95,208,.14),transparent 60%),linear-gradient(160deg,#FFFFFF,#F1EDFC);border:1px solid #DCD4F8;box-shadow:0 18px 40px rgba(38,32,70,.12);}
.lsc-brand{color:var(--nk);} .lsc-label{color:var(--na);} .lsc-num{color:var(--nk);} .lsc-name{color:var(--na);}
.lsc-energy{color:var(--nk3);} .lsc-footer{color:var(--nk3);border-top-color:var(--nline);}
.btn-share{border-color:var(--nline);color:var(--nk);border-radius:999px;}
.price-card{border-color:var(--na);border-radius:22px;background:linear-gradient(160deg,#F7F5FE,#FFFFFF);}
.price-badge{background:var(--na);border-radius:999px;}
.price-name{color:var(--nk);}
.btn-pay,.btn-ipf-pay,.btn-dl-manual{background:var(--nk);border-radius:999px;box-shadow:0 10px 24px rgba(38,32,70,.2);}
.ipf-title{color:var(--nk);}
.inline-pay-form{border-color:var(--nline);border-radius:18px;}
.success-overlay{background:rgba(38,32,70,.55);}
.success-head{background:linear-gradient(135deg,#F3F0FE,#FFFFFF);border-bottom:1px solid var(--nline);}
.success-head-title{color:var(--nk);} .success-head-sub{color:var(--nk3);}

/* ── meanings + FAQ ── */
.ref-h{color:var(--nk);}
.ref-card{border-color:var(--nline);border-radius:16px;transition:transform .15s,box-shadow .15s;}
.ref-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(38,32,70,.08);}
.ref-name{color:var(--nk);}
.faq-q{color:var(--nk);}
.faq-item{border-bottom-color:var(--nline);}

@media (max-width:860px){
  .page-hero{padding:1.6rem 1rem 3.6rem;}
  .nm-hero-grid{grid-template-columns:1fr;gap:4px;}
  .nm-art{order:-1;}
  .nm-svg{width:min(66vw,250px);}
  .page-hero .hero-pills{gap:.45rem;}
}
/* header CSS forces .en/.hi to block: keep the tick and the words on one line in the pills and the CTA */
.page-hero .hero-pill span.en,.page-hero .hero-pill span.hi,.nm-cta span.en,.nm-cta span.hi{display:inline!important;}
body.hindi .page-hero .hero-pill span.en,body:not(.hindi) .page-hero .hero-pill span.hi,
body.hindi .nm-cta span.en,body:not(.hindi) .nm-cta span.hi{display:none!important;}

/* ── Destiny Number ("Naam"): soft rose ── */
:root:has(.nm-ds){--na:#B9457A;--na2:#D06E99;--na-lt:#FCE8F0;--na-wash:rgba(185,69,122,.12);}
.nm-vow rect{fill:#FCE7EF;stroke:#F2BCD1;stroke-width:1.2;} .nm-vow text{fill:#A3386A;}
.nm-con rect{fill:#EEEAFD;stroke:#D2C9F7;stroke-width:1.2;} .nm-con text{fill:#5646BE;}
.nm-ch{font:700 21px 'Cormorant Garamond',serif;text-anchor:middle;}
.nm-cv{font:700 12px 'DM Sans',sans-serif;text-anchor:middle;}
.nm-chip rect{fill:#fff;stroke:var(--nline);stroke-width:1.2;}
.nm-chip-v rect{fill:#FFF6FA;stroke:#F2BCD1;} .nm-chip-c rect{fill:#F8F6FF;stroke:#D2C9F7;}
.nm-ct{font:700 12.5px 'DM Sans',sans-serif;fill:var(--nk);text-anchor:middle;}
.nm-cl{font:600 10.5px 'DM Sans',sans-serif;fill:var(--nk3);text-anchor:middle;}
/* letters arrive one by one, each shows its number; vowels and consonants add up, then all of them meet in the ring */
.nm-tile{transform-box:fill-box;transform-origin:center;animation:nmIn 9s ease-out infinite;animation-delay:var(--d);}
.nm-cv{opacity:0;animation:nmVal 9s ease infinite;}
.nm-tile .nm-cv{animation-delay:var(--d);}
@keyframes nmVal{0%,14%{opacity:0}22%,94%{opacity:1}100%{opacity:0}}
.nm-chip{animation:nmPop 9s cubic-bezier(.3,1.5,.5,1) infinite;transform-box:fill-box;transform-origin:center;} .nm-chip-c{animation-delay:.25s;}
@media (prefers-reduced-motion:reduce){ .nm-tile,.nm-cv,.nm-chip{animation:none;opacity:1;} }

/* ── result header shared by Destiny, Lo Shu and Business Name (was dark) ── */
.res-hero-bg{display:none;}
.res-calc-toggle{color:var(--nk3);} .res-calc-toggle:hover{color:var(--na);}
.res-calc-breakdown{background:#fff;border-color:var(--nline);}
.calc-row-line{color:var(--nk2);}
.calc-row-line.final{border-top-color:var(--nline);color:var(--na);}
.calc-note{color:var(--nk3);}
.res-ceremonial{color:var(--ngold);}
/* Destiny: three numbers */
.tn-card{background:#fff;border-color:var(--nline);border-radius:16px;}
.tn-card.primary{background:linear-gradient(160deg,var(--na-lt),#fff);border-color:var(--na);}
.tn-label{color:var(--na);} .tn-num{color:var(--nk);} .tn-name{color:var(--nk3);}
/* Lo Shu: the grid */
.grid-cell{background:#fff;border-color:var(--nline);}
.grid-cell.present{background:var(--na-lt);border-color:var(--na);}
.grid-cell.missing{opacity:.45;}
.grid-cell-num{color:var(--nk);} .grid-cell-count{color:var(--na);}
.dc-label{color:var(--na);} .dc-num{color:var(--nk);}
/* Business Name */
.res-name-echo{color:var(--nk3);}
.res-circle{background:#fff;border:6px solid var(--na-lt);box-shadow:0 0 0 2px var(--na) inset,0 12px 30px var(--na-wash);}
.res-num{color:var(--nk);} .res-arch{color:var(--na);} .res-teaser{color:var(--nk2);}
.karmic-badge{background:#FDECEC;border-color:#F3C1C1;color:#A52A2A;}
.sl-num{background:var(--na-lt);color:var(--na);}
.sl-count,.sl-pick:hover{background:var(--na);}
.sl-mail-btn{background:var(--nk);border-radius:999px;}

/* ── Lo Shu Grid ("Jyamiti"): soft jade ── */
:root:has(.nm-ls){--na:#2F8574;--na2:#4FA593;--na-lt:#E0F2ED;--na-wash:rgba(47,133,116,.12);}
.nm-tx rect{fill:#FFF5E2;stroke:#EFD5A1;stroke-width:1.2;} .nm-tx text{fill:#9A6B14;}
.nm-ls-svg .nm-pill text{font-size:14px;}
.nm-dc{font:600 11.5px 'DM Sans',sans-serif;fill:var(--nk3);text-anchor:middle;}
.nm-gframe{fill:#fff;stroke:var(--nline);stroke-width:1.2;}
.nm-cell rect{stroke-width:1.3;}
.nm-on rect{fill:#E0F2ED;stroke:#9DD3C4;} .nm-on .nm-cn{fill:#22675A;}
.nm-off rect{fill:#FAFAFC;stroke:#DADDE6;stroke-dasharray:4 4;} .nm-off .nm-cn{fill:#C3C6D2;}
.nm-cn{font:700 24px 'Cormorant Garamond',serif;text-anchor:middle;letter-spacing:.06em;}
.nm-gl{fill:none;stroke:var(--ngold);stroke-width:2.5;}
.nm-chip-l rect{fill:#FFF8EA;stroke:#EFD5A1;}
/* the date appears, the grid fills cell by cell, the complete line is drawn, then the missing numbers are named */
.nm-on{transform-box:fill-box;transform-origin:center;animation:nmPop 9s cubic-bezier(.3,1.5,.5,1) infinite;animation-delay:var(--d);}
.nm-off{animation:nmIn 9s ease infinite;animation-delay:var(--d);}
.nm-gl{animation:nmDraw2 9s ease-in-out infinite;}
.nm-miss{animation:nmSum 9s ease infinite;}
.nm-chip-l{animation-delay:1.2s;}
@media (prefers-reduced-motion:reduce){ .nm-on,.nm-off,.nm-gl,.nm-miss{animation:none;opacity:1;} .nm-gl{stroke-dashoffset:0;} }

/* ── Business Name ("Board"): soft ocean blue with gold ── */
:root:has(.nm-bn){--na:#2F6AA3;--na2:#4C88C0;--na-lt:#E3EEF8;--na-wash:rgba(47,106,163,.12);}
.nm-rail{stroke:#B9C3D3;stroke-width:3;stroke-linecap:round;}
.nm-str{stroke:#B9C3D3;stroke-width:1.5;fill:none;}
.nm-board{fill:#fff;stroke:#C9D7E8;stroke-width:1.5;}
.nm-board-in{fill:#F4F8FC;stroke:var(--ngold);stroke-width:1;stroke-dasharray:2 3;}
.nm-bl{font:700 27px 'Cormorant Garamond',serif;fill:#1F4E7A;text-anchor:middle;}
.nm-bv{font:700 13px 'DM Sans',sans-serif;fill:var(--ngold);text-anchor:middle;}
.nm-step rect{fill:#fff;stroke:#C9D7E8;stroke-width:1.2;} .nm-step text{font:700 12.5px 'DM Sans',sans-serif;fill:var(--nk);text-anchor:middle;}
.nm-st2 rect{fill:var(--na-lt);stroke:var(--na);}
/* the sign swings in, each letter shows its value, the number reduces step by step, the ring closes on 3 */
.nm-sign{transform-box:view-box;transform-origin:220px 40px;animation:nmSwing 9s ease-in-out infinite;}
@keyframes nmSwing{0%{transform:rotate(-3deg);opacity:0}6%{opacity:1}12%{transform:rotate(2deg)}18%{transform:rotate(-1deg)}24%,100%{transform:rotate(0)}}
.nm-lt .nm-bv{opacity:0;animation:nmVal 9s ease infinite;animation-delay:var(--d);}
.nm-step{transform-box:fill-box;transform-origin:center;animation:nmPop 9s cubic-bezier(.3,1.5,.5,1) infinite;}
.nm-st0{animation-delay:.6s;} .nm-st1{animation-delay:1.1s;} .nm-st2{animation-delay:1.6s;}
@media (prefers-reduced-motion:reduce){ .nm-sign,.nm-lt .nm-bv,.nm-step{animation:none;opacity:1;} }
