/* Nova Computer — site styles */
@font-face{font-family:Outfit;src:url(../fonts/outfit.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:Anek;src:url(../fonts/anek-800.woff2) format("woff2");font-weight:700 900;font-display:swap}
@font-face{font-family:Anek;src:url(../fonts/anek-600.woff2) format("woff2");font-weight:500 650;font-display:swap}
@font-face{font-family:Hind;src:url(../fonts/hind-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Hind;src:url(../fonts/hind-600.woff2) format("woff2");font-weight:600 700;font-display:swap}

:root{
  --mag:#1E8FFF;--ora:#1477FF;--amb:#2FD0FF;--vio:#2563EB;--tea:#1477FF;--aqu:#7CD9FF;
  --grad:linear-gradient(100deg,#2FD0FF,#1E8FFF 50%,#0A4FE0);
  --grad2:linear-gradient(120deg,#0A2A6E,#0A4FE0 45%,#1E8FFF 75%,#2FD0FF);
  --r:20px;--r-sm:12px;--maxw:1200px;
  --ease:cubic-bezier(.2,.8,.2,1);
  --fh:Outfit,Anek,system-ui,sans-serif;--fb:Hind,Outfit,system-ui,sans-serif;
}
:root,:root[data-theme="dark"]{
  --bg:#05070D;--bg2:#0A0F1C;--card:#0F1626;--card2:#162038;--line:rgba(255,255,255,.09);--line2:rgba(255,255,255,.16);
  --tx:#EEF4FF;--tx2:#B7C3D6;--tx3:#8794AA;--hdr:rgba(5,7,13,.82);--tint:#070B16;--shadow:0 20px 50px rgba(0,0,0,.45);
  --chip:rgba(255,255,255,.06);color-scheme:dark;
}
:root[data-theme="light"]{
  --bg:#F3F6FA;--bg2:#FFFFFF;--card:#FFFFFF;--card2:#EAF1FB;--line:rgba(10,16,34,.09);--line2:rgba(10,16,34,.16);
  --tx:#0A1022;--tx2:#3B475E;--tx3:#6B7895;--hdr:rgba(243,248,249,.88);--tint:#E6EEFA;--shadow:0 18px 44px rgba(10,16,34,.12);
  --chip:rgba(10,16,34,.05);color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--tx);font-family:var(--fb);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;transition:background .4s,color .4s}
html[data-lang="en"] body{font-family:Outfit,Hind,system-ui,sans-serif;font-size:16.5px}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--fh);line-height:1.15;margin:0;font-weight:800;letter-spacing:-.01em}
html[data-lang="bn"] h1,html[data-lang="bn"] h2,html[data-lang="bn"] h3{font-family:Anek,Outfit,sans-serif;letter-spacing:0;line-height:1.25}
p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
.wrap{width:min(100% - 32px,var(--maxw));margin-inline:auto}
.narrow{max-width:860px}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--mag);color:#fff;padding:8px 14px;border-radius:8px}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--amb);outline-offset:2px;border-radius:6px}
.ic{flex:none}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone}
.kick{display:inline-flex;align-items:center;gap:8px;font-family:Outfit,Hind;font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mag)}
html[data-lang="bn"] .kick{letter-spacing:.02em;font-size:15px;text-transform:none;font-family:Hind}
.k-chip{padding:7px 14px;border-radius:999px;background:var(--chip);border:1px solid var(--line2);color:var(--amb)}
.fine{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--tx3);margin-top:14px;line-height:1.5}.fine .ic{margin-top:3px}
.fine.center{justify-content:center;text-align:center}
.center{text-align:center;justify-content:center}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 22px;border-radius:14px;font-family:Outfit,Hind;font-weight:700;font-size:16px;border:0;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s,background .25s;white-space:nowrap;position:relative;overflow:hidden}
html[data-lang="bn"] .btn{font-family:Hind;font-weight:700;font-size:16.5px}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-sm{padding:9px 15px;font-size:14.5px;border-radius:11px}
.btn-grad{background:var(--grad);color:#fff;box-shadow:0 10px 26px rgba(20,119,255,.35)}
.btn-grad::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s}
.btn-grad:hover::after{transform:translateX(120%)}
.btn-ghost{background:var(--chip);border:1px solid var(--line2);color:var(--tx)}
.btn-ghost:hover{border-color:var(--mag)}
.btn-ghost-l{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);color:#fff}
.btn-dark{background:#0A1022;color:#fff}
:root[data-theme="dark"] .btn-dark{background:#fff;color:#0A1022}
.btn-light{background:#fff;color:#0A1022}
.w100{width:100%}
.row-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.row-btns.center{justify-content:center}
.pill{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border-radius:12px;background:var(--chip);border:1px solid var(--line);cursor:pointer;font-family:Outfit,Hind;font-weight:700;font-size:14px;transition:border-color .2s,transform .2s}
.pill:hover{border-color:var(--mag)}
.pill.icon{width:40px;padding:0;justify-content:center}
.ib{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#fff;flex:none}
.ib.big{width:62px;height:62px;border-radius:18px}
.ib.mag,.mag .svc-ic{background:linear-gradient(135deg,#3DB2FF,#0A4FE0)}.ib.ora,.ora .svc-ic{background:linear-gradient(135deg,#3DB2FF,#0A4FE0)}.ib.amb,.amb .svc-ic{background:linear-gradient(135deg,#7CD9FF,#1477FF)}
.ib.vio,.vio .svc-ic{background:linear-gradient(135deg,#3B82F6,#0E2A6B)}.ib.tea,.tea .svc-ic{background:linear-gradient(135deg,#2FD0FF,#1477FF)}.ib.aqu,.aqu .svc-ic{background:linear-gradient(135deg,#7CD9FF,#0891B2)}

/* top bar + header */
.topbar{background:linear-gradient(90deg,#0E2A6B,#0A1022);color:#BFE6FF;font-size:13.5px}
.tb{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:36px}
.tb span{display:inline-flex;align-items:center;gap:6px}.tb-r{gap:18px!important}.tb-r a{display:inline-flex;align-items:center;gap:6px}
.hdr{position:sticky;top:0;z-index:50;background:var(--hdr);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.hdr.scrolled{box-shadow:0 10px 30px rgba(0,0,0,.18)}
.hdr-in{display:flex;align-items:center;gap:18px;height:92px;transition:height .3s}
.hdr.scrolled .hdr-in{height:74px}
.brand img{height:76px;width:auto;transition:height .3s}
.hdr.scrolled .brand img{height:62px}
:root[data-theme="dark"] .logo-l,:root[data-theme="light"] .logo-d{display:none}
.nav{display:flex;gap:4px;margin-left:auto}
.nav a{position:relative;padding:9px 13px;border-radius:10px;font-family:Outfit,Hind;font-weight:600;font-size:15.5px;color:var(--tx2);transition:color .2s,background .2s}
html[data-lang="bn"] .nav a{font-family:Hind;font-size:16px}
.nav a:hover{color:var(--tx);background:var(--chip)}
.nav a[aria-current]{color:var(--tx)}
.nav a[aria-current]::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:3px;border-radius:3px;background:var(--grad)}
.hdr-act{display:flex;align-items:center;gap:8px}
:root[data-theme="dark"] .i-moon,:root[data-theme="light"] .i-sun{display:none}
.menu-btn{display:none}.menu-btn .i-x{display:none}.menu-btn[aria-expanded="true"] .i-x{display:block}.menu-btn[aria-expanded="true"] .i-menu{display:none}
.notice{background:var(--card2);border-bottom:1px solid var(--line);font-size:14.5px}
.nt{display:flex;align-items:center;gap:14px;height:40px;overflow:hidden}
.nt b{display:inline-flex;align-items:center;gap:6px;color:var(--mag);flex:none}
.nt-track{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.nt-move{display:flex;gap:48px;width:max-content;animation:mq 40s linear infinite}
.nt-move span{white-space:nowrap}

/* hero */
.hero{position:relative;overflow:hidden;padding:56px 0 70px}
.hero-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hero-bg::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 60% 40%,#000 20%,transparent 70%)}
.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;animation:float 14s ease-in-out infinite}
.o1{width:520px;height:520px;background:var(--mag);right:-120px;top:-160px}
.o2{width:380px;height:380px;background:var(--vio);left:-140px;top:120px;animation-delay:-4s;opacity:.35}
.o3{width:340px;height:340px;background:var(--tea);right:24%;bottom:-200px;animation-delay:-8s;opacity:.28}
:root[data-theme="light"] .orb{opacity:.22}
.stars{position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,#fff,transparent),radial-gradient(1.2px 1.2px at 70% 20%,#fff,transparent),radial-gradient(1.4px 1.4px at 85% 65%,#9FE6FF,transparent),radial-gradient(1px 1px at 40% 80%,#fff,transparent),radial-gradient(1.3px 1.3px at 55% 45%,#7CD9FF,transparent),radial-gradient(1px 1px at 10% 70%,#fff,transparent);opacity:.6;animation:twinkle 5s ease-in-out infinite}
:root[data-theme="light"] .stars{opacity:0}
.hero-in{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(40px,6vw,72px);margin:18px 0 18px}
.h-anim span{display:inline-block;animation:rise .9s var(--ease) both}.h-anim span+span{animation-delay:.15s}
.lead{font-size:clamp(17px,1.6vw,19.5px);color:var(--tx2);max-width:560px}
.lead-s{color:var(--tx2);margin-top:14px;font-size:17.5px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.qtrack{display:flex;align-items:center;gap:8px;margin-top:22px;max-width:520px;padding:7px 7px 7px 14px;border-radius:16px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow)}
.qtrack input{flex:1;min-width:0;border:0;background:none;outline:0;font-family:Outfit,Hind;font-size:15.5px;padding:6px 2px}
.qt-ic{color:var(--ora);display:grid}
.hero-badges{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;padding:0;margin:22px 0 0;color:var(--tx2);font-size:14.5px}
.hero-badges li{display:inline-flex;align-items:center;gap:7px}.hero-badges .ic{color:var(--tea)}
.hero-art{position:relative;aspect-ratio:1;max-width:540px;margin-inline:auto;width:100%}
.hero-logo{position:absolute;inset:16%;filter:drop-shadow(0 30px 60px rgba(20,119,255,.35));animation:bob 6s ease-in-out infinite}
.hero-logo svg{width:100%;height:100%}
.orbit-ring{position:absolute;border-radius:50%;border:1px dashed var(--line2)}
.orbit-ring.r1{inset:4%}.orbit-ring.r2{inset:-4%;border-style:solid;border-color:var(--line);animation:spin 60s linear infinite}
.orbit{position:absolute;inset:4%;animation:spin 40s linear infinite}
.flag{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px;transform:rotate(calc(var(--i) * 360deg / var(--n))) translateY(calc(-1 * min(46vw, 250px))) rotate(calc(var(--i) * -360deg / var(--n)))}
.flag b{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:var(--card);border:1px solid var(--line2);font-size:24px;box-shadow:0 8px 20px rgba(0,0,0,.25);animation:spin 40s linear infinite reverse}
.float-card{position:absolute;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;border-radius:16px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow);font-size:14px;line-height:1.3;animation:bob 5s ease-in-out infinite}
.float-card .ib{width:36px;height:36px;border-radius:11px}
.float-card b{display:block;font-family:Outfit,Hind}.float-card small{color:var(--tx3)}
.fc1{left:-4%;top:18%}.fc2{right:-6%;top:52%;animation-delay:-1.6s}.fc3{left:6%;bottom:4%;animation-delay:-3s}

/* marquee */
.marquee{overflow:hidden;background:var(--grad2);color:#fff;padding:14px 0;transform:rotate(-1.2deg);margin:-6px 0 0;width:100%;box-shadow:0 10px 30px rgba(20,119,255,.25)}
.mq{display:flex;gap:40px;width:max-content;animation:mq 38s linear infinite;font-family:Outfit,Anek;font-weight:700;font-size:19px}
.mq span{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}

/* sections */
.sec{padding:96px 0;position:relative}
.sec-tint{background:var(--tint)}
.sec-dark{background:radial-gradient(circle at 15% 10%,#0E2A6B,#0A1022 50%,#05070D);color:#EEF4FF;overflow:hidden}
.sec-dark .lead-s,.sec-dark p{color:#B7C3D6}
.sh{text-align:center;max-width:720px;margin:0 auto 46px}
.sh h2{font-size:clamp(30px,4vw,46px);margin-top:10px}
.sh p{color:var(--tx2);margin-top:12px;font-size:17.5px}
.sh.light p{color:#B7C3D6}
.sec h2{font-size:clamp(30px,4vw,44px);margin-top:10px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.two.rev>:first-child{order:0}

/* umbrella + services */
.umbrella{max-width:560px;margin:-20px auto 10px}
.umb-svg{width:100%;height:auto;overflow:visible}
.umb-top{transform-origin:300px 130px;transform:scaleY(.05) scaleX(.4);opacity:0;transition:transform 1.2s var(--ease),opacity .6s}
.umb-stick{stroke-dasharray:150;stroke-dashoffset:150;transition:stroke-dashoffset 1s .5s var(--ease)}
.umbrella.in .umb-top{transform:none;opacity:1}.umbrella.in .umb-stick{stroke-dashoffset:0}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:6px}
.svc{position:relative;padding:28px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);overflow:hidden;transition:transform .35s var(--ease),border-color .3s,box-shadow .35s;isolation:isolate}
.svc::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:var(--grad2);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s}
.svc::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-80px;top:-80px;background:radial-gradient(circle,rgba(20,119,255,.22),transparent 70%);z-index:-1;transition:transform .5s}
.svc:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.svc:hover::before{opacity:1}.svc:hover::after{transform:scale(1.5)}
.svc-ic{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.2);transition:transform .4s var(--ease)}
.svc:hover .svc-ic{transform:rotate(-8deg) scale(1.06)}
.svc h3{font-size:22px;margin:18px 0 8px}
.svc p{color:var(--tx2);font-size:16px}
.more{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-weight:700;font-family:Outfit,Hind;font-size:15px;color:var(--mag)}
.tag{position:absolute;top:18px;right:18px;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--grad);color:#fff}

/* visa spotlight */
.country-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.country-chips a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font-weight:600;font-size:15px;transition:background .2s,transform .2s}
.country-chips a:hover{background:rgba(20,119,255,.25);transform:translateY(-2px)}
.country-chips span{font-size:19px}
.route{position:relative}
.route-svg{width:100%;height:auto;overflow:visible}
.dots-map circle{fill:rgba(255,255,255,.12)}
.rt{fill:none;stroke:url(#rg2);stroke-width:2.2;stroke-dasharray:4 6;opacity:.8}
.route.in .rt{animation:dash 1.2s calc(var(--j) * .15s) var(--ease) both}
.pin circle{fill:#2FD0FF;stroke:#05070D;stroke-width:3}
.pin text,.home-pin text{fill:#EEF4FF;font:700 12px Outfit;text-anchor:middle;letter-spacing:.08em}
.route .pin{opacity:0}.route.in .pin{animation:pop .5s calc(.6s + var(--j) * .15s) var(--ease) both}
.home-pin circle{fill:#1E8FFF}.home-pin .pulse{fill:rgba(20,119,255,.35);transform-origin:330px 210px;animation:pulse 2s ease-out infinite}
.plane-path{stroke:none}
.plane{fill:#fff;offset-path:path("M330,210 Q210,40 90,120");offset-rotate:auto;animation:fly 5s ease-in-out infinite}
.steps-mini{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.steps-mini li{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:14px;font-weight:600}
.steps-mini span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--grad);font-size:12.5px;color:#fff}

/* servicing spotlight */
.srv-art{position:relative}
.lap3d{width:100%;max-width:560px;margin-inline:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35));animation:bob 7s ease-in-out infinite}
.ticket-card{position:absolute;right:0;bottom:-10px;width:250px;padding:14px;border-radius:18px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow);font-size:14px}
.tc-h{display:flex;justify-content:space-between;align-items:center;font-family:Outfit;font-weight:800;margin-bottom:8px}.tc-h span{display:inline-flex;gap:6px;align-items:center}
.tc-h em{font-style:normal;font-size:11px;padding:3px 8px;border-radius:999px;background:rgba(20,119,255,.18);color:var(--tea);font-weight:700;animation:blink 1.6s infinite}
.tc-s{display:flex;align-items:center;gap:8px;padding:5px 0;color:var(--tx3)}
.tc-s.done{color:var(--tx)}.tc-s.done .ic{color:var(--tea)}.tc-s.now .ic{color:var(--ora);animation:spin 2.5s linear infinite}
.ticks{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.ticks li{display:flex;gap:9px;align-items:flex-start;font-weight:600;font-size:16px}
.ticks .ic{color:#fff;background:var(--tea);border-radius:50%;padding:3px;width:22px;height:22px;margin-top:2px}

/* why */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.why-c{padding:26px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);transition:transform .3s var(--ease)}
.why-c:hover{transform:translateY(-4px)}
.why-c h3{font-size:19px;margin:16px 0 6px}.why-c p{color:var(--tx2);font-size:15.5px}

/* gallery */
.gal{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gal figure{margin:0;position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.gal img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9;transition:transform .8s var(--ease)}
.gal figure:hover img{transform:scale(1.05)}
.gal figcaption{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:rgba(18,6,15,.75);color:#fff;font-weight:600;font-size:14.5px;backdrop-filter:blur(6px)}

/* faq */
.faq{display:grid;gap:12px}
.faq details{border-radius:16px;background:var(--card);border:1px solid var(--line);overflow:hidden}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;font-weight:700;font-size:17.5px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{transition:transform .3s;color:var(--mag)}
.faq details[open] summary .ic{transform:rotate(180deg)}
.faq details p{padding:0 20px 18px;color:var(--tx2)}

/* page hero */
.phero{position:relative;overflow:hidden;padding:46px 0 64px}
.phero.sm{padding-bottom:46px}
.phero-in{position:relative}
.phero h1{font-size:clamp(34px,5vw,58px);margin:16px 0 14px;max-width:820px}
.two-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
.crumb{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--tx3);margin-bottom:16px}.crumb a:hover{color:var(--mag)}
.ph-art{position:relative}
.chip-f{position:absolute;display:inline-flex;gap:6px;align-items:center;padding:7px 12px;border-radius:12px;background:var(--card);border:1px solid var(--line2);font:700 14px Outfit;box-shadow:var(--shadow);animation:bob 5s ease-in-out infinite}
.chip-f.c1{left:2%;top:12%}.chip-f.c2{right:4%;top:6%;animation-delay:-1.2s}.chip-f.c3{right:10%;bottom:6%;animation-delay:-2.5s}
.chip-f .ic{color:var(--ora)}
.spark{position:absolute;width:14px;height:14px;background:var(--amb);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:twinkle 2.4s ease-in-out infinite}
.spark.s1{left:12%;top:40%}.spark.s2{right:20%;top:30%;animation-delay:-.8s;background:var(--aqu)}.spark.s3{left:40%;bottom:8%;animation-delay:-1.6s}

/* countries */
.cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cc{position:relative;display:flex;flex-direction:column;gap:4px;padding:22px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);transition:transform .3s var(--ease),border-color .3s}
.cc:hover{transform:translateY(-5px);border-color:var(--mag)}
.cc-f{font-size:38px;line-height:1;margin-bottom:8px}.cc b{font-size:19px;font-family:Outfit,Anek}
.cc small{color:var(--tx3);font-size:14px}.cc-a{position:absolute;top:18px;right:18px;color:var(--tx3);transition:transform .3s,color .3s}.cc:hover .cc-a{transform:translate(3px,-3px);color:var(--mag)}

/* timeline */
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative}
.timeline::before{content:"";position:absolute;left:8%;right:8%;top:30px;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}
.timeline li{position:relative;text-align:center;padding:0 6px}
.tl-ic{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 14px;border-radius:20px;background:var(--grad);color:#fff;box-shadow:0 10px 26px rgba(20,119,255,.35);position:relative}
.tl-n{position:absolute;left:calc(50% + 18px);top:-8px;z-index:2;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;color:#0A1022;font:800 13px Outfit}
.timeline h3{font-size:18px;color:#fff}.timeline p{font-size:15px;margin-top:6px}
.extra-visa{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:56px}
.ev{display:flex;gap:12px;padding:18px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.ev b{color:#fff;font-size:16.5px}.ev p{font-size:14.5px;margin-top:3px}

/* checklist tool */
.ck{display:grid;grid-template-columns:320px 1fr;gap:22px;padding:22px;border-radius:26px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.lbl{display:block;font-weight:700;font-size:14px;color:var(--tx3);margin:4px 0 10px;text-transform:uppercase;letter-spacing:.08em}
html[data-lang="bn"] .lbl{text-transform:none;letter-spacing:0;font-size:15px}
.ck-countries{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}
.ck-countries button,.ck-types button{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:var(--chip);border:1px solid var(--line);cursor:pointer;font-weight:600;font-size:14.5px;text-align:left;transition:all .2s}
.ck-countries button span{font-size:19px}
.ck-countries button[aria-checked="true"],.ck-types button[aria-checked="true"]{background:var(--grad);color:#fff;border-color:transparent;box-shadow:0 8px 18px rgba(20,119,255,.3)}
.ck-types{display:flex;flex-wrap:wrap;gap:8px}
.ck-types button[hidden]{display:none}
.ck-main{padding:6px 6px 6px 22px;border-left:1px solid var(--line)}
.ck-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-family:Outfit,Anek;font-size:21px;font-weight:700;margin-bottom:12px}
.ck-flag{font-size:28px;margin-right:6px;vertical-align:middle}
.ck-prog{display:flex;align-items:center;gap:10px;font:700 15px Outfit;color:var(--tx2)}
.ck-prog i{display:block;width:120px;height:8px;border-radius:8px;background:var(--chip);overflow:hidden}
.ck-prog i b{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--tea),var(--aqu));transition:width .4s var(--ease)}
.ck-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ck-list li{animation:rise .45s var(--ease) both}
.ck-list li[hidden]{display:none}
.ck-list label{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);cursor:pointer;transition:background .2s,border-color .2s}
.ck-list label:hover{border-color:var(--line2)}
.ck-list label{position:relative}.ck-list input{position:absolute;opacity:0;pointer-events:none;left:0;top:0;width:1px;height:1px}
.box{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:8px;border:2px solid var(--line2);color:transparent;transition:all .2s;margin-top:1px}
.ck-list input:checked+.box{background:var(--tea);border-color:var(--tea);color:#fff;transform:scale(1.08)}
.ck-list input:checked~span:last-child{color:var(--tx3);text-decoration:line-through;text-decoration-color:var(--tea)}
.ck-list input:focus-visible+.box{outline:3px solid var(--amb);outline-offset:2px}
.ck-foot{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* forms */
.card-form{display:grid;gap:14px;padding:26px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--tx)}
.card-form label>span,.trk-form label>span{display:block;font-weight:700;font-size:14.5px;margin-bottom:6px;color:var(--tx2)}
.card-form input,.card-form select,.card-form textarea,.trk-form input{width:100%;padding:12px 14px;border-radius:12px;border:1.5px solid var(--line2);background:var(--bg);outline:0;transition:border-color .2s,box-shadow .2s}
.card-form input:focus,.card-form select:focus,.card-form textarea:focus,.trk-form input:focus{border-color:var(--mag);box-shadow:0 0 0 4px rgba(20,119,255,.15)}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.seg{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.seg legend{font-weight:700;font-size:14.5px;margin-bottom:6px;color:var(--tx2);padding:0}
.seg label{flex:1 1 auto;position:relative}
.seg input{position:absolute;opacity:0;left:0;top:0;width:1px;height:1px}
.seg label span{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--line2);cursor:pointer;font-weight:600;font-size:14.5px;transition:all .2s;margin:0;color:var(--tx)}
.seg input:checked+span{background:var(--grad);color:#fff;border-color:transparent}
.seg input:focus-visible+span{outline:3px solid var(--amb)}
.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;font-weight:600;font-size:15px}
.alert ul{margin:0;padding-left:18px}
.alert.err{background:rgba(239,68,68,.12);color:#EF4444;border:1px solid rgba(239,68,68,.3)}
.done-card{text-align:center;padding:34px 26px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--tx);animation:pop .6s var(--ease) both}
.done-card .ib{margin:0 auto 14px}.done-card h3{font-size:26px}.done-card p{color:var(--tx2);margin:8px 0 16px}
.tk-code{display:inline-block;font:800 30px Outfit;letter-spacing:.06em;padding:10px 20px;border-radius:14px;border:2px dashed var(--mag);margin:4px 0 6px}

/* servicing page */
.rgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rc{padding:22px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);transition:transform .3s var(--ease)}
.rc:hover{transform:translateY(-4px)}.rc h3{font-size:18px;margin:14px 0 6px}.rc p{font-size:15px;color:var(--tx2)}
.flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,1fr);gap:12px;counter-reset:f}
.flow li{position:relative;text-align:center;padding:22px 10px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.flow li span{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 10px;border-radius:16px;background:var(--grad);color:#fff}
.flow li b{color:#fff;font-size:15.5px}
.flow li:not(:last-child)::after{content:"";position:absolute;right:-10px;top:50%;width:8px;height:8px;border-top:2px solid rgba(255,255,255,.4);border-right:2px solid rgba(255,255,255,.4);transform:translateY(-50%) rotate(45deg)}

/* track */
.trk-form{display:grid;grid-template-columns:1.3fr 1fr auto;gap:12px;align-items:end;max-width:760px;margin-top:20px;padding:18px;border-radius:20px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow)}
.tk{padding:28px;border-radius:26px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.tk-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.tk-top h2{font-family:Outfit!important;font-size:34px;letter-spacing:.04em;margin-top:4px}.tk-top p{color:var(--tx2)}
.tk-st{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;font-weight:700;background:rgba(47,208,255,.14);color:var(--ora)}
.tk-st.st-ready,.tk-st.st-delivered{background:rgba(20,119,255,.15);color:var(--tea)}
.tk-steps{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;position:relative}
.tk-steps li{text-align:center;font-size:13.5px;color:var(--tx3);position:relative}
.tk-steps li::before{content:"";position:absolute;top:21px;left:-50%;right:50%;height:3px;background:var(--line2);z-index:0}
.tk-steps li:first-child::before{display:none}
.tk-steps li.done::before,.tk-steps li.now::before{background:var(--grad)}
.tk-steps span{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;margin:0 auto 8px;border-radius:50%;background:var(--card2);border:2px solid var(--line2)}
.tk-steps li.done span{background:var(--tea);border-color:var(--tea);color:#fff}
.tk-steps li.now span{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 0 0 6px rgba(20,119,255,.18);animation:pulse2 2s infinite}
.tk-steps li.done b,.tk-steps li.now b{color:var(--tx)}
.tk-info{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px;border-radius:18px;background:var(--bg)}
.tk-info small{color:var(--tx3);font-weight:700}.tk-info .full{grid-column:1/-1}
.log-h{font-size:19px;margin:22px 0 10px}
.log{list-style:none;padding:0;margin:0;border-left:2px solid var(--line2)}
.log li{position:relative;padding:4px 0 12px 18px;font-size:15px}
.log li::before{content:"";position:absolute;left:-7px;top:10px;width:12px;height:12px;border-radius:50%;background:var(--mag)}
.log time{display:block;font-size:13px;color:var(--tx3)}
.empty{text-align:center;padding:40px 20px}.empty .ib{margin:0 auto 14px}.empty h3{font-size:24px}.empty p{color:var(--tx2);margin:8px auto 18px;max-width:460px}

/* services page */
.jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.jump a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line2);font-weight:700;font-size:15px;transition:transform .2s}
.jump a:hover{transform:translateY(-2px)}
.jump a.mag .ic{color:var(--mag)}.jump a.ora .ic{color:var(--ora)}.jump a.vio .ic{color:var(--vio)}.jump a.tea .ic{color:var(--tea)}.jump a.amb .ic{color:var(--amb)}.jump a.aqu .ic{color:var(--aqu)}
.grp-h{display:flex;align-items:center;gap:18px;margin-bottom:28px;flex-wrap:wrap}
.grp-h h2{margin:0!important;font-size:clamp(26px,3.4vw,38px)!important}.grp-h p{color:var(--tx2)}
.grp-h .btn{margin-left:auto}
.items{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.it{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-weight:600;font-size:15.5px;transition:transform .25s,border-color .25s}
.it:hover{transform:translateY(-3px)}
.items.vio .ic{color:var(--vio)}.items.tea .ic{color:var(--tea)}.items.amb .ic{color:var(--amb)}.items.aqu .ic{color:var(--aqu)}
.items.vio .it:hover{border-color:var(--vio)}.items.tea .it:hover{border-color:var(--tea)}.items.amb .it:hover{border-color:var(--amb)}.items.aqu .it:hover{border-color:var(--aqu)}

/* contact */
.cgrid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px}
.ct{display:flex;flex-direction:column;gap:4px;padding:22px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);transition:transform .3s var(--ease),border-color .3s}
.ct:hover{transform:translateY(-4px);border-color:var(--mag)}
.ct .ib{margin-bottom:10px}.ct small{color:var(--tx3);font-weight:700}.ct b{font:800 20px Outfit}.ct b.sm{font-size:15.5px;word-break:break-all}
.map-row{align-items:start}
.map{position:relative;border-radius:24px;overflow:hidden;border:1px solid var(--line);min-height:420px;background:var(--card)}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map-btn{position:absolute;left:14px;bottom:14px}
.owner{display:flex;gap:14px;align-items:center;padding:16px;border-radius:20px;background:var(--card);border:1px solid var(--line);margin-bottom:16px}
.owner img{border-radius:50%}.owner small{display:block;color:var(--tx3);font-weight:700}.owner b{display:block;font-size:20px;font-family:Outfit,Anek}.owner span{font-size:14px;color:var(--tx2)}

/* CTA + footer */
.cta-band{padding:0 0 0;position:relative;z-index:2}
.cta-in{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:34px 38px;border-radius:28px;background:var(--grad2);color:#fff;box-shadow:0 24px 50px rgba(20,119,255,.3);transform:translateY(50%)}
.cta-in h2{font-size:clamp(24px,3vw,32px)}.cta-in p{opacity:.92;margin-top:4px}
.cta-btns{display:flex;gap:10px;flex-wrap:wrap}
.ftr{background:#05070D;color:#B7C3D6;padding:120px 0 0;font-size:15.5px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:36px}
.f-brand img{height:62px;width:auto;margin-bottom:14px}
.ftr h3{color:#fff;font-size:17px;margin-bottom:14px}
.ftr ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.ftr a:hover{color:#fff}
.f-c li{display:flex;gap:8px;align-items:flex-start}.f-c .ic{margin-top:4px;color:var(--amb)}
.eiin{display:inline-flex;align-items:center;gap:7px;margin-top:12px;color:var(--tea);font-weight:600}
.f-bot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:22px 0;margin-top:40px;border-top:1px solid rgba(255,255,255,.08);font-size:14px}
.credit a{color:#fff;font-weight:700;border-bottom:1px solid rgba(255,255,255,.35)}.credit a:hover{border-color:var(--amb);color:var(--amb)}
.fab{position:fixed;right:18px;bottom:18px;z-index:60;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;box-shadow:0 12px 30px rgba(37,211,102,.45);transition:transform .25s}
.fab::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;animation:ring 2.4s ease-out infinite}
.fab:hover{transform:scale(1.08)}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--d,0ms)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}

@keyframes rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes float{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.97)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes mq{to{transform:translateX(-50%)}}
@keyframes twinkle{0%,100%{opacity:.6}50%{opacity:.25}}
@keyframes dash{from{stroke-dashoffset:100;opacity:0}to{stroke-dashoffset:0;opacity:.8}}
@keyframes pop{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@keyframes pulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(2.4);opacity:0}}
@keyframes pulse2{0%,100%{box-shadow:0 0 0 0 rgba(20,119,255,.35)}50%{box-shadow:0 0 0 9px rgba(20,119,255,0)}}
@keyframes ring{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.6);opacity:0}}
@keyframes blink{50%{opacity:.4}}
@keyframes fly{0%{offset-distance:0%;opacity:0}10%{opacity:1}85%{opacity:1}100%{offset-distance:100%;opacity:0}}

/* responsive */
@media (max-width:1080px){
  .nav{position:absolute;left:12px;right:12px;top:calc(100% + 8px);flex-direction:column;padding:12px;border-radius:20px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow);transform:translateY(-12px);opacity:0;pointer-events:none;transition:all .3s var(--ease);z-index:70}
  .nav.open{transform:none;opacity:1;pointer-events:auto}
  .nav a{padding:13px 14px;font-size:17px}
  .nav a[aria-current]::after{left:14px;right:auto;width:30px;bottom:6px}
  .hdr-act{margin-left:auto}.menu-btn{display:inline-flex}
  .svc-grid{grid-template-columns:1fr 1fr}.why{grid-template-columns:1fr 1fr}.rgrid,.items,.cgrid,.cgrid4,.extra-visa{grid-template-columns:repeat(2,1fr)}
  .timeline{grid-template-columns:repeat(3,1fr);row-gap:32px}.timeline::before{display:none}
  .flow{grid-template-columns:repeat(3,1fr)}.flow li::after{display:none}
  .ftr-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .hero-in,.two,.two-hero{grid-template-columns:1fr;gap:36px}
  .hero{padding-top:36px}.hero-art{max-width:440px}
  .ck{grid-template-columns:1fr}.ck-main{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}
  .ticks{grid-template-columns:1fr}
  .ticket-card{position:relative;right:auto;bottom:auto;margin:-30px auto 0;width:min(100%,300px)}
  .sec{padding:72px 0}
  .ph-art{max-width:460px;margin:0 auto}
}
@media (max-width:640px){
  body{font-size:16.5px}
  .hide-sm{display:none!important}
  .tb{justify-content:center;font-size:12.5px;flex-wrap:wrap;padding:6px 0;text-align:center}
  .hdr-in{height:66px;gap:10px}.brand img{height:44px}
  .svc-grid,.why,.gal,.rgrid,.items,.cgrid4,.extra-visa,.f2,.tk-info{grid-template-columns:1fr}
  .cgrid{grid-template-columns:1fr 1fr;gap:12px}.cc{padding:16px}.cc-f{font-size:30px}
  .timeline{grid-template-columns:1fr 1fr}
  .flow{grid-template-columns:1fr 1fr}
  .trk-form{grid-template-columns:1fr}
  .tk{padding:18px}.tk-steps{grid-template-columns:repeat(3,1fr);row-gap:16px}.tk-steps li::before{display:none}
  .ftr-grid{grid-template-columns:1fr;gap:26px}
  .cta-in{padding:26px 22px}
  .float-card{font-size:12.5px;padding:7px 10px 7px 7px}.float-card .ib{width:30px;height:30px}
  .fc1{left:0;top:6%}.fc2{right:0;top:56%}.fc3{left:2%;bottom:0}
  .flag{width:36px;height:36px;margin:-18px}.flag b{font-size:18px}
  .card-form{padding:18px}
  .grp-h .btn{margin-left:0}
  .qtrack input{font-size:14.5px}
  .marquee .mq{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}
@media print{
  .topbar,.hdr,.notice,.cta-band,.ftr,.fab,.phero,.sec:not(#checklist){display:none!important}
  body{background:#fff;color:#000}
  #checklist{padding:0}.ck{box-shadow:none;border:0;grid-template-columns:1fr}.ck-side,.ck-foot,.sh p{display:none}
  .ck-main{border:0;padding:0}.ck-list label{border:1px solid #ccc}
  .reveal{opacity:1!important;transform:none!important}
}
.two>*,.two-hero>*,.hero-in>*{min-width:0}
:root[data-theme="light"] .phero .btn-ghost-l,:root[data-theme="light"] .hero .btn-ghost-l{background:var(--chip);border-color:var(--line2);color:var(--tx)}

.flg{display:block;width:30px;height:20px;border-radius:4px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.flag b .flg{width:28px;height:19px}
.country-chips .flg{width:24px;height:16px;border-radius:3px}
.cc-f .flg{width:48px;height:32px;border-radius:6px}
.ck-countries .flg{width:24px;height:16px;border-radius:3px}
.ck-flag{display:inline-block}.ck-flag .flg{width:34px;height:23px;display:inline-block;vertical-align:-4px}
@media (max-width:640px){.flag b .flg{width:22px;height:15px}}

/* sticky header (fallback fixed via JS class) */
.hdr{position:-webkit-sticky;position:sticky;top:0}
/* orbit country names */
.flag{width:auto;height:auto;margin:0;translate:-50% -50%}
.flag b{width:auto;height:auto;padding:5px 11px 5px 6px;border-radius:999px;gap:7px;display:inline-flex;align-items:center;white-space:nowrap}
.flag b em{font-style:normal;font-family:Hind,Outfit;font-weight:700;font-size:13.5px;line-height:1}
.sec-dark2{background:linear-gradient(180deg,#05070D,#0A1022 60%,#05070D);color:#EEF4FF;overflow:hidden}
.sec-dark2 .sh p,.sec-dark2 p{color:#B7C3D6}
/* world map */
.wm{position:relative;padding:20px;border-radius:28px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:1fr 300px;gap:18px}
.wm-top{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.wm-stats{display:flex;align-items:baseline;gap:8px}.wm-stats b{font:800 34px Outfit;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.wm-stats span{color:#B7C3D6;font-weight:600}
.wm-search{flex:1;min-width:220px;display:flex;align-items:center;gap:8px;padding:0 14px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff}
.wm-search input{flex:1;background:none;border:0;outline:0;color:#fff;padding:12px 0;font-size:15.5px}.wm-search input::placeholder{color:#8794AA}
.wm-leg{display:flex;gap:14px;font-size:13.5px;color:#B7C3D6}.wm-leg span{display:inline-flex;align-items:center;gap:6px}
.lg{width:14px;height:10px;border-radius:3px;display:inline-block}.lg.hot{background:linear-gradient(90deg,#1E8FFF,#1477FF)}.lg.all{background:#1A2A4A}
.wm-stage{position:relative}
.wm-svg{width:100%;height:auto;display:block}
.wm-grid line{stroke:rgba(255,255,255,.05);stroke-width:1}
.wm-c path{fill:#1A2A4A;stroke:#05070D;stroke-width:.5;cursor:pointer;transition:fill .25s,opacity .25s}
.wm-c path.hot{fill:#1477FF}
.wm-c path.bd{fill:#1477FF}
.wm-c path:hover,.wm-c path.sel{fill:#2FD0FF}
.wm-c path.hot:hover,.wm-c path.hot.sel{fill:#1477FF}
.wm-arcs path{fill:none;stroke:url(#wmArc);stroke-width:1.6;stroke-dasharray:3 4;opacity:.9;pointer-events:none}
.wm.in .wm-arcs path{animation:dash 1.4s calc(var(--j) * .15s) var(--ease) both}
.wm-dot{fill:#2FD0FF;pointer-events:none}.wm.in .wm-dot{animation:pop .5s calc(.8s + var(--j) * .15s) both}
.wm-hc{fill:#1477FF;stroke:#fff;stroke-width:1.5}.wm-pulse{fill:rgba(20,119,255,.5);transform-box:fill-box;transform-origin:center;animation:pulse 2s ease-out infinite}
.wm-pin{pointer-events:none;transition:opacity .3s}.wm-pin circle{fill:#fff}.wm-pin .wm-pin-o{fill:none;stroke:#fff;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:pulse 1.6s ease-out infinite}
.wm-tip{position:absolute;pointer-events:none;padding:7px 12px;border-radius:10px;background:#fff;color:#0A1022;font-weight:700;font-size:14px;box-shadow:0 10px 24px rgba(0,0,0,.3);opacity:0;transform:translate(-50%,-120%);transition:opacity .15s;white-space:nowrap;z-index:3}
.wm-tip.on{opacity:1}.wm-tip small{display:block;font-weight:600;color:#1477FF;font-size:12px}
.wm-panel{padding:20px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);align-self:stretch}
.wm-p-empty{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.wm-panel small{color:#8794AA;font-weight:700}.wm-panel h3{font-size:28px;color:#fff;margin:4px 0 10px}
.wm-panel .ok{display:flex;gap:8px;align-items:center;color:#7CD9FF!important;font-weight:700}
.ticks.sm{grid-template-columns:1fr;gap:8px;margin-top:14px}.ticks.sm li{font-size:15px}.ticks.sm .ic{width:20px;height:20px}
.wm-chips{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.wm-chips button{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:#fff;cursor:pointer;font-weight:600;font-size:14.5px;transition:background .2s,transform .2s}
.wm-chips button:hover,.wm-chips button.on{background:rgba(20,119,255,.35);transform:translateY(-2px)}
.wm-chips .flg{width:22px;height:15px;border-radius:3px}.wm-chips .ic{color:#2FD0FF}
.wm .fine{grid-column:1/-1;color:#8794AA}
/* local map */
.lm{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:start}
.lm-map{position:relative;padding:18px;border-radius:28px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.lm-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.lm-tools button{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:12px;border:1.5px solid var(--line2);background:var(--chip);cursor:pointer;font-weight:600;font-size:14px;opacity:.55;transition:opacity .2s}
.lm-tools button.on{opacity:1;border-color:var(--mag)}
.dot{width:12px;height:12px;border-radius:50%;display:inline-block}.dot.sc{background:#2563EB}.dot.mk{background:#1477FF}
.lm-svg{width:100%;height:auto;display:block}
.lm-u path{fill:var(--card2);stroke:var(--tx3);stroke-width:1.2;stroke-opacity:.5;cursor:pointer;transition:fill .25s}
.lm-u path:nth-child(odd){fill:color-mix(in srgb,var(--card2) 70%,#1E8FFF 12%)}
.lm-u path:hover,.lm-u path.sel{fill:color-mix(in srgb,#2FD0FF 45%,var(--card2))}
.lm.in .lm-u path{animation:fadeUp .6s calc(var(--i) * 60ms) both}
.lm-lb text{font:700 13px Hind,Outfit;fill:var(--tx2);text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--card);stroke-width:3px}
.pt{cursor:pointer;transition:opacity .3s;transform-box:fill-box;transform-origin:center}.pt circle{stroke:#fff;stroke-width:1.5}.pt path,.pt rect{fill:#fff}
.pt.school circle{fill:#2563EB}.pt.market circle{fill:#1477FF}
.pt:hover circle,.pt:focus circle{stroke-width:3;r:7.5}
.lm.in .pt{animation:pop .45s calc(.5s + var(--i) * 30ms) both}
.lm-svg.hide-school .pt.school,.lm-svg.hide-market .pt.market{opacity:0;pointer-events:none}
.lm-shop .pin{fill:#1E8FFF;stroke:#fff;stroke-width:2}
.lm-shop-l rect{fill:#0A1022}.lm-shop-l text{fill:#fff;font:700 13.5px Hind,Outfit}
.lm-src{font-size:12.5px;color:var(--tx3);margin-top:6px}
.lm-side{display:grid;gap:16px}
.lm-card{padding:18px;border-radius:22px;background:var(--card);border:1px solid var(--line)}
.lm-card h3{font-size:20px;margin-bottom:6px}.lm-card p{color:var(--tx2);font-size:15px}
.lm-d{width:100%;height:auto;margin:6px 0}
.lm-d path{fill:var(--card2);stroke:var(--tx3);stroke-opacity:.5;stroke-width:1;transition:fill .2s}
.lm-d path.on{fill:url(#none);fill:#1E8FFF}.lm-d path:hover{fill:#2FD0FF}
.lm-d text{font:700 11.5px Hind,Outfit;fill:var(--tx2);text-anchor:middle;pointer-events:none}.lm-d text.on{fill:#fff}
.lm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.lm-stats div{padding:14px;border-radius:16px;background:var(--grad);color:#fff;text-align:center}
.lm-stats b{display:block;font:800 26px Outfit,Anek}.lm-stats span{font-size:13.5px;font-weight:600;line-height:1.3;display:block}
.lm-unions{display:flex;flex-wrap:wrap;gap:7px}
.lm-unions button{display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border-radius:999px;border:1px solid var(--line2);background:var(--chip);cursor:pointer;font-weight:600;font-size:14px}
.lm-unions button .ic{color:var(--mag)}.lm-unions button:hover,.lm-unions button.on{border-color:var(--mag);background:rgba(20,119,255,.12)}
.ticks.one{grid-template-columns:1fr;margin-top:0}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:1080px){.wm{grid-template-columns:1fr}.lm{grid-template-columns:1fr}}
@media (max-width:640px){.brand img{height:56px}.hdr.scrolled .brand img{height:48px}.hdr-in{height:74px}.hdr.scrolled .hdr-in{height:64px}
 .flag b{padding:3px 7px 3px 4px;gap:4px}.flag b em{font-size:11px}
 .wm{padding:12px}.wm-leg{display:none}.lm-map{padding:10px}.lm-lb text{font-size:16px}
 .lm-stats b{font-size:21px}}
[hidden]{display:none!important}

/* ===== Training centre: courses, admission wizard, status, results ===== */
.edu-card{display:grid;gap:10px;padding:20px;border-radius:26px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow);position:relative;overflow:hidden}
.edu-card::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--grad2)}
.ec-top{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px dashed var(--line2);margin-bottom:4px}.ec-top b{display:block;font-family:Anek,Outfit;font-size:20px}.ec-top small{color:var(--tx3);font-weight:700}
.edu-card a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;border-radius:16px;background:var(--chip);border:1px solid var(--line);transition:transform .25s var(--ease),border-color .25s}
.edu-card a:hover{transform:translateX(4px);border-color:var(--mag)}.edu-card a b{display:block;font-size:16px}.edu-card a small{color:var(--tx3);font-size:13px;font-family:Outfit}
.edu-card .ib{width:40px;height:40px;border-radius:12px}
.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.course{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .3s var(--ease),border-color .3s}
.course:hover{transform:translateY(-5px);border-color:var(--mag)}
.co-h{display:flex;gap:12px;align-items:center}.co-h h3{font-size:21px}.co-h small{color:var(--tx3);font-weight:600;font-family:Outfit}
.course>p{color:var(--tx2);font-size:15.5px;flex:1}
.co-meta{display:flex;flex-wrap:wrap;gap:8px}.co-meta span{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:var(--chip);border:1px solid var(--line);font-size:13.5px;font-weight:700}
.co-meta .ic{color:var(--amb)}
.course details{border-radius:14px;background:var(--bg);border:1px solid var(--line)}
.course summary{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font-weight:700;font-size:14.5px;list-style:none}.course summary::-webkit-details-marker{display:none}
.course summary .ic:last-child{margin-left:auto;transition:transform .3s}.course details[open] summary .ic:last-child{transform:rotate(180deg)}
.course ol{margin:0;padding:0 14px 12px 34px;font-size:14.5px;color:var(--tx2);display:grid;gap:4px}
.batch-list{margin-top:26px;padding:20px;border-radius:22px;background:var(--card);border:1px dashed var(--line2)}
.batch-list h3{display:flex;align-items:center;gap:8px;font-size:19px;margin-bottom:12px}.batch-list h3 .ic{color:var(--amb)}
.bl{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.bl>div{padding:12px 14px;border-radius:14px;background:var(--chip);display:grid}.bl small{color:var(--tx3)}
.timeline.t4{grid-template-columns:repeat(4,1fr)}
.ticks.big{grid-template-columns:1fr;gap:12px}.ticks.big li{font-size:16.5px}
.form-thumb{display:grid;place-items:center}
.ft-paper{width:min(330px,90%);aspect-ratio:210/297;background:#fff;border-radius:10px;box-shadow:0 30px 60px rgba(0,0,0,.35);padding:22px 24px;display:flex;flex-direction:column;gap:12px;transform:rotate(-4deg);position:relative;color:#111}
.ft-paper img{width:46px;height:46px;object-fit:contain}.ft-paper b{align-self:center;border:2px solid #111;border-radius:20px;padding:2px 18px;font-family:Anek;font-size:17px}
.ft-paper i{display:block;height:9px;border-bottom:2px dotted #8a8a8a}.ft-paper i.s{width:60%}
.ft-paper span{position:absolute;right:-14px;bottom:24px;background:var(--grad);color:#fff;font-weight:800;font-size:14px;padding:6px 14px;border-radius:999px;transform:rotate(4deg);box-shadow:0 10px 20px rgba(47,208,255,.35)}
/* wizard */
.wz-steps{list-style:none;padding:0;margin:0 0 18px;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;counter-reset:s}
.wz-steps li{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;font-size:13.5px;color:var(--tx3);position:relative;cursor:default}
.wz-steps li::before{content:"";position:absolute;top:19px;left:-50%;right:50%;height:3px;background:var(--line2)}.wz-steps li:first-child::before{display:none}
.wz-steps span{position:relative;z-index:1;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font:800 16px Outfit;background:var(--card2);border:2px solid var(--line2)}
.wz-steps li.done span{background:var(--tea);border-color:var(--tea);color:#fff}.wz-steps li.done::before,.wz-steps li.now::before{background:var(--grad)}
.wz-steps li.now span{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 0 0 6px rgba(47,208,255,.18)}.wz-steps li.done b,.wz-steps li.now b{color:var(--tx)}
.wz-steps li.done{cursor:pointer}
.wz-p{border:0;padding:0;margin:0;display:grid;gap:14px;min-width:0}
.js .wz-p{display:none}.js .wz-p.on{display:grid;animation:fadeUp .45s var(--ease) both}
.wz-p legend{display:flex;align-items:center;gap:8px;font:800 21px Anek,Outfit;margin-bottom:6px;padding:0}.wz-p legend .ic{color:var(--amb)}
.wz-hint{font-size:14.5px;color:var(--tx2);background:var(--chip);border-left:3px solid var(--amb);padding:9px 12px;border-radius:10px}
.f3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.caps{text-transform:uppercase}.caps::placeholder{text-transform:none}
.edu-t{display:grid;gap:8px;overflow-x:auto}
.edu-h,.edu-r{display:grid;grid-template-columns:1.3fr .7fr .9fr .9fr 1.3fr;gap:8px;min-width:560px}
.edu-h span{font-size:13px;font-weight:700;color:var(--tx3)}
.card-form .edu-r input{padding:10px 11px}
.co-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.co-pick label{position:relative}.co-pick input{position:absolute;opacity:0;width:1px;height:1px}
.co-pick span{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:16px;border:1.5px solid var(--line2);cursor:pointer;height:100%;transition:all .2s}
.co-pick span .ic{color:var(--amb)}.co-pick small{color:var(--tx3);font-weight:700}
.co-pick input:checked+span{border-color:var(--amb);background:rgba(47,208,255,.1);box-shadow:0 0 0 4px rgba(47,208,255,.15)}
.co-pick input:focus-visible+span{outline:3px solid var(--amb)}
.ph-up{display:grid;grid-template-columns:170px 1fr;gap:18px;align-items:start}
.ph-box{position:relative;display:block;width:170px;aspect-ratio:4/5;border-radius:18px;border:2px dashed var(--line2);background:var(--bg);cursor:pointer;overflow:hidden}
.ph-box input{position:absolute;inset:0;opacity:0;cursor:pointer}
.ph-box span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:10px;color:var(--tx3);pointer-events:none}
.ph-box span b{color:var(--tx);font-size:14.5px}.ph-box span small{font-size:12px}.ph-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.review{display:grid;gap:6px;font-size:14.5px;margin-top:10px}.review div{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:7px 10px;border-radius:10px;background:var(--chip)}.review b{color:var(--tx3);font-weight:700}
.agree{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:14px;background:rgba(20,119,255,.08);border:1px solid rgba(20,119,255,.3);font-size:15px;cursor:pointer}
.agree input{width:20px;height:20px;margin-top:3px;accent-color:var(--ora);flex:none}
.wz-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--line)}
.wz-count{margin-right:auto;margin-left:6px;color:var(--tx3);font-weight:700;font-size:14px;font-family:Outfit}
.js #wzSubmit{display:none}.js .wz.last #wzSubmit{display:inline-flex}.js .wz.last #wzNext{display:none}.js .wz.first #wzPrev{visibility:hidden}
.no-js .wz-nav #wzPrev,.no-js .wz-nav #wzNext{display:none}
.ic.flip{transform:rotate(180deg)}
.field-err{border-color:#EF4444!important;box-shadow:0 0 0 4px rgba(239,68,68,.15)!important}
.wz-msg{display:none}.wz-msg.on{display:flex}
.tk-code.sm{font-size:24px;padding:6px 14px}
.tk-steps.s4{grid-template-columns:repeat(4,1fr)}
.sid{background:linear-gradient(120deg,rgba(47,208,255,.12),rgba(20,119,255,.12));border-radius:14px;padding:12px}
.row-btns.center{justify-content:center}
.tabs{display:inline-flex;gap:6px;padding:5px;border-radius:16px;background:var(--card);border:1px solid var(--line2);margin-top:16px;flex-wrap:wrap}
.tabs a{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:12px;font-weight:700;font-size:15px;color:var(--tx2)}.tabs a.on{background:var(--grad);color:#fff}
.trk-form.one{grid-template-columns:1fr auto}
.msheet{background:#fff;color:#0A1022;border-radius:20px;padding:26px;box-shadow:var(--shadow);border:1px solid var(--line);position:relative;overflow:hidden}
.msheet::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:linear-gradient(90deg,#0E2A6B,#1477FF,#7CD9FF,#1477FF)}
.ms-h{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding-bottom:14px;border-bottom:2px solid #E3EAF3}
.ms-h b{display:block;font:800 22px Anek,Outfit;color:#0A1022}.ms-h span{display:block;font-size:13.5px;font-weight:700;color:#1477FF}.ms-h small{display:block;font-size:13px;color:#56607E}
.ms-h em{font-style:normal;font:800 15px Outfit;letter-spacing:.12em;color:#fff;background:#0E2A6B;padding:7px 14px;border-radius:10px;text-transform:uppercase}
.ms-ttl{text-align:center;font:800 17px Anek,Outfit;margin:14px 0;color:#0E2A6B}
.ms-info{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.ms-info div{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:#F3F6FA;font-size:14px}.ms-info small{font-size:12px;font-weight:700;color:#6B7895}.ms-info b{font-size:15.5px}
.mono{font-family:Outfit;letter-spacing:.04em}
.tblw{overflow-x:auto}
.ms-t{width:100%;border-collapse:collapse;font-size:14.5px;min-width:520px}
.ms-t th{background:#0A1022;color:#fff;padding:9px 8px;font-size:13px;text-align:left}.ms-t th:first-child{border-radius:10px 0 0 10px}.ms-t th:last-child{border-radius:0 10px 10px 0}
.ms-t td{padding:9px 8px;border-bottom:1px solid #E3EAF3;vertical-align:top}.ms-t td small{display:block;color:#8794AA;font-size:12px}
.cbt{display:inline-block;padding:3px 10px;border-radius:999px;font:800 12.5px Outfit;background:#EEF1F7;color:#56607E}.cbt-C{background:#DCEBFF;color:#0A4FE0}.cbt-NYC,.cbt-absent{background:#FDE2E2;color:#B91C1C}
.ms-sum{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:10px;margin-top:14px}
.ms-sum div{padding:12px;border-radius:14px;background:#F3F6FA;display:grid}.ms-sum small{font-size:12px;font-weight:700;color:#6B7895}.ms-sum b{font:800 20px Outfit;display:flex;align-items:center;gap:6px}
.ms-sum .ov.ok{background:linear-gradient(120deg,#1477FF,#3DB2FF);color:#fff}.ms-sum .ov.ok small{color:#DCEBFF}.ms-sum .ov.no{background:#FDE2E2;color:#B91C1C}
.ms-note{font-size:12.5px;color:#56607E;margin-top:12px;line-height:1.55}
.ms-f{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px dashed #D3DDE6;font-size:12.5px;color:#6B7895;font-family:Outfit}
.verify{text-align:center;padding:30px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.verify .ib{margin:0 auto 12px}.verify.ok{border-color:var(--tea)}
.verify h3{font-size:22px}.verify dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;text-align:left;max-width:520px;margin:18px auto 0}.verify dt{color:var(--tx3);font-weight:700}.verify dd{margin:0}
.home-edu{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
.qtabs{display:flex;gap:4px;margin:22px 0 0;flex-wrap:wrap}.qtabs button{border:0;cursor:pointer;padding:8px 14px;border-radius:12px 12px 0 0;background:var(--chip);color:var(--tx2);font-weight:700;font-size:14px;display:inline-flex;align-items:center;gap:6px}
.qtabs button.on{background:var(--card);color:var(--tx);box-shadow:0 -1px 0 var(--line2)}
.qpanes .qtrack{margin-top:0;border-top-left-radius:0}.qpanes .qtrack[hidden]{display:none}
.qtrack.two-in input{min-width:0}
@media (max-width:1080px){.course-grid{grid-template-columns:1fr 1fr}.ms-info{grid-template-columns:1fr 1fr}}
@media (max-width:860px){.home-edu{grid-template-columns:1fr}.timeline.t4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.course-grid,.f3{grid-template-columns:1fr}.wz-steps b{display:none}.ph-up{grid-template-columns:1fr}.ph-box{margin:0 auto}.review div{grid-template-columns:1fr}.ms-sum{grid-template-columns:1fr}.ms-h{grid-template-columns:auto 1fr}.ms-h em{grid-column:1/-1;justify-self:start}.trk-form.one{grid-template-columns:1fr}.timeline.t4{grid-template-columns:1fr}.tk-steps.s4 b{font-size:12px}}
@media print{.topbar,.hdr,.notice,.cta-band,.ftr,.fab,.noprint,.phero{display:none!important}body{background:#fff}.sec{padding:0!important}.msheet{box-shadow:none;border:0;padding:0}.reveal{opacity:1!important;transform:none!important}}
.portal{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:22px}
.portal a{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:14px;border-radius:18px;background:var(--card);border:1px solid var(--line);transition:transform .25s var(--ease),border-color .25s}
.portal a:hover{transform:translateY(-3px);border-color:var(--amb)}
.portal .ib{grid-row:1/3;width:44px;height:44px;border-radius:13px}.portal b{font-size:15.5px;line-height:1.25}.portal small{color:var(--tx3);font-size:12.5px}
.ticket-art{position:relative;min-height:400px}
.tkt{position:absolute;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:min(330px,80%);padding:14px 16px;border-radius:18px;background:var(--card);border:1px solid var(--line2);box-shadow:var(--shadow);animation:bob 6s ease-in-out infinite}
.tkt b{display:block;font-size:16px}.tkt small{color:var(--tx3);font-size:13px}.tkt em{font-style:normal;font:800 13px Outfit;color:var(--amb);padding:4px 10px;border-radius:999px;border:1.5px dashed var(--amb)}
.tkt::after{content:"";position:absolute;right:62px;top:-1px;bottom:-1px;border-left:2px dashed var(--line2)}
.tkt.t1{left:0;top:10px}.tkt.t2{right:0;top:105px;animation-delay:-1.5s}.tkt.t3{left:8%;top:205px;animation-delay:-3s}.tkt.t4{right:4%;top:300px;animation-delay:-4.5s}
@media (max-width:1080px){.portal{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.portal{grid-template-columns:1fr 1fr}.ticket-art{min-height:auto;display:grid;gap:10px}.tkt{position:relative;inset:auto!important;width:100%}}
.ftr-grid>*{min-width:0}.f-c li,.f-c a{overflow-wrap:anywhere}
@media (max-width:640px){.hero-art .fc1,.hero-art .fc2{display:none}}
.f-c .mails{display:grid;gap:2px;min-width:0;font-size:14.5px}.f-c .mails a{overflow-wrap:anywhere}
.hero-logo{border-radius:50%;background:radial-gradient(circle at 50% 42%,#0E2350,#070B16 62%,#05070D);box-shadow:0 0 0 1px rgba(47,208,255,.25),0 30px 70px rgba(10,79,224,.35),inset 0 0 60px rgba(30,143,255,.18);padding:5%}
/* ===== notice board ===== */
.nt-move a{white-space:nowrap}.nt-move a:hover{color:var(--mag)}.nt-all{flex:none;display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:13.5px;color:var(--mag)}
.nb-top{padding:22px 0 6px;position:relative;z-index:2}
.nboard{display:grid;grid-template-columns:1.55fr 1fr;gap:16px}
.nb-main,.nb-side{background:var(--card);border:1px solid var(--line2);border-radius:22px;box-shadow:var(--shadow);padding:18px;position:relative;overflow:hidden}
.nb-main::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--grad)}
.nb-h{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:10px}
.nb-ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--grad);color:#fff;animation:pulse2 2.4s infinite}
.nb-h h2{font-size:22px}.nb-h small{color:var(--tx3);font-size:13.5px}
.nb-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.nb-list a,.nl-c{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:var(--chip);border:1px solid var(--line);transition:transform .25s var(--ease),border-color .25s}
.nb-list a:hover,.nl-c:hover{transform:translateX(4px);border-color:var(--mag)}
.nb-d{display:grid;place-items:center;width:52px;padding:6px 0;border-radius:12px;background:var(--bg);border:1px solid var(--line2);line-height:1.1}.nb-d b{font:800 20px Outfit;color:var(--mag)}.nb-d small{font-size:11.5px;color:var(--tx3);font-weight:700}
.nb-t{display:grid;gap:3px;min-width:0}.nb-t b{font-size:15.5px;line-height:1.35}.nb-t small{color:var(--tx2);font-size:13.5px;line-height:1.45}
.nb-tags{display:flex;flex-wrap:wrap;gap:5px}
.nc{display:inline-flex;align-items:center;gap:4px;font-style:normal;font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:999px;background:var(--chip);border:1px solid var(--line2);color:var(--tx2)}
.nc-admission{background:rgba(20,119,255,.14);color:var(--mag);border-color:transparent}.nc-class{background:rgba(47,208,255,.14);color:#0891B2;border-color:transparent}.nc-exam{background:rgba(37,99,235,.14);color:#3B82F6;border-color:transparent}
.nc-result{background:rgba(16,185,129,.14);color:#059669;border-color:transparent}.nc-holiday{background:rgba(245,158,11,.16);color:#D97706;border-color:transparent}.nc.pin{background:rgba(245,158,11,.16);color:#D97706;border-color:transparent}.nc.new{background:#EF4444;color:#fff;border-color:transparent;animation:pulse2 2s infinite}
:root[data-theme="dark"] .nc-class{color:#7CD9FF}:root[data-theme="dark"] .nc-result{color:#34D399}:root[data-theme="dark"] .nc-holiday,:root[data-theme="dark"] .nc.pin{color:#FBBF24}:root[data-theme="dark"] .nc-exam{color:#93C5FD}
.nb-side h3{display:flex;align-items:center;gap:8px;font-size:18px;margin-bottom:10px}.nb-side h3 .ic{color:var(--amb)}
.kd{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:9px 10px;border-radius:14px;border:1px dashed var(--line2);margin-bottom:8px;transition:border-color .25s}
.kd:hover{border-color:var(--mag)}.kd b{display:block;font-size:14.5px;line-height:1.3}.kd small{color:var(--tx3);font-size:12.5px}
.kd-d{display:grid;place-items:center;width:48px;height:52px;border-radius:12px;background:var(--grad);color:#fff;line-height:1}.kd-d b{font:800 19px Outfit}.kd-d small{color:#fff;font-size:11px;font-weight:700;opacity:.9}
.kd-holiday .kd-d{background:linear-gradient(135deg,#FBBF24,#D97706)}.kd-exam .kd-d{background:linear-gradient(135deg,#60A5FA,#2563EB)}.kd-result .kd-d{background:linear-gradient(135deg,#34D399,#059669)}
.nb-empty{color:var(--tx3);font-size:14.5px;display:flex;gap:6px;align-items:center;padding:8px 0}.nb-empty.sm{font-size:13.5px}
.nb-cta{display:grid;gap:8px;margin-top:12px}
.nl{display:grid;gap:10px}.nl-c{padding:14px}.nl-c .nb-d{width:58px}
.ndoc{background:#fff;color:#0A1022;border-radius:20px;padding:28px;box-shadow:var(--shadow);margin-top:14px;position:relative;overflow:hidden}
.ndoc::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:linear-gradient(90deg,#0A4FE0,#1477FF,#2FD0FF)}
.nd-h{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding-bottom:14px;border-bottom:2px solid #E3EAF3}.nd-h img{border-radius:14px}
.nd-h b{display:block;font:800 20px Anek,Outfit}.nd-h small{color:#56607E;font-size:13px}.nd-h em{font-style:normal;font:800 14px Outfit;letter-spacing:.14em;text-transform:uppercase;background:#0A1022;color:#fff;padding:7px 14px;border-radius:10px}
.nd-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:14px 0 8px;font-size:14px;color:#56607E;font-weight:600}.nd-meta span{display:inline-flex;align-items:center;gap:5px}
.ndoc h1{font-size:28px;color:#0A1022;margin-bottom:10px}.nd-b{font-size:16.5px;line-height:1.8;color:#2C3557}
.nd-f{margin-top:16px;display:grid;gap:10px;justify-items:start}.nd-f img{max-width:100%;border-radius:12px;border:1px solid #E3EAF3}
.nd-sg{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:26px;padding-top:12px;border-top:1px dashed #D3DDE6;font-size:13px;color:#56607E}.nd-sg b{color:#0A1022}
@media (max-width:860px){.nboard{grid-template-columns:1fr}}
@media (max-width:640px){.nb-h{grid-template-columns:auto 1fr}.nb-h .btn{grid-column:1/-1}.nb-list a .ic:last-child,.nl-c>.ic:last-child{display:none}.nb-list a,.nl-c{grid-template-columns:auto 1fr}.nd-h{grid-template-columns:auto 1fr}.nd-h em{display:none}.ndoc{padding:18px}}
@media print{.ndoc{box-shadow:none;margin:0}.crumb{display:none}}
/* ---------- v9: course fee, syllabus, payment ---------- */
.co-fee{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.co-fee div{padding:10px 12px;border-radius:14px;background:var(--chip);border:1px solid var(--line)}
.co-fee small{display:block;font-size:12.5px;color:var(--tx3);font-weight:700}
.co-fee b{font-family:var(--fh);font-size:22px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.course ol.co-syl{list-style:none;padding:0 12px 12px;counter-reset:s;gap:0}
.co-syl li{display:flex;gap:10px;justify-content:space-between;align-items:baseline;padding:7px 2px;border-bottom:1px dashed var(--line2);counter-increment:s}
.co-syl li span::before{content:counter(s) ". ";color:var(--tx3);font-weight:700}
.co-syl li.ex span::before{content:"✓ "}
.co-syl li:last-child{border-bottom:0}.co-syl li.ex{color:var(--tx);font-weight:700}
.co-syl em{font-style:normal;font-weight:800;white-space:nowrap;color:var(--amb);font-size:13.5px}
.co-notes{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;margin-top:22px;padding:14px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.co-notes span{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:14.5px;padding:6px 12px;border-radius:999px;background:var(--chip)}
.co-notes span .ic{color:var(--amb)}
.alert.info{background:rgba(47,208,255,.1);color:var(--tx);border:1px solid rgba(47,208,255,.3)}.alert.info a{color:var(--amb);font-weight:800}
.pay-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pay-pick label{position:relative}.pay-pick input{position:absolute;opacity:0;width:1px;height:1px}
.pay-pick span{display:flex;flex-direction:column;gap:5px;padding:14px;border-radius:16px;border:1.5px solid var(--line2);cursor:pointer;height:100%;transition:all .2s}
.pay-pick span .ic{color:var(--amb)}.pay-pick small{color:var(--tx3);font-weight:600;font-size:12.5px}
.pay-pick input:checked+span{border-color:var(--amb);background:rgba(47,208,255,.1);box-shadow:0 0 0 4px rgba(47,208,255,.15)}
.pay-pick input:focus-visible+span{outline:3px solid var(--amb)}
.pay-box{display:grid;gap:12px;padding:14px;border-radius:16px;background:var(--chip);border:1px solid var(--line)}
.pay-box[hidden]{display:none}.pay-box p{margin:0;display:flex;gap:8px;align-items:flex-start}.pay-box p .ic{color:var(--amb);flex:none;margin-top:2px}
.pay-acc{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.pa{position:relative;display:grid;gap:2px;padding:12px 12px 12px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line);overflow:hidden}
.pa::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--pc)}
.pa b{color:var(--pc);font-family:var(--fh);font-size:17px}.pa .mono{font-size:18px;font-weight:800;letter-spacing:.5px}.pa small{color:var(--tx3);font-weight:700}
.pa-cp{display:inline-flex;align-items:center;gap:5px;justify-self:start;margin-top:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:var(--tx2);font:700 12.5px var(--fb);cursor:pointer}
.pa-cp:hover{color:var(--amb);border-color:var(--amb)}
.pay-steps{margin:0;padding-left:20px;display:grid;gap:4px;font-size:14px;color:var(--tx2)}
.chan{display:flex;flex-wrap:wrap;gap:8px}.chan label{position:relative}.chan input{position:absolute;opacity:0;width:1px;height:1px}
.chan span{display:inline-block;padding:8px 16px;border-radius:999px;border:1.5px solid var(--line2);font-weight:800;cursor:pointer;transition:all .2s}
.chan input:checked+span{background:var(--pc);border-color:var(--pc);color:#fff}.chan input:focus-visible+span{outline:3px solid var(--amb)}
.pay-bank{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;padding:12px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.pay-bank dt{color:var(--tx3);font-weight:700;font-size:13.5px}.pay-bank dd{margin:0;font-weight:700;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.amt-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;font-weight:700;color:var(--tx2)}
.amt-chips button{padding:6px 12px;border-radius:999px;border:1.5px solid var(--line2);background:var(--card);color:var(--tx);font:700 13.5px var(--fb);cursor:pointer}
.amt-chips button b{color:var(--amb)}.amt-chips button:hover{border-color:var(--amb)}
.slip span{display:inline-flex;gap:6px;align-items:center}.slip input{padding:8px}
.pay-done{display:flex;gap:12px;align-items:flex-start;text-align:left;margin:4px auto 16px;max-width:560px;padding:14px 16px;border-radius:16px;background:var(--chip);border:1px solid var(--line)}
.pay-done .ic{color:var(--amb);flex:none;margin-top:2px}.pay-done b{display:block}.pay-done small{color:var(--tx2)}
.pay-st{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-weight:800;font-size:13.5px;background:var(--chip);border:1px solid var(--line2)}
.pay-st.verified{color:#10B981;border-color:rgba(16,185,129,.4)}.pay-st.rejected{color:#EF4444;border-color:rgba(239,68,68,.4)}.pay-st.pending{color:#F59E0B;border-color:rgba(245,158,11,.4)}
@media (max-width:640px){.pay-pick{grid-template-columns:1fr}.pay-pick span{flex-direction:row;flex-wrap:wrap;align-items:center}.pay-pick small{width:100%}}
.pay-later{margin:16px 0;border-radius:16px;background:var(--chip);border:1px solid var(--line)}
.pay-later summary{display:flex;gap:8px;align-items:center;padding:12px 14px;cursor:pointer;font-weight:800;list-style:none}.pay-later summary::-webkit-details-marker{display:none}
.pay-later summary .ic:first-child{color:var(--amb)}.pay-later summary .ic:last-child{margin-left:auto}
.pay-later>*:not(summary){margin:0 14px 12px}.pay-later .pl-form{display:grid;gap:12px;padding:0;background:none;border:0;box-shadow:none}
.card-form .pay-pick label>span{display:flex;flex-direction:column;gap:5px;margin:0;color:var(--tx);font-size:15px}
.card-form .pay-pick label>span b{font-size:15.5px}.card-form .pay-pick label>span small{color:var(--tx3);font-weight:600;font-size:12.5px}
.card-form .chan label>span{display:inline-block;margin:0;color:var(--tx);font-size:14.5px;font-weight:800}
.card-form .chan input:checked+span{color:#fff}
.card-form .slip>span{display:flex;align-items:center;gap:6px}
@media (max-width:640px){.card-form .pay-pick label>span{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 8px}.card-form .pay-pick label>span small{width:100%}}
.eiin .codes{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:6px}.eiin .codes b{color:var(--amb);font-weight:800}
.hero-badges{column-gap:22px}
/* ---------- v11: fee ledger ---------- */
.fee-card{padding:22px;border-radius:22px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:grid;gap:14px}
.fc-top{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.fc-top h2{margin:2px 0}.fc-top p{margin:0;color:var(--tx2)}
.fc-due{padding:12px 16px;border-radius:16px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);text-align:right}
.fc-due small{display:block;font-weight:700;color:var(--tx2)}.fc-due b{font:800 26px var(--fh);color:#EF4444}
.fc-due.clear{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.35)}.fc-due.clear b{color:#10B981}
.fc-bar{height:10px;border-radius:99px;background:var(--chip);overflow:hidden}.fc-bar i{display:block;height:100%;background:var(--grad);border-radius:99px}
.fc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.fc-stats div{padding:12px;border-radius:14px;background:var(--chip);border:1px solid var(--line)}
.fc-stats small{display:block;font-size:12.5px;font-weight:700;color:var(--tx3)}.fc-stats b{font:800 19px var(--fh)}.fc-stats em{display:block;font-style:normal;font-size:12px;color:var(--tx3)}
.fc-stats .ok{color:#10B981}.fc-stats .pe{color:#F59E0B}.fc-stats .du{color:#EF4444}
.fc-next{margin:0;display:flex;gap:8px;align-items:center;padding:10px 14px;border-radius:12px;background:rgba(47,208,255,.1);border:1px solid rgba(47,208,255,.3)}.fc-next .ic{color:var(--amb)}
.fc-h{display:flex;gap:8px;align-items:center;margin:8px 0 0;font-size:17px}.fc-h .ic{color:var(--amb)}
.tbl-wrap{overflow-x:auto}.fee-t{width:100%;border-collapse:collapse;font-size:14.5px}.fee-t th{text-align:left;font-size:12.5px;color:var(--tx3);padding:8px;border-bottom:1px solid var(--line2)}
.fee-t td{padding:9px 8px;border-bottom:1px dashed var(--line2);vertical-align:middle}.fee-t td small{display:block;color:var(--tx3);font-size:12.5px}
.is{display:inline-block;padding:3px 10px;border-radius:99px;font-weight:800;font-size:12.5px;background:var(--chip);border:1px solid var(--line2)}
.is-ok{color:#10B981;border-color:rgba(16,185,129,.4)}.is-part{color:#F59E0B;border-color:rgba(245,158,11,.4)}.is-late{color:#EF4444;border-color:rgba(239,68,68,.4)}.is-open{color:var(--tx2)}
.fee-pay{margin-top:18px;display:grid;gap:12px}.fee-pay h3{display:flex;gap:8px;align-items:center;margin:0}.fee-pay h3 .ic{color:var(--amb)}.fee-pay [hidden]{display:none}
.amt-chips small{color:var(--tx3);font-weight:600}
.plan-pick{display:grid;grid-template-columns:auto 1fr 1fr;gap:10px;align-items:stretch}.plan-pick .lbl{align-self:center;font-weight:800;font-size:14.5px;color:var(--tx2)}
.plan-pick label{position:relative}.plan-pick input{position:absolute;opacity:0;width:1px;height:1px}
.card-form .plan-pick label>span{display:flex;flex-direction:column;gap:2px;margin:0;padding:10px 14px;border-radius:14px;border:1.5px solid var(--line2);cursor:pointer;height:100%;color:var(--tx)}
.card-form .plan-pick label>span small{color:var(--tx3);font-weight:600;font-size:12.5px}
.plan-pick input:checked+span{border-color:var(--amb)!important;background:rgba(47,208,255,.1);box-shadow:0 0 0 4px rgba(47,208,255,.15)}
@media (max-width:640px){.fc-stats{grid-template-columns:1fr 1fr}.plan-pick{grid-template-columns:1fr}}
.in-band{display:flex;gap:22px;align-items:center;padding:24px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.in-band .in-f{flex:none;width:96px;height:96px;border-radius:24px;display:grid;place-items:center;background:var(--chip);border:1px solid var(--line)}
.in-band .in-f svg,.in-band .in-f img{width:64px;height:auto;border-radius:6px}
.in-band h2{margin:4px 0 6px}.in-band p{margin:0 0 12px;color:var(--tx2)}
.ck-sub{margin:6px 0 0;padding-left:4px;list-style:none;display:grid;gap:3px;font-size:.92em;color:var(--tx2)}
@media (max-width:640px){.in-band{flex-direction:column;align-items:flex-start}}
.portal{grid-template-columns:repeat(3,1fr)}@media (max-width:640px){.portal{grid-template-columns:1fr 1fr}}
.pay-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0;padding:12px 14px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.pay-strip .ps-l{display:inline-flex;gap:6px;align-items:center;font-weight:800;color:var(--tx2)}.pay-strip .ps-l .ic{color:var(--amb)}
.pay-strip .ps{display:inline-flex;gap:6px;align-items:baseline;padding:6px 12px;border-radius:999px;border:1.5px solid var(--pc);background:var(--chip)}
.pay-strip .ps b{color:var(--pc);font-family:var(--fh)}.pay-strip .ps .mono{font-weight:800}.pay-strip .ps small{color:var(--tx3);font-weight:700;font-size:12px}
/* ---------- servicing hero: interactive service lab ---------- */
.slab{display:grid;gap:14px;width:100%;max-width:500px;margin-inline:auto}
.sl-orbit{position:relative;aspect-ratio:1;width:100%}
.sl-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sl-ring circle{fill:none}.sl-ring .r1{stroke:var(--line2);stroke-width:1.2}
.sl-ring .r2{stroke:url(#slg);stroke-width:2;stroke-dasharray:6 14;transform-origin:200px 200px;animation:slspin 40s linear infinite;opacity:.7}
.sl-ring .r3{stroke:var(--line);stroke-width:1;stroke-dasharray:2 8}
.sl-beam{stroke:url(#slg);stroke-width:2.2;stroke-linecap:round;opacity:0;stroke-dasharray:6 8;transition:opacity .4s}
.sl-beam.on{opacity:.9;animation:slflow .8s linear infinite}
.sl-comet{transform-origin:200px 200px;animation:slspin 9s linear infinite}.sl-comet circle{fill:#2FD0FF;filter:drop-shadow(0 0 6px #2FD0FF)}
@keyframes slspin{to{transform:rotate(360deg)}}@keyframes slflow{to{stroke-dashoffset:-28}}
.sl-node{position:absolute;width:13.5%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:1.5px solid var(--line2);background:var(--card);color:var(--tx2);
  display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 8px 22px rgba(10,16,34,.12);transition:transform .35s var(--ease),color .3s,border-color .3s,background .3s,box-shadow .3s;
  animation:slpop .6s var(--ease) both;animation-delay:var(--d)}
.sl-node span{display:grid;place-items:center;width:100%;height:100%}.sl-node .ic{width:44%;height:44%}
.sl-node:hover{color:var(--amb);border-color:var(--amb);transform:translate(-50%,-50%) scale(1.08)}
.sl-node.on{color:#fff;border-color:transparent;background:var(--grad);transform:translate(-50%,-50%) scale(1.16);box-shadow:0 0 0 6px rgba(47,208,255,.18),0 12px 30px rgba(20,119,255,.45)}
.sl-node.on::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:2px solid rgba(47,208,255,.55);animation:slping 1.6s ease-out infinite}
.sl-node:focus-visible{outline:3px solid var(--amb);outline-offset:3px}
@keyframes slpop{from{opacity:0;transform:translate(-50%,-50%) scale(.4)}}
@keyframes slping{from{transform:scale(.85);opacity:1}to{transform:scale(1.35);opacity:0}}
.sl-dev{position:absolute;left:27%;top:31%;width:46%;animation:bob 7s ease-in-out infinite}
.sl-screen{position:relative;aspect-ratio:16/10.5;border-radius:12px 12px 4px 4px;background:radial-gradient(120% 90% at 30% 0%,#163a85 0%,#0A1022 55%,#05070D 100%);
  border:5px solid #1b2236;box-shadow:inset 0 0 0 1px rgba(124,217,255,.18),0 18px 40px rgba(10,16,34,.35);overflow:hidden;display:grid;place-items:center}
.sl-scan{position:absolute;left:0;right:0;height:30%;top:-30%;background:linear-gradient(transparent,rgba(47,208,255,.16),transparent);animation:slscan 2.6s linear infinite}
@keyframes slscan{to{top:100%}}
.sl-gauge{position:relative;width:52%;aspect-ratio:1}.sl-gauge>svg{width:100%;height:100%;transform:rotate(-90deg)}
.sl-gauge circle{fill:none;stroke-width:8}.sl-gauge .g0{stroke:rgba(255,255,255,.08)}
.sl-gauge .g1{stroke:#2FD0FF;stroke-linecap:round;stroke-dasharray:314.16;stroke-dashoffset:314.16;filter:drop-shadow(0 0 5px rgba(47,208,255,.7))}
.sl-gauge.done .g1{stroke:#34D399;filter:drop-shadow(0 0 5px rgba(52,211,153,.7))}
.sl-ic{position:absolute;inset:0;display:grid;place-items:center;color:#fff}.sl-ic .ic{width:34%;height:34%;animation:slicon .5s var(--ease)}
@keyframes slicon{from{opacity:0;transform:scale(.6) rotate(-20deg)}}
.sl-pct{position:absolute;right:8%;bottom:8%;color:#BFEFFF;font:800 clamp(12px,2.6cqw,16px) var(--fh);font-size:clamp(11px,1.6vw,15px)}.sl-pct small{opacity:.7;margin-left:1px}
.sl-bars{position:absolute;left:8%;bottom:9%;display:flex;gap:3px;align-items:flex-end;height:16%}
.sl-bars i{width:4px;border-radius:2px;background:#2FD0FF;opacity:.75;animation:sleq 1s ease-in-out infinite}
.sl-bars i:nth-child(2){animation-delay:-.2s}.sl-bars i:nth-child(3){animation-delay:-.45s}.sl-bars i:nth-child(4){animation-delay:-.1s}.sl-bars i:nth-child(5){animation-delay:-.6s}.sl-bars i:nth-child(6){animation-delay:-.3s}
@keyframes sleq{0%,100%{height:20%}50%{height:100%}}
.sl-base{position:relative;height:0;padding-bottom:7%;margin:0 -9%;background:linear-gradient(#d9e2ef,#8d9ab2);clip-path:polygon(4% 0,96% 0,100% 70%,98% 100%,2% 100%,0 70%);border-radius:0 0 10px 10px}
.sl-base span{position:absolute;left:42%;right:42%;top:0;height:28%;background:#6b7895;border-radius:0 0 6px 6px}
:root[data-theme="dark"] .sl-base{background:linear-gradient(#5c6778,#2a3245)}
.sl-card{position:relative;padding:16px 18px;border-radius:20px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.sl-top{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--tx3);font-size:13px}
.sl-dot{width:9px;height:9px;border-radius:50%;background:#F59E0B;box-shadow:0 0 0 4px rgba(245,158,11,.18)}.slab.done .sl-dot{background:#10B981;box-shadow:0 0 0 4px rgba(16,185,129,.18)}
.sl-count{margin-left:auto;font-family:var(--fh)}.sl-count b{color:var(--amb)}
.sl-card h3{margin:6px 0 2px;font-size:20px}.sl-card p{margin:0 0 10px;color:var(--tx2);font-size:14.5px}
.sl-steps{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sl-steps li{display:flex;gap:6px;align-items:center;font-size:13px;font-weight:700;color:var(--tx3);padding:7px 8px;border-radius:10px;background:var(--chip);border:1px solid var(--line);transition:all .3s}
.sl-steps li span{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:var(--line2);color:var(--tx)}
.sl-steps li.now{color:var(--tx);border-color:var(--amb)}.sl-steps li.now span{background:var(--amb);color:#05070D}
.sl-steps li.ok{color:#10B981}.sl-steps li.ok span{background:#10B981;color:#fff}
.sl-prog{height:6px;border-radius:99px;background:var(--chip);overflow:hidden}.sl-prog i{display:block;height:100%;width:0;background:var(--grad);border-radius:99px}
.slab.done .sl-prog i{background:linear-gradient(90deg,#10B981,#34D399)}
.sl-hint{display:flex;gap:6px;align-items:center;margin-top:10px;font-size:12.5px;color:var(--tx3)}.sl-hint .ic{color:var(--amb)}
@media (max-width:1080px){.slab{max-width:460px}}
@media (max-width:640px){.slab{max-width:360px}.sl-node{width:15%}.sl-node.on{transform:translate(-50%,-50%) scale(1.1)}.sl-steps{grid-template-columns:1fr}.sl-card h3{font-size:18px}}
@media (prefers-reduced-motion:reduce){.sl-ring .r2,.sl-comet,.sl-scan,.sl-bars i,.sl-dev,.sl-node.on::after,.sl-beam.on{animation:none!important}}
.brand img{height:68px}.hdr.scrolled .brand img{height:56px}
@media (max-width:1080px){.brand img{height:46px}}
@media (max-width:640px){.brand img{height:50px}.hdr.scrolled .brand img{height:44px}}

/* ===== App layer (installed app / Android & Windows wrappers) ===== */
.appbar,.appsheet{display:none}
html.is-app .appbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;justify-content:space-around;align-items:stretch;gap:2px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:var(--hdr);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border-top:1px solid var(--line)}
.appbar a,.appbar button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;padding:6px 2px;border:0;border-radius:14px;background:none;color:var(--tx3);font:600 12px/1.1 var(--fb);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s,background .2s}
.appbar svg{width:23px;height:23px;transition:transform .25s var(--ease)}
.appbar .on{color:var(--tx);background:linear-gradient(180deg,rgba(30,143,255,.16),rgba(30,143,255,.04))}
.appbar .on svg{color:#1E8FFF;transform:translateY(-1px) scale(1.06)}
.appbar a:active svg,.appbar button:active svg{transform:scale(.9)}
html.is-app body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
html.is-app .fab{bottom:calc(88px + env(safe-area-inset-bottom))}
html.is-app .topbar,html.is-app #menuBtn,html.is-app .hdr-act .btn-grad,html.is-app .no-app{display:none!important}
html.is-app .hdr{padding-top:env(safe-area-inset-top)}
html.is-app body{-webkit-user-select:none;user-select:none}
html.is-app input,html.is-app textarea,html.is-app p,html.is-app td,html.is-app li,html.is-app h1,html.is-app h2,html.is-app h3{-webkit-user-select:text;user-select:text}
html.is-app .appsheet{display:block}
.appsheet[hidden]{display:none!important}
.as-scrim{position:fixed;inset:0;z-index:70;background:rgba(3,6,14,.55);opacity:0;transition:opacity .25s}
.as-panel{position:fixed;left:0;right:0;bottom:0;z-index:71;max-height:86vh;overflow:auto;padding:8px 16px calc(18px + env(safe-area-inset-bottom));background:var(--bg2);border-radius:24px 24px 0 0;border-top:1px solid var(--line2);box-shadow:0 -20px 60px rgba(0,0,0,.35);transform:translateY(104%);transition:transform .28s var(--ease)}
.appsheet.open .as-scrim{opacity:1}.appsheet.open .as-panel{transform:none}
html.sheet-open{overflow:hidden}
.as-grab{width:44px;height:5px;border-radius:9px;background:var(--line2);margin:4px auto 14px;cursor:pointer}
.as-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.as-grid a{display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 4px;border-radius:16px;color:var(--tx2);font-size:13px;line-height:1.25;text-align:center;text-decoration:none;background:var(--chip)}
.as-grid a.on{color:var(--tx);outline:1.5px solid rgba(30,143,255,.55)}
.as-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;color:#fff;background:var(--grad);box-shadow:0 8px 18px rgba(20,119,255,.28)}
.as-ic svg{width:22px;height:22px}
.as-admin{display:flex;align-items:center;gap:14px;margin:14px 0 4px;padding:14px;border-radius:18px;color:var(--tx);text-decoration:none;background:linear-gradient(120deg,rgba(10,42,110,.55),rgba(10,79,224,.35));border:1px solid rgba(47,208,255,.25)}
html[data-theme="light"] .as-admin{background:linear-gradient(120deg,#E6EEFA,#D7E6FF)}
.as-admin .as-ic{background:linear-gradient(140deg,#0A2A6E,#0A4FE0)}
.as-admin>span:nth-child(2){flex:1;display:flex;flex-direction:column}.as-admin small{color:var(--tx3);font-size:12.5px}
.as-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.as-btn{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:8px;border-radius:14px;border:1px solid var(--line2);background:var(--card);color:var(--tx);font:600 13.5px/1.1 var(--fb);text-decoration:none;cursor:pointer}
.as-btn svg{width:18px;height:18px;color:#1E8FFF}
.as-btn.done{border-color:#22C55E}
@media (min-width:700px){html.is-app .appbar{left:50%;right:auto;width:560px;transform:translateX(-50%);bottom:12px;border:1px solid var(--line2);border-radius:22px;padding-bottom:6px;box-shadow:var(--shadow)}.as-panel{left:50%;right:auto;width:600px;transform:translate(-50%,104%)}.appsheet.open .as-panel{transform:translate(-50%,0)}.as-grid{grid-template-columns:repeat(4,1fr)}}
@media (prefers-reduced-motion:reduce){.as-panel,.as-scrim,.appbar svg{transition:none}}

/* ===== App download page ===== */
.apg-top{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;position:relative;z-index:1}
.apg-cta{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 14px}
.apg-ticks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--tx2);font-size:15px}
.apg-ticks li{display:flex;align-items:center;gap:6px}.apg-ticks svg{color:#22C55E}
.apg-phone{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:16px}
.apg-dev{position:relative;width:250px;aspect-ratio:9/18.5;border-radius:38px;padding:10px;background:linear-gradient(150deg,#26324A,#0B1220 55%,#1B2740);box-shadow:0 30px 70px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.08) inset;animation:apgFloat 6s ease-in-out infinite}
.apg-notch{position:absolute;top:16px;left:50%;width:80px;height:20px;margin-left:-40px;border-radius:20px;background:#000;z-index:2}
.apg-scr{height:100%;border-radius:30px;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:44px 12px 10px;background:radial-gradient(120% 60% at 50% 0,#0B1D45,#05070D 60%)}
.apg-bar img{height:30px;width:auto}
.apg-card{padding:12px;border-radius:16px;color:#fff;background:var(--grad2);box-shadow:0 10px 24px rgba(10,79,224,.35)}
.apg-card small{display:block;font-size:10.5px;opacity:.8}.apg-card b{display:block;font-size:16px;line-height:1.3}.apg-card span{font-size:10.5px;opacity:.85}
.apg-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.apg-tiles span{display:flex;flex-direction:column;align-items:center;gap:5px;padding:9px 2px;border-radius:12px;background:rgba(255,255,255,.06);color:#C9D4E6;font-size:10.5px}
.apg-tiles i{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:#fff;background:var(--grad)}
.apg-tab{margin-top:auto;display:flex;justify-content:space-around;padding:9px 4px;border-radius:16px;background:rgba(255,255,255,.07);color:#8794AA}
.apg-tab i.on{color:#2FD0FF}
.apg-qr{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border-radius:18px;background:var(--card);border:1px solid var(--line2);color:var(--tx2);font-size:12.5px;box-shadow:var(--shadow)}
.apg-qr img{width:110px;height:110px;border-radius:8px}
@keyframes apgFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(-1deg)}}
.apg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.apg-pl{position:relative;display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.apg-pl.mine{border-color:rgba(30,143,255,.6);box-shadow:0 0 0 3px rgba(30,143,255,.14),var(--shadow)}
.apg-h{display:flex;align-items:center;gap:14px}.apg-h h3{margin:0;font-size:20px}.apg-h small{color:var(--tx3)}
.apg-you{display:none;margin-left:auto;align-self:flex-start;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;color:#fff;background:var(--grad)}
.apg-pl.mine .apg-you{display:inline-block}
.apg-meta{margin:-6px 0 0;text-align:center;color:var(--tx3);font-size:13px}
.apg-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.apg-steps li{counter-increment:s;position:relative;padding-left:40px;display:flex;flex-direction:column;font-size:15px}
.apg-steps li::before{content:counter(s);position:absolute;left:0;top:1px;width:28px;height:28px;border-radius:9px;display:grid;place-items:center;font:700 14px/1 var(--fh);color:#1E8FFF;background:rgba(30,143,255,.12)}
html[data-lang="bn"] .apg-steps li::before{content:counter(s,bengali)}
.apg-steps span{color:var(--tx2);font-size:14px}
.apg-k{display:inline-grid;place-items:center;width:24px;height:24px;margin:0 2px;vertical-align:-6px;border-radius:7px;color:#1E8FFF;background:rgba(30,143,255,.12)}
.apg-feat{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.apg-f{padding:20px;border-radius:var(--r);background:var(--card);border:1px solid var(--line)}
.apg-f b{display:block;margin:12px 0 4px;font-size:17px}.apg-f p{margin:0;color:var(--tx2);font-size:15px}
.apg-faq{max-width:820px;margin:32px auto 0;display:flex;flex-direction:column;gap:10px}
.apg-faq details{padding:14px 18px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.apg-faq summary{cursor:pointer;font-weight:700}.apg-faq p{margin:8px 0 0;color:var(--tx2)}
@media (max-width:1000px){.apg-grid,.apg-feat{grid-template-columns:1fr 1fr}.apg-top{grid-template-columns:1fr}}
@media (max-width:680px){.apg-grid,.apg-feat{grid-template-columns:1fr}.apg-qr{display:none}.apg-dev{width:210px}.apg-pl{padding:18px}}
html.is-app .apg-hero,html.is-app .apg-faq{display:none}
@media (prefers-reduced-motion:reduce){.apg-dev{animation:none}}
.app-band-sec{padding:28px 0 56px}
.app-band{display:flex;align-items:center;gap:22px;padding:22px 26px;border-radius:24px;background:linear-gradient(120deg,rgba(10,42,110,.5),rgba(10,79,224,.22));border:1px solid rgba(47,208,255,.22)}
html[data-theme="light"] .app-band{background:linear-gradient(120deg,#E6EEFA,#D7E6FF)}
.app-band img{width:84px;height:84px;border-radius:22px;box-shadow:0 12px 28px rgba(10,79,224,.35)}
.app-band h2{margin:0 0 4px;font-size:clamp(20px,2.4vw,26px)}.app-band p{margin:0;color:var(--tx2)}
.app-band>div{flex:1}
@media (max-width:640px){.app-band{flex-direction:column;text-align:center;padding:22px 18px}}
.apg-alt{padding:12px 14px;border-radius:14px;background:var(--chip);font-size:14.5px}.apg-alt summary{cursor:pointer;font-weight:700;color:var(--tx2)}.apg-alt p{margin:8px 0 0;color:var(--tx2)}
