:root{--navy:#0f2a44;--gold:#c9a24a;--ink:#1f2d3a;--soft:#eef1f5}
*{box-sizing:border-box}html,body{margin:0}
body{font-family:'Hind Siliguri','Noto Sans Bengali','Apple SD Gothic Neo','Malgun Gothic',Segoe UI,Arial,sans-serif;background:var(--navy);color:#fff}
.sem{min-height:100vh;display:grid;grid-template-columns:1fr 320px;grid-template-rows:auto 1fr;gap:0}
.sem-top{grid-column:1/-1;display:flex;align-items:center;gap:14px;padding:16px 28px;border-bottom:4px solid var(--gold)}
.sem-logo{width:56px;height:56px;border-radius:50%;background:#fff;border:2px solid var(--gold);object-fit:contain}
.sem-brand{font-size:22px;font-weight:700}.sem-sub{color:var(--gold);font-size:12px;letter-spacing:1.5px;text-transform:uppercase}
.sem-tools{margin-left:auto;display:flex;align-items:center;gap:10px}
.sem-tools button{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:10px;font-size:22px;width:46px;height:42px;cursor:pointer}
.sem-tools span{min-width:64px;text-align:center;color:#cfd8e3}
.sem-stage{position:relative;padding:36px 48px;display:flex;align-items:center}
.sem-slide{display:none;width:100%;background:#fff;color:var(--ink);border-radius:22px;padding:44px 52px;box-shadow:0 20px 60px rgba(0,0,0,.35);border-top:8px solid var(--gold)}
.sem-slide.is-on{display:block;animation:semIn .5s ease}
@keyframes semIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.sem-intro{text-align:center}.sem-intro h1{font-size:46px;color:var(--navy);margin:0 0 10px}
.sem-big{font-size:96px;font-weight:800;color:var(--gold);margin:10px 0}
.sem-slide h2{font-size:52px;margin:14px 0 6px;color:var(--navy);line-height:1.15}
.sem-co{font-size:24px;color:#4a5a6a;margin:0}.sem-loc{font-size:26px;margin:12px 0 22px}
.sem-badge{display:inline-block;padding:6px 16px;border-radius:999px;font-weight:700;font-size:18px}
.sem-badge.open{background:#e7f6ec;color:#17673a}.sem-badge.soon{background:#fdf3dc;color:#8a6212;border:1px solid var(--gold)}
.sem-clogo{float:right;max-height:110px;max-width:260px;object-fit:contain;border:1px solid #e6eaef;border-radius:14px;padding:8px 12px;background:#fff}
.sem-facts{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 20px}
.sem-facts div{background:var(--soft);border-radius:14px;padding:14px 22px;min-width:180px}
.sem-facts small{display:block;color:#5b6b7b;font-size:16px}.sem-facts strong{font-size:34px;color:var(--navy)}
.sem-duty{font-size:20px;line-height:1.55;color:#33424f;margin:0}
.sem-qr{padding:30px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-left:1px solid rgba(255,255,255,.12)}
.sem-qr [data-sem-qr] img{width:240px;height:240px;background:#fff;padding:12px;border-radius:16px;border:4px solid var(--gold)}
.sem-qr p{font-size:18px;line-height:1.5;color:#e7edf4}
@media (max-width:900px){.sem{grid-template-columns:1fr}.sem-qr{border-left:0}.sem-stage{padding:18px}.sem-slide{padding:24px}.sem-slide h2{font-size:32px}.sem-intro h1{font-size:30px}.sem-big{font-size:60px}.sem-clogo{float:none;display:block;margin:10px 0}}
/* join page */
.sem-join{background:var(--soft);color:var(--ink);min-height:100vh}
.sem-join main{max-width:460px;margin:0 auto;padding:28px 16px}
.sem-join h1{color:var(--navy);font-size:26px}
.sem-join form{display:grid;gap:14px;background:#fff;padding:20px;border-radius:16px;border-top:6px solid var(--gold)}
.sem-join label{display:grid;gap:6px;font-weight:600}
.sem-join input,.sem-join select{font:inherit;padding:12px;border:1px solid #cdd6df;border-radius:10px;width:100%}
.sem-join .sem-check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.sem-join .sem-check input{width:auto;margin-top:4px}
.sem-join button{font:inherit;font-weight:700;background:var(--gold);color:var(--navy);border:0;border-radius:12px;padding:14px;font-size:18px;cursor:pointer}
.sem-hp{position:absolute;left:-9999px;width:1px;height:1px}
.sem-ok{font-size:20px;background:#e7f6ec;color:#17673a;padding:18px;border-radius:14px}
