:root{
            --green:#1B690A;
            --green-dark:#0d4b05;
            --purple:#7309B5;
            --purple-dark:#52067f;
            --light:#f5fbf3;
            --text:#1b2419;
            --muted:#667060;
            --white:#fff;
            --shadow:0 12px 35px rgba(19,70,13,.12);
            --radius:20px;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{
            font-family:"Noto Sans Bengali",system-ui,sans-serif;
            color:var(--text);
            background:#fff;
            line-height:1.75;
        }
        a{text-decoration:none;color:inherit}
        img{max-width:100%;display:block}
        .container{width:min(1180px,92%);margin:auto}

        /* Topbar */
        .topbar{
            background:var(--purple);
            color:#fff;
            font-size:14px;
        }
        .topbar-inner{
            min-height:42px;display:flex;align-items:center;
            justify-content:space-between;gap:15px;flex-wrap:wrap;
        }
        .top-items{display:flex;gap:22px;flex-wrap:wrap}
        .top-item{display:flex;align-items:center;gap:7px;opacity:.96}
        .top-item span:first-child{font-size:16px}

        /* Brand banner */
        .brand{
            position:relative;overflow:hidden;
            background:linear-gradient(135deg,#fff 0%,#f1faef 60%,#e9f7e5 100%);
            border-bottom:1px solid #dcebd8;
        }
        .brand::before,.brand::after{
            content:"";position:absolute;border-radius:50%;filter:blur(1px);
            opacity:.14;pointer-events:none;
        }
        .brand::before{width:260px;height:260px;background:var(--purple);right:-80px;top:-100px}
        .brand::after{width:220px;height:220px;background:var(--green);left:-100px;bottom:-130px}
        .brand-inner{
            position:relative;z-index:1;min-height:175px;
            display:flex;align-items:center;justify-content:center;gap:25px;
            padding:20px 0;
        }
        .logo{
            width:100px;height:100px;object-fit:contain;
            background:#fff;border-radius:50%;padding:4px;
            box-shadow:0 8px 25px rgba(0,0,0,.12);
        }
        .brand-copy{text-align:center}
        .brand-copy h1{
            color:var(--green-dark);font-size:clamp(22px,3vw,36px);
            line-height:1.35;font-weight:800;
        }
        .brand-copy .sub{color:var(--purple);font-size:18px;font-weight:700;margin-top:5px}
        .brand-copy .address{color:#586454;font-size:15px;margin-top:4px}

        /* Navbar */
        .navbar{
            position:sticky;top:0;z-index:50;
            background:rgba(255,255,255,.96);
            backdrop-filter:blur(12px);
            border-bottom:1px solid #e5eee3;
            box-shadow:0 5px 18px rgba(0,0,0,.05);
        }
        .nav-inner{min-height:62px;display:flex;align-items:center;justify-content:space-between}
        .nav-logo{font-weight:800;color:var(--green);display:none}
        .nav-links{display:flex;align-items:center;justify-content:center;gap:5px;width:100%}
        .nav-links a{
            padding:10px 15px;border-radius:10px;font-weight:600;font-size:14px;
            transition:.25s;
        }
        .nav-links a:hover{background:#eef8eb;color:var(--green)}
        .nav-links .cta{background:var(--purple);color:#fff}
        .nav-links .cta:hover{background:var(--purple-dark);color:#fff}
        .menu-btn{display:none;border:0;background:transparent;font-size:28px;color:var(--green);cursor:pointer}

        /* Hero slider */
        .hero{background:#f3f8f1;padding:22px 0 0}
        .slider{position:relative;overflow:hidden;border-radius:24px;box-shadow:var(--shadow)}
        .slides{display:flex;transition:transform .6s ease}
        .slide{
            min-width:100%;min-height:420px;padding:55px 8%;
            display:flex;align-items:center;
            background:
              radial-gradient(circle at 85% 20%,rgba(115,9,181,.25),transparent 25%),
              linear-gradient(135deg,var(--green-dark),var(--green));
            color:#fff;position:relative;overflow:hidden;
        }
        .slide:nth-child(2){
            background:
              radial-gradient(circle at 12% 20%,rgba(255,255,255,.16),transparent 25%),
              linear-gradient(135deg,var(--purple-dark),var(--purple));
        }
        .slide:nth-child(3){
            background:
              radial-gradient(circle at 90% 80%,rgba(255,255,255,.16),transparent 28%),
              linear-gradient(135deg,#14520a,#2b850f);
        }
        .slide-content{max-width:700px;position:relative;z-index:2}
        .badge{
            display:inline-block;background:rgba(255,255,255,.15);
            border:1px solid rgba(255,255,255,.25);padding:5px 13px;
            border-radius:50px;font-size:13px;margin-bottom:14px
        }
        .slide h2{font-size:clamp(27px,4vw,48px);line-height:1.35;margin-bottom:10px;font-weight:800}
        .slide p{font-size:16px;opacity:.92;max-width:620px}
        .hero-btn{
            display:inline-flex;margin-top:22px;background:#fff;color:var(--green-dark);
            padding:10px 20px;border-radius:12px;font-weight:800;
            box-shadow:0 8px 18px rgba(0,0,0,.15)
        }
        .slider-control{
            position:absolute;top:50%;transform:translateY(-50%);
            width:42px;height:42px;border:0;border-radius:50%;
            background:rgba(255,255,255,.18);color:#fff;font-size:22px;cursor:pointer;
            z-index:5;backdrop-filter:blur(5px)
        }
        .prev{left:18px}.next{right:18px}
        .dots{
            position:absolute;bottom:18px;left:50%;transform:translateX(-50%);
            display:flex;gap:7px;z-index:5
        }
        .dot{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer}
        .dot.active{width:26px;border-radius:10px;background:#fff}

        /* Common section */
        section{padding:78px 0}
        .section-head{text-align:center;max-width:720px;margin:0 auto 38px}
        .eyebrow{
            display:inline-block;color:var(--purple);font-weight:800;
            font-size:13px;letter-spacing:.5px;margin-bottom:7px
        }
        .section-head h2{font-size:clamp(25px,3vw,34px);color:var(--green-dark);line-height:1.4}
        .section-head p{color:var(--muted);margin-top:8px;font-size:15px}

        /* About */
        .about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:stretch}
        .about-card,.info-card{
            background:#fff;border:1px solid #e4eee2;border-radius:var(--radius);
            padding:30px;box-shadow:var(--shadow)
        }
        .about-card p{color:#53604f;margin-bottom:14px}
        .about-points{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
        .point{padding:14px;border-radius:14px;background:#f4faf2;border-right:4px solid var(--green)}
        .point b{display:block;color:var(--green-dark);font-size:15px}
        .point span{font-size:13px;color:var(--muted)}
        .info-card{
            background:linear-gradient(150deg,var(--green-dark),var(--green));
            color:#fff;display:flex;flex-direction:column;justify-content:center
        }
        .info-card h3{font-size:24px;margin-bottom:10px}
        .info-card p{opacity:.9;font-size:14px}
        .info-list{margin-top:18px;display:grid;gap:9px}
        .info-list div{display:flex;gap:9px;align-items:flex-start;font-size:14px}

        /* Committee */
        .committee{background:#f7fbf5}
        .committee-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
        .person{
            background:#fff;border:1px solid #e4eee2;border-radius:20px;
            padding:26px;text-align:center;box-shadow:var(--shadow);transition:.25s
        }
        .person:hover{transform:translateY(-5px)}
        .person-photo{
            width:118px;height:118px;border-radius:50%;margin:0 auto 16px;
            object-fit:cover;border:5px solid #e9f5e5;
            background:linear-gradient(135deg,#dfeedd,#efe2f7);
        }
        .person h3{color:var(--green-dark);font-size:20px}
        .person .role{color:var(--purple);font-weight:800;font-size:14px}
        .person .bio{font-size:13px;color:var(--muted);margin-top:6px}

        /* Cards */
        .cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
        .action-card{
            position:relative;overflow:hidden;background:#fff;border:1px solid #e4eee2;
            border-radius:18px;padding:25px;box-shadow:var(--shadow);transition:.25s
        }
        .action-card:hover{transform:translateY(-5px);border-color:#cce4c5}
        .icon{
            width:52px;height:52px;border-radius:14px;display:grid;place-items:center;
            background:#eef8eb;color:var(--green);font-size:25px;margin-bottom:15px
        }
        .action-card:nth-child(2) .icon,.action-card:nth-child(5) .icon{background:#f5eafa;color:var(--purple)}
        .action-card h3{font-size:19px;color:#243421;margin-bottom:5px}
        .action-card p{font-size:13px;color:var(--muted);min-height:47px}
        .action-card .more{display:inline-block;margin-top:13px;color:var(--green);font-weight:800;font-size:13px}


        /* FAQ */
        .faq-section{background:linear-gradient(180deg,#f8fcf6 0%,#fff 100%);position:relative;overflow:hidden}
        .faq-section::before{
            content:"";position:absolute;width:300px;height:300px;border-radius:50%;
            background:rgba(115,9,181,.06);right:-120px;top:40px;pointer-events:none
        }
        .faq-wrap{max-width:900px;margin:0 auto;position:relative;z-index:1}
        .faq-list{display:grid;gap:14px}
        .faq-item{
            background:#fff;border:1px solid #e1ebdf;border-radius:18px;
            box-shadow:0 8px 25px rgba(19,70,13,.07);overflow:hidden;
            transition:border-color .25s,box-shadow .25s,transform .25s
        }
        .faq-item:hover{border-color:#c8dfc2;box-shadow:0 12px 30px rgba(19,70,13,.1)}
        .faq-question{
            width:100%;border:0;background:transparent;padding:19px 22px;
            display:flex;align-items:center;justify-content:space-between;gap:18px;
            text-align:left;font:inherit;font-weight:800;color:#20321d;cursor:pointer
        }
        .faq-qtext{display:flex;align-items:center;gap:13px}
        .faq-number{
            width:34px;height:34px;flex:0 0 34px;border-radius:10px;
            display:grid;place-items:center;background:#eef8eb;color:var(--green);
            font-size:13px;font-weight:800
        }
        .faq-icon{
            width:34px;height:34px;flex:0 0 34px;border-radius:50%;
            display:grid;place-items:center;background:#f5eafa;color:var(--purple);
            font-size:22px;font-weight:500;transition:transform .3s,background .3s,color .3s
        }
        .faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
        .faq-answer-inner{min-height:0;overflow:hidden;padding:0 70px 0 69px;color:#61705e;font-size:14px}
        .faq-item.active{border-color:#cfe5ca}
        .faq-item.active .faq-answer{grid-template-rows:1fr}
        .faq-item.active .faq-answer-inner{padding-bottom:20px}
        .faq-item.active .faq-icon{transform:rotate(45deg);background:var(--purple);color:#fff}
        .faq-note{
            margin-top:24px;text-align:center;padding:13px 18px;border-radius:14px;
            background:#f4faf2;color:#596756;font-size:13px;border:1px solid #e1eee0
        }
        .faq-note b{color:var(--green-dark)}
        @media(max-width:600px){
            .faq-section{padding:58px 0}
            .faq-question{padding:15px 14px;gap:10px}
            .faq-qtext{gap:9px;font-size:14px}
            .faq-number{width:30px;height:30px;flex-basis:30px;border-radius:9px}
            .faq-icon{width:30px;height:30px;flex-basis:30px;font-size:20px}
            .faq-answer-inner{padding:0 14px 0 53px;font-size:13px}
            .faq-item.active .faq-answer-inner{padding-bottom:16px}
        }

        /* Registration banner */
        .register{
            padding:0 0 78px
        }
        .register-box{
            border-radius:24px;padding:42px 7%;
            color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;
            background:linear-gradient(120deg,var(--purple-dark),var(--purple));
            box-shadow:var(--shadow)
        }
        .register-check-box{
            border-radius:24px;padding:42px 7%;
            color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;
            background: linear-gradient(90deg,rgba(155, 76, 42, 1) 0%, rgba(34, 18, 219, 1) 46%, rgba(83, 198, 237, 1) 100%);
            box-shadow:var(--shadow)
        }
        .register-box h2{font-size:28px;line-height:1.4}
        .register-box p{opacity:.9;margin-top:5px;font-size:14px}
        .register-btn{
            flex:none;background:#fff;color:var(--purple);padding:13px 23px;
            border-radius:12px;font-weight:800
        }
        .register-check-box h2{font-size:28px;line-height:1.4}
        .register-check-box p{opacity:.9;margin-top:5px;font-size:14px}
        .register-check-btn{
            flex:none;background:#fff;color:var(--purple);padding:13px 23px;
            border-radius:12px;font-weight:800
        }

        /* Footer */
        footer{background:#10230c;color:#dce9d8;padding:45px 0 20px}
        .footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:35px}
        footer h3{color:#fff;margin-bottom:12px;font-size:18px}
        footer p,footer li{font-size:13px;color:#aebca9}
        footer ul{list-style:none;display:grid;gap:5px}
        footer a:hover{color:#fff}
        .copyright{
            margin-top:35px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);
            display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;
            font-size:12px;color:#91a18b
        }
        .developer{color:#fff;font-weight:700}

        /* Back to top */
        #topBtn{
            position:fixed;right:20px;bottom:20px;width:48px;height:48px;
            border:0;border-radius:50%;background:var(--purple);color:#fff;
            font-size:20px;cursor:pointer;box-shadow:0 10px 25px rgba(115,9,181,.3);
            opacity:0;visibility:hidden;transition:.25s;z-index:100
        }
        #topBtn.show{opacity:1;visibility:visible}

        @media(max-width:850px){
            .topbar-inner{justify-content:center}
            .brand-inner{min-height:150px}
            .logo{width:100px;height:100px}
            .brand-copy h1{font-size:23px}
            .brand-copy .sub{font-size:15px}
            .nav-inner{min-height:56px}
            .nav-logo{display:block}
            .menu-btn{display:block}
            .nav-links{
                position:absolute;top:56px;left:0;right:0;width:auto;
                background:#fff;display:none;flex-direction:column;align-items:stretch;
                padding:10px 4%;box-shadow:0 12px 20px rgba(0,0,0,.08)
            }
            .nav-links.open{display:flex}
            .nav-links a{text-align:center}
            .slide{min-height:370px;padding:45px 12%}
            .about-grid{grid-template-columns:1fr}
            .committee-grid{grid-template-columns:repeat(3,1fr)}
            .cards-grid{grid-template-columns:repeat(2,1fr)}
            .footer-grid{grid-template-columns:1fr 1fr}
        }
        @media(max-width:600px){
            .topbar{font-size:12px}
            .top-items{justify-content:center;gap:9px 14px}
            .brand-inner{flex-direction:column;gap:10px;padding:18px 0}
            .logo{width:88px;height:88px}
            .brand-copy h1{font-size:21px}
            .brand-copy .sub{font-size:14px}
            .brand-copy .address{font-size:12px}
            section{padding:55px 0}
            .slide{min-height:390px;padding:42px 11%}
            .slide h2{font-size:28px}
            .slide p{font-size:14px}
            .committee-grid,.cards-grid{grid-template-columns:1fr}
            .about-points{grid-template-columns:1fr}
            .register-box{flex-direction:column;text-align:center;padding:34px 24px}
            .footer-grid{grid-template-columns:1fr}
            .copyright{justify-content:center;text-align:center}
        }

        /* Smart welcome popup */
        .popup-overlay{position:fixed;inset:0;background:rgba(7,25,5,.58);backdrop-filter:blur(5px);display:none;align-items:center;justify-content:center;padding:18px;z-index:200}
        .popup-overlay.show{display:flex}
        .popup-card{width:min(520px,100%);position:relative;overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 25px 80px rgba(0,0,0,.25);animation:popIn .35s ease}
        @keyframes popIn{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}
        .popup-top{padding:28px 28px 24px;color:#fff;background:linear-gradient(135deg,var(--green-dark),var(--green) 55%,var(--purple))}
        .popup-icon{width:64px;height:64px;border-radius:18px;background:rgba(255,255,255,.16);display:grid;place-items:center;font-size:32px;margin-bottom:13px}
        .popup-top h2{font-size:27px;line-height:1.4;margin:0 0 5px}.popup-top p{font-size:14px;opacity:.9;margin:0}
        .popup-body{padding:23px 28px 27px}.popup-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.popup-point{padding:11px 12px;border-radius:12px;background:#f5faf3;font-size:13px;font-weight:700;color:var(--green-dark)}
        .popup-actions{display:flex;gap:10px}.popup-actions a{flex:1;text-align:center;padding:12px;border-radius:12px;font-weight:800}.popup-primary{background:var(--purple);color:#fff!important}.popup-secondary{background:#eef7eb;color:var(--green)!important}.popup-close{position:absolute;right:13px;top:13px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.17);color:#fff;font-size:22px;cursor:pointer;z-index:2}
        @media(max-width:520px){.popup-top,.popup-body{padding:22px 20px}.popup-top h2{font-size:23px}.popup-points{grid-template-columns:1fr}.popup-actions{flex-direction:column}}
