/* ============================================================
   assets/fx.css — v1.6.32
   1) header / dropdown fixes  2) naye pages (Contact, Track Order, Sitemap)
   3) animations (sirf body.fx-on — Admin → Settings → Appearance se ON/OFF)
============================================================ */

/* ---------- 1. fixes ---------- */
/* language / currency dropdown header ke neeche chhup jata tha (dono z-index:1) */
.topstrip{z-index:70!important}
.dd-menu{z-index:80}
[data-theme=dark] .topstrip .dd-menu{background:color-mix(in srgb,var(--card) 97%,#000)!important;backdrop-filter:none!important}
[data-theme=light] .topstrip .dd-menu{background:#fff}
.dd-btn{display:inline-flex;align-items:center;gap:5px;border-radius:8px;padding:4px 8px!important;transition:background .15s,color .15s}
.dd-btn:hover,.dd.open>.dd-btn{background:var(--acs);color:var(--ac)}
.dd-car{font-style:normal;font-size:10px;transition:transform .2s}
.dd.open .dd-car{transform:rotate(180deg)}
.dd-lang .dd-menu a,.dd-cur .dd-menu a{display:flex;align-items:center;gap:10px}
.dd-lang .dd-menu a b,.dd-cur .dd-menu a b{min-width:30px;height:22px;display:inline-grid;place-items:center;border-radius:6px;
  background:var(--card2);border:1px solid var(--bd);font-size:11px;color:var(--tx2)}
.dd-lang .dd-menu a.on b,.dd-cur .dd-menu a.on b{background:var(--ac);border-color:var(--ac);color:#fff}
.dd-lang .dd-menu a.on::after,.dd-cur .dd-menu a.on::after{content:"✓";margin-inline-start:auto;color:var(--ac);font-weight:800}
/* desktop pe header upar chipka rahe (purani CSS ne sticky hata diya tha) */
@media (min-width:901px){
  .mainhead{position:sticky!important;top:0;z-index:60!important;transition:box-shadow .25s,background .25s}
  .mainhead.is-scrolled{box-shadow:0 10px 30px -12px rgba(0,0,0,.45)}
  .mainhead.is-scrolled .mh-in{padding-top:6px;padding-bottom:6px}
  .mh-in{transition:padding .25s,min-height .25s}
  /* v1.6.46: scroll pe compact header — bada logo content ko nahi dabayega */
  .mainhead.is-scrolled .mh-in{min-height:58px}
  .mainhead.is-scrolled .cn-in{min-height:40px}
  .mainhead.is-scrolled .cn-in>a{padding-top:9px;padding-bottom:9px}
  .mainhead.is-scrolled .cn-all{padding-top:6px;padding-bottom:6px}
}
.pr{transition:color .3s}
.pr-flash{animation:fxFlash .7s ease}
@keyframes fxFlash{0%{background:color-mix(in srgb,var(--ac) 28%,transparent);border-radius:6px}100%{background:transparent}}

/* ---------- 2. naye pages ---------- */
.pg-hero{position:relative;overflow:hidden;border-radius:18px;padding:34px 30px;margin-bottom:22px;color:#fff;
  background:linear-gradient(120deg,var(--ac2),var(--ac) 55%,var(--ac3));box-shadow:0 18px 40px -18px color-mix(in srgb,var(--ac) 70%,transparent)}
.pg-hero::after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.12)}
.pg-hero::before{content:"";position:absolute;right:120px;bottom:-110px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.08)}
.pg-hero h1{margin:0 0 6px;font-size:30px;line-height:1.15;position:relative;z-index:1}
.pg-hero p{margin:0;opacity:.92;max-width:620px;position:relative;z-index:1}
.ct-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:20px;align-items:start}
.ct-cards{display:grid;gap:12px}
.ct-card{display:flex;align-items:center;gap:14px;padding:16px;border-radius:14px;background:var(--card);border:1px solid var(--bd);color:var(--tx);
  transition:transform .2s,border-color .2s,box-shadow .2s}
a.ct-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--ac) 50%,var(--bd));box-shadow:var(--shadow)}
.ct-card b{display:block;font-size:15px}.ct-card small{display:block;color:var(--mut);font-size:12.5px;word-break:break-word}
.ct-ic{width:46px;height:46px;flex-shrink:0;border-radius:12px;display:grid;place-items:center;color:var(--c);
  background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 30%,transparent)}
