/* Dr. Pankaj Kumar – shared site styles & animations (always on for every visitor) */
body{margin:0;background:#FFFFFF}
a{color:#0B1030}a:hover{color:#3A4180}
.navlink{transition:opacity .2s}.navlink:hover{opacity:.7}
details summary{cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}
details[open] .faq-plus{transform:rotate(45deg)}
.faq-plus{transition:transform .3s}

/* headline reveal on load */
.rise{display:inline-block;opacity:0;transform:translateY(40px);animation:rise 1s cubic-bezier(.2,.7,.2,1) forwards}
.rise.d1{animation-delay:.15s}.rise.d2{animation-delay:.3s}.rise.d3{animation-delay:.45s}.rise.d4{animation-delay:.7s}.rise.d5{animation-delay:.9s}
@keyframes rise{to{opacity:1;transform:none}}

/* ECG heartbeat */
.ecg{stroke-dasharray:1400;stroke-dashoffset:1400;animation:ecg 3.2s linear infinite}
@keyframes ecg{0%{stroke-dashoffset:1400}70%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}

/* float */
.float{animation:float 5s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* ticker */
.ticker{display:flex;width:max-content;animation:ticker 40s linear infinite}
.ticker.rev{animation-direction:reverse}
@keyframes ticker{to{transform:translateX(-50%)}}

/* globe */
.globe-wrap{perspective:1200px}
.globe{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:spin 24s linear infinite}
@keyframes spin{from{transform:rotateX(-14deg) rotateY(0)}to{transform:rotateX(-14deg) rotateY(360deg)}}
.mer{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(150,175,255,.38)}
.lat{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(150,175,255,.28)}
.pulse{position:absolute;border-radius:50%;border:2px solid #F96363;animation:pulse 2.4s ease-out infinite}
.pulse.p2{animation-delay:1.2s}
@keyframes pulse{0%{transform:scale(.3);opacity:1}100%{transform:scale(2.6);opacity:0}}
.arc{stroke-dasharray:6 8;animation:dash 1.6s linear infinite}
@keyframes dash{to{stroke-dashoffset:-28}}

.pop{opacity:0;transform:scale(.9);animation:pop 1.2s .4s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes pop{to{opacity:1;transform:none}}

/* slow zoom on photos */
.kb{animation:kb 22s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.12)}}

/* shine sweep */
.shine{position:relative;overflow:hidden}
.shine::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 50%,rgba(255,255,255,0) 100%);transform:skewX(-20deg);animation:shine 3.6s ease-in-out infinite;pointer-events:none}
@keyframes shine{0%,55%{left:-60%}100%{left:130%}}

/* hover lift */
.lift{transition:translate .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.lift:hover{translate:0 -8px;box-shadow:0 22px 44px rgba(11,16,48,.16)}

/* reveal: on scroll where supported, otherwise on load — visible to everyone */
@keyframes reveal{from{opacity:0;transform:translateY(56px)}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){
.reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
}
@supports not (animation-timeline: view()){
.reveal{animation:reveal 1s cubic-bezier(.2,.7,.2,1) both}
}

/* counting numbers */
@property --n{syntax:"<integer>";inherits:false;initial-value:0}
.count{--n:0;animation:count 2.4s .3s cubic-bezier(.2,.7,.2,1) forwards;counter-reset:n var(--n)}
.count::after{content:counter(n)}
.count.pct::after{content:counter(n) "%"}
.count.plus::after{content:counter(n) "+"}
.c96{--to:96}.c319{--to:319}.c16{--to:16}.c7{--to:7}.c15{--to:15}
@keyframes count{to{--n:var(--to)}}

/* heartbeat */
.beat{animation:beat 1.4s ease-in-out infinite;transform-origin:center}
@keyframes beat{0%,100%{transform:scale(1)}15%{transform:scale(1.18)}30%{transform:scale(1)}45%{transform:scale(1.12)}}

/* 3D book */
.book-stage{perspective:1400px}
.book3d{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:bookspin 9s ease-in-out infinite}
@keyframes bookspin{0%,100%{transform:rotateY(-28deg) rotateX(6deg) translateY(0)}50%{transform:rotateY(-12deg) rotateX(2deg) translateY(-16px)}}
.book-face{position:absolute;inset:0;transform:translateZ(22px);border-radius:4px 10px 10px 4px;overflow:hidden}
.book-spine{position:absolute;top:0;bottom:0;left:-22px;width:44px;transform:rotateY(-90deg)}
.book-pages{position:absolute;top:6px;bottom:6px;left:calc(100% - 24px);width:40px;transform:rotateY(90deg);background:repeating-linear-gradient(90deg,#F4F1E8 0 2px,#DDD8C8 2px 3px)}
.book-shadow{animation:bshadow 9s ease-in-out infinite}
@keyframes bshadow{0%,100%{transform:scaleX(1);opacity:.5}50%{transform:scaleX(.85);opacity:.3}}
.tilt{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.tilt:hover{transform:perspective(800px) rotateY(-14deg) translateY(-6px);box-shadow:18px 24px 40px rgba(11,16,48,.25)}

/* blog image zoom */
.post .zoom{transition:scale .6s cubic-bezier(.2,.7,.2,1)}
.post:hover .zoom{scale:1.07}
.post:hover .post-title{text-decoration:underline;text-underline-offset:4px}

/* condition graphics */
.g-merc{transform-box:fill-box;transform-origin:50% 100%;animation:merc 3s ease-in-out infinite}
@keyframes merc{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
.g-virus{animation:drift 4s ease-in-out infinite}.v2{animation-delay:1.3s}.v3{animation-delay:2.6s}
@keyframes drift{0%{transform:translateY(12px);opacity:0}30%,70%{opacity:1}100%{transform:translateY(-14px);opacity:0}}
.g-breathe{transform-box:fill-box;transform-origin:50% 40%;animation:breathe 4s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:scale(.93)}50%{transform:scale(1.06)}}
.g-air{animation:air 2s linear infinite}.a2{animation-delay:1s}
@keyframes air{0%{transform:translateY(0);opacity:0}20%{opacity:1}100%{transform:translateY(40px);opacity:0}}
.g-heart{transform-box:fill-box;transform-origin:center;animation:beat 1.4s ease-in-out infinite}
.g-ripple{transform-box:fill-box;transform-origin:center;animation:ripple 1.4s ease-out infinite}.r2{animation-delay:.7s}
@keyframes ripple{0%{transform:scale(.6);opacity:.8}100%{transform:scale(1.5);opacity:0}}
.g-ecg{stroke-dasharray:160;stroke-dashoffset:160;animation:gecg 1.4s linear infinite}
@keyframes gecg{to{stroke-dashoffset:0}}
.g-glow{animation:glow 3s ease-in-out infinite}
@keyframes glow{0%,100%{opacity:.7}50%{opacity:1;filter:drop-shadow(0 0 6px rgba(249,99,99,.6))}}
.g-orbit{transform-box:view-box;transform-origin:100px 60px;animation:orbit 8s linear infinite}
@keyframes orbit{to{transform:rotate(360deg)}}
.g-bubble{animation:bubble 2.6s ease-in infinite}.b2{animation-delay:.6s}.b3{animation-delay:1.2s}.b4{animation-delay:1.8s}
@keyframes bubble{0%{transform:translateY(0);opacity:0}20%{opacity:1}100%{transform:translateY(-26px);opacity:0}}
.g-check{stroke-dasharray:24;stroke-dashoffset:24;animation:check 4.5s ease infinite}.k2{animation-delay:.5s}.k3{animation-delay:1s}
@keyframes check{0%{stroke-dashoffset:24;opacity:1}20%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.g-charge{transform-box:fill-box;transform-origin:0 50%;animation:charge 4s ease-in-out infinite}
@keyframes charge{0%{transform:scaleX(.12);fill:#F96363}70%,90%{transform:scaleX(1);fill:#2E8B6A}100%{transform:scaleX(.12);fill:#F96363}}
.g-live{animation:live 1.2s ease-in-out infinite}
@keyframes live{50%{opacity:.2}}
.g-sig{opacity:.2;animation:sig 1.8s ease-in-out infinite}.s2{animation-delay:.3s}.s3{animation-delay:.6s}
@keyframes sig{0%,100%{opacity:.2}40%{opacity:1}}
.g-line{stroke-dasharray:720;stroke-dashoffset:720;animation:gline 6s ease-in-out infinite}
@keyframes gline{0%{stroke-dashoffset:720}55%,90%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.g-dotend{opacity:0;transform-box:fill-box;transform-origin:center;animation:dotend 6s ease-in-out infinite}
@keyframes dotend{0%,50%{opacity:0;transform:scale(.4)}60%,90%{opacity:1;transform:scale(1)}100%{opacity:0}}
.g-needle{transform-box:view-box;transform-origin:300px 340px;animation:needle 6s cubic-bezier(.5,0,.3,1) infinite}
@keyframes needle{0%,10%{transform:rotate(62deg)}60%,88%{transform:rotate(-58deg)}100%{transform:rotate(62deg)}}
.g-fat{transform-box:fill-box;transform-origin:center;animation:fat 6s ease-in-out infinite}.f2{animation-delay:.8s}.f3{animation-delay:1.6s}
@keyframes fat{0%,100%{transform:scale(1);opacity:1}55%,75%{transform:scale(.25);opacity:.15}}
.g-scan{animation:scan 3.5s linear infinite}
@keyframes scan{from{transform:translateX(0)}to{transform:translateX(460px)}}
.g-spin{transform-box:fill-box;transform-origin:center;animation:orbit 10s linear infinite}

/* standalone-site extras */
html{scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%}
[role=tabpanel]{display:flex}
[role=tabpanel][hidden]{display:none}
[data-post-cat][hidden]{display:none}
:focus-visible{outline:3px solid #F96363;outline-offset:3px}
@media (max-width:640px){
  section{padding-left:20px!important;padding-right:20px!important}
  section > div[style*="padding: 96px 64px"], section > div[style*="padding: 88px 64px"]{padding:64px 20px 110px!important}
  header nav{overflow-x:auto;flex-wrap:nowrap!important;width:100%;padding-bottom:4px}
  header nav a{white-space:nowrap}
}

/* ---- Mobile: compact header, menu button, bottom action bar ---- */
.dpk-burger,.dpk-mbar{display:none}
@media (max-width:760px){
  header > div:first-child{display:none!important}
  header > div:nth-child(2){padding:12px 18px!important;flex-wrap:wrap!important;gap:10px!important}
  header > div:nth-child(2) > a:first-child img{width:40px!important;height:40px!important}
  header > div:nth-child(2) > a:first-child span span:nth-child(1){font-size:19px!important}
  header > div:nth-child(2) > a:first-child span span:nth-child(2){display:none!important}
  header > div:nth-child(2) > a.shine{display:none!important}
  header nav[aria-label=Main]{display:none!important;order:3;flex-basis:100%;flex-direction:column!important;flex-wrap:nowrap!important;gap:0!important;padding:6px 0 8px!important;overflow:visible!important}
  header.menu-open nav[aria-label=Main]{display:flex!important;animation:dpkdrop .35s cubic-bezier(.2,.7,.2,1)}
  @keyframes dpkdrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
  header nav[aria-label=Main] a{padding:14px 4px!important;border-bottom:1px solid rgba(255,255,255,.1)!important;font-size:17px!important}
  header nav[aria-label=Main] a[aria-current=page]{color:#F96363!important}
  .dpk-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;border:1px solid rgba(255,255,255,.35);border-radius:14px;background:transparent;padding:0 12px;cursor:pointer;margin-left:auto}
  .dpk-burger span{display:block;height:2px;background:#FFFFFF;border-radius:2px;transition:transform .3s,opacity .3s}
  header.menu-open .dpk-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  header.menu-open .dpk-burger span:nth-child(2){opacity:0}
  header.menu-open .dpk-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .dpk-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9990;background:#0B1030;padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:8px;box-shadow:0 -8px 24px rgba(0,0,0,.25)}
  .dpk-mbar a{font-family:Inter,system-ui,sans-serif;letter-spacing:.01em;flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border-radius:999px;color:#FFFFFF;text-decoration:none;font-weight:600;font-size:15px;border:1px solid rgba(255,255,255,.3)}
  .dpk-mbar a.bk{background:#FFFFFF;color:#0B1030;border-color:#FFFFFF}
  body{padding-bottom:76px!important}
  header + section > div > div.rise:first-child{display:none!important}
  header + section > div[style*="96px 64px"]{padding-top:48px!important}
}

/* Nutrition programme dots */
.pulse-dot{box-shadow:0 0 0 0 currentColor;animation:pdot 2.6s ease-out infinite;color:rgba(249,99,99,.45)}
@keyframes pdot{0%{box-shadow:0 0 0 0 rgba(11,16,48,.25)}70%{box-shadow:0 0 0 10px rgba(11,16,48,0)}100%{box-shadow:0 0 0 0 rgba(11,16,48,0)}}

/* Books band on site pages */
.dpk-bks-band{background:#F3F4F8;padding:72px 32px;font-family:Inter,system-ui,sans-serif}
.dpk-bks-band .in{max-width:1360px;margin:0 auto;display:flex;flex-wrap:wrap;gap:28px 48px;align-items:center}
.dpk-bks-band .hd{flex:1 1 260px;display:flex;flex-direction:column;gap:8px}
.dpk-bks-band .hd span{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#F96363;font-weight:600}
.dpk-bks-band .hd strong{font-family:Outfit,sans-serif;font-weight:400;font-size:clamp(26px,2.8vw,36px);line-height:1.15;color:#0B1030}
.dpk-bks-band .hd a{color:#0B1030;font-weight:600;margin-top:6px}
.dpk-bks-band .row{flex:3 1 560px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.dpk-bks-band .row a{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:#0B1030}
.dpk-bks-band .row img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;box-shadow:0 10px 22px rgba(11,16,48,.18);transition:transform .3s}
.dpk-bks-band .row a:hover img{transform:translateY(-6px) rotate(-1deg)}
.dpk-bks-band .row em{font-style:normal;font-size:13px;line-height:1.3;font-weight:600}
@media (max-width:760px){.dpk-bks-band{padding:52px 18px}.dpk-bks-band .row{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:40%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.dpk-bks-band .row a{scroll-snap-align:start}}
