:root{--blue:#0d47a1;--blue2:#1565c0;--band:#e6f0fb;--line:#cfe0f3;--bg:#eef4fb}
body{background:var(--bg);font-family:'Inter',system-ui,sans-serif;color:#1f2933}
.site-header{background:linear-gradient(90deg,#0b3a82 0%,#1565c0 55%,#2f7bd8 100%);color:#fff;padding:14px 0}
.site-header .logo{height:90px;width:auto;max-width:130px;object-fit:contain;image-rendering:auto}
.site-header .hi{font-family:'Noto Sans Devanagari',sans-serif;font-weight:700;font-size:1.65rem;line-height:1.15}
.site-header .en{font-weight:700;letter-spacing:.02em;font-size:1.15rem}
.site-header .loc{opacity:.9}
.site-header .title{font-weight:700;font-size:1.7rem;line-height:1.2}
.site-header .sub{font-weight:600;font-size:1.25rem}
/* stepper */
.stepper{display:flex;position:relative;max-width:860px;margin:22px auto 18px}
.stepper:before{content:"";position:absolute;top:17px;left:12%;right:12%;height:3px;background:#d3dbe6}
.stepper .step{flex:1;text-align:center;text-decoration:none;color:#334;position:relative;font-size:.85rem;font-weight:500}
.stepper .dot{display:flex;width:36px;height:36px;border-radius:50%;background:#cfd8e3;color:#fff;margin:0 auto 6px;align-items:center;justify-content:center;font-weight:700;position:relative;z-index:1}
.stepper .step.active .dot{background:var(--blue);box-shadow:0 0 0 4px rgba(13,71,161,.15)}
.stepper .step.active{color:var(--blue);font-weight:700}
/* cards */
.section-card{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:22px;overflow:hidden;scroll-margin-top:12px}
.section-head{background:var(--band);padding:12px 18px;display:flex;align-items:center;gap:12px;color:var(--blue);font-weight:700;font-size:1.3rem}
.section-head .ico{width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.15rem}
.section-head .note{margin-left:auto;font-size:.9rem;color:#d32f2f;font-weight:500}
.section-body{padding:18px 20px 8px}
.form-label{font-weight:500;font-size:.92rem;margin-bottom:4px}
.input-group-text{background:#eef3f9;color:#516173;border-color:#c9d6e5}
.form-control,.form-select{border-color:#c9d6e5;font-size:.92rem}
.form-control:focus,.form-select:focus{border-color:var(--blue2);box-shadow:0 0 0 .2rem rgba(21,101,192,.15)}
.upload-box{display:flex;gap:12px;align-items:center;border:1px solid #c9d6e5;border-radius:8px;padding:10px 12px;background:#fff}
.upload-ico{font-size:2rem;color:var(--blue2);border-right:1px solid #e1e8f0;padding-right:12px}
.upload-box.is-invalid-box{border-color:#dc3545}
.declaration-text{font-size:.82rem;color:#3b4652;line-height:1.55}
.btn-submit{background:var(--blue);color:#fff;font-weight:600;padding:.6rem 2.2rem;border-radius:8px}
.btn-submit:hover{background:#0a3a85;color:#fff}
.kv td{padding:.45rem .75rem;font-size:.92rem;vertical-align:top}
.kv td.k{width:210px;color:#516173;background:#f5f8fc;font-weight:600}
.doc-thumb{width:110px;height:110px;object-fit:cover;border:1px solid var(--line);border-radius:8px}
.ref-badge{display:inline-block;font-size:1.9rem;font-weight:800;color:#1b5e20;background:#e8f5e9;border-radius:10px;padding:.35rem 1.2rem;letter-spacing:.04em}
@media(max-width:768px){.stepper .lbl{display:none}.site-header .title{font-size:1.2rem}.site-header .hi{font-size:1.2rem}}

/* ================= Home / landing page ================= */
.home-title{padding:30px 0 20px}
.home-title h1{font-weight:800;font-size:2rem;color:#0b2f66;margin:0 0 4px;letter-spacing:-.01em}
.home-title p{color:#5a6b80;font-size:1.05rem;margin:0 0 14px}
.home-card{border-radius:18px;overflow:hidden;box-shadow:0 18px 50px rgba(11,47,102,.16);background:#fff;margin-bottom:28px}
.home-left{background:#f6f8fb;padding:34px 36px}
.home-right{background:linear-gradient(160deg,#0b3a82 0%,#0a5c91 60%,#0b7a9c 100%);color:#fff;padding:34px 32px;position:relative}
.home-right:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 8%,rgba(255,255,255,.12),transparent 45%);pointer-events:none}
.home-right>*{position:relative}
.home-h{font-size:1.45rem;font-weight:800;color:#0b2f66;margin:0 0 22px;padding-bottom:10px;position:relative}
.home-h:after{content:"";position:absolute;left:0;bottom:0;width:54px;height:4px;border-radius:4px;background:#f5a623}
.home-h.light{color:#fff}
.home-sub{font-size:1rem;font-weight:700;color:#0b2f66;margin:6px 0 12px}

.doc-btn{display:flex;align-items:stretch;border-radius:10px;overflow:hidden;text-decoration:none;color:#fff;font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 6px 16px rgba(0,0,0,.14);transition:transform .15s,box-shadow .15s}
.doc-btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.2);color:#fff}
.doc-btn .ic{display:flex;align-items:center;justify-content:center;width:52px;font-size:1.3rem;background:rgba(0,0,0,.18)}
.doc-btn .tx{padding:16px 16px;flex:1}
.doc-btn.gold{background:linear-gradient(135deg,#f9b233,#f08c00)}
.doc-btn.plum{background:linear-gradient(135deg,#8a2a7b,#5f1656)}
.doc-chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #d9e2ee;color:#0b3a82;text-decoration:none;font-size:.85rem;font-weight:600;padding:7px 14px;border-radius:999px;transition:all .15s}
.doc-chip:hover{background:#0b3a82;color:#fff;border-color:#0b3a82}

.ins-list{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:10px}
.ins-list li{display:flex;gap:12px;background:#fff;border:1px solid #e3eaf3;border-radius:10px;padding:11px 14px;font-size:.88rem;line-height:1.5;color:#2a3644}
.ins-list .n{flex:0 0 26px;height:26px;border-radius:50%;background:#e6f0fb;color:#0d47a1;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;margin-top:1px}
.home-contact{font-size:.9rem;font-weight:600;color:#2a3644}
.home-contact i{color:#f08c00;margin-right:8px}
.home-contact a{color:#d97706}

.date-list{display:flex;flex-direction:column;gap:12px;margin-bottom:30px}
.date-item{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(2px);border-radius:12px;padding:12px 16px}
.date-item .di{width:42px;height:42px;border-radius:10px;background:#f9b233;color:#3a2400;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.date-item .dl{font-size:.8rem;color:#cfe3f7}
.date-item .dv{font-weight:700;font-size:1.05rem;color:#fff3c4}
.date-item.fee .di{background:#7bd88f;color:#07310f}

.decl-h{font-size:1.05rem;font-weight:700;margin:0 0 10px}
.decl-h span{font-weight:600;opacity:.9}
.decl-body{font-size:.8rem;line-height:1.6;color:#e4eefb;max-height:260px;overflow:auto;padding-right:6px}
.decl-body p{margin:0 0 8px}

.btn-apply{background:linear-gradient(135deg,#ffc83d,#f5a000);color:#2a1a00;font-weight:800;font-size:1.05rem;padding:.9rem 2.2rem;border-radius:12px;border:0;box-shadow:0 8px 22px rgba(245,160,0,.45);animation:pulse 2.4s infinite}
.btn-apply:hover{color:#2a1a00;transform:translateY(-2px);filter:brightness(1.05)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,200,61,.55)}70%{box-shadow:0 0 0 16px rgba(255,200,61,0)}100%{box-shadow:0 0 0 0 rgba(255,200,61,0)}}
.small-link{color:#cfe3f7;font-size:.85rem;text-decoration:none}
.small-link:hover{color:#fff;text-decoration:underline}
@media(max-width:991px){.home-left,.home-right{padding:26px 20px}.home-title h1{font-size:1.45rem}}
@media(prefers-reduced-motion:reduce){.btn-apply{animation:none}}