.ct-form h2{margin:0 0 6px;font-size:20px}
.ct-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ct-form textarea{width:100%;resize:vertical}
.trk-wrap{max-width:720px;margin:0 auto}
.trk-res{margin-top:16px}
.trk-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.trk-top h2{margin:0;font-size:26px}
.trk-badge{font-size:12.5px;padding:6px 14px}
.trk-svc{font-weight:700;font-size:15.5px;margin:6px 0 18px}
.trk-steps{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);position:relative}
.trk-steps::before{content:"";position:absolute;left:16.6%;right:16.6%;top:16px;height:3px;background:var(--bd);border-radius:3px}
.trk-steps li{position:relative;text-align:center;font-size:12.5px;color:var(--mut)}
.trk-steps i{display:grid;place-items:center;width:34px;height:34px;margin:0 auto 6px;border-radius:50%;font-style:normal;font-weight:800;
  background:var(--card2);border:2px solid var(--bd);position:relative;z-index:1;transition:.3s}
.trk-steps li.done{color:var(--tx)}
.trk-steps li.done i{background:var(--ok);border-color:var(--ok);color:#fff}
.trk-steps.is-bad li.done:last-child i{background:var(--bad);border-color:var(--bad)}
.trk-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.trk-meta div{background:var(--card2);border:1px solid var(--bd);border-radius:10px;padding:10px 12px}
.trk-meta small{display:block;color:var(--mut);font-size:11.5px}.trk-meta b{font-size:14px}
.smh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.smh-col h3{margin:0 0 10px;font-size:16px}
.smh-col a{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px dashed var(--bd);color:var(--tx2);font-size:13.5px}
.smh-col a:hover{color:var(--ac)}
.smh-col a small{color:var(--mut)}
.smh-wide{margin-top:16px}
.smh-flow{display:flex;flex-wrap:wrap;gap:8px}
.smh-flow a{border:1px solid var(--bd);border-radius:20px;padding:5px 12px;border-bottom:1px solid var(--bd)}
@media (max-width:820px){.ct-grid{grid-template-columns:1fr}.ct-two{grid-template-columns:1fr}.pg-hero{padding:26px 20px}.pg-hero h1{font-size:24px}}

/* ---------- 3. animations ---------- */
#fxbar{position:fixed;top:0;left:0;height:3px;width:0;z-index:9999;pointer-events:none;opacity:0;
  background:linear-gradient(90deg,var(--ac3),var(--ac),var(--ac2));box-shadow:0 0 12px var(--ac);transition:width .3s ease,opacity .3s}
#fxbar.go{opacity:1;width:82%;transition:width 6s cubic-bezier(.1,.7,.2,1),opacity .2s}
#fxbar.done{opacity:0;width:100%;transition:width .2s,opacity .4s .2s}

body.fx-on .site-main{animation:fxPage .55s cubic-bezier(.2,.7,.3,1) both}
@keyframes fxPage{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
html.fx-leaving body.fx-on .site-main{opacity:.45;transition:opacity .25s}

/* scroll reveal — JS (.fx-js) ho tabhi chhupta hai; JS fail ho to 2.5s me apne aap dikh jata hai */
.fx-js body.fx-on .fx-r{opacity:0;transform:translateY(22px) scale(.985);
  transition:opacity .6s cubic-bezier(.2,.7,.3,1),transform .6s cubic-bezier(.2,.7,.3,1);transition-delay:var(--fx-d,0s);
  animation:fxSafe 0s 2.5s forwards}
.fx-js body.fx-on .fx-r.fx-in{opacity:1;transform:none;animation:none}
@keyframes fxSafe{to{opacity:1;transform:none}}

/* section heading accent bar grow */
body.fx-on .sec2-head h2::before{transform-origin:top;transition:transform .7s cubic-bezier(.2,.7,.3,1) .1s}
.fx-js body.fx-on .sec2-head.fx-r:not(.fx-in) h2::before{transform:scaleY(0)}

/* hero slider text entrance + dot progress */
body.fx-on .slide.on .sl-txt>*{animation:fxUp .7s cubic-bezier(.2,.7,.3,1) both}
body.fx-on .slide.on .sl-txt>*:nth-child(2){animation-delay:.12s}
body.fx-on .slide.on .sl-txt>*:nth-child(3){animation-delay:.24s}
body.fx-on .slide.has-img.on{animation:fxKb 7s ease-out both}
@keyframes fxKb{from{background-position:50% 42%}to{background-position:50% 50%}}
@keyframes fxUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
body.fx-on .sl-dots i{position:relative;overflow:hidden}
body.fx-on .sl-dots i.on::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.95);transform-origin:left;animation:fxDot 5.5s linear both}
@keyframes fxDot{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* cards */
body.fx-on .type-card{position:relative;overflow:hidden}
body.fx-on .type-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;
  background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--ac) 22%,transparent),transparent 65%)}
