/* StoryVeda · stylesheet */
html{scroll-behavior:smooth}
body{margin:0;background:#FFF7E8;color:#17224D;font-family:'Mukta','Mukta Vaani',system-ui,sans-serif}
a{color:#1565C0}a:hover{color:#0D3F7A}
@keyframes drift{from{transform:translateX(-320px)}to{transform:translateX(1800px)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes spinrev{to{transform:rotate(-360deg)}}
@keyframes twinkle{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}
@keyframes ping{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.9);opacity:0}}
@keyframes pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.06);opacity:1}100%{transform:scale(1)}}
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes wiggle{0%,100%{transform:rotate(0)}20%{transform:rotate(-3deg)}40%{transform:rotate(3deg)}60%{transform:rotate(-2deg)}80%{transform:rotate(2deg)}}
@keyframes fall{0%{transform:translateY(-10px) rotate(0);opacity:1}100%{transform:translateY(170px) rotate(620deg);opacity:0}}
@keyframes wave{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
@keyframes draw{from{stroke-dashoffset:520}to{stroke-dashoffset:0}}
@keyframes sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
.drift{position:absolute;left:0;animation:drift linear infinite}
.bob{animation:bob 4s ease-in-out infinite}
.spin{animation:spin 40s linear infinite}
.spinrev{animation:spinrev 40s linear infinite}
.twinkle{animation:twinkle 2.6s ease-in-out infinite}
.ping{animation:ping 1.6s ease-out infinite}
.pop{animation:pop .55s cubic-bezier(.2,.9,.3,1.3) both}
.rise{animation:rise .7s ease-out both}
.wiggle{animation:wiggle .6s ease-in-out}
.fall{animation:fall 1.8s ease-in forwards}
.bar{animation:wave .9s ease-in-out infinite;transform-origin:center}
.draw{stroke-dasharray:520;animation:draw 1.6s .4s ease-out both}
.sway{animation:sway 5s ease-in-out infinite;transform-origin:bottom center}
.lift{transition:transform .25s ease,box-shadow .25s ease}
.lift:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 18px 34px rgba(23,34,77,.16)}
@keyframes sanskar-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
.sanskar-chip{transition:transform .25s ease,box-shadow .25s ease;color:#17224D}
.sanskar-chip:hover{transform:translateY(-4px) rotate(-.5deg);box-shadow:0 12px 0 #C85A0C,0 18px 34px rgba(23,34,77,.16);color:#17224D}
.sanskar-chip .sanskar-go{transition:gap .25s ease,background .25s ease,color .25s ease}
.sanskar-chip:hover .sanskar-go{background:#E0620B;color:#17224D;gap:10px}
.sanskar-chip:hover .sanskar-go span[aria-hidden]{animation:sanskar-nudge .6s ease-in-out infinite}
.sanskar-icon{overflow:visible}
@keyframes source-float{0%,100%{transform:translateY(0) rotate(var(--tilt,0deg))}50%{transform:translateY(-8px) rotate(var(--tilt,0deg))}}
@keyframes source-glow{0%,100%{box-shadow:0 4px 0 rgba(23,34,77,.2)}50%{box-shadow:0 8px 0 rgba(23,34,77,.28),0 12px 22px rgba(224,98,11,.18)}}
.source-pill{display:inline-flex;align-items:center;border-radius:999px;padding:10px 20px;font-family:'Baloo 2','Baloo Bhai 2',sans-serif;font-weight:800;font-size:19px;color:#17224D;line-height:1;animation:source-float 3.2s ease-in-out infinite,source-glow 3.2s ease-in-out infinite,pop .55s cubic-bezier(.2,.9,.3,1.3) both;animation-delay:calc(var(--i)*0.12s),calc(var(--i)*0.12s),calc(.15s + var(--i)*0.1s);transition:transform .25s ease,box-shadow .25s ease}
.source-pill:nth-child(odd){--tilt:-1.5deg}
.source-pill:nth-child(even){--tilt:1.5deg}
.source-pill:hover{transform:translateY(-10px) rotate(0deg) scale(1.05);box-shadow:0 10px 0 #17224D,0 16px 28px rgba(23,34,77,.16);animation-play-state:paused}
@keyframes promise-float{0%,100%{transform:translateY(0) rotate(var(--tilt,0deg))}50%{transform:translateY(-10px) rotate(var(--tilt,0deg))}}
@keyframes promise-icon-bob{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.06)}}
.promise-card{position:relative;background:var(--bg);color:var(--fg);border-radius:32px;padding:28px 26px 30px;display:flex;flex-direction:column;gap:14px;border:2.5px solid #17224D;box-shadow:0 8px 0 #17224D;overflow:hidden;animation:promise-float 3.6s ease-in-out infinite,pop .6s cubic-bezier(.2,.9,.3,1.3) both;animation-delay:calc(var(--i)*0.18s),calc(.1s + var(--i)*0.12s);transition:transform .25s ease,box-shadow .25s ease}
.promise-card:hover{transform:translateY(-12px) rotate(0deg) scale(1.02);box-shadow:0 14px 0 #17224D,0 22px 36px rgba(23,34,77,.18);animation-play-state:paused;z-index:1}
.promise-num{position:absolute;top:14px;right:18px;font-family:'Baloo 2','Baloo Bhai 2',sans-serif;font-size:42px;font-weight:800;line-height:1;opacity:.22;letter-spacing:-1px}
.promise-icon{width:56px;height:56px;border-radius:18px;background:rgba(255,255,255,.28);border:2px solid currentColor;display:inline-flex;align-items:center;justify-content:center;animation:promise-icon-bob 2.8s ease-in-out infinite;animation-delay:calc(var(--i)*0.2s)}
.promise-card:nth-child(2) .promise-icon,.promise-card:nth-child(4) .promise-icon{background:rgba(255,255,255,.18)}
@media (max-width: 560px){
  .sanskar-chip{max-width:100%;flex-wrap:wrap;border-radius:28px!important;padding:12px!important}
  .sanskar-chip .sanskar-go{width:100%;justify-content:center}
  .source-pill{font-size:16px!important;padding:8px 14px!important}
}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}

/* keyboard focus */
a:focus-visible,button:focus-visible{outline:3px solid #1565C0;outline-offset:3px;border-radius:12px}

/* ---------- responsive ---------- */
@media (max-width: 1100px){
  [style*="repeat(5, minmax"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  [style*="repeat(4, minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width: 900px){
  [style*="grid-template-columns"]{grid-template-columns:1fr!important}
  [style*="repeat(5, minmax"],[style*="repeat(4, minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .keep-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  [style*="grid-column: span"]{grid-column:auto!important}
  [style*="max-width: 1200px"]{padding-left:20px!important;padding-right:20px!important}
  [style*="padding: 110px"],[style*="padding: 100px"],[style*="padding: 120px"]{padding-top:64px!important;padding-bottom:64px!important}
  [style*="justify-content: space-between"]{flex-wrap:wrap}
  h1{font-size:48px!important;letter-spacing:-1px!important}
  h2{font-size:34px!important}
  nav a:not(.nav-cta){display:none!important}
  .hero-orbit{height:360px!important;transform:scale(.66);margin:-40px 0}
  #demo-card{padding:20px!important}
  section[style*="border-radius: 64px"]{border-radius:32px!important}
}
@media (max-width: 560px){
  [style*="repeat(5, minmax"],[style*="repeat(4, minmax"]{grid-template-columns:1fr!important}
  h1{font-size:40px!important}
  .hero-orbit{transform:scale(.56);height:320px!important}
}
