/* visa.css - Sirf Visa Processing page (header.css ke :root variables aur .btn use karta hai) */

/* ---------- Page banner (~230px, ek hi image) ---------- */
.pbanner{position:relative;height:230px;overflow:hidden;color:#fff;display:flex;align-items:center;background:var(--m2);border-bottom:4px solid var(--g)}
.pb-bg{position:absolute;inset:0;background-image:url('../images/slide3.jpg'),linear-gradient(115deg,#3a0a1b,#8a1538 60%,#b0264c);background-size:cover;background-position:center;transform:scale(1.15);animation:zoomOut 8s ease-out forwards}
@keyframes zoomOut{to{transform:scale(1)}}
.pbanner:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(95deg,rgba(40,6,18,.94) 0%,rgba(94,13,38,.78) 50%,rgba(94,13,38,.35) 100%)}
.pb-ring{position:absolute;z-index:1;right:-110px;top:-150px;width:380px;height:380px;border-radius:50%;border:56px solid rgba(201,162,75,.16);animation:spin 30s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.pb-in{position:relative;z-index:2;width:100%}
.pb-in>*{opacity:0;transform:translateY(24px);animation:up .7s cubic-bezier(.2,.7,.2,1) forwards}
.pb-in>:nth-child(2){animation-delay:.15s}.pb-in>:nth-child(3){animation-delay:.3s}
@keyframes up{to{opacity:1;transform:none}}
.crumbs{display:inline-flex;align-items:center;gap:10px;font-size:13px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:5px 16px;border-radius:30px;backdrop-filter:blur(4px)}
.crumbs a:hover{color:var(--g)}
.crumbs .sep{font-size:9px;opacity:.7}
.crumbs span{color:var(--g);font-weight:600}
.pb-in h1{font-size:clamp(32px,5vw,46px);line-height:1.15;margin:12px 0 4px;font-weight:700}
.pb-in h1 em{color:var(--g);font-style:normal}
.pb-in p{font-size:15px;opacity:.9;max-width:600px}

/* ---------- Common ---------- */
.sec{padding:84px 0}.soft{background:var(--soft)}
.eyebrow{display:block;color:var(--g);font-weight:700;letter-spacing:2px;font-size:13px}
h2{font-size:clamp(25px,3.8vw,35px);line-height:1.25;margin:8px 0 14px}
.two{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center}
.two p{color:var(--mut);margin-bottom:14px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.head{text-align:center;max-width:660px;margin:0 auto 48px}
.head p{color:var(--mut)}
.btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}.btns.c{justify-content:center}
.btn i{margin-left:8px;transition:transform .25s}.btn:hover i{transform:translateX(4px)}
.btn.outline{background:transparent;color:var(--m)}.btn.outline:hover{background:var(--m);color:#fff}
.btn.gold{background:var(--g);border-color:var(--g);color:#2a1d00}.btn.gold:hover{background:#fff;border-color:#fff;color:var(--m)}
.btn.ghost{background:transparent;border-color:#fff}.btn.ghost:hover{background:#fff;color:var(--m)}
.ticks{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin:20px 0 26px;font-size:14.5px;font-weight:500}
.ticks li{position:relative;padding-left:32px;color:var(--ink)}
.ticks li:before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--tint);color:var(--m);display:grid;place-items:center;font-size:10px}

/* ---------- Overview panel ---------- */
.panel{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--m),var(--m2));color:#fff;border-radius:24px;padding:34px 30px;box-shadow:0 22px 50px rgba(94,13,38,.28)}
.panel:before{content:"";position:absolute;right:-70px;top:-70px;width:210px;height:210px;border-radius:50%;border:34px solid rgba(201,162,75,.18)}
.panel h3{font-size:21px;margin-bottom:20px;position:relative}
.panel li{display:flex;gap:16px;align-items:flex-start;padding:13px 0;border-top:1px solid rgba(255,255,255,.14);position:relative}
.panel li:first-child{border-top:0;padding-top:0}
.panel li i{flex-shrink:0;width:44px;height:44px;border-radius:12px;background:rgba(201,162,75,.2);color:var(--g);display:grid;place-items:center;font-size:18px;transition:transform .5s}
.panel li:hover i{transform:rotateY(360deg)}
.panel b{display:block;font-size:15px;margin-bottom:1px}
.panel span{font-size:13px;opacity:.85;line-height:1.5;display:block}

/* ---------- Stats ---------- */
.stats{background:linear-gradient(115deg,var(--m2),var(--m));color:#fff;padding:44px 0}
.stat{text-align:center;border-right:1px solid rgba(255,255,255,.18)}.stat:last-child{border:0}
.stat b{display:block;font-size:40px;line-height:1.2;color:var(--g)}
.stat span{font-size:13.5px;opacity:.9}

/* ---------- Cards ---------- */
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px 24px;transition:.3s}
.card:hover{transform:translateY(-8px);box-shadow:0 16px 38px rgba(0,0,0,.12);border-color:var(--g)}
.ico{width:60px;height:60px;border-radius:14px;background:linear-gradient(135deg,var(--m),var(--m2));color:var(--g);display:grid;place-items:center;font-size:24px;margin-bottom:18px;transition:transform .5s}
.card:hover .ico{transform:rotateY(360deg)}
.card h3{font-size:18px;margin-bottom:8px}.card p{font-size:14.5px;color:var(--mut)}

/* ---------- Tabs ---------- */
.tabs{max-width:960px;margin:auto}
.tablist{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:26px}
.tablist button{padding:11px 26px;border-radius:40px;border:1.5px solid var(--line);background:#fff;font:600 14px Poppins,sans-serif;color:var(--mut);cursor:pointer;transition:.3s}
.tablist button:hover{border-color:var(--m);color:var(--m)}
.tablist button[aria-selected="true"]{background:var(--m);border-color:var(--m);color:#fff;box-shadow:0 8px 20px rgba(138,21,56,.3)}
.tabpanel{display:grid;grid-template-columns:1.4fr 1fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px;box-shadow:0 14px 44px rgba(0,0,0,.07);animation:tabIn .45s ease}
.tabpanel[hidden]{display:none}
@keyframes tabIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.tp-main h3{font-size:23px;margin-bottom:10px;color:var(--m)}
.tp-main p{color:var(--mut);margin-bottom:20px;font-size:15px}
.tp-points{background:var(--tint);border-radius:16px;padding:22px}
.tp-points li{display:flex;gap:12px;align-items:flex-start;padding:9px 0;font-size:14.5px;font-weight:500}
.tp-points i{color:var(--g);margin-top:4px}
.tnote{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:20px;font-size:13px;color:var(--mut);text-align:center}
.tnote i{color:var(--g)}

/* ---------- Timeline ---------- */
.tl{position:relative;max-width:980px;margin:auto;padding:6px 0}
.tol{list-style:none;counter-reset:t}
.tl-line{position:absolute;left:50%;top:0;bottom:0;width:4px;margin-left:-2px;background:var(--line);border-radius:4px}
.tl-fill{position:absolute;left:0;top:0;width:100%;height:0;background:linear-gradient(var(--g),var(--m));border-radius:4px}
.ti{position:relative;width:50%;padding:0 48px 34px 0;counter-increment:t}
.ti:nth-child(odd){margin-left:50%;padding:0 0 34px 48px}
.ti:before{content:counter(t);position:absolute;top:18px;right:-24px;width:48px;height:48px;border-radius:50%;background:var(--m);color:var(--g);display:grid;place-items:center;font-weight:700;font-size:18px;box-shadow:0 0 0 8px var(--soft);z-index:2}
.ti:nth-child(odd):before{right:auto;left:-24px}
.tc{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 24px 22px;transition:.3s;position:relative}
.tc:after{content:"";position:absolute;top:34px;right:-9px;width:16px;height:16px;background:#fff;border-top:1px solid var(--line);border-right:1px solid var(--line);transform:rotate(45deg);transition:.3s}
.ti:nth-child(odd) .tc:after{right:auto;left:-9px;transform:rotate(-135deg)}
.tc:hover{transform:translateY(-5px);box-shadow:0 14px 34px rgba(0,0,0,.1);border-color:var(--g)}
.tc:hover:after{border-color:var(--g)}
.tc>i{width:44px;height:44px;border-radius:12px;background:var(--tint);color:var(--m);display:grid;place-items:center;font-size:18px;margin-bottom:10px}
.tc h3{font-size:17px;margin-bottom:4px}
.tc p{font-size:14px;color:var(--mut)}

/* ---------- Documents ---------- */
.dcard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px 30px;box-shadow:0 12px 36px rgba(0,0,0,.06);transition:.3s}
.dcard:hover{border-color:var(--g);transform:translateY(-6px)}
.dh{display:flex;align-items:center;gap:14px;margin-bottom:6px}
.dh i{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,var(--m),var(--m2));color:var(--g);display:grid;place-items:center;font-size:20px}
.dh h3{font-size:20px}
.dcard .ticks{grid-template-columns:1fr;gap:12px;margin:18px 0 0;font-weight:400}
.dcard .ticks li{color:var(--mut)}
.notice{display:flex;gap:16px;align-items:flex-start;margin-top:34px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--g);border-radius:14px;padding:18px 22px}
.notice>i{font-size:24px;color:var(--m);margin-top:2px}
.notice p{font-size:14px;color:var(--mut)}.notice b{color:var(--ink)}.notice a{color:var(--m);text-decoration:underline}

/* ---------- FAQ ---------- */
.faqwrap{max-width:820px}
.qa{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:14px;overflow:hidden;transition:border-color .3s,box-shadow .3s}
.qa.open{border-color:var(--g);box-shadow:0 12px 30px rgba(0,0,0,.08)}
.q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;background:none;border:0;cursor:pointer;text-align:left;font:600 15.5px Poppins,sans-serif;color:var(--ink)}
.q i{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--tint);color:var(--m);display:grid;place-items:center;font-size:12px;transition:.3s}
.qa.open .q i{background:var(--m);color:#fff;transform:rotate(45deg)}
.a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.a p{padding:0 24px 22px;color:var(--mut);font-size:14.5px}

/* ---------- CTA ---------- */
.cta{background:linear-gradient(115deg,var(--m2),var(--m));color:#fff;text-align:center;padding:72px 0}
.cta p{opacity:.9;margin-bottom:26px;max-width:560px;margin-left:auto;margin-right:auto}

/* ---------- Scroll reveal ---------- */
.js .reveal{opacity:0;transform:translateY(38px);transition:opacity .75s,transform .75s}
.js .reveal.left{transform:translateX(-46px)}.js .reveal.right{transform:translateX(46px)}
.js .reveal.in{opacity:1;transform:none}
.js .card.reveal.in,.js .tc.reveal.in,.js .dcard.reveal.in{transition:transform .3s,box-shadow .3s,border-color .3s,opacity .75s}

/* ---------- Responsive ---------- */
@media(max-width:960px){
.two{grid-template-columns:1fr;gap:44px}
.grid4{grid-template-columns:1fr 1fr}
.grid2{grid-template-columns:1fr}
.stat{border:0}
.tabpanel{grid-template-columns:1fr;padding:28px}
}
@media(max-width:760px){
.tl-line{left:24px;margin-left:-2px}
.ti,.ti:nth-child(odd){width:100%;margin-left:0;padding:0 0 28px 70px}
.ti:before,.ti:nth-child(odd):before{left:0;right:auto;top:16px;width:46px;height:46px;box-shadow:0 0 0 6px var(--soft)}
.tc:after,.ti:nth-child(odd) .tc:after{left:-9px;right:auto;transform:rotate(-135deg)}
}
@media(max-width:560px){
.pbanner{height:210px}
.sec{padding:60px 0}
.grid4{grid-template-columns:1fr}
.stats .grid4{grid-template-columns:1fr 1fr;gap:26px 0}
.ticks{grid-template-columns:1fr}
.tablist button{padding:9px 18px;font-size:13px}
.tabpanel{padding:22px}
.q{padding:16px 18px;font-size:14.5px}.a p{padding:0 18px 18px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.pb-in>*,.js .reveal{opacity:1;transform:none}.a{max-height:none}.qa:not(.open) .a{display:none}}