body.fx-on .type-card:hover::after,body.fx-on .pcard:hover::after{opacity:1}
body.fx-on .type-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--ac) 50%,var(--bd));box-shadow:var(--shadow)}
body.fx-on .type-card:hover .tc-ic{animation:fxBob .9s ease-in-out infinite}
body.fx-on .type-card .tc-go{transition:transform .25s}
body.fx-on .type-card:hover .tc-go{transform:translateX(5px)}
@keyframes fxBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px) rotate(-4deg)}}
body.fx-on .pcard{position:relative}
body.fx-on .pcard::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;z-index:2;
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.09),transparent 60%)}
body.fx-on .pcard.fx-tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-6px)}
body.fx-on .grp-card{transition:transform .22s,border-color .22s,box-shadow .22s}
body.fx-on .grp-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow)}
body.fx-on .grp-card img{transition:transform .4s}
body.fx-on .grp-card:hover img{transform:scale(1.12) rotate(-3deg)}
body.fx-on .feat{transition:transform .25s,box-shadow .25s,border-color .25s}
body.fx-on .feat:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--ac) 45%,var(--bd));box-shadow:var(--shadow)}
body.fx-on .feat .ic{display:inline-block;transition:transform .4s cubic-bezier(.3,1.6,.5,1)}
body.fx-on .feat:hover .ic{transform:scale(1.25) rotate(-8deg)}
body.fx-on .stats-strip div{transition:transform .25s,border-color .25s}
body.fx-on .stats-strip div:hover{transform:translateY(-3px);border-color:var(--ac)}
body.fx-on .how-steps li .hs-n{transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
body.fx-on .how-steps li:hover .hs-n{transform:scale(1.15) rotate(8deg)}
body.fx-on .faq details{transition:border-color .2s,background .2s}
body.fx-on .faq details[open] p{animation:fxUp .35s ease both}

/* tabs underline + buttons ripple */
body.fx-on .ptabs button{transition:color .2s,background .2s,transform .15s}
body.fx-on .ptabs button:active{transform:scale(.95)}
body.fx-on .plist:not([hidden]) .pcard{animation:fxUp .45s cubic-bezier(.2,.7,.3,1) both;animation-delay:calc(var(--i,0) * 40ms)}
.fx-rip{position:absolute;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.45);transform:scale(0);animation:fxRip .6s ease-out forwards}
@keyframes fxRip{to{transform:scale(4);opacity:0}}

/* dropdown / mega menu motion */
body.fx-on .dd.open .dd-menu{animation:fxDrop .18s cubic-bezier(.2,.7,.3,1) both}
@keyframes fxDrop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
body.fx-on .mega-wrap:hover .mega{animation:fxDrop .2s ease both}

/* logo + chat */
body.fx-on .mainhead .logo img{transition:transform .3s}
body.fx-on .mainhead .logo:hover img{transform:scale(1.04)}
body.fx-on .livechat{animation:fxIn .6s 1s both}
body.fx-on .livechat::before{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid var(--ac);animation:fxRing 2.4s 2s ease-out infinite;pointer-events:none}
@keyframes fxRing{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.35);opacity:0}}
@keyframes fxIn{from{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:none}}
body.fx-on .totop:not([hidden]){animation:fxIn .3s both}

/* stat number shimmer while counting */
body.fx-on .stats-strip b.fx-count{background:linear-gradient(90deg,var(--ac),var(--ac3),var(--ac));background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fxShine 1.6s linear infinite}
@keyframes fxShine{to{background-position:200% 0}}

@media (prefers-reduced-motion:reduce){
  body.fx-on *,body.fx-on *::before,body.fx-on *::after{animation:none!important;transition:none!important}
  .fx-js body.fx-on .fx-r{opacity:1!important;transform:none!important}
  #fxbar{display:none}
}

/* ===== v1.6.88 — extra client/storefront animation surfaces ===== */
body.fx-on .done-card{animation:fxUp .5s cubic-bezier(.2,.7,.3,1) both}
body.fx-on .var-opt.on{animation:fxPop .35s cubic-bezier(.2,1.3,.3,1)}
@keyframes fxPop{from{transform:scale(.96)}to{transform:none}}
body.fx-on .pf-card,.fx-js body.fx-on .pm,.fx-js body.fx-on .amt-chips button{transition:transform .2s,border-color .2s,box-shadow .2s}
body.fx-on .pm:hover{transform:translateY(-2px)}
body.fx-on .livechat{animation:fxIn .6s 1s both}
body.fx-on .btn.btn-lg:hover{transform:translateY(-2px) scale(1.01)}
body.fx-on .order-stats div{transition:transform .2s,border-color .2s}
body.fx-on .order-stats div:hover{transform:translateY(-2px);border-color:var(--ac)}
body.fx-on .um-g a{transition:background .15s,transform .15s}
body.fx-on .um-g a:hover{transform:translateX(3px)}
