<?php ?>
<!DOCTYPE html>
<html lang="bn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>অনলাইনে প্রথম টাকা আয়</title>
<link href="https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=Hind+Siliguri:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap" rel="stylesheet">
<style>
:root {
  --bg: #070707;
  --card: #111;
  --card2: #161616;
  --border: #1c1c1c;
  --border2: #262626;
  --green: #00e87a;
  --green-glow: #00e87a1a;
  --green-mid: #00e87a40;
  --yellow: #f5c842;
  --white: #f0f0f0;
  --off: #b8b8b8;
  --muted: #4a4a4a;
  --faint: #2e2e2e;
  --r: 14px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--white);
  font-family:'Hind Siliguri',sans-serif;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

/* ── NOISE ── */
body::after{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:9000;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='250'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='250' height='250' filter='url(%23f)' opacity='0.032'/%3E%3C/svg%3E");
  background-size:200px;
}

/* ── CANVAS PARTICLES ── */
#particles{position:fixed;inset:0;pointer-events:none;z-index:0}

/* ── AMBIENT ORBS — fixed, blur, slow drift ── */
.orb{
  position:fixed;border-radius:50%;pointer-events:none;z-index:0;
}
.orb-a{
  width:420px;height:420px;
  background:radial-gradient(circle at 40% 40%,#00e87a 0%,transparent 65%);
  filter:blur(110px);opacity:.13;
  top:-160px;left:-140px;
  animation:orb-a 22s ease-in-out infinite;
}
.orb-b{
  width:320px;height:320px;
  background:radial-gradient(circle at 60% 60%,#f5c842 0%,transparent 65%);
  filter:blur(100px);opacity:.10;
  bottom:-100px;right:-100px;
  animation:orb-b 26s ease-in-out infinite;
}
.orb-c{
  width:240px;height:240px;
  background:radial-gradient(circle at 50% 50%,#3b82f6 0%,transparent 65%);
  filter:blur(90px);opacity:.06;
  top:40%;left:55%;
  animation:orb-c 32s ease-in-out infinite;
}
@keyframes orb-a{
  0%,100%{transform:translate(0,0)}
  33%{transform:translate(50px,70px)}
  66%{transform:translate(-20px,35px)}
}
@keyframes orb-b{
  0%,100%{transform:translate(0,0)}
  40%{transform:translate(-40px,-55px)}
  70%{transform:translate(25px,-15px)}
}
@keyframes orb-c{
  0%,100%{transform:translate(0,0)}
  50%{transform:translate(-70px,50px)}
}

/* ── HERO ── */
.hero{
  min-height:100svh;
  /* Three-zone: top bar | flex spacer | bottom content */
  display:grid;
  grid-template-rows:auto 1fr auto;
  padding:0;
  position:relative;overflow:hidden;
}

/* hero bg layers — all absolute inside hero */
.hero-spotlight-top{
  position:absolute;
  top:0;left:0;right:0;margin:0 auto;
  width:min(500px,100%);height:60%;
  background:radial-gradient(ellipse 80% 55% at 50% 0%,#00e87a18 0%,transparent 70%);
  pointer-events:none;z-index:1;
  animation:spot-breathe 5s ease-in-out infinite;
  will-change:opacity;
}
@keyframes spot-breathe{
  0%,100%{opacity:1}
  50%{opacity:.45}
}
.hero-spotlight-left{
  position:absolute;
  bottom:15%;left:-60px;
  width:260px;height:260px;
  background:radial-gradient(ellipse at 0% 100%,#00e87a12 0%,transparent 70%);
  pointer-events:none;z-index:1;
}
.hero-spotlight-right{
  position:absolute;
  top:20%;right:-40px;
  width:200px;height:200px;
  background:radial-gradient(ellipse at 100% 0%,#f5c84210 0%,transparent 70%);
  pointer-events:none;z-index:1;
}
.hero-grid{
  position:absolute;inset:0;z-index:1;
  background-image:
    linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:linear-gradient(to bottom,transparent 0%,black 30%,black 65%,transparent 100%);
}

/* top bar row */
.hero-topbar{
  position:relative;z-index:3;
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 24px 0;
}
.hero-pill{
  display:inline-flex;align-items:center;gap:7px;
  background:#00e87a0d;border:1px solid #00e87a28;
  padding:5px 12px 5px 8px;border-radius:99px;
}
.hero-pill-dot{
  width:6px;height:6px;border-radius:50%;background:var(--green);
  box-shadow:0 0 7px var(--green);
  animation:blink 2.4s ease-in-out infinite;
}
@keyframes blink{0%,100%{opacity:1;box-shadow:0 0 7px var(--green)}50%{opacity:.2;box-shadow:none}}
.hero-pill-text{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--green);letter-spacing:.4px}

/* corner rate badge */
.hero-corner{text-align:right}
.hero-corner-val{
  font-family:'Syne',sans-serif;font-size:11px;font-weight:700;
  color:var(--green);background:#00e87a0d;border:1px solid #00e87a22;
  padding:4px 10px;border-radius:6px;display:inline-block;
  animation:rate-pulse 3s ease-in-out infinite;
}
@keyframes rate-pulse{0%,100%{border-color:#00e87a1a}50%{border-color:#00e87a50}}
.hero-corner-label{
  font-family:'DM Mono',monospace;font-size:8px;
  color:var(--muted);letter-spacing:1px;margin-top:3px;display:block;
}

/* middle spacer — empty, just creates vertical breathing room */
.hero-spacer{z-index:2}

/* bottom content zone */
.hero-content{
  position:relative;z-index:3;
  padding:0 24px 48px;
}

/* eyebrow */
.hero-eyebrow{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:3px;color:var(--muted);text-transform:uppercase;
  margin-bottom:14px;
}

/* headline — smaller on tiny screens, grows with space */
.hero-h1{
  font-family:'Syne',sans-serif;
  font-size:clamp(46px,13.5vw,96px);
  font-weight:800;line-height:.9;
  letter-spacing:-2.5px;color:var(--white);
  margin-bottom:10px;
}
.hero-h1 .g{
  color:var(--green);
  text-shadow:0 0 50px #00e87a50;
}

/* bangla subtitle — tighter, no line-height blowout */
.hero-h1-bn{
  font-family:'Hind Siliguri',sans-serif;
  font-size:clamp(16px,4.5vw,26px);
  font-weight:600;line-height:1.25;
  color:var(--off);
  margin-bottom:18px;
  padding-bottom:18px;
  border-bottom:1px solid var(--border);
}

/* subtext */
.hero-sub{
  font-size:13px;color:var(--muted);line-height:1.85;
  font-weight:400;margin-bottom:0;
}
.hero-sub strong{color:var(--off);font-weight:600}

/* scroll hint */
.hero-scroll{
  margin-top:32px;display:flex;align-items:center;gap:12px;
}
.hero-scroll-line{
  width:64px;height:1px;
  background:linear-gradient(to right,var(--green),transparent);
  transform-origin:left center;
  animation:line-grow 2.2s ease-in-out infinite;
  will-change:transform;
}
@keyframes line-grow{
  0%,100%{transform:scaleX(.6);opacity:.35}
  50%{transform:scaleX(1);opacity:1}
}
.hero-scroll-text{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2px;color:var(--faint);
}

/* ── SHARED UTILS ── */
.wrap{padding:0 22px}
.section{padding:60px 22px}
.label-row{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.label-line{flex:1;height:1px;background:var(--border2)}
.label-text{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2.5px;color:var(--muted);text-transform:uppercase;white-space:nowrap;
}
.sec-title{
  font-family:'Syne',sans-serif;font-size:clamp(26px,7vw,40px);
  font-weight:800;line-height:1.05;letter-spacing:-1px;margin-bottom:6px;
}
.sec-sub{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:28px}

.divider{height:1px;background:linear-gradient(to right,transparent,var(--border2),transparent);margin:0 22px}

/* ── LIVE TICKER ── */
.ticker-bar{
  background:var(--card);border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  padding:9px 0;overflow:hidden;position:relative;
}
.ticker-track{
  display:flex;gap:0;
  animation:ticker 28s linear infinite;
  width:max-content;
}
.ticker-item{
  display:flex;align-items:center;gap:8px;
  padding:0 28px;border-right:1px solid var(--border2);
  white-space:nowrap;
}
.ticker-key{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2px;color:var(--muted);text-transform:uppercase;
}
.ticker-val{
  font-family:'Syne',sans-serif;font-size:12px;
  font-weight:700;color:var(--green);
}
.ticker-sep{color:var(--faint);font-size:10px}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ── MODULES ── */
.modules{display:flex;flex-direction:column;gap:10px}

.mod-card{
  background:var(--card);border:1px solid var(--border);
  border-radius:var(--r);padding:17px 15px;
  display:grid;grid-template-columns:48px 1fr auto;
  align-items:center;gap:12px;
  text-decoration:none;color:inherit;
  position:relative;overflow:hidden;
  transition:border-color .25s,background .25s,transform .15s;
  -webkit-tap-highlight-color:transparent;
}
/* shimmer sweep — opacity approach works on both hover and tap */
.mod-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.04) 50%,transparent 70%);
  opacity:0;transition:opacity .3s;
  pointer-events:none;z-index:1;
}
.mod-card:hover::before,.mod-card:active::before{opacity:1}
.mod-card:active{transform:scale(.985)}
.mod-card.is-active{border-color:var(--green);background:#0b1810}
.mod-card.is-active::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(110deg,#00e87a0a,transparent 65%);
  pointer-events:none;z-index:0;
}

/* locked / upcoming */
.mod-card.locked{cursor:default}
.mod-card.locked:active{transform:none}
.mod-lock-content{
  position:relative;z-index:1;
  display:contents;
}
/* blur overlay on locked name+desc */
.mod-name-blur,.mod-desc-blur{
  filter:blur(4px);
  user-select:none;
  transition:filter .3s;
  color:var(--off);
}
.mod-card.locked:hover .mod-name-blur{filter:blur(3.5px)}

.mod-icon-wrap{
  display:flex;flex-direction:column;align-items:center;gap:4px;
}
.mod-idx{
  font-family:'Syne',sans-serif;font-size:10px;font-weight:700;
  color:var(--faint);letter-spacing:.5px;line-height:1;
}
.mod-card.is-active .mod-idx{color:var(--green)}
.mod-card.locked .mod-idx{color:var(--faint)}

.mod-name{
  font-family:'Syne',sans-serif;font-size:14px;font-weight:700;
  margin-bottom:3px;line-height:1.2;
}
.mod-desc{font-size:11.5px;color:var(--muted);line-height:1.45}

.mod-pip{
  font-family:'DM Mono',monospace;font-size:8px;font-weight:500;
  padding:3px 8px;border-radius:99px;letter-spacing:.5px;white-space:nowrap;
  flex-shrink:0;
}
.pip-live{background:var(--green);color:#000}
.pip-lock{
  background:transparent;color:var(--faint);
  border:1px solid var(--border2);
  display:flex;align-items:center;gap:4px;
}

/* ── GMAIL SECTION ── */
.gmail-section{padding:0 22px 72px}

.mod-tag{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid var(--border2);border-radius:7px;
  padding:4px 11px;margin-bottom:20px;
}
.mod-tag-num{font-family:'DM Mono',monospace;font-size:9px;color:var(--green);letter-spacing:1px}
.mod-tag-sep{width:1px;height:10px;background:var(--border2)}
.mod-tag-label{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted);letter-spacing:1px}

.gmail-title{
  font-family:'Syne',sans-serif;
  font-size:clamp(36px,10vw,60px);font-weight:800;
  line-height:.95;letter-spacing:-2px;margin-bottom:12px;
}
.gmail-title span{color:var(--green);text-shadow:0 0 40px #00e87a44}
.gmail-sub{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:28px}

/* ── EARNINGS CARD ── */
.earn-card{
  background:var(--card);border:1px solid var(--border2);
  border-radius:var(--r);padding:22px 20px;
  margin-bottom:12px;position:relative;overflow:hidden;
}
.earn-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(to right,transparent,var(--green),transparent);
}
/* animated scan line — transform only, no left reflow */
.earn-card::after{
  content:'';position:absolute;top:0;left:0;
  width:60%;height:100%;
  background:linear-gradient(90deg,transparent,#00e87a07,transparent);
  animation:scan 4.5s ease-in-out infinite;pointer-events:none;
  transform:translateX(-110%);
  will-change:transform;
}
@keyframes scan{
  0%{transform:translateX(-110%)}
  100%{transform:translateX(290%)}
}

.earn-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}
.earn-label{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin-bottom:6px;
}
.earn-amount{
  font-family:'Syne',sans-serif;
  font-size:clamp(28px,8vw,48px);font-weight:800;
  line-height:1;color:var(--green);letter-spacing:-1px;
  animation:amount-glow 3s ease-in-out infinite;
}
@keyframes amount-glow{
  0%,100%{text-shadow:0 0 30px #00e87a44}
  50%{text-shadow:0 0 60px #00e87a88,0 0 120px #00e87a22}
}
.earn-unit{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.6}
.earn-icon{
  width:44px;height:44px;background:var(--green-glow);
  border:1px solid var(--green-mid);border-radius:10px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  animation:icon-spin-border 6s linear infinite;
}
@keyframes icon-spin-border{
  0%{box-shadow:0 0 0 0 #00e87a00}
  50%{box-shadow:0 0 12px 2px #00e87a33}
  100%{box-shadow:0 0 0 0 #00e87a00}
}
.earn-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:8px;border-top:1px solid var(--border);padding-top:16px;
}
.earn-stat{text-align:center;padding:6px 0}
.earn-stat-val{
  font-family:'Syne',sans-serif;font-size:20px;font-weight:800;
  color:var(--yellow);line-height:1;
}
.earn-stat-label{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.4}

/* ── PRICE CARD ── */
.price-card{
  background:var(--card);border:1px solid var(--border2);
  border-radius:var(--r);overflow:hidden;margin-bottom:12px;
}
.price-head{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;
  padding:10px 16px;background:#0d0d0d;border-bottom:1px solid var(--border);
}
.price-head span{
  font-family:'DM Mono',monospace;font-size:8px;
  letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;
}
.price-row{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;
  padding:13px 16px;border-bottom:1px solid var(--border);
  align-items:center;transition:background .2s;
}
.price-row:last-child{border-bottom:none}
.price-row:hover{background:#00e87a05}
.price-row .pl{font-size:12px;color:var(--off)}
.price-row .pu{font-family:'DM Mono',monospace;font-size:11px;color:var(--green);font-weight:500}
.price-row .pb{font-family:'Syne',sans-serif;font-size:12px;font-weight:700;color:var(--yellow)}

/* ── BOX ── */
.info-box{
  background:#00e87a07;border:1px solid #00e87a1e;
  border-left:2px solid var(--green);border-radius:var(--r);
  padding:15px 17px;margin-bottom:12px;
}
.info-box-head{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.info-box-title{font-family:'Syne',sans-serif;font-size:12px;font-weight:700;color:var(--green)}
.info-box p{font-size:13px;color:#888;line-height:1.9}
.info-box p strong{color:var(--white);font-weight:600}

.warn-box{
  background:#f5c84208;border:1px solid #f5c84220;
  border-left:2px solid var(--yellow);border-radius:var(--r);
  padding:15px 17px;margin-bottom:12px;
}
.warn-title{
  font-family:'Syne',sans-serif;font-size:12px;font-weight:700;
  color:var(--yellow);margin-bottom:6px;
  display:flex;align-items:center;gap:7px;
}
.warn-box p{font-size:13px;color:#888;line-height:1.9}

/* ── WHAT IS THIS ── */
.what-card{
  background:var(--card);border:1px solid var(--border);
  border-radius:var(--r);padding:20px 18px;margin-bottom:12px;
}
.what-card p{font-size:13px;color:#888;line-height:2}
.what-card p strong{color:var(--off);font-weight:600}

/* ── VIDEO BUTTON ── */
.video-block{margin-bottom:12px}
.video-label-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.video-label{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2px;color:var(--muted);text-transform:uppercase;
}
.video-btn{
  display:flex;align-items:stretch;
  background:var(--card2);border:1px solid var(--border2);
  border-radius:var(--r);overflow:hidden;
  text-decoration:none;color:inherit;
  transition:border-color .25s,transform .15s,box-shadow .25s;
  position:relative;
}
.video-btn:hover{
  border-color:var(--green-mid);
  box-shadow:0 0 30px #00e87a15;
}
.video-btn:active{transform:scale(.98)}
.video-thumb{
  width:100px;min-height:88px;flex-shrink:0;
  background:linear-gradient(135deg,#0b1a10 0%,#080f09 100%);
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
.video-thumb-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(0,232,122,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,232,122,.06) 1px,transparent 1px);
  background-size:12px 12px;
}
.play-ring{
  position:relative;z-index:1;
  width:40px;height:40px;
}
.play-ring-svg{
  position:absolute;inset:0;
  animation:ring-spin 6s linear infinite;
}
.play-circle-inner{
  position:absolute;inset:5px;
  background:var(--green);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
@keyframes ring-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.video-info{padding:15px 16px;flex:1;display:flex;flex-direction:column;justify-content:center;gap:4px}
.video-title{
  font-family:'Syne',sans-serif;font-size:13px;font-weight:700;
  color:var(--white);line-height:1.35;
}
.video-meta{
  font-family:'DM Mono',monospace;font-size:10px;
  color:var(--muted);letter-spacing:.3px;
}
.video-cta{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--green);color:#000;
  font-family:'DM Mono',monospace;font-size:8px;font-weight:500;
  letter-spacing:.5px;padding:3px 9px;border-radius:99px;
  margin-top:6px;width:fit-content;
}

/* ── CTA ── */
.cta-wrap{margin-bottom:12px}
.cta-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:var(--green);color:#000;
  font-family:'Syne',sans-serif;font-size:15px;font-weight:800;
  padding:18px 24px;border-radius:99px;
  text-decoration:none;width:100%;
  letter-spacing:-.2px;
  transition:transform .15s,box-shadow .25s;
  position:relative;overflow:hidden;
}
.cta-btn::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);
  transform:translateX(-100%);
  animation:btn-shine 3s ease-in-out infinite;
}
@keyframes btn-shine{0%,70%{transform:translateX(-100%)}100%{transform:translateX(200%)}}
.cta-btn:active{transform:scale(.97)}
.cta-btn:hover{box-shadow:0 0 40px #00e87a55}
.cta-micro{
  text-align:center;margin-top:10px;
  font-family:'DM Mono',monospace;font-size:9px;color:var(--faint);letter-spacing:1px;
}

/* ── FOOTER ── */
footer{
  padding:34px 22px 60px;
  display:flex;flex-direction:column;align-items:center;gap:10px;
}
.footer-logo{
  font-family:'Syne',sans-serif;font-size:22px;font-weight:800;
  color:var(--green);letter-spacing:-1px;
}
.footer-sub{font-size:12px;color:var(--faint);text-align:center;line-height:1.9}

/* ── REVEAL ── */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.vis{opacity:1;transform:none}

/* stagger — children start hidden */
.stagger>*{
  opacity:0;transform:translateY(14px);
  transition:opacity .45s ease,transform .45s ease;
  transition-delay:0ms;
}
/* when parent gets .vis, children animate in with cascading delays */
.stagger.vis>*:nth-child(1){opacity:1;transform:none;transition-delay:40ms}
.stagger.vis>*:nth-child(2){opacity:1;transform:none;transition-delay:110ms}
.stagger.vis>*:nth-child(3){opacity:1;transform:none;transition-delay:180ms}
.stagger.vis>*:nth-child(4){opacity:1;transform:none;transition-delay:250ms}
.stagger.vis>*:nth-child(5){opacity:1;transform:none;transition-delay:320ms}

/* ── REVEAL MODULE GATE ── */
.reveal-gate{margin-bottom:12px}

/* the locked teaser block */
.gate-locked{
  background:var(--card);border:1px solid var(--border2);
  border-radius:var(--r);overflow:hidden;position:relative;
}
.gate-blur-preview{
  padding:20px 18px 22px;
  filter:blur(5px);
  user-select:none;pointer-events:none;
  opacity:.5;
}
.gate-blur-preview p{font-size:13px;color:#aaa;line-height:1.9}

/* frosted overlay on top of blurred preview */
.gate-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 0%,#111 55%);
  display:flex;flex-direction:column;align-items:center;justify-content:flex-end;
  padding:20px 18px;gap:10px;
}
.gate-overlay-label{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2.5px;color:var(--muted);text-transform:uppercase;
}
.gate-reveal-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:var(--green);color:#000;
  font-family:'Syne',sans-serif;font-size:14px;font-weight:800;
  padding:15px 22px;border-radius:99px;
  border:none;cursor:pointer;width:100%;
  letter-spacing:-.2px;position:relative;overflow:hidden;
  transition:transform .15s,box-shadow .2s;
  -webkit-tap-highlight-color:transparent;
}
.gate-reveal-btn::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-100%);
  animation:btn-shine 2.8s ease-in-out infinite;
}
.gate-reveal-btn:active{transform:scale(.97)}
.gate-reveal-btn:hover{box-shadow:0 0 30px #00e87a44}

/* ad loading state (hidden initially) */
.gate-loading{
  display:none;
  flex-direction:column;align-items:center;
  gap:16px;padding:32px 22px;text-align:center;
}
.gate-loading.show{display:flex}

.gate-spinner{
  width:42px;height:42px;position:relative;
}
.gate-spinner::before,.gate-spinner::after{
  content:'';position:absolute;inset:0;border-radius:50%;
}
.gate-spinner::before{
  border:2px solid var(--border2);
}
.gate-spinner::after{
  border:2px solid transparent;
  border-top-color:var(--green);
  border-right-color:var(--green);
  animation:spin 0.8s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}

.gate-loading-title{
  font-family:'Syne',sans-serif;font-size:16px;font-weight:800;
  color:var(--white);line-height:1.2;
}
.gate-loading-sub{
  font-size:12px;color:var(--muted);line-height:1.9;max-width:260px;
}
.gate-loading-sub strong{color:var(--off);font-weight:600}

.gate-progress{
  width:100%;height:3px;background:var(--border2);
  border-radius:99px;overflow:hidden;
}
.gate-progress-bar{
  height:100%;width:0%;background:var(--green);
  border-radius:99px;
  transition:width .15s linear;
  box-shadow:0 0 8px var(--green);
}
.gate-progress-label{
  font-family:'DM Mono',monospace;font-size:9px;
  color:var(--muted);letter-spacing:1px;margin-top:2px;
}

/* after-reveal content (hidden until revealed) */
.gate-content{display:none}
.gate-content.show{display:block}

/* ── RESPONSIVE ── */
@media(max-width:360px){
  .hero-h1{font-size:42px;letter-spacing:-2px}
  .hero-h1-bn{font-size:15px}
  .hero-content{padding:0 18px 40px}
  .hero-topbar{padding:18px 18px 0}
}
@media(min-width:420px){
  .hero-h1{font-size:clamp(52px,14vw,96px)}
  .earn-amount{font-size:40px}
  .video-thumb{width:110px;min-height:92px}
}
@media(min-width:540px){
  .hero-h1{font-size:76px;letter-spacing:-3.5px}
  .hero-content{padding:0 28px 52px}
  .hero-topbar{padding:26px 28px 0}
  .earn-amount{font-size:44px}
  .earn-grid{gap:14px}
  .price-row .pl,.price-row .pu,.price-row .pb{font-size:13px}
  .video-thumb{width:120px;min-height:96px}
}
@media(min-width:640px){
  body{max-width:540px;margin:0 auto}
  .section,.gmail-section,.ticker-bar{padding-left:28px;padding-right:28px}
  .section{padding-left:28px;padding-right:28px}
  .divider{margin-left:28px;margin-right:28px}
}
</style>
</head>
<body>

<canvas id="particles"></canvas>
<div class="orb orb-a"></div>
<div class="orb orb-b"></div>
<div class="orb orb-c"></div>

<!-- ══ HERO ══ -->
<section class="hero">
  <!-- bg layers -->
  <div class="hero-grid"></div>
  <div class="hero-spotlight-top"></div>
  <div class="hero-spotlight-left"></div>
  <div class="hero-spotlight-right"></div>

  <!-- row 1: top bar -->
  <div class="hero-topbar">
    <div class="hero-pill">
      <div class="hero-pill-dot"></div>
      <span class="hero-pill-text">লাইভ মডিউল চলছে</span>
    </div>
    <div class="hero-corner">
      <div class="hero-corner-val">১ USD = ১২৮৳</div>
      <div class="hero-corner-label">আজকের রেট</div>
    </div>
  </div>

  <!-- row 2: spacer (pushes content down naturally) -->
  <div class="hero-spacer"></div>

  <!-- row 3: main content -->
  <div class="hero-content">
    <div class="hero-eyebrow">অনলাইন ইনকাম · বাংলাদেশ</div>
    <h1 class="hero-h1">EARN<br>YOUR<br><span class="g">FIRST $</span></h1>
    <div class="hero-h1-bn">অনলাইনে প্রথম<br>টাকা আয়</div>
    <p class="hero-sub">
      সত্যিকারের পদ্ধতি। <strong>কোনো ফাঁকা কথা নেই।</strong><br>
      ধাপে ধাপে শিখে আজই তোমার প্রথম ইনকাম শুরু করো।
    </p>
    <div class="hero-scroll">
      <div class="hero-scroll-line"></div>
      <span class="hero-scroll-text">নিচে স্ক্রল করো</span>
    </div>
  </div>
</section>

<!-- ══ TICKER ══ -->
<div class="ticker-bar">
  <div class="ticker-track" id="ticker">
    <div class="ticker-item"><span class="ticker-key">প্রতি Gmail</span><span class="ticker-sep">·</span><span class="ticker-val">$0.145–$0.170</span></div>
    <div class="ticker-item"><span class="ticker-key">১ USD</span><span class="ticker-sep">·</span><span class="ticker-val">১২৮ ৳</span></div>
    <div class="ticker-item"><span class="ticker-key">মাসিক আয়</span><span class="ticker-sep">·</span><span class="ticker-val">৬,৪০০–২০,০০০৳</span></div>
    <div class="ticker-item"><span class="ticker-key">শুরুর খরচ</span><span class="ticker-sep">·</span><span class="ticker-val">০ টাকা</span></div>
    <div class="ticker-item"><span class="ticker-key">পেমেন্ট</span><span class="ticker-sep">·</span><span class="ticker-val">অটোমেটিক</span></div>
    <div class="ticker-item"><span class="ticker-key">মডিউল</span><span class="ticker-sep">·</span><span class="ticker-val">০১ লাইভ</span></div>
    <!-- duplicate for seamless loop -->
    <div class="ticker-item"><span class="ticker-key">প্রতি Gmail</span><span class="ticker-sep">·</span><span class="ticker-val">$0.145–$0.170</span></div>
    <div class="ticker-item"><span class="ticker-key">১ USD</span><span class="ticker-sep">·</span><span class="ticker-val">১২৮ ৳</span></div>
    <div class="ticker-item"><span class="ticker-key">মাসিক আয়</span><span class="ticker-sep">·</span><span class="ticker-val">৬,৪০০–২০,০০০৳</span></div>
    <div class="ticker-item"><span class="ticker-key">শুরুর খরচ</span><span class="ticker-sep">·</span><span class="ticker-val">০ টাকা</span></div>
    <div class="ticker-item"><span class="ticker-key">পেমেন্ট</span><span class="ticker-sep">·</span><span class="ticker-val">অটোমেটিক</span></div>
    <div class="ticker-item"><span class="ticker-key">মডিউল</span><span class="ticker-sep">·</span><span class="ticker-val">০১ লাইভ</span></div>
  </div>
</div>

<!-- ══ MODULES ══ -->
<section class="section mods-section reveal">
  <div class="label-row">
    <span class="label-text">সকল মডিউল</span>
    <div class="label-line"></div>
  </div>
  <div class="sec-title">কী কী শিখবে?</div>
  <p class="sec-sub">প্রতিটি মডিউল আলাদা ইনকাম সোর্স। একটা দিয়ে শুরু করো।</p>

  <div class="modules stagger">

    <!-- 01 LIVE -->
    <a href="#gmail" class="mod-card is-active">
      <div class="mod-icon-wrap">
        <div class="mod-idx">০১</div>
        <svg width="18" height="18" viewBox="0 0 24 24" fill="none">
          <rect x="2" y="4" width="20" height="16" rx="2" stroke="#00e87a" stroke-width="1.5"/>
          <path d="M2 7l10 7 10-7" stroke="#00e87a" stroke-width="1.5" stroke-linecap="round"/>
        </svg>
      </div>
      <div>
        <div class="mod-name">Gmail রেন্ট ও বিক্রি</div>
        <div class="mod-desc">অ্যাকাউন্ট তৈরি করো, বট দিয়ে বেচো</div>
      </div>
      <span class="mod-pip pip-live">Live</span>
    </a>

    <!-- 02 LOCKED -->
    <div class="mod-card locked">
      <div class="mod-icon-wrap">
        <div class="mod-idx">০২</div>
        <svg width="18" height="18" viewBox="0 0 24 24" fill="none">
          <rect x="5" y="11" width="14" height="10" rx="2" stroke="#2e2e2e" stroke-width="1.5"/>
          <path d="M8 11V7a4 4 0 018 0v4" stroke="#2e2e2e" stroke-width="1.5" stroke-linecap="round"/>
        </svg>
      </div>
      <div>
        <div class="mod-name mod-name-blur">সোশ্যাল মিডিয়া ফ্লিপিং</div>
        <div class="mod-desc mod-desc-blur">পুরনো অ্যাকাউন্ট কিনে বড় করে বেচো</div>
      </div>
      <span class="mod-pip pip-lock">
        <svg width="8" height="8" viewBox="0 0 24 24" fill="none"><rect x="5" y="11" width="14" height="10" rx="2" stroke="#333" stroke-width="2"/><path d="M8 11V7a4 4 0 018 0v4" stroke="#333" stroke-width="2" stroke-linecap="round"/></svg>
        শীঘ্রই
      </span>
    </div>

    <!-- 03 LOCKED -->
    <div class="mod-card locked">
      <div class="mod-icon-wrap">
        <div class="mod-idx">০৩</div>
        <svg width="18" height="18" viewBox="0 0 24 24" fill="none">
          <rect x="5" y="11" width="14" height="10" rx="2" stroke="#2e2e2e" stroke-width="1.5"/>
          <path d="M8 11V7a4 4 0 018 0v4" stroke="#2e2e2e" stroke-width="1.5" stroke-linecap="round"/>
        </svg>
      </div>
      <div>
        <div class="mod-name mod-name-blur">AI মাইক্রো সার্ভিস</div>
        <div class="mod-desc mod-desc-blur">AI কন্টেন্ট ও অটোমেশন বিক্রি করো</div>
      </div>
      <span class="mod-pip pip-lock">
        <svg width="8" height="8" viewBox="0 0 24 24" fill="none"><rect x="5" y="11" width="14" height="10" rx="2" stroke="#333" stroke-width="2"/><path d="M8 11V7a4 4 0 018 0v4" stroke="#333" stroke-width="2" stroke-linecap="round"/></svg>
        শীঘ্রই
      </span>
    </div>

    <!-- 04 LOCKED -->
    <div class="mod-card locked">
      <div class="mod-icon-wrap">
        <div class="mod-idx">০৪</div>
        <svg width="18" height="18" viewBox="0 0 24 24" fill="none">
          <rect x="5" y="11" width="14" height="10" rx="2" stroke="#2e2e2e" stroke-width="1.5"/>
          <path d="M8 11V7a4 4 0 018 0v4" stroke="#2e2e2e" stroke-width="1.5" stroke-linecap="round"/>
        </svg>
      </div>
      <div>
        <div class="mod-name mod-name-blur">ডিজিটাল অ্যাসেট আর্বিট্রাজ</div>
        <div class="mod-desc mod-desc-blur">ডোমেইন ও টেমপ্লেট ফ্লিপ করো</div>
      </div>
      <span class="mod-pip pip-lock">
        <svg width="8" height="8" viewBox="0 0 24 24" fill="none"><rect x="5" y="11" width="14" height="10" rx="2" stroke="#333" stroke-width="2"/><path d="M8 11V7a4 4 0 018 0v4" stroke="#333" stroke-width="2" stroke-linecap="round"/></svg>
        শীঘ্রই
      </span>
    </div>

    <!-- 05 LOCKED -->
    <div class="mod-card locked">
      <div class="mod-icon-wrap">
        <div class="mod-idx">০৫</div>
        <svg width="18" height="18" viewBox="0 0 24 24" fill="none">
          <rect x="5" y="11" width="14" height="10" rx="2" stroke="#2e2e2e" stroke-width="1.5"/>
          <path d="M8 11V7a4 4 0 018 0v4" stroke="#2e2e2e" stroke-width="1.5" stroke-linecap="round"/>
        </svg>
      </div>
      <div>
        <div class="mod-name mod-name-blur">ফ্রিল্যান্স ফাস্ট-ট্র্যাক</div>
        <div class="mod-desc mod-desc-blur">৭ দিনে প্রথম ক্লায়েন্ট পাও</div>
      </div>
      <span class="mod-pip pip-lock">
        <svg width="8" height="8" viewBox="0 0 24 24" fill="none"><rect x="5" y="11" width="14" height="10" rx="2" stroke="#333" stroke-width="2"/><path d="M8 11V7a4 4 0 018 0v4" stroke="#333" stroke-width="2" stroke-linecap="round"/></svg>
        শীঘ্রই
      </span>
    </div>

  </div>
</section>

<div class="divider"></div>

<!-- ══ GMAIL MODULE ══ -->
<section class="gmail-section" id="gmail" style="padding-top:60px">

  <div class="mod-tag reveal">
    <span class="mod-tag-num">MOD·01</span>
    <div class="mod-tag-sep"></div>
    <span class="mod-tag-label">লাইভ মডিউল</span>
  </div>

  <div class="reveal">
    <div class="gmail-title">Gmail<br><span>রেন্ট</span> ও বিক্রি</div>
    <p class="gmail-sub">ফ্রি Google অ্যাকাউন্ট তৈরি করে প্রতিটা বেচো — বট সব সামলাবে।</p>
  </div>

  <!-- earnings -->
  <div class="earn-card reveal">
    <div class="earn-top">
      <div>
        <div class="earn-label">// মাসিক আয়ের সম্ভাবনা</div>
        <div class="earn-amount" id="earn-counter">৬,৪০০–২০,০০০৳</div>
        <div class="earn-unit">প্রতি মাস · স্কেলযোগ্য · বিনিয়োগ ছাড়া</div>
      </div>
      <div class="earn-icon">
        <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
          <path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z" stroke="#00e87a" stroke-width="1.5" stroke-linejoin="round"/>
        </svg>
      </div>
    </div>
    <div class="earn-grid">
      <div class="earn-stat">
        <div class="earn-stat-val">০৳</div>
        <div class="earn-stat-label">শুরুতে খরচ</div>
      </div>
      <div class="earn-stat">
        <div class="earn-stat-val" id="counter-24">২৪ঘণ্টা</div>
        <div class="earn-stat-label">প্রথম বিক্রি</div>
      </div>
      <div class="earn-stat">
        <div class="earn-stat-val">∞</div>
        <div class="earn-stat-label">স্কেলের সুযোগ</div>
      </div>
    </div>
  </div>

  <!-- what -->
  <div class="what-card reveal">
    <div class="label-row" style="margin-bottom:12px">
      <span class="label-text">এটা কী?</span>
      <div class="label-line"></div>
    </div>
    <p>সারা বিশ্বের ব্যবসা ও ডেভেলপারদের বাল্কে Gmail দরকার — <strong>টেস্টিং, মার্কেটিং, ভেরিফিকেশন</strong>-এর জন্য। তুমি তৈরি করো, GmailFarmerBot বেচে দেয়। চাহিদা সারাবছর।</p>
  </div>

  <!-- price -->
  <div class="reveal">
    <div class="label-row" style="margin-bottom:14px">
      <span class="label-text">প্রতি Gmail-এর দাম</span>
      <div class="label-line"></div>
    </div>
    <div class="price-card">
      <div class="price-head">
        <span>ধরন</span><span>USD</span><span>টাকা</span>
      </div>
      <div class="price-row">
        <span class="pl">সর্বনিম্ন দর</span>
        <span class="pu">$0.145</span>
        <span class="pb">≈ ১৮.৬৳</span>
      </div>
      <div class="price-row">
        <span class="pl">সর্বোচ্চ দর</span>
        <span class="pu">$0.170</span>
        <span class="pb">≈ ২১.৮৳</span>
      </div>
      <div class="price-row">
        <span class="pl">১০০টি বিক্রিতে</span>
        <span class="pu">$14.5–$17</span>
        <span class="pb">≈ ১,৮৫৬–২,১৭৬৳</span>
      </div>
      <div class="price-row">
        <span class="pl">৫০০টি বিক্রিতে</span>
        <span class="pu">$72.5–$85</span>
        <span class="pb">≈ ৯,২৮০–১০,৮৮০৳</span>
      </div>
    </div>

    <div class="info-box">
      <div class="info-box-head">
        <svg width="13" height="13" viewBox="0 0 24 24" fill="none">
          <circle cx="12" cy="12" r="10" stroke="#00e87a" stroke-width="1.5"/>
          <path d="M12 8v5M12 16h.01" stroke="#00e87a" stroke-width="1.5" stroke-linecap="round"/>
        </svg>
        <span class="info-box-title">দ্রুত হিসাব</span>
      </div>
      <p>প্রতিদিন ২০টি → মাসে ৬০০টি → আয় প্রায় <strong>৮,৭০০–১০,৫০০৳</strong></p>
    </div>
  </div>

  <!-- ══ REVEAL GATE ══ -->
  <div class="reveal-gate reveal">

    <!-- LOCKED STATE -->
    <div class="gate-locked" id="gate-locked">
      <!-- blurred teaser of what's inside -->
      <div class="gate-blur-preview">
        <p>Gmail তৈরির প্রক্রিয়া, ধাপে ধাপে ভিডিও গাইড, সাবমিট করার সম্পূর্ণ পদ্ধতি এবং Telegram Bot-এ সরাসরি লিঙ্ক পাবে এখানে। সবকিছু বাংলায় ব্যাখ্যা করা আছে।</p>
      </div>
      <!-- overlay with unlock button -->
      <div class="gate-overlay">
        <span class="gate-overlay-label">বিষয়বস্তু আনলক করো</span>
        <button class="gate-reveal-btn" onclick="startReveal()">
          <svg width="16" height="16" viewBox="0 0 24 24" fill="none">
            <rect x="5" y="11" width="14" height="10" rx="2" stroke="#000" stroke-width="2"/>
            <path d="M8 11V7a4 4 0 018 0v4" stroke="#000" stroke-width="2" stroke-linecap="round"/>
          </svg>
          মডিউল রিভিল করো
        </button>
      </div>
    </div>

    <!-- LOADING STATE (shown after button click) -->
    <div class="gate-loading" id="gate-loading">
      <div class="gate-spinner"></div>
      <div>
        <div class="gate-loading-title">বিজ্ঞাপন লোড হচ্ছে…</div>
        <p class="gate-loading-sub">
          তোমাকে রিডাইরেক্ট করা হচ্ছে।<br>
          <strong>পেজটি দেখার পর এই পেজে ফিরে এসো</strong> — মডিউল স্বয়ংক্রিয়ভাবে আনলক হয়ে যাবে।
        </p>
      </div>
      <div style="width:100%">
        <div class="gate-progress">
          <div class="gate-progress-bar" id="gate-bar"></div>
        </div>
        <div class="gate-progress-label" id="gate-prog-label">অপেক্ষা করো…</div>
      </div>
    </div>

    <!-- REVEALED CONTENT (hidden until unlocked) -->
    <div class="gate-content" id="gate-content">

      <!-- VIDEO -->
      <div class="video-block" style="margin-bottom:12px">
        <div class="video-label-row">
          <span class="video-label">টিউটোরিয়াল ভিডিও</span>
          <div class="label-line"></div>
        </div>
        <a href="https://t.me/+h2lcGiPxZoAxZTVl" target="_blank" class="video-btn">
          <div class="video-thumb">
            <div class="video-thumb-grid"></div>
            <div class="play-ring">
              <svg class="play-ring-svg" viewBox="0 0 40 40" fill="none">
                <circle cx="20" cy="20" r="18" stroke="#00e87a" stroke-width="1" stroke-dasharray="6 4" opacity="0.5"/>
              </svg>
              <div class="play-circle-inner">
                <svg width="12" height="12" viewBox="0 0 24 24" fill="#000"><path d="M8 5v14l11-7z"/></svg>
              </div>
            </div>
          </div>
          <div class="video-info">
            <div class="video-title">Gmail তৈরি ও সাবমিটের<br>সম্পূর্ণ প্রক্রিয়া</div>
            <div class="video-meta">ভিডিও গাইড · ধাপে ধাপে · বাংলায়</div>
            <div class="video-cta">
              <svg width="8" height="8" viewBox="0 0 24 24" fill="#000"><path d="M8 5v14l11-7z"/></svg>
              এখন দেখো
            </div>
          </div>
        </a>
      </div>

      <!-- WARNING -->
      <div class="warn-box" style="margin-bottom:12px">
        <div class="warn-title">
          <svg width="13" height="13" viewBox="0 0 24 24" fill="none">
            <path d="M12 2L2 20h20L12 2z" stroke="#f5c842" stroke-width="1.5" stroke-linejoin="round"/>
            <path d="M12 9v5M12 17h.01" stroke="#f5c842" stroke-width="1.5" stroke-linecap="round"/>
          </svg>
          সতর্কতা
        </div>
        <p>বাল্ক ক্রিয়েশনে নিজের IP ব্যবহার করো না। প্রতিটি অ্যাকাউন্টে আলাদা ডিভাইস বা ব্রাউজার প্রোফাইল ব্যবহার করো। রিকভারি ইনফো সুরক্ষিত রাখো।</p>
      </div>

      <!-- CTA -->
      <div class="cta-wrap">
        <div class="label-row" style="margin-bottom:14px">
          <span class="label-text">আজই শুরু করো</span>
          <div class="label-line"></div>
        </div>
        <p style="font-size:12px;color:var(--muted);margin-bottom:16px;line-height:1.9">Seller হিসেবে রেজিস্ট্রেশন ফ্রি। ১০ মিনিটে প্রথম লিস্টিং রেডি।</p>
        <a href="https://t.me/GmailFarmerBot?start=6551849729" target="_blank" class="cta-btn">
          <svg width="16" height="16" viewBox="0 0 24 24" fill="none">
            <path d="M22 2L11 13M22 2L15 22l-4-9-9-4 20-7z" stroke="#000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
          </svg>
          Telegram-এ এখনই শুরু করো
        </a>
        <div class="cta-micro">@GmailFarmerBot · Automated · Instant Payouts</div>
      </div>

    </div><!-- /gate-content -->
  </div><!-- /reveal-gate -->

</section>

<div class="divider"></div>
<footer>
  <div class="footer-logo">EARN $</div>
  <div class="footer-sub">আরও মডিউল শীঘ্রই আসছে।<br>সত্যিকারের পদ্ধতি। সত্যিকারের টাকা।</div>
</footer>

<script>
/* ── PARTICLES ── */
(function(){
  const c=document.getElementById('particles');
  const ctx=c.getContext('2d');
  let W,H,pts=[];
  function resize(){
    W=c.width=window.innerWidth;
    H=c.height=window.innerHeight;
  }
  resize();
  window.addEventListener('resize',resize,{passive:true});
  function mkPt(){
    return{
      x:Math.random()*W,y:Math.random()*H,
      vx:(Math.random()-.5)*.25,vy:(Math.random()-.5)*.25,
      r:Math.random()*1.1+.3,
      a:Math.random(),da:(Math.random()-.5)*.006,
      green:Math.random()>.72
    };
  }
  for(let i=0;i<50;i++)pts.push(mkPt());
  function draw(){
    ctx.clearRect(0,0,W,H);
    pts.forEach(p=>{
      p.x+=p.vx; p.y+=p.vy; p.a+=p.da;
      if(p.a<=0||p.a>=1) p.da*=-1;
      if(p.x<0||p.x>W) p.vx*=-1;
      if(p.y<0||p.y>H) p.vy*=-1;
      ctx.beginPath();
      ctx.arc(p.x,p.y,p.r,0,Math.PI*2);
      ctx.fillStyle=p.green
        ?`rgba(0,232,122,${p.a*.45})`
        :`rgba(255,255,255,${p.a*.1})`;
      ctx.fill();
    });
    /* connect nearby green particles with faint lines */
    for(let i=0;i<pts.length;i++){
      if(!pts[i].green) continue;
      for(let j=i+1;j<pts.length;j++){
        if(!pts[j].green) continue;
        const d=Math.hypot(pts[i].x-pts[j].x,pts[i].y-pts[j].y);
        if(d<110){
          ctx.beginPath();
          ctx.strokeStyle=`rgba(0,232,122,${(1-d/110)*.055})`;
          ctx.lineWidth=.5;
          ctx.moveTo(pts[i].x,pts[i].y);
          ctx.lineTo(pts[j].x,pts[j].y);
          ctx.stroke();
        }
      }
    }
    requestAnimationFrame(draw);
  }
  draw();
})();

/* ── SCROLL REVEAL ── */
const obs = new IntersectionObserver(entries=>{
  entries.forEach(e=>{
    if(e.isIntersecting){
      e.target.classList.add('vis');
      obs.unobserve(e.target); /* fire once */
    }
  });
},{threshold:0.04, rootMargin:'0px 0px -20px 0px'});

document.querySelectorAll('.reveal,.stagger').forEach(el=>obs.observe(el));

/* ── MODULE CLICK ── */
document.querySelectorAll('.mod-card[href]').forEach(c=>{
  c.addEventListener('click',()=>{
    document.querySelectorAll('.mod-card').forEach(x=>x.classList.remove('is-active'));
    c.classList.add('is-active');
  });
});
/* ── REVEAL GATE ── */
const REVEALED_KEY = 'mod01_revealed';

function startReveal() {
  const locked  = document.getElementById('gate-locked');
  const loading = document.getElementById('gate-loading');
  const bar     = document.getElementById('gate-bar');
  const label   = document.getElementById('gate-prog-label');

  // swap panels
  locked.style.display  = 'none';
  loading.classList.add('show');

  // animate progress bar — redirect fires at 3 s
  const steps = [
    { to: 25,  ms: 600,  txt: 'অপেক্ষা করো…'          },
    { to: 55,  ms: 800,  txt: 'বিজ্ঞাপন লোড হচ্ছে…'  },
    { to: 80,  ms: 700,  txt: 'প্রায় হয়ে গেছে…'       },
    { to: 100, ms: 500,  txt: 'সম্পন্ন!'               },
  ];

  let delay = 0;
  steps.forEach(step => {
    setTimeout(() => {
      bar.style.width = step.to + '%';
      label.textContent = step.txt;
    }, delay);
    delay += step.ms;
  });

  // redirect current tab after 3 seconds (never blocked by browser)
  setTimeout(() => {
    window.location.href = 'https://omg10.com/4/6297651';
  }, 3000);

  // reveal content fires if user comes back (sessionStorage check on load handles it)
  // also set a fallback reveal in case they don't leave
  setTimeout(() => {
    loading.classList.remove('show');
    revealContent();
  }, delay + 200);
}

function revealContent() {
  const content = document.getElementById('gate-content');
  content.classList.add('show');
  // smooth scroll to it
  setTimeout(() => content.scrollIntoView({ behavior: 'smooth', block: 'start' }), 80);
  // remember across page reloads
  try { sessionStorage.setItem(REVEALED_KEY, '1'); } catch(e){}
}

// auto-reveal if already unlocked this session
(function(){
  try {
    if (sessionStorage.getItem(REVEALED_KEY)) {
      document.getElementById('gate-locked').style.display = 'none';
      revealContent();
    }
  } catch(e){}
})();
</script>
</body>
</html>

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-HN3Z03MHCG"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-HN3Z03MHCG');
</script>