@font-face{font-family:NB;font-weight:400;src:url(/fonts/kalpurush.ttf);size-adjust:112%;unicode-range:U+0980-09FF,U+200C-200D,U+0964-0965}
@font-face{font-family:NSB;font-weight:400;src:url(/fonts/kalpurush.ttf);size-adjust:112%;unicode-range:U+0980-09FF,U+200C-200D,U+0964-0965}
@font-face{font-family:EN;font-weight:400 500;src:url(/fonts/poppins-latin-500-normal.woff2)}
@font-face{font-family:EN;font-weight:600;src:url(/fonts/poppins-latin-600-normal.woff2)}
@font-face{font-family:EN;font-weight:700 800;src:url(/fonts/poppins-latin-700-normal.woff2)}
:root{--g:#0b5d3b;--g2:#14815a;--gd:#08492f;--gold:#d4a62a;--gl:#f6dd8a;--red:#c0392b;--cream:#fffaf0;--tx:#1b2a3a;--bd:#e3dcc6}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:NB,EN,'Nirmala UI',system-ui,sans-serif;color:var(--tx);line-height:1.6;font-size:16px;background:linear-gradient(180deg,#fff8e6 0,#eef6ef 60%,#e4f0e8 100%) fixed;min-height:100vh;position:relative}
body:before{content:'';position:fixed;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44'%3E%3Cg fill='none' stroke='%230b5d3b' stroke-opacity='.07'%3E%3Cpath d='M22 0 L44 22 L22 44 L0 22 Z'/%3E%3Ccircle cx='22' cy='22' r='6'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none;z-index:0}
body:after{content:'';position:fixed;left:50%;top:55%;width:min(80vw,620px);height:min(80vw,620px);transform:translate(-50%,-50%);background:url(/assets/logo.jpg) center/contain no-repeat;opacity:.06;mix-blend-mode:multiply;pointer-events:none;z-index:0}
.serif{font-family:NSB,EN,serif}
/* ---- hero ---- */
.hero{position:relative;z-index:1;background:linear-gradient(135deg,var(--gd),var(--g) 55%,#13795a);color:#fff;text-align:center;padding:54px 16px 70px;overflow:hidden}
.hero .pt{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.1'%3E%3Cpath d='M18 0 L36 18 L18 36 L0 18 Z'/%3E%3Ccircle cx='18' cy='18' r='5'/%3E%3C/g%3E%3C/svg%3E")}
.hero .gt{position:absolute;inset:0;background:url(/assets/gate.jpg) center 35%/cover;opacity:.17}
.hero .bn{position:absolute;left:0;right:0;top:0;z-index:2}
.hero .in{position:relative;z-index:3;max-width:760px;margin:0 auto}
.hero .logo{width:86px;height:86px;border-radius:50%;background:#fff;padding:4px;box-shadow:0 0 0 4px var(--gold),0 8px 20px rgba(0,0,0,.3)}
.hero .badge{width:132px;height:132px;margin:-8px auto 0;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.hero h1{margin:10px 0 2px;font-size:clamp(26px,6vw,40px);font-family:NSB,EN,serif;font-weight:800;line-height:1.25;text-shadow:0 2px 6px rgba(0,0,0,.35)}
.hero .en{color:var(--gl);letter-spacing:.5px;font-size:14px}
.hero h2{margin:14px auto 0;font-size:clamp(18px,4.2vw,24px);font-family:NSB,EN,serif;font-weight:700;display:inline-block;padding:6px 22px;border:2px solid var(--gold);border-radius:40px;background:rgba(0,0,0,.18)}
.chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:14px}.chips span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);border-radius:30px;padding:3px 14px;font-size:14px}
.addr{margin-top:12px;font-size:14px;opacity:.95}
.wave{position:absolute;left:0;right:0;bottom:-1px;z-index:3;line-height:0}.wave svg{width:100%;height:46px;display:block}
/* ---- layout ---- */
.wrap{position:relative;z-index:1;max-width:820px;margin:-30px auto 0;padding:0 14px 150px}
.card{background:rgba(255,255,255,.95);border:1px solid var(--bd);border-radius:20px;padding:0 0 18px;margin-bottom:18px;box-shadow:0 10px 30px rgba(11,93,59,.1);overflow:hidden}
.card .ch{display:flex;align-items:center;gap:12px;background:linear-gradient(90deg,#f3ead0,#fffaf0);border-bottom:2px solid var(--gold);padding:12px 18px;margin-bottom:12px}
.card .ch i{flex:none;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--g),var(--g2));color:#fff;font-style:normal;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px var(--gl)}
.card .ch h3{margin:0;font-family:NSB,EN,serif;font-size:19px;color:var(--g)}
.card .cb{padding:0 18px}
label{display:block;font-weight:700;font-size:14px;margin:12px 0 0;color:#334}label small,.muted{font-weight:400;color:#6b6b55}
input,select,textarea{width:100%;font:inherit;padding:11px 13px;border:1.5px solid var(--bd);border-radius:12px;margin-top:5px;background:#fff;transition:.15s}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--g2);box-shadow:0 0 0 4px rgba(20,129,90,.15)}
input[type=checkbox],input[type=radio]{width:auto;margin-right:6px}textarea{min-height:72px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}@media(max-width:620px){.g2{grid-template-columns:1fr}.card .cb{padding:0 14px}}
/* kind picker */
.kinds{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kind{position:relative;border:2px solid var(--bd);border-radius:18px;padding:16px 12px;cursor:pointer;margin:0;font-weight:400;text-align:center;background:#fff;transition:.18s;overflow:hidden}
.kind .ic{width:58px;height:58px;border-radius:50%;margin:0 auto 6px;background:linear-gradient(135deg,#fff3c9,#f6dd8a);display:flex;align-items:center;justify-content:center;font-size:30px;box-shadow:inset 0 0 0 2px var(--gold)}
.kind b{display:block;color:var(--g);font-size:17px;font-family:NSB,EN,serif}.kind small{display:block;margin-bottom:4px}.kind .fee{font-size:24px;font-weight:700;color:var(--gd)}
.kind input{display:none}.kind:hover{transform:translateY(-2px);border-color:var(--g2)}
.kind.on{background:linear-gradient(160deg,#e6f5ec,#fff);border-color:var(--g);box-shadow:0 8px 20px rgba(11,93,59,.2)}
.kind.on:after{content:'✓';position:absolute;right:10px;top:8px;width:26px;height:26px;border-radius:50%;background:var(--g);color:#fff;font-weight:700;line-height:26px;font-size:15px}
.btn{display:inline-block;background:linear-gradient(135deg,var(--g),var(--g2));color:#fff;border:0;border-radius:12px;padding:11px 20px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;margin:4px 4px 4px 0;box-shadow:0 4px 12px rgba(11,93,59,.3)}
.btn.big{font-size:18px;padding:14px 26px}.btn.gray{background:#667}.btn.gold{background:linear-gradient(135deg,#e6bb3a,#c99a1e);color:#3d2d00}.btn:disabled{opacity:.6}
.pv{display:flex;gap:16px;align-items:center;margin-top:8px}.pv img{width:104px;height:130px;object-fit:cover;border-radius:12px;border:3px solid #fff;outline:2px solid var(--g);background:#fff;box-shadow:0 6px 14px rgba(0,0,0,.2)}
.note{background:#fff8dc;border:1px dashed var(--gold);border-radius:12px;padding:10px 14px;font-size:14px;margin-top:10px}
.guest{border:2px dashed var(--gold);border-radius:14px;padding:6px 14px 14px;margin-top:12px;background:#fffdf5}
.err{background:#fde8e6;border:1px solid #e9a79f;color:#8a1f12;padding:11px 14px;border-radius:12px;margin:12px 0;display:none}
.sum table{width:100%;border-collapse:collapse}.sum td{padding:7px 0;border-bottom:1px dashed var(--bd)}.sum td:last-child{text-align:right;font-weight:700}.sum tr.t td{font-size:21px;color:var(--g);border:0;font-family:NSB,EN,serif}
/* sticky pay bar */
.bar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:linear-gradient(135deg,var(--gd),var(--g));color:#fff;padding:10px 14px;box-shadow:0 -6px 20px rgba(0,0,0,.25);border-top:3px solid var(--gold)}
.bar .bi{max-width:820px;margin:0 auto;display:flex;align-items:center;gap:14px;justify-content:space-between}.bar small{display:block;color:var(--gl);font-size:12px;line-height:1.2}.bar b{font-size:24px;font-family:NSB,EN,serif;line-height:1.2}
.bar .btn{margin:0;white-space:nowrap}
.foot{position:relative;z-index:1;text-align:center;color:#6b6b55;font-size:13px;padding:0 14px 100px}
/* generic pages (done, lookup) */
.pg{position:relative;z-index:1;max-width:640px;margin:-30px auto 0;padding:0 14px 60px}
.pg .card{padding:18px}.pg .card h2{margin:0 0 10px;font-family:NSB,EN,serif;color:var(--g)}
.card.ok{text-align:center;border-color:#1a8f3c}.idno{font-family:Consolas,monospace;font-size:26px;font-weight:700;background:#e8f3ec;display:inline-block;padding:6px 18px;border-radius:10px;letter-spacing:1px;margin:6px 0;word-break:break-all;border:2px dashed var(--g)}

.lang{display:inline-block;font-size:11px;font-weight:700;padding:0 8px;border-radius:20px;margin:0 2px;vertical-align:1px;line-height:18px}
.lang.bn{background:#dff3e6;color:#0b5d3b;border:1px solid #9fd5b3}.lang.en{background:#e3eefc;color:#1b4f9c;border:1px solid #a9c6ee}.lang.num{background:#fdf1d3;color:#8a6a00;border:1px solid #ecd28a}

.dl{position:relative;z-index:2;max-width:820px;margin:-22px auto 14px;padding:10px 16px;background:linear-gradient(90deg,#fff3c9,#fffaf0);border:2px solid var(--gold);border-radius:14px;text-align:center;font-size:16px;box-shadow:0 6px 16px rgba(212,166,42,.25)}
.wrap{margin-top:0}
/* যেকোনো প্রয়োজনে যোগাযোগ */
.contact{position:relative;z-index:1;margin:14px 0;padding:12px 14px;border:2px solid var(--gold);border-radius:14px;background:#fffdf5;color:#333;text-align:center;font-size:15px;line-height:1.6}
.contact b{color:var(--g)}.contact a{color:var(--g);font-weight:800;white-space:nowrap;text-decoration:none;border-bottom:1px dashed var(--g)}
